@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.
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const i=require("./factory.cjs"),d=require("./embedded-chat.cjs"),t=require("./embedded-chat/chat-provider.cjs"),a=require("./embedded-search.cjs"),e=require("./embedded-search/search-provider.cjs"),n=require("./modal.cjs"),o=require("./modal/modal-provider.cjs"),l=require("./intelligent-form.cjs"),r=require("./intelligent-form/intelligent-form-provider.cjs"),c=require("./chat-button.cjs"),m=require("./searchbar.cjs");exports.ikp=i.ikp;exports.jsxFactory=i.jsxFactory;exports.EmbeddedChatPrimitive=d;exports.ChatProvider=t.ChatProvider;exports.useChat=t.useChat;exports.EmbeddedSearchPrimitive=a;exports.SearchProvider=e.SearchProvider;exports.SearchProviderImpl=e.SearchProviderImpl;exports.useSearch=e.useSearch;exports.ModalPrimitive=n;exports.ModalProvider=o.ModalProvider;exports.useModal=o.useModal;exports.IntelligentFormPrimitive=l;exports.IntelligentFormProvider=r.IntelligentFormProvider;exports.IntelligentFormProviderImpl=r.IntelligentFormProviderImpl;exports.useIntelligentForm=r.useIntelligentForm;exports.ChatButtonPrimitive=c;exports.SearchBarPrimitive=m;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const i=require("./factory.cjs"),d=require("./embedded-chat.cjs"),a=require("./sidebar-chat/index.cjs"),t=require("./embedded-chat/chat-provider.cjs"),n=require("./embedded-search.cjs"),e=require("./embedded-search/search-provider.cjs"),l=require("./modal.cjs"),o=require("./modal/modal-provider.cjs"),c=require("./intelligent-form.cjs"),r=require("./intelligent-form/intelligent-form-provider.cjs"),m=require("./chat-button.cjs"),s=require("./searchbar.cjs");exports.ikp=i.ikp;exports.jsxFactory=i.jsxFactory;exports.EmbeddedChatPrimitive=d;exports.SidebarChatPrimitive=a;exports.ChatProvider=t.ChatProvider;exports.useChat=t.useChat;exports.EmbeddedSearchPrimitive=n;exports.SearchProvider=e.SearchProvider;exports.SearchProviderImpl=e.SearchProviderImpl;exports.useSearch=e.useSearch;exports.ModalPrimitive=l;exports.ModalProvider=o.ModalProvider;exports.useModal=o.useModal;exports.IntelligentFormPrimitive=c;exports.IntelligentFormProvider=r.IntelligentFormProvider;exports.IntelligentFormProviderImpl=r.IntelligentFormProviderImpl;exports.useIntelligentForm=r.useIntelligentForm;exports.ChatButtonPrimitive=m;exports.SearchBarPrimitive=s;
@@ -1,31 +1,33 @@
1
- import { ikp as p, jsxFactory as s } from "./factory.js";
1
+ import { ikp as s, jsxFactory as l } from "./factory.js";
2
2
  import * as r from "./embedded-chat.js";
3
- import { ChatProvider as h, useChat as n } from "./embedded-chat/chat-provider.js";
4
- import * as e from "./embedded-search.js";
5
- import { SearchProvider as x, SearchProviderImpl as P, useSearch as f } from "./embedded-search/search-provider.js";
6
- import * as o from "./modal.js";
7
- import { ModalProvider as u, useModal as F } from "./modal/modal-provider.js";
8
- import * as t from "./intelligent-form.js";
9
- import { IntelligentFormProvider as S, IntelligentFormProviderImpl as b, useIntelligentForm as g } from "./intelligent-form/intelligent-form-provider.js";
10
- import * as i from "./chat-button.js";
11
- import * as m from "./searchbar.js";
3
+ import * as e from "./sidebar-chat/index.js";
4
+ import { ChatProvider as x, useChat as n } from "./embedded-chat/chat-provider.js";
5
+ import * as o from "./embedded-search.js";
6
+ import { SearchProvider as P, SearchProviderImpl as f, useSearch as c } from "./embedded-search/search-provider.js";
7
+ import * as t from "./modal.js";
8
+ import { ModalProvider as b, useModal as u } from "./modal/modal-provider.js";
9
+ import * as i from "./intelligent-form.js";
10
+ import { IntelligentFormProvider as F, IntelligentFormProviderImpl as I, useIntelligentForm as g } from "./intelligent-form/intelligent-form-provider.js";
11
+ import * as m from "./chat-button.js";
12
+ import * as a from "./searchbar.js";
12
13
  export {
13
- i as ChatButtonPrimitive,
14
- h as ChatProvider,
14
+ m as ChatButtonPrimitive,
15
+ x as ChatProvider,
15
16
  r as EmbeddedChatPrimitive,
16
- e as EmbeddedSearchPrimitive,
17
- t as IntelligentFormPrimitive,
18
- S as IntelligentFormProvider,
19
- b as IntelligentFormProviderImpl,
20
- o as ModalPrimitive,
21
- u as ModalProvider,
22
- m as SearchBarPrimitive,
23
- x as SearchProvider,
24
- P as SearchProviderImpl,
25
- p as ikp,
26
- s as jsxFactory,
17
+ o as EmbeddedSearchPrimitive,
18
+ i as IntelligentFormPrimitive,
19
+ F as IntelligentFormProvider,
20
+ I as IntelligentFormProviderImpl,
21
+ t as ModalPrimitive,
22
+ b as ModalProvider,
23
+ a as SearchBarPrimitive,
24
+ P as SearchProvider,
25
+ f as SearchProviderImpl,
26
+ e as SidebarChatPrimitive,
27
+ s as ikp,
28
+ l as jsxFactory,
27
29
  n as useChat,
28
30
  g as useIntelligentForm,
29
- F as useModal,
30
- f as useSearch
31
+ u as useModal,
32
+ c as useSearch
31
33
  };
@@ -1 +1 @@
1
- "use client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const s=require("react"),p=require("@radix-ui/react-use-controllable-state"),d=require("../../providers/base-events-provider.cjs"),f=l=>{const{isOpen:t,onOpenChange:c,shortcutKey:o}=l??{},{logEvent:i}=d.useBaseEvents(),[r=!1,n]=p.useControllableState({prop:t,defaultProp:t,onChange:c}),a=s.useRef(!0);return s.useEffect(()=>{if(a.current){a.current=!1;return}i({eventName:r?"modal_opened":"modal_closed",properties:{}})},[r]),s.useEffect(()=>{const u=e=>{o&&(e.metaKey||e.ctrlKey)&&e.key.toLowerCase()===o.toLowerCase()&&(e.preventDefault(),e.stopPropagation(),n(!0)),e.key==="Escape"&&t&&(e.preventDefault(),n(!1))};return document.addEventListener("keydown",u),()=>document.removeEventListener("keydown",u)},[o,n,t]),{isOpen:r,setOpen:n,shortcutKey:o}};exports.useInkeepModal=f;
1
+ "use client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("react"),d=require("@radix-ui/react-use-controllable-state"),g=require("../../providers/base-events-provider.cjs"),f=require("../use-component-trigger.cjs"),m=i=>{const{isOpen:r,onOpenChange:l,shortcutKey:o,triggerSelector:c="[data-inkeep-modal-trigger]"}=i??{},{logEvent:p}=g.useBaseEvents(),[s=!1,t]=d.useControllableState({prop:r,defaultProp:r,onChange:l});f.useComponentTrigger({triggerSelector:c,onTriggerClick:()=>t(n=>!n)});const u=a.useRef(!0);return a.useEffect(()=>{if(u.current){u.current=!1;return}p({eventName:s?"modal_opened":"modal_closed",properties:{}})},[s]),a.useEffect(()=>{const n=e=>{o&&(e.metaKey||e.ctrlKey)&&e.key.toLowerCase()===o.toLowerCase()&&(e.preventDefault(),e.stopPropagation(),t(!0)),e.key==="Escape"&&r&&(e.preventDefault(),t(!1))};return document.addEventListener("keydown",n),()=>document.removeEventListener("keydown",n)},[o,t,r]),{isOpen:s,setOpen:t,shortcutKey:o}};exports.useInkeepModal=m;
@@ -1,33 +1,44 @@
1
1
  "use client";
2
- import { useRef as i, useEffect as p } from "react";
3
- import { useControllableState as f } from "@radix-ui/react-use-controllable-state";
4
- import { useBaseEvents as d } from "../../providers/base-events-provider.js";
5
- const k = (u) => {
6
- const { isOpen: o, onOpenChange: l, shortcutKey: t } = u ?? {}, { logEvent: c } = d(), [r = !1, n] = f({
7
- prop: o,
8
- defaultProp: o,
2
+ import { useRef as m, useEffect as p } from "react";
3
+ import { useControllableState as d } from "@radix-ui/react-use-controllable-state";
4
+ import { useBaseEvents as f } from "../../providers/base-events-provider.js";
5
+ import { useComponentTrigger as g } from "../use-component-trigger.js";
6
+ const w = (i) => {
7
+ const {
8
+ isOpen: t,
9
+ onOpenChange: l,
10
+ shortcutKey: r,
11
+ triggerSelector: u = "[data-inkeep-modal-trigger]"
12
+ } = i ?? {}, { logEvent: c } = f(), [s = !1, o] = d({
13
+ prop: t,
14
+ defaultProp: t,
9
15
  onChange: l
10
- }), s = i(!0);
16
+ });
17
+ g({
18
+ triggerSelector: u,
19
+ onTriggerClick: () => o((n) => !n)
20
+ });
21
+ const a = m(!0);
11
22
  return p(() => {
12
- if (s.current) {
13
- s.current = !1;
23
+ if (a.current) {
24
+ a.current = !1;
14
25
  return;
15
26
  }
16
27
  c({
17
- eventName: r ? "modal_opened" : "modal_closed",
28
+ eventName: s ? "modal_opened" : "modal_closed",
18
29
  properties: {}
19
30
  });
20
- }, [r]), p(() => {
21
- const a = (e) => {
22
- t && (e.metaKey || e.ctrlKey) && e.key.toLowerCase() === t.toLowerCase() && (e.preventDefault(), e.stopPropagation(), n(!0)), e.key === "Escape" && o && (e.preventDefault(), n(!1));
31
+ }, [s]), p(() => {
32
+ const n = (e) => {
33
+ r && (e.metaKey || e.ctrlKey) && e.key.toLowerCase() === r.toLowerCase() && (e.preventDefault(), e.stopPropagation(), o(!0)), e.key === "Escape" && t && (e.preventDefault(), o(!1));
23
34
  };
24
- return document.addEventListener("keydown", a), () => document.removeEventListener("keydown", a);
25
- }, [t, n, o]), {
26
- isOpen: r,
27
- setOpen: n,
28
- shortcutKey: t
35
+ return document.addEventListener("keydown", n), () => document.removeEventListener("keydown", n);
36
+ }, [r, o, t]), {
37
+ isOpen: s,
38
+ setOpen: o,
39
+ shortcutKey: r
29
40
  };
30
41
  };
31
42
  export {
32
- k as useInkeepModal
43
+ w as useInkeepModal
33
44
  };
@@ -0,0 +1 @@
1
+ "use client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const f=require("react/jsx-runtime"),d=require("react"),m=require("@zag-js/presence"),o=require("@zag-js/react");function b(t){const e=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(t){for(const n in t)if(n!=="default"){const r=Object.getOwnPropertyDescriptor(t,n);Object.defineProperty(e,n,r.get?r:{enumerable:!0,get:()=>t[n]})}}return e.default=t,Object.freeze(e)}const i=b(m),g=d.forwardRef((t,e)=>{const{unmountOnExit:n=!1,present:r,onExitComplete:u,children:a,...l}=t,p=o.useMachine(i.machine,{present:r,onExitComplete:u}),c=i.connect(p,o.normalizeProps);return!c.present&&n?null:f.jsx("div",{hidden:!c.present,"data-state":c.skip?void 0:r?"open":"closed",ref:s=>{c.setNode(s),typeof e=="function"?e(s):e&&(e.current=s)},...l,children:a})});exports.Presence=g;
@@ -0,0 +1,26 @@
1
+ "use client";
2
+ import { jsx as f } from "react/jsx-runtime";
3
+ import { forwardRef as l } from "react";
4
+ import * as o from "@zag-js/presence";
5
+ import { useMachine as u, normalizeProps as d } from "@zag-js/react";
6
+ const E = l((s, e) => {
7
+ const { unmountOnExit: i = !1, present: r, onExitComplete: c, children: p, ...m } = s, a = u(o.machine, {
8
+ present: r,
9
+ onExitComplete: c
10
+ }), t = o.connect(a, d);
11
+ return !t.present && i ? null : /* @__PURE__ */ f(
12
+ "div",
13
+ {
14
+ hidden: !t.present,
15
+ "data-state": t.skip ? void 0 : r ? "open" : "closed",
16
+ ref: (n) => {
17
+ t.setNode(n), typeof e == "function" ? e(n) : e && (e.current = n);
18
+ },
19
+ ...m,
20
+ children: p
21
+ }
22
+ );
23
+ });
24
+ export {
25
+ E as Presence
26
+ };
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("react/jsx-runtime"),d=require("react"),c=require("../factory.cjs"),s=require("../../providers/sidebar-chat-provider.cjs"),h=require("./use-sidebar-chat-resizer.cjs"),b=require("../use-component-trigger.cjs"),g=require("../presence.cjs"),l=require("../../utils/misc.cjs"),R=require("../../utils/split-props.cjs"),C=c.ikp(g.Presence,{_id:"sidebarChat__Root"}),S=({triggerSelector:i})=>{const{toggle:e}=s.useSidebarChat();return b.useComponentTrigger({triggerSelector:i,onTriggerClick:e}),null},P=["position","triggerSelector","minWidth","maxWidth","defaultWidth","defaultOpen","autoCloseThreshold"],u=d.forwardRef((i,e)=>{const[t,a]=R.splitProps(i,P),r=s.useInkeepSidebarChat(t);return o.jsxs(s.SidebarChatProvider,{value:r,children:[o.jsx(S,{triggerSelector:t.triggerSelector||"[data-inkeep-sidebar-chat-trigger]"}),o.jsx(C,{ref:e,present:r.isOpen,"data-sidebar":"","data-position":r.position,"data-open":l.dataAttr(r.isOpen),style:{"--width":`${r.width}px`},...a})]})}),m=c.ikp("div",{_id:"sidebarChat__Resizer"}),p=d.forwardRef((i,e)=>{const{position:t}=s.useSidebarChat(),{onMouseDown:a,resizerRef:r}=h.useSidebarChatResizer();return o.jsx(m,{ref:n=>{typeof e=="function"?e(n):e&&(e.current=n),r.current=n},"data-position":t,onMouseDown:a,...i})});exports.Resizer=p;exports.Root=u;exports.SidebarChatPrimitiveResizer=p;exports.SidebarChatPrimitiveRoot=u;
@@ -0,0 +1,71 @@
1
+ import { jsxs as m, jsx as a } from "react/jsx-runtime";
2
+ import { forwardRef as n } from "react";
3
+ import { ikp as d } from "../factory.js";
4
+ import { useInkeepSidebarChat as c, SidebarChatProvider as h, useSidebarChat as p } from "../../providers/sidebar-chat-provider.js";
5
+ import { useSidebarChatResizer as f } from "./use-sidebar-chat-resizer.js";
6
+ import { useComponentTrigger as g } from "../use-component-trigger.js";
7
+ import { Presence as u } from "../presence.js";
8
+ import { dataAttr as l } from "../../utils/misc.js";
9
+ import { splitProps as b } from "../../utils/split-props.js";
10
+ const R = d(u, {
11
+ _id: "sidebarChat__Root"
12
+ }), C = ({ triggerSelector: e }) => {
13
+ const { toggle: r } = p();
14
+ return g({
15
+ triggerSelector: e,
16
+ onTriggerClick: r
17
+ }), null;
18
+ }, S = [
19
+ "position",
20
+ "triggerSelector",
21
+ "minWidth",
22
+ "maxWidth",
23
+ "defaultWidth",
24
+ "defaultOpen",
25
+ "autoCloseThreshold"
26
+ ], j = n((e, r) => {
27
+ const [i, o] = b(e, S), t = c(i);
28
+ return /* @__PURE__ */ m(h, { value: t, children: [
29
+ /* @__PURE__ */ a(
30
+ C,
31
+ {
32
+ triggerSelector: i.triggerSelector || "[data-inkeep-sidebar-chat-trigger]"
33
+ }
34
+ ),
35
+ /* @__PURE__ */ a(
36
+ R,
37
+ {
38
+ ref: r,
39
+ present: t.isOpen,
40
+ "data-sidebar": "",
41
+ "data-position": t.position,
42
+ "data-open": l(t.isOpen),
43
+ style: {
44
+ "--width": `${t.width}px`
45
+ },
46
+ ...o
47
+ }
48
+ )
49
+ ] });
50
+ }), P = d("div", {
51
+ _id: "sidebarChat__Resizer"
52
+ }), y = n((e, r) => {
53
+ const { position: i } = p(), { onMouseDown: o, resizerRef: t } = f();
54
+ return /* @__PURE__ */ a(
55
+ P,
56
+ {
57
+ ref: (s) => {
58
+ typeof r == "function" ? r(s) : r && (r.current = s), t.current = s;
59
+ },
60
+ "data-position": i,
61
+ onMouseDown: o,
62
+ ...e
63
+ }
64
+ );
65
+ });
66
+ export {
67
+ y as Resizer,
68
+ j as Root,
69
+ y as SidebarChatPrimitiveResizer,
70
+ j as SidebarChatPrimitiveRoot
71
+ };
@@ -0,0 +1 @@
1
+ "use client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react"),R=require("../../providers/sidebar-chat-provider.cjs"),M=()=>{const{width:r,setWidth:o,position:u,minWidth:s,maxWidth:i,autoCloseThreshold:f,close:c}=R.useSidebarChat(),v=e.useRef(null),n=e.useRef(!1),d=e.useRef(0),a=e.useRef(0),l=s*f;return e.useEffect(()=>{const t=b=>{if(!n.current)return;const m=b.clientX-d.current,g=u==="right"?-m:m,w=a.current+g;if(w<l){c();return}const y=Math.max(s,Math.min(i,w));o(y)},h=()=>{n.current=!1,document.body.style.cursor="",document.body.style.userSelect=""};return window.addEventListener("mousemove",t),window.addEventListener("mouseup",h),()=>{window.removeEventListener("mousemove",t),window.removeEventListener("mouseup",h)}},[o,u,s,i,c,l]),{onMouseDown:e.useCallback(t=>{n.current=!0,d.current=t.clientX,a.current=r,document.body.style.cursor="ew-resize",document.body.style.userSelect="none",t.preventDefault()},[r]),resizerRef:v}};exports.useSidebarChatResizer=M;
@@ -0,0 +1,34 @@
1
+ "use client";
2
+ import { useRef as t, useEffect as b, useCallback as D } from "react";
3
+ import { useSidebarChat as M } from "../../providers/sidebar-chat-provider.js";
4
+ const L = () => {
5
+ const { width: r, setWidth: s, position: u, minWidth: n, maxWidth: c, autoCloseThreshold: f, close: i } = M(), v = t(null), o = t(!1), d = t(0), a = t(0), l = n * f;
6
+ return b(() => {
7
+ const e = (g) => {
8
+ if (!o.current) return;
9
+ const h = g.clientX - d.current, p = u === "right" ? -h : h, w = a.current + p;
10
+ if (w < l) {
11
+ i();
12
+ return;
13
+ }
14
+ const y = Math.max(n, Math.min(c, w));
15
+ s(y);
16
+ }, m = () => {
17
+ o.current = !1, document.body.style.cursor = "", document.body.style.userSelect = "";
18
+ };
19
+ return window.addEventListener("mousemove", e), window.addEventListener("mouseup", m), () => {
20
+ window.removeEventListener("mousemove", e), window.removeEventListener("mouseup", m);
21
+ };
22
+ }, [s, u, n, c, i, l]), {
23
+ onMouseDown: D(
24
+ (e) => {
25
+ o.current = !0, d.current = e.clientX, a.current = r, document.body.style.cursor = "ew-resize", document.body.style.userSelect = "none", e.preventDefault();
26
+ },
27
+ [r]
28
+ ),
29
+ resizerRef: v
30
+ };
31
+ };
32
+ export {
33
+ L as useSidebarChatResizer
34
+ };
@@ -0,0 +1 @@
1
+ "use client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("react"),i=n=>{const{triggerSelector:e,onTriggerClick:t}=n;o.useEffect(()=>{const r=c=>{c.target?.matches?.(e)&&t?.()};return document.addEventListener("click",r),()=>{document.removeEventListener("click",r)}},[e,t])};exports.useComponentTrigger=i;
@@ -0,0 +1,16 @@
1
+ "use client";
2
+ import { useEffect as o } from "react";
3
+ const s = (c) => {
4
+ const { triggerSelector: e, onTriggerClick: t } = c;
5
+ o(() => {
6
+ const r = (n) => {
7
+ n.target?.matches?.(e) && t?.();
8
+ };
9
+ return document.addEventListener("click", r), () => {
10
+ document.removeEventListener("click", r);
11
+ };
12
+ }, [e, t]);
13
+ };
14
+ export {
15
+ s as useComponentTrigger
16
+ };
package/dist/index.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const c=require("./providers/attachment-item-provider.cjs"),l=require("./providers/attachments-bar-provider.cjs"),v=require("./providers/base-events-provider.cjs"),C=require("./providers/chat-events-provider.cjs"),s=require("./providers/chat-form-provider.cjs"),n=require("./providers/config-provider.cjs"),a=require("./providers/conversation-provider.cjs"),P=require("./providers/feedback-item-provider.cjs"),I=require("./providers/feedback-provider.cjs"),h=require("./providers/form-field-provider.cjs"),i=require("./providers/help-menu-provider.cjs"),p=require("./providers/markdown-provider.cjs"),g=require("./providers/message-attachments-provider.cjs"),d=require("./providers/message-provider.cjs"),R=require("./providers/root-provider.cjs"),S=require("./providers/source-item-provider.cjs"),w=require("./providers/theme-provider.cjs"),q=require("./providers/user-provider.cjs"),F=require("./providers/widget-provider.cjs"),M=require("./components/factory.cjs"),y=require("./components/embedded-chat.cjs"),b=require("./components/embedded-chat/chat-provider.cjs"),E=require("./components/embedded-search.cjs"),u=require("./components/embedded-search/search-provider.cjs"),f=require("./components/modal.cjs"),k=require("./components/modal/modal-provider.cjs"),T=require("./components/intelligent-form.cjs"),m=require("./components/intelligent-form/intelligent-form-provider.cjs"),W=require("./components/chat-button.cjs"),U=require("./components/searchbar.cjs"),H=require("./hooks/use-boolean.cjs"),B=require("./hooks/use-browser-storage.cjs"),x=require("./hooks/use-component-classnames.cjs"),z=require("./hooks/use-container-size.cjs"),D=require("./hooks/use-copy-to-clipboard.cjs"),O=require("./hooks/use-instant-update.cjs"),Q=require("./hooks/use-is-mounted.cjs"),L=require("./hooks/use-media-query.cjs"),_=require("./hooks/use-resize-observer.cjs"),j=require("./hooks/use-scrolling-fades.cjs"),J=require("./hooks/use-settle-action.cjs"),K=require("./hooks/use-scroll-to-bottom.cjs"),o=require("./utils/misc.cjs"),r=require("./utils/component-ids.cjs"),A=require("./utils/compose-refs.cjs"),N=require("./atoms/portal.cjs"),Y=require("./atoms/icons/custom-icon.cjs"),G=require("./atoms/icons/built-in-icon-renderer.cjs"),V=require("./atoms/portal-with-theme.cjs"),e=require("./atoms/cmdk/index.cjs"),X=require("./atoms/error-boundary.cjs"),t=require("./atoms/shadow/context.cjs");exports.AttachmentItemProvider=c.AttachmentItemProvider;exports.useAttachmentItem=c.useAttachmentItem;exports.AttachmentsBarProvider=l.AttachmentsBarProvider;exports.useAttachmentsBar=l.useAttachmentsBar;exports.BaseEventsProvider=v.BaseEventsProvider;exports.useBaseEvents=v.useBaseEvents;exports.ChatEventsProvider=C.ChatEventsProvider;exports.useChatEvents=C.useChatEvents;exports.ChatFormProvider=s.ChatFormProvider;exports.useChatForm=s.useChatForm;exports.useChatFormState=s.useChatFormState;exports.InkeepConfigProvider=n.InkeepConfigProvider;exports.WebWidgetInteractionType=n.WebWidgetInteractionType;exports.useInkeepConfig=n.useInkeepConfig;exports.InkeepConversationProvider=a.InkeepConversationProvider;exports.SHARE_QUERY_PARAM=a.SHARE_QUERY_PARAM;exports.useInkeepConversation=a.useInkeepConversation;exports.FeedbackItemProvider=P.FeedbackItemProvider;exports.useFeedbackItem=P.useFeedbackItem;exports.FeedbackProvider=I.FeedbackProvider;exports.useMessageFeedback=I.useMessageFeedback;exports.FormFieldProvider=h.FormFieldProvider;exports.useFormField=h.useFormField;exports.HelpMenuProvider=i.HelpMenuProvider;exports.useHelpMenu=i.useHelpMenu;exports.useHelpMenuState=i.useHelpMenuState;exports.ChatMarkdownProvider=p.ChatMarkdownProvider;exports.useChatMarkdown=p.useChatMarkdown;exports.MessageAttachmentsProvider=g.MessageAttachmentsProvider;exports.useMessageAttachments=g.useMessageAttachments;exports.MessageProvider=d.MessageProvider;exports.useMessage=d.useMessage;exports.useOptionalMessage=d.useOptionalMessage;exports.RootProvider=R.RootProvider;exports.SourceItemProvider=S.SourceItemProvider;exports.useSourceItem=S.useSourceItem;exports.ThemeProvider=w.ThemeProvider;exports.UserProvider=q.UserProvider;exports.useUser=q.useUser;exports.WidgetProvider=F.WidgetProvider;exports.useWidget=F.useWidget;exports.ikp=M.ikp;exports.jsxFactory=M.jsxFactory;exports.EmbeddedChatPrimitive=y;exports.ChatProvider=b.ChatProvider;exports.useChat=b.useChat;exports.EmbeddedSearchPrimitive=E;exports.SearchProvider=u.SearchProvider;exports.SearchProviderImpl=u.SearchProviderImpl;exports.useSearch=u.useSearch;exports.ModalPrimitive=f;exports.ModalProvider=k.ModalProvider;exports.useModal=k.useModal;exports.IntelligentFormPrimitive=T;exports.IntelligentFormProvider=m.IntelligentFormProvider;exports.IntelligentFormProviderImpl=m.IntelligentFormProviderImpl;exports.useIntelligentForm=m.useIntelligentForm;exports.ChatButtonPrimitive=W;exports.SearchBarPrimitive=U;exports.useBoolean=H.useBoolean;exports.passesBrowserStorageChecks=B.passesBrowserStorageChecks;exports.useBrowserStorage=B.useBrowserStorage;exports.useComponentClassNames=x.useComponentClassNames;exports.useContainerSize=z.useContainerSize;exports.useCopyToClipboard=D.useCopyToClipboard;exports.useInstantUpdate=O.useInstantUpdate;exports.useIsMounted=Q.useIsMounted;exports.useMediaQuery=L.useMediaQuery;exports.useResizeObserver=_.useResizeObserver;exports.useScrollingFades=j.useScrollingFades;exports.useSettleAction=J.useSettleAction;exports.useScrollToBottom=K.useScrollToBottom;exports.callAll=o.callAll;exports.dataAttr=o.dataAttr;exports.getInitials=o.getInitials;exports.getMessageContent=o.getMessageContent;exports.isString=o.isString;exports.maybeRender=o.maybeRender;exports.parseIfJson=o.parseIfJson;exports.toKebabCase=o.toKebabCase;exports.SearchBarComponentIds=r.SearchBarComponentIds;exports.aiChatComponentIds=r.aiChatComponentIds;exports.aiSearchComponentIds=r.aiSearchComponentIds;exports.chatButtonComponentIds=r.chatButtonComponentIds;exports.componentIDs=r.componentIDs;exports.intelligentFormComponentIds=r.intelligentFormComponentIds;exports.markDownComponentIds=r.markDownComponentIds;exports.miscellanousComponentIds=r.miscellanousComponentIds;exports.modalComponentIds=r.modalComponentIds;exports.composeRefs=A.composeRefs;exports.useComposedRefs=A.useComposedRefs;exports.Portal=N.Portal;exports.CustomIcon=Y.CustomIcon;exports.BuiltInIconRenderer=G.BuiltInIconRenderer;exports.PortalWithTheme=V.PortalWithTheme;exports.Command=e.Command;exports.CommandDialog=e.CommandDialog;exports.CommandEmpty=e.CommandEmpty;exports.CommandInput=e.CommandInput;exports.CommandItem=e.CommandItem;exports.CommandList=e.CommandList;exports.CommandLoading=e.CommandLoading;exports.CommandRoot=e.CommandRoot;exports.CommandSeparator=e.CommandSeparator;exports.defaultFilter=e.defaultFilter;exports.useCommandState=e.useCommandState;exports.useCommandStore=e.useCommandStore;exports.ErrorBoundary=X.ErrorBoundary;exports.InkeepShadow=t.InkeepShadow;exports.InkeepShadowProvider=t.InkeepShadowProvider;exports.ShadowContext=t.ShadowContext;exports.useShadow=t.useShadow;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const C=require("./providers/attachment-item-provider.cjs"),l=require("./providers/attachments-bar-provider.cjs"),v=require("./providers/base-events-provider.cjs"),P=require("./providers/chat-events-provider.cjs"),n=require("./providers/chat-form-provider.cjs"),a=require("./providers/config-provider.cjs"),i=require("./providers/conversation-provider.cjs"),h=require("./providers/feedback-item-provider.cjs"),I=require("./providers/feedback-provider.cjs"),p=require("./providers/form-field-provider.cjs"),d=require("./providers/help-menu-provider.cjs"),S=require("./providers/markdown-provider.cjs"),g=require("./providers/message-attachments-provider.cjs"),u=require("./providers/message-provider.cjs"),w=require("./providers/root-provider.cjs"),q=require("./providers/source-item-provider.cjs"),y=require("./providers/theme-provider.cjs"),b=require("./providers/user-provider.cjs"),F=require("./providers/widget-provider.cjs"),t=require("./providers/sidebar-chat-provider.cjs"),M=require("./components/factory.cjs"),E=require("./components/embedded-chat.cjs"),f=require("./components/sidebar-chat/index.cjs"),k=require("./components/embedded-chat/chat-provider.cjs"),T=require("./components/embedded-search.cjs"),m=require("./components/embedded-search/search-provider.cjs"),W=require("./components/modal.cjs"),B=require("./components/modal/modal-provider.cjs"),U=require("./components/intelligent-form.cjs"),c=require("./components/intelligent-form/intelligent-form-provider.cjs"),H=require("./components/chat-button.cjs"),O=require("./components/searchbar.cjs"),x=require("./hooks/use-boolean.cjs"),A=require("./hooks/use-browser-storage.cjs"),z=require("./hooks/use-component-classnames.cjs"),D=require("./hooks/use-container-size.cjs"),Q=require("./hooks/use-copy-to-clipboard.cjs"),L=require("./hooks/use-instant-update.cjs"),_=require("./hooks/use-is-mounted.cjs"),j=require("./hooks/use-media-query.cjs"),J=require("./hooks/use-resize-observer.cjs"),K=require("./hooks/use-scrolling-fades.cjs"),N=require("./hooks/use-settle-action.cjs"),Y=require("./hooks/use-scroll-to-bottom.cjs"),o=require("./utils/misc.cjs"),r=require("./utils/component-ids.cjs"),R=require("./utils/compose-refs.cjs"),$=require("./atoms/portal.cjs"),G=require("./atoms/icons/custom-icon.cjs"),V=require("./atoms/icons/built-in-icon-renderer.cjs"),X=require("./atoms/portal-with-theme.cjs"),e=require("./atoms/cmdk/index.cjs"),Z=require("./atoms/error-boundary.cjs"),s=require("./atoms/shadow/context.cjs");exports.AttachmentItemProvider=C.AttachmentItemProvider;exports.useAttachmentItem=C.useAttachmentItem;exports.AttachmentsBarProvider=l.AttachmentsBarProvider;exports.useAttachmentsBar=l.useAttachmentsBar;exports.BaseEventsProvider=v.BaseEventsProvider;exports.useBaseEvents=v.useBaseEvents;exports.ChatEventsProvider=P.ChatEventsProvider;exports.useChatEvents=P.useChatEvents;exports.ChatFormProvider=n.ChatFormProvider;exports.useChatForm=n.useChatForm;exports.useChatFormState=n.useChatFormState;exports.InkeepConfigProvider=a.InkeepConfigProvider;exports.WebWidgetInteractionType=a.WebWidgetInteractionType;exports.useInkeepConfig=a.useInkeepConfig;exports.InkeepConversationProvider=i.InkeepConversationProvider;exports.SHARE_QUERY_PARAM=i.SHARE_QUERY_PARAM;exports.useInkeepConversation=i.useInkeepConversation;exports.FeedbackItemProvider=h.FeedbackItemProvider;exports.useFeedbackItem=h.useFeedbackItem;exports.FeedbackProvider=I.FeedbackProvider;exports.useMessageFeedback=I.useMessageFeedback;exports.FormFieldProvider=p.FormFieldProvider;exports.useFormField=p.useFormField;exports.HelpMenuProvider=d.HelpMenuProvider;exports.useHelpMenu=d.useHelpMenu;exports.useHelpMenuState=d.useHelpMenuState;exports.ChatMarkdownProvider=S.ChatMarkdownProvider;exports.useChatMarkdown=S.useChatMarkdown;exports.MessageAttachmentsProvider=g.MessageAttachmentsProvider;exports.useMessageAttachments=g.useMessageAttachments;exports.MessageProvider=u.MessageProvider;exports.useMessage=u.useMessage;exports.useOptionalMessage=u.useOptionalMessage;exports.RootProvider=w.RootProvider;exports.SourceItemProvider=q.SourceItemProvider;exports.useSourceItem=q.useSourceItem;exports.ThemeProvider=y.ThemeProvider;exports.UserProvider=b.UserProvider;exports.useUser=b.useUser;exports.WidgetProvider=F.WidgetProvider;exports.useWidget=F.useWidget;exports.SidebarChatProvider=t.SidebarChatProvider;exports.useInkeepSidebarChat=t.useInkeepSidebarChat;exports.useOptionalSidebarChat=t.useOptionalSidebarChat;exports.useSidebarChat=t.useSidebarChat;exports.ikp=M.ikp;exports.jsxFactory=M.jsxFactory;exports.EmbeddedChatPrimitive=E;exports.SidebarChatPrimitive=f;exports.ChatProvider=k.ChatProvider;exports.useChat=k.useChat;exports.EmbeddedSearchPrimitive=T;exports.SearchProvider=m.SearchProvider;exports.SearchProviderImpl=m.SearchProviderImpl;exports.useSearch=m.useSearch;exports.ModalPrimitive=W;exports.ModalProvider=B.ModalProvider;exports.useModal=B.useModal;exports.IntelligentFormPrimitive=U;exports.IntelligentFormProvider=c.IntelligentFormProvider;exports.IntelligentFormProviderImpl=c.IntelligentFormProviderImpl;exports.useIntelligentForm=c.useIntelligentForm;exports.ChatButtonPrimitive=H;exports.SearchBarPrimitive=O;exports.useBoolean=x.useBoolean;exports.passesBrowserStorageChecks=A.passesBrowserStorageChecks;exports.useBrowserStorage=A.useBrowserStorage;exports.useComponentClassNames=z.useComponentClassNames;exports.useContainerSize=D.useContainerSize;exports.useCopyToClipboard=Q.useCopyToClipboard;exports.useInstantUpdate=L.useInstantUpdate;exports.useIsMounted=_.useIsMounted;exports.useMediaQuery=j.useMediaQuery;exports.useResizeObserver=J.useResizeObserver;exports.useScrollingFades=K.useScrollingFades;exports.useSettleAction=N.useSettleAction;exports.useScrollToBottom=Y.useScrollToBottom;exports.callAll=o.callAll;exports.dataAttr=o.dataAttr;exports.getInitials=o.getInitials;exports.getMessageContent=o.getMessageContent;exports.isString=o.isString;exports.maybeRender=o.maybeRender;exports.parseIfJson=o.parseIfJson;exports.toKebabCase=o.toKebabCase;exports.SearchBarComponentIds=r.SearchBarComponentIds;exports.SidebarChatComponentIds=r.SidebarChatComponentIds;exports.aiChatComponentIds=r.aiChatComponentIds;exports.aiSearchComponentIds=r.aiSearchComponentIds;exports.chatButtonComponentIds=r.chatButtonComponentIds;exports.componentIDs=r.componentIDs;exports.intelligentFormComponentIds=r.intelligentFormComponentIds;exports.markDownComponentIds=r.markDownComponentIds;exports.miscellanousComponentIds=r.miscellanousComponentIds;exports.modalComponentIds=r.modalComponentIds;exports.composeRefs=R.composeRefs;exports.useComposedRefs=R.useComposedRefs;exports.Portal=$.Portal;exports.CustomIcon=G.CustomIcon;exports.BuiltInIconRenderer=V.BuiltInIconRenderer;exports.PortalWithTheme=X.PortalWithTheme;exports.Command=e.Command;exports.CommandDialog=e.CommandDialog;exports.CommandEmpty=e.CommandEmpty;exports.CommandInput=e.CommandInput;exports.CommandItem=e.CommandItem;exports.CommandList=e.CommandList;exports.CommandLoading=e.CommandLoading;exports.CommandRoot=e.CommandRoot;exports.CommandSeparator=e.CommandSeparator;exports.defaultFilter=e.defaultFilter;exports.useCommandState=e.useCommandState;exports.useCommandStore=e.useCommandStore;exports.ErrorBoundary=Z.ErrorBoundary;exports.InkeepShadow=s.InkeepShadow;exports.InkeepShadowProvider=s.InkeepShadowProvider;exports.ShadowContext=s.ShadowContext;exports.useShadow=s.useShadow;
package/dist/index.d.cts 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 {