react-semaphor 0.1.498 → 0.1.500

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 (120) hide show
  1. package/dist/analytics-protocol/index.cjs +1 -1
  2. package/dist/analytics-protocol/index.js +22 -22
  3. package/dist/brand-studio/index.cjs +1 -1
  4. package/dist/brand-studio/index.js +4 -4
  5. package/dist/briefings/index.cjs +1 -1
  6. package/dist/briefings/index.js +5 -5
  7. package/dist/chunks/{calculated-field-identity-BGIPbwBx.js → calculated-field-identity-BC2NViZZ.js} +73 -63
  8. package/dist/chunks/{calculated-field-identity-CEzmY7Bi.cjs → calculated-field-identity-CtYhhZoG.cjs} +1 -1
  9. package/dist/chunks/{constants-CKoIADZx.js → constants-CTRduy1g.js} +9 -9
  10. package/dist/chunks/{constants-CpBVuEea.cjs → constants-DNgpRMaX.cjs} +1 -1
  11. package/dist/chunks/{dashboard-briefing-launcher-BEmyxEd8.cjs → dashboard-briefing-launcher-BLJZ3Qgs.cjs} +1 -1
  12. package/dist/chunks/{dashboard-briefing-launcher-C8eAX-JN.js → dashboard-briefing-launcher-BXUyvRSV.js} +9 -9
  13. package/dist/chunks/{dashboard-controls-YvJe7cPL.cjs → dashboard-controls-Cd7otu4d.cjs} +1 -1
  14. package/dist/chunks/{dashboard-controls-C_v7sbq4.js → dashboard-controls-Cpwyyh9l.js} +11 -11
  15. package/dist/chunks/{dashboard-date-comparison-definition-aANgeL-E.js → dashboard-date-comparison-definition-C1vJshiP.js} +6 -6
  16. package/dist/chunks/{dashboard-date-comparison-definition-Er8D33iq.cjs → dashboard-date-comparison-definition-CWz_Yte8.cjs} +1 -1
  17. package/dist/chunks/{dashboard-json-BaT3Yy8x.js → dashboard-json-BInzxESW.js} +7 -7
  18. package/dist/chunks/{dashboard-json-CSp5bXIV.cjs → dashboard-json-DCC670oo.cjs} +1 -1
  19. package/dist/chunks/edit-dashboard-visual-CIQ2Ow3V.cjs +172 -0
  20. package/dist/chunks/{edit-dashboard-visual-GWiW0jjy.js → edit-dashboard-visual-Dfmk5Qmc.js} +6183 -6212
  21. package/dist/chunks/{editor-action-buttons-CfZITZwQ.js → editor-action-buttons-DjP4MzoJ.js} +6 -6
  22. package/dist/chunks/{editor-action-buttons-BSC0nwgV.cjs → editor-action-buttons-fiZSPjDC.cjs} +1 -1
  23. package/dist/chunks/{field-aggregations-DLWbqnBW.cjs → field-aggregations-mlkON_QA.cjs} +1 -1
  24. package/dist/chunks/{field-aggregations-CxJWY4Ny.js → field-aggregations-tLaXZ2VJ.js} +13 -13
  25. package/dist/chunks/{field-dependencies-BiyQuGxZ.cjs → field-dependencies-R7MrlW6D.cjs} +1 -1
  26. package/dist/chunks/{field-dependencies-CNOgt39w.js → field-dependencies-ZE2klbHO.js} +1 -1
  27. package/dist/chunks/{index-BJfUMDHc.js → index-BVIet238.js} +42 -42
  28. package/dist/chunks/{index-C3RHKD3d.cjs → index-Bh3SlWJS.cjs} +1 -1
  29. package/dist/chunks/{index-DhBGtRkR.cjs → index-C6KtprFE.cjs} +233 -233
  30. package/dist/chunks/{index-DjbQVfS6.js → index-CBUb9M4R.js} +26553 -26545
  31. package/dist/chunks/{matrix-analytical-definition-s10yOPft.js → matrix-analytical-definition-CIVFNNnF.js} +1 -1
  32. package/dist/chunks/{matrix-analytical-definition-DbaMwlWM.cjs → matrix-analytical-definition-wIEDXvV5.cjs} +1 -1
  33. package/dist/chunks/{matrix-card-DGpXdK_Y.js → matrix-card-BVvKHL7s.js} +2 -2
  34. package/dist/chunks/{matrix-card-BitrcBVw.cjs → matrix-card-Dh0J0_Of.cjs} +1 -1
  35. package/dist/chunks/matrix-control-sources-CjnsBREg.js +605 -0
  36. package/dist/chunks/matrix-control-sources-a67fwoOO.cjs +1 -0
  37. package/dist/chunks/{matrix-definition-AP5W3wGc.js → matrix-definition-BEXCfZAe.js} +3 -3
  38. package/dist/chunks/{matrix-definition-C33isJ3k.cjs → matrix-definition-CKVi4VVg.cjs} +1 -1
  39. package/dist/chunks/{matrix-formatter-CZYFhdZ0.js → matrix-formatter-BTPfthsa.js} +41 -41
  40. package/dist/chunks/{matrix-formatter-UCXQxvV3.cjs → matrix-formatter-CWtdnbfv.cjs} +1 -1
  41. package/dist/chunks/{matrix-member-presentation-5-M0obIa.js → matrix-member-presentation-DiDUvZts.js} +1 -1
  42. package/dist/chunks/{matrix-member-presentation-DgIq9UG9.cjs → matrix-member-presentation-e_KZoZOx.cjs} +1 -1
  43. package/dist/chunks/{matrix-operation-contract-BFumahBa.js → matrix-operation-contract-CPgckXxm.js} +144 -144
  44. package/dist/chunks/{matrix-operation-contract-C0-V685e.cjs → matrix-operation-contract-thtFuUYf.cjs} +1 -1
  45. package/dist/chunks/{metric-comparison-ClKUI7Tu.cjs → metric-comparison-CAqV6VnZ.cjs} +1 -1
  46. package/dist/chunks/{metric-comparison-Df3HmmUE.js → metric-comparison-Dgyq1I3d.js} +1 -1
  47. package/dist/chunks/{pivot-header-presentation-CGWDx1V_.cjs → pivot-header-presentation-DUXM-VOP.cjs} +1 -1
  48. package/dist/chunks/{pivot-header-presentation-CAmKYLgn.js → pivot-header-presentation-DcCO8-Ij.js} +3 -3
  49. package/dist/chunks/{pivot-result-identity-DBeK76wx.js → pivot-result-identity-Be1zm0AV.js} +1 -1
  50. package/dist/chunks/{pivot-result-identity-0grcK7bY.cjs → pivot-result-identity-DJyF4I2K.cjs} +1 -1
  51. package/dist/chunks/{pivot-result-lifecycle-DVPJg7Gg.js → pivot-result-lifecycle-DpSZOMOZ.js} +7 -7
  52. package/dist/chunks/{pivot-result-lifecycle-CC0jWMFT.cjs → pivot-result-lifecycle-E_huAPev.cjs} +1 -1
  53. package/dist/chunks/{raw-temporal-Kc3mdzH7.cjs → raw-temporal-DYoPBY6B.cjs} +1 -1
  54. package/dist/chunks/{raw-temporal-T3PEaGmJ.js → raw-temporal-DfnRBxQn.js} +2 -2
  55. package/dist/chunks/{raw-temporal-contract-Ck5vJoQ6.js → raw-temporal-contract-CNwYygW2.js} +1 -1
  56. package/dist/chunks/{raw-temporal-contract-SwtP1jSh.cjs → raw-temporal-contract-D1_n2pBj.cjs} +1 -1
  57. package/dist/chunks/{report-preferences-dialog-BcaEOgn2.cjs → report-preferences-dialog-BMs2Bt9t.cjs} +1 -1
  58. package/dist/chunks/{report-preferences-dialog-B8DdDM7q.js → report-preferences-dialog-CWK7wxW6.js} +6 -6
  59. package/dist/chunks/{report-runtime-context-D3t8vyl9.cjs → report-runtime-context-CqFbgZq9.cjs} +1 -1
  60. package/dist/chunks/{report-runtime-context-BziN1eg9.js → report-runtime-context-Dln1qvGS.js} +5 -5
  61. package/dist/chunks/{semantic-format-Ca-sdETk.cjs → semantic-format-C7Goni6h.cjs} +1 -1
  62. package/dist/chunks/{semantic-format-A3k--fpE.js → semantic-format-PKQt2EAz.js} +2 -2
  63. package/dist/chunks/{source-entity-resolution-CTUzMH2S.cjs → source-entity-resolution-BMKxwdKN.cjs} +1 -1
  64. package/dist/chunks/{source-entity-resolution-DX9C1ebK.js → source-entity-resolution-BSZ07Sl6.js} +19 -19
  65. package/dist/chunks/{switch-DV8zX7rV.js → switch-B4wVqV4L.js} +51 -50
  66. package/dist/chunks/{switch-CgycqpWv.cjs → switch-DVjKkt22.cjs} +12 -12
  67. package/dist/chunks/{temporal-bucket-contract-BBdvWsY0.cjs → temporal-bucket-contract-CSdspcYj.cjs} +1 -1
  68. package/dist/chunks/{temporal-bucket-contract-lq7Jrif0.js → temporal-bucket-contract-_WCvDnvn.js} +1 -1
  69. package/dist/chunks/{update-policy-DIw_H9RT.cjs → update-policy-BESKAspa.cjs} +1 -1
  70. package/dist/chunks/{update-policy-EgZ1nRbd.js → update-policy-BWbXhkk-.js} +2 -2
  71. package/dist/chunks/{validators-CvLOGzT3.js → validators-CHlnnHuS.js} +1102 -1043
  72. package/dist/chunks/validators-D2F_uxxP.cjs +1 -0
  73. package/dist/dashboard/index.cjs +1 -1
  74. package/dist/dashboard/index.js +1 -1
  75. package/dist/dashboard-authoring/index.cjs +3 -3
  76. package/dist/dashboard-authoring/index.js +112 -107
  77. package/dist/data-app-builder/index.cjs +1 -1
  78. package/dist/data-app-builder/index.js +2 -2
  79. package/dist/data-app-codegen/index.cjs +1 -1
  80. package/dist/data-app-codegen/index.js +2 -2
  81. package/dist/data-app-codegen-node/index.cjs +1 -1
  82. package/dist/data-app-codegen-node/index.js +3 -3
  83. package/dist/data-app-sdk/index.cjs +1 -1
  84. package/dist/data-app-sdk/index.js +4 -4
  85. package/dist/data-app-sdk-adapters/index.cjs +1 -1
  86. package/dist/data-app-sdk-adapters/index.js +2 -2
  87. package/dist/data-app-sdk-validation/index.cjs +1 -1
  88. package/dist/data-app-sdk-validation/index.js +5 -5
  89. package/dist/format-utils/index.cjs +1 -1
  90. package/dist/format-utils/index.js +16 -16
  91. package/dist/index.cjs +1 -1
  92. package/dist/index.js +81 -78
  93. package/dist/report-runtime-context/index.cjs +1 -1
  94. package/dist/report-runtime-context/index.js +2 -2
  95. package/dist/style.css +1 -1
  96. package/dist/surfboard/index.cjs +1 -1
  97. package/dist/surfboard/index.js +2 -2
  98. package/dist/types/analytics-protocol.d.ts +15 -0
  99. package/dist/types/briefings.d.ts +16 -1
  100. package/dist/types/dashboard-assistant.d.ts +15 -0
  101. package/dist/types/dashboard-authoring.d.ts +49 -1
  102. package/dist/types/dashboard.d.ts +23 -1
  103. package/dist/types/data-app-builder.d.ts +15 -0
  104. package/dist/types/data-app-codegen-node.d.ts +15 -0
  105. package/dist/types/data-app-codegen.d.ts +15 -0
  106. package/dist/types/data-app-sdk-adapters.d.ts +15 -0
  107. package/dist/types/data-app-sdk-validation.d.ts +15 -0
  108. package/dist/types/data-app-sdk.d.ts +15 -0
  109. package/dist/types/format-utils.d.ts +15 -0
  110. package/dist/types/index.cjs +1 -1
  111. package/dist/types/index.js +30 -27
  112. package/dist/types/main.d.ts +67 -8
  113. package/dist/types/shared.d.ts +16 -1
  114. package/dist/types/surfboard.d.ts +23 -1
  115. package/dist/types/types.d.ts +67 -8
  116. package/package.json +1 -1
  117. package/dist/chunks/edit-dashboard-visual-_Wap0YGu.cjs +0 -172
  118. package/dist/chunks/matrix-control-sources-DdfST7Fo.cjs +0 -1
  119. package/dist/chunks/matrix-control-sources-Dxh6hOU9.js +0 -523
  120. package/dist/chunks/validators-mhiJSia7.cjs +0 -1
@@ -1,14 +1,14 @@
1
1
  import { c as Ve, C as Re, X as et } from "./x-CXDkqdur.js";
2
2
  import { useState as K, useEffect as ie, useCallback as j, useMemo as oe, useRef as Se, Fragment as gt } from "react";
3
- import { E as de, z as _e, u as P, a4 as U, D as z, a5 as bt, Q as yt, V as xt, W as vt, c as fe, Y as Ct, a6 as St, a7 as kt, a8 as me, a9 as Qe, aa as Be, ab as ke, ac as Ne, ad as Nt, ae as wt, af as $e, ag as Dt, ah as Et, ai as pe, aj as Tt, ak as We, B as q, al as tt, am as at, an as rt, O as ne, Z as st, _ as we, $ as De, a0 as Ee, a1 as Te, a2 as Fe, ao as nt, ap as Ft, aq as It, ar as He, as as Vt, at as Ke, au as _t, av as At, aw as Lt, ax as qt, ay as Ie, d as Mt, L as ot, az as Ot, aA as zt } from "./switch-DV8zX7rV.js";
4
- import { b5 as Ut, ay as jt, b6 as ce, b7 as Rt, b8 as Ae, b9 as Qt, ba as Bt, bb as $t, bc as Wt, bd as Ht, be as Kt, bf as lt, bg as it, u as Yt, bh as Xt, bi as Gt, bj as Ye, bk as Jt, bl as Pt, bm as dt, bn as ct, bo as Zt, bp as ea, bq as ta, br as aa, bs as ra, aX as sa, bt as na, bu as ut, bv as oa } from "./index-DjbQVfS6.js";
3
+ import { E as de, z as _e, u as P, a4 as U, D as z, a5 as bt, Q as yt, V as xt, W as vt, c as fe, Y as Ct, a6 as St, a7 as kt, a8 as me, a9 as Qe, aa as Be, ab as ke, ac as Ne, ad as Nt, ae as wt, af as $e, ag as Dt, ah as Et, ai as pe, aj as Tt, ak as We, B as q, al as tt, am as at, an as rt, O as ne, Z as st, _ as we, $ as De, a0 as Ee, a1 as Te, a2 as Fe, ao as nt, ap as Ft, aq as It, ar as He, as as Vt, at as Ke, au as _t, av as At, aw as Lt, ax as qt, ay as Ie, d as Mt, L as ot, az as Ot, aA as zt } from "./switch-B4wVqV4L.js";
4
+ import { b5 as Ut, ay as jt, b6 as ce, b7 as Rt, b8 as Ae, b9 as Qt, ba as Bt, bb as $t, bc as Wt, bd as Ht, be as Kt, bf as lt, bg as it, u as Yt, bh as Xt, bi as Gt, bj as Ye, bk as Jt, bl as Pt, bm as dt, bn as ct, bo as Zt, bp as ea, bq as ta, br as aa, bs as ra, aX as sa, bt as na, bu as ut, bv as oa } from "./index-CBUb9M4R.js";
5
5
  import { jsx as a, jsxs as m, Fragment as Z } from "react/jsx-runtime";
6
- import "./constants-CKoIADZx.js";
7
- import { o as la } from "./validators-CvLOGzT3.js";
8
- import "./matrix-operation-contract-BFumahBa.js";
6
+ import "./constants-CTRduy1g.js";
7
+ import { t as la } from "./validators-CHlnnHuS.js";
8
+ import "./matrix-operation-contract-CPgckXxm.js";
9
9
  import "../value-format-preferences/index.js";
10
10
  import { C as Xe } from "./search-BHsQIWBV.js";
11
- import { f as ia } from "./index-BJfUMDHc.js";
11
+ import { f as ia } from "./index-BVIet238.js";
12
12
  import { S as mt } from "./save-DgMfP0j8.js";
13
13
  /**
14
14
  * @license lucide-react v0.453.0 - ISC
@@ -1,4 +1,4 @@
1
- "use strict";const J=require("./x-B6ghREd2.cjs"),C=require("react"),r=require("./switch-CgycqpWv.cjs"),y=require("./index-DhBGtRkR.cjs"),e=require("react/jsx-runtime");require("./constants-CpBVuEea.cjs");const Te=require("./validators-mhiJSia7.cjs");require("./matrix-operation-contract-C0-V685e.cjs");require("../value-format-preferences/index.cjs");const ge=require("./search-BqqhaMx9.cjs"),Fe=require("./index-C3RHKD3d.cjs"),Se=require("./save-3dYRmehL.cjs");/**
1
+ "use strict";const J=require("./x-B6ghREd2.cjs"),C=require("react"),r=require("./switch-DVjKkt22.cjs"),y=require("./index-C6KtprFE.cjs"),e=require("react/jsx-runtime");require("./constants-DNgpRMaX.cjs");const Te=require("./validators-D2F_uxxP.cjs");require("./matrix-operation-contract-thtFuUYf.cjs");require("../value-format-preferences/index.cjs");const ge=require("./search-BqqhaMx9.cjs"),Fe=require("./index-Bh3SlWJS.cjs"),Se=require("./save-3dYRmehL.cjs");/**
2
2
  * @license lucide-react v0.453.0 - ISC
3
3
  *
4
4
  * This source code is licensed under the ISC license.
@@ -1 +1 @@
1
- "use strict";const Y=require("./validators-mhiJSia7.cjs");require("./matrix-operation-contract-C0-V685e.cjs");const Q=require("./metric-comparison-ClKUI7Tu.cjs"),T=require("./temporal-bucket-4YEPEKlJ.cjs"),W=require("../value-format-preferences/index.cjs"),se=require("./source-entity-resolution-CTUzMH2S.cjs"),q=require("./matrix-card-BitrcBVw.cjs"),k=new Set(["previous_period","same_period_last_year","start_vs_end","target"]),ae=new Set([...k,"none",""]);function f(e){return!!e&&typeof e=="object"&&!Array.isArray(e)}function X(e){const t=f(e.preferences)?e.preferences:void 0,o=t&&f(t.kpiVisualOptions)?t.kpiVisualOptions:void 0,n=t&&f(t.tableVisualOptions)?t.tableVisualOptions:void 0;return{preferences:t,kpiOptions:o,kpiComparison:o&&f(o.metricComparison)?o.metricComparison:void 0,kpiComparisonPresent:!!o&&"metricComparison"in o,tableOptions:n,tableComparison:n&&f(n.metricComparison)?n.metricComparison:void 0,tableComparisonPresent:!!n&&"metricComparison"in n}}function F(e){const t=[],o=(n,r)=>{if(Array.isArray(n)){n.forEach((i,s)=>o(i,`${r}[${s}]`));return}if(!f(n))return;const p=n.config;if(f(p)){const i=X(n),s=!!(i.kpiComparisonPresent||i.tableComparisonPresent),m=p.metricColumns,a=Array.isArray(m)?m.flatMap((l,c)=>f(l)?[{index:c,metric:l}]:[]):[];if((a.some(({metric:l})=>"comparisonType"in l)||s)&&t.push({path:r,card:n,metrics:a,malformedMetricIndexes:Array.isArray(m)?m.flatMap((l,c)=>f(l)?[]:[c]):[],malformedMetricColumns:"metricColumns"in p&&!Array.isArray(m),hasLegacyPresentation:s}),"metricColumns"in p||s)return}Object.entries(n).forEach(([i,s])=>o(s,r?`${r}.${i}`:i))};return o(e,"$"),t}const Z={difference:"difference",change:"percent_change",change_difference:"both",ratio:"ratio"};function x(e,t){if(!e)return;const o=Object.fromEntries(t.flatMap(n=>typeof e[n]=="string"?[[n,e[n]]]:[]));return Object.keys(o).length?o:void 0}function ce(e,t,o){if(e!==void 0){if(!f(e)){o.push({severity:"error",code:"invalid_legacy_comparison_presentation",path:t,message:"Legacy comparison formatOptions must be an object."});return}Object.entries(e).forEach(([n,r])=>{if(n==="decimalPlaces"){(typeof r!="number"||!Number.isInteger(r)||r<0||r>6)&&o.push({severity:"error",code:"invalid_legacy_comparison_presentation",path:`${t}.decimalPlaces`,message:"Legacy comparison decimalPlaces must be an integer from 0 through 6."});return}n==="type"&&(r===void 0||r==="auto")||r!==void 0&&o.push({severity:"error",code:"unsupported_comparison_format",path:`${t}.${n}`,message:`Legacy comparison format option "${n}" has no canonical presentation mapping.`})})}}function B(e,t){const o=t==="kpi"?e.calculationType:e.calculatedAs,n=t==="table"&&o===void 0?"both":Z[String(o)],r=f(e.formatOptions)?e.formatOptions:void 0,p=f(e.conditionalLabels)?e.conditionalLabels:void 0,i=f(t==="kpi"?e.colorConfig:e.colors)?t==="kpi"?e.colorConfig:e.colors:void 0,s={};if(n&&(s.displayMode=n),typeof(r==null?void 0:r.decimalPlaces)=="number"&&(s.precision=r.decimalPlaces),t==="kpi"){const l=e.showArrow!==!1,c=e.showColor!==!1;s.indicatorStyle=l?c?"arrow_badge":"arrow":c?"badge":"none",s.showColor=c,(e.position==="left"||e.position==="right"||e.position==="top")&&(s.position=e.position),typeof e.conditionalLabel=="boolean"&&(s.conditionalLabel=e.conditionalLabel),typeof e.labelName=="string"&&(s.labelName=e.labelName)}else(e.indicatorStyle==="arrow_badge"||e.indicatorStyle==="arrow"||e.indicatorStyle==="badge"||e.indicatorStyle==="none")&&(s.indicatorStyle=e.indicatorStyle);const m=p?{...x(p,["increase","decrease"]),...typeof p.noChange=="string"?{neutral:p.noChange}:typeof p.neutral=="string"?{neutral:p.neutral}:{}}:void 0;m&&Object.keys(m).length&&(s.conditionalLabels=m);const a=i?{...x(i,["increase","decrease"]),...typeof i.noChange=="string"?{neutral:i.noChange}:typeof i.neutral=="string"?{neutral:i.neutral}:{}}:void 0;return a&&Object.keys(a).length&&(s.colors=a),s}function U(e){return{...Q.COMPARISON_PRESENTATION_DEFAULTS,...e}}function J(e){return e.some(({metric:t})=>t.comparisonType==="previous_period"||t.comparisonType==="same_period_last_year"||t.comparisonType==="target"?!0:f(t.comparison)&&t.comparison.mode==="explicit")}function w(e){const t=e.card.config;return e.metrics.length===2&&(t.groupByColumns===void 0||Array.isArray(t.groupByColumns)&&t.groupByColumns.length===0)}function j(e,t,o,n){const r=t==="kpi"?["enabled","calculationType","formatOptions","showArrow","showColor","conditionalLabel","labelName","position","conditionalLabels","colorConfig","lowerIsBetter"]:["calculatedAs","indicatorStyle","formatOptions","colors","lowerIsBetter"];Object.keys(e).forEach(l=>{r.includes(l)||n.push({severity:"error",code:"invalid_legacy_comparison_presentation",path:`${o}.${l}`,message:`Unknown legacy comparison presentation field "${l}" cannot be dropped automatically.`})});const p=t==="kpi"?"calculationType":"calculatedAs";e[p]!==void 0&&!Z[String(e[p])]&&n.push({severity:"error",code:"invalid_legacy_comparison_presentation",path:`${o}.${p}`,message:`Legacy comparison ${p} is unsupported.`}),t==="kpi"&&e.position!==void 0&&!["left","right","top"].includes(String(e.position))&&n.push({severity:"error",code:"invalid_legacy_comparison_presentation",path:`${o}.position`,message:"Legacy comparison position is unsupported."}),t==="kpi"&&e.labelName!==void 0&&typeof e.labelName!="string"&&n.push({severity:"error",code:"invalid_legacy_comparison_presentation",path:`${o}.labelName`,message:"Legacy comparison labelName must be a string."}),(t==="kpi"?[["conditionalLabels",["increase","decrease","noChange"]],["colorConfig",["increase","decrease","noChange"]]]:[["colors",["increase","decrease","neutral"]]]).forEach(([l,c])=>{if(e[l]!==void 0){if(!f(e[l])){n.push({severity:"error",code:"invalid_legacy_comparison_presentation",path:`${o}.${l}`,message:`Legacy comparison ${l} must be an object.`});return}Object.entries(e[l]).forEach(([d,b])=>{c.includes(d)?typeof b!="string"&&n.push({severity:"error",code:"invalid_legacy_comparison_presentation",path:`${o}.${l}.${d}`,message:`Legacy comparison ${l}.${d} must be a string.`}):n.push({severity:"error",code:"invalid_legacy_comparison_presentation",path:`${o}.${l}.${d}`,message:`Unknown legacy comparison ${l} field "${d}" cannot be dropped automatically.`})})}}),(t==="kpi"?["enabled","showArrow","showColor","conditionalLabel","lowerIsBetter"]:["lowerIsBetter"]).forEach(l=>{e[l]!==void 0&&typeof e[l]!="boolean"&&n.push({severity:"error",code:"invalid_legacy_comparison_presentation",path:`${o}.${l}`,message:`Legacy comparison ${l} must be a boolean.`})}),t==="table"&&e.indicatorStyle!==void 0&&!["arrow_badge","arrow","badge","none"].includes(String(e.indicatorStyle))&&n.push({severity:"error",code:"invalid_legacy_comparison_presentation",path:`${o}.indicatorStyle`,message:"Legacy comparison indicatorStyle is unsupported."}),ce(e.formatOptions,`${o}.formatOptions`,n);const m=B(e,t);Q.validateComparisonPresentationSpec(m,o).errors.forEach(l=>{n.push({severity:"error",code:"invalid_legacy_comparison_presentation",path:l.path||o,message:l.message})})}function G(e){const t=X(e.card),o=t.kpiComparison?B(t.kpiComparison,"kpi"):void 0,n=t.tableComparison?B(t.tableComparison,"table"):void 0;return{namespaces:t,kpi:o,table:n,presentation:o||n}}function pe(e){const t=f(e.preferences)?e.preferences:{},o=f(t.kpiVisualOptions)?t.kpiVisualOptions:{},n=f(o.metricComparison)?o.metricComparison:{},r=f(t.tableVisualOptions)?t.tableVisualOptions:{},p=f(r.metricComparison)?r.metricComparison:{};return o.lowerIsBetter===!0||n.lowerIsBetter===!0||p.lowerIsBetter===!0?"lower_is_better":"higher_is_better"}function le(e){switch(e.comparisonType){case"previous_period":return{mode:"explicit",spec:{kind:"previous_period"}};case"same_period_last_year":return{mode:"explicit",spec:{kind:"previous_year"}};case"target":return{mode:"explicit",spec:{kind:"target",targetValue:e.targetValue}};default:return}}function me(e){const t=f(e.preferences)?e.preferences:void 0;if(!t)return;const o=f(t.kpiVisualOptions)?t.kpiVisualOptions:void 0;o&&delete o.lowerIsBetter;const n=f(t.tableVisualOptions)?t.tableVisualOptions:void 0,r=n&&f(n.metricComparison)?n.metricComparison:void 0;r&&delete r.lowerIsBetter}function ue(e){const t=F(e);if(!t.length)return{document:e,changed:!1,changes:[],diagnostics:[]};const o=[];if(t.forEach(i=>{var s,m,a,l;if(i.malformedMetricColumns&&o.push({severity:"error",code:"malformed_metric_columns",path:`${i.path}.config.metricColumns`,message:"Metric columns must be an array before comparison migration."}),i.malformedMetricIndexes.forEach(c=>{o.push({severity:"error",code:"malformed_metric_columns",path:`${i.path}.config.metricColumns[${c}]`,message:"Metric columns must contain objects before comparison migration."})}),i.metrics.forEach(({metric:c,index:d})=>{if(!("comparisonType"in c))return;const b=`${i.path}.config.metricColumns[${d}]`,g=String(c.comparisonType||"");"comparison"in c&&o.push({severity:"error",code:"conflicting_comparison_contracts",path:b,message:"Metric contains both legacy and canonical comparison configuration; resolve the conflict before migration."});const y=f(c.parameters)?c.parameters:void 0,C=y&&f(y.windowTransform)?y.windowTransform:void 0;k.has(g)&&(C==null?void 0:C.function)==="previous_period_delta"&&o.push({severity:"error",code:"conflicting_comparison_window_transform",path:b,message:"A metric cannot combine baseline comparison with previous_period_delta; resolve the authoring intent before migration."}),ae.has(g)||o.push({severity:"error",code:"unsupported_comparison_type",path:`${b}.comparisonType`,message:`Unsupported legacy metric comparison type "${g}".`}),c.comparisonType==="target"&&(typeof c.targetValue!="number"||!Number.isFinite(c.targetValue))&&o.push({severity:"error",code:"invalid_target_value",path:`${b}.targetValue`,message:"Legacy target comparison requires a finite metric targetValue."}),c.comparisonType==="start_vs_end"&&o.push({severity:"error",code:"unsupported_start_vs_end",path:`${b}.comparisonType`,message:"start_vs_end is retired and cannot be migrated automatically."}),c.targetValue!==void 0&&c.comparisonType!=="target"&&o.push({severity:"warning",code:"stray_target_value",path:`${b}.targetValue`,message:"Dead non-target targetValue will be removed without changing the baseline."})}),i.hasLegacyPresentation){const{namespaces:c,kpi:d,table:b}=G(i),g=[(s=c.kpiOptions)==null?void 0:s.lowerIsBetter,(m=c.kpiComparison)==null?void 0:m.lowerIsBetter,(a=c.tableComparison)==null?void 0:a.lowerIsBetter].filter(y=>typeof y=="boolean");new Set(g).size>1&&o.push({severity:"error",code:"conflicting_legacy_polarity",path:`${i.path}.preferences`,message:"Legacy comparison polarity values disagree; resolve the conflict before migration."}),((l=c.kpiOptions)==null?void 0:l.lowerIsBetter)!==void 0&&typeof c.kpiOptions.lowerIsBetter!="boolean"&&o.push({severity:"error",code:"invalid_legacy_comparison_presentation",path:`${i.path}.preferences.kpiVisualOptions.lowerIsBetter`,message:"Legacy comparison lowerIsBetter must be a boolean."}),c.kpiComparisonPresent&&!c.kpiComparison&&o.push({severity:"error",code:"invalid_legacy_comparison_presentation",path:`${i.path}.preferences.kpiVisualOptions.metricComparison`,message:"Legacy KPI comparison presentation must be an object."}),c.tableComparisonPresent&&!c.tableComparison&&o.push({severity:"error",code:"invalid_legacy_comparison_presentation",path:`${i.path}.preferences.tableVisualOptions.metricComparison`,message:"Legacy table comparison presentation must be an object."}),"comparisonPresentation"in(c.preferences||{})&&o.push({severity:"error",code:"conflicting_comparison_presentation_contracts",path:`${i.path}.preferences.comparisonPresentation`,message:"Card contains both legacy and canonical comparison presentation; resolve the conflict before migration."}),c.kpiComparison&&typeof c.kpiComparison.enabled=="boolean"&&"metricPairComparisonEnabled"in(c.preferences||{})&&w(i)&&o.push({severity:"error",code:"conflicting_comparison_presentation_contracts",path:`${i.path}.preferences.metricPairComparisonEnabled`,message:"Card contains both legacy and canonical metric-pair enablement; resolve the conflict before migration."}),c.kpiComparison&&j(c.kpiComparison,"kpi",`${i.path}.preferences.kpiVisualOptions.metricComparison`,o),c.tableComparison&&j(c.tableComparison,"table",`${i.path}.preferences.tableVisualOptions.metricComparison`,o),d&&b&&JSON.stringify(U(d))!==JSON.stringify(U(b))&&o.push({severity:"error",code:"conflicting_legacy_presentation_namespaces",path:`${i.path}.preferences`,message:"KPI and table comparison presentation values disagree; resolve the conflict before migration."})}}),o.some(i=>i.severity==="error"))return{document:e,changed:!1,changes:[],diagnostics:o};const n=JSON.parse(JSON.stringify(e)),r=F(n),p=[];return r.forEach(i=>{var m;const s=pe(i.card);if(i.metrics.forEach(({metric:a,index:l})=>{if(!("comparisonType"in a))return;const c=String(a.comparisonType||""),d=`${i.path}.config.metricColumns[${l}]`,b=le(a),g=["comparisonType"];delete a.comparisonType,"targetValue"in a&&(delete a.targetValue,g.push("targetValue")),"comparisonDisplay"in a&&(delete a.comparisonDisplay,g.push("comparisonDisplay")),b?a.comparison=b:delete a.comparison,k.has(c)&&(a.comparisonPolarity=s),p.push({kind:"metric",path:d,metricId:typeof a.id=="string"?a.id:void 0,legacyType:c,comparison:b,comparisonPolarity:k.has(c)?s:void 0,removedFields:g})}),me(i.card),i.hasLegacyPresentation){const{namespaces:a,presentation:l}=G(i),c=(m=a.kpiComparison)==null?void 0:m.enabled,d={...l};typeof c=="boolean"&&J(i.metrics)&&(d.showComparison=c);const b=typeof c=="boolean"&&w(i)?c:void 0,g=typeof c=="boolean"&&!J(i.metrics)&&!w(i)?["kpiVisualOptions.metricComparison.enabled"]:void 0,y=a.preferences,C=[];i.metrics.forEach(({metric:D})=>{"comparisonPolarity"in D||(D.comparisonPolarity=s,typeof D.id=="string"&&C.push(D.id))}),Object.keys(d).length&&(y.comparisonPresentation=d),b!==void 0&&(y.metricPairComparisonEnabled=b),a.kpiOptions&&delete a.kpiOptions.metricComparison,a.tableOptions&&delete a.tableOptions.metricComparison,p.push({kind:"presentation",path:`${i.path}.preferences`,comparisonPresentation:Object.keys(d).length?d:void 0,metricPairComparisonEnabled:b,comparisonPolarityMetricIds:C,intentionallyDiscardedFields:g,removedFields:[...a.kpiComparison?["kpiVisualOptions.metricComparison"]:[],...a.tableComparison?["tableVisualOptions.metricComparison"]:[]]})}}),{document:n,changed:!0,changes:p,diagnostics:o}}const ee=["bar","horizontalBar","line","area","stackedArea","combo","stackedBar","stackedLine"],fe=new Set(ee);function te(e){return typeof e=="string"&&fe.has(e)}function de(e){return e==="detailTable"||e==="table"||e==="aggregateTable"||e==="pivotTable"||e==="custom"||te(e)}function z(e){return!!(e!=null&&e.trim())}function he(e){return z(e.sql)||z(e.normalizedPython)?"freeform":e.hasExecutableConfig?"config":"none"}const A={type:"temporal_bucket",presentation:{mode:"auto"}},_={value:"auto",label:"Automatic",format:A};function h(e,t){return{value:`pattern:${e}`,label:t,format:{type:"temporal_bucket",presentation:{mode:"pattern",pattern:e}}}}function E(e,t){return{value:`preset:${e}`,label:t,format:{type:"temporal_bucket",presentation:{mode:"preset",preset:e}}}}function v(e){return{...h(e,"Custom format…"),value:"custom",custom:!0}}const H={second:[_,h("HH:mm:ss","14:30:45 (HH:mm:ss)"),h("YYYY-MM-DD HH:mm:ss","2024-01-15 14:30:45 (YYYY-MM-DD HH:mm:ss)"),v("DD/MM/YYYY HH:mm:ss")],minute:[_,h("HH:mm","14:30 (HH:mm)"),h("YYYY-MM-DD HH:mm","2024-01-15 14:30 (YYYY-MM-DD HH:mm)"),v("DD/MM/YYYY HH:mm")],hour:[_,h("HH","14 (HH)"),h("YYYY-MM-DD HH","2024-01-15 14 (YYYY-MM-DD HH)"),v("DD/MM/YYYY HH")],day:[_,h("YYYY-MM-DD","2024-01-15 (YYYY-MM-DD)"),h("MM/DD/YYYY","01/15/2024 (MM/DD/YYYY)"),h("DD/MM/YYYY","15/01/2024 (DD/MM/YYYY)"),h("MMM DD, YYYY","Jan 15, 2024 (MMM DD, YYYY)"),h("MMMM DD, YYYY","January 15, 2024 (MMMM DD, YYYY)"),v("YYYY/MM/DD")],week:[_,E("week_of_short","Week of Jan 15, 2024"),E("week_of_long","Week of January 15, 2024"),h("YYYY-MM-DD","2024-01-15 (YYYY-MM-DD)"),v("YYYY/MM/DD")],month:[_,h("MMM YYYY","Jan 2024 (MMM YYYY)"),h("MMMM YYYY","January 2024 (MMMM YYYY)"),h("YYYY-MM","2024-01 (YYYY-MM)"),h("MM/YYYY","01/2024 (MM/YYYY)"),h("YYYY MMM","2024 Jan (YYYY MMM)"),v("YYYY/MM")],quarter:[_,E("quarter_short","Q1 2024"),E("quarter_long","1st Quarter 2024")],year:[_,h("YYYY","2024 (YYYY)"),h("YY","24 (YY)")]},be={second:"2026-07-31T14:05:09",minute:"2026-07-31T14:05:00",hour:"2026-07-31T14:00:00",day:"2026-07-31",week:"2026-07-27",month:"2026-07-01",quarter:"2026-07-01",year:"2026-01-01"};function oe(e,t,o=W.DEFAULT_RESOLVED_VALUE_FORMAT_PREFERENCES){return T.formatTemporalBucket({value:be[t],metadata:{kind:"temporal_bucket",granularity:t,calendar:{tz:"UTC",weekStart:1,...e.presentation.mode==="preset"&&(e.presentation.preset==="fiscal_quarter_short"||e.presentation.preset==="fiscal_year")?{fiscalCalendar:{kind:"month_aligned",yearStartMonth:7}}:{}}},format:e.presentation.mode==="auto"?{type:"temporal_bucket",locale:o.locale,presentation:{mode:"auto",styles:{dateStyle:o.dateStyle,dateTime:{...o.dateTime}}}}:{type:"temporal_bucket",locale:o.locale,presentation:e.presentation}})}function ge(e,t,o=W.DEFAULT_RESOLVED_VALUE_FORMAT_PREFERENCES){const n=H[e],r=(t==null?void 0:t.presentation.mode)==="preset"?t.presentation.preset:void 0,p=r&&t&&T.validateTemporalBucketFormatApplicability(t,e).ok&&!n.some(s=>{var m;return((m=s.format)==null?void 0:m.presentation.mode)==="preset"&&s.format.presentation.preset===r})?E(r,r):void 0;return(p?[...n,p]:n).map(s=>{if(!s.format||s.custom)return s;const m=oe(s.format,e,o);return s.format.presentation.mode==="pattern"?{...s,label:`${m} (${s.format.presentation.pattern})`}:s.format.presentation.mode==="auto"?{...s,label:`Automatic (${m})`}:{...s,label:m}})}function ye(e,t){const o=H[t];if(e.presentation.mode==="pattern"){const n=e.presentation.pattern,r=o.find(p=>{var i;return((i=p.format)==null?void 0:i.presentation.mode)==="pattern"&&p.format.presentation.pattern===n});return{value:(r==null?void 0:r.value)??"custom",customPattern:r!=null&&r.custom||!r?n:"",format:e}}if(e.presentation.mode==="preset"){const n=e.presentation.preset,r=o.find(i=>{var s;return((s=i.format)==null?void 0:s.presentation.mode)==="preset"&&i.format.presentation.preset===n}),p=T.validateTemporalBucketFormatApplicability(e,t).ok;return r?{value:r.value,customPattern:"",format:e}:p?{value:`preset:${n}`,customPattern:"",format:e}:{value:"auto",customPattern:"",format:A}}return{value:"auto",customPattern:"",format:e}}function _e(e,t,o=""){var i;const n=H[e].find(s=>s.value===t),r=t.startsWith("preset:")?t.slice(7):void 0,p=t==="custom"?{type:"temporal_bucket",presentation:{mode:"pattern",pattern:o.trim()||(((i=n==null?void 0:n.format)==null?void 0:i.presentation.mode)==="pattern"?n.format.presentation.pattern:"")}}:(n==null?void 0:n.format)??(r&&T.isTemporalBucketPreset(r)?{type:"temporal_bucket",presentation:{mode:"preset",preset:r}}:void 0);return!p||!T.validateTemporalBucketFormatApplicability(p,e).ok?A:p}function Ye(e,t){return T.validateTemporalBucketFormatApplicability(e,t).ok?e:A}function u(e){return typeof e=="string"&&e.trim().length>0?e.trim():null}function ne(e){return Array.from(new Set(e.filter(t=>!!t)))}function Ce(e){const t=u(e.table),o=u(e.schema),n=u(e.catalog)||u(e.database);return t?ne([t,o?`${o}.${t}`:null,n?`${n}.${t}`:null,n&&o?`${n}.${o}.${t}`:null]):[]}function K(e){const t=u(e.table)||u(e.tableName);return ne([u(e.name),u(e.alias),...Ce({table:t,schema:u(e.schema)||u(e.schemaName),catalog:u(e.catalog),database:u(e.database)||u(e.databaseName)})])}function ve(e,t){const o=u(e.domainId),n=u(t.domainId);if(o&&n&&o!==n)return!0;if(e.type==="dataset")return!1;const r=u(e.id),p=u(t.id);if(r&&p&&r!==p)return!0;const i=u(e.connectionId),s=u(t.connectionId);return!!(i&&s&&i!==s)}function L(e,t=!1){return u(e.table)||u(e.tableName)||(e.type!=="dataset"||t?u(e.name):null)}function R(e){return u(e.catalog)||u(e.database)||u(e.databaseName)}function S(e){return u(e.schema)||u(e.schemaName)}function I(e){return e.length===1?e[0]:void 0}function Me(e,t){const o=L(t,!0),n=R(t),r=S(t);if(!(!o||!n&&!r))return I(e.filter(p=>{const i=p;return!(L(i)!==o||n&&R(i)!==n||r&&S(i)!==r)}))}function P(e,t){if(!t||!(e!=null&&e.length))return;const o=e.filter(s=>!ve(s,t));if(t.type==="dataset"){const s=u(t.id);if(s)return I(o.filter(a=>a.type==="dataset"&&u(a.id)===s));if(u(t.domainId)){const a=u(t.name);return I(o.filter(l=>l.type==="dataset"&&u(l.name)===a))}}let n=[];if(t.type==="dataset"){const s=u(t.name);if(n=o.filter(m=>m.type==="dataset"&&u(m.name)===s),n.length===1)return n[0]}if(!!(L(t,!0)&&(R(t)||S(t))))return Me(o,t);if(n.length>1)return;const p=K(t);if(p.length===0)return;const i=o.filter(s=>K(s).some(a=>p.includes(a)));return I(i)}function N(e,t){const o=P(e,t);return o?{...t,...o}:t}function Te(e,t){const o=t||[];return o.length===0?e:{...e,baseEntity:N(o,e.baseEntity),joins:e.joins.map(n=>({...n,source:N(o,n.source),target:N(o,n.target)}))}}function Ee(e,t){if(!(e!=null&&e.joins.length))return[];const o=[e.baseEntity,...e.joins.flatMap(r=>[r.source,r.target])],n=[];return o.forEach(r=>{!P(t,r)&&!P(n,r)&&n.push(r)}),n}function M(e){return!!e&&typeof e=="object"&&!Array.isArray(e)}function O(e){return M(e)&&typeof e.name=="string"}function V(e){return!M(e)||e.kind!=="semantic"&&e.kind!=="physical"||(e.kind==="semantic"?[e.datasetId,e.datasetName,e.connectionId]:[e.databaseName,e.schemaName]).some(o=>o!==void 0&&typeof o!="string")?!1:Y.hasCompleteSemaphorSourceIdentity(e)}function $(e,t){var a,l;const o=Array.isArray(t==null?void 0:t.selectedEntities)?t.selectedEntities.filter(O):void 0,n=P(o,e),r=n?{...e,...n}:e,p="domainId"in r&&typeof r.domainId=="string"&&!!r.domainId.trim();if((t==null?void 0:t.mode)==="semanticDomain"&&!p)return;if((t==null?void 0:t.mode)!=="database"&&r.type==="dataset"){const c=se.resolveSemaphorSemanticDatasetEntity({entities:[r],semanticDomainId:t==null?void 0:t.semanticDomainId,connectionId:t==null?void 0:t.connectionId,fieldEntityType:"dataset"},{includePhysicalDatasets:!0});if(c.kind==="resolved"){const d="label"in r&&typeof r.label=="string"?r.label:void 0;return{...c.source,...d?{label:d}:{}}}}if((t==null?void 0:t.mode)==="semanticDomain")return;const i=r.connectionId||(t==null?void 0:t.connectionId),s=r.type==="dataset"&&"table"in r&&r.table?r.table:r.name;if(!i||!s)return;const m={kind:"physical",connectionId:i,connectionType:r.connectionType||(t==null?void 0:t.connectionType),tableName:s,databaseName:r.database||((a=t==null?void 0:t.dbSelection)==null?void 0:a.database),schemaName:r.schema||((l=t==null?void 0:t.dbSelection)==null?void 0:l.schema),dialect:r.dialect};return V(m)?m:void 0}function Ae(e,t){var s,m;const o=$(e,t);if(!o)return;const n=e.type==="dataset"&&"table"in e&&typeof e.table=="string"?e.table.trim():void 0,r=o.kind==="physical"?o.tableName:n,p=e.connectionId||(t==null?void 0:t.connectionId),i=r&&p?{connectionId:p,databaseName:e.database||((s=t==null?void 0:t.dbSelection)==null?void 0:s.database),schemaName:e.schema||((m=t==null?void 0:t.dbSelection)==null?void 0:m.schema),tableName:r}:void 0;return{source:o,...i?{executionTable:i}:{}}}function De(e){const t=M(e.dataSource)?e.dataSource:void 0;if(typeof e.sql=="string"&&e.sql.trim()){const i=[],s=Array.isArray(t==null?void 0:t.selectedEntities)?t.selectedEntities:[];for(const m of s){if(!O(m))continue;const a=Ae(m,t);a&&!i.some(l=>Y.semaphorSourcesReferToSameDataset(l.source,a.source))&&i.push(a)}return{cardId:e.id,kind:"sql",pinnedCatalogSources:i}}if(!M(e.config))return{cardId:e.id,kind:"unconfigured"};const o=[],n=q.inspectMatrixCardConfig(e);if(n.status==="invalid")return{cardId:e.id,kind:"unconfigured"};const r=n.status==="ready"?n.config:void 0;if(e.type==="matrixTable"&&!r)return{cardId:e.id,kind:"unconfigured"};r&&o.push(...q.matrixDefinitionSources(r.spec).filter(V));const p=(r==null?void 0:r.spec.joinPlan)??(M(e.config.joinPlan)?e.config.joinPlan:void 0);if(p){const i=Array.isArray(p.joins)?p.joins:[],s=[p.baseEntity];for(const a of i)M(a)&&s.push(a.source,a.target);let m=!1;for(const a of s){if(!O(a)){m=!0;continue}const l=$(a,t);l?o.push(l):m=!0}m&&(o.length=0)}else if(e.type!=="matrixTable"){const i=Array.isArray(t==null?void 0:t.selectedEntities)?t.selectedEntities:[];if(i.length===1&&O(i[0])){const s=$(i[0],t);s&&o.push(s)}}if(!o.length&&!p&&e.type!=="matrixTable"){const i=e.config.queryBaseSource;V(i)&&o.push(i)}return{cardId:e.id,kind:"config",executableSources:Y.mergeSemaphorSourcesByIdentity(o)}}function ke(e,t){return(e.kind==="config"?e.executableSources:e.kind==="sql"?e.pinnedCatalogSources.map(n=>n.source):[]).some(n=>Y.semaphorSourcesReferToSameDataset(n,t))}function Ie(e,t){if(e.kind==="config")return e.executableSources.find(o=>Y.semaphorSourcesReferToSameDataset(o,t))}function Oe(e,t){var o;return(o=re(e,t))==null?void 0:o.source}function re(e,t){if(e.kind==="sql")return e.pinnedCatalogSources.find(o=>Y.semaphorSourcesReferToSameDataset(o.source,t))}const ie=[{value:"COUNT",label:"Count"},{value:"DISTINCT",label:"Count Distinct"}],Pe=[...ie,{value:"SUM",label:"Sum"},{value:"AVG",label:"Average"},{value:"MIN",label:"Min"},{value:"MAX",label:"Max"},{value:"MEDIAN",label:"Median"}];function $e(e){return Y.normalizeAnalyticsCatalogDataType(e)==="number"?Pe:ie}exports.AUTOMATIC_TEMPORAL_BUCKET_FORMAT=A;exports.SEMAPHOR_CARTESIAN_CHART_TYPES=ee;exports.buildDashboardCardSourceIndex=De;exports.dashboardCardFilterSourceInventoryContains=ke;exports.findDashboardCardExecutableSource=Ie;exports.findDashboardCardPinnedCatalogSource=Oe;exports.findDashboardSqlPinnedCatalogSource=re;exports.findOrphanedJoinPlanEntities=Ee;exports.getFieldAggregationOptions=$e;exports.getTemporalBucketAuthoringOptions=ge;exports.getTemporalBucketAuthoringSelection=ye;exports.isSemaphorCartesianChartType=te;exports.normalizeJoinPlanEntityReferences=Te;exports.previewTemporalBucketAuthoringFormat=oe;exports.reconcileTemporalBucketAuthoringFormat=Ye;exports.resolveDashboardEntitySource=$;exports.resolveTemporalBucketAuthoringFormat=_e;exports.resolveTemporalResultOwner=he;exports.supportsCanonicalDashboardTemporalResult=de;exports.transformComparisonDocument=ue;
1
+ "use strict";const Y=require("./validators-D2F_uxxP.cjs");require("./matrix-operation-contract-thtFuUYf.cjs");const Q=require("./metric-comparison-CAqV6VnZ.cjs"),T=require("./temporal-bucket-4YEPEKlJ.cjs"),W=require("../value-format-preferences/index.cjs"),se=require("./source-entity-resolution-BMKxwdKN.cjs"),q=require("./matrix-card-Dh0J0_Of.cjs"),k=new Set(["previous_period","same_period_last_year","start_vs_end","target"]),ae=new Set([...k,"none",""]);function f(e){return!!e&&typeof e=="object"&&!Array.isArray(e)}function X(e){const t=f(e.preferences)?e.preferences:void 0,o=t&&f(t.kpiVisualOptions)?t.kpiVisualOptions:void 0,n=t&&f(t.tableVisualOptions)?t.tableVisualOptions:void 0;return{preferences:t,kpiOptions:o,kpiComparison:o&&f(o.metricComparison)?o.metricComparison:void 0,kpiComparisonPresent:!!o&&"metricComparison"in o,tableOptions:n,tableComparison:n&&f(n.metricComparison)?n.metricComparison:void 0,tableComparisonPresent:!!n&&"metricComparison"in n}}function F(e){const t=[],o=(n,r)=>{if(Array.isArray(n)){n.forEach((i,s)=>o(i,`${r}[${s}]`));return}if(!f(n))return;const p=n.config;if(f(p)){const i=X(n),s=!!(i.kpiComparisonPresent||i.tableComparisonPresent),m=p.metricColumns,a=Array.isArray(m)?m.flatMap((l,c)=>f(l)?[{index:c,metric:l}]:[]):[];if((a.some(({metric:l})=>"comparisonType"in l)||s)&&t.push({path:r,card:n,metrics:a,malformedMetricIndexes:Array.isArray(m)?m.flatMap((l,c)=>f(l)?[]:[c]):[],malformedMetricColumns:"metricColumns"in p&&!Array.isArray(m),hasLegacyPresentation:s}),"metricColumns"in p||s)return}Object.entries(n).forEach(([i,s])=>o(s,r?`${r}.${i}`:i))};return o(e,"$"),t}const Z={difference:"difference",change:"percent_change",change_difference:"both",ratio:"ratio"};function x(e,t){if(!e)return;const o=Object.fromEntries(t.flatMap(n=>typeof e[n]=="string"?[[n,e[n]]]:[]));return Object.keys(o).length?o:void 0}function ce(e,t,o){if(e!==void 0){if(!f(e)){o.push({severity:"error",code:"invalid_legacy_comparison_presentation",path:t,message:"Legacy comparison formatOptions must be an object."});return}Object.entries(e).forEach(([n,r])=>{if(n==="decimalPlaces"){(typeof r!="number"||!Number.isInteger(r)||r<0||r>6)&&o.push({severity:"error",code:"invalid_legacy_comparison_presentation",path:`${t}.decimalPlaces`,message:"Legacy comparison decimalPlaces must be an integer from 0 through 6."});return}n==="type"&&(r===void 0||r==="auto")||r!==void 0&&o.push({severity:"error",code:"unsupported_comparison_format",path:`${t}.${n}`,message:`Legacy comparison format option "${n}" has no canonical presentation mapping.`})})}}function B(e,t){const o=t==="kpi"?e.calculationType:e.calculatedAs,n=t==="table"&&o===void 0?"both":Z[String(o)],r=f(e.formatOptions)?e.formatOptions:void 0,p=f(e.conditionalLabels)?e.conditionalLabels:void 0,i=f(t==="kpi"?e.colorConfig:e.colors)?t==="kpi"?e.colorConfig:e.colors:void 0,s={};if(n&&(s.displayMode=n),typeof(r==null?void 0:r.decimalPlaces)=="number"&&(s.precision=r.decimalPlaces),t==="kpi"){const l=e.showArrow!==!1,c=e.showColor!==!1;s.indicatorStyle=l?c?"arrow_badge":"arrow":c?"badge":"none",s.showColor=c,(e.position==="left"||e.position==="right"||e.position==="top")&&(s.position=e.position),typeof e.conditionalLabel=="boolean"&&(s.conditionalLabel=e.conditionalLabel),typeof e.labelName=="string"&&(s.labelName=e.labelName)}else(e.indicatorStyle==="arrow_badge"||e.indicatorStyle==="arrow"||e.indicatorStyle==="badge"||e.indicatorStyle==="none")&&(s.indicatorStyle=e.indicatorStyle);const m=p?{...x(p,["increase","decrease"]),...typeof p.noChange=="string"?{neutral:p.noChange}:typeof p.neutral=="string"?{neutral:p.neutral}:{}}:void 0;m&&Object.keys(m).length&&(s.conditionalLabels=m);const a=i?{...x(i,["increase","decrease"]),...typeof i.noChange=="string"?{neutral:i.noChange}:typeof i.neutral=="string"?{neutral:i.neutral}:{}}:void 0;return a&&Object.keys(a).length&&(s.colors=a),s}function U(e){return{...Q.COMPARISON_PRESENTATION_DEFAULTS,...e}}function J(e){return e.some(({metric:t})=>t.comparisonType==="previous_period"||t.comparisonType==="same_period_last_year"||t.comparisonType==="target"?!0:f(t.comparison)&&t.comparison.mode==="explicit")}function w(e){const t=e.card.config;return e.metrics.length===2&&(t.groupByColumns===void 0||Array.isArray(t.groupByColumns)&&t.groupByColumns.length===0)}function j(e,t,o,n){const r=t==="kpi"?["enabled","calculationType","formatOptions","showArrow","showColor","conditionalLabel","labelName","position","conditionalLabels","colorConfig","lowerIsBetter"]:["calculatedAs","indicatorStyle","formatOptions","colors","lowerIsBetter"];Object.keys(e).forEach(l=>{r.includes(l)||n.push({severity:"error",code:"invalid_legacy_comparison_presentation",path:`${o}.${l}`,message:`Unknown legacy comparison presentation field "${l}" cannot be dropped automatically.`})});const p=t==="kpi"?"calculationType":"calculatedAs";e[p]!==void 0&&!Z[String(e[p])]&&n.push({severity:"error",code:"invalid_legacy_comparison_presentation",path:`${o}.${p}`,message:`Legacy comparison ${p} is unsupported.`}),t==="kpi"&&e.position!==void 0&&!["left","right","top"].includes(String(e.position))&&n.push({severity:"error",code:"invalid_legacy_comparison_presentation",path:`${o}.position`,message:"Legacy comparison position is unsupported."}),t==="kpi"&&e.labelName!==void 0&&typeof e.labelName!="string"&&n.push({severity:"error",code:"invalid_legacy_comparison_presentation",path:`${o}.labelName`,message:"Legacy comparison labelName must be a string."}),(t==="kpi"?[["conditionalLabels",["increase","decrease","noChange"]],["colorConfig",["increase","decrease","noChange"]]]:[["colors",["increase","decrease","neutral"]]]).forEach(([l,c])=>{if(e[l]!==void 0){if(!f(e[l])){n.push({severity:"error",code:"invalid_legacy_comparison_presentation",path:`${o}.${l}`,message:`Legacy comparison ${l} must be an object.`});return}Object.entries(e[l]).forEach(([d,b])=>{c.includes(d)?typeof b!="string"&&n.push({severity:"error",code:"invalid_legacy_comparison_presentation",path:`${o}.${l}.${d}`,message:`Legacy comparison ${l}.${d} must be a string.`}):n.push({severity:"error",code:"invalid_legacy_comparison_presentation",path:`${o}.${l}.${d}`,message:`Unknown legacy comparison ${l} field "${d}" cannot be dropped automatically.`})})}}),(t==="kpi"?["enabled","showArrow","showColor","conditionalLabel","lowerIsBetter"]:["lowerIsBetter"]).forEach(l=>{e[l]!==void 0&&typeof e[l]!="boolean"&&n.push({severity:"error",code:"invalid_legacy_comparison_presentation",path:`${o}.${l}`,message:`Legacy comparison ${l} must be a boolean.`})}),t==="table"&&e.indicatorStyle!==void 0&&!["arrow_badge","arrow","badge","none"].includes(String(e.indicatorStyle))&&n.push({severity:"error",code:"invalid_legacy_comparison_presentation",path:`${o}.indicatorStyle`,message:"Legacy comparison indicatorStyle is unsupported."}),ce(e.formatOptions,`${o}.formatOptions`,n);const m=B(e,t);Q.validateComparisonPresentationSpec(m,o).errors.forEach(l=>{n.push({severity:"error",code:"invalid_legacy_comparison_presentation",path:l.path||o,message:l.message})})}function G(e){const t=X(e.card),o=t.kpiComparison?B(t.kpiComparison,"kpi"):void 0,n=t.tableComparison?B(t.tableComparison,"table"):void 0;return{namespaces:t,kpi:o,table:n,presentation:o||n}}function pe(e){const t=f(e.preferences)?e.preferences:{},o=f(t.kpiVisualOptions)?t.kpiVisualOptions:{},n=f(o.metricComparison)?o.metricComparison:{},r=f(t.tableVisualOptions)?t.tableVisualOptions:{},p=f(r.metricComparison)?r.metricComparison:{};return o.lowerIsBetter===!0||n.lowerIsBetter===!0||p.lowerIsBetter===!0?"lower_is_better":"higher_is_better"}function le(e){switch(e.comparisonType){case"previous_period":return{mode:"explicit",spec:{kind:"previous_period"}};case"same_period_last_year":return{mode:"explicit",spec:{kind:"previous_year"}};case"target":return{mode:"explicit",spec:{kind:"target",targetValue:e.targetValue}};default:return}}function me(e){const t=f(e.preferences)?e.preferences:void 0;if(!t)return;const o=f(t.kpiVisualOptions)?t.kpiVisualOptions:void 0;o&&delete o.lowerIsBetter;const n=f(t.tableVisualOptions)?t.tableVisualOptions:void 0,r=n&&f(n.metricComparison)?n.metricComparison:void 0;r&&delete r.lowerIsBetter}function ue(e){const t=F(e);if(!t.length)return{document:e,changed:!1,changes:[],diagnostics:[]};const o=[];if(t.forEach(i=>{var s,m,a,l;if(i.malformedMetricColumns&&o.push({severity:"error",code:"malformed_metric_columns",path:`${i.path}.config.metricColumns`,message:"Metric columns must be an array before comparison migration."}),i.malformedMetricIndexes.forEach(c=>{o.push({severity:"error",code:"malformed_metric_columns",path:`${i.path}.config.metricColumns[${c}]`,message:"Metric columns must contain objects before comparison migration."})}),i.metrics.forEach(({metric:c,index:d})=>{if(!("comparisonType"in c))return;const b=`${i.path}.config.metricColumns[${d}]`,g=String(c.comparisonType||"");"comparison"in c&&o.push({severity:"error",code:"conflicting_comparison_contracts",path:b,message:"Metric contains both legacy and canonical comparison configuration; resolve the conflict before migration."});const y=f(c.parameters)?c.parameters:void 0,C=y&&f(y.windowTransform)?y.windowTransform:void 0;k.has(g)&&(C==null?void 0:C.function)==="previous_period_delta"&&o.push({severity:"error",code:"conflicting_comparison_window_transform",path:b,message:"A metric cannot combine baseline comparison with previous_period_delta; resolve the authoring intent before migration."}),ae.has(g)||o.push({severity:"error",code:"unsupported_comparison_type",path:`${b}.comparisonType`,message:`Unsupported legacy metric comparison type "${g}".`}),c.comparisonType==="target"&&(typeof c.targetValue!="number"||!Number.isFinite(c.targetValue))&&o.push({severity:"error",code:"invalid_target_value",path:`${b}.targetValue`,message:"Legacy target comparison requires a finite metric targetValue."}),c.comparisonType==="start_vs_end"&&o.push({severity:"error",code:"unsupported_start_vs_end",path:`${b}.comparisonType`,message:"start_vs_end is retired and cannot be migrated automatically."}),c.targetValue!==void 0&&c.comparisonType!=="target"&&o.push({severity:"warning",code:"stray_target_value",path:`${b}.targetValue`,message:"Dead non-target targetValue will be removed without changing the baseline."})}),i.hasLegacyPresentation){const{namespaces:c,kpi:d,table:b}=G(i),g=[(s=c.kpiOptions)==null?void 0:s.lowerIsBetter,(m=c.kpiComparison)==null?void 0:m.lowerIsBetter,(a=c.tableComparison)==null?void 0:a.lowerIsBetter].filter(y=>typeof y=="boolean");new Set(g).size>1&&o.push({severity:"error",code:"conflicting_legacy_polarity",path:`${i.path}.preferences`,message:"Legacy comparison polarity values disagree; resolve the conflict before migration."}),((l=c.kpiOptions)==null?void 0:l.lowerIsBetter)!==void 0&&typeof c.kpiOptions.lowerIsBetter!="boolean"&&o.push({severity:"error",code:"invalid_legacy_comparison_presentation",path:`${i.path}.preferences.kpiVisualOptions.lowerIsBetter`,message:"Legacy comparison lowerIsBetter must be a boolean."}),c.kpiComparisonPresent&&!c.kpiComparison&&o.push({severity:"error",code:"invalid_legacy_comparison_presentation",path:`${i.path}.preferences.kpiVisualOptions.metricComparison`,message:"Legacy KPI comparison presentation must be an object."}),c.tableComparisonPresent&&!c.tableComparison&&o.push({severity:"error",code:"invalid_legacy_comparison_presentation",path:`${i.path}.preferences.tableVisualOptions.metricComparison`,message:"Legacy table comparison presentation must be an object."}),"comparisonPresentation"in(c.preferences||{})&&o.push({severity:"error",code:"conflicting_comparison_presentation_contracts",path:`${i.path}.preferences.comparisonPresentation`,message:"Card contains both legacy and canonical comparison presentation; resolve the conflict before migration."}),c.kpiComparison&&typeof c.kpiComparison.enabled=="boolean"&&"metricPairComparisonEnabled"in(c.preferences||{})&&w(i)&&o.push({severity:"error",code:"conflicting_comparison_presentation_contracts",path:`${i.path}.preferences.metricPairComparisonEnabled`,message:"Card contains both legacy and canonical metric-pair enablement; resolve the conflict before migration."}),c.kpiComparison&&j(c.kpiComparison,"kpi",`${i.path}.preferences.kpiVisualOptions.metricComparison`,o),c.tableComparison&&j(c.tableComparison,"table",`${i.path}.preferences.tableVisualOptions.metricComparison`,o),d&&b&&JSON.stringify(U(d))!==JSON.stringify(U(b))&&o.push({severity:"error",code:"conflicting_legacy_presentation_namespaces",path:`${i.path}.preferences`,message:"KPI and table comparison presentation values disagree; resolve the conflict before migration."})}}),o.some(i=>i.severity==="error"))return{document:e,changed:!1,changes:[],diagnostics:o};const n=JSON.parse(JSON.stringify(e)),r=F(n),p=[];return r.forEach(i=>{var m;const s=pe(i.card);if(i.metrics.forEach(({metric:a,index:l})=>{if(!("comparisonType"in a))return;const c=String(a.comparisonType||""),d=`${i.path}.config.metricColumns[${l}]`,b=le(a),g=["comparisonType"];delete a.comparisonType,"targetValue"in a&&(delete a.targetValue,g.push("targetValue")),"comparisonDisplay"in a&&(delete a.comparisonDisplay,g.push("comparisonDisplay")),b?a.comparison=b:delete a.comparison,k.has(c)&&(a.comparisonPolarity=s),p.push({kind:"metric",path:d,metricId:typeof a.id=="string"?a.id:void 0,legacyType:c,comparison:b,comparisonPolarity:k.has(c)?s:void 0,removedFields:g})}),me(i.card),i.hasLegacyPresentation){const{namespaces:a,presentation:l}=G(i),c=(m=a.kpiComparison)==null?void 0:m.enabled,d={...l};typeof c=="boolean"&&J(i.metrics)&&(d.showComparison=c);const b=typeof c=="boolean"&&w(i)?c:void 0,g=typeof c=="boolean"&&!J(i.metrics)&&!w(i)?["kpiVisualOptions.metricComparison.enabled"]:void 0,y=a.preferences,C=[];i.metrics.forEach(({metric:D})=>{"comparisonPolarity"in D||(D.comparisonPolarity=s,typeof D.id=="string"&&C.push(D.id))}),Object.keys(d).length&&(y.comparisonPresentation=d),b!==void 0&&(y.metricPairComparisonEnabled=b),a.kpiOptions&&delete a.kpiOptions.metricComparison,a.tableOptions&&delete a.tableOptions.metricComparison,p.push({kind:"presentation",path:`${i.path}.preferences`,comparisonPresentation:Object.keys(d).length?d:void 0,metricPairComparisonEnabled:b,comparisonPolarityMetricIds:C,intentionallyDiscardedFields:g,removedFields:[...a.kpiComparison?["kpiVisualOptions.metricComparison"]:[],...a.tableComparison?["tableVisualOptions.metricComparison"]:[]]})}}),{document:n,changed:!0,changes:p,diagnostics:o}}const ee=["bar","horizontalBar","line","area","stackedArea","combo","stackedBar","stackedLine"],fe=new Set(ee);function te(e){return typeof e=="string"&&fe.has(e)}function de(e){return e==="detailTable"||e==="table"||e==="aggregateTable"||e==="pivotTable"||e==="custom"||te(e)}function z(e){return!!(e!=null&&e.trim())}function he(e){return z(e.sql)||z(e.normalizedPython)?"freeform":e.hasExecutableConfig?"config":"none"}const A={type:"temporal_bucket",presentation:{mode:"auto"}},_={value:"auto",label:"Automatic",format:A};function h(e,t){return{value:`pattern:${e}`,label:t,format:{type:"temporal_bucket",presentation:{mode:"pattern",pattern:e}}}}function E(e,t){return{value:`preset:${e}`,label:t,format:{type:"temporal_bucket",presentation:{mode:"preset",preset:e}}}}function v(e){return{...h(e,"Custom format…"),value:"custom",custom:!0}}const H={second:[_,h("HH:mm:ss","14:30:45 (HH:mm:ss)"),h("YYYY-MM-DD HH:mm:ss","2024-01-15 14:30:45 (YYYY-MM-DD HH:mm:ss)"),v("DD/MM/YYYY HH:mm:ss")],minute:[_,h("HH:mm","14:30 (HH:mm)"),h("YYYY-MM-DD HH:mm","2024-01-15 14:30 (YYYY-MM-DD HH:mm)"),v("DD/MM/YYYY HH:mm")],hour:[_,h("HH","14 (HH)"),h("YYYY-MM-DD HH","2024-01-15 14 (YYYY-MM-DD HH)"),v("DD/MM/YYYY HH")],day:[_,h("YYYY-MM-DD","2024-01-15 (YYYY-MM-DD)"),h("MM/DD/YYYY","01/15/2024 (MM/DD/YYYY)"),h("DD/MM/YYYY","15/01/2024 (DD/MM/YYYY)"),h("MMM DD, YYYY","Jan 15, 2024 (MMM DD, YYYY)"),h("MMMM DD, YYYY","January 15, 2024 (MMMM DD, YYYY)"),v("YYYY/MM/DD")],week:[_,E("week_of_short","Week of Jan 15, 2024"),E("week_of_long","Week of January 15, 2024"),h("YYYY-MM-DD","2024-01-15 (YYYY-MM-DD)"),v("YYYY/MM/DD")],month:[_,h("MMM YYYY","Jan 2024 (MMM YYYY)"),h("MMMM YYYY","January 2024 (MMMM YYYY)"),h("YYYY-MM","2024-01 (YYYY-MM)"),h("MM/YYYY","01/2024 (MM/YYYY)"),h("YYYY MMM","2024 Jan (YYYY MMM)"),v("YYYY/MM")],quarter:[_,E("quarter_short","Q1 2024"),E("quarter_long","1st Quarter 2024")],year:[_,h("YYYY","2024 (YYYY)"),h("YY","24 (YY)")]},be={second:"2026-07-31T14:05:09",minute:"2026-07-31T14:05:00",hour:"2026-07-31T14:00:00",day:"2026-07-31",week:"2026-07-27",month:"2026-07-01",quarter:"2026-07-01",year:"2026-01-01"};function oe(e,t,o=W.DEFAULT_RESOLVED_VALUE_FORMAT_PREFERENCES){return T.formatTemporalBucket({value:be[t],metadata:{kind:"temporal_bucket",granularity:t,calendar:{tz:"UTC",weekStart:1,...e.presentation.mode==="preset"&&(e.presentation.preset==="fiscal_quarter_short"||e.presentation.preset==="fiscal_year")?{fiscalCalendar:{kind:"month_aligned",yearStartMonth:7}}:{}}},format:e.presentation.mode==="auto"?{type:"temporal_bucket",locale:o.locale,presentation:{mode:"auto",styles:{dateStyle:o.dateStyle,dateTime:{...o.dateTime}}}}:{type:"temporal_bucket",locale:o.locale,presentation:e.presentation}})}function ge(e,t,o=W.DEFAULT_RESOLVED_VALUE_FORMAT_PREFERENCES){const n=H[e],r=(t==null?void 0:t.presentation.mode)==="preset"?t.presentation.preset:void 0,p=r&&t&&T.validateTemporalBucketFormatApplicability(t,e).ok&&!n.some(s=>{var m;return((m=s.format)==null?void 0:m.presentation.mode)==="preset"&&s.format.presentation.preset===r})?E(r,r):void 0;return(p?[...n,p]:n).map(s=>{if(!s.format||s.custom)return s;const m=oe(s.format,e,o);return s.format.presentation.mode==="pattern"?{...s,label:`${m} (${s.format.presentation.pattern})`}:s.format.presentation.mode==="auto"?{...s,label:`Automatic (${m})`}:{...s,label:m}})}function ye(e,t){const o=H[t];if(e.presentation.mode==="pattern"){const n=e.presentation.pattern,r=o.find(p=>{var i;return((i=p.format)==null?void 0:i.presentation.mode)==="pattern"&&p.format.presentation.pattern===n});return{value:(r==null?void 0:r.value)??"custom",customPattern:r!=null&&r.custom||!r?n:"",format:e}}if(e.presentation.mode==="preset"){const n=e.presentation.preset,r=o.find(i=>{var s;return((s=i.format)==null?void 0:s.presentation.mode)==="preset"&&i.format.presentation.preset===n}),p=T.validateTemporalBucketFormatApplicability(e,t).ok;return r?{value:r.value,customPattern:"",format:e}:p?{value:`preset:${n}`,customPattern:"",format:e}:{value:"auto",customPattern:"",format:A}}return{value:"auto",customPattern:"",format:e}}function _e(e,t,o=""){var i;const n=H[e].find(s=>s.value===t),r=t.startsWith("preset:")?t.slice(7):void 0,p=t==="custom"?{type:"temporal_bucket",presentation:{mode:"pattern",pattern:o.trim()||(((i=n==null?void 0:n.format)==null?void 0:i.presentation.mode)==="pattern"?n.format.presentation.pattern:"")}}:(n==null?void 0:n.format)??(r&&T.isTemporalBucketPreset(r)?{type:"temporal_bucket",presentation:{mode:"preset",preset:r}}:void 0);return!p||!T.validateTemporalBucketFormatApplicability(p,e).ok?A:p}function Ye(e,t){return T.validateTemporalBucketFormatApplicability(e,t).ok?e:A}function u(e){return typeof e=="string"&&e.trim().length>0?e.trim():null}function ne(e){return Array.from(new Set(e.filter(t=>!!t)))}function Ce(e){const t=u(e.table),o=u(e.schema),n=u(e.catalog)||u(e.database);return t?ne([t,o?`${o}.${t}`:null,n?`${n}.${t}`:null,n&&o?`${n}.${o}.${t}`:null]):[]}function K(e){const t=u(e.table)||u(e.tableName);return ne([u(e.name),u(e.alias),...Ce({table:t,schema:u(e.schema)||u(e.schemaName),catalog:u(e.catalog),database:u(e.database)||u(e.databaseName)})])}function ve(e,t){const o=u(e.domainId),n=u(t.domainId);if(o&&n&&o!==n)return!0;if(e.type==="dataset")return!1;const r=u(e.id),p=u(t.id);if(r&&p&&r!==p)return!0;const i=u(e.connectionId),s=u(t.connectionId);return!!(i&&s&&i!==s)}function L(e,t=!1){return u(e.table)||u(e.tableName)||(e.type!=="dataset"||t?u(e.name):null)}function R(e){return u(e.catalog)||u(e.database)||u(e.databaseName)}function S(e){return u(e.schema)||u(e.schemaName)}function I(e){return e.length===1?e[0]:void 0}function Me(e,t){const o=L(t,!0),n=R(t),r=S(t);if(!(!o||!n&&!r))return I(e.filter(p=>{const i=p;return!(L(i)!==o||n&&R(i)!==n||r&&S(i)!==r)}))}function P(e,t){if(!t||!(e!=null&&e.length))return;const o=e.filter(s=>!ve(s,t));if(t.type==="dataset"){const s=u(t.id);if(s)return I(o.filter(a=>a.type==="dataset"&&u(a.id)===s));if(u(t.domainId)){const a=u(t.name);return I(o.filter(l=>l.type==="dataset"&&u(l.name)===a))}}let n=[];if(t.type==="dataset"){const s=u(t.name);if(n=o.filter(m=>m.type==="dataset"&&u(m.name)===s),n.length===1)return n[0]}if(!!(L(t,!0)&&(R(t)||S(t))))return Me(o,t);if(n.length>1)return;const p=K(t);if(p.length===0)return;const i=o.filter(s=>K(s).some(a=>p.includes(a)));return I(i)}function N(e,t){const o=P(e,t);return o?{...t,...o}:t}function Te(e,t){const o=t||[];return o.length===0?e:{...e,baseEntity:N(o,e.baseEntity),joins:e.joins.map(n=>({...n,source:N(o,n.source),target:N(o,n.target)}))}}function Ee(e,t){if(!(e!=null&&e.joins.length))return[];const o=[e.baseEntity,...e.joins.flatMap(r=>[r.source,r.target])],n=[];return o.forEach(r=>{!P(t,r)&&!P(n,r)&&n.push(r)}),n}function M(e){return!!e&&typeof e=="object"&&!Array.isArray(e)}function O(e){return M(e)&&typeof e.name=="string"}function V(e){return!M(e)||e.kind!=="semantic"&&e.kind!=="physical"||(e.kind==="semantic"?[e.datasetId,e.datasetName,e.connectionId]:[e.databaseName,e.schemaName]).some(o=>o!==void 0&&typeof o!="string")?!1:Y.hasCompleteSemaphorSourceIdentity(e)}function $(e,t){var a,l;const o=Array.isArray(t==null?void 0:t.selectedEntities)?t.selectedEntities.filter(O):void 0,n=P(o,e),r=n?{...e,...n}:e,p="domainId"in r&&typeof r.domainId=="string"&&!!r.domainId.trim();if((t==null?void 0:t.mode)==="semanticDomain"&&!p)return;if((t==null?void 0:t.mode)!=="database"&&r.type==="dataset"){const c=se.resolveSemaphorSemanticDatasetEntity({entities:[r],semanticDomainId:t==null?void 0:t.semanticDomainId,connectionId:t==null?void 0:t.connectionId,fieldEntityType:"dataset"},{includePhysicalDatasets:!0});if(c.kind==="resolved"){const d="label"in r&&typeof r.label=="string"?r.label:void 0;return{...c.source,...d?{label:d}:{}}}}if((t==null?void 0:t.mode)==="semanticDomain")return;const i=r.connectionId||(t==null?void 0:t.connectionId),s=r.type==="dataset"&&"table"in r&&r.table?r.table:r.name;if(!i||!s)return;const m={kind:"physical",connectionId:i,connectionType:r.connectionType||(t==null?void 0:t.connectionType),tableName:s,databaseName:r.database||((a=t==null?void 0:t.dbSelection)==null?void 0:a.database),schemaName:r.schema||((l=t==null?void 0:t.dbSelection)==null?void 0:l.schema),dialect:r.dialect};return V(m)?m:void 0}function Ae(e,t){var s,m;const o=$(e,t);if(!o)return;const n=e.type==="dataset"&&"table"in e&&typeof e.table=="string"?e.table.trim():void 0,r=o.kind==="physical"?o.tableName:n,p=e.connectionId||(t==null?void 0:t.connectionId),i=r&&p?{connectionId:p,databaseName:e.database||((s=t==null?void 0:t.dbSelection)==null?void 0:s.database),schemaName:e.schema||((m=t==null?void 0:t.dbSelection)==null?void 0:m.schema),tableName:r}:void 0;return{source:o,...i?{executionTable:i}:{}}}function De(e){const t=M(e.dataSource)?e.dataSource:void 0;if(typeof e.sql=="string"&&e.sql.trim()){const i=[],s=Array.isArray(t==null?void 0:t.selectedEntities)?t.selectedEntities:[];for(const m of s){if(!O(m))continue;const a=Ae(m,t);a&&!i.some(l=>Y.semaphorSourcesReferToSameDataset(l.source,a.source))&&i.push(a)}return{cardId:e.id,kind:"sql",pinnedCatalogSources:i}}if(!M(e.config))return{cardId:e.id,kind:"unconfigured"};const o=[],n=q.inspectMatrixCardConfig(e);if(n.status==="invalid")return{cardId:e.id,kind:"unconfigured"};const r=n.status==="ready"?n.config:void 0;if(e.type==="matrixTable"&&!r)return{cardId:e.id,kind:"unconfigured"};r&&o.push(...q.matrixDefinitionSources(r.spec).filter(V));const p=(r==null?void 0:r.spec.joinPlan)??(M(e.config.joinPlan)?e.config.joinPlan:void 0);if(p){const i=Array.isArray(p.joins)?p.joins:[],s=[p.baseEntity];for(const a of i)M(a)&&s.push(a.source,a.target);let m=!1;for(const a of s){if(!O(a)){m=!0;continue}const l=$(a,t);l?o.push(l):m=!0}m&&(o.length=0)}else if(e.type!=="matrixTable"){const i=Array.isArray(t==null?void 0:t.selectedEntities)?t.selectedEntities:[];if(i.length===1&&O(i[0])){const s=$(i[0],t);s&&o.push(s)}}if(!o.length&&!p&&e.type!=="matrixTable"){const i=e.config.queryBaseSource;V(i)&&o.push(i)}return{cardId:e.id,kind:"config",executableSources:Y.mergeSemaphorSourcesByIdentity(o)}}function ke(e,t){return(e.kind==="config"?e.executableSources:e.kind==="sql"?e.pinnedCatalogSources.map(n=>n.source):[]).some(n=>Y.semaphorSourcesReferToSameDataset(n,t))}function Ie(e,t){if(e.kind==="config")return e.executableSources.find(o=>Y.semaphorSourcesReferToSameDataset(o,t))}function Oe(e,t){var o;return(o=re(e,t))==null?void 0:o.source}function re(e,t){if(e.kind==="sql")return e.pinnedCatalogSources.find(o=>Y.semaphorSourcesReferToSameDataset(o.source,t))}const ie=[{value:"COUNT",label:"Count"},{value:"DISTINCT",label:"Count Distinct"}],Pe=[...ie,{value:"SUM",label:"Sum"},{value:"AVG",label:"Average"},{value:"MIN",label:"Min"},{value:"MAX",label:"Max"},{value:"MEDIAN",label:"Median"}];function $e(e){return Y.normalizeAnalyticsCatalogDataType(e)==="number"?Pe:ie}exports.AUTOMATIC_TEMPORAL_BUCKET_FORMAT=A;exports.SEMAPHOR_CARTESIAN_CHART_TYPES=ee;exports.buildDashboardCardSourceIndex=De;exports.dashboardCardFilterSourceInventoryContains=ke;exports.findDashboardCardExecutableSource=Ie;exports.findDashboardCardPinnedCatalogSource=Oe;exports.findDashboardSqlPinnedCatalogSource=re;exports.findOrphanedJoinPlanEntities=Ee;exports.getFieldAggregationOptions=$e;exports.getTemporalBucketAuthoringOptions=ge;exports.getTemporalBucketAuthoringSelection=ye;exports.isSemaphorCartesianChartType=te;exports.normalizeJoinPlanEntityReferences=Te;exports.previewTemporalBucketAuthoringFormat=oe;exports.reconcileTemporalBucketAuthoringFormat=Ye;exports.resolveDashboardEntitySource=$;exports.resolveTemporalBucketAuthoringFormat=_e;exports.resolveTemporalResultOwner=he;exports.supportsCanonicalDashboardTemporalResult=de;exports.transformComparisonDocument=ue;
@@ -1,10 +1,10 @@
1
- import { x as ee, aX as A, q as te, ah as oe } from "./validators-CvLOGzT3.js";
2
- import "./matrix-operation-contract-BFumahBa.js";
3
- import { f as ne, C as ie } from "./metric-comparison-Df3HmmUE.js";
1
+ import { A as ee, a_ as D, u as te, ak as oe } from "./validators-CHlnnHuS.js";
2
+ import "./matrix-operation-contract-CPgckXxm.js";
3
+ import { f as ne, C as ie } from "./metric-comparison-Dgyq1I3d.js";
4
4
  import { v as O, a as re, f as se } from "./temporal-bucket-B9hMwemw.js";
5
5
  import { DEFAULT_RESOLVED_VALUE_FORMAT_PREFERENCES as Q } from "../value-format-preferences/index.js";
6
- import { m as ae } from "./source-entity-resolution-DX9C1ebK.js";
7
- import { i as ce, a as pe } from "./matrix-card-DGpXdK_Y.js";
6
+ import { m as ae } from "./source-entity-resolution-BSZ07Sl6.js";
7
+ import { i as ce, a as pe } from "./matrix-card-BVvKHL7s.js";
8
8
  const E = /* @__PURE__ */ new Set([
9
9
  "previous_period",
10
10
  "same_period_last_year",
@@ -703,7 +703,7 @@ function ve(e, t) {
703
703
  })
704
704
  );
705
705
  }
706
- function D(e, t) {
706
+ function A(e, t) {
707
707
  if (!t || !(e != null && e.length))
708
708
  return;
709
709
  const o = e.filter(
@@ -749,7 +749,7 @@ function D(e, t) {
749
749
  return I(r);
750
750
  }
751
751
  function w(e, t) {
752
- const o = D(e, t);
752
+ const o = A(e, t);
753
753
  return o ? { ...t, ...o } : t;
754
754
  }
755
755
  function Se(e, t) {
@@ -772,7 +772,7 @@ function xe(e, t) {
772
772
  ...e.joins.flatMap((i) => [i.source, i.target])
773
773
  ], n = [];
774
774
  return o.forEach((i) => {
775
- !D(t, i) && !D(n, i) && n.push(i);
775
+ !A(t, i) && !A(n, i) && n.push(i);
776
776
  }), n;
777
777
  }
778
778
  function v(e) {
@@ -790,7 +790,7 @@ function H(e) {
790
790
  }
791
791
  function R(e, t) {
792
792
  var a, l;
793
- const o = Array.isArray(t == null ? void 0 : t.selectedEntities) ? t.selectedEntities.filter(k) : void 0, n = D(o, e), i = n ? { ...e, ...n } : e, p = "domainId" in i && typeof i.domainId == "string" && !!i.domainId.trim();
793
+ const o = Array.isArray(t == null ? void 0 : t.selectedEntities) ? t.selectedEntities.filter(k) : void 0, n = A(o, e), i = n ? { ...e, ...n } : e, p = "domainId" in i && typeof i.domainId == "string" && !!i.domainId.trim();
794
794
  if ((t == null ? void 0 : t.mode) === "semanticDomain" && !p)
795
795
  return;
796
796
  if ((t == null ? void 0 : t.mode) !== "database" && i.type === "dataset") {
@@ -847,7 +847,7 @@ function qe(e) {
847
847
  if (!k(m)) continue;
848
848
  const a = Me(m, t);
849
849
  a && !r.some(
850
- (l) => A(
850
+ (l) => D(
851
851
  l.source,
852
852
  a.source
853
853
  )
@@ -900,13 +900,13 @@ function qe(e) {
900
900
  }
901
901
  function je(e, t) {
902
902
  return (e.kind === "config" ? e.executableSources : e.kind === "sql" ? e.pinnedCatalogSources.map((n) => n.source) : []).some(
903
- (n) => A(n, t)
903
+ (n) => D(n, t)
904
904
  );
905
905
  }
906
906
  function Je(e, t) {
907
907
  if (e.kind === "config")
908
908
  return e.executableSources.find(
909
- (o) => A(o, t)
909
+ (o) => D(o, t)
910
910
  );
911
911
  }
912
912
  function Ue(e, t) {
@@ -916,7 +916,7 @@ function Ue(e, t) {
916
916
  function Te(e, t) {
917
917
  if (e.kind === "sql")
918
918
  return e.pinnedCatalogSources.find(
919
- (o) => A(o.source, t)
919
+ (o) => D(o.source, t)
920
920
  );
921
921
  }
922
922
  const Z = [
@@ -1 +1 @@
1
- "use strict";require("../value-format-preferences/index.cjs");const h=require("./validators-mhiJSia7.cjs"),w={mode:"all"},f={includeMetricFilterDatasets:!0,preferQualifiedIdentity:!1};function N(e){if(!e)return;if(e.kind==="semantic")return{entityName:e.datasetName,entityId:e.datasetId,label:e.label};const t=[e.databaseName,e.schemaName,e.tableName].filter(i=>!!(i&&i.trim())).join(".");return{entityName:e.tableName,qualifiedEntityName:t.includes(".")?t:void 0,label:e.label}}function b(e){var i;const t=N(e.source);return t?`${(i=e.source)==null?void 0:i.kind}:${t.qualifiedEntityName||t.entityName}`:""}function A(e){return[e.id,e.qualifiedEntityName,e.entityId,e.entityName,e.qualifiedFieldName,e.name,b(e)].join("|")}function O(e){return[e.entityName,e.qualifiedEntityName||"",e.entityId||""].join("|")}function x(e){return e.entityName||e.qualifiedEntityName||""}function g(e){var t,i;return!!(e.expression||e.derivedField||(i=(t=e.calculatedFormula)==null?void 0:t.inputFields)!=null&&i.length)}function C(e){return h.hasSyntheticCalculatedFieldOwner(e)?!0:e.entityName||e.qualifiedEntityName?!1:!e.source||g(e)}function y(e,t){const i=O(t);e.found.has(i)||e.found.set(i,t)}function d(e,t){var D,v,S;if(!e)return;const i=A(e);if(t.visitedFields.has(i))return;t.visitedFields.add(i);const n=C(e);if(!n){const u=!e.entityName&&!e.qualifiedEntityName?N(e.source):void 0;y(t,u||{entityName:e.entityName||"",entityId:e.entityId,qualifiedEntityName:e.qualifiedEntityName,label:e.source&&e.source.kind==="semantic"?e.source.label:void 0})}t.includeMetricFilterDatasets&&"parameters"in e&&((D=e.parameters)!=null&&D.filters)&&F(e.parameters.filters,t);const l=(v=e.calculatedFormula)==null?void 0:v.inputFields,a=!!(l&&l.length>0);a&&l.forEach(u=>d(u,t));let r=!1,s=!1;const c=a||(S=e.derivedField)==null?void 0:S.inputs;if(c&&Object.keys(c).length>0)for(const u of Object.values(c)){const o=u.field.source;if(!o){a||(s=!0);continue}if(o.kind==="sql"){s=!0;continue}if(o.kind==="semantic")y(t,{entityName:o.datasetName,entityId:o.datasetId,label:o.label});else{const I=[o.databaseName,o.schemaName,o.tableName].filter(q=>!!(q&&q.trim())).join(".");y(t,{entityName:o.tableName,qualifiedEntityName:I.includes(".")?I:void 0,label:o.label})}r=!0}s&&(t.complete=!1),n&&!a&&!r&&(t.complete=!1)}function F(e,t){if(e&&!t.visitedGroups.has(e.id)){t.visitedGroups.add(e.id);for(const i of e.conditions||[])d(i.field,t);for(const i of e.groups||[])F(i,t)}}function m(e,t=new Set,i=new Set){return{found:new Map,complete:!0,visitedFields:t,visitedGroups:i,includeMetricFilterDatasets:e}}function p(e,t){var n;const i=(n=e.qualifiedEntityName)!=null&&n.includes(".")?e.qualifiedEntityName:void 0;return t==="qualifiedOnly"?i:t==="preferQualified"?i||e.entityName||void 0:e.entityName||void 0}function M(e){const t=m(!1);return d(e,t),{datasets:Array.from(t.found.values()),complete:t.complete}}function E(e,t,i=new Set,n=new Set,l=f){const a={...f,...l},r=m(a.includeMetricFilterDatasets,i,n);d(e,r),r.found.forEach(s=>{const c=p(s,a.preferQualifiedIdentity?"preferQualified":"name");c&&t.add(c)})}function _(e,t){E(e,t,new Set,new Set,{preferQualifiedIdentity:!0})}function k(e,t,i=new Set,n=new Set){const l=m(!0,i,n);d(e,l),l.found.forEach(a=>{const r=p(a,"qualifiedOnly");r&&t.add(r)})}function Q(e,t,i=new Set,n=new Set){E(e,t,i,n,{includeMetricFilterDatasets:!1})}function T(e,t,i=new Set,n=new Set,l=f){const a={...f,...l},r=m(a.includeMetricFilterDatasets,i,n);F(e,r),r.found.forEach(s=>{const c=p(s,a.preferQualifiedIdentity?"preferQualified":"name");c&&t.add(c)})}function j(e,t){return t!=null&&t[e]?t[e]:(e.includes(".")?e.slice(e.lastIndexOf(".")+1):e).replace(/[_-]+/g," ").replace(/([a-z])([A-Z])/g,"$1 $2").replace(/\s+/g," ").trim().replace(/\b\w/g,n=>n.toUpperCase())}exports.DEFAULT_SEMANTIC_DOMAIN_ACCESS=w;exports.collectDatasetNamesFromExplorerField=E;exports.collectDatasetNamesFromFilterGroup=T;exports.collectExecutionDatasetNamesFromExplorerField=Q;exports.collectPreferredDatasetNamesFromExplorerField=_;exports.collectQualifiedDatasetNamesFromExplorerField=k;exports.datasetRefFromSource=N;exports.dependencyDisplayIdentity=x;exports.humanizeDatasetName=j;exports.resolveFieldDatasetDependencies=M;
1
+ "use strict";require("../value-format-preferences/index.cjs");const h=require("./validators-D2F_uxxP.cjs"),w={mode:"all"},f={includeMetricFilterDatasets:!0,preferQualifiedIdentity:!1};function N(e){if(!e)return;if(e.kind==="semantic")return{entityName:e.datasetName,entityId:e.datasetId,label:e.label};const t=[e.databaseName,e.schemaName,e.tableName].filter(i=>!!(i&&i.trim())).join(".");return{entityName:e.tableName,qualifiedEntityName:t.includes(".")?t:void 0,label:e.label}}function b(e){var i;const t=N(e.source);return t?`${(i=e.source)==null?void 0:i.kind}:${t.qualifiedEntityName||t.entityName}`:""}function A(e){return[e.id,e.qualifiedEntityName,e.entityId,e.entityName,e.qualifiedFieldName,e.name,b(e)].join("|")}function O(e){return[e.entityName,e.qualifiedEntityName||"",e.entityId||""].join("|")}function x(e){return e.entityName||e.qualifiedEntityName||""}function g(e){var t,i;return!!(e.expression||e.derivedField||(i=(t=e.calculatedFormula)==null?void 0:t.inputFields)!=null&&i.length)}function C(e){return h.hasSyntheticCalculatedFieldOwner(e)?!0:e.entityName||e.qualifiedEntityName?!1:!e.source||g(e)}function y(e,t){const i=O(t);e.found.has(i)||e.found.set(i,t)}function d(e,t){var D,v,S;if(!e)return;const i=A(e);if(t.visitedFields.has(i))return;t.visitedFields.add(i);const n=C(e);if(!n){const u=!e.entityName&&!e.qualifiedEntityName?N(e.source):void 0;y(t,u||{entityName:e.entityName||"",entityId:e.entityId,qualifiedEntityName:e.qualifiedEntityName,label:e.source&&e.source.kind==="semantic"?e.source.label:void 0})}t.includeMetricFilterDatasets&&"parameters"in e&&((D=e.parameters)!=null&&D.filters)&&F(e.parameters.filters,t);const l=(v=e.calculatedFormula)==null?void 0:v.inputFields,a=!!(l&&l.length>0);a&&l.forEach(u=>d(u,t));let r=!1,s=!1;const c=a||(S=e.derivedField)==null?void 0:S.inputs;if(c&&Object.keys(c).length>0)for(const u of Object.values(c)){const o=u.field.source;if(!o){a||(s=!0);continue}if(o.kind==="sql"){s=!0;continue}if(o.kind==="semantic")y(t,{entityName:o.datasetName,entityId:o.datasetId,label:o.label});else{const I=[o.databaseName,o.schemaName,o.tableName].filter(q=>!!(q&&q.trim())).join(".");y(t,{entityName:o.tableName,qualifiedEntityName:I.includes(".")?I:void 0,label:o.label})}r=!0}s&&(t.complete=!1),n&&!a&&!r&&(t.complete=!1)}function F(e,t){if(e&&!t.visitedGroups.has(e.id)){t.visitedGroups.add(e.id);for(const i of e.conditions||[])d(i.field,t);for(const i of e.groups||[])F(i,t)}}function m(e,t=new Set,i=new Set){return{found:new Map,complete:!0,visitedFields:t,visitedGroups:i,includeMetricFilterDatasets:e}}function p(e,t){var n;const i=(n=e.qualifiedEntityName)!=null&&n.includes(".")?e.qualifiedEntityName:void 0;return t==="qualifiedOnly"?i:t==="preferQualified"?i||e.entityName||void 0:e.entityName||void 0}function M(e){const t=m(!1);return d(e,t),{datasets:Array.from(t.found.values()),complete:t.complete}}function E(e,t,i=new Set,n=new Set,l=f){const a={...f,...l},r=m(a.includeMetricFilterDatasets,i,n);d(e,r),r.found.forEach(s=>{const c=p(s,a.preferQualifiedIdentity?"preferQualified":"name");c&&t.add(c)})}function _(e,t){E(e,t,new Set,new Set,{preferQualifiedIdentity:!0})}function k(e,t,i=new Set,n=new Set){const l=m(!0,i,n);d(e,l),l.found.forEach(a=>{const r=p(a,"qualifiedOnly");r&&t.add(r)})}function Q(e,t,i=new Set,n=new Set){E(e,t,i,n,{includeMetricFilterDatasets:!1})}function T(e,t,i=new Set,n=new Set,l=f){const a={...f,...l},r=m(a.includeMetricFilterDatasets,i,n);F(e,r),r.found.forEach(s=>{const c=p(s,a.preferQualifiedIdentity?"preferQualified":"name");c&&t.add(c)})}function j(e,t){return t!=null&&t[e]?t[e]:(e.includes(".")?e.slice(e.lastIndexOf(".")+1):e).replace(/[_-]+/g," ").replace(/([a-z])([A-Z])/g,"$1 $2").replace(/\s+/g," ").trim().replace(/\b\w/g,n=>n.toUpperCase())}exports.DEFAULT_SEMANTIC_DOMAIN_ACCESS=w;exports.collectDatasetNamesFromExplorerField=E;exports.collectDatasetNamesFromFilterGroup=T;exports.collectExecutionDatasetNamesFromExplorerField=Q;exports.collectPreferredDatasetNamesFromExplorerField=_;exports.collectQualifiedDatasetNamesFromExplorerField=k;exports.datasetRefFromSource=N;exports.dependencyDisplayIdentity=x;exports.humanizeDatasetName=j;exports.resolveFieldDatasetDependencies=M;
@@ -1,5 +1,5 @@
1
1
  import "../value-format-preferences/index.js";
2
- import { e as q } from "./validators-CvLOGzT3.js";
2
+ import { f as q } from "./validators-CHlnnHuS.js";
3
3
  const M = {
4
4
  mode: "all"
5
5
  }, f = {
@@ -1,21 +1,21 @@
1
1
  var tt = Object.defineProperty;
2
2
  var rt = (e, r, t) => r in e ? tt(e, r, { enumerable: !0, configurable: !0, writable: !0, value: t }) : e[r] = t;
3
3
  var F = (e, r, t) => rt(e, typeof r != "symbol" ? r + "" : r, t);
4
- import { s as X, k as G, l as nt, R as ot, q as at, p as xe, b as it } from "./raw-temporal-T3PEaGmJ.js";
5
- import { ah as $e, a1 as ct, a3 as ie, X as ke, o as lt } from "./validators-CvLOGzT3.js";
4
+ import { s as J, k as G, l as nt, R as ot, q as at, p as xe, b as it } from "./raw-temporal-DfnRBxQn.js";
5
+ import { ak as $e, a4 as ct, a6 as ie, _ as ke, t as lt } from "./validators-CHlnnHuS.js";
6
6
  import "./matrix-continuation-C4sRcjZU.js";
7
- import "./matrix-operation-contract-BFumahBa.js";
7
+ import "./matrix-operation-contract-CPgckXxm.js";
8
8
  import { DEFAULT_RESOLVED_VALUE_FORMAT_PREFERENCES as se } from "../value-format-preferences/index.js";
9
- import { j as dt, h as st, e as mt, i as ut, d as ft, M as pt, c as yt, b as ht, P as j } from "./pivot-result-lifecycle-DVPJg7Gg.js";
9
+ import { j as dt, h as st, e as mt, i as ut, d as ft, M as pt, c as yt, b as ht, P as j } from "./pivot-result-lifecycle-DpSZOMOZ.js";
10
10
  import { z as E } from "zod";
11
- import { r as gt } from "./matrix-definition-AP5W3wGc.js";
12
- import { h as Ee, i as me, r as Se, a as _e, v as vt, b as bt } from "./constants-CKoIADZx.js";
13
- import { r as It } from "./matrix-card-DGpXdK_Y.js";
14
- import { r as V, c as wt, b as Ct, P as Tt } from "./pivot-result-identity-DBeK76wx.js";
15
- import { v as xt, a as $t } from "./temporal-bucket-contract-lq7Jrif0.js";
11
+ import { r as gt } from "./matrix-definition-BEXCfZAe.js";
12
+ import { h as Ee, i as me, r as Se, a as _e, v as vt, b as bt } from "./constants-CTRduy1g.js";
13
+ import { r as It } from "./matrix-card-BVvKHL7s.js";
14
+ import { r as V, c as wt, b as Ct, P as Tt } from "./pivot-result-identity-Be1zm0AV.js";
15
+ import { v as xt, a as $t } from "./temporal-bucket-contract-_WCvDnvn.js";
16
16
  import { f as kt, b as Et, d as Fe, D as St } from "./temporal-bucket-B9hMwemw.js";
17
- import { r as Re, s as _t, i as Ft } from "./field-aggregations-CxJWY4Ny.js";
18
- import { v as Ae } from "./raw-temporal-contract-Ck5vJoQ6.js";
17
+ import { r as Re, s as _t, i as Ft } from "./field-aggregations-tLaXZ2VJ.js";
18
+ import { v as Ae } from "./raw-temporal-contract-CNwYygW2.js";
19
19
  import { r as Rt, a as At, b as Pt } from "./canonical-result-keys-CEQefvdO.js";
20
20
  const Mt = `import pandas as pd
21
21
  df = pd.DataFrame(data) # 'data' contains the query result
@@ -32,7 +32,7 @@ function An(e) {
32
32
  function W(e) {
33
33
  return e === Mt ? "" : e;
34
34
  }
35
- function J(e, r = e.config) {
35
+ function X(e, r = e.config) {
36
36
  return Re({
37
37
  hasExecutableConfig: Ee(r, e.type),
38
38
  sql: e.sql,
@@ -742,7 +742,7 @@ function Ht(e) {
742
742
  const t = e.valueKind ?? (r.presentation.mode === "pattern" ? "instant" : "date"), n = {
743
743
  kind: "raw_temporal",
744
744
  valueKind: t
745
- }, o = e.value ?? (t === "date" ? "2023-05-15" : t === "wall_datetime" ? "2023-05-15T14:30:45" : "2023-05-15T14:30:45Z"), a = X({
745
+ }, o = e.value ?? (t === "date" ? "2023-05-15" : t === "wall_datetime" ? "2023-05-15T14:30:45" : "2023-05-15T14:30:45Z"), a = J({
746
746
  metadata: n,
747
747
  format: G({
748
748
  format: r,
@@ -770,7 +770,7 @@ function Vn(e) {
770
770
  function Oe(e) {
771
771
  var t;
772
772
  const r = e.effectiveCardConfig ?? e.card.config;
773
- return J(e.card, r) === "freeform" && !!((t = e.card.sql) != null && t.trim()) && !W(e.card.python || "").trim();
773
+ return X(e.card, r) === "freeform" && !!((t = e.card.sql) != null && t.trim()) && !W(e.card.python || "").trim();
774
774
  }
775
775
  function Wt(e) {
776
776
  var r, t;
@@ -893,7 +893,7 @@ function Zt(e) {
893
893
  columnKey: h,
894
894
  metadata: b,
895
895
  format: w,
896
- formatValue: X({ metadata: b, format: w })
896
+ formatValue: J({ metadata: b, format: w })
897
897
  };
898
898
  for (let C = 0; C < r.length; C += 1)
899
899
  if (!Object.prototype.hasOwnProperty.call(r[C], h) || r[C][h] === void 0)
@@ -922,7 +922,7 @@ function Zt(e) {
922
922
  }
923
923
  function Qt(e) {
924
924
  var n, o, a;
925
- const r = e.effectiveCardConfig ?? e.card.config, t = J(
925
+ const r = e.effectiveCardConfig ?? e.card.config, t = X(
926
926
  e.card,
927
927
  r
928
928
  );
@@ -951,7 +951,7 @@ function Qt(e) {
951
951
  );
952
952
  }
953
953
  return Ie(
954
- Xt({
954
+ Jt({
955
955
  resultOwner: t,
956
956
  sql: e.card.sql,
957
957
  normalizedPython: W(
@@ -968,7 +968,7 @@ function Qt(e) {
968
968
  }
969
969
  function qn(e) {
970
970
  var n, o, a;
971
- const r = e.effectiveCardConfig ?? e.card.config, t = J(
971
+ const r = e.effectiveCardConfig ?? e.card.config, t = X(
972
972
  e.card,
973
973
  r
974
974
  );
@@ -1013,7 +1013,7 @@ function Ie(e, r) {
1013
1013
  const l = {
1014
1014
  ...i,
1015
1015
  format: a,
1016
- formatValue: X({
1016
+ formatValue: J({
1017
1017
  metadata: i.metadata,
1018
1018
  format: a
1019
1019
  })
@@ -1029,7 +1029,7 @@ function Ie(e, r) {
1029
1029
  }
1030
1030
  };
1031
1031
  }
1032
- function Xt(e) {
1032
+ function Jt(e) {
1033
1033
  var t, n;
1034
1034
  if (e.resultOwner !== "freeform" || !((t = e.sql) != null && t.trim()) || (n = e.normalizedPython) != null && n.trim())
1035
1035
  return { kind: "inactive" };
@@ -1100,7 +1100,7 @@ function Xt(e) {
1100
1100
  columnKey: c,
1101
1101
  metadata: f.metadata,
1102
1102
  format: h,
1103
- formatValue: X({
1103
+ formatValue: J({
1104
1104
  metadata: f.metadata,
1105
1105
  format: h
1106
1106
  })
@@ -1167,7 +1167,7 @@ function Un(e) {
1167
1167
  function we(e) {
1168
1168
  return !e || typeof e != "object" ? !1 : Array.isArray(e.cards);
1169
1169
  }
1170
- function Jt(e) {
1170
+ function Xt(e) {
1171
1171
  if (!e)
1172
1172
  return null;
1173
1173
  if (typeof e == "string")
@@ -1186,7 +1186,7 @@ function Ke(e) {
1186
1186
  function Gn(e) {
1187
1187
  var t;
1188
1188
  const r = (e == null ? void 0 : e.frameObject) ?? ((t = e == null ? void 0 : e.visual) == null ? void 0 : t.frameObject);
1189
- return Ke(Jt(r));
1189
+ return Ke(Xt(r));
1190
1190
  }
1191
1191
  function pe(e) {
1192
1192
  if (!(e != null && e.expectedType)) return "table";
@@ -1469,7 +1469,7 @@ function cr(e, r) {
1469
1469
  function Qn(e) {
1470
1470
  return e.visualType === "multiple" || e.slots && e.slots.length > 0 || (e.minInputs || 0) > 1 || (e.maxInputs || 0) > 1 || (e.dataInputs || []).length > 1 ? "multiple" : "single";
1471
1471
  }
1472
- function Xn(e) {
1472
+ function Jn(e) {
1473
1473
  return Array.isArray(e) ? { records: e } : e;
1474
1474
  }
1475
1475
  class Y extends Error {
@@ -1543,7 +1543,7 @@ function dr(e, r) {
1543
1543
  })
1544
1544
  ).filter((l) => l !== null);
1545
1545
  }
1546
- function Jn(e) {
1546
+ function Xn(e) {
1547
1547
  return lr(e.dashboard, e.selections).flatMap(
1548
1548
  ({ card: r, attachmentIndex: t }) => {
1549
1549
  var s, u, f, d;
@@ -1569,7 +1569,7 @@ function Jn(e) {
1569
1569
  },
1570
1570
  e.valueFormatPreferences.locale
1571
1571
  )
1572
- })) : [], l = [], m = J(r, n), c = W(
1572
+ })) : [], l = [], m = X(r, n), c = W(
1573
1573
  r.python || ""
1574
1574
  );
1575
1575
  if (r.type === "detailTable" && m === "config") {
@@ -3043,7 +3043,7 @@ function D(e, r, t, n, o) {
3043
3043
  p(o, r, `Expected ${n}.`);
3044
3044
  }
3045
3045
  }
3046
- function Xr(e, r, t) {
3046
+ function Jr(e, r, t) {
3047
3047
  if (e != null) {
3048
3048
  if (!Array.isArray(e)) {
3049
3049
  p(t, r, "Expected an array.");
@@ -3052,7 +3052,7 @@ function Xr(e, r, t) {
3052
3052
  return e;
3053
3053
  }
3054
3054
  }
3055
- function Jr(e, r, t) {
3055
+ function Xr(e, r, t) {
3056
3056
  if (e != null) {
3057
3057
  if (!je(e)) {
3058
3058
  p(t, r, "Expected an object.");
@@ -3145,7 +3145,7 @@ function en(e, r, t) {
3145
3145
  "cardControlDefinitions",
3146
3146
  "controlBindings"
3147
3147
  ]) {
3148
- const s = Xr(n[c], `${r}.${c}`, t);
3148
+ const s = Jr(n[c], `${r}.${c}`, t);
3149
3149
  s && (o[c] = s);
3150
3150
  }
3151
3151
  for (const c of [
@@ -3153,7 +3153,7 @@ function en(e, r, t) {
3153
3153
  "tablePreferences",
3154
3154
  "dashboardInputExecutionSnapshot"
3155
3155
  ]) {
3156
- const s = Jr(n[c], `${r}.${c}`, t);
3156
+ const s = Xr(n[c], `${r}.${c}`, t);
3157
3157
  s && (o[c] = s);
3158
3158
  }
3159
3159
  return Object.keys(o).length > 0 ? o : void 0;
@@ -3352,7 +3352,7 @@ function nn(e, r, t) {
3352
3352
  );
3353
3353
  });
3354
3354
  }
3355
- function Xe(e) {
3355
+ function Je(e) {
3356
3356
  const r = [], t = $(e, "jobConfig", r);
3357
3357
  I(
3358
3358
  t,
@@ -3398,7 +3398,7 @@ function Xe(e) {
3398
3398
  };
3399
3399
  }
3400
3400
  function po(e) {
3401
- return Xe({
3401
+ return Je({
3402
3402
  ...e,
3403
3403
  kind: le
3404
3404
  });
@@ -3464,7 +3464,7 @@ function an(e, r) {
3464
3464
  return p(r, "deliveryConfig.channels", "Expected an array."), [];
3465
3465
  const t = [];
3466
3466
  return e.forEach((n, o) => {
3467
- if (!Je(n)) {
3467
+ if (!Xe(n)) {
3468
3468
  p(
3469
3469
  r,
3470
3470
  `deliveryConfig.channels.${o}`,
@@ -3677,7 +3677,7 @@ function fn(e, r) {
3677
3677
  return;
3678
3678
  const t = $(e, "deliveryConfig.channelConfigs", r), n = {};
3679
3679
  return Object.entries(t).forEach(([o, a]) => {
3680
- if (!Je(o)) {
3680
+ if (!Xe(o)) {
3681
3681
  p(
3682
3682
  r,
3683
3683
  `deliveryConfig.channelConfigs.${o}`,
@@ -3790,7 +3790,7 @@ function go(e) {
3790
3790
  }
3791
3791
  function vo(e) {
3792
3792
  try {
3793
- return { valid: !0, value: Xe(e), issues: [] };
3793
+ return { valid: !0, value: Je(e), issues: [] };
3794
3794
  } catch (r) {
3795
3795
  if (r instanceof ee)
3796
3796
  return { valid: !1, issues: r.issues };
@@ -3800,17 +3800,17 @@ function vo(e) {
3800
3800
  function bo(e) {
3801
3801
  return typeof e == "string" && qe.has(e);
3802
3802
  }
3803
- function Je(e) {
3803
+ function Xe(e) {
3804
3804
  return typeof e == "string" && Fr.has(e);
3805
3805
  }
3806
3806
  export {
3807
3807
  Cr as $,
3808
3808
  Ln as A,
3809
- Jn as B,
3809
+ Xn as B,
3810
3810
  ur as C,
3811
3811
  to as D,
3812
3812
  no as E,
3813
- J as F,
3813
+ X as F,
3814
3814
  Lt as G,
3815
3815
  Pn as H,
3816
3816
  jn as I,
@@ -3838,7 +3838,7 @@ export {
3838
3838
  $r as a2,
3839
3839
  lo as a3,
3840
3840
  Wt as a4,
3841
- Jt as a5,
3841
+ Xt as a5,
3842
3842
  Ke as a6,
3843
3843
  Gn as a7,
3844
3844
  Mt as a8,
@@ -3854,7 +3854,7 @@ export {
3854
3854
  ee as ai,
3855
3855
  Qr as aj,
3856
3856
  fo as ak,
3857
- Xe as al,
3857
+ Je as al,
3858
3858
  po as am,
3859
3859
  ve as an,
3860
3860
  yo as ao,
@@ -3862,7 +3862,7 @@ export {
3862
3862
  go as aq,
3863
3863
  vo as ar,
3864
3864
  bo as as,
3865
- Je as at,
3865
+ Xe as at,
3866
3866
  ro as au,
3867
3867
  pr as av,
3868
3868
  fr as aw,
@@ -3877,7 +3877,7 @@ export {
3877
3877
  Ce as i,
3878
3878
  Zn as j,
3879
3879
  or as k,
3880
- Xn as l,
3880
+ Jn as l,
3881
3881
  ze as m,
3882
3882
  W as n,
3883
3883
  Hn as o,