@bcrumbs.net/inbox 0.0.50 → 0.0.52

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 (143) hide show
  1. package/{cb9c022b3cf80e0f.svg → 2998ffe42c3436c0.svg} +43 -43
  2. package/{594c01a9720e0657.svg → 396ba1d86a9997b1.svg} +42 -42
  3. package/assets/ar/inbox.json +256 -246
  4. package/assets/en/inbox.json +258 -248
  5. package/index.cjs.d.ts +1 -1
  6. package/index.cjs.js +12108 -1175
  7. package/index.esm.d.ts +1 -1
  8. package/index.esm.js +12110 -1177
  9. package/package.json +6 -6
  10. package/src/app/ai/components/Crumby/index.d.ts +2 -0
  11. package/src/app/ai/components/playground/Thread.d.ts +5 -1
  12. package/src/app/ai/components/playground/ThreadWelcome.d.ts +4 -1
  13. package/src/app/ai/components/playground/TooltipIconButton.d.ts +1 -1
  14. package/src/app/ai/components/sources/TextEditorSkeleton.d.ts +3 -0
  15. package/src/app/ai/components/sources/TextSnippetEditor.d.ts +9 -0
  16. package/src/app/ai/components/sources/TextTable.d.ts +15 -0
  17. package/src/app/ai/components/sources/index.d.ts +2 -0
  18. package/src/app/ai/hooks/useCrumbyRatingAi.d.ts +17 -0
  19. package/src/app/ai/hooks/useTextColumns.d.ts +17 -0
  20. package/src/app/ai/pages/AiPreferencesPrompts.d.ts +2 -0
  21. package/src/app/ai/pages/TextPage.d.ts +3 -0
  22. package/src/app/ai/types/index.d.ts +10 -0
  23. package/src/app/auth/pages/Login.d.ts +2 -12
  24. package/src/app/auth/pages/Register.d.ts +2 -13
  25. package/src/app/auth/redux/actions/registerAction.d.ts +1 -1
  26. package/src/app/auth/redux/auth.types.d.ts +1 -1
  27. package/src/app/billing/components/NotAccessible.d.ts +10 -0
  28. package/src/app/billing/components/Timeline.d.ts +20 -0
  29. package/src/app/billing/components/checkout/AddNewPaymentCard.d.ts +6 -0
  30. package/src/app/billing/components/checkout/CheckoutSummary.d.ts +20 -0
  31. package/src/app/billing/components/checkout/ExceedPaymentUpdateTriesModal.d.ts +8 -0
  32. package/src/app/billing/components/checkout/ExistingCardPayment.d.ts +10 -0
  33. package/src/app/billing/components/checkout/PaymentForm.d.ts +11 -0
  34. package/src/app/billing/components/checkout/PaymentFormExp.d.ts +9 -0
  35. package/src/app/billing/components/checkout/PaymentMethod.d.ts +8 -0
  36. package/src/app/billing/components/checkout/PaymentMethodCard.d.ts +9 -0
  37. package/src/app/billing/components/checkout/PaywithCredits.d.ts +9 -0
  38. package/src/app/billing/components/invoices/BCLogo.d.ts +5 -0
  39. package/src/app/billing/components/invoices/Invoice.d.ts +5 -0
  40. package/src/app/billing/components/planStyles.d.ts +9 -0
  41. package/src/app/billing/components/styles.d.ts +21 -0
  42. package/src/app/billing/components/subscription/PlanDetail.d.ts +11 -0
  43. package/src/app/billing/components/subscription/SubscriptionPausedWarning.d.ts +3 -0
  44. package/src/app/billing/components/transactions/TransactionHistoryTable.d.ts +15 -0
  45. package/src/app/billing/context/SubscriptionContext.d.ts +5 -0
  46. package/src/app/billing/hooks/useGetPaidToday.d.ts +9 -0
  47. package/src/app/billing/hooks/usePendingPayments.d.ts +51 -0
  48. package/src/app/billing/hooks/useSetupPayment.d.ts +15 -0
  49. package/src/app/billing/hooks/useSetupPaymentMethod.d.ts +12 -0
  50. package/src/app/billing/pages/checkout.d.ts +2 -0
  51. package/src/app/billing/pages/done.d.ts +1 -0
  52. package/src/app/billing/pages/invoice.d.ts +1 -0
  53. package/src/app/billing/pages/invoices.d.ts +2 -0
  54. package/src/app/billing/pages/payment.d.ts +1 -0
  55. package/src/app/billing/utils/getStripe.d.ts +3 -0
  56. package/src/app/billing/utils/openArticleModal.d.ts +1 -0
  57. package/src/app/billing/utils/paymentProvider.d.ts +3 -0
  58. package/src/app/billing/utils/stripeUtils.d.ts +2 -0
  59. package/src/app/broadcast/components/BroadcastAnalysisReciepientsHeader.d.ts +6 -1
  60. package/src/app/broadcast/components/BroadcastAnalysisReciepientsTable.d.ts +5 -1
  61. package/src/app/broadcast/components/BroadcastInfoHeader.d.ts +2 -1
  62. package/src/app/broadcast/components/BroadcastTargetingComplianceNotice.d.ts +2 -0
  63. package/src/app/broadcast/components/WorkspaceBroadcastAnalysisRecipients.d.ts +7 -0
  64. package/src/app/broadcast/hooks/useExportWorkspaceBroadcastDelivery.d.ts +6 -0
  65. package/src/app/broadcast/pages/WorkspaceBroadcastDeliveryReportPage.d.ts +2 -0
  66. package/src/app/broadcast/utils/helper.d.ts +4 -0
  67. package/src/app/contact/config/contactForm.d.ts +21 -0
  68. package/src/app/dashboard/components/AgentCard.d.ts +11 -0
  69. package/src/app/dashboard/components/AgentPerformanceCard.d.ts +9 -0
  70. package/src/app/dashboard/components/AgentsCard.d.ts +9 -0
  71. package/src/app/dashboard/components/AgentsCardSkeleton.d.ts +2 -0
  72. package/src/app/dashboard/components/BroadcastAnalyticsCard.d.ts +10 -0
  73. package/src/app/dashboard/components/BroadcastCampaignProgressCard.d.ts +10 -0
  74. package/src/app/dashboard/components/BroadcastDashboard.d.ts +6 -0
  75. package/src/app/dashboard/components/BroadcastDashboardStatsCards.d.ts +14 -0
  76. package/src/app/dashboard/components/BroadcastRecipientsCard.d.ts +8 -0
  77. package/src/app/dashboard/components/BroadcastStatusDistributionCard.d.ts +6 -0
  78. package/src/app/dashboard/components/ConversationAnalyticsCard.d.ts +11 -0
  79. package/src/app/dashboard/components/DashboardSections.d.ts +24 -0
  80. package/src/app/dashboard/components/DashboardStatsCards.d.ts +10 -0
  81. package/src/app/dashboard/components/InboxDashboard.d.ts +10 -0
  82. package/src/app/dashboard/components/OpenedChatsCard.d.ts +8 -0
  83. package/src/app/dashboard/pages/DashboardNewPage.d.ts +2 -0
  84. package/src/app/dashboard/utils/buildBroadcastReportOverviewAnalytics.d.ts +17 -0
  85. package/src/app/dashboard/utils/buildRecipientsAnalytics.d.ts +12 -0
  86. package/src/app/dashboard/utils/dateHelpers.d.ts +7 -0
  87. package/src/app/generic/components/HeaderImageInput.d.ts +8 -0
  88. package/src/app/generic/components/PhoneNumberInput.d.ts +13 -0
  89. package/src/app/generic/components/TemplateParameterInputs.d.ts +2 -1
  90. package/src/app/generic/components/ToggleSetting.d.ts +3 -2
  91. package/src/app/generic/hooks/useGetProviderIcon.d.ts +2 -1
  92. package/src/app/inbox/components/Chat/ChatContent.d.ts +2 -1
  93. package/src/app/inbox/components/NewConvList/FilterDrawer.d.ts +18 -0
  94. package/src/app/inbox/components/NewConvList/HeaderSection.d.ts +4 -1
  95. package/src/app/inbox/components/NewConvList/index.d.ts +6 -2
  96. package/src/app/inbox/hooks/useConversationsPerodicFetch.d.ts +10 -0
  97. package/src/app/inbox/hooks/useNewSortedEvents.d.ts +1 -1
  98. package/src/app/inbox/utils/convs.d.ts +10 -1
  99. package/src/app/layout/components/CommandPalette.d.ts +16 -0
  100. package/src/app/layout/components/Header.d.ts +3 -1
  101. package/src/app/layout/constants/index.d.ts +24 -2
  102. package/src/app/layout/constants/subMenu.d.ts +22 -2
  103. package/src/app/layout/hooks/useImportContactsEnabled.d.ts +1 -0
  104. package/src/app/managemnet/components/CreateApiKey.d.ts +4 -1
  105. package/src/app/managemnet/components/CreateCrmWebhook.d.ts +6 -0
  106. package/src/app/managemnet/components/channels/AddChannelDialog.d.ts +10 -0
  107. package/src/app/managemnet/components/channels/ChannelItem.d.ts +11 -0
  108. package/src/app/managemnet/components/channels/ChannelTypeCard.d.ts +15 -0
  109. package/src/app/managemnet/components/channels/EditChannelDialog.d.ts +11 -0
  110. package/src/app/managemnet/pages/crmIntegrations/index.d.ts +2 -0
  111. package/src/app/onboarding/components/OnboardingChecklistGuideContent.d.ts +8 -0
  112. package/src/app/onboarding/components/OnboardingChecklistWidget.d.ts +2 -0
  113. package/src/app/onboarding/utils/onboardingChecklistStorage.d.ts +39 -0
  114. package/src/app/resources/components/Integrations/ChannelDialogLayout.d.ts +24 -0
  115. package/src/app/resources/components/Integrations/Custom/index.d.ts +7 -0
  116. package/src/app/resources/components/Integrations/Facebook/index.d.ts +4 -1
  117. package/src/app/resources/components/Integrations/Instagram/index.d.ts +4 -1
  118. package/src/app/resources/components/Integrations/RenderCorrectIntegrationFlow.d.ts +11 -2
  119. package/src/app/resources/components/Integrations/Telegram/index.d.ts +4 -1
  120. package/src/app/resources/components/Integrations/WaGupshup/index.d.ts +7 -0
  121. package/src/app/resources/components/Integrations/WhatsApp/index.d.ts +4 -1
  122. package/src/app/resources/components/ListResources/Utils.d.ts +0 -1
  123. package/src/app/subscriptions/components/Plans/PlanCard.d.ts +3 -3
  124. package/src/app/subscriptions/components/Plans/ShowcasePlans.d.ts +5 -2
  125. package/src/app/subscriptions/components/SubscriptionSettings/SubscriptionHeader.d.ts +2 -1
  126. package/src/app/subscriptions/components/SubscriptionSettings/SubscriptionProfile.d.ts +1 -0
  127. package/src/app/subscriptions/components/SubscriptionSettings/SubscriptionUsers.d.ts +0 -1
  128. package/src/app/subscriptions/constants/Plans.d.ts +9 -6
  129. package/src/app/subscriptions/pages/Upgrade.d.ts +6 -9
  130. package/src/assets/locales/translations.d.ts +333 -5
  131. package/src/config/azure.d.ts +6 -0
  132. package/src/config/constants.d.ts +1 -1
  133. package/src/environments/types.d.ts +3 -0
  134. package/src/graphql.autogenerated.d.ts +3074 -2349
  135. package/src/graphql.billing.autogenerated.d.ts +680 -7
  136. package/src/main.d.ts +2 -0
  137. package/src/utils/formatFailureReason.d.ts +5 -0
  138. package/src/utils/globalHelper.d.ts +3 -0
  139. package/src/utils/localStorage.d.ts +2 -0
  140. package/src/utils/textUtils.d.ts +3 -1
  141. package/src/app/resources/components/Integrations/Facebook/LoginPopup.d.ts +0 -4
  142. package/src/app/resources/components/Integrations/Instagram/LoginPopup.d.ts +0 -4
  143. package/src/app/resources/components/Integrations/WhatsApp/LoginPopup.d.ts +0 -4
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@bcrumbs.net/inbox",
3
3
  "description": "Inbox widget for Bread Crumbs portals",
4
- "version": "0.0.50",
4
+ "version": "0.0.52",
5
5
  "keyword": [
6
6
  "bcrumbs",
7
7
  "bc-ui",
@@ -13,8 +13,8 @@
13
13
  "peerDependencies": {
14
14
  "react": "^18.0.0",
15
15
  "react-dom": "^18.0.0",
16
- "@radix-ui/themes": "^3.0.0",
17
- "@radix-ui/react-icons": "^1.0.0",
16
+ "@radix-ui/themes": "^3.3.0",
17
+ "@radix-ui/react-icons": "^1.3.2",
18
18
  "i18next": "^21.0.0",
19
19
  "react-i18next": "^11.0.0",
20
20
  "i18next-http-backend": "^1.0.0",
@@ -24,9 +24,9 @@
24
24
  "graphql": "15.4.0"
25
25
  },
26
26
  "dependencies": {
27
- "@bcrumbs.net/bc-shared": "^0.0.8",
28
- "@bcrumbs.net/bc-ui": "^0.0.12",
29
- "@bcrumbs.net/bc-api": "^0.0.46",
27
+ "@bcrumbs.net/bc-shared": "^0.0.9",
28
+ "@bcrumbs.net/bc-ui": "^0.0.13",
29
+ "@bcrumbs.net/bc-api": "^0.0.47",
30
30
  "@azure/storage-blob": "^12.25.0"
31
31
  },
32
32
  "module": "./index.esm.js",
@@ -0,0 +1,2 @@
1
+ declare const CrumbyChat: () => import("@emotion/react/jsx-runtime").JSX.Element;
2
+ export default CrumbyChat;
@@ -1,2 +1,6 @@
1
1
  import type { FC } from 'react';
2
- export declare const Thread: FC;
2
+ type ThreadProps = {
3
+ welcomeMessage?: string;
4
+ };
5
+ export declare const Thread: FC<ThreadProps>;
6
+ export {};
@@ -1,2 +1,5 @@
1
- declare const ThreadWelcome: () => import("@emotion/react/jsx-runtime").JSX.Element;
1
+ type ThreadWelcomeProps = {
2
+ message?: string;
3
+ };
4
+ declare const ThreadWelcome: ({ message }: ThreadWelcomeProps) => import("@emotion/react/jsx-runtime").JSX.Element;
2
5
  export default ThreadWelcome;
@@ -11,5 +11,5 @@ export declare const TooltipIconButton: import("react").ForwardRefExoticComponen
11
11
  asChild?: boolean | undefined;
12
12
  }, "ref"> & {
13
13
  tooltip: string;
14
- side?: "bottom" | "left" | "right" | "top" | undefined;
14
+ side?: "left" | "right" | "bottom" | "top" | undefined;
15
15
  } & import("react").RefAttributes<HTMLButtonElement>>;
@@ -0,0 +1,3 @@
1
+ import React from 'react';
2
+ declare const TextEditorSkeleton: React.FC;
3
+ export default TextEditorSkeleton;
@@ -0,0 +1,9 @@
1
+ import React from 'react';
2
+ import { TextItem } from '../../types';
3
+ interface TextSnippetEditorProps {
4
+ snippet: TextItem | null;
5
+ onSaved: () => void;
6
+ onCancelEdit: () => void;
7
+ }
8
+ declare const TextSnippetEditor: React.FC<TextSnippetEditorProps>;
9
+ export default TextSnippetEditor;
@@ -0,0 +1,15 @@
1
+ import React from 'react';
2
+ import { TextItem } from '../../types';
3
+ interface TextTableProps {
4
+ snippets: TextItem[];
5
+ selectedIds: string[];
6
+ onSelect: (id: string, selected: boolean) => void;
7
+ onSelectAll: (selected: boolean) => void;
8
+ onDelete: (id: string) => void;
9
+ onBulkDelete: (ids: string[]) => void;
10
+ onEdit: (snippet: TextItem) => void;
11
+ clearSelection: () => void;
12
+ bulkDeleting?: boolean;
13
+ }
14
+ declare const TextTable: React.FC<TextTableProps>;
15
+ export default TextTable;
@@ -3,3 +3,5 @@ export { default as FileTable } from './FileTable';
3
3
  export { default as StorageQuota } from './StorageQuota';
4
4
  export { default as UploadProgress } from './UploadProgress';
5
5
  export { default as FileUploadsContainer } from './FileUploadsContainer';
6
+ export { default as TextSnippetEditor } from './TextSnippetEditor';
7
+ export { default as TextTable } from './TextTable';
@@ -0,0 +1,17 @@
1
+ import { Ai } from '../../../graphql.autogenerated';
2
+ interface UseCrumbyRatingAiOptions {
3
+ /** Optional list of AIs to check for existing BC_AI. If not provided, the hook will still work but won't check for existing AIs. */
4
+ aiList?: Ai[];
5
+ }
6
+ /**
7
+ * Hook to get or create a CrumbyRating AI (BC_AI type).
8
+ * Checks if a BC_AI already exists in the provided list, and if not, creates one.
9
+ * @param options - Configuration options
10
+ * @returns Object with `getOrCreateCrumbyRatingAi` function, `loading` state, and `existingBcAi`
11
+ */
12
+ declare const useCrumbyRatingAi: ({ aiList }?: UseCrumbyRatingAiOptions) => {
13
+ getOrCreateCrumbyRatingAi: () => Promise<string | null>;
14
+ loading: boolean;
15
+ existingBcAi: Ai | undefined;
16
+ };
17
+ export default useCrumbyRatingAi;
@@ -0,0 +1,17 @@
1
+ import { CustomColumn, TableAction } from '@bcrumbs.net/bc-ui';
2
+ interface GetTextColumnsParams {
3
+ allSelected: boolean;
4
+ selectedIds?: string[];
5
+ onSelectAll: (selectAll: boolean) => void;
6
+ onSelect: (id: string, selected: boolean) => void;
7
+ onDelete: (id: string) => void;
8
+ onEdit: (row: any) => void;
9
+ onSortChange: (field: string) => void;
10
+ currentSortField?: string;
11
+ currentSortDirection?: 'asc' | 'desc';
12
+ }
13
+ export declare const useTextColumns: ({ allSelected, selectedIds, onSelectAll, onSelect, onDelete, onEdit, onSortChange, currentSortField, currentSortDirection, }: GetTextColumnsParams) => {
14
+ columns: CustomColumn[];
15
+ actions: TableAction[];
16
+ };
17
+ export {};
@@ -0,0 +1,2 @@
1
+ declare const AiPreferencesPrompts: () => import("@emotion/react/jsx-runtime").JSX.Element;
2
+ export default AiPreferencesPrompts;
@@ -0,0 +1,3 @@
1
+ import React from 'react';
2
+ declare const TextPage: React.FC;
3
+ export default TextPage;
@@ -62,3 +62,13 @@ export interface FileTableFilters {
62
62
  to?: Date;
63
63
  };
64
64
  }
65
+ export interface TextItem {
66
+ id: string;
67
+ name: string;
68
+ size: number;
69
+ workspaceId: number;
70
+ createdAt?: string;
71
+ }
72
+ export interface TextTableFilters {
73
+ search: string;
74
+ }
@@ -1,13 +1,3 @@
1
- import * as UserAuthTypes from '../redux/auth.types';
2
- export type Props = {
3
- history: any;
4
- router: any;
5
- userIsAuthenticated: boolean;
6
- loginAction: UserAuthTypes.LoginAction;
7
- oauthLoginAction: UserAuthTypes.OAuthLoginAction;
8
- login: any;
9
- error: any;
10
- status: any;
11
- };
12
- declare const _default: any;
1
+ /// <reference types="react" />
2
+ declare const _default: import("react").ComponentClass<{}, any>;
13
3
  export default _default;
@@ -1,14 +1,3 @@
1
- import { RegisterAction, RegisterAfterInvitationAction } from '../redux/auth.types';
2
- export type Props = {
3
- location: any;
4
- history: any;
5
- router: any;
6
- userRegistered: boolean;
7
- registerAction: RegisterAction;
8
- registerAfterInvitationAction: RegisterAfterInvitationAction;
9
- register: any;
10
- error: any;
11
- status: any;
12
- };
13
- declare const _default: any;
1
+ /// <reference types="react" />
2
+ declare const _default: import("react").ComponentClass<{}, any>;
14
3
  export default _default;
@@ -1,4 +1,4 @@
1
- export declare function registerAction(action: any, firstName: string, lastName: string, userName: string, email: string, password: string, confirmPassword: string, time?: string): (dispatch: any) => void;
1
+ export declare function registerAction(action: any, firstName: string, lastName: string, userName: string, email: string, password: string, confirmPassword: string, clientDistinctId?: string, time?: string): (dispatch: any) => void;
2
2
  export declare function registerAfterInvitationAction(user: any, token: any, time?: string): (dispatch: any) => void;
3
3
  export declare function receivedUserRegister(status: number, user?: any, time?: string): {
4
4
  type: string;
@@ -50,7 +50,7 @@ export type ErrorUserLoggedIn = (error?: any, time?: string, source?: string) =>
50
50
  export type SetLoadingStateForUserLogin = (time: string) => any;
51
51
  export type UnsetLoadingStateForUserLogin = (time: string) => any;
52
52
  export type ResendConfirmation = (email: string) => any;
53
- export type RegisterAction = (action: any, name: string, lastname: string, username: string, email: string, password: string, confirmPassord: string) => any;
53
+ export type RegisterAction = (action: any, name: string, lastname: string, username: string, email: string, password: string, confirmPassord: string, clientDistinctId?: string) => any;
54
54
  export type RegisterAfterInvitationAction = (user: any, toekn: string) => any;
55
55
  export type ReceivedUserRegister = (user?: User, time?: string) => any;
56
56
  export type ErrorUserRegister = (error?: any, time?: string) => any;
@@ -0,0 +1,10 @@
1
+ import { ReactNode } from "react";
2
+ interface IProps {
3
+ cta: () => void;
4
+ isLoading?: boolean;
5
+ title: ReactNode;
6
+ description: ReactNode;
7
+ buttonText: string;
8
+ }
9
+ export default function NotAccessible({ cta, isLoading, title, description, buttonText, }: IProps): import("@emotion/react/jsx-runtime").JSX.Element;
10
+ export {};
@@ -0,0 +1,20 @@
1
+ import { ReactNode } from 'react';
2
+ type TimelineDotColor = 'primary' | 'grey' | 'error' | 'success' | 'warning';
3
+ interface TimelineDotProps {
4
+ color?: TimelineDotColor;
5
+ children?: ReactNode;
6
+ }
7
+ export declare function TimelineDot({ color, children }: TimelineDotProps): import("@emotion/react/jsx-runtime").JSX.Element;
8
+ export declare function TimelineConnector(): import("@emotion/react/jsx-runtime").JSX.Element;
9
+ interface TimelineItemProps {
10
+ timestamp?: ReactNode;
11
+ dot?: ReactNode;
12
+ showConnector?: boolean;
13
+ children: ReactNode;
14
+ }
15
+ export declare function TimelineItem({ timestamp, dot, showConnector, children }: TimelineItemProps): import("@emotion/react/jsx-runtime").JSX.Element;
16
+ interface TimelineProps {
17
+ children: ReactNode;
18
+ }
19
+ export declare function Timeline({ children }: TimelineProps): import("@emotion/react/jsx-runtime").JSX.Element;
20
+ export {};
@@ -0,0 +1,6 @@
1
+ type Props = {
2
+ onAddCard: () => void;
3
+ isLoading?: boolean;
4
+ };
5
+ export declare function AddNewPaymentCard({ onAddCard, isLoading }: Props): import("@emotion/react/jsx-runtime").JSX.Element;
6
+ export {};
@@ -0,0 +1,20 @@
1
+ import { PostHog } from "posthog-js/react";
2
+ import { PlanType, Plan, PlanPricingQuery } from "../../../../graphql.billing.autogenerated";
3
+ import { CurrentSubscription } from "../../context/SubscriptionContext";
4
+ type PricingData = PlanPricingQuery["planPricing"];
5
+ export interface CheckoutSummaryProps {
6
+ plan: Partial<Plan> | undefined;
7
+ currentPlan: Partial<Plan> | undefined;
8
+ selectedPlanType: PlanType | undefined;
9
+ isRenewal: boolean;
10
+ isYearly: boolean;
11
+ setIsYearly: (val: boolean) => void;
12
+ originalIsYearly: boolean;
13
+ subscription: CurrentSubscription;
14
+ pricingData: PricingData | undefined;
15
+ paidToday: number | undefined;
16
+ creditsUsed: number | undefined;
17
+ posthog: PostHog | undefined;
18
+ }
19
+ export default function CheckoutSummary({ plan, currentPlan, selectedPlanType, isRenewal, isYearly, setIsYearly, originalIsYearly, subscription, pricingData, paidToday, creditsUsed, posthog, }: CheckoutSummaryProps): import("@emotion/react/jsx-runtime").JSX.Element;
20
+ export {};
@@ -0,0 +1,8 @@
1
+ import { Dispatch, SetStateAction } from "react";
2
+ type SetStateActionType = Dispatch<SetStateAction<boolean>>;
3
+ interface ExceedPaymentUpdateTriesModalProps {
4
+ open: boolean;
5
+ setOpen: SetStateActionType;
6
+ }
7
+ export default function ExceedPaymentUpdateTriesModal({ open, setOpen, }: ExceedPaymentUpdateTriesModalProps): import("@emotion/react/jsx-runtime").JSX.Element;
8
+ export {};
@@ -0,0 +1,10 @@
1
+ import { PaymentMethod as PaymentMethodType, Term, PlanType } from "../../../../graphql.billing.autogenerated";
2
+ interface IProps {
3
+ paymentMethod: PaymentMethodType;
4
+ planType: PlanType;
5
+ term: Term;
6
+ isRenewal: boolean;
7
+ turnstile: string;
8
+ }
9
+ declare function ExistingCardPaymentWithStripeElements(props: IProps): import("@emotion/react/jsx-runtime").JSX.Element;
10
+ export default ExistingCardPaymentWithStripeElements;
@@ -0,0 +1,11 @@
1
+ import { SetupPaymentMethodResult, CheckoutResult } from "../../../../graphql.billing.autogenerated";
2
+ type PaymentFormProps = {
3
+ intentResponse: SetupPaymentMethodResult | CheckoutResult;
4
+ setupIntent?: boolean;
5
+ };
6
+ type PaymentFormContainerDialogProps = PaymentFormProps & {
7
+ open: boolean;
8
+ onClose: () => void;
9
+ };
10
+ export default function PaymentFormWithDialog({ open, onClose, intentResponse, setupIntent, }: PaymentFormContainerDialogProps): import("@emotion/react/jsx-runtime").JSX.Element;
11
+ export {};
@@ -0,0 +1,9 @@
1
+ import { CheckoutResult, SetupPaymentMethodResult } from "../../../../graphql.billing.autogenerated";
2
+ interface IProps {
3
+ setupPayment: () => Promise<void>;
4
+ loading?: boolean;
5
+ intentResponse: CheckoutResult | SetupPaymentMethodResult | undefined;
6
+ hasError: boolean;
7
+ }
8
+ export default function PaymentFormExp({ setupPayment, loading, intentResponse, hasError, }: IProps): import("@emotion/react/jsx-runtime").JSX.Element;
9
+ export {};
@@ -0,0 +1,8 @@
1
+ import { ReactNode } from "react";
2
+ import { PaymentMethod as PaymentMethodType } from "../../../../graphql.billing.autogenerated";
3
+ interface IProps {
4
+ action?: ReactNode;
5
+ paymentMethod: PaymentMethodType;
6
+ }
7
+ export default function PaymentMethod({ action, paymentMethod }: IProps): import("@emotion/react/jsx-runtime").JSX.Element;
8
+ export {};
@@ -0,0 +1,9 @@
1
+ import { PaymentMethod as PaymentMethodType } from "../../../../graphql.billing.autogenerated";
2
+ interface PaymentMethodProps {
3
+ paymentMethod: PaymentMethodType;
4
+ onAction?: () => Promise<void>;
5
+ actionLoading?: boolean;
6
+ actionText: string;
7
+ }
8
+ export default function PaymentMethod(props: PaymentMethodProps): import("@emotion/react/jsx-runtime").JSX.Element;
9
+ export {};
@@ -0,0 +1,9 @@
1
+ import { PlanType, Term } from '../../../../graphql.billing.autogenerated';
2
+ interface IProps {
3
+ planType: PlanType;
4
+ term: Term;
5
+ isRenewal: boolean;
6
+ turnstile: string;
7
+ }
8
+ export declare function PaywithCredits({ planType, term, isRenewal, turnstile }: IProps): import("@emotion/react/jsx-runtime").JSX.Element;
9
+ export {};
@@ -0,0 +1,5 @@
1
+ interface LogoProps {
2
+ width?: number;
3
+ }
4
+ export default function BCLogo(props: LogoProps): import("@emotion/react/jsx-runtime").JSX.Element;
5
+ export {};
@@ -0,0 +1,5 @@
1
+ interface InvoiceProps {
2
+ invoiceId: string;
3
+ }
4
+ export default function Invoice(props: InvoiceProps): import("@emotion/react/jsx-runtime").JSX.Element | null;
5
+ export {};
@@ -0,0 +1,9 @@
1
+ import React from "react";
2
+ interface CardHeaderBaseProps extends Omit<React.HTMLAttributes<HTMLDivElement>, "title"> {
3
+ title?: React.ReactNode;
4
+ action?: React.ReactNode;
5
+ }
6
+ export declare const StyledCardHeader: import("styled-components").StyledComponent<React.ForwardRefExoticComponent<CardHeaderBaseProps & React.RefAttributes<HTMLDivElement>>, any, {}, never>;
7
+ export declare const StyledCard: import("styled-components").StyledComponent<React.ForwardRefExoticComponent<import("@radix-ui/themes").CardProps & React.RefAttributes<HTMLDivElement>>, any, {}, never>;
8
+ export declare const StyledCardv2: import("styled-components").StyledComponent<React.ForwardRefExoticComponent<import("@radix-ui/themes").CardProps & React.RefAttributes<HTMLDivElement>>, any, {}, never>;
9
+ export {};
@@ -0,0 +1,21 @@
1
+ /// <reference types="react" />
2
+ export declare const FlexBox: import("@emotion/styled").StyledComponent<{
3
+ theme?: import("@emotion/react").Theme | undefined;
4
+ as?: import("react").ElementType<any, keyof import("react").JSX.IntrinsicElements> | undefined;
5
+ }, import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>;
6
+ export declare const FlexCentered: import("@emotion/styled").StyledComponent<{
7
+ theme?: import("@emotion/react").Theme | undefined;
8
+ as?: import("react").ElementType<any, keyof import("react").JSX.IntrinsicElements> | undefined;
9
+ } & import("react").ClassAttributes<HTMLDivElement> & import("react").HTMLAttributes<HTMLDivElement> & {
10
+ theme?: import("@emotion/react").Theme | undefined;
11
+ }, {}, {}>;
12
+ export declare const FlexBetween: import("@emotion/styled").StyledComponent<{
13
+ theme?: import("@emotion/react").Theme | undefined;
14
+ as?: import("react").ElementType<any, keyof import("react").JSX.IntrinsicElements> | undefined;
15
+ } & import("react").ClassAttributes<HTMLDivElement> & import("react").HTMLAttributes<HTMLDivElement> & {
16
+ theme?: import("@emotion/react").Theme | undefined;
17
+ }, {}, {}>;
18
+ export declare const DisabledOverlay: import("@emotion/styled").StyledComponent<{
19
+ theme?: import("@emotion/react").Theme | undefined;
20
+ as?: import("react").ElementType<any, keyof import("react").JSX.IntrinsicElements> | undefined;
21
+ }, import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>;
@@ -0,0 +1,11 @@
1
+ import React from 'react';
2
+ interface IPlanDetail {
3
+ hasDetail: boolean;
4
+ primaryText: React.ReactNode;
5
+ secondaryText?: React.ReactNode;
6
+ link?: string;
7
+ toolTip?: React.ReactNode;
8
+ alert?: React.ReactNode;
9
+ }
10
+ declare const PlanDetail: ({ hasDetail, primaryText, secondaryText, link, toolTip, alert }: IPlanDetail) => import("@emotion/react/jsx-runtime").JSX.Element;
11
+ export default PlanDetail;
@@ -0,0 +1,3 @@
1
+ export default function SubscriptionPausedWarning({ size }?: {
2
+ size: "small" | "medium" | "large";
3
+ }): import("@emotion/react/jsx-runtime").JSX.Element | null;
@@ -0,0 +1,15 @@
1
+ import { SetStateAction, Dispatch } from "react";
2
+ import { Transaction } from "../../../../graphql.billing.autogenerated";
3
+ interface TransactionHistoryTableProps {
4
+ paymentTransactions: Transaction[];
5
+ rowsPerPage: number;
6
+ setRowsPerPage: Dispatch<SetStateAction<number>>;
7
+ page: number;
8
+ setPage: Dispatch<SetStateAction<number>>;
9
+ order: "asc" | "desc";
10
+ setOrder: Dispatch<SetStateAction<"asc" | "desc">>;
11
+ orderBy: string | null;
12
+ setOrderBy: Dispatch<SetStateAction<string | null>>;
13
+ }
14
+ export default function TransactionHistoryTable(props: TransactionHistoryTableProps): import("@emotion/react/jsx-runtime").JSX.Element;
15
+ export {};
@@ -59,4 +59,9 @@ export declare function SubscriptionProvider({ children, workspaceId: propWorksp
59
59
  * ```
60
60
  */
61
61
  export declare function useCurrentSubscription(): SubscriptionContextValue;
62
+ /**
63
+ * useCurrentSubscriptionOptional - Safe hook for screens that may render
64
+ * outside SubscriptionProvider (e.g. embedded surfaces).
65
+ */
66
+ export declare function useCurrentSubscriptionOptional(): SubscriptionContextValue | undefined;
62
67
  export default SubscriptionContext;
@@ -0,0 +1,9 @@
1
+ import { PlanPricing } from "../../../graphql.billing.autogenerated";
2
+ export default function useGetPaidToday({ pricingData, isRenewal, isYearly, }: {
3
+ pricingData?: PlanPricing;
4
+ isRenewal: boolean;
5
+ isYearly: boolean;
6
+ }): {
7
+ creditsUsed: number | undefined;
8
+ paidToday: number | undefined;
9
+ };
@@ -0,0 +1,51 @@
1
+ import { PendingPaymentStatus } from "../../../graphql.billing.autogenerated";
2
+ export default function usePendingPayments(): {
3
+ getPendingPayment: (list: {
4
+ __typename?: "PendingPayment" | undefined;
5
+ id: number;
6
+ status: PendingPaymentStatus;
7
+ failureReason?: string | null | undefined;
8
+ paymentMethodId?: number | null | undefined;
9
+ planId?: number | null | undefined;
10
+ transactionId?: number | null | undefined;
11
+ isSetupIntent: boolean;
12
+ isRenewal: boolean;
13
+ term: string;
14
+ createdAt: any;
15
+ updatedAt: any;
16
+ completedAt?: any;
17
+ }[]) => {
18
+ __typename?: "PendingPayment" | undefined;
19
+ id: number;
20
+ status: PendingPaymentStatus;
21
+ failureReason?: string | null | undefined;
22
+ paymentMethodId?: number | null | undefined;
23
+ planId?: number | null | undefined;
24
+ transactionId?: number | null | undefined;
25
+ isSetupIntent: boolean;
26
+ isRenewal: boolean;
27
+ term: string;
28
+ createdAt: any;
29
+ updatedAt: any;
30
+ completedAt?: any;
31
+ } | undefined;
32
+ pendingPayment: {
33
+ __typename?: "PendingPayment" | undefined;
34
+ id: number;
35
+ status: PendingPaymentStatus;
36
+ failureReason?: string | null | undefined;
37
+ paymentMethodId?: number | null | undefined;
38
+ planId?: number | null | undefined;
39
+ transactionId?: number | null | undefined;
40
+ isSetupIntent: boolean;
41
+ isRenewal: boolean;
42
+ term: string;
43
+ createdAt: any;
44
+ updatedAt: any;
45
+ completedAt?: any;
46
+ } | undefined;
47
+ mutatePendingPayments: (variables?: Partial<import("../../../graphql.billing.autogenerated").Exact<{
48
+ input: import("../../../graphql.billing.autogenerated").PendingPaymentsInput;
49
+ }>> | undefined) => Promise<import("@apollo/client").ApolloQueryResult<import("../../../graphql.billing.autogenerated").PendingPaymentsQuery>>;
50
+ handleCancelPayment: (id: number) => Promise<void>;
51
+ };
@@ -0,0 +1,15 @@
1
+ import { CheckoutResult, PlanType, Term } from "../../../graphql.billing.autogenerated";
2
+ interface UseSetupPaymentProps {
3
+ workspaceId: number | undefined;
4
+ planType: PlanType;
5
+ term: Term;
6
+ turnstile: string;
7
+ isRenewal?: boolean;
8
+ }
9
+ export default function useSetupPayment({ workspaceId, planType, term, turnstile, isRenewal, }: UseSetupPaymentProps): {
10
+ loading: boolean;
11
+ process: (paymentMethod?: string) => Promise<void>;
12
+ response: CheckoutResult | undefined;
13
+ hasError: boolean;
14
+ };
15
+ export {};
@@ -0,0 +1,12 @@
1
+ import { SetupPaymentMethodResult } from "../../../graphql.billing.autogenerated";
2
+ interface UseSetupPaymentMethodProps {
3
+ workspaceId: number | undefined;
4
+ turnstile: string;
5
+ }
6
+ export default function useSetupPaymentMethod({ workspaceId, turnstile, }: UseSetupPaymentMethodProps): {
7
+ loading: boolean;
8
+ process: () => Promise<void>;
9
+ response: SetupPaymentMethodResult | undefined;
10
+ errorCode: "exceeding_updating_payment_method_limit" | undefined;
11
+ };
12
+ export {};
@@ -0,0 +1,2 @@
1
+ declare function CheckoutPage(): import("@emotion/react/jsx-runtime").JSX.Element;
2
+ export default CheckoutPage;
@@ -0,0 +1 @@
1
+ export default function CustomizeDone(): import("@emotion/react/jsx-runtime").JSX.Element;
@@ -0,0 +1 @@
1
+ export default function NotFoundPage(): import("@emotion/react/jsx-runtime").JSX.Element;
@@ -0,0 +1,2 @@
1
+ declare function Invoices(): import("@emotion/react/jsx-runtime").JSX.Element;
2
+ export default Invoices;
@@ -0,0 +1 @@
1
+ export default function PendingPayment(): import("@emotion/react/jsx-runtime").JSX.Element;
@@ -0,0 +1,3 @@
1
+ import { Stripe } from "@stripe/stripe-js";
2
+ declare const getStripe: () => Promise<Stripe | null>;
3
+ export default getStripe;
@@ -0,0 +1 @@
1
+ export declare const openArticleModal: (id: string) => never;
@@ -0,0 +1,3 @@
1
+ export declare const isStripePaymentProvider: boolean;
2
+ export declare const isPolarPaymentProvider: boolean;
3
+ export declare const hasHostedPaymentProvider: boolean;
@@ -0,0 +1,2 @@
1
+ import { ConfirmCardPaymentData, Stripe } from "@stripe/stripe-js";
2
+ export declare const confirmRetryCardPayment: (stripeClientSecret: string, stripeDataObject: ConfirmCardPaymentData, stripe: Stripe, retryTimes?: number) => any;
@@ -10,6 +10,11 @@ interface BroadcastAnalysisReciepientsHeaderProps {
10
10
  selectedState: BroadcastState | undefined;
11
11
  setSelectedState: (state: BroadcastState | undefined) => void;
12
12
  clientStages: Tag[];
13
+ /** When set, shows a CSV export control (e.g. workspace delivery report). */
14
+ onDownloadCsv?: () => void;
15
+ /** Workspace delivery report: filter rows by template name substring (server-side). */
16
+ templateNameQuery?: string;
17
+ setTemplateNameQuery?: (query: string) => void;
13
18
  }
14
- declare const _default: React.MemoExoticComponent<({ setSearchQuery, searchQuery, selectedCountry, setSelectedCountry, selectedStage, setSelectedStage, selectedState, setSelectedState, clientStages }: BroadcastAnalysisReciepientsHeaderProps) => import("@emotion/react/jsx-runtime").JSX.Element>;
19
+ declare const _default: React.MemoExoticComponent<({ setSearchQuery, searchQuery, selectedCountry, setSelectedCountry, selectedStage, setSelectedStage, selectedState, setSelectedState, clientStages, onDownloadCsv, templateNameQuery, setTemplateNameQuery, }: BroadcastAnalysisReciepientsHeaderProps) => import("@emotion/react/jsx-runtime").JSX.Element>;
15
20
  export default _default;
@@ -7,6 +7,10 @@ interface BroadcastAnalysisReciepientsTableProps {
7
7
  onLoadMore?: () => void;
8
8
  loadingMore?: boolean;
9
9
  clientStages: Tag[];
10
+ /** When true, show broadcast name and link to that broadcast's analysis. */
11
+ showBroadcastColumns?: boolean;
12
+ /** Expand the table body to fill available vertical space (flex parents must set min-height: 0). */
13
+ fillHeight?: boolean;
10
14
  }
11
- declare const _default: React.MemoExoticComponent<({ reciepients, loading, hasMore, onLoadMore, loadingMore, clientStages, }: BroadcastAnalysisReciepientsTableProps) => import("@emotion/react/jsx-runtime").JSX.Element>;
15
+ declare const _default: React.MemoExoticComponent<({ reciepients, loading, hasMore, onLoadMore, loadingMore, clientStages, showBroadcastColumns, fillHeight, }: BroadcastAnalysisReciepientsTableProps) => import("@emotion/react/jsx-runtime").JSX.Element>;
12
16
  export default _default;
@@ -5,6 +5,7 @@ interface BroadcastInfoHeaderProps {
5
5
  loading: boolean;
6
6
  disabledSave: boolean;
7
7
  isEditMode: boolean;
8
+ saveDisabledReason?: string;
8
9
  }
9
- declare const _default: React.MemoExoticComponent<({ onCancel, onSave, loading, disabledSave, isEditMode }: BroadcastInfoHeaderProps) => import("@emotion/react/jsx-runtime").JSX.Element>;
10
+ declare const _default: React.MemoExoticComponent<({ onCancel, onSave, loading, disabledSave, isEditMode, saveDisabledReason, }: BroadcastInfoHeaderProps) => import("@emotion/react/jsx-runtime").JSX.Element>;
10
11
  export default _default;
@@ -0,0 +1,2 @@
1
+ declare const BroadcastTargetingComplianceNotice: () => import("@emotion/react/jsx-runtime").JSX.Element;
2
+ export default BroadcastTargetingComplianceNotice;