@zeniai/client-epic-state 5.3.21-betaAK1 → 5.3.22-beta0KB

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 (69) hide show
  1. package/lib/entity/genericEntity/customerWithSubCustomersId.d.ts +7 -0
  2. package/lib/entity/genericEntity/customerWithSubCustomersId.js +17 -0
  3. package/lib/entity/snackbar/snackbarTypes.d.ts +1 -1
  4. package/lib/entity/snackbar/snackbarTypes.js +2 -0
  5. package/lib/entity/tenant/tenantPayload.d.ts +6 -0
  6. package/lib/entity/tenant/tenantPayload.js +5 -0
  7. package/lib/entity/tenant/tenantReducer.d.ts +6 -2
  8. package/lib/entity/tenant/tenantReducer.js +28 -4
  9. package/lib/entity/tenant/tenantSelector.d.ts +2 -1
  10. package/lib/entity/tenant/tenantSelector.js +4 -1
  11. package/lib/entity/tenant/tenantState.d.ts +10 -0
  12. package/lib/entity/tenant/tenantState.js +5 -0
  13. package/lib/epic.d.ts +3 -2
  14. package/lib/epic.js +4 -2
  15. package/lib/esm/entity/genericEntity/customerWithSubCustomersId.js +12 -0
  16. package/lib/esm/entity/snackbar/snackbarTypes.js +2 -0
  17. package/lib/esm/entity/tenant/tenantPayload.js +4 -1
  18. package/lib/esm/entity/tenant/tenantReducer.js +27 -3
  19. package/lib/esm/entity/tenant/tenantSelector.js +2 -0
  20. package/lib/esm/entity/tenant/tenantState.js +4 -1
  21. package/lib/esm/epic.js +4 -2
  22. package/lib/esm/index.js +9 -8
  23. package/lib/esm/view/companyView/companyViewReducer.js +26 -1
  24. package/lib/esm/view/companyView/epic/companyPassport/updateCustomersTabSettingEpic.js +47 -0
  25. package/lib/esm/view/companyView/selector/companyPassportViewSelector.js +2 -0
  26. package/lib/esm/view/companyView/types/companyPassport/companyPassportViewState.js +4 -0
  27. package/lib/esm/view/customerSummaryView/customerSummaryViewReducer.js +39 -6
  28. package/lib/esm/view/customerSummaryView/customerSummaryViewSelector.js +41 -11
  29. package/lib/esm/view/customerSummaryView/epic/fetchCustomerSummaryListEpic.js +6 -1
  30. package/lib/esm/view/spendManagement/billPay/magicLinkView/magicLinkViewSelector.js +1 -0
  31. package/lib/esm/view/transactionDetail/createTransaction/epics/createTransactionCompletedEpic.js +22 -0
  32. package/lib/esm/view/transactionDetail/createTransaction/epics/createTransactionEpic.js +1 -5
  33. package/lib/esm/view/transactionDetail/transactionDetailReducer.js +3 -3
  34. package/lib/esm/view/transactionList/fetchTransactionListByEntityEpic.js +11 -2
  35. package/lib/esm/view/transactionList/transactionListReducer.js +24 -15
  36. package/lib/esm/view/trend/fetchIncomeTrendEpic.js +6 -2
  37. package/lib/index.d.ts +11 -10
  38. package/lib/index.js +54 -47
  39. package/lib/view/companyView/companyViewReducer.d.ts +8 -1
  40. package/lib/view/companyView/companyViewReducer.js +28 -3
  41. package/lib/view/companyView/epic/companyPassport/updateCustomersTabSettingEpic.d.ts +11 -0
  42. package/lib/view/companyView/epic/companyPassport/updateCustomersTabSettingEpic.js +51 -0
  43. package/lib/view/companyView/selector/companyPassportViewSelector.d.ts +1 -0
  44. package/lib/view/companyView/selector/companyPassportViewSelector.js +4 -1
  45. package/lib/view/companyView/types/companyPassport/companyPassportViewState.d.ts +1 -0
  46. package/lib/view/companyView/types/companyPassport/companyPassportViewState.js +4 -0
  47. package/lib/view/customerSummaryView/customerSummaryViewPayload.d.ts +20 -1
  48. package/lib/view/customerSummaryView/customerSummaryViewReducer.d.ts +3 -1
  49. package/lib/view/customerSummaryView/customerSummaryViewReducer.js +42 -6
  50. package/lib/view/customerSummaryView/customerSummaryViewSelector.d.ts +13 -1
  51. package/lib/view/customerSummaryView/customerSummaryViewSelector.js +45 -12
  52. package/lib/view/customerSummaryView/customerSummaryViewState.d.ts +24 -10
  53. package/lib/view/customerSummaryView/epic/fetchCustomerSummaryListEpic.js +6 -1
  54. package/lib/view/expenseAutomationView/helpers/transactionCategorizationLocalDataHelper.d.ts +1 -1
  55. package/lib/view/spendManagement/billPay/magicLinkView/magicLinkViewSelector.d.ts +6 -10
  56. package/lib/view/spendManagement/billPay/magicLinkView/magicLinkViewSelector.js +1 -0
  57. package/lib/view/transactionDetail/createTransaction/epics/createTransactionCompletedEpic.d.ts +7 -0
  58. package/lib/view/transactionDetail/createTransaction/epics/createTransactionCompletedEpic.js +26 -0
  59. package/lib/view/transactionDetail/createTransaction/epics/createTransactionEpic.js +1 -5
  60. package/lib/view/transactionDetail/transactionDetailReducer.d.ts +2 -2
  61. package/lib/view/transactionDetail/transactionDetailReducer.js +4 -4
  62. package/lib/view/transactionList/fetchTransactionListByEntityEpic.js +11 -2
  63. package/lib/view/transactionList/transactionListReducer.d.ts +3 -1
  64. package/lib/view/transactionList/transactionListReducer.js +24 -15
  65. package/lib/view/trend/fetchIncomeTrendEpic.js +6 -2
  66. package/package.json +1 -1
  67. package/lib/esm/view/transactionDetail/createTransaction/epics/createTransactionAttachmentUploadFailureEpic.js +0 -19
  68. package/lib/view/transactionDetail/createTransaction/epics/createTransactionAttachmentUploadFailureEpic.d.ts +0 -10
  69. package/lib/view/transactionDetail/createTransaction/epics/createTransactionAttachmentUploadFailureEpic.js +0 -23
@@ -2,6 +2,7 @@ import lodashGet from 'lodash/get';
2
2
  import { from, of } from 'rxjs';
3
3
  import { catchError, filter, mergeMap } from 'rxjs/operators';
4
4
  import { toString } from '../../commonStateTypes/timePeriod';
5
+ import { fromCustomerEntityId } from '../../entity/genericEntity/customerWithSubCustomersId';
5
6
  import { updateTransactions } from '../../entity/transaction/transactionReducer';
6
7
  import { createZeniAPIStatus, isSuccessResponse } from '../../responsePayload';
7
8
  import { fetchEntityTransactionList, updateTransactionListByEntity, updateTransactionListByEntityFailure, } from './transactionListReducer';
@@ -13,12 +14,20 @@ export const fetchTransactionListByEntityEpic = (actions$, state$, zeniAPI) => a
13
14
  if (action.payload.cacheOverride === true ||
14
15
  entityTransactions == null ||
15
16
  entityTransactions.hasValidState() === false) {
17
+ // Customers tab rolled-up view: cached under its own id, sent as the customer id plus the flag
18
+ const { customerId: entityId, includeSubCustomers } = action.payload.entity.type === 'customer'
19
+ ? fromCustomerEntityId(action.payload.entity.id)
20
+ : {
21
+ customerId: action.payload.entity.id,
22
+ includeSubCustomers: false,
23
+ };
16
24
  const queryParam = {
17
25
  start_date: toString(action.payload.period.start),
18
26
  end_date: toString(action.payload.period.end),
19
27
  sort_by: 'create_time',
20
28
  sort_order: 'desc',
21
- entity_id: action.payload.entity.id,
29
+ entity_id: entityId,
30
+ ...(includeSubCustomers ? { include_sub_customers: true } : {}),
22
31
  entity_name: action.payload.entity.name,
23
32
  entity_type: action.payload.entity.type,
24
33
  is_fetch_all_transactions: action.payload.isFetchAllTransactions === true
@@ -31,7 +40,7 @@ export const fetchTransactionListByEntityEpic = (actions$, state$, zeniAPI) => a
31
40
  if (isSuccessResponse(response) && response.data != null) {
32
41
  const updateActions = [];
33
42
  updateActions.push(updateTransactions(response.data.transactions, (value) => value.transaction_id));
34
- updateActions.push(updateTransactionListByEntity(response.data));
43
+ updateActions.push(updateTransactionListByEntity(response.data, action.payload.entity.id));
35
44
  return from(updateActions);
36
45
  }
37
46
  else {
@@ -164,21 +164,30 @@ const transactionList = createSlice({
164
164
  };
165
165
  },
166
166
  },
167
- updateTransactionListByEntity(draft, action) {
168
- const transactionIDs = action.payload.transactions.map((transactionPayload) => transactionPayload.transaction_id);
169
- /* eslint-disable @typescript-eslint/no-non-null-assertion */
170
- const entity = mapTransactionQueryMetaDataToEntity(action.payload.query);
171
- const key = getEntityTranKey(entity, {
172
- start: toAbsoluteDay(action.payload.query.start_date),
173
- end: toAbsoluteDay(action.payload.query.end_date),
174
- });
175
- draft.byEntity.transactionListByEntityKey[key] = {
176
- ...initialEntityTransactionState,
177
- fetchState: 'Completed',
178
- error: undefined,
179
- entity: entity,
180
- transactionIDs,
181
- };
167
+ updateTransactionListByEntity: {
168
+ // `entityId`: the requested entity's id when it differs from the query's (a rolled-up customer)
169
+ prepare(payload, entityId) {
170
+ return { payload, meta: { entityId } };
171
+ },
172
+ reducer(draft, action) {
173
+ const transactionIDs = action.payload.transactions.map((transactionPayload) => transactionPayload.transaction_id);
174
+ /* eslint-disable @typescript-eslint/no-non-null-assertion */
175
+ const entity = {
176
+ ...mapTransactionQueryMetaDataToEntity(action.payload.query),
177
+ ...(action.meta.entityId != null && { id: action.meta.entityId }),
178
+ };
179
+ const key = getEntityTranKey(entity, {
180
+ start: toAbsoluteDay(action.payload.query.start_date),
181
+ end: toAbsoluteDay(action.payload.query.end_date),
182
+ });
183
+ draft.byEntity.transactionListByEntityKey[key] = {
184
+ ...initialEntityTransactionState,
185
+ fetchState: 'Completed',
186
+ error: undefined,
187
+ entity: entity,
188
+ transactionIDs,
189
+ };
190
+ },
182
191
  },
183
192
  updateTransactionListByEntityFailure: {
184
193
  reducer(draft, action) {
@@ -3,6 +3,7 @@ import { catchError, filter, mergeMap, switchMap } from 'rxjs/operators';
3
3
  import { toTimePeriod, } from '../../commonStateTypes/timeframeTick';
4
4
  import { getCustomerIncomeTrendKey } from '../../entity/customerIncome/customerIncomeTrendKey';
5
5
  import { updateCustomerIncomeTrend } from '../../entity/customerIncome/customerIncomeTrendReducer';
6
+ import { fromCustomerEntityId } from '../../entity/genericEntity/customerWithSubCustomersId';
6
7
  import { createZeniAPIStatus, isSuccessResponse } from '../../responsePayload';
7
8
  import { date as zeniDate } from '../../zeniDayJS';
8
9
  import { fetchIncomeTrend, updateTrendFailure, updateTrendSuccess, } from './trendReducer';
@@ -25,11 +26,14 @@ switchMap((action) => {
25
26
  return of(updateTrendSuccess(requestedPeriod));
26
27
  }
27
28
  }
29
+ // The rolled-up view is cached under its own id; the API takes the customer id plus the flag
30
+ const { customerId: apiCustomerId, includeSubCustomers } = fromCustomerEntityId(customerId);
28
31
  const query = {
29
- entity_id: customerId,
32
+ entity_id: apiCustomerId,
30
33
  entity_type: 'customer',
31
- customer_id: customerId,
34
+ customer_id: apiCustomerId,
32
35
  customer_name: customerName,
36
+ ...(includeSubCustomers ? { include_sub_customers: true } : {}),
33
37
  ...(dateRange != null
34
38
  ? { start_date: dateRange.startDate, end_date: dateRange.endDate }
35
39
  : {}),
package/lib/index.d.ts CHANGED
@@ -147,8 +147,8 @@ import { getTaskGroupById } from './entity/taskGroup/taskGroupSelector';
147
147
  import { TaskGroupState } from './entity/taskGroup/taskGroupState';
148
148
  import { TaskGroupTemplate } from './entity/taskGroupTemplate/taskGroupTemplateState';
149
149
  import { DoSignInPayload, deleteConnection, doMagicLinkSignIn, doSignIn, doSignOut, fetchActiveTenant, fetchAllTenants, fetchExcludedResources as fetchExcludedResourcesForTenant, fetchExternalConnections as fetchExternalConnectionsForTenant, fetchSubscriptionSummaryForTenant, initEmailConnectOAuth, resendVerifyDeviceOTP, resetSignInState, saveAPIKeyConnection, saveConnectorCredentials, saveExternalConnection as saveExternalConnectionForTenant, saveOAuthConnection, seedTenantSummary, sendEmailMagicLinkToUser, sendSessionHeartbeat, toExternalIntegrationType, updateCurrentTenant, updateSignInState, verifyDeviceWithTwoFA } from './entity/tenant/tenantReducer';
150
- import { CurrentTenant, CurrentTenantIds, DEFAULT_RECEIPTS_EMAIL, TenantBaseView, TenantCoreDetailsView, TenantView, TenantsBaseOrdered, getCurrentTenant, getCurrentTenantId, getCurrentTenantIds, getIsAccountingClassesEnabled, getIsAccountingProjectsEnabled, getIsAutoReviewIncomeWithoutCustomerEnabled, getReceiptsEmail, getTenantBaseById, getTenantBaseViewForTenantId, getTenantBaseViewForTenantView, getTenantsBaseByCheckInDateSelector, getTenantsCoreDetailsByCheckInDateSelector, isCurrentTenantLoaded, isOtherProductsEnabledForTenant, isTenantBankingOnly, isTenantBookkeepingEnabled, isTenantCardsOnly, isTenantLoaded, isTenantUsingZeniCOA, isZeniDomainTenant, toTenantCoreDetailsView } from './entity/tenant/tenantSelector';
151
- import { CapitalizableAccount, CapitalizableAccounts, CapitalizableClassificationType, CapitalizableMatchPattern, Connection, LoggedInUser, RoleResource, Tenant, TenantProductSettings } from './entity/tenant/tenantState';
150
+ import { CurrentTenant, CurrentTenantIds, DEFAULT_RECEIPTS_EMAIL, TenantBaseView, TenantCoreDetailsView, TenantView, TenantsBaseOrdered, getCurrentTenant, getCurrentTenantId, getCurrentTenantIds, getIsAccountingClassesEnabled, getIsAccountingProjectsEnabled, getIsAutoReviewIncomeWithoutCustomerEnabled, getReceiptsEmail, getTenantBaseById, getTenantBaseViewForTenantId, getTenantBaseViewForTenantView, getTenantCustomersTabSettings, getTenantsBaseByCheckInDateSelector, getTenantsCoreDetailsByCheckInDateSelector, isCurrentTenantLoaded, isOtherProductsEnabledForTenant, isTenantBankingOnly, isTenantBookkeepingEnabled, isTenantCardsOnly, isTenantLoaded, isTenantUsingZeniCOA, isZeniDomainTenant, toTenantCoreDetailsView } from './entity/tenant/tenantSelector';
151
+ import { CapitalizableAccount, CapitalizableAccounts, CapitalizableClassificationType, CapitalizableMatchPattern, Connection, CustomersTabSettingKey, CustomersTabSettings, LoggedInUser, RoleResource, Tenant, TenantProductSettings } from './entity/tenant/tenantState';
152
152
  import { toExternalSupportedTool } from './entity/tenant/tenantTypes';
153
153
  import { ToastNotificationPayload } from './entity/toastNotification/toastNotificationPayload';
154
154
  import { pushToastNotification } from './entity/toastNotification/toastNotificationReducer';
@@ -284,11 +284,11 @@ import { AuditSummaryData, CompanyMonthEndReportData, CompanyMonthReportTemplate
284
284
  import { fetchCockpitContext, fetchCompanyTaskManagerView, fetchTaskManagerMetrics, updateCompanyTaskManagerViewFilters } from './view/companyTaskManagerView/companyTaskManagerViewReducer';
285
285
  import { CompanyTaskManagerSelectorView, TaskWithCompanyDetail, getCompanyTaskManagerView } from './view/companyTaskManagerView/companyTaskManagerViewSelector';
286
286
  import { CompanyTaskManagerViewUIState, TaskManagerMetrics } from './view/companyTaskManagerView/companyTaskManagerViewState';
287
- import { CompanyProductServicesInput, clearQboProjectsReconnectRequest, companyManagementSaveUpdates, companyPassportClearDataInLocalStore, companyPassportSaveDataInLocalStore, deleteCompanyOfficerInLocalStore, disableAccountingProjects, dismissCapitalizationOnboarding, enableAccountingProjects, fetchAllCockpitViews, fetchCompanyManagementView, fetchCompanyPassportView, fetchCompanyPortfolioView, fetchManagementView, fetchOnboardingView, fetchParentSubsidiaryManagementView, fetchPortfolioView, fetchSubscriptionView, fetchZeniUsers, resumeEnableAccountingProjects, saveCompanyPassportDetails, saveIndustryAndIncDateInCompanyPassportLocalStore, updateAccountingClassesEnabled, updateAutoReviewIncomeWithoutCustomer, updateCapitalizationAccountThreshold, updateCompanyDownloadState, updateCompanyManagementUIState, updateCompanyPassportLocalStoreData, updateCompanyPortfolioUIState, updateCompanyProductServices, updateCompanyQboRealmId } from './view/companyView/companyViewReducer';
287
+ import { CompanyProductServicesInput, clearQboProjectsReconnectRequest, companyManagementSaveUpdates, companyPassportClearDataInLocalStore, companyPassportSaveDataInLocalStore, deleteCompanyOfficerInLocalStore, disableAccountingProjects, dismissCapitalizationOnboarding, enableAccountingProjects, fetchAllCockpitViews, fetchCompanyManagementView, fetchCompanyPassportView, fetchCompanyPortfolioView, fetchManagementView, fetchOnboardingView, fetchParentSubsidiaryManagementView, fetchPortfolioView, fetchSubscriptionView, fetchZeniUsers, resumeEnableAccountingProjects, saveCompanyPassportDetails, saveIndustryAndIncDateInCompanyPassportLocalStore, updateAccountingClassesEnabled, updateAutoReviewIncomeWithoutCustomer, updateCapitalizationAccountThreshold, updateCompanyDownloadState, updateCompanyManagementUIState, updateCompanyPassportLocalStoreData, updateCompanyPortfolioUIState, updateCompanyProductServices, updateCompanyQboRealmId, updateCustomersTabSetting } from './view/companyView/companyViewReducer';
288
288
  import { canSendMonthEndEmailReport, shouldEnableCalendarPickerForLastReportSent } from './view/companyView/helpers/cockpitHelpers';
289
289
  import { getParentSubsidiaryManagementView } from './view/companyView/parentSubsidiaryView/parentSubsidiaryViewSelector';
290
290
  import { CompanyManagementView, getAddonListZeniSku, getCompanyManagementView, getCompanyProductServicesUpdateStatus, getCompanyQboRealmIdUpdateStatus, getPlanListZeniSku } from './view/companyView/selector/companyManagementViewSelector';
291
- import { CompanyPassportLocalStoreDataView, CompanyPassportView, getCompanyPassportLocalStoreData, getCompanyPassportView, isCompanyPassportDataToBeSaved } from './view/companyView/selector/companyPassportViewSelector';
291
+ import { CompanyPassportLocalStoreDataView, CompanyPassportView, getCompanyPassportLocalStoreData, getCompanyPassportView, getIsCustomersTabSettingsUpdateInProgress, isCompanyPassportDataToBeSaved } from './view/companyView/selector/companyPassportViewSelector';
292
292
  import { CompanyPortfolioView, getCompanyPortfolioView, isInfiniteRunway } from './view/companyView/selector/companyPortfolioViewSelector';
293
293
  import { AllCockpitTabsView, getAllCockpitTabsFilterView } from './view/companyView/selector/getAllCockpitTabsFilterView';
294
294
  import { ALL_COCKPIT_TABS_FILE_TYPES, ALL_COCKPIT_TABS_IDS, CockpitDownloadTabsID, CockpitTabsFileType, CockpitTabsID, toCockpitTabsFileTypeStrict, toCockpitTabsIDStrict } from './view/companyView/types/cockpitTabsID';
@@ -652,7 +652,7 @@ import { ALL_CREATABLE_TRANSACTION_TYPES, CreatableTransactionType, CreateTransa
652
652
  import { AccountingProviderAttachmentSelector, getAccountingProviderAttachment } from './view/transactionDetail/getAccountingProviderAttachmentSelector';
653
653
  import { JOURNAL_ENTRY_SORT_KEYS, JournalEntryRowSortConfig, JournalEntrySortAccessors, JournalEntrySortKey, filterJournalEntryLinesExcludingLinked, journalEntryDefaultSortConfig, journalEntrySplitReconciliation, journalEntryTotalsByPostingSide, sortJournalEntryLines, sumJournalEntryAmounts, toJournalEntrySortKey } from './view/transactionDetail/journalEntryLinesViewModel';
654
654
  import { getChangedLineItemCountFromLocalData, isAccountUncategorized } from './view/transactionDetail/transactionDetailLocalDataHelper';
655
- import { addCreateTransactionLine, addSplitLine, clearRecommendationsForCreateTransactionLines, clearTransactionDetailSaveStatus, createTransaction, createTransactionAttachmentUploadFailure, createTransactionSuccessOrFailure, deleteSplitLine, deleteTransactionAttachment, downloadAccountingProviderAttachment, downloadAccountingProviderAttachmentFailure, downloadAccountingProviderAttachmentSuccess, fetchTransactionDetail, fetchVendorRecommendationsForCreateTransaction, initializeCreateTransactionLocalData, initializeTransactionDetailLocalData, markCategoryClassRecommendationsFailureForTransactionDetail, removeCreateTransactionLine, removeEntityRecommendationForLineIdForTransactionDetail, resetAllLineItemsToVendor, resetCreateTransactionLocalData, resetLineItemsCategoryClassInLocalData, resetSelectedCustomer, resetVendor, saveTransactionDetail, saveTransactionDetailLocalData, setAllLineItemsLocalDataIsUpdateAllChecked, setAllLineItemsToCategoryClassInLocalData, setIsVendorUpdateAllChecked, setRecommendationsForCreateTransactionLines, toggleSplitEditMode, updateCreateTransactionLineLocalData, updateCreateTransactionLocalData, updateLatestSelectedEntity, updateLocalDataWithTransactionsUpdateWithVendorCheckbox, updateSelectedCustomer, updateSelectedVendor, updateTransactionDetail, updateVendorBulkRecommendationsFetchStatus, updateVendorToAllLineItems, uploadMissingAttachmentSuccess } from './view/transactionDetail/transactionDetailReducer';
655
+ import { addCreateTransactionLine, addSplitLine, clearRecommendationsForCreateTransactionLines, clearTransactionDetailSaveStatus, createTransaction, createTransactionCompleted, createTransactionSuccessOrFailure, deleteSplitLine, deleteTransactionAttachment, downloadAccountingProviderAttachment, downloadAccountingProviderAttachmentFailure, downloadAccountingProviderAttachmentSuccess, fetchTransactionDetail, fetchVendorRecommendationsForCreateTransaction, initializeCreateTransactionLocalData, initializeTransactionDetailLocalData, markCategoryClassRecommendationsFailureForTransactionDetail, removeCreateTransactionLine, removeEntityRecommendationForLineIdForTransactionDetail, resetAllLineItemsToVendor, resetCreateTransactionLocalData, resetLineItemsCategoryClassInLocalData, resetSelectedCustomer, resetVendor, saveTransactionDetail, saveTransactionDetailLocalData, setAllLineItemsLocalDataIsUpdateAllChecked, setAllLineItemsToCategoryClassInLocalData, setIsVendorUpdateAllChecked, setRecommendationsForCreateTransactionLines, toggleSplitEditMode, updateCreateTransactionLineLocalData, updateCreateTransactionLocalData, updateLatestSelectedEntity, updateLocalDataWithTransactionsUpdateWithVendorCheckbox, updateSelectedCustomer, updateSelectedVendor, updateTransactionDetail, updateVendorBulkRecommendationsFetchStatus, updateVendorToAllLineItems, uploadMissingAttachmentSuccess } from './view/transactionDetail/transactionDetailReducer';
656
656
  import { TransactionDetailReport, VendorDetailsView, getInitialUpdatablePeriodsForTransactionRecommendations, getTransactionDetail, getTransactionDetailForTransaction } from './view/transactionDetail/transactionDetailSelector';
657
657
  import { TransactionUpdates, getThirdPartyIdFromTransactionId } from './view/transactionDetail/transactionDetailState';
658
658
  import { TransactionDetailLineItemData, TransactionDetailLocalData, TransactionVendorUpdates } from './view/transactionDetail/transactionDetailTypes';
@@ -754,7 +754,7 @@ export { TimeframeTick, TimeframeTickWithMetaData, toTimeframeTick, mapTimePerio
754
754
  export { VendorSpendTrendFilterTabType, toVendorSpendTrendFilterTabsTypeStrict, } from './entity/vendorExpense/vendorSpendTrendFilterTabType';
755
755
  export { getNumberOfPeriods };
756
756
  export { SCHEDULE_DAYS_OF_MONTH, ScheduleDaysOfMonth, toScheduleDaysOfMonth, Day, Month, toMonth, toMonthStrict, Quarter, toQuarter, toQuarterStrict, AbsoluteDay, TimePeriod, };
757
- export { CapitalizableAccount, CapitalizableAccounts, CapitalizableClassificationType, CapitalizableMatchPattern, Tenant, TenantView, LoggedInUser, TenantBaseView, CurrentTenant, CurrentTenantIds, TenantProductSettings, getTenantBaseById, getCurrentTenant, getCurrentTenantId, getCurrentTenantIds, isCurrentTenantLoaded, isTenantLoaded, getIsAccountingClassesEnabled, getIsAccountingProjectsEnabled, getIsAutoReviewIncomeWithoutCustomerEnabled, getTenantsBaseByCheckInDateSelector, getTenantsCoreDetailsByCheckInDateSelector, toTenantCoreDetailsView, getTenantBaseViewForTenantView, getTenantBaseViewForTenantId, isZeniDomainTenant, isTenantUsingZeniCOA, TenantsBaseOrdered, TenantCoreDetailsView, fetchActiveTenant, fetchAllTenants, seedTenantSummary, updateCurrentTenant, clearAll, doMagicLinkSignIn, verifyDeviceWithTwoFA, resendVerifyDeviceOTP, sendEmailMagicLinkToUser, doSignIn, updateSignInState, DoSignInPayload, doSignOut, sendSessionHeartbeat, resetSignInState, RoleResource, Connection, fetchExcludedResourcesForTenant, fetchExternalConnectionsForTenant, saveExternalConnectionForTenant, deleteConnection, saveAPIKeyConnection, saveConnectorCredentials, saveOAuthConnection, initEmailConnectOAuth, toExternalIntegrationType, toExternalSupportedTool, fetchSubscriptionSummaryForTenant, isTenantBankingOnly, isTenantCardsOnly, isTenantBookkeepingEnabled, isOtherProductsEnabledForTenant, DEFAULT_RECEIPTS_EMAIL, getReceiptsEmail, };
757
+ export { CapitalizableAccount, CapitalizableAccounts, CapitalizableClassificationType, CapitalizableMatchPattern, Tenant, TenantView, LoggedInUser, TenantBaseView, CurrentTenant, CurrentTenantIds, TenantProductSettings, CustomersTabSettings, CustomersTabSettingKey, getTenantBaseById, getCurrentTenant, getCurrentTenantId, getCurrentTenantIds, isCurrentTenantLoaded, isTenantLoaded, getIsAccountingClassesEnabled, getIsAccountingProjectsEnabled, getIsAutoReviewIncomeWithoutCustomerEnabled, getTenantCustomersTabSettings, getTenantsBaseByCheckInDateSelector, getTenantsCoreDetailsByCheckInDateSelector, toTenantCoreDetailsView, getTenantBaseViewForTenantView, getTenantBaseViewForTenantId, isZeniDomainTenant, isTenantUsingZeniCOA, TenantsBaseOrdered, TenantCoreDetailsView, fetchActiveTenant, fetchAllTenants, seedTenantSummary, updateCurrentTenant, clearAll, doMagicLinkSignIn, verifyDeviceWithTwoFA, resendVerifyDeviceOTP, sendEmailMagicLinkToUser, doSignIn, updateSignInState, DoSignInPayload, doSignOut, sendSessionHeartbeat, resetSignInState, RoleResource, Connection, fetchExcludedResourcesForTenant, fetchExternalConnectionsForTenant, saveExternalConnectionForTenant, deleteConnection, saveAPIKeyConnection, saveConnectorCredentials, saveOAuthConnection, initEmailConnectOAuth, toExternalIntegrationType, toExternalSupportedTool, fetchSubscriptionSummaryForTenant, isTenantBankingOnly, isTenantCardsOnly, isTenantBookkeepingEnabled, isOtherProductsEnabledForTenant, DEFAULT_RECEIPTS_EMAIL, getReceiptsEmail, };
758
758
  export { Account, AccountType, AccountBase, StatementCloseDay, toAccountType, AccountReport, NestedAccountReport, AccountWithBalanceReport, AccountGroup, AccountGroupReportV2, AccountGroupType, toAccountGroupType, AccountGroupReport, getAccountGroupKey, AccountGroupKey, RecommendedAccountBase, AccountFilterOption, getAllAccounts, getTransactionFilterAccountOptions, };
759
759
  export { Class, ClassBase, RecommendedClassBase, } from './entity/class/classState';
760
760
  export { ClassFilterOption, getAllClasses, getClassById, getClassFilterOptions, } from './entity/class/classSelector';
@@ -820,7 +820,7 @@ export { MatchedTransaction };
820
820
  export { SupportedTransaction, SupportedTransactionWithCOT, SupportedTransactionPayload, getScheduleTransactionById, getSupportedTransactionById, };
821
821
  export { updateLatestTransactionId, parallelFetchAccountTransactionList, parallelFetchEntityTransactionList, fetchAccountTransactionList, updateTransactionListByAccount, updateTransactionListByAccountFailure, updateTransactionListByAccountUIState, parallelFetchClassTransactionList, updateTransactionListByClassUIState, updateTransactionListByClass, parallelFetchProjectTransactionList, updateTransactionListByProjectUIState, updateTransactionListByProject, updateTransactionListUIStateByCategoryType, parallelFetchTransactionListByCategoryType, };
822
822
  export { TransactionListByAccountReport, getTransactionListByAccount, getTransactionListUIStateByAccountKey, };
823
- export { ALL_CREATABLE_TRANSACTION_TYPES, initializeCreateTransactionLocalData, updateCreateTransactionLocalData, updateCreateTransactionLineLocalData, addCreateTransactionLine, removeCreateTransactionLine, resetCreateTransactionLocalData, createTransaction, createTransactionAttachmentUploadFailure, createTransactionSuccessOrFailure, fetchVendorRecommendationsForCreateTransaction, setRecommendationsForCreateTransactionLines, clearRecommendationsForCreateTransactionLines, getCreateTransactionView, getCreateTransactionLocalData, getCreateTransactionStatus, getCreateTransactionVendorRecommendations, fetchEntityTransactionList, updateTransactionListByEntity, saveTransactionDetailLocalData, clearTransactionDetailSaveStatus, updateTransactionListByEntityFailure, resetLineItemsCategoryClassInLocalData, setAllLineItemsToCategoryClassInLocalData, saveTransactionDetail, setAllLineItemsLocalDataIsUpdateAllChecked, initializeTransactionDetailLocalData, markCategoryClassRecommendationsFailureForTransactionDetail, removeEntityRecommendationForLineIdForTransactionDetail, updateSelectedVendor, updateSelectedCustomer, resetSelectedCustomer, resetVendor, updateLocalDataWithTransactionsUpdateWithVendorCheckbox, updateVendorToAllLineItems, resetAllLineItemsToVendor, updateLatestSelectedEntity, updateVendorBulkRecommendationsFetchStatus, setIsVendorUpdateAllChecked, addSplitLine, deleteSplitLine, toggleSplitEditMode, };
823
+ export { ALL_CREATABLE_TRANSACTION_TYPES, initializeCreateTransactionLocalData, updateCreateTransactionLocalData, updateCreateTransactionLineLocalData, addCreateTransactionLine, removeCreateTransactionLine, resetCreateTransactionLocalData, createTransaction, createTransactionCompleted, createTransactionSuccessOrFailure, fetchVendorRecommendationsForCreateTransaction, setRecommendationsForCreateTransactionLines, clearRecommendationsForCreateTransactionLines, getCreateTransactionView, getCreateTransactionLocalData, getCreateTransactionStatus, getCreateTransactionVendorRecommendations, fetchEntityTransactionList, updateTransactionListByEntity, saveTransactionDetailLocalData, clearTransactionDetailSaveStatus, updateTransactionListByEntityFailure, resetLineItemsCategoryClassInLocalData, setAllLineItemsToCategoryClassInLocalData, saveTransactionDetail, setAllLineItemsLocalDataIsUpdateAllChecked, initializeTransactionDetailLocalData, markCategoryClassRecommendationsFailureForTransactionDetail, removeEntityRecommendationForLineIdForTransactionDetail, updateSelectedVendor, updateSelectedCustomer, resetSelectedCustomer, resetVendor, updateLocalDataWithTransactionsUpdateWithVendorCheckbox, updateVendorToAllLineItems, resetAllLineItemsToVendor, updateLatestSelectedEntity, updateVendorBulkRecommendationsFetchStatus, setIsVendorUpdateAllChecked, addSplitLine, deleteSplitLine, toggleSplitEditMode, };
824
824
  export { TransactionUpdates, downloadAccountingProviderAttachment, downloadAccountingProviderAttachmentSuccess, downloadAccountingProviderAttachmentFailure, fetchTransactionDetail, updateTransactionDetail, uploadMissingAttachmentSuccess, deleteTransactionAttachment, getThirdPartyIdFromTransactionId, };
825
825
  export { TransactionListByEntityView, getTransactionListByEntity };
826
826
  export { TransactionListByClassReport, getTransactionListByClass, getTransactionListUIStateByClassKey, TransactionListByProjectReport, getTransactionListByProject, getTransactionListUIStateByProjectKey, getTransactionListByEntityForSinglePeriod, };
@@ -867,7 +867,7 @@ export { CockpitFilterCategory, CockpitFilters, DownloadCockpitTabOptions, Filte
867
867
  export { CockpitDownloadTabsID, CockpitTabsFileType, CockpitTabsID, ALL_COCKPIT_TABS_FILE_TYPES, ALL_COCKPIT_TABS_IDS, toCockpitTabsIDStrict, toCockpitTabsFileTypeStrict, };
868
868
  export { AllowedValueWithCode, AllowedValue, AllowedValueWithID, isAllowedValueWithCode, isAllowedValueWithID, };
869
869
  export { ManagementUIState, PortfolioUIState };
870
- export { fetchCompanyPassportView, CompanyPassportView, getCompanyPassportView, getCompanyPassportLocalStoreData, isCompanyPassportDataToBeSaved, companyPassportSaveDataInLocalStore, saveIndustryAndIncDateInCompanyPassportLocalStore, deleteCompanyOfficerInLocalStore, companyPassportClearDataInLocalStore, updateCompanyPassportLocalStoreData, saveCompanyPassportDetails, updateAccountingClassesEnabled, updateAutoReviewIncomeWithoutCustomer, enableAccountingProjects, resumeEnableAccountingProjects, disableAccountingProjects, clearQboProjectsReconnectRequest, updateCompanyProductServices, CompanyProductServicesInput, getCompanyProductServicesUpdateStatus, updateCompanyQboRealmId, getCompanyQboRealmIdUpdateStatus, updateCapitalizationAccountThreshold, dismissCapitalizationOnboarding, UpdateActionType, CompanyPassportLocalStoreDataView, };
870
+ export { fetchCompanyPassportView, CompanyPassportView, getCompanyPassportView, getCompanyPassportLocalStoreData, getIsCustomersTabSettingsUpdateInProgress, isCompanyPassportDataToBeSaved, companyPassportSaveDataInLocalStore, saveIndustryAndIncDateInCompanyPassportLocalStore, deleteCompanyOfficerInLocalStore, companyPassportClearDataInLocalStore, updateCompanyPassportLocalStoreData, saveCompanyPassportDetails, updateAccountingClassesEnabled, updateAutoReviewIncomeWithoutCustomer, updateCustomersTabSetting, enableAccountingProjects, resumeEnableAccountingProjects, disableAccountingProjects, clearQboProjectsReconnectRequest, updateCompanyProductServices, CompanyProductServicesInput, getCompanyProductServicesUpdateStatus, updateCompanyQboRealmId, getCompanyQboRealmIdUpdateStatus, updateCapitalizationAccountThreshold, dismissCapitalizationOnboarding, UpdateActionType, CompanyPassportLocalStoreDataView, };
871
871
  export { CompanyInfoLocalData, IncInfoLocalData, TaxDetailsLocalData, CompanyDetailsLocalData, PrimaryContactLocalData, CompanyOfficerLocalData, CompanyOfficerType, CompanyPassportLocalData, toCompanyPassportLocalData, };
872
872
  export type { CompanyOnboardingIndustryTypeCode, CompanyOnboardingSubIndustryTypeCode, CompanyPurposeOfAccountCode, CompanySourceOfFundsCode, CompanyTransactionVolumeCode, CompanyUsNexusTypeCode, };
873
873
  export { COMPANY_ONBOARDING_INDUSTRY_TYPE_CODES, COMPANY_ONBOARDING_SUB_INDUSTRY_CODES_BY_INDUSTRY, COMPANY_PURPOSE_OF_ACCOUNT_CODES, COMPANY_SOURCE_OF_FUNDS_CODES, COMPANY_TRANSACTION_VOLUME_CODES, COMPANY_US_NEXUS_TYPE_CODES, getCompanyOnboardingSubIndustryCodesForIndustry, };
@@ -1276,7 +1276,8 @@ export type { ActualMatchingMatchId } from './entity/actualMatching/actualMatchi
1276
1276
  export type { SessionEndpointsLoader } from './sessionEndpointsLoader';
1277
1277
  export type { DisplayCurrencyFallback } from './entity/actualMatching/actualMatchingPayload';
1278
1278
  export { fetchCustomerSummaryDetail, fetchCustomerSummaryList, resetCustomerSummaryDetailUiState, saveCustomerSummaryDetail, updateCustomerAllTransactionsTabData, updateCustomerDetailSelectedTab, updateCustomerSummaryRevenueSelection, updateCustomerSummaryScrollYOffset, updateCustomerSummarySortUiState, updateCustomerTrendFilter, } from './view/customerSummaryView/customerSummaryViewReducer';
1279
- export { getCustomerSummaryAllTransactionsTabData, getCustomerSummaryDetail, getCustomerSummaryList, getCustomerSummarySelectedTabType, getCustomerSummaryTrendFilter, isCustomersTabVisible, } from './view/customerSummaryView/customerSummaryViewSelector';
1279
+ export { getCustomerSummaryAllTransactionsTabData, getCustomerSummaryDetail, getCustomerSummaryList, getCustomerSummarySelectedTabType, getCustomerSummaryTrendFilter, getCustomersTabSettings, isCustomersTabVisible, } from './view/customerSummaryView/customerSummaryViewSelector';
1280
1280
  export type { CustomerSummaryDetailView } from './view/customerSummaryView/customerSummaryViewSelector';
1281
1281
  export { CUSTOMER_REVENUE_KEYS } from './view/customerSummaryView/customerSummaryViewState';
1282
- export type { CustomerAllTransactionsTabData, CustomerDetailTabType, CustomerRevenueKey, CustomerSummary, CustomerSummaryDetailChanges, CustomerSummaryDetailState, CustomerSummarySortKey, CustomerSummaryViewState, } from './view/customerSummaryView/customerSummaryViewState';
1282
+ export type { CustomerAllTransactionsTabData, CustomerDetailTabType, CustomerRevenueKey, CustomerSummary, CustomerSummaryDetailChanges, CustomerSummaryDetailState, CustomerSummaryFigures, CustomerSummaryReference, CustomerSummarySortKey, CustomerSummaryViewState, } from './view/customerSummaryView/customerSummaryViewState';
1283
+ export { fromCustomerEntityId, toCustomerWithSubCustomersId, } from './entity/genericEntity/customerWithSubCustomersId';