@zeniai/client-epic-state 4.14.13 → 4.14.14
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/entity/billPay/billTransaction/billTransactionPayload.d.ts +0 -1
- package/lib/entity/billPay/billTransaction/billTransactionPayload.js +0 -3
- package/lib/entity/billPay/billTransaction/billTransactionState.d.ts +3 -6
- package/lib/entity/billPay/billTransaction/billTransactionState.js +1 -18
- package/lib/entity/snackbar/snackbarTypes.d.ts +1 -1
- package/lib/entity/snackbar/snackbarTypes.js +0 -4
- package/lib/entity/tenant/epic/signInUserEpic.js +7 -13
- package/lib/entity/tenant/tenantReducer.d.ts +0 -1
- package/lib/entity/toastNotification/epic/pushToastNotificationEpic.d.ts +1 -1
- package/lib/index.d.ts +13 -14
- package/lib/index.js +15 -26
- package/lib/view/auditReportView/auditReportViewState.d.ts +1 -1
- package/lib/view/bankAccountView/bankAccountViewReducer.d.ts +2 -2
- package/lib/view/billPayCard/fetchBillPayCardEpic.js +0 -1
- package/lib/view/cardPayment/epic/addCardPaymentSourceEpic.d.ts +1 -1
- package/lib/view/cardPayment/epic/confirmCardSetupIntentEpic.d.ts +1 -1
- package/lib/view/cardPayment/epic/createCardSetupIntentEpic.d.ts +1 -1
- package/lib/view/cardPayment/epic/fetchPaymentSourcesEpic.d.ts +1 -1
- package/lib/view/companyView/types/cockpitTypes.d.ts +1 -1
- package/lib/view/dashboard/dashboardEpic.js +8 -7
- package/lib/view/expenseAutomationView/epics/common/fetchAllExpenseAutomationTabsEpic.js +4 -7
- package/lib/view/expenseAutomationView/epics/common/refreshExpenseAutomationCurrentTabEpic.js +1 -2
- package/lib/view/expenseAutomationView/epics/jeSchedule/retryJeSchedulesEpic.d.ts +2 -2
- package/lib/view/expenseAutomationView/epics/jeSchedule/retryJeSchedulesEpic.js +1 -2
- package/lib/view/expenseAutomationView/epics/transactionCategorization/fetchTransactionCategorizationEpic.js +1 -1
- package/lib/view/expenseAutomationView/epics/transactionCategorization/fetchTransactionCategorizationViewEpic.js +1 -1
- package/lib/view/expenseAutomationView/epics/transactionCategorization/initializeTransactionCategorizationLocalDataEpic.js +3 -3
- package/lib/view/expenseAutomationView/epics/transactionCategorization/markTransactionAsNotMiscatgorizedEpic.js +27 -76
- package/lib/view/expenseAutomationView/epics/transactionCategorization/saveTransactionCategorizationEpic.js +2 -1
- package/lib/view/expenseAutomationView/epics/transactionCategorization/updateTransactionCategorizationEpic.js +2 -3
- package/lib/view/expenseAutomationView/expenseAutomationViewReducer.d.ts +3 -1
- package/lib/view/expenseAutomationView/expenseAutomationViewReducer.js +12 -2
- package/lib/view/expenseAutomationView/expenseAutomationViewSelector.js +12 -13
- package/lib/view/expenseAutomationView/expenseAutomationViewState.d.ts +2 -0
- package/lib/view/expenseAutomationView/helpers/helpers.d.ts +0 -3
- package/lib/view/expenseAutomationView/helpers/helpers.js +1 -4
- package/lib/view/expenseAutomationView/payload/transactionCategorizationPayload.d.ts +2 -1
- package/lib/view/expenseAutomationView/reducers/jeSchedulesViewReducer.d.ts +10 -12
- package/lib/view/expenseAutomationView/reducers/jeSchedulesViewReducer.js +2 -6
- package/lib/view/expenseAutomationView/reducers/transactionsViewReducer.d.ts +3 -5
- package/lib/view/expenseAutomationView/reducers/transactionsViewReducer.js +65 -102
- package/lib/view/expenseAutomationView/selectors/transactionCategorizationSelector.d.ts +2 -1
- package/lib/view/expenseAutomationView/selectors/transactionCategorizationSelector.js +11 -20
- package/lib/view/expenseAutomationView/types/transactionsViewState.d.ts +1 -4
- package/lib/view/financeStatement/financeStatementEpic.d.ts +4 -4
- package/lib/view/monthEndCloseChecksView/monthEndCloseChecksViewSelector.js +5 -4
- package/lib/view/people/changeZeniPersonRolesEpic.d.ts +1 -1
- package/lib/view/people/deletePersonEpic.d.ts +1 -1
- package/lib/view/people/invitePeopleEpic.d.ts +1 -1
- package/lib/view/people/inviteZeniPeopleEpic.d.ts +1 -1
- package/lib/view/people/resendInviteEpic.d.ts +1 -1
- package/lib/view/recommendation/fetchEntityRecommendationsByTransactionIdEpic.js +1 -1
- package/lib/view/settingsView/epic/saveNotificationSettingsEpic.d.ts +1 -1
- package/lib/view/spendManagement/billPay/billDetailView/billDetailViewSelector.d.ts +2 -9
- package/lib/view/spendManagement/billPay/billDetailView/billDetailViewSelector.js +8 -35
- package/lib/view/spendManagement/billPay/billList/billListReducer.d.ts +1 -1
- package/lib/view/spendManagement/billPay/billList/billListSelector.d.ts +2 -3
- package/lib/view/spendManagement/billPay/billList/billListSelector.js +18 -55
- package/lib/view/spendManagement/billPay/billList/billListState.d.ts +1 -1
- package/lib/view/spendManagement/billPay/billList/billListState.js +0 -1
- package/lib/view/spendManagement/billPay/billPayConfig/billPayConfigPayload.d.ts +2 -7
- package/lib/view/spendManagement/billPay/billPayConfig/billPayConfigPayload.js +6 -18
- package/lib/view/spendManagement/billPay/billPayConfig/billPayConfigReducer.js +0 -6
- package/lib/view/spendManagement/billPay/billPayConfig/billPayConfigState.d.ts +4 -9
- package/lib/view/spendManagement/billPay/billPayConfig/billPayConfigState.js +4 -18
- package/lib/view/spendManagement/billPay/billPayReview/billPayReviewSelector.d.ts +1 -2
- package/lib/view/spendManagement/billPay/billPayReview/billPayReviewSelector.js +0 -2
- package/lib/view/spendManagement/billPay/editBillView/editBillViewReducer.d.ts +4 -8
- package/lib/view/spendManagement/billPay/editBillView/editBillViewReducer.js +5 -27
- package/lib/view/spendManagement/billPay/editBillView/editBillViewSelector.d.ts +2 -4
- package/lib/view/spendManagement/billPay/editBillView/editBillViewSelector.js +2 -33
- package/lib/view/spendManagement/billPay/editBillView/editBillViewState.d.ts +1 -6
- package/lib/view/spendManagement/billPay/editBillView/epics/initializeBillToLocalStoreEpic.js +5 -16
- package/lib/view/spendManagement/billPay/editBillView/epics/parseInvoiceToBillEpic.js +13 -27
- package/lib/view/spendManagement/billPay/editBillView/epics/saveBillDetailEpic.d.ts +3 -7
- package/lib/view/spendManagement/billPay/editBillView/epics/saveBillDetailEpic.js +28 -48
- package/lib/view/spendManagement/billPay/magicLinkView/magicLinkViewReducer.d.ts +2 -2
- package/lib/view/spendManagement/helpers.d.ts +0 -2
- package/lib/view/spendManagement/helpers.js +1 -9
- package/lib/view/spendManagement/reimbursement/editRemiView/editRemiViewReducer.d.ts +1 -6
- package/lib/view/spendManagement/reimbursement/editRemiView/editRemiViewReducer.js +2 -12
- package/lib/view/tagView/epics/createTagEpic.d.ts +1 -1
- package/lib/view/tagView/epics/deleteTagEpic.d.ts +1 -1
- package/lib/view/transactionDetail/epics/uploadMissingReceiptSuccessEpic.d.ts +1 -1
- package/package.json +1 -1
- package/lib/commonStateTypes/reimbursementTypeCode.d.ts +0 -2
- package/lib/commonStateTypes/reimbursementTypeCode.js +0 -5
|
@@ -32,7 +32,7 @@ export declare const inviteZeniPeopleEpic: (actions$: ActionsObservable<ActionTy
|
|
|
32
32
|
type: string;
|
|
33
33
|
} | {
|
|
34
34
|
payload: {
|
|
35
|
-
messageSection: "bill_pay_setup" | "reimbursement_setup" | "charge_card_setup" | "common" | "transactionDetails_updatingPastTransactions" | "transactionDetails_transactionUpdated" | "cockpit_month_end_email_sent" | "cockpit_month_end_email_save" | "cockpit_month_end_email_attachment_upload" | "je_bill_link" | "je_posted" | "audit_score_updated" | "people_invite_people" | "people_invite_multiple_people" | "people_delete_person" | "people_update_person" | "reimbursement_updated" | "reimbursement_deleted" | "reimbursement_cancelled_deleted" | "reimbursement_cancelled" | "reimbursement_approved" | "reimbursement_rejected" | "reimbursement_sent_for_approval" | "account_added" | "business_verification_save" | "business_verification_submit" | "business_verification_from_bills_submit" | "plaid_connection" | "unlink_deposit_account" | "reimbursement_approval_create" | "reimbursement_duplicate_approval_create" | "reimbursement_approval_update" | "reimbursement_duplicate_approval_update" | "reimbursement_approval_delete" | "reimbursement_create_mileage" | "reimbursement_update_mileage" | "reimbursement_accept_term" | "reimbursement_accept_employee_term" | "reimbursement_bulk_submit" | "reimbursement_bulk_processed" | "zeni_accounts_setup" | "bill_pay_approval_create" | "bill_pay_duplicate_approval_create" | "bill_pay_approval_update" | "bill_pay_duplicate_approval_update" | "bill_pay_approval_delete" | "bill_pay_updated" | "bill_pay_deleted" | "bill_pay_cancelled_deleted" | "bill_pay_cancelled" | "bill_pay_approved" | "real_time_approver_added" | "bill_pay_rejected" | "bill_pay_sent_for_approval" | "bill_pay_accept_term" | "bill_pay_bulk_submit" | "bill_pay_bulk_processed" | "bill_pay_refund" | "bill_pay_retry" | "
|
|
35
|
+
messageSection: "bill_pay_setup" | "reimbursement_setup" | "charge_card_setup" | "common" | "transactionDetails_updatingPastTransactions" | "transactionDetails_transactionUpdated" | "cockpit_month_end_email_sent" | "cockpit_month_end_email_save" | "cockpit_month_end_email_attachment_upload" | "je_bill_link" | "je_posted" | "audit_score_updated" | "people_invite_people" | "people_invite_multiple_people" | "people_delete_person" | "people_update_person" | "reimbursement_updated" | "reimbursement_deleted" | "reimbursement_cancelled_deleted" | "reimbursement_cancelled" | "reimbursement_approved" | "reimbursement_rejected" | "reimbursement_sent_for_approval" | "account_added" | "business_verification_save" | "business_verification_submit" | "business_verification_from_bills_submit" | "plaid_connection" | "unlink_deposit_account" | "reimbursement_approval_create" | "reimbursement_duplicate_approval_create" | "reimbursement_approval_update" | "reimbursement_duplicate_approval_update" | "reimbursement_approval_delete" | "reimbursement_create_mileage" | "reimbursement_update_mileage" | "reimbursement_accept_term" | "reimbursement_accept_employee_term" | "reimbursement_bulk_submit" | "reimbursement_bulk_processed" | "zeni_accounts_setup" | "bill_pay_approval_create" | "bill_pay_duplicate_approval_create" | "bill_pay_approval_update" | "bill_pay_duplicate_approval_update" | "bill_pay_approval_delete" | "bill_pay_updated" | "bill_pay_deleted" | "bill_pay_cancelled_deleted" | "bill_pay_cancelled" | "bill_pay_approved" | "real_time_approver_added" | "bill_pay_rejected" | "bill_pay_sent_for_approval" | "bill_pay_accept_term" | "bill_pay_bulk_submit" | "bill_pay_bulk_processed" | "bill_pay_refund" | "bill_pay_retry" | "zeni_account_accept_term" | "update_vendor" | "data_refresh_update" | "delete_bank_account" | "create_bank_account" | "create_bank_account_ach" | "create_bank_account_wire" | "create_bank_account_international" | "transfer_money" | "update_zeni_account_nickname" | "create_checking_account" | "deposit_check" | "create_vendor" | "onboarding_customer_view" | "onboarding_customer_view_complete" | "onboarding_customer_identity_verification_save" | "onboarding_customer_identity_verification_submit" | "onboarding_customer_business_verification_save" | "onboarding_customer_business_verification_submit" | "retry_bank_account_connection" | "dashboard_invite_sent" | "onboarding_info_saved" | "approve_original_merchant" | "approve_global_merchant" | "reject_global_merchant" | "create_global_merchant" | "fetch_global_merchant_no_recommendation" | "save_vendor_renamed" | "save_vendor_sent_for_review" | "save_vendor_marked_as_employee" | "save_vendor_marked_as_local_contractor" | "charge_card_accept_term" | "charge_card_receipt_upload" | "charge_card_resend_invite" | "charge_card_revoke_invite" | "create_schedule" | "save_schedule" | "delete_schedule" | "ignore_schedule" | "save_task_detail" | "fetch_task_detail" | "delete_task" | "archive_task" | "create_tag" | "delete_tag" | "update_charge_card" | "issue_charge_card" | "issue_charge_cards" | "notification_settings_saved" | "referral_invite_sent" | "notification_mark_as_read" | "mark_as_complete_schedule" | "cancel_journal_entry" | "settings_accounting_accounts_updated" | "create_card_setup" | "confirm_card_setup" | "add_card_payment_source" | "fetch_payment_sources" | "task_assigned_toast_notification" | "task_due_tomorrow_toast_notification" | "task_deleted_toast_notification" | "task_archived_toast_notification" | "task_overdue_toast_notification" | "task_overdue_toast_notification_creator" | "task_notification_count" | "task_activities_toast_notification" | "task_created_toast_notification" | "task_group_creation_success" | "task_group_deletion_success" | "task_group_update_success" | "primary_funding_account_updated" | "task_time_spent_validation" | "transactions_reviewed" | "missing_receipts_attachment" | "flux_analysis_unreviewed" | "flux_analysis_reviewed" | "receipts_upload";
|
|
36
36
|
messageText: "failed" | "success" | "notification";
|
|
37
37
|
type: import("../..").SnackbarMessageType;
|
|
38
38
|
showStatusIcon?: boolean | undefined;
|
|
@@ -13,7 +13,7 @@ export declare const resendInviteEpic: (actions$: ActionsObservable<ActionType>,
|
|
|
13
13
|
type: string;
|
|
14
14
|
} | {
|
|
15
15
|
payload: {
|
|
16
|
-
messageSection: "bill_pay_setup" | "reimbursement_setup" | "charge_card_setup" | "common" | "transactionDetails_updatingPastTransactions" | "transactionDetails_transactionUpdated" | "cockpit_month_end_email_sent" | "cockpit_month_end_email_save" | "cockpit_month_end_email_attachment_upload" | "je_bill_link" | "je_posted" | "audit_score_updated" | "people_invite_people" | "people_invite_multiple_people" | "people_delete_person" | "people_update_person" | "reimbursement_updated" | "reimbursement_deleted" | "reimbursement_cancelled_deleted" | "reimbursement_cancelled" | "reimbursement_approved" | "reimbursement_rejected" | "reimbursement_sent_for_approval" | "account_added" | "business_verification_save" | "business_verification_submit" | "business_verification_from_bills_submit" | "plaid_connection" | "unlink_deposit_account" | "reimbursement_approval_create" | "reimbursement_duplicate_approval_create" | "reimbursement_approval_update" | "reimbursement_duplicate_approval_update" | "reimbursement_approval_delete" | "reimbursement_create_mileage" | "reimbursement_update_mileage" | "reimbursement_accept_term" | "reimbursement_accept_employee_term" | "reimbursement_bulk_submit" | "reimbursement_bulk_processed" | "zeni_accounts_setup" | "bill_pay_approval_create" | "bill_pay_duplicate_approval_create" | "bill_pay_approval_update" | "bill_pay_duplicate_approval_update" | "bill_pay_approval_delete" | "bill_pay_updated" | "bill_pay_deleted" | "bill_pay_cancelled_deleted" | "bill_pay_cancelled" | "bill_pay_approved" | "real_time_approver_added" | "bill_pay_rejected" | "bill_pay_sent_for_approval" | "bill_pay_accept_term" | "bill_pay_bulk_submit" | "bill_pay_bulk_processed" | "bill_pay_refund" | "bill_pay_retry" | "
|
|
16
|
+
messageSection: "bill_pay_setup" | "reimbursement_setup" | "charge_card_setup" | "common" | "transactionDetails_updatingPastTransactions" | "transactionDetails_transactionUpdated" | "cockpit_month_end_email_sent" | "cockpit_month_end_email_save" | "cockpit_month_end_email_attachment_upload" | "je_bill_link" | "je_posted" | "audit_score_updated" | "people_invite_people" | "people_invite_multiple_people" | "people_delete_person" | "people_update_person" | "reimbursement_updated" | "reimbursement_deleted" | "reimbursement_cancelled_deleted" | "reimbursement_cancelled" | "reimbursement_approved" | "reimbursement_rejected" | "reimbursement_sent_for_approval" | "account_added" | "business_verification_save" | "business_verification_submit" | "business_verification_from_bills_submit" | "plaid_connection" | "unlink_deposit_account" | "reimbursement_approval_create" | "reimbursement_duplicate_approval_create" | "reimbursement_approval_update" | "reimbursement_duplicate_approval_update" | "reimbursement_approval_delete" | "reimbursement_create_mileage" | "reimbursement_update_mileage" | "reimbursement_accept_term" | "reimbursement_accept_employee_term" | "reimbursement_bulk_submit" | "reimbursement_bulk_processed" | "zeni_accounts_setup" | "bill_pay_approval_create" | "bill_pay_duplicate_approval_create" | "bill_pay_approval_update" | "bill_pay_duplicate_approval_update" | "bill_pay_approval_delete" | "bill_pay_updated" | "bill_pay_deleted" | "bill_pay_cancelled_deleted" | "bill_pay_cancelled" | "bill_pay_approved" | "real_time_approver_added" | "bill_pay_rejected" | "bill_pay_sent_for_approval" | "bill_pay_accept_term" | "bill_pay_bulk_submit" | "bill_pay_bulk_processed" | "bill_pay_refund" | "bill_pay_retry" | "zeni_account_accept_term" | "update_vendor" | "data_refresh_update" | "delete_bank_account" | "create_bank_account" | "create_bank_account_ach" | "create_bank_account_wire" | "create_bank_account_international" | "transfer_money" | "update_zeni_account_nickname" | "create_checking_account" | "deposit_check" | "create_vendor" | "onboarding_customer_view" | "onboarding_customer_view_complete" | "onboarding_customer_identity_verification_save" | "onboarding_customer_identity_verification_submit" | "onboarding_customer_business_verification_save" | "onboarding_customer_business_verification_submit" | "retry_bank_account_connection" | "dashboard_invite_sent" | "onboarding_info_saved" | "approve_original_merchant" | "approve_global_merchant" | "reject_global_merchant" | "create_global_merchant" | "fetch_global_merchant_no_recommendation" | "save_vendor_renamed" | "save_vendor_sent_for_review" | "save_vendor_marked_as_employee" | "save_vendor_marked_as_local_contractor" | "charge_card_accept_term" | "charge_card_receipt_upload" | "charge_card_resend_invite" | "charge_card_revoke_invite" | "create_schedule" | "save_schedule" | "delete_schedule" | "ignore_schedule" | "save_task_detail" | "fetch_task_detail" | "delete_task" | "archive_task" | "create_tag" | "delete_tag" | "update_charge_card" | "issue_charge_card" | "issue_charge_cards" | "notification_settings_saved" | "referral_invite_sent" | "notification_mark_as_read" | "mark_as_complete_schedule" | "cancel_journal_entry" | "settings_accounting_accounts_updated" | "create_card_setup" | "confirm_card_setup" | "add_card_payment_source" | "fetch_payment_sources" | "task_assigned_toast_notification" | "task_due_tomorrow_toast_notification" | "task_deleted_toast_notification" | "task_archived_toast_notification" | "task_overdue_toast_notification" | "task_overdue_toast_notification_creator" | "task_notification_count" | "task_activities_toast_notification" | "task_created_toast_notification" | "task_group_creation_success" | "task_group_deletion_success" | "task_group_update_success" | "primary_funding_account_updated" | "task_time_spent_validation" | "transactions_reviewed" | "missing_receipts_attachment" | "flux_analysis_unreviewed" | "flux_analysis_reviewed" | "receipts_upload";
|
|
17
17
|
messageText: "failed" | "success" | "notification";
|
|
18
18
|
type: import("../..").SnackbarMessageType;
|
|
19
19
|
showStatusIcon?: boolean | undefined;
|
|
@@ -12,7 +12,7 @@ const accountListSelector_1 = require("../accountList/accountListSelector");
|
|
|
12
12
|
const transactionDetailState_1 = require("../transactionDetail/transactionDetailState");
|
|
13
13
|
const fetchEntityRecommendationsByTransactionIdEpic = (actions$, state$, zeniAPI) => actions$.pipe((0, operators_1.filter)(recommendationReducer_1.fetchEntityRecommendationsByTransactionId.match), (0, operators_1.switchMap)((action) => {
|
|
14
14
|
const { entity, amount, transactionDetails, isBulkFetch, isTransactionCategorizationFlow, } = action.payload;
|
|
15
|
-
const {
|
|
15
|
+
const { expenseAutomationViewState: { selectedTransactionCategorizationTab }, } = state$.value;
|
|
16
16
|
const query = {
|
|
17
17
|
amount,
|
|
18
18
|
transaction_id: (0, transactionDetailState_1.getActualTransactionID)(transactionDetails.transactionId.id),
|
|
@@ -18,7 +18,7 @@ export declare const saveNotificationSettingsEpic: (actions$: ActionsObservable<
|
|
|
18
18
|
type: string;
|
|
19
19
|
} | {
|
|
20
20
|
payload: {
|
|
21
|
-
messageSection: "bill_pay_setup" | "reimbursement_setup" | "charge_card_setup" | "common" | "transactionDetails_updatingPastTransactions" | "transactionDetails_transactionUpdated" | "cockpit_month_end_email_sent" | "cockpit_month_end_email_save" | "cockpit_month_end_email_attachment_upload" | "je_bill_link" | "je_posted" | "audit_score_updated" | "people_invite_people" | "people_invite_multiple_people" | "people_delete_person" | "people_update_person" | "reimbursement_updated" | "reimbursement_deleted" | "reimbursement_cancelled_deleted" | "reimbursement_cancelled" | "reimbursement_approved" | "reimbursement_rejected" | "reimbursement_sent_for_approval" | "account_added" | "business_verification_save" | "business_verification_submit" | "business_verification_from_bills_submit" | "plaid_connection" | "unlink_deposit_account" | "reimbursement_approval_create" | "reimbursement_duplicate_approval_create" | "reimbursement_approval_update" | "reimbursement_duplicate_approval_update" | "reimbursement_approval_delete" | "reimbursement_create_mileage" | "reimbursement_update_mileage" | "reimbursement_accept_term" | "reimbursement_accept_employee_term" | "reimbursement_bulk_submit" | "reimbursement_bulk_processed" | "zeni_accounts_setup" | "bill_pay_approval_create" | "bill_pay_duplicate_approval_create" | "bill_pay_approval_update" | "bill_pay_duplicate_approval_update" | "bill_pay_approval_delete" | "bill_pay_updated" | "bill_pay_deleted" | "bill_pay_cancelled_deleted" | "bill_pay_cancelled" | "bill_pay_approved" | "real_time_approver_added" | "bill_pay_rejected" | "bill_pay_sent_for_approval" | "bill_pay_accept_term" | "bill_pay_bulk_submit" | "bill_pay_bulk_processed" | "bill_pay_refund" | "bill_pay_retry" | "
|
|
21
|
+
messageSection: "bill_pay_setup" | "reimbursement_setup" | "charge_card_setup" | "common" | "transactionDetails_updatingPastTransactions" | "transactionDetails_transactionUpdated" | "cockpit_month_end_email_sent" | "cockpit_month_end_email_save" | "cockpit_month_end_email_attachment_upload" | "je_bill_link" | "je_posted" | "audit_score_updated" | "people_invite_people" | "people_invite_multiple_people" | "people_delete_person" | "people_update_person" | "reimbursement_updated" | "reimbursement_deleted" | "reimbursement_cancelled_deleted" | "reimbursement_cancelled" | "reimbursement_approved" | "reimbursement_rejected" | "reimbursement_sent_for_approval" | "account_added" | "business_verification_save" | "business_verification_submit" | "business_verification_from_bills_submit" | "plaid_connection" | "unlink_deposit_account" | "reimbursement_approval_create" | "reimbursement_duplicate_approval_create" | "reimbursement_approval_update" | "reimbursement_duplicate_approval_update" | "reimbursement_approval_delete" | "reimbursement_create_mileage" | "reimbursement_update_mileage" | "reimbursement_accept_term" | "reimbursement_accept_employee_term" | "reimbursement_bulk_submit" | "reimbursement_bulk_processed" | "zeni_accounts_setup" | "bill_pay_approval_create" | "bill_pay_duplicate_approval_create" | "bill_pay_approval_update" | "bill_pay_duplicate_approval_update" | "bill_pay_approval_delete" | "bill_pay_updated" | "bill_pay_deleted" | "bill_pay_cancelled_deleted" | "bill_pay_cancelled" | "bill_pay_approved" | "real_time_approver_added" | "bill_pay_rejected" | "bill_pay_sent_for_approval" | "bill_pay_accept_term" | "bill_pay_bulk_submit" | "bill_pay_bulk_processed" | "bill_pay_refund" | "bill_pay_retry" | "zeni_account_accept_term" | "update_vendor" | "data_refresh_update" | "delete_bank_account" | "create_bank_account" | "create_bank_account_ach" | "create_bank_account_wire" | "create_bank_account_international" | "transfer_money" | "update_zeni_account_nickname" | "create_checking_account" | "deposit_check" | "create_vendor" | "onboarding_customer_view" | "onboarding_customer_view_complete" | "onboarding_customer_identity_verification_save" | "onboarding_customer_identity_verification_submit" | "onboarding_customer_business_verification_save" | "onboarding_customer_business_verification_submit" | "retry_bank_account_connection" | "dashboard_invite_sent" | "onboarding_info_saved" | "approve_original_merchant" | "approve_global_merchant" | "reject_global_merchant" | "create_global_merchant" | "fetch_global_merchant_no_recommendation" | "save_vendor_renamed" | "save_vendor_sent_for_review" | "save_vendor_marked_as_employee" | "save_vendor_marked_as_local_contractor" | "charge_card_accept_term" | "charge_card_receipt_upload" | "charge_card_resend_invite" | "charge_card_revoke_invite" | "create_schedule" | "save_schedule" | "delete_schedule" | "ignore_schedule" | "save_task_detail" | "fetch_task_detail" | "delete_task" | "archive_task" | "create_tag" | "delete_tag" | "update_charge_card" | "issue_charge_card" | "issue_charge_cards" | "notification_settings_saved" | "referral_invite_sent" | "notification_mark_as_read" | "mark_as_complete_schedule" | "cancel_journal_entry" | "settings_accounting_accounts_updated" | "create_card_setup" | "confirm_card_setup" | "add_card_payment_source" | "fetch_payment_sources" | "task_assigned_toast_notification" | "task_due_tomorrow_toast_notification" | "task_deleted_toast_notification" | "task_archived_toast_notification" | "task_overdue_toast_notification" | "task_overdue_toast_notification_creator" | "task_notification_count" | "task_activities_toast_notification" | "task_created_toast_notification" | "task_group_creation_success" | "task_group_deletion_success" | "task_group_update_success" | "primary_funding_account_updated" | "task_time_spent_validation" | "transactions_reviewed" | "missing_receipts_attachment" | "flux_analysis_unreviewed" | "flux_analysis_reviewed" | "receipts_upload";
|
|
22
22
|
messageText: "failed" | "success" | "notification";
|
|
23
23
|
type: import("../../..").SnackbarMessageType;
|
|
24
24
|
showStatusIcon?: boolean | undefined;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { FetchStateAndError, ID } from '../../../../commonStateTypes/common';
|
|
2
2
|
import { SelectorView } from '../../../../commonStateTypes/viewAndReport/viewAndReport';
|
|
3
3
|
import { AttributeType, Criteria } from '../../../../entity/approvalRule/approvalRuleState';
|
|
4
4
|
import { BankAccount } from '../../../../entity/bankAccount/bankAccount';
|
|
@@ -19,7 +19,6 @@ import { Class } from '../../../../entity/class/classState';
|
|
|
19
19
|
import { PaymentInstrument } from '../../../../entity/paymentInstrument/paymentInstrument';
|
|
20
20
|
import { RecurringBillConfig, RecurringBillData } from '../../../../entity/billPay/recurringBills/recurringBillsState';
|
|
21
21
|
import { FundingAccount } from '../../commonSetup/setupViewSelector';
|
|
22
|
-
import { OutsideZeniPaymentLocalData } from '../editBillView/editBillViewState';
|
|
23
22
|
export interface BillDetailViewSelector extends SelectorView {
|
|
24
23
|
transactionDetails?: BillTransaction;
|
|
25
24
|
createdBy?: User;
|
|
@@ -30,7 +29,6 @@ export interface BillDetailViewSelector extends SelectorView {
|
|
|
30
29
|
deleteStatus: FetchStateAndError;
|
|
31
30
|
cancelAndDeleteStatus: FetchStateAndError;
|
|
32
31
|
cancelStatus: FetchStateAndError;
|
|
33
|
-
billSaveStatus: FetchState;
|
|
34
32
|
approvalUpdateStatus: FetchStateAndError;
|
|
35
33
|
billActivities: BillActivity[];
|
|
36
34
|
filteredAttributes: AttributeType[];
|
|
@@ -49,7 +47,6 @@ export interface BillDetailViewSelector extends SelectorView {
|
|
|
49
47
|
recurringBillInstances?: RecurringBillData[];
|
|
50
48
|
recurringBillConfigDetail?: RecurringBillConfig;
|
|
51
49
|
zeniAssist?: ZeniAssistForBills;
|
|
52
|
-
outsideZeniPaymentInfo?: OutsideZeniPaymentLocalData;
|
|
53
50
|
}
|
|
54
51
|
export interface StepWithStatus extends StepWithUser {
|
|
55
52
|
actorsActivity: ActorActivityWithUser[];
|
|
@@ -80,8 +77,4 @@ export interface BillActivity {
|
|
|
80
77
|
}
|
|
81
78
|
export declare const getBillActivities: (state: RootState, billId: ID, billStageCode?: "paid" | "pending_approval" | "scheduled" | "draft" | undefined) => BillActivity[];
|
|
82
79
|
export declare const getBillDetailView: (state: RootState, billId: ID) => BillDetailViewSelector;
|
|
83
|
-
export declare const checkApproveRejectBtnShow: (billActivities: BillActivity[], isUserAdmin: boolean, signedInUser?: LoggedInUser | undefined) =>
|
|
84
|
-
isApprovalorRejectBtnVisible: boolean;
|
|
85
|
-
isMarkAsPaidBtnVisible: boolean;
|
|
86
|
-
};
|
|
87
|
-
export declare const checkShowMarkAsPaidButton: (bill: BillTransaction, isAdmin: boolean, loggedInUser?: LoggedInUser | undefined) => boolean;
|
|
80
|
+
export declare const checkApproveRejectBtnShow: (billActivities: BillActivity[], isUserAdmin: boolean, signedInUser?: LoggedInUser | undefined) => boolean;
|
|
@@ -3,9 +3,8 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.
|
|
6
|
+
exports.checkApproveRejectBtnShow = exports.getBillDetailView = exports.getBillActivities = void 0;
|
|
7
7
|
const get_1 = __importDefault(require("lodash/get"));
|
|
8
|
-
const findLastIndex_1 = __importDefault(require("lodash/findLastIndex"));
|
|
9
8
|
const cloneDeep_1 = __importDefault(require("lodash/cloneDeep"));
|
|
10
9
|
const reduceFetchState_1 = require("../../../../commonStateTypes/reduceFetchState");
|
|
11
10
|
const approvalRuleSelector_1 = require("../../../../entity/approvalRule/approvalRuleSelector");
|
|
@@ -85,12 +84,11 @@ const getBillActivities = (state, billId, billStageCode) => {
|
|
|
85
84
|
};
|
|
86
85
|
exports.getBillActivities = getBillActivities;
|
|
87
86
|
const getBillDetailView = (state, billId) => {
|
|
88
|
-
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t
|
|
89
|
-
const { bankAccountState, paymentInstrumentState, billDetailViewState, billTransactionState, paymentAccountState, userState, billPayConfigState, userRoleState, classListState, classState, commonHistoryState, realTimeApprovalState, entityApprovalStatusState, billPaySetupApproverViewState, vendorState, recurringBillState, depositAccountState, paymentAccountListState,
|
|
87
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t;
|
|
88
|
+
const { bankAccountState, paymentInstrumentState, billDetailViewState, billTransactionState, paymentAccountState, userState, billPayConfigState, userRoleState, classListState, classState, commonHistoryState, realTimeApprovalState, entityApprovalStatusState, billPaySetupApproverViewState, vendorState, recurringBillState, depositAccountState, paymentAccountListState, } = state;
|
|
90
89
|
const { approverListState } = billPaySetupApproverViewState;
|
|
91
|
-
const
|
|
92
|
-
const billTransactionDetails = (0, get_1.default)(billDetailViewState.billDetailById,
|
|
93
|
-
const editBillDetail = (0, get_1.default)(editBillDetailViewState.editBillStateById, key, undefined);
|
|
90
|
+
const detailKey = (0, billDetailViewState_1.getBillTransactionDetailKey)(billId !== null && billId !== void 0 ? billId : '');
|
|
91
|
+
const billTransactionDetails = (0, get_1.default)(billDetailViewState.billDetailById, detailKey, undefined);
|
|
94
92
|
const transaction = billTransactionState.transactionById[billId];
|
|
95
93
|
let fetchState = {
|
|
96
94
|
fetchState: (_a = billTransactionDetails === null || billTransactionDetails === void 0 ? void 0 : billTransactionDetails.fetchState) !== null && _a !== void 0 ? _a : 'Not-Started',
|
|
@@ -191,13 +189,6 @@ const getBillDetailView = (state, billId) => {
|
|
|
191
189
|
recurringBillInstances = recurringBillDetail === null || recurringBillDetail === void 0 ? void 0 : recurringBillDetail.recurringBillInstances;
|
|
192
190
|
}
|
|
193
191
|
const zeniAssist = billTransactionDetails === null || billTransactionDetails === void 0 ? void 0 : billTransactionDetails.zeniAssist;
|
|
194
|
-
const outsideZeniPaymentInfo = editBillDetail === null || editBillDetail === void 0 ? void 0 : editBillDetail.billDetailLocalData.outsideZeniPaymentLocalData;
|
|
195
|
-
const billSaveStatus = (_u = editBillDetail === null || editBillDetail === void 0 ? void 0 : editBillDetail.saveStatus.fetchState) !== null && _u !== void 0 ? _u : 'Not-Started';
|
|
196
|
-
//offline bills without approval - show created as approved date
|
|
197
|
-
const latestApprovedDate = (transaction === null || transaction === void 0 ? void 0 : transaction.entityApprovalId) == null &&
|
|
198
|
-
(transaction === null || transaction === void 0 ? void 0 : transaction.billPayInfo.billPaymentStatus.code) === 'mark_as_paid'
|
|
199
|
-
? transaction.createTime
|
|
200
|
-
: (0, helpers_1.getLatestApprovalDate)(billActivities);
|
|
201
192
|
return {
|
|
202
193
|
fetchState: fetchState.fetchState,
|
|
203
194
|
error: fetchState.error,
|
|
@@ -211,7 +202,6 @@ const getBillDetailView = (state, billId) => {
|
|
|
211
202
|
deleteStatus,
|
|
212
203
|
cancelStatus,
|
|
213
204
|
cancelAndDeleteStatus,
|
|
214
|
-
billSaveStatus,
|
|
215
205
|
billActivities,
|
|
216
206
|
allApprovers,
|
|
217
207
|
filteredApprovers,
|
|
@@ -225,19 +215,17 @@ const getBillDetailView = (state, billId) => {
|
|
|
225
215
|
approvalUpdateStatus,
|
|
226
216
|
approvalType,
|
|
227
217
|
paymentMethodType: paymentMethodWithBillFees,
|
|
228
|
-
latestApprovedDate,
|
|
218
|
+
latestApprovedDate: (0, helpers_1.getLatestApprovalDate)(billActivities),
|
|
229
219
|
isRecurring,
|
|
230
220
|
recurringBillInstances,
|
|
231
221
|
recurringBillConfigDetail,
|
|
232
222
|
zeniAssist,
|
|
233
|
-
outsideZeniPaymentInfo,
|
|
234
223
|
};
|
|
235
224
|
};
|
|
236
225
|
exports.getBillDetailView = getBillDetailView;
|
|
237
226
|
const checkApproveRejectBtnShow = (billActivities, isUserAdmin, signedInUser) => {
|
|
238
227
|
var _a, _b;
|
|
239
228
|
let isApprovalorRejectBtnVisible = false;
|
|
240
|
-
let isMarkAsPaidBtnVisible = false;
|
|
241
229
|
let rejectedId = -1;
|
|
242
230
|
const stepsWithStatusData = billActivities[0].stepsWithStatus;
|
|
243
231
|
const { areApprovalsSerialized, isAdminFallbackApprover, currentPendingStepIndex, } = billActivities[0];
|
|
@@ -261,18 +249,13 @@ const checkApproveRejectBtnShow = (billActivities, isUserAdmin, signedInUser) =>
|
|
|
261
249
|
stepsWithStatusData[rejectedId],
|
|
262
250
|
];
|
|
263
251
|
}
|
|
264
|
-
return
|
|
265
|
-
isApprovalorRejectBtnVisible: false,
|
|
266
|
-
isMarkAsPaidBtnVisible: false,
|
|
267
|
-
};
|
|
252
|
+
return false;
|
|
268
253
|
}
|
|
269
254
|
if (areApprovalsSerialized === true) {
|
|
270
255
|
if (currentPendingStepIndex != null &&
|
|
271
256
|
currentPendingStepIndex > -1 &&
|
|
272
257
|
stepsWithStatusData.length > 0) {
|
|
273
258
|
const pendingStep = stepsWithStatusData[currentPendingStepIndex];
|
|
274
|
-
const lastApprovalStepIndex = (0, findLastIndex_1.default)(stepsWithStatusData, (step) => step.action === 'require_approval');
|
|
275
|
-
const isLastApprovalStep = lastApprovalStepIndex === currentPendingStepIndex;
|
|
276
259
|
if (pendingStep.action === 'require_approval') {
|
|
277
260
|
let isAllActivitiesPending = true;
|
|
278
261
|
for (const actorActivity of pendingStep.actorsActivity) {
|
|
@@ -285,7 +268,6 @@ const checkApproveRejectBtnShow = (billActivities, isUserAdmin, signedInUser) =>
|
|
|
285
268
|
if (((_a = actorActivity.actor) === null || _a === void 0 ? void 0 : _a.userId) === (signedInUser === null || signedInUser === void 0 ? void 0 : signedInUser.userId) &&
|
|
286
269
|
isAllActivitiesPending) {
|
|
287
270
|
isApprovalorRejectBtnVisible = true;
|
|
288
|
-
isMarkAsPaidBtnVisible = isLastApprovalStep;
|
|
289
271
|
}
|
|
290
272
|
// admin will be fallback approver if vendor-owner/manager are not assigned any user id
|
|
291
273
|
if (actorActivity.type === 'attribute' &&
|
|
@@ -295,7 +277,6 @@ const checkApproveRejectBtnShow = (billActivities, isUserAdmin, signedInUser) =>
|
|
|
295
277
|
isAdminFallbackApprover === true &&
|
|
296
278
|
isUserAdmin === true) {
|
|
297
279
|
isApprovalorRejectBtnVisible = true;
|
|
298
|
-
isMarkAsPaidBtnVisible = isLastApprovalStep;
|
|
299
280
|
}
|
|
300
281
|
}
|
|
301
282
|
}
|
|
@@ -315,7 +296,6 @@ const checkApproveRejectBtnShow = (billActivities, isUserAdmin, signedInUser) =>
|
|
|
315
296
|
if (((_b = actorActivity.actor) === null || _b === void 0 ? void 0 : _b.userId) === (signedInUser === null || signedInUser === void 0 ? void 0 : signedInUser.userId) &&
|
|
316
297
|
isAllActivitiesPending) {
|
|
317
298
|
isApprovalorRejectBtnVisible = true;
|
|
318
|
-
isMarkAsPaidBtnVisible = true;
|
|
319
299
|
}
|
|
320
300
|
// admin will be fallback approver if vendor-owner/manager are not assigned any user id
|
|
321
301
|
else if (actorActivity.type === 'attribute' &&
|
|
@@ -325,7 +305,6 @@ const checkApproveRejectBtnShow = (billActivities, isUserAdmin, signedInUser) =>
|
|
|
325
305
|
isAdminFallbackApprover === true &&
|
|
326
306
|
isUserAdmin === true) {
|
|
327
307
|
isApprovalorRejectBtnVisible = true;
|
|
328
|
-
isMarkAsPaidBtnVisible = true;
|
|
329
308
|
}
|
|
330
309
|
}
|
|
331
310
|
}
|
|
@@ -334,12 +313,6 @@ const checkApproveRejectBtnShow = (billActivities, isUserAdmin, signedInUser) =>
|
|
|
334
313
|
}
|
|
335
314
|
}
|
|
336
315
|
}
|
|
337
|
-
return
|
|
316
|
+
return isApprovalorRejectBtnVisible;
|
|
338
317
|
};
|
|
339
318
|
exports.checkApproveRejectBtnShow = checkApproveRejectBtnShow;
|
|
340
|
-
const checkShowMarkAsPaidButton = (bill, isAdmin, loggedInUser) => {
|
|
341
|
-
const billPaymentStatus = bill.billPayInfo.billPaymentStatus.code;
|
|
342
|
-
const isCreator = bill.createdBy === (loggedInUser === null || loggedInUser === void 0 ? void 0 : loggedInUser.userId);
|
|
343
|
-
return (0, helpers_1.isAwaitingMarkAsPaid)(billPaymentStatus) && (isAdmin || isCreator);
|
|
344
|
-
};
|
|
345
|
-
exports.checkShowMarkAsPaidButton = checkShowMarkAsPaidButton;
|
|
@@ -21,7 +21,7 @@ export declare const fetchBillList: import("@reduxjs/toolkit").ActionCreatorWith
|
|
|
21
21
|
period: TimePeriod;
|
|
22
22
|
tab: "paid" | "pending_approval" | "scheduled" | "draft";
|
|
23
23
|
error: ZeniAPIStatus<Record<string, unknown>>;
|
|
24
|
-
}, string, never, never>, updateTab: import("@reduxjs/toolkit").ActionCreatorWithPayload<"paid" | "pending_approval" | "scheduled" | "draft", string>, updateSubTab: import("@reduxjs/toolkit").ActionCreatorWithPayload<"all" | "failed" | "
|
|
24
|
+
}, string, never, never>, updateTab: import("@reduxjs/toolkit").ActionCreatorWithPayload<"paid" | "pending_approval" | "scheduled" | "draft", string>, updateSubTab: import("@reduxjs/toolkit").ActionCreatorWithPayload<"all" | "failed" | "rejected" | "ach" | "wire" | "cancelled" | "deleted" | "overdue" | "awaiting_approval" | "awaiting_my_approval", string>, updateSelectedBillId: import("@reduxjs/toolkit").ActionCreatorWithPayload<string, string>, clearBillList: import("@reduxjs/toolkit").ActionCreatorWithoutPayload<string>, updateBillDetailSaveBillCode: import("@reduxjs/toolkit").ActionCreatorWithOptionalPayload<SaveBillStageCode, string>, updateBillListUIState: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
|
|
25
25
|
uiState: Partial<BillListUIState>;
|
|
26
26
|
period: TimePeriod;
|
|
27
27
|
}, string>, updateSearchResult: import("@reduxjs/toolkit").ActionCreatorWithPayload<string, string>, updateFilterResult: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
|
|
@@ -5,7 +5,7 @@ import { TimePeriod } from '../../../../commonStateTypes/timePeriod';
|
|
|
5
5
|
import { SelectorView } from '../../../../commonStateTypes/viewAndReport/viewAndReport';
|
|
6
6
|
import { BillTransaction } from '../../../../entity/billPay/billTransaction/billTransactionState';
|
|
7
7
|
import { BillBulkSelectExceptionInfoType, BillListUIState, BillPayFilters, BillPayViewSortKey, BillsSubTabType, BillTab, SaveBillStageCode } from './billListState';
|
|
8
|
-
import {
|
|
8
|
+
import { UserState } from '../../../../entity/user/userState';
|
|
9
9
|
import { EntityApprovalStatusState } from '../../../../entity/entityApprovalStatus/entityApprovalStatusState';
|
|
10
10
|
import { SortOrder } from '../../../../commonStateTypes/selectorTypes/sortOrderTypes';
|
|
11
11
|
import { Approvers } from '../../../../entity/approvalRule/approvalRuleState';
|
|
@@ -26,7 +26,6 @@ interface BillListBulkActionInfo {
|
|
|
26
26
|
export interface BillTransactionView extends BillTransaction {
|
|
27
27
|
approvers: Approvers;
|
|
28
28
|
isRecurring: boolean;
|
|
29
|
-
createdByUser?: User;
|
|
30
29
|
bulkSelectInfo?: BillBulkSelectInfo;
|
|
31
30
|
recurringBillConfig?: RecurringBillConfig;
|
|
32
31
|
}
|
|
@@ -47,7 +46,7 @@ export interface BillListReport extends SelectorView {
|
|
|
47
46
|
billBulkSubmissionLimit: number;
|
|
48
47
|
billListBulkActionInfo: BillListBulkActionInfo;
|
|
49
48
|
}
|
|
50
|
-
export declare const getBillList: (state: RootState, currentTimePeriod: TimePeriod, isBulkActionFeatureEnabled: boolean
|
|
49
|
+
export declare const getBillList: (state: RootState, currentTimePeriod: TimePeriod, isBulkActionFeatureEnabled: boolean) => BillListReport;
|
|
51
50
|
export declare const getApproversOrRejectors: (billTransaction: BillTransaction, entityApprovalStatusState: EntityApprovalStatusState, userState: UserState) => Approvers;
|
|
52
51
|
export declare const getBillListOnSort: (sortKey: BillPayViewSortKey, sortOrder: SortOrder, currentTab: BillTab, transactions: BillTransactionView[]) => BillTransactionView[];
|
|
53
52
|
export {};
|
|
@@ -15,23 +15,14 @@ const billPayConfigSelector_1 = require("../billPayConfig/billPayConfigSelector"
|
|
|
15
15
|
const approvalRuleState_1 = require("../../../../entity/approvalRule/approvalRuleState");
|
|
16
16
|
const spendManagementFilterHelpers_1 = require("../../spendManagementFilterHelpers");
|
|
17
17
|
const helpers_1 = require("../../helpers");
|
|
18
|
-
const getBillList = (state, currentTimePeriod, isBulkActionFeatureEnabled
|
|
19
|
-
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r
|
|
18
|
+
const getBillList = (state, currentTimePeriod, isBulkActionFeatureEnabled) => {
|
|
19
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r;
|
|
20
20
|
const { billListState, billTransactionState, billPayConfigState, entityApprovalStatusState, userState, recurringBillState, billsBulkActionViewState, } = state;
|
|
21
21
|
const key = (0, billListState_1.getBillListKey)(currentTimePeriod, billListState.currentTab);
|
|
22
22
|
const pendingApprovalKey = (0, billListState_1.getBillListKey)(currentTimePeriod, 'pending_approval');
|
|
23
|
-
const scheduledKey = (0, billListState_1.getBillListKey)(currentTimePeriod, 'scheduled');
|
|
24
23
|
const billPayBotEmail = (0, billPayConfigSelector_1.getBillPayConfigBotEmail)(billPayConfigState);
|
|
25
24
|
const billIds = (_b = (_a = (0, get_1.default)(billListState.byBillListKey, key, undefined)) === null || _a === void 0 ? void 0 : _a.transactionIDs) !== null && _b !== void 0 ? _b : [];
|
|
26
25
|
const pendingApprovalTransactionIDs = (_d = (_c = (0, get_1.default)(billListState.byBillListKey, pendingApprovalKey, undefined)) === null || _c === void 0 ? void 0 : _c.pendingApprovalTransactionIDs) !== null && _d !== void 0 ? _d : [];
|
|
27
|
-
let billsToBeMarkedAsPaid = [];
|
|
28
|
-
if (billListState.currentTab === 'pending_approval') {
|
|
29
|
-
const scheduledTransactionIDs = (_f = (_e = (0, get_1.default)(billListState.byBillListKey, scheduledKey, undefined)) === null || _e === void 0 ? void 0 : _e.transactionIDs) !== null && _f !== void 0 ? _f : [];
|
|
30
|
-
billsToBeMarkedAsPaid = scheduledTransactionIDs
|
|
31
|
-
.map((transactionId) => billTransactionState.transactionById[transactionId])
|
|
32
|
-
.filter((bill) => (0, helpers_1.isAwaitingMarkAsPaid)(bill === null || bill === void 0 ? void 0 : bill.billPayInfo.billPaymentStatus.code) &&
|
|
33
|
-
(bill === null || bill === void 0 ? void 0 : bill.isDeleted) === false);
|
|
34
|
-
}
|
|
35
26
|
const billTransactionsUnsorted = billIds
|
|
36
27
|
.map((transactionId) => billTransactionState.transactionById[transactionId])
|
|
37
28
|
.filter((value) => {
|
|
@@ -41,8 +32,7 @@ const getBillList = (state, currentTimePeriod, isBulkActionFeatureEnabled, logge
|
|
|
41
32
|
return value != null;
|
|
42
33
|
});
|
|
43
34
|
const currentTabTransactions = (0, orderBy_1.default)(billTransactionsUnsorted, (value) => value.date.valueOf(), 'desc');
|
|
44
|
-
const nonDeletedCurrentTabTransactions = currentTabTransactions.filter((tran) => !
|
|
45
|
-
!tran.isDeleted);
|
|
35
|
+
const nonDeletedCurrentTabTransactions = currentTabTransactions.filter((tran) => !tran.isDeleted);
|
|
46
36
|
let transactions = [];
|
|
47
37
|
switch (billListState.currentTab) {
|
|
48
38
|
case 'draft':
|
|
@@ -56,22 +46,13 @@ const getBillList = (state, currentTimePeriod, isBulkActionFeatureEnabled, logge
|
|
|
56
46
|
break;
|
|
57
47
|
case 'pending_approval':
|
|
58
48
|
switch (billListState.currentSubTab) {
|
|
59
|
-
case 'awaiting_my_approval':
|
|
60
|
-
|
|
49
|
+
case 'awaiting_my_approval':
|
|
50
|
+
transactions = nonDeletedCurrentTabTransactions.filter((tran) => tran.billPayInfo.billStatus.code === 'pending_approval' &&
|
|
61
51
|
pendingApprovalTransactionIDs.includes(tran.id));
|
|
62
|
-
const billsToBeMarkedAsPaidByMe = billsToBeMarkedAsPaid.filter((bill) => bill.createdBy === loggedInUserId);
|
|
63
|
-
if (billsToBeMarkedAsPaidByMe.length > 0) {
|
|
64
|
-
transactions = (0, orderBy_1.default)([...billsToBeMarkedAsPaidByMe, ...billsAwaitingMyApproval], (value) => value.date.valueOf(), 'desc');
|
|
65
|
-
}
|
|
66
|
-
else {
|
|
67
|
-
transactions = billsAwaitingMyApproval;
|
|
68
|
-
}
|
|
69
52
|
break;
|
|
70
|
-
|
|
71
|
-
case 'awaiting_approval': {
|
|
53
|
+
case 'awaiting_approval':
|
|
72
54
|
transactions = nonDeletedCurrentTabTransactions.filter((tran) => tran.billPayInfo.billStatus.code === 'pending_approval');
|
|
73
55
|
break;
|
|
74
|
-
}
|
|
75
56
|
case 'overdue':
|
|
76
57
|
transactions = nonDeletedCurrentTabTransactions.filter((tran) => tran.billPayInfo.billStatus.code !== 'rejected' &&
|
|
77
58
|
tran.dueDate != null &&
|
|
@@ -83,14 +64,8 @@ const getBillList = (state, currentTimePeriod, isBulkActionFeatureEnabled, logge
|
|
|
83
64
|
case 'deleted':
|
|
84
65
|
transactions = currentTabTransactions.filter((tran) => tran.isDeleted);
|
|
85
66
|
break;
|
|
86
|
-
default:
|
|
87
|
-
|
|
88
|
-
transactions = (0, orderBy_1.default)([...billsToBeMarkedAsPaid, ...nonDeletedCurrentTabTransactions], (value) => value.date.valueOf(), 'desc');
|
|
89
|
-
}
|
|
90
|
-
else {
|
|
91
|
-
transactions = nonDeletedCurrentTabTransactions;
|
|
92
|
-
}
|
|
93
|
-
}
|
|
67
|
+
default:
|
|
68
|
+
transactions = nonDeletedCurrentTabTransactions;
|
|
94
69
|
}
|
|
95
70
|
break;
|
|
96
71
|
case 'scheduled':
|
|
@@ -117,9 +92,6 @@ const getBillList = (state, currentTimePeriod, isBulkActionFeatureEnabled, logge
|
|
|
117
92
|
case 'wire':
|
|
118
93
|
transactions = nonDeletedCurrentTabTransactions.filter((tran) => tran.billPayInfo.billPaymentMethodType.code === 'wire');
|
|
119
94
|
break;
|
|
120
|
-
case 'offline':
|
|
121
|
-
transactions = nonDeletedCurrentTabTransactions.filter((tran) => tran.billPayInfo.billPaymentMethodType.code === 'outside-zeni');
|
|
122
|
-
break;
|
|
123
95
|
case 'deleted':
|
|
124
96
|
transactions = currentTabTransactions.filter((tran) => tran.isDeleted);
|
|
125
97
|
break;
|
|
@@ -142,25 +114,23 @@ const getBillList = (state, currentTimePeriod, isBulkActionFeatureEnabled, logge
|
|
|
142
114
|
recurringBillDetail = (0, get_1.default)(recurringBillState.recurringBillDetailByConfigId, transaction.recurringBillConfigId, undefined);
|
|
143
115
|
}
|
|
144
116
|
const recurringBillConfig = recurringBillDetail === null || recurringBillDetail === void 0 ? void 0 : recurringBillDetail.recurringBillConfig;
|
|
145
|
-
const createdByUser = (0, userSelector_1.getUserByUserId)(userState, transaction.createdBy);
|
|
146
117
|
return Object.assign(Object.assign({}, transaction), { approvers,
|
|
147
|
-
createdByUser,
|
|
148
118
|
isRecurring,
|
|
149
119
|
recurringBillConfig });
|
|
150
120
|
});
|
|
151
121
|
transactionsView = (0, spendManagementFilterHelpers_1.applyAdvancedFiltersOnList)('bill_pay', transactionsView, billListState.filters);
|
|
152
122
|
const TransactionsPendingForMyApprovalLength = pendingApprovalTransactionIDs.length;
|
|
153
|
-
const fetchState = (
|
|
154
|
-
const error = (
|
|
155
|
-
const uiState = (
|
|
123
|
+
const fetchState = (_f = (_e = billListState.byBillListKey[key]) === null || _e === void 0 ? void 0 : _e.fetchState) !== null && _f !== void 0 ? _f : 'Not-Started';
|
|
124
|
+
const error = (_h = (_g = billListState.byBillListKey[key]) === null || _g === void 0 ? void 0 : _g.error) !== null && _h !== void 0 ? _h : undefined;
|
|
125
|
+
const uiState = (_k = (_j = billListState.byBillListKey[key]) === null || _j === void 0 ? void 0 : _j.uiState) !== null && _k !== void 0 ? _k : undefined;
|
|
156
126
|
const { sortKey, sortOrder } = uiState !== null && uiState !== void 0 ? uiState : {
|
|
157
127
|
sortKey: 'name',
|
|
158
128
|
sortOrder: 'ascending',
|
|
159
129
|
};
|
|
160
|
-
const isWireActiveForCurrentTenant = (
|
|
161
|
-
)) === null ||
|
|
162
|
-
const isAchActiveForCurrentTenant = ((
|
|
163
|
-
((
|
|
130
|
+
const isWireActiveForCurrentTenant = (_m = (_l = (0, billPayConfigSelector_1.getBillPayConfigByKey)(billPayConfigState, (0, billPayConfigState_1.getBillPayConfigMethodKey)('wire', 'usDomestic', 'paymentAccount') //TBR
|
|
131
|
+
)) === null || _l === void 0 ? void 0 : _l.isEnabled) !== null && _m !== void 0 ? _m : false;
|
|
132
|
+
const isAchActiveForCurrentTenant = ((_p = (_o = (0, billPayConfigSelector_1.getBillPayConfigByKey)(billPayConfigState, (0, billPayConfigState_1.getBillPayConfigMethodKey)('ach', 'standard', 'paymentAccount'))) === null || _o === void 0 ? void 0 : _o.isEnabled) !== null && _p !== void 0 ? _p : false) ||
|
|
133
|
+
((_r = (_q = (0, billPayConfigSelector_1.getBillPayConfigByKey)(billPayConfigState, (0, billPayConfigState_1.getBillPayConfigMethodKey)('ach', 'sameDay', 'paymentAccount'))) === null || _q === void 0 ? void 0 : _q.isEnabled) !== null && _r !== void 0 ? _r : false);
|
|
164
134
|
const allSubTabs = getAllSubTabs(billListState.currentTab, isWireActiveForCurrentTenant, isAchActiveForCurrentTenant);
|
|
165
135
|
const loweredSearchText = billListState.searchText.trim().toLowerCase();
|
|
166
136
|
transactionsView = (0, exports.getBillListOnSort)(sortKey, sortOrder, billListState.currentTab, transactionsView.filter((transaction) => {
|
|
@@ -174,7 +144,6 @@ const getBillList = (state, currentTimePeriod, isBulkActionFeatureEnabled, logge
|
|
|
174
144
|
const bulkSubmissionFetchState = billsBulkActionViewState.bulkSubmissionFetchState.fetchState;
|
|
175
145
|
let isRecurringBillInBulkActionList = false;
|
|
176
146
|
let isBookClosedForAnySelectedBill = false;
|
|
177
|
-
let isBillAwaitingMarkAsPaidInBulkList = false;
|
|
178
147
|
let billListBulkActionInfo = {
|
|
179
148
|
isBulkActionAllowed: false,
|
|
180
149
|
billsSelectedForBulkAction: [],
|
|
@@ -212,9 +181,6 @@ const getBillList = (state, currentTimePeriod, isBulkActionFeatureEnabled, logge
|
|
|
212
181
|
if (isBookClosedForBill) {
|
|
213
182
|
isBookClosedForAnySelectedBill = true;
|
|
214
183
|
}
|
|
215
|
-
if ((0, helpers_1.isAwaitingMarkAsPaid)(transaction.billPayInfo.billPaymentStatus.code)) {
|
|
216
|
-
isBillAwaitingMarkAsPaidInBulkList = true;
|
|
217
|
-
}
|
|
218
184
|
}
|
|
219
185
|
if (firstSelectableBill == null && isSelectableForBulkAction) {
|
|
220
186
|
firstSelectableBill = transaction;
|
|
@@ -231,7 +197,7 @@ const getBillList = (state, currentTimePeriod, isBulkActionFeatureEnabled, logge
|
|
|
231
197
|
.length === 0;
|
|
232
198
|
const allowedBulkActions = isBulkActionAllowed
|
|
233
199
|
? getAllowedBulkActions(billListState.currentTab, billListState.currentSubTab, allBulkBillsAwaitingMyApproval, (firstBillInBulkList === null || firstBillInBulkList === void 0 ? void 0 : firstBillInBulkList.billPayInfo.billPaymentStatus.code) ===
|
|
234
|
-
'processing', isBookClosedForAnySelectedBill, isRecurringBillInBulkActionList
|
|
200
|
+
'processing', isBookClosedForAnySelectedBill, isRecurringBillInBulkActionList)
|
|
235
201
|
: [];
|
|
236
202
|
billListBulkActionInfo = {
|
|
237
203
|
isBulkActionAllowed,
|
|
@@ -295,7 +261,7 @@ const getAllPaidSubTabs = (isWireActive, isAchActive) => {
|
|
|
295
261
|
paidSubTabs.push('wire');
|
|
296
262
|
}
|
|
297
263
|
if (paidSubTabs.length > 0) {
|
|
298
|
-
paidSubTabs = ['all', ...paidSubTabs, '
|
|
264
|
+
paidSubTabs = ['all', ...paidSubTabs, 'deleted'];
|
|
299
265
|
}
|
|
300
266
|
return paidSubTabs;
|
|
301
267
|
};
|
|
@@ -645,7 +611,7 @@ const isBillSelectableForBulkAction = (bill, selectedTab, isBookClosedForBill, i
|
|
|
645
611
|
}
|
|
646
612
|
return result;
|
|
647
613
|
};
|
|
648
|
-
const getAllowedBulkActions = (selectedTab, selectedSubTab, isAllAwaitingMyApproval, isFirstBillProcessing, isBookClosedForAnySelectedBill, isRecurringBillInBulkActionList
|
|
614
|
+
const getAllowedBulkActions = (selectedTab, selectedSubTab, isAllAwaitingMyApproval, isFirstBillProcessing, isBookClosedForAnySelectedBill, isRecurringBillInBulkActionList) => {
|
|
649
615
|
switch (selectedTab) {
|
|
650
616
|
case 'draft':
|
|
651
617
|
return ['send_for_approval', 'delete'];
|
|
@@ -661,9 +627,6 @@ const getAllowedBulkActions = (selectedTab, selectedSubTab, isAllAwaitingMyAppro
|
|
|
661
627
|
}
|
|
662
628
|
return isBookClosedForAnySelectedBill ? [] : ['delete'];
|
|
663
629
|
case 'awaiting_my_approval':
|
|
664
|
-
if (isBillAwaitingMarkAsPaidInBulkList) {
|
|
665
|
-
return ['delete'];
|
|
666
|
-
}
|
|
667
630
|
return isBookClosedForAnySelectedBill
|
|
668
631
|
? ['approve', 'reject']
|
|
669
632
|
: ['approve', 'reject', 'delete'];
|
|
@@ -35,7 +35,7 @@ export declare type SaveBillStageCode = 'draft' | 'pending_approval' | undefined
|
|
|
35
35
|
export declare const ALL_BILL_TABS: readonly ["paid", "pending_approval", "scheduled", "draft"];
|
|
36
36
|
declare const toBillTabType: (v: string) => "paid" | "pending_approval" | "scheduled" | "draft";
|
|
37
37
|
export declare type BillTab = ReturnType<typeof toBillTabType>;
|
|
38
|
-
declare const toBillsSubTabType: (v: string) => "all" | "failed" | "
|
|
38
|
+
declare const toBillsSubTabType: (v: string) => "all" | "failed" | "rejected" | "ach" | "wire" | "cancelled" | "deleted" | "overdue" | "awaiting_approval" | "awaiting_my_approval";
|
|
39
39
|
export declare type BillsSubTabType = ReturnType<typeof toBillsSubTabType>;
|
|
40
40
|
declare const toBillPaySortKeyType: (v: string) => "name" | "status" | "amount" | "dueDate" | "invoiceDate" | "paymentMethod";
|
|
41
41
|
export declare type BillPayViewSortKey = ReturnType<typeof toBillPaySortKeyType>;
|
|
@@ -3,14 +3,13 @@ import { Currency } from '../../../../commonStateTypes/amount';
|
|
|
3
3
|
import { AccountBasePayload } from '../../../../entity/account/accountPayload';
|
|
4
4
|
import { ClassBasePayload } from '../../../../entity/class/classPayload';
|
|
5
5
|
import { ZeniAPIResponse } from '../../../../responsePayload';
|
|
6
|
-
import { BillPaymentConfigCodeType, BillPaymentSubConfigCodeType, VendorCurrency, PaymentAchSubConfigCodeType,
|
|
6
|
+
import { BillPaymentConfigCodeType, BillPaymentSubConfigCodeType, VendorCurrency, PaymentAchSubConfigCodeType, InternationalSubConfigCodeType, BillPayConfig, InternationalWireMethodCodeType, InternationalWireMethodCodeKeyType, InternationalSubConfigCodeKeyType, BillPaymentSubConfigCodeKeyType, PaymentAchSubConfigCodeKeyType, BillPaymentWireSubConfigCodeType, BillPaymentWireSubConfigCodeKeyType, AccountTypeSubConfigCodeKeyType, AccType } from './billPayConfigState';
|
|
7
7
|
export interface BillPayConfigPayload {
|
|
8
8
|
bill_pay_bot_email: string;
|
|
9
9
|
is_us_domestic_wire_enabled: boolean;
|
|
10
10
|
is_same_day_ach_enabled: boolean;
|
|
11
11
|
is_international_wire_enabled: boolean;
|
|
12
12
|
is_international_wires_verified: boolean;
|
|
13
|
-
is_outside_zeni_payment_enabled: boolean;
|
|
14
13
|
payment_processor: BillPayConfigPaymentProcessorPayload;
|
|
15
14
|
max_bills_allowed_for_bulk_action: number;
|
|
16
15
|
required_fields: {
|
|
@@ -47,18 +46,15 @@ interface CountryPayload {
|
|
|
47
46
|
}
|
|
48
47
|
interface PaymentTimeline {
|
|
49
48
|
ach: Record<PaymentAchSubConfigCodeType, ConfigTimelineForAccTypePayload>;
|
|
50
|
-
'outside-zeni': Record<BillPaymentOutsideZeniSubConfigCodeType, ConfigTimelineForAccTypePayload>;
|
|
51
49
|
wire: Record<BillPaymentWireSubConfigCodeType, ConfigTimelineForAccTypePayload>;
|
|
52
50
|
}
|
|
53
51
|
interface ClassConfig {
|
|
54
52
|
ach: Record<PaymentAchSubConfigCodeType, ClassBasePayload>;
|
|
55
53
|
wire: Record<BillPaymentWireSubConfigCodeType, ClassBasePayload>;
|
|
56
|
-
'outside-zeni': Record<BillPaymentOutsideZeniSubConfigCodeType, ClassBasePayload>;
|
|
57
54
|
}
|
|
58
55
|
interface AccountConfig {
|
|
59
56
|
ach: Record<PaymentAchSubConfigCodeType, AccountBasePayload>;
|
|
60
57
|
wire: Record<BillPaymentWireSubConfigCodeType, AccountBasePayload>;
|
|
61
|
-
'outside-zeni': Record<BillPaymentOutsideZeniSubConfigCodeType, AccountBasePayload>;
|
|
62
58
|
}
|
|
63
59
|
interface BillPayConfigPaymentProcessorPayload {
|
|
64
60
|
payment_timeline: PaymentTimeline;
|
|
@@ -77,7 +73,6 @@ interface WireConfig {
|
|
|
77
73
|
interface FeesConfig {
|
|
78
74
|
ach: Record<PaymentAchSubConfigCodeType, BillPayConfigFeeForAccTypePayload>;
|
|
79
75
|
wire: WireConfig;
|
|
80
|
-
'outside-zeni': Record<BillPaymentOutsideZeniSubConfigCodeType, BillPayConfigFeeForAccTypePayload>;
|
|
81
76
|
}
|
|
82
77
|
declare type BillPayConfigFeeForAccTypePayload = Record<AccType, BillPayConfigFeePayload>;
|
|
83
78
|
interface BillPayConfigFeePayload {
|
|
@@ -106,7 +101,7 @@ export declare const getBillPaymentWireSubConfigCodeKey: (subCode: BillPaymentWi
|
|
|
106
101
|
export declare const getInternationalSubConfigCodeKey: (subCode: InternationalSubConfigCodeType) => InternationalSubConfigCodeKeyType;
|
|
107
102
|
export declare const getInternationalWireMethodCodeKey: (subCode: InternationalWireMethodCodeType) => InternationalWireMethodCodeKeyType;
|
|
108
103
|
export declare const getAccountTypeSubConfigCodeKey: (subCode: AccType) => AccountTypeSubConfigCodeKeyType;
|
|
109
|
-
export declare const mapBillPayConfigPayloadToBillPayConfig: (paymentProcessor: BillPayConfigPaymentProcessorPayload, isEnabled: boolean, isVerified: boolean, code: BillPaymentConfigCodeType, subCode: BillPaymentSubConfigCodeType, accType
|
|
104
|
+
export declare const mapBillPayConfigPayloadToBillPayConfig: (paymentProcessor: BillPayConfigPaymentProcessorPayload, isEnabled: boolean, isVerified: boolean, code: BillPaymentConfigCodeType, subCode: BillPaymentSubConfigCodeType, accType: AccType, internationalMethod?: "usd-to-local-currency" | "usd-to-usd" | undefined, internationalSubMethod?: "swift_our" | "swift_sha" | undefined) => BillPayConfig;
|
|
110
105
|
export declare const mapBillPayVendorConfigPayloadToBillPayVendorConfig: (payload: BillPayConfigPayload, code: BillPaymentConfigCodeType, subCode: BillPaymentSubConfigCodeType) => Currency[];
|
|
111
106
|
export declare const toVendorCurrency: (payload: VendorCurrencyPayload) => VendorCurrency;
|
|
112
107
|
export declare type BillPayConfigResponse = ZeniAPIResponse<BillPayConfigPayload>;
|