@factorialco/f0-react 11.2.0 → 11.3.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,4 +1,4 @@
1
- import { j as e } from "./CoachmarkProvider-Cv-8HfUP.js";
1
+ import { j as e } from "./CoachmarkProvider-DcDGwL4O.js";
2
2
  import { rn as t } from "./popover-CL68oVjH.js";
3
3
  import { ir as n } from "./F0CanvasPanel-BwTjB_ef.js";
4
4
  import { a as r, f as i, i as a, u as o } from "./posts-DgzHTT_B.js";
@@ -81590,7 +81590,7 @@ var eZ = ({ lanes: e, renderCard: t, getKey: n, onCreate: r, onMove: i, idProvid
81590
81590
  })]
81591
81591
  })
81592
81592
  });
81593
- }, T8e = rre(() => import("./Map-DHXAVOwj.js").then((e) => ({ default: e.MapCollection }))), iZ = {
81593
+ }, T8e = rre(() => import("./Map-BNZxJwoz.js").then((e) => ({ default: e.MapCollection }))), iZ = {
81594
81594
  table: {
81595
81595
  name: "Table",
81596
81596
  icon: pte,
@@ -110127,7 +110127,7 @@ var _xt = ({ aiBlockConfig: e, translations: t, imageUploadConfig: n }) => {
110127
110127
  ref: C,
110128
110128
  id: x,
110129
110129
  "aria-busy": _,
110130
- className: z("rich-text-editor-container pointer-events-auto flex flex-col", h ? "bg-f1-background-tertiary" : "bg-f1-background", A ? "fixed inset-0 z-50" : "relative w-full rounded-xl border border-solid border-f1-border-secondary", !A && g && "border-f1-border-critical-bold bg-f1-background-critical bg-opacity-10"),
110130
+ className: z("rich-text-editor-container pointer-events-auto flex flex-col text-f1-foreground", h ? "bg-f1-background-tertiary" : "bg-f1-background", A ? "fixed inset-0 z-50" : "relative w-full rounded-xl border border-solid border-f1-border-secondary", !A && g && "border-f1-border-critical-bold bg-f1-background-critical bg-opacity-10"),
110131
110131
  children: [
110132
110132
  A ? /* @__PURE__ */ K("div", { className: "pointer-events-none fixed inset-0 z-40" }) : null,
110133
110133
  /* @__PURE__ */ K(Mxt, {
@@ -118069,7 +118069,7 @@ var IOt = (e) => {
118069
118069
  disabled: !s || r
118070
118070
  }) : null,
118071
118071
  /* @__PURE__ */ q("div", {
118072
- className: "notes-text-editor h-full",
118072
+ className: "notes-text-editor h-full text-f1-foreground",
118073
118073
  onClick: () => D.commands.focus(),
118074
118074
  children: [r ? null : /* @__PURE__ */ K(IOt, {
118075
118075
  editor: D,
@@ -1,4 +1,4 @@
1
- import { a as e, o as t, ri as n } from "./CoachmarkProvider-Cv-8HfUP.js";
1
+ import { a as e, o as t, ri as n } from "./CoachmarkProvider-DcDGwL4O.js";
2
2
  import { Ht as r, Lt as i, Mt as a, Zn as o, b as s, gn as c, in as l, ir as u, mn as d, rn as f } from "./popover-CL68oVjH.js";
3
3
  import { L as p, R as m } from "./tooltip-BX4dSfeL.js";
4
4
  import { n as h, r as g } from "./F0Text-CxMxdCn2.js";
@@ -1593,7 +1593,7 @@ var rn = {
1593
1593
  isDark: e
1594
1594
  };
1595
1595
  }, ln = {
1596
- maplibre: async () => (await import("./maplibre-Be6fCegj.js")).createMaplibreAdapter,
1596
+ maplibre: async () => (await import("./maplibre-DUpIL8o7.js")).createMaplibreAdapter,
1597
1597
  google: async (e) => (await import("./google-D1V0swd7.js")).loadGoogleAdapter(e)
1598
1598
  }, un = /* @__PURE__ */ new Map(), dn = (e, t) => {
1599
1599
  let n = un.get(e);
@@ -1,10 +1,10 @@
1
- import { Mt as e, Nt as t } from "./CoachmarkProvider-Cv-8HfUP.js";
1
+ import { Mt as e, Nt as t } from "./CoachmarkProvider-DcDGwL4O.js";
2
2
  import { Vt as n, in as r, pt as i, rn as a } from "./popover-CL68oVjH.js";
3
3
  import { L as o, R as s } from "./tooltip-BX4dSfeL.js";
4
4
  import { t as c } from "./F0Text-CxMxdCn2.js";
5
5
  import { Gr as l, Ur as u, Wr as d } from "./F0CanvasPanel-BwTjB_ef.js";
6
6
  import { L as f, l as p, q as ee } from "./useData-B6HLHEev.js";
7
- import { o as m, t as h } from "./F0Map-xxT7h77R.js";
7
+ import { o as m, t as h } from "./F0Map-RAwqH-Mv.js";
8
8
  import { useCallback as g, useEffect as _, useMemo as v, useRef as y, useState as b } from "react";
9
9
  import { Fragment as x, jsx as S, jsxs as C } from "react/jsx-runtime";
10
10
  //#region src/addons/data-collection/OneDataCollection/visualizations/collection/Map/components/MapNotOnMapButton.tsx
@@ -4,7 +4,7 @@ import { useCallback as i, useEffect as a, useRef as o, useState as s } from "re
4
4
  import { jsx as c, jsxs as l } from "react/jsx-runtime";
5
5
  //#region \0virtual:f0-component-status-data
6
6
  var u = {
7
- generatedAt: "2026-10-27T10:51:39.823Z",
7
+ generatedAt: "2026-10-27T19:15:17.557Z",
8
8
  stats: {
9
9
  total: 310,
10
10
  byStatus: {
@@ -7075,9 +7075,101 @@ export declare const useF0Meeting: () => F0MeetingRuntime;
7075
7075
  export declare const useF0MeetingStable: () => F0MeetingStable;
7076
7076
  export declare const useF0MeetingRoster: () => F0MeetingRoster;
7077
7077
  //#endregion
7078
+ //#region src/domains/platform/communications/meetings/F0Meeting/window/placement.d.ts
7079
+ type Viewport = {
7080
+ width: number;
7081
+ height: number;
7082
+ };
7083
+ /**
7084
+ * Resolves an anchored placement into an absolute rect, clamped into the
7085
+ * current viewport. Anchoring to a corner (rather than storing x/y) is what
7086
+ * keeps the window sensible when the browser is resized: it stays glued to
7087
+ * "its" corner instead of drifting off-screen.
7088
+ */
7089
+ export declare const resolvePlacement: (placement: F0WindowPlacement, viewport: Viewport, minWidth?: number, minHeight?: number) => F0Rect;
7090
+ /** Re-expresses an absolute rect against a given corner. */
7091
+ export declare const placementFromRect: (rect: F0Rect, corner: F0WindowCorner, viewport: Viewport) => F0WindowPlacement;
7092
+ /** The quadrant the rect's centre falls into. */
7093
+ export declare const nearestCorner: (rect: F0Rect, viewport: Viewport) => F0WindowCorner;
7094
+ /**
7095
+ * Placement after a drag: always re-anchored to the nearest corner, and pulled
7096
+ * flush to it when the window was dropped close enough.
7097
+ */
7098
+ export declare const settlePlacement: (rect: F0Rect, viewport: Viewport) => F0WindowPlacement;
7099
+ /** Handle geometry: how a drag delta moves the origin and grows the box. */
7100
+ declare const resizeHandles: {
7101
+ readonly n: {
7102
+ readonly dx: 0;
7103
+ readonly dy: 1;
7104
+ readonly dw: 0;
7105
+ readonly dh: -1;
7106
+ readonly cursor: "ns-resize";
7107
+ };
7108
+ readonly s: {
7109
+ readonly dx: 0;
7110
+ readonly dy: 0;
7111
+ readonly dw: 0;
7112
+ readonly dh: 1;
7113
+ readonly cursor: "ns-resize";
7114
+ };
7115
+ readonly w: {
7116
+ readonly dx: 1;
7117
+ readonly dy: 0;
7118
+ readonly dw: -1;
7119
+ readonly dh: 0;
7120
+ readonly cursor: "ew-resize";
7121
+ };
7122
+ readonly e: {
7123
+ readonly dx: 0;
7124
+ readonly dy: 0;
7125
+ readonly dw: 1;
7126
+ readonly dh: 0;
7127
+ readonly cursor: "ew-resize";
7128
+ };
7129
+ readonly nw: {
7130
+ readonly dx: 1;
7131
+ readonly dy: 1;
7132
+ readonly dw: -1;
7133
+ readonly dh: -1;
7134
+ readonly cursor: "nwse-resize";
7135
+ };
7136
+ readonly ne: {
7137
+ readonly dx: 0;
7138
+ readonly dy: 1;
7139
+ readonly dw: 1;
7140
+ readonly dh: -1;
7141
+ readonly cursor: "nesw-resize";
7142
+ };
7143
+ readonly sw: {
7144
+ readonly dx: 1;
7145
+ readonly dy: 0;
7146
+ readonly dw: -1;
7147
+ readonly dh: 1;
7148
+ readonly cursor: "nesw-resize";
7149
+ };
7150
+ readonly se: {
7151
+ readonly dx: 0;
7152
+ readonly dy: 0;
7153
+ readonly dw: 1;
7154
+ readonly dh: 1;
7155
+ readonly cursor: "nwse-resize";
7156
+ };
7157
+ };
7158
+ type ResizeHandleId = keyof typeof resizeHandles;
7159
+ //#endregion
7078
7160
  //#region src/domains/platform/communications/meetings/F0Meeting/window/usePictureInPicture.d.ts
7079
7161
  type PipSupport = "document" | "video" | "none";
7080
7162
  //#endregion
7163
+ //#region src/domains/platform/communications/meetings/F0Meeting/window/useWindowDrag.d.ts
7164
+ /** A resize started somewhere else (full screen) that this window takes over. */
7165
+ type AdoptedGesture = {
7166
+ pointerId: number;
7167
+ startX: number;
7168
+ startY: number;
7169
+ origin: F0Rect;
7170
+ handle: ResizeHandleId;
7171
+ };
7172
+ //#endregion
7081
7173
  //#region src/domains/platform/communications/meetings/F0Meeting/providers/MeetingSurfaceProvider.d.ts
7082
7174
  type MeetingSurfaceContextValue = {
7083
7175
  /** What the user chose. Never mutated by the environment. */
@@ -7116,6 +7208,24 @@ type MeetingSurfaceContextValue = {
7116
7208
  panelSide: "left" | "right" | null;
7117
7209
  /** `null` retires the slot; a side registers one. */
7118
7210
  setPanelSlot: (side: "left" | "right" | null) => void;
7211
+ /** How wide the docked panel is, so a window dragged to its edge can preview it. */
7212
+ panelSlotWidth: number | null;
7213
+ setPanelSlotWidth: (width: number | null) => void;
7214
+ /**
7215
+ * The title bar's double click, as on macOS: a window or the panel goes full
7216
+ * screen, and full screen goes back to whichever of the two it came from.
7217
+ */
7218
+ toggleFullscreen: () => void;
7219
+ /**
7220
+ * Starts resizing full screen from one of its edges. Past the drag threshold
7221
+ * the call becomes a window over the same rect and that window carries on
7222
+ * with the same pointer — see {@link takeUndockGesture}.
7223
+ */
7224
+ beginUndock: (event: React.PointerEvent, handle: ResizeHandleId, origin: F0Rect) => void;
7225
+ /** The gesture `beginUndock` handed over, once, for the window to adopt. */
7226
+ takeUndockGesture: () => AdoptedGesture | null;
7227
+ /** Gives back a gesture still in progress when the window's effect is torn down. */
7228
+ returnUndockGesture: (gesture: AdoptedGesture) => void;
7119
7229
  /** Registered by `F0MeetingSlot` so `inline` knows where to fly to. */
7120
7230
  setInlineRect: (rect: F0Rect | null) => void;
7121
7231
  /** What the user asked the spotlight to do, if anything. */
@@ -7565,28 +7675,6 @@ type SpeakerOrderInput = {
7565
7675
  */
7566
7676
  export declare const reorderForSpeakers: ({ tiles, speakerIds, pageSize, lastSpokenAt, now, holdMs }: SpeakerOrderInput) => F0MeetingTile[];
7567
7677
  //#endregion
7568
- //#region src/domains/platform/communications/meetings/F0Meeting/window/placement.d.ts
7569
- type Viewport = {
7570
- width: number;
7571
- height: number;
7572
- };
7573
- /**
7574
- * Resolves an anchored placement into an absolute rect, clamped into the
7575
- * current viewport. Anchoring to a corner (rather than storing x/y) is what
7576
- * keeps the window sensible when the browser is resized: it stays glued to
7577
- * "its" corner instead of drifting off-screen.
7578
- */
7579
- export declare const resolvePlacement: (placement: F0WindowPlacement, viewport: Viewport, minWidth?: number, minHeight?: number) => F0Rect;
7580
- /** Re-expresses an absolute rect against a given corner. */
7581
- export declare const placementFromRect: (rect: F0Rect, corner: F0WindowCorner, viewport: Viewport) => F0WindowPlacement;
7582
- /** The quadrant the rect's centre falls into. */
7583
- export declare const nearestCorner: (rect: F0Rect, viewport: Viewport) => F0WindowCorner;
7584
- /**
7585
- * Placement after a drag: always re-anchored to the nearest corner, and pulled
7586
- * flush to it when the window was dropped close enough.
7587
- */
7588
- export declare const settlePlacement: (rect: F0Rect, viewport: Viewport) => F0WindowPlacement;
7589
- //#endregion
7590
7678
  //#region src/domains/platform/communications/meetings/F0Meeting/window/panel.d.ts
7591
7679
  /** The whole viewport as a rect, for hosts that publish no content area. */
7592
7680
  export declare const viewportRect: (viewport: Viewport) => F0Rect;