@chatsdk-dev/elements 0.1.3 → 0.2.0
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/dist/{api-CIYPz72L.d.ts → api-BP4g92-0.d.ts} +1 -1
- package/dist/{api-CIYPz72L.d.ts.map → api-BP4g92-0.d.ts.map} +1 -1
- package/dist/approval-BODP4NVA.d.ts +5 -0
- package/dist/approval-BODP4NVA.d.ts.map +1 -0
- package/dist/avatar-CK5WGu6N.d.ts +5 -0
- package/dist/avatar-CK5WGu6N.d.ts.map +1 -0
- package/dist/{callbacks-PIvHXeEI.d.ts → callbacks-CQelTSwD.d.ts} +1 -1
- package/dist/{callbacks-PIvHXeEI.d.ts.map → callbacks-CQelTSwD.d.ts.map} +1 -1
- package/dist/chat-element-BbBl5CDM.d.ts +131 -0
- package/dist/chat-element-BbBl5CDM.d.ts.map +1 -0
- package/dist/chat-error-CST-PRdq.d.ts +15 -0
- package/dist/chat-error-CST-PRdq.d.ts.map +1 -0
- package/dist/{chatsdk-provider-BhlChLFd.d.ts → chatsdk-provider-t1GEgRPY.d.ts} +2 -2
- package/dist/chatsdk-provider-t1GEgRPY.d.ts.map +1 -0
- package/dist/{config-CqihvSgz.d.ts → config-BGIY5Hkg.d.ts} +20 -19
- package/dist/config-BGIY5Hkg.d.ts.map +1 -0
- package/dist/config-Wk7C7AJs.js +95 -0
- package/dist/config-Wk7C7AJs.js.map +1 -0
- package/dist/config-f4Go--5s.d.ts +194 -0
- package/dist/config-f4Go--5s.d.ts.map +1 -0
- package/dist/content-BoiPVwgM.d.ts +10 -0
- package/dist/content-BoiPVwgM.d.ts.map +1 -0
- package/dist/{context-aSaHw-ac.d.ts → context-D4dOffYT.d.ts} +1 -1
- package/dist/context-D4dOffYT.d.ts.map +1 -0
- package/dist/conversation-CtpcctHL.d.ts +8 -0
- package/dist/conversation-CtpcctHL.d.ts.map +1 -0
- package/dist/copy-BPB94kUd.d.ts +5 -0
- package/dist/copy-BPB94kUd.d.ts.map +1 -0
- package/dist/{element-provider-C_nBsftD.d.ts → element-provider-C95jVJV9.d.ts} +4 -5
- package/dist/element-provider-C95jVJV9.d.ts.map +1 -0
- package/dist/features/chat/chat-element.d.ts +2 -2
- package/dist/features/chat/chat-element.js +2 -2
- package/dist/features/chat/conversation/conversation.d.ts +2 -0
- package/dist/features/chat/conversation/conversation.js +73 -0
- package/dist/features/chat/conversation/conversation.js.map +1 -0
- package/dist/features/chat/conversation/message/activity.d.ts +12 -0
- package/dist/features/chat/conversation/message/activity.d.ts.map +1 -0
- package/dist/features/chat/conversation/message/activity.js +48 -0
- package/dist/features/chat/conversation/message/activity.js.map +1 -0
- package/dist/features/chat/conversation/message/approval.d.ts +2 -0
- package/dist/features/chat/conversation/message/approval.js +62 -0
- package/dist/features/chat/conversation/message/approval.js.map +1 -0
- package/dist/features/chat/conversation/message/avatar.d.ts +2 -0
- package/dist/features/chat/conversation/message/avatar.js +18 -0
- package/dist/features/chat/conversation/message/avatar.js.map +1 -0
- package/dist/features/chat/conversation/message/content.d.ts +2 -0
- package/dist/features/chat/conversation/message/content.js +11 -0
- package/dist/features/chat/conversation/message/content.js.map +1 -0
- package/dist/features/chat/conversation/message/copy.d.ts +2 -0
- package/dist/features/chat/conversation/message/copy.js +30 -0
- package/dist/features/chat/conversation/message/copy.js.map +1 -0
- package/dist/features/chat/conversation/message/feedback.d.ts +2 -0
- package/dist/features/chat/conversation/message/feedback.js +36 -0
- package/dist/features/chat/conversation/message/feedback.js.map +1 -0
- package/dist/features/chat/conversation/message/footer.d.ts +2 -0
- package/dist/features/chat/conversation/message/footer.js +20 -0
- package/dist/features/chat/conversation/message/footer.js.map +1 -0
- package/dist/features/chat/conversation/message/frame.d.ts +2 -0
- package/dist/features/chat/conversation/message/frame.js +18 -0
- package/dist/features/chat/conversation/message/frame.js.map +1 -0
- package/dist/features/chat/conversation/message/index.d.ts +2 -0
- package/dist/features/chat/conversation/message/index.js +2 -0
- package/dist/features/chat/conversation/message/index.parts.d.ts +22 -0
- package/dist/features/chat/conversation/message/index.parts.d.ts.map +1 -0
- package/dist/features/chat/conversation/message/index.parts.js +36 -0
- package/dist/features/chat/conversation/message/index.parts.js.map +1 -0
- package/dist/features/chat/conversation/message/message.d.ts +1 -0
- package/dist/features/chat/conversation/message/message.js +1 -0
- package/dist/features/chat/conversation/message/part.d.ts +2 -0
- package/dist/features/chat/conversation/message/part.js +35 -0
- package/dist/features/chat/conversation/message/part.js.map +1 -0
- package/dist/features/chat/conversation/message/provider.d.ts +2 -0
- package/dist/features/chat/conversation/message/provider.js +26 -0
- package/dist/features/chat/conversation/message/provider.js.map +1 -0
- package/dist/features/chat/conversation/message/reasoning.d.ts +2 -0
- package/dist/features/chat/conversation/message/reasoning.js +33 -0
- package/dist/features/chat/conversation/message/reasoning.js.map +1 -0
- package/dist/features/chat/conversation/message/sources.d.ts +2 -0
- package/dist/features/chat/conversation/message/sources.js +20 -0
- package/dist/features/chat/conversation/message/sources.js.map +1 -0
- package/dist/features/chat/conversation/message/text.d.ts +2 -0
- package/dist/features/chat/conversation/message/text.js +29 -0
- package/dist/features/chat/conversation/message/text.js.map +1 -0
- package/dist/features/chat/conversation/message/timestamp.d.ts +2 -0
- package/dist/features/chat/conversation/message/timestamp.js +36 -0
- package/dist/features/chat/conversation/message/timestamp.js.map +1 -0
- package/dist/features/chat/conversation/message/tool.d.ts +2 -0
- package/dist/features/chat/conversation/message/tool.js +56 -0
- package/dist/features/chat/conversation/message/tool.js.map +1 -0
- package/dist/features/chat/error/chat-error.d.ts +2 -0
- package/dist/features/chat/error/chat-error.js +46 -0
- package/dist/features/chat/error/chat-error.js.map +1 -0
- package/dist/features/chat/frame/frame.d.ts +2 -0
- package/dist/features/chat/frame/frame.js +52 -0
- package/dist/features/chat/frame/frame.js.map +1 -0
- package/dist/features/chat/frame/header-menu.d.ts +8 -0
- package/dist/features/chat/frame/header-menu.d.ts.map +1 -0
- package/dist/features/chat/{chat-header/chat-menu.js → frame/header-menu.js} +12 -13
- package/dist/features/chat/frame/header-menu.js.map +1 -0
- package/dist/features/chat/frame/header.d.ts +2 -0
- package/dist/features/chat/frame/header.js +50 -0
- package/dist/features/chat/frame/header.js.map +1 -0
- package/dist/features/chat/history/history-empty.d.ts +8 -0
- package/dist/features/chat/history/history-empty.d.ts.map +1 -0
- package/dist/features/chat/{chat-history/chat-history-empty.js → history/history-empty.js} +9 -8
- package/dist/features/chat/history/history-empty.js.map +1 -0
- package/dist/features/chat/history/history.d.ts +2 -0
- package/dist/features/chat/history/history.js +65 -0
- package/dist/features/chat/history/history.js.map +1 -0
- package/dist/features/chat/history/use-history.d.ts +2 -0
- package/dist/features/chat/history/use-history.js +30 -0
- package/dist/features/chat/history/use-history.js.map +1 -0
- package/dist/features/chat/index.d.ts +2 -2
- package/dist/features/chat/index.js +29 -2
- package/dist/features/chat/index.js.map +1 -0
- package/dist/features/chat/index.parts.d.ts +9 -0
- package/dist/features/chat/index.parts.js +24 -0
- package/dist/features/chat/index.parts.js.map +1 -0
- package/dist/features/chat/main/main.d.ts +2 -0
- package/dist/features/chat/main/main.js +40 -0
- package/dist/features/chat/main/main.js.map +1 -0
- package/dist/features/chat/main/prompt-input.d.ts +2 -0
- package/dist/features/chat/main/prompt-input.js +70 -0
- package/dist/features/chat/main/prompt-input.js.map +1 -0
- package/dist/features/chat/main/use-create-new-chat.d.ts +2 -0
- package/dist/features/chat/main/use-create-new-chat.js +24 -0
- package/dist/features/chat/main/use-create-new-chat.js.map +1 -0
- package/dist/features/chat/main/use-prompt-input.d.ts +2 -0
- package/dist/features/chat/main/use-prompt-input.js +27 -0
- package/dist/features/chat/main/use-prompt-input.js.map +1 -0
- package/dist/features/chat/provider/provider.d.ts +2 -0
- package/dist/features/chat/provider/provider.js +3 -0
- package/dist/features/chat/provider/use-ai-sdk-chat.d.ts +26 -0
- package/dist/features/chat/provider/use-ai-sdk-chat.d.ts.map +1 -0
- package/dist/features/chat/provider/use-ai-sdk-chat.js +3 -0
- package/dist/features/chat/provider/use-create-chat-store.d.ts +2 -0
- package/dist/features/chat/provider/use-create-chat-store.js +42 -0
- package/dist/features/chat/provider/use-create-chat-store.js.map +1 -0
- package/dist/features/chat/provider/use-visible-messages.d.ts +13 -0
- package/dist/features/chat/provider/use-visible-messages.d.ts.map +1 -0
- package/dist/features/chat/provider/use-visible-messages.js +23 -0
- package/dist/features/chat/provider/use-visible-messages.js.map +1 -0
- package/dist/features/chat/queries/query-keys.d.ts +3 -3
- package/dist/features/chat/queries/query-keys.d.ts.map +1 -1
- package/dist/features/chat/queries/query-keys.js +5 -5
- package/dist/features/chat/queries/query-keys.js.map +1 -1
- package/dist/features/chat/queries/use-create-conversation-mutation.d.ts +13 -14
- package/dist/features/chat/queries/use-create-conversation-mutation.d.ts.map +1 -1
- package/dist/features/chat/queries/use-create-conversation-mutation.js +4 -4
- package/dist/features/chat/queries/use-create-conversation-mutation.js.map +1 -1
- package/dist/features/chat/queries/use-get-agent-query.d.ts +2 -0
- package/dist/features/chat/queries/use-get-agent-query.js +2 -0
- package/dist/features/chat/queries/use-get-conversation-query.d.ts +2 -72
- package/dist/features/chat/queries/use-get-conversation-query.js +1 -1
- package/dist/features/chat/queries/use-list-conversations-query.d.ts +2 -33
- package/dist/features/chat/queries/use-list-conversations-query.js +23 -1
- package/dist/features/chat/queries/use-list-conversations-query.js.map +1 -0
- package/dist/features/chat/queries/use-record-feedback-mutation.d.ts +26 -0
- package/dist/features/chat/queries/use-record-feedback-mutation.d.ts.map +1 -0
- package/dist/features/chat/queries/use-record-feedback-mutation.js +2 -0
- package/dist/features/chat/utils.d.ts +7 -2
- package/dist/features/chat/utils.d.ts.map +1 -1
- package/dist/features/chat/utils.js +12 -1
- package/dist/features/chat/utils.js.map +1 -1
- package/dist/features/data-fetching/use-api-client.d.ts +1 -3
- package/dist/features/data-fetching/use-api-client.d.ts.map +1 -1
- package/dist/features/data-fetching/use-api-client.js +1 -1
- package/dist/features/element/chatsdk-provider.d.ts +1 -1
- package/dist/features/element/chatsdk-provider.js +5 -5
- package/dist/features/element/chatsdk-provider.js.map +1 -1
- package/dist/features/element/element-provider.d.ts +1 -1
- package/dist/features/element/element-provider.js +12 -8
- package/dist/features/element/element-provider.js.map +1 -1
- package/dist/features/element/store.d.ts +1 -1
- package/dist/features/element/store.js.map +1 -1
- package/dist/features/element/types/api.d.ts +1 -1
- package/dist/features/element/types/callbacks.d.ts +1 -1
- package/dist/features/element/types/config.d.ts +1 -1
- package/dist/features/element/types/context.d.ts +1 -1
- package/dist/features/element/types/locale.d.ts +1 -1
- package/dist/features/element/types/theme.d.ts +1 -1
- package/dist/features/element/types/translations.d.ts +1 -1
- package/dist/features/element/use-element-config.d.ts +14 -33
- package/dist/features/element/use-element-config.d.ts.map +1 -1
- package/dist/features/element/use-element-config.js +7 -15
- package/dist/features/element/use-element-config.js.map +1 -1
- package/dist/features/element/use-merge-global-config.d.ts +6 -7
- package/dist/features/element/use-merge-global-config.d.ts.map +1 -1
- package/dist/features/element/use-merge-global-config.js +2 -2
- package/dist/features/element/use-merge-global-config.js.map +1 -1
- package/dist/features/element/utils.d.ts +1 -1
- package/dist/features/element/utils.js.map +1 -1
- package/dist/features/errors/use-app-error-message.d.ts +2 -0
- package/dist/features/errors/use-app-error-message.js +25 -0
- package/dist/features/errors/use-app-error-message.js.map +1 -0
- package/dist/features/logging/logger-provider.d.ts +2 -0
- package/dist/features/logging/logger-provider.js +20 -0
- package/dist/features/logging/logger-provider.js.map +1 -0
- package/dist/feedback-hofC2MHC.d.ts +5 -0
- package/dist/feedback-hofC2MHC.d.ts.map +1 -0
- package/dist/footer-BdcVsDmw.d.ts +11 -0
- package/dist/footer-BdcVsDmw.d.ts.map +1 -0
- package/dist/frame-BCN71hMj.d.ts +17 -0
- package/dist/frame-BCN71hMj.d.ts.map +1 -0
- package/dist/frame-D_ce2ErP.d.ts +10 -0
- package/dist/frame-D_ce2ErP.d.ts.map +1 -0
- package/dist/header-BDGB3zKD.d.ts +8 -0
- package/dist/header-BDGB3zKD.d.ts.map +1 -0
- package/dist/history-DDUj4LMJ.d.ts +8 -0
- package/dist/history-DDUj4LMJ.d.ts.map +1 -0
- package/dist/i18n/config.d.ts +1 -1
- package/dist/i18n/config.js +1 -1
- package/dist/i18n/i18next.d.ts +1 -1377
- package/dist/i18n/i18next.d.ts.map +1 -1
- package/dist/i18n/i18next.js +1 -2
- package/dist/i18n/i18next.js.map +1 -1
- package/dist/i18n/utils.d.ts +1 -1
- package/dist/i18n/utils.d.ts.map +1 -1
- package/dist/i18n/utils.js.map +1 -1
- package/dist/index.d.ts +13 -5
- package/dist/index.js +12 -59
- package/dist/index.js.map +1 -1
- package/dist/{locale-W5Kyyi4X.d.ts → locale-v_zPGRhE.d.ts} +2 -2
- package/dist/locale-v_zPGRhE.d.ts.map +1 -0
- package/dist/logger-provider-whBIV3Gt.d.ts +16 -0
- package/dist/logger-provider-whBIV3Gt.d.ts.map +1 -0
- package/dist/main-D8VgMjmL.d.ts +15 -0
- package/dist/main-D8VgMjmL.d.ts.map +1 -0
- package/dist/part-C8ZA6iZn.d.ts +25 -0
- package/dist/part-C8ZA6iZn.d.ts.map +1 -0
- package/dist/prompt-input-bclKhGu3.d.ts +15 -0
- package/dist/prompt-input-bclKhGu3.d.ts.map +1 -0
- package/dist/provider-CkkKc2aq.d.ts +21 -0
- package/dist/provider-CkkKc2aq.d.ts.map +1 -0
- package/dist/provider-Cps0PPXa.js +383 -0
- package/dist/provider-Cps0PPXa.js.map +1 -0
- package/dist/reasoning-BRNu_n6T.d.ts +5 -0
- package/dist/reasoning-BRNu_n6T.d.ts.map +1 -0
- package/dist/rolldown-runtime-D7D4PA-g.js +13 -0
- package/dist/sources-BXoSxNYc.d.ts +5 -0
- package/dist/sources-BXoSxNYc.d.ts.map +1 -0
- package/dist/{store-CGX9oRlE.d.ts → store-CkswgmIQ.d.ts} +8 -10
- package/dist/store-CkswgmIQ.d.ts.map +1 -0
- package/dist/styles.css +1677 -948
- package/dist/text-Cio_Hj_h.d.ts +5 -0
- package/dist/text-Cio_Hj_h.d.ts.map +1 -0
- package/dist/{theme-Cb-RBWbR.d.ts → theme-K7rbPHc1.d.ts} +1 -1
- package/dist/{theme-Cb-RBWbR.d.ts.map → theme-K7rbPHc1.d.ts.map} +1 -1
- package/dist/timestamp-CbU3bLa3.d.ts +5 -0
- package/dist/timestamp-CbU3bLa3.d.ts.map +1 -0
- package/dist/tool-DskTWxZb.d.ts +5 -0
- package/dist/tool-DskTWxZb.d.ts.map +1 -0
- package/dist/use-app-error-message-DAHQ4oR_.d.ts +12 -0
- package/dist/use-app-error-message-DAHQ4oR_.d.ts.map +1 -0
- package/dist/use-create-chat-store-Ccd5tvho.d.ts +26 -0
- package/dist/use-create-chat-store-Ccd5tvho.d.ts.map +1 -0
- package/dist/use-create-new-chat-H4kM3hPt.d.ts +7 -0
- package/dist/use-create-new-chat-H4kM3hPt.d.ts.map +1 -0
- package/dist/use-get-agent-query-hQ4uOjfL.d.ts +10 -0
- package/dist/use-get-agent-query-hQ4uOjfL.d.ts.map +1 -0
- package/dist/use-get-conversation-query-D5bRlewH.d.ts +73 -0
- package/dist/use-get-conversation-query-D5bRlewH.d.ts.map +1 -0
- package/dist/use-history-DH2KkVDP.d.ts +30 -0
- package/dist/use-history-DH2KkVDP.d.ts.map +1 -0
- package/dist/use-list-conversations-query-Ny-nP5cZ.d.ts +29 -0
- package/dist/use-list-conversations-query-Ny-nP5cZ.d.ts.map +1 -0
- package/package.json +27 -24
- package/dist/chat-element-CCsDDFif.js +0 -441
- package/dist/chat-element-CCsDDFif.js.map +0 -1
- package/dist/chat-element-CSpa62Te.d.ts +0 -53
- package/dist/chat-element-CSpa62Te.d.ts.map +0 -1
- package/dist/chatsdk-provider-BhlChLFd.d.ts.map +0 -1
- package/dist/common/utils.d.ts +0 -14
- package/dist/common/utils.d.ts.map +0 -1
- package/dist/common/utils.js +0 -26
- package/dist/common/utils.js.map +0 -1
- package/dist/components/info-card.d.ts +0 -23
- package/dist/components/info-card.d.ts.map +0 -1
- package/dist/components/info-card.js +0 -38
- package/dist/components/info-card.js.map +0 -1
- package/dist/config-BigIL6TQ.js +0 -29
- package/dist/config-BigIL6TQ.js.map +0 -1
- package/dist/config-CqihvSgz.d.ts.map +0 -1
- package/dist/config-D_jVTH_D.d.ts +0 -58
- package/dist/config-D_jVTH_D.d.ts.map +0 -1
- package/dist/context-aSaHw-ac.d.ts.map +0 -1
- package/dist/element-provider-C_nBsftD.d.ts.map +0 -1
- package/dist/features/chat/chat-card.d.ts +0 -7
- package/dist/features/chat/chat-card.d.ts.map +0 -1
- package/dist/features/chat/chat-card.js +0 -2
- package/dist/features/chat/chat-header/chat-header.d.ts +0 -12
- package/dist/features/chat/chat-header/chat-header.d.ts.map +0 -1
- package/dist/features/chat/chat-header/chat-header.js +0 -2
- package/dist/features/chat/chat-header/chat-menu.d.ts +0 -7
- package/dist/features/chat/chat-header/chat-menu.d.ts.map +0 -1
- package/dist/features/chat/chat-header/chat-menu.js.map +0 -1
- package/dist/features/chat/chat-history/chat-history-empty.d.ts +0 -7
- package/dist/features/chat/chat-history/chat-history-empty.d.ts.map +0 -1
- package/dist/features/chat/chat-history/chat-history-empty.js.map +0 -1
- package/dist/features/chat/chat-history/chat-history.d.ts +0 -7
- package/dist/features/chat/chat-history/chat-history.d.ts.map +0 -1
- package/dist/features/chat/chat-history/chat-history.js +0 -2
- package/dist/features/chat/chat-main/chat-main.d.ts +0 -10
- package/dist/features/chat/chat-main/chat-main.d.ts.map +0 -1
- package/dist/features/chat/chat-main/chat-main.js +0 -3
- package/dist/features/chat/chat-main/use-chat.d.ts +0 -23
- package/dist/features/chat/chat-main/use-chat.d.ts.map +0 -1
- package/dist/features/chat/chat-main/use-chat.js +0 -3
- package/dist/features/chat/chat-main/use-initial-messages.d.ts +0 -22
- package/dist/features/chat/chat-main/use-initial-messages.d.ts.map +0 -1
- package/dist/features/chat/chat-main/use-initial-messages.js +0 -2
- package/dist/features/chat/chat-prompt-input.d.ts +0 -24
- package/dist/features/chat/chat-prompt-input.d.ts.map +0 -1
- package/dist/features/chat/chat-prompt-input.js +0 -3
- package/dist/features/chat/chat.context.d.ts +0 -28
- package/dist/features/chat/chat.context.d.ts.map +0 -1
- package/dist/features/chat/chat.context.js +0 -10
- package/dist/features/chat/chat.context.js.map +0 -1
- package/dist/features/chat/queries/use-get-chat-query.d.ts +0 -13
- package/dist/features/chat/queries/use-get-chat-query.d.ts.map +0 -1
- package/dist/features/chat/queries/use-get-chat-query.js +0 -2
- package/dist/features/chat/queries/use-get-conversation-query.d.ts.map +0 -1
- package/dist/features/chat/queries/use-list-conversations-query.d.ts.map +0 -1
- package/dist/features/chat/store.d.ts +0 -15
- package/dist/features/chat/store.d.ts.map +0 -1
- package/dist/features/chat/store.js +0 -15
- package/dist/features/chat/store.js.map +0 -1
- package/dist/features/logger/logger.d.ts +0 -2
- package/dist/features/logger/logger.js +0 -15
- package/dist/features/logger/logger.js.map +0 -1
- package/dist/locale-W5Kyyi4X.d.ts.map +0 -1
- package/dist/logger-BvmhODdq.d.ts +0 -11
- package/dist/logger-BvmhODdq.d.ts.map +0 -1
- package/dist/store-CGX9oRlE.d.ts.map +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"use-visible-messages.js","names":[],"sources":["../../../../src/features/chat/provider/use-visible-messages.ts"],"sourcesContent":["import type { UIMessage } from \"ai\";\nimport { useMemo } from \"react\";\n\nimport { isMessagePartVisible } from \"../utils\";\nimport { useChat, useElementComponent } from \"./provider\";\n\nexport function messageHasVisibleContent(\n message: UIMessage,\n opts: { withTools?: boolean; withReasoning?: boolean },\n): boolean {\n return message.parts.some((part) => isMessagePartVisible(part, opts));\n}\n\n// Messages that actually render given the display flags. Shared so the message\n// list and the trailing activity indicator agree on the visible sequence.\nexport function useVisibleMessages() {\n const { messages } = useChat();\n const { withTools, withReasoning } = useElementComponent();\n\n return useMemo(\n () => ({\n visibleMessages: messages.filter((message) =>\n messageHasVisibleContent(message, { withTools, withReasoning }),\n ),\n }),\n [messages, withTools, withReasoning],\n );\n}\n"],"mappings":";;;;AAMA,SAAgB,yBACd,SACA,MACS;CACT,OAAO,QAAQ,MAAM,MAAM,SAAS,qBAAqB,MAAM,IAAI,CAAC;AACtE;AAIA,SAAgB,qBAAqB;CACnC,MAAM,EAAE,aAAa,QAAQ;CAC7B,MAAM,EAAE,WAAW,kBAAkB,oBAAoB;CAEzD,OAAO,eACE,EACL,iBAAiB,SAAS,QAAQ,YAChC,yBAAyB,SAAS;EAAE;EAAW;CAAc,CAAC,CAChE,EACF,IACA;EAAC;EAAU;EAAW;CAAa,CACrC;AACF"}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
//#region src/features/chat/queries/query-keys.d.ts
|
|
2
2
|
declare const chatQueryKeys: {
|
|
3
3
|
all: () => readonly ["chat"];
|
|
4
|
-
get: (
|
|
5
|
-
listConversations: (
|
|
6
|
-
conversation: (
|
|
4
|
+
get: (agentId?: string) => readonly ["chat", "get", string | undefined];
|
|
5
|
+
listConversations: (agentId?: string) => readonly ["chat", "get", string | undefined, "conversations"];
|
|
6
|
+
conversation: (agentId?: string, conversationId?: string | null) => readonly ["chat", "get", string | undefined, "conversation", string | null | undefined];
|
|
7
7
|
};
|
|
8
8
|
//#endregion
|
|
9
9
|
export { chatQueryKeys };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"query-keys.d.ts","names":[],"sources":["../../../../src/features/chat/queries/query-keys.ts"],"mappings":";cAAa,aAAA;;;;
|
|
1
|
+
{"version":3,"file":"query-keys.d.ts","names":[],"sources":["../../../../src/features/chat/queries/query-keys.ts"],"mappings":";cAAa,aAAA;;;;mCAKoB,cAAA;AAAA"}
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
//#region src/features/chat/queries/query-keys.ts
|
|
2
2
|
const chatQueryKeys = {
|
|
3
3
|
all: () => ["chat"],
|
|
4
|
-
get: (
|
|
4
|
+
get: (agentId) => [
|
|
5
5
|
...chatQueryKeys.all(),
|
|
6
6
|
"get",
|
|
7
|
-
|
|
7
|
+
agentId
|
|
8
8
|
],
|
|
9
|
-
listConversations: (
|
|
10
|
-
conversation: (
|
|
11
|
-
...chatQueryKeys.get(
|
|
9
|
+
listConversations: (agentId) => [...chatQueryKeys.get(agentId), "conversations"],
|
|
10
|
+
conversation: (agentId, conversationId) => [
|
|
11
|
+
...chatQueryKeys.get(agentId),
|
|
12
12
|
"conversation",
|
|
13
13
|
conversationId
|
|
14
14
|
]
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"query-keys.js","names":[],"sources":["../../../../src/features/chat/queries/query-keys.ts"],"sourcesContent":["export const chatQueryKeys = {\n all: () => [\"chat\"] as const,\n get: (
|
|
1
|
+
{"version":3,"file":"query-keys.js","names":[],"sources":["../../../../src/features/chat/queries/query-keys.ts"],"sourcesContent":["export const chatQueryKeys = {\n all: () => [\"chat\"] as const,\n get: (agentId?: string) => [...chatQueryKeys.all(), \"get\", agentId] as const,\n listConversations: (agentId?: string) =>\n [...chatQueryKeys.get(agentId), \"conversations\"] as const,\n conversation: (agentId?: string, conversationId?: string | null) =>\n [...chatQueryKeys.get(agentId), \"conversation\", conversationId] as const,\n};\n"],"mappings":";AAAA,MAAa,gBAAgB;CAC3B,WAAW,CAAC,MAAM;CAClB,MAAM,YAAqB;EAAC,GAAG,cAAc,IAAI;EAAG;EAAO;CAAO;CAClE,oBAAoB,YAClB,CAAC,GAAG,cAAc,IAAI,OAAO,GAAG,eAAe;CACjD,eAAe,SAAkB,mBAC/B;EAAC,GAAG,cAAc,IAAI,OAAO;EAAG;EAAgB;CAAc;AAClE"}
|
|
@@ -1,30 +1,29 @@
|
|
|
1
|
-
import * as _tanstack_react_query0 from "@tanstack/react-query";
|
|
2
|
-
|
|
3
1
|
//#region src/features/chat/queries/use-create-conversation-mutation.d.ts
|
|
4
2
|
interface UseCreateConversationMutationProps {
|
|
5
|
-
|
|
3
|
+
agentId?: string;
|
|
6
4
|
}
|
|
7
5
|
declare function useCreateConversationMutation({
|
|
8
|
-
|
|
9
|
-
}: UseCreateConversationMutationProps):
|
|
6
|
+
agentId
|
|
7
|
+
}: UseCreateConversationMutationProps): import("@tanstack/react-query").UseMutationResult<{
|
|
10
8
|
actor: {
|
|
11
9
|
id: string;
|
|
12
10
|
type: "default" | "tenant";
|
|
13
11
|
};
|
|
14
12
|
usage: {
|
|
15
|
-
|
|
13
|
+
name: string;
|
|
14
|
+
consumed: number;
|
|
15
|
+
count: number;
|
|
16
16
|
};
|
|
17
17
|
status: "active" | "archived";
|
|
18
18
|
summary?: string;
|
|
19
19
|
title?: string;
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
}>;
|
|
20
|
+
toolTitles?: {
|
|
21
|
+
[key: string]: string;
|
|
22
|
+
};
|
|
23
|
+
messages: Array<import("@chatsdk-dev/api-client").ConversationMessage>;
|
|
24
|
+
feedback: {
|
|
25
|
+
[key: string]: "positive" | "negative";
|
|
26
|
+
};
|
|
28
27
|
_id: string;
|
|
29
28
|
_creationTime: number;
|
|
30
29
|
}, Error, void, unknown>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-create-conversation-mutation.d.ts","names":[],"sources":["../../../../src/features/chat/queries/use-create-conversation-mutation.ts"],"mappings":"
|
|
1
|
+
{"version":3,"file":"use-create-conversation-mutation.d.ts","names":[],"sources":["../../../../src/features/chat/queries/use-create-conversation-mutation.ts"],"mappings":";UAKU,kCAAA;EACR,OAAO;AAAA;AAAA,iBAGO,6BAAA;EACd;AAAA,GACC,kCAAA,mCAAkC,iBAAA"}
|
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { _ as useApiClient, l as useElementConfig } from "../../../provider-Cps0PPXa.js";
|
|
2
2
|
import { useMutation } from "@tanstack/react-query";
|
|
3
3
|
//#region src/features/chat/queries/use-create-conversation-mutation.ts
|
|
4
|
-
function useCreateConversationMutation({
|
|
4
|
+
function useCreateConversationMutation({ agentId }) {
|
|
5
5
|
const client = useApiClient();
|
|
6
6
|
const { context } = useElementConfig();
|
|
7
7
|
return useMutation({ mutationFn: async () => {
|
|
8
|
-
const { data, error } = await client.
|
|
9
|
-
path: {
|
|
8
|
+
const { data, error } = await client.agents.conversations.create({
|
|
9
|
+
path: { agentId },
|
|
10
10
|
body: { actorId: context?.actor?.id ?? "" }
|
|
11
11
|
});
|
|
12
12
|
if (error) throw new Error("error" in error ? error.error : "Failed to create conversation");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-create-conversation-mutation.js","names":[],"sources":["../../../../src/features/chat/queries/use-create-conversation-mutation.ts"],"sourcesContent":["import { useMutation } from \"@tanstack/react-query\";\n\nimport { useApiClient } from \"../../data-fetching/use-api-client\";\nimport { useElementConfig } from \"../
|
|
1
|
+
{"version":3,"file":"use-create-conversation-mutation.js","names":[],"sources":["../../../../src/features/chat/queries/use-create-conversation-mutation.ts"],"sourcesContent":["import { useMutation } from \"@tanstack/react-query\";\n\nimport { useApiClient } from \"../../data-fetching/use-api-client\";\nimport { useElementConfig } from \"../provider/provider\";\n\ninterface UseCreateConversationMutationProps {\n agentId?: string;\n}\n\nexport function useCreateConversationMutation({\n agentId,\n}: UseCreateConversationMutationProps) {\n const client = useApiClient();\n const { context } = useElementConfig();\n\n return useMutation({\n mutationFn: async () => {\n const { data, error } = await client.agents.conversations.create({\n path: { agentId: agentId! },\n body: { actorId: context?.actor?.id ?? \"\" },\n });\n\n if (error) {\n throw new Error(\n \"error\" in error ? error.error : \"Failed to create conversation\",\n );\n }\n\n return data;\n },\n });\n}\n"],"mappings":";;;AASA,SAAgB,8BAA8B,EAC5C,WACqC;CACrC,MAAM,SAAS,aAAa;CAC5B,MAAM,EAAE,YAAY,iBAAiB;CAErC,OAAO,YAAY,EACjB,YAAY,YAAY;EACtB,MAAM,EAAE,MAAM,UAAU,MAAM,OAAO,OAAO,cAAc,OAAO;GAC/D,MAAM,EAAW,QAAS;GAC1B,MAAM,EAAE,SAAS,SAAS,OAAO,MAAM,GAAG;EAC5C,CAAC;EAED,IAAI,OACF,MAAM,IAAI,MACR,WAAW,QAAQ,MAAM,QAAQ,+BACnC;EAGF,OAAO;CACT,EACF,CAAC;AACH"}
|
|
@@ -1,72 +1,2 @@
|
|
|
1
|
-
import
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
//#region src/features/chat/queries/use-get-conversation-query.d.ts
|
|
5
|
-
interface GetConversationQueryConfigParams {
|
|
6
|
-
chatId: string;
|
|
7
|
-
conversationId?: string;
|
|
8
|
-
actorId: string;
|
|
9
|
-
client: ChatSDK;
|
|
10
|
-
}
|
|
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<{
|
|
19
|
-
actor: {
|
|
20
|
-
id: string;
|
|
21
|
-
type: "default" | "tenant";
|
|
22
|
-
};
|
|
23
|
-
usage: {
|
|
24
|
-
messageCredits: number;
|
|
25
|
-
};
|
|
26
|
-
status: "active" | "archived";
|
|
27
|
-
summary?: string;
|
|
28
|
-
title?: string;
|
|
29
|
-
messages: Array<{
|
|
30
|
-
id: string;
|
|
31
|
-
role: "user" | "assistant" | "system";
|
|
32
|
-
parts: Array<{
|
|
33
|
-
type: "text";
|
|
34
|
-
text: string;
|
|
35
|
-
}>;
|
|
36
|
-
}>;
|
|
37
|
-
_id: string;
|
|
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;
|
|
69
|
-
}, Error>;
|
|
70
|
-
//#endregion
|
|
71
|
-
export { getConversationQueryConfig, useGetConversationQuery };
|
|
72
|
-
//# sourceMappingURL=use-get-conversation-query.d.ts.map
|
|
1
|
+
import { n as useGetConversationQuery, t as getConversationQueryConfig } from "../../../use-get-conversation-query-D5bRlewH.js";
|
|
2
|
+
export { getConversationQueryConfig, useGetConversationQuery };
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { g as useGetConversationQuery, h as getConversationQueryConfig } from "../../../provider-Cps0PPXa.js";
|
|
2
2
|
export { getConversationQueryConfig, useGetConversationQuery };
|
|
@@ -1,33 +1,2 @@
|
|
|
1
|
-
import
|
|
2
|
-
|
|
3
|
-
//#region src/features/chat/queries/use-list-conversations-query.d.ts
|
|
4
|
-
interface UseListConversationsQueryProps {
|
|
5
|
-
chatId: string;
|
|
6
|
-
}
|
|
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;
|
|
26
|
-
}>;
|
|
27
|
-
}>;
|
|
28
|
-
_id: string;
|
|
29
|
-
_creationTime: number;
|
|
30
|
-
}[], Error>;
|
|
31
|
-
//#endregion
|
|
32
|
-
export { useListConversationsQuery };
|
|
33
|
-
//# sourceMappingURL=use-list-conversations-query.d.ts.map
|
|
1
|
+
import { t as useListConversationsQuery } from "../../../use-list-conversations-query-Ny-nP5cZ.js";
|
|
2
|
+
export { useListConversationsQuery };
|
|
@@ -1,2 +1,24 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { chatQueryKeys } from "./query-keys.js";
|
|
2
|
+
import { _ as useApiClient, l as useElementConfig } from "../../../provider-Cps0PPXa.js";
|
|
3
|
+
import { useQuery } from "@tanstack/react-query";
|
|
4
|
+
//#region src/features/chat/queries/use-list-conversations-query.ts
|
|
5
|
+
function useListConversationsQuery({ agentId }) {
|
|
6
|
+
const client = useApiClient();
|
|
7
|
+
const { context } = useElementConfig();
|
|
8
|
+
return useQuery({
|
|
9
|
+
queryKey: chatQueryKeys.listConversations(agentId),
|
|
10
|
+
queryFn: async () => {
|
|
11
|
+
const { data, error } = await client.agents.conversations.list({
|
|
12
|
+
path: { agentId },
|
|
13
|
+
query: { actorId: context?.actor?.id ?? "" }
|
|
14
|
+
});
|
|
15
|
+
if (error) throw new Error("error" in error ? error.error : "Failed to fetch conversations");
|
|
16
|
+
return data.conversations;
|
|
17
|
+
},
|
|
18
|
+
enabled: !!agentId
|
|
19
|
+
});
|
|
20
|
+
}
|
|
21
|
+
//#endregion
|
|
2
22
|
export { useListConversationsQuery };
|
|
23
|
+
|
|
24
|
+
//# sourceMappingURL=use-list-conversations-query.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"use-list-conversations-query.js","names":[],"sources":["../../../../src/features/chat/queries/use-list-conversations-query.ts"],"sourcesContent":["import { useQuery } from \"@tanstack/react-query\";\n\nimport { useApiClient } from \"../../data-fetching/use-api-client\";\nimport { useElementConfig } from \"../provider/provider\";\nimport { chatQueryKeys } from \"./query-keys\";\n\ninterface UseListConversationsQueryProps {\n agentId: string;\n}\n\nexport function useListConversationsQuery({\n agentId,\n}: UseListConversationsQueryProps) {\n const client = useApiClient();\n const { context } = useElementConfig();\n\n return useQuery({\n queryKey: chatQueryKeys.listConversations(agentId),\n queryFn: async () => {\n const { data, error } = await client.agents.conversations.list({\n path: { agentId },\n query: { actorId: context?.actor?.id ?? \"\" },\n });\n\n if (error) {\n throw new Error(\n \"error\" in error ? error.error : \"Failed to fetch conversations\",\n );\n }\n\n return data.conversations;\n },\n enabled: !!agentId,\n });\n}\n"],"mappings":";;;;AAUA,SAAgB,0BAA0B,EACxC,WACiC;CACjC,MAAM,SAAS,aAAa;CAC5B,MAAM,EAAE,YAAY,iBAAiB;CAErC,OAAO,SAAS;EACd,UAAU,cAAc,kBAAkB,OAAO;EACjD,SAAS,YAAY;GACnB,MAAM,EAAE,MAAM,UAAU,MAAM,OAAO,OAAO,cAAc,KAAK;IAC7D,MAAM,EAAE,QAAQ;IAChB,OAAO,EAAE,SAAS,SAAS,OAAO,MAAM,GAAG;GAC7C,CAAC;GAED,IAAI,OACF,MAAM,IAAI,MACR,WAAW,QAAQ,MAAM,QAAQ,+BACnC;GAGF,OAAO,KAAK;EACd;EACA,SAAS,CAAC,CAAC;CACb,CAAC;AACH"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { chatQueryKeys } from "./query-keys.js";
|
|
2
|
+
import { AgentsConversationsGetResponse } from "@chatsdk-dev/api-client";
|
|
3
|
+
|
|
4
|
+
//#region src/features/chat/queries/use-record-feedback-mutation.d.ts
|
|
5
|
+
declare const recordFeedbackMutationKey: string[];
|
|
6
|
+
interface UseRecordFeedbackMutationProps {
|
|
7
|
+
agentId?: string;
|
|
8
|
+
}
|
|
9
|
+
interface RecordFeedbackParams {
|
|
10
|
+
conversationId: string;
|
|
11
|
+
messageId: string;
|
|
12
|
+
sentiment: "positive" | "negative";
|
|
13
|
+
reason?: string;
|
|
14
|
+
}
|
|
15
|
+
interface FeedbackContext {
|
|
16
|
+
queryKey: ReturnType<typeof chatQueryKeys.conversation>;
|
|
17
|
+
previous: AgentsConversationsGetResponse | undefined;
|
|
18
|
+
}
|
|
19
|
+
declare function useRecordFeedbackMutation({
|
|
20
|
+
agentId
|
|
21
|
+
}: UseRecordFeedbackMutationProps): import("@tanstack/react-query").UseMutationResult<{
|
|
22
|
+
sentiment: "positive" | "negative" | null;
|
|
23
|
+
}, Error, RecordFeedbackParams, FeedbackContext>;
|
|
24
|
+
//#endregion
|
|
25
|
+
export { recordFeedbackMutationKey, useRecordFeedbackMutation };
|
|
26
|
+
//# sourceMappingURL=use-record-feedback-mutation.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"use-record-feedback-mutation.d.ts","names":[],"sources":["../../../../src/features/chat/queries/use-record-feedback-mutation.ts"],"mappings":";;;;cASa,yBAAA;AAAA,UAEH,8BAAA;EACR,OAAO;AAAA;AAAA,UAGC,oBAAA;EACR,cAAA;EACA,SAAA;EACA,SAAA;EACA,MAAA;AAAA;AAAA,UAGQ,eAAA;EACR,QAAA,EAAU,UAAA,QAAkB,aAAA,CAAc,YAAA;EAC1C,QAAA,EAAU,8BAAA;AAAA;AAAA,iBAGI,yBAAA;EACd;AAAA,GACC,8BAAA,mCAA8B,iBAAA"}
|
|
@@ -1,7 +1,12 @@
|
|
|
1
|
+
import { ConversationMessage } from "@chatsdk-dev/api-client";
|
|
1
2
|
import { UIMessage } from "ai";
|
|
2
3
|
|
|
3
4
|
//#region src/features/chat/utils.d.ts
|
|
4
|
-
declare function getInitialMessagesFromStrings(messages: string[]):
|
|
5
|
+
declare function getInitialMessagesFromStrings(messages: string[]): ConversationMessage[];
|
|
6
|
+
declare function isMessagePartVisible(part: UIMessage["parts"][number], opts: {
|
|
7
|
+
withTools?: boolean;
|
|
8
|
+
withReasoning?: boolean;
|
|
9
|
+
}): boolean;
|
|
5
10
|
//#endregion
|
|
6
|
-
export { getInitialMessagesFromStrings };
|
|
11
|
+
export { getInitialMessagesFromStrings, isMessagePartVisible };
|
|
7
12
|
//# sourceMappingURL=utils.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","names":[],"sources":["../../../src/features/chat/utils.ts"],"mappings":"
|
|
1
|
+
{"version":3,"file":"utils.d.ts","names":[],"sources":["../../../src/features/chat/utils.ts"],"mappings":";;;;iBAIgB,6BAAA,CACd,QAAA,aACC,mBAAmB;AAAA,iBAUN,oBAAA,CACd,IAAA,EAAM,SAAS,mBACf,IAAA;EAAQ,SAAA;EAAqB,aAAA;AAAA"}
|
|
@@ -9,7 +9,18 @@ function getInitialMessagesFromStrings(messages) {
|
|
|
9
9
|
}]
|
|
10
10
|
}));
|
|
11
11
|
}
|
|
12
|
+
function isMessagePartVisible(part, opts) {
|
|
13
|
+
const type = part.type;
|
|
14
|
+
if (type === "text") return (part.text?.length ?? 0) > 0;
|
|
15
|
+
if (type === "reasoning") return Boolean(opts.withReasoning);
|
|
16
|
+
if (type === "source-url") return true;
|
|
17
|
+
if (type === "dynamic-tool" || type.startsWith("tool-")) {
|
|
18
|
+
const { state, approval } = part;
|
|
19
|
+
return Boolean(opts.withTools) || state === "approval-requested" || Boolean(approval?.id) && state !== "output-error";
|
|
20
|
+
}
|
|
21
|
+
return false;
|
|
22
|
+
}
|
|
12
23
|
//#endregion
|
|
13
|
-
export { getInitialMessagesFromStrings };
|
|
24
|
+
export { getInitialMessagesFromStrings, isMessagePartVisible };
|
|
14
25
|
|
|
15
26
|
//# sourceMappingURL=utils.js.map
|
|
@@ -1 +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[]):
|
|
1
|
+
{"version":3,"file":"utils.js","names":[],"sources":["../../../src/features/chat/utils.ts"],"sourcesContent":["import type { UIMessage } from \"ai\";\n\nimport { ConversationMessage } from \"@chatsdk-dev/api-client\";\n\nexport function getInitialMessagesFromStrings(\n messages: string[],\n): ConversationMessage[] {\n return messages.map((message) => ({\n id: crypto.randomUUID(),\n role: \"assistant\",\n parts: [{ type: \"text\" as const, text: message }],\n }));\n}\n\n// Whether a part renders anything given the display flags: tool/reasoning are\n// hidden unless enabled, but an approval (pending or answered) always shows.\nexport function isMessagePartVisible(\n part: UIMessage[\"parts\"][number],\n opts: { withTools?: boolean; withReasoning?: boolean },\n): boolean {\n const type = part.type as string;\n if (type === \"text\")\n return ((part as { text?: string }).text?.length ?? 0) > 0;\n if (type === \"reasoning\") return Boolean(opts.withReasoning);\n if (type === \"source-url\") return true;\n if (type === \"dynamic-tool\" || type.startsWith(\"tool-\")) {\n const { state, approval } = part as {\n state?: string;\n approval?: { id?: string };\n };\n return (\n Boolean(opts.withTools) ||\n state === \"approval-requested\" ||\n // Answered approval: Message.Approval renders it as a resolved note.\n (Boolean(approval?.id) && state !== \"output-error\")\n );\n }\n return false;\n}\n"],"mappings":";AAIA,SAAgB,8BACd,UACuB;CACvB,OAAO,SAAS,KAAK,aAAa;EAChC,IAAI,OAAO,WAAW;EACtB,MAAM;EACN,OAAO,CAAC;GAAE,MAAM;GAAiB,MAAM;EAAQ,CAAC;CAClD,EAAE;AACJ;AAIA,SAAgB,qBACd,MACA,MACS;CACT,MAAM,OAAO,KAAK;CAClB,IAAI,SAAS,QACX,QAAS,KAA2B,MAAM,UAAU,KAAK;CAC3D,IAAI,SAAS,aAAa,OAAO,QAAQ,KAAK,aAAa;CAC3D,IAAI,SAAS,cAAc,OAAO;CAClC,IAAI,SAAS,kBAAkB,KAAK,WAAW,OAAO,GAAG;EACvD,MAAM,EAAE,OAAO,aAAa;EAI5B,OACE,QAAQ,KAAK,SAAS,KACtB,UAAU,wBAET,QAAQ,UAAU,EAAE,KAAK,UAAU;CAExC;CACA,OAAO;AACT"}
|
|
@@ -1,7 +1,5 @@
|
|
|
1
|
-
import * as _chatsdk_dev_api_client0 from "@chatsdk-dev/api-client";
|
|
2
|
-
|
|
3
1
|
//#region src/features/data-fetching/use-api-client.d.ts
|
|
4
|
-
declare function useApiClient():
|
|
2
|
+
declare function useApiClient(): import("@chatsdk-dev/api-client").ChatSDK;
|
|
5
3
|
//#endregion
|
|
6
4
|
export { useApiClient };
|
|
7
5
|
//# sourceMappingURL=use-api-client.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-api-client.d.ts","names":[],"sources":["../../../src/features/data-fetching/use-api-client.ts"],"mappings":"
|
|
1
|
+
{"version":3,"file":"use-api-client.d.ts","names":[],"sources":["../../../src/features/data-fetching/use-api-client.ts"],"mappings":";iBAIgB,YAAA,sCAAY,OAAA"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { _ as useApiClient } from "../../provider-Cps0PPXa.js";
|
|
2
2
|
export { useApiClient };
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { t as ChatSDKProvider } from "../../chatsdk-provider-
|
|
1
|
+
import { t as ChatSDKProvider } from "../../chatsdk-provider-t1GEgRPY.js";
|
|
2
2
|
export { ChatSDKProvider };
|
|
@@ -2,15 +2,15 @@ import { useChatSDKStore } from "./store.js";
|
|
|
2
2
|
import { useLayoutEffect, useRef } from "react";
|
|
3
3
|
//#region src/features/element/chatsdk-provider.tsx
|
|
4
4
|
function ChatSDKProvider({ config = {}, children }) {
|
|
5
|
-
const initialized = useRef(
|
|
6
|
-
const isFirstRender = useRef(
|
|
7
|
-
if (
|
|
5
|
+
const initialized = useRef(null);
|
|
6
|
+
const isFirstRender = useRef(null);
|
|
7
|
+
if (initialized.current == null) {
|
|
8
8
|
useChatSDKStore.getState().setConfig(config);
|
|
9
9
|
initialized.current = true;
|
|
10
10
|
}
|
|
11
11
|
useLayoutEffect(() => {
|
|
12
|
-
if (isFirstRender.current) {
|
|
13
|
-
isFirstRender.current =
|
|
12
|
+
if (isFirstRender.current == null) {
|
|
13
|
+
isFirstRender.current = true;
|
|
14
14
|
return;
|
|
15
15
|
}
|
|
16
16
|
useChatSDKStore.getState().setConfig(config);
|
|
@@ -1 +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(
|
|
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<boolean | null>(null);\n const isFirstRender = useRef<boolean | null>(null);\n\n // Set config immediately on first render, before any child components mount\n if (initialized.current == null) {\n useChatSDKStore.getState().setConfig(config);\n initialized.current = true;\n }\n\n useLayoutEffect(() => {\n if (isFirstRender.current == null) {\n isFirstRender.current = true;\n return;\n }\n\n useChatSDKStore.getState().setConfig(config);\n }, [config]);\n\n return children;\n}\n"],"mappings":";;;AAUA,SAAgB,gBAAgB,EAC9B,SAAS,CAAC,GACV,YACuB;CACvB,MAAM,cAAc,OAAuB,IAAI;CAC/C,MAAM,gBAAgB,OAAuB,IAAI;CAGjD,IAAI,YAAY,WAAW,MAAM;EAC/B,gBAAgB,SAAS,CAAC,CAAC,UAAU,MAAM;EAC3C,YAAY,UAAU;CACxB;CAEA,sBAAsB;EACpB,IAAI,cAAc,WAAW,MAAM;GACjC,cAAc,UAAU;GACxB;EACF;EAEA,gBAAgB,SAAS,CAAC,CAAC,UAAU,MAAM;CAC7C,GAAG,CAAC,MAAM,CAAC;CAEX,OAAO;AACT"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { n as ElementProviderProps, r as createElementContext, t as ElementContextType } from "../../element-provider-
|
|
1
|
+
import { n as ElementProviderProps, r as createElementContext, t as ElementContextType } from "../../element-provider-C95jVJV9.js";
|
|
2
2
|
export { ElementContextType, ElementProviderProps, createElementContext };
|
|
@@ -1,10 +1,11 @@
|
|
|
1
|
-
import { r as languages } from "../../config-
|
|
1
|
+
import { r as languages } from "../../config-Wk7C7AJs.js";
|
|
2
2
|
import { i18n } from "../../i18n/i18next.js";
|
|
3
3
|
import { getLocaleChainFromLocale } from "../../i18n/utils.js";
|
|
4
|
-
import { createContext, use } from "react";
|
|
5
|
-
import { jsx } from "react/jsx-runtime";
|
|
4
|
+
import { createContext, use, useState } from "react";
|
|
6
5
|
import { QueryClient, QueryClientProvider } from "@tanstack/react-query";
|
|
7
6
|
import { I18nextProvider } from "react-i18next";
|
|
7
|
+
import { PortalContainerProvider } from "@chatsdk-dev/ui/lib/portal-container";
|
|
8
|
+
import { jsx } from "react/jsx-runtime";
|
|
8
9
|
//#region src/features/element/element-provider.tsx
|
|
9
10
|
const queryClient = new QueryClient();
|
|
10
11
|
function ElementTranslationsProvider({ localeConfig, translationsConfig, children }) {
|
|
@@ -21,7 +22,6 @@ function ElementTranslationsProvider({ localeConfig, translationsConfig, childre
|
|
|
21
22
|
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
23
|
return /* @__PURE__ */ jsx(I18nextProvider, {
|
|
23
24
|
i18n: _i18n,
|
|
24
|
-
defaultNS: "elements",
|
|
25
25
|
children
|
|
26
26
|
});
|
|
27
27
|
}
|
|
@@ -48,6 +48,7 @@ function createElementContext({ name }) {
|
|
|
48
48
|
return v.callbacks;
|
|
49
49
|
}
|
|
50
50
|
function TypedElementProvider({ config = {}, component, callbacks, children }) {
|
|
51
|
+
const [portalContainer, setPortalContainer] = useState(null);
|
|
51
52
|
return /* @__PURE__ */ jsx(ElementContext.Provider, {
|
|
52
53
|
value: {
|
|
53
54
|
config,
|
|
@@ -59,10 +60,13 @@ function createElementContext({ name }) {
|
|
|
59
60
|
children: /* @__PURE__ */ jsx(ElementTranslationsProvider, {
|
|
60
61
|
localeConfig: config.locale,
|
|
61
62
|
translationsConfig: config.translations,
|
|
62
|
-
children: /* @__PURE__ */ jsx(
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
63
|
+
children: /* @__PURE__ */ jsx(PortalContainerProvider, {
|
|
64
|
+
value: portalContainer,
|
|
65
|
+
children: /* @__PURE__ */ jsx("div", {
|
|
66
|
+
ref: setPortalContainer,
|
|
67
|
+
"data-chatsdk": true,
|
|
68
|
+
children
|
|
69
|
+
})
|
|
66
70
|
})
|
|
67
71
|
})
|
|
68
72
|
})
|
|
@@ -1 +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
|
|
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, useState } from \"react\";\nimport { I18nextProvider } from \"react-i18next\";\n\nimport { PortalContainerProvider } from \"@chatsdk-dev/ui/lib/portal-container\";\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 <I18nextProvider i18n={_i18n}>{children}</I18nextProvider>;\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 const [portalContainer, setPortalContainer] = useState<HTMLElement | null>(\n null,\n );\n\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 <PortalContainerProvider value={portalContainer}>\n <div ref={setPortalContainer} data-chatsdk>\n {children}\n </div>\n </PortalContainerProvider>\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":";;;;;;;;;AAaA,MAAM,cAAc,IAAI,YAAY;AAQpC,SAAS,4BAA4B,EACnC,cACA,oBACA,YAC4B;CAC5B,IAAI,WAAW,cAAc;CAC7B,IAAI,YAAY,CAAC,UAAU,SAAS,QAAQ,GAAG;EAE7C,MAAM,CAAC,gBAAgB,yBAAyB,QAAQ;EACxD,IAAI,gBAAgB,UAAU,SAAS,YAAY,GACjD,WAAW;CAEf;CAGA,IAAI,QAAQ;CACZ,IACE,aACC,KAAK,aAAa,YACjB,KAAK,QAAQ,cAAc,cAAc,cAC3C,OAAO,KAAK,KAAK,SAAS,cAAc,IAAI,CAAC,CAAC,SAAS,QAAQ,GAE/D,QAAQ,KAAK,cAAc;EACzB,KAAK;EACL,WAAW,cAAc;CAC3B,CAAC;CAIH,IAAI,oBACF,KAAK,MAAM,CAAC,WAAW,iBAAiB,OAAO,QAC7C,kBACF,GACE,KAAK,MAAM,CAAC,UAAU,aAAa,OAAO,QAAQ,YAAY,GAC5D,MAAM,kBAAkB,UAAU,WAAW,UAAU,MAAM,IAAI;CAKvE,OAAO,oBAAC,iBAAD;EAAiB,MAAM;EAAQ;CAA0B,CAAA;AAClE;AAmBA,SAAgB,qBAA2B,EACzC,QAC6B;CAC7B,MAAM,iBAAiB,cAA+C,IAAI;CAE1E,SAAS,aAAa;EACpB,MAAM,IAAI,IAAI,cAAc;EAC5B,IAAI,CAAC,GAAG,MAAM,IAAI,MAAM,yCAAyC;EACjE,OAAO;CACT;CACA,SAAS,mBAAmB;EAC1B,MAAM,IAAI,IAAI,cAAc;EAC5B,IAAI,CAAC,GAAG,MAAM,IAAI,MAAM,yCAAyC;EACjE,OAAO,EAAE;CACX;CACA,SAAS,sBAAsB;EAC7B,MAAM,IAAI,IAAI,cAAc;EAC5B,IAAI,CAAC,GAAG,MAAM,IAAI,MAAM,yCAAyC;EACjE,OAAO,EAAE;CACX;CACA,SAAS,sBAAsB;EAC7B,MAAM,IAAI,IAAI,cAAc;EAC5B,IAAI,CAAC,GAAG,MAAM,IAAI,MAAM,yCAAyC;EACjE,OAAO,EAAE;CACX;CAEA,SAAS,qBAAqB,EAC5B,SAAS,CAAC,GACV,WACA,WACA,YAC6B;EAC7B,MAAM,CAAC,iBAAiB,sBAAsB,SAC5C,IACF;EAEA,OACE,oBAAC,eAAe,UAAhB;GAAyB,OAAO;IAAE;IAAQ;IAAW;GAAU;aAC7D,oBAAC,qBAAD;IAAqB,QAAQ;cAC3B,oBAAC,6BAAD;KACE,cAAc,OAAO;KACrB,oBAAoB,OAAO;eAE3B,oBAAC,yBAAD;MAAyB,OAAO;gBAC9B,oBAAC,OAAD;OAAK,KAAK;OAAoB,gBAAA;OAC3B;MACE,CAAA;KACkB,CAAA;IACE,CAAA;GACV,CAAA;EACE,CAAA;CAE7B;CACA,qBAAqB,cAAc,mBAAmB,KAAK;CAE3D,OAAO;EACL;EACA;EACA;EACA;EACA,iBAAiB;CACnB;AACF"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { n as createChatSDKStore, r as useChatSDKStore, t as ChatSDKStore } from "../../store-
|
|
1
|
+
import { n as createChatSDKStore, r as useChatSDKStore, t as ChatSDKStore } from "../../store-CkswgmIQ.js";
|
|
2
2
|
export { ChatSDKStore, createChatSDKStore, useChatSDKStore };
|
|
@@ -1 +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,
|
|
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,WAAW,EAAE,EAAE;CAC9C,KAAK;EACH,SAAS;EACT,SAAS;EACT,aAAa;CACf;CACA,QAAQ,EAAE,UAAU,KAAK;AAC3B;AAGA,MAAa,sBACX,uBACG;CACH,MAAM,eAAe;EAAE,GAAG;EAAqB,GAAG;CAAmB;CAErE,OAAO,OAAqB,CAAC,CAC3B,SACG,SAAS;EACR,GAAG;EACH,aAAa,YACX,KAAK,WAAW;GACd,GAAG;GACH,SAAS,UAAU;IAAE,GAAG,MAAM;IAAS,GAAG;GAAQ,CAAC;EACrD,EAAE;EACJ,YAAY,WAAW,KAAK,WAAW;GAAE,GAAG;GAAO;EAAO,EAAE;EAC5D,WAAW,UACT,KAAK,WAAW;GAAE,GAAG;GAAO,OAAO;IAAE,GAAG,MAAM;IAAO,GAAG;GAAM;EAAE,EAAE;EACpE,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;IAAQ,IACzC,KAAA;GACR;EACF,EAAE;EACJ,kBAAkB,cAAc,QAAQ,SACtC,KAAK,WAAW;GACd,GAAG;GACH,cAAc,QACV;IAAE,GAAG,MAAM;IAAc,GAAG;GAAa,IACzC;EACN,EAAE;EACJ,YAAY,WAAW;GACrB,KAAK,WAAW;IAAE,GAAG;IAAO;GAAO,EAAE;EACvC;EACA,YAAY,WAAW,QAAQ,SAAS;GACtC,KAAK,UAAU;IACb,MAAM,SAAS,QAAQ,QAAQ;IAC/B,OAAO;KACL,GAAG;KACH,GAAG;KACH,KAAK;MAAE,GAAG,OAAO;MAAK,GAAG,UAAU;KAAI;KACvC,SAAS,UAAU;MACjB,GAAG,OAAO;MACV,GAAG,UAAU;KACf,CAAC;KACD,OAAO;MAAE,GAAG,OAAO;MAAO,GAAG,UAAU;KAAM;KAC7C,cAAc;MACZ,GAAG,OAAO;MACV,GAAG,UAAU;KACf;IACF;GACF,CAAC;EACH;EACA,QAAQ,WAAmC;GACzC,IAAI;IAAE,GAAG;IAAc,OAAO,CAAC;IAAG,GAAG;GAAO,CAAC;EAC/C;EACA,aAAa,YAAY,KAAK,WAAW;GAAE,GAAG;GAAO;EAAQ,EAAE;CACjE,IACA;EACE,aAAa,UAAU;GACrB,OAAO,EAAE,SAAS,EAAE,OAAO,MAAM,SAAS,MAAM,EAAE;EACpD;EACA,MAAM,uBAAuB;EAC7B,SAAS,wBAAwB,YAAY;CAC/C,CACF,CACF;AACF;AAGA,MAAa,kBAAkB,mBAAmB"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { t as APIOptions } from "../../../api-
|
|
1
|
+
import { t as APIOptions } from "../../../api-BP4g92-0.js";
|
|
2
2
|
export { APIOptions };
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { t as Callbacks } from "../../../callbacks-
|
|
1
|
+
import { t as Callbacks } from "../../../callbacks-CQelTSwD.js";
|
|
2
2
|
export { Callbacks };
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { n as OptionsConfig, r as RootConfig, t as ElementConfig } from "../../../config-
|
|
1
|
+
import { n as OptionsConfig, r as RootConfig, t as ElementConfig } from "../../../config-BGIY5Hkg.js";
|
|
2
2
|
export { ElementConfig, OptionsConfig, RootConfig };
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { t as Context } from "../../../context-
|
|
1
|
+
import { t as Context } from "../../../context-D4dOffYT.js";
|
|
2
2
|
export { Context };
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { n as LocaleConfig, t as Formality } from "../../../locale-
|
|
1
|
+
import { n as LocaleConfig, t as Formality } from "../../../locale-v_zPGRhE.js";
|
|
2
2
|
export { Formality, LocaleConfig };
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { i as ThemeConfig, n as FontConfig, r as RawFontProps, t as ColorScheme } from "../../../theme-
|
|
1
|
+
import { i as ThemeConfig, n as FontConfig, r as RawFontProps, t as ColorScheme } from "../../../theme-K7rbPHc1.js";
|
|
2
2
|
export { ColorScheme, FontConfig, RawFontProps, ThemeConfig };
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { i as TranslationsConfig } from "../../../config-
|
|
1
|
+
import { i as TranslationsConfig } from "../../../config-BGIY5Hkg.js";
|
|
2
2
|
export { TranslationsConfig };
|