@cossistant/next 0.0.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 (111) hide show
  1. package/_virtual/rolldown_runtime.js +27 -0
  2. package/avatar.d.ts +16 -0
  3. package/avatar.d.ts.map +1 -0
  4. package/bubble.d.ts +20 -0
  5. package/bubble.d.ts.map +1 -0
  6. package/button.d.ts +16 -0
  7. package/button.d.ts.map +1 -0
  8. package/config.d.ts +22 -0
  9. package/config.d.ts.map +1 -0
  10. package/conversation-timeline.d.ts +59 -0
  11. package/conversation-timeline.d.ts.map +1 -0
  12. package/fallback.d.ts +18 -0
  13. package/fallback.d.ts.map +1 -0
  14. package/hooks/index.d.ts +23 -0
  15. package/hooks/index.js +5 -0
  16. package/identify-visitor.d.ts +2 -0
  17. package/identify-visitor.js +8 -0
  18. package/identify-visitor2.d.ts +18 -0
  19. package/identify-visitor2.d.ts.map +1 -0
  20. package/image.d.ts +20 -0
  21. package/image.d.ts.map +1 -0
  22. package/index.d.ts +46 -0
  23. package/index.js +36 -0
  24. package/index.js.map +1 -0
  25. package/index2.d.ts +37 -0
  26. package/index2.d.ts.map +1 -0
  27. package/keys.d.ts +199 -0
  28. package/keys.d.ts.map +1 -0
  29. package/multimodal-input.d.ts +40 -0
  30. package/multimodal-input.d.ts.map +1 -0
  31. package/package.json +114 -0
  32. package/primitives/index.d.ts +13 -0
  33. package/primitives/index.js +8 -0
  34. package/provider.d.ts +2 -0
  35. package/provider.js +8 -0
  36. package/provider2.d.ts +93 -0
  37. package/provider2.d.ts.map +1 -0
  38. package/provider3.d.ts +56 -0
  39. package/provider3.d.ts.map +1 -0
  40. package/realtime/index.d.ts +6 -0
  41. package/realtime/index.js +8 -0
  42. package/seen-store.d.ts +17 -0
  43. package/seen-store.d.ts.map +1 -0
  44. package/support/index.d.ts +5 -0
  45. package/support/index.js +6 -0
  46. package/support-config.d.ts +2 -0
  47. package/support-config.js +8 -0
  48. package/support-config2.d.ts +18 -0
  49. package/support-config2.d.ts.map +1 -0
  50. package/support-provider.d.ts +17 -0
  51. package/support-provider.d.ts.map +1 -0
  52. package/support-store.d.ts +6 -0
  53. package/support-store.d.ts.map +1 -0
  54. package/timeline-item-group.d.ts +110 -0
  55. package/timeline-item-group.d.ts.map +1 -0
  56. package/timeline-item.d.ts +54 -0
  57. package/timeline-item.d.ts.map +1 -0
  58. package/typing-indicator.d.ts +24 -0
  59. package/typing-indicator.d.ts.map +1 -0
  60. package/typing-store.d.ts +25 -0
  61. package/typing-store.d.ts.map +1 -0
  62. package/use-client-query.d.ts +23 -0
  63. package/use-client-query.d.ts.map +1 -0
  64. package/use-composer-refocus.d.ts +20 -0
  65. package/use-composer-refocus.d.ts.map +1 -0
  66. package/use-conversation-auto-seen.d.ts +52 -0
  67. package/use-conversation-auto-seen.d.ts.map +1 -0
  68. package/use-conversation-history-page.d.ts +84 -0
  69. package/use-conversation-history-page.d.ts.map +1 -0
  70. package/use-conversation-lifecycle.d.ts +80 -0
  71. package/use-conversation-lifecycle.d.ts.map +1 -0
  72. package/use-conversation-page.d.ts +80 -0
  73. package/use-conversation-page.d.ts.map +1 -0
  74. package/use-conversation-seen.d.ts +15 -0
  75. package/use-conversation-seen.d.ts.map +1 -0
  76. package/use-conversation-timeline-items.d.ts +19 -0
  77. package/use-conversation-timeline-items.d.ts.map +1 -0
  78. package/use-conversation-typing.d.ts +11 -0
  79. package/use-conversation-typing.d.ts.map +1 -0
  80. package/use-conversation.d.ts +16 -0
  81. package/use-conversation.d.ts.map +1 -0
  82. package/use-conversations.d.ts +18 -0
  83. package/use-conversations.d.ts.map +1 -0
  84. package/use-create-conversation.d.ts +26 -0
  85. package/use-create-conversation.d.ts.map +1 -0
  86. package/use-default-messages.d.ts +16 -0
  87. package/use-default-messages.d.ts.map +1 -0
  88. package/use-grouped-messages.d.ts +51 -0
  89. package/use-grouped-messages.d.ts.map +1 -0
  90. package/use-home-page.d.ts +80 -0
  91. package/use-home-page.d.ts.map +1 -0
  92. package/use-message-composer.d.ts +86 -0
  93. package/use-message-composer.d.ts.map +1 -0
  94. package/use-multimodal-input.d.ts +40 -0
  95. package/use-multimodal-input.d.ts.map +1 -0
  96. package/use-realtime-support.d.ts +23 -0
  97. package/use-realtime-support.d.ts.map +1 -0
  98. package/use-realtime.d.ts +28 -0
  99. package/use-realtime.d.ts.map +1 -0
  100. package/use-rest-client.d.ts +15 -0
  101. package/use-rest-client.d.ts.map +1 -0
  102. package/use-send-message.d.ts +31 -0
  103. package/use-send-message.d.ts.map +1 -0
  104. package/use-visitor.d.ts +26 -0
  105. package/use-visitor.d.ts.map +1 -0
  106. package/use-window-visibility-focus.d.ts +9 -0
  107. package/use-window-visibility-focus.d.ts.map +1 -0
  108. package/websocket.d.ts +21 -0
  109. package/websocket.d.ts.map +1 -0
  110. package/window.d.ts +23 -0
  111. package/window.d.ts.map +1 -0
@@ -0,0 +1,27 @@
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) => {
7
+ let target = {};
8
+ for (var name in all) __defProp(target, name, {
9
+ get: all[name],
10
+ enumerable: true
11
+ });
12
+ return target;
13
+ };
14
+ var __copyProps = (to, from, except, desc) => {
15
+ if (from && typeof from === "object" || typeof from === "function") for (var keys = __getOwnPropNames(from), i = 0, n = keys.length, key; i < n; i++) {
16
+ key = keys[i];
17
+ if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
18
+ get: ((k) => from[k]).bind(null, key),
19
+ enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
20
+ });
21
+ }
22
+ return to;
23
+ };
24
+ var __reExport = (target, mod, secondTarget) => (__copyProps(target, mod, "default"), secondTarget && __copyProps(secondTarget, mod, "default"));
25
+
26
+ //#endregion
27
+ export { __export, __reExport };
package/avatar.d.ts ADDED
@@ -0,0 +1,16 @@
1
+ import * as React$1 from "react";
2
+
3
+ //#region ../react/src/primitives/avatar/avatar.d.ts
4
+
5
+ /**
6
+ * Root avatar wrapper that coordinates image loading state with fallback
7
+ * children so consumers can compose initials, images and status rings.
8
+ */
9
+ declare const Avatar: React$1.ForwardRefExoticComponent<Omit<React$1.HTMLAttributes<HTMLSpanElement>, "children"> & {
10
+ children?: React$1.ReactNode;
11
+ asChild?: boolean;
12
+ className?: string;
13
+ } & React$1.RefAttributes<HTMLSpanElement>>;
14
+ //#endregion
15
+ export { Avatar };
16
+ //# sourceMappingURL=avatar.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"avatar.d.ts","names":[],"sources":["../../react/src/primitives/avatar/avatar.tsx"],"sourcesContent":[],"mappings":";;;;;;;;cA0Ca,QAAM,OAAA,CAAA,0BAAA,KAAA,OAAA,CAAA,eAAA;aA/BP,OAAA,CAAM"}
package/bubble.d.ts ADDED
@@ -0,0 +1,20 @@
1
+ import * as React$1 from "react";
2
+
3
+ //#region ../react/src/primitives/bubble.d.ts
4
+
5
+ /**
6
+ * Floating action button that toggles the support window. Exposes widget state
7
+ * and unread counts to render-prop children for fully custom UI shells.
8
+ */
9
+ declare const SupportBubble: React$1.ForwardRefExoticComponent<Omit<React$1.ButtonHTMLAttributes<HTMLButtonElement>, "children"> & {
10
+ children?: React$1.ReactNode | ((props: {
11
+ isOpen: boolean;
12
+ unreadCount: number;
13
+ toggle: () => void;
14
+ }) => React$1.ReactNode);
15
+ asChild?: boolean;
16
+ className?: string;
17
+ } & React$1.RefAttributes<HTMLButtonElement>>;
18
+ //#endregion
19
+ export { SupportBubble };
20
+ //# sourceMappingURL=bubble.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bubble.d.ts","names":[],"sources":["../../react/src/primitives/bubble.tsx"],"sourcesContent":[],"mappings":";;;;;;;;cAwBa,eAAa,OAAA,CAAA,0BAAA,KAAA,OAAA,CAAA,qBAAA;aAdtB,OAAA,CAAM;;;;QAKA,OAAA,CAAM"}
package/button.d.ts ADDED
@@ -0,0 +1,16 @@
1
+ import * as React$1 from "react";
2
+
3
+ //#region ../react/src/primitives/button.d.ts
4
+
5
+ /**
6
+ * Thin wrapper over a `<button>` that supports `asChild` composition so the
7
+ * primitives can be slotted into external design systems without losing
8
+ * semantics.
9
+ */
10
+ declare const Button: React$1.ForwardRefExoticComponent<React$1.ButtonHTMLAttributes<HTMLButtonElement> & {
11
+ asChild?: boolean;
12
+ className?: string;
13
+ } & React$1.RefAttributes<HTMLButtonElement>>;
14
+ //#endregion
15
+ export { Button };
16
+ //# sourceMappingURL=button.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"button.d.ts","names":[],"sources":["../../react/src/primitives/button.tsx"],"sourcesContent":[],"mappings":";;;;;;;;;AAamB,cAAN,MAAM,EAAA,OAAA,CAAA,yBAAA,CAAA,OAAA,CAAA,oBAAA,CAAA,iBAAA,CAAA,GAAA"}
package/config.d.ts ADDED
@@ -0,0 +1,22 @@
1
+ import React from "react";
2
+
3
+ //#region ../react/src/support/context/config.d.ts
4
+
5
+ declare const useSupportConfig: () => {
6
+ open: () => void;
7
+ close: () => void;
8
+ toggle: () => void;
9
+ mode: "floating" | "responsive";
10
+ size: "normal" | "larger";
11
+ isOpen: boolean;
12
+ content: {
13
+ home?: {
14
+ header?: string;
15
+ subheader?: string;
16
+ ctaLabel?: string;
17
+ };
18
+ };
19
+ };
20
+ //#endregion
21
+ export { useSupportConfig };
22
+ //# sourceMappingURL=config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.d.ts","names":[],"sources":["../../react/src/support/context/config.tsx"],"sourcesContent":[],"mappings":";;;;cAea"}
@@ -0,0 +1,59 @@
1
+ import * as React$1 from "react";
2
+
3
+ //#region ../react/src/primitives/conversation-timeline.d.ts
4
+
5
+ /**
6
+ * High-level state of the timeline handed to render-prop children so they can show
7
+ * skeletons, empty states or pagination affordances.
8
+ */
9
+ type ConversationTimelineRenderProps = {
10
+ itemCount: number;
11
+ isLoading?: boolean;
12
+ hasMore?: boolean;
13
+ isEmpty: boolean;
14
+ };
15
+ /**
16
+ * Scrollable conversation timeline that wires auto-scroll behaviour, live-region semantics and
17
+ * pagination callbacks for displaying timeline items (messages, events, etc.).
18
+ */
19
+ declare const ConversationTimeline: React$1.ForwardRefExoticComponent<Omit<React$1.HTMLAttributes<HTMLDivElement>, "children"> & {
20
+ children?: React$1.ReactNode | ((props: ConversationTimelineRenderProps) => React$1.ReactNode);
21
+ asChild?: boolean;
22
+ className?: string;
23
+ items?: TimelineItemType[];
24
+ isLoading?: boolean;
25
+ hasMore?: boolean;
26
+ autoScroll?: boolean;
27
+ onScrollEnd?: () => void;
28
+ onScrollStart?: () => void;
29
+ } & React$1.RefAttributes<HTMLDivElement>>;
30
+ /**
31
+ * Wrapper around the scrollable timeline giving consumers an easy hook to add
32
+ * padding, backgrounds or transitions without touching the core timeline logic.
33
+ */
34
+ declare const ConversationTimelineContainer: React$1.ForwardRefExoticComponent<Omit<React$1.HTMLAttributes<HTMLDivElement>, "children"> & {
35
+ children?: React$1.ReactNode;
36
+ asChild?: boolean;
37
+ className?: string;
38
+ } & React$1.RefAttributes<HTMLDivElement>>;
39
+ /**
40
+ * Accessible status region for loading more timeline items. Lets host apps render
41
+ * skeletons or shimmer states without reimplementing ARIA wiring.
42
+ */
43
+ declare const ConversationTimelineLoading: React$1.ForwardRefExoticComponent<Omit<React$1.HTMLAttributes<HTMLDivElement>, "children"> & {
44
+ children?: React$1.ReactNode;
45
+ asChild?: boolean;
46
+ className?: string;
47
+ } & React$1.RefAttributes<HTMLDivElement>>;
48
+ /**
49
+ * Placeholder state rendered when no timeline items are present. Uses a polite status
50
+ * region so screen readers announce the empty state.
51
+ */
52
+ declare const ConversationTimelineEmpty: React$1.ForwardRefExoticComponent<Omit<React$1.HTMLAttributes<HTMLDivElement>, "children"> & {
53
+ children?: React$1.ReactNode;
54
+ asChild?: boolean;
55
+ className?: string;
56
+ } & React$1.RefAttributes<HTMLDivElement>>;
57
+ //#endregion
58
+ export { ConversationTimeline, ConversationTimelineContainer, ConversationTimelineEmpty, ConversationTimelineLoading };
59
+ //# sourceMappingURL=conversation-timeline.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"conversation-timeline.d.ts","names":[],"sources":["../../react/src/primitives/conversation-timeline.tsx"],"sourcesContent":[],"mappings":";;;;;AAQA;AA4BA;;AAAiC,KA5BrB,+BAAA,GA4BqB;WAAA,EAAA,MAAA;WAAA,CAAA,EAAA,OAAA;SAhB7B,CAAA,EAAA,OAAM;SACG,EAAA,OAAA;;;;;;AA4KA,cA7JA,oBAsLT,EAtL6B,OAAA,CAAA,yBAsL7B,CAtL6B,IAsL7B,CAtL6B,OAAA,CAAA,cAsL7B,CAtL6B,cAsL7B,CAAA,EAAA,UAAA,CAAA,GAAA;EAAA,QAAA,CAAA,EAtMA,OAAA,CAAM,SAsMN,GAAA,CAAA,CAAA,KAAA,EArMS,+BAqMT,EAAA,GArM6C,OAAA,CAAM,SAqMnD,CAAA;SAzBoC,CAAA,EAAA,OAAA;WAAA,CAAA,EAAA,MAAA;OAAA,CAAA,EAzK/B,gBAyK+B,EAAA;WAT5B,CAAA,EAAM,OAAA;;;aASsB,CAAA,EAAA,GAAA,GAAA,IAAA;EAAA,aAAA,CAAA,EAAA,GAAA,GAAA,IAAA;AAwCxC,CAAA,wBAAa,eAyBT,CAAA,CAAA;;;;;cAvGS,+BAA6B,OAAA,CAAA,0BAAA,KAAA,OAAA,CAAA,eAAA;aAT9B,OAAA,CAAM;;;;;;;;cA+CL,6BAA2B,OAAA,CAAA,0BAAA,KAAA,OAAA,CAAA,eAAA;aAT5B,OAAA,CAAM;;;;;;;;cAiDL,2BAAyB,OAAA,CAAA,0BAAA,KAAA,OAAA,CAAA,eAAA;aAT1B,OAAA,CAAM"}
package/fallback.d.ts ADDED
@@ -0,0 +1,18 @@
1
+ import * as React$1 from "react";
2
+
3
+ //#region ../react/src/primitives/avatar/fallback.d.ts
4
+
5
+ /**
6
+ * Displays initials or custom content while the avatar image loads or fails.
7
+ * Optional delay avoids flashes when images load instantly.
8
+ */
9
+ declare const AvatarFallback: React$1.ForwardRefExoticComponent<Omit<React$1.HTMLAttributes<HTMLSpanElement>, "children"> & {
10
+ children?: React$1.ReactNode;
11
+ name?: string;
12
+ delayMs?: number;
13
+ asChild?: boolean;
14
+ className?: string;
15
+ } & React$1.RefAttributes<HTMLSpanElement>>;
16
+ //#endregion
17
+ export { AvatarFallback };
18
+ //# sourceMappingURL=fallback.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fallback.d.ts","names":[],"sources":["../../react/src/primitives/avatar/fallback.tsx"],"sourcesContent":[],"mappings":";;;;;;;;AAyC2B,cAAd,cAAc,EAAA,OAAA,CAAA,yBAAA,CAAA,IAAA,CAAA,OAAA,CAAA,cAAA,CAAA,eAAA,CAAA,EAAA,UAAA,CAAA,GAAA;aA5Bf,OAAA,CAAM"}
@@ -0,0 +1,23 @@
1
+ import { useClientQuery } from "../use-client-query.js";
2
+ import { useDefaultMessages } from "../use-default-messages.js";
3
+ import { ConversationItem, GroupedMessage, TimelineEventItem, UseGroupedMessagesOptions, UseGroupedMessagesProps, useGroupedMessages } from "../use-grouped-messages.js";
4
+ import { UseMultimodalInputOptions, UseMultimodalInputReturn, useMultimodalInput } from "../use-multimodal-input.js";
5
+ import { UseClientResult, useClient } from "../use-rest-client.js";
6
+ import { UseComposerRefocusOptions, UseComposerRefocusReturn, useComposerRefocus } from "../use-composer-refocus.js";
7
+ import { UseConversationOptions, UseConversationResult, useConversation } from "../use-conversation.js";
8
+ import { CONVERSATION_AUTO_SEEN_DELAY_MS, UseConversationAutoSeenOptions, useConversationAutoSeen } from "../use-conversation-auto-seen.js";
9
+ import { UseConversationHistoryPageOptions, UseConversationHistoryPageReturn, useConversationHistoryPage } from "../use-conversation-history-page.js";
10
+ import { ConversationLifecycleState, UseConversationLifecycleOptions, UseConversationLifecycleReturn, useConversationLifecycle } from "../use-conversation-lifecycle.js";
11
+ import { UseConversationPageOptions, UseConversationPageReturn, useConversationPage } from "../use-conversation-page.js";
12
+ import { useConversationSeen, useDebouncedConversationSeen } from "../use-conversation-seen.js";
13
+ import { UseConversationTimelineItemsOptions, UseConversationTimelineItemsResult, useConversationTimelineItems } from "../use-conversation-timeline-items.js";
14
+ import { ConversationTypingParticipant, useConversationTyping } from "../use-conversation-typing.js";
15
+ import { UseConversationsOptions, UseConversationsResult, useConversations } from "../use-conversations.js";
16
+ import { CreateConversationVariables, UseCreateConversationOptions, UseCreateConversationResult, useCreateConversation } from "../use-create-conversation.js";
17
+ import { UseHomePageOptions, UseHomePageReturn, useHomePage } from "../use-home-page.js";
18
+ import { UseMessageComposerOptions, UseMessageComposerReturn, useMessageComposer } from "../use-message-composer.js";
19
+ import { UseRealtimeSupportOptions, UseRealtimeSupportResult, useRealtimeSupport } from "../use-realtime-support.js";
20
+ import { SendMessageOptions, SendMessageResult, UseSendMessageOptions, UseSendMessageResult, useSendMessage } from "../use-send-message.js";
21
+ import { UseVisitorReturn, useVisitor } from "../use-visitor.js";
22
+ import { WindowVisibilityFocusState, useWindowVisibilityFocus } from "../use-window-visibility-focus.js";
23
+ export { CONVERSATION_AUTO_SEEN_DELAY_MS, ConversationItem, ConversationLifecycleState, ConversationTypingParticipant, CreateConversationVariables, GroupedMessage, SendMessageOptions, SendMessageResult, TimelineEventItem, UseClientResult, UseComposerRefocusOptions, UseComposerRefocusReturn, UseConversationAutoSeenOptions, UseConversationHistoryPageOptions, UseConversationHistoryPageReturn, UseConversationLifecycleOptions, UseConversationLifecycleReturn, UseConversationOptions, UseConversationPageOptions, UseConversationPageReturn, UseConversationResult, UseConversationTimelineItemsOptions, UseConversationTimelineItemsResult, UseConversationsOptions, UseConversationsResult, UseCreateConversationOptions, UseCreateConversationResult, UseGroupedMessagesOptions, UseGroupedMessagesProps, UseHomePageOptions, UseHomePageReturn, UseMessageComposerOptions, UseMessageComposerReturn, UseMultimodalInputOptions, UseMultimodalInputReturn, UseRealtimeSupportOptions, UseRealtimeSupportResult, UseSendMessageOptions, UseSendMessageResult, UseVisitorReturn, WindowVisibilityFocusState, useClient, useClientQuery, useComposerRefocus, useConversation, useConversationAutoSeen, useConversationHistoryPage, useConversationLifecycle, useConversationPage, useConversationSeen, useConversationTimelineItems, useConversationTyping, useConversations, useCreateConversation, useDebouncedConversationSeen, useDefaultMessages, useGroupedMessages, useHomePage, useMessageComposer, useMultimodalInput, useRealtimeSupport, useSendMessage, useVisitor, useWindowVisibilityFocus };
package/hooks/index.js ADDED
@@ -0,0 +1,5 @@
1
+ import { __reExport } from "../_virtual/rolldown_runtime.js";
2
+
3
+ export * from "@cossistant/react/hooks"
4
+
5
+ export { hooks_exports };
@@ -0,0 +1,2 @@
1
+ import { IdentifySupportVisitor, IdentifySupportVisitorProps } from "./identify-visitor2.js";
2
+ export { IdentifySupportVisitor, IdentifySupportVisitorProps };
@@ -0,0 +1,8 @@
1
+ "use client";
2
+
3
+
4
+ import { __reExport } from "./_virtual/rolldown_runtime.js";
5
+
6
+ export * from "@cossistant/react/identify-visitor"
7
+
8
+ export { identify_visitor_exports };
@@ -0,0 +1,18 @@
1
+ //#region ../react/src/identify-visitor.d.ts
2
+ type IdentifySupportVisitorProps = {
3
+ externalId?: string;
4
+ email?: string;
5
+ };
6
+ /**
7
+ * Component exposed by Cossistant allowing you to identify a visitor whenever rendered with either an `externalId` or `email`.
8
+ */
9
+ declare const IdentifySupportVisitor: {
10
+ ({
11
+ externalId,
12
+ email
13
+ }: IdentifySupportVisitorProps): null;
14
+ displayName: string;
15
+ };
16
+ //#endregion
17
+ export { IdentifySupportVisitor, IdentifySupportVisitorProps };
18
+ //# sourceMappingURL=identify-visitor2.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"identify-visitor2.d.ts","names":[],"sources":["../../react/src/identify-visitor.tsx"],"sourcesContent":[],"mappings":";KAIY,2BAAA;EAAA,UAAA,CAAA,EAAA,MAAA;EAQC,KAAA,CAAA,EAAA,MAAA;CAcZ;;;;AAX6B,cAHjB,sBAGiB,EAAA;;;;KAA3B"}
package/image.d.ts ADDED
@@ -0,0 +1,20 @@
1
+ import * as React$1 from "react";
2
+
3
+ //#region ../react/src/primitives/avatar/image.d.ts
4
+ type ImageState = {
5
+ imageLoadingStatus: "idle" | "loading" | "loaded" | "error";
6
+ };
7
+ /**
8
+ * Controlled `<img>` that syncs its loading status back to the avatar context
9
+ * so fallbacks know when to display.
10
+ */
11
+ declare const AvatarImage: React$1.ForwardRefExoticComponent<Omit<React$1.ImgHTMLAttributes<HTMLImageElement>, "alt" | "src"> & {
12
+ src: string;
13
+ alt?: string;
14
+ asChild?: boolean;
15
+ className?: string;
16
+ onLoadingStatusChange?: (status: ImageState["imageLoadingStatus"]) => void;
17
+ } & React$1.RefAttributes<HTMLImageElement>>;
18
+ //#endregion
19
+ export { AvatarImage };
20
+ //# sourceMappingURL=image.d.ts.map
package/image.d.ts.map ADDED
@@ -0,0 +1 @@
1
+ {"version":3,"file":"image.d.ts","names":[],"sources":["../../react/src/primitives/avatar/image.tsx"],"sourcesContent":[],"mappings":";;;KAIK,UAAA;;AAJ0B,CAAA;;;;;cAuBlB,aAAW,OAAA,CAAA,0BAAA,KAAA,OAAA,CAAA,kBAAA;;;;;mCAPU"}
package/index.d.ts ADDED
@@ -0,0 +1,46 @@
1
+ import { useClientQuery } from "./use-client-query.js";
2
+ import { useDefaultMessages } from "./use-default-messages.js";
3
+ import { ConversationItem, GroupedMessage, TimelineEventItem, UseGroupedMessagesOptions, UseGroupedMessagesProps, useGroupedMessages } from "./use-grouped-messages.js";
4
+ import { UseMultimodalInputOptions, UseMultimodalInputReturn, useMultimodalInput } from "./use-multimodal-input.js";
5
+ import { UseClientResult, useClient } from "./use-rest-client.js";
6
+ import { UseComposerRefocusOptions, UseComposerRefocusReturn, useComposerRefocus } from "./use-composer-refocus.js";
7
+ import { UseConversationOptions, UseConversationResult, useConversation } from "./use-conversation.js";
8
+ import { CONVERSATION_AUTO_SEEN_DELAY_MS, UseConversationAutoSeenOptions, useConversationAutoSeen } from "./use-conversation-auto-seen.js";
9
+ import { UseConversationHistoryPageOptions, UseConversationHistoryPageReturn, useConversationHistoryPage } from "./use-conversation-history-page.js";
10
+ import { ConversationLifecycleState, UseConversationLifecycleOptions, UseConversationLifecycleReturn, useConversationLifecycle } from "./use-conversation-lifecycle.js";
11
+ import { UseConversationPageOptions, UseConversationPageReturn, useConversationPage } from "./use-conversation-page.js";
12
+ import { useConversationSeen, useDebouncedConversationSeen } from "./use-conversation-seen.js";
13
+ import { UseConversationTimelineItemsOptions, UseConversationTimelineItemsResult, useConversationTimelineItems } from "./use-conversation-timeline-items.js";
14
+ import { ConversationTypingParticipant, useConversationTyping } from "./use-conversation-typing.js";
15
+ import { UseConversationsOptions, UseConversationsResult, useConversations } from "./use-conversations.js";
16
+ import { CreateConversationVariables, UseCreateConversationOptions, UseCreateConversationResult, useCreateConversation } from "./use-create-conversation.js";
17
+ import { UseHomePageOptions, UseHomePageReturn, useHomePage } from "./use-home-page.js";
18
+ import { UseMessageComposerOptions, UseMessageComposerReturn, useMessageComposer } from "./use-message-composer.js";
19
+ import { UseRealtimeSupportOptions, UseRealtimeSupportResult, useRealtimeSupport } from "./use-realtime-support.js";
20
+ import { SendMessageOptions, SendMessageResult, UseSendMessageOptions, UseSendMessageResult, useSendMessage } from "./use-send-message.js";
21
+ import { UseVisitorReturn, useVisitor } from "./use-visitor.js";
22
+ import { WindowVisibilityFocusState, useWindowVisibilityFocus } from "./use-window-visibility-focus.js";
23
+ import { IdentifySupportVisitor, IdentifySupportVisitorProps } from "./identify-visitor2.js";
24
+ import { TypingIndicator, TypingIndicatorProps, TypingParticipant, TypingParticipantType } from "./typing-indicator.js";
25
+ import { SupportConfig, SupportConfigProps } from "./support-config2.js";
26
+ import { Avatar } from "./avatar.js";
27
+ import { AvatarFallback } from "./fallback.js";
28
+ import { AvatarImage } from "./image.js";
29
+ import { SupportBubble } from "./bubble.js";
30
+ import { Button } from "./button.js";
31
+ import { ConversationTimeline, ConversationTimelineContainer, ConversationTimelineEmpty, ConversationTimelineLoading } from "./conversation-timeline.js";
32
+ import { FileInput, MultimodalInput, SupportInput } from "./multimodal-input.js";
33
+ import { TimelineItem, TimelineItemContent, TimelineItemTimestamp } from "./timeline-item.js";
34
+ import { TimelineItemGroup, TimelineItemGroupAvatar, TimelineItemGroupContent, TimelineItemGroupHeader, TimelineItemGroupReadIndicator, TimelineItemGroupSeenIndicator } from "./timeline-item-group.js";
35
+ import { SupportWindow } from "./window.js";
36
+ import { CossistantContextValue, CossistantProviderProps, SupportProvider, SupportProviderProps, useSupport } from "./provider2.js";
37
+ import { RealtimeAuthConfig, RealtimeContextValue, RealtimeProvider, RealtimeProviderProps, useRealtimeConnection } from "./provider3.js";
38
+ import { applyConversationSeenEvent, hydrateConversationSeen, upsertConversationSeen } from "./seen-store.js";
39
+ import { SupportRealtimeProvider } from "./support-provider.js";
40
+ import { applyConversationTypingEvent, clearTypingFromTimelineItem, clearTypingState, setTypingState } from "./typing-store.js";
41
+ import { RealtimeEventHandler, RealtimeEventHandlerEntry, RealtimeEventHandlersMap, RealtimeEventMeta, useRealtime } from "./use-realtime.js";
42
+ import { useSupportConfig } from "./config.js";
43
+ import { WebSocketContextValue, WebSocketProvider, useWebSocket } from "./websocket.js";
44
+ import { useSupportStore } from "./support-store.js";
45
+ import { Support, SupportProps } from "./index2.js";
46
+ export { Avatar, AvatarFallback, AvatarImage, SupportBubble as Bubble, Button, CONVERSATION_AUTO_SEEN_DELAY_MS, SupportConfig as Config, ConversationItem, ConversationLifecycleState, ConversationTimeline, ConversationTimelineContainer, ConversationTimelineEmpty, ConversationTimelineLoading, ConversationTypingParticipant, CossistantContextValue, CossistantProviderProps, CreateConversationVariables, FileInput, GroupedMessage, IdentifySupportVisitor, IdentifySupportVisitorProps, SupportInput as Input, MultimodalInput, RealtimeAuthConfig, RealtimeContextValue, RealtimeEventHandler, RealtimeEventHandlerEntry, RealtimeEventHandlersMap, RealtimeEventMeta, RealtimeProvider, RealtimeProviderProps, SendMessageOptions, SendMessageResult, Support, SupportConfig, SupportConfigProps, SupportProps, SupportProvider, SupportProviderProps, SupportRealtimeProvider, TimelineEventItem, TimelineItem, TimelineItemContent, TimelineItemGroup, TimelineItemGroupAvatar, TimelineItemGroupContent, TimelineItemGroupHeader, TimelineItemGroupReadIndicator, TimelineItemGroupSeenIndicator, TimelineItemTimestamp, TypingIndicator, TypingIndicatorProps, TypingParticipant, TypingParticipantType, UseClientResult, UseComposerRefocusOptions, UseComposerRefocusReturn, UseConversationAutoSeenOptions, UseConversationHistoryPageOptions, UseConversationHistoryPageReturn, UseConversationLifecycleOptions, UseConversationLifecycleReturn, UseConversationOptions, UseConversationPageOptions, UseConversationPageReturn, UseConversationResult, UseConversationTimelineItemsOptions, UseConversationTimelineItemsResult, UseConversationsOptions, UseConversationsResult, UseCreateConversationOptions, UseCreateConversationResult, UseGroupedMessagesOptions, UseGroupedMessagesProps, UseHomePageOptions, UseHomePageReturn, UseMessageComposerOptions, UseMessageComposerReturn, UseMultimodalInputOptions, UseMultimodalInputReturn, UseRealtimeSupportOptions, UseRealtimeSupportResult, UseSendMessageOptions, UseSendMessageResult, UseVisitorReturn, WebSocketContextValue, WebSocketProvider, SupportWindow as Window, WindowVisibilityFocusState, applyConversationSeenEvent, applyConversationTypingEvent, clearTypingFromTimelineItem, clearTypingState, hydrateConversationSeen, setTypingState, upsertConversationSeen, useClient, useClientQuery, useComposerRefocus, useConversation, useConversationAutoSeen, useConversationHistoryPage, useConversationLifecycle, useConversationPage, useConversationSeen, useConversationTimelineItems, useConversationTyping, useConversations, useCreateConversation, useDebouncedConversationSeen, useDefaultMessages, useGroupedMessages, useHomePage, useMessageComposer, useMultimodalInput, useRealtime, useRealtimeConnection, useRealtimeSupport, useSendMessage, useSupport, useSupportConfig, useSupportStore, useVisitor, useWebSocket, useWindowVisibilityFocus };
package/index.js ADDED
@@ -0,0 +1,36 @@
1
+ "use client";
2
+
3
+
4
+ import { __export, __reExport } from "./_virtual/rolldown_runtime.js";
5
+ import { identify_visitor_exports } from "./identify-visitor.js";
6
+ import { hooks_exports } from "./hooks/index.js";
7
+ import { primitives_exports } from "./primitives/index.js";
8
+ import { provider_exports } from "./provider.js";
9
+ import { realtime_exports } from "./realtime/index.js";
10
+ import { Support, WebSocketProvider, useSupportConfig, useSupportStore, useWebSocket } from "./support/index.js";
11
+ import { support_config_exports } from "./support-config.js";
12
+
13
+ export * from "@cossistant/react/identify-visitor"
14
+
15
+ export * from "@cossistant/react/hooks"
16
+
17
+ export * from "@cossistant/react/primitives"
18
+
19
+ export * from "@cossistant/react/provider"
20
+
21
+ export * from "@cossistant/react/realtime"
22
+
23
+ export * from "@cossistant/react/support-config"
24
+
25
+ //#region src/index.ts
26
+ var src_exports = /* @__PURE__ */ __export({
27
+ Support: () => Support,
28
+ WebSocketProvider: () => WebSocketProvider,
29
+ useSupportConfig: () => useSupportConfig,
30
+ useSupportStore: () => useSupportStore,
31
+ useWebSocket: () => useWebSocket
32
+ });
33
+
34
+ //#endregion
35
+ export { Support, WebSocketProvider, useSupportConfig, useSupportStore, useWebSocket };
36
+ //# 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 * from \"./primitives\";\nexport * from \"./provider\";\nexport * from \"./realtime\";\nexport * from \"./support\";\nexport * from \"./support-config\";\n"],"mappings":""}
package/index2.d.ts ADDED
@@ -0,0 +1,37 @@
1
+ import { SupportLocale, SupportTextContentOverrides } from "./keys.js";
2
+ import { useSupportConfig } from "./config.js";
3
+ import { WebSocketContextValue, WebSocketProvider, useWebSocket } from "./websocket.js";
4
+ import { useSupportStore } from "./support-store.js";
5
+ import * as react_jsx_runtime0 from "react/jsx-runtime";
6
+
7
+ //#region ../react/src/support/index.d.ts
8
+ type SupportProps<Locale extends string = SupportLocale> = {
9
+ className?: string;
10
+ position?: "top" | "bottom";
11
+ align?: "right" | "left";
12
+ mode?: "floating" | "responsive";
13
+ quickOptions?: string[];
14
+ defaultMessages?: DefaultMessage[];
15
+ defaultOpen?: boolean;
16
+ locale?: Locale;
17
+ content?: SupportTextContentOverrides<Locale>;
18
+ };
19
+ /**
20
+ * Orchestrates the end-user support experience by nesting realtime, config and
21
+ * content providers. Renders nothing until website data is available to avoid
22
+ * flashing incomplete UI.
23
+ */
24
+ declare function Support<Locale extends string = SupportLocale>({
25
+ className,
26
+ position,
27
+ align,
28
+ mode,
29
+ quickOptions,
30
+ defaultMessages,
31
+ defaultOpen,
32
+ locale,
33
+ content
34
+ }: SupportProps<Locale>): react_jsx_runtime0.JSX.Element | null;
35
+ //#endregion
36
+ export { Support, SupportProps };
37
+ //# sourceMappingURL=index2.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index2.d.ts","names":[],"sources":["../../react/src/support/index.tsx"],"sourcesContent":[],"mappings":";;;;;;;KAWY,qCAAqC;;;;EAArC,IAAA,CAAA,EAAA,UAAY,GAAA,YAAA;EAAA,YAAA,CAAA,EAAA,MAAA,EAAA;iBAAyB,CAAA,EAO9B,cAP8B,EAAA;aAO9B,CAAA,EAAA,OAAA;QAET,CAAA,EAAA,MAAA;SAC6B,CAAA,EAA5B,2BAA4B,CAAA,MAAA,CAAA;;;AASvC;;;;AAEC,iBAFe,OAEf,CAAA,eAAA,MAAA,GAF+C,aAE/C,CAAA,CAAA;EAAA,SAAA;EAAA,QAAA;EAAA,KAAA;EAAA,IAAA;EAAA,YAAA;EAAA,eAAA;EAAA,WAAA;EAAA,MAAA;EAAA;AAAA,CAAA,EAQE,YARF,CAQe,MARf,CAAA,CAAA,EAQsB,kBAAA,CAAA,GAAA,CAAA,OAAA,GARtB,IAAA"}
package/keys.d.ts ADDED
@@ -0,0 +1,199 @@
1
+ //#region ../react/src/support/text/locales/keys.d.ts
2
+ type SupportLocale = "en" | "fr" | "es";
3
+ type SupportTimeOfDayToken = "morning" | "afternoon" | "evening";
4
+ type SupportTimeOfDayValue = {
5
+ token: SupportTimeOfDayToken;
6
+ label: string;
7
+ };
8
+ type SupportTextUtils = {
9
+ formatNumber: (value: number, options?: Intl.NumberFormatOptions) => string;
10
+ pluralize: (count: number, options: {
11
+ one: string;
12
+ other: string;
13
+ }) => string;
14
+ titleCase: (value: string) => string;
15
+ timeOfDay: () => SupportTimeOfDayValue;
16
+ };
17
+ type SupportTextContext = {
18
+ website: PublicWebsiteResponse | null;
19
+ visitor: PublicWebsiteResponse["visitor"] | null;
20
+ humanAgents: AvailableHumanAgent[];
21
+ aiAgents: AvailableAIAgent[];
22
+ };
23
+ declare const supportTextDefinitions: {
24
+ readonly "common.actions.askQuestion": {
25
+ readonly variables: undefined;
26
+ };
27
+ readonly "common.actions.attachFiles": {
28
+ readonly variables: undefined;
29
+ };
30
+ readonly "common.actions.removeFile": {
31
+ readonly variables: {
32
+ readonly fileName: string;
33
+ };
34
+ };
35
+ readonly "common.brand.watermark": {
36
+ readonly variables: undefined;
37
+ };
38
+ readonly "common.fallbacks.aiAssistant": {
39
+ readonly variables: undefined;
40
+ };
41
+ readonly "common.fallbacks.cossistant": {
42
+ readonly variables: undefined;
43
+ };
44
+ readonly "common.fallbacks.someone": {
45
+ readonly variables: undefined;
46
+ };
47
+ readonly "common.fallbacks.supportTeam": {
48
+ readonly variables: undefined;
49
+ };
50
+ readonly "common.fallbacks.unknown": {
51
+ readonly variables: undefined;
52
+ };
53
+ readonly "common.fallbacks.you": {
54
+ readonly variables: undefined;
55
+ };
56
+ readonly "common.labels.aiAgentIndicator": {
57
+ readonly variables: undefined;
58
+ };
59
+ readonly "common.labels.supportOnline": {
60
+ readonly variables: undefined;
61
+ };
62
+ readonly "page.conversationHistory.showMore": {
63
+ readonly variables: {
64
+ readonly count: number;
65
+ };
66
+ };
67
+ readonly "page.conversationHistory.title": {
68
+ readonly variables: undefined;
69
+ };
70
+ readonly "page.home.greeting": {
71
+ readonly variables: {
72
+ readonly visitorName: string | undefined;
73
+ };
74
+ readonly optional: true;
75
+ };
76
+ readonly "page.home.history.more": {
77
+ readonly variables: {
78
+ readonly count: number;
79
+ };
80
+ };
81
+ readonly "page.home.tagline": {
82
+ readonly variables: {
83
+ readonly websiteName: string | null;
84
+ };
85
+ readonly optional: true;
86
+ };
87
+ readonly "component.conversationButtonLink.fallbackTitle": {
88
+ readonly variables: undefined;
89
+ };
90
+ readonly "component.conversationButtonLink.lastMessage.agent": {
91
+ readonly variables: {
92
+ readonly name: string;
93
+ readonly time: string;
94
+ };
95
+ };
96
+ readonly "component.conversationButtonLink.lastMessage.visitor": {
97
+ readonly variables: {
98
+ readonly time: string;
99
+ };
100
+ };
101
+ readonly "component.conversationButtonLink.typing": {
102
+ readonly variables: {
103
+ readonly name: string;
104
+ };
105
+ };
106
+ readonly "component.conversationEvent.assigned": {
107
+ readonly variables: {
108
+ readonly actorName: string;
109
+ };
110
+ };
111
+ readonly "component.conversationEvent.unassigned": {
112
+ readonly variables: {
113
+ readonly actorName: string;
114
+ };
115
+ };
116
+ readonly "component.conversationEvent.default": {
117
+ readonly variables: {
118
+ readonly actorName: string;
119
+ };
120
+ };
121
+ readonly "component.conversationEvent.participantJoined": {
122
+ readonly variables: {
123
+ readonly actorName: string;
124
+ };
125
+ };
126
+ readonly "component.conversationEvent.participantLeft": {
127
+ readonly variables: {
128
+ readonly actorName: string;
129
+ };
130
+ };
131
+ readonly "component.conversationEvent.participantRequested": {
132
+ readonly variables: {
133
+ readonly actorName: string;
134
+ };
135
+ };
136
+ readonly "component.conversationEvent.priorityChanged": {
137
+ readonly variables: {
138
+ readonly actorName: string;
139
+ };
140
+ };
141
+ readonly "component.conversationEvent.reopened": {
142
+ readonly variables: {
143
+ readonly actorName: string;
144
+ };
145
+ };
146
+ readonly "component.conversationEvent.resolved": {
147
+ readonly variables: {
148
+ readonly actorName: string;
149
+ };
150
+ };
151
+ readonly "component.conversationEvent.statusChanged": {
152
+ readonly variables: {
153
+ readonly actorName: string;
154
+ };
155
+ };
156
+ readonly "component.conversationEvent.tagAdded": {
157
+ readonly variables: {
158
+ readonly actorName: string;
159
+ };
160
+ };
161
+ readonly "component.conversationEvent.tagRemoved": {
162
+ readonly variables: {
163
+ readonly actorName: string;
164
+ };
165
+ };
166
+ readonly "component.multimodalInput.placeholder": {
167
+ readonly variables: undefined;
168
+ };
169
+ readonly "component.multimodalInput.remove": {
170
+ readonly variables: {
171
+ readonly fileName: string;
172
+ };
173
+ };
174
+ readonly "component.navigation.articles": {
175
+ readonly variables: undefined;
176
+ };
177
+ readonly "component.navigation.home": {
178
+ readonly variables: undefined;
179
+ };
180
+ readonly "component.message.timestamp.aiIndicator": {
181
+ readonly variables: undefined;
182
+ };
183
+ };
184
+ type SupportTextDefinitions = typeof supportTextDefinitions;
185
+ type SupportTextKey = keyof SupportTextDefinitions;
186
+ type SupportTextVariables<K extends SupportTextKey> = SupportTextDefinitions[K]["variables"];
187
+ type OptionalFlag<K extends SupportTextKey> = SupportTextDefinitions[K] extends {
188
+ optional: true;
189
+ } ? true : false;
190
+ type MessageVariables<K extends SupportTextKey, Vars = SupportTextVariables<K>> = Vars extends undefined ? undefined : OptionalFlag<K> extends true ? Vars | undefined : Vars;
191
+ type SupportTextMessage<K extends SupportTextKey, Vars = SupportTextVariables<K>> = string | ((args: {
192
+ variables: MessageVariables<K, Vars>;
193
+ context: SupportTextContext;
194
+ utils: SupportTextUtils;
195
+ }) => string);
196
+ type SupportTextContentOverrides<Locale extends string = SupportLocale> = Partial<{ [K in SupportTextKey]: SupportTextMessage<K> | Partial<Record<SupportLocale | Locale, SupportTextMessage<K>>> }>;
197
+ //#endregion
198
+ export { SupportLocale, SupportTextContentOverrides };
199
+ //# sourceMappingURL=keys.d.ts.map
package/keys.d.ts.map ADDED
@@ -0,0 +1 @@
1
+ {"version":3,"file":"keys.d.ts","names":[],"sources":["../../react/src/support/text/locales/keys.ts"],"sourcesContent":[],"mappings":";AAMY,KAAA,aAAA,GAAa,IAAA,GAAA,IAAA,GAAA,IAAA;AAEb,KAAA,qBAAA,GAAqB,SAAA,GAAA,WAAA,GAAA,SAAA;AAErB,KAAA,qBAAA,GAAqB;EAKrB,KAAA,EAJJ,qBAIoB;EAAA,KAAA,EAAA,MAAA;;AAIV,KAJN,gBAAA,GAIM;EAAqB,YAAA,EAAA,CAAA,KAAA,EAAA,MAAA,EAAA,OAAA,CAAA,EAHE,IAAA,CAAK,mBAGP,EAAA,GAAA,MAAA;EAG3B,SAAA,EAAA,CAAA,KAAA,EAAA,MAAkB,EAAA,OAAA,EAAA;IAAA,GAAA,EAAA,MAAA;IACpB,KAAA,EAAA,MAAA;KACA,GAAA,MAAA;WACI,EAAA,CAAA,KAAA,EAAA,MAAA,EAAA,GAAA,MAAA;WACH,EAAA,GAAA,GAPO,qBAOP;CAAgB;AAad,KAjBD,kBAAA,GAwGuD;EAEvD,OAAA,EAzGF,qBAyGwB,GAAA,IAAU;EAChC,OAAA,EAzGF,qBAyGyB,CAAA,SAAA,CAAA,GAAA,IAAA;EAEvB,WAAA,EA1GE,mBA0GkB,EAAA;EAAA,QAAA,EAzGrB,gBAyGqB,EAAA;;AAC/B,cA7FY,sBA6FZ,EAAA;WAAuB,4BAAA,EAAA;IAAC,SAAA,SAAA,EAAA,SAAA;EAEpB,CAAA;EAAY,SAAA,4BAAA,EAAA;IAAW,SAAA,SAAA,EAAA,SAAA;;WACJ,2BAAA,EAAA;IAAC,SAAA,SAAA,EAAA;MAEpB,SAAA,QAAgB,EAAA,MAAA;IAAA,CAAA;;WAEQ,wBAAA,EAAA;IAArB,SAAA,SAAA,EAAA,SAAA;;WAGQ,8BAAA,EAAA;IAAb,SAAA,SAAA,EAAA,SAAA;;WAEC,6BAAA,EAAA;IAAI,SAAA,SAAA,EAAA,SAAA;EAEI,CAAA;EAAkB,SAAA,0BAAA,EAAA;IACnB,SAAA,SAAA,EAAA,SAAA;;WACH,8BAAA,EAAA;IAIuB,SAAA,SAAA,EAAA,SAAA;;WAAjB,0BAAA,EAAA;IACF,SAAA,SAAA,EAAA,SAAA;;EACc,SAAA,sBAAA,EAAA;IAOd,SAAA,SAAA,EAAA,SAA2B;EAAA,CAAA;WAAyB,gCAAA,EAAA;IAExD,SAAA,SAAA,EAAA,SAAA;;WACH,6BAAA,EAAA;IACe,SAAA,SAAA,EAAA,SAAA;;WAA2C,mCAAA,EAAA;IAAnB,SAAA,SAAA,EAAA;MAA/B,SAAA,KAAA,EAAA,MAAA;IAAR,CAAA;;EAHG,SAAA,gCAAA,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAlCI,sBAAA,UAAgC;KAChC,cAAA,SAAuB;KAEvB,+BAA+B,kBAC1C,uBAAuB;KAEnB,uBAAuB,kBAC3B,uBAAuB;;;KAEnB,2BACM,uBACH,qBAAqB,MACzB,qCAED,aAAa,kBACZ,mBACA;KAEQ,6BACD,uBACH,qBAAqB;aAIf,iBAAiB,GAAG;WACtB;SACF;;KAOE,oDAAoD,iBAC/D,gBACO,iBACH,mBAAmB,KACnB,QAAQ,OAAO,gBAAgB,QAAQ,mBAAmB"}