@inkeep/cxkit-primitives 0.5.2 → 0.5.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (65) hide show
  1. package/dist/atoms/link.cjs +1 -1
  2. package/dist/atoms/link.js +5 -5
  3. package/dist/components/chat-button.cjs +1 -1
  4. package/dist/components/chat-button.js +21 -21
  5. package/dist/components/embedded-chat/use-captcha.cjs +1 -1
  6. package/dist/components/embedded-chat/use-captcha.d.cts +2 -2
  7. package/dist/components/embedded-chat/use-captcha.d.ts +2 -2
  8. package/dist/components/embedded-chat/use-captcha.js +1 -1
  9. package/dist/components/embedded-chat/use-chat-action.cjs +1 -1
  10. package/dist/components/embedded-chat/use-chat-action.js +9 -9
  11. package/dist/components/embedded-chat/use-inkeep-chat.cjs +3 -3
  12. package/dist/components/embedded-chat/use-inkeep-chat.js +39 -39
  13. package/dist/components/embedded-chat.cjs +4 -4
  14. package/dist/components/embedded-chat.d.cts +6 -6
  15. package/dist/components/embedded-chat.d.ts +6 -6
  16. package/dist/components/embedded-chat.js +707 -708
  17. package/dist/components/embedded-search/transform-results.cjs +1 -1
  18. package/dist/components/embedded-search/transform-results.js +3 -3
  19. package/dist/components/embedded-search/use-inkeep-search.cjs +1 -1
  20. package/dist/components/embedded-search/use-inkeep-search.js +36 -36
  21. package/dist/components/embedded-search.cjs +1 -1
  22. package/dist/components/embedded-search.js +60 -60
  23. package/dist/components/intelligent-form/use-inkeep-intelligent-form.cjs +1 -1
  24. package/dist/components/intelligent-form/use-inkeep-intelligent-form.js +35 -35
  25. package/dist/components/intelligent-form.cjs +1 -1
  26. package/dist/components/intelligent-form.d.cts +3 -3
  27. package/dist/components/intelligent-form.d.ts +3 -3
  28. package/dist/components/intelligent-form.js +106 -106
  29. package/dist/components/modal/modal-provider.d.cts +1 -1
  30. package/dist/components/modal/modal-provider.d.ts +1 -1
  31. package/dist/components/modal/use-inkeep-modal.cjs +1 -1
  32. package/dist/components/modal/use-inkeep-modal.d.cts +1 -1
  33. package/dist/components/modal/use-inkeep-modal.d.ts +1 -1
  34. package/dist/components/modal/use-inkeep-modal.js +4 -4
  35. package/dist/components/modal.cjs +1 -1
  36. package/dist/components/modal.js +5 -5
  37. package/dist/hooks/use-browser-storage.cjs +1 -1
  38. package/dist/hooks/use-browser-storage.js +6 -6
  39. package/dist/providers/base-events-provider.cjs +1 -1
  40. package/dist/providers/base-events-provider.js +22 -22
  41. package/dist/providers/chat-events-provider.cjs +1 -1
  42. package/dist/providers/chat-events-provider.js +46 -39
  43. package/dist/providers/chat-form-provider.cjs +1 -1
  44. package/dist/providers/chat-form-provider.js +40 -40
  45. package/dist/providers/config-provider.cjs +1 -1
  46. package/dist/providers/config-provider.d.cts +7 -7
  47. package/dist/providers/config-provider.d.ts +7 -7
  48. package/dist/providers/config-provider.js +24 -24
  49. package/dist/providers/feedback-provider.cjs +1 -1
  50. package/dist/providers/feedback-provider.js +10 -10
  51. package/dist/providers/root-provider.cjs +1 -1
  52. package/dist/providers/root-provider.d.cts +1 -1
  53. package/dist/providers/root-provider.d.ts +1 -1
  54. package/dist/providers/root-provider.js +2 -2
  55. package/dist/providers/theme-provider.cjs +1 -1
  56. package/dist/providers/theme-provider.js +32 -30
  57. package/dist/providers/user-provider.cjs +1 -1
  58. package/dist/providers/user-provider.js +14 -14
  59. package/dist/utils/default-settings.cjs +1 -1
  60. package/dist/utils/default-settings.d.cts +20 -20
  61. package/dist/utils/default-settings.d.ts +20 -20
  62. package/dist/utils/default-settings.js +32 -31
  63. package/dist/utils/form.cjs +1 -1
  64. package/dist/utils/form.js +11 -11
  65. package/package.json +5 -5
@@ -1,39 +1,39 @@
1
1
  "use client";
2
- import { jsx as f } from "react/jsx-runtime";
2
+ import { jsx as g } from "react/jsx-runtime";
3
3
  import { useMemo as d, useCallback as y, createContext as x, useContext as B } from "react";
4
- import { logEvent as C } from "../atoms/api/analytics/events.js";
5
- import { useInkeepConfig as P } from "./config-provider.js";
4
+ import { logEvent as P } from "../atoms/api/analytics/events.js";
5
+ import { useInkeepConfig as C } from "./config-provider.js";
6
6
  import { useUser as b } from "./user-provider.js";
7
- const m = x(void 0), M = ({ children: e }) => {
8
- const { baseSettings: t, interactionType: o } = P(), { apiKey: s, analyticsBaseUrl: n, tags: r, analytics: p, env: u } = t, { userProperties: a } = b(), i = d(
7
+ const m = x(void 0), U = ({ children: e }) => {
8
+ const { baseSettings: t, componentType: o } = C(), { apiKey: n, analyticsApiBaseUrl: s, tags: r, privacyPreferences: u, env: l } = t, { userProperties: i } = b(), a = d(
9
9
  () => ({
10
- widgetLibraryVersion: "0.5.2",
11
- interactionType: o,
10
+ widgetLibraryVersion: "0.5.4",
11
+ componentType: o,
12
12
  tags: r
13
13
  }),
14
14
  [o, r]
15
- ), c = !p.optOutAllAnalytics && u !== "DEVELOPMENT", E = { logEvent: y(
16
- async (v) => {
17
- const g = {
18
- ...i,
19
- ...v.properties
20
- }, l = {
21
- eventName: v.eventName,
22
- properties: g,
23
- userProperties: a
15
+ ), c = !u.optOutAllAnalytics && l !== "development", E = { logEvent: y(
16
+ async (p) => {
17
+ const f = {
18
+ ...a,
19
+ ...p.properties
20
+ }, v = {
21
+ eventName: p.eventName,
22
+ properties: f,
23
+ userProperties: i
24
24
  };
25
- c && C(l, s, n), t.logEventCallback?.(l);
25
+ c && P(v, n, s), t.onEvent?.(v);
26
26
  },
27
- [c, t, s, n, a, i]
27
+ [c, t, n, s, i, a]
28
28
  ) };
29
- return /* @__PURE__ */ f(m.Provider, { value: E, children: e });
30
- }, O = () => {
29
+ return /* @__PURE__ */ g(m.Provider, { value: E, children: e });
30
+ }, $ = () => {
31
31
  const e = B(m);
32
32
  if (!e)
33
33
  throw new Error("useBaseEvents must be used within a BaseEventsProvider");
34
34
  return e;
35
35
  };
36
36
  export {
37
- M as BaseEventsProvider,
38
- O as useBaseEvents
37
+ U as BaseEventsProvider,
38
+ $ as useBaseEvents
39
39
  };
@@ -1 +1 @@
1
- "use client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const c=require("react/jsx-runtime"),s=require("react"),b=require("../atoms/api/analytics/conversation.cjs"),q=require("./config-provider.cjs"),x=require("./conversation-provider.cjs"),y=require("./user-provider.cjs"),g=require("./base-events-provider.cjs"),p=s.createContext(void 0),m=({children:t})=>{const{baseSettings:P}=q.useInkeepConfig(),{apiKey:u,analyticsBaseUrl:v,tags:d}=P,{userProperties:l}=y.useUser(),{logEvent:C}=g.useBaseEvents(),{conversation:i,setConversation:h}=x.useInkeepConversation(),o=s.useRef(i.id);s.useEffect(()=>{o.current=i.id},[i.id]);const f=["chat_message_submitted","chat_message_bot_response_received","intelligent_form_primary_submitted","intelligent_form_qa_response"],a=s.useCallback(async e=>{const n=o.current,r=await b.logConversation(n,{messages:e,tags:d,userProperties:l},u,v);return r&&h(r),r},[v,u,d,l,h]),_={logEvent:s.useCallback(async e=>{let n=o.current;if(f.includes(e.eventName)&&"messages"in e.properties){const E=await a(e.properties.messages);E&&(n=E.id,o.current=n)}const r={...e,properties:{...e.properties,conversationId:n}};C(r)},[C,a]),logConversation:a};return c.jsx(p.Provider,{value:_,children:t})},j=({children:t})=>c.jsx(g.BaseEventsProvider,{children:c.jsx(m,{children:t})}),w=()=>{const t=s.useContext(p);if(!t)throw new Error("useChatEvents must be used within a ChatEventsProvider");return t};exports.ChatEventsProvider=m;exports.ChatEventsProviderWithBase=j;exports.useChatEvents=w;
1
+ "use client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("react/jsx-runtime"),n=require("react"),x=require("../atoms/api/analytics/conversation.cjs"),j=require("./config-provider.cjs"),w=require("./conversation-provider.cjs"),B=require("./user-provider.cjs"),m=require("./base-events-provider.cjs"),f=n.createContext(void 0),P=({children:s})=>{const{baseSettings:_}=j.useInkeepConfig(),{apiKey:c,analyticsApiBaseUrl:v,tags:u,privacyPreferences:{optOutAllAnalytics:d},env:l}=_,{userProperties:C}=B.useUser(),{logEvent:p}=m.useBaseEvents(),{conversation:o,setConversation:E}=w.useInkeepConversation(),r=n.useRef(o.id);n.useEffect(()=>{r.current=o.id},[o.id]);const b=["chat_message_submitted","chat_message_bot_response_received","intelligent_form_primary_submitted","intelligent_form_qa_response"],i=n.useCallback(async e=>{const h=r.current,t=await x.logConversation(h,{messages:e,tags:u,userProperties:C},c,v);return t&&E(t),t},[v,c,u,C,E]),y={logEvent:n.useCallback(async e=>{if(!(!d&&l!=="development"))return;let t=r.current;if(b.includes(e.eventName)&&"messages"in e.properties){const g=await i(e.properties.messages);g&&(t=g.id,r.current=t)}const q={...e,properties:{...e.properties,conversationId:t}};p(q)},[p,i,d,l]),logConversation:i};return a.jsx(f.Provider,{value:y,children:s})},I=({children:s})=>a.jsx(m.BaseEventsProvider,{children:a.jsx(P,{children:s})}),k=()=>{const s=n.useContext(f);if(!s)throw new Error("useChatEvents must be used within a ChatEventsProvider");return s};exports.ChatEventsProvider=P;exports.ChatEventsProviderWithBase=I;exports.useChatEvents=k;
@@ -1,66 +1,73 @@
1
1
  "use client";
2
- import { jsx as a } from "react/jsx-runtime";
3
- import { useRef as _, useEffect as b, useCallback as C, createContext as x, useContext as P } from "react";
4
- import { logConversation as w } from "../atoms/api/analytics/conversation.js";
5
- import { useInkeepConfig as y } from "./config-provider.js";
6
- import { useInkeepConversation as I } from "./conversation-provider.js";
7
- import { useUser as B } from "./user-provider.js";
8
- import { useBaseEvents as k, BaseEventsProvider as U } from "./base-events-provider.js";
9
- const f = x(void 0), j = ({ children: t }) => {
10
- const { baseSettings: h } = y(), { apiKey: c, analyticsBaseUrl: u, tags: v } = h, { userProperties: m } = B(), { logEvent: p } = k(), { conversation: r, setConversation: d } = I(), o = _(r.id);
11
- b(() => {
12
- o.current = r.id;
13
- }, [r.id]);
14
- const g = [
2
+ import { jsx as i } from "react/jsx-runtime";
3
+ import { useRef as b, useEffect as x, useCallback as g, createContext as w, useContext as I } from "react";
4
+ import { logConversation as B } from "../atoms/api/analytics/conversation.js";
5
+ import { useInkeepConfig as k } from "./config-provider.js";
6
+ import { useInkeepConversation as A } from "./conversation-provider.js";
7
+ import { useUser as L } from "./user-provider.js";
8
+ import { useBaseEvents as U, BaseEventsProvider as j } from "./base-events-provider.js";
9
+ const E = w(void 0), q = ({ children: s }) => {
10
+ const { baseSettings: h } = k(), {
11
+ apiKey: a,
12
+ analyticsApiBaseUrl: c,
13
+ tags: v,
14
+ privacyPreferences: { optOutAllAnalytics: u },
15
+ env: p
16
+ } = h, { userProperties: m } = L(), { logEvent: l } = U(), { conversation: o, setConversation: d } = A(), n = b(o.id);
17
+ x(() => {
18
+ n.current = o.id;
19
+ }, [o.id]);
20
+ const _ = [
15
21
  "chat_message_submitted",
16
22
  "chat_message_bot_response_received",
17
23
  "intelligent_form_primary_submitted",
18
24
  "intelligent_form_qa_response"
19
- ], i = C(
25
+ ], r = g(
20
26
  async (e) => {
21
- const s = o.current, n = await w(
22
- s,
27
+ const f = n.current, t = await B(
28
+ f,
23
29
  {
24
30
  messages: e,
25
31
  tags: v,
26
32
  userProperties: m
27
33
  },
28
- c,
29
- u
34
+ a,
35
+ c
30
36
  );
31
- return n && d(n), n;
37
+ return t && d(t), t;
32
38
  },
33
- [u, c, v, m, d]
34
- ), E = {
35
- logEvent: C(
39
+ [c, a, v, m, d]
40
+ ), y = {
41
+ logEvent: g(
36
42
  async (e) => {
37
- let s = o.current;
38
- if (g.includes(e.eventName) && "messages" in e.properties) {
39
- const l = await i(e.properties.messages);
40
- l && (s = l.id, o.current = s);
43
+ if (!(!u && p !== "development")) return;
44
+ let t = n.current;
45
+ if (_.includes(e.eventName) && "messages" in e.properties) {
46
+ const C = await r(e.properties.messages);
47
+ C && (t = C.id, n.current = t);
41
48
  }
42
- const n = {
49
+ const P = {
43
50
  ...e,
44
51
  properties: {
45
52
  ...e.properties,
46
- conversationId: s
53
+ conversationId: t
47
54
  }
48
55
  };
49
- p(n);
56
+ l(P);
50
57
  },
51
- [p, i]
58
+ [l, r, u, p]
52
59
  ),
53
- logConversation: i
60
+ logConversation: r
54
61
  };
55
- return /* @__PURE__ */ a(f.Provider, { value: E, children: t });
56
- }, A = ({ children: t }) => /* @__PURE__ */ a(U, { children: /* @__PURE__ */ a(j, { children: t }) }), D = () => {
57
- const t = P(f);
58
- if (!t)
62
+ return /* @__PURE__ */ i(E.Provider, { value: y, children: s });
63
+ }, D = ({ children: s }) => /* @__PURE__ */ i(j, { children: /* @__PURE__ */ i(q, { children: s }) }), F = () => {
64
+ const s = I(E);
65
+ if (!s)
59
66
  throw new Error("useChatEvents must be used within a ChatEventsProvider");
60
- return t;
67
+ return s;
61
68
  };
62
69
  export {
63
- j as ChatEventsProvider,
64
- A as ChatEventsProviderWithBase,
65
- D as useChatEvents
70
+ q as ChatEventsProvider,
71
+ D as ChatEventsProviderWithBase,
72
+ F as useChatEvents
66
73
  };
@@ -1 +1 @@
1
- "use client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const q=require("react/jsx-runtime"),o=require("react"),M=require("react-hook-form"),O=require("./conversation-provider.cjs"),P=require("../components/modal/modal-provider.cjs"),R=require("../utils/form.cjs"),x="root.serverError",S=o.createContext(void 0);function f(){const[t,n]=o.useState(null),[C,u]=o.useState(!1),{conversation:i}=O.useInkeepConversation(),h=P.useModal(),v=e=>{n(e)},E=()=>{n(null),u(!1),t?.buttons.close?.action==="CLOSE_MODAL"&&h?.closeModal()},c=o.useMemo(()=>t?.fields.map(e=>{const r=e;return"_type"in e&&e._type==="INCLUDE_CHAT_SESSION"&&(r.required=!1,r.inputType="CHECKBOX",i.id||(r.isHidden=!0)),r}),[t?.fields,i.id]),a=c?.find(e=>"_type"in e&&e._type==="INCLUDE_CHAT_SESSION"),s=o.useMemo(()=>R.getFormDefaultValues(c),[c]),{control:F,handleSubmit:b,formState:{errors:m,isSubmitting:p},setError:_,reset:l}=M.useForm({defaultValues:s});o.useEffect(()=>{s&&l(s)},[l,s]);const w=b(async e=>{const r=typeof window>"u"?"":window.location.href,g=i.id&&a&&e[a.name]?i:null;try{await t?.buttons.submit.onSubmit({values:e,conversation:g,client:{currentUrl:r}}),u(!0)}catch(d){_(x,{message:d instanceof Error?d.message:"Something went wrong."})}}),y=m?.root?.serverError;return{form:t,openForm:v,closeForm:E,handleSubmit:w,isSuccess:C,isSubmitting:p,formError:y,fields:c,errors:m,control:F,defaultValues:s}}const I=({children:t})=>{const n=f();return q.jsx(S.Provider,{value:n,children:t})},H=()=>{const t=o.useContext(S);if(!t)throw new Error("useChatForm must be used within a ChatFormProvider");return t};exports.ChatFormProvider=I;exports.useChatForm=H;exports.useChatFormState=f;
1
+ "use client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const R=require("react/jsx-runtime"),o=require("react"),q=require("react-hook-form"),x=require("./conversation-provider.cjs"),P=require("../components/modal/modal-provider.cjs"),M=require("../utils/form.cjs"),j="root.serverError",f=o.createContext(void 0);function h(){const[t,n]=o.useState(null),[S,u]=o.useState(!1),{conversation:i}=x.useInkeepConversation(),v=P.useModal(),F=e=>{n(e)},C=()=>{n(null),u(!1),t?.buttons.close?.action==="close_modal"&&v?.closeModal()},c=o.useMemo(()=>t?.fields.map(e=>{const r=e;return"_type"in e&&e._type==="include_chat_session"&&(r.isRequired=!1,r.inputType="checkbox",i.id||(r.isHidden=!0)),r}),[t?.fields,i.id]),a=c?.find(e=>"_type"in e&&e._type==="include_chat_session"),s=o.useMemo(()=>M.getFormDefaultValues(c),[c]),{control:b,handleSubmit:p,formState:{errors:m,isSubmitting:E},setError:_,reset:l}=q.useForm({defaultValues:s});o.useEffect(()=>{s&&l(s)},[l,s]);const w=p(async e=>{const r=typeof window>"u"?"":window.location.href,g=i.id&&a&&e[a.name]?i:null;try{await t?.buttons.submit.onSubmit({values:e,conversation:g,client:{currentUrl:r}}),u(!0)}catch(d){_(j,{message:d instanceof Error?d.message:"Something went wrong."})}}),y=m?.root?.serverError;return{form:t,openForm:F,closeForm:C,handleSubmit:w,isSuccess:S,isSubmitting:E,formError:y,fields:c,errors:m,control:b,defaultValues:s}}const k=({children:t})=>{const n=h();return R.jsx(f.Provider,{value:n,children:t})},V=()=>{const t=o.useContext(f);if(!t)throw new Error("useChatForm must be used within a ChatFormProvider");return t};exports.ChatFormProvider=k;exports.useChatForm=V;exports.useChatFormState=h;
@@ -1,66 +1,66 @@
1
1
  "use client";
2
- import { jsx as x } from "react/jsx-runtime";
3
- import { useState as f, useMemo as d, useEffect as I, createContext as O, useContext as M } from "react";
4
- import { useForm as N } from "react-hook-form";
5
- import { useInkeepConversation as R } from "./conversation-provider.js";
6
- import { useModal as A } from "../components/modal/modal-provider.js";
7
- import { getFormDefaultValues as D } from "../utils/form.js";
8
- const H = "root.serverError", S = O(void 0);
9
- function L() {
10
- const [o, n] = f(null), [p, c] = f(!1), { conversation: s } = R(), C = A(), E = (t) => {
11
- n(t);
12
- }, h = () => {
13
- n(null), c(!1), o?.buttons.close?.action === "CLOSE_MODAL" && C?.closeModal();
14
- }, i = d(() => o?.fields.map((t) => {
15
- const e = t;
16
- return "_type" in t && t._type === "INCLUDE_CHAT_SESSION" && (e.required = !1, e.inputType = "CHECKBOX", s.id || (e.isHidden = !0)), e;
17
- }), [o?.fields, s.id]), a = i?.find((t) => "_type" in t && t._type === "INCLUDE_CHAT_SESSION"), r = d(() => D(i), [i]), {
18
- control: v,
2
+ import { jsx as g } from "react/jsx-runtime";
3
+ import { useState as d, useMemo as f, useEffect as R, createContext as M, useContext as P } from "react";
4
+ import { useForm as V } from "react-hook-form";
5
+ import { useInkeepConversation as k } from "./conversation-provider.js";
6
+ import { useModal as I } from "../components/modal/modal-provider.js";
7
+ import { getFormDefaultValues as j } from "../utils/form.js";
8
+ const q = "root.serverError", p = M(void 0);
9
+ function A() {
10
+ const [t, s] = d(null), [h, c] = d(!1), { conversation: n } = k(), S = I(), b = (o) => {
11
+ s(o);
12
+ }, v = () => {
13
+ s(null), c(!1), t?.buttons.close?.action === "close_modal" && S?.closeModal();
14
+ }, i = f(() => t?.fields.map((o) => {
15
+ const e = o;
16
+ return "_type" in o && o._type === "include_chat_session" && (e.isRequired = !1, e.inputType = "checkbox", n.id || (e.isHidden = !0)), e;
17
+ }), [t?.fields, n.id]), a = i?.find((o) => "_type" in o && o._type === "include_chat_session"), r = f(() => j(i), [i]), {
18
+ control: C,
19
19
  handleSubmit: F,
20
- formState: { errors: u, isSubmitting: b },
20
+ formState: { errors: u, isSubmitting: E },
21
21
  setError: _,
22
22
  reset: m
23
- } = N({
23
+ } = V({
24
24
  defaultValues: r
25
25
  });
26
- I(() => {
26
+ R(() => {
27
27
  r && m(r);
28
28
  }, [m, r]);
29
- const w = F(async (t) => {
30
- const e = typeof window > "u" ? "" : window.location.href, g = s.id && a && t[a.name] ? s : null;
29
+ const w = F(async (o) => {
30
+ const e = typeof window > "u" ? "" : window.location.href, x = n.id && a && o[a.name] ? n : null;
31
31
  try {
32
- await o?.buttons.submit.onSubmit({ values: t, conversation: g, client: { currentUrl: e } }), c(!0);
32
+ await t?.buttons.submit.onSubmit({ values: o, conversation: x, client: { currentUrl: e } }), c(!0);
33
33
  } catch (l) {
34
- _(H, {
34
+ _(q, {
35
35
  message: l instanceof Error ? l.message : "Something went wrong."
36
36
  });
37
37
  }
38
38
  }), y = u?.root?.serverError;
39
39
  return {
40
- form: o,
41
- openForm: E,
42
- closeForm: h,
40
+ form: t,
41
+ openForm: b,
42
+ closeForm: v,
43
43
  handleSubmit: w,
44
- isSuccess: p,
45
- isSubmitting: b,
44
+ isSuccess: h,
45
+ isSubmitting: E,
46
46
  formError: y,
47
47
  fields: i,
48
48
  errors: u,
49
- control: v,
49
+ control: C,
50
50
  defaultValues: r
51
51
  };
52
52
  }
53
- const K = ({ children: o }) => {
54
- const n = L();
55
- return /* @__PURE__ */ x(S.Provider, { value: n, children: o });
56
- }, X = () => {
57
- const o = M(S);
58
- if (!o)
53
+ const G = ({ children: t }) => {
54
+ const s = A();
55
+ return /* @__PURE__ */ g(p.Provider, { value: s, children: t });
56
+ }, J = () => {
57
+ const t = P(p);
58
+ if (!t)
59
59
  throw new Error("useChatForm must be used within a ChatFormProvider");
60
- return o;
60
+ return t;
61
61
  };
62
62
  export {
63
- K as ChatFormProvider,
64
- X as useChatForm,
65
- L as useChatFormState
63
+ G as ChatFormProvider,
64
+ J as useChatForm,
65
+ A as useChatFormState
66
66
  };
@@ -1 +1 @@
1
- "use client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const f=require("react/jsx-runtime"),p=require("merge-anything"),o=require("react"),r=require("../utils/default-settings.cjs"),E=require("../atoms/shadow/context.cjs"),a={ChatButton:"CHAT_BUTTON",CustomTrigger:"CUSTOM_TRIGGER",SearchBar:"SEARCH_BAR",EmbeddedChat:"EMBEDDED_CHAT",EmbeddedSearch:"EMBEDDED_SEARCH",EmbeddedSearchAndChat:"EMBEDDED_SEARCH_AND_CHAT",IntelligentForm:"INTELLIGENT_FORM"},c={prefix:"ikp",aiChatSettings:r.defaultInkeepAIChatSettings,baseSettings:r.defaultInkeepBaseSettings,searchSettings:r.defaultInkeepSearchSettings,interactionType:a.EmbeddedChat},g=o.createContext(c),h=({children:t,value:i})=>{const d=E.useShadow(),u=(s,e,n)=>(n==="apiKey"&&!e&&!i?.baseSettings?.baseUrl&&console.warn("Inkeep API key is missing."),n==="tools"&&Array.isArray(e)?(s||[]).concat(e):["baseSettings","searchSettings","aiChatSettings"].includes(n)&&!e?s:e),C={baseSettings:d??{}},S=p.mergeAndCompare(u,c,C,i??{});return f.jsx(g.Provider,{value:S,children:t})},I=()=>{const t=o.useContext(g);if(!t)throw new Error("useInkeepConfig must be used within a ConfigProvider");return t};exports.InkeepConfigProvider=h;exports.WebWidgetInteractionType=a;exports.useInkeepConfig=I;
1
+ "use client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const p=require("react/jsx-runtime"),S=require("merge-anything"),s=require("react"),r=require("../utils/default-settings.cjs"),f=require("../atoms/shadow/context.cjs"),a={ChatButton:"ChatButton",CustomTrigger:"CustomTrigger",SearchBar:"SearchBar",EmbeddedChat:"EmbeddedChat",EmbeddedSearch:"EmbeddedSearch",EmbeddedSearchAndChat:"EmbeddedSearchAndChat",IntelligentForm:"IntelligentForm"},c={prefix:"ikp",aiChatSettings:r.defaultInkeepAIChatSettings,baseSettings:r.defaultInkeepBaseSettings,searchSettings:r.defaultInkeepSearchSettings,componentType:a.EmbeddedChat},d=s.createContext(c),m=({children:t,value:i})=>{const g=f.useShadow(),u=(o,e,n)=>(n==="apiKey"&&!e&&!i?.baseSettings?.aiApiBaseUrl&&console.warn("Inkeep API key is missing."),n==="tools"&&Array.isArray(e)?(o||[]).concat(e):["baseSettings","searchSettings","aiChatSettings"].includes(n)&&!e?o:e),h={baseSettings:g??{}},C=S.mergeAndCompare(u,c,h,i??{});return p.jsx(d.Provider,{value:C,children:t})},b=()=>{const t=s.useContext(d);if(!t)throw new Error("useInkeepConfig must be used within a ConfigProvider");return t};exports.InkeepConfigProvider=m;exports.WebWidgetInteractionType=a;exports.useInkeepConfig=b;
@@ -2,13 +2,13 @@ import { ReactNode } from 'react';
2
2
  import { DefaultInkeepAIChatSettings, DefaultInkeepBaseSettings, DefaultInkeepSearchSettings } from '../utils/default-settings';
3
3
  import { InkeepConfig } from '@inkeep/cxkit-types';
4
4
  export declare const WebWidgetInteractionType: {
5
- readonly ChatButton: "CHAT_BUTTON";
6
- readonly CustomTrigger: "CUSTOM_TRIGGER";
7
- readonly SearchBar: "SEARCH_BAR";
8
- readonly EmbeddedChat: "EMBEDDED_CHAT";
9
- readonly EmbeddedSearch: "EMBEDDED_SEARCH";
10
- readonly EmbeddedSearchAndChat: "EMBEDDED_SEARCH_AND_CHAT";
11
- readonly IntelligentForm: "INTELLIGENT_FORM";
5
+ readonly ChatButton: "ChatButton";
6
+ readonly CustomTrigger: "CustomTrigger";
7
+ readonly SearchBar: "SearchBar";
8
+ readonly EmbeddedChat: "EmbeddedChat";
9
+ readonly EmbeddedSearch: "EmbeddedSearch";
10
+ readonly EmbeddedSearchAndChat: "EmbeddedSearchAndChat";
11
+ readonly IntelligentForm: "IntelligentForm";
12
12
  };
13
13
  export interface WidgetConfig extends InkeepConfig {
14
14
  aiChatSettings: InkeepConfig['aiChatSettings'] & DefaultInkeepAIChatSettings;
@@ -2,13 +2,13 @@ import { ReactNode } from 'react';
2
2
  import { DefaultInkeepAIChatSettings, DefaultInkeepBaseSettings, DefaultInkeepSearchSettings } from '../utils/default-settings';
3
3
  import { InkeepConfig } from '@inkeep/cxkit-types';
4
4
  export declare const WebWidgetInteractionType: {
5
- readonly ChatButton: "CHAT_BUTTON";
6
- readonly CustomTrigger: "CUSTOM_TRIGGER";
7
- readonly SearchBar: "SEARCH_BAR";
8
- readonly EmbeddedChat: "EMBEDDED_CHAT";
9
- readonly EmbeddedSearch: "EMBEDDED_SEARCH";
10
- readonly EmbeddedSearchAndChat: "EMBEDDED_SEARCH_AND_CHAT";
11
- readonly IntelligentForm: "INTELLIGENT_FORM";
5
+ readonly ChatButton: "ChatButton";
6
+ readonly CustomTrigger: "CustomTrigger";
7
+ readonly SearchBar: "SearchBar";
8
+ readonly EmbeddedChat: "EmbeddedChat";
9
+ readonly EmbeddedSearch: "EmbeddedSearch";
10
+ readonly EmbeddedSearchAndChat: "EmbeddedSearchAndChat";
11
+ readonly IntelligentForm: "IntelligentForm";
12
12
  };
13
13
  export interface WidgetConfig extends InkeepConfig {
14
14
  aiChatSettings: InkeepConfig['aiChatSettings'] & DefaultInkeepAIChatSettings;
@@ -1,37 +1,37 @@
1
1
  "use client";
2
- import { jsx as d } from "react/jsx-runtime";
3
- import { mergeAndCompare as C } from "merge-anything";
4
- import { createContext as g, useContext as p } from "react";
5
- import { defaultInkeepSearchSettings as f, defaultInkeepBaseSettings as m, defaultInkeepAIChatSettings as E } from "../utils/default-settings.js";
6
- import { useShadow as S } from "../atoms/shadow/context.js";
7
- const h = {
8
- ChatButton: "CHAT_BUTTON",
9
- CustomTrigger: "CUSTOM_TRIGGER",
10
- SearchBar: "SEARCH_BAR",
11
- EmbeddedChat: "EMBEDDED_CHAT",
12
- EmbeddedSearch: "EMBEDDED_SEARCH",
13
- EmbeddedSearchAndChat: "EMBEDDED_SEARCH_AND_CHAT",
14
- IntelligentForm: "INTELLIGENT_FORM"
2
+ import { jsx as c } from "react/jsx-runtime";
3
+ import { mergeAndCompare as g } from "merge-anything";
4
+ import { createContext as m, useContext as p } from "react";
5
+ import { defaultInkeepSearchSettings as h, defaultInkeepBaseSettings as C, defaultInkeepAIChatSettings as f } from "../utils/default-settings.js";
6
+ import { useShadow as u } from "../atoms/shadow/context.js";
7
+ const S = {
8
+ ChatButton: "ChatButton",
9
+ CustomTrigger: "CustomTrigger",
10
+ SearchBar: "SearchBar",
11
+ EmbeddedChat: "EmbeddedChat",
12
+ EmbeddedSearch: "EmbeddedSearch",
13
+ EmbeddedSearchAndChat: "EmbeddedSearchAndChat",
14
+ IntelligentForm: "IntelligentForm"
15
15
  }, i = {
16
16
  prefix: "ikp",
17
17
  // Default prefix
18
- aiChatSettings: E,
19
- baseSettings: m,
20
- searchSettings: f,
21
- interactionType: h.EmbeddedChat
22
- }, s = g(i), B = ({ children: t, value: r }) => {
23
- const a = S(), c = C((o, e, n) => (n === "apiKey" && !e && !r?.baseSettings?.baseUrl && console.warn("Inkeep API key is missing."), n === "tools" && Array.isArray(e) ? (o || []).concat(e) : ["baseSettings", "searchSettings", "aiChatSettings"].includes(n) && !e ? o : e), i, {
18
+ aiChatSettings: f,
19
+ baseSettings: C,
20
+ searchSettings: h,
21
+ componentType: S.EmbeddedChat
22
+ }, s = m(i), v = ({ children: t, value: r }) => {
23
+ const a = u(), d = g((o, e, n) => (n === "apiKey" && !e && !r?.baseSettings?.aiApiBaseUrl && console.warn("Inkeep API key is missing."), n === "tools" && Array.isArray(e) ? (o || []).concat(e) : ["baseSettings", "searchSettings", "aiChatSettings"].includes(n) && !e ? o : e), i, {
24
24
  baseSettings: a ?? {}
25
25
  }, r ?? {});
26
- return /* @__PURE__ */ d(s.Provider, { value: c, children: t });
27
- }, x = () => {
26
+ return /* @__PURE__ */ c(s.Provider, { value: d, children: t });
27
+ }, w = () => {
28
28
  const t = p(s);
29
29
  if (!t)
30
30
  throw new Error("useInkeepConfig must be used within a ConfigProvider");
31
31
  return t;
32
32
  };
33
33
  export {
34
- B as InkeepConfigProvider,
35
- h as WebWidgetInteractionType,
36
- x as useInkeepConfig
34
+ v as InkeepConfigProvider,
35
+ S as WebWidgetInteractionType,
36
+ w as useInkeepConfig
37
37
  };
@@ -1 +1 @@
1
- "use client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const _=require("react/jsx-runtime"),n=require("react"),x=require("../atoms/api/analytics/feedback.cjs"),M=require("../components/embedded-chat/chat-provider.cjs"),l=require("../utils/misc.cjs"),S=require("./config-provider.cjs"),E=require("./conversation-provider.cjs"),j=require("./chat-events-provider.cjs"),I=require("./user-provider.cjs"),f=n.createContext(void 0);function R(){const{baseSettings:e}=S.useInkeepConfig(),{apiKey:s,analyticsBaseUrl:o}=e,[b,g]=n.useState(null),[F,h]=n.useState({}),{conversation:k}=E.useInkeepConversation(),{messages:c,selectedWorkflow:m}=M.useChat(),{userProperties:p}=I.useUser(),{logEvent:C}=j.useChatEvents(),r=n.useCallback(async(t,a,i=[])=>{const u=await x.submitFeedback({type:a,messageId:t,reasons:i,apiKey:s,apiUrl:o,userProperties:p});u&&h(d=>({...d,[t]:{type:u.type,reasons:u.reasons}}));const v=c.findIndex(d=>d.id===t),w=c[v],y={conversationId:k.id,question:l.getMessageContent(c[v-1]),answer:l.getMessageContent(w),messageId:t,reasons:i,workflowId:m?.id};C({eventName:a==="positive"?"chat_thumbs_up_feedback_submitted":"chat_thumbs_down_feedback_submitted",properties:y})},[c,k]),P=n.useCallback(async t=>{r(t,"positive")},[r]),q=n.useCallback(async(t,a)=>{const i=$(a);r(t,"negative",i)},[r]);return{feedback:F,currentFeedback:b,setCurrentFeedback:g,submitPositiveFeedback:P,submitNegativeFeedback:q}}const U=({children:e})=>{const s=R();return _.jsx(f.Provider,{value:s,children:e})},N=()=>{const e=n.useContext(f);if(!e)throw new Error("useFeedback must be used within a FeedbackProvider");return e};function $(e){const s=[];for(const o in e)e[o]==="on"&&s.push({label:o,details:e[`${o}:description`]||""});return s.length>0?s:[]}exports.FeedbackProvider=U;exports.useMessageFeedback=N;
1
+ "use client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const _=require("react/jsx-runtime"),n=require("react"),x=require("../atoms/api/analytics/feedback.cjs"),M=require("../components/embedded-chat/chat-provider.cjs"),l=require("../utils/misc.cjs"),S=require("./config-provider.cjs"),E=require("./conversation-provider.cjs"),j=require("./chat-events-provider.cjs"),I=require("./user-provider.cjs"),f=n.createContext(void 0);function R(){const{baseSettings:e}=S.useInkeepConfig(),{apiKey:s,analyticsApiBaseUrl:o}=e,[b,g]=n.useState(null),[F,h]=n.useState({}),{conversation:k}=E.useInkeepConversation(),{messages:c,selectedWorkflow:p}=M.useChat(),{userProperties:m}=I.useUser(),{logEvent:C}=j.useChatEvents(),r=n.useCallback(async(t,a,i=[])=>{const u=await x.submitFeedback({type:a,messageId:t,reasons:i,apiKey:s,apiUrl:o,userProperties:m});u&&h(d=>({...d,[t]:{type:u.type,reasons:u.reasons}}));const v=c.findIndex(d=>d.id===t),w=c[v],y={conversationId:k.id,question:l.getMessageContent(c[v-1]),answer:l.getMessageContent(w),messageId:t,reasons:i,workflowId:p?.id};C({eventName:a==="positive"?"chat_thumbs_up_feedback_submitted":"chat_thumbs_down_feedback_submitted",properties:y})},[c,k]),P=n.useCallback(async t=>{r(t,"positive")},[r]),q=n.useCallback(async(t,a)=>{const i=$(a);r(t,"negative",i)},[r]);return{feedback:F,currentFeedback:b,setCurrentFeedback:g,submitPositiveFeedback:P,submitNegativeFeedback:q}}const U=({children:e})=>{const s=R();return _.jsx(f.Provider,{value:s,children:e})},N=()=>{const e=n.useContext(f);if(!e)throw new Error("useFeedback must be used within a FeedbackProvider");return e};function $(e){const s=[];for(const o in e)e[o]==="on"&&s.push({label:o,details:e[`${o}:description`]||""});return s.length>0?s:[]}exports.FeedbackProvider=U;exports.useMessageFeedback=N;
@@ -1,16 +1,16 @@
1
1
  "use client";
2
2
  import { jsx as E } from "react/jsx-runtime";
3
- import { createContext as I, useContext as U, useState as f, useCallback as u } from "react";
3
+ import { createContext as I, useContext as U, useState as p, useCallback as u } from "react";
4
4
  import { submitFeedback as M } from "../atoms/api/analytics/feedback.js";
5
5
  import { useChat as N } from "../components/embedded-chat/chat-provider.js";
6
- import { getMessageContent as p } from "../utils/misc.js";
6
+ import { getMessageContent as f } from "../utils/misc.js";
7
7
  import { useInkeepConfig as S } from "./config-provider.js";
8
8
  import { useInkeepConversation as j } from "./conversation-provider.js";
9
9
  import { useChatEvents as q } from "./chat-events-provider.js";
10
- import { useUser as B } from "./user-provider.js";
10
+ import { useUser as A } from "./user-provider.js";
11
11
  const l = I(void 0);
12
- function K() {
13
- const { baseSettings: e } = S(), { apiKey: s, analyticsBaseUrl: o } = e, [b, v] = f(null), [F, h] = f({}), { conversation: m } = j(), { messages: n, selectedWorkflow: g } = N(), { userProperties: C } = B(), { logEvent: w } = q(), r = u(
12
+ function B() {
13
+ const { baseSettings: e } = S(), { apiKey: s, analyticsApiBaseUrl: o } = e, [b, v] = p(null), [F, h] = p({}), { conversation: m } = j(), { messages: n, selectedWorkflow: g } = N(), { userProperties: C } = A(), { logEvent: w } = q(), r = u(
14
14
  async (t, c, i = []) => {
15
15
  const a = await M({
16
16
  type: c,
@@ -26,8 +26,8 @@ function K() {
26
26
  }));
27
27
  const k = n.findIndex((d) => d.id === t), y = n[k], P = {
28
28
  conversationId: m.id,
29
- question: p(n[k - 1]),
30
- answer: p(y),
29
+ question: f(n[k - 1]),
30
+ answer: f(y),
31
31
  messageId: t,
32
32
  reasons: i,
33
33
  workflowId: g?.id
@@ -45,7 +45,7 @@ function K() {
45
45
  [r]
46
46
  ), x = u(
47
47
  async (t, c) => {
48
- const i = R(c);
48
+ const i = K(c);
49
49
  r(t, "negative", i);
50
50
  },
51
51
  [r]
@@ -59,7 +59,7 @@ function K() {
59
59
  };
60
60
  }
61
61
  const O = ({ children: e }) => {
62
- const s = K();
62
+ const s = B();
63
63
  return /* @__PURE__ */ E(l.Provider, { value: s, children: e });
64
64
  }, Q = () => {
65
65
  const e = U(l);
@@ -67,7 +67,7 @@ const O = ({ children: e }) => {
67
67
  throw new Error("useFeedback must be used within a FeedbackProvider");
68
68
  return e;
69
69
  };
70
- function R(e) {
70
+ function K(e) {
71
71
  const s = [];
72
72
  for (const o in e)
73
73
  e[o] === "on" && s.push({
@@ -1 +1 @@
1
- "use client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),t=require("./config-provider.cjs"),c=require("./theme-provider.cjs"),s=require("./user-provider.cjs");function d(r){const{children:i,config:o,interactionType:n}=r;return e.jsx(t.InkeepConfigProvider,{value:{...o,interactionType:n},children:e.jsx(c.ThemeProvider,{children:e.jsx(s.UserProvider,{children:i})})})}exports.RootProvider=d;
1
+ "use client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),t=require("./config-provider.cjs"),c=require("./theme-provider.cjs"),s=require("./user-provider.cjs");function d(r){const{children:o,config:i,componentType:n}=r;return e.jsx(t.InkeepConfigProvider,{value:{...i,componentType:n},children:e.jsx(c.ThemeProvider,{children:e.jsx(s.UserProvider,{children:o})})})}exports.RootProvider=d;
@@ -3,6 +3,6 @@ import { InkeepConfig } from '@inkeep/cxkit-types';
3
3
  export interface RootProviderProps {
4
4
  children: React.ReactNode;
5
5
  config: Partial<InkeepConfig>;
6
- interactionType: (typeof WebWidgetInteractionType)[keyof typeof WebWidgetInteractionType];
6
+ componentType: (typeof WebWidgetInteractionType)[keyof typeof WebWidgetInteractionType];
7
7
  }
8
8
  export declare function RootProvider(props: RootProviderProps): import("react/jsx-runtime").JSX.Element;
@@ -3,6 +3,6 @@ import { InkeepConfig } from '@inkeep/cxkit-types';
3
3
  export interface RootProviderProps {
4
4
  children: React.ReactNode;
5
5
  config: Partial<InkeepConfig>;
6
- interactionType: (typeof WebWidgetInteractionType)[keyof typeof WebWidgetInteractionType];
6
+ componentType: (typeof WebWidgetInteractionType)[keyof typeof WebWidgetInteractionType];
7
7
  }
8
8
  export declare function RootProvider(props: RootProviderProps): import("react/jsx-runtime").JSX.Element;
@@ -4,13 +4,13 @@ import { InkeepConfigProvider as t } from "./config-provider.js";
4
4
  import { ThemeProvider as m } from "./theme-provider.js";
5
5
  import { UserProvider as c } from "./user-provider.js";
6
6
  function v(o) {
7
- const { children: e, config: i, interactionType: n } = o;
7
+ const { children: e, config: i, componentType: n } = o;
8
8
  return /* @__PURE__ */ r(
9
9
  t,
10
10
  {
11
11
  value: {
12
12
  ...i,
13
- interactionType: n
13
+ componentType: n
14
14
  },
15
15
  children: /* @__PURE__ */ r(m, { children: /* @__PURE__ */ r(c, { children: e }) })
16
16
  }
@@ -1 +1 @@
1
- "use client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("react/jsx-runtime"),d=require("@inkeep/cxkit-theme"),A=require("@inkeep/cxkit-color-mode"),F=require("./config-provider.cjs"),z=require("merge-anything"),D=require("../atoms/custom-styles.cjs"),c=require("react"),E=({children:m})=>{const{baseSettings:g}=F.useInkeepConfig(),{theme:r,primaryBrandColor:h,shadowHost:b,rootElement:y,colorMode:C}=g,{primaryColors:f,varsClassName:M}=r,{fontFamily:S,fontSize:v,zIndex:k}=r,q=d.createColorScheme(f,h),x={colors:z.merge(r.colors,q),fontFamily:S,fontSize:v,zIndex:k},j=d.createCSSVariables(x),{customStyles:p,loaded:P}=D.useCustomStyles(),{sync:e,forcedColorMode:T,...I}=C??{},[R,i]=c.useState(),V=c.useRef(null);return c.useEffect(()=>{if(!e?.target)return;function l(n,t){return t.reduce((w,u)=>({...w,[u]:n.getAttribute(u)}),{})}const s=new MutationObserver(()=>{const n=l(e.target,e.attributes),t=e.isDarkMode(n)?"dark":"light";e.onChange?.(t),i(t)});s.observe(e.target,{attributes:!0,attributeFilter:e.attributes,childList:!1,subtree:!1}),V.current=s;const a=e.isDarkMode(l(e.target,e?.attributes))?"dark":"light";return e.onChange?.(a),i(a),()=>s.disconnect()},[e]),o.jsxs(o.Fragment,{children:[p,P&&o.jsx(A.ColorModeProvider,{forcedColorMode:T??R,...I,shadowHostId:b?.id,rootId:y?.id,children:o.jsx("div",{className:M,style:{display:"contents",...j},children:m})})]})};exports.ThemeProvider=E;
1
+ "use client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("react/jsx-runtime"),m=require("@inkeep/cxkit-theme"),F=require("@inkeep/cxkit-color-mode"),z=require("./config-provider.cjs"),D=require("merge-anything"),E=require("../atoms/custom-styles.cjs"),i=require("react"),H=({children:g})=>{const{baseSettings:y}=z.useInkeepConfig(),{theme:s,primaryBrandColor:h,shadowHost:b,rootElement:f,colorMode:C}=y,{primaryColors:S,varsClassName:M}=s,{fontFamily:v,fontSize:q,zIndex:k}=s,x=m.createColorScheme(S,h),p={colors:D.merge(s.colors,x),fontFamily:v,fontSize:q,zIndex:k},T=m.createCSSVariables(p),{customStyles:j,loaded:P}=E.useCustomStyles(),{sync:e,forcedColorMode:I,...R}=C??{},[V,l]=i.useState(),w=i.useRef(null);return i.useEffect(()=>{if(!e?.target)return;const t=typeof e.target=="string"?document.querySelector(e.target):e.target;if(!t)return;function a(c,o){return o.reduce((A,d)=>({...A,[d]:c.getAttribute(d)}),{})}const n=new MutationObserver(()=>{const c=a(t,e.attributes),o=e.isDarkMode?.(c)?"dark":"light";e.onChange?.(o),l(o)});n.observe(t,{attributes:!0,attributeFilter:e.attributes,childList:!1,subtree:!1}),w.current=n;const u=e.isDarkMode?.(a(t,e?.attributes))?"dark":"light";return e.onChange?.(u),l(u),()=>n.disconnect()},[e]),r.jsxs(r.Fragment,{children:[j,P&&r.jsx(F.ColorModeProvider,{forcedColorMode:I??V,...R,shadowHostId:b?.id,rootId:f?.id,children:r.jsx("div",{className:M,style:{display:"contents",...T},children:g})})]})};exports.ThemeProvider=H;