react-semaphor 0.1.498 → 0.1.499
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.
- package/dist/analytics-protocol/index.cjs +1 -1
- package/dist/analytics-protocol/index.js +22 -22
- package/dist/brand-studio/index.cjs +1 -1
- package/dist/brand-studio/index.js +4 -4
- package/dist/briefings/index.cjs +1 -1
- package/dist/briefings/index.js +5 -5
- package/dist/chunks/{calculated-field-identity-BGIPbwBx.js → calculated-field-identity-BC2NViZZ.js} +73 -63
- package/dist/chunks/{calculated-field-identity-CEzmY7Bi.cjs → calculated-field-identity-CtYhhZoG.cjs} +1 -1
- package/dist/chunks/{constants-CKoIADZx.js → constants-CTRduy1g.js} +9 -9
- package/dist/chunks/{constants-CpBVuEea.cjs → constants-DNgpRMaX.cjs} +1 -1
- package/dist/chunks/{dashboard-briefing-launcher-C8eAX-JN.js → dashboard-briefing-launcher-Bp6SBVb6.js} +9 -9
- package/dist/chunks/{dashboard-briefing-launcher-BEmyxEd8.cjs → dashboard-briefing-launcher-Dtzn9Tqg.cjs} +1 -1
- package/dist/chunks/{dashboard-controls-YvJe7cPL.cjs → dashboard-controls-CLw5VQ2x.cjs} +1 -1
- package/dist/chunks/{dashboard-controls-C_v7sbq4.js → dashboard-controls-DDI3atQf.js} +11 -11
- package/dist/chunks/{dashboard-date-comparison-definition-aANgeL-E.js → dashboard-date-comparison-definition-C1vJshiP.js} +6 -6
- package/dist/chunks/{dashboard-date-comparison-definition-Er8D33iq.cjs → dashboard-date-comparison-definition-CWz_Yte8.cjs} +1 -1
- package/dist/chunks/{dashboard-json-CSp5bXIV.cjs → dashboard-json-BnT6W7Lt.cjs} +1 -1
- package/dist/chunks/{dashboard-json-BaT3Yy8x.js → dashboard-json-rHLrTBbN.js} +7 -7
- package/dist/chunks/{edit-dashboard-visual-GWiW0jjy.js → edit-dashboard-visual-BH2LkjHV.js} +6858 -6893
- package/dist/chunks/edit-dashboard-visual-DqAMe8XW.cjs +172 -0
- package/dist/chunks/{editor-action-buttons-BSC0nwgV.cjs → editor-action-buttons-Boq8MLya.cjs} +1 -1
- package/dist/chunks/{editor-action-buttons-CfZITZwQ.js → editor-action-buttons-DUEK2-kM.js} +6 -6
- package/dist/chunks/{field-aggregations-DLWbqnBW.cjs → field-aggregations-mlkON_QA.cjs} +1 -1
- package/dist/chunks/{field-aggregations-CxJWY4Ny.js → field-aggregations-tLaXZ2VJ.js} +13 -13
- package/dist/chunks/{field-dependencies-BiyQuGxZ.cjs → field-dependencies-R7MrlW6D.cjs} +1 -1
- package/dist/chunks/{field-dependencies-CNOgt39w.js → field-dependencies-ZE2klbHO.js} +1 -1
- package/dist/chunks/{index-BJfUMDHc.js → index-BVIet238.js} +42 -42
- package/dist/chunks/{index-C3RHKD3d.cjs → index-Bh3SlWJS.cjs} +1 -1
- package/dist/chunks/{index-DjbQVfS6.js → index-CEm8bwwd.js} +26924 -26927
- package/dist/chunks/{index-DhBGtRkR.cjs → index-Gos2ij10.cjs} +219 -219
- package/dist/chunks/{matrix-analytical-definition-s10yOPft.js → matrix-analytical-definition-CIVFNNnF.js} +1 -1
- package/dist/chunks/{matrix-analytical-definition-DbaMwlWM.cjs → matrix-analytical-definition-wIEDXvV5.cjs} +1 -1
- package/dist/chunks/{matrix-card-DGpXdK_Y.js → matrix-card-BVvKHL7s.js} +2 -2
- package/dist/chunks/{matrix-card-BitrcBVw.cjs → matrix-card-Dh0J0_Of.cjs} +1 -1
- package/dist/chunks/matrix-control-sources-CjnsBREg.js +605 -0
- package/dist/chunks/matrix-control-sources-a67fwoOO.cjs +1 -0
- package/dist/chunks/{matrix-definition-AP5W3wGc.js → matrix-definition-BEXCfZAe.js} +3 -3
- package/dist/chunks/{matrix-definition-C33isJ3k.cjs → matrix-definition-CKVi4VVg.cjs} +1 -1
- package/dist/chunks/{matrix-formatter-CZYFhdZ0.js → matrix-formatter-BTPfthsa.js} +41 -41
- package/dist/chunks/{matrix-formatter-UCXQxvV3.cjs → matrix-formatter-CWtdnbfv.cjs} +1 -1
- package/dist/chunks/{matrix-member-presentation-5-M0obIa.js → matrix-member-presentation-DiDUvZts.js} +1 -1
- package/dist/chunks/{matrix-member-presentation-DgIq9UG9.cjs → matrix-member-presentation-e_KZoZOx.cjs} +1 -1
- package/dist/chunks/{matrix-operation-contract-BFumahBa.js → matrix-operation-contract-CPgckXxm.js} +144 -144
- package/dist/chunks/{matrix-operation-contract-C0-V685e.cjs → matrix-operation-contract-thtFuUYf.cjs} +1 -1
- package/dist/chunks/{metric-comparison-ClKUI7Tu.cjs → metric-comparison-CAqV6VnZ.cjs} +1 -1
- package/dist/chunks/{metric-comparison-Df3HmmUE.js → metric-comparison-Dgyq1I3d.js} +1 -1
- package/dist/chunks/{pivot-header-presentation-CGWDx1V_.cjs → pivot-header-presentation-DUXM-VOP.cjs} +1 -1
- package/dist/chunks/{pivot-header-presentation-CAmKYLgn.js → pivot-header-presentation-DcCO8-Ij.js} +3 -3
- package/dist/chunks/{pivot-result-identity-DBeK76wx.js → pivot-result-identity-Be1zm0AV.js} +1 -1
- package/dist/chunks/{pivot-result-identity-0grcK7bY.cjs → pivot-result-identity-DJyF4I2K.cjs} +1 -1
- package/dist/chunks/{pivot-result-lifecycle-DVPJg7Gg.js → pivot-result-lifecycle-DpSZOMOZ.js} +7 -7
- package/dist/chunks/{pivot-result-lifecycle-CC0jWMFT.cjs → pivot-result-lifecycle-E_huAPev.cjs} +1 -1
- package/dist/chunks/{raw-temporal-Kc3mdzH7.cjs → raw-temporal-DYoPBY6B.cjs} +1 -1
- package/dist/chunks/{raw-temporal-T3PEaGmJ.js → raw-temporal-DfnRBxQn.js} +2 -2
- package/dist/chunks/{raw-temporal-contract-Ck5vJoQ6.js → raw-temporal-contract-CNwYygW2.js} +1 -1
- package/dist/chunks/{raw-temporal-contract-SwtP1jSh.cjs → raw-temporal-contract-D1_n2pBj.cjs} +1 -1
- package/dist/chunks/{report-preferences-dialog-B8DdDM7q.js → report-preferences-dialog-8nfXNWvl.js} +6 -6
- package/dist/chunks/{report-preferences-dialog-BcaEOgn2.cjs → report-preferences-dialog-CW59SyVZ.cjs} +1 -1
- package/dist/chunks/{report-runtime-context-D3t8vyl9.cjs → report-runtime-context-CqFbgZq9.cjs} +1 -1
- package/dist/chunks/{report-runtime-context-BziN1eg9.js → report-runtime-context-Dln1qvGS.js} +5 -5
- package/dist/chunks/{semantic-format-Ca-sdETk.cjs → semantic-format-C7Goni6h.cjs} +1 -1
- package/dist/chunks/{semantic-format-A3k--fpE.js → semantic-format-PKQt2EAz.js} +2 -2
- package/dist/chunks/{source-entity-resolution-CTUzMH2S.cjs → source-entity-resolution-BMKxwdKN.cjs} +1 -1
- package/dist/chunks/{source-entity-resolution-DX9C1ebK.js → source-entity-resolution-BSZ07Sl6.js} +19 -19
- package/dist/chunks/{switch-DV8zX7rV.js → switch-B4wVqV4L.js} +51 -50
- package/dist/chunks/{switch-CgycqpWv.cjs → switch-DVjKkt22.cjs} +12 -12
- package/dist/chunks/{temporal-bucket-contract-BBdvWsY0.cjs → temporal-bucket-contract-CSdspcYj.cjs} +1 -1
- package/dist/chunks/{temporal-bucket-contract-lq7Jrif0.js → temporal-bucket-contract-_WCvDnvn.js} +1 -1
- package/dist/chunks/{update-policy-DIw_H9RT.cjs → update-policy-BESKAspa.cjs} +1 -1
- package/dist/chunks/{update-policy-EgZ1nRbd.js → update-policy-BWbXhkk-.js} +2 -2
- package/dist/chunks/{validators-CvLOGzT3.js → validators-CHlnnHuS.js} +1102 -1043
- package/dist/chunks/validators-D2F_uxxP.cjs +1 -0
- package/dist/dashboard/index.cjs +1 -1
- package/dist/dashboard/index.js +1 -1
- package/dist/dashboard-authoring/index.cjs +3 -3
- package/dist/dashboard-authoring/index.js +112 -107
- package/dist/data-app-builder/index.cjs +1 -1
- package/dist/data-app-builder/index.js +2 -2
- package/dist/data-app-codegen/index.cjs +1 -1
- package/dist/data-app-codegen/index.js +2 -2
- package/dist/data-app-codegen-node/index.cjs +1 -1
- package/dist/data-app-codegen-node/index.js +3 -3
- package/dist/data-app-sdk/index.cjs +1 -1
- package/dist/data-app-sdk/index.js +4 -4
- package/dist/data-app-sdk-adapters/index.cjs +1 -1
- package/dist/data-app-sdk-adapters/index.js +2 -2
- package/dist/data-app-sdk-validation/index.cjs +1 -1
- package/dist/data-app-sdk-validation/index.js +5 -5
- package/dist/format-utils/index.cjs +1 -1
- package/dist/format-utils/index.js +16 -16
- package/dist/index.cjs +1 -1
- package/dist/index.js +81 -78
- package/dist/report-runtime-context/index.cjs +1 -1
- package/dist/report-runtime-context/index.js +2 -2
- package/dist/surfboard/index.cjs +1 -1
- package/dist/surfboard/index.js +2 -2
- package/dist/types/analytics-protocol.d.ts +15 -0
- package/dist/types/briefings.d.ts +16 -1
- package/dist/types/dashboard-assistant.d.ts +15 -0
- package/dist/types/dashboard-authoring.d.ts +49 -1
- package/dist/types/dashboard.d.ts +23 -1
- package/dist/types/data-app-builder.d.ts +15 -0
- package/dist/types/data-app-codegen-node.d.ts +15 -0
- package/dist/types/data-app-codegen.d.ts +15 -0
- package/dist/types/data-app-sdk-adapters.d.ts +15 -0
- package/dist/types/data-app-sdk-validation.d.ts +15 -0
- package/dist/types/data-app-sdk.d.ts +15 -0
- package/dist/types/format-utils.d.ts +15 -0
- package/dist/types/index.cjs +1 -1
- package/dist/types/index.js +30 -27
- package/dist/types/main.d.ts +67 -8
- package/dist/types/shared.d.ts +16 -1
- package/dist/types/surfboard.d.ts +23 -1
- package/dist/types/types.d.ts +67 -8
- package/package.json +1 -1
- package/dist/chunks/edit-dashboard-visual-_Wap0YGu.cjs +0 -172
- package/dist/chunks/matrix-control-sources-DdfST7Fo.cjs +0 -1
- package/dist/chunks/matrix-control-sources-Dxh6hOU9.js +0 -523
- package/dist/chunks/validators-mhiJSia7.cjs +0 -1
package/dist/chunks/{editor-action-buttons-BSC0nwgV.cjs → editor-action-buttons-Boq8MLya.cjs}
RENAMED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";const J=require("./x-B6ghREd2.cjs"),C=require("react"),r=require("./switch-
|
|
1
|
+
"use strict";const J=require("./x-B6ghREd2.cjs"),C=require("react"),r=require("./switch-DVjKkt22.cjs"),y=require("./index-Gos2ij10.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,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-
|
|
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-
|
|
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-CEm8bwwd.js";
|
|
5
5
|
import { jsx as a, jsxs as m, Fragment as Z } from "react/jsx-runtime";
|
|
6
|
-
import "./constants-
|
|
7
|
-
import {
|
|
8
|
-
import "./matrix-operation-contract-
|
|
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-
|
|
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 +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 {
|
|
2
|
-
import "./matrix-operation-contract-
|
|
3
|
-
import { f as ne, C as ie } from "./metric-comparison-
|
|
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-
|
|
7
|
-
import { i as ce, a as pe } from "./matrix-card-
|
|
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
|
|
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 =
|
|
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
|
-
!
|
|
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 =
|
|
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) =>
|
|
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) =>
|
|
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) =>
|
|
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) =>
|
|
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-
|
|
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,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
|
|
5
|
-
import {
|
|
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-
|
|
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-
|
|
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-
|
|
12
|
-
import { h as Ee, i as me, r as Se, a as _e, v as vt, b as bt } from "./constants-
|
|
13
|
-
import { r as It } from "./matrix-card-
|
|
14
|
-
import { r as V, c as wt, b as Ct, P as Tt } from "./pivot-result-identity-
|
|
15
|
-
import { v as xt, a as $t } from "./temporal-bucket-contract-
|
|
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-
|
|
18
|
-
import { v as Ae } from "./raw-temporal-contract-
|
|
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
|
|
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 =
|
|
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
|
|
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:
|
|
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 =
|
|
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
|
-
|
|
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 =
|
|
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:
|
|
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
|
|
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:
|
|
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
|
|
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(
|
|
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
|
|
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
|
|
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 =
|
|
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
|
|
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
|
|
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 =
|
|
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 =
|
|
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
|
|
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
|
|
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 (!
|
|
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 (!
|
|
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:
|
|
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
|
|
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
|
-
|
|
3809
|
+
Xn as B,
|
|
3810
3810
|
ur as C,
|
|
3811
3811
|
to as D,
|
|
3812
3812
|
no as E,
|
|
3813
|
-
|
|
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
|
-
|
|
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
|
-
|
|
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
|
-
|
|
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
|
-
|
|
3880
|
+
Jn as l,
|
|
3881
3881
|
ze as m,
|
|
3882
3882
|
W as n,
|
|
3883
3883
|
Hn as o,
|