@zeniai/client-epic-state 5.1.68 → 5.1.69-betaAK0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/esm/index.js +7 -7
- package/lib/esm/view/invoicing/couponView/couponViewEpics.js +0 -3
- package/lib/esm/view/invoicing/couponView/couponViewReducer.js +7 -1
- package/lib/esm/view/invoicing/couponView/couponViewSelector.js +27 -14
- package/lib/esm/view/invoicing/invoiceList/fetchInvoiceListEpic.js +7 -5
- package/lib/esm/view/invoicing/invoiceList/fetchInvoiceListPageEpic.js +2 -1
- package/lib/esm/view/invoicing/invoiceList/invoiceListReducer.js +62 -36
- package/lib/esm/view/invoicing/invoiceList/invoiceListSelector.js +19 -15
- package/lib/esm/view/invoicing/invoiceList/invoiceListState.js +10 -0
- package/lib/esm/view/invoicing/invoicingCreditNoteListView/epics/fetchInvoicingCreditNoteListEpic.js +0 -3
- package/lib/esm/view/invoicing/invoicingCreditNoteListView/invoicingCreditNoteListViewReducer.js +7 -1
- package/lib/esm/view/invoicing/invoicingCreditNoteListView/invoicingCreditNoteListViewSelector.js +23 -13
- package/lib/esm/view/invoicing/invoicingCustomerDetailView/fetchInvoicingCustomerDetailPageEpic.js +3 -2
- package/lib/esm/view/invoicing/invoicingCustomerDetailView/invoicingCustomerDetailViewSelector.js +1 -1
- package/lib/esm/view/invoicing/invoicingCustomerListView/epics/fetchInvoicingCustomerListEpic.js +0 -3
- package/lib/esm/view/invoicing/invoicingCustomerListView/invoicingCustomerListViewReducer.js +7 -1
- package/lib/esm/view/invoicing/invoicingCustomerListView/invoicingCustomerListViewSelector.js +25 -12
- package/lib/esm/view/invoicing/invoicingDunningCaseListView/epics/fetchInvoicingDunningCaseListEpic.js +0 -3
- package/lib/esm/view/invoicing/invoicingDunningCaseListView/invoicingDunningCaseListViewReducer.js +7 -1
- package/lib/esm/view/invoicing/invoicingDunningCaseListView/invoicingDunningCaseListViewSelector.js +23 -13
- package/lib/esm/view/invoicing/invoicingSubscriptionListView/epics/fetchInvoicingSubscriptionListEpic.js +0 -3
- package/lib/esm/view/invoicing/invoicingSubscriptionListView/invoicingSubscriptionListViewReducer.js +7 -1
- package/lib/esm/view/invoicing/invoicingSubscriptionListView/invoicingSubscriptionListViewSelector.js +22 -12
- package/lib/esm/view/invoicing/invoicingTransactionListView/epics/fetchInvoicingTransactionListEpic.js +7 -5
- package/lib/esm/view/invoicing/invoicingTransactionListView/epics/fetchInvoicingTransactionListPageEpic.js +2 -1
- package/lib/esm/view/invoicing/invoicingTransactionListView/invoicingTransactionListViewReducer.js +56 -25
- package/lib/esm/view/invoicing/invoicingTransactionListView/invoicingTransactionListViewSelector.js +15 -11
- package/lib/esm/view/invoicing/invoicingTransactionListView/invoicingTransactionListViewState.js +10 -0
- package/lib/esm/view/spendManagement/billPay/billDetailView/billDetailViewSelector.js +8 -2
- package/lib/esm/view/spendManagement/helpers.js +12 -0
- package/lib/esm/view/spendManagement/reimbursement/editRemiView/epics/fetchEditRemiDetailPageEpic.js +0 -12
- package/lib/esm/view/spendManagement/reimbursement/remiDetailView/remiDetailViewSelector.js +4 -2
- package/lib/index.d.ts +7 -7
- package/lib/index.js +15 -8
- package/lib/view/invoicing/couponView/couponViewEpics.js +0 -3
- package/lib/view/invoicing/couponView/couponViewReducer.d.ts +1 -1
- package/lib/view/invoicing/couponView/couponViewReducer.js +8 -2
- package/lib/view/invoicing/couponView/couponViewSelector.d.ts +1 -0
- package/lib/view/invoicing/couponView/couponViewSelector.js +27 -14
- package/lib/view/invoicing/couponView/couponViewState.d.ts +2 -1
- package/lib/view/invoicing/invoiceList/fetchInvoiceListEpic.d.ts +1 -1
- package/lib/view/invoicing/invoiceList/fetchInvoiceListEpic.js +7 -5
- package/lib/view/invoicing/invoiceList/fetchInvoiceListPageEpic.js +2 -1
- package/lib/view/invoicing/invoiceList/invoiceListReducer.d.ts +5 -4
- package/lib/view/invoicing/invoiceList/invoiceListReducer.js +63 -37
- package/lib/view/invoicing/invoiceList/invoiceListSelector.d.ts +1 -0
- package/lib/view/invoicing/invoiceList/invoiceListSelector.js +19 -15
- package/lib/view/invoicing/invoiceList/invoiceListState.d.ts +21 -7
- package/lib/view/invoicing/invoiceList/invoiceListState.js +13 -1
- package/lib/view/invoicing/invoicingCreditNoteListView/epics/fetchInvoicingCreditNoteListEpic.js +0 -3
- package/lib/view/invoicing/invoicingCreditNoteListView/invoicingCreditNoteListViewReducer.d.ts +1 -1
- package/lib/view/invoicing/invoicingCreditNoteListView/invoicingCreditNoteListViewReducer.js +8 -2
- package/lib/view/invoicing/invoicingCreditNoteListView/invoicingCreditNoteListViewSelector.d.ts +1 -0
- package/lib/view/invoicing/invoicingCreditNoteListView/invoicingCreditNoteListViewSelector.js +23 -13
- package/lib/view/invoicing/invoicingCreditNoteListView/invoicingCreditNoteListViewState.d.ts +2 -1
- package/lib/view/invoicing/invoicingCustomerDetailView/fetchInvoicingCustomerDetailPageEpic.js +3 -2
- package/lib/view/invoicing/invoicingCustomerDetailView/invoicingCustomerDetailViewSelector.js +1 -1
- package/lib/view/invoicing/invoicingCustomerListView/epics/fetchInvoicingCustomerListEpic.js +0 -3
- package/lib/view/invoicing/invoicingCustomerListView/invoicingCustomerListViewReducer.d.ts +1 -1
- package/lib/view/invoicing/invoicingCustomerListView/invoicingCustomerListViewReducer.js +8 -2
- package/lib/view/invoicing/invoicingCustomerListView/invoicingCustomerListViewSelector.d.ts +1 -0
- package/lib/view/invoicing/invoicingCustomerListView/invoicingCustomerListViewSelector.js +25 -12
- package/lib/view/invoicing/invoicingCustomerListView/invoicingCustomerListViewState.d.ts +2 -1
- package/lib/view/invoicing/invoicingDunningCaseListView/epics/fetchInvoicingDunningCaseListEpic.js +0 -3
- package/lib/view/invoicing/invoicingDunningCaseListView/invoicingDunningCaseListViewReducer.d.ts +1 -1
- package/lib/view/invoicing/invoicingDunningCaseListView/invoicingDunningCaseListViewReducer.js +8 -2
- package/lib/view/invoicing/invoicingDunningCaseListView/invoicingDunningCaseListViewSelector.d.ts +1 -0
- package/lib/view/invoicing/invoicingDunningCaseListView/invoicingDunningCaseListViewSelector.js +23 -13
- package/lib/view/invoicing/invoicingDunningCaseListView/invoicingDunningCaseListViewState.d.ts +2 -1
- package/lib/view/invoicing/invoicingSubscriptionListView/epics/fetchInvoicingSubscriptionListEpic.js +0 -3
- package/lib/view/invoicing/invoicingSubscriptionListView/invoicingSubscriptionListViewReducer.d.ts +1 -1
- package/lib/view/invoicing/invoicingSubscriptionListView/invoicingSubscriptionListViewReducer.js +8 -2
- package/lib/view/invoicing/invoicingSubscriptionListView/invoicingSubscriptionListViewSelector.d.ts +1 -0
- package/lib/view/invoicing/invoicingSubscriptionListView/invoicingSubscriptionListViewSelector.js +22 -12
- package/lib/view/invoicing/invoicingSubscriptionListView/invoicingSubscriptionListViewState.d.ts +3 -1
- package/lib/view/invoicing/invoicingTransactionListView/epics/fetchInvoicingTransactionListEpic.d.ts +1 -1
- package/lib/view/invoicing/invoicingTransactionListView/epics/fetchInvoicingTransactionListEpic.js +7 -5
- package/lib/view/invoicing/invoicingTransactionListView/epics/fetchInvoicingTransactionListPageEpic.js +2 -1
- package/lib/view/invoicing/invoicingTransactionListView/invoicingTransactionListViewReducer.d.ts +1 -1
- package/lib/view/invoicing/invoicingTransactionListView/invoicingTransactionListViewReducer.js +57 -26
- package/lib/view/invoicing/invoicingTransactionListView/invoicingTransactionListViewSelector.d.ts +1 -0
- package/lib/view/invoicing/invoicingTransactionListView/invoicingTransactionListViewSelector.js +15 -11
- package/lib/view/invoicing/invoicingTransactionListView/invoicingTransactionListViewState.d.ts +18 -4
- package/lib/view/invoicing/invoicingTransactionListView/invoicingTransactionListViewState.js +13 -1
- package/lib/view/spendManagement/billPay/billDetailView/billDetailViewSelector.d.ts +1 -0
- package/lib/view/spendManagement/billPay/billDetailView/billDetailViewSelector.js +7 -1
- package/lib/view/spendManagement/helpers.d.ts +1 -0
- package/lib/view/spendManagement/helpers.js +14 -1
- package/lib/view/spendManagement/reimbursement/editRemiView/epics/fetchEditRemiDetailPageEpic.d.ts +1 -2
- package/lib/view/spendManagement/reimbursement/editRemiView/epics/fetchEditRemiDetailPageEpic.js +0 -12
- package/lib/view/spendManagement/reimbursement/remiDetailView/remiDetailViewSelector.d.ts +1 -0
- package/lib/view/spendManagement/reimbursement/remiDetailView/remiDetailViewSelector.js +3 -1
- package/package.json +1 -1
package/lib/index.js
CHANGED
|
@@ -76,14 +76,14 @@ exports.removeSyntheticAiCfoAnswer = exports.updateSyntheticAiCfoAnswer = export
|
|
|
76
76
|
exports.getCardPolicySuggestedAllowMerchants = exports.getCardPolicySuggestedAllowCategories = exports.getCardPolicyStats = exports.getCardPolicyMccCategoriesFetchState = exports.getCardPolicyMccCategoriesError = exports.getCardPolicyMccCategories = exports.getAllCardPolicyTemplates = exports.clearCardPolicy = exports.updatePolicyRecommendationFromUploadSuccess = exports.updatePolicyRecommendationFromUploadFailure = exports.updatePolicyDocumentExtractionSuccess = exports.updatePolicyDocumentExtractionFailure = exports.updateCreatedCardPolicyTemplate = exports.updateCardPolicyVendorOptionsFailure = exports.updateCardPolicyVendorOptions = exports.updateCardPolicyTemplates = exports.updateCardPolicyStats = exports.updateCardPolicyMccCategoriesFailure = exports.updateCardPolicyMccCategories = exports.removeCardPolicyTemplate = exports.fetchCardPolicyVendorOptions = exports.fetchCardPolicyRecommendationFromUpload = exports.fetchCardPolicyMccCategories = exports.extractPolicyDocument = exports.clearPolicyDocumentExtraction = exports.toMessageType = exports.toMessageSender = exports.ALL_SYNTHETIC_AI_CFO_ANSWER_KINDS = exports.toInteractiveFormTypeStrict = exports.toInteractiveFormType = exports.toAiCfoAnswerResponseTypeStrict = exports.toAiCfoAnswerResponseType = exports.toAiCfoAnswerStateTypeStrict = exports.toAiCfoAnswerStateType = exports.toAiCfoChartTypeStrict = exports.toAiCfoChartType = exports.toAiCfoVisualizationTypeStrict = exports.toAiCfoVisualizationType = exports.ALL_INTERACTIVE_FORM_TYPES = exports.ALL_AI_CFO_ANSWER_RESPONSE_TYPES = exports.ALL_AI_CFO_ANSWER_STATE_TYPES = exports.ALL_AI_CFO_VISUALIZATION_TYPES = exports.ALL_AI_CFO_CHARTS_TYPES = exports.getSyntheticAiCfoAnswerByQuestionAnswerId = exports.getSyntheticAiCfoAnswersForChatSession = exports.getAiCfoSelectorView = exports.getAllQuestionsForChatSession = exports.getQuestionAnswerByIdForChatSession = exports.getAllQuestionAnswersForChatSession = exports.clearSyntheticAiCfoAnswers = void 0;
|
|
77
77
|
exports.CARD_POLICY_LIMIT_ROW_ID_TRANSACTION = exports.CARD_POLICY_LIMIT_ROW_ID_REQUIRE_RECEIPT = exports.getManualCardPolicyFormDraft = exports.getLastCreatedCardPolicyTemplateIds = exports.getLastCreatedCardPolicyTemplateId = exports.getLastCreateCardPolicyTemplateErrors = exports.getLastCreateCardPolicySourceChatSessionId = exports.getCreateCardPolicyTemplateRequestState = exports.getAiCardPolicyFormDraft = exports.updateManualCardPolicyFormDraft = exports.updateCreateCardPolicyTemplateRequestState = exports.updateAiCardPolicyFormDraftFromUploadPlan = exports.updateAiCardPolicyFormDraft = exports.seedManualCardPolicyFormDraft = exports.seedAiCardPolicyFormDraft = exports.createCardPolicyTemplates = exports.clearManualCardPolicyFormDraft = exports.clearCreateCardPolicy = exports.clearAiCardPolicyFormDraft = exports.applyExtractedPolicyToManualCardPolicyDraft = exports.applyExtractedPolicyToAiCardPolicyDraft = exports.toUpdateCardPolicyTemplateRequestBody = exports.toExtractedCardPolicyRules = exports.toCreateCardPolicyTemplatesRequestBody = exports.toCreateCardPolicyTemplateRequestBody = exports.toCardPolicyVendorSearchOption = exports.toCardPolicyTemplateList = exports.toCardPolicyTemplate = exports.toCardPolicyStats = exports.toCardPolicyEditFormDraft = exports.toBulkCreateCardPolicyTemplateError = exports.toCardPolicyTemplateStatus = exports.toCardPolicyTemplateMode = exports.ALL_CARD_POLICY_TEMPLATE_STATUSES = exports.ALL_CARD_POLICY_TEMPLATE_MODES = exports.getUploadedPolicyDocumentFileName = exports.getPolicyRecommendationFromUploadFetchState = exports.getPolicyRecommendationFromUploadError = exports.getPolicyRecommendationFromUploadChatSessionId = exports.getPolicyRecommendationFromUploadAnswerId = exports.getPolicyDocumentExtractionFetchState = exports.getPolicyDocumentExtractionError = exports.getExtractedCardPolicyRules = exports.getCardPolicyVendorSearchString = exports.getCardPolicyVendorSearchOptions = exports.getCardPolicyVendorSearchFetchState = exports.getCardPolicyTemplatesByIds = exports.getCardPolicyTemplateById = exports.getCardPolicySuggestedBlockMerchants = exports.getCardPolicySuggestedBlockCategories = void 0;
|
|
78
78
|
exports.createAutoTransferRule = exports.fetchAutoTransferRules = exports.getTreasuryTaxLetters = exports.fetchTreasuryTaxLetterList = exports.getTreasuryStatements = exports.fetchTreasuryStatementList = exports.getTreasuryTransferMoney = exports.clearTreasuryTransferMoney = exports.updateTreasuryTransferMoneyLocalData = exports.executeTreasuryTransferMoney = exports.getTreasuryDetail = exports.updateTreasuryTransactionListUIState = exports.fetchTreasuryTransactionList = exports.fetchTreasuryOverviewDetail = exports.getUpdateCardPolicyFetchState = exports.getCardPolicyFormDraft = exports.getCardPolicyDetailView = exports.getCardPolicyDetailFetchState = exports.updateCardPolicyFormDraft = exports.updateCardPolicyFetchStatus = exports.updateCardPolicyDetailFetchStatus = exports.updateCardPolicy = exports.fetchCardPolicyDetail = exports.clearCardPolicyDetail = exports.getCardPolicyTemplateIds = exports.getCardPolicyListView = exports.getCardPolicyListFetchState = exports.getArchiveCardPolicyFetchState = exports.updateCardPolicyListFetchStatus = exports.updateArchiveCardPolicyFetchStatus = exports.prependCardPolicyTemplateIds = exports.fetchCardPolicyList = exports.clearCardPolicyList = exports.archiveCardPolicy = exports.toManualCardPolicyTemplateRequestFromDraft = exports.toBulkCardPolicyTemplateRequestsFromDraft = exports.toCardPolicyTemplateRequestFromDraft = exports.applyAiCardPolicyFormDraftUpdate = exports.deriveAiPolicyReviewRowsFromInputs = exports.buildManualCardPolicyFormDraftSeed = exports.buildUploadReviewRows = exports.buildEmptyLimitRows = exports.buildAiCardPolicyFormDraftSeed = exports.toVendorChipFieldValue = exports.toMccCategoryChipFieldValue = exports.buildVendorChipId = exports.buildMccCategoryChipId = exports.VENDOR_CHIP_ID_PREFIX = exports.MCC_CHIP_ID_PREFIX = exports.toMccCategoryLike = void 0;
|
|
79
|
-
exports.
|
|
80
|
-
exports.
|
|
81
|
-
exports.
|
|
82
|
-
exports.
|
|
83
|
-
exports.
|
|
84
|
-
exports.
|
|
85
|
-
exports.
|
|
86
|
-
exports.getInvoicingConfigView = exports.updateInvoicingConfig = exports.resetInvoicingConfigActionStates = exports.fetchInvoicingConfig = exports.enableInvoicing = exports.clearInvoicingConfig = exports.acceptInvoicingTerms = exports.isStripeConnectedFromSettings = exports.initialInvoicingBrandingFormLocalData = exports.entityToInvoicingBrandingFormLocalData = exports.INVOICING_BUSINESS_ADDRESS_TYPE = exports.getInvoicingSettingsView = exports.getInvoicingSettingsFetchState = exports.getInvoicingSettings = exports.getInvoicingBrandingFormView = exports.updateInvoicingSettings = void 0;
|
|
79
|
+
exports.getInvoiceListView = exports.INVOICING_INVOICE_TABS = exports.ALL_INVOICING_INVOICE_TAB_IDS = exports.updateInvoiceListFilters = exports.setInvoiceActiveTab = exports.fetchInvoiceListPage = exports.fetchInvoiceList = exports.fetchInvoiceKPIs = exports.fetchInvoiceCounts = exports.clearInvoiceList = exports.getInvoicesByIds = exports.getInvoiceById = exports.updateInvoices = exports.removeInvoice = exports.clearAllInvoices = exports.mapAuditLogEntry = exports.toAuditLogEntityRouteOption = exports.isInvoicingEntityLinkable = exports.buildInvoicingEntityPath = exports.toInvoicingDiscountLifecycleActionOption = exports.toInvoicingDiscountLifecycleAction = exports.toInvoicingCatalogProductLifecycleActionOption = exports.toInvoicingCatalogItemLifecycleActionOption = exports.toInvoicingCatalogProductLifecycleAction = exports.toInvoicingCatalogItemLifecycleAction = exports.toInvoicingSubscriptionLifecycleActionOption = exports.toInvoicingSubscriptionLifecycleAction = exports.toInvoicingDunningAction = exports.INVOICING_DISCOUNT_LIFECYCLE_ACTIONS = exports.INVOICING_CATALOG_PRODUCT_LIFECYCLE_ACTIONS = exports.INVOICING_CATALOG_ITEM_LIFECYCLE_ACTIONS = exports.INVOICING_SUBSCRIPTION_LIFECYCLE_ACTIONS = exports.INVOICING_DUNNING_ACTIONS = exports.toKycProvidedDocumentTypeFromAllowed = exports.toKycProvidedDocumentType = exports.DEFAULT_SESSION_CONFIG = exports.SessionManager = exports.getTransactionActivityLogView = exports.fetchTransactionActivityLog = exports.BULK_UPLOAD_BAR_COMPLETE_HOLD_MS = exports.BULK_UPLOAD_AUTOMATCHING_TIMEOUT_MS = exports.getAutoTransferRuleHistory = exports.getAutoTransferRuleById = exports.getAutoTransferRules = exports.clearRuleUpdateLocalData = exports.updateRuleLocalData = exports.fetchAutoTransferReviewDetail = exports.fetchAutoTransferRuleHistory = exports.deleteAutoTransferRule = exports.updateAutoTransferRule = void 0;
|
|
80
|
+
exports.getCreateInvoiceFormView = exports.getInvoicingAuditView = exports.fetchInvoicingAuditLog = exports.clearInvoicingAuditView = exports.getInvoicingOverview = exports.buildPeriodOptions = exports.fetchInvoicingOverview = exports.clearInvoicingOverview = exports.initialRecordPaymentFormLocalData = exports.INVOICING_PAYMENT_METHOD_VALUES = exports.INVOICING_PAYMENT_GATEWAY_VALUES = exports.localDataToRecordPaymentPayload = exports.localDataToInvoiceRecordPaymentBody = exports.initializeRecordPaymentDraftFromInvoice = exports.getCreateCreditNoteView = exports.getCreateCreditNoteFormView = exports.initialCreateCreditNoteFormLocalData = exports.localDataToCreateCreditNotePayload = exports.updateCreateCreditNoteFormDraft = exports.submitCreateCreditNote = exports.resetCreateCreditNote = exports.createCreditNoteSuccess = exports.createCreditNoteFailure = exports.getIssueCreditNoteView = exports.getIssueCreditNoteFormView = exports.initialIssueCreditNoteFormLocalData = exports.INVOICING_CREDIT_NOTE_REASON_CODES = exports.localDataToIssueCreditNotePayload = exports.initializeIssueCreditNoteDraftFromInvoice = exports.computeIssueCreditNoteTotal = exports.updateIssueCreditNoteFormDraft = exports.submitIssueCreditNote = exports.resetIssueCreditNote = exports.issueCreditNoteSuccess = exports.issueCreditNoteFailure = exports.initializeIssueCreditNoteDraft = exports.updateRecordPaymentFormDraft = exports.submitRecordPayment = exports.initializeRecordPaymentDraft = exports.resetRecordPayment = exports.initialInvoicingCreateInvoiceFormLocalData = exports.createInvoiceFormLocalDataToRequest = exports.blankInvoicingCreateInvoiceLineItem = exports.updateInvoicingCreateInvoiceFormDraft = exports.resetCreateInvoice = exports.fetchCreateInvoiceFormPage = exports.createInvoice = exports.getInvoiceDetail = exports.fetchInvoiceDetail = exports.clearAllInvoiceDetail = void 0;
|
|
81
|
+
exports.isTieredCatalogPricingModel = exports.initialInvoicingCatalogItemFormLocalData = exports.entityToInvoicingCatalogItemFormLocalData = exports.blankInvoicingCatalogTier = exports.blankInvoicingCatalogSubFamily = exports.INVOICING_CATALOG_TYPE_VALUES = exports.INVOICING_CATALOG_TRIAL_UNIT_VALUES = exports.INVOICING_CATALOG_TRIAL_END_ACTION_VALUES = exports.INVOICING_CATALOG_TIER_TYPE_VALUES = exports.INVOICING_CATALOG_PRORATION_VALUES = exports.INVOICING_CATALOG_PRICING_MODEL_VALUES = exports.INVOICING_CATALOG_PERIOD_UNIT_VALUES = exports.INVOICING_CATALOG_APPLICABILITY_VALUES = exports.productToCreateSubFamilyFormValues = exports.planToCatalogDetailEditValues = exports.createSubFamilyFormToPayload = exports.catalogDetailEditValuesToSavePayload = exports.updateInvoicingCatalogItemFormDraft = exports.submitInvoicingCatalogItemForm = exports.saveInvoicingCatalogItem = exports.resetEditInvoicingCatalogItemDetailView = exports.createInvoicingCatalogSubFamily = exports.archiveInvoicingCatalogSubFamily = exports.getInvoicingSubscriptionFormView = exports.getEditInvoicingSubscriptionDetailViewState = exports.initialInvoicingSubscriptionFormLocalData = exports.entityToInvoicingSubscriptionFormLocalData = exports.INVOICING_SUBSCRIPTION_SHIPPING_ADDRESS_TYPE = exports.INVOICING_SUBSCRIPTION_BILLING_FREQUENCY_VALUES = exports.updateInvoicingSubscriptionFormDraft = exports.submitInvoicingSubscriptionForm = exports.resetEditInvoicingSubscriptionDetailView = exports.initializeInvoicingSubscriptionAddress = exports.fetchInvoicingSubscriptionFormPage = exports.getInvoicingCustomerFormView = exports.initialInvoicingCustomerFormLocalData = exports.entityToInvoicingCustomerFormLocalData = exports.INVOICING_TAXABILITY_VALUES = exports.INVOICING_NET_TERM_DAY_VALUES = exports.INVOICING_CUSTOMER_TYPE_VALUES = exports.INVOICING_CUSTOMER_BILLING_ADDRESS_TYPE = exports.updateInvoicingCustomerFormDraft = exports.submitInvoicingCustomerFormSuccess = exports.submitInvoicingCustomerFormFailure = exports.submitInvoicingCustomerForm = exports.resetEditInvoicingCustomerDetailView = exports.initializeInvoicingCustomerAddress = exports.getRecordPaymentView = exports.getRecordPaymentInvoiceOptions = exports.getRecordPaymentFormView = void 0;
|
|
82
|
+
exports.removeInvoicingCustomer = exports.clearAllInvoicingCustomers = exports.INVOICING_LIST_PAGE_SIZE = exports.getInvoicingDataImportActionState = exports.uploadInvoicingMigrationFiles = exports.startInvoicingMigration = exports.rollbackInvoicingMigration = exports.retryInvoicingMigration = exports.connectInvoicingChargebee = exports.clearAllInvoicingDataImportActions = exports.getInvoicingDataImportView = exports.setInvoicingActiveMigrationSessionId = exports.fetchInvoicingMigrationSessions = exports.fetchInvoicingMigrationSession = exports.fetchInvoicingMigrationDiagnostics = exports.fetchInvoicingDataImportStatus = exports.clearInvoicingDataImportView = exports.getInvoicingPaymentActionState = exports.runInvoicingPaymentAction = exports.clearInvoicingPaymentAction = exports.getInvoicingDunningActionState = exports.runInvoicingDunningAction = exports.clearInvoicingDunningAction = exports.getInvoicingSubscriptionActionState = exports.runInvoicingSubscriptionAction = exports.clearInvoicingSubscriptionAction = exports.getInvoicingDiscountActionState = exports.runInvoicingDiscountAction = exports.clearInvoicingDiscountAction = exports.getInvoicingCatalogActionState = exports.runInvoicingCatalogProductAction = exports.runInvoicingCatalogPlanAction = exports.clearInvoicingCatalogAction = exports.getInvoicingInvoiceActionState = exports.updateInvoicingInvoice = exports.runInvoicingInvoiceAction = exports.clearInvoicingInvoiceAction = exports.getInvoicingCouponFormView = exports.getEditInvoicingCouponDetailViewState = exports.initialInvoicingCouponFormLocalData = exports.entityToInvoicingCouponFormLocalData = exports.updateInvoicingCouponFormDraft = exports.submitInvoicingCouponForm = exports.saveInvoicingCoupon = exports.resetEditInvoicingCouponDetailView = exports.getSavedInvoicingCatalogItemKind = exports.getSavedInvoicingCatalogItemId = exports.getInvoicingCatalogItemFormView = exports.getInvoicingApplicableCatalogItemOptions = exports.getEditInvoicingCatalogItemDetailViewState = void 0;
|
|
83
|
+
exports.clearAllInvoicingTransactions = exports.getInvoicingSubscriptionDetail = exports.getInvoicingSubscriptionById = exports.fetchInvoicingSubscriptionDetail = exports.clearInvoicingSubscriptionDetailView = exports.getInvoicingSubscriptionListView = exports.INVOICING_SUBSCRIPTION_TABS = exports.INVOICING_SUBSCRIPTION_COLUMNS = exports.ALL_INVOICING_SUBSCRIPTION_TAB_IDS = exports.ALL_INVOICING_SUBSCRIPTION_SORT_KEYS = exports.updateInvoicingSubscriptionFilters = exports.setInvoicingSubscriptionActiveTab = exports.fetchInvoicingSubscriptionListPage = exports.fetchInvoicingSubscriptionList = exports.fetchInvoicingSubscriptionCounts = exports.clearInvoicingSubscriptionListView = exports.updateInvoicingSubscriptions = exports.removeInvoicingSubscription = exports.clearAllInvoicingSubscriptions = exports.resetPromotionalCreditAction = exports.submitAddPromotionalCredits = exports.getInvoicingSetupIntentFetchState = exports.getInvoicingSetupIntent = exports.getInvoicingSentPaymentLinkMagicUrl = exports.getInvoicingSentPaymentLinkEmail = exports.getInvoicingPlaidLinkTokenFetchState = exports.getInvoicingPlaidLinkToken = exports.getInvoicingPaymentMethodSaveState = exports.getInvoicingPaymentLinkSendState = exports.sendInvoicingPaymentLink = exports.saveInvoicingPaymentMethod = exports.resetInvoicingCustomerPaymentMethod = exports.fetchInvoicingPlaidLinkToken = exports.createInvoicingSetupIntent = exports.getInvoicingCustomerDetail = exports.fetchInvoicingCustomerDetailPage = exports.fetchInvoicingCustomerDetail = exports.clearInvoicingCustomerDetailView = exports.getInvoicingCustomerListView = exports.INVOICING_CUSTOMER_TABS = exports.INVOICING_CUSTOMER_COLUMNS = exports.ALL_INVOICING_CUSTOMER_TAB_IDS = exports.ALL_INVOICING_CUSTOMER_SORT_KEYS = exports.updateInvoicingCustomerFilters = exports.setInvoicingCustomerActiveTab = exports.fetchInvoicingCustomerListPage = exports.fetchInvoicingCustomerList = exports.fetchInvoicingCustomerCounts = exports.clearInvoicingCustomerListView = exports.updateInvoicingCustomers = void 0;
|
|
84
|
+
exports.getInvoicingCouponListFilters = exports.getInvoicingCouponListFetchState = exports.getInvoicingCouponCounts = exports.INVOICING_COUPON_TABS = exports.INVOICING_COUPON_COLUMNS = exports.ALL_INVOICING_COUPON_TAB_IDS = exports.ALL_INVOICING_COUPON_SORT_KEYS = exports.updateInvoicingCouponFilters = exports.setInvoicingCouponActiveTab = exports.fetchInvoicingCouponListPage = exports.fetchInvoicingCouponList = exports.fetchInvoicingCouponCounts = exports.clearInvoicingCouponView = exports.updateInvoicingCoupons = exports.removeInvoicingCoupon = exports.clearAllInvoicingCoupons = exports.getInvoicingCreditNoteDetail = exports.getInvoicingCreditNoteById = exports.fetchInvoicingCreditNoteDetail = exports.clearInvoicingCreditNoteDetailView = exports.getInvoicingCreditNoteListView = exports.INVOICING_CREDIT_NOTE_TABS = exports.INVOICING_CREDIT_NOTE_COLUMNS = exports.ALL_INVOICING_CREDIT_NOTE_TAB_IDS = exports.ALL_INVOICING_CREDIT_NOTE_SORT_KEYS = exports.updateInvoicingCreditNoteFilters = exports.setInvoicingCreditNoteActiveTab = exports.fetchInvoicingCreditNoteListPage = exports.fetchInvoicingCreditNoteList = exports.fetchInvoicingCreditNoteCounts = exports.clearInvoicingCreditNoteListView = exports.updateInvoicingCreditNotes = exports.removeInvoicingCreditNote = exports.clearAllInvoicingCreditNotes = exports.getInvoicingTransactionDetail = exports.getInvoicingTransactionById = exports.fetchInvoicingTransactionDetail = exports.clearInvoicingTransactionDetailView = exports.getInvoicingTransactionListView = exports.INVOICING_TRANSACTION_TABS = exports.INVOICING_TRANSACTION_COLUMNS = exports.ALL_INVOICING_TRANSACTION_TAB_IDS = exports.ALL_INVOICING_TRANSACTION_SORT_KEYS = exports.updateInvoicingTransactionFilters = exports.setInvoicingTransactionActiveTab = exports.fetchInvoicingTransactionListPage = exports.fetchInvoicingTransactionList = exports.clearInvoicingTransactionListView = exports.updateInvoicingTransactions = exports.removeInvoicingTransaction = void 0;
|
|
85
|
+
exports.connectInvoicingStripe = exports.clearInvoicingSettings = exports.getInvoicingProductById = exports.getInvoicingPlanById = exports.getInvoicingCatalogItemDetail = exports.fetchInvoicingCatalogItemDetail = exports.clearInvoicingCatalogItemDetailView = exports.getInvoicingCatalogListView = exports.INVOICING_PRODUCT_COLUMNS = exports.ALL_INVOICING_PRODUCT_SORT_KEYS = exports.updateInvoicingCatalogProductFilters = exports.updateInvoicingCatalogPlanFilters = exports.fetchInvoicingCatalogProductList = exports.fetchInvoicingCatalogPlanList = exports.fetchInvoicingCatalogListPage = exports.fetchInvoicingCatalogCounts = exports.clearInvoicingCatalogListView = exports.updateInvoicingProducts = exports.removeInvoicingProduct = exports.clearAllInvoicingProducts = exports.updateInvoicingPlans = exports.removeInvoicingPlan = exports.mergeInvoicingPlanSubFamily = exports.clearAllInvoicingPlans = exports.getInvoicingDunningCaseDetail = exports.getInvoicingDunningCaseById = exports.fetchInvoicingDunningCaseDetail = exports.clearInvoicingDunningCaseDetailView = exports.getInvoicingDunningCaseListView = exports.INVOICING_DUNNING_CASE_TABS = exports.INVOICING_DUNNING_CASE_COLUMNS = exports.ALL_INVOICING_DUNNING_CASE_TAB_IDS = exports.ALL_INVOICING_DUNNING_CASE_SORT_KEYS = exports.updateInvoicingDunningCaseFilters = exports.setInvoicingDunningCaseActiveTab = exports.fetchInvoicingDunningCaseListPage = exports.fetchInvoicingDunningCaseList = exports.fetchInvoicingDunningCaseCounts = exports.clearInvoicingDunningCaseListView = exports.updateInvoicingDunningCases = exports.removeInvoicingDunningCase = exports.clearAllInvoicingDunningCases = exports.getInvoicingCouponDetail = exports.fetchInvoicingCouponDetail = exports.clearInvoicingCouponDetailView = exports.getInvoicingCouponById = exports.getInvoicingCouponListView = exports.getInvoicingCouponListNextCursor = exports.getInvoicingCouponListItems = exports.getInvoicingCouponListHasMore = void 0;
|
|
86
|
+
exports.getInvoicingConfigView = exports.updateInvoicingConfig = exports.resetInvoicingConfigActionStates = exports.fetchInvoicingConfig = exports.enableInvoicing = exports.clearInvoicingConfig = exports.acceptInvoicingTerms = exports.isStripeConnectedFromSettings = exports.initialInvoicingBrandingFormLocalData = exports.entityToInvoicingBrandingFormLocalData = exports.INVOICING_BUSINESS_ADDRESS_TYPE = exports.getInvoicingSettingsView = exports.getInvoicingSettingsFetchState = exports.getInvoicingSettings = exports.getInvoicingBrandingFormView = exports.updateInvoicingSettings = exports.updateInvoicingBrandingFormDraft = exports.submitInvoicingBrandingForm = exports.saveInvoicingSettings = exports.resetSaveInvoicingSettings = exports.resetInvoicingBrandingFormDraft = exports.fetchInvoicingSettings = exports.disconnectInvoicingStripe = void 0;
|
|
87
87
|
const allowedValue_1 = require("./commonStateTypes/allowedValue");
|
|
88
88
|
Object.defineProperty(exports, "isAllowedValueWithCode", { enumerable: true, get: function () { return allowedValue_1.isAllowedValueWithCode; } });
|
|
89
89
|
Object.defineProperty(exports, "isAllowedValueWithID", { enumerable: true, get: function () { return allowedValue_1.isAllowedValueWithID; } });
|
|
@@ -2651,6 +2651,7 @@ Object.defineProperty(exports, "fetchInvoiceCounts", { enumerable: true, get: fu
|
|
|
2651
2651
|
Object.defineProperty(exports, "fetchInvoiceKPIs", { enumerable: true, get: function () { return invoiceListReducer_1.fetchInvoiceKPIs; } });
|
|
2652
2652
|
Object.defineProperty(exports, "fetchInvoiceList", { enumerable: true, get: function () { return invoiceListReducer_1.fetchInvoiceList; } });
|
|
2653
2653
|
Object.defineProperty(exports, "fetchInvoiceListPage", { enumerable: true, get: function () { return invoiceListReducer_1.fetchInvoiceListPage; } });
|
|
2654
|
+
Object.defineProperty(exports, "setInvoiceActiveTab", { enumerable: true, get: function () { return invoiceListReducer_1.setInvoiceActiveTab; } });
|
|
2654
2655
|
Object.defineProperty(exports, "updateInvoiceListFilters", { enumerable: true, get: function () { return invoiceListReducer_1.updateInvoiceListFilters; } });
|
|
2655
2656
|
var invoiceListState_1 = require("./view/invoicing/invoiceList/invoiceListState");
|
|
2656
2657
|
Object.defineProperty(exports, "ALL_INVOICING_INVOICE_TAB_IDS", { enumerable: true, get: function () { return invoiceListState_1.ALL_INVOICING_INVOICE_TAB_IDS; } });
|
|
@@ -2866,6 +2867,7 @@ Object.defineProperty(exports, "clearInvoicingCustomerListView", { enumerable: t
|
|
|
2866
2867
|
Object.defineProperty(exports, "fetchInvoicingCustomerCounts", { enumerable: true, get: function () { return invoicingCustomerListViewReducer_1.fetchInvoicingCustomerCounts; } });
|
|
2867
2868
|
Object.defineProperty(exports, "fetchInvoicingCustomerList", { enumerable: true, get: function () { return invoicingCustomerListViewReducer_1.fetchInvoicingCustomerList; } });
|
|
2868
2869
|
Object.defineProperty(exports, "fetchInvoicingCustomerListPage", { enumerable: true, get: function () { return invoicingCustomerListViewReducer_1.fetchInvoicingCustomerListPage; } });
|
|
2870
|
+
Object.defineProperty(exports, "setInvoicingCustomerActiveTab", { enumerable: true, get: function () { return invoicingCustomerListViewReducer_1.setInvoicingCustomerActiveTab; } });
|
|
2869
2871
|
Object.defineProperty(exports, "updateInvoicingCustomerFilters", { enumerable: true, get: function () { return invoicingCustomerListViewReducer_1.updateInvoicingCustomerFilters; } });
|
|
2870
2872
|
var invoicingCustomerListViewState_1 = require("./view/invoicing/invoicingCustomerListView/invoicingCustomerListViewState");
|
|
2871
2873
|
Object.defineProperty(exports, "ALL_INVOICING_CUSTOMER_SORT_KEYS", { enumerable: true, get: function () { return invoicingCustomerListViewState_1.ALL_INVOICING_CUSTOMER_SORT_KEYS; } });
|
|
@@ -2910,6 +2912,7 @@ Object.defineProperty(exports, "clearInvoicingSubscriptionListView", { enumerabl
|
|
|
2910
2912
|
Object.defineProperty(exports, "fetchInvoicingSubscriptionCounts", { enumerable: true, get: function () { return invoicingSubscriptionListViewReducer_1.fetchInvoicingSubscriptionCounts; } });
|
|
2911
2913
|
Object.defineProperty(exports, "fetchInvoicingSubscriptionList", { enumerable: true, get: function () { return invoicingSubscriptionListViewReducer_1.fetchInvoicingSubscriptionList; } });
|
|
2912
2914
|
Object.defineProperty(exports, "fetchInvoicingSubscriptionListPage", { enumerable: true, get: function () { return invoicingSubscriptionListViewReducer_1.fetchInvoicingSubscriptionListPage; } });
|
|
2915
|
+
Object.defineProperty(exports, "setInvoicingSubscriptionActiveTab", { enumerable: true, get: function () { return invoicingSubscriptionListViewReducer_1.setInvoicingSubscriptionActiveTab; } });
|
|
2913
2916
|
Object.defineProperty(exports, "updateInvoicingSubscriptionFilters", { enumerable: true, get: function () { return invoicingSubscriptionListViewReducer_1.updateInvoicingSubscriptionFilters; } });
|
|
2914
2917
|
var invoicingSubscriptionListViewState_1 = require("./view/invoicing/invoicingSubscriptionListView/invoicingSubscriptionListViewState");
|
|
2915
2918
|
Object.defineProperty(exports, "ALL_INVOICING_SUBSCRIPTION_SORT_KEYS", { enumerable: true, get: function () { return invoicingSubscriptionListViewState_1.ALL_INVOICING_SUBSCRIPTION_SORT_KEYS; } });
|
|
@@ -2933,6 +2936,7 @@ var invoicingTransactionListViewReducer_1 = require("./view/invoicing/invoicingT
|
|
|
2933
2936
|
Object.defineProperty(exports, "clearInvoicingTransactionListView", { enumerable: true, get: function () { return invoicingTransactionListViewReducer_1.clearInvoicingTransactionListView; } });
|
|
2934
2937
|
Object.defineProperty(exports, "fetchInvoicingTransactionList", { enumerable: true, get: function () { return invoicingTransactionListViewReducer_1.fetchInvoicingTransactionList; } });
|
|
2935
2938
|
Object.defineProperty(exports, "fetchInvoicingTransactionListPage", { enumerable: true, get: function () { return invoicingTransactionListViewReducer_1.fetchInvoicingTransactionListPage; } });
|
|
2939
|
+
Object.defineProperty(exports, "setInvoicingTransactionActiveTab", { enumerable: true, get: function () { return invoicingTransactionListViewReducer_1.setInvoicingTransactionActiveTab; } });
|
|
2936
2940
|
Object.defineProperty(exports, "updateInvoicingTransactionFilters", { enumerable: true, get: function () { return invoicingTransactionListViewReducer_1.updateInvoicingTransactionFilters; } });
|
|
2937
2941
|
var invoicingTransactionListViewState_1 = require("./view/invoicing/invoicingTransactionListView/invoicingTransactionListViewState");
|
|
2938
2942
|
Object.defineProperty(exports, "ALL_INVOICING_TRANSACTION_SORT_KEYS", { enumerable: true, get: function () { return invoicingTransactionListViewState_1.ALL_INVOICING_TRANSACTION_SORT_KEYS; } });
|
|
@@ -2957,6 +2961,7 @@ Object.defineProperty(exports, "clearInvoicingCreditNoteListView", { enumerable:
|
|
|
2957
2961
|
Object.defineProperty(exports, "fetchInvoicingCreditNoteCounts", { enumerable: true, get: function () { return invoicingCreditNoteListViewReducer_1.fetchInvoicingCreditNoteCounts; } });
|
|
2958
2962
|
Object.defineProperty(exports, "fetchInvoicingCreditNoteList", { enumerable: true, get: function () { return invoicingCreditNoteListViewReducer_1.fetchInvoicingCreditNoteList; } });
|
|
2959
2963
|
Object.defineProperty(exports, "fetchInvoicingCreditNoteListPage", { enumerable: true, get: function () { return invoicingCreditNoteListViewReducer_1.fetchInvoicingCreditNoteListPage; } });
|
|
2964
|
+
Object.defineProperty(exports, "setInvoicingCreditNoteActiveTab", { enumerable: true, get: function () { return invoicingCreditNoteListViewReducer_1.setInvoicingCreditNoteActiveTab; } });
|
|
2960
2965
|
Object.defineProperty(exports, "updateInvoicingCreditNoteFilters", { enumerable: true, get: function () { return invoicingCreditNoteListViewReducer_1.updateInvoicingCreditNoteFilters; } });
|
|
2961
2966
|
var invoicingCreditNoteListViewState_1 = require("./view/invoicing/invoicingCreditNoteListView/invoicingCreditNoteListViewState");
|
|
2962
2967
|
Object.defineProperty(exports, "ALL_INVOICING_CREDIT_NOTE_SORT_KEYS", { enumerable: true, get: function () { return invoicingCreditNoteListViewState_1.ALL_INVOICING_CREDIT_NOTE_SORT_KEYS; } });
|
|
@@ -2981,6 +2986,7 @@ Object.defineProperty(exports, "clearInvoicingCouponView", { enumerable: true, g
|
|
|
2981
2986
|
Object.defineProperty(exports, "fetchInvoicingCouponCounts", { enumerable: true, get: function () { return couponViewReducer_1.fetchInvoicingCouponCounts; } });
|
|
2982
2987
|
Object.defineProperty(exports, "fetchInvoicingCouponList", { enumerable: true, get: function () { return couponViewReducer_1.fetchInvoicingCouponList; } });
|
|
2983
2988
|
Object.defineProperty(exports, "fetchInvoicingCouponListPage", { enumerable: true, get: function () { return couponViewReducer_1.fetchInvoicingCouponListPage; } });
|
|
2989
|
+
Object.defineProperty(exports, "setInvoicingCouponActiveTab", { enumerable: true, get: function () { return couponViewReducer_1.setInvoicingCouponActiveTab; } });
|
|
2984
2990
|
Object.defineProperty(exports, "updateInvoicingCouponFilters", { enumerable: true, get: function () { return couponViewReducer_1.updateInvoicingCouponFilters; } });
|
|
2985
2991
|
var couponViewState_1 = require("./view/invoicing/couponView/couponViewState");
|
|
2986
2992
|
Object.defineProperty(exports, "ALL_INVOICING_COUPON_SORT_KEYS", { enumerable: true, get: function () { return couponViewState_1.ALL_INVOICING_COUPON_SORT_KEYS; } });
|
|
@@ -3012,6 +3018,7 @@ Object.defineProperty(exports, "clearInvoicingDunningCaseListView", { enumerable
|
|
|
3012
3018
|
Object.defineProperty(exports, "fetchInvoicingDunningCaseCounts", { enumerable: true, get: function () { return invoicingDunningCaseListViewReducer_1.fetchInvoicingDunningCaseCounts; } });
|
|
3013
3019
|
Object.defineProperty(exports, "fetchInvoicingDunningCaseList", { enumerable: true, get: function () { return invoicingDunningCaseListViewReducer_1.fetchInvoicingDunningCaseList; } });
|
|
3014
3020
|
Object.defineProperty(exports, "fetchInvoicingDunningCaseListPage", { enumerable: true, get: function () { return invoicingDunningCaseListViewReducer_1.fetchInvoicingDunningCaseListPage; } });
|
|
3021
|
+
Object.defineProperty(exports, "setInvoicingDunningCaseActiveTab", { enumerable: true, get: function () { return invoicingDunningCaseListViewReducer_1.setInvoicingDunningCaseActiveTab; } });
|
|
3015
3022
|
Object.defineProperty(exports, "updateInvoicingDunningCaseFilters", { enumerable: true, get: function () { return invoicingDunningCaseListViewReducer_1.updateInvoicingDunningCaseFilters; } });
|
|
3016
3023
|
var invoicingDunningCaseListViewState_1 = require("./view/invoicing/invoicingDunningCaseListView/invoicingDunningCaseListViewState");
|
|
3017
3024
|
Object.defineProperty(exports, "ALL_INVOICING_DUNNING_CASE_SORT_KEYS", { enumerable: true, get: function () { return invoicingDunningCaseListViewState_1.ALL_INVOICING_DUNNING_CASE_SORT_KEYS; } });
|
|
@@ -16,9 +16,6 @@ const shouldFetch = (fetchStateAndError, cacheOverride) => cacheOverride ||
|
|
|
16
16
|
fetchStateAndError.fetchState !== 'In-Progress');
|
|
17
17
|
const buildQuery = (filters, cursor, sort) => {
|
|
18
18
|
const params = new URLSearchParams();
|
|
19
|
-
if (filters.status != null && filters.status.length > 0) {
|
|
20
|
-
params.set('status', filters.status);
|
|
21
|
-
}
|
|
22
19
|
if (filters.search != null && filters.search.length > 0) {
|
|
23
20
|
params.set('search', filters.search);
|
|
24
21
|
}
|
|
@@ -27,7 +27,7 @@ export declare const fetchInvoicingCouponList: import("@reduxjs/toolkit").Action
|
|
|
27
27
|
ids: ID[];
|
|
28
28
|
keepExistingListItems: boolean;
|
|
29
29
|
nextCursor: string | null;
|
|
30
|
-
}, "invoicingCouponView/updateInvoicingCouponList">, updateInvoicingCouponListFailure: import("@reduxjs/toolkit").ActionCreatorWithPayload<ZeniAPIStatus<Record<string, unknown>>, "invoicingCouponView/updateInvoicingCouponListFailure">, fetchInvoicingCouponCounts: import("@reduxjs/toolkit").ActionCreatorWithoutPayload<"invoicingCouponView/fetchInvoicingCouponCounts">, updateInvoicingCouponCounts: import("@reduxjs/toolkit").ActionCreatorWithPayload<InvoicingListCounts, "invoicingCouponView/updateInvoicingCouponCounts">, updateInvoicingCouponCountsFailure: import("@reduxjs/toolkit").ActionCreatorWithPayload<ZeniAPIStatus<Record<string, unknown>>, "invoicingCouponView/updateInvoicingCouponCountsFailure">, updateInvoicingCouponFilters: import("@reduxjs/toolkit").ActionCreatorWithPayload<InvoicingCouponFilters, "invoicingCouponView/updateInvoicingCouponFilters">, addInvoicingCouponToList: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
|
|
30
|
+
}, "invoicingCouponView/updateInvoicingCouponList">, updateInvoicingCouponListFailure: import("@reduxjs/toolkit").ActionCreatorWithPayload<ZeniAPIStatus<Record<string, unknown>>, "invoicingCouponView/updateInvoicingCouponListFailure">, fetchInvoicingCouponCounts: import("@reduxjs/toolkit").ActionCreatorWithoutPayload<"invoicingCouponView/fetchInvoicingCouponCounts">, updateInvoicingCouponCounts: import("@reduxjs/toolkit").ActionCreatorWithPayload<InvoicingListCounts, "invoicingCouponView/updateInvoicingCouponCounts">, updateInvoicingCouponCountsFailure: import("@reduxjs/toolkit").ActionCreatorWithPayload<ZeniAPIStatus<Record<string, unknown>>, "invoicingCouponView/updateInvoicingCouponCountsFailure">, updateInvoicingCouponFilters: import("@reduxjs/toolkit").ActionCreatorWithPayload<InvoicingCouponFilters, "invoicingCouponView/updateInvoicingCouponFilters">, setInvoicingCouponActiveTab: import("@reduxjs/toolkit").ActionCreatorWithPayload<"active" | "inactive" | "all", "invoicingCouponView/setInvoicingCouponActiveTab">, addInvoicingCouponToList: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
|
|
31
31
|
id: ID;
|
|
32
32
|
status?: InvoicingCouponStatus;
|
|
33
33
|
}, "invoicingCouponView/addInvoicingCouponToList">, clearInvoicingCouponView: import("@reduxjs/toolkit").ActionCreatorWithoutPayload<"invoicingCouponView/clearInvoicingCouponView">;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
var _a;
|
|
3
3
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
-
exports.clearInvoicingCouponView = exports.addInvoicingCouponToList = exports.updateInvoicingCouponFilters = exports.updateInvoicingCouponCountsFailure = exports.updateInvoicingCouponCounts = exports.fetchInvoicingCouponCounts = exports.updateInvoicingCouponListFailure = exports.updateInvoicingCouponList = exports.fetchInvoicingCouponListPage = exports.fetchInvoicingCouponList = exports.initialState = void 0;
|
|
4
|
+
exports.clearInvoicingCouponView = exports.addInvoicingCouponToList = exports.setInvoicingCouponActiveTab = exports.updateInvoicingCouponFilters = exports.updateInvoicingCouponCountsFailure = exports.updateInvoicingCouponCounts = exports.fetchInvoicingCouponCounts = exports.updateInvoicingCouponListFailure = exports.updateInvoicingCouponList = exports.fetchInvoicingCouponListPage = exports.fetchInvoicingCouponList = exports.initialState = void 0;
|
|
5
5
|
const toolkit_1 = require("@reduxjs/toolkit");
|
|
6
6
|
// The discounts-list tabs look up counts by tab id ('active' / 'inactive'),
|
|
7
7
|
// while a coupon's status is 'active' | 'expired' | 'archived'. Collapse the
|
|
@@ -13,6 +13,7 @@ function couponStatusToTabCountKey(status) {
|
|
|
13
13
|
exports.initialState = {
|
|
14
14
|
fetchState: 'Not-Started',
|
|
15
15
|
error: undefined,
|
|
16
|
+
activeTab: 'all',
|
|
16
17
|
ids: [],
|
|
17
18
|
nextCursor: null,
|
|
18
19
|
filters: {},
|
|
@@ -91,6 +92,11 @@ const couponView = (0, toolkit_1.createSlice)({
|
|
|
91
92
|
updateInvoicingCouponFilters(draft, action) {
|
|
92
93
|
draft.filters = action.payload;
|
|
93
94
|
},
|
|
95
|
+
// Select a status tab. The list API ignores `status` (returns all statuses),
|
|
96
|
+
// so the selector filters rows to this tab client-side — no refetch needed.
|
|
97
|
+
setInvoicingCouponActiveTab(draft, action) {
|
|
98
|
+
draft.activeTab = action.payload;
|
|
99
|
+
},
|
|
94
100
|
// Reflect a newly created coupon in the cached discounts list + tab counts
|
|
95
101
|
// so the list page shows it without refetching from the server. Edits keep
|
|
96
102
|
// the same id/counts, so only creates dispatch this.
|
|
@@ -109,5 +115,5 @@ const couponView = (0, toolkit_1.createSlice)({
|
|
|
109
115
|
},
|
|
110
116
|
},
|
|
111
117
|
});
|
|
112
|
-
_a = couponView.actions, exports.fetchInvoicingCouponList = _a.fetchInvoicingCouponList, exports.fetchInvoicingCouponListPage = _a.fetchInvoicingCouponListPage, exports.updateInvoicingCouponList = _a.updateInvoicingCouponList, exports.updateInvoicingCouponListFailure = _a.updateInvoicingCouponListFailure, exports.fetchInvoicingCouponCounts = _a.fetchInvoicingCouponCounts, exports.updateInvoicingCouponCounts = _a.updateInvoicingCouponCounts, exports.updateInvoicingCouponCountsFailure = _a.updateInvoicingCouponCountsFailure, exports.updateInvoicingCouponFilters = _a.updateInvoicingCouponFilters, exports.addInvoicingCouponToList = _a.addInvoicingCouponToList, exports.clearInvoicingCouponView = _a.clearInvoicingCouponView;
|
|
118
|
+
_a = couponView.actions, exports.fetchInvoicingCouponList = _a.fetchInvoicingCouponList, exports.fetchInvoicingCouponListPage = _a.fetchInvoicingCouponListPage, exports.updateInvoicingCouponList = _a.updateInvoicingCouponList, exports.updateInvoicingCouponListFailure = _a.updateInvoicingCouponListFailure, exports.fetchInvoicingCouponCounts = _a.fetchInvoicingCouponCounts, exports.updateInvoicingCouponCounts = _a.updateInvoicingCouponCounts, exports.updateInvoicingCouponCountsFailure = _a.updateInvoicingCouponCountsFailure, exports.updateInvoicingCouponFilters = _a.updateInvoicingCouponFilters, exports.setInvoicingCouponActiveTab = _a.setInvoicingCouponActiveTab, exports.addInvoicingCouponToList = _a.addInvoicingCouponToList, exports.clearInvoicingCouponView = _a.clearInvoicingCouponView;
|
|
113
119
|
exports.default = couponView.reducer;
|
|
@@ -12,6 +12,7 @@ export declare const getInvoicingCouponListHasMore: (state: RootState) => boolea
|
|
|
12
12
|
export declare const getInvoicingCouponListFilters: (state: RootState) => InvoicingCouponFilters;
|
|
13
13
|
export declare const getInvoicingCouponCounts: (state: RootState) => InvoicingListCounts;
|
|
14
14
|
export interface InvoicingCouponListView extends SelectorView {
|
|
15
|
+
activeTab: InvoicingCouponTabId;
|
|
15
16
|
columns: InvoicingCouponColumnConfig[];
|
|
16
17
|
count: InvoicingListCounts;
|
|
17
18
|
countsFetchState: FetchStateAndError;
|
|
@@ -26,18 +26,31 @@ exports.getInvoicingCouponCounts = getInvoicingCouponCounts;
|
|
|
26
26
|
* array (and the wrapping view object) keep referential identity until the
|
|
27
27
|
* coupon entity slice or the list-view slice actually change.
|
|
28
28
|
*/
|
|
29
|
-
exports.getInvoicingCouponListView = (0, toolkit_1.createSelector)((state) => state.invoicingCouponState, (state) => state.invoicingCouponViewState, (couponState, listViewState) =>
|
|
30
|
-
|
|
31
|
-
|
|
29
|
+
exports.getInvoicingCouponListView = (0, toolkit_1.createSelector)((state) => state.invoicingCouponState, (state) => state.invoicingCouponViewState, (couponState, listViewState) => {
|
|
30
|
+
const { activeTab } = listViewState;
|
|
31
|
+
const allCoupons = listViewState.ids
|
|
32
32
|
.map((id) => couponState.couponByID[id])
|
|
33
|
-
.filter((item) => item != null)
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
33
|
+
.filter((item) => item != null);
|
|
34
|
+
// The list API ignores `status`, so it returns every status; filter to the
|
|
35
|
+
// active tab client-side. 'all' shows everything, 'active' shows only active
|
|
36
|
+
// coupons, and 'inactive' shows every non-active status (undefined included).
|
|
37
|
+
const coupons = activeTab === 'all'
|
|
38
|
+
? allCoupons
|
|
39
|
+
: allCoupons.filter((coupon) => activeTab === 'active'
|
|
40
|
+
? coupon.status === 'active'
|
|
41
|
+
: coupon.status !== 'active');
|
|
42
|
+
return {
|
|
43
|
+
activeTab,
|
|
44
|
+
columns: couponViewState_1.INVOICING_COUPON_COLUMNS,
|
|
45
|
+
coupons,
|
|
46
|
+
count: listViewState.counts,
|
|
47
|
+
countsFetchState: listViewState.countsFetchState,
|
|
48
|
+
filters: listViewState.filters,
|
|
49
|
+
nextCursor: listViewState.nextCursor,
|
|
50
|
+
tabIds: couponViewState_1.INVOICING_COUPON_TABS,
|
|
51
|
+
fetchState: listViewState.fetchState,
|
|
52
|
+
error: listViewState.error,
|
|
53
|
+
sort: listViewState.sort,
|
|
54
|
+
version: 1.0,
|
|
55
|
+
};
|
|
56
|
+
});
|
|
@@ -3,7 +3,6 @@ import { InvoicingListCounts } from '../../../entity/invoicing/invoicingCommonPa
|
|
|
3
3
|
import { InvoicingListSort } from '../invoicingApiHelper';
|
|
4
4
|
export interface InvoicingCouponFilters {
|
|
5
5
|
search?: string;
|
|
6
|
-
status?: string;
|
|
7
6
|
}
|
|
8
7
|
export declare const ALL_INVOICING_COUPON_SORT_KEYS: readonly ["coupon_id", "name", "discount", "duration", "created", "valid_till", "apply_on", "status", "redemptions"];
|
|
9
8
|
export declare const toInvoicingCouponSortKey: (v: string) => "status" | "name" | "redemptions" | "created" | "coupon_id" | "discount" | "duration" | "valid_till" | "apply_on";
|
|
@@ -31,6 +30,8 @@ export type InvoicingCouponTabId = ReturnType<typeof toInvoicingCouponTabId>;
|
|
|
31
30
|
*/
|
|
32
31
|
export declare const INVOICING_COUPON_TABS: InvoicingCouponTabId[];
|
|
33
32
|
export interface InvoicingCouponViewState extends FetchedState {
|
|
33
|
+
/** Selected status tab (CES-owned so it persists across page revisits). */
|
|
34
|
+
activeTab: InvoicingCouponTabId;
|
|
34
35
|
counts: InvoicingListCounts;
|
|
35
36
|
countsFetchState: FetchStateAndError;
|
|
36
37
|
filters: InvoicingCouponFilters;
|
|
@@ -6,4 +6,4 @@ import { RootState } from '../../../reducer';
|
|
|
6
6
|
import { ZeniAPI } from '../../../zeniAPI';
|
|
7
7
|
import { fetchInvoiceList, updateInvoiceList, updateInvoiceListFailure, updateInvoiceListFilters } from './invoiceListReducer';
|
|
8
8
|
export type ActionType = ReturnType<typeof fetchInvoiceList> | ReturnType<typeof updateInvoiceList> | ReturnType<typeof updateInvoiceListFailure> | ReturnType<typeof updateInvoiceListFilters> | ReturnType<typeof updateAddresses> | ReturnType<typeof updateInvoices>;
|
|
9
|
-
export declare const fetchInvoiceListEpic: (actions$: ActionsObservable<ActionType>,
|
|
9
|
+
export declare const fetchInvoiceListEpic: (actions$: ActionsObservable<ActionType>, state$: StateObservable<RootState>, zeniAPI: ZeniAPI) => Observable<ActionType>;
|
|
@@ -9,10 +9,10 @@ const invoiceReducer_1 = require("../../../entity/invoicing/invoice/invoiceReduc
|
|
|
9
9
|
const responsePayload_1 = require("../../../responsePayload");
|
|
10
10
|
const invoicingApiHelper_1 = require("../invoicingApiHelper");
|
|
11
11
|
const invoiceListReducer_1 = require("./invoiceListReducer");
|
|
12
|
-
const buildInvoiceListQuery = (filters, cursor, sort) => {
|
|
12
|
+
const buildInvoiceListQuery = (filters, status, cursor, sort) => {
|
|
13
13
|
const params = new URLSearchParams();
|
|
14
|
-
if (
|
|
15
|
-
params.set('status',
|
|
14
|
+
if (status != null && status.length > 0) {
|
|
15
|
+
params.set('status', status);
|
|
16
16
|
}
|
|
17
17
|
if (filters.customerId != null) {
|
|
18
18
|
params.set('customer_id', filters.customerId);
|
|
@@ -36,9 +36,11 @@ const buildInvoiceListQuery = (filters, cursor, sort) => {
|
|
|
36
36
|
(0, invoicingApiHelper_1.applyListSortParams)(params, sort);
|
|
37
37
|
return params;
|
|
38
38
|
};
|
|
39
|
-
const fetchInvoiceListEpic = (actions$,
|
|
39
|
+
const fetchInvoiceListEpic = (actions$, state$, zeniAPI) => actions$.pipe((0, operators_1.filter)(invoiceListReducer_1.fetchInvoiceList.match), (0, operators_1.switchMap)((action) => {
|
|
40
40
|
const { filters, cursor, keepExistingListItems, sort } = action.payload;
|
|
41
|
-
const
|
|
41
|
+
const { activeTab } = state$.value.invoicingInvoiceListState;
|
|
42
|
+
const status = activeTab !== 'all' ? activeTab : undefined;
|
|
43
|
+
const apiUrl = (0, invoicingApiHelper_1.withQuery)(`${zeniAPI.apiEndPoints.invoicingMicroServiceBaseUrl}/1.0/invoices`, buildInvoiceListQuery(filters, status, cursor, sort));
|
|
42
44
|
return zeniAPI.getJSON(apiUrl).pipe((0, operators_1.switchMap)((response) => {
|
|
43
45
|
if ((0, responsePayload_1.isSuccessResponse)(response)) {
|
|
44
46
|
const items = response.data?.items ?? [];
|
|
@@ -19,8 +19,9 @@ const shouldFetch = (fetchStateAndError, cacheOverride) => cacheOverride ||
|
|
|
19
19
|
const fetchInvoiceListPageEpic = (actions$, state$) => actions$.pipe((0, operators_1.filter)(invoiceListReducer_1.fetchInvoiceListPage.match), (0, operators_1.mergeMap)((action) => {
|
|
20
20
|
const { cacheOverride, filters, sort } = action.payload;
|
|
21
21
|
const state = state$.value.invoicingInvoiceListState;
|
|
22
|
+
const activeTabState = state.byTab[state.activeTab];
|
|
22
23
|
const pageActions = [];
|
|
23
|
-
if (shouldFetch({ fetchState:
|
|
24
|
+
if (shouldFetch({ fetchState: activeTabState.fetchState, error: activeTabState.error }, cacheOverride)) {
|
|
24
25
|
pageActions.push((0, invoiceListReducer_1.fetchInvoiceList)({ filters, sort }));
|
|
25
26
|
}
|
|
26
27
|
if (shouldFetch(state.countsFetchState, cacheOverride)) {
|
|
@@ -6,9 +6,10 @@ import { ZeniAPIStatus } from '../../../responsePayload';
|
|
|
6
6
|
import { InvoicingListSort } from '../invoicingApiHelper';
|
|
7
7
|
import { InvoiceListFilters, InvoiceListState } from './invoiceListState';
|
|
8
8
|
/**
|
|
9
|
-
* Whether two invoice-list queries
|
|
10
|
-
*
|
|
11
|
-
*
|
|
9
|
+
* Whether two invoice-list queries share the same base (tab-independent) query.
|
|
10
|
+
* The status tab is server-side per-tab, so it is excluded here — when the base
|
|
11
|
+
* query changes (search / customer / subscription / dates / sort) every per-tab
|
|
12
|
+
* cache is stale and the reducer resets them all.
|
|
12
13
|
*/
|
|
13
14
|
export declare const sameInvoiceListQuery: (a: {
|
|
14
15
|
filters: InvoiceListFilters;
|
|
@@ -40,7 +41,7 @@ export declare const fetchInvoiceList: import("@reduxjs/toolkit").ActionCreatorW
|
|
|
40
41
|
invoices: InvoicingInvoicePayload[];
|
|
41
42
|
keepExistingListItems: boolean;
|
|
42
43
|
nextCursor: string | null;
|
|
43
|
-
}, "invoicingInvoiceList/updateInvoiceList">, updateInvoiceListFailure: import("@reduxjs/toolkit").ActionCreatorWithPayload<ZeniAPIStatus<Record<string, unknown>>, "invoicingInvoiceList/updateInvoiceListFailure">, fetchInvoiceCounts: import("@reduxjs/toolkit").ActionCreatorWithoutPayload<"invoicingInvoiceList/fetchInvoiceCounts">, updateInvoiceCounts: import("@reduxjs/toolkit").ActionCreatorWithPayload<InvoicingListCounts, "invoicingInvoiceList/updateInvoiceCounts">, updateInvoiceCountsFailure: import("@reduxjs/toolkit").ActionCreatorWithPayload<ZeniAPIStatus<Record<string, unknown>>, "invoicingInvoiceList/updateInvoiceCountsFailure">, fetchInvoiceKPIs: import("@reduxjs/toolkit").ActionCreatorWithoutPayload<"invoicingInvoiceList/fetchInvoiceKPIs">, updateInvoiceKPIs: import("@reduxjs/toolkit").ActionCreatorWithPayload<InvoicingInvoiceKPIs, "invoicingInvoiceList/updateInvoiceKPIs">, updateInvoiceKPIsFailure: import("@reduxjs/toolkit").ActionCreatorWithPayload<ZeniAPIStatus<Record<string, unknown>>, "invoicingInvoiceList/updateInvoiceKPIsFailure">, updateInvoiceListFilters: import("@reduxjs/toolkit").ActionCreatorWithPayload<InvoiceListFilters, "invoicingInvoiceList/updateInvoiceListFilters">, addInvoiceToList: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
|
|
44
|
+
}, "invoicingInvoiceList/updateInvoiceList">, updateInvoiceListFailure: import("@reduxjs/toolkit").ActionCreatorWithPayload<ZeniAPIStatus<Record<string, unknown>>, "invoicingInvoiceList/updateInvoiceListFailure">, fetchInvoiceCounts: import("@reduxjs/toolkit").ActionCreatorWithoutPayload<"invoicingInvoiceList/fetchInvoiceCounts">, updateInvoiceCounts: import("@reduxjs/toolkit").ActionCreatorWithPayload<InvoicingListCounts, "invoicingInvoiceList/updateInvoiceCounts">, updateInvoiceCountsFailure: import("@reduxjs/toolkit").ActionCreatorWithPayload<ZeniAPIStatus<Record<string, unknown>>, "invoicingInvoiceList/updateInvoiceCountsFailure">, fetchInvoiceKPIs: import("@reduxjs/toolkit").ActionCreatorWithoutPayload<"invoicingInvoiceList/fetchInvoiceKPIs">, updateInvoiceKPIs: import("@reduxjs/toolkit").ActionCreatorWithPayload<InvoicingInvoiceKPIs, "invoicingInvoiceList/updateInvoiceKPIs">, updateInvoiceKPIsFailure: import("@reduxjs/toolkit").ActionCreatorWithPayload<ZeniAPIStatus<Record<string, unknown>>, "invoicingInvoiceList/updateInvoiceKPIsFailure">, updateInvoiceListFilters: import("@reduxjs/toolkit").ActionCreatorWithPayload<InvoiceListFilters, "invoicingInvoiceList/updateInvoiceListFilters">, setInvoiceActiveTab: import("@reduxjs/toolkit").ActionCreatorWithPayload<"paid" | "voided" | "partially_paid" | "payment_due" | "not_paid" | "all", "invoicingInvoiceList/setInvoiceActiveTab">, addInvoiceToList: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
|
|
44
45
|
id: ID;
|
|
45
46
|
status: InvoicingInvoiceStatus;
|
|
46
47
|
}, "invoicingInvoiceList/addInvoiceToList">, clearInvoiceList: import("@reduxjs/toolkit").ActionCreatorWithoutPayload<"invoicingInvoiceList/clearInvoiceList">;
|
|
@@ -1,35 +1,39 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
var _a;
|
|
3
3
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
-
exports.clearInvoiceList = exports.addInvoiceToList = exports.updateInvoiceListFilters = exports.updateInvoiceKPIsFailure = exports.updateInvoiceKPIs = exports.fetchInvoiceKPIs = exports.updateInvoiceCountsFailure = exports.updateInvoiceCounts = exports.fetchInvoiceCounts = exports.updateInvoiceListFailure = exports.updateInvoiceList = exports.fetchInvoiceListPage = exports.fetchInvoiceList = exports.initialState = exports.sameInvoiceListQuery = void 0;
|
|
4
|
+
exports.clearInvoiceList = exports.addInvoiceToList = exports.setInvoiceActiveTab = exports.updateInvoiceListFilters = exports.updateInvoiceKPIsFailure = exports.updateInvoiceKPIs = exports.fetchInvoiceKPIs = exports.updateInvoiceCountsFailure = exports.updateInvoiceCounts = exports.fetchInvoiceCounts = exports.updateInvoiceListFailure = exports.updateInvoiceList = exports.fetchInvoiceListPage = exports.fetchInvoiceList = exports.initialState = exports.sameInvoiceListQuery = void 0;
|
|
5
5
|
const toolkit_1 = require("@reduxjs/toolkit");
|
|
6
|
+
const invoiceListState_1 = require("./invoiceListState");
|
|
6
7
|
/**
|
|
7
|
-
* Whether two invoice-list queries
|
|
8
|
-
*
|
|
9
|
-
*
|
|
8
|
+
* Whether two invoice-list queries share the same base (tab-independent) query.
|
|
9
|
+
* The status tab is server-side per-tab, so it is excluded here — when the base
|
|
10
|
+
* query changes (search / customer / subscription / dates / sort) every per-tab
|
|
11
|
+
* cache is stale and the reducer resets them all.
|
|
10
12
|
*/
|
|
11
13
|
const sameInvoiceListQuery = (a, b) => a.filters.customerId === b.filters.customerId &&
|
|
12
14
|
a.filters.subscriptionId === b.filters.subscriptionId &&
|
|
13
|
-
a.filters.status === b.filters.status &&
|
|
14
15
|
a.filters.search === b.filters.search &&
|
|
15
16
|
a.filters.dateFrom === b.filters.dateFrom &&
|
|
16
17
|
a.filters.dateTo === b.filters.dateTo &&
|
|
17
18
|
a.sort?.field === b.sort?.field &&
|
|
18
19
|
a.sort?.dir === b.sort?.dir;
|
|
19
20
|
exports.sameInvoiceListQuery = sameInvoiceListQuery;
|
|
21
|
+
/**
|
|
22
|
+
* Narrow an invoice status to a status tab id when one exists. Statuses like
|
|
23
|
+
* `draft` / `posted` / `pending` have no dedicated tab, so a newly created
|
|
24
|
+
* invoice in one of those states only lands in the `all` tab.
|
|
25
|
+
*/
|
|
26
|
+
const statusToTabId = (status) => invoiceListState_1.ALL_INVOICING_INVOICE_TAB_IDS.includes(status)
|
|
27
|
+
? status
|
|
28
|
+
: undefined;
|
|
20
29
|
exports.initialState = {
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
invoiceIds: [],
|
|
24
|
-
nextCursor: null,
|
|
30
|
+
activeTab: 'all',
|
|
31
|
+
byTab: (0, invoiceListState_1.makeInvoiceIdsByTab)(),
|
|
25
32
|
filters: {},
|
|
26
33
|
counts: { all: 0 },
|
|
27
34
|
countsFetchState: { fetchState: 'Not-Started', error: undefined },
|
|
28
35
|
kpis: undefined,
|
|
29
36
|
kpisFetchState: { fetchState: 'Not-Started', error: undefined },
|
|
30
|
-
hasValidState() {
|
|
31
|
-
return this.fetchState === 'Completed';
|
|
32
|
-
},
|
|
33
37
|
};
|
|
34
38
|
const invoiceList = (0, toolkit_1.createSlice)({
|
|
35
39
|
name: 'invoicingInvoiceList',
|
|
@@ -37,14 +41,15 @@ const invoiceList = (0, toolkit_1.createSlice)({
|
|
|
37
41
|
reducers: {
|
|
38
42
|
fetchInvoiceList: {
|
|
39
43
|
reducer(draft, action) {
|
|
44
|
+
const tab = draft.byTab[draft.activeTab];
|
|
40
45
|
if (!action.payload.keepExistingListItems) {
|
|
41
|
-
|
|
42
|
-
|
|
46
|
+
tab.ids = [];
|
|
47
|
+
tab.nextCursor = null;
|
|
43
48
|
}
|
|
44
49
|
draft.filters = action.payload.filters;
|
|
45
50
|
draft.sort = action.payload.sort;
|
|
46
|
-
|
|
47
|
-
|
|
51
|
+
tab.fetchState = 'In-Progress';
|
|
52
|
+
tab.error = undefined;
|
|
48
53
|
},
|
|
49
54
|
prepare(payload) {
|
|
50
55
|
return {
|
|
@@ -59,13 +64,11 @@ const invoiceList = (0, toolkit_1.createSlice)({
|
|
|
59
64
|
},
|
|
60
65
|
fetchInvoiceListPage: {
|
|
61
66
|
reducer(draft, action) {
|
|
62
|
-
// A different query invalidates
|
|
63
|
-
// epic's shouldFetch refetches instead of showing
|
|
64
|
-
//
|
|
67
|
+
// A different base query invalidates every tab's cache — reset so the
|
|
68
|
+
// page epic's shouldFetch refetches the active tab instead of showing
|
|
69
|
+
// rows fetched under a stale search/customer/subscription/dates/sort.
|
|
65
70
|
if (!(0, exports.sameInvoiceListQuery)(draft, action.payload)) {
|
|
66
|
-
draft.
|
|
67
|
-
draft.nextCursor = null;
|
|
68
|
-
draft.fetchState = 'Not-Started';
|
|
71
|
+
draft.byTab = (0, invoiceListState_1.makeInvoiceIdsByTab)();
|
|
69
72
|
}
|
|
70
73
|
draft.filters = action.payload.filters;
|
|
71
74
|
draft.sort = action.payload.sort;
|
|
@@ -81,17 +84,19 @@ const invoiceList = (0, toolkit_1.createSlice)({
|
|
|
81
84
|
},
|
|
82
85
|
},
|
|
83
86
|
updateInvoiceList(draft, action) {
|
|
87
|
+
const tab = draft.byTab[draft.activeTab];
|
|
84
88
|
const newIds = action.payload.invoices.map((invoice) => invoice.id);
|
|
85
|
-
|
|
86
|
-
? [...new Set([...
|
|
89
|
+
tab.ids = action.payload.keepExistingListItems
|
|
90
|
+
? [...new Set([...tab.ids, ...newIds])]
|
|
87
91
|
: newIds;
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
92
|
+
tab.nextCursor = action.payload.nextCursor;
|
|
93
|
+
tab.fetchState = 'Completed';
|
|
94
|
+
tab.error = undefined;
|
|
91
95
|
},
|
|
92
96
|
updateInvoiceListFailure(draft, action) {
|
|
93
|
-
|
|
94
|
-
|
|
97
|
+
const tab = draft.byTab[draft.activeTab];
|
|
98
|
+
tab.fetchState = 'Error';
|
|
99
|
+
tab.error = action.payload;
|
|
95
100
|
},
|
|
96
101
|
fetchInvoiceCounts(draft) {
|
|
97
102
|
draft.countsFetchState.fetchState = 'In-Progress';
|
|
@@ -122,24 +127,45 @@ const invoiceList = (0, toolkit_1.createSlice)({
|
|
|
122
127
|
updateInvoiceListFilters(draft, action) {
|
|
123
128
|
draft.filters = action.payload;
|
|
124
129
|
},
|
|
130
|
+
// Select a status tab. The view dispatches the follow-up fetchInvoiceListPage
|
|
131
|
+
// so the page epic fetches the tab when its cache is empty and reuses it when
|
|
132
|
+
// already loaded.
|
|
133
|
+
setInvoiceActiveTab(draft, action) {
|
|
134
|
+
draft.activeTab = action.payload;
|
|
135
|
+
},
|
|
125
136
|
// Reflect a newly created invoice in the cached list + tab counts so the
|
|
126
|
-
// invoices page shows it without refetching
|
|
127
|
-
//
|
|
128
|
-
//
|
|
129
|
-
//
|
|
137
|
+
// invoices page shows it without refetching. Prepends the id to the `all`
|
|
138
|
+
// tab and its status tab (dedup via includes), and bumps the `all` total and
|
|
139
|
+
// the per-status count key the tabs read. KPIs are money aggregates, so they
|
|
140
|
+
// are left untouched and refetched lazily.
|
|
130
141
|
addInvoiceToList(draft, action) {
|
|
131
142
|
const { id, status } = action.payload;
|
|
132
|
-
|
|
143
|
+
const allTab = draft.byTab['all'];
|
|
144
|
+
if (allTab.ids.includes(id)) {
|
|
133
145
|
return;
|
|
134
146
|
}
|
|
135
|
-
|
|
147
|
+
allTab.ids = [id, ...allTab.ids];
|
|
148
|
+
const statusTab = statusToTabId(status);
|
|
149
|
+
if (statusTab != null) {
|
|
150
|
+
const tab = draft.byTab[statusTab];
|
|
151
|
+
if (!tab.ids.includes(id)) {
|
|
152
|
+
tab.ids = [id, ...tab.ids];
|
|
153
|
+
}
|
|
154
|
+
}
|
|
136
155
|
draft.counts.all += 1;
|
|
137
156
|
draft.counts[status] = (draft.counts[status] ?? 0) + 1;
|
|
138
157
|
},
|
|
139
158
|
clearInvoiceList(draft) {
|
|
140
|
-
|
|
159
|
+
draft.activeTab = 'all';
|
|
160
|
+
draft.byTab = (0, invoiceListState_1.makeInvoiceIdsByTab)();
|
|
161
|
+
draft.filters = {};
|
|
162
|
+
draft.sort = undefined;
|
|
163
|
+
draft.counts = { all: 0 };
|
|
164
|
+
draft.countsFetchState = { fetchState: 'Not-Started', error: undefined };
|
|
165
|
+
draft.kpis = undefined;
|
|
166
|
+
draft.kpisFetchState = { fetchState: 'Not-Started', error: undefined };
|
|
141
167
|
},
|
|
142
168
|
},
|
|
143
169
|
});
|
|
144
|
-
_a = invoiceList.actions, exports.fetchInvoiceList = _a.fetchInvoiceList, exports.fetchInvoiceListPage = _a.fetchInvoiceListPage, exports.updateInvoiceList = _a.updateInvoiceList, exports.updateInvoiceListFailure = _a.updateInvoiceListFailure, exports.fetchInvoiceCounts = _a.fetchInvoiceCounts, exports.updateInvoiceCounts = _a.updateInvoiceCounts, exports.updateInvoiceCountsFailure = _a.updateInvoiceCountsFailure, exports.fetchInvoiceKPIs = _a.fetchInvoiceKPIs, exports.updateInvoiceKPIs = _a.updateInvoiceKPIs, exports.updateInvoiceKPIsFailure = _a.updateInvoiceKPIsFailure, exports.updateInvoiceListFilters = _a.updateInvoiceListFilters, exports.addInvoiceToList = _a.addInvoiceToList, exports.clearInvoiceList = _a.clearInvoiceList;
|
|
170
|
+
_a = invoiceList.actions, exports.fetchInvoiceList = _a.fetchInvoiceList, exports.fetchInvoiceListPage = _a.fetchInvoiceListPage, exports.updateInvoiceList = _a.updateInvoiceList, exports.updateInvoiceListFailure = _a.updateInvoiceListFailure, exports.fetchInvoiceCounts = _a.fetchInvoiceCounts, exports.updateInvoiceCounts = _a.updateInvoiceCounts, exports.updateInvoiceCountsFailure = _a.updateInvoiceCountsFailure, exports.fetchInvoiceKPIs = _a.fetchInvoiceKPIs, exports.updateInvoiceKPIs = _a.updateInvoiceKPIs, exports.updateInvoiceKPIsFailure = _a.updateInvoiceKPIsFailure, exports.updateInvoiceListFilters = _a.updateInvoiceListFilters, exports.setInvoiceActiveTab = _a.setInvoiceActiveTab, exports.addInvoiceToList = _a.addInvoiceToList, exports.clearInvoiceList = _a.clearInvoiceList;
|
|
145
171
|
exports.default = invoiceList.reducer;
|
|
@@ -5,6 +5,7 @@ import { InvoicingListCounts } from '../../../entity/invoicing/invoicingCommonPa
|
|
|
5
5
|
import { RootState } from '../../../reducer';
|
|
6
6
|
import { InvoiceListFilters, InvoicingInvoiceTabId } from './invoiceListState';
|
|
7
7
|
export interface InvoiceListView extends SelectorView {
|
|
8
|
+
activeTab: InvoicingInvoiceTabId;
|
|
8
9
|
counts: InvoicingListCounts;
|
|
9
10
|
countsFetchState: FetchStateAndError;
|
|
10
11
|
filters: InvoiceListFilters;
|
|
@@ -9,18 +9,22 @@ const invoiceListState_1 = require("./invoiceListState");
|
|
|
9
9
|
* array (and the wrapping view object) keep referential identity until the
|
|
10
10
|
* invoice entity slice or the list-view slice actually change.
|
|
11
11
|
*/
|
|
12
|
-
exports.getInvoiceListView = (0, toolkit_1.createSelector)((state) => state.invoicingInvoiceState, (state) => state.invoicingInvoiceListState, (invoiceState, listViewState) =>
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
.
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
12
|
+
exports.getInvoiceListView = (0, toolkit_1.createSelector)((state) => state.invoicingInvoiceState, (state) => state.invoicingInvoiceListState, (invoiceState, listViewState) => {
|
|
13
|
+
const activeTabState = listViewState.byTab[listViewState.activeTab];
|
|
14
|
+
return {
|
|
15
|
+
activeTab: listViewState.activeTab,
|
|
16
|
+
invoices: activeTabState.ids
|
|
17
|
+
.map((id) => invoiceState.invoiceByID[id])
|
|
18
|
+
.filter((item) => item != null),
|
|
19
|
+
counts: listViewState.counts,
|
|
20
|
+
countsFetchState: listViewState.countsFetchState,
|
|
21
|
+
filters: listViewState.filters,
|
|
22
|
+
kpis: listViewState.kpis,
|
|
23
|
+
kpisFetchState: listViewState.kpisFetchState,
|
|
24
|
+
nextCursor: activeTabState.nextCursor,
|
|
25
|
+
tabIds: invoiceListState_1.INVOICING_INVOICE_TABS,
|
|
26
|
+
fetchState: activeTabState.fetchState,
|
|
27
|
+
error: activeTabState.error,
|
|
28
|
+
version: 1.0,
|
|
29
|
+
};
|
|
30
|
+
});
|