@inkeep/cxkit-primitives 0.5.81 → 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/components/modal/use-inkeep-modal.cjs +1 -1
- package/dist/components/modal/use-inkeep-modal.js +31 -20
- package/dist/components/sidebar-chat/index.cjs +1 -1
- package/dist/components/sidebar-chat/index.js +29 -23
- package/dist/components/use-component-trigger.cjs +1 -0
- package/dist/components/use-component-trigger.js +16 -0
- package/dist/providers/base-events-provider.cjs +1 -1
- package/dist/providers/base-events-provider.js +1 -1
- package/package.json +4 -4
- package/dist/components/sidebar-chat/use-sidebar-chat-trigger.cjs +0 -1
- package/dist/components/sidebar-chat/use-sidebar-chat-trigger.js +0 -17
|
@@ -1 +1 @@
|
|
|
1
|
-
"use client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const
|
|
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
|
|
3
|
-
import { useControllableState as
|
|
4
|
-
import { useBaseEvents as
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
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
|
-
})
|
|
16
|
+
});
|
|
17
|
+
g({
|
|
18
|
+
triggerSelector: u,
|
|
19
|
+
onTriggerClick: () => o((n) => !n)
|
|
20
|
+
});
|
|
21
|
+
const a = m(!0);
|
|
11
22
|
return p(() => {
|
|
12
|
-
if (
|
|
13
|
-
|
|
23
|
+
if (a.current) {
|
|
24
|
+
a.current = !1;
|
|
14
25
|
return;
|
|
15
26
|
}
|
|
16
27
|
c({
|
|
17
|
-
eventName:
|
|
28
|
+
eventName: s ? "modal_opened" : "modal_closed",
|
|
18
29
|
properties: {}
|
|
19
30
|
});
|
|
20
|
-
}, [
|
|
21
|
-
const
|
|
22
|
-
|
|
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",
|
|
25
|
-
}, [
|
|
26
|
-
isOpen:
|
|
27
|
-
setOpen:
|
|
28
|
-
shortcutKey:
|
|
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
|
-
|
|
43
|
+
w as useInkeepModal
|
|
33
44
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const
|
|
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;
|
|
@@ -1,15 +1,21 @@
|
|
|
1
|
-
import { jsxs as
|
|
2
|
-
import { forwardRef as
|
|
3
|
-
import { ikp as
|
|
4
|
-
import { useInkeepSidebarChat as
|
|
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
5
|
import { useSidebarChatResizer as f } from "./use-sidebar-chat-resizer.js";
|
|
6
|
-
import {
|
|
7
|
-
import { Presence as
|
|
6
|
+
import { useComponentTrigger as g } from "../use-component-trigger.js";
|
|
7
|
+
import { Presence as u } from "../presence.js";
|
|
8
8
|
import { dataAttr as l } from "../../utils/misc.js";
|
|
9
|
-
import { splitProps as
|
|
10
|
-
const
|
|
9
|
+
import { splitProps as b } from "../../utils/split-props.js";
|
|
10
|
+
const R = d(u, {
|
|
11
11
|
_id: "sidebarChat__Root"
|
|
12
|
-
}),
|
|
12
|
+
}), C = ({ triggerSelector: e }) => {
|
|
13
|
+
const { toggle: r } = p();
|
|
14
|
+
return g({
|
|
15
|
+
triggerSelector: e,
|
|
16
|
+
onTriggerClick: r
|
|
17
|
+
}), null;
|
|
18
|
+
}, S = [
|
|
13
19
|
"position",
|
|
14
20
|
"triggerSelector",
|
|
15
21
|
"minWidth",
|
|
@@ -17,39 +23,39 @@ const S = n(b, {
|
|
|
17
23
|
"defaultWidth",
|
|
18
24
|
"defaultOpen",
|
|
19
25
|
"autoCloseThreshold"
|
|
20
|
-
], j =
|
|
21
|
-
const [i, o] =
|
|
22
|
-
return /* @__PURE__ */
|
|
26
|
+
], j = n((e, r) => {
|
|
27
|
+
const [i, o] = b(e, S), t = c(i);
|
|
28
|
+
return /* @__PURE__ */ m(h, { value: t, children: [
|
|
23
29
|
/* @__PURE__ */ a(
|
|
24
|
-
|
|
30
|
+
C,
|
|
25
31
|
{
|
|
26
32
|
triggerSelector: i.triggerSelector || "[data-inkeep-sidebar-chat-trigger]"
|
|
27
33
|
}
|
|
28
34
|
),
|
|
29
35
|
/* @__PURE__ */ a(
|
|
30
|
-
|
|
36
|
+
R,
|
|
31
37
|
{
|
|
32
|
-
ref:
|
|
33
|
-
present:
|
|
38
|
+
ref: r,
|
|
39
|
+
present: t.isOpen,
|
|
34
40
|
"data-sidebar": "",
|
|
35
|
-
"data-position":
|
|
36
|
-
"data-open": l(
|
|
41
|
+
"data-position": t.position,
|
|
42
|
+
"data-open": l(t.isOpen),
|
|
37
43
|
style: {
|
|
38
|
-
"--width": `${
|
|
44
|
+
"--width": `${t.width}px`
|
|
39
45
|
},
|
|
40
46
|
...o
|
|
41
47
|
}
|
|
42
48
|
)
|
|
43
49
|
] });
|
|
44
|
-
}), P =
|
|
50
|
+
}), P = d("div", {
|
|
45
51
|
_id: "sidebarChat__Resizer"
|
|
46
|
-
}), y =
|
|
47
|
-
const { position: i } =
|
|
52
|
+
}), y = n((e, r) => {
|
|
53
|
+
const { position: i } = p(), { onMouseDown: o, resizerRef: t } = f();
|
|
48
54
|
return /* @__PURE__ */ a(
|
|
49
55
|
P,
|
|
50
56
|
{
|
|
51
57
|
ref: (s) => {
|
|
52
|
-
typeof
|
|
58
|
+
typeof r == "function" ? r(s) : r && (r.current = s), t.current = s;
|
|
53
59
|
},
|
|
54
60
|
"data-position": i,
|
|
55
61
|
onMouseDown: o,
|
|
@@ -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
|
+
};
|
|
@@ -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.
|
|
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.
|
|
10
|
+
widgetLibraryVersion: "0.5.82",
|
|
11
11
|
componentType: s,
|
|
12
12
|
tags: a
|
|
13
13
|
}),
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@inkeep/cxkit-primitives",
|
|
3
|
-
"version": "0.5.
|
|
3
|
+
"version": "0.5.82",
|
|
4
4
|
"description": "",
|
|
5
5
|
"license": "Inkeep, Inc. Customer License (IICL) v1.1",
|
|
6
6
|
"homepage": "",
|
|
@@ -63,9 +63,9 @@
|
|
|
63
63
|
"remark-gfm": "^4.0.1",
|
|
64
64
|
"unist-util-visit": "^5.0.0",
|
|
65
65
|
"use-sync-external-store": "^1.4.0",
|
|
66
|
-
"@inkeep/cxkit-color-mode": "0.5.
|
|
67
|
-
"@inkeep/cxkit-theme": "0.5.
|
|
68
|
-
"@inkeep/cxkit-types": "0.5.
|
|
66
|
+
"@inkeep/cxkit-color-mode": "0.5.82",
|
|
67
|
+
"@inkeep/cxkit-theme": "0.5.82",
|
|
68
|
+
"@inkeep/cxkit-types": "0.5.82"
|
|
69
69
|
},
|
|
70
70
|
"devDependencies": {
|
|
71
71
|
"@biomejs/biome": "1.9.4",
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const c=require("react"),a=require("../../providers/sidebar-chat-provider.cjs"),n=e=>{const{toggle:t}=a.useSidebarChat();c.useEffect(()=>{const r=i=>{i.target?.matches?.(e)&&t()};return document.addEventListener("click",r),()=>{document.removeEventListener("click",r)}},[e,t])};exports.useSidebarChatTrigger=n;
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
"use client";
|
|
2
|
-
import { useEffect as n } from "react";
|
|
3
|
-
import { useSidebarChat as i } from "../../providers/sidebar-chat-provider.js";
|
|
4
|
-
const m = (e) => {
|
|
5
|
-
const { toggle: t } = i();
|
|
6
|
-
n(() => {
|
|
7
|
-
const r = (c) => {
|
|
8
|
-
c.target?.matches?.(e) && t();
|
|
9
|
-
};
|
|
10
|
-
return document.addEventListener("click", r), () => {
|
|
11
|
-
document.removeEventListener("click", r);
|
|
12
|
-
};
|
|
13
|
-
}, [e, t]);
|
|
14
|
-
};
|
|
15
|
-
export {
|
|
16
|
-
m as useSidebarChatTrigger
|
|
17
|
-
};
|