@factorialco/f0-react 1.379.0 → 1.380.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,7 +1,7 @@
1
1
  import { jsx as _, jsxs as z, Fragment as yt } from "react/jsx-runtime";
2
2
  import * as pe from "react";
3
3
  import D, { useRef as Re, useState as me, useCallback as dt, useEffect as Le, useContext as Qt, useMemo as mt, useLayoutEffect as Vb, createContext as Pn, isValidElement as si, Children as ka, PureComponent as Zn, forwardRef as lt, useImperativeHandle as Ub, cloneElement as St, createElement as Kb, Component as QC, useId as eA, Fragment as bg, useDebugValue as tA, createRef as NN, memo as RN, version as _k } from "react";
4
- import { eS as Sk, bM as IN, eT as $N, ae as Kn, cg as nA, a6 as G, c9 as iA, eU as jN, eV as LN, a7 as Zd, aa as it, ao as zr, eW as fc, bP as Ke, am as rA, eX as FN, eY as BN, dU as aA, eZ as zN, e_ as qN, ca as HN, e$ as WN, aj as Ut, aX as Gb, d5 as oA, d6 as sA, aJ as lA, f0 as po, f1 as VN, f2 as UN, f3 as KN, f4 as Ok, f5 as Ck, f6 as Ak, f7 as Ek, f8 as Tk, f9 as fA, fa as Hc, fb as GN, fc as YN, fd as XN, d3 as Dl, fe as cA, ff as Pk, fg as uA, fh as JN, fi as ZN, fj as QN, fk as eR, fl as tR, fm as Ui, fn as nR, fo as iR, fp as rR, fq as aR, ax as Yb, ba as qr, az as dA, aA as hA, ch as Qd, ap as Se, cD as oR, bY as Xb, bZ as Jb, b_ as Zb, c1 as Qb, dC as sR, aH as pA, fr as mA, dm as yA, d4 as lR, ek as fR, dx as eh, bW as cR, b2 as uR, a8 as Ue, aE as ex, bc as vA, bd as th, aC as gA, eI as tx, fs as dR, af as Va, bo as bA, ft as hR, aW as nx, u as Mn, an as nh, aM as pR, b0 as xA, av as ih, cc as mR, ef as wA, eg as kA, eu as _A, b1 as SA, ai as Dt, ah as ix, fu as OA, aV as yR, a$ as $f, aB as vR, e6 as Pt, fv as CA, fw as AA, fx as xg, fy as gR, fz as Mk, e9 as bR, ea as Dk, at as EA, au as TA, aw as PA, eQ as xR, aP as wR, fA as MA, eG as kR, fB as _R, aL as DA, al as hn, ad as ot, ak as SR, dt as OR, bD as CR, e2 as AR, e3 as ER, eJ as TR, bh as wg, cI as NA, db as PR, fC as MR, fD as RA, d0 as jf, fE as rh, fF as ah, d2 as Lf, cQ as DR, bi as rx, aS as Nk, d$ as NR, a9 as ax, fG as RR, dw as IA, cK as IR, fH as $R, fI as kg, fJ as $A, fK as jA, fL as LA, fM as jR, fN as LR, fO as FR, fP as BR, cR as zR, cS as qR, cT as HR, cU as WR, cV as VR, cW as UR, fQ as KR, cZ as GR, c$ as YR, c_ as XR, bf as JR, d1 as ZR, es as QR, aQ as eI, d7 as tI, fR as nI, fS as iI, fT as rI, fU as aI, dz as oI, ab as sI, aY as lI, aZ as fI, a_ as cI, eD as uI, b3 as dI } from "./F0AiChat-Bza8zqLg.js";
4
+ import { eS as Sk, bM as IN, eT as $N, ae as Kn, cg as nA, a6 as G, c9 as iA, eU as jN, eV as LN, a7 as Zd, aa as it, ao as zr, eW as fc, bP as Ke, am as rA, eX as FN, eY as BN, dU as aA, eZ as zN, e_ as qN, ca as HN, e$ as WN, aj as Ut, aX as Gb, d5 as oA, d6 as sA, aJ as lA, f0 as po, f1 as VN, f2 as UN, f3 as KN, f4 as Ok, f5 as Ck, f6 as Ak, f7 as Ek, f8 as Tk, f9 as fA, fa as Hc, fb as GN, fc as YN, fd as XN, d3 as Dl, fe as cA, ff as Pk, fg as uA, fh as JN, fi as ZN, fj as QN, fk as eR, fl as tR, fm as Ui, fn as nR, fo as iR, fp as rR, fq as aR, ax as Yb, ba as qr, az as dA, aA as hA, ch as Qd, ap as Se, cD as oR, bY as Xb, bZ as Jb, b_ as Zb, c1 as Qb, dC as sR, aH as pA, fr as mA, dm as yA, d4 as lR, ek as fR, dx as eh, bW as cR, b2 as uR, a8 as Ue, aE as ex, bc as vA, bd as th, aC as gA, eI as tx, fs as dR, af as Va, bo as bA, ft as hR, aW as nx, u as Mn, an as nh, aM as pR, b0 as xA, av as ih, cc as mR, ef as wA, eg as kA, eu as _A, b1 as SA, ai as Dt, ah as ix, fu as OA, aV as yR, a$ as $f, aB as vR, e6 as Pt, fv as CA, fw as AA, fx as xg, fy as gR, fz as Mk, e9 as bR, ea as Dk, at as EA, au as TA, aw as PA, eQ as xR, aP as wR, fA as MA, eG as kR, fB as _R, aL as DA, al as hn, ad as ot, ak as SR, dt as OR, bD as CR, e2 as AR, e3 as ER, eJ as TR, bh as wg, cI as NA, db as PR, fC as MR, fD as RA, d0 as jf, fE as rh, fF as ah, d2 as Lf, cQ as DR, bi as rx, aS as Nk, d$ as NR, a9 as ax, fG as RR, dw as IA, cK as IR, fH as $R, fI as kg, fJ as $A, fK as jA, fL as LA, fM as jR, fN as LR, fO as FR, fP as BR, cR as zR, cS as qR, cT as HR, cU as WR, cV as VR, cW as UR, fQ as KR, cZ as GR, c$ as YR, c_ as XR, bf as JR, d1 as ZR, es as QR, aQ as eI, d7 as tI, fR as nI, fS as iI, fT as rI, fU as aI, dz as oI, ab as sI, aY as lI, aZ as fI, a_ as cI, eD as uI, b3 as dI } from "./F0AiChat-CvWFFE9y.js";
5
5
  import ox from "react-dom";
6
6
  import './DataCollectionStorageProvider.css';const hI = {
7
7
  active: !0,
@@ -113229,49 +113229,56 @@ function Eh1() {
113229
113229
  }
113230
113230
  const fM = (e) => typeof e == "string" || typeof e == "number" || typeof e == "boolean" || Array.isArray(e), Fh1 = ({
113231
113231
  defaultFilters: e,
113232
- defaultSorting: t
113232
+ defaultSorting: t,
113233
+ currentVisualization: n
113233
113234
  }) => {
113234
- const n = K2(e), r = K2(t), { onEvent: a } = Eh1(), i = u1(
113235
- (c) => {
113236
- if (!c) return;
113237
- const u = Object.entries(c).find(
113238
- ([m, p]) => n.current?.[m] !== p
113239
- );
113235
+ const r = K2(e), a = K2(t), { onEvent: i } = Eh1(), s = u1(
113236
+ (u) => {
113240
113237
  if (!u) return;
113241
- const [d, C] = u;
113242
- fM(C) && (n.current = c, a("datacollection.filter-change", {
113243
- name: d,
113244
- value: C
113238
+ const d = Object.entries(u).find(
113239
+ ([p, v]) => r.current?.[p] !== v
113240
+ );
113241
+ if (!d) return;
113242
+ const [C, m] = d;
113243
+ fM(m) && (r.current = u, i("datacollection.filter-change", {
113244
+ name: C,
113245
+ value: m,
113246
+ ...n !== void 0 && {
113247
+ visualization: n
113248
+ }
113245
113249
  }));
113246
113250
  },
113247
- [a]
113248
- ), s = u1(
113249
- (c) => {
113250
- r?.current?.field === c?.field && r?.current?.order === c?.order || !c || typeof c.field != "string" || (r.current = c, a("datacollection.sorting-change", {
113251
- name: c.field,
113252
- value: c.order
113251
+ [i, n]
113252
+ ), l = u1(
113253
+ (u) => {
113254
+ a?.current?.field === u?.field && a?.current?.order === u?.order || !u || typeof u.field != "string" || (a.current = u, i("datacollection.sorting-change", {
113255
+ name: u.field,
113256
+ value: u.order
113253
113257
  }));
113254
113258
  },
113255
- [a]
113256
- ), l = u1(
113257
- (c) => {
113258
- if (!c) return;
113259
- const u = Object.entries(c).find(
113260
- ([m, p]) => n.current?.[m] !== p
113261
- );
113259
+ [i]
113260
+ ), c = u1(
113261
+ (u) => {
113262
113262
  if (!u) return;
113263
- const [d, C] = u;
113264
- fM(C) && (n.current = c, a("datacollection.preset-click", {
113265
- name: d,
113266
- value: C
113263
+ const d = Object.entries(u).find(
113264
+ ([p, v]) => r.current?.[p] !== v
113265
+ );
113266
+ if (!d) return;
113267
+ const [C, m] = d;
113268
+ fM(m) && (r.current = u, i("datacollection.preset-click", {
113269
+ name: C,
113270
+ value: m,
113271
+ ...n !== void 0 && {
113272
+ visualization: n
113273
+ }
113267
113274
  }));
113268
113275
  },
113269
- [a]
113276
+ [i, n]
113270
113277
  );
113271
113278
  return {
113272
- emitFilterChange: i,
113273
- emitSortingChange: s,
113274
- emitPresetClick: l
113279
+ emitFilterChange: s,
113280
+ emitSortingChange: l,
113281
+ emitPresetClick: c
113275
113282
  };
113276
113283
  };
113277
113284
  function od(e, t) {
@@ -114616,10 +114623,10 @@ function Kh1({
114616
114623
  R();
114617
114624
  };
114618
114625
  j2(() => {
114619
- const e2 = () => Object.entries(V || {}).find(([i2, m2]) => !Et(e[i2].type).isEmpty(m2, {
114626
+ const e2 = () => Object.entries(V || {}).find(([i2, m2]) => e[i2] ? !Et(e[i2].type).isEmpty(m2, {
114620
114627
  schema: e[i2],
114621
114628
  i18n: C
114622
- }));
114629
+ }) : !1);
114623
114630
  if (g && s === "default") {
114624
114631
  const i2 = e2();
114625
114632
  if (i2)
@@ -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-Bza8zqLg.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-CvWFFE9y.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.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-Bza8zqLg.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-CvWFFE9y.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-DVS7vYT1.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-oxIVVb_t.js";
4
4
  export {
5
5
  e as A,
6
6
  y as AiChatTranslationsProvider,
@@ -1869,6 +1869,9 @@ declare type DataCollectionStatus<CurrentFiltersState extends FiltersState<Filte
1869
1869
  search?: string | undefined;
1870
1870
  navigationFilters?: NavigationFiltersState<NavigationFiltersDefinition>;
1871
1871
  visualization?: number;
1872
+ /** Per-visualization filter states, keyed by visualization index.
1873
+ * Only present when visualizations declare per-view filter overrides. */
1874
+ visualizationFilters?: Record<string, CurrentFiltersState>;
1872
1875
  };
1873
1876
 
1874
1877
  declare type DataCollectionStatusComplete<CurrentFiltersState extends FiltersState<FiltersDefinition>> = DataCollectionStatus<CurrentFiltersState> & {
@@ -1880,7 +1883,7 @@ declare type DataCollectionStorageFeature = (typeof dataCollectionStorageFeature
1880
1883
  /**
1881
1884
  * The available features of the data collection status storage
1882
1885
  */
1883
- declare const dataCollectionStorageFeatures: readonly ["filters", "navigationFilters", "sortings", "grouping", "visualization", "search"];
1886
+ declare const dataCollectionStorageFeatures: readonly ["filters", "navigationFilters", "sortings", "grouping", "visualization", "search", "visualizationFilters"];
1884
1887
 
1885
1888
  declare type DataCollectionStorageFeaturesDefinition = ("*" | `all` | `!${DataCollectionStorageFeature}` | `${DataCollectionStorageFeature}`)[];
1886
1889
 
@@ -6454,27 +6457,27 @@ declare type VisualizacionTypeDefinition<Props, Settings = Record<string, never>
6454
6457
  * @template Filters - The filters type extending FiltersDefinition
6455
6458
  * @template ItemActions - The actions type extending Item ActionsDefinition
6456
6459
  */
6457
- declare type Visualization<R extends RecordType, Filters extends FiltersDefinition, Sortings extends SortingsDefinition, Summaries extends SummariesDefinition, ItemActions extends ItemActionsDefinition<R>, NavigationFilters extends NavigationFiltersDefinition, Grouping extends GroupingDefinition<R>> = {
6460
+ declare type Visualization<R extends RecordType, Filters extends FiltersDefinition, Sortings extends SortingsDefinition, Summaries extends SummariesDefinition, ItemActions extends ItemActionsDefinition<R>, NavigationFilters extends NavigationFiltersDefinition, Grouping extends GroupingDefinition<R>> = ({
6458
6461
  /** Card-based visualization type */
6459
6462
  type: "card";
6460
6463
  /** Configuration options for card visualization */
6461
6464
  options: CardVisualizationOptions<R, Filters, Sortings>;
6462
- } | {
6465
+ } & VisualizationFilterOverrides<Filters>) | ({
6463
6466
  /** Kanban-based visualization type */
6464
6467
  type: "kanban";
6465
6468
  /** Configuration options for kanban visualization */
6466
6469
  options: KanbanVisualizationOptions<R, Filters, Sortings>;
6467
- } | {
6470
+ } & VisualizationFilterOverrides<Filters>) | ({
6468
6471
  /** Table-based visualization type */
6469
6472
  type: "table";
6470
6473
  /** Configuration options for table visualization */
6471
6474
  options: TableVisualizationOptions<R, Filters, Sortings, Summaries>;
6472
- } | {
6475
+ } & VisualizationFilterOverrides<Filters>) | ({
6473
6476
  /** List-based visualization type */
6474
6477
  type: "list";
6475
6478
  /** Configuration options for list visualization */
6476
6479
  options: ListVisualizationOptions<R, Filters, Sortings>;
6477
- } | {
6480
+ } & VisualizationFilterOverrides<Filters>) | ({
6478
6481
  /** Human-readable label for the visualization */
6479
6482
  label: string;
6480
6483
  /** Icon to represent the visualization in UI */
@@ -6488,6 +6491,23 @@ declare type Visualization<R extends RecordType, Filters extends FiltersDefiniti
6488
6491
  onLoadError: OnLoadErrorCallback;
6489
6492
  source: DataCollectionSource<R, Filters, Sortings, Summaries, ItemActions, NavigationFilters, Grouping>;
6490
6493
  }) => JSX.Element;
6494
+ } & VisualizationFilterOverrides<Filters>);
6495
+
6496
+ /**
6497
+ * Optional per-visualization filter and preset overrides.
6498
+ * When provided on a visualization, these override the global source filters/presets
6499
+ * for that specific view, and the view maintains its own independent filter state.
6500
+ *
6501
+ * @template Filters - The filters type extending FiltersDefinition
6502
+ */
6503
+ export declare type VisualizationFilterOverrides<Filters extends FiltersDefinition> = {
6504
+ /** Override which filters are available when this visualization is active.
6505
+ * If not provided, the global source filters are used.
6506
+ * Can be a subset of the source filters definition. */
6507
+ filters?: Partial<Filters>;
6508
+ /** Preset configuration used only when this visualization is active.
6509
+ * These replace the global source presets for this visualization. */
6510
+ presets?: PresetsDefinition<Filters>;
6491
6511
  };
6492
6512
 
6493
6513
  /**