react-semaphor 0.1.390 → 0.1.392

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 (68) hide show
  1. package/dist/analytics-protocol/index.cjs +1 -1
  2. package/dist/analytics-protocol/index.js +120 -252
  3. package/dist/brand-studio/index.cjs +1 -1
  4. package/dist/brand-studio/index.js +7 -7
  5. package/dist/chunks/analyze-result-contract-C9Gv2_qW.js +1585 -0
  6. package/dist/chunks/analyze-result-contract-Zgg-Bbpj.js +1 -0
  7. package/dist/chunks/{braces--20GzUQh.js → braces-8TRlDwDw.js} +1 -1
  8. package/dist/chunks/{braces-C0Vh_Mft.js → braces-D2tStQjF.js} +1 -1
  9. package/dist/chunks/{calendar-preferences-dialog-B-VsxhsA.js → calendar-preferences-dialog-49fcEPXS.js} +4 -4
  10. package/dist/chunks/{calendar-preferences-dialog-DE67Z3oQ.js → calendar-preferences-dialog-DwLeBLy2.js} +1 -1
  11. package/dist/chunks/dashboard-briefing-launcher-CgkSKkZR.js +80 -0
  12. package/dist/chunks/{dashboard-briefing-launcher-BIj3X7b3.js → dashboard-briefing-launcher-cgPKz1yX.js} +252 -252
  13. package/dist/chunks/dashboard-controls-D12ZSUP_.js +52 -0
  14. package/dist/chunks/{dashboard-controls-BXxucM4f.js → dashboard-controls-VMFm3OP4.js} +87 -87
  15. package/dist/chunks/{dashboard-json-C6oZuipD.js → dashboard-json-C-GG5yC7.js} +4 -4
  16. package/dist/chunks/{dashboard-json-BNwshkK2.js → dashboard-json-CvK0oI24.js} +1 -1
  17. package/dist/chunks/{edit-dashboard-visual-CmfrI_L3.js → edit-dashboard-visual-B5KB7dx4.js} +977 -977
  18. package/dist/chunks/edit-dashboard-visual-ql99faTz.js +178 -0
  19. package/dist/chunks/{index-icb12JV1.js → index-CQmKDEbe.js} +735 -741
  20. package/dist/chunks/{index-4W_ElSBJ.js → index-DXCBPLDu.js} +218 -223
  21. package/dist/chunks/{layout-grid-B7-klXiK.js → layout-grid-C0OI-MRn.js} +1 -1
  22. package/dist/chunks/{layout-grid-DV89AC9_.js → layout-grid-CiubineE.js} +1 -1
  23. package/dist/chunks/{palette-Dj-dgPYh.js → palette-C4KTXOug.js} +1 -1
  24. package/dist/chunks/{palette-5IwhMbSF.js → palette-Cp1hqZtm.js} +1 -1
  25. package/dist/chunks/{save-C5fwVdTF.js → save-C__QggEE.js} +1 -1
  26. package/dist/chunks/{save-16C6YSW2.js → save-DgMfP0j8.js} +1 -1
  27. package/dist/chunks/{search-0LmWwZzW.js → search-BHsQIWBV.js} +17 -7
  28. package/dist/chunks/{search-Dq1Mbb03.js → search-DNCejM7Z.js} +9 -4
  29. package/dist/chunks/source-identity-uMaUe036.js +1 -0
  30. package/dist/chunks/{source-identity-CN4xiyKJ.js → source-identity-y0VSSreA.js} +33 -15
  31. package/dist/chunks/{switch-bdJp0Bkw.js → switch-B79Hn4Qh.js} +27 -32
  32. package/dist/chunks/{switch-DUdaHFZQ.js → switch-BXQAlSuW.js} +637 -647
  33. package/dist/chunks/use-create-flow-overlay-state-7MFN3PWX.js +21 -0
  34. package/dist/chunks/{use-create-flow-overlay-state-YvqCp6Zo.js → use-create-flow-overlay-state-Bw5LRkf9.js} +93 -92
  35. package/dist/chunks/{validators-CHPH6ORs.js → validators-4EGCWWga.js} +1 -1
  36. package/dist/chunks/{validators-lWo8m0Q7.js → validators-CPtkrola.js} +1 -1
  37. package/dist/chunks/{x-B_cx7LwM.js → x-B6ghREd2.js} +10 -5
  38. package/dist/chunks/{x-IdR_js6f.js → x-CXDkqdur.js} +28 -18
  39. package/dist/dashboard/index.cjs +1 -1
  40. package/dist/dashboard/index.js +1 -1
  41. package/dist/dashboard-authoring/index.cjs +1 -1
  42. package/dist/dashboard-authoring/index.js +3 -3
  43. package/dist/data-app-builder/index.cjs +13 -13
  44. package/dist/data-app-builder/index.js +11 -11
  45. package/dist/data-app-sdk/index.cjs +5 -5
  46. package/dist/data-app-sdk/index.js +1698 -1121
  47. package/dist/data-app-sdk-adapters/index.cjs +1 -1
  48. package/dist/data-app-sdk-adapters/index.js +6 -7
  49. package/dist/data-app-sdk-validation/index.cjs +1 -1
  50. package/dist/data-app-sdk-validation/index.js +3 -3
  51. package/dist/index.cjs +1 -1
  52. package/dist/index.js +13 -13
  53. package/dist/surfboard/index.cjs +1 -1
  54. package/dist/surfboard/index.js +2 -2
  55. package/dist/types/analytics-protocol.d.ts +2107 -43
  56. package/dist/types/dashboard-assistant.d.ts +3 -1
  57. package/dist/types/data-app-sdk-adapters.d.ts +1 -1
  58. package/dist/types/data-app-sdk-validation.d.ts +4 -2
  59. package/dist/types/data-app-sdk.d.ts +73 -5
  60. package/package.json +2 -1
  61. package/src/data-app-sdk/README.md +55 -0
  62. package/dist/chunks/analyze-result-contract-CtXfp3nv.js +0 -1
  63. package/dist/chunks/analyze-result-contract-DuhlklhI.js +0 -102
  64. package/dist/chunks/dashboard-briefing-launcher-Czx6BcXW.js +0 -80
  65. package/dist/chunks/dashboard-controls-BP-DcPFs.js +0 -52
  66. package/dist/chunks/edit-dashboard-visual-BAprin3J.js +0 -178
  67. package/dist/chunks/source-identity-C-xaeE_I.js +0 -1
  68. package/dist/chunks/use-create-flow-overlay-state-BIHKf_XK.js +0 -21
@@ -1,12 +1,12 @@
1
1
  import { jsx as t, jsxs as s, Fragment as le } from "react/jsx-runtime";
2
2
  import bo, { useState as S, useEffect as fe, useMemo as O, useContext as xo, useRef as Me, useCallback as ye } from "react";
3
- import { b as rt, c as at, e as st, aG as ka, bt as yo, bP as vo, bQ as No, ar as Ft, bD as Sa, aX as gt, J as wo, A as Co, bR as ko, ah as Jt, ak as Qt, al as Yt, am as Xt, an as Zt, ao as en, ap as tn, aq as Xn, aW as nn, p as be, bS as So, bT as Do, bU as In, bE as rn, bF as an, bV as Zn, bG as sn, bH as De, av as Eo, b9 as jt, bW as Da, bs as $n, d as bt, f as xt, bX as Ao, o as Ea, aF as Io, aU as Aa, bY as To, aV as _n, y as Lo, ae as Ro, ax as Fo, u as Pt, a0 as mt, ab as er, a7 as Ia, a8 as tr, a1 as Ta, a6 as Po, ad as Bo, bK as Mo, bZ as Vo, b5 as Oo, a9 as qr, x as zt, a3 as Uo, b_ as $o, b$ as _o, c0 as jo, c1 as zo, c2 as Ko, c3 as qo, c4 as Ho, c5 as Go, c6 as La, c7 as Wo, c8 as Jo, c9 as Qo, ca as Yo, cb as Xo, az as yt, cc as Zo, bI as Ra, cd as ei, ce as ti, cf as ni, cg as ri, ch as ai, ci as si, cj as oi, ck as Fa, cl as ii, cm as li, cn as Pa, co as Ba, cp as Ma, cq as di, cr as ci, bf as Va, bq as ui, bn as mi, cs as hi, aw as Oa, ct as pi, cu as fi, cv as gi, cw as bi, cx as jn, cy as xi, cz as yi, cA as Ua, cB as nr, cC as vi, cD as Ni, cE as $a, cF as wi, cG as Ci, ay as zn, cH as ki, cI as _a, as as Si, cJ as Di, cK as Ei, cL as Ai, cM as Ii, cN as Ti, cO as Li, cP as Ri } from "./index-icb12JV1.js";
4
- import { B as Z, L as Lt, _ as Kn, e as se, O as ja, d as je, c as v, N as za, F as vt, u as Q, D as Nt, aG as Hr, a7 as Ka, f as Ge, G as qa, S as rr, P as $e, a as ot, b as it, aH as Fi, aI as Pi, aE as Ha, aJ as Ga, $ as Xe, a0 as Ze, a1 as et, a2 as tt, a3 as xe, aK as Wa, aL as Ja, Y as nt, T as Bi, H as Mi, I as Gr, aM as Vi } from "./switch-DUdaHFZQ.js";
5
- import { L as ar } from "./layout-grid-DV89AC9_.js";
6
- import { c as Pe, X as Ae } from "./x-IdR_js6f.js";
7
- import { u as sr, V as Oi, E as Wr, a as Jr, b as Ui, c as $i, L as _i, d as ji, e as Qa, C as Ya, f as zi, R as Ki, S as qi } from "./use-create-flow-overlay-state-YvqCp6Zo.js";
8
- import "./analyze-result-contract-DuhlklhI.js";
9
- import { S as Hi, M as Gi, a as Bt } from "./search-0LmWwZzW.js";
3
+ import { b as rt, c as at, e as st, aF as ka, bs as yo, bO as vo, bP as No, ar as Rt, bC as Sa, aW as gt, J as wo, A as Co, bQ as ko, ah as Jt, ak as Qt, al as Xt, am as Yt, an as Zt, ao as en, ap as tn, aq as Yn, aV as nn, p as be, bR as So, bS as Do, bT as In, bD as rn, bE as an, bU as Zn, bF as sn, bG as De, av as Eo, b8 as jt, bV as Da, br as $n, d as bt, f as xt, bW as Ao, o as Ea, aE as Io, aT as Aa, bX as To, aU as _n, y as Lo, ae as Fo, ax as Ro, u as Pt, a0 as mt, ab as er, a7 as Ia, a8 as tr, a1 as Ta, a6 as Po, ad as Bo, bJ as Mo, bY as Vo, b4 as Oo, a9 as qr, x as zt, a3 as Uo, bZ as $o, b_ as _o, b$ as jo, c0 as zo, c1 as Ko, c2 as qo, c3 as Ho, c4 as Go, c5 as La, c6 as Wo, c7 as Jo, c8 as Qo, c9 as Xo, ca as Yo, ay as yt, cb as Zo, bH as Fa, cc as ei, cd as ti, ce as ni, cf as ri, cg as ai, ch as si, ci as oi, cj as Ra, ck as ii, cl as li, cm as Pa, cn as Ba, co as Ma, cp as di, cq as ci, be as Va, bp as ui, bm as mi, cr as hi, aw as Oa, cs as pi, ct as fi, cu as gi, cv as bi, cw as jn, cx as xi, cy as yi, cz as Ua, cA as nr, cB as vi, cC as Ni, cD as $a, cE as wi, cF as Ci, cG as ki, cH as _a, as as Si, cI as Di, cJ as Ei, cK as Ai, cL as Ii, cM as Ti, cN as Li, cO as Fi } from "./index-CQmKDEbe.js";
4
+ import { B as Z, L as Lt, Z as zn, e as se, N as ja, d as je, c as v, M as za, E as vt, u as Q, A as Nt, aF as Hr, a6 as Ka, F as qa, S as rr, P as $e, a as ot, b as it, aG as Ri, aH as Pi, aD as Ha, aI as Ga, _ as Ye, $ as Ze, a0 as et, a1 as tt, a2 as xe, aJ as Wa, aK as Ja, X as nt, T as Bi, G as Mi, H as Gr, aL as Vi } from "./switch-BXQAlSuW.js";
5
+ import { L as ar } from "./layout-grid-CiubineE.js";
6
+ import { c as Pe, X as Ae, C as Ge } from "./x-CXDkqdur.js";
7
+ import { u as sr, V as Oi, E as Wr, a as Jr, b as Ui, c as $i, L as _i, d as ji, e as Qa, C as Xa, f as zi, R as Ki, S as qi } from "./use-create-flow-overlay-state-Bw5LRkf9.js";
8
+ import "./analyze-result-contract-C9Gv2_qW.js";
9
+ import { S as Hi, M as Gi, a as Bt, C as Kn } from "./search-BHsQIWBV.js";
10
10
  import { l as Qr } from "./date-formatter-CzcPZx39.js";
11
11
  import "./index-CJdxSyQq.js";
12
12
  import "react-dom";
@@ -37,7 +37,7 @@ const Ji = Pe("CircleX", [
37
37
  * This source code is licensed under the ISC license.
38
38
  * See the LICENSE file in the root directory of this source tree.
39
39
  */
40
- const Yr = Pe("FileDown", [
40
+ const Xr = Pe("FileDown", [
41
41
  ["path", { d: "M15 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7Z", key: "1rqfz7" }],
42
42
  ["path", { d: "M14 2v4a2 2 0 0 0 2 2h4", key: "tnqrlb" }],
43
43
  ["path", { d: "M12 18v-6", key: "17g6i2" }],
@@ -60,7 +60,7 @@ const Qi = Pe("FilterX", [
60
60
  * This source code is licensed under the ISC license.
61
61
  * See the LICENSE file in the root directory of this source tree.
62
62
  */
63
- const Yi = Pe("ListChecks", [
63
+ const Xi = Pe("ListChecks", [
64
64
  ["path", { d: "m3 17 2 2 4-4", key: "1jhpwq" }],
65
65
  ["path", { d: "m3 7 2 2 4-4", key: "1obspn" }],
66
66
  ["path", { d: "M13 6h8", key: "15sg57" }],
@@ -73,7 +73,7 @@ const Yi = Pe("ListChecks", [
73
73
  * This source code is licensed under the ISC license.
74
74
  * See the LICENSE file in the root directory of this source tree.
75
75
  */
76
- const Xa = Pe("Mail", [
76
+ const Ya = Pe("Mail", [
77
77
  ["rect", { width: "20", height: "16", x: "2", y: "4", rx: "2", key: "18n3k1" }],
78
78
  ["path", { d: "m22 7-8.97 5.7a1.94 1.94 0 0 1-2.06 0L2 7", key: "1ocrg3" }]
79
79
  ]);
@@ -92,7 +92,7 @@ const qn = Pe("MessageSquare", [
92
92
  * This source code is licensed under the ISC license.
93
93
  * See the LICENSE file in the root directory of this source tree.
94
94
  */
95
- const Xi = Pe("Newspaper", [
95
+ const Yi = Pe("Newspaper", [
96
96
  [
97
97
  "path",
98
98
  {
@@ -213,7 +213,7 @@ function tl({
213
213
  /* @__PURE__ */ s("div", { className: "space-y-1.5", children: [
214
214
  /* @__PURE__ */ t(Lt, { htmlFor: "visual-title", className: "text-[12px]", children: "Name" }),
215
215
  /* @__PURE__ */ t(
216
- Kn,
216
+ zn,
217
217
  {
218
218
  id: "visual-title",
219
219
  size: "sm",
@@ -230,7 +230,7 @@ function tl({
230
230
  /* @__PURE__ */ s("div", { className: "space-y-1.5", children: [
231
231
  /* @__PURE__ */ t(Lt, { htmlFor: "visual-description", className: "text-[12px]", children: "Description" }),
232
232
  /* @__PURE__ */ t(
233
- Kn,
233
+ zn,
234
234
  {
235
235
  id: "visual-description",
236
236
  size: "sm",
@@ -310,14 +310,14 @@ function ru({
310
310
  }, x = () => {
311
311
  n(!1), k();
312
312
  }, { selectVisual: w } = ka(), { handleAddLibraryVisual: L, handleEditLibraryVisual: U } = sr(), { isConsoleMode: E } = yo(), {
313
- resources: F,
313
+ resources: R,
314
314
  isLoading: _,
315
315
  isError: G,
316
316
  createResource: V,
317
317
  updateResource: z,
318
318
  deleteResourceAsync: j,
319
319
  duplicateResource: M,
320
- isCreating: Y,
320
+ isCreating: X,
321
321
  isDeleting: ne
322
322
  } = vo(
323
323
  void 0,
@@ -325,15 +325,15 @@ function ru({
325
325
  c(!1), A && (w(A), U(A), x());
326
326
  }
327
327
  ), {
328
- startUpdating: R,
328
+ startUpdating: F,
329
329
  stopUpdating: W,
330
330
  isUpdating: D
331
- } = No(), ce = F, ee = O(() => {
331
+ } = No(), ce = R, ee = O(() => {
332
332
  const A = r.trim().toLowerCase();
333
333
  return A ? ce.filter(
334
334
  (H) => {
335
- var re, Re, Je;
336
- return ((re = H.title) == null ? void 0 : re.toLowerCase().includes(A)) || ((Re = H.description) == null ? void 0 : Re.toLowerCase().includes(A)) || ((Je = H.kind) == null ? void 0 : Je.toLowerCase().includes(A));
335
+ var re, Fe, Je;
336
+ return ((re = H.title) == null ? void 0 : re.toLowerCase().includes(A)) || ((Fe = H.description) == null ? void 0 : Fe.toLowerCase().includes(A)) || ((Je = H.kind) == null ? void 0 : Je.toLowerCase().includes(A));
337
337
  }
338
338
  ) : ce;
339
339
  }, [r, ce]), J = O(
@@ -397,7 +397,7 @@ function ru({
397
397
  i((H) => {
398
398
  const re = new Set(H);
399
399
  return A.forEach(
400
- (Re) => re.delete(Re.id)
400
+ (Fe) => re.delete(Fe.id)
401
401
  ), re;
402
402
  }), g(!1), C(null);
403
403
  } catch {
@@ -423,8 +423,8 @@ function ru({
423
423
  f(null);
424
424
  return;
425
425
  }
426
- const Re = Object.keys(re), Je = Re.length === 1 ? Re[0] : void 0;
427
- R(m.id, Je), z(
426
+ const Fe = Object.keys(re), Je = Fe.length === 1 ? Fe[0] : void 0;
427
+ F(m.id, Je), z(
428
428
  {
429
429
  resourceId: m.id,
430
430
  data: re
@@ -491,7 +491,7 @@ function ru({
491
491
  className: "ml-auto",
492
492
  onClick: () => c(!0),
493
493
  children: [
494
- /* @__PURE__ */ t(Ft, { className: "h-3.5 w-3.5" }),
494
+ /* @__PURE__ */ t(Rt, { className: "h-3.5 w-3.5" }),
495
495
  "New library visual"
496
496
  ]
497
497
  }
@@ -601,7 +601,7 @@ function ru({
601
601
  open: l,
602
602
  onOpenChange: c,
603
603
  onSubmit: V,
604
- isCreating: Y
604
+ isCreating: X
605
605
  }
606
606
  ),
607
607
  d && /* @__PURE__ */ t(
@@ -632,8 +632,8 @@ function ru({
632
632
  !A && ne || (g(A), A || C(null));
633
633
  },
634
634
  children: /* @__PURE__ */ s(Qt, { children: [
635
- /* @__PURE__ */ s(Yt, { children: [
636
- /* @__PURE__ */ s(Xt, { children: [
635
+ /* @__PURE__ */ s(Xt, { children: [
636
+ /* @__PURE__ */ s(Yt, { children: [
637
637
  "Delete ",
638
638
  Ce,
639
639
  " visual",
@@ -645,7 +645,7 @@ function ru({
645
645
  /* @__PURE__ */ s(en, { children: [
646
646
  /* @__PURE__ */ t(tn, { disabled: ne, children: "Cancel" }),
647
647
  /* @__PURE__ */ s(
648
- Xn,
648
+ Yn,
649
649
  {
650
650
  onClick: (A) => {
651
651
  A.preventDefault(), pt();
@@ -970,7 +970,7 @@ function ll({
970
970
  /* @__PURE__ */ s("div", { className: "grid gap-2", children: [
971
971
  /* @__PURE__ */ t(Lt, { htmlFor: "name", children: "Name" }),
972
972
  /* @__PURE__ */ t(
973
- Kn,
973
+ zn,
974
974
  {
975
975
  id: "name",
976
976
  value: c,
@@ -1014,27 +1014,27 @@ function ll({
1014
1014
  }
1015
1015
  function dl() {
1016
1016
  const [e, n] = S(!1), [r, a] = S(!1), [o, i] = S(null), [l, c] = S(null), d = vt((E) => E.frame), u = vt((E) => E.card), m = Io(), f = Q((E) => E.selectedSheetId), p = Q((E) => E.dashboard), { getUpdatedFrame: g } = sr(), { selectVisual: I } = ka(), { addFrame: C, setSelectedFrameId: N, setIsVisualEditing: b } = Nt(), k = Aa(), x = !!(d != null && d.visualId), w = (() => {
1017
- var E, F;
1018
- return ((E = d == null ? void 0 : d.cards) == null ? void 0 : E.length) === 1 && ((F = d.cards[0]) != null && F.title) ? d.cards[0].title : m != null && m.title ? m.title : (u == null ? void 0 : u.title) || "Untitled Visual";
1017
+ var E, R;
1018
+ return ((E = d == null ? void 0 : d.cards) == null ? void 0 : E.length) === 1 && ((R = d.cards[0]) != null && R.title) ? d.cards[0].title : m != null && m.title ? m.title : (u == null ? void 0 : u.title) || "Untitled Visual";
1019
1019
  })(), L = To((E) => {
1020
1020
  E != null && E.id && (I(E), r && o && l && f && (async () => {
1021
1021
  try {
1022
- const F = {
1022
+ const R = {
1023
1023
  ...o,
1024
1024
  id: Hr(),
1025
1025
  visualId: E.id
1026
1026
  // Link to the newly created library visual
1027
1027
  };
1028
- C(f, F, {
1028
+ C(f, R, {
1029
1029
  position: "end",
1030
1030
  semanticExecutionPayload: l
1031
- }), N(F.id), a(!1), i(null), c(null), b(!1);
1032
- } catch (F) {
1031
+ }), N(R.id), a(!1), i(null), c(null), b(!1);
1032
+ } catch (R) {
1033
1033
  console.error(
1034
1034
  "Failed to promote semantic metadata for saved visual:",
1035
- F
1035
+ R
1036
1036
  ), be.error(
1037
- F instanceof Error ? F.message : "Failed to prepare semantic metadata for the saved visual"
1037
+ R instanceof Error ? R.message : "Failed to prepare semantic metadata for the saved visual"
1038
1038
  );
1039
1039
  }
1040
1040
  })(), n(!1));
@@ -1047,19 +1047,19 @@ function dl() {
1047
1047
  be.error("No sheet selected");
1048
1048
  return;
1049
1049
  }
1050
- const F = g(), _ = Ka(F);
1050
+ const R = g(), _ = Ka(R);
1051
1051
  if (_) {
1052
1052
  be.error(_);
1053
1053
  return;
1054
1054
  }
1055
- const V = F.cards.length === 1 ? {
1056
- ...F,
1057
- cards: F.cards.map((z) => ({
1055
+ const V = R.cards.length === 1 ? {
1056
+ ...R,
1057
+ cards: R.cards.map((z) => ({
1058
1058
  ...z,
1059
1059
  title: E.name
1060
1060
  // Use visual name as card title
1061
1061
  }))
1062
- } : F;
1062
+ } : R;
1063
1063
  if (E.saveToLibrary) {
1064
1064
  let z = null;
1065
1065
  if (E.saveToCurrentDashboard)
@@ -1121,7 +1121,7 @@ function au(e = {}) {
1121
1121
  isLibraryVisual: L,
1122
1122
  currentVisualName: U,
1123
1123
  isSaving: E
1124
- } = dl(), { getUpdatedFrame: F } = sr();
1124
+ } = dl(), { getUpdatedFrame: R } = sr();
1125
1125
  if (I)
1126
1126
  return /* @__PURE__ */ s(le, { children: [
1127
1127
  /* @__PURE__ */ t(Wr, { className: "rounded-control", variant: "default" }),
@@ -1134,7 +1134,7 @@ function au(e = {}) {
1134
1134
  }
1135
1135
  if (u) return;
1136
1136
  m(!0);
1137
- const V = F(), z = Ka(V);
1137
+ const V = R(), z = Ka(V);
1138
1138
  if (z) {
1139
1139
  m(!1), be.error(z);
1140
1140
  return;
@@ -1144,15 +1144,15 @@ function au(e = {}) {
1144
1144
  visualId: void 0
1145
1145
  }, M = _n(l, j.id);
1146
1146
  try {
1147
- const Y = await g(j, {
1147
+ const X = await g(j, {
1148
1148
  previousFrame: M
1149
1149
  });
1150
1150
  d(i, j, {
1151
- semanticExecutionPayload: Y
1151
+ semanticExecutionPayload: X
1152
1152
  });
1153
- } catch (Y) {
1154
- console.error("Failed to apply local semantic metadata:", Y), m(!1), be.error(
1155
- Y instanceof Error ? Y.message : "Failed to prepare semantic metadata for this visual"
1153
+ } catch (X) {
1154
+ console.error("Failed to apply local semantic metadata:", X), m(!1), be.error(
1155
+ X instanceof Error ? X.message : "Failed to prepare semantic metadata for this visual"
1156
1156
  );
1157
1157
  return;
1158
1158
  }
@@ -1205,7 +1205,7 @@ function au(e = {}) {
1205
1205
  onClick: () => G("local"),
1206
1206
  disabled: E,
1207
1207
  children: [
1208
- /* @__PURE__ */ t(Ft, { className: "h-3.5 w-3.5" }),
1208
+ /* @__PURE__ */ t(Rt, { className: "h-3.5 w-3.5" }),
1209
1209
  "Add to Dashboard (Local)"
1210
1210
  ]
1211
1211
  }
@@ -1255,10 +1255,10 @@ function au(e = {}) {
1255
1255
  ] });
1256
1256
  }
1257
1257
  function su({ className: e }) {
1258
- const n = vt((u) => u.isDevMode), r = Q((u) => u.isVisualEditing), { setIsDevMode: a } = qa(), { config: o } = xo(Ro).tokenProps, i = (o == null ? void 0 : o.showAdvancedMode) !== !1;
1258
+ const n = vt((u) => u.isDevMode), r = Q((u) => u.isVisualEditing), { setIsDevMode: a } = qa(), { config: o } = xo(Fo).tokenProps, i = (o == null ? void 0 : o.showAdvancedMode) !== !1;
1259
1259
  if (!r || !i)
1260
1260
  return null;
1261
- const l = n ? rr : Fo, c = n ? "Drag & drop" : "SQL", d = n ? "Switch to drag-and-drop mode" : "Switch to SQL mode";
1261
+ const l = n ? rr : Ro, c = n ? "Drag & drop" : "SQL", d = n ? "Switch to drag-and-drop mode" : "Switch to SQL mode";
1262
1262
  return /* @__PURE__ */ s(
1263
1263
  "button",
1264
1264
  {
@@ -1292,8 +1292,8 @@ function ou({
1292
1292
  return /* @__PURE__ */ t(Jt, { open: e, onOpenChange: (f) => {
1293
1293
  !f && o || n(f);
1294
1294
  }, children: /* @__PURE__ */ s(Qt, { children: [
1295
- /* @__PURE__ */ s(Yt, { children: [
1296
- /* @__PURE__ */ t(Xt, { children: i }),
1295
+ /* @__PURE__ */ s(Xt, { children: [
1296
+ /* @__PURE__ */ t(Yt, { children: i }),
1297
1297
  /* @__PURE__ */ t(Zt, { children: l })
1298
1298
  ] }),
1299
1299
  /* @__PURE__ */ s(en, { children: [
@@ -1317,7 +1317,7 @@ function ou({
1317
1317
  ] })
1318
1318
  ] }) });
1319
1319
  }
1320
- const cl = 1e4, ul = 15e3, ml = 3e4, hl = 3e4, pl = 12e4, Xr = 2 * 60 * 60 * 1e3;
1320
+ const cl = 1e4, ul = 15e3, ml = 3e4, hl = 3e4, pl = 12e4, Yr = 2 * 60 * 60 * 1e3;
1321
1321
  function fl(e) {
1322
1322
  const n = Date.now() - e.getTime();
1323
1323
  return n < hl ? cl : n < pl ? ul : ml;
@@ -1351,7 +1351,7 @@ function iu() {
1351
1351
  return;
1352
1352
  }
1353
1353
  const g = Date.now(), I = p.filter(
1354
- (x) => g - x.startedAt.getTime() > Xr
1354
+ (x) => g - x.startedAt.getTime() > Yr
1355
1355
  );
1356
1356
  if (I.length > 0) {
1357
1357
  const { updateExport: x } = mt.getState().actions;
@@ -1363,7 +1363,7 @@ function iu() {
1363
1363
  });
1364
1364
  }
1365
1365
  const C = p.filter(
1366
- (x) => g - x.startedAt.getTime() <= Xr
1366
+ (x) => g - x.startedAt.getTime() <= Yr
1367
1367
  );
1368
1368
  if (C.length === 0) {
1369
1369
  l.current = !1;
@@ -1670,13 +1670,13 @@ function xl() {
1670
1670
  [n == null ? void 0 : n.apiServiceUrl, e == null ? void 0 : e.accessToken, o]
1671
1671
  );
1672
1672
  return m.length === 0 ? /* @__PURE__ */ s("div", { className: "p-6 text-center", children: [
1673
- /* @__PURE__ */ t(Yr, { className: "mx-auto mb-2 h-8 w-8 text-muted-foreground" }),
1673
+ /* @__PURE__ */ t(Xr, { className: "mx-auto mb-2 h-8 w-8 text-muted-foreground" }),
1674
1674
  /* @__PURE__ */ t("p", { className: "text-sm text-muted-foreground", children: "No active exports" }),
1675
1675
  /* @__PURE__ */ t("p", { className: "mt-1 text-xs text-muted-foreground", children: "Large exports will appear here" })
1676
1676
  ] }) : /* @__PURE__ */ s("div", { className: "flex flex-col", children: [
1677
1677
  /* @__PURE__ */ s("div", { className: "flex items-center justify-between border-b px-4 py-3", children: [
1678
1678
  /* @__PURE__ */ s("div", { className: "flex items-center gap-2", children: [
1679
- /* @__PURE__ */ t(Yr, { className: "h-5 w-5 text-muted-foreground" }),
1679
+ /* @__PURE__ */ t(Xr, { className: "h-5 w-5 text-muted-foreground" }),
1680
1680
  /* @__PURE__ */ t("h4", { className: "font-semibold", children: "Exports" })
1681
1681
  ] }),
1682
1682
  /* @__PURE__ */ s("div", { className: "flex items-center gap-1", children: [
@@ -1783,16 +1783,16 @@ function vl({
1783
1783
  // create and make consumers use `forceClose()` from a dedicated
1784
1784
  // button.
1785
1785
  dismissMode: a ? "passive" : "explicit-only"
1786
- }), p = Q((F) => F.dashboard), { setDashboardControlsModel: g } = Nt(), { participants: I } = _o(Fi(p)), C = Array.from(
1786
+ }), p = Q((R) => R.dashboard), { setDashboardControlsModel: g } = Nt(), { participants: I } = _o(Ri(p)), C = Array.from(
1787
1787
  new Map(
1788
1788
  I.flatMap(
1789
- (F) => F.fieldChoices.map((_) => {
1789
+ (R) => R.fieldChoices.map((_) => {
1790
1790
  var G;
1791
1791
  return [
1792
1792
  _.value,
1793
1793
  {
1794
1794
  option: _,
1795
- target: (G = F.fieldTargetMap) == null ? void 0 : G[_.value]
1795
+ target: (G = R.fieldTargetMap) == null ? void 0 : G[_.value]
1796
1796
  }
1797
1797
  ];
1798
1798
  })
@@ -1801,13 +1801,13 @@ function vl({
1801
1801
  ), N = Array.from(
1802
1802
  new Map(
1803
1803
  I.flatMap(
1804
- (F) => F.metricChoices.map((_) => {
1804
+ (R) => R.metricChoices.map((_) => {
1805
1805
  var G;
1806
1806
  return [
1807
1807
  _.value,
1808
1808
  {
1809
1809
  option: _,
1810
- target: (G = F.metricTargetMap) == null ? void 0 : G[_.value]
1810
+ target: (G = R.metricTargetMap) == null ? void 0 : G[_.value]
1811
1811
  }
1812
1812
  ];
1813
1813
  })
@@ -1816,9 +1816,9 @@ function vl({
1816
1816
  ), b = Pi({
1817
1817
  ...p || {},
1818
1818
  controls: []
1819
- }), k = jo(p), x = (F, _, G) => {
1819
+ }), k = jo(p), x = (R, _, G) => {
1820
1820
  g(
1821
- F,
1821
+ R,
1822
1822
  _,
1823
1823
  yl(G)
1824
1824
  );
@@ -1829,7 +1829,7 @@ function vl({
1829
1829
  }
1830
1830
  f(!1);
1831
1831
  }, [i, l, f]), L = /* @__PURE__ */ t(
1832
- Ya,
1832
+ Xa,
1833
1833
  {
1834
1834
  scope: "dashboard",
1835
1835
  controls: p.controls || [],
@@ -1922,18 +1922,18 @@ function wl({
1922
1922
  onOpenChange: n,
1923
1923
  initialCreateFlowActive: r === "create",
1924
1924
  dismissMode: "explicit-only"
1925
- }), m = Q((F) => F.dashboard), f = Q((F) => F.selectedSheetId), { setDashboardInputs: p } = Nt(), g = (E = m.sheets) == null ? void 0 : E.find(
1926
- (F) => F.id === f
1925
+ }), m = Q((R) => R.dashboard), f = Q((R) => R.selectedSheetId), { setDashboardInputs: p } = Nt(), g = (E = m.sheets) == null ? void 0 : E.find(
1926
+ (R) => R.id === f
1927
1927
  ), I = (g == null ? void 0 : g.kind) === "document" && !!g.document, C = O(
1928
1928
  () => I && (g != null && g.document) ? Ko(m, g.id) : [],
1929
1929
  [m, I, g == null ? void 0 : g.document, g == null ? void 0 : g.id]
1930
1930
  ), N = O(
1931
1931
  () => C.filter(
1932
- (F) => F.kind === "control"
1932
+ (R) => R.kind === "control"
1933
1933
  ),
1934
1934
  [C]
1935
1935
  ), b = O(
1936
- () => N.map((F) => F.control),
1936
+ () => N.map((R) => R.control),
1937
1937
  [N]
1938
1938
  ), k = O(
1939
1939
  () => kl(b),
@@ -1948,13 +1948,13 @@ function wl({
1948
1948
  }
1949
1949
  u(!1);
1950
1950
  }, [a, o, u]), L = ye(
1951
- (F, _, G) => {
1951
+ (R, _, G) => {
1952
1952
  !I || !(g != null && g.document) || p(
1953
1953
  Dl({
1954
1954
  allInputs: m.inputs || [],
1955
1955
  documentSheetId: g.id,
1956
1956
  currentDocumentInputs: C,
1957
- nextControls: F,
1957
+ nextControls: R,
1958
1958
  nextDefaultValues: _,
1959
1959
  change: G
1960
1960
  })
@@ -1986,7 +1986,7 @@ function wl({
1986
1986
  )
1987
1987
  ] }),
1988
1988
  /* @__PURE__ */ t("div", { className: "min-h-0 overflow-y-auto pr-1", children: /* @__PURE__ */ t(
1989
- Ya,
1989
+ Xa,
1990
1990
  {
1991
1991
  scope: "dashboard",
1992
1992
  controls: b,
@@ -2193,11 +2193,11 @@ function Il() {
2193
2193
  "button",
2194
2194
  {
2195
2195
  type: "button",
2196
- onClick: () => r(Xo()),
2196
+ onClick: () => r(Yo()),
2197
2197
  title: `Applies to ${i.eligibleCardCount} of ${i.totalCardCount} date-aware cards`,
2198
2198
  className: "flex w-full items-start gap-2 rounded-[4px] px-2 py-1.5 text-left outline-none transition-colors hover:bg-muted/40 focus-visible:bg-muted/40 focus-visible:ring-1 focus-visible:ring-inset focus-visible:ring-border",
2199
2199
  children: [
2200
- /* @__PURE__ */ t(Yo, { className: "mt-0.5 h-3.5 w-3.5 shrink-0 text-muted-foreground" }),
2200
+ /* @__PURE__ */ t(Xo, { className: "mt-0.5 h-3.5 w-3.5 shrink-0 text-muted-foreground" }),
2201
2201
  /* @__PURE__ */ s("span", { className: "flex min-w-0 flex-col", children: [
2202
2202
  /* @__PURE__ */ t("span", { className: "text-[12px] font-medium text-foreground", children: "Add global date filter" }),
2203
2203
  /* @__PURE__ */ t("span", { className: "text-[11px] leading-[1.4] text-muted-foreground", children: "One date range across all date-aware cards." })
@@ -2250,7 +2250,7 @@ function Tl({
2250
2250
  /* @__PURE__ */ t(
2251
2251
  Tn,
2252
2252
  {
2253
- icon: Ra,
2253
+ icon: Fa,
2254
2254
  label: "Manage controls",
2255
2255
  onClick: () => {
2256
2256
  r(), a();
@@ -2413,7 +2413,7 @@ function on(e) {
2413
2413
  const r = n.toString();
2414
2414
  return r ? `?${r}` : "";
2415
2415
  }
2416
- async function Rl(e) {
2416
+ async function Fl(e) {
2417
2417
  if ((e.headers.get("content-type") ?? "").includes("application/json"))
2418
2418
  return e.json().catch(() => ({}));
2419
2419
  const r = await e.text().catch(() => "");
@@ -2450,7 +2450,7 @@ async function ss(e, n, r, a) {
2450
2450
  }
2451
2451
  });
2452
2452
  if (!o.ok) {
2453
- const i = await Rl(o);
2453
+ const i = await Fl(o);
2454
2454
  throw new ir(
2455
2455
  as(i) || "Briefing artifact request failed",
2456
2456
  o.status,
@@ -2461,10 +2461,10 @@ async function ss(e, n, r, a) {
2461
2461
  kind: a,
2462
2462
  content: await o.text(),
2463
2463
  contentType: o.headers.get("content-type") ?? "text/plain",
2464
- filename: Fl(o.headers.get("content-disposition"))
2464
+ filename: Rl(o.headers.get("content-disposition"))
2465
2465
  };
2466
2466
  }
2467
- function Fl(e) {
2467
+ function Rl(e) {
2468
2468
  if (!e)
2469
2469
  return;
2470
2470
  const n = /filename="([^"]+)"/.exec(e);
@@ -2743,7 +2743,7 @@ function hs(e) {
2743
2743
  i && a.push({
2744
2744
  key: `dashboard_sheet:${n}:${i.id}`,
2745
2745
  kind: "dashboard_sheet",
2746
- title: `${Rn(i)} PDF`,
2746
+ title: `${Fn(i)} PDF`,
2747
2747
  detail: "Current dashboard sheet",
2748
2748
  dashboardId: n,
2749
2749
  sheetId: i.id,
@@ -2754,7 +2754,7 @@ function hs(e) {
2754
2754
  Ha(d) && a.push({
2755
2755
  key: `document_sheet:${n}:${d.id}`,
2756
2756
  kind: "document_sheet",
2757
- title: `${Rn(d)} PDF`,
2757
+ title: `${Fn(d)} PDF`,
2758
2758
  detail: "Paginated report sheet",
2759
2759
  dashboardId: n,
2760
2760
  sheetId: d.id,
@@ -2770,7 +2770,7 @@ function hs(e) {
2770
2770
  key: `card:${n}:${d.card.id}`,
2771
2771
  kind: "card",
2772
2772
  title: d.card.title || "Untitled card",
2773
- detail: `${Rn(i)} · ${d.card.type}`,
2773
+ detail: `${Fn(i)} · ${d.card.type}`,
2774
2774
  dashboardId: n,
2775
2775
  sheetId: i.id,
2776
2776
  cardId: d.card.id,
@@ -2856,7 +2856,7 @@ function Jl(e) {
2856
2856
  cardControlValuesMap: a.cardControlValuesMap
2857
2857
  });
2858
2858
  n.sheetFilterValues = de(l.filterValues), n.filterValues = de(l.filterValues), n.controlValues = de(l.controlValues), a.controlDefinitions && (n.controlDefinitions = de(a.controlDefinitions));
2859
- const c = Yl({
2859
+ const c = Xl({
2860
2860
  option: r,
2861
2861
  runtime: a,
2862
2862
  selectedSheetId: r.kind === "dashboard" && o === "all" ? void 0 : i,
@@ -2905,7 +2905,7 @@ function Ql(e) {
2905
2905
  ...a.controlValues || {},
2906
2906
  ...((f = a.cardControlValuesMap) == null ? void 0 : f[o]) || {}
2907
2907
  }, a.controlDefinitions && (n.controlDefinitions = de(a.controlDefinitions)));
2908
- const d = Xl({
2908
+ const d = Yl({
2909
2909
  option: r,
2910
2910
  runtime: a,
2911
2911
  filterValues: n.filterValues,
@@ -2916,14 +2916,14 @@ function Ql(e) {
2916
2916
  d
2917
2917
  ));
2918
2918
  }
2919
- function Yl(e) {
2919
+ function Xl(e) {
2920
2920
  var c;
2921
2921
  const { option: n, runtime: r } = e, a = r.dashboard;
2922
2922
  if (!((c = a == null ? void 0 : a.inputs) != null && c.length))
2923
2923
  return;
2924
2924
  const o = (/* @__PURE__ */ new Date()).toISOString(), i = ps();
2925
2925
  if (n.kind === "document_sheet" && n.sheetId)
2926
- return Fa({
2926
+ return Ra({
2927
2927
  dashboard: a,
2928
2928
  sheetId: n.sheetId,
2929
2929
  sheetKind: "document",
@@ -2956,7 +2956,7 @@ function Yl(e) {
2956
2956
  timezone: i
2957
2957
  }).snapshot;
2958
2958
  }
2959
- function Xl(e) {
2959
+ function Yl(e) {
2960
2960
  var c;
2961
2961
  const { option: n, runtime: r } = e, a = r.dashboard;
2962
2962
  if (!((c = a == null ? void 0 : a.inputs) != null && c.length) || !n.cardId)
@@ -2972,7 +2972,7 @@ function Xl(e) {
2972
2972
  cardId: n.cardId,
2973
2973
  sheetKind: "dashboard"
2974
2974
  }) : r.dashboardInputValues;
2975
- return Fa({
2975
+ return Ra({
2976
2976
  dashboard: a,
2977
2977
  sheetId: (o == null ? void 0 : o.sheet.id) || n.sheetId,
2978
2978
  card: (o == null ? void 0 : o.card) || null,
@@ -3031,7 +3031,7 @@ function Ln(e) {
3031
3031
  throw new Error("Briefing attachment option is missing a required id.");
3032
3032
  return e;
3033
3033
  }
3034
- function Rn(e) {
3034
+ function Fn(e) {
3035
3035
  var n;
3036
3036
  return ((n = e.title) == null ? void 0 : n.trim()) || "Untitled sheet";
3037
3037
  }
@@ -3161,7 +3161,7 @@ function ld(e) {
3161
3161
  const n = e.trim();
3162
3162
  return n.includes("@") && n.includes(".") && !n.includes(" ");
3163
3163
  }
3164
- function Fn(e, n, r, a, o) {
3164
+ function Rn(e, n, r, a, o) {
3165
3165
  id(r, a, o) || e.push({
3166
3166
  field: `limits.${n}`,
3167
3167
  message: `${n} must be an integer between ${a} and ${o}`
@@ -3298,12 +3298,12 @@ function ra(e) {
3298
3298
  });
3299
3299
  }
3300
3300
  }
3301
- return Fn(n, "maxToolCalls", e.limits.maxToolCalls, 1, 100), Fn(n, "maxRows", e.limits.maxRows, 1, 1e5), Fn(n, "timeoutMs", e.limits.timeoutMs, 1e3, 30 * 6e4), {
3301
+ return Rn(n, "maxToolCalls", e.limits.maxToolCalls, 1, 100), Rn(n, "maxRows", e.limits.maxRows, 1, 1e5), Rn(n, "timeoutMs", e.limits.timeoutMs, 1e3, 30 * 6e4), {
3302
3302
  valid: n.length === 0,
3303
3303
  issues: n
3304
3304
  };
3305
3305
  }
3306
- const Rt = "text-[10px] font-medium uppercase tracking-[0.08em] text-muted-foreground";
3306
+ const Ft = "text-[10px] font-medium uppercase tracking-[0.08em] text-muted-foreground";
3307
3307
  function ud({
3308
3308
  attachment: e,
3309
3309
  open: n,
@@ -3324,13 +3324,13 @@ function ud({
3324
3324
  onOpenAutoFocus: (u) => u.preventDefault(),
3325
3325
  children: [
3326
3326
  /* @__PURE__ */ s("div", { className: "min-w-0", children: [
3327
- /* @__PURE__ */ t("div", { className: v(Rt, "mb-1"), children: "Attachment" }),
3327
+ /* @__PURE__ */ t("div", { className: v(Ft, "mb-1"), children: "Attachment" }),
3328
3328
  /* @__PURE__ */ t("div", { className: "truncate text-[12px] font-medium text-foreground", children: dr(e) })
3329
3329
  ] }),
3330
3330
  i.length > 1 ? /* @__PURE__ */ s("div", { children: [
3331
- /* @__PURE__ */ t("label", { className: v(Rt, "mb-1 block"), children: "Format" }),
3331
+ /* @__PURE__ */ t("label", { className: v(Ft, "mb-1 block"), children: "Format" }),
3332
3332
  /* @__PURE__ */ s(
3333
- Xe,
3333
+ Ye,
3334
3334
  {
3335
3335
  value: e.format,
3336
3336
  onValueChange: (u) => a(
@@ -3359,9 +3359,9 @@ function md({
3359
3359
  return /* @__PURE__ */ s("div", { className: "space-y-3", children: [
3360
3360
  /* @__PURE__ */ s("div", { className: "grid grid-cols-2 gap-2", children: [
3361
3361
  /* @__PURE__ */ s("div", { children: [
3362
- /* @__PURE__ */ t("label", { className: v(Rt, "mb-1 block"), children: "Page size" }),
3362
+ /* @__PURE__ */ t("label", { className: v(Ft, "mb-1 block"), children: "Page size" }),
3363
3363
  /* @__PURE__ */ s(
3364
- Xe,
3364
+ Ye,
3365
3365
  {
3366
3366
  value: e.pageSize || "letter",
3367
3367
  onValueChange: (r) => n({
@@ -3381,9 +3381,9 @@ function md({
3381
3381
  )
3382
3382
  ] }),
3383
3383
  /* @__PURE__ */ s("div", { children: [
3384
- /* @__PURE__ */ t("label", { className: v(Rt, "mb-1 block"), children: "Orientation" }),
3384
+ /* @__PURE__ */ t("label", { className: v(Ft, "mb-1 block"), children: "Orientation" }),
3385
3385
  /* @__PURE__ */ s(
3386
- Xe,
3386
+ Ye,
3387
3387
  {
3388
3388
  value: e.orientation || "portrait",
3389
3389
  onValueChange: (r) => n({
@@ -3426,9 +3426,9 @@ function hd({
3426
3426
  }) {
3427
3427
  return /* @__PURE__ */ s("div", { className: "space-y-3", children: [
3428
3428
  /* @__PURE__ */ s("div", { children: [
3429
- /* @__PURE__ */ t("label", { className: v(Rt, "mb-1 block"), children: "Delimiter" }),
3429
+ /* @__PURE__ */ t("label", { className: v(Ft, "mb-1 block"), children: "Delimiter" }),
3430
3430
  /* @__PURE__ */ s(
3431
- Xe,
3431
+ Ye,
3432
3432
  {
3433
3433
  value: e.delimiter || ",",
3434
3434
  onValueChange: (r) => n({
@@ -3524,7 +3524,7 @@ function pd({
3524
3524
  onClick: r,
3525
3525
  className: "inline-flex h-6 items-center gap-1 rounded-control px-1.5 text-[11px] text-muted-foreground hover:bg-muted hover:text-foreground disabled:opacity-50",
3526
3526
  children: [
3527
- /* @__PURE__ */ t(Ft, { className: "h-3 w-3" }),
3527
+ /* @__PURE__ */ t(Rt, { className: "h-3 w-3" }),
3528
3528
  "Add"
3529
3529
  ]
3530
3530
  }
@@ -3615,7 +3615,7 @@ function xd({
3615
3615
  if (!e) return;
3616
3616
  const L = [];
3617
3617
  for (const U of l) {
3618
- const E = ea(U), F = d.find(
3618
+ const E = ea(U), R = d.find(
3619
3619
  (_) => _.formats.some((G) => {
3620
3620
  const V = Gn({
3621
3621
  option: _,
@@ -3625,9 +3625,9 @@ function xd({
3625
3625
  return ea(V) === E;
3626
3626
  })
3627
3627
  );
3628
- F && L.push({
3629
- optionKey: F.key,
3630
- format: U.format ?? F.defaultFormat
3628
+ R && L.push({
3629
+ optionKey: R.key,
3630
+ format: U.format ?? R.defaultFormat
3631
3631
  });
3632
3632
  }
3633
3633
  m(L);
@@ -3644,12 +3644,12 @@ function xd({
3644
3644
  m((E) => E.some((_) => _.optionKey === L) ? E.filter((_) => _.optionKey !== L) : [...E, { optionKey: L, format: U }]);
3645
3645
  }, I = (L, U) => {
3646
3646
  m(
3647
- (E) => E.map((F) => F.optionKey === L ? { ...F, format: U } : F)
3647
+ (E) => E.map((R) => R.optionKey === L ? { ...R, format: U } : R)
3648
3648
  );
3649
3649
  }, C = () => {
3650
3650
  const L = [];
3651
3651
  for (const U of u) {
3652
- const E = d.find((F) => F.key === U.optionKey);
3652
+ const E = d.find((R) => R.key === U.optionKey);
3653
3653
  E && L.push(
3654
3654
  Gn({
3655
3655
  option: E,
@@ -3785,7 +3785,7 @@ function Pn({
3785
3785
  }
3786
3786
  ),
3787
3787
  /* @__PURE__ */ t("div", { className: "shrink-0", children: c.formats.length > 1 ? /* @__PURE__ */ s(
3788
- Xe,
3788
+ Ye,
3789
3789
  {
3790
3790
  value: u,
3791
3791
  onValueChange: (m) => i(c.key, m),
@@ -3891,7 +3891,7 @@ function oa({
3891
3891
  type: L ? "tenant" : "all",
3892
3892
  tenantId: L ? w.tenantId : void 0,
3893
3893
  limit: 25
3894
- }), { groups: F, isLoading: _ } = mi({
3894
+ }), { groups: R, isLoading: _ } = mi({
3895
3895
  search: x,
3896
3896
  type: L ? "TENANT_GROUP" : "all",
3897
3897
  tenantId: L ? w.tenantId : void 0,
@@ -3934,12 +3934,12 @@ function oa({
3934
3934
  const Ce = B.type === "tenant_user" ? B.tenantUserId : B.userId, A = At((H = j.get(Ce)) == null ? void 0 : H.email);
3935
3935
  A && T.add(A);
3936
3936
  }), T;
3937
- }, [j, e]), Y = O(() => {
3937
+ }, [j, e]), X = O(() => {
3938
3938
  const T = new Map(C);
3939
- return F.forEach((B) => {
3939
+ return R.forEach((B) => {
3940
3940
  T.set(B.id, sa(B));
3941
3941
  }), T;
3942
- }, [C, F]), ne = O(
3942
+ }, [C, R]), ne = O(
3943
3943
  () => U.filter((T) => {
3944
3944
  if (V.has(T.id)) return !1;
3945
3945
  const B = At(T.email);
@@ -3952,15 +3952,15 @@ function oa({
3952
3952
  L,
3953
3953
  w == null ? void 0 : w.tenantId
3954
3954
  ]
3955
- ), R = O(
3955
+ ), F = O(
3956
3956
  () => ne.filter((T) => T.type === "organization"),
3957
3957
  [ne]
3958
3958
  ), W = O(
3959
3959
  () => ne.filter((T) => T.type === "tenant"),
3960
3960
  [ne]
3961
3961
  ), D = O(
3962
- () => F.filter((T) => z.has(T.id) ? !1 : (w == null ? void 0 : w.type) === "tenant" ? T.type === "TENANT_GROUP" && T.tenantId === w.tenantId : !0).map(sa),
3963
- [F, z, w == null ? void 0 : w.type, w == null ? void 0 : w.tenantId]
3962
+ () => R.filter((T) => z.has(T.id) ? !1 : (w == null ? void 0 : w.type) === "tenant" ? T.type === "TENANT_GROUP" && T.tenantId === w.tenantId : !0).map(sa),
3963
+ [R, z, w == null ? void 0 : w.type, w == null ? void 0 : w.tenantId]
3964
3964
  ), ce = O(
3965
3965
  () => L ? [
3966
3966
  {
@@ -3977,7 +3977,7 @@ function oa({
3977
3977
  {
3978
3978
  key: "people",
3979
3979
  label: "People",
3980
- count: R.length
3980
+ count: F.length
3981
3981
  },
3982
3982
  {
3983
3983
  key: "tenant_users",
@@ -3993,13 +3993,13 @@ function oa({
3993
3993
  [
3994
3994
  D.length,
3995
3995
  L,
3996
- R.length,
3996
+ F.length,
3997
3997
  W.length
3998
3998
  ]
3999
- ), ee = O(() => b === "groups" ? [] : b === "tenant_users" || L ? W : R, [
3999
+ ), ee = O(() => b === "groups" ? [] : b === "tenant_users" || L ? W : F, [
4000
4000
  b,
4001
4001
  L,
4002
- R,
4002
+ F,
4003
4003
  W
4004
4004
  ]), J = O(
4005
4005
  () => b === "groups" ? D : [],
@@ -4063,7 +4063,7 @@ function oa({
4063
4063
  onRemove: () => q(B)
4064
4064
  };
4065
4065
  if (T.type === "group") {
4066
- const H = Y.get(T.groupId);
4066
+ const H = X.get(T.groupId);
4067
4067
  return {
4068
4068
  key: B,
4069
4069
  label: (H == null ? void 0 : H.name) || "Group",
@@ -4267,7 +4267,7 @@ function Dd({
4267
4267
  onClick: l,
4268
4268
  className: "flex w-full items-center gap-2 rounded-control px-2 py-1.5 text-left hover:bg-muted",
4269
4269
  children: [
4270
- /* @__PURE__ */ t(Xa, { className: "h-3.5 w-3.5 shrink-0 text-muted-foreground" }),
4270
+ /* @__PURE__ */ t(Ya, { className: "h-3.5 w-3.5 shrink-0 text-muted-foreground" }),
4271
4271
  /* @__PURE__ */ s("div", { className: "min-w-0", children: [
4272
4272
  /* @__PURE__ */ s("div", { className: "text-[13px] text-foreground", children: [
4273
4273
  "Send to ",
@@ -4380,10 +4380,10 @@ function Jn({
4380
4380
  }
4381
4381
  let x = !1, w = !1, L = null;
4382
4382
  const U = Date.now(), E = async () => {
4383
- var F, _, G, V, z, j;
4383
+ var R, _, G, V, z, j;
4384
4384
  if (!(x || w)) {
4385
4385
  if (Date.now() - U > a) {
4386
- m((M) => M === u ? null : M), p("timed_out"), (_ = (F = I.current).onTimeout) == null || _.call(F, u);
4386
+ m((M) => M === u ? null : M), p("timed_out"), (_ = (R = I.current).onTimeout) == null || _.call(R, u);
4387
4387
  return;
4388
4388
  }
4389
4389
  w = !0;
@@ -4396,11 +4396,11 @@ function Jn({
4396
4396
  if (x)
4397
4397
  return;
4398
4398
  if (I.current.onRun(M), qt(M.status)) {
4399
- g.current = M.id, m((Y) => Y === M.id ? null : Y), p("terminal"), (V = (G = I.current).onTerminalRun) == null || V.call(G, M);
4399
+ g.current = M.id, m((X) => X === M.id ? null : X), p("terminal"), (V = (G = I.current).onTerminalRun) == null || V.call(G, M);
4400
4400
  return;
4401
4401
  }
4402
4402
  if (!Ht(M.status)) {
4403
- m((Y) => Y === M.id ? null : Y), p("idle");
4403
+ m((X) => X === M.id ? null : X), p("idle");
4404
4404
  return;
4405
4405
  }
4406
4406
  L = window.setTimeout(E, r);
@@ -4664,7 +4664,7 @@ function Id({
4664
4664
  /* @__PURE__ */ s("div", { children: [
4665
4665
  /* @__PURE__ */ t("label", { className: v(ie, "mb-1 block"), children: "Repeats" }),
4666
4666
  /* @__PURE__ */ s(
4667
- Xe,
4667
+ Ye,
4668
4668
  {
4669
4669
  value: a.repeats,
4670
4670
  onValueChange: (b) => p(b),
@@ -4683,7 +4683,7 @@ function Id({
4683
4683
  /* @__PURE__ */ s("div", { children: [
4684
4684
  /* @__PURE__ */ t("label", { className: v(ie, "mb-1 block"), children: "Time" }),
4685
4685
  /* @__PURE__ */ s(
4686
- Xe,
4686
+ Ye,
4687
4687
  {
4688
4688
  value: C,
4689
4689
  onValueChange: (b) => {
@@ -4764,7 +4764,7 @@ function Id({
4764
4764
  /* @__PURE__ */ s("div", { children: [
4765
4765
  /* @__PURE__ */ t("label", { className: v(ie, "mb-1 block"), children: "Timezone" }),
4766
4766
  /* @__PURE__ */ s(
4767
- Xe,
4767
+ Ye,
4768
4768
  {
4769
4769
  value: n,
4770
4770
  onValueChange: (b) => r({
@@ -4858,11 +4858,11 @@ function Gt() {
4858
4858
  const e = /* @__PURE__ */ new Date();
4859
4859
  return e.setHours(0, 0, 0, 0), e;
4860
4860
  }
4861
- function Rd(e, n) {
4861
+ function Fd(e, n) {
4862
4862
  return e.getFullYear() === n.getFullYear() && e.getMonth() === n.getMonth() && e.getDate() === n.getDate();
4863
4863
  }
4864
4864
  function ma(e) {
4865
- return Rd(e, Gt()) ? "Today" : e.toLocaleDateString(void 0, {
4865
+ return Fd(e, Gt()) ? "Today" : e.toLocaleDateString(void 0, {
4866
4866
  month: "short",
4867
4867
  day: "numeric",
4868
4868
  year: "numeric"
@@ -4945,7 +4945,7 @@ function pa({
4945
4945
  )
4946
4946
  ] });
4947
4947
  }
4948
- function Fd({
4948
+ function Rd({
4949
4949
  source: e,
4950
4950
  resolvedSourceContext: n,
4951
4951
  sourceDetail: r,
@@ -5238,7 +5238,7 @@ function Bd({
5238
5238
  )
5239
5239
  ] });
5240
5240
  }
5241
- const Yn = qt, ht = Ht;
5241
+ const Xn = qt, ht = Ht;
5242
5242
  function Md(e) {
5243
5243
  var a, o;
5244
5244
  const n = (a = e == null ? void 0 : e.email) == null ? void 0 : a.trim();
@@ -5401,7 +5401,7 @@ function Es({
5401
5401
  }
5402
5402
  );
5403
5403
  }
5404
- const X = {
5404
+ const Y = {
5405
5405
  info: {
5406
5406
  surface: "border-border bg-blue-50/60 text-foreground dark:border-border dark:bg-blue-950/30",
5407
5407
  icon: "text-blue-600 dark:text-blue-400"
@@ -5511,10 +5511,10 @@ function _d(e) {
5511
5511
  return e.status === "SENT" ? e.channel === "SLACK" ? "Slack sent" : e.sentCount === 1 ? "Email sent" : `${e.sentCount} emails sent` : e.status === "FAILED" ? e.channel === "SLACK" ? "Slack failed" : e.failedCount === 1 ? "Email failed" : `${e.failedCount || e.attemptedCount || 0} emails failed` : e.status === "NOT_CONFIGURED" ? "Email not configured" : e.message || "Email delivery skipped";
5512
5512
  }
5513
5513
  function jd(e) {
5514
- return e.status === "SENT" ? X.success.surface : e.status === "FAILED" || e.status === "PARTIAL" ? X.danger.surface : X.warning.surface;
5514
+ return e.status === "SENT" ? Y.success.surface : e.status === "FAILED" || e.status === "PARTIAL" ? Y.danger.surface : Y.warning.surface;
5515
5515
  }
5516
5516
  function As(e) {
5517
- return e.status === "SUCCESS" ? /* @__PURE__ */ t(je, { className: v("h-3 w-3", X.success.icon) }) : e.status === "FAILED" ? /* @__PURE__ */ t(Ae, { className: v("h-3 w-3", X.danger.icon) }) : e.status === "RUNNING" ? /* @__PURE__ */ t(se, { className: "h-3 w-3 animate-spin text-muted-foreground" }) : /* @__PURE__ */ t("span", { className: "inline-block h-1.5 w-1.5 rounded-full bg-muted-foreground/70" });
5517
+ return e.status === "SUCCESS" ? /* @__PURE__ */ t(je, { className: v("h-3 w-3", Y.success.icon) }) : e.status === "FAILED" ? /* @__PURE__ */ t(Ae, { className: v("h-3 w-3", Y.danger.icon) }) : e.status === "RUNNING" ? /* @__PURE__ */ t(se, { className: "h-3 w-3 animate-spin text-muted-foreground" }) : /* @__PURE__ */ t("span", { className: "inline-block h-1.5 w-1.5 rounded-full bg-muted-foreground/70" });
5518
5518
  }
5519
5519
  const zd = [
5520
5520
  { pattern: /^plan preview/i, label: "Plan preview" },
@@ -5654,7 +5654,7 @@ function Is({
5654
5654
  run: e,
5655
5655
  labelPrefix: n
5656
5656
  }) {
5657
- const r = e.progress ?? null, a = r ? Fs(r.recentEvents ?? [], r.label).slice(-4).reverse() : [], o = ht(e.status), i = r ? Wt(r.label) : `${n ? `${n} ` : ""}${$d(e)}`, l = Ps(e), c = r != null && r.updatedAt ? new Date(r.updatedAt).toLocaleTimeString([], {
5657
+ const r = e.progress ?? null, a = r ? Rs(r.recentEvents ?? [], r.label).slice(-4).reverse() : [], o = ht(e.status), i = r ? Wt(r.label) : `${n ? `${n} ` : ""}${$d(e)}`, l = Ps(e), c = r != null && r.updatedAt ? new Date(r.updatedAt).toLocaleTimeString([], {
5658
5658
  hour: "numeric",
5659
5659
  minute: "2-digit",
5660
5660
  second: "2-digit"
@@ -5683,7 +5683,7 @@ function Is({
5683
5683
  className: "flex items-start gap-2 text-[11px] leading-[1.45] text-muted-foreground",
5684
5684
  children: [
5685
5685
  /* @__PURE__ */ t(je, { className: "mt-0.5 h-3 w-3 shrink-0 text-border" }),
5686
- /* @__PURE__ */ t("span", { children: Rs(d.label) })
5686
+ /* @__PURE__ */ t("span", { children: Fs(d.label) })
5687
5687
  ]
5688
5688
  },
5689
5689
  `${d.updatedAt}-${d.label}-${u}`
@@ -5710,7 +5710,7 @@ function Ts({
5710
5710
  {
5711
5711
  className: v(
5712
5712
  "rounded-card border px-3 py-2.5",
5713
- X.danger.surface
5713
+ Y.danger.surface
5714
5714
  ),
5715
5715
  role: "alert",
5716
5716
  "aria-label": p,
@@ -5721,9 +5721,9 @@ function Ts({
5721
5721
  {
5722
5722
  className: v(
5723
5723
  "mt-0.5 flex h-4 w-4 shrink-0 items-center justify-center rounded-full",
5724
- X.danger.iconBg
5724
+ Y.danger.iconBg
5725
5725
  ),
5726
- children: /* @__PURE__ */ t(Ae, { className: v("h-3 w-3", X.danger.icon) })
5726
+ children: /* @__PURE__ */ t(Ae, { className: v("h-3 w-3", Y.danger.icon) })
5727
5727
  }
5728
5728
  ),
5729
5729
  /* @__PURE__ */ s("div", { className: "min-w-0 flex-1", children: [
@@ -5731,7 +5731,7 @@ function Ts({
5731
5731
  /* @__PURE__ */ t(
5732
5732
  "span",
5733
5733
  {
5734
- className: v("font-medium", X.danger.icon),
5734
+ className: v("font-medium", Y.danger.icon),
5735
5735
  children: p
5736
5736
  }
5737
5737
  ),
@@ -5788,14 +5788,14 @@ function Ts({
5788
5788
  i || c(g);
5789
5789
  },
5790
5790
  children: /* @__PURE__ */ s(Qt, { children: [
5791
- /* @__PURE__ */ s(Yt, { children: [
5792
- /* @__PURE__ */ t(Xt, { children: "Delete this run record?" }),
5791
+ /* @__PURE__ */ s(Xt, { children: [
5792
+ /* @__PURE__ */ t(Yt, { children: "Delete this run record?" }),
5793
5793
  /* @__PURE__ */ t(Zt, { children: "The briefing itself stays. Only this run's record (status, error message, activity log) is removed and won't appear in history." })
5794
5794
  ] }),
5795
5795
  /* @__PURE__ */ s(en, { children: [
5796
5796
  /* @__PURE__ */ t(tn, { disabled: i, children: "Cancel" }),
5797
5797
  /* @__PURE__ */ s(
5798
- Xn,
5798
+ Yn,
5799
5799
  {
5800
5800
  disabled: i,
5801
5801
  onClick: (g) => {
@@ -5818,7 +5818,7 @@ function Ts({
5818
5818
  }
5819
5819
  function Gd({ run: e }) {
5820
5820
  const n = mr(e);
5821
- return !Yn(e.status) || !n || n.status === "SKIPPED" ? null : /* @__PURE__ */ s(
5821
+ return !Xn(e.status) || !n || n.status === "SKIPPED" ? null : /* @__PURE__ */ s(
5822
5822
  "div",
5823
5823
  {
5824
5824
  className: v(
@@ -5888,7 +5888,7 @@ function Jd({
5888
5888
  {
5889
5889
  className: v(
5890
5890
  "rounded-card border px-3 py-2",
5891
- X.success.surface
5891
+ Y.success.surface
5892
5892
  ),
5893
5893
  "aria-label": "Latest briefing run",
5894
5894
  children: /* @__PURE__ */ s("div", { className: "flex flex-wrap items-center justify-between gap-2", children: [
@@ -5898,7 +5898,7 @@ function Jd({
5898
5898
  {
5899
5899
  className: v(
5900
5900
  "flex items-center gap-1.5 text-[12px] font-medium",
5901
- X.success.label
5901
+ Y.success.label
5902
5902
  ),
5903
5903
  children: [
5904
5904
  As(e),
@@ -5928,7 +5928,7 @@ function Jd({
5928
5928
  function Wt(e) {
5929
5929
  return e.replace(/\s+(started|completed)$/i, "");
5930
5930
  }
5931
- function Rs(e) {
5931
+ function Fs(e) {
5932
5932
  const n = /^(.*)\s+(started|completed)$/i.exec(e.trim());
5933
5933
  if (!n)
5934
5934
  return e;
@@ -5936,7 +5936,7 @@ function Rs(e) {
5936
5936
  return `${n[2].toLowerCase() === "completed" ? "Completed" : "Started"} ${r}`;
5937
5937
  }
5938
5938
  function ya({ run: e }) {
5939
- const n = e.progress ?? null, r = n ? Fs(n.recentEvents ?? [], n.label).slice(-4).reverse() : [], a = n != null && n.detail && n.detail !== n.label ? n.detail : null, o = Ps(e);
5939
+ const n = e.progress ?? null, r = n ? Rs(n.recentEvents ?? [], n.label).slice(-4).reverse() : [], a = n != null && n.detail && n.detail !== n.label ? n.detail : null, o = Ps(e);
5940
5940
  return /* @__PURE__ */ s("div", { className: "border-b border-border bg-muted/60 px-4 py-3", children: [
5941
5941
  a ? /* @__PURE__ */ t("p", { className: "mb-3 text-[12px] leading-[1.5] text-foreground/80", children: a }) : null,
5942
5942
  r.length > 0 ? /* @__PURE__ */ s("div", { children: [
@@ -5947,7 +5947,7 @@ function ya({ run: e }) {
5947
5947
  className: "flex items-start gap-2 text-[11px] leading-[1.45] text-muted-foreground",
5948
5948
  children: [
5949
5949
  /* @__PURE__ */ t(je, { className: "mt-0.5 h-3 w-3 shrink-0 text-border" }),
5950
- /* @__PURE__ */ t("span", { children: Rs(i.label) })
5950
+ /* @__PURE__ */ t("span", { children: Fs(i.label) })
5951
5951
  ]
5952
5952
  },
5953
5953
  `${i.updatedAt}-${i.label}-${l}`
@@ -5964,7 +5964,7 @@ function ya({ run: e }) {
5964
5964
  o.length > 0 ? /* @__PURE__ */ t("p", { className: "mt-2 text-[11px] leading-[1.55] text-muted-foreground", children: o.join(" ") }) : null
5965
5965
  ] });
5966
5966
  }
5967
- function Fs(e, n) {
5967
+ function Rs(e, n) {
5968
5968
  const r = n ? n.replace(/\s+(started|completed)$/i, "").trim().toLowerCase() : null, a = r ? e.filter((c) => c.label.replace(/\s+(started|completed)$/i, "").trim().toLowerCase() !== r) : e.slice(), o = /* @__PURE__ */ new Set();
5969
5969
  for (const c of a) {
5970
5970
  const d = /^(.*)\s+completed$/i.exec(c.label.trim());
@@ -5985,10 +5985,10 @@ function Qd() {
5985
5985
  return /* @__PURE__ */ t(
5986
5986
  "div",
5987
5987
  {
5988
- className: v("border-b px-4 py-2 text-[12px] leading-[1.5]", X.info.surface),
5988
+ className: v("border-b px-4 py-2 text-[12px] leading-[1.5]", Y.info.surface),
5989
5989
  role: "note",
5990
5990
  children: /* @__PURE__ */ s("div", { className: "flex items-start gap-2", children: [
5991
- /* @__PURE__ */ t(nt, { className: v("mt-0.5 h-3 w-3 shrink-0", X.info.icon) }),
5991
+ /* @__PURE__ */ t(nt, { className: v("mt-0.5 h-3 w-3 shrink-0", Y.info.icon) }),
5992
5992
  /* @__PURE__ */ s("p", { children: [
5993
5993
  "Briefings typically take",
5994
5994
  " ",
@@ -5999,7 +5999,7 @@ function Qd() {
5999
5999
  }
6000
6000
  );
6001
6001
  }
6002
- function Yd({
6002
+ function Xd({
6003
6003
  run: e,
6004
6004
  onExpand: n
6005
6005
  }) {
@@ -6026,7 +6026,7 @@ function Yd({
6026
6026
  /* @__PURE__ */ t("div", { className: "border-t border-border/60 bg-muted px-3 py-1.5", children: /* @__PURE__ */ t("p", { className: "text-[11px] text-muted-foreground", children: "We'll notify you when it's ready" }) })
6027
6027
  ] });
6028
6028
  }
6029
- function Xd({
6029
+ function Yd({
6030
6030
  title: e,
6031
6031
  durationSeconds: n,
6032
6032
  status: r,
@@ -6039,7 +6039,7 @@ function Xd({
6039
6039
  {
6040
6040
  className: v(
6041
6041
  "border-b px-4 py-2.5",
6042
- i ? X.success.surface : X.danger.surface
6042
+ i ? Y.success.surface : Y.danger.surface
6043
6043
  ),
6044
6044
  role: "status",
6045
6045
  children: /* @__PURE__ */ s("div", { className: "flex items-start gap-2.5", children: [
@@ -6048,14 +6048,14 @@ function Xd({
6048
6048
  {
6049
6049
  className: v(
6050
6050
  "mt-0.5 flex h-4 w-4 shrink-0 items-center justify-center rounded-full",
6051
- i ? X.success.iconBg : X.danger.iconBg
6051
+ i ? Y.success.iconBg : Y.danger.iconBg
6052
6052
  ),
6053
6053
  children: i ? /* @__PURE__ */ t(
6054
6054
  je,
6055
6055
  {
6056
6056
  className: v(
6057
6057
  "h-3 w-3",
6058
- X.success.icon
6058
+ Y.success.icon
6059
6059
  )
6060
6060
  }
6061
6061
  ) : /* @__PURE__ */ t(Ae, { className: "h-3 w-3 text-destructive" })
@@ -6225,7 +6225,7 @@ function nc({
6225
6225
  children: [
6226
6226
  /* @__PURE__ */ t("span", { className: "min-w-0 truncate", children: e.label }),
6227
6227
  e.detail ? /* @__PURE__ */ t("span", { className: "ml-1.5 min-w-0 truncate text-muted-foreground", children: e.detail }) : null,
6228
- n ? /* @__PURE__ */ t(Ge, { className: "ml-1.5 h-3 w-3 shrink-0 text-muted-foreground" }) : /* @__PURE__ */ t(zn, { className: "ml-1.5 h-3 w-3 shrink-0 text-muted-foreground" })
6228
+ n ? /* @__PURE__ */ t(Ge, { className: "ml-1.5 h-3 w-3 shrink-0 text-muted-foreground" }) : /* @__PURE__ */ t(Kn, { className: "ml-1.5 h-3 w-3 shrink-0 text-muted-foreground" })
6229
6229
  ]
6230
6230
  }
6231
6231
  ),
@@ -6649,7 +6649,7 @@ function va({
6649
6649
  fullWidth: r
6650
6650
  }) {
6651
6651
  var I, C, N, b, k, x;
6652
- const a = e.result, o = (I = a == null ? void 0 : a.artifactPreview) == null ? void 0 : I.markdown, i = (C = a == null ? void 0 : a.artifactPreview) == null ? void 0 : C.html, l = tc(e), c = l ? Vd((N = a == null ? void 0 : a.limits) == null ? void 0 : N.emailPreview) : null, d = ((b = a == null ? void 0 : a.limits) == null ? void 0 : b.previewKind) === "slack_message" ? Od(a.limits.slackPreview) : null, u = e.status === "FAILED", m = u && !!((k = e.error) != null && k.toLowerCase().includes("cancel")), f = u ? X.danger : X.success, p = u ? X.danger.icon : X.success.label, g = m ? "Cancelled" : u ? "Failed" : "Complete";
6652
+ const a = e.result, o = (I = a == null ? void 0 : a.artifactPreview) == null ? void 0 : I.markdown, i = (C = a == null ? void 0 : a.artifactPreview) == null ? void 0 : C.html, l = tc(e), c = l ? Vd((N = a == null ? void 0 : a.limits) == null ? void 0 : N.emailPreview) : null, d = ((b = a == null ? void 0 : a.limits) == null ? void 0 : b.previewKind) === "slack_message" ? Od(a.limits.slackPreview) : null, u = e.status === "FAILED", m = u && !!((k = e.error) != null && k.toLowerCase().includes("cancel")), f = u ? Y.danger : Y.success, p = u ? Y.danger.icon : Y.success.label, g = m ? "Cancelled" : u ? "Failed" : "Complete";
6653
6653
  return /* @__PURE__ */ s(
6654
6654
  "div",
6655
6655
  {
@@ -6689,7 +6689,7 @@ function va({
6689
6689
  role: "alert",
6690
6690
  className: v(
6691
6691
  "mt-2 rounded-card border px-3 py-2 text-[12px] leading-[1.5]",
6692
- X.danger.surface
6692
+ Y.danger.surface
6693
6693
  ),
6694
6694
  children: e.error
6695
6695
  }
@@ -6770,9 +6770,9 @@ function cc({
6770
6770
  }) {
6771
6771
  var o, i;
6772
6772
  const a = ((o = e.result) == null ? void 0 : o.title) ?? ((i = e.result) == null ? void 0 : i.summary) ?? "Generated briefing preview";
6773
- return /* @__PURE__ */ t("div", { className: v("rounded-card border px-3 py-2", X.success.surface), children: /* @__PURE__ */ s("div", { className: "flex items-start justify-between gap-3", children: [
6773
+ return /* @__PURE__ */ t("div", { className: v("rounded-card border px-3 py-2", Y.success.surface), children: /* @__PURE__ */ s("div", { className: "flex items-start justify-between gap-3", children: [
6774
6774
  /* @__PURE__ */ s("div", { className: "min-w-0", children: [
6775
- /* @__PURE__ */ s("div", { className: v("flex items-center gap-1.5 text-[11px] font-medium", X.success.label), children: [
6775
+ /* @__PURE__ */ s("div", { className: v("flex items-center gap-1.5 text-[11px] font-medium", Y.success.label), children: [
6776
6776
  /* @__PURE__ */ t(je, { className: "h-3 w-3 shrink-0" }),
6777
6777
  /* @__PURE__ */ t("span", { children: "Preview output available" })
6778
6778
  ] }),
@@ -6820,7 +6820,7 @@ const mc = {
6820
6820
  function fc() {
6821
6821
  return typeof crypto < "u" && typeof crypto.randomUUID == "function" ? crypto.randomUUID() : `briefing-run-${Date.now()}-${Math.random().toString(36).slice(2, 8)}`;
6822
6822
  }
6823
- function Fe(e) {
6823
+ function Re(e) {
6824
6824
  return e instanceof Error && e.message ? e.message : "Something went wrong. Please try again.";
6825
6825
  }
6826
6826
  function gc(e, n) {
@@ -6899,29 +6899,29 @@ function yc({
6899
6899
  var Mr, Vr, Or, Ur, $r, _r, jr, zr, Kr;
6900
6900
  const { authToken: I, tokenProps: C } = Pt(), N = ((Vr = (Mr = C.config) == null ? void 0 : Mr.projectFeatures) == null ? void 0 : Vr.features.aiWritingHelpers) !== !1, { currentUser: b } = Va(), k = Q((h) => h.dashboard), x = Q((h) => h.theme), w = Q((h) => h.selectedSheetId), L = Q((h) => h.filterValues), U = Q((h) => h.controlValues), E = Q(
6901
6901
  (h) => h.semanticExecutionPayload
6902
- ), F = Q(
6902
+ ), R = Q(
6903
6903
  (h) => h.cardControlValuesMap
6904
6904
  ), _ = Q(
6905
6905
  (h) => h.inlineFilterValuesMap
6906
6906
  ), G = Q(
6907
6907
  (h) => h.dashboardInputValues
6908
- ), V = Vi((h) => h.interactionStates), z = e ?? (C == null ? void 0 : C.apiServiceUrl), j = n ?? (I == null ? void 0 : I.accessToken), M = O(() => ({ ...mc, ...l }), [l]), Y = O(
6908
+ ), V = Vi((h) => h.interactionStates), z = e ?? (C == null ? void 0 : C.apiServiceUrl), j = n ?? (I == null ? void 0 : I.accessToken), M = O(() => ({ ...mc, ...l }), [l]), X = O(
6909
6909
  () => Vs(r, a),
6910
6910
  [r, a]
6911
6911
  ), ne = O(
6912
6912
  () => Md(b),
6913
6913
  [b]
6914
- ), [R, W] = S(
6914
+ ), [F, W] = S(
6915
6915
  r ?? null
6916
6916
  ), [D, ce] = S(
6917
6917
  () => Ca({
6918
6918
  briefing: r,
6919
- sourceContext: Y,
6919
+ sourceContext: X,
6920
6920
  defaultRecipient: ne
6921
6921
  })
6922
6922
  ), [ee, J] = S(null), [ve, Ie] = S([]), [ue, K] = S(null), [We, Te] = S(null), [Ve, Be] = S(
6923
6923
  null
6924
- ), [q, Le] = S(null), [$, oe] = S(0), [pt, lt] = S(null), [T, B] = S(!1), [Ce, A] = S("edit"), [H, re] = S(0), [Re, Je] = S(!1), [$s, ln] = S("EMAIL"), [_s, dn] = S(!1), [pr, cn] = S(null), [js, un] = S(!1), [ge, zs] = S(
6924
+ ), [q, Le] = S(null), [$, oe] = S(0), [pt, lt] = S(null), [T, B] = S(!1), [Ce, A] = S("edit"), [H, re] = S(0), [Fe, Je] = S(!1), [$s, ln] = S("EMAIL"), [_s, dn] = S(!1), [pr, cn] = S(null), [js, un] = S(!1), [ge, zs] = S(
6925
6925
  null
6926
6926
  ), [mn, fr] = S([]), [Mt, gr] = S(!1), [br, xr] = S(null), [Ks, qs] = S(0), [dt, Vt] = S(null), [Hs, hn] = S(!1), [pn, yr] = S(!1), [vr, Nr] = S(null), [wt, fn] = S(null);
6927
6927
  fe(() => {
@@ -6940,12 +6940,12 @@ function yc({
6940
6940
  intervalMs: wa,
6941
6941
  timeoutMs: pc,
6942
6942
  fetchRun: ({ apiServiceUrl: h, token: y, runId: P }) => {
6943
- if (!(R != null && R.id))
6943
+ if (!(F != null && F.id))
6944
6944
  throw new Error("Missing saved Briefing id for run polling.");
6945
6945
  return M.getBriefingRun(
6946
6946
  h,
6947
6947
  y,
6948
- R.id,
6948
+ F.id,
6949
6949
  P
6950
6950
  );
6951
6951
  },
@@ -6956,7 +6956,7 @@ function yc({
6956
6956
  A("result"), K(null);
6957
6957
  },
6958
6958
  onError: (h) => {
6959
- K(`Unable to refresh briefing run status: ${Fe(h)}`);
6959
+ K(`Unable to refresh briefing run status: ${Re(h)}`);
6960
6960
  },
6961
6961
  onTimeout: () => {
6962
6962
  K(
@@ -6984,7 +6984,7 @@ function yc({
6984
6984
  h.status === "FAILED" ? K(h.error || "Briefing preview failed.") : (K(null), A("result"));
6985
6985
  },
6986
6986
  onError: (h) => {
6987
- K(`Unable to refresh briefing preview status: ${Fe(h)}`);
6987
+ K(`Unable to refresh briefing preview status: ${Re(h)}`);
6988
6988
  },
6989
6989
  onTimeout: (h) => {
6990
6990
  Le(
@@ -6996,11 +6996,11 @@ function yc({
6996
6996
  } : y
6997
6997
  ), K("Briefing preview status refresh timed out.");
6998
6998
  }
6999
- }), he = !!(R != null && R.id), yn = (R == null ? void 0 : R.status) === "PAUSED" || D.schedule.status === "PAUSED", Qs = he && !!(R != null && R.scheduleExpr || D.schedule.enabled), ct = We ?? (R == null ? void 0 : R.latestRun) ?? null, ke = ct && ht(ct.status) && Gs === ct.id ? ct : null, Ee = ct && Yn(ct.status) ? ct : null, Ys = q && Yn(q.status) ? q : null, Se = Ce === "result" && (Ys || Ee) ? "result" : Ce === "plan" && Ve ? "plan" : "edit", Xs = Y.detail ?? (D.source.type === "dashboard" ? (
6999
+ }), he = !!(F != null && F.id), yn = (F == null ? void 0 : F.status) === "PAUSED" || D.schedule.status === "PAUSED", Qs = he && !!(F != null && F.scheduleExpr || D.schedule.enabled), ct = We ?? (F == null ? void 0 : F.latestRun) ?? null, ke = ct && ht(ct.status) && Gs === ct.id ? ct : null, Ee = ct && Xn(ct.status) ? ct : null, Xs = q && Xn(q.status) ? q : null, Se = Ce === "result" && (Xs || Ee) ? "result" : Ce === "plan" && Ve ? "plan" : "edit", Ys = X.detail ?? (D.source.type === "dashboard" ? (
7000
7000
  // Prefer the dashboard's actual title from the store; never expose
7001
7001
  // the raw ID to end users.
7002
7002
  (k == null ? void 0 : k.title) ?? null
7003
- ) : "All project data available to this token"), kr = (R == null ? void 0 : R.status) ?? D.schedule.status, vn = q !== null && ht(q.status) && Ws === q.id, Nn = vn || ke !== null, Qe = ee !== null || Nn, Zs = Se === "edit" && Ee !== null && !Nn, wn = (q == null ? void 0 : q.status) === "SUCCESS" && q.result ? q : null, eo = wn !== null && pt !== null && pt !== $, Ct = pr === "preview" ? q : null, ze = pr === "saved" ? Ee : null, kt = ze ? Ds(ze) : null, to = ((Or = Ct == null ? void 0 : Ct.result) == null ? void 0 : Or.title) ?? (kt == null ? void 0 : kt.subject) ?? (pe(ze == null ? void 0 : ze.result) && typeof ze.result.title == "string" ? ze.result.title : null) ?? (R == null ? void 0 : R.name) ?? "Briefing preview", Ot = O(
7003
+ ) : "All project data available to this token"), kr = (F == null ? void 0 : F.status) ?? D.schedule.status, vn = q !== null && ht(q.status) && Ws === q.id, Nn = vn || ke !== null, Qe = ee !== null || Nn, Zs = Se === "edit" && Ee !== null && !Nn, wn = (q == null ? void 0 : q.status) === "SUCCESS" && q.result ? q : null, eo = wn !== null && pt !== null && pt !== $, Ct = pr === "preview" ? q : null, ze = pr === "saved" ? Ee : null, kt = ze ? Ds(ze) : null, to = ((Or = Ct == null ? void 0 : Ct.result) == null ? void 0 : Or.title) ?? (kt == null ? void 0 : kt.subject) ?? (pe(ze == null ? void 0 : ze.result) && typeof ze.result.title == "string" ? ze.result.title : null) ?? (F == null ? void 0 : F.name) ?? "Briefing preview", Ot = O(
7004
7004
  () => ({
7005
7005
  dashboard: k,
7006
7006
  theme: x || "light",
@@ -7011,13 +7011,13 @@ function yc({
7011
7011
  controlValues: U,
7012
7012
  controlDefinitions: (k == null ? void 0 : k.controls) || [],
7013
7013
  dashboardControls: (k == null ? void 0 : k.controls) || [],
7014
- cardControlValuesMap: F,
7014
+ cardControlValuesMap: R,
7015
7015
  dashboardInputValues: G,
7016
7016
  semanticExecutionPayload: E,
7017
7017
  interactionStates: V
7018
7018
  }),
7019
7019
  [
7020
- F,
7020
+ R,
7021
7021
  U,
7022
7022
  k,
7023
7023
  G,
@@ -7036,7 +7036,7 @@ function yc({
7036
7036
  wr.current = h, Cr(), bn(), xn(), W(r ?? null);
7037
7037
  let y = Ca({
7038
7038
  briefing: r,
7039
- sourceContext: Y,
7039
+ sourceContext: X,
7040
7040
  defaultRecipient: ne
7041
7041
  }), P = null;
7042
7042
  if (!r) {
@@ -7067,7 +7067,7 @@ function yc({
7067
7067
  k,
7068
7068
  ne,
7069
7069
  Cr,
7070
- Y,
7070
+ X,
7071
7071
  w,
7072
7072
  gn,
7073
7073
  xn,
@@ -7100,7 +7100,7 @@ function yc({
7100
7100
  ]).then(([y, P]) => {
7101
7101
  h || (zs(y), fr(P.channels));
7102
7102
  }).catch((y) => {
7103
- h || (xr(Fe(y)), fr([]));
7103
+ h || (xr(Re(y)), fr([]));
7104
7104
  }).finally(() => {
7105
7105
  h || gr(!1);
7106
7106
  }), () => {
@@ -7146,7 +7146,7 @@ function yc({
7146
7146
  Er
7147
7147
  ]);
7148
7148
  const me = (h) => {
7149
- ce((y) => Wn(y, h)), Ie([]), K(null), R != null && R.id || (Be(null), oe((y) => y + 1), A("edit"));
7149
+ ce((y) => Wn(y, h)), Ie([]), K(null), F != null && F.id || (Be(null), oe((y) => y + 1), A("edit"));
7150
7150
  }, Oe = () => !z || !j ? (K("Missing Semaphor API credentials."), null) : { apiServiceUrl: z, token: j }, no = async (h) => {
7151
7151
  const y = ra(D);
7152
7152
  if (Ie(y.issues), K(null), !y.valid)
@@ -7156,10 +7156,10 @@ function yc({
7156
7156
  return null;
7157
7157
  h != null && h.pendingAction && J(h.pendingAction);
7158
7158
  try {
7159
- const ae = R != null && R.id ? await M.updateBriefing(
7159
+ const ae = F != null && F.id ? await M.updateBriefing(
7160
7160
  P.apiServiceUrl,
7161
7161
  P.token,
7162
- R.id,
7162
+ F.id,
7163
7163
  cd(D)
7164
7164
  ) : await M.createBriefing(
7165
7165
  P.apiServiceUrl,
@@ -7168,7 +7168,7 @@ function yc({
7168
7168
  );
7169
7169
  return W(ae.briefing), ce(It(ae.briefing)), d == null || d(ae.briefing), ae.briefing;
7170
7170
  } catch (ae) {
7171
- return K(Fe(ae)), null;
7171
+ return K(Re(ae)), null;
7172
7172
  } finally {
7173
7173
  h != null && h.pendingAction && J(null);
7174
7174
  }
@@ -7191,7 +7191,7 @@ function yc({
7191
7191
  );
7192
7192
  return Be(ae.plan), h != null && h.silent || A("plan"), ae.plan;
7193
7193
  } catch (ae) {
7194
- return K(Fe(ae)), null;
7194
+ return K(Re(ae)), null;
7195
7195
  } finally {
7196
7196
  J(null);
7197
7197
  }
@@ -7217,14 +7217,14 @@ function yc({
7217
7217
  );
7218
7218
  lt($), Js(ae.previewRun);
7219
7219
  } catch (P) {
7220
- K(Fe(P));
7220
+ K(Re(P));
7221
7221
  } finally {
7222
7222
  J(null);
7223
7223
  }
7224
7224
  }, Dn = async () => {
7225
7225
  const h = Oe();
7226
7226
  if (h) {
7227
- if (!(R != null && R.id)) {
7227
+ if (!(F != null && F.id)) {
7228
7228
  await ao();
7229
7229
  return;
7230
7230
  }
@@ -7237,18 +7237,18 @@ function yc({
7237
7237
  const y = await M.runBriefingNow(
7238
7238
  h.apiServiceUrl,
7239
7239
  h.token,
7240
- R.id,
7240
+ F.id,
7241
7241
  { requestId: c() }
7242
7242
  );
7243
7243
  gn(y.run), m == null || m(y);
7244
7244
  } catch (y) {
7245
- K(Fe(y));
7245
+ K(Re(y));
7246
7246
  } finally {
7247
7247
  J(null);
7248
7248
  }
7249
7249
  }
7250
7250
  }, Tr = async () => {
7251
- if (!(R != null && R.id))
7251
+ if (!(F != null && F.id))
7252
7252
  return null;
7253
7253
  const h = Oe();
7254
7254
  if (!h)
@@ -7256,11 +7256,11 @@ function yc({
7256
7256
  const y = await M.getBriefing(
7257
7257
  h.apiServiceUrl,
7258
7258
  h.token,
7259
- R.id
7259
+ F.id
7260
7260
  );
7261
7261
  return W(y.briefing), ce(It(y.briefing)), d == null || d(y.briefing), y.briefing;
7262
7262
  }, so = async () => {
7263
- if (!(R != null && R.id) || !(ke != null && ke.id))
7263
+ if (!(F != null && F.id) || !(ke != null && ke.id))
7264
7264
  return;
7265
7265
  const h = Oe();
7266
7266
  if (h) {
@@ -7269,12 +7269,12 @@ function yc({
7269
7269
  const y = await M.cancelBriefingRun(
7270
7270
  h.apiServiceUrl,
7271
7271
  h.token,
7272
- R.id,
7272
+ F.id,
7273
7273
  ke.id
7274
7274
  );
7275
7275
  bn(), Te(y.run), A("result"), await Tr().catch(() => null);
7276
7276
  } catch (y) {
7277
- K(Fe(y));
7277
+ K(Re(y));
7278
7278
  } finally {
7279
7279
  J(null);
7280
7280
  }
@@ -7293,14 +7293,14 @@ function yc({
7293
7293
  );
7294
7294
  xn(), Le(y.previewRun), A("result");
7295
7295
  } catch (y) {
7296
- K(Fe(y));
7296
+ K(Re(y));
7297
7297
  } finally {
7298
7298
  J(null);
7299
7299
  }
7300
7300
  }
7301
7301
  }, io = () => {
7302
- !R || !ke || g == null || g({
7303
- briefing: { ...R, latestRun: ke },
7302
+ !F || !ke || g == null || g({
7303
+ briefing: { ...F, latestRun: ke },
7304
7304
  run: ke
7305
7305
  });
7306
7306
  }, lo = async () => {
@@ -7317,7 +7317,7 @@ function yc({
7317
7317
  ), ae = D.instruction;
7318
7318
  me({ instruction: P }), fn({ previousText: ae });
7319
7319
  } catch (P) {
7320
- Nr(Fe(P));
7320
+ Nr(Re(P));
7321
7321
  } finally {
7322
7322
  yr(!1);
7323
7323
  }
@@ -7325,7 +7325,7 @@ function yc({
7325
7325
  }, co = () => {
7326
7326
  wt && (me({ instruction: wt.previousText }), fn(null));
7327
7327
  }, Lr = async (h) => {
7328
- if (!(R != null && R.id))
7328
+ if (!(F != null && F.id))
7329
7329
  return;
7330
7330
  const y = Oe();
7331
7331
  if (y) {
@@ -7334,19 +7334,19 @@ function yc({
7334
7334
  await M.deleteBriefingRun(
7335
7335
  y.apiServiceUrl,
7336
7336
  y.token,
7337
- R.id,
7337
+ F.id,
7338
7338
  h
7339
7339
  );
7340
7340
  const P = await Tr().catch(() => null), ae = (P == null ? void 0 : P.latestRun) ?? null;
7341
7341
  Te(ae), ae || A("edit");
7342
7342
  } catch (P) {
7343
- K(Fe(P));
7343
+ K(Re(P));
7344
7344
  } finally {
7345
7345
  J(null);
7346
7346
  }
7347
7347
  }
7348
7348
  }, uo = async (h) => {
7349
- if (!(R != null && R.id))
7349
+ if (!(F != null && F.id))
7350
7350
  return;
7351
7351
  const y = Oe();
7352
7352
  if (y) {
@@ -7355,24 +7355,24 @@ function yc({
7355
7355
  const P = h === "PAUSED" ? await M.pauseBriefing(
7356
7356
  y.apiServiceUrl,
7357
7357
  y.token,
7358
- R.id
7358
+ F.id
7359
7359
  ) : await M.resumeBriefing(
7360
7360
  y.apiServiceUrl,
7361
7361
  y.token,
7362
- R.id
7362
+ F.id
7363
7363
  );
7364
7364
  W(P.briefing), ce(It(P.briefing)), d == null || d(P.briefing);
7365
7365
  } catch (P) {
7366
- K(Fe(P));
7366
+ K(Re(P));
7367
7367
  } finally {
7368
7368
  J(null);
7369
7369
  }
7370
7370
  }
7371
7371
  }, mo = D.instruction.split(`
7372
- `).map((h) => h.trim()).find((h) => h.length > 0), Rr = O(
7373
- () => R ? It(R) : null,
7374
- [R]
7375
- ), ut = !!Rr && JSON.stringify(D) !== JSON.stringify(Rr), Ye = D.body.type === "custom_message", En = Ye ? "Note" : "Analysis", St = Ye ? "Email body" : "What should this briefing investigate?", Fr = Ye ? "Write the email body that recipients will see." : "Describe the outcome in business terms. Mention what to watch, when to bother the team, and what to include in the briefing.", Pr = Ye ? "Plain note — sent as-is in the email body. No analysis is generated for this preset." : "Tell the analyst what to watch, when to escalate, and what to include.", Br = (h) => {
7372
+ `).map((h) => h.trim()).find((h) => h.length > 0), Fr = O(
7373
+ () => F ? It(F) : null,
7374
+ [F]
7375
+ ), ut = !!Fr && JSON.stringify(D) !== JSON.stringify(Fr), Xe = D.body.type === "custom_message", En = Xe ? "Note" : "Analysis", St = Xe ? "Email body" : "What should this briefing investigate?", Rr = Xe ? "Write the email body that recipients will see." : "Describe the outcome in business terms. Mention what to watch, when to bother the team, and what to include in the briefing.", Pr = Xe ? "Plain note — sent as-is in the email body. No analysis is generated for this preset." : "Tell the analyst what to watch, when to escalate, and what to include.", Br = (h) => {
7376
7376
  var y, P;
7377
7377
  if (ln(h), h === "EMAIL") {
7378
7378
  me({
@@ -7492,7 +7492,7 @@ function yc({
7492
7492
  onClick: p,
7493
7493
  className: "-ml-1 mb-1 inline-flex items-center gap-1 rounded-control px-1 py-0.5 text-[11px] text-muted-foreground hover:bg-muted hover:text-foreground",
7494
7494
  children: [
7495
- /* @__PURE__ */ t(zn, { className: "h-3 w-3 rotate-180" }),
7495
+ /* @__PURE__ */ t(Kn, { className: "h-3 w-3 rotate-180" }),
7496
7496
  "Back to briefings"
7497
7497
  ]
7498
7498
  }
@@ -7547,14 +7547,14 @@ function yc({
7547
7547
  pendingAction: ee,
7548
7548
  previewRun: q,
7549
7549
  savedActiveRun: ke,
7550
- detailsVisible: Re,
7550
+ detailsVisible: Fe,
7551
7551
  onShowDetails: () => Je((h) => !h),
7552
7552
  onCancelPreviewRun: vn ? oo : void 0,
7553
7553
  onCancelSavedRun: ke ? so : void 0,
7554
7554
  onMinimizeRun: ke && g ? io : void 0
7555
7555
  }
7556
7556
  ),
7557
- Re && q && ht(q.status) ? /* @__PURE__ */ t(ya, { run: q }) : Re && ke ? /* @__PURE__ */ t(ya, { run: ke }) : null,
7557
+ Fe && q && ht(q.status) ? /* @__PURE__ */ t(ya, { run: q }) : Fe && ke ? /* @__PURE__ */ t(ya, { run: ke }) : null,
7558
7558
  /* @__PURE__ */ t("div", { className: "flex-1 space-y-5 overflow-y-auto px-4 py-4", children: Se === "edit" ? /* @__PURE__ */ s(le, { children: [
7559
7559
  he ? null : /* @__PURE__ */ s("div", { children: [
7560
7560
  /* @__PURE__ */ t("div", { className: v(ie, "mb-2"), children: "Start from" }),
@@ -7646,13 +7646,13 @@ function yc({
7646
7646
  onChange: (h) => {
7647
7647
  re(null), me({ instruction: h.target.value });
7648
7648
  },
7649
- placeholder: Fr,
7649
+ placeholder: Rr,
7650
7650
  "aria-label": St
7651
7651
  }
7652
7652
  ),
7653
7653
  /* @__PURE__ */ t("p", { className: "mt-2 text-[11px] leading-[1.5] text-muted-foreground", children: Pr })
7654
7654
  ] }),
7655
- Ye ? null : /* @__PURE__ */ s("div", { className: "flex items-center justify-end gap-0.5 border-t border-border/60 px-3 py-1.5", children: [
7655
+ Xe ? null : /* @__PURE__ */ s("div", { className: "flex items-center justify-end gap-0.5 border-t border-border/60 px-3 py-1.5", children: [
7656
7656
  D.source.type === "dashboard" && D.attachments.length === 0 ? /* @__PURE__ */ s(le, { children: [
7657
7657
  /* @__PURE__ */ s(
7658
7658
  "button",
@@ -7720,7 +7720,7 @@ function yc({
7720
7720
  onChange: (h) => {
7721
7721
  re(null), me({ instruction: h.target.value });
7722
7722
  },
7723
- placeholder: Fr,
7723
+ placeholder: Rr,
7724
7724
  "aria-label": St
7725
7725
  }
7726
7726
  )
@@ -7846,7 +7846,7 @@ function yc({
7846
7846
  kn === h && y && "ring-1 ring-foreground/20"
7847
7847
  ),
7848
7848
  children: [
7849
- h === "EMAIL" ? /* @__PURE__ */ t(Xa, { className: "h-3 w-3" }) : /* @__PURE__ */ t(qn, { className: "h-3 w-3" }),
7849
+ h === "EMAIL" ? /* @__PURE__ */ t(Ya, { className: "h-3 w-3" }) : /* @__PURE__ */ t(qn, { className: "h-3 w-3" }),
7850
7850
  h === "EMAIL" ? "Email" : "Slack"
7851
7851
  ]
7852
7852
  },
@@ -7988,14 +7988,14 @@ function yc({
7988
7988
  ] })
7989
7989
  )
7990
7990
  ] }),
7991
- Ye ? null : /* @__PURE__ */ s("div", { children: [
7991
+ Xe ? null : /* @__PURE__ */ s("div", { children: [
7992
7992
  /* @__PURE__ */ t("div", { className: v(ie, "mb-2"), children: "Scope" }),
7993
7993
  /* @__PURE__ */ t(
7994
- Fd,
7994
+ Rd,
7995
7995
  {
7996
7996
  source: D.source,
7997
- resolvedSourceContext: Y,
7998
- sourceDetail: Xs,
7997
+ resolvedSourceContext: X,
7998
+ sourceDetail: Ys,
7999
7999
  onChange: (h) => me({ source: h })
8000
8000
  }
8001
8001
  )
@@ -8005,7 +8005,7 @@ function yc({
8005
8005
  {
8006
8006
  previewPlan: Ve,
8007
8007
  previewRun: q && q.status !== "SUCCESS" ? q : null,
8008
- scopeLabel: Y.source.type === "dashboard" ? (k == null ? void 0 : k.title) ?? Y.label : Y.label
8008
+ scopeLabel: X.source.type === "dashboard" ? (k == null ? void 0 : k.title) ?? X.label : X.label
8009
8009
  }
8010
8010
  ) : Se === "result" && q ? /* @__PURE__ */ t(
8011
8011
  va,
@@ -8085,13 +8085,13 @@ function yc({
8085
8085
  className: Tt,
8086
8086
  onClick: () => A("edit"),
8087
8087
  children: [
8088
- /* @__PURE__ */ t(zn, { className: "h-3 w-3 rotate-180" }),
8088
+ /* @__PURE__ */ t(Kn, { className: "h-3 w-3 rotate-180" }),
8089
8089
  Se === "result" ? "Edit brief" : "Tweak brief"
8090
8090
  ]
8091
8091
  }
8092
8092
  ) : !he && f && !p ? /* @__PURE__ */ t("button", { type: "button", className: Tt, onClick: f, children: "Discard" }) : null }),
8093
8093
  /* @__PURE__ */ s("div", { className: "flex items-center gap-1.5", children: [
8094
- !he && Se === "edit" && !Ye ? /* @__PURE__ */ s(
8094
+ !he && Se === "edit" && !Xe ? /* @__PURE__ */ s(
8095
8095
  "button",
8096
8096
  {
8097
8097
  type: "button",
@@ -8101,12 +8101,12 @@ function yc({
8101
8101
  Ir();
8102
8102
  },
8103
8103
  children: [
8104
- ee === "plan" ? /* @__PURE__ */ t(se, { className: "h-3 w-3 animate-spin" }) : /* @__PURE__ */ t(Yi, { className: "h-3 w-3" }),
8104
+ ee === "plan" ? /* @__PURE__ */ t(se, { className: "h-3 w-3 animate-spin" }) : /* @__PURE__ */ t(Xi, { className: "h-3 w-3" }),
8105
8105
  "Show plan"
8106
8106
  ]
8107
8107
  }
8108
8108
  ) : null,
8109
- he || !Ye ? /* @__PURE__ */ s(
8109
+ he || !Xe ? /* @__PURE__ */ s(
8110
8110
  "button",
8111
8111
  {
8112
8112
  type: "button",
@@ -8173,7 +8173,7 @@ function vc({
8173
8173
  onClick: a,
8174
8174
  "aria-label": "Briefings",
8175
8175
  children: [
8176
- /* @__PURE__ */ t(Xi, { className: "h-3.5 w-3.5" }),
8176
+ /* @__PURE__ */ t(Yi, { className: "h-3.5 w-3.5" }),
8177
8177
  "Briefings",
8178
8178
  o ? /* @__PURE__ */ t("span", { className: "ml-0.5 rounded-control bg-muted px-1 text-[10px] tabular-nums text-foreground/70", children: n }) : null
8179
8179
  ]
@@ -8241,7 +8241,7 @@ function Tc(e) {
8241
8241
  function Lc(e) {
8242
8242
  return e.scheduleExpr ? e.scheduleExpr : "On demand";
8243
8243
  }
8244
- function Rc(e) {
8244
+ function Fc(e) {
8245
8245
  if (e.lastRunStatus) {
8246
8246
  const n = e.lastRunStatus.toString().toUpperCase();
8247
8247
  return n === "SUCCESS" ? "Last run completed." : n === "FAILED" ? "Last run failed." : `Last run ${e.lastRunStatus.toString().toLowerCase()}`;
@@ -8251,7 +8251,7 @@ function Rc(e) {
8251
8251
  function Us(e) {
8252
8252
  return e.hasActiveRun ? "Running" : e.lastRunStatus ? `Last run ${e.lastRunStatus.toString().toLowerCase()}` : "Idle";
8253
8253
  }
8254
- function Fc(e) {
8254
+ function Rc(e) {
8255
8255
  return e.source.type === "dashboard" ? "This dashboard" : "Project";
8256
8256
  }
8257
8257
  function Pc({
@@ -8355,7 +8355,7 @@ function Bc({
8355
8355
  /* @__PURE__ */ t(se, { className: "h-3.5 w-3.5 animate-spin text-muted-foreground" })
8356
8356
  ) : null,
8357
8357
  C > 0 ? /* @__PURE__ */ s("button", { onClick: d, className: Os, children: [
8358
- /* @__PURE__ */ t(Ft, { className: "h-3 w-3" }),
8358
+ /* @__PURE__ */ t(Rt, { className: "h-3 w-3" }),
8359
8359
  "New briefing"
8360
8360
  ] }) : null
8361
8361
  ] })
@@ -8404,7 +8404,7 @@ function Mc({ onNew: e }) {
8404
8404
  /* @__PURE__ */ t("div", { className: "text-[13px] font-medium text-foreground", children: "Have an analyst brief your team" }),
8405
8405
  /* @__PURE__ */ t("p", { className: "mt-1.5 max-w-[320px] text-[12px] leading-5 text-muted-foreground", children: "Describe what to watch. An analyst digs into this dashboard and the data behind it, then briefs your team on the cadence you choose." }),
8406
8406
  /* @__PURE__ */ s("button", { onClick: e, className: v(Os, "mt-4"), children: [
8407
- /* @__PURE__ */ t(Ft, { className: "h-3 w-3" }),
8407
+ /* @__PURE__ */ t(Rt, { className: "h-3 w-3" }),
8408
8408
  "New briefing"
8409
8409
  ] })
8410
8410
  ] });
@@ -8595,7 +8595,7 @@ function Oc({
8595
8595
  onTogglePause: i,
8596
8596
  onDelete: l
8597
8597
  }) {
8598
- const c = e.status === "PAUSED", d = e.hasActiveRun, u = Rc(e), m = Tc(e.lastRunAt), f = e.lastRunStatus, p = f === "SUCCESS" ? X.success.dot : f === "FAILED" ? X.danger.dot : f ? X.warning.dot : X.neutral.dot;
8598
+ const c = e.status === "PAUSED", d = e.hasActiveRun, u = Fc(e), m = Tc(e.lastRunAt), f = e.lastRunStatus, p = f === "SUCCESS" ? Y.success.dot : f === "FAILED" ? Y.danger.dot : f ? Y.warning.dot : Y.neutral.dot;
8599
8599
  return /* @__PURE__ */ s(
8600
8600
  "div",
8601
8601
  {
@@ -8620,9 +8620,9 @@ function Oc({
8620
8620
  c ? /* @__PURE__ */ t("span", { className: "shrink-0 text-[11px] text-muted-foreground", children: "· Paused" }) : null
8621
8621
  ] }),
8622
8622
  /* @__PURE__ */ s("div", { className: "mt-1 flex flex-wrap items-center gap-x-1.5 text-[11px] text-muted-foreground", children: [
8623
- /* @__PURE__ */ t("span", { children: Fc(e) }),
8623
+ /* @__PURE__ */ t("span", { children: Rc(e) }),
8624
8624
  /* @__PURE__ */ t("span", { className: "text-border", children: "·" }),
8625
- /* @__PURE__ */ t(Ri, { className: "h-3 w-3" }),
8625
+ /* @__PURE__ */ t(Fi, { className: "h-3 w-3" }),
8626
8626
  /* @__PURE__ */ t("span", { className: "truncate", children: Lc(e) }),
8627
8627
  e.lastRunAt ? /* @__PURE__ */ s(le, { children: [
8628
8628
  /* @__PURE__ */ t("span", { className: "text-border", children: "·" }),
@@ -8660,7 +8660,7 @@ function Oc({
8660
8660
  ) }),
8661
8661
  /* @__PURE__ */ s(sn, { align: "end", className: "w-44", children: [
8662
8662
  /* @__PURE__ */ s(De, { onClick: a, children: [
8663
- /* @__PURE__ */ t(Ra, { className: "h-3.5 w-3.5" }),
8663
+ /* @__PURE__ */ t(Fa, { className: "h-3.5 w-3.5" }),
8664
8664
  "Edit briefing"
8665
8665
  ] }),
8666
8666
  /* @__PURE__ */ s(
@@ -8742,7 +8742,7 @@ function _c({
8742
8742
  }), m = Me(!1);
8743
8743
  return fe(() => {
8744
8744
  m.current || (m.current = !0, Ht(n.status) ? u(n) : qt(n.status) && o(n));
8745
- }, [n, o, u]), /* @__PURE__ */ t(Yd, { run: c, onExpand: l });
8745
+ }, [n, o, u]), /* @__PURE__ */ t(Xd, { run: c, onExpand: l });
8746
8746
  }
8747
8747
  function fu({
8748
8748
  dashboardId: e,
@@ -8756,11 +8756,11 @@ function fu({
8756
8756
  }) {
8757
8757
  const { authToken: d, tokenProps: u } = Pt(), [m, f] = S(!1), [p, g] = S("list"), [I, C] = S("dashboard"), [N, b] = S(
8758
8758
  []
8759
- ), [k, x] = S(null), [w, L] = S(!1), [U, E] = S(null), [F, _] = S(null), [G, V] = S(
8759
+ ), [k, x] = S(null), [w, L] = S(!1), [U, E] = S(null), [R, _] = S(null), [G, V] = S(
8760
8760
  null
8761
- ), [z, j] = S(null), [M, Y] = S(
8761
+ ), [z, j] = S(null), [M, X] = S(
8762
8762
  null
8763
- ), [ne, R] = S(null), W = r ?? (u == null ? void 0 : u.apiServiceUrl), D = a ?? (d == null ? void 0 : d.accessToken), ce = O(() => ({ ...Nc, ...c }), [c]), ee = kc(n), J = O(
8763
+ ), [ne, F] = S(null), W = r ?? (u == null ? void 0 : u.apiServiceUrl), D = a ?? (d == null ? void 0 : d.accessToken), ce = O(() => ({ ...Nc, ...c }), [c]), ee = kc(n), J = O(
8764
8764
  () => Ac(N, I, e),
8765
8765
  [e, N, I]
8766
8766
  ), ve = O(() => I === "dashboard" ? {
@@ -8919,7 +8919,7 @@ function fu({
8919
8919
  },
8920
8920
  onDelete: ($) => V($),
8921
8921
  selectingId: U,
8922
- busyId: F,
8922
+ busyId: R,
8923
8923
  manageBriefingsHref: l
8924
8924
  }
8925
8925
  ) : /* @__PURE__ */ t(
@@ -8942,7 +8942,7 @@ function fu({
8942
8942
  x($), ue();
8943
8943
  },
8944
8944
  onMinimizeRun: ({ briefing: $, run: oe }) => {
8945
- Y({ briefing: $, run: oe }), f(!1);
8945
+ X({ briefing: $, run: oe }), f(!1);
8946
8946
  }
8947
8947
  }
8948
8948
  )
@@ -8957,21 +8957,21 @@ function fu({
8957
8957
  apiServiceUrl: W,
8958
8958
  token: D,
8959
8959
  onTerminal: ($) => {
8960
- R({
8960
+ F({
8961
8961
  briefing: M.briefing,
8962
8962
  run: $
8963
- }), Y(null), ue();
8963
+ }), X(null), ue();
8964
8964
  },
8965
8965
  onTimeout: () => {
8966
- Y(null), ue();
8966
+ X(null), ue();
8967
8967
  },
8968
8968
  onExpand: () => {
8969
- x(M.briefing), g("author"), Y(null), f(!0);
8969
+ x(M.briefing), g("author"), X(null), f(!0);
8970
8970
  }
8971
8971
  }
8972
8972
  ) : null,
8973
8973
  ne ? /* @__PURE__ */ t("div", { className: "fixed bottom-4 right-4 z-50 w-[360px]", children: /* @__PURE__ */ t(
8974
- Xd,
8974
+ Yd,
8975
8975
  {
8976
8976
  title: ne.run.status === "SUCCESS" ? `${ne.briefing.name} is ready` : `${ne.briefing.name} run failed`,
8977
8977
  durationSeconds: ne.run.startedAt && ne.run.completedAt ? Math.max(
@@ -8982,9 +8982,9 @@ function fu({
8982
8982
  ) : null,
8983
8983
  status: ne.run.status === "SUCCESS" ? "success" : "failed",
8984
8984
  onView: () => {
8985
- x(ne.briefing), g("author"), R(null), f(!0);
8985
+ x(ne.briefing), g("author"), F(null), f(!0);
8986
8986
  },
8987
- onDismiss: () => R(null)
8987
+ onDismiss: () => F(null)
8988
8988
  }
8989
8989
  ) }) : null,
8990
8990
  /* @__PURE__ */ t(
@@ -8995,8 +8995,8 @@ function fu({
8995
8995
  $ || V(null);
8996
8996
  },
8997
8997
  children: /* @__PURE__ */ s(Qt, { children: [
8998
- /* @__PURE__ */ s(Yt, { children: [
8999
- /* @__PURE__ */ t(Xt, { children: "Delete briefing?" }),
8998
+ /* @__PURE__ */ s(Xt, { children: [
8999
+ /* @__PURE__ */ t(Yt, { children: "Delete briefing?" }),
9000
9000
  /* @__PURE__ */ s(Zt, { children: [
9001
9001
  "This permanently deletes ",
9002
9002
  /* @__PURE__ */ t("strong", { children: G == null ? void 0 : G.name }),
@@ -9006,7 +9006,7 @@ function fu({
9006
9006
  /* @__PURE__ */ s(en, { children: [
9007
9007
  /* @__PURE__ */ t(tn, { children: "Cancel" }),
9008
9008
  /* @__PURE__ */ t(
9009
- Xn,
9009
+ Yn,
9010
9010
  {
9011
9011
  className: "bg-destructive/90 hover:bg-destructive",
9012
9012
  onClick: q,