react-semaphor 0.1.519 → 0.1.521
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/CHANGELOG.md +5 -0
- package/package.json +25 -48
- package/dist/analytics-protocol/index.cjs +0 -1
- package/dist/appearance/index.cjs +0 -1
- package/dist/appearance-runtime/index.cjs +0 -1
- package/dist/brand-studio/index.cjs +0 -16
- package/dist/briefings/index.cjs +0 -1
- package/dist/chunks/appearance-context-DzqCdhB4.cjs +0 -1
- package/dist/chunks/appearance-runtime-provider-D5pkvgE4.cjs +0 -1
- package/dist/chunks/braces-v55uLCAK.cjs +0 -6
- package/dist/chunks/calculated-field-identity-5bg9oHTw.cjs +0 -1
- package/dist/chunks/canonical-result-keys-Cb96edol.cjs +0 -1
- package/dist/chunks/card-config-utils-z86y6tSq.cjs +0 -1
- package/dist/chunks/color-CyB5o13F.cjs +0 -4
- package/dist/chunks/column-bands-CU0byntA.cjs +0 -1
- package/dist/chunks/common-types-nBuCd3u2.cjs +0 -1
- package/dist/chunks/constants-B00YUv89.cjs +0 -1
- package/dist/chunks/dashboard-briefing-launcher-edgVkxY9.cjs +0 -21
- package/dist/chunks/dashboard-controls-BU4GRhTj.cjs +0 -52
- package/dist/chunks/dashboard-date-comparison-definition-Y6JZwpcr.cjs +0 -1
- package/dist/chunks/dashboard-json--bOkkyj1.cjs +0 -1
- package/dist/chunks/edit-dashboard-visual-4H05QT83.cjs +0 -172
- package/dist/chunks/editor-action-buttons-DZcRlo61.cjs +0 -16
- package/dist/chunks/field-aggregations-pH_3kymD.cjs +0 -1
- package/dist/chunks/field-dependencies-EB485TdB.cjs +0 -1
- package/dist/chunks/index-CapO5Uw9.cjs +0 -4
- package/dist/chunks/index-Cx3qmRUB.cjs +0 -1
- package/dist/chunks/index-D4ah3SrH.cjs +0 -1434
- package/dist/chunks/layout-grid-xm8pqtx0.cjs +0 -6
- package/dist/chunks/matrix-analytical-definition-BWd159lN.cjs +0 -1
- package/dist/chunks/matrix-card-C2RjEYZ8.cjs +0 -1
- package/dist/chunks/matrix-continuation-6nhDy-lF.cjs +0 -1
- package/dist/chunks/matrix-control-sources-BvEJF7d3.cjs +0 -1
- package/dist/chunks/matrix-definition-DanUT11P.cjs +0 -1
- package/dist/chunks/matrix-formatter-Qk8xsR05.cjs +0 -1
- package/dist/chunks/matrix-member-presentation-DvXDEo0U.cjs +0 -1
- package/dist/chunks/matrix-operation-contract-0RxoU_M3.cjs +0 -1
- package/dist/chunks/metric-comparison-CUmltzpz.cjs +0 -1
- package/dist/chunks/mouse-pointer-2-DX4A_XZw.cjs +0 -6
- package/dist/chunks/normalize-dashboard-for-dirty-check-BYtBA708.cjs +0 -1
- package/dist/chunks/numeric-presentation-mY6wJMdB.cjs +0 -1
- package/dist/chunks/operators-DEfKaU_V.cjs +0 -1
- package/dist/chunks/palette-BN-jYtaK.cjs +0 -6
- package/dist/chunks/pivot-header-presentation-DV2aBB6p.cjs +0 -5
- package/dist/chunks/pivot-result-identity-gquWljbd.cjs +0 -1
- package/dist/chunks/pivot-result-lifecycle-OXAgoIYm.cjs +0 -1
- package/dist/chunks/raw-temporal-CYdOOyR5.cjs +0 -1
- package/dist/chunks/raw-temporal-contract-CklMVG_1.cjs +0 -1
- package/dist/chunks/report-preferences-dialog-CZISeLGV.cjs +0 -1
- package/dist/chunks/report-runtime-context-CzSrCBsu.cjs +0 -1
- package/dist/chunks/save-3dYRmehL.cjs +0 -6
- package/dist/chunks/selection-reducer-Kl22OzIk.cjs +0 -26
- package/dist/chunks/semantic-format-Bd7HmLG_.cjs +0 -1
- package/dist/chunks/source-entity-resolution-R46X34SE.cjs +0 -1
- package/dist/chunks/stable-serialize-jqCpyZvd.cjs +0 -1
- package/dist/chunks/switch-C0520nRt.cjs +0 -134
- package/dist/chunks/temporal-bucket-4YEPEKlJ.cjs +0 -1
- package/dist/chunks/temporal-bucket-contract-nTv6gvX5.cjs +0 -1
- package/dist/chunks/temporal-input-presentation-BIOSVWCL.cjs +0 -1
- package/dist/chunks/token-types-aWrzwonf.cjs +0 -1
- package/dist/chunks/update-policy-DRDLWe7Y.cjs +0 -3
- package/dist/chunks/use-debounced-dirty-check-XHSwAefL.cjs +0 -1
- package/dist/chunks/validators-DFeDcdpA.cjs +0 -1
- package/dist/chunks/x-B6ghREd2.cjs +0 -31
- package/dist/dashboard/index.cjs +0 -1
- package/dist/dashboard-assistant/index.cjs +0 -1
- package/dist/dashboard-authoring/index.cjs +0 -3
- package/dist/data-app-builder/index.cjs +0 -51
- package/dist/data-app-builder-browser-runtime/index.cjs +0 -1
- package/dist/data-app-codegen/index.cjs +0 -1
- package/dist/data-app-codegen-node/index.cjs +0 -660
- package/dist/data-app-sdk/index.cjs +0 -117
- package/dist/data-app-sdk-adapters/index.cjs +0 -1
- package/dist/data-app-sdk-validation/index.cjs +0 -1
- package/dist/format-utils/index.cjs +0 -3
- package/dist/index.cjs +0 -1
- package/dist/layouts/index.cjs +0 -1
- package/dist/pdf-export-policy/index.cjs +0 -1
- package/dist/pdf-table-layout/index.cjs +0 -1
- package/dist/report-runtime-context/index.cjs +0 -1
- package/dist/shared/index.cjs +0 -1
- package/dist/surfboard/index.cjs +0 -1
- package/dist/types/index.cjs +0 -1
- package/dist/value-format-preferences/index.cjs +0 -1
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
"use strict";const t=require("./x-B6ghREd2.cjs");/**
|
|
2
|
-
* @license lucide-react v0.453.0 - ISC
|
|
3
|
-
*
|
|
4
|
-
* This source code is licensed under the ISC license.
|
|
5
|
-
* See the LICENSE file in the root directory of this source tree.
|
|
6
|
-
*/const e=t.createLucideIcon("LayoutGrid",[["rect",{width:"7",height:"7",x:"3",y:"3",rx:"1",key:"1g98yp"}],["rect",{width:"7",height:"7",x:"14",y:"3",rx:"1",key:"6d4xhi"}],["rect",{width:"7",height:"7",x:"14",y:"14",rx:"1",key:"nxv5o0"}],["rect",{width:"7",height:"7",x:"3",y:"14",rx:"1",key:"1bb6yr"}]]);exports.LayoutGrid=e;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";const u=require("./validators-DFeDcdpA.cjs");function m(t){const{label:i,...n}=t;return{dataset:u.semaphorSourceIdentityKey(n),...t.kind==="physical"?{dialect:t.dialect,connectionType:t.connectionType}:{}}}function y(t){const{label:i,source:n,...e}=t;return{...e,source:n&&m(n)}}function s(t){const{label:i,format:n,description:e,tags:a,inputs:r,...l}=t;return{...l,inputs:Object.fromEntries(Object.entries(r).map(([c,f])=>[c,{...f,field:y(f.field)}]))}}function d(t){const{derivedField:i,...n}=t;return{...y(n),derivedField:i&&s(i)}}function o(t){const{label:i,format:n,description:e,semanticTemporalPresentation:a,derivedField:r,calculatedFormula:l,...c}=t;return{...c,semanticTemporalPresentation:a&&{granularity:a.granularity},derivedField:r&&s(r),calculatedFormula:l&&{...l,inputFields:l.inputFields.map(o)}}}function p(t){return{...t,conditions:t.conditions.map(({label:i,field:n,...e})=>({...e,field:o(n)})),groups:t.groups.map(p)}}function b(t){return{...t,source:m(t.source),rows:t.rows.map(i=>({...i,field:d(i.field)})),columns:t.columns.map(i=>({...i,field:d(i.field)})),measures:t.measures.map(i=>i.kind==="aggregate"?{...i,field:d(i.field)}:{...i,definition:s(i.definition)}),filters:t.filters&&p(t.filters),joinPlan:t.joinPlan&&{...t.joinPlan,joins:t.joinPlan.joins.map(i=>({...i,joinKeyGroups:i.joinKeyGroups.map(n=>({...n,keys:n.keys.map(e=>({...e,source:o(e.source),target:o(e.target)}))}))}))},sorts:[...t.sorts].sort((i,n)=>{const e=u.matrixSortKey(i),a=u.matrixSortKey(n);return e<a?-1:e>a?1:0})}}exports.getMatrixAnalyticalCalculation=s;exports.getMatrixAnalyticalDefinition=b;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";const o=require("./validators-DFeDcdpA.cjs");require("./matrix-operation-contract-0RxoU_M3.cjs");function s(i,r={}){var n,a;if(i.type!=="matrixTable"||!i.config||typeof i.config!="object"||!("matrix"in i.config))return{status:"absent"};if((n=i.sql)!=null&&n.trim()||(a=i.python)!=null&&a.trim())return{status:"invalid",error:new Error("A Matrix definition requires a config-only Matrix card.")};if("matrixIntent"in i.config&&i.config.matrixIntent!==void 0)return{status:"invalid",error:new Error("A Matrix card cannot contain two definitions.")};const t=(r.authoringDraft?o.matrixAuthoringConfigSchema:o.matrixConfigSchema).safeParse(i.config.matrix);return t.success?{status:"ready",config:t.data}:{status:"invalid",error:t.error}}function u(i){const r=s(i);if(r.status==="invalid")throw r.error;return r.status==="ready"?r.config:void 0}function f(i){const r=[],e=t=>{r.push(t),t.derivedField&&Object.values(t.derivedField.inputs).forEach(n=>e(n.field))};return[...i.rows,...i.columns].forEach(t=>e(t.field)),i.measures.forEach(t=>{t.kind==="aggregate"?e(t.field):Object.values(t.definition.inputs).forEach(n=>e(n.field))}),r}function c(i){return o.mergeSemaphorSourcesByIdentity([i.source,...f(i).map(r=>r.source??i.source)])}exports.inspectMatrixCardConfig=s;exports.matrixDefinitionFields=f;exports.matrixDefinitionSources=c;exports.readMatrixCardConfig=u;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";const e=require("zod"),m=5*1024*1024,o=e.z.number().int().positive().max(Number.MAX_SAFE_INTEGER),c=e.z.number().int().nonnegative().max(Number.MAX_SAFE_INTEGER),s=c.refine(t=>t>0),f=t=>!!t&&t!=="."&&t!==".."&&!t.includes("/")&&!t.includes("\\");function a(t,i){const n=i.split("/");if(n.length!==5||n[0]!=="exports"||n[1]!==t||n[2]!=="attempts"||!n.every(f))throw new Error("Invalid Matrix export artifact namespace.");return{attemptId:n[3],filename:n[4]}}function z(t,i,n){const r=`exports/${t}/attempts/${i}/${n}`;return a(t,r),r}const u=e.z.object({acquisition:e.z.literal("continuation"),jobId:e.z.string().min(1),sequence:s,deadlineAt:o}),b=e.z.object({key:e.z.string(),content:e.z.string(),contentType:e.z.enum(["text/csv","application/json"]),encoding:e.z.literal("gzip-base64").optional()}).refine(t=>!t.encoding||t.contentType==="application/json","Unsupported Matrix artifact encoding."),p=e.z.discriminatedUnion("kind",[e.z.object({kind:e.z.literal("work"),sequence:s,checkpointKey:e.z.string(),objects:e.z.array(b).min(2).max(3),deadlineAt:o}),e.z.object({kind:e.z.literal("committed"),sequence:s,done:e.z.boolean(),deadlineAt:o})]);function l(t){const i=JSON.stringify(t);if(i===void 0||new TextEncoder().encode(i).byteLength>m)throw new RangeError("Matrix export batch exceeds its transport byte limit.")}function y(t,i){const n=p.parse(t);if(l(t),n.deadlineAt!==i.deadlineAt)throw new Error("Matrix deadline does not match the job.");if(n.sequence!==i.sequence+(n.kind==="committed"?1:0))throw new Error("Invalid Matrix batch sequence.");if(n.kind==="work"){a(i.jobId,n.checkpointKey);for(const r of n.objects)a(i.jobId,r.key)}return n}const h=e.z.object({acquisition:e.z.literal("continuation"),deadlineAt:o,chunks:e.z.array(e.z.object({chunkNumber:s,dataKey:e.z.string()})).min(1),totalRows:c,totalBytes:c,fileKey:e.z.string().min(1).optional(),fileSize:c.optional()}).refine(t=>t.fileKey===void 0==(t.fileSize===void 0),"Incomplete published Matrix artifact.");function M(t,i,n){const r=h.parse(t);if(r.deadlineAt!==n)throw new Error("Matrix deadline does not match the job.");return r.chunks.forEach((d,x)=>{if(d.chunkNumber!==x+1)throw new Error("Invalid committed Matrix chunk order.");a(i,d.dataKey)}),r.fileKey!==void 0&&a(i,r.fileKey),r}exports.MATRIX_EXPORT_TRANSFER_BYTES=m;exports.assertMatrixBatchResponseSize=l;exports.matrixAttemptKey=z;exports.matrixBatchInputSchema=u;exports.matrixBatchResponseSchema=p;exports.matrixExportDeadlineSchema=o;exports.matrixManifestSchema=h;exports.parseMatrixAttemptKey=a;exports.parseMatrixBatchResponse=y;exports.parseMatrixManifest=M;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";var ue=Object.defineProperty;var ge=(e,t,o)=>t in e?ue(e,t,{enumerable:!0,configurable:!0,writable:!0,value:o}):e[t]=o;var v=(e,t,o)=>ge(e,typeof t!="symbol"?t+"":t,o);const _=require("./validators-DFeDcdpA.cjs"),L=require("./common-types-nBuCd3u2.cjs");require("./matrix-operation-contract-0RxoU_M3.cjs");const Y=require("./calculated-field-identity-5bg9oHTw.cjs"),fe=require("./field-aggregations-pH_3kymD.cjs"),me=require("zod"),Z=require("./matrix-card-C2RjEYZ8.cjs"),b=require("./constants-B00YUv89.cjs");function X(e,t){const r=Ne(e);let i;if(r.date){const g=pe(r.date,2);i=Re(g.restDateString,g.year)}if(!i||isNaN(i.getTime()))return new Date(NaN);const a=i.getTime();let d=0,u;if(r.time&&(d=De(r.time),isNaN(d)))return new Date(NaN);if(r.timezone){if(u=Te(r.timezone),isNaN(u))return new Date(NaN)}else{const g=new Date(a+d),R=new Date(0);return R.setFullYear(g.getUTCFullYear(),g.getUTCMonth(),g.getUTCDate()),R.setHours(g.getUTCHours(),g.getUTCMinutes(),g.getUTCSeconds(),g.getUTCMilliseconds()),R}return new Date(a+d+u)}const S={dateTimeDelimiter:/[T ]/,timeZoneDelimiter:/[Z ]/i,timezone:/([Z+-].*)$/},_e=/^-?(?:(\d{3})|(\d{2})(?:-?(\d{2}))?|W(\d{2})(?:-?(\d{1}))?|)$/,Oe=/^(\d{2}(?:[.,]\d*)?)(?::?(\d{2}(?:[.,]\d*)?))?(?::?(\d{2}(?:[.,]\d*)?))?$/,Ie=/^([+-])(\d{2})(?::?(\d{2}))?$/;function Ne(e){const t={},o=e.split(S.dateTimeDelimiter);let r;if(o.length>2)return t;if(/:/.test(o[0])?r=o[0]:(t.date=o[0],r=o[1],S.timeZoneDelimiter.test(t.date)&&(t.date=e.split(S.timeZoneDelimiter)[0],r=e.substr(t.date.length,e.length))),r){const i=S.timezone.exec(r);i?(t.time=r.replace(i[1],""),t.timezone=i[1]):t.time=r}return t}function pe(e,t){const o=new RegExp("^(?:(\\d{4}|[+-]\\d{"+(4+t)+"})|(\\d{2}|[+-]\\d{"+(2+t)+"})$)"),r=e.match(o);if(!r)return{year:NaN,restDateString:""};const i=r[1]?parseInt(r[1]):null,a=r[2]?parseInt(r[2]):null;return{year:a===null?i:a*100,restDateString:e.slice((r[1]||r[2]).length)}}function Re(e,t){if(t===null)return new Date(NaN);const o=e.match(_e);if(!o)return new Date(NaN);const r=!!o[4],i=w(o[1]),a=w(o[2])-1,d=w(o[3]),u=w(o[4]),g=w(o[5])-1;if(r)return Ae(t,u,g)?Ce(t,u,g):new Date(NaN);{const R=new Date(0);return!ye(t,a,d)||!he(t,i)?new Date(NaN):(R.setUTCFullYear(t,a,Math.max(i,d)),R)}}function w(e){return e?parseInt(e):1}function De(e){const t=e.match(Oe);if(!t)return NaN;const o=M(t[1]),r=M(t[2]),i=M(t[3]);return we(o,r,i)?o*b.millisecondsInHour+r*b.millisecondsInMinute+i*1e3:NaN}function M(e){return e&&parseFloat(e.replace(",","."))||0}function Te(e){if(e==="Z")return 0;const t=e.match(Ie);if(!t)return 0;const o=t[1]==="+"?-1:1,r=parseInt(t[2]),i=t[3]&&parseInt(t[3])||0;return Se(r,i)?o*(r*b.millisecondsInHour+i*b.millisecondsInMinute):NaN}function Ce(e,t,o){const r=new Date(0);r.setUTCFullYear(e,0,4);const i=r.getUTCDay()||7,a=(t-1)*7+o+1-i;return r.setUTCDate(r.getUTCDate()+a),r}const Ee=[31,null,31,30,31,30,31,31,30,31,30,31];function W(e){return e%400===0||e%4===0&&e%100!==0}function ye(e,t,o){return t>=0&&t<=11&&o>=1&&o<=(Ee[t]||(W(e)?29:28))}function he(e,t){return t>=1&&t<=(W(e)?366:365)}function Ae(e,t,o){return t>=1&&t<=53&&o>=0&&o<=6}function we(e,t,o){return e===24?t===0&&o===0:o>=0&&o<60&&t>=0&&t<60&&e>=0&&e<25}function Se(e,t){return t>=0&&t<=59}const Le=["lg","md","sm","xs","xxs"],be=15;function Ve(e,t){return e.name===t.name&&e.qualifiedEntityName===t.qualifiedEntityName}function xe(e,t,o){var i,a;if(o.sortPolicy==="dropUnrelatedSorts"){const d=new Set((e.metricColumns||[]).map(u=>u.id));return{...e,groupByColumns:[t],sortByColumns:(e.sortByColumns||[]).filter(u=>u.id===t.id||d.has(u.id))}}const r=(i=e.groupByColumns)==null?void 0:i[0];return{...e,groupByColumns:[t],sortByColumns:(a=e.sortByColumns)==null?void 0:a.map(d=>r&&Ve(d,r)?{...t,role:"sortby",direction:d.direction}:d)}}function ve(e,t){return`${e}-${t}`}const Me="CONTROL_PLACEHOLDER_QUOTED",Q="CONTROL_REFERENCE_MISSING",K="CONTROL_VALUE_MISSING",Fe="CONTROL_VALUE_INVALID",Ue="CONTROL_CONTEXT_UNSUPPORTED",J="CONTROL_DEFINITION_DUPLICATE",ee="CONTROL_DEFINITION_INVALID",V="CONTROL_BINDING_MAPPING_MISSING",te="CONTROL_BINDING_TARGET_INVALID",F="CONTROL_BINDING_VALUE_INVALID";class O extends Error{constructor(o,r){super(o);v(this,"status",400);v(this,"details");Object.setPrototypeOf(this,O.prototype),this.name="ControlResolutionError",this.details=r}}function B(e,t){const o=new Map;for(const r of[...e,...t]){if(!r||typeof r!="object"||typeof r.id!="string"||r.id.trim().length===0)throw new O("Malformed control definition was provided for query execution.",{code:ee});if(o.get(r.id))throw new O(`Duplicate control definition '${r.id}' was provided for query execution.`,{code:J,controlId:r.id});o.set(r.id,r)}return o}const Be=/^-?(?:\d+\.?\d*|\.\d+)(?:[eE][+-]?\d+)?$/;function Ge(e){switch(e.source.kind){case"manual":return e.source.options.map(t=>t.value);case"field_allowlist":return e.source.fieldIds;case"metric_allowlist":return e.source.metricIds;case"dataset_values":return null;default:return null}}function D(e){return`${e.label||e.id} (${e.id})`}function Pe(e){return e.type==="field_selector"||e.type==="metric_selector"||e.type==="aggregation_selector"||e.type==="grain_selector"}function j(e,t){const o=Ge(e);if(!(!o||o.length===0)&&!o.includes(t))throw new Error(`Control ${D(e)} received unsupported value '${t}'.`)}function re(e,t){switch(e.type){case"enum":case"field_selector":case"metric_selector":case"aggregation_selector":case"grain_selector":{if(typeof t!="string"||t.trim().length===0)throw new Error(`Control ${D(e)} requires a non-empty string value.`);return Pe(e)&&t===L.CONTROL_CARD_DEFAULT_VALUE||j(e,t),t}case"multi_enum":{if(!Array.isArray(t))throw new Error(`Control ${D(e)} requires a non-empty array value.`);if(t.length===0){if(!e.requiredAtExecution)return;throw new Error(`Control ${D(e)} requires a non-empty array value.`)}for(const o of t){if(typeof o!="string"||o.trim().length===0)throw new Error(`Control ${D(e)} requires string array values.`);j(e,o)}return t}case"text":{if(typeof t!="string")throw new Error(`Control ${D(e)} requires a string value.`);return t}case"number":{if(typeof t=="number"&&Number.isFinite(t))return t;if(typeof t=="string"&&Be.test(t.trim()))return Number(t);throw new Error(`Control ${D(e)} requires a numeric value.`)}case"boolean":{if(typeof t!="boolean")throw new Error(`Control ${D(e)} requires a boolean value.`);return t}case"date":{if(t instanceof Date&&!Number.isNaN(t.getTime()))return t;if(typeof t=="string"&&t.trim().length>0){const o=t.trim(),r=X(o);if(!Number.isNaN(r.getTime()))return o}throw new Error(`Control ${D(e)} requires a date-compatible value.`)}default:return t}}function G(e){var i;const t=e.definitions.get(e.binding.controlId);if(!t)throw new O(`Binding references unknown control '${e.binding.controlId}'.`,{code:Q,controlId:e.binding.controlId});if(!Object.prototype.hasOwnProperty.call(e.controlValues||{},e.binding.controlId)){if(!t.requiredAtExecution)return;throw new O(`Control '${e.binding.controlId}' must resolve to a concrete value before query execution.`,{code:K,controlId:e.binding.controlId})}let r;try{r=re(t,(i=e.controlValues)==null?void 0:i[e.binding.controlId])}catch(a){const d=a instanceof Error?a.message:String(a);throw new O(d,{code:F,controlId:e.binding.controlId})}if(typeof r=="string"&&r.trim().length>0)return r;if(typeof r=="number"||typeof r=="boolean")return String(r);if(r instanceof Date&&!Number.isNaN(r.getTime()))return r.toISOString();throw new O(`Binding control '${e.binding.controlId}' must resolve to a single scalar value.`,{code:F,controlId:e.binding.controlId})}function U(e){const t=e.binding.mapping[e.selectedValue];if(typeof t=="string"&&t.trim().length>0)return t;throw new O(`Binding for control '${e.binding.controlId}' does not map value '${e.selectedValue}'.`,{code:V,controlId:e.binding.controlId})}function oe(e){const t=e.binding.mapping[e.selectedValue];if(t&&typeof t=="object"&&"role"in t&&t.role==="groupby")return t;throw new O(`Binding for control '${e.binding.controlId}' does not map value '${e.selectedValue}' to a valid group-by field.`,{code:V,controlId:e.binding.controlId})}function ne(e){const t=e.binding.mapping[e.selectedValue];if(t&&typeof t=="object"&&"role"in t&&t.role==="metric")return t;throw new O(`Binding for control '${e.binding.controlId}' does not map value '${e.selectedValue}' to a valid metric field.`,{code:V,controlId:e.binding.controlId})}function ie(e,t,o){if(_.shouldDropInheritedCalculationAggregate(_.getCalculatedFieldComputeStage(t),e.aggregateOrigin))return{aggregate:void 0,aggregateOrigin:void 0};const r=o==="selection"&&e.role==="metric"?t.aggregate:void 0;return{aggregate:e.aggregate??r,aggregateOrigin:e.aggregate?e.aggregateOrigin:r?t.aggregateOrigin:void 0}}function ae(e,t,o){var r,i,a,d,u,g;if(o==="domain")return{filters:(r=t.parameters)==null?void 0:r.filters,windowTransform:(i=e.parameters)==null?void 0:i.windowTransform};if(!(!e.parameters&&!t.parameters))return{filters:((a=e.parameters)==null?void 0:a.filters)??((d=t.parameters)==null?void 0:d.filters),windowTransform:((u=e.parameters)==null?void 0:u.windowTransform)??((g=t.parameters)==null?void 0:g.windowTransform)}}function $e(e,t,o){const r=e;return{id:e.id,role:e.role,...o==="selection"&&e.alias?{alias:e.alias}:{},granularity:e.granularity??t.granularity,dateFormat:e.dateFormat,customFormat:e.customFormat,semanticTemporalPresentation:t.semanticTemporalPresentation||e.semanticTemporalPresentation,...ie(e,t,o),...e.role==="metric"?{aliasTemplate:r.aliasTemplate,valueAliases:r.valueAliases,comparison:r.comparison,comparisonPolarity:r.comparisonPolarity,parameters:ae(r,t,"domain")}:{},...se(e)}}function se(e){const t={...e.labelOrigin==="override"?{label:e.label,labelOrigin:e.labelOrigin}:{},...e.formatOrigin==="override"?{format:e.format,formatOrigin:e.formatOrigin}:{}};switch(e.role){case"pivotby":return{...t,memberOrder:e.memberOrder};case"sortby":return{...t,direction:e.direction};case"detail":return{...t,...e.dateFormat!==void 0?{dateFormat:e.dateFormat}:{},...e.customFormat!==void 0?{customFormat:e.customFormat}:{}};default:return t}}const qe=new Set(["day","week","month","quarter","year","hour","minute","second"]);function ke(e){let t=e.spec;const o=B(e.controlDefinitions||[],e.cardControlDefinitions||[]),r=(e.controlBindings||[]).filter(n=>n.target!=="sql_param"),i=r.filter(n=>n.target==="config_metric_selector"||n.target==="config_field_selector"),a=r.filter(n=>n.target==="config_grain"||n.target==="config_aggregation"),d=new Set,u=new Map;let g;const R=()=>{if(g)return g;const n=e.catalog,c=new Map;for(const l of n){const f=c.get(l.id)??[];c.set(l.id,[...f,l])}return g={refs:n,byId:c},g},y=(n,c)=>{throw new O(n,{code:te,...c?{controlId:c}:{}})},x=(n,c)=>{var f;if(n.derivedField)return n.derivedField.dataType;const l=R().refs.filter(C=>C.field.name===n.name&&_.semaphorSourcesReferToSameDataset(C.field.source??e.spec.source,n.source??e.spec.source));return l.length>1?y("The selected field is ambiguous in the authorized Matrix field catalog.",c):_.normalizeAnalyticsCatalogDataType(((f=l[0])==null?void 0:f.field.dataType)??n.dataType)},P=(n,c)=>Y.getMatrixBindingTargets(n,c.target,l=>x(l,c.controlId)),T=_.matrixSpecSchema.safeParse(t);if(!T.success)return y(T.error.message);t=T.data;const le=[...i,...a].map(n=>{const c=G({binding:n,definitions:o,controlValues:e.controlValues}),l=!n.matrixTargetId&&c!==void 0&&c!==L.CONTROL_CARD_DEFAULT_VALUE?P(T.data,n):[];return{binding:n,selectedValue:c,targetId:n.matrixTargetId??(l.length===1?l[0].id:void 0)}});for(const{binding:n,targetId:c,selectedValue:l}of le){if(l===void 0||l===L.CONTROL_CARD_DEFAULT_VALUE)continue;const f=s=>y(s,n.controlId),C=n.target==="config_metric_selector"||n.target==="config_aggregation",de=P(t,n);(!c||!de.some(s=>s.id===c))&&f("Choose a valid Matrix level or measure target for this control.");const $=`${n.target}:${c}`;d.has($)&&f("Multiple controls cannot replace the same Matrix target."),d.add($);const q=s=>{const m=(R().byId.get(s.id)??[]).filter(N=>!s.source||_.semaphorSourcesReferToSameDataset(s.source,N.field.source??e.spec.source));if(m.length!==1)return f(m.length?"The selected field is ambiguous in the authorized Matrix field catalog.":"The selected field is not in the authorized Matrix field catalog.");const p=_.matrixFieldSchema.safeParse(m[0].field);return p.success?p.data:f(p.error.message)},h=n.target==="config_metric_selector"||n.target==="config_field_selector"?n.mapping[l]:void 0,E=h&&typeof h=="object"&&"kind"in h&&h.kind==="matrix_instance"?h.id:void 0;if(C){u.set(c,n.controlId);const s=E===void 0?void 0:T.data.measures.find(I=>I.id===E&&I.kind==="aggregate");E!==void 0&&!s&&f("The selected Matrix aggregate measure is no longer available.");const m=n.target==="config_metric_selector"&&!s?ne({binding:n,selectedValue:l}):void 0,p=((s==null?void 0:s.kind)==="aggregate"?s.aggregate:m==null?void 0:m.aggregate)??(n.target==="config_aggregation"?U({binding:n,selectedValue:l}):void 0),N=p===void 0?void 0:_.matrixAggregateSchema.safeParse(p);N&&!N.success&&f("This aggregation is not supported by Matrix."),t={...t,measures:t.measures.map(I=>I.id!==c||I.kind!=="aggregate"?I:{...I,...m?{field:q(m)}:{},...(s==null?void 0:s.kind)==="aggregate"?{field:s.field}:{},aggregate:N!=null&&N.success?N.data:I.aggregate})}}else{const s=E===void 0?void 0:[...T.data.rows,...T.data.columns].find(I=>I.id===E);E!==void 0&&!s&&f("The selected Matrix level is no longer available.");const m=n.target==="config_field_selector"&&!s?oe({binding:n,selectedValue:l}):void 0,p=n.target==="config_grain"?U({binding:n,selectedValue:l}):s?s.grain:m==null?void 0:m.granularity;p!==void 0&&!qe.has(p)&&f("This time grain is not supported by Matrix.");const N=I=>I.map(A=>{if(A.id!==c)return A;const k=(s==null?void 0:s.field)??(m?q(m):A.field),H=x(k,n.controlId),z=p??(m&&_.isAnalyticsDateLikeDataType(H)?A.grain:void 0);return z&&!_.isAnalyticsDateLikeDataType(H)&&f("A time grain requires a temporal Matrix level."),{...A,field:k,grain:z}});t={...t,rows:N(t.rows),columns:N(t.columns)}}}for(const[n,c]of Array.from(u)){const l=t.measures.find(C=>C.id===n);if(!l||l.kind!=="aggregate")continue;const f=x(l.field,c);fe.getFieldAggregationOptions(f).some(C=>C.value===l.aggregate)||y(`Aggregation '${l.aggregate}' is not eligible for this Matrix field datatype.`,c)}try{return Y.reconcileMatrixSpecStructure(T.data,t)}catch(n){if(n instanceof me.ZodError)return y(n.message);throw n}}function ce(e,t){const o=[],r=i=>{if(i.source){const a=_.configSourceRefSchema.safeParse(i.source);if(a.success)o.push(a.data);else if(t)throw a.error}i.derivedField&&Object.values(i.derivedField.inputs).forEach(a=>r(a.field))};for(const i of e){if(i.target!=="config_field_selector"&&i.target!=="config_metric_selector")continue;const a=t==null?void 0:t.get(i),d=t?a&&a!==L.CONTROL_CARD_DEFAULT_VALUE?[i.mapping[a]]:[]:Object.values(i.mapping);for(const u of d)u&&"role"in u&&r(u)}return o}function He(e,t=[],o=[]){return _.mergeSemaphorSourcesByIdentity([...Z.matrixDefinitionSources(e),...ce(t),...o])}function ze(e,t={}){const o=t.controlBindings??[],r=B(t.controlDefinitions??[],t.cardControlDefinitions??[]),i=new Map(o.filter(a=>a.target==="config_field_selector"||a.target==="config_metric_selector").map(a=>[a,G({binding:a,definitions:r,controlValues:t.controlValues})]));return _.mergeSemaphorSourcesByIdentity([...Z.matrixDefinitionSources(e),...ce(o,i)])}exports.CONTROL_BINDING_MAPPING_MISSING_ERROR_CODE=V;exports.CONTROL_BINDING_TARGET_INVALID_ERROR_CODE=te;exports.CONTROL_BINDING_VALUE_INVALID_ERROR_CODE=F;exports.CONTROL_CONTEXT_UNSUPPORTED_ERROR_CODE=Ue;exports.CONTROL_DEFINITION_DUPLICATE_ERROR_CODE=J;exports.CONTROL_DEFINITION_INVALID_ERROR_CODE=ee;exports.CONTROL_PLACEHOLDER_QUOTED_ERROR_CODE=Me;exports.CONTROL_REFERENCE_MISSING_ERROR_CODE=Q;exports.CONTROL_VALUE_INVALID_ERROR_CODE=Fe;exports.CONTROL_VALUE_MISSING_ERROR_CODE=K;exports.ControlResolutionError=O;exports.DASHBOARD_AUTHORING_BREAKPOINTS=Le;exports.DASHBOARD_AUTHORING_MAX_GENERATED_CARDS=be;exports.applyGroupByOverride=xe;exports.buildControlDefinitionIndex=B;exports.getCalculatedFieldAggregateOverrides=ie;exports.getCalculatedFieldParameters=ae;exports.getCalculatedFieldShelfOverrides=se;exports.getColumnCatalogFieldId=ve;exports.getDomainCalculatedSelectionOverrides=$e;exports.matrixCatalogSources=He;exports.matrixExecutionSources=ze;exports.parseISO=X;exports.resolveBindingControlValue=G;exports.resolveGroupByFieldTarget=oe;exports.resolveMatrixControlBindings=ke;exports.resolveMetricFieldTarget=ne;exports.resolveScalarMappedValue=U;exports.validateControlValue=re;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";const i=require("./validators-DFeDcdpA.cjs");function d(e,t){return t.levelLabels[e.id]??e.field.label??e.field.name}function p(e,t){return t.measureLabels[e.id]??(e.kind==="aggregate"?e.field.label??e.field.name:e.definition.label)}function x(e){return i.matrixConfigSchema.parse(m(e))}function m(e){const t=i.matrixAuthoringSpecSchema.parse(e),n=a=>({grand:{visible:!0,position:"after"},levels:Object.fromEntries(a.map(r=>[r.id,{visible:!0,position:"before"}]))});return i.matrixAuthoringConfigSchema.parse({version:1,spec:t,presentation:{layout:{kind:"compact"},absence:{emptyText:"—",nullText:""},levelLabels:{},measureLabels:{},levelFormats:{},measureFormats:{},totals:{rows:n(t.rows),columns:n(t.columns)}},defaultView:{rows:{depth:0,overrides:[]},columns:{depth:t.columns.length>1?1:0,overrides:[]}}})}function f(e,t){const n=new Map(e.map(a=>[i.matrixSortKey(a),a]));for(const a of t??[])n.set(i.matrixSortKey(a),a);return[...n.values()]}function g(e){const{spec:t,presentation:n,defaults:a,session:r}=i.matrixDefinitionInputSchema.parse(e),c=new Map(f(t.sorts,r==null?void 0:r.sorts).map(o=>[i.matrixSortKey(o),o]));for(const o of["rows","columns"])for(const l of t[o]){const s={axis:o,levelId:l.id,scope:{kind:"level"},target:{kind:"member"},direction:"asc",nulls:"last"};c.has(i.matrixSortKey(s))||c.set(i.matrixSortKey(s),s)}const u=(o,l)=>({depth:Math.min(o.depth,Math.max(0,l-1)),overrides:o.overrides.filter(s=>s.path.length<l)});return{spec:{...t,sorts:[...c.values()]},presentation:n,view:{rows:u((r==null?void 0:r.rows)??a.rows,t.rows.length),columns:u((r==null?void 0:r.columns)??a.columns,t.columns.length),sorts:(r==null?void 0:r.sorts)??[]}}}exports.createMatrixAuthoringDraft=m;exports.createMatrixConfig=x;exports.getMatrixLevelLabel=d;exports.getMatrixMeasureLabel=p;exports.mergeMatrixSorts=f;exports.resolveMatrixDefinition=g;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";const y=require("./validators-DFeDcdpA.cjs");require("./matrix-operation-contract-0RxoU_M3.cjs");const l=require("./semantic-format-Bd7HmLG_.cjs"),b=require("./raw-temporal-CYdOOyR5.cjs"),p=require("./numeric-presentation-mY6wJMdB.cjs"),T=require("./constants-B00YUv89.cjs"),v=require("./temporal-bucket-4YEPEKlJ.cjs");function d(t,e){const n=l.toDate(t),s=l.toDate(e),r=n.getTime()-s.getTime();return r<0?-1:r>0?1:r}function R(t){return l.constructFrom(t,Date.now())}function z(t,e){const n=l.toDate(t),s=l.toDate(e),r=n.getFullYear()-s.getFullYear(),o=n.getMonth()-s.getMonth();return r*12+o}function O(t){return e=>{const s=(t?Math[t]:Math.trunc)(e);return s===0?0:s}}function S(t,e){return+l.toDate(t)-+l.toDate(e)}function Z(t){const e=l.toDate(t);return e.setHours(23,59,59,999),e}function k(t){const e=l.toDate(t),n=e.getMonth();return e.setFullYear(e.getFullYear(),n+1,0),e.setHours(23,59,59,999),e}function V(t){const e=l.toDate(t);return+Z(e)==+k(e)}function X(t,e){const n=l.toDate(t),s=l.toDate(e),r=d(n,s),o=Math.abs(z(n,s));let f;if(o<1)f=0;else{n.getMonth()===1&&n.getDate()>27&&n.setDate(30),n.setMonth(n.getMonth()-r*o);let a=d(n,s)===-r;V(l.toDate(t))&&o===1&&d(t,s)===1&&(a=!1),f=r*(o-Number(a))}return f===0?0:f}function q(t,e,n){const s=S(t,e)/1e3;return O(n==null?void 0:n.roundingMethod)(s)}function P(t,e,n){const s=l.getDefaultOptions(),r=(n==null?void 0:n.locale)??s.locale??l.enUS,o=2520,f=d(t,e);if(isNaN(f))throw new RangeError("Invalid time value");const a=Object.assign({},n,{addSuffix:n==null?void 0:n.addSuffix,comparison:f});let D,i;f>0?(D=l.toDate(e),i=l.toDate(t)):(D=l.toDate(t),i=l.toDate(e));const m=q(i,D),c=(l.getTimezoneOffsetInMilliseconds(i)-l.getTimezoneOffsetInMilliseconds(D))/1e3,u=Math.round((m-c)/60);let h;if(u<2)return n!=null&&n.includeSeconds?m<5?r.formatDistance("lessThanXSeconds",5,a):m<10?r.formatDistance("lessThanXSeconds",10,a):m<20?r.formatDistance("lessThanXSeconds",20,a):m<40?r.formatDistance("halfAMinute",0,a):m<60?r.formatDistance("lessThanXMinutes",1,a):r.formatDistance("xMinutes",1,a):u===0?r.formatDistance("lessThanXMinutes",1,a):r.formatDistance("xMinutes",u,a);if(u<45)return r.formatDistance("xMinutes",u,a);if(u<90)return r.formatDistance("aboutXHours",1,a);if(u<T.minutesInDay){const M=Math.round(u/60);return r.formatDistance("aboutXHours",M,a)}else{if(u<o)return r.formatDistance("xDays",1,a);if(u<T.minutesInMonth){const M=Math.round(u/T.minutesInDay);return r.formatDistance("xDays",M,a)}else if(u<T.minutesInMonth*2)return h=Math.round(u/T.minutesInMonth),r.formatDistance("aboutXMonths",h,a)}if(h=X(i,D),h<12){const M=Math.round(u/T.minutesInMonth);return r.formatDistance("xMonths",M,a)}else{const M=h%12,g=Math.trunc(h/12);return M<3?r.formatDistance("aboutXYears",g,a):M<9?r.formatDistance("overXYears",g,a):r.formatDistance("almostXYears",g+1,a)}}function L(t,e){return P(t,R(t),e)}function E(t,e){return t&&t!=="auto"?t:e}function $(t,e=new Date){try{const n={timeZone:t,timeZoneName:"short"},r=new Intl.DateTimeFormat("en-US",n).formatToParts(e).find(o=>o.type==="timeZoneName");return(r==null?void 0:r.value)||t}catch{return t}}function Y(t){try{const e={timeZone:t,timeZoneName:"long"},s=new Intl.DateTimeFormat("en-US",e).formatToParts(new Date).find(r=>r.type==="timeZoneName");return(s==null?void 0:s.value)||t}catch{return t}}function x(t,e="auto"){if(!t)return new Date(NaN);const n=t.endsWith("Z"),s=/[+-]\d{2}:?\d{2}$/.test(t),r=/\([A-Z]{3,4}\)$/.test(t);if(e==="auto")return n||s||r?new Date(t):new Date(t+"Z");if(e==="local"){if(n||s){const o=t.replace(/Z$/,"").replace(/[+-]\d{2}:?\d{2}$/,"");return new Date(o)}return new Date(t)}else return e==="UTC"?n?new Date(t):s?new Date(t):new Date(t+"Z"):n||s||r?new Date(t):b.fromZonedTime(t,e)}const B="MM/dd/yyyy",N=(t,e,n,s="auto")=>{if(!t)return"";try{const r=x(t,s);if(isNaN(r.getTime()))return t;const f=(e&&e.trim()?e:B).replace(/LLLL/g,"MMMM").replace(/LLL/g,"MMM");return n&&n!=="auto"?l.formatInTimeZone(r,n,f):l.format(r,f)}catch(r){return console.error("Date formatting error:",r),t}},I=(t,e="auto")=>{if(!t)return"";try{const n=x(t,e);return isNaN(n.getTime())?t:L(n,{addSuffix:!0})}catch(n){return console.error("Relative time formatting error:",n),t}};function j(t,e,n,s){const r=t instanceof Date?t.toISOString():String(t),o=(s==null?void 0:s.browserTimezone)||n,f=(s==null?void 0:s.isSqlCard)??!1;if(e!=null&&e.useRelativeTime)return I(r,(e==null?void 0:e.sourceTimezone)||"auto");const a=e!=null&&e.useCustomFormat&&(e!=null&&e.customFormat)?e.customFormat:(e==null?void 0:e.format)||"MM/dd/yyyy";return N(r,a,e!=null&&e.timezone&&(e==null?void 0:e.timezone)!=="auto"?e.timezone:f?o:n,(e==null?void 0:e.sourceTimezone)||"auto")}function w(t,e,n){var f,a;if(t==null)return t===null?((f=n.absence)==null?void 0:f.nullText)??"":((a=n.absence)==null?void 0:a.emptyText)??"";const s=y.isExactNumericValue(t)?t:void 0,r=s?s.value:t,o=s??(typeof t=="number"?t:void 0);if(!n.useFormattedValues||!e)return String(r);switch(e.type){case"number":return o!==void 0?p.formatNumberWithColumnSettings(o,e.numberFormat,n.locale):String(r);case"date":return j(r,e.dateFormat,n.timezone,{browserTimezone:n.browserTimezone,isSqlCard:n.isSqlCard});case"progress":return o!==void 0?`${r}%`:String(r);case"badge":case"link":case"text":case"none":default:return String(r)}}function H(t,e){return e.visibleColumns.map(n=>{const s=t[n],r=e.columnSettings[n];return w(s,r,{useFormattedValues:e.useFormattedValues,timezone:e.timezone,locale:e.locale})})}function _(t,e){var r;const n=t[t.length-1];if(!n)return"";if(n.member.kind==="others")return"Others";const s=n.member.value;return s===null?"(Blank)":((r=e==null?void 0:e.get(n.levelId))==null?void 0:r(s))??(typeof s=="object"?s.value:String(s))}function A(t,e,n){return t==="grand_total"?n??"Grand Total":t==="subtotal"?(n==null?void 0:n.split(y.MATRIX_TOTAL_MEMBER_PLACEHOLDER).join(e))??`${e} Total`:e}function U(t,e,n,s){var f;const r=t[t.length-1],o=e==="grand_total"?n.grand.label:r?(f=n.levels[r.levelId])==null?void 0:f.label:void 0;return A(e,_(t,s),o)}function W(t,e,n){return t.kind==="value"?(e==null?void 0:e(t.value))??"":t.kind==="null"?n.nullText:n.emptyText}function K(t){const{path:e,previousPath:n,role:s,repeatLabels:r,levelCount:o}=t;return Array.from({length:o},(f,a)=>{const D=e.slice(0,a+1),i=s==="grand_total"?a===0:s==="subtotal"&&a===e.length-1,m=n&&n.length>a&&y.matrixPathKey(n.slice(0,a+1))===y.matrixPathKey(D);return{path:D,total:i,visible:i||e.length>a&&(r||!m||a===e.length-1)}})}function C(t,e){return l.fromSemanticFormat(t??e,{preserveOmittedProperties:!0,numericInput:"canonical"})}function F(t,e,n){const s=new Map,r=(o,f)=>{const a=(f==="levels"?e.levelFormats:e.measureFormats)[o.id],D=o.semanticFormat,i=C(a,D);f==="measures"&&s.set(o.id,{isNumeric:y.normalizeAnalyticsCatalogDataType(o.column.dataType)==="number",hasTextAffixes:!!i&&!!("prefix"in i&&i.prefix||"suffix"in i&&i.suffix)});const m=c=>w(c,void 0,{useFormattedValues:!0,timezone:n.calendar.tz,locale:n.valueFormat.locale,absence:e.absence});if(o.column.temporalBucket){const c=o.column.temporalBucket,u=v.resolveTemporalBucketPresentation({metadata:c,cardFormat:(a==null?void 0:a.type)==="temporal_bucket"?a:void 0,semanticFormat:(D==null?void 0:D.type)==="temporal_bucket"?{granularity:c.granularity,format:D}:void 0,locale:n.valueFormat.locale,styles:{dateStyle:n.valueFormat.dateStyle,dateTime:n.valueFormat.dateTime}});return h=>typeof h=="string"?v.formatTemporalBucket({value:h,metadata:c,format:u.format}):m(h)}if(o.column.rawTemporal){const c=b.prepareRawTemporalFormatter({metadata:o.column.rawTemporal,format:b.resolveRawTemporalFormat({format:(i==null?void 0:i.type)==="date"?{type:"raw_temporal",timezone:i.timezone,sourceTimezone:i.sourceTimezone,presentation:i.pattern?{mode:"pattern",dialect:"semaphor_tokens",pattern:i.pattern}:{mode:"auto"}}:void 0,preferences:n.valueFormat,calendar:n.calendar})});return u=>{if(typeof u!="string")return m(u);const h=c(u);return h.ok?h.text:m(u)}}if(b.isNumericCanonicalFormat(i)){const c=p.resolveNumericPresentation(i,n.valueFormat);return u=>typeof u=="number"||typeof u=="object"&&u!==null?p.formatNumericCanonical(u,c):m(u)}return(i==null?void 0:i.type)==="duration"?c=>typeof c=="number"||typeof c=="string"||typeof c=="object"&&c!==null?p.formatDuration(typeof c=="object"?c.value:c,i):m(c):(i==null?void 0:i.type)==="string"?c=>c===null?m(c):`${i.prefix??""}${m(c)}${i.suffix??""}`:m};return{levels:new Map(t.levels.map(o=>[o.id,r(o,"levels")])),measures:new Map(t.measures.map(o=>[o.id,r(o,"measures")])),measureSemantics:s}}exports.formatCellValue=w;exports.formatDate=N;exports.formatDistanceToNow=L;exports.formatRelativeTime=I;exports.formatRowForExport=H;exports.getTimezoneAbbreviation=$;exports.getTimezoneName=Y;exports.matrixAxisLabel=U;exports.matrixCellText=W;exports.matrixLevelLabels=K;exports.matrixMemberLabel=_;exports.matrixTotalLabel=A;exports.parseWithSourceTimezone=x;exports.prepareMatrixFormatting=F;exports.resolveMatrixValueFormat=C;exports.resolveTimezone=E;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";const f=require("./validators-DFeDcdpA.cjs"),m=["=","!=",">","<",">=","<=","like","not like","between","not between","in","not in","is null","is not null"],b=new Set(["string","number","date","boolean"]);function S(t){return typeof t=="string"&&m.includes(t)}function E(t,e){switch(t){case"is null":case"is not null":return e.length===0;case"between":case"not between":return e.length===2;case"in":case"not in":return e.length>=1;default:return e.length===1}}function g(t){if(!t||typeof t!="object"||Array.isArray(t))return;const e=t,n={};for(const r of N)e[r]!==void 0&&(n[r]=e[r]);return n}const N=["operation","values","valueType","temporalBucket","relativeMeta","temporalPrecision"];function h(t){const e=g(t);if(!e)return;const{operation:n,values:r}=e;if(!S(n)||!Array.isArray(r)||!E(n,r))return;const o=typeof e.valueType=="string"&&b.has(e.valueType)?e.valueType:void 0;return{operation:n,values:r,...o?{valueType:o}:{},...e.temporalBucket!==void 0?{temporalBucket:e.temporalBucket}:{},...e.relativeMeta!==void 0?{relativeMeta:e.relativeMeta}:{},...e.temporalPrecision!==void 0?{temporalPrecision:e.temporalPrecision}:{}}}function A(t){const e=h(t);if(!e)throw new Error(`Filter operation "${String(t.operation)}" cannot be expressed as predicate semantics.`);return e}function C(t){return t.operation==="is null"||t.operation==="is not null"}function c(t){var e;return JSON.stringify([((e=t.field)==null?void 0:e.id)??"",t.operator,t.value??null,t.temporalBucket??null])}function I(t){return JSON.stringify(t.map(c).sort())}function v(t){const e=new Map;for(const n of t)for(const r of n.tuples){const o=r.conditions.filter(l=>{var i;return(i=l.field)==null?void 0:i.id});if(o.length===0)continue;let a=e.get(n.sourceCardId);a||(a=new Map,e.set(n.sourceCardId,a));const s=[...o].sort((l,i)=>c(l).localeCompare(c(i)));a.set(I(s),s)}return[...e.entries()].sort(([n],[r])=>n.localeCompare(r)).map(([n,r])=>({sourceCardId:n,tuples:[...r.entries()].sort(([o],[a])=>o.localeCompare(a)).map(([,o])=>({conditions:o}))}))}function T(t){const e=v(t);if(e.length!==0)return{id:"selection",logicalOperator:"AND",negate:!1,conditions:[],groups:e.map(n=>{const r=`selection:${n.sourceCardId}`;return{id:r,logicalOperator:"OR",negate:!1,conditions:[],groups:n.tuples.map((o,a)=>{const s=`${r}:${a}`;return{id:s,logicalOperator:"AND",negate:!1,conditions:o.conditions.map((l,i)=>({...l,id:`${s}:${i}`})),groups:[]}})}})}}function w(t){return JSON.stringify(v(t).map(e=>[e.sourceCardId,e.tuples.map(n=>n.conditions.map(c))]))}function y(t,e){var r;if(e===null)return!0;if(e.overrides.length===0)return t.length<=e.depth;const n=f.matrixPathKey(t);return((r=e.overrides.find(o=>o.path.length===t.length&&f.matrixPathKey(o.path)===n))==null?void 0:r.expanded)??t.length<=e.depth}function k(t){var p;const{path:e,levelCount:n,expansion:r,total:o,axis:a}=t,s=e.length>=n||((p=e[e.length-1])==null?void 0:p.member.kind)==="others",l=!s&&!t.childrenEmpty,i=l&&y(e,r),d=a==="rows"&&t.rowLayout!=="tabular",P=i&&!!t.skipRedundant&&!!t.singleChild,u=!!(o!=null&&o.visible)&&!P;return{expandable:l,expanded:i,memberVisible:d||!i,valueVisible:s||u&&(!i||o.position==="before"),subtotalBefore:!d&&i&&u&&o.position==="before",subtotalAfter:i&&u&&o.position==="after"}}exports.NATIVE_PREDICATE_OPERATIONS=m;exports.compileSelectionFilterGroup=T;exports.isMatrixPathExpanded=y;exports.isNullCheckPredicate=C;exports.parseNativePredicateSemantics=h;exports.projectNativePredicateSemantics=g;exports.resolveMatrixMemberPresentation=k;exports.selectionFilterGroupKey=w;exports.toNativePredicateSemantics=A;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";const r=require("zod"),o=require("./validators-DFeDcdpA.cjs"),R={answerSummary:"string",responseDetail:"responseDetail",mode:"string",comparisonKind:"string",executionResult:"executionResult",compiledQuery:"unknown",data:"unknown",resultSets:"record",analysisWarnings:"unknownArray",columns:"unknownArray",records:"recordArray",rowCount:"number",rowLimitExceeded:"boolean",output:"string",querySpec:"unknown",metadata:"record",validation:"validationResult",coverage:"coverage",diagnosticFeedback:"diagnosticFeedback",missingFields:"stringArray",warnings:"unknownArray",comparison:"unknown",population:"population",comparisons:"recordArray",fieldsUsed:"compactExecutionFieldArray",primary:"recordArray",contributors:"recordArray",segments:"recordArray",periodChanges:"recordArray",changes:"recordArray",largestNegativeChanges:"recordArray",largestPositiveChanges:"recordArray",drivers:"recordArray",absoluteDeltaDrivers:"recordArray",largestNegativeDrivers:"recordArray",largestPositiveDrivers:"recordArray",periodRows:"recordArray",sql:"unknown",omitted:"stringArray"},Pe=Object.freeze({coordinates:2e4}),v=r.z.string().uuid(),p=r.z.string().min(1),Be=r.z.number().int().positive().max(Number.MAX_SAFE_INTEGER);function m(s,t,e){s.addIssue({code:"custom",path:t,message:e})}function h(s,t,e){new Set(s).size!==s.length&&m(t,e,"Duplicate identity.")}const oe=r.z.object({id:p,axis:o.matrixAxisSchema,parent:o.matrixPathSchema,position:r.z.union([r.z.object({kind:r.z.literal("first")}).strict(),r.z.object({kind:r.z.enum(["after","before"]),cursor:p}).strict()]),size:Be}).strict(),T=r.z.object({paths:r.z.array(o.matrixPathSchema).readonly(),pageIds:r.z.array(p).readonly()}).strict(),ue=r.z.object({id:p,rows:T,columns:T,measureIds:r.z.array(v).min(1).readonly()}).strict(),L=r.z.object({pages:r.z.array(oe).readonly(),blocks:r.z.array(ue).readonly()}).strict().superRefine((s,t)=>{!s.pages.length&&!s.blocks.length&&m(t,[],"Request at least one page or block."),h([...s.pages,...s.blocks].map(e=>e.id),t,[]);for(const e of s.blocks){h(e.measureIds,t,["blocks",e.id,"measureIds"]);for(const i of["rows","columns"])for(const n of e[i].pageIds)s.pages.some(a=>a.id===n&&a.axis===i)||m(t,["blocks",e.id,i],"Page reference must name a page on this axis in this operation.")}}),Me=r.z.object({spec:o.matrixSpecSchema,request:L}).strict().superRefine(({spec:s,request:t},e)=>{for(const i of t.pages)o.checkMatrixPath(s,i.axis,i.parent,e,["pages",i.id],!0),i.parent.length>=s[i.axis].length&&m(e,["pages",i.id],"Cannot request children of a leaf or empty axis.");for(const i of t.blocks){i.measureIds.some(n=>!s.measures.some(a=>a.id===n))&&m(e,["blocks",i.id],"Unknown block measure.");for(const n of["rows","columns"])for(const a of i[n].paths)o.checkMatrixPath(s,n,a,e,["blocks",i.id,n])}}),ce=r.z.object({requestId:p,axis:o.matrixAxisSchema,parent:o.matrixPathSchema,members:r.z.array(r.z.object({path:o.matrixPathSchema}).strict()).readonly(),before:p.nullable(),after:p.nullable(),exactCount:r.z.number().int().nonnegative().max(Number.MAX_SAFE_INTEGER).optional()}).strict().superRefine((s,t)=>{s.parent.some(i=>i.member.kind==="others")&&m(t,["parent"],"Others has no children.");const e=s.members.filter(({path:i})=>{var n;return((n=i[i.length-1])==null?void 0:n.member.kind)==="others"});e.length>1&&m(t,["members"],"A page may contain Others only once."),e.length&&(s.members[s.members.length-1]!==e[0]&&m(t,["members"],"Others must be the last page member."),s.after!==null&&m(t,["after"],"Others must end the branch.")),new Set(s.members.map(i=>{var n;return(n=i.path[i.path.length-1])==null?void 0:n.levelId})).size>1&&m(t,["members"],"One page must contain one child level."),h(s.members.map(i=>o.matrixPathKey(i.path)),t,["members"]);for(const i of s.members)(i.path.length!==s.parent.length+1||o.matrixPathKey(i.path.slice(0,-1))!==o.matrixPathKey(s.parent))&&m(t,["members"],"Page members must be immediate children.")}),le=r.z.object({requestId:p,coverage:r.z.object({rowPaths:r.z.array(o.matrixPathSchema).readonly(),columnPaths:r.z.array(o.matrixPathSchema).readonly(),measureIds:r.z.array(v).readonly()}).strict(),cells:r.z.array(o.matrixCoordinateSchema.extend({value:o.semaphorScalarValueSchema}).strict()).readonly()}).strict().superRefine((s,t)=>{const e=s.coverage.rowPaths.map(o.matrixPathKey),i=s.coverage.columnPaths.map(o.matrixPathKey);h(e,t,["coverage","rowPaths"]),h(i,t,["coverage","columnPaths"]),h(s.coverage.measureIds,t,["coverage","measureIds"]);const n=new Set(e),a=new Set(i),l=new Set(s.coverage.measureIds);h(s.cells.map(c=>JSON.stringify([o.matrixPathKey(c.rowPath),o.matrixPathKey(c.columnPath),c.measureId])),t,["cells"]);for(const c of s.cells)(!n.has(o.matrixPathKey(c.rowPath))||!a.has(o.matrixPathKey(c.columnPath))||!l.has(c.measureId))&&m(t,["cells"],"Cell is outside certified coverage.")}),P=r.z.object({id:v,column:o.semaphorResultColumnSchema,nativeDataType:p,semanticFormat:o.semaphorValueFormatSchema.optional()}).strict(),de=r.z.object({levels:r.z.array(P).readonly(),measures:r.z.array(P).readonly()}).strict(),x=r.z.object({code:r.z.enum(["invalid_request","unsupported_capability","stale_cursor","forbidden","budget_exceeded","source_truncated","execution_failed","cancelled"]),message:p,detail:p.optional(),retryable:r.z.boolean(),scope:r.z.union([r.z.object({kind:r.z.literal("operation")}).strict(),r.z.object({kind:r.z.enum(["page","block"]),requestId:p}).strict()])}).strict(),me=r.z.object({dialect:r.z.enum(["postgres","clickhouse","duckdb"]),aggregates:r.z.array(o.matrixAggregateSchema).readonly()}).strict(),U=r.z.object({queryIdentity:p,descriptors:de,capabilities:me,pages:r.z.array(ce).readonly(),blocks:r.z.array(le).readonly(),failures:r.z.array(x).readonly()}).strict().superRefine((s,t)=>{const e=new Set(s.descriptors.levels.map(a=>a.id)),i=new Set(s.descriptors.measures.map(a=>a.id)),n=s.pages.flatMap(a=>[a.parent,...a.members.map(l=>l.path)]);for(const a of s.blocks)n.push(...a.coverage.rowPaths,...a.coverage.columnPaths),a.coverage.measureIds.some(l=>!i.has(l))&&m(t,["blocks",a.requestId],"Coverage references an unknown measure descriptor.");n.some(a=>a.some(l=>!e.has(l.levelId)))&&m(t,["descriptors"],"Acquired paths require level descriptors."),h([...s.descriptors.levels,...s.descriptors.measures].map(a=>a.id),t,["descriptors"]),h([...s.pages,...s.blocks].map(a=>a.requestId),t,[]),h(s.failures.map(a=>a.scope.kind==="operation"?"operation":a.scope.requestId),t,["failures"]);for(const a of s.failures)if(a.scope.kind==="operation")m(t,["failures"],"Operation failure cannot accompany acquired data.");else{const l=a.scope.requestId;[...s.pages,...s.blocks].some(c=>c.requestId===l)&&m(t,["failures"],"A requested unit cannot both succeed and fail.")}}),De=r.z.union([r.z.object({status:r.z.enum(["success","partial"]),window:U}).strict(),r.z.object({status:r.z.literal("failed"),failure:x}).strict()]).superRefine((s,t)=>{if(s.status==="failed")return;const{window:e}=s;!e.pages.length&&!e.blocks.length&&m(t,["window"],"A window outcome requires successful acquired work."),s.status==="success"!=(e.failures.length===0)&&m(t,["status"],"Status must match failure coverage.")}),G=r.z.object({kind:r.z.literal("matrix"),window:U}).strict(),pe=r.z.enum(["member","subtotal","grand_total"]),fe=r.z.discriminatedUnion("kind",[r.z.object({kind:r.z.literal("hierarchy"),label:r.z.string()}).strict(),r.z.object({kind:r.z.literal("level"),levelId:v,label:r.z.string()}).strict(),r.z.object({kind:r.z.literal("measure"),measureId:v,columnPath:o.matrixPathSchema,role:pe,label:r.z.string()}).strict()]),he=r.z.object({columns:r.z.array(fe).readonly(),descriptors:de}).strict(),B=r.z.union([r.z.object({kind:r.z.literal("value"),value:o.semaphorScalarValueSchema.refine(s=>s!==null)}).strict(),r.z.object({kind:r.z.enum(["null","empty"])}).strict()]),ye=r.z.discriminatedUnion("kind",[r.z.object({kind:r.z.literal("layout"),rowPath:o.matrixPathSchema,role:pe,values:r.z.array(B).readonly()}).strict(),r.z.object({kind:r.z.literal("flat"),rowPath:o.matrixPathSchema,columnPath:o.matrixPathSchema,values:r.z.array(B).readonly()}).strict()]),Ve=r.z.discriminatedUnion("kind",[r.z.object({kind:r.z.literal("layout"),layout:he,next:p}).strict(),r.z.object({kind:r.z.literal("rows"),rows:r.z.array(ye).readonly(),next:p.nullable()}).strict()]),Q=r.z.object({intent:o.matrixAnalyticalIntentSchema,matrixWindowRequest:L}).strict(),w="semaphor-data-app-codegen-summary/v1",Le="semaphor-data-app-codegen-summary-validator/v2",Ue=new Set(["metric","records","matrix","analysis","sql_fallback"]),Ge=new Set(["semaphor.metric","semaphor.records","semaphor.matrix","semaphor.analysis","semaphor.sql"]),Qe=new Set(["SUM","COUNT","AVG","MIN","MAX","MEDIAN","DISTINCT"]),We=new Set(["absolute_delta","largest_negative","largest_positive","positive_and_negative","all"]),ge=new Set(["source","id","label","measures","primaryMeasure","dateField","timeGrain","dimensions","comparison","orderBy","filters","relationshipHint","limit","derivedFields"]),He=new Set([...ge,"analysis","timeWindow","filters","driverMode","includePopulation","calendarContext","chartTitle","chartType"]),Ye=new Set(["source","id","label","fields","dateField","timeGrain","timeWindow","filters","orderBy","relationshipHint","limit","pagination","totals","derivedFields"]),Je=new Set(["source","id","label","sql","defaultParameters","pythonCode","fields","limit","pagination","rationale"]),Ze=new Set(["kpi","line_chart","bar_chart","stacked_bar_chart","pie_chart","donut_chart","area_chart","table","matrix","narrative","text_block","custom"]),Xe=new Set(["missing_measure","missing_dimension","missing_date","missing_relationship","missing_semantic_role","missing_current_app_state","raw_identifier_filter_options","unsupported_change_intent","ambiguous_field_grounding","bounded_intent_unavailable","invalid_bounded_intent_output","latest_snapshot_selector_not_modeled","unsupported_grain","requires_sql_escape_hatch","unsupported_sdk_capability"]);function et(s){return W(s).ok}function W(s){const t=[];if(!s||typeof s!="object")return{ok:!1,issues:["Summary must be an object."]};const e=s;return e.schemaVersion!==w&&t.push(`schemaVersion must be ${w}.`),(typeof e.title!="string"||!e.title.trim())&&t.push("title is required."),Array.isArray(e.sources)||t.push("sources must be an array."),Array.isArray(e.inputs)||t.push("inputs must be an array."),Array.isArray(e.views)||t.push("views must be an array."),Array.isArray(e.filterContracts)||t.push("filterContracts must be an array."),(!e.implementationChecklist||typeof e.implementationChecklist!="object")&&t.push("implementationChecklist must be an object."),e.implementationChecklist&&typeof e.implementationChecklist=="object"&&t.push(...st(e.implementationChecklist)),Array.isArray(e.sources)&&e.sources.forEach((i,n)=>{t.push(...C(i,`sources.${n}`))}),Array.isArray(e.inputs)&&e.inputs.forEach((i,n)=>{t.push(...it(i,`inputs.${n}`))}),Array.isArray(e.views)&&e.views.forEach((i,n)=>{t.push(...rt(i,`views.${n}`))}),Array.isArray(e.filterContracts)&&e.filterContracts.forEach((i,n)=>{t.push(...ft(i,`filterContracts.${n}`))}),e.unsupportedInsights!==void 0&&(Array.isArray(e.unsupportedInsights)?e.unsupportedInsights.forEach((i,n)=>{t.push(...xt(i,`unsupportedInsights.${n}`))}):t.push("unsupportedInsights must be an array.")),t.push(...tt(e)),{ok:t.length===0,issues:t}}function tt(s){const t=Array.isArray(s.unsupportedInsights)&&s.unsupportedInsights.some(l=>{var c;return ie.has((c=u(l))==null?void 0:c.reason)}),e=Array.isArray(s.views)&&s.views.some(l=>{var d;const c=u((d=u(l))==null?void 0:d.computation);return(c==null?void 0:c.kind)==="unsupported"&&ie.has(c.reason)});if(!t&&!e)return[];const i=[],n=u(s.validation);(n==null?void 0:n.status)!=="blocked"&&i.push("validation.status must be blocked when semantic model repair gaps are present.");const a=u(s.nextRequiredTool);return(a==null?void 0:a.name)!=="semaphor_propose_semantic_model_change"&&i.push("nextRequiredTool.name must be semaphor_propose_semantic_model_change when semantic model repair gaps are present."),i}const ie=new Set(["missing_relationship","raw_identifier_filter_options"]);function C(s,t){const e=u(s);return e?e.kind==="semantic"?typeof e.domainId=="string"&&e.domainId.trim()&&typeof e.datasetName=="string"&&e.datasetName.trim()?[]:[`${t} must include sourceKey or a supported source identity.`]:typeof e.sourceKey=="string"&&e.sourceKey.trim()?[]:e.kind==="physical"&&typeof e.tableName=="string"&&e.tableName.trim()&&typeof e.connectionId=="string"&&e.connectionId.trim()?[]:e.kind==="sql"&&typeof e.connectionId=="string"&&e.connectionId.trim()?[]:[`${t} must include sourceKey or a supported source identity.`]:[`${t} must be an object.`]}function st(s){const t=u(s);if(!t)return["implementationChecklist must be an object."];const e=[],i=["requiredDevtools","requiredInputOptions","filterScopeByInput","bindingsByView","validationCommands","browserSmokeChecks"];for(const a of i)a in t||e.push(`implementationChecklist.${a} is required.`);const n=u(t.requiredDevtools);return n?typeof n.mountRootDevtools!="boolean"&&e.push("implementationChecklist.requiredDevtools.mountRootDevtools must be a boolean."):e.push("implementationChecklist.requiredDevtools must be an object."),Array.isArray(t.requiredInputOptions)||e.push("implementationChecklist.requiredInputOptions must be an array."),Array.isArray(t.filterScopeByInput)||e.push("implementationChecklist.filterScopeByInput must be an array."),u(t.bindingsByView)||e.push("implementationChecklist.bindingsByView must be an object."),y(t.validationCommands)||e.push("implementationChecklist.validationCommands must be an array of strings."),y(t.browserSmokeChecks)||e.push("implementationChecklist.browserSmokeChecks must be an array of strings."),e}function it(s,t){const e=u(s);if(!e)return[`${t} must be an object.`];const i=[];return(typeof e.id!="string"||!e.id.trim())&&i.push(`${t}.id is required.`),e.fieldRef&&i.push(...f(e.fieldRef,`${t}.fieldRef`)),i.push(...Se(e.optionQuery,`${t}.optionQuery`)),y(e.appliesToViewIds)||i.push(`${t}.appliesToViewIds must be an array of strings.`),e.bindings!==void 0&&!Array.isArray(e.bindings)&&i.push(`${t}.bindings must be an array.`),Array.isArray(e.bindings)&&e.bindings.forEach((n,a)=>{const l=u(n);if(!l){i.push(`${t}.bindings.${a} must be an object.`);return}y(l.appliesToViewIds)||i.push(`${t}.bindings.${a}.appliesToViewIds must be an array of strings.`),i.push(...f(l.fieldRef,`${t}.bindings.${a}.fieldRef`))}),i}function rt(s,t){const e=u(s);if(!e)return[`${t} must be an object.`];const i=[];if((typeof e.id!="string"||!e.id.trim())&&i.push(`${t}.id is required.`),e.visualSpec!==void 0&&i.push(...$t(e.visualSpec,`${t}.visualSpec`)),e.computation!==void 0&&i.push(...Rt(e.computation,`${t}.computation`)),vt(e))return i.push(...q(e,`${t}`)),e.fields!==void 0&&(Array.isArray(e.fields)?e.fields.forEach((d,g)=>{i.push(...f(d,`${t}.fields.${g}`))}):i.push(`${t}.fields must be an array.`)),e.queryKind!==void 0&&i.push(`${t}.queryKind is not allowed for non-executable views.`),e.sdkBuilder!==void 0&&i.push(`${t}.sdkBuilder is not allowed for non-executable views.`),e.sdkSpec!==void 0&&i.push(`${t}.sdkSpec is not allowed for non-executable views.`),i;if(!Array.isArray(e.fields))return i.push(`${t}.fields must be an array.`),(e.sdkSpec!==void 0||e.sdkBuilder!==void 0)&&i.push(`${t}.fields must be an array for executable views.`),i.push(...q(e,`${t}`)),i;e.fields.forEach((d,g)=>{i.push(...f(d,`${t}.fields.${g}`))}),z(e.queryKind)||i.push(`${t}.queryKind must be a supported codegen query kind.`),e.sdkBuilder!==void 0&&!ve(e.sdkBuilder)&&i.push(`${t}.sdkBuilder must be a supported SDK builder.`),e.metricBindingKeys!==void 0&&(Array.isArray(e.metricBindingKeys)?e.metricBindingKeys.some(d=>typeof d!="string"||d.trim().length===0)&&i.push(`${t}.metricBindingKeys must be an array of strings.`):i.push(`${t}.metricBindingKeys must be an array of strings.`));const n=u(e.sdkSpec),a=(n==null?void 0:n.builder)==="semaphor.metric";a&&(!Array.isArray(e.metricBindingKeys)||e.metricBindingKeys.length===0)&&i.push(`${t}.metricBindingKeys is required for metric views.`);const l=nt(e);a&&Array.isArray(e.metricBindingKeys)&&l&&JSON.stringify(e.metricBindingKeys)!==JSON.stringify(l)&&i.push(`${t}.metricBindingKeys must match the generated metric field binding keys in order.`);const c=u(e.computation);return(c==null?void 0:c.kind)==="server_query"&&z(e.queryKind)&&z(c.queryKind)&&c.queryKind!==e.queryKind&&i.push(`${t}.computation.queryKind must match queryKind.`),i.push(...ht({value:e.sdkSpec,path:`${t}.sdkSpec`,queryKind:typeof e.queryKind=="string"?e.queryKind:void 0,sdkBuilder:typeof e.sdkBuilder=="string"?e.sdkBuilder:void 0}),...q(e,`${t}`)),i}function nt(s){const t=u(s.sdkSpec);if((t==null?void 0:t.builder)!=="semaphor.metric")return;const e=u(t.spec);if(!e)return;const n=[e.primaryMeasure,...Array.isArray(e.measures)?e.measures:[]].map(at).filter(a=>!!a);return Array.from(new Map(n.map(a=>[a.identity,a.bindingKey])).values())}function at(s){const t=u(s);if(!t||typeof t.name!="string"||!t.name.trim())return;const e=ot(t);return e?{identity:JSON.stringify({source:e,name:t.name,aggregate:be(t)}),bindingKey:ut(t)}:void 0}function ot(s){if(typeof s.sourceKey=="string"&&s.sourceKey.trim())return{sourceKey:s.sourceKey};const t=u(s.source);if(t)return{kind:t.kind,domainId:t.domainId,datasetId:t.datasetId,datasetName:t.datasetName,name:t.name}}function ut(s){return typeof s.sourceKey=="string"&&s.sourceKey.trim()?[s.sourceKey,be(s),s.name].filter(Boolean).join(":"):o.semaphorMetricMeasureBindingKey(s)}function be(s){return o.semaphorMetricAggregate(s)}function q(s,t){var g;const e=u((g=u(s.visualSpec))==null?void 0:g.tableBehavior),i=u(s.sdkSpec),n=u(i==null?void 0:i.spec),a=typeof(i==null?void 0:i.builder)=="string"?i.builder:void 0,l=a==="semaphor.records"?u(n==null?void 0:n.totals):void 0,c=[];if(!e)return l&&c.push(`${t}.sdkSpec.spec.totals is only allowed when tableBehavior.totals.mode is server.`),c;const d=u(e.totals);return d?(d.mode==="server"&&(a!=="semaphor.records"&&c.push(`${t}.visualSpec.tableBehavior.totals.mode server is only supported for semaphor.records views.`),!l||l.mode!=="server"?c.push(`${t}.sdkSpec.spec.totals.mode must be server when tableBehavior.totals.mode is server.`):c.push(...ct({left:d.measures,right:l.measures,leftPath:`${t}.visualSpec.tableBehavior.totals.measures`,rightPath:`${t}.sdkSpec.spec.totals.measures`}))),d.mode!=="server"&&l&&c.push(`${t}.sdkSpec.spec.totals is only allowed when tableBehavior.totals.mode is server.`),a==="semaphor.sql"&&d.mode!=="none"&&c.push(`${t}.visualSpec.tableBehavior.totals.mode must be none for semaphor.sql views.`),a==="semaphor.sql"&&u(n==null?void 0:n.totals)&&c.push(`${t}.sdkSpec.spec.totals is not supported for semaphor.sql.`),c):(l&&c.push(`${t}.sdkSpec.spec.totals is only allowed when tableBehavior.totals.mode is server.`),c)}function ct({left:s,right:t,leftPath:e,rightPath:i}){if(!Array.isArray(s)||!Array.isArray(t))return[`${i} must match ${e}.`];const n=[];return s.length!==t.length?(n.push(`${i} must match ${e}.`),n):(s.forEach((a,l)=>{lt(u(a),u(t[l]))||n.push(`${i}.${l} must match ${e}.${l}.`)}),n)}function lt(s,t){return!s||!t?!1:s.name===t.name&&(s.role||"measure")===(t.role||"measure")&&re(s)===re(t)&&dt(s,t)}function re(s){return typeof s.aggregate=="string"?s.aggregate.toUpperCase():"SUM"}function dt(s,t){const e=u(s.source),i=u(t.source);if(mt(e,i))return!1;const n=ne(s),a=ne(t);if(n.size>0||a.size>0){for(const l of n)if(a.has(l))return!0;return!1}return!e||!i||e.kind!==i.kind?!1:e.kind==="semantic"?e.domainId===i.domainId&&e.datasetName===i.datasetName&&(e.datasetId===void 0||i.datasetId===void 0||e.datasetId===i.datasetId):e.kind==="physical"?e.connectionId===i.connectionId&&e.tableName===i.tableName:e.kind==="sql"?e.connectionId===i.connectionId:!1}function mt(s,t){if(!s||!t||s.kind!=="semantic"||t.kind!=="semantic")return!1;const e=typeof s.datasetId=="string"?s.datasetId.trim():"",i=typeof t.datasetId=="string"?t.datasetId.trim():"";return!!(e&&i&&e!==i)}function ne(s){const t=typeof s.sourceKey=="string"?s.sourceKey.trim():"";return t?new Set([t]):pt(u(s.source))}function pt(s){const t=new Set;if(!s)return t;const e=typeof s.sourceKey=="string"?s.sourceKey.trim():"";if(e&&t.add(e),s.kind==="semantic"){const i=typeof s.domainId=="string"?s.domainId:"",n=typeof s.datasetName=="string"?s.datasetName:"",a=typeof s.datasetId=="string"?s.datasetId:"";i&&a&&t.add(`semantic:${i}:datasetId:${a}`),i&&n&&t.add(`semantic:${i}:datasetName:${n}`)}if(s.kind==="physical"){const i=typeof s.connectionId=="string"?s.connectionId:"",n=typeof s.tableName=="string"?s.tableName:"",a=typeof s.databaseName=="string"?s.databaseName:"",l=typeof s.schemaName=="string"?s.schemaName:"";i&&n&&(t.add(["physical",i,a,l,n].join(":")),t.add(`physical:${i}:${n}`))}if(s.kind==="sql"){const i=typeof s.connectionId=="string"?s.connectionId:"",n=typeof s.dialect=="string"?s.dialect:"",a=typeof s.label=="string"?s.label:"";i&&(t.add(["sql",i,n,a].join(":")),t.add(`sql:${i}`))}return t}function ft(s,t){const e=u(s);if(!e)return[`${t} must be an object.`];const i=[];if(e.fieldRef&&i.push(...f(e.fieldRef,`${t}.fieldRef`)),(typeof e.inputId!="string"||!e.inputId.trim())&&i.push(`${t}.inputId is required.`),i.push(...Se(e.optionQuery,`${t}.optionQuery`)),y(e.appliesToViewIds)||i.push(`${t}.appliesToViewIds must be an array of strings.`),y(e.notAppliedToViewIds)||i.push(`${t}.notAppliedToViewIds must be an array of strings.`),!Array.isArray(e.bindings))i.push(`${t}.bindings must be an array.`);else{const n=y(e.appliesToViewIds)?new Set(e.appliesToViewIds):void 0,a=y(e.notAppliedToViewIds)?new Set(e.notAppliedToViewIds):void 0;e.bindings.forEach((l,c)=>{const d=u(l);if(!d){i.push(`${t}.bindings.${c} must be an object.`);return}typeof d.viewId!="string"||!d.viewId?i.push(`${t}.bindings.${c}.viewId is required.`):(n&&!n.has(d.viewId)&&i.push(`${t}.bindings.${c}.viewId must be included in appliesToViewIds.`),a!=null&&a.has(d.viewId)&&i.push(`${t}.bindings.${c}.viewId must not be listed in notAppliedToViewIds.`)),i.push(...f(d.fieldRef,`${t}.bindings.${c}.fieldRef`))})}return i}function Se(s,t){if(s===void 0)return[];const e=u(s);if(!e)return[`${t} must be an object.`];const i=[...b(e.valueFieldRef,`${t}.valueFieldRef`),...b(e.labelFieldRef,`${t}.labelFieldRef`),...b(e.filterFieldRef,`${t}.filterFieldRef`)];if(e.builder!=="semaphor.inputOptions"&&i.push(`${t}.builder must be semaphor.inputOptions.`),typeof e.sourceKey!="string"&&e.source===void 0&&i.push(`${t} must include source or sourceKey.`),e.source!==void 0){const n=u(e.source);!n||n.kind!=="semantic"&&n.kind!=="physical"?i.push(`${t}.source.kind must be semantic or physical.`):i.push(...C(e.source,`${t}.source`))}return u(e.valueFieldRef)||i.push(`${t}.valueFieldRef is required.`),u(e.labelFieldRef)||i.push(`${t}.labelFieldRef is required.`),e.limit!==void 0&&(typeof e.limit!="number"||!Number.isInteger(e.limit)||e.limit<=0)&&i.push(`${t}.limit must be a positive integer.`),i}function ht(s){var n;const t=u(s.value);if(!t)return[`${s.path} is required for executable views.`];const e=[];if(!ve(t.builder))return e.push(`${s.path}.builder must be a supported SDK builder.`),e;s.sdkBuilder&&t.builder!==s.sdkBuilder&&e.push(`${s.path}.builder must match sdkBuilder.`),s.queryKind&&z(s.queryKind)&&t.builder!==zt(s.queryKind)&&e.push(`${s.path}.builder must match queryKind.`);const i=u(t.spec);if(!i)return e.push(`${s.path}.spec must be an object.`),e;switch(t.builder){case"semaphor.metric":e.push(...I(i,ge,`${s.path}.spec`),...k(i,s.path),...j(i.measures,`${s.path}.spec.measures`),...b(i.primaryMeasure,`${s.path}.spec.primaryMeasure`),...b(i.dateField,`${s.path}.spec.dateField`),...K(i.dimensions,`${s.path}.spec.dimensions`),...F(i.orderBy,`${s.path}.spec.orderBy`),...N(i.filters,`${s.path}.spec.filters`));break;case"semaphor.analysis":e.push(...I(i,He,`${s.path}.spec`),...k(i,s.path),...j(i.measures,`${s.path}.spec.measures`),...b(i.primaryMeasure,`${s.path}.spec.primaryMeasure`),...b(i.dateField,`${s.path}.spec.dateField`),...K(i.dimensions,`${s.path}.spec.dimensions`),...F(i.orderBy,`${s.path}.spec.orderBy`),...N(i.filters,`${s.path}.spec.filters`),...yt(i,`${s.path}.spec`));break;case"semaphor.records":e.push(...I(i,Ye,`${s.path}.spec`),...k(i,s.path),...j(i.fields,`${s.path}.spec.fields`),...b(i.dateField,`${s.path}.spec.dateField`),...F(i.orderBy,`${s.path}.spec.orderBy`),...N(i.filters,`${s.path}.spec.filters`),...gt(i.totals,`${s.path}.spec.totals`));break;case"semaphor.matrix":{const{id:a,label:l,matrixWindowRequest:c,...d}=i;for(const[$,E]of Object.entries({id:a,label:l}))E!==void 0&&(typeof E!="string"||!E.trim())&&e.push(`${s.path}.spec.${$} must be a nonempty string.`);const g=Q.safeParse({intent:{...d,kind:"matrix"},matrixWindowRequest:c});g.success||e.push(...g.error.issues.map($=>`${s.path}.spec.${$.path.join(".")}: ${$.message}`));break}case"semaphor.sql":e.push(...I(i,Je,`${s.path}.spec`),...k(i,s.path)),((n=u(i.source))==null?void 0:n.kind)!=="sql"&&e.push(`${s.path}.spec.source.kind must be sql.`),(typeof i.sql!="string"||!i.sql.trim())&&e.push(`${s.path}.spec.sql is required.`),e.push(...K(i.fields,`${s.path}.spec.fields`));break}return e}function yt(s,t){const e=[];if(s.driverMode!==void 0&&!We.has(s.driverMode)&&e.push(`${t}.driverMode must be a supported analysis driver mode.`),s.includePopulation!==void 0&&typeof s.includePopulation!="boolean"&&e.push(`${t}.includePopulation must be a boolean.`),s.calendarContext!==void 0){const i=u(s.calendarContext);if(!i)e.push(`${t}.calendarContext must be an object.`);else{i.tz!==void 0&&typeof i.tz!="string"&&e.push(`${t}.calendarContext.tz must be a string.`),i.weekStart!==void 0&&(typeof i.weekStart!="number"||!Number.isInteger(i.weekStart)||i.weekStart<0||i.weekStart>6)&&e.push(`${t}.calendarContext.weekStart must be an integer between 0 and 6.`);const n=i.anchor;if(n!==void 0&&n!=="now"){const a=u(n);(!a||typeof a.iso!="string"||!a.iso.trim())&&e.push(`${t}.calendarContext.anchor must be now or { iso }.`)}}}return e}function gt(s,t){if(s===void 0)return[];const e=u(s);if(!e)return[`${t} must be an object.`];const i=[];return e.mode!=="server"&&i.push(`${t}.mode must be server.`),!Array.isArray(e.measures)||e.measures.length===0?i.push(`${t}.measures must include at least one measure.`):e.measures.forEach((n,a)=>{var l;i.push(...$e(n,`${t}.measures.${a}`)),((l=u(n))==null?void 0:l.role)!=="measure"&&i.push(`${t}.measures.${a}.role must be measure.`)}),i}function I(s,t,e){const i=[];return Object.keys(s).forEach(n=>{t.has(n)||i.push(`${e}.${n} is not supported for this SDK builder.`)}),i}function k(s,t){return u(s.source)?C(s.source,`${t}.spec.source`):[`${t}.spec.source must be an object.`]}function j(s,t){const e=St(s,t);return Array.isArray(s)&&s.forEach((i,n)=>{e.push(...f(i,`${t}.${n}`))}),e}function K(s,t){if(s===void 0)return[];if(!Array.isArray(s))return[`${t} must be an array.`];const e=[];return s.forEach((i,n)=>{e.push(...f(i,`${t}.${n}`))}),e}function F(s,t){if(s===void 0)return[];const e=u(s);return e?[...f(e.field,`${t}.field`),...bt(e.direction,`${t}.direction`)]:[`${t} must be an object.`]}function bt(s,t){return s==="asc"||s==="desc"?[]:[`${t} must be asc or desc.`]}function N(s,t){if(s===void 0)return[];if(!Array.isArray(s))return[`${t} must be an array.`];const e=[];return s.forEach((i,n)=>{const a=u(i);if(!a){e.push(`${t}.${n} must be an object.`);return}e.push(...f(a.field,`${t}.${n}.field`))}),e}function St(s,t){return!Array.isArray(s)||s.length===0?[`${t} must be a non-empty array.`]:[]}function zt(s){switch(s){case"metric":return"semaphor.metric";case"records":return"semaphor.records";case"matrix":return"semaphor.matrix";case"analysis":return"semaphor.analysis";case"sql_fallback":return"semaphor.sql"}}function vt(s){const t=u(s.computation),e=u(s.visualSpec);return(t==null?void 0:t.kind)==="presentation_only"||(t==null?void 0:t.kind)==="derived"||(t==null?void 0:t.kind)==="unsupported"||s.visual==="text_block"||(e==null?void 0:e.visualType)==="text_block"}function $t(s,t){const e=u(s);if(!e)return[`${t} must be an object.`];const i=[];return Ze.has(e.visualType)||i.push(`${t}.visualType must be a supported visual type.`),e.limit!==void 0&&(typeof e.limit!="number"||!Number.isInteger(e.limit)||e.limit<=0)&&i.push(`${t}.limit must be a positive integer.`),e.tableBehavior!==void 0&&i.push(...It(e.tableBehavior,`${t}.tableBehavior`)),i}function It(s,t){const e=u(s);if(!e)return[`${t} must be an object.`];const i=[];return e.tableMode!=="bounded"&&e.tableMode!=="server_paginated"&&e.tableMode!=="server_windowed"&&i.push(`${t}.tableMode must be a supported table mode.`),i.push(...kt(e.height,`${t}.height`),...wt(e.pagination,`${t}.pagination`),...At(e.sorting,`${t}.sorting`),..._t(e.totals,`${t}.totals`)),typeof e.serverSideRequired!="boolean"&&i.push(`${t}.serverSideRequired must be a boolean.`),i}function kt(s,t){const e=u(s);if(!e)return[`${t} must be an object.`];const i=[];return(typeof e.maxPx!="number"||!Number.isInteger(e.maxPx)||e.maxPx<=0)&&i.push(`${t}.maxPx must be a positive integer.`),e.scroll!=="vertical"&&e.scroll!=="both"&&i.push(`${t}.scroll must be vertical or both.`),typeof e.stickyHeader!="boolean"&&i.push(`${t}.stickyHeader must be a boolean.`),i}function wt(s,t){const e=u(s);if(!e)return[`${t} must be an object.`];const i=[];return e.mode!=="none"&&e.mode!=="server"&&e.mode!=="client_for_bounded_rows"&&i.push(`${t}.mode must be a supported pagination mode.`),e.pageSize!==void 0&&(typeof e.pageSize!="number"||!Number.isInteger(e.pageSize)||e.pageSize<=0)&&i.push(`${t}.pageSize must be a positive integer.`),e.readsFrom!==void 0&&e.readsFrom!=="result.pagination"&&i.push(`${t}.readsFrom must be result.pagination.`),i}function At(s,t){const e=u(s);if(!e)return[`${t} must be an object.`];const i=[];return e.mode!=="server"&&e.mode!=="client_for_bounded_rows"&&i.push(`${t}.mode must be a supported sorting mode.`),e.defaultField!==void 0&&(typeof e.defaultField!="string"||!e.defaultField.trim())&&i.push(`${t}.defaultField must be a non-empty string.`),e.defaultDirection!==void 0&&e.defaultDirection!=="asc"&&e.defaultDirection!=="desc"&&i.push(`${t}.defaultDirection must be asc or desc.`),e.resetPageOnChange!==void 0&&typeof e.resetPageOnChange!="boolean"&&i.push(`${t}.resetPageOnChange must be a boolean.`),i}function _t(s,t){const e=u(s);if(!e)return[`${t} must be an object.`];const i=[];return e.mode!=="none"&&e.mode!=="server"&&e.mode!=="local"?(i.push(`${t}.mode must be none, server, or local.`),i):e.mode==="none"?(e.measures!==void 0&&i.push(`${t}.measures is not allowed when mode is none.`),e.label!==void 0&&i.push(`${t}.label is not allowed when mode is none.`),i):e.mode==="server"?(!Array.isArray(e.measures)||e.measures.length===0?i.push(`${t}.measures must include at least one measure when mode is server.`):e.measures.forEach((n,a)=>{var l;i.push(...$e(n,`${t}.measures.${a}`)),((l=u(n))==null?void 0:l.role)!=="measure"&&i.push(`${t}.measures.${a}.role must be measure.`)}),e.label!==void 0&&i.push(`${t}.label is not allowed when mode is server.`),i):(e.mode==="local"&&(e.label!=="Displayed rows"&&e.label!=="Current page"&&i.push(`${t}.label must be Displayed rows or Current page when mode is local.`),e.measures!==void 0&&i.push(`${t}.measures is not allowed when mode is local.`)),i)}function Rt(s,t){const e=u(s);if(!e)return[`${t} must be an object.`];const i=[];switch(e.kind){case"server_query":z(e.queryKind)||i.push(`${t}.queryKind must be a supported codegen query kind.`),e.queryOwnership!==void 0&&e.queryOwnership!=="view_owned"&&e.queryOwnership!=="shared_query"&&i.push(`${t}.queryOwnership must be view_owned or shared_query.`),e.sourceKeys!==void 0&&!y(e.sourceKeys)&&i.push(`${t}.sourceKeys must be an array of strings.`),e.fieldNames!==void 0&&!y(e.fieldNames)&&i.push(`${t}.fieldNames must be an array of strings.`);break;case"derived":(typeof e.upstreamViewId!="string"||!e.upstreamViewId.trim())&&i.push(`${t}.upstreamViewId is required.`),(typeof e.derivation!="string"||!e.derivation.trim())&&i.push(`${t}.derivation is required.`);break;case"presentation_only":break;case"unsupported":(typeof e.reason!="string"||!e.reason.trim())&&i.push(`${t}.reason is required.`),(typeof e.suggestedModelingFix!="string"||!e.suggestedModelingFix.trim())&&i.push(`${t}.suggestedModelingFix is required.`);break;default:i.push(`${t}.kind must be a supported computation kind.`)}return i}function xt(s,t){const e=u(s);if(!e)return[`${t} must be an object.`];const i=[];for(const a of["title","requestedQuestion","suggestedModelingFix"])(typeof e[a]!="string"||!e[a].trim())&&i.push(`${t}.${a} is required.`);return Xe.has(e.reason)||i.push(`${t}.reason must be a supported unsupported insight reason.`),(e.relationshipCandidate!==void 0||e.nextRepairAction!==void 0)&&e.reason!=="missing_relationship"&&i.push(`${t} relationship repair metadata is only valid for missing_relationship unsupported insights.`),e.diagnostic!==void 0&&i.push(...Ct(e.diagnostic,`${t}.diagnostic`,e.reason)),e.relationshipCandidate!==void 0&&i.push(...qt(e.relationshipCandidate,`${t}.relationshipCandidate`)),e.nextRepairAction!==void 0&&i.push(...Et(e.nextRepairAction,`${t}.nextRepairAction`)),i}function Ct(s,t,e){const i=u(s);if(!i)return[`${t} must be an object.`];const n=[],a=new Set(["kind","inputId","inputLabel","optionSource","optionField","missingEvidence"]);Object.keys(i).forEach(c=>{a.has(c)||n.push(`${t}.${c} is not supported; raw identifier diagnostics support only kind, inputId, inputLabel, optionSource, optionField, and missingEvidence.`)}),e!=="raw_identifier_filter_options"&&n.push(`${t} is only valid for raw_identifier_filter_options unsupported insights.`),i.kind!=="raw_identifier_filter_options"&&n.push(`${t}.kind must be raw_identifier_filter_options.`);for(const c of["inputId","inputLabel"])(typeof i[c]!="string"||!i[c].trim())&&n.push(`${t}.${c} must be a non-empty string.`);n.push(...M(i.optionSource,`${t}.optionSource`)),n.push(...ze(i.optionField,`${t}.optionField`));const l=new Set(["display_field","relationship_display_path"]);return!Array.isArray(i.missingEvidence)||i.missingEvidence.length===0?n.push(`${t}.missingEvidence must be a non-empty evidence array.`):i.missingEvidence.forEach((c,d)=>{l.has(c)||n.push(`${t}.missingEvidence.${d} must be display_field or relationship_display_path.`)}),n}function Et(s,t){const e=u(s);if(!e)return[`${t} must be an object.`];const i=[],n=new Set(["tool","reason"]);return Object.keys(e).forEach(a=>{n.has(a)||i.push(`${t}.${a} is not supported; repair actions support only tool and reason.`)}),e.tool!=="semaphor_propose_semantic_model_change"&&i.push(`${t}.tool must be semaphor_propose_semantic_model_change.`),e.reason!=="missing_relationship"&&i.push(`${t}.reason must be missing_relationship.`),i}function qt(s,t){const e=u(s);if(!e)return[`${t} must be an object.`];const i=[],n=new Set(["source","sourceFields","target","targetFields"]);Object.keys(e).forEach(a=>{n.has(a)||i.push(`${t}.${a} is not supported; relationship candidates support only source, sourceFields, target, and targetFields.`)}),i.push(...M(e.source,`${t}.source`)),i.push(...M(e.target,`${t}.target`));for(const a of["sourceFields","targetFields"]){const l=e[a];if(!Array.isArray(l)||l.length===0){i.push(`${t}.${a} must be a non-empty endpoint field array.`);continue}l.forEach((c,d)=>{i.push(...ze(c,`${t}.${a}.${d}`))})}return i}function ze(s,t){const e=u(s);if(!e)return[`${t} must be an object.`];const i=[],n=new Set(["name","label","role","dataType"]);return Object.keys(e).forEach(a=>{n.has(a)||i.push(`${t}.${a} is not supported; relationship candidate fields are scoped by their endpoint and support only name, label, role, and dataType.`)}),(typeof e.name!="string"||!e.name.trim())&&i.push(`${t}.name must be a non-empty string.`),e.role!==void 0&&(typeof e.role!="string"||!["dimension","measure","date","id","unknown"].includes(e.role))&&i.push(`${t}.role must be dimension, measure, date, id, or unknown.`),e.dataType!==void 0&&(typeof e.dataType!="string"||!["string","number","boolean","date","datetime","unknown"].includes(e.dataType))&&i.push(`${t}.dataType must be string, number, boolean, date, datetime, or unknown.`),i}function M(s,t){const e=u(s);if(!e)return[`${t} must be an object.`];const i=[],n=new Set(["kind","domainId","datasetName","datasetId","label","sourceKey"]);return Object.keys(e).forEach(a=>{n.has(a)||i.push(`${t}.${a} is not supported; relationship candidate sources support only semantic identity fields.`)}),e.kind!=="semantic"&&i.push(`${t} must use semantic source identity.`),(typeof e.domainId!="string"||!e.domainId.trim()||typeof e.datasetName!="string"||!e.datasetName.trim())&&i.push(`${t} must include semantic domainId and datasetName.`),i}function z(s){return Ue.has(s)}function ve(s){return Ge.has(s)}function b(s,t){return s===void 0?[]:f(s,t)}function f(s,t){const e=u(s);if(!e)return[`${t} must be an object.`];const i=[];return(typeof e.name!="string"||!e.name.trim())&&i.push(`${t}.name is required.`),!e.source&&typeof e.sourceKey!="string"&&i.push(`${t} must include source or sourceKey.`),e.aggregate!==void 0&&!Qe.has(e.aggregate)&&i.push(`${t}.aggregate must be a supported aggregate function.`),i}function $e(s,t){const e=u(s),i=f(s,t);if(!e||typeof e.sourceKey=="string"&&e.sourceKey.trim())return i;if(e.source!==void 0){const a=C(e.source,`${t}.source`);return a.length===0||i.push(...a),i}return i.includes(`${t} must include source or sourceKey.`)||i.push(`${t} must include source or sourceKey.`),i}function u(s){return s&&typeof s=="object"&&!Array.isArray(s)?s:void 0}function y(s){return Array.isArray(s)&&s.every(t=>typeof t=="string")}const Ie=r.z.union([o.semaphorMetricResultSchema,o.semaphorRecordsResultSchema,o.semaphorInputOptionsResultSchema,o.semaphorSqlResultSchema,G]),ke=r.z.object({status:r.z.enum(["not_required","resolved","missing","ambiguous","fanout_risk","unknown"]),requiredSources:r.z.array(o.semaphorSourceRefSchema).optional(),relationshipsUsed:r.z.array(r.z.string()).optional(),missingSources:r.z.array(r.z.string()).optional(),warnings:r.z.array(r.z.string()).optional(),message:r.z.string().optional(),recommendedNextStep:r.z.string().optional(),joinPlanSummary:r.z.object({baseSource:o.semaphorSourceRefSchema.optional(),joinedSources:r.z.array(o.semaphorSourceRefSchema).optional(),joinCount:r.z.number().optional()}).passthrough().optional(),fanoutRisk:r.z.object({status:r.z.enum(["none","warning","error","unknown"]),message:r.z.string().optional()}).passthrough().optional()}).passthrough(),ae=r.z.enum(["ambiguous_fields","empty_result","missing_grounded_fields","missing_relationship","no_grounded_query","partial_result","presentation_incomplete","query_validation_failed","unsafe_join"]),H=r.z.object({version:r.z.literal(1),status:r.z.enum(["answered","partial","blocked"]),summary:r.z.string(),answered:r.z.array(r.z.object({slotId:r.z.string().optional(),queryId:r.z.string().optional(),summary:r.z.string(),evidenceIds:r.z.array(r.z.string()).optional(),fieldsUsed:r.z.array(o.semaphorExecutionFieldRefSchema).optional()}).passthrough()),blocked:r.z.array(r.z.object({slotId:r.z.string().optional(),queryId:r.z.string().optional(),reasonCode:ae,message:r.z.string(),missingFields:r.z.array(r.z.string()).optional(),availableFields:r.z.array(r.z.string()).optional(),ambiguousFields:r.z.array(r.z.string()).optional(),missingRelationships:r.z.array(r.z.string()).optional(),evidenceIds:r.z.array(r.z.string()).optional(),neededFromUser:r.z.array(r.z.string()).optional(),recommendedNextStep:r.z.string().optional()}).passthrough()),semanticModelRecommendations:r.z.array(r.z.object({reasonCode:ae,message:r.z.string(),recommendedNextStep:r.z.string().optional()}).passthrough()).optional()}).passthrough(),Y=r.z.object({scope:r.z.literal("filtered_query"),measures:r.z.record(o.nullableScalarSchema)}).passthrough(),J=r.z.object({answeredObligations:r.z.array(r.z.string()),missingObligations:r.z.array(r.z.string()),warnings:r.z.array(o.semaphorAnalyticsValidationIssueSchema).optional()}).passthrough(),Z=r.z.object({intentId:r.z.string().optional(),queryId:r.z.string().optional(),status:r.z.enum(["answered","partial","failed"]),resultShape:r.z.enum(["metric","records","inputOptions","sql","matrix","period_change","analysis"]).optional(),intent:r.z.unknown().optional(),compiledQuery:r.z.unknown().optional(),fieldsUsed:r.z.array(o.semaphorExecutionFieldRefSchema).optional(),result:Ie.optional(),validation:o.semaphorAnalyticsValidationResultSchema,coverage:J.optional(),missingFields:r.z.array(r.z.string()).optional(),warnings:r.z.array(r.z.string()).optional(),relationshipDiagnostics:ke.optional(),diagnosticFeedback:H.optional(),population:Y.optional(),metadata:r.z.record(r.z.string(),r.z.unknown()).optional()}).passthrough(),we=Z;function jt(s){switch(s){case"boolean":return r.z.boolean().optional();case"compactExecutionFieldArray":return r.z.array(o.semaphorCompactFieldRefSchema).optional();case"coverage":return J.optional();case"diagnosticFeedback":return H.optional();case"executionFieldArray":return r.z.array(o.semaphorExecutionFieldRefSchema).optional();case"executionResult":return we.optional();case"number":return r.z.number().finite().optional();case"population":return Y.optional();case"record":return o.recordSchema.optional();case"recordArray":return o.recordArraySchema.optional();case"responseDetail":return r.z.enum(["compact","standard","debug"]).optional();case"string":return r.z.string().optional();case"stringArray":return r.z.array(r.z.string()).optional();case"unknown":return r.z.unknown().optional();case"unknownArray":return r.z.array(r.z.unknown()).optional();case"validationResult":return o.semaphorAnalyticsValidationResultSchema.optional()}}const Ae=Object.fromEntries(Object.entries(R).map(([s,t])=>[s,jt(t)])),_e=r.z.object(Ae).strict(),X=r.z.object({sourceKey:r.z.string().optional(),kind:r.z.enum(["semantic","physical","sql"]).optional(),domainId:r.z.string().optional(),datasetName:r.z.string().optional(),datasetId:r.z.string().optional(),connectionId:r.z.string().optional(),tableName:r.z.string().optional(),label:r.z.string().optional()}).passthrough(),S=r.z.object({name:r.z.string(),label:r.z.string().optional(),role:r.z.enum(["dimension","measure","date","id","unknown"]).optional(),dataType:r.z.enum(["string","number","boolean","date","datetime","unknown"]).optional(),aggregate:o.semaphorAggregateFunctionSchema.optional(),sourceKey:r.z.string().optional(),source:X.optional()}).passthrough(),Re=r.z.object({id:r.z.string().optional(),builder:r.z.literal("semaphor.inputOptions"),source:X.optional(),sourceKey:r.z.string().optional(),valueFieldRef:S,labelFieldRef:S,filterFieldRef:S.optional(),population:r.z.unknown().optional(),dependencies:r.z.unknown().optional(),limit:r.z.number().int().positive().optional(),spec:o.recordSchema.optional()}).passthrough(),xe=r.z.object({appliesToViewIds:r.z.array(r.z.string()).optional(),viewId:r.z.string().optional(),fieldRef:S,relationshipHint:r.z.unknown().optional(),relationshipsUsed:r.z.array(o.recordSchema).optional()}).passthrough(),Kt=r.z.object({id:r.z.string(),label:r.z.string().optional(),type:r.z.string().optional(),serverSide:r.z.boolean().optional(),fieldRef:S.optional(),optionQuery:Re.optional(),bindings:r.z.array(xe).optional(),appliesToViewIds:r.z.array(r.z.string()),relationshipHint:r.z.unknown().optional(),relationshipsUsed:r.z.array(o.recordSchema).optional()}).passthrough(),Ft=r.z.object({builder:r.z.enum(["semaphor.metric","semaphor.records","semaphor.matrix","semaphor.analysis","semaphor.sql"]),spec:o.recordSchema,fallbackReason:o.recordSchema.optional()}).passthrough(),Nt=r.z.object({id:r.z.string(),title:r.z.string().optional(),purpose:r.z.string().optional(),sourcePresentation:r.z.object({sourceKeys:r.z.array(r.z.string()).optional(),sourceLabels:r.z.array(r.z.string()).optional()}).passthrough().optional(),visual:r.z.string().optional(),visualSpec:o.recordSchema.optional(),queryKind:r.z.enum(["metric","records","matrix","analysis","sql_fallback"]).optional(),sdkBuilder:r.z.enum(["semaphor.metric","semaphor.records","semaphor.matrix","semaphor.analysis","semaphor.sql"]).optional(),sdkSpec:Ft.optional(),fields:r.z.array(S).optional(),computation:o.recordSchema.optional(),uxExpectations:r.z.array(r.z.string()).optional(),validation:o.recordSchema.optional()}).passthrough(),Ot=r.z.object({inputId:r.z.string(),label:r.z.string().optional(),type:r.z.string().optional(),serverSide:r.z.boolean().optional(),fieldRef:S.optional(),optionQuery:Re.optional(),bindings:r.z.array(xe),appliesToViewIds:r.z.array(r.z.string()),notAppliedToViewIds:r.z.array(r.z.string())}).passthrough(),Tt=r.z.object({schemaVersion:r.z.literal(w),title:r.z.string(),purpose:r.z.string().optional(),userGoal:r.z.string().optional(),nextStep:r.z.string().optional(),sources:r.z.array(X),inputs:r.z.array(Kt),views:r.z.array(Nt),filterContracts:r.z.array(Ot),implementationChecklist:r.z.object({schemaVersion:r.z.string().optional(),requiredDevtools:r.z.object({mountRootDevtools:r.z.boolean(),providerDebugBridge:r.z.string().optional(),panelPosition:r.z.string().optional(),forbidden:r.z.array(r.z.string()).optional()}).passthrough(),requiredInputOptions:r.z.array(o.recordSchema),filterScopeByInput:r.z.array(o.recordSchema),bindingsByView:r.z.record(r.z.string(),r.z.array(o.recordSchema)),validationCommands:r.z.array(r.z.string()),browserSmokeChecks:r.z.array(r.z.string())}).passthrough(),nextRequiredTool:r.z.object({name:r.z.string(),reason:r.z.string().optional()}).optional(),unsupportedInsights:r.z.array(r.z.object({title:r.z.string(),requestedQuestion:r.z.string(),reason:r.z.string(),suggestedModelingFix:r.z.string()}).passthrough()).optional(),assumptions:r.z.array(r.z.string()).optional(),validation:o.recordSchema.optional()}).passthrough().superRefine((s,t)=>{const e=W(s);for(const i of e.issues)t.addIssue({code:r.z.ZodIssueCode.custom,message:i})}),Pt=new Set(Object.keys(R));function Bt(){return Object.keys(R)}function Ce(s){return Pt.has(s)}function Mt(s){if(!s||typeof s!="object"||Array.isArray(s))throw new Error("Semaphor analyze result must be an object.");const e=Object.keys(s).filter(i=>!Ce(i));if(e.length)throw new Error(`Semaphor analyze result contains unsupported top-level field(s): ${e.join(", ")}.`);return _e.parse(s)}const ee=100,A="selection:";function te(s){return[o.semaphorSourceIdentityKey(s.source),o.normalizeAnalyticsCatalogName(s.name),s.sourceField??""].join("::")}function Dt(s){return`${A}${s}`}function Ee(s){return s.startsWith(A)&&s.length>A.length}function Vt(s){return Ee(s)?s.slice(A.length):void 0}function se(s){if(!s)return"";const t=s.calendar.fiscalCalendar;return JSON.stringify([s.granularity,s.calendar.tz,s.calendar.weekStart,t?[t.kind,t.yearStartMonth]:null])}function qe(s){return JSON.stringify([te(s.field),s.operator,s.operator==="isNull"?null:s.value,se(s.temporalBucket)])}function D(s){return JSON.stringify(s.conditions.map(qe).sort())}function _(s){return JSON.stringify([o.semaphorSourceIdentityKey(s.field.source),s.field.name,s.operator,s.operator==="isNull"?null:s.value,se(s.temporalBucket)])}function V(s){return JSON.stringify(s.conditions.map(_).sort())}function Lt(s){const t=s.map(e=>e.id);if(new Set(t).size!==t.length)throw new Error("Data App selections require one active selection per id.");return s.map(e=>({...e,tuples:e.tuples.map(i=>({...i,conditions:[...i.conditions].sort((n,a)=>O(_(n),_(a)))})).sort((i,n)=>O(V(i),V(n)))})).sort((e,i)=>O(e.id,i.id))}function O(s,t){return s<t?-1:s>t?1:0}function Ut(s,t){return D(s)===D(t)}const Gt="(Blank)";function Qt(s){return s.conditions.map(t=>t.label?t.label:t.operator==="isNull"||t.value===null?Gt:String(t.value)).join(" · ")}const Wt=r.z.union([o.semaphorSemanticSourceRefSchema,o.semaphorPhysicalSourceRefSchema]),je=r.z.object({name:r.z.string().min(1),source:Wt,dataType:r.z.enum(["string","number","boolean","date","datetime"]),sourceField:r.z.string().min(1).optional()}).strict(),Ke=r.z.object({field:je,operator:r.z.enum(["=","isNull"]),value:r.z.union([r.z.string(),r.z.number().finite(),r.z.null()]),label:r.z.string().optional(),temporalBucket:o.temporalBucketMetadataSchema.optional()}).strict().superRefine((s,t)=>{s.operator==="isNull"!=(s.value===null)&&t.addIssue({code:r.z.ZodIssueCode.custom,message:"isNull carries a null value, and only isNull does.",path:["value"]})}),Fe=r.z.object({conditions:r.z.array(Ke).min(1)}).strict().superRefine((s,t)=>{const e=s.conditions.map(i=>te(i.field));new Set(e).size!==e.length&&t.addIssue({code:r.z.ZodIssueCode.custom,message:"A tuple holds one condition per field.",path:["conditions"]})}),Ht=r.z.object({kind:r.z.literal("selection"),sourceCardId:r.z.string().min(1),tuples:r.z.array(Fe).min(1).max(ee)}).strict(),Ne=r.z.object({field:o.semaphorFieldRefSchema,operator:r.z.enum(["=","isNull"]),value:r.z.union([r.z.string(),r.z.number().finite(),r.z.null()]),temporalBucket:o.temporalBucketMetadataSchema.optional()}).strict().superRefine((s,t)=>{s.operator==="isNull"!=(s.value===null)&&t.addIssue({code:r.z.ZodIssueCode.custom,message:"isNull carries a null value, and only isNull does.",path:["value"]})}),Oe=r.z.object({conditions:r.z.array(Ne).min(1)}).strict().superRefine((s,t)=>{for(let e=0;e<s.conditions.length;e+=1){const i=s.conditions[e];s.conditions.findIndex((a,l)=>l<e&&o.semaphorFieldRefsMatch(a.field,i.field))!==-1&&t.addIssue({code:r.z.ZodIssueCode.custom,message:"A selection tuple can contain only one condition per field.",path:["conditions",e,"field"]})}}),Yt=r.z.object({id:r.z.string().min(1),tuples:r.z.array(Oe).min(1).max(ee)}).strict(),Te=r.z.object({runtimeFilters:o.matrixSpecSchema.innerType().shape.filters,runtimeSorts:o.matrixSpecSchema.innerType().shape.sorts.optional()});function Jt(s){return Te.parse(s)}const Zt={compiledQuery:r.z.never().optional(),intent:Q.shape.intent,resultShape:r.z.literal("matrix"),result:G.optional(),metadata:r.z.object({rowLimitExceeded:r.z.boolean(),matrixFailure:x.optional()}).passthrough()},Xt=Z.extend(Zt),es=Xt.superRefine((s,t)=>{s.status==="failed"==!!s.result&&t.addIssue({code:"custom",message:"Only answered or partial Matrix execution carries a window."}),s.result&&s.status==="partial"!=s.result.window.failures.length>0&&t.addIssue({code:"custom",message:"Matrix execution status must match acquired window failures."})});exports.MATRIX_WINDOW_LIMITS=Pe;exports.SELECTION_LIMIT=ee;exports.SEMAPHOR_ANALYZE_RESULT_FIELD_CONTRACT=R;exports.SEMAPHOR_DATA_APP_CODEGEN_SUMMARY_SCHEMA_VERSION=w;exports.SEMAPHOR_DATA_APP_CODEGEN_SUMMARY_VALIDATOR_VERSION=Le;exports.analyticsExecutionEnvelopeSchema=Z;exports.analyticsSelectionConditionKey=_;exports.analyticsSelectionConditionSchema=Ne;exports.analyticsSelectionSchema=Yt;exports.analyticsSelectionTupleKey=V;exports.analyticsSelectionTupleSchema=Oe;exports.canonicalizeAnalyticsSelections=Lt;exports.getSemaphorAnalyzeResultFieldNames=Bt;exports.isSelectionInputId=Ee;exports.isSemaphorAnalyzeResultFieldName=Ce;exports.isSemaphorDataAppCodegenSummary=et;exports.matrixAxisPageSchema=ce;exports.matrixBlockRequestSchema=ue;exports.matrixCapabilitiesSchema=me;exports.matrixCellBlockSchema=le;exports.matrixDescriptorSchema=P;exports.matrixExecutionResultSchema=es;exports.matrixExportBatchSchema=Ve;exports.matrixExportColumnSchema=fe;exports.matrixExportLayoutSchema=he;exports.matrixExportRowSchema=ye;exports.matrixExportValueSchema=B;exports.matrixFailureSchema=x;exports.matrixOperationRequestSchema=Q;exports.matrixPageRequestSchema=oe;exports.matrixPathSelectionSchema=T;exports.matrixResultSchema=G;exports.matrixRuntimeInputsSchema=Te;exports.matrixWindowInputSchema=Me;exports.matrixWindowOutcomeSchema=De;exports.matrixWindowRequestSchema=L;exports.matrixWindowSchema=U;exports.parseMatrixRuntimeInputs=Jt;exports.parseSemaphorAnalyzeResult=Mt;exports.sameSelectionTuple=Ut;exports.selectionConditionKey=qe;exports.selectionConditionSchema=Ke;exports.selectionFieldKey=te;exports.selectionFieldSchema=je;exports.selectionInputId=Dt;exports.selectionInputValueSchema=Ht;exports.selectionTupleKey=D;exports.selectionTupleLabel=Qt;exports.selectionTupleSchema=Fe;exports.semaphorAnalyticsCoverageSchema=J;exports.semaphorAnalyticsDiagnosticFeedbackSchema=H;exports.semaphorAnalyticsExecutionResultSchema=we;exports.semaphorAnalyticsPopulationSchema=Y;exports.semaphorAnalyticsResultSchema=Ie;exports.semaphorAnalyzeResultSchema=_e;exports.semaphorAnalyzeResultShape=Ae;exports.semaphorDataAppCodegenSummarySchema=Tt;exports.semaphorRelationshipDiagnosticsSchema=ke;exports.sourceCardIdFromSelectionInputId=Vt;exports.temporalBucketIdentityKey=se;exports.validateSemaphorDataAppCodegenSummary=W;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";const g=require("./validators-DFeDcdpA.cjs"),b="higher_is_better",C={displayMode:"difference",showComparison:!0,indicatorStyle:"arrow_badge",showColor:!0,conditionalLabel:!1};function w(o){return g.parseSemaphorIsoInstant(o)!==null}function $(o){var i,e,s,t;if(((i=o.metricComparison)==null?void 0:i.mode)!=="off"){if(((e=o.metricComparison)==null?void 0:e.mode)==="explicit")return{source:"explicit",spec:o.metricComparison.spec};if(!((o.inheritGlobalComparison??((s=o.globalDateComparison)==null?void 0:s.inheritGlobalComparison))===!1||((t=o.globalDateComparison)==null?void 0:t.selection.mode)!=="period"))return{source:"inherited",spec:o.globalDateComparison.selection.spec,...o.globalDateComparison.owner?{owner:o.globalDateComparison.owner}:{}}}}function h(o){if(o.alias)return o.alias;const i=o.entityName&&o.entityName!=="SEMAPHOR_CALCULATED_FIELD"?o.entityName:void 0,e=i&&i!==o.name?`${i}_`:"";if(o.role!=="metric")return`${e}${o.name}`;let s=o.aggregate||"metric";if(o.expression){const t=o.expression.match(/^(COUNT|SUM|AVG|MIN|MAX|MEDIAN|DISTINCT)\s*\(/i);s=t?t[1].toLowerCase():"expr"}else s=s.toLowerCase();return`${e}${o.name}_${s}`}function n(o,i,e){return e?{code:o,message:i,path:e}:{code:o,message:i}}function p(o){return!!o&&typeof o=="object"&&!Array.isArray(o)}function a(o,i,e,s){Object.keys(o).forEach(t=>{i.includes(t)||s.push(n("invalid_comparison_spec",`Comparison kind does not accept field "${t}".`,`${e}.${t}`))})}function f(o,i,e){o.alignment!==void 0&&o.alignment!=="calendar"&&o.alignment!=="weekday"&&e.push(n("invalid_comparison_spec",'Comparison alignment must be "calendar" or "weekday".',`${i}.alignment`)),o.toDate!==void 0&&typeof o.toDate!="boolean"&&e.push(n("invalid_comparison_spec","Comparison toDate must be a boolean.",`${i}.toDate`))}function _(o,i,e){o!==void 0&&(typeof o!="number"||!Number.isSafeInteger(o)||o<=0)&&e.push(n("invalid_comparison_spec","Comparison offset must be a positive safe integer.",i))}function d(o,i="comparison"){const e=[];return p(o)?(o.kind==="previous_period"?(a(o,["kind","offsetPeriods","alignment","toDate"],i,e),_(o.offsetPeriods,`${i}.offsetPeriods`,e),f(o,i,e)):o.kind==="previous_year"?(a(o,["kind","offsetYears","alignment","toDate"],i,e),_(o.offsetYears,`${i}.offsetYears`,e),f(o,i,e)):o.kind==="target"?(a(o,["kind","targetValue"],i,e),(typeof o.targetValue!="number"||!Number.isFinite(o.targetValue))&&e.push(n("invalid_comparison_spec","Target comparison requires a finite targetValue.",`${i}.targetValue`))):e.push(n("invalid_comparison_spec","Comparison kind must be previous_period, previous_year, or target.",`${i}.kind`)),{ok:e.length===0,errors:e,warnings:[]}):{ok:!1,errors:[n("invalid_comparison_spec","Comparison spec must be an object.",i)],warnings:[]}}function D(o,i="comparison"){if(!p(o))return{ok:!1,errors:[n("invalid_comparison_config","Comparison config must be an object.",i)],warnings:[]};const e=[];return o.mode==="off"?a(o,["mode"],i,e):o.mode==="explicit"?(a(o,["mode","spec"],i,e),e.push(...d(o.spec,`${i}.spec`).errors)):e.push(n("invalid_comparison_config","Comparison mode must be off or explicit.",`${i}.mode`)),{ok:e.length===0,errors:e,warnings:[]}}function u(o,i="comparisonSelection"){if(!p(o))return{ok:!1,errors:[n("invalid_global_date_comparison","Global Date comparison selection must be an object.",i)],warnings:[]};const e=[];if(o.mode==="off")a(o,["mode"],i,e);else if(o.mode==="period"){a(o,["mode","spec"],i,e);const s=d(o.spec,`${i}.spec`);e.push(...s.errors),p(o.spec)&&o.spec.kind==="target"&&e.push(n("invalid_global_date_comparison","Global Date comparison supports previous_period or previous_year, not target.",`${i}.spec.kind`))}else e.push(n("invalid_global_date_comparison","Global Date comparison mode must be off or period.",`${i}.mode`));return{ok:e.length===0,errors:e,warnings:[]}}function I(o,i="globalDateComparison"){if(!p(o))return{ok:!1,errors:[n("invalid_global_date_comparison","Global Date comparison context must be an object.",i)],warnings:[]};const e=[];return a(o,["selection","inheritGlobalComparison","owner","referenceTime"],i,e),e.push(...u(o.selection,`${i}.selection`).errors),o.inheritGlobalComparison!==void 0&&o.inheritGlobalComparison!==!1&&e.push(n("invalid_global_date_comparison","inheritGlobalComparison may only be false when present.",`${i}.inheritGlobalComparison`)),o.owner!==void 0&&(p(o.owner)?o.owner.kind==="global_date"?a(o.owner,["kind"],`${i}.owner`,e):o.owner.kind==="field_date"?(a(o.owner,["kind","filterId","label"],`${i}.owner`,e),(typeof o.owner.filterId!="string"||!o.owner.filterId.trim())&&e.push(n("invalid_global_date_comparison","Field Date comparison owner requires a non-empty filterId.",`${i}.owner.filterId`)),(typeof o.owner.label!="string"||!o.owner.label.trim())&&e.push(n("invalid_global_date_comparison","Field Date comparison owner requires a non-empty label.",`${i}.owner.label`))):e.push(n("invalid_global_date_comparison","Comparison owner kind must be global_date or field_date.",`${i}.owner.kind`)):e.push(n("invalid_global_date_comparison","Comparison owner must be an object.",`${i}.owner`))),o.referenceTime!==void 0&&(typeof o.referenceTime!="string"||!w(o.referenceTime))&&e.push(n("invalid_global_date_comparison","referenceTime must be a valid ISO date-time string when present.",`${i}.referenceTime`)),{ok:e.length===0,errors:e,warnings:[]}}function M(o,i="comparisonPolarity"){return o==="higher_is_better"||o==="lower_is_better"||o==="neutral"?{ok:!0,errors:[],warnings:[]}:{ok:!1,errors:[n("invalid_comparison_polarity","Comparison polarity must be higher_is_better, lower_is_better, or neutral.",i)],warnings:[]}}function S(o,i="comparisonPresentation"){if(!p(o))return{ok:!1,errors:[n("invalid_comparison_presentation","Comparison presentation must be an object.",i)],warnings:[]};const e=[],s=["displayMode","showComparison","precision","indicatorStyle","showColor","position","conditionalLabel","labelName","conditionalLabels","colors"];return Object.keys(o).forEach(r=>{s.includes(r)||e.push(n("invalid_comparison_presentation",`Comparison presentation does not accept field "${r}".`,`${i}.${r}`))}),[["displayMode",["difference","percent_change","both","ratio"]],["indicatorStyle",["arrow_badge","arrow","badge","none"]],["position",["left","right","top"]]].forEach(([r,l])=>{o[r]!==void 0&&!l.includes(o[r])&&e.push(n("invalid_comparison_presentation",`Comparison presentation ${r} is invalid.`,`${i}.${r}`))}),["showComparison","showColor","conditionalLabel"].forEach(r=>{o[r]!==void 0&&typeof o[r]!="boolean"&&e.push(n("invalid_comparison_presentation",`Comparison presentation ${r} must be a boolean.`,`${i}.${r}`))}),o.precision!==void 0&&(typeof o.precision!="number"||!Number.isInteger(o.precision)||o.precision<0||o.precision>6)&&e.push(n("invalid_comparison_presentation","Comparison presentation precision must be an integer from 0 through 6.",`${i}.precision`)),o.labelName!==void 0&&typeof o.labelName!="string"&&e.push(n("invalid_comparison_presentation","Comparison presentation labelName must be a string.",`${i}.labelName`)),["conditionalLabels","colors"].forEach(r=>{const l=o[r];if(l!==void 0){if(!p(l)){e.push(n("invalid_comparison_presentation",`Comparison presentation ${r} must be an object.`,`${i}.${r}`));return}Object.keys(l).forEach(c=>{["increase","decrease","neutral"].includes(c)||e.push(n("invalid_comparison_presentation",`Comparison presentation ${r} does not accept field "${c}".`,`${i}.${r}.${c}`))}),Object.entries(l).forEach(([c,m])=>{m!==void 0&&typeof m!="string"&&e.push(n("invalid_comparison_presentation",`Comparison presentation ${r}.${c} must be a string.`,`${i}.${r}.${c}`))})}}),{ok:e.length===0,errors:e,warnings:[]}}function N(o){return o===null?"unknown":o>0?"increase":o<0?"decrease":"no_change"}function T(o,i){return o==="unknown"||o==="no_change"||i==="neutral"?"neutral":i==="higher_is_better"&&o==="increase"||i==="lower_is_better"&&o==="decrease"?"favorable":"unfavorable"}function y(o){const{currentValue:i,comparisonValue:e,polarity:s=b}=o,r=i!==null&&e!==null?i-e:null,l=r!==null&&e!==null&&e!==0?r/Math.abs(e):null,c=i!==null&&e!==null&&e!==0?i/e:null,m=N(r);return{status:e===null?"insufficient_history":"available",currentValue:i,comparisonValue:e,delta:r,percentChange:l,ratio:c,direction:m,sentiment:T(m,s)}}exports.COMPARISON_PRESENTATION_DEFAULTS=C;exports.DEFAULT_METRIC_COMPARISON_POLARITY=b;exports.evaluateMetricComparison=y;exports.resolveMetricComparisonRequest=$;exports.resolveMetricResultAlias=h;exports.validateComparisonPresentationSpec=S;exports.validateGlobalDateComparisonContext=I;exports.validateGlobalDateComparisonSelection=u;exports.validateMetricComparisonConfig=D;exports.validateMetricComparisonPolarity=M;exports.validateMetricComparisonSpec=d;
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
"use strict";const e=require("./x-B6ghREd2.cjs");/**
|
|
2
|
-
* @license lucide-react v0.453.0 - ISC
|
|
3
|
-
*
|
|
4
|
-
* This source code is licensed under the ISC license.
|
|
5
|
-
* See the LICENSE file in the root directory of this source tree.
|
|
6
|
-
*/const o=e.createLucideIcon("MousePointer2",[["path",{d:"M4.037 4.688a.495.495 0 0 1 .651-.651l16 6.5a.5.5 0 0 1-.063.947l-6.124 1.58a2 2 0 0 0-1.438 1.435l-1.579 6.126a.5.5 0 0 1-.947.063z",key:"edeuup"}]]);exports.MousePointer2=o;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";const s=require("./stable-serialize-jqCpyZvd.cjs"),a=["i","x","y","w","h","minW","minH","maxW","maxH","static","isResizable","isDraggable"];function c(t,e,r){t[e]=r}function y(t){const e={};for(const r of a){const i=t[r];i!==void 0&&((r==="isResizable"||r==="isDraggable")&&i===!0||c(e,r,i))}return e}function o(t){return t?t.map(y).sort((e,r)=>{const i=String(e.i??""),n=String(r.i??"");return i!==n?i.localeCompare(n):Number(e.y??0)-Number(r.y??0)||Number(e.x??0)-Number(r.x??0)||Number(e.h??0)-Number(r.h??0)||Number(e.w??0)-Number(r.w??0)}):[]}function u(t){if(!t)return;const e={};for(const r of Object.keys(t).sort()){const i=t[r];i&&(e[r]=o(i))}return e}function f(t){var e;return t?{...t,sheets:(e=t.sheets)==null?void 0:e.map(r=>{if(!r)return r;const i={...r};return r.layout&&(i.layout=o(r.layout)),r.layouts&&(i.layouts=u(r.layouts)),i})}:null}function l(t){return JSON.stringify(t??null,function(e,r){return e==="layout"&&Array.isArray(r)?o(r):e==="layouts"&&r&&typeof r=="object"&&!Array.isArray(r)?u(r):!r||typeof r!="object"||Array.isArray(r)?r:Object.keys(r).sort().reduce((i,n)=>(i[n]=r[n],i),{})})}function m(t){return s.stableSerialize(u(t)??null)}exports.normalizeDashboardForDirtyCheck=f;exports.serializeDashboardForDirtyCheck=l;exports.serializeLayoutsForDirtyCheck=m;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";const N=require("./validators-DFeDcdpA.cjs"),d=require("../value-format-preferences/index.cjs"),b=require("./temporal-bucket-4YEPEKlJ.cjs"),V=["day","hour","minute","second","millisecond"],S={day:864e5,hour:36e5,minute:6e4,second:1e3,millisecond:1},q={day:"d",hour:"hr",minute:"min",second:"s",millisecond:"ms"},T={day:["day","days"],hour:["hour","hours"],minute:["minute","minutes"],second:["second","seconds"],millisecond:["millisecond","milliseconds"]};function A(i){return i==="day"||i==="hour"||i==="minute"||i==="second"||i==="millisecond"}function L(i,e){return A(i)?i:e}function P(i,e){return V.indexOf(L(i,e))}function W(i,e){const r=P(i,"day"),c=P(e,"second"),n=Math.min(r,c),t=Math.max(r,c);return V.slice(n,t+1)}function j(i,e){return i*S[L(e,"second")]}function z(i,e){const r=W(e.largestUnit,e.smallestUnit),c=r[r.length-1],n=S[c];let t=Math.round(i/n)*n;return r.map(a=>{const u=S[a],s=Math.floor(t/u);return t-=s*u,{unit:a,value:s}})}function K(i,e){const r=i.filter(t=>t.value!==0),c=r.length>0?r:[i[i.length-1]],n=typeof e=="number"&&Number.isFinite(e)?Math.max(1,Math.trunc(e)):c.length;return c.slice(0,n).map(t=>`${t.value}${q[t.unit]}`).join(" ")}function Z(i,e){const r=i.filter(t=>t.value!==0),c=r.length>0?r:[i[i.length-1]],n=typeof e=="number"&&Number.isFinite(e)?Math.max(1,Math.trunc(e)):c.length;return c.slice(0,n).map(t=>{const[a,u]=T[t.unit];return`${t.value} ${t.value===1?a:u}`}).join(" ")}function J(i){const e=i.some(s=>s.unit==="day"&&s.value!==0),r=i.some(s=>s.unit==="millisecond"),c=i.findIndex(s=>s.value!==0),n=Math.max(0,i.length-2),t=e?0:c===-1?n:Math.min(c,n),a=c===-1?i.slice(n):i.slice(t);if(a.length===0)return"0";const u=a.map((s,l)=>s.unit==="millisecond"?String(s.value).padStart(3,"0"):l===0?String(s.value):String(s.value).padStart(2,"0")).join(":");return r?u.replace(/:(\d{3})$/,".$1"):u}function Y(i,e,r){const c=`${r.prefix||""}${i}${r.suffix||""}`;return e?r.negativeInParentheses?`(${c})`:`-${c}`:c}function R(i,e={}){if(i==null)return"";const r=typeof i=="number"?i:typeof i=="string"&&i.trim()?Number(i):NaN;if(!Number.isFinite(r))return"";const c=e.inputUnit||"second",n=e.outputStyle==="digital"||e.outputStyle==="long"?e.outputStyle:"compact",t=r<0,a=Math.abs(j(r,c)),u=z(a,e),s=n==="digital"?J(u):n==="long"?Z(u,e.maxUnits):K(u,e.maxUnits);return Y(s,t,e)}function o(i,e){return R(i!==null&&typeof i=="object"?i.value:i,{inputUnit:e.inputUnit,outputStyle:e.outputStyle,largestUnit:e.largestUnit,smallestUnit:e.smallestUnit,maxUnits:e.maxUnits,prefix:e.prefix,suffix:e.suffix,negativeInParentheses:e.negativeStyle==="parentheses"})}let E;function U(i,e){const r=i.format;return r(e)}function H(i,e){if(E??(E=U(new Intl.NumberFormat("en-US",{useGrouping:!1,maximumFractionDigits:6}),"9007199254740993.000009")==="9007199254740993.000009"),!E)throw new RangeError("This runtime cannot format exact decimal strings.");const r=Number(i);if(!Number.isFinite(r)||r===0&&i!=="0")throw new RangeError("Exact value is outside the Intl formatting range; use raw text.");return U(e,i)}function h(i){return typeof i=="number"?i<0:i.value.startsWith("-")}function y(i){return typeof i=="number"?Math.abs(i):h(i)?{...i,value:i.value.slice(1)}:i}function B(i,e){return typeof i=="number"?i*e:{kind:"exact_number",type:"decimal",value:N.scaleExactDecimal(i.value,e)}}function x(i,e){return e===0?i:typeof i=="number"?i/10**e:{kind:"exact_number",type:"decimal",value:N.scaleExactDecimal(i.value,`1e-${e}`)}}function f(i,e){return typeof i=="number"?e.format(i):H(i.value,e)}function k(i){if(!i)return!1;const e=i.toLowerCase().replace("_","-");return e==="en-in"||e.startsWith("en-in-")}function G(i,e){const r=y(i),c=n=>typeof r=="number"?r>=n:N.compareExactDecimal(r.value,String(n))>=0;return c(1e12)?{power:12,suffix:"T"}:c(1e9)?{power:9,suffix:"B"}:k(e)&&c(1e7)?{power:7,suffix:"Cr"}:c(1e6)?{power:6,suffix:"M"}:k(e)&&c(1e5)?{power:5,suffix:"L"}:c(1e3)?{power:3,suffix:"K"}:{power:0,suffix:""}}function v(i,e){try{const r=g(e);return G(i,r)}catch{return G(i,"en-US")}}function Q(i){try{return new Intl.NumberFormat(i),!0}catch{return!1}}function g(i){return i&&Q(i)?i:"en-US"}function D(i,e){if(i==null||Number.isNaN(i))return"";const r=g(e==null?void 0:e.locale);let c=i;if(e!=null&&e.multiplyBy&&(c=B(c,e.multiplyBy)),e!=null&&e.useSuffix){const{power:t,suffix:a}=v(c,r);c=x(c,t);const u=f(c,new Intl.NumberFormat(r,{minimumFractionDigits:(e==null?void 0:e.minimumFractionDigits)??0,maximumFractionDigits:(e==null?void 0:e.maximumFractionDigits)??2,useGrouping:(e==null?void 0:e.useGrouping)??!0}));return`${(e==null?void 0:e.prefix)??""}${u}${a}${(e==null?void 0:e.suffix)??""}`}const n=f(c,new Intl.NumberFormat(r,{minimumFractionDigits:(e==null?void 0:e.minimumFractionDigits)??0,maximumFractionDigits:(e==null?void 0:e.maximumFractionDigits)??2,useGrouping:(e==null?void 0:e.useGrouping)??!0}));if(e!=null&&e.negativeInParentheses&&h(c)){const t=n.replace("-","");return`(${(e==null?void 0:e.prefix)??""}${t}${(e==null?void 0:e.suffix)??""})`}return`${(e==null?void 0:e.prefix)??""}${n}${(e==null?void 0:e.suffix)??""}`}function w(i,e){if(i==null||Number.isNaN(i))return"";const r=g(e==null?void 0:e.locale),c=(e==null?void 0:e.currency)||"USD",n=h(i),t=!!(e!=null&&e.negativeInParentheses&&n),a=t?y(i):i;try{if(e!=null&&e.useSuffix){const{power:s,suffix:l}=v(a,r),m=x(a,s),I=`${f(m,new Intl.NumberFormat(r,{style:"currency",currency:c,minimumFractionDigits:(e==null?void 0:e.minimumFractionDigits)??0,maximumFractionDigits:(e==null?void 0:e.maximumFractionDigits)??2,useGrouping:(e==null?void 0:e.useGrouping)??!0}))}${l}`;return t?`(${I})`:I}const u=f(a,new Intl.NumberFormat(r,{style:"currency",currency:c,minimumFractionDigits:(e==null?void 0:e.minimumFractionDigits)??0,maximumFractionDigits:(e==null?void 0:e.maximumFractionDigits)??2,useGrouping:(e==null?void 0:e.useGrouping)??!0}));return t?`(${u})`:u}catch{const u=y(i),s=e!=null&&e.useSuffix?v(u,r):{power:0,suffix:""},l=D(x(u,s.power),{locale:r,minimumFractionDigits:(e==null?void 0:e.minimumFractionDigits)??0,maximumFractionDigits:(e==null?void 0:e.maximumFractionDigits)??2,useGrouping:(e==null?void 0:e.useGrouping)??!0}),m=`${c} ${l}${s.suffix}`;return n?e!=null&&e.negativeInParentheses?`(${m})`:`-${m}`:m}}function M(i,e){if(i==null||Number.isNaN(i))return"";const r=g(e==null?void 0:e.locale),n=(e==null?void 0:e.alreadyPercent)??(e==null?void 0:e.percentValueMode)==="whole"?x(i,2):i;return f(n,new Intl.NumberFormat(r,{style:"percent",minimumFractionDigits:(e==null?void 0:e.minimumFractionDigits)??0,maximumFractionDigits:(e==null?void 0:e.maximumFractionDigits)??2,useGrouping:(e==null?void 0:e.useGrouping)??!0}))}function C(i,e){if(i==null||Number.isNaN(i))return"";const r=g(e==null?void 0:e.locale);return f(i,new Intl.NumberFormat(r,{notation:"scientific",minimumFractionDigits:(e==null?void 0:e.minimumFractionDigits)??0,maximumFractionDigits:(e==null?void 0:e.maximumFractionDigits)??2}))}function F(i,e){if(i==null||Number.isNaN(i))return"";const r=e.scale===void 0?i:B(i,e.scale),c=e.negativeStyle==="parentheses"&&h(r),n=c?y(r):r,t={style:e.type==="number"?"decimal":e.type,locale:e.locale,currency:e.currency,minimumFractionDigits:e.minimumFractionDigits,maximumFractionDigits:e.maximumFractionDigits,useGrouping:e.useGrouping,percentValueMode:e.percentValueMode,useSuffix:e.compact};let a;switch(e.type){case"currency":a=w(n,t);break;case"percent":a=M(n,t);break;case"scientific":a=C(n,t);break;default:a=D(n,t);break}const u=`${e.prefix??""}${a}${e.suffix??""}`;return c?`(${u})`:u}function X(i,e){return e.type==="duration"?i==null?"":o(i,e):F(i,e)}function p(i,e,r="en-US"){if(i==null||typeof i=="number"&&isNaN(i))return"";if((e==null?void 0:e.style)==="duration")return o(i,{...e.duration,prefix:e.prefix,suffix:e.suffix,negativeStyle:e.negativeStyle});const c=g((e==null?void 0:e.locale)||r),n=(e==null?void 0:e.style)||"decimal",t=n==="decimal"?"number":n;return t==="currency"&&new Intl.NumberFormat(c,{style:"currency",currency:(e==null?void 0:e.currency)||"USD"}),F(i,{type:t,locale:c,currency:t==="currency"?(e==null?void 0:e.currency)||"USD":void 0,minimumFractionDigits:(e==null?void 0:e.minimumFractionDigits)??0,maximumFractionDigits:(e==null?void 0:e.maximumFractionDigits)??2,useGrouping:(e==null?void 0:e.useGrouping)??!0,percentValueMode:t==="percent"?(e==null?void 0:e.percentValueMode)??"whole":void 0,scale:e==null?void 0:e.scale,compact:e==null?void 0:e.compact,negativeStyle:e==null?void 0:e.negativeStyle,prefix:e==null?void 0:e.prefix,suffix:e==null?void 0:e.suffix})}function ee(i,e,r){const c={style:e==="currency"?"currency":e==="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(e){case"currency":return w(i,c);case"percent":return M(i,c);case"scientific":return C(i,c);default:return D(i,c)}}const ie=["type","locale","minimumFractionDigits","maximumFractionDigits","useGrouping","prefix","suffix","negativeStyle","compact","scale","currency","percentValueMode"];function O(i){if(!b.isPlainJsonRecord(i))return{ok:!1,issues:[{path:"$",message:"Numeric format must be an object."}]};const e=[],r=new Set(ie);Object.keys(i).filter(t=>!r.has(t)).forEach(t=>e.push({path:t,message:`Unknown property "${t}".`})),i.type!=="number"&&i.type!=="currency"&&i.type!=="percent"&&i.type!=="scientific"&&e.push({path:"type",message:"Expected number, currency, percent, or scientific."});const c=i.locale===void 0?void 0:d.canonicalizeSupportedLocale(i.locale);i.locale!==void 0&&!c&&e.push({path:"locale",message:"Expected a supported BCP 47 locale."});const n=i.currency===void 0?void 0:d.canonicalizeSupportedCurrencyCode(i.currency);i.currency!==void 0&&!n&&e.push({path:"currency",message:"Expected a supported ISO 4217 currency code."});for(const t of["minimumFractionDigits","maximumFractionDigits"]){const a=i[t];a!==void 0&&(!Number.isInteger(a)||typeof a!="number"||a<0||a>20)&&e.push({path:t,message:"Expected an integer from 0 to 20."})}typeof i.minimumFractionDigits=="number"&&typeof i.maximumFractionDigits=="number"&&i.minimumFractionDigits>i.maximumFractionDigits&&e.push({path:"maximumFractionDigits",message:"Must be greater than or equal to minimumFractionDigits."});for(const t of["useGrouping","compact"])i[t]!==void 0&&typeof i[t]!="boolean"&&e.push({path:t,message:"Expected a boolean."});for(const t of["prefix","suffix"])i[t]!==void 0&&typeof i[t]!="string"&&e.push({path:t,message:"Expected a string."});return i.negativeStyle!==void 0&&i.negativeStyle!=="minus"&&i.negativeStyle!=="parentheses"&&e.push({path:"negativeStyle",message:"Expected minus or parentheses."}),i.percentValueMode!==void 0&&i.percentValueMode!=="fraction"&&i.percentValueMode!=="whole"&&e.push({path:"percentValueMode",message:"Expected fraction or whole."}),i.scale!==void 0&&(typeof i.scale!="number"||!Number.isFinite(i.scale))&&e.push({path:"scale",message:"Expected a finite number."}),e.length>0?{ok:!1,issues:e}:{ok:!0,value:{type:i.type,...c?{locale:c}:{},...i.minimumFractionDigits!==void 0?{minimumFractionDigits:i.minimumFractionDigits}:{},...i.maximumFractionDigits!==void 0?{maximumFractionDigits:i.maximumFractionDigits}:{},...i.useGrouping!==void 0?{useGrouping:i.useGrouping}:{},...i.prefix!==void 0?{prefix:i.prefix}:{},...i.suffix!==void 0?{suffix:i.suffix}:{},...i.negativeStyle!==void 0?{negativeStyle:i.negativeStyle}:{},...i.compact!==void 0?{compact:i.compact}:{},...i.scale!==void 0?{scale:i.scale}:{},...n?{currency:n}:{},...i.percentValueMode!==void 0?{percentValueMode:i.percentValueMode}:{}}}}function re(i){const e=O(i);if(!e.ok)return e;const r=[];return e.value.locale||r.push({path:"locale",message:"Resolved numeric formats require an explicit locale."}),e.value.minimumFractionDigits===void 0&&r.push({path:"minimumFractionDigits",message:"Resolved numeric formats require minimumFractionDigits."}),e.value.maximumFractionDigits===void 0&&r.push({path:"maximumFractionDigits",message:"Resolved numeric formats require maximumFractionDigits."}),e.value.type==="currency"&&!e.value.currency&&r.push({path:"currency",message:"Resolved currency formats require an explicit currency."}),r.length>0?{ok:!1,issues:r}:e}function ce(i){var c;const e=new Set;if(i.snapshot.resolvedFormats.forEach((n,t)=>{if(n.format.type!=="temporal_bucket"){if(n.scope.attachmentIndex!==void 0)throw new Error(`resolvedFormats.${t}.scope.attachmentIndex is not valid for a card export`);if(n.scope.dashboardId!==i.expectedScope.dashboardId||n.scope.cardId!==i.expectedScope.cardId)throw new Error(`resolvedFormats.${t}.scope must match the executing dashboard/card`);if(n.target.kind!=="column")throw new Error(`resolvedFormats.${t}.target must identify an export column`);if(e.has(n.target.columnKey))throw new Error(`resolvedFormats.${t} duplicates export column "${n.target.columnKey}"`);e.add(n.target.columnKey)}}),!i.useFormattedValues)return;if(!((c=i.visibleColumns)!=null&&c.length))throw new Error("visibleColumns must identify every formatted export column");const r=i.visibleColumns.find(n=>!e.has(n));if(r)throw new Error(`resolvedFormats is missing visible export column "${r}"`)}function _(i,e){const r=new Intl.NumberFormat(i,{style:"currency",currency:e}).resolvedOptions();return{minimumFractionDigits:r.minimumFractionDigits,maximumFractionDigits:r.maximumFractionDigits}}function te(i){if(i.minimumFractionDigits!==void 0||i.maximumFractionDigits!==void 0){const r=i.minimumFractionDigits??0;return{minimumFractionDigits:r,maximumFractionDigits:i.maximumFractionDigits??Math.max(r,2)}}const e=i.type==="percent"?1:i.type==="scientific"?2:0;return{minimumFractionDigits:e,maximumFractionDigits:e}}function ne(i,e,r){const c=d.canonicalizeSupportedLocale(i.locale)??e.locale,n=i.type==="number"||i.type==="currency"?d.canonicalizeSupportedCurrencyCode(r):void 0;if(!(i.type==="currency"||n!==void 0))return{...i,locale:c,...te(i)};const a=n??d.canonicalizeSupportedCurrencyCode(i.currency)??e.defaultCurrency,u=_(c,a),s=u.minimumFractionDigits??0,l=u.maximumFractionDigits??s,m=i.minimumFractionDigits??Math.min(s,i.maximumFractionDigits??s),$=i.maximumFractionDigits??Math.max(m,l);return{...i,type:"currency",locale:c,currency:a,minimumFractionDigits:m,maximumFractionDigits:$}}exports.formatCurrency=w;exports.formatDuration=R;exports.formatDurationCanonical=o;exports.formatMeasureCanonical=X;exports.formatNumber=D;exports.formatNumberCustom=ee;exports.formatNumberWithColumnSettings=p;exports.formatNumericCanonical=F;exports.formatPercent=M;exports.formatScientific=C;exports.parseNumericCanonicalFormat=O;exports.parseResolvedNumericCanonicalFormat=re;exports.resolveCurrencyFractionDigits=_;exports.resolveNumericPresentation=ne;exports.validateCardExportNumericPresentationSnapshot=ce;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";function r(n){const t=e(n);return o(t)?t:void 0}function e(n){if(typeof n!="string"||n.trim().length===0)return;const t=n.trim().toLowerCase();switch(t){case"=":return"=";case"!=":return"!=";case"in":return"in";case"not_in":return"not_in";case"contains":return"contains";case"not_contains":return"not_contains";case"between":return"between";case"not_between":return"not_between";case">":case">=":case"<":case"<=":return t;case"is_null":return"is_null";case"is_not_null":return"is_not_null";default:return i(n)?n:void 0}}function o(n){return n==="="||n==="!="||n==="in"||n==="not_in"||n==="contains"||n==="not_contains"||n==="between"||n==="not_between"||n===">"||n===">="||n==="<"||n==="<="}function i(n){return o(n)||n==="not_contains"||n==="is_null"||n==="is_not_null"}function s(n){switch(n){case"not in":return"not_in";case"like":return"contains";case"not like":return"not_contains";case"not between":return"not_between";case"is null":case"is not null":return;default:return r(n)}}exports.normalizeSemaphorAnalyticsFilterOperator=e;exports.normalizeSemaphorInputOperator=r;exports.toSemaphorInputOperatorFromFilterOperation=s;
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
"use strict";const c=require("./x-B6ghREd2.cjs");/**
|
|
2
|
-
* @license lucide-react v0.453.0 - ISC
|
|
3
|
-
*
|
|
4
|
-
* This source code is licensed under the ISC license.
|
|
5
|
-
* See the LICENSE file in the root directory of this source tree.
|
|
6
|
-
*/const e=c.createLucideIcon("Palette",[["circle",{cx:"13.5",cy:"6.5",r:".5",fill:"currentColor",key:"1okk4w"}],["circle",{cx:"17.5",cy:"10.5",r:".5",fill:"currentColor",key:"f64h9f"}],["circle",{cx:"8.5",cy:"7.5",r:".5",fill:"currentColor",key:"fotxhn"}],["circle",{cx:"6.5",cy:"12.5",r:".5",fill:"currentColor",key:"qy21gx"}],["path",{d:"M12 2C6.5 2 2 6.5 2 12s4.5 10 10 10c.926 0 1.648-.746 1.648-1.688 0-.437-.18-.835-.437-1.125-.29-.289-.438-.652-.438-1.125a1.64 1.64 0 0 1 1.668-1.668h1.996c3.051 0 5.555-2.503 5.555-5.554C21.965 6.012 17.461 2 12 2z",key:"12rzf8"}]]);exports.Palette=e;
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
"use strict";var te=Object.defineProperty;var oe=(e,r,t)=>r in e?te(e,r,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[r]=t;var M=(e,r,t)=>oe(e,typeof r!="symbol"?r+"":r,t);const ae=require("./raw-temporal-CYdOOyR5.cjs"),v=require("./numeric-presentation-mY6wJMdB.cjs"),w=require("./matrix-formatter-Qk8xsR05.cjs"),y=require("./validators-DFeDcdpA.cjs");require("./matrix-operation-contract-0RxoU_M3.cjs");const O=require("./matrix-definition-DanUT11P.cjs"),L=require("../pdf-export-policy/index.cjs"),ne=require("./temporal-bucket-4YEPEKlJ.cjs");function se(e,r,t){const a={...r,locale:r.locale??t};if(a.type==="number")return v.formatNumericCanonical(e,a);const{prefix:o,suffix:s,...n}=a;return`${o??""}${v.formatNumericCanonical(e,{...n,negativeStyle:a.type==="currency"?a.negativeStyle:"minus"})}${s??""}`}function R(e,r,t){return e===null?{value:e,text:null}:!r||!ae.isNumericCanonicalFormat(r)&&r.type!=="duration"?{value:e,text:v.formatNumericCanonical(e,{type:"number",locale:t})}:r.type==="duration"?{value:e,text:v.formatDuration(e,{inputUnit:r.inputUnit,outputStyle:r.outputStyle,largestUnit:r.largestUnit,smallestUnit:r.smallestUnit,maxUnits:r.maxUnits,prefix:r.prefix,suffix:r.suffix,negativeInParentheses:r.negativeStyle==="parentheses"})}:{value:e,text:se(e,r,t)}}function k(e,r,t,a){return e===null?{value:e,text:null}:a==="percent"?{value:e,text:v.formatNumericCanonical(e,{type:"percent",locale:t,minimumFractionDigits:r,maximumFractionDigits:r,percentValueMode:"fraction"})}:{value:e,text:v.formatNumericCanonical(e,{type:"number",locale:t,minimumFractionDigits:r,maximumFractionDigits:r,suffix:"×"})}}function V(e,r){if(e===void 0)return r;if(!Number.isInteger(e)||e<0||e>6)throw new RangeError("Comparison precision must be an integer from 0 to 6.");return e}function le(e,r){const t={mode:r.displayMode,current:R(e.currentValue,r.metricFormat,r.locale),comparison:R(e.comparisonValue,r.metricFormat,r.locale)};return(r.displayMode==="difference"||r.displayMode==="both")&&(t.difference=R(e.delta,r.metricFormat,r.locale)),(r.displayMode==="percent_change"||r.displayMode==="both")&&(t.percentChange=k(e.percentChange,V(r.precision,1),r.locale,"percent")),r.displayMode==="ratio"&&(t.ratio=k(e.ratio,V(r.precision,2),r.locale,"ratio")),t}function C(e){const r=e.trimStart().charAt(0);return["=","+","-","@"].includes(r)||[" ","\r",`
|
|
2
|
-
`].includes(e.charAt(0))?`'${e}`:e}function D(e,r=","){if(e==null)return"";const t=String(e);return t.includes(r)||t.includes('"')||t.includes(`
|
|
3
|
-
`)||t.includes("\r")?`"${t.replace(/"/g,'""')}"`:t}function N(e,r=","){return e.map(t=>D(t,r)).join(r)}function G(e,r={}){const{delimiter:t=",",lineEnding:a=`
|
|
4
|
-
`}=r;return e.map(o=>N(o,t)).join(a)}function ie(e,r={}){if(e.length===0)return"";const{delimiter:t=",",lineEnding:a=`
|
|
5
|
-
`,includeHeaders:o=!0,columns:s}=r,n=s||Object.keys(e[0]),l=[];o&&l.push(n);for(const m of e){const u=n.map(d=>{const g=m[d];return g==null?"":String(g)});l.push(u)}return G(l,{delimiter:t,lineEnding:a})}const X=1e4,ue=1e6,ce=5e6,me=1024**3,fe=1024**3;function ge(e){return e>X}const de={rowLabels:"tabular",subtotals:"after"};function pe(e,r){const t=r.rowLabels==="outline"?{kind:"compact"}:e.layout.kind==="tabular"?e.layout:{kind:"tabular",repeatLabels:!1},a=e.totals.rows;return{...e,layout:t,totals:{...e.totals,rows:{...a,levels:Object.fromEntries(Object.entries(a.levels).map(([o,s])=>[o,{...s,position:r.subtotals}]))}}}}const $=2;function he(e){return typeof e=="number"?Number.isInteger(e):y.isExactNumericValue(e)?!e.value.includes("."):!0}function B(e,r,t){const a=e.descriptors.measures.filter(n=>t.measureFormats[n.id]===void 0&&n.semanticFormat===void 0&&y.normalizeAnalyticsCatalogDataType(n.column.dataType)==="number");if(a.length===0)return t;const o=new Set;e.columns.forEach((n,l)=>{if(!(n.kind!=="measure"||o.has(n.measureId)))for(const m of r){const u=m.values[l];if((u==null?void 0:u.kind)==="value"&&!he(u.value)){o.add(n.measureId);return}}});const s={...t.measureFormats};for(const{id:n}of a){const l=o.has(n)?$:0;s[n]={type:"number",minimumFractionDigits:l,maximumFractionDigits:l,useGrouping:!0}}return{...t,measureFormats:s}}function E(e){return y.matrixPathKey(e.slice(0,-1))}function be(e,r){return r.length>e.length&&y.matrixPathKey(r.slice(0,e.length))===y.matrixPathKey(e)}function U(e){return e.map((r,t)=>{if(t===0||r.kind!=="layout")return!1;const a=e[t-1];if(a.kind!=="layout")return!1;if(r.role!=="member"||be(a.rowPath,r.rowPath))return!0;const o=e[t-2];return a.role==="member"&&(!o||o.kind!=="layout"||o.role!=="member"||E(o.rowPath)!==E(a.rowPath))&&r.rowPath.length===a.rowPath.length&&E(r.rowPath)===E(a.rowPath)})}const j="pdf-group-continuation";function K(e){if(!e.previousRow||e.row.isSubtotal===!0||e.row.isGrandTotal===!0||e.previousRow.isSubtotal===!0||e.previousRow.isGrandTotal===!0)return!0;for(let r=0;r<=e.levelIndex;r++)if(e.getValue(e.row,r)!==e.getValue(e.previousRow,r))return!0;return!1}function q(e,r,t){const a=w.prepareMatrixFormatting(e.descriptors,r.presentation,t),o=e.columns.map(i=>{var c;return i.kind==="measure"&&((c=a.measureSemantics.get(i.measureId))==null?void 0:c.isNumeric)===!0}),s=i=>w.matrixMemberLabel([i],a.levels),n=(i,c,f)=>w.matrixAxisLabel(i,c,r.presentation.totals[f],a.levels),l=e.columns.map(i=>{if(i.kind!=="measure")return i.label;const c=i.columnPath.map(s);return i.role!=="member"&&c.push(n(i.columnPath,i.role,"columns")),[...c,i.label].join(" / ")}),m=Math.min(r.spec.columns.length,Math.max(0,...e.columns.map(i=>i.kind==="measure"?i.columnPath.length+(i.role!=="member"?1:0):0))),u=Array.from({length:m+1},(i,c)=>e.columns.map(f=>c===m?f.label:f.kind!=="measure"?"":c<f.columnPath.length?s(f.columnPath[c]):c===f.columnPath.length&&f.role!=="member"?n(f.columnPath,f.role,"columns"):"")),d=(i,c)=>w.matrixLevelLabels({path:i.rowPath,role:i.kind==="layout"?i.role:"member",levelCount:Math.max(1,r.spec.rows.length),repeatLabels:r.presentation.layout.kind!=="tabular"||r.presentation.layout.repeatLabels,previousPath:c==null?void 0:c.rowPath}),g=(i,c)=>{if(i.kind!=="layout")throw new Error("Layout presentation requires layout rows.");if(i.values.length!==e.columns.length)throw new Error("Matrix row does not match its frozen layout.");const f=d(i,c);return e.columns.map((b,p)=>{if(b.kind==="hierarchy")return`${" ".repeat(Math.max(0,i.rowPath.length-1))}${n(i.rowPath,i.role,"rows")}`;if(b.kind==="level"){const x=r.spec.rows.findIndex(re=>re.id===b.levelId),A=f[x];return A!=null&&A.visible?A.total?n(i.rowPath,i.role,"rows"):w.matrixMemberLabel(A.path,a.levels):""}const T=i.values[p],P=a.measures.get(b.measureId);if(T.kind==="value"&&!P)throw new Error("Matrix value is missing its measure descriptor.");return w.matrixCellText(T,P,r.presentation.absence)})},h=(i,c)=>g(i,c).map((f,b)=>{var x;const p=i.values[b],T=e.columns[b];return T.kind==="measure"&&!((x=a.measureSemantics.get(T.measureId))!=null&&x.hasTextAffixes)&&p.kind==="value"&&(typeof p.value=="number"||y.isExactNumericValue(p.value))?f:C(f)});return{headers:l,headerBands:u,numericColumns:o,row:(i,c)=>g(i,c),continuedColumns:(i,c)=>{const f=p=>(p==null?void 0:p.kind)==="layout"&&p.role==="member";if(!f(i)||!f(c))return[];const b=d(i,c);return e.columns.flatMap((p,T)=>{var x;if(p.kind!=="level")return[];const P=r.spec.rows.findIndex(A=>A.id===p.levelId);return P<i.rowPath.length&&((x=b[P])==null?void 0:x.visible)===!1?[T]:[]})},csvRow:i=>h(i),csvRows:i=>i.map((c,f)=>h(c,i[f-1]))}}function we(e){return e.columns.map(r=>C(r.label))}function ye(e){if(e.kind!=="flat")throw new Error("Raw Matrix CSV requires flat rows.");return e.values.map(r=>r.kind!=="value"?null:y.isExactNumericValue(r.value)?r.value.value:typeof r.value=="string"?C(r.value):typeof r.value=="boolean"?String(r.value):r.value)}function H(e){const r=q(e.layout,e.request,e.report),t=e.layout.columns.map((n,l)=>({index:l,columnId:`matrix:${l}`,label:r.headers[l],isNumeric:r.numericColumns[l]})),a=(n,l,m)=>({text:n,colspan:1,rowspan:1,columnId:t[l].columnId,isHeader:m,isNumeric:t[l].isNumeric,className:t[l].isNumeric?"numeric":e.layout.columns[l].kind==="hierarchy"?"matrix-hierarchy":""}),o=[],s=e.layout.columns.findIndex(n=>n.kind==="measure");e.request.spec.columns.length&&s>=0&&o.push({repeatHeader:!0,headerType:"pivot-axis",headerRowIndex:0,cells:[...s?[{...a("",0,!0),colspan:s}]:[],{...a(e.request.spec.columns.map(n=>O.getMatrixLevelLabel(n,e.request.presentation)).join(" / "),s,!0),colspan:e.layout.columns.length-s,isNumeric:!1,className:""}]});for(const[n,l]of r.headerBands.entries())o.push({repeatHeader:!0,headerType:n===r.headerBands.length-1?"metrics":"pivot-level",headerRowIndex:o.length,cells:l.map((m,u)=>a(m,u,!0))});return{headers:o,rows:e.rows.map((n,l)=>{const m=new Set(r.continuedColumns(n,e.rows[l-1]));return{index:l,type:n.kind==="layout"&&n.role!=="member"?"subtotal":"data",subtotalLevel:String(n.rowPath.length),cells:r.row(n,e.rows[l-1]).map((u,d)=>m.has(d)?{...a(u,d,!1),className:j}:a(u,d,!1))}}),grandTotal:null,metadata:{tableType:"pivot",totalRows:e.rows.length,totalColumns:t.length,rowLevels:e.layout.columns.filter(n=>n.kind!=="measure").length,pivotLevels:e.request.spec.columns.length,hasGrandTotal:!1,columnOrder:t.map(n=>n.columnId),columns:t}}}function Te(e,r,t){const{levels:a}=w.prepareMatrixFormatting(e.descriptors,r.presentation,t),o=r.spec.columns.length>0,s=[],n=[],l=e.columns.map((u,d)=>{if(u.kind!=="measure")return null;const g=o?`${u.role}:${y.matrixPathKey(u.columnPath)}`:`measure:${d}`;let h=s.indexOf(g);return h<0&&(h=s.push(g)-1,n.push(o?w.matrixAxisLabel(u.columnPath,u.role,r.presentation.totals.columns,a):u.label)),h}),m=r.spec.columns[r.spec.columns.length-1];return{columnGroups:l,groupLabels:n,groupLevelLabel:m?O.getMatrixLevelLabel(m,r.presentation):"Measures"}}function xe(e){const{layout:r,rows:t,report:a}=e,o={...e.request,presentation:B(r,t,e.request.presentation)},s=H({layout:r,rows:t,request:o,report:a}),n=U(t),l=Te(r,o,a),m={...s,rows:s.rows.map((u,d)=>({...u,keepWithPrevious:n[d]})),metadata:{...s.metadata,...l}};return{request:o,table:m,...l}}class W extends Error{constructor(){super(...arguments);M(this,"code",L.PDF_SAFETY_LIMIT_EXCEEDED)}}function F(e){if(!e||typeof e!="object")return;const{error:r,message:t,detail:a}=e;for(const o of[r,t,a])if(typeof o=="string"&&o.trim())return o.trim()}async function Y(e){const r=`PDF request failed: ${e.status} ${e.statusText}`.trim(),t=e.headers.get("content-type")||"";try{if(t.includes("application/json")){const o=await e.json(),s=typeof o.code=="string"?o.code:typeof o.errorCode=="string"?o.errorCode:void 0;return{message:F(o)||r,code:s}}const a=await e.text();if(!a.trim())return{message:r};try{const o=JSON.parse(a),s=typeof o.code=="string"?o.code:typeof o.errorCode=="string"?o.errorCode:void 0;return{message:F(o)||a.trim(),code:s}}catch{return{message:a.trim()}}}catch{return{message:r}}}async function Ae(e){if(!e.token)throw new Error("Missing auth token for PDF export");if(L.getUtf8ByteLength(e.serializedPayload)>L.FAST_PDF_POLICY.maxRequestBytes)throw new Error("Fast-path PDF request exceeds the structured body limit");const r=await(e.fetchImpl??fetch)(e.url,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${e.token}`},body:e.serializedPayload,signal:e.signal});if(!r.ok){const a=await Y(r);throw a.code===L.PDF_SAFETY_LIMIT_EXCEEDED?new W(a.message):new Error(a.message)}const t=await r.json();if(t!=null&&t.error)throw new Error(t.error);if(typeof(t==null?void 0:t.url)!="string"||!t.url.trim())throw new Error("Fast-path PDF response missing download URL");return t}const z="__TOTAL__";function S(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function _(e){return e===z}function Pe(e){const r=new Map,t=(e.groupByColumns??[]).map((o,s)=>{var u,d,g;if(!S(o))throw new Error(`Aggregate groupByColumns[${s}] is invalid`);const n=typeof o.id=="string"&&o.id.length>0?o.id:void 0,l=n?(g=(d=(u=e.columnKeyMap)==null?void 0:u.byRole)==null?void 0:d.groupby)==null?void 0:g[n]:void 0,m=(l==null?void 0:l.outputKey)||(l==null?void 0:l.rawKey)||(typeof o.alias=="string"&&o.alias.length>0?o.alias:typeof o.name=="string"&&o.name.length>0?o.name:void 0);if(!m)throw new Error(`Aggregate groupByColumns[${s}] has no output key`);return[n,o.alias,o.name,m].forEach(h=>{typeof h=="string"&&h.length>0&&r.set(h,m)}),m}),a=(e.rowAggregates??[]).flatMap(o=>!S(o)||typeof o.function!="string"||typeof o.groupLevel!="string"?[]:[{function:o.function,groupLevel:o.groupLevel==="ALL"?"ALL":r.get(o.groupLevel)||o.groupLevel,...typeof o.label=="string"?{label:o.label}:{}}]);return{groupColumnKeys:t,rowAggregates:a}}function Z(e){return e==="SUM"?"Total":e.charAt(0).toUpperCase()+e.slice(1).toLowerCase()}function J(e){var t;if(e.customLabel)return e.customLabel;const r=Z(e.aggregateFunction);if(e.levelValue!==void 0&&!_(e.levelValue)){if(e.levelValue===null){const o=(t=e.formatValue)==null?void 0:t.call(e,null);return o?`Subtotal ${o}`:`Subtotal ${r}`}const a=e.formatValue?e.formatValue(e.levelValue):String(e.levelValue);if(a)return`Subtotal (${a})`}return`Subtotal ${r}`}function Q(e,r){return r||`Grand ${Z(e)}`}function ve(e){const r=e.context.groupColumnKeys.indexOf(e.columnKey);if(r<0)throw new Error(`Aggregate group column "${e.columnKey}" is unknown`);return K({row:e.row,previousRow:e.previousRow,levelIndex:r,getValue:(t,a)=>t[e.context.groupColumnKeys[a]]})}function I(e){var a,o;const r=e.context.groupColumnKeys,t=typeof e.row.aggregate=="string"?e.row.aggregate:"SUM";if(e.row.isGrandTotal===!0){const s=(a=e.context.rowAggregates.find(n=>n.groupLevel==="ALL"))==null?void 0:a.label;return{kind:"grand-total",cells:r.map((n,l)=>({columnKey:n,text:l===0?Q(t,s):"",placement:l===0?"label":"empty",colSpan:l===0?r.length:1}))}}if(e.row.isSubtotal===!0){if(typeof e.row.subtotalLevel!="string")throw new Error("Aggregate subtotal row is missing subtotalLevel");const s=r.indexOf(e.row.subtotalLevel);if(s<0)throw new Error(`Aggregate subtotal level "${e.row.subtotalLevel}" has no group column`);const n=S(e.row.subtotalContext)?e.row.subtotalContext:void 0,l=S(n==null?void 0:n.groupByValues)?n.groupByValues:{},m=(o=e.context.rowAggregates.find(u=>u.groupLevel===e.row.subtotalLevel&&u.function===t))==null?void 0:o.label;return{kind:"subtotal",cells:r.map((u,d)=>{if(d>s)return{columnKey:u,text:"",placement:"empty",colSpan:1};if(d<s){const g=e.row[u];return{columnKey:u,text:g===void 0||_(g)?"":e.formatValue(g,u),placement:"value",colSpan:1}}return{columnKey:u,text:J({aggregateFunction:t,customLabel:m,levelValue:l[u],formatValue:g=>e.formatLabelValue?e.formatLabelValue(g,u):String(e.formatValue(g,u)??"")}),placement:"label",colSpan:r.length-s}})}}return{kind:"data",cells:r.map(s=>{const n=e.row[s];return{columnKey:s,text:n===void 0||_(n)?"":e.formatValue(n,s),placement:"value",colSpan:1}})}}function Ee(e){const r=I(e).cells.find(t=>t.columnKey===e.columnKey);if(!r)throw new Error(`Aggregate group column "${e.columnKey}" is unknown`);return r.text}function Le(e){return I(e).cells.map(r=>r.text)}class ee extends Error{constructor(t,a){super(`${t}: ${a}`);M(this,"deliveryBlocking",!0);this.code=t,this.name="PivotHeaderPresentationError"}}function Se(e){var o;const r=e.mode??"formatted",t=e.members.map(s=>{var l;if(r==="canonical"||!s.temporalBucket)return s.value===null?"":String(s.value);const n=(l=e.resolveTemporalFormat)==null?void 0:l.call(e,s.fieldId);if(!n)throw new ee("missing_resolved_temporal_format",`Missing resolved temporal presentation for pivot field "${s.fieldId}"`);return ne.formatTemporalBucket({value:s.value,metadata:s.temporalBucket,format:n})}),a=((o=e.metricLabel)==null?void 0:o.trim())||void 0;return{memberLabels:t,...a?{metricLabel:a}:{},flattenedLabel:[...t,...a?[a]:[]].join(" / ")}}exports.AGGREGATE_TOTAL_MEMBER_MARKER=z;exports.DIRECT_CSV_EXPORT_MAX_ROWS=X;exports.FULL_DATASET_CSV_EXPORT_MAX_ROWS=ue;exports.MATRIX_EXPORT_MAX_ARTIFACT_BYTES=fe;exports.MATRIX_EXPORT_MAX_CELLS=ce;exports.MATRIX_EXPORT_MAX_ENCODED_BYTES=me;exports.MATRIX_PRINT_DEFAULT_DECIMALS=$;exports.MATRIX_PRINT_ORGANIZATION_DEFAULTS=de;exports.PDF_GROUP_CONTINUATION_CLASS=j;exports.PdfSafetyLimitError=W;exports.PivotHeaderPresentationError=ee;exports.applyMatrixPrintNumberDefaults=B;exports.applyMatrixPrintOrganization=pe;exports.arrayToCSV=G;exports.arrayToCSVRow=N;exports.buildMatrixPrintTable=xe;exports.buildMatrixTableStructure=H;exports.escapeCSVValue=D;exports.formatAggregateGrandTotalLabel=Q;exports.formatAggregateGroupCell=Ee;exports.formatAggregateGroupRow=Le;exports.formatAggregateSubtotalLabel=J;exports.formatMetricComparison=le;exports.isAggregateTotalMemberMarker=_;exports.matrixFlatCsvHeaders=we;exports.matrixFlatCsvRow=ye;exports.objectsToCSV=ie;exports.planMatrixKeepWithPrevious=U;exports.prepareMatrixExportPresentation=q;exports.presentAggregateGroupRow=I;exports.presentPivotHeader=Se;exports.protectCSVText=C;exports.readPdfErrorResponse=Y;exports.requestStructuredPdf=Ae;exports.requiresChunkedCsvExport=ge;exports.resolveAggregateTablePresentationContext=Pe;exports.shouldPresentAggregateGroupValue=ve;exports.shouldPresentGroupedTableValue=K;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";var v=Object.defineProperty;var m=(t,e,r)=>e in t?v(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r;var n=(t,e,r)=>m(t,typeof e!="symbol"?e+"":e,r);const f=require("./temporal-bucket-contract-nTv6gvX5.cjs");function y(t){return!!(t!=null&&t.isSubtotal&&t.subtotalScope==="pivot-value")}function c(t){var e;return t.expectedPivotFieldIds.length===0?!0:!!((e=t.classification)!=null&&e.isSubtotal&&t.classification.subtotalScope==="grand-total")}class u extends Error{constructor(r){super(`missing_pivot_member_identity: ${r}`);n(this,"deliveryBlocking",!0);n(this,"code","missing_pivot_member_identity");this.name="PivotResultIdentityError"}}function d(t){const{identity:e,columnKey:r,expectedPivotFieldIds:i,allowPrefix:l=!1}=t,s=t.allowEmpty??((i==null?void 0:i.length)||0)===0;if(!e||typeof e!="object"||Array.isArray(e)||typeof e.metricId!="string"||!e.metricId||typeof e.metricAlias!="string"||!e.metricAlias||!Array.isArray(e.members))throw new u(`Physical pivot column "${r}" is missing stable metric or member identity.`);if(e.members.forEach((o,a)=>{if(!o||typeof o!="object"||Array.isArray(o)||typeof o.fieldId!="string"||!o.fieldId||o.value!==null&&typeof o.value!="string"||o.temporalBucket!==void 0&&!f.validateTemporalBucketMetadata(o.temporalBucket).ok)throw new u(`Physical pivot column "${r}" has invalid identity for member ${a}.`);if(i&&o.fieldId!==i[a])throw new u(`Physical pivot column "${r}" has member "${o.fieldId}" at tuple position ${a}; expected "${i[a]||"no member"}".`)}),e.members.length===0){if(s)return e.members;throw new u(`Physical pivot column "${r}" is missing its required pivot tuple.`)}if(i&&(!l&&e.members.length!==i.length||e.members.length>i.length))throw new u(`Physical pivot column "${r}" has ${e.members.length} members; expected ${l?"at most ":""}${i.length}.`);return e.members}function p(t,e){t.forEach(r=>{var l,s,o;if(r.pivotIdentity===void 0)return;const i=(l=e.columnClassifications)==null?void 0:l[r.key];d({identity:r.pivotIdentity,columnKey:r.key,expectedPivotFieldIds:e.expectedPivotFieldIds,allowPrefix:((s=e.allowPrefixForColumn)==null?void 0:s.call(e,r))??y(i),allowEmpty:((o=e.allowEmptyForColumn)==null?void 0:o.call(e,r))??c({expectedPivotFieldIds:e.expectedPivotFieldIds,classification:i})})})}function h(t,e,r){var l;const i=t==null?void 0:t.byRole;if(!(!i||typeof i!="object"||Array.isArray(i)))return(l=i[r])==null?void 0:l[e]}function P(t,e){if(!t)return;const r=t.byRole;if(!r||typeof r!="object"||Array.isArray(r))return;const i=Object.values(r).flatMap(s=>{const o=s==null?void 0:s[e];return o?[o]:[]});if(i.length!==1)return;const[l]=i;if(!(l.role==="metric"&&Object.values(t.byMetricAlias??{}).some(s=>s.role===l.role&&s.rawKey===l.rawKey&&s.outputKey===l.outputKey)))return l}exports.PivotResultIdentityError=u;exports.isPivotEmptyTupleAllowed=c;exports.isPivotSubtotalPrefix=y;exports.requirePivotHeaderMembers=d;exports.requirePivotResultColumnIdentities=p;exports.resolveQueryColumnKeyMapEntry=h;exports.resolveUniqueQueryColumnKeyMapEntry=P;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";var T=Object.defineProperty;var q=(e,o,t)=>o in e?T(e,o,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[o]=t;var f=(e,o,t)=>q(e,typeof o!="symbol"?o+"":o,t);const _=require("./raw-temporal-CYdOOyR5.cjs"),O=require("./report-runtime-context-CzSrCBsu.cjs"),U=require("./numeric-presentation-mY6wJMdB.cjs"),u=require("./temporal-bucket-4YEPEKlJ.cjs"),B=require("./validators-DFeDcdpA.cjs");require("./matrix-operation-contract-0RxoU_M3.cjs");const N=require("./metric-comparison-CUmltzpz.cjs"),J=require("./temporal-bucket-contract-nTv6gvX5.cjs"),I=require("./pivot-result-identity-gquWljbd.cjs");class b extends Error{constructor(t){super(`invalid_presentation_execution_snapshot: ${t} Resave this report before running it again.`);f(this,"code","invalid_presentation_execution_snapshot");f(this,"deliveryBlocking",!0);this.name="PresentationExecutionSnapshotError"}}class D extends Error{constructor(t){super(`missing_resolved_raw_temporal_format: Column "${t}" has no captured presentation. Resave this report before running it again.`);f(this,"code","missing_resolved_raw_temporal_format");f(this,"deliveryBlocking",!0);this.name="MissingResolvedRawTemporalFormatError"}}function v(e,o,t){const n=new Set(o),r=Object.keys(e).find(i=>!n.has(i));if(r)throw new Error(`${t} contains unknown property "${r}"`)}function S(e,o="scope"){if(!u.isPlainJsonRecord(e))throw new Error(`${o} must be an object`);v(e,["dashboardId","cardId","attachmentIndex"],o);const t=typeof e.dashboardId=="string"?e.dashboardId.trim():"";if(!t)throw new Error(`${o}.dashboardId is required`);const n=typeof e.cardId=="string"?e.cardId.trim():void 0;if(e.cardId!==void 0&&!n)throw new Error(`${o}.cardId must be a non-empty string`);const r=e.attachmentIndex;if(r!==void 0&&(typeof r!="number"||!Number.isInteger(r)||r<0))throw new Error(`${o}.attachmentIndex must be a non-negative integer`);return{dashboardId:t,...n?{cardId:n}:{},...typeof r=="number"?{attachmentIndex:r}:{}}}function y(e,o,t,n){if(e.kind!==o)return;v(e,["kind",t],n);const r=typeof e[t]=="string"?e[t].trim():"";if(!r)throw new Error(`${n}.${t} is required`);return r}function k(e,o){if(!u.isPlainJsonRecord(e))throw new Error(`${o} must be an object`);const t=y(e,"metric","metricId",o);if(t)return{kind:"metric",metricId:t};const n=y(e,"column","columnKey",o);if(n)return{kind:"column",columnKey:n};const r=y(e,"matrix_measure","measureId",o);if(r)return{kind:"matrix_measure",measureId:r};throw new Error(`${o} is not a valid numeric presentation target`)}const z=["type","inputUnit","outputStyle","largestUnit","smallestUnit","maxUnits","prefix","suffix","negativeStyle"];function L(e){return e==="millisecond"||e==="second"||e==="minute"||e==="hour"||e==="day"}function V(e,o){v(e,z,o);for(const i of["inputUnit","largestUnit","smallestUnit"])if(e[i]!==void 0&&!L(e[i]))throw new Error(`${o}.${i} must be a duration unit`);const t=e.outputStyle;if(t!==void 0&&t!=="compact"&&t!=="digital"&&t!=="long")throw new Error(`${o}.outputStyle must be compact, digital, or long`);const n=e.maxUnits;if(n!==void 0&&(typeof n!="number"||!Number.isInteger(n)||n<0||n>10))throw new Error(`${o}.maxUnits must be an integer from 0 to 10`);for(const i of["prefix","suffix"])if(e[i]!==void 0&&typeof e[i]!="string")throw new Error(`${o}.${i} must be a string`);const r=e.negativeStyle;if(r!==void 0&&r!=="minus"&&r!=="parentheses")throw new Error(`${o}.negativeStyle must be minus or parentheses`);return{type:"duration",...e.inputUnit!==void 0?{inputUnit:e.inputUnit}:{},...t!==void 0?{outputStyle:t}:{},...e.largestUnit!==void 0?{largestUnit:e.largestUnit}:{},...e.smallestUnit!==void 0?{smallestUnit:e.smallestUnit}:{},...n!==void 0?{maxUnits:n}:{},...e.prefix!==void 0?{prefix:e.prefix}:{},...e.suffix!==void 0?{suffix:e.suffix}:{},...r!==void 0?{negativeStyle:r}:{}}}function G(e,o){if(!u.isPlainJsonRecord(e))throw new Error(`${o} must be an object`);if(e.kind==="field"){v(e,["kind","fieldId","role"],o);const r=typeof e.fieldId=="string"?e.fieldId.trim():"";if(!r)throw new Error(`${o}.fieldId is required`);const i=e.role;if(i!==void 0&&i!=="groupby"&&i!=="pivotby")throw new Error(`${o}.role must be groupby or pivotby`);return{kind:"field",fieldId:r,...i?{role:i}:{}}}const t=y(e,"column","columnKey",o);if(t)return{kind:"column",columnKey:t};const n=y(e,"matrix_axis","axisInstanceId",o);if(n)return{kind:"matrix_axis",axisInstanceId:n};throw new Error(`${o} is not a valid temporal bucket presentation target`)}function H(e,o){if(!u.isPlainJsonRecord(e))throw new Error(`${o} must be an object`);const t=y(e,"column","columnKey",o);if(!t)throw new Error(`${o} must identify a column`);return{kind:"column",columnKey:t}}function Y(e){return[e.dashboardId,e.cardId??null,e.attachmentIndex??null]}function h(e){switch(e.kind){case"metric":return[e.kind,e.metricId];case"column":return[e.kind,e.columnKey];case"matrix_measure":return[e.kind,e.measureId];case"field":return[e.kind,e.fieldId,e.role??""];case"matrix_axis":return[e.kind,e.axisInstanceId]}}function g(e,o){return e.dashboardId===o.dashboardId&&e.cardId===o.cardId&&e.attachmentIndex===o.attachmentIndex}function x(e,o){const t=h(e),n=h(o);return t.length===n.length&&t.every((r,i)=>r===n[i])}function F(e){if(!Array.isArray(e))throw new Error("resolvedFormats must be an array");const o=new Set;return e.map((t,n)=>{var m,p;const r=`resolvedFormats.${n}`;if(!u.isPlainJsonRecord(t))throw new Error(`${r} must be an object`);v(t,["scope","target","format"],r);const i=S(t.scope,`${r}.scope`);if(!u.isPlainJsonRecord(t.format))throw new Error(`${r}.format must be an object`);let s;switch(t.format.type){case"temporal_bucket":{const l=u.parseResolvedTemporalBucketFormat(t.format);if(!l.ok)throw new Error(`${r}.format is invalid: ${((m=l.issues[0])==null?void 0:m.message)??"invalid value"}`);s={scope:i,target:G(t.target,`${r}.target`),format:l.value};break}case"raw_temporal":s={scope:i,target:H(t.target,`${r}.target`),format:_.parseResolvedRawTemporalFormat(t.format)};break;case"number":case"currency":case"percent":case"scientific":{const l=U.parseResolvedNumericCanonicalFormat(t.format);if(!l.ok)throw new Error(`${r}.format is invalid: ${((p=l.issues[0])==null?void 0:p.message)??"invalid value"}`);s={scope:i,target:k(t.target,`${r}.target`),format:l.value};break}case"duration":s={scope:i,target:k(t.target,`${r}.target`),format:V(t.format,`${r}.format`)};break;default:throw new Error(`${r}.format.type is unsupported`)}const c=JSON.stringify([...Y(s.scope),...h(s.target)]);if(o.has(c))throw new Error(`${r} duplicates a scoped presentation target`);return o.add(c),s})}function K(e){try{if(!u.isPlainJsonRecord(e))throw new Error("presentation execution snapshot must be an object");if(v(e,["version","reportContext","resolvedFormats"],"presentation execution snapshot"),e.version!==1)throw new Error("presentation execution snapshot version must be 1");const o=O.parseReportRuntimeContext(e.reportContext);if(!o.ok){const t=o.issues[0];throw new Error(`presentation execution snapshot reportContext is invalid: ${t!=null&&t.path&&t.path!=="$"?`${t.path}: `:""}${(t==null?void 0:t.message)??"invalid value"}`)}return{version:1,reportContext:o.value,resolvedFormats:F(e.resolvedFormats)}}catch(o){throw o instanceof b?o:new b(o instanceof Error?o.message:"Snapshot is invalid.")}}function Q(e){return K({version:1,reportContext:e.reportContext,resolvedFormats:[...e.resolvedFormats]})}function W(e){const o=j(e);return _.isNumericCanonicalFormat(o)?o:void 0}function j(e){const o=e.snapshot.resolvedFormats.find(t=>t.format.type!=="temporal_bucket"&&t.format.type!=="raw_temporal"&&g(t.scope,e.scope)&&x(t.target,e.target));return o==null?void 0:o.format}function X(e){const o=e.snapshot.resolvedFormats.find(t=>t.format.type==="raw_temporal"&&g(t.scope,e.scope)&&x(t.target,e.target));return o==null?void 0:o.format}function Z(e){const o=e.snapshot.resolvedFormats.find(t=>t.format.type==="temporal_bucket"&&g(t.scope,e.scope)&&x(t.target,e.target));return o==null?void 0:o.format}function ee(e){var r;const o=new Set,t=new Set;if(e.snapshot.resolvedFormats.forEach((i,s)=>{if(i.scope.attachmentIndex!==void 0)throw new Error(`resolvedFormats.${s}.scope.attachmentIndex is not valid for a card export`);if(i.scope.dashboardId!==e.expectedScope.dashboardId||i.scope.cardId!==e.expectedScope.cardId)throw new Error(`resolvedFormats.${s}.scope must match the executing dashboard/card`);if(i.target.kind==="field"&&i.format.type==="temporal_bucket"){const c=JSON.stringify(h(i.target));if(t.has(c))throw new Error(`resolvedFormats.${s} duplicates export field "${i.target.fieldId}"`);t.add(c);return}if(i.target.kind!=="column")throw new Error(`resolvedFormats.${s}.target must identify an export column or temporal pivot field`);if(o.has(i.target.columnKey))throw new Error(`resolvedFormats.${s} duplicates export column "${i.target.columnKey}"`);o.add(i.target.columnKey)}),!e.useFormattedValues)return;if(!((r=e.visibleColumns)!=null&&r.length))throw new Error("visibleColumns must identify every formatted export column");const n=e.visibleColumns.find(i=>!o.has(i));if(n)throw new Error(`resolvedFormats is missing visible export column "${n}"`)}function w(e){return Array.from(new Set((e??[]).flatMap(o=>typeof o.id=="string"&&o.id?[o.id]:[])))}function P(e){const o=new Map;return e.forEach(t=>{t.id&&o.set(t.id,(o.get(t.id)??0)+1)}),e.flatMap(t=>t.id&&(o.get(t.id)??0)>1?[N.resolveMetricResultAlias(t)]:[])}function te(e){const o=e.metricFields??[],t=w(o);return{expectedRoleFieldIds:{groupby:w(e.groupByFields),metric:t.length>0?t:[B.SEMAPHOR_GENERATED_COUNT_METRIC_ID],pivotby:w(e.pivotByFields),detail:w(e.detailFields)},expectedMetricAliases:P(o)}}class a extends Error{constructor(t,n){super(`invalid_pivot_result_lifecycle: ${t}`);f(this,"code","invalid_pivot_result_lifecycle");f(this,"deliveryBlocking",!0);this.cause=n,this.name="PivotResultLifecycleError"}}function oe(e){if(!Array.isArray(e)||e.some(t=>!t||typeof t!="object"||Array.isArray(t)||typeof t.key!="string"||!t.key||typeof t.name!="string"||typeof t.label!="string"))throw new a("Canonical pivot columns must be an array of keyed, named result descriptors.");const o=e;if(new Set(o.map(t=>t.key)).size!==o.length)throw new a("Canonical pivot column keys must be unique.");for(const t of o){const n=J.validateTemporalBucketResultColumn(t,{metadataRequired:!1});if(!n.ok)throw new a(`Canonical pivot column "${t.key}" has invalid temporal metadata: ${n.error.message}`)}return o}function E(e){if(!e||typeof e!="object"||Array.isArray(e)||e.version!==1||e.source!=="explorer"||!e.byRole||typeof e.byRole!="object"||Array.isArray(e.byRole))throw new a("A loaded canonical pivot result requires its role-scoped column key map.");const o=e,t=new Set(["groupby","metric","pivotby","detail"]);for(const[n,r]of Object.entries(o.byRole)){if(!t.has(n)||!r||typeof r!="object"||Array.isArray(r))throw new a(`Canonical pivot role map contains invalid "${n}" bindings.`);for(const[i,s]of Object.entries(r))if(!i||!s||typeof s!="object"||Array.isArray(s)||s.role!==n||typeof s.rawKey!="string"||!s.rawKey||s.outputKey!==void 0&&(typeof s.outputKey!="string"||!s.outputKey))throw new a(`Canonical pivot role map contains an invalid "${n}:${i}" binding.`)}if(o.byMetricAlias!==void 0){if(!o.byMetricAlias||typeof o.byMetricAlias!="object"||Array.isArray(o.byMetricAlias))throw new a("Canonical pivot metric-alias bindings must be an object.");for(const[n,r]of Object.entries(o.byMetricAlias))if(!n||!r||typeof r!="object"||Array.isArray(r)||r.role!=="metric"||typeof r.rawKey!="string"||!r.rawKey||r.outputKey!==void 0&&(typeof r.outputKey!="string"||!r.outputKey))throw new a(`Canonical pivot metric-alias map contains an invalid "${n}" binding.`)}return o}function re(e){if(e===void 0)return{};if(!e||typeof e!="object"||Array.isArray(e))throw new a("Canonical pivot column metadata must be an object.");for(const[o,t]of Object.entries(e)){if(!o||!t||typeof t!="object"||Array.isArray(t))throw new a(`Canonical pivot column metadata contains an invalid "${o}" classification.`);const{isSubtotal:n,subtotalScope:r}=t;if(n!==void 0&&typeof n!="boolean"||r!==void 0&&r!=="base"&&r!=="pivot-value"&&r!=="grand-total"||n===!0&&r!=="pivot-value"&&r!=="grand-total"||(r==="pivot-value"||r==="grand-total")&&n!==!0||r==="base"&&n===!0)throw new a(`Canonical pivot column metadata contains an incoherent "${o}" subtotal classification.`)}return e}function C(e,o){if(!Array.isArray(e)||e.some(t=>typeof t!="string"||!t)||new Set(e).size!==e.length)throw new a(`Canonical pivot contract ${o} must be an array of unique field identities.`);return e}function ne(e,o){if(!e||typeof e!="object"||Array.isArray(e)||e.version!==1)throw new a("A canonical pivot result requires its versioned result contract.");const t=e,n=t.expectedRoleFieldIds;if(!n||typeof n!="object"||Array.isArray(n))throw new a("Canonical pivot contract role identities must be an object.");const i=Object.fromEntries(["groupby","metric","pivotby","detail"].map(d=>[d,C(n[d],`expectedRoleFieldIds.${d}`)])),s=C(t.expectedMetricAliases,"expectedMetricAliases"),c=t.columnKinds;if(!c||typeof c!="object"||Array.isArray(c))throw new a("Canonical pivot contract column kinds must be an object.");const m=new Set(["row","pivot_metric","value"]),p=o.map(d=>d.key),l=Object.keys(c);if(l.length!==p.length||l.some(d=>!p.includes(d)||!m.has(c[d])))throw new a("Canonical pivot contract must classify every authoritative result column exactly once.");const R=re(t.columnClassifications);if(Object.keys(R).some(d=>!p.includes(d)))throw new a("Canonical pivot contract contains a classification for an unknown result column.");return{version:1,expectedRoleFieldIds:i,expectedMetricAliases:s,columnKinds:c,columnClassifications:R}}function $(e,o){const t=["groupby","metric","pivotby","detail"];for(const i of t){const s=new Set(o.expectedRoleFieldIds[i]??[]),c=Object.keys(e.byRole[i]??{});if(c.length!==s.size||c.some(m=>!s.has(m)))throw new a(`The role-scoped ${i} bindings do not match the authored result fields.`)}const n=new Set(o.expectedMetricAliases),r=Object.keys(e.byMetricAlias??{});if(r.length!==n.size||r.some(i=>!n.has(i)))throw new a("The metric-alias bindings do not match the authored metric instances.")}function ie(e){if(!Array.isArray(e)||e.some(o=>!o||typeof o!="object"||Array.isArray(o)))throw new a("Canonical pivot records must be an array of row objects.");return e}function se(e,o){e.forEach((t,n)=>{o.forEach(r=>{if(!Object.prototype.hasOwnProperty.call(t,r.key)||t[r.key]===void 0)throw new a(`Canonical pivot column "${r.key}" is absent from row ${n}.`)})})}function ae(e,o,t){const n=new Set(o.map(r=>r.key));["groupby","detail"].forEach(r=>{Object.entries(e.byRole[r]??{}).forEach(([i,s])=>{const c=s.outputKey||s.rawKey;if(!n.has(c)||t.columnKinds[c]!=="row")throw new a(`The role-scoped ${r} binding for "${i}" does not name an authoritative result column.`)})})}function A(e,o){o.forEach(t=>{const n=e.columnKinds[t.key];if(n==="pivot_metric"&&t.pivotIdentity===void 0)throw new a(`Physical pivot result column "${t.key}" is missing its identity.`);if(n!=="pivot_metric"&&t.pivotIdentity!==void 0)throw new a(`Canonical pivot result column "${t.key}" carries pivot identity outside the physical pivot projection.`)})}function M(e){const o=ie(e.records),t=oe(e.columns),n=ne(e.pivotResultContract,t),r=n.expectedRoleFieldIds.pivotby??[];if(e.pivotResultState==="loaded_empty"){if(o.length!==0)throw new a("A loaded_empty pivot result cannot carry records.");if(t.some(m=>n.columnKinds[m.key]==="pivot_metric"))throw new a("A loaded_empty pivot result cannot carry physical pivot columns.");A(n,t);const c=E(e.columnKeyMap);return $(c,n),{pivotResultState:"loaded_empty",records:[],columns:t,columnKeyMap:c,pivotResultContract:n}}if(e.pivotResultState!=="loaded_valid")throw new a("A canonical pivot result must declare loaded_empty or loaded_valid.");if(o.length===0)throw new a("A loaded_valid pivot result must carry at least one record.");const i=E(e.columnKeyMap);$(i,n),ae(i,t,n),A(n,t);const s=t.filter(c=>n.columnKinds[c.key]==="pivot_metric");if(r.length>0&&s.length===0)throw new a("A loaded_valid pivot result is missing its physical pivot columns.");try{I.requirePivotResultColumnIdentities(s,{expectedPivotFieldIds:r,columnClassifications:n.columnClassifications})}catch(c){throw c instanceof I.PivotResultIdentityError?new a(c.message,c):c}return se(o,t),{pivotResultState:"loaded_valid",records:o,columns:t,columnKeyMap:i,pivotResultContract:n}}function ce(e){const o=new Set;["groupby","detail"].forEach(i=>{Object.values(e.columnKeyMap.byRole[i]??{}).forEach(s=>{o.add(s.outputKey||s.rawKey)})});const t=new Set(e.physicalPivotColumnKeys),n=new Set(e.columns.map(i=>i.key)),r={version:1,expectedRoleFieldIds:{groupby:Array.from(new Set(e.expectedRoleFieldIds.groupby??[])),metric:Array.from(new Set(e.expectedRoleFieldIds.metric??[])),pivotby:Array.from(new Set(e.expectedRoleFieldIds.pivotby??[])),detail:Array.from(new Set(e.expectedRoleFieldIds.detail??[]))},expectedMetricAliases:[...e.expectedMetricAliases??[]],columnKinds:Object.fromEntries(e.columns.map(i=>[i.key,o.has(i.key)?"row":t.has(i.key)?"pivot_metric":"value"])),columnClassifications:Object.fromEntries(Object.entries(e.columnMetadata??{}).filter(([i])=>n.has(i)))};return M({pivotResultState:e.records.length===0?"loaded_empty":"loaded_valid",pivotResultContract:r,records:e.records,columns:e.columns,columnKeyMap:e.columnKeyMap})}exports.MissingResolvedRawTemporalFormatError=D;exports.PivotResultLifecycleError=a;exports.PresentationExecutionSnapshotError=b;exports.createCanonicalPivotResultTransport=ce;exports.createPresentationExecutionSnapshot=Q;exports.deriveMetricInstanceAliasExpectations=P;exports.derivePivotResultContractExpectations=te;exports.findResolvedMeasureFormat=j;exports.findResolvedNumericFormat=W;exports.findResolvedRawTemporalFormat=X;exports.findResolvedTemporalBucketFormat=Z;exports.parseCanonicalPivotResultTransport=M;exports.parsePresentationExecutionSnapshot=K;exports.parsePresentationScope=S;exports.parseResolvedPresentationEntries=F;exports.validateCardExportPresentationSnapshot=ee;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";var ne=Object.defineProperty;var re=(e,t,r)=>t in e?ne(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r;var C=(e,t,r)=>re(e,typeof t!="symbol"?t+"":t,r);const D=require("./validators-DFeDcdpA.cjs"),ae=require("./raw-temporal-contract-CklMVG_1.cjs"),oe=require("../value-format-preferences/index.cjs"),T=require("./temporal-bucket-4YEPEKlJ.cjs");function U(e){if(!e||typeof e!="object")return!1;const t=e.type;return t==="number"||t==="currency"||t==="percent"||t==="scientific"}function se(e){return U(e)||!!e&&typeof e=="object"&&e.type==="duration"}function ie(e,t){const r=de(t);return"formatToParts"in r?le(r,e):ue(r,e)}const ce={year:0,month:1,day:2,hour:3,minute:4,second:5};function le(e,t){try{const r=e.formatToParts(t),n=[];for(let o=0;o<r.length;o++){const a=ce[r[o].type];a!==void 0&&(n[a]=parseInt(r[o].value,10))}return n}catch(r){if(r instanceof RangeError)return[NaN];throw r}}function ue(e,t){const r=e.format(t),n=/(\d+)\/(\d+)\/(\d+),? (\d+):(\d+):(\d+)/.exec(r);return[parseInt(n[3],10),parseInt(n[1],10),parseInt(n[2],10),parseInt(n[4],10),parseInt(n[5],10),parseInt(n[6],10)]}const g={},R=new Intl.DateTimeFormat("en-US",{hourCycle:"h23",timeZone:"America/New_York",year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit",second:"2-digit"}).format(new Date("2014-06-25T04:00:00.123Z")),me=R==="06/25/2014, 00:00:00"||R==="06/25/2014 00:00:00";function de(e){return g[e]||(g[e]=me?new Intl.DateTimeFormat("en-US",{hourCycle:"h23",timeZone:e,year:"numeric",month:"numeric",day:"2-digit",hour:"2-digit",minute:"2-digit",second:"2-digit"}):new Intl.DateTimeFormat("en-US",{hour12:!1,timeZone:e,year:"numeric",month:"numeric",day:"2-digit",hour:"2-digit",minute:"2-digit",second:"2-digit"})),g[e]}function k(e,t,r,n,o,a,s){const i=new Date(0);return i.setUTCFullYear(e,t,r),i.setUTCHours(n,o,a,s),i}const A=36e5,fe=6e4,N={timezoneZ:/^(Z)$/,timezoneHH:/^([+-]\d{2})$/,timezoneHHMM:/^([+-])(\d{2}):?(\d{2})$/};function F(e,t,r){if(!e)return 0;let n=N.timezoneZ.exec(e);if(n)return 0;let o,a;if(n=N.timezoneHH.exec(e),n)return o=parseInt(n[1],10),O(o)?-(o*A):NaN;if(n=N.timezoneHHMM.exec(e),n){o=parseInt(n[2],10);const s=parseInt(n[3],10);return O(o,s)?(a=Math.abs(o)*A+s*fe,n[1]==="+"?-a:a):NaN}if(he(e)){t=new Date(t||Date.now());const s=r?t:pe(t),i=I(s,e);return-(r?i:Te(t,i,e))}return NaN}function pe(e){return k(e.getFullYear(),e.getMonth(),e.getDate(),e.getHours(),e.getMinutes(),e.getSeconds(),e.getMilliseconds())}function I(e,t){const r=ie(e,t),n=k(r[0],r[1]-1,r[2],r[3]%24,r[4],r[5],0).getTime();let o=e.getTime();const a=o%1e3;return o-=a>=0?a:1e3+a,n-o}function Te(e,t,r){let o=e.getTime()-t;const a=I(new Date(o),r);if(t===a)return t;o-=a-t;const s=I(new Date(o),r);return a===s?a:Math.max(a,s)}function O(e,t){return-23<=e&&e<=23&&(t==null||0<=t&&t<=59)}const E={};function he(e){if(E[e])return!0;try{return new Intl.DateTimeFormat(void 0,{timeZone:e}),E[e]=!0,!0}catch{return!1}}function P(e){const t=new Date(Date.UTC(e.getFullYear(),e.getMonth(),e.getDate(),e.getHours(),e.getMinutes(),e.getSeconds(),e.getMilliseconds()));return t.setUTCFullYear(e.getFullYear()),+e-+t}const K=/(Z|[+-]\d{2}(?::?\d{2})?| UTC| [a-zA-Z]+\/[a-zA-Z_]+(?:\/[a-zA-Z_]+)?)$/,_=36e5,$=6e4,we=2,f={dateTimePattern:/^([0-9W+-]+)(T| )(.*)/,datePattern:/^([0-9W+-]+)(.*)/,YY:/^(\d{2})$/,YYY:[/^([+-]\d{2})$/,/^([+-]\d{3})$/,/^([+-]\d{4})$/],YYYY:/^(\d{4})/,YYYYY:[/^([+-]\d{4})/,/^([+-]\d{5})/,/^([+-]\d{6})/],MM:/^-(\d{2})$/,DDD:/^-?(\d{3})$/,MMDD:/^-?(\d{2})-?(\d{2})$/,Www:/^-?W(\d{2})$/,WwwD:/^-?W(\d{2})-?(\d{1})$/,HH:/^(\d{2}([.,]\d*)?)$/,HHMM:/^(\d{2}):?(\d{2}([.,]\d*)?)$/,HHMMSS:/^(\d{2}):?(\d{2}):?(\d{2}([.,]\d*)?)$/,timeZone:K};function M(e,t={}){if(arguments.length<1)throw new TypeError("1 argument required, but only "+arguments.length+" present");if(e===null)return new Date(NaN);const r=t.additionalDigits==null?we:Number(t.additionalDigits);if(r!==2&&r!==1&&r!==0)throw new RangeError("additionalDigits must be 0, 1 or 2");if(e instanceof Date||typeof e=="object"&&Object.prototype.toString.call(e)==="[object Date]")return new Date(e.getTime());if(typeof e=="number"||Object.prototype.toString.call(e)==="[object Number]")return new Date(e);if(Object.prototype.toString.call(e)!=="[object String]")return new Date(NaN);const n=ye(e),{year:o,restDateString:a}=Se(n.date,r),s=De(a,o);if(s===null||isNaN(s.getTime()))return new Date(NaN);if(s){const i=s.getTime();let m=0,l;if(n.time&&(m=ge(n.time),m===null||isNaN(m)))return new Date(NaN);if(n.timeZone||t.timeZone){if(l=F(n.timeZone||t.timeZone,new Date(i+m)),isNaN(l))return new Date(NaN)}else l=P(new Date(i+m)),l=P(new Date(i+m+l));return new Date(i+m+l)}else return new Date(NaN)}function ye(e){const t={};let r=f.dateTimePattern.exec(e),n;if(r?(t.date=r[1],n=r[3]):(r=f.datePattern.exec(e),r?(t.date=r[1],n=r[2]):(t.date=null,n=e)),n){const o=f.timeZone.exec(n);o?(t.time=n.replace(o[1],""),t.timeZone=o[1].trim()):t.time=n}return t}function Se(e,t){if(e){const r=f.YYY[t],n=f.YYYYY[t];let o=f.YYYY.exec(e)||n.exec(e);if(o){const a=o[1];return{year:parseInt(a,10),restDateString:e.slice(a.length)}}if(o=f.YY.exec(e)||r.exec(e),o){const a=o[1];return{year:parseInt(a,10)*100,restDateString:e.slice(a.length)}}}return{year:null}}function De(e,t){if(t===null)return null;let r,n,o;if(!e||!e.length)return r=new Date(0),r.setUTCFullYear(t),r;let a=f.MM.exec(e);if(a)return r=new Date(0),n=parseInt(a[1],10)-1,H(t,n)?(r.setUTCFullYear(t,n),r):new Date(NaN);if(a=f.DDD.exec(e),a){r=new Date(0);const s=parseInt(a[1],10);return ve(t,s)?(r.setUTCFullYear(t,0,s),r):new Date(NaN)}if(a=f.MMDD.exec(e),a){r=new Date(0),n=parseInt(a[1],10)-1;const s=parseInt(a[2],10);return H(t,n,s)?(r.setUTCFullYear(t,n,s),r):new Date(NaN)}if(a=f.Www.exec(e),a)return o=parseInt(a[1],10)-1,L(o)?x(t,o):new Date(NaN);if(a=f.WwwD.exec(e),a){o=parseInt(a[1],10)-1;const s=parseInt(a[2],10)-1;return L(o,s)?x(t,o,s):new Date(NaN)}return null}function ge(e){let t,r,n=f.HH.exec(e);if(n)return t=parseFloat(n[1].replace(",",".")),v(t)?t%24*_:NaN;if(n=f.HHMM.exec(e),n)return t=parseInt(n[1],10),r=parseFloat(n[2].replace(",",".")),v(t,r)?t%24*_+r*$:NaN;if(n=f.HHMMSS.exec(e),n){t=parseInt(n[1],10),r=parseInt(n[2],10);const o=parseFloat(n[3].replace(",","."));return v(t,r,o)?t%24*_+r*$+o*1e3:NaN}return null}function x(e,t,r){t=t||0,r=r||0;const n=new Date(0);n.setUTCFullYear(e,0,4);const o=n.getUTCDay()||7,a=t*7+r+1-o;return n.setUTCDate(n.getUTCDate()+a),n}const Ne=[31,28,31,30,31,30,31,31,30,31,30,31],_e=[31,29,31,30,31,30,31,31,30,31,30,31];function j(e){return e%400===0||e%4===0&&e%100!==0}function H(e,t,r){if(t<0||t>11)return!1;if(r!=null){if(r<1)return!1;const n=j(e);if(n&&r>_e[t]||!n&&r>Ne[t])return!1}return!0}function ve(e,t){if(t<1)return!1;const r=j(e);return!(r&&t>366||!r&&t>365)}function L(e,t){return!(e<0||e>52||t!=null&&(t<0||t>6))}function v(e,t,r){return!(e<0||e>=25||t!=null&&(t<0||t>=60)||r!=null&&(r<0||r>=60))}function q(e,t,r){if(typeof e=="string"&&!e.match(K))return M(e,{...r,timeZone:t});e=M(e,r);const n=k(e.getFullYear(),e.getMonth(),e.getDate(),e.getHours(),e.getMinutes(),e.getSeconds(),e.getMilliseconds()).getTime(),o=F(t,new Date(n));return new Date(n+o)}class w extends Error{constructor(r,n){super(n);C(this,"code");this.name="RawTemporalFormatContractError",this.code=r}}const ze=["SSSSSSSSS","SSSSSSSS","SSSSSSS","SSSSSS","SSSSS","SSSS","SSS","SS","S"],W=/^(\d{4})-(\d{2})-(\d{2})$/,V=/^(\d{4})-(\d{2})-(\d{2})[T ](\d{2}):(\d{2})(?::(\d{2})(?:\.(\d{1,9}))?)?$/,J=/^(\d{4})-(\d{2})-(\d{2})[T ](\d{2}):(\d{2})(?::(\d{2})(?:\.(\d{1,9}))?)?(Z|[+-]\d{2}:\d{2})$/,Ie=["yyyy","MMMM","LLLL","zzz","XXX","MMM","LLL","yy","MM","dd","HH","hh","mm","ss","M","d","H","h","m","s","a"],Me=new Set(["HH","H","hh","h","mm","m","ss","s","a",...ze]),Ye=new Set(["zzz","XXX"]),z=new Set(["short","medium","long"]);function h(e,t){return Object.keys(e).length===t.length&&t.every(n=>n in e)}function c(e){throw new w("invalid_raw_temporal_format",e)}function X(e){if(!e||e.trim()!==e||e.length>256)return c("date_fns patterns must be non-empty, trimmed, and at most 256 characters.");const t=[],r=o=>{const a=t[t.length-1];(a==null?void 0:a.kind)==="literal"?a.value+=o:t.push({kind:"literal",value:o})};let n=0;for(;n<e.length;){if(e[n]==="'"){if(e[n+1]==="'"){r("'"),n+=2;continue}let s="",i=!1;for(n+=1;n<e.length;){if(e[n]==="'"){if(e[n+1]==="'"){s+="'",n+=2;continue}i=!0,n+=1;break}s+=e[n],n+=1}if(!i)return c("date_fns pattern has an unclosed quote.");r(s);continue}if(e[n]==="S"){let s=n+1;for(;e[s]==="S";)s+=1;const i=e.slice(n,s);if(i.length>9)return c("date_fns fractional-second tokens support at most nine digits.");t.push({kind:"token",value:i}),n=s;continue}const o=Ie.find(s=>e.startsWith(s,n));if(o){t.push({kind:"token",value:o}),n+=o.length;continue}const a=e[n];if(/[A-Za-z]/.test(a))return c(`Unsupported date_fns pattern token beginning at "${e.slice(n)}".`);r(a),n+=1}return t.some(o=>o.kind==="token")?t:c("date_fns patterns must contain at least one token.")}function G(e,t){if(e==="semaphor_tokens"){const r=T.tokenizeTemporalBucketPattern(t);r.ok||c(r.message);return}X(t)}function ke(e){return!T.isPlainJsonRecord(e)||!h(e,["dateStyle","dateTime"])?c("Automatic raw temporal styles are incomplete."):z.has(e.dateStyle)?!T.isPlainJsonRecord(e.dateTime)||!h(e.dateTime,["dateStyle","timeStyle"])||!z.has(e.dateTime.dateStyle)||!z.has(e.dateTime.timeStyle)?c("Automatic dateTime styles are incomplete or invalid."):{dateStyle:e.dateStyle,dateTime:{dateStyle:e.dateTime.dateStyle,timeStyle:e.dateTime.timeStyle}}:c("Automatic dateStyle is invalid.")}function b(e){const t=["type","locale","calendarTimezone","presentation"],r=[...t,"sourceTimezone"];if(!T.isPlainJsonRecord(e)||!h(e,t)&&!h(e,r)||e.type!=="raw_temporal")return c("Resolved raw temporal format has an invalid shape.");const n=oe.canonicalizeSupportedLocale(e.locale);return n?typeof e.calendarTimezone!="string"||!D.isValidIanaTimeZone(e.calendarTimezone)?c("Raw temporal calendarTimezone must be a valid IANA timezone."):e.sourceTimezone!==void 0&&(typeof e.sourceTimezone!="string"||!D.isValidIanaTimeZone(e.sourceTimezone))?c("Raw temporal sourceTimezone must be a valid IANA timezone."):T.isPlainJsonRecord(e.presentation)?e.presentation.mode==="auto"?h(e.presentation,["mode","styles"])?{type:"raw_temporal",locale:n,calendarTimezone:e.calendarTimezone,...e.sourceTimezone?{sourceTimezone:e.sourceTimezone}:{},presentation:{mode:"auto",styles:ke(e.presentation.styles)}}:c("Automatic raw temporal presentation has unknown fields."):e.presentation.mode!=="pattern"||!h(e.presentation,["mode","dialect","pattern"])||e.presentation.dialect!=="semaphor_tokens"&&e.presentation.dialect!=="date_fns"||typeof e.presentation.pattern!="string"?c("Pattern raw temporal presentation has an invalid shape."):(G(e.presentation.dialect,e.presentation.pattern),{type:"raw_temporal",locale:n,calendarTimezone:e.calendarTimezone,...e.sourceTimezone?{sourceTimezone:e.sourceTimezone}:{},presentation:{mode:"pattern",dialect:e.presentation.dialect,pattern:e.presentation.pattern}}):c("Raw temporal presentation must be an object."):c("Raw temporal locale is invalid or unsupported.")}function Fe(e){var i,m,l;if(e.format){if(!T.isPlainJsonRecord(e.format))return c("Authored raw temporal format has an invalid shape.");const u=Object.keys(e.format);if(!u.includes("type")||!u.includes("presentation")||u.some(p=>p!=="type"&&p!=="presentation"&&p!=="timezone"&&p!=="sourceTimezone")||e.format.type!=="raw_temporal"||!T.isPlainJsonRecord(e.format.presentation))return c("Authored raw temporal format has an invalid shape.");const d=e.format.presentation;if(d.mode==="auto"){if(!h(d,["mode"]))return c("Automatic authored raw temporal format has unknown fields.")}else{if(d.mode!=="pattern"||!h(d,["mode","dialect","pattern"])||d.dialect!=="semaphor_tokens"&&d.dialect!=="date_fns"||typeof d.pattern!="string")return c("Authored raw temporal pattern has an invalid shape.");G(d.dialect,d.pattern)}}const t=(i=e.format)==null?void 0:i.timezone,r=(m=e.format)==null?void 0:m.sourceTimezone,n=t&&t!=="auto"?t:e.calendar.tz,o=r&&r!=="auto"?r==="local"?Intl.DateTimeFormat().resolvedOptions().timeZone:r:void 0;if(t!==void 0&&t!=="auto"&&!D.isValidIanaTimeZone(n)||o!==void 0&&!D.isValidIanaTimeZone(o))return c("Authored raw temporal timezone is invalid.");const a=((l=e.format)==null?void 0:l.presentation)??{mode:"auto"},s={type:"raw_temporal",locale:e.preferences.locale,calendarTimezone:n,...o?{sourceTimezone:o}:{},presentation:a.mode==="pattern"?{...a}:{mode:"auto",styles:{dateStyle:e.preferences.dateStyle,dateTime:{...e.preferences.dateTime}}}};return b(s)}function be(e){if(W.test(e))return"date";if(J.test(e))return"instant";if(V.test(e))return"wall_datetime"}function Ce(e){const t=new Set;let r=!1;for(const n of e.values){if(n===null)continue;r=!0;const o=be(n);o&&t.add(o)}if(!r)return{status:"empty"};if(t.size===0)return{status:"invalid_only"};if(t.size>1)throw new w("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 Re(e){return{version:1,columns:Object.fromEntries([...e].map(([t,r])=>[t,r.status==="classified"?r.metadata.valueKind:r.status]))}}function B(e){if(!T.isPlainJsonRecord(e)||e.version!==1||!T.isPlainJsonRecord(e.columns)||Object.keys(e).some(n=>n!=="version"&&n!=="columns"))throw new w("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[n,o]of Object.entries(e.columns)){if(!n.trim()||!r.has(o))throw new w("invalid_raw_temporal_format","Raw temporal chunk classification evidence contains an invalid column or status.");t[n]=o}return{version:1,columns:t}}function Ae(e){if(e.length===0)return;const t=e.map(B),r=Object.keys(t[0].columns).sort();for(let n=1;n<t.length;n+=1){const o=Object.keys(t[n].columns).sort();if(o.length!==r.length||o.some((a,s)=>a!==r[s]))throw new w("invalid_raw_temporal_format","Raw temporal chunk classification evidence has inconsistent columns.")}for(const n of r)if(new Set(t.map(a=>a.columns[n]).filter(a=>a!=="empty"&&a!=="invalid_only")).size>1)throw new w("mixed_sql_temporal_semantics",`Declared SQL temporal column "${n}" has inconsistent semantics across export chunks. Normalize it to one kind.`)}function Oe(e){return e%4===0&&(e%100!==0||e%400===0)}function Ee(e,t){return t===2?Oe(e)?29:28:[4,6,9,11].includes(t)?30:31}function Pe(e){return e.year>=1&&e.year<=9999&&e.month>=1&&e.month<=12&&e.day>=1&&e.day<=Ee(e.year,e.month)&&e.hour>=0&&e.hour<=23&&e.minute>=0&&e.minute<=59&&e.second>=0&&e.second<=59}function $e(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 xe(e,t){const r=t==="date"?e.match(W):t==="wall_datetime"?e.match(V):e.match(J);if(!r)return{status:"invalid_shape"};const n=$e(r);if(!Pe(n))return{status:"out_of_range"};if(t==="instant"){const o=r[8];if(o&&o!=="Z"){const[s,i]=o.slice(1).split(":").map(Number);if(s>23||i>59)return{status:"out_of_range"}}const a=new Date(e.replace(" ","T"));return Number.isNaN(a.getTime())?{status:"out_of_range"}:{status:"valid",fields:n,instant:a}}return{status:"valid",fields:n}}function Y(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 Q(e,t){const r=e.fraction?`.${e.fraction.padEnd(3,"0").slice(0,3)}`:"";return q(`${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 He(e,t){const r=new Map,n=new Map;let o,a,s,i;return{number(m,l=1){let u=r.get(l);return u||(u=new Intl.NumberFormat(e,{useGrouping:!1,minimumIntegerDigits:l,maximumFractionDigits:0}),r.set(l,u)),u.format(m)},month(m,l,u){var y;const d=`${l}:${u?"standalone":"contextual"}`;let p=n.get(d);if(!p){const S={calendar:"gregory",timeZone:"UTC",month:l};u||(S.day="numeric"),p=new Intl.DateTimeFormat(e,S),n.set(d,p)}return((y=p.formatToParts(m).find(S=>S.type==="month"))==null?void 0:y.value)??""},dayPeriod(m){var l;return o??(o=new Intl.DateTimeFormat(e,{calendar:"gregory",timeZone:"UTC",hour:"numeric",hour12:!0})),((l=o.formatToParts(m).find(u=>u.type==="dayPeriod"))==null?void 0:l.value)??""},instantFields(m){a??(a=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 l=a.formatToParts(m),u=d=>{var p;return Number((p=l.find(y=>y.type===d))==null?void 0:p.value)};return{year:u("year"),month:u("month"),day:u("day"),hour:u("hour"),minute:u("minute"),second:u("second"),fraction:""}},timezoneName(m){var l;return s??(s=new Intl.DateTimeFormat(e,{calendar:"gregory",timeZone:t,timeZoneName:"short"})),((l=s.formatToParts(m).find(u=>u.type==="timeZoneName"))==null?void 0:l.value)??""},timezoneOffset(m){var d;i??(i=new Intl.DateTimeFormat("en-US",{calendar:"gregory",timeZone:t,timeZoneName:"longOffset"}));const l=(d=i.formatToParts(m).find(p=>p.type==="timeZoneName"))==null?void 0:d.value;if(!l)return c("Unable to resolve the instant timezone offset.");const u=l.replace(/^GMT/,"");return u===""||/^[+-]00:00$/.test(u)?"Z":u}}}function Le(e,t,r,n,o){if(/^S{1,9}$/.test(e)){const a=t.fraction.padEnd(e.length,"0").slice(0,e.length);return n.number(Number(a),e.length)}switch(e){case"YYYY":case"yyyy":return n.number(t.year,4);case"YY":case"yy":return n.number(t.year%100,2);case"MMMM":return n.month(r,"long",!1);case"LLLL":return n.month(r,"long",!0);case"MMM":return n.month(r,"short",!1);case"LLL":return n.month(r,"short",!0);case"MM":return n.number(t.month,2);case"M":return n.number(t.month);case"DD":case"dd":return n.number(t.day,2);case"d":return n.number(t.day);case"HH":return n.number(t.hour,2);case"H":return n.number(t.hour);case"hh":return n.number(t.hour%12||12,2);case"h":return n.number(t.hour%12||12);case"mm":return n.number(t.minute,2);case"m":return n.number(t.minute);case"ss":return n.number(t.second,2);case"s":return n.number(t.second);case"a":return n.dayPeriod(r);case"zzz":return o?n.timezoneName(o):c("Timezone pattern tokens require an instant value.");case"XXX":return o?n.timezoneOffset(o):c("Timezone pattern tokens require an instant value.");default:return c(`Unsupported raw temporal pattern token "${e}".`)}}function Ze(e,t,r,n){const o=Y(t);return e.map(a=>a.kind==="literal"?a.value:Le(a.value,t,o,r,n)).join("")}function ee(e,t,r){const n=t==="date_fns"?X(r):(()=>{const a=T.tokenizeTemporalBucketPattern(r);return a.ok?a.segments:c(a.message)})(),o=n.filter(a=>a.kind==="token").map(a=>a.value);return e==="date"&&o.some(a=>Me.has(a))?c("Date patterns cannot contain time tokens."):e!=="instant"&&o.some(a=>Ye.has(a))?c("Timezone pattern tokens require an instant value."):n}function Ue(e){ee(e.valueKind??"instant",e.dialect,e.pattern)}function Ke(e,t,r,n){const o=ee(e.valueKind,r,n),a=He(t.locale,t.calendarTimezone);return s=>{const i=e.valueKind==="wall_datetime"&&t.sourceTimezone?Q(s.fields,t.sourceTimezone):void 0,m=e.valueKind==="instant"?{...a.instantFields(s.instant),fraction:s.fields.fraction}:i?{...a.instantFields(i),fraction:s.fields.fraction}:s.fields;return Ze(o,m,a,s.instant??i)}}function je(e,t){const r=t.presentation.mode==="auto"?t.presentation.styles:c("Automatic raw temporal formatting requires styles.");if(e.valueKind==="date"){const s=new Intl.DateTimeFormat(t.locale,{calendar:"gregory",timeZone:"UTC",dateStyle:r.dateStyle});return i=>s.format(Y(i.fields))}const n=e.valueKind==="instant",o=!n&&r.dateTime.timeStyle==="long"?"medium":r.dateTime.timeStyle,a=new Intl.DateTimeFormat(t.locale,{calendar:"gregory",timeZone:n||e.valueKind==="wall_datetime"&&t.sourceTimezone?t.calendarTimezone:"UTC",dateStyle:r.dateTime.dateStyle,timeStyle:o});return s=>n?a.format(s.instant):e.valueKind==="wall_datetime"&&t.sourceTimezone?a.format(Q(s.fields,t.sourceTimezone)):a.format(Y(s.fields))}function Z(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 te(e){const t=ae.parseRawTemporalValueMetadata(e.metadata),r=b(e.format),n=r.presentation.mode==="auto"?je(t,r):Ke(t,r,r.presentation.dialect,r.presentation.pattern);return o=>{if(o===null)return{ok:!0,text:"",status:"empty"};const a=xe(o,t.valueKind);return a.status==="invalid_shape"?Z(o,t,"invalid_raw_temporal_value"):a.status==="out_of_range"?Z(o,t,"out_of_range_raw_temporal_value"):{ok:!0,text:n(a),status:"formatted"}}}function qe(e){return te({metadata:e.metadata,format:e.format})(e.value)}exports.RawTemporalFormatContractError=w;exports.assertRawTemporalChunkClassificationAgreement=Ae;exports.classifyDeclaredSqlTemporalColumn=Ce;exports.createRawTemporalChunkClassificationEvidence=Re;exports.formatRawTemporalValue=qe;exports.fromZonedTime=q;exports.isMeasureCanonicalFormat=se;exports.isNumericCanonicalFormat=U;exports.parseRawTemporalChunkClassificationEvidence=B;exports.parseResolvedRawTemporalFormat=b;exports.prepareRawTemporalFormatter=te;exports.resolveRawTemporalFormat=Fe;exports.toDate=M;exports.tzParseTimezone=F;exports.validateRawTemporalPattern=Ue;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";var l=Object.defineProperty;var i=(a,e,t)=>e in a?l(a,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):a[e]=t;var n=(a,e,t)=>i(a,typeof e!="symbol"?e+"":e,t);const s=require("./validators-DFeDcdpA.cjs");class r extends Error{constructor(t){super(t);n(this,"code");this.name="RawTemporalMetadataContractError",this.code=s.RAW_TEMPORAL_CONTRACT_ERROR_CODES.invalidMetadata}}function m(a){if(a===null||typeof a!="object"||Array.isArray(a))return!1;const e=Object.getPrototypeOf(a);return e===null||e===Object.prototype}function d(a){if(!m(a))throw new r("Raw temporal metadata must be an object.");const e=Object.keys(a);if(e.length!==2||!e.includes("kind")||!e.includes("valueKind"))throw new r("Raw temporal metadata must contain only kind and valueKind.");if(a.kind!=="raw_temporal")throw new r("Raw temporal metadata kind must be raw_temporal.");if(a.valueKind!=="date"&&a.valueKind!=="wall_datetime"&&a.valueKind!=="instant")throw new r("Raw temporal valueKind must be date, wall_datetime, or instant.");return{kind:"raw_temporal",valueKind:a.valueKind}}function w(a,e){if(!a.rawTemporal){if(e.metadataRequired)throw new r("Activated raw temporal result is missing metadata.");return}if(a.temporalBucket)throw new r("A result column cannot carry both raw and grouped temporal metadata.");const t=d(a.rawTemporal),o=t.valueKind==="date"?"date":"datetime";if(a.dataType!==o)throw new r(`${t.valueKind} raw temporal values require dataType ${o}.`);return t}exports.RawTemporalMetadataContractError=r;exports.parseRawTemporalValueMetadata=d;exports.validateRawTemporalResultColumn=w;
|