react-semaphor 0.1.556 → 0.1.557

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 (75) hide show
  1. package/DATA_APP_SDK.md +6 -29
  2. package/dist/analytics-protocol/index.js +19 -20
  3. package/dist/assistant-context/index.js +1 -1
  4. package/dist/brand-studio/index.js +28 -29
  5. package/dist/briefings/index.js +55 -56
  6. package/dist/chunks/{assistant-chat-C7Acww1T.js → assistant-chat-WMTpYirZ.js} +78 -80
  7. package/dist/chunks/{bookmark-state-7iZErWnR.js → bookmark-state-PjQpxbG7.js} +3 -3
  8. package/dist/chunks/{braces-o9UiRQes.js → braces-BOErQVyi.js} +1 -1
  9. package/dist/chunks/{comparison-window-caption-BseG5aOZ.js → comparison-window-caption-Dc7BaCMz.js} +186 -189
  10. package/dist/chunks/{custom-visual-inputs-ChuKjx27.js → custom-visual-inputs-CxYI-gFa.js} +1 -1
  11. package/dist/chunks/{dashboard-BU6rE5kV.js → dashboard-4D8Vy4pL.js} +1 -1
  12. package/dist/chunks/{dashboard-briefing-launcher-qrYd2zkN.js → dashboard-briefing-launcher-C4EmOfxs.js} +147 -149
  13. package/dist/chunks/{dashboard-controls-BsapXI2H.js → dashboard-controls-DBWykmvL.js} +170 -172
  14. package/dist/chunks/{dashboard-json-CJqPqYnI.js → dashboard-json-DiX-p0F7.js} +20 -21
  15. package/dist/chunks/{document-dashboard-inputs-BNSprf5_.js → document-dashboard-inputs-DP5hquBR.js} +30 -30
  16. package/dist/chunks/{edit-dashboard-visual-CjAdV-WG.js → edit-dashboard-visual-n1jLV_7V.js} +4773 -4802
  17. package/dist/chunks/{filter-reach-copy-BTrqtFkh.js → filter-reach-copy-BB9iakLA.js} +147 -148
  18. package/dist/chunks/{filter-value-text-CJTJDCym.js → filter-value-text-CUBpotVN.js} +3 -3
  19. package/dist/chunks/{global-date-filter-utils-CTVf3dG3.js → global-date-filter-utils-Cc5tqkoW.js} +585 -591
  20. package/dist/chunks/{index-B_vIRa-q.js → index-CgjhzkKM.js} +69 -70
  21. package/dist/chunks/{layout-grid-Bgzth8vd.js → layout-grid-CcNklCwL.js} +1 -1
  22. package/dist/chunks/{list-filter-DsaTbM3J.js → list-filter-Ds_4UTpD.js} +1 -1
  23. package/dist/chunks/{matrix-analytical-definition-Cg0ioFGQ.js → matrix-analytical-definition-4GTUDheD.js} +3 -3
  24. package/dist/chunks/{matrix-card-yYibXSw1.js → matrix-card-fS_4O7zA.js} +2 -2
  25. package/dist/chunks/{matrix-member-presentation-DEEauKXC.js → matrix-member-presentation-Dj7HaAHC.js} +1 -1
  26. package/dist/chunks/{matrix-operation-contract-C1G6AJNh.js → matrix-operation-contract-CpgLZ7E5.js} +21 -21
  27. package/dist/chunks/{metric-comparison-BfcmwxM1.js → metric-comparison-C8LY7GG5.js} +1 -1
  28. package/dist/chunks/{palette-D10o_yYX.js → palette-DMkIhagj.js} +1 -1
  29. package/dist/chunks/{matrix-formatter-C2kjsCDf.js → pivot-result-contract-expectations-DMk-mKhG.js} +444 -395
  30. package/dist/chunks/{pivot-result-identity-CWi5WrrY.js → pivot-result-identity-CrQ54Xbj.js} +1 -1
  31. package/dist/chunks/{raw-temporal-presentation-DWzLIHc3.js → raw-temporal-presentation-DdEpgPRB.js} +24 -25
  32. package/dist/chunks/report-preferences-dialog-CFg5VFLk.js +2109 -0
  33. package/dist/chunks/{report-runtime-context-BgM-iNWB.js → report-runtime-context-CohdtiMg.js} +1 -1
  34. package/dist/chunks/{resolve-dashboard-input-context-Df8V5QHW.js → resolve-dashboard-input-context-Djl3kCFL.js} +224 -226
  35. package/dist/chunks/{save-CfJpQQ68.js → save-D1EpMcwT.js} +1 -1
  36. package/dist/chunks/{saved-dashboard-context-VvXI6r03.js → saved-dashboard-context-umlQFevH.js} +8 -8
  37. package/dist/chunks/selection-reducer-_d6aKJnj.js +46 -0
  38. package/dist/chunks/{semaphor-ready-indicator-fejZmdq9.js → semaphor-ready-indicator-4cOp6sla.js} +40458 -43400
  39. package/dist/chunks/{shelf-drop-preview-context-BuTCXe-S.js → shelf-drop-preview-context-DAtRuvR7.js} +6 -6
  40. package/dist/chunks/{source-entity-resolution-B46EZIzX.js → source-entity-resolution-DXW1HpKf.js} +1 -1
  41. package/dist/chunks/{switch-Bq92UGId.js → switch-9CJt5EF_.js} +1430 -1341
  42. package/dist/chunks/{table-export-sheet-noKl8-en.js → table-export-sheet-CTCTA_bd.js} +1 -1
  43. package/dist/chunks/{table-settings-PpINOzw8.js → table-settings-DF1gdVQR.js} +2 -2
  44. package/dist/chunks/temporal-input-presentation-DoSniQj1.js +2939 -0
  45. package/dist/chunks/{token-types--0bgRCaO.js → token-types-DFyLflLY.js} +1 -1
  46. package/dist/chunks/{upload-BFX7apKV.js → upload-LSNKpt0w.js} +1 -1
  47. package/dist/chunks/{use-create-flow-overlay-state-Cz-ve64t.js → use-create-flow-overlay-state-esyMT9vU.js} +124 -126
  48. package/dist/chunks/{validators-CZo_H4E6.js → validators-hmfNNQz8.js} +5 -5
  49. package/dist/chunks/zoned-wall-clock-E35Frf9v.js +191 -0
  50. package/dist/dashboard/index.js +2 -2
  51. package/dist/dashboard-authoring/index.js +130 -131
  52. package/dist/data-app-sdk/index.js +788 -4153
  53. package/dist/data-app-sdk-adapters/index.js +2 -2
  54. package/dist/data-app-sdk-validation/index.js +5 -5
  55. package/dist/format-utils/index.js +230 -233
  56. package/dist/index.js +216 -217
  57. package/dist/report-runtime-context/index.js +1 -1
  58. package/dist/style.css +1 -1
  59. package/dist/surfboard/index.js +2 -2
  60. package/dist/types/data-app-sdk/contracts.d.ts +0 -146
  61. package/dist/types/data-app-sdk/index.d.ts +0 -2
  62. package/dist/types/index.js +6 -6
  63. package/dist/types/shared/dashboard-authoring/filter-model/filter-definitions.d.ts +1 -7
  64. package/package.json +1 -3
  65. package/src/data-app-sdk/README.md +7 -31
  66. package/dist/chunks/pivot-result-contract-expectations-fKBHFPfz.js +0 -56
  67. package/dist/chunks/raw-temporal-contract-CjHaUIsE.js +0 -64
  68. package/dist/chunks/report-preferences-dialog-D_wrbIQt.js +0 -2261
  69. package/dist/chunks/selection-reducer-By4CSmEF.js +0 -111
  70. package/dist/chunks/temporal-bucket-DzyadxVY.js +0 -2071
  71. package/dist/chunks/temporal-input-presentation-CJWS4d0L.js +0 -879
  72. package/dist/chunks/x-4f5U2XwU.js +0 -100
  73. package/dist/chunks/zoned-wall-clock-MulfA26h.js +0 -129
  74. package/dist/types/data-app-sdk/devtools/index.d.ts +0 -49
  75. package/dist/types/data-app-sdk/devtools.d.ts +0 -1
@@ -1,28 +1,27 @@
1
- import { al as oi, am as si, an as li, ao as dt, ap as ci, aq as K, ar as ft, as as ui, at as di, au as Se, av as fi, aw as mt, ax as mi, ay as pi, az as hi, aA as gi, aB as yi, aC as bi, aD as pt, aE as vi, aF as Fi, aG as Ci, aH as ge, aI as Ii, aJ as xi, aK as Si, b as Mi, aL as Di, v as Ti, z as wi, aM as Pi, aN as Oi } from "./resolve-dashboard-input-context-Df8V5QHW.js";
2
- import { ab as ht, f as Ai, e as _i, a8 as gt, am as Ni, v as Ei } from "./validators-CZo_H4E6.js";
3
- import "./matrix-operation-contract-C1G6AJNh.js";
4
- import { r as Ri, C as Vi } from "./metric-comparison-BfcmwxM1.js";
1
+ import { al as oi, am as si, an as li, ao as dt, ap as ci, aq as K, ar as ft, as as ui, at as di, au as Se, av as fi, aw as mt, ax as mi, ay as pi, az as hi, aA as gi, aB as yi, aC as bi, aD as pt, aE as vi, aF as Fi, aG as Ci, aH as ge, aI as Ii, aJ as xi, aK as Si, b as Mi, aL as Di, v as Ti, z as wi, aM as Pi, aN as Oi } from "./resolve-dashboard-input-context-Djl3kCFL.js";
2
+ import { ab as ht, f as Ai, e as _i, a8 as gt, am as Ni, v as Ei } from "./validators-hmfNNQz8.js";
3
+ import "./matrix-operation-contract-CpgLZ7E5.js";
4
+ import { r as Ri, C as Vi } from "./metric-comparison-C8LY7GG5.js";
5
5
  import "./analytics-base-schemas-BUFUoO6G.js";
6
6
  import "zod";
7
- import { q as ki } from "./temporal-input-presentation-CJWS4d0L.js";
8
- import { f as W } from "./matrix-formatter-C2kjsCDf.js";
9
- import { a as yt, l as Bi, g as Ki, b as Fe, d as Li, i as R, t as _, R as qi, v as $i, r as zi, y as ji } from "./temporal-bucket-DzyadxVY.js";
7
+ import { d as yt, n as ki, j as Bi, e as Fe, g as Ki, i as R, H as _, R as Li, v as qi, r as $i, L as zi, X as ji } from "./temporal-input-presentation-DoSniQj1.js";
8
+ import { f as W } from "./pivot-result-contract-expectations-DMk-mKhG.js";
10
9
  import "../value-format-preferences/index.js";
11
- import { L as Ui, w as de } from "./table-settings-PpINOzw8.js";
12
- import { dp as bt, dw as vt, dx as Hi, dy as Gi, cS as Me, dz as Wi, cT as Qi, dA as A, as as Yi, dB as Ft, dC as De, dD as Ji, dE as Xi, dF as He, dG as Zi, dH as Ge, dI as en, dJ as tn, Q as Ct, dK as It, dL as xt, v as St, dM as We, Y as $, dN as Te, d1 as Qe, d3 as we, c_ as Ye, dO as Je, ds as nn, bb as Pe, dP as rn, dQ as an, dR as on, cX as G, be as Xe, dS as sn, a2 as Mt, a3 as Dt, d as ln, dT as z, bg as cn, dU as un, bh as dn, aA as Tt, dV as fn, dW as mn, dX as pn, dY as hn, b as wt, dr as gn, cW as yn, dZ as bn, d8 as Ce, d_ as vn, d$ as ye, c8 as Pt, e0 as Ze, e1 as Fn, bI as Cn, cb as et, ca as In, e2 as xn } from "./global-date-filter-utils-CTVf3dG3.js";
13
- import { r as Sn } from "./pivot-result-identity-CWi5WrrY.js";
10
+ import { L as Hi, w as de } from "./table-settings-DF1gdVQR.js";
11
+ import { dm as bt, du as vt, dv as Ui, dw as Gi, cR as Me, dx as Wi, cS as Qi, dy as A, as as Yi, dz as Ft, dA as De, dB as Ji, dC as Xi, dD as Ue, dE as Zi, dF as Ge, dG as en, dH as tn, Q as Ct, dI as It, dJ as xt, v as St, dK as We, Y as $, dL as Te, c$ as Qe, d1 as we, cY as Ye, dM as Je, dq as nn, bb as Pe, dN as rn, dO as an, dP as on, cV as G, be as Xe, dQ as sn, a2 as Mt, a3 as Dt, d as ln, dR as z, bg as cn, dS as un, bh as dn, aA as Tt, dT as fn, dU as mn, dV as pn, dW as hn, b as wt, dp as gn, dX as yn, dY as bn, d6 as Ce, dZ as vn, d_ as ye, c7 as Pt, d$ as Ze, e0 as Fn, bH as Cn, ca as et, c9 as In, e1 as xn } from "./global-date-filter-utils-Cc5tqkoW.js";
12
+ import { r as Sn } from "./pivot-result-identity-CrQ54Xbj.js";
14
13
  import { g as Mn } from "./_commonjsHelpers-DimLPMtv.js";
15
- import { e as Dn, d as Tn } from "./raw-temporal-presentation-DWzLIHc3.js";
14
+ import { e as Dn, d as Tn } from "./raw-temporal-presentation-DdEpgPRB.js";
16
15
  import "./index-dIV-Gdsb.js";
17
16
  import "./index-CuHybtft.js";
18
- import { i as wn } from "./source-entity-resolution-B46EZIzX.js";
19
- import { R as Pn } from "./matrix-analytical-definition-Cg0ioFGQ.js";
17
+ import { i as wn } from "./source-entity-resolution-DXW1HpKf.js";
18
+ import { R as Pn } from "./matrix-analytical-definition-4GTUDheD.js";
20
19
  import { r as Ot } from "./applied-constraints-DU-wndZ7.js";
21
20
  const Ha = 15, On = /\{\{-?\s*filters\s*\|\s*where\s*-?\}\}/i, An = /\{\{-?\s*filters\s*\|\s*and\s*-?\}\}/i, _n = /\bwhere\b/i;
22
21
  function Nn(e) {
23
22
  return e != null && e.trim() ? On.test(e) || An.test(e) : !1;
24
23
  }
25
- function Ga(e) {
24
+ function Ua(e) {
26
25
  return !(e != null && e.trim()) || Nn(e) ? null : _n.test(e) ? {
27
26
  helper: "{{ filters | and }}",
28
27
  description: "For queries with an existing WHERE clause."
@@ -35,13 +34,13 @@ const tt = [10, 20, 50, 100, 500, 1e3], En = 50;
35
34
  function Rn(e) {
36
35
  return e && e > 0 ? e : En;
37
36
  }
38
- function Wa(e) {
37
+ function Ga(e) {
39
38
  const t = Rn(e), i = [...tt];
40
39
  return tt.includes(
41
40
  t
42
41
  ) || (i.push(t), i.sort((n, r) => n - r)), i;
43
42
  }
44
- function Qa(e) {
43
+ function Wa(e) {
45
44
  var t, i;
46
45
  return !!((e.type === "table" || e.type === "detailTable") && e.sql && !bt(e.config) && !((i = (t = e.preferences) == null ? void 0 : t.tablePrefs) != null && i.forceClientPagination));
47
46
  }
@@ -54,7 +53,7 @@ function Vn(e, t) {
54
53
  const i = bt(e.config);
55
54
  return e.sql && !i ? (o = (a = e.preferences) == null ? void 0 : a.tablePrefs) != null && o.enableDevModePagination ? "server" : "client" : i && oi(e) ? "server" : "client";
56
55
  }
57
- const At = Object.freeze({}), Ya = {
56
+ const At = Object.freeze({}), Qa = {
58
57
  access: "session-only",
59
58
  printMode: !1,
60
59
  baseline: null,
@@ -65,7 +64,7 @@ const At = Object.freeze({}), Ya = {
65
64
  isFavorite: !1,
66
65
  fetchedAt: 0
67
66
  };
68
- function Ja(e) {
67
+ function Ya(e) {
69
68
  return !e.viewer.printMode && e.viewer.access !== "session-only" && !!e.viewer.baseline && !!e.viewerStateClient && !e.isDashboardEditing;
70
69
  }
71
70
  function kn(e) {
@@ -74,8 +73,8 @@ function kn(e) {
74
73
  function Bn(e, t) {
75
74
  return kn(e)[t];
76
75
  }
77
- function Xa(e, t, i) {
78
- if (!(i.isEditorPreview || e.isDashboardEditing) && Ui(e.dashboard, t))
76
+ function Ja(e, t, i) {
77
+ if (!(i.isEditorPreview || e.isDashboardEditing) && Hi(e.dashboard, t))
79
78
  return { settings: Bn(e, t) };
80
79
  }
81
80
  function Kn(e) {
@@ -141,10 +140,10 @@ const Ln = () => ({
141
140
  linkFormat: Ln(),
142
141
  colorRanges: []
143
142
  });
144
- function Za(e, t, i, n) {
143
+ function Xa(e, t, i, n) {
145
144
  return t && t !== "auto" ? t : i;
146
145
  }
147
- const eo = (e) => !e || e === "auto" ? "local time" : {
146
+ const Za = (e) => !e || e === "auto" ? "local time" : {
148
147
  "America/New_York": "Eastern Time",
149
148
  "America/Chicago": "Central Time",
150
149
  "America/Denver": "Mountain Time",
@@ -275,9 +274,9 @@ function Nt(e, t = "auto", i = {}) {
275
274
  case "date":
276
275
  return jn(e, i);
277
276
  case "scientific":
278
- return Un(e, i);
279
- case "duration":
280
277
  return Hn(e, i);
278
+ case "duration":
279
+ return Un(e, i);
281
280
  default:
282
281
  return String(e);
283
282
  }
@@ -298,7 +297,7 @@ function Et(e, t = {}) {
298
297
  );
299
298
  }
300
299
  function Rt(e, t = {}) {
301
- return Li(e, {
300
+ return Ki(e, {
302
301
  ...le(t, {
303
302
  min: 2,
304
303
  max: 2
@@ -331,14 +330,14 @@ function jn(e, t = {}) {
331
330
  return String(e);
332
331
  }
333
332
  }
334
- function Un(e, t = {}) {
335
- return Ki(
333
+ function Hn(e, t = {}) {
334
+ return Bi(
336
335
  e,
337
336
  le(t, { min: 2, max: 2 })
338
337
  );
339
338
  }
340
- function Hn(e, t = {}) {
341
- return Bi(e, {
339
+ function Un(e, t = {}) {
340
+ return ki(e, {
342
341
  inputUnit: t.durationInputUnit,
343
342
  outputStyle: t.durationDisplayStyle,
344
343
  largestUnit: t.durationLargestUnit,
@@ -352,7 +351,7 @@ function Hn(e, t = {}) {
352
351
  function Gn(e, t) {
353
352
  return t.currency ? "currency" : typeof e == "string" && !isNaN(Date.parse(e)) ? "date" : "number";
354
353
  }
355
- function to(e, t = {}) {
354
+ function eo(e, t = {}) {
356
355
  return (i) => Nt(i, e, t);
357
356
  }
358
357
  function Wn({
@@ -466,7 +465,7 @@ function Zn(e) {
466
465
  format: r
467
466
  };
468
467
  }
469
- function io(e) {
468
+ function to(e) {
470
469
  var r, a;
471
470
  const t = new Set(
472
471
  Xn(e.records)
@@ -480,7 +479,7 @@ function io(e) {
480
479
  }
481
480
  );
482
481
  }
483
- function no(e) {
482
+ function io(e) {
484
483
  var a, o;
485
484
  const { card: t, context: i } = e;
486
485
  if (!(i != null && i.preferences) || !vt(t.type))
@@ -606,7 +605,7 @@ function nr(e) {
606
605
  const { chartType: t, resultKeys: i, config: n } = e, r = 1 + (n != null && n.enableGrouping && (n.groupKey || i[1]) ? 1 : 0), a = i.slice(r), o = (n == null ? void 0 : n.xMetricKey) ?? a[0], s = (n == null ? void 0 : n.yMetricKey) ?? a[1] ?? a[0], l = t === "bubble" ? (n == null ? void 0 : n.radiusMetricKey) ?? a[2] ?? a[1] ?? a[0] : void 0, c = new Set(i);
607
606
  return [o, s, l].filter((u) => !!u).filter((u) => c.has(u));
608
607
  }
609
- function ro(e) {
608
+ function no(e) {
610
609
  const { chartType: t, resultKeys: i, preferences: n } = e;
611
610
  return t === "scatter" || t === "bubble" ? [
612
611
  ...new Set(
@@ -622,7 +621,7 @@ function te(e, t) {
622
621
  var i;
623
622
  return ((i = t == null ? void 0 : t.chartOptions) == null ? void 0 : i.indexAxis) === "y" || er.has(e || "") ? "x" : "y";
624
623
  }
625
- function ao(e, t) {
624
+ function ro(e, t) {
626
625
  return te(e, t) === "x";
627
626
  }
628
627
  function rr(e, t) {
@@ -678,7 +677,7 @@ function Bt(e) {
678
677
  }
679
678
  };
680
679
  }
681
- function oo(e) {
680
+ function ao(e) {
682
681
  return Object.fromEntries(
683
682
  Object.entries(e || {}).map(([t, i]) => [
684
683
  t,
@@ -725,11 +724,11 @@ function sr(e) {
725
724
  if (e.enforceDeclaredSqlTemporalFormat && e.next.type === "date" && !e.next.dateFormat.useRelativeTime && e.next.dateFormat.useCustomFormat) {
726
725
  const i = e.next.dateFormat.customFormat;
727
726
  if (!(i != null && i.trim()))
728
- throw new qi(
727
+ throw new Li(
729
728
  "invalid_raw_temporal_format",
730
729
  "Custom table date formatting requires a non-empty pattern."
731
730
  );
732
- $i({
731
+ qi({
733
732
  dialect: "date_fns",
734
733
  pattern: i,
735
734
  valueKind: e.rawTemporalValueKind
@@ -755,7 +754,7 @@ function sr(e) {
755
754
  type: "date"
756
755
  } : t;
757
756
  }
758
- function so(e) {
757
+ function oo(e) {
759
758
  return e.reset ? lr(e.persisted, e.columnId) : {
760
759
  ...e.persisted,
761
760
  [e.columnId]: sr({
@@ -1035,7 +1034,7 @@ function zt(e) {
1035
1034
  return !0;
1036
1035
  }
1037
1036
  }
1038
- function lo(e) {
1037
+ function so(e) {
1039
1038
  const { card: t, chartType: i, preferences: n, metric: r } = e, a = br({
1040
1039
  card: t,
1041
1040
  preferences: n,
@@ -1054,7 +1053,7 @@ function lo(e) {
1054
1053
  });
1055
1054
  return s.source === "override" ? s : a;
1056
1055
  }
1057
- function co(e) {
1056
+ function lo(e) {
1058
1057
  const { card: t, chartType: i, preferences: n, dataLabelsConfig: r } = e, a = i || (t == null ? void 0 : t.type), o = Ee({
1059
1058
  chartType: a,
1060
1059
  preferences: n
@@ -1118,7 +1117,7 @@ function vr(e) {
1118
1117
  })
1119
1118
  };
1120
1119
  }
1121
- function uo(e) {
1120
+ function co(e) {
1122
1121
  var o, s;
1123
1122
  const t = mr({
1124
1123
  card: e.card,
@@ -1163,7 +1162,7 @@ function uo(e) {
1163
1162
  });
1164
1163
  return a.source === "override" ? a : i;
1165
1164
  }
1166
- function fo(e) {
1165
+ function uo(e) {
1167
1166
  return (e == null ? void 0 : e.rawValue) === !0;
1168
1167
  }
1169
1168
  function Fr(e) {
@@ -1397,7 +1396,7 @@ function xr(e) {
1397
1396
  e.boundCurrency
1398
1397
  ) : void 0;
1399
1398
  }
1400
- if (!((c = e.card.sql) != null && c.trim()) && !Hi(e.card.type) && e.target.kind === "metric") {
1399
+ if (!((c = e.card.sql) != null && c.trim()) && !Ui(e.card.type) && e.target.kind === "metric") {
1401
1400
  const v = e.target.metricId, b = (f = (u = e.card.config) == null ? void 0 : u.metricColumns) == null ? void 0 : f.find(
1402
1401
  (C) => C.id === v
1403
1402
  );
@@ -1434,7 +1433,7 @@ function xr(e) {
1434
1433
  });
1435
1434
  return R(o) ? o : void 0;
1436
1435
  }
1437
- function mo(e) {
1436
+ function fo(e) {
1438
1437
  var i, n, r, a, o, s;
1439
1438
  const t = e.persistedSettings ?? ((a = (r = (n = (i = e.card) == null ? void 0 : i.preferences) == null ? void 0 : n.tablePrefs) == null ? void 0 : r.columnSettingsMap) == null ? void 0 : a[e.columnId]);
1440
1439
  if (!t && !e.resolvedSettings || (t == null ? void 0 : t.inheritMetricFormat) === !0 || ((o = e.resolvedSettings) == null ? void 0 : o.inheritMetricFormat) === !0) {
@@ -1475,7 +1474,7 @@ function Sr(e) {
1475
1474
  )
1476
1475
  };
1477
1476
  }
1478
- function po(e) {
1477
+ function mo(e) {
1479
1478
  var r, a, o, s, l;
1480
1479
  const { value: t, formatOptions: i, preferences: n } = e;
1481
1480
  return i != null && i.type && i.type !== "auto" ? Nt(t, i.type, i) : Wn({
@@ -1496,7 +1495,7 @@ function Mr(e) {
1496
1495
  })
1497
1496
  });
1498
1497
  }
1499
- function ho(e) {
1498
+ function po(e) {
1500
1499
  return Wi({
1501
1500
  activation: Me({
1502
1501
  card: e.card,
@@ -1623,7 +1622,7 @@ function wr(e) {
1623
1622
  const F = Tn(h.dateFormat);
1624
1623
  F && m.set(
1625
1624
  p,
1626
- zi({
1625
+ $i({
1627
1626
  format: F,
1628
1627
  preferences: e.reportContext.valueFormat,
1629
1628
  calendar: e.reportContext.calendar
@@ -1646,14 +1645,14 @@ function wr(e) {
1646
1645
  ), V = u(D), N = (P = (re = (E = t.preferences) == null ? void 0 : E.tablePrefs) == null ? void 0 : re.columnSettingsMap) == null ? void 0 : P[p], O = {
1647
1646
  dashboardId: e.dashboardId,
1648
1647
  cardId: t.id
1649
- }, H = { kind: "column", columnKey: p }, M = F && (!N || N.inheritMetricFormat === !0) ? W(F.format, {
1648
+ }, U = { kind: "column", columnKey: p }, M = F && (!N || N.inheritMetricFormat === !0) ? W(F.format, {
1650
1649
  preserveOmittedProperties: !0
1651
1650
  }) : void 0;
1652
1651
  if ((M == null ? void 0 : M.type) === "date")
1653
1652
  return [
1654
1653
  {
1655
1654
  scope: O,
1656
- target: H,
1655
+ target: U,
1657
1656
  format: {
1658
1657
  type: "date",
1659
1658
  locale: M.locale ?? e.reportContext.valueFormat.locale,
@@ -1702,7 +1701,7 @@ function wr(e) {
1702
1701
  e.reportContext.valueFormat
1703
1702
  );
1704
1703
  return [
1705
- B.type === "duration" ? { scope: O, target: H, format: B } : { scope: O, target: H, format: B }
1704
+ B.type === "duration" ? { scope: O, target: U, format: B } : { scope: O, target: U, format: B }
1706
1705
  ];
1707
1706
  });
1708
1707
  y.push(
@@ -1737,7 +1736,7 @@ function wr(e) {
1737
1736
  format: h
1738
1737
  }))
1739
1738
  );
1740
- const C = ki({
1739
+ const C = zi({
1741
1740
  reportContext: e.reportContext,
1742
1741
  resolvedFormats: y
1743
1742
  });
@@ -1769,7 +1768,7 @@ function Pr(e) {
1769
1768
  formatOptions: r.formatOptions
1770
1769
  };
1771
1770
  }
1772
- function go(e) {
1771
+ function ho(e) {
1773
1772
  const { card: t, result: i } = e;
1774
1773
  if (t.type !== "table" && t.type !== "detailTable")
1775
1774
  return { status: "refused", reason: "not_a_table" };
@@ -1827,7 +1826,7 @@ function Ar(e, t, i) {
1827
1826
  windowTransform: ((s = e.parameters) == null ? void 0 : s.windowTransform) ?? ((l = t.parameters) == null ? void 0 : l.windowTransform)
1828
1827
  };
1829
1828
  }
1830
- function yo(e, t, i) {
1829
+ function go(e, t, i) {
1831
1830
  const n = e;
1832
1831
  return {
1833
1832
  id: e.id,
@@ -1881,7 +1880,7 @@ function _r(e) {
1881
1880
  }
1882
1881
  }
1883
1882
  const Nr = "table";
1884
- function bo({ preferences: e, ...t }) {
1883
+ function yo({ preferences: e, ...t }) {
1885
1884
  return {
1886
1885
  ...t,
1887
1886
  type: Nr,
@@ -1921,7 +1920,7 @@ function Q(e, t) {
1921
1920
  function Re(e) {
1922
1921
  return ((e == null ? void 0 : e.calculatedFields) || []).filter((t) => t.fieldScope === "sheet").map((t) => Q(t, "sheet"));
1923
1922
  }
1924
- function Ut(e) {
1923
+ function Ht(e) {
1925
1924
  return ((e == null ? void 0 : e.calculatedFields) || []).filter((t) => !t.fieldScope).map((t) => Q(t, "sheet"));
1926
1925
  }
1927
1926
  function Vr(e) {
@@ -1938,7 +1937,7 @@ function kr(e) {
1938
1937
  e.map((t) => Q(t, "dashboard"))
1939
1938
  );
1940
1939
  }
1941
- function vo(e) {
1940
+ function bo(e) {
1942
1941
  var n;
1943
1942
  const t = [], i = (e.sheets || []).map((r) => {
1944
1943
  var a;
@@ -1946,7 +1945,7 @@ function vo(e) {
1946
1945
  ...r,
1947
1946
  calculatedFields: j(
1948
1947
  Re(r),
1949
- Ut(r)
1948
+ Ht(r)
1950
1949
  ),
1951
1950
  frames: (a = r.frames) == null ? void 0 : a.map(
1952
1951
  (o) => o.calculatedFields === void 0 ? o : { ...o, calculatedFields: void 0 }
@@ -1978,13 +1977,13 @@ function at(e, t) {
1978
1977
  ...n.map((a) => a.calculatedFields)
1979
1978
  );
1980
1979
  }
1981
- function Fo(e, t) {
1980
+ function vo(e, t) {
1982
1981
  return e ? Re(e) : [];
1983
1982
  }
1984
- function Co(e, t) {
1983
+ function Fo(e, t) {
1985
1984
  if (!e)
1986
1985
  return [];
1987
- const i = Re(e), n = Ut(e), r = j(
1986
+ const i = Re(e), n = Ht(e), r = j(
1988
1987
  i,
1989
1988
  n
1990
1989
  );
@@ -1999,7 +1998,7 @@ function Br(e) {
1999
1998
  e.map((t) => Q(t, "sheet"))
2000
1999
  );
2001
2000
  }
2002
- function Io(e) {
2001
+ function Co(e) {
2003
2002
  const { field: t, sheetFields: i = [], dashboardFields: n = [] } = e, r = (s) => s.find(
2004
2003
  (l) => Xi(l, t, {
2005
2004
  allowComparableFallback: !0
@@ -2023,7 +2022,7 @@ function Kr(e, t) {
2023
2022
  const { frame: r } = t, a = n.frames.findIndex((p) => p.id === r.id);
2024
2023
  if (a === -1)
2025
2024
  throw new A("frame_not_found", `No frame ${r.id} on sheet ${t.sheetId}.`);
2026
- const o = n.frames[a], s = He(n), l = (p) => p.calculatedFields === void 0 ? p : { ...p, calculatedFields: void 0 }, c = t.rewrittenFrames, u = c && c.length > 0 ? (() => {
2025
+ const o = n.frames[a], s = Ue(n), l = (p) => p.calculatedFields === void 0 ? p : { ...p, calculatedFields: void 0 }, c = t.rewrittenFrames, u = c && c.length > 0 ? (() => {
2027
2026
  const p = c.map((h) => h.id === r.id ? r : h);
2028
2027
  return p.some((h) => h.id === r.id) ? p : [r, ...p];
2029
2028
  })() : [r], f = new Map(u.map((p) => [p.id, p])), d = Ft(n, { kind: "frame_updated", frame: r, resizeForNewKind: t.resizeLayouts });
@@ -2034,7 +2033,7 @@ function Kr(e, t) {
2034
2033
  const T = f.get(D.id);
2035
2034
  return T ? Ge(l(T)) : D.calculatedFields === void 0 ? D : { ...D, calculatedFields: void 0 };
2036
2035
  });
2037
- const F = He(h);
2036
+ const F = Ue(h);
2038
2037
  g = new Set([...s].filter((D) => !F.has(D))), en(p, g), t.dashboardCalculatedFields && (p.calculatedFields = t.dashboardCalculatedFields);
2039
2038
  }), b = v.sheets[i].frames.find((p) => p.id === r.id), m = [
2040
2039
  ...g.size ? [{ kind: "cards_removed", cardIds: [...g] }] : [],
@@ -2048,7 +2047,7 @@ function Lr(e, t, i) {
2048
2047
  const n = t.defaultDateFilter;
2049
2048
  return (t.dateSelectionMode === "day" ? rn(n) : t.dateSelectionMode === "months" && (an(n) || on(n) && n.unit === "month" && (n.mode === "previous" || n.mode === "this" && !n.toDate && !n.boundary))) && ((a = G(t, i)) == null ? void 0 : a.valueType) === "date" ? !0 : void 0;
2050
2049
  }
2051
- function xo(e) {
2050
+ function Io(e) {
2052
2051
  const t = e.createId ?? St, i = t(), n = Di({
2053
2052
  field: e.field,
2054
2053
  dataSource: e.dataSource,
@@ -2129,13 +2128,13 @@ function $r(e, t, i, n = { calendar: null }) {
2129
2128
  ...g,
2130
2129
  ...r.inputs.filter((x) => x.input.id !== s.id).map((x) => x.input)
2131
2130
  ]) : s.variableName, b = f && (l.title || l.column) !== (c.title || c.column), m = i.label ?? (b ? c.title || c.column || c.id : void 0), y = f && l.hide !== c.hide, C = f && l.toolbarWidth !== c.toolbarWidth, S = (x) => {
2132
- var je, Ue;
2131
+ var je, He;
2133
2132
  const I = { ...x };
2134
2133
  if (m !== void 0 && (I.label = m), i.variableName !== void 0 && (I.variableName = v), i.scope && (I.scope = i.scope), y || C) {
2135
2134
  const he = xt(c);
2136
2135
  I.presentation = { ...x.presentation }, y && (I.presentation.placement = he.placement), C && (he.widthPx === void 0 ? delete I.presentation.widthPx : I.presentation.widthPx = he.widthPx);
2137
2136
  }
2138
- return (i.forceSelection !== void 0 || f) && (d ? I.forceSelection = d : delete I.forceSelection), i.requiredAtExecution !== void 0 && (i.requiredAtExecution ? I.requiredAtExecution = !0 : delete I.requiredAtExecution), ve(I, "optionSource", i.optionSource), ve(I, "optionDependencies", i.optionDependencies), ve(I, "optionPopulation", i.optionPopulation), ((je = i.mapping) == null ? void 0 : je.kind) === "save" && i.mapping.draft.acceptance.ok ? I.application = i.mapping.draft.acceptance.application : ((Ue = i.mapping) == null ? void 0 : Ue.kind) === "remove" && delete I.application, I;
2137
+ return (i.forceSelection !== void 0 || f) && (d ? I.forceSelection = d : delete I.forceSelection), i.requiredAtExecution !== void 0 && (i.requiredAtExecution ? I.requiredAtExecution = !0 : delete I.requiredAtExecution), ve(I, "optionSource", i.optionSource), ve(I, "optionDependencies", i.optionDependencies), ve(I, "optionPopulation", i.optionPopulation), ((je = i.mapping) == null ? void 0 : je.kind) === "save" && i.mapping.draft.acceptance.ok ? I.application = i.mapping.draft.acceptance.application : ((He = i.mapping) == null ? void 0 : He.kind) === "remove" && delete I.application, I;
2139
2138
  }, w = i.label !== void 0 && i.label !== s.label && i.label !== c.title ? i.label : void 0, p = f || i.variableName !== void 0 || w !== void 0, h = (x) => ({
2140
2139
  ...x,
2141
2140
  ...i.variableName !== void 0 ? { variableName: v } : {},
@@ -2160,10 +2159,10 @@ function $r(e, t, i, n = { calendar: null }) {
2160
2159
  N.issues[0]
2161
2160
  );
2162
2161
  let O = { ...e, inputs: F };
2163
- const H = $(O), M = H.findFilterInput({ filterId: c.id });
2162
+ const U = $(O), M = U.findFilterInput({ filterId: c.id });
2164
2163
  if (!M)
2165
2164
  return o(
2166
- ((Ke = H.issues[0]) == null ? void 0 : Ke.message) ?? "These settings could not be saved."
2165
+ ((Ke = U.issues[0]) == null ? void 0 : Ke.message) ?? "These settings could not be saved."
2167
2166
  );
2168
2167
  const k = i.variableName !== void 0 || i.scope !== void 0 ? jr(O, M.input) : void 0;
2169
2168
  if (k)
@@ -2193,7 +2192,7 @@ function $r(e, t, i, n = { calendar: null }) {
2193
2192
  n.calendar ?? void 0
2194
2193
  );
2195
2194
  if (P.defaultValueChanged || P.selectionIdentityChanged || P.defaultComparisonChanged) {
2196
- const x = Ht({
2195
+ const x = Ut({
2197
2196
  state: { ...E, dashboardInputValues: {} },
2198
2197
  input: q,
2199
2198
  settings: P
@@ -2214,7 +2213,7 @@ function $r(e, t, i, n = { calendar: null }) {
2214
2213
  });
2215
2214
  }
2216
2215
  if (i.scope && M.input.runtimeScope !== "shared") {
2217
- const x = Ur(
2216
+ const x = Hr(
2218
2217
  O,
2219
2218
  s,
2220
2219
  M.input,
@@ -2231,14 +2230,14 @@ function $r(e, t, i, n = { calendar: null }) {
2231
2230
  }))
2232
2231
  );
2233
2232
  }
2234
- return O = Hr(O, E), {
2233
+ return O = Ur(O, E), {
2235
2234
  ok: !0,
2236
2235
  dashboard: O,
2237
2236
  inputId: M.input.id,
2238
2237
  valueEffects: B
2239
2238
  };
2240
2239
  }
2241
- function So(e) {
2240
+ function xo(e) {
2242
2241
  let t = We({
2243
2242
  dashboard: e.before,
2244
2243
  runtimeValues: e.dashboardInputValues,
@@ -2255,7 +2254,7 @@ function So(e) {
2255
2254
  case "setDefaultComparison": {
2256
2255
  const a = n(r.inputId);
2257
2256
  if (!a) break;
2258
- t = Ht({
2257
+ t = Ut({
2259
2258
  state: { dashboardInputValues: t },
2260
2259
  input: a,
2261
2260
  settings: {
@@ -2309,7 +2308,7 @@ function jr(e, t) {
2309
2308
  )
2310
2309
  ) ? t.variableName : void 0;
2311
2310
  }
2312
- function Ur(e, t, i, n) {
2311
+ function Hr(e, t, i, n) {
2313
2312
  var u, f;
2314
2313
  const r = [], a = Mt(e), o = (d) => ot(t, d, a), s = (d) => ot(i, d, a), l = [];
2315
2314
  if (i.runtimeScope === "perSheet")
@@ -2348,7 +2347,7 @@ function ot(e, t, i) {
2348
2347
  }
2349
2348
  return ln(e, t);
2350
2349
  }
2351
- function Hr(e, t) {
2350
+ function Ur(e, t) {
2352
2351
  const i = { ...e };
2353
2352
  return t.defaultInputValues && Object.keys(t.defaultInputValues).length ? i.defaultInputValues = t.defaultInputValues : e.defaultInputValues !== void 0 && delete i.defaultInputValues, i;
2354
2353
  }
@@ -2361,7 +2360,7 @@ function Gr(e, t, i, n, r) {
2361
2360
  defaultFilterValue: a ? G(t, r) : void 0
2362
2361
  };
2363
2362
  }
2364
- function Ht(e) {
2363
+ function Ut(e) {
2365
2364
  const { settings: t } = e;
2366
2365
  if (!t) return e.state;
2367
2366
  const i = e.input;
@@ -2428,9 +2427,9 @@ function Ht(e) {
2428
2427
  defaultInputValues: r
2429
2428
  };
2430
2429
  }
2431
- const U = (e) => Array.isArray(e.inputs) ? e.inputs : [];
2430
+ const H = (e) => Array.isArray(e.inputs) ? e.inputs : [];
2432
2431
  function pe(e, t) {
2433
- const i = U(e).find((n) => n.id === t);
2432
+ const i = H(e).find((n) => n.id === t);
2434
2433
  if (!i || i.kind !== "filter")
2435
2434
  throw new A("filter_not_found", `No filter ${t} on this dashboard.`, "Read the outline again and use its filter ids.");
2436
2435
  return i;
@@ -2473,7 +2472,7 @@ function ne(e) {
2473
2472
  return De.plain("filter", e);
2474
2473
  }
2475
2474
  function Yr(e, t) {
2476
- const { input: i } = t, n = U(e);
2475
+ const { input: i } = t, n = H(e);
2477
2476
  if (n.some((l) => l.id === i.id))
2478
2477
  throw new A("filter_id_taken", `A filter with id ${i.id} is already on this dashboard.`);
2479
2478
  if ($(e).findFilterInput({ filterId: i.filter.id }))
@@ -2509,7 +2508,7 @@ function Jr(e, t, i) {
2509
2508
  { issues: n.issues }
2510
2509
  );
2511
2510
  }
2512
- const r = U(e).find((o) => o.id === n.inputId), a = U(n.dashboard).find((o) => o.id === n.inputId);
2511
+ const r = H(e).find((o) => o.id === n.inputId), a = H(n.dashboard).find((o) => o.id === n.inputId);
2513
2512
  return {
2514
2513
  dashboard: n.dashboard,
2515
2514
  runtimeEffects: [{ kind: "filter_value", effects: n.valueEffects }],
@@ -2533,7 +2532,7 @@ function Zr(e, t) {
2533
2532
  return {
2534
2533
  dashboard: {
2535
2534
  ...e,
2536
- inputs: U(e).filter((r) => r.id !== t),
2535
+ inputs: H(e).filter((r) => r.id !== t),
2537
2536
  defaultInputValues: un(e.defaultInputValues, t)
2538
2537
  },
2539
2538
  runtimeEffects: [{ kind: "input_removed", inputId: t }],
@@ -2556,7 +2555,7 @@ function ea(e, t, i) {
2556
2555
  throw new A("filter_invalid", ((o = a.issues[0]) == null ? void 0 : o.message) ?? "This filter could not be saved.", "Change it in the editor.");
2557
2556
  return {
2558
2557
  ...e,
2559
- inputs: U(e).map((s) => s.id === t.id ? r : s)
2558
+ inputs: H(e).map((s) => s.id === t.id ? r : s)
2560
2559
  };
2561
2560
  }
2562
2561
  function Jt(e, t, i, n, r) {
@@ -2579,7 +2578,7 @@ function Jt(e, t, i, n, r) {
2579
2578
  );
2580
2579
  return {
2581
2580
  ...e,
2582
- inputs: U(e).map((d) => d.id === t ? l : d)
2581
+ inputs: H(e).map((d) => d.id === t ? l : d)
2583
2582
  };
2584
2583
  }
2585
2584
  function ta(e) {
@@ -2611,7 +2610,7 @@ function na(e, t) {
2611
2610
  clauses: [ne(`stops ${z(i.label)} from filtering ${z(Gt(e, t.cardId))}`)]
2612
2611
  };
2613
2612
  }
2614
- function Mo(e, t, i) {
2613
+ function So(e, t, i) {
2615
2614
  let n = e;
2616
2615
  const r = [], a = [], o = [];
2617
2616
  for (const [s, l] of t.entries()) {
@@ -2738,7 +2737,7 @@ function sa(e, t) {
2738
2737
  })
2739
2738
  };
2740
2739
  }
2741
- function Do(e, t = /* @__PURE__ */ new Map()) {
2740
+ function Mo(e, t = /* @__PURE__ */ new Map()) {
2742
2741
  const i = /* @__PURE__ */ new Map();
2743
2742
  for (const { card: n } of e) {
2744
2743
  const r = wt(n), a = r.kind === "config" ? r.executableSources : r.kind === "sql" ? r.pinnedCatalogSources.map((o) => o.source) : [];
@@ -2796,7 +2795,7 @@ function Zt(e, t) {
2796
2795
  function ei(e) {
2797
2796
  return e.kind === "semantic" && (e.label || e.datasetName || "").trim() || void 0;
2798
2797
  }
2799
- function To(e, t) {
2798
+ function Do(e, t) {
2800
2799
  var n, r;
2801
2800
  const i = /* @__PURE__ */ new Map();
2802
2801
  for (const [a, o] of e) {
@@ -2820,7 +2819,7 @@ function To(e, t) {
2820
2819
  }
2821
2820
  return i;
2822
2821
  }
2823
- function wo(...e) {
2822
+ function To(...e) {
2824
2823
  const t = /* @__PURE__ */ new Map();
2825
2824
  for (const i of e)
2826
2825
  for (const [n, r] of i ?? [])
@@ -2857,7 +2856,7 @@ function da(e, t) {
2857
2856
  const i = e ? ti(e, t) : void 0;
2858
2857
  return i != null && i.sourceLabel && !i.sourceLabelConflict ? i.sourceLabel : Ve(t);
2859
2858
  }
2860
- function Po(e, t) {
2859
+ function wo(e, t) {
2861
2860
  const i = ua(e, t);
2862
2861
  return {
2863
2862
  name: t.name,
@@ -2881,7 +2880,7 @@ function fa(e, t) {
2881
2880
  }
2882
2881
  };
2883
2882
  }
2884
- function Oo(e) {
2883
+ function Po(e) {
2885
2884
  const t = {};
2886
2885
  for (const { card: i } of e.cards) {
2887
2886
  const n = wt(i), r = n.kind === "config" ? n.executableSources : n.kind === "sql" ? n.pinnedCatalogSources.map((s) => s.source) : [];
@@ -2905,7 +2904,7 @@ function Oo(e) {
2905
2904
  }
2906
2905
  return t;
2907
2906
  }
2908
- function Ao(e) {
2907
+ function Oo(e) {
2909
2908
  const { dashboard: t, target: i, calendar: n } = e, r = ni(i), a = ii(t, i, n);
2910
2909
  return {
2911
2910
  value: a,
@@ -2942,12 +2941,12 @@ function ii(e, t, i) {
2942
2941
  function ni(e) {
2943
2942
  return e.kind === "dashboardInput" ? e.input.filter : e.filter;
2944
2943
  }
2945
- function _o(e) {
2944
+ function Ao(e) {
2946
2945
  var a;
2947
2946
  const { dashboard: t, filter: i, input: n, scope: r } = e;
2948
2947
  return n && (t.inputs || []).some((o) => o.id === n.id) ? { kind: "dashboardInput", input: n, scope: r } : ((a = $(t).findFilterInput({ filterId: i.id })) == null ? void 0 : a.origin) === "toolbarFilter" ? { kind: "dashboardFilter", filter: i } : { kind: "definition", filter: i };
2949
2948
  }
2950
- function No(e) {
2949
+ function _o(e) {
2951
2950
  const { dashboard: t, target: i, calendar: n } = e, r = ni(i), a = bn(r), o = ma(t, i);
2952
2951
  if (!o) return a;
2953
2952
  if (o === "cleared")
@@ -3083,7 +3082,7 @@ function ba(e, t) {
3083
3082
  function Z(e) {
3084
3083
  return String(e ?? "").toLowerCase().replace(/[\s_\-.]+/g, "");
3085
3084
  }
3086
- function Eo(e, t) {
3085
+ function No(e, t) {
3087
3086
  const i = Z(t);
3088
3087
  return i ? [
3089
3088
  ke(e),
@@ -3104,7 +3103,7 @@ function ut(e, t) {
3104
3103
  const n = Z(ke(e));
3105
3104
  return n.startsWith(i) ? 0 : n.includes(i) ? 1 : [e.label, e.name].filter(Boolean).map(Z).some((a) => a.includes(i)) ? 2 : 3;
3106
3105
  }
3107
- function Ro(e, t, i) {
3106
+ function Eo(e, t, i) {
3108
3107
  return ut(e, i) - ut(t, i) || ba(e, t);
3109
3108
  }
3110
3109
  function va(e, t) {
@@ -3184,7 +3183,7 @@ function Ca(e) {
3184
3183
  })
3185
3184
  );
3186
3185
  }
3187
- function Vo(e) {
3186
+ function Ro(e) {
3188
3187
  const t = e.map((n) => va(n.target, n.columns || [])).filter((n) => {
3189
3188
  var r;
3190
3189
  return ((r = n == null ? void 0 : n.columns) == null ? void 0 : r.length) > 0;
@@ -3206,7 +3205,7 @@ function Vo(e) {
3206
3205
  }
3207
3206
  return { columnGroups: t, columns: Ca(t) };
3208
3207
  }
3209
- function ko(e, t) {
3208
+ function Vo(e, t) {
3210
3209
  const i = e.answers.relationshipIds;
3211
3210
  return !i || !t ? !i && !t : i.length === t.length && i.every((n, r) => t[r] === n);
3212
3211
  }
@@ -3253,7 +3252,7 @@ function Sa(e) {
3253
3252
  if (!(!t || !L(i) || i.kind !== "relationship" || !L(i.field) || typeof i.field.name != "string" || !L(i.field.source) || i.field.source.kind !== "semantic" || !ai(i.relationshipIds)))
3254
3253
  return { route: t, target: i };
3255
3254
  }
3256
- function Bo(e) {
3255
+ function ko(e) {
3257
3256
  if (!L(e) || !Array.isArray(e.previews)) return { previews: [] };
3258
3257
  const t = [];
3259
3258
  for (const n of e.previews) {
@@ -3273,15 +3272,15 @@ const se = (e) => (e == null ? void 0 : e.label) || (e == null ? void 0 : e.name
3273
3272
  function Ma(e) {
3274
3273
  return !e || /s$/i.test(e) ? e : /[^aeiou]y$/i.test(e) ? `${e.slice(0, -1)}ies` : `${e}s`;
3275
3274
  }
3276
- function Ko(e) {
3275
+ function Bo(e) {
3277
3276
  if (e.direction === "to_many") {
3278
3277
  const i = se(e.matchingDataset ?? e.datasets[e.datasets.length - 1]);
3279
3278
  return `${e.base ? Ma(se(e.base)) : "Rows"} with at least one matching ${i}`;
3280
3279
  }
3281
3280
  return `through ${(e.datasets.length > 1 ? e.datasets.slice(0, -1) : e.datasets).map(se).join(", ")}`;
3282
3281
  }
3283
- const Lo = "The relationship this card used changed; choose it again";
3284
- function qo(e, t) {
3282
+ const Ko = "The relationship this card used changed; choose it again";
3283
+ function Lo(e, t) {
3285
3284
  switch (e) {
3286
3285
  case "relationship_missing":
3287
3286
  return t ? `Not related to ${se(t)}` : "Not related to this card";
@@ -3304,109 +3303,109 @@ export {
3304
3303
  xr as B,
3305
3304
  yr as C,
3306
3305
  Ha as D,
3307
- Io as E,
3308
- Fo as F,
3306
+ Co as E,
3307
+ vo as F,
3309
3308
  j as G,
3310
3309
  ce as H,
3311
- Ya as I,
3310
+ Qa as I,
3312
3311
  kr as J,
3313
3312
  Br as K,
3314
- vo as L,
3315
- So as M,
3313
+ bo as L,
3314
+ xo as M,
3316
3315
  Nr as N,
3317
3316
  Bn as O,
3318
3317
  Vn as P,
3319
3318
  kn as Q,
3320
- Lo as R,
3321
- ho as S,
3322
- ao as T,
3319
+ Ko as R,
3320
+ po as S,
3321
+ ro as T,
3323
3322
  rr as U,
3324
3323
  _e as V,
3325
- to as W,
3326
- co as X,
3327
- fo as Y,
3328
- uo as Z,
3324
+ eo as W,
3325
+ lo as X,
3326
+ uo as Y,
3327
+ co as Z,
3329
3328
  Nt as _,
3330
- Mo as a,
3329
+ So as a,
3331
3330
  Sr as a0,
3332
3331
  te as a1,
3333
- lo as a2,
3334
- mo as a3,
3332
+ so as a2,
3333
+ fo as a3,
3335
3334
  Wn as a4,
3336
3335
  nr as a5,
3337
3336
  br as a6,
3338
3337
  vr as a7,
3339
- po as a8,
3338
+ mo as a8,
3340
3339
  Ie as a9,
3341
3340
  da as aA,
3342
3341
  ee as aB,
3343
3342
  Ve as aC,
3344
- Do as aD,
3345
- Oo as aE,
3346
- To as aF,
3343
+ Mo as aD,
3344
+ Po as aE,
3345
+ Do as aF,
3347
3346
  sa as aG,
3348
3347
  ya as aH,
3349
- No as aI,
3350
- _o as aJ,
3351
- wo as aK,
3348
+ _o as aI,
3349
+ Ao as aJ,
3350
+ To as aK,
3352
3351
  ua as aL,
3353
- Co as aM,
3352
+ Fo as aM,
3354
3353
  Rr as aN,
3355
3354
  fr as aO,
3356
- Ro as aP,
3355
+ Eo as aP,
3357
3356
  ut as aQ,
3358
3357
  ga as aR,
3359
3358
  Z as aS,
3360
- Ja as aT,
3359
+ Ya as aT,
3361
3360
  pr as aa,
3362
- ro as ab,
3363
- io as ac,
3364
- no as ad,
3361
+ no as ab,
3362
+ to as ac,
3363
+ io as ad,
3365
3364
  Xn as ae,
3366
3365
  Jn as af,
3367
- oo as ag,
3366
+ ao as ag,
3368
3367
  jt as ah,
3369
3368
  $n as ai,
3370
- Xa as aj,
3369
+ Ja as aj,
3371
3370
  Mr as ak,
3372
3371
  Rn as al,
3373
- Wa as am,
3372
+ Ga as am,
3374
3373
  Ln as an,
3375
3374
  Oe as ao,
3376
- Za as ap,
3377
- eo as aq,
3375
+ Xa as ap,
3376
+ Za as aq,
3378
3377
  ue as ar,
3379
3378
  ie as as,
3380
- Qa as at,
3381
- so as au,
3379
+ Wa as at,
3380
+ oo as au,
3382
3381
  lr as av,
3383
3382
  Lr as aw,
3384
- Eo as ax,
3383
+ No as ax,
3385
3384
  ri as ay,
3386
- Po as az,
3387
- xo as b,
3388
- bo as c,
3385
+ wo as az,
3386
+ Io as b,
3387
+ yo as c,
3389
3388
  fa as d,
3390
3389
  qr as e,
3391
3390
  $r as f,
3392
- Ga as g,
3391
+ Ua as g,
3393
3392
  Nn as h,
3394
3393
  Dr as i,
3395
3394
  wr as j,
3396
3395
  Pr as k,
3397
- go as l,
3396
+ ho as l,
3398
3397
  Or as m,
3399
3398
  Ar as n,
3400
- yo as o,
3399
+ go as o,
3401
3400
  _r as p,
3402
3401
  va as q,
3403
- Ao as r,
3402
+ Oo as r,
3404
3403
  Fa as s,
3405
3404
  Ca as t,
3406
- Vo as u,
3407
- ko as v,
3408
- Bo as w,
3405
+ Ro as u,
3406
+ Vo as v,
3407
+ ko as w,
3409
3408
  Ma as x,
3410
- Ko as y,
3411
- qo as z
3409
+ Bo as y,
3410
+ Lo as z
3412
3411
  };