@inkeep/agents-ui 0.0.0-dev-20260508233535 → 0.0.0-dev-20260509021601

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (35) hide show
  1. package/dist/index.cjs +1 -1
  2. package/dist/index.js +161 -158
  3. package/dist/primitives/components/embedded-chat/use-chat-action.cjs +1 -1
  4. package/dist/primitives/components/embedded-chat/use-chat-action.js +16 -14
  5. package/dist/primitives/components/embedded-chat/use-inkeep-chat.cjs +2 -2
  6. package/dist/primitives/components/embedded-chat/use-inkeep-chat.js +230 -219
  7. package/dist/primitives/components/embedded-chat.cjs +3 -3
  8. package/dist/primitives/components/embedded-chat.js +96 -93
  9. package/dist/primitives/hooks/use-events-api.cjs +1 -0
  10. package/dist/primitives/hooks/use-events-api.d.ts +29 -0
  11. package/dist/primitives/hooks/use-events-api.js +44 -0
  12. package/dist/primitives/index.cjs +1 -1
  13. package/dist/primitives/index.js +150 -147
  14. package/dist/primitives/providers/base-events-provider.cjs +1 -1
  15. package/dist/primitives/providers/base-events-provider.d.ts +2 -0
  16. package/dist/primitives/providers/base-events-provider.js +6 -5
  17. package/dist/primitives/providers/chat-base-events-provider.cjs +1 -0
  18. package/dist/primitives/providers/chat-base-events-provider.d.ts +12 -0
  19. package/dist/primitives/providers/chat-base-events-provider.js +68 -0
  20. package/dist/primitives/providers/feedback-provider.cjs +1 -1
  21. package/dist/primitives/providers/feedback-provider.js +13 -12
  22. package/dist/primitives/providers/index.cjs +1 -1
  23. package/dist/primitives/providers/index.d.ts +1 -0
  24. package/dist/primitives/providers/index.js +57 -54
  25. package/dist/react/embedded-chat.cjs +1 -1
  26. package/dist/react/embedded-chat.js +96 -95
  27. package/dist/react/index.cjs +1 -1
  28. package/dist/react/index.js +161 -158
  29. package/dist/styled/components/message.cjs +1 -1
  30. package/dist/styled/components/message.js +77 -74
  31. package/dist/styled/index.cjs +1 -1
  32. package/dist/styled/index.js +151 -148
  33. package/dist/types/config/ai.d.ts +5 -0
  34. package/dist/types/events.d.ts +11 -0
  35. package/package.json +1 -1
package/dist/index.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("./react/embedded-chat.cjs"),H=require("./react/sidebar-chat.cjs"),l=require("./react/embedded-search-and-chat.cjs"),d=require("./react/embedded-search.cjs"),R=require("./react/modal.chat.cjs"),T=require("./react/modal.search-and-chat.cjs"),D=require("./react/modal.search.cjs"),p=require("./react/modal.cjs"),I=require("./react/chat-button.cjs"),$=require("./react/chat-button-modal.cjs"),S=require("./react/searchbar.cjs"),O=require("./styled/components/embedded-chat.cjs"),W=require("./styled/components/chat-history.cjs"),x=require("./styled/components/sidebar-chat.cjs"),z=require("./styled/components/chat-bubble.cjs"),L=require("./styled/components/embedded-search.cjs"),j=require("./styled/components/modal.cjs"),G=require("./styled/components/chat-button.cjs"),Q=require("./styled/components/searchbar.cjs"),U=require("./styled/components/shadow.cjs"),_=require("./styled/components/loading-indicator.cjs"),K=require("./styled/components/ui/recipes/widget-toggle.cjs"),b=require("./styled/components/message.cjs"),N=require("./styled/components/data-summary-group.cjs"),P=require("./primitives/providers/base-events-provider.cjs"),v=require("./primitives/providers/chat-auth-provider.cjs"),u=require("./primitives/providers/chat-form-provider.cjs"),q=require("./primitives/providers/chat-history-provider.cjs"),m=require("./primitives/providers/config-provider.cjs"),k=require("./primitives/providers/feedback-provider.cjs"),M=require("./primitives/providers/form-field-provider.cjs"),c=require("./primitives/providers/help-menu-provider.cjs"),g=require("./primitives/providers/markdown-provider.cjs"),C=require("./primitives/providers/message-provider.cjs"),V=require("./primitives/providers/root-provider.cjs"),B=require("./primitives/providers/source-item-provider.cjs"),J=require("./primitives/providers/theme-provider.cjs"),y=require("./primitives/providers/widget-provider.cjs"),n=require("./primitives/providers/sidebar-chat-provider.cjs"),s=require("./primitives/providers/chat-bubble-provider.cjs"),E=require("./primitives/components/factory.cjs"),X=require("./primitives/components/embedded-chat.cjs"),Y=require("./primitives/components/sidebar-chat/index.cjs"),F=require("./primitives/components/embedded-chat/chat-provider.cjs"),Z=require("./primitives/components/embedded-search.cjs"),h=require("./primitives/components/embedded-search/search-provider.cjs"),ee=require("./primitives/components/modal.cjs"),w=require("./primitives/components/modal/modal-provider.cjs"),re=require("./primitives/components/chat-button.cjs"),oe=require("./primitives/components/searchbar.cjs"),te=require("./primitives/components/chat-bubble/index.cjs"),ae=require("./primitives/components/data-summaries.cjs"),de=require("./primitives/components/chat-history/index.cjs"),ne=require("./primitives/hooks/use-boolean.cjs"),se=require("./primitives/hooks/use-component-classnames.cjs"),ie=require("./primitives/hooks/use-container-size.cjs"),ue=require("./primitives/hooks/use-inkeep-open-state.cjs"),me=require("./primitives/hooks/use-copy-to-clipboard.cjs"),ce=require("./primitives/hooks/use-instant-update.cjs"),Ce=require("./primitives/hooks/use-is-mounted.cjs"),he=require("./primitives/hooks/use-media-query.cjs"),le=require("./primitives/hooks/use-resize-observer.cjs"),A=require("./primitives/hooks/use-scrolling-fades.cjs"),pe=require("./primitives/hooks/use-settle-action.cjs"),Ie=require("./primitives/hooks/use-simple-scroll.cjs"),o=require("./primitives/utils/misc.cjs"),e=require("./primitives/utils/component-ids.cjs"),f=require("./primitives/utils/compose-refs.cjs"),Se=require("./primitives/utils/merge-props.cjs"),be=require("./primitives/atoms/portal.cjs"),Pe=require("./primitives/atoms/icons/custom-icon.cjs"),ve=require("./primitives/atoms/icons/built-in-icon-renderer.cjs"),qe=require("./primitives/atoms/portal-with-theme.cjs"),r=require("./primitives/atoms/cmdk/index.cjs"),ke=require("./primitives/atoms/error-boundary.cjs"),t=require("./color-mode/index.cjs"),i=require("./primitives/atoms/shadow/context.cjs");exports.InkeepEmbeddedChat=a.InkeepEmbeddedChat;exports.InkeepEmbeddedChatImpl=a.InkeepEmbeddedChatImpl;exports.InkeepEmbeddedChatImplContent=a.InkeepEmbeddedChatImplContent;exports.InkeepEmbeddedChatProvider=a.InkeepEmbeddedChatProvider;exports.InkeepSidebarChat=H.InkeepSidebarChat;exports.InkeepEmbeddedSearchAndChat=l.InkeepEmbeddedSearchAndChat;exports.InkeepEmbeddedSearchAndChatImpl=l.InkeepEmbeddedSearchAndChatImpl;exports.InkeepEmbeddedSearch=d.InkeepEmbeddedSearch;exports.InkeepEmbeddedSearchImpl=d.InkeepEmbeddedSearchImpl;exports.InkeepEmbeddedSearchImplContent=d.InkeepEmbeddedSearchImplContent;exports.InkeepEmbeddedSearchProvider=d.InkeepEmbeddedSearchProvider;exports.InkeepModalChat=R.InkeepModalChat;exports.InkeepModalSearchAndChat=T.InkeepModalSearchAndChat;exports.InkeepModalSearch=D.InkeepModalSearch;exports.InkeepModal=p.InkeepModal;exports.ModalContent=p.ModalContent;exports.ChatButtonImpl=I.ChatButtonImpl;exports.InkeepChatButton=I.InkeepChatButton;exports.InkeepChatButtonModal=$.InkeepChatButtonModal;exports.InkeepSearchBar=S.InkeepSearchBar;exports.SearchBarImpl=S.SearchBarImpl;exports.EmbeddedChat=O;exports.ChatHistory=W;exports.SidebarChat=x;exports.ChatBubble=z;exports.EmbeddedSearch=L;exports.Modal=j;exports.ChatButton=G;exports.SearchBar=Q;exports.Shadow=U.Shadow;exports.LoadingIndicator=_.LoadingIndicator;exports.widgetToggle=K.widgetToggle;exports.DefaultToolComponent=b.DefaultToolComponent;exports.EmbeddedChatMessagePart=b.EmbeddedChatMessagePart;exports.DataSummaryGroup=N.DataSummaryGroup;exports.BaseEventsProvider=P.BaseEventsProvider;exports.useBaseEvents=P.useBaseEvents;exports.ChatAuthProvider=v.ChatAuthProvider;exports.useChatAuth=v.useChatAuth;exports.ChatFormProvider=u.ChatFormProvider;exports.useChatForm=u.useChatForm;exports.useChatFormState=u.useChatFormState;exports.ChatHistoryProvider=q.ChatHistoryProvider;exports.useChatHistory=q.useChatHistory;exports.InkeepConfigProvider=m.InkeepConfigProvider;exports.WebWidgetInteractionType=m.WebWidgetInteractionType;exports.useInkeepConfig=m.useInkeepConfig;exports.FeedbackProvider=k.FeedbackProvider;exports.useMessageFeedback=k.useMessageFeedback;exports.FormFieldProvider=M.FormFieldProvider;exports.useFormField=M.useFormField;exports.HelpMenuProvider=c.HelpMenuProvider;exports.useHelpMenu=c.useHelpMenu;exports.useHelpMenuState=c.useHelpMenuState;exports.ChatMarkdownProvider=g.ChatMarkdownProvider;exports.useChatMarkdown=g.useChatMarkdown;exports.MessageProvider=C.MessageProvider;exports.useMessage=C.useMessage;exports.useOptionalMessage=C.useOptionalMessage;exports.RootProvider=V.RootProvider;exports.SourceItemProvider=B.SourceItemProvider;exports.useSourceItem=B.useSourceItem;exports.ThemeProvider=J.ThemeProvider;exports.WidgetProvider=y.WidgetProvider;exports.useWidget=y.useWidget;exports.SidebarChatProvider=n.SidebarChatProvider;exports.useInkeepSidebarChat=n.useInkeepSidebarChat;exports.useOptionalSidebarChat=n.useOptionalSidebarChat;exports.useSidebarChat=n.useSidebarChat;exports.ChatBubbleProvider=s.ChatBubbleProvider;exports.useChatBubble=s.useChatBubble;exports.useInkeepChatBubble=s.useInkeepChatBubble;exports.useOptionalChatBubble=s.useOptionalChatBubble;exports.ikp=E.ikp;exports.jsxFactory=E.jsxFactory;exports.EmbeddedChatPrimitive=X;exports.SidebarChatPrimitive=Y;exports.ChatProvider=F.ChatProvider;exports.useChat=F.useChat;exports.EmbeddedSearchPrimitive=Z;exports.SearchProvider=h.SearchProvider;exports.SearchProviderImpl=h.SearchProviderImpl;exports.useSearch=h.useSearch;exports.ModalPrimitive=ee;exports.ModalProvider=w.ModalProvider;exports.useModal=w.useModal;exports.ChatButtonPrimitive=re;exports.SearchBarPrimitive=oe;exports.ChatBubblePrimitive=te;exports.DataSummaryPrimitive=ae;exports.ChatHistoryPrimitive=de;exports.useBoolean=ne.useBoolean;exports.useComponentClassNames=se.useComponentClassNames;exports.useContainerSize=ie.useContainerSize;exports.useInkeepOpenState=ue.useInkeepOpenState;exports.useCopyToClipboard=me.useCopyToClipboard;exports.useInstantUpdate=ce.useInstantUpdate;exports.useIsMounted=Ce.useIsMounted;exports.useMediaQuery=he.useMediaQuery;exports.useResizeObserver=le.useResizeObserver;exports.useScrollingFades=A.useScrollingFades;exports.useScrollingFadesHorizontal=A.useScrollingFadesHorizontal;exports.useSettleAction=pe.useSettleAction;exports.useSimpleScroll=Ie.useSimpleScroll;exports.callAll=o.callAll;exports.dataAttr=o.dataAttr;exports.getInitials=o.getInitials;exports.getMessageContent=o.getMessageContent;exports.isCitationArtifact=o.isCitationArtifact;exports.isString=o.isString;exports.maybeRender=o.maybeRender;exports.toKebabCase=o.toKebabCase;exports.ChatBubbleComponentIds=e.ChatBubbleComponentIds;exports.DataSummaryComponentIds=e.DataSummaryComponentIds;exports.SearchBarComponentIds=e.SearchBarComponentIds;exports.SidebarChatComponentIds=e.SidebarChatComponentIds;exports.aiChatComponentIds=e.aiChatComponentIds;exports.aiChatHistoryComponentIds=e.aiChatHistoryComponentIds;exports.aiSearchComponentIds=e.aiSearchComponentIds;exports.chatButtonComponentIds=e.chatButtonComponentIds;exports.componentIDs=e.componentIDs;exports.markDownComponentIds=e.markDownComponentIds;exports.miscellanousComponentIds=e.miscellanousComponentIds;exports.modalComponentIds=e.modalComponentIds;exports.composeRefs=f.composeRefs;exports.useComposedRefs=f.useComposedRefs;exports.mergeProps=Se.mergeProps;exports.Portal=be.Portal;exports.CustomIcon=Pe.CustomIcon;exports.BuiltInIconRenderer=ve.BuiltInIconRenderer;exports.PortalWithTheme=qe.PortalWithTheme;exports.Command=r.Command;exports.CommandDialog=r.CommandDialog;exports.CommandEmpty=r.CommandEmpty;exports.CommandInput=r.CommandInput;exports.CommandItem=r.CommandItem;exports.CommandList=r.CommandList;exports.CommandLoading=r.CommandLoading;exports.CommandRoot=r.CommandRoot;exports.CommandSeparator=r.CommandSeparator;exports.defaultFilter=r.defaultFilter;exports.useCommandState=r.useCommandState;exports.useCommandStore=r.useCommandStore;exports.ErrorBoundary=ke.ErrorBoundary;exports.ColorMode=t.ColorMode;exports.ColorModeProvider=t.ColorModeProvider;exports.DarkModeProvider=t.DarkModeProvider;exports.useColorMode=t.useColorMode;exports.useColorModeValue=t.useColorModeValue;exports.InkeepShadow=i.InkeepShadow;exports.InkeepShadowProvider=i.InkeepShadowProvider;exports.ShadowContext=i.ShadowContext;exports.useShadow=i.useShadow;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("./react/embedded-chat.cjs"),H=require("./react/sidebar-chat.cjs"),p=require("./react/embedded-search-and-chat.cjs"),n=require("./react/embedded-search.cjs"),R=require("./react/modal.chat.cjs"),T=require("./react/modal.search-and-chat.cjs"),D=require("./react/modal.search.cjs"),I=require("./react/modal.cjs"),S=require("./react/chat-button.cjs"),$=require("./react/chat-button-modal.cjs"),b=require("./react/searchbar.cjs"),O=require("./styled/components/embedded-chat.cjs"),x=require("./styled/components/chat-history.cjs"),W=require("./styled/components/sidebar-chat.cjs"),z=require("./styled/components/chat-bubble.cjs"),L=require("./styled/components/embedded-search.cjs"),j=require("./styled/components/modal.cjs"),G=require("./styled/components/chat-button.cjs"),Q=require("./styled/components/searchbar.cjs"),U=require("./styled/components/shadow.cjs"),_=require("./styled/components/loading-indicator.cjs"),K=require("./styled/components/ui/recipes/widget-toggle.cjs"),v=require("./styled/components/message.cjs"),N=require("./styled/components/data-summary-group.cjs"),u=require("./primitives/providers/base-events-provider.cjs"),P=require("./primitives/providers/chat-auth-provider.cjs"),V=require("./primitives/providers/chat-base-events-provider.cjs"),m=require("./primitives/providers/chat-form-provider.cjs"),q=require("./primitives/providers/chat-history-provider.cjs"),c=require("./primitives/providers/config-provider.cjs"),k=require("./primitives/providers/feedback-provider.cjs"),M=require("./primitives/providers/form-field-provider.cjs"),C=require("./primitives/providers/help-menu-provider.cjs"),g=require("./primitives/providers/markdown-provider.cjs"),h=require("./primitives/providers/message-provider.cjs"),J=require("./primitives/providers/root-provider.cjs"),B=require("./primitives/providers/source-item-provider.cjs"),X=require("./primitives/providers/theme-provider.cjs"),E=require("./primitives/providers/widget-provider.cjs"),d=require("./primitives/providers/sidebar-chat-provider.cjs"),s=require("./primitives/providers/chat-bubble-provider.cjs"),y=require("./primitives/components/factory.cjs"),Y=require("./primitives/components/embedded-chat.cjs"),Z=require("./primitives/components/sidebar-chat/index.cjs"),F=require("./primitives/components/embedded-chat/chat-provider.cjs"),ee=require("./primitives/components/embedded-search.cjs"),l=require("./primitives/components/embedded-search/search-provider.cjs"),re=require("./primitives/components/modal.cjs"),w=require("./primitives/components/modal/modal-provider.cjs"),oe=require("./primitives/components/chat-button.cjs"),te=require("./primitives/components/searchbar.cjs"),ae=require("./primitives/components/chat-bubble/index.cjs"),ne=require("./primitives/components/data-summaries.cjs"),de=require("./primitives/components/chat-history/index.cjs"),se=require("./primitives/hooks/use-boolean.cjs"),ie=require("./primitives/hooks/use-component-classnames.cjs"),ue=require("./primitives/hooks/use-container-size.cjs"),me=require("./primitives/hooks/use-inkeep-open-state.cjs"),ce=require("./primitives/hooks/use-copy-to-clipboard.cjs"),Ce=require("./primitives/hooks/use-instant-update.cjs"),he=require("./primitives/hooks/use-is-mounted.cjs"),le=require("./primitives/hooks/use-media-query.cjs"),pe=require("./primitives/hooks/use-resize-observer.cjs"),A=require("./primitives/hooks/use-scrolling-fades.cjs"),Ie=require("./primitives/hooks/use-settle-action.cjs"),Se=require("./primitives/hooks/use-simple-scroll.cjs"),o=require("./primitives/utils/misc.cjs"),e=require("./primitives/utils/component-ids.cjs"),f=require("./primitives/utils/compose-refs.cjs"),be=require("./primitives/utils/merge-props.cjs"),ve=require("./primitives/atoms/portal.cjs"),Pe=require("./primitives/atoms/icons/custom-icon.cjs"),qe=require("./primitives/atoms/icons/built-in-icon-renderer.cjs"),ke=require("./primitives/atoms/portal-with-theme.cjs"),r=require("./primitives/atoms/cmdk/index.cjs"),Me=require("./primitives/atoms/error-boundary.cjs"),t=require("./color-mode/index.cjs"),i=require("./primitives/atoms/shadow/context.cjs");exports.InkeepEmbeddedChat=a.InkeepEmbeddedChat;exports.InkeepEmbeddedChatImpl=a.InkeepEmbeddedChatImpl;exports.InkeepEmbeddedChatImplContent=a.InkeepEmbeddedChatImplContent;exports.InkeepEmbeddedChatProvider=a.InkeepEmbeddedChatProvider;exports.InkeepSidebarChat=H.InkeepSidebarChat;exports.InkeepEmbeddedSearchAndChat=p.InkeepEmbeddedSearchAndChat;exports.InkeepEmbeddedSearchAndChatImpl=p.InkeepEmbeddedSearchAndChatImpl;exports.InkeepEmbeddedSearch=n.InkeepEmbeddedSearch;exports.InkeepEmbeddedSearchImpl=n.InkeepEmbeddedSearchImpl;exports.InkeepEmbeddedSearchImplContent=n.InkeepEmbeddedSearchImplContent;exports.InkeepEmbeddedSearchProvider=n.InkeepEmbeddedSearchProvider;exports.InkeepModalChat=R.InkeepModalChat;exports.InkeepModalSearchAndChat=T.InkeepModalSearchAndChat;exports.InkeepModalSearch=D.InkeepModalSearch;exports.InkeepModal=I.InkeepModal;exports.ModalContent=I.ModalContent;exports.ChatButtonImpl=S.ChatButtonImpl;exports.InkeepChatButton=S.InkeepChatButton;exports.InkeepChatButtonModal=$.InkeepChatButtonModal;exports.InkeepSearchBar=b.InkeepSearchBar;exports.SearchBarImpl=b.SearchBarImpl;exports.EmbeddedChat=O;exports.ChatHistory=x;exports.SidebarChat=W;exports.ChatBubble=z;exports.EmbeddedSearch=L;exports.Modal=j;exports.ChatButton=G;exports.SearchBar=Q;exports.Shadow=U.Shadow;exports.LoadingIndicator=_.LoadingIndicator;exports.widgetToggle=K.widgetToggle;exports.DefaultToolComponent=v.DefaultToolComponent;exports.EmbeddedChatMessagePart=v.EmbeddedChatMessagePart;exports.DataSummaryGroup=N.DataSummaryGroup;exports.BaseEventsContext=u.BaseEventsContext;exports.BaseEventsProvider=u.BaseEventsProvider;exports.useBaseEvents=u.useBaseEvents;exports.ChatAuthProvider=P.ChatAuthProvider;exports.useChatAuth=P.useChatAuth;exports.ChatBaseEventsProvider=V.ChatBaseEventsProvider;exports.ChatFormProvider=m.ChatFormProvider;exports.useChatForm=m.useChatForm;exports.useChatFormState=m.useChatFormState;exports.ChatHistoryProvider=q.ChatHistoryProvider;exports.useChatHistory=q.useChatHistory;exports.InkeepConfigProvider=c.InkeepConfigProvider;exports.WebWidgetInteractionType=c.WebWidgetInteractionType;exports.useInkeepConfig=c.useInkeepConfig;exports.FeedbackProvider=k.FeedbackProvider;exports.useMessageFeedback=k.useMessageFeedback;exports.FormFieldProvider=M.FormFieldProvider;exports.useFormField=M.useFormField;exports.HelpMenuProvider=C.HelpMenuProvider;exports.useHelpMenu=C.useHelpMenu;exports.useHelpMenuState=C.useHelpMenuState;exports.ChatMarkdownProvider=g.ChatMarkdownProvider;exports.useChatMarkdown=g.useChatMarkdown;exports.MessageProvider=h.MessageProvider;exports.useMessage=h.useMessage;exports.useOptionalMessage=h.useOptionalMessage;exports.RootProvider=J.RootProvider;exports.SourceItemProvider=B.SourceItemProvider;exports.useSourceItem=B.useSourceItem;exports.ThemeProvider=X.ThemeProvider;exports.WidgetProvider=E.WidgetProvider;exports.useWidget=E.useWidget;exports.SidebarChatProvider=d.SidebarChatProvider;exports.useInkeepSidebarChat=d.useInkeepSidebarChat;exports.useOptionalSidebarChat=d.useOptionalSidebarChat;exports.useSidebarChat=d.useSidebarChat;exports.ChatBubbleProvider=s.ChatBubbleProvider;exports.useChatBubble=s.useChatBubble;exports.useInkeepChatBubble=s.useInkeepChatBubble;exports.useOptionalChatBubble=s.useOptionalChatBubble;exports.ikp=y.ikp;exports.jsxFactory=y.jsxFactory;exports.EmbeddedChatPrimitive=Y;exports.SidebarChatPrimitive=Z;exports.ChatProvider=F.ChatProvider;exports.useChat=F.useChat;exports.EmbeddedSearchPrimitive=ee;exports.SearchProvider=l.SearchProvider;exports.SearchProviderImpl=l.SearchProviderImpl;exports.useSearch=l.useSearch;exports.ModalPrimitive=re;exports.ModalProvider=w.ModalProvider;exports.useModal=w.useModal;exports.ChatButtonPrimitive=oe;exports.SearchBarPrimitive=te;exports.ChatBubblePrimitive=ae;exports.DataSummaryPrimitive=ne;exports.ChatHistoryPrimitive=de;exports.useBoolean=se.useBoolean;exports.useComponentClassNames=ie.useComponentClassNames;exports.useContainerSize=ue.useContainerSize;exports.useInkeepOpenState=me.useInkeepOpenState;exports.useCopyToClipboard=ce.useCopyToClipboard;exports.useInstantUpdate=Ce.useInstantUpdate;exports.useIsMounted=he.useIsMounted;exports.useMediaQuery=le.useMediaQuery;exports.useResizeObserver=pe.useResizeObserver;exports.useScrollingFades=A.useScrollingFades;exports.useScrollingFadesHorizontal=A.useScrollingFadesHorizontal;exports.useSettleAction=Ie.useSettleAction;exports.useSimpleScroll=Se.useSimpleScroll;exports.callAll=o.callAll;exports.dataAttr=o.dataAttr;exports.getInitials=o.getInitials;exports.getMessageContent=o.getMessageContent;exports.isCitationArtifact=o.isCitationArtifact;exports.isString=o.isString;exports.maybeRender=o.maybeRender;exports.toKebabCase=o.toKebabCase;exports.ChatBubbleComponentIds=e.ChatBubbleComponentIds;exports.DataSummaryComponentIds=e.DataSummaryComponentIds;exports.SearchBarComponentIds=e.SearchBarComponentIds;exports.SidebarChatComponentIds=e.SidebarChatComponentIds;exports.aiChatComponentIds=e.aiChatComponentIds;exports.aiChatHistoryComponentIds=e.aiChatHistoryComponentIds;exports.aiSearchComponentIds=e.aiSearchComponentIds;exports.chatButtonComponentIds=e.chatButtonComponentIds;exports.componentIDs=e.componentIDs;exports.markDownComponentIds=e.markDownComponentIds;exports.miscellanousComponentIds=e.miscellanousComponentIds;exports.modalComponentIds=e.modalComponentIds;exports.composeRefs=f.composeRefs;exports.useComposedRefs=f.useComposedRefs;exports.mergeProps=be.mergeProps;exports.Portal=ve.Portal;exports.CustomIcon=Pe.CustomIcon;exports.BuiltInIconRenderer=qe.BuiltInIconRenderer;exports.PortalWithTheme=ke.PortalWithTheme;exports.Command=r.Command;exports.CommandDialog=r.CommandDialog;exports.CommandEmpty=r.CommandEmpty;exports.CommandInput=r.CommandInput;exports.CommandItem=r.CommandItem;exports.CommandList=r.CommandList;exports.CommandLoading=r.CommandLoading;exports.CommandRoot=r.CommandRoot;exports.CommandSeparator=r.CommandSeparator;exports.defaultFilter=r.defaultFilter;exports.useCommandState=r.useCommandState;exports.useCommandStore=r.useCommandStore;exports.ErrorBoundary=Me.ErrorBoundary;exports.ColorMode=t.ColorMode;exports.ColorModeProvider=t.ColorModeProvider;exports.DarkModeProvider=t.DarkModeProvider;exports.useColorMode=t.useColorMode;exports.useColorModeValue=t.useColorModeValue;exports.InkeepShadow=i.InkeepShadow;exports.InkeepShadowProvider=i.InkeepShadowProvider;exports.ShadowContext=i.ShadowContext;exports.useShadow=i.useShadow;
package/dist/index.js CHANGED
@@ -1,5 +1,5 @@
1
- import { InkeepEmbeddedChat as S, InkeepEmbeddedChatImpl as c, InkeepEmbeddedChatImplContent as P, InkeepEmbeddedChatProvider as v } from "./react/embedded-chat.js";
2
- import { InkeepSidebarChat as M } from "./react/sidebar-chat.js";
1
+ import { InkeepEmbeddedChat as S, InkeepEmbeddedChatImpl as c, InkeepEmbeddedChatImplContent as v, InkeepEmbeddedChatProvider as P } from "./react/embedded-chat.js";
2
+ import { InkeepSidebarChat as B } from "./react/sidebar-chat.js";
3
3
  import { InkeepEmbeddedSearchAndChat as g, InkeepEmbeddedSearchAndChatImpl as E } from "./react/embedded-search-and-chat.js";
4
4
  import { InkeepEmbeddedSearch as F, InkeepEmbeddedSearchImpl as H, InkeepEmbeddedSearchImplContent as w, InkeepEmbeddedSearchProvider as A } from "./react/embedded-search.js";
5
5
  import { InkeepModalChat as R } from "./react/modal.chat.js";
@@ -22,90 +22,93 @@ import { LoadingIndicator as _ } from "./styled/components/loading-indicator.js"
22
22
  import { widgetToggle as oe } from "./styled/components/ui/recipes/widget-toggle.js";
23
23
  import { DefaultToolComponent as te, EmbeddedChatMessagePart as ae } from "./styled/components/message.js";
24
24
  import { DataSummaryGroup as de } from "./styled/components/data-summary-group.js";
25
- import { BaseEventsProvider as se, useBaseEvents as ie } from "./primitives/providers/base-events-provider.js";
26
- import { ChatAuthProvider as Ce, useChatAuth as he } from "./primitives/providers/chat-auth-provider.js";
27
- import { ChatFormProvider as xe, useChatForm as ue, useChatFormState as le } from "./primitives/providers/chat-form-provider.js";
28
- import { ChatHistoryProvider as be, useChatHistory as Se } from "./primitives/providers/chat-history-provider.js";
29
- import { InkeepConfigProvider as Pe, WebWidgetInteractionType as ve, useInkeepConfig as ke } from "./primitives/providers/config-provider.js";
30
- import { FeedbackProvider as Be, useMessageFeedback as ge } from "./primitives/providers/feedback-provider.js";
31
- import { FormFieldProvider as ye, useFormField as Fe } from "./primitives/providers/form-field-provider.js";
32
- import { HelpMenuProvider as we, useHelpMenu as Ae, useHelpMenuState as De } from "./primitives/providers/help-menu-provider.js";
33
- import { ChatMarkdownProvider as $e, useChatMarkdown as Te } from "./primitives/providers/markdown-provider.js";
34
- import { MessageProvider as We, useMessage as ze, useOptionalMessage as Le } from "./primitives/providers/message-provider.js";
35
- import { RootProvider as Ge } from "./primitives/providers/root-provider.js";
36
- import { SourceItemProvider as Ne, useSourceItem as Qe } from "./primitives/providers/source-item-provider.js";
37
- import { ThemeProvider as Ve } from "./primitives/providers/theme-provider.js";
38
- import { WidgetProvider as Je, useWidget as Xe } from "./primitives/providers/widget-provider.js";
39
- import { SidebarChatProvider as Ze, useInkeepSidebarChat as _e, useOptionalSidebarChat as eo, useSidebarChat as oo } from "./primitives/providers/sidebar-chat-provider.js";
40
- import { ChatBubbleProvider as to, useChatBubble as ao, useInkeepChatBubble as mo, useOptionalChatBubble as po } from "./primitives/providers/chat-bubble-provider.js";
41
- import { ikp as io, jsxFactory as no } from "./primitives/components/factory.js";
25
+ import { BaseEventsContext as se, BaseEventsProvider as ie, useBaseEvents as ne } from "./primitives/providers/base-events-provider.js";
26
+ import { ChatAuthProvider as he, useChatAuth as fe } from "./primitives/providers/chat-auth-provider.js";
27
+ import { ChatBaseEventsProvider as ue } from "./primitives/providers/chat-base-events-provider.js";
28
+ import { ChatFormProvider as Ie, useChatForm as be, useChatFormState as Se } from "./primitives/providers/chat-form-provider.js";
29
+ import { ChatHistoryProvider as ve, useChatHistory as Pe } from "./primitives/providers/chat-history-provider.js";
30
+ import { InkeepConfigProvider as Be, WebWidgetInteractionType as Me, useInkeepConfig as ge } from "./primitives/providers/config-provider.js";
31
+ import { FeedbackProvider as ye, useMessageFeedback as Fe } from "./primitives/providers/feedback-provider.js";
32
+ import { FormFieldProvider as we, useFormField as Ae } from "./primitives/providers/form-field-provider.js";
33
+ import { HelpMenuProvider as Re, useHelpMenu as $e, useHelpMenuState as Te } from "./primitives/providers/help-menu-provider.js";
34
+ import { ChatMarkdownProvider as We, useChatMarkdown as ze } from "./primitives/providers/markdown-provider.js";
35
+ import { MessageProvider as je, useMessage as Ge, useOptionalMessage as Ke } from "./primitives/providers/message-provider.js";
36
+ import { RootProvider as Qe } from "./primitives/providers/root-provider.js";
37
+ import { SourceItemProvider as Ve, useSourceItem as qe } from "./primitives/providers/source-item-provider.js";
38
+ import { ThemeProvider as Xe } from "./primitives/providers/theme-provider.js";
39
+ import { WidgetProvider as Ze, useWidget as _e } from "./primitives/providers/widget-provider.js";
40
+ import { SidebarChatProvider as oo, useInkeepSidebarChat as ro, useOptionalSidebarChat as to, useSidebarChat as ao } from "./primitives/providers/sidebar-chat-provider.js";
41
+ import { ChatBubbleProvider as po, useChatBubble as so, useInkeepChatBubble as io, useOptionalChatBubble as no } from "./primitives/providers/chat-bubble-provider.js";
42
+ import { ikp as ho, jsxFactory as fo } from "./primitives/components/factory.js";
42
43
  import * as s from "./primitives/components/embedded-chat.js";
43
44
  import * as i from "./primitives/components/sidebar-chat/index.js";
44
- import { ChatProvider as ho, useChat as fo } from "./primitives/components/embedded-chat/chat-provider.js";
45
+ import { ChatProvider as uo, useChat as lo } from "./primitives/components/embedded-chat/chat-provider.js";
45
46
  import * as n from "./primitives/components/embedded-search.js";
46
- import { SearchProvider as uo, SearchProviderImpl as lo, useSearch as Io } from "./primitives/components/embedded-search/search-provider.js";
47
+ import { SearchProvider as bo, SearchProviderImpl as So, useSearch as co } from "./primitives/components/embedded-search/search-provider.js";
47
48
  import * as C from "./primitives/components/modal.js";
48
- import { ModalProvider as So, useModal as co } from "./primitives/components/modal/modal-provider.js";
49
+ import { ModalProvider as Po, useModal as ko } from "./primitives/components/modal/modal-provider.js";
49
50
  import * as h from "./primitives/components/chat-button.js";
50
51
  import * as f from "./primitives/components/searchbar.js";
51
52
  import * as x from "./primitives/components/chat-bubble/index.js";
52
53
  import * as u from "./primitives/components/data-summaries.js";
53
54
  import * as l from "./primitives/components/chat-history/index.js";
54
- import { useBoolean as vo } from "./primitives/hooks/use-boolean.js";
55
- import { useComponentClassNames as Mo } from "./primitives/hooks/use-component-classnames.js";
56
- import { useContainerSize as go } from "./primitives/hooks/use-container-size.js";
57
- import { useInkeepOpenState as yo } from "./primitives/hooks/use-inkeep-open-state.js";
58
- import { useCopyToClipboard as Ho } from "./primitives/hooks/use-copy-to-clipboard.js";
59
- import { useInstantUpdate as Ao } from "./primitives/hooks/use-instant-update.js";
60
- import { useIsMounted as Ro } from "./primitives/hooks/use-is-mounted.js";
61
- import { useMediaQuery as To } from "./primitives/hooks/use-media-query.js";
62
- import { useResizeObserver as Wo } from "./primitives/hooks/use-resize-observer.js";
63
- import { useScrollingFades as Lo, useScrollingFadesHorizontal as jo } from "./primitives/hooks/use-scrolling-fades.js";
64
- import { useSettleAction as Ko } from "./primitives/hooks/use-settle-action.js";
65
- import { useSimpleScroll as Qo } from "./primitives/hooks/use-simple-scroll.js";
66
- import { callAll as Vo, dataAttr as qo, getInitials as Jo, getMessageContent as Xo, isCitationArtifact as Yo, isString as Zo, maybeRender as _o, toKebabCase as er } from "./primitives/utils/misc.js";
67
- import { ChatBubbleComponentIds as rr, DataSummaryComponentIds as tr, SearchBarComponentIds as ar, SidebarChatComponentIds as mr, aiChatComponentIds as dr, aiChatHistoryComponentIds as pr, aiSearchComponentIds as sr, chatButtonComponentIds as ir, componentIDs as nr, markDownComponentIds as Cr, miscellanousComponentIds as hr, modalComponentIds as fr } from "./primitives/utils/component-ids.js";
68
- import { composeRefs as ur, useComposedRefs as lr } from "./primitives/utils/compose-refs.js";
69
- import { mergeProps as br } from "./primitives/utils/merge-props.js";
70
- import { Portal as cr } from "./primitives/atoms/portal.js";
71
- import { CustomIcon as vr } from "./primitives/atoms/icons/custom-icon.js";
72
- import { BuiltInIconRenderer as Mr } from "./primitives/atoms/icons/built-in-icon-renderer.js";
73
- import { PortalWithTheme as gr } from "./primitives/atoms/portal-with-theme.js";
74
- import { Command as yr, CommandDialog as Fr, CommandEmpty as Hr, CommandInput as wr, CommandItem as Ar, CommandList as Dr, CommandLoading as Rr, CommandRoot as $r, CommandSeparator as Tr, defaultFilter as Or, useCommandState as Wr, useCommandStore as zr } from "./primitives/atoms/cmdk/index.js";
75
- import { ErrorBoundary as jr } from "./primitives/atoms/error-boundary.js";
76
- import { ColorMode as Kr, ColorModeProvider as Nr, DarkModeProvider as Qr, useColorMode as Ur, useColorModeValue as Vr } from "./color-mode/index.js";
77
- import { InkeepShadow as Jr, InkeepShadowProvider as Xr, ShadowContext as Yr, useShadow as Zr } from "./primitives/atoms/shadow/context.js";
55
+ import { useBoolean as Mo } from "./primitives/hooks/use-boolean.js";
56
+ import { useComponentClassNames as Eo } from "./primitives/hooks/use-component-classnames.js";
57
+ import { useContainerSize as Fo } from "./primitives/hooks/use-container-size.js";
58
+ import { useInkeepOpenState as wo } from "./primitives/hooks/use-inkeep-open-state.js";
59
+ import { useCopyToClipboard as Do } from "./primitives/hooks/use-copy-to-clipboard.js";
60
+ import { useInstantUpdate as $o } from "./primitives/hooks/use-instant-update.js";
61
+ import { useIsMounted as Oo } from "./primitives/hooks/use-is-mounted.js";
62
+ import { useMediaQuery as zo } from "./primitives/hooks/use-media-query.js";
63
+ import { useResizeObserver as jo } from "./primitives/hooks/use-resize-observer.js";
64
+ import { useScrollingFades as Ko, useScrollingFadesHorizontal as No } from "./primitives/hooks/use-scrolling-fades.js";
65
+ import { useSettleAction as Uo } from "./primitives/hooks/use-settle-action.js";
66
+ import { useSimpleScroll as qo } from "./primitives/hooks/use-simple-scroll.js";
67
+ import { callAll as Xo, dataAttr as Yo, getInitials as Zo, getMessageContent as _o, isCitationArtifact as er, isString as or, maybeRender as rr, toKebabCase as tr } from "./primitives/utils/misc.js";
68
+ import { ChatBubbleComponentIds as mr, DataSummaryComponentIds as dr, SearchBarComponentIds as pr, SidebarChatComponentIds as sr, aiChatComponentIds as ir, aiChatHistoryComponentIds as nr, aiSearchComponentIds as Cr, chatButtonComponentIds as hr, componentIDs as fr, markDownComponentIds as xr, miscellanousComponentIds as ur, modalComponentIds as lr } from "./primitives/utils/component-ids.js";
69
+ import { composeRefs as br, useComposedRefs as Sr } from "./primitives/utils/compose-refs.js";
70
+ import { mergeProps as vr } from "./primitives/utils/merge-props.js";
71
+ import { Portal as kr } from "./primitives/atoms/portal.js";
72
+ import { CustomIcon as Mr } from "./primitives/atoms/icons/custom-icon.js";
73
+ import { BuiltInIconRenderer as Er } from "./primitives/atoms/icons/built-in-icon-renderer.js";
74
+ import { PortalWithTheme as Fr } from "./primitives/atoms/portal-with-theme.js";
75
+ import { Command as wr, CommandDialog as Ar, CommandEmpty as Dr, CommandInput as Rr, CommandItem as $r, CommandList as Tr, CommandLoading as Or, CommandRoot as Wr, CommandSeparator as zr, defaultFilter as Lr, useCommandState as jr, useCommandStore as Gr } from "./primitives/atoms/cmdk/index.js";
76
+ import { ErrorBoundary as Nr } from "./primitives/atoms/error-boundary.js";
77
+ import { ColorMode as Ur, ColorModeProvider as Vr, DarkModeProvider as qr, useColorMode as Jr, useColorModeValue as Xr } from "./color-mode/index.js";
78
+ import { InkeepShadow as Zr, InkeepShadowProvider as _r, ShadowContext as et, useShadow as ot } from "./primitives/atoms/shadow/context.js";
78
79
  export {
79
- se as BaseEventsProvider,
80
- Mr as BuiltInIconRenderer,
81
- Ce as ChatAuthProvider,
80
+ se as BaseEventsContext,
81
+ ie as BaseEventsProvider,
82
+ Er as BuiltInIconRenderer,
83
+ he as ChatAuthProvider,
84
+ ue as ChatBaseEventsProvider,
82
85
  t as ChatBubble,
83
- rr as ChatBubbleComponentIds,
86
+ mr as ChatBubbleComponentIds,
84
87
  x as ChatBubblePrimitive,
85
- to as ChatBubbleProvider,
88
+ po as ChatBubbleProvider,
86
89
  d as ChatButton,
87
90
  K as ChatButtonImpl,
88
91
  h as ChatButtonPrimitive,
89
- xe as ChatFormProvider,
92
+ Ie as ChatFormProvider,
90
93
  o as ChatHistory,
91
94
  l as ChatHistoryPrimitive,
92
- be as ChatHistoryProvider,
93
- $e as ChatMarkdownProvider,
94
- ho as ChatProvider,
95
- Kr as ColorMode,
96
- Nr as ColorModeProvider,
97
- yr as Command,
98
- Fr as CommandDialog,
99
- Hr as CommandEmpty,
100
- wr as CommandInput,
101
- Ar as CommandItem,
102
- Dr as CommandList,
103
- Rr as CommandLoading,
104
- $r as CommandRoot,
105
- Tr as CommandSeparator,
106
- vr as CustomIcon,
107
- Qr as DarkModeProvider,
108
- tr as DataSummaryComponentIds,
95
+ ve as ChatHistoryProvider,
96
+ We as ChatMarkdownProvider,
97
+ uo as ChatProvider,
98
+ Ur as ColorMode,
99
+ Vr as ColorModeProvider,
100
+ wr as Command,
101
+ Ar as CommandDialog,
102
+ Dr as CommandEmpty,
103
+ Rr as CommandInput,
104
+ $r as CommandItem,
105
+ Tr as CommandList,
106
+ Or as CommandLoading,
107
+ Wr as CommandRoot,
108
+ zr as CommandSeparator,
109
+ Mr as CustomIcon,
110
+ qr as DarkModeProvider,
111
+ dr as DataSummaryComponentIds,
109
112
  de as DataSummaryGroup,
110
113
  u as DataSummaryPrimitive,
111
114
  te as DefaultToolComponent,
@@ -114,17 +117,17 @@ export {
114
117
  s as EmbeddedChatPrimitive,
115
118
  a as EmbeddedSearch,
116
119
  n as EmbeddedSearchPrimitive,
117
- jr as ErrorBoundary,
118
- Be as FeedbackProvider,
119
- ye as FormFieldProvider,
120
- we as HelpMenuProvider,
120
+ Nr as ErrorBoundary,
121
+ ye as FeedbackProvider,
122
+ we as FormFieldProvider,
123
+ Re as HelpMenuProvider,
121
124
  N as InkeepChatButton,
122
125
  U as InkeepChatButtonModal,
123
- Pe as InkeepConfigProvider,
126
+ Be as InkeepConfigProvider,
124
127
  S as InkeepEmbeddedChat,
125
128
  c as InkeepEmbeddedChatImpl,
126
- P as InkeepEmbeddedChatImplContent,
127
- v as InkeepEmbeddedChatProvider,
129
+ v as InkeepEmbeddedChatImplContent,
130
+ P as InkeepEmbeddedChatProvider,
128
131
  F as InkeepEmbeddedSearch,
129
132
  g as InkeepEmbeddedSearchAndChat,
130
133
  E as InkeepEmbeddedSearchAndChatImpl,
@@ -136,97 +139,97 @@ export {
136
139
  W as InkeepModalSearch,
137
140
  T as InkeepModalSearchAndChat,
138
141
  q as InkeepSearchBar,
139
- Jr as InkeepShadow,
140
- Xr as InkeepShadowProvider,
141
- M as InkeepSidebarChat,
142
+ Zr as InkeepShadow,
143
+ _r as InkeepShadowProvider,
144
+ B as InkeepSidebarChat,
142
145
  _ as LoadingIndicator,
143
- We as MessageProvider,
146
+ je as MessageProvider,
144
147
  m as Modal,
145
148
  j as ModalContent,
146
149
  C as ModalPrimitive,
147
- So as ModalProvider,
148
- cr as Portal,
149
- gr as PortalWithTheme,
150
- Ge as RootProvider,
150
+ Po as ModalProvider,
151
+ kr as Portal,
152
+ Fr as PortalWithTheme,
153
+ Qe as RootProvider,
151
154
  p as SearchBar,
152
- ar as SearchBarComponentIds,
155
+ pr as SearchBarComponentIds,
153
156
  J as SearchBarImpl,
154
157
  f as SearchBarPrimitive,
155
- uo as SearchProvider,
156
- lo as SearchProviderImpl,
158
+ bo as SearchProvider,
159
+ So as SearchProviderImpl,
157
160
  Y as Shadow,
158
- Yr as ShadowContext,
161
+ et as ShadowContext,
159
162
  r as SidebarChat,
160
- mr as SidebarChatComponentIds,
163
+ sr as SidebarChatComponentIds,
161
164
  i as SidebarChatPrimitive,
162
- Ze as SidebarChatProvider,
163
- Ne as SourceItemProvider,
164
- Ve as ThemeProvider,
165
- ve as WebWidgetInteractionType,
166
- Je as WidgetProvider,
167
- dr as aiChatComponentIds,
168
- pr as aiChatHistoryComponentIds,
169
- sr as aiSearchComponentIds,
170
- Vo as callAll,
171
- ir as chatButtonComponentIds,
172
- nr as componentIDs,
173
- ur as composeRefs,
174
- qo as dataAttr,
175
- Or as defaultFilter,
176
- Jo as getInitials,
177
- Xo as getMessageContent,
178
- io as ikp,
179
- Yo as isCitationArtifact,
180
- Zo as isString,
181
- no as jsxFactory,
182
- Cr as markDownComponentIds,
183
- _o as maybeRender,
184
- br as mergeProps,
185
- hr as miscellanousComponentIds,
186
- fr as modalComponentIds,
187
- er as toKebabCase,
188
- ie as useBaseEvents,
189
- vo as useBoolean,
190
- fo as useChat,
191
- he as useChatAuth,
192
- ao as useChatBubble,
193
- ue as useChatForm,
194
- le as useChatFormState,
195
- Se as useChatHistory,
196
- Te as useChatMarkdown,
197
- Ur as useColorMode,
198
- Vr as useColorModeValue,
199
- Wr as useCommandState,
200
- zr as useCommandStore,
201
- Mo as useComponentClassNames,
202
- lr as useComposedRefs,
203
- go as useContainerSize,
204
- Ho as useCopyToClipboard,
205
- Fe as useFormField,
206
- Ae as useHelpMenu,
207
- De as useHelpMenuState,
208
- mo as useInkeepChatBubble,
209
- ke as useInkeepConfig,
210
- yo as useInkeepOpenState,
211
- _e as useInkeepSidebarChat,
212
- Ao as useInstantUpdate,
213
- Ro as useIsMounted,
214
- To as useMediaQuery,
215
- ze as useMessage,
216
- ge as useMessageFeedback,
217
- co as useModal,
218
- po as useOptionalChatBubble,
219
- Le as useOptionalMessage,
220
- eo as useOptionalSidebarChat,
221
- Wo as useResizeObserver,
222
- Lo as useScrollingFades,
223
- jo as useScrollingFadesHorizontal,
224
- Io as useSearch,
225
- Ko as useSettleAction,
226
- Zr as useShadow,
227
- oo as useSidebarChat,
228
- Qo as useSimpleScroll,
229
- Qe as useSourceItem,
230
- Xe as useWidget,
165
+ oo as SidebarChatProvider,
166
+ Ve as SourceItemProvider,
167
+ Xe as ThemeProvider,
168
+ Me as WebWidgetInteractionType,
169
+ Ze as WidgetProvider,
170
+ ir as aiChatComponentIds,
171
+ nr as aiChatHistoryComponentIds,
172
+ Cr as aiSearchComponentIds,
173
+ Xo as callAll,
174
+ hr as chatButtonComponentIds,
175
+ fr as componentIDs,
176
+ br as composeRefs,
177
+ Yo as dataAttr,
178
+ Lr as defaultFilter,
179
+ Zo as getInitials,
180
+ _o as getMessageContent,
181
+ ho as ikp,
182
+ er as isCitationArtifact,
183
+ or as isString,
184
+ fo as jsxFactory,
185
+ xr as markDownComponentIds,
186
+ rr as maybeRender,
187
+ vr as mergeProps,
188
+ ur as miscellanousComponentIds,
189
+ lr as modalComponentIds,
190
+ tr as toKebabCase,
191
+ ne as useBaseEvents,
192
+ Mo as useBoolean,
193
+ lo as useChat,
194
+ fe as useChatAuth,
195
+ so as useChatBubble,
196
+ be as useChatForm,
197
+ Se as useChatFormState,
198
+ Pe as useChatHistory,
199
+ ze as useChatMarkdown,
200
+ Jr as useColorMode,
201
+ Xr as useColorModeValue,
202
+ jr as useCommandState,
203
+ Gr as useCommandStore,
204
+ Eo as useComponentClassNames,
205
+ Sr as useComposedRefs,
206
+ Fo as useContainerSize,
207
+ Do as useCopyToClipboard,
208
+ Ae as useFormField,
209
+ $e as useHelpMenu,
210
+ Te as useHelpMenuState,
211
+ io as useInkeepChatBubble,
212
+ ge as useInkeepConfig,
213
+ wo as useInkeepOpenState,
214
+ ro as useInkeepSidebarChat,
215
+ $o as useInstantUpdate,
216
+ Oo as useIsMounted,
217
+ zo as useMediaQuery,
218
+ Ge as useMessage,
219
+ Fe as useMessageFeedback,
220
+ ko as useModal,
221
+ no as useOptionalChatBubble,
222
+ Ke as useOptionalMessage,
223
+ to as useOptionalSidebarChat,
224
+ jo as useResizeObserver,
225
+ Ko as useScrollingFades,
226
+ No as useScrollingFadesHorizontal,
227
+ co as useSearch,
228
+ Uo as useSettleAction,
229
+ ot as useShadow,
230
+ ao as useSidebarChat,
231
+ qo as useSimpleScroll,
232
+ qe as useSourceItem,
233
+ _e as useWidget,
231
234
  oe as widgetToggle
232
235
  };
@@ -1 +1 @@
1
- "use client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const p=require("../../providers/base-events-provider.cjs"),c=require("../../providers/chat-form-provider.cjs"),d=require("../modal/modal-provider.cjs"),u=require("./chat-provider.cjs"),m=(e,s)=>{const{logEvent:t}=p.useBaseEvents(),{conversationId:n,messages:i}=u.useChat(),{openForm:a}=c.useChatForm(),r=d.useModal();return{handleAction:l=>{if(e.action.type==="open_form"){l?.onOpenForm?.();const o="name"in e?e:void 0;a?.(e.action.formSettings,o)}else if(e.action.type==="invoke_callback"||e.action.type==="invoke_message_callback"){const o={conversation:{id:n,messages:i}};e.action.type==="invoke_message_callback"?e.action.callback({...o,messageId:s}):e.action.callback({...o}),e.action.shouldCloseModal&&r?.setOpen(!1)}},logHelpAction:()=>{"name"in e&&(t({eventName:"get_help_option_clicked",properties:{getHelpOption:e,conversationId:n}}),e.action.type!=="open_form"&&t({eventName:"user_escalation_indicated",properties:{escalationType:"get_help_option",getHelpOption:e,conversationId:n}}))}}};exports.useChatAction=m;
1
+ "use client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const p=require("../../providers/base-events-provider.cjs"),c=require("../../providers/chat-form-provider.cjs"),u=require("../modal/modal-provider.cjs"),v=require("./chat-provider.cjs"),d=(e,o)=>{const{logEvent:i}=p.useBaseEvents(),{conversationId:t,messages:s}=v.useChat(),{openForm:r}=c.useChatForm(),l=u.useModal();return{handleAction:a=>{if(e.action.type==="open_form"){a?.onOpenForm?.();const n="name"in e?e:void 0;r?.(e.action.formSettings,n)}else if(e.action.type==="invoke_callback"||e.action.type==="invoke_message_callback"){const n={conversation:{id:t,messages:s}};e.action.type==="invoke_message_callback"?e.action.callback({...n,messageId:o}):e.action.callback({...n}),e.action.shouldCloseModal&&l?.setOpen(!1)}},logHelpAction:()=>{"name"in e&&(i({eventName:"get_help_option_clicked",properties:{getHelpOption:e,conversationId:t,...o?{messageId:o}:{}}}),e.action.type!=="open_form"&&i({eventName:"user_escalation_indicated",properties:{escalationType:"get_help_option",getHelpOption:e,conversationId:t,...o?{messageId:o}:{}}}))}}};exports.useChatAction=d;
@@ -3,35 +3,37 @@ import { useBaseEvents as r } from "../../providers/base-events-provider.js";
3
3
  import { useChatForm as m } from "../../providers/chat-form-provider.js";
4
4
  import { useModal as c } from "../modal/modal-provider.js";
5
5
  import { useChat as f } from "./chat-provider.js";
6
- const y = (e, t) => {
7
- const { logEvent: s } = r(), { conversationId: n, messages: i } = f(), { openForm: l } = m(), a = c();
8
- return { handleAction: (p) => {
6
+ const y = (e, o) => {
7
+ const { logEvent: i } = r(), { conversationId: t, messages: l } = f(), { openForm: p } = m(), s = c();
8
+ return { handleAction: (a) => {
9
9
  if (e.action.type === "open_form") {
10
- p?.onOpenForm?.();
11
- const o = "name" in e ? e : void 0;
12
- l?.(e.action.formSettings, o);
10
+ a?.onOpenForm?.();
11
+ const n = "name" in e ? e : void 0;
12
+ p?.(e.action.formSettings, n);
13
13
  } else if (e.action.type === "invoke_callback" || e.action.type === "invoke_message_callback") {
14
- const o = {
14
+ const n = {
15
15
  conversation: {
16
- id: n,
17
- messages: i
16
+ id: t,
17
+ messages: l
18
18
  }
19
19
  };
20
- e.action.type === "invoke_message_callback" ? e.action.callback({ ...o, messageId: t }) : e.action.callback({ ...o }), e.action.shouldCloseModal && a?.setOpen(!1);
20
+ e.action.type === "invoke_message_callback" ? e.action.callback({ ...n, messageId: o }) : e.action.callback({ ...n }), e.action.shouldCloseModal && s?.setOpen(!1);
21
21
  }
22
22
  }, logHelpAction: () => {
23
- "name" in e && (s({
23
+ "name" in e && (i({
24
24
  eventName: "get_help_option_clicked",
25
25
  properties: {
26
26
  getHelpOption: e,
27
- conversationId: n
27
+ conversationId: t,
28
+ ...o ? { messageId: o } : {}
28
29
  }
29
- }), e.action.type !== "open_form" && s({
30
+ }), e.action.type !== "open_form" && i({
30
31
  eventName: "user_escalation_indicated",
31
32
  properties: {
32
33
  escalationType: "get_help_option",
33
34
  getHelpOption: e,
34
- conversationId: n
35
+ conversationId: t,
36
+ ...o ? { messageId: o } : {}
35
37
  }
36
38
  }));
37
39
  } };
@@ -1,2 +1,2 @@
1
- "use client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const Je=require("@ai-sdk/react"),Te=require("./file-upload-input.cjs"),Qe=require("ai"),t=require("react"),We=require("../../providers/config-provider.cjs"),Ze=require("../../providers/chat-auth-provider.cjs"),Xe=require("../../hooks/use-media-query.cjs"),Ye=require("../../hooks/use-conversation-loader.cjs"),et=require("../../hooks/use-initial-conversation.cjs"),N=require("../../utils/generate-uid.cjs"),tt=require("../../providers/base-events-provider.cjs"),st=require("../../providers/chat-form-provider.cjs"),rt=require("../../providers/widget-provider.cjs"),nt=require("@radix-ui/react-use-controllable-state"),at=require("../../hooks/use-streaming-events.cjs"),ot=require("../../hooks/use-input-notification.cjs"),f=require("./chat-error-helpers.cjs"),it=()=>{const{baseSettings:re,aiChatSettings:y}=We.useInkeepConfig(),[c="",m]=nt.useControllableState({prop:y.conversationIdOverride,defaultProp:y.conversationIdOverride??""}),{logEvent:h}=tt.useBaseEvents(),{setConversationId:we,emitToParent:k}=at.useStreamingEvents(),ne=t.useRef(c);t.useEffect(()=>{const e=ne.current;ne.current=c,e!==c&&h({eventName:"chat_conversation_changed",properties:{conversationId:c,previousConversationId:e}})},[c,h]);const[R,E]=t.useState(""),Me=e=>E(e.target.value),{shouldBypassCaptcha:ke,filters:ae,userProperties:O}=re,{authToken:D,isAuthenticated:g,isAuthConfigured:oe,refreshAuthToken:ie,sessionToken:U,refreshSession:$,getCaptchaHeader:F,invalidateCaptcha:d}=Ze.useChatAuth(),{onInputMessageChange:Fe,filters:ce,baseUrl:ue,agentUrl:_e,context:le,headers:de,appId:_,apiKey:S,files:C}=y,fe=t.useRef(F);fe.current=F;const pe=_e||`${ue}/run/api/chat`,ge=S??(g?D:U),{loadConversation:he}=Ye.useConversationLoader({baseUrl:ue,appId:_,authToken:ge,getCaptchaHeader:F,invalidateCaptcha:d,refreshSession:S||g?void 0:$}),[xe,me]=t.useState(!1),B=t.useRef(null);B.current=U;const z=t.useRef(null);z.current=D;const G=t.useRef(void 0);G.current=O&&Object.keys(O).length>0?JSON.stringify(O):void 0;const v=t.useRef(0),H=t.useRef(null),K=t.useRef(null),A=t.useRef(void 0),qe=C?.map(e=>`${e.filename??""}:${e.mediaType}:${e.url.length}:${e.url.slice(0,64)}:${e.url.slice(-32)}`).join(`
2
- `)??"";t.useEffect(()=>{A.current=C?.length?C:void 0},[qe]);const ve=t.useRef(de);ve.current=de;const V=t.useRef(void 0);V.current=ae||ce?JSON.stringify({...ae,...ce}):void 0;const Pe=e=>{switch(f.resolveHttpStatusCode(e)){case 400:try{const s=JSON.parse(e.message??"");return s.detail??s.error?.message??f.RECOVERABLE_FALLBACK_MESSAGE}catch{return e.message?.trim()||f.RECOVERABLE_FALLBACK_MESSAGE}case 401:return oe?"Authentication failed. Please try again.":f.DEFAULT_ERROR_MESSAGE;case 403:return`There seems to be a configuration error. Please contact ${re.organizationDisplayName??"Administrator"}`;case 429:return f.RATE_LIMIT_MESSAGE;default:return f.DEFAULT_ERROR_MESSAGE}},[x,j]=t.useState([]),Le=t.useMemo(()=>new Qe.DefaultChatTransport({api:pe,headers:()=>{const e=S??z.current??B.current;return{"x-inkeep-client-timezone":Intl.DateTimeFormat().resolvedOptions().timeZone,"x-inkeep-client-timestamp":new Date().toISOString(),"x-inkeep-invocation-type":"chat_widget",..._?{"x-inkeep-app-id":_}:{},...e?{Authorization:`Bearer ${e}`}:{},...V.current?{"inkeep-filters":V.current}:{},...G.current?{"x-inkeep-user-properties":G.current}:{},...ve.current}},prepareSendMessagesRequest:async e=>{const i=await fe.current(),s=e.messages[e.messages.length-1];return s||console.warn("[useInkeepChat] prepareSendMessagesRequest called with empty messages array"),{body:{...e.body,id:e.id,messages:s?[s]:[],trigger:e.trigger,messageId:e.messageId},headers:{...e.headers,...i}}},body:{requestContext:le}}),[pe,le,_,S]),{messages:q,sendMessage:J,addToolApprovalResponse:Q,status:ye,setMessages:p,stop:P,error:L}=Je.useChat({transport:Le,onData(e){k(e.type,e.data)},async onFinish(){k("completion",{conversationId:c}),await h({eventName:"assistant_message_received",properties:{conversationId:c}}),h({eventName:"assistant_answer_displayed",properties:{conversationId:c}})},onError(e){console.error("onError",{code:e.code,message:e.message});const i=ke||S?null:f.resolveStreamingAuthError(e);if(i!==null&&v.current<1){v.current++;const a=K.current,r=H.current;(async()=>{if(i==="session"&&oe){const u=await ie();if(!u)throw new Error("Auth token refresh failed");z.current=u}else if(i==="session"){const u=await $();u&&(B.current=u)}else d();if(a){Q(a);return}r&&(p(u=>{let n=[...u];return n.at(-1)?.role==="assistant"&&(n=n.slice(0,-1)),n.at(-1)?.role==="user"&&(n=n.slice(0,-1)),n}),J(r.files?.length?{parts:[{type:"text",text:r.content},...r.files]}:{text:r.content},{body:r.body}))})().catch(()=>{v.current=0,d(),p(u=>{const n=[...u],T=n[n.length-1];if(!T)return n;const w=f.DEFAULT_ERROR_MESSAGE;return T.role==="user"?n.push({id:N.generateUid(16),role:"assistant",parts:[{type:"text",text:w}]}):T.parts=[{type:"text",text:w}],n})});return}v.current=0,i!==null&&d();const s=f.isRecoverableError(e),l=Pe(e);if(h({eventName:"chat_error",properties:{conversationId:c,error:e.message}}),s){ee({title:"Request failed",message:l},f.RECOVERABLE_NOTIFICATION_DURATION_MS),p(r=>{let o=[...r];return o.at(-1)?.role==="assistant"&&(o=o.slice(0,-1)),o.at(-1)?.role==="user"&&(o=o.slice(0,-1)),o});const a=H.current?.content;a&&E(a),Y.current=e;return}p(a=>{const r=[...a],o=r[r.length-1];return o&&(o.role==="user"?r.push({id:N.generateUid(16),role:"assistant",parts:[{type:"text",text:l}]}):o.parts=[{type:"text",text:l}]),r})}}),Re=t.useRef(g);t.useEffect(()=>{const e=Re.current;Re.current=g,e!==g&&(P(),I(null),p([]),m(""),E(""),j([]),d())},[g,P,p,m,d]);const Ee=ye==="submitted",W=ye==="streaming",Ne=t.useMemo(()=>{const e=a=>{if(!a||typeof a!="object")return!1;const r=a;return typeof r.type=="string"&&r.type.startsWith("tool-")},s=[...q??[]].reverse().find(a=>a.role==="assistant");if(!s)return!1;const l=s.parts?.at(-1);return!(!e(l)||l.state!=="output-available"||!l.approval?.id||W)},[q,W]),[Oe,Z]=t.useState(!1),Se=W||Ne&&!Oe,Ce=Ee||Se,De=q.length===0,X=!R.trim()&&x.length===0||Ce,Ue=Xe.useMediaQuery("(max-width: 768px)"),[$e,I]=t.useState(null),Y=t.useRef(null);t.useEffect(()=>{if(L){if(Y.current===L){Y.current=null;return}I(L)}},[L]);const Be=()=>I(null),{inputNotification:ze,showInputNotification:ee,clearInputNotification:Ge}=ot.useInputNotification(),Ae=t.useRef(null);t.useEffect(()=>{Fe?.(R)},[R]);const He=e=>{e.key==="Enter"&&!e.shiftKey&&!X&&!e.nativeEvent.isComposing&&(e.preventDefault(),te())},te=async(e=R)=>{if(X&&(!e||e.trim().length===0)&&x.length===0)return;const i=x;j([]),E(""),v.current=0,K.current=null,Z(!1),await h({eventName:"user_message_submitted",properties:{conversationId:c}});let s=c;s||(s=`conv_${N.generateUid(16)}`,m(s)),we(s);const l=A.current;A.current=void 0;let a,r;if(l?.length){let o;try{o=await Promise.all(i.map(u=>{const n=Te.normalizeFileType(u);return new Promise((T,w)=>{const M=new FileReader;M.onload=()=>{if(typeof M.result!="string"){w(new Error(`Failed to read file "${n.name}"`));return}T({type:"file",url:M.result,mediaType:n.type,filename:n.name})},M.onerror=()=>w(new Error(`Failed to read file "${n.name}"`)),M.readAsDataURL(n)})}))}catch{ee({title:"Failed to attach files",message:"Could not read one or more files. Please try again."});return}r=[...o,...l],a=e.trim()?{parts:[{type:"text",text:e},...r]}:{parts:r}}else if(i.length>0){const o=new DataTransfer;for(const n of i)o.items.add(Te.normalizeFileType(n));const u=o.files;a=e.trim()?{text:e,files:u}:{files:u}}else a={text:e};H.current={content:e,body:{conversationId:s},files:r},J(a,{body:{conversationId:s}})},Ke=t.useCallback(e=>{v.current=0,K.current=e,Z(!1),Q(e)},[Q]),se=t.useCallback(()=>{Z(!0),P().then(()=>{k("aborted",{conversationId:c})})},[P,c,k]),Ie=()=>{Be(),p([]),m(""),d(),A.current=C?.length?C:void 0,h({eventName:"chat_clear_button_clicked",properties:{conversationId:c}})},b=t.useCallback((e,i)=>{I(null),p(i),m(e),d(),A.current=void 0},[p,m,d]),be=t.useCallback(async(e,i)=>{se(),b(e,[]),me(!0);try{const s=await he(e,i);if(s===null)return!1;const a=s[s.length-1]?.role==="user"?[...s,{id:N.generateUid(16),role:"assistant",parts:[{type:"text",text:"This session was interrupted. Please check back in a few minutes or start a new conversation."}]}]:s;return b(e,a),!0}finally{i?.aborted||me(!1)}},[b,he,se]);et.useInitialConversation({conversationId:y.conversationId,effectiveAuthToken:ge,loadAndRestoreSession:be,onLoadFailed:()=>b("",[])});const{openForm:Ve}=st.useChatForm(),je=rt.useWidget();return t.useImperativeHandle(y.chatFunctionsRef,()=>({submitMessage:te,updateInputMessage(e){E(e)},clearChat:Ie,openForm:e=>{je?.setView("chat"),Ve(e,void 0)},focusInput:()=>{Ae.current?.focus()}})),{messages:q,sendMessage:J,addToolApprovalResponse:Ke,isLoading:Ee,isStreaming:Se,isBusy:Ce,error:$e,setError:I,isSubmitDisabled:X,input:R,handleInputChange:Me,handleInputKeyDown:He,handleSubmit:te,stop:se,clear:Ie,inputRef:Ae,isMobile:Ue,files:x,setFiles:j,isNewChat:De,conversationId:c,restoreSession:b,loadAndRestoreSession:be,isSessionLoading:xe,authToken:g?D:U,refreshSession:g?ie:$,getCaptchaHeader:F,invalidateCaptcha:d,inputNotification:ze,showInputNotification:ee,clearInputNotification:Ge}};exports.useInkeepChat=it;
1
+ "use client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const We=require("@ai-sdk/react"),ke=require("./file-upload-input.cjs"),Ze=require("ai"),t=require("react"),Xe=require("../../providers/config-provider.cjs"),Ye=require("../../providers/chat-auth-provider.cjs"),et=require("../../hooks/use-media-query.cjs"),tt=require("../../hooks/use-conversation-loader.cjs"),st=require("../../hooks/use-initial-conversation.cjs"),O=require("../../utils/generate-uid.cjs"),rt=require("../../providers/base-events-provider.cjs"),nt=require("../../providers/chat-form-provider.cjs"),at=require("../../providers/widget-provider.cjs"),ot=require("@radix-ui/react-use-controllable-state"),it=require("../../hooks/use-streaming-events.cjs"),ct=require("../../hooks/use-input-notification.cjs"),f=require("./chat-error-helpers.cjs"),ut=()=>{const{baseSettings:ae,aiChatSettings:y}=Xe.useInkeepConfig(),[u="",m]=ot.useControllableState({prop:y.conversationIdOverride,defaultProp:y.conversationIdOverride??""}),{logEvent:h}=rt.useBaseEvents(),{setConversationId:Me,emitToParent:F}=it.useStreamingEvents(),oe=t.useRef(u);t.useEffect(()=>{const e=oe.current;oe.current=u,e!==u&&h({eventName:"chat_conversation_changed",properties:{conversationId:u,previousConversationId:e}})},[u,h]);const[R,E]=t.useState(""),Fe=e=>E(e.target.value),{shouldBypassCaptcha:_e,filters:ie,userProperties:L,analyticsProperties:D}=ae,{authToken:U,isAuthenticated:g,isAuthConfigured:ce,refreshAuthToken:ue,sessionToken:$,refreshSession:B,getCaptchaHeader:_,invalidateCaptcha:d}=Ye.useChatAuth(),{onInputMessageChange:xe,filters:le,baseUrl:de,agentUrl:Pe,context:fe,headers:pe,appId:x,apiKey:S,files:C}=y,ge=t.useRef(_);ge.current=_;const he=Pe||`${de}/run/api/chat`,me=S??(g?U:$),{loadConversation:ve}=tt.useConversationLoader({baseUrl:de,appId:x,authToken:me,getCaptchaHeader:_,invalidateCaptcha:d,refreshSession:S||g?void 0:B}),[qe,ye]=t.useState(!1),z=t.useRef(null);z.current=$;const G=t.useRef(null);G.current=U;const H=t.useRef(void 0);H.current=L&&Object.keys(L).length>0?JSON.stringify(L):void 0;const K=t.useRef(void 0);K.current=D&&Object.keys(D).length>0?JSON.stringify(D):void 0;const v=t.useRef(0),j=t.useRef(null),J=t.useRef(null),I=t.useRef(void 0),Ne=C?.map(e=>`${e.filename??""}:${e.mediaType}:${e.url.length}:${e.url.slice(0,64)}:${e.url.slice(-32)}`).join(`
2
+ `)??"";t.useEffect(()=>{I.current=C?.length?C:void 0},[Ne]);const Re=t.useRef(pe);Re.current=pe;const V=t.useRef(void 0);V.current=ie||le?JSON.stringify({...ie,...le}):void 0;const Oe=e=>{switch(f.resolveHttpStatusCode(e)){case 400:try{const s=JSON.parse(e.message??"");return s.detail??s.error?.message??f.RECOVERABLE_FALLBACK_MESSAGE}catch{return e.message?.trim()||f.RECOVERABLE_FALLBACK_MESSAGE}case 401:return ce?"Authentication failed. Please try again.":f.DEFAULT_ERROR_MESSAGE;case 403:return`There seems to be a configuration error. Please contact ${ae.organizationDisplayName??"Administrator"}`;case 429:return f.RATE_LIMIT_MESSAGE;default:return f.DEFAULT_ERROR_MESSAGE}},[P,Q]=t.useState([]),Le=t.useMemo(()=>new Ze.DefaultChatTransport({api:he,headers:()=>{const e=S??G.current??z.current;return{"x-inkeep-client-timezone":Intl.DateTimeFormat().resolvedOptions().timeZone,"x-inkeep-client-timestamp":new Date().toISOString(),"x-inkeep-invocation-type":"chat_widget",...x?{"x-inkeep-app-id":x}:{},...e?{Authorization:`Bearer ${e}`}:{},...V.current?{"inkeep-filters":V.current}:{},...H.current?{"x-inkeep-user-properties":H.current}:{},...K.current?{"x-inkeep-properties":K.current}:{},...Re.current}},prepareSendMessagesRequest:async e=>{const i=await ge.current(),s=e.messages[e.messages.length-1];return s||console.warn("[useInkeepChat] prepareSendMessagesRequest called with empty messages array"),{body:{...e.body,id:e.id,messages:s?[s]:[],trigger:e.trigger,messageId:e.messageId},headers:{...e.headers,...i}}},body:{requestContext:fe}}),[he,fe,x,S]),{messages:A,sendMessage:W,addToolApprovalResponse:Z,status:Ee,setMessages:p,stop:q,error:N}=We.useChat({transport:Le,onData(e){F(e.type,e.data)},async onFinish({message:e}){F("completion",{conversationId:u}),await h({eventName:"assistant_message_received",properties:{conversationId:u,messageId:e.id}}),h({eventName:"assistant_answer_displayed",properties:{conversationId:u,messageId:e.id}})},onError(e){console.error("onError",{code:e.code,message:e.message});const i=_e||S?null:f.resolveStreamingAuthError(e);if(i!==null&&v.current<1){v.current++;const a=J.current,r=j.current;(async()=>{if(i==="session"&&ce){const c=await ue();if(!c)throw new Error("Auth token refresh failed");G.current=c}else if(i==="session"){const c=await B();c&&(z.current=c)}else d();if(a){Z(a);return}r&&(p(c=>{let n=[...c];return n.at(-1)?.role==="assistant"&&(n=n.slice(0,-1)),n.at(-1)?.role==="user"&&(n=n.slice(0,-1)),n}),W(r.files?.length?{parts:[{type:"text",text:r.content},...r.files]}:{text:r.content},{body:r.body}))})().catch(()=>{v.current=0,d(),p(c=>{const n=[...c],w=n[n.length-1];if(!w)return n;const k=f.DEFAULT_ERROR_MESSAGE;return w.role==="user"?n.push({id:O.generateUid(16),role:"assistant",parts:[{type:"text",text:k}]}):w.parts=[{type:"text",text:k}],n})});return}v.current=0,i!==null&&d();const s=f.isRecoverableError(e),l=Oe(e);if(h({eventName:"chat_error",properties:{conversationId:u,messageId:A.at(-1)?.id,error:e.message}}),s){se({title:"Request failed",message:l},f.RECOVERABLE_NOTIFICATION_DURATION_MS),p(r=>{let o=[...r];return o.at(-1)?.role==="assistant"&&(o=o.slice(0,-1)),o.at(-1)?.role==="user"&&(o=o.slice(0,-1)),o});const a=j.current?.content;a&&E(a),te.current=e;return}p(a=>{const r=[...a],o=r[r.length-1];return o&&(o.role==="user"?r.push({id:O.generateUid(16),role:"assistant",parts:[{type:"text",text:l}]}):o.parts=[{type:"text",text:l}]),r})}}),Se=t.useRef(g);t.useEffect(()=>{const e=Se.current;Se.current=g,e!==g&&(q(),b(null),p([]),m(""),E(""),Q([]),d())},[g,q,p,m,d]);const Ce=Ee==="submitted",X=Ee==="streaming",De=t.useMemo(()=>{const e=a=>{if(!a||typeof a!="object")return!1;const r=a;return typeof r.type=="string"&&r.type.startsWith("tool-")},s=[...A??[]].reverse().find(a=>a.role==="assistant");if(!s)return!1;const l=s.parts?.at(-1);return!(!e(l)||l.state!=="output-available"||!l.approval?.id||X)},[A,X]),[Ue,Y]=t.useState(!1),Ie=X||De&&!Ue,Ae=Ce||Ie,$e=A.length===0,ee=!R.trim()&&P.length===0||Ae,Be=et.useMediaQuery("(max-width: 768px)"),[ze,b]=t.useState(null),te=t.useRef(null);t.useEffect(()=>{if(N){if(te.current===N){te.current=null;return}b(N)}},[N]);const Ge=()=>b(null),{inputNotification:He,showInputNotification:se,clearInputNotification:Ke}=ct.useInputNotification(),be=t.useRef(null);t.useEffect(()=>{xe?.(R)},[R]);const je=e=>{e.key==="Enter"&&!e.shiftKey&&!ee&&!e.nativeEvent.isComposing&&(e.preventDefault(),re())},re=async(e=R)=>{if(ee&&(!e||e.trim().length===0)&&P.length===0)return;const i=P;Q([]),E(""),v.current=0,J.current=null,Y(!1);let s=u;s||(s=`conv_${O.generateUid(16)}`,m(s)),Me(s),await h({eventName:"user_message_submitted",properties:{conversationId:s}});const l=I.current;I.current=void 0;let a,r;if(l?.length){let o;try{o=await Promise.all(i.map(c=>{const n=ke.normalizeFileType(c);return new Promise((w,k)=>{const M=new FileReader;M.onload=()=>{if(typeof M.result!="string"){k(new Error(`Failed to read file "${n.name}"`));return}w({type:"file",url:M.result,mediaType:n.type,filename:n.name})},M.onerror=()=>k(new Error(`Failed to read file "${n.name}"`)),M.readAsDataURL(n)})}))}catch{se({title:"Failed to attach files",message:"Could not read one or more files. Please try again."});return}r=[...o,...l],a=e.trim()?{parts:[{type:"text",text:e},...r]}:{parts:r}}else if(i.length>0){const o=new DataTransfer;for(const n of i)o.items.add(ke.normalizeFileType(n));const c=o.files;a=e.trim()?{text:e,files:c}:{files:c}}else a={text:e};j.current={content:e,body:{conversationId:s},files:r},W(a,{body:{conversationId:s}})},Je=t.useCallback(e=>{v.current=0,J.current=e,Y(!1),Z(e)},[Z]),ne=t.useCallback(()=>{Y(!0),q().then(()=>{F("aborted",{conversationId:u})})},[q,u,F]),Te=()=>{Ge(),p([]),m(""),d(),I.current=C?.length?C:void 0,h({eventName:"chat_clear_button_clicked",properties:{conversationId:u}})},T=t.useCallback((e,i)=>{b(null),p(i),m(e),d(),I.current=void 0},[p,m,d]),we=t.useCallback(async(e,i)=>{ne(),T(e,[]),ye(!0);try{const s=await ve(e,i);if(s===null)return!1;const a=s[s.length-1]?.role==="user"?[...s,{id:O.generateUid(16),role:"assistant",parts:[{type:"text",text:"This session was interrupted. Please check back in a few minutes or start a new conversation."}]}]:s;return T(e,a),!0}finally{i?.aborted||ye(!1)}},[T,ve,ne]);st.useInitialConversation({conversationId:y.conversationId,effectiveAuthToken:me,loadAndRestoreSession:we,onLoadFailed:()=>T("",[])});const{openForm:Ve}=nt.useChatForm(),Qe=at.useWidget();return t.useImperativeHandle(y.chatFunctionsRef,()=>({submitMessage:re,updateInputMessage(e){E(e)},clearChat:Te,openForm:e=>{Qe?.setView("chat"),Ve(e,void 0)},focusInput:()=>{be.current?.focus()}})),{messages:A,sendMessage:W,addToolApprovalResponse:Je,isLoading:Ce,isStreaming:Ie,isBusy:Ae,error:ze,setError:b,isSubmitDisabled:ee,input:R,handleInputChange:Fe,handleInputKeyDown:je,handleSubmit:re,stop:ne,clear:Te,inputRef:be,isMobile:Be,files:P,setFiles:Q,isNewChat:$e,conversationId:u,restoreSession:T,loadAndRestoreSession:we,isSessionLoading:qe,authToken:g?U:$,refreshSession:g?ue:B,getCaptchaHeader:_,invalidateCaptcha:d,inputNotification:He,showInputNotification:se,clearInputNotification:Ke}};exports.useInkeepChat=ut;