react-semaphor 0.1.476 → 0.1.478
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 +9 -9
- 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 +4 -4
- package/dist/chunks/{analyze-result-contract-OgPk-zGu.cjs → analyze-result-contract-BX_nQmPN.cjs} +1 -1
- package/dist/chunks/{analyze-result-contract-C8s8EUL5.js → analyze-result-contract-DsiAzCYn.js} +1 -1
- package/dist/chunks/{saved-temporal-bucket-format-CHsXUPJI.js → card-config-utils-CyDKaPNT.js} +190 -190
- package/dist/chunks/card-config-utils-D3Xuu0ub.cjs +1 -0
- package/dist/chunks/{common-types-C1IM7gao.cjs → common-types-BCSbPclk.cjs} +1 -1
- package/dist/chunks/{common-types-BLPy5_E0.js → common-types-D3r4PILe.js} +1 -1
- package/dist/chunks/{dashboard-briefing-launcher-ZfuxdRN2.cjs → dashboard-briefing-launcher-7qAW16mO.cjs} +2 -2
- package/dist/chunks/{dashboard-briefing-launcher-eBsB9kr8.js → dashboard-briefing-launcher-DAhtLQPc.js} +134 -134
- package/dist/chunks/{dashboard-controls-BX6p6z8a.js → dashboard-controls-C_CBmEwW.js} +13 -12
- package/dist/chunks/{dashboard-controls-DwjEc7sO.cjs → dashboard-controls-CoVqAeKG.cjs} +10 -10
- package/dist/chunks/{dashboard-input-contract-JFJZgenC.cjs → dashboard-date-comparison-definition-C93wv8Ua.cjs} +1 -1
- package/dist/chunks/{dashboard-input-contract-BrGdGFz0.js → dashboard-date-comparison-definition-KohOqBqR.js} +19 -19
- package/dist/chunks/dashboard-filter-value-compatibility-BAatYtUS.js +1215 -0
- package/dist/chunks/dashboard-filter-value-compatibility-Bco2gN96.cjs +1 -0
- package/dist/chunks/{dashboard-json-BfgitBXc.js → dashboard-json-0w58H39L.js} +7 -7
- package/dist/chunks/dashboard-json-B3XSl7b_.cjs +1 -0
- package/dist/chunks/{edit-dashboard-visual-Cbougpzc.cjs → edit-dashboard-visual-BsLRKeuO.cjs} +6 -6
- package/dist/chunks/{edit-dashboard-visual-D80DLF7C.js → edit-dashboard-visual-BsWEU8xf.js} +277 -277
- package/dist/chunks/{editor-action-buttons-DjsEDQok.js → editor-action-buttons-B3CB5c__.js} +39 -39
- package/dist/chunks/{editor-action-buttons-BDRLfaW-.cjs → editor-action-buttons-DMLDvrJD.cjs} +1 -1
- package/dist/chunks/{index-CneWIz__.cjs → index--0Il-Bpd.cjs} +238 -238
- package/dist/chunks/{format-types-CFHQoIuk.js → index-BS0_dp0l.js} +168 -168
- package/dist/chunks/{index-D9S3j7_z.js → index-BvRREsU9.js} +9 -9
- package/dist/chunks/index-ByQgqT9d.cjs +1 -0
- package/dist/chunks/{index-v2MZLyus.cjs → index-CXeIDdjd.cjs} +1 -1
- package/dist/chunks/{index-Dv5hbC1r.js → index-DgGcVyUs.js} +35550 -35937
- package/dist/chunks/matrix-result-contract-CFPnlcLm.cjs +1 -0
- package/dist/chunks/{matrix-result-contract-BpzhImar.js → matrix-result-contract-DFfUvb1r.js} +3 -3
- package/dist/chunks/{temporal-bucket-CtP7hKLa.js → metric-comparison-CTexJ8V1.js} +705 -705
- package/dist/chunks/metric-comparison-x0lipytf.cjs +1 -0
- package/dist/chunks/pivot-header-presentation-8Ra1RfHg.cjs +4 -0
- package/dist/chunks/{pivot-header-presentation-CaERAWpl.js → pivot-header-presentation-tpb_J900.js} +118 -118
- package/dist/chunks/{pivot-result-identity-CIZXsI53.js → pivot-result-identity-BIeP9v8I.js} +1 -1
- package/dist/chunks/{pivot-result-identity-DRUlTWUq.cjs → pivot-result-identity-BVnhG2rR.cjs} +1 -1
- package/dist/chunks/pivot-result-lifecycle-D_bRCqaB.cjs +1 -0
- package/dist/chunks/{pivot-result-lifecycle-B9FTybxN.js → pivot-result-lifecycle-mjJ1rBvV.js} +7 -7
- package/dist/chunks/{raw-temporal-contract-U8J9RlEH.js → raw-temporal-contract-BuQIB31z.js} +1 -1
- package/dist/chunks/{raw-temporal-contract-D8YuxTAg.cjs → raw-temporal-contract-vnNwLy9R.cjs} +1 -1
- package/dist/chunks/{report-preferences-dialog-BXBlvW79.js → report-preferences-dialog-Bytgubvz.js} +25 -25
- package/dist/chunks/report-preferences-dialog-I0Pbn_Yb.cjs +1 -0
- package/dist/chunks/{report-runtime-context-DNbgCsko.js → report-runtime-context-B_pAmqxl.js} +1 -1
- package/dist/chunks/{report-runtime-context-RFiWq4wK.cjs → report-runtime-context-BfW4qiMJ.cjs} +1 -1
- package/dist/chunks/{source-entity-resolution-BDC-Qngk.cjs → source-entity-resolution-DCAAS-y8.cjs} +1 -1
- package/dist/chunks/{source-entity-resolution-ugN3sZUk.js → source-entity-resolution-WUstJID6.js} +1 -1
- package/dist/chunks/{switch-C8NihGV4.js → switch-BsGTOjuD.js} +12342 -11110
- package/dist/chunks/switch-Cpj3DrCZ.cjs +138 -0
- package/dist/chunks/{temporal-bucket-authoring-DJ9kK2wD.js → temporal-bucket-authoring-CyTCHy1K.js} +3 -3
- package/dist/chunks/temporal-bucket-authoring-DueSgLJU.cjs +1 -0
- package/dist/chunks/{temporal-bucket-contract-CZl5D7FZ.js → temporal-bucket-contract-BeOx0uYe.js} +1 -1
- package/dist/chunks/{temporal-bucket-contract-BD862TAa.cjs → temporal-bucket-contract-Cp-usD9Z.cjs} +1 -1
- package/dist/chunks/{token-types-CoHsSJ4E.cjs → token-types-D9eN35rf.cjs} +1 -1
- package/dist/chunks/{token-types-DfDtCqlw.js → token-types-Dvomvqw0.js} +1 -1
- package/dist/chunks/{update-policy-BGNXFgBU.cjs → update-policy-Buw2LmvX.cjs} +1 -1
- package/dist/chunks/{update-policy-BybMiM61.js → update-policy-MWg0aH3d.js} +1 -1
- package/dist/chunks/{validators-D-T-2HOR.js → validators-D3AarM2T.js} +662 -663
- package/dist/chunks/validators-DqIM0B3C.cjs +1 -0
- package/dist/dashboard/index.cjs +1 -1
- package/dist/dashboard/index.js +2 -2
- package/dist/dashboard-authoring/index.cjs +3 -3
- package/dist/dashboard-authoring/index.js +81 -79
- 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 +3 -3
- 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 +3 -3
- package/dist/format-utils/index.cjs +3 -3
- package/dist/format-utils/index.js +9 -9
- package/dist/index.cjs +1 -1
- package/dist/index.js +177 -176
- 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 +3 -3
- package/dist/types/briefings.d.ts +15 -2
- package/dist/types/dashboard-authoring.d.ts +21 -2
- package/dist/types/dashboard.d.ts +15 -2
- package/dist/types/index.cjs +1 -1
- package/dist/types/index.js +4 -4
- package/dist/types/main.d.ts +25 -6
- package/dist/types/shared.d.ts +15 -2
- package/dist/types/surfboard.d.ts +15 -2
- package/dist/types/types.d.ts +15 -2
- package/package.json +1 -1
- package/dist/chunks/dashboard-filter-value-compatibility-BCVF9IHg.js +0 -1026
- package/dist/chunks/dashboard-filter-value-compatibility-DLkdeypb.cjs +0 -1
- package/dist/chunks/dashboard-json-CdwYFOsc.cjs +0 -1
- package/dist/chunks/format-types-PSZZ7hG8.cjs +0 -1
- package/dist/chunks/matrix-result-contract-Bhg60NtS.cjs +0 -1
- package/dist/chunks/pivot-header-presentation-CePk1R6g.cjs +0 -4
- package/dist/chunks/pivot-result-lifecycle-CcGt_29N.cjs +0 -1
- package/dist/chunks/report-preferences-dialog-cSMJYqns.cjs +0 -1
- package/dist/chunks/saved-temporal-bucket-format-DNMtD77o.cjs +0 -1
- package/dist/chunks/switch-B1mZx2k9.cjs +0 -138
- package/dist/chunks/temporal-bucket-9Wz9Ds6H.cjs +0 -1
- package/dist/chunks/temporal-bucket-authoring-DSpzgXHc.cjs +0 -1
- package/dist/chunks/validators-DcshgK7w.cjs +0 -1
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";var se=Object.defineProperty;var oe=(e,t,n)=>t in e?se(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n;var L=(e,t,n)=>oe(e,typeof t!="symbol"?t+"":t,n);const m=require("./validators-DcshgK7w.cjs");require("./analyze-result-contract-OgPk-zGu.cjs");require("../value-format-preferences/index.cjs");const de=require("./source-entity-resolution-BDC-Qngk.cjs");function C(e){return(e==null?void 0:e.trim())||void 0}function H(e){return e.split(".").at(-1)||e}function J(e,t){var l,r;const n=C(t);if(!n)return;const a=H(n),i=C((l=e.fieldMeta)==null?void 0:l.name);if(i&&i!==n&&i!==a)return;const s=C((r=e.fieldMeta)==null?void 0:r.qualifiedFieldName);if(s&&H(s)!==a)return;const d=n.includes(".")?n:void 0,o=s!=null&&s.includes(".")?s:void 0;if(!(d&&o&&d!==o))return{leafName:a,...d||o?{qualifiedFieldName:d||o}:{}}}function W(e,t){return J(e,t)||J({},t)}function j({source:e,sourceFieldName:t,target:n,targetFieldName:a}){const i=W(e,t),s=W(n,a);return!i||!s||i.leafName!==s.leafName?!1:s.qualifiedFieldName?i.qualifiedFieldName===s.qualifiedFieldName:!0}function D(e,t){var i,s;const n=le(e);if(n)return n;const a=(s=(i=e==null?void 0:e.fieldMeta)==null?void 0:i.nativeDataType)==null?void 0:s.trim();if(w(e==null?void 0:e.fieldMeta,t)&&a&&a!=="date"&&a!=="datetime")return a}function le(e){var n;const t=(n=e==null?void 0:e.nativeDataType)==null?void 0:n.trim();return t&&t!=="date"&&t!=="datetime"?t:void 0}function w(e,t){var d,o;const n=t.trim();if(!n)return!1;const a=n.split(".").at(-1),i=(d=e==null?void 0:e.qualifiedFieldName)==null?void 0:d.trim();if(i&&!(i===n||!i.includes(".")&&i===a))return!1;const s=(o=e==null?void 0:e.name)==null?void 0:o.trim();return s&&s!==n&&s!==a?!1:!!(i||s)}function ce({fieldName:e,definition:t,value:n}){if((t==null?void 0:t.column)===e){const a=D(t,e);if(a)return a}return(n==null?void 0:n.name)===e?D(n,e):void 0}function K({definition:e,value:t,sourceValue:n=t}){const a=e&&j({source:e,sourceFieldName:e.column,target:t,targetFieldName:t.name})?e:void 0,i=n&&j({source:n,sourceFieldName:n.name,target:t,targetFieldName:t.name})?n:void 0,s=(a?D(a,a.column):void 0)||(i?D(i,i.name):void 0);return Y({carrier:t,nativeDataType:s,projectNestedNativeDataType:w(t.fieldMeta,t.name)})}function ue({filterDefinitions:e,filterValues:t}){if(!(e!=null&&e.length)||!t.length)return t;const n=new Map(e.map(s=>[s.id,s]));let a=!1;const i=t.map(s=>{if(typeof s.name!="string"||!s.name.trim())return s;const d=n.get(s.filterId);if(!d)return s;const o=K({definition:d,value:s});return a||(a=o!==s),o});return a?i:t}function fe(e){const t=ce({fieldName:e.column,definition:e});return Y({carrier:e,nativeDataType:t,projectNestedNativeDataType:w(e.fieldMeta,e.column)})}function Y({carrier:e,nativeDataType:t,projectNestedNativeDataType:n}){var r;const a=(r=e.fieldMeta)==null?void 0:r.nativeDataType;if(t){if(e.nativeDataType===t&&(!e.fieldMeta||(n?a===t:!a)))return e;const{nativeDataType:g,...u}=e.fieldMeta||{};return{...e,nativeDataType:t,...e.fieldMeta?{fieldMeta:n?{...e.fieldMeta,nativeDataType:t}:u}:{}}}if(e.nativeDataType===void 0&&a===void 0)return e;const{nativeDataType:i,fieldMeta:s,...d}=e,{nativeDataType:o,...l}=s||{};return{...d,...s?{fieldMeta:l}:{}}}function c(e){return typeof e=="string"&&e.trim().length>0?e.trim():null}function G(e){return Array.from(new Set(e.filter(t=>!!t)))}function me(e){const t=c(e.table),n=c(e.schema),a=c(e.catalog)||c(e.database);return t?G([t,n?`${n}.${t}`:null,a?`${a}.${t}`:null,a&&n?`${a}.${n}.${t}`:null]):[]}function U(e){const t=c(e.table)||c(e.tableName);return G([c(e.name),c(e.alias),...me({table:t,schema:c(e.schema)||c(e.schemaName),catalog:c(e.catalog),database:c(e.database)||c(e.databaseName)})])}function he(e,t){const n=c(e.domainId),a=c(t.domainId);if(n&&a&&n!==a)return!0;if(e.type==="dataset")return!1;const i=c(e.id),s=c(t.id);if(i&&s&&i!==s)return!0;const d=c(e.connectionId),o=c(t.connectionId);return!!(d&&o&&d!==o)}function R(e,t=!1){return c(e.table)||c(e.tableName)||(e.type!=="dataset"||t?c(e.name):null)}function z(e){return c(e.catalog)||c(e.database)||c(e.databaseName)}function x(e){return c(e.schema)||c(e.schemaName)}function v(e){return e.length===1?e[0]:void 0}function ge(e,t){const n=R(t,!0),a=z(t),i=x(t);if(!(!n||!a&&!i))return v(e.filter(s=>{const d=s;return!(R(d)!==n||a&&z(d)!==a||i&&x(d)!==i)}))}function $(e,t){if(!t||!(e!=null&&e.length))return;const n=e.filter(o=>!he(o,t));if(t.type==="dataset"){const o=c(t.id);if(o)return v(n.filter(r=>r.type==="dataset"&&c(r.id)===o));if(c(t.domainId)){const r=c(t.name);return v(n.filter(g=>g.type==="dataset"&&c(g.name)===r))}}let a=[];if(t.type==="dataset"){const o=c(t.name);if(a=n.filter(l=>l.type==="dataset"&&c(l.name)===o),a.length===1)return a[0]}if(!!(R(t,!0)&&(z(t)||x(t))))return ge(n,t);if(a.length>1)return;const s=U(t);if(s.length===0)return;const d=n.filter(o=>U(o).some(r=>s.includes(r)));return v(d)}function A(e,t){const n=$(e,t);return n?{...t,...n}:t}function be(e,t){const n=t||[];return n.length===0?e:{...e,baseEntity:A(n,e.baseEntity),joins:e.joins.map(a=>({...a,source:A(n,a.source),target:A(n,a.target)}))}}function pe(e,t){if(!(e!=null&&e.joins.length))return[];const n=[e.baseEntity,...e.joins.flatMap(i=>[i.source,i.target])],a=[];return n.forEach(i=>{!$(t,i)&&!$(a,i)&&a.push(i)}),a}function I(e){return!!e&&typeof e=="object"&&!Array.isArray(e)}function N(e){return I(e)&&typeof e.name=="string"}function q(e){return!I(e)||e.kind!=="semantic"&&e.kind!=="physical"||(e.kind==="semantic"?[e.datasetId,e.datasetName,e.connectionId]:[e.databaseName,e.schemaName]).some(n=>n!==void 0&&typeof n!="string")?!1:m.hasCompleteSemaphorSourceIdentity(e)}function M(e,t){var r,g;const n=Array.isArray(t==null?void 0:t.selectedEntities)?t.selectedEntities.filter(N):void 0,a=$(n,e),i=a?{...e,...a}:e,s="domainId"in i&&typeof i.domainId=="string"&&!!i.domainId.trim();if((t==null?void 0:t.mode)==="semanticDomain"&&!s)return;if((t==null?void 0:t.mode)!=="database"&&i.type==="dataset"){const u=de.resolveSemaphorSemanticDatasetEntity({entities:[i],semanticDomainId:t==null?void 0:t.semanticDomainId,connectionId:t==null?void 0:t.connectionId,fieldEntityType:"dataset"},{includePhysicalDatasets:!0});if(u.kind==="resolved"){const f="label"in i&&typeof i.label=="string"?i.label:void 0;return{...u.source,...f?{label:f}:{}}}}if((t==null?void 0:t.mode)==="semanticDomain")return;const d=i.connectionId||(t==null?void 0:t.connectionId),o=i.type==="dataset"&&"table"in i&&i.table?i.table:i.name;if(!d||!o)return;const l={kind:"physical",connectionId:d,connectionType:i.connectionType||(t==null?void 0:t.connectionType),tableName:o,databaseName:i.database||((r=t==null?void 0:t.dbSelection)==null?void 0:r.database),schemaName:i.schema||((g=t==null?void 0:t.dbSelection)==null?void 0:g.schema),dialect:i.dialect};return q(l)?l:void 0}function ye(e,t){var o,l;const n=M(e,t);if(!n)return;const a=e.type==="dataset"&&"table"in e&&typeof e.table=="string"?e.table.trim():void 0,i=n.kind==="physical"?n.tableName:a,s=e.connectionId||(t==null?void 0:t.connectionId),d=i&&s?{connectionId:s,databaseName:e.database||((o=t==null?void 0:t.dbSelection)==null?void 0:o.database),schemaName:e.schema||((l=t==null?void 0:t.dbSelection)==null?void 0:l.schema),tableName:i}:void 0;return{source:n,...d?{executionTable:d}:{}}}function V(e){const t=I(e.dataSource)?e.dataSource:void 0;if(typeof e.sql=="string"&&e.sql.trim()){const d=[],o=Array.isArray(t==null?void 0:t.selectedEntities)?t.selectedEntities:[];for(const l of o){if(!N(l))continue;const r=ye(l,t);r&&!d.some(g=>m.semaphorSourcesReferToSameDataset(g.source,r.source))&&d.push(r)}return{cardId:e.id,kind:"sql",pinnedCatalogSources:d}}if(!I(e.config))return{cardId:e.id,kind:"unconfigured"};const n=[],a=I(e.config.matrixIntent)?e.config.matrixIntent:void 0,i=e.type==="matrixTable"?(a==null?void 0:a.kind)==="matrix"?a.source:e.config.source:void 0;q(i)&&n.push(i);const s=I(e.config.joinPlan)?e.config.joinPlan:void 0;if(s){const d=Array.isArray(s.joins)?s.joins:[],o=[s.baseEntity];for(const r of d)I(r)&&o.push(r.source,r.target);let l=!1;for(const r of o){if(!N(r)){l=!0;continue}const g=M(r,t);g?n.push(g):l=!0}l&&(n.length=0)}else if(e.type!=="matrixTable"){const d=Array.isArray(t==null?void 0:t.selectedEntities)?t.selectedEntities:[];if(d.length===1&&N(d[0])){const o=M(d[0],t);o&&n.push(o)}}if(!n.length&&!s&&e.type!=="matrixTable"){const d=e.config.queryBaseSource;q(d)&&n.push(d)}return{cardId:e.id,kind:"config",executableSources:m.mergeSemaphorSourcesByIdentity(n)}}function X(e,t){return(e.kind==="config"?e.executableSources:e.kind==="sql"?e.pinnedCatalogSources.map(a=>a.source):[]).some(a=>m.semaphorSourcesReferToSameDataset(a,t))}function Ie(e,t){if(e.kind==="config")return e.executableSources.find(n=>m.semaphorSourcesReferToSameDataset(n,t))}function Fe(e,t){var n;return(n=P(e,t))==null?void 0:n.source}function P(e,t){if(e.kind==="sql")return e.pinnedCatalogSources.find(n=>m.semaphorSourcesReferToSameDataset(n.source,t))}function Q(e){const t=new Set;for(const n of[e.name,e.sourceField]){if(!n)continue;const a=m.normalizeAnalyticsCatalogName(n);if(!a)continue;t.add(a);const i=a.split("."),s=i[i.length-1];s&&t.add(s)}return t}function Z(e,t){const n=m.normalizeAnalyticsCatalogDataType(e),a=m.normalizeAnalyticsCatalogDataType(t);return n==="unknown"||a==="unknown"?!1:(n==="date"||n==="datetime")&&(a==="date"||a==="datetime")?!0:n===a}function Te(e,t){return m.semaphorSourcesReferToSameDataset(e.field.source,t.field.source)&&m.normalizeAnalyticsCatalogName(e.field.name)===m.normalizeAnalyticsCatalogName(t.field.name)&&m.normalizeAnalyticsCatalogName(e.field.sourceField||e.field.name)===m.normalizeAnalyticsCatalogName(t.field.sourceField||t.field.name)}function ee(e,t){if(e.kind!=="field")return!1;const n=Q(t),a=Q(e.field);return Z(t.dataType,e.field.dataType)&&[...a].some(i=>n.has(i))}function ve(e){const t=e.candidates.filter(n=>ee(n,e.logicalValueField));return t.length===1?{status:"matched",target:t[0]}:t.length>1?{status:"ambiguous"}:{status:"notApplicable"}}function Ne(e){const t=[];for(const n of e.acceptedTargets)!Z(e.logicalValueField.dataType,n.field.dataType)||t.some(a=>Te(a,n))||t.push(n);return t.length===1?{status:"matched",target:t[0]}:t.length>1?{status:"ambiguous"}:{status:"notApplicable"}}const De=/\{\{-?\s*filters\s*\|\s*where\s*-?\}\}/i,$e=/\{\{-?\s*filters\s*\|\s*and\s*-?\}\}/i,_e=/\bwhere\b/i;function te(e){return e!=null&&e.trim()?De.test(e)||$e.test(e):!1}function Ee(e){return!(e!=null&&e.trim())||te(e)?null:_e.test(e)?{helper:"{{ filters | and }}",description:"For queries with an existing WHERE clause."}:{helper:"{{ filters | where }}",description:"For queries without a WHERE clause."}}function ke(e){return(e.field.sourceField||e.field.name).trim()||void 0}function Ce(e){if(e.inventory.kind!=="sql"||e.target.kind!=="field")return{status:"ineligible"};const t=P(e.inventory,e.target.field.source),n=ke(e.target);if(!t||!n)return{status:"ineligible"};if(t.executionTable){const d=[t.executionTable.databaseName,t.executionTable.schemaName,t.executionTable.tableName,n].filter(Boolean).join(".");return{status:"eligible",source:t.source,executionIdentifier:d}}if(e.inventory.pinnedCatalogSources.length!==1)return{status:"ineligible"};const a=m.normalizeAnalyticsCatalogName(n),i=(e.candidateTargets||[]).filter(d=>m.normalizeAnalyticsCatalogName(d.field.sourceField||d.field.name)===a),s=[];for(const d of i)s.some(o=>m.semaphorSourcesReferToSameDataset(o,d.field.source))||s.push(d.field.source);return s.length>1?{status:"ineligible"}:{status:"eligible",source:t.source,executionIdentifier:n}}class ne extends Error{constructor(n){super(n.map(a=>a.message).join(" "));L(this,"issues");this.name="DashboardFilterMappingContractError",this.issues=n}}const Ae={string:!0,number:!0,boolean:!0,date:!0,datetime:!0};function b(e){return typeof e=="string"&&e.trim().length>0}function h(e){return!!e&&typeof e=="object"&&!Array.isArray(e)}function T(e){return Array.isArray(e)&&e.every(t=>typeof t=="string")}function Re(e){if(!h(e))return!1;switch(e.kind){case"allSheets":return e.sheetKinds===void 0||T(e.sheetKinds)&&e.sheetKinds.every(t=>t==="dashboard"||t==="document");case"sheets":return T(e.sheetIds);case"cards":return T(e.cardIds);case"documentSections":return b(e.sheetId)&&T(e.sectionIds);default:return!1}}function ze(e){return e==="shared"||e==="perSheet"||e==="perCard"||e==="perDocumentSection"}function xe(e){return h(e)?b(e.id)&&b(e.column)&&b(e.dataType):!1}function qe(e,t,n,a){var o;if(!h(t)){a.push({code:"invalid_option_source",path:n,message:`${n} must be a semantic or physical option source.`,inputId:e});return}const i=t.source,s=[["labelField",t.labelField],["valueField",t.valueField],["searchField",t.searchField]];if(!h(i)||i.kind!=="semantic"&&i.kind!=="physical"||!m.hasCompleteSemaphorSourceIdentity(i)||!h(t.labelField)||!h(t.valueField)||t.searchField!==void 0&&!h(t.searchField)||t.disambiguationFields!==void 0&&(!Array.isArray(t.disambiguationFields)||!t.disambiguationFields.every(h))){a.push({code:"invalid_option_source",path:n,message:`${n} must contain a valid semantic or physical source and field references.`,inputId:e});return}for(const[l,r]of s)r!==void 0&&h(r)&&(!b(r.name)||r.source!==void 0&&!m.semaphorSourcesReferToSameDataset(r.source,i))&&a.push({code:"invalid_option_source",path:`${n}.${l}`,message:`${n}.${l} must be a named field belonging to the declared option source.`,inputId:e});for(const[l,r]of((o=t.disambiguationFields)==null?void 0:o.entries())||[])(!h(r)||!b(r.name)||r.source!==void 0&&!m.semaphorSourcesReferToSameDataset(r.source,i))&&a.push({code:"invalid_option_source",path:`${n}.disambiguationFields[${l}]`,message:`${n}.disambiguationFields[${l}] must be a named field belonging to the declared option source.`,inputId:e});const d=t.valueField;["string","number","boolean","date","datetime"].includes(String(d.dataType))||a.push({code:"invalid_option_source",path:`${n}.valueField.dataType`,message:`${n}.valueField.dataType must be a known option-value datatype.`,inputId:e})}function Me(e,t,n,a,i,s){var r;if(b(t.bindingId)||i.push({code:"invalid_binding_id",path:`${n}.bindingId`,message:`${n}.bindingId must be an opaque non-empty id.`,inputId:e,cardId:t.cardId}),((r=t.target)==null?void 0:r.kind)!=="field"){i.push({code:"unsupported_target",path:`${n}.target`,message:`${n}.target must be one direct field target.`,inputId:e,cardId:t.cardId,bindingId:t.bindingId});return}const d=t.target.field;if(!b(d==null?void 0:d.name)||!d.source||d.source.kind!=="semantic"&&d.source.kind!=="physical"||!m.hasCompleteSemaphorSourceIdentity(d.source)){i.push({code:"invalid_target_field",path:`${n}.target.field`,message:`${n}.target.field must have a name and a source-qualified semantic or physical identity.`,inputId:e,cardId:t.cardId,bindingId:t.bindingId});return}if(Object.prototype.hasOwnProperty.call(Ae,d.dataType)||i.push({code:"unknown_target_data_type",path:`${n}.target.field.dataType`,message:`${n}.target.field.dataType must be known.`,inputId:e,cardId:t.cardId,bindingId:t.bindingId}),d.sourceField!==void 0&&!b(d.sourceField)&&i.push({code:"invalid_target_field",path:`${n}.target.field.sourceField`,message:`${n}.target.field.sourceField must be a non-empty catalog-grounded column when provided.`,inputId:e,cardId:t.cardId,bindingId:t.bindingId}),!s)return;const o=a.get(t.cardId);if(!o){i.push({code:"unknown_card",path:`${n}.cardId`,message:`${n}.cardId '${t.cardId}' does not exist.`,inputId:e,cardId:t.cardId,bindingId:t.bindingId});return}const l=V(o);(l.kind==="unconfigured"||!X(l,d.source))&&i.push({code:"unavailable_card_source",path:`${n}.target.field.source`,message:`${n}.target field source is not declared by card '${o.id}'.`,inputId:e,cardId:o.id,bindingId:t.bindingId})}function we(e,t,n,a,i,s){if(t===void 0)return;if(!h(t)||t.kind!=="cardMappings"||!Array.isArray(t.cards)){i.push({code:"invalid_application",path:n,message:`${n} must be a cardMappings application with a cards array.`,inputId:e});return}const d=new Set;t.cards.forEach((o,l)=>{const r=`${n}.cards[${l}]`;if(!b(o==null?void 0:o.cardId)){i.push({code:"unknown_card",path:`${r}.cardId`,message:`${r}.cardId is required.`,inputId:e});return}if(d.has(o.cardId)){i.push({code:"duplicate_card_application",path:`${r}.cardId`,message:`${n} contains more than one entry for card '${o.cardId}'.`,inputId:e,cardId:o.cardId});return}if(d.add(o.cardId),s&&!a.has(o.cardId)){i.push({code:"unknown_card",path:`${r}.cardId`,message:`${r}.cardId '${o.cardId}' does not exist.`,inputId:e,cardId:o.cardId});return}o.kind==="bound"?Me(e,o,r,a,i,s):o.kind!=="excluded"&&i.push({code:"invalid_application",path:r,message:`${r}.kind must be 'bound' or 'excluded'.`,inputId:e,cardId:o.cardId})})}function ie({inputs:e,dashboardFilters:t,cards:n=[],validateCardTargets:a=!1}){const i=[],s=new Map((t||[]).map(r=>[r.id,r])),d=new Map(a?n.map(r=>[r.id,r]):[]),o=[],l=new Map;return e!=null&&!Array.isArray(e)?(i.push({code:"invalid_input",path:"dashboard.inputs",message:"dashboard.inputs must be an array when present."}),{ok:!1,inputs:o,issues:i}):((Array.isArray(e)?e:[]).forEach((r,g)=>{const u=`dashboard.inputs[${g}]`;if(!h(r)||r.kind!=="filter"&&r.kind!=="control"||!b(r.id)||!b(r.label)||!b(r.variableName)||!Re(r.scope)||!ze(r.runtimeScope)){i.push({code:"invalid_input",path:u,message:`${u} must be a complete filter or control Dashboard Input envelope.`,inputId:h(r)&&typeof r.id=="string"?r.id:void 0});return}if(r.kind==="control"&&!h(r.control)){i.push({code:"invalid_input",path:`${u}.control`,message:`${u}.control must be a control definition.`,inputId:r.id});return}const f=r;if(f.kind==="control"){o.push(f);return}const _=f.filter,y=f.filterReference,F=_!==void 0,S=!!y;if(F&&S){i.push({code:"both_filter_definitions",path:u,message:`${u} must contain either filter or filterReference, not both.`,inputId:f.id});return}if(!F&&!S){i.push({code:"missing_filter_definition",path:u,message:`${u} must contain filter or filterReference.`,inputId:f.id});return}if(F&&!xe(_)){i.push({code:"invalid_input",path:`${u}.filter`,message:`${u}.filter must be a complete dashboard filter definition.`,inputId:f.id});return}let p,E;if(F)p=_,E="embedded";else{if((y==null?void 0:y.kind)!=="dashboardFilter"){i.push({code:"invalid_filter_reference",path:`${u}.filterReference.kind`,message:`${u}.filterReference.kind must be 'dashboardFilter'.`,inputId:f.id});return}const k=typeof(y==null?void 0:y.filterId)=="string"?y.filterId:void 0;if(p=k?s.get(k):void 0,E="dashboardFilter",!p){i.push({code:"orphaned_filter_reference",path:`${u}.filterReference.filterId`,message:`${u}.filterReference cannot resolve dashboard filter '${k||""}'.`,inputId:f.id});return}if(p.kind==="global-date"){i.push({code:"global_date_reference",path:`${u}.filterReference`,message:`${u}.filterReference cannot reference the Global Date filter.`,inputId:f.id});return}const O=l.get(p.id);if(O){i.push({code:"duplicate_filter_reference",path:`${u}.filterReference.filterId`,message:`${u}.filterReference duplicates dashboard filter '${p.id}' already owned by Dashboard Input '${O}'.`,inputId:f.id});return}l.set(p.id,f.id)}if(!p)return;if(f.optionSource!==void 0&&qe(f.id,f.optionSource,`${u}.optionSource`,i),f.application&&p.kind==="global-date"){i.push({code:"global_date_reference",path:`${u}.application`,message:`${u}.application cannot map the Global Date filter.`,inputId:f.id});return}f.application&&f.scope.kind!=="allSheets"&&f.scope.kind!=="sheets"&&i.push({code:"unsupported_mapped_scope",path:`${u}.scope`,message:`${u}.scope must be allSheets or sheets when cardMappings are present.`,inputId:f.id}),we(f.id,f.application,`${u}.application`,d,i,a);const{filter:Le,filterReference:He,compatibility:B,...re}=f;o.push({...re,filter:p,...F&&B?{compatibility:B}:{},...f.optionSource?{optionSource:f.optionSource}:{},definitionOrigin:E})}),i.length?{ok:!1,inputs:o,issues:i}:{ok:!0,inputs:o})}function Pe(e){const t=ie(e);if(!t.ok)throw new ne(t.issues);return t.inputs}function Se(e=()=>globalThis.crypto.randomUUID()){return e()}const Be={date:new Set(["between","not between","=","!=",">",">=","<","<=","is null","is not null"]),number:new Set(["between","not between","=","!=",">",">=","<","<=","in","not in","is null","is not null"]),string:new Set(["=","!=","in","not in","like","not like","is null","is not null"]),boolean:new Set(["=","!=","in","not in","is null","is not null"])};function ae(e){const t=m.normalizeAnalyticsCatalogDataType(e);return t==="number"||t==="boolean"?t:t==="date"||t==="datetime"?"date":"string"}function Oe(e,t){return typeof t!="string"?!1:Be[ae(e)].has(t)}exports.DashboardFilterMappingContractError=ne;exports.buildDashboardCardSourceIndex=V;exports.createDashboardFilterBindingId=Se;exports.dashboardCardFilterSourceInventoryContains=X;exports.dashboardFilterTargetMatchesLogicalValue=ee;exports.dashboardFilterValueTypeForDataType=ae;exports.findDashboardCardExecutableSource=Ie;exports.findDashboardCardPinnedCatalogSource=Fe;exports.findDashboardSqlPinnedCatalogSource=P;exports.findOrphanedJoinPlanEntities=pe;exports.getDashboardFilterSubscriptionHint=Ee;exports.hasDashboardFilterSubscription=te;exports.isDashboardFilterOperationCompatible=Oe;exports.materializeFilterDefinitionNativeDataType=fe;exports.materializeFilterValueNativeDataType=K;exports.materializeFilterValuesNativeDataType=ue;exports.normalizeDashboardInputs=ie;exports.normalizeJoinPlanEntityReferences=be;exports.requireNormalizedDashboardInputs=Pe;exports.resolveDashboardFilterAutomaticTarget=ve;exports.resolveDashboardFilterInheritedTarget=Ne;exports.resolveDashboardSqlFilterTarget=Ce;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("react/jsx-runtime"),o=require("react"),b=require("./x-B6ghREd2.cjs"),r=require("./switch-B1mZx2k9.cjs");require("./saved-temporal-bucket-format-DNMtD77o.cjs");require("./validators-DcshgK7w.cjs");require("./analyze-result-contract-OgPk-zGu.cjs");require("../value-format-preferences/index.cjs");require("./index-CneWIz__.cjs");require("./appearance-runtime-provider-BgNYdUYH.cjs");require("./appearance-context-DhyjbQk1.cjs");require("./index-ByFbacH7.cjs");require("./temporal-bucket-authoring-DSpzgXHc.cjs");require("./color-CyB5o13F.cjs");require("react-dom");require("./index-v2MZLyus.cjs");function S(){const t=r.useDashboardStore(e=>e.dashboard),d=r.useDashboardStore(e=>e.actions.setDashboard),c=r.useDashboardStore(e=>e.showDashboardJSON),h=r.useDashboardStore(e=>e.actions.setShowDashboardJSON),s=o.useMemo(()=>t?JSON.stringify(t,null,2):"",[t]),[l,n]=o.useState(s),i=o.useRef(s);return o.useEffect(()=>{s!==i.current&&(n(s),i.current=s)},[s]),a.jsxs("div",{className:r.cn("relative p-2",{hidden:!c}),children:[a.jsxs(r.Button,{variant:"secondary",size:"sm",className:"absolute right-2 top-2 z-10 h-8",onClick:()=>h(!1),children:[a.jsx(b.X,{className:"mr-2 h-4 w-4"}),"Close"]}),a.jsx("div",{className:"h-[550px] overflow-hidden",children:a.jsx(r.CodeEditor,{value:l,onValueChange:e=>{n(e);try{const u=JSON.parse(e);i.current=JSON.stringify(u,null,2),d(u)}catch{}},language:"json"})})]})}exports.default=S;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";const W=require("./index-F25jnH0p.cjs"),J={lessThanXSeconds:{one:"less than a second",other:"less than {{count}} seconds"},xSeconds:{one:"1 second",other:"{{count}} seconds"},halfAMinute:"half a minute",lessThanXMinutes:{one:"less than a minute",other:"less than {{count}} minutes"},xMinutes:{one:"1 minute",other:"{{count}} minutes"},aboutXHours:{one:"about 1 hour",other:"about {{count}} hours"},xHours:{one:"1 hour",other:"{{count}} hours"},xDays:{one:"1 day",other:"{{count}} days"},aboutXWeeks:{one:"about 1 week",other:"about {{count}} weeks"},xWeeks:{one:"1 week",other:"{{count}} weeks"},aboutXMonths:{one:"about 1 month",other:"about {{count}} months"},xMonths:{one:"1 month",other:"{{count}} months"},aboutXYears:{one:"about 1 year",other:"about {{count}} years"},xYears:{one:"1 year",other:"{{count}} years"},overXYears:{one:"over 1 year",other:"over {{count}} years"},almostXYears:{one:"almost 1 year",other:"almost {{count}} years"}},K=(t,e,n)=>{let r;const a=J[t];return typeof a=="string"?r=a:e===1?r=a.one:r=a.other.replace("{{count}}",e.toString()),n!=null&&n.addSuffix?n.comparison&&n.comparison>0?"in "+r:r+" ago":r};function C(t){return(e={})=>{const n=e.width?String(e.width):t.defaultWidth;return t.formats[n]||t.formats[t.defaultWidth]}}const tt={full:"EEEE, MMMM do, y",long:"MMMM do, y",medium:"MMM d, y",short:"MM/dd/yyyy"},et={full:"h:mm:ss a zzzz",long:"h:mm:ss a z",medium:"h:mm:ss a",short:"h:mm a"},nt={full:"{{date}} 'at' {{time}}",long:"{{date}} 'at' {{time}}",medium:"{{date}}, {{time}}",short:"{{date}}, {{time}}"},rt={date:C({formats:tt,defaultWidth:"full"}),time:C({formats:et,defaultWidth:"full"}),dateTime:C({formats:nt,defaultWidth:"full"})},at={lastWeek:"'last' eeee 'at' p",yesterday:"'yesterday at' p",today:"'today at' p",tomorrow:"'tomorrow at' p",nextWeek:"eeee 'at' p",other:"P"},it=(t,e,n,r)=>at[t];function D(t){return(e,n)=>{const r=n!=null&&n.context?String(n.context):"standalone";let a;if(r==="formatting"&&t.formattingValues){const o=t.defaultFormattingWidth||t.defaultWidth,c=n!=null&&n.width?String(n.width):o;a=t.formattingValues[c]||t.formattingValues[o]}else{const o=t.defaultWidth,c=n!=null&&n.width?String(n.width):t.defaultWidth;a=t.values[c]||t.values[o]}const i=t.argumentCallback?t.argumentCallback(e):e;return a[i]}}const ot={narrow:["B","A"],abbreviated:["BC","AD"],wide:["Before Christ","Anno Domini"]},st={narrow:["1","2","3","4"],abbreviated:["Q1","Q2","Q3","Q4"],wide:["1st quarter","2nd quarter","3rd quarter","4th quarter"]},ct={narrow:["J","F","M","A","M","J","J","A","S","O","N","D"],abbreviated:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],wide:["January","February","March","April","May","June","July","August","September","October","November","December"]},ut={narrow:["S","M","T","W","T","F","S"],short:["Su","Mo","Tu","We","Th","Fr","Sa"],abbreviated:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],wide:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]},dt={narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"}},ft={narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"}},mt=(t,e)=>{const n=Number(t),r=n%100;if(r>20||r<10)switch(r%10){case 1:return n+"st";case 2:return n+"nd";case 3:return n+"rd"}return n+"th"},ht={ordinalNumber:mt,era:D({values:ot,defaultWidth:"wide"}),quarter:D({values:st,defaultWidth:"wide",argumentCallback:t=>t-1}),month:D({values:ct,defaultWidth:"wide"}),day:D({values:ut,defaultWidth:"wide"}),dayPeriod:D({values:dt,defaultWidth:"wide",formattingValues:ft,defaultFormattingWidth:"wide"})};function k(t){return(e,n={})=>{const r=n.width,a=r&&t.matchPatterns[r]||t.matchPatterns[t.defaultMatchWidth],i=e.match(a);if(!i)return null;const o=i[0],c=r&&t.parsePatterns[r]||t.parsePatterns[t.defaultParseWidth],d=Array.isArray(c)?gt(c,g=>g.test(o)):lt(c,g=>g.test(o));let u;u=t.valueCallback?t.valueCallback(d):d,u=n.valueCallback?n.valueCallback(u):u;const m=e.slice(o.length);return{value:u,rest:m}}}function lt(t,e){for(const n in t)if(Object.prototype.hasOwnProperty.call(t,n)&&e(t[n]))return n}function gt(t,e){for(let n=0;n<t.length;n++)if(e(t[n]))return n}function wt(t){return(e,n={})=>{const r=e.match(t.matchPattern);if(!r)return null;const a=r[0],i=e.match(t.parsePattern);if(!i)return null;let o=t.valueCallback?t.valueCallback(i[0]):i[0];o=n.valueCallback?n.valueCallback(o):o;const c=e.slice(a.length);return{value:o,rest:c}}}const yt=/^(\d+)(th|st|nd|rd)?/i,bt=/\d+/i,Ot={narrow:/^(b|a)/i,abbreviated:/^(b\.?\s?c\.?|b\.?\s?c\.?\s?e\.?|a\.?\s?d\.?|c\.?\s?e\.?)/i,wide:/^(before christ|before common era|anno domini|common era)/i},Mt={any:[/^b/i,/^(a|c)/i]},xt={narrow:/^[1234]/i,abbreviated:/^q[1234]/i,wide:/^[1234](th|st|nd|rd)? quarter/i},Pt={any:[/1/i,/2/i,/3/i,/4/i]},Tt={narrow:/^[jfmasond]/i,abbreviated:/^(jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec)/i,wide:/^(january|february|march|april|may|june|july|august|september|october|november|december)/i},Dt={narrow:[/^j/i,/^f/i,/^m/i,/^a/i,/^m/i,/^j/i,/^j/i,/^a/i,/^s/i,/^o/i,/^n/i,/^d/i],any:[/^ja/i,/^f/i,/^mar/i,/^ap/i,/^may/i,/^jun/i,/^jul/i,/^au/i,/^s/i,/^o/i,/^n/i,/^d/i]},kt={narrow:/^[smtwf]/i,short:/^(su|mo|tu|we|th|fr|sa)/i,abbreviated:/^(sun|mon|tue|wed|thu|fri|sat)/i,wide:/^(sunday|monday|tuesday|wednesday|thursday|friday|saturday)/i},vt={narrow:[/^s/i,/^m/i,/^t/i,/^w/i,/^t/i,/^f/i,/^s/i],any:[/^su/i,/^m/i,/^tu/i,/^w/i,/^th/i,/^f/i,/^sa/i]},Wt={narrow:/^(a|p|mi|n|(in the|at) (morning|afternoon|evening|night))/i,any:/^([ap]\.?\s?m\.?|midnight|noon|(in the|at) (morning|afternoon|evening|night))/i},St={any:{am:/^a/i,pm:/^p/i,midnight:/^mi/i,noon:/^no/i,morning:/morning/i,afternoon:/afternoon/i,evening:/evening/i,night:/night/i}},Yt={ordinalNumber:wt({matchPattern:yt,parsePattern:bt,valueCallback:t=>parseInt(t,10)}),era:k({matchPatterns:Ot,defaultMatchWidth:"wide",parsePatterns:Mt,defaultParseWidth:"any"}),quarter:k({matchPatterns:xt,defaultMatchWidth:"wide",parsePatterns:Pt,defaultParseWidth:"any",valueCallback:t=>t+1}),month:k({matchPatterns:Tt,defaultMatchWidth:"wide",parsePatterns:Dt,defaultParseWidth:"any"}),day:k({matchPatterns:kt,defaultMatchWidth:"wide",parsePatterns:vt,defaultParseWidth:"any"}),dayPeriod:k({matchPatterns:Wt,defaultMatchWidth:"any",parsePatterns:St,defaultParseWidth:"any"})},R={code:"en-US",formatDistance:K,formatLong:rt,formatRelative:it,localize:ht,match:Yt,options:{weekStartsOn:0,firstWeekContainsDate:1}};let Ft={};function x(){return Ft}const B=6048e5,Ct=864e5,Et=6e4,Nt=36e5,pt=43200,Xt=1440;function l(t){const e=Object.prototype.toString.call(t);return t instanceof Date||typeof t=="object"&&e==="[object Date]"?new t.constructor(+t):typeof t=="number"||e==="[object Number]"||typeof t=="string"||e==="[object String]"?new Date(t):new Date(NaN)}function I(t){const e=l(t);return e.setHours(0,0,0,0),e}function N(t){const e=l(t),n=new Date(Date.UTC(e.getFullYear(),e.getMonth(),e.getDate(),e.getHours(),e.getMinutes(),e.getSeconds(),e.getMilliseconds()));return n.setUTCFullYear(e.getFullYear()),+t-+n}function qt(t,e){const n=I(t),r=I(e),a=+n-N(n),i=+r-N(r);return Math.round((a-i)/Ct)}function y(t,e){return t instanceof Date?new t.constructor(e):new Date(e)}function zt(t){const e=l(t),n=y(t,0);return n.setFullYear(e.getFullYear(),0,1),n.setHours(0,0,0,0),n}function It(t){const e=l(t);return qt(e,zt(e))+1}function v(t,e){var c,d,u,m;const n=x(),r=(e==null?void 0:e.weekStartsOn)??((d=(c=e==null?void 0:e.locale)==null?void 0:c.options)==null?void 0:d.weekStartsOn)??n.weekStartsOn??((m=(u=n.locale)==null?void 0:u.options)==null?void 0:m.weekStartsOn)??0,a=l(t),i=a.getDay(),o=(i<r?7:0)+i-r;return a.setDate(a.getDate()-o),a.setHours(0,0,0,0),a}function S(t){return v(t,{weekStartsOn:1})}function Z(t){const e=l(t),n=e.getFullYear(),r=y(t,0);r.setFullYear(n+1,0,4),r.setHours(0,0,0,0);const a=S(r),i=y(t,0);i.setFullYear(n,0,4),i.setHours(0,0,0,0);const o=S(i);return e.getTime()>=a.getTime()?n+1:e.getTime()>=o.getTime()?n:n-1}function Ht(t){const e=Z(t),n=y(t,0);return n.setFullYear(e,0,4),n.setHours(0,0,0,0),S(n)}function Lt(t){const e=l(t),n=+S(e)-+Ht(e);return Math.round(n/B)+1}function $(t,e){var m,g,P,T;const n=l(t),r=n.getFullYear(),a=x(),i=(e==null?void 0:e.firstWeekContainsDate)??((g=(m=e==null?void 0:e.locale)==null?void 0:m.options)==null?void 0:g.firstWeekContainsDate)??a.firstWeekContainsDate??((T=(P=a.locale)==null?void 0:P.options)==null?void 0:T.firstWeekContainsDate)??1,o=y(t,0);o.setFullYear(r+1,0,i),o.setHours(0,0,0,0);const c=v(o,e),d=y(t,0);d.setFullYear(r,0,i),d.setHours(0,0,0,0);const u=v(d,e);return n.getTime()>=c.getTime()?r+1:n.getTime()>=u.getTime()?r:r-1}function Qt(t,e){var c,d,u,m;const n=x(),r=(e==null?void 0:e.firstWeekContainsDate)??((d=(c=e==null?void 0:e.locale)==null?void 0:c.options)==null?void 0:d.firstWeekContainsDate)??n.firstWeekContainsDate??((m=(u=n.locale)==null?void 0:u.options)==null?void 0:m.firstWeekContainsDate)??1,a=$(t,e),i=y(t,0);return i.setFullYear(a,0,r),i.setHours(0,0,0,0),v(i,e)}function jt(t,e){const n=l(t),r=+v(n,e)-+Qt(n,e);return Math.round(r/B)+1}function s(t,e){const n=t<0?"-":"",r=Math.abs(t).toString().padStart(e,"0");return n+r}const w={y(t,e){const n=t.getFullYear(),r=n>0?n:1-n;return s(e==="yy"?r%100:r,e.length)},M(t,e){const n=t.getMonth();return e==="M"?String(n+1):s(n+1,2)},d(t,e){return s(t.getDate(),e.length)},a(t,e){const n=t.getHours()/12>=1?"pm":"am";switch(e){case"a":case"aa":return n.toUpperCase();case"aaa":return n;case"aaaaa":return n[0];case"aaaa":default:return n==="am"?"a.m.":"p.m."}},h(t,e){return s(t.getHours()%12||12,e.length)},H(t,e){return s(t.getHours(),e.length)},m(t,e){return s(t.getMinutes(),e.length)},s(t,e){return s(t.getSeconds(),e.length)},S(t,e){const n=e.length,r=t.getMilliseconds(),a=Math.trunc(r*Math.pow(10,n-3));return s(a,e.length)}},O={midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},H={G:function(t,e,n){const r=t.getFullYear()>0?1:0;switch(e){case"G":case"GG":case"GGG":return n.era(r,{width:"abbreviated"});case"GGGGG":return n.era(r,{width:"narrow"});case"GGGG":default:return n.era(r,{width:"wide"})}},y:function(t,e,n){if(e==="yo"){const r=t.getFullYear(),a=r>0?r:1-r;return n.ordinalNumber(a,{unit:"year"})}return w.y(t,e)},Y:function(t,e,n,r){const a=$(t,r),i=a>0?a:1-a;if(e==="YY"){const o=i%100;return s(o,2)}return e==="Yo"?n.ordinalNumber(i,{unit:"year"}):s(i,e.length)},R:function(t,e){const n=Z(t);return s(n,e.length)},u:function(t,e){const n=t.getFullYear();return s(n,e.length)},Q:function(t,e,n){const r=Math.ceil((t.getMonth()+1)/3);switch(e){case"Q":return String(r);case"QQ":return s(r,2);case"Qo":return n.ordinalNumber(r,{unit:"quarter"});case"QQQ":return n.quarter(r,{width:"abbreviated",context:"formatting"});case"QQQQQ":return n.quarter(r,{width:"narrow",context:"formatting"});case"QQQQ":default:return n.quarter(r,{width:"wide",context:"formatting"})}},q:function(t,e,n){const r=Math.ceil((t.getMonth()+1)/3);switch(e){case"q":return String(r);case"qq":return s(r,2);case"qo":return n.ordinalNumber(r,{unit:"quarter"});case"qqq":return n.quarter(r,{width:"abbreviated",context:"standalone"});case"qqqqq":return n.quarter(r,{width:"narrow",context:"standalone"});case"qqqq":default:return n.quarter(r,{width:"wide",context:"standalone"})}},M:function(t,e,n){const r=t.getMonth();switch(e){case"M":case"MM":return w.M(t,e);case"Mo":return n.ordinalNumber(r+1,{unit:"month"});case"MMM":return n.month(r,{width:"abbreviated",context:"formatting"});case"MMMMM":return n.month(r,{width:"narrow",context:"formatting"});case"MMMM":default:return n.month(r,{width:"wide",context:"formatting"})}},L:function(t,e,n){const r=t.getMonth();switch(e){case"L":return String(r+1);case"LL":return s(r+1,2);case"Lo":return n.ordinalNumber(r+1,{unit:"month"});case"LLL":return n.month(r,{width:"abbreviated",context:"standalone"});case"LLLLL":return n.month(r,{width:"narrow",context:"standalone"});case"LLLL":default:return n.month(r,{width:"wide",context:"standalone"})}},w:function(t,e,n,r){const a=jt(t,r);return e==="wo"?n.ordinalNumber(a,{unit:"week"}):s(a,e.length)},I:function(t,e,n){const r=Lt(t);return e==="Io"?n.ordinalNumber(r,{unit:"week"}):s(r,e.length)},d:function(t,e,n){return e==="do"?n.ordinalNumber(t.getDate(),{unit:"date"}):w.d(t,e)},D:function(t,e,n){const r=It(t);return e==="Do"?n.ordinalNumber(r,{unit:"dayOfYear"}):s(r,e.length)},E:function(t,e,n){const r=t.getDay();switch(e){case"E":case"EE":case"EEE":return n.day(r,{width:"abbreviated",context:"formatting"});case"EEEEE":return n.day(r,{width:"narrow",context:"formatting"});case"EEEEEE":return n.day(r,{width:"short",context:"formatting"});case"EEEE":default:return n.day(r,{width:"wide",context:"formatting"})}},e:function(t,e,n,r){const a=t.getDay(),i=(a-r.weekStartsOn+8)%7||7;switch(e){case"e":return String(i);case"ee":return s(i,2);case"eo":return n.ordinalNumber(i,{unit:"day"});case"eee":return n.day(a,{width:"abbreviated",context:"formatting"});case"eeeee":return n.day(a,{width:"narrow",context:"formatting"});case"eeeeee":return n.day(a,{width:"short",context:"formatting"});case"eeee":default:return n.day(a,{width:"wide",context:"formatting"})}},c:function(t,e,n,r){const a=t.getDay(),i=(a-r.weekStartsOn+8)%7||7;switch(e){case"c":return String(i);case"cc":return s(i,e.length);case"co":return n.ordinalNumber(i,{unit:"day"});case"ccc":return n.day(a,{width:"abbreviated",context:"standalone"});case"ccccc":return n.day(a,{width:"narrow",context:"standalone"});case"cccccc":return n.day(a,{width:"short",context:"standalone"});case"cccc":default:return n.day(a,{width:"wide",context:"standalone"})}},i:function(t,e,n){const r=t.getDay(),a=r===0?7:r;switch(e){case"i":return String(a);case"ii":return s(a,e.length);case"io":return n.ordinalNumber(a,{unit:"day"});case"iii":return n.day(r,{width:"abbreviated",context:"formatting"});case"iiiii":return n.day(r,{width:"narrow",context:"formatting"});case"iiiiii":return n.day(r,{width:"short",context:"formatting"});case"iiii":default:return n.day(r,{width:"wide",context:"formatting"})}},a:function(t,e,n){const a=t.getHours()/12>=1?"pm":"am";switch(e){case"a":case"aa":return n.dayPeriod(a,{width:"abbreviated",context:"formatting"});case"aaa":return n.dayPeriod(a,{width:"abbreviated",context:"formatting"}).toLowerCase();case"aaaaa":return n.dayPeriod(a,{width:"narrow",context:"formatting"});case"aaaa":default:return n.dayPeriod(a,{width:"wide",context:"formatting"})}},b:function(t,e,n){const r=t.getHours();let a;switch(r===12?a=O.noon:r===0?a=O.midnight:a=r/12>=1?"pm":"am",e){case"b":case"bb":return n.dayPeriod(a,{width:"abbreviated",context:"formatting"});case"bbb":return n.dayPeriod(a,{width:"abbreviated",context:"formatting"}).toLowerCase();case"bbbbb":return n.dayPeriod(a,{width:"narrow",context:"formatting"});case"bbbb":default:return n.dayPeriod(a,{width:"wide",context:"formatting"})}},B:function(t,e,n){const r=t.getHours();let a;switch(r>=17?a=O.evening:r>=12?a=O.afternoon:r>=4?a=O.morning:a=O.night,e){case"B":case"BB":case"BBB":return n.dayPeriod(a,{width:"abbreviated",context:"formatting"});case"BBBBB":return n.dayPeriod(a,{width:"narrow",context:"formatting"});case"BBBB":default:return n.dayPeriod(a,{width:"wide",context:"formatting"})}},h:function(t,e,n){if(e==="ho"){let r=t.getHours()%12;return r===0&&(r=12),n.ordinalNumber(r,{unit:"hour"})}return w.h(t,e)},H:function(t,e,n){return e==="Ho"?n.ordinalNumber(t.getHours(),{unit:"hour"}):w.H(t,e)},K:function(t,e,n){const r=t.getHours()%12;return e==="Ko"?n.ordinalNumber(r,{unit:"hour"}):s(r,e.length)},k:function(t,e,n){let r=t.getHours();return r===0&&(r=24),e==="ko"?n.ordinalNumber(r,{unit:"hour"}):s(r,e.length)},m:function(t,e,n){return e==="mo"?n.ordinalNumber(t.getMinutes(),{unit:"minute"}):w.m(t,e)},s:function(t,e,n){return e==="so"?n.ordinalNumber(t.getSeconds(),{unit:"second"}):w.s(t,e)},S:function(t,e){return w.S(t,e)},X:function(t,e,n){const r=t.getTimezoneOffset();if(r===0)return"Z";switch(e){case"X":return Q(r);case"XXXX":case"XX":return b(r);case"XXXXX":case"XXX":default:return b(r,":")}},x:function(t,e,n){const r=t.getTimezoneOffset();switch(e){case"x":return Q(r);case"xxxx":case"xx":return b(r);case"xxxxx":case"xxx":default:return b(r,":")}},O:function(t,e,n){const r=t.getTimezoneOffset();switch(e){case"O":case"OO":case"OOO":return"GMT"+L(r,":");case"OOOO":default:return"GMT"+b(r,":")}},z:function(t,e,n){const r=t.getTimezoneOffset();switch(e){case"z":case"zz":case"zzz":return"GMT"+L(r,":");case"zzzz":default:return"GMT"+b(r,":")}},t:function(t,e,n){const r=Math.trunc(t.getTime()/1e3);return s(r,e.length)},T:function(t,e,n){const r=t.getTime();return s(r,e.length)}};function L(t,e=""){const n=t>0?"-":"+",r=Math.abs(t),a=Math.trunc(r/60),i=r%60;return i===0?n+String(a):n+String(a)+e+s(i,2)}function Q(t,e){return t%60===0?(t>0?"-":"+")+s(Math.abs(t)/60,2):b(t,e)}function b(t,e=""){const n=t>0?"-":"+",r=Math.abs(t),a=s(Math.trunc(r/60),2),i=s(r%60,2);return n+a+e+i}const j=(t,e)=>{switch(t){case"P":return e.date({width:"short"});case"PP":return e.date({width:"medium"});case"PPP":return e.date({width:"long"});case"PPPP":default:return e.date({width:"full"})}},A=(t,e)=>{switch(t){case"p":return e.time({width:"short"});case"pp":return e.time({width:"medium"});case"ppp":return e.time({width:"long"});case"pppp":default:return e.time({width:"full"})}},_t=(t,e)=>{const n=t.match(/(P+)(p+)?/)||[],r=n[1],a=n[2];if(!a)return j(t,e);let i;switch(r){case"P":i=e.dateTime({width:"short"});break;case"PP":i=e.dateTime({width:"medium"});break;case"PPP":i=e.dateTime({width:"long"});break;case"PPPP":default:i=e.dateTime({width:"full"});break}return i.replace("{{date}}",j(r,e)).replace("{{time}}",A(a,e))},Gt={p:A,P:_t},Rt=/^D+$/,Bt=/^Y+$/,Zt=["D","DD","YY","YYYY"];function $t(t){return Rt.test(t)}function At(t){return Bt.test(t)}function Ut(t,e,n){const r=Vt(t,e,n);if(console.warn(r),Zt.includes(t))throw new RangeError(r)}function Vt(t,e,n){const r=t[0]==="Y"?"years":"days of the month";return`Use \`${t.toLowerCase()}\` instead of \`${t}\` (in \`${e}\`) for formatting ${r} to the input \`${n}\`; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md`}function Jt(t){return t instanceof Date||typeof t=="object"&&Object.prototype.toString.call(t)==="[object Date]"}function Kt(t){if(!Jt(t)&&typeof t!="number")return!1;const e=l(t);return!isNaN(Number(e))}const te=/[yYQqMLwIdDecihHKkms]o|(\w)\1*|''|'(''|[^'])+('|$)|./g,ee=/P+p+|P+|p+|''|'(''|[^'])+('|$)|./g,ne=/^'([^]*?)'?$/,re=/''/g,ae=/[a-zA-Z]/;function U(t,e,n){var m,g,P,T,p,X,q,z;const r=x(),a=(n==null?void 0:n.locale)??r.locale??R,i=(n==null?void 0:n.firstWeekContainsDate)??((g=(m=n==null?void 0:n.locale)==null?void 0:m.options)==null?void 0:g.firstWeekContainsDate)??r.firstWeekContainsDate??((T=(P=r.locale)==null?void 0:P.options)==null?void 0:T.firstWeekContainsDate)??1,o=(n==null?void 0:n.weekStartsOn)??((X=(p=n==null?void 0:n.locale)==null?void 0:p.options)==null?void 0:X.weekStartsOn)??r.weekStartsOn??((z=(q=r.locale)==null?void 0:q.options)==null?void 0:z.weekStartsOn)??0,c=l(t);if(!Kt(c))throw new RangeError("Invalid time value");let d=e.match(ee).map(h=>{const f=h[0];if(f==="p"||f==="P"){const F=Gt[f];return F(h,a.formatLong)}return h}).join("").match(te).map(h=>{if(h==="''")return{isToken:!1,value:"'"};const f=h[0];if(f==="'")return{isToken:!1,value:ie(h)};if(H[f])return{isToken:!0,value:h};if(f.match(ae))throw new RangeError("Format string contains an unescaped latin alphabet character `"+f+"`");return{isToken:!1,value:h}});a.localize.preprocessor&&(d=a.localize.preprocessor(c,d));const u={firstWeekContainsDate:i,weekStartsOn:o,locale:a};return d.map(h=>{if(!h.isToken)return h.value;const f=h.value;(!(n!=null&&n.useAdditionalWeekYearTokens)&&At(f)||!(n!=null&&n.useAdditionalDayOfYearTokens)&&$t(f))&&Ut(f,e,String(t));const F=H[f[0]];return F(c,f,a.localize,u)}).join("")}function ie(t){const e=t.match(ne);return e?e[1].replace(re,"'"):t}function oe(){return Object.assign({},x())}function _(t,e,n){const r=oe(),a=ue(t,n.timeZone,n.locale??r.locale);return"formatToParts"in a?se(a,e):ce(a,e)}function se(t,e){const n=t.formatToParts(e);for(let r=n.length-1;r>=0;--r)if(n[r].type==="timeZoneName")return n[r].value}function ce(t,e){const n=t.format(e).replace(/\u200E/g,""),r=/ [\w-+ ]+$/.exec(n);return r?r[0].substr(1):""}function ue(t,e,n){return new Intl.DateTimeFormat(n?[n.code,"en-US"]:void 0,{timeZone:e,timeZoneName:t})}const de=60*1e3,fe={X:function(t,e,n){const r=E(n.timeZone,t);if(r===0)return"Z";switch(e){case"X":return G(r);case"XXXX":case"XX":return M(r);case"XXXXX":case"XXX":default:return M(r,":")}},x:function(t,e,n){const r=E(n.timeZone,t);switch(e){case"x":return G(r);case"xxxx":case"xx":return M(r);case"xxxxx":case"xxx":default:return M(r,":")}},O:function(t,e,n){const r=E(n.timeZone,t);switch(e){case"O":case"OO":case"OOO":return"GMT"+me(r,":");case"OOOO":default:return"GMT"+M(r,":")}},z:function(t,e,n){switch(e){case"z":case"zz":case"zzz":return _("short",t,n);case"zzzz":default:return _("long",t,n)}}};function E(t,e){const n=t?W.tzParseTimezone(t,e,!0)/de:(e==null?void 0:e.getTimezoneOffset())??0;if(Number.isNaN(n))throw new RangeError("Invalid time zone specified: "+t);return n}function Y(t,e){const n=t<0?"-":"";let r=Math.abs(t).toString();for(;r.length<e;)r="0"+r;return n+r}function M(t,e=""){const n=t>0?"-":"+",r=Math.abs(t),a=Y(Math.floor(r/60),2),i=Y(Math.floor(r%60),2);return n+a+e+i}function G(t,e){return t%60===0?(t>0?"-":"+")+Y(Math.abs(t)/60,2):M(t,e)}function me(t,e=""){const n=t>0?"-":"+",r=Math.abs(t),a=Math.floor(r/60),i=r%60;return i===0?n+String(a):n+String(a)+e+Y(i,2)}const he=/([xXOz]+)|''|'(''|[^'])+('|$)/g;function le(t,e,n={}){e=String(e);const r=e.match(he);if(r){const a=W.toDate(n.originalDate||t,n);e=r.reduce(function(i,o){if(o[0]==="'")return i;const c=i.indexOf(o),d=i[c-1]==="'",u=i.replace(o,"'"+fe[o[0]](a,o,n)+"'");return d?u.substring(0,c-1)+u.substring(c+1):u},e)}return U(t,e,n)}function V(t,e,n){t=W.toDate(t,n);const r=W.tzParseTimezone(e,t,!0),a=new Date(t.getTime()-r),i=new Date(0);return i.setFullYear(a.getUTCFullYear(),a.getUTCMonth(),a.getUTCDate()),i.setHours(a.getUTCHours(),a.getUTCMinutes(),a.getUTCSeconds(),a.getUTCMilliseconds()),i}function ge(t,e,n,r){return r={...r,timeZone:e,originalDate:t},le(V(t,e,{timeZone:r.timeZone}),n,r)}function we(t){if(!t||typeof t!="object")return!1;const e=t.type;return e==="number"||e==="currency"||e==="percent"||e==="scientific"}exports.constructFrom=y;exports.enUS=R;exports.format=U;exports.formatInTimeZone=ge;exports.getDefaultOptions=x;exports.getTimezoneOffsetInMilliseconds=N;exports.isNumericCanonicalFormat=we;exports.millisecondsInHour=Nt;exports.millisecondsInMinute=Et;exports.minutesInDay=Xt;exports.minutesInMonth=pt;exports.toDate=l;exports.toZonedTime=V;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";var _=Object.defineProperty;var B=(e,t,a)=>t in e?_(e,t,{enumerable:!0,configurable:!0,writable:!0,value:a}):e[t]=a;var p=(e,t,a)=>B(e,typeof t!="symbol"?t+"":t,a);const S=require("./temporal-bucket-9Wz9Ds6H.cjs"),T=require("./validators-DcshgK7w.cjs"),k=require("./temporal-bucket-contract-BD862TAa.cjs");class w extends Error{constructor(a){super(a.message);p(this,"code");p(this,"path");this.name="MatrixResultContractError",this.code=a.code,this.path=a.path}}function R(e){var u,m,x;const t=H(e);if(t!==2)throw new w({code:"unsupported_matrix_result_version",message:`Canonical Matrix results require schemaVersion 2; received ${String(t)}.`,path:"schemaVersion"});const a=T.semaphorMatrixResultSchema.safeParse(e);if(!a.success){const d=a.error.issues[0];throw o((d==null?void 0:d.message)||"Canonical Matrix result has an invalid shape.",d==null?void 0:d.path.join("."))}const r=a.data,s={row:$(r.axes.rows.levels,"axes.rows.levels"),column:$(r.axes.columns.levels,"axes.columns.levels")};G(r),b(r,"row"),b(r,"column");const i=new Set([...r.axes.rows.nodeIds,...r.axes.columns.nodeIds]),n=new Set;for(const[d,l]of Object.entries(r.nodesById)){if(l.id!==d)throw o("Matrix node directory key must equal node.id.",`nodesById.${d}.id`);if(!i.has(d))throw o("Matrix node directory cannot contain nodes omitted from both axes.",`nodesById.${d}`);q(l,s[l.axis],`nodesById.${d}`);const f=JSON.stringify([l.axis,l.path,l.isSubtotal===!0,l.isGrandTotal===!0]);if(n.has(f))throw o("Matrix nodes must have unique canonical path and total-role identity.",`nodesById.${d}`);n.add(f),O(r,l,`nodesById.${d}`)}const c=new Set;for(const[d,l]of r.cells.entries()){if(!((u=r.nodesById[l.rowId])!=null&&u.axis)||((m=r.nodesById[l.rowId])==null?void 0:m.axis)!=="row")throw o("Matrix cell rowId must reference a row node.",`cells.${d}.rowId`);if(l.columnId&&((x=r.nodesById[l.columnId])==null?void 0:x.axis)!=="column")throw o("Matrix cell columnId must reference a column node.",`cells.${d}.columnId`);if(!r.measuresById[l.measureId])throw o("Matrix cell measureId must reference a measure.",`cells.${d}.measureId`);const f=K(r.nodesById[l.rowId],l.columnId?r.nodesById[l.columnId]:void 0);if(l.role!==f)throw o("Matrix cell role must match its referenced row and column total roles.",`cells.${d}.role`);const I=JSON.stringify([l.rowId,l.columnId??null,l.measureId]);if(c.has(I))throw o("Matrix result cannot contain duplicate physical cell addresses.",`cells.${d}`);c.add(I)}return C(r,s),r}function $(e,t){var r;const a=new Map;for(const[s,i]of e.entries()){const n=`${t}.${s}`;if(a.has(i.instanceId))throw o("Matrix axis level ids must be unique.",`${n}.instanceId`);a.set(i.instanceId,i);const c=i.field.role==="date"||i.field.dataType==="date"||i.field.dataType==="datetime",u=i.field.dataType==="string"||i.field.dataType==="number"||i.field.dataType==="boolean";if(c&&!i.grain)throw o("Temporal Matrix axis level is missing its explicit grain.",`${n}.grain`);if(u&&i.grain)throw o("Non-temporal Matrix axis level cannot carry a grain.",`${n}.grain`);if(i.grain){if(!i.temporalBucket)throw o("Temporal Matrix axis level is missing governed bucket metadata.",`${n}.temporalBucket`);const m=k.validateTemporalBucketMetadata(i.temporalBucket);if(!m.ok||((r=m.value)==null?void 0:r.granularity)!==i.grain)throw o("Matrix axis grain and temporal metadata must agree.",`${n}.temporalBucket`)}else if(i.temporalBucket)throw o("Non-temporal Matrix axis levels cannot carry temporal bucket metadata.",n)}return a}function b(e,t){var s;const a=t==="row"?e.axes.rows:e.axes.columns,r=new Set;for(const[i,n]of a.nodeIds.entries()){if(r.has(n))throw o("Matrix axis node ids must be unique.",`axes.${t==="row"?"rows":"columns"}.nodeIds.${i}`);if(r.add(n),((s=e.nodesById[n])==null?void 0:s.axis)!==t)throw o("Matrix axis node id references the wrong axis.",`axes.${t==="row"?"rows":"columns"}.nodeIds.${i}`)}}function q(e,t,a){if(e.isGrandTotal){if(e.isSubtotal)throw o("Matrix nodes cannot be both subtotal and grand total.",a);if(e.path.length!==0)throw o("Matrix grand-total nodes must have an empty member path.",`${a}.path`);return}if(!e.path.length||e.level!==e.path.length-1)throw o("Ordinary and subtotal Matrix nodes require a level-aligned non-empty path.",a);const r=[...t.values()];if(e.path.length>r.length)throw o("Matrix node path exceeds its authored axis depth.",`${a}.path`);if(e.isSubtotal&&e.path.length>=r.length)throw o("Matrix subtotal nodes must identify a proper authored-axis prefix.",`${a}.path`);e.path.forEach((c,u)=>{const m=r[u];if(c.instanceId==="__matrix_remaining__"&&c.fieldKey==="__matrix_remaining__"&&c.value==="__matrix_remaining__"){if(u!==e.path.length-1)throw o("Matrix remaining-member identity must be the terminal path segment.",`${a}.path.${u}`);if(typeof c.label!="string")throw o("Matrix remaining-member paths require their explicit display label.",`${a}.path.${u}.label`);return}if(!m||c.instanceId!==m.instanceId||c.fieldKey!==m.fieldKey)throw o("Matrix member path must follow authored axis order and identity.",`${a}.path.${u}`);g(c,m,`${a}.path.${u}`)});const s=e.path[e.path.length-1],i=s.instanceId==="__matrix_remaining__"&&s.fieldKey==="__matrix_remaining__"&&s.value==="__matrix_remaining__";if(!y(e.value,s.value))throw o("Matrix node value must equal its final canonical path member.",`${a}.value`);const n=r[e.path.length-1];if(n!=null&&n.temporalBucket&&!e.isSubtotal&&!i&&e.label!==void 0)throw o("Temporal Matrix nodes cannot transport display labels.",`${a}.label`);if((!(n!=null&&n.temporalBucket)||i)&&typeof e.label!="string")throw o("Non-temporal Matrix nodes require a display label.",`${a}.label`)}function K(e,t){return e.isGrandTotal&&(t!=null&&t.isGrandTotal)?"matrixGrandTotal":e.isGrandTotal?"rowGrandTotal":t!=null&&t.isGrandTotal?"columnGrandTotal":e.isSubtotal&&(t!=null&&t.isSubtotal)?"subtotalIntersection":e.isSubtotal?"rowSubtotal":t!=null&&t.isSubtotal?"columnSubtotal":"value"}function g(e,t,a){if(t.temporalBucket){if(e.label!==void 0)throw o("Temporal Matrix path members cannot transport display labels.",`${a}.label`);if(e.value!==null&&typeof e.value!="string")throw o("Temporal Matrix member values must be canonical strings or null.",`${a}.value`);const r=S.parseTemporalBucketValue(e.value,t.temporalBucket);if(!r.ok)throw o(r.error.message,`${a}.value`)}else if(typeof e.label!="string")throw o("Non-temporal Matrix path members require a display label.",`${a}.label`)}function C(e,t){const a=[...t.row.values()];if(e.layout.rowHeaderLevels.length!==a.length)throw o("Matrix row-header layout must describe every row-axis level exactly once.","layout.rowHeaderLevels");e.layout.rowHeaderLevels.forEach((s,i)=>{var n;if(s.fieldInstanceId!==((n=a[i])==null?void 0:n.instanceId))throw o("Matrix row-header layout must follow authored row-axis order.",`layout.rowHeaderLevels.${i}.fieldInstanceId`)});for(const[s,i]of e.layout.columnHeaderRows.entries())for(const[n,c]of i.cells.entries()){if(v(c.columnPath,t.column,`layout.columnHeaderRows.${s}.cells.${n}.columnPath`),c.measureInstanceId&&!e.measuresById[c.measureInstanceId])throw o("Matrix header measureInstanceId must reference a measure.",`layout.columnHeaderRows.${s}.cells.${n}.measureInstanceId`);if(c.role==="columnHeader"&&c.label!==void 0)throw o("Matrix member headers cannot transport composed display labels.",`layout.columnHeaderRows.${s}.cells.${n}.label`)}const r=new Set;for(const[s,i]of e.layout.columns.entries()){if(r.has(i.id))throw o("Matrix layout column ids must be unique.",`layout.columns.${s}.id`);if(r.add(i.id),v(i.columnPath,t.column,`layout.columns.${s}.columnPath`),i.role==="value"&&i.columnPath.length>0&&i.label!==void 0)throw o("Matrix value columns with member paths cannot transport composed display labels.",`layout.columns.${s}.label`);if(!e.measuresById[i.measureInstanceId])throw o("Matrix layout column measureInstanceId must reference a measure.",`layout.columns.${s}.measureInstanceId`);if(i.columnNodeId){const n=e.nodesById[i.columnNodeId];if((n==null?void 0:n.axis)!=="column"||!y(n.path,i.columnPath))throw o("Matrix layout column must match its referenced column node path.",`layout.columns.${s}.columnNodeId`)}else if(t.column.size>0)throw o("Matrix columns with an authored column axis require a columnNodeId.",`layout.columns.${s}.columnNodeId`)}}function v(e,t,a){const r=[...t.values()];if(e.length>r.length)throw o("Matrix layout path exceeds its authored axis depth.",a);e.forEach((s,i)=>{const n=r[i];if(!n||s.instanceId!==n.instanceId||s.fieldKey!==n.fieldKey)throw o("Matrix layout path must follow authored axis order and identity.",`${a}.${i}`);g(s,n,`${a}.${i}`)})}function O(e,t,a){if(!t.parentId)return;const r=e.nodesById[t.parentId];if(!r)throw o("Matrix parentId must reference an existing node.",`${a}.parentId`);if(r.axis!==t.axis||r.path.length!==t.path.length-1||!y(r.path,t.path.slice(0,-1)))throw o("Matrix parentId must reference the immediate same-axis path prefix.",`${a}.parentId`)}function G(e){for(const[t,a]of[["rows",e.axes.rows],["columns",e.axes.columns]]){const r=t==="rows"?"row":"column";a.levels.forEach((s,i)=>{const n=e.fieldsById[s.instanceId];if(!n||n.instanceId!==s.instanceId||n.fieldKey!==s.fieldKey||n.role!==r||!M(n.field,s.field))throw o("Matrix axis level must have one matching role-scoped field descriptor.",`axes.${t}.levels.${i}`)})}for(const[t,a]of Object.entries(e.measuresById)){if(a.instanceId!==t)throw o("Matrix measure directory key must equal measure.instanceId.",`measuresById.${t}.instanceId`);const r=e.fieldsById[t];if(!r||r.instanceId!==t||r.fieldKey!==a.fieldKey||r.role!=="measure"||!M(r.field,a.field))throw o("Matrix measure must have one matching field descriptor.",`measuresById.${t}`)}}function H(e){return e&&typeof e=="object"?e.schemaVersion:void 0}function y(e,t){return JSON.stringify(e)===JSON.stringify(t)}function M(e,t){return h(e)===h(t)}function h(e){if(Array.isArray(e))return`[${e.map(h).join(",")}]`;if(e&&typeof e=="object"){const t=e;return`{${Object.keys(t).filter(a=>t[a]!==void 0).sort().map(a=>`${JSON.stringify(a)}:${h(t[a])}`).join(",")}}`}return e===void 0?"undefined":JSON.stringify(e)}function o(e,t){return new w({code:"invalid_matrix_result_contract",message:e,path:t})}exports.MatrixResultContractError=w;exports.parseCanonicalMatrixResult=R;
|
|
@@ -1,4 +0,0 @@
|
|
|
1
|
-
"use strict";var X=Object.defineProperty;var Z=(e,t,r)=>t in e?X(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r;var x=(e,t,r)=>Z(e,typeof t!="symbol"?t+"":t,r);const c=require("./format-types-PSZZ7hG8.cjs"),M=require("./pivot-result-lifecycle-CcGt_29N.cjs"),B=require("./index-F25jnH0p.cjs"),j=require("./temporal-bucket-9Wz9Ds6H.cjs");function y(e,t){const r=c.toDate(e),o=c.toDate(t),n=r.getTime()-o.getTime();return n<0?-1:n>0?1:n}function H(e){return c.constructFrom(e,Date.now())}function Y(e,t){const r=c.toDate(e),o=c.toDate(t),n=r.getFullYear()-o.getFullYear(),a=r.getMonth()-o.getMonth();return n*12+a}function K(e){return t=>{const o=(e?Math[e]:Math.trunc)(t);return o===0?0:o}}function W(e,t){return+c.toDate(e)-+c.toDate(t)}function q(e){const t=c.toDate(e);return t.setHours(23,59,59,999),t}function J(e){const t=c.toDate(e),r=t.getMonth();return t.setFullYear(t.getFullYear(),r+1,0),t.setHours(23,59,59,999),t}function Q(e){const t=c.toDate(e);return+q(t)==+J(t)}function z(e,t){const r=c.toDate(e),o=c.toDate(t),n=y(r,o),a=Math.abs(Y(r,o));let i;if(a<1)i=0;else{r.getMonth()===1&&r.getDate()>27&&r.setDate(30),r.setMonth(r.getMonth()-n*a);let s=y(r,o)===-n;Q(c.toDate(e))&&a===1&&y(e,o)===1&&(s=!1),i=n*(a-Number(s))}return i===0?0:i}function ee(e,t,r){const o=W(e,t)/1e3;return K(r==null?void 0:r.roundingMethod)(o)}function te(e,t,r){const o=c.getDefaultOptions(),n=(r==null?void 0:r.locale)??o.locale??c.enUS,a=2520,i=y(e,t);if(isNaN(i))throw new RangeError("Invalid time value");const s=Object.assign({},r,{addSuffix:r==null?void 0:r.addSuffix,comparison:i});let l,u;i>0?(l=c.toDate(t),u=c.toDate(e)):(l=c.toDate(e),u=c.toDate(t));const g=ee(u,l),m=(c.getTimezoneOffsetInMilliseconds(u)-c.getTimezoneOffsetInMilliseconds(l))/1e3,f=Math.round((g-m)/60);let h;if(f<2)return r!=null&&r.includeSeconds?g<5?n.formatDistance("lessThanXSeconds",5,s):g<10?n.formatDistance("lessThanXSeconds",10,s):g<20?n.formatDistance("lessThanXSeconds",20,s):g<40?n.formatDistance("halfAMinute",0,s):g<60?n.formatDistance("lessThanXMinutes",1,s):n.formatDistance("xMinutes",1,s):f===0?n.formatDistance("lessThanXMinutes",1,s):n.formatDistance("xMinutes",f,s);if(f<45)return n.formatDistance("xMinutes",f,s);if(f<90)return n.formatDistance("aboutXHours",1,s);if(f<c.minutesInDay){const d=Math.round(f/60);return n.formatDistance("aboutXHours",d,s)}else{if(f<a)return n.formatDistance("xDays",1,s);if(f<c.minutesInMonth){const d=Math.round(f/c.minutesInDay);return n.formatDistance("xDays",d,s)}else if(f<c.minutesInMonth*2)return h=Math.round(f/c.minutesInMonth),n.formatDistance("aboutXMonths",h,s)}if(h=z(u,l),h<12){const d=Math.round(f/c.minutesInMonth);return n.formatDistance("xMonths",d,s)}else{const d=h%12,w=Math.trunc(h/12);return d<3?n.formatDistance("aboutXYears",w,s):d<9?n.formatDistance("overXYears",w,s):n.formatDistance("almostXYears",w+1,s)}}function v(e,t){return te(e,H(e),t)}const R=["day","hour","minute","second","millisecond"],A={day:864e5,hour:36e5,minute:6e4,second:1e3,millisecond:1},re={day:"d",hour:"hr",minute:"min",second:"s",millisecond:"ms"},ne={day:["day","days"],hour:["hour","hours"],minute:["minute","minutes"],second:["second","seconds"],millisecond:["millisecond","milliseconds"]};function oe(e){return e==="day"||e==="hour"||e==="minute"||e==="second"||e==="millisecond"}function E(e,t){return oe(e)?e:t}function S(e,t){return R.indexOf(E(e,t))}function ae(e,t){const r=S(e,"day"),o=S(t,"second"),n=Math.min(r,o),a=Math.max(r,o);return R.slice(n,a+1)}function se(e,t){return e*A[E(t,"second")]}function ie(e,t){const r=ae(t.largestUnit,t.smallestUnit),o=r[r.length-1],n=A[o];let a=Math.round(e/n)*n;return r.map(i=>{const s=A[i],l=Math.floor(a/s);return a-=l*s,{unit:i,value:l}})}function le(e,t){const r=e.filter(a=>a.value!==0),o=r.length>0?r:[e[e.length-1]],n=typeof t=="number"&&Number.isFinite(t)?Math.max(1,Math.trunc(t)):o.length;return o.slice(0,n).map(a=>`${a.value}${re[a.unit]}`).join(" ")}function ce(e,t){const r=e.filter(a=>a.value!==0),o=r.length>0?r:[e[e.length-1]],n=typeof t=="number"&&Number.isFinite(t)?Math.max(1,Math.trunc(t)):o.length;return o.slice(0,n).map(a=>{const[i,s]=ne[a.unit];return`${a.value} ${a.value===1?i:s}`}).join(" ")}function ue(e){const t=e.some(l=>l.unit==="day"&&l.value!==0),r=e.some(l=>l.unit==="millisecond"),o=e.findIndex(l=>l.value!==0),n=Math.max(0,e.length-2),a=t?0:o===-1?n:Math.min(o,n),i=o===-1?e.slice(n):e.slice(a);if(i.length===0)return"0";const s=i.map((l,u)=>l.unit==="millisecond"?String(l.value).padStart(3,"0"):u===0?String(l.value):String(l.value).padStart(2,"0")).join(":");return r?s.replace(/:(\d{3})$/,".$1"):s}function fe(e,t,r){const o=`${r.prefix||""}${e}${r.suffix||""}`;return t?r.negativeInParentheses?`(${o})`:`-${o}`:o}function V(e,t={}){if(e==null)return"";const r=typeof e=="number"?e:typeof e=="string"&&e.trim()?Number(e):NaN;if(!Number.isFinite(r))return"";const o=t.inputUnit||"second",n=t.outputStyle==="digital"||t.outputStyle==="long"?t.outputStyle:"compact",a=r<0,i=Math.abs(se(r,o)),s=ie(i,t),l=n==="digital"?ue(s):n==="long"?ce(s,t.maxUnits):le(s,t.maxUnits);return fe(l,a,t)}function me(e,t,r){const o={...t,locale:t.locale??r};if(o.type==="number")return M.formatNumericCanonical(e,o);const{prefix:n,suffix:a,...i}=o;return`${n??""}${M.formatNumericCanonical(e,{...i,negativeStyle:o.type==="currency"?o.negativeStyle:"minus"})}${a??""}`}function T(e,t,r){return e===null?{value:e,text:null}:!t||!c.isNumericCanonicalFormat(t)&&t.type!=="duration"?{value:e,text:M.formatNumericCanonical(e,{type:"number",locale:r})}:t.type==="duration"?{value:e,text:V(e,{inputUnit:t.inputUnit,outputStyle:t.outputStyle,largestUnit:t.largestUnit,smallestUnit:t.smallestUnit,maxUnits:t.maxUnits,prefix:t.prefix,suffix:t.suffix,negativeInParentheses:t.negativeStyle==="parentheses"})}:{value:e,text:me(e,t,r)}}function C(e,t,r,o){return e===null?{value:e,text:null}:o==="percent"?{value:e,text:M.formatNumericCanonical(e,{type:"percent",locale:r,minimumFractionDigits:t,maximumFractionDigits:t,percentValueMode:"fraction"})}:{value:e,text:M.formatNumericCanonical(e,{type:"number",locale:r,minimumFractionDigits:t,maximumFractionDigits:t,suffix:"×"})}}function _(e,t){if(e===void 0)return t;if(!Number.isInteger(e)||e<0||e>6)throw new RangeError("Comparison precision must be an integer from 0 to 6.");return e}function ge(e,t){const r={mode:t.displayMode,current:T(e.currentValue,t.metricFormat,t.locale),comparison:T(e.comparisonValue,t.metricFormat,t.locale)};return(t.displayMode==="difference"||t.displayMode==="both")&&(r.difference=T(e.delta,t.metricFormat,t.locale)),(t.displayMode==="percent_change"||t.displayMode==="both")&&(r.percentChange=C(e.percentChange,_(t.precision,1),t.locale,"percent")),t.displayMode==="ratio"&&(r.ratio=C(e.ratio,_(t.precision,2),t.locale,"ratio")),r}function de(e,t){return e&&e!=="auto"?e:t}function he(e,t=new Date){try{const r={timeZone:e,timeZoneName:"short"},n=new Intl.DateTimeFormat("en-US",r).formatToParts(t).find(a=>a.type==="timeZoneName");return(n==null?void 0:n.value)||e}catch{return e}}function Me(e){try{const t={timeZone:e,timeZoneName:"long"},o=new Intl.DateTimeFormat("en-US",t).formatToParts(new Date).find(n=>n.type==="timeZoneName");return(o==null?void 0:o.value)||e}catch{return e}}function L(e,t="auto"){if(!e)return new Date(NaN);const r=e.endsWith("Z"),o=/[+-]\d{2}:?\d{2}$/.test(e),n=/\([A-Z]{3,4}\)$/.test(e);if(t==="auto")return r||o||n?new Date(e):new Date(e+"Z");if(t==="local"){if(r||o){const a=e.replace(/Z$/,"").replace(/[+-]\d{2}:?\d{2}$/,"");return new Date(a)}return new Date(e)}else return t==="UTC"?r?new Date(e):o?new Date(e):new Date(e+"Z"):r||o||n?new Date(e):B.fromZonedTime(e,t)}const ye="MM/dd/yyyy",De=(e,t,r,o="auto")=>{if(!e)return"";try{const n=L(e,o);if(isNaN(n.getTime()))return e;const i=(t&&t.trim()?t:ye).replace(/LLLL/g,"MMMM").replace(/LLL/g,"MMM");return r&&r!=="auto"?c.formatInTimeZone(n,r,i):c.format(n,i)}catch(n){return console.error("Date formatting error:",n),e}},be=(e,t="auto")=>{if(!e)return"";try{const r=L(e,t);return isNaN(r.getTime())?e:v(r,{addSuffix:!0})}catch(r){return console.error("Relative time formatting error:",r),e}};function I(e,t=","){if(e==null)return"";const r=String(e);return r.includes(t)||r.includes('"')||r.includes(`
|
|
2
|
-
`)||r.includes("\r")?`"${r.replace(/"/g,'""')}"`:r}function N(e,t=","){return e.map(r=>I(r,t)).join(t)}function O(e,t={}){const{delimiter:r=",",lineEnding:o=`
|
|
3
|
-
`}=t;return e.map(n=>N(n,r)).join(o)}function we(e,t={}){if(e.length===0)return"";const{delimiter:r=",",lineEnding:o=`
|
|
4
|
-
`,includeHeaders:n=!0,columns:a}=t,i=a||Object.keys(e[0]),s=[];n&&s.push(i);for(const l of e){const u=i.map(g=>{const m=l[g];return m==null?"":String(m)});s.push(u)}return O(s,{delimiter:r,lineEnding:o})}const P=1e4,Te=1e6;function Ae(e){return e>P}const $="__TOTAL__";function D(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function b(e){return e===$}function Le(e){const t=new Map,r=(e.groupByColumns??[]).map((n,a)=>{var u,g,m;if(!D(n))throw new Error(`Aggregate groupByColumns[${a}] is invalid`);const i=typeof n.id=="string"&&n.id.length>0?n.id:void 0,s=i?(m=(g=(u=e.columnKeyMap)==null?void 0:u.byRole)==null?void 0:g.groupby)==null?void 0:m[i]:void 0,l=(s==null?void 0:s.outputKey)||(s==null?void 0:s.rawKey)||(typeof n.alias=="string"&&n.alias.length>0?n.alias:typeof n.name=="string"&&n.name.length>0?n.name:void 0);if(!l)throw new Error(`Aggregate groupByColumns[${a}] has no output key`);return[i,n.alias,n.name,l].forEach(f=>{typeof f=="string"&&f.length>0&&t.set(f,l)}),l}),o=(e.rowAggregates??[]).flatMap(n=>!D(n)||typeof n.function!="string"||typeof n.groupLevel!="string"?[]:[{function:n.function,groupLevel:n.groupLevel==="ALL"?"ALL":t.get(n.groupLevel)||n.groupLevel,...typeof n.label=="string"?{label:n.label}:{}}]);return{groupColumnKeys:r,rowAggregates:o}}function F(e){return e==="SUM"?"Total":e.charAt(0).toUpperCase()+e.slice(1).toLowerCase()}function U(e){var r;if(e.customLabel)return e.customLabel;const t=F(e.aggregateFunction);if(e.levelValue!==void 0&&!b(e.levelValue)){if(e.levelValue===null){const n=(r=e.formatValue)==null?void 0:r.call(e,null);return n?`Subtotal ${n}`:`Subtotal ${t}`}const o=e.formatValue?e.formatValue(e.levelValue):String(e.levelValue);if(o)return`Subtotal (${o})`}return`Subtotal ${t}`}function G(e,t){return t||`Grand ${F(e)}`}function pe(e){const t=e.context.groupColumnKeys.indexOf(e.columnKey);if(t<0)throw new Error(`Aggregate group column "${e.columnKey}" is unknown`);if(!e.previousRow||e.row.isSubtotal===!0||e.row.isGrandTotal===!0||e.previousRow.isSubtotal===!0||e.previousRow.isGrandTotal===!0)return!0;for(let r=0;r<=t;r++){const o=e.context.groupColumnKeys[r];if(e.row[o]!==e.previousRow[o])return!0}return!1}function p(e){var o,n;const t=e.context.groupColumnKeys,r=typeof e.row.aggregate=="string"?e.row.aggregate:"SUM";if(e.row.isGrandTotal===!0){const a=(o=e.context.rowAggregates.find(i=>i.groupLevel==="ALL"))==null?void 0:o.label;return{kind:"grand-total",cells:t.map((i,s)=>({columnKey:i,text:s===0?G(r,a):"",placement:s===0?"label":"empty",colSpan:s===0?t.length:1}))}}if(e.row.isSubtotal===!0){if(typeof e.row.subtotalLevel!="string")throw new Error("Aggregate subtotal row is missing subtotalLevel");const a=t.indexOf(e.row.subtotalLevel);if(a<0)throw new Error(`Aggregate subtotal level "${e.row.subtotalLevel}" has no group column`);const i=D(e.row.subtotalContext)?e.row.subtotalContext:void 0,s=D(i==null?void 0:i.groupByValues)?i.groupByValues:{},l=(n=e.context.rowAggregates.find(u=>u.groupLevel===e.row.subtotalLevel&&u.function===r))==null?void 0:n.label;return{kind:"subtotal",cells:t.map((u,g)=>{if(g>a)return{columnKey:u,text:"",placement:"empty",colSpan:1};if(g<a){const m=e.row[u];return{columnKey:u,text:m===void 0||b(m)?"":e.formatValue(m,u),placement:"value",colSpan:1}}return{columnKey:u,text:U({aggregateFunction:r,customLabel:l,levelValue:s[u],formatValue:m=>e.formatLabelValue?e.formatLabelValue(m,u):String(e.formatValue(m,u)??"")}),placement:"label",colSpan:t.length-a}})}}return{kind:"data",cells:t.map(a=>{const i=e.row[a];return{columnKey:a,text:i===void 0||b(i)?"":e.formatValue(i,a),placement:"value",colSpan:1}})}}function xe(e){const t=p(e).cells.find(r=>r.columnKey===e.columnKey);if(!t)throw new Error(`Aggregate group column "${e.columnKey}" is unknown`);return t.text}function Se(e){return p(e).cells.map(t=>t.text)}class k extends Error{constructor(r,o){super(`${r}: ${o}`);x(this,"deliveryBlocking",!0);this.code=r,this.name="PivotHeaderPresentationError"}}function Ce(e){var n;const t=e.mode??"formatted",r=e.members.map(a=>{var s;if(t==="canonical"||!a.temporalBucket)return a.value===null?"":String(a.value);const i=(s=e.resolveTemporalFormat)==null?void 0:s.call(e,a.fieldId);if(!i)throw new k("missing_resolved_temporal_format",`Missing resolved temporal presentation for pivot field "${a.fieldId}"`);return j.formatTemporalBucket({value:a.value,metadata:a.temporalBucket,format:i})}),o=((n=e.metricLabel)==null?void 0:n.trim())||void 0;return{memberLabels:r,...o?{metricLabel:o}:{},flattenedLabel:[...r,...o?[o]:[]].join(" / ")}}exports.AGGREGATE_TOTAL_MEMBER_MARKER=$;exports.DIRECT_CSV_EXPORT_MAX_ROWS=P;exports.FULL_DATASET_CSV_EXPORT_MAX_ROWS=Te;exports.PivotHeaderPresentationError=k;exports.arrayToCSV=O;exports.arrayToCSVRow=N;exports.escapeCSVValue=I;exports.formatAggregateGrandTotalLabel=G;exports.formatAggregateGroupCell=xe;exports.formatAggregateGroupRow=Se;exports.formatAggregateSubtotalLabel=U;exports.formatDate=De;exports.formatDistanceToNow=v;exports.formatDuration=V;exports.formatMetricComparison=ge;exports.formatRelativeTime=be;exports.getTimezoneAbbreviation=he;exports.getTimezoneName=Me;exports.isAggregateTotalMemberMarker=b;exports.objectsToCSV=we;exports.parseWithSourceTimezone=L;exports.presentAggregateGroupRow=p;exports.presentPivotHeader=Ce;exports.requiresChunkedCsvExport=Ae;exports.resolveAggregateTablePresentationContext=Le;exports.resolveTimezone=de;exports.shouldPresentAggregateGroupValue=pe;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";var ue=Object.defineProperty;var de=(e,t,r)=>t in e?ue(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r;var g=(e,t,r)=>de(e,typeof t!="symbol"?t+"":t,r);const w=require("./validators-DcshgK7w.cjs"),fe=require("./raw-temporal-contract-D8YuxTAg.cjs"),x=require("../value-format-preferences/index.cjs"),h=require("./temporal-bucket-9Wz9Ds6H.cjs"),ye=require("./index-F25jnH0p.cjs"),he=require("./report-runtime-context-RFiWq4wK.cjs");require("./analyze-result-contract-OgPk-zGu.cjs");const ge=require("./temporal-bucket-contract-BD862TAa.cjs"),j=require("./pivot-result-identity-DRUlTWUq.cjs");function O(e){if(!e)return!1;const t=e.toLowerCase().replace("_","-");return t==="en-in"||t.startsWith("en-in-")}function q(e,t){const r=Math.abs(e);return r>=1e12?{divisor:1e12,suffix:"T"}:r>=1e9?{divisor:1e9,suffix:"B"}:O(t)&&r>=1e7?{divisor:1e7,suffix:"Cr"}:r>=1e6?{divisor:1e6,suffix:"M"}:O(t)&&r>=1e5?{divisor:1e5,suffix:"L"}:r>=1e3?{divisor:1e3,suffix:"K"}:{divisor:1,suffix:""}}function D(e,t){try{const r=b(t);return q(e,r)}catch{return q(e,"en-US")}}function ve(e){try{return new Intl.NumberFormat(e),!0}catch{return!1}}function b(e){return e&&ve(e)?e:"en-US"}function F(e,t){if(e==null||isNaN(e))return"";const r=b(t==null?void 0:t.locale);let a=e;if(t!=null&&t.multiplyBy&&(a*=t.multiplyBy),t!=null&&t.useSuffix){const{divisor:i,suffix:o}=D(a,r);a=a/i;const s=new Intl.NumberFormat(r,{minimumFractionDigits:(t==null?void 0:t.minimumFractionDigits)??0,maximumFractionDigits:(t==null?void 0:t.maximumFractionDigits)??2,useGrouping:(t==null?void 0:t.useGrouping)??!0}).format(a);return`${(t==null?void 0:t.prefix)??""}${s}${o}${(t==null?void 0:t.suffix)??""}`}const n=new Intl.NumberFormat(r,{minimumFractionDigits:(t==null?void 0:t.minimumFractionDigits)??0,maximumFractionDigits:(t==null?void 0:t.maximumFractionDigits)??2,useGrouping:(t==null?void 0:t.useGrouping)??!0}).format(a);if(t!=null&&t.negativeInParentheses&&a<0){const i=n.replace("-","");return`(${(t==null?void 0:t.prefix)??""}${i}${(t==null?void 0:t.suffix)??""})`}return`${(t==null?void 0:t.prefix)??""}${n}${(t==null?void 0:t.suffix)??""}`}function M(e,t){if(e==null||isNaN(e))return"";const r=b(t==null?void 0:t.locale),a=(t==null?void 0:t.currency)||"USD",n=e<0,i=!!(t!=null&&t.negativeInParentheses&&n),o=i?Math.abs(e):e;try{if(t!=null&&t.useSuffix){const{divisor:l,suffix:m}=D(o,r),c=o/l,f=`${new Intl.NumberFormat(r,{style:"currency",currency:a,minimumFractionDigits:(t==null?void 0:t.minimumFractionDigits)??0,maximumFractionDigits:(t==null?void 0:t.maximumFractionDigits)??2,useGrouping:(t==null?void 0:t.useGrouping)??!0}).format(c)}${m}`;return i?`(${f})`:f}const s=new Intl.NumberFormat(r,{style:"currency",currency:a,minimumFractionDigits:(t==null?void 0:t.minimumFractionDigits)??0,maximumFractionDigits:(t==null?void 0:t.maximumFractionDigits)??2,useGrouping:(t==null?void 0:t.useGrouping)??!0}).format(o);return i?`(${s})`:s}catch{const s=Math.abs(e),l=t!=null&&t.useSuffix?D(s,r):{divisor:1,suffix:""},m=F(s/l.divisor,{locale:r,minimumFractionDigits:(t==null?void 0:t.minimumFractionDigits)??0,maximumFractionDigits:(t==null?void 0:t.maximumFractionDigits)??2,useGrouping:(t==null?void 0:t.useGrouping)??!0}),c=`${a} ${m}${l.suffix}`;return n?t!=null&&t.negativeInParentheses?`(${c})`:`-${c}`:c}}function P(e,t){if(e==null||isNaN(e))return"";const r=b(t==null?void 0:t.locale),n=(t==null?void 0:t.alreadyPercent)??(t==null?void 0:t.percentValueMode)==="whole"?e/100:e;return new Intl.NumberFormat(r,{style:"percent",minimumFractionDigits:(t==null?void 0:t.minimumFractionDigits)??0,maximumFractionDigits:(t==null?void 0:t.maximumFractionDigits)??2,useGrouping:(t==null?void 0:t.useGrouping)??!0}).format(n)}function N(e,t){if(e==null||isNaN(e))return"";const r=b(t==null?void 0:t.locale);return new Intl.NumberFormat(r,{notation:"scientific",minimumFractionDigits:(t==null?void 0:t.minimumFractionDigits)??0,maximumFractionDigits:(t==null?void 0:t.maximumFractionDigits)??2}).format(e)}function U(e,t){if(e==null||Number.isNaN(e))return"";const r=t.scale===void 0?e:e*t.scale,a=t.negativeStyle==="parentheses"&&r<0,n=a?Math.abs(r):r,i={style:t.type==="number"?"decimal":t.type,locale:t.locale,currency:t.currency,minimumFractionDigits:t.minimumFractionDigits,maximumFractionDigits:t.maximumFractionDigits,useGrouping:t.useGrouping,percentValueMode:t.percentValueMode,useSuffix:t.compact};let o;switch(t.type){case"currency":o=M(n,i);break;case"percent":o=P(n,i);break;case"scientific":o=N(n,i);break;default:o=F(n,i);break}const s=`${t.prefix??""}${o}${t.suffix??""}`;return a?`(${s})`:s}function we(e,t,r="en-US"){if(e==null||isNaN(e))return"";const a=b((t==null?void 0:t.locale)||r),n=(t==null?void 0:t.style)||"decimal",i=n==="decimal"?"number":n;return i==="currency"&&new Intl.NumberFormat(a,{style:"currency",currency:(t==null?void 0:t.currency)||"USD"}),U(e,{type:i,locale:a,currency:i==="currency"?(t==null?void 0:t.currency)||"USD":void 0,minimumFractionDigits:(t==null?void 0:t.minimumFractionDigits)??0,maximumFractionDigits:(t==null?void 0:t.maximumFractionDigits)??2,useGrouping:(t==null?void 0:t.useGrouping)??!0,percentValueMode:i==="percent"?(t==null?void 0:t.percentValueMode)??"whole":void 0,scale:t==null?void 0:t.scale,compact:t==null?void 0:t.compact,negativeStyle:t==null?void 0:t.negativeStyle,prefix:t==null?void 0:t.prefix,suffix:t==null?void 0:t.suffix})}function pe(e,t,r){const a={style:t==="currency"?"currency":t==="percent"?"percent":"decimal",locale:r==null?void 0:r.locale,currency:r==null?void 0:r.currency,minimumFractionDigits:r==null?void 0:r.decimalPlaces,maximumFractionDigits:r==null?void 0:r.decimalPlaces,useSuffix:r==null?void 0:r.useSuffix,prefix:r==null?void 0:r.prefix,suffix:r==null?void 0:r.suffix,negativeInParentheses:r==null?void 0:r.negativeInParentheses,multiplyBy:r==null?void 0:r.multiplyBy};switch(t){case"currency":return M(e,a);case"percent":return P(e,a);case"scientific":return N(e,a);default:return F(e,a)}}const xe=["type","locale","minimumFractionDigits","maximumFractionDigits","useGrouping","prefix","suffix","negativeStyle","compact","scale","currency","percentValueMode"];function J(e){if(!h.isPlainJsonRecord(e))return{ok:!1,issues:[{path:"$",message:"Numeric format must be an object."}]};const t=[],r=new Set(xe);Object.keys(e).filter(i=>!r.has(i)).forEach(i=>t.push({path:i,message:`Unknown property "${i}".`})),e.type!=="number"&&e.type!=="currency"&&e.type!=="percent"&&e.type!=="scientific"&&t.push({path:"type",message:"Expected number, currency, percent, or scientific."});const a=e.locale===void 0?void 0:x.canonicalizeSupportedLocale(e.locale);e.locale!==void 0&&!a&&t.push({path:"locale",message:"Expected a supported BCP 47 locale."});const n=e.currency===void 0?void 0:x.canonicalizeSupportedCurrencyCode(e.currency);e.currency!==void 0&&!n&&t.push({path:"currency",message:"Expected a supported ISO 4217 currency code."});for(const i of["minimumFractionDigits","maximumFractionDigits"]){const o=e[i];o!==void 0&&(!Number.isInteger(o)||typeof o!="number"||o<0||o>20)&&t.push({path:i,message:"Expected an integer from 0 to 20."})}typeof e.minimumFractionDigits=="number"&&typeof e.maximumFractionDigits=="number"&&e.minimumFractionDigits>e.maximumFractionDigits&&t.push({path:"maximumFractionDigits",message:"Must be greater than or equal to minimumFractionDigits."});for(const i of["useGrouping","compact"])e[i]!==void 0&&typeof e[i]!="boolean"&&t.push({path:i,message:"Expected a boolean."});for(const i of["prefix","suffix"])e[i]!==void 0&&typeof e[i]!="string"&&t.push({path:i,message:"Expected a string."});return e.negativeStyle!==void 0&&e.negativeStyle!=="minus"&&e.negativeStyle!=="parentheses"&&t.push({path:"negativeStyle",message:"Expected minus or parentheses."}),e.percentValueMode!==void 0&&e.percentValueMode!=="fraction"&&e.percentValueMode!=="whole"&&t.push({path:"percentValueMode",message:"Expected fraction or whole."}),e.scale!==void 0&&(typeof e.scale!="number"||!Number.isFinite(e.scale))&&t.push({path:"scale",message:"Expected a finite number."}),t.length>0?{ok:!1,issues:t}:{ok:!0,value:{type:e.type,...a?{locale:a}:{},...e.minimumFractionDigits!==void 0?{minimumFractionDigits:e.minimumFractionDigits}:{},...e.maximumFractionDigits!==void 0?{maximumFractionDigits:e.maximumFractionDigits}:{},...e.useGrouping!==void 0?{useGrouping:e.useGrouping}:{},...e.prefix!==void 0?{prefix:e.prefix}:{},...e.suffix!==void 0?{suffix:e.suffix}:{},...e.negativeStyle!==void 0?{negativeStyle:e.negativeStyle}:{},...e.compact!==void 0?{compact:e.compact}:{},...e.scale!==void 0?{scale:e.scale}:{},...n?{currency:n}:{},...e.percentValueMode!==void 0?{percentValueMode:e.percentValueMode}:{}}}}function H(e){const t=J(e);if(!t.ok)return t;const r=[];return t.value.locale||r.push({path:"locale",message:"Resolved numeric formats require an explicit locale."}),t.value.minimumFractionDigits===void 0&&r.push({path:"minimumFractionDigits",message:"Resolved numeric formats require minimumFractionDigits."}),t.value.maximumFractionDigits===void 0&&r.push({path:"maximumFractionDigits",message:"Resolved numeric formats require maximumFractionDigits."}),t.value.type==="currency"&&!t.value.currency&&r.push({path:"currency",message:"Resolved currency formats require an explicit currency."}),r.length>0?{ok:!1,issues:r}:t}function Se(e){var a;const t=new Set;if(e.snapshot.resolvedFormats.forEach((n,i)=>{if(n.format.type!=="temporal_bucket"){if(n.scope.attachmentIndex!==void 0)throw new Error(`resolvedFormats.${i}.scope.attachmentIndex is not valid for a card export`);if(n.scope.dashboardId!==e.expectedScope.dashboardId||n.scope.cardId!==e.expectedScope.cardId)throw new Error(`resolvedFormats.${i}.scope must match the executing dashboard/card`);if(n.target.kind!=="column")throw new Error(`resolvedFormats.${i}.target must identify an export column`);if(t.has(n.target.columnKey))throw new Error(`resolvedFormats.${i} duplicates export column "${n.target.columnKey}"`);t.add(n.target.columnKey)}}),!e.useFormattedValues)return;if(!((a=e.visibleColumns)!=null&&a.length))throw new Error("visibleColumns must identify every formatted export column");const r=e.visibleColumns.find(n=>!t.has(n));if(r)throw new Error(`resolvedFormats is missing visible export column "${r}"`)}function Y(e,t){const r=new Intl.NumberFormat(e,{style:"currency",currency:t}).resolvedOptions();return{minimumFractionDigits:r.minimumFractionDigits,maximumFractionDigits:r.maximumFractionDigits}}function be(e){if(e.minimumFractionDigits!==void 0||e.maximumFractionDigits!==void 0){const r=e.minimumFractionDigits??0;return{minimumFractionDigits:r,maximumFractionDigits:e.maximumFractionDigits??Math.max(r,2)}}const t=e.type==="percent"?1:e.type==="scientific"?2:0;return{minimumFractionDigits:t,maximumFractionDigits:t}}function Te(e,t,r){const a=x.canonicalizeSupportedLocale(e.locale)??t.locale,n=e.type==="number"||e.type==="currency"?x.canonicalizeSupportedCurrencyCode(r):void 0;if(!(e.type==="currency"||n!==void 0))return{...e,locale:a,...be(e)};const o=n??x.canonicalizeSupportedCurrencyCode(e.currency)??t.defaultCurrency,s=Y(a,o),l=s.minimumFractionDigits??0,m=s.maximumFractionDigits??l,c=e.minimumFractionDigits??Math.min(l,e.maximumFractionDigits??l),y=e.maximumFractionDigits??Math.max(c,m);return{...e,type:"currency",locale:a,currency:o,minimumFractionDigits:c,maximumFractionDigits:y}}class p extends Error{constructor(r,a){super(a);g(this,"code");this.name="RawTemporalFormatContractError",this.code=r}}const ke=["SSSSSSSSS","SSSSSSSS","SSSSSSS","SSSSSS","SSSSS","SSSS","SSS","SS","S"],X=/^(\d{4})-(\d{2})-(\d{2})$/,W=/^(\d{4})-(\d{2})-(\d{2})[T ](\d{2}):(\d{2})(?::(\d{2})(?:\.(\d{1,9}))?)?$/,Q=/^(\d{4})-(\d{2})-(\d{2})[T ](\d{2}):(\d{2})(?::(\d{2})(?:\.(\d{1,9}))?)?(Z|[+-]\d{2}:\d{2})$/,_e=["yyyy","MMMM","LLLL","zzz","XXX","MMM","LLL","yy","MM","dd","HH","hh","mm","ss","M","d","H","h","m","s","a"],Re=new Set(["HH","H","hh","h","mm","m","ss","s","a",...ke]),Ce=new Set(["zzz","XXX"]),E=new Set(["short","medium","long"]);function v(e,t){return Object.keys(e).length===t.length&&t.every(a=>a in e)}function d(e){throw new p("invalid_raw_temporal_format",e)}function ee(e){if(!e||e.trim()!==e||e.length>256)return d("date_fns patterns must be non-empty, trimmed, and at most 256 characters.");const t=[],r=n=>{const i=t[t.length-1];(i==null?void 0:i.kind)==="literal"?i.value+=n:t.push({kind:"literal",value:n})};let a=0;for(;a<e.length;){if(e[a]==="'"){if(e[a+1]==="'"){r("'"),a+=2;continue}let o="",s=!1;for(a+=1;a<e.length;){if(e[a]==="'"){if(e[a+1]==="'"){o+="'",a+=2;continue}s=!0,a+=1;break}o+=e[a],a+=1}if(!s)return d("date_fns pattern has an unclosed quote.");r(o);continue}if(e[a]==="S"){let o=a+1;for(;e[o]==="S";)o+=1;const s=e.slice(a,o);if(s.length>9)return d("date_fns fractional-second tokens support at most nine digits.");t.push({kind:"token",value:s}),a=o;continue}const n=_e.find(o=>e.startsWith(o,a));if(n){t.push({kind:"token",value:n}),a+=n.length;continue}const i=e[a];if(/[A-Za-z]/.test(i))return d(`Unsupported date_fns pattern token beginning at "${e.slice(a)}".`);r(i),a+=1}return t.some(n=>n.kind==="token")?t:d("date_fns patterns must contain at least one token.")}function te(e,t){if(e==="semaphor_tokens"){const r=w.tokenizeTemporalBucketPattern(t);r.ok||d(r.message);return}ee(t)}function Fe(e){return!h.isPlainJsonRecord(e)||!v(e,["dateStyle","dateTime"])?d("Automatic raw temporal styles are incomplete."):E.has(e.dateStyle)?!h.isPlainJsonRecord(e.dateTime)||!v(e.dateTime,["dateStyle","timeStyle"])||!E.has(e.dateTime.dateStyle)||!E.has(e.dateTime.timeStyle)?d("Automatic dateTime styles are incomplete or invalid."):{dateStyle:e.dateStyle,dateTime:{dateStyle:e.dateTime.dateStyle,timeStyle:e.dateTime.timeStyle}}:d("Automatic dateStyle is invalid.")}function I(e){const t=["type","locale","calendarTimezone","presentation"],r=[...t,"sourceTimezone"];if(!h.isPlainJsonRecord(e)||!v(e,t)&&!v(e,r)||e.type!=="raw_temporal")return d("Resolved raw temporal format has an invalid shape.");const a=x.canonicalizeSupportedLocale(e.locale);return a?typeof e.calendarTimezone!="string"||!w.isValidIanaTimeZone(e.calendarTimezone)?d("Raw temporal calendarTimezone must be a valid IANA timezone."):e.sourceTimezone!==void 0&&(typeof e.sourceTimezone!="string"||!w.isValidIanaTimeZone(e.sourceTimezone))?d("Raw temporal sourceTimezone must be a valid IANA timezone."):h.isPlainJsonRecord(e.presentation)?e.presentation.mode==="auto"?v(e.presentation,["mode","styles"])?{type:"raw_temporal",locale:a,calendarTimezone:e.calendarTimezone,...e.sourceTimezone?{sourceTimezone:e.sourceTimezone}:{},presentation:{mode:"auto",styles:Fe(e.presentation.styles)}}:d("Automatic raw temporal presentation has unknown fields."):e.presentation.mode!=="pattern"||!v(e.presentation,["mode","dialect","pattern"])||e.presentation.dialect!=="semaphor_tokens"&&e.presentation.dialect!=="date_fns"||typeof e.presentation.pattern!="string"?d("Pattern raw temporal presentation has an invalid shape."):(te(e.presentation.dialect,e.presentation.pattern),{type:"raw_temporal",locale:a,calendarTimezone:e.calendarTimezone,...e.sourceTimezone?{sourceTimezone:e.sourceTimezone}:{},presentation:{mode:"pattern",dialect:e.presentation.dialect,pattern:e.presentation.pattern}}):d("Raw temporal presentation must be an object."):d("Raw temporal locale is invalid or unsupported.")}function Ie(e){var s,l,m;if(e.format){if(!h.isPlainJsonRecord(e.format))return d("Authored raw temporal format has an invalid shape.");const c=Object.keys(e.format);if(!c.includes("type")||!c.includes("presentation")||c.some(f=>f!=="type"&&f!=="presentation"&&f!=="timezone"&&f!=="sourceTimezone")||e.format.type!=="raw_temporal"||!h.isPlainJsonRecord(e.format.presentation))return d("Authored raw temporal format has an invalid shape.");const y=e.format.presentation;if(y.mode==="auto"){if(!v(y,["mode"]))return d("Automatic authored raw temporal format has unknown fields.")}else{if(y.mode!=="pattern"||!v(y,["mode","dialect","pattern"])||y.dialect!=="semaphor_tokens"&&y.dialect!=="date_fns"||typeof y.pattern!="string")return d("Authored raw temporal pattern has an invalid shape.");te(y.dialect,y.pattern)}}const t=(s=e.format)==null?void 0:s.timezone,r=(l=e.format)==null?void 0:l.sourceTimezone,a=t&&t!=="auto"?t:e.calendar.tz,n=r&&r!=="auto"?r==="local"?Intl.DateTimeFormat().resolvedOptions().timeZone:r:void 0;if(t!==void 0&&t!=="auto"&&!w.isValidIanaTimeZone(a)||n!==void 0&&!w.isValidIanaTimeZone(n))return d("Authored raw temporal timezone is invalid.");const i=((m=e.format)==null?void 0:m.presentation)??{mode:"auto"},o={type:"raw_temporal",locale:e.preferences.locale,calendarTimezone:a,...n?{sourceTimezone:n}:{},presentation:i.mode==="pattern"?{...i}:{mode:"auto",styles:{dateStyle:e.preferences.dateStyle,dateTime:{...e.preferences.dateTime}}}};return I(o)}function Ee(e){if(X.test(e))return"date";if(Q.test(e))return"instant";if(W.test(e))return"wall_datetime"}function De(e){const t=new Set;let r=!1;for(const a of e.values){if(a===null)continue;r=!0;const n=Ee(a);n&&t.add(n)}if(!r)return{status:"empty"};if(t.size===0)return{status:"invalid_only"};if(t.size>1)throw new p("mixed_sql_temporal_semantics",`Declared SQL temporal column "${e.columnKey}" mixes date, wall-datetime, or instant semantics. Normalize it to one kind.`);return{status:"classified",metadata:{kind:"raw_temporal",valueKind:[...t][0]}}}function $e(e){return{version:1,columns:Object.fromEntries([...e].map(([t,r])=>[t,r.status==="classified"?r.metadata.valueKind:r.status]))}}function re(e){if(!h.isPlainJsonRecord(e)||e.version!==1||!h.isPlainJsonRecord(e.columns)||Object.keys(e).some(a=>a!=="version"&&a!=="columns"))throw new p("invalid_raw_temporal_format","Raw temporal chunk classification evidence is malformed.");const t={},r=new Set(["empty","invalid_only","date","wall_datetime","instant"]);for(const[a,n]of Object.entries(e.columns)){if(!a.trim()||!r.has(n))throw new p("invalid_raw_temporal_format","Raw temporal chunk classification evidence contains an invalid column or status.");t[a]=n}return{version:1,columns:t}}function Ae(e){if(e.length===0)return;const t=e.map(re),r=Object.keys(t[0].columns).sort();for(let a=1;a<t.length;a+=1){const n=Object.keys(t[a].columns).sort();if(n.length!==r.length||n.some((i,o)=>i!==r[o]))throw new p("invalid_raw_temporal_format","Raw temporal chunk classification evidence has inconsistent columns.")}for(const a of r)if(new Set(t.map(i=>i.columns[a]).filter(i=>i!=="empty"&&i!=="invalid_only")).size>1)throw new p("mixed_sql_temporal_semantics",`Declared SQL temporal column "${a}" has inconsistent semantics across export chunks. Normalize it to one kind.`)}function Me(e){return e%4===0&&(e%100!==0||e%400===0)}function Pe(e,t){return t===2?Me(e)?29:28:[4,6,9,11].includes(t)?30:31}function Ne(e){return e.year>=1&&e.year<=9999&&e.month>=1&&e.month<=12&&e.day>=1&&e.day<=Pe(e.year,e.month)&&e.hour>=0&&e.hour<=23&&e.minute>=0&&e.minute<=59&&e.second>=0&&e.second<=59}function Ke(e){return{year:Number(e[1]),month:Number(e[2]),day:Number(e[3]),hour:Number(e[4]??0),minute:Number(e[5]??0),second:Number(e[6]??0),fraction:e[7]??""}}function ze(e,t){const r=t==="date"?e.match(X):t==="wall_datetime"?e.match(W):e.match(Q);if(!r)return{status:"invalid_shape"};const a=Ke(r);if(!Ne(a))return{status:"out_of_range"};if(t==="instant"){const n=r[8];if(n&&n!=="Z"){const[o,s]=n.slice(1).split(":").map(Number);if(o>23||s>59)return{status:"out_of_range"}}const i=new Date(e.replace(" ","T"));return Number.isNaN(i.getTime())?{status:"out_of_range"}:{status:"valid",fields:a,instant:i}}return{status:"valid",fields:a}}function $(e){const t=new Date(0);return t.setUTCFullYear(e.year,e.month-1,e.day),t.setUTCHours(e.hour,e.minute,e.second,0),t}function ae(e,t){const r=e.fraction?`.${e.fraction.padEnd(3,"0").slice(0,3)}`:"";return ye.fromZonedTime(`${String(e.year).padStart(4,"0")}-${String(e.month).padStart(2,"0")}-${String(e.day).padStart(2,"0")}T${String(e.hour).padStart(2,"0")}:${String(e.minute).padStart(2,"0")}:${String(e.second).padStart(2,"0")}${r}`,t)}function je(e,t){const r=new Map,a=new Map;let n,i,o,s;return{number(l,m=1){let c=r.get(m);return c||(c=new Intl.NumberFormat(e,{useGrouping:!1,minimumIntegerDigits:m,maximumFractionDigits:0}),r.set(m,c)),c.format(l)},month(l,m,c){var k;const y=`${m}:${c?"standalone":"contextual"}`;let f=a.get(y);if(!f){const _={calendar:"gregory",timeZone:"UTC",month:m};c||(_.day="numeric"),f=new Intl.DateTimeFormat(e,_),a.set(y,f)}return((k=f.formatToParts(l).find(_=>_.type==="month"))==null?void 0:k.value)??""},dayPeriod(l){var m;return n??(n=new Intl.DateTimeFormat(e,{calendar:"gregory",timeZone:"UTC",hour:"numeric",hour12:!0})),((m=n.formatToParts(l).find(c=>c.type==="dayPeriod"))==null?void 0:m.value)??""},instantFields(l){i??(i=new Intl.DateTimeFormat("en-CA",{calendar:"gregory",numberingSystem:"latn",timeZone:t,year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit",second:"2-digit",hourCycle:"h23"}));const m=i.formatToParts(l),c=y=>{var f;return Number((f=m.find(k=>k.type===y))==null?void 0:f.value)};return{year:c("year"),month:c("month"),day:c("day"),hour:c("hour"),minute:c("minute"),second:c("second"),fraction:""}},timezoneName(l){var m;return o??(o=new Intl.DateTimeFormat(e,{calendar:"gregory",timeZone:t,timeZoneName:"short"})),((m=o.formatToParts(l).find(c=>c.type==="timeZoneName"))==null?void 0:m.value)??""},timezoneOffset(l){var y;s??(s=new Intl.DateTimeFormat("en-US",{calendar:"gregory",timeZone:t,timeZoneName:"longOffset"}));const m=(y=s.formatToParts(l).find(f=>f.type==="timeZoneName"))==null?void 0:y.value;if(!m)return d("Unable to resolve the instant timezone offset.");const c=m.replace(/^GMT/,"");return c===""||/^[+-]00:00$/.test(c)?"Z":c}}}function Oe(e,t,r,a,n){if(/^S{1,9}$/.test(e)){const i=t.fraction.padEnd(e.length,"0").slice(0,e.length);return a.number(Number(i),e.length)}switch(e){case"YYYY":case"yyyy":return a.number(t.year,4);case"YY":case"yy":return a.number(t.year%100,2);case"MMMM":return a.month(r,"long",!1);case"LLLL":return a.month(r,"long",!0);case"MMM":return a.month(r,"short",!1);case"LLL":return a.month(r,"short",!0);case"MM":return a.number(t.month,2);case"M":return a.number(t.month);case"DD":case"dd":return a.number(t.day,2);case"d":return a.number(t.day);case"HH":return a.number(t.hour,2);case"H":return a.number(t.hour);case"hh":return a.number(t.hour%12||12,2);case"h":return a.number(t.hour%12||12);case"mm":return a.number(t.minute,2);case"m":return a.number(t.minute);case"ss":return a.number(t.second,2);case"s":return a.number(t.second);case"a":return a.dayPeriod(r);case"zzz":return n?a.timezoneName(n):d("Timezone pattern tokens require an instant value.");case"XXX":return n?a.timezoneOffset(n):d("Timezone pattern tokens require an instant value.");default:return d(`Unsupported raw temporal pattern token "${e}".`)}}function qe(e,t,r,a){const n=$(t);return e.map(i=>i.kind==="literal"?i.value:Oe(i.value,t,n,r,a)).join("")}function ne(e,t,r){const a=t==="date_fns"?ee(r):(()=>{const i=w.tokenizeTemporalBucketPattern(r);return i.ok?i.segments:d(i.message)})(),n=a.filter(i=>i.kind==="token").map(i=>i.value);return e==="date"&&n.some(i=>Re.has(i))?d("Date patterns cannot contain time tokens."):e!=="instant"&&n.some(i=>Ce.has(i))?d("Timezone pattern tokens require an instant value."):a}function Le(e){ne(e.valueKind??"instant",e.dialect,e.pattern)}function Ve(e,t,r,a){const n=ne(e.valueKind,r,a),i=je(t.locale,t.calendarTimezone);return o=>{const s=e.valueKind==="wall_datetime"&&t.sourceTimezone?ae(o.fields,t.sourceTimezone):void 0,l=e.valueKind==="instant"?{...i.instantFields(o.instant),fraction:o.fields.fraction}:s?{...i.instantFields(s),fraction:o.fields.fraction}:o.fields;return qe(n,l,i,o.instant??s)}}function Be(e,t){const r=t.presentation.mode==="auto"?t.presentation.styles:d("Automatic raw temporal formatting requires styles.");if(e.valueKind==="date"){const o=new Intl.DateTimeFormat(t.locale,{calendar:"gregory",timeZone:"UTC",dateStyle:r.dateStyle});return s=>o.format($(s.fields))}const a=e.valueKind==="instant",n=!a&&r.dateTime.timeStyle==="long"?"medium":r.dateTime.timeStyle,i=new Intl.DateTimeFormat(t.locale,{calendar:"gregory",timeZone:a||e.valueKind==="wall_datetime"&&t.sourceTimezone?t.calendarTimezone:"UTC",dateStyle:r.dateTime.dateStyle,timeStyle:n});return o=>a?i.format(o.instant):e.valueKind==="wall_datetime"&&t.sourceTimezone?i.format(ae(o.fields,t.sourceTimezone)):i.format($(o.fields))}function L(e,t,r){return{ok:!1,text:e,diagnostic:{code:r,message:`Raw temporal ${t.valueKind} value is ${r==="invalid_raw_temporal_value"?"malformed":"out of range"}.`}}}function ie(e){const t=fe.parseRawTemporalValueMetadata(e.metadata),r=I(e.format),a=r.presentation.mode==="auto"?Be(t,r):Ve(t,r,r.presentation.dialect,r.presentation.pattern);return n=>{if(n===null)return{ok:!0,text:"",status:"empty"};const i=ze(n,t.valueKind);return i.status==="invalid_shape"?L(n,t,"invalid_raw_temporal_value"):i.status==="out_of_range"?L(n,t,"out_of_range_raw_temporal_value"):{ok:!0,text:a(i),status:"formatted"}}}function Ge(e){return ie({metadata:e.metadata,format:e.format})(e.value)}class A extends Error{constructor(r){super(`invalid_presentation_execution_snapshot: ${r} Resave this report before running it again.`);g(this,"code","invalid_presentation_execution_snapshot");g(this,"deliveryBlocking",!0);this.name="PresentationExecutionSnapshotError"}}class Ze extends Error{constructor(r){super(`missing_resolved_raw_temporal_format: Column "${r}" has no captured presentation. Resave this report before running it again.`);g(this,"code","missing_resolved_raw_temporal_format");g(this,"deliveryBlocking",!0);this.name="MissingResolvedRawTemporalFormatError"}}function T(e,t,r){const a=new Set(t),n=Object.keys(e).find(i=>!a.has(i));if(n)throw new Error(`${r} contains unknown property "${n}"`)}function oe(e,t="scope"){if(!h.isPlainJsonRecord(e))throw new Error(`${t} must be an object`);T(e,["dashboardId","cardId","attachmentIndex"],t);const r=typeof e.dashboardId=="string"?e.dashboardId.trim():"";if(!r)throw new Error(`${t}.dashboardId is required`);const a=typeof e.cardId=="string"?e.cardId.trim():void 0;if(e.cardId!==void 0&&!a)throw new Error(`${t}.cardId must be a non-empty string`);const n=e.attachmentIndex;if(n!==void 0&&(typeof n!="number"||!Number.isInteger(n)||n<0))throw new Error(`${t}.attachmentIndex must be a non-negative integer`);return{dashboardId:r,...a?{cardId:a}:{},...typeof n=="number"?{attachmentIndex:n}:{}}}function S(e,t,r,a){if(e.kind!==t)return;T(e,["kind",r],a);const n=typeof e[r]=="string"?e[r].trim():"";if(!n)throw new Error(`${a}.${r} is required`);return n}function Ue(e,t){if(!h.isPlainJsonRecord(e))throw new Error(`${t} must be an object`);const r=S(e,"metric","metricId",t);if(r)return{kind:"metric",metricId:r};const a=S(e,"column","columnKey",t);if(a)return{kind:"column",columnKey:a};const n=S(e,"matrix_measure","measureId",t);if(n)return{kind:"matrix_measure",measureId:n};throw new Error(`${t} is not a valid numeric presentation target`)}function Je(e,t){if(!h.isPlainJsonRecord(e))throw new Error(`${t} must be an object`);if(e.kind==="field"){T(e,["kind","fieldId","role"],t);const n=typeof e.fieldId=="string"?e.fieldId.trim():"";if(!n)throw new Error(`${t}.fieldId is required`);const i=e.role;if(i!==void 0&&i!=="groupby"&&i!=="pivotby")throw new Error(`${t}.role must be groupby or pivotby`);return{kind:"field",fieldId:n,...i?{role:i}:{}}}const r=S(e,"column","columnKey",t);if(r)return{kind:"column",columnKey:r};const a=S(e,"matrix_axis","axisInstanceId",t);if(a)return{kind:"matrix_axis",axisInstanceId:a};throw new Error(`${t} is not a valid temporal bucket presentation target`)}function He(e,t){if(!h.isPlainJsonRecord(e))throw new Error(`${t} must be an object`);const r=S(e,"column","columnKey",t);if(!r)throw new Error(`${t} must identify a column`);return{kind:"column",columnKey:r}}function Ye(e){return[e.dashboardId,e.cardId??null,e.attachmentIndex??null]}function C(e){switch(e.kind){case"metric":return[e.kind,e.metricId];case"column":return[e.kind,e.columnKey];case"matrix_measure":return[e.kind,e.measureId];case"field":return[e.kind,e.fieldId,e.role??""];case"matrix_axis":return[e.kind,e.axisInstanceId]}}function K(e,t){return e.dashboardId===t.dashboardId&&e.cardId===t.cardId&&e.attachmentIndex===t.attachmentIndex}function z(e,t){const r=C(e),a=C(t);return r.length===a.length&&r.every((n,i)=>n===a[i])}function se(e){if(!Array.isArray(e))throw new Error("resolvedFormats must be an array");const t=new Set;return e.map((r,a)=>{var l,m;const n=`resolvedFormats.${a}`;if(!h.isPlainJsonRecord(r))throw new Error(`${n} must be an object`);T(r,["scope","target","format"],n);const i=oe(r.scope,`${n}.scope`);if(!h.isPlainJsonRecord(r.format))throw new Error(`${n}.format must be an object`);let o;switch(r.format.type){case"temporal_bucket":{const c=h.parseResolvedTemporalBucketFormat(r.format);if(!c.ok)throw new Error(`${n}.format is invalid: ${((l=c.issues[0])==null?void 0:l.message)??"invalid value"}`);o={scope:i,target:Je(r.target,`${n}.target`),format:c.value};break}case"raw_temporal":o={scope:i,target:He(r.target,`${n}.target`),format:I(r.format)};break;case"number":case"currency":case"percent":case"scientific":{const c=H(r.format);if(!c.ok)throw new Error(`${n}.format is invalid: ${((m=c.issues[0])==null?void 0:m.message)??"invalid value"}`);o={scope:i,target:Ue(r.target,`${n}.target`),format:c.value};break}default:throw new Error(`${n}.format.type is unsupported`)}const s=JSON.stringify([...Ye(o.scope),...C(o.target)]);if(t.has(s))throw new Error(`${n} duplicates a scoped presentation target`);return t.add(s),o})}function ce(e){try{if(!h.isPlainJsonRecord(e))throw new Error("presentation execution snapshot must be an object");if(T(e,["version","reportContext","resolvedFormats"],"presentation execution snapshot"),e.version!==1)throw new Error("presentation execution snapshot version must be 1");const t=he.parseReportRuntimeContext(e.reportContext);if(!t.ok){const r=t.issues[0];throw new Error(`presentation execution snapshot reportContext is invalid: ${r!=null&&r.path&&r.path!=="$"?`${r.path}: `:""}${(r==null?void 0:r.message)??"invalid value"}`)}return{version:1,reportContext:t.value,resolvedFormats:se(e.resolvedFormats)}}catch(t){throw t instanceof A?t:new A(t instanceof Error?t.message:"Snapshot is invalid.")}}function Xe(e){return ce({version:1,reportContext:e.reportContext,resolvedFormats:[...e.resolvedFormats]})}function We(e){const t=e.snapshot.resolvedFormats.find(r=>r.format.type!=="temporal_bucket"&&r.format.type!=="raw_temporal"&&K(r.scope,e.scope)&&z(r.target,e.target));return t==null?void 0:t.format}function Qe(e){const t=e.snapshot.resolvedFormats.find(r=>r.format.type==="raw_temporal"&&K(r.scope,e.scope)&&z(r.target,e.target));return t==null?void 0:t.format}function et(e){const t=e.snapshot.resolvedFormats.find(r=>r.format.type==="temporal_bucket"&&K(r.scope,e.scope)&&z(r.target,e.target));return t==null?void 0:t.format}function tt(e){var n;const t=new Set,r=new Set;if(e.snapshot.resolvedFormats.forEach((i,o)=>{if(i.scope.attachmentIndex!==void 0)throw new Error(`resolvedFormats.${o}.scope.attachmentIndex is not valid for a card export`);if(i.scope.dashboardId!==e.expectedScope.dashboardId||i.scope.cardId!==e.expectedScope.cardId)throw new Error(`resolvedFormats.${o}.scope must match the executing dashboard/card`);if(i.target.kind==="field"&&i.format.type==="temporal_bucket"){const s=JSON.stringify(C(i.target));if(r.has(s))throw new Error(`resolvedFormats.${o} duplicates export field "${i.target.fieldId}"`);r.add(s);return}if(i.target.kind!=="column")throw new Error(`resolvedFormats.${o}.target must identify an export column or temporal pivot field`);if(t.has(i.target.columnKey))throw new Error(`resolvedFormats.${o} duplicates export column "${i.target.columnKey}"`);t.add(i.target.columnKey)}),!e.useFormattedValues)return;if(!((n=e.visibleColumns)!=null&&n.length))throw new Error("visibleColumns must identify every formatted export column");const a=e.visibleColumns.find(i=>!t.has(i));if(a)throw new Error(`resolvedFormats is missing visible export column "${a}"`)}function R(e){return Array.from(new Set((e??[]).flatMap(t=>typeof t.id=="string"&&t.id?[t.id]:[])))}function le(e){const t=new Map;return e.forEach(r=>{r.id&&t.set(r.id,(t.get(r.id)??0)+1)}),e.flatMap(r=>r.id&&(t.get(r.id)??0)>1?[h.resolveMetricResultAlias(r)]:[])}function rt(e){const t=e.metricFields??[],r=R(t);return{expectedRoleFieldIds:{groupby:R(e.groupByFields),metric:r.length>0?r:[w.SEMAPHOR_GENERATED_COUNT_METRIC_ID],pivotby:R(e.pivotByFields),detail:R(e.detailFields)},expectedMetricAliases:le(t)}}class u extends Error{constructor(r,a){super(`invalid_pivot_result_lifecycle: ${r}`);g(this,"code","invalid_pivot_result_lifecycle");g(this,"deliveryBlocking",!0);this.cause=a,this.name="PivotResultLifecycleError"}}function at(e){if(!Array.isArray(e)||e.some(r=>!r||typeof r!="object"||Array.isArray(r)||typeof r.key!="string"||!r.key||typeof r.name!="string"||typeof r.label!="string"))throw new u("Canonical pivot columns must be an array of keyed, named result descriptors.");const t=e;if(new Set(t.map(r=>r.key)).size!==t.length)throw new u("Canonical pivot column keys must be unique.");for(const r of t){const a=ge.validateTemporalBucketResultColumn(r,{metadataRequired:!1});if(!a.ok)throw new u(`Canonical pivot column "${r.key}" has invalid temporal metadata: ${a.error.message}`)}return t}function V(e){if(!e||typeof e!="object"||Array.isArray(e)||e.version!==1||e.source!=="explorer"||!e.byRole||typeof e.byRole!="object"||Array.isArray(e.byRole))throw new u("A loaded canonical pivot result requires its role-scoped column key map.");const t=e,r=new Set(["groupby","metric","pivotby","detail"]);for(const[a,n]of Object.entries(t.byRole)){if(!r.has(a)||!n||typeof n!="object"||Array.isArray(n))throw new u(`Canonical pivot role map contains invalid "${a}" bindings.`);for(const[i,o]of Object.entries(n))if(!i||!o||typeof o!="object"||Array.isArray(o)||o.role!==a||typeof o.rawKey!="string"||!o.rawKey||o.outputKey!==void 0&&(typeof o.outputKey!="string"||!o.outputKey))throw new u(`Canonical pivot role map contains an invalid "${a}:${i}" binding.`)}if(t.byMetricAlias!==void 0){if(!t.byMetricAlias||typeof t.byMetricAlias!="object"||Array.isArray(t.byMetricAlias))throw new u("Canonical pivot metric-alias bindings must be an object.");for(const[a,n]of Object.entries(t.byMetricAlias))if(!a||!n||typeof n!="object"||Array.isArray(n)||n.role!=="metric"||typeof n.rawKey!="string"||!n.rawKey||n.outputKey!==void 0&&(typeof n.outputKey!="string"||!n.outputKey))throw new u(`Canonical pivot metric-alias map contains an invalid "${a}" binding.`)}return t}function nt(e){if(e===void 0)return{};if(!e||typeof e!="object"||Array.isArray(e))throw new u("Canonical pivot column metadata must be an object.");for(const[t,r]of Object.entries(e)){if(!t||!r||typeof r!="object"||Array.isArray(r))throw new u(`Canonical pivot column metadata contains an invalid "${t}" classification.`);const{isSubtotal:a,subtotalScope:n}=r;if(a!==void 0&&typeof a!="boolean"||n!==void 0&&n!=="base"&&n!=="pivot-value"&&n!=="grand-total"||a===!0&&n!=="pivot-value"&&n!=="grand-total"||(n==="pivot-value"||n==="grand-total")&&a!==!0||n==="base"&&a===!0)throw new u(`Canonical pivot column metadata contains an incoherent "${t}" subtotal classification.`)}return e}function B(e,t){if(!Array.isArray(e)||e.some(r=>typeof r!="string"||!r)||new Set(e).size!==e.length)throw new u(`Canonical pivot contract ${t} must be an array of unique field identities.`);return e}function it(e,t){if(!e||typeof e!="object"||Array.isArray(e)||e.version!==1)throw new u("A canonical pivot result requires its versioned result contract.");const r=e,a=r.expectedRoleFieldIds;if(!a||typeof a!="object"||Array.isArray(a))throw new u("Canonical pivot contract role identities must be an object.");const i=Object.fromEntries(["groupby","metric","pivotby","detail"].map(f=>[f,B(a[f],`expectedRoleFieldIds.${f}`)])),o=B(r.expectedMetricAliases,"expectedMetricAliases"),s=r.columnKinds;if(!s||typeof s!="object"||Array.isArray(s))throw new u("Canonical pivot contract column kinds must be an object.");const l=new Set(["row","pivot_metric","value"]),m=t.map(f=>f.key),c=Object.keys(s);if(c.length!==m.length||c.some(f=>!m.includes(f)||!l.has(s[f])))throw new u("Canonical pivot contract must classify every authoritative result column exactly once.");const y=nt(r.columnClassifications);if(Object.keys(y).some(f=>!m.includes(f)))throw new u("Canonical pivot contract contains a classification for an unknown result column.");return{version:1,expectedRoleFieldIds:i,expectedMetricAliases:o,columnKinds:s,columnClassifications:y}}function G(e,t){const r=["groupby","metric","pivotby","detail"];for(const i of r){const o=new Set(t.expectedRoleFieldIds[i]??[]),s=Object.keys(e.byRole[i]??{});if(s.length!==o.size||s.some(l=>!o.has(l)))throw new u(`The role-scoped ${i} bindings do not match the authored result fields.`)}const a=new Set(t.expectedMetricAliases),n=Object.keys(e.byMetricAlias??{});if(n.length!==a.size||n.some(i=>!a.has(i)))throw new u("The metric-alias bindings do not match the authored metric instances.")}function ot(e){if(!Array.isArray(e)||e.some(t=>!t||typeof t!="object"||Array.isArray(t)))throw new u("Canonical pivot records must be an array of row objects.");return e}function st(e,t){e.forEach((r,a)=>{t.forEach(n=>{if(!Object.prototype.hasOwnProperty.call(r,n.key)||r[n.key]===void 0)throw new u(`Canonical pivot column "${n.key}" is absent from row ${a}.`)})})}function ct(e,t,r){const a=new Set(t.map(n=>n.key));["groupby","detail"].forEach(n=>{Object.entries(e.byRole[n]??{}).forEach(([i,o])=>{const s=o.outputKey||o.rawKey;if(!a.has(s)||r.columnKinds[s]!=="row")throw new u(`The role-scoped ${n} binding for "${i}" does not name an authoritative result column.`)})})}function Z(e,t){t.forEach(r=>{const a=e.columnKinds[r.key];if(a==="pivot_metric"&&r.pivotIdentity===void 0)throw new u(`Physical pivot result column "${r.key}" is missing its identity.`);if(a!=="pivot_metric"&&r.pivotIdentity!==void 0)throw new u(`Canonical pivot result column "${r.key}" carries pivot identity outside the physical pivot projection.`)})}function me(e){const t=ot(e.records),r=at(e.columns),a=it(e.pivotResultContract,r),n=a.expectedRoleFieldIds.pivotby??[];if(e.pivotResultState==="loaded_empty"){if(t.length!==0)throw new u("A loaded_empty pivot result cannot carry records.");if(r.some(l=>a.columnKinds[l.key]==="pivot_metric"))throw new u("A loaded_empty pivot result cannot carry physical pivot columns.");Z(a,r);const s=V(e.columnKeyMap);return G(s,a),{pivotResultState:"loaded_empty",records:[],columns:r,columnKeyMap:s,pivotResultContract:a}}if(e.pivotResultState!=="loaded_valid")throw new u("A canonical pivot result must declare loaded_empty or loaded_valid.");if(t.length===0)throw new u("A loaded_valid pivot result must carry at least one record.");const i=V(e.columnKeyMap);G(i,a),ct(i,r,a),Z(a,r);const o=r.filter(s=>a.columnKinds[s.key]==="pivot_metric");if(n.length>0&&o.length===0)throw new u("A loaded_valid pivot result is missing its physical pivot columns.");try{j.requirePivotResultColumnIdentities(o,{expectedPivotFieldIds:n,columnClassifications:a.columnClassifications})}catch(s){throw s instanceof j.PivotResultIdentityError?new u(s.message,s):s}return st(t,r),{pivotResultState:"loaded_valid",records:t,columns:r,columnKeyMap:i,pivotResultContract:a}}function lt(e){const t=new Set;["groupby","detail"].forEach(i=>{Object.values(e.columnKeyMap.byRole[i]??{}).forEach(o=>{t.add(o.outputKey||o.rawKey)})});const r=new Set(e.physicalPivotColumnKeys),a=new Set(e.columns.map(i=>i.key)),n={version:1,expectedRoleFieldIds:{groupby:Array.from(new Set(e.expectedRoleFieldIds.groupby??[])),metric:Array.from(new Set(e.expectedRoleFieldIds.metric??[])),pivotby:Array.from(new Set(e.expectedRoleFieldIds.pivotby??[])),detail:Array.from(new Set(e.expectedRoleFieldIds.detail??[]))},expectedMetricAliases:[...e.expectedMetricAliases??[]],columnKinds:Object.fromEntries(e.columns.map(i=>[i.key,t.has(i.key)?"row":r.has(i.key)?"pivot_metric":"value"])),columnClassifications:Object.fromEntries(Object.entries(e.columnMetadata??{}).filter(([i])=>a.has(i)))};return me({pivotResultState:e.records.length===0?"loaded_empty":"loaded_valid",pivotResultContract:n,records:e.records,columns:e.columns,columnKeyMap:e.columnKeyMap})}exports.MissingResolvedRawTemporalFormatError=Ze;exports.PivotResultLifecycleError=u;exports.PresentationExecutionSnapshotError=A;exports.RawTemporalFormatContractError=p;exports.assertRawTemporalChunkClassificationAgreement=Ae;exports.classifyDeclaredSqlTemporalColumn=De;exports.createCanonicalPivotResultTransport=lt;exports.createPresentationExecutionSnapshot=Xe;exports.createRawTemporalChunkClassificationEvidence=$e;exports.deriveMetricInstanceAliasExpectations=le;exports.derivePivotResultContractExpectations=rt;exports.findResolvedNumericFormat=We;exports.findResolvedRawTemporalFormat=Qe;exports.findResolvedTemporalBucketFormat=et;exports.formatCurrency=M;exports.formatNumber=F;exports.formatNumberCustom=pe;exports.formatNumberWithColumnSettings=we;exports.formatNumericCanonical=U;exports.formatPercent=P;exports.formatRawTemporalValue=Ge;exports.formatScientific=N;exports.parseCanonicalPivotResultTransport=me;exports.parseNumericCanonicalFormat=J;exports.parsePresentationExecutionSnapshot=ce;exports.parsePresentationScope=oe;exports.parseRawTemporalChunkClassificationEvidence=re;exports.parseResolvedNumericCanonicalFormat=H;exports.parseResolvedPresentationEntries=se;exports.parseResolvedRawTemporalFormat=I;exports.prepareRawTemporalFormatter=ie;exports.resolveCurrencyFractionDigits=Y;exports.resolveNumericPresentation=Te;exports.resolveRawTemporalFormat=Ie;exports.validateCardExportNumericPresentationSnapshot=Se;exports.validateCardExportPresentationSnapshot=tt;exports.validateRawTemporalPattern=Le;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";const e=require("react/jsx-runtime"),o=require("react"),l=require("./index-CneWIz__.cjs"),u=require("./switch-B1mZx2k9.cjs"),V=require("./report-runtime-context-RFiWq4wK.cjs");require("./x-B6ghREd2.cjs");require("./saved-temporal-bucket-format-DNMtD77o.cjs");require("./validators-DcshgK7w.cjs");require("./analyze-result-contract-OgPk-zGu.cjs");const L=require("../value-format-preferences/index.cjs");function G(a={}){const{authToken:c,tokenProps:t}=l.useSemaphorContext(),m=u.useDashboardStore(p=>p.actions.applyResolvedCalendarPreferences),s=a.enabled??!0,i=(c==null?void 0:c.accessToken)??null,h=(t==null?void 0:t.apiServiceUrl)??null,[g,S]=o.useState(!1),[b,C]=o.useState(!1),[f,j]=o.useState(!1),[T,x]=o.useState(null),[w,P]=o.useState(null),v=o.useRef(i);v.current=i,o.useEffect(()=>{P(null),x(null),S(!1),C(!1),j(!1)},[i]);const N=o.useCallback(async p=>{const r=V.parseCalendarPreferencesResponse(await p.json());if(!r.ok)throw new Error("Calendar preferences response is invalid");return r.value},[]),k=o.useCallback(async()=>{if(!s||!i||!h)return;const p=i;S(!0),x(null);try{const r=await fetch(`${h}/v1/user-preferences/calendar`,{method:"GET",headers:{Authorization:`Bearer ${i}`}});if(!r.ok){const y=await r.json().catch(()=>({}));throw new Error(y.error||"Failed to fetch preferences")}const n=await N(r);v.current===p&&P(n)}catch(r){v.current===p&&x(r instanceof Error?r.message:"Unknown error")}finally{v.current===p&&S(!1)}},[i,h,s,N]);o.useEffect(()=>{s&&k()},[s,k]);const E=o.useCallback(async p=>{if(!i||!h)return x("Not authenticated"),!1;const r=i;C(!0),x(null);try{const n=await fetch(`${h}/v1/user-preferences/calendar`,{method:"PATCH",headers:{"Content-Type":"application/json",Authorization:`Bearer ${i}`},body:JSON.stringify(p)});if(!n.ok){const D=await n.json().catch(()=>({}));throw new Error(D.error||"Failed to update preferences")}const y=await N(n);return v.current!==r?!1:(P(y),m(y.resolved,y.sources),!0)}catch(n){return v.current===r&&x(n instanceof Error?n.message:"Unknown error"),!1}finally{v.current===r&&C(!1)}},[i,h,m,N]),A=o.useCallback(async()=>{if(!i||!h)return x("Not authenticated"),!1;const p=i;j(!0),x(null);try{const r=await fetch(`${h}/v1/user-preferences/calendar`,{method:"DELETE",headers:{Authorization:`Bearer ${i}`}});if(!r.ok){const y=await r.json().catch(()=>({}));throw new Error(y.error||"Failed to clear preferences")}const n=await N(r);return v.current!==p?!1:(P(n),m(n.resolved,n.sources),!0)}catch(r){return v.current===p&&x(r instanceof Error?r.message:"Unknown error"),!1}finally{v.current===p&&j(!1)}},[i,h,m,N]);return{preferences:w,isLoading:g,isSaving:b,isClearing:f,error:T,updatePreferences:E,clearPreferences:A,refetch:k}}const F=[{value:"America/New_York",label:"Eastern Time (US & Canada)"},{value:"America/Chicago",label:"Central Time (US & Canada)"},{value:"America/Denver",label:"Mountain Time (US & Canada)"},{value:"America/Los_Angeles",label:"Pacific Time (US & Canada)"},{value:"America/Phoenix",label:"Arizona"},{value:"America/Anchorage",label:"Alaska"},{value:"Pacific/Honolulu",label:"Hawaii"},{value:"Europe/London",label:"London"},{value:"Europe/Paris",label:"Paris, Berlin, Rome"},{value:"Asia/Tokyo",label:"Tokyo"},{value:"Asia/Shanghai",label:"Beijing, Shanghai"},{value:"Asia/Kolkata",label:"Mumbai, New Delhi"},{value:"Australia/Sydney",label:"Sydney"},{value:"UTC",label:"UTC"}],B=[{value:0,label:"Sunday"},{value:1,label:"Monday"},{value:6,label:"Saturday"}],R="text-[10px] font-medium uppercase tracking-[0.08em] text-muted-foreground";function W(){try{const a=Intl;if(a.supportedValuesOf)return a.supportedValuesOf("timeZone")}catch{}return F.map(a=>a.value)}function H(a){if(!a)return"default";if(a.tz!==a.weekStart)return"inherited";switch(a.tz){case"viewer_tenant":return"tenant";case"viewer_organization":return"organization";case"system_default":return"system";case"session_initial":return"embedded";default:return"default"}}function U(a){const c=F.find(t=>t.value===a);return c?c.label:a}function K(a){const c=B.find(t=>t.value===a);return c?c.label:String(a)}function J({active:a,onClose:c}){const{preferences:t,isLoading:m,isSaving:s,isClearing:i,updatePreferences:h,clearPreferences:g}=G({enabled:a}),S=l.useCalendarContext(),b=(t==null?void 0:t.resolved.tz)||(S==null?void 0:S.tz)||"UTC",C=(t==null?void 0:t.resolved.weekStart)??(S==null?void 0:S.weekStart)??1,[f,j]=o.useState((t==null?void 0:t.stored)===null),[T,x]=o.useState(!1),[w,P]=o.useState(b),[v,N]=o.useState(C),[k,E]=o.useState(!1),A=o.useMemo(()=>W(),[]),p=o.useMemo(()=>A.filter(d=>!F.some(M=>M.value===d)),[A]),r=o.useMemo(()=>U(w),[w]),n=t!=null&&t.inherited?U(t.inherited.tz):"UTC",y=t!=null&&t.inherited?K(t.inherited.weekStart):"Monday",D=H(t==null?void 0:t.inheritedSources);o.useEffect(()=>{if(!a){x(!1);return}T||(t&&j(t.stored===null),P(b),N(C))},[a,T,t,b,C]);const O=async()=>{if(m){l.ue.error("Preferences are still loading. Please try again.");return}f?await g()?(l.ue.success("Now using default settings."),c()):l.ue.error("Failed to save preferences. Please try again."):await h({tz:w,weekStart:v})?(l.ue.success("Preferences saved."),c()):l.ue.error("Failed to save preferences. Please try again.")},_=()=>{c()},z=s||i,$=z||m;return e.jsxs(e.Fragment,{children:[e.jsxs("div",{className:"space-y-4 py-1",children:[e.jsxs(l.RadioGroup,{value:f?"defaults":"custom",onValueChange:d=>{x(!0),j(d==="defaults")},className:"space-y-0.5",children:[e.jsxs("label",{htmlFor:"mode-defaults",className:u.cn("flex cursor-pointer items-start gap-2 rounded-control px-2 py-1.5 hover:bg-muted/50",f&&"bg-muted/50"),onClick:()=>{x(!0),j(!0)},children:[e.jsx(l.RadioGroupItem,{value:"defaults",id:"mode-defaults",className:"mt-0.5"}),e.jsxs("div",{className:"flex-1 min-w-0",children:[e.jsxs("p",{className:"text-[13px] font-medium text-foreground",children:["Use ",D," defaults"]}),e.jsxs("p",{className:"text-[12px] text-muted-foreground",children:[n,", week starts ",y]})]})]}),e.jsxs("label",{htmlFor:"mode-custom",className:u.cn("flex cursor-pointer items-start gap-2 rounded-control px-2 py-1.5 hover:bg-muted/50",!f&&"bg-muted/50"),onClick:()=>{x(!0),j(!1)},children:[e.jsx(l.RadioGroupItem,{value:"custom",id:"mode-custom",className:"mt-0.5"}),e.jsx("p",{className:"flex-1 text-[13px] font-medium text-foreground",children:"Use custom settings"})]})]}),e.jsxs("div",{className:u.cn("space-y-4 border-t border-border/60 pt-4 transition-opacity",f&&"pointer-events-none opacity-50"),children:[e.jsxs("div",{className:"space-y-1.5",children:[e.jsx(u.Label,{className:R,children:"Timezone"}),e.jsxs(u.Popover,{open:k,onOpenChange:E,modal:!0,children:[e.jsx(u.PopoverTrigger,{asChild:!0,children:e.jsxs(u.Button,{variant:"outline",size:"xs",role:"combobox","aria-expanded":k,className:"w-full justify-between text-[12px] font-normal",disabled:f,children:[e.jsx("span",{className:"truncate",children:r}),e.jsx(l.ChevronsUpDown,{className:"ml-2 h-3.5 w-3.5 shrink-0 opacity-50"})]})}),e.jsx(u.PopoverContent,{className:"z-50 w-[--radix-popover-trigger-width] p-0",align:"start",children:e.jsxs(l.Command,{className:"overflow-visible",children:[e.jsx(l.CommandInput,{placeholder:"Search timezones…"}),e.jsxs(l.CommandList,{children:[e.jsx(l.CommandEmpty,{children:"No timezone found."}),e.jsx(l.CommandGroup,{heading:"Common",children:F.map(d=>e.jsxs(l.CommandItem,{value:`${d.value} ${d.label}`,onSelect:()=>{x(!0),P(d.value),E(!1)},children:[e.jsx(u.Check,{className:u.cn("h-3.5 w-3.5",w===d.value?"opacity-100":"opacity-0")}),e.jsx("span",{className:"flex-1",children:d.label}),e.jsx("span",{className:"text-[11px] text-muted-foreground",children:d.value})]},d.value))}),e.jsx(l.CommandSeparator,{}),e.jsx(l.CommandGroup,{heading:"All timezones",children:p.map(d=>e.jsxs(l.CommandItem,{value:d,onSelect:()=>{x(!0),P(d),E(!1)},children:[e.jsx(u.Check,{className:u.cn("h-3.5 w-3.5",w===d?"opacity-100":"opacity-0")}),d]},d))})]})]})})]})]}),e.jsxs("div",{className:"space-y-1.5",children:[e.jsx(u.Label,{className:R,children:"Week starts on"}),e.jsx(l.RadioGroup,{value:String(v),onValueChange:d=>{x(!0),N(Number(d))},className:"flex gap-4",disabled:f,children:B.map(d=>e.jsxs("label",{htmlFor:`week-start-${d.value}`,className:u.cn("flex cursor-pointer items-center gap-2 text-[13px]",f&&"cursor-not-allowed"),children:[e.jsx(l.RadioGroupItem,{value:String(d.value),id:`week-start-${d.value}`,disabled:f}),d.label]},d.value))})]})]})]}),e.jsxs(l.DialogFooter,{children:[e.jsx(u.Button,{variant:"outline",size:"xs",onClick:_,disabled:z,children:"Cancel"}),e.jsx(u.Button,{size:"xs",onClick:O,disabled:$,children:z?e.jsxs(e.Fragment,{children:[e.jsx(u.LoaderCircle,{className:"h-3.5 w-3.5 animate-spin"}),"Saving…"]}):"Save"})]})]})}function Y(a={}){const{authToken:c,tokenProps:t}=l.useSemaphorContext(),m=u.useDashboardStore(r=>r.actions.applyResolvedValueFormatPreferences),s=a.enabled??!0,i=(c==null?void 0:c.accessToken)??null,h=(t==null?void 0:t.apiServiceUrl)??null,g=o.useRef(i);g.current=i;const[S,b]=o.useState(null),[C,f]=o.useState(!1),[j,T]=o.useState(!1),[x,w]=o.useState(!1),[P,v]=o.useState(null);o.useEffect(()=>{b(null),v(null),f(!1),T(!1),w(!1)},[i]);const N=o.useCallback(async r=>{const n=L.parseValueFormatPreferencesResponse(await r.json());if(!n.ok)throw new Error("Value format preferences response is invalid");return n.value},[]),k=o.useCallback(async(r,n)=>{if(!i||!h)throw new Error("Not authenticated");const y=await fetch(`${h}/v1/user-preferences/value-format`,{method:r,headers:{Authorization:`Bearer ${i}`,...n?{"Content-Type":"application/json"}:{}},body:n?JSON.stringify(n):void 0});if(!y.ok){const D=await y.json().catch(()=>({}));throw new Error(D.error||"Failed to update preferences")}return N(y)},[i,h,N]),E=o.useCallback(async()=>{if(!s||!i||!h)return;const r=i;f(!0),v(null);try{const n=await k("GET");g.current===r&&b(n)}catch(n){g.current===r&&v(n instanceof Error?n.message:"Unknown error")}finally{g.current===r&&f(!1)}},[i,h,s,k]);o.useEffect(()=>{s&&E()},[s,E]);const A=o.useCallback(async r=>{const n=i;T(!0),v(null);try{const y=await k("PATCH",r);return g.current!==n?!1:(b(y),m(y.resolved,y.sources),!0)}catch(y){return g.current===n&&v(y instanceof Error?y.message:"Unknown error"),!1}finally{g.current===n&&T(!1)}},[i,m,k]),p=o.useCallback(async()=>{const r=i;w(!0),v(null);try{const n=await k("DELETE");return g.current!==r?!1:(b(n),m(n.resolved,n.sources),!0)}catch(n){return g.current===r&&v(n instanceof Error?n.message:"Unknown error"),!1}finally{g.current===r&&w(!1)}},[i,m,k]);return{preferences:S,isLoading:C,isSaving:j,isClearing:x,error:P,updatePreferences:A,clearPreferences:p,refetch:E}}const I=["locale","dateStyle","dateTime.dateStyle","dateTime.timeStyle","defaultCurrency"];function q(a,c){var t,m;switch(c){case"locale":return a==null?void 0:a.locale;case"dateStyle":return a==null?void 0:a.dateStyle;case"dateTime.dateStyle":return(t=a==null?void 0:a.dateTime)==null?void 0:t.dateStyle;case"dateTime.timeStyle":return(m=a==null?void 0:a.dateTime)==null?void 0:m.timeStyle;case"defaultCurrency":return a==null?void 0:a.defaultCurrency}}function Z(a){var m,s;const c=(m=a==null?void 0:a.dateTime)==null?void 0:m.dateStyle,t=(s=a==null?void 0:a.dateTime)==null?void 0:s.timeStyle;return{locale:a==null?void 0:a.locale,dateStyle:a==null?void 0:a.dateStyle,dateTime:c===void 0&&t===void 0?void 0:{dateStyle:c,timeStyle:t},defaultCurrency:a==null?void 0:a.defaultCurrency}}function Q({active:a,onClose:c}){var g,S,b,C,f,j,T;const{preferences:t,isLoading:m,isSaving:s,updatePreferences:i}=Y({enabled:a});if(!a)return null;if(!t)return e.jsxs(e.Fragment,{children:[e.jsx("div",{className:"py-2",children:e.jsx("div",{className:"flex min-h-36 items-center justify-center text-[12px] text-muted-foreground",children:m?"Loading preferences…":"Preferences unavailable."})}),e.jsxs(l.DialogFooter,{className:"justify-between sm:justify-between",children:[e.jsx(u.Button,{variant:"ghost",size:"xs",disabled:!0,children:"Reset display formats"}),e.jsxs("div",{className:"flex gap-2",children:[e.jsx(u.Button,{variant:"outline",size:"xs",onClick:c,children:"Cancel"}),e.jsx(u.Button,{size:"xs",disabled:!0,children:"Save"})]})]})]});const h=[((g=t.stored)==null?void 0:g.locale)??"",((S=t.stored)==null?void 0:S.dateStyle)??"",((C=(b=t.stored)==null?void 0:b.dateTime)==null?void 0:C.dateStyle)??"",((j=(f=t.stored)==null?void 0:f.dateTime)==null?void 0:j.timeStyle)??"",((T=t.stored)==null?void 0:T.defaultCurrency)??""].join(":");return e.jsx(X,{preferences:t,isSaving:s,updatePreferences:i,onClose:c},h)}function X({preferences:a,isSaving:c,updatePreferences:t,onClose:m}){var b,C;const[s,i]=o.useState(()=>Z(a.stored)),h=(s.locale===void 0||L.canonicalizeSupportedLocale(s.locale)!==void 0)&&(s.defaultCurrency===void 0||L.canonicalizeSupportedCurrencyCode(s.defaultCurrency)!==void 0)&&(s.dateStyle===void 0||["short","medium","long"].includes(s.dateStyle))&&(((b=s.dateTime)==null?void 0:b.dateStyle)===void 0||["short","medium","long"].includes(s.dateTime.dateStyle))&&(((C=s.dateTime)==null?void 0:C.timeStyle)===void 0||["short","medium","long"].includes(s.dateTime.timeStyle)),g=async()=>{const f={...s.locale!==void 0?{locale:s.locale}:{},...s.dateStyle!==void 0?{dateStyle:s.dateStyle}:{},...s.dateTime?{dateTime:{...s.dateTime}}:{},...s.defaultCurrency!==void 0?{defaultCurrency:s.defaultCurrency}:{}},j=I.filter(w=>q(s,w)===void 0&&q(a.stored,w)!==void 0),T={...Object.keys(f).length>0?{set:f}:{},...j.length>0?{clear:j}:{}};(Object.keys(T).length===0?!0:await t(T))?(l.ue.success("Display format preferences saved."),m()):l.ue.error("Failed to save preferences. Please try again.")},S=async()=>{await t({clear:[...I]})?(l.ue.success("Display format preferences reset."),m()):l.ue.error("Failed to reset display format preferences. Please try again.")};return e.jsxs(e.Fragment,{children:[e.jsx("div",{className:"py-2",children:e.jsx(l.DisplayFormatPreferencesFields,{value:s,inherited:a.inherited,inheritedSources:a.inheritedSources,onChange:i,disabled:c})}),e.jsxs(l.DialogFooter,{className:"justify-between sm:justify-between",children:[e.jsx(u.Button,{variant:"ghost",size:"xs",onClick:S,disabled:c||a.stored===null,children:"Reset display formats"}),e.jsxs("div",{className:"flex gap-2",children:[e.jsx(u.Button,{variant:"outline",size:"xs",onClick:m,disabled:c,children:"Cancel"}),e.jsx(u.Button,{size:"xs",onClick:g,disabled:c||!h,children:c?e.jsxs(e.Fragment,{children:[e.jsx(u.LoaderCircle,{className:"h-3.5 w-3.5 animate-spin"}),"Saving…"]}):"Save"})]})]})]})}function ee({open:a,onOpenChange:c}){const[t,m]=o.useState("display"),s=()=>c(!1);return e.jsx(l.Dialog,{open:a,onOpenChange:c,children:e.jsxs(l.DialogContent,{className:"rounded-control border-border/60 sm:max-w-[440px] sm:rounded-control",children:[e.jsxs(l.DialogHeader,{children:[e.jsx(l.DialogTitle,{className:"text-[15px]",children:"Report preferences"}),e.jsx(l.DialogDescription,{className:"text-[13px] leading-5",children:"Set how values and Calendar periods appear for you."})]}),e.jsxs(u.Tabs,{value:t,onValueChange:m,children:[e.jsxs(u.TabsList,{variant:"underline",className:"w-full justify-start",children:[e.jsx(u.TabsTrigger,{value:"display",children:"Display formats"}),e.jsx(u.TabsTrigger,{value:"calendar",children:"Calendar"})]}),e.jsx(u.TabsContent,{value:"display",children:e.jsx(Q,{active:a&&t==="display",onClose:s})}),e.jsx(u.TabsContent,{value:"calendar",children:e.jsx(J,{active:a&&t==="calendar",onClose:s})})]})]})})}exports.ReportPreferencesDialog=ee;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";const T=require("./color-CyB5o13F.cjs"),b=require("./validators-DcshgK7w.cjs");require("./analyze-result-contract-OgPk-zGu.cjs");require("../value-format-preferences/index.cjs");const g=require("./temporal-bucket-authoring-DSpzgXHc.cjs");var U=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function O(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}function D(e){if(e.__esModule)return e;var r=e.default;if(typeof r=="function"){var t=function a(){return this instanceof a?Reflect.construct(r,arguments,this.constructor):r.apply(this,arguments)};t.prototype=r.prototype}else t={};return Object.defineProperty(t,"__esModule",{value:!0}),Object.keys(e).forEach(function(a){var i=Object.getOwnPropertyDescriptor(e,a);Object.defineProperty(t,a,i.get?i:{enumerable:!0,get:function(){return e[a]}})}),t}let _;const I=new Uint8Array(16);function L(){if(!_&&(_=typeof crypto<"u"&&crypto.getRandomValues&&crypto.getRandomValues.bind(crypto),!_))throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");return _(I)}const s=[];for(let e=0;e<256;++e)s.push((e+256).toString(16).slice(1));function G(e,r=0){return s[e[r+0]]+s[e[r+1]]+s[e[r+2]]+s[e[r+3]]+"-"+s[e[r+4]]+s[e[r+5]]+"-"+s[e[r+6]]+s[e[r+7]]+"-"+s[e[r+8]]+s[e[r+9]]+"-"+s[e[r+10]]+s[e[r+11]]+s[e[r+12]]+s[e[r+13]]+s[e[r+14]]+s[e[r+15]]}const q=typeof crypto<"u"&&crypto.randomUUID&&crypto.randomUUID.bind(crypto),F={randomUUID:q};function K(e,r,t){if(F.randomUUID&&!e)return F.randomUUID();e=e||{};const a=e.random||(e.rng||L)();return a[6]=a[6]&15|64,a[8]=a[8]&63|128,G(a)}var R={},k={},E={exports:{}},o=String,w=function(){return{isColorSupported:!1,reset:o,bold:o,dim:o,italic:o,underline:o,inverse:o,hidden:o,strikethrough:o,black:o,red:o,green:o,yellow:o,blue:o,magenta:o,cyan:o,white:o,gray:o,bgBlack:o,bgRed:o,bgGreen:o,bgYellow:o,bgBlue:o,bgMagenta:o,bgCyan:o,bgWhite:o,blackBright:o,redBright:o,greenBright:o,yellowBright:o,blueBright:o,magentaBright:o,cyanBright:o,whiteBright:o,bgBlackBright:o,bgRedBright:o,bgGreenBright:o,bgYellowBright:o,bgBlueBright:o,bgMagentaBright:o,bgCyanBright:o,bgWhiteBright:o}};E.exports=w();E.exports.createColors=w;var N=E.exports;(function(e){Object.defineProperty(e,"__esModule",{value:!0});function r(f,u){for(var p in u)Object.defineProperty(f,p,{enumerable:!0,get:u[p]})}r(e,{dim:function(){return l},default:function(){return c}});const t=a(N);function a(f){return f&&f.__esModule?f:{default:f}}let i=new Set;function n(f,u,p){typeof process<"u"&&process.env.JEST_WORKER_ID||p&&i.has(p)||(p&&i.add(p),console.warn(""),u.forEach(m=>console.warn(f,"-",m)))}function l(f){return t.default.dim(f)}const c={info(f,u){n(t.default.bold(t.default.cyan("info")),...Array.isArray(f)?[f]:[u,f])},warn(f,u){n(t.default.bold(t.default.yellow("warn")),...Array.isArray(f)?[f]:[u,f])},risk(f,u){n(t.default.bold(t.default.magenta("risk")),...Array.isArray(f)?[f]:[u,f])}}})(k);(function(e){Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return i}});const r=t(k);function t(n){return n&&n.__esModule?n:{default:n}}function a({version:n,from:l,to:c}){r.default.warn(`${l}-color-renamed`,[`As of Tailwind CSS ${n}, \`${l}\` has been renamed to \`${c}\`.`,"Update your configuration file to silence this warning."])}const i={inherit:"inherit",current:"currentColor",transparent:"transparent",black:"#000",white:"#fff",slate:{50:"#f8fafc",100:"#f1f5f9",200:"#e2e8f0",300:"#cbd5e1",400:"#94a3b8",500:"#64748b",600:"#475569",700:"#334155",800:"#1e293b",900:"#0f172a",950:"#020617"},gray:{50:"#f9fafb",100:"#f3f4f6",200:"#e5e7eb",300:"#d1d5db",400:"#9ca3af",500:"#6b7280",600:"#4b5563",700:"#374151",800:"#1f2937",900:"#111827",950:"#030712"},zinc:{50:"#fafafa",100:"#f4f4f5",200:"#e4e4e7",300:"#d4d4d8",400:"#a1a1aa",500:"#71717a",600:"#52525b",700:"#3f3f46",800:"#27272a",900:"#18181b",950:"#09090b"},neutral:{50:"#fafafa",100:"#f5f5f5",200:"#e5e5e5",300:"#d4d4d4",400:"#a3a3a3",500:"#737373",600:"#525252",700:"#404040",800:"#262626",900:"#171717",950:"#0a0a0a"},stone:{50:"#fafaf9",100:"#f5f5f4",200:"#e7e5e4",300:"#d6d3d1",400:"#a8a29e",500:"#78716c",600:"#57534e",700:"#44403c",800:"#292524",900:"#1c1917",950:"#0c0a09"},red:{50:"#fef2f2",100:"#fee2e2",200:"#fecaca",300:"#fca5a5",400:"#f87171",500:"#ef4444",600:"#dc2626",700:"#b91c1c",800:"#991b1b",900:"#7f1d1d",950:"#450a0a"},orange:{50:"#fff7ed",100:"#ffedd5",200:"#fed7aa",300:"#fdba74",400:"#fb923c",500:"#f97316",600:"#ea580c",700:"#c2410c",800:"#9a3412",900:"#7c2d12",950:"#431407"},amber:{50:"#fffbeb",100:"#fef3c7",200:"#fde68a",300:"#fcd34d",400:"#fbbf24",500:"#f59e0b",600:"#d97706",700:"#b45309",800:"#92400e",900:"#78350f",950:"#451a03"},yellow:{50:"#fefce8",100:"#fef9c3",200:"#fef08a",300:"#fde047",400:"#facc15",500:"#eab308",600:"#ca8a04",700:"#a16207",800:"#854d0e",900:"#713f12",950:"#422006"},lime:{50:"#f7fee7",100:"#ecfccb",200:"#d9f99d",300:"#bef264",400:"#a3e635",500:"#84cc16",600:"#65a30d",700:"#4d7c0f",800:"#3f6212",900:"#365314",950:"#1a2e05"},green:{50:"#f0fdf4",100:"#dcfce7",200:"#bbf7d0",300:"#86efac",400:"#4ade80",500:"#22c55e",600:"#16a34a",700:"#15803d",800:"#166534",900:"#14532d",950:"#052e16"},emerald:{50:"#ecfdf5",100:"#d1fae5",200:"#a7f3d0",300:"#6ee7b7",400:"#34d399",500:"#10b981",600:"#059669",700:"#047857",800:"#065f46",900:"#064e3b",950:"#022c22"},teal:{50:"#f0fdfa",100:"#ccfbf1",200:"#99f6e4",300:"#5eead4",400:"#2dd4bf",500:"#14b8a6",600:"#0d9488",700:"#0f766e",800:"#115e59",900:"#134e4a",950:"#042f2e"},cyan:{50:"#ecfeff",100:"#cffafe",200:"#a5f3fc",300:"#67e8f9",400:"#22d3ee",500:"#06b6d4",600:"#0891b2",700:"#0e7490",800:"#155e75",900:"#164e63",950:"#083344"},sky:{50:"#f0f9ff",100:"#e0f2fe",200:"#bae6fd",300:"#7dd3fc",400:"#38bdf8",500:"#0ea5e9",600:"#0284c7",700:"#0369a1",800:"#075985",900:"#0c4a6e",950:"#082f49"},blue:{50:"#eff6ff",100:"#dbeafe",200:"#bfdbfe",300:"#93c5fd",400:"#60a5fa",500:"#3b82f6",600:"#2563eb",700:"#1d4ed8",800:"#1e40af",900:"#1e3a8a",950:"#172554"},indigo:{50:"#eef2ff",100:"#e0e7ff",200:"#c7d2fe",300:"#a5b4fc",400:"#818cf8",500:"#6366f1",600:"#4f46e5",700:"#4338ca",800:"#3730a3",900:"#312e81",950:"#1e1b4b"},violet:{50:"#f5f3ff",100:"#ede9fe",200:"#ddd6fe",300:"#c4b5fd",400:"#a78bfa",500:"#8b5cf6",600:"#7c3aed",700:"#6d28d9",800:"#5b21b6",900:"#4c1d95",950:"#2e1065"},purple:{50:"#faf5ff",100:"#f3e8ff",200:"#e9d5ff",300:"#d8b4fe",400:"#c084fc",500:"#a855f7",600:"#9333ea",700:"#7e22ce",800:"#6b21a8",900:"#581c87",950:"#3b0764"},fuchsia:{50:"#fdf4ff",100:"#fae8ff",200:"#f5d0fe",300:"#f0abfc",400:"#e879f9",500:"#d946ef",600:"#c026d3",700:"#a21caf",800:"#86198f",900:"#701a75",950:"#4a044e"},pink:{50:"#fdf2f8",100:"#fce7f3",200:"#fbcfe8",300:"#f9a8d4",400:"#f472b6",500:"#ec4899",600:"#db2777",700:"#be185d",800:"#9d174d",900:"#831843",950:"#500724"},rose:{50:"#fff1f2",100:"#ffe4e6",200:"#fecdd3",300:"#fda4af",400:"#fb7185",500:"#f43f5e",600:"#e11d48",700:"#be123c",800:"#9f1239",900:"#881337",950:"#4c0519"},get lightBlue(){return a({version:"v2.2",from:"lightBlue",to:"sky"}),this.sky},get warmGray(){return a({version:"v3.0",from:"warmGray",to:"stone"}),this.stone},get trueGray(){return a({version:"v3.0",from:"trueGray",to:"neutral"}),this.neutral},get coolGray(){return a({version:"v3.0",from:"coolGray",to:"gray"}),this.gray},get blueGray(){return a({version:"v3.0",from:"blueGray",to:"slate"}),this.slate}}})(R);let A=R;var W=(A.__esModule?A:{default:A}).default;const d=O(W),j=".semaphor-scope";function V(e){return e?e.closest(j):null}function Q(e){if(!e)return"light";const r=e.dataset.semaphorTheme;return r==="dark"||r==="light"?r:e.classList.contains("dark")?"dark":"light"}const H=!1,$=["table","view","materialized view"],z=["_forecast"],J="dm",Z="semaphor_calculated_fields",X="calculated_fields",x=["lg","md","sm","xs","xxs"],ee={default:{dashboardPanel:"",dashboardTabsContainer:"",gridLayout:{className:""},chart:{font:{family:T.SEMAPHOR_DEFAULT_FONT_FAMILY},dataset:{backgroundColor:[d.teal[500],d.teal[300],d.gray[700],d.gray[500],d.gray[300]],borderColor:[d.teal[500],d.teal[300],d.gray[700],d.gray[500],d.gray[300]]},options:{interaction:{mode:"index"},plugins:{datalabels:{display:!1,color:v},title:{display:!0},tooltip:{backgroundColor:"#fff",bodyColor:"#000",borderWidth:.25,titleColor:"#000",borderColor:"rgb(128,131,139)",cornerRadius:4,usePointStyle:!0,pointStyle:"rectRounded",boxPadding:4},legend:{position:"top",align:"center",maxHeight:0,labels:{useBorderRadius:!0,borderRadius:2}}},scales:{y:{grid:{display:!0},title:{display:!0,text:""},beginAtZero:!0,ticks:{precision:0}},x:{grid:{display:!0},title:{display:!0}}},layout:{padding:{top:-40}},borderRadius:2,responsive:!0,maintainAspectRatio:!1}}},dark:{chart:{dataset:{datalables:{color:v},backgroundColor:[d.teal[500],d.teal[300],d.gray[700],d.gray[500],d.gray[300]],borderColor:[d.teal[500],d.teal[300],d.gray[700],d.gray[500],d.gray[300]]},options:{plugins:{tooltip:{backgroundColor:"#000",bodyColor:"#fff",borderWidth:.25,titleColor:"#fff",borderColor:"rgb(128,131,139)",cornerRadius:2,boxPadding:4}},datalabels:{display:!1},scales:{x:{grid:{display:!0,color:d.slate[800]}},y:{grid:{display:!0,color:d.slate[800]}}}}}}};function v(e){var a,i,n,l,c,f,u,p,m;const r=(c=(l=(n=(i=(a=e==null?void 0:e.chart)==null?void 0:a.config)==null?void 0:i._config)==null?void 0:n.options)==null?void 0:l.plugins)==null?void 0:c.datalabels;let t=(f=e==null?void 0:e.dataset)==null?void 0:f.backgroundColor;return(r==null?void 0:r.align)==="end"&&(r==null?void 0:r.anchor)==="end"&&(t=h((u=e==null?void 0:e.chart)==null?void 0:u.canvas)),(r==null?void 0:r.align)==="start"&&(r==null?void 0:r.anchor)==="start"&&(t=h((p=e==null?void 0:e.chart)==null?void 0:p.canvas)),P(t,{baseColor:h((m=e==null?void 0:e.chart)==null?void 0:m.canvas)})}function h(e){if(typeof document<"u"){const r=V(e);if(r){const a=window.getComputedStyle(r).getPropertyValue("--semaphor-background").trim();return a?`hsl(${a})`:Q(r)==="dark"?"#000000":"#FFFFFF"}const t=document.documentElement;if(t.classList.contains("dark"))return"#000000";if(t.classList.contains("light"))return"#FFFFFF"}return typeof window<"u"&&typeof window.matchMedia=="function"&&window.matchMedia("(prefers-color-scheme: dark)").matches?"#000000":"#FFFFFF"}function P(e,r={}){let t=0,a=0,i=0,n=0;const l=r.baseColor?T.parseRuntimeColor(r.baseColor):null,c=y=>{if(!y)return d.gray[500];const M=T.parseRuntimeColor(y);if(!M)return d.gray[500];const C=S(M,l);t+=C.r,a+=C.g,i+=C.b,n++};if(Array.isArray(e)?e.forEach(y=>{c(y)}):c(e),n===0)return d.gray[500];const f=t/n,u=a/n,p=i/n;return(f*299+u*587+p*114)/1e3>=180?"black":"white"}function S(e,r){if(e.alpha>=1)return e;const t=r?S(r,null):re;return{r:e.r*e.alpha+t.r*(1-e.alpha),g:e.g*e.alpha+t.g*(1-e.alpha),b:e.b*e.alpha+t.b*(1-e.alpha)}}const re={r:255,g:255,b:255};function Y(e){if(!e)return!1;const r=e.groupByColumns&&e.groupByColumns.length>0,t=e.metricColumns&&e.metricColumns.length>0,a=e.pivotByColumns&&e.pivotByColumns.length>0,i=e.detailColumns&&e.detailColumns.length>0;return!!(r||t||a||i)}function te(e,r){var n,l,c;if(r!=null&&r.skipSetupCheck||e.type==="text"||(n=e.customCardPreferences)!=null&&n.url)return!1;const t=!!(e.connectionId||(l=e.dataSource)!=null&&l.connectionId),a=!!((c=e.sql)!=null&&c.trim()),i=Y(e.config);return!t||!i&&!a}function ae(e){return e.format!=null||e.dateFormat!=null}const B={"Week of MMM DD, YYYY":{type:"temporal_bucket",presentation:{mode:"preset",preset:"week_of_short"}},"Week of MMMM DD, YYYY":{type:"temporal_bucket",presentation:{mode:"preset",preset:"week_of_long"}},"Q1 YYYY":{type:"temporal_bucket",presentation:{mode:"preset",preset:"quarter_short"}},"1st Quarter YYYY":{type:"temporal_bucket",presentation:{mode:"preset",preset:"quarter_long"}},"YYYY Q1":void 0,"YYYY-Q1":void 0,"Quarter 1, YYYY":void 0,"YYYY-WW":void 0};function oe(e,r,t,a){return{code:r,severity:"warning",fieldId:e.fieldId,...a?{ignoredPattern:a}:{},effectiveFormat:t}}function ne(e,r){if(e.dateFormat===void 0||e.dateFormat===null)return{format:g.AUTOMATIC_TEMPORAL_BUCKET_FORMAT};if(typeof e.dateFormat!="string")return{format:g.AUTOMATIC_TEMPORAL_BUCKET_FORMAT,repairCode:"unsupported_pattern"};const t=e.dateFormat==="custom"?typeof e.customFormat=="string"?e.customFormat.trim():"":e.dateFormat.trim();if(!t)return{format:g.AUTOMATIC_TEMPORAL_BUCKET_FORMAT,repairCode:"missing_custom_pattern"};if(Object.prototype.hasOwnProperty.call(B,t)){const n=B[t];return n?b.validateTemporalBucketFormatApplicability(n,r).ok?{format:n}:{format:g.AUTOMATIC_TEMPORAL_BUCKET_FORMAT,repairCode:"grain_incompatible_pattern",ignoredPattern:t}:{format:g.AUTOMATIC_TEMPORAL_BUCKET_FORMAT,repairCode:"unsupported_pattern",ignoredPattern:t}}const a={type:"temporal_bucket",presentation:{mode:"pattern",pattern:t}},i=b.validateTemporalBucketFormatApplicability(a,r);return i.ok?{format:a}:{format:g.AUTOMATIC_TEMPORAL_BUCKET_FORMAT,repairCode:i.code==="incompatible_temporal_bucket_pattern"||i.code==="incompatible_temporal_bucket_preset"?"grain_incompatible_pattern":"unsupported_pattern",ignoredPattern:t}}function fe(e){if(b.isSemaphorTimeGrain(e.granularity))return{granularity:e.granularity,assumedDay:!1};if(!(e.granularity!==void 0&&e.granularity!==null))return b.normalizeAnalyticsCatalogDataType(e.dataType)==="date"?{granularity:"day",assumedDay:!0}:void 0}function de(e){const r=fe(e);if(!r)return{ok:!1,error:{code:"ambiguous_temporal_grain",fieldId:e.fieldId}};let t,a,i;if(e.format!==void 0&&e.format!==null){const l=b.temporalBucketFormatSchema.safeParse(e.format);if(!l.success)t=g.AUTOMATIC_TEMPORAL_BUCKET_FORMAT,a="unsupported_pattern";else{const c=b.validateTemporalBucketFormatApplicability(l.data,r.granularity);t=c.ok?l.data:g.AUTOMATIC_TEMPORAL_BUCKET_FORMAT,c.ok||(a=c.code==="invalid_temporal_bucket_pattern"?"unsupported_pattern":"grain_incompatible_pattern",i=l.data.presentation.mode==="pattern"?l.data.presentation.pattern:l.data.presentation.mode==="preset"?l.data.presentation.preset:void 0)}}else({format:t,repairCode:a,ignoredPattern:i}=ne(e,r.granularity));const n=r.assumedDay?"missing_grain_assumed_day":a;return{ok:!0,format:t,...n?{diagnostic:oe(e,n,t,i)}:{}}}exports.BREAKPOINTS=x;exports.CALCULATED_FIELDS_GROUP_ID=Z;exports.CALCULATED_FIELDS_GROUP_NAME=X;exports.DATABASE_ENTITY_TYPES=$;exports.DATAMODEL_NAMESPCACE=J;exports.DEFAULT_STYLE=ee;exports.METADATA_KEYS=z;exports.colors=d;exports.commonjsGlobal=U;exports.getAugmentedNamespace=D;exports.getCanvasBackgroundColor=h;exports.getContrastColor=P;exports.getDatalabelColor=v;exports.getDefaultExportFromCjs=O;exports.hasSavedTemporalBucketPresentation=ae;exports.hasValidCardConfig=Y;exports.isCardUnconfigured=te;exports.isDevEnv=H;exports.readSavedTemporalBucketFormat=de;exports.v4=K;
|