taxtank-core 0.30.103 → 0.30.105

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 (909) hide show
  1. package/esm2020/lib/db/Json/chart-accounts/chart-accounts-value.json +44 -0
  2. package/esm2020/lib/db/Json/income-source/income_source_type.json +0 -5
  3. package/esm2020/lib/db/Models/property/property.mjs +1 -1
  4. package/esm2020/lib/forms/depreciation/depreciation.form.mjs +4 -2
  5. package/esm2020/lib/forms/report/my-tax/my-tax-cgt.form.mjs +14 -4
  6. package/esm2020/lib/forms/vehicle/vehicle-claim.form.mjs +2 -2
  7. package/esm2020/lib/models/chart-accounts/chart-accounts-categories.const.mjs +2 -1
  8. package/esm2020/lib/models/chart-accounts/chart-accounts.mjs +4 -15
  9. package/esm2020/lib/models/depreciation/depreciation.mjs +1 -1
  10. package/esm2020/lib/models/event/app-event-type.enum.mjs +4 -1
  11. package/esm2020/lib/models/transaction/transaction.mjs +4 -2
  12. package/esm2020/lib/models/vehicle/vehicle-claim.mjs +2 -8
  13. package/esm2020/lib/services/http/depreciation/depreciation.service.mjs +7 -1
  14. package/esm2020/lib/services/http/transaction/transaction-allocation/transaction-allocation.service.mjs +5 -4
  15. package/esm2020/lib/services/http/transaction/transaction.service.mjs +4 -4
  16. package/esm2020/lib/services/json/chart-accounts/chart-accounts-value.service.mjs +31 -0
  17. package/esm2020/lib/services/json/index.mjs +2 -1
  18. package/fesm2015/taxtank-core.mjs +117 -35
  19. package/fesm2015/taxtank-core.mjs.map +1 -1
  20. package/fesm2020/taxtank-core.mjs +117 -35
  21. package/fesm2020/taxtank-core.mjs.map +1 -1
  22. package/lib/models/chart-accounts/chart-accounts.d.ts +1 -5
  23. package/lib/models/event/app-event-type.enum.d.ts +3 -0
  24. package/lib/models/vehicle/vehicle-claim.d.ts +1 -2
  25. package/lib/services/http/depreciation/depreciation.service.d.ts +1 -0
  26. package/lib/services/http/transaction/transaction-allocation/transaction-allocation.service.d.ts +1 -1
  27. package/lib/services/json/chart-accounts/chart-accounts-value.service.d.ts +16 -0
  28. package/lib/services/json/index.d.ts +1 -0
  29. package/package.json +1 -1
  30. package/lib/collections/account-setup-item.collection.d.ts.map +0 -1
  31. package/lib/collections/allocation-group.collection.d.ts.map +0 -1
  32. package/lib/collections/allocation-rule.collection.d.ts.map +0 -1
  33. package/lib/collections/asset-sale.collection.d.ts.map +0 -1
  34. package/lib/collections/bank-account.collection.d.ts.map +0 -1
  35. package/lib/collections/bank-transaction.collection.d.ts.map +0 -1
  36. package/lib/collections/chart-accounts.collection.d.ts.map +0 -1
  37. package/lib/collections/chat/chat.collection.d.ts.map +0 -1
  38. package/lib/collections/chat/index.d.ts.map +0 -1
  39. package/lib/collections/chat/message-document.collection.d.ts.map +0 -1
  40. package/lib/collections/chat/message.collection.d.ts.map +0 -1
  41. package/lib/collections/client-invite.collection.d.ts.map +0 -1
  42. package/lib/collections/client-movement.collection.d.ts.map +0 -1
  43. package/lib/collections/client-portfolio-report.collection.d.ts.map +0 -1
  44. package/lib/collections/client.collection.d.ts.map +0 -1
  45. package/lib/collections/collection-dictionary.d.ts.map +0 -1
  46. package/lib/collections/collection.d.ts.map +0 -1
  47. package/lib/collections/depreciation-forecast.collection.d.ts.map +0 -1
  48. package/lib/collections/depreciation.collection.d.ts.map +0 -1
  49. package/lib/collections/employee.collection.d.ts.map +0 -1
  50. package/lib/collections/exportable.collection.d.ts.map +0 -1
  51. package/lib/collections/holding/holding-sale.collection.d.ts.map +0 -1
  52. package/lib/collections/holding/holding-type.collection.d.ts.map +0 -1
  53. package/lib/collections/holding/holding.collection.d.ts.map +0 -1
  54. package/lib/collections/holding/index.d.ts.map +0 -1
  55. package/lib/collections/income-source.collection.d.ts.map +0 -1
  56. package/lib/collections/index.d.ts.map +0 -1
  57. package/lib/collections/loan/index.d.ts.map +0 -1
  58. package/lib/collections/loan/loan-payment.collection.d.ts.map +0 -1
  59. package/lib/collections/loan/loan.collection.d.ts.map +0 -1
  60. package/lib/collections/property/index.d.ts.map +0 -1
  61. package/lib/collections/property/property-category-movement.collection.d.ts.map +0 -1
  62. package/lib/collections/property/property-sale/index.d.ts.map +0 -1
  63. package/lib/collections/property/property-sale/property-sale-tax-exemption-meta-field.collection.d.ts.map +0 -1
  64. package/lib/collections/property/property-sale/property-sale.collection.d.ts.map +0 -1
  65. package/lib/collections/property/property-share.collection.d.ts.map +0 -1
  66. package/lib/collections/property/property.collection.d.ts.map +0 -1
  67. package/lib/collections/report/depreciation/depreciation-lvp-report-item.collection.d.ts.map +0 -1
  68. package/lib/collections/report/depreciation/depreciation-report-item.collection.d.ts.map +0 -1
  69. package/lib/collections/report/index.d.ts.map +0 -1
  70. package/lib/collections/report/property/property-report-item-depreciation.collection.d.ts.map +0 -1
  71. package/lib/collections/report/property/property-report-item-transaction.collection.d.ts.map +0 -1
  72. package/lib/collections/report/property/property-report-item.collection.d.ts.map +0 -1
  73. package/lib/collections/report/vehicle-expense/vehicle-expense.collection.d.ts.map +0 -1
  74. package/lib/collections/sole/index.d.ts.map +0 -1
  75. package/lib/collections/sole/sole-business-losses.collection.d.ts.map +0 -1
  76. package/lib/collections/sole/sole-invoice-item.collection.d.ts.map +0 -1
  77. package/lib/collections/sole/sole-invoice.collection.d.ts.map +0 -1
  78. package/lib/collections/subscription/index.d.ts.map +0 -1
  79. package/lib/collections/subscription/service-price.collection.d.ts.map +0 -1
  80. package/lib/collections/subscription/service-product.collection.d.ts.map +0 -1
  81. package/lib/collections/subscription/service-subscription.collection.d.ts.map +0 -1
  82. package/lib/collections/subscription/subscription-item.collection.d.ts.map +0 -1
  83. package/lib/collections/tax-review.collection.d.ts.map +0 -1
  84. package/lib/collections/tax-summary/index.d.ts.map +0 -1
  85. package/lib/collections/tax-summary/report-item.collection.d.ts.map +0 -1
  86. package/lib/collections/tax-summary/tax-return-categories.const.d.ts.map +0 -1
  87. package/lib/collections/transaction/index.d.ts.map +0 -1
  88. package/lib/collections/transaction/transaction-allocation.collection.d.ts.map +0 -1
  89. package/lib/collections/transaction/transaction.collection.d.ts.map +0 -1
  90. package/lib/collections/user-event-setting.collection.d.ts.map +0 -1
  91. package/lib/collections/user-event-type-collection.d.ts.map +0 -1
  92. package/lib/collections/vehicle/index.d.ts.map +0 -1
  93. package/lib/collections/vehicle/vehicle-claim.collection.d.ts.map +0 -1
  94. package/lib/collections/vehicle/vehicle-logbook.collection.d.ts.map +0 -1
  95. package/lib/db/Enums/address-type.enum.d.ts.map +0 -1
  96. package/lib/db/Enums/allocation-rule-condition-comparison-operator.enum.d.ts.map +0 -1
  97. package/lib/db/Enums/allocation-rule-condition-field.enum.d.ts.map +0 -1
  98. package/lib/db/Enums/allocation-rule-condition-operator.enum.d.ts.map +0 -1
  99. package/lib/db/Enums/allocation-rule-type.enum.d.ts.map +0 -1
  100. package/lib/db/Enums/annual-frequency.enum.d.ts.map +0 -1
  101. package/lib/db/Enums/bank/bank-account-status.enum.d.ts.map +0 -1
  102. package/lib/db/Enums/bank/bank-account-type.enum.d.ts.map +0 -1
  103. package/lib/db/Enums/bank/bank-connection-status.enum.d.ts.map +0 -1
  104. package/lib/db/Enums/bank/bank-popular.enum.d.ts.map +0 -1
  105. package/lib/db/Enums/bank/bank-provider.enum.d.ts.map +0 -1
  106. package/lib/db/Enums/bank/bank-transaction-type.enum.d.ts.map +0 -1
  107. package/lib/db/Enums/bank/index.d.ts.map +0 -1
  108. package/lib/db/Enums/chart-accounts/chart-accounts-category.enum.d.ts.map +0 -1
  109. package/lib/db/Enums/chart-accounts/chart-accounts-etp.enum.d.ts.map +0 -1
  110. package/lib/db/Enums/chart-accounts/chart-accounts-heading-list.enum.d.ts.map +0 -1
  111. package/lib/db/Enums/chart-accounts/chart-accounts-heading-tax-deductible.enum.d.ts.map +0 -1
  112. package/lib/db/Enums/chart-accounts/chart-accounts-heading-taxable.enum.d.ts.map +0 -1
  113. package/lib/db/Enums/chart-accounts/chart-accounts-heading-vehicle-list.enum.d.ts.map +0 -1
  114. package/lib/db/Enums/chart-accounts/chart-accounts-holding-untaxed-income-list.enum.d.ts.map +0 -1
  115. package/lib/db/Enums/chart-accounts/chart-accounts-invoice-expense.enum.d.ts.map +0 -1
  116. package/lib/db/Enums/chart-accounts/chart-accounts-keep-sign.enum.d.ts.map +0 -1
  117. package/lib/db/Enums/chart-accounts/chart-accounts-list.enum.d.ts.map +0 -1
  118. package/lib/db/Enums/chart-accounts/chart-accounts-meta-field-list.enum.d.ts.map +0 -1
  119. package/lib/db/Enums/chart-accounts/chart-accounts-meta-field-type.enum.d.ts.map +0 -1
  120. package/lib/db/Enums/chart-accounts/chart-accounts-salary-adjustments-list.enum.d.ts.map +0 -1
  121. package/lib/db/Enums/chart-accounts/chart-accounts-salary-included-list.enum.d.ts.map +0 -1
  122. package/lib/db/Enums/chart-accounts/chart-accounts-type.enum.d.ts.map +0 -1
  123. package/lib/db/Enums/chart-accounts/index.d.ts.map +0 -1
  124. package/lib/db/Enums/chat-status.enum.d.ts.map +0 -1
  125. package/lib/db/Enums/client-details-medicare-exemption.enum.d.ts.map +0 -1
  126. package/lib/db/Enums/client-details-work-depreciation-calculation.enum.d.ts.map +0 -1
  127. package/lib/db/Enums/client-details-working-holiday-maker.enum.d.ts.map +0 -1
  128. package/lib/db/Enums/client-invite-status.enum.d.ts.map +0 -1
  129. package/lib/db/Enums/client-invite-type.enum.d.ts.map +0 -1
  130. package/lib/db/Enums/depreciation-calculation-percent.enum.d.ts.map +0 -1
  131. package/lib/db/Enums/depreciation-calculation.enum.d.ts.map +0 -1
  132. package/lib/db/Enums/depreciation-type.enum.d.ts.map +0 -1
  133. package/lib/db/Enums/depreciation-write-off-amount.enum.d.ts.map +0 -1
  134. package/lib/db/Enums/document-type.enum.d.ts.map +0 -1
  135. package/lib/db/Enums/file-type.enum.d.ts.map +0 -1
  136. package/lib/db/Enums/firm-type.enum.d.ts.map +0 -1
  137. package/lib/db/Enums/holding/holding-type-category.enum.d.ts.map +0 -1
  138. package/lib/db/Enums/income-source/income-source-forecast-trust-type.enum.d.ts.map +0 -1
  139. package/lib/db/Enums/income-source/income-source-type-list-holding.enum.d.ts.map +0 -1
  140. package/lib/db/Enums/income-source/income-source-type-list-other.enum.d.ts.map +0 -1
  141. package/lib/db/Enums/income-source/income-source-type-list-sole.enum.d.ts.map +0 -1
  142. package/lib/db/Enums/income-source/income-source-type-list-work.enum.d.ts.map +0 -1
  143. package/lib/db/Enums/income-source/income-source-type.enum.d.ts.map +0 -1
  144. package/lib/db/Enums/income-source/index.d.ts.map +0 -1
  145. package/lib/db/Enums/index.d.ts.map +0 -1
  146. package/lib/db/Enums/invite-status.enum.d.ts.map +0 -1
  147. package/lib/db/Enums/loan-bank-type.enum.d.ts.map +0 -1
  148. package/lib/db/Enums/loan-frequency.enum.d.ts.map +0 -1
  149. package/lib/db/Enums/loan-interest-type.enum.d.ts.map +0 -1
  150. package/lib/db/Enums/loan-payout-type.enum.d.ts.map +0 -1
  151. package/lib/db/Enums/loan-repayment-frequency.enum.d.ts.map +0 -1
  152. package/lib/db/Enums/loan-repayment-type.enum.d.ts.map +0 -1
  153. package/lib/db/Enums/loan-type.enum.d.ts.map +0 -1
  154. package/lib/db/Enums/loan-vehicle-type.enum.d.ts.map +0 -1
  155. package/lib/db/Enums/phone-type.enum.d.ts.map +0 -1
  156. package/lib/db/Enums/property/property-category-list.enum.d.ts.map +0 -1
  157. package/lib/db/Enums/property/property-depreciation-calculation.enum.d.ts.map +0 -1
  158. package/lib/db/Enums/property/property-sale/tax-exemption-meta-field.enum.d.ts.map +0 -1
  159. package/lib/db/Enums/property/property-sale/tax-exemption.enum.d.ts.map +0 -1
  160. package/lib/db/Enums/property/property-share-access.enum.d.ts.map +0 -1
  161. package/lib/db/Enums/property/property-share-status.enum.d.ts.map +0 -1
  162. package/lib/db/Enums/registration-invite-status.enum.d.ts.map +0 -1
  163. package/lib/db/Enums/salary-forecast-frequency.enum.d.ts.map +0 -1
  164. package/lib/db/Enums/service-notification-status.enum.d.ts.map +0 -1
  165. package/lib/db/Enums/service-notification-type.enum.d.ts.map +0 -1
  166. package/lib/db/Enums/sole-depreciation-method.enum.d.ts.map +0 -1
  167. package/lib/db/Enums/sole-invoice-statuses.enum.d.ts.map +0 -1
  168. package/lib/db/Enums/sole-invoice-tax-type.enum.d.ts.map +0 -1
  169. package/lib/db/Enums/sole-invoice-template-tax-type.enum.d.ts.map +0 -1
  170. package/lib/db/Enums/spare-document-spare-type.enum.d.ts.map +0 -1
  171. package/lib/db/Enums/subscription/service-payment-method-card-brand.enum.d.ts.map +0 -1
  172. package/lib/db/Enums/subscription/service-payment-method-type.enum.d.ts.map +0 -1
  173. package/lib/db/Enums/subscription/service-payment-status.enum.d.ts.map +0 -1
  174. package/lib/db/Enums/subscription/service-price-recurring-interval.enum.d.ts.map +0 -1
  175. package/lib/db/Enums/subscription/service-price-type.enum.d.ts.map +0 -1
  176. package/lib/db/Enums/subscription/service-product-id.enum.d.ts.map +0 -1
  177. package/lib/db/Enums/subscription/service-product-status.enum.d.ts.map +0 -1
  178. package/lib/db/Enums/subscription/service-subscription-status.enum.d.ts.map +0 -1
  179. package/lib/db/Enums/tank-type.enum.d.ts.map +0 -1
  180. package/lib/db/Enums/tax-calculation-medicare-exemption.enum.d.ts.map +0 -1
  181. package/lib/db/Enums/tax-calculation-type.enum.d.ts.map +0 -1
  182. package/lib/db/Enums/tax-return-category-list.enum.d.ts.map +0 -1
  183. package/lib/db/Enums/tax-return-category-section.enum.d.ts.map +0 -1
  184. package/lib/db/Enums/tax-review-status.enum.d.ts.map +0 -1
  185. package/lib/db/Enums/tax-summary-list.enum.d.ts.map +0 -1
  186. package/lib/db/Enums/tax-summary-section.enum.d.ts.map +0 -1
  187. package/lib/db/Enums/tax-summary-tax-summary.enum.d.ts.map +0 -1
  188. package/lib/db/Enums/ticket-feedback.enum.d.ts.map +0 -1
  189. package/lib/db/Enums/ticket-status.enum.d.ts.map +0 -1
  190. package/lib/db/Enums/ticket-types.enum.d.ts.map +0 -1
  191. package/lib/db/Enums/transaction-operation.enum.d.ts.map +0 -1
  192. package/lib/db/Enums/transaction-source.enum.d.ts.map +0 -1
  193. package/lib/db/Enums/transaction-type.enum.d.ts.map +0 -1
  194. package/lib/db/Enums/user-event-status.enum.d.ts.map +0 -1
  195. package/lib/db/Enums/user-event-type-client-type.enum.d.ts.map +0 -1
  196. package/lib/db/Enums/user-event-type-employee-type.enum.d.ts.map +0 -1
  197. package/lib/db/Enums/user-event-type-frequency.enum.d.ts.map +0 -1
  198. package/lib/db/Enums/user-event-type-type.enum.d.ts.map +0 -1
  199. package/lib/db/Enums/user-event-type-user-type.enum.d.ts.map +0 -1
  200. package/lib/db/Enums/user-medicare-exemption.enum.d.ts.map +0 -1
  201. package/lib/db/Enums/user-roles.enum.d.ts.map +0 -1
  202. package/lib/db/Enums/user-status.enum.d.ts.map +0 -1
  203. package/lib/db/Enums/user-title.enum.d.ts.map +0 -1
  204. package/lib/db/Enums/user-work-depreciation-calculation.enum.d.ts.map +0 -1
  205. package/lib/db/Enums/user-working-holiday-maker.enum.d.ts.map +0 -1
  206. package/lib/db/Enums/vehicle-claim-details-method.enum.d.ts.map +0 -1
  207. package/lib/db/Enums/vehicle-logbook-purpose.enum.d.ts.map +0 -1
  208. package/lib/db/Models/abstract-model.d.ts.map +0 -1
  209. package/lib/db/Models/address.d.ts.map +0 -1
  210. package/lib/db/Models/bank/bank-account-balance.d.ts.map +0 -1
  211. package/lib/db/Models/bank/bank-account-property.d.ts.map +0 -1
  212. package/lib/db/Models/bank/bank-account.d.ts.map +0 -1
  213. package/lib/db/Models/bank/bank-connection.d.ts.map +0 -1
  214. package/lib/db/Models/bank/bank-transaction-import.d.ts.map +0 -1
  215. package/lib/db/Models/bank/bank-transaction.d.ts.map +0 -1
  216. package/lib/db/Models/bank/bank.d.ts.map +0 -1
  217. package/lib/db/Models/bank/basiq-job-step.enum.d.ts.map +0 -1
  218. package/lib/db/Models/bank/basiq-job.d.ts.map +0 -1
  219. package/lib/db/Models/chart-accounts/chart-accounts-depreciation.d.ts.map +0 -1
  220. package/lib/db/Models/chart-accounts/chart-accounts-heading.d.ts.map +0 -1
  221. package/lib/db/Models/chart-accounts/chart-accounts-meta-field.d.ts.map +0 -1
  222. package/lib/db/Models/chart-accounts/chart-accounts-value.d.ts.map +0 -1
  223. package/lib/db/Models/chart-accounts/chart-accounts.d.ts.map +0 -1
  224. package/lib/db/Models/client/annual-client-details.d.ts.map +0 -1
  225. package/lib/db/Models/client/client-details.d.ts.map +0 -1
  226. package/lib/db/Models/client/client-income-types.d.ts.map +0 -1
  227. package/lib/db/Models/client/index.d.ts.map +0 -1
  228. package/lib/db/Models/client/occupation.d.ts.map +0 -1
  229. package/lib/db/Models/country.d.ts.map +0 -1
  230. package/lib/db/Models/depreciation/depreciation-capital-project.d.ts.map +0 -1
  231. package/lib/db/Models/depreciation/depreciation-forecast.d.ts.map +0 -1
  232. package/lib/db/Models/depreciation/depreciation-receipt.d.ts.map +0 -1
  233. package/lib/db/Models/depreciation/depreciation.d.ts.map +0 -1
  234. package/lib/db/Models/document/document-base.d.ts.map +0 -1
  235. package/lib/db/Models/document/document-folder.d.ts.map +0 -1
  236. package/lib/db/Models/document/document.d.ts.map +0 -1
  237. package/lib/db/Models/document/property-document.d.ts.map +0 -1
  238. package/lib/db/Models/file.d.ts.map +0 -1
  239. package/lib/db/Models/firm/accountant/tax-review.d.ts.map +0 -1
  240. package/lib/db/Models/firm/accountant/ticket.d.ts.map +0 -1
  241. package/lib/db/Models/firm/chat.d.ts.map +0 -1
  242. package/lib/db/Models/firm/client-invite.d.ts.map +0 -1
  243. package/lib/db/Models/firm/client-movement.d.ts.map +0 -1
  244. package/lib/db/Models/firm/employee-invite.d.ts.map +0 -1
  245. package/lib/db/Models/firm/firm-invite.d.ts.map +0 -1
  246. package/lib/db/Models/firm/firm.d.ts.map +0 -1
  247. package/lib/db/Models/firm/message-document.d.ts.map +0 -1
  248. package/lib/db/Models/firm/message.d.ts.map +0 -1
  249. package/lib/db/Models/holding/holding-sale.d.ts.map +0 -1
  250. package/lib/db/Models/holding/holding-type-exchange.d.ts.map +0 -1
  251. package/lib/db/Models/holding/holding-type.d.ts.map +0 -1
  252. package/lib/db/Models/holding/holding.d.ts.map +0 -1
  253. package/lib/db/Models/holding/index.d.ts.map +0 -1
  254. package/lib/db/Models/incomeSource/income-source-forecast.d.ts.map +0 -1
  255. package/lib/db/Models/incomeSource/income-source-type.d.ts.map +0 -1
  256. package/lib/db/Models/incomeSource/income-source.d.ts.map +0 -1
  257. package/lib/db/Models/incomeSource/salary-forecast.d.ts.map +0 -1
  258. package/lib/db/Models/index.d.ts.map +0 -1
  259. package/lib/db/Models/loan/borrowing-expense-loan.d.ts.map +0 -1
  260. package/lib/db/Models/loan/borrowing-expense.d.ts.map +0 -1
  261. package/lib/db/Models/loan/loan-payout.d.ts.map +0 -1
  262. package/lib/db/Models/loan/loan.d.ts.map +0 -1
  263. package/lib/db/Models/observable-model.d.ts.map +0 -1
  264. package/lib/db/Models/phone.d.ts.map +0 -1
  265. package/lib/db/Models/property/property-category-movement.d.ts.map +0 -1
  266. package/lib/db/Models/property/property-category.d.ts.map +0 -1
  267. package/lib/db/Models/property/property-forecast.d.ts.map +0 -1
  268. package/lib/db/Models/property/property-sale/property-sale-tax-exemption-meta-field.d.ts.map +0 -1
  269. package/lib/db/Models/property/property-sale/property-sale.d.ts.map +0 -1
  270. package/lib/db/Models/property/property-sale/tax-exemption-meta-field.d.ts.map +0 -1
  271. package/lib/db/Models/property/property-sale/tax-exemption.d.ts.map +0 -1
  272. package/lib/db/Models/property/property-share.d.ts.map +0 -1
  273. package/lib/db/Models/property/property-subscription.d.ts.map +0 -1
  274. package/lib/db/Models/property/property-valuation.d.ts.map +0 -1
  275. package/lib/db/Models/property/property.d.ts.map +0 -1
  276. package/lib/db/Models/service-notification.d.ts.map +0 -1
  277. package/lib/db/Models/sole/bas-report.d.ts.map +0 -1
  278. package/lib/db/Models/sole/sole-business-activity.d.ts.map +0 -1
  279. package/lib/db/Models/sole/sole-business-allocation.d.ts.map +0 -1
  280. package/lib/db/Models/sole/sole-business-loss-offset-rule.d.ts.map +0 -1
  281. package/lib/db/Models/sole/sole-business-loss.d.ts.map +0 -1
  282. package/lib/db/Models/sole/sole-business.d.ts.map +0 -1
  283. package/lib/db/Models/sole/sole-contact.d.ts.map +0 -1
  284. package/lib/db/Models/sole/sole-depreciation-method.d.ts.map +0 -1
  285. package/lib/db/Models/sole/sole-details.d.ts.map +0 -1
  286. package/lib/db/Models/sole/sole-forecast.d.ts.map +0 -1
  287. package/lib/db/Models/sole/sole-invoice-item.d.ts.map +0 -1
  288. package/lib/db/Models/sole/sole-invoice-template.d.ts.map +0 -1
  289. package/lib/db/Models/sole/sole-invoice.d.ts.map +0 -1
  290. package/lib/db/Models/spare/spare-document-category.d.ts.map +0 -1
  291. package/lib/db/Models/spare/spare-document.d.ts.map +0 -1
  292. package/lib/db/Models/subscription/service-payment-method.d.ts.map +0 -1
  293. package/lib/db/Models/subscription/service-payment.d.ts.map +0 -1
  294. package/lib/db/Models/subscription/service-price.d.ts.map +0 -1
  295. package/lib/db/Models/subscription/service-product.d.ts.map +0 -1
  296. package/lib/db/Models/subscription/service-subscription-item.d.ts.map +0 -1
  297. package/lib/db/Models/subscription/service-subscription.d.ts.map +0 -1
  298. package/lib/db/Models/tax-calculation.d.ts.map +0 -1
  299. package/lib/db/Models/tax-return/tax-return-category.d.ts.map +0 -1
  300. package/lib/db/Models/tax-return/tax-return-item.d.ts.map +0 -1
  301. package/lib/db/Models/tax-return/tax-return.d.ts.map +0 -1
  302. package/lib/db/Models/transaction/allocation-rule-condition.d.ts.map +0 -1
  303. package/lib/db/Models/transaction/allocation-rule-transaction-meta-field.d.ts.map +0 -1
  304. package/lib/db/Models/transaction/allocation-rule-transaction.d.ts.map +0 -1
  305. package/lib/db/Models/transaction/allocation-rule.d.ts.map +0 -1
  306. package/lib/db/Models/transaction/transaction-allocation.d.ts.map +0 -1
  307. package/lib/db/Models/transaction/transaction-base.d.ts.map +0 -1
  308. package/lib/db/Models/transaction/transaction-meta-field.d.ts.map +0 -1
  309. package/lib/db/Models/transaction/transaction-receipt.d.ts.map +0 -1
  310. package/lib/db/Models/transaction/transaction.d.ts.map +0 -1
  311. package/lib/db/Models/user/employee-details.d.ts.map +0 -1
  312. package/lib/db/Models/user/registration-invite.d.ts.map +0 -1
  313. package/lib/db/Models/user/user-event-setting.d.ts.map +0 -1
  314. package/lib/db/Models/user/user-event-type-category.d.ts.map +0 -1
  315. package/lib/db/Models/user/user-event-type.d.ts.map +0 -1
  316. package/lib/db/Models/user/user-event.d.ts.map +0 -1
  317. package/lib/db/Models/user/user.d.ts.map +0 -1
  318. package/lib/db/Models/vehicle/vehicle-claim-details.d.ts.map +0 -1
  319. package/lib/db/Models/vehicle/vehicle-claim.d.ts.map +0 -1
  320. package/lib/db/Models/vehicle/vehicle-logbook.d.ts.map +0 -1
  321. package/lib/db/Models/vehicle/vehicle.d.ts.map +0 -1
  322. package/lib/db-static/chart-accounts/chart-accounts-values.d.ts.map +0 -1
  323. package/lib/forms/abstract.form.d.ts.map +0 -1
  324. package/lib/forms/address/address.form.d.ts.map +0 -1
  325. package/lib/forms/address/index.d.ts.map +0 -1
  326. package/lib/forms/bank/bank-account/bank-account-add-manual.form.d.ts.map +0 -1
  327. package/lib/forms/bank/bank-account/bank-account-allocation.form.d.ts.map +0 -1
  328. package/lib/forms/bank/bank-account/bank-account-import.form.d.ts.map +0 -1
  329. package/lib/forms/bank/bank-account/bank-account-properties.form.d.ts.map +0 -1
  330. package/lib/forms/bank/bank-account/bank-accounts-import.form.d.ts.map +0 -1
  331. package/lib/forms/client/annual-client-details.form.d.ts.map +0 -1
  332. package/lib/forms/client/client-income-types.form.d.ts.map +0 -1
  333. package/lib/forms/client/index.d.ts.map +0 -1
  334. package/lib/forms/depreciation/depreciation.form.d.ts.map +0 -1
  335. package/lib/forms/depreciation/index.d.ts.map +0 -1
  336. package/lib/forms/form-validations.enum.d.ts.map +0 -1
  337. package/lib/forms/holding/holding-reinvest.form.d.ts.map +0 -1
  338. package/lib/forms/holding/holding-sale.form.d.ts.map +0 -1
  339. package/lib/forms/holding/holding-type.form.d.ts.map +0 -1
  340. package/lib/forms/holding/holding.form.d.ts.map +0 -1
  341. package/lib/forms/holding/index.d.ts.map +0 -1
  342. package/lib/forms/index.d.ts.map +0 -1
  343. package/lib/forms/loan/index.d.ts.map +0 -1
  344. package/lib/forms/loan/loan.form.d.ts.map +0 -1
  345. package/lib/forms/login/login.form.d.ts.map +0 -1
  346. package/lib/forms/phone/index.d.ts.map +0 -1
  347. package/lib/forms/phone/phone.form.d.ts.map +0 -1
  348. package/lib/forms/property/index.d.ts.map +0 -1
  349. package/lib/forms/property/property-sale/index.d.ts.map +0 -1
  350. package/lib/forms/property/property-sale/property-sale-cost-base.form.d.ts.map +0 -1
  351. package/lib/forms/property/property-sale/property-sale-cost-sale.form.d.ts.map +0 -1
  352. package/lib/forms/property/property-sale/property-sale-exemptions.form.d.ts.map +0 -1
  353. package/lib/forms/register/register-client.form.d.ts.map +0 -1
  354. package/lib/forms/register/register-firm.form.d.ts.map +0 -1
  355. package/lib/forms/report/my-tax/index.d.ts.map +0 -1
  356. package/lib/forms/report/my-tax/my-tax-business-income-or-losses/my-tax-business-details/my-tax-business-details.form.d.ts.map +0 -1
  357. package/lib/forms/report/my-tax/my-tax-business-income-or-losses/my-tax-business-income/my-tax-business-income.form.d.ts.map +0 -1
  358. package/lib/forms/report/my-tax/my-tax-business-income-or-losses/my-tax-business-income-or-losses.form.d.ts.map +0 -1
  359. package/lib/forms/report/my-tax/my-tax-business-income-or-losses/my-tax-business-losses/my-tax-business-losses.form.d.ts.map +0 -1
  360. package/lib/forms/report/my-tax/my-tax-cgt.form.d.ts.map +0 -1
  361. package/lib/forms/report/my-tax/my-tax-deductions.form.d.ts.map +0 -1
  362. package/lib/forms/report/my-tax/my-tax-dividends.form.d.ts.map +0 -1
  363. package/lib/forms/report/my-tax/my-tax-income-statements.form.d.ts.map +0 -1
  364. package/lib/forms/report/my-tax/my-tax-income-tests.form.d.ts.map +0 -1
  365. package/lib/forms/report/my-tax/my-tax-interest.form.d.ts.map +0 -1
  366. package/lib/forms/report/my-tax/my-tax-losses.form.d.ts.map +0 -1
  367. package/lib/forms/report/my-tax/my-tax-medicare.form.d.ts.map +0 -1
  368. package/lib/forms/report/my-tax/my-tax-offsets.form.d.ts.map +0 -1
  369. package/lib/forms/report/my-tax/my-tax-other-income.form.d.ts.map +0 -1
  370. package/lib/forms/report/my-tax/my-tax-partnerships-and-trusts.form.d.ts.map +0 -1
  371. package/lib/forms/report/my-tax/my-tax-rent.form.d.ts.map +0 -1
  372. package/lib/forms/sole/bas-report.form.d.ts.map +0 -1
  373. package/lib/forms/sole/index.d.ts.map +0 -1
  374. package/lib/forms/sole/sole-business-allocations.form.d.ts.map +0 -1
  375. package/lib/forms/sole/sole-business-loss.form.d.ts.map +0 -1
  376. package/lib/forms/sole/sole-business.form.d.ts.map +0 -1
  377. package/lib/forms/sole/sole-contact.form.d.ts.map +0 -1
  378. package/lib/forms/sole/sole-depreciation-method.form.d.ts.map +0 -1
  379. package/lib/forms/sole/sole-details.form.d.ts.map +0 -1
  380. package/lib/forms/sole/sole-invoice-item.form.d.ts.map +0 -1
  381. package/lib/forms/sole/sole-invoice-template.form.d.ts.map +0 -1
  382. package/lib/forms/sole/sole-invoice.form.d.ts.map +0 -1
  383. package/lib/forms/transaction/allocation-rule-condition.form.d.ts.map +0 -1
  384. package/lib/forms/transaction/allocation-rule-transaction-meta-field.form.d.ts.map +0 -1
  385. package/lib/forms/transaction/allocation-rule-transaction.form.d.ts.map +0 -1
  386. package/lib/forms/transaction/allocation-rule.form.d.ts.map +0 -1
  387. package/lib/forms/transaction/holding/holding-income.form.d.ts.map +0 -1
  388. package/lib/forms/transaction/index.d.ts.map +0 -1
  389. package/lib/forms/transaction/messages.enum.d.ts.map +0 -1
  390. package/lib/forms/transaction/transaction-base.form.d.ts.map +0 -1
  391. package/lib/forms/transaction/transaction.form.d.ts.map +0 -1
  392. package/lib/forms/transaction/work/work-expense.form.d.ts.map +0 -1
  393. package/lib/forms/transaction/work/work-income.form.d.ts.map +0 -1
  394. package/lib/forms/transaction/work/work-transaction.form.d.ts.map +0 -1
  395. package/lib/forms/user/index.d.ts.map +0 -1
  396. package/lib/forms/user/password.form.d.ts.map +0 -1
  397. package/lib/forms/user/reset-password.form.d.ts.map +0 -1
  398. package/lib/forms/user/user-invite.form.d.ts.map +0 -1
  399. package/lib/forms/vehicle/index.d.ts.map +0 -1
  400. package/lib/forms/vehicle/vehicle-claim-details.form.d.ts.map +0 -1
  401. package/lib/forms/vehicle/vehicle-claim.form.d.ts.map +0 -1
  402. package/lib/forms/vehicle/vehicle-logbook.form.d.ts.map +0 -1
  403. package/lib/forms/vehicle/vehicle.form.d.ts.map +0 -1
  404. package/lib/functions/array/index.d.ts.map +0 -1
  405. package/lib/functions/array/replace.d.ts.map +0 -1
  406. package/lib/functions/array/sort-deep.d.ts.map +0 -1
  407. package/lib/functions/array/sort.d.ts.map +0 -1
  408. package/lib/functions/array/to-array.d.ts.map +0 -1
  409. package/lib/functions/clone-deep.d.ts.map +0 -1
  410. package/lib/functions/create-date.d.ts.map +0 -1
  411. package/lib/functions/enum-to-list.d.ts.map +0 -1
  412. package/lib/functions/get-doc-icon.d.ts.map +0 -1
  413. package/lib/functions/mat-options-functions.d.ts.map +0 -1
  414. package/lib/functions/mat-sort-options.d.ts.map +0 -1
  415. package/lib/functions/tax-review-filter-predicate.d.ts.map +0 -1
  416. package/lib/interceptors/basiq-client-id.interceptor.d.ts.map +0 -1
  417. package/lib/interceptors/basiq-token.interceptor.d.ts.map +0 -1
  418. package/lib/interceptors/corelogic-interceptor.d.ts.map +0 -1
  419. package/lib/interceptors/financial-year-interceptor.d.ts.map +0 -1
  420. package/lib/interceptors/interceptors.module.d.ts.map +0 -1
  421. package/lib/interceptors/jwt-interceptor.d.ts.map +0 -1
  422. package/lib/interceptors/preloader.interceptor.d.ts.map +0 -1
  423. package/lib/interceptors/user-switcher-interceptor.d.ts.map +0 -1
  424. package/lib/interfaces/asset-entity-type.enum.d.ts.map +0 -1
  425. package/lib/interfaces/asset-type.enum.d.ts.map +0 -1
  426. package/lib/interfaces/asset.interface.d.ts.map +0 -1
  427. package/lib/interfaces/auth-tokens.interface.d.ts.map +0 -1
  428. package/lib/interfaces/chart-data.interface.d.ts.map +0 -1
  429. package/lib/interfaces/chart-serie.interface.d.ts.map +0 -1
  430. package/lib/interfaces/document.interface.d.ts.map +0 -1
  431. package/lib/interfaces/documentable.interface.d.ts.map +0 -1
  432. package/lib/interfaces/event-listener.interface.d.ts.map +0 -1
  433. package/lib/interfaces/expense.interface.d.ts.map +0 -1
  434. package/lib/interfaces/income-source-forecast.interface.d.ts.map +0 -1
  435. package/lib/interfaces/index.d.ts.map +0 -1
  436. package/lib/interfaces/option.interface.d.ts.map +0 -1
  437. package/lib/interfaces/photoable.d.ts.map +0 -1
  438. package/lib/interfaces/receipt.interface.d.ts.map +0 -1
  439. package/lib/interfaces/table-exportable.interface.d.ts.map +0 -1
  440. package/lib/interfaces/tank.interface.d.ts.map +0 -1
  441. package/lib/interfaces/updatable.interface.d.ts.map +0 -1
  442. package/lib/messages/index.d.ts.map +0 -1
  443. package/lib/messages/messages.enum.d.ts.map +0 -1
  444. package/lib/models/account-setup/account-setup-item.d.ts.map +0 -1
  445. package/lib/models/account-setup/account-setup-items.const.d.ts.map +0 -1
  446. package/lib/models/account-setup/account-setup-items.enum.d.ts.map +0 -1
  447. package/lib/models/address/address.d.ts.map +0 -1
  448. package/lib/models/address/country.d.ts.map +0 -1
  449. package/lib/models/address/index.d.ts.map +0 -1
  450. package/lib/models/address/states.enum.d.ts.map +0 -1
  451. package/lib/models/asset-sale.d.ts.map +0 -1
  452. package/lib/models/badge/badge-color.enum.d.ts.map +0 -1
  453. package/lib/models/badge/badge.d.ts.map +0 -1
  454. package/lib/models/bank/allocation-group.d.ts.map +0 -1
  455. package/lib/models/bank/bank-account-chart-data.d.ts.map +0 -1
  456. package/lib/models/bank/bank-account-property.d.ts.map +0 -1
  457. package/lib/models/bank/bank-account-types.const.d.ts.map +0 -1
  458. package/lib/models/bank/bank-account.d.ts.map +0 -1
  459. package/lib/models/bank/bank-connection.d.ts.map +0 -1
  460. package/lib/models/bank/bank-external-stats.d.ts.map +0 -1
  461. package/lib/models/bank/bank-transaction-chart-data.d.ts.map +0 -1
  462. package/lib/models/bank/bank-transaction-summary-fields.enum.d.ts.map +0 -1
  463. package/lib/models/bank/bank-transaction.d.ts.map +0 -1
  464. package/lib/models/bank/bank.d.ts.map +0 -1
  465. package/lib/models/bank/basiq/basiq-config.d.ts.map +0 -1
  466. package/lib/models/bank/basiq/basiq-connection-data.interface.d.ts.map +0 -1
  467. package/lib/models/bank/basiq/basiq-connections-response.interface.d.ts.map +0 -1
  468. package/lib/models/bank/basiq/basiq-job-response.d.ts.map +0 -1
  469. package/lib/models/bank/basiq/basiq-job-step.d.ts.map +0 -1
  470. package/lib/models/bank/basiq/basiq-job.d.ts.map +0 -1
  471. package/lib/models/bank/basiq/basiq-token-response.interface.d.ts.map +0 -1
  472. package/lib/models/bank/basiq/basiq-token.d.ts.map +0 -1
  473. package/lib/models/bank/basiq/index.d.ts.map +0 -1
  474. package/lib/models/bank/index.d.ts.map +0 -1
  475. package/lib/models/bank/type-loan.const.d.ts.map +0 -1
  476. package/lib/models/borrowing-expense/borrowing-expense-loan.d.ts.map +0 -1
  477. package/lib/models/borrowing-expense/borrowing-expense.d.ts.map +0 -1
  478. package/lib/models/borrowing-expense/index.d.ts.map +0 -1
  479. package/lib/models/chart/chart-data.d.ts.map +0 -1
  480. package/lib/models/chart/chart-serie.d.ts.map +0 -1
  481. package/lib/models/chart-accounts/chart-accounts-categories.const.d.ts.map +0 -1
  482. package/lib/models/chart-accounts/chart-accounts-category.e-collection.d.ts.map +0 -1
  483. package/lib/models/chart-accounts/chart-accounts-depreciation.d.ts.map +0 -1
  484. package/lib/models/chart-accounts/chart-accounts-heading.d.ts.map +0 -1
  485. package/lib/models/chart-accounts/chart-accounts-meta-field.d.ts.map +0 -1
  486. package/lib/models/chart-accounts/chart-accounts-tax-labels.enum.d.ts.map +0 -1
  487. package/lib/models/chart-accounts/chart-accounts-value.d.ts.map +0 -1
  488. package/lib/models/chart-accounts/chart-accounts.d.ts.map +0 -1
  489. package/lib/models/chart-accounts/index.d.ts.map +0 -1
  490. package/lib/models/chat/chat-view-type.enum.d.ts.map +0 -1
  491. package/lib/models/chat/chat.d.ts.map +0 -1
  492. package/lib/models/chat/index.d.ts.map +0 -1
  493. package/lib/models/chat/message-document.d.ts.map +0 -1
  494. package/lib/models/chat/message.d.ts.map +0 -1
  495. package/lib/models/client/annual-client-details.d.ts.map +0 -1
  496. package/lib/models/client/client-details.d.ts.map +0 -1
  497. package/lib/models/client/client-income-types.d.ts.map +0 -1
  498. package/lib/models/client/client-invite.d.ts.map +0 -1
  499. package/lib/models/client/client-movement.d.ts.map +0 -1
  500. package/lib/models/client/client-portfolio-chart-data.d.ts.map +0 -1
  501. package/lib/models/client/client-portfolio-report.d.ts.map +0 -1
  502. package/lib/models/client/index.d.ts.map +0 -1
  503. package/lib/models/color/alphabet-colors.enum.d.ts.map +0 -1
  504. package/lib/models/depreciation/depreciation-capital-project.d.ts.map +0 -1
  505. package/lib/models/depreciation/depreciation-forecast.d.ts.map +0 -1
  506. package/lib/models/depreciation/depreciation-group-item.d.ts.map +0 -1
  507. package/lib/models/depreciation/depreciation-group.d.ts.map +0 -1
  508. package/lib/models/depreciation/depreciation-group.enum.d.ts.map +0 -1
  509. package/lib/models/depreciation/depreciation-groups.const.d.ts.map +0 -1
  510. package/lib/models/depreciation/depreciation-lvp-rate.enum.d.ts.map +0 -1
  511. package/lib/models/depreciation/depreciation-receipt.d.ts.map +0 -1
  512. package/lib/models/depreciation/depreciation.d.ts.map +0 -1
  513. package/lib/models/depreciation/index.d.ts.map +0 -1
  514. package/lib/models/dictionary/dictionary.d.ts.map +0 -1
  515. package/lib/models/dictionary/index.d.ts.map +0 -1
  516. package/lib/models/document/document-api-url-prefix.enum.d.ts.map +0 -1
  517. package/lib/models/document/document-file-types.const.d.ts.map +0 -1
  518. package/lib/models/document/document-folder.d.ts.map +0 -1
  519. package/lib/models/document/document.d.ts.map +0 -1
  520. package/lib/models/document/index.d.ts.map +0 -1
  521. package/lib/models/employee/employee-details.d.ts.map +0 -1
  522. package/lib/models/employee/employee-invite.d.ts.map +0 -1
  523. package/lib/models/endpoint/endpoint.d.ts.map +0 -1
  524. package/lib/models/endpoint/endpoints.const.d.ts.map +0 -1
  525. package/lib/models/event/app-event-type.enum.d.ts.map +0 -1
  526. package/lib/models/event/app-event.d.ts.map +0 -1
  527. package/lib/models/event/index.d.ts.map +0 -1
  528. package/lib/models/export/export-cell-type.enum.d.ts.map +0 -1
  529. package/lib/models/export/export-cell.d.ts.map +0 -1
  530. package/lib/models/export/export-data-table.d.ts.map +0 -1
  531. package/lib/models/export/export-format.enum.d.ts.map +0 -1
  532. package/lib/models/export/export-row-data-type.enum.d.ts.map +0 -1
  533. package/lib/models/export/export-row.d.ts.map +0 -1
  534. package/lib/models/file/file.d.ts.map +0 -1
  535. package/lib/models/file/icons-file.enum.d.ts.map +0 -1
  536. package/lib/models/file/index.d.ts.map +0 -1
  537. package/lib/models/financial-year/financial-year.d.ts.map +0 -1
  538. package/lib/models/financial-year/index.d.ts.map +0 -1
  539. package/lib/models/financial-year/month-name-short.enum.d.ts.map +0 -1
  540. package/lib/models/financial-year/month-number.enum.d.ts.map +0 -1
  541. package/lib/models/financial-year/months.const.d.ts.map +0 -1
  542. package/lib/models/firm/firm.d.ts.map +0 -1
  543. package/lib/models/holding/holding-reinvest.d.ts.map +0 -1
  544. package/lib/models/holding/holding-sale.d.ts.map +0 -1
  545. package/lib/models/holding/holding-type-exchange.d.ts.map +0 -1
  546. package/lib/models/holding/holding-type.d.ts.map +0 -1
  547. package/lib/models/holding/holding.d.ts.map +0 -1
  548. package/lib/models/holding/index.d.ts.map +0 -1
  549. package/lib/models/income-position/income-position.d.ts.map +0 -1
  550. package/lib/models/income-source/income-source-chart-data.d.ts.map +0 -1
  551. package/lib/models/income-source/income-source-forecast.d.ts.map +0 -1
  552. package/lib/models/income-source/income-source-type.d.ts.map +0 -1
  553. package/lib/models/income-source/income-source.d.ts.map +0 -1
  554. package/lib/models/income-source/index.d.ts.map +0 -1
  555. package/lib/models/income-source/salary-forecast.d.ts.map +0 -1
  556. package/lib/models/income-source/sole-forecast.d.ts.map +0 -1
  557. package/lib/models/index.d.ts.map +0 -1
  558. package/lib/models/loan/index.d.ts.map +0 -1
  559. package/lib/models/loan/loan-max-number-of-payments.enum.d.ts.map +0 -1
  560. package/lib/models/loan/loan-payment.d.ts.map +0 -1
  561. package/lib/models/loan/loan-payout.d.ts.map +0 -1
  562. package/lib/models/loan/loan.d.ts.map +0 -1
  563. package/lib/models/notification/index.d.ts.map +0 -1
  564. package/lib/models/notification/notification.d.ts.map +0 -1
  565. package/lib/models/pdf/pdf-orientation.enum.d.ts.map +0 -1
  566. package/lib/models/pdf/pdf-settings.d.ts.map +0 -1
  567. package/lib/models/phone/phone.d.ts.map +0 -1
  568. package/lib/models/property/calculation-form-item.d.ts.map +0 -1
  569. package/lib/models/property/calculation-form-type.enum.d.ts.map +0 -1
  570. package/lib/models/property/capital-costs-itmes.const.d.ts.map +0 -1
  571. package/lib/models/property/corelogic-suggestion.d.ts.map +0 -1
  572. package/lib/models/property/index.d.ts.map +0 -1
  573. package/lib/models/property/property-category-movement.d.ts.map +0 -1
  574. package/lib/models/property/property-category.d.ts.map +0 -1
  575. package/lib/models/property/property-document.d.ts.map +0 -1
  576. package/lib/models/property/property-equity-chart-data.d.ts.map +0 -1
  577. package/lib/models/property/property-equity-chart-item.d.ts.map +0 -1
  578. package/lib/models/property/property-equity-chart-type.enum.d.ts.map +0 -1
  579. package/lib/models/property/property-forecast.d.ts.map +0 -1
  580. package/lib/models/property/property-sale/index.d.ts.map +0 -1
  581. package/lib/models/property/property-sale/property-sale-cost-base.d.ts.map +0 -1
  582. package/lib/models/property/property-sale/property-sale-tax-exemption-meta-field.d.ts.map +0 -1
  583. package/lib/models/property/property-sale/property-sale.d.ts.map +0 -1
  584. package/lib/models/property/property-sale/tax-exemption-meta-field.d.ts.map +0 -1
  585. package/lib/models/property/property-sale/tax-exemption.d.ts.map +0 -1
  586. package/lib/models/property/property-share.d.ts.map +0 -1
  587. package/lib/models/property/property-subscription.d.ts.map +0 -1
  588. package/lib/models/property/property-valuation.d.ts.map +0 -1
  589. package/lib/models/property/property.d.ts.map +0 -1
  590. package/lib/models/property/share-filter-options.enum.d.ts.map +0 -1
  591. package/lib/models/registration-invite/registration-invite.d.ts.map +0 -1
  592. package/lib/models/report/depreciation/depreciation-lvp-asset-type.enum.d.ts.map +0 -1
  593. package/lib/models/report/depreciation/depreciation-lvp-report-item.d.ts.map +0 -1
  594. package/lib/models/report/depreciation/depreciation-report-item.d.ts.map +0 -1
  595. package/lib/models/report/depreciation/index.d.ts.map +0 -1
  596. package/lib/models/report/index.d.ts.map +0 -1
  597. package/lib/models/report/my-tax/ato-links.d.ts.map +0 -1
  598. package/lib/models/report/my-tax/index.d.ts.map +0 -1
  599. package/lib/models/report/my-tax/my-tax-business-income-or-losses/business-income-or-losses-categories.const.d.ts.map +0 -1
  600. package/lib/models/report/my-tax/my-tax-business-income-or-losses/business-type.enum.d.ts.map +0 -1
  601. package/lib/models/report/my-tax/my-tax-business-income-or-losses/loss-type.enum.d.ts.map +0 -1
  602. package/lib/models/report/my-tax/my-tax-business-income-or-losses/my-tax-business-details/my-tax-business-details.d.ts.map +0 -1
  603. package/lib/models/report/my-tax/my-tax-business-income-or-losses/my-tax-business-income/my-tax-business-income.d.ts.map +0 -1
  604. package/lib/models/report/my-tax/my-tax-business-income-or-losses/my-tax-business-losses/my-tax-business-losses.d.ts.map +0 -1
  605. package/lib/models/report/my-tax/my-tax-cgt/cgt-exemption-and-rollover-code.enum.d.ts.map +0 -1
  606. package/lib/models/report/my-tax/my-tax-cgt/my-tax-cgt.d.ts.map +0 -1
  607. package/lib/models/report/my-tax/my-tax-deductions/deduction-clothing-type.enum.d.ts.map +0 -1
  608. package/lib/models/report/my-tax/my-tax-deductions/deduction-fields.const.d.ts.map +0 -1
  609. package/lib/models/report/my-tax/my-tax-deductions/deduction-self-education-type.enum.d.ts.map +0 -1
  610. package/lib/models/report/my-tax/my-tax-deductions/my-tax-deductions.d.ts.map +0 -1
  611. package/lib/models/report/my-tax/my-tax-dividends/my-tax-dividends.d.ts.map +0 -1
  612. package/lib/models/report/my-tax/my-tax-estimate/my-tax-estimate.d.ts.map +0 -1
  613. package/lib/models/report/my-tax/my-tax-income-statements/my-tax-income-statements.d.ts.map +0 -1
  614. package/lib/models/report/my-tax/my-tax-income-tests/my-tax-income-tests.d.ts.map +0 -1
  615. package/lib/models/report/my-tax/my-tax-interest/my-tax-interest.d.ts.map +0 -1
  616. package/lib/models/report/my-tax/my-tax-losses/my-tax-losses.d.ts.map +0 -1
  617. package/lib/models/report/my-tax/my-tax-offsets/my-tax-offsets.d.ts.map +0 -1
  618. package/lib/models/report/my-tax/my-tax-other-income/my-tax-other-income.d.ts.map +0 -1
  619. package/lib/models/report/my-tax/my-tax-partnerships-and-trusts/my-tax-partnerships-and-trusts.d.ts.map +0 -1
  620. package/lib/models/report/my-tax/my-tax-rent/my-tax-rent.d.ts.map +0 -1
  621. package/lib/models/report/property/index.d.ts.map +0 -1
  622. package/lib/models/report/property/property-report-item-depreciation.d.ts.map +0 -1
  623. package/lib/models/report/property/property-report-item-transaction.d.ts.map +0 -1
  624. package/lib/models/report/property/property-report-item.d.ts.map +0 -1
  625. package/lib/models/report/sole/index.d.ts.map +0 -1
  626. package/lib/models/report/sole/sole-business/sole-business-loss-report.d.ts.map +0 -1
  627. package/lib/models/report/vehicle-expense/vehicle-expense.d.ts.map +0 -1
  628. package/lib/models/service-subscription/index.d.ts.map +0 -1
  629. package/lib/models/service-subscription/module-url-list.const.d.ts.map +0 -1
  630. package/lib/models/service-subscription/payment-method-brand.enum.d.ts.map +0 -1
  631. package/lib/models/service-subscription/service-payment-method.d.ts.map +0 -1
  632. package/lib/models/service-subscription/service-payment.d.ts.map +0 -1
  633. package/lib/models/service-subscription/service-price.d.ts.map +0 -1
  634. package/lib/models/service-subscription/service-product.d.ts.map +0 -1
  635. package/lib/models/service-subscription/service-promo-code-duration.enum.d.ts.map +0 -1
  636. package/lib/models/service-subscription/service-promo-code.d.ts.map +0 -1
  637. package/lib/models/service-subscription/service-subscription-item.d.ts.map +0 -1
  638. package/lib/models/service-subscription/service-subscription.d.ts.map +0 -1
  639. package/lib/models/sole/bas-report.d.ts.map +0 -1
  640. package/lib/models/sole/index.d.ts.map +0 -1
  641. package/lib/models/sole/sole-business-activity.d.ts.map +0 -1
  642. package/lib/models/sole/sole-business-allocation.d.ts.map +0 -1
  643. package/lib/models/sole/sole-business-loss-offset-rule.d.ts.map +0 -1
  644. package/lib/models/sole/sole-business-loss.d.ts.map +0 -1
  645. package/lib/models/sole/sole-business.d.ts.map +0 -1
  646. package/lib/models/sole/sole-contact.d.ts.map +0 -1
  647. package/lib/models/sole/sole-depreciation-method.d.ts.map +0 -1
  648. package/lib/models/sole/sole-details.d.ts.map +0 -1
  649. package/lib/models/sole/sole-invoice-item.d.ts.map +0 -1
  650. package/lib/models/sole/sole-invoice-template.d.ts.map +0 -1
  651. package/lib/models/sole/sole-invoice.d.ts.map +0 -1
  652. package/lib/models/tax-review/tax-review.d.ts.map +0 -1
  653. package/lib/models/tax-summary/report-item-details.d.ts.map +0 -1
  654. package/lib/models/tax-summary/report-item.d.ts.map +0 -1
  655. package/lib/models/tax-summary/tax-summary-section.d.ts.map +0 -1
  656. package/lib/models/tax-summary/tax-summary-type.enum.d.ts.map +0 -1
  657. package/lib/models/tax-summary/tax-summary.d.ts.map +0 -1
  658. package/lib/models/toast/toast-type.enum.d.ts.map +0 -1
  659. package/lib/models/toast/toast.d.ts.map +0 -1
  660. package/lib/models/transaction/allocation-rule-condition.d.ts.map +0 -1
  661. package/lib/models/transaction/allocation-rule-transaction-meta-field.d.ts.map +0 -1
  662. package/lib/models/transaction/allocation-rule-transaction.d.ts.map +0 -1
  663. package/lib/models/transaction/allocation-rule.d.ts.map +0 -1
  664. package/lib/models/transaction/income-amount-type.enum.d.ts.map +0 -1
  665. package/lib/models/transaction/index.d.ts.map +0 -1
  666. package/lib/models/transaction/transaction-allocation.d.ts.map +0 -1
  667. package/lib/models/transaction/transaction-category.enum.d.ts.map +0 -1
  668. package/lib/models/transaction/transaction-meta-field.d.ts.map +0 -1
  669. package/lib/models/transaction/transaction-receipt.d.ts.map +0 -1
  670. package/lib/models/transaction/transaction.d.ts.map +0 -1
  671. package/lib/models/user/index.d.ts.map +0 -1
  672. package/lib/models/user/my-account-history-initiated-by.enum.d.ts.map +0 -1
  673. package/lib/models/user/my-account-history-status.enum.d.ts.map +0 -1
  674. package/lib/models/user/my-account-history-type.enum.d.ts.map +0 -1
  675. package/lib/models/user/my-account-history.d.ts.map +0 -1
  676. package/lib/models/user/occupation.d.ts.map +0 -1
  677. package/lib/models/user/user-roles.const.d.ts.map +0 -1
  678. package/lib/models/user/user-to-register.d.ts.map +0 -1
  679. package/lib/models/user/user-work-position.const.d.ts.map +0 -1
  680. package/lib/models/user/user.d.ts.map +0 -1
  681. package/lib/models/user-event/user-event-setting-field.enum.d.ts.map +0 -1
  682. package/lib/models/user-event/user-event-setting.d.ts.map +0 -1
  683. package/lib/models/user-event/user-event-type-category.d.ts.map +0 -1
  684. package/lib/models/user-event/user-event-type.d.ts.map +0 -1
  685. package/lib/models/vehicle/index.d.ts.map +0 -1
  686. package/lib/models/vehicle/logbook-period.d.ts.map +0 -1
  687. package/lib/models/vehicle/vehicle-claim-details.d.ts.map +0 -1
  688. package/lib/models/vehicle/vehicle-claim.d.ts.map +0 -1
  689. package/lib/models/vehicle/vehicle-logbook.d.ts.map +0 -1
  690. package/lib/models/vehicle/vehicle.d.ts.map +0 -1
  691. package/lib/services/account-setup/account-setup.service.d.ts.map +0 -1
  692. package/lib/services/account-setup/index.d.ts.map +0 -1
  693. package/lib/services/affiliate/index.d.ts.map +0 -1
  694. package/lib/services/affiliate/rewardful/index.d.ts.map +0 -1
  695. package/lib/services/affiliate/rewardful/rewardful.service.d.ts.map +0 -1
  696. package/lib/services/asset/assets.service.d.ts.map +0 -1
  697. package/lib/services/asset/index.d.ts.map +0 -1
  698. package/lib/services/auth/auth.service.d.ts.map +0 -1
  699. package/lib/services/auth/index.d.ts.map +0 -1
  700. package/lib/services/auth/jwt.service.d.ts.map +0 -1
  701. package/lib/services/bank/bank-account-calculation.service.d.ts.map +0 -1
  702. package/lib/services/bank/bank-transaction-calculation.service.d.ts.map +0 -1
  703. package/lib/services/bank/index.d.ts.map +0 -1
  704. package/lib/services/data.service.d.ts.map +0 -1
  705. package/lib/services/event/event-dispatcher.service.d.ts.map +0 -1
  706. package/lib/services/event/index.d.ts.map +0 -1
  707. package/lib/services/event/sse.service.d.ts.map +0 -1
  708. package/lib/services/export/export-formatter.service.d.ts.map +0 -1
  709. package/lib/services/export/index.d.ts.map +0 -1
  710. package/lib/services/header-title/header-title.service.d.ts.map +0 -1
  711. package/lib/services/header-title/index.d.ts.map +0 -1
  712. package/lib/services/http/address/address.service.d.ts.map +0 -1
  713. package/lib/services/http/address/index.d.ts.map +0 -1
  714. package/lib/services/http/bank/bank-account/bank-account.service.d.ts.map +0 -1
  715. package/lib/services/http/bank/bank-account/index.d.ts.map +0 -1
  716. package/lib/services/http/bank/bank-connection/bank-connection-messages.enum.d.ts.map +0 -1
  717. package/lib/services/http/bank/bank-connection/bank-connection.service.d.ts.map +0 -1
  718. package/lib/services/http/bank/bank-connection/index.d.ts.map +0 -1
  719. package/lib/services/http/bank/bank-transaction/bank-transaction.service.d.ts.map +0 -1
  720. package/lib/services/http/bank/bank-transaction/index.d.ts.map +0 -1
  721. package/lib/services/http/bank/bank.service.d.ts.map +0 -1
  722. package/lib/services/http/bank/basiq/basiq-messages.enum.d.ts.map +0 -1
  723. package/lib/services/http/bank/basiq/basiq-token.service.d.ts.map +0 -1
  724. package/lib/services/http/bank/basiq/basiq.service.d.ts.map +0 -1
  725. package/lib/services/http/bank/basiq/index.d.ts.map +0 -1
  726. package/lib/services/http/bank/index.d.ts.map +0 -1
  727. package/lib/services/http/chart-accounts/chart-accounts-depreciations/chart-accounts-depreciations.service.d.ts.map +0 -1
  728. package/lib/services/http/chart-accounts/chart-accounts-depreciations/index.d.ts.map +0 -1
  729. package/lib/services/http/chart-accounts/chart-accounts.service.d.ts.map +0 -1
  730. package/lib/services/http/chart-accounts/index.d.ts.map +0 -1
  731. package/lib/services/http/chat/chat.service.d.ts.map +0 -1
  732. package/lib/services/http/chat/index.d.ts.map +0 -1
  733. package/lib/services/http/chat/message-document.service.d.ts.map +0 -1
  734. package/lib/services/http/chat/message.service.d.ts.map +0 -1
  735. package/lib/services/http/client/capital-gain/annual-client-details.service.d.ts.map +0 -1
  736. package/lib/services/http/client/index.d.ts.map +0 -1
  737. package/lib/services/http/client/occupation/occupation.service.d.ts.map +0 -1
  738. package/lib/services/http/depreciation/depreciation-capital-project/depreciation-capital-project.service.d.ts.map +0 -1
  739. package/lib/services/http/depreciation/depreciation-capital-project/index.d.ts.map +0 -1
  740. package/lib/services/http/depreciation/depreciation-receipt/depreciation-receipt.service.d.ts.map +0 -1
  741. package/lib/services/http/depreciation/depreciation-receipt/index.d.ts.map +0 -1
  742. package/lib/services/http/depreciation/depreciation.service.d.ts.map +0 -1
  743. package/lib/services/http/depreciation/index.d.ts.map +0 -1
  744. package/lib/services/http/document/document-folder/document-folder.service.d.ts.map +0 -1
  745. package/lib/services/http/document/document.service.d.ts.map +0 -1
  746. package/lib/services/http/document/index.d.ts.map +0 -1
  747. package/lib/services/http/facebook/facebook-auth-options.interface.d.ts.map +0 -1
  748. package/lib/services/http/facebook/facebook-auth-response.interface.d.ts.map +0 -1
  749. package/lib/services/http/facebook/facebook-status-response.interface.d.ts.map +0 -1
  750. package/lib/services/http/facebook/facebook.service.d.ts.map +0 -1
  751. package/lib/services/http/facebook/index.d.ts.map +0 -1
  752. package/lib/services/http/file/file.service.d.ts.map +0 -1
  753. package/lib/services/http/file/index.d.ts.map +0 -1
  754. package/lib/services/http/firm/client-income/client-income-types.service.d.ts.map +0 -1
  755. package/lib/services/http/firm/client-income/index.d.ts.map +0 -1
  756. package/lib/services/http/firm/client-invite/client-invite.service.d.ts.map +0 -1
  757. package/lib/services/http/firm/client-invite/index.d.ts.map +0 -1
  758. package/lib/services/http/firm/client-movement/client-movement.service.d.ts.map +0 -1
  759. package/lib/services/http/firm/client-movement/index.d.ts.map +0 -1
  760. package/lib/services/http/firm/employee/employee.service.d.ts.map +0 -1
  761. package/lib/services/http/firm/employee/index.d.ts.map +0 -1
  762. package/lib/services/http/firm/employee-invite/employee-invite.service.d.ts.map +0 -1
  763. package/lib/services/http/firm/employee-invite/index.d.ts.map +0 -1
  764. package/lib/services/http/firm/firm.service.d.ts.map +0 -1
  765. package/lib/services/http/firm/index.d.ts.map +0 -1
  766. package/lib/services/http/firm/portfolio-report/client-portfolio-report.service.d.ts.map +0 -1
  767. package/lib/services/http/firm/portfolio-report/index.d.ts.map +0 -1
  768. package/lib/services/http/google/google.service.d.ts.map +0 -1
  769. package/lib/services/http/google/index.d.ts.map +0 -1
  770. package/lib/services/http/holding/holding-messages.enum.d.ts.map +0 -1
  771. package/lib/services/http/holding/holding-sale-messages.enum.d.ts.map +0 -1
  772. package/lib/services/http/holding/holding-sale.service.d.ts.map +0 -1
  773. package/lib/services/http/holding/holding-type-messages.enum.d.ts.map +0 -1
  774. package/lib/services/http/holding/holding-type.service.d.ts.map +0 -1
  775. package/lib/services/http/holding/holding.service.d.ts.map +0 -1
  776. package/lib/services/http/holding/index.d.ts.map +0 -1
  777. package/lib/services/http/income-source/income-source-forecast/income-source-forecast.service.d.ts.map +0 -1
  778. package/lib/services/http/income-source/income-source-forecast/index.d.ts.map +0 -1
  779. package/lib/services/http/income-source/income-source.service.d.ts.map +0 -1
  780. package/lib/services/http/income-source/index.d.ts.map +0 -1
  781. package/lib/services/http/income-source/salary-forecast/index.d.ts.map +0 -1
  782. package/lib/services/http/income-source/salary-forecast/salary-forecast.service.d.ts.map +0 -1
  783. package/lib/services/http/income-source/sole-forecast/index.d.ts.map +0 -1
  784. package/lib/services/http/income-source/sole-forecast/sole-forecast.service.d.ts.map +0 -1
  785. package/lib/services/http/index.d.ts.map +0 -1
  786. package/lib/services/http/loan/borrowing-expense/borrowing-expense.service.d.ts.map +0 -1
  787. package/lib/services/http/loan/borrowing-expense/index.d.ts.map +0 -1
  788. package/lib/services/http/loan/index.d.ts.map +0 -1
  789. package/lib/services/http/loan/loan.service.d.ts.map +0 -1
  790. package/lib/services/http/property/index.d.ts.map +0 -1
  791. package/lib/services/http/property/property-category/index.d.ts.map +0 -1
  792. package/lib/services/http/property/property-category/property-category.service.d.ts.map +0 -1
  793. package/lib/services/http/property/property-category-movement/index.d.ts.map +0 -1
  794. package/lib/services/http/property/property-category-movement/property-category-movement.service.d.ts.map +0 -1
  795. package/lib/services/http/property/property-document/index.d.ts.map +0 -1
  796. package/lib/services/http/property/property-document/property-document.service.d.ts.map +0 -1
  797. package/lib/services/http/property/property-sale/index.d.ts.map +0 -1
  798. package/lib/services/http/property/property-sale/property-sale.service.d.ts.map +0 -1
  799. package/lib/services/http/property/property-share/index.d.ts.map +0 -1
  800. package/lib/services/http/property/property-share/property-share.service.d.ts.map +0 -1
  801. package/lib/services/http/property/property.service.d.ts.map +0 -1
  802. package/lib/services/http/receipt/index.d.ts.map +0 -1
  803. package/lib/services/http/receipt/receipt.service.d.ts.map +0 -1
  804. package/lib/services/http/rest/http-method.type.d.ts.map +0 -1
  805. package/lib/services/http/rest/index.d.ts.map +0 -1
  806. package/lib/services/http/rest/rest-method.type.d.ts.map +0 -1
  807. package/lib/services/http/rest/rest-old.service.d.ts.map +0 -1
  808. package/lib/services/http/rest/rest.service.d.ts.map +0 -1
  809. package/lib/services/http/service-notification/index.d.ts.map +0 -1
  810. package/lib/services/http/service-notification/service-notification.service.d.ts.map +0 -1
  811. package/lib/services/http/sole/bas-report/bas-report.service.d.ts.map +0 -1
  812. package/lib/services/http/sole/index.d.ts.map +0 -1
  813. package/lib/services/http/sole/sole-business/messages.enum.d.ts.map +0 -1
  814. package/lib/services/http/sole/sole-business/sole-business.service.d.ts.map +0 -1
  815. package/lib/services/http/sole/sole-business-activity/sole-business-activity.service.d.ts.map +0 -1
  816. package/lib/services/http/sole/sole-business-loss/sole-business-loss-rules/sole-business-loss-offset-rule.service.d.ts.map +0 -1
  817. package/lib/services/http/sole/sole-business-loss/sole-business-loss.service.d.ts.map +0 -1
  818. package/lib/services/http/sole/sole-contact/sole-contact.service.d.ts.map +0 -1
  819. package/lib/services/http/sole/sole-depreciation-method/sole-depreciation-method.service.d.ts.map +0 -1
  820. package/lib/services/http/sole/sole-details/sole-details.service.d.ts.map +0 -1
  821. package/lib/services/http/sole/sole-invoice/sole-invoice.service.d.ts.map +0 -1
  822. package/lib/services/http/sole/sole-invoice-template/sole-invoice-template.service.d.ts.map +0 -1
  823. package/lib/services/http/subscription/index.d.ts.map +0 -1
  824. package/lib/services/http/subscription/service-payment/service-payment.service.d.ts.map +0 -1
  825. package/lib/services/http/subscription/service-payment-method/service-payment-method.service.d.ts.map +0 -1
  826. package/lib/services/http/subscription/service-price/service-price.service.d.ts.map +0 -1
  827. package/lib/services/http/subscription/service-product/service-product.service.d.ts.map +0 -1
  828. package/lib/services/http/subscription/service-subscription/subscription.service.d.ts.map +0 -1
  829. package/lib/services/http/tax-review/index.d.ts.map +0 -1
  830. package/lib/services/http/tax-review/tax-review-history/tax-review-history.service.d.ts.map +0 -1
  831. package/lib/services/http/tax-review/tax-review.service.d.ts.map +0 -1
  832. package/lib/services/http/tax-summary/index.d.ts.map +0 -1
  833. package/lib/services/http/tax-summary/tax-summary.service.d.ts.map +0 -1
  834. package/lib/services/http/transaction/index.d.ts.map +0 -1
  835. package/lib/services/http/transaction/transaction-allocation/allocation-rule/allocation-rule.service.d.ts.map +0 -1
  836. package/lib/services/http/transaction/transaction-allocation/transaction-allocation.service.d.ts.map +0 -1
  837. package/lib/services/http/transaction/transaction-receipt/transaction-receipt.service.d.ts.map +0 -1
  838. package/lib/services/http/transaction/transaction.service.d.ts.map +0 -1
  839. package/lib/services/http/tutorial-video/index.d.ts.map +0 -1
  840. package/lib/services/http/tutorial-video/tutorial-video-response.interface.d.ts.map +0 -1
  841. package/lib/services/http/tutorial-video/tutorial-video.service.d.ts.map +0 -1
  842. package/lib/services/http/tutorial-video/video-source.interface.d.ts.map +0 -1
  843. package/lib/services/http/user/index.d.ts.map +0 -1
  844. package/lib/services/http/user/user-event-setting/user-event-setting.service.d.ts.map +0 -1
  845. package/lib/services/http/user/user-event-type/user-event-type.service.d.ts.map +0 -1
  846. package/lib/services/http/user/user.service.d.ts.map +0 -1
  847. package/lib/services/http/user/users-invite/users-invite.service.d.ts.map +0 -1
  848. package/lib/services/http/vehicle/index.d.ts.map +0 -1
  849. package/lib/services/http/vehicle/vehicle-claim-details.service.d.ts.map +0 -1
  850. package/lib/services/http/vehicle/vehicle-claim.service.d.ts.map +0 -1
  851. package/lib/services/http/vehicle/vehicle-logbook.service.d.ts.map +0 -1
  852. package/lib/services/http/vehicle/vehicle.service.d.ts.map +0 -1
  853. package/lib/services/index.d.ts.map +0 -1
  854. package/lib/services/intercom/index.d.ts.map +0 -1
  855. package/lib/services/intercom/intercom.service.d.ts.map +0 -1
  856. package/lib/services/json/holding/holding-type-exchange.service.d.ts.map +0 -1
  857. package/lib/services/json/income-source/income-source-type.service.d.ts.map +0 -1
  858. package/lib/services/json/index.d.ts.map +0 -1
  859. package/lib/services/json/tax-exemption/tax-exemption.service.d.ts.map +0 -1
  860. package/lib/services/pdf/index.d.ts.map +0 -1
  861. package/lib/services/pdf/js-pdf.d.ts.map +0 -1
  862. package/lib/services/pdf/pdf-from-dom-element/file-settings.d.ts.map +0 -1
  863. package/lib/services/pdf/pdf-from-dom-element/pdf-from-dom-element.service.d.ts.map +0 -1
  864. package/lib/services/pdf/pdf-from-table/file-settings.d.ts.map +0 -1
  865. package/lib/services/pdf/pdf-from-table/pdf-from-data-table/pdf-from-data-table.service.d.ts.map +0 -1
  866. package/lib/services/pdf/pdf-from-table/pdf-from-html-table/pdf-from-html-table.service.d.ts.map +0 -1
  867. package/lib/services/pdf/pdf-from-table/pdf-from-table.service.d.ts.map +0 -1
  868. package/lib/services/preloader/index.d.ts.map +0 -1
  869. package/lib/services/preloader/preloader.service.d.ts.map +0 -1
  870. package/lib/services/property/corelogic/corelogic.service.d.ts.map +0 -1
  871. package/lib/services/property/corelogic/index.d.ts.map +0 -1
  872. package/lib/services/property/equity-position-chart/equity-position-chart.service.d.ts.map +0 -1
  873. package/lib/services/property/equity-position-chart/index.d.ts.map +0 -1
  874. package/lib/services/property/index.d.ts.map +0 -1
  875. package/lib/services/property/property-calculation/index.d.ts.map +0 -1
  876. package/lib/services/property/property-calculation/property-calculation.service.d.ts.map +0 -1
  877. package/lib/services/report/index.d.ts.map +0 -1
  878. package/lib/services/report/property/property-transaction-report.service.d.ts.map +0 -1
  879. package/lib/services/toast/index.d.ts.map +0 -1
  880. package/lib/services/toast/toast.service.d.ts.map +0 -1
  881. package/lib/services/transaction/index.d.ts.map +0 -1
  882. package/lib/services/transaction/transaction-calculation.service.d.ts.map +0 -1
  883. package/lib/services/user/index.d.ts.map +0 -1
  884. package/lib/services/user/user-switcher.service.d.ts.map +0 -1
  885. package/lib/services/vehicle/index.d.ts.map +0 -1
  886. package/lib/services/vehicle/logbook-best-period.service.d.ts.map +0 -1
  887. package/lib/services/xlsx/index.d.ts.map +0 -1
  888. package/lib/services/xlsx/xlsx.service.d.ts.map +0 -1
  889. package/lib/tt-core.module.d.ts.map +0 -1
  890. package/lib/validators/address-corelogic.validator.d.ts.map +0 -1
  891. package/lib/validators/at-least-one-enabled.validator.d.ts.map +0 -1
  892. package/lib/validators/at-least-one.validator.d.ts.map +0 -1
  893. package/lib/validators/autocomplete.validator.d.ts.map +0 -1
  894. package/lib/validators/conditional.validator.d.ts.map +0 -1
  895. package/lib/validators/current-fin-year.validator.d.ts.map +0 -1
  896. package/lib/validators/date-range.validator.d.ts.map +0 -1
  897. package/lib/validators/fields-sum.validator.d.ts.map +0 -1
  898. package/lib/validators/file.validator.d.ts.map +0 -1
  899. package/lib/validators/greater-than.validator.d.ts.map +0 -1
  900. package/lib/validators/index.d.ts.map +0 -1
  901. package/lib/validators/min-date/messages.enum.d.ts.map +0 -1
  902. package/lib/validators/min-date/min-date.validator.d.ts.map +0 -1
  903. package/lib/validators/password-match.validator.d.ts.map +0 -1
  904. package/lib/validators/password.validator.d.ts.map +0 -1
  905. package/lib/validators/phone-number.validator.d.ts.map +0 -1
  906. package/lib/validators/required-length.validator.d.ts.map +0 -1
  907. package/lib/validators/transactions-meta-fields.validator.d.ts.map +0 -1
  908. package/public-api.d.ts.map +0 -1
  909. package/taxtank-core.d.ts.map +0 -1
@@ -2,7 +2,6 @@ import { __decorate } from "tslib";
2
2
  import { VehicleClaim as VehicleClaimBase } from '../../db/Models/vehicle/vehicle-claim';
3
3
  import { TankTypeEnum } from '../../db/Enums/tank-type.enum';
4
4
  import { Type } from 'class-transformer';
5
- import { ChartAccountsListEnum } from '../../db/Enums';
6
5
  import { VehicleClaimDetails } from './vehicle-claim-details';
7
6
  import { SoleBusiness } from '../sole';
8
7
  import { FinancialYear } from '../financial-year';
@@ -43,11 +42,6 @@ export class VehicleClaim extends VehicleClaimBase {
43
42
  getAverageWeeklyKMS() {
44
43
  return this.kilometers / FinancialYear.weeksInYear;
45
44
  }
46
- static getKMSChartAccountsIdByTankType(tankType) {
47
- return tankType === TankTypeEnum.WORK
48
- ? ChartAccountsListEnum.KLMS_TRAVELLED_FOR_WORK
49
- : ChartAccountsListEnum.KLMS_TRAVELLED;
50
- }
51
45
  }
52
46
  /**
53
47
  * limit for kms claim method
@@ -55,7 +49,7 @@ export class VehicleClaim extends VehicleClaimBase {
55
49
  VehicleClaim.totalKmsLimit = 5000;
56
50
  /**
57
51
  * limit for work usage claim method
58
- */
52
+ */
59
53
  VehicleClaim.totalWorkUsagePercent = 100;
60
54
  __decorate([
61
55
  Type(() => VehicleClaimDetails)
@@ -63,4 +57,4 @@ __decorate([
63
57
  __decorate([
64
58
  Type(() => SoleBusiness)
65
59
  ], VehicleClaim.prototype, "business", void 0);
66
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmVoaWNsZS1jbGFpbS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R0LWNvcmUvc3JjL2xpYi9tb2RlbHMvdmVoaWNsZS92ZWhpY2xlLWNsYWltLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsWUFBWSxJQUFJLGdCQUFnQixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFDekYsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQzdELE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUN6QyxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUV2RCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUM5RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sU0FBUyxDQUFDO0FBQ3ZDLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNsRCxPQUFPLEtBQUssTUFBTSxjQUFjLENBQUM7QUFFakMsTUFBTSxPQUFPLFlBQWEsU0FBUSxnQkFBZ0I7SUFBbEQ7O1FBaUJFLGVBQVUsR0FBRyxDQUFDLENBQUM7UUFDZixjQUFTLEdBQUcsQ0FBQyxDQUFDO0lBNkNoQixDQUFDO0lBM0NDLFVBQVU7UUFDUixPQUFPLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQztJQUN4QixDQUFDO0lBRUQsVUFBVTtRQUNSLE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUM7SUFDekIsQ0FBQztJQUVELElBQUksUUFBUTtRQUNWLE9BQU8sSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDLENBQUMsQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDO0lBQ25FLENBQUM7SUFFRDs7T0FFRztJQUNILGlCQUFpQixDQUFDLGdCQUF3QjtRQUN4QyxPQUFPLEtBQUssQ0FBQyxJQUFJLENBQUMsVUFBVSxHQUFHLGdCQUFnQixFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQ3RELENBQUM7SUFFRDs7O09BR0c7SUFDSCxxQkFBcUIsQ0FBQyxZQUFtQztRQUV2RCxNQUFNLGtCQUFrQixHQUFXLFlBQVk7YUFDNUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDO2FBQ3ZCLHNCQUFzQixFQUFFO2FBQ3hCLEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUVuQiwrR0FBK0c7UUFDL0csT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLGtCQUFrQixDQUFDLEdBQUcsSUFBSSxDQUFDLFNBQVMsR0FBRyxHQUFHLENBQUM7SUFDN0QsQ0FBQztJQUVELG1CQUFtQjtRQUNqQixPQUFPLElBQUksQ0FBQyxVQUFVLEdBQUcsYUFBYSxDQUFDLFdBQVcsQ0FBQztJQUNyRCxDQUFDO0lBRUQsTUFBTSxDQUFDLCtCQUErQixDQUFDLFFBQXNCO1FBQzNELE9BQU8sUUFBUSxLQUFLLFlBQVksQ0FBQyxJQUFJO1lBQ25DLENBQUMsQ0FBQyxxQkFBcUIsQ0FBQyx1QkFBdUI7WUFDL0MsQ0FBQyxDQUFDLHFCQUFxQixDQUFDLGNBQWMsQ0FBQztJQUMzQyxDQUFDOztBQTdERDs7R0FFRztBQUNJLDBCQUFhLEdBQUcsSUFBSSxDQUFDO0FBRTVCOztJQUVJO0FBQ0csa0NBQXFCLEdBQUcsR0FBRyxDQUFDO0FBR2pDO0lBREQsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLG1CQUFtQixDQUFDOzZDQUNEO0FBRzdCO0lBREQsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLFlBQVksQ0FBQzs4Q0FDQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFZlaGljbGVDbGFpbSBhcyBWZWhpY2xlQ2xhaW1CYXNlIH0gZnJvbSAnLi4vLi4vZGIvTW9kZWxzL3ZlaGljbGUvdmVoaWNsZS1jbGFpbSc7XG5pbXBvcnQgeyBUYW5rVHlwZUVudW0gfSBmcm9tICcuLi8uLi9kYi9FbnVtcy90YW5rLXR5cGUuZW51bSc7XG5pbXBvcnQgeyBUeXBlIH0gZnJvbSAnY2xhc3MtdHJhbnNmb3JtZXInO1xuaW1wb3J0IHsgQ2hhcnRBY2NvdW50c0xpc3RFbnVtIH0gZnJvbSAnLi4vLi4vZGIvRW51bXMnO1xuaW1wb3J0IHsgVHJhbnNhY3Rpb25Db2xsZWN0aW9uIH0gZnJvbSAnLi4vLi4vY29sbGVjdGlvbnMnO1xuaW1wb3J0IHsgVmVoaWNsZUNsYWltRGV0YWlscyB9IGZyb20gJy4vdmVoaWNsZS1jbGFpbS1kZXRhaWxzJztcbmltcG9ydCB7IFNvbGVCdXNpbmVzcyB9IGZyb20gJy4uL3NvbGUnO1xuaW1wb3J0IHsgRmluYW5jaWFsWWVhciB9IGZyb20gJy4uL2ZpbmFuY2lhbC15ZWFyJztcbmltcG9ydCByb3VuZCBmcm9tICdsb2Rhc2gvcm91bmQnO1xuXG5leHBvcnQgY2xhc3MgVmVoaWNsZUNsYWltIGV4dGVuZHMgVmVoaWNsZUNsYWltQmFzZSB7XG4gIC8qKlxuICAgKiBsaW1pdCBmb3Iga21zIGNsYWltIG1ldGhvZFxuICAgKi9cbiAgc3RhdGljIHRvdGFsS21zTGltaXQgPSA1MDAwO1xuXG4gIC8qKlxuICAgKiBsaW1pdCBmb3Igd29yayB1c2FnZSBjbGFpbSBtZXRob2RcbiAgICAqL1xuICBzdGF0aWMgdG90YWxXb3JrVXNhZ2VQZXJjZW50ID0gMTAwO1xuXG4gIEBUeXBlKCgpID0+IFZlaGljbGVDbGFpbURldGFpbHMpXG4gICAgZGV0YWlsczogVmVoaWNsZUNsYWltRGV0YWlscztcblxuICBAVHlwZSgoKSA9PiBTb2xlQnVzaW5lc3MpXG4gICAgYnVzaW5lc3M6IFNvbGVCdXNpbmVzcztcblxuICBraWxvbWV0ZXJzID0gMDtcbiAgd29ya1VzYWdlID0gMDtcblxuICBpc1dvcmtUYW5rKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAhdGhpcy5idXNpbmVzcztcbiAgfVxuXG4gIGlzU29sZVRhbmsoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuICEhdGhpcy5idXNpbmVzcztcbiAgfVxuXG4gIGdldCB0YW5rVHlwZSgpOiBUYW5rVHlwZUVudW0ge1xuICAgIHJldHVybiB0aGlzLmlzU29sZVRhbmsoKSA/IFRhbmtUeXBlRW51bS5TT0xFIDogVGFua1R5cGVFbnVtLldPUks7XG4gIH1cblxuICAvKipcbiAgICogQ2xhaW0gYW1vdW50IGZvciBLTXMgbWV0aG9kLiBFeGlzdHMgb25seSBmb3IgS01zIG1ldGhvZC5cbiAgICovXG4gIGdldEtNU0NsYWltQW1vdW50KHZlaGljbGVDbGFpbVJhdGU6IG51bWJlcik6IG51bWJlciB7XG4gICAgcmV0dXJuIHJvdW5kKHRoaXMua2lsb21ldGVycyAqIHZlaGljbGVDbGFpbVJhdGUsIDIpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCBsb2dib29rIGNsYWltIGFtb3VudC4gRXhpc3RzIG9ubHkgZm9yIGxvZ2Jvb2sgbWV0aG9kLlxuICAgKiBDbGFpbUFtb3VudCA9IFdvcmtVc2FnZSAqIHRyYW5zYWN0aW9uL2RlcHJlY2lhdGlvbiBhbW91bnRcbiAgICovXG4gIGdldExvZ2Jvb2tDbGFpbUFtb3VudCh0cmFuc2FjdGlvbnM6IFRyYW5zYWN0aW9uQ29sbGVjdGlvbik6IG51bWJlciB7XG5cbiAgICBjb25zdCB0cmFuc2FjdGlvbnNBbW91bnQ6IG51bWJlciA9IHRyYW5zYWN0aW9uc1xuICAgICAgLmdldEJ5VmVoaWNsZUNsYWltKHRoaXMpXG4gICAgICAuZ2V0TG9nYm9va1RyYW5zYWN0aW9ucygpXG4gICAgICAuc3VtQnkoJ2Ftb3VudCcpO1xuXG4gICAgLy8gTWF0aC5hYnMgYmVjYXVzZSBhbW91bnQgd2lsbCBiZSBuZWdhdGl2ZSAoYmVjYXVzZSB3ZSBzdW0gZXhwZW5zZXMpLCBidXQgd2UgZG9uJ3Qgd2FudCBuZWdhdGl2ZSBwZXJjZW50IHZhbHVlXG4gICAgcmV0dXJuIE1hdGguYWJzKHRyYW5zYWN0aW9uc0Ftb3VudCkgKiB0aGlzLndvcmtVc2FnZSAvIDEwMDtcbiAgfVxuXG4gIGdldEF2ZXJhZ2VXZWVrbHlLTVMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5raWxvbWV0ZXJzIC8gRmluYW5jaWFsWWVhci53ZWVrc0luWWVhcjtcbiAgfVxuXG4gIHN0YXRpYyBnZXRLTVNDaGFydEFjY291bnRzSWRCeVRhbmtUeXBlKHRhbmtUeXBlOiBUYW5rVHlwZUVudW0pOiBudW1iZXIge1xuICAgIHJldHVybiB0YW5rVHlwZSA9PT0gVGFua1R5cGVFbnVtLldPUktcbiAgICAgID8gQ2hhcnRBY2NvdW50c0xpc3RFbnVtLktMTVNfVFJBVkVMTEVEX0ZPUl9XT1JLXG4gICAgICA6IENoYXJ0QWNjb3VudHNMaXN0RW51bS5LTE1TX1RSQVZFTExFRDtcbiAgfVxufVxuIl19
60
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmVoaWNsZS1jbGFpbS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R0LWNvcmUvc3JjL2xpYi9tb2RlbHMvdmVoaWNsZS92ZWhpY2xlLWNsYWltLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsWUFBWSxJQUFJLGdCQUFnQixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFDekYsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQzdELE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUV6QyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUM5RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sU0FBUyxDQUFDO0FBQ3ZDLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNsRCxPQUFPLEtBQUssTUFBTSxjQUFjLENBQUM7QUFFakMsTUFBTSxPQUFPLFlBQWEsU0FBUSxnQkFBZ0I7SUFBbEQ7O1FBaUJFLGVBQVUsR0FBRyxDQUFDLENBQUM7UUFDZixjQUFTLEdBQUcsQ0FBQyxDQUFDO0lBdUNoQixDQUFDO0lBckNDLFVBQVU7UUFDUixPQUFPLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQztJQUN4QixDQUFDO0lBRUQsVUFBVTtRQUNSLE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUM7SUFDekIsQ0FBQztJQUVELElBQUksUUFBUTtRQUNWLE9BQU8sSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDLENBQUMsQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDO0lBQ25FLENBQUM7SUFFRDs7T0FFRztJQUNILGlCQUFpQixDQUFDLGdCQUF3QjtRQUN4QyxPQUFPLEtBQUssQ0FBQyxJQUFJLENBQUMsVUFBVSxHQUFHLGdCQUFnQixFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQ3RELENBQUM7SUFFRDs7O09BR0c7SUFDSCxxQkFBcUIsQ0FBQyxZQUFtQztRQUV2RCxNQUFNLGtCQUFrQixHQUFXLFlBQVk7YUFDNUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDO2FBQ3ZCLHNCQUFzQixFQUFFO2FBQ3hCLEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUVuQiwrR0FBK0c7UUFDL0csT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLGtCQUFrQixDQUFDLEdBQUcsSUFBSSxDQUFDLFNBQVMsR0FBRyxHQUFHLENBQUM7SUFDN0QsQ0FBQztJQUVELG1CQUFtQjtRQUNqQixPQUFPLElBQUksQ0FBQyxVQUFVLEdBQUcsYUFBYSxDQUFDLFdBQVcsQ0FBQztJQUNyRCxDQUFDOztBQXZERDs7R0FFRztBQUNJLDBCQUFhLEdBQUcsSUFBSSxDQUFDO0FBRTVCOztHQUVHO0FBQ0ksa0NBQXFCLEdBQUcsR0FBRyxDQUFDO0FBR25DO0lBREMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLG1CQUFtQixDQUFDOzZDQUNIO0FBRzdCO0lBREMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLFlBQVksQ0FBQzs4Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFZlaGljbGVDbGFpbSBhcyBWZWhpY2xlQ2xhaW1CYXNlIH0gZnJvbSAnLi4vLi4vZGIvTW9kZWxzL3ZlaGljbGUvdmVoaWNsZS1jbGFpbSc7XG5pbXBvcnQgeyBUYW5rVHlwZUVudW0gfSBmcm9tICcuLi8uLi9kYi9FbnVtcy90YW5rLXR5cGUuZW51bSc7XG5pbXBvcnQgeyBUeXBlIH0gZnJvbSAnY2xhc3MtdHJhbnNmb3JtZXInO1xuaW1wb3J0IHsgVHJhbnNhY3Rpb25Db2xsZWN0aW9uIH0gZnJvbSAnLi4vLi4vY29sbGVjdGlvbnMnO1xuaW1wb3J0IHsgVmVoaWNsZUNsYWltRGV0YWlscyB9IGZyb20gJy4vdmVoaWNsZS1jbGFpbS1kZXRhaWxzJztcbmltcG9ydCB7IFNvbGVCdXNpbmVzcyB9IGZyb20gJy4uL3NvbGUnO1xuaW1wb3J0IHsgRmluYW5jaWFsWWVhciB9IGZyb20gJy4uL2ZpbmFuY2lhbC15ZWFyJztcbmltcG9ydCByb3VuZCBmcm9tICdsb2Rhc2gvcm91bmQnO1xuXG5leHBvcnQgY2xhc3MgVmVoaWNsZUNsYWltIGV4dGVuZHMgVmVoaWNsZUNsYWltQmFzZSB7XG4gIC8qKlxuICAgKiBsaW1pdCBmb3Iga21zIGNsYWltIG1ldGhvZFxuICAgKi9cbiAgc3RhdGljIHRvdGFsS21zTGltaXQgPSA1MDAwO1xuXG4gIC8qKlxuICAgKiBsaW1pdCBmb3Igd29yayB1c2FnZSBjbGFpbSBtZXRob2RcbiAgICovXG4gIHN0YXRpYyB0b3RhbFdvcmtVc2FnZVBlcmNlbnQgPSAxMDA7XG5cbiAgQFR5cGUoKCkgPT4gVmVoaWNsZUNsYWltRGV0YWlscylcbiAgZGV0YWlsczogVmVoaWNsZUNsYWltRGV0YWlscztcblxuICBAVHlwZSgoKSA9PiBTb2xlQnVzaW5lc3MpXG4gIGJ1c2luZXNzOiBTb2xlQnVzaW5lc3M7XG5cbiAga2lsb21ldGVycyA9IDA7XG4gIHdvcmtVc2FnZSA9IDA7XG5cbiAgaXNXb3JrVGFuaygpOiBib29sZWFuIHtcbiAgICByZXR1cm4gIXRoaXMuYnVzaW5lc3M7XG4gIH1cblxuICBpc1NvbGVUYW5rKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAhIXRoaXMuYnVzaW5lc3M7XG4gIH1cblxuICBnZXQgdGFua1R5cGUoKTogVGFua1R5cGVFbnVtIHtcbiAgICByZXR1cm4gdGhpcy5pc1NvbGVUYW5rKCkgPyBUYW5rVHlwZUVudW0uU09MRSA6IFRhbmtUeXBlRW51bS5XT1JLO1xuICB9XG5cbiAgLyoqXG4gICAqIENsYWltIGFtb3VudCBmb3IgS01zIG1ldGhvZC4gRXhpc3RzIG9ubHkgZm9yIEtNcyBtZXRob2QuXG4gICAqL1xuICBnZXRLTVNDbGFpbUFtb3VudCh2ZWhpY2xlQ2xhaW1SYXRlOiBudW1iZXIpOiBudW1iZXIge1xuICAgIHJldHVybiByb3VuZCh0aGlzLmtpbG9tZXRlcnMgKiB2ZWhpY2xlQ2xhaW1SYXRlLCAyKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgbG9nYm9vayBjbGFpbSBhbW91bnQuIEV4aXN0cyBvbmx5IGZvciBsb2dib29rIG1ldGhvZC5cbiAgICogQ2xhaW1BbW91bnQgPSBXb3JrVXNhZ2UgKiB0cmFuc2FjdGlvbi9kZXByZWNpYXRpb24gYW1vdW50XG4gICAqL1xuICBnZXRMb2dib29rQ2xhaW1BbW91bnQodHJhbnNhY3Rpb25zOiBUcmFuc2FjdGlvbkNvbGxlY3Rpb24pOiBudW1iZXIge1xuXG4gICAgY29uc3QgdHJhbnNhY3Rpb25zQW1vdW50OiBudW1iZXIgPSB0cmFuc2FjdGlvbnNcbiAgICAgIC5nZXRCeVZlaGljbGVDbGFpbSh0aGlzKVxuICAgICAgLmdldExvZ2Jvb2tUcmFuc2FjdGlvbnMoKVxuICAgICAgLnN1bUJ5KCdhbW91bnQnKTtcblxuICAgIC8vIE1hdGguYWJzIGJlY2F1c2UgYW1vdW50IHdpbGwgYmUgbmVnYXRpdmUgKGJlY2F1c2Ugd2Ugc3VtIGV4cGVuc2VzKSwgYnV0IHdlIGRvbid0IHdhbnQgbmVnYXRpdmUgcGVyY2VudCB2YWx1ZVxuICAgIHJldHVybiBNYXRoLmFicyh0cmFuc2FjdGlvbnNBbW91bnQpICogdGhpcy53b3JrVXNhZ2UgLyAxMDA7XG4gIH1cblxuICBnZXRBdmVyYWdlV2Vla2x5S01TKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMua2lsb21ldGVycyAvIEZpbmFuY2lhbFllYXIud2Vla3NJblllYXI7XG4gIH1cbn1cbiJdfQ==
@@ -123,6 +123,12 @@ export class DepreciationService extends RestService {
123
123
  this.resetCache();
124
124
  });
125
125
  }
126
+ listenTransactions() {
127
+ // @TODO reset cache only when required (transaction has depreciation)
128
+ this.eventDispatcherService.on(AppEventTypeEnum.TRANSACTION_DELETED).subscribe(() => {
129
+ this.resetCache();
130
+ });
131
+ }
126
132
  }
127
133
  DepreciationService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.5", ngImport: i0, type: DepreciationService, deps: [{ token: i1.HttpClient }, { token: i2.EventDispatcherService }, { token: 'environment' }, { token: i3.DepreciationReceiptService }], target: i0.ɵɵFactoryTarget.Injectable });
128
134
  DepreciationService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.1.5", ngImport: i0, type: DepreciationService, providedIn: 'root' });
@@ -135,4 +141,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.5", ngImpor
135
141
  type: Inject,
136
142
  args: ['environment']
137
143
  }] }, { type: i3.DepreciationReceiptService }]; } });
138
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVwcmVjaWF0aW9uLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvc2VydmljZXMvaHR0cC9kZXByZWNpYXRpb24vZGVwcmVjaWF0aW9uLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHbkQsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3JDLE9BQU8sRUFBYyxXQUFXLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFDbEQsT0FBTyxFQUNMLFFBQVEsRUFBRSxnQkFBZ0IsRUFDMUIsV0FBVyxFQUNYLFlBQVksRUFDWixhQUFhLEVBQ2IsSUFBSSxFQUNMLE1BQU0saUJBQWlCLENBQUM7QUFDekIsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7Ozs7O0FBUTlELE1BQU0sT0FBTyxtQkFBb0IsU0FBUSxXQUFtRTtJQU0xRyxZQUNZLElBQWdCLEVBQ2hCLHNCQUE4QyxFQUN2QixXQUFnQixFQUN6QywwQkFBc0Q7UUFFOUQsS0FBSyxDQUFDLElBQUksRUFBRSxzQkFBc0IsRUFBRSxXQUFXLENBQUMsQ0FBQztRQUx2QyxTQUFJLEdBQUosSUFBSSxDQUFZO1FBQ2hCLDJCQUFzQixHQUF0QixzQkFBc0IsQ0FBd0I7UUFDdkIsZ0JBQVcsR0FBWCxXQUFXLENBQUs7UUFDekMsK0JBQTBCLEdBQTFCLDBCQUEwQixDQUE0QjtRQVRoRSxlQUFVLEdBQXdCLFlBQVksQ0FBQztRQUMvQyxvQkFBZSxHQUFrQyxzQkFBc0IsQ0FBQztRQUN4RSxnQkFBVyxHQUFHLGVBQWUsQ0FBQztRQUM5QixvQkFBZSxHQUFpQixDQUFDLE1BQU0sRUFBRSxVQUFVLEVBQUUsYUFBYSxDQUFDLENBQUM7SUFTcEUsQ0FBQztJQUVELFNBQVMsQ0FB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LENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVEOztPQUVHO0lBQ0sseUJBQXlCO1FBQy9CLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxFQUFFLENBQUM7WUFDN0IsZ0JBQWdCLENBQUMscUJBQXFCO1lBQ3RDLGdCQUFnQixDQUFDLHFCQUFxQjtZQUN0QyxnQkFBZ0IsQ0FBQyw2QkFBNkI7U0FDL0MsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUU7WUFDaEIsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO1FBQ3BCLENBQUMsQ0FBQyxDQUFBO0lBQ0osQ0FBQztJQUVEOztPQUVHO0lBQ0ssbUNBQW1DO1FBQ3pDLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxFQUFFLENBQUMsZ0JBQWdCLENBQUMsZ0NBQWdDLENBQUMsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFO1lBQy9GLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztRQUNwQixDQUFDLENBQUMsQ0FBQTtJQUNKLENBQUM7SUFFRDs7T0FFRztJQUNLLDRDQUE0QztRQUNsRCxJQUFJLENBQUMsc0JBQXNCLENBQUMsRUFBRSxDQUFDLGdCQUFnQixDQUFDLHlDQUF5QyxDQUFDLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRTtZQUN4RyxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7UUFDcEIsQ0FBQyxDQUFDLENBQUE7SUFDSixDQUFDOztnSEEzSVUsbUJBQW1CLGtGQVNwQixhQUFhO29IQVRaLG1CQUFtQixjQUZsQixNQUFNOzJGQUVQLG1CQUFtQjtrQkFIL0IsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkI7OzBCQVVJLE1BQU07MkJBQUMsYUFBYSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgRGVwcmVjaWF0aW9uIGFzIERlcHJlY2lhdGlvbkJhc2UgfSBmcm9tICcuLi8uLi8uLi9kYi9Nb2RlbHMnO1xuaW1wb3J0IHsgbWFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgUmVzdE1ldGhvZCwgUmVzdFNlcnZpY2UgfSBmcm9tICcuLi9yZXN0JztcbmltcG9ydCB7XG4gIEFwcEV2ZW50LCBBcHBFdmVudFR5cGVFbnVtLFxuICBCYW5rQWNjb3VudCxcbiAgRGVwcmVjaWF0aW9uLCBEZXByZWNpYXRpb25SZWNlaXB0LFxuICBGaW5hbmNpYWxZZWFyLFxuICBMb2FuXG59IGZyb20gJy4uLy4uLy4uL21vZGVscyc7XG5pbXBvcnQgeyBEZXByZWNpYXRpb25Db2xsZWN0aW9uIH0gZnJvbSAnLi4vLi4vLi4vY29sbGVjdGlvbnMnO1xuaW1wb3J0IHsgSHR0cENsaWVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IEV2ZW50RGlzcGF0Y2hlclNlcnZpY2UgfSBmcm9tICcuLi8uLi9ldmVudCc7XG5pbXBvcnQgeyBEZXByZWNpYXRpb25SZWNlaXB0U2VydmljZSB9IGZyb20gJy4vZGVwcmVjaWF0aW9uLXJlY2VpcHQnO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBEZXByZWNpYXRpb25TZXJ2aWNlIGV4dGVuZHMgUmVzdFNlcnZpY2U8RGVwcmVjaWF0aW9uQmFzZSwgRGVwcmVjaWF0aW9uLCBEZXByZWNpYXRpb25Db2xsZWN0aW9uPiB7XG4gIG1vZGVsQ2xhc3M6IHR5cGVvZiBEZXByZWNpYXRpb24gPSBEZXByZWNpYXRpb247XG4gIGNvbGxlY3Rpb25DbGFzczogdHlwZW9mIERlcHJlY2lhdGlvbkNvbGxlY3Rpb24gPSBEZXByZWNpYXRpb25Db2xsZWN0aW9uO1xuICBlbmRwb2ludFVyaSA9ICdkZXByZWNpYXRpb25zJztcbiAgZGlzYWJsZWRNZXRob2RzOiBSZXN0TWV0aG9kW10gPSBbJ3Bvc3QnLCAncHV0QmF0Y2gnLCAnZGVsZXRlQmF0Y2gnXTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcm90ZWN0ZWQgaHR0cDogSHR0cENsaWVudCxcbiAgICBwcm90ZWN0ZWQgZXZlbnREaXNwYXRjaGVyU2VydmljZTogRXZlbnREaXNwYXRjaGVyU2VydmljZSxcbiAgICBASW5qZWN0KCdlbnZpcm9ubWVudCcpIHByb3RlY3RlZCBlbnZpcm9ubWVudDogYW55LFxuICAgIHByaXZhdGUgZGVwcmVjaWF0aW9uUmVjZWlwdFNlcnZpY2U6IERlcHJlY2lhdGlvblJlY2VpcHRTZXJ2aWNlXG4gICkge1xuICAgIHN1cGVyKGh0dHAsIGV2ZW50RGlzcGF0Y2hlclNlcnZpY2UsIGVudmlyb25tZW50KTtcbiAgfVxuXG4gIHBvc3RCYXRjaChkZXByZWNpYXRpb25zOiBEZXByZWNpYXRpb25bXSk6IE9ic2VydmFibGU8RGVwcmVjaWF0aW9uW10+IHtcbiAgICByZXR1cm4gc3VwZXIucG9zdEJhdGNoKGRlcHJlY2lhdGlvbnMpLnBpcGUoXG4gICAgICBtYXAoKG5ld0RlcHJlY2lhdGlvbnM6IERlcHJlY2lhdGlvbltdKSA9PiB7XG5cbiAgICAgICAgZGVwcmVjaWF0aW9ucy5mb3JFYWNoKChkZXByZWNpYXRpb246IERlcHJlY2lhdGlvbiwgaW5kZXg6IG51bWJlcikgPT4ge1xuICAgICAgICAgIC8vIEBUT0RPIGJhY2tlbmQ6IG5lZWQgdG8gdXBsb2FkIGZpbGUgaW4gdGhlIHNhbWUgYmFja2VuZCBlbmRwb2ludCB3aXRoIGRlcHJlY2lhdGlvbiBhZGQvdXBkYXRlXG4gICAgICAgICAgLy8gY2hlY2sgaWYgcGFzc2VkIHJlY2VpcHQgYW5kIHVwbG9hZCBmaWxlXG4gICAgICAgICAgaWYgKGRlcHJlY2lhdGlvbi5maWxlICYmIChkZXByZWNpYXRpb24uZmlsZSBpbnN0YW5jZW9mIEZpbGUpKSB7XG4gICAgICAgICAgICBkZXByZWNpYXRpb24uaWQgPSBuZXdEZXByZWNpYXRpb25zW2luZGV4XS5pZDtcbiAgICAgICAgICAgIG5ld0RlcHJlY2lhdGlvbnNbaW5kZXhdLmZpbGUgPSBkZXByZWNpYXRpb24uZmlsZTtcbiAgICAgICAgICAgIHRoaXMuZXZlbnREaXNwYXRjaGVyU2VydmljZS5kaXNwYXRjaChuZXcgQXBwRXZlbnQoQXBwRXZlbnRUeXBlRW51bS5ERVBSRUNJQVRJT05fVVBEQVRFRF9XSVRIX1JFQ0VJUFQsIG5ld0RlcHJlY2lhdGlvbnNbaW5kZXhdKSk7XG4gICAgICAgICAgfVxuICAgICAgICB9KTtcblxuICAgICAgICByZXR1cm4gZGVwcmVjaWF0aW9ucztcbiAgICAgIH0pXG4gICAgKTtcbiAgfVxuXG4gIHB1dChkZXByZWNpYXRpb246IERlcHJlY2lhdGlvbik6IE9ic2VydmFibGU8RGVwcmVjaWF0aW9uPiB7XG4gICAgcmV0dXJuIHN1cGVyLnB1dChkZXByZWNpYXRpb24pXG4gICAgICAucGlwZShcbiAgICAgICAgbWFwKCh1cGRhdGVkRGVwcmVjaWF0aW9uOiBEZXByZWNpYXRpb24pID0+IHtcbiAgICAgICAgICBpZiAoZGVwcmVjaWF0aW9uLmZpbGUgJiYgKGRlcHJlY2lhdGlvbi5maWxlIGluc3RhbmNlb2YgRmlsZSkpIHtcbiAgICAgICAgICAgIHVwZGF0ZWREZXByZWNpYXRpb24uZmlsZSA9IGRlcHJlY2lhdGlvbi5maWxlO1xuICAgICAgICAgICAgdGhpcy5ldmVudERpc3BhdGNoZXJTZXJ2aWNlLmRpc3BhdGNoKG5ldyBBcHBFdmVudChBcHBFdmVudFR5cGVFbnVtLkRFUFJFQ0lBVElPTl9VUERBVEVEX1dJVEhfUkVDRUlQVCwgdXBkYXRlZERlcHJlY2lhdGlvbikpO1xuICAgICAgICAgICAgLy8gcmVjZWlwdCBmaWxlIHdhcyByZW1vdmVkIGZyb20gZm9ybSAtIHdlIHNob3VsZCBkZWxldGUgcmVjZWlwdCBmcm9tIHRyYW5zYWN0aW9uXG4gICAgICAgICAgfSBlbHNlIGlmICghZGVwcmVjaWF0aW9uLmZpbGUgJiYgZGVwcmVjaWF0aW9uLnJlY2VpcHQpIHtcbiAgICAgICAgICAgIHRoaXMuZXZlbnREaXNwYXRjaGVyU2VydmljZS5kaXNwYXRjaChuZXcgQXBwRXZlbnQoQXBwRXZlbnRUeXBlRW51bS5ERVBSRUNJQVRJT05fVVBEQVRFRF9XSVRIX0RFTEVURURfUkVDRUlQVCwgdXBkYXRlZERlcHJlY2lhdGlvbikpO1xuICAgICAgICAgIH1cblxuXG4gICAgICAgICAgcmV0dXJuIHVwZGF0ZWREZXByZWNpYXRpb247XG4gICAgICAgIH0pXG4gICAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIExpc3RlbiB0byBEZXByZWNpYXRpb25zIGV2ZW50c1xuICAgKi9cbiAgbGlzdGVuRXZlbnRzKCk6IHZvaWQge1xuICAgIHRoaXMubGlzdGVuVG9VcGRhdGVkTG9hbigpO1xuICAgIHRoaXMubGlzdGVuUmVjZWlwdEFkZGVkKCk7XG4gICAgdGhpcy5saXN0ZW5SZWNlaXB0RGVsZXRlZCgpO1xuICAgIHRoaXMubGlzdGVuVmVoaWNsZUNsYWltQ2hhbmdlcygpO1xuICAgIHRoaXMubGlzdGVuVG9VcGRhdGVkQmFua0FjY291bnQoKTtcbiAgICB0aGlzLmxpc3RlblNvbGVEZXByZWNpYXRpb25NZXRob2RDaGFuZ2VzKCk7XG4gICAgdGhpcy5saXN0ZW5Qcm9wZXJ0eURlcHJlY2lhdGlvbkNhbGN1bGF0aW9uQ2hhbmdlcygpO1xuICB9XG5cbiAgZ2V0T3BlbkJhbGFuY2UoZGVwcmVjaWF0aW9uOiBEZXByZWNpYXRpb24pOiBPYnNlcnZhYmxlPG51bWJlcj4ge1xuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChgJHt0aGlzLmFwaVVybH0vb3BlbmluZy1iYWxhbmNlP2ZpbmFuY2lhbFllYXI9JHtuZXcgRmluYW5jaWFsWWVhcigpLnllYXJ9YCwgZGVwcmVjaWF0aW9uKVxuICAgICAgLnBpcGUoXG4gICAgICAgIG1hcCgocmVzcG9uc2U6IG51bWJlcikgPT4gcmVzcG9uc2UgfHwgMClcbiAgICAgICk7XG4gIH1cblxuICBwcml2YXRlIGxpc3RlblJlY2VpcHRBZGRlZCgpIHtcbiAgICB0aGlzLmV2ZW50RGlzcGF0Y2hlclNlcnZpY2Uub24oQXBwRXZlbnRUeXBlRW51bS5ERVBSRUNJQVRJT05fUkVDRUlQVF9DUkVBVEVEKS5zdWJzY3JpYmUoKHJlY2VpcHQ6IERlcHJlY2lhdGlvblJlY2VpcHQpID0+IHtcbiAgICAgIGNvbnN0IGRlcHJlY2lhdGlvblRvVXBkYXRlOiBEZXByZWNpYXRpb24gPSB0aGlzLmNhY2hlLmZpbmRCeSgnaWQnLCByZWNlaXB0LmRlcHJlY2lhdGlvbi5pZCk7XG5cbiAgICAgIC8vIHdlIGRvbid0IG5lZWQgdG8ga2VlcCBmaWxlIGFmdGVyIHNhdmVcbiAgICAgIGRlcHJlY2lhdGlvblRvVXBkYXRlLmZpbGUgPSBudWxsO1xuICAgICAgZGVwcmVjaWF0aW9uVG9VcGRhdGUucmVjZWlwdCA9IHJlY2VpcHQ7XG4gICAgICB0aGlzLnVwZGF0ZUNhY2hlKFtkZXByZWNpYXRpb25Ub1VwZGF0ZV0sICdwdXQnKTtcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgbGlzdGVuUmVjZWlwdERlbGV0ZWQoKSB7XG4gICAgdGhpcy5ldmVudERpc3BhdGNoZXJTZXJ2aWNlLm9uKEFwcEV2ZW50VHlwZUVudW0uREVQUkVDSUFUSU9OX1JFQ0VJUFRfREVMRVRFRCkuc3Vic2NyaWJlKChkZXByZWNpYXRpb246IERlcHJlY2lhdGlvbikgPT4ge1xuICAgICAgY29uc3QgZGVwcmVjaWF0aW9uVG9VcGRhdGU6IERlcHJlY2lhdGlvbiA9IHRoaXMuY2FjaGUuZmluZEJ5KCdpZCcsIGRlcHJlY2lhdGlvbi5pZCk7XG5cbiAgICAgIGRlcHJlY2lhdGlvblRvVXBkYXRlLnJlY2VpcHQgPSBudWxsO1xuICAgICAgdGhpcy51cGRhdGVDYWNoZShbZGVwcmVjaWF0aW9uVG9VcGRhdGVdLCAncHV0Jyk7XG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogTGlzdGVuIHRvIEV2ZW50RGlzcGF0Y2hlclNlcnZpY2UgZXZlbnQgcmVsYXRlZCB0byB1cGRhdGVkIGJhbmsgbG9hblxuICAgKi9cbiAgcHJpdmF0ZSBsaXN0ZW5Ub1VwZGF0ZWRMb2FuKCk6IHZvaWQge1xuICAgIHRoaXMubGlzdGVuQ1NFKExvYW4sIFsncHV0J10sIHRoaXMucmVzZXRDYWNoZSk7XG4gIH1cblxuICAvKipcbiAgICogTGlzdGVuIHRvIEV2ZW50RGlzcGF0Y2hlclNlcnZpY2UgZXZlbnQgcmVsYXRlZCB0byB1cGRhdGVkIGJhbmsgYWNjb3VudFxuICAgKi9cbiAgcHJpdmF0ZSBsaXN0ZW5Ub1VwZGF0ZWRCYW5rQWNjb3VudCgpOiB2b2lkIHtcbiAgICB0aGlzLmxpc3RlbkNTRShCYW5rQWNjb3VudCwgWydwdXQnXSwgKGJhbmtBY2NvdW50czogQmFua0FjY291bnRbXSkgPT4ge1xuICAgICAgaWYgKGJhbmtBY2NvdW50cy5maW5kKGJhID0+IGJhLmlzUHJvcGVydHlUYW5rKCkpKSB7XG4gICAgICAgIHRoaXMucmVzZXRDYWNoZSgpO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIExpc3RlbiB0byBFdmVudERpc3BhdGNoZXJTZXJ2aWNlIGV2ZW50IHJlbGF0ZWQgdG8gdXBkYXRlZCB2ZWhpY2xlIGNsYWltXG4gICAqL1xuICBwcml2YXRlIGxpc3RlblZlaGljbGVDbGFpbUNoYW5nZXMoKTogdm9pZCB7XG4gICAgdGhpcy5ldmVudERpc3BhdGNoZXJTZXJ2aWNlLm9uKFtcbiAgICAgIEFwcEV2ZW50VHlwZUVudW0uVkVISUNMRV9DTEFJTV9DUkVBVEVELFxuICAgICAgQXBwRXZlbnRUeXBlRW51bS5WRUhJQ0xFX0NMQUlNX1VQREFURUQsXG4gICAgICBBcHBFdmVudFR5cGVFbnVtLlZFSElDTEVfQ0xBSU1fREVUQUlMU19VUERBVEVEXG4gICAgXSkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgIHRoaXMucmVzZXRDYWNoZSgpO1xuICAgIH0pXG4gIH1cblxuICAvKipcbiAgICogQFRPRE8gQWxleDogY3JlYXRlIGNvbW1vbiBtZXRob2QgcmVzZXRDYWNoZU9uKGV2ZW50czogQXBwRXZlbnRUeXBlW10pXG4gICAqL1xuICBwcml2YXRlIGxpc3RlblNvbGVEZXByZWNpYXRpb25NZXRob2RDaGFuZ2VzKCk6IHZvaWQge1xuICAgIHRoaXMuZXZlbnREaXNwYXRjaGVyU2VydmljZS5vbihBcHBFdmVudFR5cGVFbnVtLlNPTEVfREVQUkVDSUFUSU9OX01FVEhPRF9VUERBVEVEKS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgdGhpcy5yZXNldENhY2hlKCk7XG4gICAgfSlcbiAgfVxuXG4gIC8qKlxuICAgKiBAVE9ETyBBbGV4OiBjcmVhdGUgY29tbW9uIG1ldGhvZCByZXNldENhY2hlT24oZXZlbnRzOiBBcHBFdmVudFR5cGVbXSlcbiAgICovXG4gIHByaXZhdGUgbGlzdGVuUHJvcGVydHlEZXByZWNpYXRpb25DYWxjdWxhdGlvbkNoYW5nZXMoKTogdm9pZCB7XG4gICAgdGhpcy5ldmVudERpc3BhdGNoZXJTZXJ2aWNlLm9uKEFwcEV2ZW50VHlwZUVudW0uUFJPUEVSVFlfREVQUkVDSUFUSU9OX0NBTENVTEFUSU9OX1VQREFURUQpLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICB0aGlzLnJlc2V0Q2FjaGUoKTtcbiAgICB9KVxuICB9XG59XG4iXX0=
144
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVwcmVjaWF0aW9uLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvc2VydmljZXMvaHR0cC9kZXByZWNpYXRpb24vZGVwcmVjaWF0aW9uLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHbkQsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3JDLE9BQU8sRUFBYyxXQUFXLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFDbEQsT0FBTyxFQUNMLFFBQVEsRUFBRSxnQkFBZ0IsRUFDMUIsV0FBVyxFQUNYLFlBQVksRUFDWixhQUFhLEVBQ2IsSUFBSSxFQUNMLE1BQU0saUJBQWlCLENBQUM7QUFDekIsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7Ozs7O0FBUTlELE1BQU0sT0FBTyxtQkFBb0IsU0FBUSxXQUFtRTtJQU0xRyxZQUNZLElBQWdCLEVBQ2hCLHNCQUE4QyxFQUN2QixXQUFnQixFQUN6QywwQkFBc0Q7UUFFOUQsS0FBSyxDQUFDLElBQUksRUFBRSxzQkFBc0IsRUFBRSxXQUFXLENBQUMsQ0FBQztRQUx2QyxTQUFJLEdBQUosSUFBSSxDQUFZO1FBQ2hCLDJCQUFzQixHQUF0QixzQkFBc0IsQ0FBd0I7UUFDdkIsZ0JBQVcsR0FBWCxXQUFXLENBQUs7UUFDekMsK0JBQTBCLEdBQTFCLDBCQUEwQixDQUE0QjtRQVRoRSxlQUFVLEdBQXdCLFlBQVksQ0FBQztRQUMvQyxvQkFBZSxHQUFrQyxzQkFBc0IsQ0FBQztRQUN4RSxnQkFBVyxHQUFHLGVBQWUsQ0FBQztRQUM5QixvQkFBZSxHQUFpQixDQUFDLE1BQU0sRUFBRSxVQUFVLEVBQUUsYUFBYSxDQUFDLENBQUM7SUFTcEUsQ0FBQztJQUVELFNBQVMsQ0FB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MkJBQUMsYUFBYSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgRGVwcmVjaWF0aW9uIGFzIERlcHJlY2lhdGlvbkJhc2UgfSBmcm9tICcuLi8uLi8uLi9kYi9Nb2RlbHMnO1xuaW1wb3J0IHsgbWFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgUmVzdE1ldGhvZCwgUmVzdFNlcnZpY2UgfSBmcm9tICcuLi9yZXN0JztcbmltcG9ydCB7XG4gIEFwcEV2ZW50LCBBcHBFdmVudFR5cGVFbnVtLFxuICBCYW5rQWNjb3VudCxcbiAgRGVwcmVjaWF0aW9uLCBEZXByZWNpYXRpb25SZWNlaXB0LFxuICBGaW5hbmNpYWxZZWFyLFxuICBMb2FuXG59IGZyb20gJy4uLy4uLy4uL21vZGVscyc7XG5pbXBvcnQgeyBEZXByZWNpYXRpb25Db2xsZWN0aW9uIH0gZnJvbSAnLi4vLi4vLi4vY29sbGVjdGlvbnMnO1xuaW1wb3J0IHsgSHR0cENsaWVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IEV2ZW50RGlzcGF0Y2hlclNlcnZpY2UgfSBmcm9tICcuLi8uLi9ldmVudCc7XG5pbXBvcnQgeyBEZXByZWNpYXRpb25SZWNlaXB0U2VydmljZSB9IGZyb20gJy4vZGVwcmVjaWF0aW9uLXJlY2VpcHQnO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBEZXByZWNpYXRpb25TZXJ2aWNlIGV4dGVuZHMgUmVzdFNlcnZpY2U8RGVwcmVjaWF0aW9uQmFzZSwgRGVwcmVjaWF0aW9uLCBEZXByZWNpYXRpb25Db2xsZWN0aW9uPiB7XG4gIG1vZGVsQ2xhc3M6IHR5cGVvZiBEZXByZWNpYXRpb24gPSBEZXByZWNpYXRpb247XG4gIGNvbGxlY3Rpb25DbGFzczogdHlwZW9mIERlcHJlY2lhdGlvbkNvbGxlY3Rpb24gPSBEZXByZWNpYXRpb25Db2xsZWN0aW9uO1xuICBlbmRwb2ludFVyaSA9ICdkZXByZWNpYXRpb25zJztcbiAgZGlzYWJsZWRNZXRob2RzOiBSZXN0TWV0aG9kW10gPSBbJ3Bvc3QnLCAncHV0QmF0Y2gnLCAnZGVsZXRlQmF0Y2gnXTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcm90ZWN0ZWQgaHR0cDogSHR0cENsaWVudCxcbiAgICBwcm90ZWN0ZWQgZXZlbnREaXNwYXRjaGVyU2VydmljZTogRXZlbnREaXNwYXRjaGVyU2VydmljZSxcbiAgICBASW5qZWN0KCdlbnZpcm9ubWVudCcpIHByb3RlY3RlZCBlbnZpcm9ubWVudDogYW55LFxuICAgIHByaXZhdGUgZGVwcmVjaWF0aW9uUmVjZWlwdFNlcnZpY2U6IERlcHJlY2lhdGlvblJlY2VpcHRTZXJ2aWNlXG4gICkge1xuICAgIHN1cGVyKGh0dHAsIGV2ZW50RGlzcGF0Y2hlclNlcnZpY2UsIGVudmlyb25tZW50KTtcbiAgfVxuXG4gIHBvc3RCYXRjaChkZXByZWNpYXRpb25zOiBEZXByZWNpYXRpb25bXSk6IE9ic2VydmFibGU8RGVwcmVjaWF0aW9uW10+IHtcbiAgICByZXR1cm4gc3VwZXIucG9zdEJhdGNoKGRlcHJlY2lhdGlvbnMpLnBpcGUoXG4gICAgICBtYXAoKG5ld0RlcHJlY2lhdGlvbnM6IERlcHJlY2lhdGlvbltdKSA9PiB7XG5cbiAgICAgICAgZGVwcmVjaWF0aW9ucy5mb3JFYWNoKChkZXByZWNpYXRpb246IERlcHJlY2lhdGlvbiwgaW5kZXg6IG51bWJlcikgPT4ge1xuICAgICAgICAgIC8vIEBUT0RPIGJhY2tlbmQ6IG5lZWQgdG8gdXBsb2FkIGZpbGUgaW4gdGhlIHNhbWUgYmFja2VuZCBlbmRwb2ludCB3aXRoIGRlcHJlY2lhdGlvbiBhZGQvdXBkYXRlXG4gICAgICAgICAgLy8gY2hlY2sgaWYgcGFzc2VkIHJlY2VpcHQgYW5kIHVwbG9hZCBmaWxlXG4gICAgICAgICAgaWYgKGRlcHJlY2lhdGlvbi5maWxlICYmIChkZXByZWNpYXRpb24uZmlsZSBpbnN0YW5jZW9mIEZpbGUpKSB7XG4gICAgICAgICAgICBkZXByZWNpYXRpb24uaWQgPSBuZXdEZXByZWNpYXRpb25zW2luZGV4XS5pZDtcbiAgICAgICAgICAgIG5ld0RlcHJlY2lhdGlvbnNbaW5kZXhdLmZpbGUgPSBkZXByZWNpYXRpb24uZmlsZTtcbiAgICAgICAgICAgIHRoaXMuZXZlbnREaXNwYXRjaGVyU2VydmljZS5kaXNwYXRjaChuZXcgQXBwRXZlbnQoQXBwRXZlbnRUeXBlRW51bS5ERVBSRUNJQVRJT05fVVBEQVRFRF9XSVRIX1JFQ0VJUFQsIG5ld0RlcHJlY2lhdGlvbnNbaW5kZXhdKSk7XG4gICAgICAgICAgfVxuICAgICAgICB9KTtcblxuICAgICAgICByZXR1cm4gZGVwcmVjaWF0aW9ucztcbiAgICAgIH0pXG4gICAgKTtcbiAgfVxuXG4gIHB1dChkZXByZWNpYXRpb246IERlcHJlY2lhdGlvbik6IE9ic2VydmFibGU8RGVwcmVjaWF0aW9uPiB7XG4gICAgcmV0dXJuIHN1cGVyLnB1dChkZXByZWNpYXRpb24pXG4gICAgICAucGlwZShcbiAgICAgICAgbWFwKCh1cGRhdGVkRGVwcmVjaWF0aW9uOiBEZXByZWNpYXRpb24pID0+IHtcbiAgICAgICAgICBpZiAoZGVwcmVjaWF0aW9uLmZpbGUgJiYgKGRlcHJlY2lhdGlvbi5maWxlIGluc3RhbmNlb2YgRmlsZSkpIHtcbiAgICAgICAgICAgIHVwZGF0ZWREZXByZWNpYXRpb24uZmlsZSA9IGRlcHJlY2lhdGlvbi5maWxlO1xuICAgICAgICAgICAgdGhpcy5ldmVudERpc3BhdGNoZXJTZXJ2aWNlLmRpc3BhdGNoKG5ldyBBcHBFdmVudChBcHBFdmVudFR5cGVFbnVtLkRFUFJFQ0lBVElPTl9VUERBVEVEX1dJVEhfUkVDRUlQVCwgdXBkYXRlZERlcHJlY2lhdGlvbikpO1xuICAgICAgICAgICAgLy8gcmVjZWlwdCBmaWxlIHdhcyByZW1vdmVkIGZyb20gZm9ybSAtIHdlIHNob3VsZCBkZWxldGUgcmVjZWlwdCBmcm9tIHRyYW5zYWN0aW9uXG4gICAgICAgICAgfSBlbHNlIGlmICghZGVwcmVjaWF0aW9uLmZpbGUgJiYgZGVwcmVjaWF0aW9uLnJlY2VpcHQpIHtcbiAgICAgICAgICAgIHRoaXMuZXZlbnREaXNwYXRjaGVyU2VydmljZS5kaXNwYXRjaChuZXcgQXBwRXZlbnQoQXBwRXZlbnRUeXBlRW51bS5ERVBSRUNJQVRJT05fVVBEQVRFRF9XSVRIX0RFTEVURURfUkVDRUlQVCwgdXBkYXRlZERlcHJlY2lhdGlvbikpO1xuICAgICAgICAgIH1cblxuXG4gICAgICAgICAgcmV0dXJuIHVwZGF0ZWREZXByZWNpYXRpb247XG4gICAgICAgIH0pXG4gICAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIExpc3RlbiB0byBEZXByZWNpYXRpb25zIGV2ZW50c1xuICAgKi9cbiAgbGlzdGVuRXZlbnRzKCk6IHZvaWQge1xuICAgIHRoaXMubGlzdGVuVG9VcGRhdGVkTG9hbigpO1xuICAgIHRoaXMubGlzdGVuUmVjZWlwdEFkZGVkKCk7XG4gICAgdGhpcy5saXN0ZW5SZWNlaXB0RGVsZXRlZCgpO1xuICAgIHRoaXMubGlzdGVuVmVoaWNsZUNsYWltQ2hhbmdlcygpO1xuICAgIHRoaXMubGlzdGVuVG9VcGRhdGVkQmFua0FjY291bnQoKTtcbiAgICB0aGlzLmxpc3RlblNvbGVEZXByZWNpYXRpb25NZXRob2RDaGFuZ2VzKCk7XG4gICAgdGhpcy5saXN0ZW5Qcm9wZXJ0eURlcHJlY2lhdGlvbkNhbGN1bGF0aW9uQ2hhbmdlcygpO1xuICB9XG5cbiAgZ2V0T3BlbkJhbGFuY2UoZGVwcmVjaWF0aW9uOiBEZXByZWNpYXRpb24pOiBPYnNlcnZhYmxlPG51bWJlcj4ge1xuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChgJHt0aGlzLmFwaVVybH0vb3BlbmluZy1iYWxhbmNlP2ZpbmFuY2lhbFllYXI9JHtuZXcgRmluYW5jaWFsWWVhcigpLnllYXJ9YCwgZGVwcmVjaWF0aW9uKVxuICAgICAgLnBpcGUoXG4gICAgICAgIG1hcCgocmVzcG9uc2U6IG51bWJlcikgPT4gcmVzcG9uc2UgfHwgMClcbiAgICAgICk7XG4gIH1cblxuICBwcml2YXRlIGxpc3RlblJlY2VpcHRBZGRlZCgpIHtcbiAgICB0aGlzLmV2ZW50RGlzcGF0Y2hlclNlcnZpY2Uub24oQXBwRXZlbnRUeXBlRW51bS5ERVBSRUNJQVRJT05fUkVDRUlQVF9DUkVBVEVEKS5zdWJzY3JpYmUoKHJlY2VpcHQ6IERlcHJlY2lhdGlvblJlY2VpcHQpID0+IHtcbiAgICAgIGNvbnN0IGRlcHJlY2lhdGlvblRvVXBkYXRlOiBEZXByZWNpYXRpb24gPSB0aGlzLmNhY2hlLmZpbmRCeSgnaWQnLCByZWNlaXB0LmRlcHJlY2lhdGlvbi5pZCk7XG5cbiAgICAgIC8vIHdlIGRvbid0IG5lZWQgdG8ga2VlcCBmaWxlIGFmdGVyIHNhdmVcbiAgICAgIGRlcHJlY2lhdGlvblRvVXBkYXRlLmZpbGUgPSBudWxsO1xuICAgICAgZGVwcmVjaWF0aW9uVG9VcGRhdGUucmVjZWlwdCA9IHJlY2VpcHQ7XG4gICAgICB0aGlzLnVwZGF0ZUNhY2hlKFtkZXByZWNpYXRpb25Ub1VwZGF0ZV0sICdwdXQnKTtcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgbGlzdGVuUmVjZWlwdERlbGV0ZWQoKSB7XG4gICAgdGhpcy5ldmVudERpc3BhdGNoZXJTZXJ2aWNlLm9uKEFwcEV2ZW50VHlwZUVudW0uREVQUkVDSUFUSU9OX1JFQ0VJUFRfREVMRVRFRCkuc3Vic2NyaWJlKChkZXByZWNpYXRpb246IERlcHJlY2lhdGlvbikgPT4ge1xuICAgICAgY29uc3QgZGVwcmVjaWF0aW9uVG9VcGRhdGU6IERlcHJlY2lhdGlvbiA9IHRoaXMuY2FjaGUuZmluZEJ5KCdpZCcsIGRlcHJlY2lhdGlvbi5pZCk7XG5cbiAgICAgIGRlcHJlY2lhdGlvblRvVXBkYXRlLnJlY2VpcHQgPSBudWxsO1xuICAgICAgdGhpcy51cGRhdGVDYWNoZShbZGVwcmVjaWF0aW9uVG9VcGRhdGVdLCAncHV0Jyk7XG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogTGlzdGVuIHRvIEV2ZW50RGlzcGF0Y2hlclNlcnZpY2UgZXZlbnQgcmVsYXRlZCB0byB1cGRhdGVkIGJhbmsgbG9hblxuICAgKi9cbiAgcHJpdmF0ZSBsaXN0ZW5Ub1VwZGF0ZWRMb2FuKCk6IHZvaWQge1xuICAgIHRoaXMubGlzdGVuQ1NFKExvYW4sIFsncHV0J10sIHRoaXMucmVzZXRDYWNoZSk7XG4gIH1cblxuICAvKipcbiAgICogTGlzdGVuIHRvIEV2ZW50RGlzcGF0Y2hlclNlcnZpY2UgZXZlbnQgcmVsYXRlZCB0byB1cGRhdGVkIGJhbmsgYWNjb3VudFxuICAgKi9cbiAgcHJpdmF0ZSBsaXN0ZW5Ub1VwZGF0ZWRCYW5rQWNjb3VudCgpOiB2b2lkIHtcbiAgICB0aGlzLmxpc3RlbkNTRShCYW5rQWNjb3VudCwgWydwdXQnXSwgKGJhbmtBY2NvdW50czogQmFua0FjY291bnRbXSkgPT4ge1xuICAgICAgaWYgKGJhbmtBY2NvdW50cy5maW5kKGJhID0+IGJhLmlzUHJvcGVydHlUYW5rKCkpKSB7XG4gICAgICAgIHRoaXMucmVzZXRDYWNoZSgpO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIExpc3RlbiB0byBFdmVudERpc3BhdGNoZXJTZXJ2aWNlIGV2ZW50IHJlbGF0ZWQgdG8gdXBkYXRlZCB2ZWhpY2xlIGNsYWltXG4gICAqL1xuICBwcml2YXRlIGxpc3RlblZlaGljbGVDbGFpbUNoYW5nZXMoKTogdm9pZCB7XG4gICAgdGhpcy5ldmVudERpc3BhdGNoZXJTZXJ2aWNlLm9uKFtcbiAgICAgIEFwcEV2ZW50VHlwZUVudW0uVkVISUNMRV9DTEFJTV9DUkVBVEVELFxuICAgICAgQXBwRXZlbnRUeXBlRW51bS5WRUhJQ0xFX0NMQUlNX1VQREFURUQsXG4gICAgICBBcHBFdmVudFR5cGVFbnVtLlZFSElDTEVfQ0xBSU1fREVUQUlMU19VUERBVEVEXG4gICAgXSkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgIHRoaXMucmVzZXRDYWNoZSgpO1xuICAgIH0pXG4gIH1cblxuICAvKipcbiAgICogQFRPRE8gQWxleDogY3JlYXRlIGNvbW1vbiBtZXRob2QgcmVzZXRDYWNoZU9uKGV2ZW50czogQXBwRXZlbnRUeXBlW10pXG4gICAqL1xuICBwcml2YXRlIGxpc3RlblNvbGVEZXByZWNpYXRpb25NZXRob2RDaGFuZ2VzKCk6IHZvaWQge1xuICAgIHRoaXMuZXZlbnREaXNwYXRjaGVyU2VydmljZS5vbihBcHBFdmVudFR5cGVFbnVtLlNPTEVfREVQUkVDSUFUSU9OX01FVEhPRF9VUERBVEVEKS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgdGhpcy5yZXNldENhY2hlKCk7XG4gICAgfSlcbiAgfVxuXG4gIC8qKlxuICAgKiBAVE9ETyBBbGV4OiBjcmVhdGUgY29tbW9uIG1ldGhvZCByZXNldENhY2hlT24oZXZlbnRzOiBBcHBFdmVudFR5cGVbXSlcbiAgICovXG4gIHByaXZhdGUgbGlzdGVuUHJvcGVydHlEZXByZWNpYXRpb25DYWxjdWxhdGlvbkNoYW5nZXMoKTogdm9pZCB7XG4gICAgdGhpcy5ldmVudERpc3BhdGNoZXJTZXJ2aWNlLm9uKEFwcEV2ZW50VHlwZUVudW0uUFJPUEVSVFlfREVQUkVDSUFUSU9OX0NBTENVTEFUSU9OX1VQREFURUQpLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICB0aGlzLnJlc2V0Q2FjaGUoKTtcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgbGlzdGVuVHJhbnNhY3Rpb25zKCk6IHZvaWQge1xuICAgIC8vIEBUT0RPIHJlc2V0IGNhY2hlIG9ubHkgd2hlbiByZXF1aXJlZCAodHJhbnNhY3Rpb24gaGFzIGRlcHJlY2lhdGlvbilcbiAgICB0aGlzLmV2ZW50RGlzcGF0Y2hlclNlcnZpY2Uub24oQXBwRXZlbnRUeXBlRW51bS5UUkFOU0FDVElPTl9ERUxFVEVEKS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgdGhpcy5yZXNldENhY2hlKCk7XG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==
@@ -53,7 +53,7 @@ export class TransactionAllocationService extends RestService {
53
53
  }
54
54
  listenEvents() {
55
55
  this.onTransactionsCreated();
56
- this.onDepreciationCreated();
56
+ this.watchDepreciations();
57
57
  this.onTransactionDeleted();
58
58
  }
59
59
  /**
@@ -72,8 +72,9 @@ export class TransactionAllocationService extends RestService {
72
72
  /**
73
73
  * Reset cache on depreciation created
74
74
  */
75
- onDepreciationCreated() {
76
- this.eventDispatcherService.on2(Depreciation.getEventName('post')).subscribe(() => {
75
+ watchDepreciations() {
76
+ // @TODO reset cache only when required (depreciation has transaction with allocations)
77
+ this.eventDispatcherService.on2(...Depreciation.getEventNames('post', 'delete')).subscribe(() => {
77
78
  this.resetCache();
78
79
  });
79
80
  }
@@ -96,4 +97,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.5", ngImpor
96
97
  providedIn: 'root'
97
98
  }]
98
99
  }] });
99
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24tYWxsb2NhdGlvbi5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHQtY29yZS9zcmMvbGliL3NlcnZpY2VzL2h0dHAvdHJhbnNhY3Rpb24vdHJhbnNhY3Rpb24tYWxsb2NhdGlvbi90cmFuc2FjdGlvbi1hbGxvY2F0aW9uLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUzQyxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx1REFBdUQsQ0FBQztBQUU5RixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSw4Q0FBOEMsQ0FBQztBQUNoRixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFFMUQsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRXJDLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUM5RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sOENBQThDLENBQUM7O0FBRTVFLG9GQUFvRjtBQUVwRjs7O0dBR0c7QUFJSCxNQUFNLE9BQU8sNEJBQTZCLFNBQVEsV0FBNkQ7SUFIL0c7O1FBSUUsNENBQTRDO1FBQzVDLFFBQUcsR0FBRywwQkFBMEIsQ0FBQztRQUNqQyxlQUFVLEdBQUcscUJBQXFCLENBQUM7S0F5RnBDO0lBdkZDOztPQUVHO0lBQ0gsR0FBRyxDQUFDLFVBQWlDO1FBQ25DLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUNyQyxHQUFHLENBQUMsQ0FBQyxjQUF1QyxFQUF5QixFQUFFLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQzNGLENBQUM7SUFDSixDQUFDO0lBRUQsUUFBUSxDQUFDLE1BQStCLEVBQUUsV0FBb0I7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LENBQUMsQ0FBQztJQUNMLENBQUM7O3lIQTNGVSw0QkFBNEI7NkhBQTVCLDRCQUE0QixjQUYzQixNQUFNOzJGQUVQLDRCQUE0QjtrQkFIeEMsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBUcmFuc2FjdGlvbkFsbG9jYXRpb24gYXMgVHJhbnNhY3Rpb25BbGxvY2F0aW9uQmFzZSB9IGZyb20gJy4uLy4uLy4uLy4uL2RiL01vZGVscy90cmFuc2FjdGlvbi90cmFuc2FjdGlvbi1hbGxvY2F0aW9uJztcbmltcG9ydCB7IFRyYW5zYWN0aW9uQWxsb2NhdGlvbiB9IGZyb20gJy4uLy4uLy4uLy4uL21vZGVscy90cmFuc2FjdGlvbi90cmFuc2FjdGlvbi1hbGxvY2F0aW9uJztcbmltcG9ydCB7IFRyYW5zYWN0aW9uIH0gZnJvbSAnLi4vLi4vLi4vLi4vbW9kZWxzL3RyYW5zYWN0aW9uL3RyYW5zYWN0aW9uJztcbmltcG9ydCB7IEFwcEV2ZW50VHlwZUVudW0gfSBmcm9tICcuLi8uLi8uLi8uLi9tb2RlbHMvZXZlbnQvYXBwLWV2ZW50LXR5cGUuZW51bSc7XG5pbXBvcnQgeyBSZXN0U2VydmljZSB9IGZyb20gJy4uLy4uL3Jlc3QvcmVzdC1vbGQuc2VydmljZSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBtYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBJRXZlbnRMaXN0ZW5lciB9IGZyb20gJy4uLy4uLy4uLy4uL2ludGVyZmFjZXMvZXZlbnQtbGlzdGVuZXIuaW50ZXJmYWNlJztcbmltcG9ydCB7IEFwcEV2ZW50IH0gZnJvbSAnLi4vLi4vLi4vLi4vbW9kZWxzL2V2ZW50L2FwcC1ldmVudCc7XG5pbXBvcnQgeyBEZXByZWNpYXRpb24gfSBmcm9tICcuLi8uLi8uLi8uLi9tb2RlbHMvZGVwcmVjaWF0aW9uL2RlcHJlY2lhdGlvbic7XG5cbi8vIEBUT0RPIERvbid0IGxvb2sgYXQgdGhlIGNvbW1lbnRlZCBjb2RlLiBXaWxsIGJlIHJlZmFjdG9yZWQvcmVtb3ZlZCBkdXJpbmcgVFQtMTUwM1xuXG4vKipcbiAqIFNlcnZpY2UgZm9yIHRyYW5zYWN0aW9uIGFsbG9jYXRpb25zIGJ1c2luZXNzIGxvZ2ljXG4gKiBAVE9ETyBhbGV4IHJlZmFjdG9yXG4gKi9cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIFRyYW5zYWN0aW9uQWxsb2NhdGlvblNlcnZpY2UgZXh0ZW5kcyBSZXN0U2VydmljZTxUcmFuc2FjdGlvbkFsbG9jYXRpb25CYXNlLCBUcmFuc2FjdGlvbkFsbG9jYXRpb24+IGltcGxlbWVudHMgSUV2ZW50TGlzdGVuZXIge1xuICAvLyBBUEkgVVJMIHBhcmFtIGZvciB0cmFuc2FjdGlvbiBhbGxvY2F0aW9uc1xuICB1cmwgPSAndHJhbnNhY3Rpb25zLWFsbG9jYXRpb25zJztcbiAgbW9kZWxDbGFzcyA9IFRyYW5zYWN0aW9uQWxsb2NhdGlvbjtcblxuICAvKipcbiAgICogQWRkIHNpbmdsZSB0cmFuc2FjdGlvbiBhbGxvY2F0aW9uXG4gICAqL1xuICBhZGQoYWxsb2NhdGlvbjogVHJhbnNhY3Rpb25BbGxvY2F0aW9uKTogT2JzZXJ2YWJsZTxUcmFuc2FjdGlvbkFsbG9jYXRpb24+IHtcbiAgICByZXR1cm4gdGhpcy5hZGRCYXRjaChbYWxsb2NhdGlvbl0pLnBpcGUoXG4gICAgICBtYXAoKG5ld0FsbG9jYXRpb25zOiBUcmFuc2FjdGlvbkFsbG9jYXRpb25bXSk6IFRyYW5zYWN0aW9uQWxsb2NhdGlvbiA9PiBuZXdBbGxvY2F0aW9uc1swXSlcbiAgICApO1xuICB9XG5cbiAgYWRkQmF0Y2gobW9kZWxzOiBUcmFuc2FjdGlvbkFsbG9jYXRpb25bXSwgcXVlcnlQYXJhbXM/OiBvYmplY3QpOiBPYnNlcnZhYmxlPFRyYW5zYWN0aW9uQWxsb2NhdGlvbltdPiB7XG4gICAgcmV0dXJuIHN1cGVyLmFkZEJhdGNoKG1vZGVscywgcXVlcnlQYXJhbXMpXG4gICAgICAucGlwZShcbiAgICAgICAgbWFwKChhbGxvY2F0aW9uczogVHJhbnNhY3Rpb25BbGxvY2F0aW9uW10pID0+IHtcbiAgICAgICAgICB0aGlzLmV2ZW50RGlzcGF0Y2hlclNlcnZpY2UuZGlzcGF0Y2gobmV3IEFwcEV2ZW50KEFwcEV2ZW50VHlwZUVudW0uVFJBTlNBQ1RJT05fQUxMT0NBVElPTl9DUkVBVEVELCBhbGxvY2F0aW9ucykpO1xuICAgICAgICAgIHJldHVybiBhbGxvY2F0aW9ucztcbiAgICAgICAgfSlcbiAgICAgIClcbiAgfVxuXG4gIGRlbGV0ZShtb2RlbDogVHJhbnNhY3Rpb25BbGxvY2F0aW9uKTogT2JzZXJ2YWJsZTx2b2lkPiB7XG4gICAgcmV0dXJuIHN1cGVyLmRlbGV0ZShtb2RlbClcbiAgICAgIC5waXBlKFxuICAgICAgICBtYXAoKCkgPT4ge1xuICAgICAgICAgIHRoaXMuZXZlbnREaXNwYXRjaGVyU2VydmljZS5kaXNwYXRjaChuZXcgQXBwRXZlbnQoQXBwRXZlbnRUeXBlRW51bS5UUkFOU0FDVElPTl9BTExPQ0FUSU9OX0RFTEVURUQsIG51bGwpKTtcbiAgICAgICAgfSlcbiAgICAgIClcbiAgfVxuXG4gIGRlbGV0ZUJhdGNoKG1vZGVsczogVHJhbnNhY3Rpb25BbGxvY2F0aW9uW10pOiBPYnNlcnZhYmxlPHZvaWQ+IHtcbiAgICByZXR1cm4gc3VwZXIuZGVsZXRlQmF0Y2gobW9kZWxzKVxuICAgICAgLnBpcGUoXG4gICAgICAgIG1hcCgoKSA9PiB7XG4gICAgICAgICAgdGhpcy5ldmVudERpc3BhdGNoZXJTZXJ2aWNlLmRpc3BhdGNoKG5ldyBBcHBFdmVudChBcHBFdmVudFR5cGVFbnVtLlRSQU5TQUNUSU9OX0FMTE9DQVRJT05fREVMRVRFRCwgbnVsbCkpO1xuICAgICAgICB9KVxuICAgICAgKVxuICB9XG5cbiAgLyoqXG4gICAqIGdldCBsaXN0IG9mIHRyYW5zYWN0aW9ucyBhbGxvY2F0aW9ucyByZWxhdGVkIHdpdGggcGFzc2VkIGJhbmsgdHJhbnNhY3Rpb25zIGxpc3RcbiAgICovXG4gIGdldEJ5VHJhbnNhY3Rpb25zKHRyYW5zYWN0aW9uczogVHJhbnNhY3Rpb25bXSk6IE9ic2VydmFibGU8VHJhbnNhY3Rpb25BbGxvY2F0aW9uW10+IHtcbiAgICBjb25zdCBpZHM6IG51bWJlcltdID0gdHJhbnNhY3Rpb25zLm1hcCgodHJhbnNhY3Rpb246IFRyYW5zYWN0aW9uKSA9PiB0cmFuc2FjdGlvbi5pZCk7XG4gICAgcmV0dXJuIHRoaXMuZ2V0KClcbiAgICAgIC5waXBlKFxuICAgICAgICBtYXAoKHRyYW5zYWN0aW9uQWxsb2NhdGlvbnM6IFRyYW5zYWN0aW9uQWxsb2NhdGlvbltdKSA9PiB0cmFuc2FjdGlvbkFsbG9jYXRpb25zLmZpbHRlcigoYWxsb2NhdGlvbjogVHJhbnNhY3Rpb25BbGxvY2F0aW9uKSA9PiBpZHMuaW5jbHVkZXMoYWxsb2NhdGlvbi50cmFuc2FjdGlvbi5pZCkpKVxuICAgICAgKTtcbiAgfVxuXG4gIGxpc3RlbkV2ZW50cygpOiB2b2lkIHtcbiAgICB0aGlzLm9uVHJhbnNhY3Rpb25zQ3JlYXRlZCgpO1xuICAgIHRoaXMub25EZXByZWNpYXRpb25DcmVhdGVkKCk7XG4gICAgdGhpcy5vblRyYW5zYWN0aW9uRGVsZXRlZCgpO1xuICB9XG5cbiAgLyoqXG4gICAqIFJlc2V0IGNhY2hlIG9uIHRyYW5zYWN0aW9ucyBjcmVhdGVkXG4gICAqL1xuICBwcml2YXRlIG9uVHJhbnNhY3Rpb25zQ3JlYXRlZCgpOiB2b2lkIHtcbiAgICB0aGlzLmV2ZW50RGlzcGF0Y2hlclNlcnZpY2Uub24oQXBwRXZlbnRUeXBlRW51bS5UUkFOU0FDVElPTlNfQ1JFQVRFRCkuc3Vic2NyaWJlKCh0cmFuc2FjdGlvbnM6IFRyYW5zYWN0aW9uW10pOiB2b2lkID0+IHtcbiAgICAgIC8vIEBUT0RPIEFsZXggaGFjazogcmVzZWFyY2ggYW5kIHJlZmFjdG9yIGNhY2hlIHVwZGF0ZSBsb2dpYywgZG9udCByZXNldCBjYWNoZSBlYWNoIHRpbWUgdHJhbnNhY3Rpb25zIGNoYW5nZWRcbiAgICAgIGlmICh0cmFuc2FjdGlvbnNbMF0uaXNUcmFuc2Zlcikge1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG4gICAgICAvLyBVcGRhdGUgYWxsb2NhdGlvbnMgY2FjaGUgdG8gc3luY2hyb25pemUgZGF0YSBhbmQgZmlyZSBzdWJzY3JpcHRpb25zXG4gICAgICB0aGlzLnJlc2V0Q2FjaGUoKTtcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXNldCBjYWNoZSBvbiBkZXByZWNpYXRpb24gY3JlYXRlZFxuICAgKi9cbiAgcHJpdmF0ZSBvbkRlcHJlY2lhdGlvbkNyZWF0ZWQoKTogdm9pZCB7XG4gICAgdGhpcy5ldmVudERpc3BhdGNoZXJTZXJ2aWNlLm9uMihEZXByZWNpYXRpb24uZ2V0RXZlbnROYW1lKCdwb3N0JykpLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICB0aGlzLnJlc2V0Q2FjaGUoKTtcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXNldCBjYWNoZSBvbiB0cmFuc2FjdGlvbiBkZWxldGVkXG4gICAqL1xuICBwcml2YXRlIG9uVHJhbnNhY3Rpb25EZWxldGVkKCk6IHZvaWQge1xuICAgIHRoaXMuZXZlbnREaXNwYXRjaGVyU2VydmljZS5vbihBcHBFdmVudFR5cGVFbnVtLlRSQU5TQUNUSU9OX0RFTEVURUQpLnN1YnNjcmliZSgoKTogdm9pZCA9PiB7XG4gICAgICAvLyBAVE9ETyBBbGV4IGhhY2s6IHJlc2VhcmNoIGFuZCByZWZhY3RvciBjYWNoZSB1cGRhdGUgbG9naWMsIGRvbnQgcmVzZXQgY2FjaGUgZWFjaCB0aW1lIHRyYW5zYWN0aW9ucyBjaGFuZ2VkXG4gICAgICAvLyBVcGRhdGUgYWxsb2NhdGlvbnMgY2FjaGUgdG8gc3luY2hyb25pemUgZGF0YSBhbmQgZmlyZSBzdWJzY3JpcHRpb25zXG4gICAgICB0aGlzLnJlc2V0Q2FjaGUoKTtcbiAgICB9KTtcbiAgfVxufVxuIl19
100
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24tYWxsb2NhdGlvbi5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHQtY29yZS9zcmMvbGliL3NlcnZpY2VzL2h0dHAvdHJhbnNhY3Rpb24vdHJhbnNhY3Rpb24tYWxsb2NhdGlvbi90cmFuc2FjdGlvbi1hbGxvY2F0aW9uLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUzQyxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx1REFBdUQsQ0FBQztBQUU5RixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSw4Q0FBOEMsQ0FBQztBQUNoRixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFFMUQsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRXJDLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUM5RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sOENBQThDLENBQUM7O0FBRTVFLG9GQUFvRjtBQUVwRjs7O0dBR0c7QUFJSCxNQUFNLE9BQU8sNEJBQTZCLFNBQVEsV0FBNkQ7SUFIL0c7O1FBSUUsNENBQTRDO1FBQzVDLFFBQUcsR0FBRywwQkFBMEIsQ0FBQztRQUNqQyxlQUFVLEdBQUcscUJBQXFCLENBQUM7S0EwRnBDO0lBeEZDOztPQUVHO0lBQ0gsR0FBRyxDQUFDLFVBQWlDO1FBQ25DLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUNyQyxHQUFHLENBQUMsQ0FBQyxjQUF1QyxFQUF5QixFQUFFLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQzNGLENBQUM7SUFDSixDQUFDO0lBRUQsUUFBUSxDQUFDLE1BQStCLEVBQUUsV0FBb0I7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QUMsVUFBVSxFQUFFLENBQUM7UUFDcEIsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDOzt5SEE1RlUsNEJBQTRCOzZIQUE1Qiw0QkFBNEIsY0FGM0IsTUFBTTsyRkFFUCw0QkFBNEI7a0JBSHhDLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgVHJhbnNhY3Rpb25BbGxvY2F0aW9uIGFzIFRyYW5zYWN0aW9uQWxsb2NhdGlvbkJhc2UgfSBmcm9tICcuLi8uLi8uLi8uLi9kYi9Nb2RlbHMvdHJhbnNhY3Rpb24vdHJhbnNhY3Rpb24tYWxsb2NhdGlvbic7XG5pbXBvcnQgeyBUcmFuc2FjdGlvbkFsbG9jYXRpb24gfSBmcm9tICcuLi8uLi8uLi8uLi9tb2RlbHMvdHJhbnNhY3Rpb24vdHJhbnNhY3Rpb24tYWxsb2NhdGlvbic7XG5pbXBvcnQgeyBUcmFuc2FjdGlvbiB9IGZyb20gJy4uLy4uLy4uLy4uL21vZGVscy90cmFuc2FjdGlvbi90cmFuc2FjdGlvbic7XG5pbXBvcnQgeyBBcHBFdmVudFR5cGVFbnVtIH0gZnJvbSAnLi4vLi4vLi4vLi4vbW9kZWxzL2V2ZW50L2FwcC1ldmVudC10eXBlLmVudW0nO1xuaW1wb3J0IHsgUmVzdFNlcnZpY2UgfSBmcm9tICcuLi8uLi9yZXN0L3Jlc3Qtb2xkLnNlcnZpY2UnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgbWFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgSUV2ZW50TGlzdGVuZXIgfSBmcm9tICcuLi8uLi8uLi8uLi9pbnRlcmZhY2VzL2V2ZW50LWxpc3RlbmVyLmludGVyZmFjZSc7XG5pbXBvcnQgeyBBcHBFdmVudCB9IGZyb20gJy4uLy4uLy4uLy4uL21vZGVscy9ldmVudC9hcHAtZXZlbnQnO1xuaW1wb3J0IHsgRGVwcmVjaWF0aW9uIH0gZnJvbSAnLi4vLi4vLi4vLi4vbW9kZWxzL2RlcHJlY2lhdGlvbi9kZXByZWNpYXRpb24nO1xuXG4vLyBAVE9ETyBEb24ndCBsb29rIGF0IHRoZSBjb21tZW50ZWQgY29kZS4gV2lsbCBiZSByZWZhY3RvcmVkL3JlbW92ZWQgZHVyaW5nIFRULTE1MDNcblxuLyoqXG4gKiBTZXJ2aWNlIGZvciB0cmFuc2FjdGlvbiBhbGxvY2F0aW9ucyBidXNpbmVzcyBsb2dpY1xuICogQFRPRE8gYWxleCByZWZhY3RvclxuICovXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBUcmFuc2FjdGlvbkFsbG9jYXRpb25TZXJ2aWNlIGV4dGVuZHMgUmVzdFNlcnZpY2U8VHJhbnNhY3Rpb25BbGxvY2F0aW9uQmFzZSwgVHJhbnNhY3Rpb25BbGxvY2F0aW9uPiBpbXBsZW1lbnRzIElFdmVudExpc3RlbmVyIHtcbiAgLy8gQVBJIFVSTCBwYXJhbSBmb3IgdHJhbnNhY3Rpb24gYWxsb2NhdGlvbnNcbiAgdXJsID0gJ3RyYW5zYWN0aW9ucy1hbGxvY2F0aW9ucyc7XG4gIG1vZGVsQ2xhc3MgPSBUcmFuc2FjdGlvbkFsbG9jYXRpb247XG5cbiAgLyoqXG4gICAqIEFkZCBzaW5nbGUgdHJhbnNhY3Rpb24gYWxsb2NhdGlvblxuICAgKi9cbiAgYWRkKGFsbG9jYXRpb246IFRyYW5zYWN0aW9uQWxsb2NhdGlvbik6IE9ic2VydmFibGU8VHJhbnNhY3Rpb25BbGxvY2F0aW9uPiB7XG4gICAgcmV0dXJuIHRoaXMuYWRkQmF0Y2goW2FsbG9jYXRpb25dKS5waXBlKFxuICAgICAgbWFwKChuZXdBbGxvY2F0aW9uczogVHJhbnNhY3Rpb25BbGxvY2F0aW9uW10pOiBUcmFuc2FjdGlvbkFsbG9jYXRpb24gPT4gbmV3QWxsb2NhdGlvbnNbMF0pXG4gICAgKTtcbiAgfVxuXG4gIGFkZEJhdGNoKG1vZGVsczogVHJhbnNhY3Rpb25BbGxvY2F0aW9uW10sIHF1ZXJ5UGFyYW1zPzogb2JqZWN0KTogT2JzZXJ2YWJsZTxUcmFuc2FjdGlvbkFsbG9jYXRpb25bXT4ge1xuICAgIHJldHVybiBzdXBlci5hZGRCYXRjaChtb2RlbHMsIHF1ZXJ5UGFyYW1zKVxuICAgICAgLnBpcGUoXG4gICAgICAgIG1hcCgoYWxsb2NhdGlvbnM6IFRyYW5zYWN0aW9uQWxsb2NhdGlvbltdKSA9PiB7XG4gICAgICAgICAgdGhpcy5ldmVudERpc3BhdGNoZXJTZXJ2aWNlLmRpc3BhdGNoKG5ldyBBcHBFdmVudChBcHBFdmVudFR5cGVFbnVtLlRSQU5TQUNUSU9OX0FMTE9DQVRJT05fQ1JFQVRFRCwgYWxsb2NhdGlvbnMpKTtcbiAgICAgICAgICByZXR1cm4gYWxsb2NhdGlvbnM7XG4gICAgICAgIH0pXG4gICAgICApXG4gIH1cblxuICBkZWxldGUobW9kZWw6IFRyYW5zYWN0aW9uQWxsb2NhdGlvbik6IE9ic2VydmFibGU8dm9pZD4ge1xuICAgIHJldHVybiBzdXBlci5kZWxldGUobW9kZWwpXG4gICAgICAucGlwZShcbiAgICAgICAgbWFwKCgpID0+IHtcbiAgICAgICAgICB0aGlzLmV2ZW50RGlzcGF0Y2hlclNlcnZpY2UuZGlzcGF0Y2gobmV3IEFwcEV2ZW50KEFwcEV2ZW50VHlwZUVudW0uVFJBTlNBQ1RJT05fQUxMT0NBVElPTl9ERUxFVEVELCBudWxsKSk7XG4gICAgICAgIH0pXG4gICAgICApXG4gIH1cblxuICBkZWxldGVCYXRjaChtb2RlbHM6IFRyYW5zYWN0aW9uQWxsb2NhdGlvbltdKTogT2JzZXJ2YWJsZTx2b2lkPiB7XG4gICAgcmV0dXJuIHN1cGVyLmRlbGV0ZUJhdGNoKG1vZGVscylcbiAgICAgIC5waXBlKFxuICAgICAgICBtYXAoKCkgPT4ge1xuICAgICAgICAgIHRoaXMuZXZlbnREaXNwYXRjaGVyU2VydmljZS5kaXNwYXRjaChuZXcgQXBwRXZlbnQoQXBwRXZlbnRUeXBlRW51bS5UUkFOU0FDVElPTl9BTExPQ0FUSU9OX0RFTEVURUQsIG51bGwpKTtcbiAgICAgICAgfSlcbiAgICAgIClcbiAgfVxuXG4gIC8qKlxuICAgKiBnZXQgbGlzdCBvZiB0cmFuc2FjdGlvbnMgYWxsb2NhdGlvbnMgcmVsYXRlZCB3aXRoIHBhc3NlZCBiYW5rIHRyYW5zYWN0aW9ucyBsaXN0XG4gICAqL1xuICBnZXRCeVRyYW5zYWN0aW9ucyh0cmFuc2FjdGlvbnM6IFRyYW5zYWN0aW9uW10pOiBPYnNlcnZhYmxlPFRyYW5zYWN0aW9uQWxsb2NhdGlvbltdPiB7XG4gICAgY29uc3QgaWRzOiBudW1iZXJbXSA9IHRyYW5zYWN0aW9ucy5tYXAoKHRyYW5zYWN0aW9uOiBUcmFuc2FjdGlvbikgPT4gdHJhbnNhY3Rpb24uaWQpO1xuICAgIHJldHVybiB0aGlzLmdldCgpXG4gICAgICAucGlwZShcbiAgICAgICAgbWFwKCh0cmFuc2FjdGlvbkFsbG9jYXRpb25zOiBUcmFuc2FjdGlvbkFsbG9jYXRpb25bXSkgPT4gdHJhbnNhY3Rpb25BbGxvY2F0aW9ucy5maWx0ZXIoKGFsbG9jYXRpb246IFRyYW5zYWN0aW9uQWxsb2NhdGlvbikgPT4gaWRzLmluY2x1ZGVzKGFsbG9jYXRpb24udHJhbnNhY3Rpb24uaWQpKSlcbiAgICAgICk7XG4gIH1cblxuICBsaXN0ZW5FdmVudHMoKTogdm9pZCB7XG4gICAgdGhpcy5vblRyYW5zYWN0aW9uc0NyZWF0ZWQoKTtcbiAgICB0aGlzLndhdGNoRGVwcmVjaWF0aW9ucygpO1xuICAgIHRoaXMub25UcmFuc2FjdGlvbkRlbGV0ZWQoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXNldCBjYWNoZSBvbiB0cmFuc2FjdGlvbnMgY3JlYXRlZFxuICAgKi9cbiAgcHJpdmF0ZSBvblRyYW5zYWN0aW9uc0NyZWF0ZWQoKTogdm9pZCB7XG4gICAgdGhpcy5ldmVudERpc3BhdGNoZXJTZXJ2aWNlLm9uKEFwcEV2ZW50VHlwZUVudW0uVFJBTlNBQ1RJT05TX0NSRUFURUQpLnN1YnNjcmliZSgodHJhbnNhY3Rpb25zOiBUcmFuc2FjdGlvbltdKTogdm9pZCA9PiB7XG4gICAgICAvLyBAVE9ETyBBbGV4IGhhY2s6IHJlc2VhcmNoIGFuZCByZWZhY3RvciBjYWNoZSB1cGRhdGUgbG9naWMsIGRvbnQgcmVzZXQgY2FjaGUgZWFjaCB0aW1lIHRyYW5zYWN0aW9ucyBjaGFuZ2VkXG4gICAgICBpZiAodHJhbnNhY3Rpb25zWzBdLmlzVHJhbnNmZXIpIHtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuICAgICAgLy8gVXBkYXRlIGFsbG9jYXRpb25zIGNhY2hlIHRvIHN5bmNocm9uaXplIGRhdGEgYW5kIGZpcmUgc3Vic2NyaXB0aW9uc1xuICAgICAgdGhpcy5yZXNldENhY2hlKCk7XG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogUmVzZXQgY2FjaGUgb24gZGVwcmVjaWF0aW9uIGNyZWF0ZWRcbiAgICovXG4gIHByaXZhdGUgd2F0Y2hEZXByZWNpYXRpb25zKCk6IHZvaWQge1xuICAgIC8vIEBUT0RPIHJlc2V0IGNhY2hlIG9ubHkgd2hlbiByZXF1aXJlZCAoZGVwcmVjaWF0aW9uIGhhcyB0cmFuc2FjdGlvbiB3aXRoIGFsbG9jYXRpb25zKVxuICAgIHRoaXMuZXZlbnREaXNwYXRjaGVyU2VydmljZS5vbjIoLi4uRGVwcmVjaWF0aW9uLmdldEV2ZW50TmFtZXMoJ3Bvc3QnLCAnZGVsZXRlJykpLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICB0aGlzLnJlc2V0Q2FjaGUoKTtcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXNldCBjYWNoZSBvbiB0cmFuc2FjdGlvbiBkZWxldGVkXG4gICAqL1xuICBwcml2YXRlIG9uVHJhbnNhY3Rpb25EZWxldGVkKCk6IHZvaWQge1xuICAgIHRoaXMuZXZlbnREaXNwYXRjaGVyU2VydmljZS5vbihBcHBFdmVudFR5cGVFbnVtLlRSQU5TQUNUSU9OX0RFTEVURUQpLnN1YnNjcmliZSgoKTogdm9pZCA9PiB7XG4gICAgICAvLyBAVE9ETyBBbGV4IGhhY2s6IHJlc2VhcmNoIGFuZCByZWZhY3RvciBjYWNoZSB1cGRhdGUgbG9naWMsIGRvbnQgcmVzZXQgY2FjaGUgZWFjaCB0aW1lIHRyYW5zYWN0aW9ucyBjaGFuZ2VkXG4gICAgICAvLyBVcGRhdGUgYWxsb2NhdGlvbnMgY2FjaGUgdG8gc3luY2hyb25pemUgZGF0YSBhbmQgZmlyZSBzdWJzY3JpcHRpb25zXG4gICAgICB0aGlzLnJlc2V0Q2FjaGUoKTtcbiAgICB9KTtcbiAgfVxufVxuIl19
@@ -3,7 +3,7 @@ import { map } from 'rxjs/operators';
3
3
  import { replace, sort } from '../../../functions/array';
4
4
  import { TransactionOperationEnum } from '../../../db/Enums/transaction-operation.enum';
5
5
  import { RestService } from '../rest/rest-old.service';
6
- import { AppEvent, AppEventTypeEnum, Transaction } from '../../../models';
6
+ import { AppEvent, AppEventTypeEnum, Depreciation, Transaction } from '../../../models';
7
7
  import _ from 'lodash';
8
8
  import { PropertyCategoryListEnum } from '../../../db/Enums/property/property-category-list.enum';
9
9
  import { TransactionCollection } from '../../../collections';
@@ -253,8 +253,8 @@ export class TransactionService extends RestService {
253
253
  * Listen to EventDispatcherService event related to Depreciation changing
254
254
  */
255
255
  listenDepreciationChange() {
256
- // @TODO we never dispatch DEPRECIATION_DELETED
257
- this.eventDispatcherService.on(AppEventTypeEnum.DEPRECIATION_DELETED).subscribe(() => {
256
+ // @TODO reset cache only when required (depreciation has transaction)
257
+ this.eventDispatcherService.on2(...Depreciation.getEventNames('post', 'delete')).subscribe(() => {
258
258
  this.fetch()
259
259
  .subscribe((transactions) => {
260
260
  this.cache = transactions;
@@ -323,4 +323,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.5", ngImpor
323
323
  type: Inject,
324
324
  args: ['environment']
325
325
  }] }, { type: i3.ToastService }, { type: i4.TransactionReceiptService }]; } });
326
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24uc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R0LWNvcmUvc3JjL2xpYi9zZXJ2aWNlcy9odHRwL3RyYW5zYWN0aW9uL3RyYW5zYWN0aW9uLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBR2pFLE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNyQyxPQUFPLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3pELE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDhDQUE4QyxDQUFDO0FBQ3hGLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUN2RCxPQUFPLEVBQUUsUUFBUSxFQUFFLGdCQUFnQixFQUFFLFdBQVcsRUFBc0IsTUFBTSxpQkFBaUIsQ0FBQztBQUM5RixPQUFPLENBQUMsTUFBTSxRQUFRLENBQUM7QUFDdkIsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sd0RBQXdELENBQUM7QUFLbEcsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFFN0QsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLG1CQUFtQixDQUFDOzs7Ozs7QUFDakQ7O0dBRUc7QUFJSCxNQUFNLE9BQU8sa0JBQW1CLFNBQVEsV0FBeUM7SUFNL0UsWUFDWSxJQUFnQixFQUNoQixzQkFBOEMsRUFDdkIsV0FBZ0IsRUFDdkMsWUFBMEIsRUFDNUIseUJBQW9EO1FBRTVELEtBQUssQ0FBQyxJQUFJLEVBQUUsc0JBQXNCLEVBQUUsV0FBVyxFQUFFLFlBQVksQ0FBQyxDQUFDO1FBTnJELFNBQUksR0FBSixJQUFJLENBQVk7UUFDaEIsMkJBQXNCLEdBQXRCLHNCQUFzQixD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RUFBRSxvQkFBb0IsQ0FBQyxDQUFDO1FBQzFDLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUNyQixDQUFDO0lBRU8scUJBQXFCO1FBQzNCLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxFQUFFLENBQUMsZ0JBQWdCLENBQUMsc0JBQXNCLENBQUMsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFO1lBQ3JGLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztRQUNwQixDQUFDLENBQUMsQ0FBQTtJQUNKLENBQUM7OytHQTNXVSxrQkFBa0Isa0ZBU25CLGFBQWE7bUhBVFosa0JBQWtCLGNBRmpCLE1BQU07MkZBRVAsa0JBQWtCO2tCQUg5QixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQjs7MEJBVUksTUFBTTsyQkFBQyxhQUFhIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRXZlbnRFbWl0dGVyLCBJbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IFRyYW5zYWN0aW9uIGFzIFRyYW5zYWN0aW9uQmFzZSB9IGZyb20gJy4uLy4uLy4uL2RiL01vZGVscy90cmFuc2FjdGlvbi90cmFuc2FjdGlvbic7XG5pbXBvcnQgeyBtYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyByZXBsYWNlLCBzb3J0IH0gZnJvbSAnLi4vLi4vLi4vZnVuY3Rpb25zL2FycmF5JztcbmltcG9ydCB7IFRyYW5zYWN0aW9uT3BlcmF0aW9uRW51bSB9IGZyb20gJy4uLy4uLy4uL2RiL0VudW1zL3RyYW5zYWN0aW9uLW9wZXJhdGlvbi5lbnVtJztcbmltcG9ydCB7IFJlc3RTZXJ2aWNlIH0gZnJvbSAnLi4vcmVzdC9yZXN0LW9sZC5zZXJ2aWNlJztcbmltcG9ydCB7IEFwcEV2ZW50LCBBcHBFdmVudFR5cGVFbnVtLCBUcmFuc2FjdGlvbiwgVHJhbnNhY3Rpb25SZWNlaXB0IH0gZnJvbSAnLi4vLi4vLi4vbW9kZWxzJztcbmltcG9ydCBfIGZyb20gJ2xvZGFzaCc7XG5pbXBvcnQgeyBQcm9wZXJ0eUNhdGVnb3J5TGlzdEVudW0gfSBmcm9tICcuLi8uLi8uLi9kYi9FbnVtcy9wcm9wZXJ0eS9wcm9wZXJ0eS1jYXRlZ29yeS1saXN0LmVudW0nO1xuaW1wb3J0IHsgVHJhbnNhY3Rpb25SZWNlaXB0U2VydmljZSB9IGZyb20gJy4vdHJhbnNhY3Rpb24tcmVjZWlwdC90cmFuc2FjdGlvbi1yZWNlaXB0LnNlcnZpY2UnO1xuaW1wb3J0IHsgSHR0cENsaWVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IEV2ZW50RGlzcGF0Y2hlclNlcnZpY2UgfSBmcm9tICcuLi8uLi9ldmVudCc7XG5pbXBvcnQgeyBUb2FzdFNlcnZpY2UgfSBmcm9tICcuLi8uLi90b2FzdCc7XG5pbXBvcnQgeyBUcmFuc2FjdGlvbkNvbGxlY3Rpb24gfSBmcm9tICcuLi8uLi8uLi9jb2xsZWN0aW9ucyc7XG5pbXBvcnQgeyBJRXZlbnRMaXN0ZW5lciB9IGZyb20gJy4uLy4uLy4uL2ludGVyZmFjZXMnO1xuaW1wb3J0IHsgY2xhc3NUb1BsYWluIH0gZnJvbSAnY2xhc3MtdHJhbnNmb3JtZXInO1xuLyoqXG4gKiBTZXJ2aWNlIGZvciB0cmFuc2FjdGlvbnMgYnVzaW5lc3MgbG9naWNcbiAqL1xuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgVHJhbnNhY3Rpb25TZXJ2aWNlIGV4dGVuZHMgUmVzdFNlcnZpY2U8VHJhbnNhY3Rpb25CYXNlLCBUcmFuc2FjdGlvbj4gaW1wbGVtZW50cyBJRXZlbnRMaXN0ZW5lciB7XG4gIC8vIHVybCBwYXJ0IGZvciBUcmFuc2FjdGlvbiBBUElcbiAgdXJsID0gJ3RyYW5zYWN0aW9ucyc7XG4gIG1vZGVsQ2xhc3MgPSBUcmFuc2FjdGlvbjtcbiAgdHJhbnNhY3Rpb25EZWxldGVkOiBFdmVudEVtaXR0ZXI8VHJhbnNhY3Rpb24+ID0gbmV3IEV2ZW50RW1pdHRlcjxUcmFuc2FjdGlvbj4oKTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcm90ZWN0ZWQgaHR0cDogSHR0cENsaWVudCxcbiAgICBwcm90ZWN0ZWQgZXZlbnREaXNwYXRjaGVyU2VydmljZTogRXZlbnREaXNwYXRjaGVyU2VydmljZSxcbiAgICBASW5qZWN0KCdlbnZpcm9ubWVudCcpIHByb3RlY3RlZCBlbnZpcm9ubWVudDogYW55LFxuICAgIHByb3RlY3RlZCB0b2FzdFNlcnZpY2U6IFRvYXN0U2VydmljZSxcbiAgICBwcml2YXRlIHRyYW5zYWN0aW9uUmVjZWlwdFNlcnZpY2U6IFRyYW5zYWN0aW9uUmVjZWlwdFNlcnZpY2VcbiAgKSB7XG4gICAgc3VwZXIoaHR0cCwgZXZlbnREaXNwYXRjaGVyU2VydmljZSwgZW52aXJvbm1lbnQsIHRvYXN0U2VydmljZSk7XG4gIH1cblxuICAvKipcbiAgICogTGlzdGVuIGV2ZW50cyBmcm9tIEV2ZW50IERpc3BhdGNoZXIgc2VydmljZXNcbiAgICovXG4gIGxpc3RlbkV2ZW50cygpOiB2b2lkIHtcbiAgICB0aGlzLmxpc3RlbkRlcHJlY2lhdGlvbkNoYW5nZSgpO1xuICAgIHRoaXMubGlzdGVuUHJvcGVydHlTaGFyZVVwZGF0ZSgpO1xuICAgIHRoaXMubGlzdGVuUmVjZWlwdEFkZGVkKCk7XG4gICAgdGhpcy5saXN0ZW5SZWNlaXB0RGVsZXRlZCgpO1xuICAgIHRoaXMubGlzdGVuVmVoaWNsZUNsYWltQ2hhbmdlcygpO1xuICAgIHRoaXMubGlzdGVuUHJvcGVydHlGb3JlY2FzdFVwZGF0ZSgpO1xuICAgIHRoaXMubGlzdGVuSW52b2ljZXNQdWJsaXNoKCk7XG4gIH1cblxuICAvKipcbiAgICogZ2V0IGxpc3Qgb2YgYWxsIHVzZXIncyBUYXhUYW5rIHRyYW5zYWN0aW9uc1xuICAgKi9cbiAgZ2V0KCk6IE9ic2VydmFibGU8VHJhbnNhY3Rpb25bXT4ge1xuICAgIGlmICghdGhpcy5jYWNoZSkge1xuICAgICAgLy8gc2V0IGNhY2hlIGFzIGRlZmF1bHQgZW1wdHkgYXJyYXkgdG8gYXZvaWQgbXVsdGlwbGUgYmFja2VuZCByZXF1ZXN0c1xuICAgICAgdGhpcy5jYWNoZSA9IFtdO1xuICAgICAgdGhpcy5mZXRjaCgpXG4gICAgICAgIC5zdWJzY3JpYmUoKHRyYW5zYWN0aW9uczogVHJhbnNhY3Rpb25bXSkgPT4ge1xuICAgICAgICAgIHRoaXMuY2FjaGUgPSB0cmFuc2FjdGlvbnM7XG4gICAgICAgICAgdGhpcy51cGRhdGVDYWNoZSgpO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy5jYWNoZVN1YmplY3QuYXNPYnNlcnZhYmxlKCkucGlwZShcbiAgICAgIC8vIGFzc2lnbiBjaGlsZCB0cmFuc2FjdGlvbnMgKGZlZXMpIHRvIHBhcmVudCB0cmFuc2FjdGlvbnNcbiAgICAgIG1hcCgodHJhbnNhY3Rpb25zOiBUcmFuc2FjdGlvbltdKTogVHJhbnNhY3Rpb25bXSA9PiB7XG4gICAgICAgIHRyYW5zYWN0aW9ucy5mb3JFYWNoKCh0cmFuc2FjdGlvbjogVHJhbnNhY3Rpb24pOiB2b2lkID0+IHtcbiAgICAgICAgICB0cmFuc2FjdGlvbi50cmFuc2FjdGlvbnMgPSB0cmFuc2FjdGlvbnNcbiAgICAgICAgICAgIC8vIGdldCBsaXN0IG9mIGNoaWxkIHRyYW5zYWN0aW9uc1xuICAgICAgICAgICAgLmZpbHRlcigodDogVHJhbnNhY3Rpb24pOiBib29sZWFuID0+IHQucGFyZW50VHJhbnNhY3Rpb24gJiYgdC5wYXJlbnRUcmFuc2FjdGlvbi5pZCA9PT0gdHJhbnNhY3Rpb24uaWQpO1xuICAgICAgICB9KTtcbiAgICAgICAgc29ydCh0cmFuc2FjdGlvbnMsICdkYXRlJywgZmFsc2UpO1xuICAgICAgICByZXR1cm4gdHJhbnNhY3Rpb25zO1xuICAgICAgfSlcbiAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZCBzaW5nbGUgbmV3IHRyYW5zYWN0aW9uXG4gICAqIEBwYXJhbSBtb2RlbCBOZXcgVHJhbnNhY3Rpb24gaW5zdGFuY2UgZm9yIHNhdmluZ1xuICAgKi9cbiAgYWRkKG1vZGVsOiBUcmFuc2FjdGlvbik6IE9ic2VydmFibGU8VHJhbnNhY3Rpb24+IHtcbiAgICAvLyB3ZSBkb24ndCBoYXZlIFBPU1QgQVBJIGVuZHBvaW50IGZvciBzaW5nbGUgdHJhbnNhY3Rpb25cbiAgICByZXR1cm4gdGhpcy5hZGRCYXRjaChbbW9kZWxdKVxuICAgICAgLnBpcGUoXG4gICAgICAgIG1hcCgobmV3VHJhbnNhY3Rpb25zOiBUcmFuc2FjdGlvbltdKTogVHJhbnNhY3Rpb24gPT4ge1xuICAgICAgICAgIC8vIEBUT0RPIGFsZXhcbiAgICAgICAgICB0aGlzLmV2ZW50RGlzcGF0Y2hlclNlcnZpY2UuZGlzcGF0Y2goXG4gICAgICAgICAgICBuZXcgQXBwRXZlbnQ8VHJhbnNhY3Rpb24+KEFwcEV2ZW50VHlwZUVudW0uVFJBTlNBQ1RJT05fQ1JFQVRFRCwgbmV3VHJhbnNhY3Rpb25zWzBdKVxuICAgICAgICAgICk7XG5cbiAgICAgICAgICByZXR1cm4gbmV3VHJhbnNhY3Rpb25zWzBdO1xuICAgICAgICB9KVxuICAgICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBnZXQgdHJhbnNhY3Rpb25zIHJlbGF0ZWQgd2l0aCBwcm9wZXJ0eVxuICAgKi9cbiAgZ2V0QnlQcm9wZXJ0eUlkKHByb3BlcnR5SWQ6IG51bWJlcik6IE9ic2VydmFibGU8VHJhbnNhY3Rpb25bXT4ge1xuICAgIHJldHVybiB0aGlzLmdldCgpXG4gICAgICAucGlwZShcbiAgICAgICAgbWFwKCh0cmFuc2FjdGlvbnM6IFRyYW5zYWN0aW9uW10pOiBUcmFuc2FjdGlvbltdID0+IHRyYW5zYWN0aW9ucy5maWx0ZXIoKHRyYW5zYWN0aW9uOiBUcmFuc2FjdGlvbik6IGJvb2xlYW4gPT4gdHJhbnNhY3Rpb24ucHJvcGVydHk/LmlkID09PSBwcm9wZXJ0eUlkKSlcbiAgICAgICk7XG4gIH1cblxuICAvKipcbiAgICogZ2V0IGxpc3Qgb2YgdHJhbnNhY3Rpb25zIHdpdGggdGFuayB0eXBlICdXb3JrJ1xuICAgKi9cbiAgZ2V0V29ya1RyYW5zYWN0aW9ucygpOiBPYnNlcnZhYmxlPFRyYW5zYWN0aW9uW10+IHtcbiAgICByZXR1cm4gdGhpcy5nZXQoKVxuICAgICAgLnBpcGUoXG4gICAgICAgIG1hcCgodHJhbnNhY3Rpb25zOiBUcmFuc2FjdGlvbltdKTogVHJhbnNhY3Rpb25bXSA9PiB0cmFuc2FjdGlvbnMuZmlsdGVyKCh0cmFuc2FjdGlvbjogVHJhbnNhY3Rpb24pOiBib29sZWFuID0+IHRyYW5zYWN0aW9uLmlzV29ya1RhbmsoKSkpXG4gICAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCBsaXN0IG9mIHByb3BlcnR5IGhvbGRpbmcgY29zdHMgKHRyYW5zYWN0aW9ucyByZWxhdGVkIHRvIHZhY2FudCBsYW5kIHByb3BlcnR5KVxuICAgKi9cbiAgZ2V0UHJvcGVydHlIb2xkaW5nQ29zdHMocHJvcGVydHlJZDogbnVtYmVyKTogT2JzZXJ2YWJsZTxUcmFuc2FjdGlvbltdPiB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0KClcbiAgICAgIC5waXBlKFxuICAgICAgICBtYXAoKHRyYW5zYWN0aW9uczogVHJhbnNhY3Rpb25bXSk6IFRyYW5zYWN0aW9uW10gPT4gbmV3IFRyYW5zYWN0aW9uQ29sbGVjdGlvbih0cmFuc2FjdGlvbnMpXG4gICAgICAgICAgLmZpbHRlckJ5KCdwcm9wZXJ0eS5pZCcsIHByb3BlcnR5SWQpXG4gICAgICAgICAgLmZpbHRlckJ5KCdwcm9wZXJ0eS5jYXRlZ29yeS5pZCcsIFByb3BlcnR5Q2F0ZWdvcnlMaXN0RW51bS5WQUNBTlRfTEFORClcbiAgICAgICAgICAudG9BcnJheSgpKVxuICAgICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBnZXQgbGlzdCBvZiB0YXhhYmxlIHRyYW5zYWN0aW9ucyB3aXRoIHRhbmsgdHlwZSAnV29yaydcbiAgICovXG4gIGdldFRheGFibGVXb3JrVHJhbnNhY3Rpb25zKCk6IE9ic2VydmFibGU8VHJhbnNhY3Rpb25bXT4ge1xuICAgIHJldHVybiB0aGlzLmdldFdvcmtUcmFuc2FjdGlvbnMoKVxuICAgICAgLnBpcGUoXG4gICAgICAgIG1hcCgodHJhbnNhY3Rpb25zOiBUcmFuc2FjdGlvbltdKTogVHJhbnNhY3Rpb25bXSA9PiB0cmFuc2FjdGlvbnMuZmlsdGVyKCh0cmFuc2FjdGlvbjogVHJhbnNhY3Rpb24pOiBib29sZWFuID0+ICEhdHJhbnNhY3Rpb24uY2hhcnRBY2NvdW50cy50YXhSZXR1cm5JdGVtKSlcbiAgICAgICk7XG4gIH1cblxuICAvKipcbiAgICogYWRkIG11bHRpcGxlIHRyYW5zYWN0aW9uc1xuICAgKiBAcGFyYW0gdHJhbnNhY3Rpb25zIExpc3Qgb2YgbmV3IFRyYW5zYWN0aW9uIGluc3RhbmNlcyBmb3Igc2F2aW5nXG4gICAqL1xuICBhZGRCYXRjaCh0cmFuc2FjdGlvbnM6IFRyYW5zYWN0aW9uW10pOiBPYnNlcnZhYmxlPFRyYW5zYWN0aW9uW10+IHtcbiAgICB0cmFuc2FjdGlvbnMgPSBfLmNsb25lRGVlcCh0cmFuc2FjdGlvbnMpO1xuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChgJHt0aGlzLmVudmlyb25tZW50LmFwaVYyfS8ke3RoaXMudXJsfWAsIGNsYXNzVG9QbGFpbih0cmFuc2FjdGlvbnMpKVxuICAgICAgLnBpcGUoXG4gICAgICAgIG1hcCgocmVzcG9uc2U6IFRyYW5zYWN0aW9uQmFzZVtdKSA9PiB7XG4gICAgICAgICAgY29uc3QgYWRkZWRUcmFuc2FjdGlvbnM6IFRyYW5zYWN0aW9uW10gPSByZXNwb25zZS5tYXAoKGl0ZW06IFRyYW5zYWN0aW9uQmFzZSkgPT4gdGhpcy5jcmVhdGVNb2RlbEluc3RhbmNlKGl0ZW0pKTtcblxuICAgICAgICAgIHRyYW5zYWN0aW9ucy5mb3JFYWNoKCh0cmFuc2FjdGlvbjogVHJhbnNhY3Rpb24sIGluZGV4OiBudW1iZXIpID0+IHtcbiAgICAgICAgICAgIC8vIEBUT0RPIGJhY2tlbmQ6IG5lZWQgdG8gdXBsb2FkIGZpbGUgaW4gdGhlIHNhbWUgYmFja2VuZCBlbmRwb2ludCB3aXRoIHRyYW5zYWN0aW9uIGFkZC91cGRhdGVcbiAgICAgICAgICAgIC8vIGNoZWNrIGlmIHBhc3NlZCByZWNlaXB0IGFuZCB1cGxvYWQgZmlsZVxuICAgICAgICAgICAgaWYgKHRyYW5zYWN0aW9uLmZpbGUpIHtcbiAgICAgICAgICAgICAgdHJhbnNhY3Rpb24uaWQgPSByZXNwb25zZVtpbmRleF0uaWQ7XG4gICAgICAgICAgICAgIGFkZGVkVHJhbnNhY3Rpb25zW2luZGV4XS5maWxlID0gdHJhbnNhY3Rpb24uZmlsZTtcbiAgICAgICAgICAgICAgdGhpcy5ldmVudERpc3BhdGNoZXJTZXJ2aWNlLmRpc3BhdGNoKG5ldyBBcHBFdmVudChBcHBFdmVudFR5cGVFbnVtLlRSQU5TQUNUSU9OX1VQREFURURfV0lUSF9SRUNFSVBULCBhZGRlZFRyYW5zYWN0aW9uc1tpbmRleF0pKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLy8gQFRPRE8gVmlrdG9yOiBpbXBsZW1lbnQgQVBJIGZvciBzYXZpbmcgb2YgbmVzdGVkIHRyYW5zYWN0aW9uc1xuICAgICAgICAgICAgLy8gYWRkIGNoaWxkIHRyYW5zYWN0aW9ucyBpZiBleGlzdFxuICAgICAgICAgICAgaWYgKHRyYW5zYWN0aW9uLnRyYW5zYWN0aW9ucy5sZW5ndGgpIHtcbiAgICAgICAgICAgICAgdHJhbnNhY3Rpb24udHJhbnNhY3Rpb25zLmZvckVhY2goKGNoaWxkVHJhbnNhY3Rpb246IFRyYW5zYWN0aW9uKSA9PiB7XG4gICAgICAgICAgICAgICAgY2hpbGRUcmFuc2FjdGlvbi5wYXJlbnRUcmFuc2FjdGlvbiA9IHRoaXMuY3JlYXRlTW9kZWxJbnN0YW5jZSh7aWQ6IGFkZGVkVHJhbnNhY3Rpb25zW2luZGV4XS5pZH0pO1xuICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgdGhpcy5hZGRCYXRjaCh0cmFuc2FjdGlvbi50cmFuc2FjdGlvbnMpLnN1YnNjcmliZSgpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAvLyBhZGQgdHJhbnNmZXIgdHJhbnNhY3Rpb24gdG8gY2FjaGVcbiAgICAgICAgICAgIGlmICh0cmFuc2FjdGlvbi5vcGVyYXRpb24gPT09IFRyYW5zYWN0aW9uT3BlcmF0aW9uRW51bS5UUkFOU0ZFUikge1xuICAgICAgICAgICAgICBhZGRlZFRyYW5zYWN0aW9ucy5wdXNoKGFkZGVkVHJhbnNhY3Rpb25zWzBdLnRyYW5zZmVyKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9KTtcblxuICAgICAgICAgIGlmICh0aGlzLmNhY2hlKSB7XG4gICAgICAgICAgICB0aGlzLmNhY2hlLnB1c2goLi4uYWRkZWRUcmFuc2FjdGlvbnMpO1xuICAgICAgICAgICAgdGhpcy51cGRhdGVDYWNoZSgpO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIHRoaXMuZXZlbnREaXNwYXRjaGVyU2VydmljZS5kaXNwYXRjaChcbiAgICAgICAgICAgIG5ldyBBcHBFdmVudDxUcmFuc2FjdGlvbltdPihBcHBFdmVudFR5cGVFbnVtLlRSQU5TQUNUSU9OU19DUkVBVEVELCBhZGRlZFRyYW5zYWN0aW9ucylcbiAgICAgICAgICApO1xuXG4gICAgICAgICAgcmV0dXJuIGFkZGVkVHJhbnNhY3Rpb25zO1xuICAgICAgICB9KVxuICAgICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiB1cGRhdGUgZXhpc3RpbmcgdHJhbnNhY3Rpb25cbiAgICogQHBhcmFtIHRyYW5zYWN0aW9uIFRyYW5zYWN0aW9uIGluc3RhbmNlIGZvciB1cGRhdGluZ1xuICAgKi9cbiAgdXBkYXRlKHRyYW5zYWN0aW9uOiBUcmFuc2FjdGlvbik6IE9ic2VydmFibGU8VHJhbnNhY3Rpb24+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwLnB1dChgJHt0aGlzLmVudmlyb25tZW50LmFwaVYyfS8ke3RoaXMudXJsfS8ke3RyYW5zYWN0aW9uLmlkfWAsIGNsYXNzVG9QbGFpbih0cmFuc2FjdGlvbikpXG4gICAgICAucGlwZShcbiAgICAgICAgbWFwKChyZXNwb25zZTogVHJhbnNhY3Rpb25CYXNlKSA9PiB7XG4gICAgICAgICAgY29uc3QgdXBkYXRlZFRyYW5zYWN0aW9uOiBUcmFuc2FjdGlvbiA9IHRoaXMuY3JlYXRlTW9kZWxJbnN0YW5jZShyZXNwb25zZSk7XG5cbiAgICAgICAgICAvLyBAVE9ETyBuZWVkIHRvIHVwbG9hZCBmaWxlIGluIHRoZSBzYW1lIGJhY2tlbmQgZW5kcG9pbnQgd2l0aCB0cmFuc2FjdGlvbiBhZGQvdXBkYXRlXG4gICAgICAgICAgLy8gY2hlY2sgaWYgcGFzc2VkIG5ldyByZWNlaXB0IGFuZCB1cGxvYWQgZmlsZVxuICAgICAgICAgIGlmICh0cmFuc2FjdGlvbi5maWxlKSB7XG4gICAgICAgICAgICB1cGRhdGVkVHJhbnNhY3Rpb24uZmlsZSA9IHRyYW5zYWN0aW9uLmZpbGU7XG4gICAgICAgICAgICB0aGlzLmV2ZW50RGlzcGF0Y2hlclNlcnZpY2UuZGlzcGF0Y2gobmV3IEFwcEV2ZW50KEFwcEV2ZW50VHlwZUVudW0uVFJBTlNBQ1RJT05fVVBEQVRFRF9XSVRIX1JFQ0VJUFQsIHVwZGF0ZWRUcmFuc2FjdGlvbikpO1xuICAgICAgICAgICAgLy8gcmVjZWlwdCBmaWxlIHdhcyByZW1vdmVkIGZyb20gZm9ybSAtIHdlIHNob3VsZCBkZWxldGUgcmVjZWlwdCBmcm9tIHRyYW5zYWN0aW9uXG4gICAgICAgICAgfSBlbHNlIGlmICghdHJhbnNhY3Rpb24uZmlsZSAmJiB0cmFuc2FjdGlvbi5yZWNlaXB0KSB7XG4gICAgICAgICAgICB0aGlzLmV2ZW50RGlzcGF0Y2hlclNlcnZpY2UuZGlzcGF0Y2gobmV3IEFwcEV2ZW50KEFwcEV2ZW50VHlwZUVudW0uVFJBTlNBQ1RJT05fVVBEQVRFRF9XSVRIX0RFTEVURURfUkVDRUlQVCwgdXBkYXRlZFRyYW5zYWN0aW9uKSk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLy8gQFRPRE8gVmlrdG9yOiBpbXBsZW1lbnQgQVBJIGZvciBzYXZpbmcgb2YgbmVzdGVkIHRyYW5zYWN0aW9uc1xuICAgICAgICAgIGlmICh0cmFuc2FjdGlvbi50cmFuc2FjdGlvbnMubGVuZ3RoKSB7XG4gICAgICAgICAgICAvLyBhZGQgcGFyZW50IHRyYW5zYWN0aW9uIHRvIGNoaWxkIHRyYW5zYWN0aW9uc1xuICAgICAgICAgICAgdHJhbnNhY3Rpb24udHJhbnNhY3Rpb25zLmZvckVhY2goKGNoaWxkVHJhbnNhY3Rpb246IFRyYW5zYWN0aW9uKSA9PiB7XG4gICAgICAgICAgICAgIGNoaWxkVHJhbnNhY3Rpb24ucGFyZW50VHJhbnNhY3Rpb24gPSB0aGlzLmNyZWF0ZU1vZGVsSW5zdGFuY2Uoe2lkOiB1cGRhdGVkVHJhbnNhY3Rpb24uaWR9KTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgLy8gc2VwYXJhdGUgY2hpbGQgdHJhbnNhY3Rpb25zIGJ5IGlkIGV4aXN0aW5nIHRvIGRlZmluZSBhZGQgb3IgdXBkYXRlIGFjdGlvbi5cbiAgICAgICAgICAgIGNvbnN0IGNoaWxkVHJhbnNhY3Rpb25zVG9VcGRhdGU6IFRyYW5zYWN0aW9uW10gPSB0cmFuc2FjdGlvbi50cmFuc2FjdGlvbnMuZmlsdGVyKCh0OiBUcmFuc2FjdGlvbikgPT4gdC5pZCk7XG4gICAgICAgICAgICBjb25zdCBjaGlsZFRyYW5zYWN0aW9uc1RvQWRkOiBUcmFuc2FjdGlvbltdID0gdHJhbnNhY3Rpb24udHJhbnNhY3Rpb25zLmZpbHRlcigodDogVHJhbnNhY3Rpb24pID0+ICF0LmlkKTtcblxuICAgICAgICAgICAgLy8gdXBkYXRlIGNoaWxkIHRyYW5zYWN0aW9uc1xuICAgICAgICAgICAgaWYgKGNoaWxkVHJhbnNhY3Rpb25zVG9VcGRhdGUubGVuZ3RoKSB7XG4gICAgICAgICAgICAgIHRoaXMudXBkYXRlQmF0Y2goY2hpbGRUcmFuc2FjdGlvbnNUb1VwZGF0ZSkuc3Vic2NyaWJlKCk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8vIGFkZCBjaGlsZCB0cmFuc2FjdGlvbnNcbiAgICAgICAgICAgIGlmIChjaGlsZFRyYW5zYWN0aW9uc1RvQWRkLmxlbmd0aCkge1xuICAgICAgICAgICAgICB0aGlzLmFkZEJhdGNoKGNoaWxkVHJhbnNhY3Rpb25zVG9BZGQpLnN1YnNjcmliZSgpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICAgIHRoaXMucmVwbGFjZUluQ2FjaGUodXBkYXRlZFRyYW5zYWN0aW9uKTtcblxuICAgICAgICAgIHJldHVybiB1cGRhdGVkVHJhbnNhY3Rpb247XG4gICAgICAgIH0pXG4gICAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIHVwZGF0ZSBtdWx0aXBsZSB0cmFuc2FjdGlvbnNcbiAgICogQHBhcmFtIHRyYW5zYWN0aW9ucyBsaXN0IG9mIHRyYW5zYWN0aW9ucyBmb3IgdXBkYXRpbmdcbiAgICovXG4gIHVwZGF0ZUJhdGNoKHRyYW5zYWN0aW9uczogVHJhbnNhY3Rpb25bXSk6IE9ic2VydmFibGU8VHJhbnNhY3Rpb25bXT4ge1xuICAgIHJldHVybiB0aGlzLmh0dHAucHV0KGAke3RoaXMuZW52aXJvbm1lbnQuYXBpVjJ9LyR7dGhpcy51cmx9YCwgY2xhc3NUb1BsYWluKHRyYW5zYWN0aW9ucykpXG4gICAgICAucGlwZShcbiAgICAgICAgbWFwKChyZXNwb25zZTogVHJhbnNhY3Rpb25CYXNlW10pID0+IHtcbiAgICAgICAgICBjb25zdCB1cGRhdGVkVHJhbnNhY3Rpb25zOiBUcmFuc2FjdGlvbltdID0gcmVzcG9uc2UubWFwKChpdGVtOiBUcmFuc2FjdGlvbkJhc2UpID0+IHRoaXMuY3JlYXRlTW9kZWxJbnN0YW5jZShpdGVtKSk7XG5cbiAgICAgICAgICB1cGRhdGVkVHJhbnNhY3Rpb25zLmZvckVhY2goKHVwZGF0ZWRUcmFuc2FjdGlvbjogVHJhbnNhY3Rpb24pID0+IHtcbiAgICAgICAgICAgIHJlcGxhY2UodGhpcy5jYWNoZSwgdXBkYXRlZFRyYW5zYWN0aW9uKTtcbiAgICAgICAgICB9KTtcblxuICAgICAgICAgIHRoaXMudXBkYXRlQ2FjaGUoKTtcbiAgICAgICAgICByZXR1cm4gdXBkYXRlZFRyYW5zYWN0aW9ucztcbiAgICAgICAgfSlcbiAgICAgICk7XG4gIH1cblxuICAvKipcbiAgICogZGVsZXRlIHRyYW5zYWN0aW9uIGFuZCByZWxhdGVkIHRyYW5zYWN0aW9uc1xuICAgKiBAcGFyYW0gbW9kZWxcbiAgICovXG4gIGRlbGV0ZShtb2RlbDogVHJhbnNhY3Rpb24pOiBPYnNlcnZhYmxlPHZvaWQ+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwLmRlbGV0ZShgJHt0aGlzLmVudmlyb25tZW50LmFwaVYyfS8ke3RoaXMudXJsfS8ke21vZGVsLmlkfWApXG4gICAgICAucGlwZShcbiAgICAgICAgbWFwKCgpOiB2b2lkID0+IHtcbiAgICAgICAgICB0aGlzLmNhY2hlID0gdGhpcy5jYWNoZS5maWx0ZXIoKHRyYW5zYWN0aW9uOiBUcmFuc2FjdGlvbik6IGJvb2xlYW4gPT4ge1xuICAgICAgICAgICAgLy8gd2hlbiBkZWxldGUgdHJhbnNmZXIgd2UgZGVsZXRlIGFjdHVhbGx5IDIgdHJhbnNhY3Rpb25zXG4gICAgICAgICAgICBpZiAobW9kZWwuaXNUcmFuc2Zlcikge1xuICAgICAgICAgICAgICBjb25zdCBpZHM6IG51bWJlcltdID0gW21vZGVsLmlkXTtcblxuICAgICAgICAgICAgICAvLyBnZXQgaWQgb2YgcmVsYXRlZCB0cmFuc2ZlciB0cmFuc2FjdGlvblxuICAgICAgICAgICAgICBpZiAobW9kZWwudHJhbnNmZXIpIHtcbiAgICAgICAgICAgICAgICAvLyBqdXN0IHRha2UgaWQgaWYgd2UgZGVsZXRlIHNvdXJjZSB0cmFuc2FjdGlvblxuICAgICAgICAgICAgICAgIGlkcy5wdXNoKG1vZGVsLnRyYW5zZmVyLmlkKTtcbiAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAvLyBmaW5kIHNvdXJjZSB0cmFuc2FjdGlvbiBpZCBpZiB3ZSBkZWxldGUgZGVzdGluYXRpb24gdHJhbnNhY3Rpb25cbiAgICAgICAgICAgICAgICBpZHMucHVzaCh0aGlzLmNhY2hlLmZpbmQoKHQ6IFRyYW5zYWN0aW9uKTogYm9vbGVhbiA9PiB0LnRyYW5zZmVyLmlkID09PSBtb2RlbC5pZCkuaWQpO1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgcmV0dXJuICFpZHMuaW5jbHVkZXModHJhbnNhY3Rpb24uaWQpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICByZXR1cm4gdHJhbnNhY3Rpb24uaWQgIT09IG1vZGVsLmlkICYmIHRyYW5zYWN0aW9uLnBhcmVudFRyYW5zYWN0aW9uPy5pZCAhPT0gbW9kZWwuaWQ7XG4gICAgICAgICAgfSk7XG5cbiAgICAgICAgICB0aGlzLmV2ZW50RGlzcGF0Y2hlclNlcnZpY2UuZGlzcGF0Y2goXG4gICAgICAgICAgICBuZXcgQXBwRXZlbnQ8VHJhbnNhY3Rpb24+KEFwcEV2ZW50VHlwZUVudW0uVFJBTlNBQ1RJT05fREVMRVRFRCwgbW9kZWwpXG4gICAgICAgICAgKTtcblxuICAgICAgICAgIHRoaXMudXBkYXRlQ2FjaGUoKTtcbiAgICAgICAgICB0aGlzLnRyYW5zYWN0aW9uRGVsZXRlZC5lbWl0KG1vZGVsKTtcbiAgICAgICAgfSlcbiAgICAgICk7XG4gIH1cblxuICAvKipcbiAgICogQFRPRE8gQWxleCB3cm9uZyBwbGFjZSBmb3IgdGhpcyBsb2dpYywgbW92ZSB0byBtb2RlbFxuICAgKiBjYWxjdWxhdGUgZ3Jvc3MgaW5jb21lIGFtb3VudCBiYXNlZCBvbiB0cmFuc2FjdGlvbiBhbW91bnQgYW5kIHRheGVzIChmZWVzKVxuICAgKiBAcGFyYW0gdHJhbnNhY3Rpb24gVHJhbnNhY3Rpb24gaW5zdGFuY2UgZm9yIGNhbGN1bGF0aW9uXG4gICAqL1xuICBjYWxjdWxhdGVHcm9zc0Ftb3VudCh0cmFuc2FjdGlvbjogVHJhbnNhY3Rpb24pOiBudW1iZXIge1xuICAgIGxldCBhbW91bnQ6IG51bWJlciA9IHRyYW5zYWN0aW9uLmFtb3VudCB8fCAwO1xuXG4gICAgLy8gZ3Jvc3MgaW5jb21lIGFtb3VudCBpbmNsdWRlcyBhbW91bnQgb2YgZmVlcyBmb3IgcHJvcGVydHkgdGFuayBhbmQgdGF4IGZvciB3b3JrIHRhbmtcbiAgICBpZiAodHJhbnNhY3Rpb24uaXNQcm9wZXJ0eVRhbmsoKSkge1xuICAgICAgYW1vdW50ICs9IHRyYW5zYWN0aW9uLnRyYW5zYWN0aW9ucy5yZWR1Y2UoKHN1bTogbnVtYmVyLCBpdGVtOiBUcmFuc2FjdGlvbikgPT4gc3VtICsgaXRlbS5hbW91bnQsIDApO1xuICAgIH0gZWxzZSB7XG4gICAgICAvLyBAVE9ETyBBbGV4OiBmaXggbG9naWMgYWZ0ZXIgVFQtNjQxIHJlYWR5XG4gICAgICBhbW91bnQgKz0gKHRyYW5zYWN0aW9uLnRheCB8fCAwKTtcbiAgICB9XG5cbiAgICByZXR1cm4gYW1vdW50O1xuICB9XG5cbiAgLyoqXG4gICAqIExpc3RlbiB0byBFdmVudERpc3BhdGNoZXJTZXJ2aWNlIGV2ZW50IHJlbGF0ZWQgdG8gRGVwcmVjaWF0aW9uIGNoYW5naW5nXG4gICAqL1xuICBwcml2YXRlIGxpc3RlbkRlcHJlY2lhdGlvbkNoYW5nZSgpOiB2b2lkIHtcbiAgICAvLyBAVE9ETyB3ZSBuZXZlciBkaXNwYXRjaCBERVBSRUNJQVRJT05fREVMRVRFRFxuICAgIHRoaXMuZXZlbnREaXNwYXRjaGVyU2VydmljZS5vbihBcHBFdmVudFR5cGVFbnVtLkRFUFJFQ0lBVElPTl9ERUxFVEVEKS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgdGhpcy5mZXRjaCgpXG4gICAgICAgIC5zdWJzY3JpYmUoKHRyYW5zYWN0aW9uczogVHJhbnNhY3Rpb25bXSkgPT4ge1xuICAgICAgICAgIHRoaXMuY2FjaGUgPSB0cmFuc2FjdGlvbnM7XG4gICAgICAgICAgdGhpcy51cGRhdGVDYWNoZSgpO1xuICAgICAgICB9KTtcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBMaXN0ZW4gdG8gRXZlbnREaXNwYXRjaGVyU2VydmljZSBldmVudCByZWxhdGVkIHRvIFByb3BlcnR5IFNoYXJlIGNoYW5naW5nXG4gICAqL1xuICBwcml2YXRlIGxpc3RlblByb3BlcnR5U2hhcmVVcGRhdGUoKTogdm9pZCB7XG4gICAgdGhpcy5ldmVudERpc3BhdGNoZXJTZXJ2aWNlLm9uKEFwcEV2ZW50VHlwZUVudW0uUFJPUEVSVFlfU0hBUkVfVVBEQVRFRCkuc3Vic2NyaWJlKCgpID0+IHRoaXMucmVzZXRDYWNoZSgpKTtcbiAgfVxuXG4gIHByaXZhdGUgbGlzdGVuUmVjZWlwdEFkZGVkKCkge1xuICAgIHRoaXMuZXZlbnREaXNwYXRjaGVyU2VydmljZS5vbihBcHBFdmVudFR5cGVFbnVtLlRSQU5TQUNUSU9OX1JFQ0VJUFRfQ1JFQVRFRCkuc3Vic2NyaWJlKCh0cmFuc2FjdGlvblJlY2VpcHQ6IFRyYW5zYWN0aW9uUmVjZWlwdCkgPT4ge1xuICAgICAgY29uc3QgdHJhbnNhY3Rpb25Ub1VwZGF0ZTogVHJhbnNhY3Rpb24gPSB0aGlzLmZpbmQodHJhbnNhY3Rpb25SZWNlaXB0LnRyYW5zYWN0aW9uLmlkKTtcblxuICAgICAgLy8gd2UgZG9uJ3QgbmVlZCB0byBrZWVwIGZpbGUgYWZ0ZXIgc2F2ZVxuICAgICAgdHJhbnNhY3Rpb25Ub1VwZGF0ZS5maWxlID0gbnVsbDtcbiAgICAgIHRyYW5zYWN0aW9uVG9VcGRhdGUucmVjZWlwdCA9IHRyYW5zYWN0aW9uUmVjZWlwdDtcbiAgICAgIHRoaXMucmVwbGFjZUluQ2FjaGUodHJhbnNhY3Rpb25Ub1VwZGF0ZSk7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIGxpc3RlblJlY2VpcHREZWxldGVkKCkge1xuICAgIHRoaXMuZXZlbnREaXNwYXRjaGVyU2VydmljZS5vbihBcHBFdmVudFR5cGVFbnVtLlRSQU5TQUNUSU9OX1JFQ0VJUFRfREVMRVRFRCkuc3Vic2NyaWJlKCh0cmFuc2FjdGlvbjogVHJhbnNhY3Rpb24pID0+IHtcbiAgICAgIGNvbnN0IHRyYW5zYWN0aW9uVG9VcGRhdGU6IFRyYW5zYWN0aW9uID0gdGhpcy5maW5kKHRyYW5zYWN0aW9uLmlkKTtcblxuICAgICAgdHJhbnNhY3Rpb25Ub1VwZGF0ZS5yZWNlaXB0ID0gbnVsbDtcbiAgICAgIHRoaXMucmVwbGFjZUluQ2FjaGUodHJhbnNhY3Rpb25Ub1VwZGF0ZSk7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIGxpc3RlblZlaGljbGVDbGFpbUNoYW5nZXMoKTogdm9pZCB7XG4gICAgdGhpcy5ldmVudERpc3BhdGNoZXJTZXJ2aWNlLm9uKFtcbiAgICAgIEFwcEV2ZW50VHlwZUVudW0uVkVISUNMRV9DTEFJTV9DUkVBVEVELFxuICAgICAgQXBwRXZlbnRUeXBlRW51bS5WRUhJQ0xFX0NMQUlNX1VQREFURUQsXG4gICAgICBBcHBFdmVudFR5cGVFbnVtLlZFSElDTEVfQ0xBSU1fREVUQUlMU19VUERBVEVEXG4gICAgXSkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgIHRoaXMucmVzZXRDYWNoZSgpO1xuICAgIH0pXG4gIH1cblxuICAvKipcbiAgICogcHJvcGVydHkgZm9yZWNhc3QgaW5jbHVkZXMgY2xhaW1QZXJjZW50IHdoaWNoIGFmZmVjdHMgcHJvcGVydHkgcmVsYXRlZCBleHBlbnNlc1xuICAgKiBAVE9ETyBBbGV4IG1vdmUgdG8gZm9yZWNhc3QgYXBpIGluc3RlYWQgb2YgcHJvcGVydHlcbiAgICovXG4gIHByaXZhdGUgbGlzdGVuUHJvcGVydHlGb3JlY2FzdFVwZGF0ZSgpOiB2b2lkIHtcbiAgICB0aGlzLmV2ZW50RGlzcGF0Y2hlclNlcnZpY2Uub24oW0FwcEV2ZW50VHlwZUVudW0uUFJPUEVSVFlfVVBEQVRFRF0pLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICB0aGlzLnJlc2V0Q2FjaGUoKTtcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgcmVwbGFjZUluQ2FjaGUodHJhbnNhY3Rpb25Ub1JlcGxhY2U6IFRyYW5zYWN0aW9uKTogdm9pZCB7XG4gICAgcmVwbGFjZSh0aGlzLmNhY2hlLCB0cmFuc2FjdGlvblRvUmVwbGFjZSk7XG4gICAgdGhpcy51cGRhdGVDYWNoZSgpO1xuICB9XG5cbiAgcHJpdmF0ZSBsaXN0ZW5JbnZvaWNlc1B1Ymxpc2goKTogdm9pZCB7XG4gICAgdGhpcy5ldmVudERpc3BhdGNoZXJTZXJ2aWNlLm9uKEFwcEV2ZW50VHlwZUVudW0uU09MRV9JTlZPSUNFX1BVQkxJU0hFRCkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgIHRoaXMucmVzZXRDYWNoZSgpO1xuICAgIH0pXG4gIH1cbn1cbiJdfQ==
326
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24uc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R0LWNvcmUvc3JjL2xpYi9zZXJ2aWNlcy9odHRwL3RyYW5zYWN0aW9uL3RyYW5zYWN0aW9uLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBR2pFLE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNyQyxPQUFPLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3pELE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDhDQUE4QyxDQUFDO0FBQ3hGLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUN2RCxPQUFPLEVBQUUsUUFBUSxFQUFFLGdCQUFnQixFQUFFLFlBQVksRUFBRSxXQUFXLEVBQXNCLE1BQU0saUJBQWlCLENBQUM7QUFDNUcsT0FBTyxDQUFDLE1BQU0sUUFBUSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLHdEQUF3RCxDQUFDO0FBS2xHLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBRTdELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQzs7Ozs7O0FBQ2pEOztHQUVHO0FBSUgsTUFBTSxPQUFPLGtCQUFtQixTQUFRLFdBQXlDO0lBTS9FLFlBQ1ksSUFBZ0IsRUFDaEIsc0JBQThDLEVBQ3ZCLFdBQWdCLEVBQ3ZDLFlBQTBCLEVBQzVCLHlCQUFvRDtRQUU1RCxLQUFLLENBQUMsSUFBSSxFQUFFLHNCQUFzQixFQUFFLFdBQVcsRUFBRSxZQUFZLENBQUMsQ0FBQztRQU5yRCxTQUFJLEdBQUosSUFBSSxDQUFZO1FBQ2hCLDJCQUFzQixHQUF0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QUFpQztRQUN0RCxPQUFPLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxvQkFBb0IsQ0FBQyxDQUFDO1FBQzFDLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUNyQixDQUFDO0lBRU8scUJBQXFCO1FBQzNCLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxFQUFFLENBQUMsZ0JBQWdCLENBQUMsc0JBQXNCLENBQUMsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFO1lBQ3JGLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztRQUNwQixDQUFDLENBQUMsQ0FBQTtJQUNKLENBQUM7OytHQTNXVSxrQkFBa0Isa0ZBU25CLGFBQWE7bUhBVFosa0JBQWtCLGNBRmpCLE1BQU07MkZBRVAsa0JBQWtCO2tCQUg5QixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQjs7MEJBVUksTUFBTTsyQkFBQyxhQUFhIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRXZlbnRFbWl0dGVyLCBJbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IFRyYW5zYWN0aW9uIGFzIFRyYW5zYWN0aW9uQmFzZSB9IGZyb20gJy4uLy4uLy4uL2RiL01vZGVscy90cmFuc2FjdGlvbi90cmFuc2FjdGlvbic7XG5pbXBvcnQgeyBtYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyByZXBsYWNlLCBzb3J0IH0gZnJvbSAnLi4vLi4vLi4vZnVuY3Rpb25zL2FycmF5JztcbmltcG9ydCB7IFRyYW5zYWN0aW9uT3BlcmF0aW9uRW51bSB9IGZyb20gJy4uLy4uLy4uL2RiL0VudW1zL3RyYW5zYWN0aW9uLW9wZXJhdGlvbi5lbnVtJztcbmltcG9ydCB7IFJlc3RTZXJ2aWNlIH0gZnJvbSAnLi4vcmVzdC9yZXN0LW9sZC5zZXJ2aWNlJztcbmltcG9ydCB7IEFwcEV2ZW50LCBBcHBFdmVudFR5cGVFbnVtLCBEZXByZWNpYXRpb24sIFRyYW5zYWN0aW9uLCBUcmFuc2FjdGlvblJlY2VpcHQgfSBmcm9tICcuLi8uLi8uLi9tb2RlbHMnO1xuaW1wb3J0IF8gZnJvbSAnbG9kYXNoJztcbmltcG9ydCB7IFByb3BlcnR5Q2F0ZWdvcnlMaXN0RW51bSB9IGZyb20gJy4uLy4uLy4uL2RiL0VudW1zL3Byb3BlcnR5L3Byb3BlcnR5LWNhdGVnb3J5LWxpc3QuZW51bSc7XG5pbXBvcnQgeyBUcmFuc2FjdGlvblJlY2VpcHRTZXJ2aWNlIH0gZnJvbSAnLi90cmFuc2FjdGlvbi1yZWNlaXB0L3RyYW5zYWN0aW9uLXJlY2VpcHQuc2VydmljZSc7XG5pbXBvcnQgeyBIdHRwQ2xpZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgRXZlbnREaXNwYXRjaGVyU2VydmljZSB9IGZyb20gJy4uLy4uL2V2ZW50JztcbmltcG9ydCB7IFRvYXN0U2VydmljZSB9IGZyb20gJy4uLy4uL3RvYXN0JztcbmltcG9ydCB7IFRyYW5zYWN0aW9uQ29sbGVjdGlvbiB9IGZyb20gJy4uLy4uLy4uL2NvbGxlY3Rpb25zJztcbmltcG9ydCB7IElFdmVudExpc3RlbmVyIH0gZnJvbSAnLi4vLi4vLi4vaW50ZXJmYWNlcyc7XG5pbXBvcnQgeyBjbGFzc1RvUGxhaW4gfSBmcm9tICdjbGFzcy10cmFuc2Zvcm1lcic7XG4vKipcbiAqIFNlcnZpY2UgZm9yIHRyYW5zYWN0aW9ucyBidXNpbmVzcyBsb2dpY1xuICovXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBUcmFuc2FjdGlvblNlcnZpY2UgZXh0ZW5kcyBSZXN0U2VydmljZTxUcmFuc2FjdGlvbkJhc2UsIFRyYW5zYWN0aW9uPiBpbXBsZW1lbnRzIElFdmVudExpc3RlbmVyIHtcbiAgLy8gdXJsIHBhcnQgZm9yIFRyYW5zYWN0aW9uIEFQSVxuICB1cmwgPSAndHJhbnNhY3Rpb25zJztcbiAgbW9kZWxDbGFzcyA9IFRyYW5zYWN0aW9uO1xuICB0cmFuc2FjdGlvbkRlbGV0ZWQ6IEV2ZW50RW1pdHRlcjxUcmFuc2FjdGlvbj4gPSBuZXcgRXZlbnRFbWl0dGVyPFRyYW5zYWN0aW9uPigpO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByb3RlY3RlZCBodHRwOiBIdHRwQ2xpZW50LFxuICAgIHByb3RlY3RlZCBldmVudERpc3BhdGNoZXJTZXJ2aWNlOiBFdmVudERpc3BhdGNoZXJTZXJ2aWNlLFxuICAgIEBJbmplY3QoJ2Vudmlyb25tZW50JykgcHJvdGVjdGVkIGVudmlyb25tZW50OiBhbnksXG4gICAgcHJvdGVjdGVkIHRvYXN0U2VydmljZTogVG9hc3RTZXJ2aWNlLFxuICAgIHByaXZhdGUgdHJhbnNhY3Rpb25SZWNlaXB0U2VydmljZTogVHJhbnNhY3Rpb25SZWNlaXB0U2VydmljZVxuICApIHtcbiAgICBzdXBlcihodHRwLCBldmVudERpc3BhdGNoZXJTZXJ2aWNlLCBlbnZpcm9ubWVudCwgdG9hc3RTZXJ2aWNlKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBMaXN0ZW4gZXZlbnRzIGZyb20gRXZlbnQgRGlzcGF0Y2hlciBzZXJ2aWNlc1xuICAgKi9cbiAgbGlzdGVuRXZlbnRzKCk6IHZvaWQge1xuICAgIHRoaXMubGlzdGVuRGVwcmVjaWF0aW9uQ2hhbmdlKCk7XG4gICAgdGhpcy5saXN0ZW5Qcm9wZXJ0eVNoYXJlVXBkYXRlKCk7XG4gICAgdGhpcy5saXN0ZW5SZWNlaXB0QWRkZWQoKTtcbiAgICB0aGlzLmxpc3RlblJlY2VpcHREZWxldGVkKCk7XG4gICAgdGhpcy5saXN0ZW5WZWhpY2xlQ2xhaW1DaGFuZ2VzKCk7XG4gICAgdGhpcy5saXN0ZW5Qcm9wZXJ0eUZvcmVjYXN0VXBkYXRlKCk7XG4gICAgdGhpcy5saXN0ZW5JbnZvaWNlc1B1Ymxpc2goKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBnZXQgbGlzdCBvZiBhbGwgdXNlcidzIFRheFRhbmsgdHJhbnNhY3Rpb25zXG4gICAqL1xuICBnZXQoKTogT2JzZXJ2YWJsZTxUcmFuc2FjdGlvbltdPiB7XG4gICAgaWYgKCF0aGlzLmNhY2hlKSB7XG4gICAgICAvLyBzZXQgY2FjaGUgYXMgZGVmYXVsdCBlbXB0eSBhcnJheSB0byBhdm9pZCBtdWx0aXBsZSBiYWNrZW5kIHJlcXVlc3RzXG4gICAgICB0aGlzLmNhY2hlID0gW107XG4gICAgICB0aGlzLmZldGNoKClcbiAgICAgICAgLnN1YnNjcmliZSgodHJhbnNhY3Rpb25zOiBUcmFuc2FjdGlvbltdKSA9PiB7XG4gICAgICAgICAgdGhpcy5jYWNoZSA9IHRyYW5zYWN0aW9ucztcbiAgICAgICAgICB0aGlzLnVwZGF0ZUNhY2hlKCk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzLmNhY2hlU3ViamVjdC5hc09ic2VydmFibGUoKS5waXBlKFxuICAgICAgLy8gYXNzaWduIGNoaWxkIHRyYW5zYWN0aW9ucyAoZmVlcykgdG8gcGFyZW50IHRyYW5zYWN0aW9uc1xuICAgICAgbWFwKCh0cmFuc2FjdGlvbnM6IFRyYW5zYWN0aW9uW10pOiBUcmFuc2FjdGlvbltdID0+IHtcbiAgICAgICAgdHJhbnNhY3Rpb25zLmZvckVhY2goKHRyYW5zYWN0aW9uOiBUcmFuc2FjdGlvbik6IHZvaWQgPT4ge1xuICAgICAgICAgIHRyYW5zYWN0aW9uLnRyYW5zYWN0aW9ucyA9IHRyYW5zYWN0aW9uc1xuICAgICAgICAgICAgLy8gZ2V0IGxpc3Qgb2YgY2hpbGQgdHJhbnNhY3Rpb25zXG4gICAgICAgICAgICAuZmlsdGVyKCh0OiBUcmFuc2FjdGlvbik6IGJvb2xlYW4gPT4gdC5wYXJlbnRUcmFuc2FjdGlvbiAmJiB0LnBhcmVudFRyYW5zYWN0aW9uLmlkID09PSB0cmFuc2FjdGlvbi5pZCk7XG4gICAgICAgIH0pO1xuICAgICAgICBzb3J0KHRyYW5zYWN0aW9ucywgJ2RhdGUnLCBmYWxzZSk7XG4gICAgICAgIHJldHVybiB0cmFuc2FjdGlvbnM7XG4gICAgICB9KVxuICAgICk7XG4gIH1cblxuICAvKipcbiAgICogQWRkIHNpbmdsZSBuZXcgdHJhbnNhY3Rpb25cbiAgICogQHBhcmFtIG1vZGVsIE5ldyBUcmFuc2FjdGlvbiBpbnN0YW5jZSBmb3Igc2F2aW5nXG4gICAqL1xuICBhZGQobW9kZWw6IFRyYW5zYWN0aW9uKTogT2JzZXJ2YWJsZTxUcmFuc2FjdGlvbj4ge1xuICAgIC8vIHdlIGRvbid0IGhhdmUgUE9TVCBBUEkgZW5kcG9pbnQgZm9yIHNpbmdsZSB0cmFuc2FjdGlvblxuICAgIHJldHVybiB0aGlzLmFkZEJhdGNoKFttb2RlbF0pXG4gICAgICAucGlwZShcbiAgICAgICAgbWFwKChuZXdUcmFuc2FjdGlvbnM6IFRyYW5zYWN0aW9uW10pOiBUcmFuc2FjdGlvbiA9PiB7XG4gICAgICAgICAgLy8gQFRPRE8gYWxleFxuICAgICAgICAgIHRoaXMuZXZlbnREaXNwYXRjaGVyU2VydmljZS5kaXNwYXRjaChcbiAgICAgICAgICAgIG5ldyBBcHBFdmVudDxUcmFuc2FjdGlvbj4oQXBwRXZlbnRUeXBlRW51bS5UUkFOU0FDVElPTl9DUkVBVEVELCBuZXdUcmFuc2FjdGlvbnNbMF0pXG4gICAgICAgICAgKTtcblxuICAgICAgICAgIHJldHVybiBuZXdUcmFuc2FjdGlvbnNbMF07XG4gICAgICAgIH0pXG4gICAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIGdldCB0cmFuc2FjdGlvbnMgcmVsYXRlZCB3aXRoIHByb3BlcnR5XG4gICAqL1xuICBnZXRCeVByb3BlcnR5SWQocHJvcGVydHlJZDogbnVtYmVyKTogT2JzZXJ2YWJsZTxUcmFuc2FjdGlvbltdPiB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0KClcbiAgICAgIC5waXBlKFxuICAgICAgICBtYXAoKHRyYW5zYWN0aW9uczogVHJhbnNhY3Rpb25bXSk6IFRyYW5zYWN0aW9uW10gPT4gdHJhbnNhY3Rpb25zLmZpbHRlcigodHJhbnNhY3Rpb246IFRyYW5zYWN0aW9uKTogYm9vbGVhbiA9PiB0cmFuc2FjdGlvbi5wcm9wZXJ0eT8uaWQgPT09IHByb3BlcnR5SWQpKVxuICAgICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBnZXQgbGlzdCBvZiB0cmFuc2FjdGlvbnMgd2l0aCB0YW5rIHR5cGUgJ1dvcmsnXG4gICAqL1xuICBnZXRXb3JrVHJhbnNhY3Rpb25zKCk6IE9ic2VydmFibGU8VHJhbnNhY3Rpb25bXT4ge1xuICAgIHJldHVybiB0aGlzLmdldCgpXG4gICAgICAucGlwZShcbiAgICAgICAgbWFwKCh0cmFuc2FjdGlvbnM6IFRyYW5zYWN0aW9uW10pOiBUcmFuc2FjdGlvbltdID0+IHRyYW5zYWN0aW9ucy5maWx0ZXIoKHRyYW5zYWN0aW9uOiBUcmFuc2FjdGlvbik6IGJvb2xlYW4gPT4gdHJhbnNhY3Rpb24uaXNXb3JrVGFuaygpKSlcbiAgICAgICk7XG4gIH1cblxuICAvKipcbiAgICogR2V0IGxpc3Qgb2YgcHJvcGVydHkgaG9sZGluZyBjb3N0cyAodHJhbnNhY3Rpb25zIHJlbGF0ZWQgdG8gdmFjYW50IGxhbmQgcHJvcGVydHkpXG4gICAqL1xuICBnZXRQcm9wZXJ0eUhvbGRpbmdDb3N0cyhwcm9wZXJ0eUlkOiBudW1iZXIpOiBPYnNlcnZhYmxlPFRyYW5zYWN0aW9uW10+IHtcbiAgICByZXR1cm4gdGhpcy5nZXQoKVxuICAgICAgLnBpcGUoXG4gICAgICAgIG1hcCgodHJhbnNhY3Rpb25zOiBUcmFuc2FjdGlvbltdKTogVHJhbnNhY3Rpb25bXSA9PiBuZXcgVHJhbnNhY3Rpb25Db2xsZWN0aW9uKHRyYW5zYWN0aW9ucylcbiAgICAgICAgICAuZmlsdGVyQnkoJ3Byb3BlcnR5LmlkJywgcHJvcGVydHlJZClcbiAgICAgICAgICAuZmlsdGVyQnkoJ3Byb3BlcnR5LmNhdGVnb3J5LmlkJywgUHJvcGVydHlDYXRlZ29yeUxpc3RFbnVtLlZBQ0FOVF9MQU5EKVxuICAgICAgICAgIC50b0FycmF5KCkpXG4gICAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIGdldCBsaXN0IG9mIHRheGFibGUgdHJhbnNhY3Rpb25zIHdpdGggdGFuayB0eXBlICdXb3JrJ1xuICAgKi9cbiAgZ2V0VGF4YWJsZVdvcmtUcmFuc2FjdGlvbnMoKTogT2JzZXJ2YWJsZTxUcmFuc2FjdGlvbltdPiB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0V29ya1RyYW5zYWN0aW9ucygpXG4gICAgICAucGlwZShcbiAgICAgICAgbWFwKCh0cmFuc2FjdGlvbnM6IFRyYW5zYWN0aW9uW10pOiBUcmFuc2FjdGlvbltdID0+IHRyYW5zYWN0aW9ucy5maWx0ZXIoKHRyYW5zYWN0aW9uOiBUcmFuc2FjdGlvbik6IGJvb2xlYW4gPT4gISF0cmFuc2FjdGlvbi5jaGFydEFjY291bnRzLnRheFJldHVybkl0ZW0pKVxuICAgICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBhZGQgbXVsdGlwbGUgdHJhbnNhY3Rpb25zXG4gICAqIEBwYXJhbSB0cmFuc2FjdGlvbnMgTGlzdCBvZiBuZXcgVHJhbnNhY3Rpb24gaW5zdGFuY2VzIGZvciBzYXZpbmdcbiAgICovXG4gIGFkZEJhdGNoKHRyYW5zYWN0aW9uczogVHJhbnNhY3Rpb25bXSk6IE9ic2VydmFibGU8VHJhbnNhY3Rpb25bXT4ge1xuICAgIHRyYW5zYWN0aW9ucyA9IF8uY2xvbmVEZWVwKHRyYW5zYWN0aW9ucyk7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KGAke3RoaXMuZW52aXJvbm1lbnQuYXBpVjJ9LyR7dGhpcy51cmx9YCwgY2xhc3NUb1BsYWluKHRyYW5zYWN0aW9ucykpXG4gICAgICAucGlwZShcbiAgICAgICAgbWFwKChyZXNwb25zZTogVHJhbnNhY3Rpb25CYXNlW10pID0+IHtcbiAgICAgICAgICBjb25zdCBhZGRlZFRyYW5zYWN0aW9uczogVHJhbnNhY3Rpb25bXSA9IHJlc3BvbnNlLm1hcCgoaXRlbTogVHJhbnNhY3Rpb25CYXNlKSA9PiB0aGlzLmNyZWF0ZU1vZGVsSW5zdGFuY2UoaXRlbSkpO1xuXG4gICAgICAgICAgdHJhbnNhY3Rpb25zLmZvckVhY2goKHRyYW5zYWN0aW9uOiBUcmFuc2FjdGlvbiwgaW5kZXg6IG51bWJlcikgPT4ge1xuICAgICAgICAgICAgLy8gQFRPRE8gYmFja2VuZDogbmVlZCB0byB1cGxvYWQgZmlsZSBpbiB0aGUgc2FtZSBiYWNrZW5kIGVuZHBvaW50IHdpdGggdHJhbnNhY3Rpb24gYWRkL3VwZGF0ZVxuICAgICAgICAgICAgLy8gY2hlY2sgaWYgcGFzc2VkIHJlY2VpcHQgYW5kIHVwbG9hZCBmaWxlXG4gICAgICAgICAgICBpZiAodHJhbnNhY3Rpb24uZmlsZSkge1xuICAgICAgICAgICAgICB0cmFuc2FjdGlvbi5pZCA9IHJlc3BvbnNlW2luZGV4XS5pZDtcbiAgICAgICAgICAgICAgYWRkZWRUcmFuc2FjdGlvbnNbaW5kZXhdLmZpbGUgPSB0cmFuc2FjdGlvbi5maWxlO1xuICAgICAgICAgICAgICB0aGlzLmV2ZW50RGlzcGF0Y2hlclNlcnZpY2UuZGlzcGF0Y2gobmV3IEFwcEV2ZW50KEFwcEV2ZW50VHlwZUVudW0uVFJBTlNBQ1RJT05fVVBEQVRFRF9XSVRIX1JFQ0VJUFQsIGFkZGVkVHJhbnNhY3Rpb25zW2luZGV4XSkpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAvLyBAVE9ETyBWaWt0b3I6IGltcGxlbWVudCBBUEkgZm9yIHNhdmluZyBvZiBuZXN0ZWQgdHJhbnNhY3Rpb25zXG4gICAgICAgICAgICAvLyBhZGQgY2hpbGQgdHJhbnNhY3Rpb25zIGlmIGV4aXN0XG4gICAgICAgICAgICBpZiAodHJhbnNhY3Rpb24udHJhbnNhY3Rpb25zLmxlbmd0aCkge1xuICAgICAgICAgICAgICB0cmFuc2FjdGlvbi50cmFuc2FjdGlvbnMuZm9yRWFjaCgoY2hpbGRUcmFuc2FjdGlvbjogVHJhbnNhY3Rpb24pID0+IHtcbiAgICAgICAgICAgICAgICBjaGlsZFRyYW5zYWN0aW9uLnBhcmVudFRyYW5zYWN0aW9uID0gdGhpcy5jcmVhdGVNb2RlbEluc3RhbmNlKHtpZDogYWRkZWRUcmFuc2FjdGlvbnNbaW5kZXhdLmlkfSk7XG4gICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICB0aGlzLmFkZEJhdGNoKHRyYW5zYWN0aW9uLnRyYW5zYWN0aW9ucykuc3Vic2NyaWJlKCk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8vIGFkZCB0cmFuc2ZlciB0cmFuc2FjdGlvbiB0byBjYWNoZVxuICAgICAgICAgICAgaWYgKHRyYW5zYWN0aW9uLm9wZXJhdGlvbiA9PT0gVHJhbnNhY3Rpb25PcGVyYXRpb25FbnVtLlRSQU5TRkVSKSB7XG4gICAgICAgICAgICAgIGFkZGVkVHJhbnNhY3Rpb25zLnB1c2goYWRkZWRUcmFuc2FjdGlvbnNbMF0udHJhbnNmZXIpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH0pO1xuXG4gICAgICAgICAgaWYgKHRoaXMuY2FjaGUpIHtcbiAgICAgICAgICAgIHRoaXMuY2FjaGUucHVzaCguLi5hZGRlZFRyYW5zYWN0aW9ucyk7XG4gICAgICAgICAgICB0aGlzLnVwZGF0ZUNhY2hlKCk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgdGhpcy5ldmVudERpc3BhdGNoZXJTZXJ2aWNlLmRpc3BhdGNoKFxuICAgICAgICAgICAgbmV3IEFwcEV2ZW50PFRyYW5zYWN0aW9uW10+KEFwcEV2ZW50VHlwZUVudW0uVFJBTlNBQ1RJT05TX0NSRUFURUQsIGFkZGVkVHJhbnNhY3Rpb25zKVxuICAgICAgICAgICk7XG5cbiAgICAgICAgICByZXR1cm4gYWRkZWRUcmFuc2FjdGlvbnM7XG4gICAgICAgIH0pXG4gICAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIHVwZGF0ZSBleGlzdGluZyB0cmFuc2FjdGlvblxuICAgKiBAcGFyYW0gdHJhbnNhY3Rpb24gVHJhbnNhY3Rpb24gaW5zdGFuY2UgZm9yIHVwZGF0aW5nXG4gICAqL1xuICB1cGRhdGUodHJhbnNhY3Rpb246IFRyYW5zYWN0aW9uKTogT2JzZXJ2YWJsZTxUcmFuc2FjdGlvbj4ge1xuICAgIHJldHVybiB0aGlzLmh0dHAucHV0KGAke3RoaXMuZW52aXJvbm1lbnQuYXBpVjJ9LyR7dGhpcy51cmx9LyR7dHJhbnNhY3Rpb24uaWR9YCwgY2xhc3NUb1BsYWluKHRyYW5zYWN0aW9uKSlcbiAgICAgIC5waXBlKFxuICAgICAgICBtYXAoKHJlc3BvbnNlOiBUcmFuc2FjdGlvbkJhc2UpID0+IHtcbiAgICAgICAgICBjb25zdCB1cGRhdGVkVHJhbnNhY3Rpb246IFRyYW5zYWN0aW9uID0gdGhpcy5jcmVhdGVNb2RlbEluc3RhbmNlKHJlc3BvbnNlKTtcblxuICAgICAgICAgIC8vIEBUT0RPIG5lZWQgdG8gdXBsb2FkIGZpbGUgaW4gdGhlIHNhbWUgYmFja2VuZCBlbmRwb2ludCB3aXRoIHRyYW5zYWN0aW9uIGFkZC91cGRhdGVcbiAgICAgICAgICAvLyBjaGVjayBpZiBwYXNzZWQgbmV3IHJlY2VpcHQgYW5kIHVwbG9hZCBmaWxlXG4gICAgICAgICAgaWYgKHRyYW5zYWN0aW9uLmZpbGUpIHtcbiAgICAgICAgICAgIHVwZGF0ZWRUcmFuc2FjdGlvbi5maWxlID0gdHJhbnNhY3Rpb24uZmlsZTtcbiAgICAgICAgICAgIHRoaXMuZXZlbnREaXNwYXRjaGVyU2VydmljZS5kaXNwYXRjaChuZXcgQXBwRXZlbnQoQXBwRXZlbnRUeXBlRW51bS5UUkFOU0FDVElPTl9VUERBVEVEX1dJVEhfUkVDRUlQVCwgdXBkYXRlZFRyYW5zYWN0aW9uKSk7XG4gICAgICAgICAgICAvLyByZWNlaXB0IGZpbGUgd2FzIHJlbW92ZWQgZnJvbSBmb3JtIC0gd2Ugc2hvdWxkIGRlbGV0ZSByZWNlaXB0IGZyb20gdHJhbnNhY3Rpb25cbiAgICAgICAgICB9IGVsc2UgaWYgKCF0cmFuc2FjdGlvbi5maWxlICYmIHRyYW5zYWN0aW9uLnJlY2VpcHQpIHtcbiAgICAgICAgICAgIHRoaXMuZXZlbnREaXNwYXRjaGVyU2VydmljZS5kaXNwYXRjaChuZXcgQXBwRXZlbnQoQXBwRXZlbnRUeXBlRW51bS5UUkFOU0FDVElPTl9VUERBVEVEX1dJVEhfREVMRVRFRF9SRUNFSVBULCB1cGRhdGVkVHJhbnNhY3Rpb24pKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAvLyBAVE9ETyBWaWt0b3I6IGltcGxlbWVudCBBUEkgZm9yIHNhdmluZyBvZiBuZXN0ZWQgdHJhbnNhY3Rpb25zXG4gICAgICAgICAgaWYgKHRyYW5zYWN0aW9uLnRyYW5zYWN0aW9ucy5sZW5ndGgpIHtcbiAgICAgICAgICAgIC8vIGFkZCBwYXJlbnQgdHJhbnNhY3Rpb24gdG8gY2hpbGQgdHJhbnNhY3Rpb25zXG4gICAgICAgICAgICB0cmFuc2FjdGlvbi50cmFuc2FjdGlvbnMuZm9yRWFjaCgoY2hpbGRUcmFuc2FjdGlvbjogVHJhbnNhY3Rpb24pID0+IHtcbiAgICAgICAgICAgICAgY2hpbGRUcmFuc2FjdGlvbi5wYXJlbnRUcmFuc2FjdGlvbiA9IHRoaXMuY3JlYXRlTW9kZWxJbnN0YW5jZSh7aWQ6IHVwZGF0ZWRUcmFuc2FjdGlvbi5pZH0pO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAvLyBzZXBhcmF0ZSBjaGlsZCB0cmFuc2FjdGlvbnMgYnkgaWQgZXhpc3RpbmcgdG8gZGVmaW5lIGFkZCBvciB1cGRhdGUgYWN0aW9uLlxuICAgICAgICAgICAgY29uc3QgY2hpbGRUcmFuc2FjdGlvbnNUb1VwZGF0ZTogVHJhbnNhY3Rpb25bXSA9IHRyYW5zYWN0aW9uLnRyYW5zYWN0aW9ucy5maWx0ZXIoKHQ6IFRyYW5zYWN0aW9uKSA9PiB0LmlkKTtcbiAgICAgICAgICAgIGNvbnN0IGNoaWxkVHJhbnNhY3Rpb25zVG9BZGQ6IFRyYW5zYWN0aW9uW10gPSB0cmFuc2FjdGlvbi50cmFuc2FjdGlvbnMuZmlsdGVyKCh0OiBUcmFuc2FjdGlvbikgPT4gIXQuaWQpO1xuXG4gICAgICAgICAgICAvLyB1cGRhdGUgY2hpbGQgdHJhbnNhY3Rpb25zXG4gICAgICAgICAgICBpZiAoY2hpbGRUcmFuc2FjdGlvbnNUb1VwZGF0ZS5sZW5ndGgpIHtcbiAgICAgICAgICAgICAgdGhpcy51cGRhdGVCYXRjaChjaGlsZFRyYW5zYWN0aW9uc1RvVXBkYXRlKS5zdWJzY3JpYmUoKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLy8gYWRkIGNoaWxkIHRyYW5zYWN0aW9uc1xuICAgICAgICAgICAgaWYgKGNoaWxkVHJhbnNhY3Rpb25zVG9BZGQubGVuZ3RoKSB7XG4gICAgICAgICAgICAgIHRoaXMuYWRkQmF0Y2goY2hpbGRUcmFuc2FjdGlvbnNUb0FkZCkuc3Vic2NyaWJlKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgdGhpcy5yZXBsYWNlSW5DYWNoZSh1cGRhdGVkVHJhbnNhY3Rpb24pO1xuXG4gICAgICAgICAgcmV0dXJuIHVwZGF0ZWRUcmFuc2FjdGlvbjtcbiAgICAgICAgfSlcbiAgICAgICk7XG4gIH1cblxuICAvKipcbiAgICogdXBkYXRlIG11bHRpcGxlIHRyYW5zYWN0aW9uc1xuICAgKiBAcGFyYW0gdHJhbnNhY3Rpb25zIGxpc3Qgb2YgdHJhbnNhY3Rpb25zIGZvciB1cGRhdGluZ1xuICAgKi9cbiAgdXBkYXRlQmF0Y2godHJhbnNhY3Rpb25zOiBUcmFuc2FjdGlvbltdKTogT2JzZXJ2YWJsZTxUcmFuc2FjdGlvbltdPiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wdXQoYCR7dGhpcy5lbnZpcm9ubWVudC5hcGlWMn0vJHt0aGlzLnVybH1gLCBjbGFzc1RvUGxhaW4odHJhbnNhY3Rpb25zKSlcbiAgICAgIC5waXBlKFxuICAgICAgICBtYXAoKHJlc3BvbnNlOiBUcmFuc2FjdGlvbkJhc2VbXSkgPT4ge1xuICAgICAgICAgIGNvbnN0IHVwZGF0ZWRUcmFuc2FjdGlvbnM6IFRyYW5zYWN0aW9uW10gPSByZXNwb25zZS5tYXAoKGl0ZW06IFRyYW5zYWN0aW9uQmFzZSkgPT4gdGhpcy5jcmVhdGVNb2RlbEluc3RhbmNlKGl0ZW0pKTtcblxuICAgICAgICAgIHVwZGF0ZWRUcmFuc2FjdGlvbnMuZm9yRWFjaCgodXBkYXRlZFRyYW5zYWN0aW9uOiBUcmFuc2FjdGlvbikgPT4ge1xuICAgICAgICAgICAgcmVwbGFjZSh0aGlzLmNhY2hlLCB1cGRhdGVkVHJhbnNhY3Rpb24pO1xuICAgICAgICAgIH0pO1xuXG4gICAgICAgICAgdGhpcy51cGRhdGVDYWNoZSgpO1xuICAgICAgICAgIHJldHVybiB1cGRhdGVkVHJhbnNhY3Rpb25zO1xuICAgICAgICB9KVxuICAgICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBkZWxldGUgdHJhbnNhY3Rpb24gYW5kIHJlbGF0ZWQgdHJhbnNhY3Rpb25zXG4gICAqIEBwYXJhbSBtb2RlbFxuICAgKi9cbiAgZGVsZXRlKG1vZGVsOiBUcmFuc2FjdGlvbik6IE9ic2VydmFibGU8dm9pZD4ge1xuICAgIHJldHVybiB0aGlzLmh0dHAuZGVsZXRlKGAke3RoaXMuZW52aXJvbm1lbnQuYXBpVjJ9LyR7dGhpcy51cmx9LyR7bW9kZWwuaWR9YClcbiAgICAgIC5waXBlKFxuICAgICAgICBtYXAoKCk6IHZvaWQgPT4ge1xuICAgICAgICAgIHRoaXMuY2FjaGUgPSB0aGlzLmNhY2hlLmZpbHRlcigodHJhbnNhY3Rpb246IFRyYW5zYWN0aW9uKTogYm9vbGVhbiA9PiB7XG4gICAgICAgICAgICAvLyB3aGVuIGRlbGV0ZSB0cmFuc2ZlciB3ZSBkZWxldGUgYWN0dWFsbHkgMiB0cmFuc2FjdGlvbnNcbiAgICAgICAgICAgIGlmIChtb2RlbC5pc1RyYW5zZmVyKSB7XG4gICAgICAgICAgICAgIGNvbnN0IGlkczogbnVtYmVyW10gPSBbbW9kZWwuaWRdO1xuXG4gICAgICAgICAgICAgIC8vIGdldCBpZCBvZiByZWxhdGVkIHRyYW5zZmVyIHRyYW5zYWN0aW9uXG4gICAgICAgICAgICAgIGlmIChtb2RlbC50cmFuc2Zlcikge1xuICAgICAgICAgICAgICAgIC8vIGp1c3QgdGFrZSBpZCBpZiB3ZSBkZWxldGUgc291cmNlIHRyYW5zYWN0aW9uXG4gICAgICAgICAgICAgICAgaWRzLnB1c2gobW9kZWwudHJhbnNmZXIuaWQpO1xuICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIC8vIGZpbmQgc291cmNlIHRyYW5zYWN0aW9uIGlkIGlmIHdlIGRlbGV0ZSBkZXN0aW5hdGlvbiB0cmFuc2FjdGlvblxuICAgICAgICAgICAgICAgIGlkcy5wdXNoKHRoaXMuY2FjaGUuZmluZCgodDogVHJhbnNhY3Rpb24pOiBib29sZWFuID0+IHQudHJhbnNmZXIuaWQgPT09IG1vZGVsLmlkKS5pZCk7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICByZXR1cm4gIWlkcy5pbmNsdWRlcyh0cmFuc2FjdGlvbi5pZCk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHJldHVybiB0cmFuc2FjdGlvbi5pZCAhPT0gbW9kZWwuaWQgJiYgdHJhbnNhY3Rpb24ucGFyZW50VHJhbnNhY3Rpb24/LmlkICE9PSBtb2RlbC5pZDtcbiAgICAgICAgICB9KTtcblxuICAgICAgICAgIHRoaXMuZXZlbnREaXNwYXRjaGVyU2VydmljZS5kaXNwYXRjaChcbiAgICAgICAgICAgIG5ldyBBcHBFdmVudDxUcmFuc2FjdGlvbj4oQXBwRXZlbnRUeXBlRW51bS5UUkFOU0FDVElPTl9ERUxFVEVELCBtb2RlbClcbiAgICAgICAgICApO1xuXG4gICAgICAgICAgdGhpcy51cGRhdGVDYWNoZSgpO1xuICAgICAgICAgIHRoaXMudHJhbnNhY3Rpb25EZWxldGVkLmVtaXQobW9kZWwpO1xuICAgICAgICB9KVxuICAgICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBAVE9ETyBBbGV4IHdyb25nIHBsYWNlIGZvciB0aGlzIGxvZ2ljLCBtb3ZlIHRvIG1vZGVsXG4gICAqIGNhbGN1bGF0ZSBncm9zcyBpbmNvbWUgYW1vdW50IGJhc2VkIG9uIHRyYW5zYWN0aW9uIGFtb3VudCBhbmQgdGF4ZXMgKGZlZXMpXG4gICAqIEBwYXJhbSB0cmFuc2FjdGlvbiBUcmFuc2FjdGlvbiBpbnN0YW5jZSBmb3IgY2FsY3VsYXRpb25cbiAgICovXG4gIGNhbGN1bGF0ZUdyb3NzQW1vdW50KHRyYW5zYWN0aW9uOiBUcmFuc2FjdGlvbik6IG51bWJlciB7XG4gICAgbGV0IGFtb3VudDogbnVtYmVyID0gdHJhbnNhY3Rpb24uYW1vdW50IHx8IDA7XG5cbiAgICAvLyBncm9zcyBpbmNvbWUgYW1vdW50IGluY2x1ZGVzIGFtb3VudCBvZiBmZWVzIGZvciBwcm9wZXJ0eSB0YW5rIGFuZCB0YXggZm9yIHdvcmsgdGFua1xuICAgIGlmICh0cmFuc2FjdGlvbi5pc1Byb3BlcnR5VGFuaygpKSB7XG4gICAgICBhbW91bnQgKz0gdHJhbnNhY3Rpb24udHJhbnNhY3Rpb25zLnJlZHVjZSgoc3VtOiBudW1iZXIsIGl0ZW06IFRyYW5zYWN0aW9uKSA9PiBzdW0gKyBpdGVtLmFtb3VudCwgMCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIC8vIEBUT0RPIEFsZXg6IGZpeCBsb2dpYyBhZnRlciBUVC02NDEgcmVhZHlcbiAgICAgIGFtb3VudCArPSAodHJhbnNhY3Rpb24udGF4IHx8IDApO1xuICAgIH1cblxuICAgIHJldHVybiBhbW91bnQ7XG4gIH1cblxuICAvKipcbiAgICogTGlzdGVuIHRvIEV2ZW50RGlzcGF0Y2hlclNlcnZpY2UgZXZlbnQgcmVsYXRlZCB0byBEZXByZWNpYXRpb24gY2hhbmdpbmdcbiAgICovXG4gIHByaXZhdGUgbGlzdGVuRGVwcmVjaWF0aW9uQ2hhbmdlKCk6IHZvaWQge1xuICAgIC8vIEBUT0RPIHJlc2V0IGNhY2hlIG9ubHkgd2hlbiByZXF1aXJlZCAoZGVwcmVjaWF0aW9uIGhhcyB0cmFuc2FjdGlvbilcbiAgICB0aGlzLmV2ZW50RGlzcGF0Y2hlclNlcnZpY2Uub24yKC4uLkRlcHJlY2lhdGlvbi5nZXRFdmVudE5hbWVzKCdwb3N0JywgJ2RlbGV0ZScpKS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgdGhpcy5mZXRjaCgpXG4gICAgICAgIC5zdWJzY3JpYmUoKHRyYW5zYWN0aW9uczogVHJhbnNhY3Rpb25bXSkgPT4ge1xuICAgICAgICAgIHRoaXMuY2FjaGUgPSB0cmFuc2FjdGlvbnM7XG4gICAgICAgICAgdGhpcy51cGRhdGVDYWNoZSgpO1xuICAgICAgICB9KTtcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBMaXN0ZW4gdG8gRXZlbnREaXNwYXRjaGVyU2VydmljZSBldmVudCByZWxhdGVkIHRvIFByb3BlcnR5IFNoYXJlIGNoYW5naW5nXG4gICAqL1xuICBwcml2YXRlIGxpc3RlblByb3BlcnR5U2hhcmVVcGRhdGUoKTogdm9pZCB7XG4gICAgdGhpcy5ldmVudERpc3BhdGNoZXJTZXJ2aWNlLm9uKEFwcEV2ZW50VHlwZUVudW0uUFJPUEVSVFlfU0hBUkVfVVBEQVRFRCkuc3Vic2NyaWJlKCgpID0+IHRoaXMucmVzZXRDYWNoZSgpKTtcbiAgfVxuXG4gIHByaXZhdGUgbGlzdGVuUmVjZWlwdEFkZGVkKCkge1xuICAgIHRoaXMuZXZlbnREaXNwYXRjaGVyU2VydmljZS5vbihBcHBFdmVudFR5cGVFbnVtLlRSQU5TQUNUSU9OX1JFQ0VJUFRfQ1JFQVRFRCkuc3Vic2NyaWJlKCh0cmFuc2FjdGlvblJlY2VpcHQ6IFRyYW5zYWN0aW9uUmVjZWlwdCkgPT4ge1xuICAgICAgY29uc3QgdHJhbnNhY3Rpb25Ub1VwZGF0ZTogVHJhbnNhY3Rpb24gPSB0aGlzLmZpbmQodHJhbnNhY3Rpb25SZWNlaXB0LnRyYW5zYWN0aW9uLmlkKTtcblxuICAgICAgLy8gd2UgZG9uJ3QgbmVlZCB0byBrZWVwIGZpbGUgYWZ0ZXIgc2F2ZVxuICAgICAgdHJhbnNhY3Rpb25Ub1VwZGF0ZS5maWxlID0gbnVsbDtcbiAgICAgIHRyYW5zYWN0aW9uVG9VcGRhdGUucmVjZWlwdCA9IHRyYW5zYWN0aW9uUmVjZWlwdDtcbiAgICAgIHRoaXMucmVwbGFjZUluQ2FjaGUodHJhbnNhY3Rpb25Ub1VwZGF0ZSk7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIGxpc3RlblJlY2VpcHREZWxldGVkKCkge1xuICAgIHRoaXMuZXZlbnREaXNwYXRjaGVyU2VydmljZS5vbihBcHBFdmVudFR5cGVFbnVtLlRSQU5TQUNUSU9OX1JFQ0VJUFRfREVMRVRFRCkuc3Vic2NyaWJlKCh0cmFuc2FjdGlvbjogVHJhbnNhY3Rpb24pID0+IHtcbiAgICAgIGNvbnN0IHRyYW5zYWN0aW9uVG9VcGRhdGU6IFRyYW5zYWN0aW9uID0gdGhpcy5maW5kKHRyYW5zYWN0aW9uLmlkKTtcblxuICAgICAgdHJhbnNhY3Rpb25Ub1VwZGF0ZS5yZWNlaXB0ID0gbnVsbDtcbiAgICAgIHRoaXMucmVwbGFjZUluQ2FjaGUodHJhbnNhY3Rpb25Ub1VwZGF0ZSk7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIGxpc3RlblZlaGljbGVDbGFpbUNoYW5nZXMoKTogdm9pZCB7XG4gICAgdGhpcy5ldmVudERpc3BhdGNoZXJTZXJ2aWNlLm9uKFtcbiAgICAgIEFwcEV2ZW50VHlwZUVudW0uVkVISUNMRV9DTEFJTV9DUkVBVEVELFxuICAgICAgQXBwRXZlbnRUeXBlRW51bS5WRUhJQ0xFX0NMQUlNX1VQREFURUQsXG4gICAgICBBcHBFdmVudFR5cGVFbnVtLlZFSElDTEVfQ0xBSU1fREVUQUlMU19VUERBVEVEXG4gICAgXSkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgIHRoaXMucmVzZXRDYWNoZSgpO1xuICAgIH0pXG4gIH1cblxuICAvKipcbiAgICogcHJvcGVydHkgZm9yZWNhc3QgaW5jbHVkZXMgY2xhaW1QZXJjZW50IHdoaWNoIGFmZmVjdHMgcHJvcGVydHkgcmVsYXRlZCBleHBlbnNlc1xuICAgKiBAVE9ETyBBbGV4IG1vdmUgdG8gZm9yZWNhc3QgYXBpIGluc3RlYWQgb2YgcHJvcGVydHlcbiAgICovXG4gIHByaXZhdGUgbGlzdGVuUHJvcGVydHlGb3JlY2FzdFVwZGF0ZSgpOiB2b2lkIHtcbiAgICB0aGlzLmV2ZW50RGlzcGF0Y2hlclNlcnZpY2Uub24oW0FwcEV2ZW50VHlwZUVudW0uUFJPUEVSVFlfVVBEQVRFRF0pLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICB0aGlzLnJlc2V0Q2FjaGUoKTtcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgcmVwbGFjZUluQ2FjaGUodHJhbnNhY3Rpb25Ub1JlcGxhY2U6IFRyYW5zYWN0aW9uKTogdm9pZCB7XG4gICAgcmVwbGFjZSh0aGlzLmNhY2hlLCB0cmFuc2FjdGlvblRvUmVwbGFjZSk7XG4gICAgdGhpcy51cGRhdGVDYWNoZSgpO1xuICB9XG5cbiAgcHJpdmF0ZSBsaXN0ZW5JbnZvaWNlc1B1Ymxpc2goKTogdm9pZCB7XG4gICAgdGhpcy5ldmVudERpc3BhdGNoZXJTZXJ2aWNlLm9uKEFwcEV2ZW50VHlwZUVudW0uU09MRV9JTlZPSUNFX1BVQkxJU0hFRCkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgIHRoaXMucmVzZXRDYWNoZSgpO1xuICAgIH0pXG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,31 @@
1
+ import { Injectable } from '@angular/core';
2
+ import { Collection } from '../../../collections';
3
+ import { ChartAccountsValue, FinancialYear } from '../../../models';
4
+ import ChartAccountsValues from '../../../db/Json/chart-accounts/chart-accounts-value.json';
5
+ import { DataService } from '../../data.service';
6
+ import { ChartAccountsListEnum } from '../../../db/Enums';
7
+ import * as i0 from "@angular/core";
8
+ export class ChartAccountsValueService extends DataService {
9
+ constructor() {
10
+ super();
11
+ this.modelClass = ChartAccountsValue;
12
+ this.collectionClass = Collection;
13
+ this.setCache(ChartAccountsValues);
14
+ }
15
+ /**
16
+ * $ amount u can claim per 1km
17
+ */
18
+ getKmsRate(isSole) {
19
+ const chartAccountsId = isSole ? ChartAccountsListEnum.KLMS_TRAVELLED : ChartAccountsListEnum.KLMS_TRAVELLED_FOR_WORK;
20
+ return this.getCache().find((ca) => ca.chartAccounts.id === chartAccountsId && new FinancialYear().year === ca.financialYear).value;
21
+ }
22
+ }
23
+ ChartAccountsValueService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.5", ngImport: i0, type: ChartAccountsValueService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
24
+ ChartAccountsValueService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.1.5", ngImport: i0, type: ChartAccountsValueService, providedIn: 'root' });
25
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.5", ngImport: i0, type: ChartAccountsValueService, decorators: [{
26
+ type: Injectable,
27
+ args: [{
28
+ providedIn: 'root'
29
+ }]
30
+ }], ctorParameters: function () { return []; } });
31
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhcnQtYWNjb3VudHMtdmFsdWUuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R0LWNvcmUvc3JjL2xpYi9zZXJ2aWNlcy9qc29uL2NoYXJ0LWFjY291bnRzL2NoYXJ0LWFjY291bnRzLXZhbHVlLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUV6QyxPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFDaEQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLGFBQWEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3BFLE9BQU8sbUJBQW1CLE1BQU0sMkRBQTJELENBQUM7QUFDNUYsT0FBTyxFQUFDLFdBQVcsRUFBQyxNQUFNLG9CQUFvQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLG1CQUFtQixDQUFDOztBQUsxRCxNQUFNLE9BQU8seUJBQTBCLFNBQVEsV0FBdUY7SUFJcEk7UUFDRSxLQUFLLEVBQUUsQ0FBQztRQUpWLGVBQVUsR0FBOEIsa0JBQWtCLENBQUM7UUFDM0Qsb0JBQWUsR0FBc0IsVUFBVSxDQUFDO1FBSTlDLElBQUksQ0FBQyxRQUFRLENBQUMsbUJBQW1CLENBQUMsQ0FBQztJQUNyQyxDQUFDO0lBRUQ7O09BRUc7SUFDSCxVQUFVLENBQUMsTUFBZTtRQUN4QixNQUFNLGVBQWUsR0FBRyxNQUFNLENBQUMsQ0FBQyxDQUFDLHFCQUFxQixDQUFDLGNBQWMsQ0FBQyxDQUFDLENBQUMscUJBQXFCLENBQUMsdUJBQXVCLENBQUM7UUFDdEgsT0FBTyxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUMsSUFBSSxDQUN6QixDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxFQUFFLEtBQUssZUFBZSxJQUFJLElBQUksYUFBYSxFQUFFLENBQUMsSUFBSSxLQUFLLEVBQUUsQ0FBQyxhQUFhLENBQ2pHLENBQUMsS0FBSyxDQUFDO0lBQ1YsQ0FBQzs7c0hBakJVLHlCQUF5QjswSEFBekIseUJBQXlCLGNBRnhCLE1BQU07MkZBRVAseUJBQXlCO2tCQUhyQyxVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7SW5qZWN0YWJsZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0NoYXJ0QWNjb3VudHNWYWx1ZSBhcyBDaGFydEFjY291bnRzVmFsdWVCYXNlfSBmcm9tICcuLi8uLi8uLi9kYi9Nb2RlbHMnO1xuaW1wb3J0IHtDb2xsZWN0aW9ufSBmcm9tICcuLi8uLi8uLi9jb2xsZWN0aW9ucyc7XG5pbXBvcnQgeyBDaGFydEFjY291bnRzVmFsdWUsIEZpbmFuY2lhbFllYXIgfSBmcm9tICcuLi8uLi8uLi9tb2RlbHMnO1xuaW1wb3J0IENoYXJ0QWNjb3VudHNWYWx1ZXMgZnJvbSAnLi4vLi4vLi4vZGIvSnNvbi9jaGFydC1hY2NvdW50cy9jaGFydC1hY2NvdW50cy12YWx1ZS5qc29uJztcbmltcG9ydCB7RGF0YVNlcnZpY2V9IGZyb20gJy4uLy4uL2RhdGEuc2VydmljZSc7XG5pbXBvcnQgeyBDaGFydEFjY291bnRzTGlzdEVudW0gfSBmcm9tICcuLi8uLi8uLi9kYi9FbnVtcyc7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIENoYXJ0QWNjb3VudHNWYWx1ZVNlcnZpY2UgZXh0ZW5kcyBEYXRhU2VydmljZTxDaGFydEFjY291bnRzVmFsdWVCYXNlLCBDaGFydEFjY291bnRzVmFsdWUsIENvbGxlY3Rpb248Q2hhcnRBY2NvdW50c1ZhbHVlPj4ge1xuICBtb2RlbENsYXNzOiB0eXBlb2YgQ2hhcnRBY2NvdW50c1ZhbHVlID0gQ2hhcnRBY2NvdW50c1ZhbHVlO1xuICBjb2xsZWN0aW9uQ2xhc3M6IHR5cGVvZiBDb2xsZWN0aW9uID0gQ29sbGVjdGlvbjtcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICBzdXBlcigpO1xuICAgIHRoaXMuc2V0Q2FjaGUoQ2hhcnRBY2NvdW50c1ZhbHVlcyk7XG4gIH1cblxuICAvKipcbiAgICogJCBhbW91bnQgdSBjYW4gY2xhaW0gcGVyIDFrbVxuICAgKi9cbiAgZ2V0S21zUmF0ZShpc1NvbGU6IGJvb2xlYW4pOiBudW1iZXIge1xuICAgIGNvbnN0IGNoYXJ0QWNjb3VudHNJZCA9IGlzU29sZSA/IENoYXJ0QWNjb3VudHNMaXN0RW51bS5LTE1TX1RSQVZFTExFRCA6IENoYXJ0QWNjb3VudHNMaXN0RW51bS5LTE1TX1RSQVZFTExFRF9GT1JfV09SSztcbiAgICByZXR1cm4gdGhpcy5nZXRDYWNoZSgpLmZpbmQoXG4gICAgICAoY2EpID0+IGNhLmNoYXJ0QWNjb3VudHMuaWQgPT09IGNoYXJ0QWNjb3VudHNJZCAmJiBuZXcgRmluYW5jaWFsWWVhcigpLnllYXIgPT09IGNhLmZpbmFuY2lhbFllYXJcbiAgICApLnZhbHVlO1xuICB9XG59XG4iXX0=
@@ -1,4 +1,5 @@
1
1
  export * from './holding/holding-type-exchange.service';
2
2
  export * from './tax-exemption/tax-exemption.service';
3
3
  export * from './income-source/income-source-type.service';
4
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvc2VydmljZXMvanNvbi9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLHlDQUF5QyxDQUFDO0FBQ3hELGNBQWMsdUNBQXVDLENBQUM7QUFDdEQsY0FBYyw0Q0FBNEMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vaG9sZGluZy9ob2xkaW5nLXR5cGUtZXhjaGFuZ2Uuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL3RheC1leGVtcHRpb24vdGF4LWV4ZW1wdGlvbi5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vaW5jb21lLXNvdXJjZS9pbmNvbWUtc291cmNlLXR5cGUuc2VydmljZSc7XG4iXX0=
4
+ export * from './chart-accounts/chart-accounts-value.service';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvc2VydmljZXMvanNvbi9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLHlDQUF5QyxDQUFDO0FBQ3hELGNBQWMsdUNBQXVDLENBQUM7QUFDdEQsY0FBYyw0Q0FBNEMsQ0FBQztBQUMzRCxjQUFjLCtDQUErQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9ob2xkaW5nL2hvbGRpbmctdHlwZS1leGNoYW5nZS5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vdGF4LWV4ZW1wdGlvbi90YXgtZXhlbXB0aW9uLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9pbmNvbWUtc291cmNlL2luY29tZS1zb3VyY2UtdHlwZS5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vY2hhcnQtYWNjb3VudHMvY2hhcnQtYWNjb3VudHMtdmFsdWUuc2VydmljZSc7XG4iXX0=