@bcrumbs.net/inbox 0.0.62 → 0.0.63

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 (28) hide show
  1. package/index.cjs.js +119 -93
  2. package/index.esm.js +119 -93
  3. package/package.json +1 -1
  4. package/src/app/auth/components/ClerkForgetPanel.d.ts +6 -0
  5. package/src/app/auth/components/ClerkResetPasswordPanel.d.ts +6 -0
  6. package/src/app/auth/components/ClerkSessionBridge.d.ts +12 -0
  7. package/src/app/auth/components/ClerkSignInPanel.d.ts +2 -0
  8. package/src/app/auth/components/ClerkSignUpPanel.d.ts +2 -0
  9. package/src/app/auth/components/password-page/PasswordFormView.d.ts +10 -1
  10. package/src/app/auth/config/authProvider.d.ts +12 -0
  11. package/src/app/auth/config/clerkAppearance.d.ts +430 -0
  12. package/src/app/auth/pages/Auth.style.d.ts +14 -0
  13. package/src/app/auth/pages/CheckAuth.d.ts +7 -4
  14. package/src/app/auth/pages/Forget.d.ts +2 -2
  15. package/src/app/auth/pages/Login.d.ts +2 -3
  16. package/src/app/auth/pages/Password.d.ts +2 -2
  17. package/src/app/auth/pages/Register.d.ts +2 -3
  18. package/src/app/auth/utils/clerkTracking.d.ts +9 -0
  19. package/src/app/billing/utils/pendingPlanPurchaseStorage.d.ts +6 -6
  20. package/src/app/generic/hooks/useOnlineStatus.d.ts +1 -1
  21. package/src/app/inbox/components/Shared/MobileChatDetailsSlider.d.ts +1 -0
  22. package/src/app/inbox/components/Shared/MobileDetailsSwipeHint.d.ts +1 -1
  23. package/src/app/resources/components/ListResources/Utils.d.ts +0 -1
  24. package/src/app/subscriptions/utils/estimateUpgradeProration.d.ts +19 -0
  25. package/src/assets/locales/translations.d.ts +6 -0
  26. package/src/environments/types.d.ts +5 -0
  27. package/src/graphql.autogenerated.d.ts +73 -2
  28. package/src/lib/EmbeddedMobileMenu.d.ts +1 -2
@@ -50,6 +50,8 @@ export declare const convertLanguageJsonToObject: (json: any, objToConvertTo?: C
50
50
  forgetToSendEmail: string;
51
51
  forgetTitle: string;
52
52
  forgetPrompt: string;
53
+ verificationCode: string;
54
+ verificationCodePlaceholder: string;
53
55
  getStartedBtn: string;
54
56
  continue: string;
55
57
  dontHaveAnAccount: string;
@@ -1194,6 +1196,10 @@ export declare const convertLanguageJsonToObject: (json: any, objToConvertTo?: C
1194
1196
  integrationIdCopyFailed: string;
1195
1197
  rating: string;
1196
1198
  ratingDescription: string;
1199
+ sendOnly: string;
1200
+ sendOnlyDescription: string;
1201
+ sendOnlyMessage: string;
1202
+ sendOnlyMessagePlaceholder: string;
1197
1203
  };
1198
1204
  crumby: {
1199
1205
  title: string;
@@ -1,4 +1,5 @@
1
1
  export type PaymentProvider = 'stripe' | 'polar' | 'none';
2
+ export type AuthProvider = 'clerk' | 'legacy';
2
3
  export type Environment = {
3
4
  production: boolean;
4
5
  enablePaidPlans: boolean;
@@ -17,4 +18,8 @@ export type Environment = {
17
18
  partner?: string;
18
19
  turnstileSiteKey?: string;
19
20
  stripeKey?: string;
21
+ /** When 'clerk', login/register use Clerk UI. Defaults to legacy DConfig forms. */
22
+ authProvider?: AuthProvider;
23
+ /** Required when authProvider is 'clerk'. Publishable key only — never the secret. */
24
+ clerkPublishableKey?: string;
20
25
  };
@@ -1500,7 +1500,10 @@ export type CreateWorkspaceInput = {
1500
1500
  taxOffice?: InputMaybe<Scalars['String']['input']>;
1501
1501
  website?: InputMaybe<Scalars['String']['input']>;
1502
1502
  };
1503
- /** Counts of auth records removed when deleting a workspace. */
1503
+ /**
1504
+ * Counts of auth records removed when deleting a workspace.
1505
+ * User accounts are preserved; users is always 0.
1506
+ */
1504
1507
  export type DeleteWorkspaceAuthCounts = {
1505
1508
  __typename?: 'DeleteWorkspaceAuthCounts';
1506
1509
  memberships: Scalars['Int']['output'];
@@ -1827,6 +1830,8 @@ export type Message = {
1827
1830
  messageId: Scalars['ID']['output'];
1828
1831
  /** The note type of the message. */
1829
1832
  noteType?: Maybe<NoteType>;
1833
+ /** Emoji reactions on this message. */
1834
+ reactions?: Maybe<Array<MessageReaction>>;
1830
1835
  /** The sender identifier. It is used to identify the sender of the message in the provider's system. */
1831
1836
  senderId?: Maybe<Scalars['String']['output']>;
1832
1837
  /** The referral source type when the message originated from an ad or referral link. */
@@ -1918,6 +1923,36 @@ export type MessageInput = {
1918
1923
  type: MessageType;
1919
1924
  workspaceId: Scalars['Int']['input'];
1920
1925
  };
1926
+ /** MessageReaction is an emoji reaction on a message. */
1927
+ export type MessageReaction = {
1928
+ __typename?: 'MessageReaction';
1929
+ /**
1930
+ * The agent id when the reaction was added by a known agent. Null when the
1931
+ * business reacted from the channel app itself.
1932
+ */
1933
+ agentId?: Maybe<Scalars['ID']['output']>;
1934
+ /** When the reaction was added. */
1935
+ createdAt: Scalars['DateTime']['output'];
1936
+ /** The emoji character of the reaction. */
1937
+ emoji: Scalars['String']['output'];
1938
+ /**
1939
+ * Whether the reaction was added by the business side rather than the client.
1940
+ * A message holds at most one reaction per side.
1941
+ */
1942
+ isAgent: Scalars['Boolean']['output'];
1943
+ };
1944
+ /** MessageReactionInput is an input of the message reaction mutations. */
1945
+ export type MessageReactionInput = {
1946
+ /** The id of the conversation. */
1947
+ convId: Scalars['ID']['input'];
1948
+ /** The emoji character of the reaction. */
1949
+ emoji: Scalars['String']['input'];
1950
+ /** The integration/channel id of the conversation. */
1951
+ integrationId: Scalars['ID']['input'];
1952
+ /** The id of the message to react to. */
1953
+ messageId: Scalars['ID']['input'];
1954
+ workspaceId: Scalars['Int']['input'];
1955
+ };
1921
1956
  /**
1922
1957
  * MessageStatus is an enum of the message statuses.
1923
1958
  * It can be:
@@ -2126,7 +2161,9 @@ export type Mutation = {
2126
2161
  deleteTag: Tag;
2127
2162
  deleteWebhook: Webhook;
2128
2163
  /**
2129
- * Permanently delete a workspace. Only the OWNER can call this.
2164
+ * Permanently delete a workspace. Allowed for user, partner, or internalService callers only
2165
+ * (not apiKey / agentApiKey). Users must be OWNER; partners may delete their own workspace.
2166
+ * If a previous delete removed roles then failed, retry is allowed when no roles remain.
2130
2167
  * Removes core data, then calls internal endpoints on bot, billing, and auth to remove related data.
2131
2168
  */
2132
2169
  deleteWorkspace: DeleteWorkspaceResult;
@@ -2160,6 +2197,8 @@ export type Mutation = {
2160
2197
  patchWorkspaceSettings: WorkspaceSettings;
2161
2198
  /** Put a client (Update a client if it exists, create a new one if it doesn't). You should have the MANAGE_CLIENTS permission to put a client. */
2162
2199
  putClient: Client;
2200
+ /** React to a message with an emoji. */
2201
+ reactToMessage: Message;
2163
2202
  /** Remove a quick reply. You should have the MANAGE_WORKSPACE permission to remove a quick reply. */
2164
2203
  removeQuickReply: QuickReply;
2165
2204
  /**
@@ -2194,6 +2233,8 @@ export type Mutation = {
2194
2233
  undeleteClient: Client;
2195
2234
  /** Undelete a client by externalClientId. You should have the MANAGE_CLIENTS permission to undelete a client. */
2196
2235
  undeleteClientByExternalId: Client;
2236
+ /** Remove an emoji reaction from a message. */
2237
+ unreactToMessage: Message;
2197
2238
  /** Untag a client. You should have the MANAGE_CLIENTS permission to untag a client. */
2198
2239
  untagClient: Client;
2199
2240
  /** Untag a conversation. */
@@ -2360,6 +2401,9 @@ export type MutationPatchWorkspaceSettingsArgs = {
2360
2401
  export type MutationPutClientArgs = {
2361
2402
  input: ClientPutInput;
2362
2403
  };
2404
+ export type MutationReactToMessageArgs = {
2405
+ input: MessageReactionInput;
2406
+ };
2363
2407
  export type MutationRemoveQuickReplyArgs = {
2364
2408
  input: QuickReplyRemoveInput;
2365
2409
  };
@@ -2399,6 +2443,9 @@ export type MutationUndeleteClientArgs = {
2399
2443
  export type MutationUndeleteClientByExternalIdArgs = {
2400
2444
  input: ClientDeleteByExternalIdInput;
2401
2445
  };
2446
+ export type MutationUnreactToMessageArgs = {
2447
+ input: MessageReactionInput;
2448
+ };
2402
2449
  export type MutationUntagClientArgs = {
2403
2450
  input: ClientTagInput;
2404
2451
  };
@@ -2737,6 +2784,30 @@ export type QuickReplyRemoveInput = {
2737
2784
  id: Scalars['ID']['input'];
2738
2785
  workspaceId: Scalars['Int']['input'];
2739
2786
  };
2787
+ /** ReactionUpdateDTO is data transfer object for an inbound emoji reaction. */
2788
+ export type ReactionUpdateDto = {
2789
+ __typename?: 'ReactionUpdateDTO';
2790
+ /** Whether to add (react) or remove (unreact) the reaction. */
2791
+ action: Scalars['String']['output'];
2792
+ createdAt: Scalars['String']['output'];
2793
+ debug?: Maybe<Scalars['Boolean']['output']>;
2794
+ /** The emoji character of the reaction. Empty string when action is unreact. */
2795
+ emoji: Scalars['String']['output'];
2796
+ /** The external id of the client whose conversation the reaction belongs to. */
2797
+ externalClientId: Scalars['String']['output'];
2798
+ /** The external id of the message being reacted to. */
2799
+ externalMessageId: Scalars['String']['output'];
2800
+ integrationId: Scalars['ID']['output'];
2801
+ integrationType: IntegrationType;
2802
+ /**
2803
+ * Whether the reaction was applied by the business side, either an agent or
2804
+ * the business's own channel app.
2805
+ */
2806
+ isAgent?: Maybe<Scalars['Boolean']['output']>;
2807
+ spanId?: Maybe<Scalars['String']['output']>;
2808
+ traceId?: Maybe<Scalars['String']['output']>;
2809
+ workspaceId: Scalars['Int']['output'];
2810
+ };
2740
2811
  /** RetryFailedBroadcastTargetsInput is an input of the retry failed broadcast targets mutation. */
2741
2812
  export type RetryFailedBroadcastTargetsInput = {
2742
2813
  id: Scalars['ID']['input'];
@@ -3,8 +3,7 @@ export type { MobileViews };
3
3
  export type EmbeddedMobileMenuProps = {
4
4
  activePage: MobileViews;
5
5
  setActivePage: (page: MobileViews) => void;
6
- /** @deprecated Details is opened via swipe; kept for call-site compatibility. */
7
6
  hideDetails?: boolean;
8
7
  };
9
8
  /** Bottom nav for embedded inbox — no dashboard tab, no react-router. */
10
- export declare const EmbeddedMobileMenu: ({ activePage, setActivePage }: EmbeddedMobileMenuProps) => import("@emotion/react/jsx-runtime").JSX.Element;
9
+ export declare const EmbeddedMobileMenu: ({ activePage, setActivePage, hideDetails }: EmbeddedMobileMenuProps) => import("@emotion/react/jsx-runtime").JSX.Element;