@zeniai/client-epic-state 4.19.53-betaAR1 → 4.19.53
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.
- package/lib/entity/account/accountSelector.d.ts +0 -18
- package/lib/entity/account/accountSelector.js +1 -31
- package/lib/entity/account/accountState.d.ts +0 -5
- package/lib/entity/account/accountState.js +4 -11
- package/lib/entity/class/classSelector.d.ts +0 -5
- package/lib/entity/class/classSelector.js +0 -8
- package/lib/esm/entity/account/accountSelector.js +1 -29
- package/lib/esm/entity/account/accountState.js +1 -7
- package/lib/esm/entity/class/classSelector.js +0 -7
- package/lib/esm/index.js +6 -7
- package/lib/esm/view/expenseAutomationView/reducers/transactionsViewReducer.js +1 -11
- package/lib/esm/view/expenseAutomationView/selectors/transactionCategorizationSelector.js +8 -57
- package/lib/esm/view/spendManagement/spendManagementFilterHelpers.js +15 -198
- package/lib/index.d.ts +9 -9
- package/lib/index.js +30 -37
- package/lib/tsconfig.typecheck.tsbuildinfo +1 -1
- package/lib/view/expenseAutomationView/reducers/transactionsViewReducer.d.ts +1 -5
- package/lib/view/expenseAutomationView/reducers/transactionsViewReducer.js +2 -12
- package/lib/view/expenseAutomationView/selectors/transactionCategorizationSelector.d.ts +1 -4
- package/lib/view/expenseAutomationView/selectors/transactionCategorizationSelector.js +8 -59
- package/lib/view/expenseAutomationView/types/transactionsViewState.d.ts +0 -2
- package/lib/view/spendManagement/spendManagementFilterHelpers.d.ts +4 -45
- package/lib/view/spendManagement/spendManagementFilterHelpers.js +16 -199
- package/package.json +1 -1
|
@@ -7,81 +7,28 @@ import { ALL_BILL_TABS, getBillListKey, } from './billPay/billList/billListState
|
|
|
7
7
|
import { getActualPaymentDate } from './helpers';
|
|
8
8
|
import { getApproversOrRejectors as getApproversOrRejectorsForReimbursement, } from './reimbursement/remiListView/remiListSelector';
|
|
9
9
|
import { ALL_REMI_TABS, getRemiListKey, } from './reimbursement/remiListView/remiListState';
|
|
10
|
-
export const TRANSACTION_FILTER_CATEGORIES = [
|
|
11
|
-
{ value: 'payment_account_name', type: 'dropdown' },
|
|
12
|
-
{ value: 'payment_account_type', type: 'dropdown' },
|
|
13
|
-
{ value: 'payee', type: 'searchAutocomplete' },
|
|
14
|
-
{ value: 'category', type: 'dropdown' },
|
|
15
|
-
{ value: 'class', type: 'dropdown' },
|
|
16
|
-
{ value: 'amount', type: 'numberRange' },
|
|
17
|
-
];
|
|
18
10
|
//filters items against filter values representing a range. ex: date (from-to), amount(1k<-->5k)
|
|
19
|
-
// For amount: supports new transaction_categorization operators (inBetween, lessThan, greaterThan) and
|
|
20
|
-
// backward compatibility for old format values: ["1000<->5000"] with matchingOperator "equal".
|
|
21
|
-
// Other entities (bill_pay, reimbursement, etc.) use only equal/not-equal and are unchanged.
|
|
22
11
|
const filterItemOnRangeCategoryType = (valueForItem, currentFilter) => {
|
|
23
12
|
let doesItemFallInValueRange = false;
|
|
24
13
|
const filterField = currentFilter.field;
|
|
25
14
|
if (filterField === 'amount') {
|
|
26
|
-
const
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
const min = Number(values[0]);
|
|
33
|
-
const max = Number(values[1]);
|
|
34
|
-
doesItemFallInValueRange = currentValue >= min && currentValue <= max;
|
|
35
|
-
}
|
|
36
|
-
}
|
|
37
|
-
else if (op === 'lessThan') {
|
|
38
|
-
if (values.length >= 1) {
|
|
39
|
-
const threshold = Number(values[0]);
|
|
40
|
-
doesItemFallInValueRange = currentValue < threshold;
|
|
41
|
-
}
|
|
42
|
-
}
|
|
43
|
-
else if (op === 'greaterThan') {
|
|
44
|
-
if (values.length >= 1) {
|
|
45
|
-
const threshold = Number(values[0]);
|
|
46
|
-
doesItemFallInValueRange = currentValue > threshold;
|
|
47
|
-
}
|
|
48
|
-
}
|
|
49
|
-
else if (op === 'equal' &&
|
|
50
|
-
values.length === 1 &&
|
|
51
|
-
String(values[0]).includes('<->')) {
|
|
52
|
-
// Backward compatibility: old format ["1000<->5000"] with matchingOperator "equal"
|
|
53
|
-
const parts = String(values[0]).split('<->');
|
|
54
|
-
const lowerValue = Number(parts[0] ?? '');
|
|
55
|
-
const higherValue = Number(parts[1] ?? '');
|
|
56
|
-
doesItemFallInValueRange =
|
|
57
|
-
currentValue >= lowerValue && currentValue <= higherValue;
|
|
58
|
-
}
|
|
59
|
-
else if (op === 'equal' && values.length === 1) {
|
|
60
|
-
// New format: exact match on single value (expense automation)
|
|
61
|
-
const val = Number(values[0]);
|
|
62
|
-
doesItemFallInValueRange = currentValue === val;
|
|
63
|
-
}
|
|
64
|
-
else {
|
|
65
|
-
// Existing logic for equal/not-equal (bill_pay, reimbursement, etc. or multiple range values)
|
|
66
|
-
for (const filterValue of values) {
|
|
67
|
-
const lowerValue = Number.parseInt(filterValue?.toString()?.split('<->')[0] ?? '', 10);
|
|
68
|
-
const higherValue = Number.parseInt(filterValue?.toString()?.split('<->')[1] ?? '', 10);
|
|
69
|
-
if (currentValue >= lowerValue && currentValue <= higherValue) {
|
|
70
|
-
doesItemFallInValueRange = true;
|
|
71
|
-
}
|
|
15
|
+
for (const filterValue of currentFilter.values) {
|
|
16
|
+
const currentValue = parseInt(valueForItem.toString());
|
|
17
|
+
const lowerValue = parseInt(filterValue?.toString()?.split('<->')[0] ?? '');
|
|
18
|
+
const higherValue = parseInt(filterValue?.toString()?.split('<->')[1] ?? '');
|
|
19
|
+
if (currentValue >= lowerValue && currentValue <= higherValue) {
|
|
20
|
+
doesItemFallInValueRange = true;
|
|
72
21
|
}
|
|
73
22
|
}
|
|
74
|
-
return op === 'not-equal'
|
|
75
|
-
? !doesItemFallInValueRange
|
|
76
|
-
: doesItemFallInValueRange;
|
|
77
23
|
}
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
24
|
+
else {
|
|
25
|
+
const currentValue = valueForItem;
|
|
26
|
+
const lowerValue = currentFilter.values[0];
|
|
27
|
+
const higherValue = currentFilter.values[1];
|
|
28
|
+
if (currentValue.isSameOrAfter(lowerValue) &&
|
|
29
|
+
currentValue.isSameOrBefore(higherValue)) {
|
|
30
|
+
doesItemFallInValueRange = true;
|
|
31
|
+
}
|
|
85
32
|
}
|
|
86
33
|
return currentFilter.matchingOperator === 'equal'
|
|
87
34
|
? doesItemFallInValueRange
|
|
@@ -166,11 +113,7 @@ export const applyAdvancedFiltersOnList = (entity, allItems, filters, filteredIt
|
|
|
166
113
|
? getCategoryValueForReimbursement(key, item)
|
|
167
114
|
: entity === 'task_management'
|
|
168
115
|
? getCategoryValueForTaskList(key, item)
|
|
169
|
-
:
|
|
170
|
-
? getCategoryValueForTransaction(key, item)
|
|
171
|
-
: entity === 'charge_card_payment_history'
|
|
172
|
-
? getCategoryValueForPaymentHistory(key, item)
|
|
173
|
-
: undefined;
|
|
116
|
+
: getCategoryValueForPaymentHistory(key, item);
|
|
174
117
|
if (categoryValue == null) {
|
|
175
118
|
if (currentFilter.matchingOperator === 'not-equal') {
|
|
176
119
|
return true;
|
|
@@ -291,132 +234,6 @@ const getCategoryValueForReimbursement = (key, reimbursement) => {
|
|
|
291
234
|
return undefined;
|
|
292
235
|
}
|
|
293
236
|
};
|
|
294
|
-
const getCategoryValueForTransaction = (key, transaction) => {
|
|
295
|
-
switch (key) {
|
|
296
|
-
case 'amount': {
|
|
297
|
-
// Get from transactionLocalData line items (preferred) - sum all line item amounts
|
|
298
|
-
const localDataForAmount = transaction.transactionLocalData?.transactionReviewLocalData;
|
|
299
|
-
if (localDataForAmount?.lineItemById) {
|
|
300
|
-
const lineItems = Object.values(localDataForAmount.lineItemById);
|
|
301
|
-
if (lineItems.length > 0) {
|
|
302
|
-
// Sum all line item amounts
|
|
303
|
-
const totalAmount = lineItems.reduce((sum, lineItem) => sum + (lineItem.amount?.amount ?? 0), 0);
|
|
304
|
-
return totalAmount;
|
|
305
|
-
}
|
|
306
|
-
}
|
|
307
|
-
// Fallback to transaction-level amount or sum from transaction lines
|
|
308
|
-
if (transaction.transaction.lines &&
|
|
309
|
-
transaction.transaction.lines.length > 0) {
|
|
310
|
-
const totalAmount = transaction.transaction.lines.reduce((sum, line) => sum + (line.amount?.amount ?? 0), 0);
|
|
311
|
-
return totalAmount;
|
|
312
|
-
}
|
|
313
|
-
// Final fallback to transaction amount
|
|
314
|
-
return transaction.amount.amount;
|
|
315
|
-
}
|
|
316
|
-
case 'payee': {
|
|
317
|
-
// Priority: vendorName > customerName > from transactionLocalData
|
|
318
|
-
if (transaction.vendorName) {
|
|
319
|
-
return transaction.vendorName;
|
|
320
|
-
}
|
|
321
|
-
if (transaction.customerName) {
|
|
322
|
-
return transaction.customerName;
|
|
323
|
-
}
|
|
324
|
-
// Check transactionLocalData for vendor/customer
|
|
325
|
-
const localData = transaction.transactionLocalData?.transactionReviewLocalData;
|
|
326
|
-
if (localData?.vendor?.name) {
|
|
327
|
-
return localData.vendor.name;
|
|
328
|
-
}
|
|
329
|
-
if (localData?.customer?.name) {
|
|
330
|
-
return localData.customer.name;
|
|
331
|
-
}
|
|
332
|
-
return undefined;
|
|
333
|
-
}
|
|
334
|
-
case 'payment_account_name': {
|
|
335
|
-
// Get from transaction.account or from lines
|
|
336
|
-
if (transaction.transaction.account?.accountName) {
|
|
337
|
-
return transaction.transaction.account.accountName;
|
|
338
|
-
}
|
|
339
|
-
// Get from first line's account
|
|
340
|
-
const firstLine = transaction.transaction.lines?.[0];
|
|
341
|
-
if (firstLine?.type === 'transaction_with_account_and_class_line' ||
|
|
342
|
-
firstLine?.type === 'transaction_with_product_or_service_line' ||
|
|
343
|
-
firstLine?.type === 'journal_entry_transaction_line') {
|
|
344
|
-
const accountLine = firstLine;
|
|
345
|
-
return accountLine.account?.accountName;
|
|
346
|
-
}
|
|
347
|
-
return undefined;
|
|
348
|
-
}
|
|
349
|
-
case 'payment_account_type': {
|
|
350
|
-
// Similar to payment_account_name but for type
|
|
351
|
-
if (transaction.transaction.account?.accountType) {
|
|
352
|
-
return transaction.transaction.account.accountType;
|
|
353
|
-
}
|
|
354
|
-
const firstLineForType = transaction.transaction.lines?.[0];
|
|
355
|
-
if (firstLineForType?.type === 'transaction_with_account_and_class_line' ||
|
|
356
|
-
firstLineForType?.type === 'transaction_with_product_or_service_line' ||
|
|
357
|
-
firstLineForType?.type === 'journal_entry_transaction_line') {
|
|
358
|
-
const accountLineForType = firstLineForType;
|
|
359
|
-
return accountLineForType.account?.accountType;
|
|
360
|
-
}
|
|
361
|
-
return undefined;
|
|
362
|
-
}
|
|
363
|
-
case 'category': {
|
|
364
|
-
// Get from transactionLocalData (preferred) or from transaction lines
|
|
365
|
-
const localDataForCategory = transaction.transactionLocalData?.transactionReviewLocalData;
|
|
366
|
-
if (localDataForCategory) {
|
|
367
|
-
// Get category from first line item or most common
|
|
368
|
-
const firstLineItem = Object.values(localDataForCategory.lineItemById)[0];
|
|
369
|
-
if (firstLineItem?.account?.accountId) {
|
|
370
|
-
return firstLineItem.account.accountId;
|
|
371
|
-
}
|
|
372
|
-
if (firstLineItem?.account?.qboId) {
|
|
373
|
-
return firstLineItem.account.qboId;
|
|
374
|
-
}
|
|
375
|
-
if (firstLineItem?.account?.accountName) {
|
|
376
|
-
return firstLineItem.account.accountName;
|
|
377
|
-
}
|
|
378
|
-
}
|
|
379
|
-
// Fallback to transaction lines
|
|
380
|
-
const firstLineForCategory = transaction.transaction.lines?.[0];
|
|
381
|
-
if (firstLineForCategory?.type ===
|
|
382
|
-
'transaction_with_account_and_class_line' ||
|
|
383
|
-
firstLineForCategory?.type ===
|
|
384
|
-
'transaction_with_product_or_service_line' ||
|
|
385
|
-
firstLineForCategory?.type === 'journal_entry_transaction_line') {
|
|
386
|
-
const account = firstLineForCategory.account;
|
|
387
|
-
return account?.accountId ?? account?.qboId ?? account?.accountName;
|
|
388
|
-
}
|
|
389
|
-
return undefined;
|
|
390
|
-
}
|
|
391
|
-
case 'class': {
|
|
392
|
-
// Similar to category but for class
|
|
393
|
-
const localDataForClass = transaction.transactionLocalData?.transactionReviewLocalData;
|
|
394
|
-
if (localDataForClass) {
|
|
395
|
-
const firstLineItemForClass = Object.values(localDataForClass.lineItemById)[0];
|
|
396
|
-
if (firstLineItemForClass?.class?.classId) {
|
|
397
|
-
return firstLineItemForClass.class.classId;
|
|
398
|
-
}
|
|
399
|
-
if (firstLineItemForClass?.class?.qboId) {
|
|
400
|
-
return firstLineItemForClass.class.qboId;
|
|
401
|
-
}
|
|
402
|
-
if (firstLineItemForClass?.class?.className) {
|
|
403
|
-
return firstLineItemForClass.class.className;
|
|
404
|
-
}
|
|
405
|
-
}
|
|
406
|
-
const firstLineForClass = transaction.transaction.lines?.[0];
|
|
407
|
-
if (firstLineForClass?.type === 'transaction_with_account_and_class_line' ||
|
|
408
|
-
firstLineForClass?.type ===
|
|
409
|
-
'transaction_with_product_or_service_line' ||
|
|
410
|
-
firstLineForClass?.type === 'journal_entry_transaction_line') {
|
|
411
|
-
const classData = firstLineForClass.class;
|
|
412
|
-
return classData?.classId ?? classData?.qboId ?? classData?.className;
|
|
413
|
-
}
|
|
414
|
-
return undefined;
|
|
415
|
-
}
|
|
416
|
-
default:
|
|
417
|
-
return undefined;
|
|
418
|
-
}
|
|
419
|
-
};
|
|
420
237
|
const getCategoryValueForPaymentHistory = (key, repayment) => {
|
|
421
238
|
switch (key) {
|
|
422
239
|
case 'repaymentDate':
|
package/lib/index.d.ts
CHANGED
|
@@ -37,8 +37,8 @@ import { AgingDateSelectionType, AgingDetailReportInvoice, AgingDetailReportUISt
|
|
|
37
37
|
import { isAgingReport, isCashFlowOrBalanceSheetReport, isDashboardClassesViewReport, isDashboardReport, isFluxAnalysisOpExReport, isOpExByVendorReport, isPAndLClassesViewReport, isPAndLReport } from './commonStateTypes/viewAndReport/reportIDHelper';
|
|
38
38
|
import { PageToken, Report, ReportFormat, ReportID, ReportIDPlusForecastID, SelectorReport, SelectorView, View, toReportFormatStrict, toReportID } from './commonStateTypes/viewAndReport/viewAndReport';
|
|
39
39
|
import { PAYMENT_BUSINESS_DAYS, filterDays, getNextNthWorkingDay, getPreviousNthWorkingDay, getYearsList, holidaysFormatted, isHoliday, isHolidayToday } from './commonStateTypes/workingDayHelper';
|
|
40
|
-
import { AccountReport, AccountWithBalanceReport
|
|
41
|
-
import { Account, AccountBase,
|
|
40
|
+
import { AccountReport, AccountWithBalanceReport } from './entity/account/accountSelector';
|
|
41
|
+
import { Account, AccountBase, AccountType, RecommendedAccountBase, ReconciliationAccountSourceType, StatementCloseDay, toAccountType, toReconciliationAccountSource } from './entity/account/accountState';
|
|
42
42
|
import { NestedAccountReport } from './entity/account/subAccountSelector';
|
|
43
43
|
import { AccountGroupReport } from './entity/accountGroup/accountGroupSelector';
|
|
44
44
|
import { AccountGroup, AccountGroupKey, AccountGroupType, getAccountGroupKey, toAccountGroupType } from './entity/accountGroup/accountGroupState';
|
|
@@ -266,7 +266,7 @@ import { clearExpenseAutomationFluxAnalysisView, fetchFluxAnalysisView, reviewFl
|
|
|
266
266
|
import { clearJeScheduleLocalData as clearExpenseAutomationJEScheduleLocalData, clearExpenseAutomationJESchedulesView, fetchJeSchedulesPage as fetchExpenseAutomationJESchedulesPage, ignoreRecommendedJeSchedule as ignoreExpenseAutomationJESchedule, initializeAccountSettingsView as initializeJeAccountSettingsView, initializeJeScheduleLocalData, removeJeScheduleTransactionKey, retryJeSchedule as retryExpenseAutomationJESchedule, saveAccountSettings as saveJeAccountSettings, saveAccountSettingsLocalData as saveJeAccountSettingsLocalData, updateJeScheduleLocalDataById, updateJeScheduleTransactionKeys } from './view/expenseAutomationView/reducers/jeSchedulesViewReducer';
|
|
267
267
|
import { fetchMissingReceipts as fetchExpenseAutomationMissingReceipts, markMissingReceiptAsDone as markExpenseAutomationMissingReceiptAsDone, updateMissingReceiptUploadState as updateExpenseAutomationMissingReceiptUploadState, updateMissingReceiptsUIState as updateExpenseAutomationMissingReceiptsUIState, uploadMissingReceiptSuccess as uploadExpenseAutomationMissingReceiptSuccess } from './view/expenseAutomationView/reducers/missingReceiptsViewReducer';
|
|
268
268
|
import { deleteAccountStatement, fetchReconciliation as fetchReconciliationView, saveReconciliationDetail as saveExpenseAutomationReconciliationDetail, saveReconciliationReview as saveExpenseAutomationReconciliationReview, setConnectionInProgressForAccount as setConnectionInProgressForAccountReconciliation, setStatementParseInProgress, updateAccountReconciliationLocalData as updateExpenseAutomationAccountReconciliationLocalData, updateSelectedAccountId as updateExpenseAutomationAccountReconciliationSelectedAccountId, updateSelectedTab as updateExpenseAutomationAccountReconciliationSelectedTab, updateReconListScrollPosition as updateExpenseAutomationReconListScrollPosition, updateReviewTabSortState as updateExpenseAutomationReconReviewTabListSortState, updateReviewTabLocalData as updateExpenseAutomationReconReviewTabLocalData, updateReconcileTabListScrollState as updateExpenseAutomationReconcileTabListScrollState, updateReconcileTabListSortState as updateExpenseAutomationReconcileTabListSortState, updateReconcileTabLocalData as updateExpenseAutomationReconcileTabLocalData, updateSelectedDrawerAccountId as updateExpenseAutomationSelectedDrawerAccountId, updateStatementUploadChosen, uploadAccountStatement } from './view/expenseAutomationView/reducers/reconciliationViewReducer';
|
|
269
|
-
import { backgroundRefetchReviewTab, clearExpenseAutomationTransactionsView, fetchTransactionCategorization, fetchTransactionCategorizationFailure, fetchTransactionCategorizationView, initializeTransactionCategorizationViewLocalData, markTransactionAsNotMiscategorized, saveTransactionCategorization, saveTransactionCategorizationLocalData, setAllItemsToCategoryClassInLocalDataForCategorization, setEntityRecommendationForLineIdsForCategorization, syncTransactionCategorizationFromDetailSave, updateCurrentSelectedTransactionCategorizationTab, updateSelectedCheckboxTransactionIds, updateSelectedCustomerForTransaction, updateSelectedTransactionId, updateSelectedVendorForTransaction, updateTransactionCategorization, updateTransactionCategorizationSaveStatus, updateTransactionCategorizationUIState
|
|
269
|
+
import { backgroundRefetchReviewTab, clearExpenseAutomationTransactionsView, fetchTransactionCategorization, fetchTransactionCategorizationFailure, fetchTransactionCategorizationView, initializeTransactionCategorizationViewLocalData, markTransactionAsNotMiscategorized, saveTransactionCategorization, saveTransactionCategorizationLocalData, setAllItemsToCategoryClassInLocalDataForCategorization, setEntityRecommendationForLineIdsForCategorization, syncTransactionCategorizationFromDetailSave, updateCurrentSelectedTransactionCategorizationTab, updateSelectedCheckboxTransactionIds, updateSelectedCustomerForTransaction, updateSelectedTransactionId, updateSelectedVendorForTransaction, updateTransactionCategorization, updateTransactionCategorizationSaveStatus, updateTransactionCategorizationUIState } from './view/expenseAutomationView/reducers/transactionsViewReducer';
|
|
270
270
|
import { ExpenseAutomationStepDetails, ExpenseAutomationViewSelector } from './view/expenseAutomationView/selectorTypes/expenseAutomationViewSelectorTypes';
|
|
271
271
|
import { ExpenseAutomationFluxAnalysisViewSelector, FluxAnalysisOperatingExpenseView, FluxAnalysisSectionType, FluxAnalysisVendorView, FluxAnalysisViewSectionReport, FluxVendorAccountsAndClassesView } from './view/expenseAutomationView/selectorTypes/fluxAnalysisViewSelectorTypes';
|
|
272
272
|
import { JEAccountSettingsView } from './view/expenseAutomationView/selectorTypes/jeAccountSettingsViewSelectorTypes';
|
|
@@ -482,7 +482,7 @@ import { RemiBusinessVerificationDetails, RemiSetupView, getRemiBusinessVerifica
|
|
|
482
482
|
import { MileageDenomination, MileageDetailsLocalData, RemiSetupViewLocalData, RemiSetupViewState } from './view/spendManagement/reimbursement/remiSetupView/remiSetupViewState';
|
|
483
483
|
import { approveOrRejectRemisBulkAction, autoReviewPendingApprovalRemis, cancelOrDeleteRemisBulkAction, clearAllRemisFromBulkActionList, clearRemiBulkActionView, incrementRemiBulkActionProcessedCount, removeRemiFromBulkActionList, reviewDraftRemisBulkAction, submitDraftRemisBulkAction, updateRemisBulkActionList } from './view/spendManagement/reimbursement/remisBulkActionView/remisBulkActionViewReducer';
|
|
484
484
|
import { RemisBulkReviewView, getRemisBulkOperationProgress, getRemisBulkReviewView } from './view/spendManagement/reimbursement/remisBulkActionView/remisBulkActionViewSelector';
|
|
485
|
-
import { BillPayFilterCategoryDropdownOption, CategoryCombinationOperator, FilterCategoryType, MatchingOperatorDropdownOption, ReimbursementFilterCategoryDropdownOption, SpendManagementFilterCategoryDropdownOption, SpendManagementFilterEntityType, SpendManagementFiltersType, TaskFilterCategoryDropdownOption,
|
|
485
|
+
import { BillPayFilterCategoryDropdownOption, CategoryCombinationOperator, FilterCategoryType, MatchingOperatorDropdownOption, ReimbursementFilterCategoryDropdownOption, SpendManagementFilterCategoryDropdownOption, SpendManagementFilterEntityType, SpendManagementFiltersType, TaskFilterCategoryDropdownOption, hideCreatedByFilter } from './view/spendManagement/spendManagementFilterHelpers';
|
|
486
486
|
import { acceptTreasuryTerms, clearTreasurySetupView, fetchPortfolioAllocation, fetchTreasuryFunds, fetchTreasurySetupView, updateFundAllocationLocalData, updatePortfolioAllocation, updateTreasuryVideoViewed } from './view/spendManagement/treasury/treasurySetUp/treasurySetupViewReducer';
|
|
487
487
|
import { TreasuryBusinessVerificationDetails, TreasurySetupView, getTreasuryBusinessVerificationDetails, getTreasurySetupViewDetails } from './view/spendManagement/treasury/treasurySetUp/treasurySetupViewSelector';
|
|
488
488
|
import { FundAllocationOption, FundComposition, FundData, getTreasuryFundsMaximumYield } from './view/spendManagement/treasury/treasurySetUp/treasurySetupViewState';
|
|
@@ -622,16 +622,16 @@ export { fetchMonthEndCloseChecks, fetchMonthClosePerformanceTrend, MonthClosePe
|
|
|
622
622
|
export { ExpenseAutomationViewSelector, ExpenseAutomationStepDetails, ExpenseAutomationViewType, ExpenseAutomationMissingReceiptsViewSelector, ExpenseAutomationFluxAnalysisViewSelector, FluxAnalysisVendorView, FluxAnalysisViewSectionReport, FluxVendorAccountsAndClassesView, ExpenseAutomationMissingReceiptsViewUIState, ExpenseAutomationMissingReceiptsViewState, ExpenseAutomationViewState, ExpenseAutomationTransactionsTab, ExpenseAutomationMissingReceiptsSortKey, getExpenseAutomationView, toExpenseAutomationMissingReceiptsSortKey, toExpenseAutomationTransactionsTabKey, toExpenseAutomationViewType, uploadExpenseAutomationMissingReceiptSuccess, markExpenseAutomationMissingReceiptAsDone, fetchAllExpenseAutomationTabs, refreshExpenseAutomationCurrentTab, updateCurrentSelectedTransactionCategorizationTab, fetchExpenseAutomationMissingReceipts, fetchFluxAnalysisView, clearExpenseAutomationFluxAnalysisView, updateOperatingExpensesIdsForReview as updateFluxOperatingExpensesIdsForReview, updateSelectedSectionIdsForReview as updateFluxAnalysisSelectedSectionIdsForReview, reviewFluxAnalysisView, updateExpenseAutomationMissingReceiptUploadState, updateExpenseAutomationMissingReceiptsUIState, FluxAnalysisOperatingExpenseView, FluxAnalysisSectionType, getExpenseAutomationFluxAnalysisView, FluxAnalysisSortKey, FluxAnalysisActionType, FluxBalancesByMonth, updateCurrentSelectedView, updateCurrentSelectedPeriod, getExpenseAutomationTransactionView, ReconReconcileSortKey, ReconciliationReconcileTabLocalData, FluxAnalysisReviewStatus, updateFluxAnalysisViewUIState, FluxAnalysisViewUIState, updateFluxAnalysisViewPageMetaData, MAX_SELECTION_LIMIT, checkIfAllLineItemsAreCategoryClassFilled, getLineItemsByTransactionIdsFromLocalData, isAnyItemWithUncategorizedExpenseAccount, SaveExpenseAutomationReconciliationActionType, saveExpenseAutomationReconciliationDetail, updateExpenseAutomationReconcileTabListScrollState, updateExpenseAutomationReconReviewTabListSortState, updateExpenseAutomationReconcileTabListSortState, updateExpenseAutomationReconcileTabLocalData, updateExpenseAutomationAccountReconciliationSelectedTab, updateExpenseAutomationAccountReconciliationSelectedAccountId, ExpenseAutomationReconciliationViewSelector, getExpenseAutomationReconciliationView, AccountReconciliationBySection, fetchReconciliationView, uploadAccountStatementIntoDocumentAI, UploadStatementDocumentAIResponse, updateExpenseAutomationReconListScrollPosition, setConnectionInProgressForAccountReconciliation, AccountReconciliationByAccount, AccountReconciliationEntity, getAccountReconByAccountIdAndSelectedPeriod, ExpenseAutomationReconciliationViewTab, toReconciliationTabsType, isAccountReconReport, ReconReviewSortKey, AccountReconSectionID, ReconciliationReviewTabLocalData, TransactionsToReview, RecommendedActionCodeType, ReconciliationStatusCodeType, BalanceDataStatusCodeType, updateExpenseAutomationReconReviewTabLocalData, updateExpenseAutomationSelectedDrawerAccountId, saveExpenseAutomationReconciliationReview, updateExpenseAutomationAccountReconciliationLocalData, BankStatusCodeType, ReconciliationAccountSourceType, toReconciliationAccountSource, StatementStatusCodeType, AccountReconciliationLocalData, StatementDataStatusCodeType, deleteAccountStatement, uploadAccountStatement, UploadStatementDocumentAIPayload, updateStatementUploadChosen, isReviewTransactionBankTransferType, isReviewTransactionBillPaymentType, isReviewTransactionCreditCardPaymentType, isReviewTransactionDepositType, isReviewTransactionExpenseType, isReviewTransactionCreditCardCreditType, setStatementParseInProgress, };
|
|
623
623
|
export { JEScheduleLocalData };
|
|
624
624
|
export { ExpenseAutomationJESchedulesViewSelector, JEAccountSettingsView, JEScheduledTransactionWithFailedEntries, };
|
|
625
|
-
export { fetchTransactionCategorization, fetchTransactionCategorizationView, updateTransactionCategorizationUIState,
|
|
625
|
+
export { fetchTransactionCategorization, fetchTransactionCategorizationView, updateTransactionCategorizationUIState, updateSelectedCheckboxTransactionIds, setEntityRecommendationForLineIdsForCategorization, initializeTransactionCategorizationViewLocalData, setAllItemsToCategoryClassInLocalDataForCategorization, saveTransactionCategorizationLocalData, fetchTransactionCategorizationFailure, saveTransactionCategorization, updateTransactionCategorization, updateTransactionCategorizationSaveStatus, markTransactionAsNotMiscategorized, updateSelectedVendorForTransaction, updateSelectedCustomerForTransaction, updateSelectedTransactionId, syncTransactionCategorizationFromDetailSave, backgroundRefetchReviewTab, clearExpenseAutomationTransactionsView, TransactionsSortKey, toTransactionsSortKey, TransactionsTab, TransactionCategorizationLineItemData, TransactionReviewLocalData, SupportedTransactionCategorization, ExpenseAutomationTransactionsViewState, ExpenseAutomationTransactionsViewUIState, ExpenseAutomationTransactionViewSelector, TransactionReviewLocalDataSelectorView, };
|
|
626
626
|
export { TopExpense, TopExTimePeriod, TOP_EX_TIME_PERIODS };
|
|
627
627
|
export { TimeframeTick, TimeframeTickWithMetaData, toTimeframeTick, mapTimePeriodtoTimeframeTick, toTimePeriod, toAbsoluteDay, toMonthYearPeriodId, convertToPeriod, MonthYearPeriod, };
|
|
628
628
|
export { VendorSpendTrendFilterTabType, toVendorSpendTrendFilterTabsTypeStrict, } from './entity/vendorExpense/vendorExpenseSelector';
|
|
629
629
|
export { getNumberOfPeriods };
|
|
630
630
|
export { SCHEDULE_DAYS_OF_MONTH, ScheduleDaysOfMonth, toScheduleDaysOfMonth, Day, Month, toMonth, toMonthStrict, Quarter, toQuarter, toQuarterStrict, AbsoluteDay, TimePeriod, };
|
|
631
631
|
export { Tenant, TenantView, LoggedInUser, TenantBaseView, CurrentTenant, TenantProductSettings, getTenantBaseById, getCurrentTenant, getTenantsByCheckInDateSelector, getTenantsBaseByCheckInDateSelector, getTenantsCoreDetailsByCheckInDateSelector, toTenantCoreDetailsView, getTenantBaseViewForTenantView, getTenantBaseViewForTenantId, isZeniDomainTenant, isTenantUsingZeniCOA, TenantsBaseOrdered, TenantsOrdered, TenantCoreDetailsView, fetchActiveTenant, fetchAllTenants, updateCurrentTenant, clearAll, doMagicLinkSignIn, verifyDeviceWithTwoFA, resendVerifyDeviceOTP, sendEmailMagicLinkToUser, doSignIn, updateSignInState, DoSignInPayload, doSignOut, resetSignInState, RoleResource, Connection, fetchExcludedResourcesForTenant, fetchExternalConnectionsForTenant, saveExternalConnectionForTenant, fetchSubscriptionSummaryForTenant, isTenantBankingOnly, isTenantCardsOnly, isTenantBookkeepingEnabled, isOtherProductsEnabledForTenant, };
|
|
632
|
-
export { Account,
|
|
632
|
+
export { Account, AccountType, AccountBase, StatementCloseDay, toAccountType, AccountReport, NestedAccountReport, AccountWithBalanceReport, AccountGroup, AccountGroupReportV2, AccountGroupType, toAccountGroupType, AccountGroupReport, getAccountGroupKey, AccountGroupKey, RecommendedAccountBase, };
|
|
633
633
|
export { Class, ClassBase, RecommendedClassBase, } from './entity/class/classState';
|
|
634
|
-
export {
|
|
634
|
+
export { getClassById } from './entity/class/classSelector';
|
|
635
635
|
export { ClassReport } from './entity/class/classSelectorTypes';
|
|
636
636
|
export type { Forecast, ForecastType, toForecastType, } from './entity/forecast/forecastState';
|
|
637
637
|
export { getForecast };
|
|
@@ -700,7 +700,7 @@ export { fetchIncomeTrend, fetchExpenseTrend, clearTrendData };
|
|
|
700
700
|
export { getTrendForEntity, TrendView, getCurrentFiscalQuarterDateRange };
|
|
701
701
|
export { CustomerIncomeTrend };
|
|
702
702
|
export { VendorExpenseTrend, VendorExpenseState, VendorSpend };
|
|
703
|
-
export { Entity, toEntityType, TransactionEntityType
|
|
703
|
+
export { Entity, toEntityType, TransactionEntityType };
|
|
704
704
|
export { fetchEntityAutoCompleteEpic };
|
|
705
705
|
export { clearEntityAutoCompleteResults, clearAllEntityAutoCompleteResults, fetchEntityAutoCompleteResults, };
|
|
706
706
|
export { EntityAutoCompleteView, getEntityAutoCompleteResults };
|
|
@@ -752,7 +752,7 @@ export { BillTransaction, BillPayInfo, BillStage, BillStageCodeType, BillTransac
|
|
|
752
752
|
export { MilageReimbursementLine, OutofPocketReimbursementLine, ReimbursementLine, ReimbursementTypeCode, Reimbursement, RemiTabType, toRemiSubTabType, toRemiSubTabTypeStrict, toRemiTabType, toRemiTabTypeStrict, toReimbursementTypeCode, RemiSubTabType, ReimbursementViewSortKey, RemiListUIState, RemiListReport, RemiListDownloadReport, ReimbursementView, ReimbursementFilters, ReimbursementFilterCategory, RemiListViewFilterCategoryField, getRemiList, getRemiDownloadList, fetchRemiList, fetchRemiListPerTab, updateRemiListTab, updateRemiListSubTab, updateRemiDetailSaveRemiCode, updateRemiListUIState, updateRemiListSearchResult, updateBillListFilterResult, updateRemiListFilterResult, REIMBURSEMENT_FILTER_CATEGORIES, REIMBURSEMENT_FILTER_CATEGORIES_RESTRICTED, updateRemiListDownloadUIState, updateBillListDownloadUIState, updateBillsBulkActionList, removeBillFromBulkActionList, clearAllBillsFromBulkActionList, getBillsBulkReviewView, BillsBulkReviewView, validateBillsBulkAction, approveOrRejectBillsBulkAction, cancelOrDeleteBillsBulkAction, submitDraftBillsBulkAction, autoReviewPendingApprovalBills, incrementBulkActionProcessedCount, getBillsBulkOperationProgress, BulkOperationProgress, clearBillPayBulkActionView, isBillConditionallyValid, getRemisBulkReviewView, RemisBulkReviewView, getRemisBulkOperationProgress, updateRemisBulkActionList, removeRemiFromBulkActionList, clearAllRemisFromBulkActionList, reviewDraftRemisBulkAction, approveOrRejectRemisBulkAction, cancelOrDeleteRemisBulkAction, submitDraftRemisBulkAction, autoReviewPendingApprovalRemis, clearRemiBulkActionView, incrementRemiBulkActionProcessedCount, RemiBulkSelectExceptionInfoType, OutsideZeniPaymentLocalData, updateOutsideZeniPaymentLocalData, discardOutsideZeniPaymentLocalData, checkIfCreatorIsApprover, };
|
|
753
753
|
export { AccountListSelectorView, ClassListSelectorView, getClassList, fetchClassList, };
|
|
754
754
|
export { BillTab, BillsSubTabType, SaveBillStageCode, BillPayReviewSelectorView, DuplicateBillsSelectorView, EditBillDetailSelectorView, LineItemRecommendationsLocalData, EditBillInitialDetails, BillableStatus, PaymentDetailsSection, BillListReport, BillListDownloadReport, WhatForSection, fetchBillList, fetchBillListPerTab, updateTab, updateSubTab, updateSelectedBillId, updateBillDetailSaveBillCode, fetchVendorByNameAndParseInvoice, saveBillUpdatesToLocalStore, discardBillUpdatesInLocalStore, saveBillDetail, approveOrRejectBill, updateApprovalStatusOnSuccess, deleteBill, cancelAndDeleteBill, retryOrRefundBill, getBillList, getBillDownloadList, BillDetailViewSelector, ActorActivityWithUser, BillActivity, StepWithStatus, getBillDetailView, checkApproveRejectBtnShowForBill, BillDetailView, getBillTransactionDetailKey, fetchBillDetail, fetchEditBillDetailPage, fetchAndUpdateVendorRecommendations, fetchDuplicateBill, clearBillPayReview, EditBillDetail, EditBillDetailViewState, getEditBillDetail, getReviewPageBillDetail, BillDetailLocalData, PaymentDetailsSectionView, fetchBillAndInitializeLocalStore, updateShowAutofill, saveVendorSuccessOrFailure, BillPaymentStatus, BillPaymentStatusCodeType, BillPaymentRefundStatus, BillPaymentRefundStatusCodeType, BillStatus, BillStatusCodeType, BillApprovalType, updateBillListUIState, BillListUIState, BillPayViewSortKey, BillPayFilters, BillPayFilterCategory, BillListViewFilterCategoryField, BILL_PAY_FILTER_CATEGORIES, updateVendorDetailLocalData, resetVendorDetailLocalData, resetVendorSaveStatus, updateContactsInVendorDetailLocalData, updateVendorTabDetailUIState, updateContactsInVendorTabDetailLocalData, updateBillUploadFetchState, updateBillListSearchResult, fetchUserDetails, verifyUser, updateVendorContact, PaymentToOption, toPaymentToOption, convertAmountToHomeCurrency, RecurringBillInstance, RecurringBillConfigLocalData, EditRecurringBillType, fetchVendorAndUpdateBillLocalData, markBillForRetry, updateWithdrawFromAccountId, removeBillFileFromLocalStore, replaceBillFileInLocalStore, updateShouldReplaceBillData, };
|
|
755
|
-
export { SpendManagementFiltersType, SpendManagementFilterEntityType, FilterCategoryType, BillPayFilterCategoryDropdownOption, ReimbursementFilterCategoryDropdownOption, TaskFilterCategoryDropdownOption, SpendManagementFilterCategoryDropdownOption,
|
|
755
|
+
export { SpendManagementFiltersType, SpendManagementFilterEntityType, FilterCategoryType, BillPayFilterCategoryDropdownOption, ReimbursementFilterCategoryDropdownOption, TaskFilterCategoryDropdownOption, SpendManagementFilterCategoryDropdownOption, MatchingOperatorDropdownOption, CategoryCombinationOperator, hideCreatedByFilter, };
|
|
756
756
|
export { BillPaySetupViewState, ZeniAccountSetupViewState, BillPaySetupViewLocalData, ZeniAccountSetupViewLocalData, PlaidAccountState, fetchBillPaySetupView, fetchZeniAccountSetupView, enableSetup, getPaymentAccounts, getPlaidLinkToken, updateSelectedCompanyOfficer, updateSetupViewLocalStoreData, updateBusinessVerificationDetails, updatePaymentAccount, updatePaymentAccountLoginStatus, updatePaymentAccountStatus, establishPlaidConnection, updateMappedCashAccount, updatePrimaryFundingAccount, acceptBillPayTerms, acceptZeniAccountTerms, acceptBillPayUpdatedTerms, saveSetupViewDataInLocalStore, saveCompnayOfficerPhoneInLocalStore, saveCompnayOfficerAdditionalDocumentsInLocalStore, saveTreasuryAdditionalDocumentsInLocalStore, saveIndustryAndIncDateInLocalStore, clearSetupViewDataInLocalStore, clearBillPaySetupView, clearZeniAccountSetupView, sendOtp, resendOtp, verifyOtp, CompanyDetails, CompanyOfficersDetails, BillPaySetupView, ZeniAccountSetupView, BillPayBusinessVerificationDetails, ZeniAccountBusinessVerificationDetails, TreasuryBusinessVerificationDetails, SetupViewState, SetupViewLocalData, SetupView, BusinessVerificationDetails, getBillPaySetupViewDetails, getPlaidAccountDetails, getZeniAccountSetupViewDetails, getBusinessVerificationDetails, getBillPayBusinessVerificationDetails, getZeniAccountBusinessVerificationDetails, getTreasuryBusinessVerificationDetails, getCommonSetupViewDetails, PlaidConnectionDetails, PlaidLinkTokenType, PlaidAccountKeyType, Token, FundingAccount, getTwoFactorAuthenticationView, getTwoFactorAuthenticationViewForCardUserOnboarding, getTwoFactorAuthenticationViewForChargeCardHolder, TwoFactorAuthenticationView, };
|
|
757
757
|
export { BankConnectionsSetupView, IntegrationsView, getApprovalRuleViewDetails, getBankConnectionsSetupViewDetails, getIntegrationsView, };
|
|
758
758
|
export { fetchUserFinancialAccount };
|