react-semaphor 0.1.453 → 0.1.454

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 (115) hide show
  1. package/dist/analytics-protocol/index.cjs +1 -1
  2. package/dist/analytics-protocol/index.js +100 -99
  3. package/dist/brand-studio/index.cjs +1 -1
  4. package/dist/brand-studio/index.js +4 -4
  5. package/dist/briefings/index.cjs +1 -1
  6. package/dist/briefings/index.js +4 -4
  7. package/dist/chunks/{analyze-result-contract-GHKFwThg.js → analyze-result-contract-BbRJ-C06.js} +1 -1
  8. package/dist/chunks/{analyze-result-contract-Dxw66nUG.cjs → analyze-result-contract-LPDNldic.cjs} +1 -1
  9. package/dist/chunks/canonical-result-keys-BA0HCP4e.cjs +1 -0
  10. package/dist/chunks/{canonical-result-keys-KLk__J_O.js → canonical-result-keys-D6avdjpA.js} +14 -13
  11. package/dist/chunks/{common-types-Ci66eflG.cjs → common-types-C57kJ59w.cjs} +1 -1
  12. package/dist/chunks/{common-types-F6qk6PPS.js → common-types-H51FLKB7.js} +1 -1
  13. package/dist/chunks/{dashboard-briefing-launcher-mUXWuiOZ.cjs → dashboard-briefing-launcher-Dwj1i7lr.cjs} +1 -1
  14. package/dist/chunks/{dashboard-briefing-launcher-CFpX0WX3.js → dashboard-briefing-launcher-SYroFdae.js} +10 -10
  15. package/dist/chunks/{dashboard-controls-BeYAmOJc.js → dashboard-controls-1LpeU2sz.js} +10 -10
  16. package/dist/chunks/{dashboard-controls-SoNubIu1.cjs → dashboard-controls-CpFoh7-A.cjs} +1 -1
  17. package/dist/chunks/dashboard-date-comparison-definition-Ces4alFm.cjs +1 -0
  18. package/dist/chunks/{dashboard-date-comparison-definition-Ba-clViK.js → dashboard-date-comparison-definition-DC3ekV2S.js} +1 -1
  19. package/dist/chunks/{dashboard-json-DeLUagVV.js → dashboard-json-D-T-sQxU.js} +8 -8
  20. package/dist/chunks/{dashboard-json-BublPnQ4.cjs → dashboard-json-DwSQopc_.cjs} +1 -1
  21. package/dist/chunks/{edit-dashboard-visual-CrvPcO7A.cjs → edit-dashboard-visual-BEmoQAET.cjs} +1 -1
  22. package/dist/chunks/{edit-dashboard-visual-Go0h82DR.js → edit-dashboard-visual-DqxUq4Bs.js} +12 -12
  23. package/dist/chunks/{editor-action-buttons-1Lo0fIh7.cjs → editor-action-buttons-18r2xwei.cjs} +1 -1
  24. package/dist/chunks/{editor-action-buttons-BFNtjFzO.js → editor-action-buttons-B2l3WIRC.js} +6 -6
  25. package/dist/chunks/index-Bn5wlkHt.cjs +4 -0
  26. package/dist/chunks/{index-q12_nNUS.cjs → index-CLB_NGZ8.cjs} +231 -231
  27. package/dist/chunks/{index-B3ZugihZ.js → index-Ca784dpx.js} +93 -92
  28. package/dist/chunks/{index-BsH32bn1.js → index-DAoS4BNU.js} +36188 -35785
  29. package/dist/chunks/matrix-result-contract-CofATICL.js +437 -0
  30. package/dist/chunks/matrix-result-contract-zamd9euI.cjs +1 -0
  31. package/dist/chunks/{pivot-header-presentation-DcfPaCiy.cjs → pivot-header-presentation-DhyQXxKq.cjs} +1 -1
  32. package/dist/chunks/{pivot-header-presentation-nk604qc1.js → pivot-header-presentation-ckYOQ4aZ.js} +2 -2
  33. package/dist/chunks/{pivot-result-identity-CRUokNgm.cjs → pivot-result-identity-Bb4EixVN.cjs} +1 -1
  34. package/dist/chunks/{pivot-result-identity-C43Ai5Kr.js → pivot-result-identity-DU1v-5Xk.js} +1 -1
  35. package/dist/chunks/pivot-result-lifecycle-DmcF1ris.cjs +1 -0
  36. package/dist/chunks/{pivot-result-lifecycle-4kSe0Hk1.js → pivot-result-lifecycle-sjzIOpvp.js} +57 -58
  37. package/dist/chunks/{raw-temporal-contract-CxbRFwnd.cjs → raw-temporal-contract-BtjH_G-d.cjs} +1 -1
  38. package/dist/chunks/{raw-temporal-contract-BF7PjBY9.js → raw-temporal-contract-CxncLze5.js} +1 -1
  39. package/dist/chunks/{report-preferences-dialog-BEVZAE3m.cjs → report-preferences-dialog-BgSvlDXa.cjs} +1 -1
  40. package/dist/chunks/{report-preferences-dialog-BNV7qXYH.js → report-preferences-dialog-DDc2WUa0.js} +6 -6
  41. package/dist/chunks/{report-runtime-context-DjYqLV-c.cjs → report-runtime-context-DqxS4wbi.cjs} +1 -1
  42. package/dist/chunks/{report-runtime-context-BJQDu2fV.js → report-runtime-context-SM6YO61_.js} +5 -5
  43. package/dist/chunks/saved-temporal-bucket-format-CFfWXRl9.cjs +1 -0
  44. package/dist/chunks/{saved-temporal-bucket-format-DiZdQXOL.js → saved-temporal-bucket-format-SGAV0ivR.js} +33 -35
  45. package/dist/chunks/{switch-DgLwr7O-.js → switch-BeZW-HnS.js} +367 -369
  46. package/dist/chunks/{switch-CjJ6FHYJ.cjs → switch-D-CCcfhc.cjs} +28 -28
  47. package/dist/chunks/temporal-bucket-5UYEotyQ.js +810 -0
  48. package/dist/chunks/temporal-bucket-DHY1y9lq.cjs +1 -0
  49. package/dist/chunks/{temporal-bucket-authoring-FIRnJz0e.js → temporal-bucket-authoring-K1kE6R_z.js} +28 -27
  50. package/dist/chunks/temporal-bucket-authoring-o3Emn05L.cjs +1 -0
  51. package/dist/chunks/{temporal-bucket-contract-anl4h-vg.cjs → temporal-bucket-contract-D2-93DGr.cjs} +1 -1
  52. package/dist/chunks/{temporal-bucket-contract-BQOj6Frl.js → temporal-bucket-contract-D5d-xEl3.js} +1 -1
  53. package/dist/chunks/{token-types-D0i0IUX3.cjs → token-types-D7CaaI80.cjs} +1 -1
  54. package/dist/chunks/{token-types-CRpQJ4kv.js → token-types-GbxRUozo.js} +1 -1
  55. package/dist/chunks/{update-policy-C1i9bgsy.cjs → update-policy-BmiOd0PB.cjs} +1 -1
  56. package/dist/chunks/{update-policy-CaJz9aPG.js → update-policy-hednMF-0.js} +1 -1
  57. package/dist/chunks/validators-BDYprKI9.cjs +1 -0
  58. package/dist/chunks/{validators-DeMXwRON.js → validators-DEmd8Sin.js} +1544 -1200
  59. package/dist/dashboard/index.cjs +1 -1
  60. package/dist/dashboard/index.js +2 -2
  61. package/dist/dashboard-authoring/index.cjs +3 -3
  62. package/dist/dashboard-authoring/index.js +7 -7
  63. package/dist/data-app-builder/index.cjs +1 -1
  64. package/dist/data-app-builder/index.js +2 -2
  65. package/dist/data-app-codegen/index.cjs +1 -1
  66. package/dist/data-app-codegen/index.js +2 -2
  67. package/dist/data-app-codegen-node/index.cjs +1 -1
  68. package/dist/data-app-codegen-node/index.js +3 -3
  69. package/dist/data-app-sdk/index.cjs +1 -1
  70. package/dist/data-app-sdk/index.js +78 -77
  71. package/dist/data-app-sdk-adapters/index.cjs +1 -1
  72. package/dist/data-app-sdk-adapters/index.js +29 -30
  73. package/dist/data-app-sdk-validation/index.cjs +1 -1
  74. package/dist/data-app-sdk-validation/index.js +21 -21
  75. package/dist/format-utils/index.cjs +3 -3
  76. package/dist/format-utils/index.js +39 -40
  77. package/dist/index.cjs +1 -1
  78. package/dist/index.js +15 -15
  79. package/dist/report-runtime-context/index.cjs +1 -1
  80. package/dist/report-runtime-context/index.js +2 -2
  81. package/dist/surfboard/index.cjs +1 -1
  82. package/dist/surfboard/index.js +3 -3
  83. package/dist/types/analytics-protocol.d.ts +44 -11
  84. package/dist/types/briefings.d.ts +9 -12
  85. package/dist/types/dashboard-assistant.d.ts +19 -17
  86. package/dist/types/dashboard-authoring.d.ts +9 -12
  87. package/dist/types/dashboard.d.ts +9 -12
  88. package/dist/types/data-app-builder.d.ts +28 -2
  89. package/dist/types/data-app-codegen-node.d.ts +29 -3
  90. package/dist/types/data-app-codegen.d.ts +29 -3
  91. package/dist/types/data-app-sdk-adapters.d.ts +28 -2
  92. package/dist/types/data-app-sdk-validation.d.ts +38 -7
  93. package/dist/types/data-app-sdk.d.ts +42 -10
  94. package/dist/types/index.cjs +1 -1
  95. package/dist/types/index.js +4 -4
  96. package/dist/types/main.d.ts +25 -21
  97. package/dist/types/shared.d.ts +9 -12
  98. package/dist/types/surfboard.d.ts +9 -12
  99. package/dist/types/types.d.ts +19 -17
  100. package/package.json +1 -1
  101. package/dist/chunks/canonical-result-keys-Drc2x-lf.cjs +0 -1
  102. package/dist/chunks/catalog-field-grounding-Bnx-3tE0.cjs +0 -1
  103. package/dist/chunks/catalog-field-grounding-S2jKwKGD.js +0 -100
  104. package/dist/chunks/dashboard-date-comparison-definition-DZq0htjG.cjs +0 -1
  105. package/dist/chunks/dashboard-input-contract-DSt8dGzP.js +0 -18
  106. package/dist/chunks/dashboard-input-contract-DV3cshjz.cjs +0 -1
  107. package/dist/chunks/index-DjiIh_9n.cjs +0 -4
  108. package/dist/chunks/metric-comparison-D0T0MKRK.js +0 -387
  109. package/dist/chunks/metric-comparison-DYR3RXam.cjs +0 -1
  110. package/dist/chunks/pivot-result-lifecycle-BiJepH5S.cjs +0 -1
  111. package/dist/chunks/saved-temporal-bucket-format-Gfbh4IiP.cjs +0 -1
  112. package/dist/chunks/temporal-bucket-Dnj8qT9l.cjs +0 -1
  113. package/dist/chunks/temporal-bucket-FBZGrDCe.js +0 -560
  114. package/dist/chunks/temporal-bucket-authoring-7hv2laOG.cjs +0 -1
  115. package/dist/chunks/validators-Dm7Kpz6p.cjs +0 -1
@@ -1,23 +1,23 @@
1
1
  import { jsx as e, jsxs as o, Fragment as T } from "react/jsx-runtime";
2
- import { u as S, B as R, aw as mt, z as sr, O as na, Z as sa, c as be, ax as oa, ay as ia, az as ot, aA as xe, aB as pt, aC as or, L as Ge, aD as ir, aE as da, D as $t, Q as Bt, V as Gt, W as zt, Y as Ht, X as la, i as ca, aF as ua } from "./switch-DgLwr7O-.js";
3
- import { by as ma, bz as pa, az as q, aH as dr, bA as ha, aZ as K, aI as lr, aJ as fa, aK as it, aL as dt, aF as ga, bB as ge, bC as Be, bD as ba, bE as jt, bF as cr, bG as ur, bH as xa, bI as ht, bJ as va, bK as ya, bL as wa, bM as Na, bN as Sa, bO as Da, b8 as ve, bP as ye, aG as C, bQ as Ca, bR as mr, bl as ft, bS as ka, bT as Ea, bU as pr, bV as La, bW as hr, bX as V, bY as Ia, ap as Ma, bZ as Aa, b_ as Pa, b$ as Oa, c0 as _a, n as Ra, u as Fe, t as Ua, o as rt, c1 as Va, c2 as Ta, c3 as Fa, c4 as $a, N as Ba, c5 as Ga, c6 as za, I as qt, c7 as Ha, c8 as ja, c9 as qa, ca as Ka, cb as Wa, cc as Kt, cd as Wt, ce as Qt, cf as Qa, cg as Ja, ch as Ya, ci as Xa, b1 as Jt, cj as Za, ck as en, cl as tn, s as rn, cm as an, aP as nn, aS as sn, aT as on, aU as dn, aV as ln, aW as cn, aX as un, aY as Yt, g as lt } from "./index-BsH32bn1.js";
2
+ import { u as S, B as R, aw as mt, z as sr, O as na, Z as sa, c as be, ax as oa, ay as ia, az as ot, aA as xe, aB as pt, aC as or, L as Ge, aD as ir, aE as da, D as $t, Q as Bt, V as Gt, W as zt, Y as Ht, X as la, i as ca, aF as ua } from "./switch-BeZW-HnS.js";
3
+ import { by as ma, bz as pa, az as q, aH as dr, bA as ha, aZ as K, aI as lr, aJ as fa, aK as it, aL as dt, aF as ga, bB as ge, bC as Be, bD as ba, bE as jt, bF as cr, bG as ur, bH as xa, bI as ht, bJ as va, bK as ya, bL as wa, bM as Na, bN as Sa, bO as Da, b8 as ve, bP as ye, aG as C, bQ as Ca, bR as mr, bl as ft, bS as ka, bT as Ea, bU as pr, bV as La, bW as hr, bX as V, bY as Ia, ap as Ma, bZ as Aa, b_ as Pa, b$ as Oa, c0 as _a, n as Ra, u as Fe, t as Ua, o as rt, c1 as Va, c2 as Ta, c3 as Fa, c4 as $a, N as Ba, c5 as Ga, c6 as za, I as qt, c7 as Ha, c8 as ja, c9 as qa, ca as Ka, cb as Wa, cc as Kt, cd as Wt, ce as Qt, cf as Qa, cg as Ja, ch as Ya, ci as Xa, b1 as Jt, cj as Za, ck as en, cl as tn, s as rn, cm as an, aP as nn, aS as sn, aT as on, aU as dn, aV as ln, aW as cn, aX as un, aY as Yt, g as lt } from "./index-DAoS4BNU.js";
4
4
  import { c as ee, X as fr, C as mn } from "./x-CXDkqdur.js";
5
- import "./saved-temporal-bucket-format-DiZdQXOL.js";
6
- import "./validators-DeMXwRON.js";
7
- import "./analyze-result-contract-GHKFwThg.js";
5
+ import "./saved-temporal-bucket-format-SGAV0ivR.js";
6
+ import "./validators-DEmd8Sin.js";
7
+ import "./analyze-result-contract-BbRJ-C06.js";
8
8
  import "../value-format-preferences/index.js";
9
9
  import * as I from "react";
10
10
  import gr, { useState as N, useMemo as Z, useEffect as ze, useRef as Xt, useLayoutEffect as pn, useCallback as hn } from "react";
11
11
  import "./index-DSKR3nKn.js";
12
- import "./temporal-bucket-authoring-FIRnJz0e.js";
13
- import "./canonical-result-keys-KLk__J_O.js";
12
+ import "./temporal-bucket-authoring-K1kE6R_z.js";
13
+ import "./canonical-result-keys-D6avdjpA.js";
14
14
  import "./color-CJvdlFM_.js";
15
15
  import { createPortal as fn } from "react-dom";
16
- import "./index-B3ZugihZ.js";
17
- import { c as gn, u as bn, A as xn, a as vn, f as yn, V as wn, N as Nn, g as Sn, U as Dn } from "./dashboard-briefing-launcher-CFpX0WX3.js";
16
+ import "./index-Ca784dpx.js";
17
+ import { c as gn, u as bn, A as xn, a as vn, f as yn, V as wn, N as Nn, g as Sn, U as Dn } from "./dashboard-briefing-launcher-SYroFdae.js";
18
18
  import { S as Cn, C as kn } from "./search-BHsQIWBV.js";
19
19
  import { d as br } from "./format-types-CFHQoIuk.js";
20
- import { R as En } from "./report-preferences-dialog-BNV7qXYH.js";
20
+ import { R as En } from "./report-preferences-dialog-DDc2WUa0.js";
21
21
  import { u as Ln } from "./use-debounced-dirty-check-BwAbnX_5.js";
22
22
  import { s as at } from "./normalize-dashboard-for-dirty-check-5KpZN8xr.js";
23
23
  import { S as Zt } from "./save-DgMfP0j8.js";
@@ -1,4 +1,4 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),l=require("./switch-CjJ6FHYJ.cjs"),s=require("./index-q12_nNUS.cjs"),U=require("./x-B6ghREd2.cjs");require("./saved-temporal-bucket-format-Gfbh4IiP.cjs");require("./validators-Dm7Kpz6p.cjs");require("./analyze-result-contract-Dxw66nUG.cjs");require("../value-format-preferences/index.cjs");const y=require("react");require("./index-ByFbacH7.cjs");require("./temporal-bucket-authoring-7hv2laOG.cjs");require("./canonical-result-keys-Drc2x-lf.cjs");require("./color-CyB5o13F.cjs");const cs=require("react-dom");require("./index-DjiIh_9n.cjs");const $=require("./dashboard-briefing-launcher-mUXWuiOZ.cjs"),wt=require("./search-BqqhaMx9.cjs"),St=require("./format-types-PSZZ7hG8.cjs"),us=require("./report-preferences-dialog-BEVZAE3m.cjs"),ms=require("./use-debounced-dirty-check-XHSwAefL.cjs"),qe=require("./normalize-dashboard-for-dirty-check-BXRUMVb2.cjs"),xt=require("./save-3dYRmehL.cjs"),hs=require("./palette-BN-jYtaK.cjs"),ps=require("./braces-v55uLCAK.cjs");function fs(t){const a=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(t){for(const n in t)if(n!=="default"){const r=Object.getOwnPropertyDescriptor(t,n);Object.defineProperty(a,n,r.get?r:{enumerable:!0,get:()=>t[n]})}}return a.default=t,Object.freeze(a)}const M=fs(y);/**
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),l=require("./switch-D-CCcfhc.cjs"),s=require("./index-CLB_NGZ8.cjs"),U=require("./x-B6ghREd2.cjs");require("./saved-temporal-bucket-format-CFfWXRl9.cjs");require("./validators-BDYprKI9.cjs");require("./analyze-result-contract-LPDNldic.cjs");require("../value-format-preferences/index.cjs");const y=require("react");require("./index-ByFbacH7.cjs");require("./temporal-bucket-authoring-o3Emn05L.cjs");require("./canonical-result-keys-BA0HCP4e.cjs");require("./color-CyB5o13F.cjs");const cs=require("react-dom");require("./index-Bn5wlkHt.cjs");const $=require("./dashboard-briefing-launcher-Dwj1i7lr.cjs"),wt=require("./search-BqqhaMx9.cjs"),St=require("./format-types-PSZZ7hG8.cjs"),us=require("./report-preferences-dialog-BgSvlDXa.cjs"),ms=require("./use-debounced-dirty-check-XHSwAefL.cjs"),qe=require("./normalize-dashboard-for-dirty-check-BXRUMVb2.cjs"),xt=require("./save-3dYRmehL.cjs"),hs=require("./palette-BN-jYtaK.cjs"),ps=require("./braces-v55uLCAK.cjs");function fs(t){const a=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(t){for(const n in t)if(n!=="default"){const r=Object.getOwnPropertyDescriptor(t,n);Object.defineProperty(a,n,r.get?r:{enumerable:!0,get:()=>t[n]})}}return a.default=t,Object.freeze(a)}const M=fs(y);/**
2
2
  * @license lucide-react v0.453.0 - ISC
3
3
  *
4
4
  * This source code is licensed under the ISC license.
@@ -0,0 +1 @@
1
+ "use strict";const I=require("./validators-BDYprKI9.cjs");function b(e,n){const t=e.split(".").map(r=>r.trim()),i=n.split(".").map(r=>r.trim());if(t.length===0||i.length===0||t.some(r=>!r)||i.some(r=>!r))return!1;const[s,o]=t.length<=i.length?[t,i]:[i,t],a=o.length-s.length;return s.every((r,c)=>r===o[c+a])}function C(e,n){const t=e.split("."),i=n.split("."),s=t.pop(),o=i.pop();return!!(s&&s===o&&t.length>0&&i.length>0&&b(t.join("."),i.join(".")))}function N(e){const n=e.map(i=>i.trim()).filter(Boolean);if(n.every((i,s)=>n.slice(s+1).every(o=>b(i,o))))return[...n].sort((i,s)=>s.split(".").length-i.split(".").length)[0]}function u(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function D(e){if(typeof e!="string")return"";const n=e.split(".").map(t=>t.trim());return n.length>1&&n.every(Boolean)?n.join("."):""}function v(e){if(typeof e!="string")return"";const n=e.split(".").map(t=>t.trim());return n.length>0&&n.every(Boolean)?n.join("."):""}function d(e){return typeof e=="string"?e.trim():""}function S(e,n){return e.every((t,i)=>e.slice(i+1).every(s=>n(t,s)))}function q(e,n){const t=d(e.id),i=d(e.name),s=d(n.entityId),o=d(n.entityName);return!i||!s&&!o?!1:(!s||s===t||s===i)&&(!o||o===i)}function E(e){const n=u(e.semanticContext)?e.semanticContext:void 0,t=u(e.fieldMeta)?e.fieldMeta:void 0,i=d(n==null?void 0:n.semanticDomainId),s=Array.isArray(n==null?void 0:n.selectedEntities)?n.selectedEntities.filter(g=>u(g)&&g.type==="dataset"):[];if(!!!(i||s.length>0||(t==null?void 0:t.entityType)==="dataset"))return;if(!i)return{status:"unresolved",reason:"incomplete_source_identity"};const a=d(t==null?void 0:t.entityId),r=d(t==null?void 0:t.entityName),c=!!(a||r),f=c?s.filter(g=>q(g,{entityId:a,entityName:r})):s;if(f.length>1)return{status:"unresolved",reason:"incomplete_source_identity"};if(c&&s.length>0&&f.length===0)return{status:"unresolved",reason:"divergent_source_identity"};const l=f[0],m=d(l==null?void 0:l.domainId),p=d(l==null?void 0:l.id),y=d(l==null?void 0:l.name);if(m&&m!==i)return{status:"unresolved",reason:"divergent_source_identity"};const h=p,_=y||r;return _?{status:"resolved",source:{kind:"semantic",domainId:i,datasetName:_,...h?{datasetId:h}:{}}}:{status:"unresolved",reason:"incomplete_source_identity"}}function A(e,n){const t=d(e.connectionId),i=u(e.semanticContext)?e.semanticContext:void 0,s=d(i==null?void 0:i.connectionId);if(t&&s&&t!==s)return{status:"unresolved",reason:"divergent_source_identity"};const o=t||s,a=u(e.fieldMeta)?e.fieldMeta:void 0,r=n.split(".").slice(0,-1).join("."),c=v(e.qualifiedTableName),f=v(a==null?void 0:a.qualifiedEntityName),l=[c,f,r].filter(Boolean),m=N(l);return!m&&l.length>0?{status:"unresolved",reason:"divergent_source_identity"}:!o||!m?{status:"unresolved",reason:"incomplete_source_identity"}:{status:"resolved",source:{kind:"physical",connectionId:o,tableName:m}}}function B(e,n){const t=u(e.fieldMeta)?e.fieldMeta:void 0,i=typeof(t==null?void 0:t.qualifiedFieldName)=="string"?t.qualifiedFieldName.trim():"",s=D(t==null?void 0:t.qualifiedFieldName),o=typeof e.column=="string"?e.column.trim():"",a=D(o),r=typeof e.qualifiedTableName=="string"?e.qualifiedTableName.trim():"",c=v(e.qualifiedTableName);if(i&&!s||n&&r&&!c||o.includes(".")&&!a)return{status:"unresolved",reason:"incomplete_field_identity"};const f=a.split("."),l=a?f[f.length-1]:o,m=n&&c&&l?`${c}.${l}`:"",p=[s,a,m].filter(Boolean);if(!S(p,C))return{status:"unresolved",reason:"divergent_field_identity"};const y=a||s||m;return y?{status:"resolved",qualifiedFieldName:y}:{status:"unresolved",reason:"incomplete_field_identity"}}function F(e){if(!u(e))return{status:"ineligible",reason:"invalid_input"};if(e.kind==="global-date")return{status:"eligible",kind:"global_date"};const n=I.normalizeAnalyticsCatalogDataType(e.dataType);if(n!=="date"&&n!=="datetime")return{status:"ineligible",reason:"non_date_filter"};const t=u(e.fieldMeta)?e.fieldMeta:void 0,i=I.normalizeAnalyticsCatalogDataType(t==null?void 0:t.dataType);if((t==null?void 0:t.dataType)!==void 0&&i!=="date"&&i!=="datetime")return{status:"ineligible",reason:"non_date_filter"};if(e.customFilterPreferences)return{status:"ineligible",reason:"custom_filter"};if(e.targetColumns!==void 0&&(!Array.isArray(e.targetColumns)||e.targetColumns.length>0))return{status:"ineligible",reason:"multi_target_filter"};const s=E(e),o=B(e,s===void 0);if(o.status==="unresolved")return{status:"ineligible",reason:o.reason};const a=s||A(e,o.qualifiedFieldName);return a.status==="resolved"?{status:"eligible",kind:"field_date",qualifiedFieldName:o.qualifiedFieldName,source:a.source}:{status:"ineligible",reason:a.reason}}function T(e){if(!u(e)||e.kind!=="filter"||!u(e.filter))return{status:"ineligible",reason:"invalid_input"};const n=F(e.filter);return n.status==="ineligible"?n:n.kind==="field_date"&&u(e.compatibility)&&e.compatibility.source==="cardInlineFilter"?{status:"ineligible",reason:"card_inline_filter"}:n}function k(e){return T(e).status==="eligible"}exports.isComparisonCapableDashboardDateInputDefinition=k;exports.qualifiedEntityIdentitiesReferToSameEntity=b;exports.qualifiedFieldIdentitiesReferToSameField=C;exports.resolveDashboardDateComparisonFilterDefinition=F;exports.resolveDashboardDateComparisonInputDefinition=T;exports.selectMostQualifiedCompatibleEntityIdentity=N;exports.semanticDatasetMatchesFieldCoordinates=q;
@@ -1,4 +1,4 @@
1
- import { n as h } from "./catalog-field-grounding-S2jKwKGD.js";
1
+ import { n as h } from "./validators-DEmd8Sin.js";
2
2
  function N(e, n) {
3
3
  const t = e.split(".").map((r) => r.trim()), i = n.split(".").map((r) => r.trim());
4
4
  if (t.length === 0 || i.length === 0 || t.some((r) => !r) || i.some((r) => !r))
@@ -1,18 +1,18 @@
1
1
  import { jsxs as d, jsx as e } from "react/jsx-runtime";
2
2
  import { useMemo as u, useState as p, useRef as f, useEffect as b } from "react";
3
3
  import { X as S } from "./x-CXDkqdur.js";
4
- import { u as a, c as N, B as D, C as J } from "./switch-DgLwr7O-.js";
5
- import "./saved-temporal-bucket-format-DiZdQXOL.js";
6
- import "./validators-DeMXwRON.js";
7
- import "./analyze-result-contract-GHKFwThg.js";
4
+ import { u as a, c as N, B as D, C as J } from "./switch-BeZW-HnS.js";
5
+ import "./saved-temporal-bucket-format-SGAV0ivR.js";
6
+ import "./validators-DEmd8Sin.js";
7
+ import "./analyze-result-contract-BbRJ-C06.js";
8
8
  import "../value-format-preferences/index.js";
9
- import "./index-BsH32bn1.js";
9
+ import "./index-DAoS4BNU.js";
10
10
  import "./index-DSKR3nKn.js";
11
- import "./temporal-bucket-authoring-FIRnJz0e.js";
12
- import "./canonical-result-keys-KLk__J_O.js";
11
+ import "./temporal-bucket-authoring-K1kE6R_z.js";
12
+ import "./canonical-result-keys-D6avdjpA.js";
13
13
  import "./color-CJvdlFM_.js";
14
14
  import "react-dom";
15
- import "./index-B3ZugihZ.js";
15
+ import "./index-Ca784dpx.js";
16
16
  function X() {
17
17
  const r = a((o) => o.dashboard), c = a((o) => o.actions.setDashboard), h = a(
18
18
  (o) => o.showDashboardJSON
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("react/jsx-runtime"),o=require("react"),b=require("./x-B6ghREd2.cjs"),r=require("./switch-CjJ6FHYJ.cjs");require("./saved-temporal-bucket-format-Gfbh4IiP.cjs");require("./validators-Dm7Kpz6p.cjs");require("./analyze-result-contract-Dxw66nUG.cjs");require("../value-format-preferences/index.cjs");require("./index-q12_nNUS.cjs");require("./index-ByFbacH7.cjs");require("./temporal-bucket-authoring-7hv2laOG.cjs");require("./canonical-result-keys-Drc2x-lf.cjs");require("./color-CyB5o13F.cjs");require("react-dom");require("./index-DjiIh_9n.cjs");function S(){const t=r.useDashboardStore(e=>e.dashboard),d=r.useDashboardStore(e=>e.actions.setDashboard),c=r.useDashboardStore(e=>e.showDashboardJSON),h=r.useDashboardStore(e=>e.actions.setShowDashboardJSON),s=o.useMemo(()=>t?JSON.stringify(t,null,2):"",[t]),[l,n]=o.useState(s),i=o.useRef(s);return o.useEffect(()=>{s!==i.current&&(n(s),i.current=s)},[s]),a.jsxs("div",{className:r.cn("relative p-2",{hidden:!c}),children:[a.jsxs(r.Button,{variant:"secondary",size:"sm",className:"absolute right-2 top-2 z-10 h-8",onClick:()=>h(!1),children:[a.jsx(b.X,{className:"mr-2 h-4 w-4"}),"Close"]}),a.jsx("div",{className:"h-[550px] overflow-hidden",children:a.jsx(r.CodeEditor,{value:l,onValueChange:e=>{n(e);try{const u=JSON.parse(e);i.current=JSON.stringify(u,null,2),d(u)}catch{}},language:"json"})})]})}exports.default=S;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("react/jsx-runtime"),o=require("react"),b=require("./x-B6ghREd2.cjs"),r=require("./switch-D-CCcfhc.cjs");require("./saved-temporal-bucket-format-CFfWXRl9.cjs");require("./validators-BDYprKI9.cjs");require("./analyze-result-contract-LPDNldic.cjs");require("../value-format-preferences/index.cjs");require("./index-CLB_NGZ8.cjs");require("./index-ByFbacH7.cjs");require("./temporal-bucket-authoring-o3Emn05L.cjs");require("./canonical-result-keys-BA0HCP4e.cjs");require("./color-CyB5o13F.cjs");require("react-dom");require("./index-Bn5wlkHt.cjs");function S(){const t=r.useDashboardStore(e=>e.dashboard),d=r.useDashboardStore(e=>e.actions.setDashboard),c=r.useDashboardStore(e=>e.showDashboardJSON),h=r.useDashboardStore(e=>e.actions.setShowDashboardJSON),s=o.useMemo(()=>t?JSON.stringify(t,null,2):"",[t]),[l,n]=o.useState(s),i=o.useRef(s);return o.useEffect(()=>{s!==i.current&&(n(s),i.current=s)},[s]),a.jsxs("div",{className:r.cn("relative p-2",{hidden:!c}),children:[a.jsxs(r.Button,{variant:"secondary",size:"sm",className:"absolute right-2 top-2 z-10 h-8",onClick:()=>h(!1),children:[a.jsx(b.X,{className:"mr-2 h-4 w-4"}),"Close"]}),a.jsx("div",{className:"h-[550px] overflow-hidden",children:a.jsx(r.CodeEditor,{value:l,onValueChange:e=>{n(e);try{const u=JSON.parse(e);i.current=JSON.stringify(u,null,2),d(u)}catch{}},language:"json"})})]})}exports.default=S;
@@ -1,4 +1,4 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),C=require("react"),n=require("./index-q12_nNUS.cjs"),oe=require("./x-B6ghREd2.cjs"),t=require("./switch-CjJ6FHYJ.cjs"),Ke=require("./saved-temporal-bucket-format-Gfbh4IiP.cjs");require("./validators-Dm7Kpz6p.cjs");require("./analyze-result-contract-Dxw66nUG.cjs");const Jt=require("../value-format-preferences/index.cjs"),Ye=require("./search-BqqhaMx9.cjs"),Nt=require("./editor-action-buttons-1Lo0fIh7.cjs"),he=require("./index-DjiIh_9n.cjs"),cr=require("react-dom");require("./index-ByFbacH7.cjs");const It=require("./temporal-bucket-authoring-7hv2laOG.cjs");require("./canonical-result-keys-Drc2x-lf.cjs");require("./color-CyB5o13F.cjs");const oa=require("./pivot-result-lifecycle-BiJepH5S.cjs"),Mn=require("./metric-comparison-DYR3RXam.cjs"),dr=require("./palette-BN-jYtaK.cjs"),ur=require("./common-types-Ci66eflG.cjs");function mr(s){const a=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(s){for(const r in s)if(r!=="default"){const o=Object.getOwnPropertyDescriptor(s,r);Object.defineProperty(a,r,o.get?o:{enumerable:!0,get:()=>s[r]})}}return a.default=s,Object.freeze(a)}const xr=mr(C);/**
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),C=require("react"),n=require("./index-CLB_NGZ8.cjs"),oe=require("./x-B6ghREd2.cjs"),t=require("./switch-D-CCcfhc.cjs"),Ke=require("./saved-temporal-bucket-format-CFfWXRl9.cjs");require("./validators-BDYprKI9.cjs");require("./analyze-result-contract-LPDNldic.cjs");const Jt=require("../value-format-preferences/index.cjs"),Ye=require("./search-BqqhaMx9.cjs"),Nt=require("./editor-action-buttons-18r2xwei.cjs"),he=require("./index-Bn5wlkHt.cjs"),cr=require("react-dom");require("./index-ByFbacH7.cjs");const It=require("./temporal-bucket-authoring-o3Emn05L.cjs");require("./canonical-result-keys-BA0HCP4e.cjs");require("./color-CyB5o13F.cjs");const oa=require("./pivot-result-lifecycle-DmcF1ris.cjs"),Mn=require("./temporal-bucket-DHY1y9lq.cjs"),dr=require("./palette-BN-jYtaK.cjs"),ur=require("./common-types-C57kJ59w.cjs");function mr(s){const a=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(s){for(const r in s)if(r!=="default"){const o=Object.getOwnPropertyDescriptor(s,r);Object.defineProperty(a,r,o.get?o:{enumerable:!0,get:()=>s[r]})}}return a.default=s,Object.freeze(a)}const xr=mr(C);/**
2
2
  * @license lucide-react v0.453.0 - ISC
3
3
  *
4
4
  * This source code is licensed under the ISC license.
@@ -1,25 +1,25 @@
1
1
  import { jsx as e, jsxs as n, Fragment as we } from "react/jsx-runtime";
2
2
  import * as nd from "react";
3
3
  import an, { useState as K, useEffect as Te, useRef as Ae, useCallback as Ee, useMemo as ce, useId as Bi, useContext as yr, Suspense as ad } from "react";
4
- import { cZ as Yi, aH as wn, aI as Sn, aJ as Tn, aK as kn, aL as _n, aF as us, bj as Lt, bk as Wt, c_ as _i, c$ as ls, aG as rt, d0 as $i, d1 as is, b4 as Aa, aZ as vt, cf as Nr, b2 as ra, bl as la, bi as Bt, d2 as ms, d3 as zi, d4 as sd, d5 as rd, d6 as ji, d7 as ld, d8 as id, d9 as od, da as cd, db as ir, dc as os, az as Gn, n as qi, dd, de as ud, df as Ki, dg as Ui, dh as Gi, di as md, dj as hd, dk as pd, dl as fd, cN as Cr, b1 as Hi, b8 as Qi, dm as In, dn as or, dp as gd, c7 as Da, dq as Wi, dr as Yl, ds as _l, bf as Zn, aN as dn, aO as bt, dt as xd, du as Ji, dv as Xi, bX as st, dw as qt, dx as bd, dy as Zi, dz as vd, dA as eo, dB as yd, dC as Nd, dD as Cd, aD as to, dE as wd, dF as Sd, dG as Td, dH as kd, dI as Dd, dJ as Md, dK as Bs, dL as Id, dM as $l, dN as Ed, dO as zl, dP as Ad, bh as Ot, cc as ia, cd as oa, ce as ca, dQ as no, bI as wr, aM as Sr, dR as ao, dS as Tr, dT as Od, dU as Fd, dV as kr, dW as Rd, dX as Pd, dY as so, dZ as ro, d_ as lo, d$ as tn, e0 as Ld, e1 as Vd, e2 as Bd, e3 as Yd, e4 as io, e5 as oo, H as co, e6 as Dr, e7 as _d, e8 as $d, e9 as zd, ea as Oa, M as jd, eb as qd, ec as Kd, ed as jl, ee as Ud, E as ys, e as Mr, ef as Gd, eg as Ir, bA as Hd, eh as ql, I as ft, ei as Qd, ej as Wd, ek as uo, el as mo, em as Jd, en as Er, eo as Ar, ep as Kl, eq as Ua, er as Xd, es as Zd, et as eu, eu as tu, ev as nu, ew as hs, ex as au, ey as su, ez as ho, eA as po, eB as ru, eC as lu, cq as iu, eD as ou, eE as fo, eF as cu, eG as du, cr as Ns, eH as Cs, bB as Vn, bC as $t, eI as Or, eJ as $n, eK as zn, eL as Dn, eM as aa, eN as uu, eO as mu, eP as hu, eQ as pu, eR as fu, eS as gu, eT as Ul, bp as sn, bq as rn, br as ln, eU as xu, eV as go, eW as bu, eX as vu, eY as xo, eZ as yu, e_ as Nu, e$ as Cu, f0 as wu, f1 as Ys, f2 as Su, f3 as Tu, f4 as ws, f5 as bo, f6 as ku, f7 as Du, f8 as Mu, f9 as Iu, fa as Eu, fb as Au, fc as Ou, fd as Fu, fe as Ru, ff as cr, fg as Pu, fh as Lu, fi as Gl, b3 as dr, a$ as Mn, aP as Vu, aQ as Bu, aS as Yu, aT as _u, aU as $u, aV as zu, aW as ju, aX as qu, aY as Ku, bZ as Uu, fj as Gu, fk as Hu, fl as Fa, fm as Ra, fn as Pa, cG as jn, ch as Fr, ci as Qu, cj as vo, ck as yo, cl as No, bD as Wu, bE as Ju, fo as Xu, fp as Ss, fq as ct, fr as dt, fs as ut, ft as Zu, fu as em, fv as Co, fw as wo, fx as So, fy as To, fz as tm, fA as nm, fB as ur, fC as am, fD as sm, fE as rm, fF as lm, fG as im, fH as om, fI as cm, fJ as dm, fK as um, fL as mm, fM as hm, fN as pm, fO as Pn, fP as Sa, fQ as fm, fR as Hl, fS as gm, fT as xm, fU as _s, fV as Ql, fW as bm, fX as vm, fY as ym, fZ as Nm, f_ as Cm, aB as Rr, aC as La, f$ as $s, g0 as ko, b6 as wm, g1 as ps, g2 as Sm, g3 as Do, g4 as Mo, g5 as Tm, g6 as km, V as Dm, g7 as ns, g8 as Mm, g9 as Wl, ga as Im, gb as Em, gc as Jl, gd as Am, ge as Om, gf as Fm, gg as Rm, gh as Pm, aR as Io, gi as Lm, gj as Vm, gk as Bm, gl as Ym, gm as _m, gn as $m, go as zm, gp as jm, gq as qm, gr as Eo, gs as Km, gt as Um, gu as Ts, cH as ks, gv as Ao, gw as Gm, gx as Hm, gy as Oo, gz as Qm, gA as Wm, gB as Ds, gC as Jm, gD as Xm, gE as Zm, gF as eh, gG as th, gH as Xl, gI as sa, gJ as Fo, gK as nh, ct as ah, gL as Ro, gM as Po, gN as cs, gO as Lo, gP as Vo, gQ as Zl, gR as sh, gS as rh, gT as ds, gU as Pr, gV as lh, gW as fs, h as Va, i as Ba, k as Ya, j as _a, l as $a, m as za, gX as ih, gY as ja, gZ as yn, g_ as mr, g$ as hr, h0 as qa, h1 as Bo, h2 as oh, h3 as zs, h4 as js, h5 as ch, h6 as qs, h7 as dh, h8 as ei, h9 as ti, ha as uh, cP as mh, hb as hh, cQ as ph, cS as fh, cT as gh, u as xh, hc as bh, hd as vh, he as yh, hf as Nh, bW as Ms, hg as Is, hh as ni, hi as Yo, cJ as Ks, hj as Ch, hk as wh, hl as Sh, F as Th, bx as kh, hm as Dh, hn as Mh } from "./index-BsH32bn1.js";
4
+ import { cZ as Yi, aH as wn, aI as Sn, aJ as Tn, aK as kn, aL as _n, aF as us, bj as Lt, bk as Wt, c_ as _i, c$ as ls, aG as rt, d0 as $i, d1 as is, b4 as Aa, aZ as vt, cf as Nr, b2 as ra, bl as la, bi as Bt, d2 as ms, d3 as zi, d4 as sd, d5 as rd, d6 as ji, d7 as ld, d8 as id, d9 as od, da as cd, db as ir, dc as os, az as Gn, n as qi, dd, de as ud, df as Ki, dg as Ui, dh as Gi, di as md, dj as hd, dk as pd, dl as fd, cN as Cr, b1 as Hi, b8 as Qi, dm as In, dn as or, dp as gd, c7 as Da, dq as Wi, dr as Yl, ds as _l, bf as Zn, aN as dn, aO as bt, dt as xd, du as Ji, dv as Xi, bX as st, dw as qt, dx as bd, dy as Zi, dz as vd, dA as eo, dB as yd, dC as Nd, dD as Cd, aD as to, dE as wd, dF as Sd, dG as Td, dH as kd, dI as Dd, dJ as Md, dK as Bs, dL as Id, dM as $l, dN as Ed, dO as zl, dP as Ad, bh as Ot, cc as ia, cd as oa, ce as ca, dQ as no, bI as wr, aM as Sr, dR as ao, dS as Tr, dT as Od, dU as Fd, dV as kr, dW as Rd, dX as Pd, dY as so, dZ as ro, d_ as lo, d$ as tn, e0 as Ld, e1 as Vd, e2 as Bd, e3 as Yd, e4 as io, e5 as oo, H as co, e6 as Dr, e7 as _d, e8 as $d, e9 as zd, ea as Oa, M as jd, eb as qd, ec as Kd, ed as jl, ee as Ud, E as ys, e as Mr, ef as Gd, eg as Ir, bA as Hd, eh as ql, I as ft, ei as Qd, ej as Wd, ek as uo, el as mo, em as Jd, en as Er, eo as Ar, ep as Kl, eq as Ua, er as Xd, es as Zd, et as eu, eu as tu, ev as nu, ew as hs, ex as au, ey as su, ez as ho, eA as po, eB as ru, eC as lu, cq as iu, eD as ou, eE as fo, eF as cu, eG as du, cr as Ns, eH as Cs, bB as Vn, bC as $t, eI as Or, eJ as $n, eK as zn, eL as Dn, eM as aa, eN as uu, eO as mu, eP as hu, eQ as pu, eR as fu, eS as gu, eT as Ul, bp as sn, bq as rn, br as ln, eU as xu, eV as go, eW as bu, eX as vu, eY as xo, eZ as yu, e_ as Nu, e$ as Cu, f0 as wu, f1 as Ys, f2 as Su, f3 as Tu, f4 as ws, f5 as bo, f6 as ku, f7 as Du, f8 as Mu, f9 as Iu, fa as Eu, fb as Au, fc as Ou, fd as Fu, fe as Ru, ff as cr, fg as Pu, fh as Lu, fi as Gl, b3 as dr, a$ as Mn, aP as Vu, aQ as Bu, aS as Yu, aT as _u, aU as $u, aV as zu, aW as ju, aX as qu, aY as Ku, bZ as Uu, fj as Gu, fk as Hu, fl as Fa, fm as Ra, fn as Pa, cG as jn, ch as Fr, ci as Qu, cj as vo, ck as yo, cl as No, bD as Wu, bE as Ju, fo as Xu, fp as Ss, fq as ct, fr as dt, fs as ut, ft as Zu, fu as em, fv as Co, fw as wo, fx as So, fy as To, fz as tm, fA as nm, fB as ur, fC as am, fD as sm, fE as rm, fF as lm, fG as im, fH as om, fI as cm, fJ as dm, fK as um, fL as mm, fM as hm, fN as pm, fO as Pn, fP as Sa, fQ as fm, fR as Hl, fS as gm, fT as xm, fU as _s, fV as Ql, fW as bm, fX as vm, fY as ym, fZ as Nm, f_ as Cm, aB as Rr, aC as La, f$ as $s, g0 as ko, b6 as wm, g1 as ps, g2 as Sm, g3 as Do, g4 as Mo, g5 as Tm, g6 as km, V as Dm, g7 as ns, g8 as Mm, g9 as Wl, ga as Im, gb as Em, gc as Jl, gd as Am, ge as Om, gf as Fm, gg as Rm, gh as Pm, aR as Io, gi as Lm, gj as Vm, gk as Bm, gl as Ym, gm as _m, gn as $m, go as zm, gp as jm, gq as qm, gr as Eo, gs as Km, gt as Um, gu as Ts, cH as ks, gv as Ao, gw as Gm, gx as Hm, gy as Oo, gz as Qm, gA as Wm, gB as Ds, gC as Jm, gD as Xm, gE as Zm, gF as eh, gG as th, gH as Xl, gI as sa, gJ as Fo, gK as nh, ct as ah, gL as Ro, gM as Po, gN as cs, gO as Lo, gP as Vo, gQ as Zl, gR as sh, gS as rh, gT as ds, gU as Pr, gV as lh, gW as fs, h as Va, i as Ba, k as Ya, j as _a, l as $a, m as za, gX as ih, gY as ja, gZ as yn, g_ as mr, g$ as hr, h0 as qa, h1 as Bo, h2 as oh, h3 as zs, h4 as js, h5 as ch, h6 as qs, h7 as dh, h8 as ei, h9 as ti, ha as uh, cP as mh, hb as hh, cQ as ph, cS as fh, cT as gh, u as xh, hc as bh, hd as vh, he as yh, hf as Nh, bW as Ms, hg as Is, hh as ni, hi as Yo, cJ as Ks, hj as Ch, hk as wh, hl as Sh, F as Th, bx as kh, hm as Dh, hn as Mh } from "./index-DAoS4BNU.js";
5
5
  import { c as We, C as It, X as nt } from "./x-CXDkqdur.js";
6
- import { E as Se, B as ee, N as gs, H as Ga, c as U, O as _, _ as ae, $ as se, a0 as re, a1 as le, a2 as q, D as P, Y as kt, Q as zt, V as Dt, W as Mt, P as Et, a as Vt, b as At, aF as Ma, aL as Lr, aM as _o, aC as Vr, aA as Ih, Z as Be, aN as Eh, L as un, C as qn, T as da, F as ua, G as Ut, I as on, d as mn, u as Ne, R as xs, aO as Br, z as $o, X as Kn, M as Yr, S as Un, aP as Ah, aQ as Oh, aR as zo, ad as Fh, aH as Rh, aS as Ph, aT as Lh, aU as ai, aV as Vh, aW as Bh, aX as Yh, aY as _h, aZ as $h, a_ as zh, a$ as si, b0 as jh, b1 as ri, b2 as ma, b3 as qh, a3 as Ke, b4 as Kh, b5 as _r, b6 as pr, b7 as jo, b8 as Nn, b9 as qo, ba as Uh, bb as Ko, bc as Gh, bd as Hh, be as Kt, K as Uo, bf as pt, bg as Go, r as li, bh as Qh, bi as Wh, bj as Jh, bk as Xh, bl as Zh, bm as ep, bn as tp, bo as np, bp as ap, bq as sp, br as rp, bs as ii, bt as lp, bu as ip, bv as op, bw as cp, bx as dp, J as Es, au as up } from "./switch-DgLwr7O-.js";
7
- import { C as mp, h as ha, v as Yn, c as as, M as hp, b as pp, g as fp, d as gp } from "./saved-temporal-bucket-format-DiZdQXOL.js";
8
- import "./validators-DeMXwRON.js";
9
- import "./analyze-result-contract-GHKFwThg.js";
6
+ import { E as Se, B as ee, N as gs, H as Ga, c as U, O as _, _ as ae, $ as se, a0 as re, a1 as le, a2 as q, D as P, Y as kt, Q as zt, V as Dt, W as Mt, P as Et, a as Vt, b as At, aF as Ma, aL as Lr, aM as _o, aC as Vr, aA as Ih, Z as Be, aN as Eh, L as un, C as qn, T as da, F as ua, G as Ut, I as on, d as mn, u as Ne, R as xs, aO as Br, z as $o, X as Kn, M as Yr, S as Un, aP as Ah, aQ as Oh, aR as zo, ad as Fh, aH as Rh, aS as Ph, aT as Lh, aU as ai, aV as Vh, aW as Bh, aX as Yh, aY as _h, aZ as $h, a_ as zh, a$ as si, b0 as jh, b1 as ri, b2 as ma, b3 as qh, a3 as Ke, b4 as Kh, b5 as _r, b6 as pr, b7 as jo, b8 as Nn, b9 as qo, ba as Uh, bb as Ko, bc as Gh, bd as Hh, be as Kt, K as Uo, bf as pt, bg as Go, r as li, bh as Qh, bi as Wh, bj as Jh, bk as Xh, bl as Zh, bm as ep, bn as tp, bo as np, bp as ap, bq as sp, br as rp, bs as ii, bt as lp, bu as ip, bv as op, bw as cp, bx as dp, J as Es, au as up } from "./switch-BeZW-HnS.js";
7
+ import { C as mp, h as ha, v as Yn, c as as, M as hp, b as pp, g as fp, d as gp } from "./saved-temporal-bucket-format-SGAV0ivR.js";
8
+ import "./validators-DEmd8Sin.js";
9
+ import "./analyze-result-contract-BbRJ-C06.js";
10
10
  import { DEFAULT_RESOLVED_VALUE_FORMAT_PREFERENCES as Ka } from "../value-format-preferences/index.js";
11
11
  import { C as Gt, M as Ho, a as Qo, E as fr, S as As } from "./search-BHsQIWBV.js";
12
- import { f as xp, F as bp, g as vp, V as Wo, e as yp, C as Np, h as Cp } from "./editor-action-buttons-BFNtjFzO.js";
13
- import { f as Hn, r as En, b as Ha, c as cn, e as ta, i as wp, n as Sp, h as Jo, j as Xo, k as Zo, l as Tp, m as gr, o as kp, p as Dp, q as Mp } from "./index-B3ZugihZ.js";
12
+ import { f as xp, F as bp, g as vp, V as Wo, e as yp, C as Np, h as Cp } from "./editor-action-buttons-B2l3WIRC.js";
13
+ import { f as Hn, r as En, b as Ha, c as cn, e as ta, i as wp, n as Sp, h as Jo, j as Xo, k as Zo, l as Tp, m as gr, o as kp, p as Dp, q as Mp } from "./index-Ca784dpx.js";
14
14
  import { createPortal as Ip } from "react-dom";
15
15
  import "./index-DSKR3nKn.js";
16
- import { g as oi, A as Ep, b as Ap, r as Us } from "./temporal-bucket-authoring-FIRnJz0e.js";
17
- import "./canonical-result-keys-KLk__J_O.js";
16
+ import { g as oi, A as Ep, b as Ap, r as Us } from "./temporal-bucket-authoring-K1kE6R_z.js";
17
+ import "./canonical-result-keys-D6avdjpA.js";
18
18
  import "./color-CJvdlFM_.js";
19
- import { b as Op, r as Fp } from "./pivot-result-lifecycle-4kSe0Hk1.js";
20
- import { D as ci } from "./metric-comparison-D0T0MKRK.js";
19
+ import { b as Op, r as Fp } from "./pivot-result-lifecycle-sjzIOpvp.js";
20
+ import { D as ci } from "./temporal-bucket-5UYEotyQ.js";
21
21
  import { P as Rp } from "./palette-Cp1hqZtm.js";
22
- import { a as Pp } from "./common-types-F6qk6PPS.js";
22
+ import { a as Pp } from "./common-types-H51FLKB7.js";
23
23
  /**
24
24
  * @license lucide-react v0.453.0 - ISC
25
25
  *
@@ -1,4 +1,4 @@
1
- "use strict";const J=require("./x-B6ghREd2.cjs"),v=require("react"),s=require("./switch-CjJ6FHYJ.cjs"),f=require("./index-q12_nNUS.cjs"),e=require("react/jsx-runtime");require("./saved-temporal-bucket-format-Gfbh4IiP.cjs");require("./validators-Dm7Kpz6p.cjs");require("./analyze-result-contract-Dxw66nUG.cjs");require("../value-format-preferences/index.cjs");const ge=require("./search-BqqhaMx9.cjs"),Fe=require("./index-DjiIh_9n.cjs"),Se=require("./save-3dYRmehL.cjs");/**
1
+ "use strict";const J=require("./x-B6ghREd2.cjs"),v=require("react"),s=require("./switch-D-CCcfhc.cjs"),f=require("./index-CLB_NGZ8.cjs"),e=require("react/jsx-runtime");require("./saved-temporal-bucket-format-CFfWXRl9.cjs");require("./validators-BDYprKI9.cjs");require("./analyze-result-contract-LPDNldic.cjs");require("../value-format-preferences/index.cjs");const ge=require("./search-BqqhaMx9.cjs"),Fe=require("./index-Bn5wlkHt.cjs"),Se=require("./save-3dYRmehL.cjs");/**
2
2
  * @license lucide-react v0.453.0 - ISC
3
3
  *
4
4
  * This source code is licensed under the ISC license.
@@ -1,14 +1,14 @@
1
1
  import { c as Te, C as je, X as Ze } from "./x-CXDkqdur.js";
2
2
  import { useState as H, useEffect as ie, useCallback as U, useMemo as oe, useRef as ke, Fragment as ht } from "react";
3
- import { E as de, z as _e, u as J, D as z, a4 as bt, Q as gt, V as yt, W as vt, c as fe, Y as xt, a5 as Ct, a6 as kt, a7 as pe, a8 as Re, a9 as Qe, aa as Se, ab as Ne, ac as St, ad as $e, ae as Nt, af as wt, ag as me, ah as Dt, ai as Pe, B as L, aj as et, ak as tt, al as rt, O as ne, Z as at, _ as we, $ as De, a0 as Ee, a1 as Fe, a2 as Ie, am as st, an as Et, ao as Ft, ap as We, aq as It, ar as He, as as Vt, at as Ve, d as Tt, L as nt, au as _t, av as At } from "./switch-DgLwr7O-.js";
4
- import { b7 as Lt, az as qt, b8 as ce, b9 as Mt, ba as Ae, bb as Ot, bc as zt, bd as Ut, aG as B, be as Bt, bf as jt, bg as Rt, bh as ot, bi as lt, u as Qt, bj as $t, bk as Pt, bl as Wt, bm as Ht, bn as it, bo as dt, bp as Kt, bq as Yt, br as Gt, bs as Xt, bt as Jt, aZ as Zt, bu as er, bv as tr, bw as ct, bx as rr } from "./index-BsH32bn1.js";
3
+ import { E as de, z as _e, u as J, D as z, a4 as bt, Q as gt, V as yt, W as vt, c as fe, Y as xt, a5 as Ct, a6 as kt, a7 as pe, a8 as Re, a9 as Qe, aa as Se, ab as Ne, ac as St, ad as $e, ae as Nt, af as wt, ag as me, ah as Dt, ai as Pe, B as L, aj as et, ak as tt, al as rt, O as ne, Z as at, _ as we, $ as De, a0 as Ee, a1 as Fe, a2 as Ie, am as st, an as Et, ao as Ft, ap as We, aq as It, ar as He, as as Vt, at as Ve, d as Tt, L as nt, au as _t, av as At } from "./switch-BeZW-HnS.js";
4
+ import { b7 as Lt, az as qt, b8 as ce, b9 as Mt, ba as Ae, bb as Ot, bc as zt, bd as Ut, aG as B, be as Bt, bf as jt, bg as Rt, bh as ot, bi as lt, u as Qt, bj as $t, bk as Pt, bl as Wt, bm as Ht, bn as it, bo as dt, bp as Kt, bq as Yt, br as Gt, bs as Xt, bt as Jt, aZ as Zt, bu as er, bv as tr, bw as ct, bx as rr } from "./index-DAoS4BNU.js";
5
5
  import { jsx as r, jsxs as p, Fragment as re } from "react/jsx-runtime";
6
- import "./saved-temporal-bucket-format-DiZdQXOL.js";
7
- import "./validators-DeMXwRON.js";
8
- import "./analyze-result-contract-GHKFwThg.js";
6
+ import "./saved-temporal-bucket-format-SGAV0ivR.js";
7
+ import "./validators-DEmd8Sin.js";
8
+ import "./analyze-result-contract-BbRJ-C06.js";
9
9
  import "../value-format-preferences/index.js";
10
10
  import { C as Ke } from "./search-BHsQIWBV.js";
11
- import { f as ar } from "./index-B3ZugihZ.js";
11
+ import { f as ar } from "./index-Ca784dpx.js";
12
12
  import { S as ut } from "./save-DgMfP0j8.js";
13
13
  /**
14
14
  * @license lucide-react v0.453.0 - ISC
@@ -0,0 +1,4 @@
1
+ "use strict";var bt=Object.defineProperty;var It=(e,r,t)=>r in e?bt(e,r,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[r]=t;var x=(e,r,t)=>It(e,typeof r!="symbol"?r+"":r,t);const E=require("./pivot-result-lifecycle-DmcF1ris.cjs"),pe=require("../value-format-preferences/index.cjs"),W=require("./validators-BDYprKI9.cjs");require("./analyze-result-contract-LPDNldic.cjs");const V=require("./saved-temporal-bucket-format-CFfWXRl9.cjs"),D=require("./pivot-result-identity-Bb4EixVN.cjs"),ke=require("./temporal-bucket-contract-D2-93DGr.cjs"),Y=require("./temporal-bucket-DHY1y9lq.cjs"),L=require("./canonical-result-keys-BA0HCP4e.cjs");require("./temporal-bucket-authoring-o3Emn05L.cjs");const Fe=require("./raw-temporal-contract-BtjH_G-d.cjs"),Ae=`import pandas as pd
2
+ df = pd.DataFrame(data) # 'data' contains the query result
3
+ result = df.to_dict('records') # must return 'result' as [dict] type
4
+ `;function Ct(e){return{databaseName:(e==null?void 0:e.lastSelectedDatabase)||"",schemaName:(e==null?void 0:e.lastSelectedSchema)||"",tableName:(e==null?void 0:e.lastSelectedTable)||"",datamodelId:(e==null?void 0:e.datamodelId)||""}}function q(e){return e===Ae?"":e}function J(e,r=e.config){return L.resolveTemporalResultOwner({hasExecutableConfig:V.hasValidCardConfig(r),sql:e.sql,normalizedPython:q(e.python||"")})}class Be extends Error{constructor(t){super(`ambiguous_temporal_grain: Temporal field "${t}" has saved presentation but no valid grouping grain. Reconfigure and resave the field.`);x(this,"code","ambiguous_temporal_grain");x(this,"fieldId");this.name="AmbiguousGroupedTemporalGrainError",this.fieldId=t}}function Tt(e){return V.hasSavedTemporalBucketPresentation(e)||e.semanticTemporalPresentation!=null}function Pe(e){if(!e.id||!["date","datetime"].includes(W.normalizeAnalyticsCatalogDataType(e.dataType)))return;if(W.isSemaphorTimeGrain(e.granularity))return e;if(!Tt(e))return;if(!V.readSavedTemporalBucketFormat({fieldId:e.id,dataType:e.dataType,granularity:e.granularity,format:e.format,dateFormat:e.dateFormat,customFormat:e.customFormat}).ok)throw new Be(e.id);return{...e,granularity:"day"}}function ye(e){const r=e.cardConfig??e.card.config;if(!r||!e.supportsCardType(e.card.type)||L.resolveTemporalResultOwner({hasExecutableConfig:V.hasValidCardConfig(r),sql:e.card.sql,normalizedPython:q(e.card.python||"")})!=="config")return;const t=[...(r.groupByColumns||[]).map(n=>({...n,role:"groupby"})),...e.card.type==="pivotTable"?(r.pivotByColumns||[]).map(n=>({...n,role:"pivotby"})):[]];return{cardType:e.card.type,cardConfig:r,fields:t.flatMap(n=>{const o=Pe(n);return o?[o]:[]})}}function wt(e){return ye({...e,supportsCardType:r=>r==="table"})}function Et(e){return ye({...e,supportsCardType:L.isSemaphorCartesianChartType})}function De(e){return ye({...e,supportsCardType:r=>r!=="detailTable"&&L.supportsCanonicalDashboardTemporalResult(r)})}const Se=new WeakMap;function Me(e){const r=Se.get(e);if(r)return r;const t=E.parseCanonicalPivotResultTransport(e);return Se.set(e,t),t}function G(e,r){const t=e??[],n=r??[];return t.length===n.length&&t.every((o,a)=>o===n[a])}function Oe(e,r){const t=E.derivePivotResultContractExpectations({groupByFields:r.groupByColumns,metricFields:r.metricColumns,pivotByFields:r.pivotByColumns,detailFields:r.detailColumns});return G(e.expectedRoleFieldIds.groupby,t.expectedRoleFieldIds.groupby)&&G(e.expectedRoleFieldIds.metric,t.expectedRoleFieldIds.metric)&&G(e.expectedRoleFieldIds.pivotby,t.expectedRoleFieldIds.pivotby)&&G(e.expectedRoleFieldIds.detail,t.expectedRoleFieldIds.detail)&&G(e.expectedMetricAliases,t.expectedMetricAliases)}class $t extends Error{constructor(t){super(`missing_resolved_temporal_format: Saved presentation is missing temporal field "${t.fieldId}" for card "${t.cardId}". Resave the report or Briefing to capture the current dashboard presentation.`);x(this,"code","missing_resolved_temporal_format");x(this,"deliveryBlocking",!0);x(this,"dashboardId");x(this,"cardId");x(this,"fieldId");this.name="MissingResolvedTemporalPresentationError",this.dashboardId=t.dashboardId,this.cardId=t.cardId,this.fieldId=t.fieldId}}class ce extends Error{constructor(t){super(`missing_temporal_bucket_metadata: Result column "${t.columnKey}" is missing temporal bucket metadata for field "${t.fieldId}" on card "${t.cardId}". Refresh the report and resave the delivery if the problem persists.`);x(this,"code","missing_temporal_bucket_metadata");x(this,"deliveryBlocking",!0);x(this,"cardId");x(this,"fieldId");x(this,"columnKey");this.name="MissingTemporalResultMetadataError",this.cardId=t.cardId,this.fieldId=t.fieldId,this.columnKey=t.columnKey}}class O extends Error{constructor(t,n,o){super(`${t}: ${n}`);x(this,"deliveryBlocking",!0);this.code=t,this.context=o,this.name="DashboardTemporalBoundaryError"}}function Ke(e,r){return`${r}:${e}`}function Ne(e){var r,t;return(t=(r=e.presentation)==null?void 0:r.byFieldRole)==null?void 0:t.get(Ke(e.fieldId,e.role))}function kt(e){var t;if((((t=e.cardConfig.metricColumns)==null?void 0:t.length)||0)>0||e.binding.role!=="metric")return!1;const r=e.binding.outputKey||e.binding.rawKey;return e.columns.some(n=>{var o;return n.role==="measure"&&n.dataType==="number"&&(n.key===r||((o=n.pivotIdentity)==null?void 0:o.metricId)===W.SEMAPHOR_GENERATED_COUNT_METRIC_ID)})}function St(e,r){return!r||r.byColumnKey.size===0?e.map(t=>({...t})):e.map(t=>{const n={...t};return r.byColumnKey.forEach((o,a)=>{Object.prototype.hasOwnProperty.call(t,a)&&(n[a]=he({value:t[a],presentation:o}))}),n})}function _t(e){var p;if(!e.result||typeof e.result!="object")return!1;const r=e.result;if(e.expectedResultOwner!==void 0&&r.resultOwner!==e.expectedResultOwner)return!1;const t=e.activation;if(!t||t.cardType!=="pivotTable"&&t.fields.length===0)return!0;const n=Array.isArray(r.records)?r.records.length:void 0,o=(t.cardConfig.pivotByColumns||[]).map(d=>d.id);if(t.cardType==="pivotTable")try{const d=Me(r);if(!Oe(d.pivotResultContract,t.cardConfig))return!1;if(d.pivotResultState==="loaded_empty")return!0;const v=d.columns.filter(C=>d.pivotResultContract.columnKinds[C.key]==="pivot_metric"),h=v.filter(C=>{var g;return(((g=C.pivotIdentity)==null?void 0:g.members.length)??0)>0}),I=v.length>0&&v.every(C=>{var g;return((g=C.pivotIdentity)==null?void 0:g.members.length)===0&&D.isPivotEmptyTupleAllowed({expectedPivotFieldIds:o,classification:d.pivotResultContract.columnClassifications[C.key]})});return t.fields.every(C=>{var S;const g=D.resolveQueryColumnKeyMapEntry(d.columnKeyMap,C.id,C.role);if(!g)return!1;if(g.role==="pivotby"){const F=h.flatMap(z=>{var j;return((j=z.pivotIdentity)==null?void 0:j.members.filter(vt=>vt.fieldId===C.id))??[]});return F.length===0?I:F.every(z=>{var j;return((j=z.temporalBucket)==null?void 0:j.granularity)===C.granularity})}const $=d.columns.find(F=>F.key===(g.outputKey||g.rawKey));return((S=$==null?void 0:$.temporalBucket)==null?void 0:S.granularity)===C.granularity})}catch(d){if(d instanceof E.PivotResultLifecycleError)return!1;throw d}if(n===0)return!0;const a=r.columnKeyMap;if(!a||!a.byRole||typeof a.byRole!="object"||Array.isArray(a.byRole))return!1;const i=[...(t.cardConfig.groupByColumns||[]).map(d=>({field:d,role:"groupby"})),...(t.cardConfig.metricColumns||[]).map(d=>({field:d,role:"metric"})),...(t.cardConfig.pivotByColumns||[]).map(d=>({field:d,role:"pivotby"})),...(t.cardConfig.detailColumns||[]).map(d=>({field:d,role:"detail"}))],c=new Set(i.map(({field:d,role:v})=>`${v}:${d.id}`)),m=new Map((r.columns||[]).map(d=>[d.key,d])),l=D.resolveQueryColumnKeyMapEntry(a,W.SEMAPHOR_GENERATED_COUNT_METRIC_ID,"metric");if(l){if(!kt({cardConfig:t.cardConfig,binding:l,columns:r.columns||[]}))return!1;c.add(`metric:${W.SEMAPHOR_GENERATED_COUNT_METRIC_ID}`)}const s=Object.entries(a.byRole).flatMap(([d,v])=>Object.keys(v||{}).map(h=>`${d}:${h}`));if(s.length!==c.size||s.some(d=>!c.has(d))||i.some(({field:d,role:v})=>!D.resolveQueryColumnKeyMapEntry(a,d.id,v)))return!1;try{D.requirePivotResultColumnIdentities((r.columns||[]).map(d=>({key:d.key,pivotIdentity:d.pivotIdentity})),{expectedPivotFieldIds:o,columnClassifications:r.columnMetadata})}catch(d){if(d instanceof D.PivotResultIdentityError)return!1;throw d}const u=(r.columns||[]).filter(d=>{const v=d.pivotIdentity;return!!(v&&v.members.length>0)});return n!==0&&((p=t.cardConfig.pivotByColumns)!=null&&p.length)&&u.length===0?!1:t.fields.every(d=>{var I;const v=D.resolveQueryColumnKeyMapEntry(a,d.id,d.role);if(!v)return!1;if(v.role==="pivotby"){const g=u.flatMap($=>{var S;return((S=$.pivotIdentity)==null?void 0:S.members)??[]}).filter($=>$.fieldId===d.id);return u.length===0?n===0:g.length>0&&g.every($=>{var S;return((S=$.temporalBucket)==null?void 0:S.granularity)===d.granularity})}const h=m.get(v.outputKey||v.rawKey);return((I=h==null?void 0:h.temporalBucket)==null?void 0:I.granularity)===d.granularity})}function re(e,r){const t=e.semanticTemporalPresentation,n=r==="card"?{format:e.format,dateFormat:e.dateFormat}:{format:t==null?void 0:t.format};if(!V.hasSavedTemporalBucketPresentation(n))return;const o=V.readSavedTemporalBucketFormat({fieldId:e.id,dataType:e.dataType,granularity:r==="semantic"?t==null?void 0:t.granularity:e.granularity,...r==="card"?{format:e.format,dateFormat:e.dateFormat,customFormat:e.customFormat}:{format:t==null?void 0:t.format}});if(!o.ok)throw new Error(o.error.code);return o.format}function xt(e,r,t=pe.DEFAULT_RESOLVED_VALUE_FORMAT_PREFERENCES){const n=re(e,"card"),o=re(e,"semantic"),a=e.semanticTemporalPresentation;return Y.resolveTemporalBucketPresentation({metadata:r,...n?{cardFormat:n}:{},...o&&a?{semanticFormat:{granularity:a.granularity,format:o}}:{},locale:t.locale,styles:{dateStyle:t.dateStyle,dateTime:t.dateTime}})}function Ve(e,r=Y.DEFAULT_RESOLVED_TEMPORAL_STYLE_SET,t="en-US"){var i;const n=re(e,"card"),o=((i=e.semanticTemporalPresentation)==null?void 0:i.granularity)===e.granularity?re(e,"semantic"):void 0,a=n&&n.presentation.mode!=="auto"?n:o&&o.presentation.mode!=="auto"?o:{presentation:{mode:"auto"}};return a.presentation.mode==="auto"?{type:"temporal_bucket",locale:t,presentation:{mode:"auto",styles:r}}:{type:"temporal_bucket",locale:t,presentation:a.presentation}}function Rt(e){const r=e.activation;if(!r)return{byColumnKey:new Map,byFieldId:new Map,byFieldRole:new Map};if(e.resultRowCount===0)return{byColumnKey:new Map,byFieldId:new Map,byFieldRole:new Map};const t=new Map((e.columns||[]).map(l=>[l.key,l])),n=new Map,o=new Map,a=new Map,i=r.fields.reduce((l,s)=>(l.set(s.id,(l.get(s.id)||0)+1),l),new Map),c=(l,s)=>{a.set(Ke(l.id,l.role),s),i.get(l.id)===1&&o.set(l.id,s)},m=(l,s,u)=>{if(s.granularity!==l.granularity)throw new O("invalid_temporal_bucket_metadata",`Result identity "${u}" declares ${s.granularity} buckets for active ${l.granularity} field "${l.id}".`,{cardId:e.card.id,fieldId:l.id,columnKey:u});const p=e.executionSnapshot&&e.dashboardId?E.findResolvedTemporalBucketFormat({snapshot:e.executionSnapshot,scope:{dashboardId:e.dashboardId,cardId:e.card.id,...e.attachmentIndex!==void 0?{attachmentIndex:e.attachmentIndex}:{}},target:{kind:"field",fieldId:l.id,role:l.role}}):void 0;if(e.executionSnapshot&&!p)throw new $t({dashboardId:e.dashboardId,cardId:e.card.id,fieldId:l.id});return{columnKey:u,fieldId:l.id,role:l.role,metadata:s,resolved:p?Y.resolveTemporalBucketPresentation({metadata:s,cardFormat:p,locale:p.locale,...p.presentation.mode==="auto"?{styles:p.presentation.styles}:{}}):xt(l,s,e.valueFormatPreferences??pe.DEFAULT_RESOLVED_VALUE_FORMAT_PREFERENCES)}};for(const l of r.fields){const s=D.resolveQueryColumnKeyMapEntry(e.columnKeyMap,l.id,l.role);if(!s){if(e.columns===void 0&&e.columnKeyMap===void 0&&(e.resultRowCount===void 0||e.resultRowCount===0))continue;throw new O("missing_temporal_column_binding",`Activated temporal field "${l.id}" has no authoritative result-column binding.`,{cardId:e.card.id,fieldId:l.id,columnKey:l.name})}if(s.role==="pivotby"){const h=(e.columns||[]).filter(S=>S.pivotIdentity!==void 0),I=h.flatMap(S=>{var F;return(((F=S.pivotIdentity)==null?void 0:F.members)||[]).filter(z=>z.fieldId===l.id).map(z=>({column:S,member:z}))});if(I.length===0){if(h.length===0&&(e.card.type!=="pivotTable"||e.resultRowCount===0))continue;throw new ce({cardId:e.card.id,fieldId:l.id,columnKey:s.outputKey||s.rawKey})}const C=I[0];if(!C.member.temporalBucket)throw new ce({cardId:e.card.id,fieldId:l.id,columnKey:C.column.key});const g=ke.validateTemporalBucketMetadata(C.member.temporalBucket);if(!g.ok||!g.value)throw new O("invalid_temporal_bucket_metadata",g.ok?`Pivot result column "${C.column.key}" has no validated temporal bucket metadata.`:g.error.message,{cardId:e.card.id,fieldId:l.id,columnKey:C.column.key});const $=m(l,g.value,C.column.key);for(const{column:S,member:F}of I)if(!F.temporalBucket||JSON.stringify(F.temporalBucket)!==JSON.stringify(C.member.temporalBucket))throw new O("invalid_temporal_bucket_metadata",`Pivot result column "${S.key}" has contradictory bucket metadata for field "${l.id}".`,{cardId:e.card.id,fieldId:l.id,columnKey:S.key});c(l,$);continue}const u=s.outputKey||s.rawKey,p=t.get(u);if(!(p!=null&&p.temporalBucket))throw new ce({cardId:e.card.id,fieldId:l.id,columnKey:u});const d=ke.validateTemporalBucketResultColumn(p,{metadataRequired:!0});if(!d.ok||!d.value)throw new O("invalid_temporal_bucket_metadata",d.ok?`Result column "${u}" has no validated temporal bucket metadata.`:d.error.message,{cardId:e.card.id,fieldId:l.id,columnKey:u});const v=m(l,d.value,u);n.set(u,v),c(l,v)}return{byColumnKey:n,byFieldId:o,byFieldRole:a}}function Ft(e){var t,n;const r=e.role?Ne({presentation:e.presentation,fieldId:e.fieldId,role:e.role}):(n=(t=e.presentation)==null?void 0:t.byFieldId)==null?void 0:n.get(e.fieldId);return r?he({value:e.value,presentation:r}):e.value===null||e.value===void 0?"":String(e.value)}function he(e){if(e.value===null||e.value===void 0)return"(Blank)";if(typeof e.value!="string")throw new O("invalid_temporal_bucket_value",`Canonical temporal column "${e.presentation.columnKey}" must contain a string or null.`,{fieldId:e.presentation.fieldId,columnKey:e.presentation.columnKey});try{return Y.formatTemporalBucket({value:e.value,metadata:e.presentation.metadata,format:e.presentation.resolved.format})}catch(r){throw r instanceof Y.TemporalBucketContractError?new O(r.code,r.message,{fieldId:e.presentation.fieldId,columnKey:e.presentation.columnKey}):r}}class _ extends Error{constructor(r,t,n){super(`${r}: ${t}`),this.code=r,this.context=n,Object.setPrototypeOf(this,_.prototype),this.name="RawTemporalPresentationBoundaryError"}}function ze(){return{type:"raw_temporal",presentation:{mode:"auto"}}}function At(e){if(e.locale||e.relative||e.timezone&&e.timezone!=="auto"||e.sourceTimezone&&e.sourceTimezone!=="auto"||e.prefix||e.suffix)throw new _("invalid_raw_temporal_format","Activated raw temporal presentation contains unsupported locale, relative-time, timezone, prefix, or suffix settings.")}function ge(e){const r=e.format;if((r==null?void 0:r.type)==="date"&&(At(r),r.pattern))return{type:"raw_temporal",presentation:{mode:"pattern",dialect:"semaphor_tokens",pattern:r.pattern}};if(r)throw new _("invalid_raw_temporal_format",`Raw temporal detail field "${e.id}" has an incompatible authored format.`,{fieldId:e.id});if(e.dateFormat==="custom"){if(!e.customFormat)throw new _("invalid_raw_temporal_format",`Raw temporal detail field "${e.id}" selects a custom pattern but has no customFormat.`,{fieldId:e.id});return{type:"raw_temporal",presentation:{mode:"pattern",dialect:"semaphor_tokens",pattern:e.customFormat}}}return e.dateFormat?{type:"raw_temporal",presentation:{mode:"pattern",dialect:"semaphor_tokens",pattern:e.dateFormat}}:ze()}function ae(e){if(e!=null&&e.useRelativeTime)return;if(!e)return ze();if(e.useCustomFormat&&!e.customFormat)throw new _("invalid_raw_temporal_format","Declared SQL temporal presentation selects a custom pattern but has no customFormat.");const r=e.useCustomFormat&&e.customFormat?e.customFormat:e.format,t=e.timezone,n=e.sourceTimezone,o=t&&t!=="auto"?{timezone:t}:void 0,a={sourceTimezone:n&&n!=="auto"?n:"UTC"};return r?{type:"raw_temporal",...o,...a,presentation:{mode:"pattern",dialect:"date_fns",pattern:r}}:{type:"raw_temporal",...o,...a,presentation:{mode:"auto"}}}function Bt(e){const r=ae(e.settings);if(!r)throw new _("invalid_raw_temporal_format","Relative-time SQL presentation does not have an absolute date preview.");const t=e.valueKind??"date",n={kind:"raw_temporal",valueKind:t},o=e.value??(t==="date"?"2023-05-15":t==="wall_datetime"?"2023-05-15T14:30:45":"2023-05-15T14:30:45Z"),a=E.prepareRawTemporalFormatter({metadata:n,format:E.resolveRawTemporalFormat({format:r,preferences:e.preferences,calendar:{tz:e.calendarTimezone}})})(o);if(!a.ok)throw new _("invalid_raw_temporal_format",a.diagnostic.message);return a.text}function Le(e){var t;const r=e.effectiveCardConfig??e.card.config;return J(e.card,r)==="freeform"&&!!((t=e.card.sql)!=null&&t.trim())&&!q(e.card.python||"").trim()}function Pt(){return{activatedColumnKeys:new Set,byColumnKey:new Map,byFieldId:new Map}}function ve(e){var r;return e.cardType==="detailTable"&&e.resultOwner==="config"?(((r=e.effectiveCardConfig)==null?void 0:r.detailColumns)||[]).filter(t=>t.dateValueMode==="canonical"):[]}function ue(e,r){return e===void 0?{kind:"invalid",error:r}:{kind:"invalid",error:e instanceof _?e:e instanceof E.RawTemporalFormatContractError?new _(e.code,e.message,r.context):new _(r.code,e instanceof Error?e.message:r.message,r.context)}}function Dt(e){const r=ve(e);if(r.length===0)return{kind:"inactive"};if(!e.result)return{kind:"loading"};const{records:t,columns:n,columnKeyMap:o}=e.result;if(!Array.isArray(t)||!Array.isArray(n)||!o)return ue(void 0,new _("missing_raw_temporal_result_contract","Activated raw temporal detail results require records, columns, and columnKeyMap atomically."));try{const a=new Map,i=new Map;for(const m of r){const l=D.resolveQueryColumnKeyMapEntry(o,m.id,"detail");if(!l||l.role!=="detail"||typeof l.rawKey!="string"||l.rawKey.trim().length===0||l.outputKey!==void 0&&(typeof l.outputKey!="string"||l.outputKey.trim().length===0))throw new _("missing_raw_temporal_column_binding",`Raw temporal detail field "${m.id}" has no valid exact detail result binding.`,{fieldId:m.id});const s=l.outputKey??l.rawKey,u=n.find(h=>h.key===s);if(!u)throw new _("missing_raw_temporal_result_contract",`Raw temporal result column "${s}" is absent.`,{fieldId:m.id,columnKey:s});const p=Fe.validateRawTemporalResultColumn(u,{metadataRequired:!0});if(!p)throw new _("invalid_raw_temporal_metadata",`Raw temporal result column "${s}" has no metadata.`,{fieldId:m.id,columnKey:s});const d=E.resolveRawTemporalFormat({format:ge(m),preferences:e.preferences,calendar:e.calendar}),v={fieldId:m.id,columnKey:s,metadata:p,format:d,formatValue:E.prepareRawTemporalFormatter({metadata:p,format:d})};for(let h=0;h<t.length;h+=1)if(!Object.prototype.hasOwnProperty.call(t[h],s)||t[h][s]===void 0)throw new _("missing_raw_temporal_result_contract",`Raw temporal result row ${h} is missing column "${s}".`,{fieldId:m.id,columnKey:s});a.set(s,v),i.set(m.id,v)}const c={activatedColumnKeys:new Set(a.keys()),byColumnKey:a,byFieldId:i};return t.length===0?{kind:"loaded_empty",presentation:c}:{kind:"loaded_valid",presentation:c}}catch(a){return ue(a,new _("invalid_raw_temporal_metadata","Activated raw temporal result metadata is invalid."))}}function Ue(e){var n,o;const r=e.effectiveCardConfig??e.card.config,t=J(e.card,r);return e.card.type==="detailTable"&&t==="config"?ve({cardType:e.card.type,resultOwner:t,effectiveCardConfig:r}).length>0&&e.records!==void 0&&(!e.columns||!e.columnKeyMap)?{kind:"invalid",error:new _("missing_raw_temporal_result_contract","Activated raw temporal detail results require records, columns, and columnKeyMap atomically.")}:_e(Dt({cardType:e.card.type,resultOwner:t,effectiveCardConfig:r,result:e.records===void 0||!e.columns||!e.columnKeyMap?void 0:{records:e.records,columns:e.columns,columnKeyMap:e.columnKeyMap},preferences:e.preferences,calendar:e.calendar}),e):_e(Mt({resultOwner:t,sql:e.card.sql,normalizedPython:q(e.card.python||""),records:e.records,columns:e.columns,columnSettings:(o=(n=e.card.preferences)==null?void 0:n.tablePrefs)==null?void 0:o.columnSettingsMap,preferences:e.preferences,calendar:e.calendar}),e)}function qe(e){var n,o;const r=e.effectiveCardConfig??e.card.config,t=J(e.card,r);return ve({cardType:e.card.type,resultOwner:t,effectiveCardConfig:r}).length>0?!0:Le(e)?Object.values(((o=(n=e.card.preferences)==null?void 0:n.tablePrefs)==null?void 0:o.columnSettingsMap)||{}).some(a=>{var i;return a.type==="date"&&!((i=a.dateFormat)!=null&&i.useRelativeTime)}):!1}function _e(e,r){if(!r.executionSnapshot||e.kind==="inactive"||e.kind==="loading"||e.kind==="invalid")return e;if(!r.dashboardId)return{kind:"invalid",error:new _("missing_raw_temporal_result_contract","A dashboard ID is required to resolve the captured raw temporal presentation.")};const t=new Map,n=new Map;for(const o of e.presentation.activatedColumnKeys){const a=E.findResolvedRawTemporalFormat({snapshot:r.executionSnapshot,scope:{dashboardId:r.dashboardId,cardId:r.card.id,...r.attachmentIndex!==void 0?{attachmentIndex:r.attachmentIndex}:{}},target:{kind:"column",columnKey:o}});if(!a)return{kind:"invalid",error:new E.MissingResolvedRawTemporalFormatError(o)};const i=e.presentation.byColumnKey.get(o);if(!i)continue;const c={...i,format:a,formatValue:E.prepareRawTemporalFormatter({metadata:i.metadata,format:a})};t.set(i.columnKey,c),i.fieldId&&n.set(i.fieldId,c)}return{...e,presentation:{activatedColumnKeys:e.presentation.activatedColumnKeys,byColumnKey:t,byFieldId:n}}}function Mt(e){var t,n;if(e.resultOwner!=="freeform"||!((t=e.sql)!=null&&t.trim())||(n=e.normalizedPython)!=null&&n.trim())return{kind:"inactive"};const r=Object.entries(e.columnSettings||{}).filter(([,o])=>{var a;return o.type==="date"&&!((a=o.dateFormat)!=null&&a.useRelativeTime)});if(r.length===0)return{kind:"inactive"};if(!e.records)return{kind:"loading"};try{const o=new Map,a=new Set(r.map(([l])=>l)),i=new Map,c=[...e.columns||[]];for(const[l,s]of r){const u=ae(s.dateFormat);if(!u)continue;const p=E.classifyDeclaredSqlTemporalColumn({columnKey:l,values:e.records.map(I=>{if(!Object.prototype.hasOwnProperty.call(I,l))throw new _("missing_raw_temporal_result_contract",`Declared SQL temporal column "${l}" is absent from a physical result row.`,{columnKey:l});const C=I[l];return C===null||typeof C=="string"?C:String(C)})});if(i.set(l,p),p.status!=="classified")continue;let d=c.findIndex(I=>I.key===l);if(e.columns&&d<0)throw new _("missing_raw_temporal_result_contract",`Classified SQL temporal column "${l}" is absent from result columns.`,{columnKey:l});d<0&&(d=c.length,c.push({key:l,name:l,label:l,role:"dimension",dataType:"string"}));const v={...c[d],role:"date",dataType:p.metadata.valueKind==="date"?"date":"datetime",rawTemporal:p.metadata};Fe.validateRawTemporalResultColumn(v,{metadataRequired:!0}),c[d]=v;const h=E.resolveRawTemporalFormat({format:u,preferences:e.preferences,calendar:e.calendar});o.set(l,{columnKey:l,metadata:p.metadata,format:h,formatValue:E.prepareRawTemporalFormatter({metadata:p.metadata,format:h})})}const m={...Pt(),activatedColumnKeys:a,byColumnKey:o};return e.records.length===0?{kind:"loaded_empty",presentation:m,adaptedColumns:c,sqlClassifications:i}:{kind:"loaded_valid",presentation:m,adaptedColumns:c,sqlClassifications:i}}catch(o){return ue(o,new _("invalid_raw_temporal_format","Declared SQL raw temporal presentation is invalid."))}}function Ot(e){if(e.value!==null&&typeof e.value!="string")return{value:e.value,label:String(e.value),result:{ok:!1,text:String(e.value),diagnostic:{code:"invalid_raw_temporal_value",message:`Raw temporal column "${e.presentation.columnKey}" must contain a string or null.`}}};const r=e.presentation.formatValue(e.value);return{value:e.value,label:r.text,result:r}}function Kt(e){if(!e.result||typeof e.result!="object")return!1;const r=e.result;if(e.expectedResultOwner!==void 0&&r.resultOwner!==e.expectedResultOwner)return!1;if(!qe({card:e.card,effectiveCardConfig:e.effectiveCardConfig}))return!0;if(!Array.isArray(r.records))return!1;const t=Ue({card:e.card,effectiveCardConfig:e.effectiveCardConfig,records:r.records,columns:r.columns,columnKeyMap:r.columnKeyMap,preferences:pe.DEFAULT_RESOLVED_VALUE_FORMAT_PREFERENCES,calendar:{tz:"UTC"}});return t.kind==="inactive"||t.kind==="loaded_empty"||t.kind==="loaded_valid"}function xe(e){return!e||typeof e!="object"?!1:Array.isArray(e.cards)}function je(e){if(!e)return null;if(typeof e=="string")try{const r=JSON.parse(e);return xe(r)?r:null}catch{return null}return xe(e)?e:null}function be(e){var r;return(r=e==null?void 0:e.cards)!=null&&r.length?e.activeCardId&&e.cards.find(t=>t.id===e.activeCardId)||e.cards[0]:null}function Nt(e){var t;const r=(e==null?void 0:e.frameObject)??((t=e==null?void 0:e.visual)==null?void 0:t.frameObject);return be(je(r))}function ie(e){if(!(e!=null&&e.expectedType))return"table";const r=Array.isArray(e.expectedType)?e.expectedType[0]:e.expectedType;return zt(r)?r:"table"}const Vt=["bar","horizontalBar","line","area","stackedArea","combo","pie","doughnut","radar","polarArea","bubble","scatter","stackedBar","stackedLine","table","pivotTable","aggregateTable","detailTable","tableBuilder","kpi","pyramid","tornado","range","text","map","funnel","bullet","heatmap","treemap","custom"];function zt(e){return Vt.includes(e)}function Q(e){const r=e.position;if(typeof r=="number")return r;if(typeof r=="string"){const t=r.match(/\d+/);if(t){const n=Number(t[0]);if(!Number.isNaN(n))return n}}return Number.POSITIVE_INFINITY}function H(e){if(typeof e=="number")return{kind:"number",start:e,end:e};if(typeof e=="string"){const r=e.match(/^(\d+)$/);if(r){const o=Number(r[1]);return{kind:"number",start:o,end:o}}const t=e.match(/^(\d+)-(\d+)$/);if(t){const o=Number(t[1]),a=Number(t[2]);return{kind:"range",start:o,end:a}}const n=e.match(/^(\d+)\+$/);if(n)return{kind:"dynamic",start:Number(n[1]),end:Number.POSITIVE_INFINITY}}return null}function Ge(e){return!e||e.length===0?void 0:[...e].sort((t,n)=>Q(t)-Q(n))[0]}function Ie(e,r){if(!e||e.length===0)return;const t=[],n=[],o=[];e.forEach(s=>{const u=H(s.position);u&&(u.kind==="number"?t.push(s):u.kind==="range"?n.push(s):u.kind==="dynamic"&&o.push(s))});const a=t.find(s=>{const u=H(s.position);return(u==null?void 0:u.kind)==="number"&&u.start===r});if(a)return a;const c=n.sort((s,u)=>Q(s)-Q(u)).find(s=>{const u=H(s.position);return(u==null?void 0:u.kind)==="range"&&r>=u.start&&r<=u.end});if(c)return c;const l=o.map(s=>({slot:s,parsed:H(s.position)})).filter(s=>{var u;return((u=s.parsed)==null?void 0:u.kind)==="dynamic"}).sort((s,u)=>{var p,d;return(((p=s.parsed)==null?void 0:p.start)??0)-(((d=u.parsed)==null?void 0:d.start)??0)}).filter(s=>{var u;return r>=(((u=s.parsed)==null?void 0:u.start)??0)}).sort((s,u)=>{var p,d;return(((p=u.parsed)==null?void 0:p.start)??0)-(((d=s.parsed)==null?void 0:d.start)??0)})[0];return l==null?void 0:l.slot}function Lt(e,r){const t=Ie(e,r);if(t)return ie(t)}function He(e,r){var n;const t=(n=e==null?void 0:e.customCardPreferences)==null?void 0:n.slotIndex;return typeof t=="number"?t:r}function fe(e,r){var t;if(!((t=e==null?void 0:e.customCardPreferences)!=null&&t.url))return!1;if(e.type==="custom"||e.customCardPreferences.visualType==="multiple"||e.customCardPreferences.dataInputCardIds||(e.customCardPreferences.minInputs||0)>1||(e.customCardPreferences.maxInputs||0)>1)return!0;if(r&&r.length>1){const n=r.filter(o=>{var a;return typeof((a=o.customCardPreferences)==null?void 0:a.slotIndex)=="number"});if(n.length>1&&n.some(o=>o.id!==e.id))return!0}return!1}function We(e){const r=[];let t=-1;e.forEach((n,o)=>{const a=He(n,o);a>t&&(t=a),r[a]=n??null});for(let n=0;n<=t;n+=1)n in r||(r[n]=null);return r}function Ut(e){return e.map((r,t)=>!r.customCardPreferences||r.customCardPreferences.slotIndex===t?r:{...r,customCardPreferences:{...r.customCardPreferences,slotIndex:t}})}function qt(e){const r=Ge(e);if(r)return ie(r)}function jt(e,r,t){if(!e)return;const n=Lt(t,r);return e.type==="custom"&&n?n:e.type}function Gt(e,r,t){var v;const n={dataSource:t.dataSource,connectionId:t.connectionId,lastSelectedDatabase:t.lastSelectedDatabase,lastSelectedSchema:t.lastSelectedSchema,lastSelectedTable:t.lastSelectedTable,lastSelectedDatamodelId:t.lastSelectedDatamodelId,datamodelId:t.datamodelId},o={type:"component",visualType:"multiple",url:r.url,componentName:r.name,icon:r.icon,pluginChartType:r.chartType,minInputs:r.minInputs,maxInputs:r.maxInputs},a=r.minInputs||1,c=e.map(h=>({slot:h,parsed:H(h.position)})).filter(h=>h.parsed!==null).reduce((h,I)=>{const C=I.parsed.end;return Number.isFinite(C)?Math.max(h,C):h},-1),m=Math.max(a,c+1),l=Ge(e),s=l?Q(l):0;let u=!1;const p=[];for(let h=0;h<m;h+=1){const I=Ie(e,h),C=ie(I),g=!u&&h===s,$=h,S={...n,id:V.v4(),title:(g?l==null?void 0:l.label:I==null?void 0:I.label)||`Tab ${h+1}`,tabTitle:(g?l==null?void 0:l.label:I==null?void 0:I.label)||`Tab ${h+1}`,description:(g?l==null?void 0:l.description:I==null?void 0:I.description)||"",type:C,sql:"",preferences:{onClickFilter:[{columnIndex:0,expression:""}]},...g&&{customCardPreferences:{...o,slotIndex:$}},...!g&&{customCardPreferences:{slotIndex:$}}};g&&(u=!0),p.push(S)}if(!u&&p.length>0){const h=((v=p[0].customCardPreferences)==null?void 0:v.slotIndex)??0;p[0]={...p[0],type:p[0].type,customCardPreferences:{...o,slotIndex:h}}}const d=p.findIndex(h=>{var I;return!!((I=h.customCardPreferences)!=null&&I.url)});if(d>0){const[h]=p.splice(d,1);p.unshift(h)}return p}function Ye({frame:e,configCard:r,isMultiInputVisual:t}){var o;if(!t||!r)return e.cards;const n=(o=r.customCardPreferences)==null?void 0:o.dataInputCardIds;return n?Object.keys(n).sort((a,i)=>Number(a)-Number(i)).map(a=>{var c;const i=(c=n[a])==null?void 0:c.cardId;return e.cards.find(m=>m.id===i)||null}):e.cards}function Qe(e,r){return r&&fe(r,e.cards)?r:e.cards.find(t=>fe(t,e.cards))||null}function Je(e,r){var o,a;if(!e)return null;const t=r==null?void 0:r.visualType;if(t)return t;if(r!=null&&r.slots&&r.slots.length>0||((r==null?void 0:r.minInputs)||0)>1||((r==null?void 0:r.maxInputs)||0)>1||((r==null?void 0:r.dataInputs)||[]).length>1)return"multiple";const n=(o=e.customCardPreferences)==null?void 0:o.visualType;return n||((a=e.customCardPreferences)!=null&&a.dataInputCardIds?"multiple":null)}function Ht(e){return e.visualType==="multiple"||e.slots&&e.slots.length>0||(e.minInputs||0)>1||(e.maxInputs||0)>1||(e.dataInputs||[]).length>1?"multiple":"single"}function Wt(e){return Array.isArray(e)?{records:e}:e}class X extends Error{constructor(t){const n=t.cardId?`card "${t.cardId}"`:t.sheetId?`sheet "${t.sheetId}"`:`dashboard "${t.dashboardId}"`;super(`Unable to resolve ${n} while capturing report presentation. Refresh the authoring page and select the attachment again.`);x(this,"code","temporal_snapshot_target_not_found");x(this,"selection");this.name="TemporalSnapshotSelectionError",this.selection=t}}function Yt(e,r){var o;const t=[],n=new Map;for(const a of r){if(a.dashboardId!==e.id)throw new X(a);const i=(e.sheets||[]).filter(m=>!a.sheetId||a.sheetId===m.id);if(a.sheetId&&i.length===0)throw new X(a);let c=!a.cardId;for(const m of i){const l=(((o=m.document)==null?void 0:o.sections)||[]).flatMap(p=>p.type==="table"||p.type==="chart"?[p.card]:[]),s=(m.frames||[]).flatMap(p=>Qt(p,a.cardId));s.length>0&&(c=!0);const u=[...s,...(m.cards||[]).filter(p=>!a.cardId||a.cardId===p.id),...l.filter(p=>!a.cardId||a.cardId===p.id)];for(const p of u){c=!0;const d=n.get(a.attachmentIndex)??new Set;d.has(p.id)||(d.add(p.id),n.set(a.attachmentIndex,d),t.push({card:p,...a.attachmentIndex!==void 0?{attachmentIndex:a.attachmentIndex}:{}}))}}if(!c)throw new X(a)}return t}function Qt(e,r){var i;const t=r?(i=e.cards)==null?void 0:i.find(c=>c.id===r):be(e);if(!t)return[];const n=Qe(e,t),o=(e.cards||[]).filter(c=>{var m;return typeof((m=c.customCardPreferences)==null?void 0:m.slotIndex)=="number"}).length>1,a=n!=null&&(Je(n)==="multiple"||o);return!n||!a?[t]:We(Ye({frame:e,configCard:n,isMultiInputVisual:!0})).filter(c=>c!==null)}function Jt(e){return Yt(e.dashboard,e.selections).flatMap(({card:r,attachmentIndex:t})=>{var s,u,p,d;const n=((s=e.resolveCardConfig)==null?void 0:s.call(e,r))??r.config,o=De({card:r,cardConfig:n}),a={dashboardId:e.dashboard.id,cardId:r.id,...t!==void 0?{attachmentIndex:t}:{}},i=o?o.fields.map(v=>({scope:a,target:{kind:"field",fieldId:v.id,role:v.role},format:Ve(v,{dateStyle:e.valueFormatPreferences.dateStyle,dateTime:{...e.valueFormatPreferences.dateTime}},e.valueFormatPreferences.locale)})):[],c=[],m=J(r,n),l=q(r.python||"");if(r.type==="detailTable"&&m==="config"){const v=(n==null?void 0:n.detailColumns)||[],h=[...((n==null?void 0:n.groupByColumns)||[]).map(g=>({field:g,role:"groupby"})),...((n==null?void 0:n.metricColumns)||[]).map(g=>({field:g,role:"metric"})),...((n==null?void 0:n.pivotByColumns)||[]).map(g=>({field:g,role:"pivotby"})),...v.map(g=>({field:g,role:"detail"}))],I=new Map,C=new Set(h.map(({field:g,role:$})=>L.resolveCanonicalResultRawKey(g,$)));for(const{field:g}of h){const $=g.label;$&&I.set($,(I.get($)||0)+1)}for(const g of v){if(g.dateValueMode!=="canonical")continue;const $=L.resolveCanonicalDetailResultRawKey(g),S=g.label,F=L.resolveCanonicalResultOutputKey({label:S,labelCount:S&&I.get(S)||0,rawKey:$,rawKeys:C});if(!F)throw new X(a);c.push({scope:a,target:{kind:"column",columnKey:F},format:E.resolveRawTemporalFormat({format:ge(g),preferences:e.valueFormatPreferences,calendar:e.calendar})})}}else if(m==="freeform"&&((u=r.sql)!=null&&u.trim())&&!l.trim())for(const[v,h]of Object.entries(((d=(p=r.preferences)==null?void 0:p.tablePrefs)==null?void 0:d.columnSettingsMap)||{})){if(h.type!=="date")continue;const I=ae(h.dateFormat);I&&c.push({scope:a,target:{kind:"column",columnKey:v},format:E.resolveRawTemporalFormat({format:I,preferences:e.valueFormatPreferences,calendar:e.calendar})})}return[...i,...c]})}function Zt(e){return!!e&&typeof e=="object"&&!Array.isArray(e)}function B(e,r,t){return Zt(e)?e:(t.push({field:r,message:"Expected an object."}),{})}function P(e,r,t,n){const o=new Set(t);Object.keys(e).forEach(a=>{o.has(a)||n.push({field:`${r}.${a}`,message:"Unexpected property."})})}function K(e,r,t,n,o={}){if(e==null)return;if(typeof e!="string"){n.push({field:r,message:"Expected a string."});return}const a=o.trim===!1?e:e.trim();if(!o.allowEmpty&&a.length===0){n.push({field:r,message:"Expected a non-empty string."});return}if(a.length>t){n.push({field:r,message:`Expected ${t} characters or fewer.`});return}return a}function Ce(e,r,t){const n=K(e,r,2e3,t);if(n)try{return new URL(n),n}catch{t.push({field:r,message:"Expected an absolute URL."});return}}function Re(e,r,t){const n=B(e,r,t);P(n,r,["tokens","components"],t);const o={};if(n.tokens!==void 0){const a=B(n.tokens,`${r}.tokens`,t);P(a,`${r}.tokens`,["color","typography"],t);const i={};if(a.color!==void 0){const c=B(a.color,`${r}.tokens.color`,t),m=["background","foreground","muted","mutedForeground","border","primary","primaryForeground","positive","negative","warning","info"];P(c,`${r}.tokens.color`,m,t);const l={};m.forEach(s=>{const u=K(c[s],`${r}.tokens.color.${s}`,120,t);u!==void 0&&(l[s]=u)}),i.color=l}if(a.typography!==void 0){const c=B(a.typography,`${r}.tokens.typography`,t);P(c,`${r}.tokens.typography`,["fontFamily","monoFontFamily"],t);const m=K(c.fontFamily,`${r}.tokens.typography.fontFamily`,500,t,{allowEmpty:!0}),l=K(c.monoFontFamily,`${r}.tokens.typography.monoFontFamily`,500,t,{allowEmpty:!0});i.typography={...m!==void 0?{fontFamily:m}:{},...l!==void 0?{monoFontFamily:l}:{}}}o.tokens=i}if(n.components!==void 0){const a=B(n.components,`${r}.components`,t);if(P(a,`${r}.components`,["chart"],t),a.chart!==void 0){const i=B(a.chart,`${r}.components.chart`,t);P(i,`${r}.components.chart`,["palette"],t);let c;i.palette!==void 0&&(Array.isArray(i.palette)?i.palette.length>20?t.push({field:`${r}.components.chart.palette`,message:"Expected 20 colors or fewer."}):c=i.palette.map((m,l)=>K(m,`${r}.components.chart.palette.${l}`,120,t)).filter(m=>m!==void 0):t.push({field:`${r}.components.chart.palette`,message:"Expected an array."})),o.components={chart:c?{palette:c}:{}}}}return o}function Xt(e,r){const t="presentation.appearance",n=B(e,t,r);P(n,t,["version","schemes"],r);const o={};if(n.version!==void 0&&(typeof n.version!="number"||!Number.isFinite(n.version)?r.push({field:`${t}.version`,message:"Expected a number."}):o.version=n.version),n.schemes!==void 0){const a=B(n.schemes,`${t}.schemes`,r);P(a,`${t}.schemes`,["light","dark"],r),o.schemes={...a.light!==void 0?{light:Re(a.light,`${t}.schemes.light`,r)}:{},...a.dark!==void 0?{dark:Re(a.dark,`${t}.schemes.dark`,r)}:{}}}return o}function er(e,r){const t="presentation.brandOverrides",n=B(e,t,r);P(n,t,["brandName","logoUrl","link"],r);const o=K(n.brandName,`${t}.brandName`,200,r),a=Ce(n.logoUrl,`${t}.logoUrl`,r),i=K(n.link,`${t}.link`,120,r);return{...o!==void 0?{brandName:o}:{},...a!==void 0?{logoUrl:a}:{},...i!==void 0?{link:i}:{}}}function tr(e,r){const t="presentation.fragments",n=B(e,t,r),o=["preHeaderText","headerBannerHtml","signatureHtml","footerHtml","disclaimerHtml","unsubscribeUrl"];P(n,t,o,r);const a={};return o.forEach(i=>{const c=i==="unsubscribeUrl"?Ce(n[i],`${t}.${i}`,r):K(n[i],`${t}.${i}`,i==="preHeaderText"?200:5e3,r,{trim:i==="preHeaderText"});c!==void 0&&(a[i]=c)}),a}function rr(e){const r=[],t={};if(e.appearance!==void 0&&(t.appearance=Xt(e.appearance,r)),e.brandOverrides!==void 0&&(t.brandOverrides=er(e.brandOverrides,r)),e.fragments!==void 0&&(t.fragments=tr(e.fragments,r)),e.viewUrl!==void 0){const n=Ce(e.viewUrl,"presentation.viewUrl",r);n!==void 0&&(t.viewUrl=n)}return{value:t,issues:r}}const Ze=["SUN","MON","TUE","WED","THU","FRI","SAT"],nr=new Map(Ze.map((e,r)=>[e,r])),or={cadence:"weekly",hour:9,minute:0,weekdays:[1]};function ar(e){if(typeof e!="string"||e.length===0||e!==e.trim()||/^(?:(?:UTC|GMT)[+-]|[+-]\d{2}:\d{2}$)/.test(e))return!1;try{return new Intl.DateTimeFormat("en-US",{timeZone:e}).format(),!0}catch{return!1}}function ir(e){return Number.isInteger(e.minute)&&e.minute>=0&&e.minute<=59&&Number.isInteger(e.hour)&&e.hour>=0&&e.hour<=23}function Xe(e){if(e.length===0)return null;const r=[...e].sort((t,n)=>t-n);return r.some((t,n)=>!Number.isInteger(t)||t<0||t>6||n>0&&t===r[n-1])?null:r}function lr(e){if(!ir(e))throw new Error("Choose a valid schedule time.");const r=`${e.minute} ${e.hour}`;switch(e.cadence){case"daily":return`${r} * * *`;case"weekly":{const t=Xe(e.weekdays);if(!t)throw new Error("Choose at least one weekday.");return`${r} * * ${t.map(n=>Ze[n]).join(",")}`}case"twice_monthly":return`${r} 1,15 * *`;case"monthly":return`${r} 1 * *`}}function et(e){if(typeof e!="string"||e.length===0)return{ok:!1,issue:"Choose a supported schedule."};if(e!==e.trim()||e.includes(" "))return{ok:!1,issue:"Choose a supported schedule."};const r=e.split(" ");if(r.length!==5)return{ok:!1,issue:"Choose a supported schedule."};const[t,n,o,a,i]=r;if(!/^(0|[1-9]\d?)$/.test(t)||!/^(0|[1-9]\d?)$/.test(n))return{ok:!1,issue:"Choose a supported schedule."};const c=Number(t),m=Number(n);if(c>59||m>23||a!=="*")return{ok:!1,issue:"Choose a supported schedule."};if(o==="*"&&i==="*")return{ok:!0,value:{cadence:"daily",hour:m,minute:c,weekdays:[]}};if(o==="*"&&i!=="*"){const s=i.split(",").map(d=>nr.get(d));if(s.some(d=>d===void 0))return{ok:!1,issue:"Choose a supported schedule."};const u=s,p=Xe(u);return!p||p.some((d,v)=>d!==u[v])?{ok:!1,issue:"Choose a supported schedule."}:{ok:!0,value:{cadence:"weekly",hour:m,minute:c,weekdays:p}}}return o==="1,15"&&i==="*"?{ok:!0,value:{cadence:"twice_monthly",hour:m,minute:c,weekdays:[]}}:o==="1"&&i==="*"?{ok:!0,value:{cadence:"monthly",hour:m,minute:c,weekdays:[]}}:{ok:!1,issue:"Choose a supported schedule."}}function cr(e,r,t){return new Intl.DateTimeFormat(t,{hour:"numeric",minute:"2-digit",timeZone:"UTC"}).format(new Date(Date.UTC(2020,0,1,e,r)))}function dr(e,r){var t;if(e==="UTC")return"UTC";try{return((t=new Intl.DateTimeFormat(r,{timeZone:e,timeZoneName:"longGeneric"}).formatToParts(new Date(Date.UTC(2020,0,1))).find(o=>o.type==="timeZoneName"))==null?void 0:t.value)??e}catch{return null}}function sr(e,r,t="en-US"){const n=et(e);if(!n.ok)return null;try{const o=cr(n.value.hour,n.value.minute,t),a=dr(r,t);if(!a)return null;switch(n.value.cadence){case"daily":return`Daily at ${o} ${a}`;case"weekly":{const i=new Intl.DateTimeFormat(t,{weekday:"long",timeZone:"UTC"});return`${n.value.weekdays.map(m=>i.format(new Date(Date.UTC(2023,0,1+m)))).join(" and ")} at ${o} ${a}`}case"twice_monthly":return`On the 1st and 15th at ${o} ${a}`;case"monthly":return`Monthly on the 1st at ${o} ${a}`}}catch{return null}}const mr=new Set(["table","aggregateTable","pivotTable","detailTable"]),ur=new Set(["bar","horizontalBar","line","area","stackedArea","combo","pie","doughnut","radar","polarArea","bubble","scatter","stackedBar","stackedLine","table","pivotTable","aggregateTable","matrixTable","detailTable","kpi","pyramid","tornado","range","map","funnel","bullet","heatmap","treemap","custom"]);function fr(e){var n,o,a;const r=ur.has(e.type)&&(e.type!=="custom"||!!((n=e.customCardPreferences)!=null&&n.url));return e.type==="text"||!r||V.isCardUnconfigured(e)?{formats:[],defaultFormat:null}:{formats:tt({cardType:e.type,allowDownload:(o=e.preferences)==null?void 0:o.allowDownload}),defaultFormat:rt({cardType:e.type,allowDownload:(a=e.preferences)==null?void 0:a.allowDownload})}}function tt(e){return e.allowDownload===!1?["pdf"]:["pdf","csv"]}function rt(e){return mr.has(e.cardType)&&e.allowDownload!==!1?"csv":"pdf"}function pr(e){return e!=null&&e.role?e.type==="tenant"?e.role==="POWER_USER":["AUTHOR","ADMIN","SUPER_ADMIN"].includes(e.role):!1}function yr(e){return e.canCreate?[...e.scheduledReportAvailable?["scheduled_report"]:[],...e.analyticalBriefingsEnabled?["analytical_briefing"]:[]]:[]}function nt(e){const r=(e==null?void 0:e.channels)??[];return r.length===1&&r[0]==="EMAIL"}function ot(e){return e.body.type==="generated_analysis"?"Analytical briefing":e.body.type==="custom_message"&&e.attachments.length>0&&nt(e.deliveryConfig)?e.scheduleExpr?"Scheduled report":"On-demand report":"Plain briefing"}function hr(e){const r=ot(e),t=r==="Scheduled report"||r==="On-demand report"?"report":"briefing";return{typeLabel:r,noun:t,pluralNoun:t==="report"?"reports":"briefings"}}const ne="BRIEFING",at=["markdown","html"],oe=["markdown"],ee=20,y={name:500,description:2e3,instruction:5e4,customMessage:5e4,contentTitle:500,contentSummary:2e4,contentText:5e3,contentSql:5e4,contentItem:2e3,contentCell:500,attachmentTitle:500,presentationAudience:1e3,presentationTone:500,presentationFormat:2e3,id:500},R={maxBlocks:50,maxTableRows:100,maxTableColumns:20,maxTableCellCharacters:y.contentCell,maxParagraphCharacters:y.contentText,maxFindingCharacters:y.contentText,maxListItems:100,maxKpiTiles:8};function it(e){if(e===null||typeof e!="object"||Array.isArray(e))return!1;const r=e;if(typeof r.value!="number"||!Number.isFinite(r.value))return!1;const t=r.target;if(t===null||typeof t!="object"||Array.isArray(t))return!1;const n=t;return(n.kind==="metric"&&typeof n.metricId=="string"&&!!n.metricId.trim()||n.kind==="column"&&typeof n.columnKey=="string"&&!!n.columnKey.trim()||n.kind==="matrix_measure"&&typeof n.measureId=="string"&&!!n.measureId.trim())&&E.parseResolvedNumericCanonicalFormat(r.format).ok}function lt(e){return e==null?"":it(e)?E.formatNumericCanonical(e.value,e.format):String(e)}function gr(e){return[e.delta,e.percentChange].filter(r=>r!=null).map(lt).filter(Boolean).join(" / ")}const ct=new Set(at),vr=new Set(["EMAIL","WEBHOOK","SLACK","IN_APP","TELEGRAM"]),de={maxToolCalls:{min:1,max:100},maxPlanningIterations:{min:1,max:10},maxRows:{min:1,max:1e5},timeoutMs:{min:1e3,max:30*6e4}},br=new Set(["letter","legal","a4","a3","tabloid"]),Ir=new Set(["portrait","landscape"]),Cr=new Set([",",";"," "]),Tr=new Set(["current","all"]),wr=new Set(["concise","balanced","detailed"]),Er=new Set(["info","positive","warning","critical"]),$r=new Set(["text","number","currency","percent","date","boolean"]),kr=new Set(["left","center","right"]),Sr=["pageSize","orientation","includeFilters","includeTimestamp","delimiter","includeHeaders","useFormattedValues","sheetSelection","currentSheetId","currentSheetName","filterValues","inlineFilterValues","sheetFilterValues","filterLine","controlValues","controlDefinitions","cardControlDefinitions","controlBindings","tablePreferences","dashboardInputExecutionSnapshot","selectedSheetId","cardType","allowDownload","theme"];class Z extends Error{constructor(t){super(t.map(n=>`${n.field}: ${n.message}`).join("; "));x(this,"issues");this.name="BriefingContractError",this.issues=t}}function dt(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function f(e,r,t){e.push({field:r,message:t})}function k(e,r,t){return dt(e)?e:(f(t,r,"Expected an object."),{})}function b(e,r,t,n){const o=new Set(t);Object.keys(e).forEach(a=>{o.has(a)||f(n,r?`${r}.${a}`:a,`Unexpected field "${a}".`)})}function T(e,r,t,n){if(typeof e!="string")return f(n,r,"Expected a string."),"";const o=e.trim();return o?(o.length>t&&f(n,r,`Must be ${t} characters or fewer.`),o):(f(n,r,"Required value cannot be empty."),"")}function w(e,r,t,n){if(e==null)return;if(typeof e!="string"){f(n,r,"Expected a string.");return}const o=e.trim();if(o)return o.length>t&&f(n,r,`Must be ${t} characters or fewer.`),o}function _r(e,r,t,n){if(typeof e!="string")return f(n,r,"Expected a string."),"";const o=e.trim();return o.length>t&&f(n,r,`Must be ${t} characters or fewer.`),o}function xr(e,r,t){if(e!=null){if(!Number.isInteger(e)||Number(e)<0){f(t,r,"Expected a non-negative integer.");return}return Number(e)}}function A(e,r,t,n={}){if(e==null)return n.required?(f(t,r,"Expected at least one evidence id."),[]):void 0;if(!Array.isArray(e))return f(t,r,"Expected an array."),n.required?[]:void 0;const o=[];return e.forEach((a,i)=>{const c=T(a,`${r}.${i}`,y.id,t);c&&!o.includes(c)&&o.push(c)}),n.required&&o.length===0&&f(t,r,"Expected at least one evidence id."),o.length>0||n.required?o:void 0}function U(e,r,t,n){return e==null?r:typeof e!="boolean"?(f(n,t,"Expected a boolean."),r):e}function Rr(e,r){return e==null?"ACTIVE":e==="ACTIVE"||e==="PAUSED"||e==="DISABLED"?e:(f(r,"status","Expected ACTIVE, PAUSED, or DISABLED."),"ACTIVE")}function Fr(e){return e.includes("@")&&e.includes(".")&&!e.includes(" ")}function st(e,r){if(e==null)return{type:"project"};const t=k(e,"source",r),n=t.type;return n==="project"?(b(t,"source",["type"],r),{type:"project"}):n==="dashboard"?(b(t,"source",["type","dashboardId"],r),{type:"dashboard",dashboardId:T(t.dashboardId,"source.dashboardId",y.id,r)}):(f(r,"source.type","Expected project or dashboard."),{type:"project"})}function mt(e,r){const t=k(e,"body",r),n=t.type;return n==="generated_analysis"?(b(t,"body",["type","instruction"],r),{type:"generated_analysis",instruction:T(t.instruction,"body.instruction",y.instruction,r)}):n==="custom_message"?(b(t,"body",["type","message"],r),{type:"custom_message",message:_r(t.message,"body.message",y.customMessage,r)}):n==="none"?(b(t,"body",["type"],r),{type:"none"}):(f(r,"body.type","Expected generated_analysis, custom_message, or none."),{type:"none"})}function Ar(e,r){if(e==null)return[...oe];if(!Array.isArray(e))return f(r,"presentation.artifactFormats","Expected an array."),[...oe];if(e.length===0)return f(r,"presentation.artifactFormats","Choose at least one artifact format."),[];const t=[];return e.forEach((n,o)=>{if(typeof n!="string"||!ct.has(n)){f(r,`presentation.artifactFormats.${o}`,"Expected markdown or html.");return}t.includes(n)||t.push(n)}),t}function ut(e,r){if(e==null)return{artifactFormats:[...oe],includeEvidence:!0,includeSql:!0};const t=k(e,"presentation",r);b(t,"presentation",["artifactFormats","includeEvidence","includeSql","audience","tone","format","appearance","brandOverrides","fragments","viewUrl"],r);const n={artifactFormats:Ar(t.artifactFormats,r),includeEvidence:U(t.includeEvidence,!0,"presentation.includeEvidence",r),includeSql:U(t.includeSql,!0,"presentation.includeSql",r)},o=w(t.audience,"presentation.audience",y.presentationAudience,r),a=w(t.tone,"presentation.tone",y.presentationTone,r),i=w(t.format,"presentation.format",y.presentationFormat,r);o&&(n.audience=o),a&&(n.tone=a),i&&(n.format=i);const c=rr(t);return c.issues.forEach(m=>f(r,m.field,m.message)),Object.assign(n,c.value),n}function Br(e,r,t){return Array.isArray(e)?(e.length===0&&f(t,r,"Expected at least one item."),e.length>R.maxListItems&&f(t,r,`Must have ${R.maxListItems} items or fewer.`),e.slice(0,R.maxListItems).map((n,o)=>T(n,`${r}.${o}`,y.contentItem,t)).filter(Boolean)):(f(t,r,"Expected an array."),[])}function Pr(e,r,t){const n=k(e,r,t);if(n.kind==="metric")return b(n,r,["kind","metricId"],t),{kind:"metric",metricId:T(n.metricId,`${r}.metricId`,y.id,t)};if(n.kind==="column")return b(n,r,["kind","columnKey"],t),{kind:"column",columnKey:T(n.columnKey,`${r}.columnKey`,y.id,t)};if(n.kind==="matrix_measure")return b(n,r,["kind","measureId"],t),{kind:"matrix_measure",measureId:T(n.measureId,`${r}.measureId`,y.id,t)};f(t,`${r}.kind`,"Expected metric, column, or matrix_measure.")}function ft(e,r,t){if(e===null||typeof e!="object"||Array.isArray(e))return;const n=k(e,r,t);if(!Object.prototype.hasOwnProperty.call(n,"target")&&!Object.prototype.hasOwnProperty.call(n,"format"))return;b(n,r,["value","target","format"],t),(typeof n.value!="number"||!Number.isFinite(n.value))&&f(t,`${r}.value`,"Expected a finite number.");const o=Pr(n.target,`${r}.target`,t),a=E.parseResolvedNumericCanonicalFormat(n.format);if(a.ok||a.issues.forEach(i=>f(t,i.path==="$"?`${r}.format`:`${r}.format.${i.path}`,i.message)),!(typeof n.value!="number"||!Number.isFinite(n.value)||!o||!a.ok))return{value:n.value,target:o,format:a.value}}function M(e,r,t){if(typeof e=="string")return e;if(typeof e=="number"){if(!Number.isFinite(e)){f(t,r,"Expected a finite number.");return}return e}const n=ft(e,r,t);if(n)return n;f(t,r,"Expected a string, number, or structured numeric value.")}function Dr(e,r,t){if(e===null||typeof e=="string"||typeof e=="number"||typeof e=="boolean")return typeof e=="string"&&e.length>y.contentCell?(f(t,r,`Must be ${y.contentCell} characters or fewer.`),e.slice(0,y.contentCell)):typeof e=="number"&&!Number.isFinite(e)?(f(t,r,"Expected a finite number."),null):e;const n=ft(e,r,t);return n||(f(t,r,"Expected a string, number, boolean, structured numeric value, or null."),null)}function Mr(e,r,t){if(!Array.isArray(e))return f(t,r,"Expected an array."),[];e.length===0&&f(t,r,"Expected at least one column."),e.length>R.maxTableColumns&&f(t,r,`Must have ${R.maxTableColumns} columns or fewer.`);const n=new Set;return e.slice(0,R.maxTableColumns).map((o,a)=>{const i=`${r}.${a}`,c=k(o,i,t);b(c,i,["key","label","kind","align"],t);const m=T(c.key,`${i}.key`,y.id,t);m&&(n.has(m)&&f(t,`${i}.key`,"Column key must be unique."),n.add(m));const l=T(c.label,`${i}.label`,y.contentTitle,t),s=N(c.kind,`${i}.kind`,$r,"text, number, currency, percent, date, or boolean",t),u=N(c.align,`${i}.align`,kr,"left, center, or right",t);return{key:m,label:l,...s?{kind:s}:{},...u?{align:u}:{}}})}function Or(e,r,t,n){if(!Array.isArray(e))return f(n,r,"Expected an array."),[];e.length>R.maxTableRows&&f(n,r,`Must have ${R.maxTableRows} rows or fewer.`);const o=new Set(t.map(a=>a.key).filter(Boolean));return e.slice(0,R.maxTableRows).map((a,i)=>{const c=`${r}.${i}`,m=k(a,c,n);return Object.keys(m).forEach(l=>{o.has(l)||f(n,`${c}.${l}`,`Unexpected table cell "${l}".`)}),Object.fromEntries(t.map(l=>[l.key,Dr(m[l.key]??null,`${c}.${l.key}`,n)]))})}function Kr(e,r,t){const n=`content.blocks.${r}`,o=k(e,n,t),a=o.type;if(a==="heading"){b(o,n,["type","text","level","evidenceIds"],t);const i=o.level===void 0||o.level===null?void 0:o.level===2||o.level===3?o.level:void 0;o.level!==void 0&&o.level!==null&&i===void 0&&f(t,`${n}.level`,"Expected 2 or 3.");const c=A(o.evidenceIds,`${n}.evidenceIds`,t);return{type:"heading",text:T(o.text,`${n}.text`,y.contentTitle,t),...i?{level:i}:{},...c?{evidenceIds:c}:{}}}if(a==="paragraph"){b(o,n,["type","text","evidenceIds"],t);const i=A(o.evidenceIds,`${n}.evidenceIds`,t);return{type:"paragraph",text:T(o.text,`${n}.text`,y.contentText,t),...i?{evidenceIds:i}:{}}}if(a==="finding"){b(o,n,["type","title","text","severity","evidenceIds"],t);const i=w(o.title,`${n}.title`,y.contentTitle,t),c=N(o.severity,`${n}.severity`,Er,"info, positive, warning, or critical",t);return{type:"finding",...i?{title:i}:{},text:T(o.text,`${n}.text`,y.contentText,t),...c?{severity:c}:{},evidenceIds:A(o.evidenceIds,`${n}.evidenceIds`,t,{required:!0})??[]}}if(a==="bullets"||a==="actions"||a==="limitations"){b(o,n,["type","title","items","evidenceIds"],t);const i=w(o.title,`${n}.title`,y.contentTitle,t),c=A(o.evidenceIds,`${n}.evidenceIds`,t);return{type:a,...i?{title:i}:{},items:Br(o.items,`${n}.items`,t),...c?{evidenceIds:c}:{}}}if(a==="metric"){b(o,n,["type","label","value","previousValue","delta","percentChange","unit","evidenceIds"],t);const i=M(o.value,`${n}.value`,t)??"";i===""&&f(t,`${n}.value`,"Expected a non-empty string, number, or structured numeric value.");const c=o.previousValue===void 0||o.previousValue===null?o.previousValue:M(o.previousValue,`${n}.previousValue`,t),m=o.delta===void 0||o.delta===null?o.delta:M(o.delta,`${n}.delta`,t),l=o.percentChange===void 0||o.percentChange===null?o.percentChange:M(o.percentChange,`${n}.percentChange`,t),s=w(o.unit,`${n}.unit`,y.contentTitle,t),u=A(o.evidenceIds,`${n}.evidenceIds`,t);return{type:"metric",label:T(o.label,`${n}.label`,y.contentTitle,t),value:i,...c!==void 0?{previousValue:c}:{},...m!==void 0?{delta:m}:{},...l!==void 0?{percentChange:l}:{},...s?{unit:s}:{},...u?{evidenceIds:u}:{}}}if(a==="kpi_grid"){b(o,n,["type","title","tiles","evidenceIds"],t);const i=w(o.title,`${n}.title`,y.contentTitle,t),c=Array.isArray(o.tiles)?o.tiles:[];Array.isArray(o.tiles)||f(t,`${n}.tiles`,"Expected an array."),c.length===0&&f(t,`${n}.tiles`,"Expected at least one tile."),c.length>R.maxKpiTiles&&f(t,`${n}.tiles`,`Must have ${R.maxKpiTiles} tiles or fewer.`);const m=c.slice(0,R.maxKpiTiles).map((s,u)=>{const p=`${n}.tiles.${u}`,d=k(s,p,t);b(d,p,["label","value","previousValue","delta","percentChange","unit","evidenceIds"],t);const v=M(d.value,`${p}.value`,t)??"";v===""&&f(t,`${p}.value`,"Expected a non-empty string, number, or structured numeric value.");const h=d.previousValue===void 0||d.previousValue===null?d.previousValue:M(d.previousValue,`${p}.previousValue`,t),I=d.delta===void 0||d.delta===null?d.delta:M(d.delta,`${p}.delta`,t),C=d.percentChange===void 0||d.percentChange===null?d.percentChange:M(d.percentChange,`${p}.percentChange`,t),g=w(d.unit,`${p}.unit`,y.contentTitle,t),$=A(d.evidenceIds,`${p}.evidenceIds`,t);return{label:T(d.label,`${p}.label`,y.contentTitle,t),value:v,...h!==void 0?{previousValue:h}:{},...I!==void 0?{delta:I}:{},...C!==void 0?{percentChange:C}:{},...g?{unit:g}:{},...$?{evidenceIds:$}:{}}}),l=A(o.evidenceIds,`${n}.evidenceIds`,t);return{type:"kpi_grid",...i?{title:i}:{},tiles:m,...l?{evidenceIds:l}:{}}}if(a==="progress"){b(o,n,["type","label","value","detail","evidenceIds"],t);const i=typeof o.value=="number"&&Number.isFinite(o.value)?o.value:0;(typeof o.value!="number"||!Number.isFinite(o.value))&&f(t,`${n}.value`,"Expected a finite number.");const c=w(o.detail,`${n}.detail`,y.contentText,t),m=A(o.evidenceIds,`${n}.evidenceIds`,t);return{type:"progress",label:T(o.label,`${n}.label`,y.contentTitle,t),value:i,...c?{detail:c}:{},...m?{evidenceIds:m}:{}}}if(a==="table"){b(o,n,["type","id","title","columns","rows","caption","totalRows","evidenceIds"],t);const i=Mr(o.columns,`${n}.columns`,t),c=w(o.title,`${n}.title`,y.contentTitle,t),m=w(o.id,`${n}.id`,y.id,t),l=w(o.caption,`${n}.caption`,y.contentItem,t),s=xr(o.totalRows,`${n}.totalRows`,t),u=A(o.evidenceIds,`${n}.evidenceIds`,t);return{type:"table",...m?{id:m}:{},...c?{title:c}:{},columns:i,rows:Or(o.rows,`${n}.rows`,i,t),...l?{caption:l}:{},...s!==void 0?{totalRows:s}:{},...u?{evidenceIds:u}:{}}}if(a==="evidence_appendix"){b(o,n,["type","title","evidenceIds"],t);const i=w(o.title,`${n}.title`,y.contentTitle,t);return{type:"evidence_appendix",...i?{title:i}:{},evidenceIds:A(o.evidenceIds,`${n}.evidenceIds`,t,{required:!0})??[]}}if(a==="sql"){b(o,n,["type","title","sql","evidenceIds"],t);const i=w(o.title,`${n}.title`,y.contentTitle,t),c=T(o.sql,`${n}.sql`,y.contentSql,t),m=A(o.evidenceIds,`${n}.evidenceIds`,t);return{type:"sql",...i?{title:i}:{},sql:c,...m?{evidenceIds:m}:{}}}return f(t,`${n}.type`,"Expected heading, paragraph, finding, bullets, metric, kpi_grid, progress, table, actions, limitations, sql, or evidence_appendix."),{type:"paragraph",text:""}}function pt(e){const r=[],t=k(e,"content",r);b(t,"content",["version","title","summary","blocks"],r),t.version!==1&&f(r,"content.version","Expected version 1.");const n=w(t.title,"content.title",y.contentTitle,r),o=w(t.summary,"content.summary",y.contentSummary,r);Array.isArray(t.blocks)||f(r,"content.blocks","Expected an array.");const a=Array.isArray(t.blocks)?t.blocks:[];a.length===0&&f(r,"content.blocks","Expected at least one block."),a.length>R.maxBlocks&&f(r,"content.blocks",`Must have ${R.maxBlocks} blocks or fewer.`);const i=a.slice(0,R.maxBlocks).map((c,m)=>Kr(c,m,r));return Te(r),{version:1,...n?{title:n}:{},...o?{summary:o}:{},blocks:i}}function Nr(e){try{return{valid:!0,value:pt(e),issues:[]}}catch(r){if(r instanceof Z)return{valid:!1,issues:r.issues};throw r}}function te(e,r,t,n){return typeof e=="string"&&t.includes(e)?e:(f(n,r,`Expected ${t.join(" or ")}.`),t[0])}function N(e,r,t,n,o){if(e!=null){if(typeof e=="string"&&t.has(e))return e;f(o,r,`Expected ${n}.`)}}function Vr(e,r,t){if(e!=null){if(!Array.isArray(e)){f(t,r,"Expected an array.");return}return e}}function zr(e,r,t){if(e!=null){if(!dt(e)){f(t,r,"Expected an object.");return}return e}}function Lr(e,r,t){if(e==null)return;const n=k(e,r,t);b(n,r,Sr,t);const o={},a=N(n.pageSize,`${r}.pageSize`,br,"letter, legal, a4, a3, or tabloid",t),i=N(n.orientation,`${r}.orientation`,Ir,"portrait or landscape",t),c=N(n.delimiter,`${r}.delimiter`,Cr,"comma, semicolon, or tab",t),m=N(n.sheetSelection,`${r}.sheetSelection`,Tr,"current or all",t);a&&(o.pageSize=a),i&&(o.orientation=i),c&&(o.delimiter=c),m&&(o.sheetSelection=m);for(const l of["includeFilters","includeTimestamp","includeHeaders","useFormattedValues","allowDownload"])if(!(n[l]===void 0||n[l]===null)){if(typeof n[l]!="boolean"){f(t,`${r}.${l}`,"Expected a boolean.");continue}o[l]=n[l]}for(const l of["currentSheetId","currentSheetName","filterLine","selectedSheetId","cardType","theme"]){const s=w(n[l],`${r}.${l}`,y.id,t);s&&(o[l]=s)}for(const l of["filterValues","inlineFilterValues","sheetFilterValues","controlDefinitions","cardControlDefinitions","controlBindings"]){const s=Vr(n[l],`${r}.${l}`,t);s&&(o[l]=s)}for(const l of["controlValues","tablePreferences","dashboardInputExecutionSnapshot"]){const s=zr(n[l],`${r}.${l}`,t);s&&(o[l]=s)}return Object.keys(o).length>0?o:void 0}function se(e,r,t,n){const o=w(r,t,y.attachmentTitle,n);return o&&(e.title=o),e}function me(e,r,t,n){const o=Lr(r,t,n);return o&&(e.settings=o),e}function Ur(e,r,t){const n=`attachments.${r}`,o=k(e,n,t),a=o.type;if(a==="dashboard"){b(o,n,["type","dashboardId","format","title","settings"],t);const i=se({type:"dashboard",dashboardId:T(o.dashboardId,`${n}.dashboardId`,y.id,t),format:te(o.format,`${n}.format`,["pdf"],t)},o.title,`${n}.title`,t);return me(i,o.settings,`${n}.settings`,t)}if(a==="dashboard_sheet"||a==="document_sheet"){b(o,n,["type","dashboardId","sheetId","format","title","settings"],t);const i=se({type:a,dashboardId:T(o.dashboardId,`${n}.dashboardId`,y.id,t),sheetId:T(o.sheetId,`${n}.sheetId`,y.id,t),format:te(o.format,`${n}.format`,["pdf"],t)},o.title,`${n}.title`,t);return me(i,o.settings,`${n}.settings`,t)}if(a==="card"){b(o,n,["type","dashboardId","cardId","format","title","settings"],t);const i=se({type:"card",dashboardId:T(o.dashboardId,`${n}.dashboardId`,y.id,t),cardId:T(o.cardId,`${n}.cardId`,y.id,t),format:te(o.format,`${n}.format`,["csv","pdf"],t)},o.title,`${n}.title`,t);return me(i,o.settings,`${n}.settings`,t)}return f(t,`${n}.type`,"Expected dashboard, dashboard_sheet, document_sheet, or card."),{type:"dashboard",dashboardId:"",format:"pdf"}}function qr(e){switch(e.type){case"dashboard":return`${e.type}:${e.dashboardId}:${e.format}`;case"dashboard_sheet":case"document_sheet":return`${e.type}:${e.dashboardId}:${e.sheetId}:${e.format}`;case"card":return`${e.type}:${e.dashboardId}:${e.cardId}:${e.format}`}}function yt(e,r){if(e==null)return[];if(!Array.isArray(e))return f(r,"attachments","Expected an array."),[];e.length>ee&&f(r,"attachments",`Choose ${ee} attachments or fewer.`);const t=e.slice(0,ee).map((o,a)=>Ur(o,a,r)),n=new Set;return t.forEach((o,a)=>{const i=qr(o);n.has(i)&&f(r,`attachments.${a}`,"Duplicate attachment."),n.add(i)}),t}function ht(e,r){if(e==null)return;const t=k(e,"limits",r);b(t,"limits",Object.keys(de),r);const n={};return Object.keys(de).forEach(o=>{const a=t[o];if(a==null)return;const i=de[o];if(typeof a!="number"||!Number.isInteger(a)||a<i.min||a>i.max){f(r,`limits.${o}`,`Expected an integer between ${i.min} and ${i.max}.`);return}n[o]=a}),Object.keys(n).length>0?n:void 0}function Te(e){if(e.length>0)throw new Z(e)}function gt(e,r,t){!(e.type==="generated_analysis"||e.type==="custom_message"&&!!e.message.trim())&&r.length===0&&f(t,"body","Add briefing instructions, a custom message, or at least one attachment.")}function jr(e,r,t){e==null||e.forEach((n,o)=>{const a=`${t}.${o}.scope`,i=n.scope.attachmentIndex;if(i===void 0)throw new E.PresentationExecutionSnapshotError(`${a}.attachmentIndex must identify the attachment that owns this presentation entry.`);const c=r[i];if(!c)throw new E.PresentationExecutionSnapshotError(`${a}.attachmentIndex must identify an existing attachment.`);if(n.scope.dashboardId!==c.dashboardId)throw new E.PresentationExecutionSnapshotError(`${a}.dashboardId must match the dashboard selected by the referenced attachment.`);if(c.type==="card"&&n.scope.cardId!==c.cardId)throw new E.PresentationExecutionSnapshotError(`${a}.cardId must match the card selected by the referenced attachment.`)})}function we(e){const r=[],t=k(e,"jobConfig",r);b(t,"jobConfig",["kind","presentationExecutionSnapshot","source","body","attachments","presentation","limits"],r),t.kind!==ne&&f(r,"kind","Expected BRIEFING.");let n;try{n=E.parsePresentationExecutionSnapshot(t.presentationExecutionSnapshot)}catch(l){if(l instanceof E.PresentationExecutionSnapshotError)throw l;f(r,"jobConfig.presentationExecutionSnapshot",l instanceof Error?l.message:"Invalid presentation snapshot.")}const o=st(t.source,r),a=mt(t.body,r),i=yt(t.attachments,r),c=ut(t.presentation,r),m=ht(t.limits,r);return gt(a,i,r),jr(n==null?void 0:n.resolvedFormats,i,"jobConfig.presentationExecutionSnapshot.resolvedFormats"),Te(r),{kind:ne,presentationExecutionSnapshot:n,source:o,body:a,attachments:i,presentation:c,...m?{limits:m}:{}}}function Gr(e){return we({...e,kind:ne})}function Ee(e,r,t,n="deliveryConfig.recipients"){const o=`${n}.${r}`,a=k(e,o,t),i=a.type;if(i==="email"){b(a,o,["type","address","name"],t);const c=T(a.address,`${o}.address`,y.id,t),m=w(a.name,`${o}.name`,y.attachmentTitle,t);return c&&!Fr(c)&&f(t,`${o}.address`,"Email address is invalid."),{type:"email",address:c,...m?{name:m}:{}}}return i==="user"?(b(a,o,["type","userId"],t),{type:"user",userId:T(a.userId,`${o}.userId`,y.id,t)}):i==="tenant_user"?(b(a,o,["type","tenantUserId"],t),{type:"tenant_user",tenantUserId:T(a.tenantUserId,`${o}.tenantUserId`,y.id,t)}):i==="group"?(b(a,o,["type","groupId"],t),{type:"group",groupId:T(a.groupId,`${o}.groupId`,y.id,t)}):(f(t,`${o}.type`,"Expected email, user, tenant_user, or group."),{type:"email",address:""})}function Hr(e,r){return e==null?[]:Array.isArray(e)?e.map((t,n)=>Ee(t,n,r)):(f(r,"deliveryConfig.recipients","Expected an array."),[])}function Wr(e,r){if(!Array.isArray(e))return f(r,"deliveryConfig.channels","Expected an array."),[];const t=[];return e.forEach((n,o)=>{if(!$e(n)){f(r,`deliveryConfig.channels.${o}`,"Expected EMAIL, WEBHOOK, SLACK, IN_APP, or TELEGRAM.");return}t.includes(n)||t.push(n)}),t}function Yr(e,r,t){if(e==null)return;const n=k(e,r,t),o={};return Object.entries(n).forEach(([a,i])=>{if(typeof i!="string"){f(t,`${r}.${a}`,"Expected a string.");return}o[a]=i.trim()}),Object.keys(o).length>0?o:void 0}function Qr(e,r,t){if(e==null)return;const n=k(e,r,t);b(n,r,["url","method","headers","secretEncrypted"],t);const o=n.method===void 0||n.method===null?void 0:te(n.method,`${r}.method`,["POST","PUT"],t),a=Yr(n.headers,`${r}.headers`,t),i=w(n.secretEncrypted,`${r}.secretEncrypted`,2e3,t);return{url:T(n.url,`${r}.url`,2e3,t),...o?{method:o}:{},...a?{headers:a}:{},...i?{secretEncrypted:i}:{}}}function Jr(e,r,t){const n=k(e,r,t),o=n.type;if(o==="channel"){b(n,r,["type","channelId","channelName","isPrivate"],t);const a=w(n.channelName,`${r}.channelName`,y.attachmentTitle,t),i=n.isPrivate===void 0||n.isPrivate===null?void 0:U(n.isPrivate,!1,`${r}.isPrivate`,t);return{type:"channel",channelId:T(n.channelId,`${r}.channelId`,y.id,t),...a?{channelName:a}:{},...i!==void 0?{isPrivate:i}:{}}}return o==="dm"?(b(n,r,["type","recipient"],t),f(t,`${r}.type`,"Slack DM delivery is not supported in V1."),{type:"dm",recipient:Ee(n.recipient,0,t,`${r}.recipient`)}):(f(t,`${r}.type`,"Expected channel."),{type:"channel",channelId:""})}function Zr(e,r,t){if(e==null)return;if(!Array.isArray(e)){f(t,r,"Expected an array.");return}const n=e.map((o,a)=>Ee(o,a,t,r));return n.length>0?n:void 0}function Xr(e,r,t){if(e==null)return;const n=k(e,r,t);b(n,r,["destination","threadMentions","postThreadDetail","includeDashboardLink","includeBriefingLink"],t);const o=Zr(n.threadMentions,`${r}.threadMentions`,t),a=U(n.postThreadDetail,!0,`${r}.postThreadDetail`,t),i=U(n.includeDashboardLink,!0,`${r}.includeDashboardLink`,t),c=U(n.includeBriefingLink,!0,`${r}.includeBriefingLink`,t);return{destination:Jr(n.destination,`${r}.destination`,t),...o?{threadMentions:o}:{},...n.postThreadDetail!==void 0?{postThreadDetail:a}:{},...n.includeDashboardLink!==void 0?{includeDashboardLink:i}:{},...n.includeBriefingLink!==void 0?{includeBriefingLink:c}:{}}}function en(e,r,t){const n=k(e,r,t);b(n,r,["subjectOverride","titleOverride","summaryOverride","actionBlockVisible","formatProfile","slackConfig","webhookConfig"],t);const o=N(n.formatProfile,`${r}.formatProfile`,wr,"concise, balanced, or detailed",t),a=w(n.subjectOverride,`${r}.subjectOverride`,500,t),i=w(n.titleOverride,`${r}.titleOverride`,500,t),c=w(n.summaryOverride,`${r}.summaryOverride`,2e3,t),m=U(n.actionBlockVisible,!0,`${r}.actionBlockVisible`,t),l=Qr(n.webhookConfig,`${r}.webhookConfig`,t),s=Xr(n.slackConfig,`${r}.slackConfig`,t);return{...o?{formatProfile:o}:{},...a?{subjectOverride:a}:{},...i?{titleOverride:i}:{},...c?{summaryOverride:c}:{},...n.actionBlockVisible!==void 0?{actionBlockVisible:m}:{},...s?{slackConfig:s}:{},...l?{webhookConfig:l}:{}}}function tn(e,r){if(e==null)return;const t=k(e,"deliveryConfig.channelConfigs",r),n={};return Object.entries(t).forEach(([o,a])=>{if(!$e(o)){f(r,`deliveryConfig.channelConfigs.${o}`,"Expected a supported delivery channel.");return}n[o]=en(a,`deliveryConfig.channelConfigs.${o}`,r)}),Object.keys(n).length>0?n:void 0}function rn(e,r){var m,l,s;if(e==null)return null;const t=k(e,"deliveryConfig",r);b(t,"deliveryConfig",["recipients","channels","channelConfigs"],r);const n=tn(t.channelConfigs,r),o=Hr(t.recipients,r),a=Wr(t.channels,r),i=((l=(m=n==null?void 0:n.SLACK)==null?void 0:m.slackConfig)==null?void 0:l.destination.type)==="channel"&&!!n.SLACK.slackConfig.destination.channelId.trim();return a.some(u=>u!=="SLACK")&&o.length===0&&f(r,"deliveryConfig.recipients","Add at least one recipient or remove delivery config."),a.length===0&&f(r,"deliveryConfig.channels","Choose at least one delivery channel or remove delivery config."),a.includes("SLACK")&&!i&&f(r,"deliveryConfig.channelConfigs.SLACK.slackConfig.destination.channelId","Choose a Slack channel destination."),!a.includes("SLACK")&&((s=n==null?void 0:n.SLACK)!=null&&s.slackConfig)&&f(r,"deliveryConfig.channelConfigs.SLACK","Slack config requires SLACK in deliveryConfig.channels."),{recipients:o,channels:a,...n?{channelConfigs:n}:{}}}function le(e){const r=[],t=k(e,"draft",r);b(t,"draft",["name","description","status","scheduleExpr","timezone","source","body","attachments","presentation","limits","deliveryConfig"],r);const n=T(t.name,"name",y.name,r),o=w(t.description,"description",y.description,r)??null,a=w(t.scheduleExpr,"scheduleExpr",500,r)??null,i=w(t.timezone,"timezone",200,r)??"UTC",c=Rr(t.status,r),m=st(t.source,r),l=mt(t.body,r),s=yt(t.attachments,r),u=ut(t.presentation,r),p=ht(t.limits,r),d=rn(t.deliveryConfig,r);return gt(l,s,r),Te(r),{name:n,description:o,status:c,scheduleExpr:a,timezone:i,source:m,body:l,attachments:s,presentation:u,...p?{limits:p}:{},deliveryConfig:d}}function nn(e){return le(e)}function on(e){return le(e)}function an(e){try{return{valid:!0,value:le(e),issues:[]}}catch(r){if(r instanceof Z)return{valid:!1,issues:r.issues};throw r}}function ln(e){try{return{valid:!0,value:we(e),issues:[]}}catch(r){if(r instanceof Z)return{valid:!1,issues:r.issues};throw r}}function cn(e){return typeof e=="string"&&ct.has(e)}function $e(e){return typeof e=="string"&&vr.has(e)}exports.AmbiguousGroupedTemporalGrainError=Be;exports.BRIEFING_ARTIFACT_FORMATS=at;exports.BRIEFING_CONTENT_LIMITS=R;exports.BRIEFING_KIND=ne;exports.BRIEFING_TEXT_LIMITS=y;exports.BriefingContractError=Z;exports.DEFAULT_BRIEFING_ARTIFACT_FORMATS=oe;exports.DEFAULT_BRIEFING_SCHEDULE=or;exports.DashboardTemporalBoundaryError=O;exports.MAX_BRIEFING_ATTACHMENTS=ee;exports.PYTHON_DEFAULT_CODE=Ae;exports.buildBriefingJobConfig=Gr;exports.buildBriefingScheduleExpr=lr;exports.buildCreateBriefingRequest=nn;exports.buildDashboardCardTableConfig=Ct;exports.buildDashboardTemporalSnapshotEntries=Jt;exports.buildSlotOrderedCards=We;exports.buildUpdateBriefingRequest=on;exports.canCreateBriefingForUser=pr;exports.createCardsFromSlots=Gt;exports.describeBriefingSchedule=sr;exports.findCustomVisualConfigCard=Qe;exports.formatBriefingComparisonValues=gr;exports.formatBriefingDisplayValue=lt;exports.formatGroupedTemporalFieldValue=Ft;exports.formatGroupedTemporalRecords=St;exports.formatGroupedTemporalValue=he;exports.getActiveCardFromVisualResource=Nt;exports.getActiveFrameCard=be;exports.getBriefingCardAttachmentCapability=fr;exports.getBriefingCardAttachmentFormats=tt;exports.getBriefingCreationIntents=yr;exports.getBriefingDisplayTypeLabel=ot;exports.getBriefingPresentation=hr;exports.getConfigSlotExpectedType=qt;exports.getCustomVisualInputCards=Ye;exports.getDefaultBriefingCardAttachmentFormat=rt;exports.getEffectiveCardTypeForSlot=jt;exports.getSlotDefinitionForIndex=Ie;exports.getSlotExpectedChartType=ie;exports.getSlotIndexForCard=He;exports.isBriefingArtifactFormat=cn;exports.isBriefingDeliveryChannel=$e;exports.isBriefingNumericValue=it;exports.isCardRawTemporalPresentationActivated=qe;exports.isCardRawTemporalResultCompatible=Kt;exports.isCustomVisualConfigCard=fe;exports.isDeclaredSqlRawTemporalPresentationCard=Le;exports.isEmailOnlyBriefingDelivery=nt;exports.isGroupedTemporalResultCompatible=_t;exports.isPivotResultContractCompatibleWithCardConfig=Oe;exports.isValidBriefingTimezone=ar;exports.normalizeBriefingContentDocument=pt;exports.normalizeBriefingDraft=le;exports.normalizeBriefingJobConfig=we;exports.normalizeDashboardCardPythonCode=q;exports.normalizeGroupedTemporalField=Pe;exports.normalizeMultiInputPayload=Wt;exports.parseBriefingScheduleExpr=et;exports.parseCanonicalPivotResultTransportOnce=Me;exports.parseFrameObject=je;exports.presentRawTemporalCell=Ot;exports.previewDeclaredSqlRawTemporalFormat=Bt;exports.reindexSlotCards=Ut;exports.resolveAuthoredDetailRawTemporalFormat=ge;exports.resolveCardRawTemporalPresentation=Ue;exports.resolveCartesianTemporalActivation=Et;exports.resolveDashboardCardResultOwner=J;exports.resolveDashboardTemporalActivation=De;exports.resolveDeclaredSqlRawTemporalFormat=ae;exports.resolveGroupedTemporalFieldPresentationByRole=Ne;exports.resolveGroupedTemporalFieldSnapshotFormat=Ve;exports.resolveGroupedTemporalPresentation=Rt;exports.resolveMultiInputType=Je;exports.resolveMultiInputTypeFromVisual=Ht;exports.resolveRegularTableTemporalActivation=wt;exports.validateBriefingContentDocument=Nr;exports.validateBriefingDraft=an;exports.validateBriefingJobConfig=ln;