@zeniai/client-epic-state 5.0.55-betaAR6 → 5.0.55-betaML3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (79) hide show
  1. package/lib/commonStateTypes/viewAndReport/viewAndReport.d.ts +2 -2
  2. package/lib/commonStateTypes/viewAndReport/viewAndReport.js +1 -0
  3. package/lib/entity/account/accountSelector.d.ts +6 -20
  4. package/lib/entity/account/accountSelector.js +8 -35
  5. package/lib/entity/account/accountState.d.ts +1 -6
  6. package/lib/entity/account/accountState.js +4 -11
  7. package/lib/entity/accountGroup/accountGroupState.d.ts +1 -1
  8. package/lib/entity/class/classReducer.d.ts +4 -4
  9. package/lib/entity/class/classSelector.d.ts +0 -5
  10. package/lib/entity/class/classSelector.js +0 -8
  11. package/lib/entity/class/classState.d.ts +1 -1
  12. package/lib/entity/forecast/forecastState.d.ts +1 -1
  13. package/lib/entity/sectionAccountsView/sectionAccountsView.d.ts +1 -1
  14. package/lib/entity/sectionClassesViewV2/sectionClassesView.d.ts +1 -1
  15. package/lib/entity/sectionClassesViewV2/sectionClassesViewReducer.d.ts +2 -2
  16. package/lib/entity/sectionProjectView/sectionProjectView.d.ts +1 -1
  17. package/lib/entity/sectionProjectView/sectionProjectViewReducer.d.ts +2 -2
  18. package/lib/entity/snackbar/snackbarTypes.d.ts +1 -1
  19. package/lib/entity/snackbar/snackbarTypes.js +2 -0
  20. package/lib/entity/transaction/payloadTypes/transactionPayload.d.ts +4 -0
  21. package/lib/entity/transaction/payloadTypes/transactionPayload.js +10 -0
  22. package/lib/entity/transaction/stateTypes/transaction.d.ts +3 -0
  23. package/lib/epic.d.ts +3 -1
  24. package/lib/epic.js +3 -1
  25. package/lib/esm/commonStateTypes/viewAndReport/viewAndReport.js +1 -0
  26. package/lib/esm/entity/account/accountSelector.js +7 -33
  27. package/lib/esm/entity/account/accountState.js +1 -7
  28. package/lib/esm/entity/class/classSelector.js +0 -7
  29. package/lib/esm/entity/snackbar/snackbarTypes.js +2 -0
  30. package/lib/esm/entity/transaction/payloadTypes/transactionPayload.js +10 -0
  31. package/lib/esm/epic.js +3 -1
  32. package/lib/esm/index.js +6 -12
  33. package/lib/esm/view/expenseAutomationView/epics/transactionCategorization/createTransferEntryEpic.js +81 -0
  34. package/lib/esm/view/expenseAutomationView/epics/transactionCategorization/fetchTransactionCategorizationViewEpic.js +5 -1
  35. package/lib/esm/view/expenseAutomationView/epics/transactionCategorization/fetchTransferAccountsEpic.js +25 -0
  36. package/lib/esm/view/expenseAutomationView/reducers/transactionsViewReducer.js +66 -11
  37. package/lib/esm/view/expenseAutomationView/selectors/transactionCategorizationSelector.js +27 -58
  38. package/lib/esm/view/spendManagement/spendManagementFilterHelpers.js +0 -2
  39. package/lib/esm/view/transactionDetail/epics/transactionDetailEpic.js +6 -0
  40. package/lib/esm/view/transactionDetail/transactionDetailSelector.js +13 -2
  41. package/lib/index.d.ts +7 -9
  42. package/lib/index.js +42 -41
  43. package/lib/tsconfig.typecheck.tsbuildinfo +1 -1
  44. package/lib/view/auditReportView/auditReportViewState.d.ts +1 -1
  45. package/lib/view/billPayCard/billPayCardSelector.d.ts +1 -1
  46. package/lib/view/cardBalance/cardBalanceSelector.d.ts +1 -1
  47. package/lib/view/cashBalance/cashBalanceSelector.d.ts +1 -1
  48. package/lib/view/cashInCashOut/cashInCashOutSelector.d.ts +1 -1
  49. package/lib/view/cashPosition/cashPositionSelector.d.ts +1 -1
  50. package/lib/view/dashboard/dashboardReducer.d.ts +2 -2
  51. package/lib/view/expenseAutomationView/epics/transactionCategorization/createTransferEntryEpic.d.ts +9 -0
  52. package/lib/view/expenseAutomationView/epics/transactionCategorization/createTransferEntryEpic.js +85 -0
  53. package/lib/view/expenseAutomationView/epics/transactionCategorization/fetchTransactionCategorizationViewEpic.d.ts +2 -2
  54. package/lib/view/expenseAutomationView/epics/transactionCategorization/fetchTransactionCategorizationViewEpic.js +4 -0
  55. package/lib/view/expenseAutomationView/epics/transactionCategorization/fetchTransferAccountsEpic.d.ts +8 -0
  56. package/lib/view/expenseAutomationView/epics/transactionCategorization/fetchTransferAccountsEpic.js +29 -0
  57. package/lib/view/expenseAutomationView/helpers/transactionCategorizationLocalDataHelper.d.ts +1 -1
  58. package/lib/view/expenseAutomationView/reducers/transactionsViewReducer.d.ts +16 -6
  59. package/lib/view/expenseAutomationView/reducers/transactionsViewReducer.js +67 -12
  60. package/lib/view/expenseAutomationView/selectorTypes/transactionsViewSelectorTypes.d.ts +3 -1
  61. package/lib/view/expenseAutomationView/selectors/transactionCategorizationSelector.d.ts +3 -4
  62. package/lib/view/expenseAutomationView/selectors/transactionCategorizationSelector.js +28 -60
  63. package/lib/view/expenseAutomationView/types/transactionsViewState.d.ts +13 -3
  64. package/lib/view/financeStatement/financeStatementReducer.d.ts +1 -1
  65. package/lib/view/globalMerchantView/globalMerchantViewReducer.d.ts +2 -2
  66. package/lib/view/reimbursementCard/reimbursementCardSelector.d.ts +1 -1
  67. package/lib/view/reportsResync/reportsResyncReducer.d.ts +2 -2
  68. package/lib/view/spendManagement/spendManagementFilterHelpers.js +0 -2
  69. package/lib/view/tasksCard/tasksCardSelector.d.ts +1 -1
  70. package/lib/view/topEx/topExSelector.d.ts +1 -1
  71. package/lib/view/transactionDetail/epics/transactionDetailEpic.d.ts +2 -1
  72. package/lib/view/transactionDetail/epics/transactionDetailEpic.js +6 -0
  73. package/lib/view/transactionDetail/transactionDetailPayload.d.ts +1 -1
  74. package/lib/view/transactionDetail/transactionDetailSelector.d.ts +4 -1
  75. package/lib/view/transactionDetail/transactionDetailSelector.js +12 -1
  76. package/package.json +1 -1
  77. package/lib/esm/view/expenseAutomationView/transactionFilterHelpers.js +0 -186
  78. package/lib/view/expenseAutomationView/transactionFilterHelpers.d.ts +0 -64
  79. package/lib/view/expenseAutomationView/transactionFilterHelpers.js +0 -190
@@ -3,42 +3,26 @@ 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.toTransactionView = void 0;
6
+ exports.getLastTransferEntryReplacement = getLastTransferEntryReplacement;
7
7
  exports.getExpenseAutomationTransactionView = getExpenseAutomationTransactionView;
8
8
  const omit_1 = __importDefault(require("lodash/omit"));
9
9
  const reduceFetchState_1 = require("../../../commonStateTypes/reduceFetchState");
10
10
  const timePeriod_1 = require("../../../commonStateTypes/timePeriod");
11
+ const accountSelector_1 = require("../../../entity/account/accountSelector");
11
12
  const tenantSelector_1 = require("../../../entity/tenant/tenantSelector");
12
13
  const transactionHelper_1 = require("../../../entity/transaction/transactionHelper");
13
14
  const transactionSelector_1 = require("../../../entity/transaction/transactionSelector");
14
- const transactionFilterHelpers_1 = require("../transactionFilterHelpers");
15
15
  const accountListSelector_1 = require("../../accountList/accountListSelector");
16
16
  const classListSelector_1 = require("../../classList/classListSelector");
17
17
  const projectListSelector_1 = require("../../projectList/projectListSelector");
18
18
  const expenseAutomationViewSelectorTypes_1 = require("../selectorTypes/expenseAutomationViewSelectorTypes");
19
- const toTransactionView = (transaction, transactionLocalData) => {
20
- return {
21
- id: transaction.id,
22
- date: transaction.date,
23
- amount: transaction.amount,
24
- vendorName: transaction.vendorName,
25
- customerName: transaction.customerName,
26
- vendorId: transaction.vendorId,
27
- customerId: transaction.customerId,
28
- description: transaction.description,
29
- memo: transaction.memo,
30
- type: transaction.type,
31
- typeName: transaction.typeName,
32
- createTime: transaction.createTime,
33
- transaction: transaction,
34
- transactionLocalData,
35
- };
36
- };
37
- exports.toTransactionView = toTransactionView;
19
+ function getLastTransferEntryReplacement(state) {
20
+ return state.expenseAutomationTransactionsViewState.lastTransferEntryReplacement;
21
+ }
38
22
  function getExpenseAutomationTransactionView(state) {
39
23
  const { accountState, classState, classListState, accountListState, expenseAutomationTransactionsViewState, expenseAutomationViewState, projectState, projectListState, transactionState, monthEndCloseChecksState, monthEndCloseChecksViewState, } = state;
40
24
  const { selectedTransactionCategorizationTab } = expenseAutomationTransactionsViewState;
41
- const { uiState, refreshStatus, saveStatus, markAsNotMiscategorizedStatus, transactionIdsBySelectedPeriod, transactionReviewLocalDataById, selectedCheckBoxTransactionIds, transactionIdsWithUnsavedData, uploadReceiptStatusById, selectedTransactionId, selectedTransactionLineId, filters, } = expenseAutomationTransactionsViewState.transactionCategorizationView[selectedTransactionCategorizationTab];
25
+ const { uiState, refreshStatus, saveStatus, markAsNotMiscategorizedStatus, transactionIdsBySelectedPeriod, transactionReviewLocalDataById, selectedCheckBoxTransactionIds, transactionIdsWithUnsavedData, uploadReceiptStatusById, selectedTransactionId, selectedTransactionLineId, } = expenseAutomationTransactionsViewState.transactionCategorizationView[selectedTransactionCategorizationTab];
42
26
  const uncategorizedIncomeExpense = (0, accountListSelector_1.getUncategorizedAccounts)(accountState, accountListState, 'accountList');
43
27
  const accountList = (0, accountListSelector_1.getAccountList)(accountState, accountListState, 'accountList');
44
28
  const classList = (0, classListSelector_1.getClassList)(classState, classListState);
@@ -57,43 +41,10 @@ function getExpenseAutomationTransactionView(state) {
57
41
  ? transactionIdsBySelectedPeriod[monthYearPeriodId]
58
42
  : null;
59
43
  const transactionIds = transactionIdsForSelectedPeriod ?? [];
60
- const transactions = (0, transactionSelector_1.getSupportedTransactionsByIds)(transactionState, transactionIds);
61
- const transactionsWithCOT = transactions.map((transaction) => (0, transactionHelper_1.getTransactionWithCOT)(transaction));
62
- const transactionLocalDataMap = new Map();
63
- transactionIds.forEach((transactionId) => {
64
- const transactionData = transactionReviewLocalDataById[transactionId];
65
- if (transactionData != null) {
66
- transactionLocalDataMap.set(transactionId, {
67
- transactionId,
68
- transactionReviewLocalData: transactionData.transactionReviewLocalData,
69
- });
70
- }
71
- });
72
- // Step 2: Convert to TransactionView and apply advanced filters
73
- const transactionViews = transactionsWithCOT.map((transaction) => {
74
- const localData = transactionLocalDataMap.get(transaction.id);
75
- return (0, exports.toTransactionView)(transaction, localData);
76
- });
77
- // Apply TC-specific filters (lives under expenseAutomationView, independent
78
- // of the Spend Management filter pipeline).
79
- const filteredTransactionViews = (0, transactionFilterHelpers_1.applyTransactionFilters)(transactionViews, filters);
80
- // Convert back to TransactionWithCOT for return
81
- const filteredTransactionsWithCOT = filteredTransactionViews.map((view) => view.transaction);
82
- // Get transactionLocalData for filtered transactions
83
- // Also include transactionLocalData for transactions that don't exist in transactionState
84
- // but have local data (to match original behavior)
85
- const filteredTransactionIds = new Set(filteredTransactionViews.map((view) => view.id));
86
- const filteredTransactionLocalData = transactionIds
44
+ const transactionLocalData = transactionIds
87
45
  .map((transactionId) => {
88
46
  const transactionData = transactionReviewLocalDataById[transactionId];
89
- if (transactionData == null) {
90
- return null;
91
- }
92
- // Include if transaction is in filtered results, or if transaction doesn't exist in state
93
- // (to maintain backward compatibility with tests)
94
- const transactionExists = transactions.some((t) => t.id === transactionId);
95
- if (filteredTransactionIds.has(transactionId) ||
96
- !transactionExists) {
47
+ if (transactionData != null) {
97
48
  return {
98
49
  transactionId,
99
50
  transactionReviewLocalData: transactionData.transactionReviewLocalData,
@@ -101,7 +52,9 @@ function getExpenseAutomationTransactionView(state) {
101
52
  }
102
53
  return null;
103
54
  })
104
- .filter((data) => data != null);
55
+ .filter((transaction) => transaction != null);
56
+ const transactions = (0, transactionSelector_1.getSupportedTransactionsByIds)(transactionState, transactionIds);
57
+ const transactionsWithCOT = transactions.map((transaction) => (0, transactionHelper_1.getTransactionWithCOT)(transaction));
105
58
  const monthEndFetchState = monthYearPeriodId != null
106
59
  ? (monthEndCloseChecksViewState.monthEndCloseChecksViewByTenantId[currentTenant.tenantId]?.[monthYearPeriodId] ?? { fetchState: 'Not-Started', error: undefined })
107
60
  : { fetchState: 'Not-Started', error: undefined };
@@ -144,11 +97,24 @@ function getExpenseAutomationTransactionView(state) {
144
97
  : [];
145
98
  const transactionCompletionStatus = allSteps.find((step) => step.step === 'transaction_categorization')?.completionStatus;
146
99
  const completionStatus = transactionCompletionStatus ?? 'incomplete';
100
+ const transferAccountsFromApi = expenseAutomationTransactionsViewState.transferAccounts.accountIds
101
+ .map((id) => (0, accountSelector_1.getAccountBaseForTransferAccounts)(accountState, id))
102
+ .filter((account) => account != null);
103
+ /**
104
+ * Credit transfer picker uses transfer-account ids from a dedicated fetch. If that list
105
+ * resolves to nothing while the COA list is loaded, fall back to the full COA list so the
106
+ * credit dropdown is not empty.
107
+ */
108
+ const transferAccountsList = transferAccountsFromApi.length > 0
109
+ ? transferAccountsFromApi
110
+ : accountList.accounts
111
+ .map((a) => (0, accountSelector_1.getAccountBase)(accountState, a.accountId, 'account_list'))
112
+ .filter((account) => account != null);
147
113
  return {
148
114
  version: 0,
149
115
  fetchState: fetchStatus.fetchState,
150
116
  error: fetchStatus.error,
151
- transactions: filteredTransactionsWithCOT,
117
+ transactions: transactionsWithCOT,
152
118
  selectedCheckBoxTransactionIds,
153
119
  transactionIdsWithUnsavedData,
154
120
  uncategorizedAccounts: uncategorizedIncomeExpense,
@@ -159,16 +125,18 @@ function getExpenseAutomationTransactionView(state) {
159
125
  classHierarchyList,
160
126
  isAccountingProjectsEnabled,
161
127
  projectList,
162
- transactionLocalData: filteredTransactionLocalData,
128
+ transactionLocalData,
163
129
  uiState,
164
130
  refreshStatus,
165
131
  saveStatus,
166
132
  markAsNotMiscategorizedStatus,
133
+ createTransferEntryStatus: expenseAutomationTransactionsViewState.createTransferEntryStatus,
167
134
  completionStatus,
168
135
  totalCountByTab,
169
136
  fetchStateByTransactionTabs: fetchStateByTab,
170
137
  uploadReceiptStatusById,
171
138
  selectedTransactionId,
172
139
  selectedTransactionLineId,
140
+ transferAccounts: transferAccountsList,
173
141
  };
174
142
  }
@@ -1,5 +1,5 @@
1
1
  import { Amount } from '../../../commonStateTypes/amount';
2
- import { FetchStateAndError, FetchedState, ID } from '../../../commonStateTypes/common';
2
+ import { FetchState, FetchStateAndError, FetchedState, ID } from '../../../commonStateTypes/common';
3
3
  import { Recommendation, RecommendationWithCOT } from '../../../commonStateTypes/recommendationBase';
4
4
  import { SortOrder } from '../../../commonStateTypes/selectorTypes/sortOrderTypes';
5
5
  import { MonthYearPeriodId } from '../../../commonStateTypes/timePeriod';
@@ -15,7 +15,6 @@ import { TransactionCategory, TransactionType } from '../../../entity/transactio
15
15
  import { VendorBase } from '../../../entity/vendor/vendorState';
16
16
  import { ZeniDate } from '../../../zeniDayJS';
17
17
  import { EntityRecommendationKey } from '../../recommendation/recommendationState';
18
- import { TransactionFilters } from '../transactionFilterHelpers';
19
18
  import { TransactionDetailKey } from '../../transactionDetail/transactionDetailState';
20
19
  export declare const toTransactionsSortKey: (v: string) => "date" | "amount" | "vendor" | "project" | "category" | "class" | "payment_account" | "transaction_type" | "memo_and_receipt";
21
20
  export type TransactionsSortKey = ReturnType<typeof toTransactionsSortKey>;
@@ -92,7 +91,6 @@ export interface SupportedTransactionCategorization {
92
91
  }
93
92
  export declare const initialSupportedTransactionCategorization: SupportedTransactionCategorization;
94
93
  export interface TransactionsTabViewState extends FetchedState {
95
- filters: TransactionFilters;
96
94
  markAsNotMiscategorizedStatus: FetchStateAndError;
97
95
  refreshStatus: FetchStateAndError;
98
96
  saveStatus: FetchStateAndError;
@@ -105,9 +103,21 @@ export interface TransactionsTabViewState extends FetchedState {
105
103
  selectedTransactionId?: ID;
106
104
  selectedTransactionLineId?: ID;
107
105
  }
106
+ export interface TransferAccountsState {
107
+ accountIds: ID[];
108
+ fetchState: FetchState;
109
+ }
110
+ export type TransferEntryRouteReplacement = {
111
+ newTransactionId: TransactionID;
112
+ previousTransactionId: TransactionID;
113
+ };
108
114
  export type TransactionsViewState = {
115
+ createTransferEntryStatus: FetchState;
116
+ /** Set when create-transfer returns a new transaction id; host navigates then acknowledges. */
117
+ lastTransferEntryReplacement: TransferEntryRouteReplacement | undefined;
109
118
  selectedTransactionCategorizationTab: TransactionsTab;
110
119
  transactionCategorizationView: Record<TransactionsTab, TransactionsTabViewState>;
120
+ transferAccounts: TransferAccountsState;
111
121
  };
112
122
  export interface TransactionLineUpdates {
113
123
  account?: AccountBase;
@@ -17,7 +17,7 @@ export declare const fetchFinanceStatement: import("@reduxjs/toolkit").ActionCre
17
17
  firstMonthOfFY: Month;
18
18
  maxNumOfPeriodsToHighlight: number;
19
19
  thisPeriod: TimeframeTick;
20
- }, "financeStatement/updateFinanceStatementThisPeriod">, updateCOABalancesRange: import("@reduxjs/toolkit").ActionCreatorWithPayload<COABalancesRange, "financeStatement/updateCOABalancesRange">, updateSelectedReportId: import("@reduxjs/toolkit").ActionCreatorWithPayload<"cash_balance" | "card_balance" | "expense_automation_card" | "operating_expenses" | "operating_expenses_by_classes" | "revenue" | "revenue_by_classes" | "net_burn_or_income" | "net_burn_or_income_story_card" | "net_burn_or_income_by_classes" | "cash_position" | "top_expenses" | "profit_and_loss" | "profit_and_loss_by_classes" | "profit_and_loss_by_projects" | "balance_sheet" | "cash_flow" | "dashboard" | "finance_statement" | "transaction_list_of_account" | "transaction_list_missing_receipt" | "transaction_list_of_account_by_class" | "transaction_list_of_account_by_project" | "transaction_detail" | "cash_in_cash_out" | "insights_dashboard" | "company_details" | "class_list" | "account_list" | "account_list_by_type" | "vendor" | "task_card" | "bill_pay" | "reimbursement" | "bill_pay_card" | "reimbursement_card" | "bill_pay_promo_card" | "zeni_accounts" | "zeni_accounts_promo_card" | "zeni_treasury" | "charge_cards" | "other_connection" | "reimbursement_promo_card" | "onboarding" | "operating_expenses_by_vendor" | "operating_expenses_by_vendor_summary" | "vendors_tab" | "accounts_payable_aging" | "accounts_receivable_aging" | "vendor_global_review" | "prepaid_expenses" | "fixed_assets" | "notification" | "rewards_card" | "billing" | "flux_analysis_operating_expense" | "account_reconciliation" | "zeni_credit_promo_card" | "treasury_promo_card" | "excluded_account_reconciliation", "financeStatement/updateSelectedReportId">, updateFinanceStatementAdditionalBalancesSelection: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
20
+ }, "financeStatement/updateFinanceStatementThisPeriod">, updateCOABalancesRange: import("@reduxjs/toolkit").ActionCreatorWithPayload<COABalancesRange, "financeStatement/updateCOABalancesRange">, updateSelectedReportId: import("@reduxjs/toolkit").ActionCreatorWithPayload<"cash_balance" | "card_balance" | "expense_automation_card" | "operating_expenses" | "operating_expenses_by_classes" | "revenue" | "revenue_by_classes" | "net_burn_or_income" | "net_burn_or_income_story_card" | "net_burn_or_income_by_classes" | "cash_position" | "top_expenses" | "profit_and_loss" | "profit_and_loss_by_classes" | "profit_and_loss_by_projects" | "balance_sheet" | "cash_flow" | "dashboard" | "finance_statement" | "transaction_list_of_account" | "transaction_list_missing_receipt" | "transaction_list_of_account_by_class" | "transaction_list_of_account_by_project" | "transaction_detail" | "cash_in_cash_out" | "insights_dashboard" | "company_details" | "class_list" | "account_list" | "account_list_by_type" | "vendor" | "task_card" | "bill_pay" | "reimbursement" | "bill_pay_card" | "reimbursement_card" | "bill_pay_promo_card" | "zeni_accounts" | "zeni_accounts_promo_card" | "zeni_treasury" | "charge_cards" | "other_connection" | "reimbursement_promo_card" | "onboarding" | "operating_expenses_by_vendor" | "operating_expenses_by_vendor_summary" | "vendors_tab" | "accounts_payable_aging" | "accounts_receivable_aging" | "vendor_global_review" | "prepaid_expenses" | "fixed_assets" | "notification" | "rewards_card" | "billing" | "flux_analysis_operating_expense" | "account_reconciliation" | "zeni_credit_promo_card" | "treasury_promo_card" | "excluded_account_reconciliation" | "transfer_accounts", "financeStatement/updateSelectedReportId">, updateFinanceStatementAdditionalBalancesSelection: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
21
21
  additionalBalances: COABalanceType[];
22
22
  coaBalances: COABalance[];
23
23
  firstMonthOfFY: Month;
@@ -3,9 +3,9 @@ import { ZeniAPIStatus } from '../../responsePayload';
3
3
  import { VendorReviewViewAllRecommendationsPayload } from '../vendorReviewView/common/payload/commonTypes';
4
4
  import { GlobalMerchantViewState, GlobalRecommendationFetchSource, NewGlobalMerchantCurrentSelection } from './globalMerchantViewState';
5
5
  export declare const initialState: GlobalMerchantViewState;
6
- export declare const createGlobalMerchant: import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<[merchantId?: string | undefined, context?: "cash_balance" | "card_balance" | "expense_automation_card" | "operating_expenses" | "operating_expenses_by_classes" | "revenue" | "revenue_by_classes" | "net_burn_or_income" | "net_burn_or_income_story_card" | "net_burn_or_income_by_classes" | "cash_position" | "top_expenses" | "profit_and_loss" | "profit_and_loss_by_classes" | "profit_and_loss_by_projects" | "balance_sheet" | "cash_flow" | "dashboard" | "finance_statement" | "transaction_list_of_account" | "transaction_list_missing_receipt" | "transaction_list_of_account_by_class" | "transaction_list_of_account_by_project" | "transaction_detail" | "cash_in_cash_out" | "insights_dashboard" | "company_details" | "class_list" | "account_list" | "account_list_by_type" | "vendor" | "task_card" | "bill_pay" | "reimbursement" | "bill_pay_card" | "reimbursement_card" | "bill_pay_promo_card" | "zeni_accounts" | "zeni_accounts_promo_card" | "zeni_treasury" | "charge_cards" | "other_connection" | "reimbursement_promo_card" | "onboarding" | "operating_expenses_by_vendor" | "operating_expenses_by_vendor_summary" | "vendors_tab" | "accounts_payable_aging" | "accounts_receivable_aging" | "vendor_global_review" | "prepaid_expenses" | "fixed_assets" | "notification" | "rewards_card" | "billing" | "flux_analysis_operating_expense" | "account_reconciliation" | "zeni_credit_promo_card" | "treasury_promo_card" | "excluded_account_reconciliation" | undefined], {
6
+ export declare const createGlobalMerchant: import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<[merchantId?: string | undefined, context?: "cash_balance" | "card_balance" | "expense_automation_card" | "operating_expenses" | "operating_expenses_by_classes" | "revenue" | "revenue_by_classes" | "net_burn_or_income" | "net_burn_or_income_story_card" | "net_burn_or_income_by_classes" | "cash_position" | "top_expenses" | "profit_and_loss" | "profit_and_loss_by_classes" | "profit_and_loss_by_projects" | "balance_sheet" | "cash_flow" | "dashboard" | "finance_statement" | "transaction_list_of_account" | "transaction_list_missing_receipt" | "transaction_list_of_account_by_class" | "transaction_list_of_account_by_project" | "transaction_detail" | "cash_in_cash_out" | "insights_dashboard" | "company_details" | "class_list" | "account_list" | "account_list_by_type" | "vendor" | "task_card" | "bill_pay" | "reimbursement" | "bill_pay_card" | "reimbursement_card" | "bill_pay_promo_card" | "zeni_accounts" | "zeni_accounts_promo_card" | "zeni_treasury" | "charge_cards" | "other_connection" | "reimbursement_promo_card" | "onboarding" | "operating_expenses_by_vendor" | "operating_expenses_by_vendor_summary" | "vendors_tab" | "accounts_payable_aging" | "accounts_receivable_aging" | "vendor_global_review" | "prepaid_expenses" | "fixed_assets" | "notification" | "rewards_card" | "billing" | "flux_analysis_operating_expense" | "account_reconciliation" | "zeni_credit_promo_card" | "treasury_promo_card" | "excluded_account_reconciliation" | "transfer_accounts" | undefined], {
7
7
  merchantId: string | undefined;
8
- context: "cash_balance" | "card_balance" | "expense_automation_card" | "operating_expenses" | "operating_expenses_by_classes" | "revenue" | "revenue_by_classes" | "net_burn_or_income" | "net_burn_or_income_story_card" | "net_burn_or_income_by_classes" | "cash_position" | "top_expenses" | "profit_and_loss" | "profit_and_loss_by_classes" | "profit_and_loss_by_projects" | "balance_sheet" | "cash_flow" | "dashboard" | "finance_statement" | "transaction_list_of_account" | "transaction_list_missing_receipt" | "transaction_list_of_account_by_class" | "transaction_list_of_account_by_project" | "transaction_detail" | "cash_in_cash_out" | "insights_dashboard" | "company_details" | "class_list" | "account_list" | "account_list_by_type" | "vendor" | "task_card" | "bill_pay" | "reimbursement" | "bill_pay_card" | "reimbursement_card" | "bill_pay_promo_card" | "zeni_accounts" | "zeni_accounts_promo_card" | "zeni_treasury" | "charge_cards" | "other_connection" | "reimbursement_promo_card" | "onboarding" | "operating_expenses_by_vendor" | "operating_expenses_by_vendor_summary" | "vendors_tab" | "accounts_payable_aging" | "accounts_receivable_aging" | "vendor_global_review" | "prepaid_expenses" | "fixed_assets" | "notification" | "rewards_card" | "billing" | "flux_analysis_operating_expense" | "account_reconciliation" | "zeni_credit_promo_card" | "treasury_promo_card" | "excluded_account_reconciliation" | undefined;
8
+ context: "cash_balance" | "card_balance" | "expense_automation_card" | "operating_expenses" | "operating_expenses_by_classes" | "revenue" | "revenue_by_classes" | "net_burn_or_income" | "net_burn_or_income_story_card" | "net_burn_or_income_by_classes" | "cash_position" | "top_expenses" | "profit_and_loss" | "profit_and_loss_by_classes" | "profit_and_loss_by_projects" | "balance_sheet" | "cash_flow" | "dashboard" | "finance_statement" | "transaction_list_of_account" | "transaction_list_missing_receipt" | "transaction_list_of_account_by_class" | "transaction_list_of_account_by_project" | "transaction_detail" | "cash_in_cash_out" | "insights_dashboard" | "company_details" | "class_list" | "account_list" | "account_list_by_type" | "vendor" | "task_card" | "bill_pay" | "reimbursement" | "bill_pay_card" | "reimbursement_card" | "bill_pay_promo_card" | "zeni_accounts" | "zeni_accounts_promo_card" | "zeni_treasury" | "charge_cards" | "other_connection" | "reimbursement_promo_card" | "onboarding" | "operating_expenses_by_vendor" | "operating_expenses_by_vendor_summary" | "vendors_tab" | "accounts_payable_aging" | "accounts_receivable_aging" | "vendor_global_review" | "prepaid_expenses" | "fixed_assets" | "notification" | "rewards_card" | "billing" | "flux_analysis_operating_expense" | "account_reconciliation" | "zeni_credit_promo_card" | "treasury_promo_card" | "excluded_account_reconciliation" | "transfer_accounts" | undefined;
9
9
  }, "globalMerchantView/createGlobalMerchant", never, never>, createGlobalMerchantSuccess: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
10
10
  merchantId: ID;
11
11
  }, "globalMerchantView/createGlobalMerchantSuccess">, createGlobalMerchantFailure: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
@@ -1,6 +1,6 @@
1
1
  import { RootState } from '../../reducer';
2
2
  export declare const getReimbursementCardReport: (state: RootState) => {
3
- reportId: "cash_balance" | "card_balance" | "expense_automation_card" | "operating_expenses" | "operating_expenses_by_classes" | "revenue" | "revenue_by_classes" | "net_burn_or_income" | "net_burn_or_income_story_card" | "net_burn_or_income_by_classes" | "cash_position" | "top_expenses" | "profit_and_loss" | "profit_and_loss_by_classes" | "profit_and_loss_by_projects" | "balance_sheet" | "cash_flow" | "dashboard" | "finance_statement" | "transaction_list_of_account" | "transaction_list_missing_receipt" | "transaction_list_of_account_by_class" | "transaction_list_of_account_by_project" | "transaction_detail" | "cash_in_cash_out" | "insights_dashboard" | "company_details" | "class_list" | "account_list" | "account_list_by_type" | "vendor" | "task_card" | "bill_pay" | "reimbursement" | "bill_pay_card" | "reimbursement_card" | "bill_pay_promo_card" | "zeni_accounts" | "zeni_accounts_promo_card" | "zeni_treasury" | "charge_cards" | "other_connection" | "reimbursement_promo_card" | "onboarding" | "operating_expenses_by_vendor" | "operating_expenses_by_vendor_summary" | "vendors_tab" | "accounts_payable_aging" | "accounts_receivable_aging" | "vendor_global_review" | "prepaid_expenses" | "fixed_assets" | "notification" | "rewards_card" | "billing" | "flux_analysis_operating_expense" | "account_reconciliation" | "zeni_credit_promo_card" | "treasury_promo_card" | "excluded_account_reconciliation";
3
+ reportId: "cash_balance" | "card_balance" | "expense_automation_card" | "operating_expenses" | "operating_expenses_by_classes" | "revenue" | "revenue_by_classes" | "net_burn_or_income" | "net_burn_or_income_story_card" | "net_burn_or_income_by_classes" | "cash_position" | "top_expenses" | "profit_and_loss" | "profit_and_loss_by_classes" | "profit_and_loss_by_projects" | "balance_sheet" | "cash_flow" | "dashboard" | "finance_statement" | "transaction_list_of_account" | "transaction_list_missing_receipt" | "transaction_list_of_account_by_class" | "transaction_list_of_account_by_project" | "transaction_detail" | "cash_in_cash_out" | "insights_dashboard" | "company_details" | "class_list" | "account_list" | "account_list_by_type" | "vendor" | "task_card" | "bill_pay" | "reimbursement" | "bill_pay_card" | "reimbursement_card" | "bill_pay_promo_card" | "zeni_accounts" | "zeni_accounts_promo_card" | "zeni_treasury" | "charge_cards" | "other_connection" | "reimbursement_promo_card" | "onboarding" | "operating_expenses_by_vendor" | "operating_expenses_by_vendor_summary" | "vendors_tab" | "accounts_payable_aging" | "accounts_receivable_aging" | "vendor_global_review" | "prepaid_expenses" | "fixed_assets" | "notification" | "rewards_card" | "billing" | "flux_analysis_operating_expense" | "account_reconciliation" | "zeni_credit_promo_card" | "treasury_promo_card" | "excluded_account_reconciliation" | "transfer_accounts";
4
4
  reportTitle: string;
5
5
  version: string | number | undefined;
6
6
  fetchState: import("../..").FetchState;
@@ -2,8 +2,8 @@ import { ReportID } from '../../commonStateTypes/viewAndReport/viewAndReport';
2
2
  import { ZeniAPIStatus } from '../../responsePayload';
3
3
  import { ReportsResyncState } from './reportsResyncState';
4
4
  export declare const initialReportsResyncState: ReportsResyncState;
5
- export declare const initiateReportsResync: import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<[reportIdToResync: "cash_balance" | "card_balance" | "expense_automation_card" | "operating_expenses" | "operating_expenses_by_classes" | "revenue" | "revenue_by_classes" | "net_burn_or_income" | "net_burn_or_income_story_card" | "net_burn_or_income_by_classes" | "cash_position" | "top_expenses" | "profit_and_loss" | "profit_and_loss_by_classes" | "profit_and_loss_by_projects" | "balance_sheet" | "cash_flow" | "dashboard" | "finance_statement" | "transaction_list_of_account" | "transaction_list_missing_receipt" | "transaction_list_of_account_by_class" | "transaction_list_of_account_by_project" | "transaction_detail" | "cash_in_cash_out" | "insights_dashboard" | "company_details" | "class_list" | "account_list" | "account_list_by_type" | "vendor" | "task_card" | "bill_pay" | "reimbursement" | "bill_pay_card" | "reimbursement_card" | "bill_pay_promo_card" | "zeni_accounts" | "zeni_accounts_promo_card" | "zeni_treasury" | "charge_cards" | "other_connection" | "reimbursement_promo_card" | "onboarding" | "operating_expenses_by_vendor" | "operating_expenses_by_vendor_summary" | "vendors_tab" | "accounts_payable_aging" | "accounts_receivable_aging" | "vendor_global_review" | "prepaid_expenses" | "fixed_assets" | "notification" | "rewards_card" | "billing" | "flux_analysis_operating_expense" | "account_reconciliation" | "zeni_credit_promo_card" | "treasury_promo_card" | "excluded_account_reconciliation"], {
6
- reportIdToResync: "cash_balance" | "card_balance" | "expense_automation_card" | "operating_expenses" | "operating_expenses_by_classes" | "revenue" | "revenue_by_classes" | "net_burn_or_income" | "net_burn_or_income_story_card" | "net_burn_or_income_by_classes" | "cash_position" | "top_expenses" | "profit_and_loss" | "profit_and_loss_by_classes" | "profit_and_loss_by_projects" | "balance_sheet" | "cash_flow" | "dashboard" | "finance_statement" | "transaction_list_of_account" | "transaction_list_missing_receipt" | "transaction_list_of_account_by_class" | "transaction_list_of_account_by_project" | "transaction_detail" | "cash_in_cash_out" | "insights_dashboard" | "company_details" | "class_list" | "account_list" | "account_list_by_type" | "vendor" | "task_card" | "bill_pay" | "reimbursement" | "bill_pay_card" | "reimbursement_card" | "bill_pay_promo_card" | "zeni_accounts" | "zeni_accounts_promo_card" | "zeni_treasury" | "charge_cards" | "other_connection" | "reimbursement_promo_card" | "onboarding" | "operating_expenses_by_vendor" | "operating_expenses_by_vendor_summary" | "vendors_tab" | "accounts_payable_aging" | "accounts_receivable_aging" | "vendor_global_review" | "prepaid_expenses" | "fixed_assets" | "notification" | "rewards_card" | "billing" | "flux_analysis_operating_expense" | "account_reconciliation" | "zeni_credit_promo_card" | "treasury_promo_card" | "excluded_account_reconciliation";
5
+ export declare const initiateReportsResync: import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<[reportIdToResync: "cash_balance" | "card_balance" | "expense_automation_card" | "operating_expenses" | "operating_expenses_by_classes" | "revenue" | "revenue_by_classes" | "net_burn_or_income" | "net_burn_or_income_story_card" | "net_burn_or_income_by_classes" | "cash_position" | "top_expenses" | "profit_and_loss" | "profit_and_loss_by_classes" | "profit_and_loss_by_projects" | "balance_sheet" | "cash_flow" | "dashboard" | "finance_statement" | "transaction_list_of_account" | "transaction_list_missing_receipt" | "transaction_list_of_account_by_class" | "transaction_list_of_account_by_project" | "transaction_detail" | "cash_in_cash_out" | "insights_dashboard" | "company_details" | "class_list" | "account_list" | "account_list_by_type" | "vendor" | "task_card" | "bill_pay" | "reimbursement" | "bill_pay_card" | "reimbursement_card" | "bill_pay_promo_card" | "zeni_accounts" | "zeni_accounts_promo_card" | "zeni_treasury" | "charge_cards" | "other_connection" | "reimbursement_promo_card" | "onboarding" | "operating_expenses_by_vendor" | "operating_expenses_by_vendor_summary" | "vendors_tab" | "accounts_payable_aging" | "accounts_receivable_aging" | "vendor_global_review" | "prepaid_expenses" | "fixed_assets" | "notification" | "rewards_card" | "billing" | "flux_analysis_operating_expense" | "account_reconciliation" | "zeni_credit_promo_card" | "treasury_promo_card" | "excluded_account_reconciliation" | "transfer_accounts"], {
6
+ reportIdToResync: "cash_balance" | "card_balance" | "expense_automation_card" | "operating_expenses" | "operating_expenses_by_classes" | "revenue" | "revenue_by_classes" | "net_burn_or_income" | "net_burn_or_income_story_card" | "net_burn_or_income_by_classes" | "cash_position" | "top_expenses" | "profit_and_loss" | "profit_and_loss_by_classes" | "profit_and_loss_by_projects" | "balance_sheet" | "cash_flow" | "dashboard" | "finance_statement" | "transaction_list_of_account" | "transaction_list_missing_receipt" | "transaction_list_of_account_by_class" | "transaction_list_of_account_by_project" | "transaction_detail" | "cash_in_cash_out" | "insights_dashboard" | "company_details" | "class_list" | "account_list" | "account_list_by_type" | "vendor" | "task_card" | "bill_pay" | "reimbursement" | "bill_pay_card" | "reimbursement_card" | "bill_pay_promo_card" | "zeni_accounts" | "zeni_accounts_promo_card" | "zeni_treasury" | "charge_cards" | "other_connection" | "reimbursement_promo_card" | "onboarding" | "operating_expenses_by_vendor" | "operating_expenses_by_vendor_summary" | "vendors_tab" | "accounts_payable_aging" | "accounts_receivable_aging" | "vendor_global_review" | "prepaid_expenses" | "fixed_assets" | "notification" | "rewards_card" | "billing" | "flux_analysis_operating_expense" | "account_reconciliation" | "zeni_credit_promo_card" | "treasury_promo_card" | "excluded_account_reconciliation" | "transfer_accounts";
7
7
  }, "initiateReportsResync/initiateReportsResync", never, never>, initiateReportsClassViewRefetching: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
8
8
  reportIdToResync: ReportID;
9
9
  }, "initiateReportsResync/initiateReportsClassViewRefetching">, reportsResyncSuccess: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
@@ -14,8 +14,6 @@ const helpers_1 = require("./helpers");
14
14
  const remiListSelector_1 = require("./reimbursement/remiListView/remiListSelector");
15
15
  const remiListState_1 = require("./reimbursement/remiListView/remiListState");
16
16
  //filters items against filter values representing a range. ex: date (from-to), amount(1k<-->5k)
17
- // Spend Management uses only equal/not-equal — TC amount operators
18
- // (inBetween, lessThan, greaterThan) live in the TC filter pipeline.
19
17
  const filterItemOnRangeCategoryType = (valueForItem, currentFilter) => {
20
18
  let doesItemFallInValueRange = false;
21
19
  const filterField = currentFilter.field;
@@ -1,6 +1,6 @@
1
1
  import { RootState } from '../../reducer';
2
2
  export declare const getTasksCardReport: (state: RootState) => {
3
- reportId: "cash_balance" | "card_balance" | "expense_automation_card" | "operating_expenses" | "operating_expenses_by_classes" | "revenue" | "revenue_by_classes" | "net_burn_or_income" | "net_burn_or_income_story_card" | "net_burn_or_income_by_classes" | "cash_position" | "top_expenses" | "profit_and_loss" | "profit_and_loss_by_classes" | "profit_and_loss_by_projects" | "balance_sheet" | "cash_flow" | "dashboard" | "finance_statement" | "transaction_list_of_account" | "transaction_list_missing_receipt" | "transaction_list_of_account_by_class" | "transaction_list_of_account_by_project" | "transaction_detail" | "cash_in_cash_out" | "insights_dashboard" | "company_details" | "class_list" | "account_list" | "account_list_by_type" | "vendor" | "task_card" | "bill_pay" | "reimbursement" | "bill_pay_card" | "reimbursement_card" | "bill_pay_promo_card" | "zeni_accounts" | "zeni_accounts_promo_card" | "zeni_treasury" | "charge_cards" | "other_connection" | "reimbursement_promo_card" | "onboarding" | "operating_expenses_by_vendor" | "operating_expenses_by_vendor_summary" | "vendors_tab" | "accounts_payable_aging" | "accounts_receivable_aging" | "vendor_global_review" | "prepaid_expenses" | "fixed_assets" | "notification" | "rewards_card" | "billing" | "flux_analysis_operating_expense" | "account_reconciliation" | "zeni_credit_promo_card" | "treasury_promo_card" | "excluded_account_reconciliation";
3
+ reportId: "cash_balance" | "card_balance" | "expense_automation_card" | "operating_expenses" | "operating_expenses_by_classes" | "revenue" | "revenue_by_classes" | "net_burn_or_income" | "net_burn_or_income_story_card" | "net_burn_or_income_by_classes" | "cash_position" | "top_expenses" | "profit_and_loss" | "profit_and_loss_by_classes" | "profit_and_loss_by_projects" | "balance_sheet" | "cash_flow" | "dashboard" | "finance_statement" | "transaction_list_of_account" | "transaction_list_missing_receipt" | "transaction_list_of_account_by_class" | "transaction_list_of_account_by_project" | "transaction_detail" | "cash_in_cash_out" | "insights_dashboard" | "company_details" | "class_list" | "account_list" | "account_list_by_type" | "vendor" | "task_card" | "bill_pay" | "reimbursement" | "bill_pay_card" | "reimbursement_card" | "bill_pay_promo_card" | "zeni_accounts" | "zeni_accounts_promo_card" | "zeni_treasury" | "charge_cards" | "other_connection" | "reimbursement_promo_card" | "onboarding" | "operating_expenses_by_vendor" | "operating_expenses_by_vendor_summary" | "vendors_tab" | "accounts_payable_aging" | "accounts_receivable_aging" | "vendor_global_review" | "prepaid_expenses" | "fixed_assets" | "notification" | "rewards_card" | "billing" | "flux_analysis_operating_expense" | "account_reconciliation" | "zeni_credit_promo_card" | "treasury_promo_card" | "excluded_account_reconciliation" | "transfer_accounts";
4
4
  reportTitle: string;
5
5
  version: string | number | undefined;
6
6
  status: import("../..").Status | undefined;
@@ -4,7 +4,7 @@ import { RootState } from '../../reducer';
4
4
  import { TopExReport, TopExTimePeriodWithMetaData } from './topExSelectorTypes';
5
5
  import { TopExState } from './topExState';
6
6
  export declare const getTopExpenses: (accountState: AccountState, topExState: TopExState, numberOfExpenses?: number) => {
7
- reportId: "cash_balance" | "card_balance" | "expense_automation_card" | "operating_expenses" | "operating_expenses_by_classes" | "revenue" | "revenue_by_classes" | "net_burn_or_income" | "net_burn_or_income_story_card" | "net_burn_or_income_by_classes" | "cash_position" | "top_expenses" | "profit_and_loss" | "profit_and_loss_by_classes" | "profit_and_loss_by_projects" | "balance_sheet" | "cash_flow" | "dashboard" | "finance_statement" | "transaction_list_of_account" | "transaction_list_missing_receipt" | "transaction_list_of_account_by_class" | "transaction_list_of_account_by_project" | "transaction_detail" | "cash_in_cash_out" | "insights_dashboard" | "company_details" | "class_list" | "account_list" | "account_list_by_type" | "vendor" | "task_card" | "bill_pay" | "reimbursement" | "bill_pay_card" | "reimbursement_card" | "bill_pay_promo_card" | "zeni_accounts" | "zeni_accounts_promo_card" | "zeni_treasury" | "charge_cards" | "other_connection" | "reimbursement_promo_card" | "onboarding" | "operating_expenses_by_vendor" | "operating_expenses_by_vendor_summary" | "vendors_tab" | "accounts_payable_aging" | "accounts_receivable_aging" | "vendor_global_review" | "prepaid_expenses" | "fixed_assets" | "notification" | "rewards_card" | "billing" | "flux_analysis_operating_expense" | "account_reconciliation" | "zeni_credit_promo_card" | "treasury_promo_card" | "excluded_account_reconciliation";
7
+ reportId: "cash_balance" | "card_balance" | "expense_automation_card" | "operating_expenses" | "operating_expenses_by_classes" | "revenue" | "revenue_by_classes" | "net_burn_or_income" | "net_burn_or_income_story_card" | "net_burn_or_income_by_classes" | "cash_position" | "top_expenses" | "profit_and_loss" | "profit_and_loss_by_classes" | "profit_and_loss_by_projects" | "balance_sheet" | "cash_flow" | "dashboard" | "finance_statement" | "transaction_list_of_account" | "transaction_list_missing_receipt" | "transaction_list_of_account_by_class" | "transaction_list_of_account_by_project" | "transaction_detail" | "cash_in_cash_out" | "insights_dashboard" | "company_details" | "class_list" | "account_list" | "account_list_by_type" | "vendor" | "task_card" | "bill_pay" | "reimbursement" | "bill_pay_card" | "reimbursement_card" | "bill_pay_promo_card" | "zeni_accounts" | "zeni_accounts_promo_card" | "zeni_treasury" | "charge_cards" | "other_connection" | "reimbursement_promo_card" | "onboarding" | "operating_expenses_by_vendor" | "operating_expenses_by_vendor_summary" | "vendors_tab" | "accounts_payable_aging" | "accounts_receivable_aging" | "vendor_global_review" | "prepaid_expenses" | "fixed_assets" | "notification" | "rewards_card" | "billing" | "flux_analysis_operating_expense" | "account_reconciliation" | "zeni_credit_promo_card" | "treasury_promo_card" | "excluded_account_reconciliation" | "transfer_accounts";
8
8
  reportTitle: string;
9
9
  version: string | number | undefined;
10
10
  status: import("../..").Status | undefined;
@@ -7,9 +7,10 @@ import { ZeniAPI } from '../../../zeniAPI';
7
7
  import { fetchAccountList } from '../../accountList/accountListReducer';
8
8
  import { fetchClassList } from '../../classList/classListReducer';
9
9
  import { updateTransactionVendorLocalData } from '../../commonVendorView/transactionVendorView/transactionVendorViewReducer';
10
+ import { fetchTransferAccounts } from '../../expenseAutomationView/reducers/transactionsViewReducer';
10
11
  import { fetchOwnerList } from '../../ownerList/ownerListReducer';
11
12
  import { fetchProjectList } from '../../projectList/projectListReducer';
12
13
  import { updateSortUiState } from '../../vendorList/vendorListReducer';
13
14
  import { fetchTransactionDetail, initializeTransactionDetailLocalData, removeTransactionDetail, updateTransactionDetailFetchState } from '../transactionDetailReducer';
14
- export type ActionType = ReturnType<typeof fetchTransactionDetail> | ReturnType<typeof updateTransaction> | ReturnType<typeof updateTransactionDetailFetchState> | ReturnType<typeof initializeTransactionDetailLocalData> | ReturnType<typeof removeTransaction> | ReturnType<typeof removeTransactionDetail> | ReturnType<typeof fetchClassList> | ReturnType<typeof fetchProjectList> | ReturnType<typeof fetchAccountList> | ReturnType<typeof updateSortUiState> | ReturnType<typeof updateVendors> | ReturnType<typeof updateTransactionVendorLocalData> | ReturnType<typeof fetchOwnerList>;
15
+ export type ActionType = ReturnType<typeof fetchTransactionDetail> | ReturnType<typeof updateTransaction> | ReturnType<typeof updateTransactionDetailFetchState> | ReturnType<typeof initializeTransactionDetailLocalData> | ReturnType<typeof removeTransaction> | ReturnType<typeof removeTransactionDetail> | ReturnType<typeof fetchClassList> | ReturnType<typeof fetchProjectList> | ReturnType<typeof fetchAccountList> | ReturnType<typeof updateSortUiState> | ReturnType<typeof updateVendors> | ReturnType<typeof updateTransactionVendorLocalData> | ReturnType<typeof fetchOwnerList> | ReturnType<typeof fetchTransferAccounts>;
15
16
  export declare const fetchTransactionDetailEpic: (actions$: ActionsObservable<ActionType>, state$: StateObservable<RootState>, zeniAPI: ZeniAPI) => Observable<ActionType>;
@@ -19,6 +19,7 @@ const accountListReducer_1 = require("../../accountList/accountListReducer");
19
19
  const classListReducer_1 = require("../../classList/classListReducer");
20
20
  const transactionVendorLocalDataHelper_1 = require("../../commonVendorView/transactionVendorView/transactionVendorLocalDataHelper");
21
21
  const transactionVendorViewReducer_1 = require("../../commonVendorView/transactionVendorView/transactionVendorViewReducer");
22
+ const transactionsViewReducer_1 = require("../../expenseAutomationView/reducers/transactionsViewReducer");
22
23
  const ownerListReducer_1 = require("../../ownerList/ownerListReducer");
23
24
  const projectListReducer_1 = require("../../projectList/projectListReducer");
24
25
  const transactionDetailReducer_1 = require("../transactionDetailReducer");
@@ -41,6 +42,11 @@ const fetchTransactionDetailEpic = (actions$, state$, zeniAPI) => actions$.pipe(
41
42
  accountList.fetchState !== 'In-Progress') {
42
43
  transactionActions.push((0, accountListReducer_1.fetchAccountList)('accountList'));
43
44
  }
45
+ const { transferAccounts } = state$.value.expenseAutomationTransactionsViewState;
46
+ if (transferAccounts.fetchState !== 'In-Progress' &&
47
+ transferAccounts.fetchState !== 'Completed') {
48
+ transactionActions.push((0, transactionsViewReducer_1.fetchTransferAccounts)());
49
+ }
44
50
  const classList = state$.value.classListState;
45
51
  if (classList.hasValidState() === false &&
46
52
  classList.fetchState !== 'In-Progress') {
@@ -3,7 +3,7 @@ import { TransactionPayload } from '../../entity/transaction/payloadTypes/transa
3
3
  import { SupportedTransactionPayload } from '../../entity/transaction/transactionState';
4
4
  import { VendorPayload } from '../../entity/vendor/vendorPayload';
5
5
  import { ZeniAPIResponse } from '../../responsePayload';
6
- interface TransactionDetailPayload {
6
+ export interface TransactionDetailPayload {
7
7
  query: {
8
8
  transaction_id: string;
9
9
  transaction_type: string;
@@ -1,7 +1,8 @@
1
1
  import { NestedAccountHierarchyForReport } from '../../commonStateTypes/accountView/nestedAccountID';
2
2
  import { NestedClassHierarchyForReport } from '../../commonStateTypes/classesView/nestedClassID';
3
- import { FetchStateAndError } from '../../commonStateTypes/common';
3
+ import { FetchState, FetchStateAndError } from '../../commonStateTypes/common';
4
4
  import { SelectorView } from '../../commonStateTypes/viewAndReport/viewAndReport';
5
+ import { AccountBase } from '../../entity/account/accountState';
5
6
  import { TransactionID } from '../../entity/transaction/stateTypes/transaction';
6
7
  import { SupportedTransactionWithCOT } from '../../entity/transaction/transactionState';
7
8
  import { Vendor } from '../../entity/vendor/vendorState';
@@ -17,6 +18,7 @@ export interface TransactionDetailReport extends SelectorView {
17
18
  allVendors: Vendor[];
18
19
  classHierarchyList: NestedClassHierarchyForReport[];
19
20
  classList: ClassListSelectorView;
21
+ createTransferEntryStatus: FetchState;
20
22
  deleteStatusByAttachmentName: Record<string, FetchStateAndError>;
21
23
  isAccountingClassesEnabled: boolean;
22
24
  isAccountingProjectsEnabled: boolean;
@@ -24,6 +26,7 @@ export interface TransactionDetailReport extends SelectorView {
24
26
  projectList: ProjectListSelectorView;
25
27
  transactionDetailLocalData: TransactionDetailLocalData;
26
28
  transactionDetailUpdateStatus: FetchStateAndError;
29
+ transferAccounts: AccountBase[];
27
30
  isUpdateNotAllowed?: boolean;
28
31
  transaction?: SupportedTransactionWithCOT;
29
32
  }
@@ -7,6 +7,7 @@ exports.getInitialUpdatablePeriodsForTransactionRecommendations = exports.getTra
7
7
  exports.getTransactionDetailForTransaction = getTransactionDetailForTransaction;
8
8
  const get_1 = __importDefault(require("lodash/get"));
9
9
  const reduceFetchState_1 = require("../../commonStateTypes/reduceFetchState");
10
+ const accountSelector_1 = require("../../entity/account/accountSelector");
10
11
  const tenantSelector_1 = require("../../entity/tenant/tenantSelector");
11
12
  const transactionType_1 = require("../../entity/transaction/stateTypes/transactionType");
12
13
  const transactionHelper_1 = require("../../entity/transaction/transactionHelper");
@@ -18,7 +19,7 @@ const classListSelector_1 = require("../classList/classListSelector");
18
19
  const projectListSelector_1 = require("../projectList/projectListSelector");
19
20
  const transactionDetailState_1 = require("./transactionDetailState");
20
21
  const getTransactionDetail = (state, transactionId, fetchLinkedTransactions = true) => {
21
- const { transactionDetailState, transactionState, vendorState, vendorListState, accountState, classState, classListState, accountListState, projectState, projectListState, } = state;
22
+ const { transactionDetailState, transactionState, vendorState, vendorListState, accountState, classState, classListState, accountListState, expenseAutomationTransactionsViewState, projectState, projectListState, } = state;
22
23
  const detailKey = (0, transactionDetailState_1.getTransactionDetailKey)(transactionId);
23
24
  const transactionDetail = (0, get_1.default)(transactionDetailState.transactionDetailById, detailKey);
24
25
  let fetchState = {
@@ -79,6 +80,14 @@ const getTransactionDetail = (state, transactionId, fetchLinkedTransactions = tr
79
80
  : [];
80
81
  const transactionDetailAnyUpdateStatus = reduceUpdateFetchStates(transactionDetail);
81
82
  const vendors = (0, vendorSelector_1.getVendorsByVendorIds)(vendorState, vendorListState.vendorIds);
83
+ const transferAccountsFromApi = expenseAutomationTransactionsViewState.transferAccounts.accountIds
84
+ .map((id) => (0, accountSelector_1.getAccountBaseForTransferAccounts)(accountState, id))
85
+ .filter((account) => account != null);
86
+ const transferAccountsList = transferAccountsFromApi.length > 0
87
+ ? transferAccountsFromApi
88
+ : accountsList.accounts
89
+ .map((a) => (0, accountSelector_1.getAccountBase)(accountState, a.accountId, 'account_list'))
90
+ .filter((account) => account != null);
82
91
  return {
83
92
  reportId: 'transaction_detail',
84
93
  reportTitle: 'Transaction Detail',
@@ -95,6 +104,8 @@ const getTransactionDetail = (state, transactionId, fetchLinkedTransactions = tr
95
104
  accountsHierarchyList,
96
105
  classList: classList,
97
106
  isAccountingClassesEnabled,
107
+ createTransferEntryStatus: expenseAutomationTransactionsViewState.createTransferEntryStatus,
108
+ transferAccounts: transferAccountsList,
98
109
  isAccountingProjectsEnabled,
99
110
  projectList,
100
111
  isUpdateNotAllowed: transactionDetail?.isUpdateNotAllowed,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zeniai/client-epic-state",
3
- "version": "5.0.55-betaAR6",
3
+ "version": "5.0.55-betaML3",
4
4
  "description": "Shared module between Web & Mobile containing required abstractions for state management, async network communication. ",
5
5
  "main": "lib/index.js",
6
6
  "module": "lib/esm/index.js",