@zeniai/client-epic-state 4.13.73 → 4.13.74

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.
@@ -61,6 +61,7 @@ const saveTransactionVendorEpic = (actions$, state$, zeniAPI) => actions$.pipe((
61
61
  action.payload.transactionId != null) {
62
62
  actions.push((0, transactionDetailReducer_1.saveTransactionDetail)({
63
63
  transactionId: action.payload.transactionId,
64
+ isExpenseAutomationEnabled: action.payload.isExpenseAutomationEnabled,
64
65
  }));
65
66
  }
66
67
  return (0, rxjs_1.from)(actions);
@@ -6,10 +6,11 @@ export declare const initialVendorDetailLocalData: TransactionVendorLocalData;
6
6
  export declare const initialState: TransactionVendorViewState;
7
7
  export declare const updateVendorSaveStatus: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
8
8
  vendorId?: string | undefined;
9
- }, string>, saveTransactionVendor: import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<[transactionId?: TransactionID | undefined, vendorId?: string | undefined, saveTransaction?: boolean | undefined], {
9
+ }, string>, saveTransactionVendor: import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<[transactionId?: TransactionID | undefined, vendorId?: string | undefined, saveTransaction?: boolean | undefined, isExpenseAutomationEnabled?: any], {
10
10
  vendorId: string | undefined;
11
11
  transactionId: TransactionID | undefined;
12
12
  saveTransaction: boolean | undefined;
13
+ isExpenseAutomationEnabled: any;
13
14
  }, string, never, never>, saveTransactionVendorSuccessOrFailure: import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<[fetchState: FetchState, vendorId?: string | undefined, error?: ZeniAPIStatus<Record<string, unknown>> | undefined], {
14
15
  fetchState: FetchState;
15
16
  vendorId: string | undefined;
@@ -45,12 +45,13 @@ const transactionVendorView = (0, toolkit_1.createSlice)({
45
45
  draft.newVendorState.saveStatus.error = undefined;
46
46
  }
47
47
  },
48
- prepare(transactionId, vendorId, saveTransaction) {
48
+ prepare(transactionId, vendorId, saveTransaction, isExpenseAutomationEnabled = false) {
49
49
  return {
50
50
  payload: {
51
51
  vendorId,
52
52
  transactionId,
53
53
  saveTransaction,
54
+ isExpenseAutomationEnabled,
54
55
  },
55
56
  };
56
57
  },
@@ -16,7 +16,7 @@ const toTransactionUpdatesFromTransactionCategorizationLocalData = (transactionC
16
16
  };
17
17
  const updatesByLineId = {};
18
18
  const entityUpdates = {};
19
- const isTransactionMisCategorized = (0, saveTransactionHelper_1.isTransactionMiscategorized)(transaction);
19
+ const isTransactionMisCategorized = (0, saveTransactionHelper_1.isTransactionMiscategorized)(transaction, true);
20
20
  const isTransactionUnCategorized = (0, saveTransactionHelper_1.isTransactionUncategorized)(transaction, uncategorizedIncomeExpense);
21
21
  updates.memo = transactionCategorizationLocalData.memo;
22
22
  if ((0, vendorTransaction_1.isVendorTransaction)(transaction) === true) {
@@ -14,6 +14,7 @@ const accountListSelector_1 = require("../../accountList/accountListSelector");
14
14
  const transactionSelector_1 = require("../../../entity/transaction/transactionSelector");
15
15
  const saveTransactionDetailEpic = (actions$, state$) => actions$.pipe((0, operators_1.filter)(transactionDetailReducer_1.saveTransactionDetail.match), (0, operators_1.mergeMap)((action) => {
16
16
  const transactionId = action.payload.transactionId;
17
+ const isExpenseAutomationEnabled = action.payload.isExpenseAutomationEnabled;
17
18
  const fetchActions = [];
18
19
  const transactionDetailState = state$.value.transactionDetailState;
19
20
  const transactionState = state$.value.transactionState;
@@ -23,7 +24,7 @@ const saveTransactionDetailEpic = (actions$, state$) => actions$.pipe((0, operat
23
24
  if (detail != null && transaction != null) {
24
25
  const uncategorizedIncomeExpense = (0, accountListSelector_1.getUncategorizedAccounts)(state$.value.accountState, state$.value.accountListState, 'accountList');
25
26
  const localData = detail.transactionDetailLocalData;
26
- const transactionSaveUpdates = (0, saveTransactionHelper_1.toTransactionUpdatesFromTransactionDetailLocalData)(localData, transaction, uncategorizedIncomeExpense);
27
+ const transactionSaveUpdates = (0, saveTransactionHelper_1.toTransactionUpdatesFromTransactionDetailLocalData)(localData, transaction, uncategorizedIncomeExpense, isExpenseAutomationEnabled);
27
28
  fetchActions.push((0, transactionDetailReducer_1.updateTransactionDetail)(transactionId, transactionSaveUpdates));
28
29
  return (0, rxjs_1.from)(fetchActions);
29
30
  }
@@ -21,9 +21,9 @@ import { TransactionDetailLocalData } from '../transactionDetailTypes';
21
21
  * 4. Only difference between this and Miscategorized will be that we will
22
22
  * additionally fire “Mark as not miscat” for every point above.
23
23
  */
24
- export declare const toTransactionUpdatesFromTransactionDetailLocalData: (transactionDetailLocalData: TransactionDetailLocalData, transaction: SupportedTransaction, uncategorizedIncomeExpense: UncategorizedAccounts) => TransactionSaveUpdates;
24
+ export declare const toTransactionUpdatesFromTransactionDetailLocalData: (transactionDetailLocalData: TransactionDetailLocalData, transaction: SupportedTransaction, uncategorizedIncomeExpense: UncategorizedAccounts, isExpenseAutomationEnabled: boolean) => TransactionSaveUpdates;
25
25
  export declare const toRecommendedAccountBase: (amountValue: number, accountBase?: AccountBase | undefined, recommendationBase?: RecommendationBase | undefined) => RecommendedAccountBase | undefined;
26
26
  export declare const toRecommendedClassBase: (amountValue: number, classBase?: ClassBase | undefined, recommendationBase?: RecommendationBase | undefined) => RecommendedClassBase | undefined;
27
- export declare const isTransactionMiscategorized: (transaction: SupportedTransaction) => boolean;
27
+ export declare const isTransactionMiscategorized: (transaction: SupportedTransaction, isExpenseAutomationEnabled: boolean) => boolean;
28
28
  export declare const isTransactionUncategorized: (transaction: SupportedTransaction, uncategorizedIncomeExpense: UncategorizedAccounts) => boolean;
29
29
  export declare const isAccountUncategorized: (uncategorizedIncomeExpense: UncategorizedAccounts, lineQboId?: string | undefined) => boolean;
@@ -24,14 +24,14 @@ const recommendationState_1 = require("../../recommendation/recommendationState"
24
24
  * 4. Only difference between this and Miscategorized will be that we will
25
25
  * additionally fire “Mark as not miscat” for every point above.
26
26
  */
27
- const toTransactionUpdatesFromTransactionDetailLocalData = (transactionDetailLocalData, transaction, uncategorizedIncomeExpense) => {
27
+ const toTransactionUpdatesFromTransactionDetailLocalData = (transactionDetailLocalData, transaction, uncategorizedIncomeExpense, isExpenseAutomationEnabled) => {
28
28
  var _a, _b, _c;
29
29
  const updates = {
30
30
  updatesByLineId: {},
31
31
  };
32
32
  const updatesByLineId = {};
33
33
  const entityUpdates = {};
34
- const isTransactionMisCategorized = (0, exports.isTransactionMiscategorized)(transaction);
34
+ const isTransactionMisCategorized = (0, exports.isTransactionMiscategorized)(transaction, isExpenseAutomationEnabled);
35
35
  const isTransactionUnCategorized = (0, exports.isTransactionUncategorized)(transaction, uncategorizedIncomeExpense);
36
36
  updates.memo = transactionDetailLocalData.memo;
37
37
  const updatedEntityId = transactionDetailLocalData.updatePreviousTransactionsWithUpdatedVendor ===
@@ -252,8 +252,11 @@ const getEntityDetails = (entity, lineItemLocalData, vendorUpdates) => {
252
252
  }
253
253
  return undefined;
254
254
  };
255
- const isTransactionMiscategorized = (transaction) => {
255
+ const isTransactionMiscategorized = (transaction, isExpenseAutomationEnabled) => {
256
256
  const lines = transaction.lines;
257
+ if (isExpenseAutomationEnabled === true && (0, vendorTransaction_1.isVendorTransaction)(transaction)) {
258
+ return true;
259
+ }
257
260
  let isTransactionMisCategorized = false;
258
261
  lines === null || lines === void 0 ? void 0 : lines.forEach((line) => {
259
262
  if (line.type === 'transaction_with_account_and_class_line' ||
@@ -44,6 +44,7 @@ export declare const fetchTransactionDetail: import("@reduxjs/toolkit").ActionCr
44
44
  transactionId: TransactionID;
45
45
  }, string>, saveTransactionDetail: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
46
46
  transactionId: TransactionID;
47
+ isExpenseAutomationEnabled: boolean;
47
48
  }, string>, initializeTransactionDetailLocalData: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
48
49
  transactionId: TransactionID;
49
50
  vendorId?: string | undefined;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zeniai/client-epic-state",
3
- "version": "4.13.73",
3
+ "version": "4.13.74",
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
  "types": "lib/index.d.ts",