react-semaphor 0.1.513 → 0.1.515

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 (70) hide show
  1. package/dist/brand-studio/index.cjs +1 -1
  2. package/dist/brand-studio/index.js +1 -1
  3. package/dist/briefings/index.cjs +1 -1
  4. package/dist/briefings/index.js +3 -3
  5. package/dist/chunks/{dashboard-briefing-launcher-BgGxFDKD.cjs → dashboard-briefing-launcher-B7zqm8P1.cjs} +1 -1
  6. package/dist/chunks/{dashboard-briefing-launcher-C7ptb5Yf.js → dashboard-briefing-launcher-BA_bl05p.js} +5 -5
  7. package/dist/chunks/{dashboard-controls-BybAeRL8.js → dashboard-controls-QMW17RKx.js} +6 -6
  8. package/dist/chunks/{dashboard-controls-BFT7savs.cjs → dashboard-controls-x_v9wLOU.cjs} +1 -1
  9. package/dist/chunks/{dashboard-json-qNJC4fZW.cjs → dashboard-json-0ZLLBlHj.cjs} +1 -1
  10. package/dist/chunks/{dashboard-json-DmgEQ0yQ.js → dashboard-json-DRnpkNwO.js} +3 -3
  11. package/dist/chunks/{edit-dashboard-visual-CHqpQVfv.js → edit-dashboard-visual-1ISjhwry.js} +1377 -1380
  12. package/dist/chunks/{edit-dashboard-visual-BS219qr8.cjs → edit-dashboard-visual-CI0EqzKj.cjs} +2 -2
  13. package/dist/chunks/{editor-action-buttons-DbU_vUvm.js → editor-action-buttons-BTCKZERI.js} +3 -3
  14. package/dist/chunks/{editor-action-buttons-6NvSUz4D.cjs → editor-action-buttons-Czq5SnA9.cjs} +1 -1
  15. package/dist/chunks/{index-DhlVxvyI.cjs → index-BMMXKK3G.cjs} +1 -1
  16. package/dist/chunks/{index-CrxlydOT.cjs → index-C6_xef4P.cjs} +168 -168
  17. package/dist/chunks/{index-CACdoqu3.js → index-C8w91oj4.js} +61 -51
  18. package/dist/chunks/index-Cw2ypaFl.cjs +1 -0
  19. package/dist/chunks/{index-WMVZeOZp.js → index-Dlic9KZs.js} +32234 -31816
  20. package/dist/chunks/{index-CnGVjyF8.js → index-v1OE4-eA.js} +2 -2
  21. package/dist/chunks/matrix-formatter-BdIsE7Qu.js +341 -0
  22. package/dist/chunks/matrix-formatter-Dajj91Ni.cjs +1 -0
  23. package/dist/chunks/{pivot-header-presentation-Dm9dUQsl.js → pivot-header-presentation-BIf4HW3L.js} +35 -36
  24. package/dist/chunks/{pivot-header-presentation-Cxz8-06f.cjs → pivot-header-presentation-B_N11CgN.cjs} +3 -3
  25. package/dist/chunks/{pivot-result-lifecycle-BeOpjAhg.js → pivot-result-lifecycle-CEmyU2At.js} +207 -148
  26. package/dist/chunks/pivot-result-lifecycle-vg_suUNb.cjs +1 -0
  27. package/dist/chunks/{raw-temporal-DrmCX9Wq.js → raw-temporal-Bj6_w9cG.js} +471 -361
  28. package/dist/chunks/raw-temporal-CeblVJbu.cjs +1 -0
  29. package/dist/chunks/{report-preferences-dialog-CaefWf8W.cjs → report-preferences-dialog-Dr1BYwuf.cjs} +1 -1
  30. package/dist/chunks/{report-preferences-dialog-BoDcPtha.js → report-preferences-dialog-b8J6KjSy.js} +2 -2
  31. package/dist/chunks/semantic-format-DFI1iszk.cjs +1 -0
  32. package/dist/chunks/{semantic-format-BZxJLKvw.js → semantic-format-Dt-nUxFB.js} +23 -29
  33. package/dist/chunks/switch-Ced9ZZwI.cjs +134 -0
  34. package/dist/chunks/{switch-QfKb0Iwe.js → switch-D5_tjsIS.js} +3139 -3087
  35. package/dist/dashboard/index.cjs +1 -1
  36. package/dist/dashboard/index.js +1 -1
  37. package/dist/data-app-builder/index.cjs +1 -1
  38. package/dist/data-app-builder/index.js +2 -2
  39. package/dist/data-app-sdk/index.cjs +1 -1
  40. package/dist/data-app-sdk/index.js +1 -1
  41. package/dist/format-utils/index.cjs +3 -3
  42. package/dist/format-utils/index.js +131 -126
  43. package/dist/index.cjs +1 -1
  44. package/dist/index.js +7 -7
  45. package/dist/surfboard/index.cjs +1 -1
  46. package/dist/surfboard/index.js +2 -2
  47. package/dist/types/components/calculated-fields/templates-menu.d.ts +0 -9
  48. package/dist/types/components/visual/aggregated-table/utils/metric-format-resolver.d.ts +3 -3
  49. package/dist/types/components/visual/data-table/types/data-table.d.ts +4 -1
  50. package/dist/types/components/visual/pivot-table/utils/pivot-metric-formatting.d.ts +2 -2
  51. package/dist/types/index.cjs +1 -1
  52. package/dist/types/index.js +58 -34
  53. package/dist/types/lib/formatters/metric-formatting.d.ts +3 -3
  54. package/dist/types/lib/table-formatting/table-presentation-fields.d.ts +1 -0
  55. package/dist/types/lib/types/calculated-field-template-types.d.ts +3 -2
  56. package/dist/types/lib/utils/calculated-field-row-templates.d.ts +6 -4
  57. package/dist/types/lib/utils/date-timezone-utils.d.ts +26 -4
  58. package/dist/types/shared/format-utils/formatters/duration-formatter.d.ts +4 -1
  59. package/dist/types/shared/format-utils/formatters/index.d.ts +2 -2
  60. package/dist/types/shared/format-utils/formatters/number-formatter.d.ts +8 -2
  61. package/dist/types/shared/format-utils/presentation-execution.d.ts +17 -2
  62. package/dist/types/shared/format-utils/types/format-types.d.ts +16 -1
  63. package/package.json +1 -1
  64. package/dist/chunks/index-F25jnH0p.cjs +0 -1
  65. package/dist/chunks/matrix-formatter-BLunke3R.js +0 -424
  66. package/dist/chunks/matrix-formatter-CveLJo6S.cjs +0 -1
  67. package/dist/chunks/pivot-result-lifecycle-BiERyXnS.cjs +0 -1
  68. package/dist/chunks/raw-temporal-BUeTpG76.cjs +0 -1
  69. package/dist/chunks/semantic-format-BzH69TRq.cjs +0 -1
  70. package/dist/chunks/switch--Re1K566.cjs +0 -134
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("../chunks/index-CrxlydOT.cjs"),e=require("../chunks/common-types-nBuCd3u2.cjs");exports.Dashboard=o.Dashboard;exports.CONTROL_CARD_DEFAULT_VALUE=e.CONTROL_CARD_DEFAULT_VALUE;exports.EMPTY_SELECTION=e.EMPTY_SELECTION;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("../chunks/index-C6_xef4P.cjs"),e=require("../chunks/common-types-nBuCd3u2.cjs");exports.Dashboard=o.Dashboard;exports.CONTROL_CARD_DEFAULT_VALUE=e.CONTROL_CARD_DEFAULT_VALUE;exports.EMPTY_SELECTION=e.EMPTY_SELECTION;
@@ -1,4 +1,4 @@
1
- import { D as o } from "../chunks/index-WMVZeOZp.js";
1
+ import { D as o } from "../chunks/index-Dlic9KZs.js";
2
2
  import { C as s, E as C } from "../chunks/common-types-C6cAQgyh.js";
3
3
  export {
4
4
  s as CONTROL_CARD_DEFAULT_VALUE,
@@ -1,4 +1,4 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),p=require("react"),An=require("react-dom/client"),k=require("../chunks/index-CrxlydOT.cjs"),w=require("../chunks/switch--Re1K566.cjs"),Ze=require("../data-app-builder-browser-runtime/index.cjs"),te=require("../chunks/x-B6ghREd2.cjs"),Cn=require("../chunks/save-3dYRmehL.cjs"),Rn=require("../chunks/mouse-pointer-2-DX4A_XZw.cjs"),tt=require("../chunks/selection-reducer-CGKKsaPa.cjs");function Tr(t){const s=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(t){for(const a in t)if(a!=="default"){const d=Object.getOwnPropertyDescriptor(t,a);Object.defineProperty(s,a,d.get?d:{enumerable:!0,get:()=>t[a]})}}return s.default=t,Object.freeze(s)}const Bn=Tr(p),Dn=Tr(An);/**
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),p=require("react"),An=require("react-dom/client"),k=require("../chunks/index-C6_xef4P.cjs"),w=require("../chunks/switch-Ced9ZZwI.cjs"),Ze=require("../data-app-builder-browser-runtime/index.cjs"),te=require("../chunks/x-B6ghREd2.cjs"),Cn=require("../chunks/save-3dYRmehL.cjs"),Rn=require("../chunks/mouse-pointer-2-DX4A_XZw.cjs"),tt=require("../chunks/selection-reducer-CGKKsaPa.cjs");function Tr(t){const s=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(t){for(const a in t)if(a!=="default"){const d=Object.getOwnPropertyDescriptor(t,a);Object.defineProperty(s,a,d.get?d:{enumerable:!0,get:()=>t[a]})}}return s.default=t,Object.freeze(s)}const Bn=Tr(p),Dn=Tr(An);/**
2
2
  * @license lucide-react v0.453.0 - ISC
3
3
  *
4
4
  * This source code is licensed under the ISC license.
@@ -2,8 +2,8 @@ import { jsx as r, jsxs as c, Fragment as re } from "react/jsx-runtime";
2
2
  import * as Zn from "react";
3
3
  import { useContext as qn, useState as x, useRef as oe, useMemo as je, useEffect as W, useCallback as Ot } from "react";
4
4
  import * as Xn from "react-dom/client";
5
- import { aL as ea, aM as ta, aN as Ir, aO as jr, aP as zr, aQ as ra, aR as Wr, aS as Hr, aT as Jr, aU as Vr, aV as _r, aW as Ur, aX as Gr, aY as na, aZ as aa, a_ as oa, a$ as Ht, b0 as on, R as Kr, b1 as sa, b2 as Vt, b3 as sn, b4 as ia, b5 as la } from "../chunks/index-WMVZeOZp.js";
6
- import { B as H, P as it, a as lt, b as dt, _ as da, $ as ca, a0 as ua, a1 as pa, a2 as ha, L as me, R as ma, d as _t } from "../chunks/switch-QfKb0Iwe.js";
5
+ import { aL as ea, aM as ta, aN as Ir, aO as jr, aP as zr, aQ as ra, aR as Wr, aS as Hr, aT as Jr, aU as Vr, aV as _r, aW as Ur, aX as Gr, aY as na, aZ as aa, a_ as oa, a$ as Ht, b0 as on, R as Kr, b1 as sa, b2 as Vt, b3 as sn, b4 as ia, b5 as la } from "../chunks/index-Dlic9KZs.js";
6
+ import { B as H, P as it, a as lt, b as dt, _ as da, $ as ca, a0 as ua, a1 as pa, a2 as ha, L as me, R as ma, d as _t } from "../chunks/switch-D5_tjsIS.js";
7
7
  import { loadSemaphorBrowserRuntime as ot } from "../data-app-builder-browser-runtime/index.js";
8
8
  import { c as Ve, X as He } from "../chunks/x-CXDkqdur.js";
9
9
  import { S as fa } from "../chunks/save-DgMfP0j8.js";
@@ -1,4 +1,4 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const I=require("../data-app-sdk-adapters/index.cjs"),i=require("react/jsx-runtime"),u=require("react"),M=require("../chunks/validators-DVYAnnX0.cjs"),N=require("../chunks/matrix-operation-contract-DoiWTUbT.cjs"),tr=require("../chunks/matrix-formatter-CveLJo6S.cjs"),P=require("../chunks/selection-reducer-CGKKsaPa.cjs"),We=require("../chunks/x-B6ghREd2.cjs");function pe(e,r,t){return{...t,name:e,role:r}}function Vr(e){return e}function Qr(e){return e}const Ur={source:{semantic(e){return{...e,kind:"semantic"}},sql(e){return{...e,kind:"sql"}}},field:{measure(e,r={}){return pe(e,"measure",r)},dimension(e,r={}){return pe(e,"dimension",r)},date(e,r={}){return pe(e,"date",r)},id(e,r={}){return pe(e,"id",r)}},filter(e){return{...e,kind:"filter"}},selection(e){return{...e,kind:"selection"}},bindInput(e,r){return{toAnalyticsInput(){const[t]=I.toSemaphorInputSnapshots([e]),n=I.toSemaphorInputBinding({...r,inputId:r.inputId||t.inputId});return{...t,inputId:n.inputId,...n.kind?{kind:n.kind}:{},...n.controlRole?{controlRole:n.controlRole}:{},...n.operator?{operator:n.operator}:{},...n.field?{field:n.field}:{},...n.relationshipHint?{relationshipHint:n.relationshipHint}:{}}}}},control(e){return{...e,kind:"control"}},sqlParam(e){return{...e,kind:"control",role:"sqlParam"}},derivedField(e){return{...e,kind:"derived_field",expressionLanguage:e.expressionLanguage||"semaphor_sql_template"}},metric(e){return{...e,queryKind:"metric"}},analysis(e){return{...e,queryKind:"analysis"}},records(e){return{...e,queryKind:"records"}},inputOptions(e){return{...e,queryKind:"inputOptions"}},sql(e){return{...e,queryKind:"sql"}},matrix(e){return{...e,queryKind:"matrix"}}},de=10,Oe=8;function Ne(e,r){const t=e==null?void 0:e.result;if(t)switch(t.kind){case"records":return ae({title:"Records",rowNoun:"rows",records:t.records,columns:t.columns,rowCount:t.rowCount});case"sql":return ae({title:"SQL Rows",rowNoun:"rows",records:t.records,columns:t.columns,rowCount:t.rowCount});case"inputOptions":return ae({title:"Options",rowNoun:"options",records:t.options.slice(0,de).map(n=>{var s;return{label:n.label,value:n.value,count:n.count,disambiguation:(s=n.disambiguation)==null?void 0:s.join(" / ")}}),columns:[{key:"label",label:"Label"},{key:"value",label:"Value"},{key:"count",label:"Count"},{key:"disambiguation",label:"Disambiguation"}],rowCount:t.rowCount??t.options.length});case"metric":return Gr(t,r);case"matrix":return ae({title:"Matrix Cells",rowNoun:"cells",records:t.window.blocks.flatMap(n=>n.cells).slice(0,de).map(n=>{const s=t.window.descriptors.measures.find(o=>o.id===n.measureId);return{row:tr.matrixMemberLabel(n.rowPath),column:tr.matrixMemberLabel(n.columnPath),measure:(s==null?void 0:s.column.label)||n.measureId,value:n.value}}),columns:[{key:"row",label:"Row"},{key:"column",label:"Column"},{key:"measure",label:"Measure"},{key:"value",label:"Value"}],rowCount:t.window.blocks.reduce((n,s)=>n+s.cells.length,0)});default:return Yr(t)}}function Gr(e,r){var o,a,p,f,c;const t=[{metric:"primaryValue",value:(r==null?void 0:r.primaryValue)??e.primaryValue}],n=(r==null?void 0:r.comparisonKind)??((o=e.comparison)==null?void 0:o.kind);return n&&t.push({metric:`${n} value`,value:(r==null?void 0:r.comparisonValue)??((a=e.comparison)==null?void 0:a.value)},{metric:"delta",value:(r==null?void 0:r.delta)??((p=e.comparison)==null?void 0:p.delta)},{metric:"deltaPercent",value:(r==null?void 0:r.deltaPercent)??((f=e.comparison)==null?void 0:f.deltaPercent)}),(((c=r==null?void 0:r.missingMeasures)==null?void 0:c.filter(Boolean))??[]).forEach(m=>{t.push({metric:`missing:${m}`,value:"missing"})}),Object.entries((r==null?void 0:r.measures)??{}).sort(([m],[g])=>m.localeCompare(g)).forEach(([m,g])=>{t.push({metric:`measure:${m}`,value:g})}),Object.entries((r==null?void 0:r.measureBindings)??{}).sort(([m],[g])=>m.localeCompare(g)).forEach(([m,g])=>{t.push({metric:`binding:${m}`,value:g})}),ae({title:"Metric",rowNoun:"values",records:t,columns:[{key:"metric",label:"Metric"},{key:"value",label:"Value"}],rowCount:t.length})}function ae({title:e,rowNoun:r,records:t,columns:n,rowCount:s}){const o=Jr(n,t);if(!o.length)return;const a=s??t.length,p=t.slice(0,de);return{title:e,summary:`${Zr(a)} ${r}`,columns:o.slice(0,Oe),rows:p,truncatedRows:a>p.length,truncatedColumns:o.length>Oe}}function Jr(e,r){if(e!=null&&e.length)return e.filter(n=>n.key).map(n=>({key:n.key,label:n.label||n.key}));const t=new Set;return r.slice(0,de).forEach(n=>{Object.keys(n).forEach(s=>t.add(s))}),[...t].map(n=>({key:n,label:n}))}function Yr(e){throw new Error(`Unhandled Semaphor result kind: ${hr(e)}`)}function Xr(e){return e===null?"null":e===void 0?"":typeof e=="string"?nr(e):typeof e=="number"||typeof e=="boolean"?String(e):nr(hr(e))}function Zr(e){return typeof e=="number"?e.toLocaleString():"-"}function hr(e){return JSON.stringify(e,null,2)??"undefined"}function nr(e){return e.length>80?`${e.slice(0,77)}...`:e}function xe(e){return e.viewTitle||e.queryLabel||e.viewId||e.queryId}function et(e){if(e.label)return e.label;if(e.queryKind!=="inputOptions")return;const t=e.labelField.label||e.valueField.label||e.labelField.name||e.valueField.name||e.inputId;return`${rt(t)} Options`}function rt(e){return(e.replace(/([a-z0-9])([A-Z])/g,"$1 $2").replace(/[_-]+/g," ").replace(/\bfilter\b/gi," ").replace(/\boptions?\b/gi," ").replace(/\bid\b/gi," ").replace(/\s+/g," ").trim()||e).split(" ").filter(Boolean).map(n=>n===n.toUpperCase()&&n.length>1?n:`${n.slice(0,1).toUpperCase()}${n.slice(1)}`).join(" ")}function _e(e){return e.flatMap(r=>{var m,g,h,x;const t=r.latestAttempt,n=t==null?void 0:t.executionResult,s=qe((m=n==null?void 0:n.validation)==null?void 0:m.warnings),o=qe((g=n==null?void 0:n.validation)==null?void 0:g.errors),a=it((h=n==null?void 0:n.coverage)==null?void 0:h.missingObligations),p=qe((x=n==null?void 0:n.coverage)==null?void 0:x.warnings),f=[],c=xe(r);(t==null?void 0:t.status)==="error"&&f.push({trace:r,tone:"error",title:c,message:t.errorMessage||"Query attempt failed."});for(const b of r.clientWarnings)f.push({trace:r,tone:"warning",title:c,message:b});for(const b of s)f.push({trace:r,tone:"warning",title:c,...b});for(const b of o)f.push({trace:r,tone:"error",title:c,...b});for(const b of a)f.push({trace:r,tone:"warning",title:c,message:b});for(const b of p)f.push({trace:r,tone:"warning",title:c,...b});return f})}function tt(e){return{traceId:e.trace.traceId,queryId:e.trace.queryId,viewId:e.trace.viewId,viewTitle:e.trace.viewTitle,queryLabel:e.trace.queryLabel,severity:e.tone,title:e.title,message:e.message,code:e.code,path:e.path}}function nt(e,r){return e.filter(t=>t.trace.traceId===r.traceId).length}function st(e){const r=_e(e),t=e.filter(a=>{var p;return((p=a.latestAttempt)==null?void 0:p.status)==="error"}).length,n=e.filter(a=>{var p;return((p=a.latestAttempt)==null?void 0:p.status)==="loading"}).length,s=r.filter(a=>a.tone==="error").length,o=r.filter(a=>a.tone==="warning").length;return{total:e.length,failed:t,loading:n,errorCount:s,warningCount:o,issueCount:r.length,severity:t||s?"error":o?"warning":n?"loading":"ok"}}function it(e){return Array.isArray(e)?e.filter(r=>typeof r=="string"):[]}function qe(e){return Array.isArray(e)?e.map(ot).filter(r=>!!r):[]}function ot(e){if(typeof e=="string")return{message:e};if(!e||typeof e!="object"||Array.isArray(e))return;const r=e,t=typeof r.message=="string"?r.message:"",n=typeof r.code=="string"?r.code:"",s=typeof r.path=="string"?r.path:"";return t&&n?{message:s?`${t} (${n}, ${s})`:`${t} (${n})`,code:n,...s?{path:s}:{}}:t?{message:t,...s?{path:s}:{}}:n?{message:n,code:n}:void 0}function at(e){if(!e.enabled)return e;const r=e.queries.map(br);return{enabled:e.enabled,queries:r,issues:e.issues,getQuery:t=>r.find(n=>n.queryId===t),getQueries:t=>r.filter(n=>n.queryId===t)}}function sr(e){return e?br(e):void 0}function br(e){var r;return(r=e==null?void 0:e.latestAttempt)!=null&&r.executionResult?{...e,latestAttempt:{...e.latestAttempt,resultPreview:e.latestAttempt.resultPreview||Ne(e.latestAttempt.executionResult),executionResult:lt(e.latestAttempt.executionResult)}}:e}function lt(e){const{compiledQuery:r,intent:t,result:n,...s}=e,o=dt(s.metadata);return{...s,...o?{metadata:o}:{}}}function dt(e){if(!e||typeof e!="object"||Array.isArray(e))return e;const r=e.dataAppDebug;if(!r||typeof r!="object"||Array.isArray(r))return e;const{compiledSql:t,...n}=r;return{...e,dataAppDebug:n}}function ut(e){return e==="relative"?{position:"relative",top:"auto",right:"auto",bottom:"auto",left:"auto"}:{top:e.startsWith("top")?20:"auto",right:e.endsWith("right")?20:"auto",bottom:e.startsWith("bottom")?20:"auto",left:e.endsWith("left")?20:"auto"}}function ct(e){return e==="error"?{borderColor:"var(--sd-error-border)",background:"var(--sd-error-bg)",color:"var(--sd-error-fg)"}:e==="warning"?{borderColor:"var(--sd-warning-border)",background:"var(--sd-warning-bg)",color:"var(--sd-warning-fg)"}:e==="loading"?{borderColor:"var(--sd-loading-border)",background:"var(--sd-loading-bg)",color:"var(--sd-loading-fg)"}:{borderColor:"var(--sd-success-border)",background:"var(--sd-success-bg)",color:"var(--sd-success-fg)"}}function ft(e){return e==="right"?{top:16,right:16,bottom:16,left:"auto",width:"min(720px, calc(100vw - 32px))",height:"auto",borderRadius:6}:{top:"auto",right:16,bottom:16,left:16,width:"auto",height:"min(420px, 45vh)",borderRadius:6}}function pt(e){return e==="right"?{gridTemplateColumns:"minmax(210px, 280px) minmax(0, 1fr)"}:{gridTemplateColumns:"minmax(260px, 340px) minmax(0, 1fr)"}}function mt(e){return{borderRight:"1px solid var(--sd-border)",borderBottom:0}}function vr(e){return e==="error"?{background:"var(--sd-error-dot)"}:e==="success"?{background:"var(--sd-success-dot)"}:e==="loading"?{background:"var(--sd-loading-dot)"}:{background:"var(--sd-idle-dot)"}}function gt(e){return e==="error"?{borderColor:"var(--sd-error-border)",color:"var(--sd-error-fg)"}:e==="success"?{borderColor:"var(--sd-success-border)",color:"var(--sd-success-fg)"}:e==="loading"?{borderColor:"var(--sd-loading-border)",color:"var(--sd-loading-fg)"}:{borderColor:"var(--sd-border)",color:"var(--sd-fg-muted)"}}const ir="semaphor-devtools-stylesheet",T="semaphor-devtools",yt=`
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const I=require("../data-app-sdk-adapters/index.cjs"),i=require("react/jsx-runtime"),u=require("react"),M=require("../chunks/validators-DVYAnnX0.cjs"),N=require("../chunks/matrix-operation-contract-DoiWTUbT.cjs"),tr=require("../chunks/matrix-formatter-Dajj91Ni.cjs"),P=require("../chunks/selection-reducer-CGKKsaPa.cjs"),We=require("../chunks/x-B6ghREd2.cjs");function pe(e,r,t){return{...t,name:e,role:r}}function Vr(e){return e}function Qr(e){return e}const Ur={source:{semantic(e){return{...e,kind:"semantic"}},sql(e){return{...e,kind:"sql"}}},field:{measure(e,r={}){return pe(e,"measure",r)},dimension(e,r={}){return pe(e,"dimension",r)},date(e,r={}){return pe(e,"date",r)},id(e,r={}){return pe(e,"id",r)}},filter(e){return{...e,kind:"filter"}},selection(e){return{...e,kind:"selection"}},bindInput(e,r){return{toAnalyticsInput(){const[t]=I.toSemaphorInputSnapshots([e]),n=I.toSemaphorInputBinding({...r,inputId:r.inputId||t.inputId});return{...t,inputId:n.inputId,...n.kind?{kind:n.kind}:{},...n.controlRole?{controlRole:n.controlRole}:{},...n.operator?{operator:n.operator}:{},...n.field?{field:n.field}:{},...n.relationshipHint?{relationshipHint:n.relationshipHint}:{}}}}},control(e){return{...e,kind:"control"}},sqlParam(e){return{...e,kind:"control",role:"sqlParam"}},derivedField(e){return{...e,kind:"derived_field",expressionLanguage:e.expressionLanguage||"semaphor_sql_template"}},metric(e){return{...e,queryKind:"metric"}},analysis(e){return{...e,queryKind:"analysis"}},records(e){return{...e,queryKind:"records"}},inputOptions(e){return{...e,queryKind:"inputOptions"}},sql(e){return{...e,queryKind:"sql"}},matrix(e){return{...e,queryKind:"matrix"}}},de=10,Oe=8;function Ne(e,r){const t=e==null?void 0:e.result;if(t)switch(t.kind){case"records":return ae({title:"Records",rowNoun:"rows",records:t.records,columns:t.columns,rowCount:t.rowCount});case"sql":return ae({title:"SQL Rows",rowNoun:"rows",records:t.records,columns:t.columns,rowCount:t.rowCount});case"inputOptions":return ae({title:"Options",rowNoun:"options",records:t.options.slice(0,de).map(n=>{var s;return{label:n.label,value:n.value,count:n.count,disambiguation:(s=n.disambiguation)==null?void 0:s.join(" / ")}}),columns:[{key:"label",label:"Label"},{key:"value",label:"Value"},{key:"count",label:"Count"},{key:"disambiguation",label:"Disambiguation"}],rowCount:t.rowCount??t.options.length});case"metric":return Gr(t,r);case"matrix":return ae({title:"Matrix Cells",rowNoun:"cells",records:t.window.blocks.flatMap(n=>n.cells).slice(0,de).map(n=>{const s=t.window.descriptors.measures.find(o=>o.id===n.measureId);return{row:tr.matrixMemberLabel(n.rowPath),column:tr.matrixMemberLabel(n.columnPath),measure:(s==null?void 0:s.column.label)||n.measureId,value:n.value}}),columns:[{key:"row",label:"Row"},{key:"column",label:"Column"},{key:"measure",label:"Measure"},{key:"value",label:"Value"}],rowCount:t.window.blocks.reduce((n,s)=>n+s.cells.length,0)});default:return Yr(t)}}function Gr(e,r){var o,a,p,f,c;const t=[{metric:"primaryValue",value:(r==null?void 0:r.primaryValue)??e.primaryValue}],n=(r==null?void 0:r.comparisonKind)??((o=e.comparison)==null?void 0:o.kind);return n&&t.push({metric:`${n} value`,value:(r==null?void 0:r.comparisonValue)??((a=e.comparison)==null?void 0:a.value)},{metric:"delta",value:(r==null?void 0:r.delta)??((p=e.comparison)==null?void 0:p.delta)},{metric:"deltaPercent",value:(r==null?void 0:r.deltaPercent)??((f=e.comparison)==null?void 0:f.deltaPercent)}),(((c=r==null?void 0:r.missingMeasures)==null?void 0:c.filter(Boolean))??[]).forEach(m=>{t.push({metric:`missing:${m}`,value:"missing"})}),Object.entries((r==null?void 0:r.measures)??{}).sort(([m],[g])=>m.localeCompare(g)).forEach(([m,g])=>{t.push({metric:`measure:${m}`,value:g})}),Object.entries((r==null?void 0:r.measureBindings)??{}).sort(([m],[g])=>m.localeCompare(g)).forEach(([m,g])=>{t.push({metric:`binding:${m}`,value:g})}),ae({title:"Metric",rowNoun:"values",records:t,columns:[{key:"metric",label:"Metric"},{key:"value",label:"Value"}],rowCount:t.length})}function ae({title:e,rowNoun:r,records:t,columns:n,rowCount:s}){const o=Jr(n,t);if(!o.length)return;const a=s??t.length,p=t.slice(0,de);return{title:e,summary:`${Zr(a)} ${r}`,columns:o.slice(0,Oe),rows:p,truncatedRows:a>p.length,truncatedColumns:o.length>Oe}}function Jr(e,r){if(e!=null&&e.length)return e.filter(n=>n.key).map(n=>({key:n.key,label:n.label||n.key}));const t=new Set;return r.slice(0,de).forEach(n=>{Object.keys(n).forEach(s=>t.add(s))}),[...t].map(n=>({key:n,label:n}))}function Yr(e){throw new Error(`Unhandled Semaphor result kind: ${hr(e)}`)}function Xr(e){return e===null?"null":e===void 0?"":typeof e=="string"?nr(e):typeof e=="number"||typeof e=="boolean"?String(e):nr(hr(e))}function Zr(e){return typeof e=="number"?e.toLocaleString():"-"}function hr(e){return JSON.stringify(e,null,2)??"undefined"}function nr(e){return e.length>80?`${e.slice(0,77)}...`:e}function xe(e){return e.viewTitle||e.queryLabel||e.viewId||e.queryId}function et(e){if(e.label)return e.label;if(e.queryKind!=="inputOptions")return;const t=e.labelField.label||e.valueField.label||e.labelField.name||e.valueField.name||e.inputId;return`${rt(t)} Options`}function rt(e){return(e.replace(/([a-z0-9])([A-Z])/g,"$1 $2").replace(/[_-]+/g," ").replace(/\bfilter\b/gi," ").replace(/\boptions?\b/gi," ").replace(/\bid\b/gi," ").replace(/\s+/g," ").trim()||e).split(" ").filter(Boolean).map(n=>n===n.toUpperCase()&&n.length>1?n:`${n.slice(0,1).toUpperCase()}${n.slice(1)}`).join(" ")}function _e(e){return e.flatMap(r=>{var m,g,h,x;const t=r.latestAttempt,n=t==null?void 0:t.executionResult,s=qe((m=n==null?void 0:n.validation)==null?void 0:m.warnings),o=qe((g=n==null?void 0:n.validation)==null?void 0:g.errors),a=it((h=n==null?void 0:n.coverage)==null?void 0:h.missingObligations),p=qe((x=n==null?void 0:n.coverage)==null?void 0:x.warnings),f=[],c=xe(r);(t==null?void 0:t.status)==="error"&&f.push({trace:r,tone:"error",title:c,message:t.errorMessage||"Query attempt failed."});for(const b of r.clientWarnings)f.push({trace:r,tone:"warning",title:c,message:b});for(const b of s)f.push({trace:r,tone:"warning",title:c,...b});for(const b of o)f.push({trace:r,tone:"error",title:c,...b});for(const b of a)f.push({trace:r,tone:"warning",title:c,message:b});for(const b of p)f.push({trace:r,tone:"warning",title:c,...b});return f})}function tt(e){return{traceId:e.trace.traceId,queryId:e.trace.queryId,viewId:e.trace.viewId,viewTitle:e.trace.viewTitle,queryLabel:e.trace.queryLabel,severity:e.tone,title:e.title,message:e.message,code:e.code,path:e.path}}function nt(e,r){return e.filter(t=>t.trace.traceId===r.traceId).length}function st(e){const r=_e(e),t=e.filter(a=>{var p;return((p=a.latestAttempt)==null?void 0:p.status)==="error"}).length,n=e.filter(a=>{var p;return((p=a.latestAttempt)==null?void 0:p.status)==="loading"}).length,s=r.filter(a=>a.tone==="error").length,o=r.filter(a=>a.tone==="warning").length;return{total:e.length,failed:t,loading:n,errorCount:s,warningCount:o,issueCount:r.length,severity:t||s?"error":o?"warning":n?"loading":"ok"}}function it(e){return Array.isArray(e)?e.filter(r=>typeof r=="string"):[]}function qe(e){return Array.isArray(e)?e.map(ot).filter(r=>!!r):[]}function ot(e){if(typeof e=="string")return{message:e};if(!e||typeof e!="object"||Array.isArray(e))return;const r=e,t=typeof r.message=="string"?r.message:"",n=typeof r.code=="string"?r.code:"",s=typeof r.path=="string"?r.path:"";return t&&n?{message:s?`${t} (${n}, ${s})`:`${t} (${n})`,code:n,...s?{path:s}:{}}:t?{message:t,...s?{path:s}:{}}:n?{message:n,code:n}:void 0}function at(e){if(!e.enabled)return e;const r=e.queries.map(br);return{enabled:e.enabled,queries:r,issues:e.issues,getQuery:t=>r.find(n=>n.queryId===t),getQueries:t=>r.filter(n=>n.queryId===t)}}function sr(e){return e?br(e):void 0}function br(e){var r;return(r=e==null?void 0:e.latestAttempt)!=null&&r.executionResult?{...e,latestAttempt:{...e.latestAttempt,resultPreview:e.latestAttempt.resultPreview||Ne(e.latestAttempt.executionResult),executionResult:lt(e.latestAttempt.executionResult)}}:e}function lt(e){const{compiledQuery:r,intent:t,result:n,...s}=e,o=dt(s.metadata);return{...s,...o?{metadata:o}:{}}}function dt(e){if(!e||typeof e!="object"||Array.isArray(e))return e;const r=e.dataAppDebug;if(!r||typeof r!="object"||Array.isArray(r))return e;const{compiledSql:t,...n}=r;return{...e,dataAppDebug:n}}function ut(e){return e==="relative"?{position:"relative",top:"auto",right:"auto",bottom:"auto",left:"auto"}:{top:e.startsWith("top")?20:"auto",right:e.endsWith("right")?20:"auto",bottom:e.startsWith("bottom")?20:"auto",left:e.endsWith("left")?20:"auto"}}function ct(e){return e==="error"?{borderColor:"var(--sd-error-border)",background:"var(--sd-error-bg)",color:"var(--sd-error-fg)"}:e==="warning"?{borderColor:"var(--sd-warning-border)",background:"var(--sd-warning-bg)",color:"var(--sd-warning-fg)"}:e==="loading"?{borderColor:"var(--sd-loading-border)",background:"var(--sd-loading-bg)",color:"var(--sd-loading-fg)"}:{borderColor:"var(--sd-success-border)",background:"var(--sd-success-bg)",color:"var(--sd-success-fg)"}}function ft(e){return e==="right"?{top:16,right:16,bottom:16,left:"auto",width:"min(720px, calc(100vw - 32px))",height:"auto",borderRadius:6}:{top:"auto",right:16,bottom:16,left:16,width:"auto",height:"min(420px, 45vh)",borderRadius:6}}function pt(e){return e==="right"?{gridTemplateColumns:"minmax(210px, 280px) minmax(0, 1fr)"}:{gridTemplateColumns:"minmax(260px, 340px) minmax(0, 1fr)"}}function mt(e){return{borderRight:"1px solid var(--sd-border)",borderBottom:0}}function vr(e){return e==="error"?{background:"var(--sd-error-dot)"}:e==="success"?{background:"var(--sd-success-dot)"}:e==="loading"?{background:"var(--sd-loading-dot)"}:{background:"var(--sd-idle-dot)"}}function gt(e){return e==="error"?{borderColor:"var(--sd-error-border)",color:"var(--sd-error-fg)"}:e==="success"?{borderColor:"var(--sd-success-border)",color:"var(--sd-success-fg)"}:e==="loading"?{borderColor:"var(--sd-loading-border)",color:"var(--sd-loading-fg)"}:{borderColor:"var(--sd-border)",color:"var(--sd-fg-muted)"}}const ir="semaphor-devtools-stylesheet",T="semaphor-devtools",yt=`
2
2
  .${T} {
3
3
  --sd-bg: #ffffff;
4
4
  --sd-bg-muted: #fafafa;
@@ -4,7 +4,7 @@ import { createContext as Ae, useContext as Q, useState as _, useRef as T, useEf
4
4
  import { q as pt, u as gt, ac as mt, aW as xe, s as yt } from "../chunks/validators-CkHsAvwB.js";
5
5
  import { a as ko, b0 as Co } from "../chunks/validators-CkHsAvwB.js";
6
6
  import { Q as ht, a6 as bt, a5 as vt, D as sr, t as ar, L as St } from "../chunks/matrix-operation-contract-D0HfzwZg.js";
7
- import { m as lr } from "../chunks/matrix-formatter-BLunke3R.js";
7
+ import { m as lr } from "../chunks/matrix-formatter-BdIsE7Qu.js";
8
8
  import { M as wt, a as It, S as xt, E as qt, C as At, r as dr } from "../chunks/selection-reducer-BIiQXbGM.js";
9
9
  import { X as Tt, C as kt, j as Ct } from "../chunks/x-CXDkqdur.js";
10
10
  function he(e, r, t) {
@@ -1,3 +1,3 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const I=require("../chunks/semantic-format-BzH69TRq.cjs"),c=require("../chunks/raw-temporal-BUeTpG76.cjs"),T=require("../chunks/matrix-formatter-CveLJo6S.cjs"),n=require("../chunks/pivot-header-presentation-Cxz8-06f.cjs"),x=require("../chunks/validators-DVYAnnX0.cjs"),h=require("../chunks/matrix-continuation-6nhDy-lF.cjs");require("../chunks/matrix-operation-contract-DoiWTUbT.cjs");const q=require("../chunks/matrix-definition-CBJW_4ii.cjs"),C=require("../pdf-export-policy/index.cjs"),E=require("../chunks/pivot-result-lifecycle-BiERyXnS.cjs"),d=require("../chunks/temporal-bucket-4YEPEKlJ.cjs"),X=require("../chunks/metric-comparison-DBQ3EJTz.cjs"),w=require("../chunks/pivot-result-identity-uTiylUNr.cjs"),N=require("../chunks/raw-temporal-contract-DECbTuzA.cjs");function O(e,r){const a=[];r.includeHeaders&&a.push(n.arrayToCSVRow(r.visibleColumns,r.delimiter));for(const o of e){const s=T.formatRowForExport(o,r);a.push(s.map(i=>n.escapeCSVValue(i,r.delimiter)).join(r.delimiter))}return a}function $(e,r,a=`
2
- `){return O(e,r).join(a)}function V(e,r,a){for(const o of e){if(o.level<a){r[o.level].push(o.name);for(let s=1;s<o.colspan;s++)r[o.level].push("")}o.children?V(o.children,r,a):o.columnKey&&r[a].push(o.name)}}function k(e){const r=e.pivotByColumns.length,a=e.groupByColumns.length,o=Array.from({length:r+1},()=>[]);for(let s=0;s<r;s++)o[s].push(...Array(a).fill(""));if(o[r].push(...e.groupByColumns.map(s=>s.label||s.name)),V(e.columnHeadersTree,o,r),e.showRowTotals){for(let s=0;s<r;s++)o[s].push("");o[r].push("Total")}return o}function G(e,r,a){if(e==null)return"";if(!a.useFormattedValues)return String(e);const o=a.columnSettings[r];return typeof e=="number"&&(o==null?void 0:o.type)==="number"?c.formatNumberWithColumnSettings(e,o.numberFormat,a.locale):typeof e=="number"?e.toLocaleString(a.locale):String(e)}function L(e,r,a){const o=[];e.fieldValues.forEach((i,t)=>{e.isSubtotal&&t===0?o.push(`${i} Total`):e.isSubtotal?o.push(""):o.push(String(i??""))});let s=0;return r.columnHeaders.forEach(i=>{var u;const t=(u=e.cells[i])==null?void 0:u.value,m=G(t,i,a);o.push(m),r.showRowTotals&&typeof t=="number"&&(s+=t)}),r.showRowTotals&&o.push(s.toLocaleString(a.locale)),o}function H(e,r,a){const o=[];if(a.includeHeaders){const s=k(r);for(const i of s)o.push(n.arrayToCSVRow(i,a.delimiter))}for(const s of e){const i=L(s,r,a);o.push(i.map(t=>n.escapeCSVValue(t,a.delimiter)).join(a.delimiter))}return o}function B(e,r,a){const o=T.prepareMatrixFormatting(e.descriptors,r.presentation,a),s=e.columns.map(l=>{var p;return l.kind==="measure"&&((p=o.measureSemantics.get(l.measureId))==null?void 0:p.isNumeric)===!0}),i=l=>T.matrixMemberLabel([l],o.levels),t=(l,p,f)=>T.matrixAxisLabel(l,p,r.presentation.totals[f],o.levels),m=e.columns.map(l=>{if(l.kind!=="measure")return l.label;const p=l.columnPath.map(i);return l.role!=="member"&&p.push(t(l.columnPath,l.role,"columns")),[...p,l.label].join(" / ")}),u=Math.min(r.spec.columns.length,Math.max(0,...e.columns.map(l=>l.kind==="measure"?l.columnPath.length+(l.role!=="member"?1:0):0))),R=Array.from({length:u+1},(l,p)=>e.columns.map(f=>p===u?f.label:f.kind!=="measure"?"":p<f.columnPath.length?i(f.columnPath[p]):p===f.columnPath.length&&f.role!=="member"?t(f.columnPath,f.role,"columns"):"")),b=(l,p)=>{if(l.kind!=="layout")throw new Error("Layout presentation requires layout rows.");if(l.values.length!==e.columns.length)throw new Error("Matrix row does not match its frozen layout.");const f=T.matrixLevelLabels({path:l.rowPath,role:l.role,levelCount:Math.max(1,r.spec.rows.length),repeatLabels:r.presentation.layout.kind!=="tabular"||r.presentation.layout.repeatLabels,previousPath:p==null?void 0:p.rowPath});return e.columns.map((v,S)=>{if(v.kind==="hierarchy")return`${" ".repeat(Math.max(0,l.rowPath.length-1))}${t(l.rowPath,l.role,"rows")}`;if(v.kind==="level"){const y=r.spec.rows.findIndex(D=>D.id===v.levelId),g=f[y];return g!=null&&g.visible?g.total?t(l.rowPath,l.role,"rows"):T.matrixMemberLabel(g.path,o.levels):""}const A=l.values[S],_=o.measures.get(v.measureId);if(A.kind==="value"&&!_)throw new Error("Matrix value is missing its measure descriptor.");return T.matrixCellText(A,_,r.presentation.absence)})},P=(l,p)=>b(l,p).map((f,v)=>{var y;const S=l.values[v],A=e.columns[v];return A.kind==="measure"&&!((y=o.measureSemantics.get(A.measureId))!=null&&y.hasTextAffixes)&&S.kind==="value"&&(typeof S.value=="number"||x.isExactNumericValue(S.value))?f:n.protectCSVText(f)});return{headers:m,headerBands:R,row:l=>b(l),numericColumns:s,csvRow:l=>P(l),csvRows:l=>l.map((p,f)=>P(p,l[f-1]))}}function U(e){return e.columns.map(r=>n.protectCSVText(r.label))}function j(e){if(e.kind!=="flat")throw new Error("Raw Matrix CSV requires flat rows.");return e.values.map(r=>r.kind!=="value"?null:x.isExactNumericValue(r.value)?r.value.value:typeof r.value=="string"?n.protectCSVText(r.value):typeof r.value=="boolean"?String(r.value):r.value)}function z(e){const r=B(e.layout,e.request,e.report),a=e.layout.columns.map((t,m)=>({index:m,columnId:`matrix:${m}`,label:r.headers[m],isNumeric:r.numericColumns[m]})),o=(t,m,u)=>({text:t,colspan:1,rowspan:1,columnId:a[m].columnId,isHeader:u,isNumeric:a[m].isNumeric,className:a[m].isNumeric?"numeric":e.layout.columns[m].kind==="hierarchy"?"matrix-hierarchy":""}),s=[],i=e.layout.columns.findIndex(t=>t.kind==="measure");e.request.spec.columns.length&&i>=0&&s.push({repeatHeader:!0,headerType:"pivot-axis",headerRowIndex:0,cells:[...i?[{...o("",0,!0),colspan:i}]:[],{...o(e.request.spec.columns.map(t=>q.getMatrixLevelLabel(t,e.request.presentation)).join(" / "),i,!0),colspan:e.layout.columns.length-i,isNumeric:!1,className:""}]});for(const[t,m]of r.headerBands.entries())s.push({repeatHeader:!0,headerType:t===r.headerBands.length-1?"metrics":"pivot-level",headerRowIndex:s.length,cells:m.map((u,R)=>o(u,R,!0))});return{headers:s,rows:e.rows.map((t,m)=>({index:m,type:t.kind==="layout"&&t.role!=="member"?"subtotal":"data",subtotalLevel:String(t.rowPath.length),cells:r.row(t).map((u,R)=>o(u,R,!1))})),grandTotal:null,metadata:{tableType:"pivot",totalRows:e.rows.length,totalColumns:a.length,rowLevels:e.layout.columns.filter(t=>t.kind!=="measure").length,pivotLevels:e.request.spec.columns.length,hasGrandTotal:!1,columnOrder:a.map(t=>t.columnId),columns:a}}}function F(e){if(e===null||typeof e!="object"||Array.isArray(e))return!1;const r=Object.getPrototypeOf(e);return r===null||r===Object.prototype}function M(e,r,a){const o=new Set(r),s=Object.keys(e).find(i=>!o.has(i));if(s)throw new Error(`${a} contains unknown property "${s}"`)}function K(e,r="tableTotalsRequest"){if(!F(e))throw new Error(`${r} must be an object`);if(M(e,["source","columns"],r),e.source!=="documentFlatTable")throw new Error(`${r}.source must be documentFlatTable`);if(!Array.isArray(e.columns)||e.columns.length===0)throw new Error(`${r}.columns must be a non-empty array`);let a=0;const o=e.columns.map((t,m)=>{const u=`${r}.columns.${m}`;if(!F(t))throw new Error(`${u} must be an object`);M(t,["fieldId","role","behavior","metricAlias","label"],u);const R=typeof t.fieldId=="string"?t.fieldId.trim():"";if(!R)throw new Error(`${u}.fieldId must be a non-empty string`);if(t.role!=="detail"&&t.role!=="groupby"&&t.role!=="metric")throw new Error(`${u}.role is invalid`);const b=t.role;if(t.behavior!=="sum"&&t.behavior!=="avg"&&t.behavior!=="count"&&t.behavior!=="label")throw new Error(`${u}.behavior is invalid`);const P=t.behavior,l=typeof t.metricAlias=="string"?t.metricAlias.trim():void 0;if(t.metricAlias!==void 0&&!l)throw new Error(`${u}.metricAlias must be a non-empty string`);if(l&&b!=="metric")throw new Error(`${u}.metricAlias requires metric role`);if(P==="label"){if(a+=1,b==="metric")throw new Error(`${u}.behavior label requires a non-metric role`)}else if(b!=="metric")throw new Error(`${u}.${P} requires metric role`);if(t.label!==void 0&&typeof t.label!="string")throw new Error(`${u}.label must be a string`);return{fieldId:R,role:b,behavior:P,...l?{metricAlias:l}:{},...t.label!==void 0?{label:t.label}:{}}}),s=new Map,i=new Set;for(const t of o){if(t.metricAlias){if(i.has(t.metricAlias))throw new Error(`${r}.columns duplicates metricAlias "${t.metricAlias}"`);i.add(t.metricAlias)}const m=s.get(t.fieldId)??[];m.push(t),s.set(t.fieldId,m)}for(const[t,m]of s)if(m.length!==1){for(const u of m)if(u.role!=="metric"||!u.metricAlias)throw new Error(`${r}.columns duplicates fieldId "${t}" without distinct metricAlias values`)}if(a>1)throw new Error(`${r}.columns may contain at most one label`);return{source:"documentFlatTable",columns:o}}function Y(e,r="tableTotalsByColumnId"){if(!F(e))throw new Error(`${r} must be an object`);const a={};for(const[o,s]of Object.entries(e)){if(!o.trim())throw new Error(`${r} contains an empty column id`);if(s!==null&&typeof s!="string"&&(typeof s!="number"||!Number.isFinite(s)))throw new Error(`${r}.${o} must be a string, finite number, or null`);a[o]=s}if(Object.keys(a).length===0)throw new Error(`${r} must not be empty`);return a}function W(e){if(typeof e=="number")return Number.isFinite(e)?e:null;if(!e.trim())return null;const r=Number(e);return Number.isFinite(r)?r:null}function Q(e){const r=e.visibleColumns.map(a=>{const s=Object.prototype.hasOwnProperty.call(e.totalsByColumnId,a)?e.totalsByColumnId[a]:a===e.labelColumnKey?"Total":null;if(s===null)return"";if(!e.useFormattedValues)return String(s);const i=E.findResolvedNumericFormat({snapshot:e.snapshot,scope:e.scope,target:{kind:"column",columnKey:a}}),t=i?W(s):null;return i&&t!==null?c.formatNumericCanonical(t,i):String(s)});return`${n.arrayToCSVRow(r,e.delimiter)}
3
- `}exports.fromSemanticFormat=I.fromSemanticFormat;exports.isNumericCanonicalFormat=I.isNumericCanonicalFormat;exports.RawTemporalFormatContractError=c.RawTemporalFormatContractError;exports.assertRawTemporalChunkClassificationAgreement=c.assertRawTemporalChunkClassificationAgreement;exports.classifyDeclaredSqlTemporalColumn=c.classifyDeclaredSqlTemporalColumn;exports.createRawTemporalChunkClassificationEvidence=c.createRawTemporalChunkClassificationEvidence;exports.formatCurrency=c.formatCurrency;exports.formatNumber=c.formatNumber;exports.formatNumberCustom=c.formatNumberCustom;exports.formatNumberWithColumnSettings=c.formatNumberWithColumnSettings;exports.formatNumericCanonical=c.formatNumericCanonical;exports.formatPercent=c.formatPercent;exports.formatRawTemporalValue=c.formatRawTemporalValue;exports.formatScientific=c.formatScientific;exports.parseNumericCanonicalFormat=c.parseNumericCanonicalFormat;exports.parseRawTemporalChunkClassificationEvidence=c.parseRawTemporalChunkClassificationEvidence;exports.parseResolvedNumericCanonicalFormat=c.parseResolvedNumericCanonicalFormat;exports.parseResolvedRawTemporalFormat=c.parseResolvedRawTemporalFormat;exports.prepareRawTemporalFormatter=c.prepareRawTemporalFormatter;exports.resolveCurrencyFractionDigits=c.resolveCurrencyFractionDigits;exports.resolveNumericPresentation=c.resolveNumericPresentation;exports.resolveRawTemporalFormat=c.resolveRawTemporalFormat;exports.validateCardExportNumericPresentationSnapshot=c.validateCardExportNumericPresentationSnapshot;exports.validateRawTemporalPattern=c.validateRawTemporalPattern;exports.formatCellValue=T.formatCellValue;exports.formatDate=T.formatDate;exports.formatDuration=T.formatDuration;exports.formatRelativeTime=T.formatRelativeTime;exports.formatRowForExport=T.formatRowForExport;exports.getTimezoneAbbreviation=T.getTimezoneAbbreviation;exports.getTimezoneName=T.getTimezoneName;exports.parseWithSourceTimezone=T.parseWithSourceTimezone;exports.resolveTimezone=T.resolveTimezone;exports.AGGREGATE_PDF_CONTINUATION_CLASS=n.PDF_GROUP_CONTINUATION_CLASS;exports.AGGREGATE_TOTAL_MEMBER_MARKER=n.AGGREGATE_TOTAL_MEMBER_MARKER;exports.DIRECT_CSV_EXPORT_MAX_ROWS=n.DIRECT_CSV_EXPORT_MAX_ROWS;exports.FULL_DATASET_CSV_EXPORT_MAX_ROWS=n.FULL_DATASET_CSV_EXPORT_MAX_ROWS;exports.MATRIX_EXPORT_MAX_ARTIFACT_BYTES=n.MATRIX_EXPORT_MAX_ARTIFACT_BYTES;exports.MATRIX_EXPORT_MAX_CELLS=n.MATRIX_EXPORT_MAX_CELLS;exports.MATRIX_EXPORT_MAX_ENCODED_BYTES=n.MATRIX_EXPORT_MAX_ENCODED_BYTES;exports.PDF_GROUP_CONTINUATION_CLASS=n.PDF_GROUP_CONTINUATION_CLASS;exports.PdfSafetyLimitError=n.PdfSafetyLimitError;exports.PivotHeaderPresentationError=n.PivotHeaderPresentationError;exports.arrayToCSV=n.arrayToCSV;exports.arrayToCSVRow=n.arrayToCSVRow;exports.escapeCSVValue=n.escapeCSVValue;exports.formatAggregateGrandTotalLabel=n.formatAggregateGrandTotalLabel;exports.formatAggregateGroupCell=n.formatAggregateGroupCell;exports.formatAggregateGroupRow=n.formatAggregateGroupRow;exports.formatAggregateSubtotalLabel=n.formatAggregateSubtotalLabel;exports.formatMetricComparison=n.formatMetricComparison;exports.isAggregateTotalMemberMarker=n.isAggregateTotalMemberMarker;exports.objectsToCSV=n.objectsToCSV;exports.presentAggregateGroupRow=n.presentAggregateGroupRow;exports.presentPivotHeader=n.presentPivotHeader;exports.protectCSVText=n.protectCSVText;exports.readPdfErrorResponse=n.readPdfErrorResponse;exports.requestStructuredPdf=n.requestStructuredPdf;exports.requiresChunkedCsvExport=n.requiresChunkedCsvExport;exports.resolveAggregateTablePresentationContext=n.resolveAggregateTablePresentationContext;exports.shouldPresentAggregateGroupValue=n.shouldPresentAggregateGroupValue;exports.SEMAPHOR_GENERATED_COUNT_METRIC_ID=x.SEMAPHOR_GENERATED_COUNT_METRIC_ID;exports.MATRIX_EXPORT_TRANSFER_BYTES=h.MATRIX_EXPORT_TRANSFER_BYTES;exports.assertMatrixBatchResponseSize=h.assertMatrixBatchResponseSize;exports.matrixAttemptKey=h.matrixAttemptKey;exports.matrixBatchInputSchema=h.matrixBatchInputSchema;exports.matrixBatchResponseSchema=h.matrixBatchResponseSchema;exports.matrixExportDeadlineSchema=h.matrixExportDeadlineSchema;exports.matrixManifestSchema=h.matrixManifestSchema;exports.parseMatrixAttemptKey=h.parseMatrixAttemptKey;exports.parseMatrixBatchResponse=h.parseMatrixBatchResponse;exports.parseMatrixManifest=h.parseMatrixManifest;exports.FAST_PDF_POLICY=C.FAST_PDF_POLICY;exports.PDF_SAFETY_LIMIT_EXCEEDED=C.PDF_SAFETY_LIMIT_EXCEEDED;exports.getUtf8ByteLength=C.getUtf8ByteLength;exports.isFastPdfOutputSizeEligible=C.isFastPdfOutputSizeEligible;exports.isFastPdfPageCountEligible=C.isFastPdfPageCountEligible;exports.isFastPdfRequestSizeEligible=C.isFastPdfRequestSizeEligible;exports.isFastPdfRowCountEligible=C.isFastPdfRowCountEligible;exports.MissingResolvedRawTemporalFormatError=E.MissingResolvedRawTemporalFormatError;exports.PivotResultLifecycleError=E.PivotResultLifecycleError;exports.PresentationExecutionSnapshotError=E.PresentationExecutionSnapshotError;exports.createCanonicalPivotResultTransport=E.createCanonicalPivotResultTransport;exports.createPresentationExecutionSnapshot=E.createPresentationExecutionSnapshot;exports.deriveMetricInstanceAliasExpectations=E.deriveMetricInstanceAliasExpectations;exports.derivePivotResultContractExpectations=E.derivePivotResultContractExpectations;exports.findResolvedNumericFormat=E.findResolvedNumericFormat;exports.findResolvedRawTemporalFormat=E.findResolvedRawTemporalFormat;exports.findResolvedTemporalBucketFormat=E.findResolvedTemporalBucketFormat;exports.parseCanonicalPivotResultTransport=E.parseCanonicalPivotResultTransport;exports.parsePresentationExecutionSnapshot=E.parsePresentationExecutionSnapshot;exports.parsePresentationScope=E.parsePresentationScope;exports.parseResolvedPresentationEntries=E.parseResolvedPresentationEntries;exports.validateCardExportPresentationSnapshot=E.validateCardExportPresentationSnapshot;exports.DEFAULT_RESOLVED_TEMPORAL_STYLE_SET=d.DEFAULT_RESOLVED_TEMPORAL_STYLE_SET;exports.TEMPORAL_BUCKET_PATTERN_TOKENS=d.TEMPORAL_BUCKET_PATTERN_TOKENS;exports.TemporalBucketContractError=d.TemporalBucketContractError;exports.formatTemporalBucket=d.formatTemporalBucket;exports.isTemporalBucketPreset=d.isTemporalBucketPreset;exports.parseResolvedTemporalBucketFormat=d.parseResolvedTemporalBucketFormat;exports.parseTemporalBucketValue=d.parseTemporalBucketValue;exports.resolveApplicableTemporalBucketFormat=d.resolveApplicableTemporalBucketFormat;exports.resolveTemporalBucketPresentation=d.resolveTemporalBucketPresentation;exports.tokenizeTemporalBucketPattern=d.tokenizeTemporalBucketPattern;exports.validateTemporalBucketFormatApplicability=d.validateTemporalBucketFormatApplicability;exports.resolveMetricResultAlias=X.resolveMetricResultAlias;exports.PivotResultIdentityError=w.PivotResultIdentityError;exports.isPivotEmptyTupleAllowed=w.isPivotEmptyTupleAllowed;exports.isPivotSubtotalPrefix=w.isPivotSubtotalPrefix;exports.requirePivotHeaderMembers=w.requirePivotHeaderMembers;exports.requirePivotResultColumnIdentities=w.requirePivotResultColumnIdentities;exports.resolveQueryColumnKeyMapEntry=w.resolveQueryColumnKeyMapEntry;exports.resolveUniqueQueryColumnKeyMapEntry=w.resolveUniqueQueryColumnKeyMapEntry;exports.parseRawTemporalValueMetadata=N.parseRawTemporalValueMetadata;exports.validateRawTemporalResultColumn=N.validateRawTemporalResultColumn;exports.buildFlatTableExportTotalsFooter=Q;exports.buildMatrixTableStructure=z;exports.formatPivotDataRow=L;exports.formatPivotTableForCSV=H;exports.formatTableForCSV=O;exports.generatePivotHeaders=k;exports.generateTableCSV=$;exports.matrixFlatCsvHeaders=U;exports.matrixFlatCsvRow=j;exports.parseFlatTableExportTotalsByColumnId=Y;exports.parseFlatTableExportTotalsRequest=K;exports.prepareMatrixExportPresentation=B;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const I=require("../chunks/index-Cw2ypaFl.cjs"),m=require("../chunks/raw-temporal-CeblVJbu.cjs"),n=require("../chunks/pivot-header-presentation-B_N11CgN.cjs"),E=require("../chunks/matrix-formatter-Dajj91Ni.cjs"),M=require("../chunks/validators-DVYAnnX0.cjs"),R=require("../chunks/matrix-continuation-6nhDy-lF.cjs");require("../chunks/matrix-operation-contract-DoiWTUbT.cjs");const q=require("../chunks/matrix-definition-CBJW_4ii.cjs"),X=require("../chunks/semantic-format-DFI1iszk.cjs"),C=require("../pdf-export-policy/index.cjs"),T=require("../chunks/pivot-result-lifecycle-vg_suUNb.cjs"),d=require("../chunks/temporal-bucket-4YEPEKlJ.cjs"),$=require("../chunks/metric-comparison-DBQ3EJTz.cjs"),w=require("../chunks/pivot-result-identity-uTiylUNr.cjs"),N=require("../chunks/raw-temporal-contract-DECbTuzA.cjs");function O(e,r){const a=[];r.includeHeaders&&a.push(n.arrayToCSVRow(r.visibleColumns,r.delimiter));for(const o of e){const s=E.formatRowForExport(o,r);a.push(s.map(i=>n.escapeCSVValue(i,r.delimiter)).join(r.delimiter))}return a}function G(e,r,a=`
2
+ `){return O(e,r).join(a)}function V(e,r,a){for(const o of e){if(o.level<a){r[o.level].push(o.name);for(let s=1;s<o.colspan;s++)r[o.level].push("")}o.children?V(o.children,r,a):o.columnKey&&r[a].push(o.name)}}function k(e){const r=e.pivotByColumns.length,a=e.groupByColumns.length,o=Array.from({length:r+1},()=>[]);for(let s=0;s<r;s++)o[s].push(...Array(a).fill(""));if(o[r].push(...e.groupByColumns.map(s=>s.label||s.name)),V(e.columnHeadersTree,o,r),e.showRowTotals){for(let s=0;s<r;s++)o[s].push("");o[r].push("Total")}return o}function H(e,r,a){if(e==null)return"";if(!a.useFormattedValues)return String(e);const o=a.columnSettings[r];return typeof e=="number"&&(o==null?void 0:o.type)==="number"?m.formatNumberWithColumnSettings(e,o.numberFormat,a.locale):typeof e=="number"?e.toLocaleString(a.locale):String(e)}function L(e,r,a){const o=[];e.fieldValues.forEach((i,t)=>{e.isSubtotal&&t===0?o.push(`${i} Total`):e.isSubtotal?o.push(""):o.push(String(i??""))});let s=0;return r.columnHeaders.forEach(i=>{var c;const t=(c=e.cells[i])==null?void 0:c.value,u=H(t,i,a);o.push(u),r.showRowTotals&&typeof t=="number"&&(s+=t)}),r.showRowTotals&&o.push(s.toLocaleString(a.locale)),o}function U(e,r,a){const o=[];if(a.includeHeaders){const s=k(r);for(const i of s)o.push(n.arrayToCSVRow(i,a.delimiter))}for(const s of e){const i=L(s,r,a);o.push(i.map(t=>n.escapeCSVValue(t,a.delimiter)).join(a.delimiter))}return o}function B(e,r,a){const o=E.prepareMatrixFormatting(e.descriptors,r.presentation,a),s=e.columns.map(l=>{var p;return l.kind==="measure"&&((p=o.measureSemantics.get(l.measureId))==null?void 0:p.isNumeric)===!0}),i=l=>E.matrixMemberLabel([l],o.levels),t=(l,p,f)=>E.matrixAxisLabel(l,p,r.presentation.totals[f],o.levels),u=e.columns.map(l=>{if(l.kind!=="measure")return l.label;const p=l.columnPath.map(i);return l.role!=="member"&&p.push(t(l.columnPath,l.role,"columns")),[...p,l.label].join(" / ")}),c=Math.min(r.spec.columns.length,Math.max(0,...e.columns.map(l=>l.kind==="measure"?l.columnPath.length+(l.role!=="member"?1:0):0))),h=Array.from({length:c+1},(l,p)=>e.columns.map(f=>p===c?f.label:f.kind!=="measure"?"":p<f.columnPath.length?i(f.columnPath[p]):p===f.columnPath.length&&f.role!=="member"?t(f.columnPath,f.role,"columns"):"")),b=(l,p)=>{if(l.kind!=="layout")throw new Error("Layout presentation requires layout rows.");if(l.values.length!==e.columns.length)throw new Error("Matrix row does not match its frozen layout.");const f=E.matrixLevelLabels({path:l.rowPath,role:l.role,levelCount:Math.max(1,r.spec.rows.length),repeatLabels:r.presentation.layout.kind!=="tabular"||r.presentation.layout.repeatLabels,previousPath:p==null?void 0:p.rowPath});return e.columns.map((v,S)=>{if(v.kind==="hierarchy")return`${" ".repeat(Math.max(0,l.rowPath.length-1))}${t(l.rowPath,l.role,"rows")}`;if(v.kind==="level"){const y=r.spec.rows.findIndex(D=>D.id===v.levelId),g=f[y];return g!=null&&g.visible?g.total?t(l.rowPath,l.role,"rows"):E.matrixMemberLabel(g.path,o.levels):""}const A=l.values[S],_=o.measures.get(v.measureId);if(A.kind==="value"&&!_)throw new Error("Matrix value is missing its measure descriptor.");return E.matrixCellText(A,_,r.presentation.absence)})},P=(l,p)=>b(l,p).map((f,v)=>{var y;const S=l.values[v],A=e.columns[v];return A.kind==="measure"&&!((y=o.measureSemantics.get(A.measureId))!=null&&y.hasTextAffixes)&&S.kind==="value"&&(typeof S.value=="number"||M.isExactNumericValue(S.value))?f:n.protectCSVText(f)});return{headers:u,headerBands:h,row:l=>b(l),numericColumns:s,csvRow:l=>P(l),csvRows:l=>l.map((p,f)=>P(p,l[f-1]))}}function j(e){return e.columns.map(r=>n.protectCSVText(r.label))}function z(e){if(e.kind!=="flat")throw new Error("Raw Matrix CSV requires flat rows.");return e.values.map(r=>r.kind!=="value"?null:M.isExactNumericValue(r.value)?r.value.value:typeof r.value=="string"?n.protectCSVText(r.value):typeof r.value=="boolean"?String(r.value):r.value)}function K(e){const r=B(e.layout,e.request,e.report),a=e.layout.columns.map((t,u)=>({index:u,columnId:`matrix:${u}`,label:r.headers[u],isNumeric:r.numericColumns[u]})),o=(t,u,c)=>({text:t,colspan:1,rowspan:1,columnId:a[u].columnId,isHeader:c,isNumeric:a[u].isNumeric,className:a[u].isNumeric?"numeric":e.layout.columns[u].kind==="hierarchy"?"matrix-hierarchy":""}),s=[],i=e.layout.columns.findIndex(t=>t.kind==="measure");e.request.spec.columns.length&&i>=0&&s.push({repeatHeader:!0,headerType:"pivot-axis",headerRowIndex:0,cells:[...i?[{...o("",0,!0),colspan:i}]:[],{...o(e.request.spec.columns.map(t=>q.getMatrixLevelLabel(t,e.request.presentation)).join(" / "),i,!0),colspan:e.layout.columns.length-i,isNumeric:!1,className:""}]});for(const[t,u]of r.headerBands.entries())s.push({repeatHeader:!0,headerType:t===r.headerBands.length-1?"metrics":"pivot-level",headerRowIndex:s.length,cells:u.map((c,h)=>o(c,h,!0))});return{headers:s,rows:e.rows.map((t,u)=>({index:u,type:t.kind==="layout"&&t.role!=="member"?"subtotal":"data",subtotalLevel:String(t.rowPath.length),cells:r.row(t).map((c,h)=>o(c,h,!1))})),grandTotal:null,metadata:{tableType:"pivot",totalRows:e.rows.length,totalColumns:a.length,rowLevels:e.layout.columns.filter(t=>t.kind!=="measure").length,pivotLevels:e.request.spec.columns.length,hasGrandTotal:!1,columnOrder:a.map(t=>t.columnId),columns:a}}}function F(e){if(e===null||typeof e!="object"||Array.isArray(e))return!1;const r=Object.getPrototypeOf(e);return r===null||r===Object.prototype}function x(e,r,a){const o=new Set(r),s=Object.keys(e).find(i=>!o.has(i));if(s)throw new Error(`${a} contains unknown property "${s}"`)}function Y(e,r="tableTotalsRequest"){if(!F(e))throw new Error(`${r} must be an object`);if(x(e,["source","columns"],r),e.source!=="documentFlatTable")throw new Error(`${r}.source must be documentFlatTable`);if(!Array.isArray(e.columns)||e.columns.length===0)throw new Error(`${r}.columns must be a non-empty array`);let a=0;const o=e.columns.map((t,u)=>{const c=`${r}.columns.${u}`;if(!F(t))throw new Error(`${c} must be an object`);x(t,["fieldId","role","behavior","metricAlias","label"],c);const h=typeof t.fieldId=="string"?t.fieldId.trim():"";if(!h)throw new Error(`${c}.fieldId must be a non-empty string`);if(t.role!=="detail"&&t.role!=="groupby"&&t.role!=="metric")throw new Error(`${c}.role is invalid`);const b=t.role;if(t.behavior!=="sum"&&t.behavior!=="avg"&&t.behavior!=="count"&&t.behavior!=="label")throw new Error(`${c}.behavior is invalid`);const P=t.behavior,l=typeof t.metricAlias=="string"?t.metricAlias.trim():void 0;if(t.metricAlias!==void 0&&!l)throw new Error(`${c}.metricAlias must be a non-empty string`);if(l&&b!=="metric")throw new Error(`${c}.metricAlias requires metric role`);if(P==="label"){if(a+=1,b==="metric")throw new Error(`${c}.behavior label requires a non-metric role`)}else if(b!=="metric")throw new Error(`${c}.${P} requires metric role`);if(t.label!==void 0&&typeof t.label!="string")throw new Error(`${c}.label must be a string`);return{fieldId:h,role:b,behavior:P,...l?{metricAlias:l}:{},...t.label!==void 0?{label:t.label}:{}}}),s=new Map,i=new Set;for(const t of o){if(t.metricAlias){if(i.has(t.metricAlias))throw new Error(`${r}.columns duplicates metricAlias "${t.metricAlias}"`);i.add(t.metricAlias)}const u=s.get(t.fieldId)??[];u.push(t),s.set(t.fieldId,u)}for(const[t,u]of s)if(u.length!==1){for(const c of u)if(c.role!=="metric"||!c.metricAlias)throw new Error(`${r}.columns duplicates fieldId "${t}" without distinct metricAlias values`)}if(a>1)throw new Error(`${r}.columns may contain at most one label`);return{source:"documentFlatTable",columns:o}}function W(e,r="tableTotalsByColumnId"){if(!F(e))throw new Error(`${r} must be an object`);const a={};for(const[o,s]of Object.entries(e)){if(!o.trim())throw new Error(`${r} contains an empty column id`);if(s!==null&&typeof s!="string"&&(typeof s!="number"||!Number.isFinite(s)))throw new Error(`${r}.${o} must be a string, finite number, or null`);a[o]=s}if(Object.keys(a).length===0)throw new Error(`${r} must not be empty`);return a}function Q(e){if(typeof e=="number")return Number.isFinite(e)?e:null;if(!e.trim())return null;const r=Number(e);return Number.isFinite(r)?r:null}function J(e){const r=e.visibleColumns.map(a=>{const s=Object.prototype.hasOwnProperty.call(e.totalsByColumnId,a)?e.totalsByColumnId[a]:a===e.labelColumnKey?"Total":null;if(s===null)return"";if(!e.useFormattedValues)return String(s);const i=T.findResolvedMeasureFormat({snapshot:e.snapshot,scope:e.scope,target:{kind:"column",columnKey:a}}),t=i?Q(s):null;return i&&t!==null?m.formatMeasureCanonical(t,i):String(s)});return`${n.arrayToCSVRow(r,e.delimiter)}
3
+ `}exports.isMeasureCanonicalFormat=I.isMeasureCanonicalFormat;exports.isNumericCanonicalFormat=I.isNumericCanonicalFormat;exports.RawTemporalFormatContractError=m.RawTemporalFormatContractError;exports.assertRawTemporalChunkClassificationAgreement=m.assertRawTemporalChunkClassificationAgreement;exports.classifyDeclaredSqlTemporalColumn=m.classifyDeclaredSqlTemporalColumn;exports.createRawTemporalChunkClassificationEvidence=m.createRawTemporalChunkClassificationEvidence;exports.formatCurrency=m.formatCurrency;exports.formatDuration=m.formatDuration;exports.formatDurationCanonical=m.formatDurationCanonical;exports.formatMeasureCanonical=m.formatMeasureCanonical;exports.formatNumber=m.formatNumber;exports.formatNumberCustom=m.formatNumberCustom;exports.formatNumberWithColumnSettings=m.formatNumberWithColumnSettings;exports.formatNumericCanonical=m.formatNumericCanonical;exports.formatPercent=m.formatPercent;exports.formatRawTemporalValue=m.formatRawTemporalValue;exports.formatScientific=m.formatScientific;exports.parseNumericCanonicalFormat=m.parseNumericCanonicalFormat;exports.parseRawTemporalChunkClassificationEvidence=m.parseRawTemporalChunkClassificationEvidence;exports.parseResolvedNumericCanonicalFormat=m.parseResolvedNumericCanonicalFormat;exports.parseResolvedRawTemporalFormat=m.parseResolvedRawTemporalFormat;exports.prepareRawTemporalFormatter=m.prepareRawTemporalFormatter;exports.resolveCurrencyFractionDigits=m.resolveCurrencyFractionDigits;exports.resolveNumericPresentation=m.resolveNumericPresentation;exports.resolveRawTemporalFormat=m.resolveRawTemporalFormat;exports.validateCardExportNumericPresentationSnapshot=m.validateCardExportNumericPresentationSnapshot;exports.validateRawTemporalPattern=m.validateRawTemporalPattern;exports.AGGREGATE_PDF_CONTINUATION_CLASS=n.PDF_GROUP_CONTINUATION_CLASS;exports.AGGREGATE_TOTAL_MEMBER_MARKER=n.AGGREGATE_TOTAL_MEMBER_MARKER;exports.DIRECT_CSV_EXPORT_MAX_ROWS=n.DIRECT_CSV_EXPORT_MAX_ROWS;exports.FULL_DATASET_CSV_EXPORT_MAX_ROWS=n.FULL_DATASET_CSV_EXPORT_MAX_ROWS;exports.MATRIX_EXPORT_MAX_ARTIFACT_BYTES=n.MATRIX_EXPORT_MAX_ARTIFACT_BYTES;exports.MATRIX_EXPORT_MAX_CELLS=n.MATRIX_EXPORT_MAX_CELLS;exports.MATRIX_EXPORT_MAX_ENCODED_BYTES=n.MATRIX_EXPORT_MAX_ENCODED_BYTES;exports.PDF_GROUP_CONTINUATION_CLASS=n.PDF_GROUP_CONTINUATION_CLASS;exports.PdfSafetyLimitError=n.PdfSafetyLimitError;exports.PivotHeaderPresentationError=n.PivotHeaderPresentationError;exports.arrayToCSV=n.arrayToCSV;exports.arrayToCSVRow=n.arrayToCSVRow;exports.escapeCSVValue=n.escapeCSVValue;exports.formatAggregateGrandTotalLabel=n.formatAggregateGrandTotalLabel;exports.formatAggregateGroupCell=n.formatAggregateGroupCell;exports.formatAggregateGroupRow=n.formatAggregateGroupRow;exports.formatAggregateSubtotalLabel=n.formatAggregateSubtotalLabel;exports.formatMetricComparison=n.formatMetricComparison;exports.isAggregateTotalMemberMarker=n.isAggregateTotalMemberMarker;exports.objectsToCSV=n.objectsToCSV;exports.presentAggregateGroupRow=n.presentAggregateGroupRow;exports.presentPivotHeader=n.presentPivotHeader;exports.protectCSVText=n.protectCSVText;exports.readPdfErrorResponse=n.readPdfErrorResponse;exports.requestStructuredPdf=n.requestStructuredPdf;exports.requiresChunkedCsvExport=n.requiresChunkedCsvExport;exports.resolveAggregateTablePresentationContext=n.resolveAggregateTablePresentationContext;exports.shouldPresentAggregateGroupValue=n.shouldPresentAggregateGroupValue;exports.formatCellValue=E.formatCellValue;exports.formatDate=E.formatDate;exports.formatRelativeTime=E.formatRelativeTime;exports.formatRowForExport=E.formatRowForExport;exports.getTimezoneAbbreviation=E.getTimezoneAbbreviation;exports.getTimezoneName=E.getTimezoneName;exports.parseWithSourceTimezone=E.parseWithSourceTimezone;exports.resolveTimezone=E.resolveTimezone;exports.SEMAPHOR_GENERATED_COUNT_METRIC_ID=M.SEMAPHOR_GENERATED_COUNT_METRIC_ID;exports.MATRIX_EXPORT_TRANSFER_BYTES=R.MATRIX_EXPORT_TRANSFER_BYTES;exports.assertMatrixBatchResponseSize=R.assertMatrixBatchResponseSize;exports.matrixAttemptKey=R.matrixAttemptKey;exports.matrixBatchInputSchema=R.matrixBatchInputSchema;exports.matrixBatchResponseSchema=R.matrixBatchResponseSchema;exports.matrixExportDeadlineSchema=R.matrixExportDeadlineSchema;exports.matrixManifestSchema=R.matrixManifestSchema;exports.parseMatrixAttemptKey=R.parseMatrixAttemptKey;exports.parseMatrixBatchResponse=R.parseMatrixBatchResponse;exports.parseMatrixManifest=R.parseMatrixManifest;exports.fromSemanticFormat=X.fromSemanticFormat;exports.FAST_PDF_POLICY=C.FAST_PDF_POLICY;exports.PDF_SAFETY_LIMIT_EXCEEDED=C.PDF_SAFETY_LIMIT_EXCEEDED;exports.getUtf8ByteLength=C.getUtf8ByteLength;exports.isFastPdfOutputSizeEligible=C.isFastPdfOutputSizeEligible;exports.isFastPdfPageCountEligible=C.isFastPdfPageCountEligible;exports.isFastPdfRequestSizeEligible=C.isFastPdfRequestSizeEligible;exports.isFastPdfRowCountEligible=C.isFastPdfRowCountEligible;exports.MissingResolvedRawTemporalFormatError=T.MissingResolvedRawTemporalFormatError;exports.PivotResultLifecycleError=T.PivotResultLifecycleError;exports.PresentationExecutionSnapshotError=T.PresentationExecutionSnapshotError;exports.createCanonicalPivotResultTransport=T.createCanonicalPivotResultTransport;exports.createPresentationExecutionSnapshot=T.createPresentationExecutionSnapshot;exports.deriveMetricInstanceAliasExpectations=T.deriveMetricInstanceAliasExpectations;exports.derivePivotResultContractExpectations=T.derivePivotResultContractExpectations;exports.findResolvedMeasureFormat=T.findResolvedMeasureFormat;exports.findResolvedNumericFormat=T.findResolvedNumericFormat;exports.findResolvedRawTemporalFormat=T.findResolvedRawTemporalFormat;exports.findResolvedTemporalBucketFormat=T.findResolvedTemporalBucketFormat;exports.parseCanonicalPivotResultTransport=T.parseCanonicalPivotResultTransport;exports.parsePresentationExecutionSnapshot=T.parsePresentationExecutionSnapshot;exports.parsePresentationScope=T.parsePresentationScope;exports.parseResolvedPresentationEntries=T.parseResolvedPresentationEntries;exports.validateCardExportPresentationSnapshot=T.validateCardExportPresentationSnapshot;exports.DEFAULT_RESOLVED_TEMPORAL_STYLE_SET=d.DEFAULT_RESOLVED_TEMPORAL_STYLE_SET;exports.TEMPORAL_BUCKET_PATTERN_TOKENS=d.TEMPORAL_BUCKET_PATTERN_TOKENS;exports.TemporalBucketContractError=d.TemporalBucketContractError;exports.formatTemporalBucket=d.formatTemporalBucket;exports.isTemporalBucketPreset=d.isTemporalBucketPreset;exports.parseResolvedTemporalBucketFormat=d.parseResolvedTemporalBucketFormat;exports.parseTemporalBucketValue=d.parseTemporalBucketValue;exports.resolveApplicableTemporalBucketFormat=d.resolveApplicableTemporalBucketFormat;exports.resolveTemporalBucketPresentation=d.resolveTemporalBucketPresentation;exports.tokenizeTemporalBucketPattern=d.tokenizeTemporalBucketPattern;exports.validateTemporalBucketFormatApplicability=d.validateTemporalBucketFormatApplicability;exports.resolveMetricResultAlias=$.resolveMetricResultAlias;exports.PivotResultIdentityError=w.PivotResultIdentityError;exports.isPivotEmptyTupleAllowed=w.isPivotEmptyTupleAllowed;exports.isPivotSubtotalPrefix=w.isPivotSubtotalPrefix;exports.requirePivotHeaderMembers=w.requirePivotHeaderMembers;exports.requirePivotResultColumnIdentities=w.requirePivotResultColumnIdentities;exports.resolveQueryColumnKeyMapEntry=w.resolveQueryColumnKeyMapEntry;exports.resolveUniqueQueryColumnKeyMapEntry=w.resolveUniqueQueryColumnKeyMapEntry;exports.parseRawTemporalValueMetadata=N.parseRawTemporalValueMetadata;exports.validateRawTemporalResultColumn=N.validateRawTemporalResultColumn;exports.buildFlatTableExportTotalsFooter=J;exports.buildMatrixTableStructure=K;exports.formatPivotDataRow=L;exports.formatPivotTableForCSV=U;exports.formatTableForCSV=O;exports.generatePivotHeaders=k;exports.generateTableCSV=G;exports.matrixFlatCsvHeaders=j;exports.matrixFlatCsvRow=z;exports.parseFlatTableExportTotalsByColumnId=W;exports.parseFlatTableExportTotalsRequest=Y;exports.prepareMatrixExportPresentation=B;
@@ -1,29 +1,30 @@
1
- import { f as ie, i as me } from "../chunks/semantic-format-BZxJLKvw.js";
2
- import { f as M, b as _ } from "../chunks/raw-temporal-DrmCX9Wq.js";
3
- import { R as ce, o as pe, l as fe, m as he, d as be, c as de, h as Te, e as we, t as ve, g as Ee, i as Re, n as Pe, p as ye, a as ge, s as Ae, r as Se, j as Ce, k as xe, v as Fe, q as Me } from "../chunks/raw-temporal-DrmCX9Wq.js";
4
- import { f as I, p as k, m as g, a as N, b as L, c as O } from "../chunks/matrix-formatter-BLunke3R.js";
5
- import { k as Ie, e as ke, d as Ne, g as Le, h as Oe, i as $e, j as Be, r as Ve } from "../chunks/matrix-formatter-BLunke3R.js";
6
- import { a as P, e as S, p as y } from "../chunks/pivot-header-presentation-Dm9dUQsl.js";
7
- import { P as je, A as Xe, D as qe, F as Ge, d as He, M as ze, c as Ue, P as Ke, g as Ye, u as We, b as Qe, m as Je, q as Ze, t as er, l as rr, f as tr, j as or, o as ar, n as sr, v as lr, h as nr, i as ir, r as mr, k as ur, s as cr } from "../chunks/pivot-header-presentation-Dm9dUQsl.js";
8
- import { b4 as C } from "../chunks/validators-CkHsAvwB.js";
9
- import { a6 as fr } from "../chunks/validators-CkHsAvwB.js";
10
- import { M as br, d as dr, a as Tr, b as wr, c as vr, m as Er, f as Rr, p as Pr, e as yr, g as gr } from "../chunks/matrix-continuation-C4sRcjZU.js";
1
+ import { a as ie, i as me } from "../chunks/index-C8w91oj4.js";
2
+ import { f as M, b as _ } from "../chunks/raw-temporal-Bj6_w9cG.js";
3
+ import { R as ce, t as pe, o as fe, q as he, d as be, j as de, k as Te, c as we, i as ve, h as Ee, e as Re, x as Pe, g as ye, l as ge, s as Ae, p as Ce, a as Se, w as xe, r as Fe, m as Me, n as _e, v as Ie, u as ke } from "../chunks/raw-temporal-Bj6_w9cG.js";
4
+ import { a as P, e as C, p as y } from "../chunks/pivot-header-presentation-BIf4HW3L.js";
5
+ import { P as Le, A as Oe, D as $e, F as Be, d as Ve, M as De, c as je, P as Xe, g as qe, u as Ge, b as He, m as ze, q as Ue, t as Ke, l as Ye, f as We, j as Qe, o as Je, n as Ze, v as er, h as rr, i as tr, r as or, k as ar, s as sr } from "../chunks/pivot-header-presentation-BIf4HW3L.js";
6
+ import { f as I, p as k, m as g, a as N, b as L, c as O } from "../chunks/matrix-formatter-BdIsE7Qu.js";
7
+ import { j as nr, d as ir, e as mr, g as ur, h as cr, i as pr, r as fr } from "../chunks/matrix-formatter-BdIsE7Qu.js";
8
+ import { b4 as S } from "../chunks/validators-CkHsAvwB.js";
9
+ import { a6 as br } from "../chunks/validators-CkHsAvwB.js";
10
+ import { M as Tr, d as wr, a as vr, b as Er, c as Rr, m as Pr, f as yr, p as gr, e as Ar, g as Cr } from "../chunks/matrix-continuation-C4sRcjZU.js";
11
11
  import "../chunks/matrix-operation-contract-D0HfzwZg.js";
12
12
  import { g as $ } from "../chunks/matrix-definition-I9rHB9zN.js";
13
- import { FAST_PDF_POLICY as Sr, PDF_SAFETY_LIMIT_EXCEEDED as Cr, getUtf8ByteLength as xr, isFastPdfOutputSizeEligible as Fr, isFastPdfPageCountEligible as Mr, isFastPdfRequestSizeEligible as _r, isFastPdfRowCountEligible as Ir } from "../pdf-export-policy/index.js";
14
- import { f as B } from "../chunks/pivot-result-lifecycle-BeOpjAhg.js";
15
- import { M as Nr, i as Lr, P as Or, k as $r, c as Br, g as Vr, h as Dr, d as jr, e as Xr, j as qr, b as Gr, p as Hr, a as zr, v as Ur } from "../chunks/pivot-result-lifecycle-BeOpjAhg.js";
16
- import { D as Yr, T as Wr, b as Qr, f as Jr, a as Zr, p as et, c as rt, r as tt, d as ot, t as at, v as st } from "../chunks/temporal-bucket-B9hMwemw.js";
17
- import { a as nt } from "../chunks/metric-comparison-Dqc7_tnW.js";
18
- import { P as mt, c as ut, i as ct, d as pt, b as ft, r as ht, a as bt } from "../chunks/pivot-result-identity-8M-bZrw9.js";
19
- import { p as Tt, v as wt } from "../chunks/raw-temporal-contract-CFLGwTiI.js";
13
+ import { f as xr } from "../chunks/semantic-format-Dt-nUxFB.js";
14
+ import { FAST_PDF_POLICY as Mr, PDF_SAFETY_LIMIT_EXCEEDED as _r, getUtf8ByteLength as Ir, isFastPdfOutputSizeEligible as kr, isFastPdfPageCountEligible as Nr, isFastPdfRequestSizeEligible as Lr, isFastPdfRowCountEligible as Or } from "../pdf-export-policy/index.js";
15
+ import { f as B } from "../chunks/pivot-result-lifecycle-CEmyU2At.js";
16
+ import { M as Br, j as Vr, P as Dr, l as jr, c as Xr, h as qr, i as Gr, d as Hr, e as zr, g as Ur, k as Kr, b as Yr, p as Wr, a as Qr, v as Jr } from "../chunks/pivot-result-lifecycle-CEmyU2At.js";
17
+ import { D as et, T as rt, b as tt, f as ot, a as at, p as st, c as lt, r as nt, d as it, t as mt, v as ut } from "../chunks/temporal-bucket-B9hMwemw.js";
18
+ import { a as pt } from "../chunks/metric-comparison-Dqc7_tnW.js";
19
+ import { P as ht, c as bt, i as dt, d as Tt, b as wt, r as vt, a as Et } from "../chunks/pivot-result-identity-8M-bZrw9.js";
20
+ import { p as Pt, v as yt } from "../chunks/raw-temporal-contract-CFLGwTiI.js";
20
21
  function V(e, r) {
21
22
  const a = [];
22
23
  r.includeHeaders && a.push(P(r.visibleColumns, r.delimiter));
23
24
  for (const o of e) {
24
25
  const s = I(o, r);
25
26
  a.push(
26
- s.map((n) => S(n, r.delimiter)).join(r.delimiter)
27
+ s.map((n) => C(n, r.delimiter)).join(r.delimiter)
27
28
  );
28
29
  }
29
30
  return a;
@@ -96,7 +97,7 @@ function Z(e, r, a) {
96
97
  a
97
98
  );
98
99
  o.push(
99
- n.map((t) => S(t, a.delimiter)).join(a.delimiter)
100
+ n.map((t) => C(t, a.delimiter)).join(a.delimiter)
100
101
  );
101
102
  }
102
103
  return o;
@@ -137,7 +138,7 @@ function q(e, r, a) {
137
138
  }, b = (l, u) => f(l, u).map((c, h) => {
138
139
  var v;
139
140
  const d = l.values[h], T = e.columns[h];
140
- return T.kind === "measure" && !((v = o.measureSemantics.get(T.measureId)) != null && v.hasTextAffixes) && d.kind === "value" && (typeof d.value == "number" || C(d.value)) ? c : y(c);
141
+ return T.kind === "measure" && !((v = o.measureSemantics.get(T.measureId)) != null && v.hasTextAffixes) && d.kind === "value" && (typeof d.value == "number" || S(d.value)) ? c : y(c);
141
142
  });
142
143
  return {
143
144
  headers: i,
@@ -155,7 +156,7 @@ function ee(e) {
155
156
  }
156
157
  function re(e) {
157
158
  if (e.kind !== "flat") throw new Error("Raw Matrix CSV requires flat rows.");
158
- return e.values.map((r) => r.kind !== "value" ? null : C(r.value) ? r.value.value : typeof r.value == "string" ? y(r.value) : typeof r.value == "boolean" ? String(r.value) : r.value);
159
+ return e.values.map((r) => r.kind !== "value" ? null : S(r.value) ? r.value.value : typeof r.value == "string" ? y(r.value) : typeof r.value == "boolean" ? String(r.value) : r.value);
159
160
  }
160
161
  function te(e) {
161
162
  const r = q(e.layout, e.request, e.report), a = e.layout.columns.map((t, i) => ({
@@ -338,131 +339,135 @@ function se(e) {
338
339
  `;
339
340
  }
340
341
  export {
341
- je as AGGREGATE_PDF_CONTINUATION_CLASS,
342
- Xe as AGGREGATE_TOTAL_MEMBER_MARKER,
343
- Yr as DEFAULT_RESOLVED_TEMPORAL_STYLE_SET,
344
- qe as DIRECT_CSV_EXPORT_MAX_ROWS,
345
- Sr as FAST_PDF_POLICY,
346
- Ge as FULL_DATASET_CSV_EXPORT_MAX_ROWS,
347
- He as MATRIX_EXPORT_MAX_ARTIFACT_BYTES,
348
- ze as MATRIX_EXPORT_MAX_CELLS,
349
- Ue as MATRIX_EXPORT_MAX_ENCODED_BYTES,
350
- br as MATRIX_EXPORT_TRANSFER_BYTES,
351
- Nr as MissingResolvedRawTemporalFormatError,
352
- Ke as PDF_GROUP_CONTINUATION_CLASS,
353
- Cr as PDF_SAFETY_LIMIT_EXCEEDED,
354
- Ye as PdfSafetyLimitError,
355
- We as PivotHeaderPresentationError,
356
- mt as PivotResultIdentityError,
357
- Lr as PivotResultLifecycleError,
358
- Or as PresentationExecutionSnapshotError,
342
+ Le as AGGREGATE_PDF_CONTINUATION_CLASS,
343
+ Oe as AGGREGATE_TOTAL_MEMBER_MARKER,
344
+ et as DEFAULT_RESOLVED_TEMPORAL_STYLE_SET,
345
+ $e as DIRECT_CSV_EXPORT_MAX_ROWS,
346
+ Mr as FAST_PDF_POLICY,
347
+ Be as FULL_DATASET_CSV_EXPORT_MAX_ROWS,
348
+ Ve as MATRIX_EXPORT_MAX_ARTIFACT_BYTES,
349
+ De as MATRIX_EXPORT_MAX_CELLS,
350
+ je as MATRIX_EXPORT_MAX_ENCODED_BYTES,
351
+ Tr as MATRIX_EXPORT_TRANSFER_BYTES,
352
+ Br as MissingResolvedRawTemporalFormatError,
353
+ Xe as PDF_GROUP_CONTINUATION_CLASS,
354
+ _r as PDF_SAFETY_LIMIT_EXCEEDED,
355
+ qe as PdfSafetyLimitError,
356
+ Ge as PivotHeaderPresentationError,
357
+ ht as PivotResultIdentityError,
358
+ Vr as PivotResultLifecycleError,
359
+ Dr as PresentationExecutionSnapshotError,
359
360
  ce as RawTemporalFormatContractError,
360
- fr as SEMAPHOR_GENERATED_COUNT_METRIC_ID,
361
- Wr as TEMPORAL_BUCKET_PATTERN_TOKENS,
362
- Qr as TemporalBucketContractError,
363
- Qe as arrayToCSV,
361
+ br as SEMAPHOR_GENERATED_COUNT_METRIC_ID,
362
+ rt as TEMPORAL_BUCKET_PATTERN_TOKENS,
363
+ tt as TemporalBucketContractError,
364
+ He as arrayToCSV,
364
365
  P as arrayToCSVRow,
365
- dr as assertMatrixBatchResponseSize,
366
+ wr as assertMatrixBatchResponseSize,
366
367
  pe as assertRawTemporalChunkClassificationAgreement,
367
368
  se as buildFlatTableExportTotalsFooter,
368
369
  te as buildMatrixTableStructure,
369
370
  fe as classifyDeclaredSqlTemporalColumn,
370
- $r as createCanonicalPivotResultTransport,
371
- Br as createPresentationExecutionSnapshot,
371
+ jr as createCanonicalPivotResultTransport,
372
+ Xr as createPresentationExecutionSnapshot,
372
373
  he as createRawTemporalChunkClassificationEvidence,
373
- Vr as deriveMetricInstanceAliasExpectations,
374
- Dr as derivePivotResultContractExpectations,
375
- S as escapeCSVValue,
376
- B as findResolvedNumericFormat,
377
- jr as findResolvedRawTemporalFormat,
378
- Xr as findResolvedTemporalBucketFormat,
379
- Je as formatAggregateGrandTotalLabel,
380
- Ze as formatAggregateGroupCell,
381
- er as formatAggregateGroupRow,
382
- rr as formatAggregateSubtotalLabel,
383
- Ie as formatCellValue,
374
+ qr as deriveMetricInstanceAliasExpectations,
375
+ Gr as derivePivotResultContractExpectations,
376
+ C as escapeCSVValue,
377
+ B as findResolvedMeasureFormat,
378
+ Hr as findResolvedNumericFormat,
379
+ zr as findResolvedRawTemporalFormat,
380
+ Ur as findResolvedTemporalBucketFormat,
381
+ ze as formatAggregateGrandTotalLabel,
382
+ Ue as formatAggregateGroupCell,
383
+ Ke as formatAggregateGroupRow,
384
+ Ye as formatAggregateSubtotalLabel,
385
+ nr as formatCellValue,
384
386
  be as formatCurrency,
385
- ke as formatDate,
386
- Ne as formatDuration,
387
- tr as formatMetricComparison,
388
- de as formatNumber,
389
- Te as formatNumberCustom,
387
+ ir as formatDate,
388
+ de as formatDuration,
389
+ Te as formatDurationCanonical,
390
+ _ as formatMeasureCanonical,
391
+ We as formatMetricComparison,
392
+ we as formatNumber,
393
+ ve as formatNumberCustom,
390
394
  M as formatNumberWithColumnSettings,
391
- _ as formatNumericCanonical,
392
- we as formatPercent,
395
+ Ee as formatNumericCanonical,
396
+ Re as formatPercent,
393
397
  X as formatPivotDataRow,
394
398
  Z as formatPivotTableForCSV,
395
- ve as formatRawTemporalValue,
396
- Le as formatRelativeTime,
399
+ Pe as formatRawTemporalValue,
400
+ mr as formatRelativeTime,
397
401
  I as formatRowForExport,
398
- Ee as formatScientific,
402
+ ye as formatScientific,
399
403
  V as formatTableForCSV,
400
- Jr as formatTemporalBucket,
401
- ie as fromSemanticFormat,
404
+ ot as formatTemporalBucket,
405
+ xr as fromSemanticFormat,
402
406
  D as generatePivotHeaders,
403
407
  J as generateTableCSV,
404
- Oe as getTimezoneAbbreviation,
405
- $e as getTimezoneName,
406
- xr as getUtf8ByteLength,
407
- or as isAggregateTotalMemberMarker,
408
- Fr as isFastPdfOutputSizeEligible,
409
- Mr as isFastPdfPageCountEligible,
410
- _r as isFastPdfRequestSizeEligible,
411
- Ir as isFastPdfRowCountEligible,
408
+ ur as getTimezoneAbbreviation,
409
+ cr as getTimezoneName,
410
+ Ir as getUtf8ByteLength,
411
+ Qe as isAggregateTotalMemberMarker,
412
+ kr as isFastPdfOutputSizeEligible,
413
+ Nr as isFastPdfPageCountEligible,
414
+ Lr as isFastPdfRequestSizeEligible,
415
+ Or as isFastPdfRowCountEligible,
416
+ ie as isMeasureCanonicalFormat,
412
417
  me as isNumericCanonicalFormat,
413
- ut as isPivotEmptyTupleAllowed,
414
- ct as isPivotSubtotalPrefix,
415
- Zr as isTemporalBucketPreset,
416
- Tr as matrixAttemptKey,
417
- wr as matrixBatchInputSchema,
418
- vr as matrixBatchResponseSchema,
419
- Er as matrixExportDeadlineSchema,
418
+ bt as isPivotEmptyTupleAllowed,
419
+ dt as isPivotSubtotalPrefix,
420
+ at as isTemporalBucketPreset,
421
+ vr as matrixAttemptKey,
422
+ Er as matrixBatchInputSchema,
423
+ Rr as matrixBatchResponseSchema,
424
+ Pr as matrixExportDeadlineSchema,
420
425
  ee as matrixFlatCsvHeaders,
421
426
  re as matrixFlatCsvRow,
422
- Rr as matrixManifestSchema,
423
- ar as objectsToCSV,
424
- qr as parseCanonicalPivotResultTransport,
427
+ yr as matrixManifestSchema,
428
+ Je as objectsToCSV,
429
+ Kr as parseCanonicalPivotResultTransport,
425
430
  ae as parseFlatTableExportTotalsByColumnId,
426
431
  oe as parseFlatTableExportTotalsRequest,
427
- Pr as parseMatrixAttemptKey,
428
- yr as parseMatrixBatchResponse,
429
- gr as parseMatrixManifest,
430
- Re as parseNumericCanonicalFormat,
431
- Gr as parsePresentationExecutionSnapshot,
432
- Hr as parsePresentationScope,
433
- Pe as parseRawTemporalChunkClassificationEvidence,
434
- Tt as parseRawTemporalValueMetadata,
435
- ye as parseResolvedNumericCanonicalFormat,
436
- zr as parseResolvedPresentationEntries,
437
- ge as parseResolvedRawTemporalFormat,
438
- et as parseResolvedTemporalBucketFormat,
439
- rt as parseTemporalBucketValue,
440
- Be as parseWithSourceTimezone,
432
+ gr as parseMatrixAttemptKey,
433
+ Ar as parseMatrixBatchResponse,
434
+ Cr as parseMatrixManifest,
435
+ ge as parseNumericCanonicalFormat,
436
+ Yr as parsePresentationExecutionSnapshot,
437
+ Wr as parsePresentationScope,
438
+ Ae as parseRawTemporalChunkClassificationEvidence,
439
+ Pt as parseRawTemporalValueMetadata,
440
+ Ce as parseResolvedNumericCanonicalFormat,
441
+ Qr as parseResolvedPresentationEntries,
442
+ Se as parseResolvedRawTemporalFormat,
443
+ st as parseResolvedTemporalBucketFormat,
444
+ lt as parseTemporalBucketValue,
445
+ pr as parseWithSourceTimezone,
441
446
  q as prepareMatrixExportPresentation,
442
- Ae as prepareRawTemporalFormatter,
443
- sr as presentAggregateGroupRow,
444
- lr as presentPivotHeader,
447
+ xe as prepareRawTemporalFormatter,
448
+ Ze as presentAggregateGroupRow,
449
+ er as presentPivotHeader,
445
450
  y as protectCSVText,
446
- nr as readPdfErrorResponse,
447
- ir as requestStructuredPdf,
448
- pt as requirePivotHeaderMembers,
449
- ft as requirePivotResultColumnIdentities,
450
- mr as requiresChunkedCsvExport,
451
- ur as resolveAggregateTablePresentationContext,
452
- tt as resolveApplicableTemporalBucketFormat,
453
- Se as resolveCurrencyFractionDigits,
454
- nt as resolveMetricResultAlias,
455
- Ce as resolveNumericPresentation,
456
- ht as resolveQueryColumnKeyMapEntry,
457
- xe as resolveRawTemporalFormat,
458
- ot as resolveTemporalBucketPresentation,
459
- Ve as resolveTimezone,
460
- bt as resolveUniqueQueryColumnKeyMapEntry,
461
- cr as shouldPresentAggregateGroupValue,
462
- at as tokenizeTemporalBucketPattern,
463
- Fe as validateCardExportNumericPresentationSnapshot,
464
- Ur as validateCardExportPresentationSnapshot,
465
- Me as validateRawTemporalPattern,
466
- wt as validateRawTemporalResultColumn,
467
- st as validateTemporalBucketFormatApplicability
451
+ rr as readPdfErrorResponse,
452
+ tr as requestStructuredPdf,
453
+ Tt as requirePivotHeaderMembers,
454
+ wt as requirePivotResultColumnIdentities,
455
+ or as requiresChunkedCsvExport,
456
+ ar as resolveAggregateTablePresentationContext,
457
+ nt as resolveApplicableTemporalBucketFormat,
458
+ Fe as resolveCurrencyFractionDigits,
459
+ pt as resolveMetricResultAlias,
460
+ Me as resolveNumericPresentation,
461
+ vt as resolveQueryColumnKeyMapEntry,
462
+ _e as resolveRawTemporalFormat,
463
+ it as resolveTemporalBucketPresentation,
464
+ fr as resolveTimezone,
465
+ Et as resolveUniqueQueryColumnKeyMapEntry,
466
+ sr as shouldPresentAggregateGroupValue,
467
+ mt as tokenizeTemporalBucketPattern,
468
+ Ie as validateCardExportNumericPresentationSnapshot,
469
+ Jr as validateCardExportPresentationSnapshot,
470
+ ke as validateRawTemporalPattern,
471
+ yt as validateRawTemporalResultColumn,
472
+ ut as validateTemporalBucketFormatApplicability
468
473
  };
package/dist/index.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./chunks/index-CrxlydOT.cjs"),T=require("./chunks/common-types-nBuCd3u2.cjs"),R=require("./chunks/report-preferences-dialog-CaefWf8W.cjs"),i=require("react/jsx-runtime"),r=require("./chunks/switch--Re1K566.cjs"),m=require("react"),N=require("./chunks/token-types-Ahh5u4iT.cjs"),l=require("./chunks/validators-DVYAnnX0.cjs"),s=require("./chunks/dashboard-briefing-launcher-BgGxFDKD.cjs"),w=require("./chunks/use-debounced-dirty-check-XHSwAefL.cjs");require("./chunks/matrix-operation-contract-DoiWTUbT.cjs");require("./chunks/matrix-continuation-6nhDy-lF.cjs");require("./value-format-preferences/index.cjs");const L=require("./chunks/report-runtime-context-DzvHBPxl.cjs"),B=require("./chunks/pivot-result-identity-uTiylUNr.cjs");require("./chunks/field-aggregations-jSi77h9Z.cjs");const A=require("./chunks/calculated-field-identity-BiTGmnST.cjs");require("zod");require("./chunks/card-config-utils-CMO4_zVs.cjs");require("react-dom");require("./chunks/index-DhlVxvyI.cjs");require("./chunks/appearance-context-DzqCdhB4.cjs");require("./chunks/color-CyB5o13F.cjs");require("./chunks/index-Cx3qmRUB.cjs");const S=require("./chunks/normalize-dashboard-for-dirty-check-BYtBA708.cjs"),I=require("./chunks/x-B6ghREd2.cjs");require("./chunks/appearance-runtime-provider-D5pkvgE4.cjs");function j(t){const a=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(t){for(const o in t)if(o!=="default"){const d=Object.getOwnPropertyDescriptor(t,o);Object.defineProperty(a,o,d.get?d:{enumerable:!0,get:()=>t[o]})}}return a.default=t,Object.freeze(a)}const h=j(m);function q(t){const{displayPreferences:a,cardId:o,...d}=t,u={...d,id:t.dashboardId};return i.jsx(e.ErrorBoundary,{FallbackComponent:e.Fallback,children:i.jsxs(e.SemaphorContextProvider,{dashboardProps:u,children:[i.jsx(e.SemaphorReadyIndicator,{componentType:"visual",componentId:t.cardId}),i.jsx(e.UXProvider,{appearance:t.appearance,children:i.jsx(e.DisplayPreferencesProvider,{displayPreferences:a,children:i.jsx(e.Container,{type:"visual",cardId:o,...u,children:i.jsx(M,{cardId:o})})})})]})})}function M({cardId:t}){const a=r.useDashboardStore(u=>{var f;return(f=u.dashboard)==null?void 0:f.sheets}),{card:o,frame:d}=m.useMemo(()=>{const u=a==null?void 0:a.flatMap(n=>n.frames),f=u==null?void 0:u.flatMap(n=>n==null?void 0:n.cards),D=f==null?void 0:f.find(n=>(n==null?void 0:n.id)===t),E=u==null?void 0:u.find(n=>{var C;return(C=n==null?void 0:n.cards)==null?void 0:C.find(g=>(g==null?void 0:g.id)===t)});return{card:D,frame:E}},[a,t]);return!o||!d?i.jsx(e.VisualErrorState,{description:`Couldn’t find a visual with ID ${t} on this dashboard.`,role:"status"}):i.jsx("main",{className:"flex h-full grow flex-col",children:i.jsx(e.ErrorBoundary,{FallbackComponent:e.FallbackVisual,children:i.jsx(e.DashboardCard,{card:o,frame:d})})})}function U(t,a,o,d){m.useEffect(()=>{t&&!o&&a&&d(A.cloneDeep(a))},[t,o,a,d])}function k({name:t,items:a,value:o,onChange:d,isLoading:u,isError:f,refetch:D,className:E,icon:n,showNone:C=!1}){const g=h.useRef(null),[y,b]=h.useState(!1),[v,F]=h.useState("100%"),x=C?[...a||[],{id:"none",name:"None"}]:a;h.useLayoutEffect(()=>{g.current&&F(g.current.offsetWidth)},[]);function _(){var c;return u?"Loading...":f?"Error":o?(c=a==null?void 0:a.find(p=>p.id===o))==null?void 0:c.name:`Select ${t}`}function P(c,p){d(p),b(!1)}return i.jsxs(r.Popover,{open:y,onOpenChange:b,children:[i.jsx(r.PopoverTrigger,{asChild:!0,children:i.jsxs(r.Button,{ref:g,variant:"outline",role:"combobox","aria-expanded":y,className:r.cn("flex h-9 w-full justify-between",E),children:[i.jsxs("div",{className:"flex items-center gap-2",children:[n&&i.jsx("div",{className:"mr-2",children:n}),i.jsx("span",{className:"max-w-[150px] overflow-hidden truncate text-ellipsis whitespace-nowrap",children:_()})]}),i.jsx(I.ChevronDown,{className:"size-4 opacity-50"})]})}),i.jsx(r.PopoverContent,{className:"w-full p-0",style:{minWidth:v},children:i.jsxs(e.Command,{children:[i.jsxs("div",{className:"flex h-9 items-center justify-between border-b pr-1",children:[i.jsx(e.CommandInput,{className:"h-9",placeholder:"Search..."}),i.jsx(e.IconButton,{className:"h-7",onClick:D,children:i.jsx(e.RefreshCw,{className:r.cn("size-3.5 opacity-50",u&&"animate-spin")})})]}),i.jsxs(e.CommandList,{children:[i.jsxs(e.CommandEmpty,{children:["No ",t==null?void 0:t.toLowerCase()," found."]}),i.jsx(e.CommandGroup,{children:x==null?void 0:x.map(c=>i.jsx(e.CommandItem,{className:"overflow-x-auto",value:c.name,onSelect:p=>P(p,c.id),children:i.jsxs("div",{className:"flex items-center gap-2",children:[i.jsx(r.Check,{className:r.cn("size-4",o===c.id?"opacity-100":"opacity-0")}),i.jsx("div",{title:c.name,children:c.name})]})},c.id))})]})]})})]})}function O(t,a){m.useEffect(()=>(t&&a&&(window.__SEMAPHOR_PRINT_STATE__={...a}),()=>{t&&window.__SEMAPHOR_PRINT_STATE__&&delete window.__SEMAPHOR_PRINT_STATE__}),[t,a])}exports.BriefingAuthor=e.BriefingAuthor;exports.BriefingAuthorDialog=e.BriefingAuthorDialog;exports.BriefingUiCapabilitiesBoundary=e.BriefingUiCapabilitiesBoundary;exports.BriefingUiCapabilitiesProvider=e.BriefingUiCapabilitiesProvider;exports.BriefingsApiError=e.BriefingsApiError;exports.CardSummary=e.CardSummary;exports.Dashboard=e.Dashboard;exports.DashboardCreateDialogBase=e.DashboardCreateDialogBase;exports.DashboardExportDialog=e.DashboardExportDialog;exports.DashboardWC=e.DashboardWC;exports.DisplayFormatPreferencesFields=e.DisplayFormatPreferencesFields;exports.ExportError=e.ExportError;exports.MatrixCardView=e.MatrixCardView;exports.ResourceType=e.ResourceType;exports.SemaphorContextProvider=e.SemaphorContextProvider;exports.SemaphorDataProvider=e.SemaphorQueryClient;exports.SemaphorQueryClient=e.SemaphorQueryClient;exports.ShareDialog=e.ShareDialog;exports.SummaryCard=e.SummaryCard;exports.Surfboard=e.DashboardPlus;exports.applyBriefingFormPatch=e.applyBriefingFormPatch;exports.briefingFormDraftToCreateRequest=e.briefingFormDraftToCreateRequest;exports.briefingFormDraftToUpdateRequest=e.briefingFormDraftToUpdateRequest;exports.briefingToFormDraft=e.briefingToFormDraft;exports.cancelBriefingPreviewRun=e.cancelBriefingPreviewRun;exports.cancelBriefingRun=e.cancelBriefingRun;exports.cancelExport=e.cancelExport;exports.createBriefing=e.createBriefing;exports.createBriefingFormDraft=e.createBriefingFormDraft;exports.createExport=e.createExport;exports.deleteBriefing=e.deleteBriefing;exports.deleteBriefingRun=e.deleteBriefingRun;exports.downloadDocumentPdf=e.downloadDocumentPdf;exports.downloadPdf=e.downloadPdf;exports.formatFileSize=e.formatFileSize;exports.getBriefing=e.getBriefing;exports.getBriefingArtifact=e.getBriefingArtifact;exports.getBriefingEvidence=e.getBriefingEvidence;exports.getBriefingPreviewRun=e.getBriefingPreviewRun;exports.getBriefingRun=e.getBriefingRun;exports.getDownloadUrl=e.getDownloadUrl;exports.getExportStatus=e.getExportStatus;exports.getExports=e.getExports;exports.isExportComplete=e.isExportComplete;exports.isExportInProgress=e.isExportInProgress;exports.listBriefingRuns=e.listBriefingRuns;exports.listBriefingTenantSummaries=e.listBriefingTenantSummaries;exports.listBriefings=e.listBriefings;exports.pauseBriefing=e.pauseBriefing;exports.polishBriefingText=e.polishBriefingText;exports.previewBriefingPlan=e.previewBriefingPlan;exports.resumeBriefing=e.resumeBriefing;exports.runBriefingNow=e.runBriefingNow;exports.runBriefingPreview=e.runBriefingPreview;exports.updateBriefing=e.updateBriefing;exports.useActiveExports=e.useActiveExports;exports.useAddNewFrame=e.useAddNewFrame;exports.useBriefingUiCapabilities=e.useBriefingUiCapabilities;exports.useCard=e.useCard;exports.useCardSummary=e.useCardSummary;exports.useDashboardById=e.useDashboardById;exports.useDashboardQuery=e.useDashboardQuery;exports.useDashboardSummary=e.useDashboardSummary;exports.useDataColumns=e.useDataColumns;exports.useDateFilterHook=e.useDateFilterHook;exports.useEditorAside=e.useEditorAside;exports.useExportActions=e.useExportActions;exports.useExportStore=e.useExportStore;exports.useInProgressExportsCount=e.useInProgressExportsCount;exports.useManagementStore=e.useManagementStore;exports.useResourceManagement=e.useResourceManagement;exports.useTextFilterHook=e.useTextFilterHook;exports.validateBriefingFormDraft=e.validateBriefingFormDraft;exports.CONTROL_CARD_DEFAULT_VALUE=T.CONTROL_CARD_DEFAULT_VALUE;exports.EMPTY_SELECTION=T.EMPTY_SELECTION;exports.ReportPreferencesDialog=R.ReportPreferencesDialog;exports.createEmptyKpiConfig=r.createEmptyKpiConfig;exports.createSqlGenConfig=r.createSqlGenConfig;exports.emitDashboardLoad=r.emitDashboardLoad;exports.emitDashboardUnload=r.emitDashboardUnload;exports.fmt=r.fmt;exports.getColumnDataType=r.getColumnDataType;exports.getFilterValueType=r.getFilterValueType;exports.getFormattedTableNameForQuery=r.getFormattedTableNameForQuery;exports.getQualifiedTableName=r.getQualifiedTableName;exports.getSql=r.getSql;exports.invalidateToken=r.invalidateToken;exports.isBooleanDataType=r.isBooleanDataType;exports.isColumnInSqlGen=r.isColumnInSqlGen;exports.isDateDataType=r.isDateDataType;exports.isNumberDataType=r.isNumberDataType;exports.isTextDataType=r.isTextDataType;exports.resolveDataType=r.resolveDataType;exports.resolveDatamodelName=r.resolveDatamodelName;exports.useCurrentActiveCard=r.useCurrentActiveCard;exports.useCurrentCardConfig=r.useCurrentCardConfig;exports.useCurrentSheetActiveCards=r.useCurrentSheetActiveCards;exports.useDashboardActions=r.useDashboardActions;exports.useDashboardStore=r.useDashboardStore;exports.useEditorActions=r.useEditorActions;exports.useEditorStore=r.useEditorStore;exports.DEFAULT_SEMANTIC_DOMAIN_ACCESS=N.DEFAULT_SEMANTIC_DOMAIN_ACCESS;exports.CALCULATED_FIELD_ENTITY_MARKER=l.CALCULATED_FIELD_ENTITY_MARKER;exports.DATE_FORMAT_VALUES=l.DATE_FORMAT_VALUES;exports.LEGACY_CALCULATED_FIELD_ENTITY_MARKER=l.LEGACY_CALCULATED_FIELD_ENTITY_MARKER;exports.PivotMarkerEnum=l.PivotMarkerEnum;exports.getCalculatedFieldComputeStage=l.getCalculatedFieldComputeStage;exports.getFieldRuntimeColumnName=l.getFieldRuntimeColumnName;exports.hasCalculatedFieldMarker=l.hasCalculatedFieldMarker;exports.hasCalculatedFormulaInputs=l.hasCalculatedFormulaInputs;exports.hasSyntheticCalculatedFieldOwner=l.hasSyntheticCalculatedFieldOwner;exports.inspectCalculatedField=l.inspectCalculatedField;exports.isCalculatedDimension=l.isCalculatedDimension;exports.isCalculatedMetric=l.isCalculatedMetric;exports.isDerivedField=l.isDerivedField;exports.normalizeCalculatedFieldRepresentation=l.normalizeCalculatedFieldRepresentation;exports.shouldDropInheritedCalculationAggregate=l.shouldDropInheritedCalculationAggregate;exports.AdvancedModeToggle=s.AdvancedModeToggle;exports.DashboardBriefingLauncher=s.DashboardBriefingLauncher;exports.DashboardControlsSettings=s.DashboardControlsSettings;exports.DashboardFilterControlsButton=s.DashboardFilterControlsButton;exports.DashboardFilterControlsLauncher=s.DashboardFilterControlsLauncher;exports.DocumentControlsSettings=s.DocumentControlsSettings;exports.ExportNotificationItem=s.ExportNotificationItem;exports.ExportNotificationList=s.ExportNotificationList;exports.NotificationBell=s.NotificationBell;exports.UnsavedChangesAlert=s.UnsavedChangesAlert;exports.VisualEditingControls=s.VisualEditingControls;exports.VisualsLibraryDialog=s.VisualsLibraryDialog;exports.WatchDashboardButton=s.WatchDashboardButton;exports.useDashboardUnsavedChangesCheck=s.useDashboardUnsavedChangesCheck;exports.useExportPolling=s.useExportPolling;exports.useExportRecovery=s.useExportRecovery;exports.useDebouncedDirtyCheck=w.useDebouncedDirtyCheck;exports.DEFAULT_CALENDAR_CONTEXT=L.DEFAULT_CALENDAR_CONTEXT;exports.resolveQueryColumnKeyMapEntry=B.resolveQueryColumnKeyMapEntry;exports.resolveUniqueQueryColumnKeyMapEntry=B.resolveUniqueQueryColumnKeyMapEntry;exports.cloneDeep=A.cloneDeep;exports.normalizeDashboardForDirtyCheck=S.normalizeDashboardForDirtyCheck;exports.serializeDashboardForDirtyCheck=S.serializeDashboardForDirtyCheck;exports.Combobox=k;exports.Visual=q;exports.useExposePrintState=O;exports.usePristineSnapshotInitializer=U;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./chunks/index-C6_xef4P.cjs"),T=require("./chunks/common-types-nBuCd3u2.cjs"),R=require("./chunks/report-preferences-dialog-Dr1BYwuf.cjs"),i=require("react/jsx-runtime"),r=require("./chunks/switch-Ced9ZZwI.cjs"),m=require("react"),N=require("./chunks/token-types-Ahh5u4iT.cjs"),l=require("./chunks/validators-DVYAnnX0.cjs"),s=require("./chunks/dashboard-briefing-launcher-B7zqm8P1.cjs"),w=require("./chunks/use-debounced-dirty-check-XHSwAefL.cjs");require("./chunks/matrix-operation-contract-DoiWTUbT.cjs");require("./chunks/matrix-continuation-6nhDy-lF.cjs");require("./value-format-preferences/index.cjs");const L=require("./chunks/report-runtime-context-DzvHBPxl.cjs"),B=require("./chunks/pivot-result-identity-uTiylUNr.cjs");require("./chunks/field-aggregations-jSi77h9Z.cjs");const A=require("./chunks/calculated-field-identity-BiTGmnST.cjs");require("zod");require("./chunks/card-config-utils-CMO4_zVs.cjs");require("react-dom");require("./chunks/index-BMMXKK3G.cjs");require("./chunks/appearance-context-DzqCdhB4.cjs");require("./chunks/color-CyB5o13F.cjs");require("./chunks/index-Cx3qmRUB.cjs");const S=require("./chunks/normalize-dashboard-for-dirty-check-BYtBA708.cjs"),I=require("./chunks/x-B6ghREd2.cjs");require("./chunks/appearance-runtime-provider-D5pkvgE4.cjs");function j(t){const a=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(t){for(const o in t)if(o!=="default"){const d=Object.getOwnPropertyDescriptor(t,o);Object.defineProperty(a,o,d.get?d:{enumerable:!0,get:()=>t[o]})}}return a.default=t,Object.freeze(a)}const h=j(m);function q(t){const{displayPreferences:a,cardId:o,...d}=t,u={...d,id:t.dashboardId};return i.jsx(e.ErrorBoundary,{FallbackComponent:e.Fallback,children:i.jsxs(e.SemaphorContextProvider,{dashboardProps:u,children:[i.jsx(e.SemaphorReadyIndicator,{componentType:"visual",componentId:t.cardId}),i.jsx(e.UXProvider,{appearance:t.appearance,children:i.jsx(e.DisplayPreferencesProvider,{displayPreferences:a,children:i.jsx(e.Container,{type:"visual",cardId:o,...u,children:i.jsx(M,{cardId:o})})})})]})})}function M({cardId:t}){const a=r.useDashboardStore(u=>{var f;return(f=u.dashboard)==null?void 0:f.sheets}),{card:o,frame:d}=m.useMemo(()=>{const u=a==null?void 0:a.flatMap(n=>n.frames),f=u==null?void 0:u.flatMap(n=>n==null?void 0:n.cards),D=f==null?void 0:f.find(n=>(n==null?void 0:n.id)===t),E=u==null?void 0:u.find(n=>{var C;return(C=n==null?void 0:n.cards)==null?void 0:C.find(g=>(g==null?void 0:g.id)===t)});return{card:D,frame:E}},[a,t]);return!o||!d?i.jsx(e.VisualErrorState,{description:`Couldn’t find a visual with ID ${t} on this dashboard.`,role:"status"}):i.jsx("main",{className:"flex h-full grow flex-col",children:i.jsx(e.ErrorBoundary,{FallbackComponent:e.FallbackVisual,children:i.jsx(e.DashboardCard,{card:o,frame:d})})})}function U(t,a,o,d){m.useEffect(()=>{t&&!o&&a&&d(A.cloneDeep(a))},[t,o,a,d])}function k({name:t,items:a,value:o,onChange:d,isLoading:u,isError:f,refetch:D,className:E,icon:n,showNone:C=!1}){const g=h.useRef(null),[y,b]=h.useState(!1),[v,F]=h.useState("100%"),x=C?[...a||[],{id:"none",name:"None"}]:a;h.useLayoutEffect(()=>{g.current&&F(g.current.offsetWidth)},[]);function _(){var c;return u?"Loading...":f?"Error":o?(c=a==null?void 0:a.find(p=>p.id===o))==null?void 0:c.name:`Select ${t}`}function P(c,p){d(p),b(!1)}return i.jsxs(r.Popover,{open:y,onOpenChange:b,children:[i.jsx(r.PopoverTrigger,{asChild:!0,children:i.jsxs(r.Button,{ref:g,variant:"outline",role:"combobox","aria-expanded":y,className:r.cn("flex h-9 w-full justify-between",E),children:[i.jsxs("div",{className:"flex items-center gap-2",children:[n&&i.jsx("div",{className:"mr-2",children:n}),i.jsx("span",{className:"max-w-[150px] overflow-hidden truncate text-ellipsis whitespace-nowrap",children:_()})]}),i.jsx(I.ChevronDown,{className:"size-4 opacity-50"})]})}),i.jsx(r.PopoverContent,{className:"w-full p-0",style:{minWidth:v},children:i.jsxs(e.Command,{children:[i.jsxs("div",{className:"flex h-9 items-center justify-between border-b pr-1",children:[i.jsx(e.CommandInput,{className:"h-9",placeholder:"Search..."}),i.jsx(e.IconButton,{className:"h-7",onClick:D,children:i.jsx(e.RefreshCw,{className:r.cn("size-3.5 opacity-50",u&&"animate-spin")})})]}),i.jsxs(e.CommandList,{children:[i.jsxs(e.CommandEmpty,{children:["No ",t==null?void 0:t.toLowerCase()," found."]}),i.jsx(e.CommandGroup,{children:x==null?void 0:x.map(c=>i.jsx(e.CommandItem,{className:"overflow-x-auto",value:c.name,onSelect:p=>P(p,c.id),children:i.jsxs("div",{className:"flex items-center gap-2",children:[i.jsx(r.Check,{className:r.cn("size-4",o===c.id?"opacity-100":"opacity-0")}),i.jsx("div",{title:c.name,children:c.name})]})},c.id))})]})]})})]})}function O(t,a){m.useEffect(()=>(t&&a&&(window.__SEMAPHOR_PRINT_STATE__={...a}),()=>{t&&window.__SEMAPHOR_PRINT_STATE__&&delete window.__SEMAPHOR_PRINT_STATE__}),[t,a])}exports.BriefingAuthor=e.BriefingAuthor;exports.BriefingAuthorDialog=e.BriefingAuthorDialog;exports.BriefingUiCapabilitiesBoundary=e.BriefingUiCapabilitiesBoundary;exports.BriefingUiCapabilitiesProvider=e.BriefingUiCapabilitiesProvider;exports.BriefingsApiError=e.BriefingsApiError;exports.CardSummary=e.CardSummary;exports.Dashboard=e.Dashboard;exports.DashboardCreateDialogBase=e.DashboardCreateDialogBase;exports.DashboardExportDialog=e.DashboardExportDialog;exports.DashboardWC=e.DashboardWC;exports.DisplayFormatPreferencesFields=e.DisplayFormatPreferencesFields;exports.ExportError=e.ExportError;exports.MatrixCardView=e.MatrixCardView;exports.ResourceType=e.ResourceType;exports.SemaphorContextProvider=e.SemaphorContextProvider;exports.SemaphorDataProvider=e.SemaphorQueryClient;exports.SemaphorQueryClient=e.SemaphorQueryClient;exports.ShareDialog=e.ShareDialog;exports.SummaryCard=e.SummaryCard;exports.Surfboard=e.DashboardPlus;exports.applyBriefingFormPatch=e.applyBriefingFormPatch;exports.briefingFormDraftToCreateRequest=e.briefingFormDraftToCreateRequest;exports.briefingFormDraftToUpdateRequest=e.briefingFormDraftToUpdateRequest;exports.briefingToFormDraft=e.briefingToFormDraft;exports.cancelBriefingPreviewRun=e.cancelBriefingPreviewRun;exports.cancelBriefingRun=e.cancelBriefingRun;exports.cancelExport=e.cancelExport;exports.createBriefing=e.createBriefing;exports.createBriefingFormDraft=e.createBriefingFormDraft;exports.createExport=e.createExport;exports.deleteBriefing=e.deleteBriefing;exports.deleteBriefingRun=e.deleteBriefingRun;exports.downloadDocumentPdf=e.downloadDocumentPdf;exports.downloadPdf=e.downloadPdf;exports.formatFileSize=e.formatFileSize;exports.getBriefing=e.getBriefing;exports.getBriefingArtifact=e.getBriefingArtifact;exports.getBriefingEvidence=e.getBriefingEvidence;exports.getBriefingPreviewRun=e.getBriefingPreviewRun;exports.getBriefingRun=e.getBriefingRun;exports.getDownloadUrl=e.getDownloadUrl;exports.getExportStatus=e.getExportStatus;exports.getExports=e.getExports;exports.isExportComplete=e.isExportComplete;exports.isExportInProgress=e.isExportInProgress;exports.listBriefingRuns=e.listBriefingRuns;exports.listBriefingTenantSummaries=e.listBriefingTenantSummaries;exports.listBriefings=e.listBriefings;exports.pauseBriefing=e.pauseBriefing;exports.polishBriefingText=e.polishBriefingText;exports.previewBriefingPlan=e.previewBriefingPlan;exports.resumeBriefing=e.resumeBriefing;exports.runBriefingNow=e.runBriefingNow;exports.runBriefingPreview=e.runBriefingPreview;exports.updateBriefing=e.updateBriefing;exports.useActiveExports=e.useActiveExports;exports.useAddNewFrame=e.useAddNewFrame;exports.useBriefingUiCapabilities=e.useBriefingUiCapabilities;exports.useCard=e.useCard;exports.useCardSummary=e.useCardSummary;exports.useDashboardById=e.useDashboardById;exports.useDashboardQuery=e.useDashboardQuery;exports.useDashboardSummary=e.useDashboardSummary;exports.useDataColumns=e.useDataColumns;exports.useDateFilterHook=e.useDateFilterHook;exports.useEditorAside=e.useEditorAside;exports.useExportActions=e.useExportActions;exports.useExportStore=e.useExportStore;exports.useInProgressExportsCount=e.useInProgressExportsCount;exports.useManagementStore=e.useManagementStore;exports.useResourceManagement=e.useResourceManagement;exports.useTextFilterHook=e.useTextFilterHook;exports.validateBriefingFormDraft=e.validateBriefingFormDraft;exports.CONTROL_CARD_DEFAULT_VALUE=T.CONTROL_CARD_DEFAULT_VALUE;exports.EMPTY_SELECTION=T.EMPTY_SELECTION;exports.ReportPreferencesDialog=R.ReportPreferencesDialog;exports.createEmptyKpiConfig=r.createEmptyKpiConfig;exports.createSqlGenConfig=r.createSqlGenConfig;exports.emitDashboardLoad=r.emitDashboardLoad;exports.emitDashboardUnload=r.emitDashboardUnload;exports.fmt=r.fmt;exports.getColumnDataType=r.getColumnDataType;exports.getFilterValueType=r.getFilterValueType;exports.getFormattedTableNameForQuery=r.getFormattedTableNameForQuery;exports.getQualifiedTableName=r.getQualifiedTableName;exports.getSql=r.getSql;exports.invalidateToken=r.invalidateToken;exports.isBooleanDataType=r.isBooleanDataType;exports.isColumnInSqlGen=r.isColumnInSqlGen;exports.isDateDataType=r.isDateDataType;exports.isNumberDataType=r.isNumberDataType;exports.isTextDataType=r.isTextDataType;exports.resolveDataType=r.resolveDataType;exports.resolveDatamodelName=r.resolveDatamodelName;exports.useCurrentActiveCard=r.useCurrentActiveCard;exports.useCurrentCardConfig=r.useCurrentCardConfig;exports.useCurrentSheetActiveCards=r.useCurrentSheetActiveCards;exports.useDashboardActions=r.useDashboardActions;exports.useDashboardStore=r.useDashboardStore;exports.useEditorActions=r.useEditorActions;exports.useEditorStore=r.useEditorStore;exports.DEFAULT_SEMANTIC_DOMAIN_ACCESS=N.DEFAULT_SEMANTIC_DOMAIN_ACCESS;exports.CALCULATED_FIELD_ENTITY_MARKER=l.CALCULATED_FIELD_ENTITY_MARKER;exports.DATE_FORMAT_VALUES=l.DATE_FORMAT_VALUES;exports.LEGACY_CALCULATED_FIELD_ENTITY_MARKER=l.LEGACY_CALCULATED_FIELD_ENTITY_MARKER;exports.PivotMarkerEnum=l.PivotMarkerEnum;exports.getCalculatedFieldComputeStage=l.getCalculatedFieldComputeStage;exports.getFieldRuntimeColumnName=l.getFieldRuntimeColumnName;exports.hasCalculatedFieldMarker=l.hasCalculatedFieldMarker;exports.hasCalculatedFormulaInputs=l.hasCalculatedFormulaInputs;exports.hasSyntheticCalculatedFieldOwner=l.hasSyntheticCalculatedFieldOwner;exports.inspectCalculatedField=l.inspectCalculatedField;exports.isCalculatedDimension=l.isCalculatedDimension;exports.isCalculatedMetric=l.isCalculatedMetric;exports.isDerivedField=l.isDerivedField;exports.normalizeCalculatedFieldRepresentation=l.normalizeCalculatedFieldRepresentation;exports.shouldDropInheritedCalculationAggregate=l.shouldDropInheritedCalculationAggregate;exports.AdvancedModeToggle=s.AdvancedModeToggle;exports.DashboardBriefingLauncher=s.DashboardBriefingLauncher;exports.DashboardControlsSettings=s.DashboardControlsSettings;exports.DashboardFilterControlsButton=s.DashboardFilterControlsButton;exports.DashboardFilterControlsLauncher=s.DashboardFilterControlsLauncher;exports.DocumentControlsSettings=s.DocumentControlsSettings;exports.ExportNotificationItem=s.ExportNotificationItem;exports.ExportNotificationList=s.ExportNotificationList;exports.NotificationBell=s.NotificationBell;exports.UnsavedChangesAlert=s.UnsavedChangesAlert;exports.VisualEditingControls=s.VisualEditingControls;exports.VisualsLibraryDialog=s.VisualsLibraryDialog;exports.WatchDashboardButton=s.WatchDashboardButton;exports.useDashboardUnsavedChangesCheck=s.useDashboardUnsavedChangesCheck;exports.useExportPolling=s.useExportPolling;exports.useExportRecovery=s.useExportRecovery;exports.useDebouncedDirtyCheck=w.useDebouncedDirtyCheck;exports.DEFAULT_CALENDAR_CONTEXT=L.DEFAULT_CALENDAR_CONTEXT;exports.resolveQueryColumnKeyMapEntry=B.resolveQueryColumnKeyMapEntry;exports.resolveUniqueQueryColumnKeyMapEntry=B.resolveUniqueQueryColumnKeyMapEntry;exports.cloneDeep=A.cloneDeep;exports.normalizeDashboardForDirtyCheck=S.normalizeDashboardForDirtyCheck;exports.serializeDashboardForDirtyCheck=S.serializeDashboardForDirtyCheck;exports.Combobox=k;exports.Visual=q;exports.useExposePrintState=O;exports.usePristineSnapshotInitializer=U;