@zeniai/client-epic-state 4.18.3 → 4.18.4

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 (24) hide show
  1. package/lib/commonPayloadTypes/recommendationPayload.d.ts +0 -19
  2. package/lib/entity/account/accountPayload.d.ts +2 -3
  3. package/lib/entity/account/accountPayload.js +1 -10
  4. package/lib/entity/class/classPayload.d.ts +2 -3
  5. package/lib/entity/class/classPayload.js +0 -9
  6. package/lib/entity/transaction/payloadTypes/transactionPayload.d.ts +2 -3
  7. package/lib/entity/transaction/payloadTypes/transactionPayload.js +1 -51
  8. package/lib/entity/transaction/transactionHelper.d.ts +0 -1
  9. package/lib/entity/transaction/transactionHelper.js +0 -13
  10. package/lib/view/expenseAutomationView/helpers/transactionCategorizationLocalDataHelper.d.ts +1 -1
  11. package/lib/view/expenseAutomationView/helpers/transactionCategorizationLocalDataHelper.js +3 -3
  12. package/lib/view/expenseAutomationView/reducers/transactionsViewReducer.d.ts +2 -2
  13. package/lib/view/expenseAutomationView/reducers/transactionsViewReducer.js +3 -3
  14. package/lib/view/recommendation/fetchEntityRecommendationsByTransactionIdEpic.js +6 -11
  15. package/lib/view/recommendation/recommendationHelper.d.ts +3 -5
  16. package/lib/view/recommendation/recommendationHelper.js +1 -31
  17. package/lib/view/recommendation/recommendationPayload.d.ts +1 -5
  18. package/lib/view/recommendation/recommendationReducer.d.ts +1 -2
  19. package/lib/view/recommendation/recommendationReducer.js +1 -2
  20. package/lib/view/transactionDetail/transactionDetailLocalDataHelper.d.ts +3 -3
  21. package/lib/view/transactionDetail/transactionDetailLocalDataHelper.js +4 -1
  22. package/lib/view/transactionDetail/transactionDetailReducer.d.ts +3 -3
  23. package/lib/view/transactionDetail/transactionDetailReducer.js +4 -4
  24. package/package.json +1 -1
@@ -10,31 +10,12 @@ export interface RecommendationBasePayload {
10
10
  recommendation_hash?: string;
11
11
  type?: string;
12
12
  }
13
- export interface AIReasoningPayload {
14
- cot: string[];
15
- reasoning: string;
16
- }
17
13
  export interface RecommendationPayload {
18
14
  accounting_classes?: RecommendedClassBasePayload[];
19
15
  accounts?: RecommendedAccountBasePayload[];
20
16
  customers?: RecommendedVendorBasePayload[];
21
17
  vendors?: RecommendedVendorBasePayload[];
22
18
  }
23
- export interface RecommendedAccountBasePayloadWithCOT extends RecommendedAccountBasePayload {
24
- ai_reasoning?: AIReasoningPayload;
25
- }
26
- export interface RecommendedClassBasePayloadWithCOT extends RecommendedClassBasePayload {
27
- ai_reasoning?: AIReasoningPayload;
28
- }
29
- export interface RecommendedVendorBasePayloadWithCOT extends RecommendedVendorBasePayload {
30
- ai_reasoning?: AIReasoningPayload;
31
- }
32
- export interface RecommendationPayloadWithCOT {
33
- accounting_classes?: RecommendedClassBasePayloadWithCOT[];
34
- accounts?: RecommendedAccountBasePayloadWithCOT[];
35
- customers?: RecommendedVendorBasePayloadWithCOT[];
36
- vendors?: RecommendedVendorBasePayloadWithCOT[];
37
- }
38
19
  export interface EntityRecommendationPayload {
39
20
  account?: RecommendedAccountBasePayload;
40
21
  accounting_class?: RecommendedClassBasePayload;
@@ -1,9 +1,9 @@
1
1
  import { BalancePayload } from '../../commonPayloadTypes/balanceChangePayload';
2
2
  import { COABalanceGroupedPayload } from '../../commonPayloadTypes/coaBalancePayload';
3
- import { RecommendationBasePayload, RecommendedAccountBasePayloadWithCOT } from '../../commonPayloadTypes/recommendationPayload';
3
+ import { RecommendationBasePayload } from '../../commonPayloadTypes/recommendationPayload';
4
4
  import { StatusPayload } from '../../commonPayloadTypes/statusPayload';
5
5
  import { URLPayload } from '../../commonPayloadTypes/urlPayload';
6
- import { AccountBase, AccountMetadata, RecommendedAccountBase, RecommendedAccountBaseWithCOT, StatementCloseDay } from './accountState';
6
+ import { AccountBase, AccountMetadata, RecommendedAccountBase, StatementCloseDay } from './accountState';
7
7
  export interface AccountBasePayload {
8
8
  account_id: string;
9
9
  account_name: string;
@@ -31,7 +31,6 @@ export interface RecommendedAccountBasePayload extends AccountBasePayload, Recom
31
31
  }
32
32
  export declare const mapAccountBasePayloadToAccountBase: (payload: AccountBasePayload) => AccountBase;
33
33
  export declare const mapRecommendedAccountBasePayloadToRecommendedAccountBase: (payload: RecommendedAccountBasePayload) => RecommendedAccountBase | undefined;
34
- export declare const mapRecommendedAccountBasePayloadWithCOTToRecommendedAccountBaseWithCOT: (payload: RecommendedAccountBasePayloadWithCOT) => RecommendedAccountBaseWithCOT | undefined;
35
34
  export declare const mapStatementCloseDayPayloadToStatementCloseDay: (payload: string) => StatementCloseDay;
36
35
  export interface AccountPayload extends AccountBasePayload {
37
36
  assets?: COABalanceGroupedPayload;
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.mapAccountMetadataPayloadToAccountMetadata = exports.toRecommendedAccountBasePayload = exports.toAccountPayload = exports.mapStatementCloseDayPayloadToStatementCloseDay = exports.mapRecommendedAccountBasePayloadWithCOTToRecommendedAccountBaseWithCOT = exports.mapRecommendedAccountBasePayloadToRecommendedAccountBase = exports.mapAccountBasePayloadToAccountBase = void 0;
3
+ exports.mapAccountMetadataPayloadToAccountMetadata = exports.toRecommendedAccountBasePayload = exports.toAccountPayload = exports.mapStatementCloseDayPayloadToStatementCloseDay = exports.mapRecommendedAccountBasePayloadToRecommendedAccountBase = exports.mapAccountBasePayloadToAccountBase = void 0;
4
4
  const recommendationPayload_1 = require("../../commonPayloadTypes/recommendationPayload");
5
5
  const urlPayload_1 = require("../../commonPayloadTypes/urlPayload");
6
6
  const accountState_1 = require("./accountState");
@@ -31,15 +31,6 @@ const mapRecommendedAccountBasePayloadToRecommendedAccountBase = (payload) => {
31
31
  ? Object.assign({ accountId: (_a = payload.account_id) !== null && _a !== void 0 ? _a : payload.account_name, accountName: payload.account_name, accountType: (0, accountState_1.toAccountTypeStrict)(payload.account_type), accountSubType: (_b = payload.account_sub_type) !== null && _b !== void 0 ? _b : undefined, accountDescription: (_c = payload.account_description) !== null && _c !== void 0 ? _c : '', last4Digits: (_d = payload.last_4_digits) !== null && _d !== void 0 ? _d : undefined, logo: payload.logo == null ? undefined : (0, urlPayload_1.toURL)(payload.logo), qboId: (_e = payload.qbo_id) !== null && _e !== void 0 ? _e : undefined, coaId: (_f = payload.coa_id) !== null && _f !== void 0 ? _f : '', labels: toAccountLabelArray(payload.labels), accountNameConfidence: payload.account_name_confidence }, (0, recommendationPayload_1.toRecommendationBase)(payload)) : undefined;
32
32
  };
33
33
  exports.mapRecommendedAccountBasePayloadToRecommendedAccountBase = mapRecommendedAccountBasePayloadToRecommendedAccountBase;
34
- const mapRecommendedAccountBasePayloadWithCOTToRecommendedAccountBaseWithCOT = (payload) => {
35
- var _a, _b, _c, _d;
36
- const base = (0, exports.mapRecommendedAccountBasePayloadToRecommendedAccountBase)(payload);
37
- if (!base) {
38
- return undefined;
39
- }
40
- return Object.assign(Object.assign({}, base), { cot: (_b = (_a = payload.ai_reasoning) === null || _a === void 0 ? void 0 : _a.cot) !== null && _b !== void 0 ? _b : [], reasoning: (_d = (_c = payload.ai_reasoning) === null || _c === void 0 ? void 0 : _c.reasoning) !== null && _d !== void 0 ? _d : '' });
41
- };
42
- exports.mapRecommendedAccountBasePayloadWithCOTToRecommendedAccountBaseWithCOT = mapRecommendedAccountBasePayloadWithCOTToRecommendedAccountBaseWithCOT;
43
34
  const mapStatementCloseDayPayloadToStatementCloseDay = (payload) => {
44
35
  return payload === 'LAST_DAY_OF_THE_MONTH'
45
36
  ? 'LAST_DAY_OF_THE_MONTH'
@@ -1,7 +1,7 @@
1
- import { RecommendationBasePayload, RecommendedClassBasePayloadWithCOT } from '../../commonPayloadTypes/recommendationPayload';
1
+ import { RecommendationBasePayload } from '../../commonPayloadTypes/recommendationPayload';
2
2
  import { ClassesViewParentID } from '../../commonStateTypes/classesView/nestedClassID';
3
3
  import { ReportID } from '../../commonStateTypes/viewAndReport/viewAndReport';
4
- import { Class, ClassBase, ClassMetadata, RecommendedClassBase, RecommendedClassBaseWithCOT } from './classState';
4
+ import { Class, ClassBase, ClassMetadata, RecommendedClassBase } from './classState';
5
5
  export interface ClassBasePayload {
6
6
  accounting_class_id: string;
7
7
  accounting_class_name: string;
@@ -16,7 +16,6 @@ export interface RecommendedClassBasePayload extends ClassBasePayload, Recommend
16
16
  export declare function mapClassBasePayloadToClass(payload: ClassBasePayload, reportId: ReportID, classesViewParentId?: ClassesViewParentID): Class;
17
17
  export declare function mapClassBasePayloadToClassBase(payload: ClassBasePayload): ClassBase;
18
18
  export declare function mapRecommendedClassBasePayloadToRecommendedClassBase(payload: RecommendedClassBasePayload): RecommendedClassBase | undefined;
19
- export declare function mapRecommendedClassBasePayloadWithCOTToRecommendedClassBaseWithCOT(payload: RecommendedClassBasePayloadWithCOT): RecommendedClassBaseWithCOT | undefined;
20
19
  export declare const toClassBasePayload: (cl: ClassBase | undefined) => ClassBasePayload;
21
20
  export declare const toRecommendedClassBasePayload: (cl: RecommendedClassBase) => RecommendedClassBasePayload;
22
21
  export interface ClassMetadataPayload extends ClassBasePayload {
@@ -4,7 +4,6 @@ exports.toClassMetadata = exports.toRecommendedClassBasePayload = exports.toClas
4
4
  exports.mapClassBasePayloadToClass = mapClassBasePayloadToClass;
5
5
  exports.mapClassBasePayloadToClassBase = mapClassBasePayloadToClassBase;
6
6
  exports.mapRecommendedClassBasePayloadToRecommendedClassBase = mapRecommendedClassBasePayloadToRecommendedClassBase;
7
- exports.mapRecommendedClassBasePayloadWithCOTToRecommendedClassBaseWithCOT = mapRecommendedClassBasePayloadWithCOTToRecommendedClassBaseWithCOT;
8
7
  const recommendationPayload_1 = require("../../commonPayloadTypes/recommendationPayload");
9
8
  const classState_1 = require("./classState");
10
9
  function mapClassBasePayloadToClass(payload, reportId, classesViewParentId) {
@@ -43,14 +42,6 @@ function mapRecommendedClassBasePayloadToRecommendedClassBase(payload) {
43
42
  ? payload.accounting_class_number
44
43
  : undefined, accountingClassNameConfidence: payload.accounting_class_name_confidence }, (0, recommendationPayload_1.toRecommendationBase)(payload)) : undefined;
45
44
  }
46
- function mapRecommendedClassBasePayloadWithCOTToRecommendedClassBaseWithCOT(payload) {
47
- var _a, _b, _c, _d;
48
- const base = mapRecommendedClassBasePayloadToRecommendedClassBase(payload);
49
- if (!base) {
50
- return undefined;
51
- }
52
- return Object.assign(Object.assign({}, base), { cot: (_b = (_a = payload.ai_reasoning) === null || _a === void 0 ? void 0 : _a.cot) !== null && _b !== void 0 ? _b : [], reasoning: (_d = (_c = payload.ai_reasoning) === null || _c === void 0 ? void 0 : _c.reasoning) !== null && _d !== void 0 ? _d : '' });
53
- }
54
45
  const toClassBasePayload = (cl) => {
55
46
  var _a, _b, _c, _d, _e;
56
47
  return (Object.assign({ accounting_class_id: (_a = cl === null || cl === void 0 ? void 0 : cl.classId) !== null && _a !== void 0 ? _a : '', accounting_class_name: (_b = cl === null || cl === void 0 ? void 0 : cl.className) !== null && _b !== void 0 ? _b : '', qbo_id: (_c = cl === null || cl === void 0 ? void 0 : cl.qboId) !== null && _c !== void 0 ? _c : null, fully_qualified_accounting_class_name: (_d = cl === null || cl === void 0 ? void 0 : cl.fullyQualifiedAccountingClassName) !== null && _d !== void 0 ? _d : '', accounting_class_number: (_e = cl === null || cl === void 0 ? void 0 : cl.accountingClassNumber) !== null && _e !== void 0 ? _e : null }, ((cl === null || cl === void 0 ? void 0 : cl.labels) != null && cl.labels.length > 0 ? { labels: cl.labels } : {})));
@@ -1,7 +1,7 @@
1
- import { RecommendationPayload, RecommendationPayloadWithCOT } from '../../../commonPayloadTypes/recommendationPayload';
1
+ import { RecommendationPayload } from '../../../commonPayloadTypes/recommendationPayload';
2
2
  import { URLPayload } from '../../../commonPayloadTypes/urlPayload';
3
3
  import { Amount } from '../../../commonStateTypes/amount';
4
- import { Recommendation, RecommendationWithCOT } from '../../../commonStateTypes/recommendationBase';
4
+ import { Recommendation } from '../../../commonStateTypes/recommendationBase';
5
5
  import { AccountBasePayload } from '../../account/accountPayload';
6
6
  import { RecommendationByLineId, Transaction } from '../stateTypes/transaction';
7
7
  import { AttachmentPayload } from './attachmentPayload';
@@ -60,6 +60,5 @@ export declare const toTransaction: (payload: TransactionPayload) => Transaction
60
60
  export declare const toTransactionPayload: (transaction: Transaction) => Partial<TransactionPayload>;
61
61
  export declare const injectCOTFlagsIntoTransactionPayload: (payload: Partial<TransactionPayload>, transaction: Transaction) => Partial<TransactionPayloadWithCOTTracking>;
62
62
  export declare const transformRecommendation: (recommendation: RecommendationPayload) => Recommendation[];
63
- export declare const transformRecommendationWithCOT: (recommendation: RecommendationPayloadWithCOT) => RecommendationWithCOT[];
64
63
  export declare const getRecommendationsPerLine: (lines?: LinePayload[], recommendations?: RecommendationPayload[]) => RecommendationByLineId | undefined;
65
64
  export {};
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getRecommendationsPerLine = exports.transformRecommendationWithCOT = exports.transformRecommendation = exports.injectCOTFlagsIntoTransactionPayload = exports.toTransactionPayload = exports.toTransaction = exports.getTransactionPayloadAmount = void 0;
3
+ exports.getRecommendationsPerLine = exports.transformRecommendation = exports.injectCOTFlagsIntoTransactionPayload = exports.toTransactionPayload = exports.toTransaction = exports.getTransactionPayloadAmount = void 0;
4
4
  const recommendationPayload_1 = require("../../../commonPayloadTypes/recommendationPayload");
5
5
  const urlPayload_1 = require("../../../commonPayloadTypes/urlPayload");
6
6
  const amount_1 = require("../../../commonStateTypes/amount");
@@ -162,56 +162,6 @@ const transformRecommendation = (recommendation) => {
162
162
  return recommendations;
163
163
  };
164
164
  exports.transformRecommendation = transformRecommendation;
165
- const transformRecommendationWithCOT = (recommendation) => {
166
- var _a, _b, _c, _d;
167
- const accounts = recommendation.accounts;
168
- const classObjs = recommendation.accounting_classes;
169
- const recommendedVendors = recommendation.vendors;
170
- const recommendations = [];
171
- const mappedAccounts = accounts === null || accounts === void 0 ? void 0 : accounts.map((account) => (0, accountPayload_1.mapRecommendedAccountBasePayloadWithCOTToRecommendedAccountBaseWithCOT)(account));
172
- const mappedClasses = classObjs === null || classObjs === void 0 ? void 0 : classObjs.map((cls) => (0, classPayload_1.mapRecommendedClassBasePayloadWithCOTToRecommendedClassBaseWithCOT)(cls));
173
- const mappedRecommendedVendors = recommendedVendors === null || recommendedVendors === void 0 ? void 0 : recommendedVendors.map((recommendedVendor) => {
174
- var _a, _b, _c, _d;
175
- const base = (0, recommendationBase_1.mapRecommendedVendorPayloadToBase)(recommendedVendor);
176
- // Always return RecommendedVendorBaseWithCOT, with empty COT if not present
177
- const vendorWithCOT = Object.assign(Object.assign({}, base), { cot: (_b = (_a = recommendedVendor.ai_reasoning) === null || _a === void 0 ? void 0 : _a.cot) !== null && _b !== void 0 ? _b : [], reasoning: (_d = (_c = recommendedVendor.ai_reasoning) === null || _c === void 0 ? void 0 : _c.reasoning) !== null && _d !== void 0 ? _d : '' });
178
- return vendorWithCOT;
179
- });
180
- // Note: Accounts and Classes array length can be different here. So checking for larger array and iterating over that and mapped as per indexes
181
- if (mappedAccounts != null &&
182
- mappedAccounts.length >= ((_a = mappedClasses === null || mappedClasses === void 0 ? void 0 : mappedClasses.length) !== null && _a !== void 0 ? _a : 0) &&
183
- mappedAccounts.length >= ((_b = mappedRecommendedVendors === null || mappedRecommendedVendors === void 0 ? void 0 : mappedRecommendedVendors.length) !== null && _b !== void 0 ? _b : 0)) {
184
- mappedAccounts.forEach((account, index) => {
185
- recommendations.push({
186
- account,
187
- class: mappedClasses === null || mappedClasses === void 0 ? void 0 : mappedClasses[index],
188
- vendor: mappedRecommendedVendors === null || mappedRecommendedVendors === void 0 ? void 0 : mappedRecommendedVendors[index],
189
- });
190
- });
191
- }
192
- else if (mappedClasses != null &&
193
- mappedClasses.length >= ((_c = mappedAccounts === null || mappedAccounts === void 0 ? void 0 : mappedAccounts.length) !== null && _c !== void 0 ? _c : 0) &&
194
- mappedClasses.length >= ((_d = mappedRecommendedVendors === null || mappedRecommendedVendors === void 0 ? void 0 : mappedRecommendedVendors.length) !== null && _d !== void 0 ? _d : 0)) {
195
- mappedClasses.forEach((recommendedClass, index) => {
196
- recommendations.push({
197
- account: mappedAccounts === null || mappedAccounts === void 0 ? void 0 : mappedAccounts[index],
198
- class: recommendedClass,
199
- vendor: mappedRecommendedVendors === null || mappedRecommendedVendors === void 0 ? void 0 : mappedRecommendedVendors[index],
200
- });
201
- });
202
- }
203
- else if (mappedRecommendedVendors != null) {
204
- mappedRecommendedVendors.forEach((recommendedvendor, index) => {
205
- recommendations.push({
206
- account: mappedAccounts === null || mappedAccounts === void 0 ? void 0 : mappedAccounts[index],
207
- class: mappedClasses === null || mappedClasses === void 0 ? void 0 : mappedClasses[index],
208
- vendor: recommendedvendor,
209
- });
210
- });
211
- }
212
- return recommendations;
213
- };
214
- exports.transformRecommendationWithCOT = transformRecommendationWithCOT;
215
165
  const getRecommendationsPerLine = (lines, recommendations) => {
216
166
  if (lines != null &&
217
167
  (lines === null || lines === void 0 ? void 0 : lines.length) > 0 &&
@@ -1,6 +1,5 @@
1
1
  import { Recommendation, RecommendationWithCOT } from '../../commonStateTypes/recommendationBase';
2
2
  import { RecommendationByLineId, RecommendationWithCOTByLineId, Transaction, TransactionWithCOT } from './stateTypes/transaction';
3
- export declare function getTransactionWithCOTFromRecommendations(transaction: Transaction, recommendationWithCOTByLineId: RecommendationWithCOTByLineId): TransactionWithCOT;
4
3
  export declare function getTransactionWithCOT(transaction: Transaction): TransactionWithCOT;
5
4
  export declare const convertRecommendationByLineIdToCOT: (recommendationByLineId: RecommendationByLineId, transactionWithCOT: TransactionWithCOT) => RecommendationWithCOTByLineId;
6
5
  export declare const convertCOTRecommendationsToRegular: (recommendationsWithCOT?: RecommendationWithCOT[]) => Recommendation[] | undefined;
@@ -12,7 +12,6 @@ var __rest = (this && this.__rest) || function (s, e) {
12
12
  };
13
13
  Object.defineProperty(exports, "__esModule", { value: true });
14
14
  exports.convertCOTRecommendationsToRegular = exports.convertRecommendationByLineIdToCOT = void 0;
15
- exports.getTransactionWithCOTFromRecommendations = getTransactionWithCOTFromRecommendations;
16
15
  exports.getTransactionWithCOT = getTransactionWithCOT;
17
16
  // Helper function to get AI summary by recommendation type and hash
18
17
  function getAISummaryByRecommendationHash(aiSummaries, recommendationType, recommendationHash) {
@@ -42,18 +41,6 @@ function processRecommendationType(recommendation, line, emptyAISummary, type) {
42
41
  const aiSummary = getAISummaryByRecommendationHash((_a = line.aiSummaries) !== null && _a !== void 0 ? _a : emptyAISummary, type, recommendation.recommendationHash);
43
42
  return Object.assign(Object.assign({}, recommendation), { cot: (_b = aiSummary === null || aiSummary === void 0 ? void 0 : aiSummary.cot) !== null && _b !== void 0 ? _b : [], reasoning: (_c = aiSummary === null || aiSummary === void 0 ? void 0 : aiSummary.reasoning) !== null && _c !== void 0 ? _c : '' });
44
43
  }
45
- // Helper function to convert Transaction to TransactionWithCOT using API COT recommendations
46
- // Merges API COT recommendations with existing transaction recommendations
47
- function getTransactionWithCOTFromRecommendations(transaction, recommendationWithCOTByLineId) {
48
- const { recommendations: _recommendations } = transaction, transactionWithoutRecommendations = __rest(transaction, ["recommendations"]);
49
- void _recommendations; // Mark as used to avoid linting error
50
- // Start with existing transaction COT recommendations (if any)
51
- const existingTransactionWithCOT = getTransactionWithCOT(transaction);
52
- const mergedRecommendationsWithCOT = Object.assign(Object.assign({}, existingTransactionWithCOT.recommendationsWithCOT), recommendationWithCOTByLineId);
53
- return Object.assign(Object.assign({}, transactionWithoutRecommendations), { recommendationsWithCOT: Object.keys(mergedRecommendationsWithCOT).length > 0
54
- ? mergedRecommendationsWithCOT
55
- : undefined });
56
- }
57
44
  // Main helper function to convert Transaction to TransactionWithCOT
58
45
  function getTransactionWithCOT(transaction) {
59
46
  if (!transaction.lines || !transaction.recommendations) {
@@ -10,7 +10,7 @@ import { TabSpecificLineItems, TransactionReviewLocalData, TransactionsTab, Tran
10
10
  export declare const MAX_SELECTION_LIMIT = 5;
11
11
  export declare const toTransactionDetailLocalData: (transaction: SupportedTransactionWithCOT, selectedTab: TransactionsTab, lineItemsByTransactionIds: string[], uncategorizedIncomeExpense: UncategorizedAccounts) => TransactionReviewLocalData;
12
12
  export declare const toSetAllLineItemsToCategoryClass: (draft: TransactionsTabViewState, transaction: SupportedTransactionWithCOT, transactionId: ID, transactionLineId: ID, transactionDetailLocalData: TransactionReviewLocalData, updatedItem: "category" | "class", uncategorizedAccounts: UncategorizedAccounts, selectedTab: TransactionsTab, vendorId?: ID, customerId?: ID, selectedAccount?: AccountBase, selectedClassBase?: ClassBase) => TransactionReviewLocalData;
13
- export declare const setEntityRecommendationForLineIdInLocalData: (draft: TransactionsTabViewState, transaction: SupportedTransactionWithCOT, transactionDetailLocalData: TransactionReviewLocalData, entity: Entity, recommendationLineIds: ID[], uncategorizedAccounts: UncategorizedAccounts, recommendationWithCOTByLineId?: RecommendationWithCOTByLineId) => TransactionReviewLocalData;
13
+ export declare const setEntityRecommendationForLineIdInLocalData: (draft: TransactionsTabViewState, transaction: SupportedTransactionWithCOT, transactionDetailLocalData: TransactionReviewLocalData, entity: Entity, recommendationLineIds: ID[], uncategorizedAccounts: UncategorizedAccounts, recommendationByLineId?: RecommendationWithCOTByLineId) => TransactionReviewLocalData;
14
14
  export declare const checkIfAllLineItemsAreCategoryClassFilled: (transaction: SupportedTransactionWithCOT, transactionDetailLocalData: TransactionReviewLocalData, uncategorizedAccounts: UncategorizedAccounts) => boolean;
15
15
  export declare const getLineItemsByTransactionsIdsFromResponse: (transactions: SupportedTransactionPayload[]) => Record<string, string[]>;
16
16
  export declare const getLineItemsByTransactionIdsFromLocalData: (transactionLocalData: TransactionReviewLocalDataSelectorView[], selectedTab: TransactionsTab) => Record<ID, string[]>;
@@ -317,7 +317,7 @@ const toSetAllLineItemsToCategoryClass = (draft, transaction, transactionId, tra
317
317
  return newLocalData;
318
318
  };
319
319
  exports.toSetAllLineItemsToCategoryClass = toSetAllLineItemsToCategoryClass;
320
- const setEntityRecommendationForLineIdInLocalData = (draft, transaction, transactionDetailLocalData, entity, recommendationLineIds, uncategorizedAccounts, recommendationWithCOTByLineId) => {
320
+ const setEntityRecommendationForLineIdInLocalData = (draft, transaction, transactionDetailLocalData, entity, recommendationLineIds, uncategorizedAccounts, recommendationByLineId) => {
321
321
  const newLineItems = {};
322
322
  let matchingEntityLineId = undefined;
323
323
  const checkIfNotJEAndDeposit = !(0, vendorTransaction_1.isVendorTransaction)(transaction);
@@ -334,7 +334,7 @@ const setEntityRecommendationForLineIdInLocalData = (draft, transaction, transac
334
334
  line.type === 'transaction_with_product_or_service_line' ||
335
335
  line.type === 'journal_entry_transaction_line') {
336
336
  const record = Object.assign({}, oldRecord);
337
- const recommendations = (0, transactionDetailLocalDataHelper_1.mergeTransactionAndEntityRecommendationsWithCOT)(oldRecord.recommendationsWithCOT, recommendationWithCOTByLineId === null || recommendationWithCOTByLineId === void 0 ? void 0 : recommendationWithCOTByLineId[lineId]);
337
+ const recommendations = (0, transactionDetailLocalDataHelper_1.mergeTransactionAndEntityRecommendationsWithCOT)(oldRecord.recommendationsWithCOT, recommendationByLineId === null || recommendationByLineId === void 0 ? void 0 : recommendationByLineId[lineId]);
338
338
  const accountLine = line;
339
339
  const isUncategorizedAccount = (0, transactionDetailLocalDataHelper_2.isAccountUncategorized)(uncategorizedAccounts, accountLine.account.qboId);
340
340
  record.account =
@@ -366,7 +366,7 @@ const setEntityRecommendationForLineIdInLocalData = (draft, transaction, transac
366
366
  }
367
367
  const record = Object.assign({}, oldRecord);
368
368
  if (checkIfNotJEAndDeposit === false) {
369
- const recommendations = (0, transactionDetailLocalDataHelper_1.mergeTransactionAndEntityRecommendationsWithCOT)(oldRecord.recommendationsWithCOT, recommendationWithCOTByLineId === null || recommendationWithCOTByLineId === void 0 ? void 0 : recommendationWithCOTByLineId[lineId]);
369
+ const recommendations = (0, transactionDetailLocalDataHelper_1.mergeTransactionAndEntityRecommendationsWithCOT)(oldRecord.recommendationsWithCOT, recommendationByLineId === null || recommendationByLineId === void 0 ? void 0 : recommendationByLineId[lineId]);
370
370
  const accountLine = line;
371
371
  record.account = accountLine.account;
372
372
  record.class = accountLine.class;
@@ -124,14 +124,14 @@ export declare const fetchTransactionCategorization: import("@reduxjs/toolkit").
124
124
  }, "expenseAutomationTransactionsView/fetchTransactionCategorizationView", never, never>, updateSelectedCheckboxTransactionIds: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
125
125
  selectedTab: TransactionsTab;
126
126
  transactionIds: ID[];
127
- }, "expenseAutomationTransactionsView/updateSelectedCheckboxTransactionIds">, clearExpenseAutomationTransactionsViewPerTabView: import("@reduxjs/toolkit").ActionCreatorWithPayload<"review" | "autoCategorized", "expenseAutomationTransactionsView/clearExpenseAutomationTransactionsViewPerTabView">, clearExpenseAutomationTransactionsView: import("@reduxjs/toolkit").ActionCreatorWithoutPayload<"expenseAutomationTransactionsView/clearExpenseAutomationTransactionsView">, setEntityRecommendationForLineIdsForCategorization: import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<[selectedTab: "review" | "autoCategorized", transactionId: TransactionID, transaction: SupportedTransactionWithCOT, lineIds: string[], entity: Entity, amount: number, recommendationWithCOTByLineId: RecommendationWithCOTByLineId, uncategorizedAccounts: UncategorizedAccounts], {
127
+ }, "expenseAutomationTransactionsView/updateSelectedCheckboxTransactionIds">, clearExpenseAutomationTransactionsViewPerTabView: import("@reduxjs/toolkit").ActionCreatorWithPayload<"review" | "autoCategorized", "expenseAutomationTransactionsView/clearExpenseAutomationTransactionsViewPerTabView">, clearExpenseAutomationTransactionsView: import("@reduxjs/toolkit").ActionCreatorWithoutPayload<"expenseAutomationTransactionsView/clearExpenseAutomationTransactionsView">, setEntityRecommendationForLineIdsForCategorization: import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<[selectedTab: "review" | "autoCategorized", transactionId: TransactionID, transaction: SupportedTransactionWithCOT, lineIds: string[], entity: Entity, amount: number, recommendationByLineId: RecommendationWithCOTByLineId, uncategorizedAccounts: UncategorizedAccounts], {
128
128
  selectedTab: "review" | "autoCategorized";
129
129
  transactionId: TransactionID;
130
130
  transaction: SupportedTransactionWithCOT;
131
131
  lineIds: string[];
132
132
  entity: Entity;
133
133
  amount: number;
134
- recommendationWithCOTByLineId: RecommendationWithCOTByLineId;
134
+ recommendationByLineId: RecommendationWithCOTByLineId;
135
135
  uncategorizedAccounts: UncategorizedAccounts;
136
136
  }, "expenseAutomationTransactionsView/setEntityRecommendationForLineIdsForCategorization", never, never>, updateSelectedTransactionId: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
137
137
  lineId: ID;
@@ -326,7 +326,7 @@ const expenseAutomationTransactionsView = (0, toolkit_1.createSlice)({
326
326
  },
327
327
  },
328
328
  setEntityRecommendationForLineIdsForCategorization: {
329
- prepare(selectedTab, transactionId, transaction, lineIds, entity, amount, recommendationWithCOTByLineId, uncategorizedAccounts) {
329
+ prepare(selectedTab, transactionId, transaction, lineIds, entity, amount, recommendationByLineId, uncategorizedAccounts) {
330
330
  return {
331
331
  payload: {
332
332
  selectedTab,
@@ -335,7 +335,7 @@ const expenseAutomationTransactionsView = (0, toolkit_1.createSlice)({
335
335
  lineIds,
336
336
  entity,
337
337
  amount,
338
- recommendationWithCOTByLineId,
338
+ recommendationByLineId,
339
339
  uncategorizedAccounts,
340
340
  },
341
341
  };
@@ -347,7 +347,7 @@ const expenseAutomationTransactionsView = (0, toolkit_1.createSlice)({
347
347
  if (transactionLocalData != null) {
348
348
  draft.transactionCategorizationView[selectedTab].transactionReviewLocalDataById[transaction.id] = {
349
349
  transactionId: transaction.id,
350
- transactionReviewLocalData: (0, transactionCategorizationLocalDataHelper_1.setEntityRecommendationForLineIdInLocalData)(draft.transactionCategorizationView[selectedTab], transaction, transactionLocalData.transactionReviewLocalData, entity, lineIds, uncategorizedAccounts, action.payload.recommendationWithCOTByLineId),
350
+ transactionReviewLocalData: (0, transactionCategorizationLocalDataHelper_1.setEntityRecommendationForLineIdInLocalData)(draft.transactionCategorizationView[selectedTab], transaction, transactionLocalData.transactionReviewLocalData, entity, lineIds, uncategorizedAccounts, action.payload.recommendationByLineId),
351
351
  };
352
352
  }
353
353
  },
@@ -12,7 +12,7 @@ const transactionDetailState_1 = require("../transactionDetail/transactionDetail
12
12
  const recommendationHelper_1 = require("./recommendationHelper");
13
13
  const recommendationReducer_1 = require("./recommendationReducer");
14
14
  const fetchEntityRecommendationsByTransactionIdEpic = (actions$, state$, zeniAPI) => actions$.pipe((0, operators_1.filter)(recommendationReducer_1.fetchEntityRecommendationsByTransactionId.match), (0, operators_1.switchMap)((action) => {
15
- const { entity, amount, transactionDetails, isBulkFetch, isTransactionCategorizationFlow, isFetchCOT, } = action.payload;
15
+ const { entity, amount, transactionDetails, isBulkFetch, isTransactionCategorizationFlow, } = action.payload;
16
16
  const { expenseAutomationTransactionsViewState: { selectedTransactionCategorizationTab, }, } = state$.value;
17
17
  const query = {
18
18
  amount,
@@ -20,22 +20,16 @@ const fetchEntityRecommendationsByTransactionIdEpic = (actions$, state$, zeniAPI
20
20
  transaction_type: transactionDetails.transaction.type,
21
21
  line_ids: transactionDetails.lineIds,
22
22
  };
23
- if (isFetchCOT === true) {
24
- query.include_cot = true;
25
- }
26
23
  return zeniAPI
27
24
  .getJSON(`${zeniAPI.apiEndPoints.accountMicroServiceBaseUrl}/1.0/${(0, exports.toEntityTypeURL)(entity.type)}/${entity.qboId}/recommendations?query=${encodeURIComponent(JSON.stringify(query))}`)
28
25
  .pipe((0, operators_1.mergeMap)((response) => {
29
26
  if ((0, responsePayload_1.isSuccessResponse)(response) && response.data != null) {
30
27
  const actions = [];
31
28
  const { transactionId, transaction, lineIds } = transactionDetails;
32
- const recommendationWithCOTByLineId = (0, recommendationHelper_1.getRecommendationByLineIdWithCOTFromRecommendationPayloadWithCOT)(response.data.recommendations, lineIds);
29
+ const recommendationByLineId = (0, recommendationHelper_1.getRecommendationByLineIdFromRecommendationPayload)(response.data.recommendations, lineIds);
33
30
  const recommendations = (0, recommendationHelper_1.getRecommendationFromRecommendationPayload)(response.data.recommendations);
34
31
  // Convert transaction to COT format for categorization flow
35
- // Use COT recommendations if available, otherwise use existing transaction recommendations
36
- const transactionWithCOT = isFetchCOT === true && recommendationWithCOTByLineId != null
37
- ? (0, transactionHelper_1.getTransactionWithCOTFromRecommendations)(transaction, recommendationWithCOTByLineId)
38
- : (0, transactionHelper_1.getTransactionWithCOT)(transaction);
32
+ const transactionWithCOT = (0, transactionHelper_1.getTransactionWithCOT)(transaction);
39
33
  actions.push((0, recommendationReducer_1.updateRecommendationForEntity)({
40
34
  entityId: entity.id,
41
35
  entityType: entity.type,
@@ -44,13 +38,14 @@ const fetchEntityRecommendationsByTransactionIdEpic = (actions$, state$, zeniAPI
44
38
  if (isBulkFetch === true) {
45
39
  actions.push((0, transactionDetailReducer_1.updateVendorBulkRecommendationsFetchStatus)(transactionId, 'Completed'));
46
40
  }
47
- if (recommendationWithCOTByLineId != null) {
41
+ if (recommendationByLineId != null) {
48
42
  const uncategorizedIncomeExpense = (0, accountListSelector_1.getUncategorizedAccounts)(state$.value.accountState, state$.value.accountListState, 'accountList');
49
43
  if (isTransactionCategorizationFlow === true) {
44
+ const recommendationWithCOTByLineId = (0, transactionHelper_1.convertRecommendationByLineIdToCOT)(recommendationByLineId, transactionWithCOT);
50
45
  actions.push((0, transactionsViewReducer_1.setEntityRecommendationForLineIdsForCategorization)(selectedTransactionCategorizationTab, transactionId, transactionWithCOT, lineIds, entity, amount, recommendationWithCOTByLineId, uncategorizedIncomeExpense));
51
46
  }
52
47
  else {
53
- actions.push((0, transactionDetailReducer_1.setEntityRecommendationForLineIdsForTransactionDetail)(transactionId, transactionWithCOT, lineIds, entity, amount, recommendationWithCOTByLineId, uncategorizedIncomeExpense));
48
+ actions.push((0, transactionDetailReducer_1.setEntityRecommendationForLineIdsForTransactionDetail)(transactionId, transaction, lineIds, entity, amount, recommendationByLineId, uncategorizedIncomeExpense));
54
49
  }
55
50
  }
56
51
  return (0, rxjs_1.from)(actions);
@@ -1,8 +1,6 @@
1
- import { RecommendationPayload, RecommendationPayloadWithCOT } from '../../commonPayloadTypes/recommendationPayload';
1
+ import { RecommendationPayload } from '../../commonPayloadTypes/recommendationPayload';
2
2
  import { ID } from '../../commonStateTypes/common';
3
- import { Recommendation, RecommendationWithCOT } from '../../commonStateTypes/recommendationBase';
4
- import { RecommendationByLineId, RecommendationWithCOTByLineId } from '../../entity/transaction/stateTypes/transaction';
3
+ import { Recommendation } from '../../commonStateTypes/recommendationBase';
4
+ import { RecommendationByLineId } from '../../entity/transaction/stateTypes/transaction';
5
5
  export declare const getRecommendationFromRecommendationPayload: (payload: RecommendationPayload[]) => Recommendation[] | undefined;
6
6
  export declare const getRecommendationByLineIdFromRecommendationPayload: (recommendationPayload: RecommendationPayload[], lineIds: ID[]) => RecommendationByLineId | undefined;
7
- export declare const getRecommendationWithCOTFromRecommendationPayloadWithCOT: (payload: RecommendationPayloadWithCOT[]) => RecommendationWithCOT[] | undefined;
8
- export declare const getRecommendationByLineIdWithCOTFromRecommendationPayloadWithCOT: (recommendationPayload: RecommendationPayloadWithCOT[], lineIds: ID[]) => RecommendationWithCOTByLineId | undefined;
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getRecommendationByLineIdWithCOTFromRecommendationPayloadWithCOT = exports.getRecommendationWithCOTFromRecommendationPayloadWithCOT = exports.getRecommendationByLineIdFromRecommendationPayload = exports.getRecommendationFromRecommendationPayload = void 0;
3
+ exports.getRecommendationByLineIdFromRecommendationPayload = exports.getRecommendationFromRecommendationPayload = void 0;
4
4
  const transactionPayload_1 = require("../../entity/transaction/payloadTypes/transactionPayload");
5
5
  const getRecommendationFromRecommendationPayload = (payload) => {
6
6
  if (payload == null || payload.length === 0) {
@@ -32,33 +32,3 @@ const getRecommendationByLineIdFromRecommendationPayload = (recommendationPayloa
32
32
  return recommendationsWithLine;
33
33
  };
34
34
  exports.getRecommendationByLineIdFromRecommendationPayload = getRecommendationByLineIdFromRecommendationPayload;
35
- const getRecommendationWithCOTFromRecommendationPayloadWithCOT = (payload) => {
36
- if (payload == null || payload.length === 0) {
37
- return undefined;
38
- }
39
- const recommendations = [];
40
- payload.forEach((recommendationPayload) => {
41
- recommendations.push(...(0, transactionPayload_1.transformRecommendationWithCOT)(recommendationPayload));
42
- });
43
- return recommendations;
44
- };
45
- exports.getRecommendationWithCOTFromRecommendationPayloadWithCOT = getRecommendationWithCOTFromRecommendationPayloadWithCOT;
46
- const getRecommendationByLineIdWithCOTFromRecommendationPayloadWithCOT = (recommendationPayload, lineIds) => {
47
- if (recommendationPayload.length === 0) {
48
- return undefined;
49
- }
50
- const recommendationsWithLine = {};
51
- /* Note: Below case will happen only when we are fetching vendor recomemndations from a JE transaction line item.
52
- And in such a case, we only want to update recommendation for that line.lineIds will always have a single element */
53
- if (lineIds.length !== recommendationPayload.length) {
54
- recommendationsWithLine[lineIds[0]] = (0, transactionPayload_1.transformRecommendationWithCOT)(recommendationPayload[parseInt(lineIds[0])]);
55
- }
56
- else {
57
- recommendationPayload.forEach((lineRecommendations, index) => {
58
- recommendationsWithLine[lineIds[index]] =
59
- (0, transactionPayload_1.transformRecommendationWithCOT)(lineRecommendations);
60
- });
61
- }
62
- return recommendationsWithLine;
63
- };
64
- exports.getRecommendationByLineIdWithCOTFromRecommendationPayloadWithCOT = getRecommendationByLineIdWithCOTFromRecommendationPayloadWithCOT;
@@ -1,4 +1,4 @@
1
- import { RecommendationPayload, RecommendationPayloadWithCOT } from '../../commonPayloadTypes/recommendationPayload';
1
+ import { RecommendationPayload } from '../../commonPayloadTypes/recommendationPayload';
2
2
  import { ZeniAPIResponse } from '../../responsePayload';
3
3
  interface RecommendationUpdatePayload {
4
4
  recommendations: RecommendationPayload[];
@@ -8,8 +8,4 @@ interface FetchRecommendationPayload {
8
8
  recommendations: RecommendationPayload[];
9
9
  }
10
10
  export type FetchRecommendationResponse = ZeniAPIResponse<FetchRecommendationPayload>;
11
- interface FetchRecommendationPayloadWithCOT {
12
- recommendations: RecommendationPayloadWithCOT[];
13
- }
14
- export type FetchRecommendationResponseWithCOT = ZeniAPIResponse<FetchRecommendationPayloadWithCOT>;
15
11
  export {};
@@ -10,7 +10,7 @@ export declare const fetchEntityRecommendationsByTransactionId: import("@reduxjs
10
10
  lineIds: ID[];
11
11
  transaction: SupportedTransaction;
12
12
  transactionId: TransactionID;
13
- }, isBulkFetch: boolean, isTransactionCategorizationFlow?: any, isFetchCOT?: any], {
13
+ }, isBulkFetch: boolean, isTransactionCategorizationFlow?: any], {
14
14
  entity: Entity;
15
15
  amount: number;
16
16
  transactionDetails: {
@@ -20,7 +20,6 @@ export declare const fetchEntityRecommendationsByTransactionId: import("@reduxjs
20
20
  };
21
21
  isBulkFetch: boolean;
22
22
  isTransactionCategorizationFlow: any;
23
- isFetchCOT: any;
24
23
  }, "recommendation/fetchEntityRecommendationsByTransactionId", never, never>, fetchRecommendationByEntityName: import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<[entityName: string, entityType: EntityType], {
25
24
  entityName: string;
26
25
  entityType: EntityType;
@@ -20,7 +20,7 @@ const recommendation = (0, toolkit_1.createSlice)({
20
20
  draft.recommendationByEntity[key] = Object.assign(Object.assign({}, recommendationState_1.initialEntityRecommendationState), { fetchState: 'In-Progress' });
21
21
  }
22
22
  },
23
- prepare(entity, amount, transactionDetails, isBulkFetch, isTransactionCategorizationFlow = false, isFetchCOT = false) {
23
+ prepare(entity, amount, transactionDetails, isBulkFetch, isTransactionCategorizationFlow = false) {
24
24
  return {
25
25
  payload: {
26
26
  entity,
@@ -28,7 +28,6 @@ const recommendation = (0, toolkit_1.createSlice)({
28
28
  transactionDetails,
29
29
  isBulkFetch,
30
30
  isTransactionCategorizationFlow,
31
- isFetchCOT,
32
31
  },
33
32
  };
34
33
  },
@@ -3,9 +3,9 @@ import { RecommendationWithCOT } from '../../commonStateTypes/recommendationBase
3
3
  import { AccountBase, RecommendedAccountBase } from '../../entity/account/accountState';
4
4
  import { ClassBase, RecommendedClassBase } from '../../entity/class/classState';
5
5
  import { Entity } from '../../entity/genericEntity/entity';
6
- import { RecommendationWithCOTByLineId } from '../../entity/transaction/stateTypes/transaction';
6
+ import { RecommendationByLineId } from '../../entity/transaction/stateTypes/transaction';
7
7
  import { JournalEntryTransactionLine, TransactionWithAccountAndClassLine } from '../../entity/transaction/stateTypes/transactionLine';
8
- import { SupportedTransaction, SupportedTransactionWithCOT } from '../../entity/transaction/transactionState';
8
+ import { SupportedTransaction } from '../../entity/transaction/transactionState';
9
9
  import { UncategorizedAccounts } from '../accountList/accountListSelector';
10
10
  import { TransactionDetailLineItemData, TransactionDetailLocalData } from './transactionDetailTypes';
11
11
  export declare const toTransactionDetailLocalData: (transaction: SupportedTransaction, defaultVendorId: ID | undefined, uncategorizedIncomeExpense: UncategorizedAccounts) => TransactionDetailLocalData;
@@ -30,7 +30,7 @@ export declare const toSetAllLineItemsToCategoryClass: (transaction: SupportedTr
30
30
  updateOrRetain: "update" | "retain";
31
31
  }) => TransactionDetailLocalData;
32
32
  export declare const toSetAllLineItemsLocalDataIsUpdateAllChecked: (transaction: SupportedTransaction, transactionDetailLocalData: TransactionDetailLocalData, isUpdateAll: boolean, entity?: Entity) => TransactionDetailLocalData;
33
- export declare const setEntityRecommendationForLineIdInLocalData: (transaction: SupportedTransactionWithCOT, transactionDetailLocalData: TransactionDetailLocalData, entity: Entity, recommendationLineIds: ID[], uncategorizedIncomeExpense: UncategorizedAccounts, recommendationWithCOTByLineId?: RecommendationWithCOTByLineId) => TransactionDetailLocalData;
33
+ export declare const setEntityRecommendationForLineIdInLocalData: (transaction: SupportedTransaction, transactionDetailLocalData: TransactionDetailLocalData, entity: Entity, recommendationLineIds: ID[], uncategorizedIncomeExpense: UncategorizedAccounts, recommendationByLineId?: RecommendationByLineId) => TransactionDetailLocalData;
34
34
  export declare const removeEntityRecommendationForLineIdInLocalData: (transaction: SupportedTransaction, transactionDetailLocalData: TransactionDetailLocalData, recommendationLineIds: ID[]) => TransactionDetailLocalData;
35
35
  export declare const getChangedLineItemCountFromLocalData: (transaction: SupportedTransaction, transactionLocalData: TransactionDetailLocalData) => number;
36
36
  export declare const toSetAllLineItemsToVendor: (transaction: SupportedTransaction, transactionDetailLocalData: TransactionDetailLocalData, entity: Entity) => TransactionDetailLocalData;
@@ -530,8 +530,11 @@ const toSetAllLineItemsLocalDataIsUpdateAllChecked = (transaction, transactionDe
530
530
  return newLocalData;
531
531
  };
532
532
  exports.toSetAllLineItemsLocalDataIsUpdateAllChecked = toSetAllLineItemsLocalDataIsUpdateAllChecked;
533
- const setEntityRecommendationForLineIdInLocalData = (transaction, transactionDetailLocalData, entity, recommendationLineIds, uncategorizedIncomeExpense, recommendationWithCOTByLineId) => {
533
+ const setEntityRecommendationForLineIdInLocalData = (transaction, transactionDetailLocalData, entity, recommendationLineIds, uncategorizedIncomeExpense, recommendationByLineId) => {
534
534
  const newLineItems = {};
535
+ const recommendationWithCOTByLineId = recommendationByLineId != null
536
+ ? (0, transactionHelper_1.convertRecommendationByLineIdToCOT)(recommendationByLineId, (0, transactionHelper_1.getTransactionWithCOT)(transaction))
537
+ : undefined;
535
538
  let matchingEntityLineId = undefined;
536
539
  const checkIfNotJEAndDeposit = (0, vendorTransaction_1.isVendorTransaction)(transaction) === true ||
537
540
  (0, customerTransaction_1.isCustomerTransaction)(transaction) === true;
@@ -3,7 +3,7 @@ import { COTTransactionTracking, Recommendation } from '../../commonStateTypes/r
3
3
  import { AccountBase } from '../../entity/account/accountState';
4
4
  import { ClassBase } from '../../entity/class/classState';
5
5
  import { Entity } from '../../entity/genericEntity/entity';
6
- import { RecommendationWithCOTByLineId, TransactionID } from '../../entity/transaction/stateTypes/transaction';
6
+ import { RecommendationByLineId, TransactionID } from '../../entity/transaction/stateTypes/transaction';
7
7
  import { SupportedTransaction, SupportedTransactionPayload } from '../../entity/transaction/transactionState';
8
8
  import { ZeniAPIStatus } from '../../responsePayload';
9
9
  import { UncategorizedAccounts } from '../accountList/accountListSelector';
@@ -105,13 +105,13 @@ export declare const downloadAccountingProviderAttachment: import("@reduxjs/tool
105
105
  transaction: SupportedTransaction;
106
106
  isUpdateAll: boolean;
107
107
  entity: Entity | undefined;
108
- }, "transactionDetail/setAllLineItemsLocalDataIsUpdateAllChecked", never, never>, setEntityRecommendationForLineIdsForTransactionDetail: import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<[transactionId: TransactionID, transaction: SupportedTransaction, lineIds: string[], entity: Entity, amount: number, recommendationWithCOTByLineId: RecommendationWithCOTByLineId, uncategorizedIncomeExpense: UncategorizedAccounts], {
108
+ }, "transactionDetail/setAllLineItemsLocalDataIsUpdateAllChecked", never, never>, setEntityRecommendationForLineIdsForTransactionDetail: import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<[transactionId: TransactionID, transaction: SupportedTransaction, lineIds: string[], entity: Entity, amount: number, recommendationByLineId: RecommendationByLineId, uncategorizedIncomeExpense: UncategorizedAccounts], {
109
109
  transactionId: TransactionID;
110
110
  transaction: SupportedTransaction;
111
111
  lineIds: string[];
112
112
  entity: Entity;
113
113
  amount: number;
114
- recommendationWithCOTByLineId: RecommendationWithCOTByLineId;
114
+ recommendationByLineId: RecommendationByLineId;
115
115
  uncategorizedIncomeExpense: UncategorizedAccounts;
116
116
  }, "transactionDetail/setEntityRecommendationForLineIdsForTransactionDetail", never, never>, removeEntityRecommendationForLineIdForTransactionDetail: import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<[transactionId: TransactionID, transaction: SupportedTransaction, lineId: string], {
117
117
  transactionId: TransactionID;
@@ -299,15 +299,15 @@ const transactionDetail = (0, toolkit_1.createSlice)({
299
299
  setEntityRecommendationForLineIdsForTransactionDetail: {
300
300
  // ToDo: Add a reducer test case to handle this part for JE tran as well - where we only update for targeted line
301
301
  reducer(draft, action) {
302
- const { transaction, lineIds, recommendationWithCOTByLineId, uncategorizedIncomeExpense, } = action.payload;
302
+ const { transaction, lineIds, recommendationByLineId, uncategorizedIncomeExpense, } = action.payload;
303
303
  const key = (0, transactionDetailState_1.getTransactionDetailKey)(action.payload.transactionId);
304
304
  const detail = (0, get_1.default)(draft.transactionDetailById, key, undefined);
305
305
  if (detail != null) {
306
- const newLocalData = (0, transactionDetailLocalDataHelper_1.setEntityRecommendationForLineIdInLocalData)(transaction, detail.transactionDetailLocalData, action.payload.entity, lineIds, uncategorizedIncomeExpense, recommendationWithCOTByLineId);
306
+ const newLocalData = (0, transactionDetailLocalDataHelper_1.setEntityRecommendationForLineIdInLocalData)(transaction, detail.transactionDetailLocalData, action.payload.entity, lineIds, uncategorizedIncomeExpense, recommendationByLineId);
307
307
  draft.transactionDetailById[key] = Object.assign(Object.assign({}, detail), { transactionDetailLocalData: newLocalData });
308
308
  }
309
309
  },
310
- prepare(transactionId, transaction, lineIds, entity, amount, recommendationWithCOTByLineId, uncategorizedIncomeExpense) {
310
+ prepare(transactionId, transaction, lineIds, entity, amount, recommendationByLineId, uncategorizedIncomeExpense) {
311
311
  return {
312
312
  payload: {
313
313
  transactionId,
@@ -315,7 +315,7 @@ const transactionDetail = (0, toolkit_1.createSlice)({
315
315
  lineIds,
316
316
  entity,
317
317
  amount,
318
- recommendationWithCOTByLineId,
318
+ recommendationByLineId,
319
319
  uncategorizedIncomeExpense,
320
320
  },
321
321
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zeniai/client-epic-state",
3
- "version": "4.18.3",
3
+ "version": "4.18.4",
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",