@zeniai/client-epic-state 5.0.31-betaAR8 → 5.0.31-betaML1

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 (82) 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 +6 -0
  21. package/lib/entity/transaction/payloadTypes/transactionPayload.js +10 -0
  22. package/lib/entity/transaction/stateTypes/paymentType.d.ts +0 -13
  23. package/lib/entity/transaction/stateTypes/paymentType.js +4 -27
  24. package/lib/entity/transaction/stateTypes/transaction.d.ts +6 -0
  25. package/lib/epic.d.ts +3 -1
  26. package/lib/epic.js +3 -1
  27. package/lib/esm/commonStateTypes/viewAndReport/viewAndReport.js +1 -0
  28. package/lib/esm/entity/account/accountSelector.js +7 -33
  29. package/lib/esm/entity/account/accountState.js +1 -7
  30. package/lib/esm/entity/class/classSelector.js +0 -7
  31. package/lib/esm/entity/snackbar/snackbarTypes.js +2 -0
  32. package/lib/esm/entity/transaction/payloadTypes/transactionPayload.js +10 -0
  33. package/lib/esm/entity/transaction/stateTypes/paymentType.js +1 -23
  34. package/lib/esm/epic.js +3 -1
  35. package/lib/esm/index.js +14 -17
  36. package/lib/esm/view/expenseAutomationView/epics/transactionCategorization/createTransferEntryEpic.js +81 -0
  37. package/lib/esm/view/expenseAutomationView/epics/transactionCategorization/fetchTransactionCategorizationEpic.js +0 -5
  38. package/lib/esm/view/expenseAutomationView/epics/transactionCategorization/fetchTransactionCategorizationViewEpic.js +5 -1
  39. package/lib/esm/view/expenseAutomationView/epics/transactionCategorization/fetchTransferAccountsEpic.js +25 -0
  40. package/lib/esm/view/expenseAutomationView/reducers/transactionsViewReducer.js +66 -11
  41. package/lib/esm/view/expenseAutomationView/selectors/transactionCategorizationSelector.js +27 -57
  42. package/lib/esm/view/spendManagement/spendManagementFilterHelpers.js +15 -184
  43. package/lib/esm/view/transactionDetail/epics/transactionDetailEpic.js +6 -0
  44. package/lib/esm/view/transactionDetail/transactionDetailSelector.js +12 -1
  45. package/lib/index.d.ts +20 -22
  46. package/lib/index.js +51 -54
  47. package/lib/tsconfig.typecheck.tsbuildinfo +1 -1
  48. package/lib/view/auditReportView/auditReportViewState.d.ts +1 -1
  49. package/lib/view/billPayCard/billPayCardSelector.d.ts +1 -1
  50. package/lib/view/cardBalance/cardBalanceSelector.d.ts +1 -1
  51. package/lib/view/cashBalance/cashBalanceSelector.d.ts +1 -1
  52. package/lib/view/cashInCashOut/cashInCashOutSelector.d.ts +1 -1
  53. package/lib/view/cashPosition/cashPositionSelector.d.ts +1 -1
  54. package/lib/view/dashboard/dashboardReducer.d.ts +2 -2
  55. package/lib/view/expenseAutomationView/epics/transactionCategorization/createTransferEntryEpic.d.ts +9 -0
  56. package/lib/view/expenseAutomationView/epics/transactionCategorization/createTransferEntryEpic.js +85 -0
  57. package/lib/view/expenseAutomationView/epics/transactionCategorization/fetchTransactionCategorizationEpic.js +0 -5
  58. package/lib/view/expenseAutomationView/epics/transactionCategorization/fetchTransactionCategorizationViewEpic.d.ts +2 -2
  59. package/lib/view/expenseAutomationView/epics/transactionCategorization/fetchTransactionCategorizationViewEpic.js +4 -0
  60. package/lib/view/expenseAutomationView/epics/transactionCategorization/fetchTransferAccountsEpic.d.ts +8 -0
  61. package/lib/view/expenseAutomationView/epics/transactionCategorization/fetchTransferAccountsEpic.js +29 -0
  62. package/lib/view/expenseAutomationView/helpers/transactionCategorizationLocalDataHelper.d.ts +1 -1
  63. package/lib/view/expenseAutomationView/reducers/transactionsViewReducer.d.ts +16 -6
  64. package/lib/view/expenseAutomationView/reducers/transactionsViewReducer.js +67 -12
  65. package/lib/view/expenseAutomationView/selectorTypes/transactionsViewSelectorTypes.d.ts +3 -1
  66. package/lib/view/expenseAutomationView/selectors/transactionCategorizationSelector.d.ts +3 -4
  67. package/lib/view/expenseAutomationView/selectors/transactionCategorizationSelector.js +28 -59
  68. package/lib/view/expenseAutomationView/types/transactionsViewState.d.ts +13 -3
  69. package/lib/view/financeStatement/financeStatementReducer.d.ts +1 -1
  70. package/lib/view/globalMerchantView/globalMerchantViewReducer.d.ts +2 -2
  71. package/lib/view/reimbursementCard/reimbursementCardSelector.d.ts +1 -1
  72. package/lib/view/reportsResync/reportsResyncReducer.d.ts +2 -2
  73. package/lib/view/spendManagement/spendManagementFilterHelpers.d.ts +4 -45
  74. package/lib/view/spendManagement/spendManagementFilterHelpers.js +16 -185
  75. package/lib/view/tasksCard/tasksCardSelector.d.ts +1 -1
  76. package/lib/view/topEx/topExSelector.d.ts +1 -1
  77. package/lib/view/transactionDetail/epics/transactionDetailEpic.d.ts +2 -1
  78. package/lib/view/transactionDetail/epics/transactionDetailEpic.js +6 -0
  79. package/lib/view/transactionDetail/transactionDetailPayload.d.ts +1 -1
  80. package/lib/view/transactionDetail/transactionDetailSelector.d.ts +4 -1
  81. package/lib/view/transactionDetail/transactionDetailSelector.js +12 -1
  82. package/package.json +1 -1
@@ -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_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_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,8 +7,9 @@ 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 { updateSortUiState } from '../../vendorList/vendorListReducer';
12
13
  import { fetchTransactionDetail, initializeTransactionDetailLocalData, removeTransactionDetail, updateTransactionDetailFetchState } from '../transactionDetailReducer';
13
- 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 fetchAccountList> | ReturnType<typeof updateSortUiState> | ReturnType<typeof updateVendors> | ReturnType<typeof updateTransactionVendorLocalData> | ReturnType<typeof fetchOwnerList>;
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 fetchAccountList> | ReturnType<typeof updateSortUiState> | ReturnType<typeof updateVendors> | ReturnType<typeof updateTransactionVendorLocalData> | ReturnType<typeof fetchOwnerList> | ReturnType<typeof fetchTransferAccounts>;
14
15
  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 transactionDetailReducer_1 = require("../transactionDetailReducer");
24
25
  const transactionDetailState_1 = require("../transactionDetailState");
@@ -40,6 +41,11 @@ const fetchTransactionDetailEpic = (actions$, state$, zeniAPI) => actions$.pipe(
40
41
  accountList.fetchState !== 'In-Progress') {
41
42
  transactionActions.push((0, accountListReducer_1.fetchAccountList)('accountList'));
42
43
  }
44
+ const { transferAccounts } = state$.value.expenseAutomationTransactionsViewState;
45
+ if (transferAccounts.fetchState !== 'In-Progress' &&
46
+ transferAccounts.fetchState !== 'Completed') {
47
+ transactionActions.push((0, transactionsViewReducer_1.fetchTransferAccounts)());
48
+ }
43
49
  const classList = state$.value.classListState;
44
50
  if (classList.hasValidState() === false &&
45
51
  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';
@@ -16,11 +17,13 @@ export interface TransactionDetailReport extends SelectorView {
16
17
  allVendors: Vendor[];
17
18
  classHierarchyList: NestedClassHierarchyForReport[];
18
19
  classList: ClassListSelectorView;
20
+ createTransferEntryStatus: FetchState;
19
21
  deleteStatusByAttachmentName: Record<string, FetchStateAndError>;
20
22
  isAccountingClassesEnabled: boolean;
21
23
  linkedTransactions: SupportedTransactionWithCOT[];
22
24
  transactionDetailLocalData: TransactionDetailLocalData;
23
25
  transactionDetailUpdateStatus: FetchStateAndError;
26
+ transferAccounts: AccountBase[];
24
27
  isUpdateNotAllowed?: boolean;
25
28
  transaction?: SupportedTransactionWithCOT;
26
29
  }
@@ -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");
@@ -17,7 +18,7 @@ const accountListSelector_1 = require("../accountList/accountListSelector");
17
18
  const classListSelector_1 = require("../classList/classListSelector");
18
19
  const transactionDetailState_1 = require("./transactionDetailState");
19
20
  const getTransactionDetail = (state, transactionId, fetchLinkedTransactions = true) => {
20
- const { transactionDetailState, transactionState, vendorState, vendorListState, accountState, classState, classListState, accountListState, } = state;
21
+ const { transactionDetailState, transactionState, vendorState, vendorListState, accountState, classState, classListState, accountListState, expenseAutomationTransactionsViewState, } = state;
21
22
  const detailKey = (0, transactionDetailState_1.getTransactionDetailKey)(transactionId);
22
23
  const transactionDetail = (0, get_1.default)(transactionDetailState.transactionDetailById, detailKey);
23
24
  let fetchState = {
@@ -69,6 +70,14 @@ const getTransactionDetail = (state, transactionId, fetchLinkedTransactions = tr
69
70
  : [];
70
71
  const transactionDetailAnyUpdateStatus = reduceUpdateFetchStates(transactionDetail);
71
72
  const vendors = (0, vendorSelector_1.getVendorsByVendorIds)(vendorState, vendorListState.vendorIds);
73
+ const transferAccountsFromApi = expenseAutomationTransactionsViewState.transferAccounts.accountIds
74
+ .map((id) => (0, accountSelector_1.getAccountBaseForTransferAccounts)(accountState, id))
75
+ .filter((account) => account != null);
76
+ const transferAccountsList = transferAccountsFromApi.length > 0
77
+ ? transferAccountsFromApi
78
+ : accountsList.accounts
79
+ .map((a) => (0, accountSelector_1.getAccountBase)(accountState, a.accountId, 'account_list'))
80
+ .filter((account) => account != null);
72
81
  return {
73
82
  reportId: 'transaction_detail',
74
83
  reportTitle: 'Transaction Detail',
@@ -85,6 +94,8 @@ const getTransactionDetail = (state, transactionId, fetchLinkedTransactions = tr
85
94
  accountsHierarchyList,
86
95
  classList: classList,
87
96
  isAccountingClassesEnabled,
97
+ createTransferEntryStatus: expenseAutomationTransactionsViewState.createTransferEntryStatus,
98
+ transferAccounts: transferAccountsList,
88
99
  isUpdateNotAllowed: transactionDetail?.isUpdateNotAllowed,
89
100
  transactionDetailLocalData: transactionDetail?.transactionDetailLocalData ??
90
101
  transactionDetailState_1.initialSupportedTransactionDetail.transactionDetailLocalData,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zeniai/client-epic-state",
3
- "version": "5.0.31-betaAR8",
3
+ "version": "5.0.31-betaML1",
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",