react-semaphor 0.1.516 → 0.1.517

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 (77) hide show
  1. package/dist/brand-studio/index.cjs +1 -1
  2. package/dist/brand-studio/index.js +2 -2
  3. package/dist/briefings/index.cjs +1 -1
  4. package/dist/briefings/index.js +3 -3
  5. package/dist/chunks/{calculated-field-identity-DzJBs2J8.js → calculated-field-identity-Dy_WpDdo.js} +1 -1
  6. package/dist/chunks/{card-config-utils-Cxnq2R6z.js → card-config-utils-CAyjC5Tp.js} +2 -2
  7. package/dist/chunks/{dashboard-briefing-launcher-BCEHJ_eD.js → dashboard-briefing-launcher-D5HGRwtb.js} +7 -7
  8. package/dist/chunks/{dashboard-briefing-launcher-CjZ4aE34.cjs → dashboard-briefing-launcher-RpT4b0d5.cjs} +1 -1
  9. package/dist/chunks/{dashboard-controls-DFfit5KH.js → dashboard-controls-C0Aw74JP.js} +9 -9
  10. package/dist/chunks/{dashboard-controls-f9aJ70Zu.cjs → dashboard-controls-DidqEx0U.cjs} +1 -1
  11. package/dist/chunks/{dashboard-json-DVtcA02f.js → dashboard-json-B5LLO49G.js} +5 -5
  12. package/dist/chunks/{dashboard-json-deqQC-UR.cjs → dashboard-json-rY4lTftA.cjs} +1 -1
  13. package/dist/chunks/{edit-dashboard-visual-lJ6rDH3w.js → edit-dashboard-visual-D3TrgFMg.js} +364 -361
  14. package/dist/chunks/{edit-dashboard-visual-DK6lSC_p.cjs → edit-dashboard-visual-NABO8NBr.cjs} +3 -3
  15. package/dist/chunks/{editor-action-buttons-Bnxxa439.js → editor-action-buttons-BfWg6DdZ.js} +4 -4
  16. package/dist/chunks/{editor-action-buttons-CmDaQbPN.cjs → editor-action-buttons-xQ5aj-0q.cjs} +1 -1
  17. package/dist/chunks/{field-aggregations-Dl2A3rbV.js → field-aggregations-BQjogiI1.js} +1 -1
  18. package/dist/chunks/{index-ylOpKRDu.js → index-B0KwXM6P.js} +117 -116
  19. package/dist/chunks/index-CapO5Uw9.cjs +4 -0
  20. package/dist/chunks/{index-UNKSfi7s.cjs → index-Dgv9vzT0.cjs} +230 -230
  21. package/dist/chunks/{index-BVVl2JDK.js → index-DqTelnri.js} +27499 -27198
  22. package/dist/chunks/{matrix-control-sources-KbZe1gj_.js → matrix-control-sources-B1K7x0SL.js} +2 -2
  23. package/dist/chunks/matrix-formatter-Qk8xsR05.cjs +1 -0
  24. package/dist/chunks/{matrix-formatter-CCXNRt3s.js → matrix-formatter-WBgtebUT.js} +8 -8
  25. package/dist/chunks/numeric-presentation-VhMUHfrJ.js +537 -0
  26. package/dist/chunks/numeric-presentation-mY6wJMdB.cjs +1 -0
  27. package/dist/chunks/{pivot-header-presentation-BSZhB1g-.js → pivot-header-presentation-CGtudHo7.js} +4 -4
  28. package/dist/chunks/{pivot-header-presentation-EoUS5ze5.cjs → pivot-header-presentation-DV2aBB6p.cjs} +2 -2
  29. package/dist/chunks/{pivot-result-lifecycle-kRhiJkzg.js → pivot-result-lifecycle-BFO354lk.js} +7 -7
  30. package/dist/chunks/pivot-result-lifecycle-OXAgoIYm.cjs +1 -0
  31. package/dist/chunks/raw-temporal-7bFbXd2a.js +930 -0
  32. package/dist/chunks/raw-temporal-CYdOOyR5.cjs +1 -0
  33. package/dist/chunks/{report-preferences-dialog-CHXPEl7v.js → report-preferences-dialog-BzxqfcF8.js} +3 -3
  34. package/dist/chunks/{report-preferences-dialog-Cto0vDwI.cjs → report-preferences-dialog-DLnhOXXg.cjs} +1 -1
  35. package/dist/chunks/{semantic-format-DwqGYx4V.js → semantic-format-Baqp8kD_.js} +1 -1
  36. package/dist/chunks/semantic-format-Bd7HmLG_.cjs +1 -0
  37. package/dist/chunks/{switch-DNbWXEOP.cjs → switch-C0520nRt.cjs} +24 -24
  38. package/dist/chunks/{switch-DNv-hVmt.js → switch-evlnTA4t.js} +3180 -3092
  39. package/dist/chunks/{temporal-bucket-DlFuhCnT.js → temporal-bucket-PcLFSYWX.js} +6 -6
  40. package/dist/chunks/temporal-input-presentation-2RJrvmYL.js +222 -0
  41. package/dist/chunks/temporal-input-presentation-BIOSVWCL.cjs +1 -0
  42. package/dist/dashboard/index.cjs +1 -1
  43. package/dist/dashboard/index.js +1 -1
  44. package/dist/dashboard-authoring/index.js +6 -6
  45. package/dist/data-app-builder/index.cjs +1 -1
  46. package/dist/data-app-builder/index.js +2 -2
  47. package/dist/data-app-sdk/index.cjs +1 -1
  48. package/dist/data-app-sdk/index.js +1 -1
  49. package/dist/format-utils/index.cjs +3 -3
  50. package/dist/format-utils/index.js +77 -73
  51. package/dist/index.cjs +1 -1
  52. package/dist/index.js +10 -10
  53. package/dist/style.css +1 -1
  54. package/dist/surfboard/index.cjs +1 -1
  55. package/dist/surfboard/index.js +2 -2
  56. package/dist/types/components/editor/editor-main/dashboard-variable-node.d.ts +7 -3
  57. package/dist/types/components/editor/editor-main/text-card-rich-editor.d.ts +4 -1
  58. package/dist/types/lib/charts/chart-availability.d.ts +6 -0
  59. package/dist/types/lib/dashboard-inputs/dashboard-input-display.d.ts +11 -0
  60. package/dist/types/lib/dashboard-inputs/dashboard-input-text.d.ts +2 -1
  61. package/dist/types/lib/dashboard-inputs/text-card-rich-content.d.ts +3 -2
  62. package/dist/types/lib/dashboard-inputs/text-variable-options.d.ts +5 -4
  63. package/dist/types/lib/document/document-variables.d.ts +8 -4
  64. package/dist/types/lib/text-variables/temporal-input-text.d.ts +28 -0
  65. package/dist/types/lib/text-variables/text-variable-types.d.ts +17 -1
  66. package/dist/types/lib/types/common-types.d.ts +11 -1
  67. package/dist/types/shared/format-utils/index.d.ts +1 -0
  68. package/dist/types/shared/format-utils/temporal-input-presentation.d.ts +46 -0
  69. package/package.json +1 -1
  70. package/dist/chunks/index-C8w91oj4.js +0 -328
  71. package/dist/chunks/index-Cw2ypaFl.cjs +0 -1
  72. package/dist/chunks/index-DfqMtR9S.cjs +0 -4
  73. package/dist/chunks/matrix-formatter-BJTO8ky9.cjs +0 -1
  74. package/dist/chunks/pivot-result-lifecycle-gl9cBfB-.cjs +0 -1
  75. package/dist/chunks/raw-temporal-BqOfk-xN.js +0 -1137
  76. package/dist/chunks/raw-temporal-eJXecCyJ.cjs +0 -1
  77. package/dist/chunks/semantic-format-mVI32OJH.cjs +0 -1
@@ -1,5 +1,5 @@
1
- "use strict";var te=Object.defineProperty;var oe=(e,r,t)=>r in e?te(e,r,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[r]=t;var M=(e,r,t)=>oe(e,typeof r!="symbol"?r+"":r,t);const ae=require("./index-Cw2ypaFl.cjs"),P=require("./raw-temporal-eJXecCyJ.cjs"),w=require("./matrix-formatter-BJTO8ky9.cjs"),y=require("./validators-DFeDcdpA.cjs");require("./matrix-operation-contract-0RxoU_M3.cjs");const O=require("./matrix-definition-DanUT11P.cjs"),L=require("../pdf-export-policy/index.cjs"),ne=require("./temporal-bucket-4YEPEKlJ.cjs");function se(e,r,t){const a={...r,locale:r.locale??t};if(a.type==="number")return P.formatNumericCanonical(e,a);const{prefix:o,suffix:s,...n}=a;return`${o??""}${P.formatNumericCanonical(e,{...n,negativeStyle:a.type==="currency"?a.negativeStyle:"minus"})}${s??""}`}function R(e,r,t){return e===null?{value:e,text:null}:!r||!ae.isNumericCanonicalFormat(r)&&r.type!=="duration"?{value:e,text:P.formatNumericCanonical(e,{type:"number",locale:t})}:r.type==="duration"?{value:e,text:P.formatDuration(e,{inputUnit:r.inputUnit,outputStyle:r.outputStyle,largestUnit:r.largestUnit,smallestUnit:r.smallestUnit,maxUnits:r.maxUnits,prefix:r.prefix,suffix:r.suffix,negativeInParentheses:r.negativeStyle==="parentheses"})}:{value:e,text:se(e,r,t)}}function k(e,r,t,a){return e===null?{value:e,text:null}:a==="percent"?{value:e,text:P.formatNumericCanonical(e,{type:"percent",locale:t,minimumFractionDigits:r,maximumFractionDigits:r,percentValueMode:"fraction"})}:{value:e,text:P.formatNumericCanonical(e,{type:"number",locale:t,minimumFractionDigits:r,maximumFractionDigits:r,suffix:"×"})}}function V(e,r){if(e===void 0)return r;if(!Number.isInteger(e)||e<0||e>6)throw new RangeError("Comparison precision must be an integer from 0 to 6.");return e}function le(e,r){const t={mode:r.displayMode,current:R(e.currentValue,r.metricFormat,r.locale),comparison:R(e.comparisonValue,r.metricFormat,r.locale)};return(r.displayMode==="difference"||r.displayMode==="both")&&(t.difference=R(e.delta,r.metricFormat,r.locale)),(r.displayMode==="percent_change"||r.displayMode==="both")&&(t.percentChange=k(e.percentChange,V(r.precision,1),r.locale,"percent")),r.displayMode==="ratio"&&(t.ratio=k(e.ratio,V(r.precision,2),r.locale,"ratio")),t}function C(e){const r=e.trimStart().charAt(0);return["=","+","-","@"].includes(r)||[" ","\r",`
1
+ "use strict";var te=Object.defineProperty;var oe=(e,r,t)=>r in e?te(e,r,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[r]=t;var M=(e,r,t)=>oe(e,typeof r!="symbol"?r+"":r,t);const ae=require("./raw-temporal-CYdOOyR5.cjs"),v=require("./numeric-presentation-mY6wJMdB.cjs"),w=require("./matrix-formatter-Qk8xsR05.cjs"),y=require("./validators-DFeDcdpA.cjs");require("./matrix-operation-contract-0RxoU_M3.cjs");const O=require("./matrix-definition-DanUT11P.cjs"),L=require("../pdf-export-policy/index.cjs"),ne=require("./temporal-bucket-4YEPEKlJ.cjs");function se(e,r,t){const a={...r,locale:r.locale??t};if(a.type==="number")return v.formatNumericCanonical(e,a);const{prefix:o,suffix:s,...n}=a;return`${o??""}${v.formatNumericCanonical(e,{...n,negativeStyle:a.type==="currency"?a.negativeStyle:"minus"})}${s??""}`}function R(e,r,t){return e===null?{value:e,text:null}:!r||!ae.isNumericCanonicalFormat(r)&&r.type!=="duration"?{value:e,text:v.formatNumericCanonical(e,{type:"number",locale:t})}:r.type==="duration"?{value:e,text:v.formatDuration(e,{inputUnit:r.inputUnit,outputStyle:r.outputStyle,largestUnit:r.largestUnit,smallestUnit:r.smallestUnit,maxUnits:r.maxUnits,prefix:r.prefix,suffix:r.suffix,negativeInParentheses:r.negativeStyle==="parentheses"})}:{value:e,text:se(e,r,t)}}function k(e,r,t,a){return e===null?{value:e,text:null}:a==="percent"?{value:e,text:v.formatNumericCanonical(e,{type:"percent",locale:t,minimumFractionDigits:r,maximumFractionDigits:r,percentValueMode:"fraction"})}:{value:e,text:v.formatNumericCanonical(e,{type:"number",locale:t,minimumFractionDigits:r,maximumFractionDigits:r,suffix:"×"})}}function V(e,r){if(e===void 0)return r;if(!Number.isInteger(e)||e<0||e>6)throw new RangeError("Comparison precision must be an integer from 0 to 6.");return e}function le(e,r){const t={mode:r.displayMode,current:R(e.currentValue,r.metricFormat,r.locale),comparison:R(e.comparisonValue,r.metricFormat,r.locale)};return(r.displayMode==="difference"||r.displayMode==="both")&&(t.difference=R(e.delta,r.metricFormat,r.locale)),(r.displayMode==="percent_change"||r.displayMode==="both")&&(t.percentChange=k(e.percentChange,V(r.precision,1),r.locale,"percent")),r.displayMode==="ratio"&&(t.ratio=k(e.ratio,V(r.precision,2),r.locale,"ratio")),t}function C(e){const r=e.trimStart().charAt(0);return["=","+","-","@"].includes(r)||[" ","\r",`
2
2
  `].includes(e.charAt(0))?`'${e}`:e}function D(e,r=","){if(e==null)return"";const t=String(e);return t.includes(r)||t.includes('"')||t.includes(`
3
3
  `)||t.includes("\r")?`"${t.replace(/"/g,'""')}"`:t}function N(e,r=","){return e.map(t=>D(t,r)).join(r)}function G(e,r={}){const{delimiter:t=",",lineEnding:a=`
4
4
  `}=r;return e.map(o=>N(o,t)).join(a)}function ie(e,r={}){if(e.length===0)return"";const{delimiter:t=",",lineEnding:a=`
5
- `,includeHeaders:o=!0,columns:s}=r,n=s||Object.keys(e[0]),l=[];o&&l.push(n);for(const m of e){const u=n.map(d=>{const g=m[d];return g==null?"":String(g)});l.push(u)}return G(l,{delimiter:t,lineEnding:a})}const X=1e4,ue=1e6,ce=5e6,me=1024**3,fe=1024**3;function ge(e){return e>X}const de={rowLabels:"tabular",subtotals:"after"};function pe(e,r){const t=r.rowLabels==="outline"?{kind:"compact"}:e.layout.kind==="tabular"?e.layout:{kind:"tabular",repeatLabels:!1},a=e.totals.rows;return{...e,layout:t,totals:{...e.totals,rows:{...a,levels:Object.fromEntries(Object.entries(a.levels).map(([o,s])=>[o,{...s,position:r.subtotals}]))}}}}const $=2;function he(e){return typeof e=="number"?Number.isInteger(e):y.isExactNumericValue(e)?!e.value.includes("."):!0}function B(e,r,t){const a=e.descriptors.measures.filter(n=>t.measureFormats[n.id]===void 0&&n.semanticFormat===void 0&&y.normalizeAnalyticsCatalogDataType(n.column.dataType)==="number");if(a.length===0)return t;const o=new Set;e.columns.forEach((n,l)=>{if(!(n.kind!=="measure"||o.has(n.measureId)))for(const m of r){const u=m.values[l];if((u==null?void 0:u.kind)==="value"&&!he(u.value)){o.add(n.measureId);return}}});const s={...t.measureFormats};for(const{id:n}of a){const l=o.has(n)?$:0;s[n]={type:"number",minimumFractionDigits:l,maximumFractionDigits:l,useGrouping:!0}}return{...t,measureFormats:s}}function E(e){return y.matrixPathKey(e.slice(0,-1))}function be(e,r){return r.length>e.length&&y.matrixPathKey(r.slice(0,e.length))===y.matrixPathKey(e)}function U(e){return e.map((r,t)=>{if(t===0||r.kind!=="layout")return!1;const a=e[t-1];if(a.kind!=="layout")return!1;if(r.role!=="member"||be(a.rowPath,r.rowPath))return!0;const o=e[t-2];return a.role==="member"&&(!o||o.kind!=="layout"||o.role!=="member"||E(o.rowPath)!==E(a.rowPath))&&r.rowPath.length===a.rowPath.length&&E(r.rowPath)===E(a.rowPath)})}const j="pdf-group-continuation";function K(e){if(!e.previousRow||e.row.isSubtotal===!0||e.row.isGrandTotal===!0||e.previousRow.isSubtotal===!0||e.previousRow.isGrandTotal===!0)return!0;for(let r=0;r<=e.levelIndex;r++)if(e.getValue(e.row,r)!==e.getValue(e.previousRow,r))return!0;return!1}function q(e,r,t){const a=w.prepareMatrixFormatting(e.descriptors,r.presentation,t),o=e.columns.map(i=>{var c;return i.kind==="measure"&&((c=a.measureSemantics.get(i.measureId))==null?void 0:c.isNumeric)===!0}),s=i=>w.matrixMemberLabel([i],a.levels),n=(i,c,f)=>w.matrixAxisLabel(i,c,r.presentation.totals[f],a.levels),l=e.columns.map(i=>{if(i.kind!=="measure")return i.label;const c=i.columnPath.map(s);return i.role!=="member"&&c.push(n(i.columnPath,i.role,"columns")),[...c,i.label].join(" / ")}),m=Math.min(r.spec.columns.length,Math.max(0,...e.columns.map(i=>i.kind==="measure"?i.columnPath.length+(i.role!=="member"?1:0):0))),u=Array.from({length:m+1},(i,c)=>e.columns.map(f=>c===m?f.label:f.kind!=="measure"?"":c<f.columnPath.length?s(f.columnPath[c]):c===f.columnPath.length&&f.role!=="member"?n(f.columnPath,f.role,"columns"):"")),d=(i,c)=>w.matrixLevelLabels({path:i.rowPath,role:i.kind==="layout"?i.role:"member",levelCount:Math.max(1,r.spec.rows.length),repeatLabels:r.presentation.layout.kind!=="tabular"||r.presentation.layout.repeatLabels,previousPath:c==null?void 0:c.rowPath}),g=(i,c)=>{if(i.kind!=="layout")throw new Error("Layout presentation requires layout rows.");if(i.values.length!==e.columns.length)throw new Error("Matrix row does not match its frozen layout.");const f=d(i,c);return e.columns.map((b,p)=>{if(b.kind==="hierarchy")return`${" ".repeat(Math.max(0,i.rowPath.length-1))}${n(i.rowPath,i.role,"rows")}`;if(b.kind==="level"){const x=r.spec.rows.findIndex(re=>re.id===b.levelId),A=f[x];return A!=null&&A.visible?A.total?n(i.rowPath,i.role,"rows"):w.matrixMemberLabel(A.path,a.levels):""}const T=i.values[p],v=a.measures.get(b.measureId);if(T.kind==="value"&&!v)throw new Error("Matrix value is missing its measure descriptor.");return w.matrixCellText(T,v,r.presentation.absence)})},h=(i,c)=>g(i,c).map((f,b)=>{var x;const p=i.values[b],T=e.columns[b];return T.kind==="measure"&&!((x=a.measureSemantics.get(T.measureId))!=null&&x.hasTextAffixes)&&p.kind==="value"&&(typeof p.value=="number"||y.isExactNumericValue(p.value))?f:C(f)});return{headers:l,headerBands:u,numericColumns:o,row:(i,c)=>g(i,c),continuedColumns:(i,c)=>{const f=p=>(p==null?void 0:p.kind)==="layout"&&p.role==="member";if(!f(i)||!f(c))return[];const b=d(i,c);return e.columns.flatMap((p,T)=>{var x;if(p.kind!=="level")return[];const v=r.spec.rows.findIndex(A=>A.id===p.levelId);return v<i.rowPath.length&&((x=b[v])==null?void 0:x.visible)===!1?[T]:[]})},csvRow:i=>h(i),csvRows:i=>i.map((c,f)=>h(c,i[f-1]))}}function we(e){return e.columns.map(r=>C(r.label))}function ye(e){if(e.kind!=="flat")throw new Error("Raw Matrix CSV requires flat rows.");return e.values.map(r=>r.kind!=="value"?null:y.isExactNumericValue(r.value)?r.value.value:typeof r.value=="string"?C(r.value):typeof r.value=="boolean"?String(r.value):r.value)}function H(e){const r=q(e.layout,e.request,e.report),t=e.layout.columns.map((n,l)=>({index:l,columnId:`matrix:${l}`,label:r.headers[l],isNumeric:r.numericColumns[l]})),a=(n,l,m)=>({text:n,colspan:1,rowspan:1,columnId:t[l].columnId,isHeader:m,isNumeric:t[l].isNumeric,className:t[l].isNumeric?"numeric":e.layout.columns[l].kind==="hierarchy"?"matrix-hierarchy":""}),o=[],s=e.layout.columns.findIndex(n=>n.kind==="measure");e.request.spec.columns.length&&s>=0&&o.push({repeatHeader:!0,headerType:"pivot-axis",headerRowIndex:0,cells:[...s?[{...a("",0,!0),colspan:s}]:[],{...a(e.request.spec.columns.map(n=>O.getMatrixLevelLabel(n,e.request.presentation)).join(" / "),s,!0),colspan:e.layout.columns.length-s,isNumeric:!1,className:""}]});for(const[n,l]of r.headerBands.entries())o.push({repeatHeader:!0,headerType:n===r.headerBands.length-1?"metrics":"pivot-level",headerRowIndex:o.length,cells:l.map((m,u)=>a(m,u,!0))});return{headers:o,rows:e.rows.map((n,l)=>{const m=new Set(r.continuedColumns(n,e.rows[l-1]));return{index:l,type:n.kind==="layout"&&n.role!=="member"?"subtotal":"data",subtotalLevel:String(n.rowPath.length),cells:r.row(n,e.rows[l-1]).map((u,d)=>m.has(d)?{...a(u,d,!1),className:j}:a(u,d,!1))}}),grandTotal:null,metadata:{tableType:"pivot",totalRows:e.rows.length,totalColumns:t.length,rowLevels:e.layout.columns.filter(n=>n.kind!=="measure").length,pivotLevels:e.request.spec.columns.length,hasGrandTotal:!1,columnOrder:t.map(n=>n.columnId),columns:t}}}function Te(e,r,t){const{levels:a}=w.prepareMatrixFormatting(e.descriptors,r.presentation,t),o=r.spec.columns.length>0,s=[],n=[],l=e.columns.map((u,d)=>{if(u.kind!=="measure")return null;const g=o?`${u.role}:${y.matrixPathKey(u.columnPath)}`:`measure:${d}`;let h=s.indexOf(g);return h<0&&(h=s.push(g)-1,n.push(o?w.matrixAxisLabel(u.columnPath,u.role,r.presentation.totals.columns,a):u.label)),h}),m=r.spec.columns[r.spec.columns.length-1];return{columnGroups:l,groupLabels:n,groupLevelLabel:m?O.getMatrixLevelLabel(m,r.presentation):"Measures"}}function xe(e){const{layout:r,rows:t,report:a}=e,o={...e.request,presentation:B(r,t,e.request.presentation)},s=H({layout:r,rows:t,request:o,report:a}),n=U(t),l=Te(r,o,a),m={...s,rows:s.rows.map((u,d)=>({...u,keepWithPrevious:n[d]})),metadata:{...s.metadata,...l}};return{request:o,table:m,...l}}class W extends Error{constructor(){super(...arguments);M(this,"code",L.PDF_SAFETY_LIMIT_EXCEEDED)}}function F(e){if(!e||typeof e!="object")return;const{error:r,message:t,detail:a}=e;for(const o of[r,t,a])if(typeof o=="string"&&o.trim())return o.trim()}async function Y(e){const r=`PDF request failed: ${e.status} ${e.statusText}`.trim(),t=e.headers.get("content-type")||"";try{if(t.includes("application/json")){const o=await e.json(),s=typeof o.code=="string"?o.code:typeof o.errorCode=="string"?o.errorCode:void 0;return{message:F(o)||r,code:s}}const a=await e.text();if(!a.trim())return{message:r};try{const o=JSON.parse(a),s=typeof o.code=="string"?o.code:typeof o.errorCode=="string"?o.errorCode:void 0;return{message:F(o)||a.trim(),code:s}}catch{return{message:a.trim()}}}catch{return{message:r}}}async function Ae(e){if(!e.token)throw new Error("Missing auth token for PDF export");if(L.getUtf8ByteLength(e.serializedPayload)>L.FAST_PDF_POLICY.maxRequestBytes)throw new Error("Fast-path PDF request exceeds the structured body limit");const r=await(e.fetchImpl??fetch)(e.url,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${e.token}`},body:e.serializedPayload,signal:e.signal});if(!r.ok){const a=await Y(r);throw a.code===L.PDF_SAFETY_LIMIT_EXCEEDED?new W(a.message):new Error(a.message)}const t=await r.json();if(t!=null&&t.error)throw new Error(t.error);if(typeof(t==null?void 0:t.url)!="string"||!t.url.trim())throw new Error("Fast-path PDF response missing download URL");return t}const z="__TOTAL__";function S(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function _(e){return e===z}function ve(e){const r=new Map,t=(e.groupByColumns??[]).map((o,s)=>{var u,d,g;if(!S(o))throw new Error(`Aggregate groupByColumns[${s}] is invalid`);const n=typeof o.id=="string"&&o.id.length>0?o.id:void 0,l=n?(g=(d=(u=e.columnKeyMap)==null?void 0:u.byRole)==null?void 0:d.groupby)==null?void 0:g[n]:void 0,m=(l==null?void 0:l.outputKey)||(l==null?void 0:l.rawKey)||(typeof o.alias=="string"&&o.alias.length>0?o.alias:typeof o.name=="string"&&o.name.length>0?o.name:void 0);if(!m)throw new Error(`Aggregate groupByColumns[${s}] has no output key`);return[n,o.alias,o.name,m].forEach(h=>{typeof h=="string"&&h.length>0&&r.set(h,m)}),m}),a=(e.rowAggregates??[]).flatMap(o=>!S(o)||typeof o.function!="string"||typeof o.groupLevel!="string"?[]:[{function:o.function,groupLevel:o.groupLevel==="ALL"?"ALL":r.get(o.groupLevel)||o.groupLevel,...typeof o.label=="string"?{label:o.label}:{}}]);return{groupColumnKeys:t,rowAggregates:a}}function Z(e){return e==="SUM"?"Total":e.charAt(0).toUpperCase()+e.slice(1).toLowerCase()}function J(e){var t;if(e.customLabel)return e.customLabel;const r=Z(e.aggregateFunction);if(e.levelValue!==void 0&&!_(e.levelValue)){if(e.levelValue===null){const o=(t=e.formatValue)==null?void 0:t.call(e,null);return o?`Subtotal ${o}`:`Subtotal ${r}`}const a=e.formatValue?e.formatValue(e.levelValue):String(e.levelValue);if(a)return`Subtotal (${a})`}return`Subtotal ${r}`}function Q(e,r){return r||`Grand ${Z(e)}`}function Pe(e){const r=e.context.groupColumnKeys.indexOf(e.columnKey);if(r<0)throw new Error(`Aggregate group column "${e.columnKey}" is unknown`);return K({row:e.row,previousRow:e.previousRow,levelIndex:r,getValue:(t,a)=>t[e.context.groupColumnKeys[a]]})}function I(e){var a,o;const r=e.context.groupColumnKeys,t=typeof e.row.aggregate=="string"?e.row.aggregate:"SUM";if(e.row.isGrandTotal===!0){const s=(a=e.context.rowAggregates.find(n=>n.groupLevel==="ALL"))==null?void 0:a.label;return{kind:"grand-total",cells:r.map((n,l)=>({columnKey:n,text:l===0?Q(t,s):"",placement:l===0?"label":"empty",colSpan:l===0?r.length:1}))}}if(e.row.isSubtotal===!0){if(typeof e.row.subtotalLevel!="string")throw new Error("Aggregate subtotal row is missing subtotalLevel");const s=r.indexOf(e.row.subtotalLevel);if(s<0)throw new Error(`Aggregate subtotal level "${e.row.subtotalLevel}" has no group column`);const n=S(e.row.subtotalContext)?e.row.subtotalContext:void 0,l=S(n==null?void 0:n.groupByValues)?n.groupByValues:{},m=(o=e.context.rowAggregates.find(u=>u.groupLevel===e.row.subtotalLevel&&u.function===t))==null?void 0:o.label;return{kind:"subtotal",cells:r.map((u,d)=>{if(d>s)return{columnKey:u,text:"",placement:"empty",colSpan:1};if(d<s){const g=e.row[u];return{columnKey:u,text:g===void 0||_(g)?"":e.formatValue(g,u),placement:"value",colSpan:1}}return{columnKey:u,text:J({aggregateFunction:t,customLabel:m,levelValue:l[u],formatValue:g=>e.formatLabelValue?e.formatLabelValue(g,u):String(e.formatValue(g,u)??"")}),placement:"label",colSpan:r.length-s}})}}return{kind:"data",cells:r.map(s=>{const n=e.row[s];return{columnKey:s,text:n===void 0||_(n)?"":e.formatValue(n,s),placement:"value",colSpan:1}})}}function Ee(e){const r=I(e).cells.find(t=>t.columnKey===e.columnKey);if(!r)throw new Error(`Aggregate group column "${e.columnKey}" is unknown`);return r.text}function Le(e){return I(e).cells.map(r=>r.text)}class ee extends Error{constructor(t,a){super(`${t}: ${a}`);M(this,"deliveryBlocking",!0);this.code=t,this.name="PivotHeaderPresentationError"}}function Se(e){var o;const r=e.mode??"formatted",t=e.members.map(s=>{var l;if(r==="canonical"||!s.temporalBucket)return s.value===null?"":String(s.value);const n=(l=e.resolveTemporalFormat)==null?void 0:l.call(e,s.fieldId);if(!n)throw new ee("missing_resolved_temporal_format",`Missing resolved temporal presentation for pivot field "${s.fieldId}"`);return ne.formatTemporalBucket({value:s.value,metadata:s.temporalBucket,format:n})}),a=((o=e.metricLabel)==null?void 0:o.trim())||void 0;return{memberLabels:t,...a?{metricLabel:a}:{},flattenedLabel:[...t,...a?[a]:[]].join(" / ")}}exports.AGGREGATE_TOTAL_MEMBER_MARKER=z;exports.DIRECT_CSV_EXPORT_MAX_ROWS=X;exports.FULL_DATASET_CSV_EXPORT_MAX_ROWS=ue;exports.MATRIX_EXPORT_MAX_ARTIFACT_BYTES=fe;exports.MATRIX_EXPORT_MAX_CELLS=ce;exports.MATRIX_EXPORT_MAX_ENCODED_BYTES=me;exports.MATRIX_PRINT_DEFAULT_DECIMALS=$;exports.MATRIX_PRINT_ORGANIZATION_DEFAULTS=de;exports.PDF_GROUP_CONTINUATION_CLASS=j;exports.PdfSafetyLimitError=W;exports.PivotHeaderPresentationError=ee;exports.applyMatrixPrintNumberDefaults=B;exports.applyMatrixPrintOrganization=pe;exports.arrayToCSV=G;exports.arrayToCSVRow=N;exports.buildMatrixPrintTable=xe;exports.buildMatrixTableStructure=H;exports.escapeCSVValue=D;exports.formatAggregateGrandTotalLabel=Q;exports.formatAggregateGroupCell=Ee;exports.formatAggregateGroupRow=Le;exports.formatAggregateSubtotalLabel=J;exports.formatMetricComparison=le;exports.isAggregateTotalMemberMarker=_;exports.matrixFlatCsvHeaders=we;exports.matrixFlatCsvRow=ye;exports.objectsToCSV=ie;exports.planMatrixKeepWithPrevious=U;exports.prepareMatrixExportPresentation=q;exports.presentAggregateGroupRow=I;exports.presentPivotHeader=Se;exports.protectCSVText=C;exports.readPdfErrorResponse=Y;exports.requestStructuredPdf=Ae;exports.requiresChunkedCsvExport=ge;exports.resolveAggregateTablePresentationContext=ve;exports.shouldPresentAggregateGroupValue=Pe;exports.shouldPresentGroupedTableValue=K;
5
+ `,includeHeaders:o=!0,columns:s}=r,n=s||Object.keys(e[0]),l=[];o&&l.push(n);for(const m of e){const u=n.map(d=>{const g=m[d];return g==null?"":String(g)});l.push(u)}return G(l,{delimiter:t,lineEnding:a})}const X=1e4,ue=1e6,ce=5e6,me=1024**3,fe=1024**3;function ge(e){return e>X}const de={rowLabels:"tabular",subtotals:"after"};function pe(e,r){const t=r.rowLabels==="outline"?{kind:"compact"}:e.layout.kind==="tabular"?e.layout:{kind:"tabular",repeatLabels:!1},a=e.totals.rows;return{...e,layout:t,totals:{...e.totals,rows:{...a,levels:Object.fromEntries(Object.entries(a.levels).map(([o,s])=>[o,{...s,position:r.subtotals}]))}}}}const $=2;function he(e){return typeof e=="number"?Number.isInteger(e):y.isExactNumericValue(e)?!e.value.includes("."):!0}function B(e,r,t){const a=e.descriptors.measures.filter(n=>t.measureFormats[n.id]===void 0&&n.semanticFormat===void 0&&y.normalizeAnalyticsCatalogDataType(n.column.dataType)==="number");if(a.length===0)return t;const o=new Set;e.columns.forEach((n,l)=>{if(!(n.kind!=="measure"||o.has(n.measureId)))for(const m of r){const u=m.values[l];if((u==null?void 0:u.kind)==="value"&&!he(u.value)){o.add(n.measureId);return}}});const s={...t.measureFormats};for(const{id:n}of a){const l=o.has(n)?$:0;s[n]={type:"number",minimumFractionDigits:l,maximumFractionDigits:l,useGrouping:!0}}return{...t,measureFormats:s}}function E(e){return y.matrixPathKey(e.slice(0,-1))}function be(e,r){return r.length>e.length&&y.matrixPathKey(r.slice(0,e.length))===y.matrixPathKey(e)}function U(e){return e.map((r,t)=>{if(t===0||r.kind!=="layout")return!1;const a=e[t-1];if(a.kind!=="layout")return!1;if(r.role!=="member"||be(a.rowPath,r.rowPath))return!0;const o=e[t-2];return a.role==="member"&&(!o||o.kind!=="layout"||o.role!=="member"||E(o.rowPath)!==E(a.rowPath))&&r.rowPath.length===a.rowPath.length&&E(r.rowPath)===E(a.rowPath)})}const j="pdf-group-continuation";function K(e){if(!e.previousRow||e.row.isSubtotal===!0||e.row.isGrandTotal===!0||e.previousRow.isSubtotal===!0||e.previousRow.isGrandTotal===!0)return!0;for(let r=0;r<=e.levelIndex;r++)if(e.getValue(e.row,r)!==e.getValue(e.previousRow,r))return!0;return!1}function q(e,r,t){const a=w.prepareMatrixFormatting(e.descriptors,r.presentation,t),o=e.columns.map(i=>{var c;return i.kind==="measure"&&((c=a.measureSemantics.get(i.measureId))==null?void 0:c.isNumeric)===!0}),s=i=>w.matrixMemberLabel([i],a.levels),n=(i,c,f)=>w.matrixAxisLabel(i,c,r.presentation.totals[f],a.levels),l=e.columns.map(i=>{if(i.kind!=="measure")return i.label;const c=i.columnPath.map(s);return i.role!=="member"&&c.push(n(i.columnPath,i.role,"columns")),[...c,i.label].join(" / ")}),m=Math.min(r.spec.columns.length,Math.max(0,...e.columns.map(i=>i.kind==="measure"?i.columnPath.length+(i.role!=="member"?1:0):0))),u=Array.from({length:m+1},(i,c)=>e.columns.map(f=>c===m?f.label:f.kind!=="measure"?"":c<f.columnPath.length?s(f.columnPath[c]):c===f.columnPath.length&&f.role!=="member"?n(f.columnPath,f.role,"columns"):"")),d=(i,c)=>w.matrixLevelLabels({path:i.rowPath,role:i.kind==="layout"?i.role:"member",levelCount:Math.max(1,r.spec.rows.length),repeatLabels:r.presentation.layout.kind!=="tabular"||r.presentation.layout.repeatLabels,previousPath:c==null?void 0:c.rowPath}),g=(i,c)=>{if(i.kind!=="layout")throw new Error("Layout presentation requires layout rows.");if(i.values.length!==e.columns.length)throw new Error("Matrix row does not match its frozen layout.");const f=d(i,c);return e.columns.map((b,p)=>{if(b.kind==="hierarchy")return`${" ".repeat(Math.max(0,i.rowPath.length-1))}${n(i.rowPath,i.role,"rows")}`;if(b.kind==="level"){const x=r.spec.rows.findIndex(re=>re.id===b.levelId),A=f[x];return A!=null&&A.visible?A.total?n(i.rowPath,i.role,"rows"):w.matrixMemberLabel(A.path,a.levels):""}const T=i.values[p],P=a.measures.get(b.measureId);if(T.kind==="value"&&!P)throw new Error("Matrix value is missing its measure descriptor.");return w.matrixCellText(T,P,r.presentation.absence)})},h=(i,c)=>g(i,c).map((f,b)=>{var x;const p=i.values[b],T=e.columns[b];return T.kind==="measure"&&!((x=a.measureSemantics.get(T.measureId))!=null&&x.hasTextAffixes)&&p.kind==="value"&&(typeof p.value=="number"||y.isExactNumericValue(p.value))?f:C(f)});return{headers:l,headerBands:u,numericColumns:o,row:(i,c)=>g(i,c),continuedColumns:(i,c)=>{const f=p=>(p==null?void 0:p.kind)==="layout"&&p.role==="member";if(!f(i)||!f(c))return[];const b=d(i,c);return e.columns.flatMap((p,T)=>{var x;if(p.kind!=="level")return[];const P=r.spec.rows.findIndex(A=>A.id===p.levelId);return P<i.rowPath.length&&((x=b[P])==null?void 0:x.visible)===!1?[T]:[]})},csvRow:i=>h(i),csvRows:i=>i.map((c,f)=>h(c,i[f-1]))}}function we(e){return e.columns.map(r=>C(r.label))}function ye(e){if(e.kind!=="flat")throw new Error("Raw Matrix CSV requires flat rows.");return e.values.map(r=>r.kind!=="value"?null:y.isExactNumericValue(r.value)?r.value.value:typeof r.value=="string"?C(r.value):typeof r.value=="boolean"?String(r.value):r.value)}function H(e){const r=q(e.layout,e.request,e.report),t=e.layout.columns.map((n,l)=>({index:l,columnId:`matrix:${l}`,label:r.headers[l],isNumeric:r.numericColumns[l]})),a=(n,l,m)=>({text:n,colspan:1,rowspan:1,columnId:t[l].columnId,isHeader:m,isNumeric:t[l].isNumeric,className:t[l].isNumeric?"numeric":e.layout.columns[l].kind==="hierarchy"?"matrix-hierarchy":""}),o=[],s=e.layout.columns.findIndex(n=>n.kind==="measure");e.request.spec.columns.length&&s>=0&&o.push({repeatHeader:!0,headerType:"pivot-axis",headerRowIndex:0,cells:[...s?[{...a("",0,!0),colspan:s}]:[],{...a(e.request.spec.columns.map(n=>O.getMatrixLevelLabel(n,e.request.presentation)).join(" / "),s,!0),colspan:e.layout.columns.length-s,isNumeric:!1,className:""}]});for(const[n,l]of r.headerBands.entries())o.push({repeatHeader:!0,headerType:n===r.headerBands.length-1?"metrics":"pivot-level",headerRowIndex:o.length,cells:l.map((m,u)=>a(m,u,!0))});return{headers:o,rows:e.rows.map((n,l)=>{const m=new Set(r.continuedColumns(n,e.rows[l-1]));return{index:l,type:n.kind==="layout"&&n.role!=="member"?"subtotal":"data",subtotalLevel:String(n.rowPath.length),cells:r.row(n,e.rows[l-1]).map((u,d)=>m.has(d)?{...a(u,d,!1),className:j}:a(u,d,!1))}}),grandTotal:null,metadata:{tableType:"pivot",totalRows:e.rows.length,totalColumns:t.length,rowLevels:e.layout.columns.filter(n=>n.kind!=="measure").length,pivotLevels:e.request.spec.columns.length,hasGrandTotal:!1,columnOrder:t.map(n=>n.columnId),columns:t}}}function Te(e,r,t){const{levels:a}=w.prepareMatrixFormatting(e.descriptors,r.presentation,t),o=r.spec.columns.length>0,s=[],n=[],l=e.columns.map((u,d)=>{if(u.kind!=="measure")return null;const g=o?`${u.role}:${y.matrixPathKey(u.columnPath)}`:`measure:${d}`;let h=s.indexOf(g);return h<0&&(h=s.push(g)-1,n.push(o?w.matrixAxisLabel(u.columnPath,u.role,r.presentation.totals.columns,a):u.label)),h}),m=r.spec.columns[r.spec.columns.length-1];return{columnGroups:l,groupLabels:n,groupLevelLabel:m?O.getMatrixLevelLabel(m,r.presentation):"Measures"}}function xe(e){const{layout:r,rows:t,report:a}=e,o={...e.request,presentation:B(r,t,e.request.presentation)},s=H({layout:r,rows:t,request:o,report:a}),n=U(t),l=Te(r,o,a),m={...s,rows:s.rows.map((u,d)=>({...u,keepWithPrevious:n[d]})),metadata:{...s.metadata,...l}};return{request:o,table:m,...l}}class W extends Error{constructor(){super(...arguments);M(this,"code",L.PDF_SAFETY_LIMIT_EXCEEDED)}}function F(e){if(!e||typeof e!="object")return;const{error:r,message:t,detail:a}=e;for(const o of[r,t,a])if(typeof o=="string"&&o.trim())return o.trim()}async function Y(e){const r=`PDF request failed: ${e.status} ${e.statusText}`.trim(),t=e.headers.get("content-type")||"";try{if(t.includes("application/json")){const o=await e.json(),s=typeof o.code=="string"?o.code:typeof o.errorCode=="string"?o.errorCode:void 0;return{message:F(o)||r,code:s}}const a=await e.text();if(!a.trim())return{message:r};try{const o=JSON.parse(a),s=typeof o.code=="string"?o.code:typeof o.errorCode=="string"?o.errorCode:void 0;return{message:F(o)||a.trim(),code:s}}catch{return{message:a.trim()}}}catch{return{message:r}}}async function Ae(e){if(!e.token)throw new Error("Missing auth token for PDF export");if(L.getUtf8ByteLength(e.serializedPayload)>L.FAST_PDF_POLICY.maxRequestBytes)throw new Error("Fast-path PDF request exceeds the structured body limit");const r=await(e.fetchImpl??fetch)(e.url,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${e.token}`},body:e.serializedPayload,signal:e.signal});if(!r.ok){const a=await Y(r);throw a.code===L.PDF_SAFETY_LIMIT_EXCEEDED?new W(a.message):new Error(a.message)}const t=await r.json();if(t!=null&&t.error)throw new Error(t.error);if(typeof(t==null?void 0:t.url)!="string"||!t.url.trim())throw new Error("Fast-path PDF response missing download URL");return t}const z="__TOTAL__";function S(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function _(e){return e===z}function Pe(e){const r=new Map,t=(e.groupByColumns??[]).map((o,s)=>{var u,d,g;if(!S(o))throw new Error(`Aggregate groupByColumns[${s}] is invalid`);const n=typeof o.id=="string"&&o.id.length>0?o.id:void 0,l=n?(g=(d=(u=e.columnKeyMap)==null?void 0:u.byRole)==null?void 0:d.groupby)==null?void 0:g[n]:void 0,m=(l==null?void 0:l.outputKey)||(l==null?void 0:l.rawKey)||(typeof o.alias=="string"&&o.alias.length>0?o.alias:typeof o.name=="string"&&o.name.length>0?o.name:void 0);if(!m)throw new Error(`Aggregate groupByColumns[${s}] has no output key`);return[n,o.alias,o.name,m].forEach(h=>{typeof h=="string"&&h.length>0&&r.set(h,m)}),m}),a=(e.rowAggregates??[]).flatMap(o=>!S(o)||typeof o.function!="string"||typeof o.groupLevel!="string"?[]:[{function:o.function,groupLevel:o.groupLevel==="ALL"?"ALL":r.get(o.groupLevel)||o.groupLevel,...typeof o.label=="string"?{label:o.label}:{}}]);return{groupColumnKeys:t,rowAggregates:a}}function Z(e){return e==="SUM"?"Total":e.charAt(0).toUpperCase()+e.slice(1).toLowerCase()}function J(e){var t;if(e.customLabel)return e.customLabel;const r=Z(e.aggregateFunction);if(e.levelValue!==void 0&&!_(e.levelValue)){if(e.levelValue===null){const o=(t=e.formatValue)==null?void 0:t.call(e,null);return o?`Subtotal ${o}`:`Subtotal ${r}`}const a=e.formatValue?e.formatValue(e.levelValue):String(e.levelValue);if(a)return`Subtotal (${a})`}return`Subtotal ${r}`}function Q(e,r){return r||`Grand ${Z(e)}`}function ve(e){const r=e.context.groupColumnKeys.indexOf(e.columnKey);if(r<0)throw new Error(`Aggregate group column "${e.columnKey}" is unknown`);return K({row:e.row,previousRow:e.previousRow,levelIndex:r,getValue:(t,a)=>t[e.context.groupColumnKeys[a]]})}function I(e){var a,o;const r=e.context.groupColumnKeys,t=typeof e.row.aggregate=="string"?e.row.aggregate:"SUM";if(e.row.isGrandTotal===!0){const s=(a=e.context.rowAggregates.find(n=>n.groupLevel==="ALL"))==null?void 0:a.label;return{kind:"grand-total",cells:r.map((n,l)=>({columnKey:n,text:l===0?Q(t,s):"",placement:l===0?"label":"empty",colSpan:l===0?r.length:1}))}}if(e.row.isSubtotal===!0){if(typeof e.row.subtotalLevel!="string")throw new Error("Aggregate subtotal row is missing subtotalLevel");const s=r.indexOf(e.row.subtotalLevel);if(s<0)throw new Error(`Aggregate subtotal level "${e.row.subtotalLevel}" has no group column`);const n=S(e.row.subtotalContext)?e.row.subtotalContext:void 0,l=S(n==null?void 0:n.groupByValues)?n.groupByValues:{},m=(o=e.context.rowAggregates.find(u=>u.groupLevel===e.row.subtotalLevel&&u.function===t))==null?void 0:o.label;return{kind:"subtotal",cells:r.map((u,d)=>{if(d>s)return{columnKey:u,text:"",placement:"empty",colSpan:1};if(d<s){const g=e.row[u];return{columnKey:u,text:g===void 0||_(g)?"":e.formatValue(g,u),placement:"value",colSpan:1}}return{columnKey:u,text:J({aggregateFunction:t,customLabel:m,levelValue:l[u],formatValue:g=>e.formatLabelValue?e.formatLabelValue(g,u):String(e.formatValue(g,u)??"")}),placement:"label",colSpan:r.length-s}})}}return{kind:"data",cells:r.map(s=>{const n=e.row[s];return{columnKey:s,text:n===void 0||_(n)?"":e.formatValue(n,s),placement:"value",colSpan:1}})}}function Ee(e){const r=I(e).cells.find(t=>t.columnKey===e.columnKey);if(!r)throw new Error(`Aggregate group column "${e.columnKey}" is unknown`);return r.text}function Le(e){return I(e).cells.map(r=>r.text)}class ee extends Error{constructor(t,a){super(`${t}: ${a}`);M(this,"deliveryBlocking",!0);this.code=t,this.name="PivotHeaderPresentationError"}}function Se(e){var o;const r=e.mode??"formatted",t=e.members.map(s=>{var l;if(r==="canonical"||!s.temporalBucket)return s.value===null?"":String(s.value);const n=(l=e.resolveTemporalFormat)==null?void 0:l.call(e,s.fieldId);if(!n)throw new ee("missing_resolved_temporal_format",`Missing resolved temporal presentation for pivot field "${s.fieldId}"`);return ne.formatTemporalBucket({value:s.value,metadata:s.temporalBucket,format:n})}),a=((o=e.metricLabel)==null?void 0:o.trim())||void 0;return{memberLabels:t,...a?{metricLabel:a}:{},flattenedLabel:[...t,...a?[a]:[]].join(" / ")}}exports.AGGREGATE_TOTAL_MEMBER_MARKER=z;exports.DIRECT_CSV_EXPORT_MAX_ROWS=X;exports.FULL_DATASET_CSV_EXPORT_MAX_ROWS=ue;exports.MATRIX_EXPORT_MAX_ARTIFACT_BYTES=fe;exports.MATRIX_EXPORT_MAX_CELLS=ce;exports.MATRIX_EXPORT_MAX_ENCODED_BYTES=me;exports.MATRIX_PRINT_DEFAULT_DECIMALS=$;exports.MATRIX_PRINT_ORGANIZATION_DEFAULTS=de;exports.PDF_GROUP_CONTINUATION_CLASS=j;exports.PdfSafetyLimitError=W;exports.PivotHeaderPresentationError=ee;exports.applyMatrixPrintNumberDefaults=B;exports.applyMatrixPrintOrganization=pe;exports.arrayToCSV=G;exports.arrayToCSVRow=N;exports.buildMatrixPrintTable=xe;exports.buildMatrixTableStructure=H;exports.escapeCSVValue=D;exports.formatAggregateGrandTotalLabel=Q;exports.formatAggregateGroupCell=Ee;exports.formatAggregateGroupRow=Le;exports.formatAggregateSubtotalLabel=J;exports.formatMetricComparison=le;exports.isAggregateTotalMemberMarker=_;exports.matrixFlatCsvHeaders=we;exports.matrixFlatCsvRow=ye;exports.objectsToCSV=ie;exports.planMatrixKeepWithPrevious=U;exports.prepareMatrixExportPresentation=q;exports.presentAggregateGroupRow=I;exports.presentPivotHeader=Se;exports.protectCSVText=C;exports.readPdfErrorResponse=Y;exports.requestStructuredPdf=Ae;exports.requiresChunkedCsvExport=ge;exports.resolveAggregateTablePresentationContext=Pe;exports.shouldPresentAggregateGroupValue=ve;exports.shouldPresentGroupedTableValue=K;
@@ -1,10 +1,10 @@
1
1
  var E = Object.defineProperty;
2
2
  var _ = (e, o, t) => o in e ? E(e, o, { enumerable: !0, configurable: !0, writable: !0, value: t }) : e[o] = t;
3
3
  var f = (e, o, t) => _(e, typeof o != "symbol" ? o + "" : o, t);
4
- import { k as K, m as S } from "./raw-temporal-BqOfk-xN.js";
4
+ import { p as K, i as S } from "./raw-temporal-7bFbXd2a.js";
5
5
  import { b as F } from "./report-runtime-context-CxIoGyNM.js";
6
- import { d as u, b as j } from "./temporal-bucket-DlFuhCnT.js";
7
- import { i as M } from "./index-C8w91oj4.js";
6
+ import { k as j } from "./numeric-presentation-VhMUHfrJ.js";
7
+ import { i as u, d as M } from "./temporal-bucket-PcLFSYWX.js";
8
8
  import { a7 as P } from "./validators-CsdOtZI6.js";
9
9
  import "./matrix-operation-contract-D32U2CSw.js";
10
10
  import { a as T } from "./metric-comparison-BphoJ9bq.js";
@@ -207,7 +207,7 @@ function G(e) {
207
207
  let n;
208
208
  switch (t.format.type) {
209
209
  case "temporal_bucket": {
210
- const l = j(t.format);
210
+ const l = M(t.format);
211
211
  if (!l.ok)
212
212
  throw new Error(
213
213
  `${r}.format is invalid: ${((m = l.issues[0]) == null ? void 0 : m.message) ?? "invalid value"}`
@@ -223,14 +223,14 @@ function G(e) {
223
223
  n = {
224
224
  scope: i,
225
225
  target: L(t.target, `${r}.target`),
226
- format: S(t.format)
226
+ format: K(t.format)
227
227
  };
228
228
  break;
229
229
  case "number":
230
230
  case "currency":
231
231
  case "percent":
232
232
  case "scientific": {
233
- const l = K(t.format);
233
+ const l = j(t.format);
234
234
  if (!l.ok)
235
235
  throw new Error(
236
236
  `${r}.format is invalid: ${((p = l.issues[0]) == null ? void 0 : p.message) ?? "invalid value"}`
@@ -303,7 +303,7 @@ function ye(e) {
303
303
  }
304
304
  function ve(e) {
305
305
  const o = Y(e);
306
- return M(o) ? o : void 0;
306
+ return S(o) ? o : void 0;
307
307
  }
308
308
  function Y(e) {
309
309
  const o = e.snapshot.resolvedFormats.find(
@@ -0,0 +1 @@
1
+ "use strict";var T=Object.defineProperty;var q=(e,o,t)=>o in e?T(e,o,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[o]=t;var f=(e,o,t)=>q(e,typeof o!="symbol"?o+"":o,t);const _=require("./raw-temporal-CYdOOyR5.cjs"),O=require("./report-runtime-context-CzSrCBsu.cjs"),U=require("./numeric-presentation-mY6wJMdB.cjs"),u=require("./temporal-bucket-4YEPEKlJ.cjs"),B=require("./validators-DFeDcdpA.cjs");require("./matrix-operation-contract-0RxoU_M3.cjs");const N=require("./metric-comparison-CUmltzpz.cjs"),J=require("./temporal-bucket-contract-nTv6gvX5.cjs"),I=require("./pivot-result-identity-gquWljbd.cjs");class b extends Error{constructor(t){super(`invalid_presentation_execution_snapshot: ${t} Resave this report before running it again.`);f(this,"code","invalid_presentation_execution_snapshot");f(this,"deliveryBlocking",!0);this.name="PresentationExecutionSnapshotError"}}class D extends Error{constructor(t){super(`missing_resolved_raw_temporal_format: Column "${t}" has no captured presentation. Resave this report before running it again.`);f(this,"code","missing_resolved_raw_temporal_format");f(this,"deliveryBlocking",!0);this.name="MissingResolvedRawTemporalFormatError"}}function v(e,o,t){const n=new Set(o),r=Object.keys(e).find(i=>!n.has(i));if(r)throw new Error(`${t} contains unknown property "${r}"`)}function S(e,o="scope"){if(!u.isPlainJsonRecord(e))throw new Error(`${o} must be an object`);v(e,["dashboardId","cardId","attachmentIndex"],o);const t=typeof e.dashboardId=="string"?e.dashboardId.trim():"";if(!t)throw new Error(`${o}.dashboardId is required`);const n=typeof e.cardId=="string"?e.cardId.trim():void 0;if(e.cardId!==void 0&&!n)throw new Error(`${o}.cardId must be a non-empty string`);const r=e.attachmentIndex;if(r!==void 0&&(typeof r!="number"||!Number.isInteger(r)||r<0))throw new Error(`${o}.attachmentIndex must be a non-negative integer`);return{dashboardId:t,...n?{cardId:n}:{},...typeof r=="number"?{attachmentIndex:r}:{}}}function y(e,o,t,n){if(e.kind!==o)return;v(e,["kind",t],n);const r=typeof e[t]=="string"?e[t].trim():"";if(!r)throw new Error(`${n}.${t} is required`);return r}function k(e,o){if(!u.isPlainJsonRecord(e))throw new Error(`${o} must be an object`);const t=y(e,"metric","metricId",o);if(t)return{kind:"metric",metricId:t};const n=y(e,"column","columnKey",o);if(n)return{kind:"column",columnKey:n};const r=y(e,"matrix_measure","measureId",o);if(r)return{kind:"matrix_measure",measureId:r};throw new Error(`${o} is not a valid numeric presentation target`)}const z=["type","inputUnit","outputStyle","largestUnit","smallestUnit","maxUnits","prefix","suffix","negativeStyle"];function L(e){return e==="millisecond"||e==="second"||e==="minute"||e==="hour"||e==="day"}function V(e,o){v(e,z,o);for(const i of["inputUnit","largestUnit","smallestUnit"])if(e[i]!==void 0&&!L(e[i]))throw new Error(`${o}.${i} must be a duration unit`);const t=e.outputStyle;if(t!==void 0&&t!=="compact"&&t!=="digital"&&t!=="long")throw new Error(`${o}.outputStyle must be compact, digital, or long`);const n=e.maxUnits;if(n!==void 0&&(typeof n!="number"||!Number.isInteger(n)||n<0||n>10))throw new Error(`${o}.maxUnits must be an integer from 0 to 10`);for(const i of["prefix","suffix"])if(e[i]!==void 0&&typeof e[i]!="string")throw new Error(`${o}.${i} must be a string`);const r=e.negativeStyle;if(r!==void 0&&r!=="minus"&&r!=="parentheses")throw new Error(`${o}.negativeStyle must be minus or parentheses`);return{type:"duration",...e.inputUnit!==void 0?{inputUnit:e.inputUnit}:{},...t!==void 0?{outputStyle:t}:{},...e.largestUnit!==void 0?{largestUnit:e.largestUnit}:{},...e.smallestUnit!==void 0?{smallestUnit:e.smallestUnit}:{},...n!==void 0?{maxUnits:n}:{},...e.prefix!==void 0?{prefix:e.prefix}:{},...e.suffix!==void 0?{suffix:e.suffix}:{},...r!==void 0?{negativeStyle:r}:{}}}function G(e,o){if(!u.isPlainJsonRecord(e))throw new Error(`${o} must be an object`);if(e.kind==="field"){v(e,["kind","fieldId","role"],o);const r=typeof e.fieldId=="string"?e.fieldId.trim():"";if(!r)throw new Error(`${o}.fieldId is required`);const i=e.role;if(i!==void 0&&i!=="groupby"&&i!=="pivotby")throw new Error(`${o}.role must be groupby or pivotby`);return{kind:"field",fieldId:r,...i?{role:i}:{}}}const t=y(e,"column","columnKey",o);if(t)return{kind:"column",columnKey:t};const n=y(e,"matrix_axis","axisInstanceId",o);if(n)return{kind:"matrix_axis",axisInstanceId:n};throw new Error(`${o} is not a valid temporal bucket presentation target`)}function H(e,o){if(!u.isPlainJsonRecord(e))throw new Error(`${o} must be an object`);const t=y(e,"column","columnKey",o);if(!t)throw new Error(`${o} must identify a column`);return{kind:"column",columnKey:t}}function Y(e){return[e.dashboardId,e.cardId??null,e.attachmentIndex??null]}function h(e){switch(e.kind){case"metric":return[e.kind,e.metricId];case"column":return[e.kind,e.columnKey];case"matrix_measure":return[e.kind,e.measureId];case"field":return[e.kind,e.fieldId,e.role??""];case"matrix_axis":return[e.kind,e.axisInstanceId]}}function g(e,o){return e.dashboardId===o.dashboardId&&e.cardId===o.cardId&&e.attachmentIndex===o.attachmentIndex}function x(e,o){const t=h(e),n=h(o);return t.length===n.length&&t.every((r,i)=>r===n[i])}function F(e){if(!Array.isArray(e))throw new Error("resolvedFormats must be an array");const o=new Set;return e.map((t,n)=>{var m,p;const r=`resolvedFormats.${n}`;if(!u.isPlainJsonRecord(t))throw new Error(`${r} must be an object`);v(t,["scope","target","format"],r);const i=S(t.scope,`${r}.scope`);if(!u.isPlainJsonRecord(t.format))throw new Error(`${r}.format must be an object`);let s;switch(t.format.type){case"temporal_bucket":{const l=u.parseResolvedTemporalBucketFormat(t.format);if(!l.ok)throw new Error(`${r}.format is invalid: ${((m=l.issues[0])==null?void 0:m.message)??"invalid value"}`);s={scope:i,target:G(t.target,`${r}.target`),format:l.value};break}case"raw_temporal":s={scope:i,target:H(t.target,`${r}.target`),format:_.parseResolvedRawTemporalFormat(t.format)};break;case"number":case"currency":case"percent":case"scientific":{const l=U.parseResolvedNumericCanonicalFormat(t.format);if(!l.ok)throw new Error(`${r}.format is invalid: ${((p=l.issues[0])==null?void 0:p.message)??"invalid value"}`);s={scope:i,target:k(t.target,`${r}.target`),format:l.value};break}case"duration":s={scope:i,target:k(t.target,`${r}.target`),format:V(t.format,`${r}.format`)};break;default:throw new Error(`${r}.format.type is unsupported`)}const c=JSON.stringify([...Y(s.scope),...h(s.target)]);if(o.has(c))throw new Error(`${r} duplicates a scoped presentation target`);return o.add(c),s})}function K(e){try{if(!u.isPlainJsonRecord(e))throw new Error("presentation execution snapshot must be an object");if(v(e,["version","reportContext","resolvedFormats"],"presentation execution snapshot"),e.version!==1)throw new Error("presentation execution snapshot version must be 1");const o=O.parseReportRuntimeContext(e.reportContext);if(!o.ok){const t=o.issues[0];throw new Error(`presentation execution snapshot reportContext is invalid: ${t!=null&&t.path&&t.path!=="$"?`${t.path}: `:""}${(t==null?void 0:t.message)??"invalid value"}`)}return{version:1,reportContext:o.value,resolvedFormats:F(e.resolvedFormats)}}catch(o){throw o instanceof b?o:new b(o instanceof Error?o.message:"Snapshot is invalid.")}}function Q(e){return K({version:1,reportContext:e.reportContext,resolvedFormats:[...e.resolvedFormats]})}function W(e){const o=j(e);return _.isNumericCanonicalFormat(o)?o:void 0}function j(e){const o=e.snapshot.resolvedFormats.find(t=>t.format.type!=="temporal_bucket"&&t.format.type!=="raw_temporal"&&g(t.scope,e.scope)&&x(t.target,e.target));return o==null?void 0:o.format}function X(e){const o=e.snapshot.resolvedFormats.find(t=>t.format.type==="raw_temporal"&&g(t.scope,e.scope)&&x(t.target,e.target));return o==null?void 0:o.format}function Z(e){const o=e.snapshot.resolvedFormats.find(t=>t.format.type==="temporal_bucket"&&g(t.scope,e.scope)&&x(t.target,e.target));return o==null?void 0:o.format}function ee(e){var r;const o=new Set,t=new Set;if(e.snapshot.resolvedFormats.forEach((i,s)=>{if(i.scope.attachmentIndex!==void 0)throw new Error(`resolvedFormats.${s}.scope.attachmentIndex is not valid for a card export`);if(i.scope.dashboardId!==e.expectedScope.dashboardId||i.scope.cardId!==e.expectedScope.cardId)throw new Error(`resolvedFormats.${s}.scope must match the executing dashboard/card`);if(i.target.kind==="field"&&i.format.type==="temporal_bucket"){const c=JSON.stringify(h(i.target));if(t.has(c))throw new Error(`resolvedFormats.${s} duplicates export field "${i.target.fieldId}"`);t.add(c);return}if(i.target.kind!=="column")throw new Error(`resolvedFormats.${s}.target must identify an export column or temporal pivot field`);if(o.has(i.target.columnKey))throw new Error(`resolvedFormats.${s} duplicates export column "${i.target.columnKey}"`);o.add(i.target.columnKey)}),!e.useFormattedValues)return;if(!((r=e.visibleColumns)!=null&&r.length))throw new Error("visibleColumns must identify every formatted export column");const n=e.visibleColumns.find(i=>!o.has(i));if(n)throw new Error(`resolvedFormats is missing visible export column "${n}"`)}function w(e){return Array.from(new Set((e??[]).flatMap(o=>typeof o.id=="string"&&o.id?[o.id]:[])))}function P(e){const o=new Map;return e.forEach(t=>{t.id&&o.set(t.id,(o.get(t.id)??0)+1)}),e.flatMap(t=>t.id&&(o.get(t.id)??0)>1?[N.resolveMetricResultAlias(t)]:[])}function te(e){const o=e.metricFields??[],t=w(o);return{expectedRoleFieldIds:{groupby:w(e.groupByFields),metric:t.length>0?t:[B.SEMAPHOR_GENERATED_COUNT_METRIC_ID],pivotby:w(e.pivotByFields),detail:w(e.detailFields)},expectedMetricAliases:P(o)}}class a extends Error{constructor(t,n){super(`invalid_pivot_result_lifecycle: ${t}`);f(this,"code","invalid_pivot_result_lifecycle");f(this,"deliveryBlocking",!0);this.cause=n,this.name="PivotResultLifecycleError"}}function oe(e){if(!Array.isArray(e)||e.some(t=>!t||typeof t!="object"||Array.isArray(t)||typeof t.key!="string"||!t.key||typeof t.name!="string"||typeof t.label!="string"))throw new a("Canonical pivot columns must be an array of keyed, named result descriptors.");const o=e;if(new Set(o.map(t=>t.key)).size!==o.length)throw new a("Canonical pivot column keys must be unique.");for(const t of o){const n=J.validateTemporalBucketResultColumn(t,{metadataRequired:!1});if(!n.ok)throw new a(`Canonical pivot column "${t.key}" has invalid temporal metadata: ${n.error.message}`)}return o}function E(e){if(!e||typeof e!="object"||Array.isArray(e)||e.version!==1||e.source!=="explorer"||!e.byRole||typeof e.byRole!="object"||Array.isArray(e.byRole))throw new a("A loaded canonical pivot result requires its role-scoped column key map.");const o=e,t=new Set(["groupby","metric","pivotby","detail"]);for(const[n,r]of Object.entries(o.byRole)){if(!t.has(n)||!r||typeof r!="object"||Array.isArray(r))throw new a(`Canonical pivot role map contains invalid "${n}" bindings.`);for(const[i,s]of Object.entries(r))if(!i||!s||typeof s!="object"||Array.isArray(s)||s.role!==n||typeof s.rawKey!="string"||!s.rawKey||s.outputKey!==void 0&&(typeof s.outputKey!="string"||!s.outputKey))throw new a(`Canonical pivot role map contains an invalid "${n}:${i}" binding.`)}if(o.byMetricAlias!==void 0){if(!o.byMetricAlias||typeof o.byMetricAlias!="object"||Array.isArray(o.byMetricAlias))throw new a("Canonical pivot metric-alias bindings must be an object.");for(const[n,r]of Object.entries(o.byMetricAlias))if(!n||!r||typeof r!="object"||Array.isArray(r)||r.role!=="metric"||typeof r.rawKey!="string"||!r.rawKey||r.outputKey!==void 0&&(typeof r.outputKey!="string"||!r.outputKey))throw new a(`Canonical pivot metric-alias map contains an invalid "${n}" binding.`)}return o}function re(e){if(e===void 0)return{};if(!e||typeof e!="object"||Array.isArray(e))throw new a("Canonical pivot column metadata must be an object.");for(const[o,t]of Object.entries(e)){if(!o||!t||typeof t!="object"||Array.isArray(t))throw new a(`Canonical pivot column metadata contains an invalid "${o}" classification.`);const{isSubtotal:n,subtotalScope:r}=t;if(n!==void 0&&typeof n!="boolean"||r!==void 0&&r!=="base"&&r!=="pivot-value"&&r!=="grand-total"||n===!0&&r!=="pivot-value"&&r!=="grand-total"||(r==="pivot-value"||r==="grand-total")&&n!==!0||r==="base"&&n===!0)throw new a(`Canonical pivot column metadata contains an incoherent "${o}" subtotal classification.`)}return e}function C(e,o){if(!Array.isArray(e)||e.some(t=>typeof t!="string"||!t)||new Set(e).size!==e.length)throw new a(`Canonical pivot contract ${o} must be an array of unique field identities.`);return e}function ne(e,o){if(!e||typeof e!="object"||Array.isArray(e)||e.version!==1)throw new a("A canonical pivot result requires its versioned result contract.");const t=e,n=t.expectedRoleFieldIds;if(!n||typeof n!="object"||Array.isArray(n))throw new a("Canonical pivot contract role identities must be an object.");const i=Object.fromEntries(["groupby","metric","pivotby","detail"].map(d=>[d,C(n[d],`expectedRoleFieldIds.${d}`)])),s=C(t.expectedMetricAliases,"expectedMetricAliases"),c=t.columnKinds;if(!c||typeof c!="object"||Array.isArray(c))throw new a("Canonical pivot contract column kinds must be an object.");const m=new Set(["row","pivot_metric","value"]),p=o.map(d=>d.key),l=Object.keys(c);if(l.length!==p.length||l.some(d=>!p.includes(d)||!m.has(c[d])))throw new a("Canonical pivot contract must classify every authoritative result column exactly once.");const R=re(t.columnClassifications);if(Object.keys(R).some(d=>!p.includes(d)))throw new a("Canonical pivot contract contains a classification for an unknown result column.");return{version:1,expectedRoleFieldIds:i,expectedMetricAliases:s,columnKinds:c,columnClassifications:R}}function $(e,o){const t=["groupby","metric","pivotby","detail"];for(const i of t){const s=new Set(o.expectedRoleFieldIds[i]??[]),c=Object.keys(e.byRole[i]??{});if(c.length!==s.size||c.some(m=>!s.has(m)))throw new a(`The role-scoped ${i} bindings do not match the authored result fields.`)}const n=new Set(o.expectedMetricAliases),r=Object.keys(e.byMetricAlias??{});if(r.length!==n.size||r.some(i=>!n.has(i)))throw new a("The metric-alias bindings do not match the authored metric instances.")}function ie(e){if(!Array.isArray(e)||e.some(o=>!o||typeof o!="object"||Array.isArray(o)))throw new a("Canonical pivot records must be an array of row objects.");return e}function se(e,o){e.forEach((t,n)=>{o.forEach(r=>{if(!Object.prototype.hasOwnProperty.call(t,r.key)||t[r.key]===void 0)throw new a(`Canonical pivot column "${r.key}" is absent from row ${n}.`)})})}function ae(e,o,t){const n=new Set(o.map(r=>r.key));["groupby","detail"].forEach(r=>{Object.entries(e.byRole[r]??{}).forEach(([i,s])=>{const c=s.outputKey||s.rawKey;if(!n.has(c)||t.columnKinds[c]!=="row")throw new a(`The role-scoped ${r} binding for "${i}" does not name an authoritative result column.`)})})}function A(e,o){o.forEach(t=>{const n=e.columnKinds[t.key];if(n==="pivot_metric"&&t.pivotIdentity===void 0)throw new a(`Physical pivot result column "${t.key}" is missing its identity.`);if(n!=="pivot_metric"&&t.pivotIdentity!==void 0)throw new a(`Canonical pivot result column "${t.key}" carries pivot identity outside the physical pivot projection.`)})}function M(e){const o=ie(e.records),t=oe(e.columns),n=ne(e.pivotResultContract,t),r=n.expectedRoleFieldIds.pivotby??[];if(e.pivotResultState==="loaded_empty"){if(o.length!==0)throw new a("A loaded_empty pivot result cannot carry records.");if(t.some(m=>n.columnKinds[m.key]==="pivot_metric"))throw new a("A loaded_empty pivot result cannot carry physical pivot columns.");A(n,t);const c=E(e.columnKeyMap);return $(c,n),{pivotResultState:"loaded_empty",records:[],columns:t,columnKeyMap:c,pivotResultContract:n}}if(e.pivotResultState!=="loaded_valid")throw new a("A canonical pivot result must declare loaded_empty or loaded_valid.");if(o.length===0)throw new a("A loaded_valid pivot result must carry at least one record.");const i=E(e.columnKeyMap);$(i,n),ae(i,t,n),A(n,t);const s=t.filter(c=>n.columnKinds[c.key]==="pivot_metric");if(r.length>0&&s.length===0)throw new a("A loaded_valid pivot result is missing its physical pivot columns.");try{I.requirePivotResultColumnIdentities(s,{expectedPivotFieldIds:r,columnClassifications:n.columnClassifications})}catch(c){throw c instanceof I.PivotResultIdentityError?new a(c.message,c):c}return se(o,t),{pivotResultState:"loaded_valid",records:o,columns:t,columnKeyMap:i,pivotResultContract:n}}function ce(e){const o=new Set;["groupby","detail"].forEach(i=>{Object.values(e.columnKeyMap.byRole[i]??{}).forEach(s=>{o.add(s.outputKey||s.rawKey)})});const t=new Set(e.physicalPivotColumnKeys),n=new Set(e.columns.map(i=>i.key)),r={version:1,expectedRoleFieldIds:{groupby:Array.from(new Set(e.expectedRoleFieldIds.groupby??[])),metric:Array.from(new Set(e.expectedRoleFieldIds.metric??[])),pivotby:Array.from(new Set(e.expectedRoleFieldIds.pivotby??[])),detail:Array.from(new Set(e.expectedRoleFieldIds.detail??[]))},expectedMetricAliases:[...e.expectedMetricAliases??[]],columnKinds:Object.fromEntries(e.columns.map(i=>[i.key,o.has(i.key)?"row":t.has(i.key)?"pivot_metric":"value"])),columnClassifications:Object.fromEntries(Object.entries(e.columnMetadata??{}).filter(([i])=>n.has(i)))};return M({pivotResultState:e.records.length===0?"loaded_empty":"loaded_valid",pivotResultContract:r,records:e.records,columns:e.columns,columnKeyMap:e.columnKeyMap})}exports.MissingResolvedRawTemporalFormatError=D;exports.PivotResultLifecycleError=a;exports.PresentationExecutionSnapshotError=b;exports.createCanonicalPivotResultTransport=ce;exports.createPresentationExecutionSnapshot=Q;exports.deriveMetricInstanceAliasExpectations=P;exports.derivePivotResultContractExpectations=te;exports.findResolvedMeasureFormat=j;exports.findResolvedNumericFormat=W;exports.findResolvedRawTemporalFormat=X;exports.findResolvedTemporalBucketFormat=Z;exports.parseCanonicalPivotResultTransport=M;exports.parsePresentationExecutionSnapshot=K;exports.parsePresentationScope=S;exports.parseResolvedPresentationEntries=F;exports.validateCardExportPresentationSnapshot=ee;