@inkeep/cxkit-primitives 0.5.80 → 0.5.82

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/index.d.ts CHANGED
@@ -877,6 +877,9 @@ export declare const CommandSeparator: React_2.ForwardRefExoticComponent<Omit<Re
877
877
  export declare type ComponentID = keyof typeof componentIDs;
878
878
 
879
879
  export declare const componentIDs: {
880
+ sidebarChat__Root: "sidebarChat__Root";
881
+ sidebarChat__Resizer: "sidebarChat__Resizer";
882
+ sidebarChat__Presence: "sidebarChat__Presence";
880
883
  icon: "icon";
881
884
  loadingIndicator__Text: "loadingIndicator__Text";
882
885
  loadingIndicator__Dots: "loadingIndicator__Dots";
@@ -2144,7 +2147,7 @@ declare interface EmbeddedChatPrimitiveFormFieldProps extends ComponentPropsWith
2144
2147
 
2145
2148
  declare const EmbeddedChatPrimitiveFormFieldSelect: (props: ComponentPropsWithRef<typeof PrimitiveFormFieldSelect>) => JSX.Element;
2146
2149
 
2147
- declare const EmbeddedChatPrimitiveFormFieldSelectContent: ForwardRefExoticComponent< PolymorphicProps & Omit<SelectPrimitive.SelectContentProps & RefAttributes<HTMLDivElement>, "_id" | "position"> & Partial<Pick<SelectPrimitive.SelectContentProps & RefAttributes<HTMLDivElement>, "_id" | "position">>>;
2150
+ declare const EmbeddedChatPrimitiveFormFieldSelectContent: ForwardRefExoticComponent< PolymorphicProps & Omit<SelectPrimitive.SelectContentProps & RefAttributes<HTMLDivElement>, "position" | "_id"> & Partial<Pick<SelectPrimitive.SelectContentProps & RefAttributes<HTMLDivElement>, "position" | "_id">>>;
2148
2151
 
2149
2152
  declare const EmbeddedChatPrimitiveFormFieldSelectIcon: ForwardRefExoticComponent< PolymorphicProps & Omit<SelectPrimitive.SelectIconProps & RefAttributes<HTMLSpanElement>, "children" | "asChild" | "_id"> & Partial<Pick<SelectPrimitive.SelectIconProps & RefAttributes<HTMLSpanElement>, "children" | "asChild" | "_id">>>;
2150
2153
 
@@ -3048,7 +3051,7 @@ declare interface IntelligentFormPrimitiveFormFieldProps extends ComponentPropsW
3048
3051
 
3049
3052
  declare const IntelligentFormPrimitiveFormFieldSelect: (props: ComponentPropsWithRef<typeof PrimitiveFormFieldSelect_2>) => JSX.Element;
3050
3053
 
3051
- declare const IntelligentFormPrimitiveFormFieldSelectContent: ForwardRefExoticComponent< PolymorphicProps & Omit<SelectPrimitive.SelectContentProps & RefAttributes<HTMLDivElement>, "_id" | "position"> & Partial<Pick<SelectPrimitive.SelectContentProps & RefAttributes<HTMLDivElement>, "_id" | "position">>>;
3054
+ declare const IntelligentFormPrimitiveFormFieldSelectContent: ForwardRefExoticComponent< PolymorphicProps & Omit<SelectPrimitive.SelectContentProps & RefAttributes<HTMLDivElement>, "position" | "_id"> & Partial<Pick<SelectPrimitive.SelectContentProps & RefAttributes<HTMLDivElement>, "position" | "_id">>>;
3052
3055
 
3053
3056
  declare const IntelligentFormPrimitiveFormFieldSelectIcon: ForwardRefExoticComponent< PolymorphicProps & Omit<SelectPrimitive.SelectIconProps & RefAttributes<HTMLSpanElement>, "children" | "asChild" | "_id"> & Partial<Pick<SelectPrimitive.SelectIconProps & RefAttributes<HTMLSpanElement>, "children" | "asChild" | "_id">>>;
3054
3057
 
@@ -3292,6 +3295,13 @@ export declare const PortalWithTheme: ({ children, ...props }: PortalProps) => J
3292
3295
 
3293
3296
  declare type PossibleRef<T> = React_2.Ref<T | null> | undefined;
3294
3297
 
3298
+ declare interface PresenceProps extends ComponentPropsWithoutRef<'div'> {
3299
+ present: boolean;
3300
+ unmountOnExit?: boolean;
3301
+ onExitComplete?: () => void;
3302
+ children: ReactNode;
3303
+ }
3304
+
3295
3305
  declare const PrimitiveAskAITrigger: ForwardRefExoticComponent< PolymorphicProps & Omit<{
3296
3306
  children?: React.ReactNode;
3297
3307
  } & Omit<Omit< ClassAttributes<HTMLDivElement> & HTMLAttributes<HTMLDivElement> & {
@@ -3856,6 +3866,72 @@ export declare type ShadowContextValue = {
3856
3866
 
3857
3867
  export declare const SHARE_QUERY_PARAM = "conversationId";
3858
3868
 
3869
+ export declare const SidebarChatComponentIds: {
3870
+ sidebarChat__Root: "sidebarChat__Root";
3871
+ sidebarChat__Resizer: "sidebarChat__Resizer";
3872
+ sidebarChat__Presence: "sidebarChat__Presence";
3873
+ };
3874
+
3875
+ export declare type SidebarChatContextValue = ReturnType<typeof useInkeepSidebarChat>;
3876
+
3877
+ export declare namespace SidebarChatPrimitive {
3878
+ export {
3879
+ SidebarChatPrimitiveRoot,
3880
+ SidebarChatPrimitiveResizer,
3881
+ SidebarChatPrimitiveRoot as Root,
3882
+ SidebarChatPrimitiveResizer as Resizer
3883
+ }
3884
+ }
3885
+
3886
+ declare const SidebarChatPrimitiveResizer: ForwardRefExoticComponent<Omit< PolymorphicProps & Omit< DetailedHTMLProps<HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "_id"> & Partial<Pick< DetailedHTMLProps<HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "_id">>, "ref"> & RefAttributes<HTMLDivElement>>;
3887
+
3888
+ declare const SidebarChatPrimitiveRoot: ForwardRefExoticComponent<Omit<Omit< PolymorphicProps & Omit< PresenceProps & RefAttributes<HTMLDivElement>, "_id"> & Partial<Pick< PresenceProps & RefAttributes<HTMLDivElement>, "_id">>, "present"> & SidebarChatProps, "ref"> & RefAttributes<HTMLDivElement>>;
3889
+
3890
+ export declare interface SidebarChatProps {
3891
+ /**
3892
+ * The position of the sidebar chat.
3893
+ * This also influences the resizing of the component.
3894
+ * @default 'right'
3895
+ */
3896
+ position?: 'left' | 'right';
3897
+ /**
3898
+ * The trigger selector for the sidebar chat.
3899
+ * @default '[data-inkeep-sidebar-chat-trigger]'
3900
+ */
3901
+ triggerSelector?: string;
3902
+ /**
3903
+ * The minimum width of the sidebar chat.
3904
+ * @default 250
3905
+ */
3906
+ minWidth?: number;
3907
+ /**
3908
+ * The maximum width of the sidebar chat.
3909
+ * @default 600
3910
+ */
3911
+ maxWidth?: number;
3912
+ /**
3913
+ * The default width of the sidebar chat.
3914
+ * @default 400
3915
+ */
3916
+ defaultWidth?: number;
3917
+ /**
3918
+ * Whether the sidebar is open by default.
3919
+ * @default false
3920
+ */
3921
+ defaultOpen?: boolean;
3922
+ /**
3923
+ * Threshold factor for auto-closing when resizing.
3924
+ * When dragging below (minWidth * autoCloseThreshold), the sidebar will auto-close.
3925
+ * @default 0.7 (70% of minimum width)
3926
+ */
3927
+ autoCloseThreshold?: number;
3928
+ }
3929
+
3930
+ export declare const SidebarChatProvider: React.FC<{
3931
+ children: React.ReactNode;
3932
+ value: SidebarChatContextValue;
3933
+ }>;
3934
+
3859
3935
  declare type Size = {
3860
3936
  width: number | undefined;
3861
3937
  height: number | undefined;
@@ -4081,6 +4157,20 @@ declare const useInkeepSearch: () => {
4081
4157
  setShowSearchResults: Dispatch<SetStateAction<boolean>>;
4082
4158
  };
4083
4159
 
4160
+ export declare const useInkeepSidebarChat: ({ position, minWidth, maxWidth, defaultWidth, defaultOpen, autoCloseThreshold, }: SidebarChatProps) => {
4161
+ width: number;
4162
+ setWidth: Dispatch<SetStateAction<number>>;
4163
+ position: "left" | "right";
4164
+ minWidth: number;
4165
+ maxWidth: number;
4166
+ autoCloseThreshold: number;
4167
+ isOpen: boolean;
4168
+ setIsOpen: Dispatch<SetStateAction<boolean>>;
4169
+ toggle: () => void;
4170
+ open: () => void;
4171
+ close: () => void;
4172
+ };
4173
+
4084
4174
  /**
4085
4175
  * Hook for temporarily disabling transitions/animations.
4086
4176
  * Useful when you need to prevent unwanted transition effects during state changes.
@@ -4136,6 +4226,20 @@ export declare const useModal: () => {
4136
4226
 
4137
4227
  export declare const useOptionalMessage: () => MessageContextValue | undefined;
4138
4228
 
4229
+ export declare const useOptionalSidebarChat: () => {
4230
+ width: number;
4231
+ setWidth: Dispatch<SetStateAction<number>>;
4232
+ position: "left" | "right";
4233
+ minWidth: number;
4234
+ maxWidth: number;
4235
+ autoCloseThreshold: number;
4236
+ isOpen: boolean;
4237
+ setIsOpen: Dispatch<SetStateAction<boolean>>;
4238
+ toggle: () => void;
4239
+ open: () => void;
4240
+ close: () => void;
4241
+ } | undefined;
4242
+
4139
4243
  export declare type UserContextValue = {
4140
4244
  userProperties: UserProperties;
4141
4245
  };
@@ -4170,6 +4274,20 @@ export declare function useSettleAction(): [boolean, SettleFn];
4170
4274
 
4171
4275
  export declare const useShadow: () => ShadowContextValue | undefined;
4172
4276
 
4277
+ export declare const useSidebarChat: () => {
4278
+ width: number;
4279
+ setWidth: Dispatch<SetStateAction<number>>;
4280
+ position: "left" | "right";
4281
+ minWidth: number;
4282
+ maxWidth: number;
4283
+ autoCloseThreshold: number;
4284
+ isOpen: boolean;
4285
+ setIsOpen: Dispatch<SetStateAction<boolean>>;
4286
+ toggle: () => void;
4287
+ open: () => void;
4288
+ close: () => void;
4289
+ };
4290
+
4173
4291
  export declare const useSourceItem: () => SourceItemContextValue;
4174
4292
 
4175
4293
  export declare const useUser: () => UserContextValue;
@@ -4184,6 +4302,7 @@ export declare const WebWidgetInteractionType: {
4184
4302
  readonly EmbeddedSearch: "EmbeddedSearch";
4185
4303
  readonly EmbeddedSearchAndChat: "EmbeddedSearchAndChat";
4186
4304
  readonly IntelligentForm: "IntelligentForm";
4305
+ readonly SidebarChat: "SidebarChat";
4187
4306
  };
4188
4307
 
4189
4308
  export declare interface WidgetConfig extends InkeepConfig {
package/dist/index.js CHANGED
@@ -1,166 +1,174 @@
1
- import { AttachmentItemProvider as p, useAttachmentItem as i } from "./providers/attachment-item-provider.js";
2
- import { AttachmentsBarProvider as f, useAttachmentsBar as u } from "./providers/attachments-bar-provider.js";
3
- import { BaseEventsProvider as C, useBaseEvents as l } from "./providers/base-events-provider.js";
4
- import { ChatEventsProvider as h, useChatEvents as I } from "./providers/chat-events-provider.js";
5
- import { ChatFormProvider as P, useChatForm as S, useChatFormState as g } from "./providers/chat-form-provider.js";
6
- import { InkeepConfigProvider as M, WebWidgetInteractionType as b, useInkeepConfig as k } from "./providers/config-provider.js";
7
- import { InkeepConversationProvider as A, SHARE_QUERY_PARAM as E, useInkeepConversation as R } from "./providers/conversation-provider.js";
8
- import { FeedbackItemProvider as y, useFeedbackItem as T } from "./providers/feedback-item-provider.js";
9
- import { FeedbackProvider as H, useMessageFeedback as U } from "./providers/feedback-provider.js";
1
+ import { AttachmentItemProvider as d, useAttachmentItem as p } from "./providers/attachment-item-provider.js";
2
+ import { AttachmentsBarProvider as u, useAttachmentsBar as x } from "./providers/attachments-bar-provider.js";
3
+ import { BaseEventsProvider as l, useBaseEvents as h } from "./providers/base-events-provider.js";
4
+ import { ChatEventsProvider as I, useChatEvents as P } from "./providers/chat-events-provider.js";
5
+ import { ChatFormProvider as S, useChatForm as g, useChatFormState as b } from "./providers/chat-form-provider.js";
6
+ import { InkeepConfigProvider as M, WebWidgetInteractionType as k, useInkeepConfig as B } from "./providers/config-provider.js";
7
+ import { InkeepConversationProvider as E, SHARE_QUERY_PARAM as R, useInkeepConversation as w } from "./providers/conversation-provider.js";
8
+ import { FeedbackItemProvider as T, useFeedbackItem as W } from "./providers/feedback-item-provider.js";
9
+ import { FeedbackProvider as U, useMessageFeedback as D } from "./providers/feedback-provider.js";
10
10
  import { FormFieldProvider as z, useFormField as L } from "./providers/form-field-provider.js";
11
- import { HelpMenuProvider as Q, useHelpMenu as _, useHelpMenuState as j } from "./providers/help-menu-provider.js";
12
- import { ChatMarkdownProvider as K, useChatMarkdown as N } from "./providers/markdown-provider.js";
13
- import { MessageAttachmentsProvider as q, useMessageAttachments as G } from "./providers/message-attachments-provider.js";
14
- import { MessageProvider as X, useMessage as Z, useOptionalMessage as $ } from "./providers/message-provider.js";
15
- import { RootProvider as oe } from "./providers/root-provider.js";
16
- import { SourceItemProvider as te, useSourceItem as me } from "./providers/source-item-provider.js";
17
- import { ThemeProvider as se } from "./providers/theme-provider.js";
18
- import { UserProvider as pe, useUser as ie } from "./providers/user-provider.js";
19
- import { WidgetProvider as fe, useWidget as ue } from "./providers/widget-provider.js";
20
- import { ikp as Ce, jsxFactory as le } from "./components/factory.js";
11
+ import { HelpMenuProvider as _, useHelpMenu as j, useHelpMenuState as J } from "./providers/help-menu-provider.js";
12
+ import { ChatMarkdownProvider as N, useChatMarkdown as Y } from "./providers/markdown-provider.js";
13
+ import { MessageAttachmentsProvider as G, useMessageAttachments as V } from "./providers/message-attachments-provider.js";
14
+ import { MessageProvider as Z, useMessage as $, useOptionalMessage as ee } from "./providers/message-provider.js";
15
+ import { RootProvider as re } from "./providers/root-provider.js";
16
+ import { SourceItemProvider as me, useSourceItem as ae } from "./providers/source-item-provider.js";
17
+ import { ThemeProvider as ne } from "./providers/theme-provider.js";
18
+ import { UserProvider as de, useUser as pe } from "./providers/user-provider.js";
19
+ import { WidgetProvider as ue, useWidget as xe } from "./providers/widget-provider.js";
20
+ import { SidebarChatProvider as le, useInkeepSidebarChat as he, useOptionalSidebarChat as ve, useSidebarChat as Ie } from "./providers/sidebar-chat-provider.js";
21
+ import { ikp as ce, jsxFactory as Se } from "./components/factory.js";
21
22
  import * as e from "./components/embedded-chat.js";
22
- import { ChatProvider as he, useChat as Ie } from "./components/embedded-chat/chat-provider.js";
23
- import * as o from "./components/embedded-search.js";
24
- import { SearchProvider as Pe, SearchProviderImpl as Se, useSearch as ge } from "./components/embedded-search/search-provider.js";
25
- import * as r from "./components/modal.js";
26
- import { ModalProvider as Me, useModal as be } from "./components/modal/modal-provider.js";
27
- import * as t from "./components/intelligent-form.js";
28
- import { IntelligentFormProvider as Be, IntelligentFormProviderImpl as Ae, useIntelligentForm as Ee } from "./components/intelligent-form/intelligent-form-provider.js";
29
- import * as m from "./components/chat-button.js";
30
- import * as a from "./components/searchbar.js";
31
- import { useBoolean as we } from "./hooks/use-boolean.js";
32
- import { passesBrowserStorageChecks as Te, useBrowserStorage as We } from "./hooks/use-browser-storage.js";
33
- import { useComponentClassNames as Ue } from "./hooks/use-component-classnames.js";
34
- import { useContainerSize as ze } from "./hooks/use-container-size.js";
35
- import { useCopyToClipboard as Oe } from "./hooks/use-copy-to-clipboard.js";
36
- import { useInstantUpdate as _e } from "./hooks/use-instant-update.js";
37
- import { useIsMounted as Je } from "./hooks/use-is-mounted.js";
38
- import { useMediaQuery as Ne } from "./hooks/use-media-query.js";
39
- import { useResizeObserver as qe } from "./hooks/use-resize-observer.js";
40
- import { useScrollingFades as Ve } from "./hooks/use-scrolling-fades.js";
41
- import { useSettleAction as Ze } from "./hooks/use-settle-action.js";
42
- import { useScrollToBottom as eo } from "./hooks/use-scroll-to-bottom.js";
43
- import { callAll as ro, dataAttr as to, getInitials as mo, getMessageContent as ao, isString as so, maybeRender as no, parseIfJson as po, toKebabCase as io } from "./utils/misc.js";
44
- import { SearchBarComponentIds as uo, aiChatComponentIds as xo, aiSearchComponentIds as Co, chatButtonComponentIds as lo, componentIDs as vo, intelligentFormComponentIds as ho, markDownComponentIds as Io, miscellanousComponentIds as co, modalComponentIds as Po } from "./utils/component-ids.js";
45
- import { composeRefs as go, useComposedRefs as Fo } from "./utils/compose-refs.js";
46
- import { Portal as bo } from "./atoms/portal.js";
47
- import { CustomIcon as Bo } from "./atoms/icons/custom-icon.js";
48
- import { BuiltInIconRenderer as Eo } from "./atoms/icons/built-in-icon-renderer.js";
49
- import { PortalWithTheme as wo } from "./atoms/portal-with-theme.js";
50
- import { Command as To, CommandDialog as Wo, CommandEmpty as Ho, CommandInput as Uo, CommandItem as Do, CommandList as zo, CommandLoading as Lo, CommandRoot as Oo, CommandSeparator as Qo, defaultFilter as _o, useCommandState as jo, useCommandStore as Jo } from "./atoms/cmdk/index.js";
51
- import { ErrorBoundary as No } from "./atoms/error-boundary.js";
52
- import { InkeepShadow as qo, InkeepShadowProvider as Go, ShadowContext as Vo, useShadow as Xo } from "./atoms/shadow/context.js";
23
+ import * as o from "./components/sidebar-chat/index.js";
24
+ import { ChatProvider as be, useChat as Fe } from "./components/embedded-chat/chat-provider.js";
25
+ import * as r from "./components/embedded-search.js";
26
+ import { SearchProvider as ke, SearchProviderImpl as Be, useSearch as Ae } from "./components/embedded-search/search-provider.js";
27
+ import * as t from "./components/modal.js";
28
+ import { ModalProvider as Re, useModal as we } from "./components/modal/modal-provider.js";
29
+ import * as m from "./components/intelligent-form.js";
30
+ import { IntelligentFormProvider as Te, IntelligentFormProviderImpl as We, useIntelligentForm as He } from "./components/intelligent-form/intelligent-form-provider.js";
31
+ import * as a from "./components/chat-button.js";
32
+ import * as s from "./components/searchbar.js";
33
+ import { useBoolean as De } from "./hooks/use-boolean.js";
34
+ import { passesBrowserStorageChecks as ze, useBrowserStorage as Le } from "./hooks/use-browser-storage.js";
35
+ import { useComponentClassNames as _e } from "./hooks/use-component-classnames.js";
36
+ import { useContainerSize as Je } from "./hooks/use-container-size.js";
37
+ import { useCopyToClipboard as Ne } from "./hooks/use-copy-to-clipboard.js";
38
+ import { useInstantUpdate as qe } from "./hooks/use-instant-update.js";
39
+ import { useIsMounted as Ve } from "./hooks/use-is-mounted.js";
40
+ import { useMediaQuery as Ze } from "./hooks/use-media-query.js";
41
+ import { useResizeObserver as eo } from "./hooks/use-resize-observer.js";
42
+ import { useScrollingFades as ro } from "./hooks/use-scrolling-fades.js";
43
+ import { useSettleAction as mo } from "./hooks/use-settle-action.js";
44
+ import { useScrollToBottom as so } from "./hooks/use-scroll-to-bottom.js";
45
+ import { callAll as io, dataAttr as po, getInitials as fo, getMessageContent as uo, isString as xo, maybeRender as Co, parseIfJson as lo, toKebabCase as ho } from "./utils/misc.js";
46
+ import { SearchBarComponentIds as Io, SidebarChatComponentIds as Po, aiChatComponentIds as co, aiSearchComponentIds as So, chatButtonComponentIds as go, componentIDs as bo, intelligentFormComponentIds as Fo, markDownComponentIds as Mo, miscellanousComponentIds as ko, modalComponentIds as Bo } from "./utils/component-ids.js";
47
+ import { composeRefs as Eo, useComposedRefs as Ro } from "./utils/compose-refs.js";
48
+ import { Portal as yo } from "./atoms/portal.js";
49
+ import { CustomIcon as Wo } from "./atoms/icons/custom-icon.js";
50
+ import { BuiltInIconRenderer as Uo } from "./atoms/icons/built-in-icon-renderer.js";
51
+ import { PortalWithTheme as Oo } from "./atoms/portal-with-theme.js";
52
+ import { Command as Lo, CommandDialog as Qo, CommandEmpty as _o, CommandInput as jo, CommandItem as Jo, CommandList as Ko, CommandLoading as No, CommandRoot as Yo, CommandSeparator as qo, defaultFilter as Go, useCommandState as Vo, useCommandStore as Xo } from "./atoms/cmdk/index.js";
53
+ import { ErrorBoundary as $o } from "./atoms/error-boundary.js";
54
+ import { InkeepShadow as or, InkeepShadowProvider as rr, ShadowContext as tr, useShadow as mr } from "./atoms/shadow/context.js";
53
55
  export {
54
- p as AttachmentItemProvider,
55
- f as AttachmentsBarProvider,
56
- C as BaseEventsProvider,
57
- Eo as BuiltInIconRenderer,
58
- m as ChatButtonPrimitive,
59
- h as ChatEventsProvider,
60
- P as ChatFormProvider,
61
- K as ChatMarkdownProvider,
62
- he as ChatProvider,
63
- To as Command,
64
- Wo as CommandDialog,
65
- Ho as CommandEmpty,
66
- Uo as CommandInput,
67
- Do as CommandItem,
68
- zo as CommandList,
69
- Lo as CommandLoading,
70
- Oo as CommandRoot,
71
- Qo as CommandSeparator,
72
- Bo as CustomIcon,
56
+ d as AttachmentItemProvider,
57
+ u as AttachmentsBarProvider,
58
+ l as BaseEventsProvider,
59
+ Uo as BuiltInIconRenderer,
60
+ a as ChatButtonPrimitive,
61
+ I as ChatEventsProvider,
62
+ S as ChatFormProvider,
63
+ N as ChatMarkdownProvider,
64
+ be as ChatProvider,
65
+ Lo as Command,
66
+ Qo as CommandDialog,
67
+ _o as CommandEmpty,
68
+ jo as CommandInput,
69
+ Jo as CommandItem,
70
+ Ko as CommandList,
71
+ No as CommandLoading,
72
+ Yo as CommandRoot,
73
+ qo as CommandSeparator,
74
+ Wo as CustomIcon,
73
75
  e as EmbeddedChatPrimitive,
74
- o as EmbeddedSearchPrimitive,
75
- No as ErrorBoundary,
76
- y as FeedbackItemProvider,
77
- H as FeedbackProvider,
76
+ r as EmbeddedSearchPrimitive,
77
+ $o as ErrorBoundary,
78
+ T as FeedbackItemProvider,
79
+ U as FeedbackProvider,
78
80
  z as FormFieldProvider,
79
- Q as HelpMenuProvider,
81
+ _ as HelpMenuProvider,
80
82
  M as InkeepConfigProvider,
81
- A as InkeepConversationProvider,
82
- qo as InkeepShadow,
83
- Go as InkeepShadowProvider,
84
- t as IntelligentFormPrimitive,
85
- Be as IntelligentFormProvider,
86
- Ae as IntelligentFormProviderImpl,
87
- q as MessageAttachmentsProvider,
88
- X as MessageProvider,
89
- r as ModalPrimitive,
90
- Me as ModalProvider,
91
- bo as Portal,
92
- wo as PortalWithTheme,
93
- oe as RootProvider,
94
- E as SHARE_QUERY_PARAM,
95
- uo as SearchBarComponentIds,
96
- a as SearchBarPrimitive,
97
- Pe as SearchProvider,
98
- Se as SearchProviderImpl,
99
- Vo as ShadowContext,
100
- te as SourceItemProvider,
101
- se as ThemeProvider,
102
- pe as UserProvider,
103
- b as WebWidgetInteractionType,
104
- fe as WidgetProvider,
105
- xo as aiChatComponentIds,
106
- Co as aiSearchComponentIds,
107
- ro as callAll,
108
- lo as chatButtonComponentIds,
109
- vo as componentIDs,
110
- go as composeRefs,
111
- to as dataAttr,
112
- _o as defaultFilter,
113
- mo as getInitials,
114
- ao as getMessageContent,
115
- Ce as ikp,
116
- ho as intelligentFormComponentIds,
117
- so as isString,
118
- le as jsxFactory,
119
- Io as markDownComponentIds,
120
- no as maybeRender,
121
- co as miscellanousComponentIds,
122
- Po as modalComponentIds,
123
- po as parseIfJson,
124
- Te as passesBrowserStorageChecks,
125
- io as toKebabCase,
126
- i as useAttachmentItem,
127
- u as useAttachmentsBar,
128
- l as useBaseEvents,
129
- we as useBoolean,
130
- We as useBrowserStorage,
131
- Ie as useChat,
132
- I as useChatEvents,
133
- S as useChatForm,
134
- g as useChatFormState,
135
- N as useChatMarkdown,
136
- jo as useCommandState,
137
- Jo as useCommandStore,
138
- Ue as useComponentClassNames,
139
- Fo as useComposedRefs,
140
- ze as useContainerSize,
141
- Oe as useCopyToClipboard,
142
- T as useFeedbackItem,
83
+ E as InkeepConversationProvider,
84
+ or as InkeepShadow,
85
+ rr as InkeepShadowProvider,
86
+ m as IntelligentFormPrimitive,
87
+ Te as IntelligentFormProvider,
88
+ We as IntelligentFormProviderImpl,
89
+ G as MessageAttachmentsProvider,
90
+ Z as MessageProvider,
91
+ t as ModalPrimitive,
92
+ Re as ModalProvider,
93
+ yo as Portal,
94
+ Oo as PortalWithTheme,
95
+ re as RootProvider,
96
+ R as SHARE_QUERY_PARAM,
97
+ Io as SearchBarComponentIds,
98
+ s as SearchBarPrimitive,
99
+ ke as SearchProvider,
100
+ Be as SearchProviderImpl,
101
+ tr as ShadowContext,
102
+ Po as SidebarChatComponentIds,
103
+ o as SidebarChatPrimitive,
104
+ le as SidebarChatProvider,
105
+ me as SourceItemProvider,
106
+ ne as ThemeProvider,
107
+ de as UserProvider,
108
+ k as WebWidgetInteractionType,
109
+ ue as WidgetProvider,
110
+ co as aiChatComponentIds,
111
+ So as aiSearchComponentIds,
112
+ io as callAll,
113
+ go as chatButtonComponentIds,
114
+ bo as componentIDs,
115
+ Eo as composeRefs,
116
+ po as dataAttr,
117
+ Go as defaultFilter,
118
+ fo as getInitials,
119
+ uo as getMessageContent,
120
+ ce as ikp,
121
+ Fo as intelligentFormComponentIds,
122
+ xo as isString,
123
+ Se as jsxFactory,
124
+ Mo as markDownComponentIds,
125
+ Co as maybeRender,
126
+ ko as miscellanousComponentIds,
127
+ Bo as modalComponentIds,
128
+ lo as parseIfJson,
129
+ ze as passesBrowserStorageChecks,
130
+ ho as toKebabCase,
131
+ p as useAttachmentItem,
132
+ x as useAttachmentsBar,
133
+ h as useBaseEvents,
134
+ De as useBoolean,
135
+ Le as useBrowserStorage,
136
+ Fe as useChat,
137
+ P as useChatEvents,
138
+ g as useChatForm,
139
+ b as useChatFormState,
140
+ Y as useChatMarkdown,
141
+ Vo as useCommandState,
142
+ Xo as useCommandStore,
143
+ _e as useComponentClassNames,
144
+ Ro as useComposedRefs,
145
+ Je as useContainerSize,
146
+ Ne as useCopyToClipboard,
147
+ W as useFeedbackItem,
143
148
  L as useFormField,
144
- _ as useHelpMenu,
145
- j as useHelpMenuState,
146
- k as useInkeepConfig,
147
- R as useInkeepConversation,
148
- _e as useInstantUpdate,
149
- Ee as useIntelligentForm,
150
- Je as useIsMounted,
151
- Ne as useMediaQuery,
152
- Z as useMessage,
153
- G as useMessageAttachments,
154
- U as useMessageFeedback,
155
- be as useModal,
156
- $ as useOptionalMessage,
157
- qe as useResizeObserver,
158
- eo as useScrollToBottom,
159
- Ve as useScrollingFades,
160
- ge as useSearch,
161
- Ze as useSettleAction,
162
- Xo as useShadow,
163
- me as useSourceItem,
164
- ie as useUser,
165
- ue as useWidget
149
+ j as useHelpMenu,
150
+ J as useHelpMenuState,
151
+ B as useInkeepConfig,
152
+ w as useInkeepConversation,
153
+ he as useInkeepSidebarChat,
154
+ qe as useInstantUpdate,
155
+ He as useIntelligentForm,
156
+ Ve as useIsMounted,
157
+ Ze as useMediaQuery,
158
+ $ as useMessage,
159
+ V as useMessageAttachments,
160
+ D as useMessageFeedback,
161
+ we as useModal,
162
+ ee as useOptionalMessage,
163
+ ve as useOptionalSidebarChat,
164
+ eo as useResizeObserver,
165
+ so as useScrollToBottom,
166
+ ro as useScrollingFades,
167
+ Ae as useSearch,
168
+ mo as useSettleAction,
169
+ mr as useShadow,
170
+ Ie as useSidebarChat,
171
+ ae as useSourceItem,
172
+ pe as useUser,
173
+ xe as useWidget
166
174
  };
@@ -1 +1 @@
1
- "use client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const B=require("react/jsx-runtime"),t=require("react"),f=require("../atoms/api/analytics/events.cjs"),b=require("./config-provider.cjs"),x=require("./user-provider.cjs"),E=t.createContext(void 0),q=({children:e})=>{const{baseSettings:s,componentType:r}=b.useInkeepConfig(),{apiKey:i,analyticsApiBaseUrl:c,tags:a,privacyPreferences:m,env:g,analyticsProperties:v}=s,{userProperties:u}=x.useUser(),l=t.useMemo(()=>({widgetLibraryVersion:"0.5.80",componentType:r,tags:a}),[r,a]),d=!m.optOutAllAnalytics&&g!=="development",P={logEvent:t.useCallback(async n=>{const o={...l,...n.properties,...v},p={eventName:n.eventName,properties:o,userProperties:u},y=["modal_opened","modal_closed"].includes(n.eventName);if(d&&!y){if("conversation"in o&&!o.conversation?.id)return;f.logEvent(p,i,c)}s.onEvent?.(p)},[d,s,i,c,u,l,v])};return B.jsx(E.Provider,{value:P,children:e})},C=()=>{const e=t.useContext(E);if(!e)throw new Error("useBaseEvents must be used within a BaseEventsProvider");return e};exports.BaseEventsProvider=q;exports.useBaseEvents=C;
1
+ "use client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const B=require("react/jsx-runtime"),t=require("react"),f=require("../atoms/api/analytics/events.cjs"),b=require("./config-provider.cjs"),x=require("./user-provider.cjs"),E=t.createContext(void 0),q=({children:e})=>{const{baseSettings:s,componentType:r}=b.useInkeepConfig(),{apiKey:i,analyticsApiBaseUrl:c,tags:a,privacyPreferences:m,env:g,analyticsProperties:v}=s,{userProperties:u}=x.useUser(),l=t.useMemo(()=>({widgetLibraryVersion:"0.5.82",componentType:r,tags:a}),[r,a]),d=!m.optOutAllAnalytics&&g!=="development",P={logEvent:t.useCallback(async n=>{const o={...l,...n.properties,...v},p={eventName:n.eventName,properties:o,userProperties:u},y=["modal_opened","modal_closed"].includes(n.eventName);if(d&&!y){if("conversation"in o&&!o.conversation?.id)return;f.logEvent(p,i,c)}s.onEvent?.(p)},[d,s,i,c,u,l,v])};return B.jsx(E.Provider,{value:P,children:e})},C=()=>{const e=t.useContext(E);if(!e)throw new Error("useBaseEvents must be used within a BaseEventsProvider");return e};exports.BaseEventsProvider=q;exports.useBaseEvents=C;
@@ -7,7 +7,7 @@ import { useUser as A } from "./user-provider.js";
7
7
  const u = B(void 0), $ = ({ children: e }) => {
8
8
  const { baseSettings: t, componentType: s } = w(), { apiKey: r, analyticsApiBaseUrl: i, tags: a, privacyPreferences: d, env: E, analyticsProperties: c } = t, { userProperties: v } = A(), p = P(
9
9
  () => ({
10
- widgetLibraryVersion: "0.5.80",
10
+ widgetLibraryVersion: "0.5.82",
11
11
  componentType: s,
12
12
  tags: a
13
13
  }),
@@ -1 +1 @@
1
- "use client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const S=require("react/jsx-runtime"),m=require("merge-anything"),r=require("react"),n=require("../utils/default-settings.cjs"),f=require("../atoms/shadow/context.cjs"),s={ChatButton:"ChatButton",CustomTrigger:"CustomTrigger",SearchBar:"SearchBar",EmbeddedChat:"EmbeddedChat",EmbeddedSearch:"EmbeddedSearch",EmbeddedSearchAndChat:"EmbeddedSearchAndChat",IntelligentForm:"IntelligentForm"},a={prefix:"ikp",aiChatSettings:n.defaultInkeepAIChatSettings,baseSettings:n.defaultInkeepBaseSettings,searchSettings:n.defaultInkeepSearchSettings,componentType:s.EmbeddedChat},d=r.createContext(a),p=({children:e,value:i})=>{const c=f.useShadow(),g=(t,o,C)=>["baseSettings","searchSettings","aiChatSettings"].includes(C)&&!o?t:o,u={baseSettings:c??{}},h=r.useMemo(()=>{const t=m.mergeAndCompare(g,a,u,i??{});return t.baseSettings.apiKey||console.warn("Inkeep API key is missing."),t},[i]);return S.jsx(d.Provider,{value:h,children:e})},b=()=>{const e=r.useContext(d);if(!e)throw new Error("useInkeepConfig must be used within a ConfigProvider");return e};exports.InkeepConfigProvider=p;exports.WebWidgetInteractionType=s;exports.useInkeepConfig=b;
1
+ "use client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const S=require("react/jsx-runtime"),m=require("merge-anything"),r=require("react"),n=require("../utils/default-settings.cjs"),f=require("../atoms/shadow/context.cjs"),s={ChatButton:"ChatButton",CustomTrigger:"CustomTrigger",SearchBar:"SearchBar",EmbeddedChat:"EmbeddedChat",EmbeddedSearch:"EmbeddedSearch",EmbeddedSearchAndChat:"EmbeddedSearchAndChat",IntelligentForm:"IntelligentForm",SidebarChat:"SidebarChat"},a={prefix:"ikp",aiChatSettings:n.defaultInkeepAIChatSettings,baseSettings:n.defaultInkeepBaseSettings,searchSettings:n.defaultInkeepSearchSettings,componentType:s.EmbeddedChat},d=r.createContext(a),p=({children:e,value:i})=>{const c=f.useShadow(),g=(t,o,C)=>["baseSettings","searchSettings","aiChatSettings"].includes(C)&&!o?t:o,u={baseSettings:c??{}},h=r.useMemo(()=>{const t=m.mergeAndCompare(g,a,u,i??{});return t.baseSettings.apiKey||console.warn("Inkeep API key is missing."),t},[i]);return S.jsx(d.Provider,{value:h,children:e})},b=()=>{const e=r.useContext(d);if(!e)throw new Error("useInkeepConfig must be used within a ConfigProvider");return e};exports.InkeepConfigProvider=p;exports.WebWidgetInteractionType=s;exports.useInkeepConfig=b;
@@ -11,19 +11,20 @@ const k = {
11
11
  EmbeddedChat: "EmbeddedChat",
12
12
  EmbeddedSearch: "EmbeddedSearch",
13
13
  EmbeddedSearchAndChat: "EmbeddedSearchAndChat",
14
- IntelligentForm: "IntelligentForm"
15
- }, r = {
14
+ IntelligentForm: "IntelligentForm",
15
+ SidebarChat: "SidebarChat"
16
+ }, o = {
16
17
  prefix: "ikp",
17
18
  // Default prefix
18
19
  aiChatSettings: b,
19
20
  baseSettings: S,
20
21
  searchSettings: f,
21
22
  componentType: k.EmbeddedChat
22
- }, i = p(r), B = ({ children: e, value: n }) => {
23
- const s = I(), a = (t, o, g) => ["baseSettings", "searchSettings", "aiChatSettings"].includes(g) && !o ? t : o, d = {
23
+ }, i = p(o), B = ({ children: e, value: n }) => {
24
+ const s = I(), a = (t, r, g) => ["baseSettings", "searchSettings", "aiChatSettings"].includes(g) && !r ? t : r, d = {
24
25
  baseSettings: s ?? {}
25
26
  }, c = C(() => {
26
- const t = h(a, r, d, n ?? {});
27
+ const t = h(a, o, d, n ?? {});
27
28
  return t.baseSettings.apiKey || console.warn("Inkeep API key is missing."), t;
28
29
  }, [n]);
29
30
  return /* @__PURE__ */ m(i.Provider, { value: c, children: e });
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const i=require("./attachment-item-provider.cjs"),a=require("./attachments-bar-provider.cjs"),n=require("./base-events-provider.cjs"),d=require("./chat-events-provider.cjs"),e=require("./chat-form-provider.cjs"),r=require("./config-provider.cjs"),t=require("./conversation-provider.cjs"),u=require("./feedback-item-provider.cjs"),v=require("./feedback-provider.cjs"),P=require("./form-field-provider.cjs"),o=require("./help-menu-provider.cjs"),c=require("./markdown-provider.cjs"),m=require("./message-attachments-provider.cjs"),s=require("./message-provider.cjs"),I=require("./root-provider.cjs"),h=require("./source-item-provider.cjs"),F=require("./theme-provider.cjs"),g=require("./user-provider.cjs"),M=require("./widget-provider.cjs");exports.AttachmentItemProvider=i.AttachmentItemProvider;exports.useAttachmentItem=i.useAttachmentItem;exports.AttachmentsBarProvider=a.AttachmentsBarProvider;exports.useAttachmentsBar=a.useAttachmentsBar;exports.BaseEventsProvider=n.BaseEventsProvider;exports.useBaseEvents=n.useBaseEvents;exports.ChatEventsProvider=d.ChatEventsProvider;exports.useChatEvents=d.useChatEvents;exports.ChatFormProvider=e.ChatFormProvider;exports.useChatForm=e.useChatForm;exports.useChatFormState=e.useChatFormState;exports.InkeepConfigProvider=r.InkeepConfigProvider;exports.WebWidgetInteractionType=r.WebWidgetInteractionType;exports.useInkeepConfig=r.useInkeepConfig;exports.InkeepConversationProvider=t.InkeepConversationProvider;exports.SHARE_QUERY_PARAM=t.SHARE_QUERY_PARAM;exports.useInkeepConversation=t.useInkeepConversation;exports.FeedbackItemProvider=u.FeedbackItemProvider;exports.useFeedbackItem=u.useFeedbackItem;exports.FeedbackProvider=v.FeedbackProvider;exports.useMessageFeedback=v.useMessageFeedback;exports.FormFieldProvider=P.FormFieldProvider;exports.useFormField=P.useFormField;exports.HelpMenuProvider=o.HelpMenuProvider;exports.useHelpMenu=o.useHelpMenu;exports.useHelpMenuState=o.useHelpMenuState;exports.ChatMarkdownProvider=c.ChatMarkdownProvider;exports.useChatMarkdown=c.useChatMarkdown;exports.MessageAttachmentsProvider=m.MessageAttachmentsProvider;exports.useMessageAttachments=m.useMessageAttachments;exports.MessageProvider=s.MessageProvider;exports.useMessage=s.useMessage;exports.useOptionalMessage=s.useOptionalMessage;exports.RootProvider=I.RootProvider;exports.SourceItemProvider=h.SourceItemProvider;exports.useSourceItem=h.useSourceItem;exports.ThemeProvider=F.ThemeProvider;exports.UserProvider=g.UserProvider;exports.useUser=g.useUser;exports.WidgetProvider=M.WidgetProvider;exports.useWidget=M.useWidget;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("./attachment-item-provider.cjs"),d=require("./attachments-bar-provider.cjs"),n=require("./base-events-provider.cjs"),u=require("./chat-events-provider.cjs"),r=require("./chat-form-provider.cjs"),t=require("./config-provider.cjs"),o=require("./conversation-provider.cjs"),v=require("./feedback-item-provider.cjs"),P=require("./feedback-provider.cjs"),c=require("./form-field-provider.cjs"),s=require("./help-menu-provider.cjs"),m=require("./markdown-provider.cjs"),h=require("./message-attachments-provider.cjs"),i=require("./message-provider.cjs"),M=require("./root-provider.cjs"),C=require("./source-item-provider.cjs"),k=require("./theme-provider.cjs"),g=require("./user-provider.cjs"),I=require("./widget-provider.cjs"),e=require("./sidebar-chat-provider.cjs");exports.AttachmentItemProvider=a.AttachmentItemProvider;exports.useAttachmentItem=a.useAttachmentItem;exports.AttachmentsBarProvider=d.AttachmentsBarProvider;exports.useAttachmentsBar=d.useAttachmentsBar;exports.BaseEventsProvider=n.BaseEventsProvider;exports.useBaseEvents=n.useBaseEvents;exports.ChatEventsProvider=u.ChatEventsProvider;exports.useChatEvents=u.useChatEvents;exports.ChatFormProvider=r.ChatFormProvider;exports.useChatForm=r.useChatForm;exports.useChatFormState=r.useChatFormState;exports.InkeepConfigProvider=t.InkeepConfigProvider;exports.WebWidgetInteractionType=t.WebWidgetInteractionType;exports.useInkeepConfig=t.useInkeepConfig;exports.InkeepConversationProvider=o.InkeepConversationProvider;exports.SHARE_QUERY_PARAM=o.SHARE_QUERY_PARAM;exports.useInkeepConversation=o.useInkeepConversation;exports.FeedbackItemProvider=v.FeedbackItemProvider;exports.useFeedbackItem=v.useFeedbackItem;exports.FeedbackProvider=P.FeedbackProvider;exports.useMessageFeedback=P.useMessageFeedback;exports.FormFieldProvider=c.FormFieldProvider;exports.useFormField=c.useFormField;exports.HelpMenuProvider=s.HelpMenuProvider;exports.useHelpMenu=s.useHelpMenu;exports.useHelpMenuState=s.useHelpMenuState;exports.ChatMarkdownProvider=m.ChatMarkdownProvider;exports.useChatMarkdown=m.useChatMarkdown;exports.MessageAttachmentsProvider=h.MessageAttachmentsProvider;exports.useMessageAttachments=h.useMessageAttachments;exports.MessageProvider=i.MessageProvider;exports.useMessage=i.useMessage;exports.useOptionalMessage=i.useOptionalMessage;exports.RootProvider=M.RootProvider;exports.SourceItemProvider=C.SourceItemProvider;exports.useSourceItem=C.useSourceItem;exports.ThemeProvider=k.ThemeProvider;exports.UserProvider=g.UserProvider;exports.useUser=g.useUser;exports.WidgetProvider=I.WidgetProvider;exports.useWidget=I.useWidget;exports.SidebarChatProvider=e.SidebarChatProvider;exports.useInkeepSidebarChat=e.useInkeepSidebarChat;exports.useOptionalSidebarChat=e.useOptionalSidebarChat;exports.useSidebarChat=e.useSidebarChat;