@zeniai/client-epic-state 5.1.14 → 5.1.15

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 (418) hide show
  1. package/lib/common/aiCfo/aiCfoSuggestedQuestionsPageContext.d.ts +1 -1
  2. package/lib/commonStateTypes/amount.d.ts +1 -0
  3. package/lib/commonStateTypes/amount.js +9 -1
  4. package/lib/commonStateTypes/animations.d.ts +1 -1
  5. package/lib/commonStateTypes/animations.js +1 -0
  6. package/lib/commonStateTypes/workingDayHelper.d.ts +9 -0
  7. package/lib/commonStateTypes/workingDayHelper.js +28 -1
  8. package/lib/entity/aiCfo/aiCfoPayload.d.ts +63 -5
  9. package/lib/entity/aiCfo/aiCfoReducer.d.ts +23 -2
  10. package/lib/entity/aiCfo/aiCfoReducer.js +249 -9
  11. package/lib/entity/aiCfo/aiCfoSelector.d.ts +4 -1
  12. package/lib/entity/aiCfo/aiCfoSelector.js +19 -1
  13. package/lib/entity/aiCfo/aiCfoState.d.ts +97 -4
  14. package/lib/entity/aiCfo/aiCfoState.js +20 -1
  15. package/lib/entity/approvalRule/approvalRuleConflict.d.ts +56 -0
  16. package/lib/entity/approvalRule/approvalRuleConflict.js +77 -0
  17. package/lib/entity/approvalRule/approvalRulePayload.d.ts +34 -5
  18. package/lib/entity/approvalRule/approvalRulePayload.js +149 -10
  19. package/lib/entity/approvalRule/approvalRuleSelector.d.ts +25 -1
  20. package/lib/entity/approvalRule/approvalRuleSelector.js +40 -0
  21. package/lib/entity/approvalRule/approvalRuleState.d.ts +59 -7
  22. package/lib/entity/cardPolicy/cardPolicyPayload.d.ts +277 -0
  23. package/lib/entity/cardPolicy/cardPolicyPayload.js +143 -0
  24. package/lib/entity/cardPolicy/cardPolicyReducer.d.ts +19 -0
  25. package/lib/entity/cardPolicy/cardPolicyReducer.js +175 -0
  26. package/lib/entity/cardPolicy/cardPolicySelector.d.ts +32 -0
  27. package/lib/entity/cardPolicy/cardPolicySelector.js +99 -0
  28. package/lib/entity/cardPolicy/cardPolicyState.d.ts +205 -0
  29. package/lib/entity/cardPolicy/cardPolicyState.js +14 -0
  30. package/lib/entity/cardPolicy/extractPolicyDocumentEpic.d.ts +18 -0
  31. package/lib/entity/cardPolicy/extractPolicyDocumentEpic.js +68 -0
  32. package/lib/entity/cardPolicy/fetchCardPolicyVendorOptionsEpic.d.ts +26 -0
  33. package/lib/entity/cardPolicy/fetchCardPolicyVendorOptionsEpic.js +47 -0
  34. package/lib/entity/cardPolicy/policyDocumentExtractionToRecommendationBridgeEpic.d.ts +25 -0
  35. package/lib/entity/cardPolicy/policyDocumentExtractionToRecommendationBridgeEpic.js +39 -0
  36. package/lib/entity/cardPolicy/policyRecommendationFromUploadEpic.d.ts +24 -0
  37. package/lib/entity/cardPolicy/policyRecommendationFromUploadEpic.js +105 -0
  38. package/lib/entity/company/companyPayload.d.ts +4 -0
  39. package/lib/entity/company/companyPayload.js +6 -0
  40. package/lib/entity/company/companyStateTypes.d.ts +7 -0
  41. package/lib/entity/jeSchedules/jeSchedulesPayload.d.ts +1 -0
  42. package/lib/entity/jeSchedules/jeSchedulesPayload.js +19 -0
  43. package/lib/entity/jeSchedules/jeSchedulesState.d.ts +2 -0
  44. package/lib/entity/jeSchedules/jeSchedulesTypes.d.ts +1 -1
  45. package/lib/entity/monthEndCloseChecks/monthEndCloseChecksState.d.ts +1 -1
  46. package/lib/entity/paymentAccount/paymentAccountSelector.d.ts +1 -0
  47. package/lib/entity/paymentAccount/paymentAccountSelector.js +9 -0
  48. package/lib/entity/snackbar/snackbarTypes.d.ts +1 -1
  49. package/lib/entity/snackbar/snackbarTypes.js +5 -0
  50. package/lib/entity/task/taskPayload.d.ts +3 -1
  51. package/lib/entity/task/taskPayload.js +2 -0
  52. package/lib/entity/task/taskState.d.ts +2 -0
  53. package/lib/entity/tenant/clearAllEpic.d.ts +8 -2
  54. package/lib/entity/tenant/clearAllEpic.js +12 -0
  55. package/lib/entity/tenant/epic/deleteConnectionEpic.d.ts +1 -1
  56. package/lib/entity/tenant/epic/initEmailConnectOAuthEpic.d.ts +21 -0
  57. package/lib/entity/tenant/epic/initEmailConnectOAuthEpic.js +59 -0
  58. package/lib/entity/tenant/epic/saveAPIKeyConnectionEpic.d.ts +1 -1
  59. package/lib/entity/tenant/epic/saveConnectorCredentialsEpic.d.ts +3 -3
  60. package/lib/entity/tenant/epic/saveOAuthConnectionEpic.d.ts +1 -1
  61. package/lib/entity/tenant/tenantPayload.d.ts +1 -0
  62. package/lib/entity/tenant/tenantReducer.d.ts +38 -25
  63. package/lib/entity/tenant/tenantReducer.js +70 -10
  64. package/lib/entity/tenant/tenantState.d.ts +1 -0
  65. package/lib/entity/transaction/payloadTypes/transactionPayload.d.ts +2 -0
  66. package/lib/entity/transaction/payloadTypes/transactionPayload.js +17 -2
  67. package/lib/entity/transaction/stateTypes/transaction.d.ts +2 -0
  68. package/lib/epic.d.ts +31 -3
  69. package/lib/epic.js +32 -3
  70. package/lib/esm/commonStateTypes/amount.js +7 -0
  71. package/lib/esm/commonStateTypes/animations.js +1 -0
  72. package/lib/esm/commonStateTypes/workingDayHelper.js +26 -0
  73. package/lib/esm/entity/aiCfo/aiCfoReducer.js +249 -9
  74. package/lib/esm/entity/aiCfo/aiCfoSelector.js +17 -1
  75. package/lib/esm/entity/aiCfo/aiCfoState.js +17 -0
  76. package/lib/esm/entity/approvalRule/approvalRuleConflict.js +74 -0
  77. package/lib/esm/entity/approvalRule/approvalRulePayload.js +149 -10
  78. package/lib/esm/entity/approvalRule/approvalRuleSelector.js +35 -0
  79. package/lib/esm/entity/cardPolicy/cardPolicyPayload.js +130 -0
  80. package/lib/esm/entity/cardPolicy/cardPolicyReducer.js +171 -0
  81. package/lib/esm/entity/cardPolicy/cardPolicySelector.js +75 -0
  82. package/lib/esm/entity/cardPolicy/cardPolicyState.js +9 -0
  83. package/lib/esm/entity/cardPolicy/extractPolicyDocumentEpic.js +64 -0
  84. package/lib/esm/entity/cardPolicy/fetchCardPolicyVendorOptionsEpic.js +43 -0
  85. package/lib/esm/entity/cardPolicy/policyDocumentExtractionToRecommendationBridgeEpic.js +35 -0
  86. package/lib/esm/entity/cardPolicy/policyRecommendationFromUploadEpic.js +101 -0
  87. package/lib/esm/entity/company/companyPayload.js +6 -0
  88. package/lib/esm/entity/jeSchedules/jeSchedulesPayload.js +19 -0
  89. package/lib/esm/entity/paymentAccount/paymentAccountSelector.js +8 -0
  90. package/lib/esm/entity/snackbar/snackbarTypes.js +5 -0
  91. package/lib/esm/entity/task/taskPayload.js +2 -0
  92. package/lib/esm/entity/tenant/clearAllEpic.js +12 -0
  93. package/lib/esm/entity/tenant/epic/initEmailConnectOAuthEpic.js +55 -0
  94. package/lib/esm/entity/tenant/tenantReducer.js +68 -8
  95. package/lib/esm/entity/transaction/payloadTypes/transactionPayload.js +17 -2
  96. package/lib/esm/epic.js +32 -3
  97. package/lib/esm/index.js +66 -25
  98. package/lib/esm/reducer.js +18 -0
  99. package/lib/esm/view/aiCfoView/aiCfoViewReducer.js +6 -3
  100. package/lib/esm/view/aiCfoView/epics/createSessionAndSubmitEpic.js +5 -2
  101. package/lib/esm/view/aiCfoView/epics/createSessionEpic.js +2 -1
  102. package/lib/esm/view/aiCfoView/epics/fetchSuggestedQuestionsEpic.js +12 -2
  103. package/lib/esm/view/companyTaskManagerView/companyTaskManagerViewReducer.js +39 -11
  104. package/lib/esm/view/companyTaskManagerView/companyTaskManagerViewSelector.js +14 -4
  105. package/lib/esm/view/companyTaskManagerView/epics/fetchCockpitContextEpic.js +38 -0
  106. package/lib/esm/view/companyTaskManagerView/epics/fetchCompanyTaskManagerViewEpic.js +37 -28
  107. package/lib/esm/view/companyTaskManagerView/epics/updateCompanyTaskManagerViewFiltersEpic.js +16 -0
  108. package/lib/esm/view/companyView/epic/companyPassport/updateCapitalizationAccountThresholdEpic.js +3 -3
  109. package/lib/esm/view/companyView/epic/fetchAllCockpitViewsEpic.js +2 -2
  110. package/lib/esm/view/expenseAutomationView/selectors/transactionCategorizationSelector.js +1 -1
  111. package/lib/esm/view/fileView/epic/deleteFileEpic.js +2 -2
  112. package/lib/esm/view/fileView/epic/deleteFileListEpic.js +2 -2
  113. package/lib/esm/view/onboardingView/customerView/epic/aiAgentsActivation/fetchAiAgentsActivationStatusEpic.js +40 -0
  114. package/lib/esm/view/onboardingView/customerView/epic/customerDetails/acknowledgeOnboardingAiActivationViewedEpic.js +29 -0
  115. package/lib/esm/view/onboardingView/customerView/epic/customerDetails/acknowledgeOnboardingAiFinanceTeamEpic.js +40 -0
  116. package/lib/esm/view/onboardingView/customerView/epic/customerDetails/updateOnboardingCustomerViewEpic.js +24 -18
  117. package/lib/esm/view/onboardingView/customerView/epic/customerDetails/updateOnboardingCustomerViewLocalStoreDataEpic.js +29 -17
  118. package/lib/esm/view/onboardingView/customerView/onboardingCustomerViewReducer.js +223 -51
  119. package/lib/esm/view/onboardingView/customerView/onboardingCustomerViewSelector.js +36 -18
  120. package/lib/esm/view/onboardingView/customerView/onboardingCustomerViewState.js +45 -6
  121. package/lib/esm/view/spendManagement/autotransferRules/autoTransferRulesSelector.js +22 -2
  122. package/lib/esm/view/spendManagement/billPay/billPayReview/billPayReviewSelector.js +14 -0
  123. package/lib/esm/view/spendManagement/billPay/billPaySetupApproverView/billPaySetupApproverViewReducer.js +109 -12
  124. package/lib/esm/view/spendManagement/billPay/billPaySetupApproverView/epic/deleteBillPayApprovalRuleEpic.js +10 -2
  125. package/lib/esm/view/spendManagement/billPay/billPaySetupApproverView/epic/fetchBillPaySetupApproverViewEpic.js +8 -4
  126. package/lib/esm/view/spendManagement/billPay/billPaySetupApproverView/epic/initializeBillPaySetupApproverViewUpdateDataEpic.js +11 -7
  127. package/lib/esm/view/spendManagement/billPay/billPaySetupApproverView/epic/reorderBillPayApprovalRulesEpic.js +54 -0
  128. package/lib/esm/view/spendManagement/billPay/billPaySetupApproverView/epic/saveBillPaySetupApproverViewUpdatesEpic.js +13 -4
  129. package/lib/esm/view/spendManagement/billPay/billPaySetupApproverView/types/commonPayload.js +144 -16
  130. package/lib/esm/view/spendManagement/billPay/editBillView/editBillViewSelector.js +60 -4
  131. package/lib/esm/view/spendManagement/billPay/editBillView/epics/fetchEditBillDetailPageEpic.js +8 -2
  132. package/lib/esm/view/spendManagement/cashManagement/autoSweepFlow/autoSweepFlowPayload.js +29 -0
  133. package/lib/esm/view/spendManagement/cashManagement/autoSweepFlow/autoSweepFlowReducer.js +78 -0
  134. package/lib/esm/view/spendManagement/cashManagement/autoSweepFlow/autoSweepFlowSelector.js +49 -0
  135. package/lib/esm/view/spendManagement/cashManagement/autoSweepFlow/autoSweepFlowState.js +47 -0
  136. package/lib/esm/view/spendManagement/cashManagement/autoSweepFlow/epics/fetchCashManagementSettingsEpic.js +32 -0
  137. package/lib/esm/view/spendManagement/cashManagement/autoSweepFlow/epics/saveAutoSweepSettingsEpic.js +32 -0
  138. package/lib/esm/view/spendManagement/cashManagement/cashManagementOverview/cashManagementOverviewPayload.js +54 -0
  139. package/lib/esm/view/spendManagement/cashManagement/cashManagementOverview/cashManagementOverviewReducer.js +92 -0
  140. package/lib/esm/view/spendManagement/cashManagement/cashManagementOverview/cashManagementOverviewSelector.js +212 -0
  141. package/lib/esm/view/spendManagement/cashManagement/cashManagementOverview/cashManagementOverviewState.js +10 -0
  142. package/lib/esm/view/spendManagement/cashManagement/cashManagementOverview/epics/fetchCashManagementBannerEpic.js +23 -0
  143. package/lib/esm/view/spendManagement/cashManagement/cashManagementOverview/epics/fetchCashManagementOverviewPageEpic.js +36 -0
  144. package/lib/esm/view/spendManagement/cashManagement/cashManagementOverview/epics/fetchCashManagementRecommendationEpic.js +27 -0
  145. package/lib/esm/view/spendManagement/cashManagement/cashManagementOverview/epics/fetchRecentTransferEpic.js +28 -0
  146. package/lib/esm/view/spendManagement/chargeCards/cardPolicy/cardPolicyDetail/cardPolicyDetailReducer.js +52 -0
  147. package/lib/esm/view/spendManagement/chargeCards/cardPolicy/cardPolicyDetail/cardPolicyDetailSelector.js +22 -0
  148. package/lib/esm/view/spendManagement/chargeCards/cardPolicy/cardPolicyDetail/cardPolicyDetailState.js +1 -0
  149. package/lib/esm/view/spendManagement/chargeCards/cardPolicy/cardPolicyDetail/fetchCardPolicyDetailEpic.js +36 -0
  150. package/lib/esm/view/spendManagement/chargeCards/cardPolicy/cardPolicyDetail/updateCardPolicyEpic.js +39 -0
  151. package/lib/esm/view/spendManagement/chargeCards/cardPolicy/cardPolicyList/archiveCardPolicyEpic.js +34 -0
  152. package/lib/esm/view/spendManagement/chargeCards/cardPolicy/cardPolicyList/cardPolicyListReducer.js +71 -0
  153. package/lib/esm/view/spendManagement/chargeCards/cardPolicy/cardPolicyList/cardPolicyListSelector.js +21 -0
  154. package/lib/esm/view/spendManagement/chargeCards/cardPolicy/cardPolicyList/cardPolicyListState.js +1 -0
  155. package/lib/esm/view/spendManagement/chargeCards/cardPolicy/cardPolicyList/fetchCardPolicyListEpic.js +38 -0
  156. package/lib/esm/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/applyAiCardPolicyFormDraftUpdate.js +289 -0
  157. package/lib/esm/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/applyExtractedPolicyToAiCardPolicyDraft.js +109 -0
  158. package/lib/esm/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/applyExtractedPolicyToDraftEpic.js +44 -0
  159. package/lib/esm/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/applyExtractedPolicyToManualCardPolicyDraft.js +111 -0
  160. package/lib/esm/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/applyUploadPlanToAiCardPolicyDraft.js +25 -0
  161. package/lib/esm/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/buildAiCardPolicyFormDraftSeed.js +363 -0
  162. package/lib/esm/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/buildManualCardPolicyFormDraftSeed.js +36 -0
  163. package/lib/esm/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/cardPolicyChipIds.js +19 -0
  164. package/lib/esm/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/cardPolicyFormDraftTypes.js +6 -0
  165. package/lib/esm/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/cardPolicyRequestParts.js +119 -0
  166. package/lib/esm/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/createCardPolicyReducer.js +154 -0
  167. package/lib/esm/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/createCardPolicySelector.js +22 -0
  168. package/lib/esm/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/createCardPolicyState.js +1 -0
  169. package/lib/esm/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/createCardPolicyTemplateEpic.js +49 -0
  170. package/lib/esm/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/deriveAiPolicyReviewRowsFromInputs.js +140 -0
  171. package/lib/esm/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/fetchCardPolicyMccCategoriesEpic.js +20 -0
  172. package/lib/esm/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/seedAiCardPolicyFormDraftEpic.js +100 -0
  173. package/lib/esm/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/toBulkCardPolicyTemplateRequestsFromDraft.js +96 -0
  174. package/lib/esm/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/toCardPolicyTemplateRequestFromDraft.js +59 -0
  175. package/lib/esm/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/toManualCardPolicyTemplateRequestFromDraft.js +24 -0
  176. package/lib/esm/view/spendManagement/chargeCards/chargeCardList/chargeCardListSelector.js +25 -0
  177. package/lib/esm/view/spendManagement/chargeCards/issueChargeCard/aiCardCreationFormDraftTypes.js +1 -0
  178. package/lib/esm/view/spendManagement/chargeCards/issueChargeCard/applyAiCardCreationFormDraftUpdate.js +34 -0
  179. package/lib/esm/view/spendManagement/chargeCards/issueChargeCard/buildAiCardCreationFormDraftSeed.js +57 -0
  180. package/lib/esm/view/spendManagement/chargeCards/issueChargeCard/deriveAiCardRowsFromTeams.js +35 -0
  181. package/lib/esm/view/spendManagement/chargeCards/issueChargeCard/issueChargeCardEpic.js +2 -2
  182. package/lib/esm/view/spendManagement/chargeCards/issueChargeCard/issueChargeCardReducer.js +42 -4
  183. package/lib/esm/view/spendManagement/chargeCards/issueChargeCard/issueChargeCardSelector.js +35 -0
  184. package/lib/esm/view/spendManagement/chargeCards/issueChargeCard/seedAiCardCreationFormDraftEpic.js +62 -0
  185. package/lib/esm/view/spendManagement/chargeCards/issueChargeCard/toIssueChargeCardLocalDataFromDraft.js +44 -0
  186. package/lib/esm/view/spendManagement/commonSetup/epic/setup/parseUploadedKybDocumentEpic.js +58 -0
  187. package/lib/esm/view/spendManagement/commonSetup/epic/setup/parseUploadedKycDocumentEpic.js +77 -0
  188. package/lib/esm/view/spendManagement/commonSetup/kycKybAutofillActions.js +14 -0
  189. package/lib/esm/view/spendManagement/commonSetup/kycKybParseMapper.js +221 -0
  190. package/lib/esm/view/spendManagement/commonSetup/setupViewReducer.js +106 -52
  191. package/lib/esm/view/spendManagement/commonSetup/setupViewSelector.js +6 -1
  192. package/lib/esm/view/spendManagement/commonSetup/types/kycKybAutofill.js +41 -0
  193. package/lib/esm/view/spendManagement/reimbursement/editRemiView/epics/fetchEditRemiDetailPageEpic.js +5 -1
  194. package/lib/esm/view/spendManagement/reimbursement/remiSetupApproverView/epic/deleteRemiApprovalRuleEpic.js +10 -2
  195. package/lib/esm/view/spendManagement/reimbursement/remiSetupApproverView/epic/fetchRemiSetupApproverViewEpic.js +8 -2
  196. package/lib/esm/view/spendManagement/reimbursement/remiSetupApproverView/epic/initializeRemiSetupApproverViewUpdateDataEpic.js +11 -7
  197. package/lib/esm/view/spendManagement/reimbursement/remiSetupApproverView/epic/reorderRemiApprovalRulesEpic.js +61 -0
  198. package/lib/esm/view/spendManagement/reimbursement/remiSetupApproverView/epic/saveRemiSetupApproverViewUpdatesEpic.js +13 -4
  199. package/lib/esm/view/spendManagement/reimbursement/remiSetupApproverView/remiSetupApproverViewReducer.js +80 -11
  200. package/lib/esm/view/transactionDetail/epics/saveTransactionHelper.js +1 -0
  201. package/lib/esm/view/transactionDetail/epics/updateTransactionDetailEpic.js +6 -0
  202. package/lib/esm/view/transactionDetail/transactionDetailLocalDataHelper.js +7 -1
  203. package/lib/index.d.ts +82 -32
  204. package/lib/index.js +266 -34
  205. package/lib/reducer.d.ts +18 -0
  206. package/lib/reducer.js +18 -0
  207. package/lib/view/aiCfoView/aiCfoViewReducer.d.ts +11 -2
  208. package/lib/view/aiCfoView/aiCfoViewReducer.js +6 -3
  209. package/lib/view/aiCfoView/epics/createSessionAndSubmitEpic.js +5 -2
  210. package/lib/view/aiCfoView/epics/createSessionEpic.js +2 -1
  211. package/lib/view/aiCfoView/epics/fetchSuggestedQuestionsEpic.d.ts +8 -1
  212. package/lib/view/aiCfoView/epics/fetchSuggestedQuestionsEpic.js +12 -2
  213. package/lib/view/companyTaskManagerView/companyTaskManagerViewPayload.d.ts +19 -11
  214. package/lib/view/companyTaskManagerView/companyTaskManagerViewReducer.d.ts +11 -5
  215. package/lib/view/companyTaskManagerView/companyTaskManagerViewReducer.js +40 -12
  216. package/lib/view/companyTaskManagerView/companyTaskManagerViewSelector.d.ts +2 -0
  217. package/lib/view/companyTaskManagerView/companyTaskManagerViewSelector.js +13 -3
  218. package/lib/view/companyTaskManagerView/companyTaskManagerViewState.d.ts +11 -3
  219. package/lib/view/companyTaskManagerView/epics/fetchCockpitContextEpic.d.ts +10 -0
  220. package/lib/view/companyTaskManagerView/epics/fetchCockpitContextEpic.js +42 -0
  221. package/lib/view/companyTaskManagerView/epics/fetchCompanyTaskManagerViewEpic.d.ts +1 -3
  222. package/lib/view/companyTaskManagerView/epics/fetchCompanyTaskManagerViewEpic.js +37 -28
  223. package/lib/view/companyTaskManagerView/epics/updateCompanyTaskManagerViewFiltersEpic.d.ts +6 -0
  224. package/lib/view/companyTaskManagerView/epics/updateCompanyTaskManagerViewFiltersEpic.js +20 -0
  225. package/lib/view/companyView/epic/companyPassport/updateCapitalizationAccountThresholdEpic.d.ts +1 -1
  226. package/lib/view/companyView/epic/companyPassport/updateCapitalizationAccountThresholdEpic.js +2 -2
  227. package/lib/view/companyView/epic/fetchAllCockpitViewsEpic.js +2 -2
  228. package/lib/view/companyView/types/cockpitTypes.d.ts +3 -2
  229. package/lib/view/expenseAutomationView/helpers/transactionCategorizationLocalDataHelper.d.ts +1 -1
  230. package/lib/view/expenseAutomationView/reducers/transactionsViewReducer.d.ts +1 -1
  231. package/lib/view/expenseAutomationView/selectors/transactionCategorizationSelector.d.ts +1 -1
  232. package/lib/view/expenseAutomationView/selectors/transactionCategorizationSelector.js +1 -1
  233. package/lib/view/expenseAutomationView/types/reconciliationViewState.d.ts +1 -1
  234. package/lib/view/expenseAutomationView/types/transactionsViewState.d.ts +1 -1
  235. package/lib/view/fileView/epic/deleteFileEpic.js +1 -1
  236. package/lib/view/fileView/epic/deleteFileListEpic.js +1 -1
  237. package/lib/view/onboardingView/customerView/epic/aiAgentsActivation/fetchAiAgentsActivationStatusEpic.d.ts +7 -0
  238. package/lib/view/onboardingView/customerView/epic/aiAgentsActivation/fetchAiAgentsActivationStatusEpic.js +44 -0
  239. package/lib/view/onboardingView/customerView/epic/customerDetails/acknowledgeOnboardingAiActivationViewedEpic.d.ts +8 -0
  240. package/lib/view/onboardingView/customerView/epic/customerDetails/acknowledgeOnboardingAiActivationViewedEpic.js +33 -0
  241. package/lib/view/onboardingView/customerView/epic/customerDetails/acknowledgeOnboardingAiFinanceTeamEpic.d.ts +9 -0
  242. package/lib/view/onboardingView/customerView/epic/customerDetails/acknowledgeOnboardingAiFinanceTeamEpic.js +44 -0
  243. package/lib/view/onboardingView/customerView/epic/customerDetails/updateOnboardingCustomerViewEpic.js +24 -18
  244. package/lib/view/onboardingView/customerView/epic/customerDetails/updateOnboardingCustomerViewLocalStoreDataEpic.d.ts +2 -2
  245. package/lib/view/onboardingView/customerView/epic/customerDetails/updateOnboardingCustomerViewLocalStoreDataEpic.js +27 -15
  246. package/lib/view/onboardingView/customerView/onboardingCustomerViewPayload.d.ts +3 -0
  247. package/lib/view/onboardingView/customerView/onboardingCustomerViewReducer.d.ts +44 -5
  248. package/lib/view/onboardingView/customerView/onboardingCustomerViewReducer.js +225 -52
  249. package/lib/view/onboardingView/customerView/onboardingCustomerViewSelector.d.ts +6 -1
  250. package/lib/view/onboardingView/customerView/onboardingCustomerViewSelector.js +39 -18
  251. package/lib/view/onboardingView/customerView/onboardingCustomerViewState.d.ts +53 -8
  252. package/lib/view/onboardingView/customerView/onboardingCustomerViewState.js +47 -7
  253. package/lib/view/people/peopleTypes.d.ts +1 -1
  254. package/lib/view/scheduleView/scheduleListView/scheduleListTypes.d.ts +1 -1
  255. package/lib/view/spendManagement/autotransferRules/autoTransferRulesSelector.d.ts +8 -1
  256. package/lib/view/spendManagement/autotransferRules/autoTransferRulesSelector.js +21 -1
  257. package/lib/view/spendManagement/autotransferRules/autoTransferRulesState.d.ts +22 -0
  258. package/lib/view/spendManagement/billPay/billPayReview/billPayReviewSelector.d.ts +7 -0
  259. package/lib/view/spendManagement/billPay/billPayReview/billPayReviewSelector.js +14 -0
  260. package/lib/view/spendManagement/billPay/billPaySetupApproverView/billPaySetupApproverViewReducer.d.ts +14 -3
  261. package/lib/view/spendManagement/billPay/billPaySetupApproverView/billPaySetupApproverViewReducer.js +110 -13
  262. package/lib/view/spendManagement/billPay/billPaySetupApproverView/billPaySetupApproverViewState.d.ts +16 -0
  263. package/lib/view/spendManagement/billPay/billPaySetupApproverView/epic/deleteBillPayApprovalRuleEpic.js +10 -2
  264. package/lib/view/spendManagement/billPay/billPaySetupApproverView/epic/fetchBillPaySetupApproverViewEpic.js +8 -4
  265. package/lib/view/spendManagement/billPay/billPaySetupApproverView/epic/initializeBillPaySetupApproverViewUpdateDataEpic.js +10 -6
  266. package/lib/view/spendManagement/billPay/billPaySetupApproverView/epic/reorderBillPayApprovalRulesEpic.d.ts +23 -0
  267. package/lib/view/spendManagement/billPay/billPaySetupApproverView/epic/reorderBillPayApprovalRulesEpic.js +58 -0
  268. package/lib/view/spendManagement/billPay/billPaySetupApproverView/epic/saveBillPaySetupApproverViewUpdatesEpic.js +12 -3
  269. package/lib/view/spendManagement/billPay/billPaySetupApproverView/types/commonPayload.d.ts +59 -1
  270. package/lib/view/spendManagement/billPay/billPaySetupApproverView/types/commonPayload.js +146 -17
  271. package/lib/view/spendManagement/billPay/billPaySetupApproverView/types/commonState.d.ts +31 -5
  272. package/lib/view/spendManagement/billPay/editBillView/editBillViewSelector.d.ts +8 -1
  273. package/lib/view/spendManagement/billPay/editBillView/editBillViewSelector.js +60 -4
  274. package/lib/view/spendManagement/billPay/editBillView/epics/fetchEditBillDetailPageEpic.js +8 -2
  275. package/lib/view/spendManagement/cashManagement/autoSweepFlow/autoSweepFlowPayload.d.ts +47 -0
  276. package/lib/view/spendManagement/cashManagement/autoSweepFlow/autoSweepFlowPayload.js +34 -0
  277. package/lib/view/spendManagement/cashManagement/autoSweepFlow/autoSweepFlowReducer.d.ts +23 -0
  278. package/lib/view/spendManagement/cashManagement/autoSweepFlow/autoSweepFlowReducer.js +82 -0
  279. package/lib/view/spendManagement/cashManagement/autoSweepFlow/autoSweepFlowSelector.d.ts +40 -0
  280. package/lib/view/spendManagement/cashManagement/autoSweepFlow/autoSweepFlowSelector.js +53 -0
  281. package/lib/view/spendManagement/cashManagement/autoSweepFlow/autoSweepFlowState.d.ts +37 -0
  282. package/lib/view/spendManagement/cashManagement/autoSweepFlow/autoSweepFlowState.js +53 -0
  283. package/lib/view/spendManagement/cashManagement/autoSweepFlow/epics/fetchCashManagementSettingsEpic.d.ts +14 -0
  284. package/lib/view/spendManagement/cashManagement/autoSweepFlow/epics/fetchCashManagementSettingsEpic.js +36 -0
  285. package/lib/view/spendManagement/cashManagement/autoSweepFlow/epics/saveAutoSweepSettingsEpic.d.ts +7 -0
  286. package/lib/view/spendManagement/cashManagement/autoSweepFlow/epics/saveAutoSweepSettingsEpic.js +36 -0
  287. package/lib/view/spendManagement/cashManagement/cashManagementOverview/cashManagementOverviewPayload.d.ts +56 -0
  288. package/lib/view/spendManagement/cashManagement/cashManagementOverview/cashManagementOverviewPayload.js +60 -0
  289. package/lib/view/spendManagement/cashManagement/cashManagementOverview/cashManagementOverviewReducer.d.ts +22 -0
  290. package/lib/view/spendManagement/cashManagement/cashManagementOverview/cashManagementOverviewReducer.js +96 -0
  291. package/lib/view/spendManagement/cashManagement/cashManagementOverview/cashManagementOverviewSelector.d.ts +59 -0
  292. package/lib/view/spendManagement/cashManagement/cashManagementOverview/cashManagementOverviewSelector.js +217 -0
  293. package/lib/view/spendManagement/cashManagement/cashManagementOverview/cashManagementOverviewState.d.ts +122 -0
  294. package/lib/view/spendManagement/cashManagement/cashManagementOverview/cashManagementOverviewState.js +13 -0
  295. package/lib/view/spendManagement/cashManagement/cashManagementOverview/epics/fetchCashManagementBannerEpic.d.ts +7 -0
  296. package/lib/view/spendManagement/cashManagement/cashManagementOverview/epics/fetchCashManagementBannerEpic.js +27 -0
  297. package/lib/view/spendManagement/cashManagement/cashManagementOverview/epics/fetchCashManagementOverviewPageEpic.d.ts +9 -0
  298. package/lib/view/spendManagement/cashManagement/cashManagementOverview/epics/fetchCashManagementOverviewPageEpic.js +40 -0
  299. package/lib/view/spendManagement/cashManagement/cashManagementOverview/epics/fetchCashManagementRecommendationEpic.d.ts +7 -0
  300. package/lib/view/spendManagement/cashManagement/cashManagementOverview/epics/fetchCashManagementRecommendationEpic.js +31 -0
  301. package/lib/view/spendManagement/cashManagement/cashManagementOverview/epics/fetchRecentTransferEpic.d.ts +15 -0
  302. package/lib/view/spendManagement/cashManagement/cashManagementOverview/epics/fetchRecentTransferEpic.js +32 -0
  303. package/lib/view/spendManagement/chargeCards/cardPolicy/cardPolicyDetail/cardPolicyDetailReducer.d.ts +14 -0
  304. package/lib/view/spendManagement/chargeCards/cardPolicy/cardPolicyDetail/cardPolicyDetailReducer.js +56 -0
  305. package/lib/view/spendManagement/chargeCards/cardPolicy/cardPolicyDetail/cardPolicyDetailSelector.d.ts +15 -0
  306. package/lib/view/spendManagement/chargeCards/cardPolicy/cardPolicyDetail/cardPolicyDetailSelector.js +28 -0
  307. package/lib/view/spendManagement/chargeCards/cardPolicy/cardPolicyDetail/cardPolicyDetailState.d.ts +8 -0
  308. package/lib/view/spendManagement/chargeCards/cardPolicy/cardPolicyDetail/cardPolicyDetailState.js +2 -0
  309. package/lib/view/spendManagement/chargeCards/cardPolicy/cardPolicyDetail/fetchCardPolicyDetailEpic.d.ts +8 -0
  310. package/lib/view/spendManagement/chargeCards/cardPolicy/cardPolicyDetail/fetchCardPolicyDetailEpic.js +40 -0
  311. package/lib/view/spendManagement/chargeCards/cardPolicy/cardPolicyDetail/updateCardPolicyEpic.d.ts +8 -0
  312. package/lib/view/spendManagement/chargeCards/cardPolicy/cardPolicyDetail/updateCardPolicyEpic.js +43 -0
  313. package/lib/view/spendManagement/chargeCards/cardPolicy/cardPolicyList/archiveCardPolicyEpic.d.ts +8 -0
  314. package/lib/view/spendManagement/chargeCards/cardPolicy/cardPolicyList/archiveCardPolicyEpic.js +38 -0
  315. package/lib/view/spendManagement/chargeCards/cardPolicy/cardPolicyList/cardPolicyListReducer.d.ts +15 -0
  316. package/lib/view/spendManagement/chargeCards/cardPolicy/cardPolicyList/cardPolicyListReducer.js +75 -0
  317. package/lib/view/spendManagement/chargeCards/cardPolicy/cardPolicyList/cardPolicyListSelector.d.ts +15 -0
  318. package/lib/view/spendManagement/chargeCards/cardPolicy/cardPolicyList/cardPolicyListSelector.js +27 -0
  319. package/lib/view/spendManagement/chargeCards/cardPolicy/cardPolicyList/cardPolicyListState.d.ts +7 -0
  320. package/lib/view/spendManagement/chargeCards/cardPolicy/cardPolicyList/cardPolicyListState.js +2 -0
  321. package/lib/view/spendManagement/chargeCards/cardPolicy/cardPolicyList/fetchCardPolicyListEpic.d.ts +8 -0
  322. package/lib/view/spendManagement/chargeCards/cardPolicy/cardPolicyList/fetchCardPolicyListEpic.js +42 -0
  323. package/lib/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/applyAiCardPolicyFormDraftUpdate.d.ts +8 -0
  324. package/lib/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/applyAiCardPolicyFormDraftUpdate.js +294 -0
  325. package/lib/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/applyExtractedPolicyToAiCardPolicyDraft.d.ts +8 -0
  326. package/lib/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/applyExtractedPolicyToAiCardPolicyDraft.js +113 -0
  327. package/lib/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/applyExtractedPolicyToDraftEpic.d.ts +9 -0
  328. package/lib/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/applyExtractedPolicyToDraftEpic.js +48 -0
  329. package/lib/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/applyExtractedPolicyToManualCardPolicyDraft.d.ts +8 -0
  330. package/lib/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/applyExtractedPolicyToManualCardPolicyDraft.js +115 -0
  331. package/lib/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/applyUploadPlanToAiCardPolicyDraft.d.ts +13 -0
  332. package/lib/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/applyUploadPlanToAiCardPolicyDraft.js +29 -0
  333. package/lib/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/buildAiCardPolicyFormDraftSeed.d.ts +14 -0
  334. package/lib/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/buildAiCardPolicyFormDraftSeed.js +369 -0
  335. package/lib/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/buildManualCardPolicyFormDraftSeed.d.ts +6 -0
  336. package/lib/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/buildManualCardPolicyFormDraftSeed.js +40 -0
  337. package/lib/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/cardPolicyChipIds.d.ts +7 -0
  338. package/lib/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/cardPolicyChipIds.js +26 -0
  339. package/lib/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/cardPolicyFormDraftTypes.d.ts +116 -0
  340. package/lib/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/cardPolicyFormDraftTypes.js +10 -0
  341. package/lib/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/cardPolicyRequestParts.d.ts +33 -0
  342. package/lib/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/cardPolicyRequestParts.js +126 -0
  343. package/lib/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/createCardPolicyReducer.d.ts +52 -0
  344. package/lib/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/createCardPolicyReducer.js +158 -0
  345. package/lib/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/createCardPolicySelector.d.ts +11 -0
  346. package/lib/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/createCardPolicySelector.js +31 -0
  347. package/lib/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/createCardPolicyState.d.ts +12 -0
  348. package/lib/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/createCardPolicyState.js +2 -0
  349. package/lib/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/createCardPolicyTemplateEpic.d.ts +9 -0
  350. package/lib/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/createCardPolicyTemplateEpic.js +53 -0
  351. package/lib/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/deriveAiPolicyReviewRowsFromInputs.d.ts +10 -0
  352. package/lib/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/deriveAiPolicyReviewRowsFromInputs.js +144 -0
  353. package/lib/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/fetchCardPolicyMccCategoriesEpic.d.ts +7 -0
  354. package/lib/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/fetchCardPolicyMccCategoriesEpic.js +24 -0
  355. package/lib/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/seedAiCardPolicyFormDraftEpic.d.ts +11 -0
  356. package/lib/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/seedAiCardPolicyFormDraftEpic.js +104 -0
  357. package/lib/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/toBulkCardPolicyTemplateRequestsFromDraft.d.ts +22 -0
  358. package/lib/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/toBulkCardPolicyTemplateRequestsFromDraft.js +100 -0
  359. package/lib/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/toCardPolicyTemplateRequestFromDraft.d.ts +8 -0
  360. package/lib/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/toCardPolicyTemplateRequestFromDraft.js +63 -0
  361. package/lib/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/toManualCardPolicyTemplateRequestFromDraft.d.ts +3 -0
  362. package/lib/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/toManualCardPolicyTemplateRequestFromDraft.js +28 -0
  363. package/lib/view/spendManagement/chargeCards/chargeCardList/chargeCardList.d.ts +1 -1
  364. package/lib/view/spendManagement/chargeCards/chargeCardList/chargeCardListSelector.d.ts +14 -0
  365. package/lib/view/spendManagement/chargeCards/chargeCardList/chargeCardListSelector.js +27 -1
  366. package/lib/view/spendManagement/chargeCards/issueChargeCard/aiCardCreationFormDraftTypes.d.ts +34 -0
  367. package/lib/view/spendManagement/chargeCards/issueChargeCard/aiCardCreationFormDraftTypes.js +2 -0
  368. package/lib/view/spendManagement/chargeCards/issueChargeCard/applyAiCardCreationFormDraftUpdate.d.ts +7 -0
  369. package/lib/view/spendManagement/chargeCards/issueChargeCard/applyAiCardCreationFormDraftUpdate.js +38 -0
  370. package/lib/view/spendManagement/chargeCards/issueChargeCard/buildAiCardCreationFormDraftSeed.d.ts +12 -0
  371. package/lib/view/spendManagement/chargeCards/issueChargeCard/buildAiCardCreationFormDraftSeed.js +61 -0
  372. package/lib/view/spendManagement/chargeCards/issueChargeCard/deriveAiCardRowsFromTeams.d.ts +9 -0
  373. package/lib/view/spendManagement/chargeCards/issueChargeCard/deriveAiCardRowsFromTeams.js +39 -0
  374. package/lib/view/spendManagement/chargeCards/issueChargeCard/issueChargeCardEpic.d.ts +2 -2
  375. package/lib/view/spendManagement/chargeCards/issueChargeCard/issueChargeCardEpic.js +1 -1
  376. package/lib/view/spendManagement/chargeCards/issueChargeCard/issueChargeCardReducer.d.ts +12 -2
  377. package/lib/view/spendManagement/chargeCards/issueChargeCard/issueChargeCardReducer.js +43 -5
  378. package/lib/view/spendManagement/chargeCards/issueChargeCard/issueChargeCardSelector.d.ts +7 -0
  379. package/lib/view/spendManagement/chargeCards/issueChargeCard/issueChargeCardSelector.js +42 -1
  380. package/lib/view/spendManagement/chargeCards/issueChargeCard/issueChargeCardState.d.ts +5 -0
  381. package/lib/view/spendManagement/chargeCards/issueChargeCard/seedAiCardCreationFormDraftEpic.d.ts +11 -0
  382. package/lib/view/spendManagement/chargeCards/issueChargeCard/seedAiCardCreationFormDraftEpic.js +66 -0
  383. package/lib/view/spendManagement/chargeCards/issueChargeCard/toIssueChargeCardLocalDataFromDraft.d.ts +3 -0
  384. package/lib/view/spendManagement/chargeCards/issueChargeCard/toIssueChargeCardLocalDataFromDraft.js +48 -0
  385. package/lib/view/spendManagement/commonSetup/epic/setup/parseUploadedKybDocumentEpic.d.ts +28 -0
  386. package/lib/view/spendManagement/commonSetup/epic/setup/parseUploadedKybDocumentEpic.js +62 -0
  387. package/lib/view/spendManagement/commonSetup/epic/setup/parseUploadedKycDocumentEpic.d.ts +9 -0
  388. package/lib/view/spendManagement/commonSetup/epic/setup/parseUploadedKycDocumentEpic.js +81 -0
  389. package/lib/view/spendManagement/commonSetup/kycKybAutofillActions.d.ts +24 -0
  390. package/lib/view/spendManagement/commonSetup/kycKybAutofillActions.js +17 -0
  391. package/lib/view/spendManagement/commonSetup/kycKybParseMapper.d.ts +29 -0
  392. package/lib/view/spendManagement/commonSetup/kycKybParseMapper.js +229 -0
  393. package/lib/view/spendManagement/commonSetup/setupViewReducer.d.ts +28 -2
  394. package/lib/view/spendManagement/commonSetup/setupViewReducer.js +107 -53
  395. package/lib/view/spendManagement/commonSetup/setupViewSelector.d.ts +7 -2
  396. package/lib/view/spendManagement/commonSetup/setupViewSelector.js +6 -1
  397. package/lib/view/spendManagement/commonSetup/setupViewState.d.ts +19 -0
  398. package/lib/view/spendManagement/commonSetup/types/kycKybAutofill.d.ts +154 -0
  399. package/lib/view/spendManagement/commonSetup/types/kycKybAutofill.js +46 -0
  400. package/lib/view/spendManagement/reimbursement/editRemiView/epics/fetchEditRemiDetailPageEpic.js +5 -1
  401. package/lib/view/spendManagement/reimbursement/remiSetupApproverView/epic/deleteRemiApprovalRuleEpic.js +10 -2
  402. package/lib/view/spendManagement/reimbursement/remiSetupApproverView/epic/fetchRemiSetupApproverViewEpic.js +8 -2
  403. package/lib/view/spendManagement/reimbursement/remiSetupApproverView/epic/initializeRemiSetupApproverViewUpdateDataEpic.js +10 -6
  404. package/lib/view/spendManagement/reimbursement/remiSetupApproverView/epic/reorderRemiApprovalRulesEpic.d.ts +14 -0
  405. package/lib/view/spendManagement/reimbursement/remiSetupApproverView/epic/reorderRemiApprovalRulesEpic.js +65 -0
  406. package/lib/view/spendManagement/reimbursement/remiSetupApproverView/epic/saveRemiSetupApproverViewUpdatesEpic.js +12 -3
  407. package/lib/view/spendManagement/reimbursement/remiSetupApproverView/remiSetupApproverViewReducer.d.ts +14 -3
  408. package/lib/view/spendManagement/reimbursement/remiSetupApproverView/remiSetupApproverViewReducer.js +81 -12
  409. package/lib/view/spendManagement/reimbursement/remiSetupApproverView/remiSetupApproverViewState.d.ts +12 -0
  410. package/lib/view/taskManager/taskListView/taskList.d.ts +3 -3
  411. package/lib/view/taskManager/taskListView/taskListReducer.d.ts +1 -1
  412. package/lib/view/transactionDetail/epics/saveTransactionHelper.js +1 -0
  413. package/lib/view/transactionDetail/epics/updateTransactionDetailEpic.js +6 -0
  414. package/lib/view/transactionDetail/journalEntryLinesViewModel.d.ts +1 -1
  415. package/lib/view/transactionDetail/transactionDetailLocalDataHelper.js +7 -1
  416. package/lib/view/transactionDetail/transactionDetailState.d.ts +1 -0
  417. package/lib/zeniAPI.d.ts +1 -0
  418. package/package.json +7 -5
@@ -0,0 +1,40 @@
1
+ import { from, of } from 'rxjs';
2
+ import { catchError, filter, mergeMap } from 'rxjs/operators';
3
+ import { updateCompanies } from '../../../../../entity/company/companyReducer';
4
+ import { openSnackbar } from '../../../../../entity/snackbar/snackbarReducer';
5
+ import { createZeniAPIStatus, isSuccessResponse, } from '../../../../../responsePayload';
6
+ import { acknowledgeOnboardingAiFinanceTeam, acknowledgeOnboardingAiFinanceTeamFailure, acknowledgeOnboardingAiFinanceTeamSuccess, } from '../../onboardingCustomerViewReducer';
7
+ export const acknowledgeOnboardingAiFinanceTeamEpic = (actions$, _state$, zeniAPI) => actions$.pipe(filter(acknowledgeOnboardingAiFinanceTeam.match), mergeMap((action) => {
8
+ const { companyId } = action.payload;
9
+ const payload = {
10
+ is_onboarding_ai_finance_team_acknowledged: true,
11
+ };
12
+ return zeniAPI
13
+ .putAndGetJSON(`${zeniAPI.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/companies/${companyId}`, payload)
14
+ .pipe(mergeMap((response) => {
15
+ if (isSuccessResponse(response) && response.data != null) {
16
+ const actions = [
17
+ updateCompanies({
18
+ payload: response.data.companies,
19
+ schema: {},
20
+ }),
21
+ acknowledgeOnboardingAiFinanceTeamSuccess(),
22
+ ];
23
+ return from(actions);
24
+ }
25
+ else {
26
+ return of(openSnackbar({
27
+ messageSection: 'onboarding_customer_view_complete',
28
+ messageText: 'failed',
29
+ type: 'error',
30
+ variables: [
31
+ {
32
+ variableName: '_api-error_',
33
+ variableValue: response.status.message,
34
+ },
35
+ ],
36
+ }), acknowledgeOnboardingAiFinanceTeamFailure(response.status));
37
+ }
38
+ }), catchError((error) => of(acknowledgeOnboardingAiFinanceTeamFailure(createZeniAPIStatus('Unexpected Error', 'Acknowledge - Onboarding AI Finance Team errored out' +
39
+ JSON.stringify(error))))));
40
+ }));
@@ -18,7 +18,7 @@ import { getOnboardingCustomerView } from '../../onboardingCustomerViewSelector'
18
18
  export const updateOnboardingCustomerViewEpic = (actions$, state$, zeniAPI) => actions$.pipe(filter(updateOnboardingCustomerView.match), mergeMap((action) => {
19
19
  const { companyId, officerType, sendForVerification, reCalculateCurrentStep = false, isBillingAddressUpdate, } = action.payload;
20
20
  const { onboardingCustomerViewState } = state$.value;
21
- const { companyDetails, primaryContactDetails, companyOfficerUpdateStatus, currentStep, } = onboardingCustomerViewState;
21
+ const { companyDetails, primaryContactDetails, companyOfficerUpdateStatus, currentStep, currentSubStep, } = onboardingCustomerViewState;
22
22
  const companyLocalData = companyDetails.localData;
23
23
  const primaryContactLocalData = primaryContactDetails.localData;
24
24
  let companyOfficerLocalData;
@@ -52,8 +52,12 @@ export const updateOnboardingCustomerViewEpic = (actions$, state$, zeniAPI) => a
52
52
  Boolean(companyOfficerLocalData.email) === true // Don't save Empty Company Officer details
53
53
  ? toBusinessVerificationOfficerDataPayload(companyOfficerLocalData, false, companyOfficerAddressToCreate)
54
54
  : {};
55
+ // Verification step has two sub-steps that share currentStep but save
56
+ // different payloads — currentSubStep is the source of truth here.
57
+ const isOfficerSave = currentStep === 'verification' &&
58
+ currentSubStep === 'company_officer';
55
59
  if (isBillingAddressUpdate === false) {
56
- if (currentStep === 'company_officer') {
60
+ if (isOfficerSave) {
57
61
  payload = {
58
62
  company: toBusinessVerificationMinimalCompanyDataPayload(companyLocalData),
59
63
  company_officer,
@@ -66,6 +70,11 @@ export const updateOnboardingCustomerViewEpic = (actions$, state$, zeniAPI) => a
66
70
  };
67
71
  }
68
72
  }
73
+ const section = isBillingAddressUpdate === true
74
+ ? 'setup_billing'
75
+ : isOfficerSave
76
+ ? 'company_officer'
77
+ : 'company_details';
69
78
  const messageSectionMapper = {
70
79
  company_officer: {
71
80
  sendForVerification: 'onboarding_customer_identity_verification_submit',
@@ -75,23 +84,20 @@ export const updateOnboardingCustomerViewEpic = (actions$, state$, zeniAPI) => a
75
84
  sendForVerification: 'onboarding_customer_business_verification_submit',
76
85
  save: 'onboarding_customer_business_verification_save',
77
86
  },
78
- link_payment_account: {
87
+ setup_billing: {
79
88
  save: 'billing_address_view',
80
89
  sendForVerification: 'billing_address_view',
81
90
  },
82
91
  };
83
92
  let messageSection;
84
93
  if (isBillingAddressUpdate === true) {
85
- messageSection = messageSectionMapper[currentStep].save;
94
+ messageSection = messageSectionMapper[section].save;
95
+ }
96
+ else if (sendForVerification === true) {
97
+ messageSection = messageSectionMapper[section].sendForVerification;
86
98
  }
87
99
  else {
88
- if (sendForVerification === true) {
89
- messageSection =
90
- messageSectionMapper[currentStep].sendForVerification;
91
- }
92
- else {
93
- messageSection = messageSectionMapper[currentStep].save;
94
- }
100
+ messageSection = messageSectionMapper[section].save;
95
101
  }
96
102
  return zeniAPI
97
103
  .putAndGetJSON(`${zeniAPI.apiEndPoints.tenantMicroServiceBaseUrl}/1.0/companies/${companyId}`, payload)
@@ -114,18 +120,18 @@ export const updateOnboardingCustomerViewEpic = (actions$, state$, zeniAPI) => a
114
120
  const externalConnections = currentTenant.externalConnections;
115
121
  const isQBOConnection = externalConnections?.accounting?.some((connection) => connection.connectionName.match(/quickbooks/i)) ?? false;
116
122
  const { allSteps } = getOnboardingCustomerView(state$.value, companyId);
117
- if (currentStep === 'link_payment_account') {
123
+ if (currentStep === 'setup_billing') {
118
124
  if (isQBOConnection === true &&
119
- allSteps.includes('qbo_connection')) {
120
- actions.push(updateCurrentStep({ step: 'qbo_connection' }));
125
+ allSteps.includes('connect_ledger')) {
126
+ actions.push(updateCurrentStep({ step: 'connect_ledger' }));
121
127
  }
122
128
  else {
123
- actions.push(updateCurrentStep({ step: 'company_officer' }));
129
+ actions.push(updateCurrentStep({ step: 'verification' }));
124
130
  }
125
131
  }
126
- if (currentStep === 'company_officer') {
127
- actions.push(updateCurrentStep({ step: 'company_details' }));
128
- }
132
+ // The officer→details transition is now a sub-step change
133
+ // handled by the page (currentSubStep dispatch). No
134
+ // currentStep update needed for that traversal anymore.
129
135
  actions.push(updateOnboardingCustomerViewLocalStoreData({
130
136
  companyId: response.data.companies[0].company_id,
131
137
  currentStep,
@@ -12,11 +12,11 @@ import { newAddressInLocalStore, resetNewAddressesInLocalStore, } from '../../..
12
12
  import { toAddressViewLocalData } from '../../../../addressView/toAddressViewLocalData';
13
13
  import { getCompanyView } from '../../../../companyView/selectorHelpers/getCompanyView';
14
14
  import { toSetupViewLocalData } from '../../../../spendManagement/commonSetup/epic/setup/updateSetupViewLocalStoreDataEpic';
15
- import { clearOnboardingCustomerViewDataInLocalStore, saveOnboardingCustomerViewDataInLocalStore, updateCurrentStep, updateOnboardingCustomerViewLocalStoreData, } from '../../onboardingCustomerViewReducer';
16
- import { isOfficerDetailsCompleted, onboardingStepsData, } from '../../onboardingCustomerViewSelector';
15
+ import { clearOnboardingCustomerViewDataInLocalStore, saveOnboardingCustomerViewDataInLocalStore, updateCurrentStep, updateCurrentSubStep, updateOnboardingCustomerViewLocalStoreData, } from '../../onboardingCustomerViewReducer';
16
+ import { onboardingStepsData } from '../../onboardingCustomerViewSelector';
17
17
  export const updateOnboardingCustomerViewLocalStoreDataEpic = (actions$, state$) => actions$.pipe(filter(updateOnboardingCustomerViewLocalStoreData.match), mergeMap((action) => {
18
18
  const { companyId, currentStep, reCalculateCurrentStep } = action.payload;
19
- const { companyState, companyViewState, fileState, userState, userRoleState, onboardingCustomerViewState, subscriptionPaymentAccountState, paymentAccountState, addressState, } = state$.value;
19
+ const { companyState, companyViewState, userState, userRoleState, onboardingCustomerViewState, subscriptionPaymentAccountState, paymentAccountState, addressState, } = state$.value;
20
20
  const { subscriptionPaymentAccountIds } = onboardingCustomerViewState;
21
21
  const subscriptionIDs = recordGet(companyViewState.passportView.subscriptionIDsByCompanyID, companyId, undefined);
22
22
  const companyView = getCompanyView(state$.value, companyId, subscriptionIDs ?? []);
@@ -36,7 +36,12 @@ export const updateOnboardingCustomerViewLocalStoreDataEpic = (actions$, state$)
36
36
  const onboardingCustomerViewLocalData = toOnboardingCustomerViewLocalData(company, companyOfficers, companyOfficerRoles, primaryContact);
37
37
  const { companyDetails, officers, primaryContactDetails } = onboardingCustomerViewLocalData;
38
38
  let updatedCompanyDetails = companyDetails;
39
- if (currentStep === 'company_officer' &&
39
+ // After an officer sub-step save inside the verification step, propagate
40
+ // the latest syncToken into the cached company-details local data so the
41
+ // user's next details-save doesn't 409.
42
+ const isOfficerSave = currentStep === 'verification' &&
43
+ onboardingCustomerViewState.currentSubStep === 'company_officer';
44
+ if (isOfficerSave &&
40
45
  onboardingCustomerViewState.companyDetails.localData != null) {
41
46
  const { companyInfo } = company;
42
47
  const { syncToken } = companyInfo;
@@ -45,7 +50,7 @@ export const updateOnboardingCustomerViewLocalStoreDataEpic = (actions$, state$)
45
50
  syncToken,
46
51
  };
47
52
  }
48
- let updatedCurrentStep = 'link_payment_account';
53
+ let updatedCurrentStep = 'setup_billing';
49
54
  let subscriptionPaymentAccount;
50
55
  const { companyOnboardingInfo } = company;
51
56
  const accountingConnectionCreationMode = companyOnboardingInfo?.onboardingInfo
@@ -72,18 +77,17 @@ export const updateOnboardingCustomerViewLocalStoreDataEpic = (actions$, state$)
72
77
  cardPaymentViewState.cardPaymentsIds.length > 0) &&
73
78
  companyView?.company.company.companyOnboardingInfo
74
79
  .subscriptionBillingAddressId != null) {
75
- updatedCurrentStep = 'qbo_connection';
76
- if (isValidConnection) {
77
- updatedCurrentStep = 'company_officer';
78
- let officerIndex = companyOfficers.length > 0
79
- ? officers.findIndex((officer) => officer?.isSelectedForVerification === true)
80
- : 0;
81
- if (officerIndex === -1) {
82
- officerIndex = 0;
83
- }
84
- if (isOfficerDetailsCompleted(companyOfficers, companyOfficerRoles, officers[officerIndex], fileState)) {
85
- updatedCurrentStep = 'company_details';
86
- }
80
+ updatedCurrentStep = 'connect_ledger';
81
+ const isOnboardingAiActivationViewed = companyOnboardingInfo?.onboardingInfo
82
+ ?.onboardingAiActivationInfo?.isOnboardingAiActivationViewed ??
83
+ false;
84
+ // Past the ledger step we always sit on connect_data_source —
85
+ // it has many integrations, so we treat it as never auto-complete
86
+ // and only advance to verification on an explicit user dispatch.
87
+ // While the AI activation interstitial hasn't been viewed yet,
88
+ // stay on connect_ledger so the interstitial gets its chance.
89
+ if (isValidConnection && isOnboardingAiActivationViewed) {
90
+ updatedCurrentStep = 'connect_data_source';
87
91
  }
88
92
  }
89
93
  }
@@ -105,6 +109,14 @@ export const updateOnboardingCustomerViewLocalStoreDataEpic = (actions$, state$)
105
109
  }
106
110
  if (reCalculateCurrentStep === true) {
107
111
  fetchActions.push(updateCurrentStep({ step: updatedCurrentStep }));
112
+ // Whenever the recalc lands the user on a different step, reset
113
+ // the sub-step to the step's landing sub-state — otherwise a
114
+ // stale subStep (e.g. 'default' carried over from another step)
115
+ // leaves verification rendering an empty form.
116
+ if (updatedCurrentStep !== onboardingCustomerViewState.currentStep) {
117
+ const targetSubStep = updatedCurrentStep === 'verification' ? 'unlock-stack' : 'default';
118
+ fetchActions.push(updateCurrentSubStep({ subStep: targetSubStep }));
119
+ }
108
120
  }
109
121
  }
110
122
  if (companyView != null) {
@@ -1,5 +1,7 @@
1
1
  import { createSlice } from '@reduxjs/toolkit';
2
2
  import { date } from '../../../zeniDayJS';
3
+ import { parseUploadedKybDocument, parseUploadedKybDocumentFailure, parseUploadedKycDocument, parseUploadedKycDocumentFailure, } from '../../spendManagement/commonSetup/kycKybAutofillActions';
4
+ import { emptyAiAgentsActivationSubview, } from './onboardingCustomerViewState';
3
5
  const initialStatus = {
4
6
  fetchState: 'Not-Started',
5
7
  error: undefined,
@@ -8,62 +10,33 @@ export const initialState = {
8
10
  updateStatus: initialStatus,
9
11
  saveStatus: initialStatus,
10
12
  dashboardLoadedStatus: initialStatus,
11
- currentStep: 'link_payment_account',
13
+ currentStep: 'setup_billing',
14
+ currentSubStep: 'default',
15
+ parsingDocumentFileIds: [],
12
16
  companyDetails: {
17
+ autoFilledFields: [],
13
18
  localData: undefined,
14
19
  },
15
- companyOfficerUpdateStatus: {
16
- Officer_1: {
20
+ companyOfficerUpdateStatus: (() => {
21
+ const emptyOfficerSlot = {
22
+ autoFilledFields: [],
17
23
  localData: undefined,
18
24
  sendOtpStatus: initialStatus,
19
25
  otpverificationStatus: initialStatus,
20
- },
21
- Officer_2: {
22
- localData: undefined,
23
- sendOtpStatus: initialStatus,
24
- otpverificationStatus: initialStatus,
25
- },
26
- Officer_3: {
27
- localData: undefined,
28
- sendOtpStatus: initialStatus,
29
- otpverificationStatus: initialStatus,
30
- },
31
- Officer_4: {
32
- localData: undefined,
33
- sendOtpStatus: initialStatus,
34
- otpverificationStatus: initialStatus,
35
- },
36
- Officer_5: {
37
- localData: undefined,
38
- sendOtpStatus: initialStatus,
39
- otpverificationStatus: initialStatus,
40
- },
41
- Officer_6: {
42
- localData: undefined,
43
- sendOtpStatus: initialStatus,
44
- otpverificationStatus: initialStatus,
45
- },
46
- Officer_7: {
47
- localData: undefined,
48
- sendOtpStatus: initialStatus,
49
- otpverificationStatus: initialStatus,
50
- },
51
- Officer_8: {
52
- localData: undefined,
53
- sendOtpStatus: initialStatus,
54
- otpverificationStatus: initialStatus,
55
- },
56
- Officer_9: {
57
- localData: undefined,
58
- sendOtpStatus: initialStatus,
59
- otpverificationStatus: initialStatus,
60
- },
61
- Officer_10: {
62
- localData: undefined,
63
- sendOtpStatus: initialStatus,
64
- otpverificationStatus: initialStatus,
65
- },
66
- },
26
+ };
27
+ return {
28
+ Officer_1: { ...emptyOfficerSlot },
29
+ Officer_2: { ...emptyOfficerSlot },
30
+ Officer_3: { ...emptyOfficerSlot },
31
+ Officer_4: { ...emptyOfficerSlot },
32
+ Officer_5: { ...emptyOfficerSlot },
33
+ Officer_6: { ...emptyOfficerSlot },
34
+ Officer_7: { ...emptyOfficerSlot },
35
+ Officer_8: { ...emptyOfficerSlot },
36
+ Officer_9: { ...emptyOfficerSlot },
37
+ Officer_10: { ...emptyOfficerSlot },
38
+ };
39
+ })(),
67
40
  primaryContactDetails: {},
68
41
  paymentAccountDetails: {
69
42
  fetchStatus: initialStatus,
@@ -91,6 +64,7 @@ export const initialState = {
91
64
  },
92
65
  fetchState: 'Not-Started',
93
66
  error: undefined,
67
+ aiAgentsActivation: { ...emptyAiAgentsActivationSubview },
94
68
  uiState: {
95
69
  isQBOPopupOpen: false,
96
70
  isCardPaymentPopupOpen: false,
@@ -143,6 +117,9 @@ const onboardingCustomerView = createSlice({
143
117
  updateCurrentStep(draft, action) {
144
118
  draft.currentStep = action.payload.step;
145
119
  },
120
+ updateCurrentSubStep(draft, action) {
121
+ draft.currentSubStep = action.payload.subStep;
122
+ },
146
123
  updateOnboardingCustomerViewAccountDetails: {
147
124
  prepare(paymentAccountIds, subscriptionPaymentAccountIds) {
148
125
  return { payload: { paymentAccountIds, subscriptionPaymentAccountIds } };
@@ -180,6 +157,126 @@ const onboardingCustomerView = createSlice({
180
157
  };
181
158
  },
182
159
  },
160
+ acknowledgeOnboardingAiFinanceTeam: {
161
+ reducer(draft) {
162
+ draft.aiFinanceTeamAcknowledgementStatus = {
163
+ fetchState: 'In-Progress',
164
+ error: undefined,
165
+ };
166
+ },
167
+ prepare(companyId) {
168
+ return {
169
+ payload: { companyId },
170
+ };
171
+ },
172
+ },
173
+ acknowledgeOnboardingAiFinanceTeamSuccess(draft) {
174
+ draft.aiFinanceTeamAcknowledgementStatus = {
175
+ fetchState: 'Completed',
176
+ error: undefined,
177
+ };
178
+ },
179
+ acknowledgeOnboardingAiFinanceTeamFailure: {
180
+ reducer(draft, action) {
181
+ draft.aiFinanceTeamAcknowledgementStatus = {
182
+ fetchState: 'Error',
183
+ error: action.payload,
184
+ };
185
+ },
186
+ prepare(error) {
187
+ return {
188
+ payload: error,
189
+ };
190
+ },
191
+ },
192
+ acknowledgeOnboardingAiActivationViewed: {
193
+ reducer(draft) {
194
+ draft.aiActivationViewedAcknowledgementStatus = {
195
+ fetchState: 'In-Progress',
196
+ error: undefined,
197
+ };
198
+ },
199
+ prepare(companyId) {
200
+ return {
201
+ payload: { companyId },
202
+ };
203
+ },
204
+ },
205
+ acknowledgeOnboardingAiActivationViewedSuccess(draft) {
206
+ draft.aiActivationViewedAcknowledgementStatus = {
207
+ fetchState: 'Completed',
208
+ error: undefined,
209
+ };
210
+ },
211
+ acknowledgeOnboardingAiActivationViewedFailure: {
212
+ reducer(draft, action) {
213
+ draft.aiActivationViewedAcknowledgementStatus = {
214
+ fetchState: 'Error',
215
+ error: action.payload,
216
+ };
217
+ },
218
+ prepare(error) {
219
+ return {
220
+ payload: error,
221
+ };
222
+ },
223
+ },
224
+ fetchAiAgentsActivationStatus(draft) {
225
+ draft.aiAgentsActivation.fetchStatus = {
226
+ fetchState: 'In-Progress',
227
+ error: undefined,
228
+ };
229
+ },
230
+ fetchAiAgentsActivationStatusSuccess: {
231
+ reducer(draft, action) {
232
+ draft.aiAgentsActivation.fetchStatus = {
233
+ fetchState: 'Completed',
234
+ error: undefined,
235
+ };
236
+ draft.aiAgentsActivation.phases = action.payload.phases;
237
+ draft.aiAgentsActivation.counts = action.payload.counts;
238
+ },
239
+ prepare(payload) {
240
+ return { payload };
241
+ },
242
+ },
243
+ fetchAiAgentsActivationStatusFailure: {
244
+ reducer(draft, action) {
245
+ draft.aiAgentsActivation.fetchStatus = {
246
+ fetchState: 'Error',
247
+ error: action.payload,
248
+ };
249
+ },
250
+ prepare(error) {
251
+ return { payload: error };
252
+ },
253
+ },
254
+ aiAgentsActivationCountsUpdated: {
255
+ reducer(draft, action) {
256
+ draft.aiAgentsActivation.counts = {
257
+ ...draft.aiAgentsActivation.counts,
258
+ ...action.payload,
259
+ };
260
+ },
261
+ prepare(payload) {
262
+ return { payload };
263
+ },
264
+ },
265
+ aiAgentsActivationPhaseChanged: {
266
+ reducer(draft, action) {
267
+ const target = draft.aiAgentsActivation.phases;
268
+ const index = target.findIndex((phase) => phase.key === action.payload.key);
269
+ if (index === -1) {
270
+ target.push(action.payload);
271
+ }
272
+ else {
273
+ target[index] = { ...target[index], ...action.payload };
274
+ }
275
+ },
276
+ prepare(payload) {
277
+ return { payload };
278
+ },
279
+ },
183
280
  updateOnboardingCustomerViewDashboardLoaded: {
184
281
  reducer(draft) {
185
282
  draft.dashboardLoadedStatus = {
@@ -592,7 +689,82 @@ const onboardingCustomerView = createSlice({
592
689
  clearOnboardingCustomerView(draft) {
593
690
  Object.assign(draft, initialState);
594
691
  },
692
+ /** Merge AI-parsed officer fields into the officer's onboarding localData. */
693
+ applyKycDocumentAutofillForOnboarding: {
694
+ reducer(draft, action) {
695
+ const { officerType, values, autoFilledFieldNames, fileId } = action.payload;
696
+ const slot = draft.companyOfficerUpdateStatus[officerType];
697
+ slot.localData = Object.assign({}, slot.localData, values);
698
+ slot.autoFilledFields = Array.from(new Set([...(slot.autoFilledFields ?? []), ...autoFilledFieldNames]));
699
+ draft.parsingDocumentFileIds = (draft.parsingDocumentFileIds ?? []).filter((id) => id !== fileId);
700
+ },
701
+ prepare(payload) {
702
+ return { payload };
703
+ },
704
+ },
705
+ /** Merge AI-parsed company fields into companyDetails onboarding localData. */
706
+ applyKybDocumentAutofillForOnboarding: {
707
+ reducer(draft, action) {
708
+ const { values, autoFilledFieldNames, fileId } = action.payload;
709
+ draft.companyDetails.localData = Object.assign({}, draft.companyDetails.localData, values);
710
+ const prev = draft.companyDetails.autoFilledFields ?? [];
711
+ draft.companyDetails.autoFilledFields = Array.from(new Set([...prev, ...autoFilledFieldNames]));
712
+ draft.parsingDocumentFileIds = (draft.parsingDocumentFileIds ?? []).filter((id) => id !== fileId);
713
+ },
714
+ prepare(payload) {
715
+ return { payload };
716
+ },
717
+ },
718
+ /** Wipe AI-autofill badges during onboarding. */
719
+ clearKycKybAutofillForOnboarding: {
720
+ reducer(draft, action) {
721
+ const { officerType } = action.payload;
722
+ if (officerType != null) {
723
+ draft.companyOfficerUpdateStatus[officerType].autoFilledFields = [];
724
+ }
725
+ else {
726
+ draft.companyDetails.autoFilledFields = [];
727
+ Object.keys(draft.companyOfficerUpdateStatus).forEach((key) => {
728
+ draft.companyOfficerUpdateStatus[key].autoFilledFields = [];
729
+ });
730
+ }
731
+ },
732
+ prepare(payload = {}) {
733
+ return { payload };
734
+ },
735
+ },
736
+ },
737
+ extraReducers: (builder) => {
738
+ const addParsingFileId = (draft, fileId) => {
739
+ draft.parsingDocumentFileIds = draft.parsingDocumentFileIds ?? [];
740
+ if (!draft.parsingDocumentFileIds.includes(fileId)) {
741
+ draft.parsingDocumentFileIds.push(fileId);
742
+ }
743
+ };
744
+ const removeParsingFileId = (draft, fileId) => {
745
+ draft.parsingDocumentFileIds = (draft.parsingDocumentFileIds ?? []).filter((id) => id !== fileId);
746
+ };
747
+ builder.addCase(parseUploadedKycDocument, (draft, action) => {
748
+ if (action.payload.target === 'onboarding') {
749
+ addParsingFileId(draft, action.payload.fileId);
750
+ }
751
+ });
752
+ builder.addCase(parseUploadedKybDocument, (draft, action) => {
753
+ if (action.payload.target === 'onboarding') {
754
+ addParsingFileId(draft, action.payload.fileId);
755
+ }
756
+ });
757
+ builder.addCase(parseUploadedKycDocumentFailure, (draft, action) => {
758
+ if (action.payload.target === 'onboarding') {
759
+ removeParsingFileId(draft, action.payload.fileId);
760
+ }
761
+ });
762
+ builder.addCase(parseUploadedKybDocumentFailure, (draft, action) => {
763
+ if (action.payload.target === 'onboarding') {
764
+ removeParsingFileId(draft, action.payload.fileId);
765
+ }
766
+ });
595
767
  },
596
768
  });
597
- export const { fetchOnboardingCustomerView, fetchOnboardingCustomerSetupView, fetchOnboardingCustomerSetupViewSuccess, fetchOnboardingCustomerSetupViewFailure, updateOnboardingCustomerViewCompleteStatus, updateOnboardingCustomerViewCompleteStatusSuccess, updateOnboardingCustomerViewCompleteStatusFailure, updateOnboardingCustomerViewDashboardLoaded, updateOnboardingCustomerViewDashboardLoadedSuccess, updateOnboardingCustomerViewDashboardLoadedFailure, updateOnboardingCustomerView, updateOnboardingCustomerViewSuccess, updateOnboardingCustomerViewFailure, updateOnboardingPaymentAccountStatus, updateOnboardingPaymentAccountStatusSuccess, updateOnboardingPaymentAccountStatusFailure, updateOnboardingPaymentAccountLoginStatus, updateOnboardingPaymentAccountLoginStatusSuccess, updateOnboardingPaymentAccountLoginStatusFailure, establishOnboardingPlaidConnection, establishOnboardingPlaidConnectionSuccess, establishOnboardingPlaidConnectionFailure, getOnboardingPlaidLinkToken, getOnboardingPlaidLinkTokenSuccess, getOnboardingPlaidLinkTokenFailure, updateCurrentStep, updateOnboardingCustomerViewAccountDetails, updateOnboardingCustomerViewLocalStoreData, saveOnboardingCustomerViewDataInLocalStore, saveOnboardingCompnayOfficerPhoneInLocalStore, updateOnboardingCustomerViewUIState, sendOnboardingOfficerOtp, sendOnboardingOfficerOtpSuccess, sendOnboardingOfficerOtpFailure, resendOnboardingOfficerOtp, verifyOnboardingOfficerOtp, verifyOnboardingOfficerOtpSuccess, verifyOnboardingOfficerOtpFailure, clearOnboardingCustomerViewDataInLocalStore, clearOnboardingCustomerView, } = onboardingCustomerView.actions;
769
+ export const { fetchOnboardingCustomerView, fetchOnboardingCustomerSetupView, fetchOnboardingCustomerSetupViewSuccess, fetchOnboardingCustomerSetupViewFailure, updateOnboardingCustomerViewCompleteStatus, updateOnboardingCustomerViewCompleteStatusSuccess, updateOnboardingCustomerViewCompleteStatusFailure, acknowledgeOnboardingAiFinanceTeam, acknowledgeOnboardingAiFinanceTeamSuccess, acknowledgeOnboardingAiFinanceTeamFailure, acknowledgeOnboardingAiActivationViewed, acknowledgeOnboardingAiActivationViewedSuccess, acknowledgeOnboardingAiActivationViewedFailure, fetchAiAgentsActivationStatus, fetchAiAgentsActivationStatusSuccess, fetchAiAgentsActivationStatusFailure, aiAgentsActivationCountsUpdated, aiAgentsActivationPhaseChanged, updateOnboardingCustomerViewDashboardLoaded, updateOnboardingCustomerViewDashboardLoadedSuccess, updateOnboardingCustomerViewDashboardLoadedFailure, updateOnboardingCustomerView, updateOnboardingCustomerViewSuccess, updateOnboardingCustomerViewFailure, updateOnboardingPaymentAccountStatus, updateOnboardingPaymentAccountStatusSuccess, updateOnboardingPaymentAccountStatusFailure, updateOnboardingPaymentAccountLoginStatus, updateOnboardingPaymentAccountLoginStatusSuccess, updateOnboardingPaymentAccountLoginStatusFailure, establishOnboardingPlaidConnection, establishOnboardingPlaidConnectionSuccess, establishOnboardingPlaidConnectionFailure, getOnboardingPlaidLinkToken, getOnboardingPlaidLinkTokenSuccess, getOnboardingPlaidLinkTokenFailure, updateCurrentStep, updateCurrentSubStep, updateOnboardingCustomerViewAccountDetails, updateOnboardingCustomerViewLocalStoreData, saveOnboardingCustomerViewDataInLocalStore, saveOnboardingCompnayOfficerPhoneInLocalStore, updateOnboardingCustomerViewUIState, sendOnboardingOfficerOtp, sendOnboardingOfficerOtpSuccess, sendOnboardingOfficerOtpFailure, resendOnboardingOfficerOtp, verifyOnboardingOfficerOtp, verifyOnboardingOfficerOtpSuccess, verifyOnboardingOfficerOtpFailure, clearOnboardingCustomerViewDataInLocalStore, clearOnboardingCustomerView, applyKycDocumentAutofillForOnboarding, applyKybDocumentAutofillForOnboarding, clearKycKybAutofillForOnboarding, } = onboardingCustomerView.actions;
598
770
  export default onboardingCustomerView.reducer;
@@ -8,10 +8,10 @@ import { getUserRoleByUserIds } from '../../../entity/userRole/userRoleSelector'
8
8
  import { getCompanyConfig } from '../../companyConfigView/companyConfigSelector';
9
9
  import { getCompanyView } from '../../companyView/selectorHelpers/getCompanyView';
10
10
  import { getCompanyAndIdentityDetails, } from '../../spendManagement/commonSetup/setupViewSelector';
11
- import { ALL_ONBOARDING_STEPS, ALL_ZENI_USER_ONBOARDING_STEPS, REQUIRED_ONBOARDING_STEPS, ZENI_USER_REQUIRED_ONBOARDING_STEPS, toOnboardingStepType, } from './onboardingCustomerViewState';
11
+ import { ALL_ONBOARDING_STEPS, ALL_ZENI_USER_BOOKKEEPING_ONBOARDING_STEPS, ALL_ZENI_USER_ONBOARDING_STEPS, REQUIRED_ONBOARDING_STEPS, ZENI_USER_REQUIRED_ONBOARDING_STEPS, emptyAiAgentsActivationSubview, toOnboardingStepType, } from './onboardingCustomerViewState';
12
12
  export function getOnboardingCustomerView(state, companyId) {
13
13
  const { fileState, paymentAccountState, onboardingCustomerViewState, userState, userRoleState, subscriptionPaymentAccountState, companyConfigState, cardPaymentViewState, countryListState, addressViewState, } = state;
14
- const { companyDetails, companyOfficerUpdateStatus, primaryContactDetails, subscriptionPaymentAccountIds, paymentAccountDetails, plaidConnectionDetails, updateStatus, saveStatus, currentStep, uiState, fetchState, error, } = onboardingCustomerViewState;
14
+ const { companyDetails, companyOfficerUpdateStatus, primaryContactDetails, subscriptionPaymentAccountIds, paymentAccountDetails, plaidConnectionDetails, parsingDocumentFileIds, updateStatus, saveStatus, currentStep, currentSubStep, uiState, fetchState, error, } = onboardingCustomerViewState;
15
15
  const { paymentAccountIds } = paymentAccountDetails;
16
16
  let subscriptionPaymentAccount;
17
17
  let paymentAccount;
@@ -54,6 +54,7 @@ export function getOnboardingCustomerView(state, companyId) {
54
54
  companyDetails,
55
55
  companyOfficerUpdateStatus,
56
56
  primaryContactDetails,
57
+ parsingDocumentFileIds,
57
58
  });
58
59
  const companyAddress = addressViewState.newAddressState?.company_address;
59
60
  if (companyAddress == null &&
@@ -73,7 +74,7 @@ export function getOnboardingCustomerView(state, companyId) {
73
74
  cardPaymentViewState.cardPaymentsIds.length > 0) &&
74
75
  companyView?.company.company.companyOnboardingInfo
75
76
  .subscriptionBillingAddressId != null) {
76
- completedSteps.push('link_payment_account');
77
+ completedSteps.push('setup_billing');
77
78
  }
78
79
  const isPaymentVerified = (paymentAccount?.providerVerificationStatus?.code?.includes('verified') ===
79
80
  true &&
@@ -84,24 +85,25 @@ export function getOnboardingCustomerView(state, companyId) {
84
85
  .subscriptionBillingAddressId != null;
85
86
  if ((isPaymentVerified || hasSubscriptionBillingAddress) &&
86
87
  !(isPaymentVerified && hasSubscriptionBillingAddress)) {
87
- halfCompletedSteps.push('link_payment_account');
88
+ halfCompletedSteps.push('setup_billing');
88
89
  }
89
90
  const isValidConnection = externalConnections?.accounting[0]?.isValid ?? false;
90
91
  if (isValidConnection) {
91
- completedSteps.push('qbo_connection');
92
+ completedSteps.push('connect_ledger');
92
93
  }
93
- if (companyDetails.localData != null &&
94
+ const isCompanyDetailsDone = companyDetails.localData != null &&
94
95
  primaryContactDetails.localData != null &&
95
- isCompanyDetailsCompleted(fileState, companyView, primaryContact)) {
96
- completedSteps.push('company_details');
97
- }
96
+ isCompanyDetailsCompleted(fileState, companyView, primaryContact);
98
97
  const officerIndex = companyOfficers.length > 0
99
98
  ? Object.values(companyOfficerLocalData).findIndex((officer) => officer?.isSelectedForVerification === true)
100
99
  : 0;
101
100
  const selectedOfficerType = `Officer_${officerIndex < 0 ? 1 : officerIndex + 1}`;
102
- if (companyOfficerLocalData[selectedOfficerType] != null &&
103
- isOfficerDetailsCompleted(companyOfficers, companyOfficerRoles, companyOfficerLocalData[selectedOfficerType], fileState)) {
104
- completedSteps.push('company_officer');
101
+ const isOfficerDone = companyOfficerLocalData[selectedOfficerType] != null &&
102
+ isOfficerDetailsCompleted(companyOfficers, companyOfficerRoles, companyOfficerLocalData[selectedOfficerType], fileState);
103
+ // The verification step (single sidebar step) is only "complete" once both
104
+ // the company-officer and company-details sub-steps are fully filled in.
105
+ if (isCompanyDetailsDone && isOfficerDone) {
106
+ completedSteps.push('verification');
105
107
  }
106
108
  const { allStepsData, requiredStepsData } = onboardingStepsData(isValidConnection, currentTenant?.productSettings ?? [], accountingConnectionCreationMode);
107
109
  const allRequiredStepsCompleted = requiredStepsData.every((step) => {
@@ -119,6 +121,7 @@ export function getOnboardingCustomerView(state, companyId) {
119
121
  return {
120
122
  companyDetailsLocalData,
121
123
  companyOfficerLocalData,
124
+ parsingDocumentFileIds,
122
125
  subscriptionBillingAddress: subscriptionBillingAddress?.addressToCreate,
123
126
  companyView,
124
127
  allNationalityCountries,
@@ -127,6 +130,7 @@ export function getOnboardingCustomerView(state, companyId) {
127
130
  officer: isOfficerDetailsSavePending(companyOfficers, companyOfficerRoles, fileState, companyOfficerLocalData[selectedOfficerType]),
128
131
  },
129
132
  currentStep,
133
+ currentSubStep,
130
134
  completedSteps,
131
135
  halfCompletedSteps,
132
136
  allRequiredStepsCompleted,
@@ -203,14 +207,20 @@ export function isOfficerDetailsCompleted(companyOfficers, companyOfficerRoles,
203
207
  isPhoneVerified === true);
204
208
  }
205
209
  export const onboardingStepsData = (isValidConnection, productSettings, accountingConnectionCreationMode) => {
206
- const allStepsData = accountingConnectionCreationMode === 'zeni_user' ||
207
- ((productSettings.isBankingEnabled || productSettings.isCardsEnabled) &&
208
- !productSettings.isBookkeepingEnabled)
210
+ // 3 cohorts:
211
+ // - Core-only (banking/cards, no bookkeeping): no ledger, no integrations.
212
+ // - Zeni-team-connects-QBO bookkeeping: skip ledger but keep integrations
213
+ // so the customer can still wire up Plaid / Stripe / HubSpot / email.
214
+ // - Customer-connects-QBO bookkeeping: full 4-step flow.
215
+ const isCoreOnlyTenant = (productSettings.isBankingEnabled || productSettings.isCardsEnabled) &&
216
+ !productSettings.isBookkeepingEnabled;
217
+ const allStepsData = isCoreOnlyTenant
209
218
  ? ALL_ZENI_USER_ONBOARDING_STEPS
210
- : ALL_ONBOARDING_STEPS;
219
+ : accountingConnectionCreationMode === 'zeni_user'
220
+ ? ALL_ZENI_USER_BOOKKEEPING_ONBOARDING_STEPS
221
+ : ALL_ONBOARDING_STEPS;
211
222
  const requiredStepsData = (accountingConnectionCreationMode === 'zeni_user' && isValidConnection) ||
212
- ((productSettings.isBankingEnabled || productSettings.isCardsEnabled) &&
213
- !productSettings.isBookkeepingEnabled)
223
+ isCoreOnlyTenant
214
224
  ? ZENI_USER_REQUIRED_ONBOARDING_STEPS
215
225
  : REQUIRED_ONBOARDING_STEPS;
216
226
  return {
@@ -323,3 +333,11 @@ export const getProductSettingsString = (productSettings) => {
323
333
  .map((key) => productKeyMap[key])
324
334
  .join(',');
325
335
  };
336
+ const fromActivationView = (state) =>
337
+ // Fall back to the empty subview so state hydrated from an older persisted
338
+ // version (before aiAgentsActivation existed) doesn't crash on .phases/.counts.
339
+ state.onboardingCustomerViewState.aiAgentsActivation ??
340
+ emptyAiAgentsActivationSubview;
341
+ export const getAiAgentsActivationSubview = (state) => fromActivationView(state);
342
+ export const getAiAgentsActivationPhases = (state) => fromActivationView(state).phases;
343
+ export const getAiAgentsActivationCounts = (state) => fromActivationView(state).counts;