taxtank-core 0.30.124 → 0.30.126

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 (1025) hide show
  1. package/esm2020/lib/collections/account-setup-item.collection.mjs +2 -2
  2. package/esm2020/lib/collections/allocation-rule.collection.mjs +2 -3
  3. package/esm2020/lib/collections/bank-account.collection.mjs +29 -2
  4. package/esm2020/lib/collections/bank-transaction.collection.mjs +3 -4
  5. package/esm2020/lib/collections/chat/chat.collection.mjs +2 -2
  6. package/esm2020/lib/collections/collection-dictionary.mjs +17 -18
  7. package/esm2020/lib/collections/collection.mjs +5 -5
  8. package/esm2020/lib/collections/income-source/income-source-forecast.collection.mjs +11 -0
  9. package/esm2020/lib/collections/income-source/income-source.collection.mjs +43 -0
  10. package/esm2020/lib/collections/income-source/index.mjs +3 -0
  11. package/esm2020/lib/collections/index.mjs +2 -2
  12. package/esm2020/lib/collections/loan/loan.collection.mjs +15 -3
  13. package/esm2020/lib/collections/report/property/property-report-item-depreciation.collection.mjs +2 -3
  14. package/esm2020/lib/collections/report/property/property-report-item-transaction.collection.mjs +2 -3
  15. package/esm2020/lib/collections/report/vehicle-expense/vehicle-expense.collection.mjs +2 -3
  16. package/esm2020/lib/collections/sole/sole-business-losses.collection.mjs +2 -3
  17. package/esm2020/lib/collections/transaction/transaction-allocation.collection.mjs +3 -4
  18. package/esm2020/lib/db/Enums/bank/loan/index.mjs +11 -0
  19. package/esm2020/lib/db/Enums/{loan-bank-type.enum.mjs → bank/loan/loan-bank-type.enum.mjs} +1 -1
  20. package/esm2020/lib/db/Enums/bank/loan/loan-frequency.enum.mjs +8 -0
  21. package/esm2020/lib/db/Enums/bank/loan/loan-interest-type-label.enum.mjs +6 -0
  22. package/esm2020/lib/db/Enums/bank/loan/loan-interest-type.enum.mjs +6 -0
  23. package/esm2020/lib/db/Enums/bank/loan/loan-payout-type.enum.mjs +6 -0
  24. package/esm2020/lib/db/Enums/{loan-repayment-frequency.enum.mjs → bank/loan/loan-repayment-frequency.enum.mjs} +1 -1
  25. package/esm2020/lib/db/Enums/bank/loan/loan-repayment-type-label.enum.mjs +6 -0
  26. package/esm2020/lib/db/Enums/bank/loan/loan-repayment-type.enum.mjs +6 -0
  27. package/esm2020/lib/db/Enums/{loan-type.enum.mjs → bank/loan/loan-type.enum.mjs} +1 -1
  28. package/esm2020/lib/db/Enums/bank/loan/loan-vehicle-type.enum.mjs +7 -0
  29. package/esm2020/lib/db/Enums/income-source/income-source-type.enum.mjs +4 -1
  30. package/esm2020/lib/db/Models/loan/loan-payout.mjs +1 -1
  31. package/esm2020/lib/db/Models/loan/loan.mjs +1 -1
  32. package/esm2020/lib/db/Models/property/borrowing-report.mjs +4 -0
  33. package/esm2020/lib/db-static/chart-accounts/chart-accounts-values.mjs +3 -3
  34. package/esm2020/lib/forms/abstract.form.mjs +4 -1
  35. package/esm2020/lib/forms/loan/loan.form.mjs +5 -5
  36. package/esm2020/lib/forms/property/borrowing-report.form.mjs +27 -0
  37. package/esm2020/lib/forms/property/index.mjs +2 -1
  38. package/esm2020/lib/models/address/address.mjs +1 -1
  39. package/esm2020/lib/models/bank/bank-account.mjs +5 -6
  40. package/esm2020/lib/models/client/annual-client-details.mjs +5 -1
  41. package/esm2020/lib/models/endpoint/endpoints.const.mjs +4 -1
  42. package/esm2020/lib/models/financial-year/financial-year.mjs +2 -1
  43. package/esm2020/lib/models/income-source/income-source-forecast.mjs +4 -1
  44. package/esm2020/lib/models/income-source/salary-forecast.mjs +15 -1
  45. package/esm2020/lib/models/loan/loan-payout.mjs +2 -2
  46. package/esm2020/lib/models/loan/loan.mjs +20 -4
  47. package/esm2020/lib/models/property/borrowing-report.mjs +17 -0
  48. package/esm2020/lib/models/property/index.mjs +2 -1
  49. package/esm2020/lib/models/report/my-tax/my-tax-partnerships-and-trusts/my-tax-partnerships-and-trusts.mjs +1 -1
  50. package/esm2020/lib/services/account-setup/account-setup.service.mjs +2 -2
  51. package/esm2020/lib/services/http/income-source/income-source-forecast/income-source-forecast.service.mjs +2 -1
  52. package/esm2020/lib/services/http/property/borrowing-report/borrowing-report-messages.enum.mjs +6 -0
  53. package/esm2020/lib/services/http/property/borrowing-report/borrowing-report.service.mjs +24 -0
  54. package/esm2020/lib/services/http/property/borrowing-report/index.mjs +3 -0
  55. package/esm2020/lib/services/http/property/index.mjs +2 -1
  56. package/esm2020/lib/services/report/property/property-transaction-report.service.mjs +4 -3
  57. package/esm2020/lib/services/transaction/transaction-calculation.service.mjs +3 -4
  58. package/esm2020/public-api.mjs +2 -9
  59. package/fesm2015/taxtank-core.mjs +4454 -4276
  60. package/fesm2015/taxtank-core.mjs.map +1 -1
  61. package/fesm2020/taxtank-core.mjs +4442 -4264
  62. package/fesm2020/taxtank-core.mjs.map +1 -1
  63. package/lib/collections/account-setup-item.collection.d.ts.map +1 -0
  64. package/lib/collections/allocation-group.collection.d.ts.map +1 -0
  65. package/lib/collections/allocation-rule.collection.d.ts.map +1 -0
  66. package/lib/collections/asset-sale.collection.d.ts.map +1 -0
  67. package/lib/collections/bank-account.collection.d.ts +12 -4
  68. package/lib/collections/bank-account.collection.d.ts.map +1 -0
  69. package/lib/collections/bank-transaction.collection.d.ts.map +1 -0
  70. package/lib/collections/chart-accounts.collection.d.ts.map +1 -0
  71. package/lib/collections/chat/chat.collection.d.ts.map +1 -0
  72. package/lib/collections/chat/index.d.ts.map +1 -0
  73. package/lib/collections/chat/message-document.collection.d.ts.map +1 -0
  74. package/lib/collections/chat/message.collection.d.ts.map +1 -0
  75. package/lib/collections/client-invite.collection.d.ts.map +1 -0
  76. package/lib/collections/client-movement.collection.d.ts.map +1 -0
  77. package/lib/collections/client-portfolio-report.collection.d.ts.map +1 -0
  78. package/lib/collections/client.collection.d.ts.map +1 -0
  79. package/lib/collections/collection-dictionary.d.ts +7 -8
  80. package/lib/collections/collection-dictionary.d.ts.map +1 -0
  81. package/lib/collections/collection.d.ts +1 -1
  82. package/lib/collections/collection.d.ts.map +1 -0
  83. package/lib/collections/depreciation-forecast.collection.d.ts.map +1 -0
  84. package/lib/collections/depreciation.collection.d.ts.map +1 -0
  85. package/lib/collections/employee.collection.d.ts.map +1 -0
  86. package/lib/collections/exportable.collection.d.ts.map +1 -0
  87. package/lib/collections/holding/holding-sale.collection.d.ts.map +1 -0
  88. package/lib/collections/holding/holding-type.collection.d.ts.map +1 -0
  89. package/lib/collections/holding/holding.collection.d.ts.map +1 -0
  90. package/lib/collections/holding/index.d.ts.map +1 -0
  91. package/lib/collections/income-source/income-source-forecast.collection.d.ts +6 -0
  92. package/lib/collections/income-source/income-source-forecast.collection.d.ts.map +1 -0
  93. package/lib/collections/{income-source.collection.d.ts → income-source/income-source.collection.d.ts} +7 -5
  94. package/lib/collections/income-source/income-source.collection.d.ts.map +1 -0
  95. package/lib/collections/income-source/index.d.ts +2 -0
  96. package/lib/collections/income-source/index.d.ts.map +1 -0
  97. package/lib/collections/index.d.ts +1 -1
  98. package/lib/collections/index.d.ts.map +1 -0
  99. package/lib/collections/loan/index.d.ts.map +1 -0
  100. package/lib/collections/loan/loan-payment.collection.d.ts.map +1 -0
  101. package/lib/collections/loan/loan.collection.d.ts +5 -1
  102. package/lib/collections/loan/loan.collection.d.ts.map +1 -0
  103. package/lib/collections/property/index.d.ts.map +1 -0
  104. package/lib/collections/property/property-category-movement.collection.d.ts.map +1 -0
  105. package/lib/collections/property/property-sale/index.d.ts.map +1 -0
  106. package/lib/collections/property/property-sale/property-sale-tax-exemption-meta-field.collection.d.ts.map +1 -0
  107. package/lib/collections/property/property-sale/property-sale.collection.d.ts.map +1 -0
  108. package/lib/collections/property/property-share.collection.d.ts.map +1 -0
  109. package/lib/collections/property/property.collection.d.ts.map +1 -0
  110. package/lib/collections/report/depreciation/depreciation-lvp-report-item.collection.d.ts.map +1 -0
  111. package/lib/collections/report/depreciation/depreciation-report-item.collection.d.ts.map +1 -0
  112. package/lib/collections/report/index.d.ts.map +1 -0
  113. package/lib/collections/report/property/property-report-item-depreciation.collection.d.ts.map +1 -0
  114. package/lib/collections/report/property/property-report-item-transaction.collection.d.ts.map +1 -0
  115. package/lib/collections/report/property/property-report-item.collection.d.ts.map +1 -0
  116. package/lib/collections/report/vehicle-expense/vehicle-expense.collection.d.ts.map +1 -0
  117. package/lib/collections/sole/index.d.ts.map +1 -0
  118. package/lib/collections/sole/sole-business-losses.collection.d.ts.map +1 -0
  119. package/lib/collections/sole/sole-invoice-item.collection.d.ts.map +1 -0
  120. package/lib/collections/sole/sole-invoice.collection.d.ts.map +1 -0
  121. package/lib/collections/subscription/index.d.ts.map +1 -0
  122. package/lib/collections/subscription/service-price.collection.d.ts.map +1 -0
  123. package/lib/collections/subscription/service-product.collection.d.ts.map +1 -0
  124. package/lib/collections/subscription/service-subscription.collection.d.ts.map +1 -0
  125. package/lib/collections/subscription/subscription-item.collection.d.ts.map +1 -0
  126. package/lib/collections/tax-review.collection.d.ts.map +1 -0
  127. package/lib/collections/tax-summary/index.d.ts.map +1 -0
  128. package/lib/collections/tax-summary/report-item.collection.d.ts.map +1 -0
  129. package/lib/collections/tax-summary/tax-return-categories.const.d.ts.map +1 -0
  130. package/lib/collections/transaction/index.d.ts.map +1 -0
  131. package/lib/collections/transaction/transaction-allocation.collection.d.ts.map +1 -0
  132. package/lib/collections/transaction/transaction.collection.d.ts.map +1 -0
  133. package/lib/collections/user-event-setting.collection.d.ts.map +1 -0
  134. package/lib/collections/user-event-type-collection.d.ts.map +1 -0
  135. package/lib/collections/vehicle/index.d.ts.map +1 -0
  136. package/lib/collections/vehicle/vehicle-claim.collection.d.ts.map +1 -0
  137. package/lib/collections/vehicle/vehicle-logbook.collection.d.ts.map +1 -0
  138. package/lib/db/Enums/address-type.enum.d.ts.map +1 -0
  139. package/lib/db/Enums/allocation-rule-condition-comparison-operator.enum.d.ts.map +1 -0
  140. package/lib/db/Enums/allocation-rule-condition-field.enum.d.ts.map +1 -0
  141. package/lib/db/Enums/allocation-rule-condition-operator.enum.d.ts.map +1 -0
  142. package/lib/db/Enums/allocation-rule-type.enum.d.ts.map +1 -0
  143. package/lib/db/Enums/annual-frequency.enum.d.ts.map +1 -0
  144. package/lib/db/Enums/bank/bank-account-status.enum.d.ts.map +1 -0
  145. package/lib/db/Enums/bank/bank-account-type.enum.d.ts.map +1 -0
  146. package/lib/db/Enums/bank/bank-connection-status.enum.d.ts.map +1 -0
  147. package/lib/db/Enums/bank/bank-popular.enum.d.ts.map +1 -0
  148. package/lib/db/Enums/bank/bank-provider.enum.d.ts.map +1 -0
  149. package/lib/db/Enums/bank/bank-transaction-type.enum.d.ts.map +1 -0
  150. package/lib/db/Enums/bank/index.d.ts.map +1 -0
  151. package/lib/db/Enums/bank/loan/index.d.ts +10 -0
  152. package/lib/db/Enums/bank/loan/index.d.ts.map +1 -0
  153. package/lib/db/Enums/bank/loan/loan-bank-type.enum.d.ts.map +1 -0
  154. package/lib/db/Enums/bank/loan/loan-frequency.enum.d.ts.map +1 -0
  155. package/lib/db/Enums/bank/loan/loan-interest-type-label.enum.d.ts +4 -0
  156. package/lib/db/Enums/bank/loan/loan-interest-type-label.enum.d.ts.map +1 -0
  157. package/lib/db/Enums/bank/loan/loan-interest-type.enum.d.ts.map +1 -0
  158. package/lib/db/Enums/bank/loan/loan-payout-type.enum.d.ts.map +1 -0
  159. package/lib/db/Enums/bank/loan/loan-repayment-frequency.enum.d.ts.map +1 -0
  160. package/lib/db/Enums/bank/loan/loan-repayment-type-label.enum.d.ts +4 -0
  161. package/lib/db/Enums/bank/loan/loan-repayment-type-label.enum.d.ts.map +1 -0
  162. package/lib/db/Enums/bank/loan/loan-repayment-type.enum.d.ts.map +1 -0
  163. package/lib/db/Enums/bank/loan/loan-type.enum.d.ts.map +1 -0
  164. package/lib/db/Enums/bank/loan/loan-vehicle-type.enum.d.ts.map +1 -0
  165. package/lib/db/Enums/chart-accounts/chart-accounts-category.enum.d.ts.map +1 -0
  166. package/lib/db/Enums/chart-accounts/chart-accounts-etp.enum.d.ts.map +1 -0
  167. package/lib/db/Enums/chart-accounts/chart-accounts-heading-list.enum.d.ts.map +1 -0
  168. package/lib/db/Enums/chart-accounts/chart-accounts-heading-tax-deductible.enum.d.ts.map +1 -0
  169. package/lib/db/Enums/chart-accounts/chart-accounts-heading-taxable.enum.d.ts.map +1 -0
  170. package/lib/db/Enums/chart-accounts/chart-accounts-heading-vehicle-list.enum.d.ts.map +1 -0
  171. package/lib/db/Enums/chart-accounts/chart-accounts-holding-untaxed-income-list.enum.d.ts.map +1 -0
  172. package/lib/db/Enums/chart-accounts/chart-accounts-invoice-expense.enum.d.ts.map +1 -0
  173. package/lib/db/Enums/chart-accounts/chart-accounts-keep-sign.enum.d.ts.map +1 -0
  174. package/lib/db/Enums/chart-accounts/chart-accounts-list.enum.d.ts.map +1 -0
  175. package/lib/db/Enums/chart-accounts/chart-accounts-meta-field-list.enum.d.ts.map +1 -0
  176. package/lib/db/Enums/chart-accounts/chart-accounts-meta-field-type.enum.d.ts.map +1 -0
  177. package/lib/db/Enums/chart-accounts/chart-accounts-salary-adjustments-list.enum.d.ts.map +1 -0
  178. package/lib/db/Enums/chart-accounts/chart-accounts-salary-included-list.enum.d.ts.map +1 -0
  179. package/lib/db/Enums/chart-accounts/chart-accounts-type.enum.d.ts.map +1 -0
  180. package/lib/db/Enums/chart-accounts/index.d.ts.map +1 -0
  181. package/lib/db/Enums/chat-status.enum.d.ts.map +1 -0
  182. package/lib/db/Enums/client-details-medicare-exemption.enum.d.ts.map +1 -0
  183. package/lib/db/Enums/client-details-work-depreciation-calculation.enum.d.ts.map +1 -0
  184. package/lib/db/Enums/client-details-working-holiday-maker.enum.d.ts.map +1 -0
  185. package/lib/db/Enums/client-invite-status.enum.d.ts.map +1 -0
  186. package/lib/db/Enums/client-invite-type.enum.d.ts.map +1 -0
  187. package/lib/db/Enums/depreciation-calculation-percent.enum.d.ts.map +1 -0
  188. package/lib/db/Enums/depreciation-calculation.enum.d.ts.map +1 -0
  189. package/lib/db/Enums/depreciation-type.enum.d.ts.map +1 -0
  190. package/lib/db/Enums/depreciation-write-off-amount.enum.d.ts.map +1 -0
  191. package/lib/db/Enums/document-type.enum.d.ts.map +1 -0
  192. package/lib/db/Enums/file-type.enum.d.ts.map +1 -0
  193. package/lib/db/Enums/firm-type.enum.d.ts.map +1 -0
  194. package/lib/db/Enums/holding/holding-type-category.enum.d.ts.map +1 -0
  195. package/lib/db/Enums/income-source/income-source-forecast-trust-type.enum.d.ts.map +1 -0
  196. package/lib/db/Enums/income-source/income-source-type-list-holding.enum.d.ts.map +1 -0
  197. package/lib/db/Enums/income-source/income-source-type-list-other.enum.d.ts.map +1 -0
  198. package/lib/db/Enums/income-source/income-source-type-list-sole.enum.d.ts.map +1 -0
  199. package/lib/db/Enums/income-source/income-source-type-list-work.enum.d.ts.map +1 -0
  200. package/lib/db/Enums/income-source/income-source-type.enum.d.ts +3 -0
  201. package/lib/db/Enums/income-source/income-source-type.enum.d.ts.map +1 -0
  202. package/lib/db/Enums/income-source/index.d.ts.map +1 -0
  203. package/lib/db/Enums/index.d.ts.map +1 -0
  204. package/lib/db/Enums/invite-status.enum.d.ts.map +1 -0
  205. package/lib/db/Enums/phone-type.enum.d.ts.map +1 -0
  206. package/lib/db/Enums/property/property-category-list.enum.d.ts.map +1 -0
  207. package/lib/db/Enums/property/property-depreciation-calculation.enum.d.ts.map +1 -0
  208. package/lib/db/Enums/property/property-sale/tax-exemption-meta-field.enum.d.ts.map +1 -0
  209. package/lib/db/Enums/property/property-sale/tax-exemption.enum.d.ts.map +1 -0
  210. package/lib/db/Enums/property/property-share-access.enum.d.ts.map +1 -0
  211. package/lib/db/Enums/property/property-share-status.enum.d.ts.map +1 -0
  212. package/lib/db/Enums/registration-invite-status.enum.d.ts.map +1 -0
  213. package/lib/db/Enums/salary-forecast-frequency.enum.d.ts.map +1 -0
  214. package/lib/db/Enums/service-notification-status.enum.d.ts.map +1 -0
  215. package/lib/db/Enums/service-notification-type.enum.d.ts.map +1 -0
  216. package/lib/db/Enums/sole-depreciation-method.enum.d.ts.map +1 -0
  217. package/lib/db/Enums/sole-invoice-statuses.enum.d.ts.map +1 -0
  218. package/lib/db/Enums/sole-invoice-tax-type.enum.d.ts.map +1 -0
  219. package/lib/db/Enums/sole-invoice-template-tax-type.enum.d.ts.map +1 -0
  220. package/lib/db/Enums/spare-document-spare-type.enum.d.ts.map +1 -0
  221. package/lib/db/Enums/subscription/service-payment-method-card-brand.enum.d.ts.map +1 -0
  222. package/lib/db/Enums/subscription/service-payment-method-type.enum.d.ts.map +1 -0
  223. package/lib/db/Enums/subscription/service-payment-status.enum.d.ts.map +1 -0
  224. package/lib/db/Enums/subscription/service-price-recurring-interval.enum.d.ts.map +1 -0
  225. package/lib/db/Enums/subscription/service-price-type.enum.d.ts.map +1 -0
  226. package/lib/db/Enums/subscription/service-product-id.enum.d.ts.map +1 -0
  227. package/lib/db/Enums/subscription/service-product-status.enum.d.ts.map +1 -0
  228. package/lib/db/Enums/subscription/service-subscription-status.enum.d.ts.map +1 -0
  229. package/lib/db/Enums/tank-type.enum.d.ts.map +1 -0
  230. package/lib/db/Enums/tax-calculation-medicare-exemption.enum.d.ts.map +1 -0
  231. package/lib/db/Enums/tax-calculation-type.enum.d.ts.map +1 -0
  232. package/lib/db/Enums/tax-return/index.d.ts.map +1 -0
  233. package/lib/db/Enums/tax-return/tax-return-category-list.enum.d.ts.map +1 -0
  234. package/lib/db/Enums/tax-return/tax-return-category-section.enum.d.ts.map +1 -0
  235. package/lib/db/Enums/tax-return/tax-return-item.enum.d.ts.map +1 -0
  236. package/lib/db/Enums/tax-review-status.enum.d.ts.map +1 -0
  237. package/lib/db/Enums/tax-summary-list.enum.d.ts.map +1 -0
  238. package/lib/db/Enums/tax-summary-section.enum.d.ts.map +1 -0
  239. package/lib/db/Enums/tax-summary-tax-summary.enum.d.ts.map +1 -0
  240. package/lib/db/Enums/ticket-feedback.enum.d.ts.map +1 -0
  241. package/lib/db/Enums/ticket-status.enum.d.ts.map +1 -0
  242. package/lib/db/Enums/ticket-types.enum.d.ts.map +1 -0
  243. package/lib/db/Enums/transaction-operation.enum.d.ts.map +1 -0
  244. package/lib/db/Enums/transaction-source.enum.d.ts.map +1 -0
  245. package/lib/db/Enums/transaction-type.enum.d.ts.map +1 -0
  246. package/lib/db/Enums/user-event-status.enum.d.ts.map +1 -0
  247. package/lib/db/Enums/user-event-type-client-type.enum.d.ts.map +1 -0
  248. package/lib/db/Enums/user-event-type-employee-type.enum.d.ts.map +1 -0
  249. package/lib/db/Enums/user-event-type-frequency.enum.d.ts.map +1 -0
  250. package/lib/db/Enums/user-event-type-type.enum.d.ts.map +1 -0
  251. package/lib/db/Enums/user-event-type-user-type.enum.d.ts.map +1 -0
  252. package/lib/db/Enums/user-medicare-exemption.enum.d.ts.map +1 -0
  253. package/lib/db/Enums/user-roles.enum.d.ts.map +1 -0
  254. package/lib/db/Enums/user-status.enum.d.ts.map +1 -0
  255. package/lib/db/Enums/user-title.enum.d.ts.map +1 -0
  256. package/lib/db/Enums/user-work-depreciation-calculation.enum.d.ts.map +1 -0
  257. package/lib/db/Enums/user-working-holiday-maker.enum.d.ts.map +1 -0
  258. package/lib/db/Enums/vehicle-claim-details-method.enum.d.ts.map +1 -0
  259. package/lib/db/Enums/vehicle-logbook-purpose.enum.d.ts.map +1 -0
  260. package/lib/db/Models/abstract-model.d.ts.map +1 -0
  261. package/lib/db/Models/address.d.ts.map +1 -0
  262. package/lib/db/Models/bank/bank-account-balance.d.ts.map +1 -0
  263. package/lib/db/Models/bank/bank-account-property.d.ts.map +1 -0
  264. package/lib/db/Models/bank/bank-account.d.ts.map +1 -0
  265. package/lib/db/Models/bank/bank-connection.d.ts.map +1 -0
  266. package/lib/db/Models/bank/bank-transaction-import.d.ts.map +1 -0
  267. package/lib/db/Models/bank/bank-transaction.d.ts.map +1 -0
  268. package/lib/db/Models/bank/bank.d.ts.map +1 -0
  269. package/lib/db/Models/bank/basiq-job-step.enum.d.ts.map +1 -0
  270. package/lib/db/Models/bank/basiq-job.d.ts.map +1 -0
  271. package/lib/db/Models/budget/budget-rule.d.ts.map +1 -0
  272. package/lib/db/Models/budget/budget.d.ts.map +1 -0
  273. package/lib/db/Models/budget/index.d.ts.map +1 -0
  274. package/lib/db/Models/chart-accounts/chart-accounts-depreciation.d.ts.map +1 -0
  275. package/lib/db/Models/chart-accounts/chart-accounts-heading.d.ts.map +1 -0
  276. package/lib/db/Models/chart-accounts/chart-accounts-meta-field.d.ts.map +1 -0
  277. package/lib/db/Models/chart-accounts/chart-accounts-value.d.ts.map +1 -0
  278. package/lib/db/Models/chart-accounts/chart-accounts.d.ts.map +1 -0
  279. package/lib/db/Models/client/annual-client-details.d.ts.map +1 -0
  280. package/lib/db/Models/client/client-details.d.ts.map +1 -0
  281. package/lib/db/Models/client/client-income-types.d.ts.map +1 -0
  282. package/lib/db/Models/client/index.d.ts.map +1 -0
  283. package/lib/db/Models/client/occupation.d.ts.map +1 -0
  284. package/lib/db/Models/country.d.ts.map +1 -0
  285. package/lib/db/Models/depreciation/depreciation-capital-project.d.ts.map +1 -0
  286. package/lib/db/Models/depreciation/depreciation-forecast.d.ts.map +1 -0
  287. package/lib/db/Models/depreciation/depreciation-receipt.d.ts.map +1 -0
  288. package/lib/db/Models/depreciation/depreciation.d.ts.map +1 -0
  289. package/lib/db/Models/document/document-base.d.ts.map +1 -0
  290. package/lib/db/Models/document/document-folder.d.ts.map +1 -0
  291. package/lib/db/Models/document/document.d.ts.map +1 -0
  292. package/lib/db/Models/document/property-document.d.ts.map +1 -0
  293. package/lib/db/Models/file.d.ts.map +1 -0
  294. package/lib/db/Models/firm/accountant/tax-review.d.ts.map +1 -0
  295. package/lib/db/Models/firm/accountant/ticket.d.ts.map +1 -0
  296. package/lib/db/Models/firm/chat.d.ts.map +1 -0
  297. package/lib/db/Models/firm/client-invite.d.ts.map +1 -0
  298. package/lib/db/Models/firm/client-movement.d.ts.map +1 -0
  299. package/lib/db/Models/firm/employee-invite.d.ts.map +1 -0
  300. package/lib/db/Models/firm/firm-invite.d.ts.map +1 -0
  301. package/lib/db/Models/firm/firm.d.ts.map +1 -0
  302. package/lib/db/Models/firm/message-document.d.ts.map +1 -0
  303. package/lib/db/Models/firm/message.d.ts.map +1 -0
  304. package/lib/db/Models/holding/holding-sale.d.ts.map +1 -0
  305. package/lib/db/Models/holding/holding-type-exchange.d.ts.map +1 -0
  306. package/lib/db/Models/holding/holding-type.d.ts.map +1 -0
  307. package/lib/db/Models/holding/holding.d.ts.map +1 -0
  308. package/lib/db/Models/holding/index.d.ts.map +1 -0
  309. package/lib/db/Models/incomeSource/income-source-forecast.d.ts.map +1 -0
  310. package/lib/db/Models/incomeSource/income-source-type.d.ts.map +1 -0
  311. package/lib/db/Models/incomeSource/income-source.d.ts.map +1 -0
  312. package/lib/db/Models/incomeSource/salary-forecast.d.ts.map +1 -0
  313. package/lib/db/Models/index.d.ts.map +1 -0
  314. package/lib/db/Models/loan/borrowing-expense-loan.d.ts.map +1 -0
  315. package/lib/db/Models/loan/borrowing-expense.d.ts.map +1 -0
  316. package/lib/db/Models/loan/loan-payout.d.ts +1 -1
  317. package/lib/db/Models/loan/loan-payout.d.ts.map +1 -0
  318. package/lib/db/Models/loan/loan.d.ts +4 -4
  319. package/lib/db/Models/loan/loan.d.ts.map +1 -0
  320. package/lib/db/Models/observable-model.d.ts.map +1 -0
  321. package/lib/db/Models/phone.d.ts.map +1 -0
  322. package/lib/db/Models/property/borrowing-report.d.ts +12 -0
  323. package/lib/db/Models/property/borrowing-report.d.ts.map +1 -0
  324. package/lib/db/Models/property/property-category-movement.d.ts.map +1 -0
  325. package/lib/db/Models/property/property-category.d.ts.map +1 -0
  326. package/lib/db/Models/property/property-forecast.d.ts.map +1 -0
  327. package/lib/db/Models/property/property-sale/property-sale-tax-exemption-meta-field.d.ts.map +1 -0
  328. package/lib/db/Models/property/property-sale/property-sale.d.ts.map +1 -0
  329. package/lib/db/Models/property/property-sale/tax-exemption-meta-field.d.ts.map +1 -0
  330. package/lib/db/Models/property/property-sale/tax-exemption.d.ts.map +1 -0
  331. package/lib/db/Models/property/property-share.d.ts.map +1 -0
  332. package/lib/db/Models/property/property-subscription.d.ts.map +1 -0
  333. package/lib/db/Models/property/property-valuation.d.ts.map +1 -0
  334. package/lib/db/Models/property/property.d.ts.map +1 -0
  335. package/lib/db/Models/service-notification.d.ts.map +1 -0
  336. package/lib/db/Models/sole/bas-report.d.ts.map +1 -0
  337. package/lib/db/Models/sole/sole-business-activity.d.ts.map +1 -0
  338. package/lib/db/Models/sole/sole-business-allocation.d.ts.map +1 -0
  339. package/lib/db/Models/sole/sole-business-loss-offset-rule.d.ts.map +1 -0
  340. package/lib/db/Models/sole/sole-business-loss.d.ts.map +1 -0
  341. package/lib/db/Models/sole/sole-business.d.ts.map +1 -0
  342. package/lib/db/Models/sole/sole-contact.d.ts.map +1 -0
  343. package/lib/db/Models/sole/sole-depreciation-method.d.ts.map +1 -0
  344. package/lib/db/Models/sole/sole-details.d.ts.map +1 -0
  345. package/lib/db/Models/sole/sole-forecast.d.ts.map +1 -0
  346. package/lib/db/Models/sole/sole-invoice-item.d.ts.map +1 -0
  347. package/lib/db/Models/sole/sole-invoice-template.d.ts.map +1 -0
  348. package/lib/db/Models/sole/sole-invoice.d.ts.map +1 -0
  349. package/lib/db/Models/spare/spare-document-category.d.ts.map +1 -0
  350. package/lib/db/Models/spare/spare-document.d.ts.map +1 -0
  351. package/lib/db/Models/subscription/service-payment-method.d.ts.map +1 -0
  352. package/lib/db/Models/subscription/service-payment.d.ts.map +1 -0
  353. package/lib/db/Models/subscription/service-price.d.ts.map +1 -0
  354. package/lib/db/Models/subscription/service-product.d.ts.map +1 -0
  355. package/lib/db/Models/subscription/service-subscription-item.d.ts.map +1 -0
  356. package/lib/db/Models/subscription/service-subscription.d.ts.map +1 -0
  357. package/lib/db/Models/tax-calculation.d.ts.map +1 -0
  358. package/lib/db/Models/tax-return/index.d.ts.map +1 -0
  359. package/lib/db/Models/tax-return/tax-return-category.d.ts.map +1 -0
  360. package/lib/db/Models/tax-return/tax-return-item.d.ts.map +1 -0
  361. package/lib/db/Models/tax-return/tax-return.d.ts.map +1 -0
  362. package/lib/db/Models/transaction/allocation-rule-condition.d.ts.map +1 -0
  363. package/lib/db/Models/transaction/allocation-rule-transaction-meta-field.d.ts.map +1 -0
  364. package/lib/db/Models/transaction/allocation-rule-transaction.d.ts.map +1 -0
  365. package/lib/db/Models/transaction/allocation-rule.d.ts.map +1 -0
  366. package/lib/db/Models/transaction/transaction-allocation.d.ts.map +1 -0
  367. package/lib/db/Models/transaction/transaction-base.d.ts.map +1 -0
  368. package/lib/db/Models/transaction/transaction-meta-field.d.ts.map +1 -0
  369. package/lib/db/Models/transaction/transaction-receipt.d.ts.map +1 -0
  370. package/lib/db/Models/transaction/transaction.d.ts.map +1 -0
  371. package/lib/db/Models/user/employee-details.d.ts.map +1 -0
  372. package/lib/db/Models/user/registration-invite.d.ts.map +1 -0
  373. package/lib/db/Models/user/user-event-setting.d.ts.map +1 -0
  374. package/lib/db/Models/user/user-event-type-category.d.ts.map +1 -0
  375. package/lib/db/Models/user/user-event-type.d.ts.map +1 -0
  376. package/lib/db/Models/user/user-event.d.ts.map +1 -0
  377. package/lib/db/Models/user/user.d.ts.map +1 -0
  378. package/lib/db/Models/vehicle/vehicle-claim-details.d.ts.map +1 -0
  379. package/lib/db/Models/vehicle/vehicle-claim.d.ts.map +1 -0
  380. package/lib/db/Models/vehicle/vehicle-logbook.d.ts.map +1 -0
  381. package/lib/db/Models/vehicle/vehicle.d.ts.map +1 -0
  382. package/lib/db-static/chart-accounts/chart-accounts-values.d.ts +2 -2
  383. package/lib/db-static/chart-accounts/chart-accounts-values.d.ts.map +1 -0
  384. package/lib/forms/abstract.form.d.ts +1 -0
  385. package/lib/forms/abstract.form.d.ts.map +1 -0
  386. package/lib/forms/address/address.form.d.ts.map +1 -0
  387. package/lib/forms/address/index.d.ts.map +1 -0
  388. package/lib/forms/bank/bank-account/bank-account-add-manual.form.d.ts.map +1 -0
  389. package/lib/forms/bank/bank-account/bank-account-allocation.form.d.ts.map +1 -0
  390. package/lib/forms/bank/bank-account/bank-account-import.form.d.ts.map +1 -0
  391. package/lib/forms/bank/bank-account/bank-account-properties.form.d.ts.map +1 -0
  392. package/lib/forms/bank/bank-account/bank-accounts-import.form.d.ts.map +1 -0
  393. package/lib/forms/budget/budget.form.d.ts.map +1 -0
  394. package/lib/forms/budget/index.d.ts.map +1 -0
  395. package/lib/forms/client/annual-client-details.form.d.ts.map +1 -0
  396. package/lib/forms/client/client-income-types.form.d.ts.map +1 -0
  397. package/lib/forms/client/index.d.ts.map +1 -0
  398. package/lib/forms/depreciation/depreciation.form.d.ts.map +1 -0
  399. package/lib/forms/depreciation/index.d.ts.map +1 -0
  400. package/lib/forms/form-validations.enum.d.ts.map +1 -0
  401. package/lib/forms/holding/holding-reinvest.form.d.ts.map +1 -0
  402. package/lib/forms/holding/holding-sale.form.d.ts.map +1 -0
  403. package/lib/forms/holding/holding-type.form.d.ts.map +1 -0
  404. package/lib/forms/holding/holding.form.d.ts.map +1 -0
  405. package/lib/forms/holding/index.d.ts.map +1 -0
  406. package/lib/forms/index.d.ts.map +1 -0
  407. package/lib/forms/loan/index.d.ts.map +1 -0
  408. package/lib/forms/loan/loan.form.d.ts +1 -1
  409. package/lib/forms/loan/loan.form.d.ts.map +1 -0
  410. package/lib/forms/login/login.form.d.ts.map +1 -0
  411. package/lib/forms/phone/index.d.ts.map +1 -0
  412. package/lib/forms/phone/phone.form.d.ts.map +1 -0
  413. package/lib/forms/property/borrowing-report.form.d.ts +12 -0
  414. package/lib/forms/property/borrowing-report.form.d.ts.map +1 -0
  415. package/lib/forms/property/index.d.ts +1 -0
  416. package/lib/forms/property/index.d.ts.map +1 -0
  417. package/lib/forms/property/property-sale/index.d.ts.map +1 -0
  418. package/lib/forms/property/property-sale/property-sale-cost-base.form.d.ts.map +1 -0
  419. package/lib/forms/property/property-sale/property-sale-cost-sale.form.d.ts.map +1 -0
  420. package/lib/forms/property/property-sale/property-sale-exemptions.form.d.ts.map +1 -0
  421. package/lib/forms/register/register-client.form.d.ts.map +1 -0
  422. package/lib/forms/register/register-firm.form.d.ts.map +1 -0
  423. package/lib/forms/report/my-tax/index.d.ts.map +1 -0
  424. package/lib/forms/report/my-tax/my-tax-business-income-or-losses/my-tax-business-details/my-tax-business-details.form.d.ts.map +1 -0
  425. package/lib/forms/report/my-tax/my-tax-business-income-or-losses/my-tax-business-income/my-tax-business-income.form.d.ts.map +1 -0
  426. package/lib/forms/report/my-tax/my-tax-business-income-or-losses/my-tax-business-income-or-losses.form.d.ts.map +1 -0
  427. package/lib/forms/report/my-tax/my-tax-business-income-or-losses/my-tax-business-losses/my-tax-business-losses.form.d.ts.map +1 -0
  428. package/lib/forms/report/my-tax/my-tax-cgt.form.d.ts.map +1 -0
  429. package/lib/forms/report/my-tax/my-tax-deductions.form.d.ts.map +1 -0
  430. package/lib/forms/report/my-tax/my-tax-dividends.form.d.ts.map +1 -0
  431. package/lib/forms/report/my-tax/my-tax-income-statements.form.d.ts.map +1 -0
  432. package/lib/forms/report/my-tax/my-tax-income-tests.form.d.ts.map +1 -0
  433. package/lib/forms/report/my-tax/my-tax-interest.form.d.ts.map +1 -0
  434. package/lib/forms/report/my-tax/my-tax-losses.form.d.ts.map +1 -0
  435. package/lib/forms/report/my-tax/my-tax-medicare.form.d.ts.map +1 -0
  436. package/lib/forms/report/my-tax/my-tax-offsets.form.d.ts.map +1 -0
  437. package/lib/forms/report/my-tax/my-tax-other-income.form.d.ts.map +1 -0
  438. package/lib/forms/report/my-tax/my-tax-partnerships-and-trusts.form.d.ts.map +1 -0
  439. package/lib/forms/report/my-tax/my-tax-rent.form.d.ts.map +1 -0
  440. package/lib/forms/sole/bas-report.form.d.ts.map +1 -0
  441. package/lib/forms/sole/index.d.ts.map +1 -0
  442. package/lib/forms/sole/sole-business-allocations.form.d.ts.map +1 -0
  443. package/lib/forms/sole/sole-business-loss.form.d.ts.map +1 -0
  444. package/lib/forms/sole/sole-business.form.d.ts.map +1 -0
  445. package/lib/forms/sole/sole-contact.form.d.ts.map +1 -0
  446. package/lib/forms/sole/sole-depreciation-method.form.d.ts.map +1 -0
  447. package/lib/forms/sole/sole-details.form.d.ts.map +1 -0
  448. package/lib/forms/sole/sole-invoice-item.form.d.ts.map +1 -0
  449. package/lib/forms/sole/sole-invoice-template.form.d.ts.map +1 -0
  450. package/lib/forms/sole/sole-invoice.form.d.ts.map +1 -0
  451. package/lib/forms/transaction/allocation-rule-condition.form.d.ts.map +1 -0
  452. package/lib/forms/transaction/allocation-rule-transaction-meta-field.form.d.ts.map +1 -0
  453. package/lib/forms/transaction/allocation-rule-transaction.form.d.ts.map +1 -0
  454. package/lib/forms/transaction/allocation-rule.form.d.ts.map +1 -0
  455. package/lib/forms/transaction/holding/holding-income.form.d.ts.map +1 -0
  456. package/lib/forms/transaction/index.d.ts.map +1 -0
  457. package/lib/forms/transaction/messages.enum.d.ts.map +1 -0
  458. package/lib/forms/transaction/transaction-base.form.d.ts.map +1 -0
  459. package/lib/forms/transaction/transaction.form.d.ts.map +1 -0
  460. package/lib/forms/transaction/work/work-expense.form.d.ts.map +1 -0
  461. package/lib/forms/transaction/work/work-income.form.d.ts.map +1 -0
  462. package/lib/forms/transaction/work/work-transaction.form.d.ts.map +1 -0
  463. package/lib/forms/user/index.d.ts.map +1 -0
  464. package/lib/forms/user/password.form.d.ts.map +1 -0
  465. package/lib/forms/user/reset-password.form.d.ts.map +1 -0
  466. package/lib/forms/user/user-invite.form.d.ts.map +1 -0
  467. package/lib/forms/vehicle/index.d.ts.map +1 -0
  468. package/lib/forms/vehicle/vehicle-claim-details.form.d.ts.map +1 -0
  469. package/lib/forms/vehicle/vehicle-claim.form.d.ts.map +1 -0
  470. package/lib/forms/vehicle/vehicle-logbook.form.d.ts.map +1 -0
  471. package/lib/forms/vehicle/vehicle.form.d.ts.map +1 -0
  472. package/lib/functions/array/index.d.ts.map +1 -0
  473. package/lib/functions/array/replace.d.ts.map +1 -0
  474. package/lib/functions/array/sort-deep.d.ts.map +1 -0
  475. package/lib/functions/array/sort.d.ts.map +1 -0
  476. package/lib/functions/array/to-array.d.ts.map +1 -0
  477. package/lib/functions/clone-deep.d.ts.map +1 -0
  478. package/lib/functions/create-date.d.ts.map +1 -0
  479. package/lib/functions/enum-to-list.d.ts.map +1 -0
  480. package/lib/functions/get-doc-icon.d.ts.map +1 -0
  481. package/lib/functions/mat-options-functions.d.ts.map +1 -0
  482. package/lib/functions/mat-sort-options.d.ts.map +1 -0
  483. package/lib/functions/tax-review-filter-predicate.d.ts.map +1 -0
  484. package/lib/interceptors/basiq-client-id.interceptor.d.ts.map +1 -0
  485. package/lib/interceptors/basiq-token.interceptor.d.ts.map +1 -0
  486. package/lib/interceptors/corelogic-interceptor.d.ts.map +1 -0
  487. package/lib/interceptors/financial-year-interceptor.d.ts.map +1 -0
  488. package/lib/interceptors/interceptors.module.d.ts.map +1 -0
  489. package/lib/interceptors/jwt-interceptor.d.ts.map +1 -0
  490. package/lib/interceptors/preloader.interceptor.d.ts.map +1 -0
  491. package/lib/interceptors/user-switcher-interceptor.d.ts.map +1 -0
  492. package/lib/interfaces/asset-entity-type.enum.d.ts.map +1 -0
  493. package/lib/interfaces/asset-type.enum.d.ts.map +1 -0
  494. package/lib/interfaces/asset.interface.d.ts.map +1 -0
  495. package/lib/interfaces/auth-tokens.interface.d.ts.map +1 -0
  496. package/lib/interfaces/chart-data.interface.d.ts.map +1 -0
  497. package/lib/interfaces/chart-serie.interface.d.ts.map +1 -0
  498. package/lib/interfaces/document.interface.d.ts.map +1 -0
  499. package/lib/interfaces/documentable.interface.d.ts.map +1 -0
  500. package/lib/interfaces/event-listener.interface.d.ts.map +1 -0
  501. package/lib/interfaces/expense.interface.d.ts.map +1 -0
  502. package/lib/interfaces/income-source-forecast.interface.d.ts.map +1 -0
  503. package/lib/interfaces/index.d.ts.map +1 -0
  504. package/lib/interfaces/option.interface.d.ts.map +1 -0
  505. package/lib/interfaces/photoable.d.ts.map +1 -0
  506. package/lib/interfaces/receipt.interface.d.ts.map +1 -0
  507. package/lib/interfaces/table-exportable.interface.d.ts.map +1 -0
  508. package/lib/interfaces/tank.interface.d.ts.map +1 -0
  509. package/lib/interfaces/updatable.interface.d.ts.map +1 -0
  510. package/lib/messages/index.d.ts.map +1 -0
  511. package/lib/messages/messages.enum.d.ts.map +1 -0
  512. package/lib/models/account-setup/account-setup-item.d.ts.map +1 -0
  513. package/lib/models/account-setup/account-setup-items.const.d.ts.map +1 -0
  514. package/lib/models/account-setup/account-setup-items.enum.d.ts.map +1 -0
  515. package/lib/models/address/address.d.ts.map +1 -0
  516. package/lib/models/address/country.d.ts.map +1 -0
  517. package/lib/models/address/index.d.ts.map +1 -0
  518. package/lib/models/address/states.enum.d.ts.map +1 -0
  519. package/lib/models/asset-sale.d.ts.map +1 -0
  520. package/lib/models/badge/badge-color.enum.d.ts.map +1 -0
  521. package/lib/models/badge/badge.d.ts.map +1 -0
  522. package/lib/models/bank/allocation-group.d.ts.map +1 -0
  523. package/lib/models/bank/bank-account-chart-data.d.ts.map +1 -0
  524. package/lib/models/bank/bank-account-property.d.ts.map +1 -0
  525. package/lib/models/bank/bank-account-types.const.d.ts.map +1 -0
  526. package/lib/models/bank/bank-account.d.ts +3 -3
  527. package/lib/models/bank/bank-account.d.ts.map +1 -0
  528. package/lib/models/bank/bank-connection.d.ts.map +1 -0
  529. package/lib/models/bank/bank-external-stats.d.ts.map +1 -0
  530. package/lib/models/bank/bank-transaction-chart-data.d.ts.map +1 -0
  531. package/lib/models/bank/bank-transaction-summary-fields.enum.d.ts.map +1 -0
  532. package/lib/models/bank/bank-transaction.d.ts.map +1 -0
  533. package/lib/models/bank/bank.d.ts.map +1 -0
  534. package/lib/models/bank/basiq/basiq-config.d.ts.map +1 -0
  535. package/lib/models/bank/basiq/basiq-connection-data.interface.d.ts.map +1 -0
  536. package/lib/models/bank/basiq/basiq-connections-response.interface.d.ts.map +1 -0
  537. package/lib/models/bank/basiq/basiq-job-response.d.ts.map +1 -0
  538. package/lib/models/bank/basiq/basiq-job-step.d.ts.map +1 -0
  539. package/lib/models/bank/basiq/basiq-job.d.ts.map +1 -0
  540. package/lib/models/bank/basiq/basiq-token-response.interface.d.ts.map +1 -0
  541. package/lib/models/bank/basiq/basiq-token.d.ts.map +1 -0
  542. package/lib/models/bank/basiq/index.d.ts.map +1 -0
  543. package/lib/models/bank/index.d.ts.map +1 -0
  544. package/lib/models/bank/type-loan.const.d.ts.map +1 -0
  545. package/lib/models/borrowing-expense/borrowing-expense-loan.d.ts.map +1 -0
  546. package/lib/models/borrowing-expense/borrowing-expense.d.ts.map +1 -0
  547. package/lib/models/borrowing-expense/index.d.ts.map +1 -0
  548. package/lib/models/budget/budget-rule.d.ts.map +1 -0
  549. package/lib/models/budget/budget.d.ts.map +1 -0
  550. package/lib/models/budget/index.d.ts.map +1 -0
  551. package/lib/models/chart/chart-data.d.ts.map +1 -0
  552. package/lib/models/chart/chart-serie.d.ts.map +1 -0
  553. package/lib/models/chart-accounts/chart-accounts-categories.const.d.ts.map +1 -0
  554. package/lib/models/chart-accounts/chart-accounts-category.e-collection.d.ts.map +1 -0
  555. package/lib/models/chart-accounts/chart-accounts-depreciation.d.ts.map +1 -0
  556. package/lib/models/chart-accounts/chart-accounts-heading.d.ts.map +1 -0
  557. package/lib/models/chart-accounts/chart-accounts-meta-field.d.ts.map +1 -0
  558. package/lib/models/chart-accounts/chart-accounts-tax-labels.enum.d.ts.map +1 -0
  559. package/lib/models/chart-accounts/chart-accounts-value.d.ts.map +1 -0
  560. package/lib/models/chart-accounts/chart-accounts.d.ts.map +1 -0
  561. package/lib/models/chart-accounts/index.d.ts.map +1 -0
  562. package/lib/models/chat/chat-view-type.enum.d.ts.map +1 -0
  563. package/lib/models/chat/chat.d.ts.map +1 -0
  564. package/lib/models/chat/index.d.ts.map +1 -0
  565. package/lib/models/chat/message-document.d.ts.map +1 -0
  566. package/lib/models/chat/message.d.ts.map +1 -0
  567. package/lib/models/client/annual-client-details.d.ts +2 -1
  568. package/lib/models/client/annual-client-details.d.ts.map +1 -0
  569. package/lib/models/client/client-details.d.ts.map +1 -0
  570. package/lib/models/client/client-income-types.d.ts.map +1 -0
  571. package/lib/models/client/client-invite.d.ts.map +1 -0
  572. package/lib/models/client/client-movement.d.ts.map +1 -0
  573. package/lib/models/client/client-portfolio-chart-data.d.ts.map +1 -0
  574. package/lib/models/client/client-portfolio-report.d.ts.map +1 -0
  575. package/lib/models/client/index.d.ts.map +1 -0
  576. package/lib/models/color/alphabet-colors.enum.d.ts.map +1 -0
  577. package/lib/models/depreciation/depreciation-capital-project.d.ts.map +1 -0
  578. package/lib/models/depreciation/depreciation-forecast.d.ts.map +1 -0
  579. package/lib/models/depreciation/depreciation-group-item.d.ts.map +1 -0
  580. package/lib/models/depreciation/depreciation-group.d.ts.map +1 -0
  581. package/lib/models/depreciation/depreciation-group.enum.d.ts.map +1 -0
  582. package/lib/models/depreciation/depreciation-groups.const.d.ts.map +1 -0
  583. package/lib/models/depreciation/depreciation-lvp-rate.enum.d.ts.map +1 -0
  584. package/lib/models/depreciation/depreciation-receipt.d.ts.map +1 -0
  585. package/lib/models/depreciation/depreciation.d.ts.map +1 -0
  586. package/lib/models/depreciation/index.d.ts.map +1 -0
  587. package/lib/models/dictionary/dictionary.d.ts.map +1 -0
  588. package/lib/models/dictionary/index.d.ts.map +1 -0
  589. package/lib/models/document/document-api-url-prefix.enum.d.ts.map +1 -0
  590. package/lib/models/document/document-file-types.const.d.ts.map +1 -0
  591. package/lib/models/document/document-folder.d.ts.map +1 -0
  592. package/lib/models/document/document.d.ts.map +1 -0
  593. package/lib/models/document/index.d.ts.map +1 -0
  594. package/lib/models/employee/employee-details.d.ts.map +1 -0
  595. package/lib/models/employee/employee-invite.d.ts.map +1 -0
  596. package/lib/models/endpoint/endpoint.d.ts.map +1 -0
  597. package/lib/models/endpoint/endpoints.const.d.ts.map +1 -0
  598. package/lib/models/event/app-event-type.enum.d.ts.map +1 -0
  599. package/lib/models/event/app-event.d.ts.map +1 -0
  600. package/lib/models/event/index.d.ts.map +1 -0
  601. package/lib/models/export/export-cell-type.enum.d.ts.map +1 -0
  602. package/lib/models/export/export-cell.d.ts.map +1 -0
  603. package/lib/models/export/export-data-table.d.ts.map +1 -0
  604. package/lib/models/export/export-format.enum.d.ts.map +1 -0
  605. package/lib/models/export/export-row-data-type.enum.d.ts.map +1 -0
  606. package/lib/models/export/export-row.d.ts.map +1 -0
  607. package/lib/models/file/file.d.ts.map +1 -0
  608. package/lib/models/file/icons-file.enum.d.ts.map +1 -0
  609. package/lib/models/file/index.d.ts.map +1 -0
  610. package/lib/models/financial-year/financial-year.d.ts +1 -0
  611. package/lib/models/financial-year/financial-year.d.ts.map +1 -0
  612. package/lib/models/financial-year/index.d.ts.map +1 -0
  613. package/lib/models/financial-year/month-name-short.enum.d.ts.map +1 -0
  614. package/lib/models/financial-year/month-number.enum.d.ts.map +1 -0
  615. package/lib/models/financial-year/months.const.d.ts.map +1 -0
  616. package/lib/models/firm/firm.d.ts.map +1 -0
  617. package/lib/models/holding/holding-reinvest.d.ts.map +1 -0
  618. package/lib/models/holding/holding-sale.d.ts.map +1 -0
  619. package/lib/models/holding/holding-type-exchange.d.ts.map +1 -0
  620. package/lib/models/holding/holding-type.d.ts.map +1 -0
  621. package/lib/models/holding/holding.d.ts.map +1 -0
  622. package/lib/models/holding/index.d.ts.map +1 -0
  623. package/lib/models/income-position/income-position.d.ts.map +1 -0
  624. package/lib/models/income-source/income-source-chart-data.d.ts.map +1 -0
  625. package/lib/models/income-source/income-source-forecast.d.ts +1 -0
  626. package/lib/models/income-source/income-source-forecast.d.ts.map +1 -0
  627. package/lib/models/income-source/income-source-type.d.ts.map +1 -0
  628. package/lib/models/income-source/income-source.d.ts.map +1 -0
  629. package/lib/models/income-source/index.d.ts.map +1 -0
  630. package/lib/models/income-source/salary-forecast.d.ts +1 -0
  631. package/lib/models/income-source/salary-forecast.d.ts.map +1 -0
  632. package/lib/models/income-source/sole-forecast.d.ts.map +1 -0
  633. package/lib/models/index.d.ts.map +1 -0
  634. package/lib/models/loan/index.d.ts.map +1 -0
  635. package/lib/models/loan/loan-max-number-of-payments.enum.d.ts.map +1 -0
  636. package/lib/models/loan/loan-payment.d.ts.map +1 -0
  637. package/lib/models/loan/loan-payout.d.ts +1 -1
  638. package/lib/models/loan/loan-payout.d.ts.map +1 -0
  639. package/lib/models/loan/loan.d.ts +3 -0
  640. package/lib/models/loan/loan.d.ts.map +1 -0
  641. package/lib/models/notification/index.d.ts.map +1 -0
  642. package/lib/models/notification/notification.d.ts.map +1 -0
  643. package/lib/models/pdf/pdf-orientation.enum.d.ts.map +1 -0
  644. package/lib/models/pdf/pdf-settings.d.ts.map +1 -0
  645. package/lib/models/phone/phone.d.ts.map +1 -0
  646. package/lib/models/property/borrowing-report.d.ts +9 -0
  647. package/lib/models/property/borrowing-report.d.ts.map +1 -0
  648. package/lib/models/property/calculation-form-item.d.ts.map +1 -0
  649. package/lib/models/property/calculation-form-type.enum.d.ts.map +1 -0
  650. package/lib/models/property/capital-costs-itmes.const.d.ts.map +1 -0
  651. package/lib/models/property/corelogic-suggestion.d.ts.map +1 -0
  652. package/lib/models/property/index.d.ts +1 -0
  653. package/lib/models/property/index.d.ts.map +1 -0
  654. package/lib/models/property/property-category-movement.d.ts.map +1 -0
  655. package/lib/models/property/property-category.d.ts.map +1 -0
  656. package/lib/models/property/property-document.d.ts.map +1 -0
  657. package/lib/models/property/property-equity-chart-data.d.ts.map +1 -0
  658. package/lib/models/property/property-equity-chart-item.d.ts.map +1 -0
  659. package/lib/models/property/property-equity-chart-type.enum.d.ts.map +1 -0
  660. package/lib/models/property/property-forecast.d.ts.map +1 -0
  661. package/lib/models/property/property-sale/index.d.ts.map +1 -0
  662. package/lib/models/property/property-sale/property-sale-cost-base.d.ts.map +1 -0
  663. package/lib/models/property/property-sale/property-sale-tax-exemption-meta-field.d.ts.map +1 -0
  664. package/lib/models/property/property-sale/property-sale.d.ts.map +1 -0
  665. package/lib/models/property/property-sale/tax-exemption-meta-field.d.ts.map +1 -0
  666. package/lib/models/property/property-sale/tax-exemption.d.ts.map +1 -0
  667. package/lib/models/property/property-share.d.ts.map +1 -0
  668. package/lib/models/property/property-subscription.d.ts.map +1 -0
  669. package/lib/models/property/property-valuation.d.ts.map +1 -0
  670. package/lib/models/property/property.d.ts.map +1 -0
  671. package/lib/models/property/share-filter-options.enum.d.ts.map +1 -0
  672. package/lib/models/registration-invite/registration-invite.d.ts.map +1 -0
  673. package/lib/models/report/depreciation/depreciation-lvp-asset-type.enum.d.ts.map +1 -0
  674. package/lib/models/report/depreciation/depreciation-lvp-report-item.d.ts.map +1 -0
  675. package/lib/models/report/depreciation/depreciation-report-item.d.ts.map +1 -0
  676. package/lib/models/report/depreciation/index.d.ts.map +1 -0
  677. package/lib/models/report/index.d.ts.map +1 -0
  678. package/lib/models/report/my-tax/ato-links.d.ts.map +1 -0
  679. package/lib/models/report/my-tax/index.d.ts.map +1 -0
  680. package/lib/models/report/my-tax/my-tax-business-income-or-losses/business-income-or-losses-categories.const.d.ts.map +1 -0
  681. package/lib/models/report/my-tax/my-tax-business-income-or-losses/business-type.enum.d.ts.map +1 -0
  682. package/lib/models/report/my-tax/my-tax-business-income-or-losses/loss-type.enum.d.ts.map +1 -0
  683. package/lib/models/report/my-tax/my-tax-business-income-or-losses/my-tax-business-details/my-tax-business-details.d.ts.map +1 -0
  684. package/lib/models/report/my-tax/my-tax-business-income-or-losses/my-tax-business-income/my-tax-business-income.d.ts.map +1 -0
  685. package/lib/models/report/my-tax/my-tax-business-income-or-losses/my-tax-business-losses/my-tax-business-losses.d.ts.map +1 -0
  686. package/lib/models/report/my-tax/my-tax-cgt/cgt-exemption-and-rollover-code.enum.d.ts.map +1 -0
  687. package/lib/models/report/my-tax/my-tax-cgt/my-tax-cgt.d.ts.map +1 -0
  688. package/lib/models/report/my-tax/my-tax-deductions/deduction-clothing-type.enum.d.ts.map +1 -0
  689. package/lib/models/report/my-tax/my-tax-deductions/deduction-fields.const.d.ts.map +1 -0
  690. package/lib/models/report/my-tax/my-tax-deductions/deduction-self-education-type.enum.d.ts.map +1 -0
  691. package/lib/models/report/my-tax/my-tax-deductions/my-tax-deductions.d.ts.map +1 -0
  692. package/lib/models/report/my-tax/my-tax-dividends/my-tax-dividends.d.ts.map +1 -0
  693. package/lib/models/report/my-tax/my-tax-estimate/my-tax-estimate.d.ts.map +1 -0
  694. package/lib/models/report/my-tax/my-tax-income-statements/my-tax-income-statements.d.ts.map +1 -0
  695. package/lib/models/report/my-tax/my-tax-income-tests/my-tax-income-tests.d.ts.map +1 -0
  696. package/lib/models/report/my-tax/my-tax-interest/my-tax-interest.d.ts.map +1 -0
  697. package/lib/models/report/my-tax/my-tax-losses/my-tax-losses.d.ts.map +1 -0
  698. package/lib/models/report/my-tax/my-tax-offsets/my-tax-offsets.d.ts.map +1 -0
  699. package/lib/models/report/my-tax/my-tax-other-income/my-tax-other-income.d.ts.map +1 -0
  700. package/lib/models/report/my-tax/my-tax-partnerships-and-trusts/my-tax-partnerships-and-trusts.d.ts +1 -1
  701. package/lib/models/report/my-tax/my-tax-partnerships-and-trusts/my-tax-partnerships-and-trusts.d.ts.map +1 -0
  702. package/lib/models/report/my-tax/my-tax-rent/my-tax-rent.d.ts.map +1 -0
  703. package/lib/models/report/property/index.d.ts.map +1 -0
  704. package/lib/models/report/property/property-report-item-depreciation.d.ts.map +1 -0
  705. package/lib/models/report/property/property-report-item-transaction.d.ts.map +1 -0
  706. package/lib/models/report/property/property-report-item.d.ts.map +1 -0
  707. package/lib/models/report/sole/index.d.ts.map +1 -0
  708. package/lib/models/report/sole/sole-business/sole-business-loss-report.d.ts.map +1 -0
  709. package/lib/models/report/vehicle-expense/vehicle-expense.d.ts.map +1 -0
  710. package/lib/models/service-subscription/index.d.ts.map +1 -0
  711. package/lib/models/service-subscription/module-url-list.const.d.ts.map +1 -0
  712. package/lib/models/service-subscription/payment-method-brand.enum.d.ts.map +1 -0
  713. package/lib/models/service-subscription/service-payment-method.d.ts.map +1 -0
  714. package/lib/models/service-subscription/service-payment.d.ts.map +1 -0
  715. package/lib/models/service-subscription/service-price.d.ts.map +1 -0
  716. package/lib/models/service-subscription/service-product.d.ts.map +1 -0
  717. package/lib/models/service-subscription/service-promo-code-duration.enum.d.ts.map +1 -0
  718. package/lib/models/service-subscription/service-promo-code.d.ts.map +1 -0
  719. package/lib/models/service-subscription/service-subscription-item.d.ts.map +1 -0
  720. package/lib/models/service-subscription/service-subscription.d.ts.map +1 -0
  721. package/lib/models/sole/bas-report.d.ts.map +1 -0
  722. package/lib/models/sole/index.d.ts.map +1 -0
  723. package/lib/models/sole/sole-business-activity.d.ts.map +1 -0
  724. package/lib/models/sole/sole-business-allocation.d.ts.map +1 -0
  725. package/lib/models/sole/sole-business-loss-offset-rule.d.ts.map +1 -0
  726. package/lib/models/sole/sole-business-loss.d.ts.map +1 -0
  727. package/lib/models/sole/sole-business.d.ts.map +1 -0
  728. package/lib/models/sole/sole-contact.d.ts.map +1 -0
  729. package/lib/models/sole/sole-depreciation-method.d.ts.map +1 -0
  730. package/lib/models/sole/sole-details.d.ts.map +1 -0
  731. package/lib/models/sole/sole-invoice-item.d.ts.map +1 -0
  732. package/lib/models/sole/sole-invoice-template.d.ts.map +1 -0
  733. package/lib/models/sole/sole-invoice.d.ts.map +1 -0
  734. package/lib/models/tax-return/index.d.ts.map +1 -0
  735. package/lib/models/tax-return/tax-return-category.d.ts.map +1 -0
  736. package/lib/models/tax-return/tax-return-item.d.ts.map +1 -0
  737. package/lib/models/tax-return/tax-return.d.ts.map +1 -0
  738. package/lib/models/tax-review/tax-review.d.ts.map +1 -0
  739. package/lib/models/tax-summary/report-item-details.d.ts.map +1 -0
  740. package/lib/models/tax-summary/report-item.d.ts.map +1 -0
  741. package/lib/models/tax-summary/tax-summary-section.d.ts.map +1 -0
  742. package/lib/models/tax-summary/tax-summary-type.enum.d.ts.map +1 -0
  743. package/lib/models/tax-summary/tax-summary.d.ts.map +1 -0
  744. package/lib/models/toast/toast-type.enum.d.ts.map +1 -0
  745. package/lib/models/toast/toast.d.ts.map +1 -0
  746. package/lib/models/transaction/allocation-rule-condition.d.ts.map +1 -0
  747. package/lib/models/transaction/allocation-rule-transaction-meta-field.d.ts.map +1 -0
  748. package/lib/models/transaction/allocation-rule-transaction.d.ts.map +1 -0
  749. package/lib/models/transaction/allocation-rule.d.ts.map +1 -0
  750. package/lib/models/transaction/income-amount-type.enum.d.ts.map +1 -0
  751. package/lib/models/transaction/index.d.ts.map +1 -0
  752. package/lib/models/transaction/transaction-allocation.d.ts.map +1 -0
  753. package/lib/models/transaction/transaction-category.enum.d.ts.map +1 -0
  754. package/lib/models/transaction/transaction-meta-field.d.ts.map +1 -0
  755. package/lib/models/transaction/transaction-receipt.d.ts.map +1 -0
  756. package/lib/models/transaction/transaction.d.ts.map +1 -0
  757. package/lib/models/user/index.d.ts.map +1 -0
  758. package/lib/models/user/my-account-history-initiated-by.enum.d.ts.map +1 -0
  759. package/lib/models/user/my-account-history-status.enum.d.ts.map +1 -0
  760. package/lib/models/user/my-account-history-type.enum.d.ts.map +1 -0
  761. package/lib/models/user/my-account-history.d.ts.map +1 -0
  762. package/lib/models/user/occupation.d.ts.map +1 -0
  763. package/lib/models/user/user-roles.const.d.ts.map +1 -0
  764. package/lib/models/user/user-to-register.d.ts.map +1 -0
  765. package/lib/models/user/user-work-position.const.d.ts.map +1 -0
  766. package/lib/models/user/user.d.ts.map +1 -0
  767. package/lib/models/user-event/user-event-setting-field.enum.d.ts.map +1 -0
  768. package/lib/models/user-event/user-event-setting.d.ts.map +1 -0
  769. package/lib/models/user-event/user-event-type-category.d.ts.map +1 -0
  770. package/lib/models/user-event/user-event-type.d.ts.map +1 -0
  771. package/lib/models/vehicle/index.d.ts.map +1 -0
  772. package/lib/models/vehicle/logbook-period.d.ts.map +1 -0
  773. package/lib/models/vehicle/vehicle-claim-details.d.ts.map +1 -0
  774. package/lib/models/vehicle/vehicle-claim.d.ts.map +1 -0
  775. package/lib/models/vehicle/vehicle-logbook.d.ts.map +1 -0
  776. package/lib/models/vehicle/vehicle.d.ts.map +1 -0
  777. package/lib/services/account-setup/account-setup.service.d.ts.map +1 -0
  778. package/lib/services/account-setup/index.d.ts.map +1 -0
  779. package/lib/services/affiliate/index.d.ts.map +1 -0
  780. package/lib/services/affiliate/rewardful/index.d.ts.map +1 -0
  781. package/lib/services/affiliate/rewardful/rewardful.service.d.ts.map +1 -0
  782. package/lib/services/asset/assets.service.d.ts.map +1 -0
  783. package/lib/services/asset/index.d.ts.map +1 -0
  784. package/lib/services/auth/auth.service.d.ts.map +1 -0
  785. package/lib/services/auth/index.d.ts.map +1 -0
  786. package/lib/services/auth/jwt.service.d.ts.map +1 -0
  787. package/lib/services/bank/bank-account-calculation.service.d.ts.map +1 -0
  788. package/lib/services/bank/bank-transaction-calculation.service.d.ts.map +1 -0
  789. package/lib/services/bank/index.d.ts.map +1 -0
  790. package/lib/services/data.service.d.ts.map +1 -0
  791. package/lib/services/event/event-dispatcher.service.d.ts.map +1 -0
  792. package/lib/services/event/index.d.ts.map +1 -0
  793. package/lib/services/event/sse.service.d.ts.map +1 -0
  794. package/lib/services/export/export-formatter.service.d.ts.map +1 -0
  795. package/lib/services/export/index.d.ts.map +1 -0
  796. package/lib/services/header-title/header-title.service.d.ts.map +1 -0
  797. package/lib/services/header-title/index.d.ts.map +1 -0
  798. package/lib/services/http/address/address.service.d.ts.map +1 -0
  799. package/lib/services/http/address/index.d.ts.map +1 -0
  800. package/lib/services/http/bank/bank-account/bank-account.service.d.ts.map +1 -0
  801. package/lib/services/http/bank/bank-account/index.d.ts.map +1 -0
  802. package/lib/services/http/bank/bank-connection/bank-connection-messages.enum.d.ts.map +1 -0
  803. package/lib/services/http/bank/bank-connection/bank-connection.service.d.ts.map +1 -0
  804. package/lib/services/http/bank/bank-connection/index.d.ts.map +1 -0
  805. package/lib/services/http/bank/bank-transaction/bank-transaction.service.d.ts.map +1 -0
  806. package/lib/services/http/bank/bank-transaction/index.d.ts.map +1 -0
  807. package/lib/services/http/bank/bank.service.d.ts.map +1 -0
  808. package/lib/services/http/bank/basiq/basiq-messages.enum.d.ts.map +1 -0
  809. package/lib/services/http/bank/basiq/basiq-token.service.d.ts.map +1 -0
  810. package/lib/services/http/bank/basiq/basiq.service.d.ts.map +1 -0
  811. package/lib/services/http/bank/basiq/index.d.ts.map +1 -0
  812. package/lib/services/http/bank/index.d.ts.map +1 -0
  813. package/lib/services/http/budget/budget-messages.enum.d.ts.map +1 -0
  814. package/lib/services/http/budget/budget.service.d.ts.map +1 -0
  815. package/lib/services/http/budget/index.d.ts.map +1 -0
  816. package/lib/services/http/chart-accounts/chart-accounts-depreciations/chart-accounts-depreciations.service.d.ts.map +1 -0
  817. package/lib/services/http/chart-accounts/chart-accounts-depreciations/index.d.ts.map +1 -0
  818. package/lib/services/http/chart-accounts/chart-accounts.service.d.ts.map +1 -0
  819. package/lib/services/http/chart-accounts/index.d.ts.map +1 -0
  820. package/lib/services/http/chat/chat.service.d.ts.map +1 -0
  821. package/lib/services/http/chat/index.d.ts.map +1 -0
  822. package/lib/services/http/chat/message-document.service.d.ts.map +1 -0
  823. package/lib/services/http/chat/message.service.d.ts.map +1 -0
  824. package/lib/services/http/client/capital-gain/annual-client-details.service.d.ts.map +1 -0
  825. package/lib/services/http/client/index.d.ts.map +1 -0
  826. package/lib/services/http/client/occupation/occupation.service.d.ts.map +1 -0
  827. package/lib/services/http/depreciation/depreciation-capital-project/depreciation-capital-project.service.d.ts.map +1 -0
  828. package/lib/services/http/depreciation/depreciation-capital-project/index.d.ts.map +1 -0
  829. package/lib/services/http/depreciation/depreciation-receipt/depreciation-receipt.service.d.ts.map +1 -0
  830. package/lib/services/http/depreciation/depreciation-receipt/index.d.ts.map +1 -0
  831. package/lib/services/http/depreciation/depreciation.service.d.ts.map +1 -0
  832. package/lib/services/http/depreciation/index.d.ts.map +1 -0
  833. package/lib/services/http/document/document-folder/document-folder.service.d.ts.map +1 -0
  834. package/lib/services/http/document/document.service.d.ts.map +1 -0
  835. package/lib/services/http/document/index.d.ts.map +1 -0
  836. package/lib/services/http/facebook/facebook-auth-options.interface.d.ts.map +1 -0
  837. package/lib/services/http/facebook/facebook-auth-response.interface.d.ts.map +1 -0
  838. package/lib/services/http/facebook/facebook-status-response.interface.d.ts.map +1 -0
  839. package/lib/services/http/facebook/facebook.service.d.ts.map +1 -0
  840. package/lib/services/http/facebook/index.d.ts.map +1 -0
  841. package/lib/services/http/file/file.service.d.ts.map +1 -0
  842. package/lib/services/http/file/index.d.ts.map +1 -0
  843. package/lib/services/http/firm/client-income/client-income-types.service.d.ts.map +1 -0
  844. package/lib/services/http/firm/client-income/index.d.ts.map +1 -0
  845. package/lib/services/http/firm/client-invite/client-invite-messages.enum.d.ts.map +1 -0
  846. package/lib/services/http/firm/client-invite/client-invite.service.d.ts.map +1 -0
  847. package/lib/services/http/firm/client-invite/index.d.ts.map +1 -0
  848. package/lib/services/http/firm/client-movement/client-movement.service.d.ts.map +1 -0
  849. package/lib/services/http/firm/client-movement/index.d.ts.map +1 -0
  850. package/lib/services/http/firm/employee/employee.service.d.ts.map +1 -0
  851. package/lib/services/http/firm/employee/index.d.ts.map +1 -0
  852. package/lib/services/http/firm/employee-invite/employee-invite.service.d.ts.map +1 -0
  853. package/lib/services/http/firm/employee-invite/index.d.ts.map +1 -0
  854. package/lib/services/http/firm/firm.service.d.ts.map +1 -0
  855. package/lib/services/http/firm/index.d.ts.map +1 -0
  856. package/lib/services/http/firm/portfolio-report/client-portfolio-report.service.d.ts.map +1 -0
  857. package/lib/services/http/firm/portfolio-report/index.d.ts.map +1 -0
  858. package/lib/services/http/google/google.service.d.ts.map +1 -0
  859. package/lib/services/http/google/index.d.ts.map +1 -0
  860. package/lib/services/http/holding/holding-messages.enum.d.ts.map +1 -0
  861. package/lib/services/http/holding/holding-sale-messages.enum.d.ts.map +1 -0
  862. package/lib/services/http/holding/holding-sale.service.d.ts.map +1 -0
  863. package/lib/services/http/holding/holding-type-messages.enum.d.ts.map +1 -0
  864. package/lib/services/http/holding/holding-type.service.d.ts.map +1 -0
  865. package/lib/services/http/holding/holding.service.d.ts.map +1 -0
  866. package/lib/services/http/holding/index.d.ts.map +1 -0
  867. package/lib/services/http/income-source/income-source-forecast/income-source-forecast.service.d.ts +1 -0
  868. package/lib/services/http/income-source/income-source-forecast/income-source-forecast.service.d.ts.map +1 -0
  869. package/lib/services/http/income-source/income-source-forecast/index.d.ts.map +1 -0
  870. package/lib/services/http/income-source/income-source.service.d.ts.map +1 -0
  871. package/lib/services/http/income-source/index.d.ts.map +1 -0
  872. package/lib/services/http/income-source/salary-forecast/index.d.ts.map +1 -0
  873. package/lib/services/http/income-source/salary-forecast/salary-forecast.service.d.ts.map +1 -0
  874. package/lib/services/http/income-source/sole-forecast/index.d.ts.map +1 -0
  875. package/lib/services/http/income-source/sole-forecast/sole-forecast.service.d.ts.map +1 -0
  876. package/lib/services/http/index.d.ts.map +1 -0
  877. package/lib/services/http/loan/borrowing-expense/borrowing-expense.service.d.ts.map +1 -0
  878. package/lib/services/http/loan/borrowing-expense/index.d.ts.map +1 -0
  879. package/lib/services/http/loan/index.d.ts.map +1 -0
  880. package/lib/services/http/loan/loan.service.d.ts.map +1 -0
  881. package/lib/services/http/property/borrowing-report/borrowing-report-messages.enum.d.ts +4 -0
  882. package/lib/services/http/property/borrowing-report/borrowing-report-messages.enum.d.ts.map +1 -0
  883. package/lib/services/http/property/borrowing-report/borrowing-report.service.d.ts +14 -0
  884. package/lib/services/http/property/borrowing-report/borrowing-report.service.d.ts.map +1 -0
  885. package/lib/services/http/property/borrowing-report/index.d.ts +2 -0
  886. package/lib/services/http/property/borrowing-report/index.d.ts.map +1 -0
  887. package/lib/services/http/property/index.d.ts +1 -0
  888. package/lib/services/http/property/index.d.ts.map +1 -0
  889. package/lib/services/http/property/property-category/index.d.ts.map +1 -0
  890. package/lib/services/http/property/property-category/property-category.service.d.ts.map +1 -0
  891. package/lib/services/http/property/property-category-movement/index.d.ts.map +1 -0
  892. package/lib/services/http/property/property-category-movement/property-category-movement.service.d.ts.map +1 -0
  893. package/lib/services/http/property/property-document/index.d.ts.map +1 -0
  894. package/lib/services/http/property/property-document/property-document.service.d.ts.map +1 -0
  895. package/lib/services/http/property/property-sale/index.d.ts.map +1 -0
  896. package/lib/services/http/property/property-sale/property-sale.service.d.ts.map +1 -0
  897. package/lib/services/http/property/property-share/index.d.ts.map +1 -0
  898. package/lib/services/http/property/property-share/property-share.service.d.ts.map +1 -0
  899. package/lib/services/http/property/property.service.d.ts.map +1 -0
  900. package/lib/services/http/receipt/index.d.ts.map +1 -0
  901. package/lib/services/http/receipt/receipt.service.d.ts.map +1 -0
  902. package/lib/services/http/rest/http-method.type.d.ts.map +1 -0
  903. package/lib/services/http/rest/index.d.ts.map +1 -0
  904. package/lib/services/http/rest/rest-method.type.d.ts.map +1 -0
  905. package/lib/services/http/rest/rest-old.service.d.ts.map +1 -0
  906. package/lib/services/http/rest/rest.service.d.ts.map +1 -0
  907. package/lib/services/http/service-notification/index.d.ts.map +1 -0
  908. package/lib/services/http/service-notification/service-notification.service.d.ts.map +1 -0
  909. package/lib/services/http/sole/bas-report/bas-report.service.d.ts.map +1 -0
  910. package/lib/services/http/sole/index.d.ts.map +1 -0
  911. package/lib/services/http/sole/sole-business/messages.enum.d.ts.map +1 -0
  912. package/lib/services/http/sole/sole-business/sole-business.service.d.ts.map +1 -0
  913. package/lib/services/http/sole/sole-business-activity/sole-business-activity.service.d.ts.map +1 -0
  914. package/lib/services/http/sole/sole-business-loss/sole-business-loss-rules/sole-business-loss-offset-rule.service.d.ts.map +1 -0
  915. package/lib/services/http/sole/sole-business-loss/sole-business-loss.service.d.ts.map +1 -0
  916. package/lib/services/http/sole/sole-contact/sole-contact.service.d.ts.map +1 -0
  917. package/lib/services/http/sole/sole-depreciation-method/sole-depreciation-method.service.d.ts.map +1 -0
  918. package/lib/services/http/sole/sole-details/sole-details.service.d.ts.map +1 -0
  919. package/lib/services/http/sole/sole-invoice/sole-invoice.service.d.ts.map +1 -0
  920. package/lib/services/http/sole/sole-invoice-template/sole-invoice-template.service.d.ts.map +1 -0
  921. package/lib/services/http/subscription/index.d.ts.map +1 -0
  922. package/lib/services/http/subscription/service-payment/service-payment.service.d.ts.map +1 -0
  923. package/lib/services/http/subscription/service-payment-method/service-payment-method.service.d.ts.map +1 -0
  924. package/lib/services/http/subscription/service-price/service-price.service.d.ts.map +1 -0
  925. package/lib/services/http/subscription/service-product/service-product.service.d.ts.map +1 -0
  926. package/lib/services/http/subscription/service-subscription/subscription.service.d.ts.map +1 -0
  927. package/lib/services/http/tax-review/index.d.ts.map +1 -0
  928. package/lib/services/http/tax-review/tax-review-history/tax-review-history.service.d.ts.map +1 -0
  929. package/lib/services/http/tax-review/tax-review.service.d.ts.map +1 -0
  930. package/lib/services/http/tax-summary/index.d.ts.map +1 -0
  931. package/lib/services/http/tax-summary/tax-summary.service.d.ts.map +1 -0
  932. package/lib/services/http/transaction/index.d.ts.map +1 -0
  933. package/lib/services/http/transaction/transaction-allocation/allocation-rule/allocation-rule.service.d.ts.map +1 -0
  934. package/lib/services/http/transaction/transaction-allocation/transaction-allocation.service.d.ts.map +1 -0
  935. package/lib/services/http/transaction/transaction-receipt/transaction-receipt.service.d.ts.map +1 -0
  936. package/lib/services/http/transaction/transaction.service.d.ts.map +1 -0
  937. package/lib/services/http/tutorial-video/index.d.ts.map +1 -0
  938. package/lib/services/http/tutorial-video/tutorial-video-response.interface.d.ts.map +1 -0
  939. package/lib/services/http/tutorial-video/tutorial-video.service.d.ts.map +1 -0
  940. package/lib/services/http/tutorial-video/video-source.interface.d.ts.map +1 -0
  941. package/lib/services/http/user/index.d.ts.map +1 -0
  942. package/lib/services/http/user/user-event-setting/user-event-setting.service.d.ts.map +1 -0
  943. package/lib/services/http/user/user-event-type/user-event-type.service.d.ts.map +1 -0
  944. package/lib/services/http/user/user.service.d.ts.map +1 -0
  945. package/lib/services/http/user/users-invite/users-invite.service.d.ts.map +1 -0
  946. package/lib/services/http/vehicle/index.d.ts.map +1 -0
  947. package/lib/services/http/vehicle/vehicle-claim-details.service.d.ts.map +1 -0
  948. package/lib/services/http/vehicle/vehicle-claim.service.d.ts.map +1 -0
  949. package/lib/services/http/vehicle/vehicle-logbook.service.d.ts.map +1 -0
  950. package/lib/services/http/vehicle/vehicle.service.d.ts.map +1 -0
  951. package/lib/services/index.d.ts.map +1 -0
  952. package/lib/services/intercom/index.d.ts.map +1 -0
  953. package/lib/services/intercom/intercom.service.d.ts.map +1 -0
  954. package/lib/services/json/chart-accounts/chart-accounts-value.service.d.ts.map +1 -0
  955. package/lib/services/json/holding/holding-type-exchange.service.d.ts.map +1 -0
  956. package/lib/services/json/income-source/income-source-type.service.d.ts.map +1 -0
  957. package/lib/services/json/index.d.ts.map +1 -0
  958. package/lib/services/json/tax-exemption/tax-exemption.service.d.ts.map +1 -0
  959. package/lib/services/json/tax-return/tax-return-item.service.d.ts.map +1 -0
  960. package/lib/services/pdf/index.d.ts.map +1 -0
  961. package/lib/services/pdf/js-pdf.d.ts.map +1 -0
  962. package/lib/services/pdf/pdf-from-dom-element/file-settings.d.ts.map +1 -0
  963. package/lib/services/pdf/pdf-from-dom-element/pdf-from-dom-element.service.d.ts.map +1 -0
  964. package/lib/services/pdf/pdf-from-table/file-settings.d.ts.map +1 -0
  965. package/lib/services/pdf/pdf-from-table/pdf-from-data-table/pdf-from-data-table.service.d.ts.map +1 -0
  966. package/lib/services/pdf/pdf-from-table/pdf-from-html-table/pdf-from-html-table.service.d.ts.map +1 -0
  967. package/lib/services/pdf/pdf-from-table/pdf-from-table.service.d.ts.map +1 -0
  968. package/lib/services/preloader/index.d.ts.map +1 -0
  969. package/lib/services/preloader/preloader.service.d.ts.map +1 -0
  970. package/lib/services/property/corelogic/corelogic.service.d.ts.map +1 -0
  971. package/lib/services/property/corelogic/index.d.ts.map +1 -0
  972. package/lib/services/property/equity-position-chart/equity-position-chart.service.d.ts.map +1 -0
  973. package/lib/services/property/equity-position-chart/index.d.ts.map +1 -0
  974. package/lib/services/property/index.d.ts.map +1 -0
  975. package/lib/services/property/property-calculation/index.d.ts.map +1 -0
  976. package/lib/services/property/property-calculation/property-calculation.service.d.ts.map +1 -0
  977. package/lib/services/report/index.d.ts.map +1 -0
  978. package/lib/services/report/property/property-transaction-report.service.d.ts.map +1 -0
  979. package/lib/services/toast/index.d.ts.map +1 -0
  980. package/lib/services/toast/toast.service.d.ts.map +1 -0
  981. package/lib/services/transaction/index.d.ts.map +1 -0
  982. package/lib/services/transaction/transaction-calculation.service.d.ts.map +1 -0
  983. package/lib/services/user/index.d.ts.map +1 -0
  984. package/lib/services/user/user-switcher.service.d.ts.map +1 -0
  985. package/lib/services/vehicle/index.d.ts.map +1 -0
  986. package/lib/services/vehicle/logbook-best-period.service.d.ts.map +1 -0
  987. package/lib/services/xlsx/index.d.ts.map +1 -0
  988. package/lib/services/xlsx/xlsx.service.d.ts.map +1 -0
  989. package/lib/tt-core.module.d.ts.map +1 -0
  990. package/lib/validators/address-corelogic.validator.d.ts.map +1 -0
  991. package/lib/validators/at-least-one-enabled.validator.d.ts.map +1 -0
  992. package/lib/validators/at-least-one.validator.d.ts.map +1 -0
  993. package/lib/validators/autocomplete.validator.d.ts.map +1 -0
  994. package/lib/validators/conditional.validator.d.ts.map +1 -0
  995. package/lib/validators/current-fin-year.validator.d.ts.map +1 -0
  996. package/lib/validators/date-range.validator.d.ts.map +1 -0
  997. package/lib/validators/fields-sum.validator.d.ts.map +1 -0
  998. package/lib/validators/file.validator.d.ts.map +1 -0
  999. package/lib/validators/greater-than.validator.d.ts.map +1 -0
  1000. package/lib/validators/index.d.ts.map +1 -0
  1001. package/lib/validators/min-date/messages.enum.d.ts.map +1 -0
  1002. package/lib/validators/min-date/min-date.validator.d.ts.map +1 -0
  1003. package/lib/validators/password-match.validator.d.ts.map +1 -0
  1004. package/lib/validators/password.validator.d.ts.map +1 -0
  1005. package/lib/validators/phone-number.validator.d.ts.map +1 -0
  1006. package/lib/validators/required-length.validator.d.ts.map +1 -0
  1007. package/lib/validators/transactions-meta-fields.validator.d.ts.map +1 -0
  1008. package/package.json +1 -1
  1009. package/public-api.d.ts +1 -8
  1010. package/public-api.d.ts.map +1 -0
  1011. package/taxtank-core.d.ts.map +1 -0
  1012. package/esm2020/lib/collections/income-source.collection.mjs +0 -37
  1013. package/esm2020/lib/db/Enums/loan-frequency.enum.mjs +0 -8
  1014. package/esm2020/lib/db/Enums/loan-interest-type.enum.mjs +0 -6
  1015. package/esm2020/lib/db/Enums/loan-payout-type.enum.mjs +0 -6
  1016. package/esm2020/lib/db/Enums/loan-repayment-type.enum.mjs +0 -6
  1017. package/esm2020/lib/db/Enums/loan-vehicle-type.enum.mjs +0 -7
  1018. /package/lib/db/Enums/{loan-bank-type.enum.d.ts → bank/loan/loan-bank-type.enum.d.ts} +0 -0
  1019. /package/lib/db/Enums/{loan-frequency.enum.d.ts → bank/loan/loan-frequency.enum.d.ts} +0 -0
  1020. /package/lib/db/Enums/{loan-interest-type.enum.d.ts → bank/loan/loan-interest-type.enum.d.ts} +0 -0
  1021. /package/lib/db/Enums/{loan-payout-type.enum.d.ts → bank/loan/loan-payout-type.enum.d.ts} +0 -0
  1022. /package/lib/db/Enums/{loan-repayment-frequency.enum.d.ts → bank/loan/loan-repayment-frequency.enum.d.ts} +0 -0
  1023. /package/lib/db/Enums/{loan-repayment-type.enum.d.ts → bank/loan/loan-repayment-type.enum.d.ts} +0 -0
  1024. /package/lib/db/Enums/{loan-type.enum.d.ts → bank/loan/loan-type.enum.d.ts} +0 -0
  1025. /package/lib/db/Enums/{loan-vehicle-type.enum.d.ts → bank/loan/loan-vehicle-type.enum.d.ts} +0 -0
@@ -3,10 +3,10 @@ import compact from 'lodash/compact';
3
3
  export class AccountSetupItemCollection extends Collection {
4
4
  constructor(items) {
5
5
  super(compact(items));
6
- this.sortBy('isCompleted', false);
6
+ this.sortBy('isCompleted', 'asc');
7
7
  }
8
8
  isCompleted() {
9
9
  return this.filterBy('isCompleted', true).length === this.length;
10
10
  }
11
11
  }
12
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNjb3VudC1zZXR1cC1pdGVtLmNvbGxlY3Rpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvY29sbGVjdGlvbnMvYWNjb3VudC1zZXR1cC1pdGVtLmNvbGxlY3Rpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUMxQyxPQUFPLE9BQU8sTUFBTSxnQkFBZ0IsQ0FBQztBQUVyQyxNQUFNLE9BQU8sMEJBQTJCLFNBQVEsVUFBNEI7SUFDMUUsWUFBWSxLQUF5QjtRQUNuQyxLQUFLLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7UUFDdEIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxhQUFhLEVBQUUsS0FBSyxDQUFDLENBQUE7SUFDbkMsQ0FBQztJQUVELFdBQVc7UUFDVCxPQUFPLElBQUksQ0FBQyxRQUFRLENBQUMsYUFBYSxFQUFFLElBQUksQ0FBQyxDQUFDLE1BQU0sS0FBSyxJQUFJLENBQUMsTUFBTSxDQUFDO0lBQ25FLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFjY291bnRTZXR1cEl0ZW0gfSBmcm9tICcuLi9tb2RlbHMvYWNjb3VudC1zZXR1cC9hY2NvdW50LXNldHVwLWl0ZW0nO1xuaW1wb3J0IHsgQ29sbGVjdGlvbiB9IGZyb20gJy4vY29sbGVjdGlvbic7XG5pbXBvcnQgY29tcGFjdCBmcm9tICdsb2Rhc2gvY29tcGFjdCc7XG5cbmV4cG9ydCBjbGFzcyBBY2NvdW50U2V0dXBJdGVtQ29sbGVjdGlvbiBleHRlbmRzIENvbGxlY3Rpb248QWNjb3VudFNldHVwSXRlbT4ge1xuICBjb25zdHJ1Y3RvcihpdGVtczogQWNjb3VudFNldHVwSXRlbVtdKSB7XG4gICAgc3VwZXIoY29tcGFjdChpdGVtcykpO1xuICAgIHRoaXMuc29ydEJ5KCdpc0NvbXBsZXRlZCcsIGZhbHNlKVxuICB9XG5cbiAgaXNDb21wbGV0ZWQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuZmlsdGVyQnkoJ2lzQ29tcGxldGVkJywgdHJ1ZSkubGVuZ3RoID09PSB0aGlzLmxlbmd0aDtcbiAgfVxufVxuIl19
12
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNjb3VudC1zZXR1cC1pdGVtLmNvbGxlY3Rpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvY29sbGVjdGlvbnMvYWNjb3VudC1zZXR1cC1pdGVtLmNvbGxlY3Rpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUMxQyxPQUFPLE9BQU8sTUFBTSxnQkFBZ0IsQ0FBQztBQUVyQyxNQUFNLE9BQU8sMEJBQTJCLFNBQVEsVUFBNEI7SUFDMUUsWUFBWSxLQUF5QjtRQUNuQyxLQUFLLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7UUFDdEIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxhQUFhLEVBQUUsS0FBSyxDQUFDLENBQUE7SUFDbkMsQ0FBQztJQUVELFdBQVc7UUFDVCxPQUFPLElBQUksQ0FBQyxRQUFRLENBQUMsYUFBYSxFQUFFLElBQUksQ0FBQyxDQUFDLE1BQU0sS0FBSyxJQUFJLENBQUMsTUFBTSxDQUFDO0lBQ25FLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFjY291bnRTZXR1cEl0ZW0gfSBmcm9tICcuLi9tb2RlbHMvYWNjb3VudC1zZXR1cC9hY2NvdW50LXNldHVwLWl0ZW0nO1xuaW1wb3J0IHsgQ29sbGVjdGlvbiB9IGZyb20gJy4vY29sbGVjdGlvbic7XG5pbXBvcnQgY29tcGFjdCBmcm9tICdsb2Rhc2gvY29tcGFjdCc7XG5cbmV4cG9ydCBjbGFzcyBBY2NvdW50U2V0dXBJdGVtQ29sbGVjdGlvbiBleHRlbmRzIENvbGxlY3Rpb248QWNjb3VudFNldHVwSXRlbT4ge1xuICBjb25zdHJ1Y3RvcihpdGVtczogQWNjb3VudFNldHVwSXRlbVtdKSB7XG4gICAgc3VwZXIoY29tcGFjdChpdGVtcykpO1xuICAgIHRoaXMuc29ydEJ5KCdpc0NvbXBsZXRlZCcsICdhc2MnKVxuICB9XG5cbiAgaXNDb21wbGV0ZWQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuZmlsdGVyQnkoJ2lzQ29tcGxldGVkJywgdHJ1ZSkubGVuZ3RoID09PSB0aGlzLmxlbmd0aDtcbiAgfVxufVxuIl19
@@ -1,6 +1,5 @@
1
1
  import { Collection } from './collection';
2
2
  import { AllocationRuleTypeEnum } from '../db/Enums';
3
- import { CollectionDictionary } from './collection-dictionary';
4
3
  export class AllocationRuleCollection extends Collection {
5
4
  getExpense() {
6
5
  return this.filterBy('type', AllocationRuleTypeEnum.EXPENSE);
@@ -17,11 +16,11 @@ export class AllocationRuleCollection extends Collection {
17
16
  * @TODO Alex: break bank transactions by pagination in case of bad performance
18
17
  */
19
18
  groupByBankTransaction(bankTransactions) {
20
- const rulesByBankTransaction = new CollectionDictionary(new AllocationRuleCollection([]));
19
+ const rulesByBankTransaction = new AllocationRuleCollection([]).groupBy();
21
20
  bankTransactions.toArray().forEach((bankTransaction) => {
22
21
  rulesByBankTransaction.add(bankTransaction.id, this.filter((rule) => rule.matchBankTransaction(bankTransaction)));
23
22
  });
24
23
  return rulesByBankTransaction;
25
24
  }
26
25
  }
27
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWxsb2NhdGlvbi1ydWxlLmNvbGxlY3Rpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvY29sbGVjdGlvbnMvYWxsb2NhdGlvbi1ydWxlLmNvbGxlY3Rpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUUxQyxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDckQsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFHL0QsTUFBTSxPQUFPLHdCQUF5QixTQUFRLFVBQTBCO0lBQ3RFLFVBQVU7UUFDUixPQUFPLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxFQUFFLHNCQUFzQixDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQy9ELENBQUM7SUFFRCxTQUFTO1FBQ1AsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sRUFBRSxzQkFBc0IsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUM5RCxDQUFDO0lBRUQsV0FBVztRQUNULE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLEVBQUUsc0JBQXNCLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDaEUsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxzQkFBc0IsQ0FBQyxnQkFBMkM7UUFDaEUsTUFBTSxzQkFBc0IsR0FBbUQsSUFBSSxvQkFBb0IsQ0FBQyxJQUFJLHdCQUF3QixDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFFMUksZ0JBQWdCLENBQUMsT0FBTyxFQUFFLENBQUMsT0FBTyxDQUFDLENBQUMsZUFBZ0MsRUFBRSxFQUFFO1lBQ3RFLHNCQUFzQixDQUFDLEdBQUcsQ0FBQyxlQUFlLENBQUMsRUFBRSxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxJQUFvQixFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsb0JBQW9CLENBQUMsZUFBZSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ3BJLENBQUMsQ0FBQyxDQUFDO1FBRUgsT0FBTyxzQkFBc0IsQ0FBQztJQUNoQyxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb2xsZWN0aW9uIH0gZnJvbSAnLi9jb2xsZWN0aW9uJztcbmltcG9ydCB7IEFsbG9jYXRpb25SdWxlLCBCYW5rVHJhbnNhY3Rpb24gfSBmcm9tICcuLi9tb2RlbHMnO1xuaW1wb3J0IHsgQWxsb2NhdGlvblJ1bGVUeXBlRW51bSB9IGZyb20gJy4uL2RiL0VudW1zJztcbmltcG9ydCB7IENvbGxlY3Rpb25EaWN0aW9uYXJ5IH0gZnJvbSAnLi9jb2xsZWN0aW9uLWRpY3Rpb25hcnknO1xuaW1wb3J0IHsgQmFua1RyYW5zYWN0aW9uQ29sbGVjdGlvbiB9IGZyb20gJy4vYmFuay10cmFuc2FjdGlvbi5jb2xsZWN0aW9uJztcblxuZXhwb3J0IGNsYXNzIEFsbG9jYXRpb25SdWxlQ29sbGVjdGlvbiBleHRlbmRzIENvbGxlY3Rpb248QWxsb2NhdGlvblJ1bGU+IHtcbiAgZ2V0RXhwZW5zZSgpOiB0aGlzIHtcbiAgICByZXR1cm4gdGhpcy5maWx0ZXJCeSgndHlwZScsIEFsbG9jYXRpb25SdWxlVHlwZUVudW0uRVhQRU5TRSk7XG4gIH1cblxuICBnZXRJbmNvbWUoKTogdGhpcyB7XG4gICAgcmV0dXJuIHRoaXMuZmlsdGVyQnkoJ3R5cGUnLCBBbGxvY2F0aW9uUnVsZVR5cGVFbnVtLklOQ09NRSk7XG4gIH1cblxuICBnZXRUcmFuc2ZlcigpOiB0aGlzIHtcbiAgICByZXR1cm4gdGhpcy5maWx0ZXJCeSgndHlwZScsIEFsbG9jYXRpb25SdWxlVHlwZUVudW0uVFJBTlNGRVIpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCBkaWN0aW9uYXJ5IHdoZXJlIGtleSBpcyBiYW5rIHRyYW5zYWN0aW9uIGlkIGFuZCB2YWx1ZSBpcyBjb2xsZWN0aW9uIG9mIG1hdGNoZWQgcnVsZXMuXG4gICAqIEdyb3VwIGJ5IHRoaXMgd2F5IGZvciBiZXR0ZXIgcGVyZm9ybWFuY2VcbiAgICogQFRPRE8gQWxleDogYnJlYWsgYmFuayB0cmFuc2FjdGlvbnMgYnkgcGFnaW5hdGlvbiBpbiBjYXNlIG9mIGJhZCBwZXJmb3JtYW5jZVxuICAgKi9cbiAgZ3JvdXBCeUJhbmtUcmFuc2FjdGlvbihiYW5rVHJhbnNhY3Rpb25zOiBCYW5rVHJhbnNhY3Rpb25Db2xsZWN0aW9uKTogQ29sbGVjdGlvbkRpY3Rpb25hcnk8QWxsb2NhdGlvblJ1bGVDb2xsZWN0aW9uPiB7XG4gICAgY29uc3QgcnVsZXNCeUJhbmtUcmFuc2FjdGlvbjogQ29sbGVjdGlvbkRpY3Rpb25hcnk8QWxsb2NhdGlvblJ1bGVDb2xsZWN0aW9uPiA9IG5ldyBDb2xsZWN0aW9uRGljdGlvbmFyeShuZXcgQWxsb2NhdGlvblJ1bGVDb2xsZWN0aW9uKFtdKSk7XG5cbiAgICBiYW5rVHJhbnNhY3Rpb25zLnRvQXJyYXkoKS5mb3JFYWNoKChiYW5rVHJhbnNhY3Rpb246IEJhbmtUcmFuc2FjdGlvbikgPT4ge1xuICAgICAgcnVsZXNCeUJhbmtUcmFuc2FjdGlvbi5hZGQoYmFua1RyYW5zYWN0aW9uLmlkLCB0aGlzLmZpbHRlcigocnVsZTogQWxsb2NhdGlvblJ1bGUpID0+IHJ1bGUubWF0Y2hCYW5rVHJhbnNhY3Rpb24oYmFua1RyYW5zYWN0aW9uKSkpO1xuICAgIH0pO1xuXG4gICAgcmV0dXJuIHJ1bGVzQnlCYW5rVHJhbnNhY3Rpb247XG4gIH1cbn1cbiJdfQ==
26
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWxsb2NhdGlvbi1ydWxlLmNvbGxlY3Rpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvY29sbGVjdGlvbnMvYWxsb2NhdGlvbi1ydWxlLmNvbGxlY3Rpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUUxQyxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFJckQsTUFBTSxPQUFPLHdCQUF5QixTQUFRLFVBQTBCO0lBQ3RFLFVBQVU7UUFDUixPQUFPLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxFQUFFLHNCQUFzQixDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQy9ELENBQUM7SUFFRCxTQUFTO1FBQ1AsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sRUFBRSxzQkFBc0IsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUM5RCxDQUFDO0lBRUQsV0FBVztRQUNULE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLEVBQUUsc0JBQXNCLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDaEUsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxzQkFBc0IsQ0FBQyxnQkFBMkM7UUFDaEUsTUFBTSxzQkFBc0IsR0FBRyxJQUFJLHdCQUF3QixDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBRTFFLGdCQUFnQixDQUFDLE9BQU8sRUFBRSxDQUFDLE9BQU8sQ0FBQyxDQUFDLGVBQWdDLEVBQUUsRUFBRTtZQUN0RSxzQkFBc0IsQ0FBQyxHQUFHLENBQUMsZUFBZSxDQUFDLEVBQUUsRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsSUFBb0IsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLG9CQUFvQixDQUFDLGVBQWUsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNwSSxDQUFDLENBQUMsQ0FBQztRQUVILE9BQU8sc0JBQXNCLENBQUM7SUFDaEMsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29sbGVjdGlvbiB9IGZyb20gJy4vY29sbGVjdGlvbic7XG5pbXBvcnQgeyBBbGxvY2F0aW9uUnVsZSwgQmFua1RyYW5zYWN0aW9uIH0gZnJvbSAnLi4vbW9kZWxzJztcbmltcG9ydCB7IEFsbG9jYXRpb25SdWxlVHlwZUVudW0gfSBmcm9tICcuLi9kYi9FbnVtcyc7XG5pbXBvcnQgeyBDb2xsZWN0aW9uRGljdGlvbmFyeSB9IGZyb20gJy4vY29sbGVjdGlvbi1kaWN0aW9uYXJ5JztcbmltcG9ydCB7IEJhbmtUcmFuc2FjdGlvbkNvbGxlY3Rpb24gfSBmcm9tICcuL2JhbmstdHJhbnNhY3Rpb24uY29sbGVjdGlvbic7XG5cbmV4cG9ydCBjbGFzcyBBbGxvY2F0aW9uUnVsZUNvbGxlY3Rpb24gZXh0ZW5kcyBDb2xsZWN0aW9uPEFsbG9jYXRpb25SdWxlPiB7XG4gIGdldEV4cGVuc2UoKTogdGhpcyB7XG4gICAgcmV0dXJuIHRoaXMuZmlsdGVyQnkoJ3R5cGUnLCBBbGxvY2F0aW9uUnVsZVR5cGVFbnVtLkVYUEVOU0UpO1xuICB9XG5cbiAgZ2V0SW5jb21lKCk6IHRoaXMge1xuICAgIHJldHVybiB0aGlzLmZpbHRlckJ5KCd0eXBlJywgQWxsb2NhdGlvblJ1bGVUeXBlRW51bS5JTkNPTUUpO1xuICB9XG5cbiAgZ2V0VHJhbnNmZXIoKTogdGhpcyB7XG4gICAgcmV0dXJuIHRoaXMuZmlsdGVyQnkoJ3R5cGUnLCBBbGxvY2F0aW9uUnVsZVR5cGVFbnVtLlRSQU5TRkVSKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgZGljdGlvbmFyeSB3aGVyZSBrZXkgaXMgYmFuayB0cmFuc2FjdGlvbiBpZCBhbmQgdmFsdWUgaXMgY29sbGVjdGlvbiBvZiBtYXRjaGVkIHJ1bGVzLlxuICAgKiBHcm91cCBieSB0aGlzIHdheSBmb3IgYmV0dGVyIHBlcmZvcm1hbmNlXG4gICAqIEBUT0RPIEFsZXg6IGJyZWFrIGJhbmsgdHJhbnNhY3Rpb25zIGJ5IHBhZ2luYXRpb24gaW4gY2FzZSBvZiBiYWQgcGVyZm9ybWFuY2VcbiAgICovXG4gIGdyb3VwQnlCYW5rVHJhbnNhY3Rpb24oYmFua1RyYW5zYWN0aW9uczogQmFua1RyYW5zYWN0aW9uQ29sbGVjdGlvbik6IENvbGxlY3Rpb25EaWN0aW9uYXJ5PEFsbG9jYXRpb25SdWxlQ29sbGVjdGlvbj4ge1xuICAgIGNvbnN0IHJ1bGVzQnlCYW5rVHJhbnNhY3Rpb24gPSBuZXcgQWxsb2NhdGlvblJ1bGVDb2xsZWN0aW9uKFtdKS5ncm91cEJ5KCk7XG5cbiAgICBiYW5rVHJhbnNhY3Rpb25zLnRvQXJyYXkoKS5mb3JFYWNoKChiYW5rVHJhbnNhY3Rpb246IEJhbmtUcmFuc2FjdGlvbikgPT4ge1xuICAgICAgcnVsZXNCeUJhbmtUcmFuc2FjdGlvbi5hZGQoYmFua1RyYW5zYWN0aW9uLmlkLCB0aGlzLmZpbHRlcigocnVsZTogQWxsb2NhdGlvblJ1bGUpID0+IHJ1bGUubWF0Y2hCYW5rVHJhbnNhY3Rpb24oYmFua1RyYW5zYWN0aW9uKSkpO1xuICAgIH0pO1xuXG4gICAgcmV0dXJuIHJ1bGVzQnlCYW5rVHJhbnNhY3Rpb247XG4gIH1cbn1cbiJdfQ==
@@ -1,8 +1,11 @@
1
1
  import { Collection } from './collection';
2
+ import { TYPE_LOAN } from '../models';
2
3
  import flatten from 'lodash/flatten';
3
4
  import uniqBy from 'lodash/uniqBy';
5
+ import uniq from 'lodash/uniq';
4
6
  import concat from 'lodash/concat';
5
- import { TYPE_LOAN } from '../models/bank/type-loan.const';
7
+ import { CollectionDictionary } from './collection-dictionary';
8
+ import { LoanCollection } from './loan';
6
9
  /**
7
10
  * Collection of bank accounts.
8
11
  */
@@ -40,6 +43,15 @@ export class BankAccountCollection extends Collection {
40
43
  getByPropertyId(id) {
41
44
  return new BankAccountCollection(this.items.filter((bankAccount) => bankAccount.bankAccountProperties.find((bankAccountProperty) => bankAccountProperty.property.id === id)));
42
45
  }
46
+ groupByProperty() {
47
+ const dictionary = new CollectionDictionary(new BankAccountCollection());
48
+ this.items.forEach((bankAccount) => {
49
+ bankAccount.bankAccountProperties.forEach((bankAccountProperty) => {
50
+ dictionary.addTo(bankAccountProperty.property.id, bankAccount);
51
+ });
52
+ });
53
+ return dictionary;
54
+ }
43
55
  /**
44
56
  * get collection filtered by properties ids
45
57
  */
@@ -69,6 +81,9 @@ export class BankAccountCollection extends Collection {
69
81
  getLoanAccounts() {
70
82
  return new BankAccountCollection(this.getByType(TYPE_LOAN));
71
83
  }
84
+ get loans() {
85
+ return new LoanCollection(this.getLoanAccounts().map((bankAccount) => bankAccount.loan));
86
+ }
72
87
  getSavingsAccounts() {
73
88
  return new BankAccountCollection(this.getByType(TYPE_LOAN, true));
74
89
  }
@@ -78,6 +93,9 @@ export class BankAccountCollection extends Collection {
78
93
  get currentBalance() {
79
94
  return this.sumBy('currentBalance');
80
95
  }
96
+ get bankShortNames() {
97
+ return uniq(this.map((bankAccount) => bankAccount.bank.shortName)).join(', ');
98
+ }
81
99
  /**
82
100
  * Get Collection of bank accounts with property tank type
83
101
  */
@@ -108,12 +126,21 @@ export class BankAccountCollection extends Collection {
108
126
  getProperties() {
109
127
  return uniqBy(this.getBankAccountPropertiesList().map((bankAccountProperty) => bankAccountProperty.property), 'id');
110
128
  }
129
+ /**
130
+ * @TODO Alex not efficient, filter bankAccounts by property first
131
+ */
111
132
  getPropertyBalanceAmount(propertyId) {
112
133
  return this.items.reduce((sum, bankAccount) => sum + bankAccount.getPropertyBalanceAmount(propertyId), 0);
113
134
  }
135
+ getMonthlyRepaymentAmount(propertyId) {
136
+ return this.getLoanAccounts().reduce((sum, bankAccount) => sum + bankAccount.loan.monthlyRepaymentAmount * bankAccount.getPropertyPercentage(propertyId), 0);
137
+ }
138
+ getLVR(property) {
139
+ return this.getPropertyBalanceAmount(property.id) / property.currentYearForecast.marketValue;
140
+ }
114
141
  getOwn() {
115
142
  // TODO Alex/Vik: maybe we should get it from jwtToken or think about some localStorageService?
116
143
  return this.filter((bankAccount) => bankAccount.isOwner(+localStorage.getItem('userId')));
117
144
  }
118
145
  }
119
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFuay1hY2NvdW50LmNvbGxlY3Rpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvY29sbGVjdGlvbnMvYmFuay1hY2NvdW50LmNvbGxlY3Rpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQU0xQyxPQUFPLE9BQU8sTUFBTSxnQkFBZ0IsQ0FBQztBQUNyQyxPQUFPLE1BQU0sTUFBTSxlQUFlLENBQUM7QUFDbkMsT0FBTyxNQUFNLE1BQU0sZUFBZSxDQUFDO0FBQ25DLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUUzRDs7R0FFRztBQUNILE1BQU0sT0FBTyxxQkFBc0IsU0FBUSxVQUF1QjtJQUNoRTs7T0FFRztJQUNILFNBQVMsQ0FBQyxLQUFrRCxFQUFFLFNBQVMsR0FBRyxLQUFLO1FBQzdFLGlEQUFpRDtRQUNqRCxNQUFNLFVBQVUsR0FBMEIsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3hELE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxXQUF3QixFQUFFLEVBQUU7WUFDcEQsSUFBSSxTQUFTLEVBQUU7Z0JBQ2IsT0FBTyxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxDQUFDO2FBQy9DO1lBQ0QsT0FBTyxVQUFVLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUMvQyxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRDs7T0FFRztJQUNILG9CQUFvQjtRQUNsQixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsU0FBUyxDQUFDO2FBQzdCLE1BQU0sQ0FBQyxDQUFDLEdBQVcsRUFBRSxXQUF3QixFQUFFLEVBQUUsQ0FBQyxHQUFHLElBQUksV0FBVyxDQUFDLFFBQVEsQ0FBQyxN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RiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbGxlY3Rpb24gfSBmcm9tICcuL2NvbGxlY3Rpb24nO1xuaW1wb3J0IHsgQmFua0FjY291bnRUeXBlRW51bSB9IGZyb20gJy4uL2RiL0VudW1zL2JhbmsvYmFuay1hY2NvdW50LXR5cGUuZW51bSc7XG5pbXBvcnQgeyBUYW5rVHlwZUVudW0gfSBmcm9tICcuLi9kYi9FbnVtcy90YW5rLXR5cGUuZW51bSc7XG5pbXBvcnQgeyBCYW5rQWNjb3VudCB9IGZyb20gJy4uL21vZGVscy9iYW5rL2JhbmstYWNjb3VudCc7XG5pbXBvcnQgeyBCYW5rQWNjb3VudFByb3BlcnR5IH0gZnJvbSAnLi4vbW9kZWxzL2JhbmsvYmFuay1hY2NvdW50LXByb3BlcnR5JztcbmltcG9ydCB7IFByb3BlcnR5IH0gZnJvbSAnLi4vbW9kZWxzL3Byb3BlcnR5L3Byb3BlcnR5JztcbmltcG9ydCBmbGF0dGVuIGZyb20gJ2xvZGFzaC9mbGF0dGVuJztcbmltcG9ydCB1bmlxQnkgZnJvbSAnbG9kYXNoL3VuaXFCeSc7XG5pbXBvcnQgY29uY2F0IGZyb20gJ2xvZGFzaC9jb25jYXQnO1xuaW1wb3J0IHsgVFlQRV9MT0FOIH0gZnJvbSAnLi4vbW9kZWxzL2JhbmsvdHlwZS1sb2FuLmNvbnN0JztcblxuLyoqXG4gKiBDb2xsZWN0aW9uIG9mIGJhbmsgYWNjb3VudHMuXG4gKi9cbmV4cG9ydCBjbGFzcyBCYW5rQWNjb3VudENvbGxlY3Rpb24gZXh0ZW5kcyBDb2xsZWN0aW9uPEJhbmtBY2NvdW50PiB7XG4gIC8qKlxuICAgKiBnZXQgbGlzdCBvZiBiYW5rIGFjY291bnRzIHdpdGggcGFzc2VkIHR5cGVzXG4gICAqL1xuICBnZXRCeVR5cGUodHlwZXM6IEJhbmtBY2NvdW50VHlwZUVudW0gfCBCYW5rQWNjb3VudFR5cGVFbnVtW10sIGlzRXhjbHVkZSA9IGZhbHNlKTogQmFua0FjY291bnRbXSB7XG4gICAgLy8gZ2V0IHR5cGVzIGFsd2F5cyBhcyBhcnJheSAoaWYgb25seSBvbmUgcGFzc2VkKVxuICAgIGNvbnN0IHR5cGVzQXJyYXk6IEJhbmtBY2NvdW50VHlwZUVudW1bXSA9IGNvbmNhdCh0eXBlcyk7XG4gICAgcmV0dXJuIHRoaXMuaXRlbXMuZmlsdGVyKChiYW5rQWNjb3VudDogQmFua0FjY291bnQpID0+IHtcbiAgICAgIGlmIChpc0V4Y2x1ZGUpIHtcbiAgICAgICAgcmV0dXJuICF0eXBlc0FycmF5LmluY2x1ZGVzKGJhbmtBY2NvdW50LnR5cGUpO1xuICAgICAgfVxuICAgICAgcmV0dXJuIHR5cGVzQXJyYXkuaW5jbHVkZXMoYmFua0FjY291bnQudHlwZSk7XG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogZ2V0IGFtb3VudCBvZiBpbml0aWFsIGxvYW5zXG4gICAqL1xuICBnZXRJbml0aWFsTG9hbkFtb3VudCgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLmdldEJ5VHlwZShUWVBFX0xPQU4pXG4gICAgICAucmVkdWNlKChzdW06IG51bWJlciwgYmFua0FjY291bnQ6IEJhbmtBY2NvdW50KSA9PiBzdW0gKz0gYmFua0FjY291bnQuYmFsYW5jZXMubGVuZ3RoID8gYmFua0FjY291bnQuZ2V0T3BlbmluZ0JhbGFuY2UoKSA6IDAsIDApO1xuICB9XG5cbiAgLyoqXG4gICAqIGdldCBhbW91bnQgb2YgY3VycmVudCBsb2Fuc1xuICAgKi9cbiAgZ2V0Q3VycmVudExvYW5BbW91bnQoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5nZXRCeVR5cGUoVFlQRV9MT0FOKVxuICAgICAgLnJlZHVjZSgoc3VtOiBudW1iZXIsIGJhbmtBY2NvdW50OiBCYW5rQWNjb3VudCkgPT4gc3VtICs9IGJhbmtBY2NvdW50LmN1cnJlbnRCYWxhbmNlLCAwKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBnZXQgY29sbGVjdGlvbiBmaWx0ZXJlZCBieSBwcm9wZXJ0eSBpZFxuICAgKi9cbiAgZ2V0QnlQcm9wZXJ0eUlkKGlkOiBudW1iZXIpOiBCYW5rQWNjb3VudENvbGxlY3Rpb24ge1xuICAgIHJldHVybiBuZXcgQmFua0FjY291bnRDb2xsZWN0aW9uKHRoaXMuaXRlbXMuZmlsdGVyKChiYW5rQWNjb3VudDogQmFua0FjY291bnQpID0+IGJhbmtBY2NvdW50LmJhbmtBY2NvdW50UHJvcGVydGllcy5maW5kKChiYW5rQWNjb3VudFByb3BlcnR5OiBCYW5rQWNjb3VudFByb3BlcnR5KSA9PiBiYW5rQWNjb3VudFByb3BlcnR5LnByb3BlcnR5LmlkID09PSBpZCkpKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBnZXQgY29sbGVjdGlvbiBmaWx0ZXJlZCBieSBwcm9wZXJ0aWVzIGlkc1xuICAgKi9cbiAgZ2V0QnlQcm9wZXJ0aWVzSWRzKGlkczogbnVtYmVyW10pOiBCYW5rQWNjb3VudENvbGxlY3Rpb24ge1xuICAgIHJldHVybiBuZXcgQmFua0FjY291bnRDb2xsZWN0aW9uKFxuICAgICAgdGhpcy5pdGVtcy5maWx0ZXIoKGJhbmtBY2NvdW50OiBCYW5rQWNjb3VudCkgPT4gYmFua0FjY291bnQuYmFua0FjY291bnRQcm9wZXJ0aWVzLmZpbmQoKGJhbmtBY2NvdW50UHJvcGVydHk6IEJhbmtBY2NvdW50UHJvcGVydHkpID0+IGlkcy5pbmNsdWRlcyhiYW5rQWNjb3VudFByb3BlcnR5LnByb3BlcnR5LmlkKSkpXG4gICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBnZXQgY29sbGVjdGlvbiBvZiBhY3RpdmUgYmFuayBhY2NvdW50c1xuICAgKi9cbiAgZ2V0QWN0aXZlQmFua0FjY291bnRzKCk6IEJhbmtBY2NvdW50Q29sbGVjdGlvbiB7XG4gICAgcmV0dXJuIG5ldyBCYW5rQWNjb3VudENvbGxlY3Rpb24odGhpcy5pdGVtcy5maWx0ZXIoKGJhbmtBY2NvdW50OiBCYW5rQWNjb3VudCkgPT4gYmFua0FjY291bnQuaXNBY3RpdmUoKSkpO1xuICB9XG5cbiAgLyoqXG4gICAqIGdldCByZWR1Y3Rpb24gb2YgbG9hbiAocmVkdWN0aW9uIG9mIHByaW5jaXBsZSkgcGVyY2VudGFnZVxuICAgKi9cbiAgZ2V0UHJpbmNpcGxlUmVkdWN0aW9uUGVyY2VudCgpOiBudW1iZXIge1xuICAgIGNvbnN0IGluaXRpYWxMb2FuczogbnVtYmVyID0gdGhpcy5nZXRJbml0aWFsTG9hbkFtb3VudCgpO1xuICAgIGNvbnN0IGN1cnJlbnRMb2FuczogbnVtYmVyID0gdGhpcy5nZXRDdXJyZW50TG9hbkFtb3VudCgpO1xuXG4gICAgaWYgKCFpbml0aWFsTG9hbnMpIHtcbiAgICAgIHJldHVybiAwO1xuICAgIH1cblxuICAgIHJldHVybiAoaW5pdGlhbExvYW5zIC0gY3VycmVudExvYW5zKSAvIGluaXRpYWxMb2FucyAqIDEwMDtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgY29sbGVjdGlvbiBvZiBsb2FuIGJhbmsgYWNjb3VudHNcbiAgICovXG4gIGdldExvYW5BY2NvdW50cygpOiBCYW5rQWNjb3VudENvbGxlY3Rpb24ge1xuICAgIHJldHVybiBuZXcgQmFua0FjY291bnRDb2xsZWN0aW9uKHRoaXMuZ2V0QnlUeXBlKFRZUEVfTE9BTikpO1xuICB9XG5cbiAgZ2V0U2F2aW5nc0FjY291bnRzKCk6IEJhbmtBY2NvdW50Q29sbGVjdGlvbiB7XG4gICAgcmV0dXJuIG5ldyBCYW5rQWNjb3VudENvbGxlY3Rpb24odGhpcy5nZXRCeVR5cGUoVFlQRV9MT0FOLCB0cnVlKSk7XG4gIH1cblxuICBnZXRPcGVuaW5nQmFsYW5jZSgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLml0ZW1zLnJlZHVjZSgoc3VtOiBudW1iZXIsIGJhbmtBY2NvdW50OiBCYW5rQWNjb3VudCk6IG51bWJlciA9PiBzdW0gKyBiYW5rQWNjb3VudC5nZXRPcGVuaW5nQmFsYW5jZSgpLCAwKTtcbiAgfVxuXG4gIGdldCBjdXJyZW50QmFsYW5jZSgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLnN1bUJ5KCdjdXJyZW50QmFsYW5jZScpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCBDb2xsZWN0aW9uIG9mIGJhbmsgYWNjb3VudHMgd2l0aCBwcm9wZXJ0eSB0YW5rIHR5cGVcbiAgICovXG4gIGdldFByb3BlcnR5QmFua0FjY291bnRzKCk6IEJhbmtBY2NvdW50Q29sbGVjdGlvbiB7XG4gICAgcmV0dXJuIG5ldyBCYW5rQWNjb3VudENvbGxlY3Rpb24oXG4gICAgICB0aGlzLml0ZW1zLmZpbHRlcigoYmFua0FjY291bnQ6IEJhbmtBY2NvdW50KTogYm9vbGVhbiA9PiBiYW5rQWNjb3VudC5pc1Byb3BlcnR5VGFuaygpKVxuICAgICk7XG4gIH1cblxuICAvKipcbiAgICogR2V0IENvbGxlY3Rpb24gb2YgYmFuayBhY2NvdW50cyB3aXRoIHdvcmsgdGFuayB0eXBlXG4gICAqL1xuICBnZXRXb3JrQmFua0FjY291bnRzKCk6IEJhbmtBY2NvdW50Q29sbGVjdGlvbiB7XG4gICAgcmV0dXJuIG5ldyBCYW5rQWNjb3VudENvbGxlY3Rpb24oXG4gICAgICB0aGlzLml0ZW1zLmZpbHRlcigoYmFua0FjY291bnQ6IEJhbmtBY2NvdW50KTogYm9vbGVhbiA9PiBiYW5rQWNjb3VudC5pc1dvcmtUYW5rKCkpXG4gICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgQ29sbGVjdGlvbiBvZiBiYW5rIGFjY291bnRzIGJ5IHRhbmsgdHlwZVxuICAgKi9cbiAgZ2V0QnlUYW5rVHlwZSh0YW5rVHlwZTogVGFua1R5cGVFbnVtKTogQmFua0FjY291bnRDb2xsZWN0aW9uIHtcbiAgICByZXR1cm4gbmV3IEJhbmtBY2NvdW50Q29sbGVjdGlvbihcbiAgICAgIHRoaXMuaXRlbXMuZmlsdGVyKChiYW5rQWNjb3VudDogQmFua0FjY291bnQpOiBib29sZWFuID0+IGJhbmtBY2NvdW50LnRhbmtUeXBlID09PSB0YW5rVHlwZSlcbiAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCBsaXN0IG9mIGFsbCBiYW5rIGFjY291bnQgcHJvcGVydGllc1xuICAgKi9cbiAgZ2V0QmFua0FjY291bnRQcm9wZXJ0aWVzTGlzdCgpOiBCYW5rQWNjb3VudFByb3BlcnR5W10ge1xuICAgIHJldHVybiBmbGF0dGVuKFxuICAgICAgdGhpcy5pdGVtcy5tYXAoKGJhbmtBY2NvdW50OiBCYW5rQWNjb3VudCk6IEJhbmtBY2NvdW50UHJvcGVydHlbXSA9PiBiYW5rQWNjb3VudC5iYW5rQWNjb3VudFByb3BlcnRpZXMpXG4gICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgbGlzIG9mIHVuaXF1ZSBwcm9wZXJ0aWVzIGZyb20gYWxsIGJhbmsgYWNjb3VudHMgcHJvcGVydGllc1xuICAgKi9cbiAgZ2V0UHJvcGVydGllcygpOiBQcm9wZXJ0eVtdIHtcbiAgICByZXR1cm4gdW5pcUJ5KFxuICAgICAgdGhpcy5nZXRCYW5rQWNjb3VudFByb3BlcnRpZXNMaXN0KCkubWFwKChiYW5rQWNjb3VudFByb3BlcnR5OiBCYW5rQWNjb3VudFByb3BlcnR5KSA9PiBiYW5rQWNjb3VudFByb3BlcnR5LnByb3BlcnR5KSxcbiAgICAgICdpZCdcbiAgICApO1xuICB9XG5cbiAgZ2V0UHJvcGVydHlCYWxhbmNlQW1vdW50KHByb3BlcnR5SWQ6IG51bWJlcik6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuaXRlbXMucmVkdWNlKChzdW06IG51bWJlciwgYmFua0FjY291bnQ6IEJhbmtBY2NvdW50KTogbnVtYmVyID0+IHN1bSArIGJhbmtBY2NvdW50LmdldFByb3BlcnR5QmFsYW5jZUFtb3VudChwcm9wZXJ0eUlkKSwgMCk7XG4gIH1cblxuICBnZXRPd24oKTogdGhpcyB7XG4gICAgLy8gVE9ETyBBbGV4L1ZpazogbWF5YmUgd2Ugc2hvdWxkIGdldCBpdCBmcm9tIGp3dFRva2VuIG9yIHRoaW5rIGFib3V0IHNvbWUgbG9jYWxTdG9yYWdlU2VydmljZT9cbiAgICByZXR1cm4gdGhpcy5maWx0ZXIoKGJhbmtBY2NvdW50OiBCYW5rQWNjb3VudCkgPT4gYmFua0FjY291bnQuaXNPd25lcigrbG9jYWxTdG9yYWdlLmdldEl0ZW0oJ3VzZXJJZCcpKSk7XG4gIH1cbn1cbiJdfQ==
146
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFuay1hY2NvdW50LmNvbGxlY3Rpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvY29sbGVjdGlvbnMvYmFuay1hY2NvdW50LmNvbGxlY3Rpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUcxQyxPQUFPLEVBQThDLFNBQVMsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUNsRixPQUFPLE9BQU8sTUFBTSxnQkFBZ0IsQ0FBQztBQUNyQyxPQUFPLE1BQU0sTUFBTSxlQUFlLENBQUM7QUFDbkMsT0FBTyxJQUFJLE1BQU0sYUFBYSxDQUFDO0FBQy9CLE9BQU8sTUFBTSxNQUFNLGVBQWUsQ0FBQztBQUNuQyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUMvRCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sUUFBUSxDQUFDO0FBRXhDOztHQUVHO0FBQ0gsTUFBTSxPQUFPLHFCQUFzQixTQUFRLFVBQXVCO0lBQ2hFOztPQUVHO0lBQ0gsU0FBUyxDQUFDLEtBQWtELEVBQUUsU0FBUyxHQUFHLEtBQUs7UUFDN0UsaURBQWlEO1FBQ2pELE1BQU0sVUFBVSxHQUEwQixNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDeEQsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDLFdBQXdCLEVBQUUsRUFBRTtZQUNwRCxJQUFJLFNBQVMsRUFBRTtnQkFDYixPQUFPLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLENBQUM7YUFDL0M7WUFDRCxPQUFPLFVBQVUsQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQy9DLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVEOztPQUVHO0lBQ0gsb0JBQW9CO1FBQ2xCLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUM7YUFDN0IsTUFBTSxDQUFDLENBQUMsR0FBVyxFQUFFLFdBQXdCLEVBQUUsRUFBRSxDQUFDLEdBQUcsSUFBSSxXQUFXLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsV0FBVyxDQUFDLGlCQUFpQixFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztJQUNwSSxDQUFDO0lBRUQ7O09BRUc7SUFDSCxvQkFBb0I7UUFDbEIsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLFNBQVMsQ0FBQzthQUM3QixNQUFNLENBQUMsQ0FBQyxHQUFXLEVBQUUsV0FBd0IsRUFBRSxFQUFFLENBQUMsR0FBRyxJQUFJLFdBQVcsQ0FBQyxjQUFjLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDN0YsQ0FBQztJQUVEOztPQUVHO0lBQ0gsZUFBZSxDQUFDLEVBQVU7UUFDeEIsT0FBTyxJQUFJLHFCQUFxQixDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUMsV0FBd0IsRUFBRSxFQUFFLENBQUMsV0FBVyxDQUFDLHFCQUFxQixDQUFDLElBQUksQ0FBQyxDQUFDLG1CQUF3QyxFQUFFLEVBQUUsQ0FBQyxtQkFBbUIsQ0FBQyxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNsTixDQUFDO0lBRUQsZUFBZTtRQUNiLE1BQU0sVUFBVSxHQUFHLElBQUksb0JBQW9CLENBQUMsSUFBSSxxQkFBcUIsRUFBRSxDQUFDLENBQUM7UUFFekUsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxXQUFXLEVBQUUsRUFBRTtZQUNqQyxXQUFXLENBQUMscUJBQXFCLENBQUMsT0FBTyxDQUFDLENBQUMsbUJBQW1CLEVBQUUsRUFBRTtnQkFDaEUsVUFBVSxDQUFDLEtBQUssQ0FBQyxtQkFBbUIsQ0FBQyxRQUFRLENBQUMsRUFBRSxFQUFFLFdBQVcsQ0FBQyxDQUFDO1lBQ2pFLENBQUMsQ0FBQyxDQUFDO1FBQ0wsQ0FBQyxDQUFDLENBQUM7UUFFSCxPQUFPLFVBQVUsQ0FBQztJQUNwQixDQUFDO0lBRUQ7O09BRUc7SUFDSCxrQkFBa0IsQ0FBQyxHQUFhO1FBQzlCLE9BQU8sSUFBSSxxQkFBcUIsQ0FDOUIsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxXQUF3QixFQUFFLEVBQUUsQ0FBQyxXQUFXLENBQUMscUJBQXFCLENBQUMsSUFBSSxDQUFDLENBQUMsbUJBQXdDLEVBQUUsRUFBRSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsbUJBQW1CLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FDckwsQ0FBQztJQUNKLENBQUM7SUFFRDs7T0FFRztJQUNILHFCQUFxQjtRQUNuQixPQUFPLElBQUkscUJBQXFCLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxXQUF3QixFQUFFLEVBQUUsQ0FBQyxXQUFXLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQzVHLENBQUM7SUFFRDs7T0FFRztJQUNILDRCQUE0QjtRQUMxQixNQUFNLFlBQVksR0FBVyxJQUFJLENBQUMsb0JBQW9CLEVBQUUsQ0FBQztRQUN6RCxNQUFNLFlBQVksR0FBVyxJQUFJLENBQUMsb0JBQW9CLEVBQUUsQ0FBQztRQUV6RCxJQUFJLENBQUMsWUFBWSxFQUFFO1lBQ2pCLE9BQU8sQ0FBQyxDQUFDO1NBQ1Y7UUFFRCxPQUFPLENBQUMsWUFBWSxHQUFHLFlBQVksQ0FBQyxHQUFHLFlBQVksR0FBRyxHQUFHLENBQUM7SUFDNUQsQ0FBQztJQUVEOztPQUVHO0lBQ0gsZUFBZTtRQUNiLE9BQU8sSUFBSSxxQkFBcUIsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUM7SUFDOUQsQ0FBQztJQUVELElBQUksS0FBSztRQUNQLE9BQU8sSUFBSSxjQUFjLENBQUMsSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDLEdBQUcsQ0FBQyxDQUFDLFdBQVcsRUFBRSxFQUFFLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDM0YsQ0FBQztJQUVELGtCQUFrQjtRQUNoQixPQUFPLElBQUkscUJBQXFCLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxTQUFTLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQztJQUNwRSxDQUFDO0lBRUQsaUJBQWlCO1FBQ2YsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDLEdBQVcsRUFBRSxXQUF3QixFQUFVLEVBQUUsQ0FBQyxHQUFHLEdBQUcsV0FBVyxDQUFDLGlCQUFpQixFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDeEgsQ0FBQztJQUVELElBQUksY0FBYztRQUNoQixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztJQUN0QyxDQUFDO0lBRUQsSUFBSSxjQUFjO1FBQ2hCLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxXQUFXLEVBQUUsRUFBRSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDaEYsQ0FBQztJQUVEOztPQUVHO0lBQ0gsdUJBQXVCO1FBQ3JCLE9BQU8sSUFBSSxxQkFBcUIsQ0FDOUIsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxXQUF3QixFQUFXLEVBQUUsQ0FBQyxXQUFXLENBQUMsY0FBYyxFQUFFLENBQUMsQ0FDdkYsQ0FBQztJQUNKLENBQUM7SUFFRDs7T0FFRztJQUNILG1CQUFtQjtRQUNqQixPQUFPLElBQUkscUJBQXFCLENBQzlCLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUMsV0FBd0IsRUFBVyxFQUFFLENBQUMsV0FBVyxDQUFDLFVBQVUsRUFBRSxDQUFDLENBQ25GLENBQUM7SUFDSixDQUFDO0lBRUQ7O09BRUc7SUFDSCxhQUFhLENBQUMsUUFBc0I7UUFDbEMsT0FBTyxJQUFJLHFCQUFxQixDQUM5QixJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDLFdBQXdCLEVBQVcsRUFBRSxDQUFDLFdBQVcsQ0FBQyxRQUFRLEtBQUssUUFBUSxDQUFDLENBQzVGLENBQUM7SUFDSixDQUFDO0lBRUQ7O09BRUc7SUFDSCw0QkFBNEI7UUFDMUIsT0FBTyxPQUFPLENBQ1osSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxXQUF3QixFQUF5QixFQUFFLENBQUMsV0FBVyxDQUFDLHFCQUFxQixDQUFDLENBQ3ZHLENBQUM7SUFDSixDQUFDO0lBRUQ7O09BRUc7SUFDSCxhQUFhO1FBQ1gsT0FBTyxNQUFNLENBQ1gsSUFBSSxDQUFDLDRCQUE0QixFQUFFLENBQUMsR0FBRyxDQUFDLENBQUMsbUJBQXdDLEVBQUUsRUFBRSxDQUFDLG1CQUFtQixDQUFDLFFBQVEsQ0FBQyxFQUNuSCxJQUFJLENBQ0wsQ0FBQztJQUNKLENBQUM7SUFFRDs7T0FFRztJQUNILHdCQUF3QixDQUFDLFVBQWtCO1FBQ3pDLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxHQUFXLEVBQUUsV0FBd0IsRUFBVSxFQUFFLENBQUMsR0FBRyxHQUFHLFdBQVcsQ0FBQyx3QkFBd0IsQ0FBQyxVQUFVLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztJQUN6SSxDQUFDO0lBRUQseUJBQXlCLENBQUMsVUFBa0I7UUFDMUMsT0FBTyxJQUFJLENBQUMsZUFBZSxFQUFFLENBQUMsTUFBTSxDQUFDLENBQUMsR0FBVyxFQUFFLFdBQXdCLEVBQVUsRUFBRSxDQUNyRixHQUFHLEdBQUcsV0FBVyxDQUFDLElBQUksQ0FBQyxzQkFBc0IsR0FBRyxXQUFXLENBQUMscUJBQXFCLENBQUMsVUFBVSxDQUFDLEVBQUUsQ0FBQyxDQUNqRyxDQUFDO0lBQ0osQ0FBQztJQUVELE1BQU0sQ0FBQyxRQUFrQjtRQUN2QixPQUFPLElBQUksQ0FBQyx3QkFBd0IsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLEdBQUcsUUFBUSxDQUFDLG1CQUFtQixDQUFDLFdBQVcsQ0FBQztJQUMvRixDQUFDO0lBRUQsTUFBTTtRQUNKLCtGQUErRjtRQUMvRixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxXQUF3QixFQUFFLEVBQUUsQ0FBQyxXQUFXLENBQUMsT0FBTyxDQUFDLENBQUMsWUFBWSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDekcsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29sbGVjdGlvbiB9IGZyb20gJy4vY29sbGVjdGlvbic7XG5pbXBvcnQgeyBCYW5rQWNjb3VudFR5cGVFbnVtIH0gZnJvbSAnLi4vZGIvRW51bXMnO1xuaW1wb3J0IHsgVGFua1R5cGVFbnVtIH0gZnJvbSAnLi4vZGIvRW51bXMvdGFuay10eXBlLmVudW0nO1xuaW1wb3J0IHsgQmFua0FjY291bnQsIEJhbmtBY2NvdW50UHJvcGVydHksIFByb3BlcnR5LCBUWVBFX0xPQU4gfSBmcm9tICcuLi9tb2RlbHMnO1xuaW1wb3J0IGZsYXR0ZW4gZnJvbSAnbG9kYXNoL2ZsYXR0ZW4nO1xuaW1wb3J0IHVuaXFCeSBmcm9tICdsb2Rhc2gvdW5pcUJ5JztcbmltcG9ydCB1bmlxIGZyb20gJ2xvZGFzaC91bmlxJztcbmltcG9ydCBjb25jYXQgZnJvbSAnbG9kYXNoL2NvbmNhdCc7XG5pbXBvcnQgeyBDb2xsZWN0aW9uRGljdGlvbmFyeSB9IGZyb20gJy4vY29sbGVjdGlvbi1kaWN0aW9uYXJ5JztcbmltcG9ydCB7IExvYW5Db2xsZWN0aW9uIH0gZnJvbSAnLi9sb2FuJztcblxuLyoqXG4gKiBDb2xsZWN0aW9uIG9mIGJhbmsgYWNjb3VudHMuXG4gKi9cbmV4cG9ydCBjbGFzcyBCYW5rQWNjb3VudENvbGxlY3Rpb24gZXh0ZW5kcyBDb2xsZWN0aW9uPEJhbmtBY2NvdW50PiB7XG4gIC8qKlxuICAgKiBnZXQgbGlzdCBvZiBiYW5rIGFjY291bnRzIHdpdGggcGFzc2VkIHR5cGVzXG4gICAqL1xuICBnZXRCeVR5cGUodHlwZXM6IEJhbmtBY2NvdW50VHlwZUVudW0gfCBCYW5rQWNjb3VudFR5cGVFbnVtW10sIGlzRXhjbHVkZSA9IGZhbHNlKTogQmFua0FjY291bnRbXSB7XG4gICAgLy8gZ2V0IHR5cGVzIGFsd2F5cyBhcyBhcnJheSAoaWYgb25seSBvbmUgcGFzc2VkKVxuICAgIGNvbnN0IHR5cGVzQXJyYXk6IEJhbmtBY2NvdW50VHlwZUVudW1bXSA9IGNvbmNhdCh0eXBlcyk7XG4gICAgcmV0dXJuIHRoaXMuaXRlbXMuZmlsdGVyKChiYW5rQWNjb3VudDogQmFua0FjY291bnQpID0+IHtcbiAgICAgIGlmIChpc0V4Y2x1ZGUpIHtcbiAgICAgICAgcmV0dXJuICF0eXBlc0FycmF5LmluY2x1ZGVzKGJhbmtBY2NvdW50LnR5cGUpO1xuICAgICAgfVxuICAgICAgcmV0dXJuIHR5cGVzQXJyYXkuaW5jbHVkZXMoYmFua0FjY291bnQudHlwZSk7XG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogZ2V0IGFtb3VudCBvZiBpbml0aWFsIGxvYW5zXG4gICAqL1xuICBnZXRJbml0aWFsTG9hbkFtb3VudCgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLmdldEJ5VHlwZShUWVBFX0xPQU4pXG4gICAgICAucmVkdWNlKChzdW06IG51bWJlciwgYmFua0FjY291bnQ6IEJhbmtBY2NvdW50KSA9PiBzdW0gKz0gYmFua0FjY291bnQuYmFsYW5jZXMubGVuZ3RoID8gYmFua0FjY291bnQuZ2V0T3BlbmluZ0JhbGFuY2UoKSA6IDAsIDApO1xuICB9XG5cbiAgLyoqXG4gICAqIGdldCBhbW91bnQgb2YgY3VycmVudCBsb2Fuc1xuICAgKi9cbiAgZ2V0Q3VycmVudExvYW5BbW91bnQoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5nZXRCeVR5cGUoVFlQRV9MT0FOKVxuICAgICAgLnJlZHVjZSgoc3VtOiBudW1iZXIsIGJhbmtBY2NvdW50OiBCYW5rQWNjb3VudCkgPT4gc3VtICs9IGJhbmtBY2NvdW50LmN1cnJlbnRCYWxhbmNlLCAwKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBnZXQgY29sbGVjdGlvbiBmaWx0ZXJlZCBieSBwcm9wZXJ0eSBpZFxuICAgKi9cbiAgZ2V0QnlQcm9wZXJ0eUlkKGlkOiBudW1iZXIpOiBCYW5rQWNjb3VudENvbGxlY3Rpb24ge1xuICAgIHJldHVybiBuZXcgQmFua0FjY291bnRDb2xsZWN0aW9uKHRoaXMuaXRlbXMuZmlsdGVyKChiYW5rQWNjb3VudDogQmFua0FjY291bnQpID0+IGJhbmtBY2NvdW50LmJhbmtBY2NvdW50UHJvcGVydGllcy5maW5kKChiYW5rQWNjb3VudFByb3BlcnR5OiBCYW5rQWNjb3VudFByb3BlcnR5KSA9PiBiYW5rQWNjb3VudFByb3BlcnR5LnByb3BlcnR5LmlkID09PSBpZCkpKTtcbiAgfVxuXG4gIGdyb3VwQnlQcm9wZXJ0eSgpOiBDb2xsZWN0aW9uRGljdGlvbmFyeTxCYW5rQWNjb3VudENvbGxlY3Rpb24+IHtcbiAgICBjb25zdCBkaWN0aW9uYXJ5ID0gbmV3IENvbGxlY3Rpb25EaWN0aW9uYXJ5KG5ldyBCYW5rQWNjb3VudENvbGxlY3Rpb24oKSk7XG5cbiAgICB0aGlzLml0ZW1zLmZvckVhY2goKGJhbmtBY2NvdW50KSA9PiB7XG4gICAgICBiYW5rQWNjb3VudC5iYW5rQWNjb3VudFByb3BlcnRpZXMuZm9yRWFjaCgoYmFua0FjY291bnRQcm9wZXJ0eSkgPT4ge1xuICAgICAgICBkaWN0aW9uYXJ5LmFkZFRvKGJhbmtBY2NvdW50UHJvcGVydHkucHJvcGVydHkuaWQsIGJhbmtBY2NvdW50KTtcbiAgICAgIH0pO1xuICAgIH0pO1xuXG4gICAgcmV0dXJuIGRpY3Rpb25hcnk7XG4gIH1cblxuICAvKipcbiAgICogZ2V0IGNvbGxlY3Rpb24gZmlsdGVyZWQgYnkgcHJvcGVydGllcyBpZHNcbiAgICovXG4gIGdldEJ5UHJvcGVydGllc0lkcyhpZHM6IG51bWJlcltdKTogQmFua0FjY291bnRDb2xsZWN0aW9uIHtcbiAgICByZXR1cm4gbmV3IEJhbmtBY2NvdW50Q29sbGVjdGlvbihcbiAgICAgIHRoaXMuaXRlbXMuZmlsdGVyKChiYW5rQWNjb3VudDogQmFua0FjY291bnQpID0+IGJhbmtBY2NvdW50LmJhbmtBY2NvdW50UHJvcGVydGllcy5maW5kKChiYW5rQWNjb3VudFByb3BlcnR5OiBCYW5rQWNjb3VudFByb3BlcnR5KSA9PiBpZHMuaW5jbHVkZXMoYmFua0FjY291bnRQcm9wZXJ0eS5wcm9wZXJ0eS5pZCkpKVxuICAgICk7XG4gIH1cblxuICAvKipcbiAgICogZ2V0IGNvbGxlY3Rpb24gb2YgYWN0aXZlIGJhbmsgYWNjb3VudHNcbiAgICovXG4gIGdldEFjdGl2ZUJhbmtBY2NvdW50cygpOiBCYW5rQWNjb3VudENvbGxlY3Rpb24ge1xuICAgIHJldHVybiBuZXcgQmFua0FjY291bnRDb2xsZWN0aW9uKHRoaXMuaXRlbXMuZmlsdGVyKChiYW5rQWNjb3VudDogQmFua0FjY291bnQpID0+IGJhbmtBY2NvdW50LmlzQWN0aXZlKCkpKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBnZXQgcmVkdWN0aW9uIG9mIGxvYW4gKHJlZHVjdGlvbiBvZiBwcmluY2lwbGUpIHBlcmNlbnRhZ2VcbiAgICovXG4gIGdldFByaW5jaXBsZVJlZHVjdGlvblBlcmNlbnQoKTogbnVtYmVyIHtcbiAgICBjb25zdCBpbml0aWFsTG9hbnM6IG51bWJlciA9IHRoaXMuZ2V0SW5pdGlhbExvYW5BbW91bnQoKTtcbiAgICBjb25zdCBjdXJyZW50TG9hbnM6IG51bWJlciA9IHRoaXMuZ2V0Q3VycmVudExvYW5BbW91bnQoKTtcblxuICAgIGlmICghaW5pdGlhbExvYW5zKSB7XG4gICAgICByZXR1cm4gMDtcbiAgICB9XG5cbiAgICByZXR1cm4gKGluaXRpYWxMb2FucyAtIGN1cnJlbnRMb2FucykgLyBpbml0aWFsTG9hbnMgKiAxMDA7XG4gIH1cblxuICAvKipcbiAgICogR2V0IGNvbGxlY3Rpb24gb2YgbG9hbiBiYW5rIGFjY291bnRzXG4gICAqL1xuICBnZXRMb2FuQWNjb3VudHMoKTogQmFua0FjY291bnRDb2xsZWN0aW9uIHtcbiAgICByZXR1cm4gbmV3IEJhbmtBY2NvdW50Q29sbGVjdGlvbih0aGlzLmdldEJ5VHlwZShUWVBFX0xPQU4pKTtcbiAgfVxuXG4gIGdldCBsb2FucygpOiBMb2FuQ29sbGVjdGlvbiB7XG4gICAgcmV0dXJuIG5ldyBMb2FuQ29sbGVjdGlvbih0aGlzLmdldExvYW5BY2NvdW50cygpLm1hcCgoYmFua0FjY291bnQpID0+IGJhbmtBY2NvdW50LmxvYW4pKTtcbiAgfVxuXG4gIGdldFNhdmluZ3NBY2NvdW50cygpOiBCYW5rQWNjb3VudENvbGxlY3Rpb24ge1xuICAgIHJldHVybiBuZXcgQmFua0FjY291bnRDb2xsZWN0aW9uKHRoaXMuZ2V0QnlUeXBlKFRZUEVfTE9BTiwgdHJ1ZSkpO1xuICB9XG5cbiAgZ2V0T3BlbmluZ0JhbGFuY2UoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5pdGVtcy5yZWR1Y2UoKHN1bTogbnVtYmVyLCBiYW5rQWNjb3VudDogQmFua0FjY291bnQpOiBudW1iZXIgPT4gc3VtICsgYmFua0FjY291bnQuZ2V0T3BlbmluZ0JhbGFuY2UoKSwgMCk7XG4gIH1cblxuICBnZXQgY3VycmVudEJhbGFuY2UoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5zdW1CeSgnY3VycmVudEJhbGFuY2UnKTtcbiAgfVxuXG4gIGdldCBiYW5rU2hvcnROYW1lcygpOiBzdHJpbmcge1xuICAgIHJldHVybiB1bmlxKHRoaXMubWFwKChiYW5rQWNjb3VudCkgPT4gYmFua0FjY291bnQuYmFuay5zaG9ydE5hbWUpKS5qb2luKCcsICcpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCBDb2xsZWN0aW9uIG9mIGJhbmsgYWNjb3VudHMgd2l0aCBwcm9wZXJ0eSB0YW5rIHR5cGVcbiAgICovXG4gIGdldFByb3BlcnR5QmFua0FjY291bnRzKCk6IEJhbmtBY2NvdW50Q29sbGVjdGlvbiB7XG4gICAgcmV0dXJuIG5ldyBCYW5rQWNjb3VudENvbGxlY3Rpb24oXG4gICAgICB0aGlzLml0ZW1zLmZpbHRlcigoYmFua0FjY291bnQ6IEJhbmtBY2NvdW50KTogYm9vbGVhbiA9PiBiYW5rQWNjb3VudC5pc1Byb3BlcnR5VGFuaygpKVxuICAgICk7XG4gIH1cblxuICAvKipcbiAgICogR2V0IENvbGxlY3Rpb24gb2YgYmFuayBhY2NvdW50cyB3aXRoIHdvcmsgdGFuayB0eXBlXG4gICAqL1xuICBnZXRXb3JrQmFua0FjY291bnRzKCk6IEJhbmtBY2NvdW50Q29sbGVjdGlvbiB7XG4gICAgcmV0dXJuIG5ldyBCYW5rQWNjb3VudENvbGxlY3Rpb24oXG4gICAgICB0aGlzLml0ZW1zLmZpbHRlcigoYmFua0FjY291bnQ6IEJhbmtBY2NvdW50KTogYm9vbGVhbiA9PiBiYW5rQWNjb3VudC5pc1dvcmtUYW5rKCkpXG4gICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgQ29sbGVjdGlvbiBvZiBiYW5rIGFjY291bnRzIGJ5IHRhbmsgdHlwZVxuICAgKi9cbiAgZ2V0QnlUYW5rVHlwZSh0YW5rVHlwZTogVGFua1R5cGVFbnVtKTogQmFua0FjY291bnRDb2xsZWN0aW9uIHtcbiAgICByZXR1cm4gbmV3IEJhbmtBY2NvdW50Q29sbGVjdGlvbihcbiAgICAgIHRoaXMuaXRlbXMuZmlsdGVyKChiYW5rQWNjb3VudDogQmFua0FjY291bnQpOiBib29sZWFuID0+IGJhbmtBY2NvdW50LnRhbmtUeXBlID09PSB0YW5rVHlwZSlcbiAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCBsaXN0IG9mIGFsbCBiYW5rIGFjY291bnQgcHJvcGVydGllc1xuICAgKi9cbiAgZ2V0QmFua0FjY291bnRQcm9wZXJ0aWVzTGlzdCgpOiBCYW5rQWNjb3VudFByb3BlcnR5W10ge1xuICAgIHJldHVybiBmbGF0dGVuKFxuICAgICAgdGhpcy5pdGVtcy5tYXAoKGJhbmtBY2NvdW50OiBCYW5rQWNjb3VudCk6IEJhbmtBY2NvdW50UHJvcGVydHlbXSA9PiBiYW5rQWNjb3VudC5iYW5rQWNjb3VudFByb3BlcnRpZXMpXG4gICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgbGlzIG9mIHVuaXF1ZSBwcm9wZXJ0aWVzIGZyb20gYWxsIGJhbmsgYWNjb3VudHMgcHJvcGVydGllc1xuICAgKi9cbiAgZ2V0UHJvcGVydGllcygpOiBQcm9wZXJ0eVtdIHtcbiAgICByZXR1cm4gdW5pcUJ5KFxuICAgICAgdGhpcy5nZXRCYW5rQWNjb3VudFByb3BlcnRpZXNMaXN0KCkubWFwKChiYW5rQWNjb3VudFByb3BlcnR5OiBCYW5rQWNjb3VudFByb3BlcnR5KSA9PiBiYW5rQWNjb3VudFByb3BlcnR5LnByb3BlcnR5KSxcbiAgICAgICdpZCdcbiAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIEBUT0RPIEFsZXggbm90IGVmZmljaWVudCwgZmlsdGVyIGJhbmtBY2NvdW50cyBieSBwcm9wZXJ0eSBmaXJzdFxuICAgKi9cbiAgZ2V0UHJvcGVydHlCYWxhbmNlQW1vdW50KHByb3BlcnR5SWQ6IG51bWJlcik6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuaXRlbXMucmVkdWNlKChzdW06IG51bWJlciwgYmFua0FjY291bnQ6IEJhbmtBY2NvdW50KTogbnVtYmVyID0+IHN1bSArIGJhbmtBY2NvdW50LmdldFByb3BlcnR5QmFsYW5jZUFtb3VudChwcm9wZXJ0eUlkKSwgMCk7XG4gIH1cblxuICBnZXRNb250aGx5UmVwYXltZW50QW1vdW50KHByb3BlcnR5SWQ6IG51bWJlcik6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0TG9hbkFjY291bnRzKCkucmVkdWNlKChzdW06IG51bWJlciwgYmFua0FjY291bnQ6IEJhbmtBY2NvdW50KTogbnVtYmVyID0+XG4gICAgICBzdW0gKyBiYW5rQWNjb3VudC5sb2FuLm1vbnRobHlSZXBheW1lbnRBbW91bnQgKiBiYW5rQWNjb3VudC5nZXRQcm9wZXJ0eVBlcmNlbnRhZ2UocHJvcGVydHlJZCksIDBcbiAgICApO1xuICB9XG5cbiAgZ2V0TFZSKHByb3BlcnR5OiBQcm9wZXJ0eSk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0UHJvcGVydHlCYWxhbmNlQW1vdW50KHByb3BlcnR5LmlkKSAvIHByb3BlcnR5LmN1cnJlbnRZZWFyRm9yZWNhc3QubWFya2V0VmFsdWU7XG4gIH1cblxuICBnZXRPd24oKTogdGhpcyB7XG4gICAgLy8gVE9ETyBBbGV4L1ZpazogbWF5YmUgd2Ugc2hvdWxkIGdldCBpdCBmcm9tIGp3dFRva2VuIG9yIHRoaW5rIGFib3V0IHNvbWUgbG9jYWxTdG9yYWdlU2VydmljZT9cbiAgICByZXR1cm4gdGhpcy5maWx0ZXIoKGJhbmtBY2NvdW50OiBCYW5rQWNjb3VudCkgPT4gYmFua0FjY291bnQuaXNPd25lcigrbG9jYWxTdG9yYWdlLmdldEl0ZW0oJ3VzZXJJZCcpKSk7XG4gIH1cbn1cbiJdfQ==
@@ -1,6 +1,5 @@
1
1
  import { TransactionOperationEnum } from '../db/Enums/transaction-operation.enum';
2
2
  import { Collection } from './collection';
3
- import { CollectionDictionary } from './collection-dictionary';
4
3
  import round from 'lodash/round';
5
4
  /**
6
5
  * Maximal delay between transfer transactions
@@ -81,9 +80,9 @@ export class BankTransactionCollection extends Collection {
81
80
  */
82
81
  groupByTransaction(allocations) {
83
82
  // Group allocations by transaction id
84
- const allocationsByTransactions = new CollectionDictionary(allocations, 'transaction.id');
83
+ const allocationsByTransactions = allocations.groupBy('transaction.id');
85
84
  // Init an empty dictionary we will fill below
86
- const bankTransactionsByTransactions = new CollectionDictionary(new BankTransactionCollection([]));
85
+ const bankTransactionsByTransactions = new BankTransactionCollection([]).groupBy();
87
86
  // Fill dictionary with the same keys as at allocationsByTransactions
88
87
  allocationsByTransactions.keys.forEach((key) => {
89
88
  bankTransactionsByTransactions.add(key, this.getByAllocations(allocationsByTransactions.get(key)));
@@ -115,4 +114,4 @@ export class BankTransactionCollection extends Collection {
115
114
  return new BankTransactionCollection(this.items.filter((bankTransaction) => !bankTransaction.isAllocated(allocations)));
116
115
  }
117
116
  }
118
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFuay10cmFuc2FjdGlvbi5jb2xsZWN0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHQtY29yZS9zcmMvbGliL2NvbGxlY3Rpb25zL2JhbmstdHJhbnNhY3Rpb24uY29sbGVjdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUtsRixPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQzFDLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBRS9ELE9BQU8sS0FBSyxNQUFNLGNBQWMsQ0FBQztBQUVqQzs7R0FFRztBQUNILE1BQU0sMEJBQTBCLEdBQVcsRUFBRSxHQUFHLElBQUksR0FBRyxJQUFJLENBQUM7QUFFNUQ7Ozs7O0dBS0c7QUFDSCxNQUFNLE9BQU8seUJBQTBCLFNBQVEsVUFBMkI7SUFDeEUsU0FBUztRQUNQLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUM5QixDQUFDO0lBRUQ7O09BRUc7SUFDSCxvQkFBb0IsQ0FBQyxXQUE0QztRQUMvRCxPQUFPLEtBQUssQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLEdBQUcsV0FBVyxDQUFDLHdCQUF3QixDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUMsQ0FBQztJQUNqRyxDQUFDO0lBRUQ7O09BRUc7SUFDSCxzQkFBc0I7UUFDcEIsT0FBTyxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxlQUFnQyxFQUFFLEVBQUUsQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ3BILENBQUM7SUFFRDs7T0FFRztJQUNILElBQUksa0JBQWtCO1FBQ3BCLE9BQU8sSUFBSSx5QkFBeUIsQ0FDbEMsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxlQUFnQyxFQUFFLEVBQUUsQ0FBQyxlQUFlLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FDcEYsQ0FBQztJQUNKLENBQUM7SUFFRDs7T0FFRztJQUNILElBQUksaUJBQWlCO1FBQ25CLE9BQU8sSUFBSSx5QkFBeUIsQ0FDbEMsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxlQUFnQyxFQUFFLEVBQUUsQ0FBQyxlQUFlLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FDbkYsQ0FBQztJQUNKLENBQUM7SUFFRDs7T0FFRztJQUNILElBQUksYUFBYTtRQUNmLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxHQUFXLEVBQUUsZUFBZ0MsRUFBRSxFQUFFLENBQUMsR0FBRyxHQUFHLGVBQWUsQ0FBQyxhQUFhLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDdEgsQ0FBQztJQUVEOzs7T0FHRztJQUNILHNCQUFzQixDQUFDLFVBQTJCO1FBQ2hELE9BQU8sSUFBSSx5QkFBeUIsQ0FDbEMsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxlQUFnQyxFQUFFLEVBQUUsQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxLQUFLLFVBQVUsQ0FBQyxDQUN4RyxDQUFDO0lBQ0osQ0FBQztJQUVEOzs7T0FHRztJQUNILGlCQUFpQixDQUFDLFlBQTJCO1FBQzNDLE1BQU0sY0FBYyxHQUFhLFlBQVksQ0FBQyxHQUFHLENBQUMsQ0FBQyxXQUF3QixFQUFFLEVBQUUsQ0FBQyxXQUFXLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDaEcsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDLGVBQWdDLEVBQUUsRUFBRSxDQUFDLGNBQWMsQ0FBQyxRQUFRLENBQUMsZUFBZSxDQUFDLFdBQVcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQzFILENBQUM7SUFFRDs7O09BR0c7SUFDSCxvQkFBb0IsQ0FBQyxHQUFhO1FBQ2hDLE9BQU8sSUFBSSx5QkFBeUIsQ0FDbEMsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxlQUFnQyxFQUFFLEVBQUUsQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLGVBQWUsQ0FBQyxXQUFXLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FDdEcsQ0FBQztJQUNKLENBQUM7SUFFRDs7T0FFRztJQUNILFlBQVksQ0FBQyxlQUFnQztRQUMzQyxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBcUIsRUFBVyxFQUFFLENBQUMsSUFBSSxDQUFDLE1BQU0sR0FBRyxlQUFlLENBQUMsTUFBTSxLQUFLLENBQUM7WUFDakcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUMsR0FBRywwQkFBMEIsQ0FBQyxDQUFDO0lBQ25HLENBQUM7SUFFRDs7O09BR0c7SUFDSCxrQkFBa0IsQ0FBQyxXQUE0QztRQUM3RCxzQ0FBc0M7UUFDdEMsTUFBTSx5QkFBeUIsR0FBRyxJQUFJLG9CQUFvQixDQUFDLFdBQVcsRUFBRSxnQkFBZ0IsQ0FBQyxDQUFDO1FBQzFGLDhDQUE4QztRQUM5QyxNQUFNLDhCQUE4QixHQUFvRCxJQUFJLG9CQUFvQixDQUFDLElBQUkseUJBQXlCLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztRQUVwSixxRUFBcUU7UUFDckUseUJBQXlCLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLEdBQVcsRUFBUSxFQUFFO1lBQzNELDhCQUE4QixDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsSUFBSSxDQUFDLGdCQUFnQixDQUFDLHlCQUF5QixDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDckcsQ0FBQyxDQUFDLENBQUM7UUFFSCxPQUFPLDhCQUE4QixDQUFDO0lBQ3hDLENBQUM7SUFFRDs7T0FFRztJQUNILGdCQUFnQixDQUFDLFdBQTRDO1FBQzNELE9BQU8sSUFBSSx5QkFBeUIsQ0FDbEMsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxlQUFnQyxFQUFXLEVBQUUsQ0FBQyxXQUFXLENBQUMsa0JBQWtCLENBQUMsZUFBZSxDQUFDLENBQUMsQ0FDbEgsQ0FBQztJQUNKLENBQUM7SUFFRDs7T0FFRztJQUNILG1DQUFtQyxDQUFDLG1CQUFtQztRQUNyRSx3R0FBd0c7UUFDeEcsTUFBTSxhQUFhLEdBQWEsbUJBQW1CLENBQUMsR0FBRyxDQUFDLENBQUMsWUFBMEIsRUFBVSxFQUFFLENBQUMsWUFBWSxDQUFDLGVBQWUsQ0FBQyxDQUFDLENBQUMsRUFBRSxNQUFNLElBQUksQ0FBQyxDQUFDLENBQUM7UUFFOUksSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxlQUFnQyxFQUFRLEVBQUU7WUFDNUQsSUFBSSxhQUFhLENBQUMsUUFBUSxDQUFDLGVBQWUsQ0FBQyxNQUFNLENBQUMsRUFBRTtnQkFDbEQsZUFBZSxDQUFDLFNBQVMsR0FBRyx3QkFBd0IsQ0FBQyxRQUFRLENBQUM7YUFDL0Q7UUFDSCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRDs7T0FFRztJQUNILGNBQWMsQ0FBQyxXQUE0QztRQUN6RCxPQUFPLElBQUkseUJBQXlCLENBQ2xDLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUMsZUFBZ0MsRUFBVyxFQUFFLENBQUMsQ0FBQyxlQUFlLENBQUMsV0FBVyxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQzVHLENBQUM7SUFDSixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBUcmFuc2FjdGlvbk9wZXJhdGlvbkVudW0gfSBmcm9tICcuLi9kYi9FbnVtcy90cmFuc2FjdGlvbi1vcGVyYXRpb24uZW51bSc7XG5pbXBvcnQgeyBCYW5rVHJhbnNhY3Rpb24gfSBmcm9tICcuLi9tb2RlbHMvYmFuay9iYW5rLXRyYW5zYWN0aW9uJztcbmltcG9ydCB7IE1vbnRoTnVtYmVyRW51bSB9IGZyb20gJy4uL21vZGVscy9maW5hbmNpYWwteWVhci9tb250aC1udW1iZXIuZW51bSc7XG5pbXBvcnQgeyBJbmNvbWVTb3VyY2UgfSBmcm9tICcuLi9tb2RlbHMvaW5jb21lLXNvdXJjZS9pbmNvbWUtc291cmNlJztcbmltcG9ydCB7IEJhbmtBY2NvdW50IH0gZnJvbSAnLi4vbW9kZWxzL2JhbmsvYmFuay1hY2NvdW50JztcbmltcG9ydCB7IENvbGxlY3Rpb24gfSBmcm9tICcuL2NvbGxlY3Rpb24nO1xuaW1wb3J0IHsgQ29sbGVjdGlvbkRpY3Rpb25hcnkgfSBmcm9tICcuL2NvbGxlY3Rpb24tZGljdGlvbmFyeSc7XG5pbXBvcnQgeyBUcmFuc2FjdGlvbkFsbG9jYXRpb25Db2xsZWN0aW9uIH0gZnJvbSAnLi90cmFuc2FjdGlvbi90cmFuc2FjdGlvbi1hbGxvY2F0aW9uLmNvbGxlY3Rpb24nO1xuaW1wb3J0IHJvdW5kIGZyb20gJ2xvZGFzaC9yb3VuZCc7XG5cbi8qKlxuICogTWF4aW1hbCBkZWxheSBiZXR3ZWVuIHRyYW5zZmVyIHRyYW5zYWN0aW9uc1xuICovXG5jb25zdCBUUkFOU0FDVElPTl9UUkFOU0ZFUl9ERUxBWTogbnVtYmVyID0gOTYgKiAzNjAwICogMTAwMDtcblxuLyoqXG4gKiBDb2xsZWN0aW9uIG9mIGJhbmsgdHJhbnNhY3Rpb25zLlxuICogSU1QT1JUQU5UOiBDcmVhdGUgdGhpcyBjb2xsZWN0aW9uIGJhc2VkIG9uIGJhbmsgdHJhbnNhY3Rpb25zIGZyb20gVHJhbnNhY3Rpb25BbGxvY2F0aW9uU2VydmljZVxuICogQFRPRE8gZmluZCB3YXkgdG8gYWNjZXB0IGludGVyZmFjZSB3aXRoIGFsbG9jYXRpb24gaW5zdGVhZCBvZiBiYW5rVHJhbnNhY3Rpb24gdG8gcHJldmVudCB3cm9uZyB1c2FnZVxuICogYmVjYXVzZSBhbGwgYW1vdW50cyBjYWxjdWxhdGVzIHdpdGggYWxsb2NhdGVkIGFtb3VudHMgYnV0IG5vdCBmcm9tIGJhbmsgdHJhbnNhY3Rpb25zIGFtb3VudHMuXG4gKi9cbmV4cG9ydCBjbGFzcyBCYW5rVHJhbnNhY3Rpb25Db2xsZWN0aW9uIGV4dGVuZHMgQ29sbGVjdGlvbjxCYW5rVHJhbnNhY3Rpb24+IHtcbiAgZ2V0QW1vdW50KCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuc3VtQnkoJ2Ftb3VudCcpO1xuICB9XG5cbiAgLyoqXG4gICAqIERpZmZlcmVuY2UgYmV0d2VlbiB0b3RhbCBiYW5rIHRyYW5zYWN0aW9ucyBhbW91bnQgYW5kIHN1bSBvZiBhbGxvY2F0aW9ucyBmb3IgcGFzc2VkIGJhbmsgdHJhbnNhY3Rpb25zXG4gICAqL1xuICBnZXRVbmFsbG9jYXRlZEFtb3VudChhbGxvY2F0aW9uczogVHJhbnNhY3Rpb25BbGxvY2F0aW9uQ29sbGVjdGlvbikge1xuICAgIHJldHVybiByb3VuZCh0aGlzLmdldEFtb3VudCgpIC0gYWxsb2NhdGlvbnMuZ2V0QnlCYW5rVHJhbnNhY3Rpb25zSWRzKHRoaXMuZ2V0SWRzKCkpLmFtb3VudCwgMik7XG4gIH1cblxuICAvKipcbiAgICogZ2V0IGRhdGUgb2YgdGhlIGxhc3QgdHJhbnNhY3Rpb25cbiAgICovXG4gIGdldExhc3RUcmFuc2FjdGlvbkRhdGUoKTogRGF0ZSB7XG4gICAgcmV0dXJuIG5ldyBEYXRlKE1hdGgubWF4LmFwcGx5KE1hdGgsIHRoaXMuaXRlbXMubWFwKChiYW5rVHJhbnNhY3Rpb246IEJhbmtUcmFuc2FjdGlvbikgPT4gYmFua1RyYW5zYWN0aW9uLmRhdGUpKSk7XG4gIH1cblxuICAvKipcbiAgICogZ2V0IGxpc3Qgb2YgY3JlZGl0IHRyYW5zYWN0aW9uc1xuICAgKi9cbiAgZ2V0IGNyZWRpdFRyYW5zYWN0aW9ucygpOiBCYW5rVHJhbnNhY3Rpb25Db2xsZWN0aW9uIHtcbiAgICByZXR1cm4gbmV3IEJhbmtUcmFuc2FjdGlvbkNvbGxlY3Rpb24oXG4gICAgICB0aGlzLml0ZW1zLmZpbHRlcigoYmFua1RyYW5zYWN0aW9uOiBCYW5rVHJhbnNhY3Rpb24pID0+IGJhbmtUcmFuc2FjdGlvbi5pc0NyZWRpdCgpKVxuICAgICk7XG4gIH1cblxuICAvKipcbiAgICogZ2V0IGxpc3Qgb2YgZGViaXQgdHJhbnNhY3Rpb25zXG4gICAqL1xuICBnZXQgZGViaXRUcmFuc2FjdGlvbnMoKTogQmFua1RyYW5zYWN0aW9uQ29sbGVjdGlvbiB7XG4gICAgcmV0dXJuIG5ldyBCYW5rVHJhbnNhY3Rpb25Db2xsZWN0aW9uKFxuICAgICAgdGhpcy5pdGVtcy5maWx0ZXIoKGJhbmtUcmFuc2FjdGlvbjogQmFua1RyYW5zYWN0aW9uKSA9PiBiYW5rVHJhbnNhY3Rpb24uaXNEZWJpdCgpKVxuICAgICk7XG4gIH1cblxuICAvKipcbiAgICogZ2V0IGRpZmZlcmVuY2UgYmV0d2VlbiBkZWJpdCBhbmQgY3JlZGl0IHRyYW5zYWN0aW9ucyBhbW91bnRzXG4gICAqL1xuICBnZXQgYmFsYW5jZUFtb3VudCgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLml0ZW1zLnJlZHVjZSgoc3VtOiBudW1iZXIsIGJhbmtUcmFuc2FjdGlvbjogQmFua1RyYW5zYWN0aW9uKSA9PiBzdW0gKyBiYW5rVHJhbnNhY3Rpb24uYmFsYW5jZUFtb3VudCwgMCk7XG4gIH1cblxuICAvKipcbiAgICogZ2V0IGxpc3Qgb2YgdHJhbnNhY3Rpb25zIGZvciBwYXNzZWQgbW9udGhcbiAgICogQHBhcmFtIG1vbnRoSW5kZXggTW9udGggbnVtYmVyIGZyb20gMCB0byAxMVxuICAgKi9cbiAgZ2V0VHJhbnNhY3Rpb25zQnlNb250aChtb250aEluZGV4OiBNb250aE51bWJlckVudW0pOiBCYW5rVHJhbnNhY3Rpb25Db2xsZWN0aW9uIHtcbiAgICByZXR1cm4gbmV3IEJhbmtUcmFuc2FjdGlvbkNvbGxlY3Rpb24oXG4gICAgICB0aGlzLml0ZW1zLmZpbHRlcigoYmFua1RyYW5zYWN0aW9uOiBCYW5rVHJhbnNhY3Rpb24pID0+IGJhbmtUcmFuc2FjdGlvbi5kYXRlLmdldE1vbnRoKCkgPT09IG1vbnRoSW5kZXgpXG4gICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBnZXQgbGlzdCBvZiB0cmFuc2FjdGlvbnMgYnkgcHJvdmlkZWQgYmFuayBhY2NvdW50c1xuICAgKiBAcGFyYW0gYmFua0FjY291bnRzIGJ5IHdoaWNoIHRyYW5zYWN0aW9ucyBzaG91bGQgYmUgcmV0dXJuZWRcbiAgICovXG4gIGdldEJ5QmFua0FjY291bnRzKGJhbmtBY2NvdW50czogQmFua0FjY291bnRbXSk6IEJhbmtUcmFuc2FjdGlvbltdIHtcbiAgICBjb25zdCBiYW5rQWNjb3VudElkczogbnVtYmVyW10gPSBiYW5rQWNjb3VudHMubWFwKChiYW5rQWNjb3VudDogQmFua0FjY291bnQpID0+IGJhbmtBY2NvdW50LmlkKTtcbiAgICByZXR1cm4gdGhpcy5pdGVtcy5maWx0ZXIoKGJhbmtUcmFuc2FjdGlvbjogQmFua1RyYW5zYWN0aW9uKSA9PiBiYW5rQWNjb3VudElkcy5pbmNsdWRlcyhiYW5rVHJhbnNhY3Rpb24uYmFua0FjY291bnQuaWQpKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBnZXQgbGlzdCBvZiB0cmFuc2FjdGlvbnMgYnkgcHJvdmlkZWQgaWRzIG9mIGJhbmsgYWNjb3VudHNcbiAgICogQHBhcmFtIGlkcyBvZiBiYW5rIGFjY291bnRzXG4gICAqL1xuICBnZXRCeUJhbmtBY2NvdW50c0lkcyhpZHM6IG51bWJlcltdKTogQmFua1RyYW5zYWN0aW9uQ29sbGVjdGlvbiB7XG4gICAgcmV0dXJuIG5ldyBCYW5rVHJhbnNhY3Rpb25Db2xsZWN0aW9uKFxuICAgICAgdGhpcy5pdGVtcy5maWx0ZXIoKGJhbmtUcmFuc2FjdGlvbjogQmFua1RyYW5zYWN0aW9uKSA9PiBpZHMuaW5jbHVkZXMoYmFua1RyYW5zYWN0aW9uLmJhbmtBY2NvdW50LmlkKSlcbiAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIEZpbmQgQmFuayBUcmFuc2FjdGlvbiBhdmFpbGFibGUgZm9yIHRyYW5zZmVyXG4gICAqL1xuICBmaW5kVHJhbnNmZXIoYmFua1RyYW5zYWN0aW9uOiBCYW5rVHJhbnNhY3Rpb24pOiBCYW5rVHJhbnNhY3Rpb24ge1xuICAgIHJldHVybiB0aGlzLml0ZW1zLmZpbmQoKGl0ZW06IEJhbmtUcmFuc2FjdGlvbik6IGJvb2xlYW4gPT4gaXRlbS5hbW91bnQgKyBiYW5rVHJhbnNhY3Rpb24uYW1vdW50ID09PSAwICYmXG4gICAgICAgIE1hdGguYWJzKGJhbmtUcmFuc2FjdGlvbi5kYXRlLmdldFRpbWUoKSAtIGl0ZW0uZGF0ZS5nZXRUaW1lKCkpIDwgVFJBTlNBQ1RJT05fVFJBTlNGRVJfREVMQVkpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdyb3VwIGJhbmsgdHJhbnNhY3Rpb25zIGJ5IHRyYW5zYWN0aW9uIGlkLlxuICAgKiBFYWNoIGdyb3VwIGlzIGJhbmsgdHJhbnNhY3Rpb24gY29sbGVjdGlvbiBhbmQgY29udGFpbnMgYmFuayB0cmFuc2FjdGlvbnMgcmVsYXRlZCB0byB0cmFuc2FjdGlvbnMgdmlhIGFsbG9jYXRpb25zXG4gICAqL1xuICBncm91cEJ5VHJhbnNhY3Rpb24oYWxsb2NhdGlvbnM6IFRyYW5zYWN0aW9uQWxsb2NhdGlvbkNvbGxlY3Rpb24pOiBDb2xsZWN0aW9uRGljdGlvbmFyeTxCYW5rVHJhbnNhY3Rpb25Db2xsZWN0aW9uPiB7XG4gICAgLy8gR3JvdXAgYWxsb2NhdGlvbnMgYnkgdHJhbnNhY3Rpb24gaWRcbiAgICBjb25zdCBhbGxvY2F0aW9uc0J5VHJhbnNhY3Rpb25zID0gbmV3IENvbGxlY3Rpb25EaWN0aW9uYXJ5KGFsbG9jYXRpb25zLCAndHJhbnNhY3Rpb24uaWQnKTtcbiAgICAvLyBJbml0IGFuIGVtcHR5IGRpY3Rpb25hcnkgd2Ugd2lsbCBmaWxsIGJlbG93XG4gICAgY29uc3QgYmFua1RyYW5zYWN0aW9uc0J5VHJhbnNhY3Rpb25zOiBDb2xsZWN0aW9uRGljdGlvbmFyeTxCYW5rVHJhbnNhY3Rpb25Db2xsZWN0aW9uPiA9IG5ldyBDb2xsZWN0aW9uRGljdGlvbmFyeShuZXcgQmFua1RyYW5zYWN0aW9uQ29sbGVjdGlvbihbXSkpO1xuXG4gICAgLy8gRmlsbCBkaWN0aW9uYXJ5IHdpdGggdGhlIHNhbWUga2V5cyBhcyBhdCBhbGxvY2F0aW9uc0J5VHJhbnNhY3Rpb25zXG4gICAgYWxsb2NhdGlvbnNCeVRyYW5zYWN0aW9ucy5rZXlzLmZvckVhY2goKGtleTogc3RyaW5nKTogdm9pZCA9PiB7XG4gICAgICBiYW5rVHJhbnNhY3Rpb25zQnlUcmFuc2FjdGlvbnMuYWRkKGtleSwgdGhpcy5nZXRCeUFsbG9jYXRpb25zKGFsbG9jYXRpb25zQnlUcmFuc2FjdGlvbnMuZ2V0KGtleSkpKTtcbiAgICB9KTtcblxuICAgIHJldHVybiBiYW5rVHJhbnNhY3Rpb25zQnlUcmFuc2FjdGlvbnM7XG4gIH1cblxuICAvKipcbiAgICogR2V0IGNvbGxlY3Rpb24gb2YgYmFuayB0cmFuc2FjdGlvbnMgcmVsYXRlZCB3aXRoIHBhc3NlZCBhbGxvY2F0aW9uc1xuICAgKi9cbiAgZ2V0QnlBbGxvY2F0aW9ucyhhbGxvY2F0aW9uczogVHJhbnNhY3Rpb25BbGxvY2F0aW9uQ29sbGVjdGlvbik6IEJhbmtUcmFuc2FjdGlvbkNvbGxlY3Rpb24ge1xuICAgIHJldHVybiBuZXcgQmFua1RyYW5zYWN0aW9uQ29sbGVjdGlvbihcbiAgICAgIHRoaXMuaXRlbXMuZmlsdGVyKChiYW5rVHJhbnNhY3Rpb246IEJhbmtUcmFuc2FjdGlvbik6IGJvb2xlYW4gPT4gYWxsb2NhdGlvbnMuaGFzQmFua1RyYW5zYWN0aW9uKGJhbmtUcmFuc2FjdGlvbikpXG4gICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXQgYWxsb2NhdGUgb3BlcmF0aW9uIGZvciBiYW5rIHRyYW5zYWN0aW9ucyB3aXRoIGFtb3VudHMgZXF1YWwgdG8gc2FsYXJ5XG4gICAqL1xuICBwcmVzZWxlY3RBbGxvY2F0ZU9wZXJhdGlvbkZvclNhbGFyeShzYWxhcnlJbmNvbWVTb3VyY2VzOiBJbmNvbWVTb3VyY2VbXSk6IHZvaWQge1xuICAgIC8vIGluY29tZVNvdXJjZS5zYWxhcnlGb3JlY2FzdHNbMF0gYmVjYXVzZSBlYWNoIGluY29tZSBzb3VyY2UgaGFzIG9ubHkgb25lIGZvcmVjYXN0IGZvciBjdXJyZW50IGZpbiB5ZWFyXG4gICAgY29uc3Qgc2FsYXJ5QW1vdW50czogbnVtYmVyW10gPSBzYWxhcnlJbmNvbWVTb3VyY2VzLm1hcCgoaW5jb21lU291cmNlOiBJbmNvbWVTb3VyY2UpOiBudW1iZXIgPT4gaW5jb21lU291cmNlLnNhbGFyeUZvcmVjYXN0c1swXT8ubmV0UGF5IHx8IDApO1xuXG4gICAgdGhpcy5pdGVtcy5mb3JFYWNoKChiYW5rVHJhbnNhY3Rpb246IEJhbmtUcmFuc2FjdGlvbik6IHZvaWQgPT4ge1xuICAgICAgaWYgKHNhbGFyeUFtb3VudHMuaW5jbHVkZXMoYmFua1RyYW5zYWN0aW9uLmFtb3VudCkpIHtcbiAgICAgICAgYmFua1RyYW5zYWN0aW9uLm9wZXJhdGlvbiA9IFRyYW5zYWN0aW9uT3BlcmF0aW9uRW51bS5BTExPQ0FURTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgY29sbGVjdGlvbiBvZiB1bmFsbG9jYXRlZCBiYW5rVHJhbnNhY3Rpb25zXG4gICAqL1xuICBnZXRVbmFsbG9jYXRlZChhbGxvY2F0aW9uczogVHJhbnNhY3Rpb25BbGxvY2F0aW9uQ29sbGVjdGlvbik6IEJhbmtUcmFuc2FjdGlvbkNvbGxlY3Rpb24ge1xuICAgIHJldHVybiBuZXcgQmFua1RyYW5zYWN0aW9uQ29sbGVjdGlvbihcbiAgICAgIHRoaXMuaXRlbXMuZmlsdGVyKChiYW5rVHJhbnNhY3Rpb246IEJhbmtUcmFuc2FjdGlvbik6IGJvb2xlYW4gPT4gIWJhbmtUcmFuc2FjdGlvbi5pc0FsbG9jYXRlZChhbGxvY2F0aW9ucykpXG4gICAgKTtcbiAgfVxufVxuIl19
117
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFuay10cmFuc2FjdGlvbi5jb2xsZWN0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHQtY29yZS9zcmMvbGliL2NvbGxlY3Rpb25zL2JhbmstdHJhbnNhY3Rpb24uY29sbGVjdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUtsRixPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBRzFDLE9BQU8sS0FBSyxNQUFNLGNBQWMsQ0FBQztBQUVqQzs7R0FFRztBQUNILE1BQU0sMEJBQTBCLEdBQVcsRUFBRSxHQUFHLElBQUksR0FBRyxJQUFJLENBQUM7QUFFNUQ7Ozs7O0dBS0c7QUFDSCxNQUFNLE9BQU8seUJBQTBCLFNBQVEsVUFBMkI7SUFDeEUsU0FBUztRQUNQLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUM5QixDQUFDO0lBRUQ7O09BRUc7SUFDSCxvQkFBb0IsQ0FBQyxXQUE0QztRQUMvRCxPQUFPLEtBQUssQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLEdBQUcsV0FBVyxDQUFDLHdCQUF3QixDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUMsQ0FBQztJQUNqRyxDQUFDO0lBRUQ7O09BRUc7SUFDSCxzQkFBc0I7UUFDcEIsT0FBTyxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxlQUFnQyxFQUFFLEVBQUUsQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ3BILENBQUM7SUFFRDs7T0FFRztJQUNILElBQUksa0JBQWtCO1FBQ3BCLE9BQU8sSUFBSSx5QkFBeUIsQ0FDbEMs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LE9BQU8sSUFBSSx5QkFBeUIsQ0FDbEMsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxlQUFnQyxFQUFXLEVBQUUsQ0FBQyxXQUFXLENBQUMsa0JBQWtCLENBQUMsZUFBZSxDQUFDLENBQUMsQ0FDbEgsQ0FBQztJQUNKLENBQUM7SUFFRDs7T0FFRztJQUNILG1DQUFtQyxDQUFDLG1CQUFtQztRQUNyRSx3R0FBd0c7UUFDeEcsTUFBTSxhQUFhLEdBQWEsbUJBQW1CLENBQUMsR0FBRyxDQUFDLENBQUMsWUFBMEIsRUFBVSxFQUFFLENBQUMsWUFBWSxDQUFDLGVBQWUsQ0FBQyxDQUFDLENBQUMsRUFBRSxNQUFNLElBQUksQ0FBQyxDQUFDLENBQUM7UUFFOUksSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxlQUFnQyxFQUFRLEVBQUU7WUFDNUQsSUFBSSxhQUFhLENBQUMsUUFBUSxDQUFDLGVBQWUsQ0FBQyxNQUFNLENBQUMsRUFBRTtnQkFDbEQsZUFBZSxDQUFDLFNBQVMsR0FBRyx3QkFBd0IsQ0FBQyxRQUFRLENBQUM7YUFDL0Q7UUFDSCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRDs7T0FFRztJQUNILGNBQWMsQ0FBQyxXQUE0QztRQUN6RCxPQUFPLElBQUkseUJBQXlCLENBQ2xDLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUMsZUFBZ0MsRUFBVyxFQUFFLENBQUMsQ0FBQyxlQUFlLENBQUMsV0FBVyxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQzVHLENBQUM7SUFDSixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBUcmFuc2FjdGlvbk9wZXJhdGlvbkVudW0gfSBmcm9tICcuLi9kYi9FbnVtcy90cmFuc2FjdGlvbi1vcGVyYXRpb24uZW51bSc7XG5pbXBvcnQgeyBCYW5rVHJhbnNhY3Rpb24gfSBmcm9tICcuLi9tb2RlbHMvYmFuay9iYW5rLXRyYW5zYWN0aW9uJztcbmltcG9ydCB7IE1vbnRoTnVtYmVyRW51bSB9IGZyb20gJy4uL21vZGVscy9maW5hbmNpYWwteWVhci9tb250aC1udW1iZXIuZW51bSc7XG5pbXBvcnQgeyBJbmNvbWVTb3VyY2UgfSBmcm9tICcuLi9tb2RlbHMvaW5jb21lLXNvdXJjZS9pbmNvbWUtc291cmNlJztcbmltcG9ydCB7IEJhbmtBY2NvdW50IH0gZnJvbSAnLi4vbW9kZWxzL2JhbmsvYmFuay1hY2NvdW50JztcbmltcG9ydCB7IENvbGxlY3Rpb24gfSBmcm9tICcuL2NvbGxlY3Rpb24nO1xuaW1wb3J0IHsgQ29sbGVjdGlvbkRpY3Rpb25hcnkgfSBmcm9tICcuL2NvbGxlY3Rpb24tZGljdGlvbmFyeSc7XG5pbXBvcnQgeyBUcmFuc2FjdGlvbkFsbG9jYXRpb25Db2xsZWN0aW9uIH0gZnJvbSAnLi90cmFuc2FjdGlvbi90cmFuc2FjdGlvbi1hbGxvY2F0aW9uLmNvbGxlY3Rpb24nO1xuaW1wb3J0IHJvdW5kIGZyb20gJ2xvZGFzaC9yb3VuZCc7XG5cbi8qKlxuICogTWF4aW1hbCBkZWxheSBiZXR3ZWVuIHRyYW5zZmVyIHRyYW5zYWN0aW9uc1xuICovXG5jb25zdCBUUkFOU0FDVElPTl9UUkFOU0ZFUl9ERUxBWTogbnVtYmVyID0gOTYgKiAzNjAwICogMTAwMDtcblxuLyoqXG4gKiBDb2xsZWN0aW9uIG9mIGJhbmsgdHJhbnNhY3Rpb25zLlxuICogSU1QT1JUQU5UOiBDcmVhdGUgdGhpcyBjb2xsZWN0aW9uIGJhc2VkIG9uIGJhbmsgdHJhbnNhY3Rpb25zIGZyb20gVHJhbnNhY3Rpb25BbGxvY2F0aW9uU2VydmljZVxuICogQFRPRE8gZmluZCB3YXkgdG8gYWNjZXB0IGludGVyZmFjZSB3aXRoIGFsbG9jYXRpb24gaW5zdGVhZCBvZiBiYW5rVHJhbnNhY3Rpb24gdG8gcHJldmVudCB3cm9uZyB1c2FnZVxuICogYmVjYXVzZSBhbGwgYW1vdW50cyBjYWxjdWxhdGVzIHdpdGggYWxsb2NhdGVkIGFtb3VudHMgYnV0IG5vdCBmcm9tIGJhbmsgdHJhbnNhY3Rpb25zIGFtb3VudHMuXG4gKi9cbmV4cG9ydCBjbGFzcyBCYW5rVHJhbnNhY3Rpb25Db2xsZWN0aW9uIGV4dGVuZHMgQ29sbGVjdGlvbjxCYW5rVHJhbnNhY3Rpb24+IHtcbiAgZ2V0QW1vdW50KCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuc3VtQnkoJ2Ftb3VudCcpO1xuICB9XG5cbiAgLyoqXG4gICAqIERpZmZlcmVuY2UgYmV0d2VlbiB0b3RhbCBiYW5rIHRyYW5zYWN0aW9ucyBhbW91bnQgYW5kIHN1bSBvZiBhbGxvY2F0aW9ucyBmb3IgcGFzc2VkIGJhbmsgdHJhbnNhY3Rpb25zXG4gICAqL1xuICBnZXRVbmFsbG9jYXRlZEFtb3VudChhbGxvY2F0aW9uczogVHJhbnNhY3Rpb25BbGxvY2F0aW9uQ29sbGVjdGlvbikge1xuICAgIHJldHVybiByb3VuZCh0aGlzLmdldEFtb3VudCgpIC0gYWxsb2NhdGlvbnMuZ2V0QnlCYW5rVHJhbnNhY3Rpb25zSWRzKHRoaXMuZ2V0SWRzKCkpLmFtb3VudCwgMik7XG4gIH1cblxuICAvKipcbiAgICogZ2V0IGRhdGUgb2YgdGhlIGxhc3QgdHJhbnNhY3Rpb25cbiAgICovXG4gIGdldExhc3RUcmFuc2FjdGlvbkRhdGUoKTogRGF0ZSB7XG4gICAgcmV0dXJuIG5ldyBEYXRlKE1hdGgubWF4LmFwcGx5KE1hdGgsIHRoaXMuaXRlbXMubWFwKChiYW5rVHJhbnNhY3Rpb246IEJhbmtUcmFuc2FjdGlvbikgPT4gYmFua1RyYW5zYWN0aW9uLmRhdGUpKSk7XG4gIH1cblxuICAvKipcbiAgICogZ2V0IGxpc3Qgb2YgY3JlZGl0IHRyYW5zYWN0aW9uc1xuICAgKi9cbiAgZ2V0IGNyZWRpdFRyYW5zYWN0aW9ucygpOiBCYW5rVHJhbnNhY3Rpb25Db2xsZWN0aW9uIHtcbiAgICByZXR1cm4gbmV3IEJhbmtUcmFuc2FjdGlvbkNvbGxlY3Rpb24oXG4gICAgICB0aGlzLml0ZW1zLmZpbHRlcigoYmFua1RyYW5zYWN0aW9uOiBCYW5rVHJhbnNhY3Rpb24pID0+IGJhbmtUcmFuc2FjdGlvbi5pc0NyZWRpdCgpKVxuICAgICk7XG4gIH1cblxuICAvKipcbiAgICogZ2V0IGxpc3Qgb2YgZGViaXQgdHJhbnNhY3Rpb25zXG4gICAqL1xuICBnZXQgZGViaXRUcmFuc2FjdGlvbnMoKTogQmFua1RyYW5zYWN0aW9uQ29sbGVjdGlvbiB7XG4gICAgcmV0dXJuIG5ldyBCYW5rVHJhbnNhY3Rpb25Db2xsZWN0aW9uKFxuICAgICAgdGhpcy5pdGVtcy5maWx0ZXIoKGJhbmtUcmFuc2FjdGlvbjogQmFua1RyYW5zYWN0aW9uKSA9PiBiYW5rVHJhbnNhY3Rpb24uaXNEZWJpdCgpKVxuICAgICk7XG4gIH1cblxuICAvKipcbiAgICogZ2V0IGRpZmZlcmVuY2UgYmV0d2VlbiBkZWJpdCBhbmQgY3JlZGl0IHRyYW5zYWN0aW9ucyBhbW91bnRzXG4gICAqL1xuICBnZXQgYmFsYW5jZUFtb3VudCgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLml0ZW1zLnJlZHVjZSgoc3VtOiBudW1iZXIsIGJhbmtUcmFuc2FjdGlvbjogQmFua1RyYW5zYWN0aW9uKSA9PiBzdW0gKyBiYW5rVHJhbnNhY3Rpb24uYmFsYW5jZUFtb3VudCwgMCk7XG4gIH1cblxuICAvKipcbiAgICogZ2V0IGxpc3Qgb2YgdHJhbnNhY3Rpb25zIGZvciBwYXNzZWQgbW9udGhcbiAgICogQHBhcmFtIG1vbnRoSW5kZXggTW9udGggbnVtYmVyIGZyb20gMCB0byAxMVxuICAgKi9cbiAgZ2V0VHJhbnNhY3Rpb25zQnlNb250aChtb250aEluZGV4OiBNb250aE51bWJlckVudW0pOiBCYW5rVHJhbnNhY3Rpb25Db2xsZWN0aW9uIHtcbiAgICByZXR1cm4gbmV3IEJhbmtUcmFuc2FjdGlvbkNvbGxlY3Rpb24oXG4gICAgICB0aGlzLml0ZW1zLmZpbHRlcigoYmFua1RyYW5zYWN0aW9uOiBCYW5rVHJhbnNhY3Rpb24pID0+IGJhbmtUcmFuc2FjdGlvbi5kYXRlLmdldE1vbnRoKCkgPT09IG1vbnRoSW5kZXgpXG4gICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBnZXQgbGlzdCBvZiB0cmFuc2FjdGlvbnMgYnkgcHJvdmlkZWQgYmFuayBhY2NvdW50c1xuICAgKiBAcGFyYW0gYmFua0FjY291bnRzIGJ5IHdoaWNoIHRyYW5zYWN0aW9ucyBzaG91bGQgYmUgcmV0dXJuZWRcbiAgICovXG4gIGdldEJ5QmFua0FjY291bnRzKGJhbmtBY2NvdW50czogQmFua0FjY291bnRbXSk6IEJhbmtUcmFuc2FjdGlvbltdIHtcbiAgICBjb25zdCBiYW5rQWNjb3VudElkczogbnVtYmVyW10gPSBiYW5rQWNjb3VudHMubWFwKChiYW5rQWNjb3VudDogQmFua0FjY291bnQpID0+IGJhbmtBY2NvdW50LmlkKTtcbiAgICByZXR1cm4gdGhpcy5pdGVtcy5maWx0ZXIoKGJhbmtUcmFuc2FjdGlvbjogQmFua1RyYW5zYWN0aW9uKSA9PiBiYW5rQWNjb3VudElkcy5pbmNsdWRlcyhiYW5rVHJhbnNhY3Rpb24uYmFua0FjY291bnQuaWQpKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBnZXQgbGlzdCBvZiB0cmFuc2FjdGlvbnMgYnkgcHJvdmlkZWQgaWRzIG9mIGJhbmsgYWNjb3VudHNcbiAgICogQHBhcmFtIGlkcyBvZiBiYW5rIGFjY291bnRzXG4gICAqL1xuICBnZXRCeUJhbmtBY2NvdW50c0lkcyhpZHM6IG51bWJlcltdKTogQmFua1RyYW5zYWN0aW9uQ29sbGVjdGlvbiB7XG4gICAgcmV0dXJuIG5ldyBCYW5rVHJhbnNhY3Rpb25Db2xsZWN0aW9uKFxuICAgICAgdGhpcy5pdGVtcy5maWx0ZXIoKGJhbmtUcmFuc2FjdGlvbjogQmFua1RyYW5zYWN0aW9uKSA9PiBpZHMuaW5jbHVkZXMoYmFua1RyYW5zYWN0aW9uLmJhbmtBY2NvdW50LmlkKSlcbiAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIEZpbmQgQmFuayBUcmFuc2FjdGlvbiBhdmFpbGFibGUgZm9yIHRyYW5zZmVyXG4gICAqL1xuICBmaW5kVHJhbnNmZXIoYmFua1RyYW5zYWN0aW9uOiBCYW5rVHJhbnNhY3Rpb24pOiBCYW5rVHJhbnNhY3Rpb24ge1xuICAgIHJldHVybiB0aGlzLml0ZW1zLmZpbmQoKGl0ZW06IEJhbmtUcmFuc2FjdGlvbik6IGJvb2xlYW4gPT4gaXRlbS5hbW91bnQgKyBiYW5rVHJhbnNhY3Rpb24uYW1vdW50ID09PSAwICYmXG4gICAgICAgIE1hdGguYWJzKGJhbmtUcmFuc2FjdGlvbi5kYXRlLmdldFRpbWUoKSAtIGl0ZW0uZGF0ZS5nZXRUaW1lKCkpIDwgVFJBTlNBQ1RJT05fVFJBTlNGRVJfREVMQVkpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdyb3VwIGJhbmsgdHJhbnNhY3Rpb25zIGJ5IHRyYW5zYWN0aW9uIGlkLlxuICAgKiBFYWNoIGdyb3VwIGlzIGJhbmsgdHJhbnNhY3Rpb24gY29sbGVjdGlvbiBhbmQgY29udGFpbnMgYmFuayB0cmFuc2FjdGlvbnMgcmVsYXRlZCB0byB0cmFuc2FjdGlvbnMgdmlhIGFsbG9jYXRpb25zXG4gICAqL1xuICBncm91cEJ5VHJhbnNhY3Rpb24oYWxsb2NhdGlvbnM6IFRyYW5zYWN0aW9uQWxsb2NhdGlvbkNvbGxlY3Rpb24pOiBDb2xsZWN0aW9uRGljdGlvbmFyeTxCYW5rVHJhbnNhY3Rpb25Db2xsZWN0aW9uPiB7XG4gICAgLy8gR3JvdXAgYWxsb2NhdGlvbnMgYnkgdHJhbnNhY3Rpb24gaWRcbiAgICBjb25zdCBhbGxvY2F0aW9uc0J5VHJhbnNhY3Rpb25zID0gYWxsb2NhdGlvbnMuZ3JvdXBCeSgndHJhbnNhY3Rpb24uaWQnKTtcbiAgICAvLyBJbml0IGFuIGVtcHR5IGRpY3Rpb25hcnkgd2Ugd2lsbCBmaWxsIGJlbG93XG4gICAgY29uc3QgYmFua1RyYW5zYWN0aW9uc0J5VHJhbnNhY3Rpb25zID0gbmV3IEJhbmtUcmFuc2FjdGlvbkNvbGxlY3Rpb24oW10pLmdyb3VwQnkoKTtcblxuICAgIC8vIEZpbGwgZGljdGlvbmFyeSB3aXRoIHRoZSBzYW1lIGtleXMgYXMgYXQgYWxsb2NhdGlvbnNCeVRyYW5zYWN0aW9uc1xuICAgIGFsbG9jYXRpb25zQnlUcmFuc2FjdGlvbnMua2V5cy5mb3JFYWNoKChrZXk6IHN0cmluZyk6IHZvaWQgPT4ge1xuICAgICAgYmFua1RyYW5zYWN0aW9uc0J5VHJhbnNhY3Rpb25zLmFkZChrZXksIHRoaXMuZ2V0QnlBbGxvY2F0aW9ucyhhbGxvY2F0aW9uc0J5VHJhbnNhY3Rpb25zLmdldChrZXkpKSk7XG4gICAgfSk7XG5cbiAgICByZXR1cm4gYmFua1RyYW5zYWN0aW9uc0J5VHJhbnNhY3Rpb25zO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCBjb2xsZWN0aW9uIG9mIGJhbmsgdHJhbnNhY3Rpb25zIHJlbGF0ZWQgd2l0aCBwYXNzZWQgYWxsb2NhdGlvbnNcbiAgICovXG4gIGdldEJ5QWxsb2NhdGlvbnMoYWxsb2NhdGlvbnM6IFRyYW5zYWN0aW9uQWxsb2NhdGlvbkNvbGxlY3Rpb24pOiBCYW5rVHJhbnNhY3Rpb25Db2xsZWN0aW9uIHtcbiAgICByZXR1cm4gbmV3IEJhbmtUcmFuc2FjdGlvbkNvbGxlY3Rpb24oXG4gICAgICB0aGlzLml0ZW1zLmZpbHRlcigoYmFua1RyYW5zYWN0aW9uOiBCYW5rVHJhbnNhY3Rpb24pOiBib29sZWFuID0+IGFsbG9jYXRpb25zLmhhc0JhbmtUcmFuc2FjdGlvbihiYW5rVHJhbnNhY3Rpb24pKVxuICAgICk7XG4gIH1cblxuICAvKipcbiAgICogU2V0IGFsbG9jYXRlIG9wZXJhdGlvbiBmb3IgYmFuayB0cmFuc2FjdGlvbnMgd2l0aCBhbW91bnRzIGVxdWFsIHRvIHNhbGFyeVxuICAgKi9cbiAgcHJlc2VsZWN0QWxsb2NhdGVPcGVyYXRpb25Gb3JTYWxhcnkoc2FsYXJ5SW5jb21lU291cmNlczogSW5jb21lU291cmNlW10pOiB2b2lkIHtcbiAgICAvLyBpbmNvbWVTb3VyY2Uuc2FsYXJ5Rm9yZWNhc3RzWzBdIGJlY2F1c2UgZWFjaCBpbmNvbWUgc291cmNlIGhhcyBvbmx5IG9uZSBmb3JlY2FzdCBmb3IgY3VycmVudCBmaW4geWVhclxuICAgIGNvbnN0IHNhbGFyeUFtb3VudHM6IG51bWJlcltdID0gc2FsYXJ5SW5jb21lU291cmNlcy5tYXAoKGluY29tZVNvdXJjZTogSW5jb21lU291cmNlKTogbnVtYmVyID0+IGluY29tZVNvdXJjZS5zYWxhcnlGb3JlY2FzdHNbMF0/Lm5ldFBheSB8fCAwKTtcblxuICAgIHRoaXMuaXRlbXMuZm9yRWFjaCgoYmFua1RyYW5zYWN0aW9uOiBCYW5rVHJhbnNhY3Rpb24pOiB2b2lkID0+IHtcbiAgICAgIGlmIChzYWxhcnlBbW91bnRzLmluY2x1ZGVzKGJhbmtUcmFuc2FjdGlvbi5hbW91bnQpKSB7XG4gICAgICAgIGJhbmtUcmFuc2FjdGlvbi5vcGVyYXRpb24gPSBUcmFuc2FjdGlvbk9wZXJhdGlvbkVudW0uQUxMT0NBVEU7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogR2V0IGNvbGxlY3Rpb24gb2YgdW5hbGxvY2F0ZWQgYmFua1RyYW5zYWN0aW9uc1xuICAgKi9cbiAgZ2V0VW5hbGxvY2F0ZWQoYWxsb2NhdGlvbnM6IFRyYW5zYWN0aW9uQWxsb2NhdGlvbkNvbGxlY3Rpb24pOiBCYW5rVHJhbnNhY3Rpb25Db2xsZWN0aW9uIHtcbiAgICByZXR1cm4gbmV3IEJhbmtUcmFuc2FjdGlvbkNvbGxlY3Rpb24oXG4gICAgICB0aGlzLml0ZW1zLmZpbHRlcigoYmFua1RyYW5zYWN0aW9uOiBCYW5rVHJhbnNhY3Rpb24pOiBib29sZWFuID0+ICFiYW5rVHJhbnNhY3Rpb24uaXNBbGxvY2F0ZWQoYWxsb2NhdGlvbnMpKVxuICAgICk7XG4gIH1cbn1cbiJdfQ==
@@ -13,7 +13,7 @@ export class ChatCollection extends Collection {
13
13
  // get chats array sorted from newest to oldest
14
14
  const chats = uniqBy(new MessageCollection(messages)
15
15
  .filterBy('chat.id', this.getIds())
16
- .sortBy('createdAt', true)
16
+ .sortBy('createdAt')
17
17
  .toArray()
18
18
  .map((message) => chatsById.get(message.chat.id)), 'id');
19
19
  const emptyChats = differenceBy(this.toArray(), chats, 'id');
@@ -23,4 +23,4 @@ export class ChatCollection extends Collection {
23
23
  return this.filterBy('status', ChatStatusEnum.ACTIVE);
24
24
  }
25
25
  }
26
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhdC5jb2xsZWN0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHQtY29yZS9zcmMvbGliL2NvbGxlY3Rpb25zL2NoYXQvY2hhdC5jb2xsZWN0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFRLFVBQVUsRUFBVyxNQUFNLGNBQWMsQ0FBQztBQUN6RCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN6RCxPQUFPLE1BQU0sTUFBTSxlQUFlLENBQUM7QUFDbkMsT0FBTyxZQUFZLE1BQU0scUJBQXFCLENBQUM7QUFDL0MsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBRWpFLE1BQU0sT0FBTyxjQUFlLFNBQVEsVUFBZ0I7SUFDbEQ7O09BRUc7SUFDSCxpQkFBaUIsQ0FBQyxRQUFtQjtRQUNuQyxNQUFNLFNBQVMsR0FBcUIsSUFBSSxVQUFVLENBQU8sSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUM7UUFFekUsK0NBQStDO1FBQy9DLE1BQU0sS0FBSyxHQUFXLE1BQU0sQ0FDMUIsSUFBSSxpQkFBaUIsQ0FBQyxRQUFRLENBQUM7YUFDNUIsUUFBUSxDQUFDLFNBQVMsRUFBRSxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7YUFDbEMsTUFBTSxDQUFDLFdBQVcsRUFBRSxJQUFJLENBQUM7YUFDekIsT0FBTyxFQUFFO2FBQ1QsR0FBRyxDQUFDLENBQUMsT0FBZ0IsRUFBRSxFQUFFLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQzVELElBQUksQ0FBQyxDQUFDO1FBRVIsTUFBTSxVQUFVLEdBQVcsWUFBWSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsRUFBRSxLQUFLLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFFckUsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsR0FBRyxLQUFLLEVBQUUsR0FBRyxVQUFVLENBQUMsQ0FBQyxDQUFDO0lBQ2hELENBQUM7SUFFRCxTQUFTO1FBQ1AsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsRUFBRSxjQUFjLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDeEQsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29sbGVjdGlvbiB9IGZyb20gJy4uL2NvbGxlY3Rpb24nO1xuaW1wb3J0IHsgQ2hhdCwgRGljdGlvbmFyeSwgTWVzc2FnZSB9IGZyb20gJy4uLy4uL21vZGVscyc7XG5pbXBvcnQgeyBNZXNzYWdlQ29sbGVjdGlvbiB9IGZyb20gJy4vbWVzc2FnZS5jb2xsZWN0aW9uJztcbmltcG9ydCB1bmlxQnkgZnJvbSAnbG9kYXNoL3VuaXFCeSc7XG5pbXBvcnQgZGlmZmVyZW5jZUJ5IGZyb20gJ2xvZGFzaC9kaWZmZXJlbmNlQnknO1xuaW1wb3J0IHsgQ2hhdFN0YXR1c0VudW0gfSBmcm9tICcuLi8uLi9kYi9FbnVtcy9jaGF0LXN0YXR1cy5lbnVtJztcblxuZXhwb3J0IGNsYXNzIENoYXRDb2xsZWN0aW9uIGV4dGVuZHMgQ29sbGVjdGlvbjxDaGF0PiB7XG4gIC8qKlxuICAgKiBTb3J0IGNoYXRzIGJ5IGxhc3QgbWVzc2FnZXMgKG5ld2VzdCBmaXJzdCkgKyBlbXB0eSBjaGF0cyBpbiB0aGUgZW5kXG4gICAqL1xuICBnZXRTb3J0ZWRCeU5ld2VzdChtZXNzYWdlczogTWVzc2FnZVtdKTogdGhpcyB7XG4gICAgY29uc3QgY2hhdHNCeUlkOiBEaWN0aW9uYXJ5PENoYXQ+ID0gbmV3IERpY3Rpb25hcnk8Q2hhdD4odGhpcy50b0FycmF5KCkpO1xuXG4gICAgLy8gZ2V0IGNoYXRzIGFycmF5IHNvcnRlZCBmcm9tIG5ld2VzdCB0byBvbGRlc3RcbiAgICBjb25zdCBjaGF0czogQ2hhdFtdID0gdW5pcUJ5KFxuICAgICAgbmV3IE1lc3NhZ2VDb2xsZWN0aW9uKG1lc3NhZ2VzKVxuICAgICAgICAuZmlsdGVyQnkoJ2NoYXQuaWQnLCB0aGlzLmdldElkcygpKVxuICAgICAgICAuc29ydEJ5KCdjcmVhdGVkQXQnLCB0cnVlKVxuICAgICAgICAudG9BcnJheSgpXG4gICAgICAgIC5tYXAoKG1lc3NhZ2U6IE1lc3NhZ2UpID0+IGNoYXRzQnlJZC5nZXQobWVzc2FnZS5jaGF0LmlkKSksXG4gICAgICAnaWQnKTtcblxuICAgIGNvbnN0IGVtcHR5Q2hhdHM6IENoYXRbXSA9IGRpZmZlcmVuY2VCeSh0aGlzLnRvQXJyYXkoKSwgY2hhdHMsICdpZCcpO1xuXG4gICAgcmV0dXJuIHRoaXMuY3JlYXRlKFsuLi5jaGF0cywgLi4uZW1wdHlDaGF0c10pO1xuICB9XG5cbiAgZ2V0QWN0aXZlKCk6IHRoaXMge1xuICAgIHJldHVybiB0aGlzLmZpbHRlckJ5KCdzdGF0dXMnLCBDaGF0U3RhdHVzRW51bS5BQ1RJVkUpO1xuICB9XG59XG4iXX0=
26
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhdC5jb2xsZWN0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHQtY29yZS9zcmMvbGliL2NvbGxlY3Rpb25zL2NoYXQvY2hhdC5jb2xsZWN0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFRLFVBQVUsRUFBVyxNQUFNLGNBQWMsQ0FBQztBQUN6RCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN6RCxPQUFPLE1BQU0sTUFBTSxlQUFlLENBQUM7QUFDbkMsT0FBTyxZQUFZLE1BQU0scUJBQXFCLENBQUM7QUFDL0MsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBRWpFLE1BQU0sT0FBTyxjQUFlLFNBQVEsVUFBZ0I7SUFDbEQ7O09BRUc7SUFDSCxpQkFBaUIsQ0FBQyxRQUFtQjtRQUNuQyxNQUFNLFNBQVMsR0FBcUIsSUFBSSxVQUFVLENBQU8sSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUM7UUFFekUsK0NBQStDO1FBQy9DLE1BQU0sS0FBSyxHQUFXLE1BQU0sQ0FDMUIsSUFBSSxpQkFBaUIsQ0FBQyxRQUFRLENBQUM7YUFDNUIsUUFBUSxDQUFDLFNBQVMsRUFBRSxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7YUFDbEMsTUFBTSxDQUFDLFdBQVcsQ0FBQzthQUNuQixPQUFPLEVBQUU7YUFDVCxHQUFHLENBQUMsQ0FBQyxPQUFnQixFQUFFLEVBQUUsQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsRUFDNUQsSUFBSSxDQUFDLENBQUM7UUFFUixNQUFNLFVBQVUsR0FBVyxZQUFZLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxFQUFFLEtBQUssRUFBRSxJQUFJLENBQUMsQ0FBQztRQUVyRSxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxHQUFHLEtBQUssRUFBRSxHQUFHLFVBQVUsQ0FBQyxDQUFDLENBQUM7SUFDaEQsQ0FBQztJQUVELFNBQVM7UUFDUCxPQUFPLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxFQUFFLGNBQWMsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUN4RCxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb2xsZWN0aW9uIH0gZnJvbSAnLi4vY29sbGVjdGlvbic7XG5pbXBvcnQgeyBDaGF0LCBEaWN0aW9uYXJ5LCBNZXNzYWdlIH0gZnJvbSAnLi4vLi4vbW9kZWxzJztcbmltcG9ydCB7IE1lc3NhZ2VDb2xsZWN0aW9uIH0gZnJvbSAnLi9tZXNzYWdlLmNvbGxlY3Rpb24nO1xuaW1wb3J0IHVuaXFCeSBmcm9tICdsb2Rhc2gvdW5pcUJ5JztcbmltcG9ydCBkaWZmZXJlbmNlQnkgZnJvbSAnbG9kYXNoL2RpZmZlcmVuY2VCeSc7XG5pbXBvcnQgeyBDaGF0U3RhdHVzRW51bSB9IGZyb20gJy4uLy4uL2RiL0VudW1zL2NoYXQtc3RhdHVzLmVudW0nO1xuXG5leHBvcnQgY2xhc3MgQ2hhdENvbGxlY3Rpb24gZXh0ZW5kcyBDb2xsZWN0aW9uPENoYXQ+IHtcbiAgLyoqXG4gICAqIFNvcnQgY2hhdHMgYnkgbGFzdCBtZXNzYWdlcyAobmV3ZXN0IGZpcnN0KSArIGVtcHR5IGNoYXRzIGluIHRoZSBlbmRcbiAgICovXG4gIGdldFNvcnRlZEJ5TmV3ZXN0KG1lc3NhZ2VzOiBNZXNzYWdlW10pOiB0aGlzIHtcbiAgICBjb25zdCBjaGF0c0J5SWQ6IERpY3Rpb25hcnk8Q2hhdD4gPSBuZXcgRGljdGlvbmFyeTxDaGF0Pih0aGlzLnRvQXJyYXkoKSk7XG5cbiAgICAvLyBnZXQgY2hhdHMgYXJyYXkgc29ydGVkIGZyb20gbmV3ZXN0IHRvIG9sZGVzdFxuICAgIGNvbnN0IGNoYXRzOiBDaGF0W10gPSB1bmlxQnkoXG4gICAgICBuZXcgTWVzc2FnZUNvbGxlY3Rpb24obWVzc2FnZXMpXG4gICAgICAgIC5maWx0ZXJCeSgnY2hhdC5pZCcsIHRoaXMuZ2V0SWRzKCkpXG4gICAgICAgIC5zb3J0QnkoJ2NyZWF0ZWRBdCcpXG4gICAgICAgIC50b0FycmF5KClcbiAgICAgICAgLm1hcCgobWVzc2FnZTogTWVzc2FnZSkgPT4gY2hhdHNCeUlkLmdldChtZXNzYWdlLmNoYXQuaWQpKSxcbiAgICAgICdpZCcpO1xuXG4gICAgY29uc3QgZW1wdHlDaGF0czogQ2hhdFtdID0gZGlmZmVyZW5jZUJ5KHRoaXMudG9BcnJheSgpLCBjaGF0cywgJ2lkJyk7XG5cbiAgICByZXR1cm4gdGhpcy5jcmVhdGUoWy4uLmNoYXRzLCAuLi5lbXB0eUNoYXRzXSk7XG4gIH1cblxuICBnZXRBY3RpdmUoKTogdGhpcyB7XG4gICAgcmV0dXJuIHRoaXMuZmlsdGVyQnkoJ3N0YXR1cycsIENoYXRTdGF0dXNFbnVtLkFDVElWRSk7XG4gIH1cbn1cbiJdfQ==
@@ -6,26 +6,16 @@ import intersection from 'lodash/intersection';
6
6
  * List of collections grouped by passed property
7
7
  */
8
8
  export class CollectionDictionary {
9
- /**
10
- * @param collection The Collection instance to be grouped
11
- * @param path Path to the property to be grouped (Examples: 'transaction', 'property.category')
12
- * @param prop Optional: Field to group by (Default 'id', Examples: 'id', 'amount', 'date')
13
- */
14
9
  constructor(collection, path = 'id') {
15
10
  /**
16
11
  * List of grouped collections
17
12
  */
18
13
  this.items = {};
19
14
  this.collectionConstructor = collection.constructor;
20
- // Nothing to group when collection is empty
21
- if (!collection.length) {
22
- return;
15
+ // group if provided path was found in the 1st collection's item
16
+ if (collection.length && hasIn(collection.items[0], path.split('.')[0])) {
17
+ this.groupItems(collection, path);
23
18
  }
24
- // Do nothing if provided path was not found in the 1st collection's item
25
- if (!hasIn(collection.items[0], path.split('.')[0])) {
26
- return;
27
- }
28
- this.groupItems(collection, path);
29
19
  }
30
20
  /**
31
21
  * List of collections keys
@@ -34,17 +24,26 @@ export class CollectionDictionary {
34
24
  return Object.keys(this.items);
35
25
  }
36
26
  /**
37
- * Get collection by key or return empty collection if key does not exist
27
+ * push new elements in existing item
38
28
  */
39
- get(key) {
40
- return this.items[key] ? this.items[key] : this.createCollection([]);
29
+ addTo(key, ...models) {
30
+ if (!this.items[key]) {
31
+ this.add(key);
32
+ }
33
+ this.items[key].push(...models);
41
34
  }
42
35
  /**
43
36
  * Add new item by key
44
37
  */
45
- add(key, value) {
38
+ add(key, value = this.createCollection([])) {
46
39
  this.items[key] = value;
47
40
  }
41
+ /**
42
+ * Get collection by key or return empty collection if key does not exist
43
+ */
44
+ get(key) {
45
+ return this.items[key] ? this.items[key] : this.createCollection([]);
46
+ }
48
47
  /**
49
48
  * Join several collections by ids
50
49
  */
@@ -105,4 +104,4 @@ export class CollectionDictionary {
105
104
  });
106
105
  }
107
106
  }
108
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sbGVjdGlvbi1kaWN0aW9uYXJ5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHQtY29yZS9zcmMvbGliL2NvbGxlY3Rpb25zL2NvbGxlY3Rpb24tZGljdGlvbmFyeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEdBQUcsTUFBTSxZQUFZLENBQUM7QUFDN0IsT0FBTyxPQUFPLE1BQU0sZ0JBQWdCLENBQUM7QUFDckMsT0FBTyxLQUFLLE1BQU0sY0FBYyxDQUFDO0FBR2pDLE9BQU8sWUFBWSxNQUFNLHFCQUFxQixDQUFDO0FBRS9DOztHQUVHO0FBQ0gsTUFBTSxPQUFPLG9CQUFvQjtJQVcvQjs7OztPQUlHO0lBQ0gsWUFDRSxVQUFzQixFQUN0QixJQUFJLEdBQUcsSUFBSTtRQWpCYjs7V0FFRztRQUNILFVBQUssR0FBa0MsRUFBRSxDQUFDO1FBZ0J4QyxJQUFJLENBQUMscUJBQXFCLEdBQUcsVUFBVSxDQUFDLFdBQWtELENBQUM7UUFFM0YsNENBQTRDO1FBQzVDLElBQUksQ0FBQyxVQUFVLENBQUMsTUFBTSxFQUFFO1lBQ3RCLE9BQU87U0FDUjtRQUVELHlFQUF5RTtRQUN6RSxJQUFJLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFO1lBQ25ELE9BQU87U0FDUjtRQUVELElBQUksQ0FBQyxVQUFVLENBQUMsVUFBVSxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQ3BDLENBQUM7SUFFRDs7T0FFRztJQUNILElBQUksSUFBSTtRQUNOLE9BQU8sTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDakMsQ0FBQztJQUVEOztPQUVHO0lBQ0gsR0FBRyxDQUFDLEdBQW9CO1FBQ3RCLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FB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SSxDQUFDLGdCQUFnQixDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO1FBQ3BELENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IGdldCBmcm9tICdsb2Rhc2gvZ2V0JztcbmltcG9ydCBmbGF0dGVuIGZyb20gJ2xvZGFzaC9mbGF0dGVuJztcbmltcG9ydCBoYXNJbiBmcm9tICdsb2Rhc2gvaGFzSW4nO1xuaW1wb3J0IHsgQ29sbGVjdGlvbiBhcyBCYXNlQ29sbGVjdGlvbiB9IGZyb20gJy4vY29sbGVjdGlvbic7XG5pbXBvcnQge0Fic3RyYWN0TW9kZWx9IGZyb20gJy4uL2RiL01vZGVscyc7XG5pbXBvcnQgaW50ZXJzZWN0aW9uIGZyb20gJ2xvZGFzaC9pbnRlcnNlY3Rpb24nO1xuXG4vKipcbiAqIExpc3Qgb2YgY29sbGVjdGlvbnMgZ3JvdXBlZCBieSBwYXNzZWQgcHJvcGVydHlcbiAqL1xuZXhwb3J0IGNsYXNzIENvbGxlY3Rpb25EaWN0aW9uYXJ5PENvbGxlY3Rpb24gZXh0ZW5kcyBCYXNlQ29sbGVjdGlvbjxBYnN0cmFjdE1vZGVsPj4ge1xuICAvKipcbiAgICogTGlzdCBvZiBncm91cGVkIGNvbGxlY3Rpb25zXG4gICAqL1xuICBpdGVtczogeyBba2V5OiBzdHJpbmddOiBDb2xsZWN0aW9uIH0gPSB7fTtcblxuICAvKipcbiAgICogQ29uc3RydWN0b3IgZnVuY3Rpb24gb2YgcGFzc2VkIGNvbGxlY3Rpb24gZm9yIGNyZWF0aW5nIG5ldyBpbnN0YW5jZXNcbiAgICovXG4gIHByaXZhdGUgY29sbGVjdGlvbkNvbnN0cnVjdG9yOiBuZXcgKGl0ZW1zOiBvYmplY3RbXSkgPT4gQ29sbGVjdGlvbjtcblxuICAvKipcbiAgICogQHBhcmFtIGNvbGxlY3Rpb24gVGhlIENvbGxlY3Rpb24gaW5zdGFuY2UgdG8gYmUgZ3JvdXBlZFxuICAgKiBAcGFyYW0gcGF0aCBQYXRoIHRvIHRoZSBwcm9wZXJ0eSB0byBiZSBncm91cGVkIChFeGFtcGxlczogJ3RyYW5zYWN0aW9uJywgJ3Byb3BlcnR5LmNhdGVnb3J5JylcbiAgICogQHBhcmFtIHByb3AgT3B0aW9uYWw6IEZpZWxkIHRvIGdyb3VwIGJ5IChEZWZhdWx0ICdpZCcsIEV4YW1wbGVzOiAnaWQnLCAnYW1vdW50JywgJ2RhdGUnKVxuICAgKi9cbiAgY29uc3RydWN0b3IoXG4gICAgY29sbGVjdGlvbjogQ29sbGVjdGlvbixcbiAgICBwYXRoID0gJ2lkJ1xuICApIHtcbiAgICB0aGlzLmNvbGxlY3Rpb25Db25zdHJ1Y3RvciA9IGNvbGxlY3Rpb24uY29uc3RydWN0b3IgYXMgbmV3IChpdGVtczogb2JqZWN0W10pID0+IENvbGxlY3Rpb247XG5cbiAgICAvLyBOb3RoaW5nIHRvIGdyb3VwIHdoZW4gY29sbGVjdGlvbiBpcyBlbXB0eVxuICAgIGlmICghY29sbGVjdGlvbi5sZW5ndGgpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICAvLyBEbyBub3RoaW5nIGlmIHByb3ZpZGVkIHBhdGggd2FzIG5vdCBmb3VuZCBpbiB0aGUgMXN0IGNvbGxlY3Rpb24ncyBpdGVtXG4gICAgaWYgKCFoYXNJbihjb2xsZWN0aW9uLml0ZW1zWzBdLCBwYXRoLnNwbGl0KCcuJylbMF0pKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGhpcy5ncm91cEl0ZW1zKGNvbGxlY3Rpb24sIHBhdGgpO1xuICB9XG5cbiAgLyoqXG4gICAqIExpc3Qgb2YgY29sbGVjdGlvbnMga2V5c1xuICAgKi9cbiAgZ2V0IGtleXMoKTogc3RyaW5nW10ge1xuICAgIHJldHVybiBPYmplY3Qua2V5cyh0aGlzLml0ZW1zKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgY29sbGVjdGlvbiBieSBrZXkgb3IgcmV0dXJuIGVtcHR5IGNvbGxlY3Rpb24gaWYga2V5IGRvZXMgbm90IGV4aXN0XG4gICAqL1xuICBnZXQoa2V5OiBzdHJpbmcgfCBudW1iZXIpOiBDb2xsZWN0aW9uIHtcbiAgICByZXR1cm4gdGhpcy5pdGVtc1trZXldID8gdGhpcy5pdGVtc1trZXldIDogdGhpcy5jcmVhdGVDb2xsZWN0aW9uKFtdKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGQgbmV3IGl0ZW0gYnkga2V5XG4gICAqL1xuICBhZGQoa2V5OiBzdHJpbmcgfCBudW1iZXIsIHZhbHVlOiBDb2xsZWN0aW9uKSB7XG4gICAgdGhpcy5pdGVtc1trZXldID0gdmFsdWU7XG4gIH1cblxuICAvKipcbiAgICogSm9pbiBzZXZlcmFsIGNvbGxlY3Rpb25zIGJ5IGlkc1xuICAgKi9cbiAgbWVyZ2Uoa2V5czogbnVtYmVyW10pOiBDb2xsZWN0aW9uIHtcbiAgICBpZiAoIXRoaXMubGVuZ3RoKSB7XG4gICAgICByZXR1cm4gdGhpcy5jcmVhdGVDb2xsZWN0aW9uKFtdKTtcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy5jcmVhdGVDb2xsZWN0aW9uKFxuICAgICAgZmxhdHRlbihcbiAgICAgICAga2V5cy5tYXAoKGtleTogbnVtYmVyKTogb2JqZWN0W10gPT4gdGhpcy5nZXQoa2V5LnRvU3RyaW5nKCkpLml0ZW1zKVxuICAgICAgKVxuICAgICk7XG4gIH1cblxuICAvKipcbiAgICogQ3JlYXRlIGluc3RhbmNlIG9mIGNvbGxlY3Rpb25cbiAgICovXG4gIGNyZWF0ZUNvbGxlY3Rpb24oaXRlbXM6IG9iamVjdFtdID0gW10pOiBDb2xsZWN0aW9uIHtcbiAgICByZXR1cm4gbmV3IHRoaXMuY29sbGVjdGlvbkNvbnN0cnVjdG9yKGl0ZW1zKTtcbiAgfVxuXG4gIGdldCBsZW5ndGgoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5rZXlzLmxlbmd0aDtcbiAgfVxuXG4gIC8qKlxuICAgKiBAVG9kbyBmaW5kIGEgYmV0dGVyIHNvbHV0aW9uIHRvIGdldCBsaXN0IG9mIHRoZSBzb3J0ZWQga2V5c1xuICAgKiBHZXQgYXJyYXkgb2YgdGhlIFwia2V5c1wiIGJ5IHByb3ZpZGVkIG9yZGVyXG4gICAqL1xuICBnZXRTb3J0ZWRLZXlzKGlzRGVzYyA9IGZhbHNlKTogc3RyaW5nW10ge1xuICAgIHJldHVybiB0aGlzLmtleXMuc29ydCgoYTogYW55LCBiOiBhbnkpOiBudW1iZXIgPT4ge1xuICAgICAgaWYgKGEgPiBiKSB7IHJldHVybiAhaXNEZXNjID8gMSA6IC0xOyB9XG4gICAgICBpZiAoYSA8IGIpIHsgcmV0dXJuICFpc0Rlc2MgPyAtMSA6IDE7IH1cbiAgICAgIHJldHVybiAwO1xuICAgIH0pO1xuICB9XG5cbiAga2V5c0ludGVyc2VjdGlvbihrZXlzOiBzdHJpbmdbXSB8IG51bWJlcltdKTogc3RyaW5nW10ge1xuICAgIHJldHVybiBpbnRlcnNlY3Rpb24oa2V5cy5tYXAoKGtleTogc3RyaW5nIHwgbnVtYmVyKSA9PiBrZXkudG9TdHJpbmcoKSksIHRoaXMua2V5cyk7XG4gIH1cblxuICAvKipcbiAgICogR3JvdXAgY29sbGVjdGlvbiBpdGVtcyBieSBwYXNzZWQgcGF0aCBpbnRvIGl0ZW1zIG9iamVjdFxuICAgKi9cbiAgcHJpdmF0ZSBncm91cEl0ZW1zKGNvbGxlY3Rpb246IENvbGxlY3Rpb24sIHBhdGg6IHN0cmluZyk6IHZvaWQge1xuICAgIC8vIENyZWF0ZSBlbXB0eSBpbml0aWFsIG9iamVjdCBmb3IgZ3JvdXBzXG4gICAgY29uc3Qgb2JqOiB7IFtrZXk6IHN0cmluZ106IEFycmF5PG9iamVjdD4gfSA9IHt9O1xuXG4gICAgLy8gR3JvdXAgY29sbGVjdGlvbiBpdGVtc1xuICAgIGNvbGxlY3Rpb24uaXRlbXMuZm9yRWFjaCgoaXRlbTogb2JqZWN0KTogdm9pZCA9PiB7XG4gICAgICBsZXQga2V5OiBzdHJpbmcgPSBnZXQoaXRlbSwgcGF0aCk7XG5cbiAgICAgIC8vIGlmIG9iamVjdCBkb2VzIG5vdCBoYXZlIHByb3BlcnR5IGZvciBncm91cGluZyBpdCB3aWxsIGJlIGdyb3VwZWQgYXMgJ290aGVyJ1xuICAgICAgaWYgKGtleSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIGtleSA9ICdvdGhlcic7XG4gICAgICB9XG5cbiAgICAgIGlmICghb2JqW2tleV0pIHtcbiAgICAgICAgb2JqW2tleV0gPSBbXTtcbiAgICAgIH1cblxuICAgICAgb2JqW2tleV0ucHVzaChpdGVtKTtcbiAgICB9KTtcblxuICAgIC8vIENyZWF0ZSBjb2xsZWN0aW9ucyBmcm9tIGdyb3Vwc1xuICAgIE9iamVjdC5rZXlzKG9iaikuZm9yRWFjaCgoa2V5OiBzdHJpbmcpOiB2b2lkID0+IHtcbiAgICAgIHRoaXMuaXRlbXNba2V5XSA9IHRoaXMuY3JlYXRlQ29sbGVjdGlvbihvYmpba2V5XSk7XG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==
107
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sbGVjdGlvbi1kaWN0aW9uYXJ5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHQtY29yZS9zcmMvbGliL2NvbGxlY3Rpb25zL2NvbGxlY3Rpb24tZGljdGlvbmFyeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEdBQUcsTUFBTSxZQUFZLENBQUM7QUFDN0IsT0FBTyxPQUFPLE1BQU0sZ0JBQWdCLENBQUM7QUFDckMsT0FBTyxLQUFLLE1BQU0sY0FBYyxDQUFDO0FBR2pDLE9BQU8sWUFBWSxNQUFNLHFCQUFxQixDQUFDO0FBRS9DOztHQUVHO0FBQ0gsTUFBTSxPQUFPLG9CQUFvQjtJQVcvQixZQUFZLFVBQXNCLEVBQUUsT0FBZSxJQUFJO1FBVnZEOztXQUVHO1FBQ0gsVUFBSyxHQUFrQyxFQUFFLENBQUM7UUFReEMsSUFBSSxDQUFDLHFCQUFxQixHQUFHLFVBQVUsQ0FBQyxXQUFrRCxDQUFDO1FBQzNGLGdFQUFnRTtRQUNoRSxJQUFJLFVBQVUsQ0FBQyxNQUFNLElBQUksS0FBSyxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFO1lBQ3ZFLElBQUksQ0FBQyxVQUFVLENBQUMsVUFBVSxFQUFFLElBQUksQ0FBQyxDQUFDO1NBQ25DO0lBQ0gsQ0FBQztJQUVEOztPQUVHO0lBQ0gsSUFBSSxJQUFJO1FBQ04sT0FBTyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNqQyxDQUFDO0lBRUQ7O09BRUc7SUFDSCxLQUFLLENBQUMsR0FBb0IsRUFBRSxHQUFHLE1BQXVCO1FBQ3BELElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxFQUFFO1lBQ3BCLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUM7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LENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3RCLENBQUMsQ0FBQyxDQUFDO1FBRUgsaUNBQWlDO1FBQ2pDLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsR0FBVyxFQUFRLEVBQUU7WUFDN0MsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsR0FBRyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7UUFDcEQsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgZ2V0IGZyb20gJ2xvZGFzaC9nZXQnO1xuaW1wb3J0IGZsYXR0ZW4gZnJvbSAnbG9kYXNoL2ZsYXR0ZW4nO1xuaW1wb3J0IGhhc0luIGZyb20gJ2xvZGFzaC9oYXNJbic7XG5pbXBvcnQgeyBDb2xsZWN0aW9uIGFzIEJhc2VDb2xsZWN0aW9uIH0gZnJvbSAnLi9jb2xsZWN0aW9uJztcbmltcG9ydCB7QWJzdHJhY3RNb2RlbH0gZnJvbSAnLi4vZGIvTW9kZWxzJztcbmltcG9ydCBpbnRlcnNlY3Rpb24gZnJvbSAnbG9kYXNoL2ludGVyc2VjdGlvbic7XG5cbi8qKlxuICogTGlzdCBvZiBjb2xsZWN0aW9ucyBncm91cGVkIGJ5IHBhc3NlZCBwcm9wZXJ0eVxuICovXG5leHBvcnQgY2xhc3MgQ29sbGVjdGlvbkRpY3Rpb25hcnk8Q29sbGVjdGlvbiBleHRlbmRzIEJhc2VDb2xsZWN0aW9uPEFic3RyYWN0TW9kZWw+PiB7XG4gIC8qKlxuICAgKiBMaXN0IG9mIGdyb3VwZWQgY29sbGVjdGlvbnNcbiAgICovXG4gIGl0ZW1zOiB7IFtrZXk6IHN0cmluZ106IENvbGxlY3Rpb24gfSA9IHt9O1xuXG4gIC8qKlxuICAgKiBDb25zdHJ1Y3RvciBmdW5jdGlvbiBvZiBwYXNzZWQgY29sbGVjdGlvbiBmb3IgY3JlYXRpbmcgbmV3IGluc3RhbmNlc1xuICAgKi9cbiAgcHJpdmF0ZSBjb2xsZWN0aW9uQ29uc3RydWN0b3I6IG5ldyAoaXRlbXM6IG9iamVjdFtdKSA9PiBDb2xsZWN0aW9uO1xuXG4gIGNvbnN0cnVjdG9yKGNvbGxlY3Rpb246IENvbGxlY3Rpb24sIHBhdGg6IHN0cmluZyA9ICdpZCcpIHtcbiAgICB0aGlzLmNvbGxlY3Rpb25Db25zdHJ1Y3RvciA9IGNvbGxlY3Rpb24uY29uc3RydWN0b3IgYXMgbmV3IChpdGVtczogb2JqZWN0W10pID0+IENvbGxlY3Rpb247XG4gICAgLy8gZ3JvdXAgaWYgcHJvdmlkZWQgcGF0aCB3YXMgZm91bmQgaW4gdGhlIDFzdCBjb2xsZWN0aW9uJ3MgaXRlbVxuICAgIGlmIChjb2xsZWN0aW9uLmxlbmd0aCAmJiBoYXNJbihjb2xsZWN0aW9uLml0ZW1zWzBdLCBwYXRoLnNwbGl0KCcuJylbMF0pKSB7XG4gICAgICB0aGlzLmdyb3VwSXRlbXMoY29sbGVjdGlvbiwgcGF0aCk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIExpc3Qgb2YgY29sbGVjdGlvbnMga2V5c1xuICAgKi9cbiAgZ2V0IGtleXMoKTogc3RyaW5nW10ge1xuICAgIHJldHVybiBPYmplY3Qua2V5cyh0aGlzLml0ZW1zKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBwdXNoIG5ldyBlbGVtZW50cyBpbiBleGlzdGluZyBpdGVtXG4gICAqL1xuICBhZGRUbyhrZXk6IHN0cmluZyB8IG51bWJlciwgLi4ubW9kZWxzOiBBYnN0cmFjdE1vZGVsW10pOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMuaXRlbXNba2V5XSkge1xuICAgICAgdGhpcy5hZGQoa2V5KTtcbiAgICB9XG5cbiAgICB0aGlzLml0ZW1zW2tleV0ucHVzaCguLi5tb2RlbHMpO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZCBuZXcgaXRlbSBieSBrZXlcbiAgICovXG4gIGFkZChrZXk6IHN0cmluZyB8IG51bWJlciwgdmFsdWU6IENvbGxlY3Rpb24gPSB0aGlzLmNyZWF0ZUNvbGxlY3Rpb24oW10pKSB7XG4gICAgdGhpcy5pdGVtc1trZXldID0gdmFsdWU7XG4gIH1cblxuICAvKipcbiAgICogR2V0IGNvbGxlY3Rpb24gYnkga2V5IG9yIHJldHVybiBlbXB0eSBjb2xsZWN0aW9uIGlmIGtleSBkb2VzIG5vdCBleGlzdFxuICAgKi9cbiAgZ2V0KGtleTogc3RyaW5nIHwgbnVtYmVyKTogQ29sbGVjdGlvbiB7XG4gICAgcmV0dXJuIHRoaXMuaXRlbXNba2V5XSA/IHRoaXMuaXRlbXNba2V5XSA6IHRoaXMuY3JlYXRlQ29sbGVjdGlvbihbXSk7XG4gIH1cblxuICAvKipcbiAgICogSm9pbiBzZXZlcmFsIGNvbGxlY3Rpb25zIGJ5IGlkc1xuICAgKi9cbiAgbWVyZ2Uoa2V5czogbnVtYmVyW10pOiBDb2xsZWN0aW9uIHtcbiAgICBpZiAoIXRoaXMubGVuZ3RoKSB7XG4gICAgICByZXR1cm4gdGhpcy5jcmVhdGVDb2xsZWN0aW9uKFtdKTtcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy5jcmVhdGVDb2xsZWN0aW9uKFxuICAgICAgZmxhdHRlbihcbiAgICAgICAga2V5cy5tYXAoKGtleTogbnVtYmVyKTogb2JqZWN0W10gPT4gdGhpcy5nZXQoa2V5LnRvU3RyaW5nKCkpLml0ZW1zKVxuICAgICAgKVxuICAgICk7XG4gIH1cblxuICAvKipcbiAgICogQ3JlYXRlIGluc3RhbmNlIG9mIGNvbGxlY3Rpb25cbiAgICovXG4gIGNyZWF0ZUNvbGxlY3Rpb24oaXRlbXM6IG9iamVjdFtdID0gW10pOiBDb2xsZWN0aW9uIHtcbiAgICByZXR1cm4gbmV3IHRoaXMuY29sbGVjdGlvbkNvbnN0cnVjdG9yKGl0ZW1zKTtcbiAgfVxuXG4gIGdldCBsZW5ndGgoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5rZXlzLmxlbmd0aDtcbiAgfVxuXG4gIC8qKlxuICAgKiBAVG9kbyBmaW5kIGEgYmV0dGVyIHNvbHV0aW9uIHRvIGdldCBsaXN0IG9mIHRoZSBzb3J0ZWQga2V5c1xuICAgKiBHZXQgYXJyYXkgb2YgdGhlIFwia2V5c1wiIGJ5IHByb3ZpZGVkIG9yZGVyXG4gICAqL1xuICBnZXRTb3J0ZWRLZXlzKGlzRGVzYyA9IGZhbHNlKTogc3RyaW5nW10ge1xuICAgIHJldHVybiB0aGlzLmtleXMuc29ydCgoYTogYW55LCBiOiBhbnkpOiBudW1iZXIgPT4ge1xuICAgICAgaWYgKGEgPiBiKSB7IHJldHVybiAhaXNEZXNjID8gMSA6IC0xOyB9XG4gICAgICBpZiAoYSA8IGIpIHsgcmV0dXJuICFpc0Rlc2MgPyAtMSA6IDE7IH1cbiAgICAgIHJldHVybiAwO1xuICAgIH0pO1xuICB9XG5cbiAga2V5c0ludGVyc2VjdGlvbihrZXlzOiBzdHJpbmdbXSB8IG51bWJlcltdKTogc3RyaW5nW10ge1xuICAgIHJldHVybiBpbnRlcnNlY3Rpb24oa2V5cy5tYXAoKGtleTogc3RyaW5nIHwgbnVtYmVyKSA9PiBrZXkudG9TdHJpbmcoKSksIHRoaXMua2V5cyk7XG4gIH1cblxuICAvKipcbiAgICogR3JvdXAgY29sbGVjdGlvbiBpdGVtcyBieSBwYXNzZWQgcGF0aCBpbnRvIGl0ZW1zIG9iamVjdFxuICAgKi9cbiAgcHJpdmF0ZSBncm91cEl0ZW1zKGNvbGxlY3Rpb246IENvbGxlY3Rpb24sIHBhdGg6IHN0cmluZyk6IHZvaWQge1xuICAgIC8vIENyZWF0ZSBlbXB0eSBpbml0aWFsIG9iamVjdCBmb3IgZ3JvdXBzXG4gICAgY29uc3Qgb2JqOiB7IFtrZXk6IHN0cmluZ106IEFycmF5PG9iamVjdD4gfSA9IHt9O1xuXG4gICAgLy8gR3JvdXAgY29sbGVjdGlvbiBpdGVtc1xuICAgIGNvbGxlY3Rpb24uaXRlbXMuZm9yRWFjaCgoaXRlbTogb2JqZWN0KTogdm9pZCA9PiB7XG4gICAgICBsZXQga2V5OiBzdHJpbmcgPSBnZXQoaXRlbSwgcGF0aCk7XG5cbiAgICAgIC8vIGlmIG9iamVjdCBkb2VzIG5vdCBoYXZlIHByb3BlcnR5IGZvciBncm91cGluZyBpdCB3aWxsIGJlIGdyb3VwZWQgYXMgJ290aGVyJ1xuICAgICAgaWYgKGtleSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIGtleSA9ICdvdGhlcic7XG4gICAgICB9XG5cbiAgICAgIGlmICghb2JqW2tleV0pIHtcbiAgICAgICAgb2JqW2tleV0gPSBbXTtcbiAgICAgIH1cblxuICAgICAgb2JqW2tleV0ucHVzaChpdGVtKTtcbiAgICB9KTtcblxuICAgIC8vIENyZWF0ZSBjb2xsZWN0aW9ucyBmcm9tIGdyb3Vwc1xuICAgIE9iamVjdC5rZXlzKG9iaikuZm9yRWFjaCgoa2V5OiBzdHJpbmcpOiB2b2lkID0+IHtcbiAgICAgIHRoaXMuaXRlbXNba2V5XSA9IHRoaXMuY3JlYXRlQ29sbGVjdGlvbihvYmpba2V5XSk7XG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==
@@ -2,9 +2,9 @@ import { CollectionDictionary } from './collection-dictionary';
2
2
  import first from 'lodash/first';
3
3
  import last from 'lodash/last';
4
4
  import get from 'lodash/get';
5
- import { sort } from '../functions/array';
6
5
  import { Dictionary, FinancialYear } from '../models';
7
6
  import round from 'lodash/round';
7
+ import orderBy from 'lodash/orderBy';
8
8
  /**
9
9
  * Base collection class. Contains common properties and methods for all collections
10
10
  */
@@ -65,8 +65,8 @@ export class Collection {
65
65
  mapBy(path) {
66
66
  return this.items.map((item) => get(item, path));
67
67
  }
68
- sortBy(field = 'id', isDesc = true) {
69
- sort(this.items, field, isDesc);
68
+ sortBy(paths = ['id'], order = ['desc']) {
69
+ this.items = orderBy(this.items, paths instanceof Array ? paths : [paths], order instanceof Array ? order : [order]);
70
70
  return this;
71
71
  }
72
72
  sort(callback) {
@@ -79,7 +79,7 @@ export class Collection {
79
79
  sumBy(path, abs = false) {
80
80
  return this.reduce((sum, item) => sum + (abs ? Math.abs(Number(get(item, path))) : Number(get(item, path))));
81
81
  }
82
- groupBy(path = '') {
82
+ groupBy(path = 'id') {
83
83
  return new CollectionDictionary(this, path);
84
84
  }
85
85
  indexBy(path) {
@@ -150,4 +150,4 @@ export class Collection {
150
150
  return this;
151
151
  }
152
152
  }
153
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sbGVjdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R0LWNvcmUvc3JjL2xpYi9jb2xsZWN0aW9ucy9jb2xsZWN0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQy9ELE9BQU8sS0FBSyxNQUFNLGNBQWMsQ0FBQztBQUNqQyxPQUFPLElBQUksTUFBTSxhQUFhLENBQUM7QUFDL0IsT0FBTyxHQUFHLE1BQU0sWUFBWSxDQUFDO0FBQzdCLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUUxQyxPQUFPLEVBQUUsVUFBVSxFQUFFLGFBQWEsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUN0RCxPQUFPLEtBQUssTUFBTSxjQUFjLENBQUM7QUFFakM7O0dBRUc7QUFDSCxNQUFNLE9BQU8sVUFBVTtJQVNyQixZQUFZLFFBQWlCLEVBQUU7UUFML0I7O1dBRUc7UUFDSCxVQUFLLEdBQUcsQ0FBQyxDQUFDO1FBR1IsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7UUFDbkIsdUVBQXVFO0lBQ3pFLENBQUM7SUFFRDs7T0FFRztJQUNILENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQztRQUNmLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLEVBQUUsQ0FBQztJQUM3QixDQUFDO0lBRUQsTUFBTSxDQUFDLFFBQWlCLEVBQUU7UUFDeEIsT0FBTyxJQUFLLElBQUksQ0FBQyxXQUFtQixDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzlDLENBQUM7SUFFRCxJQUFJLE1BQU07UUFDUixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDO0lBQzNCLENBQUM7SUFFRCxPQUFPO1FBQ0wsT0FBTyxDQUFDLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3pCLENBQUM7SUFFRCxJQUFJLEtBQUs7UUFDUCxPQUFPLEtBQUssQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDM0IsQ0FBQztJQUVELElBQUksSUFBSTtRQUNOLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUMxQixDQUFDO0lBRUQsS0FBSztRQUNILElBQUksQ0FBQyxLQUFLLEdBQUcsQ0FBQyxDQUFDO1FBRWYsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNoQyxDQUFDO0lBRUQsSUFBSTtRQUNGLElBQUksSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsTUFBTSxFQUFFO1lBQzVCLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUViLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7U0FDL0I7UUFFRCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFRCxJQUFJO1FBQ0YsSUFBSSxJQUFJLENBQUMsS0FBSyxHQUFHLENBQUMsRUFBRTtZQUNsQixJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7WUFFYixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1NBQy9CO1FBRUQsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQsTUFBTTtRQUNKLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFXLEVBQVUsRUFBRSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO0lBQzdELENBQUM7SUFFRCxHQUFHLENBQUMsUUFBOEI7UUFDaEMsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUNsQyxDQUFDO0lBRUQsS0FBSyxDQUFDLElBQVk7UUFDaEIsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQVcsRUFBTyxFQUFFLENBQUMsR0FBRyxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFBO0lBQzlELENBQUM7SUFFRCxNQUFNLENBQUMsS0FBSyxHQUFHLElBQUksRUFBRSxNQUFNLEdBQUcsSUFBSTtRQUNoQyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxLQUFLLEVBQUUsTUFBTSxDQUFDLENBQUM7UUFFaEMsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQsSUFBSSxDQUFDLFFBQXdDO1FBQzNDLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBRTFCLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVEOztPQUVHO0lBQ0gsS0FBSyxDQUFDLElBQVksRUFBRSxHQUFHLEdBQUcsS0FBSztRQUM3QixPQUFPLElBQUksQ0FBQyxNQUFNLENBQ2hCLENBQUMsR0FBVyxFQUFFLElBQVcsRUFBVSxFQUFFLENBQUMsR0FBRyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUNoSCxDQUFDO0lBQ0osQ0FBQztJQUVELE9BQU8sQ0FBQyxJQUFJLEdBQUcsRUFBRTtRQUNmLE9BQU8sSUFBSSxvQkFBb0IsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDOUMsQ0FBQztJQUVELE9BQU8sQ0FBQyxJQUFZO1FBQ2xCLE9BQU8sSUFBSSxVQUFVLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsQ0FBQztJQUMxQyxDQUFDO0lBRUQsTUFBTSxDQUFDLFFBQWtDO1FBQ3ZDLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDO0lBQ2xELENBQUM7SUFFRCxRQUFRLENBQUMsSUFBWSxFQUFFLE1BQVc7UUFDaEMsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsSUFBVyxFQUFFLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUM3RyxDQUFDO0lBRUQsYUFBYSxDQUFDLElBQVksRUFBRSxJQUFTLEVBQUUsRUFBTztRQUM1QyxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxJQUFXLEVBQVcsRUFBRSxDQUFDLEdBQUcsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLElBQUksSUFBSSxJQUFJLEdBQUcsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDLENBQUM7SUFDakcsQ0FBQztJQUVELHFCQUFxQixDQUFDLElBQVksRUFBRSxnQkFBK0IsSUFBSSxhQUFhLEVBQUU7UUFDcEYsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksRUFBRSxhQUFhLENBQUMsU0FBUyxFQUFFLGFBQWEsQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUNsRixDQUFDO0lBRUQsSUFBSSxDQUFDLFFBQWtDO1FBQ3JDLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDbkMsQ0FBQztJQUVELE1BQU0sQ0FBQyxJQUFZLEVBQUUsS0FBVTtRQUM3QixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsS0FBWSxFQUFFLEVBQUUsQ0FBQyxLQUFLLEtBQUssR0FBRyxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDO0lBQ3ZFLENBQUM7SUFFRCxXQUFXLENBQUMsSUFBWSxFQUFFLEtBQVU7UUFDbEMsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxDQUFDLElBQVcsRUFBRSxFQUFFLENBQUMsR0FBRyxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsS0FBSyxLQUFLLENBQUMsSUFBSSxJQUFJLENBQUM7SUFDbEYsQ0FBQztJQUVELElBQUksQ0FBQyxHQUFHLEtBQWM7UUFDcEIsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsR0FBRyxLQUFLLENBQUMsQ0FBQztRQUUxQixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ2pDLENBQUM7SUFFRCxNQUFNLENBQUMsR0FBRyxLQUFjO1FBQ3RCLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRTtZQUNyQixNQUFNLEtBQUssR0FBVyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7WUFDdEQsSUFBSSxLQUFLLEdBQUcsQ0FBQyxFQUFFO2dCQUNiLE9BQU87YUFDUjtZQUVELElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQztRQUM5QixDQUFDLENBQUMsQ0FBQztRQUVILE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVEOztPQUVHO0lBQ0gsUUFBUSxDQUFDLElBQVksRUFBRSxNQUFXO1FBQ2hDLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLElBQVcsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUM5RyxDQUFDO0lBRUQsU0FBUyxDQUFDLElBQVksRUFBRSxLQUFVLEVBQUUsSUFBVztRQUM3QyxNQUFNLEtBQUssR0FBVyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksRUFBRSxLQUFLLENBQUMsQ0FBQztRQUNwRCxJQUFJLEtBQUssSUFBSSxDQUFDLEVBQUU7WUFDZCxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxLQUFLLEVBQUUsQ0FBQyxFQUFFLElBQUksQ0FBQyxDQUFDO1NBQ25DO1FBRUQsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQsSUFBSSxDQUFDLEtBQWM7UUFDakIsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsS0FBWSxFQUFFLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFXLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDaEcsQ0FBQztJQUVELEtBQUssQ0FBQyxJQUFZO1FBQ2hCLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxJQUFXLEVBQUUsT0FBYyxFQUFFLEVBQUUsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLEdBQUcsR0FBRyxDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDO0lBQ3JILENBQUM7SUFFRCxLQUFLLENBQUMsSUFBWTtRQUNoQixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUMsSUFBVyxFQUFFLE9BQWMsRUFBRSxFQUFFLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxHQUFHLEdBQUcsQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQztJQUNySCxDQUFDO0lBRUQsTUFBTSxDQUFDLFFBQThDLEVBQUUsSUFBSSxHQUFHLENBQUM7UUFDN0QsT0FBTyxLQUFLLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsUUFBUSxFQUFFLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQ3JELENBQUM7SUFFRCxLQUFLLENBQUMsSUFBWSxFQUFFLEVBQVU7UUFDNUIsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBRTNCLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29sbGVjdGlvbkRpY3Rpb25hcnkgfSBmcm9tICcuL2NvbGxlY3Rpb24tZGljdGlvbmFyeSc7XHJcbmltcG9ydCBmaXJzdCBmcm9tICdsb2Rhc2gvZmlyc3QnO1xyXG5pbXBvcnQgbGFzdCBmcm9tICdsb2Rhc2gvbGFzdCc7XHJcbmltcG9ydCBnZXQgZnJvbSAnbG9kYXNoL2dldCc7XHJcbmltcG9ydCB7IHNvcnQgfSBmcm9tICcuLi9mdW5jdGlvbnMvYXJyYXknO1xyXG5pbXBvcnQgeyBBYnN0cmFjdE1vZGVsIH0gZnJvbSAnLi4vZGIvTW9kZWxzJztcclxuaW1wb3J0IHsgRGljdGlvbmFyeSwgRmluYW5jaWFsWWVhciB9IGZyb20gJy4uL21vZGVscyc7XHJcbmltcG9ydCByb3VuZCBmcm9tICdsb2Rhc2gvcm91bmQnO1xyXG5cclxuLyoqXHJcbiAqIEJhc2UgY29sbGVjdGlvbiBjbGFzcy4gQ29udGFpbnMgY29tbW9uIHByb3BlcnRpZXMgYW5kIG1ldGhvZHMgZm9yIGFsbCBjb2xsZWN0aW9uc1xyXG4gKi9cclxuZXhwb3J0IGNsYXNzIENvbGxlY3Rpb248TW9kZWwgZXh0ZW5kcyBBYnN0cmFjdE1vZGVsPiBpbXBsZW1lbnRzIEl0ZXJhYmxlPE1vZGVsPiB7XHJcbiAgLy8gbGlzdCBvZiBjb2xsZWN0aW9uJ3MgaXRlbXNcclxuICBpdGVtczogTW9kZWxbXTtcclxuXHJcbiAgLyoqXHJcbiAgICogaW5kZXggb2YgY3VycmVudCBpdGVtLCB1c2VkIHRvIGl0ZXJhdGUgb3ZlciB0aGUgY29sbGVjdGlvblxyXG4gICAqL1xyXG4gIGluZGV4ID0gMDtcclxuXHJcbiAgY29uc3RydWN0b3IoaXRlbXM6IE1vZGVsW10gPSBbXSkge1xyXG4gICAgdGhpcy5pdGVtcyA9IGl0ZW1zO1xyXG4gICAgLy8gQFRPRE8gQWxleDogVGhpbmsgYW5kIGltcGxlbWVudCBzb21lIHNtYXJ0IHNvbHV0aW9uIGZvciBkZWZhdWx0IHNvcnRcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEl0ZXJhdG9yIHRoYXQgYWxsb3cgdG8gaXRlcmF0ZSBjb2xsZWN0aW9uIGl0ZW1zXHJcbiAgICovXHJcbiAgW1N5bWJvbC5pdGVyYXRvcl0oKTogSXRlcmF0b3I8TW9kZWw+IHtcclxuICAgIHJldHVybiB0aGlzLml0ZW1zLnZhbHVlcygpO1xyXG4gIH1cclxuXHJcbiAgY3JlYXRlKGl0ZW1zOiBNb2RlbFtdID0gW10pOiB0aGlzIHtcclxuICAgIHJldHVybiBuZXcgKHRoaXMuY29uc3RydWN0b3IgYXMgYW55KShpdGVtcyk7XHJcbiAgfVxyXG5cclxuICBnZXQgbGVuZ3RoKCk6IG51bWJlciB7XHJcbiAgICByZXR1cm4gdGhpcy5pdGVtcy5sZW5ndGg7XHJcbiAgfVxyXG5cclxuICB0b0FycmF5KCk6IE1vZGVsW10ge1xyXG4gICAgcmV0dXJuIFsuLi50aGlzLml0ZW1zXTtcclxuICB9XHJcblxyXG4gIGdldCBmaXJzdCgpOiBNb2RlbCB7XHJcbiAgICByZXR1cm4gZmlyc3QodGhpcy5pdGVtcyk7XHJcbiAgfVxyXG5cclxuICBnZXQgbGFzdCgpOiBNb2RlbCB7XHJcbiAgICByZXR1cm4gbGFzdCh0aGlzLml0ZW1zKTtcclxuICB9XHJcblxyXG4gIHJlc2V0KCk6IE1vZGVsIHtcclxuICAgIHRoaXMuaW5kZXggPSAwO1xyXG5cclxuICAgIHJldHVybiB0aGlzLml0ZW1zW3RoaXMuaW5kZXhdO1xyXG4gIH1cclxuXHJcbiAgbmV4dCgpOiBNb2RlbCB7XHJcbiAgICBpZiAodGhpcy5pbmRleCA8IHRoaXMubGVuZ3RoKSB7XHJcbiAgICAgIHRoaXMuaW5kZXgrKztcclxuXHJcbiAgICAgIHJldHVybiB0aGlzLml0ZW1zW3RoaXMuaW5kZXhdO1xyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiBudWxsO1xyXG4gIH1cclxuXHJcbiAgYmFjaygpOiBNb2RlbCB7XHJcbiAgICBpZiAodGhpcy5pbmRleCA+IDApIHtcclxuICAgICAgdGhpcy5pbmRleC0tO1xyXG5cclxuICAgICAgcmV0dXJuIHRoaXMuaXRlbXNbdGhpcy5pbmRleF07XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIG51bGw7XHJcbiAgfVxyXG5cclxuICBnZXRJZHMoKTogbnVtYmVyW10ge1xyXG4gICAgcmV0dXJuIHRoaXMuaXRlbXMubWFwKChpdGVtOiBNb2RlbCk6IG51bWJlciA9PiBpdGVtWydpZCddKTtcclxuICB9XHJcblxyXG4gIG1hcChjYWxsYmFjazogKGl0ZW06IE1vZGVsKSA9PiBhbnkpOiBhbnlbXSB7XHJcbiAgICByZXR1cm4gdGhpcy5pdGVtcy5tYXAoY2FsbGJhY2spO1xyXG4gIH1cclxuXHJcbiAgbWFwQnkocGF0aDogc3RyaW5nKTogYW55W10ge1xyXG4gICAgcmV0dXJuIHRoaXMuaXRlbXMubWFwKChpdGVtOiBNb2RlbCk6IGFueSA9PiBnZXQoaXRlbSwgcGF0aCkpXHJcbiAgfVxyXG5cclxuICBzb3J0QnkoZmllbGQgPSAnaWQnLCBpc0Rlc2MgPSB0cnVlKTogdGhpcyB7XHJcbiAgICBzb3J0KHRoaXMuaXRlbXMsIGZpZWxkLCBpc0Rlc2MpO1xyXG5cclxuICAgIHJldHVybiB0aGlzO1xyXG4gIH1cclxuXHJcbiAgc29ydChjYWxsYmFjazogKGE6IE1vZGVsLCBiOiBNb2RlbCkgPT4gbnVtYmVyKTogdGhpcyB7XHJcbiAgICB0aGlzLml0ZW1zLnNvcnQoY2FsbGJhY2spO1xyXG5cclxuICAgIHJldHVybiB0aGlzO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogR2V0IHRvdGFsIHN1bSBvZiBpdGVtcyBieSBmaWVsZFxyXG4gICAqL1xyXG4gIHN1bUJ5KHBhdGg6IHN0cmluZywgYWJzID0gZmFsc2UpOiBudW1iZXIge1xyXG4gICAgcmV0dXJuIHRoaXMucmVkdWNlKFxyXG4gICAgICAoc3VtOiBudW1iZXIsIGl0ZW06IE1vZGVsKTogbnVtYmVyID0+IHN1bSArIChhYnMgPyBNYXRoLmFicyhOdW1iZXIoZ2V0KGl0ZW0sIHBhdGgpKSkgOiBOdW1iZXIoZ2V0KGl0ZW0sIHBhdGgpKSlcclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBncm91cEJ5KHBhdGggPSAnJyk6IENvbGxlY3Rpb25EaWN0aW9uYXJ5PHRoaXM+IHtcclxuICAgIHJldHVybiBuZXcgQ29sbGVjdGlvbkRpY3Rpb25hcnkodGhpcywgcGF0aCk7XHJcbiAgfVxyXG5cclxuICBpbmRleEJ5KHBhdGg6IHN0cmluZyk6IERpY3Rpb25hcnk8TW9kZWw+IHtcclxuICAgIHJldHVybiBuZXcgRGljdGlvbmFyeSh0aGlzLml0ZW1zLCBwYXRoKTtcclxuICB9XHJcblxyXG4gIGZpbHRlcihjYWxsYmFjazogKGl0ZW06IE1vZGVsKSA9PiBib29sZWFuKTogdGhpcyB7XHJcbiAgICByZXR1cm4gdGhpcy5jcmVhdGUodGhpcy5pdGVtcy5maWx0ZXIoY2FsbGJhY2spKTtcclxuICB9XHJcblxyXG4gIGZpbHRlckJ5KHBhdGg6IHN0cmluZywgdmFsdWVzOiBhbnkpOiB0aGlzIHtcclxuICAgIHJldHVybiB0aGlzLmZpbHRlcigoaXRlbTogTW9kZWwpID0+IChBcnJheS5pc0FycmF5KHZhbHVlcykgPyB2YWx1ZXMgOiBbdmFsdWVzXSkuaW5jbHVkZXMoZ2V0KGl0ZW0sIHBhdGgpKSk7XHJcbiAgfVxyXG5cclxuICBmaWx0ZXJCeVJhbmdlKHBhdGg6IHN0cmluZywgZnJvbTogYW55LCB0bzogYW55KTogdGhpcyB7XHJcbiAgICByZXR1cm4gdGhpcy5maWx0ZXIoKGl0ZW06IE1vZGVsKTogYm9vbGVhbiA9PiBnZXQoaXRlbSwgcGF0aCkgPj0gZnJvbSAmJiBnZXQoaXRlbSwgcGF0aCkgPD0gdG8pO1xyXG4gIH1cclxuXHJcbiAgZmlsdGVyQnlGaW5hbmNpYWxZZWFyKHBhdGg6IHN0cmluZywgZmluYW5jaWFsWWVhcjogRmluYW5jaWFsWWVhciA9IG5ldyBGaW5hbmNpYWxZZWFyKCkpOiB0aGlzIHtcclxuICAgIHJldHVybiB0aGlzLmZpbHRlckJ5UmFuZ2UocGF0aCwgZmluYW5jaWFsWWVhci5zdGFydERhdGUsIGZpbmFuY2lhbFllYXIuZW5kRGF0ZSk7XHJcbiAgfVxyXG5cclxuICBmaW5kKGNhbGxiYWNrOiAoaXRlbTogTW9kZWwpID0+IGJvb2xlYW4pOiBNb2RlbCB8IG51bGwge1xyXG4gICAgcmV0dXJuIHRoaXMuaXRlbXMuZmluZChjYWxsYmFjayk7XHJcbiAgfVxyXG5cclxuICBmaW5kQnkocGF0aDogc3RyaW5nLCB2YWx1ZTogYW55KTogTW9kZWwgfCBudWxsIHtcclxuICAgIHJldHVybiB0aGlzLml0ZW1zLmZpbmQoKG1vZGVsOiBNb2RlbCkgPT4gdmFsdWUgPT09IGdldChtb2RlbCwgcGF0aCkpO1xyXG4gIH1cclxuXHJcbiAgZmluZEluZGV4QnkocGF0aDogc3RyaW5nLCB2YWx1ZTogYW55KTogbnVtYmVyIHtcclxuICAgIHJldHVybiB0aGlzLml0ZW1zLmZpbmRJbmRleCgoaXRlbTogTW9kZWwpID0+IGdldChpdGVtLCBwYXRoKSA9PT0gdmFsdWUpID8/IG51bGw7XHJcbiAgfVxyXG5cclxuICBwdXNoKC4uLml0ZW1zOiBNb2RlbFtdKTogdGhpcyB7XHJcbiAgICB0aGlzLml0ZW1zLnB1c2goLi4uaXRlbXMpO1xyXG5cclxuICAgIHJldHVybiB0aGlzLmNyZWF0ZSh0aGlzLml0ZW1zKTtcclxuICB9XHJcblxyXG4gIHJlbW92ZSguLi5pdGVtczogTW9kZWxbXSk6IHRoaXMge1xyXG4gICAgaXRlbXMuZm9yRWFjaCgoaXRlbSkgPT4ge1xyXG4gICAgICBjb25zdCBpbmRleDogbnVtYmVyID0gdGhpcy5maW5kSW5kZXhCeSgnaWQnLCBpdGVtLmlkKTtcclxuICAgICAgaWYgKGluZGV4IDwgMCkge1xyXG4gICAgICAgIHJldHVybjtcclxuICAgICAgfVxyXG5cclxuICAgICAgdGhpcy5pdGVtcy5zcGxpY2UoaW5kZXgsIDEpO1xyXG4gICAgfSk7XHJcblxyXG4gICAgcmV0dXJuIHRoaXM7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBAVE9ETyBpdCdzIGZpbHRlciwgbm90IHJlbW92ZVxyXG4gICAqL1xyXG4gIHJlbW92ZUJ5KHBhdGg6IHN0cmluZywgdmFsdWVzOiBhbnkpOiB0aGlzIHtcclxuICAgIHJldHVybiB0aGlzLmZpbHRlcigoaXRlbTogTW9kZWwpID0+ICEoQXJyYXkuaXNBcnJheSh2YWx1ZXMpID8gdmFsdWVzIDogW3ZhbHVlc10pLmluY2x1ZGVzKGdldChpdGVtLCBwYXRoKSkpO1xyXG4gIH1cclxuXHJcbiAgcmVwbGFjZUJ5KHBhdGg6IHN0cmluZywgdmFsdWU6IGFueSwgaXRlbTogTW9kZWwpOiB0aGlzIHtcclxuICAgIGNvbnN0IGluZGV4OiBudW1iZXIgPSB0aGlzLmZpbmRJbmRleEJ5KHBhdGgsIHZhbHVlKTtcclxuICAgIGlmIChpbmRleCA+PSAwKSB7XHJcbiAgICAgIHRoaXMuaXRlbXMuc3BsaWNlKGluZGV4LCAxLCBpdGVtKTtcclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gdGhpcztcclxuICB9XHJcblxyXG4gIGRpZmYoaXRlbXM6IE1vZGVsW10pOiB0aGlzIHtcclxuICAgIHJldHVybiB0aGlzLmZpbHRlcigobW9kZWw6IE1vZGVsKSA9PiAhaXRlbXMubWFwKChpdGVtOiBNb2RlbCkgPT4gaXRlbS5pZCkuaW5jbHVkZXMobW9kZWwuaWQpKTtcclxuICB9XHJcblxyXG4gIG1pbkJ5KHBhdGg6IHN0cmluZyk6IE1vZGVsIHtcclxuICAgIHJldHVybiB0aGlzLml0ZW1zLnJlZHVjZSgocHJldjogTW9kZWwsIGN1cnJlbnQ6IE1vZGVsKSA9PiAoZ2V0KHByZXYsIHBhdGgpIDwgZ2V0KGN1cnJlbnQsIHBhdGgpID8gcHJldiA6IGN1cnJlbnQpKTtcclxuICB9XHJcblxyXG4gIG1heEJ5KHBhdGg6IHN0cmluZyk6IE1vZGVsIHtcclxuICAgIHJldHVybiB0aGlzLml0ZW1zLnJlZHVjZSgocHJldjogTW9kZWwsIGN1cnJlbnQ6IE1vZGVsKSA9PiAoZ2V0KHByZXYsIHBhdGgpID4gZ2V0KGN1cnJlbnQsIHBhdGgpID8gcHJldiA6IGN1cnJlbnQpKTtcclxuICB9XHJcblxyXG4gIHJlZHVjZShjYWxsYmFjazogKHN1bTogbnVtYmVyLCBpdGVtOiBNb2RlbCkgPT4gbnVtYmVyLCBpbml0ID0gMCk6IG51bWJlciB7XHJcbiAgICByZXR1cm4gcm91bmQodGhpcy5pdGVtcy5yZWR1Y2UoY2FsbGJhY2ssIGluaXQpLCAyKTtcclxuICB9XHJcblxyXG4gIHNsaWNlKGZyb206IG51bWJlciwgdG86IG51bWJlcik6IHRoaXMge1xyXG4gICAgdGhpcy5pdGVtcy5zbGljZShmcm9tLCB0byk7XHJcblxyXG4gICAgcmV0dXJuIHRoaXM7XHJcbiAgfVxyXG59XHJcbiJdfQ==
153
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sbGVjdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R0LWNvcmUvc3JjL2xpYi9jb2xsZWN0aW9ucy9jb2xsZWN0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQy9ELE9BQU8sS0FBSyxNQUFNLGNBQWMsQ0FBQztBQUNqQyxPQUFPLElBQUksTUFBTSxhQUFhLENBQUM7QUFDL0IsT0FBTyxHQUFHLE1BQU0sWUFBWSxDQUFDO0FBRzdCLE9BQU8sRUFBRSxVQUFVLEVBQUUsYUFBYSxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBQ3RELE9BQU8sS0FBSyxNQUFNLGNBQWMsQ0FBQztBQUNqQyxPQUFPLE9BQU8sTUFBTSxnQkFBZ0IsQ0FBQztBQUVyQzs7R0FFRztBQUNILE1BQU0sT0FBTyxVQUFVO0lBU3JCLFlBQVksUUFBaUIsRUFBRTtRQUwvQjs7V0FFRztRQUNILFVBQUssR0FBRyxDQUFDLENBQUM7UUFHUixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQix1RUFBdUU7SUFDekUsQ0FBQztJQUVEOztPQUVHO0lBQ0gsQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDO1FBQ2YsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sRUFBRSxDQUFDO0lBQzdCLENBQUM7SUFFRCxNQUFNLENBQUMsUUFBaUIsRUFBRTtRQUN4QixPQUFPLElBQUssSUFBSSxDQUFDLFdBQW1CLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDOUMsQ0FBQztJQUVELElBQUksTUFBTTtRQUNSLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUM7SUFDM0IsQ0FBQztJQUVELE9BQU87UUFDTCxPQUFPLENBQUMsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDekIsQ0FBQztJQUVELElBQUksS0FBSztRQUNQLE9BQU8s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QUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDO0lBQ3JILENBQUM7SUFFRCxNQUFNLENBQUMsUUFBOEMsRUFBRSxJQUFJLEdBQUcsQ0FBQztRQUM3RCxPQUFPLEtBQUssQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxRQUFRLEVBQUUsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDckQsQ0FBQztJQUVELEtBQUssQ0FBQyxJQUFZLEVBQUUsRUFBVTtRQUM1QixJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFFM0IsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb2xsZWN0aW9uRGljdGlvbmFyeSB9IGZyb20gJy4vY29sbGVjdGlvbi1kaWN0aW9uYXJ5JztcclxuaW1wb3J0IGZpcnN0IGZyb20gJ2xvZGFzaC9maXJzdCc7XHJcbmltcG9ydCBsYXN0IGZyb20gJ2xvZGFzaC9sYXN0JztcclxuaW1wb3J0IGdldCBmcm9tICdsb2Rhc2gvZ2V0JztcclxuaW1wb3J0IHsgc29ydCB9IGZyb20gJy4uL2Z1bmN0aW9ucy9hcnJheSc7XHJcbmltcG9ydCB7IEFic3RyYWN0TW9kZWwgfSBmcm9tICcuLi9kYi9Nb2RlbHMnO1xyXG5pbXBvcnQgeyBEaWN0aW9uYXJ5LCBGaW5hbmNpYWxZZWFyIH0gZnJvbSAnLi4vbW9kZWxzJztcclxuaW1wb3J0IHJvdW5kIGZyb20gJ2xvZGFzaC9yb3VuZCc7XHJcbmltcG9ydCBvcmRlckJ5IGZyb20gJ2xvZGFzaC9vcmRlckJ5JztcclxuXHJcbi8qKlxyXG4gKiBCYXNlIGNvbGxlY3Rpb24gY2xhc3MuIENvbnRhaW5zIGNvbW1vbiBwcm9wZXJ0aWVzIGFuZCBtZXRob2RzIGZvciBhbGwgY29sbGVjdGlvbnNcclxuICovXHJcbmV4cG9ydCBjbGFzcyBDb2xsZWN0aW9uPE1vZGVsIGV4dGVuZHMgQWJzdHJhY3RNb2RlbD4gaW1wbGVtZW50cyBJdGVyYWJsZTxNb2RlbD4ge1xyXG4gIC8vIGxpc3Qgb2YgY29sbGVjdGlvbidzIGl0ZW1zXHJcbiAgaXRlbXM6IE1vZGVsW107XHJcblxyXG4gIC8qKlxyXG4gICAqIGluZGV4IG9mIGN1cnJlbnQgaXRlbSwgdXNlZCB0byBpdGVyYXRlIG92ZXIgdGhlIGNvbGxlY3Rpb25cclxuICAgKi9cclxuICBpbmRleCA9IDA7XHJcblxyXG4gIGNvbnN0cnVjdG9yKGl0ZW1zOiBNb2RlbFtdID0gW10pIHtcclxuICAgIHRoaXMuaXRlbXMgPSBpdGVtcztcclxuICAgIC8vIEBUT0RPIEFsZXg6IFRoaW5rIGFuZCBpbXBsZW1lbnQgc29tZSBzbWFydCBzb2x1dGlvbiBmb3IgZGVmYXVsdCBzb3J0XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBJdGVyYXRvciB0aGF0IGFsbG93IHRvIGl0ZXJhdGUgY29sbGVjdGlvbiBpdGVtc1xyXG4gICAqL1xyXG4gIFtTeW1ib2wuaXRlcmF0b3JdKCk6IEl0ZXJhdG9yPE1vZGVsPiB7XHJcbiAgICByZXR1cm4gdGhpcy5pdGVtcy52YWx1ZXMoKTtcclxuICB9XHJcblxyXG4gIGNyZWF0ZShpdGVtczogTW9kZWxbXSA9IFtdKTogdGhpcyB7XHJcbiAgICByZXR1cm4gbmV3ICh0aGlzLmNvbnN0cnVjdG9yIGFzIGFueSkoaXRlbXMpO1xyXG4gIH1cclxuXHJcbiAgZ2V0IGxlbmd0aCgpOiBudW1iZXIge1xyXG4gICAgcmV0dXJuIHRoaXMuaXRlbXMubGVuZ3RoO1xyXG4gIH1cclxuXHJcbiAgdG9BcnJheSgpOiBNb2RlbFtdIHtcclxuICAgIHJldHVybiBbLi4udGhpcy5pdGVtc107XHJcbiAgfVxyXG5cclxuICBnZXQgZmlyc3QoKTogTW9kZWwge1xyXG4gICAgcmV0dXJuIGZpcnN0KHRoaXMuaXRlbXMpO1xyXG4gIH1cclxuXHJcbiAgZ2V0IGxhc3QoKTogTW9kZWwge1xyXG4gICAgcmV0dXJuIGxhc3QodGhpcy5pdGVtcyk7XHJcbiAgfVxyXG5cclxuICByZXNldCgpOiBNb2RlbCB7XHJcbiAgICB0aGlzLmluZGV4ID0gMDtcclxuXHJcbiAgICByZXR1cm4gdGhpcy5pdGVtc1t0aGlzLmluZGV4XTtcclxuICB9XHJcblxyXG4gIG5leHQoKTogTW9kZWwge1xyXG4gICAgaWYgKHRoaXMuaW5kZXggPCB0aGlzLmxlbmd0aCkge1xyXG4gICAgICB0aGlzLmluZGV4Kys7XHJcblxyXG4gICAgICByZXR1cm4gdGhpcy5pdGVtc1t0aGlzLmluZGV4XTtcclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gbnVsbDtcclxuICB9XHJcblxyXG4gIGJhY2soKTogTW9kZWwge1xyXG4gICAgaWYgKHRoaXMuaW5kZXggPiAwKSB7XHJcbiAgICAgIHRoaXMuaW5kZXgtLTtcclxuXHJcbiAgICAgIHJldHVybiB0aGlzLml0ZW1zW3RoaXMuaW5kZXhdO1xyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiBudWxsO1xyXG4gIH1cclxuXHJcbiAgZ2V0SWRzKCk6IG51bWJlcltdIHtcclxuICAgIHJldHVybiB0aGlzLml0ZW1zLm1hcCgoaXRlbTogTW9kZWwpOiBudW1iZXIgPT4gaXRlbVsnaWQnXSk7XHJcbiAgfVxyXG5cclxuICBtYXAoY2FsbGJhY2s6IChpdGVtOiBNb2RlbCkgPT4gYW55KTogYW55W10ge1xyXG4gICAgcmV0dXJuIHRoaXMuaXRlbXMubWFwKGNhbGxiYWNrKTtcclxuICB9XHJcblxyXG4gIG1hcEJ5KHBhdGg6IHN0cmluZyk6IGFueVtdIHtcclxuICAgIHJldHVybiB0aGlzLml0ZW1zLm1hcCgoaXRlbTogTW9kZWwpOiBhbnkgPT4gZ2V0KGl0ZW0sIHBhdGgpKVxyXG4gIH1cclxuXHJcbiAgc29ydEJ5KHBhdGhzOiBzdHJpbmcgfCBzdHJpbmdbXSA9IFsnaWQnXSwgb3JkZXI6IHN0cmluZyB8IHN0cmluZ1tdID0gWydkZXNjJ10pOiB0aGlzIHtcclxuICAgIHRoaXMuaXRlbXMgPSBvcmRlckJ5KHRoaXMuaXRlbXMsIHBhdGhzIGluc3RhbmNlb2YgQXJyYXkgPyBwYXRocyA6IFtwYXRoc10sIG9yZGVyIGluc3RhbmNlb2YgQXJyYXkgPyBvcmRlciA6IFtvcmRlcl0pO1xyXG5cclxuICAgIHJldHVybiB0aGlzO1xyXG4gIH1cclxuXHJcbiAgc29ydChjYWxsYmFjazogKGE6IE1vZGVsLCBiOiBNb2RlbCkgPT4gbnVtYmVyKTogdGhpcyB7XHJcbiAgICB0aGlzLml0ZW1zLnNvcnQoY2FsbGJhY2spO1xyXG5cclxuICAgIHJldHVybiB0aGlzO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogR2V0IHRvdGFsIHN1bSBvZiBpdGVtcyBieSBmaWVsZFxyXG4gICAqL1xyXG4gIHN1bUJ5KHBhdGg6IHN0cmluZywgYWJzID0gZmFsc2UpOiBudW1iZXIge1xyXG4gICAgcmV0dXJuIHRoaXMucmVkdWNlKFxyXG4gICAgICAoc3VtOiBudW1iZXIsIGl0ZW06IE1vZGVsKTogbnVtYmVyID0+IHN1bSArIChhYnMgPyBNYXRoLmFicyhOdW1iZXIoZ2V0KGl0ZW0sIHBhdGgpKSkgOiBOdW1iZXIoZ2V0KGl0ZW0sIHBhdGgpKSlcclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBncm91cEJ5KHBhdGggPSAnaWQnKTogQ29sbGVjdGlvbkRpY3Rpb25hcnk8dGhpcz4ge1xyXG4gICAgcmV0dXJuIG5ldyBDb2xsZWN0aW9uRGljdGlvbmFyeSh0aGlzLCBwYXRoKTtcclxuICB9XHJcblxyXG4gIGluZGV4QnkocGF0aDogc3RyaW5nKTogRGljdGlvbmFyeTxNb2RlbD4ge1xyXG4gICAgcmV0dXJuIG5ldyBEaWN0aW9uYXJ5KHRoaXMuaXRlbXMsIHBhdGgpO1xyXG4gIH1cclxuXHJcbiAgZmlsdGVyKGNhbGxiYWNrOiAoaXRlbTogTW9kZWwpID0+IGJvb2xlYW4pOiB0aGlzIHtcclxuICAgIHJldHVybiB0aGlzLmNyZWF0ZSh0aGlzLml0ZW1zLmZpbHRlcihjYWxsYmFjaykpO1xyXG4gIH1cclxuXHJcbiAgZmlsdGVyQnkocGF0aDogc3RyaW5nLCB2YWx1ZXM6IGFueSk6IHRoaXMge1xyXG4gICAgcmV0dXJuIHRoaXMuZmlsdGVyKChpdGVtOiBNb2RlbCkgPT4gKEFycmF5LmlzQXJyYXkodmFsdWVzKSA/IHZhbHVlcyA6IFt2YWx1ZXNdKS5pbmNsdWRlcyhnZXQoaXRlbSwgcGF0aCkpKTtcclxuICB9XHJcblxyXG4gIGZpbHRlckJ5UmFuZ2UocGF0aDogc3RyaW5nLCBmcm9tOiBhbnksIHRvOiBhbnkpOiB0aGlzIHtcclxuICAgIHJldHVybiB0aGlzLmZpbHRlcigoaXRlbTogTW9kZWwpOiBib29sZWFuID0+IGdldChpdGVtLCBwYXRoKSA+PSBmcm9tICYmIGdldChpdGVtLCBwYXRoKSA8PSB0byk7XHJcbiAgfVxyXG5cclxuICBmaWx0ZXJCeUZpbmFuY2lhbFllYXIocGF0aDogc3RyaW5nLCBmaW5hbmNpYWxZZWFyOiBGaW5hbmNpYWxZZWFyID0gbmV3IEZpbmFuY2lhbFllYXIoKSk6IHRoaXMge1xyXG4gICAgcmV0dXJuIHRoaXMuZmlsdGVyQnlSYW5nZShwYXRoLCBmaW5hbmNpYWxZZWFyLnN0YXJ0RGF0ZSwgZmluYW5jaWFsWWVhci5lbmREYXRlKTtcclxuICB9XHJcblxyXG4gIGZpbmQoY2FsbGJhY2s6IChpdGVtOiBNb2RlbCkgPT4gYm9vbGVhbik6IE1vZGVsIHwgbnVsbCB7XHJcbiAgICByZXR1cm4gdGhpcy5pdGVtcy5maW5kKGNhbGxiYWNrKTtcclxuICB9XHJcblxyXG4gIGZpbmRCeShwYXRoOiBzdHJpbmcsIHZhbHVlOiBhbnkpOiBNb2RlbCB8IG51bGwge1xyXG4gICAgcmV0dXJuIHRoaXMuaXRlbXMuZmluZCgobW9kZWw6IE1vZGVsKSA9PiB2YWx1ZSA9PT0gZ2V0KG1vZGVsLCBwYXRoKSk7XHJcbiAgfVxyXG5cclxuICBmaW5kSW5kZXhCeShwYXRoOiBzdHJpbmcsIHZhbHVlOiBhbnkpOiBudW1iZXIge1xyXG4gICAgcmV0dXJuIHRoaXMuaXRlbXMuZmluZEluZGV4KChpdGVtOiBNb2RlbCkgPT4gZ2V0KGl0ZW0sIHBhdGgpID09PSB2YWx1ZSkgPz8gbnVsbDtcclxuICB9XHJcblxyXG4gIHB1c2goLi4uaXRlbXM6IE1vZGVsW10pOiB0aGlzIHtcclxuICAgIHRoaXMuaXRlbXMucHVzaCguLi5pdGVtcyk7XHJcblxyXG4gICAgcmV0dXJuIHRoaXMuY3JlYXRlKHRoaXMuaXRlbXMpO1xyXG4gIH1cclxuXHJcbiAgcmVtb3ZlKC4uLml0ZW1zOiBNb2RlbFtdKTogdGhpcyB7XHJcbiAgICBpdGVtcy5mb3JFYWNoKChpdGVtKSA9PiB7XHJcbiAgICAgIGNvbnN0IGluZGV4OiBudW1iZXIgPSB0aGlzLmZpbmRJbmRleEJ5KCdpZCcsIGl0ZW0uaWQpO1xyXG4gICAgICBpZiAoaW5kZXggPCAwKSB7XHJcbiAgICAgICAgcmV0dXJuO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0aGlzLml0ZW1zLnNwbGljZShpbmRleCwgMSk7XHJcbiAgICB9KTtcclxuXHJcbiAgICByZXR1cm4gdGhpcztcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEBUT0RPIGl0J3MgZmlsdGVyLCBub3QgcmVtb3ZlXHJcbiAgICovXHJcbiAgcmVtb3ZlQnkocGF0aDogc3RyaW5nLCB2YWx1ZXM6IGFueSk6IHRoaXMge1xyXG4gICAgcmV0dXJuIHRoaXMuZmlsdGVyKChpdGVtOiBNb2RlbCkgPT4gIShBcnJheS5pc0FycmF5KHZhbHVlcykgPyB2YWx1ZXMgOiBbdmFsdWVzXSkuaW5jbHVkZXMoZ2V0KGl0ZW0sIHBhdGgpKSk7XHJcbiAgfVxyXG5cclxuICByZXBsYWNlQnkocGF0aDogc3RyaW5nLCB2YWx1ZTogYW55LCBpdGVtOiBNb2RlbCk6IHRoaXMge1xyXG4gICAgY29uc3QgaW5kZXg6IG51bWJlciA9IHRoaXMuZmluZEluZGV4QnkocGF0aCwgdmFsdWUpO1xyXG4gICAgaWYgKGluZGV4ID49IDApIHtcclxuICAgICAgdGhpcy5pdGVtcy5zcGxpY2UoaW5kZXgsIDEsIGl0ZW0pO1xyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiB0aGlzO1xyXG4gIH1cclxuXHJcbiAgZGlmZihpdGVtczogTW9kZWxbXSk6IHRoaXMge1xyXG4gICAgcmV0dXJuIHRoaXMuZmlsdGVyKChtb2RlbDogTW9kZWwpID0+ICFpdGVtcy5tYXAoKGl0ZW06IE1vZGVsKSA9PiBpdGVtLmlkKS5pbmNsdWRlcyhtb2RlbC5pZCkpO1xyXG4gIH1cclxuXHJcbiAgbWluQnkocGF0aDogc3RyaW5nKTogTW9kZWwge1xyXG4gICAgcmV0dXJuIHRoaXMuaXRlbXMucmVkdWNlKChwcmV2OiBNb2RlbCwgY3VycmVudDogTW9kZWwpID0+IChnZXQocHJldiwgcGF0aCkgPCBnZXQoY3VycmVudCwgcGF0aCkgPyBwcmV2IDogY3VycmVudCkpO1xyXG4gIH1cclxuXHJcbiAgbWF4QnkocGF0aDogc3RyaW5nKTogTW9kZWwge1xyXG4gICAgcmV0dXJuIHRoaXMuaXRlbXMucmVkdWNlKChwcmV2OiBNb2RlbCwgY3VycmVudDogTW9kZWwpID0+IChnZXQocHJldiwgcGF0aCkgPiBnZXQoY3VycmVudCwgcGF0aCkgPyBwcmV2IDogY3VycmVudCkpO1xyXG4gIH1cclxuXHJcbiAgcmVkdWNlKGNhbGxiYWNrOiAoc3VtOiBudW1iZXIsIGl0ZW06IE1vZGVsKSA9PiBudW1iZXIsIGluaXQgPSAwKTogbnVtYmVyIHtcclxuICAgIHJldHVybiByb3VuZCh0aGlzLml0ZW1zLnJlZHVjZShjYWxsYmFjaywgaW5pdCksIDIpO1xyXG4gIH1cclxuXHJcbiAgc2xpY2UoZnJvbTogbnVtYmVyLCB0bzogbnVtYmVyKTogdGhpcyB7XHJcbiAgICB0aGlzLml0ZW1zLnNsaWNlKGZyb20sIHRvKTtcclxuXHJcbiAgICByZXR1cm4gdGhpcztcclxuICB9XHJcbn1cclxuIl19
@@ -0,0 +1,11 @@
1
+ import { Collection } from '../collection';
2
+ import { IncomeSourceTypeListWorkEnum } from '../../db/Enums/income-source';
3
+ export class IncomeSourceForecastCollection extends Collection {
4
+ get bonuses() {
5
+ return this.filterBy('incomeSourceType.id', IncomeSourceTypeListWorkEnum.BONUSES);
6
+ }
7
+ get monthlyAmount() {
8
+ return this.sumBy('monthlyAmount');
9
+ }
10
+ }
11
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5jb21lLXNvdXJjZS1mb3JlY2FzdC5jb2xsZWN0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHQtY29yZS9zcmMvbGliL2NvbGxlY3Rpb25zL2luY29tZS1zb3VyY2UvaW5jb21lLXNvdXJjZS1mb3JlY2FzdC5jb2xsZWN0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLDRCQUE0QixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFFNUUsTUFBTSxPQUFPLDhCQUErQixTQUFRLFVBQWdDO0lBQ2xGLElBQUksT0FBTztRQUNULE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQyxxQkFBcUIsRUFBRSw0QkFBNEIsQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUNwRixDQUFDO0lBRUQsSUFBSSxhQUFhO1FBQ2YsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLGVBQWUsQ0FBQyxDQUFDO0lBQ3JDLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluY29tZVNvdXJjZUZvcmVjYXN0IH0gZnJvbSAnLi4vLi4vbW9kZWxzJztcbmltcG9ydCB7IENvbGxlY3Rpb24gfSBmcm9tICcuLi9jb2xsZWN0aW9uJztcbmltcG9ydCB7IEluY29tZVNvdXJjZVR5cGVMaXN0V29ya0VudW0gfSBmcm9tICcuLi8uLi9kYi9FbnVtcy9pbmNvbWUtc291cmNlJztcblxuZXhwb3J0IGNsYXNzIEluY29tZVNvdXJjZUZvcmVjYXN0Q29sbGVjdGlvbiBleHRlbmRzIENvbGxlY3Rpb248SW5jb21lU291cmNlRm9yZWNhc3Q+IHtcbiAgZ2V0IGJvbnVzZXMoKTogdGhpcyB7XG4gICAgcmV0dXJuIHRoaXMuZmlsdGVyQnkoJ2luY29tZVNvdXJjZVR5cGUuaWQnLCBJbmNvbWVTb3VyY2VUeXBlTGlzdFdvcmtFbnVtLkJPTlVTRVMpO1xuICB9XG5cbiAgZ2V0IG1vbnRobHlBbW91bnQoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5zdW1CeSgnbW9udGhseUFtb3VudCcpO1xuICB9XG59XG4iXX0=
@@ -0,0 +1,43 @@
1
+ import { Collection } from '../collection';
2
+ import { TankTypeEnum } from '../../db/Enums/tank-type.enum';
3
+ /**
4
+ * Collection of income sources
5
+ */
6
+ export class IncomeSourceCollection extends Collection {
7
+ filterByTank(tank) {
8
+ return this.items.filter((incomeSource) => {
9
+ switch (tank) {
10
+ case TankTypeEnum.OTHER:
11
+ return incomeSource.isOtherIncome();
12
+ default:
13
+ return incomeSource.isWorkIncome();
14
+ }
15
+ });
16
+ }
17
+ /**
18
+ * Filter income sources by provided tyoes
19
+ * @param types
20
+ */
21
+ filterByTypes(types) {
22
+ return this.items.filter((incomeSource) => types.includes(incomeSource.type));
23
+ }
24
+ getSalary() {
25
+ return this.items.filter((incomeSource) => incomeSource.isWorkIncome());
26
+ }
27
+ getOther() {
28
+ return this.items.filter((incomeSource) => incomeSource.isOtherIncome());
29
+ }
30
+ /**
31
+ * Get income sources list of forecasts
32
+ */
33
+ get forecasts() {
34
+ return this.items.map((incomeSource) => incomeSource.forecasts).flat();
35
+ }
36
+ get salaryForecasts() {
37
+ return this.items.map((incomeSource) => incomeSource.salaryForecasts).flat();
38
+ }
39
+ get incomeSourceForecasts() {
40
+ return this.items.map((incomeSource) => incomeSource.incomeSourceForecasts).flat();
41
+ }
42
+ }
43
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5jb21lLXNvdXJjZS5jb2xsZWN0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHQtY29yZS9zcmMvbGliL2NvbGxlY3Rpb25zL2luY29tZS1zb3VyY2UvaW5jb21lLXNvdXJjZS5jb2xsZWN0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFM0MsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBSTdEOztHQUVHO0FBQ0gsTUFBTSxPQUFPLHNCQUF1QixTQUFRLFVBQXdCO0lBQ2xFLFlBQVksQ0FBQyxJQUFrQjtRQUM3QixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUMsWUFBMEIsRUFBRSxFQUFFO1lBQ3RELFFBQVEsSUFBSSxFQUFFO2dCQUNaLEtBQUssWUFBWSxDQUFDLEtBQUs7b0JBQ3JCLE9BQU8sWUFBWSxDQUFDLGFBQWEsRUFBRSxDQUFDO2dCQUN0QztvQkFDRSxPQUFPLFlBQVksQ0FBQyxZQUFZLEVBQUUsQ0FBQzthQUN0QztRQUNILENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVEOzs7T0FHRztJQUNILGFBQWEsQ0FBQyxLQUE2QjtRQUN6QyxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUMsWUFBMEIsRUFBRSxFQUFFLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztJQUM5RixDQUFDO0lBRUQsU0FBUztRQUNQLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxZQUEwQixFQUFFLEVBQUUsQ0FBQyxZQUFZLENBQUMsWUFBWSxFQUFFLENBQUMsQ0FBQztJQUN4RixDQUFDO0lBRUQsUUFBUTtRQUNOLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxZQUEwQixFQUFFLEVBQUUsQ0FBQyxZQUFZLENBQUMsYUFBYSxFQUFFLENBQUMsQ0FBQztJQUN6RixDQUFDO0lBRUQ7O09BRUc7SUFDSCxJQUFJLFNBQVM7UUFDWCxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsWUFBMEIsRUFBRSxFQUFFLENBQUMsWUFBWSxDQUFDLFNBQVMsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ3ZGLENBQUM7SUFFRCxJQUFJLGVBQWU7UUFDakIsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLFlBQTBCLEVBQUUsRUFBRSxDQUFDLFlBQVksQ0FBQyxlQUFlLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUM3RixDQUFDO0lBRUQsSUFBSSxxQkFBcUI7UUFDdkIsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLFlBQTBCLEVBQUUsRUFBRSxDQUFDLFlBQVksQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ25HLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbGxlY3Rpb24gfSBmcm9tICcuLi9jb2xsZWN0aW9uJztcbmltcG9ydCB7IEluY29tZVNvdXJjZSwgSW5jb21lU291cmNlRm9yZWNhc3QsIFNhbGFyeUZvcmVjYXN0IH0gZnJvbSAnLi4vLi4vbW9kZWxzJztcbmltcG9ydCB7IFRhbmtUeXBlRW51bSB9IGZyb20gJy4uLy4uL2RiL0VudW1zL3RhbmstdHlwZS5lbnVtJztcbmltcG9ydCB7IEluY29tZVNvdXJjZVR5cGVFbnVtIH0gZnJvbSAnLi4vLi4vZGIvRW51bXMvaW5jb21lLXNvdXJjZSc7XG5pbXBvcnQgeyBJSW5jb21lU291cmNlRm9yZWNhc3QgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzJztcblxuLyoqXG4gKiBDb2xsZWN0aW9uIG9mIGluY29tZSBzb3VyY2VzXG4gKi9cbmV4cG9ydCBjbGFzcyBJbmNvbWVTb3VyY2VDb2xsZWN0aW9uIGV4dGVuZHMgQ29sbGVjdGlvbjxJbmNvbWVTb3VyY2U+IHtcbiAgZmlsdGVyQnlUYW5rKHRhbms6IFRhbmtUeXBlRW51bSk6IEluY29tZVNvdXJjZVtdIHtcbiAgICByZXR1cm4gdGhpcy5pdGVtcy5maWx0ZXIoKGluY29tZVNvdXJjZTogSW5jb21lU291cmNlKSA9PiB7XG4gICAgICBzd2l0Y2ggKHRhbmspIHtcbiAgICAgICAgY2FzZSBUYW5rVHlwZUVudW0uT1RIRVI6XG4gICAgICAgICAgcmV0dXJuIGluY29tZVNvdXJjZS5pc090aGVySW5jb21lKCk7XG4gICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgcmV0dXJuIGluY29tZVNvdXJjZS5pc1dvcmtJbmNvbWUoKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBGaWx0ZXIgaW5jb21lIHNvdXJjZXMgYnkgcHJvdmlkZWQgdHlvZXNcbiAgICogQHBhcmFtIHR5cGVzXG4gICAqL1xuICBmaWx0ZXJCeVR5cGVzKHR5cGVzOiBJbmNvbWVTb3VyY2VUeXBlRW51bVtdKTogSW5jb21lU291cmNlW10ge1xuICAgIHJldHVybiB0aGlzLml0ZW1zLmZpbHRlcigoaW5jb21lU291cmNlOiBJbmNvbWVTb3VyY2UpID0+IHR5cGVzLmluY2x1ZGVzKGluY29tZVNvdXJjZS50eXBlKSk7XG4gIH1cblxuICBnZXRTYWxhcnkoKTogSW5jb21lU291cmNlW10ge1xuICAgIHJldHVybiB0aGlzLml0ZW1zLmZpbHRlcigoaW5jb21lU291cmNlOiBJbmNvbWVTb3VyY2UpID0+IGluY29tZVNvdXJjZS5pc1dvcmtJbmNvbWUoKSk7XG4gIH1cblxuICBnZXRPdGhlcigpOiBJbmNvbWVTb3VyY2VbXSB7XG4gICAgcmV0dXJuIHRoaXMuaXRlbXMuZmlsdGVyKChpbmNvbWVTb3VyY2U6IEluY29tZVNvdXJjZSkgPT4gaW5jb21lU291cmNlLmlzT3RoZXJJbmNvbWUoKSk7XG4gIH1cblxuICAvKipcbiAgICogR2V0IGluY29tZSBzb3VyY2VzIGxpc3Qgb2YgZm9yZWNhc3RzXG4gICAqL1xuICBnZXQgZm9yZWNhc3RzKCk6IElJbmNvbWVTb3VyY2VGb3JlY2FzdFtdIHtcbiAgICByZXR1cm4gdGhpcy5pdGVtcy5tYXAoKGluY29tZVNvdXJjZTogSW5jb21lU291cmNlKSA9PiBpbmNvbWVTb3VyY2UuZm9yZWNhc3RzKS5mbGF0KCk7XG4gIH1cblxuICBnZXQgc2FsYXJ5Rm9yZWNhc3RzKCk6IFNhbGFyeUZvcmVjYXN0W10ge1xuICAgIHJldHVybiB0aGlzLml0ZW1zLm1hcCgoaW5jb21lU291cmNlOiBJbmNvbWVTb3VyY2UpID0+IGluY29tZVNvdXJjZS5zYWxhcnlGb3JlY2FzdHMpLmZsYXQoKTtcbiAgfVxuXG4gIGdldCBpbmNvbWVTb3VyY2VGb3JlY2FzdHMoKTogSW5jb21lU291cmNlRm9yZWNhc3RbXSB7XG4gICAgcmV0dXJuIHRoaXMuaXRlbXMubWFwKChpbmNvbWVTb3VyY2U6IEluY29tZVNvdXJjZSkgPT4gaW5jb21lU291cmNlLmluY29tZVNvdXJjZUZvcmVjYXN0cykuZmxhdCgpO1xuICB9XG59XG4iXX0=
@@ -0,0 +1,3 @@
1
+ export * from './income-source.collection';
2
+ export * from './income-source-forecast.collection';
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvY29sbGVjdGlvbnMvaW5jb21lLXNvdXJjZS9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLDRCQUE0QixDQUFDO0FBQzNDLGNBQWMscUNBQXFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2luY29tZS1zb3VyY2UuY29sbGVjdGlvbic7XG5leHBvcnQgKiBmcm9tICcuL2luY29tZS1zb3VyY2UtZm9yZWNhc3QuY29sbGVjdGlvbic7XG4iXX0=
@@ -25,10 +25,10 @@ export * from './depreciation-forecast.collection';
25
25
  export * from './depreciation.collection';
26
26
  export * from './employee.collection';
27
27
  export * from './exportable.collection';
28
- export * from './income-source.collection';
28
+ export * from './income-source';
29
29
  export * from './tax-review.collection';
30
30
  export * from './user-event-setting.collection';
31
31
  export * from './user-event-type-collection';
32
32
  export * from './holding';
33
33
  export * from './asset-sale.collection';
34
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvY29sbGVjdGlvbnMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsdUNBQXVDO0FBQ3ZDLGNBQWMsY0FBYyxDQUFDO0FBQzdCLGNBQWMseUJBQXlCLENBQUM7QUFFeEMsY0FBYyxRQUFRLENBQUM7QUFDdkIsY0FBYyxRQUFRLENBQUM7QUFDdkIsY0FBYyxZQUFZLENBQUM7QUFDM0IsY0FBYyxVQUFVLENBQUM7QUFDekIsY0FBYyxRQUFRLENBQUM7QUFDdkIsY0FBYyxnQkFBZ0IsQ0FBQztBQUMvQixjQUFjLGVBQWUsQ0FBQztBQUM5QixjQUFjLGVBQWUsQ0FBQztBQUM5QixjQUFjLFdBQVcsQ0FBQztBQUUxQix5QkFBeUI7QUFDekIsY0FBYywrQkFBK0IsQ0FBQztBQUM5QyxjQUFjLDhCQUE4QixDQUFDO0FBQzdDLGNBQWMsaUNBQWlDLENBQUM7QUFDaEQsY0FBYywyQkFBMkIsQ0FBQztBQUMxQyxjQUFjLCtCQUErQixDQUFDO0FBQzlDLGNBQWMsNkJBQTZCLENBQUM7QUFDNUMsY0FBYyw0QkFBNEIsQ0FBQztBQUMzQyxjQUFjLDhCQUE4QixDQUFDO0FBQzdDLGNBQWMsc0NBQXNDLENBQUM7QUFDckQsY0FBYyxxQkFBcUIsQ0FBQztBQUNwQyxjQUFjLG9DQUFvQyxDQUFDO0FBQ25ELGNBQWMsMkJBQTJCLENBQUM7QUFDMUMsY0FBYyx1QkFBdUIsQ0FBQztBQUN0QyxjQUFjLHlCQUF5QixDQUFDO0FBQ3hDLGNBQWMsNEJBQTRCLENBQUM7QUFDM0MsY0FBYyx5QkFBeUIsQ0FBQztBQUN4QyxjQUFjLGlDQUFpQyxDQUFDO0FBQ2hELGNBQWMsOEJBQThCLENBQUM7QUFDN0MsY0FBYyxXQUFXLENBQUM7QUFDMUIsY0FBYyx5QkFBeUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8vIEBUT0RPIEFsZXggbW92ZSBoZXJlIGFsbCBjb2xsZWN0aW9uc1xuZXhwb3J0ICogZnJvbSAnLi9jb2xsZWN0aW9uJztcbmV4cG9ydCAqIGZyb20gJy4vY29sbGVjdGlvbi1kaWN0aW9uYXJ5JztcblxuZXhwb3J0ICogZnJvbSAnLi9jaGF0JztcbmV4cG9ydCAqIGZyb20gJy4vbG9hbic7XG5leHBvcnQgKiBmcm9tICcuL3Byb3BlcnR5JztcbmV4cG9ydCAqIGZyb20gJy4vcmVwb3J0JztcbmV4cG9ydCAqIGZyb20gJy4vc29sZSc7XG5leHBvcnQgKiBmcm9tICcuL3N1YnNjcmlwdGlvbic7XG5leHBvcnQgKiBmcm9tICcuL3RheC1zdW1tYXJ5JztcbmV4cG9ydCAqIGZyb20gJy4vdHJhbnNhY3Rpb24nO1xuZXhwb3J0ICogZnJvbSAnLi92ZWhpY2xlJztcblxuLy8gQFRPRE8gYnJlYWsgdG8gZm9sZGVyc1xuZXhwb3J0ICogZnJvbSAnLi9hbGxvY2F0aW9uLWdyb3VwLmNvbGxlY3Rpb24nO1xuZXhwb3J0ICogZnJvbSAnLi9hbGxvY2F0aW9uLXJ1bGUuY29sbGVjdGlvbic7XG5leHBvcnQgKiBmcm9tICcuL2FjY291bnQtc2V0dXAtaXRlbS5jb2xsZWN0aW9uJztcbmV4cG9ydCAqIGZyb20gJy4vYmFuay1hY2NvdW50LmNvbGxlY3Rpb24nO1xuZXhwb3J0ICogZnJvbSAnLi9iYW5rLXRyYW5zYWN0aW9uLmNvbGxlY3Rpb24nO1xuZXhwb3J0ICogZnJvbSAnLi9jaGFydC1hY2NvdW50cy5jb2xsZWN0aW9uJztcbmV4cG9ydCAqIGZyb20gJy4vY2xpZW50LWludml0ZS5jb2xsZWN0aW9uJztcbmV4cG9ydCAqIGZyb20gJy4vY2xpZW50LW1vdmVtZW50LmNvbGxlY3Rpb24nO1xuZXhwb3J0ICogZnJvbSAnLi9jbGllbnQtcG9ydGZvbGlvLXJlcG9ydC5jb2xsZWN0aW9uJztcbmV4cG9ydCAqIGZyb20gJy4vY2xpZW50LmNvbGxlY3Rpb24nO1xuZXhwb3J0ICogZnJvbSAnLi9kZXByZWNpYXRpb24tZm9yZWNhc3QuY29sbGVjdGlvbic7XG5leHBvcnQgKiBmcm9tICcuL2RlcHJlY2lhdGlvbi5jb2xsZWN0aW9uJztcbmV4cG9ydCAqIGZyb20gJy4vZW1wbG95ZWUuY29sbGVjdGlvbic7XG5leHBvcnQgKiBmcm9tICcuL2V4cG9ydGFibGUuY29sbGVjdGlvbic7XG5leHBvcnQgKiBmcm9tICcuL2luY29tZS1zb3VyY2UuY29sbGVjdGlvbic7XG5leHBvcnQgKiBmcm9tICcuL3RheC1yZXZpZXcuY29sbGVjdGlvbic7XG5leHBvcnQgKiBmcm9tICcuL3VzZXItZXZlbnQtc2V0dGluZy5jb2xsZWN0aW9uJztcbmV4cG9ydCAqIGZyb20gJy4vdXNlci1ldmVudC10eXBlLWNvbGxlY3Rpb24nO1xuZXhwb3J0ICogZnJvbSAnLi9ob2xkaW5nJztcbmV4cG9ydCAqIGZyb20gJy4vYXNzZXQtc2FsZS5jb2xsZWN0aW9uJztcbiJdfQ==
34
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvY29sbGVjdGlvbnMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsdUNBQXVDO0FBQ3ZDLGNBQWMsY0FBYyxDQUFDO0FBQzdCLGNBQWMseUJBQXlCLENBQUM7QUFFeEMsY0FBYyxRQUFRLENBQUM7QUFDdkIsY0FBYyxRQUFRLENBQUM7QUFDdkIsY0FBYyxZQUFZLENBQUM7QUFDM0IsY0FBYyxVQUFVLENBQUM7QUFDekIsY0FBYyxRQUFRLENBQUM7QUFDdkIsY0FBYyxnQkFBZ0IsQ0FBQztBQUMvQixjQUFjLGVBQWUsQ0FBQztBQUM5QixjQUFjLGVBQWUsQ0FBQztBQUM5QixjQUFjLFdBQVcsQ0FBQztBQUUxQix5QkFBeUI7QUFDekIsY0FBYywrQkFBK0IsQ0FBQztBQUM5QyxjQUFjLDhCQUE4QixDQUFDO0FBQzdDLGNBQWMsaUNBQWlDLENBQUM7QUFDaEQsY0FBYywyQkFBMkIsQ0FBQztBQUMxQyxjQUFjLCtCQUErQixDQUFDO0FBQzlDLGNBQWMsNkJBQTZCLENBQUM7QUFDNUMsY0FBYyw0QkFBNEIsQ0FBQztBQUMzQyxjQUFjLDhCQUE4QixDQUFDO0FBQzdDLGNBQWMsc0NBQXNDLENBQUM7QUFDckQsY0FBYyxxQkFBcUIsQ0FBQztBQUNwQyxjQUFjLG9DQUFvQyxDQUFDO0FBQ25ELGNBQWMsMkJBQTJCLENBQUM7QUFDMUMsY0FBYyx1QkFBdUIsQ0FBQztBQUN0QyxjQUFjLHlCQUF5QixDQUFDO0FBQ3hDLGNBQWMsaUJBQWlCLENBQUM7QUFDaEMsY0FBYyx5QkFBeUIsQ0FBQztBQUN4QyxjQUFjLGlDQUFpQyxDQUFDO0FBQ2hELGNBQWMsOEJBQThCLENBQUM7QUFDN0MsY0FBYyxXQUFXLENBQUM7QUFDMUIsY0FBYyx5QkFBeUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8vIEBUT0RPIEFsZXggbW92ZSBoZXJlIGFsbCBjb2xsZWN0aW9uc1xuZXhwb3J0ICogZnJvbSAnLi9jb2xsZWN0aW9uJztcbmV4cG9ydCAqIGZyb20gJy4vY29sbGVjdGlvbi1kaWN0aW9uYXJ5JztcblxuZXhwb3J0ICogZnJvbSAnLi9jaGF0JztcbmV4cG9ydCAqIGZyb20gJy4vbG9hbic7XG5leHBvcnQgKiBmcm9tICcuL3Byb3BlcnR5JztcbmV4cG9ydCAqIGZyb20gJy4vcmVwb3J0JztcbmV4cG9ydCAqIGZyb20gJy4vc29sZSc7XG5leHBvcnQgKiBmcm9tICcuL3N1YnNjcmlwdGlvbic7XG5leHBvcnQgKiBmcm9tICcuL3RheC1zdW1tYXJ5JztcbmV4cG9ydCAqIGZyb20gJy4vdHJhbnNhY3Rpb24nO1xuZXhwb3J0ICogZnJvbSAnLi92ZWhpY2xlJztcblxuLy8gQFRPRE8gYnJlYWsgdG8gZm9sZGVyc1xuZXhwb3J0ICogZnJvbSAnLi9hbGxvY2F0aW9uLWdyb3VwLmNvbGxlY3Rpb24nO1xuZXhwb3J0ICogZnJvbSAnLi9hbGxvY2F0aW9uLXJ1bGUuY29sbGVjdGlvbic7XG5leHBvcnQgKiBmcm9tICcuL2FjY291bnQtc2V0dXAtaXRlbS5jb2xsZWN0aW9uJztcbmV4cG9ydCAqIGZyb20gJy4vYmFuay1hY2NvdW50LmNvbGxlY3Rpb24nO1xuZXhwb3J0ICogZnJvbSAnLi9iYW5rLXRyYW5zYWN0aW9uLmNvbGxlY3Rpb24nO1xuZXhwb3J0ICogZnJvbSAnLi9jaGFydC1hY2NvdW50cy5jb2xsZWN0aW9uJztcbmV4cG9ydCAqIGZyb20gJy4vY2xpZW50LWludml0ZS5jb2xsZWN0aW9uJztcbmV4cG9ydCAqIGZyb20gJy4vY2xpZW50LW1vdmVtZW50LmNvbGxlY3Rpb24nO1xuZXhwb3J0ICogZnJvbSAnLi9jbGllbnQtcG9ydGZvbGlvLXJlcG9ydC5jb2xsZWN0aW9uJztcbmV4cG9ydCAqIGZyb20gJy4vY2xpZW50LmNvbGxlY3Rpb24nO1xuZXhwb3J0ICogZnJvbSAnLi9kZXByZWNpYXRpb24tZm9yZWNhc3QuY29sbGVjdGlvbic7XG5leHBvcnQgKiBmcm9tICcuL2RlcHJlY2lhdGlvbi5jb2xsZWN0aW9uJztcbmV4cG9ydCAqIGZyb20gJy4vZW1wbG95ZWUuY29sbGVjdGlvbic7XG5leHBvcnQgKiBmcm9tICcuL2V4cG9ydGFibGUuY29sbGVjdGlvbic7XG5leHBvcnQgKiBmcm9tICcuL2luY29tZS1zb3VyY2UnO1xuZXhwb3J0ICogZnJvbSAnLi90YXgtcmV2aWV3LmNvbGxlY3Rpb24nO1xuZXhwb3J0ICogZnJvbSAnLi91c2VyLWV2ZW50LXNldHRpbmcuY29sbGVjdGlvbic7XG5leHBvcnQgKiBmcm9tICcuL3VzZXItZXZlbnQtdHlwZS1jb2xsZWN0aW9uJztcbmV4cG9ydCAqIGZyb20gJy4vaG9sZGluZyc7XG5leHBvcnQgKiBmcm9tICcuL2Fzc2V0LXNhbGUuY29sbGVjdGlvbic7XG4iXX0=