@factorialco/f0-react 1.348.1 → 1.349.0

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,6 +1,6 @@
1
1
  import { jsx as X, jsxs as le } from "react/jsx-runtime";
2
2
  import { useInsertionEffect as Xe, createContext as ke, useContext as $e, useRef as _, useEffect as ne, useState as _e, useCallback as ze, useMemo as Ye } from "react";
3
- import { y as qe, z as We, D as He, G as je, J as Ne, K as Ke, M as Qe, N as Je, Q as Ze, R as et, V as Ce, W as tt, X as rt, Y as nt, Z as it, _ as ot, $ as at, a0 as st, a1 as ie, a2 as ct, a3 as ut, a4 as lt, a5 as ft, a6 as mt, a7 as dt, a8 as fe, a9 as ht } from "./F0AiChat-CA1GA0lK.js";
3
+ import { y as qe, z as We, D as He, G as je, J as Ne, K as Ke, M as Qe, N as Je, Q as Ze, R as et, V as Ce, W as tt, X as rt, Y as nt, Z as it, _ as ot, $ as at, a0 as st, a1 as ie, a2 as ct, a3 as ut, a4 as lt, a5 as ft, a6 as mt, a7 as dt, a8 as fe, a9 as ht } from "./F0AiChat-BvUVqI0d.js";
4
4
  import { useTrackVolume as pt } from "@livekit/components-react";
5
5
  function vt(t, e, r) {
6
6
  Xe(() => t.on(e, r), [t, e, r]);
package/dist/ai.d.ts CHANGED
@@ -26,6 +26,15 @@ export declare const actionItemStatuses: readonly ["inProgress", "executing", "c
26
26
 
27
27
  /* Excluded from this release type: AgentState */
28
28
 
29
+ /**
30
+ * Disclaimer configuration for the chat input
31
+ */
32
+ declare type AiChatDisclaimer = {
33
+ text: string;
34
+ link?: string;
35
+ linkText?: string;
36
+ };
37
+
29
38
  /**
30
39
  * Props for the AiChatProvider component
31
40
  */
@@ -34,6 +43,12 @@ export declare type AiChatProviderProps = {
34
43
  greeting?: string;
35
44
  initialMessage?: string | string[];
36
45
  welcomeScreenSuggestions?: WelcomeScreenSuggestion[];
46
+ disclaimer?: AiChatDisclaimer;
47
+ /**
48
+ * Enable resizable chat window
49
+ * When enabled, the chat can be resized between 300px and 50% of the screen width
50
+ */
51
+ resizable?: boolean;
37
52
  onThumbsUp?: (message: AIMessage, { threadId, feedback }: {
38
53
  threadId: string;
39
54
  feedback: string;
@@ -91,7 +106,16 @@ declare type AiChatProviderReturnValue = {
91
106
  */
92
107
  sendMessage: (message: string | Message) => void;
93
108
  /* Excluded from this release type: setSendMessageFunction */
94
- } & Pick<AiChatState, "greeting" | "agent">;
109
+ /**
110
+ * Current width of the chat window (for resizable mode)
111
+ */
112
+ chatWidth: number;
113
+ setChatWidth: React.Dispatch<React.SetStateAction<number>>;
114
+ /**
115
+ * Reset the chat width to the default value (360px)
116
+ */
117
+ resetChatWidth: () => void;
118
+ } & Pick<AiChatState, "greeting" | "agent" | "disclaimer" | "resizable">;
95
119
 
96
120
  /**
97
121
  * Internal state for the AiChat provider
@@ -102,6 +126,8 @@ declare interface AiChatState {
102
126
  agent?: string;
103
127
  initialMessage?: string | string[];
104
128
  welcomeScreenSuggestions?: WelcomeScreenSuggestion[];
129
+ disclaimer?: AiChatDisclaimer;
130
+ resizable?: boolean;
105
131
  placeholders?: string[];
106
132
  setPlaceholders?: React.Dispatch<React.SetStateAction<string[]>>;
107
133
  onThumbsUp?: (message: AIMessage, { threadId, feedback }: {
@@ -695,7 +721,7 @@ export declare const F0AiChat: () => JSX_2.Element | null;
695
721
  /**
696
722
  * @experimental This is an experimental component use it at your own risk
697
723
  */
698
- export declare const F0AiChatProvider: ({ enabled, greeting, initialMessage, welcomeScreenSuggestions, onThumbsUp, onThumbsDown, children, agent, ...copilotKitProps }: AiChatProviderProps) => JSX_2.Element;
724
+ export declare const F0AiChatProvider: ({ enabled, greeting, initialMessage, welcomeScreenSuggestions, disclaimer, resizable, onThumbsUp, onThumbsDown, children, agent, ...copilotKitProps }: AiChatProviderProps) => JSX_2.Element;
699
725
 
700
726
  export declare const F0AiChatTextArea: ({ submitLabel, inProgress, onSend, onStop, placeholders, defaultPlaceholder, autoFocus, }: F0AiChatTextAreaProps) => JSX_2.Element;
701
727
 
@@ -1067,6 +1093,11 @@ declare module "gridstack" {
1067
1093
  }
1068
1094
 
1069
1095
 
1096
+ declare namespace Calendar {
1097
+ var displayName: string;
1098
+ }
1099
+
1100
+
1070
1101
  declare module "@tiptap/core" {
1071
1102
  interface Commands<ReturnType> {
1072
1103
  aiBlock: {
@@ -1103,8 +1134,3 @@ declare module "@tiptap/core" {
1103
1134
  };
1104
1135
  }
1105
1136
  }
1106
-
1107
-
1108
- declare namespace Calendar {
1109
- var displayName: string;
1110
- }
package/dist/ai.js CHANGED
@@ -1,6 +1,6 @@
1
- import { A as e, B as o, C as t, E as n, h as i, F as r, a as l, x as c, i as A, b as u, s as F, t as h, v as C, w as T, c as d, n as m, o as I, p as f, H as g, I as S, k as p, L as x, O as H, q as P, P as b, S as k, T as O, l as v, m as w, U as M, r as E, j as L, d as q, e as B, u as U, g as j, f as z } from "./F0AiChat-CA1GA0lK.js";
1
+ import { A as e, B as o, C as t, E as n, h as i, F as r, a as l, x as c, i as A, b as u, s as F, t as h, v as C, w as T, c as d, n as m, o as I, p as f, H as g, I as S, k as p, L as x, O as H, q as P, P as b, S as k, T as O, l as v, m as w, U as M, r as E, j as L, d as q, e as B, u as U, g as j, f as z } from "./F0AiChat-BvUVqI0d.js";
2
2
  import { defaultTranslations as R } from "./i18n-provider-defaults.js";
3
- import { A as y, F as G, c as J, b as K, a as N, o as Q, u as W } from "./F0HILActionConfirmation-CdDVUmST.js";
3
+ import { A as y, F as G, c as J, b as K, a as N, o as Q, u as W } from "./F0HILActionConfirmation-BvB7LpeC.js";
4
4
  export {
5
5
  e as A,
6
6
  y as AiChatTranslationsProvider,
@@ -386,6 +386,15 @@ declare type AIButton = {
386
386
  editable?: boolean;
387
387
  };
388
388
 
389
+ /**
390
+ * Disclaimer configuration for the chat input
391
+ */
392
+ declare type AiChatDisclaimer = {
393
+ text: string;
394
+ link?: string;
395
+ linkText?: string;
396
+ };
397
+
389
398
  /**
390
399
  * Props for the AiChatProvider component
391
400
  */
@@ -394,6 +403,12 @@ declare type AiChatProviderProps = {
394
403
  greeting?: string;
395
404
  initialMessage?: string | string[];
396
405
  welcomeScreenSuggestions?: WelcomeScreenSuggestion[];
406
+ disclaimer?: AiChatDisclaimer;
407
+ /**
408
+ * Enable resizable chat window
409
+ * When enabled, the chat can be resized between 300px and 50% of the screen width
410
+ */
411
+ resizable?: boolean;
397
412
  onThumbsUp?: (message: AIMessage, { threadId, feedback }: {
398
413
  threadId: string;
399
414
  feedback: string;
@@ -6481,6 +6496,11 @@ declare module "gridstack" {
6481
6496
  }
6482
6497
 
6483
6498
 
6499
+ declare namespace Calendar {
6500
+ var displayName: string;
6501
+ }
6502
+
6503
+
6484
6504
  declare module "@tiptap/core" {
6485
6505
  interface Commands<ReturnType> {
6486
6506
  aiBlock: {
@@ -6517,8 +6537,3 @@ declare module "@tiptap/core" {
6517
6537
  };
6518
6538
  }
6519
6539
  }
6520
-
6521
-
6522
- declare namespace Calendar {
6523
- var displayName: string;
6524
- }
@@ -1,10 +1,10 @@
1
- import { a5 as lk, bt as L6, bu as F6, bv as P6, bw as Jc, bx as z6, by as Rf, D as $6, bz as B6, ab as le, V as dk, J as j6, bA as H6, ao as dd, bB as fk, bC as V6, bD as W6, ak as ck, bE as hg, bF as ll, bG as q6, a6 as T, a7 as yi, u as Ce, bH as U6, bI as G6, bJ as K6, bK as J6, bL as Y6, av as lt, bM as Q6, bN as em, bO as uk, aj as Je, bP as X6, bQ as hk, ah as me, bR as pk, bS as mk, ac as Wt, bT as gk, bU as uh, bV as yk, a8 as Q, bW as co, ag as U, bX as Jn, bY as Z6, bZ as eC, b_ as ra, b$ as vk, c0 as bk, aP as Yn, c1 as kk, c2 as tm, c3 as In, c4 as nm, c5 as us, v as xk, c6 as tC, c7 as br, am as Re, a9 as kr, c8 as wk, c9 as nC, ca as pg, cb as Hs, cc as im, cd as Ba, ce as fd, cf as iC, cg as _k, ch as rC, ci as rm, cj as sa, ck as yn, cl as sC, cm as oC, cn as nr, co as Yc, cp as aC, cq as Lo, cr as Ss, cs as lC, ct as Ck, cu as dC, cv as fC, cw as cC, cx as uC, ad as cn, af as xt, cy as Sk, cz as Nk, aL as sm, t as hC, cA as om, cB as Ek, cC as Lf, cD as pC, al as Zr, cE as mC, cF as Qc, cG as gC, cH as am, cI as hs, cJ as ir, cK as lm, cL as mg, cM as gg, cN as yC, cO as yg, cP as Tk, cQ as dm, cR as Ak, cS as vC, at as Ff, au as Pf, aw as zf, bq as ja, b4 as cd, ai as Ha, cT as bC, cU as Mk, an as zn, b2 as ui, cV as kC, cW as Ok, cX as xC, cY as Dk, b0 as qn, ax as hi, aZ as fm, a_ as Ik, aB as ud, aX as Va, cZ as wC, c_ as Rk, c$ as Lk, d0 as _C, d1 as Wa, d2 as cm, d3 as $f, d4 as oa, b9 as aa, d5 as CC, d6 as Fk, d7 as SC, d8 as NC, d9 as EC, da as TC, db as Pk, dc as AC, dd as zk, de as MC, df as OC, dg as DC, dh as vg, di as $k, dj as IC, dk as hh, dl as Bk, dm as jk, dn as RC, dp as LC, bp as Bf, aJ as Hk, bs as FC, dq as jf, br as PC, dr as Vk, aK as es, aD as zr, ds as bg, dt as hd, du as zC, dv as ph, dw as Hf, dx as $C, dy as BC, b1 as jC, aY as Wk, a as HC, d as VC, dz as um, F as WC, dA as qC, dB as UC, dC as GC, dD as KC, dE as JC, dF as qk, dG as Uk, dH as Gk, dI as YC, dJ as QC, dK as XC, dL as ZC, dM as Kk, dN as eS, dO as Jk, dP as tS, dQ as nS, dR as iS, dS as rS, dT as sS, dU as oS, dV as aS, dW as lS, bd as dS, be as fS, bl as Vf, bj as hm, dX as pm, bk as Yk, aC as cS, bf as pd, dY as uS, dZ as hS, d_ as mh, d$ as pS, e0 as kg, e1 as mS, e2 as gS, e3 as yS, e4 as vS, e5 as bS, e6 as Qk, e7 as kS, aa as Xk, ba as xS, bi as wS, aM as _S, aN as CS, aO as SS, e8 as NS, e9 as Zk, ea as uo, eb as Wf, ec as qf, ed as ho, b3 as mm, ee as xg, ef as ES, eg as TS, eh as gh, ei as ex, ej as tx, ek as nx, el as AS, em as MS, en as OS, eo as DS, ep as ix, eq as rx, er as sx, es as ox, et as IS, eu as ax, ev as lx, ew as dx, ex as RS, ey as fx, ez as LS, eA as FS, eB as PS, eC as zS, eD as $S, eE as BS, eF as jS, eG as HS, eH as wg, eI as _g, eJ as Cg, eK as VS, eL as WS, eM as qS, eN as cx, eO as US } from "./F0AiChat-CA1GA0lK.js";
2
- import { eR as CQ, eQ as SQ, eP as NQ, eW as EQ, eX as TQ, eT as AQ, eS as MQ, eV as OQ, a$ as DQ, eU as IQ } from "./F0AiChat-CA1GA0lK.js";
1
+ import { a5 as lk, bt as L6, bu as F6, bv as P6, bw as Jc, bx as z6, by as Rf, D as $6, bz as B6, ab as le, V as dk, J as j6, bA as H6, ao as dd, bB as fk, bC as V6, bD as W6, ak as ck, bE as hg, bF as ll, bG as q6, a6 as T, a7 as yi, u as Ce, bH as U6, bI as G6, bJ as K6, bK as J6, bL as Y6, av as lt, bM as Q6, bN as em, bO as uk, aj as Je, bP as X6, bQ as hk, ah as me, bR as pk, bS as mk, ac as Wt, bT as gk, bU as uh, bV as yk, a8 as Q, bW as co, ag as U, bX as Jn, bY as Z6, bZ as eC, b_ as ra, b$ as vk, c0 as bk, aP as Yn, c1 as kk, c2 as tm, c3 as In, c4 as nm, c5 as us, v as xk, c6 as tC, c7 as br, am as Re, a9 as kr, c8 as wk, c9 as nC, ca as pg, cb as Hs, cc as im, cd as Ba, ce as fd, cf as iC, cg as _k, ch as rC, ci as rm, cj as sa, ck as yn, cl as sC, cm as oC, cn as nr, co as Yc, cp as aC, cq as Lo, cr as Ss, cs as lC, ct as Ck, cu as dC, cv as fC, cw as cC, cx as uC, ad as cn, af as xt, cy as Sk, cz as Nk, aL as sm, t as hC, cA as om, cB as Ek, cC as Lf, cD as pC, al as Zr, cE as mC, cF as Qc, cG as gC, cH as am, cI as hs, cJ as ir, cK as lm, cL as mg, cM as gg, cN as yC, cO as yg, cP as Tk, cQ as dm, cR as Ak, cS as vC, at as Ff, au as Pf, aw as zf, bq as ja, b4 as cd, ai as Ha, cT as bC, cU as Mk, an as zn, b2 as ui, cV as kC, cW as Ok, cX as xC, cY as Dk, b0 as qn, ax as hi, aZ as fm, a_ as Ik, aB as ud, aX as Va, cZ as wC, c_ as Rk, c$ as Lk, d0 as _C, d1 as Wa, d2 as cm, d3 as $f, d4 as oa, b9 as aa, d5 as CC, d6 as Fk, d7 as SC, d8 as NC, d9 as EC, da as TC, db as Pk, dc as AC, dd as zk, de as MC, df as OC, dg as DC, dh as vg, di as $k, dj as IC, dk as hh, dl as Bk, dm as jk, dn as RC, dp as LC, bp as Bf, aJ as Hk, bs as FC, dq as jf, br as PC, dr as Vk, aK as es, aD as zr, ds as bg, dt as hd, du as zC, dv as ph, dw as Hf, dx as $C, dy as BC, b1 as jC, aY as Wk, a as HC, d as VC, dz as um, F as WC, dA as qC, dB as UC, dC as GC, dD as KC, dE as JC, dF as qk, dG as Uk, dH as Gk, dI as YC, dJ as QC, dK as XC, dL as ZC, dM as Kk, dN as eS, dO as Jk, dP as tS, dQ as nS, dR as iS, dS as rS, dT as sS, dU as oS, dV as aS, dW as lS, bd as dS, be as fS, bl as Vf, bj as hm, dX as pm, bk as Yk, aC as cS, bf as pd, dY as uS, dZ as hS, d_ as mh, d$ as pS, e0 as kg, e1 as mS, e2 as gS, e3 as yS, e4 as vS, e5 as bS, e6 as Qk, e7 as kS, aa as Xk, ba as xS, bi as wS, aM as _S, aN as CS, aO as SS, e8 as NS, e9 as Zk, ea as uo, eb as Wf, ec as qf, ed as ho, b3 as mm, ee as xg, ef as ES, eg as TS, eh as gh, ei as ex, ej as tx, ek as nx, el as AS, em as MS, en as OS, eo as DS, ep as ix, eq as rx, er as sx, es as ox, et as IS, eu as ax, ev as lx, ew as dx, ex as RS, ey as fx, ez as LS, eA as FS, eB as PS, eC as zS, eD as $S, eE as BS, eF as jS, eG as HS, eH as wg, eI as _g, eJ as Cg, eK as VS, eL as WS, eM as qS, eN as cx, eO as US } from "./F0AiChat-BvUVqI0d.js";
2
+ import { eR as CQ, eQ as SQ, eP as NQ, eW as EQ, eX as TQ, eT as AQ, eS as MQ, eV as OQ, a$ as DQ, eU as IQ } from "./F0AiChat-BvUVqI0d.js";
3
3
  import { jsx as u, jsxs as b, Fragment as _e } from "react/jsx-runtime";
4
4
  import * as Xe from "react";
5
5
  import G, { createContext as Qn, forwardRef as ye, useRef as oe, useEffect as re, useContext as Xn, PureComponent as GS, useTransition as KS, useState as z, useLayoutEffect as ps, useId as Uf, useCallback as Te, useMemo as Y, memo as qa, Fragment as Bi, isValidElement as ux, cloneElement as gm, createElement as yh, useDebugValue as hx, createRef as JS, version as Sg, useImperativeHandle as Gf, Children as px } from "react";
6
- import { f as Is, aC as la, j as dl, aD as YS, b as Xc, aE as QS, A as XS, d as fl, i as ZS, m as e9, G as t9, g as Ng, aF as n9, l as Eg, aG as i9, p as r9, aH as mx, aI as gx, aJ as s9, aK as vh, C as o9, av as a9, a4 as Vs, D as Ft, t as l9, x as d9, y as f9, F as c9, M as Tg, N as Ag, O as u9, P as h9, ak as p9, aL as bh, aM as Kf, a8 as m9, aN as yx, aO as g9, aP as y9, aQ as v9, af as kh, aR as b9, aS as k9, aq as ym, ag as vm, aT as vx, ae as bx, a2 as po, aa as x9, aU as w9, aV as _9, aW as C9, a6 as Jf, aX as Yf, aY as Qf, a7 as Xf, aj as bm, aZ as S9, az as N9, a_ as xh, a$ as E9, b0 as md, b1 as T9, aA as A9, b2 as M9, ay as kx, ax as O9, aw as D9, b3 as I9, b4 as R9, b5 as L9, b6 as F9, aB as xx, b7 as wx, ao as _x, b8 as P9, b9 as z9, ba as $9, a9 as B9, R as j9, T as H9, V as V9, W as W9, Z as q9, U as U9, bb as Mg, bc as G9, bd as K9, n as J9 } from "./DataCollectionStorageProvider-q0CnHjJs.js";
7
- import { ab as LQ, a3 as FQ, be as PQ, bf as zQ, al as $Q, am as BQ } from "./DataCollectionStorageProvider-q0CnHjJs.js";
6
+ import { f as Is, aC as la, j as dl, aD as YS, b as Xc, aE as QS, A as XS, d as fl, i as ZS, m as e9, G as t9, g as Ng, aF as n9, l as Eg, aG as i9, p as r9, aH as mx, aI as gx, aJ as s9, aK as vh, C as o9, av as a9, a4 as Vs, D as Ft, t as l9, x as d9, y as f9, F as c9, M as Tg, N as Ag, O as u9, P as h9, ak as p9, aL as bh, aM as Kf, a8 as m9, aN as yx, aO as g9, aP as y9, aQ as v9, af as kh, aR as b9, aS as k9, aq as ym, ag as vm, aT as vx, ae as bx, a2 as po, aa as x9, aU as w9, aV as _9, aW as C9, a6 as Jf, aX as Yf, aY as Qf, a7 as Xf, aj as bm, aZ as S9, az as N9, a_ as xh, a$ as E9, b0 as md, b1 as T9, aA as A9, b2 as M9, ay as kx, ax as O9, aw as D9, b3 as I9, b4 as R9, b5 as L9, b6 as F9, aB as xx, b7 as wx, ao as _x, b8 as P9, b9 as z9, ba as $9, a9 as B9, R as j9, T as H9, V as V9, W as W9, Z as q9, U as U9, bb as Mg, bc as G9, bd as K9, n as J9 } from "./DataCollectionStorageProvider-C80THCov.js";
7
+ import { ab as LQ, a3 as FQ, be as PQ, bf as zQ, al as $Q, am as BQ } from "./DataCollectionStorageProvider-C80THCov.js";
8
8
  import km from "react-dom";
9
9
  import './experimental.css';function Cx(t, e) {
10
10
  const n = lk(e()), i = () => n.set(e());
@@ -1488,12 +1488,12 @@ function Wg({ icon: t, href: e, label: n, disabled: i }) {
1488
1488
  });
1489
1489
  }
1490
1490
  function uY({ module: t, statusTag: e = void 0, breadcrumbs: n = [], actions: i = [], embedded: r = !1, navigation: s, productUpdates: o, favorites: a }) {
1491
- const { sidebarState: l, toggleSidebar: d, isLastToggleInvokedByUser: f } = go(), c = [{
1491
+ const { sidebarState: l, toggleSidebar: d } = go(), f = [{
1492
1492
  id: t.href,
1493
1493
  label: t.name,
1494
1494
  href: t.href,
1495
1495
  module: t.id
1496
- }, ...n], h = e && Object.keys(e).length !== 0, p = n.length > 0, m = !r && i.length > 0, g = !r && !!o?.isVisible, y = c[c.length - 1], v = p ? c[c.length - 2] : null;
1496
+ }, ...n], c = e && Object.keys(e).length !== 0, h = n.length > 0, p = !r && i.length > 0, m = !r && !!o?.isVisible, g = f[f.length - 1], y = h ? f[f.length - 2] : null;
1497
1497
  return b("div", {
1498
1498
  className: T("flex items-center justify-between px-5 py-4 xs:px-6", r ? "h-12" : "h-16"),
1499
1499
  children: [b("div", {
@@ -1515,9 +1515,6 @@ function uY({ module: t, statusTag: e = void 0, breadcrumbs: n = [], actions: i
1515
1515
  children: u("div", {
1516
1516
  className: "mr-3",
1517
1517
  children: u(Q, {
1518
- ref: (w) => {
1519
- f && w?.focus();
1520
- },
1521
1518
  variant: "ghost",
1522
1519
  hideLabel: !0,
1523
1520
  onClick: () => d(),
@@ -1527,36 +1524,36 @@ function uY({ module: t, statusTag: e = void 0, breadcrumbs: n = [], actions: i
1527
1524
  })
1528
1525
  })
1529
1526
  }), b("div", {
1530
- className: T("flex flex-grow items-center gap-2", r && p && "justify-center"),
1531
- children: [r && p && v && !("loading" in v) && u("div", {
1527
+ className: T("flex flex-grow items-center gap-2", r && h && "justify-center"),
1528
+ children: [r && h && y && !("loading" in y) && u("div", {
1532
1529
  className: "absolute left-4",
1533
1530
  children: u(Jn, {
1534
- href: v.href,
1531
+ href: y.href,
1535
1532
  children: u(Q, {
1536
1533
  variant: "ghost",
1537
1534
  hideLabel: !0,
1538
1535
  label: "Back",
1539
1536
  icon: tm,
1540
- onClick: (w) => w.preventDefault()
1537
+ onClick: (v) => v.preventDefault()
1541
1538
  })
1542
1539
  })
1543
- }), r && p ? u("div", {
1540
+ }), r && h ? u("div", {
1544
1541
  className: "text-lg font-semibold text-f1-foreground",
1545
- children: "loading" in y ? u(U, {
1542
+ children: "loading" in g ? u(U, {
1546
1543
  className: "h-4 w-24"
1547
- }) : y.label
1544
+ }) : g.label
1548
1545
  }) : u(z8, {
1549
- breadcrumbs: c,
1546
+ breadcrumbs: f,
1550
1547
  append: a !== void 0 && u(W8, {
1551
1548
  label: a.label,
1552
1549
  isMarked: a.isMarked,
1553
1550
  onChange: a?.onChange
1554
1551
  })
1555
- }, c[0].id)]
1552
+ }, f[0].id)]
1556
1553
  })]
1557
1554
  }), b("div", {
1558
1555
  className: "flex items-center gap-3",
1559
- children: [!r && h && u("div", {
1556
+ children: [!r && c && u("div", {
1560
1557
  children: e.tooltip ? u(In, {
1561
1558
  label: e.tooltip,
1562
1559
  children: u("div", {
@@ -1570,7 +1567,7 @@ function uY({ module: t, statusTag: e = void 0, breadcrumbs: n = [], actions: i
1570
1567
  text: e.text,
1571
1568
  variant: e.variant
1572
1569
  })
1573
- }), !r && h && (s || m || g) && u("div", {
1570
+ }), !r && c && (s || p || m) && u("div", {
1574
1571
  className: "h-4 w-px bg-f1-border-secondary"
1575
1572
  }), s && b("div", {
1576
1573
  className: "flex items-center gap-3",
@@ -1591,21 +1588,21 @@ function uY({ module: t, statusTag: e = void 0, breadcrumbs: n = [], actions: i
1591
1588
  disabled: !s.next
1592
1589
  })]
1593
1590
  })]
1594
- }), s && m && u("div", {
1591
+ }), s && p && u("div", {
1595
1592
  className: "h-4 w-px bg-f1-border-secondary"
1596
- }), (g || m) && b("div", {
1593
+ }), (m || p) && b("div", {
1597
1594
  className: "flex items-center gap-2",
1598
- children: [g && u("div", {
1595
+ children: [m && u("div", {
1599
1596
  className: "items-right flex gap-2",
1600
1597
  children: u(q8, {
1601
1598
  ...o,
1602
1599
  currentModule: t.name
1603
1600
  })
1604
- }), m && u("div", {
1601
+ }), p && u("div", {
1605
1602
  className: "items-right flex gap-2",
1606
- children: i.map((w, x) => u(Z8, {
1607
- action: w
1608
- }, x))
1603
+ children: i.map((v, w) => u(Z8, {
1604
+ action: v
1605
+ }, w))
1609
1606
  })]
1610
1607
  }), b("div", {
1611
1608
  children: [u(xk, {}), u(Dx, {})]
@@ -12811,7 +12808,7 @@ function qM({ ai: t, aiPromotion: e, children: n, sidebar: i, banner: r }) {
12811
12808
  }), u(le.main, {
12812
12809
  id: "content",
12813
12810
  layoutId: "main",
12814
- className: T("relative flex max-w-full flex-1 overflow-auto xs:py-1 xs:pr-1", s === "locked" ? "pl-0" : "xs:pl-1"),
12811
+ className: T("relative flex max-w-full flex-1 overflow-auto xs:py-1", t && t.enabled ? "xs:pr-0.5" : "xs:pr-1", s === "locked" ? "pl-0" : "xs:pl-1"),
12815
12812
  layoutDependency: [s],
12816
12813
  transition: {
12817
12814
  duration: d ? 0 : 0.3,
@@ -12824,7 +12821,10 @@ function qM({ ai: t, aiPromotion: e, children: n, sidebar: i, banner: r }) {
12824
12821
  layout: "position",
12825
12822
  children: n
12826
12823
  })
12827
- }), t && t.enabled && u(WC, {}), e && e.enabled && u(oN, {})]
12824
+ }), t && t.enabled && u("div", {
12825
+ className: "py-1 pr-1 pl-0 h-full flex",
12826
+ children: u(WC, {})
12827
+ }), e && e.enabled && u(oN, {})]
12828
12828
  })
12829
12829
  })]
12830
12830
  })
package/dist/f0.d.ts CHANGED
@@ -261,6 +261,15 @@ declare const actionVariants: readonly ["default", "outline", "critical", "neutr
261
261
 
262
262
  /* Excluded from this release type: AgentState */
263
263
 
264
+ /**
265
+ * Disclaimer configuration for the chat input
266
+ */
267
+ declare type AiChatDisclaimer = {
268
+ text: string;
269
+ link?: string;
270
+ linkText?: string;
271
+ };
272
+
264
273
  /**
265
274
  * Props for the AiChatProvider component
266
275
  */
@@ -269,6 +278,12 @@ export declare type AiChatProviderProps = {
269
278
  greeting?: string;
270
279
  initialMessage?: string | string[];
271
280
  welcomeScreenSuggestions?: WelcomeScreenSuggestion[];
281
+ disclaimer?: AiChatDisclaimer;
282
+ /**
283
+ * Enable resizable chat window
284
+ * When enabled, the chat can be resized between 300px and 50% of the screen width
285
+ */
286
+ resizable?: boolean;
272
287
  onThumbsUp?: (message: AIMessage, { threadId, feedback }: {
273
288
  threadId: string;
274
289
  feedback: string;
@@ -326,7 +341,16 @@ declare type AiChatProviderReturnValue = {
326
341
  */
327
342
  sendMessage: (message: string | Message) => void;
328
343
  /* Excluded from this release type: setSendMessageFunction */
329
- } & Pick<AiChatState, "greeting" | "agent">;
344
+ /**
345
+ * Current width of the chat window (for resizable mode)
346
+ */
347
+ chatWidth: number;
348
+ setChatWidth: React.Dispatch<React.SetStateAction<number>>;
349
+ /**
350
+ * Reset the chat width to the default value (360px)
351
+ */
352
+ resetChatWidth: () => void;
353
+ } & Pick<AiChatState, "greeting" | "agent" | "disclaimer" | "resizable">;
330
354
 
331
355
  /**
332
356
  * Internal state for the AiChat provider
@@ -337,6 +361,8 @@ declare interface AiChatState {
337
361
  agent?: string;
338
362
  initialMessage?: string | string[];
339
363
  welcomeScreenSuggestions?: WelcomeScreenSuggestion[];
364
+ disclaimer?: AiChatDisclaimer;
365
+ resizable?: boolean;
340
366
  placeholders?: string[];
341
367
  setPlaceholders?: React.Dispatch<React.SetStateAction<string[]>>;
342
368
  onThumbsUp?: (message: AIMessage, { threadId, feedback }: {
@@ -2360,7 +2386,7 @@ export declare const F0AiChat: () => JSX_2.Element | null;
2360
2386
  /**
2361
2387
  * @experimental This is an experimental component use it at your own risk
2362
2388
  */
2363
- export declare const F0AiChatProvider: ({ enabled, greeting, initialMessage, welcomeScreenSuggestions, onThumbsUp, onThumbsDown, children, agent, ...copilotKitProps }: AiChatProviderProps) => JSX_2.Element;
2389
+ export declare const F0AiChatProvider: ({ enabled, greeting, initialMessage, welcomeScreenSuggestions, disclaimer, resizable, onThumbsUp, onThumbsDown, children, agent, ...copilotKitProps }: AiChatProviderProps) => JSX_2.Element;
2364
2390
 
2365
2391
  export declare const F0AiChatTextArea: ({ submitLabel, inProgress, onSend, onStop, placeholders, defaultPlaceholder, autoFocus, }: F0AiChatTextAreaProps) => JSX_2.Element;
2366
2392
 
@@ -5829,6 +5855,11 @@ declare module "gridstack" {
5829
5855
  }
5830
5856
 
5831
5857
 
5858
+ declare namespace Calendar {
5859
+ var displayName: string;
5860
+ }
5861
+
5862
+
5832
5863
  declare module "@tiptap/core" {
5833
5864
  interface Commands<ReturnType> {
5834
5865
  aiBlock: {
@@ -5865,8 +5896,3 @@ declare module "@tiptap/core" {
5865
5896
  };
5866
5897
  }
5867
5898
  }
5868
-
5869
-
5870
- declare namespace Calendar {
5871
- var displayName: string;
5872
- }
package/dist/f0.js CHANGED
@@ -1,11 +1,11 @@
1
- import { a6 as G, a7 as Ge, aa as Dn, ab as Ri, ac as Ni, ad as Yr, ae as qr, af as Sn, ag as we, u as Rn, ah as Nn, ai as Jr, aj as Zr, ak as Qr, al as es, am as fe, an as ve, ao as ts, ap as is, aq as An, ar as ns, as as Lt, at as On, au as kn, av as Tn, aw as zn, ax as Pn, ay as Mn, az as rs, aA as ss, aB as os, aC as as, aD as ls, a8 as We, aE as Ji, aF as cs, aG as ds, aH as us, aI as hs, aJ as Ln, aK as fs, aL as gs, aM as ps, aN as ms, aO as vs, aP as In, aQ as ys, aR as bs, aS as xs, I as ws, aT as Cs, aU as _s, aV as Es, aW as Ds } from "./F0AiChat-CA1GA0lK.js";
2
- import { A as zd, bb as Pd, B as Md, C as Ld, E as Id, bq as Hd, h as Fd, F as Bd, a as Wd, x as Gd, i as $d, b as jd, aX as Ud, aY as Vd, aZ as Kd, a_ as Xd, b0 as Yd, b1 as qd, b2 as Jd, b3 as Zd, b4 as Qd, b5 as eu, b6 as tu, b7 as iu, bm as nu, s as ru, t as su, v as ou, b9 as au, w as lu, c as cu, bc as du, n as uu, o as hu, p as fu, H as gu, k as pu, L as mu, O as vu, ba as yu, q as bu, P as xu, S as wu, T as Cu, l as _u, m as Eu, U as Du, bn as Su, bh as Ru, r as Nu, j as Au, bk as Ou, bg as ku, br as Tu, bf as zu, be as Pu, a$ as Mu, d as Lu, bd as Iu, bi as Hu, e as Fu, bs as Bu, b8 as Wu, bj as Gu, g as $u, f as ju, bp as Uu, bl as Vu, bo as Ku } from "./F0AiChat-CA1GA0lK.js";
1
+ import { a6 as G, a7 as Ge, aa as Dn, ab as Ri, ac as Ni, ad as Yr, ae as qr, af as Sn, ag as we, u as Rn, ah as Nn, ai as Jr, aj as Zr, ak as Qr, al as es, am as fe, an as ve, ao as ts, ap as is, aq as An, ar as ns, as as Lt, at as On, au as kn, av as Tn, aw as zn, ax as Pn, ay as Mn, az as rs, aA as ss, aB as os, aC as as, aD as ls, a8 as We, aE as Ji, aF as cs, aG as ds, aH as us, aI as hs, aJ as Ln, aK as fs, aL as gs, aM as ps, aN as ms, aO as vs, aP as In, aQ as ys, aR as bs, aS as xs, I as ws, aT as Cs, aU as _s, aV as Es, aW as Ds } from "./F0AiChat-BvUVqI0d.js";
2
+ import { A as zd, bb as Pd, B as Md, C as Ld, E as Id, bq as Hd, h as Fd, F as Bd, a as Wd, x as Gd, i as $d, b as jd, aX as Ud, aY as Vd, aZ as Kd, a_ as Xd, b0 as Yd, b1 as qd, b2 as Jd, b3 as Zd, b4 as Qd, b5 as eu, b6 as tu, b7 as iu, bm as nu, s as ru, t as su, v as ou, b9 as au, w as lu, c as cu, bc as du, n as uu, o as hu, p as fu, H as gu, k as pu, L as mu, O as vu, ba as yu, q as bu, P as xu, S as wu, T as Cu, l as _u, m as Eu, U as Du, bn as Su, bh as Ru, r as Nu, j as Au, bk as Ou, bg as ku, br as Tu, bf as zu, be as Pu, a$ as Mu, d as Lu, bd as Iu, bi as Hu, e as Fu, bs as Bu, b8 as Wu, bj as Gu, g as $u, f as ju, bp as Uu, bl as Vu, bo as Ku } from "./F0AiChat-BvUVqI0d.js";
3
3
  import { jsx as f, jsxs as T, Fragment as Jt } from "react/jsx-runtime";
4
4
  import L, { forwardRef as oe, useRef as M, useImperativeHandle as Ss, Children as It, createContext as Ae, useContext as _e, useState as F, useMemo as H, useEffect as I, useCallback as U, useLayoutEffect as bi, createElement as Zi, isValidElement as Hn, Fragment as Rs, memo as Ns, useReducer as As, cloneElement as Os, PureComponent as ks } from "react";
5
5
  import { createPortal as Fn, unstable_batchedUpdates as Ot } from "react-dom";
6
- import { L as Bn, C as Ts, i as Wn, D as zs, S as Qi, a as Ps, f as ui, b as ct, c as Ms, A as Ls, d as kt, e as Gn, E as Is, g as Pt, h as Hs, j as Fs, k as Bs, l as Ye, m as $n, u as Ws, G as Gs, n as $s, o as en, p as js, q as jn, r as Us, B as Un, X as Vn, Y as xi, s as Vs, t as Kn, v as Ks, w as Xs, x as Ys, y as qs, z as Js, F as Zs, H as Qs, I as eo, J as tn, K as to, M as dt, N as hi, O as io, P as no, Q as ro, R as so, T as oo, U as ao, V as lo, W as co, Z as uo, _ as ho, $ as fo, a0 as nn, a1 as go, a2 as po, a3 as mo, a4 as vo, a5 as Xn, a6 as yo, a7 as bo, a8 as rn, a9 as xo, aa as Yn, ab as wo, ac as Co, ad as _o, ae as Eo } from "./DataCollectionStorageProvider-q0CnHjJs.js";
7
- import { ax as Yu, af as qu, ag as Ju, aj as Zu, ak as Qu, ao as eh, ap as th, aq as ih, as as nh, at as rh, au as sh, av as oh, an as ah, ar as lh, ah as ch, ai as dh, aw as uh, al as hh, am as fh, ay as gh, az as ph, aA as mh, aB as vh } from "./DataCollectionStorageProvider-q0CnHjJs.js";
8
- import { A as bh, F as xh, c as wh, b as Ch, a as _h, o as Eh, u as Dh } from "./F0HILActionConfirmation-CdDVUmST.js";
6
+ import { L as Bn, C as Ts, i as Wn, D as zs, S as Qi, a as Ps, f as ui, b as ct, c as Ms, A as Ls, d as kt, e as Gn, E as Is, g as Pt, h as Hs, j as Fs, k as Bs, l as Ye, m as $n, u as Ws, G as Gs, n as $s, o as en, p as js, q as jn, r as Us, B as Un, X as Vn, Y as xi, s as Vs, t as Kn, v as Ks, w as Xs, x as Ys, y as qs, z as Js, F as Zs, H as Qs, I as eo, J as tn, K as to, M as dt, N as hi, O as io, P as no, Q as ro, R as so, T as oo, U as ao, V as lo, W as co, Z as uo, _ as ho, $ as fo, a0 as nn, a1 as go, a2 as po, a3 as mo, a4 as vo, a5 as Xn, a6 as yo, a7 as bo, a8 as rn, a9 as xo, aa as Yn, ab as wo, ac as Co, ad as _o, ae as Eo } from "./DataCollectionStorageProvider-C80THCov.js";
7
+ import { ax as Yu, af as qu, ag as Ju, aj as Zu, ak as Qu, ao as eh, ap as th, aq as ih, as as nh, at as rh, au as sh, av as oh, an as ah, ar as lh, ah as ch, ai as dh, aw as uh, al as hh, am as fh, ay as gh, az as ph, aA as mh, aB as vh } from "./DataCollectionStorageProvider-C80THCov.js";
8
+ import { A as bh, F as xh, c as wh, b as Ch, a as _h, o as Eh, u as Dh } from "./F0HILActionConfirmation-BvB7LpeC.js";
9
9
  import { defaultTranslations as Rh } from "./i18n-provider-defaults.js";
10
10
  import './f0.css';const Do = {
11
11
  xs: 1,
@@ -547,6 +547,11 @@ declare module "gridstack" {
547
547
  }
548
548
 
549
549
 
550
+ declare namespace Calendar {
551
+ var displayName: string;
552
+ }
553
+
554
+
550
555
  declare module "@tiptap/core" {
551
556
  interface Commands<ReturnType> {
552
557
  aiBlock: {
@@ -583,8 +588,3 @@ declare module "@tiptap/core" {
583
588
  };
584
589
  }
585
590
  }
586
-
587
-
588
- declare namespace Calendar {
589
- var displayName: string;
590
- }