taxtank-core 0.17.16 → 0.19.0

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 (274) hide show
  1. package/bundles/taxtank-core.umd.js +6764 -5446
  2. package/bundles/taxtank-core.umd.js.map +1 -1
  3. package/esm2015/lib/collections/account-setup-item.collection.js +2 -2
  4. package/esm2015/lib/collections/bank.collection.js +15 -0
  5. package/esm2015/lib/collections/collection-dictionary.js +1 -1
  6. package/esm2015/lib/collections/collection.js +41 -55
  7. package/esm2015/lib/collections/depreciation.collection.js +6 -3
  8. package/esm2015/lib/collections/exportable.collection.js +1 -1
  9. package/esm2015/lib/collections/property/property.collection.js +3 -3
  10. package/esm2015/lib/collections/transaction/transaction.collection.js +11 -7
  11. package/esm2015/lib/collections/vehicle-logbook.collection.js +2 -2
  12. package/esm2015/lib/db/Enums/chart-accounts-heading-list.enum.js +20 -1
  13. package/esm2015/lib/db/Enums/chart-accounts-list.enum.js +37 -1
  14. package/esm2015/lib/db/Enums/chart-accounts-metadata-list.enum.js +4 -1
  15. package/esm2015/lib/db/Models/abstract-model.js +1 -1
  16. package/esm2015/lib/db/Models/bank/bank.js +1 -1
  17. package/esm2015/lib/forms/abstract.form.js +18 -3
  18. package/esm2015/lib/forms/bank/bank-account-add-manual.form.js +19 -0
  19. package/esm2015/lib/forms/bank/bank-account-loan.form.js +20 -0
  20. package/esm2015/lib/forms/bank/bank-account-migrate.form.js +15 -0
  21. package/esm2015/lib/forms/bank/bank-account-properties.form.js +15 -0
  22. package/esm2015/lib/forms/bank/bank-account-property.form.js +13 -0
  23. package/esm2015/lib/forms/bank/bank-account.form.js +53 -0
  24. package/esm2015/lib/forms/bank/bank-login.form.js +19 -0
  25. package/esm2015/lib/forms/client/client-income-types.form.js +2 -8
  26. package/esm2015/lib/forms/index.js +9 -1
  27. package/esm2015/lib/forms/login/login.form.js +1 -1
  28. package/esm2015/lib/forms/register/register-client.form.js +4 -3
  29. package/esm2015/lib/forms/register/register-firm.form.js +2 -9
  30. package/esm2015/lib/forms/report/my-tax/index.js +14 -0
  31. package/esm2015/lib/forms/report/my-tax/my-tax-business-or-losses.form.js +10 -0
  32. package/esm2015/lib/forms/report/my-tax/my-tax-deductions.form.js +75 -0
  33. package/esm2015/lib/forms/report/my-tax/my-tax-dividends.form.js +23 -0
  34. package/esm2015/lib/forms/report/my-tax/my-tax-employee-share-schemes.form.js +14 -0
  35. package/esm2015/lib/forms/report/my-tax/my-tax-income-statements.form.js +92 -0
  36. package/esm2015/lib/forms/report/my-tax/my-tax-income-tests.form.js +10 -0
  37. package/esm2015/lib/forms/report/my-tax/my-tax-interest.form.js +12 -0
  38. package/esm2015/lib/forms/report/my-tax/my-tax-losses.form.js +10 -0
  39. package/esm2015/lib/forms/report/my-tax/my-tax-medicare.form.js +33 -0
  40. package/esm2015/lib/forms/report/my-tax/my-tax-offsets.form.js +10 -0
  41. package/esm2015/lib/forms/report/my-tax/my-tax-other-income.form.js +38 -0
  42. package/esm2015/lib/forms/report/my-tax/my-tax-partnerships-and-trusts.form.js +32 -0
  43. package/esm2015/lib/forms/report/my-tax/my-tax-rent.form.js +13 -0
  44. package/esm2015/lib/forms/user/password.form.js +6 -6
  45. package/esm2015/lib/forms/user/reset-password.form.js +1 -1
  46. package/esm2015/lib/forms/vehicle/vehicle-claim.form.js +2 -2
  47. package/esm2015/lib/forms/vehicle/vehicle.form.js +6 -12
  48. package/esm2015/lib/interceptors/basiq.interceptor.js +35 -0
  49. package/esm2015/lib/interceptors/corelogic-interceptor.js +3 -3
  50. package/esm2015/lib/interceptors/financial-year-interceptor.js +17 -6
  51. package/esm2015/lib/interceptors/interceptors.module.js +16 -5
  52. package/esm2015/lib/interceptors/jwt-interceptor.js +3 -3
  53. package/esm2015/lib/interceptors/preloader.interceptor.js +3 -3
  54. package/esm2015/lib/interceptors/user-switcher-interceptor.js +3 -3
  55. package/esm2015/lib/models/account-setup/account-setup-item.js +4 -2
  56. package/esm2015/lib/models/bank/bank-account-property.js +6 -2
  57. package/esm2015/lib/models/bank/bank-account.js +2 -1
  58. package/esm2015/lib/models/bank/bank-connection.js +18 -3
  59. package/esm2015/lib/models/bank/bank-login-data.js +6 -0
  60. package/esm2015/lib/models/bank/bank.js +6 -1
  61. package/esm2015/lib/models/client/client-portfolio-report.js +3 -2
  62. package/esm2015/lib/models/endpoint/endpoints.const.js +4 -1
  63. package/esm2015/lib/models/event/app-event-type.enum.js +39 -38
  64. package/esm2015/lib/models/loan/loan-payment.js +3 -2
  65. package/esm2015/lib/models/loan/loan.js +1 -6
  66. package/esm2015/lib/models/pdf/pdf-settings.js +3 -1
  67. package/esm2015/lib/models/report/my-tax/ato-links.js +11 -0
  68. package/esm2015/lib/models/report/my-tax/my-tax-business-or-losses/my-tax-business-or-losses.js +8 -0
  69. package/esm2015/lib/models/report/my-tax/my-tax-deductions/deduction-clothing-type.enum.js +13 -0
  70. package/esm2015/lib/models/report/my-tax/my-tax-deductions/deduction-fields.const.js +57 -0
  71. package/esm2015/lib/models/report/my-tax/my-tax-deductions/deduction-self-education-type.enum.js +10 -0
  72. package/esm2015/lib/models/report/my-tax/my-tax-deductions/my-tax-deductions.js +72 -0
  73. package/esm2015/lib/models/report/my-tax/my-tax-dividends/my-tax-dividends.js +18 -0
  74. package/esm2015/lib/models/report/my-tax/my-tax-employee-share-schemes/my-tax-employee-share-schemes.js +24 -0
  75. package/esm2015/lib/models/report/my-tax/my-tax-income-statements/my-tax-income-statements.js +68 -0
  76. package/esm2015/lib/models/report/my-tax/my-tax-income-tests/my-tax-income-tests.js +8 -0
  77. package/esm2015/lib/models/report/my-tax/my-tax-interest/my-tax-interest.js +11 -0
  78. package/esm2015/lib/models/report/my-tax/my-tax-losses/my-tax-losses.js +10 -0
  79. package/esm2015/lib/models/report/my-tax/my-tax-offsets/my-tax-offsets.js +8 -0
  80. package/esm2015/lib/models/report/my-tax/my-tax-other-income/my-tax-other-income.js +28 -0
  81. package/esm2015/lib/models/report/my-tax/my-tax-partnerships-and-trusts/my-tax-partnerships-and-trusts.js +31 -0
  82. package/esm2015/lib/models/report/my-tax/my-tax-rent/my-tax-rent.js +24 -0
  83. package/esm2015/lib/models/report/property/property-report-item.js +4 -2
  84. package/esm2015/lib/models/report/vehicle-expense/vehicle-expense.js +4 -2
  85. package/esm2015/lib/models/tax-summary/report-item-details.js +3 -2
  86. package/esm2015/lib/models/tax-summary/report-item.js +3 -2
  87. package/esm2015/lib/models/transaction/transaction.js +2 -1
  88. package/esm2015/lib/services/account-setup/account-setup.service.js +5 -5
  89. package/esm2015/lib/services/asset/assets.service.js +3 -3
  90. package/esm2015/lib/services/auth/auth.service.js +3 -3
  91. package/esm2015/lib/services/auth/jwt.service.js +3 -3
  92. package/esm2015/lib/services/bank/bank-account-calculation.service.js +3 -3
  93. package/esm2015/lib/services/bank/bank-transaction-calculation.service.js +3 -3
  94. package/esm2015/lib/services/event/event-dispatcher.service.js +3 -3
  95. package/esm2015/lib/services/event/sse.service.js +7 -4
  96. package/esm2015/lib/services/export/export-formatter.service.js +3 -3
  97. package/esm2015/lib/services/header-title/header-title.service.js +3 -3
  98. package/esm2015/lib/services/http/address/address.service.js +3 -3
  99. package/esm2015/lib/services/http/bank/bank-account/bank-account.service.js +5 -8
  100. package/esm2015/lib/services/http/bank/bank-connection/bank-connection.service.js +60 -5
  101. package/esm2015/lib/services/http/bank/bank-transaction/bank-transaction.service.js +3 -3
  102. package/esm2015/lib/services/http/bank/bank.service.js +3 -3
  103. package/esm2015/lib/services/http/bank/basiq/basiq-connections-response.interface.js +2 -0
  104. package/esm2015/lib/services/http/bank/basiq/basiq-token-response.interface.js +2 -0
  105. package/esm2015/lib/services/http/bank/basiq/basiq-token.service.js +42 -0
  106. package/esm2015/lib/services/http/bank/basiq/basiq.service.js +37 -46
  107. package/esm2015/lib/services/http/chart-accounts/chart-accounts-depreciations/chart-accounts-depreciations.service.js +3 -3
  108. package/esm2015/lib/services/http/chart-accounts/chart-accounts.service.js +3 -3
  109. package/esm2015/lib/services/http/chat/chat.service.js +3 -3
  110. package/esm2015/lib/services/http/chat/message/message.service.js +3 -3
  111. package/esm2015/lib/services/http/chat/message-document/message-document.service.js +3 -3
  112. package/esm2015/lib/services/http/depreciation/depreciation-capital-project/depreciation-capital-project.service.js +3 -3
  113. package/esm2015/lib/services/http/depreciation/depreciation.service.js +3 -3
  114. package/esm2015/lib/services/http/document/document-folder/document-folder.service.js +3 -3
  115. package/esm2015/lib/services/http/firm/client-income/client-income-types.service.js +3 -3
  116. package/esm2015/lib/services/http/firm/client-invite/client-invite.service.js +3 -3
  117. package/esm2015/lib/services/http/firm/client-movement/client-movement.service.js +3 -3
  118. package/esm2015/lib/services/http/firm/employee/employee.service.js +3 -3
  119. package/esm2015/lib/services/http/firm/employee-invite/employee-invite.service.js +3 -3
  120. package/esm2015/lib/services/http/firm/firm.service.js +3 -3
  121. package/esm2015/lib/services/http/firm/portfolio-report/client-portfolio-report.service.js +3 -3
  122. package/esm2015/lib/services/http/income-source/income-source-forecast/income-source-forecast.service.js +3 -3
  123. package/esm2015/lib/services/http/income-source/income-source.service.js +3 -3
  124. package/esm2015/lib/services/http/income-source/salary-forecast/salary-forecast.service.js +3 -3
  125. package/esm2015/lib/services/http/income-source/sole-forecast/sole-forecast.service.js +3 -3
  126. package/esm2015/lib/services/http/loan/borrowing-expense/borrowing-expense.service.js +3 -3
  127. package/esm2015/lib/services/http/loan/loan.service.js +3 -3
  128. package/esm2015/lib/services/http/property/property-category/property-category.service.js +3 -3
  129. package/esm2015/lib/services/http/property/property-category-movement/property-category-movement.service.js +3 -3
  130. package/esm2015/lib/services/http/property/property-document/property-document.service.js +3 -3
  131. package/esm2015/lib/services/http/property/property-sale/property-sale.service.js +3 -3
  132. package/esm2015/lib/services/http/property/property-sale/tax-exemption/tax-exemption.service.js +3 -3
  133. package/esm2015/lib/services/http/property/property-share/property-share.service.js +3 -3
  134. package/esm2015/lib/services/http/property/property.service.js +3 -3
  135. package/esm2015/lib/services/http/rest/rest.service.js +4 -15
  136. package/esm2015/lib/services/http/service-notification/service-notification.service.js +3 -3
  137. package/esm2015/lib/services/http/subscription/service-price.service.js +3 -3
  138. package/esm2015/lib/services/http/subscription/subscription.service.js +3 -3
  139. package/esm2015/lib/services/http/tax-review/tax-review-history/tax-review-history.service.js +3 -3
  140. package/esm2015/lib/services/http/tax-review/tax-review.service.js +3 -3
  141. package/esm2015/lib/services/http/tax-summary/tax-summary.service.js +3 -3
  142. package/esm2015/lib/services/http/transaction/transaction-allocation/transaction-allocation.service.js +3 -3
  143. package/esm2015/lib/services/http/transaction/transaction.service.js +3 -3
  144. package/esm2015/lib/services/http/user/occupation/occupation.service.js +3 -3
  145. package/esm2015/lib/services/http/user/user-event-setting/user-event-setting.service.js +3 -3
  146. package/esm2015/lib/services/http/user/user-event-type/user-event-type.service.js +3 -3
  147. package/esm2015/lib/services/http/user/user.service.js +4 -17
  148. package/esm2015/lib/services/http/vehicle/vehicle-claim.service.js +3 -3
  149. package/esm2015/lib/services/http/vehicle/vehicle-logbook.service.js +3 -3
  150. package/esm2015/lib/services/http/vehicle/vehicle.service.js +3 -3
  151. package/esm2015/lib/services/intercom/intercom.service.js +3 -3
  152. package/esm2015/lib/services/kompassify/kompassify.service.js +3 -3
  153. package/esm2015/lib/services/pdf/pdf-from-dom-element/file-settings.js +19 -0
  154. package/esm2015/lib/services/pdf/pdf-from-dom-element/pdf-from-dom-element.service.js +35 -0
  155. package/esm2015/lib/services/pdf/pdf-from-table/file-settings.js +31 -0
  156. package/esm2015/lib/services/pdf/pdf-from-table/pdf-from-data-table/pdf-from-data-table.service.js +40 -0
  157. package/esm2015/lib/services/pdf/pdf-from-table/pdf-from-html-table/pdf-from-html-table.service.js +40 -0
  158. package/esm2015/lib/services/pdf/pdf-from-table/pdf-from-table.service.js +53 -0
  159. package/esm2015/lib/services/preloader/preloader.service.js +3 -3
  160. package/esm2015/lib/services/property/corelogic/corelogic.service.js +3 -3
  161. package/esm2015/lib/services/property/equity-position-chart/equity-position-chart.service.js +3 -3
  162. package/esm2015/lib/services/property/property-calculation/property-calculation.service.js +3 -3
  163. package/esm2015/lib/services/report/property/property-transaction-report.service.js +3 -3
  164. package/esm2015/lib/services/toast/toast.service.js +3 -3
  165. package/esm2015/lib/services/transaction/transaction-calculation.service.js +3 -3
  166. package/esm2015/lib/services/user/user-switcher.service.js +3 -3
  167. package/esm2015/lib/services/xlsx/xlsx.service.js +3 -3
  168. package/esm2015/lib/tt-core.module.js +4 -4
  169. package/esm2015/lib/validators/date-range.validator.js +22 -0
  170. package/esm2015/lib/validators/index.js +3 -1
  171. package/esm2015/lib/validators/require-autocomplete.js +14 -0
  172. package/esm2015/lib/validators/require-select.validator.js +15 -0
  173. package/esm2015/public-api.js +27 -2
  174. package/fesm2015/taxtank-core.js +7135 -5965
  175. package/fesm2015/taxtank-core.js.map +1 -1
  176. package/lib/collections/bank.collection.d.ts +7 -0
  177. package/lib/collections/collection-dictionary.d.ts +2 -1
  178. package/lib/collections/collection.d.ts +18 -31
  179. package/lib/collections/depreciation.collection.d.ts +3 -2
  180. package/lib/collections/exportable.collection.d.ts +2 -1
  181. package/lib/collections/transaction/transaction.collection.d.ts +5 -4
  182. package/lib/db/Enums/chart-accounts-heading-list.enum.d.ts +20 -1
  183. package/lib/db/Enums/chart-accounts-list.enum.d.ts +37 -1
  184. package/lib/db/Enums/chart-accounts-metadata-list.enum.d.ts +4 -1
  185. package/lib/db/Models/abstract-model.d.ts +1 -0
  186. package/lib/db/Models/bank/bank.d.ts +4 -0
  187. package/lib/forms/abstract.form.d.ts +18 -3
  188. package/lib/forms/bank/bank-account-add-manual.form.d.ts +10 -0
  189. package/lib/forms/bank/bank-account-loan.form.d.ts +5 -0
  190. package/lib/forms/bank/bank-account-migrate.form.d.ts +9 -0
  191. package/lib/forms/bank/bank-account-properties.form.d.ts +8 -0
  192. package/lib/forms/bank/bank-account-property.form.d.ts +5 -0
  193. package/lib/forms/bank/bank-account.form.d.ts +21 -0
  194. package/lib/forms/bank/bank-login.form.d.ts +11 -0
  195. package/lib/forms/client/client-income-types.form.d.ts +1 -2
  196. package/lib/forms/index.d.ts +8 -0
  197. package/lib/forms/login/login.form.d.ts +4 -1
  198. package/lib/forms/register/register-client.form.d.ts +1 -1
  199. package/lib/forms/register/register-firm.form.d.ts +2 -2
  200. package/lib/forms/report/my-tax/index.d.ts +13 -0
  201. package/lib/forms/report/my-tax/my-tax-business-or-losses.form.d.ts +8 -0
  202. package/lib/forms/report/my-tax/my-tax-deductions.form.d.ts +5 -0
  203. package/lib/forms/report/my-tax/my-tax-dividends.form.d.ts +5 -0
  204. package/lib/forms/report/my-tax/my-tax-employee-share-schemes.form.d.ts +5 -0
  205. package/lib/forms/report/my-tax/my-tax-income-statements.form.d.ts +7 -0
  206. package/lib/forms/report/my-tax/my-tax-income-tests.form.d.ts +8 -0
  207. package/lib/forms/report/my-tax/my-tax-interest.form.d.ts +5 -0
  208. package/lib/forms/report/my-tax/my-tax-losses.form.d.ts +8 -0
  209. package/lib/forms/report/my-tax/my-tax-medicare.form.d.ts +9 -0
  210. package/lib/forms/report/my-tax/my-tax-offsets.form.d.ts +8 -0
  211. package/lib/forms/report/my-tax/my-tax-other-income.form.d.ts +5 -0
  212. package/lib/forms/report/my-tax/my-tax-partnerships-and-trusts.form.d.ts +5 -0
  213. package/lib/forms/report/my-tax/my-tax-rent.form.d.ts +5 -0
  214. package/lib/forms/user/password.form.d.ts +4 -1
  215. package/lib/forms/user/reset-password.form.d.ts +3 -1
  216. package/lib/forms/vehicle/vehicle-claim.form.d.ts +1 -1
  217. package/lib/forms/vehicle/vehicle.form.d.ts +3 -7
  218. package/lib/interceptors/basiq.interceptor.d.ts +15 -0
  219. package/lib/interceptors/financial-year-interceptor.d.ts +2 -0
  220. package/lib/models/account-setup/account-setup-item.d.ts +2 -1
  221. package/lib/models/bank/bank-account-property.d.ts +1 -0
  222. package/lib/models/bank/bank-account.d.ts +2 -0
  223. package/lib/models/bank/bank-connection.d.ts +8 -1
  224. package/lib/models/bank/bank-login-data.d.ts +17 -0
  225. package/lib/models/bank/bank.d.ts +1 -0
  226. package/lib/models/client/client-portfolio-report.d.ts +2 -1
  227. package/lib/models/event/app-event-type.enum.d.ts +38 -37
  228. package/lib/models/loan/loan-payment.d.ts +2 -1
  229. package/lib/models/loan/loan.d.ts +0 -2
  230. package/lib/models/report/my-tax/ato-links.d.ts +6 -0
  231. package/lib/models/report/my-tax/my-tax-business-or-losses/my-tax-business-or-losses.d.ts +7 -0
  232. package/lib/models/report/my-tax/my-tax-deductions/deduction-clothing-type.enum.d.ts +11 -0
  233. package/lib/models/report/my-tax/my-tax-deductions/deduction-fields.const.d.ts +8 -0
  234. package/lib/models/report/my-tax/my-tax-deductions/deduction-self-education-type.enum.d.ts +8 -0
  235. package/lib/models/report/my-tax/my-tax-deductions/my-tax-deductions.d.ts +39 -0
  236. package/lib/models/report/my-tax/my-tax-dividends/my-tax-dividends.d.ts +9 -0
  237. package/lib/models/report/my-tax/my-tax-employee-share-schemes/my-tax-employee-share-schemes.d.ts +10 -0
  238. package/lib/models/report/my-tax/my-tax-income-statements/my-tax-income-statements.d.ts +30 -0
  239. package/lib/models/report/my-tax/my-tax-income-tests/my-tax-income-tests.d.ts +7 -0
  240. package/lib/models/report/my-tax/my-tax-interest/my-tax-interest.d.ts +9 -0
  241. package/lib/models/report/my-tax/my-tax-losses/my-tax-losses.d.ts +8 -0
  242. package/lib/models/report/my-tax/my-tax-offsets/my-tax-offsets.d.ts +7 -0
  243. package/lib/models/report/my-tax/my-tax-other-income/my-tax-other-income.d.ts +13 -0
  244. package/lib/models/report/my-tax/my-tax-partnerships-and-trusts/my-tax-partnerships-and-trusts.d.ts +17 -0
  245. package/lib/models/report/my-tax/my-tax-rent/my-tax-rent.d.ts +11 -0
  246. package/lib/models/report/property/property-report-item.d.ts +2 -1
  247. package/lib/models/report/vehicle-expense/vehicle-expense.d.ts +2 -1
  248. package/lib/models/tax-summary/report-item-details.d.ts +2 -1
  249. package/lib/models/tax-summary/report-item.d.ts +2 -1
  250. package/lib/models/transaction/transaction.d.ts +3 -1
  251. package/lib/services/event/sse.service.d.ts +3 -0
  252. package/lib/services/http/bank/bank-connection/bank-connection.service.d.ts +13 -1
  253. package/lib/services/http/bank/basiq/basiq-connections-response.interface.d.ts +9 -0
  254. package/lib/services/http/bank/basiq/basiq-token-response.interface.d.ts +9 -0
  255. package/lib/services/http/bank/basiq/basiq-token.service.d.ts +17 -0
  256. package/lib/services/http/bank/basiq/basiq.service.d.ts +20 -11
  257. package/lib/services/http/rest/rest.service.d.ts +0 -5
  258. package/lib/services/http/user/user.service.d.ts +0 -1
  259. package/lib/services/pdf/pdf-from-dom-element/file-settings.d.ts +6 -0
  260. package/lib/services/pdf/pdf-from-dom-element/pdf-from-dom-element.service.d.ts +13 -0
  261. package/lib/services/pdf/pdf-from-table/file-settings.d.ts +8 -0
  262. package/lib/services/pdf/pdf-from-table/pdf-from-data-table/pdf-from-data-table.service.d.ts +19 -0
  263. package/lib/services/pdf/pdf-from-table/pdf-from-html-table/pdf-from-html-table.service.d.ts +15 -0
  264. package/lib/services/pdf/pdf-from-table/pdf-from-table.service.d.ts +16 -0
  265. package/lib/validators/date-range.validator.d.ts +5 -0
  266. package/lib/validators/index.d.ts +2 -0
  267. package/lib/validators/require-autocomplete.d.ts +5 -0
  268. package/lib/validators/require-select.validator.d.ts +5 -0
  269. package/package.json +2 -1
  270. package/public-api.d.ts +26 -1
  271. package/esm2015/lib/models/pdf/pdf-config.js +0 -43
  272. package/esm2015/lib/services/pdf/pdf.service.js +0 -99
  273. package/lib/models/pdf/pdf-config.d.ts +0 -8
  274. package/lib/services/pdf/pdf.service.d.ts +0 -29
@@ -0,0 +1,10 @@
1
+ import { ChartAccountsListEnum } from '../../../../db/Enums/chart-accounts-list.enum';
2
+ /**
3
+ * @Todo waiting for Sole tank implementation
4
+ */
5
+ export class MyTaxLosses {
6
+ constructor(transactions) {
7
+ this.transactions = transactions.filterBy('chartAccounts.id', ChartAccountsListEnum.DIVIDENDS);
8
+ }
9
+ }
10
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXktdGF4LWxvc3Nlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R0LWNvcmUvc3JjL2xpYi9tb2RlbHMvcmVwb3J0L215LXRheC9teS10YXgtbG9zc2VzL215LXRheC1sb3NzZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sK0NBQStDLENBQUM7QUFFdEY7O0dBRUc7QUFDSCxNQUFNLE9BQU8sV0FBVztJQUd0QixZQUNFLFlBQW1DO1FBRW5DLElBQUksQ0FBQyxZQUFZLEdBQUcsWUFBWSxDQUFDLFFBQVEsQ0FBQyxrQkFBa0IsRUFBRSxxQkFBcUIsQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUNqRyxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBUcmFuc2FjdGlvbkNvbGxlY3Rpb24gfSBmcm9tICcuLi8uLi8uLi8uLi9jb2xsZWN0aW9ucy90cmFuc2FjdGlvbi90cmFuc2FjdGlvbi5jb2xsZWN0aW9uJztcbmltcG9ydCB7IENoYXJ0QWNjb3VudHNMaXN0RW51bSB9IGZyb20gJy4uLy4uLy4uLy4uL2RiL0VudW1zL2NoYXJ0LWFjY291bnRzLWxpc3QuZW51bSc7XG5cbi8qKlxuICogQFRvZG8gd2FpdGluZyBmb3IgU29sZSB0YW5rIGltcGxlbWVudGF0aW9uXG4gKi9cbmV4cG9ydCBjbGFzcyBNeVRheExvc3NlcyB7XG4gIHRyYW5zYWN0aW9uczogVHJhbnNhY3Rpb25Db2xsZWN0aW9uO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHRyYW5zYWN0aW9uczogVHJhbnNhY3Rpb25Db2xsZWN0aW9uLFxuICApIHtcbiAgICB0aGlzLnRyYW5zYWN0aW9ucyA9IHRyYW5zYWN0aW9ucy5maWx0ZXJCeSgnY2hhcnRBY2NvdW50cy5pZCcsIENoYXJ0QWNjb3VudHNMaXN0RW51bS5ESVZJREVORFMpO1xuICB9XG59XG4iXX0=
@@ -0,0 +1,8 @@
1
+ /**
2
+ * @Todo waiting for new chart accounts implemented (TT-1739 & TT-1740)
3
+ */
4
+ export class MyTaxOffsets {
5
+ constructor(transactions) {
6
+ }
7
+ }
8
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXktdGF4LW9mZnNldHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvbW9kZWxzL3JlcG9ydC9teS10YXgvbXktdGF4LW9mZnNldHMvbXktdGF4LW9mZnNldHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUE7O0dBRUc7QUFDSCxNQUFNLE9BQU8sWUFBWTtJQUN2QixZQUNFLFlBQW1DO0lBRXJDLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFRyYW5zYWN0aW9uQ29sbGVjdGlvbiB9IGZyb20gJy4uLy4uLy4uLy4uL2NvbGxlY3Rpb25zL3RyYW5zYWN0aW9uL3RyYW5zYWN0aW9uLmNvbGxlY3Rpb24nO1xuXG4vKipcbiAqIEBUb2RvIHdhaXRpbmcgZm9yIG5ldyBjaGFydCBhY2NvdW50cyBpbXBsZW1lbnRlZCAoVFQtMTczOSAmIFRULTE3NDApXG4gKi9cbmV4cG9ydCBjbGFzcyBNeVRheE9mZnNldHMge1xuICBjb25zdHJ1Y3RvcihcbiAgICB0cmFuc2FjdGlvbnM6IFRyYW5zYWN0aW9uQ29sbGVjdGlvbixcbiAgKSB7XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,28 @@
1
+ import { ChartAccountsListEnum } from '../../../../db/Enums/chart-accounts-list.enum';
2
+ import { ChartAccountsHeadingListEnum } from '../../../../db/Enums/chart-accounts-heading-list.enum';
3
+ export class MyTaxOtherIncome {
4
+ constructor(transactions) {
5
+ this.transactions = transactions;
6
+ this.lumpSumPaymentsInArrearsTransactions = this.transactions
7
+ .filterBy('chartAccounts.id', ChartAccountsListEnum.LUMP_SUM_PAYMENTS_IN_ARREARS);
8
+ this.bonusesTotalAmount = this.transactions
9
+ .filterBy('chartAccounts.heading.id', ChartAccountsHeadingListEnum.BONUSES)
10
+ .sumBy('amount');
11
+ this.forestryManagedInvestmentSchemesIncomeTotalAmount = this.transactions
12
+ .filterBy('chartAccounts.id', ChartAccountsListEnum.FORESTRY_MANAGED_INVESTMENT_SCHEMES_INCOME)
13
+ .sumBy('amount');
14
+ this.lumpSumPaymentsInArrearsTotalTax = this.lumpSumPaymentsInArrearsTransactions.sumBy('tax');
15
+ this.specialProfessionIncomeTotalAmount = this.transactions
16
+ .filterBy('chartAccounts.id', ChartAccountsListEnum.SPECIAL_PROFESSION_INCOME).sumBy('amount');
17
+ this.category1TotalIncome = this.lumpSumPaymentsInArrearsTransactions.sumBy('amount') +
18
+ this.transactions.filterBy('chartAccounts.id', ChartAccountsListEnum.JURY_ATTENDANCE_FEES).sumBy('amount') +
19
+ this.transactions.filterBy('chartAccounts.id', ChartAccountsListEnum.FOREIGN_EXCHANGE_GAINS_NON_BUSINESS).sumBy('amount') +
20
+ this.transactions.filterBy('chartAccounts.id', ChartAccountsListEnum.ROYALTIES).sumBy('amount') +
21
+ this.transactions.filterBy('chartAccounts.id', ChartAccountsListEnum.TAXABLE_SCHOLARSHIPS_BURSARIES_GRANTS).sumBy('amount');
22
+ this.atoInterestPaidTotalAmount = this.transactions.filterBy('chartAccounts.id', ChartAccountsListEnum.ATO_INTEREST_PAID).sumBy('amount');
23
+ this.gainOnSaleOfVehiclePreviouslyDepreciatedTotalAmount = this.transactions
24
+ .filterBy('chartAccounts.id', ChartAccountsListEnum.GAIN_ON_SALE_OF_VEHICLE_PREVIOUSLY_DEPRECIATED)
25
+ .sumBy('amount');
26
+ }
27
+ }
28
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXktdGF4LW90aGVyLWluY29tZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R0LWNvcmUvc3JjL2xpYi9tb2RlbHMvcmVwb3J0L215LXRheC9teS10YXgtb3RoZXItaW5jb21lL215LXRheC1vdGhlci1pbmNvbWUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sK0NBQStDLENBQUM7QUFDdEYsT0FBTyxFQUFFLDRCQUE0QixFQUFFLE1BQU0sdURBQXVELENBQUM7QUFFckcsTUFBTSxPQUFPLGdCQUFnQjtJQVczQixZQUNFLFlBQW1DO1FBRW5DLElBQUksQ0FBQyxZQUFZLEdBQUcsWUFBWSxDQUFDO1FBQ2pDLElBQUksQ0FBQyxvQ0FBb0MsR0FBRyxJQUFJLENBQUMsWUFBWTthQUMxRCxRQUFRLENBQUMsa0JBQWtCLEVBQUUscUJBQXFCLENBQUMsNEJBQTRCLENBQUMsQ0FBQztRQUNwRixJQUFJLENBQUMsa0JBQWtCLEdBQUcsSUFBSSxDQUFDLFlBQVk7YUFDeEMsUUFBUSxDQUFDLDBCQUEwQixFQUFFLDRCQUE0QixDQUFDLE9BQU8sQ0FBQzthQUMxRSxLQUFLLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDbkIsSUFBSSxDQUFDLGlEQUFpRCxHQUFHLElBQUksQ0FBQyxZQUFZO2FBQ3ZFLFFBQVEsQ0FBQyxrQkFBa0IsRUFBRSxxQkFBcUIsQ0FBQywwQ0FBMEMsQ0FBQzthQUM5RixLQUFLLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDbkIsSUFBSSxDQUFDLGdDQUFnQyxHQUFHLElBQUksQ0FBQyxvQ0FBb0MsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDL0YsSUFBSSxDQUFDLGtDQUFrQyxHQUFHLElBQUksQ0FBQyxZQUFZO2FBQ3hELFFBQVEsQ0FBQyxrQkFBa0IsRUFBRSxxQkFBcUIsQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUNqRyxJQUFJLENBQUMsb0JBQW9CLEdBQUcsSUFBSSxDQUFDLG9DQUFvQyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUM7WUFDbkYsSUFBSSxDQUFDLFlBQVksQ0FBQyxRQUFRLENBQUMsa0JBQWtCLEVBQUUscUJBQXFCLENBQUMsb0JBQW9CLENBQUMsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDO1lBQzFHLElBQUksQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDLGtCQUFrQixFQUFFLHFCQUFxQixDQUFDLG1DQUFtQyxDQUFDLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQztZQUN6SCxJQUFJLENBQUMsWUFBWSxDQUFDLFFBQVEsQ0FBQyxrQkFBa0IsRUFBRSxxQkFBcUIsQ0FBQyxTQUFTLENBQUMsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDO1lBQy9GLElBQUksQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDLGtCQUFrQixFQUFFLHFCQUFxQixDQUFDLHFDQUFxQyxDQUFDLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQzlILElBQUksQ0FBQywwQkFBMEIsR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLFFBQVEsQ0FBQyxrQkFBa0IsRUFBRSxxQkFBcUIsQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUMxSSxJQUFJLENBQUMsbURBQW1ELEdBQUcsSUFBSSxDQUFDLFlBQVk7YUFDekUsUUFBUSxDQUFDLGtCQUFrQixFQUFFLHFCQUFxQixDQUFDLDhDQUE4QyxDQUFDO2FBQ2xHLEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUNyQixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBUcmFuc2FjdGlvbkNvbGxlY3Rpb24gfSBmcm9tICcuLi8uLi8uLi8uLi9jb2xsZWN0aW9ucy90cmFuc2FjdGlvbi90cmFuc2FjdGlvbi5jb2xsZWN0aW9uJztcbmltcG9ydCB7IENoYXJ0QWNjb3VudHNMaXN0RW51bSB9IGZyb20gJy4uLy4uLy4uLy4uL2RiL0VudW1zL2NoYXJ0LWFjY291bnRzLWxpc3QuZW51bSc7XG5pbXBvcnQgeyBDaGFydEFjY291bnRzSGVhZGluZ0xpc3RFbnVtIH0gZnJvbSAnLi4vLi4vLi4vLi4vZGIvRW51bXMvY2hhcnQtYWNjb3VudHMtaGVhZGluZy1saXN0LmVudW0nO1xuXG5leHBvcnQgY2xhc3MgTXlUYXhPdGhlckluY29tZSB7XG4gIHRyYW5zYWN0aW9uczogVHJhbnNhY3Rpb25Db2xsZWN0aW9uO1xuICBsdW1wU3VtUGF5bWVudHNJbkFycmVhcnNUcmFuc2FjdGlvbnM6IFRyYW5zYWN0aW9uQ29sbGVjdGlvbjtcbiAgYm9udXNlc1RvdGFsQW1vdW50OiBudW1iZXI7XG4gIGZvcmVzdHJ5TWFuYWdlZEludmVzdG1lbnRTY2hlbWVzSW5jb21lVG90YWxBbW91bnQ6IG51bWJlcjtcbiAgbHVtcFN1bVBheW1lbnRzSW5BcnJlYXJzVG90YWxUYXg6IG51bWJlcjtcbiAgc3BlY2lhbFByb2Zlc3Npb25JbmNvbWVUb3RhbEFtb3VudDogbnVtYmVyO1xuICBjYXRlZ29yeTFUb3RhbEluY29tZTogbnVtYmVyO1xuICBhdG9JbnRlcmVzdFBhaWRUb3RhbEFtb3VudDogbnVtYmVyO1xuICBnYWluT25TYWxlT2ZWZWhpY2xlUHJldmlvdXNseURlcHJlY2lhdGVkVG90YWxBbW91bnQ6IG51bWJlcjtcblxuICBjb25zdHJ1Y3RvcihcbiAgICB0cmFuc2FjdGlvbnM6IFRyYW5zYWN0aW9uQ29sbGVjdGlvbixcbiAgKSB7XG4gICAgdGhpcy50cmFuc2FjdGlvbnMgPSB0cmFuc2FjdGlvbnM7XG4gICAgdGhpcy5sdW1wU3VtUGF5bWVudHNJbkFycmVhcnNUcmFuc2FjdGlvbnMgPSB0aGlzLnRyYW5zYWN0aW9uc1xuICAgICAgLmZpbHRlckJ5KCdjaGFydEFjY291bnRzLmlkJywgQ2hhcnRBY2NvdW50c0xpc3RFbnVtLkxVTVBfU1VNX1BBWU1FTlRTX0lOX0FSUkVBUlMpO1xuICAgIHRoaXMuYm9udXNlc1RvdGFsQW1vdW50ID0gdGhpcy50cmFuc2FjdGlvbnNcbiAgICAgIC5maWx0ZXJCeSgnY2hhcnRBY2NvdW50cy5oZWFkaW5nLmlkJywgQ2hhcnRBY2NvdW50c0hlYWRpbmdMaXN0RW51bS5CT05VU0VTKVxuICAgICAgLnN1bUJ5KCdhbW91bnQnKTtcbiAgICB0aGlzLmZvcmVzdHJ5TWFuYWdlZEludmVzdG1lbnRTY2hlbWVzSW5jb21lVG90YWxBbW91bnQgPSB0aGlzLnRyYW5zYWN0aW9uc1xuICAgICAgLmZpbHRlckJ5KCdjaGFydEFjY291bnRzLmlkJywgQ2hhcnRBY2NvdW50c0xpc3RFbnVtLkZPUkVTVFJZX01BTkFHRURfSU5WRVNUTUVOVF9TQ0hFTUVTX0lOQ09NRSlcbiAgICAgIC5zdW1CeSgnYW1vdW50Jyk7XG4gICAgdGhpcy5sdW1wU3VtUGF5bWVudHNJbkFycmVhcnNUb3RhbFRheCA9IHRoaXMubHVtcFN1bVBheW1lbnRzSW5BcnJlYXJzVHJhbnNhY3Rpb25zLnN1bUJ5KCd0YXgnKTtcbiAgICB0aGlzLnNwZWNpYWxQcm9mZXNzaW9uSW5jb21lVG90YWxBbW91bnQgPSB0aGlzLnRyYW5zYWN0aW9uc1xuICAgICAgLmZpbHRlckJ5KCdjaGFydEFjY291bnRzLmlkJywgQ2hhcnRBY2NvdW50c0xpc3RFbnVtLlNQRUNJQUxfUFJPRkVTU0lPTl9JTkNPTUUpLnN1bUJ5KCdhbW91bnQnKTtcbiAgICB0aGlzLmNhdGVnb3J5MVRvdGFsSW5jb21lID0gdGhpcy5sdW1wU3VtUGF5bWVudHNJbkFycmVhcnNUcmFuc2FjdGlvbnMuc3VtQnkoJ2Ftb3VudCcpICtcbiAgICAgIHRoaXMudHJhbnNhY3Rpb25zLmZpbHRlckJ5KCdjaGFydEFjY291bnRzLmlkJywgQ2hhcnRBY2NvdW50c0xpc3RFbnVtLkpVUllfQVRURU5EQU5DRV9GRUVTKS5zdW1CeSgnYW1vdW50JykgK1xuICAgICAgdGhpcy50cmFuc2FjdGlvbnMuZmlsdGVyQnkoJ2NoYXJ0QWNjb3VudHMuaWQnLCBDaGFydEFjY291bnRzTGlzdEVudW0uRk9SRUlHTl9FWENIQU5HRV9HQUlOU19OT05fQlVTSU5FU1MpLnN1bUJ5KCdhbW91bnQnKSArXG4gICAgICB0aGlzLnRyYW5zYWN0aW9ucy5maWx0ZXJCeSgnY2hhcnRBY2NvdW50cy5pZCcsIENoYXJ0QWNjb3VudHNMaXN0RW51bS5ST1lBTFRJRVMpLnN1bUJ5KCdhbW91bnQnKSArXG4gICAgICB0aGlzLnRyYW5zYWN0aW9ucy5maWx0ZXJCeSgnY2hhcnRBY2NvdW50cy5pZCcsIENoYXJ0QWNjb3VudHNMaXN0RW51bS5UQVhBQkxFX1NDSE9MQVJTSElQU19CVVJTQVJJRVNfR1JBTlRTKS5zdW1CeSgnYW1vdW50Jyk7XG4gICAgdGhpcy5hdG9JbnRlcmVzdFBhaWRUb3RhbEFtb3VudCA9IHRoaXMudHJhbnNhY3Rpb25zLmZpbHRlckJ5KCdjaGFydEFjY291bnRzLmlkJywgQ2hhcnRBY2NvdW50c0xpc3RFbnVtLkFUT19JTlRFUkVTVF9QQUlEKS5zdW1CeSgnYW1vdW50Jyk7XG4gICAgdGhpcy5nYWluT25TYWxlT2ZWZWhpY2xlUHJldmlvdXNseURlcHJlY2lhdGVkVG90YWxBbW91bnQgPSB0aGlzLnRyYW5zYWN0aW9uc1xuICAgICAgLmZpbHRlckJ5KCdjaGFydEFjY291bnRzLmlkJywgQ2hhcnRBY2NvdW50c0xpc3RFbnVtLkdBSU5fT05fU0FMRV9PRl9WRUhJQ0xFX1BSRVZJT1VTTFlfREVQUkVDSUFURUQpXG4gICAgICAuc3VtQnkoJ2Ftb3VudCcpO1xuICB9XG59XG4iXX0=
@@ -0,0 +1,31 @@
1
+ import { ChartAccountsListEnum } from '../../../../db/Enums/chart-accounts-list.enum';
2
+ import { ChartAccountsHeadingTaxableEnum } from '../../../../db/Enums/chart-accounts-heading-taxable.enum';
3
+ import { ChartAccountsMetadataListEnum } from '../../../../db/Enums/chart-accounts-metadata-list.enum';
4
+ export class MyTaxPartnershipsAndTrusts {
5
+ constructor(transactions) {
6
+ this.transactions = transactions;
7
+ this.partnershipIncomes = this.transactions.filterBy('chartAccounts.id', ChartAccountsListEnum.PARTNERSHIP_INCOME);
8
+ this.partnershipExpenses = this.transactions.filterBy('chartAccounts.id', ChartAccountsListEnum.PARTNERSHIP_EXPENSES);
9
+ this.trustsIncomes = this.transactions.filterBy('chartAccounts.id', ChartAccountsListEnum.TRUST_INCOME);
10
+ this.trustsExpenses = this.transactions.filterBy('chartAccounts.id', ChartAccountsListEnum.TRUST_EXPENSES);
11
+ this.netNonPrimaryProductionAmount = (this.partnershipIncomes.sumBy('amount') - this.partnershipExpenses.sumBy('amount')) +
12
+ (this.trustsIncomes.sumBy('amount') - this.trustsExpenses.sumBy('amount'));
13
+ this.partnershipsNetIncome = this.partnershipIncomes.sumBy('amount') -
14
+ this.partnershipExpenses.sumBy('amount');
15
+ this.trustsNetIncome = this.trustsIncomes.sumBy('amount') - this.trustsExpenses.sumBy('amount');
16
+ this.partnershipsSmallBusinessNetIncome = this.partnershipIncomes.sumBy('amount') -
17
+ this.partnershipExpenses.sumBy('amount');
18
+ this.trustsSmallBusinessNetIncome = this.trustsIncomes.sumBy('amount') -
19
+ this.trustsExpenses.sumBy('amount');
20
+ this.taxPaidTotal = this.transactions
21
+ .filterBy('chartAccounts.heading.id', ChartAccountsHeadingTaxableEnum.PARTNERSHIPS_AND_TRUSTS_INCOME)
22
+ .sumBy('tax');
23
+ this.frankingCreditsTotal = this.transactions
24
+ .filterBy('chartAccounts.heading.id', ChartAccountsHeadingTaxableEnum.PARTNERSHIPS_AND_TRUSTS_INCOME)
25
+ .getTransactionsMetadata()
26
+ .filterBy('chartAccountsMetadata.id', ChartAccountsMetadataListEnum.FRANKING_CREDIT)
27
+ .sumBy('value');
28
+ this.taxOffsetNRASTotalAmount = this.transactions.filterBy('chartAccounts.id', ChartAccountsListEnum.TAX_OFFSETS_N_R_A_S).sumBy('amount');
29
+ }
30
+ }
31
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXktdGF4LXBhcnRuZXJzaGlwcy1hbmQtdHJ1c3RzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHQtY29yZS9zcmMvbGliL21vZGVscy9yZXBvcnQvbXktdGF4L215LXRheC1wYXJ0bmVyc2hpcHMtYW5kLXRydXN0cy9teS10YXgtcGFydG5lcnNoaXBzLWFuZC10cnVzdHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sK0NBQStDLENBQUM7QUFDdEYsT0FBTyxFQUFFLCtCQUErQixFQUFFLE1BQU0sMERBQTBELENBQUM7QUFDM0csT0FBTyxFQUFFLDZCQUE2QixFQUFFLE1BQU0sd0RBQXdELENBQUM7QUFFdkcsTUFBTSxPQUFPLDBCQUEwQjtJQWVyQyxZQUNFLFlBQW1DO1FBRW5DLElBQUksQ0FBQyxZQUFZLEdBQUcsWUFBWSxDQUFDO1FBQ2pDLElBQUksQ0FBQyxrQkFBa0IsR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLFFBQVEsQ0FBQyxrQkFBa0IsRUFBRSxxQkFBcUIsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO1FBQ25ILElBQUksQ0FBQyxtQkFBbUIsR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLFFBQVEsQ0FBQyxrQkFBa0IsRUFBRSxxQkFBcUIsQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDO1FBQ3RILElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxRQUFRLENBQUMsa0JBQWtCLEVBQUUscUJBQXFCLENBQUMsWUFBWSxDQUFDLENBQUM7UUFDeEcsSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLFFBQVEsQ0FBQyxrQkFBa0IsRUFBRSxxQkFBcUIsQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUMzRyxJQUFJLENBQUMsNkJBQTZCLEdBQUcsQ0FBQyxJQUFJLENBQUMsa0JBQWtCLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxHQUFHLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLENBQUM7WUFDdkgsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDO1FBQzdFLElBQUksQ0FBQyxxQkFBcUIsR0FBRyxJQUFJLENBQUMsa0JBQWtCLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQztZQUNsRSxJQUFJLENBQUMsbUJBQW1CLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQzNDLElBQUksQ0FBQyxlQUFlLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDaEcsSUFBSSxDQUFDLGtDQUFrQyxHQUFHLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDO1lBQy9FLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDM0MsSUFBSSxDQUFDLDRCQUE0QixHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQztZQUNwRSxJQUFJLENBQUMsY0FBYyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUN0QyxJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxZQUFZO2FBQ2xDLFFBQVEsQ0FBQywwQkFBMEIsRUFBRSwrQkFBK0IsQ0FBQyw4QkFBOEIsQ0FBQzthQUNwRyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDaEIsSUFBSSxDQUFDLG9CQUFvQixHQUFHLElBQUksQ0FBQyxZQUFZO2FBQzFDLFFBQVEsQ0FBQywwQkFBMEIsRUFBRSwrQkFBK0IsQ0FBQyw4QkFBOEIsQ0FBQzthQUNwRyx1QkFBdUIsRUFBRTthQUN6QixRQUFRLENBQUMsMEJBQTBCLEVBQUUsNkJBQTZCLENBQUMsZUFBZSxDQUFDO2FBQ25GLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUNsQixJQUFJLENBQUMsd0JBQXdCLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxRQUFRLENBQUMsa0JBQWtCLEVBQUUscUJBQXFCLENBQUMsbUJBQW1CLENBQUMsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDNUksQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVHJhbnNhY3Rpb25Db2xsZWN0aW9uIH0gZnJvbSAnLi4vLi4vLi4vLi4vY29sbGVjdGlvbnMvdHJhbnNhY3Rpb24vdHJhbnNhY3Rpb24uY29sbGVjdGlvbic7XG5pbXBvcnQgeyBDaGFydEFjY291bnRzTGlzdEVudW0gfSBmcm9tICcuLi8uLi8uLi8uLi9kYi9FbnVtcy9jaGFydC1hY2NvdW50cy1saXN0LmVudW0nO1xuaW1wb3J0IHsgQ2hhcnRBY2NvdW50c0hlYWRpbmdUYXhhYmxlRW51bSB9IGZyb20gJy4uLy4uLy4uLy4uL2RiL0VudW1zL2NoYXJ0LWFjY291bnRzLWhlYWRpbmctdGF4YWJsZS5lbnVtJztcbmltcG9ydCB7IENoYXJ0QWNjb3VudHNNZXRhZGF0YUxpc3RFbnVtIH0gZnJvbSAnLi4vLi4vLi4vLi4vZGIvRW51bXMvY2hhcnQtYWNjb3VudHMtbWV0YWRhdGEtbGlzdC5lbnVtJztcblxuZXhwb3J0IGNsYXNzIE15VGF4UGFydG5lcnNoaXBzQW5kVHJ1c3RzIHtcbiAgdHJhbnNhY3Rpb25zOiBUcmFuc2FjdGlvbkNvbGxlY3Rpb247XG4gIHBhcnRuZXJzaGlwSW5jb21lczogVHJhbnNhY3Rpb25Db2xsZWN0aW9uO1xuICBwYXJ0bmVyc2hpcEV4cGVuc2VzOiBUcmFuc2FjdGlvbkNvbGxlY3Rpb247XG4gIHRydXN0c0luY29tZXM6IFRyYW5zYWN0aW9uQ29sbGVjdGlvbjtcbiAgdHJ1c3RzRXhwZW5zZXM6IFRyYW5zYWN0aW9uQ29sbGVjdGlvbjtcbiAgbmV0Tm9uUHJpbWFyeVByb2R1Y3Rpb25BbW91bnQ6IG51bWJlcjtcbiAgcGFydG5lcnNoaXBzTmV0SW5jb21lOiBudW1iZXI7XG4gIHRydXN0c05ldEluY29tZTogbnVtYmVyO1xuICBwYXJ0bmVyc2hpcHNTbWFsbEJ1c2luZXNzTmV0SW5jb21lOiBudW1iZXI7XG4gIHRydXN0c1NtYWxsQnVzaW5lc3NOZXRJbmNvbWU6IG51bWJlcjtcbiAgdGF4UGFpZFRvdGFsOiBudW1iZXI7XG4gIGZyYW5raW5nQ3JlZGl0c1RvdGFsOiBudW1iZXI7XG4gIHRheE9mZnNldE5SQVNUb3RhbEFtb3VudDogbnVtYmVyO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHRyYW5zYWN0aW9uczogVHJhbnNhY3Rpb25Db2xsZWN0aW9uLFxuICApIHtcbiAgICB0aGlzLnRyYW5zYWN0aW9ucyA9IHRyYW5zYWN0aW9ucztcbiAgICB0aGlzLnBhcnRuZXJzaGlwSW5jb21lcyA9IHRoaXMudHJhbnNhY3Rpb25zLmZpbHRlckJ5KCdjaGFydEFjY291bnRzLmlkJywgQ2hhcnRBY2NvdW50c0xpc3RFbnVtLlBBUlRORVJTSElQX0lOQ09NRSk7XG4gICAgdGhpcy5wYXJ0bmVyc2hpcEV4cGVuc2VzID0gdGhpcy50cmFuc2FjdGlvbnMuZmlsdGVyQnkoJ2NoYXJ0QWNjb3VudHMuaWQnLCBDaGFydEFjY291bnRzTGlzdEVudW0uUEFSVE5FUlNISVBfRVhQRU5TRVMpO1xuICAgIHRoaXMudHJ1c3RzSW5jb21lcyA9IHRoaXMudHJhbnNhY3Rpb25zLmZpbHRlckJ5KCdjaGFydEFjY291bnRzLmlkJywgQ2hhcnRBY2NvdW50c0xpc3RFbnVtLlRSVVNUX0lOQ09NRSk7XG4gICAgdGhpcy50cnVzdHNFeHBlbnNlcyA9IHRoaXMudHJhbnNhY3Rpb25zLmZpbHRlckJ5KCdjaGFydEFjY291bnRzLmlkJywgQ2hhcnRBY2NvdW50c0xpc3RFbnVtLlRSVVNUX0VYUEVOU0VTKTtcbiAgICB0aGlzLm5ldE5vblByaW1hcnlQcm9kdWN0aW9uQW1vdW50ID0gKHRoaXMucGFydG5lcnNoaXBJbmNvbWVzLnN1bUJ5KCdhbW91bnQnKSAtIHRoaXMucGFydG5lcnNoaXBFeHBlbnNlcy5zdW1CeSgnYW1vdW50JykpICtcbiAgICAgICh0aGlzLnRydXN0c0luY29tZXMuc3VtQnkoJ2Ftb3VudCcpIC0gdGhpcy50cnVzdHNFeHBlbnNlcy5zdW1CeSgnYW1vdW50JykpO1xuICAgIHRoaXMucGFydG5lcnNoaXBzTmV0SW5jb21lID0gdGhpcy5wYXJ0bmVyc2hpcEluY29tZXMuc3VtQnkoJ2Ftb3VudCcpIC1cbiAgICAgIHRoaXMucGFydG5lcnNoaXBFeHBlbnNlcy5zdW1CeSgnYW1vdW50Jyk7XG4gICAgdGhpcy50cnVzdHNOZXRJbmNvbWUgPSB0aGlzLnRydXN0c0luY29tZXMuc3VtQnkoJ2Ftb3VudCcpIC0gdGhpcy50cnVzdHNFeHBlbnNlcy5zdW1CeSgnYW1vdW50Jyk7XG4gICAgdGhpcy5wYXJ0bmVyc2hpcHNTbWFsbEJ1c2luZXNzTmV0SW5jb21lID0gdGhpcy5wYXJ0bmVyc2hpcEluY29tZXMuc3VtQnkoJ2Ftb3VudCcpIC1cbiAgICAgIHRoaXMucGFydG5lcnNoaXBFeHBlbnNlcy5zdW1CeSgnYW1vdW50Jyk7XG4gICAgdGhpcy50cnVzdHNTbWFsbEJ1c2luZXNzTmV0SW5jb21lID0gdGhpcy50cnVzdHNJbmNvbWVzLnN1bUJ5KCdhbW91bnQnKSAtXG4gICAgICB0aGlzLnRydXN0c0V4cGVuc2VzLnN1bUJ5KCdhbW91bnQnKTtcbiAgICB0aGlzLnRheFBhaWRUb3RhbCA9IHRoaXMudHJhbnNhY3Rpb25zXG4gICAgICAuZmlsdGVyQnkoJ2NoYXJ0QWNjb3VudHMuaGVhZGluZy5pZCcsIENoYXJ0QWNjb3VudHNIZWFkaW5nVGF4YWJsZUVudW0uUEFSVE5FUlNISVBTX0FORF9UUlVTVFNfSU5DT01FKVxuICAgICAgLnN1bUJ5KCd0YXgnKTtcbiAgICB0aGlzLmZyYW5raW5nQ3JlZGl0c1RvdGFsID0gdGhpcy50cmFuc2FjdGlvbnNcbiAgICAgIC5maWx0ZXJCeSgnY2hhcnRBY2NvdW50cy5oZWFkaW5nLmlkJywgQ2hhcnRBY2NvdW50c0hlYWRpbmdUYXhhYmxlRW51bS5QQVJUTkVSU0hJUFNfQU5EX1RSVVNUU19JTkNPTUUpXG4gICAgICAuZ2V0VHJhbnNhY3Rpb25zTWV0YWRhdGEoKVxuICAgICAgLmZpbHRlckJ5KCdjaGFydEFjY291bnRzTWV0YWRhdGEuaWQnLCBDaGFydEFjY291bnRzTWV0YWRhdGFMaXN0RW51bS5GUkFOS0lOR19DUkVESVQpXG4gICAgICAuc3VtQnkoJ3ZhbHVlJyk7XG4gICAgdGhpcy50YXhPZmZzZXROUkFTVG90YWxBbW91bnQgPSB0aGlzLnRyYW5zYWN0aW9ucy5maWx0ZXJCeSgnY2hhcnRBY2NvdW50cy5pZCcsIENoYXJ0QWNjb3VudHNMaXN0RW51bS5UQVhfT0ZGU0VUU19OX1JfQV9TKS5zdW1CeSgnYW1vdW50Jyk7XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,24 @@
1
+ import { ChartAccountsListEnum } from '../../../../db/Enums/chart-accounts-list.enum';
2
+ export class MyTaxRent {
3
+ constructor(transactions, depreciations) {
4
+ this.propertyExpenses = transactions.getPropertyTransactions().getExpenseTransactions();
5
+ this.grossRentAmount = transactions
6
+ .getIncomeTransactions()
7
+ .filterBy('chartAccounts.id', ChartAccountsListEnum.RENTAL_INCOME)
8
+ .sumBy('amount') +
9
+ transactions.
10
+ getIncomeTransactions()
11
+ .filterBy('chartAccounts.id', ChartAccountsListEnum.OTHER_RENTAL_INCOME)
12
+ .sumBy('amount');
13
+ this.interestDeductionsAmount = Math.abs(transactions.getInterestTransactions().sumBy('amount'));
14
+ this.capitalWorksDeductionsAmount = Math.abs(depreciations.getCapitalDepreciations().sumBy('claimAmount'));
15
+ this.otherRentalDeductionsAmount = Math.abs(depreciations.getAssets().sumBy('claimAmount') +
16
+ depreciations.getBorrowingExpenseDepreciations().sumBy('claimAmount') +
17
+ this.propertyExpenses.sumBy('amount'));
18
+ this.netRent = this.grossRentAmount -
19
+ this.interestDeductionsAmount -
20
+ this.capitalWorksDeductionsAmount -
21
+ this.otherRentalDeductionsAmount;
22
+ }
23
+ }
24
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXktdGF4LXJlbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvbW9kZWxzL3JlcG9ydC9teS10YXgvbXktdGF4LXJlbnQvbXktdGF4LXJlbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sK0NBQStDLENBQUM7QUFHdEYsTUFBTSxPQUFPLFNBQVM7SUFRcEIsWUFDRSxZQUFtQyxFQUNuQyxhQUFxQztRQUVyQyxJQUFJLENBQUMsZ0JBQWdCLEdBQUcsWUFBWSxDQUFDLHVCQUF1QixFQUFFLENBQUMsc0JBQXNCLEVBQUUsQ0FBQztRQUN4RixJQUFJLENBQUMsZUFBZSxHQUFHLFlBQVk7YUFDOUIscUJBQXFCLEVBQUU7YUFDdkIsUUFBUSxDQUFDLGtCQUFrQixFQUFFLHFCQUFxQixDQUFDLGFBQWEsQ0FBQzthQUNqRSxLQUFLLENBQUMsUUFBUSxDQUFDO1lBQ2xCLFlBQVk7Z0JBQ1oscUJBQXFCLEVBQUU7aUJBQ3BCLFFBQVEsQ0FBQyxrQkFBa0IsRUFBRSxxQkFBcUIsQ0FBQyxtQkFBbUIsQ0FBQztpQkFDdkUsS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBRXJCLElBQUksQ0FBQyx3QkFBd0IsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLFlBQVksQ0FBQyx1QkFBdUIsRUFBRSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDO1FBQ2pHLElBQUksQ0FBQyw0QkFBNEIsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLGFBQWEsQ0FBQyx1QkFBdUIsRUFBRSxDQUFDLEtBQUssQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDO1FBRTNHLElBQUksQ0FBQywyQkFBMkIsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLGFBQWEsQ0FBQyxTQUFTLEVBQUUsQ0FBQyxLQUFLLENBQUMsYUFBYSxDQUFDO1lBQ3hGLGFBQWEsQ0FBQyxnQ0FBZ0MsRUFBRSxDQUFDLEtBQUssQ0FBQyxhQUFhLENBQUM7WUFDckUsSUFBSSxDQUFDLGdCQUFnQixDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDO1FBRXpDLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLGVBQWU7WUFDakMsSUFBSSxDQUFDLHdCQUF3QjtZQUM3QixJQUFJLENBQUMsNEJBQTRCO1lBQ2pDLElBQUksQ0FBQywyQkFBMkIsQ0FBQztJQUNyQyxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBUcmFuc2FjdGlvbkNvbGxlY3Rpb24gfSBmcm9tICcuLi8uLi8uLi8uLi9jb2xsZWN0aW9ucy90cmFuc2FjdGlvbi90cmFuc2FjdGlvbi5jb2xsZWN0aW9uJztcbmltcG9ydCB7IENoYXJ0QWNjb3VudHNMaXN0RW51bSB9IGZyb20gJy4uLy4uLy4uLy4uL2RiL0VudW1zL2NoYXJ0LWFjY291bnRzLWxpc3QuZW51bSc7XG5pbXBvcnQgeyBEZXByZWNpYXRpb25Db2xsZWN0aW9uIH0gZnJvbSAnLi4vLi4vLi4vLi4vY29sbGVjdGlvbnMvZGVwcmVjaWF0aW9uLmNvbGxlY3Rpb24nO1xuXG5leHBvcnQgY2xhc3MgTXlUYXhSZW50IHtcbiAgcHJvcGVydHlFeHBlbnNlczogVHJhbnNhY3Rpb25Db2xsZWN0aW9uO1xuICBncm9zc1JlbnRBbW91bnQ6IG51bWJlcjtcbiAgaW50ZXJlc3REZWR1Y3Rpb25zQW1vdW50OiBudW1iZXI7XG4gIGNhcGl0YWxXb3Jrc0RlZHVjdGlvbnNBbW91bnQ6IG51bWJlcjtcbiAgb3RoZXJSZW50YWxEZWR1Y3Rpb25zQW1vdW50OiBudW1iZXI7XG4gIG5ldFJlbnQ6IG51bWJlcjtcblxuICBjb25zdHJ1Y3RvcihcbiAgICB0cmFuc2FjdGlvbnM6IFRyYW5zYWN0aW9uQ29sbGVjdGlvbixcbiAgICBkZXByZWNpYXRpb25zOiBEZXByZWNpYXRpb25Db2xsZWN0aW9uLFxuICApIHtcbiAgICB0aGlzLnByb3BlcnR5RXhwZW5zZXMgPSB0cmFuc2FjdGlvbnMuZ2V0UHJvcGVydHlUcmFuc2FjdGlvbnMoKS5nZXRFeHBlbnNlVHJhbnNhY3Rpb25zKCk7XG4gICAgdGhpcy5ncm9zc1JlbnRBbW91bnQgPSB0cmFuc2FjdGlvbnNcbiAgICAgICAgLmdldEluY29tZVRyYW5zYWN0aW9ucygpXG4gICAgICAgIC5maWx0ZXJCeSgnY2hhcnRBY2NvdW50cy5pZCcsIENoYXJ0QWNjb3VudHNMaXN0RW51bS5SRU5UQUxfSU5DT01FKVxuICAgICAgICAuc3VtQnkoJ2Ftb3VudCcpICtcbiAgICAgIHRyYW5zYWN0aW9ucy5cbiAgICAgIGdldEluY29tZVRyYW5zYWN0aW9ucygpXG4gICAgICAgIC5maWx0ZXJCeSgnY2hhcnRBY2NvdW50cy5pZCcsIENoYXJ0QWNjb3VudHNMaXN0RW51bS5PVEhFUl9SRU5UQUxfSU5DT01FKVxuICAgICAgICAuc3VtQnkoJ2Ftb3VudCcpO1xuXG4gICAgdGhpcy5pbnRlcmVzdERlZHVjdGlvbnNBbW91bnQgPSBNYXRoLmFicyh0cmFuc2FjdGlvbnMuZ2V0SW50ZXJlc3RUcmFuc2FjdGlvbnMoKS5zdW1CeSgnYW1vdW50JykpO1xuICAgIHRoaXMuY2FwaXRhbFdvcmtzRGVkdWN0aW9uc0Ftb3VudCA9IE1hdGguYWJzKGRlcHJlY2lhdGlvbnMuZ2V0Q2FwaXRhbERlcHJlY2lhdGlvbnMoKS5zdW1CeSgnY2xhaW1BbW91bnQnKSk7XG5cbiAgICB0aGlzLm90aGVyUmVudGFsRGVkdWN0aW9uc0Ftb3VudCA9IE1hdGguYWJzKGRlcHJlY2lhdGlvbnMuZ2V0QXNzZXRzKCkuc3VtQnkoJ2NsYWltQW1vdW50JykgK1xuICAgICAgZGVwcmVjaWF0aW9ucy5nZXRCb3Jyb3dpbmdFeHBlbnNlRGVwcmVjaWF0aW9ucygpLnN1bUJ5KCdjbGFpbUFtb3VudCcpICtcbiAgICAgIHRoaXMucHJvcGVydHlFeHBlbnNlcy5zdW1CeSgnYW1vdW50JykpO1xuXG4gICAgdGhpcy5uZXRSZW50ID0gdGhpcy5ncm9zc1JlbnRBbW91bnQgLVxuICAgICAgdGhpcy5pbnRlcmVzdERlZHVjdGlvbnNBbW91bnQgLVxuICAgICAgdGhpcy5jYXBpdGFsV29ya3NEZWR1Y3Rpb25zQW1vdW50IC1cbiAgICAgIHRoaXMub3RoZXJSZW50YWxEZWR1Y3Rpb25zQW1vdW50O1xuICB9XG59XG4iXX0=
@@ -1,9 +1,11 @@
1
1
  import { CHART_ACCOUNTS_CATEGORIES } from '../../chart-accounts/chart-accounts-categories.const';
2
+ import { AbstractModel } from '../../../db/Models/abstract-model';
2
3
  /**
3
4
  * Class with property transactions report entities
4
5
  */
5
- export class PropertyReportItem {
6
+ export class PropertyReportItem extends AbstractModel {
6
7
  constructor(property, chartAccounts) {
8
+ super();
7
9
  this.chartAccounts = chartAccounts;
8
10
  this.propertyId = property.id;
9
11
  this.claimPercent = property.claimPercent;
@@ -24,4 +26,4 @@ export class PropertyReportItem {
24
26
  return CHART_ACCOUNTS_CATEGORIES.expense.includes(this.chartAccounts.category);
25
27
  }
26
28
  }
27
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvcGVydHktcmVwb3J0LWl0ZW0uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvbW9kZWxzL3JlcG9ydC9wcm9wZXJ0eS9wcm9wZXJ0eS1yZXBvcnQtaXRlbS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxzREFBc0QsQ0FBQztBQUVqRzs7R0FFRztBQUNILE1BQU0sT0FBTyxrQkFBa0I7SUFhN0IsWUFDRSxRQUFrQixFQUNsQixhQUE0QjtRQUU1QixJQUFJLENBQUMsYUFBYSxHQUFHLGFBQWEsQ0FBQztRQUNuQyxJQUFJLENBQUMsVUFBVSxHQUFHLFFBQVEsQ0FBQyxFQUFFLENBQUM7UUFDOUIsSUFBSSxDQUFDLFlBQVksR0FBRyxRQUFRLENBQUMsWUFBWSxDQUFDO1FBQzFDLElBQUksQ0FBQyxZQUFZLEdBQUcsUUFBUSxDQUFDLFlBQVksQ0FBQztRQUMxQyxJQUFJLENBQUMsT0FBTyxHQUFHLGFBQWEsQ0FBQyxhQUFhLENBQUMsT0FBTyxDQUFDO1FBQ25ELElBQUksQ0FBQyxXQUFXLEdBQUcsYUFBYSxDQUFDLElBQUksQ0FBQTtJQUN2QyxDQUFDO0lBRUQsSUFBSSxXQUFXO1FBQ2IsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUFDLE1BQU0sR0FBRyxDQUFDLElBQUksQ0FBQyxZQUFZLEdBQUcsR0FBRyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDL0QsQ0FBQztJQUVELElBQUksZ0JBQWdCO1FBQ2xCLE9BQU8sSUFBSSxDQUFDLFdBQVcsR0FBRyxDQUFDLElBQUksQ0FBQyxZQUFZLEdBQUcsR0FBRyxDQUFDLENBQUM7SUFDdEQsQ0FBQztJQUVELFFBQVE7UUFDTixPQUFPLHlCQUF5QixDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUNoRixDQUFDO0lBRUQsU0FBUztRQUNQLE9BQU8seUJBQXlCLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQ2pGLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFByb3BlcnR5IH0gZnJvbSAnLi4vLi4vcHJvcGVydHkvcHJvcGVydHknO1xuaW1wb3J0IHsgQ2hhcnRBY2NvdW50cyB9IGZyb20gJy4uLy4uL2NoYXJ0LWFjY291bnRzL2NoYXJ0LWFjY291bnRzJztcbmltcG9ydCB7IENIQVJUX0FDQ09VTlRTX0NBVEVHT1JJRVMgfSBmcm9tICcuLi8uLi9jaGFydC1hY2NvdW50cy9jaGFydC1hY2NvdW50cy1jYXRlZ29yaWVzLmNvbnN0JztcblxuLyoqXG4gKiBDbGFzcyB3aXRoIHByb3BlcnR5IHRyYW5zYWN0aW9ucyByZXBvcnQgZW50aXRpZXNcbiAqL1xuZXhwb3J0IGNsYXNzIFByb3BlcnR5UmVwb3J0SXRlbSB7XG4gIGFtb3VudDogbnVtYmVyO1xuICBkZXNjcmlwdGlvbjogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUYXggcmV0dXJuIGl0ZW0gc3ViLWNvZGVcbiAgICovXG4gIHN1YkNvZGU6IHN0cmluZztcbiAgc2hhcmVQZXJjZW50OiBudW1iZXI7XG4gIGNsYWltUGVyY2VudDogbnVtYmVyO1xuICBwcm9wZXJ0eUlkOiBudW1iZXI7XG4gIGNoYXJ0QWNjb3VudHM6IENoYXJ0QWNjb3VudHM7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJvcGVydHk6IFByb3BlcnR5LFxuICAgIGNoYXJ0QWNjb3VudHM6IENoYXJ0QWNjb3VudHNcbiAgKSB7XG4gICAgdGhpcy5jaGFydEFjY291bnRzID0gY2hhcnRBY2NvdW50cztcbiAgICB0aGlzLnByb3BlcnR5SWQgPSBwcm9wZXJ0eS5pZDtcbiAgICB0aGlzLmNsYWltUGVyY2VudCA9IHByb3BlcnR5LmNsYWltUGVyY2VudDtcbiAgICB0aGlzLnNoYXJlUGVyY2VudCA9IHByb3BlcnR5LnNoYXJlUGVyY2VudDtcbiAgICB0aGlzLnN1YkNvZGUgPSBjaGFydEFjY291bnRzLnRheFJldHVybkl0ZW0uc3ViQ29kZTtcbiAgICB0aGlzLmRlc2NyaXB0aW9uID0gY2hhcnRBY2NvdW50cy5uYW1lXG4gIH1cblxuICBnZXQgY2xhaW1BbW91bnQoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKyh0aGlzLmFtb3VudCAqICh0aGlzLmNsYWltUGVyY2VudCAvIDEwMCkpLnRvRml4ZWQoMik7XG4gIH1cblxuICBnZXQgc2hhcmVDbGFpbUFtb3VudCgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLmNsYWltQW1vdW50ICogKHRoaXMuc2hhcmVQZXJjZW50IC8gMTAwKTtcbiAgfVxuXG4gIGlzSW5jb21lKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiBDSEFSVF9BQ0NPVU5UU19DQVRFR09SSUVTLmluY29tZS5pbmNsdWRlcyh0aGlzLmNoYXJ0QWNjb3VudHMuY2F0ZWdvcnkpO1xuICB9XG5cbiAgaXNFeHBlbnNlKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiBDSEFSVF9BQ0NPVU5UU19DQVRFR09SSUVTLmV4cGVuc2UuaW5jbHVkZXModGhpcy5jaGFydEFjY291bnRzLmNhdGVnb3J5KTtcbiAgfVxufVxuIl19
29
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvcGVydHktcmVwb3J0LWl0ZW0uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvbW9kZWxzL3JlcG9ydC9wcm9wZXJ0eS9wcm9wZXJ0eS1yZXBvcnQtaXRlbS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxzREFBc0QsQ0FBQztBQUNqRyxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sbUNBQW1DLENBQUM7QUFFaEU7O0dBRUc7QUFDSCxNQUFNLE9BQU8sa0JBQW1CLFNBQVEsYUFBYTtJQWFuRCxZQUNFLFFBQWtCLEVBQ2xCLGFBQTRCO1FBRTVCLEtBQUssRUFBRSxDQUFDO1FBQ1IsSUFBSSxDQUFDLGFBQWEsR0FBRyxhQUFhLENBQUM7UUFDbkMsSUFBSSxDQUFDLFVBQVUsR0FBRyxRQUFRLENBQUMsRUFBRSxDQUFDO1FBQzlCLElBQUksQ0FBQyxZQUFZLEdBQUcsUUFBUSxDQUFDLFlBQVksQ0FBQztRQUMxQyxJQUFJLENBQUMsWUFBWSxHQUFHLFFBQVEsQ0FBQyxZQUFZLENBQUM7UUFDMUMsSUFBSSxDQUFDLE9BQU8sR0FBRyxhQUFhLENBQUMsYUFBYSxDQUFDLE9BQU8sQ0FBQztRQUNuRCxJQUFJLENBQUMsV0FBVyxHQUFHLGFBQWEsQ0FBQyxJQUFJLENBQUE7SUFDdkMsQ0FBQztJQUVELElBQUksV0FBVztRQUNiLE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FBQyxNQUFNLEdBQUcsQ0FBQyxJQUFJLENBQUMsWUFBWSxHQUFHLEdBQUcsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQy9ELENBQUM7SUFFRCxJQUFJLGdCQUFnQjtRQUNsQixPQUFPLElBQUksQ0FBQyxXQUFXLEdBQUcsQ0FBQyxJQUFJLENBQUMsWUFBWSxHQUFHLEdBQUcsQ0FBQyxDQUFDO0lBQ3RELENBQUM7SUFFRCxRQUFRO1FBQ04sT0FBTyx5QkFBeUIsQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDaEYsQ0FBQztJQUVELFNBQVM7UUFDUCxPQUFPLHlCQUF5QixDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUNqRixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQcm9wZXJ0eSB9IGZyb20gJy4uLy4uL3Byb3BlcnR5L3Byb3BlcnR5JztcbmltcG9ydCB7IENoYXJ0QWNjb3VudHMgfSBmcm9tICcuLi8uLi9jaGFydC1hY2NvdW50cy9jaGFydC1hY2NvdW50cyc7XG5pbXBvcnQgeyBDSEFSVF9BQ0NPVU5UU19DQVRFR09SSUVTIH0gZnJvbSAnLi4vLi4vY2hhcnQtYWNjb3VudHMvY2hhcnQtYWNjb3VudHMtY2F0ZWdvcmllcy5jb25zdCc7XG5pbXBvcnQge0Fic3RyYWN0TW9kZWx9IGZyb20gJy4uLy4uLy4uL2RiL01vZGVscy9hYnN0cmFjdC1tb2RlbCc7XG5cbi8qKlxuICogQ2xhc3Mgd2l0aCBwcm9wZXJ0eSB0cmFuc2FjdGlvbnMgcmVwb3J0IGVudGl0aWVzXG4gKi9cbmV4cG9ydCBjbGFzcyBQcm9wZXJ0eVJlcG9ydEl0ZW0gZXh0ZW5kcyBBYnN0cmFjdE1vZGVsIHtcbiAgYW1vdW50OiBudW1iZXI7XG4gIGRlc2NyaXB0aW9uOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRheCByZXR1cm4gaXRlbSBzdWItY29kZVxuICAgKi9cbiAgc3ViQ29kZTogc3RyaW5nO1xuICBzaGFyZVBlcmNlbnQ6IG51bWJlcjtcbiAgY2xhaW1QZXJjZW50OiBudW1iZXI7XG4gIHByb3BlcnR5SWQ6IG51bWJlcjtcbiAgY2hhcnRBY2NvdW50czogQ2hhcnRBY2NvdW50cztcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcm9wZXJ0eTogUHJvcGVydHksXG4gICAgY2hhcnRBY2NvdW50czogQ2hhcnRBY2NvdW50c1xuICApIHtcbiAgICBzdXBlcigpO1xuICAgIHRoaXMuY2hhcnRBY2NvdW50cyA9IGNoYXJ0QWNjb3VudHM7XG4gICAgdGhpcy5wcm9wZXJ0eUlkID0gcHJvcGVydHkuaWQ7XG4gICAgdGhpcy5jbGFpbVBlcmNlbnQgPSBwcm9wZXJ0eS5jbGFpbVBlcmNlbnQ7XG4gICAgdGhpcy5zaGFyZVBlcmNlbnQgPSBwcm9wZXJ0eS5zaGFyZVBlcmNlbnQ7XG4gICAgdGhpcy5zdWJDb2RlID0gY2hhcnRBY2NvdW50cy50YXhSZXR1cm5JdGVtLnN1YkNvZGU7XG4gICAgdGhpcy5kZXNjcmlwdGlvbiA9IGNoYXJ0QWNjb3VudHMubmFtZVxuICB9XG5cbiAgZ2V0IGNsYWltQW1vdW50KCk6IG51bWJlciB7XG4gICAgcmV0dXJuICsodGhpcy5hbW91bnQgKiAodGhpcy5jbGFpbVBlcmNlbnQgLyAxMDApKS50b0ZpeGVkKDIpO1xuICB9XG5cbiAgZ2V0IHNoYXJlQ2xhaW1BbW91bnQoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5jbGFpbUFtb3VudCAqICh0aGlzLnNoYXJlUGVyY2VudCAvIDEwMCk7XG4gIH1cblxuICBpc0luY29tZSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gQ0hBUlRfQUNDT1VOVFNfQ0FURUdPUklFUy5pbmNvbWUuaW5jbHVkZXModGhpcy5jaGFydEFjY291bnRzLmNhdGVnb3J5KTtcbiAgfVxuXG4gIGlzRXhwZW5zZSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gQ0hBUlRfQUNDT1VOVFNfQ0FURUdPUklFUy5leHBlbnNlLmluY2x1ZGVzKHRoaXMuY2hhcnRBY2NvdW50cy5jYXRlZ29yeSk7XG4gIH1cbn1cbiJdfQ==
@@ -1,8 +1,10 @@
1
1
  /**
2
2
  * Vehicle expense for logbook section
3
3
  */
4
- export class VehicleExpense {
4
+ import { AbstractModel } from '../../../db/Models/abstract-model';
5
+ export class VehicleExpense extends AbstractModel {
5
6
  constructor(amount, claimPercent, description) {
7
+ super();
6
8
  this.amount = amount;
7
9
  this.claimPercent = claimPercent;
8
10
  this.description = description;
@@ -11,4 +13,4 @@ export class VehicleExpense {
11
13
  return +(this.amount * (this.claimPercent / 100)).toFixed(2);
12
14
  }
13
15
  }
14
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmVoaWNsZS1leHBlbnNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHQtY29yZS9zcmMvbGliL21vZGVscy9yZXBvcnQvdmVoaWNsZS1leHBlbnNlL3ZlaGljbGUtZXhwZW5zZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUNILE1BQU0sT0FBTyxjQUFjO0lBS3pCLFlBQ0UsTUFBYyxFQUNkLFlBQW9CLEVBQ3BCLFdBQW1CO1FBRW5CLElBQUksQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDO1FBQ3JCLElBQUksQ0FBQyxZQUFZLEdBQUcsWUFBWSxDQUFDO1FBQ2pDLElBQUksQ0FBQyxXQUFXLEdBQUcsV0FBVyxDQUFDO0lBQ2pDLENBQUM7SUFFRCxjQUFjO1FBQ1osT0FBTyxDQUFDLENBQUMsSUFBSSxDQUFDLE1BQU0sR0FBRyxDQUFDLElBQUksQ0FBQyxZQUFZLEdBQUcsR0FBRyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDL0QsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBWZWhpY2xlIGV4cGVuc2UgZm9yIGxvZ2Jvb2sgc2VjdGlvblxuICovXG5leHBvcnQgY2xhc3MgVmVoaWNsZUV4cGVuc2Uge1xuICBkZXNjcmlwdGlvbjogc3RyaW5nO1xuICBhbW91bnQ6IG51bWJlcjtcbiAgY2xhaW1QZXJjZW50OiBudW1iZXI7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgYW1vdW50OiBudW1iZXIsXG4gICAgY2xhaW1QZXJjZW50OiBudW1iZXIsXG4gICAgZGVzY3JpcHRpb246IHN0cmluZ1xuICApIHtcbiAgICB0aGlzLmFtb3VudCA9IGFtb3VudDtcbiAgICB0aGlzLmNsYWltUGVyY2VudCA9IGNsYWltUGVyY2VudDtcbiAgICB0aGlzLmRlc2NyaXB0aW9uID0gZGVzY3JpcHRpb247XG4gIH1cblxuICBnZXRDbGFpbUFtb3VudCgpOiBudW1iZXIge1xuICAgIHJldHVybiArKHRoaXMuYW1vdW50ICogKHRoaXMuY2xhaW1QZXJjZW50IC8gMTAwKSkudG9GaXhlZCgyKTtcbiAgfVxufVxuIl19
16
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmVoaWNsZS1leHBlbnNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHQtY29yZS9zcmMvbGliL21vZGVscy9yZXBvcnQvdmVoaWNsZS1leHBlbnNlL3ZlaGljbGUtZXhwZW5zZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUNILE9BQU8sRUFBQyxhQUFhLEVBQUMsTUFBTSxtQ0FBbUMsQ0FBQztBQUVoRSxNQUFNLE9BQU8sY0FBZSxTQUFRLGFBQWE7SUFLL0MsWUFDRSxNQUFjLEVBQ2QsWUFBb0IsRUFDcEIsV0FBbUI7UUFFbkIsS0FBSyxFQUFFLENBQUM7UUFDUixJQUFJLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQztRQUNyQixJQUFJLENBQUMsWUFBWSxHQUFHLFlBQVksQ0FBQztRQUNqQyxJQUFJLENBQUMsV0FBVyxHQUFHLFdBQVcsQ0FBQztJQUNqQyxDQUFDO0lBRUQsY0FBYztRQUNaLE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FBQyxNQUFNLEdBQUcsQ0FBQyxJQUFJLENBQUMsWUFBWSxHQUFHLEdBQUcsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQy9ELENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogVmVoaWNsZSBleHBlbnNlIGZvciBsb2dib29rIHNlY3Rpb25cbiAqL1xuaW1wb3J0IHtBYnN0cmFjdE1vZGVsfSBmcm9tICcuLi8uLi8uLi9kYi9Nb2RlbHMvYWJzdHJhY3QtbW9kZWwnO1xuXG5leHBvcnQgY2xhc3MgVmVoaWNsZUV4cGVuc2UgZXh0ZW5kcyBBYnN0cmFjdE1vZGVsIHtcbiAgZGVzY3JpcHRpb246IHN0cmluZztcbiAgYW1vdW50OiBudW1iZXI7XG4gIGNsYWltUGVyY2VudDogbnVtYmVyO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIGFtb3VudDogbnVtYmVyLFxuICAgIGNsYWltUGVyY2VudDogbnVtYmVyLFxuICAgIGRlc2NyaXB0aW9uOiBzdHJpbmdcbiAgKSB7XG4gICAgc3VwZXIoKTtcbiAgICB0aGlzLmFtb3VudCA9IGFtb3VudDtcbiAgICB0aGlzLmNsYWltUGVyY2VudCA9IGNsYWltUGVyY2VudDtcbiAgICB0aGlzLmRlc2NyaXB0aW9uID0gZGVzY3JpcHRpb247XG4gIH1cblxuICBnZXRDbGFpbUFtb3VudCgpOiBudW1iZXIge1xuICAgIHJldHVybiArKHRoaXMuYW1vdW50ICogKHRoaXMuY2xhaW1QZXJjZW50IC8gMTAwKSkudG9GaXhlZCgyKTtcbiAgfVxufVxuIl19
@@ -1,9 +1,10 @@
1
+ import { AbstractModel } from '../../db/Models/abstract-model';
1
2
  /**
2
3
  * Used in tax summary reports to show specific details relating to an amount in the report.
3
4
  * See structure in ReportItem class.
4
5
  * Example an amount of $550 for property income could be comprised of 2 different property amounts of $300 and $250.
5
6
  * This is useful in providing drill-down information for the tax summary report.
6
7
  */
7
- export class ReportItemDetails {
8
+ export class ReportItemDetails extends AbstractModel {
8
9
  }
9
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVwb3J0LWl0ZW0tZGV0YWlscy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R0LWNvcmUvc3JjL2xpYi9tb2RlbHMvdGF4LXN1bW1hcnkvcmVwb3J0LWl0ZW0tZGV0YWlscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQTs7Ozs7R0FLRztBQUNILE1BQU0sT0FBTyxpQkFBaUI7Q0FLN0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBUYXhSZXR1cm5DYXRlZ29yeVNlY3Rpb25FbnVtIH0gZnJvbSAnLi4vLi4vZGIvRW51bXMvdGF4LXJldHVybi1jYXRlZ29yeS1zZWN0aW9uLmVudW0nO1xuXG4vKipcbiAqIFVzZWQgaW4gdGF4IHN1bW1hcnkgcmVwb3J0cyB0byBzaG93IHNwZWNpZmljIGRldGFpbHMgcmVsYXRpbmcgdG8gYW4gYW1vdW50IGluIHRoZSByZXBvcnQuXG4gKiBTZWUgc3RydWN0dXJlIGluIFJlcG9ydEl0ZW0gY2xhc3MuXG4gKiBFeGFtcGxlIGFuIGFtb3VudCBvZiAkNTUwIGZvciBwcm9wZXJ0eSBpbmNvbWUgY291bGQgYmUgY29tcHJpc2VkIG9mIDIgZGlmZmVyZW50IHByb3BlcnR5IGFtb3VudHMgb2YgJDMwMCBhbmQgJDI1MC5cbiAqIFRoaXMgaXMgdXNlZnVsIGluIHByb3ZpZGluZyBkcmlsbC1kb3duIGluZm9ybWF0aW9uIGZvciB0aGUgdGF4IHN1bW1hcnkgcmVwb3J0LlxuICovXG5leHBvcnQgY2xhc3MgUmVwb3J0SXRlbURldGFpbHMge1xuICBhbW91bnQ6IG51bWJlcjtcbiAgbmFtZTogc3RyaW5nO1xuICB0eXBlOiBudW1iZXI7XG4gIHNlY3Rpb246IFRheFJldHVybkNhdGVnb3J5U2VjdGlvbkVudW07XG59XG4iXX0=
10
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVwb3J0LWl0ZW0tZGV0YWlscy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R0LWNvcmUvc3JjL2xpYi9tb2RlbHMvdGF4LXN1bW1hcnkvcmVwb3J0LWl0ZW0tZGV0YWlscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sZ0NBQWdDLENBQUM7QUFFN0Q7Ozs7O0dBS0c7QUFDSCxNQUFNLE9BQU8saUJBQWtCLFNBQVEsYUFBYTtDQUtuRCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFRheFJldHVybkNhdGVnb3J5U2VjdGlvbkVudW0gfSBmcm9tICcuLi8uLi9kYi9FbnVtcy90YXgtcmV0dXJuLWNhdGVnb3J5LXNlY3Rpb24uZW51bSc7XG5pbXBvcnQge0Fic3RyYWN0TW9kZWx9IGZyb20gJy4uLy4uL2RiL01vZGVscy9hYnN0cmFjdC1tb2RlbCc7XG5cbi8qKlxuICogVXNlZCBpbiB0YXggc3VtbWFyeSByZXBvcnRzIHRvIHNob3cgc3BlY2lmaWMgZGV0YWlscyByZWxhdGluZyB0byBhbiBhbW91bnQgaW4gdGhlIHJlcG9ydC5cbiAqIFNlZSBzdHJ1Y3R1cmUgaW4gUmVwb3J0SXRlbSBjbGFzcy5cbiAqIEV4YW1wbGUgYW4gYW1vdW50IG9mICQ1NTAgZm9yIHByb3BlcnR5IGluY29tZSBjb3VsZCBiZSBjb21wcmlzZWQgb2YgMiBkaWZmZXJlbnQgcHJvcGVydHkgYW1vdW50cyBvZiAkMzAwIGFuZCAkMjUwLlxuICogVGhpcyBpcyB1c2VmdWwgaW4gcHJvdmlkaW5nIGRyaWxsLWRvd24gaW5mb3JtYXRpb24gZm9yIHRoZSB0YXggc3VtbWFyeSByZXBvcnQuXG4gKi9cbmV4cG9ydCBjbGFzcyBSZXBvcnRJdGVtRGV0YWlscyBleHRlbmRzIEFic3RyYWN0TW9kZWwge1xuICBhbW91bnQ6IG51bWJlcjtcbiAgbmFtZTogc3RyaW5nO1xuICB0eXBlOiBudW1iZXI7XG4gIHNlY3Rpb246IFRheFJldHVybkNhdGVnb3J5U2VjdGlvbkVudW07XG59XG4iXX0=
@@ -1,11 +1,12 @@
1
1
  import { __decorate } from "tslib";
2
2
  import { Transform, Type } from 'class-transformer';
3
3
  import { ReportItemCollection } from '../../collections/tax-summary/report-item.collection';
4
+ import { AbstractModel } from '../../db/Models/abstract-model';
4
5
  /**
5
6
  * Used in tax summary reports to show amounts relating to a tax return category entity and details of what this
6
7
  * amount is comprised of. Example here shows an amount of $951.96 and also details of what this amount is comprised of:
7
8
  */
8
- export class ReportItem {
9
+ export class ReportItem extends AbstractModel {
9
10
  /**
10
11
  * Get amount for one income source
11
12
  * @param name Name of income source for filter
@@ -19,4 +20,4 @@ __decorate([
19
20
  Type(() => ReportItem),
20
21
  Transform(({ value }) => new ReportItemCollection(value))
21
22
  ], ReportItem.prototype, "items", void 0);
22
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVwb3J0LWl0ZW0uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvbW9kZWxzL3RheC1zdW1tYXJ5L3JlcG9ydC1pdGVtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFFQSxPQUFPLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ3BELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHNEQUFzRCxDQUFDO0FBRTVGOzs7R0FHRztBQUNILE1BQU0sT0FBTyxVQUFVO0lBVXJCOzs7T0FHRztJQUNILDJCQUEyQixDQUFDLElBQVk7O1FBQ3RDLE9BQU8sQ0FBQSxNQUFBLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsTUFBeUIsRUFBVyxFQUFFLENBQUMsTUFBTSxDQUFDLElBQUksS0FBSyxJQUFJLENBQUMsMENBQUUsTUFBTSxLQUFJLENBQUMsQ0FBQztJQUN0RyxDQUFDO0NBQ0Y7QUFUQztJQUZDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxVQUFVLENBQUM7SUFDdEIsU0FBUyxDQUFDLENBQUMsRUFBQyxLQUFLLEVBQUMsRUFBRSxFQUFFLENBQUMsSUFBSSxvQkFBb0IsQ0FBQyxLQUFLLENBQUMsQ0FBQzt5Q0FDNUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBUYXhSZXR1cm5DYXRlZ29yeSB9IGZyb20gJy4uLy4uL2RiL01vZGVscy90YXgtcmV0dXJuL3RheC1yZXR1cm4tY2F0ZWdvcnknO1xuaW1wb3J0IHsgUmVwb3J0SXRlbURldGFpbHMgfSBmcm9tICcuL3JlcG9ydC1pdGVtLWRldGFpbHMnO1xuaW1wb3J0IHsgVHJhbnNmb3JtLCBUeXBlIH0gZnJvbSAnY2xhc3MtdHJhbnNmb3JtZXInO1xuaW1wb3J0IHsgUmVwb3J0SXRlbUNvbGxlY3Rpb24gfSBmcm9tICcuLi8uLi9jb2xsZWN0aW9ucy90YXgtc3VtbWFyeS9yZXBvcnQtaXRlbS5jb2xsZWN0aW9uJztcblxuLyoqXG4gKiBVc2VkIGluIHRheCBzdW1tYXJ5IHJlcG9ydHMgdG8gc2hvdyBhbW91bnRzIHJlbGF0aW5nIHRvIGEgdGF4IHJldHVybiBjYXRlZ29yeSBlbnRpdHkgYW5kIGRldGFpbHMgb2Ygd2hhdCB0aGlzXG4gKiBhbW91bnQgaXMgY29tcHJpc2VkIG9mLiBFeGFtcGxlIGhlcmUgc2hvd3MgYW4gYW1vdW50IG9mICQ5NTEuOTYgYW5kIGFsc28gZGV0YWlscyBvZiB3aGF0IHRoaXMgYW1vdW50IGlzIGNvbXByaXNlZCBvZjpcbiAqL1xuZXhwb3J0IGNsYXNzIFJlcG9ydEl0ZW0ge1xuICBhbW91bnQ6IG51bWJlcjtcbiAgZGV0YWlsczogUmVwb3J0SXRlbURldGFpbHNbXTtcbiAgdGF4UmV0dXJuQ2F0ZWdvcnk6IFRheFJldHVybkNhdGVnb3J5O1xuICB0aXRsZTogc3RyaW5nO1xuXG4gIEBUeXBlKCgpID0+IFJlcG9ydEl0ZW0pXG4gIEBUcmFuc2Zvcm0oKHt2YWx1ZX0pID0+IG5ldyBSZXBvcnRJdGVtQ29sbGVjdGlvbih2YWx1ZSkpXG4gIGl0ZW1zOiBSZXBvcnRJdGVtQ29sbGVjdGlvbjtcblxuICAvKipcbiAgICogR2V0IGFtb3VudCBmb3Igb25lIGluY29tZSBzb3VyY2VcbiAgICogQHBhcmFtIG5hbWUgTmFtZSBvZiBpbmNvbWUgc291cmNlIGZvciBmaWx0ZXJcbiAgICovXG4gIGdldEFtb3VudEJ5SW5jb21lU291cmNlTmFtZShuYW1lOiBzdHJpbmcpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLmRldGFpbHMuZmluZCgoZGV0YWlsOiBSZXBvcnRJdGVtRGV0YWlscyk6IGJvb2xlYW4gPT4gZGV0YWlsLm5hbWUgPT09IG5hbWUpPy5hbW91bnQgfHwgMDtcbiAgfVxufVxuIl19
23
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVwb3J0LWl0ZW0uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvbW9kZWxzL3RheC1zdW1tYXJ5L3JlcG9ydC1pdGVtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFFQSxPQUFPLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ3BELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHNEQUFzRCxDQUFDO0FBQzVGLE9BQU8sRUFBQyxhQUFhLEVBQUMsTUFBTSxnQ0FBZ0MsQ0FBQztBQUU3RDs7O0dBR0c7QUFDSCxNQUFNLE9BQU8sVUFBVyxTQUFRLGFBQWE7SUFVM0M7OztPQUdHO0lBQ0gsMkJBQTJCLENBQUMsSUFBWTs7UUFDdEMsT0FBTyxDQUFBLE1BQUEsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxNQUF5QixFQUFXLEVBQUUsQ0FBQyxNQUFNLENBQUMsSUFBSSxLQUFLLElBQUksQ0FBQywwQ0FBRSxNQUFNLEtBQUksQ0FBQyxDQUFDO0lBQ3RHLENBQUM7Q0FDRjtBQVRDO0lBRkMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLFVBQVUsQ0FBQztJQUN0QixTQUFTLENBQUMsQ0FBQyxFQUFDLEtBQUssRUFBQyxFQUFFLEVBQUUsQ0FBQyxJQUFJLG9CQUFvQixDQUFDLEtBQUssQ0FBQyxDQUFDO3lDQUM1QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFRheFJldHVybkNhdGVnb3J5IH0gZnJvbSAnLi4vLi4vZGIvTW9kZWxzL3RheC1yZXR1cm4vdGF4LXJldHVybi1jYXRlZ29yeSc7XG5pbXBvcnQgeyBSZXBvcnRJdGVtRGV0YWlscyB9IGZyb20gJy4vcmVwb3J0LWl0ZW0tZGV0YWlscyc7XG5pbXBvcnQgeyBUcmFuc2Zvcm0sIFR5cGUgfSBmcm9tICdjbGFzcy10cmFuc2Zvcm1lcic7XG5pbXBvcnQgeyBSZXBvcnRJdGVtQ29sbGVjdGlvbiB9IGZyb20gJy4uLy4uL2NvbGxlY3Rpb25zL3RheC1zdW1tYXJ5L3JlcG9ydC1pdGVtLmNvbGxlY3Rpb24nO1xuaW1wb3J0IHtBYnN0cmFjdE1vZGVsfSBmcm9tICcuLi8uLi9kYi9Nb2RlbHMvYWJzdHJhY3QtbW9kZWwnO1xuXG4vKipcbiAqIFVzZWQgaW4gdGF4IHN1bW1hcnkgcmVwb3J0cyB0byBzaG93IGFtb3VudHMgcmVsYXRpbmcgdG8gYSB0YXggcmV0dXJuIGNhdGVnb3J5IGVudGl0eSBhbmQgZGV0YWlscyBvZiB3aGF0IHRoaXNcbiAqIGFtb3VudCBpcyBjb21wcmlzZWQgb2YuIEV4YW1wbGUgaGVyZSBzaG93cyBhbiBhbW91bnQgb2YgJDk1MS45NiBhbmQgYWxzbyBkZXRhaWxzIG9mIHdoYXQgdGhpcyBhbW91bnQgaXMgY29tcHJpc2VkIG9mOlxuICovXG5leHBvcnQgY2xhc3MgUmVwb3J0SXRlbSBleHRlbmRzIEFic3RyYWN0TW9kZWwge1xuICBhbW91bnQ6IG51bWJlcjtcbiAgZGV0YWlsczogUmVwb3J0SXRlbURldGFpbHNbXTtcbiAgdGF4UmV0dXJuQ2F0ZWdvcnk6IFRheFJldHVybkNhdGVnb3J5O1xuICB0aXRsZTogc3RyaW5nO1xuXG4gIEBUeXBlKCgpID0+IFJlcG9ydEl0ZW0pXG4gIEBUcmFuc2Zvcm0oKHt2YWx1ZX0pID0+IG5ldyBSZXBvcnRJdGVtQ29sbGVjdGlvbih2YWx1ZSkpXG4gIGl0ZW1zOiBSZXBvcnRJdGVtQ29sbGVjdGlvbjtcblxuICAvKipcbiAgICogR2V0IGFtb3VudCBmb3Igb25lIGluY29tZSBzb3VyY2VcbiAgICogQHBhcmFtIG5hbWUgTmFtZSBvZiBpbmNvbWUgc291cmNlIGZvciBmaWx0ZXJcbiAgICovXG4gIGdldEFtb3VudEJ5SW5jb21lU291cmNlTmFtZShuYW1lOiBzdHJpbmcpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLmRldGFpbHMuZmluZCgoZGV0YWlsOiBSZXBvcnRJdGVtRGV0YWlscyk6IGJvb2xlYW4gPT4gZGV0YWlsLm5hbWUgPT09IG5hbWUpPy5hbW91bnQgfHwgMDtcbiAgfVxufVxuIl19
@@ -124,6 +124,7 @@ export class Transaction extends TransactionBase {
124
124
  /**
125
125
  * Get value of transaction metadata field
126
126
  * @param field for which value should be returned
127
+ * @Todo modify 'metadata' property from array to Collection
127
128
  */
128
129
  getMetadataFieldValue(field) {
129
130
  var _a;
@@ -219,4 +220,4 @@ __decorate([
219
220
  __decorate([
220
221
  Type(() => TransactionAllocation)
221
222
  ], Transaction.prototype, "allocations", void 0);
222
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvbW9kZWxzL3RyYW5zYWN0aW9uL3RyYW5zYWN0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsV0FBVyxJQUFJLGVBQWUsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBQ3pGLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBRTNFLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDJDQUEyQyxDQUFDO0FBQ3JGLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBQ2hGLE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLGtEQUFrRCxDQUFDO0FBQ2pHLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBQy9FLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBQzdFLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLDhDQUE4QyxDQUFDO0FBQzNGLE9BQU8sRUFBVSxZQUFZLEVBQWEsSUFBSSxFQUFDLE1BQU0sbUJBQW1CLENBQUM7QUFDekUsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ2hELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQzNELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUNqRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDOUQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDN0QsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUNwQyxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUNqRSxP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Q0Y7QUFHbkI7SUFEQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsa0JBQWtCLENBQUM7NENBQ0g7QUFHNUI7SUFEQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsYUFBYSxDQUFDO2tEQUNHO0FBRzdCO0lBREMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLFlBQVksQ0FBQztpREFDRTtBQUczQjtJQURDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxtQkFBbUIsQ0FBQzs2Q0FDSztBQUdyQztJQURDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxXQUFXLENBQUM7NkNBQ0Y7QUFHdEI7SUFEQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDO3lDQUNOO0FBR1g7SUFEQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDO3lDQUNOO0FBR1g7SUFEQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMscUJBQXFCLENBQUM7Z0RBQ1EiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBUcmFuc2FjdGlvbiBhcyBUcmFuc2FjdGlvbkJhc2UgfSBmcm9tICcuLi8uLi9kYi9Nb2RlbHMvdHJhbnNhY3Rpb24vdHJhbnNhY3Rpb24nO1xuaW1wb3J0IHsgVHJhbnNhY3Rpb25UeXBlRW51bSB9IGZyb20gJy4uLy4uL2RiL0VudW1zL3RyYW5zYWN0aW9uLXR5cGUuZW51bSc7XG5pbXBvcnQgeyBDaGFydEFjY291bnRzQ2F0ZWdvcnlFbnVtIH0gZnJvbSAnLi4vLi4vZGIvRW51bXMvY2hhcnQtYWNjb3VudHMtY2F0ZWdvcnkuZW51bSc7XG5pbXBvcnQgeyBUcmFuc2FjdGlvbk9wZXJhdGlvbkVudW0gfSBmcm9tICcuLi8uLi9kYi9FbnVtcy90cmFuc2FjdGlvbi1vcGVyYXRpb24uZW51bSc7XG5pbXBvcnQgeyBDaGFydEFjY291bnRzTGlzdEVudW0gfSBmcm9tICcuLi8uLi9kYi9FbnVtcy9jaGFydC1hY2NvdW50cy1saXN0LmVudW0nO1xuaW1wb3J0IHsgQ2hhcnRBY2NvdW50c01ldGFkYXRhTGlzdEVudW0gfSBmcm9tICcuLi8uLi9kYi9FbnVtcy9jaGFydC1hY2NvdW50cy1tZXRhZGF0YS1saXN0LmVudW0nO1xuaW1wb3J0IHsgVHJhbnNhY3Rpb25Tb3VyY2VFbnVtIH0gZnJvbSAnLi4vLi4vZGIvRW51bXMvdHJhbnNhY3Rpb24tc291cmNlLmVudW0nO1xuaW1wb3J0IHsgRGVwcmVjaWF0aW9uVHlwZUVudW0gfSBmcm9tICcuLi8uLi9kYi9FbnVtcy9kZXByZWNpYXRpb24tdHlwZS5lbnVtJztcbmltcG9ydCB7IERlcHJlY2lhdGlvbkNhbGN1bGF0aW9uRW51bSB9IGZyb20gJy4uLy4uL2RiL0VudW1zL2RlcHJlY2lhdGlvbi1jYWxjdWxhdGlvbi5lbnVtJztcbmltcG9ydCB7RXhjbHVkZSwgcGxhaW5Ub0NsYXNzLCBUcmFuc2Zvcm0sIFR5cGV9IGZyb20gJ2NsYXNzLXRyYW5zZm9ybWVyJztcbmltcG9ydCB7IFByb3BlcnR5IH0gZnJvbSAnLi4vcHJvcGVydHkvcHJvcGVydHknO1xuaW1wb3J0IHsgVHJhbnNhY3Rpb25SZWNlaXB0IH0gZnJvbSAnLi90cmFuc2FjdGlvbi1yZWNlaXB0JztcbmltcG9ydCB7IENoYXJ0QWNjb3VudHMgfSBmcm9tICcuLi9jaGFydC1hY2NvdW50cy9jaGFydC1hY2NvdW50cyc7XG5pbXBvcnQgeyBJbmNvbWVTb3VyY2UgfSBmcm9tICcuLi9pbmNvbWUtc291cmNlL2luY29tZS1zb3VyY2UnO1xuaW1wb3J0IHsgVHJhbnNhY3Rpb25NZXRhZGF0YSB9IGZyb20gJy4vdHJhbnNhY3Rpb24tbWV0YWRhdGEnO1xuaW1wb3J0IHsgTG9hbiB9IGZyb20gJy4uL2xvYW4vbG9hbic7XG5pbXBvcnQgeyBUcmFuc2FjdGlvbkFsbG9jYXRpb24gfSBmcm9tICcuL3RyYW5zYWN0aW9uLWFsbG9jYXRpb24nO1xuaW1wb3J0IHsgQ0hBUlRfQUNDT1VOVFNfQ0FURUdPUklFUyB9IGZyb20gJy4uL2NoYXJ0LWFjY291bnRzL2NoYXJ0LWFjY291bnRzLWNhdGVnb3JpZXMuY29uc3QnO1xuaW1wb3J0IHsgSW5jb21lQW1vdW50VHlwZUVudW0gfSBmcm9tICcuL2luY29tZS1hbW91bnQtdHlwZS5lbnVtJztcbmltcG9ydCB7IElSZWNlaXB0IH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcy9yZWNlaXB0LmludGVyZmFjZSc7XG5pbXBvcnQgeyBUcmFuc2FjdGlvbkFsbG9jYXRpb25Db2xsZWN0aW9uIH0gZnJvbSAnLi4vLi4vY29sbGVjdGlvbnMvdHJhbnNhY3Rpb24vdHJhbnNhY3Rpb24tYWxsb2NhdGlvbi5jb2xsZWN0aW9uJztcbmltcG9ydCB7IERlcHJlY2lhdGlvbiB9IGZyb20gJy4uL2RlcHJlY2lhdGlvbi9kZXByZWNpYXRpb24nO1xuaW1wb3J0IHsgRXhwZW5zZSB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMvZXhwZW5zZS5pbnRlcmZhY2UnO1xuXG4vLyBAVE9ETyByZWZhY3RvciB3aXRoIGJhc2VNb2RlbCBpbiBjb25zdHJ1Y3RvclxuZXhwb3J0IGNsYXNzIFRyYW5zYWN0aW9uIGV4dGVuZHMgVHJhbnNhY3Rpb25CYXNlIGltcGxlbWVudHMgRXhwZW5zZSwgSVJlY2VpcHQge1xuICAvLyBsaXN0IG9mIGNoaWxkIHRyYW5zYWN0aW9ucyAoZmVlcylcbiAgQFR5cGUoKCkgPT4gVHJhbnNhY3Rpb24pXG4gIHRyYW5zYWN0aW9uczogVHJhbnNhY3Rpb25bXSA9IFtdO1xuXG4gIEBUeXBlKCgpID0+IFByb3BlcnR5KVxuICBwcm9wZXJ0eTogUHJvcGVydHk7XG5cbiAgQFR5cGUoKCkgPT4gVHJhbnNhY3Rpb25SZWNlaXB0KVxuICByZWNlaXB0OiBUcmFuc2FjdGlvblJlY2VpcHQ7XG5cbiAgQFR5cGUoKCkgPT4gQ2hhcnRBY2NvdW50cylcbiAgY2hhcnRBY2NvdW50czogQ2hhcnRBY2NvdW50cztcblxuICBAVHlwZSgoKSA9PiBJbmNvbWVTb3VyY2UpXG4gIGluY29tZVNvdXJjZTogSW5jb21lU291cmNlO1xuXG4gIEBUeXBlKCgpID0+IFRyYW5zYWN0aW9uTWV0YWRhdGEpXG4gIG1ldGFkYXRhOiBUcmFuc2FjdGlvbk1ldGFkYXRhW10gPSBbXTtcblxuICBAVHlwZSgoKSA9PiBUcmFuc2FjdGlvbilcbiAgdHJhbnNmZXI6IFRyYW5zYWN0aW9uO1xuXG4gIEBUeXBlKCgpID0+IExvYW4pXG4gIGxvYW46IExvYW47XG5cbiAgQFR5cGUoKCkgPT4gRGF0ZSlcbiAgZGF0ZTogRGF0ZTtcblxuICBAVHlwZSgoKSA9PiBUcmFuc2FjdGlvbkFsbG9jYXRpb24pXG4gIGFsbG9jYXRpb25zOiBUcmFuc2FjdGlvbkFsbG9jYXRpb25bXSA9IFtdO1xuXG4gIHRheDogbnVtYmVyID0gMDtcbiAgb3BlcmF0aW9uOiBUcmFuc2FjdGlvbk9wZXJhdGlvbkVudW0gPSBUcmFuc2FjdGlvbk9wZXJhdGlvbkVudW0uRklORF9BTkRfTUFUQ0g7XG4gIGFsbG9jYXRlZEFtb3VudDogbnVtYmVyO1xuICB1bmFsbG9jYXRlZEFtb3VudDogbnVtYmVyO1xuICBpc1NlbGVjdGVkOiBib29sZWFuO1xuICBjbGFpbVBlcmNlbnQ6IG51bWJlciA9IDEwMDtcbiAgYW1vdW50OiBudW1iZXIgPSAwO1xuXG4gIGlzRGViaXQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMudHlwZSA9PT0gVHJhbnNhY3Rpb25UeXBlRW51bS5ERUJJVDtcbiAgfVxuXG4gIGlzQ3JlZGl0KCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLnR5cGUgPT09IFRyYW5zYWN0aW9uVHlwZUVudW0uQ1JFRElUO1xuICB9XG5cbiAgaXNJbmNvbWUoKTogYm9vbGVhbiB7XG4gICAgaWYgKCF0aGlzLmNoYXJ0QWNjb3VudHMpIHtcbiAgICAgIHJldHVybiB0aGlzLmlzQ3JlZGl0KCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIENIQVJUX0FDQ09VTlRTX0NBVEVHT1JJRVMuaW5jb21lLmluY2x1ZGVzKHRoaXMuY2hhcnRBY2NvdW50cy5jYXRlZ29yeSk7XG4gIH1cblxuICBpc0V4cGVuc2UoKTogYm9vbGVhbiB7XG4gICAgaWYgKCF0aGlzLmNoYXJ0QWNjb3VudHMpIHtcbiAgICAgIHJldHVybiB0aGlzLmlzRGViaXQoKTtcbiAgICB9XG5cbiAgICByZXR1cm4gQ0hBUlRfQUNDT1VOVFNfQ0FURUdPUklFUy5leHBlbnNlLmluY2x1ZGVzKHRoaXMuY2hhcnRBY2NvdW50cy5jYXRlZ29yeSk7XG4gIH1cblxuICBpc1BlcnNvbmFsKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiBDSEFSVF9BQ0NPVU5UU19DQVRFR09SSUVTLnBlcnNvbmFsLmluY2x1ZGVzKHRoaXMuY2hhcnRBY2NvdW50cy5jYXRlZ29yeSk7XG4gIH1cblxuICBnZXQgY2hhcnRBY2NvdW50c0NhdGVnb3JpZXMoKTogQ2hhcnRBY2NvdW50c0NhdGVnb3J5RW51bVtdIHtcbiAgICBzd2l0Y2ggKHRydWUpIHtcbiAgICAgIGNhc2UgdGhpcy5pc1BlcnNvbmFsKCk6XG4gICAgICAgIHJldHVybiBDSEFSVF9BQ0NPVU5UU19DQVRFR09SSUVTLnBlcnNvbmFsO1xuXG4gICAgICBjYXNlIHRoaXMuaXNQcm9wZXJ0eVRhbmsoKTpcbiAgICAgICAgcmV0dXJuIENIQVJUX0FDQ09VTlRTX0NBVEVHT1JJRVMucHJvcGVydHk7XG5cbiAgICAgIGNhc2UgdGhpcy5pc1NvbGVUYW5rKCk6XG4gICAgICAgIHJldHVybiBDSEFSVF9BQ0NPVU5UU19DQVRFR09SSUVTLnNvbGU7XG5cbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIHJldHVybiBDSEFSVF9BQ0NPVU5UU19DQVRFR09SSUVTLndvcms7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIENoZWNrIGlmIHRyYW5zYWN0aW9uIGhhcyAnS2xtcyB0cmF2ZWxsZWQgZm9yIHdvcmsnIGNoYXJ0IGFjY291bnRzIGNhdGVnb3J5XG4gICAqL1xuICBnZXQgaXNLbG1zQ2hhcnRBY2NvdW50c0NhdGVnb3J5KCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmNoYXJ0QWNjb3VudHMuaWQgPT09IENoYXJ0QWNjb3VudHNMaXN0RW51bS5LTE1TX1RSQVZFTExFRF9GT1JfV09SSztcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgdHJhbnNhY3Rpb24gZGF0ZVxuICAgKi9cbiAgZ2V0RGF0ZSgpOiBEYXRlIHtcbiAgICByZXR1cm4gdGhpcy5kYXRlO1xuICB9XG5cbiAgLyoqXG4gICAqIENoZWNrIGlmIHRyYW5zYWN0aW9uIHR5cGUgaXMgdmVoaWNsZVxuICAgKi9cbiAgaXNWZWhpY2xlVHJhbnNhY3Rpb24oKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuY2hhcnRBY2NvdW50cy5pc1ZlaGljbGVFeHBlbnNlKCk7XG4gIH1cblxuICAvKipcbiAgICogR2V0IG5ldCBhbW91bnQgKGNsZWFuIGFtb3VudCBhZnRlciBhbGwgZGVkdWN0aW9ucylcbiAgICovXG4gIGdldE5ldEFtb3VudCgpOiBudW1iZXIge1xuICAgIC8vIEBUT0RPIGZpeCBoYWNrIHdoaWxlIHRyYW5zYWN0aW9ucyByZWZhY3RvcmluZyAodXNlIGNsYXNzLXRyYW5zZm9ybWVyKVxuICAgIHJldHVybiArKE1hdGgucm91bmQodGhpcy5nZXRJbmNvbWVBbW91bnRCeVR5cGUoSW5jb21lQW1vdW50VHlwZUVudW0uTkVUKSAqIDEwMCkgLyAxMDApLnRvRml4ZWQoMik7XG4gIH1cblxuICAvKipcbiAgICogR2V0IGdyb3NzIGluY29tZSBhbW91bnRcbiAgICovXG4gIGdldEdyb3NzSW5jb21lKCk6IG51bWJlciB7XG4gICAgLy8gQFRPRE8gZml4IGhhY2sgd2hpbGUgdHJhbnNhY3Rpb25zIHJlZmFjdG9yaW5nICh1c2UgY2xhc3MtdHJhbnNmb3JtZXIpXG4gICAgcmV0dXJuICsoTWF0aC5yb3VuZCh0aGlzLmdldEluY29tZUFtb3VudEJ5VHlwZShJbmNvbWVBbW91bnRUeXBlRW51bS5HUk9TUykgKiAxMDApIC8gMTAwKS50b0ZpeGVkKDIpO1xuICB9XG5cbiAgZ2V0IHRheEZyZWVDb21wb25lbnQoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5nZXRNZXRhZGF0YUZpZWxkVmFsdWUoQ2hhcnRBY2NvdW50c01ldGFkYXRhTGlzdEVudW0uVEFYX0ZSRUVfQ09NUE9ORU5UKTtcbiAgfVxuXG4gIGdldCBmcmFua2luZ0NyZWRpdCgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLmdldE1ldGFkYXRhRmllbGRWYWx1ZShDaGFydEFjY291bnRzTWV0YWRhdGFMaXN0RW51bS5GUkFOS0lOR19DUkVESVQpO1xuICB9XG5cbiAgZ2V0IGVsaWdpYmxlRm9yUmVkdWN0aW9uKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0TWV0YWRhdGFGaWVsZFZhbHVlKENoYXJ0QWNjb3VudHNNZXRhZGF0YUxpc3RFbnVtLkVMSUdJQkxFX0ZPUl9SRURVQ1RJT04pO1xuICB9XG5cbiAgZ2V0IHVudGF4ZWRFbGVtZW50KCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0TWV0YWRhdGFGaWVsZFZhbHVlKENoYXJ0QWNjb3VudHNNZXRhZGF0YUxpc3RFbnVtLlVOVEFYRURfRUxFTUVOVCk7XG4gIH1cblxuICAvKipcbiAgICogQ2hlY2sgaWYgdHJhbnNhY3Rpb24gcmVjb25jaWxlIG9wZXJhdGlvbiBpZiBUUkFOU0ZFUlxuICAgKiBAVE9ETyBiYWQgdXNhZ2Ugb2YgZ2V0IChhbmQgYWxsIGlzKiBtZXRob2RzKSwgZ2V0dGVyIHNob3VsZCBzb3VuZCBsaWtlIGEgbm91blxuICAgKi9cbiAgZ2V0IGlzVHJhbnNmZXIoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMub3BlcmF0aW9uID09PSBUcmFuc2FjdGlvbk9wZXJhdGlvbkVudW0uVFJBTlNGRVI7XG4gIH1cblxuICBnZXQgZGViaXQoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5pc0RlYml0KCkgPyBNYXRoLmFicyh0aGlzLmFtb3VudCkgOiAwO1xuICB9XG5cbiAgZ2V0IGNyZWRpdCgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLmlzQ3JlZGl0KCkgPyBNYXRoLmFicyh0aGlzLmFtb3VudCkgOiAwO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCB2YWx1ZSBvZiB0cmFuc2FjdGlvbiBtZXRhZGF0YSBmaWVsZFxuICAgKiBAcGFyYW0gZmllbGQgZm9yIHdoaWNoIHZhbHVlIHNob3VsZCBiZSByZXR1cm5lZFxuICAgKi9cbiAgcHJpdmF0ZSBnZXRNZXRhZGF0YUZpZWxkVmFsdWUoZmllbGQ6IENoYXJ0QWNjb3VudHNNZXRhZGF0YUxpc3RFbnVtKTogbnVtYmVyIHtcbiAgICByZXR1cm4gK3RoaXMubWV0YWRhdGEuZmluZCgodHJhbnNhY3Rpb25NZXRhZGF0YTogVHJhbnNhY3Rpb25NZXRhZGF0YSk6IGJvb2xlYW4gPT4ge1xuICAgICAgcmV0dXJuIHRyYW5zYWN0aW9uTWV0YWRhdGEuY2hhcnRBY2NvdW50c01ldGFkYXRhLmlkID09PSBmaWVsZDtcbiAgICB9KT8udmFsdWUgfHwgMDtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXR1cm5zIE5ldCBvciBHcm9zcyBpbmNvbWUgYW1vdW50IGJhc2VkIG9uIHByb3ZpZGVkIGluY29tZSB0eXBlXG4gICAqIEBwYXJhbSBpbmNvbWVUeXBlIGJ5IHdoaWNoIGFtb3VudCBzaG91bGQgYmUgcmV0dXJuZWRcbiAgICovXG4gIHByaXZhdGUgZ2V0SW5jb21lQW1vdW50QnlUeXBlKGluY29tZVR5cGU6IEluY29tZUFtb3VudFR5cGVFbnVtKTogbnVtYmVyIHtcbiAgICAvLyBtb2RpZmllciB0aGF0IGRldGVybWluZXMgd2hldGhlciB0aGUgdmFsdWVzIG9mIHRoZSB0cmFuc2FjdGlvbiBmaWVsZHMgd2lsbCBiZSBhZGRlZCBvciBzdWJ0cmFjdGVkXG4gICAgY29uc3QgbW9kaWZpZXI6IG51bWJlciA9IGluY29tZVR5cGUgPT09IEluY29tZUFtb3VudFR5cGVFbnVtLkdST1NTID8gMSA6IC0xO1xuXG4gICAgc3dpdGNoICh0cnVlKSB7XG4gICAgICBjYXNlIHRoaXMuaXNQcm9wZXJ0eVRhbmsoKTpcbiAgICAgICAgcmV0dXJuIHRoaXMuYW1vdW50ICtcbiAgICAgICAgICAodGhpcy50cmFuc2FjdGlvbnNcbiAgICAgICAgICAgIC5yZWR1Y2UoKHN1bTogbnVtYmVyLCB0cmFuc2FjdGlvbjogVHJhbnNhY3Rpb24pOiBudW1iZXIgPT4gc3VtICsgTWF0aC5hYnModHJhbnNhY3Rpb24uYW1vdW50KSwgMCkgKiBtb2RpZmllcik7XG4gICAgICBjYXNlIHRoaXMuaXNXb3JrVGFuaygpOlxuICAgICAgICByZXR1cm4gdGhpcy5hbW91bnQgKyAoKHRoaXMudGF4ICsgdGhpcy5mcmFua2luZ0NyZWRpdCAtIHRoaXMudGF4RnJlZUNvbXBvbmVudCAtIHRoaXMuZWxpZ2libGVGb3JSZWR1Y3Rpb24pICogbW9kaWZpZXIpO1xuICAgICAgZGVmYXVsdDpcbiAgICAgICAgcmV0dXJuIHRoaXMuYW1vdW50IHx8IDA7XG4gICAgfVxuICB9XG5cbiAgaXNJbnRlcmVzdCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5jaGFydEFjY291bnRzLmlkID09PSBDaGFydEFjY291bnRzTGlzdEVudW0uSU5URVJFU1RfT05fTE9BTjtcbiAgfVxuXG4gIGlzQ2FzaCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5zb3VyY2UgPT09IFRyYW5zYWN0aW9uU291cmNlRW51bS5DQVNIO1xuICB9XG5cbiAgLyoqXG4gICAqIENyZWF0ZSBEZXByZWNpYXRpb24gaW5zdGFuY2UgYmFzZWQgb24gVHJhbnNhY3Rpb25cbiAgICovXG4gIHRvRGVwcmVjaWF0aW9uKCk6IERlcHJlY2lhdGlvbiB7XG4gICAgcmV0dXJuIHBsYWluVG9DbGFzcyhEZXByZWNpYXRpb24sIHtcbiAgICAgIGRhdGU6IHRoaXMuZGF0ZSxcbiAgICAgIGFtb3VudDogdGhpcy5hbW91bnQsXG4gICAgICBjaGFydEFjY291bnRzOiB0aGlzLmNoYXJ0QWNjb3VudHMsXG4gICAgICBkZXNjcmlwdGlvbjogdGhpcy5kZXNjcmlwdGlvbixcbiAgICAgIHR5cGU6IERlcHJlY2lhdGlvblR5cGVFbnVtLlBMQU5UX0VRVUlQTUVOVCxcbiAgICAgIGNsYWltUGVyY2VudDogdGhpcy5jbGFpbVBlcmNlbnQsXG4gICAgICBwcm9wZXJ0eTogdGhpcy5wcm9wZXJ0eSxcbiAgICAgIGNhbGN1bGF0aW9uOiB0aGlzLnByb3BlcnR5ID8gdGhpcy5wcm9wZXJ0eS5kZXByZWNpYXRpb25DYWxjdWxhdGlvbiA6IERlcHJlY2lhdGlvbkNhbGN1bGF0aW9uRW51bS5QUklNRV9DT1NUXG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogQ2hlY2sgaWYgdHJhbnNhY3Rpb24gaXMgY29tcGxldGVseSBhbGxvY2F0ZWRcbiAgICovXG4gIGlzQWxsb2NhdGVkKGFsbG9jYXRpb25zOiBUcmFuc2FjdGlvbkFsbG9jYXRpb25Db2xsZWN0aW9uKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0TmV0QW1vdW50KCkgPT09IHRoaXMuZ2V0QWxsb2NhdGVkQW1vdW50KGFsbG9jYXRpb25zKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgdHJhbnNhY3Rpb24gYWxsb2NhdGVkIGFtb3VudFxuICAgKi9cbiAgZ2V0QWxsb2NhdGVkQW1vdW50KGFsbG9jYXRpb25zOiBUcmFuc2FjdGlvbkFsbG9jYXRpb25Db2xsZWN0aW9uKTogbnVtYmVyIHtcbiAgICByZXR1cm4gYWxsb2NhdGlvbnMuZ2V0QnlUcmFuc2FjdGlvbnNJZHMoW3RoaXMuaWRdKS5hbW91bnQ7XG4gIH1cblxuICAvKipcbiAgICogR2V0IHRyYW5zYWN0aW9uIHVuYWxsb2NhdGVkIGFtb3VudFxuICAgKi9cbiAgZ2V0VW5hbGxvY2F0ZWRBbW91bnQoYWxsb2NhdGlvbnM6IFRyYW5zYWN0aW9uQWxsb2NhdGlvbkNvbGxlY3Rpb24pOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLmdldE5ldEFtb3VudCgpIC0gdGhpcy5nZXRBbGxvY2F0ZWRBbW91bnQoYWxsb2NhdGlvbnMpO1xuICB9XG59XG4iXX0=
223
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvbW9kZWxzL3RyYW5zYWN0aW9uL3RyYW5zYWN0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsV0FBVyxJQUFJLGVBQWUsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBQ3pGLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBRTNFLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDJDQUEyQyxDQUFDO0FBQ3JGLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBQ2hGLE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLGtEQUFrRCxDQUFDO0FBQ2pHLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBQy9FLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBQzdFLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLDhDQUE4QyxDQUFDO0FBQzNGLE9BQU8sRUFBVSxZQUFZLEVBQWEsSUFBSSxFQUFDLE1BQU0sbUJBQW1CLENBQUM7QUFDekUsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ2hELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQzNELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUNqRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDOUQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDN0QsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUNwQyxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUNqRSxP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QUNGO0FBR25CO0lBREMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLGtCQUFrQixDQUFDOzRDQUNIO0FBRzVCO0lBREMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLGFBQWEsQ0FBQztrREFDRztBQUc3QjtJQURDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxZQUFZLENBQUM7aURBQ0U7QUFHM0I7SUFEQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsbUJBQW1CLENBQUM7NkNBQ0s7QUFHckM7SUFEQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsV0FBVyxDQUFDOzZDQUNGO0FBR3RCO0lBREMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQzt5Q0FDTjtBQUdYO0lBREMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQzt5Q0FDTjtBQUdYO0lBREMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLHFCQUFxQixDQUFDO2dEQUNRIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVHJhbnNhY3Rpb24gYXMgVHJhbnNhY3Rpb25CYXNlIH0gZnJvbSAnLi4vLi4vZGIvTW9kZWxzL3RyYW5zYWN0aW9uL3RyYW5zYWN0aW9uJztcbmltcG9ydCB7IFRyYW5zYWN0aW9uVHlwZUVudW0gfSBmcm9tICcuLi8uLi9kYi9FbnVtcy90cmFuc2FjdGlvbi10eXBlLmVudW0nO1xuaW1wb3J0IHsgQ2hhcnRBY2NvdW50c0NhdGVnb3J5RW51bSB9IGZyb20gJy4uLy4uL2RiL0VudW1zL2NoYXJ0LWFjY291bnRzLWNhdGVnb3J5LmVudW0nO1xuaW1wb3J0IHsgVHJhbnNhY3Rpb25PcGVyYXRpb25FbnVtIH0gZnJvbSAnLi4vLi4vZGIvRW51bXMvdHJhbnNhY3Rpb24tb3BlcmF0aW9uLmVudW0nO1xuaW1wb3J0IHsgQ2hhcnRBY2NvdW50c0xpc3RFbnVtIH0gZnJvbSAnLi4vLi4vZGIvRW51bXMvY2hhcnQtYWNjb3VudHMtbGlzdC5lbnVtJztcbmltcG9ydCB7IENoYXJ0QWNjb3VudHNNZXRhZGF0YUxpc3RFbnVtIH0gZnJvbSAnLi4vLi4vZGIvRW51bXMvY2hhcnQtYWNjb3VudHMtbWV0YWRhdGEtbGlzdC5lbnVtJztcbmltcG9ydCB7IFRyYW5zYWN0aW9uU291cmNlRW51bSB9IGZyb20gJy4uLy4uL2RiL0VudW1zL3RyYW5zYWN0aW9uLXNvdXJjZS5lbnVtJztcbmltcG9ydCB7IERlcHJlY2lhdGlvblR5cGVFbnVtIH0gZnJvbSAnLi4vLi4vZGIvRW51bXMvZGVwcmVjaWF0aW9uLXR5cGUuZW51bSc7XG5pbXBvcnQgeyBEZXByZWNpYXRpb25DYWxjdWxhdGlvbkVudW0gfSBmcm9tICcuLi8uLi9kYi9FbnVtcy9kZXByZWNpYXRpb24tY2FsY3VsYXRpb24uZW51bSc7XG5pbXBvcnQge0V4Y2x1ZGUsIHBsYWluVG9DbGFzcywgVHJhbnNmb3JtLCBUeXBlfSBmcm9tICdjbGFzcy10cmFuc2Zvcm1lcic7XG5pbXBvcnQgeyBQcm9wZXJ0eSB9IGZyb20gJy4uL3Byb3BlcnR5L3Byb3BlcnR5JztcbmltcG9ydCB7IFRyYW5zYWN0aW9uUmVjZWlwdCB9IGZyb20gJy4vdHJhbnNhY3Rpb24tcmVjZWlwdCc7XG5pbXBvcnQgeyBDaGFydEFjY291bnRzIH0gZnJvbSAnLi4vY2hhcnQtYWNjb3VudHMvY2hhcnQtYWNjb3VudHMnO1xuaW1wb3J0IHsgSW5jb21lU291cmNlIH0gZnJvbSAnLi4vaW5jb21lLXNvdXJjZS9pbmNvbWUtc291cmNlJztcbmltcG9ydCB7IFRyYW5zYWN0aW9uTWV0YWRhdGEgfSBmcm9tICcuL3RyYW5zYWN0aW9uLW1ldGFkYXRhJztcbmltcG9ydCB7IExvYW4gfSBmcm9tICcuLi9sb2FuL2xvYW4nO1xuaW1wb3J0IHsgVHJhbnNhY3Rpb25BbGxvY2F0aW9uIH0gZnJvbSAnLi90cmFuc2FjdGlvbi1hbGxvY2F0aW9uJztcbmltcG9ydCB7IENIQVJUX0FDQ09VTlRTX0NBVEVHT1JJRVMgfSBmcm9tICcuLi9jaGFydC1hY2NvdW50cy9jaGFydC1hY2NvdW50cy1jYXRlZ29yaWVzLmNvbnN0JztcbmltcG9ydCB7IEluY29tZUFtb3VudFR5cGVFbnVtIH0gZnJvbSAnLi9pbmNvbWUtYW1vdW50LXR5cGUuZW51bSc7XG5pbXBvcnQgeyBJUmVjZWlwdCB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMvcmVjZWlwdC5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgVHJhbnNhY3Rpb25BbGxvY2F0aW9uQ29sbGVjdGlvbiB9IGZyb20gJy4uLy4uL2NvbGxlY3Rpb25zL3RyYW5zYWN0aW9uL3RyYW5zYWN0aW9uLWFsbG9jYXRpb24uY29sbGVjdGlvbic7XG5pbXBvcnQgeyBEZXByZWNpYXRpb24gfSBmcm9tICcuLi9kZXByZWNpYXRpb24vZGVwcmVjaWF0aW9uJztcbmltcG9ydCB7IEV4cGVuc2UgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzL2V4cGVuc2UuaW50ZXJmYWNlJztcblxuLy8gQFRPRE8gcmVmYWN0b3Igd2l0aCBiYXNlTW9kZWwgaW4gY29uc3RydWN0b3JcbmV4cG9ydCBjbGFzcyBUcmFuc2FjdGlvbiBleHRlbmRzIFRyYW5zYWN0aW9uQmFzZSBpbXBsZW1lbnRzIEV4cGVuc2UsIElSZWNlaXB0IHtcbiAgLy8gbGlzdCBvZiBjaGlsZCB0cmFuc2FjdGlvbnMgKGZlZXMpXG4gIEBUeXBlKCgpID0+IFRyYW5zYWN0aW9uKVxuICB0cmFuc2FjdGlvbnM6IFRyYW5zYWN0aW9uW10gPSBbXTtcblxuICBAVHlwZSgoKSA9PiBQcm9wZXJ0eSlcbiAgcHJvcGVydHk6IFByb3BlcnR5O1xuXG4gIEBUeXBlKCgpID0+IFRyYW5zYWN0aW9uUmVjZWlwdClcbiAgcmVjZWlwdDogVHJhbnNhY3Rpb25SZWNlaXB0O1xuXG4gIEBUeXBlKCgpID0+IENoYXJ0QWNjb3VudHMpXG4gIGNoYXJ0QWNjb3VudHM6IENoYXJ0QWNjb3VudHM7XG5cbiAgQFR5cGUoKCkgPT4gSW5jb21lU291cmNlKVxuICBpbmNvbWVTb3VyY2U6IEluY29tZVNvdXJjZTtcblxuICBAVHlwZSgoKSA9PiBUcmFuc2FjdGlvbk1ldGFkYXRhKVxuICBtZXRhZGF0YTogVHJhbnNhY3Rpb25NZXRhZGF0YVtdID0gW107XG5cbiAgQFR5cGUoKCkgPT4gVHJhbnNhY3Rpb24pXG4gIHRyYW5zZmVyOiBUcmFuc2FjdGlvbjtcblxuICBAVHlwZSgoKSA9PiBMb2FuKVxuICBsb2FuOiBMb2FuO1xuXG4gIEBUeXBlKCgpID0+IERhdGUpXG4gIGRhdGU6IERhdGU7XG5cbiAgQFR5cGUoKCkgPT4gVHJhbnNhY3Rpb25BbGxvY2F0aW9uKVxuICBhbGxvY2F0aW9uczogVHJhbnNhY3Rpb25BbGxvY2F0aW9uW10gPSBbXTtcblxuICB0YXg6IG51bWJlciA9IDA7XG4gIG9wZXJhdGlvbjogVHJhbnNhY3Rpb25PcGVyYXRpb25FbnVtID0gVHJhbnNhY3Rpb25PcGVyYXRpb25FbnVtLkZJTkRfQU5EX01BVENIO1xuICBhbGxvY2F0ZWRBbW91bnQ6IG51bWJlcjtcbiAgdW5hbGxvY2F0ZWRBbW91bnQ6IG51bWJlcjtcbiAgaXNTZWxlY3RlZDogYm9vbGVhbjtcbiAgY2xhaW1QZXJjZW50OiBudW1iZXIgPSAxMDA7XG4gIGFtb3VudDogbnVtYmVyID0gMDtcblxuICBpc0RlYml0KCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLnR5cGUgPT09IFRyYW5zYWN0aW9uVHlwZUVudW0uREVCSVQ7XG4gIH1cblxuICBpc0NyZWRpdCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy50eXBlID09PSBUcmFuc2FjdGlvblR5cGVFbnVtLkNSRURJVDtcbiAgfVxuXG4gIGlzSW5jb21lKCk6IGJvb2xlYW4ge1xuICAgIGlmICghdGhpcy5jaGFydEFjY291bnRzKSB7XG4gICAgICByZXR1cm4gdGhpcy5pc0NyZWRpdCgpO1xuICAgIH1cblxuICAgIHJldHVybiBDSEFSVF9BQ0NPVU5UU19DQVRFR09SSUVTLmluY29tZS5pbmNsdWRlcyh0aGlzLmNoYXJ0QWNjb3VudHMuY2F0ZWdvcnkpO1xuICB9XG5cbiAgaXNFeHBlbnNlKCk6IGJvb2xlYW4ge1xuICAgIGlmICghdGhpcy5jaGFydEFjY291bnRzKSB7XG4gICAgICByZXR1cm4gdGhpcy5pc0RlYml0KCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIENIQVJUX0FDQ09VTlRTX0NBVEVHT1JJRVMuZXhwZW5zZS5pbmNsdWRlcyh0aGlzLmNoYXJ0QWNjb3VudHMuY2F0ZWdvcnkpO1xuICB9XG5cbiAgaXNQZXJzb25hbCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gQ0hBUlRfQUNDT1VOVFNfQ0FURUdPUklFUy5wZXJzb25hbC5pbmNsdWRlcyh0aGlzLmNoYXJ0QWNjb3VudHMuY2F0ZWdvcnkpO1xuICB9XG5cbiAgZ2V0IGNoYXJ0QWNjb3VudHNDYXRlZ29yaWVzKCk6IENoYXJ0QWNjb3VudHNDYXRlZ29yeUVudW1bXSB7XG4gICAgc3dpdGNoICh0cnVlKSB7XG4gICAgICBjYXNlIHRoaXMuaXNQZXJzb25hbCgpOlxuICAgICAgICByZXR1cm4gQ0hBUlRfQUNDT1VOVFNfQ0FURUdPUklFUy5wZXJzb25hbDtcblxuICAgICAgY2FzZSB0aGlzLmlzUHJvcGVydHlUYW5rKCk6XG4gICAgICAgIHJldHVybiBDSEFSVF9BQ0NPVU5UU19DQVRFR09SSUVTLnByb3BlcnR5O1xuXG4gICAgICBjYXNlIHRoaXMuaXNTb2xlVGFuaygpOlxuICAgICAgICByZXR1cm4gQ0hBUlRfQUNDT1VOVFNfQ0FURUdPUklFUy5zb2xlO1xuXG4gICAgICBkZWZhdWx0OlxuICAgICAgICByZXR1cm4gQ0hBUlRfQUNDT1VOVFNfQ0FURUdPUklFUy53b3JrO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBDaGVjayBpZiB0cmFuc2FjdGlvbiBoYXMgJ0tsbXMgdHJhdmVsbGVkIGZvciB3b3JrJyBjaGFydCBhY2NvdW50cyBjYXRlZ29yeVxuICAgKi9cbiAgZ2V0IGlzS2xtc0NoYXJ0QWNjb3VudHNDYXRlZ29yeSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5jaGFydEFjY291bnRzLmlkID09PSBDaGFydEFjY291bnRzTGlzdEVudW0uS0xNU19UUkFWRUxMRURfRk9SX1dPUks7XG4gIH1cblxuICAvKipcbiAgICogR2V0IHRyYW5zYWN0aW9uIGRhdGVcbiAgICovXG4gIGdldERhdGUoKTogRGF0ZSB7XG4gICAgcmV0dXJuIHRoaXMuZGF0ZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDaGVjayBpZiB0cmFuc2FjdGlvbiB0eXBlIGlzIHZlaGljbGVcbiAgICovXG4gIGlzVmVoaWNsZVRyYW5zYWN0aW9uKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmNoYXJ0QWNjb3VudHMuaXNWZWhpY2xlRXhwZW5zZSgpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCBuZXQgYW1vdW50IChjbGVhbiBhbW91bnQgYWZ0ZXIgYWxsIGRlZHVjdGlvbnMpXG4gICAqL1xuICBnZXROZXRBbW91bnQoKTogbnVtYmVyIHtcbiAgICAvLyBAVE9ETyBmaXggaGFjayB3aGlsZSB0cmFuc2FjdGlvbnMgcmVmYWN0b3JpbmcgKHVzZSBjbGFzcy10cmFuc2Zvcm1lcilcbiAgICByZXR1cm4gKyhNYXRoLnJvdW5kKHRoaXMuZ2V0SW5jb21lQW1vdW50QnlUeXBlKEluY29tZUFtb3VudFR5cGVFbnVtLk5FVCkgKiAxMDApIC8gMTAwKS50b0ZpeGVkKDIpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCBncm9zcyBpbmNvbWUgYW1vdW50XG4gICAqL1xuICBnZXRHcm9zc0luY29tZSgpOiBudW1iZXIge1xuICAgIC8vIEBUT0RPIGZpeCBoYWNrIHdoaWxlIHRyYW5zYWN0aW9ucyByZWZhY3RvcmluZyAodXNlIGNsYXNzLXRyYW5zZm9ybWVyKVxuICAgIHJldHVybiArKE1hdGgucm91bmQodGhpcy5nZXRJbmNvbWVBbW91bnRCeVR5cGUoSW5jb21lQW1vdW50VHlwZUVudW0uR1JPU1MpICogMTAwKSAvIDEwMCkudG9GaXhlZCgyKTtcbiAgfVxuXG4gIGdldCB0YXhGcmVlQ29tcG9uZW50KCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0TWV0YWRhdGFGaWVsZFZhbHVlKENoYXJ0QWNjb3VudHNNZXRhZGF0YUxpc3RFbnVtLlRBWF9GUkVFX0NPTVBPTkVOVCk7XG4gIH1cblxuICBnZXQgZnJhbmtpbmdDcmVkaXQoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5nZXRNZXRhZGF0YUZpZWxkVmFsdWUoQ2hhcnRBY2NvdW50c01ldGFkYXRhTGlzdEVudW0uRlJBTktJTkdfQ1JFRElUKTtcbiAgfVxuXG4gIGdldCBlbGlnaWJsZUZvclJlZHVjdGlvbigpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLmdldE1ldGFkYXRhRmllbGRWYWx1ZShDaGFydEFjY291bnRzTWV0YWRhdGFMaXN0RW51bS5FTElHSUJMRV9GT1JfUkVEVUNUSU9OKTtcbiAgfVxuXG4gIGdldCB1bnRheGVkRWxlbWVudCgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLmdldE1ldGFkYXRhRmllbGRWYWx1ZShDaGFydEFjY291bnRzTWV0YWRhdGFMaXN0RW51bS5VTlRBWEVEX0VMRU1FTlQpO1xuICB9XG5cbiAgLyoqXG4gICAqIENoZWNrIGlmIHRyYW5zYWN0aW9uIHJlY29uY2lsZSBvcGVyYXRpb24gaWYgVFJBTlNGRVJcbiAgICogQFRPRE8gYmFkIHVzYWdlIG9mIGdldCAoYW5kIGFsbCBpcyogbWV0aG9kcyksIGdldHRlciBzaG91bGQgc291bmQgbGlrZSBhIG5vdW5cbiAgICovXG4gIGdldCBpc1RyYW5zZmVyKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLm9wZXJhdGlvbiA9PT0gVHJhbnNhY3Rpb25PcGVyYXRpb25FbnVtLlRSQU5TRkVSO1xuICB9XG5cbiAgZ2V0IGRlYml0KCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuaXNEZWJpdCgpID8gTWF0aC5hYnModGhpcy5hbW91bnQpIDogMDtcbiAgfVxuXG4gIGdldCBjcmVkaXQoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5pc0NyZWRpdCgpID8gTWF0aC5hYnModGhpcy5hbW91bnQpIDogMDtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgdmFsdWUgb2YgdHJhbnNhY3Rpb24gbWV0YWRhdGEgZmllbGRcbiAgICogQHBhcmFtIGZpZWxkIGZvciB3aGljaCB2YWx1ZSBzaG91bGQgYmUgcmV0dXJuZWRcbiAgICogQFRvZG8gbW9kaWZ5ICdtZXRhZGF0YScgcHJvcGVydHkgZnJvbSBhcnJheSB0byBDb2xsZWN0aW9uXG4gICAqL1xuICBnZXRNZXRhZGF0YUZpZWxkVmFsdWUoZmllbGQ6IENoYXJ0QWNjb3VudHNNZXRhZGF0YUxpc3RFbnVtKTogbnVtYmVyIHtcbiAgICByZXR1cm4gK3RoaXMubWV0YWRhdGEuZmluZCgodHJhbnNhY3Rpb25NZXRhZGF0YTogVHJhbnNhY3Rpb25NZXRhZGF0YSk6IGJvb2xlYW4gPT4ge1xuICAgICAgcmV0dXJuIHRyYW5zYWN0aW9uTWV0YWRhdGEuY2hhcnRBY2NvdW50c01ldGFkYXRhLmlkID09PSBmaWVsZDtcbiAgICB9KT8udmFsdWUgfHwgMDtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXR1cm5zIE5ldCBvciBHcm9zcyBpbmNvbWUgYW1vdW50IGJhc2VkIG9uIHByb3ZpZGVkIGluY29tZSB0eXBlXG4gICAqIEBwYXJhbSBpbmNvbWVUeXBlIGJ5IHdoaWNoIGFtb3VudCBzaG91bGQgYmUgcmV0dXJuZWRcbiAgICovXG4gIHByaXZhdGUgZ2V0SW5jb21lQW1vdW50QnlUeXBlKGluY29tZVR5cGU6IEluY29tZUFtb3VudFR5cGVFbnVtKTogbnVtYmVyIHtcbiAgICAvLyBtb2RpZmllciB0aGF0IGRldGVybWluZXMgd2hldGhlciB0aGUgdmFsdWVzIG9mIHRoZSB0cmFuc2FjdGlvbiBmaWVsZHMgd2lsbCBiZSBhZGRlZCBvciBzdWJ0cmFjdGVkXG4gICAgY29uc3QgbW9kaWZpZXI6IG51bWJlciA9IGluY29tZVR5cGUgPT09IEluY29tZUFtb3VudFR5cGVFbnVtLkdST1NTID8gMSA6IC0xO1xuXG4gICAgc3dpdGNoICh0cnVlKSB7XG4gICAgICBjYXNlIHRoaXMuaXNQcm9wZXJ0eVRhbmsoKTpcbiAgICAgICAgcmV0dXJuIHRoaXMuYW1vdW50ICtcbiAgICAgICAgICAodGhpcy50cmFuc2FjdGlvbnNcbiAgICAgICAgICAgIC5yZWR1Y2UoKHN1bTogbnVtYmVyLCB0cmFuc2FjdGlvbjogVHJhbnNhY3Rpb24pOiBudW1iZXIgPT4gc3VtICsgTWF0aC5hYnModHJhbnNhY3Rpb24uYW1vdW50KSwgMCkgKiBtb2RpZmllcik7XG4gICAgICBjYXNlIHRoaXMuaXNXb3JrVGFuaygpOlxuICAgICAgICByZXR1cm4gdGhpcy5hbW91bnQgKyAoKHRoaXMudGF4ICsgdGhpcy5mcmFua2luZ0NyZWRpdCAtIHRoaXMudGF4RnJlZUNvbXBvbmVudCAtIHRoaXMuZWxpZ2libGVGb3JSZWR1Y3Rpb24pICogbW9kaWZpZXIpO1xuICAgICAgZGVmYXVsdDpcbiAgICAgICAgcmV0dXJuIHRoaXMuYW1vdW50IHx8IDA7XG4gICAgfVxuICB9XG5cbiAgaXNJbnRlcmVzdCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5jaGFydEFjY291bnRzLmlkID09PSBDaGFydEFjY291bnRzTGlzdEVudW0uSU5URVJFU1RfT05fTE9BTjtcbiAgfVxuXG4gIGlzQ2FzaCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5zb3VyY2UgPT09IFRyYW5zYWN0aW9uU291cmNlRW51bS5DQVNIO1xuICB9XG5cbiAgLyoqXG4gICAqIENyZWF0ZSBEZXByZWNpYXRpb24gaW5zdGFuY2UgYmFzZWQgb24gVHJhbnNhY3Rpb25cbiAgICovXG4gIHRvRGVwcmVjaWF0aW9uKCk6IERlcHJlY2lhdGlvbiB7XG4gICAgcmV0dXJuIHBsYWluVG9DbGFzcyhEZXByZWNpYXRpb24sIHtcbiAgICAgIGRhdGU6IHRoaXMuZGF0ZSxcbiAgICAgIGFtb3VudDogdGhpcy5hbW91bnQsXG4gICAgICBjaGFydEFjY291bnRzOiB0aGlzLmNoYXJ0QWNjb3VudHMsXG4gICAgICBkZXNjcmlwdGlvbjogdGhpcy5kZXNjcmlwdGlvbixcbiAgICAgIHR5cGU6IERlcHJlY2lhdGlvblR5cGVFbnVtLlBMQU5UX0VRVUlQTUVOVCxcbiAgICAgIGNsYWltUGVyY2VudDogdGhpcy5jbGFpbVBlcmNlbnQsXG4gICAgICBwcm9wZXJ0eTogdGhpcy5wcm9wZXJ0eSxcbiAgICAgIGNhbGN1bGF0aW9uOiB0aGlzLnByb3BlcnR5ID8gdGhpcy5wcm9wZXJ0eS5kZXByZWNpYXRpb25DYWxjdWxhdGlvbiA6IERlcHJlY2lhdGlvbkNhbGN1bGF0aW9uRW51bS5QUklNRV9DT1NUXG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogQ2hlY2sgaWYgdHJhbnNhY3Rpb24gaXMgY29tcGxldGVseSBhbGxvY2F0ZWRcbiAgICovXG4gIGlzQWxsb2NhdGVkKGFsbG9jYXRpb25zOiBUcmFuc2FjdGlvbkFsbG9jYXRpb25Db2xsZWN0aW9uKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0TmV0QW1vdW50KCkgPT09IHRoaXMuZ2V0QWxsb2NhdGVkQW1vdW50KGFsbG9jYXRpb25zKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgdHJhbnNhY3Rpb24gYWxsb2NhdGVkIGFtb3VudFxuICAgKi9cbiAgZ2V0QWxsb2NhdGVkQW1vdW50KGFsbG9jYXRpb25zOiBUcmFuc2FjdGlvbkFsbG9jYXRpb25Db2xsZWN0aW9uKTogbnVtYmVyIHtcbiAgICByZXR1cm4gYWxsb2NhdGlvbnMuZ2V0QnlUcmFuc2FjdGlvbnNJZHMoW3RoaXMuaWRdKS5hbW91bnQ7XG4gIH1cblxuICAvKipcbiAgICogR2V0IHRyYW5zYWN0aW9uIHVuYWxsb2NhdGVkIGFtb3VudFxuICAgKi9cbiAgZ2V0VW5hbGxvY2F0ZWRBbW91bnQoYWxsb2NhdGlvbnM6IFRyYW5zYWN0aW9uQWxsb2NhdGlvbkNvbGxlY3Rpb24pOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLmdldE5ldEFtb3VudCgpIC0gdGhpcy5nZXRBbGxvY2F0ZWRBbW91bnQoYWxsb2NhdGlvbnMpO1xuICB9XG59XG4iXX0=
@@ -49,7 +49,7 @@ export class AccountSetupService {
49
49
  .subscribe((items) => {
50
50
  switch (true) {
51
51
  case !this.cache:
52
- case this.cache.getBy('isCompleted', true).length !== items.getBy('isCompleted', true).length:
52
+ case this.cache.filterBy('isCompleted', true).length !== items.filterBy('isCompleted', true).length:
53
53
  case this.cache.length !== items.length:
54
54
  this.cache = cloneDeep(items);
55
55
  this.cacheSubject.next(this.cache);
@@ -143,12 +143,12 @@ export class AccountSetupService {
143
143
  }));
144
144
  }
145
145
  }
146
- AccountSetupService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: AccountSetupService, deps: [{ token: i1.ClientIncomeTypesService }, { token: i2.PropertyService }, { token: i3.IncomeSourceService }, { token: i4.BankAccountService }, { token: i5.TransactionAllocationService }, { token: i6.VehicleClaimService }, { token: i7.TransactionService }], target: i0.ɵɵFactoryTarget.Injectable });
147
- AccountSetupService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: AccountSetupService, providedIn: 'root' });
148
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: AccountSetupService, decorators: [{
146
+ AccountSetupService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: AccountSetupService, deps: [{ token: i1.ClientIncomeTypesService }, { token: i2.PropertyService }, { token: i3.IncomeSourceService }, { token: i4.BankAccountService }, { token: i5.TransactionAllocationService }, { token: i6.VehicleClaimService }, { token: i7.TransactionService }], target: i0.ɵɵFactoryTarget.Injectable });
147
+ AccountSetupService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: AccountSetupService, providedIn: 'root' });
148
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: AccountSetupService, decorators: [{
149
149
  type: Injectable,
150
150
  args: [{
151
151
  providedIn: 'root'
152
152
  }]
153
153
  }], ctorParameters: function () { return [{ type: i1.ClientIncomeTypesService }, { type: i2.PropertyService }, { type: i3.IncomeSourceService }, { type: i4.BankAccountService }, { type: i5.TransactionAllocationService }, { type: i6.VehicleClaimService }, { type: i7.TransactionService }]; } });
154
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNjb3VudC1zZXR1cC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHQtY29yZS9zcmMvbGliL3NlcnZpY2VzL2FjY291bnQtc2V0dXAvYWNjb3VudC1zZXR1cC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sc0RBQXNELENBQUM7QUFFM0YsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0scURBQXFELENBQUM7QUFFNUYsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0seUNBQXlDLENBQUM7QUFHNUUsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sNENBQTRDLENBQUM7QUFLcEYsT0FBTyxFQUFFLGFBQWEsRUFBYyxFQUFFLEVBQUUsYUFBYSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3BFLE9BQU8sRUFBRSxNQUFNLEVBQUUsR0FBRyxFQUFFLFFBQVEsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3ZELE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLGlEQUFpRCxDQUFDO0FBRTdGLE9BQU8sU0FBUyxNQUFNLGtCQUFrQixDQUFDO0FBQ3pDLE9BQU8sU0FBUyxNQUFNLGtCQUFrQixDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUdqRCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxzREFBc0QsQ0FBQzs7Ozs7Ozs7O0FBRTdGOzs7R0FHRztBQUlILE1BQU0sT0FBTyxtQkFBbUI7SUFLOUIsWUFDVSx3QkFBa0QsRUFDbEQsZUFBZ0MsRUFDaEMsbUJBQXdDLEVBQ3hDLG1CQUF1QyxFQUN2Qyw0QkFBMEQsRUFDMUQsbUJBQXdDLEVBQ3hDLGtCQUFzQztRQU50Qyw2QkFBd0IsR0FBeEIsd0JBQXdCLENB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QUFDLG1CQUFtQixDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUM7YUFDeEY7WUFFRCxPQUFPLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNsQixDQUFDLENBQUMsQ0FDSCxDQUFDO0lBQ04sQ0FBQzs7aUhBcEtVLG1CQUFtQjtxSEFBbkIsbUJBQW1CLGNBRmxCLE1BQU07NEZBRVAsbUJBQW1CO2tCQUgvQixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFDQ09VTlRfU0VUVVBfSVRFTVMgfSBmcm9tICcuLi8uLi9tb2RlbHMvYWNjb3VudC1zZXR1cC9hY2NvdW50LXNldHVwLWl0ZW1zLmNvbnN0JztcbmltcG9ydCB7IEFjY291bnRTZXR1cEl0ZW0gfSBmcm9tICcuLi8uLi9tb2RlbHMvYWNjb3VudC1zZXR1cC9hY2NvdW50LXNldHVwLWl0ZW0nO1xuaW1wb3J0IHsgQWNjb3VudFNldHVwSXRlbXNFbnVtIH0gZnJvbSAnLi4vLi4vbW9kZWxzL2FjY291bnQtc2V0dXAvYWNjb3VudC1zZXR1cC1pdGVtcy5lbnVtJztcbmltcG9ydCB7IEJhbmtBY2NvdW50U2VydmljZSB9IGZyb20gJy4uL2h0dHAvYmFuay9iYW5rLWFjY291bnQvYmFuay1hY2NvdW50LnNlcnZpY2UnO1xuaW1wb3J0IHsgQ2xpZW50SW5jb21lVHlwZXMgfSBmcm9tICcuLi8uLi9tb2RlbHMvY2xpZW50L2NsaWVudC1pbmNvbWUtdHlwZXMnO1xuaW1wb3J0IHsgQ2xpZW50SW5jb21lVHlwZXNTZXJ2aWNlIH0gZnJvbSAnLi4vaHR0cC9maXJtL2NsaWVudC1pbmNvbWUvY2xpZW50LWluY29tZS10eXBlcy5zZXJ2aWNlJztcbmltcG9ydCB7IEluY29tZVNvdXJjZSB9IGZyb20gJy4uLy4uL21vZGVscy9pbmNvbWUtc291cmNlL2luY29tZS1zb3VyY2UnO1xuaW1wb3J0IHsgSW5jb21lU291cmNlQ29sbGVjdGlvbiB9IGZyb20gJy4uLy4uL2NvbGxlY3Rpb25zL2luY29tZS1zb3VyY2UuY29sbGVjdGlvbic7XG5pbXBvcnQgeyBJbmNvbWVTb3VyY2VTZXJ2aWNlIH0gZnJvbSAnLi4vaHR0cC9pbmNvbWUtc291cmNlL2luY29tZS1zb3VyY2Uuc2VydmljZSc7XG5pbXBvcnQgeyBJbmNvbWVTb3VyY2VUeXBlRW51bSB9IGZyb20gJy4uLy4uL2RiL0VudW1zL2luY29tZS1zb3VyY2UtdHlwZS5lbnVtJztcbmltcG9ydCB7IFByb3BlcnR5U2VydmljZSB9IGZyb20gJy4uL2h0dHAvcHJvcGVydHkvcHJvcGVydHkuc2VydmljZSc7XG5pbXBvcnQgeyBUcmFuc2FjdGlvbkFsbG9jYXRpb25TZXJ2aWNlIH0gZnJvbSAnLi4vaHR0cC90cmFuc2FjdGlvbi90cmFuc2FjdGlvbi1hbGxvY2F0aW9uL3RyYW5zYWN0aW9uLWFsbG9jYXRpb24uc2VydmljZSc7XG5pbXBvcnQgeyBjb21iaW5lTGF0ZXN0LCBPYnNlcnZhYmxlLCBvZiwgUmVwbGF5U3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgZmlsdGVyLCBtYXAsIG1lcmdlTWFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgQWNjb3VudFNldHVwSXRlbUNvbGxlY3Rpb24gfSBmcm9tICcuLi8uLi9jb2xsZWN0aW9ucy9hY2NvdW50LXNldHVwLWl0ZW0uY29sbGVjdGlvbic7XG5pbXBvcnQgeyBWZWhpY2xlQ2xhaW1TZXJ2aWNlIH0gZnJvbSAnLi4vaHR0cC92ZWhpY2xlL3ZlaGljbGUtY2xhaW0uc2VydmljZSc7XG5pbXBvcnQgZnJvbVBhaXJzIGZyb20gJ2xvZGFzaC9mcm9tUGFpcnMnO1xuaW1wb3J0IGNsb25lRGVlcCBmcm9tICdsb2Rhc2gvY2xvbmVEZWVwJztcbmltcG9ydCB7IHBsYWluVG9DbGFzcyB9IGZyb20gJ2NsYXNzLXRyYW5zZm9ybWVyJztcbmltcG9ydCB7IFRyYW5zYWN0aW9uU2VydmljZSB9IGZyb20gJy4uL2h0dHAvdHJhbnNhY3Rpb24vdHJhbnNhY3Rpb24uc2VydmljZSc7XG5pbXBvcnQgeyBUcmFuc2FjdGlvbiB9IGZyb20gJy4uLy4uL21vZGVscy90cmFuc2FjdGlvbi90cmFuc2FjdGlvbic7XG5pbXBvcnQgeyBUcmFuc2FjdGlvbkNvbGxlY3Rpb24gfSBmcm9tICcuLi8uLi9jb2xsZWN0aW9ucy90cmFuc2FjdGlvbi90cmFuc2FjdGlvbi5jb2xsZWN0aW9uJztcblxuLyoqXG4gKiBTZXJ2aWNlIGhhbmRsaW5nIHVzZXIncyBhY2NvdW50IHNldHVwIHByb2Nlc3MuXG4gKiBDaGVja3MgcmVxdWlyZWQgc3RlcHMgYW5kIHRoZWlyIGNvbXBsZXRpb25cbiAqL1xuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgQWNjb3VudFNldHVwU2VydmljZSB7XG4gIGNhY2hlOiBBY2NvdW50U2V0dXBJdGVtQ29sbGVjdGlvbjtcbiAgY2FjaGVTdWJqZWN0OiBSZXBsYXlTdWJqZWN0PEFjY291bnRTZXR1cEl0ZW1Db2xsZWN0aW9uPiA9IG5ldyBSZXBsYXlTdWJqZWN0PEFjY291bnRTZXR1cEl0ZW1Db2xsZWN0aW9uPigxKTtcbiAgY2xpZW50SW5jb21lVHlwZXNJZDogbnVtYmVyO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgY2xpZW50SW5jb21lVHlwZXNTZXJ2aWNlOiBDbGllbnRJbmNvbWVUeXBlc1NlcnZpY2UsXG4gICAgcHJpdmF0ZSBwcm9wZXJ0eVNlcnZpY2U6IFByb3BlcnR5U2VydmljZSxcbiAgICBwcml2YXRlIGluY29tZVNvdXJjZVNlcnZpY2U6IEluY29tZVNvdXJjZVNlcnZpY2UsXG4gICAgcHJpdmF0ZSBiYW5rQWNjb3VudHNTZXJ2aWNlOiBCYW5rQWNjb3VudFNlcnZpY2UsXG4gICAgcHJpdmF0ZSB0cmFuc2FjdGlvbkFsbG9jYXRpb25TZXJ2aWNlOiBUcmFuc2FjdGlvbkFsbG9jYXRpb25TZXJ2aWNlLFxuICAgIHByaXZhdGUgdmVoaWNsZUNsYWltU2VydmljZTogVmVoaWNsZUNsYWltU2VydmljZSxcbiAgICBwcml2YXRlIHRyYW5zYWN0aW9uU2VydmljZTogVHJhbnNhY3Rpb25TZXJ2aWNlXG4gICkge1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCBsaXN0IG9mIGFjY291bnQgc2V0dXAgaXRlbXMgZm9yIGN1cnJlbnQgdXNlclxuICAgKi9cbiAgZ2V0KCk6IE9ic2VydmFibGU8QWNjb3VudFNldHVwSXRlbUNvbGxlY3Rpb24+IHtcbiAgICBpZiAoIXRoaXMuY2FjaGUpIHtcbiAgICAgIHRoaXMuY2FjaGUgPSBuZXcgQWNjb3VudFNldHVwSXRlbUNvbGxlY3Rpb24oW10pO1xuXG4gICAgICB0aGlzLmNsaWVudEluY29tZVR5cGVzU2VydmljZS5nZXQoKVxuICAgICAgICAucGlwZShcbiAgICAgICAgICAvLyB3ZSBuZWVkIGFjY291bnQgc2V0dXAgb25seSB3aGVuIHVzZXIgc2VsZWN0ZWQgYXQgbGVhc3Qgb25lIGluY29tZSB0eXBlXG4gICAgICAgICAgZmlsdGVyKChpbmNvbWVUeXBlczogQ2xpZW50SW5jb21lVHlwZXMpID0+ICEhaW5jb21lVHlwZXMubGVuZ3RoKSxcbiAgICAgICAgICBtZXJnZU1hcCgoaW5jb21lVHlwZXM6IENsaWVudEluY29tZVR5cGVzKSA9PiB7XG4gICAgICAgICAgICB0aGlzLmNsaWVudEluY29tZVR5cGVzSWQgPSBpbmNvbWVUeXBlcy5pZDtcblxuICAgICAgICAgICAgcmV0dXJuIHRoaXMuY3JlYXRlQmF0Y2goaW5jb21lVHlwZXMpO1xuICAgICAgICAgIH0pXG4gICAgICAgIClcbiAgICAgICAgLnN1YnNjcmliZSgoaXRlbXM6IEFjY291bnRTZXR1cEl0ZW1Db2xsZWN0aW9uKSA9PiB7XG4gICAgICAgICAgc3dpdGNoICh0cnVlKSB7XG4gICAgICAgICAgICBjYXNlICF0aGlzLmNhY2hlOlxuICAgICAgICAgICAgY2FzZSB0aGlzLmNhY2hlLmdldEJ5KCdpc0NvbXBsZXRlZCcsIHRydWUpLmxlbmd0aCAhPT0gaXRlbXMuZ2V0QnkoJ2lzQ29tcGxldGVkJywgdHJ1ZSkubGVuZ3RoOlxuICAgICAgICAgICAgY2FzZSB0aGlzLmNhY2hlLmxlbmd0aCAhPT0gaXRlbXMubGVuZ3RoOlxuICAgICAgICAgICAgICB0aGlzLmNhY2hlID0gY2xvbmVEZWVwKGl0ZW1zKTtcbiAgICAgICAgICAgICAgdGhpcy5jYWNoZVN1YmplY3QubmV4dCh0aGlzLmNhY2hlKTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzLmNhY2hlU3ViamVjdC5hc09ic2VydmFibGUoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBQcmVwYXJlIGNsaWVudCBpbmNvbWUgdHlwZXMgdG8gdXBkYXRlIHRvIGhpZGUgZGVwZW5kZWQgYWNjb3VudCBzZXR1cCBpdGVtc1xuICAgKi9cbiAgcHJlcGFyZUluY29tZVR5cGVzKGl0ZW06IEFjY291bnRTZXR1cEl0ZW0pOiBDbGllbnRJbmNvbWVUeXBlcyB7XG4gICAgcmV0dXJuIHBsYWluVG9DbGFzcyhcbiAgICAgIENsaWVudEluY29tZVR5cGVzLFxuICAgICAgT2JqZWN0LmFzc2lnbih7aWQ6IHRoaXMuY2xpZW50SW5jb21lVHlwZXNJZH0sIGZyb21QYWlycyhpdGVtLmNsaWVudEluY29tZVR5cGVzLm1hcCgodHlwZTogc3RyaW5nKSA9PiBbdHlwZSwgZmFsc2VdKSkpXG4gICAgKVxuICB9XG5cbiAgLyoqXG4gICAqIEdldCBhIHNpbmdsZSBBY2NvdW50U2V0dXBJdGVtIGFuZCBjaGVjayBpdCdzIGNvbXBsZXRpb25cbiAgICovXG4gIHByaXZhdGUgY3JlYXRlKGl0ZW1UeXBlOiBBY2NvdW50U2V0dXBJdGVtc0VudW0sIHJlcXVlc3Q6IE9ic2VydmFibGU8b2JqZWN0W10+KTogT2JzZXJ2YWJsZTxBY2NvdW50U2V0dXBJdGVtPiB7XG4gICAgcmV0dXJuIHJlcXVlc3QucGlwZShcbiAgICAgIG1hcCgocmVzdWx0OiBvYmplY3RbXSk6IEFjY291bnRTZXR1cEl0ZW0gPT4ge1xuICAgICAgICBjb25zdCBpdGVtOiBBY2NvdW50U2V0dXBJdGVtID0gQUNDT1VOVF9TRVRVUF9JVEVNU1tpdGVtVHlwZV07XG5cbiAgICAgICAgaWYgKHJlc3VsdC5sZW5ndGgpIHtcbiAgICAgICAgICBpdGVtLmlzQ29tcGxldGVkID0gdHJ1ZTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBpdGVtLmlzQ29tcGxldGVkID0gZmFsc2U7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gaXRlbTtcbiAgICAgIH0pXG4gICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgYmF0Y2ggb2YgcmVxdWVzdHMgdG8gZ2V0IGxpc3Qgb2YgcmVxdWlyZWQgQWNjb3VudFNldHVwSXRlbSdzLlxuICAgKiBTb21lIGl0ZW1zIGFyZSBvcHRpb25hbCBhbmQgZGVwZW5kcyBvZiB1c2VyJ3MgY2xpZW50IGluY29tZSB0eXBlc1xuICAgKi9cbiAgcHJpdmF0ZSBjcmVhdGVCYXRjaChpbmNvbWVUeXBlczogQ2xpZW50SW5jb21lVHlwZXMpOiBPYnNlcnZhYmxlPEFjY291bnRTZXR1cEl0ZW1Db2xsZWN0aW9uPiB7XG4gICAgY29uc3QgYmF0Y2g6IE9ic2VydmFibGU8QWNjb3VudFNldHVwSXRlbT5bXSA9IFtdO1xuXG4gICAgLy8gU2FsYXJ5IGl0ZW0gaXMgY29tcGxldGVkIHdoZW4gdXNlciBhZGRlZCBzYWxhcnkgaW5jb21lIHNvdXJjZVxuICAgIGlmIChpbmNvbWVUeXBlcy5zYWxhcnkpIHtcbiAgICAgIGJhdGNoLnB1c2goXG4gICAgICAgIHRoaXMuY3JlYXRlKFxuICAgICAgICAgIEFjY291bnRTZXR1cEl0ZW1zRW51bS5TQUxBUlksXG4gICAgICAgICAgdGhpcy5nZXRJbmNvbWVTb3VyY2VzKHRydWUpXG4gICAgICAgIClcbiAgICAgICk7XG4gICAgfVxuXG4gICAgLy8gT3RoZXIgaW5jb21lIGl0ZW0gaXMgY29tcGxldGVkIHdoZW4gdXNlciBhZGRlZCBhdCBsZWFzdCBvbmUgb3RoZXIgaW5jb21lIHNvdXJjZVxuICAgIGlmIChpbmNvbWVUeXBlcy5kaXZpZGVuZHMgfHwgaW5jb21lVHlwZXMub3RoZXIpIHtcbiAgICAgIGJhdGNoLnB1c2goXG4gICAgICAgIHRoaXMuY3JlYXRlKFxuICAgICAgICAgIEFjY291bnRTZXR1cEl0ZW1zRW51bS5PVEhFUl9JTkNPTUUsXG4gICAgICAgICAgdGhpcy5nZXRJbmNvbWVTb3VyY2VzKClcbiAgICAgICAgKVxuICAgICAgKTtcbiAgICB9XG5cbiAgICAvLyBSZW50YWwgaW5jb21lIGl0ZW0gaXMgY29tcGxldGVkIHdoZW4gdXNlciBhZGRlZCBhdCBsZWFzdCBvbmUgcHJvcGVydHlcbiAgICBpZiAoaW5jb21lVHlwZXMucHJvcGVydHkpIHtcbiAgICAgIGJhdGNoLnB1c2godGhpcy5jcmVhdGUoQWNjb3VudFNldHVwSXRlbXNFbnVtLlBST1BFUlRZLCB0aGlzLnByb3BlcnR5U2VydmljZS5nZXQoKSkpO1xuICAgIH1cblxuICAgIC8vIEJhbmsgZmVlZHMgaXRlbSBpcyBjb21wbGV0ZWQgd2hlbiB1c2VyIGFkZGVkIGF0IGxlYXN0IG9uZSBiYW5rIGFjY291bnQgKGJhc2lxIG9yIG1hbnVhbClcbiAgICBiYXRjaC5wdXNoKHRoaXMuY3JlYXRlKEFjY291bnRTZXR1cEl0ZW1zRW51bS5CQU5LX0ZFRURTLCB0aGlzLmJhbmtBY2NvdW50c1NlcnZpY2UuZ2V0KCkpKTtcblxuICAgIC8vIExvZ2Jvb2sgaXRlbSBpcyBjb21wbGV0ZWQgd2hlbiB1c2VyIGhhcyBhdCBsZWFzdCBvbmUgdmVoaWNsZSBjbGFpbSB3aXRoIGFueSBtZXRob2QgKGtsbXMgb3IgbG9nYm9vaylcbiAgICBiYXRjaC5wdXNoKHRoaXMuZ2V0TG9nYm9va0l0ZW0oKSk7XG5cbiAgICAvLyBAVE9ETyB3YWl0aW5nIGZvciBzb2xlIHRhbmsgZm9yZWNhc3QgcGFnZVxuICAgIC8vIFNvbGUgaXRlbSBpcyBjb21wbGV0ZWQgd2hlbiB1c2VyIGFkZGVkIGF0IGxlYXN0IG9uZSBzb2xlIGluY29tZSBzb3VyY2VcbiAgICAvLyBpZiAoaW5jb21lVHlwZXMuc29sZVRyYWRlcikge1xuICAgIC8vICAgYmF0Y2gucHVzaChcbiAgICAvLyAgICAgdGhpcy5wcmVwYXJlSXRlbShcbiAgICAvLyAgICAgICBBY2NvdW50U2V0dXBJdGVtc0VudW0uU09MRV9JTkNPTUUsXG4gICAgLy8gICAgICAgdGhpcy5nZXRJbmNvbWVTb3VyY2VzQnlUeXBlKEluY29tZVNvdXJjZVR5cGVFbnVtLlNPTEUpXG4gICAgLy8gICAgIClcbiAgICAvLyAgICk7XG4gICAgLy8gfVxuXG4gICAgLy8gQWxsb2NhdGlvbiBpdGVtIGlzIGNvbXBsZXRlZCB3aGVuIHVzZXIgYWRkZWQgYXQgbGVhc3Qgb25lIHRyYW5zYWN0aW9uIGFsbG9jYXRpb25cbiAgICBiYXRjaC5wdXNoKHRoaXMuY3JlYXRlKEFjY291bnRTZXR1cEl0ZW1zRW51bS5UUkFOU0FDVElPTiwgdGhpcy50cmFuc2FjdGlvbkFsbG9jYXRpb25TZXJ2aWNlLmdldCgpKSk7XG5cbiAgICByZXR1cm4gY29tYmluZUxhdGVzdChiYXRjaCkucGlwZShtYXAoKGl0ZW1zOiBBY2NvdW50U2V0dXBJdGVtW10pID0+IG5ldyBBY2NvdW50U2V0dXBJdGVtQ29sbGVjdGlvbihpdGVtcykpKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBAVE9ETyBBbGV4OiB3b3JrIHdpdGggY29sbGVjdGlvbiB3aGVuIHNlcnZpY2VzIHJlZmFjdG9yZWRcbiAgICogQFRPRE8gVmlrOiB3YWl0aW5nIGZvciBpbmNvbWUgc291cmNlcyByZWZhY3RvcmluZ1xuICAgKi9cbiAgcHJpdmF0ZSBnZXRJbmNvbWVTb3VyY2VzKGlzU2FsYXJ5OiBib29sZWFuID0gZmFsc2UpOiBPYnNlcnZhYmxlPEluY29tZVNvdXJjZVtdPiB7XG4gICAgcmV0dXJuIHRoaXMuaW5jb21lU291cmNlU2VydmljZS5nZXQoKS5waXBlKFxuICAgICAgbWFwKChpbmNvbWVTb3VyY2VzOiBJbmNvbWVTb3VyY2VbXSk6IEluY29tZVNvdXJjZVtdID0+IHtcbiAgICAgICAgY29uc3QgY29sbGVjdGlvbjogSW5jb21lU291cmNlQ29sbGVjdGlvbiA9IG5ldyBJbmNvbWVTb3VyY2VDb2xsZWN0aW9uKGluY29tZVNvdXJjZXMpO1xuICAgICAgICBpZiAoaXNTYWxhcnkpIHtcbiAgICAgICAgICByZXR1cm4gY29sbGVjdGlvbi5nZXRTYWxhcnkoKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBjb2xsZWN0aW9uLml0ZW1zLmZpbHRlcigoaW5jb21lU291cmNlOiBJbmNvbWVTb3VyY2UpID0+ICFpbmNvbWVTb3VyY2UuaXNTYWxhcnlJbmNvbWUoKSAmJiAhaW5jb21lU291cmNlLmlzU29sZUluY29tZSgpKTtcbiAgICAgIH0pXG4gICAgKVxuICB9XG5cbiAgLyoqXG4gICAqIFNob3cgbG9nYm9vayBpdGVtIHdoZW4gdXNlciBoYXMgYXQgbGVhc3QgMSB2ZWhpY2xlIHRyYW5zYWN0aW9uXG4gICAqL1xuICBwcml2YXRlIGdldExvZ2Jvb2tJdGVtKCk6IE9ic2VydmFibGU8QWNjb3VudFNldHVwSXRlbT4ge1xuICAgIHJldHVybiB0aGlzLnRyYW5zYWN0aW9uU2VydmljZS5nZXQoKVxuICAgICAgLnBpcGUoXG4gICAgICAgIC8vIEBUT0RPIEFsZXg6IHJlbW92ZSBtYXAgd2hlbiBzZXJ2aWNlcyBzdGFydCB3b3JrIHdpdGggY29sbGVjdGlvbnNcbiAgICAgICAgbWFwKCh0cmFuc2FjdGlvbnM6IFRyYW5zYWN0aW9uW10pID0+IG5ldyBUcmFuc2FjdGlvbkNvbGxlY3Rpb24odHJhbnNhY3Rpb25zKSksXG4gICAgICAgIG1lcmdlTWFwKCh0cmFuc2FjdGlvbnM6IFRyYW5zYWN0aW9uQ29sbGVjdGlvbikgPT4ge1xuICAgICAgICAgIGlmICh0cmFuc2FjdGlvbnMuZ2V0VmVoaWNsZVRyYW5zYWN0aW9ucygpLmxlbmd0aCkge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMuY3JlYXRlKEFjY291bnRTZXR1cEl0ZW1zRW51bS5XT1JLX0xPR0JPT0ssIHRoaXMudmVoaWNsZUNsYWltU2VydmljZS5nZXQoKSk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgcmV0dXJuIG9mKG51bGwpO1xuICAgICAgICB9KVxuICAgICAgKTtcbiAgfVxufVxuIl19
154
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNjb3VudC1zZXR1cC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHQtY29yZS9zcmMvbGliL3NlcnZpY2VzL2FjY291bnQtc2V0dXAvYWNjb3VudC1zZXR1cC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sc0RBQXNELENBQUM7QUFFM0YsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0scURBQXFELENBQUM7QUFFNUYsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0seUNBQXlDLENBQUM7QUFHNUUsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sNENBQTRDLENBQUM7QUFLcEYsT0FBTyxFQUFFLGFBQWEsRUFBYyxFQUFFLEVBQUUsYUFBYSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3BFLE9BQU8sRUFBRSxNQUFNLEVBQUUsR0FBRyxFQUFFLFFBQVEsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3ZELE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLGlEQUFpRCxDQUFDO0FBRTdGLE9BQU8sU0FBUyxNQUFNLGtCQUFrQixDQUFDO0FBQ3pDLE9BQU8sU0FBUyxNQUFNLGtCQUFrQixDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUdqRCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxzREFBc0QsQ0FBQzs7Ozs7Ozs7O0FBRTdGOzs7R0FHRztBQUlILE1BQU0sT0FBTyxtQkFBbUI7SUFLOUIsWUFDVSx3QkFBa0QsRUFDbEQsZUFBZ0MsRUFDaEMsbUJBQXdDLEVBQ3hDLG1CQUF1QyxFQUN2Qyw0QkFBMEQsRUFDMUQsbUJBQXdDLEVBQ3hDLGtCQUFzQztRQU50Qyw2QkFBd0IsR0FBeEIsd0JBQXdCLENB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QUFDLG1CQUFtQixDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUM7YUFDeEY7WUFFRCxPQUFPLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNsQixDQUFDLENBQUMsQ0FDSCxDQUFDO0lBQ04sQ0FBQzs7aUhBcEtVLG1CQUFtQjtxSEFBbkIsbUJBQW1CLGNBRmxCLE1BQU07NEZBRVAsbUJBQW1CO2tCQUgvQixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFDQ09VTlRfU0VUVVBfSVRFTVMgfSBmcm9tICcuLi8uLi9tb2RlbHMvYWNjb3VudC1zZXR1cC9hY2NvdW50LXNldHVwLWl0ZW1zLmNvbnN0JztcbmltcG9ydCB7IEFjY291bnRTZXR1cEl0ZW0gfSBmcm9tICcuLi8uLi9tb2RlbHMvYWNjb3VudC1zZXR1cC9hY2NvdW50LXNldHVwLWl0ZW0nO1xuaW1wb3J0IHsgQWNjb3VudFNldHVwSXRlbXNFbnVtIH0gZnJvbSAnLi4vLi4vbW9kZWxzL2FjY291bnQtc2V0dXAvYWNjb3VudC1zZXR1cC1pdGVtcy5lbnVtJztcbmltcG9ydCB7IEJhbmtBY2NvdW50U2VydmljZSB9IGZyb20gJy4uL2h0dHAvYmFuay9iYW5rLWFjY291bnQvYmFuay1hY2NvdW50LnNlcnZpY2UnO1xuaW1wb3J0IHsgQ2xpZW50SW5jb21lVHlwZXMgfSBmcm9tICcuLi8uLi9tb2RlbHMvY2xpZW50L2NsaWVudC1pbmNvbWUtdHlwZXMnO1xuaW1wb3J0IHsgQ2xpZW50SW5jb21lVHlwZXNTZXJ2aWNlIH0gZnJvbSAnLi4vaHR0cC9maXJtL2NsaWVudC1pbmNvbWUvY2xpZW50LWluY29tZS10eXBlcy5zZXJ2aWNlJztcbmltcG9ydCB7IEluY29tZVNvdXJjZSB9IGZyb20gJy4uLy4uL21vZGVscy9pbmNvbWUtc291cmNlL2luY29tZS1zb3VyY2UnO1xuaW1wb3J0IHsgSW5jb21lU291cmNlQ29sbGVjdGlvbiB9IGZyb20gJy4uLy4uL2NvbGxlY3Rpb25zL2luY29tZS1zb3VyY2UuY29sbGVjdGlvbic7XG5pbXBvcnQgeyBJbmNvbWVTb3VyY2VTZXJ2aWNlIH0gZnJvbSAnLi4vaHR0cC9pbmNvbWUtc291cmNlL2luY29tZS1zb3VyY2Uuc2VydmljZSc7XG5pbXBvcnQgeyBJbmNvbWVTb3VyY2VUeXBlRW51bSB9IGZyb20gJy4uLy4uL2RiL0VudW1zL2luY29tZS1zb3VyY2UtdHlwZS5lbnVtJztcbmltcG9ydCB7IFByb3BlcnR5U2VydmljZSB9IGZyb20gJy4uL2h0dHAvcHJvcGVydHkvcHJvcGVydHkuc2VydmljZSc7XG5pbXBvcnQgeyBUcmFuc2FjdGlvbkFsbG9jYXRpb25TZXJ2aWNlIH0gZnJvbSAnLi4vaHR0cC90cmFuc2FjdGlvbi90cmFuc2FjdGlvbi1hbGxvY2F0aW9uL3RyYW5zYWN0aW9uLWFsbG9jYXRpb24uc2VydmljZSc7XG5pbXBvcnQgeyBjb21iaW5lTGF0ZXN0LCBPYnNlcnZhYmxlLCBvZiwgUmVwbGF5U3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgZmlsdGVyLCBtYXAsIG1lcmdlTWFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgQWNjb3VudFNldHVwSXRlbUNvbGxlY3Rpb24gfSBmcm9tICcuLi8uLi9jb2xsZWN0aW9ucy9hY2NvdW50LXNldHVwLWl0ZW0uY29sbGVjdGlvbic7XG5pbXBvcnQgeyBWZWhpY2xlQ2xhaW1TZXJ2aWNlIH0gZnJvbSAnLi4vaHR0cC92ZWhpY2xlL3ZlaGljbGUtY2xhaW0uc2VydmljZSc7XG5pbXBvcnQgZnJvbVBhaXJzIGZyb20gJ2xvZGFzaC9mcm9tUGFpcnMnO1xuaW1wb3J0IGNsb25lRGVlcCBmcm9tICdsb2Rhc2gvY2xvbmVEZWVwJztcbmltcG9ydCB7IHBsYWluVG9DbGFzcyB9IGZyb20gJ2NsYXNzLXRyYW5zZm9ybWVyJztcbmltcG9ydCB7IFRyYW5zYWN0aW9uU2VydmljZSB9IGZyb20gJy4uL2h0dHAvdHJhbnNhY3Rpb24vdHJhbnNhY3Rpb24uc2VydmljZSc7XG5pbXBvcnQgeyBUcmFuc2FjdGlvbiB9IGZyb20gJy4uLy4uL21vZGVscy90cmFuc2FjdGlvbi90cmFuc2FjdGlvbic7XG5pbXBvcnQgeyBUcmFuc2FjdGlvbkNvbGxlY3Rpb24gfSBmcm9tICcuLi8uLi9jb2xsZWN0aW9ucy90cmFuc2FjdGlvbi90cmFuc2FjdGlvbi5jb2xsZWN0aW9uJztcblxuLyoqXG4gKiBTZXJ2aWNlIGhhbmRsaW5nIHVzZXIncyBhY2NvdW50IHNldHVwIHByb2Nlc3MuXG4gKiBDaGVja3MgcmVxdWlyZWQgc3RlcHMgYW5kIHRoZWlyIGNvbXBsZXRpb25cbiAqL1xuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgQWNjb3VudFNldHVwU2VydmljZSB7XG4gIGNhY2hlOiBBY2NvdW50U2V0dXBJdGVtQ29sbGVjdGlvbjtcbiAgY2FjaGVTdWJqZWN0OiBSZXBsYXlTdWJqZWN0PEFjY291bnRTZXR1cEl0ZW1Db2xsZWN0aW9uPiA9IG5ldyBSZXBsYXlTdWJqZWN0PEFjY291bnRTZXR1cEl0ZW1Db2xsZWN0aW9uPigxKTtcbiAgY2xpZW50SW5jb21lVHlwZXNJZDogbnVtYmVyO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgY2xpZW50SW5jb21lVHlwZXNTZXJ2aWNlOiBDbGllbnRJbmNvbWVUeXBlc1NlcnZpY2UsXG4gICAgcHJpdmF0ZSBwcm9wZXJ0eVNlcnZpY2U6IFByb3BlcnR5U2VydmljZSxcbiAgICBwcml2YXRlIGluY29tZVNvdXJjZVNlcnZpY2U6IEluY29tZVNvdXJjZVNlcnZpY2UsXG4gICAgcHJpdmF0ZSBiYW5rQWNjb3VudHNTZXJ2aWNlOiBCYW5rQWNjb3VudFNlcnZpY2UsXG4gICAgcHJpdmF0ZSB0cmFuc2FjdGlvbkFsbG9jYXRpb25TZXJ2aWNlOiBUcmFuc2FjdGlvbkFsbG9jYXRpb25TZXJ2aWNlLFxuICAgIHByaXZhdGUgdmVoaWNsZUNsYWltU2VydmljZTogVmVoaWNsZUNsYWltU2VydmljZSxcbiAgICBwcml2YXRlIHRyYW5zYWN0aW9uU2VydmljZTogVHJhbnNhY3Rpb25TZXJ2aWNlXG4gICkge1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCBsaXN0IG9mIGFjY291bnQgc2V0dXAgaXRlbXMgZm9yIGN1cnJlbnQgdXNlclxuICAgKi9cbiAgZ2V0KCk6IE9ic2VydmFibGU8QWNjb3VudFNldHVwSXRlbUNvbGxlY3Rpb24+IHtcbiAgICBpZiAoIXRoaXMuY2FjaGUpIHtcbiAgICAgIHRoaXMuY2FjaGUgPSBuZXcgQWNjb3VudFNldHVwSXRlbUNvbGxlY3Rpb24oW10pO1xuXG4gICAgICB0aGlzLmNsaWVudEluY29tZVR5cGVzU2VydmljZS5nZXQoKVxuICAgICAgICAucGlwZShcbiAgICAgICAgICAvLyB3ZSBuZWVkIGFjY291bnQgc2V0dXAgb25seSB3aGVuIHVzZXIgc2VsZWN0ZWQgYXQgbGVhc3Qgb25lIGluY29tZSB0eXBlXG4gICAgICAgICAgZmlsdGVyKChpbmNvbWVUeXBlczogQ2xpZW50SW5jb21lVHlwZXMpID0+ICEhaW5jb21lVHlwZXMubGVuZ3RoKSxcbiAgICAgICAgICBtZXJnZU1hcCgoaW5jb21lVHlwZXM6IENsaWVudEluY29tZVR5cGVzKSA9PiB7XG4gICAgICAgICAgICB0aGlzLmNsaWVudEluY29tZVR5cGVzSWQgPSBpbmNvbWVUeXBlcy5pZDtcblxuICAgICAgICAgICAgcmV0dXJuIHRoaXMuY3JlYXRlQmF0Y2goaW5jb21lVHlwZXMpO1xuICAgICAgICAgIH0pXG4gICAgICAgIClcbiAgICAgICAgLnN1YnNjcmliZSgoaXRlbXM6IEFjY291bnRTZXR1cEl0ZW1Db2xsZWN0aW9uKSA9PiB7XG4gICAgICAgICAgc3dpdGNoICh0cnVlKSB7XG4gICAgICAgICAgICBjYXNlICF0aGlzLmNhY2hlOlxuICAgICAgICAgICAgY2FzZSB0aGlzLmNhY2hlLmZpbHRlckJ5KCdpc0NvbXBsZXRlZCcsIHRydWUpLmxlbmd0aCAhPT0gaXRlbXMuZmlsdGVyQnkoJ2lzQ29tcGxldGVkJywgdHJ1ZSkubGVuZ3RoOlxuICAgICAgICAgICAgY2FzZSB0aGlzLmNhY2hlLmxlbmd0aCAhPT0gaXRlbXMubGVuZ3RoOlxuICAgICAgICAgICAgICB0aGlzLmNhY2hlID0gY2xvbmVEZWVwKGl0ZW1zKTtcbiAgICAgICAgICAgICAgdGhpcy5jYWNoZVN1YmplY3QubmV4dCh0aGlzLmNhY2hlKTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzLmNhY2hlU3ViamVjdC5hc09ic2VydmFibGUoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBQcmVwYXJlIGNsaWVudCBpbmNvbWUgdHlwZXMgdG8gdXBkYXRlIHRvIGhpZGUgZGVwZW5kZWQgYWNjb3VudCBzZXR1cCBpdGVtc1xuICAgKi9cbiAgcHJlcGFyZUluY29tZVR5cGVzKGl0ZW06IEFjY291bnRTZXR1cEl0ZW0pOiBDbGllbnRJbmNvbWVUeXBlcyB7XG4gICAgcmV0dXJuIHBsYWluVG9DbGFzcyhcbiAgICAgIENsaWVudEluY29tZVR5cGVzLFxuICAgICAgT2JqZWN0LmFzc2lnbih7aWQ6IHRoaXMuY2xpZW50SW5jb21lVHlwZXNJZH0sIGZyb21QYWlycyhpdGVtLmNsaWVudEluY29tZVR5cGVzLm1hcCgodHlwZTogc3RyaW5nKSA9PiBbdHlwZSwgZmFsc2VdKSkpXG4gICAgKVxuICB9XG5cbiAgLyoqXG4gICAqIEdldCBhIHNpbmdsZSBBY2NvdW50U2V0dXBJdGVtIGFuZCBjaGVjayBpdCdzIGNvbXBsZXRpb25cbiAgICovXG4gIHByaXZhdGUgY3JlYXRlKGl0ZW1UeXBlOiBBY2NvdW50U2V0dXBJdGVtc0VudW0sIHJlcXVlc3Q6IE9ic2VydmFibGU8b2JqZWN0W10+KTogT2JzZXJ2YWJsZTxBY2NvdW50U2V0dXBJdGVtPiB7XG4gICAgcmV0dXJuIHJlcXVlc3QucGlwZShcbiAgICAgIG1hcCgocmVzdWx0OiBvYmplY3RbXSk6IEFjY291bnRTZXR1cEl0ZW0gPT4ge1xuICAgICAgICBjb25zdCBpdGVtOiBBY2NvdW50U2V0dXBJdGVtID0gQUNDT1VOVF9TRVRVUF9JVEVNU1tpdGVtVHlwZV07XG5cbiAgICAgICAgaWYgKHJlc3VsdC5sZW5ndGgpIHtcbiAgICAgICAgICBpdGVtLmlzQ29tcGxldGVkID0gdHJ1ZTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBpdGVtLmlzQ29tcGxldGVkID0gZmFsc2U7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gaXRlbTtcbiAgICAgIH0pXG4gICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgYmF0Y2ggb2YgcmVxdWVzdHMgdG8gZ2V0IGxpc3Qgb2YgcmVxdWlyZWQgQWNjb3VudFNldHVwSXRlbSdzLlxuICAgKiBTb21lIGl0ZW1zIGFyZSBvcHRpb25hbCBhbmQgZGVwZW5kcyBvZiB1c2VyJ3MgY2xpZW50IGluY29tZSB0eXBlc1xuICAgKi9cbiAgcHJpdmF0ZSBjcmVhdGVCYXRjaChpbmNvbWVUeXBlczogQ2xpZW50SW5jb21lVHlwZXMpOiBPYnNlcnZhYmxlPEFjY291bnRTZXR1cEl0ZW1Db2xsZWN0aW9uPiB7XG4gICAgY29uc3QgYmF0Y2g6IE9ic2VydmFibGU8QWNjb3VudFNldHVwSXRlbT5bXSA9IFtdO1xuXG4gICAgLy8gU2FsYXJ5IGl0ZW0gaXMgY29tcGxldGVkIHdoZW4gdXNlciBhZGRlZCBzYWxhcnkgaW5jb21lIHNvdXJjZVxuICAgIGlmIChpbmNvbWVUeXBlcy5zYWxhcnkpIHtcbiAgICAgIGJhdGNoLnB1c2goXG4gICAgICAgIHRoaXMuY3JlYXRlKFxuICAgICAgICAgIEFjY291bnRTZXR1cEl0ZW1zRW51bS5TQUxBUlksXG4gICAgICAgICAgdGhpcy5nZXRJbmNvbWVTb3VyY2VzKHRydWUpXG4gICAgICAgIClcbiAgICAgICk7XG4gICAgfVxuXG4gICAgLy8gT3RoZXIgaW5jb21lIGl0ZW0gaXMgY29tcGxldGVkIHdoZW4gdXNlciBhZGRlZCBhdCBsZWFzdCBvbmUgb3RoZXIgaW5jb21lIHNvdXJjZVxuICAgIGlmIChpbmNvbWVUeXBlcy5kaXZpZGVuZHMgfHwgaW5jb21lVHlwZXMub3RoZXIpIHtcbiAgICAgIGJhdGNoLnB1c2goXG4gICAgICAgIHRoaXMuY3JlYXRlKFxuICAgICAgICAgIEFjY291bnRTZXR1cEl0ZW1zRW51bS5PVEhFUl9JTkNPTUUsXG4gICAgICAgICAgdGhpcy5nZXRJbmNvbWVTb3VyY2VzKClcbiAgICAgICAgKVxuICAgICAgKTtcbiAgICB9XG5cbiAgICAvLyBSZW50YWwgaW5jb21lIGl0ZW0gaXMgY29tcGxldGVkIHdoZW4gdXNlciBhZGRlZCBhdCBsZWFzdCBvbmUgcHJvcGVydHlcbiAgICBpZiAoaW5jb21lVHlwZXMucHJvcGVydHkpIHtcbiAgICAgIGJhdGNoLnB1c2godGhpcy5jcmVhdGUoQWNjb3VudFNldHVwSXRlbXNFbnVtLlBST1BFUlRZLCB0aGlzLnByb3BlcnR5U2VydmljZS5nZXQoKSkpO1xuICAgIH1cblxuICAgIC8vIEJhbmsgZmVlZHMgaXRlbSBpcyBjb21wbGV0ZWQgd2hlbiB1c2VyIGFkZGVkIGF0IGxlYXN0IG9uZSBiYW5rIGFjY291bnQgKGJhc2lxIG9yIG1hbnVhbClcbiAgICBiYXRjaC5wdXNoKHRoaXMuY3JlYXRlKEFjY291bnRTZXR1cEl0ZW1zRW51bS5CQU5LX0ZFRURTLCB0aGlzLmJhbmtBY2NvdW50c1NlcnZpY2UuZ2V0KCkpKTtcblxuICAgIC8vIExvZ2Jvb2sgaXRlbSBpcyBjb21wbGV0ZWQgd2hlbiB1c2VyIGhhcyBhdCBsZWFzdCBvbmUgdmVoaWNsZSBjbGFpbSB3aXRoIGFueSBtZXRob2QgKGtsbXMgb3IgbG9nYm9vaylcbiAgICBiYXRjaC5wdXNoKHRoaXMuZ2V0TG9nYm9va0l0ZW0oKSk7XG5cbiAgICAvLyBAVE9ETyB3YWl0aW5nIGZvciBzb2xlIHRhbmsgZm9yZWNhc3QgcGFnZVxuICAgIC8vIFNvbGUgaXRlbSBpcyBjb21wbGV0ZWQgd2hlbiB1c2VyIGFkZGVkIGF0IGxlYXN0IG9uZSBzb2xlIGluY29tZSBzb3VyY2VcbiAgICAvLyBpZiAoaW5jb21lVHlwZXMuc29sZVRyYWRlcikge1xuICAgIC8vICAgYmF0Y2gucHVzaChcbiAgICAvLyAgICAgdGhpcy5wcmVwYXJlSXRlbShcbiAgICAvLyAgICAgICBBY2NvdW50U2V0dXBJdGVtc0VudW0uU09MRV9JTkNPTUUsXG4gICAgLy8gICAgICAgdGhpcy5nZXRJbmNvbWVTb3VyY2VzQnlUeXBlKEluY29tZVNvdXJjZVR5cGVFbnVtLlNPTEUpXG4gICAgLy8gICAgIClcbiAgICAvLyAgICk7XG4gICAgLy8gfVxuXG4gICAgLy8gQWxsb2NhdGlvbiBpdGVtIGlzIGNvbXBsZXRlZCB3aGVuIHVzZXIgYWRkZWQgYXQgbGVhc3Qgb25lIHRyYW5zYWN0aW9uIGFsbG9jYXRpb25cbiAgICBiYXRjaC5wdXNoKHRoaXMuY3JlYXRlKEFjY291bnRTZXR1cEl0ZW1zRW51bS5UUkFOU0FDVElPTiwgdGhpcy50cmFuc2FjdGlvbkFsbG9jYXRpb25TZXJ2aWNlLmdldCgpKSk7XG5cbiAgICByZXR1cm4gY29tYmluZUxhdGVzdChiYXRjaCkucGlwZShtYXAoKGl0ZW1zOiBBY2NvdW50U2V0dXBJdGVtW10pID0+IG5ldyBBY2NvdW50U2V0dXBJdGVtQ29sbGVjdGlvbihpdGVtcykpKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBAVE9ETyBBbGV4OiB3b3JrIHdpdGggY29sbGVjdGlvbiB3aGVuIHNlcnZpY2VzIHJlZmFjdG9yZWRcbiAgICogQFRPRE8gVmlrOiB3YWl0aW5nIGZvciBpbmNvbWUgc291cmNlcyByZWZhY3RvcmluZ1xuICAgKi9cbiAgcHJpdmF0ZSBnZXRJbmNvbWVTb3VyY2VzKGlzU2FsYXJ5OiBib29sZWFuID0gZmFsc2UpOiBPYnNlcnZhYmxlPEluY29tZVNvdXJjZVtdPiB7XG4gICAgcmV0dXJuIHRoaXMuaW5jb21lU291cmNlU2VydmljZS5nZXQoKS5waXBlKFxuICAgICAgbWFwKChpbmNvbWVTb3VyY2VzOiBJbmNvbWVTb3VyY2VbXSk6IEluY29tZVNvdXJjZVtdID0+IHtcbiAgICAgICAgY29uc3QgY29sbGVjdGlvbjogSW5jb21lU291cmNlQ29sbGVjdGlvbiA9IG5ldyBJbmNvbWVTb3VyY2VDb2xsZWN0aW9uKGluY29tZVNvdXJjZXMpO1xuICAgICAgICBpZiAoaXNTYWxhcnkpIHtcbiAgICAgICAgICByZXR1cm4gY29sbGVjdGlvbi5nZXRTYWxhcnkoKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBjb2xsZWN0aW9uLml0ZW1zLmZpbHRlcigoaW5jb21lU291cmNlOiBJbmNvbWVTb3VyY2UpID0+ICFpbmNvbWVTb3VyY2UuaXNTYWxhcnlJbmNvbWUoKSAmJiAhaW5jb21lU291cmNlLmlzU29sZUluY29tZSgpKTtcbiAgICAgIH0pXG4gICAgKVxuICB9XG5cbiAgLyoqXG4gICAqIFNob3cgbG9nYm9vayBpdGVtIHdoZW4gdXNlciBoYXMgYXQgbGVhc3QgMSB2ZWhpY2xlIHRyYW5zYWN0aW9uXG4gICAqL1xuICBwcml2YXRlIGdldExvZ2Jvb2tJdGVtKCk6IE9ic2VydmFibGU8QWNjb3VudFNldHVwSXRlbT4ge1xuICAgIHJldHVybiB0aGlzLnRyYW5zYWN0aW9uU2VydmljZS5nZXQoKVxuICAgICAgLnBpcGUoXG4gICAgICAgIC8vIEBUT0RPIEFsZXg6IHJlbW92ZSBtYXAgd2hlbiBzZXJ2aWNlcyBzdGFydCB3b3JrIHdpdGggY29sbGVjdGlvbnNcbiAgICAgICAgbWFwKCh0cmFuc2FjdGlvbnM6IFRyYW5zYWN0aW9uW10pID0+IG5ldyBUcmFuc2FjdGlvbkNvbGxlY3Rpb24odHJhbnNhY3Rpb25zKSksXG4gICAgICAgIG1lcmdlTWFwKCh0cmFuc2FjdGlvbnM6IFRyYW5zYWN0aW9uQ29sbGVjdGlvbikgPT4ge1xuICAgICAgICAgIGlmICh0cmFuc2FjdGlvbnMuZ2V0VmVoaWNsZVRyYW5zYWN0aW9ucygpLmxlbmd0aCkge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMuY3JlYXRlKEFjY291bnRTZXR1cEl0ZW1zRW51bS5XT1JLX0xPR0JPT0ssIHRoaXMudmVoaWNsZUNsYWltU2VydmljZS5nZXQoKSk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgcmV0dXJuIG9mKG51bGwpO1xuICAgICAgICB9KVxuICAgICAgKTtcbiAgfVxufVxuIl19
@@ -37,9 +37,9 @@ export class AssetsService {
37
37
  return this.http.delete(`${this.environment.apiV2}/${asset.entityType}/${entityId}/${asset.type}/${asset.id}`);
38
38
  }
39
39
  }
40
- AssetsService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: AssetsService, deps: [{ token: i1.HttpClient }, { token: i2.UserSwitcherService }, { token: 'environment' }], target: i0.ɵɵFactoryTarget.Injectable });
41
- AssetsService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: AssetsService, providedIn: 'root' });
42
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: AssetsService, decorators: [{
40
+ AssetsService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: AssetsService, deps: [{ token: i1.HttpClient }, { token: i2.UserSwitcherService }, { token: 'environment' }], target: i0.ɵɵFactoryTarget.Injectable });
41
+ AssetsService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: AssetsService, providedIn: 'root' });
42
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: AssetsService, decorators: [{
43
43
  type: Injectable,
44
44
  args: [{
45
45
  providedIn: 'root'
@@ -48,9 +48,9 @@ export class AuthService {
48
48
  location.replace(url);
49
49
  }
50
50
  }
51
- AuthService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: AuthService, deps: [{ token: i1.HttpClient }, { token: i2.JwtService }, { token: i3.EventDispatcherService }, { token: 'environment' }], target: i0.ɵɵFactoryTarget.Injectable });
52
- AuthService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: AuthService, providedIn: 'root' });
53
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: AuthService, decorators: [{
51
+ AuthService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: AuthService, deps: [{ token: i1.HttpClient }, { token: i2.JwtService }, { token: i3.EventDispatcherService }, { token: 'environment' }], target: i0.ɵɵFactoryTarget.Injectable });
52
+ AuthService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: AuthService, providedIn: 'root' });
53
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: AuthService, decorators: [{
54
54
  type: Injectable,
55
55
  args: [{
56
56
  providedIn: 'root'
@@ -25,9 +25,9 @@ export class JwtService extends JwtHelperService {
25
25
  return this.getUser().id === userId;
26
26
  }
27
27
  }
28
- JwtService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: JwtService, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
29
- JwtService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: JwtService, providedIn: 'root' });
30
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: JwtService, decorators: [{
28
+ JwtService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: JwtService, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
29
+ JwtService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: JwtService, providedIn: 'root' });
30
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: JwtService, decorators: [{
31
31
  type: Injectable,
32
32
  args: [{
33
33
  providedIn: 'root'
@@ -19,9 +19,9 @@ export class BankAccountCalculationService {
19
19
  return bankAccounts.currentBalance - this.getTaxTankBalance(bankAccounts.getLoanAccounts(), bankTransactions, allocations);
20
20
  }
21
21
  }
22
- BankAccountCalculationService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: BankAccountCalculationService, deps: [{ token: i1.BankTransactionCalculationService }], target: i0.ɵɵFactoryTarget.Injectable });
23
- BankAccountCalculationService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: BankAccountCalculationService, providedIn: 'root' });
24
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: BankAccountCalculationService, decorators: [{
22
+ BankAccountCalculationService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: BankAccountCalculationService, deps: [{ token: i1.BankTransactionCalculationService }], target: i0.ɵɵFactoryTarget.Injectable });
23
+ BankAccountCalculationService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: BankAccountCalculationService, providedIn: 'root' });
24
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: BankAccountCalculationService, decorators: [{
25
25
  type: Injectable,
26
26
  args: [{
27
27
  providedIn: 'root'
@@ -54,9 +54,9 @@ export class BankTransactionCalculationService {
54
54
  return allocations.getByBankTransactionsIds(bankTransactions.debitTransactions.getIds()).amount;
55
55
  }
56
56
  }
57
- BankTransactionCalculationService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: BankTransactionCalculationService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
58
- BankTransactionCalculationService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: BankTransactionCalculationService, providedIn: 'root' });
59
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: BankTransactionCalculationService, decorators: [{
57
+ BankTransactionCalculationService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: BankTransactionCalculationService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
58
+ BankTransactionCalculationService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: BankTransactionCalculationService, providedIn: 'root' });
59
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: BankTransactionCalculationService, decorators: [{
60
60
  type: Injectable,
61
61
  args: [{
62
62
  providedIn: 'root'
@@ -19,9 +19,9 @@ export class EventDispatcherService {
19
19
  this.eventSubject.next(event);
20
20
  }
21
21
  }
22
- EventDispatcherService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: EventDispatcherService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
23
- EventDispatcherService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: EventDispatcherService, providedIn: 'root' });
24
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: EventDispatcherService, decorators: [{
22
+ EventDispatcherService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: EventDispatcherService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
23
+ EventDispatcherService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: EventDispatcherService, providedIn: 'root' });
24
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: EventDispatcherService, decorators: [{
25
25
  type: Injectable,
26
26
  args: [{
27
27
  providedIn: 'root'
@@ -4,6 +4,9 @@ import { map } from 'rxjs/operators';
4
4
  import { EventSourcePolyfill } from 'event-source-polyfill/src/eventsource.min.js';
5
5
  import * as i0 from "@angular/core";
6
6
  import * as i1 from "../auth/jwt.service";
7
+ /**
8
+ * server sent events service
9
+ */
7
10
  export class SseService {
8
11
  constructor(zone, jwtService, environment) {
9
12
  this.zone = zone;
@@ -32,9 +35,9 @@ export class SseService {
32
35
  }));
33
36
  }
34
37
  }
35
- SseService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SseService, deps: [{ token: i0.NgZone }, { token: i1.JwtService }, { token: 'environment' }], target: i0.ɵɵFactoryTarget.Injectable });
36
- SseService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SseService, providedIn: 'root' });
37
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SseService, decorators: [{
38
+ SseService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: SseService, deps: [{ token: i0.NgZone }, { token: i1.JwtService }, { token: 'environment' }], target: i0.ɵɵFactoryTarget.Injectable });
39
+ SseService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: SseService, providedIn: 'root' });
40
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: SseService, decorators: [{
38
41
  type: Injectable,
39
42
  args: [{
40
43
  providedIn: 'root'
@@ -43,4 +46,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
43
46
  type: Inject,
44
47
  args: ['environment']
45
48
  }] }]; } });
46
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3NlLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvc2VydmljZXMvZXZlbnQvc3NlLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFDM0QsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNsQyxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDckMsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sOENBQThDLENBQUM7OztBQU1uRixNQUFNLE9BQU8sVUFBVTtJQUNyQixZQUNVLElBQVksRUFDWixVQUFzQixFQUNDLFdBQWdCO1FBRnZDLFNBQUksR0FBSixJQUFJLENBQVE7UUFDWixlQUFVLEdBQVYsVUFBVSxDQUFZO1FBQ0MsZ0JBQVcsR0FBWCxXQUFXLENBQUs7SUFFakQsQ0FBQztJQUVEOztPQUVHO0lBQ0gsRUFBRSxDQUFDLEtBQWE7UUFDZCxNQUFNLEdBQUcsR0FBUSxJQUFJLEdBQUcsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQ3RELEdBQUcsQ0FBQyxZQUFZLENBQUMsTUFBTSxDQUFDLE9BQU8sRUFBRSxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxVQUFVLElBQUksQ0FBQyxVQUFVLENBQUMsV0FBVyxFQUFFLENBQUMsUUFBUSxJQUFJLEtBQUssRUFBRSxDQUFDLENBQUM7UUFDdkgsbUNBQW1DO1FBQ25DLE9BQU8sSUFBSSxVQUFVLENBQUMsQ0FBQyxRQUFRLEVBQUUsRUFBRTtZQUNqQyxNQUFNLEVBQUUsR0FBd0IsSUFBSSxtQkFBbUIsQ0FBQyxHQUFHLEVBQUU7Z0JBQzNELE9BQU8sRUFBRTtvQkFDUCxhQUFhLEVBQUUsU0FBUyxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsUUFBUSxFQUFFO2lCQUN0RDthQUNGLENBQUMsQ0FBQztZQUVILEVBQUUsQ0FBQyxTQUFTLEdBQUcsQ0FBQyxLQUFtQixFQUFRLEVBQUU7Z0JBQzNDLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQVMsRUFBRSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztZQUNsRCxDQUFDLENBQUM7UUFDSixDQUFDLENBQUM7YUFDQyxJQUFJLENBQ0gsR0FBRyxDQUFDLENBQUMsWUFBMEIsRUFBVSxFQUFFO1lBQ3pDLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDdkMsQ0FBQyxDQUFDLENBQ0gsQ0FBQztJQUNOLENBQUM7O3dHQS9CVSxVQUFVLGtFQUlYLGFBQWE7NEdBSlosVUFBVSxjQUZULE1BQU07NEZBRVAsVUFBVTtrQkFIdEIsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkI7OzBCQUtJLE1BQU07MkJBQUMsYUFBYSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSwgTmdab25lIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBtYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBFdmVudFNvdXJjZVBvbHlmaWxsIH0gZnJvbSAnZXZlbnQtc291cmNlLXBvbHlmaWxsL3NyYy9ldmVudHNvdXJjZS5taW4uanMnO1xuaW1wb3J0IHsgSnd0U2VydmljZSB9IGZyb20gJy4uL2F1dGgvand0LnNlcnZpY2UnO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBTc2VTZXJ2aWNlIHtcbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSB6b25lOiBOZ1pvbmUsXG4gICAgcHJpdmF0ZSBqd3RTZXJ2aWNlOiBKd3RTZXJ2aWNlLFxuICAgIEBJbmplY3QoJ2Vudmlyb25tZW50JykgcHJpdmF0ZSBlbnZpcm9ubWVudDogYW55XG4gICkge1xuICB9XG5cbiAgLyoqXG4gICAqIGxpc3QgdG8gdXJsIGZvciBzZXJ2ZXIgZXZlbnRzXG4gICAqL1xuICBvbih0b3BpYzogc3RyaW5nKTogT2JzZXJ2YWJsZTxvYmplY3Q+IHtcbiAgICBjb25zdCB1cmw6IFVSTCA9IG5ldyBVUkwodGhpcy5lbnZpcm9ubWVudC5tZXJjdXJlVXJsKTtcbiAgICB1cmwuc2VhcmNoUGFyYW1zLmFwcGVuZCgndG9waWMnLCBgJHt0aGlzLmVudmlyb25tZW50LmFwaVYyfS91c2Vycy8ke3RoaXMuand0U2VydmljZS5kZWNvZGVUb2tlbigpLnVzZXJuYW1lfS8ke3RvcGljfWApO1xuICAgIC8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTp0eXBlZGVmXG4gICAgcmV0dXJuIG5ldyBPYnNlcnZhYmxlKChvYnNlcnZlcikgPT4ge1xuICAgICAgY29uc3QgZXM6IEV2ZW50U291cmNlUG9seWZpbGwgPSBuZXcgRXZlbnRTb3VyY2VQb2x5ZmlsbCh1cmwsIHtcbiAgICAgICAgaGVhZGVyczoge1xuICAgICAgICAgIEF1dGhvcml6YXRpb246ICdCZWFyZXIgJyArIHRoaXMuand0U2VydmljZS5nZXRUb2tlbigpLFxuICAgICAgICB9XG4gICAgICB9KTtcblxuICAgICAgZXMub25tZXNzYWdlID0gKGV2ZW50OiBNZXNzYWdlRXZlbnQpOiB2b2lkID0+IHtcbiAgICAgICAgdGhpcy56b25lLnJ1bigoKTogdm9pZCA9PiBvYnNlcnZlci5uZXh0KGV2ZW50KSk7XG4gICAgICB9O1xuICAgIH0pXG4gICAgICAucGlwZShcbiAgICAgICAgbWFwKChtZXNzYWdlRXZlbnQ6IE1lc3NhZ2VFdmVudCk6IG9iamVjdCA9PiB7XG4gICAgICAgICAgcmV0dXJuIEpTT04ucGFyc2UobWVzc2FnZUV2ZW50LmRhdGEpO1xuICAgICAgICB9KVxuICAgICAgKTtcbiAgfVxufVxuIl19
49
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3NlLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvc2VydmljZXMvZXZlbnQvc3NlLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFDM0QsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNsQyxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDckMsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sOENBQThDLENBQUM7OztBQUduRjs7R0FFRztBQUlILE1BQU0sT0FBTyxVQUFVO0lBQ3JCLFlBQ1UsSUFBWSxFQUNaLFVBQXNCLEVBQ0MsV0FBZ0I7UUFGdkMsU0FBSSxHQUFKLElBQUksQ0FBUTtRQUNaLGVBQVUsR0FBVixVQUFVLENBQVk7UUFDQyxnQkFBVyxHQUFYLFdBQVcsQ0FBSztJQUVqRCxDQUFDO0lBRUQ7O09BRUc7SUFDSCxFQUFFLENBQUMsS0FBYTtRQUNkLE1BQU0sR0FBRyxHQUFRLElBQUksR0FBRyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDdEQsR0FBRyxDQUFDLFlBQVksQ0FBQyxNQUFNLENBQUMsT0FBTyxFQUFFLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxLQUFLLFVBQVUsSUFBSSxDQUFDLFVBQVUsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxRQUFRLElBQUksS0FBSyxFQUFFLENBQUMsQ0FBQztRQUN2SCxtQ0FBbUM7UUFDbkMsT0FBTyxJQUFJLFVBQVUsQ0FBQyxDQUFDLFFBQVEsRUFBRSxFQUFFO1lBQ2pDLE1BQU0sRUFBRSxHQUF3QixJQUFJLG1CQUFtQixDQUFDLEdBQUcsRUFBRTtnQkFDM0QsT0FBTyxFQUFFO29CQUNQLGFBQWEsRUFBRSxTQUFTLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxRQUFRLEVBQUU7aUJBQ3REO2FBQ0YsQ0FBQyxDQUFDO1lBRUgsRUFBRSxDQUFDLFNBQVMsR0FBRyxDQUFDLEtBQW1CLEVBQVEsRUFBRTtnQkFDM0MsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBUyxFQUFFLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO1lBQ2xELENBQUMsQ0FBQztRQUNKLENBQUMsQ0FBQzthQUNDLElBQUksQ0FDSCxHQUFHLENBQUMsQ0FBQyxZQUEwQixFQUFVLEVBQUU7WUFDekMsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN2QyxDQUFDLENBQUMsQ0FDSCxDQUFDO0lBQ04sQ0FBQzs7d0dBL0JVLFVBQVUsa0VBSVgsYUFBYTs0R0FKWixVQUFVLGNBRlQsTUFBTTs0RkFFUCxVQUFVO2tCQUh0QixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQjs7MEJBS0ksTUFBTTsyQkFBQyxhQUFhIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0LCBJbmplY3RhYmxlLCBOZ1pvbmUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IG1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IEV2ZW50U291cmNlUG9seWZpbGwgfSBmcm9tICdldmVudC1zb3VyY2UtcG9seWZpbGwvc3JjL2V2ZW50c291cmNlLm1pbi5qcyc7XG5pbXBvcnQgeyBKd3RTZXJ2aWNlIH0gZnJvbSAnLi4vYXV0aC9qd3Quc2VydmljZSc7XG5cbi8qKlxuICogc2VydmVyIHNlbnQgZXZlbnRzIHNlcnZpY2VcbiAqL1xuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgU3NlU2VydmljZSB7XG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgem9uZTogTmdab25lLFxuICAgIHByaXZhdGUgand0U2VydmljZTogSnd0U2VydmljZSxcbiAgICBASW5qZWN0KCdlbnZpcm9ubWVudCcpIHByaXZhdGUgZW52aXJvbm1lbnQ6IGFueVxuICApIHtcbiAgfVxuXG4gIC8qKlxuICAgKiBsaXN0IHRvIHVybCBmb3Igc2VydmVyIGV2ZW50c1xuICAgKi9cbiAgb24odG9waWM6IHN0cmluZyk6IE9ic2VydmFibGU8b2JqZWN0PiB7XG4gICAgY29uc3QgdXJsOiBVUkwgPSBuZXcgVVJMKHRoaXMuZW52aXJvbm1lbnQubWVyY3VyZVVybCk7XG4gICAgdXJsLnNlYXJjaFBhcmFtcy5hcHBlbmQoJ3RvcGljJywgYCR7dGhpcy5lbnZpcm9ubWVudC5hcGlWMn0vdXNlcnMvJHt0aGlzLmp3dFNlcnZpY2UuZGVjb2RlVG9rZW4oKS51c2VybmFtZX0vJHt0b3BpY31gKTtcbiAgICAvLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6dHlwZWRlZlxuICAgIHJldHVybiBuZXcgT2JzZXJ2YWJsZSgob2JzZXJ2ZXIpID0+IHtcbiAgICAgIGNvbnN0IGVzOiBFdmVudFNvdXJjZVBvbHlmaWxsID0gbmV3IEV2ZW50U291cmNlUG9seWZpbGwodXJsLCB7XG4gICAgICAgIGhlYWRlcnM6IHtcbiAgICAgICAgICBBdXRob3JpemF0aW9uOiAnQmVhcmVyICcgKyB0aGlzLmp3dFNlcnZpY2UuZ2V0VG9rZW4oKSxcbiAgICAgICAgfVxuICAgICAgfSk7XG5cbiAgICAgIGVzLm9ubWVzc2FnZSA9IChldmVudDogTWVzc2FnZUV2ZW50KTogdm9pZCA9PiB7XG4gICAgICAgIHRoaXMuem9uZS5ydW4oKCk6IHZvaWQgPT4gb2JzZXJ2ZXIubmV4dChldmVudCkpO1xuICAgICAgfTtcbiAgICB9KVxuICAgICAgLnBpcGUoXG4gICAgICAgIG1hcCgobWVzc2FnZUV2ZW50OiBNZXNzYWdlRXZlbnQpOiBvYmplY3QgPT4ge1xuICAgICAgICAgIHJldHVybiBKU09OLnBhcnNlKG1lc3NhZ2VFdmVudC5kYXRhKTtcbiAgICAgICAgfSlcbiAgICAgICk7XG4gIH1cbn1cbiJdfQ==