@chatsdk-dev/elements 0.0.1 → 0.1.2
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.
- package/README.md +3 -3
- package/dist/api-CIYPz72L.d.ts +10 -0
- package/dist/api-CIYPz72L.d.ts.map +1 -0
- package/dist/callbacks-PIvHXeEI.d.ts +24 -0
- package/dist/callbacks-PIvHXeEI.d.ts.map +1 -0
- package/dist/chat-element-CCsDDFif.js +441 -0
- package/dist/chat-element-CCsDDFif.js.map +1 -0
- package/dist/chat-element-CSpa62Te.d.ts +53 -0
- package/dist/chat-element-CSpa62Te.d.ts.map +1 -0
- package/dist/chatsdk-provider-BhlChLFd.d.ts +15 -0
- package/dist/chatsdk-provider-BhlChLFd.d.ts.map +1 -0
- package/dist/common/utils.d.ts +14 -0
- package/dist/common/utils.d.ts.map +1 -0
- package/dist/common/utils.js +26 -0
- package/dist/common/utils.js.map +1 -0
- package/dist/components/info-card.d.ts +20 -11
- package/dist/components/info-card.d.ts.map +1 -0
- package/dist/components/info-card.js +38 -1
- package/dist/components/info-card.js.map +1 -0
- package/dist/config-BigIL6TQ.js +29 -0
- package/dist/config-BigIL6TQ.js.map +1 -0
- package/dist/config-CqihvSgz.d.ts +150 -0
- package/dist/config-CqihvSgz.d.ts.map +1 -0
- package/dist/config-D_jVTH_D.d.ts +58 -0
- package/dist/config-D_jVTH_D.d.ts.map +1 -0
- package/dist/context-aSaHw-ac.d.ts +13 -0
- package/dist/context-aSaHw-ac.d.ts.map +1 -0
- package/dist/element-provider-C_nBsftD.d.ts +40 -0
- package/dist/element-provider-C_nBsftD.d.ts.map +1 -0
- package/dist/features/chat/chat-card.d.ts +5 -3
- package/dist/features/chat/chat-card.d.ts.map +1 -0
- package/dist/features/chat/chat-card.js +2 -14
- package/dist/features/chat/chat-element.d.ts +2 -0
- package/dist/features/chat/chat-element.js +2 -0
- package/dist/features/chat/chat-header/chat-header.d.ts +8 -4
- package/dist/features/chat/chat-header/chat-header.d.ts.map +1 -0
- package/dist/features/chat/chat-header/chat-header.js +2 -14
- package/dist/features/chat/chat-header/chat-menu.d.ts +5 -3
- package/dist/features/chat/chat-header/chat-menu.d.ts.map +1 -0
- package/dist/features/chat/chat-header/chat-menu.js +29 -2
- package/dist/features/chat/chat-header/chat-menu.js.map +1 -0
- package/dist/features/chat/chat-history/chat-history-empty.d.ts +5 -3
- package/dist/features/chat/chat-history/chat-history-empty.d.ts.map +1 -0
- package/dist/features/chat/chat-history/chat-history-empty.js +24 -1
- package/dist/features/chat/chat-history/chat-history-empty.js.map +1 -0
- package/dist/features/chat/chat-history/chat-history.d.ts +5 -3
- package/dist/features/chat/chat-history/chat-history.d.ts.map +1 -0
- package/dist/features/chat/chat-history/chat-history.js +2 -14
- package/dist/features/chat/chat-main/chat-main.d.ts +10 -0
- package/dist/features/chat/chat-main/chat-main.d.ts.map +1 -0
- package/dist/features/chat/chat-main/chat-main.js +3 -0
- package/dist/features/chat/chat-main/use-chat.d.ts +23 -0
- package/dist/features/chat/chat-main/use-chat.d.ts.map +1 -0
- package/dist/features/chat/chat-main/use-chat.js +3 -0
- package/dist/features/chat/chat-main/use-initial-messages.d.ts +22 -0
- package/dist/features/chat/chat-main/use-initial-messages.d.ts.map +1 -0
- package/dist/features/chat/chat-main/use-initial-messages.js +2 -0
- package/dist/features/chat/chat-prompt-input.d.ts +20 -12
- package/dist/features/chat/chat-prompt-input.d.ts.map +1 -0
- package/dist/features/chat/chat-prompt-input.js +3 -14
- package/dist/features/chat/chat.context.d.ts +17 -15
- package/dist/features/chat/chat.context.d.ts.map +1 -0
- package/dist/features/chat/chat.context.js +9 -12
- package/dist/features/chat/chat.context.js.map +1 -0
- package/dist/features/chat/index.d.ts +2 -14
- package/dist/features/chat/index.js +2 -14
- package/dist/features/chat/queries/query-keys.d.ts +7 -5
- package/dist/features/chat/queries/query-keys.d.ts.map +1 -0
- package/dist/features/chat/queries/query-keys.js +19 -1
- package/dist/features/chat/queries/query-keys.js.map +1 -0
- package/dist/features/chat/queries/use-create-conversation-mutation.d.ts +27 -23
- package/dist/features/chat/queries/use-create-conversation-mutation.d.ts.map +1 -0
- package/dist/features/chat/queries/use-create-conversation-mutation.js +17 -36
- package/dist/features/chat/queries/use-create-conversation-mutation.js.map +1 -0
- package/dist/features/chat/queries/use-get-chat-query.d.ts +9 -5
- package/dist/features/chat/queries/use-get-chat-query.d.ts.map +1 -0
- package/dist/features/chat/queries/use-get-chat-query.js +2 -14
- package/dist/features/chat/queries/use-get-conversation-query.d.ts +56 -46
- package/dist/features/chat/queries/use-get-conversation-query.d.ts.map +1 -0
- package/dist/features/chat/queries/use-get-conversation-query.js +2 -14
- package/dist/features/chat/queries/use-list-conversations-query.d.ts +27 -23
- package/dist/features/chat/queries/use-list-conversations-query.d.ts.map +1 -0
- package/dist/features/chat/queries/use-list-conversations-query.js +2 -14
- package/dist/features/chat/store.d.ts +10 -8
- package/dist/features/chat/store.d.ts.map +1 -0
- package/dist/features/chat/store.js +15 -1
- package/dist/features/chat/store.js.map +1 -0
- package/dist/features/chat/utils.d.ts +4 -2
- package/dist/features/chat/utils.d.ts.map +1 -0
- package/dist/features/chat/utils.js +15 -1
- package/dist/features/chat/utils.js.map +1 -0
- package/dist/features/data-fetching/use-api-client.d.ts +5 -3
- package/dist/features/data-fetching/use-api-client.d.ts.map +1 -0
- package/dist/features/data-fetching/use-api-client.js +2 -14
- package/dist/features/element/chatsdk-provider.d.ts +2 -0
- package/dist/features/element/chatsdk-provider.js +23 -0
- package/dist/features/element/chatsdk-provider.js.map +1 -0
- package/dist/features/element/constants.d.ts +5 -0
- package/dist/features/element/constants.d.ts.map +1 -0
- package/dist/features/element/constants.js +6 -0
- package/dist/features/element/constants.js.map +1 -0
- package/dist/features/element/element-provider.d.ts +2 -0
- package/dist/features/element/element-provider.js +82 -0
- package/dist/features/element/element-provider.js.map +1 -0
- package/dist/features/element/store.d.ts +2 -0
- package/dist/features/element/store.js +112 -0
- package/dist/features/element/store.js.map +1 -0
- package/dist/features/element/types/api.d.ts +2 -0
- package/dist/features/element/types/api.js +1 -0
- package/dist/features/element/types/callbacks.d.ts +2 -0
- package/dist/features/element/types/callbacks.js +1 -0
- package/dist/features/element/types/config.d.ts +2 -0
- package/dist/features/element/types/config.js +1 -0
- package/dist/features/element/types/context.d.ts +2 -0
- package/dist/features/element/types/context.js +1 -0
- package/dist/features/element/types/locale.d.ts +2 -0
- package/dist/features/element/types/locale.js +1 -0
- package/dist/features/element/types/theme.d.ts +2 -0
- package/dist/features/element/types/theme.js +1 -0
- package/dist/features/element/types/translations.d.ts +2 -0
- package/dist/features/element/types/translations.js +1 -0
- package/dist/features/element/use-element-config.d.ts +40 -0
- package/dist/features/element/use-element-config.d.ts.map +1 -0
- package/dist/features/element/use-element-config.js +39 -0
- package/dist/features/element/use-element-config.js.map +1 -0
- package/dist/features/element/use-merge-global-config.d.ts +20 -0
- package/dist/features/element/use-merge-global-config.d.ts.map +1 -0
- package/dist/features/element/use-merge-global-config.js +34 -0
- package/dist/features/element/use-merge-global-config.js.map +1 -0
- package/dist/features/element/utils.d.ts +2 -0
- package/dist/features/element/utils.js +86 -0
- package/dist/features/element/utils.js.map +1 -0
- package/dist/features/logger/logger.d.ts +2 -9
- package/dist/features/logger/logger.js +15 -1
- package/dist/features/logger/logger.js.map +1 -0
- package/dist/i18n/config.d.ts +2 -61
- package/dist/i18n/config.js +2 -1
- package/dist/i18n/i18next.d.ts +1382 -10
- package/dist/i18n/i18next.d.ts.map +1 -0
- package/dist/i18n/i18next.js +27 -2
- package/dist/i18n/i18next.js.map +1 -0
- package/dist/i18n/utils.d.ts +4 -3
- package/dist/i18n/utils.d.ts.map +1 -0
- package/dist/i18n/utils.js +10 -3
- package/dist/i18n/utils.js.map +1 -0
- package/dist/index.d.ts +5 -20
- package/dist/index.js +68 -20
- package/dist/index.js.map +1 -0
- package/dist/locale-W5Kyyi4X.d.ts +11 -0
- package/dist/locale-W5Kyyi4X.d.ts.map +1 -0
- package/dist/logger-BvmhODdq.d.ts +11 -0
- package/dist/logger-BvmhODdq.d.ts.map +1 -0
- package/dist/store-CGX9oRlE.d.ts +46 -0
- package/dist/store-CGX9oRlE.d.ts.map +1 -0
- package/dist/styles.css +1954 -1963
- package/dist/theme-Cb-RBWbR.d.ts +38 -0
- package/dist/theme-Cb-RBWbR.d.ts.map +1 -0
- package/package.json +18 -50
- package/dist/chunk-2LHKM7RD.js +0 -14
- package/dist/chunk-5UMYP6MD.js +0 -10
- package/dist/chunk-AP4MG32M.js +0 -36
- package/dist/chunk-CFM57HOS.js +0 -358
- package/dist/chunk-EGIUE7H2.js +0 -37
- package/dist/chunk-M5OONVIO.js +0 -90
- package/dist/chunk-MXTBCHYC.js +0 -31
- package/dist/chunk-NIC3MOMY.js +0 -55
- package/dist/chunk-QTRMNIG3.js +0 -83
- package/dist/chunk-R7G3RQLU.js +0 -36
- package/dist/chunk-RJG5D2TM.js +0 -113
- package/dist/chunk-SLJNKQ2G.js +0 -125
- package/dist/chunk-TDEFIW2L.js +0 -9
- package/dist/chunk-TDP6D7U7.js +0 -551
- package/dist/chunk-V2ITXC65.js +0 -24
- package/dist/chunk-VS55HRUS.js +0 -16
- package/dist/chunk-VYDYCGJL.js +0 -25
- package/dist/chunk-X5YUF2YM.js +0 -113
- package/dist/chunk-YX46JVQN.js +0 -78
- package/dist/chunk-YXAMLTTT.js +0 -16
- package/dist/chunk-YXFVHSY4.js +0 -51
- package/dist/chunk-ZCSZX3OI.js +0 -4
- package/dist/common/use-copy-to-clipboard.d.ts +0 -3
- package/dist/common/use-copy-to-clipboard.js +0 -33
- package/dist/common/utilts.d.ts +0 -8
- package/dist/common/utilts.js +0 -28
- package/dist/components/ai-elements/actions.d.ts +0 -13
- package/dist/components/ai-elements/actions.js +0 -42
- package/dist/components/ai-elements/agent.d.ts +0 -31
- package/dist/components/ai-elements/agent.js +0 -77
- package/dist/components/ai-elements/artifact.d.ts +0 -27
- package/dist/components/ai-elements/artifact.js +0 -108
- package/dist/components/ai-elements/attachments.d.ts +0 -57
- package/dist/components/ai-elements/attachments.js +0 -258
- package/dist/components/ai-elements/audio-player.d.ts +0 -33
- package/dist/components/ai-elements/audio-player.js +0 -199
- package/dist/components/ai-elements/canvas.d.ts +0 -10
- package/dist/components/ai-elements/canvas.js +0 -24
- package/dist/components/ai-elements/chain-of-thought.d.ts +0 -34
- package/dist/components/ai-elements/chain-of-thought.js +0 -159
- package/dist/components/ai-elements/checkpoint.d.ts +0 -16
- package/dist/components/ai-elements/checkpoint.js +0 -47
- package/dist/components/ai-elements/code-block.d.ts +0 -48
- package/dist/components/ai-elements/code-block.js +0 -1
- package/dist/components/ai-elements/commit.d.ts +0 -68
- package/dist/components/ai-elements/commit.js +0 -314
- package/dist/components/ai-elements/confirmation.d.ts +0 -52
- package/dist/components/ai-elements/confirmation.js +0 -76
- package/dist/components/ai-elements/connection.d.ts +0 -5
- package/dist/components/ai-elements/connection.js +0 -34
- package/dist/components/ai-elements/context.d.ts +0 -36
- package/dist/components/ai-elements/context.js +0 -320
- package/dist/components/ai-elements/controls.d.ts +0 -8
- package/dist/components/ai-elements/controls.js +0 -17
- package/dist/components/ai-elements/conversation.d.ts +0 -27
- package/dist/components/ai-elements/conversation.js +0 -119
- package/dist/components/ai-elements/edge.d.ts +0 -9
- package/dist/components/ai-elements/edge.js +0 -111
- package/dist/components/ai-elements/environment-variables.d.ts +0 -42
- package/dist/components/ai-elements/environment-variables.js +0 -208
- package/dist/components/ai-elements/file-tree.d.ts +0 -30
- package/dist/components/ai-elements/file-tree.js +0 -212
- package/dist/components/ai-elements/image.d.ts +0 -10
- package/dist/components/ai-elements/image.js +0 -23
- package/dist/components/ai-elements/inline-citation.d.ts +0 -42
- package/dist/components/ai-elements/inline-citation.js +0 -203
- package/dist/components/ai-elements/jsx-preview.d.ts +0 -33
- package/dist/components/ai-elements/jsx-preview.js +0 -206
- package/dist/components/ai-elements/loader.d.ts +0 -9
- package/dist/components/ai-elements/loader.js +0 -115
- package/dist/components/ai-elements/message.d.ts +0 -42
- package/dist/components/ai-elements/message.js +0 -259
- package/dist/components/ai-elements/mic-selector.d.ts +0 -49
- package/dist/components/ai-elements/mic-selector.js +0 -252
- package/dist/components/ai-elements/model-selector.d.ts +0 -39
- package/dist/components/ai-elements/model-selector.js +0 -73
- package/dist/components/ai-elements/node.d.ts +0 -25
- package/dist/components/ai-elements/node.js +0 -41
- package/dist/components/ai-elements/open-in-chat.d.ts +0 -32
- package/dist/components/ai-elements/open-in-chat.js +0 -366
- package/dist/components/ai-elements/package-info.d.ts +0 -32
- package/dist/components/ai-elements/package-info.js +0 -162
- package/dist/components/ai-elements/panel.d.ts +0 -8
- package/dist/components/ai-elements/panel.js +0 -17
- package/dist/components/ai-elements/persona.d.ts +0 -50
- package/dist/components/ai-elements/persona.js +0 -209
- package/dist/components/ai-elements/plan.d.ts +0 -29
- package/dist/components/ai-elements/plan.js +0 -95
- package/dist/components/ai-elements/prompt-input.d.ts +0 -153
- package/dist/components/ai-elements/prompt-input.js +0 -939
- package/dist/components/ai-elements/queue.d.ts +0 -65
- package/dist/components/ai-elements/queue.js +0 -179
- package/dist/components/ai-elements/reasoning.d.ts +0 -30
- package/dist/components/ai-elements/reasoning.js +0 -161
- package/dist/components/ai-elements/response.d.ts +0 -9
- package/dist/components/ai-elements/response.js +0 -33
- package/dist/components/ai-elements/sandbox.d.ts +0 -28
- package/dist/components/ai-elements/sandbox.js +0 -98
- package/dist/components/ai-elements/schema-display.d.ts +0 -58
- package/dist/components/ai-elements/schema-display.js +0 -313
- package/dist/components/ai-elements/shimmer.d.ts +0 -14
- package/dist/components/ai-elements/shimmer.js +0 -1
- package/dist/components/ai-elements/snippet.d.ts +0 -22
- package/dist/components/ai-elements/snippet.js +0 -90
- package/dist/components/ai-elements/sources.d.ts +0 -16
- package/dist/components/ai-elements/sources.js +0 -62
- package/dist/components/ai-elements/speech-input.d.ts +0 -57
- package/dist/components/ai-elements/speech-input.js +0 -206
- package/dist/components/ai-elements/stack-trace.d.ts +0 -42
- package/dist/components/ai-elements/stack-trace.js +0 -377
- package/dist/components/ai-elements/suggestion.d.ts +0 -14
- package/dist/components/ai-elements/suggestion.js +0 -41
- package/dist/components/ai-elements/task.d.ts +0 -18
- package/dist/components/ai-elements/task.js +0 -60
- package/dist/components/ai-elements/terminal.d.ts +0 -31
- package/dist/components/ai-elements/terminal.js +0 -203
- package/dist/components/ai-elements/test-results.d.ts +0 -61
- package/dist/components/ai-elements/test-results.js +0 -349
- package/dist/components/ai-elements/tool.d.ts +0 -35
- package/dist/components/ai-elements/tool.js +0 -2
- package/dist/components/ai-elements/toolbar.d.ts +0 -8
- package/dist/components/ai-elements/toolbar.js +0 -18
- package/dist/components/ai-elements/transcription.d.ts +0 -19
- package/dist/components/ai-elements/transcription.js +0 -90
- package/dist/components/ai-elements/voice-selector.d.ts +0 -66
- package/dist/components/ai-elements/voice-selector.js +0 -332
- package/dist/components/ai-elements/web-preview.d.ts +0 -38
- package/dist/components/ai-elements/web-preview.js +0 -214
- package/dist/components/responsive-alert-dialog.d.ts +0 -19
- package/dist/components/responsive-alert-dialog.js +0 -1
- package/dist/components/responsive-dialog.d.ts +0 -14
- package/dist/components/responsive-dialog.js +0 -1
- package/dist/config-IcWUmjwj.d.ts +0 -239
- package/dist/features/chat/chat-element/chat-element.d.ts +0 -8
- package/dist/features/chat/chat-element/chat-element.js +0 -14
- package/dist/features/chat/chat-element/use-chat.d.ts +0 -21
- package/dist/features/chat/chat-element/use-chat.js +0 -14
- package/dist/features/chat/chat-element/use-initial-messages.d.ts +0 -20
- package/dist/features/chat/chat-element/use-initial-messages.js +0 -14
- package/dist/features/chat/chat-message.d.ts +0 -10
- package/dist/features/chat/chat-message.js +0 -1
- package/dist/features/chat/chat-molecule.d.ts +0 -35
- package/dist/features/chat/chat-molecule.js +0 -14
- package/dist/features/molecule/chatsdk-provider.d.ts +0 -19
- package/dist/features/molecule/chatsdk-provider.js +0 -26
- package/dist/features/molecule/constants.d.ts +0 -3
- package/dist/features/molecule/constants.js +0 -1
- package/dist/features/molecule/molecule-provider.d.ts +0 -39
- package/dist/features/molecule/molecule-provider.js +0 -1
- package/dist/features/molecule/store.d.ts +0 -53
- package/dist/features/molecule/store.js +0 -3
- package/dist/features/molecule/types/api.d.ts +0 -8
- package/dist/features/molecule/types/api.js +0 -1
- package/dist/features/molecule/types/callbacks.d.ts +0 -22
- package/dist/features/molecule/types/callbacks.js +0 -1
- package/dist/features/molecule/types/config.d.ts +0 -10
- package/dist/features/molecule/types/config.js +0 -1
- package/dist/features/molecule/types/context.d.ts +0 -11
- package/dist/features/molecule/types/context.js +0 -1
- package/dist/features/molecule/types/locale.d.ts +0 -9
- package/dist/features/molecule/types/locale.js +0 -1
- package/dist/features/molecule/types/theme.d.ts +0 -38
- package/dist/features/molecule/types/theme.js +0 -1
- package/dist/features/molecule/types/translations.d.ts +0 -10
- package/dist/features/molecule/types/translations.js +0 -1
- package/dist/features/molecule/use-merge-global-config.d.ts +0 -22
- package/dist/features/molecule/use-merge-global-config.js +0 -5
- package/dist/features/molecule/use-molecule-config.d.ts +0 -41
- package/dist/features/molecule/use-molecule-config.js +0 -6
- package/dist/features/molecule/utils.d.ts +0 -10
- package/dist/features/molecule/utils.js +0 -1
|
@@ -1,62 +1,72 @@
|
|
|
1
|
-
import * as
|
|
2
|
-
import { ChatSDK } from
|
|
1
|
+
import * as _tanstack_react_query0 from "@tanstack/react-query";
|
|
2
|
+
import { ChatSDK } from "@chatsdk-dev/api-client";
|
|
3
3
|
|
|
4
|
+
//#region src/features/chat/queries/use-get-conversation-query.d.ts
|
|
4
5
|
interface GetConversationQueryConfigParams {
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
6
|
+
chatId: string;
|
|
7
|
+
conversationId?: string;
|
|
8
|
+
actorId: string;
|
|
9
|
+
client: ChatSDK;
|
|
9
10
|
}
|
|
10
|
-
declare function getConversationQueryConfig({
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
messageCredits: number;
|
|
19
|
-
};
|
|
20
|
-
status: "active" | "archived";
|
|
21
|
-
summary?: string;
|
|
22
|
-
title?: string;
|
|
23
|
-
messages: Array<{
|
|
24
|
-
id: string;
|
|
25
|
-
role: "user" | "assistant" | "system";
|
|
26
|
-
parts: Array<{
|
|
27
|
-
type: "text";
|
|
28
|
-
text: string;
|
|
29
|
-
}>;
|
|
30
|
-
}>;
|
|
31
|
-
_id: string;
|
|
32
|
-
_creationTime: number;
|
|
33
|
-
}>;
|
|
34
|
-
};
|
|
35
|
-
interface UseGetConversationQueryProps {
|
|
36
|
-
chatId?: string;
|
|
37
|
-
conversationId?: string | null;
|
|
38
|
-
}
|
|
39
|
-
declare function useGetConversationQuery({ chatId, conversationId, }: UseGetConversationQueryProps): _tanstack_react_query.UseQueryResult<{
|
|
11
|
+
declare function getConversationQueryConfig({
|
|
12
|
+
chatId,
|
|
13
|
+
conversationId,
|
|
14
|
+
client,
|
|
15
|
+
actorId
|
|
16
|
+
}: GetConversationQueryConfigParams): {
|
|
17
|
+
queryKey: readonly ["chat", "get", string | undefined, "conversation", string | null | undefined];
|
|
18
|
+
queryFn: () => Promise<{
|
|
40
19
|
actor: {
|
|
41
|
-
|
|
42
|
-
|
|
20
|
+
id: string;
|
|
21
|
+
type: "default" | "tenant";
|
|
43
22
|
};
|
|
44
23
|
usage: {
|
|
45
|
-
|
|
24
|
+
messageCredits: number;
|
|
46
25
|
};
|
|
47
26
|
status: "active" | "archived";
|
|
48
27
|
summary?: string;
|
|
49
28
|
title?: string;
|
|
50
29
|
messages: Array<{
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
30
|
+
id: string;
|
|
31
|
+
role: "user" | "assistant" | "system";
|
|
32
|
+
parts: Array<{
|
|
33
|
+
type: "text";
|
|
34
|
+
text: string;
|
|
35
|
+
}>;
|
|
57
36
|
}>;
|
|
58
37
|
_id: string;
|
|
59
38
|
_creationTime: number;
|
|
39
|
+
}>;
|
|
40
|
+
};
|
|
41
|
+
interface UseGetConversationQueryProps {
|
|
42
|
+
chatId?: string;
|
|
43
|
+
conversationId?: string | null;
|
|
44
|
+
}
|
|
45
|
+
declare function useGetConversationQuery({
|
|
46
|
+
chatId,
|
|
47
|
+
conversationId
|
|
48
|
+
}: UseGetConversationQueryProps): _tanstack_react_query0.UseQueryResult<{
|
|
49
|
+
actor: {
|
|
50
|
+
id: string;
|
|
51
|
+
type: "default" | "tenant";
|
|
52
|
+
};
|
|
53
|
+
usage: {
|
|
54
|
+
messageCredits: number;
|
|
55
|
+
};
|
|
56
|
+
status: "active" | "archived";
|
|
57
|
+
summary?: string;
|
|
58
|
+
title?: string;
|
|
59
|
+
messages: Array<{
|
|
60
|
+
id: string;
|
|
61
|
+
role: "user" | "assistant" | "system";
|
|
62
|
+
parts: Array<{
|
|
63
|
+
type: "text";
|
|
64
|
+
text: string;
|
|
65
|
+
}>;
|
|
66
|
+
}>;
|
|
67
|
+
_id: string;
|
|
68
|
+
_creationTime: number;
|
|
60
69
|
}, Error>;
|
|
61
|
-
|
|
70
|
+
//#endregion
|
|
62
71
|
export { getConversationQueryConfig, useGetConversationQuery };
|
|
72
|
+
//# sourceMappingURL=use-get-conversation-query.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"use-get-conversation-query.d.ts","names":[],"sources":["../../../../src/features/chat/queries/use-get-conversation-query.ts"],"mappings":";;;;UAsDU,gCAAA;EACR,MAAA;EACA,cAAA;EACA,OAAA;EACA,MAAA,EAAQ,OAAA;AAAA;AAAA,iBAGM,0BAAA,CAAA;EACd,MAAA;EACA,cAAA;EACA,MAAA;EACA;AAAA,GACC,gCAAA;;;;;;;;;;;;;;;;;;;;;;;;;UAOO,4BAAA;EACR,MAAA;EACA,cAAA;AAAA;AAAA,iBAGc,uBAAA,CAAA;EACd,MAAA;EACA;AAAA,GACC,4BAAA,0BAA4B,cAAA"}
|
|
@@ -1,14 +1,2 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
import '../../../chunk-YXAMLTTT.js';
|
|
4
|
-
import '../../../chunk-TDEFIW2L.js';
|
|
5
|
-
import '../../../chunk-M5OONVIO.js';
|
|
6
|
-
import '../../../chunk-VYDYCGJL.js';
|
|
7
|
-
import '../../../chunk-MXTBCHYC.js';
|
|
8
|
-
import '../../../chunk-2LHKM7RD.js';
|
|
9
|
-
import '../../../chunk-5UMYP6MD.js';
|
|
10
|
-
import '../../../chunk-VS55HRUS.js';
|
|
11
|
-
import '../../../chunk-YX46JVQN.js';
|
|
12
|
-
import '../../../chunk-RJG5D2TM.js';
|
|
13
|
-
import '../../../chunk-ZCSZX3OI.js';
|
|
14
|
-
import '../../../chunk-SLJNKQ2G.js';
|
|
1
|
+
import { d as getConversationQueryConfig, f as useGetConversationQuery } from "../../../chat-element-CCsDDFif.js";
|
|
2
|
+
export { getConversationQueryConfig, useGetConversationQuery };
|
|
@@ -1,29 +1,33 @@
|
|
|
1
|
-
import * as
|
|
1
|
+
import * as _tanstack_react_query0 from "@tanstack/react-query";
|
|
2
2
|
|
|
3
|
+
//#region src/features/chat/queries/use-list-conversations-query.d.ts
|
|
3
4
|
interface UseListConversationsQueryProps {
|
|
4
|
-
|
|
5
|
+
chatId: string;
|
|
5
6
|
}
|
|
6
|
-
declare function useListConversationsQuery({
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
7
|
+
declare function useListConversationsQuery({
|
|
8
|
+
chatId
|
|
9
|
+
}: UseListConversationsQueryProps): _tanstack_react_query0.UseQueryResult<{
|
|
10
|
+
actor: {
|
|
11
|
+
id: string;
|
|
12
|
+
type: "default" | "tenant";
|
|
13
|
+
};
|
|
14
|
+
usage: {
|
|
15
|
+
messageCredits: number;
|
|
16
|
+
};
|
|
17
|
+
status: "active" | "archived";
|
|
18
|
+
summary?: string;
|
|
19
|
+
title?: string;
|
|
20
|
+
messages: Array<{
|
|
21
|
+
id: string;
|
|
22
|
+
role: "user" | "assistant" | "system";
|
|
23
|
+
parts: Array<{
|
|
24
|
+
type: "text";
|
|
25
|
+
text: string;
|
|
24
26
|
}>;
|
|
25
|
-
|
|
26
|
-
|
|
27
|
+
}>;
|
|
28
|
+
_id: string;
|
|
29
|
+
_creationTime: number;
|
|
27
30
|
}[], Error>;
|
|
28
|
-
|
|
31
|
+
//#endregion
|
|
29
32
|
export { useListConversationsQuery };
|
|
33
|
+
//# sourceMappingURL=use-list-conversations-query.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"use-list-conversations-query.d.ts","names":[],"sources":["../../../../src/features/chat/queries/use-list-conversations-query.ts"],"mappings":";;;UAMU,8BAAA;EACR,MAAA;AAAA;AAAA,iBAGc,yBAAA,CAAA;EACd;AAAA,GACC,8BAAA,0BAA8B,cAAA"}
|
|
@@ -1,14 +1,2 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
import '../../../chunk-YXAMLTTT.js';
|
|
4
|
-
import '../../../chunk-TDEFIW2L.js';
|
|
5
|
-
import '../../../chunk-M5OONVIO.js';
|
|
6
|
-
import '../../../chunk-VYDYCGJL.js';
|
|
7
|
-
import '../../../chunk-MXTBCHYC.js';
|
|
8
|
-
import '../../../chunk-2LHKM7RD.js';
|
|
9
|
-
import '../../../chunk-5UMYP6MD.js';
|
|
10
|
-
import '../../../chunk-VS55HRUS.js';
|
|
11
|
-
import '../../../chunk-YX46JVQN.js';
|
|
12
|
-
import '../../../chunk-RJG5D2TM.js';
|
|
13
|
-
import '../../../chunk-ZCSZX3OI.js';
|
|
14
|
-
import '../../../chunk-SLJNKQ2G.js';
|
|
1
|
+
import { h as useListConversationsQuery } from "../../../chat-element-CCsDDFif.js";
|
|
2
|
+
export { useListConversationsQuery };
|
|
@@ -1,13 +1,15 @@
|
|
|
1
|
-
import * as zustand from
|
|
1
|
+
import * as zustand from "zustand";
|
|
2
2
|
|
|
3
|
+
//#region src/features/chat/store.d.ts
|
|
3
4
|
interface ChatStore {
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
5
|
+
tab: "chat" | "history";
|
|
6
|
+
selectedConversationId?: string;
|
|
7
|
+
conversationType: "new" | "history";
|
|
8
|
+
setTab: (tab: "chat" | "history") => void;
|
|
9
|
+
setSelectedConversationId: (id?: string) => void;
|
|
10
|
+
setConversationType: (type: "new" | "history") => void;
|
|
10
11
|
}
|
|
11
12
|
declare const useChatStore: zustand.UseBoundStore<zustand.StoreApi<ChatStore>>;
|
|
12
|
-
|
|
13
|
+
//#endregion
|
|
13
14
|
export { useChatStore };
|
|
15
|
+
//# sourceMappingURL=store.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"store.d.ts","names":[],"sources":["../../../src/features/chat/store.ts"],"mappings":";;;UAEU,SAAA;EACR,GAAA;EACA,sBAAA;EACA,gBAAA;EACA,MAAA,GAAS,GAAA;EACT,yBAAA,GAA4B,EAAA;EAC5B,mBAAA,GAAsB,IAAA;AAAA;AAAA,cAaX,YAAA,EAAY,OAAA,CAAA,aAAA,CAAA,OAAA,CAAA,QAAA,CAAA,SAAA"}
|
|
@@ -1 +1,15 @@
|
|
|
1
|
-
|
|
1
|
+
import { create } from "zustand";
|
|
2
|
+
//#region src/features/chat/store.ts
|
|
3
|
+
const createChatStore = () => create((set) => ({
|
|
4
|
+
tab: "chat",
|
|
5
|
+
conversationType: "new",
|
|
6
|
+
selectedConversationId: void 0,
|
|
7
|
+
setTab: (tab) => set({ tab }),
|
|
8
|
+
setSelectedConversationId: (id) => set({ selectedConversationId: id }),
|
|
9
|
+
setConversationType: (type) => set({ conversationType: type })
|
|
10
|
+
}));
|
|
11
|
+
const useChatStore = createChatStore();
|
|
12
|
+
//#endregion
|
|
13
|
+
export { useChatStore };
|
|
14
|
+
|
|
15
|
+
//# sourceMappingURL=store.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"store.js","names":[],"sources":["../../../src/features/chat/store.ts"],"sourcesContent":["import { create } from \"zustand\";\n\ninterface ChatStore {\n tab: \"chat\" | \"history\";\n selectedConversationId?: string;\n conversationType: \"new\" | \"history\";\n setTab: (tab: \"chat\" | \"history\") => void;\n setSelectedConversationId: (id?: string) => void;\n setConversationType: (type: \"new\" | \"history\") => void;\n}\n\nconst createChatStore = () =>\n create<ChatStore>((set) => ({\n tab: \"chat\",\n conversationType: \"new\",\n selectedConversationId: undefined,\n setTab: (tab) => set({ tab }),\n setSelectedConversationId: (id) => set({ selectedConversationId: id }),\n setConversationType: (type) => set({ conversationType: type }),\n }));\n\nexport const useChatStore = createChatStore();\n"],"mappings":";;AAWA,MAAM,wBACJ,QAAmB,SAAS;CAC1B,KAAK;CACL,kBAAkB;CAClB,wBAAwB,KAAA;CACxB,SAAS,QAAQ,IAAI,EAAE,KAAK,CAAC;CAC7B,4BAA4B,OAAO,IAAI,EAAE,wBAAwB,IAAI,CAAC;CACtE,sBAAsB,SAAS,IAAI,EAAE,kBAAkB,MAAM,CAAC;CAC/D,EAAE;AAEL,MAAa,eAAe,iBAAiB"}
|
|
@@ -1,5 +1,7 @@
|
|
|
1
|
-
import { UIMessage } from
|
|
1
|
+
import { UIMessage } from "ai";
|
|
2
2
|
|
|
3
|
+
//#region src/features/chat/utils.d.ts
|
|
3
4
|
declare function getInitialMessagesFromStrings(messages: string[]): UIMessage[];
|
|
4
|
-
|
|
5
|
+
//#endregion
|
|
5
6
|
export { getInitialMessagesFromStrings };
|
|
7
|
+
//# sourceMappingURL=utils.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.d.ts","names":[],"sources":["../../../src/features/chat/utils.ts"],"mappings":";;;iBAEgB,6BAAA,CAA8B,QAAA,aAAqB,SAAA"}
|
|
@@ -1 +1,15 @@
|
|
|
1
|
-
|
|
1
|
+
//#region src/features/chat/utils.ts
|
|
2
|
+
function getInitialMessagesFromStrings(messages) {
|
|
3
|
+
return messages.map((message) => ({
|
|
4
|
+
id: crypto.randomUUID(),
|
|
5
|
+
role: "assistant",
|
|
6
|
+
parts: [{
|
|
7
|
+
type: "text",
|
|
8
|
+
text: message
|
|
9
|
+
}]
|
|
10
|
+
}));
|
|
11
|
+
}
|
|
12
|
+
//#endregion
|
|
13
|
+
export { getInitialMessagesFromStrings };
|
|
14
|
+
|
|
15
|
+
//# sourceMappingURL=utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.js","names":[],"sources":["../../../src/features/chat/utils.ts"],"sourcesContent":["import { UIMessage } from \"ai\";\n\nexport function getInitialMessagesFromStrings(messages: string[]): UIMessage[] {\n return messages.map((message) => ({\n id: crypto.randomUUID(),\n role: \"assistant\",\n parts: [{ type: \"text\", text: message }],\n }));\n}\n"],"mappings":";AAEA,SAAgB,8BAA8B,UAAiC;AAC7E,QAAO,SAAS,KAAK,aAAa;EAChC,IAAI,OAAO,YAAY;EACvB,MAAM;EACN,OAAO,CAAC;GAAE,MAAM;GAAQ,MAAM;GAAS,CAAC;EACzC,EAAE"}
|
|
@@ -1,5 +1,7 @@
|
|
|
1
|
-
import * as
|
|
2
|
-
|
|
3
|
-
declare function useApiClient(): _chatsdk_dev_api_client.ChatSDK;
|
|
1
|
+
import * as _chatsdk_dev_api_client0 from "@chatsdk-dev/api-client";
|
|
4
2
|
|
|
3
|
+
//#region src/features/data-fetching/use-api-client.d.ts
|
|
4
|
+
declare function useApiClient(): _chatsdk_dev_api_client0.ChatSDK;
|
|
5
|
+
//#endregion
|
|
5
6
|
export { useApiClient };
|
|
7
|
+
//# sourceMappingURL=use-api-client.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"use-api-client.d.ts","names":[],"sources":["../../../src/features/data-fetching/use-api-client.ts"],"mappings":";;;iBAGgB,YAAA,CAAA,GAAY,wBAAA,CAAA,OAAA"}
|
|
@@ -1,14 +1,2 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
import '../../chunk-YXAMLTTT.js';
|
|
4
|
-
import '../../chunk-TDEFIW2L.js';
|
|
5
|
-
import '../../chunk-M5OONVIO.js';
|
|
6
|
-
import '../../chunk-VYDYCGJL.js';
|
|
7
|
-
import '../../chunk-MXTBCHYC.js';
|
|
8
|
-
import '../../chunk-2LHKM7RD.js';
|
|
9
|
-
import '../../chunk-5UMYP6MD.js';
|
|
10
|
-
import '../../chunk-VS55HRUS.js';
|
|
11
|
-
import '../../chunk-YX46JVQN.js';
|
|
12
|
-
import '../../chunk-RJG5D2TM.js';
|
|
13
|
-
import '../../chunk-ZCSZX3OI.js';
|
|
14
|
-
import '../../chunk-SLJNKQ2G.js';
|
|
1
|
+
import { v as useApiClient } from "../../chat-element-CCsDDFif.js";
|
|
2
|
+
export { useApiClient };
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { useChatSDKStore } from "./store.js";
|
|
2
|
+
import { useLayoutEffect, useRef } from "react";
|
|
3
|
+
//#region src/features/element/chatsdk-provider.tsx
|
|
4
|
+
function ChatSDKProvider({ config = {}, children }) {
|
|
5
|
+
const initialized = useRef(false);
|
|
6
|
+
const isFirstRender = useRef(true);
|
|
7
|
+
if (!initialized.current) {
|
|
8
|
+
useChatSDKStore.getState().setConfig(config);
|
|
9
|
+
initialized.current = true;
|
|
10
|
+
}
|
|
11
|
+
useLayoutEffect(() => {
|
|
12
|
+
if (isFirstRender.current) {
|
|
13
|
+
isFirstRender.current = false;
|
|
14
|
+
return;
|
|
15
|
+
}
|
|
16
|
+
useChatSDKStore.getState().setConfig(config);
|
|
17
|
+
}, [config]);
|
|
18
|
+
return children;
|
|
19
|
+
}
|
|
20
|
+
//#endregion
|
|
21
|
+
export { ChatSDKProvider };
|
|
22
|
+
|
|
23
|
+
//# sourceMappingURL=chatsdk-provider.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"chatsdk-provider.js","names":[],"sources":["../../../src/features/element/chatsdk-provider.tsx"],"sourcesContent":["import React, { useLayoutEffect, useRef } from \"react\";\n\nimport { useChatSDKStore } from \"./store\";\nimport { RootConfig } from \"./types/config\";\n\ninterface ChatSDKProviderProps {\n config?: RootConfig;\n children: React.ReactNode;\n}\n\nexport function ChatSDKProvider({\n config = {},\n children,\n}: ChatSDKProviderProps) {\n const initialized = useRef(false);\n const isFirstRender = useRef(true);\n\n // Set config immediately on first render, before any child components mount\n if (!initialized.current) {\n useChatSDKStore.getState().setConfig(config);\n initialized.current = true;\n }\n\n useLayoutEffect(() => {\n if (isFirstRender.current) {\n isFirstRender.current = false;\n return;\n }\n\n useChatSDKStore.getState().setConfig(config);\n }, [config]);\n\n return children;\n}\n"],"mappings":";;;AAUA,SAAgB,gBAAgB,EAC9B,SAAS,EAAE,EACX,YACuB;CACvB,MAAM,cAAc,OAAO,MAAM;CACjC,MAAM,gBAAgB,OAAO,KAAK;AAGlC,KAAI,CAAC,YAAY,SAAS;AACxB,kBAAgB,UAAU,CAAC,UAAU,OAAO;AAC5C,cAAY,UAAU;;AAGxB,uBAAsB;AACpB,MAAI,cAAc,SAAS;AACzB,iBAAc,UAAU;AACxB;;AAGF,kBAAgB,UAAU,CAAC,UAAU,OAAO;IAC3C,CAAC,OAAO,CAAC;AAEZ,QAAO"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.d.ts","names":[],"sources":["../../../src/features/element/constants.ts"],"mappings":";cAAa,oBAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.js","names":[],"sources":["../../../src/features/element/constants.ts"],"sourcesContent":["export const LOCAL_STORAGE_PREFIX = \"chatsdk-\";\n"],"mappings":";AAAA,MAAa,uBAAuB"}
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
import { r as languages } from "../../config-BigIL6TQ.js";
|
|
2
|
+
import { i18n } from "../../i18n/i18next.js";
|
|
3
|
+
import { getLocaleChainFromLocale } from "../../i18n/utils.js";
|
|
4
|
+
import { createContext, use } from "react";
|
|
5
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
6
|
+
import { QueryClient, QueryClientProvider } from "@tanstack/react-query";
|
|
7
|
+
import { I18nextProvider } from "react-i18next";
|
|
8
|
+
//#region src/features/element/element-provider.tsx
|
|
9
|
+
const queryClient = new QueryClient();
|
|
10
|
+
function ElementTranslationsProvider({ localeConfig, translationsConfig, children }) {
|
|
11
|
+
let language = localeConfig?.language;
|
|
12
|
+
if (language && !languages.includes(language)) {
|
|
13
|
+
const [_languageTag] = getLocaleChainFromLocale(language);
|
|
14
|
+
if (_languageTag && languages.includes(_languageTag)) language = _languageTag;
|
|
15
|
+
}
|
|
16
|
+
let _i18n = i18n;
|
|
17
|
+
if (language && (i18n.language !== language || i18n.options.formality !== localeConfig?.formality) && Object.keys(i18n.services.resourceStore.data).includes(language)) _i18n = i18n.cloneInstance({
|
|
18
|
+
lng: language,
|
|
19
|
+
formality: localeConfig?.formality
|
|
20
|
+
});
|
|
21
|
+
if (translationsConfig) for (const [namespace, translations] of Object.entries(translationsConfig)) for (const [language, resource] of Object.entries(translations)) _i18n.addResourceBundle(language, namespace, resource, true, true);
|
|
22
|
+
return /* @__PURE__ */ jsx(I18nextProvider, {
|
|
23
|
+
i18n: _i18n,
|
|
24
|
+
defaultNS: "elements",
|
|
25
|
+
children
|
|
26
|
+
});
|
|
27
|
+
}
|
|
28
|
+
function createElementContext({ name }) {
|
|
29
|
+
const ElementContext = createContext(null);
|
|
30
|
+
function useElement() {
|
|
31
|
+
const v = use(ElementContext);
|
|
32
|
+
if (!v) throw new Error("Must be used within its ElementProvider");
|
|
33
|
+
return v;
|
|
34
|
+
}
|
|
35
|
+
function useElementConfig() {
|
|
36
|
+
const v = use(ElementContext);
|
|
37
|
+
if (!v) throw new Error("Must be used within its ElementProvider");
|
|
38
|
+
return v.config;
|
|
39
|
+
}
|
|
40
|
+
function useElementComponent() {
|
|
41
|
+
const v = use(ElementContext);
|
|
42
|
+
if (!v) throw new Error("Must be used within its ElementProvider");
|
|
43
|
+
return v.component;
|
|
44
|
+
}
|
|
45
|
+
function useElementCallbacks() {
|
|
46
|
+
const v = use(ElementContext);
|
|
47
|
+
if (!v) throw new Error("Must be used within its ElementProvider");
|
|
48
|
+
return v.callbacks;
|
|
49
|
+
}
|
|
50
|
+
function TypedElementProvider({ config = {}, component, callbacks, children }) {
|
|
51
|
+
return /* @__PURE__ */ jsx(ElementContext.Provider, {
|
|
52
|
+
value: {
|
|
53
|
+
config,
|
|
54
|
+
component,
|
|
55
|
+
callbacks
|
|
56
|
+
},
|
|
57
|
+
children: /* @__PURE__ */ jsx(QueryClientProvider, {
|
|
58
|
+
client: queryClient,
|
|
59
|
+
children: /* @__PURE__ */ jsxs(ElementTranslationsProvider, {
|
|
60
|
+
localeConfig: config.locale,
|
|
61
|
+
translationsConfig: config.translations,
|
|
62
|
+
children: [/* @__PURE__ */ jsx("div", {
|
|
63
|
+
"data-chatsdk": true,
|
|
64
|
+
className: "contents"
|
|
65
|
+
}), children]
|
|
66
|
+
})
|
|
67
|
+
})
|
|
68
|
+
});
|
|
69
|
+
}
|
|
70
|
+
TypedElementProvider.displayName = `ElementProvider<${name}>`;
|
|
71
|
+
return {
|
|
72
|
+
useElement,
|
|
73
|
+
useElementConfig,
|
|
74
|
+
useElementComponent,
|
|
75
|
+
useElementCallbacks,
|
|
76
|
+
ElementProvider: TypedElementProvider
|
|
77
|
+
};
|
|
78
|
+
}
|
|
79
|
+
//#endregion
|
|
80
|
+
export { createElementContext };
|
|
81
|
+
|
|
82
|
+
//# sourceMappingURL=element-provider.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"element-provider.js","names":[],"sources":["../../../src/features/element/element-provider.tsx"],"sourcesContent":["import { QueryClient, QueryClientProvider } from \"@tanstack/react-query\";\nimport React, { createContext, use } from \"react\";\nimport { I18nextProvider } from \"react-i18next\";\n\nimport { languages } from \"../../i18n/config\";\nimport { i18n } from \"../../i18n/i18next\";\nimport { getLocaleChainFromLocale } from \"../../i18n/utils\";\n\nimport type { Callbacks } from \"./types/callbacks\";\nimport type { RootConfig } from \"./types/config\";\n\nconst queryClient = new QueryClient();\n\ninterface TranslationsProviderProps {\n localeConfig: RootConfig[\"locale\"];\n translationsConfig: RootConfig[\"translations\"];\n children: React.ReactNode;\n}\n\nfunction ElementTranslationsProvider({\n localeConfig,\n translationsConfig,\n children,\n}: TranslationsProviderProps) {\n let language = localeConfig?.language;\n if (language && !languages.includes(language)) {\n // if region doesn't exists, try base language (see https://en.wikipedia.org/wiki/IETF_language_tag)\n const [_languageTag] = getLocaleChainFromLocale(language);\n if (_languageTag && languages.includes(_languageTag)) {\n language = _languageTag;\n }\n }\n\n // handle locale config\n let _i18n = i18n;\n if (\n language &&\n (i18n.language !== language ||\n i18n.options.formality !== localeConfig?.formality) &&\n Object.keys(i18n.services.resourceStore.data).includes(language)\n ) {\n _i18n = i18n.cloneInstance({\n lng: language,\n formality: localeConfig?.formality,\n });\n }\n\n // handle translations config\n if (translationsConfig) {\n for (const [namespace, translations] of Object.entries(\n translationsConfig,\n )) {\n for (const [language, resource] of Object.entries(translations)) {\n _i18n.addResourceBundle(language, namespace, resource, true, true);\n }\n }\n }\n\n return (\n <I18nextProvider i18n={_i18n} defaultNS={\"elements\"}>\n {children}\n </I18nextProvider>\n );\n}\n\nexport interface ElementContextType<T, W> {\n config: RootConfig;\n component: T;\n callbacks: Callbacks<W>;\n}\n\nexport interface ElementProviderProps<T, W> {\n config: RootConfig;\n component: T;\n children: React.ReactNode;\n callbacks: Callbacks<W>;\n}\n\ninterface CreateElementContextParams {\n name: string;\n}\n\nexport function createElementContext<T, W>({\n name,\n}: CreateElementContextParams) {\n const ElementContext = createContext<ElementContextType<T, W> | null>(null);\n\n function useElement() {\n const v = use(ElementContext);\n if (!v) throw new Error(\"Must be used within its ElementProvider\");\n return v;\n }\n function useElementConfig() {\n const v = use(ElementContext);\n if (!v) throw new Error(\"Must be used within its ElementProvider\");\n return v.config;\n }\n function useElementComponent() {\n const v = use(ElementContext);\n if (!v) throw new Error(\"Must be used within its ElementProvider\");\n return v.component;\n }\n function useElementCallbacks() {\n const v = use(ElementContext);\n if (!v) throw new Error(\"Must be used within its ElementProvider\");\n return v.callbacks;\n }\n\n function TypedElementProvider({\n config = {},\n component,\n callbacks,\n children,\n }: ElementProviderProps<T, W>) {\n return (\n <ElementContext.Provider value={{ config, component, callbacks }}>\n <QueryClientProvider client={queryClient}>\n <ElementTranslationsProvider\n localeConfig={config.locale}\n translationsConfig={config.translations}\n >\n <div data-chatsdk className=\"contents\"></div>\n {children}\n </ElementTranslationsProvider>\n </QueryClientProvider>\n </ElementContext.Provider>\n );\n }\n TypedElementProvider.displayName = `ElementProvider<${name}>`;\n\n return {\n useElement,\n useElementConfig,\n useElementComponent,\n useElementCallbacks,\n ElementProvider: TypedElementProvider,\n } as const;\n}\n"],"mappings":";;;;;;;;AAWA,MAAM,cAAc,IAAI,aAAa;AAQrC,SAAS,4BAA4B,EACnC,cACA,oBACA,YAC4B;CAC5B,IAAI,WAAW,cAAc;AAC7B,KAAI,YAAY,CAAC,UAAU,SAAS,SAAS,EAAE;EAE7C,MAAM,CAAC,gBAAgB,yBAAyB,SAAS;AACzD,MAAI,gBAAgB,UAAU,SAAS,aAAa,CAClD,YAAW;;CAKf,IAAI,QAAQ;AACZ,KACE,aACC,KAAK,aAAa,YACjB,KAAK,QAAQ,cAAc,cAAc,cAC3C,OAAO,KAAK,KAAK,SAAS,cAAc,KAAK,CAAC,SAAS,SAAS,CAEhE,SAAQ,KAAK,cAAc;EACzB,KAAK;EACL,WAAW,cAAc;EAC1B,CAAC;AAIJ,KAAI,mBACF,MAAK,MAAM,CAAC,WAAW,iBAAiB,OAAO,QAC7C,mBACD,CACC,MAAK,MAAM,CAAC,UAAU,aAAa,OAAO,QAAQ,aAAa,CAC7D,OAAM,kBAAkB,UAAU,WAAW,UAAU,MAAM,KAAK;AAKxE,QACE,oBAAC,iBAAD;EAAiB,MAAM;EAAO,WAAW;EACtC;EACe,CAAA;;AAqBtB,SAAgB,qBAA2B,EACzC,QAC6B;CAC7B,MAAM,iBAAiB,cAA+C,KAAK;CAE3E,SAAS,aAAa;EACpB,MAAM,IAAI,IAAI,eAAe;AAC7B,MAAI,CAAC,EAAG,OAAM,IAAI,MAAM,0CAA0C;AAClE,SAAO;;CAET,SAAS,mBAAmB;EAC1B,MAAM,IAAI,IAAI,eAAe;AAC7B,MAAI,CAAC,EAAG,OAAM,IAAI,MAAM,0CAA0C;AAClE,SAAO,EAAE;;CAEX,SAAS,sBAAsB;EAC7B,MAAM,IAAI,IAAI,eAAe;AAC7B,MAAI,CAAC,EAAG,OAAM,IAAI,MAAM,0CAA0C;AAClE,SAAO,EAAE;;CAEX,SAAS,sBAAsB;EAC7B,MAAM,IAAI,IAAI,eAAe;AAC7B,MAAI,CAAC,EAAG,OAAM,IAAI,MAAM,0CAA0C;AAClE,SAAO,EAAE;;CAGX,SAAS,qBAAqB,EAC5B,SAAS,EAAE,EACX,WACA,WACA,YAC6B;AAC7B,SACE,oBAAC,eAAe,UAAhB;GAAyB,OAAO;IAAE;IAAQ;IAAW;IAAW;aAC9D,oBAAC,qBAAD;IAAqB,QAAQ;cAC3B,qBAAC,6BAAD;KACE,cAAc,OAAO;KACrB,oBAAoB,OAAO;eAF7B,CAIE,oBAAC,OAAD;MAAK,gBAAA;MAAa,WAAU;MAAiB,CAAA,EAC5C,SAC2B;;IACV,CAAA;GACE,CAAA;;AAG9B,sBAAqB,cAAc,mBAAmB,KAAK;AAE3D,QAAO;EACL;EACA;EACA;EACA;EACA,iBAAiB;EAClB"}
|
|
@@ -0,0 +1,112 @@
|
|
|
1
|
+
import { LOCAL_STORAGE_PREFIX } from "./constants.js";
|
|
2
|
+
import { deepMerge } from "./utils.js";
|
|
3
|
+
import { create } from "zustand";
|
|
4
|
+
import { createJSONStorage, persist } from "zustand/middleware";
|
|
5
|
+
//#region src/features/element/store.ts
|
|
6
|
+
const defaultInitialState = {
|
|
7
|
+
context: { actor: { id: crypto.randomUUID() } },
|
|
8
|
+
api: {
|
|
9
|
+
version: "v1",
|
|
10
|
+
baseUrl: "/api/proxy",
|
|
11
|
+
credentials: "include"
|
|
12
|
+
},
|
|
13
|
+
locale: { language: "en" }
|
|
14
|
+
};
|
|
15
|
+
const createChatSDKStore = (customInitialState) => {
|
|
16
|
+
const initialState = {
|
|
17
|
+
...defaultInitialState,
|
|
18
|
+
...customInitialState
|
|
19
|
+
};
|
|
20
|
+
return create()(persist((set) => ({
|
|
21
|
+
...initialState,
|
|
22
|
+
setContext: (context) => set((state) => ({
|
|
23
|
+
...state,
|
|
24
|
+
context: deepMerge({
|
|
25
|
+
...state.context,
|
|
26
|
+
...context
|
|
27
|
+
})
|
|
28
|
+
})),
|
|
29
|
+
setLogger: (logger) => set((state) => ({
|
|
30
|
+
...state,
|
|
31
|
+
logger
|
|
32
|
+
})),
|
|
33
|
+
setTheme: (theme) => set((state) => ({
|
|
34
|
+
...state,
|
|
35
|
+
theme: {
|
|
36
|
+
...state.theme,
|
|
37
|
+
...theme
|
|
38
|
+
}
|
|
39
|
+
})),
|
|
40
|
+
setApi: (api) => set((state) => ({
|
|
41
|
+
...state,
|
|
42
|
+
api: {
|
|
43
|
+
...state.api,
|
|
44
|
+
...api,
|
|
45
|
+
headers: state.api?.headers || api?.headers ? {
|
|
46
|
+
...state.api?.headers,
|
|
47
|
+
...api?.headers
|
|
48
|
+
} : void 0
|
|
49
|
+
}
|
|
50
|
+
})),
|
|
51
|
+
setTranslations: (translations, merge = true) => set((state) => ({
|
|
52
|
+
...state,
|
|
53
|
+
translations: merge ? {
|
|
54
|
+
...state.translations,
|
|
55
|
+
...translations
|
|
56
|
+
} : translations
|
|
57
|
+
})),
|
|
58
|
+
setLocale: (locale) => {
|
|
59
|
+
set((state) => ({
|
|
60
|
+
...state,
|
|
61
|
+
locale
|
|
62
|
+
}));
|
|
63
|
+
},
|
|
64
|
+
setConfig: (newConfig, merge = true) => {
|
|
65
|
+
set((state) => {
|
|
66
|
+
const config = merge ? state : initialState;
|
|
67
|
+
return {
|
|
68
|
+
...config,
|
|
69
|
+
...newConfig,
|
|
70
|
+
api: {
|
|
71
|
+
...config.api,
|
|
72
|
+
...newConfig.api
|
|
73
|
+
},
|
|
74
|
+
context: deepMerge({
|
|
75
|
+
...config.context,
|
|
76
|
+
...newConfig.context
|
|
77
|
+
}),
|
|
78
|
+
theme: {
|
|
79
|
+
...config.theme,
|
|
80
|
+
...newConfig.theme
|
|
81
|
+
},
|
|
82
|
+
translations: {
|
|
83
|
+
...config.translations,
|
|
84
|
+
...newConfig.translations
|
|
85
|
+
}
|
|
86
|
+
};
|
|
87
|
+
});
|
|
88
|
+
},
|
|
89
|
+
reset: (config) => {
|
|
90
|
+
set({
|
|
91
|
+
...initialState,
|
|
92
|
+
theme: {},
|
|
93
|
+
...config
|
|
94
|
+
});
|
|
95
|
+
},
|
|
96
|
+
setOptions: (options) => set((state) => ({
|
|
97
|
+
...state,
|
|
98
|
+
options
|
|
99
|
+
}))
|
|
100
|
+
}), {
|
|
101
|
+
partialize: (state) => {
|
|
102
|
+
return { context: { actor: state.context?.actor } };
|
|
103
|
+
},
|
|
104
|
+
name: LOCAL_STORAGE_PREFIX + "elements-store",
|
|
105
|
+
storage: createJSONStorage(() => localStorage)
|
|
106
|
+
}));
|
|
107
|
+
};
|
|
108
|
+
const useChatSDKStore = createChatSDKStore();
|
|
109
|
+
//#endregion
|
|
110
|
+
export { createChatSDKStore, useChatSDKStore };
|
|
111
|
+
|
|
112
|
+
//# sourceMappingURL=store.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"store.js","names":[],"sources":["../../../src/features/element/store.ts"],"sourcesContent":["import { create } from \"zustand\";\nimport { createJSONStorage, persist } from \"zustand/middleware\";\n\nimport { LOCAL_STORAGE_PREFIX } from \"./constants\";\nimport type { RootConfig } from \"./types/config\";\nimport { deepMerge } from \"./utils\";\n\nexport interface ChatSDKStore extends RootConfig {\n setContext: (context: RootConfig[\"context\"]) => void;\n setTheme: (theme: RootConfig[\"theme\"]) => void;\n setApi: (api: RootConfig[\"api\"]) => void;\n setLocale: (locale: RootConfig[\"locale\"]) => void;\n setTranslations?: (translations: RootConfig[\"translations\"]) => void;\n setOptions: (options: RootConfig[\"options\"]) => void;\n setLogger: (logger: RootConfig[\"logger\"]) => void;\n\n setConfig: (config: Partial<RootConfig>, merge?: boolean) => void;\n reset: (config?: Partial<RootConfig>) => void; // New reset function\n}\n\nconst defaultInitialState: Omit<\n ChatSDKStore,\n | \"setContext\"\n | \"setTheme\"\n | \"setApi\"\n | \"setLocale\"\n | \"setOptions\"\n | \"setLogger\"\n | \"setConfig\"\n | \"reset\"\n> = {\n context: { actor: { id: crypto.randomUUID() } },\n api: {\n version: \"v1\",\n baseUrl: \"/api/proxy\",\n credentials: \"include\",\n },\n locale: { language: \"en\" },\n};\n\n// Factory function to create stores with custom initial states\nexport const createChatSDKStore = (\n customInitialState?: Partial<typeof defaultInitialState>,\n) => {\n const initialState = { ...defaultInitialState, ...customInitialState };\n\n return create<ChatSDKStore>()(\n persist(\n (set) => ({\n ...initialState,\n setContext: (context) =>\n set((state) => ({\n ...state,\n context: deepMerge({ ...state.context, ...context }),\n })),\n setLogger: (logger) => set((state) => ({ ...state, logger })),\n setTheme: (theme) =>\n set((state) => ({ ...state, theme: { ...state.theme, ...theme } })),\n setApi: (api) =>\n set((state) => ({\n ...state,\n api: {\n ...state.api,\n ...api,\n headers:\n state.api?.headers || api?.headers\n ? { ...state.api?.headers, ...api?.headers }\n : undefined,\n },\n })),\n setTranslations: (translations, merge = true) =>\n set((state) => ({\n ...state,\n translations: merge\n ? { ...state.translations, ...translations }\n : translations,\n })),\n setLocale: (locale) => {\n set((state) => ({ ...state, locale }));\n },\n setConfig: (newConfig, merge = true) => {\n set((state) => {\n const config = merge ? state : initialState;\n return {\n ...config,\n ...newConfig,\n api: { ...config.api, ...newConfig.api },\n context: deepMerge({\n ...config.context,\n ...newConfig.context,\n }),\n theme: { ...config.theme, ...newConfig.theme },\n translations: {\n ...config.translations,\n ...newConfig.translations,\n },\n };\n });\n },\n reset: (config?: Partial<ChatSDKStore>) => {\n set({ ...initialState, theme: {}, ...config });\n },\n setOptions: (options) => set((state) => ({ ...state, options })),\n }),\n {\n partialize: (state) => {\n return { context: { actor: state.context?.actor } };\n },\n name: LOCAL_STORAGE_PREFIX + \"elements-store\",\n storage: createJSONStorage(() => localStorage),\n },\n ),\n );\n};\n\n// Default store\nexport const useChatSDKStore = createChatSDKStore();\n"],"mappings":";;;;;AAoBA,MAAM,sBAUF;CACF,SAAS,EAAE,OAAO,EAAE,IAAI,OAAO,YAAY,EAAE,EAAE;CAC/C,KAAK;EACH,SAAS;EACT,SAAS;EACT,aAAa;EACd;CACD,QAAQ,EAAE,UAAU,MAAM;CAC3B;AAGD,MAAa,sBACX,uBACG;CACH,MAAM,eAAe;EAAE,GAAG;EAAqB,GAAG;EAAoB;AAEtE,QAAO,QAAsB,CAC3B,SACG,SAAS;EACR,GAAG;EACH,aAAa,YACX,KAAK,WAAW;GACd,GAAG;GACH,SAAS,UAAU;IAAE,GAAG,MAAM;IAAS,GAAG;IAAS,CAAC;GACrD,EAAE;EACL,YAAY,WAAW,KAAK,WAAW;GAAE,GAAG;GAAO;GAAQ,EAAE;EAC7D,WAAW,UACT,KAAK,WAAW;GAAE,GAAG;GAAO,OAAO;IAAE,GAAG,MAAM;IAAO,GAAG;IAAO;GAAE,EAAE;EACrE,SAAS,QACP,KAAK,WAAW;GACd,GAAG;GACH,KAAK;IACH,GAAG,MAAM;IACT,GAAG;IACH,SACE,MAAM,KAAK,WAAW,KAAK,UACvB;KAAE,GAAG,MAAM,KAAK;KAAS,GAAG,KAAK;KAAS,GAC1C,KAAA;IACP;GACF,EAAE;EACL,kBAAkB,cAAc,QAAQ,SACtC,KAAK,WAAW;GACd,GAAG;GACH,cAAc,QACV;IAAE,GAAG,MAAM;IAAc,GAAG;IAAc,GAC1C;GACL,EAAE;EACL,YAAY,WAAW;AACrB,QAAK,WAAW;IAAE,GAAG;IAAO;IAAQ,EAAE;;EAExC,YAAY,WAAW,QAAQ,SAAS;AACtC,QAAK,UAAU;IACb,MAAM,SAAS,QAAQ,QAAQ;AAC/B,WAAO;KACL,GAAG;KACH,GAAG;KACH,KAAK;MAAE,GAAG,OAAO;MAAK,GAAG,UAAU;MAAK;KACxC,SAAS,UAAU;MACjB,GAAG,OAAO;MACV,GAAG,UAAU;MACd,CAAC;KACF,OAAO;MAAE,GAAG,OAAO;MAAO,GAAG,UAAU;MAAO;KAC9C,cAAc;MACZ,GAAG,OAAO;MACV,GAAG,UAAU;MACd;KACF;KACD;;EAEJ,QAAQ,WAAmC;AACzC,OAAI;IAAE,GAAG;IAAc,OAAO,EAAE;IAAE,GAAG;IAAQ,CAAC;;EAEhD,aAAa,YAAY,KAAK,WAAW;GAAE,GAAG;GAAO;GAAS,EAAE;EACjE,GACD;EACE,aAAa,UAAU;AACrB,UAAO,EAAE,SAAS,EAAE,OAAO,MAAM,SAAS,OAAO,EAAE;;EAErD,MAAM,uBAAuB;EAC7B,SAAS,wBAAwB,aAAa;EAC/C,CACF,CACF;;AAIH,MAAa,kBAAkB,oBAAoB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|