@zeniai/client-epic-state 5.1.29-beta0ND → 5.1.30

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 (81) hide show
  1. package/lib/__testHelpers__/apiFailure.json +6 -0
  2. package/lib/entity/genericEntity/entity.d.ts +1 -1
  3. package/lib/entity/jeSchedules/jeSchedulesPayload.js +3 -2
  4. package/lib/entity/jeSchedules/jeSchedulesSelector.d.ts +1 -1
  5. package/lib/entity/jeSchedules/jeSchedulesSelector.js +4 -4
  6. package/lib/entity/jeSchedules/jeSchedulesState.d.ts +1 -1
  7. package/lib/entity/vendor/__mocks__/vendorMock.d.ts +7 -0
  8. package/lib/entity/vendor/__mocks__/vendorMock.js +311 -0
  9. package/lib/entity/vendor/__mocks__/vendorStateMocks.d.ts +8 -0
  10. package/lib/entity/vendor/__mocks__/vendorStateMocks.js +415 -0
  11. package/lib/entity/vendor/vendorPayload.d.ts +4 -2
  12. package/lib/entity/vendor/vendorPayload.js +3 -1
  13. package/lib/esm/__testHelpers__/apiFailure.json +6 -0
  14. package/lib/esm/entity/jeSchedules/jeSchedulesPayload.js +3 -2
  15. package/lib/esm/entity/jeSchedules/jeSchedulesSelector.js +4 -4
  16. package/lib/esm/entity/vendor/__mocks__/vendorMock.js +308 -0
  17. package/lib/esm/entity/vendor/__mocks__/vendorStateMocks.js +412 -0
  18. package/lib/esm/entity/vendor/vendorPayload.js +3 -1
  19. package/lib/esm/index.js +2 -2
  20. package/lib/esm/view/accountMappingView/__mocks__/accountMappingSelectorMock.js +4650 -0
  21. package/lib/esm/view/addressView/__mocks__/addressViewMocks.js +203 -0
  22. package/lib/esm/view/addressView/__mocks__/json/createAddressResponse.json +23 -0
  23. package/lib/esm/view/addressView/__mocks__/json/createCompanyAddressSuccess.json +258 -0
  24. package/lib/esm/view/addressView/__mocks__/json/createCompanyUserAddressSuccess.json +418 -0
  25. package/lib/esm/view/addressView/__mocks__/json/fetchAddressResponse.json +24 -0
  26. package/lib/esm/view/addressView/__mocks__/json/updateAddressResponse.json +24 -0
  27. package/lib/esm/view/commonVendorView/transactionVendorView/epics/saveTransactionVendorEpic.js +11 -6
  28. package/lib/esm/view/createTransferEntry/epics/createTransferEntryEpic.js +5 -1
  29. package/lib/esm/view/expenseAutomationView/payload/jeSchedulesPayload.js +4 -1
  30. package/lib/esm/view/expenseAutomationView/selectors/jeSchedulesViewSelector.js +1 -1
  31. package/lib/esm/view/referralView/referralReducer.js +3 -2
  32. package/lib/esm/view/scheduleView/scheduleAccruedDetailView/epics/deleteScheduleAccruedDetailEpic.js +1 -1
  33. package/lib/esm/view/scheduleView/scheduleAccruedDetailView/epics/fetchRecommendedTransactionRowIndexEpic.js +11 -5
  34. package/lib/esm/view/scheduleView/scheduleAccruedDetailView/scheduleAccruedDetailPayload.js +4 -1
  35. package/lib/esm/view/scheduleView/scheduleDetailView/epics/createNewSchedulesEpic.js +1 -1
  36. package/lib/esm/view/scheduleView/scheduleDetailView/epics/deleteScheduleDetailEpic.js +1 -1
  37. package/lib/esm/view/scheduleView/scheduleDetailView/epics/markAsCompleteScheduleDetailEpic.js +1 -1
  38. package/lib/esm/view/scheduleView/scheduleDetailView/epics/saveScheduleDetailsEpic.js +1 -1
  39. package/lib/esm/view/scheduleView/scheduleDetailView/scheduleDetailPayload.js +12 -3
  40. package/lib/esm/view/scheduleView/scheduleListView/scheduleListSelector.js +8 -7
  41. package/lib/esm/view/spendManagement/billPay/billDetailView/epics/fetchBillDetailEpic.js +8 -3
  42. package/lib/esm/view/transactionDetail/epics/markTransactionAsNotMiscategorizedEpic.js +2 -28
  43. package/lib/esm/view/transactionDetail/epics/updateTransactionDetailEpic.js +5 -1
  44. package/lib/esm/view/trendWithTransactions/fetchTrendForEntityEpic.js +3 -1
  45. package/lib/esm/view/vendorFiling1099/vendorFiling1099List/vendorFiling1099ListReducer.js +4 -1
  46. package/lib/esm/view/vendorList/vendorListReducer.js +4 -1
  47. package/lib/esm/view/vendorReviewView/vendorFirstReviewView/vendorFirstReviewViewReducer.js +9 -1
  48. package/lib/index.d.ts +2 -2
  49. package/lib/index.js +7 -6
  50. package/lib/view/accountMappingView/__mocks__/accountMappingSelectorMock.d.ts +11 -0
  51. package/lib/view/accountMappingView/__mocks__/accountMappingSelectorMock.js +4659 -0
  52. package/lib/view/addressView/__mocks__/addressViewMocks.d.ts +35 -0
  53. package/lib/view/addressView/__mocks__/addressViewMocks.js +239 -0
  54. package/lib/view/addressView/__mocks__/json/createAddressResponse.json +23 -0
  55. package/lib/view/addressView/__mocks__/json/createCompanyAddressSuccess.json +258 -0
  56. package/lib/view/addressView/__mocks__/json/createCompanyUserAddressSuccess.json +418 -0
  57. package/lib/view/addressView/__mocks__/json/fetchAddressResponse.json +24 -0
  58. package/lib/view/addressView/__mocks__/json/updateAddressResponse.json +24 -0
  59. package/lib/view/commonVendorView/transactionVendorView/epics/saveTransactionVendorEpic.js +11 -6
  60. package/lib/view/createTransferEntry/epics/createTransferEntryEpic.js +5 -1
  61. package/lib/view/expenseAutomationView/payload/jeSchedulesPayload.js +4 -1
  62. package/lib/view/expenseAutomationView/selectors/jeSchedulesViewSelector.js +1 -1
  63. package/lib/view/referralView/referralReducer.d.ts +1 -0
  64. package/lib/view/referralView/referralReducer.js +4 -3
  65. package/lib/view/scheduleView/scheduleAccruedDetailView/epics/deleteScheduleAccruedDetailEpic.js +1 -1
  66. package/lib/view/scheduleView/scheduleAccruedDetailView/epics/fetchRecommendedTransactionRowIndexEpic.js +11 -5
  67. package/lib/view/scheduleView/scheduleAccruedDetailView/scheduleAccruedDetailPayload.js +4 -1
  68. package/lib/view/scheduleView/scheduleDetailView/epics/createNewSchedulesEpic.js +1 -1
  69. package/lib/view/scheduleView/scheduleDetailView/epics/deleteScheduleDetailEpic.js +1 -1
  70. package/lib/view/scheduleView/scheduleDetailView/epics/markAsCompleteScheduleDetailEpic.js +1 -1
  71. package/lib/view/scheduleView/scheduleDetailView/epics/saveScheduleDetailsEpic.js +1 -1
  72. package/lib/view/scheduleView/scheduleDetailView/scheduleDetailPayload.js +12 -3
  73. package/lib/view/scheduleView/scheduleListView/scheduleListSelector.js +8 -7
  74. package/lib/view/spendManagement/billPay/billDetailView/epics/fetchBillDetailEpic.js +8 -3
  75. package/lib/view/transactionDetail/epics/markTransactionAsNotMiscategorizedEpic.js +2 -28
  76. package/lib/view/transactionDetail/epics/updateTransactionDetailEpic.js +5 -1
  77. package/lib/view/trendWithTransactions/fetchTrendForEntityEpic.js +3 -1
  78. package/lib/view/vendorFiling1099/vendorFiling1099List/vendorFiling1099ListReducer.js +4 -1
  79. package/lib/view/vendorList/vendorListReducer.js +4 -1
  80. package/lib/view/vendorReviewView/vendorFirstReviewView/vendorFirstReviewViewReducer.js +9 -1
  81. package/package.json +1 -1
@@ -202,7 +202,10 @@ export const mapAccruedExpenseJEScheduleTransactionToPayload = (jeScheduleAccrue
202
202
  const lastJEScheduleDate = scheduleLength > 0
203
203
  ? scheduleDetailsLocalDataAccruedExpenses.jeScheduleDetails[scheduleLength - 1].postingDate.format(DEFAULT_DATE_FORMAT)
204
204
  : null;
205
- const vendorID = vendor.id;
205
+ const vendorID = vendor?.id;
206
+ if (vendorID == null) {
207
+ throw new Error('Vendor is required to build accrued schedule detail payload');
208
+ }
206
209
  const vendorDetails = vendorState.vendorByID[vendorID];
207
210
  const payload = {
208
211
  status: status,
@@ -12,7 +12,7 @@ export const createNewSchedulesEpic = (actions$, state$) => actions$.pipe(filter
12
12
  if (selectedJEScheduleKey != null) {
13
13
  const jeScheduleTransactionState = getJEScheduledTransactionByJEScheduleTransactionKey(selectedJEScheduleKey, state);
14
14
  const totalAmount = jeScheduleTransactionState.baseTransaction.amount;
15
- const vendorName = jeScheduleTransactionState.vendor.name;
15
+ const vendorName = jeScheduleTransactionState.vendor?.name ?? '';
16
16
  const currentLocalData = jeScheduleTransactionState.jeScheduleId != null
17
17
  ? scheduleDetailState.editScheduleStateByDetailId[scheduleType][jeScheduleTransactionState.jeScheduleId]
18
18
  : scheduleDetailState.newScheduleState[scheduleType];
@@ -16,7 +16,7 @@ export const deleteScheduleDetailEpic = (actions$, state$, zeniAPI) => actions$.
16
16
  return from(actions);
17
17
  }
18
18
  const jeScheduleTransactionState = getJEScheduledTransactionByJEScheduleTransactionKey(selectedJEScheduleKey, state);
19
- const vendorName = jeScheduleTransactionState.vendor.name;
19
+ const vendorName = jeScheduleTransactionState.vendor?.name ?? '';
20
20
  const scheduleDetailId = jeScheduleTransactionState.jeScheduleId ?? selectedJeScheduleDetailId;
21
21
  if (scheduleDetailId == null) {
22
22
  return from(actions);
@@ -12,7 +12,7 @@ export const markAsCompleteScheduleDetailEpic = (actions$, state$, zeniAPI) => a
12
12
  const actions = [];
13
13
  const jeScheduleTransactionState = getJEScheduledTransactionByJEScheduleTransactionKey(jeScheduleKey, state);
14
14
  const scheduleDetailId = jeScheduleTransactionState.jeScheduleId;
15
- const vendorName = jeScheduleTransactionState.vendor.name;
15
+ const vendorName = jeScheduleTransactionState.vendor?.name ?? '';
16
16
  const scheduleDetailsUpdated = scheduleDetailId != null
17
17
  ? state.scheduleDetailState.editScheduleStateByDetailId[scheduleType][scheduleDetailId]
18
18
  : state.scheduleDetailState.newScheduleState[scheduleType];
@@ -16,7 +16,7 @@ export const saveScheduleDetailsEpic = (actions$, state$, zeniAPI) => actions$.p
16
16
  return from(actions);
17
17
  }
18
18
  const jeScheduleTransactionState = getJEScheduledTransactionByJEScheduleTransactionKey(selectedJEScheduleKey, state);
19
- const vendorName = jeScheduleTransactionState.vendor.name;
19
+ const vendorName = jeScheduleTransactionState.vendor?.name ?? '';
20
20
  const scheduleDetailId = jeScheduleTransactionState.jeScheduleId ?? selectedJeScheduleDetailId;
21
21
  const scheduleDetailsUpdated = scheduleDetailId != null
22
22
  ? state.scheduleDetailState.editScheduleStateByDetailId[scheduleType][scheduleDetailId]
@@ -120,7 +120,10 @@ const mapJEScheduleTransactionToPayload = (jeScheduleTransactionState, vendorSta
120
120
  const lastJEScheduleDate = scheduleLength > 0
121
121
  ? scheduleDetailsLocalData.jeScheduleDetails[scheduleLength - 1].postingDate.format(DEFAULT_DATE_FORMAT)
122
122
  : null;
123
- const vendorID = vendor.id;
123
+ const vendorID = vendor?.id;
124
+ if (vendorID == null) {
125
+ throw new Error('Vendor is required to build schedule detail payload (mapJEScheduleTransactionToPayload)');
126
+ }
124
127
  const vendorDetails = vendorState.vendorByID[vendorID];
125
128
  const updatedVendor = {
126
129
  vendor_id: selectedVendor?.id ?? '',
@@ -195,7 +198,10 @@ const mapFixedAssetJEScheduleTransactionToPayload = (jeScheduleTransactionState,
195
198
  const lastJEScheduleDate = scheduleLength > 0
196
199
  ? scheduleDetailsLocalData.jeScheduleDetails[scheduleLength - 1].postingDate.format(DEFAULT_DATE_FORMAT)
197
200
  : null;
198
- const vendorID = vendor.id;
201
+ const vendorID = vendor?.id;
202
+ if (vendorID == null) {
203
+ throw new Error('Vendor is required to build schedule detail payload (mapFixedAssetJEScheduleTransactionToPayload)');
204
+ }
199
205
  const vendorDetails = vendorState.vendorByID[vendorID];
200
206
  const updatedVendor = {
201
207
  vendor_id: selectedVendor?.id ?? '',
@@ -273,7 +279,10 @@ export const mapAccruedExpenseJEScheduleTransactionToPayload = (jeScheduleTransa
273
279
  const lastJEScheduleDate = scheduleLength > 0
274
280
  ? scheduleDetailsLocalData.jeScheduleDetails[scheduleLength - 1].postingDate.format(DEFAULT_DATE_FORMAT)
275
281
  : null;
276
- const vendorID = vendor.id;
282
+ const vendorID = vendor?.id;
283
+ if (vendorID == null) {
284
+ throw new Error('Vendor is required to build schedule detail payload (mapAccruedExpenseJEScheduleTransactionToPayload)');
285
+ }
277
286
  const vendorDetails = vendorState.vendorByID[vendorID];
278
287
  const payload = {
279
288
  status: updatedStatus,
@@ -12,9 +12,9 @@ const sortedJETransactionsView = (jeTransactions, sortKey, sortOrder) => {
12
12
  case 'transactionDate':
13
13
  return jeTransaction.baseTransaction.date.valueOf();
14
14
  case 'vendor':
15
- return jeTransaction.vendor.name != null
15
+ return jeTransaction.vendor?.name != null
16
16
  ? jeTransaction.vendor.name.toLowerCase()
17
- : jeTransaction.vendor.name;
17
+ : jeTransaction.vendor?.name;
18
18
  case 'scheduleCategory':
19
19
  return jeTransaction.baseTransaction.account.accountName.toLowerCase();
20
20
  case 'expenseCategory':
@@ -75,9 +75,9 @@ const sortedJEAccruedSchedules = (jeAccruedSchedules, sortKey, sortOrder) => {
75
75
  case 'createTime':
76
76
  return jeAccruedSchedule.createTime.valueOf();
77
77
  case 'vendor':
78
- return jeAccruedSchedule.vendor.name != null
78
+ return jeAccruedSchedule.vendor?.name != null
79
79
  ? jeAccruedSchedule.vendor.name.toLowerCase()
80
- : jeAccruedSchedule.vendor.name;
80
+ : jeAccruedSchedule.vendor?.name;
81
81
  case 'expenseCategory':
82
82
  return jeAccruedSchedule.jeDebit.account != null
83
83
  ? jeAccruedSchedule.jeDebit.account.accountName.toLowerCase()
@@ -202,7 +202,7 @@ export const getScheduleListReport = (state, scheduleType) => {
202
202
  .trim()
203
203
  .toLowerCase();
204
204
  const sortedJETransactionView = sortedJETransactionsView(jeTransactionsView.filter((jeTransaction) => {
205
- return ((jeTransaction.vendor.name != null &&
205
+ return ((jeTransaction.vendor?.name != null &&
206
206
  jeTransaction.vendor.name
207
207
  .toLowerCase()
208
208
  .includes(loweredSearchText) === true) ||
@@ -322,8 +322,9 @@ export const getAccruedScheduleListReport = (state, scheduleType) => {
322
322
  .trim()
323
323
  .toLocaleLowerCase();
324
324
  const sortedJESchedules = sortedJEAccruedSchedules(jeScheduleAccrued.filter((jeSchedule) => {
325
- return (jeSchedule.vendor.name.toLowerCase().includes(loweredSearchText) ===
326
- true ||
325
+ return (jeSchedule.vendor?.name
326
+ ?.toLowerCase()
327
+ ?.includes(loweredSearchText) === true ||
327
328
  jeSchedule.memo.toLowerCase().includes(loweredSearchText) === true);
328
329
  }), sortKey, sortOrder);
329
330
  const totalBalances = getCalculatedAccruedScheduleTotal(sortedJESchedules);
@@ -14,6 +14,7 @@ import { updateEntityApprovalStatus } from '../../../../../entity/entityApproval
14
14
  import { updatePaymentAccounts } from '../../../../../entity/paymentAccount/paymentAccountReducer';
15
15
  import { updatePaymentInstruments } from '../../../../../entity/paymentInstrument/paymentInstrumentReducer';
16
16
  import { updateAllUsers } from '../../../../../entity/user/userReducer';
17
+ import { getVendorPayloadIdentifier } from '../../../../../entity/vendor/vendorPayload';
17
18
  import { updateVendors } from '../../../../../entity/vendor/vendorReducer';
18
19
  import { createZeniAPIStatus, isSuccessResponse, } from '../../../../../responsePayload';
19
20
  import { getFlattenedAddress } from '../../../../commonVendorView/commonVendorViewHelper';
@@ -98,12 +99,16 @@ export const fetchBillDetailEpic = (actions$, state$, zeniAPI) => actions$.pipe(
98
99
  }
99
100
  else {
100
101
  fetchActions.push(updateBillDetail({ billId, billDetail: response.data }));
101
- fetchActions.push(updateBillDetailFetchState(transcationId, 'Completed', undefined, vendorInResponse?.vendor_id));
102
102
  const transactionInResponse = response.data?.transaction;
103
+ const resolvedVendorId = vendorInResponse != null
104
+ ? getVendorPayloadIdentifier(vendorInResponse)
105
+ : null;
106
+ fetchActions.push(updateBillDetailFetchState(transcationId, 'Completed', undefined, resolvedVendorId ?? undefined));
103
107
  if (transactionInResponse != null &&
104
108
  transactionInResponse.total_amount != null &&
109
+ resolvedVendorId != null &&
105
110
  vendorInResponse != null) {
106
- fetchActions.push(fetchDuplicateBill(vendorInResponse.vendor_name, vendorInResponse.vendor_id, transactionInResponse.total_amount, transactionInResponse.recipient_total_amount, transactionInResponse.document_id, billId));
111
+ fetchActions.push(fetchDuplicateBill(vendorInResponse.vendor_name, resolvedVendorId, transactionInResponse.total_amount, transactionInResponse.recipient_total_amount, transactionInResponse.document_id, billId));
107
112
  }
108
113
  const billHasPaymentError = [
109
114
  'failed',
@@ -157,7 +162,7 @@ function removeCompleteTransaction(billId, transaction) {
157
162
  function getVendorPreviousBillsActions(billTransactionPayload) {
158
163
  const fetchPreviousBillsActions = [];
159
164
  const vendorId = billTransactionPayload.vendor_id;
160
- if (Boolean(vendorId) === true) {
165
+ if (vendorId != null && vendorId !== '') {
161
166
  fetchPreviousBillsActions.push(fetchPreviousBills(vendorId, false));
162
167
  }
163
168
  return fetchPreviousBillsActions;
@@ -9,36 +9,10 @@ import { updateStatusForTransactionNotMiscategorizedUpdateForCategorization, upd
9
9
  import { markTransactionAsNotMiscategorized, updateStatusConsolidatedSaveTransactionDetail, updateStatusForTransactionNotMiscategorizedUpdate, } from '../transactionDetailReducer';
10
10
  import { getTransactionDetailKey } from '../transactionDetailState';
11
11
  export const markTransactionAsNotMiscategorizedEpic = (actions$, state$, zeniAPI) => actions$.pipe(filter(markTransactionAsNotMiscategorized.match), mergeMap((action) => {
12
- // Expense-automation customers must be marked review-complete through the
13
- // same endpoint the categorization list uses; mark-miscategorized-as-correct
14
- // does not move their lines out of review. Mirror the list flow by reviewing
15
- // the transaction's categorizable line ids (updatesByLineId).
16
- const { url, body } = action.payload.isExpenseAutomationEnabled === true
17
- ? {
18
- url: `${zeniAPI.apiEndPoints.accountMicroServiceBaseUrl}/1.0/expense-automation/mark-as-reviewed`,
19
- body: {
20
- transactions_reviewed: [
21
- {
22
- transaction_id: action.payload.transactionId.id,
23
- line_ids: Object.keys(action.payload.transactionSaveUpdates.updates
24
- ?.updatesByLineId ?? {}),
25
- },
26
- ],
27
- },
28
- }
29
- : {
30
- url: `${zeniAPI.apiEndPoints.accountMicroServiceBaseUrl}/1.0/transactions/${action.payload.transactionId.id}/mark-miscategorized-as-correct`,
31
- body: preparePayload(action.payload.transactionId),
32
- };
33
12
  return zeniAPI
34
- .putAndGetJSON(url, body)
13
+ .putAndGetJSON(`${zeniAPI.apiEndPoints.accountMicroServiceBaseUrl}/1.0/transactions/${action.payload.transactionId.id}/mark-miscategorized-as-correct`, preparePayload(action.payload.transactionId))
35
14
  .pipe(mergeMap((response) => {
36
- // mark-as-reviewed can return 200 while still listing this
37
- // transaction under transactions_reviewed_failed; don't clear it then.
38
- const reviewedFailedForExpenseAutomation = action.payload.isExpenseAutomationEnabled === true &&
39
- (response.data?.transactions_reviewed_failed ?? []).some((reviewed) => reviewed.transaction_id === action.payload.transactionId.id);
40
- if (isSuccessStatus(response) &&
41
- !reviewedFailedForExpenseAutomation) {
15
+ if (isSuccessStatus(response)) {
42
16
  const actions = [];
43
17
  actions.push(updateStatusForTransactionNotMiscategorizedUpdate(action.payload.transactionId, 'Completed', undefined));
44
18
  const transactionKey = getTransactionDetailKey(action.payload.transactionId);
@@ -17,6 +17,7 @@ import { getTransactionWithCOT } from '../../../entity/transaction/transactionHe
17
17
  import { updateTransaction, updateTransactions, } from '../../../entity/transaction/transactionReducer';
18
18
  import { getSupportedTransactionById } from '../../../entity/transaction/transactionSelector';
19
19
  import { updateVendors } from '../../../entity/vendor/vendorReducer';
20
+ import { getVendorPayloadIdentifier } from '../../../entity/vendor/vendorPayload';
20
21
  import { getVendorByVendorId } from '../../../entity/vendor/vendorSelector';
21
22
  import { createZeniAPIStatus, isActionNotAllowed, isSuccessResponse, } from '../../../responsePayload';
22
23
  import { getIsAccountingProjectsEnabled } from '../../../entity/tenant/tenantSelector';
@@ -59,9 +60,12 @@ export const updateTransactionDetailEpic = (actions$, state$, zeniAPI) => action
59
60
  actions.push(updateVendors(response.data.vendors, 'merge'));
60
61
  }
61
62
  actions.push(updateTransaction(transactionDetailKeyForResponse, response.data.transaction));
63
+ const updatedVendor = response.data.vendors?.[0];
62
64
  actions.push(initializeTransactionDetailLocalData({
63
65
  transactionId: transactionIdResp,
64
- vendorId: response.data.vendors?.[0]?.vendor_id,
66
+ vendorId: updatedVendor != null
67
+ ? getVendorPayloadIdentifier(updatedVendor) ?? undefined
68
+ : undefined,
65
69
  }));
66
70
  actions.push(updateTransactionDetailSaveStatus(transactionIdResp, 'Completed'));
67
71
  let callMarkTransactionAsNotMiscategorized = true;
@@ -10,7 +10,9 @@ _state$) => actions$.pipe(filter(fetchTrendForEntity.match), mergeMap((action) =
10
10
  return of(fetchIncomeTrend(entity.id, entity.name));
11
11
  }
12
12
  if (entity.type === 'vendor') {
13
- return of(fetchExpenseTrend(entity.id, entity.name, entity.zeniId));
13
+ // QBO-only vendors may lack zeniId; fall back to entity.id so spend
14
+ // trend state still keys off the resolved vendor identifier.
15
+ return of(fetchExpenseTrend(entity.id, entity.name, entity.zeniId ?? entity.id));
14
16
  }
15
17
  return from([]);
16
18
  }));
@@ -1,4 +1,5 @@
1
1
  import { createSlice } from '@reduxjs/toolkit';
2
+ import { getVendorPayloadIdentifier } from '../../../entity/vendor/vendorPayload';
2
3
  import { date } from '../../../zeniDayJS';
3
4
  export const initialState = {
4
5
  fetchState: 'Not-Started',
@@ -75,7 +76,9 @@ const vendorFiling1099List = createSlice({
75
76
  },
76
77
  updateVendorsFiling1099List(draft, action) {
77
78
  const { response } = action.payload;
78
- const newVendorIds = response.data?.report.vendors?.map((vendor) => vendor.vendor_id) ?? [];
79
+ const newVendorIds = (response.data?.report.vendors
80
+ ?.map((vendor) => getVendorPayloadIdentifier(vendor))
81
+ .filter((vendorId) => vendorId != null)) ?? [];
79
82
  draft.vendorIds = [...new Set([...draft.vendorIds, ...newVendorIds])];
80
83
  draft.isVendor1099Populated =
81
84
  response.data?.report.is_vendor_1099_populated ?? true;
@@ -1,4 +1,5 @@
1
1
  import { createSlice } from '@reduxjs/toolkit';
2
+ import { getVendorPayloadIdentifier } from '../../entity/vendor/vendorPayload';
2
3
  import { date } from '../../zeniDayJS';
3
4
  export const initialState = {
4
5
  fetchState: 'Not-Started',
@@ -84,7 +85,9 @@ const vendorList = createSlice({
84
85
  },
85
86
  updateVendorsList(draft, action) {
86
87
  const { response, searchString, view } = action.payload;
87
- const newVendorIds = response.data?.vendors?.map((vendor) => vendor.vendor_id) ?? [];
88
+ const newVendorIds = (response.data?.vendors
89
+ ?.map((vendor) => getVendorPayloadIdentifier(vendor))
90
+ .filter((vendorId) => vendorId != null)) ?? [];
88
91
  if (searchString.length > 0) {
89
92
  if (action.payload.keepExistingListItems === false) {
90
93
  draft.searchResults = newVendorIds;
@@ -1,6 +1,7 @@
1
1
  import { createSlice } from '@reduxjs/toolkit';
2
2
  import { toAttachment, } from '../../../entity/transaction/payloadTypes/attachmentPayload';
3
3
  import { toAllRecommendationsFromPayload, toVendorFirstReviewViewStatusesTypeStrict, } from '../common/state/commonTypes';
4
+ import { getVendorPayloadIdentifier } from '../../../entity/vendor/vendorPayload';
4
5
  export const initialState = {
5
6
  vendorFirstReviewViewLocalDataById: {},
6
7
  fetchState: 'Not-Started',
@@ -299,7 +300,14 @@ const toVendorReviewViewUpdatedVendorLocalData = (vendorId, vendorPayload) => {
299
300
  const toVendorReviewViewLocalDataById = (vendorsPayload) => {
300
301
  const vendorById = {};
301
302
  vendorsPayload.forEach((vendor) => {
302
- const vendorView = mapPayloadToVendorFirstReviewView(vendor);
303
+ const resolvedVendorId = getVendorPayloadIdentifier(vendor);
304
+ if (resolvedVendorId == null) {
305
+ return;
306
+ }
307
+ const vendorView = mapPayloadToVendorFirstReviewView({
308
+ ...vendor,
309
+ vendor_id: resolvedVendorId,
310
+ });
303
311
  vendorById[vendorView.selectedVendorId] = {
304
312
  vendorFirstReviewViewLocalData: vendorView,
305
313
  saveStatus: {
package/lib/index.d.ts CHANGED
@@ -379,7 +379,7 @@ import { ProfitAndLossProjectViewUIState } from './view/profitAndLossProjectView
379
379
  import { fetchProjectList } from './view/projectList/projectListReducer';
380
380
  import { ProjectListSelectorView, getProjectList } from './view/projectList/projectListSelector';
381
381
  import { fetchEntityRecommendationsByTransactionId, fetchEntityRecommendationsForLineUpdate, fetchRecommendationByEntityId, fetchRecommendationByEntityName } from './view/recommendation/recommendationReducer';
382
- import { clearReferrals, fetchReferrals, fetchRewardsPlan, resendReferralInvite, saveReferralFormDataInLocalStore, sendReferralInvite, updateReferViewed, updateReferralListSortUiState } from './view/referralView/referralReducer';
382
+ import { DEFAULT_REFERRER_AMOUNT, clearReferrals, fetchReferrals, fetchRewardsPlan, resendReferralInvite, saveReferralFormDataInLocalStore, sendReferralInvite, updateReferViewed, updateReferralListSortUiState } from './view/referralView/referralReducer';
383
383
  import { ReferralListSelectorView, RewardsPlanCardReport, getInviteFormView, getReferralListView, getRewardsPlanCard } from './view/referralView/referralSelector';
384
384
  import { AmountStatusTypes, InviteCompanyLocalData, ReferralAmountStatus, ReferralInvitation, ReferralListViewSortKey, ReferralStatus, ReferralViewState, ReferralViewUIState, RewardsPlanData, StatusTypes, toReferralListViewSortKeyType } from './view/referralView/referralState';
385
385
  import { fetchReimbursementCard } from './view/reimbursementCard/reimbursementCardReducer';
@@ -903,7 +903,7 @@ export { ExternalNotificationData, NotificationGroup, NotificationActivityType,
903
903
  export { NotificationView, NotificationViewUIState, NotificationTabState, NotificationTabType, NotificationSubTabType, toNotificationSubTabTypeStrict, toNotificationTabTypeStrict, fetchNotificationView, fetchNotificationUnreadCount, fetchNotificationUnreadCountSuccess, updateNotificationViewAllNotificationsStatus, updateNotificationViewNotificationStatus, updateNotificationViewTabState, updateNotificationViewCurrentTabAndSubTab, updateNotificationViewSubTab, updateNotificationViewUIState, getNotificationView, getExternalNotificationsForSelectedSubTab, getNotificationsForSelectedSubTab, };
904
904
  export { clearFeatureNotificationView, fetchRegisteredInterests, notifyMeForFeature, getFeatureNotificationView, getRegisteredInterests, getRegisteredInterestsByFeature, isFeatureInterestRegistered, FeatureInterest, FeatureNotificationViewState, };
905
905
  export { pushToastNotification, ToastNotification, ToastNotificationPayload, getLastNotificationTime, getNotifications, };
906
- export { getReferralListView, getInviteFormView, ReferralListSelectorView, ReferralViewState, InviteCompanyLocalData, ReferralInvitation, ReferralListViewSortKey, ReferralViewUIState, toReferralListViewSortKeyType, ReferralStatus, ReferralAmountStatus, StatusTypes, AmountStatusTypes, fetchReferrals, sendReferralInvite, clearReferrals, saveReferralFormDataInLocalStore, updateReferralListSortUiState, resendReferralInvite, fetchRewardsPlan, RewardsPlanCardReport, getRewardsPlanCard, updateReferViewed, RewardsPlanData, };
906
+ export { getReferralListView, getInviteFormView, ReferralListSelectorView, ReferralViewState, InviteCompanyLocalData, ReferralInvitation, ReferralListViewSortKey, ReferralViewUIState, toReferralListViewSortKeyType, ReferralStatus, ReferralAmountStatus, StatusTypes, AmountStatusTypes, DEFAULT_REFERRER_AMOUNT, fetchReferrals, sendReferralInvite, clearReferrals, saveReferralFormDataInLocalStore, updateReferralListSortUiState, resendReferralInvite, fetchRewardsPlan, RewardsPlanCardReport, getRewardsPlanCard, updateReferViewed, RewardsPlanData, };
907
907
  export { ALL_WEEK_DAYS, DayOfWeek, RecurringDatePickerOptions, RecurringFrequencyType, SEMI_WEEKLY_REQUIRED_DAYS_COUNT, getMinAllowedEndDate, getRecurringEndDateFromCount, toDayOfWeek, toRecurringFrequency, };
908
908
  export { fetchCockpitContext, fetchCompanyTaskManagerView, fetchTaskManagerMetrics, CompanyTaskManagerSelectorView, CompanyTaskManagerViewUIState, TaskManagerMetrics, getCompanyTaskManagerView, TaskWithCompanyDetail, createTaskFromTaskGroupTemplate, TaskGroupTemplate, };
909
909
  export { Country };
package/lib/index.js CHANGED
@@ -70,12 +70,12 @@ exports.updatedJELinkWithRecommendedLocalData = exports.resetJELinkInLocalData =
70
70
  exports.getAllTasks = exports.getTaskGroupById = exports.toRecurringBillFrequencyStrict = exports.toRecurringBillFrequency = exports.updateArAgingNodeCollapseState = exports.getArAgingDetailForCustomer = exports.getArAgingReport = exports.updateArAgingDetailUIState = exports.fetchArAgingDetail = exports.updateArAgingUIState = exports.fetchArAging = exports.updateVendorGlobalReviewViewLocalData = exports.toVendorGlobalReviewColumnSortKeyType = exports.getTenantMerchantByMerchantId = exports.getVendorGlobalReviewView = exports.updateVendorGlobalReviewViewUIState = exports.updateSelectedGlobalMerchant = exports.fetchVendorGlobalReviewView = exports.rejectVendorGlobalReview = exports.approveVendorGlobalReview = exports.getGlobalMerchantView = exports.clearGlobalMerchantView = exports.updateCreateGlobalMerchantLocalData = exports.createGlobalMerchant = exports.fetchGlobalMerchantRecommendation = exports.getVendorDetailSelectorView = exports.saveVendorDetailsView = exports.updateReviewVendorDetailLocalData = exports.clearGlobalMerchantAutoCompleteResults = exports.fetchGlobalMerchantAutoCompleteView = exports.updateVendorFirstReviewSortUiState = exports.updateVendorFirstReviewViewLocalData = exports.saveVendorFirstReviewView = exports.clearRecentlySavedErroredVendorData = exports.updateVendorFirstReviewViewPageToken = exports.resetVendorFirstReviewLocalData = exports.updateVendorFirstReviewViewScrollYOffset = exports.fetchVendorFirstReviewAttachments = exports.fetchVendorFirstReviewView = exports.getVendorFirstReviewAttachmentView = exports.getVendorFirstReviewView = exports.getGlobalMerchantAutoCompleteResults = exports.toVendorFirstReviewViewColumnKeyType = exports.getVendorTabView = exports.updateVendorTabViewTab = exports.fetchVendorTabView = exports.resetMarkAsCompleteStatus = exports.markAsCompleteScheduleDetail = exports.getDefaultSelectedTimeframeForScheduleType = exports.getFetchStateForScheduleListByType = void 0;
71
71
  exports.confirmCardSetupIntent = exports.createCardSetupIntent = exports.getAllCardsAndBankPaymentMethods = exports.deleteTag = exports.createTag = exports.fetchTagList = exports.getAllTags = exports.ALL_TASK_LIST_TABS = exports.initialTaskDetailLocalData = exports.convertHHMMStrToMinutes = exports.unsnoozeTask = exports.snoozeTask = exports.removeTaskFromList = exports.updateTaskListTab = exports.updateTaskFromListView = exports.toDueDateGroupKeyType = exports.toTaskStatusCodeType = exports.toPriorityCodeType = exports.getDueDateValueFromDueDateGroupId = exports.initialTaskDetail = exports.fetchAllTaskGroups = exports.getTaskUpdates = exports.toTaskListGroupByKeyTypeStrict = exports.toTaskListGroupByKeyType = exports.updateTaskGroupName = exports.dragNDropTasks = exports.updateTaskListLocalData = exports.deleteTaskGroup = exports.initiateTaskListLocalData = exports.createNewTaskGroup = exports.bulkUpdateTaskList = exports.discardTaskUpdatesInLocalStore = exports.deleteTask = exports.TASK_LIST_GROUP_BY_CATEGORIES = exports.TASK_LIST_FILTER_CATEGORIES = exports.updateTaskFilters = exports.allTaskPriority = exports.allTaskStatus = exports.updateTaskListUIState = exports.updateTaskListSearchText = exports.getCannedResponsesView = exports.deleteCannedResponse = exports.saveCannedResponse = exports.fetchCannedResponses = exports.archiveTask = exports.saveTaskDetail = exports.saveTaskUpdatesToLocalStore = exports.fetchTaskDetailPage = exports.getTaskDetail = exports.fetchTaskListPage = void 0;
72
72
  exports.getNotifications = exports.getLastNotificationTime = exports.pushToastNotification = exports.isFeatureInterestRegistered = exports.getRegisteredInterestsByFeature = exports.getRegisteredInterests = exports.getFeatureNotificationView = exports.notifyMeForFeature = exports.fetchRegisteredInterests = exports.clearFeatureNotificationView = exports.getNotificationsForSelectedSubTab = exports.getExternalNotificationsForSelectedSubTab = exports.getNotificationView = exports.updateNotificationViewUIState = exports.updateNotificationViewSubTab = exports.updateNotificationViewCurrentTabAndSubTab = exports.updateNotificationViewTabState = exports.updateNotificationViewNotificationStatus = exports.updateNotificationViewAllNotificationsStatus = exports.fetchNotificationUnreadCountSuccess = exports.fetchNotificationUnreadCount = exports.fetchNotificationView = exports.toNotificationTabTypeStrict = exports.toNotificationSubTabTypeStrict = exports.updateCommentsNotificationsStatuses = exports.updateCommentsNotifications = exports.toNotificationModeStrict = exports.parseOAuthParams = exports.getZeniOAuthApproveRedirectUrl = exports.getZeniOAuthApproveFetchState = exports.getZeniOAuthApproveError = exports.clearZeniOAuthView = exports.approveOAuthConsentSuccess = exports.approveOAuthConsentFailure = exports.approveOAuthConsent = exports.fetchZeniAccountsPromoCard = exports.getZeniAccountsPromoCard = exports.getAuthenticationView = exports.fetchCollaborationAuthToken = exports.clearAuditReportGroupViewByCompanyId = exports.saveReasonForAuditRule = exports.fetchAuditReportGroupView = exports.fetchAuditRuleGroupView = exports.getUserFromAllUsers = exports.getAuditRuleGroupViewSelectorView = exports.getAuditReportGroupViewSelectorView = exports.clearCardPaymentView = exports.resetCardPaymentErrorStatuses = exports.fetchPaymentSources = exports.addCardPaymentSource = void 0;
73
- exports.toAiAccountantOperationType = exports.toAiAccountantJobStatus = exports.toAiAccountantEnrollmentStatus = exports.getAllowedOperationsForStatus = exports.getTreasuryFundsMaximumYield = exports.getTreasurySetupViewDetails = exports.updateTreasuryVideoViewed = exports.updateTreasuryPromoRemindMeLaterClicked = exports.updateTreasuryPromoIntroClosedByOutsideClick = exports.updateFundAllocationLocalData = exports.fetchPortfolioAllocation = exports.updatePortfolioAllocation = exports.fetchTreasuryFunds = exports.clearTreasurySetupView = exports.fetchTreasurySetupView = exports.acceptTreasuryTerms = exports.getExpressPayView = exports.resetExpressPayLocalData = exports.submitExpressPay = exports.updateExpressPayFormLocalData = exports.fetchExpressPayInitialDetails = exports.getIntlWireVerificationView = exports.updateVerificationFormLocalData = exports.submitInternationalVerificationForm = exports.fetchInternationalVerificationForm = exports.createTaskFromTaskGroupTemplate = exports.getCompanyTaskManagerView = exports.fetchTaskManagerMetrics = exports.fetchCompanyTaskManagerView = exports.fetchCockpitContext = exports.toRecurringFrequency = exports.toDayOfWeek = exports.getRecurringEndDateFromCount = exports.getMinAllowedEndDate = exports.SEMI_WEEKLY_REQUIRED_DAYS_COUNT = exports.ALL_WEEK_DAYS = exports.updateReferViewed = exports.getRewardsPlanCard = exports.fetchRewardsPlan = exports.resendReferralInvite = exports.updateReferralListSortUiState = exports.saveReferralFormDataInLocalStore = exports.clearReferrals = exports.sendReferralInvite = exports.fetchReferrals = exports.AmountStatusTypes = exports.StatusTypes = exports.toReferralListViewSortKeyType = exports.getInviteFormView = exports.getReferralListView = void 0;
74
- exports.updateAiCfoAnswerCardPolicyWizardPlan = exports.setSessions = exports.setNewSession = exports.getSkills = exports.getSuggestedQuestionsForPageContext = exports.getAiCfoView = exports.clearAiCfoSidePanelHostPageContext = exports.applyAiCfoSidePanelHostPageTransition = exports.fetchSkillsFailure = exports.fetchSkillsSuccess = exports.fetchSkills = exports.fetchSuggestedQuestionsFailure = exports.fetchSuggestedQuestionsSuccess = exports.fetchSuggestedQuestions = exports.updateResponseState = exports.deleteChatSession = exports.acceptMasterTOS = exports.fetchChatHistory = exports.stopSubmitQuestion = exports.stopSubmit = exports.createSessionAndSubmit = exports.clearLastContextMessage = exports.clearDeleteChatSessionStatus = exports.clearCurrentSessionId = exports.clearAiCfoView = exports.setSession = exports.clearInput = exports.updateCotCollapsedState = exports.updateCurrentInput = exports.updateAiCfoViewScrollPosition = exports.submitQuestion = exports.createSession = exports.fetchChatSessionsForUser = exports.getAiAccountantCockpitView = exports.updateAiAccountantUIState = exports.triggerAiAccountantJob = exports.setSelectedTenantIdsForJobTrigger = exports.fetchAiAccountantJobs = exports.fetchAiAccountantCustomers = exports.clearAiAccountantView = exports.cancelAiAccountantOnboarding = exports.getAiAccountantJobsByTenantId = exports.getAiAccountantCustomers = exports.updateAiAccountantJobs = exports.updateAiAccountantCustomer = exports.updateAiAccountantCustomers = exports.clearAllAiAccountantCustomers = exports.toAiAccountantJob = exports.toAiAccountantEnrollment = exports.toAiAccountantCustomer = void 0;
75
- exports.updatePolicyRecommendationFromUploadFailure = exports.updatePolicyDocumentExtractionSuccess = exports.updatePolicyDocumentExtractionFailure = exports.updateCreatedCardPolicyTemplate = exports.updateCardPolicyVendorOptionsFailure = exports.updateCardPolicyVendorOptions = exports.updateCardPolicyTemplates = exports.updateCardPolicyStats = exports.updateCardPolicyMccCategoriesFailure = exports.updateCardPolicyMccCategories = exports.removeCardPolicyTemplate = exports.fetchCardPolicyVendorOptions = exports.fetchCardPolicyRecommendationFromUpload = exports.fetchCardPolicyMccCategories = exports.extractPolicyDocument = exports.clearPolicyDocumentExtraction = exports.toMessageType = exports.toMessageSender = exports.ALL_SYNTHETIC_AI_CFO_ANSWER_KINDS = exports.toInteractiveFormTypeStrict = exports.toInteractiveFormType = exports.toAiCfoAnswerResponseTypeStrict = exports.toAiCfoAnswerResponseType = exports.toAiCfoAnswerStateTypeStrict = exports.toAiCfoAnswerStateType = exports.toAiCfoChartTypeStrict = exports.toAiCfoChartType = exports.toAiCfoVisualizationTypeStrict = exports.toAiCfoVisualizationType = exports.ALL_INTERACTIVE_FORM_TYPES = exports.ALL_AI_CFO_ANSWER_RESPONSE_TYPES = exports.ALL_AI_CFO_ANSWER_STATE_TYPES = exports.ALL_AI_CFO_VISUALIZATION_TYPES = exports.ALL_AI_CFO_CHARTS_TYPES = exports.getSyntheticAiCfoAnswerByQuestionAnswerId = exports.getSyntheticAiCfoAnswersForChatSession = exports.getAiCfoSelectorView = exports.getAllQuestionsForChatSession = exports.getQuestionAnswerByIdForChatSession = exports.getAllQuestionAnswersForChatSession = exports.clearSyntheticAiCfoAnswers = exports.removeSyntheticAiCfoAnswer = exports.updateSyntheticAiCfoAnswer = exports.appendSyntheticAiCfoAnswer = exports.toAiCfoVisualization = exports.clearAiCfo = exports.clearSession = exports.addQuestionPayload = exports.upsertOrAddQuestionAnswerPayload = exports.upsertAnswerPayload = void 0;
76
- exports.updateManualCardPolicyFormDraft = exports.updateCreateCardPolicyTemplateRequestState = exports.updateAiCardPolicyFormDraftFromUploadPlan = exports.updateAiCardPolicyFormDraft = exports.seedManualCardPolicyFormDraft = exports.seedAiCardPolicyFormDraft = exports.createCardPolicyTemplates = exports.clearManualCardPolicyFormDraft = exports.clearCreateCardPolicy = exports.clearAiCardPolicyFormDraft = exports.applyExtractedPolicyToManualCardPolicyDraft = exports.applyExtractedPolicyToAiCardPolicyDraft = exports.toUpdateCardPolicyTemplateRequestBody = exports.toExtractedCardPolicyRules = exports.toCreateCardPolicyTemplatesRequestBody = exports.toCreateCardPolicyTemplateRequestBody = exports.toCardPolicyVendorSearchOption = exports.toCardPolicyTemplateList = exports.toCardPolicyTemplate = exports.toCardPolicyStats = exports.toCardPolicyEditFormDraft = exports.toBulkCreateCardPolicyTemplateError = exports.toCardPolicyTemplateStatus = exports.toCardPolicyTemplateMode = exports.ALL_CARD_POLICY_TEMPLATE_STATUSES = exports.ALL_CARD_POLICY_TEMPLATE_MODES = exports.getUploadedPolicyDocumentFileName = exports.getPolicyRecommendationFromUploadFetchState = exports.getPolicyRecommendationFromUploadError = exports.getPolicyRecommendationFromUploadChatSessionId = exports.getPolicyRecommendationFromUploadAnswerId = exports.getPolicyDocumentExtractionFetchState = exports.getPolicyDocumentExtractionError = exports.getExtractedCardPolicyRules = exports.getCardPolicyVendorSearchString = exports.getCardPolicyVendorSearchOptions = exports.getCardPolicyVendorSearchFetchState = exports.getCardPolicyTemplatesByIds = exports.getCardPolicyTemplateById = exports.getCardPolicySuggestedBlockMerchants = exports.getCardPolicySuggestedBlockCategories = exports.getCardPolicySuggestedAllowMerchants = exports.getCardPolicySuggestedAllowCategories = exports.getCardPolicyStats = exports.getCardPolicyMccCategoriesFetchState = exports.getCardPolicyMccCategoriesError = exports.getCardPolicyMccCategories = exports.getAllCardPolicyTemplates = exports.clearCardPolicy = exports.updatePolicyRecommendationFromUploadSuccess = void 0;
77
- exports.executeTreasuryTransferMoney = exports.getTreasuryDetail = exports.updateTreasuryTransactionListUIState = exports.fetchTreasuryTransactionList = exports.fetchTreasuryOverviewDetail = exports.getUpdateCardPolicyFetchState = exports.getCardPolicyFormDraft = exports.getCardPolicyDetailView = exports.getCardPolicyDetailFetchState = exports.updateCardPolicyFormDraft = exports.updateCardPolicyFetchStatus = exports.updateCardPolicyDetailFetchStatus = exports.updateCardPolicy = exports.fetchCardPolicyDetail = exports.clearCardPolicyDetail = exports.getCardPolicyTemplateIds = exports.getCardPolicyListView = exports.getCardPolicyListFetchState = exports.getArchiveCardPolicyFetchState = exports.updateCardPolicyListFetchStatus = exports.updateArchiveCardPolicyFetchStatus = exports.prependCardPolicyTemplateIds = exports.fetchCardPolicyList = exports.clearCardPolicyList = exports.archiveCardPolicy = exports.toManualCardPolicyTemplateRequestFromDraft = exports.toBulkCardPolicyTemplateRequestsFromDraft = exports.toCardPolicyTemplateRequestFromDraft = exports.applyAiCardPolicyFormDraftUpdate = exports.deriveAiPolicyReviewRowsFromInputs = exports.buildManualCardPolicyFormDraftSeed = exports.buildUploadReviewRows = exports.buildEmptyLimitRows = exports.buildAiCardPolicyFormDraftSeed = exports.toVendorChipFieldValue = exports.toMccCategoryChipFieldValue = exports.buildVendorChipId = exports.buildMccCategoryChipId = exports.VENDOR_CHIP_ID_PREFIX = exports.MCC_CHIP_ID_PREFIX = exports.toMccCategoryLike = exports.CARD_POLICY_LIMIT_ROW_ID_TRANSACTION = exports.CARD_POLICY_LIMIT_ROW_ID_REQUIRE_RECEIPT = exports.getManualCardPolicyFormDraft = exports.getLastCreatedCardPolicyTemplateIds = exports.getLastCreatedCardPolicyTemplateId = exports.getLastCreateCardPolicyTemplateErrors = exports.getLastCreateCardPolicySourceChatSessionId = exports.getCreateCardPolicyTemplateRequestState = exports.getAiCardPolicyFormDraft = void 0;
78
- exports.getCashManagementOverviewBanner = exports.getCashManagementOverview = exports.bufferAmountToRisk = exports.RISK_BUFFER_AMOUNT = exports.getAutoSweepFlow = exports.updateCashManagementSettingsFetchStatus = exports.updateCashManagementSettings = exports.updateAutoSweepSettingsFetchStatus = exports.updateAutoSweepRisk = exports.updateAutoSweepDraft = exports.saveAutoSweepSettings = exports.clearAutoSweepFlow = exports.fetchCashManagementOverviewPage = exports.fetchCashManagementBanner = exports.toKycProvidedDocumentTypeFromAllowed = exports.toKycProvidedDocumentType = exports.DEFAULT_SESSION_CONFIG = exports.SessionManager = exports.getTransactionActivityLogView = exports.fetchTransactionActivityLog = exports.BULK_UPLOAD_BAR_COMPLETE_HOLD_MS = exports.BULK_UPLOAD_AUTOMATCHING_TIMEOUT_MS = exports.getAutoTransferRuleHistory = exports.getAutoTransferRuleById = exports.getAutoTransferRules = exports.clearRuleUpdateLocalData = exports.updateRuleLocalData = exports.fetchAutoTransferReviewDetail = exports.fetchAutoTransferRuleHistory = exports.deleteAutoTransferRule = exports.updateAutoTransferRule = exports.createAutoTransferRule = exports.fetchAutoTransferRules = exports.getTreasuryTaxLetters = exports.fetchTreasuryTaxLetterList = exports.getTreasuryStatements = exports.fetchTreasuryStatementList = exports.getTreasuryTransferMoney = exports.clearTreasuryTransferMoney = exports.updateTreasuryTransferMoneyLocalData = void 0;
73
+ exports.toAiAccountantJobStatus = exports.toAiAccountantEnrollmentStatus = exports.getAllowedOperationsForStatus = exports.getTreasuryFundsMaximumYield = exports.getTreasurySetupViewDetails = exports.updateTreasuryVideoViewed = exports.updateTreasuryPromoRemindMeLaterClicked = exports.updateTreasuryPromoIntroClosedByOutsideClick = exports.updateFundAllocationLocalData = exports.fetchPortfolioAllocation = exports.updatePortfolioAllocation = exports.fetchTreasuryFunds = exports.clearTreasurySetupView = exports.fetchTreasurySetupView = exports.acceptTreasuryTerms = exports.getExpressPayView = exports.resetExpressPayLocalData = exports.submitExpressPay = exports.updateExpressPayFormLocalData = exports.fetchExpressPayInitialDetails = exports.getIntlWireVerificationView = exports.updateVerificationFormLocalData = exports.submitInternationalVerificationForm = exports.fetchInternationalVerificationForm = exports.createTaskFromTaskGroupTemplate = exports.getCompanyTaskManagerView = exports.fetchTaskManagerMetrics = exports.fetchCompanyTaskManagerView = exports.fetchCockpitContext = exports.toRecurringFrequency = exports.toDayOfWeek = exports.getRecurringEndDateFromCount = exports.getMinAllowedEndDate = exports.SEMI_WEEKLY_REQUIRED_DAYS_COUNT = exports.ALL_WEEK_DAYS = exports.updateReferViewed = exports.getRewardsPlanCard = exports.fetchRewardsPlan = exports.resendReferralInvite = exports.updateReferralListSortUiState = exports.saveReferralFormDataInLocalStore = exports.clearReferrals = exports.sendReferralInvite = exports.fetchReferrals = exports.DEFAULT_REFERRER_AMOUNT = exports.AmountStatusTypes = exports.StatusTypes = exports.toReferralListViewSortKeyType = exports.getInviteFormView = exports.getReferralListView = void 0;
74
+ exports.setSessions = exports.setNewSession = exports.getSkills = exports.getSuggestedQuestionsForPageContext = exports.getAiCfoView = exports.clearAiCfoSidePanelHostPageContext = exports.applyAiCfoSidePanelHostPageTransition = exports.fetchSkillsFailure = exports.fetchSkillsSuccess = exports.fetchSkills = exports.fetchSuggestedQuestionsFailure = exports.fetchSuggestedQuestionsSuccess = exports.fetchSuggestedQuestions = exports.updateResponseState = exports.deleteChatSession = exports.acceptMasterTOS = exports.fetchChatHistory = exports.stopSubmitQuestion = exports.stopSubmit = exports.createSessionAndSubmit = exports.clearLastContextMessage = exports.clearDeleteChatSessionStatus = exports.clearCurrentSessionId = exports.clearAiCfoView = exports.setSession = exports.clearInput = exports.updateCotCollapsedState = exports.updateCurrentInput = exports.updateAiCfoViewScrollPosition = exports.submitQuestion = exports.createSession = exports.fetchChatSessionsForUser = exports.getAiAccountantCockpitView = exports.updateAiAccountantUIState = exports.triggerAiAccountantJob = exports.setSelectedTenantIdsForJobTrigger = exports.fetchAiAccountantJobs = exports.fetchAiAccountantCustomers = exports.clearAiAccountantView = exports.cancelAiAccountantOnboarding = exports.getAiAccountantJobsByTenantId = exports.getAiAccountantCustomers = exports.updateAiAccountantJobs = exports.updateAiAccountantCustomer = exports.updateAiAccountantCustomers = exports.clearAllAiAccountantCustomers = exports.toAiAccountantJob = exports.toAiAccountantEnrollment = exports.toAiAccountantCustomer = exports.toAiAccountantOperationType = void 0;
75
+ exports.updatePolicyDocumentExtractionSuccess = exports.updatePolicyDocumentExtractionFailure = exports.updateCreatedCardPolicyTemplate = exports.updateCardPolicyVendorOptionsFailure = exports.updateCardPolicyVendorOptions = exports.updateCardPolicyTemplates = exports.updateCardPolicyStats = exports.updateCardPolicyMccCategoriesFailure = exports.updateCardPolicyMccCategories = exports.removeCardPolicyTemplate = exports.fetchCardPolicyVendorOptions = exports.fetchCardPolicyRecommendationFromUpload = exports.fetchCardPolicyMccCategories = exports.extractPolicyDocument = exports.clearPolicyDocumentExtraction = exports.toMessageType = exports.toMessageSender = exports.ALL_SYNTHETIC_AI_CFO_ANSWER_KINDS = exports.toInteractiveFormTypeStrict = exports.toInteractiveFormType = exports.toAiCfoAnswerResponseTypeStrict = exports.toAiCfoAnswerResponseType = exports.toAiCfoAnswerStateTypeStrict = exports.toAiCfoAnswerStateType = exports.toAiCfoChartTypeStrict = exports.toAiCfoChartType = exports.toAiCfoVisualizationTypeStrict = exports.toAiCfoVisualizationType = exports.ALL_INTERACTIVE_FORM_TYPES = exports.ALL_AI_CFO_ANSWER_RESPONSE_TYPES = exports.ALL_AI_CFO_ANSWER_STATE_TYPES = exports.ALL_AI_CFO_VISUALIZATION_TYPES = exports.ALL_AI_CFO_CHARTS_TYPES = exports.getSyntheticAiCfoAnswerByQuestionAnswerId = exports.getSyntheticAiCfoAnswersForChatSession = exports.getAiCfoSelectorView = exports.getAllQuestionsForChatSession = exports.getQuestionAnswerByIdForChatSession = exports.getAllQuestionAnswersForChatSession = exports.clearSyntheticAiCfoAnswers = exports.removeSyntheticAiCfoAnswer = exports.updateSyntheticAiCfoAnswer = exports.appendSyntheticAiCfoAnswer = exports.toAiCfoVisualization = exports.clearAiCfo = exports.clearSession = exports.addQuestionPayload = exports.upsertOrAddQuestionAnswerPayload = exports.upsertAnswerPayload = exports.updateAiCfoAnswerCardPolicyWizardPlan = void 0;
76
+ exports.updateCreateCardPolicyTemplateRequestState = exports.updateAiCardPolicyFormDraftFromUploadPlan = exports.updateAiCardPolicyFormDraft = exports.seedManualCardPolicyFormDraft = exports.seedAiCardPolicyFormDraft = exports.createCardPolicyTemplates = exports.clearManualCardPolicyFormDraft = exports.clearCreateCardPolicy = exports.clearAiCardPolicyFormDraft = exports.applyExtractedPolicyToManualCardPolicyDraft = exports.applyExtractedPolicyToAiCardPolicyDraft = exports.toUpdateCardPolicyTemplateRequestBody = exports.toExtractedCardPolicyRules = exports.toCreateCardPolicyTemplatesRequestBody = exports.toCreateCardPolicyTemplateRequestBody = exports.toCardPolicyVendorSearchOption = exports.toCardPolicyTemplateList = exports.toCardPolicyTemplate = exports.toCardPolicyStats = exports.toCardPolicyEditFormDraft = exports.toBulkCreateCardPolicyTemplateError = exports.toCardPolicyTemplateStatus = exports.toCardPolicyTemplateMode = exports.ALL_CARD_POLICY_TEMPLATE_STATUSES = exports.ALL_CARD_POLICY_TEMPLATE_MODES = exports.getUploadedPolicyDocumentFileName = exports.getPolicyRecommendationFromUploadFetchState = exports.getPolicyRecommendationFromUploadError = exports.getPolicyRecommendationFromUploadChatSessionId = exports.getPolicyRecommendationFromUploadAnswerId = exports.getPolicyDocumentExtractionFetchState = exports.getPolicyDocumentExtractionError = exports.getExtractedCardPolicyRules = exports.getCardPolicyVendorSearchString = exports.getCardPolicyVendorSearchOptions = exports.getCardPolicyVendorSearchFetchState = exports.getCardPolicyTemplatesByIds = exports.getCardPolicyTemplateById = exports.getCardPolicySuggestedBlockMerchants = exports.getCardPolicySuggestedBlockCategories = exports.getCardPolicySuggestedAllowMerchants = exports.getCardPolicySuggestedAllowCategories = exports.getCardPolicyStats = exports.getCardPolicyMccCategoriesFetchState = exports.getCardPolicyMccCategoriesError = exports.getCardPolicyMccCategories = exports.getAllCardPolicyTemplates = exports.clearCardPolicy = exports.updatePolicyRecommendationFromUploadSuccess = exports.updatePolicyRecommendationFromUploadFailure = void 0;
77
+ exports.getTreasuryDetail = exports.updateTreasuryTransactionListUIState = exports.fetchTreasuryTransactionList = exports.fetchTreasuryOverviewDetail = exports.getUpdateCardPolicyFetchState = exports.getCardPolicyFormDraft = exports.getCardPolicyDetailView = exports.getCardPolicyDetailFetchState = exports.updateCardPolicyFormDraft = exports.updateCardPolicyFetchStatus = exports.updateCardPolicyDetailFetchStatus = exports.updateCardPolicy = exports.fetchCardPolicyDetail = exports.clearCardPolicyDetail = exports.getCardPolicyTemplateIds = exports.getCardPolicyListView = exports.getCardPolicyListFetchState = exports.getArchiveCardPolicyFetchState = exports.updateCardPolicyListFetchStatus = exports.updateArchiveCardPolicyFetchStatus = exports.prependCardPolicyTemplateIds = exports.fetchCardPolicyList = exports.clearCardPolicyList = exports.archiveCardPolicy = exports.toManualCardPolicyTemplateRequestFromDraft = exports.toBulkCardPolicyTemplateRequestsFromDraft = exports.toCardPolicyTemplateRequestFromDraft = exports.applyAiCardPolicyFormDraftUpdate = exports.deriveAiPolicyReviewRowsFromInputs = exports.buildManualCardPolicyFormDraftSeed = exports.buildUploadReviewRows = exports.buildEmptyLimitRows = exports.buildAiCardPolicyFormDraftSeed = exports.toVendorChipFieldValue = exports.toMccCategoryChipFieldValue = exports.buildVendorChipId = exports.buildMccCategoryChipId = exports.VENDOR_CHIP_ID_PREFIX = exports.MCC_CHIP_ID_PREFIX = exports.toMccCategoryLike = exports.CARD_POLICY_LIMIT_ROW_ID_TRANSACTION = exports.CARD_POLICY_LIMIT_ROW_ID_REQUIRE_RECEIPT = exports.getManualCardPolicyFormDraft = exports.getLastCreatedCardPolicyTemplateIds = exports.getLastCreatedCardPolicyTemplateId = exports.getLastCreateCardPolicyTemplateErrors = exports.getLastCreateCardPolicySourceChatSessionId = exports.getCreateCardPolicyTemplateRequestState = exports.getAiCardPolicyFormDraft = exports.updateManualCardPolicyFormDraft = void 0;
78
+ exports.getCashManagementOverviewBanner = exports.getCashManagementOverview = exports.bufferAmountToRisk = exports.RISK_BUFFER_AMOUNT = exports.getAutoSweepFlow = exports.updateCashManagementSettingsFetchStatus = exports.updateCashManagementSettings = exports.updateAutoSweepSettingsFetchStatus = exports.updateAutoSweepRisk = exports.updateAutoSweepDraft = exports.saveAutoSweepSettings = exports.clearAutoSweepFlow = exports.fetchCashManagementOverviewPage = exports.fetchCashManagementBanner = exports.toKycProvidedDocumentTypeFromAllowed = exports.toKycProvidedDocumentType = exports.DEFAULT_SESSION_CONFIG = exports.SessionManager = exports.getTransactionActivityLogView = exports.fetchTransactionActivityLog = exports.BULK_UPLOAD_BAR_COMPLETE_HOLD_MS = exports.BULK_UPLOAD_AUTOMATCHING_TIMEOUT_MS = exports.getAutoTransferRuleHistory = exports.getAutoTransferRuleById = exports.getAutoTransferRules = exports.clearRuleUpdateLocalData = exports.updateRuleLocalData = exports.fetchAutoTransferReviewDetail = exports.fetchAutoTransferRuleHistory = exports.deleteAutoTransferRule = exports.updateAutoTransferRule = exports.createAutoTransferRule = exports.fetchAutoTransferRules = exports.getTreasuryTaxLetters = exports.fetchTreasuryTaxLetterList = exports.getTreasuryStatements = exports.fetchTreasuryStatementList = exports.getTreasuryTransferMoney = exports.clearTreasuryTransferMoney = exports.updateTreasuryTransferMoneyLocalData = exports.executeTreasuryTransferMoney = void 0;
79
79
  const allowedValue_1 = require("./commonStateTypes/allowedValue");
80
80
  Object.defineProperty(exports, "isAllowedValueWithCode", { enumerable: true, get: function () { return allowedValue_1.isAllowedValueWithCode; } });
81
81
  Object.defineProperty(exports, "isAllowedValueWithID", { enumerable: true, get: function () { return allowedValue_1.isAllowedValueWithID; } });
@@ -1227,6 +1227,7 @@ Object.defineProperty(exports, "fetchEntityRecommendationsForLineUpdate", { enum
1227
1227
  Object.defineProperty(exports, "fetchRecommendationByEntityId", { enumerable: true, get: function () { return recommendationReducer_1.fetchRecommendationByEntityId; } });
1228
1228
  Object.defineProperty(exports, "fetchRecommendationByEntityName", { enumerable: true, get: function () { return recommendationReducer_1.fetchRecommendationByEntityName; } });
1229
1229
  const referralReducer_1 = require("./view/referralView/referralReducer");
1230
+ Object.defineProperty(exports, "DEFAULT_REFERRER_AMOUNT", { enumerable: true, get: function () { return referralReducer_1.DEFAULT_REFERRER_AMOUNT; } });
1230
1231
  Object.defineProperty(exports, "clearReferrals", { enumerable: true, get: function () { return referralReducer_1.clearReferrals; } });
1231
1232
  Object.defineProperty(exports, "fetchReferrals", { enumerable: true, get: function () { return referralReducer_1.fetchReferrals; } });
1232
1233
  Object.defineProperty(exports, "fetchRewardsPlan", { enumerable: true, get: function () { return referralReducer_1.fetchRewardsPlan; } });
@@ -0,0 +1,11 @@
1
+ import { AccountState } from '../../../entity/account/accountState';
2
+ import { AccountMappingState } from '../accountMappingState';
3
+ import { AccountMappingView } from '../accountMappingViewSelector';
4
+ declare const accountMappingState: AccountMappingState;
5
+ declare const accountMappingViewMock: AccountMappingView;
6
+ declare const accountStateForMapping: AccountState;
7
+ declare const accountMappingStateRecommendationInProgress: AccountMappingState;
8
+ declare const accountMappingStateAccountListInProgress: AccountMappingState;
9
+ declare const accountMappingStateAccountListComplete: AccountMappingState;
10
+ declare const accountMappingStateRecommendationComplete: AccountMappingState;
11
+ export { accountMappingViewMock, accountMappingState, accountStateForMapping, accountMappingStateRecommendationInProgress, accountMappingStateAccountListInProgress, accountMappingStateRecommendationComplete, accountMappingStateAccountListComplete, };