@cossistant/next 0.0.33 → 0.1.1

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 (67) hide show
  1. package/README.md +4 -4
  2. package/_virtual/rolldown_runtime.js +42 -0
  3. package/hooks/index.d.ts +4 -3
  4. package/hooks/index.js +4 -2
  5. package/identify-visitor.d.ts +1 -1
  6. package/identify-visitor.js +4 -2
  7. package/index.d.ts +15 -25
  8. package/index.js +23 -10
  9. package/index.js.map +1 -0
  10. package/package.json +3 -14
  11. package/primitives/index.d.ts +8 -1
  12. package/primitives/index.d.ts.map +1 -0
  13. package/primitives/index.js +11 -2
  14. package/primitives/index.js.map +1 -0
  15. package/provider.d.ts +2 -1
  16. package/provider.js +4 -2
  17. package/react/src/hooks/index.d.ts +2 -2
  18. package/react/src/hooks/private/use-grouped-messages.d.ts +14 -1
  19. package/react/src/hooks/private/use-grouped-messages.d.ts.map +1 -1
  20. package/react/src/hooks/private/use-rest-client.d.ts.map +1 -1
  21. package/react/src/hooks/use-conversation-auto-seen.d.ts.map +1 -1
  22. package/react/src/hooks/use-conversation-page.d.ts.map +1 -1
  23. package/react/src/hooks/use-conversation-seen.d.ts.map +1 -1
  24. package/react/src/hooks/use-conversation-typing.d.ts.map +1 -1
  25. package/react/src/hooks/use-file-upload.d.ts +54 -1
  26. package/react/src/hooks/use-file-upload.d.ts.map +1 -0
  27. package/react/src/provider.d.ts.map +1 -1
  28. package/react/src/realtime/provider.d.ts +4 -18
  29. package/react/src/realtime/provider.d.ts.map +1 -1
  30. package/react/src/realtime/seen-store.d.ts.map +1 -1
  31. package/react/src/realtime/support-provider.d.ts +8 -6
  32. package/react/src/realtime/support-provider.d.ts.map +1 -1
  33. package/react/src/realtime/typing-store.d.ts.map +1 -1
  34. package/react/src/support/components/button.d.ts +25 -1
  35. package/react/src/support/components/button.d.ts.map +1 -0
  36. package/react/src/support/components/header.d.ts +11 -0
  37. package/react/src/support/components/header.d.ts.map +1 -0
  38. package/react/src/support/context/events.d.ts +54 -1
  39. package/react/src/support/context/events.d.ts.map +1 -1
  40. package/react/src/support/context/handle.d.ts +17 -1
  41. package/react/src/support/context/handle.d.ts.map +1 -1
  42. package/react/src/support/context/websocket.d.ts +17 -7
  43. package/react/src/support/context/websocket.d.ts.map +1 -1
  44. package/react/src/support/index.d.ts +25 -5
  45. package/react/src/support/index.d.ts.map +1 -1
  46. package/react/src/support/store/support-store.d.ts +5 -5
  47. package/react/src/support/store/support-store.d.ts.map +1 -1
  48. package/react/src/support/text/index.d.ts +34 -2
  49. package/react/src/support/text/index.d.ts.map +1 -0
  50. package/react/src/support/text/locales/keys.d.ts +11 -1
  51. package/react/src/support/text/locales/keys.d.ts.map +1 -1
  52. package/react/src/support-config.d.ts +30 -3
  53. package/react/src/support-config.d.ts.map +1 -1
  54. package/react/src/utils/index.d.ts +1 -1
  55. package/react/src/utils/merge-refs.d.ts +30 -1
  56. package/react/src/utils/merge-refs.d.ts.map +1 -0
  57. package/react/src/utils/use-render-element.d.ts.map +1 -1
  58. package/realtime/index.d.ts +1 -1
  59. package/realtime/index.js +4 -2
  60. package/styles.css +1 -0
  61. package/support/index.d.ts +9 -3
  62. package/support/index.js +5 -2
  63. package/support-config.d.ts +2 -2
  64. package/support-config.js +4 -2
  65. package/support.css +1 -2
  66. package/utils/index.d.ts +2 -1
  67. package/utils/index.js +4 -2
package/README.md CHANGED
@@ -9,13 +9,13 @@ Build fully featured customer support experiences in your NextJS app with the of
9
9
  Pick the command that matches your package manager:
10
10
 
11
11
  ```bash
12
- bun add @cossistant/next @cossistant/react
12
+ bun add @cossistant/next
13
13
  # or
14
- npm install @cossistant/next @cossistant/react
14
+ npm install @cossistant/next
15
15
  # or
16
- pnpm add @cossistant/next @cossistant/react
16
+ pnpm add @cossistant/next
17
17
  # or
18
- yarn add @cossistant/next @cossistant/react
18
+ yarn add @cossistant/next
19
19
  ```
20
20
 
21
21
  ## Need help or spot a typo?
@@ -0,0 +1,42 @@
1
+ //#region rolldown:runtime
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (all, symbols) => {
7
+ let target = {};
8
+ for (var name in all) {
9
+ __defProp(target, name, {
10
+ get: all[name],
11
+ enumerable: true
12
+ });
13
+ }
14
+ if (symbols) {
15
+ __defProp(target, Symbol.toStringTag, { value: "Module" });
16
+ }
17
+ return target;
18
+ };
19
+ var __copyProps = (to, from, except, desc) => {
20
+ if (from && typeof from === "object" || typeof from === "function") {
21
+ for (var keys = __getOwnPropNames(from), i = 0, n = keys.length, key; i < n; i++) {
22
+ key = keys[i];
23
+ if (!__hasOwnProp.call(to, key) && key !== except) {
24
+ __defProp(to, key, {
25
+ get: ((k) => from[k]).bind(null, key),
26
+ enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
27
+ });
28
+ }
29
+ }
30
+ }
31
+ return to;
32
+ };
33
+ var __reExport = (target, mod, secondTarget, symbols) => {
34
+ if (symbols) {
35
+ __defProp(target, Symbol.toStringTag, { value: "Module" });
36
+ secondTarget && __defProp(secondTarget, Symbol.toStringTag, { value: "Module" });
37
+ }
38
+ __copyProps(target, mod, "default"), secondTarget && __copyProps(secondTarget, mod, "default");
39
+ };
40
+
41
+ //#endregion
42
+ export { __export, __reExport };
package/hooks/index.d.ts CHANGED
@@ -1,8 +1,8 @@
1
1
  import { useClientQuery } from "../react/src/hooks/private/use-client-query.js";
2
2
  import { useDefaultMessages } from "../react/src/hooks/private/use-default-messages.js";
3
- import { ConversationItem, DaySeparatorItem, GroupedActivity, GroupedMessage, TimelineEventItem, TimelineToolItem, UseGroupedMessagesOptions, UseGroupedMessagesProps, useGroupedMessages } from "../react/src/hooks/private/use-grouped-messages.js";
3
+ import { ConversationItem, DaySeparatorItem, GroupedActivity, GroupedMessage, PreparedTimelineItems, TIMELINE_GROUP_WINDOW_MS, TimelineEventItem, TimelineToolItem, UseGroupedMessagesOptions, UseGroupedMessagesProps, buildTimelineReadReceiptData, groupTimelineItems, prepareTimelineItems, useGroupedMessages } from "../react/src/hooks/private/use-grouped-messages.js";
4
4
  import { UseMultimodalInputOptions, UseMultimodalInputReturn, useMultimodalInput } from "../react/src/hooks/private/use-multimodal-input.js";
5
- import { UseClientResult, useClient } from "../react/src/hooks/private/use-rest-client.js";
5
+ import { ConfigurationError, UseClientResult, useClient } from "../react/src/hooks/private/use-rest-client.js";
6
6
  import { UseComposerRefocusOptions, UseComposerRefocusReturn, useComposerRefocus } from "../react/src/hooks/use-composer-refocus.js";
7
7
  import { UseConversationOptions, UseConversationResult, useConversation } from "../react/src/hooks/use-conversation.js";
8
8
  import { CONVERSATION_AUTO_SEEN_DELAY_MS, UseConversationAutoSeenOptions, useConversationAutoSeen } from "../react/src/hooks/use-conversation-auto-seen.js";
@@ -16,6 +16,7 @@ import { ConversationTypingParticipant, useConversationTyping } from "../react/s
16
16
  import { ConversationTimelineTypingParticipant, UseConversationTimelineOptions, UseConversationTimelineReturn, useConversationTimeline } from "../react/src/hooks/use-conversation-timeline.js";
17
17
  import { UseConversationsOptions, UseConversationsResult, useConversations } from "../react/src/hooks/use-conversations.js";
18
18
  import { CreateConversationVariables, UseCreateConversationOptions, UseCreateConversationResult, useCreateConversation } from "../react/src/hooks/use-create-conversation.js";
19
+ import { FileUploadPart, UseFileUploadOptions, UseFileUploadReturn, useFileUpload } from "../react/src/hooks/use-file-upload.js";
19
20
  import { UseHomePageOptions, UseHomePageReturn, useHomePage } from "../react/src/hooks/use-home-page.js";
20
21
  import { UseMessageComposerOptions, UseMessageComposerReturn, useMessageComposer } from "../react/src/hooks/use-message-composer.js";
21
22
  import { useNewMessageSound } from "../react/src/hooks/use-new-message-sound.js";
@@ -27,4 +28,4 @@ import { useTypingSound } from "../react/src/hooks/use-typing-sound.js";
27
28
  import { UseVisitorReturn, useVisitor } from "../react/src/hooks/use-visitor.js";
28
29
  import { WindowVisibilityFocusState, useWindowVisibilityFocus } from "../react/src/hooks/use-window-visibility-focus.js";
29
30
  import "../react/src/hooks/index.js";
30
- export { CONVERSATION_AUTO_SEEN_DELAY_MS, type ConversationItem, type ConversationLifecycleState, type ConversationPreviewAssignedAgent, type ConversationPreviewLastMessage, type ConversationPreviewTypingParticipant, type ConversationPreviewTypingState, type ConversationTimelineTypingParticipant, type ConversationTypingParticipant, type CreateConversationVariables, type DaySeparatorItem, type GroupedActivity, type GroupedMessage, type SendMessageOptions, type SendMessageResult, type TimelineEventItem, type TimelineToolItem, type UseClientResult, type UseComposerRefocusOptions, type UseComposerRefocusReturn, type UseConversationAutoSeenOptions, type UseConversationHistoryPageOptions, type UseConversationHistoryPageReturn, type UseConversationLifecycleOptions, type UseConversationLifecycleReturn, type UseConversationOptions, type UseConversationPageOptions, type UseConversationPageReturn, type UseConversationPreviewOptions, type UseConversationPreviewReturn, type UseConversationResult, type UseConversationTimelineItemsOptions, type UseConversationTimelineItemsResult, type UseConversationTimelineOptions, type UseConversationTimelineReturn, type UseConversationsOptions, type UseConversationsResult, type UseCreateConversationOptions, type UseCreateConversationResult, type UseGroupedMessagesOptions, type UseGroupedMessagesProps, type UseHomePageOptions, type UseHomePageReturn, type UseMessageComposerOptions, type UseMessageComposerReturn, type UseMultimodalInputOptions, type UseMultimodalInputReturn, type UseRealtimeSupportOptions, type UseRealtimeSupportResult, type UseScrollMaskOptions, type UseScrollMaskReturn, type UseSendMessageOptions, type UseSendMessageResult, type UseSoundEffectOptions, type UseSoundEffectReturn, type UseVisitorReturn, type WindowVisibilityFocusState, useClient, useClientQuery, useComposerRefocus, useConversation, useConversationAutoSeen, useConversationHistoryPage, useConversationLifecycle, useConversationPage, useConversationPreview, useConversationSeen, useConversationTimeline, useConversationTimelineItems, useConversationTyping, useConversations, useCreateConversation, useDebouncedConversationSeen, useDefaultMessages, useGroupedMessages, useHomePage, useMessageComposer, useMultimodalInput, useNewMessageSound, useRealtimeSupport, useScrollMask, useSendMessage, useSoundEffect, useTypingSound, useVisitor, useWindowVisibilityFocus };
31
+ export { CONVERSATION_AUTO_SEEN_DELAY_MS, ConfigurationError, ConversationItem, ConversationLifecycleState, ConversationPreviewAssignedAgent, ConversationPreviewLastMessage, ConversationPreviewTypingParticipant, ConversationPreviewTypingState, ConversationTimelineTypingParticipant, ConversationTypingParticipant, CreateConversationVariables, DaySeparatorItem, FileUploadPart, GroupedActivity, GroupedMessage, PreparedTimelineItems, SendMessageOptions, SendMessageResult, TIMELINE_GROUP_WINDOW_MS, TimelineEventItem, TimelineToolItem, UseClientResult, UseComposerRefocusOptions, UseComposerRefocusReturn, UseConversationAutoSeenOptions, UseConversationHistoryPageOptions, UseConversationHistoryPageReturn, UseConversationLifecycleOptions, UseConversationLifecycleReturn, UseConversationOptions, UseConversationPageOptions, UseConversationPageReturn, UseConversationPreviewOptions, UseConversationPreviewReturn, UseConversationResult, UseConversationTimelineItemsOptions, UseConversationTimelineItemsResult, UseConversationTimelineOptions, UseConversationTimelineReturn, UseConversationsOptions, UseConversationsResult, UseCreateConversationOptions, UseCreateConversationResult, UseFileUploadOptions, UseFileUploadReturn, UseGroupedMessagesOptions, UseGroupedMessagesProps, UseHomePageOptions, UseHomePageReturn, UseMessageComposerOptions, UseMessageComposerReturn, UseMultimodalInputOptions, UseMultimodalInputReturn, UseRealtimeSupportOptions, UseRealtimeSupportResult, UseScrollMaskOptions, UseScrollMaskReturn, UseSendMessageOptions, UseSendMessageResult, UseSoundEffectOptions, UseSoundEffectReturn, UseVisitorReturn, WindowVisibilityFocusState, buildTimelineReadReceiptData, groupTimelineItems, prepareTimelineItems, useClient, useClientQuery, useComposerRefocus, useConversation, useConversationAutoSeen, useConversationHistoryPage, useConversationLifecycle, useConversationPage, useConversationPreview, useConversationSeen, useConversationTimeline, useConversationTimelineItems, useConversationTyping, useConversations, useCreateConversation, useDebouncedConversationSeen, useDefaultMessages, useFileUpload, useGroupedMessages, useHomePage, useMessageComposer, useMultimodalInput, useNewMessageSound, useRealtimeSupport, useScrollMask, useSendMessage, useSoundEffect, useTypingSound, useVisitor, useWindowVisibilityFocus };
package/hooks/index.js CHANGED
@@ -1,3 +1,5 @@
1
- import { CONVERSATION_AUTO_SEEN_DELAY_MS, useClient, useClientQuery, useComposerRefocus, useConversation, useConversationAutoSeen, useConversationHistoryPage, useConversationLifecycle, useConversationPage, useConversationPreview, useConversationSeen, useConversationTimeline, useConversationTimelineItems, useConversationTyping, useConversations, useCreateConversation, useDebouncedConversationSeen, useDefaultMessages, useGroupedMessages, useHomePage, useMessageComposer, useMultimodalInput, useNewMessageSound, useRealtimeSupport, useScrollMask, useSendMessage, useSoundEffect, useTypingSound, useVisitor, useWindowVisibilityFocus } from "@cossistant/react/hooks";
1
+ import { __reExport } from "../_virtual/rolldown_runtime.js";
2
2
 
3
- export { CONVERSATION_AUTO_SEEN_DELAY_MS, useClient, useClientQuery, useComposerRefocus, useConversation, useConversationAutoSeen, useConversationHistoryPage, useConversationLifecycle, useConversationPage, useConversationPreview, useConversationSeen, useConversationTimeline, useConversationTimelineItems, useConversationTyping, useConversations, useCreateConversation, useDebouncedConversationSeen, useDefaultMessages, useGroupedMessages, useHomePage, useMessageComposer, useMultimodalInput, useNewMessageSound, useRealtimeSupport, useScrollMask, useSendMessage, useSoundEffect, useTypingSound, useVisitor, useWindowVisibilityFocus };
3
+ export * from "@cossistant/react/hooks"
4
+
5
+ export { };
@@ -1,2 +1,2 @@
1
1
  import { IdentifySupportVisitor, IdentifySupportVisitorProps } from "./react/src/identify-visitor.js";
2
- export { IdentifySupportVisitor, type IdentifySupportVisitorProps };
2
+ export { IdentifySupportVisitor, IdentifySupportVisitorProps };
@@ -1,5 +1,7 @@
1
1
  "use client";
2
2
 
3
- import { IdentifySupportVisitor } from "@cossistant/react/identify-visitor";
3
+ import { __reExport } from "./_virtual/rolldown_runtime.js";
4
4
 
5
- export { IdentifySupportVisitor };
5
+ export * from "@cossistant/react/identify-visitor"
6
+
7
+ export { };
package/index.d.ts CHANGED
@@ -1,14 +1,15 @@
1
1
  import { useClientQuery } from "./react/src/hooks/private/use-client-query.js";
2
2
  import { useDefaultMessages } from "./react/src/hooks/private/use-default-messages.js";
3
- import { ConversationItem, DaySeparatorItem, GroupedActivity, GroupedMessage, TimelineEventItem, TimelineToolItem, UseGroupedMessagesOptions, UseGroupedMessagesProps, useGroupedMessages } from "./react/src/hooks/private/use-grouped-messages.js";
3
+ import { ConversationItem, DaySeparatorItem, GroupedActivity, GroupedMessage, PreparedTimelineItems, TIMELINE_GROUP_WINDOW_MS, TimelineEventItem, TimelineToolItem, UseGroupedMessagesOptions, UseGroupedMessagesProps, buildTimelineReadReceiptData, groupTimelineItems, prepareTimelineItems, useGroupedMessages } from "./react/src/hooks/private/use-grouped-messages.js";
4
4
  import { UseMultimodalInputOptions, UseMultimodalInputReturn, useMultimodalInput } from "./react/src/hooks/private/use-multimodal-input.js";
5
- import { UseClientResult, useClient } from "./react/src/hooks/private/use-rest-client.js";
5
+ import { ConfigurationError, UseClientResult, useClient } from "./react/src/hooks/private/use-rest-client.js";
6
6
  import { UseComposerRefocusOptions, UseComposerRefocusReturn, useComposerRefocus } from "./react/src/hooks/use-composer-refocus.js";
7
7
  import { UseConversationOptions, UseConversationResult, useConversation } from "./react/src/hooks/use-conversation.js";
8
8
  import { CONVERSATION_AUTO_SEEN_DELAY_MS, UseConversationAutoSeenOptions, useConversationAutoSeen } from "./react/src/hooks/use-conversation-auto-seen.js";
9
9
  import { UseConversationHistoryPageOptions, UseConversationHistoryPageReturn, useConversationHistoryPage } from "./react/src/hooks/use-conversation-history-page.js";
10
10
  import { ConversationLifecycleState, UseConversationLifecycleOptions, UseConversationLifecycleReturn, useConversationLifecycle } from "./react/src/hooks/use-conversation-lifecycle.js";
11
11
  import { UseConversationPageOptions, UseConversationPageReturn, useConversationPage } from "./react/src/hooks/use-conversation-page.js";
12
+ import { SupportLocale, SupportTextContentOverrides } from "./react/src/support/text/locales/keys.js";
12
13
  import { UseConversationTimelineItemsOptions, UseConversationTimelineItemsResult, useConversationTimelineItems } from "./react/src/hooks/use-conversation-timeline-items.js";
13
14
  import { ConversationPreviewAssignedAgent, ConversationPreviewLastMessage, ConversationPreviewTypingParticipant, ConversationPreviewTypingState, UseConversationPreviewOptions, UseConversationPreviewReturn, useConversationPreview } from "./react/src/hooks/use-conversation-preview.js";
14
15
  import { useConversationSeen, useDebouncedConversationSeen } from "./react/src/hooks/use-conversation-seen.js";
@@ -16,6 +17,7 @@ import { ConversationTypingParticipant, useConversationTyping } from "./react/sr
16
17
  import { ConversationTimelineTypingParticipant, UseConversationTimelineOptions, UseConversationTimelineReturn, useConversationTimeline } from "./react/src/hooks/use-conversation-timeline.js";
17
18
  import { UseConversationsOptions, UseConversationsResult, useConversations } from "./react/src/hooks/use-conversations.js";
18
19
  import { CreateConversationVariables, UseCreateConversationOptions, UseCreateConversationResult, useCreateConversation } from "./react/src/hooks/use-create-conversation.js";
20
+ import { FileUploadPart, UseFileUploadOptions, UseFileUploadReturn, useFileUpload } from "./react/src/hooks/use-file-upload.js";
19
21
  import { UseHomePageOptions, UseHomePageReturn, useHomePage } from "./react/src/hooks/use-home-page.js";
20
22
  import { UseMessageComposerOptions, UseMessageComposerReturn, useMessageComposer } from "./react/src/hooks/use-message-composer.js";
21
23
  import { useNewMessageSound } from "./react/src/hooks/use-new-message-sound.js";
@@ -29,26 +31,8 @@ import { WindowVisibilityFocusState, useWindowVisibilityFocus } from "./react/sr
29
31
  import "./hooks/index.js";
30
32
  import { IdentifySupportVisitor, IdentifySupportVisitorProps } from "./react/src/identify-visitor.js";
31
33
  import "./identify-visitor.js";
32
- import { TypingIndicator, TypingIndicatorProps, TypingParticipant, TypingParticipantType } from "./react/src/support/components/typing-indicator.js";
33
- import { SupportConfig, SupportConfigProps } from "./react/src/support-config.js";
34
- import { Avatar } from "./react/src/primitives/avatar/avatar.js";
35
- import { AvatarFallback } from "./react/src/primitives/avatar/fallback.js";
36
- import { AvatarImage } from "./react/src/primitives/avatar/image.js";
37
- import { Button } from "./react/src/primitives/button.js";
38
- import { CommandPackageManager, CommandVariants, DEFAULT_PACKAGE_MANAGER, mapCommandVariants } from "./react/src/primitives/command-block-utils.js";
39
- import { ConversationTimeline, ConversationTimelineContainer, ConversationTimelineEmpty, ConversationTimelineLoading } from "./react/src/primitives/conversation-timeline.js";
40
- import { DaySeparator, DaySeparatorLabel, DaySeparatorLabelProps, DaySeparatorLine, DaySeparatorLineProps, DaySeparatorProps, DaySeparatorRenderProps, defaultFormatDate } from "./react/src/primitives/day-separator.js";
41
- import { FileInput, MultimodalInput, SupportInput } from "./react/src/primitives/multimodal-input.js";
42
- import { PageDefinition, Router, RouterProps } from "./react/src/primitives/router.js";
43
- import { TimelineCodeBlock, TimelineCodeBlockProps } from "./react/src/primitives/timeline-code-block.js";
44
- import { TimelineCommandBlock, TimelineCommandBlockProps } from "./react/src/primitives/timeline-command-block.js";
45
- import { TimelineItem, TimelineItemContent, TimelineItemContentMarkdownRenderers, TimelineItemTimestamp } from "./react/src/primitives/timeline-item.js";
46
- import { TimelineItemAttachments, TimelineItemFiles, TimelineItemImages, extractFileParts, extractImageParts, hasAttachments } from "./react/src/primitives/timeline-item-attachments.js";
47
- import { TimelineItemGroup, TimelineItemGroupAvatar, TimelineItemGroupContent, TimelineItemGroupHeader, TimelineItemGroupReadIndicator, TimelineItemGroupSeenIndicator } from "./react/src/primitives/timeline-item-group.js";
48
- import { hasExpandedTimelineContent } from "./react/src/primitives/timeline-message-layout.js";
49
- import { SupportTrigger, TriggerProps, TriggerRenderProps } from "./react/src/primitives/trigger.js";
50
- import { SupportWindow } from "./react/src/primitives/window.js";
51
- import "./primitives/index.js";
34
+ import { DefaultMessage, DefaultMessageProps, SupportConfig, SupportConfigProps, extractDefaultMessagesFromChildren, resolveSupportConfigMessages } from "./react/src/support-config.js";
35
+ import { index_d_exports } from "./primitives/index.js";
52
36
  import { CossistantContextValue, CossistantProviderProps, SupportContext, SupportProvider, SupportProviderProps, UseSupportValue, useSupport } from "./react/src/provider.js";
53
37
  import "./provider.js";
54
38
  import { RealtimeAuthConfig, RealtimeContextValue, RealtimeProvider, RealtimeProviderProps, useRealtimeConnection } from "./react/src/realtime/provider.js";
@@ -58,14 +42,20 @@ import { applyConversationTypingEvent, clearTypingFromTimelineItem, clearTypingS
58
42
  import { RealtimeEventHandler, RealtimeEventHandlerEntry, RealtimeEventHandlersMap, RealtimeEventMeta, useRealtime } from "./react/src/realtime/use-realtime.js";
59
43
  import "./realtime/index.js";
60
44
  import { CustomPage } from "./react/src/support/router.js";
61
- import { Align, ContentProps, RootProps, Side } from "./react/src/support/types.js";
45
+ import { ConversationEndEvent, ConversationStartEvent, ErrorEvent, MessageReceivedEvent, MessageSentEvent, SupportEvent, SupportEventCallbacks, SupportEventType, useSupportEventEmitter, useSupportEvents } from "./react/src/support/context/events.js";
46
+ import { SupportHandle, useSupportHandle } from "./react/src/support/context/handle.js";
47
+ import { Text, useSupportText } from "./react/src/support/text/index.js";
48
+ import { Align, CollisionPadding, ContentProps, RootProps, Side, TriggerRenderProps } from "./react/src/support/types.js";
49
+ import { CoButton } from "./react/src/support/components/button.js";
50
+ import { Header } from "./react/src/support/components/header.js";
62
51
  import { WebSocketContextValue, WebSocketProvider, useWebSocket } from "./react/src/support/context/websocket.js";
63
52
  import { useSupportConfig, useSupportNavigation, useSupportStore } from "./react/src/support/store/support-store.js";
64
- import { Support, SupportProps } from "./react/src/support/index.js";
53
+ import { DefaultRoutes, NavigationState, RouteRegistry, Support, SupportContentProps, SupportPageProps, SupportPageType, SupportProps, SupportRootProps, SupportRouterProps, SupportTriggerProps } from "./react/src/support/index.js";
65
54
  import "./support/index.js";
66
55
  import "./support-config.js";
67
56
  import { shouldDisplayConversation } from "./react/src/utils/conversation.js";
68
57
  import { PENDING_CONVERSATION_ID, generateShortPrimaryId } from "./react/src/utils/id.js";
58
+ import { mergeRefs, useMergeRefs } from "./react/src/utils/merge-refs.js";
69
59
  import { useRenderElement } from "./react/src/utils/use-render-element.js";
70
60
  import "./utils/index.js";
71
- export { Align, Avatar, AvatarFallback, AvatarImage, Button, CONVERSATION_AUTO_SEEN_DELAY_MS, CommandPackageManager, CommandVariants, SupportConfig as Config, ContentProps, ConversationItem, ConversationLifecycleState, ConversationPreviewAssignedAgent, ConversationPreviewLastMessage, ConversationPreviewTypingParticipant, ConversationPreviewTypingState, ConversationTimeline, ConversationTimelineContainer, ConversationTimelineEmpty, ConversationTimelineLoading, ConversationTimelineTypingParticipant, ConversationTypingParticipant, CossistantContextValue, CossistantProviderProps, CreateConversationVariables, CustomPage, DEFAULT_PACKAGE_MANAGER, DaySeparator, DaySeparatorItem, DaySeparatorLabel, DaySeparatorLabelProps, DaySeparatorLine, DaySeparatorLineProps, DaySeparatorProps, DaySeparatorRenderProps, FileInput, GroupedActivity, GroupedMessage, IdentifySupportVisitor, IdentifySupportVisitorProps, SupportInput as Input, MultimodalInput, PENDING_CONVERSATION_ID, PageDefinition, RealtimeAuthConfig, RealtimeContextValue, RealtimeEventHandler, RealtimeEventHandlerEntry, RealtimeEventHandlersMap, RealtimeEventMeta, RealtimeProvider, RealtimeProviderProps, RootProps, Router, RouterProps, SendMessageOptions, SendMessageResult, Side, Support, SupportConfig, SupportConfigProps, SupportContext, SupportProps, SupportProvider, SupportProviderProps, SupportRealtimeProvider, TimelineCodeBlock, TimelineCodeBlockProps, TimelineCommandBlock, TimelineCommandBlockProps, TimelineEventItem, TimelineItem, TimelineItemAttachments, TimelineItemContent, TimelineItemContentMarkdownRenderers, TimelineItemFiles, TimelineItemGroup, TimelineItemGroupAvatar, TimelineItemGroupContent, TimelineItemGroupHeader, TimelineItemGroupReadIndicator, TimelineItemGroupSeenIndicator, TimelineItemImages, TimelineItemTimestamp, TimelineToolItem, SupportTrigger as Trigger, TriggerProps, TriggerRenderProps, TypingIndicator, TypingIndicatorProps, TypingParticipant, TypingParticipantType, UseClientResult, UseComposerRefocusOptions, UseComposerRefocusReturn, UseConversationAutoSeenOptions, UseConversationHistoryPageOptions, UseConversationHistoryPageReturn, UseConversationLifecycleOptions, UseConversationLifecycleReturn, UseConversationOptions, UseConversationPageOptions, UseConversationPageReturn, UseConversationPreviewOptions, UseConversationPreviewReturn, UseConversationResult, UseConversationTimelineItemsOptions, UseConversationTimelineItemsResult, UseConversationTimelineOptions, UseConversationTimelineReturn, UseConversationsOptions, UseConversationsResult, UseCreateConversationOptions, UseCreateConversationResult, UseGroupedMessagesOptions, UseGroupedMessagesProps, UseHomePageOptions, UseHomePageReturn, UseMessageComposerOptions, UseMessageComposerReturn, UseMultimodalInputOptions, UseMultimodalInputReturn, UseRealtimeSupportOptions, UseRealtimeSupportResult, UseScrollMaskOptions, UseScrollMaskReturn, UseSendMessageOptions, UseSendMessageResult, UseSoundEffectOptions, UseSoundEffectReturn, UseSupportValue, UseVisitorReturn, WebSocketContextValue, WebSocketProvider, SupportWindow as Window, WindowVisibilityFocusState, applyConversationSeenEvent, applyConversationTypingEvent, clearTypingFromTimelineItem, clearTypingState, defaultFormatDate, extractFileParts, extractImageParts, generateShortPrimaryId, hasAttachments, hasExpandedTimelineContent, hydrateConversationSeen, mapCommandVariants, setTypingState, shouldDisplayConversation, upsertConversationSeen, useClient, useClientQuery, useComposerRefocus, useConversation, useConversationAutoSeen, useConversationHistoryPage, useConversationLifecycle, useConversationPage, useConversationPreview, useConversationSeen, useConversationTimeline, useConversationTimelineItems, useConversationTyping, useConversations, useCreateConversation, useDebouncedConversationSeen, useDefaultMessages, useGroupedMessages, useHomePage, useMessageComposer, useMultimodalInput, useNewMessageSound, useRealtime, useRealtimeConnection, useRealtimeSupport, useRenderElement, useScrollMask, useSendMessage, useSoundEffect, useSupport, useSupportConfig, useSupportNavigation, useSupportStore, useTypingSound, useVisitor, useWebSocket, useWindowVisibilityFocus };
61
+ export { Align, CoButton as Button, CONVERSATION_AUTO_SEEN_DELAY_MS, CollisionPadding, ConfigurationError, ContentProps, ConversationEndEvent, ConversationItem, ConversationLifecycleState, ConversationPreviewAssignedAgent, ConversationPreviewLastMessage, ConversationPreviewTypingParticipant, ConversationPreviewTypingState, ConversationStartEvent, ConversationTimelineTypingParticipant, ConversationTypingParticipant, CossistantContextValue, CossistantProviderProps, CreateConversationVariables, CustomPage, DaySeparatorItem, DefaultMessage, DefaultMessageProps, DefaultRoutes, ErrorEvent, FileUploadPart, GroupedActivity, GroupedMessage, Header, IdentifySupportVisitor, IdentifySupportVisitorProps, MessageReceivedEvent, MessageSentEvent, NavigationState, PENDING_CONVERSATION_ID, PreparedTimelineItems, index_d_exports as Primitives, RealtimeAuthConfig, RealtimeContextValue, RealtimeEventHandler, RealtimeEventHandlerEntry, RealtimeEventHandlersMap, RealtimeEventMeta, RealtimeProvider, RealtimeProviderProps, RootProps, RouteRegistry, SendMessageOptions, SendMessageResult, Side, Support, SupportConfig, SupportConfigProps, SupportContentProps, SupportContext, SupportEvent, SupportEventCallbacks, SupportEventType, SupportHandle, SupportLocale, SupportPageProps, SupportPageType, SupportProps, SupportProvider, SupportProviderProps, SupportRealtimeProvider, SupportRootProps, SupportRouterProps, SupportTextContentOverrides, SupportTriggerProps, TIMELINE_GROUP_WINDOW_MS, Text, TimelineEventItem, TimelineToolItem, TriggerRenderProps, UseClientResult, UseComposerRefocusOptions, UseComposerRefocusReturn, UseConversationAutoSeenOptions, UseConversationHistoryPageOptions, UseConversationHistoryPageReturn, UseConversationLifecycleOptions, UseConversationLifecycleReturn, UseConversationOptions, UseConversationPageOptions, UseConversationPageReturn, UseConversationPreviewOptions, UseConversationPreviewReturn, UseConversationResult, UseConversationTimelineItemsOptions, UseConversationTimelineItemsResult, UseConversationTimelineOptions, UseConversationTimelineReturn, UseConversationsOptions, UseConversationsResult, UseCreateConversationOptions, UseCreateConversationResult, UseFileUploadOptions, UseFileUploadReturn, UseGroupedMessagesOptions, UseGroupedMessagesProps, UseHomePageOptions, UseHomePageReturn, UseMessageComposerOptions, UseMessageComposerReturn, UseMultimodalInputOptions, UseMultimodalInputReturn, UseRealtimeSupportOptions, UseRealtimeSupportResult, UseScrollMaskOptions, UseScrollMaskReturn, UseSendMessageOptions, UseSendMessageResult, UseSoundEffectOptions, UseSoundEffectReturn, UseSupportValue, UseVisitorReturn, WebSocketContextValue, WebSocketProvider, WindowVisibilityFocusState, applyConversationSeenEvent, applyConversationTypingEvent, buildTimelineReadReceiptData, clearTypingFromTimelineItem, clearTypingState, extractDefaultMessagesFromChildren, generateShortPrimaryId, groupTimelineItems, hydrateConversationSeen, mergeRefs, prepareTimelineItems, resolveSupportConfigMessages, setTypingState, shouldDisplayConversation, upsertConversationSeen, useClient, useClientQuery, useComposerRefocus, useConversation, useConversationAutoSeen, useConversationHistoryPage, useConversationLifecycle, useConversationPage, useConversationPreview, useConversationSeen, useConversationTimeline, useConversationTimelineItems, useConversationTyping, useConversations, useCreateConversation, useDebouncedConversationSeen, useDefaultMessages, useFileUpload, useGroupedMessages, useHomePage, useMergeRefs, useMessageComposer, useMultimodalInput, useNewMessageSound, useRealtime, useRealtimeConnection, useRealtimeSupport, useRenderElement, useScrollMask, useSendMessage, useSoundEffect, useSupport, useSupportConfig, useSupportEventEmitter, useSupportEvents, useSupportHandle, useSupportNavigation, useSupportStore, useSupportText, useTypingSound, useVisitor, useWebSocket, useWindowVisibilityFocus };
package/index.js CHANGED
@@ -1,12 +1,25 @@
1
1
  "use client";
2
2
 
3
- import { IdentifySupportVisitor } from "./identify-visitor.js";
4
- import { CONVERSATION_AUTO_SEEN_DELAY_MS, useClient, useClientQuery, useComposerRefocus, useConversation, useConversationAutoSeen, useConversationHistoryPage, useConversationLifecycle, useConversationPage, useConversationPreview, useConversationSeen, useConversationTimeline, useConversationTimelineItems, useConversationTyping, useConversations, useCreateConversation, useDebouncedConversationSeen, useDefaultMessages, useGroupedMessages, useHomePage, useMessageComposer, useMultimodalInput, useNewMessageSound, useRealtimeSupport, useScrollMask, useSendMessage, useSoundEffect, useTypingSound, useVisitor, useWindowVisibilityFocus } from "./hooks/index.js";
5
- import { Avatar, AvatarFallback, AvatarImage, Button, Config, ConversationTimeline, ConversationTimelineContainer, ConversationTimelineEmpty, ConversationTimelineLoading, DEFAULT_PACKAGE_MANAGER, DaySeparator, DaySeparatorLabel, DaySeparatorLine, FileInput, Input, MultimodalInput, Router, TimelineCodeBlock, TimelineCommandBlock, TimelineItem, TimelineItemAttachments, TimelineItemContent, TimelineItemFiles, TimelineItemGroup, TimelineItemGroupAvatar, TimelineItemGroupContent, TimelineItemGroupHeader, TimelineItemGroupReadIndicator, TimelineItemGroupSeenIndicator, TimelineItemImages, TimelineItemTimestamp, Trigger, TypingIndicator, Window, defaultFormatDate, extractFileParts, extractImageParts, hasAttachments, hasExpandedTimelineContent, mapCommandVariants } from "./primitives/index.js";
6
- import { SupportContext, SupportProvider, useSupport } from "./provider.js";
7
- import { RealtimeProvider, SupportRealtimeProvider, applyConversationSeenEvent, applyConversationTypingEvent, clearTypingFromTimelineItem, clearTypingState, hydrateConversationSeen, setTypingState, upsertConversationSeen, useRealtime, useRealtimeConnection } from "./realtime/index.js";
8
- import { Support, WebSocketProvider, useSupportConfig, useSupportNavigation, useSupportStore, useWebSocket } from "./support/index.js";
9
- import { SupportConfig } from "./support-config.js";
10
- import { PENDING_CONVERSATION_ID, generateShortPrimaryId, shouldDisplayConversation, useRenderElement } from "./utils/index.js";
11
-
12
- export { Avatar, AvatarFallback, AvatarImage, Button, CONVERSATION_AUTO_SEEN_DELAY_MS, Config, ConversationTimeline, ConversationTimelineContainer, ConversationTimelineEmpty, ConversationTimelineLoading, DEFAULT_PACKAGE_MANAGER, DaySeparator, DaySeparatorLabel, DaySeparatorLine, FileInput, IdentifySupportVisitor, Input, MultimodalInput, PENDING_CONVERSATION_ID, RealtimeProvider, Router, Support, SupportConfig, SupportContext, SupportProvider, SupportRealtimeProvider, TimelineCodeBlock, TimelineCommandBlock, TimelineItem, TimelineItemAttachments, TimelineItemContent, TimelineItemFiles, TimelineItemGroup, TimelineItemGroupAvatar, TimelineItemGroupContent, TimelineItemGroupHeader, TimelineItemGroupReadIndicator, TimelineItemGroupSeenIndicator, TimelineItemImages, TimelineItemTimestamp, Trigger, TypingIndicator, WebSocketProvider, Window, applyConversationSeenEvent, applyConversationTypingEvent, clearTypingFromTimelineItem, clearTypingState, defaultFormatDate, extractFileParts, extractImageParts, generateShortPrimaryId, hasAttachments, hasExpandedTimelineContent, hydrateConversationSeen, mapCommandVariants, setTypingState, shouldDisplayConversation, upsertConversationSeen, useClient, useClientQuery, useComposerRefocus, useConversation, useConversationAutoSeen, useConversationHistoryPage, useConversationLifecycle, useConversationPage, useConversationPreview, useConversationSeen, useConversationTimeline, useConversationTimelineItems, useConversationTyping, useConversations, useCreateConversation, useDebouncedConversationSeen, useDefaultMessages, useGroupedMessages, useHomePage, useMessageComposer, useMultimodalInput, useNewMessageSound, useRealtime, useRealtimeConnection, useRealtimeSupport, useRenderElement, useScrollMask, useSendMessage, useSoundEffect, useSupport, useSupportConfig, useSupportNavigation, useSupportStore, useTypingSound, useVisitor, useWebSocket, useWindowVisibilityFocus };
3
+ import { __export, __reExport } from "./_virtual/rolldown_runtime.js";
4
+ import { primitives_exports } from "./primitives/index.js";
5
+
6
+ export * from "@cossistant/react/identify-visitor"
7
+
8
+ export * from "@cossistant/react/hooks"
9
+
10
+ export * from "@cossistant/react/provider"
11
+
12
+ export * from "@cossistant/react/realtime"
13
+
14
+ export * from "@cossistant/react/support"
15
+
16
+ export * from "@cossistant/react/support-config"
17
+
18
+ export * from "@cossistant/react/utils"
19
+
20
+ //#region src/index.ts
21
+ var src_exports = /* @__PURE__ */ __export({ Primitives: () => primitives_exports });
22
+
23
+ //#endregion
24
+ export { primitives_exports as Primitives };
25
+ //# sourceMappingURL=index.js.map
package/index.js.map ADDED
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":[],"sources":["../src/index.ts"],"sourcesContent":["\"use client\";\n\nexport * from \"./hooks\";\nexport * from \"./identify-visitor\";\nexport * as Primitives from \"./primitives\";\nexport * from \"./provider\";\nexport * from \"./realtime\";\nexport * from \"./support\";\nexport * from \"./support-config\";\nexport * from \"./utils\";\n"],"mappings":""}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@cossistant/next",
3
3
  "type": "module",
4
- "version": "0.0.33",
4
+ "version": "0.1.1",
5
5
  "private": false,
6
6
  "author": "Cossistant team",
7
7
  "description": "Next.js-ready SDK for building AI-powered support/chat widgets. Hooks + primitives, WS-driven, TypeScript-first. Next.js-ready, Tailwind optional.",
@@ -39,10 +39,6 @@
39
39
  "types": "./primitives/index.d.ts",
40
40
  "import": "./primitives/index.js"
41
41
  },
42
- "./primitives/*": {
43
- "types": "./primitives/*.d.ts",
44
- "import": "./primitives/*.js"
45
- },
46
42
  "./support": {
47
43
  "types": "./support/index.d.ts",
48
44
  "import": "./support/index.js"
@@ -51,11 +47,8 @@
51
47
  "types": "./hooks/index.d.ts",
52
48
  "import": "./hooks/index.js"
53
49
  },
54
- "./hooks/*": {
55
- "types": "./hooks/*.d.ts",
56
- "import": "./hooks/*.js"
57
- },
58
50
  "./support.css": "./support.css",
51
+ "./styles.css": "./styles.css",
59
52
  "./realtime": {
60
53
  "types": "./realtime/index.d.ts",
61
54
  "import": "./realtime/index.js"
@@ -64,10 +57,6 @@
64
57
  "types": "./utils/index.d.ts",
65
58
  "import": "./utils/index.js"
66
59
  },
67
- "./utils/*": {
68
- "types": "./utils/*.d.ts",
69
- "import": "./utils/*.js"
70
- },
71
60
  "./identify-visitor": {
72
61
  "types": "./identify-visitor.d.ts",
73
62
  "import": "./identify-visitor.js"
@@ -91,7 +80,7 @@
91
80
  "access": "public"
92
81
  },
93
82
  "dependencies": {
94
- "@cossistant/react": "0.0.33"
83
+ "@cossistant/react": "0.1.1"
95
84
  },
96
85
  "peerDependencies": {
97
86
  "react": ">=18 <20",
@@ -18,4 +18,11 @@ import { hasExpandedTimelineContent } from "../react/src/primitives/timeline-mes
18
18
  import { SupportTrigger, TriggerProps, TriggerRenderProps } from "../react/src/primitives/trigger.js";
19
19
  import { SupportWindow } from "../react/src/primitives/window.js";
20
20
  import "../react/src/primitives/index.js";
21
- export { Avatar, AvatarFallback, AvatarImage, Button, type CommandPackageManager, type CommandVariants, SupportConfig as Config, ConversationTimeline, ConversationTimelineContainer, ConversationTimelineEmpty, ConversationTimelineLoading, DEFAULT_PACKAGE_MANAGER, DaySeparator, DaySeparatorLabel, type DaySeparatorLabelProps, DaySeparatorLine, type DaySeparatorLineProps, type DaySeparatorProps, type DaySeparatorRenderProps, FileInput, SupportInput as Input, MultimodalInput, type PageDefinition, Router, type RouterProps, TimelineCodeBlock, type TimelineCodeBlockProps, TimelineCommandBlock, type TimelineCommandBlockProps, TimelineItem, TimelineItemAttachments, TimelineItemContent, type TimelineItemContentMarkdownRenderers, TimelineItemFiles, TimelineItemGroup, TimelineItemGroupAvatar, TimelineItemGroupContent, TimelineItemGroupHeader, TimelineItemGroupReadIndicator, TimelineItemGroupSeenIndicator, TimelineItemImages, TimelineItemTimestamp, SupportTrigger as Trigger, type TriggerProps, type TriggerRenderProps, TypingIndicator, type TypingIndicatorProps, type TypingParticipant, type TypingParticipantType, SupportWindow as Window, defaultFormatDate, extractFileParts, extractImageParts, hasAttachments, hasExpandedTimelineContent, mapCommandVariants };
21
+
22
+ //#region src/primitives/index.d.ts
23
+ declare namespace index_d_exports {
24
+ export { Avatar, AvatarFallback, AvatarImage, Button, CommandPackageManager, CommandVariants, SupportConfig as Config, ConversationTimeline, ConversationTimelineContainer, ConversationTimelineEmpty, ConversationTimelineLoading, DEFAULT_PACKAGE_MANAGER, DaySeparator, DaySeparatorLabel, DaySeparatorLabelProps, DaySeparatorLine, DaySeparatorLineProps, DaySeparatorProps, DaySeparatorRenderProps, FileInput, SupportInput as Input, MultimodalInput, PageDefinition, Router, RouterProps, TimelineCodeBlock, TimelineCodeBlockProps, TimelineCommandBlock, TimelineCommandBlockProps, TimelineItem, TimelineItemAttachments, TimelineItemContent, TimelineItemContentMarkdownRenderers, TimelineItemFiles, TimelineItemGroup, TimelineItemGroupAvatar, TimelineItemGroupContent, TimelineItemGroupHeader, TimelineItemGroupReadIndicator, TimelineItemGroupSeenIndicator, TimelineItemImages, TimelineItemTimestamp, SupportTrigger as Trigger, TriggerProps, TriggerRenderProps, TypingIndicator, TypingIndicatorProps, TypingParticipant, TypingParticipantType, SupportWindow as Window, defaultFormatDate, extractFileParts, extractImageParts, hasAttachments, hasExpandedTimelineContent, mapCommandVariants };
25
+ }
26
+ //#endregion
27
+ export { Avatar, AvatarFallback, AvatarImage, Button, CommandPackageManager, CommandVariants, SupportConfig as Config, ConversationTimeline, ConversationTimelineContainer, ConversationTimelineEmpty, ConversationTimelineLoading, DEFAULT_PACKAGE_MANAGER, DaySeparator, DaySeparatorLabel, DaySeparatorLabelProps, DaySeparatorLine, DaySeparatorLineProps, DaySeparatorProps, DaySeparatorRenderProps, FileInput, SupportInput as Input, MultimodalInput, PageDefinition, Router, RouterProps, TimelineCodeBlock, TimelineCodeBlockProps, TimelineCommandBlock, TimelineCommandBlockProps, TimelineItem, TimelineItemAttachments, TimelineItemContent, TimelineItemContentMarkdownRenderers, TimelineItemFiles, TimelineItemGroup, TimelineItemGroupAvatar, TimelineItemGroupContent, TimelineItemGroupHeader, TimelineItemGroupReadIndicator, TimelineItemGroupSeenIndicator, TimelineItemImages, TimelineItemTimestamp, SupportTrigger as Trigger, TriggerProps, TriggerRenderProps, TypingIndicator, TypingIndicatorProps, TypingParticipant, TypingParticipantType, SupportWindow as Window, defaultFormatDate, extractFileParts, extractImageParts, hasAttachments, hasExpandedTimelineContent, index_d_exports, mapCommandVariants };
28
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","names":[],"sources":["../../src/primitives/index.ts"],"sourcesContent":[],"mappings":""}
@@ -1,5 +1,14 @@
1
1
  "use client";
2
2
 
3
- import { Avatar, AvatarFallback, AvatarImage, Button, Config, ConversationTimeline, ConversationTimelineContainer, ConversationTimelineEmpty, ConversationTimelineLoading, DEFAULT_PACKAGE_MANAGER, DaySeparator, DaySeparatorLabel, DaySeparatorLine, FileInput, Input, MultimodalInput, Router, TimelineCodeBlock, TimelineCommandBlock, TimelineItem, TimelineItemAttachments, TimelineItemContent, TimelineItemFiles, TimelineItemGroup, TimelineItemGroupAvatar, TimelineItemGroupContent, TimelineItemGroupHeader, TimelineItemGroupReadIndicator, TimelineItemGroupSeenIndicator, TimelineItemImages, TimelineItemTimestamp, Trigger, TypingIndicator, Window, defaultFormatDate, extractFileParts, extractImageParts, hasAttachments, hasExpandedTimelineContent, mapCommandVariants } from "@cossistant/react/primitives";
3
+ import { __reExport } from "../_virtual/rolldown_runtime.js";
4
4
 
5
- export { Avatar, AvatarFallback, AvatarImage, Button, Config, ConversationTimeline, ConversationTimelineContainer, ConversationTimelineEmpty, ConversationTimelineLoading, DEFAULT_PACKAGE_MANAGER, DaySeparator, DaySeparatorLabel, DaySeparatorLine, FileInput, Input, MultimodalInput, Router, TimelineCodeBlock, TimelineCommandBlock, TimelineItem, TimelineItemAttachments, TimelineItemContent, TimelineItemFiles, TimelineItemGroup, TimelineItemGroupAvatar, TimelineItemGroupContent, TimelineItemGroupHeader, TimelineItemGroupReadIndicator, TimelineItemGroupSeenIndicator, TimelineItemImages, TimelineItemTimestamp, Trigger, TypingIndicator, Window, defaultFormatDate, extractFileParts, extractImageParts, hasAttachments, hasExpandedTimelineContent, mapCommandVariants };
5
+ export * from "@cossistant/react/primitives"
6
+
7
+ //#region src/primitives/index.ts
8
+ var primitives_exports = {};
9
+ import * as import___cossistant_react_primitives from "@cossistant/react/primitives";
10
+ __reExport(primitives_exports, import___cossistant_react_primitives);
11
+
12
+ //#endregion
13
+ export { primitives_exports };
14
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":[],"sources":["../../src/primitives/index.ts"],"sourcesContent":["\"use client\";\n\nexport * from \"@cossistant/react/primitives\";\n"],"mappings":""}
package/provider.d.ts CHANGED
@@ -1,2 +1,3 @@
1
+ import { ConfigurationError } from "./react/src/hooks/private/use-rest-client.js";
1
2
  import { CossistantContextValue, CossistantProviderProps, SupportContext, SupportProvider, SupportProviderProps, UseSupportValue, useSupport } from "./react/src/provider.js";
2
- export { type CossistantContextValue, type CossistantProviderProps, SupportContext, SupportProvider, type SupportProviderProps, type UseSupportValue, useSupport };
3
+ export { ConfigurationError, CossistantContextValue, CossistantProviderProps, SupportContext, SupportProvider, SupportProviderProps, UseSupportValue, useSupport };
package/provider.js CHANGED
@@ -1,5 +1,7 @@
1
1
  "use client";
2
2
 
3
- import { SupportContext, SupportProvider, useSupport } from "@cossistant/react/provider";
3
+ import { __reExport } from "./_virtual/rolldown_runtime.js";
4
4
 
5
- export { SupportContext, SupportProvider, useSupport };
5
+ export * from "@cossistant/react/provider"
6
+
7
+ export { };
@@ -1,6 +1,6 @@
1
1
  import { useClientQuery } from "./private/use-client-query.js";
2
2
  import { useDefaultMessages } from "./private/use-default-messages.js";
3
- import { ConversationItem, DaySeparatorItem, GroupedActivity, GroupedMessage, TimelineEventItem, TimelineToolItem, UseGroupedMessagesOptions, UseGroupedMessagesProps, useGroupedMessages } from "./private/use-grouped-messages.js";
3
+ import { ConversationItem, DaySeparatorItem, GroupedActivity, GroupedMessage, PreparedTimelineItems, TIMELINE_GROUP_WINDOW_MS, TimelineEventItem, TimelineToolItem, UseGroupedMessagesOptions, UseGroupedMessagesProps, buildTimelineReadReceiptData, groupTimelineItems, prepareTimelineItems, useGroupedMessages } from "./private/use-grouped-messages.js";
4
4
  import { UseMultimodalInputOptions, UseMultimodalInputReturn, useMultimodalInput } from "./private/use-multimodal-input.js";
5
5
  import { ConfigurationError, UseClientResult, useClient } from "./private/use-rest-client.js";
6
6
  import { UseComposerRefocusOptions, UseComposerRefocusReturn, useComposerRefocus } from "./use-composer-refocus.js";
@@ -16,7 +16,7 @@ import { ConversationTypingParticipant, useConversationTyping } from "./use-conv
16
16
  import { ConversationTimelineTypingParticipant, UseConversationTimelineOptions, UseConversationTimelineReturn, useConversationTimeline } from "./use-conversation-timeline.js";
17
17
  import { UseConversationsOptions, UseConversationsResult, useConversations } from "./use-conversations.js";
18
18
  import { CreateConversationVariables, UseCreateConversationOptions, UseCreateConversationResult, useCreateConversation } from "./use-create-conversation.js";
19
- import "./use-file-upload.js";
19
+ import { FileUploadPart, UseFileUploadOptions, UseFileUploadReturn, useFileUpload } from "./use-file-upload.js";
20
20
  import { UseHomePageOptions, UseHomePageReturn, useHomePage } from "./use-home-page.js";
21
21
  import { UseMessageComposerOptions, UseMessageComposerReturn, useMessageComposer } from "./use-message-composer.js";
22
22
  import { useNewMessageSound } from "./use-new-message-sound.js";
@@ -46,6 +46,19 @@ type UseGroupedMessagesOptions = {
46
46
  currentViewerId?: string;
47
47
  };
48
48
  type UseGroupedMessagesProps = UseGroupedMessagesOptions;
49
+ type PreparedTimelineItems = {
50
+ items: TimelineItem[];
51
+ times: number[];
52
+ didSort: boolean;
53
+ };
54
+ declare const TIMELINE_GROUP_WINDOW_MS: number;
55
+ declare const prepareTimelineItems: (items: TimelineItem[]) => PreparedTimelineItems;
56
+ declare const groupTimelineItems: (items: TimelineItem[], itemTimes: number[]) => ConversationItem[];
57
+ declare const buildTimelineReadReceiptData: (seenData: ConversationSeen[], sortedMessageItems: TimelineItem[], sortedMessageTimes: number[]) => {
58
+ seenByMap: Map<string, Set<string>>;
59
+ lastReadMessageMap: Map<string, string>;
60
+ unreadCountMap: Map<string, number>;
61
+ };
49
62
  /**
50
63
  * Batches sequential timeline items from the same sender into groups and enriches
51
64
  * them with read-receipt helpers so UIs can render conversation timelines with
@@ -69,5 +82,5 @@ declare const useGroupedMessages: ({
69
82
  hasUnreadAfter: (messageId: string, userId: string) => boolean;
70
83
  };
71
84
  //#endregion
72
- export { ConversationItem, DaySeparatorItem, GroupedActivity, GroupedMessage, TimelineEventItem, TimelineToolItem, UseGroupedMessagesOptions, UseGroupedMessagesProps, useGroupedMessages };
85
+ export { ConversationItem, DaySeparatorItem, GroupedActivity, GroupedMessage, PreparedTimelineItems, TIMELINE_GROUP_WINDOW_MS, TimelineEventItem, TimelineToolItem, UseGroupedMessagesOptions, UseGroupedMessagesProps, buildTimelineReadReceiptData, groupTimelineItems, prepareTimelineItems, useGroupedMessages };
73
86
  //# sourceMappingURL=use-grouped-messages.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"use-grouped-messages.d.ts","names":[],"sources":["../../../../../../react/src/hooks/private/use-grouped-messages.ts"],"sourcesContent":[],"mappings":";;;AAMY,KAAA,cAAA,GAAc;EAGb,IAAA,EAAA,eAAA;EACL,QAAA,EAAA,MAAA;EAGW,UAAA,EAJN,UAIM;EACD,KAAA,EAJV,YAIU,EAAA;EAAI,cAAA,EAAA,MAAA;EAGV,aAAA,EAAA,MAAe;EAGd,gBAAA,EAPM,IAON;EACL,eAAA,EAPU,IAOV;CAGQ;AACD,KARH,eAAA,GAQG;EAAI,IAAA,EAAA,gBAAA;EAKP,QAAA,EAAA,MAAA;EAMA,UAAA,EAhBC,UAgBe;EAOhB,KAAA,EAtBJ,YAsBoB,EAAA;EAMhB,WAAA,EAAA,MAAgB;EACzB,UAAA,EAAA,MAAA;EACA,aAAA,EA3Ba,IA2Bb;EACA,YAAA,EA3BY,IA2BZ;EACA,QAAA,EAAA,OAAA;EACA,OAAA,EAAA,OAAA;CAAgB;AAEP,KA1BA,iBAAA,GA0ByB;EAMzB,IAAA,EAAA,gBAAA;EAyXC,IAAA,EAvZN,YAuZM;EAAsB,SAAA,EAtZvB,IAsZuB;CAAA;AAAA,KAnZvB,gBAAA,GAmZuB;EAIhC,IAAA,EAAA,eAAA;QArZI;;aAEK;;KAGA,gBAAA;;QAEL;;;KAIK,gBAAA,GACT,iBACA,kBACA,oBACA,mBACA;KAES,yBAAA;SACJ;aACI;;;KAIA,uBAAA,GAA0B;;;;;;;cAyXzB;;;;GAIV"}
1
+ {"version":3,"file":"use-grouped-messages.d.ts","names":[],"sources":["../../../../../../react/src/hooks/private/use-grouped-messages.ts"],"sourcesContent":[],"mappings":";;;AAMY,KAAA,cAAA,GAAc;EAGb,IAAA,EAAA,eAAA;EACL,QAAA,EAAA,MAAA;EAGW,UAAA,EAJN,UAIM;EACD,KAAA,EAJV,YAIU,EAAA;EAAI,cAAA,EAAA,MAAA;EAGV,aAAA,EAAA,MAAe;EAGd,gBAAA,EAPM,IAON;EACL,eAAA,EAPU,IAOV;CAGQ;AACD,KARH,eAAA,GAQG;EAAI,IAAA,EAAA,gBAAA;EAKP,QAAA,EAAA,MAAA;EAMA,UAAA,EAhBC,UAgBe;EAOhB,KAAA,EAtBJ,YAsBoB,EAAA;EAMhB,WAAA,EAAA,MAAgB;EACzB,UAAA,EAAA,MAAA;EACA,aAAA,EA3Ba,IA2Bb;EACA,YAAA,EA3BY,IA2BZ;EACA,QAAA,EAAA,OAAA;EACA,OAAA,EAAA,OAAA;CAAgB;AAEP,KA1BA,iBAAA,GA0ByB;EAMzB,IAAA,EAAA,gBAAA;EAEA,IAAA,EAhCL,YAgCK;EAMC,SAAA,EArCD,IAqCC;AA2Eb,CAAA;AAmEa,KAhLD,gBAAA,GA6UX;EAIY,IAAA,EAAA,eAAA;EACF,IAAA,EAhVJ,YAgVI;EACU,IAAA,EAAA,MAAA,GAAA,IAAA;aA/UT;;KAGA,gBAAA;;QAEL;EA0YM,UAAA,EAAA,MAAA;CAAsB;AAAA,KAtYvB,gBAAA,GACT,cAqYgC,GApYhC,eAoYgC,GAnYhC,iBAmYgC,GAlYhC,gBAkYgC,GAjYhC,gBAiYgC;AAAA,KA/XvB,yBAAA,GA+XuB;EAIhC,KAAA,EAlYK,YAkYL,EAAA;aAjYS;;;KAIA,uBAAA,GAA0B;KAE1B,qBAAA;SACJ;;;;cAKK;cA2EA,8BACL,mBACL;cAiEU,4BACL,wCAEL;cA8JU,yCACF,wCACU;;;;;;;;;;;cAgER;;;;GAIV"}
@@ -1 +1 @@
1
- {"version":3,"file":"use-rest-client.d.ts","names":[],"sources":["../../../../../../react/src/hooks/private/use-rest-client.ts"],"sourcesContent":[],"mappings":";;;KAMY,kBAAA;;EAAA,OAAA,EAAA,MAAA;EAMA,UAAA,EAAA,MAAe;AA8B3B,CAAA;KA9BY,eAAA;UAED;;;;;;sBAOY;;;;;;;;iBAqBP,SAAA,kEAIb"}
1
+ {"version":3,"file":"use-rest-client.d.ts","names":[],"sources":["../../../../../../react/src/hooks/private/use-rest-client.ts"],"sourcesContent":[],"mappings":";;;KAYY,kBAAA;;EAAA,OAAA,EAAA,MAAA;EAMA,UAAA,EAAA,MAAe;AAkB3B,CAAA;KAlBY,eAAA;UAED;;;;;;sBAOY;;;;;;;;iBASP,SAAA,kEAIb"}
@@ -1 +1 @@
1
- {"version":3,"file":"use-conversation-auto-seen.d.ts","names":[],"sources":["../../../../../react/src/hooks/use-conversation-auto-seen.ts"],"sourcesContent":[],"mappings":";;;cASa,+BAAA;AAAA,KAED,8BAAA,GAFgC;EAEhC;AA4DZ;;UAxDS;;;;;;;;;;;;;oBAgBU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAwCH,uBAAA,UACN"}
1
+ {"version":3,"file":"use-conversation-auto-seen.d.ts","names":[],"sources":["../../../../../react/src/hooks/use-conversation-auto-seen.ts"],"sourcesContent":[],"mappings":";;;cAKa,+BAAA;AAAA,KAMD,8BAAA,GANgC;EAMhC;AA4DZ;;UAxDS;;;;;;;;;;;;;oBAgBU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAwCH,uBAAA,UACN"}
@@ -1 +1 @@
1
- {"version":3,"file":"use-conversation-page.d.ts","names":[],"sources":["../../../../../react/src/hooks/use-conversation-page.ts"],"sourcesContent":[],"mappings":";AAgBY,KAAA,0BAAA,GAA0B;EA+B1B;;;;EAgBQ,cAAA,EAAA,MAAA;EAOD;;AAuCnB;;;;;;;;;;UAxES;;;;;;;;KAUG,yBAAA;;;SAIJ;;SAEA;;;WAKC;;;;;sBAKW;;;;;oBAOD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAuCH,mBAAA,UACN,6BACP"}
1
+ {"version":3,"file":"use-conversation-page.d.ts","names":[],"sources":["../../../../../react/src/hooks/use-conversation-page.ts"],"sourcesContent":[],"mappings":";AAgBY,KAAA,0BAAA,GAA0B;EA+B1B;;;;EAgBQ,cAAA,EAAA,MAAA;EAOD;;AA2CnB;;;;;;;;;;UA5ES;;;;;;;;KAUG,yBAAA;;;SAIJ;;SAEA;;;WAKC;;;;;sBAKW;;;;;oBAOD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBA2CH,mBAAA,UACN,6BACP"}
@@ -1 +1 @@
1
- {"version":3,"file":"use-conversation-seen.d.ts","names":[],"sources":["../../../../../react/src/hooks/use-conversation-seen.ts"],"sourcesContent":[],"mappings":";AAAkE,KAI7D,0BAAA,GAA0B;EAgBf,WAAA,CAAA,EAfD,gBAeoB,EAAA;AA8DnC,CAAA;;;;;iBA9DgB,mBAAA,sDAEN,6BACP;;;;;;;iBA2Da,4BAAA,sDAEN,6CAEP"}
1
+ {"version":3,"file":"use-conversation-seen.d.ts","names":[],"sources":["../../../../../react/src/hooks/use-conversation-seen.ts"],"sourcesContent":[],"mappings":";AACkE,KAK7D,0BAAA,GAA0B;EAgBf,WAAA,CAAA,EAfD,gBAeoB,EAAA;AAqEnC,CAAA;;;;;iBArEgB,mBAAA,sDAEN,6BACP;;;;;;;iBAkEa,4BAAA,sDAEN,6CAEP"}
@@ -1 +1 @@
1
- {"version":3,"file":"use-conversation-typing.d.ts","names":[],"sources":["../../../../../react/src/hooks/use-conversation-typing.ts"],"sourcesContent":[],"mappings":";;;KAIY,6BAAA,GAAgC;KAEvC,4BAAA;EAFO,gBAAA,CAAA,EAAA,MAAA,GAAA,IAA6B;EAEpC,aAAA,CAAA,EAAA,MAAA,GAAA,IAAA;EA6BW,gBAAA,CAAA,EAAA,MAAqB,GAAA,IAAA;;;;;;iBAArB,qBAAA,sDAEN,+BACP"}
1
+ {"version":3,"file":"use-conversation-typing.d.ts","names":[],"sources":["../../../../../react/src/hooks/use-conversation-typing.ts"],"sourcesContent":[],"mappings":";;;KAKY,6BAAA,GAAgC;KAEvC,4BAAA;EAFO,gBAAA,CAAA,EAAA,MAAA,GAAA,IAA6B;EAEpC,aAAA,CAAA,EAAA,MAAA,GAAA,IAAA;EA6BW,gBAAA,CAAA,EAAA,MAAqB,GAAA,IAAA;;;;;;iBAArB,qBAAA,sDAEN,+BACP"}
@@ -1 +1,54 @@
1
- import { CossistantClient } from "@cossistant/core";
1
+ import { CossistantClient } from "@cossistant/core";
2
+
3
+ //#region ../react/src/hooks/use-file-upload.d.ts
4
+ type FileUploadPart = TimelinePartImage | TimelinePartFile;
5
+ type UseFileUploadOptions = {
6
+ /**
7
+ * Optional Cossistant client instance.
8
+ * If not provided, uses the client from SupportProvider context.
9
+ */
10
+ client?: CossistantClient;
11
+ };
12
+ type UseFileUploadReturn = {
13
+ /**
14
+ * Upload files and return timeline parts ready to include in a message.
15
+ * Files are uploaded to S3 in parallel.
16
+ */
17
+ uploadFiles: (files: File[], conversationId: string) => Promise<FileUploadPart[]>;
18
+ /**
19
+ * Whether an upload is currently in progress.
20
+ */
21
+ isUploading: boolean;
22
+ /**
23
+ * Upload progress (0-100). Updates as files complete.
24
+ */
25
+ progress: number;
26
+ /**
27
+ * Error from the most recent upload attempt, if any.
28
+ */
29
+ error: Error | null;
30
+ /**
31
+ * Reset the upload state (clear errors and progress).
32
+ */
33
+ reset: () => void;
34
+ };
35
+ /**
36
+ * Hook for uploading files to S3 for inclusion in chat messages.
37
+ * Handles validation, upload progress tracking, and error management.
38
+ *
39
+ * @example
40
+ * ```tsx
41
+ * const { uploadFiles, isUploading, error } = useFileUpload();
42
+ *
43
+ * const handleSend = async () => {
44
+ * if (files.length > 0) {
45
+ * const parts = await uploadFiles(files, conversationId);
46
+ * // Include parts in message...
47
+ * }
48
+ * };
49
+ * ```
50
+ */
51
+ declare function useFileUpload(options?: UseFileUploadOptions): UseFileUploadReturn;
52
+ //#endregion
53
+ export { FileUploadPart, UseFileUploadOptions, UseFileUploadReturn, useFileUpload };
54
+ //# sourceMappingURL=use-file-upload.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-file-upload.d.ts","names":[],"sources":["../../../../../react/src/hooks/use-file-upload.ts"],"sourcesContent":[],"mappings":";;;KAeY,cAAA,GAAiB,oBAAoB;AAArC,KAEA,oBAAA,GAFiB;EAEjB;AAQZ;;;EAQM,MAAA,CAAA,EAXI,gBAWJ;CAeE;AAAK,KAvBD,mBAAA,GAuBC;EAwBG;;;;uBAzCP,mCAEH,QAAQ;;;;;;;;;;;;SAeN;;;;;;;;;;;;;;;;;;;;;;iBAwBQ,aAAA,WACN,uBACP"}
@@ -1 +1 @@
1
- {"version":3,"file":"provider.d.ts","names":[],"sources":["../../../../react/src/provider.tsx"],"sourcesContent":[],"mappings":";;;;;;KAsEY,oBAAA;YACD,KAAA,CAAM;EADL,WAAA,CAAA,EAAA,OAAA;EACD,MAAM,CAAA,EAAA,MAAA;EAKE,KAAA,CAAA,EAAA,MAAA;EAKE,SAAA,CAAA,EAAA,MAAA;EAAK,eAAA,CAAA,EALP,cAKO,EAAA;EAId,YAAA,CAAA,EAAA,MAAA,EAAA;EAEA,WAAA,CAAA,EAAA,OAAA;EACF,WAAA,CAAA,EAAA,GAAA,GAAA,IAAA;EACQ,cAAA,CAAA,EAAA,GAAA,GAAA,IAAA;EAEc,SAAA,CAAA,EAAA,CAAA,KAAA,EAVX,KAUW,EAAA,GAAA,IAAA;EAKxB,IAAA,CAAA,EAAA,QAAA,GAAA,QAAA;CACa;AACZ,KAbG,uBAAA,GAA0B,oBAa7B;AAAgB,KAXb,sBAAA,GAWa;EAOpB,OAAA,EAjBK,qBAiBqB,GAAA,IAAA;EAE1B,eAAA,EAlBa,cAkBI,EAAA;EAAG,YAAA,EAAA,MAAA,EAAA;EAEV,kBAAA,EAAA,CAAA,QAAA,EAlBiB,cAkBjB,EAAA,EAAA,GAAA,IAAA;EAAZ,eAAA,EAAA,CAAA,OAAA,EAAA,MAAA,EAAA,EAAA,GAAA,IAAA;EAAW,WAAA,EAAA,MAAA;EAiDF,cAAA,EAAA,CAAA,KAAe,EAAA,MAAA,EAAA,GAAA,IAAA;EAAG,SAAA,EAAA,OAAA;EACK,KAAA,EA/D3B,KA+D2B,GAAA,IAAA;EAAZ,kBAAA,EA9DF,kBA8DE,GAAA,IAAA;EACS,MAAA,EA9DvB,gBA8DuB,GAAA,IAAA;EAAZ,MAAA,EAAA,OAAA;EACT,IAAA,EAAA,GAAA,GAAA,IAAA;EAAiB,KAAA,EAAA,GAAA,GAAA,IAAA;EAIf,MAAA,EAAA,GAAA,GAAA,IAED;AAgWZ,CAAA;KA9ZK,WAAA,GAAc,WA+ZlB,CA/Z8B,sBA+Z9B,CAAA,SAAA,CAAA,CAAA;KA7ZI,iBAAA,GAAoB,WA8ZxB,CAAA,SAAA,CAAA,SAAA,IAAA,GAAA,SAAA,GAAA,SAAA,GA5ZE,WA4ZF,CA5Zc,WA4Zd,CAAA,SAAA,CAAA,CAAA,GAAA;EACA,MAAA,EAAA,MAAA,GAAA,IAAA;CACA;AACA,KA9WW,eAAA,GAAkB,sBA8W7B,GAAA;EACA,oBAAA,EA9WsB,WA8WtB,CA9WkC,WA8WlC,CAAA,sBAAA,CAAA,CAAA,GAAA,EAAA;EACA,iBAAA,EA9WmB,WA8WnB,CA9W+B,WA8W/B,CAAA,mBAAA,CAAA,CAAA,GAAA,EAAA;EACA,OAAA,CAAA,EA9WU,iBA8WV;EACA,IAAA,EAAA,QAAA,GAAA,QAAA;CACA;AACA,cA7WY,cA6WZ,EA7W0B,KAAA,CAAA,OA6W1B,CA7W0B,sBA6W1B,GAAA,SAAA,CAAA;;;;;AA0BD;;iBArCgB,eAAA;;;;;;;;;;;;;GAab,uBAAuB,KAAA,CAAM;;;;;iBAwBhB,UAAA,CAAA,GAAc"}
1
+ {"version":3,"file":"provider.d.ts","names":[],"sources":["../../../../react/src/provider.tsx"],"sourcesContent":[],"mappings":";;;;;;KA+DY,oBAAA;YACD,KAAA,CAAM;EADL,WAAA,CAAA,EAAA,OAAA;EACD,MAAM,CAAA,EAAA,MAAA;EAKE,KAAA,CAAA,EAAA,MAAA;EAKE,SAAA,CAAA,EAAA,MAAA;EAAK,eAAA,CAAA,EALP,cAKO,EAAA;EAId,YAAA,CAAA,EAAA,MAAA,EAAA;EAEA,WAAA,CAAA,EAAA,OAAA;EACF,WAAA,CAAA,EAAA,GAAA,GAAA,IAAA;EACQ,cAAA,CAAA,EAAA,GAAA,GAAA,IAAA;EAEc,SAAA,CAAA,EAAA,CAAA,KAAA,EAVX,KAUW,EAAA,GAAA,IAAA;EAKxB,IAAA,CAAA,EAAA,QAAA,GAAA,QAAA;CACa;AACZ,KAbG,uBAAA,GAA0B,oBAa7B;AAAgB,KAXb,sBAAA,GAWa;EAOpB,OAAA,EAjBK,qBAiBqB,GAAA,IAAA;EAE1B,eAAA,EAlBa,cAkBI,EAAA;EAAG,YAAA,EAAA,MAAA,EAAA;EAEV,kBAAA,EAAA,CAAA,QAAA,EAlBiB,cAkBjB,EAAA,EAAA,GAAA,IAAA;EAAZ,eAAA,EAAA,CAAA,OAAA,EAAA,MAAA,EAAA,EAAA,GAAA,IAAA;EAAW,WAAA,EAAA,MAAA;EAiDF,cAAA,EAAA,CAAA,KAAe,EAAA,MAAA,EAAA,GAAA,IAAA;EAAG,SAAA,EAAA,OAAA;EACK,KAAA,EA/D3B,KA+D2B,GAAA,IAAA;EAAZ,kBAAA,EA9DF,kBA8DE,GAAA,IAAA;EACS,MAAA,EA9DvB,gBA8DuB,GAAA,IAAA;EAAZ,MAAA,EAAA,OAAA;EACT,IAAA,EAAA,GAAA,GAAA,IAAA;EAAiB,KAAA,EAAA,GAAA,GAAA,IAAA;EAIf,MAAA,EAAA,GAAA,GAAA,IAED;AA6VZ,CAAA;KA3ZK,WAAA,GAAc,WA4ZlB,CA5Z8B,sBA4Z9B,CAAA,SAAA,CAAA,CAAA;KA1ZI,iBAAA,GAAoB,WA2ZxB,CAAA,SAAA,CAAA,SAAA,IAAA,GAAA,SAAA,GAAA,SAAA,GAzZE,WAyZF,CAzZc,WAyZd,CAAA,SAAA,CAAA,CAAA,GAAA;EACA,MAAA,EAAA,MAAA,GAAA,IAAA;CACA;AACA,KA3WW,eAAA,GAAkB,sBA2W7B,GAAA;EACA,oBAAA,EA3WsB,WA2WtB,CA3WkC,WA2WlC,CAAA,sBAAA,CAAA,CAAA,GAAA,EAAA;EACA,iBAAA,EA3WmB,WA2WnB,CA3W+B,WA2W/B,CAAA,mBAAA,CAAA,CAAA,GAAA,EAAA;EACA,OAAA,CAAA,EA3WU,iBA2WV;EACA,IAAA,EAAA,QAAA,GAAA,QAAA;CACA;AACA,cA1WY,cA0WZ,EA1W0B,KAAA,CAAA,OA0W1B,CA1W0B,sBA0W1B,GAAA,SAAA,CAAA;;;;;AA0BD;;iBArCgB,eAAA;;;;;;;;;;;;;GAab,uBAAuB,KAAA,CAAM;;;;;iBAwBhB,UAAA,CAAA,GAAc"}
@@ -1,20 +1,8 @@
1
+ import { RealtimeAuthConfig, RealtimeAuthConfig as RealtimeAuthConfig$1 } from "@cossistant/core";
1
2
  import React from "react";
2
3
 
3
4
  //#region ../react/src/realtime/provider.d.ts
4
5
  type SubscribeHandler = (event: AnyRealtimeEvent) => void;
5
- type VisitorAuthConfig = {
6
- kind: "visitor";
7
- visitorId: string | null;
8
- websiteId?: string | null;
9
- publicKey?: string | null;
10
- };
11
- type SessionAuthConfig = {
12
- kind: "session";
13
- sessionToken: string | null;
14
- websiteId?: string | null;
15
- userId?: string | null;
16
- };
17
- type RealtimeAuthConfig = VisitorAuthConfig | SessionAuthConfig;
18
6
  type RealtimeProviderProps = {
19
7
  children: React.ReactNode;
20
8
  wsUrl?: string;
@@ -24,7 +12,7 @@ type RealtimeProviderProps = {
24
12
  onDisconnect?: () => void;
25
13
  onError?: (error: Error) => void;
26
14
  };
27
- type RealtimeConnectionState = {
15
+ type RealtimeContextValue = {
28
16
  isConnected: boolean;
29
17
  isConnecting: boolean;
30
18
  error: Error | null;
@@ -34,15 +22,13 @@ type RealtimeConnectionState = {
34
22
  lastEvent: AnyRealtimeEvent | null;
35
23
  connectionId: string | null;
36
24
  reconnect: () => void;
37
- };
38
- type RealtimeContextValue = RealtimeConnectionState & {
39
25
  visitorId: string | null;
40
26
  websiteId: string | null;
41
27
  userId: string | null;
42
28
  };
43
29
  /**
44
30
  * Provides websocket connectivity and heartbeating logic for realtime events.
45
- * Handles SSR by only initializing the WebSocket connection in the browser.
31
+ * Backed by the framework-agnostic RealtimeClient from @cossistant/core.
46
32
  */
47
33
  declare function RealtimeProvider({
48
34
  children,
@@ -58,5 +44,5 @@ declare function RealtimeProvider({
58
44
  */
59
45
  declare function useRealtimeConnection(): RealtimeContextValue;
60
46
  //#endregion
61
- export { type RealtimeAuthConfig, type RealtimeContextValue, RealtimeProvider, type RealtimeProviderProps, useRealtimeConnection };
47
+ export { type RealtimeAuthConfig$1 as RealtimeAuthConfig, type RealtimeContextValue, RealtimeProvider, type RealtimeProviderProps, useRealtimeConnection };
62
48
  //# sourceMappingURL=provider.d.ts.map