@zeniai/client-epic-state 4.19.77-betaAS2 → 4.19.77-betaML1

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 (57) hide show
  1. package/lib/entity/company/companyPayload.d.ts +0 -1
  2. package/lib/entity/company/companyPayload.js +0 -1
  3. package/lib/entity/company/companyStateTypes.d.ts +0 -1
  4. package/lib/entity/snackbar/snackbarTypes.d.ts +1 -1
  5. package/lib/entity/snackbar/snackbarTypes.js +1 -0
  6. package/lib/epic.d.ts +2 -1
  7. package/lib/epic.js +2 -1
  8. package/lib/esm/entity/company/companyPayload.js +0 -1
  9. package/lib/esm/entity/snackbar/snackbarTypes.js +1 -0
  10. package/lib/esm/epic.js +2 -1
  11. package/lib/esm/index.js +4 -6
  12. package/lib/esm/view/accountList/accountListReducer.js +3 -1
  13. package/lib/esm/view/accountList/accountListSelector.js +8 -0
  14. package/lib/esm/view/accountList/fetchAccountListEpic.js +20 -10
  15. package/lib/esm/view/companyView/epic/companyPassport/updateCompanyDetailsEpic.js +0 -3
  16. package/lib/esm/view/companyView/types/companyPassport/companyPassportLocalData.js +0 -1
  17. package/lib/esm/view/expenseAutomationView/epics/transactionCategorization/convertTransactionTypeEpic.js +78 -0
  18. package/lib/esm/view/expenseAutomationView/epics/transactionCategorization/fetchTransactionCategorizationViewEpic.js +5 -0
  19. package/lib/esm/view/expenseAutomationView/reducers/transactionsViewReducer.js +30 -1
  20. package/lib/esm/view/expenseAutomationView/selectors/transactionCategorizationSelector.js +3 -0
  21. package/lib/esm/view/spendManagement/commonSetup/epic/setup/updateBusinessVerificationDetailsEpic.js +1 -4
  22. package/lib/esm/view/spendManagement/commonSetup/epic/setup/updateSetupViewLocalStoreDataEpic.js +1 -2
  23. package/lib/esm/view/spendManagement/commonSetup/setupViewSelector.js +1 -2
  24. package/lib/esm/view/spendManagement/commonSetup/types/businessVerification.js +1 -141
  25. package/lib/esm/view/transactionDetail/epics/transactionDetailEpic.js +5 -0
  26. package/lib/esm/view/transactionDetail/transactionDetailSelector.js +2 -0
  27. package/lib/index.d.ts +4 -7
  28. package/lib/index.js +35 -37
  29. package/lib/tsconfig.typecheck.tsbuildinfo +1 -0
  30. package/lib/view/accountList/accountListReducer.d.ts +2 -1
  31. package/lib/view/accountList/accountListReducer.js +3 -1
  32. package/lib/view/accountList/accountListSelector.d.ts +6 -1
  33. package/lib/view/accountList/accountListSelector.js +10 -1
  34. package/lib/view/accountList/accountListState.d.ts +1 -1
  35. package/lib/view/accountList/fetchAccountListEpic.js +20 -10
  36. package/lib/view/companyView/epic/companyPassport/updateCompanyDetailsEpic.js +0 -3
  37. package/lib/view/companyView/types/companyPassport/companyDetailsLocalData.d.ts +0 -1
  38. package/lib/view/companyView/types/companyPassport/companyPassportLocalData.js +0 -1
  39. package/lib/view/expenseAutomationView/epics/transactionCategorization/convertTransactionTypeEpic.d.ts +38 -0
  40. package/lib/view/expenseAutomationView/epics/transactionCategorization/convertTransactionTypeEpic.js +82 -0
  41. package/lib/view/expenseAutomationView/epics/transactionCategorization/fetchTransactionCategorizationViewEpic.js +5 -0
  42. package/lib/view/expenseAutomationView/helpers/transactionCategorizationLocalDataHelper.d.ts +1 -1
  43. package/lib/view/expenseAutomationView/reducers/transactionsViewReducer.d.ts +17 -1
  44. package/lib/view/expenseAutomationView/reducers/transactionsViewReducer.js +31 -2
  45. package/lib/view/expenseAutomationView/selectorTypes/transactionsViewSelectorTypes.d.ts +10 -1
  46. package/lib/view/expenseAutomationView/selectors/transactionCategorizationSelector.js +3 -0
  47. package/lib/view/spendManagement/commonSetup/epic/setup/updateBusinessVerificationDetailsEpic.js +1 -4
  48. package/lib/view/spendManagement/commonSetup/epic/setup/updateSetupViewLocalStoreDataEpic.js +1 -2
  49. package/lib/view/spendManagement/commonSetup/setupViewSelector.d.ts +0 -1
  50. package/lib/view/spendManagement/commonSetup/setupViewSelector.js +1 -2
  51. package/lib/view/spendManagement/commonSetup/setupViewState.d.ts +0 -1
  52. package/lib/view/spendManagement/commonSetup/types/businessVerification.d.ts +3 -30
  53. package/lib/view/spendManagement/commonSetup/types/businessVerification.js +0 -143
  54. package/lib/view/transactionDetail/epics/transactionDetailEpic.js +5 -0
  55. package/lib/view/transactionDetail/transactionDetailSelector.d.ts +4 -1
  56. package/lib/view/transactionDetail/transactionDetailSelector.js +2 -0
  57. package/package.json +1 -1
@@ -13,26 +13,36 @@ const getAccountTypes = (isLimitedCategoryEnabled, filterAccountTypes) => {
13
13
  return [];
14
14
  };
15
15
  export const fetchAccountListEpic = (actions$, _state$, zeniAPI) => actions$.pipe(filter(fetchAccountList.match), mergeMap((action) => {
16
- const { accountListKey, fetchFullResponse, excludeAccountPayableAccounts, excludeAccountReceivableAccounts, isLimitedCategoryEnabled, filterAccountTypes, isIncludeDeleted, } = action.payload;
17
- const accountTypes = getAccountTypes(isLimitedCategoryEnabled, filterAccountTypes);
18
- const queryValue = {
19
- is_bookkeeping_admin: fetchFullResponse,
20
- is_exclude_account_payable_accounts: excludeAccountPayableAccounts,
21
- is_exclude_account_receivable_accounts: excludeAccountReceivableAccounts,
22
- account_types: accountTypes,
23
- ...(isIncludeDeleted === true && { is_include_deleted: true }),
24
- };
16
+ const { accountListKey, fetchFullResponse, excludeAccountPayableAccounts, excludeAccountReceivableAccounts, isLimitedCategoryEnabled, filterAccountTypes, isIncludeDeleted, query, } = action.payload;
17
+ const queryValue = (() => {
18
+ if (accountListKey === 'bankAndCreditCardAccounts') {
19
+ return { bank_accounts: true, credit_card_accounts: true };
20
+ }
21
+ if (query != null) {
22
+ return query;
23
+ }
24
+ const accountTypes = getAccountTypes(isLimitedCategoryEnabled, filterAccountTypes);
25
+ return {
26
+ is_bookkeeping_admin: fetchFullResponse,
27
+ is_exclude_account_payable_accounts: excludeAccountPayableAccounts,
28
+ is_exclude_account_receivable_accounts: excludeAccountReceivableAccounts,
29
+ account_types: accountTypes,
30
+ ...(isIncludeDeleted === true && { is_include_deleted: true }),
31
+ };
32
+ })();
25
33
  return zeniAPI
26
34
  .getJSON(`${zeniAPI.apiEndPoints.accountMicroServiceBaseUrl}/1.0/accounts?query=${encodeURIComponent(JSON.stringify(queryValue))}`)
27
35
  .pipe(mergeMap((response) => {
28
36
  if (isSuccessResponse(response)) {
29
37
  const actions = [
30
- updateAccounts(response.data?.accounts ?? [], 'account_list'),
31
38
  updateAccountList({
32
39
  accountListKey,
33
40
  accountListResponse: response,
34
41
  }),
35
42
  ];
43
+ if (accountListKey !== 'bankAndCreditCardAccounts') {
44
+ actions.unshift(updateAccounts(response.data?.accounts ?? [], 'account_list'));
45
+ }
36
46
  return from(actions);
37
47
  }
38
48
  else {
@@ -12,9 +12,6 @@ export const updateCompanyDetailsEpic = (actions$, state$, zeniAPI) => actions$.
12
12
  ...toCompanyIncInfoUpdatableInfoPayload(companyDetails.incInfo),
13
13
  ...toCompanyTaxInfoUpdatableInfoPayload(companyDetails.taxDetails),
14
14
  ...toCompanyFileInfoPayload(companyDetails.incInfo, companyDetails.taxDetails),
15
- ...(companyDetails.companyInfo.companyIndustryType != null && {
16
- company_industry_type: companyDetails.companyInfo.companyIndustryType,
17
- }),
18
15
  ...(companyDetails.companyInfo.companySubIndustry != null && {
19
16
  company_industry_sub_type: companyDetails.companyInfo.companySubIndustry,
20
17
  }),
@@ -10,7 +10,6 @@ export function toCompanyPassportLocalData(companyView, companyFiles) {
10
10
  website: companyInfo.companyUrl,
11
11
  meetingLink: companyInfo.meetingUrl,
12
12
  industry: companyQuestionaire.companyIndustry,
13
- companyIndustryType: incInfo.companyIndustryType,
14
13
  companySubIndustry: incInfo.companySubIndustry,
15
14
  businessModel: companyQuestionaire.companyBusinessModel ?? '',
16
15
  phone: companyInfo.phone ?? '',
@@ -0,0 +1,78 @@
1
+ import { from } from 'rxjs';
2
+ import { catchError, filter, mergeMap } from 'rxjs/operators';
3
+ import { openSnackbar } from '../../../../entity/snackbar/snackbarReducer';
4
+ import { createZeniAPIStatus, isSuccessStatus, } from '../../../../responsePayload';
5
+ import { convertTransactionType, convertTransactionTypeFailure, convertTransactionTypeSuccess, removeTransactionsFromCategorizationList, } from '../../reducers/transactionsViewReducer';
6
+ function toConvertTransactionTypePayload(payload) {
7
+ return {
8
+ from_account_integration_id: payload.fromAccountIntegrationId,
9
+ to_account_integration_id: payload.toAccountIntegrationId,
10
+ transaction_id: payload.transactionId,
11
+ transaction_type: payload.transactionType,
12
+ };
13
+ }
14
+ export const convertTransactionTypeEpic = (actions$, _state$, zeniAPI) => actions$.pipe(filter(convertTransactionType.match), mergeMap((action) => {
15
+ const { transactionId, transactionType, toAccountIntegrationId, fromAccountIntegrationId, selectedTab, selectedPeriod, } = action.payload;
16
+ const apiPayload = toConvertTransactionTypePayload({
17
+ transactionId,
18
+ transactionType,
19
+ toAccountIntegrationId,
20
+ fromAccountIntegrationId,
21
+ });
22
+ return zeniAPI
23
+ .putAndGetJSON(`${zeniAPI.apiEndPoints.accountMicroServiceBaseUrl}/1.0/transactions/transaction-type`, apiPayload)
24
+ .pipe(mergeMap((response) => {
25
+ if (isSuccessStatus(response)) {
26
+ return from([
27
+ removeTransactionsFromCategorizationList({
28
+ selectedTab,
29
+ selectedPeriod,
30
+ transactionIds: [transactionId],
31
+ }),
32
+ convertTransactionTypeSuccess({ transactionId }),
33
+ openSnackbar({
34
+ messageSection: 'convert_transaction_type',
35
+ messageText: 'success',
36
+ type: 'success',
37
+ }),
38
+ ]);
39
+ }
40
+ const errorStatus = response.status ?? {
41
+ code: 0,
42
+ message: 'Unknown error',
43
+ };
44
+ return from([
45
+ convertTransactionTypeFailure({
46
+ transactionId,
47
+ error: errorStatus,
48
+ }),
49
+ openSnackbar({
50
+ messageSection: 'convert_transaction_type',
51
+ messageText: 'failed',
52
+ type: 'error',
53
+ variables: [
54
+ {
55
+ variableName: 'errorMessage',
56
+ variableValue: errorStatus.message ?? errorStatus.title ?? 'Request failed',
57
+ },
58
+ ],
59
+ }),
60
+ ]);
61
+ }), catchError((error) => from([
62
+ convertTransactionTypeFailure({
63
+ transactionId,
64
+ error: createZeniAPIStatus('Unexpected Error', `Convert transaction type failed: ${JSON.stringify(error)}`),
65
+ }),
66
+ openSnackbar({
67
+ messageSection: 'convert_transaction_type',
68
+ messageText: 'failed',
69
+ type: 'error',
70
+ variables: [
71
+ {
72
+ variableName: 'errorMessage',
73
+ variableValue: error instanceof Error ? error.message : String(error),
74
+ },
75
+ ],
76
+ }),
77
+ ])));
78
+ }));
@@ -21,6 +21,11 @@ export const fetchTransactionCategorizationViewEpic = (actions$, state$) => acti
21
21
  accountList.fetchState === 'Not-Started') {
22
22
  updateActions.push(fetchAccountList('accountList', true));
23
23
  }
24
+ const bankAndCreditCardAccounts = state$.value.accountListState.byReportId.bankAndCreditCardAccounts;
25
+ if (bankAndCreditCardAccounts.hasValidState() === false &&
26
+ bankAndCreditCardAccounts.fetchState === 'Not-Started') {
27
+ updateActions.push(fetchAccountList('bankAndCreditCardAccounts'));
28
+ }
24
29
  const classList = state$.value.classListState;
25
30
  if (classList.hasValidState() === false &&
26
31
  classList.fetchState === 'Not-Started') {
@@ -699,6 +699,35 @@ const expenseAutomationTransactionsView = createSlice({
699
699
  clearExpenseAutomationTransactionsView(draft) {
700
700
  Object.assign(draft, initialState);
701
701
  },
702
+ removeTransactionsFromCategorizationList(draft, action) {
703
+ const { selectedTab, selectedPeriod, transactionIds } = action.payload;
704
+ const periodId = toMonthYearPeriodId(selectedPeriod);
705
+ const tabView = draft.transactionCategorizationView[selectedTab];
706
+ const currentIds = tabView.transactionIdsBySelectedPeriod[periodId] ?? [];
707
+ tabView.transactionIdsBySelectedPeriod[periodId] = currentIds.filter((id) => !transactionIds.includes(id));
708
+ transactionIds.forEach((id) => {
709
+ delete tabView.transactionReviewLocalDataById[id];
710
+ });
711
+ tabView.selectedCheckBoxTransactionIds =
712
+ tabView.selectedCheckBoxTransactionIds.filter((id) => !transactionIds.includes(id));
713
+ tabView.transactionIdsWithUnsavedData =
714
+ tabView.transactionIdsWithUnsavedData.filter((id) => !transactionIds.includes(id));
715
+ },
716
+ convertTransactionType(_draft, _action) {
717
+ // Trigger only; epic performs the API call. No state change.
718
+ void _draft;
719
+ void _action;
720
+ },
721
+ convertTransactionTypeSuccess(_draft, _action) {
722
+ // UI can listen for this to close the convert drawer. No state change.
723
+ void _draft;
724
+ void _action;
725
+ },
726
+ convertTransactionTypeFailure(_draft, _action) {
727
+ // UI can listen for this to show error in the convert drawer. No state change.
728
+ void _draft;
729
+ void _action;
730
+ },
702
731
  syncTransactionCategorizationFromDetailSave: {
703
732
  prepare(transactionId, updatedTransaction, pendingReviewLineIds, uncategorizedIncomeExpense, isUncategorizedExpenseCategoryEnabled) {
704
733
  return {
@@ -770,5 +799,5 @@ const expenseAutomationTransactionsView = createSlice({
770
799
  },
771
800
  },
772
801
  });
773
- export const { fetchTransactionCategorization, updateTransactionCategorizationUIState, initializeTransactionCategorizationViewLocalData, saveTransactionCategorizationLocalData, fetchTransactionCategorizationFailure, saveTransactionCategorization, updateTransactionCategorization, updateCurrentSelectedTransactionCategorizationTab, updateTransactionCategorizationSaveStatus, markTransactionAsNotMiscategorized, updateStatusForTransactionNotMiscategorizedUpdateForCategorization, updateSelectedVendorForTransaction, updateSelectedCustomerForTransaction, setAllItemsToCategoryClassInLocalDataForCategorization, updateTotalCountForTransactionCategorization, fetchTransactionCategorizationSuccess, resetOtherTabsFetchState, fetchTransactionCategorizationView, updateSelectedCheckboxTransactionIds, clearExpenseAutomationTransactionsViewPerTabView, clearExpenseAutomationTransactionsView, setEntityRecommendationForLineIdsForCategorization, updateSelectedTransactionId, syncTransactionCategorizationFromDetailSave, backgroundRefetchReviewTab, } = expenseAutomationTransactionsView.actions;
802
+ export const { fetchTransactionCategorization, updateTransactionCategorizationUIState, initializeTransactionCategorizationViewLocalData, saveTransactionCategorizationLocalData, fetchTransactionCategorizationFailure, saveTransactionCategorization, updateTransactionCategorization, updateCurrentSelectedTransactionCategorizationTab, updateTransactionCategorizationSaveStatus, markTransactionAsNotMiscategorized, updateStatusForTransactionNotMiscategorizedUpdateForCategorization, updateSelectedVendorForTransaction, updateSelectedCustomerForTransaction, setAllItemsToCategoryClassInLocalDataForCategorization, updateTotalCountForTransactionCategorization, fetchTransactionCategorizationSuccess, resetOtherTabsFetchState, fetchTransactionCategorizationView, updateSelectedCheckboxTransactionIds, clearExpenseAutomationTransactionsViewPerTabView, clearExpenseAutomationTransactionsView, setEntityRecommendationForLineIdsForCategorization, updateSelectedTransactionId, removeTransactionsFromCategorizationList, convertTransactionType, convertTransactionTypeSuccess, convertTransactionTypeFailure, syncTransactionCategorizationFromDetailSave, backgroundRefetchReviewTab, } = expenseAutomationTransactionsView.actions;
774
803
  export default expenseAutomationTransactionsView.reducer;
@@ -96,5 +96,8 @@ export function getExpenseAutomationTransactionView(state) {
96
96
  fetchStateByTransactionTabs: fetchStateByTab,
97
97
  selectedTransactionId,
98
98
  selectedTransactionLineId,
99
+ createTransferEntryStatus: 'Not-Started',
100
+ transferAccounts: [],
101
+ debitAccountInfoByTransactionId: {},
99
102
  };
100
103
  }
@@ -136,7 +136,7 @@ function toUsNexusTypeKey(value) {
136
136
  return US_NEXUS_LABEL_TO_KEY[value] ?? value;
137
137
  }
138
138
  export const toBusinessVerificationCompanyDataPayload = (companyLocalData, sendForVerification, companyAddressData, registeredAddressData, setupViewType) => {
139
- const { companyDescription, companyLegalName, companyIndustry, companyIndustryType, companySubIndustry, countriesOfOperations, companySourceOfFunds, companySourceOfFundsDescription, transactionVolume, transactionVolumeDescription, purposeOfAccount, purposeOfAccountDescription, regulatedStatus, regulatedStatusDescription, usNexus, usNexusTypes, website, incDate, taxIdOrEIN, phone, syncToken, fileIds, typeOfIncorporation, stateOfIncorporation, sourceOfFunds, } = companyLocalData;
139
+ const { companyDescription, companyLegalName, companyIndustry, companySubIndustry, countriesOfOperations, companySourceOfFunds, companySourceOfFundsDescription, transactionVolume, transactionVolumeDescription, purposeOfAccount, purposeOfAccountDescription, regulatedStatus, regulatedStatusDescription, usNexus, usNexusTypes, website, incDate, taxIdOrEIN, phone, syncToken, fileIds, typeOfIncorporation, stateOfIncorporation, sourceOfFunds, } = companyLocalData;
140
140
  const company = {
141
141
  is_ready_for_verification: sendForVerification,
142
142
  file_ids: fileIds,
@@ -194,9 +194,6 @@ export const toBusinessVerificationCompanyDataPayload = (companyLocalData, sendF
194
194
  company['company_industry'] = companyIndustry;
195
195
  }
196
196
  Object.assign(company, {
197
- ...(companyIndustryType != null && {
198
- company_industry_type: companyIndustryType,
199
- }),
200
197
  ...(companySubIndustry != null && {
201
198
  company_industry_sub_type: companySubIndustry,
202
199
  }),
@@ -45,14 +45,13 @@ export function toSetupViewLocalData(company, users, userRoles, primaryContact)
45
45
  const { companyInfo, incInfo, taxInfo, questionaire, companyBillPayInfo } = company;
46
46
  const { companyId, companyDescription, companyLegalName, companyUrl, phone, syncToken, sourceOfFunds, companySourceOfFunds: incCompanySourceOfFunds, companySourceOfFundsDescription, countriesOfOperations, transactionVolume, transactionVolumeDescription, purposeOfAccount, purposeOfAccountDescription, regulatedStatus, regulatedStatusDescription, usNexus, usNexusTypes, } = companyInfo;
47
47
  const { usersSelectedForVerification: usersSelected } = companyBillPayInfo;
48
- const { fileIds, companyIncDate: incDate, companyIncType, companyIncState, companySubIndustry, companyIndustryType, } = incInfo;
48
+ const { fileIds, companyIncDate: incDate, companyIncType, companyIncState, companySubIndustry, } = incInfo;
49
49
  const { companyIndustry } = questionaire;
50
50
  const { taxId } = taxInfo;
51
51
  const companyDetails = {
52
52
  companyId,
53
53
  companyDescription,
54
54
  companyIndustry,
55
- companyIndustryType,
56
55
  companyLegalName,
57
56
  companySubIndustry,
58
57
  companySourceOfFunds: incCompanySourceOfFunds,
@@ -109,7 +109,7 @@ export const getCompanyAndIdentityDetails = (state, companyId, companyAndIdentit
109
109
  if (companyDetails.localData != null) {
110
110
  const deleteFileStatusById = {};
111
111
  const updateFileStatusById = {};
112
- const { syncToken, companyDescription, companyLegalName, website, companyIndustry, companyIndustryType, companySubIndustry, companySourceOfFunds, companySourceOfFundsDescription, countriesOfOperations, phone, taxIdOrEIN, incDate, fileIds, typeOfIncorporation, sourceOfFunds, transactionVolume, transactionVolumeDescription, purposeOfAccount, purposeOfAccountDescription, regulatedStatus, regulatedStatusDescription, stateOfIncorporation, usNexus, usNexusTypes, } = companyDetails.localData;
112
+ const { syncToken, companyDescription, companyLegalName, website, companyIndustry, companySubIndustry, companySourceOfFunds, companySourceOfFundsDescription, countriesOfOperations, phone, taxIdOrEIN, incDate, fileIds, typeOfIncorporation, sourceOfFunds, transactionVolume, transactionVolumeDescription, purposeOfAccount, purposeOfAccountDescription, regulatedStatus, regulatedStatusDescription, stateOfIncorporation, usNexus, usNexusTypes, } = companyDetails.localData;
113
113
  fileIds.forEach((fileId) => {
114
114
  deleteFileStatusById[fileId] = getFileDeleteStatusById(state, fileId);
115
115
  });
@@ -123,7 +123,6 @@ export const getCompanyAndIdentityDetails = (state, companyId, companyAndIdentit
123
123
  companyDescription,
124
124
  companyLegalName,
125
125
  companyIndustry,
126
- companyIndustryType,
127
126
  companySubIndustry,
128
127
  companySourceOfFunds,
129
128
  companySourceOfFundsDescription,
@@ -1,141 +1 @@
1
- export const COMPANY_TRANSACTION_VOLUME_CODES = [
2
- 'less_than_10000',
3
- '10000_50000',
4
- '50001_250000',
5
- '250001_1000000',
6
- '1000001_2000000',
7
- 'over_2000000',
8
- ];
9
- export const COMPANY_SOURCE_OF_FUNDS_CODES = [
10
- 'sales_of_goods',
11
- 'sales_of_services',
12
- 'customer_payments',
13
- 'investment_capital',
14
- 'business_loans',
15
- 'owner_contributions',
16
- 'franchise_revenue',
17
- 'rental_income',
18
- 'government_contracts_grants',
19
- 'donations_fundraising',
20
- 'membership_fees_subscriptions',
21
- 'licensing_royalties',
22
- 'commission_income',
23
- 'import_export_revenue',
24
- 'cryptocurrency_activity',
25
- ];
26
- export const COMPANY_PURPOSE_OF_ACCOUNT_CODES = [
27
- 'retail_sales',
28
- 'ecommerce_sales',
29
- 'cash_heavy_operations',
30
- 'import_export_trade',
31
- 'professional_services_not_handling_funds',
32
- 'professional_services_handling_funds',
33
- 'holding_investment_company',
34
- 'property_management_real_estate',
35
- 'charitable_nonprofit',
36
- 'construction_contracting',
37
- 'commercial_cash_operations',
38
- 'freight_forwarding_logistics',
39
- 'third_party_payment_processing',
40
- 'technology_startup',
41
- 'wholesale_distribution',
42
- 'franchise_operation',
43
- 'healthcare_provider',
44
- 'educational_institution',
45
- ];
46
- /** Industry type codes for onboarding / business verification (paired with sub-industry). */
47
- export const COMPANY_ONBOARDING_INDUSTRY_TYPE_CODES = [
48
- 'retail_consumer_goods',
49
- 'financial_services',
50
- 'food_agriculture',
51
- 'healthcare_pharmaceuticals',
52
- 'professional_services',
53
- 'manufacturing_industrial',
54
- 'real_estate_construction',
55
- 'logistics_transportation',
56
- 'wholesale_trade',
57
- 'business_support_services',
58
- 'escort_dating_adult_entertainment',
59
- ];
60
- export const COMPANY_ONBOARDING_SUB_INDUSTRY_CODES_BY_INDUSTRY = {
61
- retail_consumer_goods: [
62
- 'grocery_stores_supermarkets',
63
- 'convenience_stores',
64
- 'specialty_food_retailers',
65
- 'gas_stations_retail',
66
- 'general_merchandise_department',
67
- 'online_retail_ecommerce',
68
- 'subscription_membership',
69
- 'direct_to_consumer',
70
- 'cannabis',
71
- ],
72
- financial_services: [
73
- 'banks_credit_unions',
74
- 'fintech_payment_processing',
75
- 'insurance_providers',
76
- 'investment_advisors_broker',
77
- 'lending_mortgage',
78
- 'treasury_management',
79
- 'personal_finance_apps',
80
- 'retirement_planning',
81
- 'real_estate_investment',
82
- 'money_service_businesses',
83
- 'cryptocurrency',
84
- 'debt_collection',
85
- 'payday_lending',
86
- 'gambling',
87
- ],
88
- food_agriculture: [
89
- 'farms_agricultural',
90
- 'food_wholesalers_distributors',
91
- 'restaurants_cafes',
92
- 'bars_nightclubs',
93
- 'catering_services',
94
- 'farmers_markets',
95
- 'restaurant_tech_pos',
96
- ],
97
- healthcare_pharmaceuticals: [
98
- 'hospitals_clinics',
99
- 'pharmacies',
100
- 'medical_equipment',
101
- 'biotechnology',
102
- 'home_health',
103
- 'healthcare_staffing',
104
- 'wellness_benefits',
105
- 'healthcare_social_assistance',
106
- ],
107
- professional_services: [
108
- 'legal_services',
109
- 'accounting_auditing',
110
- 'consulting_firms',
111
- 'marketing_advertising',
112
- 'real_estate_agents_property',
113
- 'corporate_services_incorporation',
114
- 'hr_workforce_management',
115
- 'direct_marketing_telemarketing',
116
- 'legal_accounting_consulting_programming',
117
- ],
118
- manufacturing_industrial: [
119
- 'chemical_manufacturing',
120
- 'electronics_hardware',
121
- 'automotive_manufacturing',
122
- 'construction_materials',
123
- 'textiles_apparel',
124
- 'mining',
125
- ],
126
- real_estate_construction: ['real_estate', 'construction'],
127
- logistics_transportation: ['transportation_warehousing'],
128
- wholesale_trade: ['wholesale_trade'],
129
- business_support_services: ['business_support_building'],
130
- escort_dating_adult_entertainment: [
131
- 'escort_services',
132
- 'dating_adult_entertainment',
133
- ],
134
- };
135
- export function getCompanyOnboardingSubIndustryCodesForIndustry(industryTypeCode) {
136
- if (industryTypeCode == null || industryTypeCode === '') {
137
- return [];
138
- }
139
- const row = COMPANY_ONBOARDING_SUB_INDUSTRY_CODES_BY_INDUSTRY[industryTypeCode];
140
- return row != null ? [...row] : [];
141
- }
1
+ export {};
@@ -34,6 +34,11 @@ export const fetchTransactionDetailEpic = (actions$, state$, zeniAPI) => actions
34
34
  accountList.fetchState !== 'In-Progress') {
35
35
  transactionActions.push(fetchAccountList('accountList'));
36
36
  }
37
+ const bankAndCreditCardAccounts = state$.value.accountListState.byReportId.bankAndCreditCardAccounts;
38
+ if (bankAndCreditCardAccounts.hasValidState() === false &&
39
+ bankAndCreditCardAccounts.fetchState !== 'In-Progress') {
40
+ transactionActions.push(fetchAccountList('bankAndCreditCardAccounts'));
41
+ }
37
42
  const classList = state$.value.classListState;
38
43
  if (classList.hasValidState() === false &&
39
44
  classList.fetchState !== 'In-Progress') {
@@ -76,6 +76,8 @@ export const getTransactionDetail = (state, transactionId, fetchLinkedTransactio
76
76
  initialSupportedTransactionDetail.transactionDetailLocalData,
77
77
  selectedVendor: transactionDetail?.transactionDetailLocalData.vendorUpdates,
78
78
  allVendors: vendors,
79
+ createTransferEntryStatus: 'Not-Started',
80
+ transferAccounts: [],
79
81
  };
80
82
  };
81
83
  export function getTransactionDetailForTransaction(rootState, transactionId) {
package/lib/index.d.ts CHANGED
@@ -151,7 +151,7 @@ import initialize, { ZeniStore, disconnectPusher, initializePusher, initializeWi
151
151
  import { RootState } from './reducer';
152
152
  import { ZeniAPIStatus, isAccessDeniedError, isInvalidSessionError, isSuccessResponse } from './responsePayload';
153
153
  import { fetchAccountList } from './view/accountList/accountListReducer';
154
- import { AccountListSelectorView, UncategorizedAccounts, getNestedAccountListHierarchy, getUncategorizedAccounts } from './view/accountList/accountListSelector';
154
+ import { AccountListSelectorView, UncategorizedAccounts, getBankAndCreditCardAccountList, getNestedAccountListHierarchy, getUncategorizedAccounts } from './view/accountList/accountListSelector';
155
155
  import { clearAccountMappingLocalData, initializeAccountMappingView, saveAccountMapping, saveAccountMappingLocalData } from './view/accountMappingView/accountMappingReducer';
156
156
  import { AccountMappingLocalData, ExpenseCategory1099Filing } from './view/accountMappingView/accountMappingState';
157
157
  import { VendorAccountMappingView } from './view/accountMappingView/accountMappingTypeHelper';
@@ -267,7 +267,7 @@ import { clearExpenseAutomationFluxAnalysisView, fetchFluxAnalysisView, reviewFl
267
267
  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';
268
268
  import { fetchMissingReceipts as fetchExpenseAutomationMissingReceipts, markMissingReceiptAsDone as markExpenseAutomationMissingReceiptAsDone, updateMissingReceiptUploadState as updateExpenseAutomationMissingReceiptUploadState, updateMissingReceiptsUIState as updateExpenseAutomationMissingReceiptsUIState, uploadMissingReceiptSuccess as uploadExpenseAutomationMissingReceiptSuccess } from './view/expenseAutomationView/reducers/missingReceiptsViewReducer';
269
269
  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';
270
- 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
+ import { backgroundRefetchReviewTab, clearExpenseAutomationTransactionsView, fetchTransactionCategorization, fetchTransactionCategorizationFailure, fetchTransactionCategorizationView, initializeTransactionCategorizationViewLocalData, markTransactionAsNotMiscategorized, removeTransactionsFromCategorizationList, convertTransactionType, convertTransactionTypeSuccess, convertTransactionTypeFailure, saveTransactionCategorization, saveTransactionCategorizationLocalData, setAllItemsToCategoryClassInLocalDataForCategorization, setEntityRecommendationForLineIdsForCategorization, syncTransactionCategorizationFromDetailSave, updateCurrentSelectedTransactionCategorizationTab, updateSelectedCheckboxTransactionIds, updateSelectedCustomerForTransaction, updateSelectedTransactionId, updateSelectedVendorForTransaction, updateTransactionCategorization, updateTransactionCategorizationSaveStatus, updateTransactionCategorizationUIState } from './view/expenseAutomationView/reducers/transactionsViewReducer';
271
271
  import { ExpenseAutomationStepDetails, ExpenseAutomationViewSelector } from './view/expenseAutomationView/selectorTypes/expenseAutomationViewSelectorTypes';
272
272
  import { ExpenseAutomationFluxAnalysisViewSelector, FluxAnalysisOperatingExpenseView, FluxAnalysisSectionType, FluxAnalysisVendorView, FluxAnalysisViewSectionReport, FluxVendorAccountsAndClassesView } from './view/expenseAutomationView/selectorTypes/fluxAnalysisViewSelectorTypes';
273
273
  import { JEAccountSettingsView } from './view/expenseAutomationView/selectorTypes/jeAccountSettingsViewSelectorTypes';
@@ -456,7 +456,6 @@ import { ActivityHistorySelectorView } from './view/spendManagement/commonHistor
456
456
  import { clearSetupViewDataInLocalStore, enableSetup, saveCompnayOfficerAdditionalDocumentsInLocalStore, saveCompnayOfficerPhoneInLocalStore, saveIndustryAndIncDateInLocalStore, saveSetupViewDataInLocalStore, saveTreasuryAdditionalDocumentsInLocalStore, updateBusinessVerificationDetails, updateSelectedCompanyOfficer, updateSetupViewLocalStoreData } from './view/spendManagement/commonSetup/setupViewReducer';
457
457
  import { BusinessVerificationDetails, CompanyDetails, CompanyOfficersDetails, FundingAccount, SetupView, getBusinessVerificationDetails, getCommonSetupViewDetails } from './view/spendManagement/commonSetup/setupViewSelector';
458
458
  import { SetupViewLocalData, SetupViewState } from './view/spendManagement/commonSetup/setupViewState';
459
- import { 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, CompanyOnboardingIndustryTypeCode, CompanyOnboardingSubIndustryTypeCode, CompanyPurposeOfAccountCode, CompanySourceOfFundsCode, CompanyTransactionVolumeCode, getCompanyOnboardingSubIndustryCodesForIndustry } from './view/spendManagement/commonSetup/types/businessVerification';
460
459
  import { BulkOperationFinishedType, BulkOperationType, SameDayAchDisablementConfig, ZeniAccountsPromoConfig, checkIfLowBalance, getActualPaymentDate, getBillListUniqueType, getBulkOperationSuffix, getRemiListUniqueType, getSelectedCompanyOfficer, getSpendManagementEffectiveListPeriod, isAwaitingMarkAsPaid, isBulkProcessing, isPaymentMethodOutsideZeni, isVerifiedPaymentAccountProviderStatusCode, isVerifiedStatusCode, showBillPayPromoPage, showReimbursementPromoPage, toAccountsPromoConfig, toSameDayAchDisablementConfig } from './view/spendManagement/helpers';
461
460
  import { establishPlaidConnection, getPaymentAccounts, getPlaidLinkToken, updateMappedCashAccount, updatePaymentAccount, updatePaymentAccountLoginStatus, updatePaymentAccountStatus, updatePrimaryFundingAccount } from './view/spendManagement/plaidAccount/plaidAccountViewReducer';
462
461
  import { getPlaidAccountDetails } from './view/spendManagement/plaidAccount/plaidAccountViewSelector';
@@ -624,7 +623,7 @@ export { fetchMonthEndCloseChecks, fetchMonthClosePerformanceTrend, MonthClosePe
624
623
  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, };
625
624
  export { JEScheduleLocalData };
626
625
  export { ExpenseAutomationJESchedulesViewSelector, JEAccountSettingsView, JEScheduledTransactionWithFailedEntries, };
627
- 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
+ export { fetchTransactionCategorization, fetchTransactionCategorizationView, updateTransactionCategorizationUIState, updateSelectedCheckboxTransactionIds, setEntityRecommendationForLineIdsForCategorization, initializeTransactionCategorizationViewLocalData, setAllItemsToCategoryClassInLocalDataForCategorization, saveTransactionCategorizationLocalData, fetchTransactionCategorizationFailure, saveTransactionCategorization, updateTransactionCategorization, updateTransactionCategorizationSaveStatus, markTransactionAsNotMiscategorized, removeTransactionsFromCategorizationList, convertTransactionType, convertTransactionTypeSuccess, convertTransactionTypeFailure, updateSelectedVendorForTransaction, updateSelectedCustomerForTransaction, updateSelectedTransactionId, syncTransactionCategorizationFromDetailSave, backgroundRefetchReviewTab, clearExpenseAutomationTransactionsView, TransactionsSortKey, toTransactionsSortKey, TransactionsTab, TransactionCategorizationLineItemData, TransactionReviewLocalData, SupportedTransactionCategorization, ExpenseAutomationTransactionsViewState, ExpenseAutomationTransactionsViewUIState, ExpenseAutomationTransactionViewSelector, TransactionReviewLocalDataSelectorView, };
628
627
  export { TopExpense, TopExTimePeriod, TOP_EX_TIME_PERIODS };
629
628
  export { TimeframeTick, TimeframeTickWithMetaData, toTimeframeTick, mapTimePeriodtoTimeframeTick, toTimePeriod, toAbsoluteDay, toMonthYearPeriodId, convertToPeriod, MonthYearPeriod, };
630
629
  export { VendorSpendTrendFilterTabType, toVendorSpendTrendFilterTabsTypeStrict, } from './entity/vendorExpense/vendorExpenseSelector';
@@ -734,9 +733,7 @@ export { AllowedValueWithCode, AllowedValue, AllowedValueWithID, isAllowedValueW
734
733
  export { ManagementUIState, PortfolioUIState };
735
734
  export { fetchCompanyPassportView, CompanyPassportView, getCompanyPassportView, getCompanyPassportLocalStoreData, isCompanyPassportDataToBeSaved, companyPassportSaveDataInLocalStore, saveIndustryAndIncDateInCompanyPassportLocalStore, deleteCompanyOfficerInLocalStore, companyPassportClearDataInLocalStore, updateCompanyPassportLocalStoreData, saveCompanyPassportDetails, clearCompanyView, UpdateActionType, CompanyPassportLocalStoreDataView, };
736
735
  export { CompanyInfoLocalData, IncInfoLocalData, TaxDetailsLocalData, CompanyDetailsLocalData, PrimaryContactLocalData, CompanyOfficerLocalData, CompanyOfficerType, CompanyPassportLocalData, toCompanyPassportLocalData, };
737
- export type { CompanyOnboardingIndustryTypeCode, CompanyOnboardingSubIndustryTypeCode, CompanyPurposeOfAccountCode, CompanySourceOfFundsCode, CompanyTransactionVolumeCode, };
738
- 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, getCompanyOnboardingSubIndustryCodesForIndustry, };
739
- export { getUncategorizedAccounts, UncategorizedAccounts, getNestedAccountListHierarchy, };
736
+ export { getUncategorizedAccounts, UncategorizedAccounts, getBankAndCreditCardAccountList, getNestedAccountListHierarchy, };
740
737
  export { getBankAccount, BankAccountSelectorView };
741
738
  export { AddOnEstimate, SubscriptionViewSortKey, toSubscriptionSortKeyType, SubscriptionView, SubscriptionListView as CompanySubscriptionView, getSubscriptionListView as getCompanySubscriptionView, SubscriptionListUIState as SubscriptionUIState, updateSubscriptionListUIState as updateCompanySubscriptionUIState, SubscriptionUpdateData, SubscriptionCreateData, SubscriptionActionType, SubscriptionDetails, SubscriptionEstimateWithSchema, fetchSubscriptionList, fetchSubscriptionPlans, fetchSubscriptionAddOns, fetchSubscriptionCoupons, fetchSubscriptionDetails, saveSubscriptionUpdates, saveSubscriptionNotesUpdates, fetchSubscriptionCreateEstimate, fetchSubscriptionUpdateEstimate, clearSubscriptionView, initializeSubscriptionLocalData, saveSubscriptionLocalData, clearSubscriptionUpdateViewDataByTenantId, clearSubscriptionLocalData, getSubscriptionsDetailView, getSubscriptionLocalStoreDataView, getSubscriptionEstimationData, SubscriptionEstimationData, SubscriptionLocalStoreDataView, SubscriptionsDetailView, };
742
739
  export { SupportedFileType, SupportedAttachmentFileType, SupportedTransactionLineAttachmentFileType, SUPPORTED_ATTACHMENT_FILE_TYPES, SUPPORTED_TRANSACTION_LINE_ATTACHMENT_FILE_TYPES, File, AttachmentFile, FilePayload, AttachmentFilePayload, AllowedDocumentType, updateFiles, updateAttachmentFiles, removeAttachmentFiles, toSupportedFileTypeStrict, toSupportedAttachmentFileFormatType, toSupportedAttachmentFileType, toSupportedTransactionLineAttachmentFileType, };