@zeniai/client-epic-state 5.1.0-betaSS2 → 5.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/common/aiCfo/aiCfoSuggestedQuestionsPageContext.d.ts +1 -1
- package/lib/commonStateTypes/amount.d.ts +1 -0
- package/lib/commonStateTypes/amount.js +9 -1
- package/lib/commonStateTypes/viewAndReport/viewAndReport.d.ts +2 -2
- package/lib/commonStateTypes/viewAndReport/viewAndReport.js +2 -0
- package/lib/commonStateTypes/workingDayHelper.d.ts +9 -0
- package/lib/commonStateTypes/workingDayHelper.js +28 -1
- package/lib/entity/account/accountSelector.d.ts +9 -0
- package/lib/entity/account/accountSelector.js +14 -1
- package/lib/entity/account/accountState.d.ts +1 -1
- package/lib/entity/accountGroup/accountGroupState.d.ts +1 -1
- package/lib/entity/aiCfo/aiCfoPayload.d.ts +64 -5
- package/lib/entity/aiCfo/aiCfoReducer.d.ts +23 -2
- package/lib/entity/aiCfo/aiCfoReducer.js +252 -10
- package/lib/entity/aiCfo/aiCfoSelector.d.ts +4 -1
- package/lib/entity/aiCfo/aiCfoSelector.js +19 -1
- package/lib/entity/aiCfo/aiCfoState.d.ts +98 -4
- package/lib/entity/aiCfo/aiCfoState.js +20 -1
- package/lib/entity/approvalRule/approvalRuleConflict.d.ts +56 -0
- package/lib/entity/approvalRule/approvalRuleConflict.js +77 -0
- package/lib/entity/approvalRule/approvalRulePayload.d.ts +34 -5
- package/lib/entity/approvalRule/approvalRulePayload.js +145 -10
- package/lib/entity/approvalRule/approvalRuleSelector.d.ts +25 -1
- package/lib/entity/approvalRule/approvalRuleSelector.js +40 -0
- package/lib/entity/approvalRule/approvalRuleState.d.ts +59 -7
- package/lib/entity/cardPolicy/cardPolicyPayload.d.ts +277 -0
- package/lib/entity/cardPolicy/cardPolicyPayload.js +143 -0
- package/lib/entity/cardPolicy/cardPolicyReducer.d.ts +19 -0
- package/lib/entity/cardPolicy/cardPolicyReducer.js +175 -0
- package/lib/entity/cardPolicy/cardPolicySelector.d.ts +32 -0
- package/lib/entity/cardPolicy/cardPolicySelector.js +99 -0
- package/lib/entity/cardPolicy/cardPolicyState.d.ts +205 -0
- package/lib/entity/cardPolicy/cardPolicyState.js +14 -0
- package/lib/entity/cardPolicy/extractPolicyDocumentEpic.d.ts +18 -0
- package/lib/entity/cardPolicy/extractPolicyDocumentEpic.js +68 -0
- package/lib/entity/cardPolicy/fetchCardPolicyVendorOptionsEpic.d.ts +26 -0
- package/lib/entity/cardPolicy/fetchCardPolicyVendorOptionsEpic.js +47 -0
- package/lib/entity/cardPolicy/policyDocumentExtractionToRecommendationBridgeEpic.d.ts +25 -0
- package/lib/entity/cardPolicy/policyDocumentExtractionToRecommendationBridgeEpic.js +39 -0
- package/lib/entity/cardPolicy/policyRecommendationFromUploadEpic.d.ts +24 -0
- package/lib/entity/cardPolicy/policyRecommendationFromUploadEpic.js +105 -0
- package/lib/entity/class/classReducer.d.ts +4 -4
- package/lib/entity/class/classState.d.ts +1 -1
- package/lib/entity/forecast/forecastState.d.ts +1 -1
- package/lib/entity/jeSchedules/jeSchedulesPayload.d.ts +1 -0
- package/lib/entity/jeSchedules/jeSchedulesPayload.js +7 -0
- package/lib/entity/jeSchedules/jeSchedulesState.d.ts +2 -0
- package/lib/entity/jeSchedules/jeSchedulesTypes.d.ts +1 -1
- package/lib/entity/monthEndCloseChecks/monthEndCloseChecksState.d.ts +1 -1
- package/lib/entity/sectionAccountsView/sectionAccountsView.d.ts +1 -1
- package/lib/entity/sectionClassesViewV2/sectionClassesView.d.ts +1 -1
- package/lib/entity/sectionClassesViewV2/sectionClassesViewReducer.d.ts +2 -2
- package/lib/entity/sectionProjectView/sectionProjectView.d.ts +1 -1
- package/lib/entity/sectionProjectView/sectionProjectViewReducer.d.ts +2 -2
- package/lib/entity/snackbar/snackbarTypes.d.ts +1 -1
- package/lib/entity/snackbar/snackbarTypes.js +7 -0
- package/lib/entity/task/taskPayload.d.ts +3 -1
- package/lib/entity/task/taskPayload.js +2 -0
- package/lib/entity/task/taskState.d.ts +2 -0
- package/lib/entity/tenant/clearAllEpic.d.ts +9 -2
- package/lib/entity/tenant/clearAllEpic.js +14 -0
- package/lib/entity/tenant/tenantPayload.d.ts +21 -0
- package/lib/entity/tenant/tenantReducer.d.ts +14 -5
- package/lib/entity/tenant/tenantReducer.js +132 -8
- package/lib/entity/tenant/tenantState.d.ts +24 -1
- package/lib/entity/transaction/payloadTypes/transactionPayload.d.ts +4 -0
- package/lib/entity/transaction/payloadTypes/transactionPayload.js +18 -10
- package/lib/entity/transaction/stateTypes/transaction.d.ts +3 -0
- package/lib/entity/transaction/stateTypes/transactionLine.d.ts +2 -1
- package/lib/entity/transaction/stateTypes/transactionLine.js +2 -1
- package/lib/epic.d.ts +31 -2
- package/lib/epic.js +31 -2
- package/lib/esm/commonStateTypes/amount.js +7 -0
- package/lib/esm/commonStateTypes/viewAndReport/viewAndReport.js +2 -0
- package/lib/esm/commonStateTypes/workingDayHelper.js +26 -0
- package/lib/esm/entity/account/accountSelector.js +11 -0
- package/lib/esm/entity/aiCfo/aiCfoReducer.js +252 -10
- package/lib/esm/entity/aiCfo/aiCfoSelector.js +17 -1
- package/lib/esm/entity/aiCfo/aiCfoState.js +17 -0
- package/lib/esm/entity/approvalRule/approvalRuleConflict.js +74 -0
- package/lib/esm/entity/approvalRule/approvalRulePayload.js +145 -10
- package/lib/esm/entity/approvalRule/approvalRuleSelector.js +35 -0
- package/lib/esm/entity/cardPolicy/cardPolicyPayload.js +130 -0
- package/lib/esm/entity/cardPolicy/cardPolicyReducer.js +171 -0
- package/lib/esm/entity/cardPolicy/cardPolicySelector.js +75 -0
- package/lib/esm/entity/cardPolicy/cardPolicyState.js +9 -0
- package/lib/esm/entity/cardPolicy/extractPolicyDocumentEpic.js +64 -0
- package/lib/esm/entity/cardPolicy/fetchCardPolicyVendorOptionsEpic.js +43 -0
- package/lib/esm/entity/cardPolicy/policyDocumentExtractionToRecommendationBridgeEpic.js +35 -0
- package/lib/esm/entity/cardPolicy/policyRecommendationFromUploadEpic.js +101 -0
- package/lib/esm/entity/jeSchedules/jeSchedulesPayload.js +7 -0
- package/lib/esm/entity/snackbar/snackbarTypes.js +7 -0
- package/lib/esm/entity/task/taskPayload.js +2 -0
- package/lib/esm/entity/tenant/clearAllEpic.js +14 -0
- package/lib/esm/entity/tenant/tenantReducer.js +130 -7
- package/lib/esm/entity/transaction/payloadTypes/transactionPayload.js +18 -10
- package/lib/esm/entity/transaction/stateTypes/transactionLine.js +1 -0
- package/lib/esm/epic.js +31 -2
- package/lib/esm/index.js +68 -28
- package/lib/esm/reducer.js +21 -0
- package/lib/esm/view/aiCfoView/aiCfoViewReducer.js +6 -3
- package/lib/esm/view/aiCfoView/epics/createSessionAndSubmitEpic.js +5 -2
- package/lib/esm/view/aiCfoView/epics/createSessionEpic.js +2 -1
- package/lib/esm/view/aiCfoView/epics/fetchSuggestedQuestionsEpic.js +12 -2
- package/lib/esm/view/companyTaskManagerView/companyTaskManagerViewReducer.js +39 -11
- package/lib/esm/view/companyTaskManagerView/companyTaskManagerViewSelector.js +14 -4
- package/lib/esm/view/companyTaskManagerView/epics/fetchCockpitContextEpic.js +38 -0
- package/lib/esm/view/companyTaskManagerView/epics/fetchCompanyTaskManagerViewEpic.js +37 -28
- package/lib/esm/view/companyTaskManagerView/epics/updateCompanyTaskManagerViewFiltersEpic.js +16 -0
- package/lib/esm/view/companyView/companyViewReducer.js +46 -1
- package/lib/esm/view/companyView/epic/companyPassport/dismissCapitalizationOnboardingEpic.js +25 -0
- package/lib/esm/view/companyView/epic/companyPassport/updateCapitalizationAccountThresholdEpic.js +98 -0
- package/lib/esm/view/companyView/epic/fetchAllCockpitViewsEpic.js +2 -2
- package/lib/esm/view/companyView/types/companyPassport/companyPassportViewState.js +4 -0
- package/lib/esm/view/createTransferEntry/createTransferEntryReducer.js +82 -0
- package/lib/esm/view/createTransferEntry/createTransferEntrySelector.js +64 -0
- package/lib/esm/view/createTransferEntry/createTransferEntryState.js +17 -0
- package/lib/esm/view/createTransferEntry/epics/createTransferEntryEpic.js +136 -0
- package/lib/esm/view/createTransferEntry/epics/fetchTransferAccountsEpic.js +36 -0
- package/lib/esm/view/dashboard/dashboardReducer.js +11 -1
- package/lib/esm/view/expenseAutomationView/epics/common/fetchAllExpenseAutomationTabsEpic.js +3 -3
- package/lib/esm/view/expenseAutomationView/epics/common/refreshExpenseAutomationCurrentTabEpic.js +3 -4
- package/lib/esm/view/expenseAutomationView/epics/missingReceipts/searchTransactionsForManualMatchEpic.js +13 -9
- package/lib/esm/view/expenseAutomationView/epics/transactionCategorization/backgroundRefetchReviewTabEpic.js +3 -16
- package/lib/esm/view/expenseAutomationView/epics/transactionCategorization/fetchTransactionCategorizationEpic.js +9 -16
- package/lib/esm/view/expenseAutomationView/epics/transactionCategorization/fetchTransactionCategorizationViewEpic.js +2 -2
- package/lib/esm/view/expenseAutomationView/epics/transactionCategorization/markTransactionAsNotMiscategorizedEpic.js +2 -13
- package/lib/esm/view/expenseAutomationView/epics/transactionCategorization/saveTransactionCategorizationEpic.js +2 -6
- package/lib/esm/view/expenseAutomationView/epics/transactionCategorization/triggerReviewTabRefetchEpic.js +2 -2
- package/lib/esm/view/expenseAutomationView/epics/transactionCategorization/updateTransactionCategorizationEpic.js +2 -6
- package/lib/esm/view/expenseAutomationView/expenseAutomationViewReducer.js +3 -20
- package/lib/esm/view/expenseAutomationView/reducers/transactionsViewReducer.js +20 -44
- package/lib/esm/view/expenseAutomationView/selectors/transactionCategorizationSelector.js +13 -6
- package/lib/esm/view/expenseAutomationView/transactionFilterHelpers.js +106 -18
- package/lib/esm/view/spendManagement/autotransferRules/autoTransferRulesSelector.js +22 -2
- package/lib/esm/view/spendManagement/billPay/billPayReview/billPayReviewSelector.js +14 -0
- package/lib/esm/view/spendManagement/billPay/billPaySetupApproverView/billPaySetupApproverViewReducer.js +109 -12
- package/lib/esm/view/spendManagement/billPay/billPaySetupApproverView/epic/deleteBillPayApprovalRuleEpic.js +10 -2
- package/lib/esm/view/spendManagement/billPay/billPaySetupApproverView/epic/fetchBillPaySetupApproverViewEpic.js +8 -4
- package/lib/esm/view/spendManagement/billPay/billPaySetupApproverView/epic/initializeBillPaySetupApproverViewUpdateDataEpic.js +11 -7
- package/lib/esm/view/spendManagement/billPay/billPaySetupApproverView/epic/reorderBillPayApprovalRulesEpic.js +54 -0
- package/lib/esm/view/spendManagement/billPay/billPaySetupApproverView/epic/saveBillPaySetupApproverViewUpdatesEpic.js +13 -4
- package/lib/esm/view/spendManagement/billPay/billPaySetupApproverView/types/commonPayload.js +140 -16
- package/lib/esm/view/spendManagement/billPay/editBillView/editBillViewSelector.js +60 -4
- package/lib/esm/view/spendManagement/billPay/editBillView/epics/fetchEditBillDetailPageEpic.js +8 -2
- package/lib/esm/view/spendManagement/cashManagement/autoSweepFlow/autoSweepFlowPayload.js +29 -0
- package/lib/esm/view/spendManagement/cashManagement/autoSweepFlow/autoSweepFlowReducer.js +78 -0
- package/lib/esm/view/spendManagement/cashManagement/autoSweepFlow/autoSweepFlowSelector.js +47 -0
- package/lib/esm/view/spendManagement/cashManagement/autoSweepFlow/autoSweepFlowState.js +47 -0
- package/lib/esm/view/spendManagement/cashManagement/autoSweepFlow/epics/fetchCashManagementSettingsEpic.js +34 -0
- package/lib/esm/view/spendManagement/cashManagement/autoSweepFlow/epics/saveAutoSweepSettingsEpic.js +32 -0
- package/lib/esm/view/spendManagement/cashManagement/cashManagementOverview/cashManagementOverviewPayload.js +54 -0
- package/lib/esm/view/spendManagement/cashManagement/cashManagementOverview/cashManagementOverviewReducer.js +92 -0
- package/lib/esm/view/spendManagement/cashManagement/cashManagementOverview/cashManagementOverviewSelector.js +225 -0
- package/lib/esm/view/spendManagement/cashManagement/cashManagementOverview/cashManagementOverviewState.js +10 -0
- package/lib/esm/view/spendManagement/cashManagement/cashManagementOverview/epics/fetchCashManagementBannerEpic.js +23 -0
- package/lib/esm/view/spendManagement/cashManagement/cashManagementOverview/epics/fetchCashManagementOverviewPageEpic.js +36 -0
- package/lib/esm/view/spendManagement/cashManagement/cashManagementOverview/epics/fetchCashManagementRecommendationEpic.js +27 -0
- package/lib/esm/view/spendManagement/cashManagement/cashManagementOverview/epics/fetchRecentTransferEpic.js +28 -0
- package/lib/esm/view/spendManagement/chargeCards/cardPolicy/cardPolicyDetail/cardPolicyDetailReducer.js +52 -0
- package/lib/esm/view/spendManagement/chargeCards/cardPolicy/cardPolicyDetail/cardPolicyDetailSelector.js +22 -0
- package/lib/esm/view/spendManagement/chargeCards/cardPolicy/cardPolicyDetail/cardPolicyDetailState.js +1 -0
- package/lib/esm/view/spendManagement/chargeCards/cardPolicy/cardPolicyDetail/fetchCardPolicyDetailEpic.js +36 -0
- package/lib/esm/view/spendManagement/chargeCards/cardPolicy/cardPolicyDetail/updateCardPolicyEpic.js +39 -0
- package/lib/esm/view/spendManagement/chargeCards/cardPolicy/cardPolicyList/archiveCardPolicyEpic.js +34 -0
- package/lib/esm/view/spendManagement/chargeCards/cardPolicy/cardPolicyList/cardPolicyListReducer.js +71 -0
- package/lib/esm/view/spendManagement/chargeCards/cardPolicy/cardPolicyList/cardPolicyListSelector.js +21 -0
- package/lib/esm/view/spendManagement/chargeCards/cardPolicy/cardPolicyList/cardPolicyListState.js +1 -0
- package/lib/esm/view/spendManagement/chargeCards/cardPolicy/cardPolicyList/fetchCardPolicyListEpic.js +38 -0
- package/lib/esm/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/applyAiCardPolicyFormDraftUpdate.js +289 -0
- package/lib/esm/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/applyExtractedPolicyToAiCardPolicyDraft.js +109 -0
- package/lib/esm/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/applyExtractedPolicyToDraftEpic.js +44 -0
- package/lib/esm/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/applyExtractedPolicyToManualCardPolicyDraft.js +111 -0
- package/lib/esm/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/applyUploadPlanToAiCardPolicyDraft.js +25 -0
- package/lib/esm/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/buildAiCardPolicyFormDraftSeed.js +363 -0
- package/lib/esm/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/buildManualCardPolicyFormDraftSeed.js +36 -0
- package/lib/esm/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/cardPolicyChipIds.js +19 -0
- package/lib/esm/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/cardPolicyFormDraftTypes.js +6 -0
- package/lib/esm/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/cardPolicyRequestParts.js +119 -0
- package/lib/esm/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/createCardPolicyReducer.js +154 -0
- package/lib/esm/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/createCardPolicySelector.js +22 -0
- package/lib/esm/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/createCardPolicyState.js +1 -0
- package/lib/esm/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/createCardPolicyTemplateEpic.js +49 -0
- package/lib/esm/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/deriveAiPolicyReviewRowsFromInputs.js +140 -0
- package/lib/esm/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/fetchCardPolicyMccCategoriesEpic.js +20 -0
- package/lib/esm/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/seedAiCardPolicyFormDraftEpic.js +100 -0
- package/lib/esm/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/toBulkCardPolicyTemplateRequestsFromDraft.js +96 -0
- package/lib/esm/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/toCardPolicyTemplateRequestFromDraft.js +59 -0
- package/lib/esm/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/toManualCardPolicyTemplateRequestFromDraft.js +24 -0
- package/lib/esm/view/spendManagement/chargeCards/chargeCardList/chargeCardListSelector.js +25 -0
- package/lib/esm/view/spendManagement/chargeCards/issueChargeCard/aiCardCreationFormDraftTypes.js +1 -0
- package/lib/esm/view/spendManagement/chargeCards/issueChargeCard/applyAiCardCreationFormDraftUpdate.js +34 -0
- package/lib/esm/view/spendManagement/chargeCards/issueChargeCard/buildAiCardCreationFormDraftSeed.js +57 -0
- package/lib/esm/view/spendManagement/chargeCards/issueChargeCard/deriveAiCardRowsFromTeams.js +35 -0
- package/lib/esm/view/spendManagement/chargeCards/issueChargeCard/issueChargeCardEpic.js +2 -2
- package/lib/esm/view/spendManagement/chargeCards/issueChargeCard/issueChargeCardReducer.js +42 -4
- package/lib/esm/view/spendManagement/chargeCards/issueChargeCard/issueChargeCardSelector.js +35 -0
- package/lib/esm/view/spendManagement/chargeCards/issueChargeCard/seedAiCardCreationFormDraftEpic.js +62 -0
- package/lib/esm/view/spendManagement/chargeCards/issueChargeCard/toIssueChargeCardLocalDataFromDraft.js +44 -0
- package/lib/esm/view/spendManagement/reimbursement/editRemiView/epics/fetchEditRemiDetailPageEpic.js +5 -1
- package/lib/esm/view/spendManagement/reimbursement/remiSetupApproverView/epic/deleteRemiApprovalRuleEpic.js +10 -2
- package/lib/esm/view/spendManagement/reimbursement/remiSetupApproverView/epic/fetchRemiSetupApproverViewEpic.js +8 -2
- package/lib/esm/view/spendManagement/reimbursement/remiSetupApproverView/epic/initializeRemiSetupApproverViewUpdateDataEpic.js +11 -7
- package/lib/esm/view/spendManagement/reimbursement/remiSetupApproverView/epic/reorderRemiApprovalRulesEpic.js +61 -0
- package/lib/esm/view/spendManagement/reimbursement/remiSetupApproverView/epic/saveRemiSetupApproverViewUpdatesEpic.js +13 -4
- package/lib/esm/view/spendManagement/reimbursement/remiSetupApproverView/remiSetupApproverViewReducer.js +80 -11
- package/lib/esm/view/spendManagement/treasury/treasurySetUp/epic/updateTreasuryPromoIntroClosedByOutsideClickEpic.js +18 -0
- package/lib/esm/view/spendManagement/treasury/treasurySetUp/epic/updateTreasuryPromoRemindMeLaterClickedEpic.js +18 -0
- package/lib/esm/view/spendManagement/treasury/treasurySetUp/epic/updateTreasuryVideoViewedEpic.js +1 -1
- package/lib/esm/view/spendManagement/treasury/treasurySetUp/treasurySetupViewReducer.js +45 -1
- package/lib/esm/view/transactionDetail/journalEntryLinesViewModel.js +149 -0
- package/lib/esm/view/transactionDetail/transactionDetailSelector.js +6 -1
- package/lib/index.d.ts +84 -34
- package/lib/index.js +261 -37
- package/lib/reducer.d.ts +21 -0
- package/lib/reducer.js +21 -0
- package/lib/view/aiCfoView/aiCfoViewReducer.d.ts +11 -2
- package/lib/view/aiCfoView/aiCfoViewReducer.js +6 -3
- package/lib/view/aiCfoView/epics/createSessionAndSubmitEpic.js +5 -2
- package/lib/view/aiCfoView/epics/createSessionEpic.js +2 -1
- package/lib/view/aiCfoView/epics/fetchSuggestedQuestionsEpic.d.ts +8 -1
- package/lib/view/aiCfoView/epics/fetchSuggestedQuestionsEpic.js +12 -2
- package/lib/view/auditReportView/auditReportViewState.d.ts +1 -1
- package/lib/view/billPayCard/billPayCardSelector.d.ts +1 -1
- package/lib/view/cardBalance/cardBalanceSelector.d.ts +1 -1
- package/lib/view/cashBalance/cashBalanceSelector.d.ts +1 -1
- package/lib/view/cashInCashOut/cashInCashOutSelector.d.ts +1 -1
- package/lib/view/cashPosition/cashPositionSelector.d.ts +1 -1
- package/lib/view/companyTaskManagerView/companyTaskManagerViewPayload.d.ts +19 -11
- package/lib/view/companyTaskManagerView/companyTaskManagerViewReducer.d.ts +11 -5
- package/lib/view/companyTaskManagerView/companyTaskManagerViewReducer.js +40 -12
- package/lib/view/companyTaskManagerView/companyTaskManagerViewSelector.d.ts +2 -0
- package/lib/view/companyTaskManagerView/companyTaskManagerViewSelector.js +13 -3
- package/lib/view/companyTaskManagerView/companyTaskManagerViewState.d.ts +11 -3
- package/lib/view/companyTaskManagerView/epics/fetchCockpitContextEpic.d.ts +10 -0
- package/lib/view/companyTaskManagerView/epics/fetchCockpitContextEpic.js +42 -0
- package/lib/view/companyTaskManagerView/epics/fetchCompanyTaskManagerViewEpic.d.ts +1 -3
- package/lib/view/companyTaskManagerView/epics/fetchCompanyTaskManagerViewEpic.js +37 -28
- package/lib/view/companyTaskManagerView/epics/updateCompanyTaskManagerViewFiltersEpic.d.ts +6 -0
- package/lib/view/companyTaskManagerView/epics/updateCompanyTaskManagerViewFiltersEpic.js +20 -0
- package/lib/view/companyView/companyViewReducer.d.ts +12 -1
- package/lib/view/companyView/companyViewReducer.js +48 -3
- package/lib/view/companyView/epic/companyPassport/dismissCapitalizationOnboardingEpic.d.ts +9 -0
- package/lib/view/companyView/epic/companyPassport/dismissCapitalizationOnboardingEpic.js +29 -0
- package/lib/view/companyView/epic/companyPassport/updateCapitalizationAccountThresholdEpic.d.ts +10 -0
- package/lib/view/companyView/epic/companyPassport/updateCapitalizationAccountThresholdEpic.js +102 -0
- package/lib/view/companyView/epic/fetchAllCockpitViewsEpic.js +2 -2
- package/lib/view/companyView/types/cockpitTypes.d.ts +3 -2
- package/lib/view/companyView/types/companyPassport/companyPassportViewState.d.ts +1 -0
- package/lib/view/companyView/types/companyPassport/companyPassportViewState.js +4 -0
- package/lib/view/createTransferEntry/createTransferEntryReducer.d.ts +32 -0
- package/lib/view/createTransferEntry/createTransferEntryReducer.js +86 -0
- package/lib/view/createTransferEntry/createTransferEntrySelector.d.ts +39 -0
- package/lib/view/createTransferEntry/createTransferEntrySelector.js +69 -0
- package/lib/view/createTransferEntry/createTransferEntryState.d.ts +30 -0
- package/lib/view/createTransferEntry/createTransferEntryState.js +20 -0
- package/lib/view/createTransferEntry/epics/createTransferEntryEpic.d.ts +11 -0
- package/lib/view/createTransferEntry/epics/createTransferEntryEpic.js +140 -0
- package/lib/view/createTransferEntry/epics/fetchTransferAccountsEpic.d.ts +14 -0
- package/lib/view/createTransferEntry/epics/fetchTransferAccountsEpic.js +40 -0
- package/lib/view/dashboard/dashboardReducer.d.ts +2 -2
- package/lib/view/dashboard/dashboardReducer.js +11 -1
- package/lib/view/expenseAutomationView/epics/common/fetchAllExpenseAutomationTabsEpic.js +3 -3
- package/lib/view/expenseAutomationView/epics/common/refreshExpenseAutomationCurrentTabEpic.js +3 -4
- package/lib/view/expenseAutomationView/epics/missingReceipts/searchTransactionsForManualMatchEpic.d.ts +6 -0
- package/lib/view/expenseAutomationView/epics/missingReceipts/searchTransactionsForManualMatchEpic.js +14 -10
- package/lib/view/expenseAutomationView/epics/transactionCategorization/backgroundRefetchReviewTabEpic.js +3 -16
- package/lib/view/expenseAutomationView/epics/transactionCategorization/fetchTransactionCategorizationEpic.js +9 -16
- package/lib/view/expenseAutomationView/epics/transactionCategorization/fetchTransactionCategorizationViewEpic.js +2 -2
- package/lib/view/expenseAutomationView/epics/transactionCategorization/markTransactionAsNotMiscategorizedEpic.js +2 -13
- package/lib/view/expenseAutomationView/epics/transactionCategorization/saveTransactionCategorizationEpic.js +2 -6
- package/lib/view/expenseAutomationView/epics/transactionCategorization/triggerReviewTabRefetchEpic.js +2 -2
- package/lib/view/expenseAutomationView/epics/transactionCategorization/updateTransactionCategorizationEpic.js +2 -6
- package/lib/view/expenseAutomationView/expenseAutomationViewReducer.d.ts +2 -6
- package/lib/view/expenseAutomationView/expenseAutomationViewReducer.js +3 -20
- package/lib/view/expenseAutomationView/helpers/transactionCategorizationLocalDataHelper.d.ts +1 -1
- package/lib/view/expenseAutomationView/payload/transactionCategorizationPayload.d.ts +20 -9
- package/lib/view/expenseAutomationView/reducers/transactionsViewReducer.d.ts +12 -19
- package/lib/view/expenseAutomationView/reducers/transactionsViewReducer.js +21 -45
- package/lib/view/expenseAutomationView/selectorTypes/transactionsViewSelectorTypes.d.ts +8 -6
- package/lib/view/expenseAutomationView/selectors/transactionCategorizationSelector.d.ts +1 -0
- package/lib/view/expenseAutomationView/selectors/transactionCategorizationSelector.js +15 -7
- package/lib/view/expenseAutomationView/transactionFilterHelpers.js +106 -18
- package/lib/view/expenseAutomationView/types/reconciliationViewState.d.ts +1 -1
- package/lib/view/expenseAutomationView/types/transactionsViewState.d.ts +1 -2
- package/lib/view/financeStatement/financeStatementReducer.d.ts +1 -1
- package/lib/view/globalMerchantView/globalMerchantViewReducer.d.ts +2 -2
- package/lib/view/people/peopleTypes.d.ts +1 -1
- package/lib/view/reimbursementCard/reimbursementCardSelector.d.ts +1 -1
- package/lib/view/reportsResync/reportsResyncReducer.d.ts +2 -2
- package/lib/view/scheduleView/scheduleListView/scheduleListTypes.d.ts +1 -1
- package/lib/view/spendManagement/autotransferRules/autoTransferRulesSelector.d.ts +8 -1
- package/lib/view/spendManagement/autotransferRules/autoTransferRulesSelector.js +21 -1
- package/lib/view/spendManagement/autotransferRules/autoTransferRulesState.d.ts +22 -0
- package/lib/view/spendManagement/billPay/billPayReview/billPayReviewSelector.d.ts +7 -0
- package/lib/view/spendManagement/billPay/billPayReview/billPayReviewSelector.js +14 -0
- package/lib/view/spendManagement/billPay/billPaySetupApproverView/billPaySetupApproverViewReducer.d.ts +14 -3
- package/lib/view/spendManagement/billPay/billPaySetupApproverView/billPaySetupApproverViewReducer.js +110 -13
- package/lib/view/spendManagement/billPay/billPaySetupApproverView/billPaySetupApproverViewState.d.ts +16 -0
- package/lib/view/spendManagement/billPay/billPaySetupApproverView/epic/deleteBillPayApprovalRuleEpic.js +10 -2
- package/lib/view/spendManagement/billPay/billPaySetupApproverView/epic/fetchBillPaySetupApproverViewEpic.js +8 -4
- package/lib/view/spendManagement/billPay/billPaySetupApproverView/epic/initializeBillPaySetupApproverViewUpdateDataEpic.js +10 -6
- package/lib/view/spendManagement/billPay/billPaySetupApproverView/epic/reorderBillPayApprovalRulesEpic.d.ts +23 -0
- package/lib/view/spendManagement/billPay/billPaySetupApproverView/epic/reorderBillPayApprovalRulesEpic.js +58 -0
- package/lib/view/spendManagement/billPay/billPaySetupApproverView/epic/saveBillPaySetupApproverViewUpdatesEpic.js +12 -3
- package/lib/view/spendManagement/billPay/billPaySetupApproverView/types/commonPayload.d.ts +59 -1
- package/lib/view/spendManagement/billPay/billPaySetupApproverView/types/commonPayload.js +142 -17
- package/lib/view/spendManagement/billPay/billPaySetupApproverView/types/commonState.d.ts +31 -5
- package/lib/view/spendManagement/billPay/editBillView/editBillViewSelector.d.ts +8 -1
- package/lib/view/spendManagement/billPay/editBillView/editBillViewSelector.js +60 -4
- package/lib/view/spendManagement/billPay/editBillView/epics/fetchEditBillDetailPageEpic.js +8 -2
- package/lib/view/spendManagement/cashManagement/autoSweepFlow/autoSweepFlowPayload.d.ts +47 -0
- package/lib/view/spendManagement/cashManagement/autoSweepFlow/autoSweepFlowPayload.js +34 -0
- package/lib/view/spendManagement/cashManagement/autoSweepFlow/autoSweepFlowReducer.d.ts +23 -0
- package/lib/view/spendManagement/cashManagement/autoSweepFlow/autoSweepFlowReducer.js +82 -0
- package/lib/view/spendManagement/cashManagement/autoSweepFlow/autoSweepFlowSelector.d.ts +40 -0
- package/lib/view/spendManagement/cashManagement/autoSweepFlow/autoSweepFlowSelector.js +51 -0
- package/lib/view/spendManagement/cashManagement/autoSweepFlow/autoSweepFlowState.d.ts +37 -0
- package/lib/view/spendManagement/cashManagement/autoSweepFlow/autoSweepFlowState.js +53 -0
- package/lib/view/spendManagement/cashManagement/autoSweepFlow/epics/fetchCashManagementSettingsEpic.d.ts +14 -0
- package/lib/view/spendManagement/cashManagement/autoSweepFlow/epics/fetchCashManagementSettingsEpic.js +38 -0
- package/lib/view/spendManagement/cashManagement/autoSweepFlow/epics/saveAutoSweepSettingsEpic.d.ts +7 -0
- package/lib/view/spendManagement/cashManagement/autoSweepFlow/epics/saveAutoSweepSettingsEpic.js +36 -0
- package/lib/view/spendManagement/cashManagement/cashManagementOverview/cashManagementOverviewPayload.d.ts +56 -0
- package/lib/view/spendManagement/cashManagement/cashManagementOverview/cashManagementOverviewPayload.js +60 -0
- package/lib/view/spendManagement/cashManagement/cashManagementOverview/cashManagementOverviewReducer.d.ts +22 -0
- package/lib/view/spendManagement/cashManagement/cashManagementOverview/cashManagementOverviewReducer.js +96 -0
- package/lib/view/spendManagement/cashManagement/cashManagementOverview/cashManagementOverviewSelector.d.ts +59 -0
- package/lib/view/spendManagement/cashManagement/cashManagementOverview/cashManagementOverviewSelector.js +230 -0
- package/lib/view/spendManagement/cashManagement/cashManagementOverview/cashManagementOverviewState.d.ts +122 -0
- package/lib/view/spendManagement/cashManagement/cashManagementOverview/cashManagementOverviewState.js +13 -0
- package/lib/view/spendManagement/cashManagement/cashManagementOverview/epics/fetchCashManagementBannerEpic.d.ts +7 -0
- package/lib/view/spendManagement/cashManagement/cashManagementOverview/epics/fetchCashManagementBannerEpic.js +27 -0
- package/lib/view/spendManagement/cashManagement/cashManagementOverview/epics/fetchCashManagementOverviewPageEpic.d.ts +9 -0
- package/lib/view/spendManagement/cashManagement/cashManagementOverview/epics/fetchCashManagementOverviewPageEpic.js +40 -0
- package/lib/view/spendManagement/cashManagement/cashManagementOverview/epics/fetchCashManagementRecommendationEpic.d.ts +7 -0
- package/lib/view/spendManagement/cashManagement/cashManagementOverview/epics/fetchCashManagementRecommendationEpic.js +31 -0
- package/lib/view/spendManagement/cashManagement/cashManagementOverview/epics/fetchRecentTransferEpic.d.ts +15 -0
- package/lib/view/spendManagement/cashManagement/cashManagementOverview/epics/fetchRecentTransferEpic.js +32 -0
- package/lib/view/spendManagement/chargeCards/cardPolicy/cardPolicyDetail/cardPolicyDetailReducer.d.ts +14 -0
- package/lib/view/spendManagement/chargeCards/cardPolicy/cardPolicyDetail/cardPolicyDetailReducer.js +56 -0
- package/lib/view/spendManagement/chargeCards/cardPolicy/cardPolicyDetail/cardPolicyDetailSelector.d.ts +15 -0
- package/lib/view/spendManagement/chargeCards/cardPolicy/cardPolicyDetail/cardPolicyDetailSelector.js +28 -0
- package/lib/view/spendManagement/chargeCards/cardPolicy/cardPolicyDetail/cardPolicyDetailState.d.ts +8 -0
- package/lib/view/spendManagement/chargeCards/cardPolicy/cardPolicyDetail/cardPolicyDetailState.js +2 -0
- package/lib/view/spendManagement/chargeCards/cardPolicy/cardPolicyDetail/fetchCardPolicyDetailEpic.d.ts +8 -0
- package/lib/view/spendManagement/chargeCards/cardPolicy/cardPolicyDetail/fetchCardPolicyDetailEpic.js +40 -0
- package/lib/view/spendManagement/chargeCards/cardPolicy/cardPolicyDetail/updateCardPolicyEpic.d.ts +8 -0
- package/lib/view/spendManagement/chargeCards/cardPolicy/cardPolicyDetail/updateCardPolicyEpic.js +43 -0
- package/lib/view/spendManagement/chargeCards/cardPolicy/cardPolicyList/archiveCardPolicyEpic.d.ts +8 -0
- package/lib/view/spendManagement/chargeCards/cardPolicy/cardPolicyList/archiveCardPolicyEpic.js +38 -0
- package/lib/view/spendManagement/chargeCards/cardPolicy/cardPolicyList/cardPolicyListReducer.d.ts +15 -0
- package/lib/view/spendManagement/chargeCards/cardPolicy/cardPolicyList/cardPolicyListReducer.js +75 -0
- package/lib/view/spendManagement/chargeCards/cardPolicy/cardPolicyList/cardPolicyListSelector.d.ts +15 -0
- package/lib/view/spendManagement/chargeCards/cardPolicy/cardPolicyList/cardPolicyListSelector.js +27 -0
- package/lib/view/spendManagement/chargeCards/cardPolicy/cardPolicyList/cardPolicyListState.d.ts +7 -0
- package/lib/view/spendManagement/chargeCards/cardPolicy/cardPolicyList/cardPolicyListState.js +2 -0
- package/lib/view/spendManagement/chargeCards/cardPolicy/cardPolicyList/fetchCardPolicyListEpic.d.ts +8 -0
- package/lib/view/spendManagement/chargeCards/cardPolicy/cardPolicyList/fetchCardPolicyListEpic.js +42 -0
- package/lib/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/applyAiCardPolicyFormDraftUpdate.d.ts +8 -0
- package/lib/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/applyAiCardPolicyFormDraftUpdate.js +294 -0
- package/lib/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/applyExtractedPolicyToAiCardPolicyDraft.d.ts +8 -0
- package/lib/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/applyExtractedPolicyToAiCardPolicyDraft.js +113 -0
- package/lib/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/applyExtractedPolicyToDraftEpic.d.ts +9 -0
- package/lib/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/applyExtractedPolicyToDraftEpic.js +48 -0
- package/lib/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/applyExtractedPolicyToManualCardPolicyDraft.d.ts +8 -0
- package/lib/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/applyExtractedPolicyToManualCardPolicyDraft.js +115 -0
- package/lib/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/applyUploadPlanToAiCardPolicyDraft.d.ts +13 -0
- package/lib/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/applyUploadPlanToAiCardPolicyDraft.js +29 -0
- package/lib/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/buildAiCardPolicyFormDraftSeed.d.ts +14 -0
- package/lib/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/buildAiCardPolicyFormDraftSeed.js +369 -0
- package/lib/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/buildManualCardPolicyFormDraftSeed.d.ts +6 -0
- package/lib/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/buildManualCardPolicyFormDraftSeed.js +40 -0
- package/lib/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/cardPolicyChipIds.d.ts +7 -0
- package/lib/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/cardPolicyChipIds.js +26 -0
- package/lib/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/cardPolicyFormDraftTypes.d.ts +116 -0
- package/lib/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/cardPolicyFormDraftTypes.js +10 -0
- package/lib/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/cardPolicyRequestParts.d.ts +33 -0
- package/lib/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/cardPolicyRequestParts.js +126 -0
- package/lib/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/createCardPolicyReducer.d.ts +52 -0
- package/lib/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/createCardPolicyReducer.js +158 -0
- package/lib/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/createCardPolicySelector.d.ts +11 -0
- package/lib/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/createCardPolicySelector.js +31 -0
- package/lib/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/createCardPolicyState.d.ts +12 -0
- package/lib/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/createCardPolicyState.js +2 -0
- package/lib/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/createCardPolicyTemplateEpic.d.ts +9 -0
- package/lib/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/createCardPolicyTemplateEpic.js +53 -0
- package/lib/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/deriveAiPolicyReviewRowsFromInputs.d.ts +10 -0
- package/lib/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/deriveAiPolicyReviewRowsFromInputs.js +144 -0
- package/lib/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/fetchCardPolicyMccCategoriesEpic.d.ts +7 -0
- package/lib/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/fetchCardPolicyMccCategoriesEpic.js +24 -0
- package/lib/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/seedAiCardPolicyFormDraftEpic.d.ts +11 -0
- package/lib/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/seedAiCardPolicyFormDraftEpic.js +104 -0
- package/lib/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/toBulkCardPolicyTemplateRequestsFromDraft.d.ts +22 -0
- package/lib/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/toBulkCardPolicyTemplateRequestsFromDraft.js +100 -0
- package/lib/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/toCardPolicyTemplateRequestFromDraft.d.ts +8 -0
- package/lib/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/toCardPolicyTemplateRequestFromDraft.js +63 -0
- package/lib/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/toManualCardPolicyTemplateRequestFromDraft.d.ts +3 -0
- package/lib/view/spendManagement/chargeCards/cardPolicy/createCardPolicy/toManualCardPolicyTemplateRequestFromDraft.js +28 -0
- package/lib/view/spendManagement/chargeCards/chargeCardList/chargeCardList.d.ts +1 -1
- package/lib/view/spendManagement/chargeCards/chargeCardList/chargeCardListSelector.d.ts +14 -0
- package/lib/view/spendManagement/chargeCards/chargeCardList/chargeCardListSelector.js +27 -1
- package/lib/view/spendManagement/chargeCards/issueChargeCard/aiCardCreationFormDraftTypes.d.ts +34 -0
- package/lib/view/spendManagement/chargeCards/issueChargeCard/aiCardCreationFormDraftTypes.js +2 -0
- package/lib/view/spendManagement/chargeCards/issueChargeCard/applyAiCardCreationFormDraftUpdate.d.ts +7 -0
- package/lib/view/spendManagement/chargeCards/issueChargeCard/applyAiCardCreationFormDraftUpdate.js +38 -0
- package/lib/view/spendManagement/chargeCards/issueChargeCard/buildAiCardCreationFormDraftSeed.d.ts +12 -0
- package/lib/view/spendManagement/chargeCards/issueChargeCard/buildAiCardCreationFormDraftSeed.js +61 -0
- package/lib/view/spendManagement/chargeCards/issueChargeCard/deriveAiCardRowsFromTeams.d.ts +9 -0
- package/lib/view/spendManagement/chargeCards/issueChargeCard/deriveAiCardRowsFromTeams.js +39 -0
- package/lib/view/spendManagement/chargeCards/issueChargeCard/issueChargeCardEpic.d.ts +2 -2
- package/lib/view/spendManagement/chargeCards/issueChargeCard/issueChargeCardEpic.js +1 -1
- package/lib/view/spendManagement/chargeCards/issueChargeCard/issueChargeCardReducer.d.ts +12 -2
- package/lib/view/spendManagement/chargeCards/issueChargeCard/issueChargeCardReducer.js +43 -5
- package/lib/view/spendManagement/chargeCards/issueChargeCard/issueChargeCardSelector.d.ts +7 -0
- package/lib/view/spendManagement/chargeCards/issueChargeCard/issueChargeCardSelector.js +42 -1
- package/lib/view/spendManagement/chargeCards/issueChargeCard/issueChargeCardState.d.ts +5 -0
- package/lib/view/spendManagement/chargeCards/issueChargeCard/seedAiCardCreationFormDraftEpic.d.ts +11 -0
- package/lib/view/spendManagement/chargeCards/issueChargeCard/seedAiCardCreationFormDraftEpic.js +66 -0
- package/lib/view/spendManagement/chargeCards/issueChargeCard/toIssueChargeCardLocalDataFromDraft.d.ts +3 -0
- package/lib/view/spendManagement/chargeCards/issueChargeCard/toIssueChargeCardLocalDataFromDraft.js +48 -0
- package/lib/view/spendManagement/reimbursement/editRemiView/epics/fetchEditRemiDetailPageEpic.js +5 -1
- package/lib/view/spendManagement/reimbursement/remiSetupApproverView/epic/deleteRemiApprovalRuleEpic.js +10 -2
- package/lib/view/spendManagement/reimbursement/remiSetupApproverView/epic/fetchRemiSetupApproverViewEpic.js +8 -2
- package/lib/view/spendManagement/reimbursement/remiSetupApproverView/epic/initializeRemiSetupApproverViewUpdateDataEpic.js +10 -6
- package/lib/view/spendManagement/reimbursement/remiSetupApproverView/epic/reorderRemiApprovalRulesEpic.d.ts +14 -0
- package/lib/view/spendManagement/reimbursement/remiSetupApproverView/epic/reorderRemiApprovalRulesEpic.js +65 -0
- package/lib/view/spendManagement/reimbursement/remiSetupApproverView/epic/saveRemiSetupApproverViewUpdatesEpic.js +12 -3
- package/lib/view/spendManagement/reimbursement/remiSetupApproverView/remiSetupApproverViewReducer.d.ts +14 -3
- package/lib/view/spendManagement/reimbursement/remiSetupApproverView/remiSetupApproverViewReducer.js +81 -12
- package/lib/view/spendManagement/reimbursement/remiSetupApproverView/remiSetupApproverViewState.d.ts +12 -0
- package/lib/view/spendManagement/treasury/treasurySetUp/epic/updateTreasuryPromoIntroClosedByOutsideClickEpic.d.ts +8 -0
- package/lib/view/spendManagement/treasury/treasurySetUp/epic/updateTreasuryPromoIntroClosedByOutsideClickEpic.js +22 -0
- package/lib/view/spendManagement/treasury/treasurySetUp/epic/updateTreasuryPromoRemindMeLaterClickedEpic.d.ts +8 -0
- package/lib/view/spendManagement/treasury/treasurySetUp/epic/updateTreasuryPromoRemindMeLaterClickedEpic.js +22 -0
- package/lib/view/spendManagement/treasury/treasurySetUp/epic/updateTreasuryVideoViewedEpic.js +1 -1
- package/lib/view/spendManagement/treasury/treasurySetUp/treasurySetupViewReducer.d.ts +1 -1
- package/lib/view/spendManagement/treasury/treasurySetUp/treasurySetupViewReducer.js +46 -2
- package/lib/view/spendManagement/treasury/treasurySetUp/treasurySetupViewState.d.ts +2 -0
- package/lib/view/taskManager/taskListView/taskList.d.ts +3 -3
- package/lib/view/taskManager/taskListView/taskListReducer.d.ts +1 -1
- package/lib/view/tasksCard/tasksCardSelector.d.ts +1 -1
- package/lib/view/topEx/topExSelector.d.ts +1 -1
- package/lib/view/transactionDetail/journalEntryLinesViewModel.d.ts +102 -0
- package/lib/view/transactionDetail/journalEntryLinesViewModel.js +160 -0
- package/lib/view/transactionDetail/transactionDetailPayload.d.ts +1 -1
- package/lib/view/transactionDetail/transactionDetailSelector.d.ts +6 -1
- package/lib/view/transactionDetail/transactionDetailSelector.js +6 -1
- package/lib/zeniAPI.d.ts +1 -0
- package/package.json +1 -1
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getCardPolicyMccCategories = getCardPolicyMccCategories;
|
|
4
|
+
exports.getCardPolicyMccCategoriesFetchState = getCardPolicyMccCategoriesFetchState;
|
|
5
|
+
exports.getCardPolicyMccCategoriesError = getCardPolicyMccCategoriesError;
|
|
6
|
+
exports.getCardPolicyTemplateById = getCardPolicyTemplateById;
|
|
7
|
+
exports.getAllCardPolicyTemplates = getAllCardPolicyTemplates;
|
|
8
|
+
exports.getCardPolicyTemplatesByIds = getCardPolicyTemplatesByIds;
|
|
9
|
+
exports.getCardPolicyStats = getCardPolicyStats;
|
|
10
|
+
exports.getPolicyDocumentExtractionFetchState = getPolicyDocumentExtractionFetchState;
|
|
11
|
+
exports.getPolicyDocumentExtractionError = getPolicyDocumentExtractionError;
|
|
12
|
+
exports.getExtractedCardPolicyRules = getExtractedCardPolicyRules;
|
|
13
|
+
exports.getUploadedPolicyDocumentFileName = getUploadedPolicyDocumentFileName;
|
|
14
|
+
exports.getPolicyRecommendationFromUploadFetchState = getPolicyRecommendationFromUploadFetchState;
|
|
15
|
+
exports.getPolicyRecommendationFromUploadError = getPolicyRecommendationFromUploadError;
|
|
16
|
+
exports.getPolicyRecommendationFromUploadAnswerId = getPolicyRecommendationFromUploadAnswerId;
|
|
17
|
+
exports.getPolicyRecommendationFromUploadChatSessionId = getPolicyRecommendationFromUploadChatSessionId;
|
|
18
|
+
exports.getCardPolicySuggestedAllowMerchants = getCardPolicySuggestedAllowMerchants;
|
|
19
|
+
exports.getCardPolicySuggestedBlockMerchants = getCardPolicySuggestedBlockMerchants;
|
|
20
|
+
exports.getCardPolicySuggestedAllowCategories = getCardPolicySuggestedAllowCategories;
|
|
21
|
+
exports.getCardPolicySuggestedBlockCategories = getCardPolicySuggestedBlockCategories;
|
|
22
|
+
exports.getCardPolicyVendorSearchOptions = getCardPolicyVendorSearchOptions;
|
|
23
|
+
exports.getCardPolicyVendorSearchFetchState = getCardPolicyVendorSearchFetchState;
|
|
24
|
+
exports.getCardPolicyVendorSearchString = getCardPolicyVendorSearchString;
|
|
25
|
+
function getCardPolicyMccCategories(state) {
|
|
26
|
+
return state.mccCategories;
|
|
27
|
+
}
|
|
28
|
+
function getCardPolicyMccCategoriesFetchState(state) {
|
|
29
|
+
return state.mccCategoriesFetchState;
|
|
30
|
+
}
|
|
31
|
+
function getCardPolicyMccCategoriesError(state) {
|
|
32
|
+
return state.mccCategoriesError;
|
|
33
|
+
}
|
|
34
|
+
function getCardPolicyTemplateById(state, templateId) {
|
|
35
|
+
return state.cardPolicyTemplateById[templateId];
|
|
36
|
+
}
|
|
37
|
+
function getAllCardPolicyTemplates(state) {
|
|
38
|
+
return Object.values(state.cardPolicyTemplateById);
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* Resolve an ordered list of `templateId`s against the entity store and
|
|
42
|
+
* return the corresponding `CardPolicyTemplate[]` in the same order.
|
|
43
|
+
* Missing IDs (e.g. stale local state during a refetch) are silently
|
|
44
|
+
* dropped. Pair with `getCardPolicyTemplateIds` from the view slice to
|
|
45
|
+
* render the Policy List page in server order.
|
|
46
|
+
*/
|
|
47
|
+
function getCardPolicyTemplatesByIds(state, templateIds) {
|
|
48
|
+
return templateIds
|
|
49
|
+
.map((id) => state.cardPolicyTemplateById[id])
|
|
50
|
+
.filter((template) => template != null);
|
|
51
|
+
}
|
|
52
|
+
function getCardPolicyStats(state) {
|
|
53
|
+
return state.cardPolicyStats;
|
|
54
|
+
}
|
|
55
|
+
function getPolicyDocumentExtractionFetchState(state) {
|
|
56
|
+
return state.policyDocumentExtraction.fetchState;
|
|
57
|
+
}
|
|
58
|
+
function getPolicyDocumentExtractionError(state) {
|
|
59
|
+
return state.policyDocumentExtraction.error;
|
|
60
|
+
}
|
|
61
|
+
function getExtractedCardPolicyRules(state) {
|
|
62
|
+
return state.policyDocumentExtraction.extractedRules;
|
|
63
|
+
}
|
|
64
|
+
function getUploadedPolicyDocumentFileName(state) {
|
|
65
|
+
return state.policyDocumentExtraction.uploadedFileName;
|
|
66
|
+
}
|
|
67
|
+
function getPolicyRecommendationFromUploadFetchState(state) {
|
|
68
|
+
return state.policyRecommendationFromUpload.fetchState;
|
|
69
|
+
}
|
|
70
|
+
function getPolicyRecommendationFromUploadError(state) {
|
|
71
|
+
return state.policyRecommendationFromUpload.error;
|
|
72
|
+
}
|
|
73
|
+
function getPolicyRecommendationFromUploadAnswerId(state) {
|
|
74
|
+
return state.policyRecommendationFromUpload.answerId;
|
|
75
|
+
}
|
|
76
|
+
function getPolicyRecommendationFromUploadChatSessionId(state) {
|
|
77
|
+
return state.policyRecommendationFromUpload.chatSessionId;
|
|
78
|
+
}
|
|
79
|
+
function getCardPolicySuggestedAllowMerchants(state) {
|
|
80
|
+
return state.suggestedAllowMerchants;
|
|
81
|
+
}
|
|
82
|
+
function getCardPolicySuggestedBlockMerchants(state) {
|
|
83
|
+
return state.suggestedBlockMerchants;
|
|
84
|
+
}
|
|
85
|
+
function getCardPolicySuggestedAllowCategories(state) {
|
|
86
|
+
return state.suggestedAllowCategories;
|
|
87
|
+
}
|
|
88
|
+
function getCardPolicySuggestedBlockCategories(state) {
|
|
89
|
+
return state.suggestedBlockCategories;
|
|
90
|
+
}
|
|
91
|
+
function getCardPolicyVendorSearchOptions(state) {
|
|
92
|
+
return state.vendorSearch.vendors;
|
|
93
|
+
}
|
|
94
|
+
function getCardPolicyVendorSearchFetchState(state) {
|
|
95
|
+
return state.vendorSearch.fetchState;
|
|
96
|
+
}
|
|
97
|
+
function getCardPolicyVendorSearchString(state) {
|
|
98
|
+
return state.vendorSearch.searchString;
|
|
99
|
+
}
|
|
@@ -0,0 +1,205 @@
|
|
|
1
|
+
import { FetchState, ID } from '../../commonStateTypes/common';
|
|
2
|
+
import { ZeniAPIStatus } from '../../responsePayload';
|
|
3
|
+
import { ZeniDate } from '../../zeniDayJS';
|
|
4
|
+
/**
|
|
5
|
+
* A category grouping merchant category codes (MCCs) used while configuring
|
|
6
|
+
* card policies (e.g. "Apparel", "AC Refrigeration Repair"). The same data
|
|
7
|
+
* is consumed by both the manual policy-creation flow and the AI-CFO-driven
|
|
8
|
+
* flow.
|
|
9
|
+
*/
|
|
10
|
+
export interface MccCategory {
|
|
11
|
+
count: number;
|
|
12
|
+
mccCodes: string[];
|
|
13
|
+
name: string;
|
|
14
|
+
}
|
|
15
|
+
export declare const ALL_CARD_POLICY_TEMPLATE_MODES: readonly ["strict", "flexible"];
|
|
16
|
+
export declare const toCardPolicyTemplateMode: (v: string) => "strict" | "flexible";
|
|
17
|
+
export type CardPolicyTemplateMode = ReturnType<typeof toCardPolicyTemplateMode>;
|
|
18
|
+
export declare const ALL_CARD_POLICY_TEMPLATE_STATUSES: readonly ["active", "inactive", "archived"];
|
|
19
|
+
export declare const toCardPolicyTemplateStatus: (v: string) => "active" | "inactive" | "archived";
|
|
20
|
+
export type CardPolicyTemplateStatus = ReturnType<typeof toCardPolicyTemplateStatus>;
|
|
21
|
+
/**
|
|
22
|
+
* Allow- / block-list pair scoped to a card-policy template. Empty arrays
|
|
23
|
+
* mean "no restrictions on this dimension".
|
|
24
|
+
*/
|
|
25
|
+
export interface CardPolicyTemplateEntityList {
|
|
26
|
+
categoryCodes: string[];
|
|
27
|
+
merchantNames: string[];
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* Spend-limit caps configured per template. Only `transaction` is modeled
|
|
31
|
+
* today; additional cadences (e.g. daily, monthly) will be added if/when
|
|
32
|
+
* the backend exposes them.
|
|
33
|
+
*
|
|
34
|
+
* `transaction` is `number | null`: `null` means the row's toggle is off
|
|
35
|
+
* (no limit configured), `0` means the user explicitly entered zero with
|
|
36
|
+
* the toggle on, and any positive value is the configured per-transaction
|
|
37
|
+
* cap.
|
|
38
|
+
*/
|
|
39
|
+
export interface CardPolicyTemplateSpendLimits {
|
|
40
|
+
transaction: number | null;
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* Mapped (camelCase) representation of a card-policy template returned by
|
|
44
|
+
* the cards micro-service. Stored on the entity slice keyed by
|
|
45
|
+
* `templateId` so both the manual policy-creation UI and the AI-CFO flow
|
|
46
|
+
* can read it.
|
|
47
|
+
*/
|
|
48
|
+
export interface CardPolicyTemplate {
|
|
49
|
+
allowedEntity: CardPolicyTemplateEntityList;
|
|
50
|
+
appliedCards: ID[];
|
|
51
|
+
blockedEntity: CardPolicyTemplateEntityList;
|
|
52
|
+
cardsCount: number;
|
|
53
|
+
categoryRestrictions: unknown[];
|
|
54
|
+
createdAt: ZeniDate;
|
|
55
|
+
createdBy: ID;
|
|
56
|
+
description: string;
|
|
57
|
+
mode: CardPolicyTemplateMode;
|
|
58
|
+
name: string;
|
|
59
|
+
/**
|
|
60
|
+
* Receipt-required threshold in dollars. `null` means the toggle is off
|
|
61
|
+
* (no receipt requirement); `0` means the user explicitly entered zero
|
|
62
|
+
* with the toggle on; any positive value is the configured threshold.
|
|
63
|
+
*/
|
|
64
|
+
requiredReceiptThreshold: number | null;
|
|
65
|
+
spendLimits: CardPolicyTemplateSpendLimits;
|
|
66
|
+
status: CardPolicyTemplateStatus;
|
|
67
|
+
templateId: ID;
|
|
68
|
+
tenantId: ID;
|
|
69
|
+
updatedAt: ZeniDate;
|
|
70
|
+
}
|
|
71
|
+
/**
|
|
72
|
+
* Aggregate counters returned by the list endpoint and reused across
|
|
73
|
+
* any surface that wants to display tenant-wide policy stats without
|
|
74
|
+
* triggering an extra fetch.
|
|
75
|
+
*/
|
|
76
|
+
export interface CardPolicyStats {
|
|
77
|
+
activePolicies: number;
|
|
78
|
+
totalCards: number;
|
|
79
|
+
totalTemplates: number;
|
|
80
|
+
}
|
|
81
|
+
/**
|
|
82
|
+
* FE-side (camelCase) mirror of the wire payload
|
|
83
|
+
* `ExtractedCardPolicyRulesPayload`. Field names align slice-wise with
|
|
84
|
+
* `CardPolicyTemplate` (`allowedEntity`, `blockedEntity`,
|
|
85
|
+
* `requiredReceiptThreshold`) so the pre-fill mapper consumed by both
|
|
86
|
+
* `CardPolicyCreatePage` (manual) and `CardPolicyInteractiveForm`
|
|
87
|
+
* (AI CFO) can read either shape uniformly.
|
|
88
|
+
*/
|
|
89
|
+
export interface ExtractedCardPolicyRules {
|
|
90
|
+
allowedEntity: CardPolicyTemplateEntityList;
|
|
91
|
+
blockedEntity: CardPolicyTemplateEntityList;
|
|
92
|
+
confidenceScore: number;
|
|
93
|
+
policyName: string;
|
|
94
|
+
requiredReceiptThreshold: number;
|
|
95
|
+
transactionLimit: number;
|
|
96
|
+
}
|
|
97
|
+
/**
|
|
98
|
+
* Lifecycle for the `POST /cards/1.0/policy-documents/extract` request.
|
|
99
|
+
* Lives on the entity slice (rather than a view slice) so both the manual
|
|
100
|
+
* `CardPolicyCreatePage` and the AI CFO `CardPolicyInteractiveForm` can
|
|
101
|
+
* read the extracted rules from a single source of truth.
|
|
102
|
+
*
|
|
103
|
+
* `uploadedFileName` is captured at request-kickoff time so the UI can
|
|
104
|
+
* render the "Policy.pdf ×" pill once the request completes without
|
|
105
|
+
* having to keep a separate local copy of the file.
|
|
106
|
+
*/
|
|
107
|
+
export interface PolicyDocumentExtractionState {
|
|
108
|
+
fetchState: FetchState;
|
|
109
|
+
/**
|
|
110
|
+
* AI CFO answer that owns the in-flight upload, when the extraction
|
|
111
|
+
* was kicked off from inside an `upload`-mode `CardPolicyInteractiveForm`.
|
|
112
|
+
* Captured at request-kickoff and read by the bridge epic to chain
|
|
113
|
+
* `fetchCardPolicyRecommendationFromUpload` against the right answer.
|
|
114
|
+
* `undefined` for manual `CardPolicyCreatePage` callers.
|
|
115
|
+
*/
|
|
116
|
+
aiCfoAnswerId?: ID;
|
|
117
|
+
aiCfoChatSessionId?: ID;
|
|
118
|
+
error?: ZeniAPIStatus;
|
|
119
|
+
extractedRules?: ExtractedCardPolicyRules;
|
|
120
|
+
uploadedFileName?: string;
|
|
121
|
+
}
|
|
122
|
+
/**
|
|
123
|
+
* Lifecycle for `POST /cards/1.0/ai-cfo/policy-recommendation-from-upload`.
|
|
124
|
+
* Chained after `extractPolicyDocument` succeeds in the AI CFO `upload`
|
|
125
|
+
* mode — the FE forwards the just-returned `extracted_rules` and the BE
|
|
126
|
+
* synthesizes a wizard plan + upload source metadata.
|
|
127
|
+
*
|
|
128
|
+
* `answerId` captures which AI CFO answer's `card_policy` payload should
|
|
129
|
+
* receive the resulting `wizard_plan` patch (via
|
|
130
|
+
* `updateAiCfoAnswerCardPolicyWizardPlan`). Stored here rather than on
|
|
131
|
+
* the answer slice so the bridge epic can correlate the extract success
|
|
132
|
+
* → recommendation kickoff without re-deriving it from the visualization.
|
|
133
|
+
*/
|
|
134
|
+
export interface PolicyRecommendationFromUploadState {
|
|
135
|
+
fetchState: FetchState;
|
|
136
|
+
answerId?: ID;
|
|
137
|
+
chatSessionId?: ID;
|
|
138
|
+
error?: ZeniAPIStatus;
|
|
139
|
+
}
|
|
140
|
+
/**
|
|
141
|
+
* Lightweight `{vendorId, name}` row stored on the card-policy slice for
|
|
142
|
+
* the chip-picker's vendor search dropdown. Sourced from
|
|
143
|
+
* `/accounting/1.0/vendors` via `fetchCardPolicyVendorOptionsEpic`.
|
|
144
|
+
*
|
|
145
|
+
* Intentionally a subset of the full `Vendor` entity — populating this
|
|
146
|
+
* slice does NOT touch the global `vendor`/`account`/`vendorList`
|
|
147
|
+
* entities, so a card-policy search session never disturbs the user's
|
|
148
|
+
* Vendors-tab list state.
|
|
149
|
+
*/
|
|
150
|
+
export interface CardPolicyVendorSearchEntry {
|
|
151
|
+
name: string;
|
|
152
|
+
vendorId: ID;
|
|
153
|
+
}
|
|
154
|
+
/**
|
|
155
|
+
* Lifecycle for the `GET /accounting/1.0/vendors` (card-policy mode)
|
|
156
|
+
* request. Only one in-flight search at a time; the latest typed search
|
|
157
|
+
* wins (via `switchMap` in the epic). `searchString` is the text that
|
|
158
|
+
* produced `vendors`, useful for stale-result guards in the UI.
|
|
159
|
+
*/
|
|
160
|
+
export interface CardPolicyVendorSearchState {
|
|
161
|
+
fetchState: FetchState;
|
|
162
|
+
searchString: string;
|
|
163
|
+
vendors: CardPolicyVendorSearchEntry[];
|
|
164
|
+
error?: ZeniAPIStatus;
|
|
165
|
+
}
|
|
166
|
+
/**
|
|
167
|
+
* Slice state for card-policy reference data shared across the manual and
|
|
168
|
+
* AI-driven policy-creation flows. Each sub-resource tracks its own
|
|
169
|
+
* `fetchState`/`error` so additional card-policy APIs can be added
|
|
170
|
+
* alongside without coupling.
|
|
171
|
+
*/
|
|
172
|
+
export interface CardPolicyState {
|
|
173
|
+
cardPolicyTemplateById: Record<ID, CardPolicyTemplate>;
|
|
174
|
+
mccCategories: MccCategory[];
|
|
175
|
+
mccCategoriesFetchState: FetchState;
|
|
176
|
+
policyDocumentExtraction: PolicyDocumentExtractionState;
|
|
177
|
+
/**
|
|
178
|
+
* Lifecycle for the AI CFO `upload`-mode follow-up call. Sibling of
|
|
179
|
+
* `policyDocumentExtraction`; the two together describe the full
|
|
180
|
+
* upload chain: drop file → extract → recommend → wizard plan ready.
|
|
181
|
+
*/
|
|
182
|
+
policyRecommendationFromUpload: PolicyRecommendationFromUploadState;
|
|
183
|
+
/**
|
|
184
|
+
* MCC categories suggested by the BE as a default "Allow" seed for the
|
|
185
|
+
* category chip cloud. Empty when the user lands without prior spend
|
|
186
|
+
* history. See `suggested_allow_catagories` on the wire payload.
|
|
187
|
+
*/
|
|
188
|
+
suggestedAllowCategories: MccCategory[];
|
|
189
|
+
/**
|
|
190
|
+
* Merchant names suggested by the BE as a default "Allow" seed for the
|
|
191
|
+
* vendor chip cloud. Empty when the BE has no recommendation. See
|
|
192
|
+
* `suggested_allow_merchants` on the wire payload.
|
|
193
|
+
*/
|
|
194
|
+
suggestedAllowMerchants: string[];
|
|
195
|
+
suggestedBlockCategories: MccCategory[];
|
|
196
|
+
suggestedBlockMerchants: string[];
|
|
197
|
+
/**
|
|
198
|
+
* Server-driven vendor search results powering the chip picker's
|
|
199
|
+
* search dropdown. Distinct from the global vendor entity store so
|
|
200
|
+
* the card-policy flow never disturbs the user's Vendors-tab list.
|
|
201
|
+
*/
|
|
202
|
+
vendorSearch: CardPolicyVendorSearchState;
|
|
203
|
+
cardPolicyStats?: CardPolicyStats;
|
|
204
|
+
mccCategoriesError?: ZeniAPIStatus;
|
|
205
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.toCardPolicyTemplateStatus = exports.ALL_CARD_POLICY_TEMPLATE_STATUSES = exports.toCardPolicyTemplateMode = exports.ALL_CARD_POLICY_TEMPLATE_MODES = void 0;
|
|
4
|
+
const stringToUnion_1 = require("../../commonStateTypes/stringToUnion");
|
|
5
|
+
exports.ALL_CARD_POLICY_TEMPLATE_MODES = ['strict', 'flexible'];
|
|
6
|
+
const toCardPolicyTemplateMode = (v) => (0, stringToUnion_1.stringToUnion)(v, exports.ALL_CARD_POLICY_TEMPLATE_MODES);
|
|
7
|
+
exports.toCardPolicyTemplateMode = toCardPolicyTemplateMode;
|
|
8
|
+
exports.ALL_CARD_POLICY_TEMPLATE_STATUSES = [
|
|
9
|
+
'active',
|
|
10
|
+
'inactive',
|
|
11
|
+
'archived',
|
|
12
|
+
];
|
|
13
|
+
const toCardPolicyTemplateStatus = (v) => (0, stringToUnion_1.stringToUnion)(v, exports.ALL_CARD_POLICY_TEMPLATE_STATUSES);
|
|
14
|
+
exports.toCardPolicyTemplateStatus = toCardPolicyTemplateStatus;
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { ActionsObservable, StateObservable } from 'redux-observable';
|
|
2
|
+
import { Observable } from 'rxjs';
|
|
3
|
+
import { RootState } from '../../reducer';
|
|
4
|
+
import { ZeniAPI } from '../../zeniAPI';
|
|
5
|
+
import { clearPolicyDocumentExtraction, extractPolicyDocument, updatePolicyDocumentExtractionFailure, updatePolicyDocumentExtractionSuccess } from './cardPolicyReducer';
|
|
6
|
+
export type ActionType = ReturnType<typeof extractPolicyDocument> | ReturnType<typeof updatePolicyDocumentExtractionSuccess> | ReturnType<typeof updatePolicyDocumentExtractionFailure> | ReturnType<typeof clearPolicyDocumentExtraction>;
|
|
7
|
+
/**
|
|
8
|
+
* Listens for `extractPolicyDocument`, POSTs the file(s) as multipart
|
|
9
|
+
* form-data to the cards micro-service's policy-document extract endpoint,
|
|
10
|
+
* and dispatches success / failure into the entity slice.
|
|
11
|
+
*
|
|
12
|
+
* Consumed by:
|
|
13
|
+
* - Manual `CardPolicyCreatePage` (read result via
|
|
14
|
+
* `getExtractedCardPolicyRules` then pre-fill the RHF form via
|
|
15
|
+
* `applyExtractedPolicyRulesToFormValues` from `@zeniai/web-components`).
|
|
16
|
+
* - (Future) AI CFO upload surface — same action + selector contract.
|
|
17
|
+
*/
|
|
18
|
+
export declare const extractPolicyDocumentEpic: (actions$: ActionsObservable<ActionType>, _state$: StateObservable<RootState>, zeniAPI: ZeniAPI) => Observable<ActionType>;
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.extractPolicyDocumentEpic = void 0;
|
|
4
|
+
const rxjs_1 = require("rxjs");
|
|
5
|
+
const operators_1 = require("rxjs/operators");
|
|
6
|
+
const responsePayload_1 = require("../../responsePayload");
|
|
7
|
+
const cardPolicyReducer_1 = require("./cardPolicyReducer");
|
|
8
|
+
/**
|
|
9
|
+
* Build a multipart `FormData` body for `POST /cards/1.0/policy-documents/extract`.
|
|
10
|
+
*
|
|
11
|
+
* Uses the same `attachment_file_<i>` / `attachment_json_<i>` field-naming
|
|
12
|
+
* convention as the charge-card receipt upload (`uploadReceipts.ts` in
|
|
13
|
+
* `web-components`) so backends that already support that wire shape
|
|
14
|
+
* accept this endpoint without bespoke parsing.
|
|
15
|
+
*/
|
|
16
|
+
const buildPolicyDocumentFormData = (files) => {
|
|
17
|
+
const data = new FormData();
|
|
18
|
+
files.forEach((file, index) => {
|
|
19
|
+
data.append(`attachment_file_${index}`, file);
|
|
20
|
+
const attachmentJson = JSON.stringify({
|
|
21
|
+
file_name: file.name,
|
|
22
|
+
content_type: file.type,
|
|
23
|
+
size: file.size,
|
|
24
|
+
});
|
|
25
|
+
data.append(`attachment_json_${index}`, attachmentJson);
|
|
26
|
+
});
|
|
27
|
+
return data;
|
|
28
|
+
};
|
|
29
|
+
/**
|
|
30
|
+
* Listens for `extractPolicyDocument`, POSTs the file(s) as multipart
|
|
31
|
+
* form-data to the cards micro-service's policy-document extract endpoint,
|
|
32
|
+
* and dispatches success / failure into the entity slice.
|
|
33
|
+
*
|
|
34
|
+
* Consumed by:
|
|
35
|
+
* - Manual `CardPolicyCreatePage` (read result via
|
|
36
|
+
* `getExtractedCardPolicyRules` then pre-fill the RHF form via
|
|
37
|
+
* `applyExtractedPolicyRulesToFormValues` from `@zeniai/web-components`).
|
|
38
|
+
* - (Future) AI CFO upload surface — same action + selector contract.
|
|
39
|
+
*/
|
|
40
|
+
const extractPolicyDocumentEpic = (actions$, _state$, zeniAPI) => actions$.pipe((0, operators_1.filter)(cardPolicyReducer_1.extractPolicyDocument.match),
|
|
41
|
+
// `switchMap` (vs `mergeMap`) cancels any in-flight extract whenever a
|
|
42
|
+
// new upload is dispatched. With `mergeMap` an older, slower response
|
|
43
|
+
// could win the race: `updatePolicyDocumentExtractionSuccess` would
|
|
44
|
+
// fire with stale `extractedRules` and the chained bridge epic would
|
|
45
|
+
// pair them with whatever `aiCfoAnswerId` / `aiCfoChatSessionId` are
|
|
46
|
+
// currently in state — recommending the old file's rules against the
|
|
47
|
+
// wrong AI CFO answer.
|
|
48
|
+
(0, operators_1.switchMap)((action) => {
|
|
49
|
+
const formData = buildPolicyDocumentFormData(action.payload.files);
|
|
50
|
+
return zeniAPI
|
|
51
|
+
.postFormData(`${zeniAPI.apiEndPoints.cardMicroServiceBaseUrl}/1.0/policy-documents/extract`, formData)
|
|
52
|
+
.pipe((0, operators_1.mergeMap)((response) => {
|
|
53
|
+
if ((0, responsePayload_1.isSuccessStatus)(response) &&
|
|
54
|
+
response.data != null &&
|
|
55
|
+
response.data.extracted_rules != null) {
|
|
56
|
+
return (0, rxjs_1.of)((0, cardPolicyReducer_1.updatePolicyDocumentExtractionSuccess)(response.data.extracted_rules));
|
|
57
|
+
}
|
|
58
|
+
return (0, rxjs_1.of)((0, cardPolicyReducer_1.updatePolicyDocumentExtractionFailure)(response.status));
|
|
59
|
+
}), (0, operators_1.catchError)((error) => (0, rxjs_1.of)((0, cardPolicyReducer_1.updatePolicyDocumentExtractionFailure)((0, responsePayload_1.createZeniAPIStatus)('Unexpected Error', 'Extract card-policy document REST API call errored out' +
|
|
60
|
+
JSON.stringify(error))))),
|
|
61
|
+
// `clearPolicyDocumentExtraction` (e.g. user clicks the "× Policy.pdf"
|
|
62
|
+
// pill) tears down the in-flight extract subscription, so a late
|
|
63
|
+
// response can't re-flip `policyDocumentExtraction.fetchState` back
|
|
64
|
+
// to `Completed` or repopulate `extractedRules` after the user
|
|
65
|
+
// already dismissed the upload.
|
|
66
|
+
(0, operators_1.takeUntil)(actions$.pipe((0, operators_1.filter)(cardPolicyReducer_1.clearPolicyDocumentExtraction.match))));
|
|
67
|
+
}));
|
|
68
|
+
exports.extractPolicyDocumentEpic = extractPolicyDocumentEpic;
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { ActionsObservable, StateObservable } from 'redux-observable';
|
|
2
|
+
import { Observable } from 'rxjs';
|
|
3
|
+
import { RootState } from '../../reducer';
|
|
4
|
+
import { ZeniAPI } from '../../zeniAPI';
|
|
5
|
+
import { fetchCardPolicyVendorOptions, updateCardPolicyVendorOptions, updateCardPolicyVendorOptionsFailure } from './cardPolicyReducer';
|
|
6
|
+
export type ActionType = ReturnType<typeof fetchCardPolicyVendorOptions> | ReturnType<typeof updateCardPolicyVendorOptions> | ReturnType<typeof updateCardPolicyVendorOptionsFailure>;
|
|
7
|
+
/**
|
|
8
|
+
* Card-policy vendor search.
|
|
9
|
+
*
|
|
10
|
+
* Listens for `fetchCardPolicyVendorOptions` and hits the same
|
|
11
|
+
* `/accounting/1.0/vendors` endpoint the Vendors-tab uses, but writes
|
|
12
|
+
* results onto the dedicated `cardPolicyState.vendorSearch` slice — no
|
|
13
|
+
* fan-out to the global `vendor` / `account` / `class` / `vendorList`
|
|
14
|
+
* entities. That isolation is important: the user may be configuring a
|
|
15
|
+
* card policy in parallel with browsing the Vendors tab, and we don't
|
|
16
|
+
* want either flow to clobber the other's list state.
|
|
17
|
+
*
|
|
18
|
+
* Uses `switchMap` so the latest typed search wins — earlier in-flight
|
|
19
|
+
* requests are abandoned, which is the right semantics for a
|
|
20
|
+
* search-as-you-type UX.
|
|
21
|
+
*
|
|
22
|
+
* Consumers:
|
|
23
|
+
* - Manual `CardPolicyCreate / EditScreen`
|
|
24
|
+
* - AI CFO `CardPolicyInteractiveForm` (vendor step)
|
|
25
|
+
*/
|
|
26
|
+
export declare const fetchCardPolicyVendorOptionsEpic: (actions$: ActionsObservable<ActionType>, _state$: StateObservable<RootState>, zeniAPI: ZeniAPI) => Observable<ActionType>;
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.fetchCardPolicyVendorOptionsEpic = void 0;
|
|
4
|
+
const rxjs_1 = require("rxjs");
|
|
5
|
+
const operators_1 = require("rxjs/operators");
|
|
6
|
+
const responsePayload_1 = require("../../responsePayload");
|
|
7
|
+
const cardPolicyReducer_1 = require("./cardPolicyReducer");
|
|
8
|
+
const buildQuery = (searchString) => ({
|
|
9
|
+
view: 'vendor_list',
|
|
10
|
+
page_token: null,
|
|
11
|
+
sort_by: 'year_to_date_spend',
|
|
12
|
+
sort_order: 'desc',
|
|
13
|
+
search_text: searchString,
|
|
14
|
+
vendor_name: searchString,
|
|
15
|
+
});
|
|
16
|
+
/**
|
|
17
|
+
* Card-policy vendor search.
|
|
18
|
+
*
|
|
19
|
+
* Listens for `fetchCardPolicyVendorOptions` and hits the same
|
|
20
|
+
* `/accounting/1.0/vendors` endpoint the Vendors-tab uses, but writes
|
|
21
|
+
* results onto the dedicated `cardPolicyState.vendorSearch` slice — no
|
|
22
|
+
* fan-out to the global `vendor` / `account` / `class` / `vendorList`
|
|
23
|
+
* entities. That isolation is important: the user may be configuring a
|
|
24
|
+
* card policy in parallel with browsing the Vendors tab, and we don't
|
|
25
|
+
* want either flow to clobber the other's list state.
|
|
26
|
+
*
|
|
27
|
+
* Uses `switchMap` so the latest typed search wins — earlier in-flight
|
|
28
|
+
* requests are abandoned, which is the right semantics for a
|
|
29
|
+
* search-as-you-type UX.
|
|
30
|
+
*
|
|
31
|
+
* Consumers:
|
|
32
|
+
* - Manual `CardPolicyCreate / EditScreen`
|
|
33
|
+
* - AI CFO `CardPolicyInteractiveForm` (vendor step)
|
|
34
|
+
*/
|
|
35
|
+
const fetchCardPolicyVendorOptionsEpic = (actions$, _state$, zeniAPI) => actions$.pipe((0, operators_1.filter)(cardPolicyReducer_1.fetchCardPolicyVendorOptions.match), (0, operators_1.switchMap)((action) => {
|
|
36
|
+
const query = buildQuery(action.payload.searchString);
|
|
37
|
+
const apiUrl = `${zeniAPI.apiEndPoints.accountMicroServiceBaseUrl}/1.0/vendors` +
|
|
38
|
+
`?query=${encodeURIComponent(JSON.stringify(query))}`;
|
|
39
|
+
return zeniAPI.getJSON(apiUrl).pipe((0, operators_1.switchMap)((response) => {
|
|
40
|
+
if ((0, responsePayload_1.isSuccessStatus)(response) && response.data != null) {
|
|
41
|
+
return (0, rxjs_1.of)((0, cardPolicyReducer_1.updateCardPolicyVendorOptions)(response.data));
|
|
42
|
+
}
|
|
43
|
+
return (0, rxjs_1.of)((0, cardPolicyReducer_1.updateCardPolicyVendorOptionsFailure)(response.status));
|
|
44
|
+
}), (0, operators_1.catchError)((error) => (0, rxjs_1.of)((0, cardPolicyReducer_1.updateCardPolicyVendorOptionsFailure)((0, responsePayload_1.createZeniAPIStatus)('Unexpected Error', 'Fetch card policy vendor options REST API call errored out' +
|
|
45
|
+
JSON.stringify(error))))));
|
|
46
|
+
}));
|
|
47
|
+
exports.fetchCardPolicyVendorOptionsEpic = fetchCardPolicyVendorOptionsEpic;
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { ActionsObservable, StateObservable } from 'redux-observable';
|
|
2
|
+
import { Observable } from 'rxjs';
|
|
3
|
+
import { RootState } from '../../reducer';
|
|
4
|
+
import { fetchCardPolicyRecommendationFromUpload, updatePolicyDocumentExtractionSuccess } from './cardPolicyReducer';
|
|
5
|
+
export type ActionType = ReturnType<typeof updatePolicyDocumentExtractionSuccess> | ReturnType<typeof fetchCardPolicyRecommendationFromUpload>;
|
|
6
|
+
/**
|
|
7
|
+
* Bridge epic — chains the AI CFO `upload`-mode flow's two API hops.
|
|
8
|
+
*
|
|
9
|
+
* The first hop (`extractPolicyDocument` → multipart POST to
|
|
10
|
+
* `policy-documents/extract`) lives on the cardPolicy slice and is
|
|
11
|
+
* shared with the manual `CardPolicyCreatePage`. The second hop
|
|
12
|
+
* (`fetchCardPolicyRecommendationFromUpload` → JSON POST to
|
|
13
|
+
* `ai-cfo/policy-recommendation-from-upload`) is AI-CFO only.
|
|
14
|
+
*
|
|
15
|
+
* The chain is gated on `policyDocumentExtraction.aiCfoAnswerId` being
|
|
16
|
+
* populated — manual callers leave it undefined, so the bridge is a
|
|
17
|
+
* silent no-op there.
|
|
18
|
+
*
|
|
19
|
+
* Splitting this off from `policyRecommendationFromUploadEpic` keeps
|
|
20
|
+
* the wizard component a pure renderer: it dispatches
|
|
21
|
+
* `extractPolicyDocument(files, answerId, chatSessionId)` once, then
|
|
22
|
+
* subscribes to `cardPolicyState` lifecycle flags to drive its
|
|
23
|
+
* "Extracting…" / "Recommending…" pill.
|
|
24
|
+
*/
|
|
25
|
+
export declare const policyDocumentExtractionToRecommendationBridgeEpic: (actions$: ActionsObservable<ActionType>, state$: StateObservable<RootState>) => Observable<ActionType>;
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.policyDocumentExtractionToRecommendationBridgeEpic = void 0;
|
|
4
|
+
const rxjs_1 = require("rxjs");
|
|
5
|
+
const operators_1 = require("rxjs/operators");
|
|
6
|
+
const cardPolicyReducer_1 = require("./cardPolicyReducer");
|
|
7
|
+
/**
|
|
8
|
+
* Bridge epic — chains the AI CFO `upload`-mode flow's two API hops.
|
|
9
|
+
*
|
|
10
|
+
* The first hop (`extractPolicyDocument` → multipart POST to
|
|
11
|
+
* `policy-documents/extract`) lives on the cardPolicy slice and is
|
|
12
|
+
* shared with the manual `CardPolicyCreatePage`. The second hop
|
|
13
|
+
* (`fetchCardPolicyRecommendationFromUpload` → JSON POST to
|
|
14
|
+
* `ai-cfo/policy-recommendation-from-upload`) is AI-CFO only.
|
|
15
|
+
*
|
|
16
|
+
* The chain is gated on `policyDocumentExtraction.aiCfoAnswerId` being
|
|
17
|
+
* populated — manual callers leave it undefined, so the bridge is a
|
|
18
|
+
* silent no-op there.
|
|
19
|
+
*
|
|
20
|
+
* Splitting this off from `policyRecommendationFromUploadEpic` keeps
|
|
21
|
+
* the wizard component a pure renderer: it dispatches
|
|
22
|
+
* `extractPolicyDocument(files, answerId, chatSessionId)` once, then
|
|
23
|
+
* subscribes to `cardPolicyState` lifecycle flags to drive its
|
|
24
|
+
* "Extracting…" / "Recommending…" pill.
|
|
25
|
+
*/
|
|
26
|
+
const policyDocumentExtractionToRecommendationBridgeEpic = (actions$, state$) => actions$.pipe((0, operators_1.filter)(cardPolicyReducer_1.updatePolicyDocumentExtractionSuccess.match), (0, operators_1.mergeMap)((action) => {
|
|
27
|
+
const extraction = state$.value.cardPolicyState.policyDocumentExtraction;
|
|
28
|
+
const aiCfoAnswerId = extraction.aiCfoAnswerId;
|
|
29
|
+
const aiCfoChatSessionId = extraction.aiCfoChatSessionId;
|
|
30
|
+
const extractedRules = extraction.extractedRules;
|
|
31
|
+
if (aiCfoAnswerId == null ||
|
|
32
|
+
aiCfoChatSessionId == null ||
|
|
33
|
+
extractedRules == null) {
|
|
34
|
+
return rxjs_1.EMPTY;
|
|
35
|
+
}
|
|
36
|
+
void action;
|
|
37
|
+
return (0, rxjs_1.of)((0, cardPolicyReducer_1.fetchCardPolicyRecommendationFromUpload)(aiCfoAnswerId, aiCfoChatSessionId, extractedRules));
|
|
38
|
+
}));
|
|
39
|
+
exports.policyDocumentExtractionToRecommendationBridgeEpic = policyDocumentExtractionToRecommendationBridgeEpic;
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { ActionsObservable, StateObservable } from 'redux-observable';
|
|
2
|
+
import { Observable } from 'rxjs';
|
|
3
|
+
import { RootState } from '../../reducer';
|
|
4
|
+
import { updateAiCardPolicyFormDraftFromUploadPlan } from '../../view/spendManagement/chargeCards/cardPolicy/createCardPolicy/createCardPolicyReducer';
|
|
5
|
+
import { ZeniAPI } from '../../zeniAPI';
|
|
6
|
+
import { updateAiCfoAnswerCardPolicyWizardPlan } from '../aiCfo/aiCfoReducer';
|
|
7
|
+
import { clearPolicyDocumentExtraction, fetchCardPolicyRecommendationFromUpload, updatePolicyRecommendationFromUploadFailure, updatePolicyRecommendationFromUploadSuccess } from './cardPolicyReducer';
|
|
8
|
+
export type ActionType = ReturnType<typeof fetchCardPolicyRecommendationFromUpload> | ReturnType<typeof updatePolicyRecommendationFromUploadSuccess> | ReturnType<typeof updatePolicyRecommendationFromUploadFailure> | ReturnType<typeof updateAiCfoAnswerCardPolicyWizardPlan> | ReturnType<typeof updateAiCardPolicyFormDraftFromUploadPlan> | ReturnType<typeof clearPolicyDocumentExtraction>;
|
|
9
|
+
/**
|
|
10
|
+
* Listens for `fetchCardPolicyRecommendationFromUpload` and POSTs the
|
|
11
|
+
* just-extracted policy rules to the AI-CFO recommendation endpoint.
|
|
12
|
+
*
|
|
13
|
+
* On success — dispatches BOTH:
|
|
14
|
+
* - `updatePolicyRecommendationFromUploadSuccess` (flips the
|
|
15
|
+
* cardPolicy slice's recommendation lifecycle to `Completed`), and
|
|
16
|
+
* - `updateAiCfoAnswerCardPolicyWizardPlan` (patches the in-flight AI
|
|
17
|
+
* CFO answer's `CardPolicyInitialData` so the wizard can advance from
|
|
18
|
+
* Step 1 → Step 2 in the upload variant).
|
|
19
|
+
*
|
|
20
|
+
* The reducer payload originally captured at kickoff (`answerId` +
|
|
21
|
+
* `chatSessionId`) re-enters via the action so the patch can find the
|
|
22
|
+
* right answer to merge into.
|
|
23
|
+
*/
|
|
24
|
+
export declare const policyRecommendationFromUploadEpic: (actions$: ActionsObservable<ActionType>, _state$: StateObservable<RootState>, zeniAPI: ZeniAPI) => Observable<ActionType>;
|