@zeniai/client-epic-state 5.1.26 → 5.1.27-betaAK0

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 (351) hide show
  1. package/README.md +3 -1
  2. package/lib/commonStateTypes/viewAndReport/agingReportStateTypes.d.ts +1 -1
  3. package/lib/entity/invoicing/coupon/couponReducer.d.ts +12 -0
  4. package/lib/entity/invoicing/coupon/couponReducer.js +33 -0
  5. package/lib/entity/invoicing/creditNote/creditNoteReducer.d.ts +12 -0
  6. package/lib/entity/invoicing/creditNote/creditNoteReducer.js +35 -0
  7. package/lib/entity/invoicing/customer/customerReducer.d.ts +12 -0
  8. package/lib/entity/invoicing/customer/customerReducer.js +33 -0
  9. package/lib/entity/invoicing/dunningCase/dunningCaseReducer.d.ts +12 -0
  10. package/lib/entity/invoicing/dunningCase/dunningCaseReducer.js +35 -0
  11. package/lib/entity/invoicing/invoice/invoiceReducer.d.ts +10 -0
  12. package/lib/entity/invoicing/invoice/invoiceReducer.js +36 -0
  13. package/lib/entity/invoicing/invoice/invoiceSelector.d.ts +5 -0
  14. package/lib/entity/invoicing/invoice/invoiceSelector.js +9 -0
  15. package/lib/entity/invoicing/invoice/invoiceState.d.ts +5 -0
  16. package/lib/entity/invoicing/invoice/invoiceState.js +2 -0
  17. package/lib/entity/invoicing/invoicingTypes.d.ts +766 -0
  18. package/lib/entity/invoicing/invoicingTypes.js +15 -0
  19. package/lib/entity/invoicing/plan/planReducer.d.ts +12 -0
  20. package/lib/entity/invoicing/plan/planReducer.js +33 -0
  21. package/lib/entity/invoicing/product/productReducer.d.ts +12 -0
  22. package/lib/entity/invoicing/product/productReducer.js +33 -0
  23. package/lib/entity/invoicing/subscription/subscriptionReducer.d.ts +12 -0
  24. package/lib/entity/invoicing/subscription/subscriptionReducer.js +35 -0
  25. package/lib/entity/invoicing/transaction/transactionReducer.d.ts +12 -0
  26. package/lib/entity/invoicing/transaction/transactionReducer.js +35 -0
  27. package/lib/entity/task/taskState.d.ts +1 -1
  28. package/lib/entity/tenant/clearAllEpic.d.ts +39 -2
  29. package/lib/entity/tenant/clearAllEpic.js +82 -8
  30. package/lib/entity/tenant/tenantReducer.js +3 -3
  31. package/lib/epic.d.ts +32 -1
  32. package/lib/epic.js +33 -1
  33. package/lib/esm/entity/invoicing/coupon/couponReducer.js +29 -0
  34. package/lib/esm/entity/invoicing/creditNote/creditNoteReducer.js +31 -0
  35. package/lib/esm/entity/invoicing/customer/customerReducer.js +29 -0
  36. package/lib/esm/entity/invoicing/dunningCase/dunningCaseReducer.js +31 -0
  37. package/lib/esm/entity/invoicing/invoice/invoiceReducer.js +32 -0
  38. package/lib/esm/entity/invoicing/invoice/invoiceSelector.js +4 -0
  39. package/lib/esm/entity/invoicing/invoice/invoiceState.js +1 -0
  40. package/lib/esm/entity/invoicing/invoicingTypes.js +14 -0
  41. package/lib/esm/entity/invoicing/plan/planReducer.js +29 -0
  42. package/lib/esm/entity/invoicing/product/productReducer.js +29 -0
  43. package/lib/esm/entity/invoicing/subscription/subscriptionReducer.js +31 -0
  44. package/lib/esm/entity/invoicing/transaction/transactionReducer.js +31 -0
  45. package/lib/esm/entity/tenant/clearAllEpic.js +74 -0
  46. package/lib/esm/entity/tenant/tenantReducer.js +3 -3
  47. package/lib/esm/epic.js +33 -1
  48. package/lib/esm/index.js +80 -2
  49. package/lib/esm/reducer.js +114 -0
  50. package/lib/esm/view/aiCfoView/aiCfoViewReducer.js +29 -3
  51. package/lib/esm/view/aiCfoView/aiCfoViewSelector.js +11 -0
  52. package/lib/esm/view/aiCfoView/epics/createSessionAndSubmitEpic.js +2 -2
  53. package/lib/esm/view/aiCfoView/epics/fetchSkillsEpic.js +34 -0
  54. package/lib/esm/view/aiCfoView/epics/submitQuestionEpic.js +7 -1
  55. package/lib/esm/view/invoicing/analyticsView/analyticsViewEpics.js +42 -0
  56. package/lib/esm/view/invoicing/analyticsView/analyticsViewReducer.js +45 -0
  57. package/lib/esm/view/invoicing/analyticsView/analyticsViewSelector.js +10 -0
  58. package/lib/esm/view/invoicing/approvalAction/approvalActionEpic.js +28 -0
  59. package/lib/esm/view/invoicing/approvalAction/approvalActionReducer.js +36 -0
  60. package/lib/esm/view/invoicing/approvalAction/approvalActionSelector.js +5 -0
  61. package/lib/esm/view/invoicing/approvalsView/approvalsViewEpics.js +37 -0
  62. package/lib/esm/view/invoicing/approvalsView/approvalsViewReducer.js +62 -0
  63. package/lib/esm/view/invoicing/approvalsView/approvalsViewSelector.js +8 -0
  64. package/lib/esm/view/invoicing/auditView/auditViewEpics.js +46 -0
  65. package/lib/esm/view/invoicing/auditView/auditViewReducer.js +56 -0
  66. package/lib/esm/view/invoicing/auditView/auditViewSelector.js +8 -0
  67. package/lib/esm/view/invoicing/catalogView/catalogViewEpics.js +143 -0
  68. package/lib/esm/view/invoicing/catalogView/catalogViewReducer.js +162 -0
  69. package/lib/esm/view/invoicing/catalogView/catalogViewSelector.js +31 -0
  70. package/lib/esm/view/invoicing/catalogWrite/catalogWriteEpic.js +34 -0
  71. package/lib/esm/view/invoicing/catalogWrite/catalogWriteReducer.js +39 -0
  72. package/lib/esm/view/invoicing/catalogWrite/catalogWriteSelector.js +6 -0
  73. package/lib/esm/view/invoicing/couponView/couponViewEpics.js +83 -0
  74. package/lib/esm/view/invoicing/couponView/couponViewReducer.js +105 -0
  75. package/lib/esm/view/invoicing/couponView/couponViewSelector.js +18 -0
  76. package/lib/esm/view/invoicing/couponWrite/couponWriteEpic.js +29 -0
  77. package/lib/esm/view/invoicing/couponWrite/couponWriteReducer.js +36 -0
  78. package/lib/esm/view/invoicing/couponWrite/couponWriteSelector.js +5 -0
  79. package/lib/esm/view/invoicing/createInvoice/createInvoiceEpic.js +23 -0
  80. package/lib/esm/view/invoicing/createInvoice/createInvoiceReducer.js +36 -0
  81. package/lib/esm/view/invoicing/createInvoice/createInvoiceSelector.js +5 -0
  82. package/lib/esm/view/invoicing/creditNoteView/creditNoteViewEpics.js +87 -0
  83. package/lib/esm/view/invoicing/creditNoteView/creditNoteViewReducer.js +105 -0
  84. package/lib/esm/view/invoicing/creditNoteView/creditNoteViewSelector.js +20 -0
  85. package/lib/esm/view/invoicing/customerPaymentMethod/customerPaymentMethodEpic.js +63 -0
  86. package/lib/esm/view/invoicing/customerPaymentMethod/customerPaymentMethodReducer.js +84 -0
  87. package/lib/esm/view/invoicing/customerPaymentMethod/customerPaymentMethodSelector.js +7 -0
  88. package/lib/esm/view/invoicing/customerView/customerViewEpics.js +71 -0
  89. package/lib/esm/view/invoicing/customerView/customerViewReducer.js +90 -0
  90. package/lib/esm/view/invoicing/customerView/customerViewSelector.js +17 -0
  91. package/lib/esm/view/invoicing/customerWrite/customerWriteEpic.js +23 -0
  92. package/lib/esm/view/invoicing/customerWrite/customerWriteReducer.js +36 -0
  93. package/lib/esm/view/invoicing/customerWrite/customerWriteSelector.js +5 -0
  94. package/lib/esm/view/invoicing/dataImportAction/dataImportActionEpic.js +41 -0
  95. package/lib/esm/view/invoicing/dataImportAction/dataImportActionReducer.js +73 -0
  96. package/lib/esm/view/invoicing/dataImportAction/dataImportActionSelector.js +5 -0
  97. package/lib/esm/view/invoicing/dataImportView/dataImportViewEpics.js +41 -0
  98. package/lib/esm/view/invoicing/dataImportView/dataImportViewReducer.js +66 -0
  99. package/lib/esm/view/invoicing/dataImportView/dataImportViewSelector.js +6 -0
  100. package/lib/esm/view/invoicing/dunningAction/dunningActionEpic.js +28 -0
  101. package/lib/esm/view/invoicing/dunningAction/dunningActionReducer.js +36 -0
  102. package/lib/esm/view/invoicing/dunningAction/dunningActionSelector.js +5 -0
  103. package/lib/esm/view/invoicing/dunningCaseView/dunningCaseViewEpics.js +85 -0
  104. package/lib/esm/view/invoicing/dunningCaseView/dunningCaseViewReducer.js +105 -0
  105. package/lib/esm/view/invoicing/dunningCaseView/dunningCaseViewSelector.js +20 -0
  106. package/lib/esm/view/invoicing/invoiceAction/invoiceActionEpic.js +50 -0
  107. package/lib/esm/view/invoicing/invoiceAction/invoiceActionReducer.js +42 -0
  108. package/lib/esm/view/invoicing/invoiceAction/invoiceActionSelector.js +5 -0
  109. package/lib/esm/view/invoicing/invoiceDetail/fetchInvoiceDetailEpic.js +20 -0
  110. package/lib/esm/view/invoicing/invoiceDetail/invoiceDetailReducer.js +34 -0
  111. package/lib/esm/view/invoicing/invoiceDetail/invoiceDetailSelector.js +9 -0
  112. package/lib/esm/view/invoicing/invoiceDetail/invoiceDetailState.js +1 -0
  113. package/lib/esm/view/invoicing/invoiceList/fetchInvoiceCountsEpic.js +32 -0
  114. package/lib/esm/view/invoicing/invoiceList/fetchInvoiceKPIsEpic.js +17 -0
  115. package/lib/esm/view/invoicing/invoiceList/fetchInvoiceListEpic.js +55 -0
  116. package/lib/esm/view/invoicing/invoiceList/invoiceListReducer.js +90 -0
  117. package/lib/esm/view/invoicing/invoiceList/invoiceListSelector.js +11 -0
  118. package/lib/esm/view/invoicing/invoiceList/invoiceListState.js +1 -0
  119. package/lib/esm/view/invoicing/invoicePdf/invoicePdfEpic.js +37 -0
  120. package/lib/esm/view/invoicing/invoicePdf/invoicePdfReducer.js +33 -0
  121. package/lib/esm/view/invoicing/invoicePdf/invoicePdfSelector.js +5 -0
  122. package/lib/esm/view/invoicing/invoicingApiHelper.js +38 -0
  123. package/lib/esm/view/invoicing/paymentAction/paymentActionEpic.js +28 -0
  124. package/lib/esm/view/invoicing/paymentAction/paymentActionReducer.js +36 -0
  125. package/lib/esm/view/invoicing/paymentAction/paymentActionSelector.js +5 -0
  126. package/lib/esm/view/invoicing/recordPayment/recordPaymentEpic.js +23 -0
  127. package/lib/esm/view/invoicing/recordPayment/recordPaymentReducer.js +36 -0
  128. package/lib/esm/view/invoicing/recordPayment/recordPaymentSelector.js +5 -0
  129. package/lib/esm/view/invoicing/reportsView/reportsViewEpics.js +28 -0
  130. package/lib/esm/view/invoicing/reportsView/reportsViewReducer.js +54 -0
  131. package/lib/esm/view/invoicing/reportsView/reportsViewSelector.js +13 -0
  132. package/lib/esm/view/invoicing/settingsView/settingsViewEpics.js +53 -0
  133. package/lib/esm/view/invoicing/settingsView/settingsViewReducer.js +69 -0
  134. package/lib/esm/view/invoicing/settingsView/settingsViewSelector.js +7 -0
  135. package/lib/esm/view/invoicing/subscriptionAction/subscriptionActionEpic.js +28 -0
  136. package/lib/esm/view/invoicing/subscriptionAction/subscriptionActionReducer.js +36 -0
  137. package/lib/esm/view/invoicing/subscriptionAction/subscriptionActionSelector.js +5 -0
  138. package/lib/esm/view/invoicing/subscriptionView/subscriptionViewEpics.js +85 -0
  139. package/lib/esm/view/invoicing/subscriptionView/subscriptionViewReducer.js +90 -0
  140. package/lib/esm/view/invoicing/subscriptionView/subscriptionViewSelector.js +19 -0
  141. package/lib/esm/view/invoicing/subscriptionWrite/subscriptionWriteEpic.js +25 -0
  142. package/lib/esm/view/invoicing/subscriptionWrite/subscriptionWriteReducer.js +36 -0
  143. package/lib/esm/view/invoicing/subscriptionWrite/subscriptionWriteSelector.js +5 -0
  144. package/lib/esm/view/invoicing/transactionView/transactionViewEpics.js +76 -0
  145. package/lib/esm/view/invoicing/transactionView/transactionViewReducer.js +90 -0
  146. package/lib/esm/view/invoicing/transactionView/transactionViewSelector.js +19 -0
  147. package/lib/index.d.ts +101 -4
  148. package/lib/index.js +373 -5
  149. package/lib/reducer.d.ts +114 -0
  150. package/lib/reducer.js +126 -12
  151. package/lib/view/aiCfoView/aiCfoViewPayload.d.ts +14 -0
  152. package/lib/view/aiCfoView/aiCfoViewReducer.d.ts +8 -4
  153. package/lib/view/aiCfoView/aiCfoViewReducer.js +30 -4
  154. package/lib/view/aiCfoView/aiCfoViewSelector.d.ts +2 -1
  155. package/lib/view/aiCfoView/aiCfoViewSelector.js +12 -0
  156. package/lib/view/aiCfoView/aiCfoViewState.d.ts +15 -0
  157. package/lib/view/aiCfoView/epics/createSessionAndSubmitEpic.js +2 -2
  158. package/lib/view/aiCfoView/epics/fetchSkillsEpic.d.ts +8 -0
  159. package/lib/view/aiCfoView/epics/fetchSkillsEpic.js +38 -0
  160. package/lib/view/aiCfoView/epics/submitQuestionEpic.js +7 -1
  161. package/lib/view/invoicing/analyticsView/analyticsViewEpics.d.ts +7 -0
  162. package/lib/view/invoicing/analyticsView/analyticsViewEpics.js +46 -0
  163. package/lib/view/invoicing/analyticsView/analyticsViewReducer.d.ts +22 -0
  164. package/lib/view/invoicing/analyticsView/analyticsViewReducer.js +49 -0
  165. package/lib/view/invoicing/analyticsView/analyticsViewSelector.d.ts +10 -0
  166. package/lib/view/invoicing/analyticsView/analyticsViewSelector.js +20 -0
  167. package/lib/view/invoicing/approvalAction/approvalActionEpic.d.ts +8 -0
  168. package/lib/view/invoicing/approvalAction/approvalActionEpic.js +32 -0
  169. package/lib/view/invoicing/approvalAction/approvalActionReducer.d.ts +20 -0
  170. package/lib/view/invoicing/approvalAction/approvalActionReducer.js +40 -0
  171. package/lib/view/invoicing/approvalAction/approvalActionSelector.d.ts +3 -0
  172. package/lib/view/invoicing/approvalAction/approvalActionSelector.js +9 -0
  173. package/lib/view/invoicing/approvalsView/approvalsViewEpics.d.ts +7 -0
  174. package/lib/view/invoicing/approvalsView/approvalsViewEpics.js +41 -0
  175. package/lib/view/invoicing/approvalsView/approvalsViewReducer.d.ts +33 -0
  176. package/lib/view/invoicing/approvalsView/approvalsViewReducer.js +66 -0
  177. package/lib/view/invoicing/approvalsView/approvalsViewSelector.d.ts +9 -0
  178. package/lib/view/invoicing/approvalsView/approvalsViewSelector.js +16 -0
  179. package/lib/view/invoicing/auditView/auditViewEpics.d.ts +7 -0
  180. package/lib/view/invoicing/auditView/auditViewEpics.js +50 -0
  181. package/lib/view/invoicing/auditView/auditViewReducer.d.ts +36 -0
  182. package/lib/view/invoicing/auditView/auditViewReducer.js +60 -0
  183. package/lib/view/invoicing/auditView/auditViewSelector.d.ts +9 -0
  184. package/lib/view/invoicing/auditView/auditViewSelector.js +16 -0
  185. package/lib/view/invoicing/catalogView/catalogViewEpics.d.ts +14 -0
  186. package/lib/view/invoicing/catalogView/catalogViewEpics.js +152 -0
  187. package/lib/view/invoicing/catalogView/catalogViewReducer.d.ts +76 -0
  188. package/lib/view/invoicing/catalogView/catalogViewReducer.js +166 -0
  189. package/lib/view/invoicing/catalogView/catalogViewSelector.d.ts +22 -0
  190. package/lib/view/invoicing/catalogView/catalogViewSelector.js +52 -0
  191. package/lib/view/invoicing/catalogWrite/catalogWriteEpic.d.ts +9 -0
  192. package/lib/view/invoicing/catalogWrite/catalogWriteEpic.js +38 -0
  193. package/lib/view/invoicing/catalogWrite/catalogWriteReducer.d.ts +21 -0
  194. package/lib/view/invoicing/catalogWrite/catalogWriteReducer.js +43 -0
  195. package/lib/view/invoicing/catalogWrite/catalogWriteSelector.d.ts +6 -0
  196. package/lib/view/invoicing/catalogWrite/catalogWriteSelector.js +12 -0
  197. package/lib/view/invoicing/couponView/couponViewEpics.d.ts +11 -0
  198. package/lib/view/invoicing/couponView/couponViewEpics.js +90 -0
  199. package/lib/view/invoicing/couponView/couponViewReducer.d.ts +42 -0
  200. package/lib/view/invoicing/couponView/couponViewReducer.js +109 -0
  201. package/lib/view/invoicing/couponView/couponViewSelector.d.ts +14 -0
  202. package/lib/view/invoicing/couponView/couponViewSelector.js +31 -0
  203. package/lib/view/invoicing/couponWrite/couponWriteEpic.d.ts +8 -0
  204. package/lib/view/invoicing/couponWrite/couponWriteEpic.js +33 -0
  205. package/lib/view/invoicing/couponWrite/couponWriteReducer.d.ts +17 -0
  206. package/lib/view/invoicing/couponWrite/couponWriteReducer.js +40 -0
  207. package/lib/view/invoicing/couponWrite/couponWriteSelector.d.ts +4 -0
  208. package/lib/view/invoicing/couponWrite/couponWriteSelector.js +10 -0
  209. package/lib/view/invoicing/createInvoice/createInvoiceEpic.d.ts +8 -0
  210. package/lib/view/invoicing/createInvoice/createInvoiceEpic.js +27 -0
  211. package/lib/view/invoicing/createInvoice/createInvoiceReducer.d.ts +34 -0
  212. package/lib/view/invoicing/createInvoice/createInvoiceReducer.js +40 -0
  213. package/lib/view/invoicing/createInvoice/createInvoiceSelector.d.ts +4 -0
  214. package/lib/view/invoicing/createInvoice/createInvoiceSelector.js +10 -0
  215. package/lib/view/invoicing/creditNoteView/creditNoteViewEpics.d.ts +11 -0
  216. package/lib/view/invoicing/creditNoteView/creditNoteViewEpics.js +94 -0
  217. package/lib/view/invoicing/creditNoteView/creditNoteViewReducer.d.ts +43 -0
  218. package/lib/view/invoicing/creditNoteView/creditNoteViewReducer.js +109 -0
  219. package/lib/view/invoicing/creditNoteView/creditNoteViewSelector.d.ts +14 -0
  220. package/lib/view/invoicing/creditNoteView/creditNoteViewSelector.js +33 -0
  221. package/lib/view/invoicing/customerPaymentMethod/customerPaymentMethodEpic.d.ts +11 -0
  222. package/lib/view/invoicing/customerPaymentMethod/customerPaymentMethodEpic.js +70 -0
  223. package/lib/view/invoicing/customerPaymentMethod/customerPaymentMethodReducer.d.ts +42 -0
  224. package/lib/view/invoicing/customerPaymentMethod/customerPaymentMethodReducer.js +88 -0
  225. package/lib/view/invoicing/customerPaymentMethod/customerPaymentMethodSelector.d.ts +10 -0
  226. package/lib/view/invoicing/customerPaymentMethod/customerPaymentMethodSelector.js +17 -0
  227. package/lib/view/invoicing/customerView/customerViewEpics.d.ts +10 -0
  228. package/lib/view/invoicing/customerView/customerViewEpics.js +77 -0
  229. package/lib/view/invoicing/customerView/customerViewReducer.d.ts +41 -0
  230. package/lib/view/invoicing/customerView/customerViewReducer.js +94 -0
  231. package/lib/view/invoicing/customerView/customerViewSelector.d.ts +13 -0
  232. package/lib/view/invoicing/customerView/customerViewSelector.js +29 -0
  233. package/lib/view/invoicing/customerWrite/customerWriteEpic.d.ts +8 -0
  234. package/lib/view/invoicing/customerWrite/customerWriteEpic.js +27 -0
  235. package/lib/view/invoicing/customerWrite/customerWriteReducer.d.ts +17 -0
  236. package/lib/view/invoicing/customerWrite/customerWriteReducer.js +40 -0
  237. package/lib/view/invoicing/customerWrite/customerWriteSelector.d.ts +4 -0
  238. package/lib/view/invoicing/customerWrite/customerWriteSelector.js +10 -0
  239. package/lib/view/invoicing/dataImportAction/dataImportActionEpic.d.ts +7 -0
  240. package/lib/view/invoicing/dataImportAction/dataImportActionEpic.js +45 -0
  241. package/lib/view/invoicing/dataImportAction/dataImportActionReducer.d.ts +23 -0
  242. package/lib/view/invoicing/dataImportAction/dataImportActionReducer.js +77 -0
  243. package/lib/view/invoicing/dataImportAction/dataImportActionSelector.d.ts +4 -0
  244. package/lib/view/invoicing/dataImportAction/dataImportActionSelector.js +9 -0
  245. package/lib/view/invoicing/dataImportView/dataImportViewEpics.d.ts +9 -0
  246. package/lib/view/invoicing/dataImportView/dataImportViewEpics.js +47 -0
  247. package/lib/view/invoicing/dataImportView/dataImportViewReducer.d.ts +15 -0
  248. package/lib/view/invoicing/dataImportView/dataImportViewReducer.js +70 -0
  249. package/lib/view/invoicing/dataImportView/dataImportViewSelector.d.ts +9 -0
  250. package/lib/view/invoicing/dataImportView/dataImportViewSelector.js +15 -0
  251. package/lib/view/invoicing/dunningAction/dunningActionEpic.d.ts +8 -0
  252. package/lib/view/invoicing/dunningAction/dunningActionEpic.js +32 -0
  253. package/lib/view/invoicing/dunningAction/dunningActionReducer.d.ts +21 -0
  254. package/lib/view/invoicing/dunningAction/dunningActionReducer.js +40 -0
  255. package/lib/view/invoicing/dunningAction/dunningActionSelector.d.ts +3 -0
  256. package/lib/view/invoicing/dunningAction/dunningActionSelector.js +9 -0
  257. package/lib/view/invoicing/dunningCaseView/dunningCaseViewEpics.d.ts +11 -0
  258. package/lib/view/invoicing/dunningCaseView/dunningCaseViewEpics.js +92 -0
  259. package/lib/view/invoicing/dunningCaseView/dunningCaseViewReducer.d.ts +42 -0
  260. package/lib/view/invoicing/dunningCaseView/dunningCaseViewReducer.js +109 -0
  261. package/lib/view/invoicing/dunningCaseView/dunningCaseViewSelector.d.ts +14 -0
  262. package/lib/view/invoicing/dunningCaseView/dunningCaseViewSelector.js +33 -0
  263. package/lib/view/invoicing/invoiceAction/invoiceActionEpic.d.ts +9 -0
  264. package/lib/view/invoicing/invoiceAction/invoiceActionEpic.js +55 -0
  265. package/lib/view/invoicing/invoiceAction/invoiceActionReducer.d.ts +26 -0
  266. package/lib/view/invoicing/invoiceAction/invoiceActionReducer.js +46 -0
  267. package/lib/view/invoicing/invoiceAction/invoiceActionSelector.d.ts +3 -0
  268. package/lib/view/invoicing/invoiceAction/invoiceActionSelector.js +9 -0
  269. package/lib/view/invoicing/invoiceDetail/fetchInvoiceDetailEpic.d.ts +8 -0
  270. package/lib/view/invoicing/invoiceDetail/fetchInvoiceDetailEpic.js +24 -0
  271. package/lib/view/invoicing/invoiceDetail/invoiceDetailReducer.d.ts +11 -0
  272. package/lib/view/invoicing/invoiceDetail/invoiceDetailReducer.js +38 -0
  273. package/lib/view/invoicing/invoiceDetail/invoiceDetailSelector.d.ts +5 -0
  274. package/lib/view/invoicing/invoiceDetail/invoiceDetailSelector.js +14 -0
  275. package/lib/view/invoicing/invoiceDetail/invoiceDetailState.d.ts +4 -0
  276. package/lib/view/invoicing/invoiceDetail/invoiceDetailState.js +2 -0
  277. package/lib/view/invoicing/invoiceList/fetchInvoiceCountsEpic.d.ts +7 -0
  278. package/lib/view/invoicing/invoiceList/fetchInvoiceCountsEpic.js +36 -0
  279. package/lib/view/invoicing/invoiceList/fetchInvoiceKPIsEpic.d.ts +7 -0
  280. package/lib/view/invoicing/invoiceList/fetchInvoiceKPIsEpic.js +21 -0
  281. package/lib/view/invoicing/invoiceList/fetchInvoiceListEpic.d.ts +8 -0
  282. package/lib/view/invoicing/invoiceList/fetchInvoiceListEpic.js +59 -0
  283. package/lib/view/invoicing/invoiceList/invoiceListReducer.d.ts +22 -0
  284. package/lib/view/invoicing/invoiceList/invoiceListReducer.js +94 -0
  285. package/lib/view/invoicing/invoiceList/invoiceListSelector.d.ts +11 -0
  286. package/lib/view/invoicing/invoiceList/invoiceListSelector.js +21 -0
  287. package/lib/view/invoicing/invoiceList/invoiceListState.d.ts +25 -0
  288. package/lib/view/invoicing/invoiceList/invoiceListState.js +2 -0
  289. package/lib/view/invoicing/invoicePdf/invoicePdfEpic.d.ts +7 -0
  290. package/lib/view/invoicing/invoicePdf/invoicePdfEpic.js +41 -0
  291. package/lib/view/invoicing/invoicePdf/invoicePdfReducer.d.ts +20 -0
  292. package/lib/view/invoicing/invoicePdf/invoicePdfReducer.js +37 -0
  293. package/lib/view/invoicing/invoicePdf/invoicePdfSelector.d.ts +3 -0
  294. package/lib/view/invoicing/invoicePdf/invoicePdfSelector.js +9 -0
  295. package/lib/view/invoicing/invoicingApiHelper.d.ts +22 -0
  296. package/lib/view/invoicing/invoicingApiHelper.js +44 -0
  297. package/lib/view/invoicing/paymentAction/paymentActionEpic.d.ts +8 -0
  298. package/lib/view/invoicing/paymentAction/paymentActionEpic.js +32 -0
  299. package/lib/view/invoicing/paymentAction/paymentActionReducer.d.ts +21 -0
  300. package/lib/view/invoicing/paymentAction/paymentActionReducer.js +40 -0
  301. package/lib/view/invoicing/paymentAction/paymentActionSelector.d.ts +3 -0
  302. package/lib/view/invoicing/paymentAction/paymentActionSelector.js +9 -0
  303. package/lib/view/invoicing/recordPayment/recordPaymentEpic.d.ts +8 -0
  304. package/lib/view/invoicing/recordPayment/recordPaymentEpic.js +27 -0
  305. package/lib/view/invoicing/recordPayment/recordPaymentReducer.d.ts +32 -0
  306. package/lib/view/invoicing/recordPayment/recordPaymentReducer.js +40 -0
  307. package/lib/view/invoicing/recordPayment/recordPaymentSelector.d.ts +4 -0
  308. package/lib/view/invoicing/recordPayment/recordPaymentSelector.js +10 -0
  309. package/lib/view/invoicing/reportsView/reportsViewEpics.d.ts +7 -0
  310. package/lib/view/invoicing/reportsView/reportsViewEpics.js +32 -0
  311. package/lib/view/invoicing/reportsView/reportsViewReducer.d.ts +20 -0
  312. package/lib/view/invoicing/reportsView/reportsViewReducer.js +58 -0
  313. package/lib/view/invoicing/reportsView/reportsViewSelector.d.ts +12 -0
  314. package/lib/view/invoicing/reportsView/reportsViewSelector.js +24 -0
  315. package/lib/view/invoicing/settingsView/settingsViewEpics.d.ts +10 -0
  316. package/lib/view/invoicing/settingsView/settingsViewEpics.js +60 -0
  317. package/lib/view/invoicing/settingsView/settingsViewReducer.d.ts +12 -0
  318. package/lib/view/invoicing/settingsView/settingsViewReducer.js +73 -0
  319. package/lib/view/invoicing/settingsView/settingsViewSelector.d.ts +7 -0
  320. package/lib/view/invoicing/settingsView/settingsViewSelector.js +14 -0
  321. package/lib/view/invoicing/subscriptionAction/subscriptionActionEpic.d.ts +8 -0
  322. package/lib/view/invoicing/subscriptionAction/subscriptionActionEpic.js +32 -0
  323. package/lib/view/invoicing/subscriptionAction/subscriptionActionReducer.d.ts +21 -0
  324. package/lib/view/invoicing/subscriptionAction/subscriptionActionReducer.js +40 -0
  325. package/lib/view/invoicing/subscriptionAction/subscriptionActionSelector.d.ts +3 -0
  326. package/lib/view/invoicing/subscriptionAction/subscriptionActionSelector.js +9 -0
  327. package/lib/view/invoicing/subscriptionView/subscriptionViewEpics.d.ts +10 -0
  328. package/lib/view/invoicing/subscriptionView/subscriptionViewEpics.js +91 -0
  329. package/lib/view/invoicing/subscriptionView/subscriptionViewReducer.d.ts +44 -0
  330. package/lib/view/invoicing/subscriptionView/subscriptionViewReducer.js +94 -0
  331. package/lib/view/invoicing/subscriptionView/subscriptionViewSelector.d.ts +13 -0
  332. package/lib/view/invoicing/subscriptionView/subscriptionViewSelector.js +31 -0
  333. package/lib/view/invoicing/subscriptionWrite/subscriptionWriteEpic.d.ts +8 -0
  334. package/lib/view/invoicing/subscriptionWrite/subscriptionWriteEpic.js +29 -0
  335. package/lib/view/invoicing/subscriptionWrite/subscriptionWriteReducer.d.ts +17 -0
  336. package/lib/view/invoicing/subscriptionWrite/subscriptionWriteReducer.js +40 -0
  337. package/lib/view/invoicing/subscriptionWrite/subscriptionWriteSelector.d.ts +4 -0
  338. package/lib/view/invoicing/subscriptionWrite/subscriptionWriteSelector.js +10 -0
  339. package/lib/view/invoicing/transactionView/transactionViewEpics.d.ts +10 -0
  340. package/lib/view/invoicing/transactionView/transactionViewEpics.js +82 -0
  341. package/lib/view/invoicing/transactionView/transactionViewReducer.d.ts +43 -0
  342. package/lib/view/invoicing/transactionView/transactionViewReducer.js +94 -0
  343. package/lib/view/invoicing/transactionView/transactionViewSelector.d.ts +13 -0
  344. package/lib/view/invoicing/transactionView/transactionViewSelector.js +31 -0
  345. package/lib/view/reviewCompanyView/reviewCompanyViewState.d.ts +1 -1
  346. package/lib/view/spendManagement/billPay/billList/billListReducer.d.ts +1 -1
  347. package/lib/view/spendManagement/billPay/billList/billListState.d.ts +1 -1
  348. package/lib/view/spendManagement/reimbursement/remiListView/remiListReducer.d.ts +1 -1
  349. package/lib/view/spendManagement/reimbursement/remiListView/remiListState.d.ts +3 -3
  350. package/lib/zeniAPI.d.ts +1 -0
  351. package/package.json +5 -2
@@ -0,0 +1,94 @@
1
+ "use strict";
2
+ var _a;
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.clearInvoiceList = exports.updateInvoiceListFilters = exports.updateInvoiceKPIsFailure = exports.updateInvoiceKPIs = exports.fetchInvoiceKPIs = exports.updateInvoiceCountsFailure = exports.updateInvoiceCounts = exports.fetchInvoiceCounts = exports.updateInvoiceListFailure = exports.updateInvoiceList = exports.fetchInvoiceList = exports.initialState = void 0;
5
+ const toolkit_1 = require("@reduxjs/toolkit");
6
+ exports.initialState = {
7
+ fetchState: 'Not-Started',
8
+ error: undefined,
9
+ invoiceIds: [],
10
+ nextCursor: null,
11
+ filters: {},
12
+ counts: { all: 0 },
13
+ countsFetchState: { fetchState: 'Not-Started', error: undefined },
14
+ kpis: undefined,
15
+ kpisFetchState: { fetchState: 'Not-Started', error: undefined },
16
+ hasValidState() {
17
+ return this.fetchState === 'Completed';
18
+ },
19
+ };
20
+ const invoiceList = (0, toolkit_1.createSlice)({
21
+ name: 'invoicingInvoiceList',
22
+ initialState: exports.initialState,
23
+ reducers: {
24
+ fetchInvoiceList: {
25
+ reducer(draft, action) {
26
+ if (!action.payload.keepExistingListItems) {
27
+ draft.invoiceIds = [];
28
+ draft.nextCursor = null;
29
+ }
30
+ draft.filters = action.payload.filters;
31
+ draft.sort = action.payload.sort;
32
+ draft.fetchState = 'In-Progress';
33
+ draft.error = undefined;
34
+ },
35
+ prepare(payload) {
36
+ return {
37
+ payload: {
38
+ filters: payload.filters ?? {},
39
+ cursor: payload.cursor,
40
+ keepExistingListItems: payload.keepExistingListItems ?? false,
41
+ sort: payload.sort,
42
+ },
43
+ };
44
+ },
45
+ },
46
+ updateInvoiceList(draft, action) {
47
+ const newIds = action.payload.invoices.map((invoice) => invoice.id);
48
+ draft.invoiceIds = action.payload.keepExistingListItems
49
+ ? [...new Set([...draft.invoiceIds, ...newIds])]
50
+ : newIds;
51
+ draft.nextCursor = action.payload.nextCursor;
52
+ draft.fetchState = 'Completed';
53
+ draft.error = undefined;
54
+ },
55
+ updateInvoiceListFailure(draft, action) {
56
+ draft.fetchState = 'Error';
57
+ draft.error = action.payload;
58
+ },
59
+ fetchInvoiceCounts(draft) {
60
+ draft.countsFetchState.fetchState = 'In-Progress';
61
+ draft.countsFetchState.error = undefined;
62
+ },
63
+ updateInvoiceCounts(draft, action) {
64
+ draft.counts = action.payload;
65
+ draft.countsFetchState.fetchState = 'Completed';
66
+ draft.countsFetchState.error = undefined;
67
+ },
68
+ updateInvoiceCountsFailure(draft, action) {
69
+ draft.countsFetchState.fetchState = 'Error';
70
+ draft.countsFetchState.error = action.payload;
71
+ },
72
+ fetchInvoiceKPIs(draft) {
73
+ draft.kpisFetchState.fetchState = 'In-Progress';
74
+ draft.kpisFetchState.error = undefined;
75
+ },
76
+ updateInvoiceKPIs(draft, action) {
77
+ draft.kpis = action.payload;
78
+ draft.kpisFetchState.fetchState = 'Completed';
79
+ draft.kpisFetchState.error = undefined;
80
+ },
81
+ updateInvoiceKPIsFailure(draft, action) {
82
+ draft.kpisFetchState.fetchState = 'Error';
83
+ draft.kpisFetchState.error = action.payload;
84
+ },
85
+ updateInvoiceListFilters(draft, action) {
86
+ draft.filters = action.payload;
87
+ },
88
+ clearInvoiceList(draft) {
89
+ Object.assign(draft, exports.initialState);
90
+ },
91
+ },
92
+ });
93
+ _a = invoiceList.actions, exports.fetchInvoiceList = _a.fetchInvoiceList, exports.updateInvoiceList = _a.updateInvoiceList, exports.updateInvoiceListFailure = _a.updateInvoiceListFailure, exports.fetchInvoiceCounts = _a.fetchInvoiceCounts, exports.updateInvoiceCounts = _a.updateInvoiceCounts, exports.updateInvoiceCountsFailure = _a.updateInvoiceCountsFailure, exports.fetchInvoiceKPIs = _a.fetchInvoiceKPIs, exports.updateInvoiceKPIs = _a.updateInvoiceKPIs, exports.updateInvoiceKPIsFailure = _a.updateInvoiceKPIsFailure, exports.updateInvoiceListFilters = _a.updateInvoiceListFilters, exports.clearInvoiceList = _a.clearInvoiceList;
94
+ exports.default = invoiceList.reducer;
@@ -0,0 +1,11 @@
1
+ import { FetchStateAndError } from '../../../commonStateTypes/common';
2
+ import { InvoicingInvoice, InvoicingInvoiceKPIs, InvoicingListCounts } from '../../../entity/invoicing/invoicingTypes';
3
+ import { RootState } from '../../../reducer';
4
+ import { InvoiceListFilters } from './invoiceListState';
5
+ export declare const getInvoiceListFetchState: (state: RootState) => FetchStateAndError;
6
+ export declare const getInvoiceListItems: (state: RootState) => InvoicingInvoice[];
7
+ export declare const getInvoiceListNextCursor: (state: RootState) => string | null;
8
+ export declare const getInvoiceListHasMore: (state: RootState) => boolean;
9
+ export declare const getInvoiceListFilters: (state: RootState) => InvoiceListFilters;
10
+ export declare const getInvoiceCounts: (state: RootState) => InvoicingListCounts;
11
+ export declare const getInvoiceKPIs: (state: RootState) => InvoicingInvoiceKPIs | undefined;
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getInvoiceKPIs = exports.getInvoiceCounts = exports.getInvoiceListFilters = exports.getInvoiceListHasMore = exports.getInvoiceListNextCursor = exports.getInvoiceListItems = exports.getInvoiceListFetchState = void 0;
4
+ const invoiceSelector_1 = require("../../../entity/invoicing/invoice/invoiceSelector");
5
+ const getInvoiceListFetchState = (state) => ({
6
+ fetchState: state.invoicingInvoiceListState.fetchState,
7
+ error: state.invoicingInvoiceListState.error,
8
+ });
9
+ exports.getInvoiceListFetchState = getInvoiceListFetchState;
10
+ const getInvoiceListItems = (state) => (0, invoiceSelector_1.getInvoicesByIds)(state, state.invoicingInvoiceListState.invoiceIds);
11
+ exports.getInvoiceListItems = getInvoiceListItems;
12
+ const getInvoiceListNextCursor = (state) => state.invoicingInvoiceListState.nextCursor;
13
+ exports.getInvoiceListNextCursor = getInvoiceListNextCursor;
14
+ const getInvoiceListHasMore = (state) => state.invoicingInvoiceListState.nextCursor != null;
15
+ exports.getInvoiceListHasMore = getInvoiceListHasMore;
16
+ const getInvoiceListFilters = (state) => state.invoicingInvoiceListState.filters;
17
+ exports.getInvoiceListFilters = getInvoiceListFilters;
18
+ const getInvoiceCounts = (state) => state.invoicingInvoiceListState.counts;
19
+ exports.getInvoiceCounts = getInvoiceCounts;
20
+ const getInvoiceKPIs = (state) => state.invoicingInvoiceListState.kpis;
21
+ exports.getInvoiceKPIs = getInvoiceKPIs;
@@ -0,0 +1,25 @@
1
+ import { FetchStateAndError, FetchedState, ID } from '../../../commonStateTypes/common';
2
+ import { InvoicingInvoiceKPIs, InvoicingListCounts } from '../../../entity/invoicing/invoicingTypes';
3
+ import { InvoicingListSort } from '../invoicingApiHelper';
4
+ /** Filters that drive the invoice list query (mirrors the Invoices hooks). */
5
+ export interface InvoiceListFilters {
6
+ customerId?: ID;
7
+ dateFrom?: string;
8
+ dateTo?: string;
9
+ search?: string;
10
+ status?: string;
11
+ subscriptionId?: ID;
12
+ }
13
+ export interface InvoiceListState extends FetchedState {
14
+ counts: InvoicingListCounts;
15
+ countsFetchState: FetchStateAndError;
16
+ filters: InvoiceListFilters;
17
+ /** Ordered invoice IDs for the current list view. */
18
+ invoiceIds: ID[];
19
+ kpisFetchState: FetchStateAndError;
20
+ /** Cursor for the next page (null when there are no more pages). */
21
+ nextCursor: string | null;
22
+ kpis?: InvoicingInvoiceKPIs;
23
+ /** Active server-side sort (undefined = backend default order). */
24
+ sort?: InvoicingListSort;
25
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,7 @@
1
+ import { ActionsObservable, StateObservable } from 'redux-observable';
2
+ import { Observable } from 'rxjs';
3
+ import { RootState } from '../../../reducer';
4
+ import { ZeniAPI } from '../../../zeniAPI';
5
+ import { downloadInvoicePdf, downloadInvoicePdfFailure, downloadInvoicePdfSuccess } from './invoicePdfReducer';
6
+ export type ActionType = ReturnType<typeof downloadInvoicePdf> | ReturnType<typeof downloadInvoicePdfSuccess> | ReturnType<typeof downloadInvoicePdfFailure>;
7
+ export declare const downloadInvoicePdfEpic: (actions$: ActionsObservable<ActionType>, _state$: StateObservable<RootState>, zeniAPI: ZeniAPI) => Observable<ActionType>;
@@ -0,0 +1,41 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.downloadInvoicePdfEpic = void 0;
4
+ const rxjs_1 = require("rxjs");
5
+ const operators_1 = require("rxjs/operators");
6
+ const responsePayload_1 = require("../../../responsePayload");
7
+ const invoicingApiHelper_1 = require("../invoicingApiHelper");
8
+ const invoicePdfReducer_1 = require("./invoicePdfReducer");
9
+ /**
10
+ * Turn the auth-fetched PDF bytes into a browser download. The invoicing PDF
11
+ * endpoint requires the zeni-* auth headers, so the blob must be fetched via
12
+ * ZeniAPI (a plain <a href>/<iframe> cannot attach them) and then handed to the
13
+ * browser as an object URL.
14
+ */
15
+ const triggerBrowserDownload = (data, fileName) => {
16
+ if (typeof document === 'undefined' || typeof URL === 'undefined') {
17
+ return;
18
+ }
19
+ const blob = new Blob([data], { type: 'application/pdf' });
20
+ const objectUrl = URL.createObjectURL(blob);
21
+ const anchor = document.createElement('a');
22
+ anchor.href = objectUrl;
23
+ anchor.download = fileName;
24
+ document.body.appendChild(anchor);
25
+ anchor.click();
26
+ anchor.remove();
27
+ URL.revokeObjectURL(objectUrl);
28
+ };
29
+ const downloadInvoicePdfEpic = (actions$, _state$, zeniAPI) => actions$.pipe((0, operators_1.filter)(invoicePdfReducer_1.downloadInvoicePdf.match), (0, operators_1.mergeMap)((action) => {
30
+ const { fileName, invoiceId } = action.payload;
31
+ const apiUrl = `${(0, invoicingApiHelper_1.invoicingBaseUrl)(zeniAPI)}/invoices/${encodeURIComponent(invoiceId)}/pdf`;
32
+ return zeniAPI.getFile(apiUrl).pipe((0, operators_1.map)((data) => {
33
+ triggerBrowserDownload(data, fileName != null && fileName !== '' ? fileName : `${invoiceId}.pdf`);
34
+ return (0, invoicePdfReducer_1.downloadInvoicePdfSuccess)({ invoiceId });
35
+ }), (0, operators_1.catchError)((error) => (0, rxjs_1.of)((0, invoicePdfReducer_1.downloadInvoicePdfFailure)({
36
+ error: (0, responsePayload_1.createZeniAPIStatus)('Unexpected Error', 'Invoice PDF download REST API call errored out ' +
37
+ JSON.stringify(error)),
38
+ invoiceId,
39
+ }))));
40
+ }));
41
+ exports.downloadInvoicePdfEpic = downloadInvoicePdfEpic;
@@ -0,0 +1,20 @@
1
+ import { FetchStateAndError, ID } from '../../../commonStateTypes/common';
2
+ import { ZeniAPIStatus } from '../../../responsePayload';
3
+ export interface DownloadInvoicePdfPayload {
4
+ invoiceId: ID;
5
+ /** Optional download file name; defaults to `{invoiceId}.pdf`. */
6
+ fileName?: string;
7
+ }
8
+ /** Per-invoice PDF download fetch state keyed by invoice id. */
9
+ export interface InvoicingInvoicePdfState {
10
+ byInvoiceId: Record<ID, FetchStateAndError>;
11
+ }
12
+ export declare const initialState: InvoicingInvoicePdfState;
13
+ export declare const downloadInvoicePdf: import("@reduxjs/toolkit").ActionCreatorWithPayload<DownloadInvoicePdfPayload, "invoicingInvoicePdf/downloadInvoicePdf">, downloadInvoicePdfSuccess: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
14
+ invoiceId: ID;
15
+ }, "invoicingInvoicePdf/downloadInvoicePdfSuccess">, downloadInvoicePdfFailure: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
16
+ error: ZeniAPIStatus;
17
+ invoiceId: ID;
18
+ }, "invoicingInvoicePdf/downloadInvoicePdfFailure">, clearAllInvoicingInvoicePdf: import("@reduxjs/toolkit").ActionCreatorWithoutPayload<"invoicingInvoicePdf/clearAllInvoicingInvoicePdf">;
19
+ declare const _default: import("redux").Reducer<InvoicingInvoicePdfState>;
20
+ export default _default;
@@ -0,0 +1,37 @@
1
+ "use strict";
2
+ var _a;
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.clearAllInvoicingInvoicePdf = exports.downloadInvoicePdfFailure = exports.downloadInvoicePdfSuccess = exports.downloadInvoicePdf = exports.initialState = void 0;
5
+ const toolkit_1 = require("@reduxjs/toolkit");
6
+ exports.initialState = {
7
+ byInvoiceId: {},
8
+ };
9
+ const invoicePdf = (0, toolkit_1.createSlice)({
10
+ name: 'invoicingInvoicePdf',
11
+ initialState: exports.initialState,
12
+ reducers: {
13
+ downloadInvoicePdf(draft, action) {
14
+ draft.byInvoiceId[action.payload.invoiceId] = {
15
+ fetchState: 'In-Progress',
16
+ error: undefined,
17
+ };
18
+ },
19
+ downloadInvoicePdfSuccess(draft, action) {
20
+ draft.byInvoiceId[action.payload.invoiceId] = {
21
+ fetchState: 'Completed',
22
+ error: undefined,
23
+ };
24
+ },
25
+ downloadInvoicePdfFailure(draft, action) {
26
+ draft.byInvoiceId[action.payload.invoiceId] = {
27
+ fetchState: 'Error',
28
+ error: action.payload.error,
29
+ };
30
+ },
31
+ clearAllInvoicingInvoicePdf(draft) {
32
+ draft.byInvoiceId = {};
33
+ },
34
+ },
35
+ });
36
+ _a = invoicePdf.actions, exports.downloadInvoicePdf = _a.downloadInvoicePdf, exports.downloadInvoicePdfSuccess = _a.downloadInvoicePdfSuccess, exports.downloadInvoicePdfFailure = _a.downloadInvoicePdfFailure, exports.clearAllInvoicingInvoicePdf = _a.clearAllInvoicingInvoicePdf;
37
+ exports.default = invoicePdf.reducer;
@@ -0,0 +1,3 @@
1
+ import { FetchStateAndError, ID } from '../../../commonStateTypes/common';
2
+ import { RootState } from '../../../reducer';
3
+ export declare const getInvoicingInvoicePdfState: (invoiceId: ID) => (state: RootState) => FetchStateAndError;
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getInvoicingInvoicePdfState = void 0;
4
+ const NOT_STARTED = {
5
+ fetchState: 'Not-Started',
6
+ error: undefined,
7
+ };
8
+ const getInvoicingInvoicePdfState = (invoiceId) => (state) => state.invoicingInvoicePdfState.byInvoiceId[invoiceId] ?? NOT_STARTED;
9
+ exports.getInvoicingInvoicePdfState = getInvoicingInvoicePdfState;
@@ -0,0 +1,22 @@
1
+ import { ZeniAPI } from '../../zeniAPI';
2
+ /** Default page size for invoicing list / infinite-scroll requests. */
3
+ export declare const INVOICING_LIST_PAGE_SIZE = 50;
4
+ /**
5
+ * Base URL for the Invoicing microservice, keeping the platform-standard
6
+ * `/1.0/*` path prefix. All invoicing epics route through here so auth headers
7
+ * (zeni-user-id / session-id / tenant-id) are attached centrally by the client.
8
+ */
9
+ export declare const invoicingBaseUrl: (zeniAPI: ZeniAPI) => string;
10
+ /** Append a query string (with leading `?`) when params are present. */
11
+ export declare const withQuery: (path: string, params: URLSearchParams) => string;
12
+ /**
13
+ * Server-side sort descriptor shared by all invoicing list views. `field` is the
14
+ * backend sort key (validated against a per-entity whitelist); `dir` mirrors the
15
+ * DataListTable sort direction.
16
+ */
17
+ export interface InvoicingListSort {
18
+ dir: 'asc' | 'desc';
19
+ field: string;
20
+ }
21
+ /** Attach `sort_field`/`sort_dir` to a list query when a sort is active. */
22
+ export declare const applyListSortParams: (params: URLSearchParams, sort?: InvoicingListSort) => void;
@@ -0,0 +1,44 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.applyListSortParams = exports.withQuery = exports.invoicingBaseUrl = exports.INVOICING_LIST_PAGE_SIZE = void 0;
4
+ /** Default page size for invoicing list / infinite-scroll requests. */
5
+ exports.INVOICING_LIST_PAGE_SIZE = 50;
6
+ /**
7
+ * Hardcoded fallback for the Invoicing microservice root.
8
+ *
9
+ * The proper wiring routes the URL through `zeni-web-app-v2`'s
10
+ * `createAPIEndPoints` into `apiEndPoints.invoicingMicroServiceBaseUrl`. That
11
+ * value only reaches the running app once app-v2 is beta-published, which is a
12
+ * heavier step than `pnpm build-beta-and-copy` of CES + web-components. Until
13
+ * then we hardcode the dev service URL here so the module is runnable after a
14
+ * CES/web-components build alone. Once app-v2 ships the endpoint, the configured
15
+ * value below takes precedence automatically and this fallback is unused.
16
+ */
17
+ const INVOICING_SERVICE_FALLBACK_URL = 'https://dev.api.zeni.ai/agents/invoicing-service';
18
+ /**
19
+ * Base URL for the Invoicing microservice, keeping the platform-standard
20
+ * `/1.0/*` path prefix. All invoicing epics route through here so auth headers
21
+ * (zeni-user-id / session-id / tenant-id) are attached centrally by the client.
22
+ */
23
+ const invoicingBaseUrl = (zeniAPI) => {
24
+ const configured = zeniAPI.apiEndPoints.invoicingMicroServiceBaseUrl;
25
+ const root = configured != null && configured.length > 0
26
+ ? configured
27
+ : INVOICING_SERVICE_FALLBACK_URL;
28
+ return `${root}/1.0`;
29
+ };
30
+ exports.invoicingBaseUrl = invoicingBaseUrl;
31
+ /** Append a query string (with leading `?`) when params are present. */
32
+ const withQuery = (path, params) => {
33
+ const qs = params.toString();
34
+ return qs.length > 0 ? `${path}?${qs}` : path;
35
+ };
36
+ exports.withQuery = withQuery;
37
+ /** Attach `sort_field`/`sort_dir` to a list query when a sort is active. */
38
+ const applyListSortParams = (params, sort) => {
39
+ if (sort != null && sort.field !== '') {
40
+ params.set('sort_field', sort.field);
41
+ params.set('sort_dir', sort.dir);
42
+ }
43
+ };
44
+ exports.applyListSortParams = applyListSortParams;
@@ -0,0 +1,8 @@
1
+ import { ActionsObservable, StateObservable } from 'redux-observable';
2
+ import { Observable } from 'rxjs';
3
+ import { updateInvoicingTransactions } from '../../../entity/invoicing/transaction/transactionReducer';
4
+ import { RootState } from '../../../reducer';
5
+ import { ZeniAPI } from '../../../zeniAPI';
6
+ import { runInvoicingPaymentAction, runInvoicingPaymentActionFailure, runInvoicingPaymentActionSuccess } from './paymentActionReducer';
7
+ export type ActionType = ReturnType<typeof runInvoicingPaymentAction> | ReturnType<typeof runInvoicingPaymentActionSuccess> | ReturnType<typeof runInvoicingPaymentActionFailure> | ReturnType<typeof updateInvoicingTransactions>;
8
+ export declare const runInvoicingPaymentActionEpic: (actions$: ActionsObservable<ActionType>, _state$: StateObservable<RootState>, zeniAPI: ZeniAPI) => Observable<ActionType>;
@@ -0,0 +1,32 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.runInvoicingPaymentActionEpic = void 0;
4
+ const rxjs_1 = require("rxjs");
5
+ const operators_1 = require("rxjs/operators");
6
+ const transactionReducer_1 = require("../../../entity/invoicing/transaction/transactionReducer");
7
+ const responsePayload_1 = require("../../../responsePayload");
8
+ const invoicingApiHelper_1 = require("../invoicingApiHelper");
9
+ const paymentActionReducer_1 = require("./paymentActionReducer");
10
+ const runInvoicingPaymentActionEpic = (actions$, _state$, zeniAPI) => actions$.pipe((0, operators_1.filter)(paymentActionReducer_1.runInvoicingPaymentAction.match), (0, operators_1.mergeMap)((action) => {
11
+ const { action: kind, body, id } = action.payload;
12
+ const apiUrl = `${(0, invoicingApiHelper_1.invoicingBaseUrl)(zeniAPI)}/payments/${encodeURIComponent(id)}/${kind}`;
13
+ return zeniAPI
14
+ .postAndGetJSON(apiUrl, body ?? {})
15
+ .pipe((0, operators_1.mergeMap)((response) => {
16
+ if ((0, responsePayload_1.isSuccessResponse)(response) && response.data != null) {
17
+ return [
18
+ (0, transactionReducer_1.updateInvoicingTransactions)([response.data], 'merge'),
19
+ (0, paymentActionReducer_1.runInvoicingPaymentActionSuccess)({ id }),
20
+ ];
21
+ }
22
+ return (0, rxjs_1.of)((0, paymentActionReducer_1.runInvoicingPaymentActionFailure)({
23
+ error: response.status,
24
+ id,
25
+ }));
26
+ }), (0, operators_1.catchError)((error) => (0, rxjs_1.of)((0, paymentActionReducer_1.runInvoicingPaymentActionFailure)({
27
+ error: (0, responsePayload_1.createZeniAPIStatus)('Unexpected Error', 'Payment action REST API call errored out ' +
28
+ JSON.stringify(error)),
29
+ id,
30
+ }))));
31
+ }));
32
+ exports.runInvoicingPaymentActionEpic = runInvoicingPaymentActionEpic;
@@ -0,0 +1,21 @@
1
+ import { FetchStateAndError, ID } from '../../../commonStateTypes/common';
2
+ import { ZeniAPIStatus } from '../../../responsePayload';
3
+ export interface RunInvoicingPaymentActionPayload {
4
+ action: string;
5
+ id: ID;
6
+ /** Optional JSON body for actions that take parameters. */
7
+ body?: Record<string, unknown>;
8
+ }
9
+ /** Per-payment action fetch state keyed by payment id. */
10
+ export interface InvoicingPaymentActionState {
11
+ byId: Record<ID, FetchStateAndError>;
12
+ }
13
+ export declare const initialState: InvoicingPaymentActionState;
14
+ export declare const runInvoicingPaymentAction: import("@reduxjs/toolkit").ActionCreatorWithPayload<RunInvoicingPaymentActionPayload, "invoicingPaymentAction/runInvoicingPaymentAction">, runInvoicingPaymentActionSuccess: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
15
+ id: ID;
16
+ }, "invoicingPaymentAction/runInvoicingPaymentActionSuccess">, runInvoicingPaymentActionFailure: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
17
+ error: ZeniAPIStatus;
18
+ id: ID;
19
+ }, "invoicingPaymentAction/runInvoicingPaymentActionFailure">, clearInvoicingPaymentAction: import("@reduxjs/toolkit").ActionCreatorWithPayload<string, "invoicingPaymentAction/clearInvoicingPaymentAction">, clearAllInvoicingPaymentActions: import("@reduxjs/toolkit").ActionCreatorWithoutPayload<"invoicingPaymentAction/clearAllInvoicingPaymentActions">;
20
+ declare const _default: import("redux").Reducer<InvoicingPaymentActionState>;
21
+ export default _default;
@@ -0,0 +1,40 @@
1
+ "use strict";
2
+ var _a;
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.clearAllInvoicingPaymentActions = exports.clearInvoicingPaymentAction = exports.runInvoicingPaymentActionFailure = exports.runInvoicingPaymentActionSuccess = exports.runInvoicingPaymentAction = exports.initialState = void 0;
5
+ const toolkit_1 = require("@reduxjs/toolkit");
6
+ exports.initialState = {
7
+ byId: {},
8
+ };
9
+ const paymentAction = (0, toolkit_1.createSlice)({
10
+ name: 'invoicingPaymentAction',
11
+ initialState: exports.initialState,
12
+ reducers: {
13
+ runInvoicingPaymentAction(draft, action) {
14
+ draft.byId[action.payload.id] = {
15
+ fetchState: 'In-Progress',
16
+ error: undefined,
17
+ };
18
+ },
19
+ runInvoicingPaymentActionSuccess(draft, action) {
20
+ draft.byId[action.payload.id] = {
21
+ fetchState: 'Completed',
22
+ error: undefined,
23
+ };
24
+ },
25
+ runInvoicingPaymentActionFailure(draft, action) {
26
+ draft.byId[action.payload.id] = {
27
+ fetchState: 'Error',
28
+ error: action.payload.error,
29
+ };
30
+ },
31
+ clearInvoicingPaymentAction(draft, action) {
32
+ delete draft.byId[action.payload];
33
+ },
34
+ clearAllInvoicingPaymentActions(draft) {
35
+ draft.byId = {};
36
+ },
37
+ },
38
+ });
39
+ _a = paymentAction.actions, exports.runInvoicingPaymentAction = _a.runInvoicingPaymentAction, exports.runInvoicingPaymentActionSuccess = _a.runInvoicingPaymentActionSuccess, exports.runInvoicingPaymentActionFailure = _a.runInvoicingPaymentActionFailure, exports.clearInvoicingPaymentAction = _a.clearInvoicingPaymentAction, exports.clearAllInvoicingPaymentActions = _a.clearAllInvoicingPaymentActions;
40
+ exports.default = paymentAction.reducer;
@@ -0,0 +1,3 @@
1
+ import { FetchStateAndError, ID } from '../../../commonStateTypes/common';
2
+ import { RootState } from '../../../reducer';
3
+ export declare const getInvoicingPaymentActionState: (id: ID) => (state: RootState) => FetchStateAndError;
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getInvoicingPaymentActionState = void 0;
4
+ const NOT_STARTED = {
5
+ fetchState: 'Not-Started',
6
+ error: undefined,
7
+ };
8
+ const getInvoicingPaymentActionState = (id) => (state) => state.invoicingPaymentActionState.byId[id] ?? NOT_STARTED;
9
+ exports.getInvoicingPaymentActionState = getInvoicingPaymentActionState;
@@ -0,0 +1,8 @@
1
+ import { ActionsObservable, StateObservable } from 'redux-observable';
2
+ import { Observable } from 'rxjs';
3
+ import { updateInvoicingTransactions } from '../../../entity/invoicing/transaction/transactionReducer';
4
+ import { RootState } from '../../../reducer';
5
+ import { ZeniAPI } from '../../../zeniAPI';
6
+ import { recordPayment, recordPaymentFailure, recordPaymentSuccess } from './recordPaymentReducer';
7
+ export type ActionType = ReturnType<typeof recordPayment> | ReturnType<typeof recordPaymentSuccess> | ReturnType<typeof recordPaymentFailure> | ReturnType<typeof updateInvoicingTransactions>;
8
+ export declare const recordPaymentEpic: (actions$: ActionsObservable<ActionType>, _state$: StateObservable<RootState>, zeniAPI: ZeniAPI) => Observable<ActionType>;
@@ -0,0 +1,27 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.recordPaymentEpic = void 0;
4
+ const rxjs_1 = require("rxjs");
5
+ const operators_1 = require("rxjs/operators");
6
+ const transactionReducer_1 = require("../../../entity/invoicing/transaction/transactionReducer");
7
+ const responsePayload_1 = require("../../../responsePayload");
8
+ const invoicingApiHelper_1 = require("../invoicingApiHelper");
9
+ const recordPaymentReducer_1 = require("./recordPaymentReducer");
10
+ const recordPaymentEpic = (actions$, _state$, zeniAPI) => actions$.pipe((0, operators_1.filter)(recordPaymentReducer_1.recordPayment.match), (0, operators_1.mergeMap)((action) => {
11
+ const apiUrl = `${(0, invoicingApiHelper_1.invoicingBaseUrl)(zeniAPI)}/payments`;
12
+ return zeniAPI
13
+ .postAndGetJSON(apiUrl, {
14
+ ...action.payload,
15
+ })
16
+ .pipe((0, operators_1.mergeMap)((response) => {
17
+ if ((0, responsePayload_1.isSuccessResponse)(response) && response.data != null) {
18
+ return [
19
+ (0, transactionReducer_1.updateInvoicingTransactions)([response.data], 'merge'),
20
+ (0, recordPaymentReducer_1.recordPaymentSuccess)({ transactionId: response.data.id }),
21
+ ];
22
+ }
23
+ return (0, rxjs_1.of)((0, recordPaymentReducer_1.recordPaymentFailure)(response.status));
24
+ }), (0, operators_1.catchError)((error) => (0, rxjs_1.of)((0, recordPaymentReducer_1.recordPaymentFailure)((0, responsePayload_1.createZeniAPIStatus)('Unexpected Error', 'Record payment REST API call errored out ' +
25
+ JSON.stringify(error))))));
26
+ }));
27
+ exports.recordPaymentEpic = recordPaymentEpic;
@@ -0,0 +1,32 @@
1
+ import { FetchedState, ID } from '../../../commonStateTypes/common';
2
+ import { ZeniAPIStatus } from '../../../responsePayload';
3
+ /** Invoice reference linked to a recorded payment (amounts in minor units). */
4
+ export interface RecordPaymentLinkedInvoice {
5
+ applied_amount: number;
6
+ invoice_id: string;
7
+ }
8
+ /** Request body for recording a manual payment; mirrors the Invoicing backend. */
9
+ export interface RecordPaymentRequest {
10
+ amount: number;
11
+ customer_id: string;
12
+ payment_method: string;
13
+ currency_code?: string;
14
+ date?: string;
15
+ gateway?: string;
16
+ id_at_gateway?: string;
17
+ linked_invoices?: RecordPaymentLinkedInvoice[];
18
+ notes?: string;
19
+ reference_number?: string;
20
+ status?: string;
21
+ type?: string;
22
+ }
23
+ export interface RecordPaymentState extends FetchedState {
24
+ recordedTransactionId?: ID;
25
+ request?: RecordPaymentRequest;
26
+ }
27
+ export declare const initialState: RecordPaymentState;
28
+ export declare const recordPayment: import("@reduxjs/toolkit").ActionCreatorWithPayload<RecordPaymentRequest, "invoicingRecordPayment/recordPayment">, recordPaymentSuccess: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
29
+ transactionId: ID;
30
+ }, "invoicingRecordPayment/recordPaymentSuccess">, recordPaymentFailure: import("@reduxjs/toolkit").ActionCreatorWithPayload<ZeniAPIStatus<Record<string, unknown>>, "invoicingRecordPayment/recordPaymentFailure">, resetRecordPayment: import("@reduxjs/toolkit").ActionCreatorWithoutPayload<"invoicingRecordPayment/resetRecordPayment">;
31
+ declare const _default: import("redux").Reducer<RecordPaymentState>;
32
+ export default _default;
@@ -0,0 +1,40 @@
1
+ "use strict";
2
+ var _a;
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.resetRecordPayment = exports.recordPaymentFailure = exports.recordPaymentSuccess = exports.recordPayment = exports.initialState = void 0;
5
+ const toolkit_1 = require("@reduxjs/toolkit");
6
+ exports.initialState = {
7
+ fetchState: 'Not-Started',
8
+ error: undefined,
9
+ recordedTransactionId: undefined,
10
+ request: undefined,
11
+ hasValidState() {
12
+ return this.fetchState === 'Completed';
13
+ },
14
+ };
15
+ const recordPaymentSlice = (0, toolkit_1.createSlice)({
16
+ name: 'invoicingRecordPayment',
17
+ initialState: exports.initialState,
18
+ reducers: {
19
+ recordPayment(draft, action) {
20
+ draft.fetchState = 'In-Progress';
21
+ draft.error = undefined;
22
+ draft.recordedTransactionId = undefined;
23
+ draft.request = action.payload;
24
+ },
25
+ recordPaymentSuccess(draft, action) {
26
+ draft.fetchState = 'Completed';
27
+ draft.error = undefined;
28
+ draft.recordedTransactionId = action.payload.transactionId;
29
+ },
30
+ recordPaymentFailure(draft, action) {
31
+ draft.fetchState = 'Error';
32
+ draft.error = action.payload;
33
+ },
34
+ resetRecordPayment(draft) {
35
+ Object.assign(draft, exports.initialState);
36
+ },
37
+ },
38
+ });
39
+ _a = recordPaymentSlice.actions, exports.recordPayment = _a.recordPayment, exports.recordPaymentSuccess = _a.recordPaymentSuccess, exports.recordPaymentFailure = _a.recordPaymentFailure, exports.resetRecordPayment = _a.resetRecordPayment;
40
+ exports.default = recordPaymentSlice.reducer;
@@ -0,0 +1,4 @@
1
+ import { FetchStateAndError, ID } from '../../../commonStateTypes/common';
2
+ import { RootState } from '../../../reducer';
3
+ export declare const getRecordPaymentFetchState: (state: RootState) => FetchStateAndError;
4
+ export declare const getRecordedTransactionId: (state: RootState) => ID | undefined;
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getRecordedTransactionId = exports.getRecordPaymentFetchState = void 0;
4
+ const getRecordPaymentFetchState = (state) => ({
5
+ fetchState: state.invoicingRecordPaymentState.fetchState,
6
+ error: state.invoicingRecordPaymentState.error,
7
+ });
8
+ exports.getRecordPaymentFetchState = getRecordPaymentFetchState;
9
+ const getRecordedTransactionId = (state) => state.invoicingRecordPaymentState.recordedTransactionId;
10
+ exports.getRecordedTransactionId = getRecordedTransactionId;
@@ -0,0 +1,7 @@
1
+ import { ActionsObservable, StateObservable } from 'redux-observable';
2
+ import { Observable } from 'rxjs';
3
+ import { RootState } from '../../../reducer';
4
+ import { ZeniAPI } from '../../../zeniAPI';
5
+ import { fetchInvoicingReport, updateInvoicingReport, updateInvoicingReportFailure } from './reportsViewReducer';
6
+ export type ActionType = ReturnType<typeof fetchInvoicingReport> | ReturnType<typeof updateInvoicingReport> | ReturnType<typeof updateInvoicingReportFailure>;
7
+ export declare const fetchInvoicingReportEpic: (actions$: ActionsObservable<ActionType>, _state$: StateObservable<RootState>, zeniAPI: ZeniAPI) => Observable<ActionType>;