@zeniai/client-epic-state 5.0.88-beta0ND → 5.0.88-betaAR1

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 (92) hide show
  1. package/lib/commonStateTypes/animations.d.ts +1 -1
  2. package/lib/commonStateTypes/animations.js +0 -1
  3. package/lib/entity/company/companyPayload.d.ts +0 -4
  4. package/lib/entity/company/companyPayload.js +0 -4
  5. package/lib/entity/company/companyStateTypes.d.ts +0 -4
  6. package/lib/entity/paymentAccount/paymentAccountSelector.d.ts +0 -1
  7. package/lib/entity/paymentAccount/paymentAccountSelector.js +0 -4
  8. package/lib/entity/tenant/epic/deleteConnectionEpic.d.ts +1 -1
  9. package/lib/entity/tenant/epic/saveAPIKeyConnectionEpic.d.ts +1 -1
  10. package/lib/entity/tenant/epic/saveConnectorCredentialsEpic.d.ts +3 -3
  11. package/lib/entity/tenant/epic/saveOAuthConnectionEpic.d.ts +1 -1
  12. package/lib/entity/tenant/tenantPayload.d.ts +0 -4
  13. package/lib/entity/tenant/tenantReducer.d.ts +27 -40
  14. package/lib/entity/tenant/tenantReducer.js +20 -117
  15. package/lib/entity/tenant/tenantState.d.ts +1 -5
  16. package/lib/epic.d.ts +3 -10
  17. package/lib/epic.js +3 -11
  18. package/lib/esm/commonStateTypes/animations.js +0 -1
  19. package/lib/esm/entity/company/companyPayload.js +0 -4
  20. package/lib/esm/entity/paymentAccount/paymentAccountSelector.js +0 -3
  21. package/lib/esm/entity/tenant/tenantReducer.js +18 -115
  22. package/lib/esm/epic.js +3 -11
  23. package/lib/esm/index.js +10 -13
  24. package/lib/esm/view/dashboard/dashboardReducer.js +1 -11
  25. package/lib/esm/view/expenseAutomationView/transactionFilterHelpers.js +78 -18
  26. package/lib/esm/view/fileView/epic/deleteFileEpic.js +2 -2
  27. package/lib/esm/view/fileView/epic/deleteFileListEpic.js +2 -2
  28. package/lib/esm/view/fileView/epic/updateFileNameEpic.js +2 -2
  29. package/lib/esm/view/onboardingView/customerView/onboardingCustomerViewReducer.js +50 -217
  30. package/lib/esm/view/onboardingView/customerView/onboardingCustomerViewSelector.js +1 -7
  31. package/lib/esm/view/onboardingView/customerView/onboardingCustomerViewState.js +0 -12
  32. package/lib/esm/view/spendManagement/commonSetup/setupViewReducer.js +52 -105
  33. package/lib/esm/view/spendManagement/commonSetup/setupViewSelector.js +1 -6
  34. package/lib/esm/view/spendManagement/treasury/treasurySetUp/epic/updateTreasuryVideoViewedEpic.js +1 -1
  35. package/lib/esm/view/spendManagement/treasury/treasurySetUp/treasurySetupViewReducer.js +1 -45
  36. package/lib/index.d.ts +11 -15
  37. package/lib/index.js +35 -57
  38. package/lib/view/dashboard/dashboardReducer.js +1 -11
  39. package/lib/view/expenseAutomationView/transactionFilterHelpers.js +78 -18
  40. package/lib/view/fileView/epic/deleteFileEpic.js +1 -1
  41. package/lib/view/fileView/epic/deleteFileListEpic.js +1 -1
  42. package/lib/view/fileView/epic/updateFileNameEpic.js +1 -1
  43. package/lib/view/onboardingView/customerView/onboardingCustomerViewPayload.d.ts +0 -3
  44. package/lib/view/onboardingView/customerView/onboardingCustomerViewReducer.d.ts +4 -41
  45. package/lib/view/onboardingView/customerView/onboardingCustomerViewReducer.js +51 -219
  46. package/lib/view/onboardingView/customerView/onboardingCustomerViewSelector.d.ts +1 -5
  47. package/lib/view/onboardingView/customerView/onboardingCustomerViewSelector.js +2 -11
  48. package/lib/view/onboardingView/customerView/onboardingCustomerViewState.d.ts +0 -40
  49. package/lib/view/onboardingView/customerView/onboardingCustomerViewState.js +1 -13
  50. package/lib/view/spendManagement/commonSetup/setupViewReducer.d.ts +2 -28
  51. package/lib/view/spendManagement/commonSetup/setupViewReducer.js +53 -106
  52. package/lib/view/spendManagement/commonSetup/setupViewSelector.d.ts +2 -7
  53. package/lib/view/spendManagement/commonSetup/setupViewSelector.js +1 -6
  54. package/lib/view/spendManagement/commonSetup/setupViewState.d.ts +0 -19
  55. package/lib/view/spendManagement/treasury/treasurySetUp/epic/updateTreasuryVideoViewedEpic.js +1 -1
  56. package/lib/view/spendManagement/treasury/treasurySetUp/treasurySetupViewReducer.d.ts +1 -1
  57. package/lib/view/spendManagement/treasury/treasurySetUp/treasurySetupViewReducer.js +2 -46
  58. package/lib/view/spendManagement/treasury/treasurySetUp/treasurySetupViewState.d.ts +0 -2
  59. package/package.json +1 -1
  60. package/lib/entity/tenant/epic/initEmailConnectOAuthEpic.d.ts +0 -21
  61. package/lib/entity/tenant/epic/initEmailConnectOAuthEpic.js +0 -54
  62. package/lib/esm/entity/tenant/epic/initEmailConnectOAuthEpic.js +0 -50
  63. package/lib/esm/view/onboardingView/customerView/epic/aiAgentsActivation/fetchAiAgentsActivationStatusEpic.js +0 -42
  64. package/lib/esm/view/onboardingView/customerView/epic/customerDetails/acknowledgeOnboardingAiActivationViewedEpic.js +0 -29
  65. package/lib/esm/view/onboardingView/customerView/epic/customerDetails/acknowledgeOnboardingAiFinanceTeamEpic.js +0 -40
  66. package/lib/esm/view/spendManagement/commonSetup/epic/setup/parseUploadedKybDocumentEpic.js +0 -52
  67. package/lib/esm/view/spendManagement/commonSetup/epic/setup/parseUploadedKycDocumentEpic.js +0 -59
  68. package/lib/esm/view/spendManagement/commonSetup/kycKybAutofillActions.js +0 -14
  69. package/lib/esm/view/spendManagement/commonSetup/kycKybParseMapper.js +0 -205
  70. package/lib/esm/view/spendManagement/commonSetup/types/kycKybAutofill.js +0 -28
  71. package/lib/esm/view/spendManagement/treasury/treasurySetUp/epic/updateTreasuryPromoIntroClosedByOutsideClickEpic.js +0 -18
  72. package/lib/esm/view/spendManagement/treasury/treasurySetUp/epic/updateTreasuryPromoRemindMeLaterClickedEpic.js +0 -18
  73. package/lib/view/onboardingView/customerView/epic/aiAgentsActivation/fetchAiAgentsActivationStatusEpic.d.ts +0 -7
  74. package/lib/view/onboardingView/customerView/epic/aiAgentsActivation/fetchAiAgentsActivationStatusEpic.js +0 -46
  75. package/lib/view/onboardingView/customerView/epic/customerDetails/acknowledgeOnboardingAiActivationViewedEpic.d.ts +0 -8
  76. package/lib/view/onboardingView/customerView/epic/customerDetails/acknowledgeOnboardingAiActivationViewedEpic.js +0 -33
  77. package/lib/view/onboardingView/customerView/epic/customerDetails/acknowledgeOnboardingAiFinanceTeamEpic.d.ts +0 -9
  78. package/lib/view/onboardingView/customerView/epic/customerDetails/acknowledgeOnboardingAiFinanceTeamEpic.js +0 -44
  79. package/lib/view/spendManagement/commonSetup/epic/setup/parseUploadedKybDocumentEpic.d.ts +0 -28
  80. package/lib/view/spendManagement/commonSetup/epic/setup/parseUploadedKybDocumentEpic.js +0 -56
  81. package/lib/view/spendManagement/commonSetup/epic/setup/parseUploadedKycDocumentEpic.d.ts +0 -30
  82. package/lib/view/spendManagement/commonSetup/epic/setup/parseUploadedKycDocumentEpic.js +0 -63
  83. package/lib/view/spendManagement/commonSetup/kycKybAutofillActions.d.ts +0 -33
  84. package/lib/view/spendManagement/commonSetup/kycKybAutofillActions.js +0 -17
  85. package/lib/view/spendManagement/commonSetup/kycKybParseMapper.d.ts +0 -24
  86. package/lib/view/spendManagement/commonSetup/kycKybParseMapper.js +0 -213
  87. package/lib/view/spendManagement/commonSetup/types/kycKybAutofill.d.ts +0 -125
  88. package/lib/view/spendManagement/commonSetup/types/kycKybAutofill.js +0 -32
  89. package/lib/view/spendManagement/treasury/treasurySetUp/epic/updateTreasuryPromoIntroClosedByOutsideClickEpic.d.ts +0 -8
  90. package/lib/view/spendManagement/treasury/treasurySetUp/epic/updateTreasuryPromoIntroClosedByOutsideClickEpic.js +0 -22
  91. package/lib/view/spendManagement/treasury/treasurySetUp/epic/updateTreasuryPromoRemindMeLaterClickedEpic.d.ts +0 -8
  92. package/lib/view/spendManagement/treasury/treasurySetUp/epic/updateTreasuryPromoRemindMeLaterClickedEpic.js +0 -22
@@ -1,2 +1,2 @@
1
- export declare const toAnimationsFileName: (v: string) => "Success" | "AiAgent" | "AiIconEntry" | "AiIconExit" | "AiIconLoop" | "AiStar" | "AiStarIcon" | "AiStarPlain" | "AIPoweredInvoiceDark" | "AIPoweredInvoiceLight" | "Angry" | "AutoTransfer" | "CloseCard" | "Confetti" | "ConfettiSuccess" | "DashboardChristmasSnow" | "DashboardNewYearShow" | "DashboardSidebarBottomChristmas" | "DashboardSidebarBottomHalloween" | "DashboardSidebarBottomNewYear" | "DashboardSidebarBottomThanksgiving" | "DashboardSidebarTopChristmas" | "DashboardSidebarTopHalloween" | "DashboardSidebarTopNewYear" | "DashboardSidebarTopThanksgiving" | "Distribution" | "DistributionDark" | "EarnYield" | "FastestWayDark" | "FastestWayLight" | "FinanceTeamDark" | "FinanceTeamLight" | "Happy" | "Liquidity" | "LockCard" | "MoneyTransferSuccess" | "MultiLevelApprovalDark" | "MultiLevelApprovalLight" | "NotHappy" | "Protection" | "ReceiptDark" | "ReceiptLight" | "Recurring" | "RecurringDark" | "ReimburseDark" | "ReimburseLight" | "RewardsDark" | "RewardsDarkHover" | "RewardsLight" | "RewardsLightHover" | "Ripple" | "Secure" | "Target" | "TargetDark" | "UnlockCard" | "VeryHappy" | "Welcome" | "ZeniAssist";
1
+ export declare const toAnimationsFileName: (v: string) => "Success" | "AiAgent" | "AiIconEntry" | "AiIconExit" | "AiIconLoop" | "AiStar" | "AiStarIcon" | "AiStarPlain" | "AIPoweredInvoiceDark" | "AIPoweredInvoiceLight" | "Angry" | "AutoTransfer" | "CloseCard" | "Confetti" | "ConfettiSuccess" | "DashboardChristmasSnow" | "DashboardNewYearShow" | "DashboardSidebarBottomChristmas" | "DashboardSidebarBottomHalloween" | "DashboardSidebarBottomNewYear" | "DashboardSidebarBottomThanksgiving" | "DashboardSidebarTopChristmas" | "DashboardSidebarTopHalloween" | "DashboardSidebarTopNewYear" | "DashboardSidebarTopThanksgiving" | "Distribution" | "DistributionDark" | "EarnYield" | "FastestWayDark" | "FastestWayLight" | "FinanceTeamDark" | "FinanceTeamLight" | "Happy" | "Liquidity" | "LockCard" | "MoneyTransferSuccess" | "MultiLevelApprovalDark" | "MultiLevelApprovalLight" | "NotHappy" | "Protection" | "ReceiptDark" | "ReceiptLight" | "Recurring" | "RecurringDark" | "ReimburseDark" | "ReimburseLight" | "RewardsDark" | "RewardsDarkHover" | "RewardsLight" | "RewardsLightHover" | "Ripple" | "Secure" | "Target" | "TargetDark" | "UnlockCard" | "VeryHappy" | "ZeniAssist";
2
2
  export type AnimationFileName = ReturnType<typeof toAnimationsFileName>;
@@ -59,7 +59,6 @@ const ALL_ANIMATIONS_FILE_NAMES = [
59
59
  'TargetDark',
60
60
  'UnlockCard',
61
61
  'VeryHappy',
62
- 'Welcome',
63
62
  'ZeniAssist',
64
63
  ];
65
64
  const toAnimationsFileName = (v) => (0, stringToUnion_1.stringToUnion)(v, ALL_ANIMATIONS_FILE_NAMES);
@@ -320,10 +320,6 @@ interface CompanyOnboardingInfoPayload {
320
320
  is_subsidiary: boolean;
321
321
  onboarding_user_ids: ID[];
322
322
  parent_company_id: ID | null;
323
- is_onboarding_ai_activation_viewed?: boolean;
324
- is_onboarding_ai_finance_team_acknowledged?: boolean;
325
- onboarding_ai_activation_viewed_by?: ID[];
326
- onboarding_ai_finance_team_acknowledged_by?: ID[];
327
323
  onboarding_info?: OnboardingInfoPayload;
328
324
  subscription_billing_address_id?: ID;
329
325
  }
@@ -333,11 +333,7 @@ const toCompanyOnboardingInfo = (payload) => ({
333
333
  onboardingUserIds: payload.onboarding_user_ids,
334
334
  isSubsidiary: payload.is_subsidiary,
335
335
  parentCompanyId: payload.parent_company_id != null ? payload.parent_company_id : undefined,
336
- isOnboardingAiFinanceTeamAcknowledged: payload.is_onboarding_ai_finance_team_acknowledged ?? false,
337
- isOnboardingAiActivationViewed: payload.is_onboarding_ai_activation_viewed ?? false,
338
336
  isOnboardingCompanyDetailsCompleted: payload.is_onboarding_company_details_step_completed,
339
- onboardingAiFinanceTeamAcknowledgedBy: payload.onboarding_ai_finance_team_acknowledged_by ?? [],
340
- onboardingAiActivationViewedBy: payload.onboarding_ai_activation_viewed_by ?? [],
341
337
  onboardingInfo: (0, exports.toOnboardingInfo)(payload.onboarding_info),
342
338
  isOnboardingCompleted: payload.is_onboarding_completed,
343
339
  subscriptionBillingAddressId: payload.subscription_billing_address_id,
@@ -323,13 +323,9 @@ export interface OnboardingInfo extends OnboardingStepsInfo {
323
323
  onboardingToQuoteSignMinutes?: number;
324
324
  }
325
325
  export interface CompanyOnboardingInfo {
326
- isOnboardingAiActivationViewed: boolean;
327
- isOnboardingAiFinanceTeamAcknowledged: boolean;
328
326
  isOnboardingCompanyDetailsCompleted: boolean;
329
327
  isOnboardingCompleted: boolean;
330
328
  isSubsidiary: boolean;
331
- onboardingAiActivationViewedBy: ID[];
332
- onboardingAiFinanceTeamAcknowledgedBy: ID[];
333
329
  onboardingUserIds: ID[];
334
330
  onboardingInfo?: OnboardingInfo;
335
331
  parentCompanyId?: ID;
@@ -4,4 +4,3 @@ export declare function getPaymentAccountsByPaymentAccountIds(paymentAccountStat
4
4
  export declare function getPaymentAccountByPaymentAccountId(paymentAccountState: PaymentAccountState, PaymentAccountId: ID): PaymentAccount | undefined;
5
5
  export declare function getPaymentAccountByBankAccountId(paymentAccountState: PaymentAccountState, bankAccountId: ID): PaymentAccount | undefined;
6
6
  export declare function getPaymentAccountsByBankAccountIds(paymentAccountState: PaymentAccountState, bankAccountIds: ID[]): PaymentAccount[];
7
- export declare function getPlaidPaymentAccounts(paymentAccountState: PaymentAccountState): PaymentAccount[];
@@ -7,7 +7,6 @@ exports.getPaymentAccountsByPaymentAccountIds = getPaymentAccountsByPaymentAccou
7
7
  exports.getPaymentAccountByPaymentAccountId = getPaymentAccountByPaymentAccountId;
8
8
  exports.getPaymentAccountByBankAccountId = getPaymentAccountByBankAccountId;
9
9
  exports.getPaymentAccountsByBankAccountIds = getPaymentAccountsByBankAccountIds;
10
- exports.getPlaidPaymentAccounts = getPlaidPaymentAccounts;
11
10
  const get_1 = __importDefault(require("lodash/get"));
12
11
  const values_1 = __importDefault(require("lodash/values"));
13
12
  function getPaymentAccountsByPaymentAccountIds(paymentAccountState, paymentAccountIds) {
@@ -29,6 +28,3 @@ function getPaymentAccountsByBankAccountIds(paymentAccountState, bankAccountIds)
29
28
  .filter((value) => value != null);
30
29
  return paymentAccounts;
31
30
  }
32
- function getPlaidPaymentAccounts(paymentAccountState) {
33
- return (0, values_1.default)(paymentAccountState.paymentAccountByID).filter((account) => account.provider === 'plaid');
34
- }
@@ -7,7 +7,7 @@ export declare const deleteConnectionEpic: (actions$: ActionsObservable<ActionTy
7
7
  payload: {
8
8
  tenantId: string;
9
9
  connectionId: string;
10
- connectionType: "revenue" | "email" | "payments";
10
+ connectionType: "revenue" | "payments";
11
11
  };
12
12
  type: "tenant/deleteConnectionSuccess";
13
13
  } | {
@@ -6,7 +6,7 @@ export type ActionType = ReturnType<typeof saveAPIKeyConnection> | ReturnType<ty
6
6
  export declare const saveAPIKeyConnectionEpic: (actions$: ActionsObservable<ActionType>, _: StateObservable<RootState>, zeniAPI: ZeniAPI) => import("rxjs").Observable<{
7
7
  payload: {
8
8
  tenantId: string;
9
- connectionType: "revenue" | "email" | "payments";
9
+ connectionType: "revenue" | "payments";
10
10
  connectionPayload: import("../tenantPayload").ConnectionDataPayload;
11
11
  };
12
12
  type: "tenant/saveAPIKeyConnectionSuccess";
@@ -6,15 +6,15 @@ export type ActionType = ReturnType<typeof saveConnectorCredentials> | ReturnTyp
6
6
  export declare const saveConnectorCredentialsEpic: (actions$: ActionsObservable<ActionType>, _state$: StateObservable<RootState>, zeniAPI: ZeniAPI) => import("rxjs").Observable<{
7
7
  payload: {
8
8
  tenantId: string;
9
- connectionType: "revenue" | "email" | "payments";
10
- connectionName: "chargebee" | "hubspot" | "stripe" | "mercury" | "paypal" | "gmail" | "outlook";
9
+ connectionType: "revenue" | "payments";
10
+ connectionName: "chargebee" | "hubspot" | "stripe" | "mercury" | "paypal";
11
11
  connectionPayload: import("../tenantPayload").ConnectionDataPayload;
12
12
  };
13
13
  type: "tenant/saveConnectorCredentialsSuccess";
14
14
  } | {
15
15
  payload: {
16
16
  tenantId: string;
17
- connectionName: "chargebee" | "hubspot" | "stripe" | "mercury" | "paypal" | "gmail" | "outlook";
17
+ connectionName: "chargebee" | "hubspot" | "stripe" | "mercury" | "paypal";
18
18
  status: import("../../../responsePayload").ZeniAPIStatus<Record<string, unknown>>;
19
19
  };
20
20
  type: "tenant/saveConnectorCredentialsFailure";
@@ -6,7 +6,7 @@ export type ActionType = ReturnType<typeof saveOAuthConnection> | ReturnType<typ
6
6
  export declare const saveOAuthConnectionEpic: (actions$: ActionsObservable<ActionType>, _: StateObservable<RootState>, zeniAPI: ZeniAPI) => import("rxjs").Observable<{
7
7
  payload: {
8
8
  tenantId: string;
9
- connectionType: "revenue" | "email" | "payments";
9
+ connectionType: "revenue" | "payments";
10
10
  connectionPayload: import("../tenantPayload").ConnectionDataPayload;
11
11
  };
12
12
  type: "tenant/saveOAuthConnectionSuccess";
@@ -19,10 +19,7 @@ export interface TenantsData {
19
19
  */
20
20
  export interface TenantUserPayload {
21
21
  rewards_feature_last_viewed_time: string | null;
22
- is_treasury_promo_intro_closed_by_outside_click?: boolean;
23
22
  is_treasury_promo_video_played?: boolean;
24
- is_treasury_promo_video_remind_me_later_clicked?: boolean;
25
- login_counter_for_treasury_promo_video?: number;
26
23
  }
27
24
  interface TenantPayload {
28
25
  accounting_class_ids: string[];
@@ -161,7 +158,6 @@ interface ConnectionsPayload {
161
158
  connections: {
162
159
  accounting: ConnectionDataPayload[];
163
160
  payments: ConnectionDataPayload[];
164
- email?: ConnectionDataPayload[];
165
161
  revenue?: ConnectionDataPayload[];
166
162
  };
167
163
  }
@@ -13,9 +13,9 @@ export interface DoSignInPayload {
13
13
  redirectUri: ZeniUrl;
14
14
  sourceUri: ZeniUrl;
15
15
  }
16
- export declare const toExternalIntegrationType: (v: string) => "revenue" | "email" | "payments";
16
+ export declare const toExternalIntegrationType: (v: string) => "revenue" | "payments";
17
17
  export type ExternalIntegrationType = ReturnType<typeof toExternalIntegrationType>;
18
- export declare const toExternalSupportedTool: (v: string) => "chargebee" | "hubspot" | "stripe" | "mercury" | "paypal" | "gmail" | "outlook";
18
+ export declare const toExternalSupportedTool: (v: string) => "chargebee" | "hubspot" | "stripe" | "mercury" | "paypal";
19
19
  export type ExternalSupportedTool = ReturnType<typeof toExternalSupportedTool>;
20
20
  export type ConnectorCredentialsBySlug = {
21
21
  connectionName: 'stripe';
@@ -101,26 +101,26 @@ export declare const updateTenants: import("@reduxjs/toolkit").ActionCreatorWith
101
101
  }, "tenant/fetchExternalConnectionsFailure", never, never>, fetchExternalConnectionsSuccess: import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<[tenantId: string, externalConnections: ConnectionsPayload], {
102
102
  tenantId: string;
103
103
  externalConnections: ConnectionsPayload;
104
- }, "tenant/fetchExternalConnectionsSuccess", never, never>, saveAPIKeyConnection: import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<[tenantId: string, connectionId: string, connectionType: "revenue" | "email" | "payments", connectionName: "chargebee" | "hubspot" | "stripe" | "mercury" | "paypal" | "gmail" | "outlook", credentials: {
104
+ }, "tenant/fetchExternalConnectionsSuccess", never, never>, saveAPIKeyConnection: import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<[tenantId: string, connectionId: string, connectionType: "revenue" | "payments", connectionName: "chargebee" | "hubspot" | "stripe" | "mercury" | "paypal", credentials: {
105
105
  api_key: string;
106
106
  site: string;
107
107
  }], {
108
108
  tenantId: string;
109
109
  connectionId: string;
110
- connectionType: "revenue" | "email" | "payments";
111
- connectionName: "chargebee" | "hubspot" | "stripe" | "mercury" | "paypal" | "gmail" | "outlook";
110
+ connectionType: "revenue" | "payments";
111
+ connectionName: "chargebee" | "hubspot" | "stripe" | "mercury" | "paypal";
112
112
  credentials: {
113
113
  api_key: string;
114
114
  site: string;
115
115
  };
116
- }, "tenant/saveAPIKeyConnection", never, never>, saveAPIKeyConnectionSuccess: import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<[tenantId: string, connectionType: "revenue" | "email" | "payments", connectionPayload: ConnectionDataPayload], {
116
+ }, "tenant/saveAPIKeyConnection", never, never>, saveAPIKeyConnectionSuccess: import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<[tenantId: string, connectionType: "revenue" | "payments", connectionPayload: ConnectionDataPayload], {
117
117
  tenantId: string;
118
- connectionType: "revenue" | "email" | "payments";
118
+ connectionType: "revenue" | "payments";
119
119
  connectionPayload: ConnectionDataPayload;
120
120
  }, "tenant/saveAPIKeyConnectionSuccess", never, never>, saveAPIKeyConnectionFailure: import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<[tenantId: string, status: ZeniAPIStatus<Record<string, unknown>>], {
121
121
  tenantId: string;
122
122
  status: ZeniAPIStatus<Record<string, unknown>>;
123
- }, "tenant/saveAPIKeyConnectionFailure", never, never>, saveOAuthConnection: import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<[tenantId: string, connectionId: string, connectionType: "revenue" | "email" | "payments", connectionName: "chargebee" | "hubspot" | "stripe" | "mercury" | "paypal" | "gmail" | "outlook", credentials: {
123
+ }, "tenant/saveAPIKeyConnectionFailure", never, never>, saveOAuthConnection: import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<[tenantId: string, connectionId: string, connectionType: "revenue" | "payments", connectionName: "chargebee" | "hubspot" | "stripe" | "mercury" | "paypal", credentials: {
124
124
  authorization_code: string;
125
125
  client_id: string;
126
126
  client_secret: string;
@@ -128,35 +128,35 @@ export declare const updateTenants: import("@reduxjs/toolkit").ActionCreatorWith
128
128
  }], {
129
129
  tenantId: string;
130
130
  connectionId: string;
131
- connectionType: "revenue" | "email" | "payments";
132
- connectionName: "chargebee" | "hubspot" | "stripe" | "mercury" | "paypal" | "gmail" | "outlook";
131
+ connectionType: "revenue" | "payments";
132
+ connectionName: "chargebee" | "hubspot" | "stripe" | "mercury" | "paypal";
133
133
  credentials: {
134
134
  authorization_code: string;
135
135
  client_id: string;
136
136
  client_secret: string;
137
137
  redirect_uri: string;
138
138
  };
139
- }, "tenant/saveOAuthConnection", never, never>, saveOAuthConnectionSuccess: import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<[tenantId: string, connectionType: "revenue" | "email" | "payments", connectionPayload: ConnectionDataPayload], {
139
+ }, "tenant/saveOAuthConnection", never, never>, saveOAuthConnectionSuccess: import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<[tenantId: string, connectionType: "revenue" | "payments", connectionPayload: ConnectionDataPayload], {
140
140
  tenantId: string;
141
- connectionType: "revenue" | "email" | "payments";
141
+ connectionType: "revenue" | "payments";
142
142
  connectionPayload: ConnectionDataPayload;
143
143
  }, "tenant/saveOAuthConnectionSuccess", never, never>, saveOAuthConnectionFailure: import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<[tenantId: string, status: ZeniAPIStatus<Record<string, unknown>>], {
144
144
  tenantId: string;
145
145
  status: ZeniAPIStatus<Record<string, unknown>>;
146
- }, "tenant/saveOAuthConnectionFailure", never, never>, saveConnectorCredentials: import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<[tenantId: string, connectionType: "revenue" | "email" | "payments", args: ConnectorCredentialsBySlug], {
146
+ }, "tenant/saveOAuthConnectionFailure", never, never>, saveConnectorCredentials: import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<[tenantId: string, connectionType: "revenue" | "payments", args: ConnectorCredentialsBySlug], {
147
147
  connectionName: "stripe";
148
148
  credentials: {
149
149
  api_key: string;
150
150
  };
151
151
  tenantId: string;
152
- connectionType: "revenue" | "email" | "payments";
152
+ connectionType: "revenue" | "payments";
153
153
  } | {
154
154
  connectionName: "mercury";
155
155
  credentials: {
156
156
  api_key: string;
157
157
  };
158
158
  tenantId: string;
159
- connectionType: "revenue" | "email" | "payments";
159
+ connectionType: "revenue" | "payments";
160
160
  } | {
161
161
  connectionName: "paypal";
162
162
  credentials: {
@@ -164,36 +164,24 @@ export declare const updateTenants: import("@reduxjs/toolkit").ActionCreatorWith
164
164
  client_secret: string;
165
165
  };
166
166
  tenantId: string;
167
- connectionType: "revenue" | "email" | "payments";
168
- }, "tenant/saveConnectorCredentials", never, never>, saveConnectorCredentialsSuccess: import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<[tenantId: string, connectionType: "revenue" | "email" | "payments", connectionName: "chargebee" | "hubspot" | "stripe" | "mercury" | "paypal" | "gmail" | "outlook", connectionPayload: ConnectionDataPayload], {
167
+ connectionType: "revenue" | "payments";
168
+ }, "tenant/saveConnectorCredentials", never, never>, saveConnectorCredentialsSuccess: import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<[tenantId: string, connectionType: "revenue" | "payments", connectionName: "chargebee" | "hubspot" | "stripe" | "mercury" | "paypal", connectionPayload: ConnectionDataPayload], {
169
169
  tenantId: string;
170
- connectionType: "revenue" | "email" | "payments";
171
- connectionName: "chargebee" | "hubspot" | "stripe" | "mercury" | "paypal" | "gmail" | "outlook";
170
+ connectionType: "revenue" | "payments";
171
+ connectionName: "chargebee" | "hubspot" | "stripe" | "mercury" | "paypal";
172
172
  connectionPayload: ConnectionDataPayload;
173
- }, "tenant/saveConnectorCredentialsSuccess", never, never>, saveConnectorCredentialsFailure: import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<[tenantId: string, connectionName: "chargebee" | "hubspot" | "stripe" | "mercury" | "paypal" | "gmail" | "outlook", status: ZeniAPIStatus<Record<string, unknown>>], {
173
+ }, "tenant/saveConnectorCredentialsSuccess", never, never>, saveConnectorCredentialsFailure: import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<[tenantId: string, connectionName: "chargebee" | "hubspot" | "stripe" | "mercury" | "paypal", status: ZeniAPIStatus<Record<string, unknown>>], {
174
174
  tenantId: string;
175
- connectionName: "chargebee" | "hubspot" | "stripe" | "mercury" | "paypal" | "gmail" | "outlook";
175
+ connectionName: "chargebee" | "hubspot" | "stripe" | "mercury" | "paypal";
176
176
  status: ZeniAPIStatus<Record<string, unknown>>;
177
- }, "tenant/saveConnectorCredentialsFailure", never, never>, initEmailConnectOAuth: import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<[tenantId: string, provider: "gmail" | "outlook", redirectAfterUrl: string], {
178
- tenantId: string;
179
- provider: "gmail" | "outlook";
180
- redirectAfterUrl: string;
181
- }, "tenant/initEmailConnectOAuth", never, never>, initEmailConnectOAuthSuccess: import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<[tenantId: string, provider: "gmail" | "outlook", authorizationUrl: string], {
182
- tenantId: string;
183
- provider: "gmail" | "outlook";
184
- authorizationUrl: string;
185
- }, "tenant/initEmailConnectOAuthSuccess", never, never>, initEmailConnectOAuthFailure: import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<[tenantId: string, provider: "gmail" | "outlook", status: ZeniAPIStatus<Record<string, unknown>>], {
186
- tenantId: string;
187
- provider: "gmail" | "outlook";
188
- status: ZeniAPIStatus<Record<string, unknown>>;
189
- }, "tenant/initEmailConnectOAuthFailure", never, never>, deleteConnection: import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<[tenantId: string, connectionId: string, connectionType: "revenue" | "email" | "payments"], {
177
+ }, "tenant/saveConnectorCredentialsFailure", never, never>, deleteConnection: import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<[tenantId: string, connectionId: string, connectionType: "revenue" | "payments"], {
190
178
  tenantId: string;
191
179
  connectionId: string;
192
- connectionType: "revenue" | "email" | "payments";
193
- }, "tenant/deleteConnection", never, never>, deleteConnectionSuccess: import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<[tenantId: string, connectionId: string, connectionType: "revenue" | "email" | "payments"], {
180
+ connectionType: "revenue" | "payments";
181
+ }, "tenant/deleteConnection", never, never>, deleteConnectionSuccess: import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<[tenantId: string, connectionId: string, connectionType: "revenue" | "payments"], {
194
182
  tenantId: string;
195
183
  connectionId: string;
196
- connectionType: "revenue" | "email" | "payments";
184
+ connectionType: "revenue" | "payments";
197
185
  }, "tenant/deleteConnectionSuccess", never, never>, deleteConnectionFailure: import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<[tenantId: string, status: ZeniAPIStatus<Record<string, unknown>>], {
198
186
  tenantId: string;
199
187
  status: ZeniAPIStatus<Record<string, unknown>>;
@@ -210,7 +198,7 @@ export declare const updateTenants: import("@reduxjs/toolkit").ActionCreatorWith
210
198
  }, "tenant/updateSubscriptionSummaryForTenantFailure", never, never>, updateOnboardingTenants: import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<[tenants: TenantPayload[], tenantUpdated?: any], {
211
199
  tenants: TenantPayload[];
212
200
  tenantUpdated: any;
213
- }, "tenant/updateOnboardingTenants", never, never>, removeOnboardingTenant: import("@reduxjs/toolkit").ActionCreatorWithPayload<string, "tenant/removeOnboardingTenant">, updateTenantReimbursementInfo: import("@reduxjs/toolkit").ActionCreatorWithPayload<UserRolePayload, "tenant/updateTenantReimbursementInfo">, updateReferViewedForLoggedInUser: import("@reduxjs/toolkit").ActionCreatorWithoutPayload<"tenant/updateReferViewedForLoggedInUser">, resetSignInState: import("@reduxjs/toolkit").ActionCreatorWithoutPayload<"tenant/resetSignInState">, trigger2FA: import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<[otpChallenge: string, userEmail: string, twoFAPhoneNumber: string], {
201
+ }, "tenant/updateOnboardingTenants", never, never>, removeOnboardingTenant: import("@reduxjs/toolkit").ActionCreatorWithPayload<string, "tenant/removeOnboardingTenant">, updateTenantReimbursementInfo: import("@reduxjs/toolkit").ActionCreatorWithPayload<UserRolePayload, "tenant/updateTenantReimbursementInfo">, updateReferViewedForLoggedInUser: import("@reduxjs/toolkit").ActionCreatorWithoutPayload<"tenant/updateReferViewedForLoggedInUser">, updateTreasuryVideoViewedForLoggedInUser: import("@reduxjs/toolkit").ActionCreatorWithoutPayload<"tenant/updateTreasuryVideoViewedForLoggedInUser">, resetSignInState: import("@reduxjs/toolkit").ActionCreatorWithoutPayload<"tenant/resetSignInState">, trigger2FA: import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<[otpChallenge: string, userEmail: string, twoFAPhoneNumber: string], {
214
202
  otpChallenge: string;
215
203
  userEmail: string;
216
204
  twoFAPhoneNumber: string;
@@ -232,7 +220,7 @@ export declare const updateTenants: import("@reduxjs/toolkit").ActionCreatorWith
232
220
  }, "tenant/verifyDeviceWithTwoFA", never, never>, verifyDeviceWithTwoFASuccess: import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<[userId: string, sessionId: string], {
233
221
  userId: string;
234
222
  sessionId: string;
235
- }, "tenant/verifyDeviceWithTwoFASuccess", never, never>, verifyDeviceWithTwoFAFailure: import("@reduxjs/toolkit").ActionCreatorWithPayload<ZeniAPIStatus<Record<string, unknown>>, "tenant/verifyDeviceWithTwoFAFailure">, updateTreasuryVideoViewedForLoggedInUser: import("@reduxjs/toolkit").ActionCreatorWithoutPayload<"tenant/updateTreasuryVideoViewedForLoggedInUser">, updateTreasuryPromoRemindMeLaterClickedForLoggedInUser: import("@reduxjs/toolkit").ActionCreatorWithoutPayload<"tenant/updateTreasuryPromoRemindMeLaterClickedForLoggedInUser">, updateTreasuryPromoIntroClosedByOutsideClickForLoggedInUser: import("@reduxjs/toolkit").ActionCreatorWithoutPayload<"tenant/updateTreasuryPromoIntroClosedByOutsideClickForLoggedInUser">, resendVerifyDeviceOTP: import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<[deviceId: string, magicLinkEmail: string, otpChallenge: string], {
223
+ }, "tenant/verifyDeviceWithTwoFASuccess", never, never>, verifyDeviceWithTwoFAFailure: import("@reduxjs/toolkit").ActionCreatorWithPayload<ZeniAPIStatus<Record<string, unknown>>, "tenant/verifyDeviceWithTwoFAFailure">, resendVerifyDeviceOTP: import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<[deviceId: string, magicLinkEmail: string, otpChallenge: string], {
236
224
  deviceId: string;
237
225
  magicLinkEmail: string;
238
226
  otpChallenge: string;
@@ -252,7 +240,6 @@ export declare const toRoleResource: (payload: RoleResourcePayload) => RoleResou
252
240
  */
253
241
  export declare function mapConnectionsPayloadToState(connectionsPayload: ConnectionsPayload): {
254
242
  accounting: Connection[];
255
- email: Connection[];
256
243
  payments: Connection[];
257
244
  revenue: Connection[];
258
245
  };
@@ -4,8 +4,8 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  };
5
5
  var _a;
6
6
  Object.defineProperty(exports, "__esModule", { value: true });
7
- exports.clearAll = exports.deleteConnectionFailure = exports.deleteConnectionSuccess = exports.deleteConnection = exports.initEmailConnectOAuthFailure = exports.initEmailConnectOAuthSuccess = exports.initEmailConnectOAuth = exports.saveConnectorCredentialsFailure = exports.saveConnectorCredentialsSuccess = exports.saveConnectorCredentials = exports.saveOAuthConnectionFailure = exports.saveOAuthConnectionSuccess = exports.saveOAuthConnection = exports.saveAPIKeyConnectionFailure = exports.saveAPIKeyConnectionSuccess = exports.saveAPIKeyConnection = exports.fetchExternalConnectionsSuccess = exports.fetchExternalConnectionsFailure = exports.saveExternalConnectionFailure = exports.saveExternalConnectionSuccess = exports.saveExternalConnection = exports.fetchExternalConnections = exports.updateLoggedInUser = exports.sessionHeartbeatFailure = exports.sessionHeartbeatSuccess = exports.sendSessionHeartbeat = exports.signOutSuccess = exports.doSignOut = exports.updateSignInState = exports.sendEmailMagicLinkToUserFailure = exports.sendEmailMagicLinkToUserSuccess = exports.sendEmailMagicLinkToUser = exports.magicLinkSignInFailure = exports.magicLinkSignInSuccess = exports.doMagicLinkSignIn = exports.doSignIn = exports.updateExcludedResourcesFailure = exports.updateExcludedResourcesSuccess = exports.fetchExcludedResources = exports.updateCurrentTenant = exports.updateTenantFailure = exports.updateTenantSuccess = exports.fetchActiveTenant = exports.updateTenantsFailure = exports.updateTenantsSuccess = exports.fetchAllTenants = exports.updateTenants = exports.initialState = exports.toExternalSupportedTool = exports.toExternalIntegrationType = void 0;
8
- exports.toConnection = exports.toRoleResource = exports.resendVerifyDeviceOTPFailure = exports.resendVerifyDeviceOTPSuccess = exports.resendVerifyDeviceOTP = exports.updateTreasuryPromoIntroClosedByOutsideClickForLoggedInUser = exports.updateTreasuryPromoRemindMeLaterClickedForLoggedInUser = exports.updateTreasuryVideoViewedForLoggedInUser = exports.verifyDeviceWithTwoFAFailure = exports.verifyDeviceWithTwoFASuccess = exports.verifyDeviceWithTwoFA = exports.updateTenantMasterTOSInfo = exports.updateTenantCapitalizationThreshold = exports.updateTenantCapitalizationOnboardingDismissed = exports.updateTenantAccountingClassesEnabled = exports.trigger2FA = exports.resetSignInState = exports.updateReferViewedForLoggedInUser = exports.updateTenantReimbursementInfo = exports.removeOnboardingTenant = exports.updateOnboardingTenants = exports.updateSubscriptionSummaryForTenantFailure = exports.updateSubscriptionSummaryForTenantSuccess = exports.fetchSubscriptionSummaryForTenant = void 0;
7
+ exports.updateSubscriptionSummaryForTenantFailure = exports.updateSubscriptionSummaryForTenantSuccess = exports.fetchSubscriptionSummaryForTenant = exports.clearAll = exports.deleteConnectionFailure = exports.deleteConnectionSuccess = exports.deleteConnection = exports.saveConnectorCredentialsFailure = exports.saveConnectorCredentialsSuccess = exports.saveConnectorCredentials = exports.saveOAuthConnectionFailure = exports.saveOAuthConnectionSuccess = exports.saveOAuthConnection = exports.saveAPIKeyConnectionFailure = exports.saveAPIKeyConnectionSuccess = exports.saveAPIKeyConnection = exports.fetchExternalConnectionsSuccess = exports.fetchExternalConnectionsFailure = exports.saveExternalConnectionFailure = exports.saveExternalConnectionSuccess = exports.saveExternalConnection = exports.fetchExternalConnections = exports.updateLoggedInUser = exports.sessionHeartbeatFailure = exports.sessionHeartbeatSuccess = exports.sendSessionHeartbeat = exports.signOutSuccess = exports.doSignOut = exports.updateSignInState = exports.sendEmailMagicLinkToUserFailure = exports.sendEmailMagicLinkToUserSuccess = exports.sendEmailMagicLinkToUser = exports.magicLinkSignInFailure = exports.magicLinkSignInSuccess = exports.doMagicLinkSignIn = exports.doSignIn = exports.updateExcludedResourcesFailure = exports.updateExcludedResourcesSuccess = exports.fetchExcludedResources = exports.updateCurrentTenant = exports.updateTenantFailure = exports.updateTenantSuccess = exports.fetchActiveTenant = exports.updateTenantsFailure = exports.updateTenantsSuccess = exports.fetchAllTenants = exports.updateTenants = exports.initialState = exports.toExternalSupportedTool = exports.toExternalIntegrationType = void 0;
8
+ exports.toConnection = exports.toRoleResource = exports.resendVerifyDeviceOTPFailure = exports.resendVerifyDeviceOTPSuccess = exports.resendVerifyDeviceOTP = exports.verifyDeviceWithTwoFAFailure = exports.verifyDeviceWithTwoFASuccess = exports.verifyDeviceWithTwoFA = exports.updateTenantMasterTOSInfo = exports.updateTenantCapitalizationThreshold = exports.updateTenantCapitalizationOnboardingDismissed = exports.updateTenantAccountingClassesEnabled = exports.trigger2FA = exports.resetSignInState = exports.updateTreasuryVideoViewedForLoggedInUser = exports.updateReferViewedForLoggedInUser = exports.updateTenantReimbursementInfo = exports.removeOnboardingTenant = exports.updateOnboardingTenants = void 0;
9
9
  exports.mapCapitalizableAccountsPayload = mapCapitalizableAccountsPayload;
10
10
  exports.mapConnectionsPayloadToState = mapConnectionsPayloadToState;
11
11
  const toolkit_1 = require("@reduxjs/toolkit");
@@ -19,7 +19,7 @@ const netBurnOrIncomeStoryCardState_1 = require("../../view/netBurnOrIncomeStory
19
19
  const zeniDayJS_1 = require("../../zeniDayJS");
20
20
  const subscriptionSummaryReducer_1 = require("../subscription/subscriptionSummary/subscriptionSummaryReducer");
21
21
  const userRolePayload_1 = require("../userRole/userRolePayload");
22
- const EXTERNAL_INTEGRATION_TYPES = ['revenue', 'payments', 'email'];
22
+ const EXTERNAL_INTEGRATION_TYPES = ['revenue', 'payments'];
23
23
  const toExternalIntegrationType = (v) => (0, stringToUnion_1.stringToUnion)(v, EXTERNAL_INTEGRATION_TYPES);
24
24
  exports.toExternalIntegrationType = toExternalIntegrationType;
25
25
  const EXTERNAL_SUPPORTED_TOOLS = [
@@ -28,8 +28,6 @@ const EXTERNAL_SUPPORTED_TOOLS = [
28
28
  'stripe',
29
29
  'mercury',
30
30
  'paypal',
31
- 'gmail',
32
- 'outlook',
33
31
  ];
34
32
  const toExternalSupportedTool = (v) => (0, stringToUnion_1.stringToUnion)(v, EXTERNAL_SUPPORTED_TOOLS);
35
33
  exports.toExternalSupportedTool = toExternalSupportedTool;
@@ -92,13 +90,10 @@ const tenant = (0, toolkit_1.createSlice)({
92
90
  (newTenant != null && action.payload.tenantUpdated)) {
93
91
  // Note: If tenant data already exists, save it if the new data is the latest one.
94
92
  // we dont want to overwrite the user related data since that has not come in the output
95
- draft.tenantsById[tenantPayload.tenant_id] =
96
- applyTreasuryPromoUserFieldsFromPayload(tenantInStore, {
97
- ...newTenant,
98
- rewardsLastViewedTime: tenantInStore?.rewardsLastViewedTime,
99
- }, action.payload.userTenantPayload ?? {
100
- rewards_feature_last_viewed_time: null,
101
- });
93
+ draft.tenantsById[tenantPayload.tenant_id] = {
94
+ ...newTenant,
95
+ rewardsLastViewedTime: tenantInStore?.rewardsLastViewedTime,
96
+ };
102
97
  }
103
98
  });
104
99
  },
@@ -125,8 +120,13 @@ const tenant = (0, toolkit_1.createSlice)({
125
120
  draft.fetchState = 'Completed';
126
121
  draft.error = undefined;
127
122
  const [tenantsbyId, tenantIds, firstUser] = mapTenantsPayloadToState(tenants, user);
123
+ // Preserve existing isTreasuryVideoViewed values
128
124
  tenantIds.forEach((tenantId) => {
129
- tenantsbyId[tenantId] = applyTreasuryPromoUserFieldsFromPayload(draft.tenantsById[tenantId], tenantsbyId[tenantId], user);
125
+ const existingTenant = draft.tenantsById[tenantId];
126
+ if (existingTenant != null) {
127
+ tenantsbyId[tenantId].isTreasuryVideoViewed =
128
+ existingTenant.isTreasuryVideoViewed;
129
+ }
130
130
  });
131
131
  draft.tenantsById = tenantsbyId;
132
132
  draft.tenantIds = tenantIds;
@@ -155,10 +155,9 @@ const tenant = (0, toolkit_1.createSlice)({
155
155
  }
156
156
  },
157
157
  updateTenantCapitalizationThreshold(draft, action) {
158
- const { tenantId, capitalizationThreshold, capitalizationThresholdMaxCeiling, } = action.payload;
158
+ const { tenantId, capitalizationThreshold, capitalizationThresholdMaxCeiling } = action.payload;
159
159
  if (draft.tenantsById[tenantId] != null) {
160
- draft.tenantsById[tenantId].capitalizationThreshold =
161
- capitalizationThreshold;
160
+ draft.tenantsById[tenantId].capitalizationThreshold = capitalizationThreshold;
162
161
  draft.tenantsById[tenantId].capitalizationThresholdMaxCeiling =
163
162
  capitalizationThresholdMaxCeiling;
164
163
  }
@@ -167,8 +166,7 @@ const tenant = (0, toolkit_1.createSlice)({
167
166
  const { tenantId, popupType } = action.payload;
168
167
  if (draft.tenantsById[tenantId] != null) {
169
168
  if (popupType === 'prepaid') {
170
- draft.tenantsById[tenantId].capitalizationOnboardingShownForPrepaid =
171
- true;
169
+ draft.tenantsById[tenantId].capitalizationOnboardingShownForPrepaid = true;
172
170
  }
173
171
  else {
174
172
  draft.tenantsById[tenantId].capitalizationOnboardingShownForFixedAsset = true;
@@ -375,7 +373,6 @@ const tenant = (0, toolkit_1.createSlice)({
375
373
  draft.externalConnectionsByTenant[action.payload.tenantId] = {
376
374
  fetchState: 'In-Progress',
377
375
  accounting: [],
378
- email: [],
379
376
  payments: [],
380
377
  revenue: [],
381
378
  saveConnectionState: 'Not-Started',
@@ -393,11 +390,10 @@ const tenant = (0, toolkit_1.createSlice)({
393
390
  return { payload: { tenantId, externalConnections } };
394
391
  },
395
392
  reducer(draft, action) {
396
- const { accounting, email, payments, revenue } = mapConnectionsPayloadToState(action.payload.externalConnections);
393
+ const { accounting, payments, revenue } = mapConnectionsPayloadToState(action.payload.externalConnections);
397
394
  draft.externalConnectionsByTenant[action.payload.tenantId] = {
398
395
  fetchState: 'Completed',
399
396
  accounting,
400
- email,
401
397
  payments,
402
398
  revenue,
403
399
  saveConnectionState: 'Completed',
@@ -419,7 +415,6 @@ const tenant = (0, toolkit_1.createSlice)({
419
415
  draft.externalConnectionsByTenant[tenantId] = {
420
416
  fetchState: 'Error',
421
417
  accounting: [],
422
- email: [],
423
418
  payments: [],
424
419
  revenue: [],
425
420
  saveConnectionState: 'Error',
@@ -633,56 +628,6 @@ const tenant = (0, toolkit_1.createSlice)({
633
628
  }
634
629
  },
635
630
  },
636
- // Email-connect (Gmail / Outlook) OAuth init. Distinct from the other
637
- // connector saves because the FE never sees the access_token — the
638
- // user-facing redirect lands on the auth service's callback, auth
639
- // exchanges code → tokens and posts them to tenant, then redirects the
640
- // browser back to ``redirectAfterUrl`` with ``?email_connect_result=...``.
641
- // The success action carries the provider's authorization_url so the
642
- // epic can drive a full-page redirect, mirroring the legacy HubSpot
643
- // flow in zeni-web-app-ui/IntegrationsScreen.
644
- initEmailConnectOAuth: {
645
- prepare(tenantId, provider, redirectAfterUrl) {
646
- return { payload: { tenantId, provider, redirectAfterUrl } };
647
- },
648
- reducer(draft, action) {
649
- const existing = draft.externalConnectionsByTenant[action.payload.tenantId];
650
- if (existing != null) {
651
- // Reuse the per-slug saveConnectorCredentialsStateBySlug bucket so
652
- // the IntegrationsSettingsPage shows the same loading affordance
653
- // it already uses for Stripe/Mercury/PayPal connect flows.
654
- existing.saveConnectorCredentialsStateBySlug[action.payload.provider] = 'In-Progress';
655
- delete existing.saveConnectorCredentialsErrorBySlug[action.payload.provider];
656
- }
657
- },
658
- },
659
- initEmailConnectOAuthSuccess: {
660
- prepare(tenantId, provider, authorizationUrl) {
661
- return { payload: { tenantId, provider, authorizationUrl } };
662
- },
663
- reducer(draft, action) {
664
- // Intentionally leave state as 'In-Progress' — the epic is about to
665
- // do a full-page redirect, so any UI state we set here would be
666
- // overwritten by the navigation anyway. Setting Completed would
667
- // briefly flash a success state before the redirect, which reads
668
- // wrong because the connection isn't actually saved yet at this
669
- // point (it lands after the OAuth round-trip).
670
- void draft;
671
- void action;
672
- },
673
- },
674
- initEmailConnectOAuthFailure: {
675
- prepare(tenantId, provider, status) {
676
- return { payload: { tenantId, provider, status } };
677
- },
678
- reducer(draft, action) {
679
- const existing = draft.externalConnectionsByTenant[action.payload.tenantId];
680
- if (existing != null) {
681
- existing.saveConnectorCredentialsStateBySlug[action.payload.provider] = 'Error';
682
- existing.saveConnectorCredentialsErrorBySlug[action.payload.provider] = action.payload.status;
683
- }
684
- },
685
- },
686
631
  deleteConnection: {
687
632
  prepare(tenantId, connectionId, connectionType) {
688
633
  return { payload: { tenantId, connectionId, connectionType } };
@@ -809,18 +754,7 @@ const tenant = (0, toolkit_1.createSlice)({
809
754
  },
810
755
  updateTreasuryVideoViewedForLoggedInUser(draft) {
811
756
  if (draft.currentTenantId != null) {
812
- draft.tenantsById[draft.currentTenantId].isTreasuryPromoVideoPlayed =
813
- true;
814
- }
815
- },
816
- updateTreasuryPromoRemindMeLaterClickedForLoggedInUser(draft) {
817
- if (draft.currentTenantId != null) {
818
- draft.tenantsById[draft.currentTenantId].isTreasuryPromoVideoRemindMeLaterClicked = true;
819
- }
820
- },
821
- updateTreasuryPromoIntroClosedByOutsideClickForLoggedInUser(draft) {
822
- if (draft.currentTenantId != null) {
823
- draft.tenantsById[draft.currentTenantId].isTreasuryPromoIntroClosedByOutsideClick = true;
757
+ draft.tenantsById[draft.currentTenantId].isTreasuryVideoViewed = true;
824
758
  }
825
759
  },
826
760
  trigger2FA: {
@@ -882,29 +816,8 @@ const tenant = (0, toolkit_1.createSlice)({
882
816
  },
883
817
  },
884
818
  });
885
- _a = tenant.actions, exports.updateTenants = _a.updateTenants, exports.fetchAllTenants = _a.fetchAllTenants, exports.updateTenantsSuccess = _a.updateTenantsSuccess, exports.updateTenantsFailure = _a.updateTenantsFailure, exports.fetchActiveTenant = _a.fetchActiveTenant, exports.updateTenantSuccess = _a.updateTenantSuccess, exports.updateTenantFailure = _a.updateTenantFailure, exports.updateCurrentTenant = _a.updateCurrentTenant, exports.fetchExcludedResources = _a.fetchExcludedResources, exports.updateExcludedResourcesSuccess = _a.updateExcludedResourcesSuccess, exports.updateExcludedResourcesFailure = _a.updateExcludedResourcesFailure, exports.doSignIn = _a.doSignIn, exports.doMagicLinkSignIn = _a.doMagicLinkSignIn, exports.magicLinkSignInSuccess = _a.magicLinkSignInSuccess, exports.magicLinkSignInFailure = _a.magicLinkSignInFailure, exports.sendEmailMagicLinkToUser = _a.sendEmailMagicLinkToUser, exports.sendEmailMagicLinkToUserSuccess = _a.sendEmailMagicLinkToUserSuccess, exports.sendEmailMagicLinkToUserFailure = _a.sendEmailMagicLinkToUserFailure, exports.updateSignInState = _a.updateSignInState, exports.doSignOut = _a.doSignOut, exports.signOutSuccess = _a.signOutSuccess, exports.sendSessionHeartbeat = _a.sendSessionHeartbeat, exports.sessionHeartbeatSuccess = _a.sessionHeartbeatSuccess, exports.sessionHeartbeatFailure = _a.sessionHeartbeatFailure, exports.updateLoggedInUser = _a.updateLoggedInUser, exports.fetchExternalConnections = _a.fetchExternalConnections, exports.saveExternalConnection = _a.saveExternalConnection, exports.saveExternalConnectionSuccess = _a.saveExternalConnectionSuccess, exports.saveExternalConnectionFailure = _a.saveExternalConnectionFailure, exports.fetchExternalConnectionsFailure = _a.fetchExternalConnectionsFailure, exports.fetchExternalConnectionsSuccess = _a.fetchExternalConnectionsSuccess, exports.saveAPIKeyConnection = _a.saveAPIKeyConnection, exports.saveAPIKeyConnectionSuccess = _a.saveAPIKeyConnectionSuccess, exports.saveAPIKeyConnectionFailure = _a.saveAPIKeyConnectionFailure, exports.saveOAuthConnection = _a.saveOAuthConnection, exports.saveOAuthConnectionSuccess = _a.saveOAuthConnectionSuccess, exports.saveOAuthConnectionFailure = _a.saveOAuthConnectionFailure, exports.saveConnectorCredentials = _a.saveConnectorCredentials, exports.saveConnectorCredentialsSuccess = _a.saveConnectorCredentialsSuccess, exports.saveConnectorCredentialsFailure = _a.saveConnectorCredentialsFailure, exports.initEmailConnectOAuth = _a.initEmailConnectOAuth, exports.initEmailConnectOAuthSuccess = _a.initEmailConnectOAuthSuccess, exports.initEmailConnectOAuthFailure = _a.initEmailConnectOAuthFailure, exports.deleteConnection = _a.deleteConnection, exports.deleteConnectionSuccess = _a.deleteConnectionSuccess, exports.deleteConnectionFailure = _a.deleteConnectionFailure, exports.clearAll = _a.clearAll, exports.fetchSubscriptionSummaryForTenant = _a.fetchSubscriptionSummaryForTenant, exports.updateSubscriptionSummaryForTenantSuccess = _a.updateSubscriptionSummaryForTenantSuccess, exports.updateSubscriptionSummaryForTenantFailure = _a.updateSubscriptionSummaryForTenantFailure, exports.updateOnboardingTenants = _a.updateOnboardingTenants, exports.removeOnboardingTenant = _a.removeOnboardingTenant, exports.updateTenantReimbursementInfo = _a.updateTenantReimbursementInfo, exports.updateReferViewedForLoggedInUser = _a.updateReferViewedForLoggedInUser, exports.resetSignInState = _a.resetSignInState, exports.trigger2FA = _a.trigger2FA, exports.updateTenantAccountingClassesEnabled = _a.updateTenantAccountingClassesEnabled, exports.updateTenantCapitalizationOnboardingDismissed = _a.updateTenantCapitalizationOnboardingDismissed, exports.updateTenantCapitalizationThreshold = _a.updateTenantCapitalizationThreshold, exports.updateTenantMasterTOSInfo = _a.updateTenantMasterTOSInfo, exports.verifyDeviceWithTwoFA = _a.verifyDeviceWithTwoFA, exports.verifyDeviceWithTwoFASuccess = _a.verifyDeviceWithTwoFASuccess, exports.verifyDeviceWithTwoFAFailure = _a.verifyDeviceWithTwoFAFailure, exports.updateTreasuryVideoViewedForLoggedInUser = _a.updateTreasuryVideoViewedForLoggedInUser, exports.updateTreasuryPromoRemindMeLaterClickedForLoggedInUser = _a.updateTreasuryPromoRemindMeLaterClickedForLoggedInUser, exports.updateTreasuryPromoIntroClosedByOutsideClickForLoggedInUser = _a.updateTreasuryPromoIntroClosedByOutsideClickForLoggedInUser, exports.resendVerifyDeviceOTP = _a.resendVerifyDeviceOTP, exports.resendVerifyDeviceOTPSuccess = _a.resendVerifyDeviceOTPSuccess, exports.resendVerifyDeviceOTPFailure = _a.resendVerifyDeviceOTPFailure;
819
+ _a = tenant.actions, exports.updateTenants = _a.updateTenants, exports.fetchAllTenants = _a.fetchAllTenants, exports.updateTenantsSuccess = _a.updateTenantsSuccess, exports.updateTenantsFailure = _a.updateTenantsFailure, exports.fetchActiveTenant = _a.fetchActiveTenant, exports.updateTenantSuccess = _a.updateTenantSuccess, exports.updateTenantFailure = _a.updateTenantFailure, exports.updateCurrentTenant = _a.updateCurrentTenant, exports.fetchExcludedResources = _a.fetchExcludedResources, exports.updateExcludedResourcesSuccess = _a.updateExcludedResourcesSuccess, exports.updateExcludedResourcesFailure = _a.updateExcludedResourcesFailure, exports.doSignIn = _a.doSignIn, exports.doMagicLinkSignIn = _a.doMagicLinkSignIn, exports.magicLinkSignInSuccess = _a.magicLinkSignInSuccess, exports.magicLinkSignInFailure = _a.magicLinkSignInFailure, exports.sendEmailMagicLinkToUser = _a.sendEmailMagicLinkToUser, exports.sendEmailMagicLinkToUserSuccess = _a.sendEmailMagicLinkToUserSuccess, exports.sendEmailMagicLinkToUserFailure = _a.sendEmailMagicLinkToUserFailure, exports.updateSignInState = _a.updateSignInState, exports.doSignOut = _a.doSignOut, exports.signOutSuccess = _a.signOutSuccess, exports.sendSessionHeartbeat = _a.sendSessionHeartbeat, exports.sessionHeartbeatSuccess = _a.sessionHeartbeatSuccess, exports.sessionHeartbeatFailure = _a.sessionHeartbeatFailure, exports.updateLoggedInUser = _a.updateLoggedInUser, exports.fetchExternalConnections = _a.fetchExternalConnections, exports.saveExternalConnection = _a.saveExternalConnection, exports.saveExternalConnectionSuccess = _a.saveExternalConnectionSuccess, exports.saveExternalConnectionFailure = _a.saveExternalConnectionFailure, exports.fetchExternalConnectionsFailure = _a.fetchExternalConnectionsFailure, exports.fetchExternalConnectionsSuccess = _a.fetchExternalConnectionsSuccess, exports.saveAPIKeyConnection = _a.saveAPIKeyConnection, exports.saveAPIKeyConnectionSuccess = _a.saveAPIKeyConnectionSuccess, exports.saveAPIKeyConnectionFailure = _a.saveAPIKeyConnectionFailure, exports.saveOAuthConnection = _a.saveOAuthConnection, exports.saveOAuthConnectionSuccess = _a.saveOAuthConnectionSuccess, exports.saveOAuthConnectionFailure = _a.saveOAuthConnectionFailure, exports.saveConnectorCredentials = _a.saveConnectorCredentials, exports.saveConnectorCredentialsSuccess = _a.saveConnectorCredentialsSuccess, exports.saveConnectorCredentialsFailure = _a.saveConnectorCredentialsFailure, exports.deleteConnection = _a.deleteConnection, exports.deleteConnectionSuccess = _a.deleteConnectionSuccess, exports.deleteConnectionFailure = _a.deleteConnectionFailure, exports.clearAll = _a.clearAll, exports.fetchSubscriptionSummaryForTenant = _a.fetchSubscriptionSummaryForTenant, exports.updateSubscriptionSummaryForTenantSuccess = _a.updateSubscriptionSummaryForTenantSuccess, exports.updateSubscriptionSummaryForTenantFailure = _a.updateSubscriptionSummaryForTenantFailure, exports.updateOnboardingTenants = _a.updateOnboardingTenants, exports.removeOnboardingTenant = _a.removeOnboardingTenant, exports.updateTenantReimbursementInfo = _a.updateTenantReimbursementInfo, exports.updateReferViewedForLoggedInUser = _a.updateReferViewedForLoggedInUser, exports.updateTreasuryVideoViewedForLoggedInUser = _a.updateTreasuryVideoViewedForLoggedInUser, exports.resetSignInState = _a.resetSignInState, exports.trigger2FA = _a.trigger2FA, exports.updateTenantAccountingClassesEnabled = _a.updateTenantAccountingClassesEnabled, exports.updateTenantCapitalizationOnboardingDismissed = _a.updateTenantCapitalizationOnboardingDismissed, exports.updateTenantCapitalizationThreshold = _a.updateTenantCapitalizationThreshold, exports.updateTenantMasterTOSInfo = _a.updateTenantMasterTOSInfo, exports.verifyDeviceWithTwoFA = _a.verifyDeviceWithTwoFA, exports.verifyDeviceWithTwoFASuccess = _a.verifyDeviceWithTwoFASuccess, exports.verifyDeviceWithTwoFAFailure = _a.verifyDeviceWithTwoFAFailure, exports.resendVerifyDeviceOTP = _a.resendVerifyDeviceOTP, exports.resendVerifyDeviceOTPSuccess = _a.resendVerifyDeviceOTPSuccess, exports.resendVerifyDeviceOTPFailure = _a.resendVerifyDeviceOTPFailure;
886
820
  exports.default = tenant.reducer;
887
- /**
888
- * Applies treasury promo user fields from the tenants API user block when present.
889
- * When a field is omitted from the payload, keeps the existing tenant value so a
890
- * later fetch-all-tenants call does not reset values already loaded by fetch-active-tenant.
891
- */
892
- function applyTreasuryPromoUserFieldsFromPayload(existingTenant, mappedTenant, userTenantPayload) {
893
- if (existingTenant == null) {
894
- return mappedTenant;
895
- }
896
- return {
897
- ...mappedTenant,
898
- isTreasuryPromoVideoPlayed: userTenantPayload.is_treasury_promo_video_played ??
899
- existingTenant.isTreasuryPromoVideoPlayed,
900
- isTreasuryPromoVideoRemindMeLaterClicked: userTenantPayload.is_treasury_promo_video_remind_me_later_clicked ??
901
- existingTenant.isTreasuryPromoVideoRemindMeLaterClicked,
902
- loginCounterForTreasuryPromoVideo: userTenantPayload.login_counter_for_treasury_promo_video ??
903
- existingTenant.loginCounterForTreasuryPromoVideo,
904
- isTreasuryPromoIntroClosedByOutsideClick: userTenantPayload.is_treasury_promo_intro_closed_by_outside_click ??
905
- existingTenant.isTreasuryPromoIntroClosedByOutsideClick,
906
- };
907
- }
908
821
  /**
909
822
  * Converts tenants payload to Tenant and User State
910
823
  * @param payload tenants payload as received from backend API response
@@ -980,12 +893,7 @@ function mapTenantPayloadToTenant(payload, userTenantPayload) {
980
893
  rewardsLastViewedTime: userTenantPayload?.rewards_feature_last_viewed_time != null
981
894
  ? (0, zeniDayJS_1.date)(userTenantPayload.rewards_feature_last_viewed_time)
982
895
  : undefined,
983
- isTreasuryPromoVideoPlayed: userTenantPayload?.is_treasury_promo_video_played ?? false,
984
- isTreasuryPromoVideoRemindMeLaterClicked: userTenantPayload?.is_treasury_promo_video_remind_me_later_clicked ??
985
- false,
986
- loginCounterForTreasuryPromoVideo: userTenantPayload?.login_counter_for_treasury_promo_video ?? 0,
987
- isTreasuryPromoIntroClosedByOutsideClick: userTenantPayload?.is_treasury_promo_intro_closed_by_outside_click ??
988
- false,
896
+ isTreasuryVideoViewed: userTenantPayload?.is_treasury_promo_video_played,
989
897
  zeniBookCloseDate: payload.zeni_book_close_date != null
990
898
  ? (0, zeniDayJS_1.date)(payload.zeni_book_close_date)
991
899
  : undefined,
@@ -1062,11 +970,6 @@ function mapConnectionsPayloadToState(connectionsPayload) {
1062
970
  const { connections } = connectionsPayload;
1063
971
  return {
1064
972
  accounting: connections.accounting.map((payload) => (0, exports.toConnection)(payload)),
1065
- // Tenant materializes gmail/outlook under the `email` bucket via
1066
- // _THIRD_PARTY_CONNECTORS_TO_MATERIALIZE when their slugs are enabled in
1067
- // third_party_enabled_connectors Statsig config. Default to [] so older
1068
- // tenant deploys (or disabled-everywhere envs) don't blow up here.
1069
- email: (connections.email ?? []).map((payload) => (0, exports.toConnection)(payload)),
1070
973
  payments: connections.payments.map((payload) => (0, exports.toConnection)(payload)),
1071
974
  revenue: (connections.revenue ?? []).map((payload) => (0, exports.toConnection)(payload)),
1072
975
  };
@@ -13,7 +13,6 @@ import { AuthProvider, ExternalSupportedTool } from './tenantReducer';
13
13
  export interface TenantExternalConnections {
14
14
  accounting: Connection[];
15
15
  deleteConnectionState: FetchState;
16
- email: Connection[];
17
16
  fetchState: FetchState;
18
17
  payments: Connection[];
19
18
  revenue: Connection[];
@@ -90,11 +89,7 @@ export interface Tenant {
90
89
  isCustomerCreated: boolean;
91
90
  isEmailGroupCreated: boolean;
92
91
  isOnboardingCompleted: boolean;
93
- isTreasuryPromoIntroClosedByOutsideClick: boolean;
94
- isTreasuryPromoVideoPlayed: boolean;
95
- isTreasuryPromoVideoRemindMeLaterClicked: boolean;
96
92
  isZeni: boolean;
97
- loginCounterForTreasuryPromoVideo: number;
98
93
  netBurnSettings: {
99
94
  accountingMethod: AccountingMethod;
100
95
  numberOfMonthsForAverage: AverageMonthsCount;
@@ -110,6 +105,7 @@ export interface Tenant {
110
105
  userRoleId: ID;
111
106
  bookCloseDate?: ZeniDate;
112
107
  hubSpotId?: ID;
108
+ isTreasuryVideoViewed?: boolean;
113
109
  masterTOSInfo?: MasterTOSInfo;
114
110
  rewardsLastViewedTime?: ZeniDate;
115
111
  userReimbursementInfo?: UserReimbursementInfo;