react-semaphor 0.1.456 → 0.1.459

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (45) hide show
  1. package/dist/brand-studio/index.cjs +1 -1
  2. package/dist/brand-studio/index.js +1 -1
  3. package/dist/briefings/index.cjs +1 -1
  4. package/dist/briefings/index.js +2 -2
  5. package/dist/chunks/{dashboard-briefing-launcher-DPbSnj9m.js → dashboard-briefing-launcher-ClCj98sq.js} +5 -5
  6. package/dist/chunks/{dashboard-briefing-launcher-B_ZDOOzA.cjs → dashboard-briefing-launcher-DHtEouuH.cjs} +1 -1
  7. package/dist/chunks/{dashboard-controls-yOJOMobf.js → dashboard-controls-B8gsKlxc.js} +5 -5
  8. package/dist/chunks/{dashboard-controls-BBnq7SH-.cjs → dashboard-controls-VRShl9J0.cjs} +1 -1
  9. package/dist/chunks/{dashboard-json-BEw43pFy.cjs → dashboard-json-BhvPMpZA.cjs} +1 -1
  10. package/dist/chunks/{dashboard-json-ChYuh43q.js → dashboard-json-i_Auue_K.js} +3 -3
  11. package/dist/chunks/{edit-dashboard-visual-DvAI9rwj.js → edit-dashboard-visual-B3JF0fe4.js} +648 -642
  12. package/dist/chunks/{edit-dashboard-visual-DDVhyor8.cjs → edit-dashboard-visual-DWWyT55u.cjs} +10 -10
  13. package/dist/chunks/{editor-action-buttons-BnMAJDMZ.cjs → editor-action-buttons-BTlCsP63.cjs} +1 -1
  14. package/dist/chunks/{editor-action-buttons-FCsvW-0C.js → editor-action-buttons-C9x3nGnb.js} +3 -3
  15. package/dist/chunks/{index-DrYILnh0.js → index-BIFLI8ul.js} +1 -1
  16. package/dist/chunks/{index-xki38iaF.js → index-BS2-ZZGf.js} +11182 -11140
  17. package/dist/chunks/{index-DEwVo0GH.cjs → index-DHF-2AqS.cjs} +4 -4
  18. package/dist/chunks/{index-C99Ow35Y.cjs → index-k8tEp0ys.cjs} +1 -1
  19. package/dist/chunks/{pivot-header-presentation-DhyQXxKq.cjs → pivot-header-presentation-B9nXXKlW.cjs} +1 -1
  20. package/dist/chunks/{pivot-header-presentation-ckYOQ4aZ.js → pivot-header-presentation-D-0jvUwn.js} +1 -1
  21. package/dist/chunks/{pivot-result-lifecycle-sjzIOpvp.js → pivot-result-lifecycle-CHWEGU2o.js} +60 -58
  22. package/dist/chunks/{pivot-result-lifecycle-DmcF1ris.cjs → pivot-result-lifecycle-DTLRuDEW.cjs} +1 -1
  23. package/dist/chunks/{report-preferences-dialog-VRe-9gct.js → report-preferences-dialog-BDpkcUtz.js} +2 -2
  24. package/dist/chunks/{report-preferences-dialog-CdHVi8_W.cjs → report-preferences-dialog-BK0yAJnQ.cjs} +1 -1
  25. package/dist/chunks/{switch-BOBLNHUj.js → switch-DQR-Va05.js} +457 -439
  26. package/dist/chunks/{switch-BHOdIXq3.cjs → switch-f3TuZNLr.cjs} +16 -16
  27. package/dist/dashboard/index.cjs +1 -1
  28. package/dist/dashboard/index.js +1 -1
  29. package/dist/data-app-builder/index.cjs +1 -1
  30. package/dist/data-app-builder/index.js +2 -2
  31. package/dist/format-utils/index.cjs +3 -3
  32. package/dist/format-utils/index.js +81 -80
  33. package/dist/index.cjs +1 -1
  34. package/dist/index.js +6 -6
  35. package/dist/surfboard/index.cjs +1 -1
  36. package/dist/surfboard/index.js +2 -2
  37. package/dist/types/briefings.d.ts +2 -0
  38. package/dist/types/dashboard-authoring.d.ts +2 -0
  39. package/dist/types/dashboard.d.ts +2 -0
  40. package/dist/types/format-utils.d.ts +6 -0
  41. package/dist/types/main.d.ts +2 -0
  42. package/dist/types/shared.d.ts +2 -0
  43. package/dist/types/surfboard.d.ts +2 -0
  44. package/dist/types/types.d.ts +2 -0
  45. package/package.json +1 -1
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("../chunks/index-DEwVo0GH.cjs"),e=require("../chunks/common-types-C57kJ59w.cjs");exports.Dashboard=o.Dashboard;exports.CONTROL_CARD_DEFAULT_VALUE=e.CONTROL_CARD_DEFAULT_VALUE;exports.EMPTY_SELECTION=e.EMPTY_SELECTION;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("../chunks/index-DHF-2AqS.cjs"),e=require("../chunks/common-types-C57kJ59w.cjs");exports.Dashboard=o.Dashboard;exports.CONTROL_CARD_DEFAULT_VALUE=e.CONTROL_CARD_DEFAULT_VALUE;exports.EMPTY_SELECTION=e.EMPTY_SELECTION;
@@ -1,4 +1,4 @@
1
- import { D as o } from "../chunks/index-xki38iaF.js";
1
+ import { D as o } from "../chunks/index-BS2-ZZGf.js";
2
2
  import { C as s, E as C } from "../chunks/common-types-H51FLKB7.js";
3
3
  export {
4
4
  s as CONTROL_CARD_DEFAULT_VALUE,
@@ -1,4 +1,4 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),p=require("react"),An=require("react-dom/client"),k=require("../chunks/index-DEwVo0GH.cjs"),w=require("../chunks/switch-BHOdIXq3.cjs"),Ze=require("../data-app-builder-browser-runtime/index.cjs"),te=require("../chunks/x-B6ghREd2.cjs"),Cn=require("../chunks/save-3dYRmehL.cjs"),Rn=require("../chunks/mouse-pointer-2-DX4A_XZw.cjs"),tt=require("../chunks/search-BqqhaMx9.cjs");function Tr(t){const s=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(t){for(const a in t)if(a!=="default"){const d=Object.getOwnPropertyDescriptor(t,a);Object.defineProperty(s,a,d.get?d:{enumerable:!0,get:()=>t[a]})}}return s.default=t,Object.freeze(s)}const Bn=Tr(p),Dn=Tr(An);/**
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),p=require("react"),An=require("react-dom/client"),k=require("../chunks/index-DHF-2AqS.cjs"),w=require("../chunks/switch-f3TuZNLr.cjs"),Ze=require("../data-app-builder-browser-runtime/index.cjs"),te=require("../chunks/x-B6ghREd2.cjs"),Cn=require("../chunks/save-3dYRmehL.cjs"),Rn=require("../chunks/mouse-pointer-2-DX4A_XZw.cjs"),tt=require("../chunks/search-BqqhaMx9.cjs");function Tr(t){const s=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(t){for(const a in t)if(a!=="default"){const d=Object.getOwnPropertyDescriptor(t,a);Object.defineProperty(s,a,d.get?d:{enumerable:!0,get:()=>t[a]})}}return s.default=t,Object.freeze(s)}const Bn=Tr(p),Dn=Tr(An);/**
2
2
  * @license lucide-react v0.453.0 - ISC
3
3
  *
4
4
  * This source code is licensed under the ISC license.
@@ -2,8 +2,8 @@ import { jsx as r, jsxs as c, Fragment as re } from "react/jsx-runtime";
2
2
  import * as Zn from "react";
3
3
  import { useContext as qn, useState as x, useRef as oe, useMemo as je, useEffect as W, useCallback as Ot } from "react";
4
4
  import * as Xn from "react-dom/client";
5
- import { aM as ea, aN as ta, aO as Ir, aP as jr, aQ as zr, aR as ra, aS as Wr, aT as Hr, aU as Jr, aV as Vr, aW as _r, aX as Ur, aY as Gr, aZ as na, a_ as aa, a$ as oa, b0 as Ht, b1 as on, R as Kr, b2 as sa, b3 as Vt, b4 as sn, b5 as ia, b6 as la } from "../chunks/index-xki38iaF.js";
6
- import { B as H, P as it, a as lt, b as dt, _ as da, $ as ca, a0 as ua, a1 as pa, a2 as ha, L as me, R as ma, d as _t } from "../chunks/switch-BOBLNHUj.js";
5
+ import { aM as ea, aN as ta, aO as Ir, aP as jr, aQ as zr, aR as ra, aS as Wr, aT as Hr, aU as Jr, aV as Vr, aW as _r, aX as Ur, aY as Gr, aZ as na, a_ as aa, a$ as oa, b0 as Ht, b1 as on, R as Kr, b2 as sa, b3 as Vt, b4 as sn, b5 as ia, b6 as la } from "../chunks/index-BS2-ZZGf.js";
6
+ import { B as H, P as it, a as lt, b as dt, _ as da, $ as ca, a0 as ua, a1 as pa, a2 as ha, L as me, R as ma, d as _t } from "../chunks/switch-DQR-Va05.js";
7
7
  import { loadSemaphorBrowserRuntime as ot } from "../data-app-builder-browser-runtime/index.js";
8
8
  import { c as Ve, X as He } from "../chunks/x-CXDkqdur.js";
9
9
  import { S as fa } from "../chunks/save-DgMfP0j8.js";
@@ -1,3 +1,3 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const g=require("../chunks/format-types-PSZZ7hG8.cjs"),n=require("../chunks/pivot-result-lifecycle-DmcF1ris.cjs"),s=require("../chunks/pivot-header-presentation-DhyQXxKq.cjs"),f=require("../chunks/validators-BDYprKI9.cjs"),c=require("../chunks/temporal-bucket-DHY1y9lq.cjs"),p=require("../chunks/pivot-result-identity-Bb4EixVN.cjs"),v=require("../chunks/raw-temporal-contract-BtjH_G-d.cjs");function V(r,e,t,o){const a=r instanceof Date?r.toISOString():String(r),i=(o==null?void 0:o.browserTimezone)||t,l=(o==null?void 0:o.isSqlCard)??!1;if(e!=null&&e.useRelativeTime)return s.formatRelativeTime(a,(e==null?void 0:e.sourceTimezone)||"auto");const m=e!=null&&e.useCustomFormat&&(e!=null&&e.customFormat)?e.customFormat:(e==null?void 0:e.format)||"MM/dd/yyyy";return s.formatDate(a,m,e!=null&&e.timezone&&(e==null?void 0:e.timezone)!=="auto"?e.timezone:l?i:t,(e==null?void 0:e.sourceTimezone)||"auto")}function y(r,e,t){if(r==null)return"";if(!t.useFormattedValues||!e)return String(r);switch(e.type){case"number":return typeof r=="number"?n.formatNumberWithColumnSettings(r,e.numberFormat,t.locale):String(r);case"date":return V(r,e.dateFormat,t.timezone,{browserTimezone:t.browserTimezone,isSqlCard:t.isSqlCard});case"progress":return typeof r=="number"?`${r}%`:String(r);case"badge":case"link":case"text":case"none":default:return String(r)}}function h(r,e){return e.visibleColumns.map(t=>{const o=r[t],a=e.columnSettings[t];return y(o,a,{useFormattedValues:e.useFormattedValues,timezone:e.timezone,locale:e.locale})})}function S(r,e){const t=[];e.includeHeaders&&t.push(s.arrayToCSVRow(e.visibleColumns,e.delimiter));for(const o of r){const a=h(o,e);t.push(a.map(i=>s.escapeCSVValue(i,e.delimiter)).join(e.delimiter))}return t}function N(r,e,t=`
2
- `){return S(r,e).join(t)}function d(r,e,t){for(const o of r){if(o.level<t){e[o.level].push(o.name);for(let a=1;a<o.colspan;a++)e[o.level].push("")}o.children?d(o.children,e,t):o.columnKey&&e[t].push(o.name)}}function P(r){const e=r.pivotByColumns.length,t=r.groupByColumns.length,o=Array.from({length:e+1},()=>[]);for(let a=0;a<e;a++)o[a].push(...Array(t).fill(""));if(o[e].push(...r.groupByColumns.map(a=>a.label||a.name)),d(r.columnHeadersTree,o,e),r.showRowTotals){for(let a=0;a<e;a++)o[a].push("");o[e].push("Total")}return o}function k(r,e,t){if(r==null)return"";if(!t.useFormattedValues)return String(r);const o=t.columnSettings[e];return typeof r=="number"&&(o==null?void 0:o.type)==="number"?n.formatNumberWithColumnSettings(r,o.numberFormat,t.locale):typeof r=="number"?r.toLocaleString(t.locale):String(r)}function A(r,e,t){const o=[];r.fieldValues.forEach((i,l)=>{r.isSubtotal&&l===0?o.push(`${i} Total`):r.isSubtotal?o.push(""):o.push(String(i??""))});let a=0;return e.columnHeaders.forEach(i=>{var u;const l=(u=r.cells[i])==null?void 0:u.value,m=k(l,i,t);o.push(m),e.showRowTotals&&typeof l=="number"&&(a+=l)}),e.showRowTotals&&o.push(a.toLocaleString(t.locale)),o}function M(r,e,t){const o=[];if(t.includeHeaders){const a=P(e);for(const i of a)o.push(s.arrayToCSVRow(i,t.delimiter))}for(const a of r){const i=A(a,e,t);o.push(i.map(l=>s.escapeCSVValue(l,t.delimiter)).join(t.delimiter))}return o}function R(r){if(r===null||typeof r!="object"||Array.isArray(r))return!1;const e=Object.getPrototypeOf(r);return e===null||e===Object.prototype}function C(r,e,t){const o=new Set(e),a=Object.keys(r).find(i=>!o.has(i));if(a)throw new Error(`${t} contains unknown property "${a}"`)}function B(r,e="tableTotalsRequest"){if(!R(r))throw new Error(`${e} must be an object`);if(C(r,["source","columns"],e),r.source!=="documentFlatTable")throw new Error(`${e}.source must be documentFlatTable`);if(!Array.isArray(r.columns)||r.columns.length===0)throw new Error(`${e}.columns must be a non-empty array`);let t=0;const o=r.columns.map((l,m)=>{const u=`${e}.columns.${m}`;if(!R(l))throw new Error(`${u} must be an object`);C(l,["fieldId","role","behavior","metricAlias","label"],u);const w=typeof l.fieldId=="string"?l.fieldId.trim():"";if(!w)throw new Error(`${u}.fieldId must be a non-empty string`);if(l.role!=="detail"&&l.role!=="groupby"&&l.role!=="metric")throw new Error(`${u}.role is invalid`);const T=l.role;if(l.behavior!=="sum"&&l.behavior!=="avg"&&l.behavior!=="count"&&l.behavior!=="label")throw new Error(`${u}.behavior is invalid`);const E=l.behavior,b=typeof l.metricAlias=="string"?l.metricAlias.trim():void 0;if(l.metricAlias!==void 0&&!b)throw new Error(`${u}.metricAlias must be a non-empty string`);if(b&&T!=="metric")throw new Error(`${u}.metricAlias requires metric role`);if(E==="label"){if(t+=1,T==="metric")throw new Error(`${u}.behavior label requires a non-metric role`)}else if(T!=="metric")throw new Error(`${u}.${E} requires metric role`);if(l.label!==void 0&&typeof l.label!="string")throw new Error(`${u}.label must be a string`);return{fieldId:w,role:T,behavior:E,...b?{metricAlias:b}:{},...l.label!==void 0?{label:l.label}:{}}}),a=new Map,i=new Set;for(const l of o){if(l.metricAlias){if(i.has(l.metricAlias))throw new Error(`${e}.columns duplicates metricAlias "${l.metricAlias}"`);i.add(l.metricAlias)}const m=a.get(l.fieldId)??[];m.push(l),a.set(l.fieldId,m)}for(const[l,m]of a)if(m.length!==1){for(const u of m)if(u.role!=="metric"||!u.metricAlias)throw new Error(`${e}.columns duplicates fieldId "${l}" without distinct metricAlias values`)}if(t>1)throw new Error(`${e}.columns may contain at most one label`);return{source:"documentFlatTable",columns:o}}function $(r,e="tableTotalsByColumnId"){if(!R(r))throw new Error(`${e} must be an object`);const t={};for(const[o,a]of Object.entries(r)){if(!o.trim())throw new Error(`${e} contains an empty column id`);if(a!==null&&typeof a!="string"&&(typeof a!="number"||!Number.isFinite(a)))throw new Error(`${e}.${o} must be a string, finite number, or null`);t[o]=a}if(Object.keys(t).length===0)throw new Error(`${e} must not be empty`);return t}function _(r){if(typeof r=="number")return Number.isFinite(r)?r:null;if(!r.trim())return null;const e=Number(r);return Number.isFinite(e)?e:null}function q(r){const e=r.visibleColumns.map(t=>{const a=Object.prototype.hasOwnProperty.call(r.totalsByColumnId,t)?r.totalsByColumnId[t]:t===r.labelColumnKey?"Total":null;if(a===null)return"";if(!r.useFormattedValues)return String(a);const i=n.findResolvedNumericFormat({snapshot:r.snapshot,scope:r.scope,target:{kind:"column",columnKey:t}}),l=i?_(a):null;return i&&l!==null?n.formatNumericCanonical(l,i):String(a)});return`${s.arrayToCSVRow(e,r.delimiter)}
3
- `}exports.isNumericCanonicalFormat=g.isNumericCanonicalFormat;exports.MissingResolvedRawTemporalFormatError=n.MissingResolvedRawTemporalFormatError;exports.PivotResultLifecycleError=n.PivotResultLifecycleError;exports.PresentationExecutionSnapshotError=n.PresentationExecutionSnapshotError;exports.RawTemporalFormatContractError=n.RawTemporalFormatContractError;exports.assertRawTemporalChunkClassificationAgreement=n.assertRawTemporalChunkClassificationAgreement;exports.classifyDeclaredSqlTemporalColumn=n.classifyDeclaredSqlTemporalColumn;exports.createCanonicalPivotResultTransport=n.createCanonicalPivotResultTransport;exports.createPresentationExecutionSnapshot=n.createPresentationExecutionSnapshot;exports.createRawTemporalChunkClassificationEvidence=n.createRawTemporalChunkClassificationEvidence;exports.derivePivotResultContractExpectations=n.derivePivotResultContractExpectations;exports.findResolvedNumericFormat=n.findResolvedNumericFormat;exports.findResolvedRawTemporalFormat=n.findResolvedRawTemporalFormat;exports.findResolvedTemporalBucketFormat=n.findResolvedTemporalBucketFormat;exports.formatCurrency=n.formatCurrency;exports.formatNumber=n.formatNumber;exports.formatNumberCustom=n.formatNumberCustom;exports.formatNumberWithColumnSettings=n.formatNumberWithColumnSettings;exports.formatNumericCanonical=n.formatNumericCanonical;exports.formatPercent=n.formatPercent;exports.formatRawTemporalValue=n.formatRawTemporalValue;exports.formatScientific=n.formatScientific;exports.parseCanonicalPivotResultTransport=n.parseCanonicalPivotResultTransport;exports.parseNumericCanonicalFormat=n.parseNumericCanonicalFormat;exports.parsePresentationExecutionSnapshot=n.parsePresentationExecutionSnapshot;exports.parsePresentationScope=n.parsePresentationScope;exports.parseRawTemporalChunkClassificationEvidence=n.parseRawTemporalChunkClassificationEvidence;exports.parseResolvedNumericCanonicalFormat=n.parseResolvedNumericCanonicalFormat;exports.parseResolvedPresentationEntries=n.parseResolvedPresentationEntries;exports.parseResolvedRawTemporalFormat=n.parseResolvedRawTemporalFormat;exports.prepareRawTemporalFormatter=n.prepareRawTemporalFormatter;exports.resolveCurrencyFractionDigits=n.resolveCurrencyFractionDigits;exports.resolveNumericPresentation=n.resolveNumericPresentation;exports.resolveRawTemporalFormat=n.resolveRawTemporalFormat;exports.validateCardExportNumericPresentationSnapshot=n.validateCardExportNumericPresentationSnapshot;exports.validateCardExportPresentationSnapshot=n.validateCardExportPresentationSnapshot;exports.AGGREGATE_TOTAL_MEMBER_MARKER=s.AGGREGATE_TOTAL_MEMBER_MARKER;exports.PivotHeaderPresentationError=s.PivotHeaderPresentationError;exports.arrayToCSV=s.arrayToCSV;exports.arrayToCSVRow=s.arrayToCSVRow;exports.escapeCSVValue=s.escapeCSVValue;exports.formatAggregateGrandTotalLabel=s.formatAggregateGrandTotalLabel;exports.formatAggregateGroupCell=s.formatAggregateGroupCell;exports.formatAggregateGroupRow=s.formatAggregateGroupRow;exports.formatAggregateSubtotalLabel=s.formatAggregateSubtotalLabel;exports.formatDate=s.formatDate;exports.formatDuration=s.formatDuration;exports.formatMetricComparison=s.formatMetricComparison;exports.formatRelativeTime=s.formatRelativeTime;exports.getTimezoneAbbreviation=s.getTimezoneAbbreviation;exports.getTimezoneName=s.getTimezoneName;exports.isAggregateTotalMemberMarker=s.isAggregateTotalMemberMarker;exports.objectsToCSV=s.objectsToCSV;exports.parseWithSourceTimezone=s.parseWithSourceTimezone;exports.presentAggregateGroupRow=s.presentAggregateGroupRow;exports.presentPivotHeader=s.presentPivotHeader;exports.resolveAggregateTablePresentationContext=s.resolveAggregateTablePresentationContext;exports.resolveTimezone=s.resolveTimezone;exports.SEMAPHOR_GENERATED_COUNT_METRIC_ID=f.SEMAPHOR_GENERATED_COUNT_METRIC_ID;exports.TEMPORAL_BUCKET_PATTERN_TOKENS=f.TEMPORAL_BUCKET_PATTERN_TOKENS;exports.isTemporalBucketPreset=f.isTemporalBucketPreset;exports.resolveApplicableTemporalBucketFormat=f.resolveApplicableTemporalBucketFormat;exports.tokenizeTemporalBucketPattern=f.tokenizeTemporalBucketPattern;exports.validateTemporalBucketFormatApplicability=f.validateTemporalBucketFormatApplicability;exports.DEFAULT_RESOLVED_TEMPORAL_STYLE_SET=c.DEFAULT_RESOLVED_TEMPORAL_STYLE_SET;exports.TemporalBucketContractError=c.TemporalBucketContractError;exports.formatTemporalBucket=c.formatTemporalBucket;exports.parseResolvedTemporalBucketFormat=c.parseResolvedTemporalBucketFormat;exports.parseTemporalBucketValue=c.parseTemporalBucketValue;exports.resolveMetricResultAlias=c.resolveMetricResultAlias;exports.resolveTemporalBucketPresentation=c.resolveTemporalBucketPresentation;exports.PivotResultIdentityError=p.PivotResultIdentityError;exports.isPivotEmptyTupleAllowed=p.isPivotEmptyTupleAllowed;exports.isPivotSubtotalPrefix=p.isPivotSubtotalPrefix;exports.requirePivotHeaderMembers=p.requirePivotHeaderMembers;exports.requirePivotResultColumnIdentities=p.requirePivotResultColumnIdentities;exports.resolveQueryColumnKeyMapEntry=p.resolveQueryColumnKeyMapEntry;exports.resolveUniqueQueryColumnKeyMapEntry=p.resolveUniqueQueryColumnKeyMapEntry;exports.parseRawTemporalValueMetadata=v.parseRawTemporalValueMetadata;exports.validateRawTemporalResultColumn=v.validateRawTemporalResultColumn;exports.buildFlatTableExportTotalsFooter=q;exports.formatCellValue=y;exports.formatPivotDataRow=A;exports.formatPivotTableForCSV=M;exports.formatRowForExport=h;exports.formatTableForCSV=S;exports.generatePivotHeaders=P;exports.generateTableCSV=N;exports.parseFlatTableExportTotalsByColumnId=$;exports.parseFlatTableExportTotalsRequest=B;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const g=require("../chunks/format-types-PSZZ7hG8.cjs"),n=require("../chunks/pivot-result-lifecycle-DTLRuDEW.cjs"),s=require("../chunks/pivot-header-presentation-B9nXXKlW.cjs"),f=require("../chunks/validators-BDYprKI9.cjs"),c=require("../chunks/temporal-bucket-DHY1y9lq.cjs"),p=require("../chunks/pivot-result-identity-Bb4EixVN.cjs"),v=require("../chunks/raw-temporal-contract-BtjH_G-d.cjs");function V(r,e,t,o){const a=r instanceof Date?r.toISOString():String(r),i=(o==null?void 0:o.browserTimezone)||t,l=(o==null?void 0:o.isSqlCard)??!1;if(e!=null&&e.useRelativeTime)return s.formatRelativeTime(a,(e==null?void 0:e.sourceTimezone)||"auto");const m=e!=null&&e.useCustomFormat&&(e!=null&&e.customFormat)?e.customFormat:(e==null?void 0:e.format)||"MM/dd/yyyy";return s.formatDate(a,m,e!=null&&e.timezone&&(e==null?void 0:e.timezone)!=="auto"?e.timezone:l?i:t,(e==null?void 0:e.sourceTimezone)||"auto")}function y(r,e,t){if(r==null)return"";if(!t.useFormattedValues||!e)return String(r);switch(e.type){case"number":return typeof r=="number"?n.formatNumberWithColumnSettings(r,e.numberFormat,t.locale):String(r);case"date":return V(r,e.dateFormat,t.timezone,{browserTimezone:t.browserTimezone,isSqlCard:t.isSqlCard});case"progress":return typeof r=="number"?`${r}%`:String(r);case"badge":case"link":case"text":case"none":default:return String(r)}}function h(r,e){return e.visibleColumns.map(t=>{const o=r[t],a=e.columnSettings[t];return y(o,a,{useFormattedValues:e.useFormattedValues,timezone:e.timezone,locale:e.locale})})}function S(r,e){const t=[];e.includeHeaders&&t.push(s.arrayToCSVRow(e.visibleColumns,e.delimiter));for(const o of r){const a=h(o,e);t.push(a.map(i=>s.escapeCSVValue(i,e.delimiter)).join(e.delimiter))}return t}function M(r,e,t=`
2
+ `){return S(r,e).join(t)}function d(r,e,t){for(const o of r){if(o.level<t){e[o.level].push(o.name);for(let a=1;a<o.colspan;a++)e[o.level].push("")}o.children?d(o.children,e,t):o.columnKey&&e[t].push(o.name)}}function P(r){const e=r.pivotByColumns.length,t=r.groupByColumns.length,o=Array.from({length:e+1},()=>[]);for(let a=0;a<e;a++)o[a].push(...Array(t).fill(""));if(o[e].push(...r.groupByColumns.map(a=>a.label||a.name)),d(r.columnHeadersTree,o,e),r.showRowTotals){for(let a=0;a<e;a++)o[a].push("");o[e].push("Total")}return o}function N(r,e,t){if(r==null)return"";if(!t.useFormattedValues)return String(r);const o=t.columnSettings[e];return typeof r=="number"&&(o==null?void 0:o.type)==="number"?n.formatNumberWithColumnSettings(r,o.numberFormat,t.locale):typeof r=="number"?r.toLocaleString(t.locale):String(r)}function A(r,e,t){const o=[];r.fieldValues.forEach((i,l)=>{r.isSubtotal&&l===0?o.push(`${i} Total`):r.isSubtotal?o.push(""):o.push(String(i??""))});let a=0;return e.columnHeaders.forEach(i=>{var u;const l=(u=r.cells[i])==null?void 0:u.value,m=N(l,i,t);o.push(m),e.showRowTotals&&typeof l=="number"&&(a+=l)}),e.showRowTotals&&o.push(a.toLocaleString(t.locale)),o}function k(r,e,t){const o=[];if(t.includeHeaders){const a=P(e);for(const i of a)o.push(s.arrayToCSVRow(i,t.delimiter))}for(const a of r){const i=A(a,e,t);o.push(i.map(l=>s.escapeCSVValue(l,t.delimiter)).join(t.delimiter))}return o}function R(r){if(r===null||typeof r!="object"||Array.isArray(r))return!1;const e=Object.getPrototypeOf(r);return e===null||e===Object.prototype}function C(r,e,t){const o=new Set(e),a=Object.keys(r).find(i=>!o.has(i));if(a)throw new Error(`${t} contains unknown property "${a}"`)}function B(r,e="tableTotalsRequest"){if(!R(r))throw new Error(`${e} must be an object`);if(C(r,["source","columns"],e),r.source!=="documentFlatTable")throw new Error(`${e}.source must be documentFlatTable`);if(!Array.isArray(r.columns)||r.columns.length===0)throw new Error(`${e}.columns must be a non-empty array`);let t=0;const o=r.columns.map((l,m)=>{const u=`${e}.columns.${m}`;if(!R(l))throw new Error(`${u} must be an object`);C(l,["fieldId","role","behavior","metricAlias","label"],u);const w=typeof l.fieldId=="string"?l.fieldId.trim():"";if(!w)throw new Error(`${u}.fieldId must be a non-empty string`);if(l.role!=="detail"&&l.role!=="groupby"&&l.role!=="metric")throw new Error(`${u}.role is invalid`);const T=l.role;if(l.behavior!=="sum"&&l.behavior!=="avg"&&l.behavior!=="count"&&l.behavior!=="label")throw new Error(`${u}.behavior is invalid`);const E=l.behavior,b=typeof l.metricAlias=="string"?l.metricAlias.trim():void 0;if(l.metricAlias!==void 0&&!b)throw new Error(`${u}.metricAlias must be a non-empty string`);if(b&&T!=="metric")throw new Error(`${u}.metricAlias requires metric role`);if(E==="label"){if(t+=1,T==="metric")throw new Error(`${u}.behavior label requires a non-metric role`)}else if(T!=="metric")throw new Error(`${u}.${E} requires metric role`);if(l.label!==void 0&&typeof l.label!="string")throw new Error(`${u}.label must be a string`);return{fieldId:w,role:T,behavior:E,...b?{metricAlias:b}:{},...l.label!==void 0?{label:l.label}:{}}}),a=new Map,i=new Set;for(const l of o){if(l.metricAlias){if(i.has(l.metricAlias))throw new Error(`${e}.columns duplicates metricAlias "${l.metricAlias}"`);i.add(l.metricAlias)}const m=a.get(l.fieldId)??[];m.push(l),a.set(l.fieldId,m)}for(const[l,m]of a)if(m.length!==1){for(const u of m)if(u.role!=="metric"||!u.metricAlias)throw new Error(`${e}.columns duplicates fieldId "${l}" without distinct metricAlias values`)}if(t>1)throw new Error(`${e}.columns may contain at most one label`);return{source:"documentFlatTable",columns:o}}function $(r,e="tableTotalsByColumnId"){if(!R(r))throw new Error(`${e} must be an object`);const t={};for(const[o,a]of Object.entries(r)){if(!o.trim())throw new Error(`${e} contains an empty column id`);if(a!==null&&typeof a!="string"&&(typeof a!="number"||!Number.isFinite(a)))throw new Error(`${e}.${o} must be a string, finite number, or null`);t[o]=a}if(Object.keys(t).length===0)throw new Error(`${e} must not be empty`);return t}function _(r){if(typeof r=="number")return Number.isFinite(r)?r:null;if(!r.trim())return null;const e=Number(r);return Number.isFinite(e)?e:null}function I(r){const e=r.visibleColumns.map(t=>{const a=Object.prototype.hasOwnProperty.call(r.totalsByColumnId,t)?r.totalsByColumnId[t]:t===r.labelColumnKey?"Total":null;if(a===null)return"";if(!r.useFormattedValues)return String(a);const i=n.findResolvedNumericFormat({snapshot:r.snapshot,scope:r.scope,target:{kind:"column",columnKey:t}}),l=i?_(a):null;return i&&l!==null?n.formatNumericCanonical(l,i):String(a)});return`${s.arrayToCSVRow(e,r.delimiter)}
3
+ `}exports.isNumericCanonicalFormat=g.isNumericCanonicalFormat;exports.MissingResolvedRawTemporalFormatError=n.MissingResolvedRawTemporalFormatError;exports.PivotResultLifecycleError=n.PivotResultLifecycleError;exports.PresentationExecutionSnapshotError=n.PresentationExecutionSnapshotError;exports.RawTemporalFormatContractError=n.RawTemporalFormatContractError;exports.assertRawTemporalChunkClassificationAgreement=n.assertRawTemporalChunkClassificationAgreement;exports.classifyDeclaredSqlTemporalColumn=n.classifyDeclaredSqlTemporalColumn;exports.createCanonicalPivotResultTransport=n.createCanonicalPivotResultTransport;exports.createPresentationExecutionSnapshot=n.createPresentationExecutionSnapshot;exports.createRawTemporalChunkClassificationEvidence=n.createRawTemporalChunkClassificationEvidence;exports.deriveMetricInstanceAliasExpectations=n.deriveMetricInstanceAliasExpectations;exports.derivePivotResultContractExpectations=n.derivePivotResultContractExpectations;exports.findResolvedNumericFormat=n.findResolvedNumericFormat;exports.findResolvedRawTemporalFormat=n.findResolvedRawTemporalFormat;exports.findResolvedTemporalBucketFormat=n.findResolvedTemporalBucketFormat;exports.formatCurrency=n.formatCurrency;exports.formatNumber=n.formatNumber;exports.formatNumberCustom=n.formatNumberCustom;exports.formatNumberWithColumnSettings=n.formatNumberWithColumnSettings;exports.formatNumericCanonical=n.formatNumericCanonical;exports.formatPercent=n.formatPercent;exports.formatRawTemporalValue=n.formatRawTemporalValue;exports.formatScientific=n.formatScientific;exports.parseCanonicalPivotResultTransport=n.parseCanonicalPivotResultTransport;exports.parseNumericCanonicalFormat=n.parseNumericCanonicalFormat;exports.parsePresentationExecutionSnapshot=n.parsePresentationExecutionSnapshot;exports.parsePresentationScope=n.parsePresentationScope;exports.parseRawTemporalChunkClassificationEvidence=n.parseRawTemporalChunkClassificationEvidence;exports.parseResolvedNumericCanonicalFormat=n.parseResolvedNumericCanonicalFormat;exports.parseResolvedPresentationEntries=n.parseResolvedPresentationEntries;exports.parseResolvedRawTemporalFormat=n.parseResolvedRawTemporalFormat;exports.prepareRawTemporalFormatter=n.prepareRawTemporalFormatter;exports.resolveCurrencyFractionDigits=n.resolveCurrencyFractionDigits;exports.resolveNumericPresentation=n.resolveNumericPresentation;exports.resolveRawTemporalFormat=n.resolveRawTemporalFormat;exports.validateCardExportNumericPresentationSnapshot=n.validateCardExportNumericPresentationSnapshot;exports.validateCardExportPresentationSnapshot=n.validateCardExportPresentationSnapshot;exports.AGGREGATE_TOTAL_MEMBER_MARKER=s.AGGREGATE_TOTAL_MEMBER_MARKER;exports.PivotHeaderPresentationError=s.PivotHeaderPresentationError;exports.arrayToCSV=s.arrayToCSV;exports.arrayToCSVRow=s.arrayToCSVRow;exports.escapeCSVValue=s.escapeCSVValue;exports.formatAggregateGrandTotalLabel=s.formatAggregateGrandTotalLabel;exports.formatAggregateGroupCell=s.formatAggregateGroupCell;exports.formatAggregateGroupRow=s.formatAggregateGroupRow;exports.formatAggregateSubtotalLabel=s.formatAggregateSubtotalLabel;exports.formatDate=s.formatDate;exports.formatDuration=s.formatDuration;exports.formatMetricComparison=s.formatMetricComparison;exports.formatRelativeTime=s.formatRelativeTime;exports.getTimezoneAbbreviation=s.getTimezoneAbbreviation;exports.getTimezoneName=s.getTimezoneName;exports.isAggregateTotalMemberMarker=s.isAggregateTotalMemberMarker;exports.objectsToCSV=s.objectsToCSV;exports.parseWithSourceTimezone=s.parseWithSourceTimezone;exports.presentAggregateGroupRow=s.presentAggregateGroupRow;exports.presentPivotHeader=s.presentPivotHeader;exports.resolveAggregateTablePresentationContext=s.resolveAggregateTablePresentationContext;exports.resolveTimezone=s.resolveTimezone;exports.SEMAPHOR_GENERATED_COUNT_METRIC_ID=f.SEMAPHOR_GENERATED_COUNT_METRIC_ID;exports.TEMPORAL_BUCKET_PATTERN_TOKENS=f.TEMPORAL_BUCKET_PATTERN_TOKENS;exports.isTemporalBucketPreset=f.isTemporalBucketPreset;exports.resolveApplicableTemporalBucketFormat=f.resolveApplicableTemporalBucketFormat;exports.tokenizeTemporalBucketPattern=f.tokenizeTemporalBucketPattern;exports.validateTemporalBucketFormatApplicability=f.validateTemporalBucketFormatApplicability;exports.DEFAULT_RESOLVED_TEMPORAL_STYLE_SET=c.DEFAULT_RESOLVED_TEMPORAL_STYLE_SET;exports.TemporalBucketContractError=c.TemporalBucketContractError;exports.formatTemporalBucket=c.formatTemporalBucket;exports.parseResolvedTemporalBucketFormat=c.parseResolvedTemporalBucketFormat;exports.parseTemporalBucketValue=c.parseTemporalBucketValue;exports.resolveMetricResultAlias=c.resolveMetricResultAlias;exports.resolveTemporalBucketPresentation=c.resolveTemporalBucketPresentation;exports.PivotResultIdentityError=p.PivotResultIdentityError;exports.isPivotEmptyTupleAllowed=p.isPivotEmptyTupleAllowed;exports.isPivotSubtotalPrefix=p.isPivotSubtotalPrefix;exports.requirePivotHeaderMembers=p.requirePivotHeaderMembers;exports.requirePivotResultColumnIdentities=p.requirePivotResultColumnIdentities;exports.resolveQueryColumnKeyMapEntry=p.resolveQueryColumnKeyMapEntry;exports.resolveUniqueQueryColumnKeyMapEntry=p.resolveUniqueQueryColumnKeyMapEntry;exports.parseRawTemporalValueMetadata=v.parseRawTemporalValueMetadata;exports.validateRawTemporalResultColumn=v.validateRawTemporalResultColumn;exports.buildFlatTableExportTotalsFooter=I;exports.formatCellValue=y;exports.formatPivotDataRow=A;exports.formatPivotTableForCSV=k;exports.formatRowForExport=h;exports.formatTableForCSV=S;exports.generatePivotHeaders=P;exports.generateTableCSV=M;exports.parseFlatTableExportTotalsByColumnId=$;exports.parseFlatTableExportTotalsRequest=B;
@@ -1,13 +1,13 @@
1
1
  import { i as _ } from "../chunks/format-types-CFHQoIuk.js";
2
- import { f as w, a as y, b as R } from "../chunks/pivot-result-lifecycle-sjzIOpvp.js";
3
- import { M as L, D as H, P as G, R as K, z as U, w as W, F as Q, n as F, x as Y, C as J, o as X, q as Z, d as ee, c as re, h as oe, e as te, B as se, g as ne, E as le, p as ae, m as ie, k as ue, y as me, i as ce, l as fe, t as pe, A as be, r as Te, j as we, u as he, v as Ee, s as ye } from "../chunks/pivot-result-lifecycle-sjzIOpvp.js";
4
- import { f as C, a as v, b as p, e as h } from "../chunks/pivot-header-presentation-ckYOQ4aZ.js";
5
- import { A as Ce, P as ve, i as Se, m as Ae, q as Pe, s as de, l as ge, c as $e, d as Ve, g as ke, h as xe, j as Be, o as Me, p as Ne, n as Ie, t as je, k as ze, r as Oe } from "../chunks/pivot-header-presentation-ckYOQ4aZ.js";
6
- import { x as _e, am as De, e as Le, an as He, al as Ge, d as Ke } from "../chunks/validators-DEmd8Sin.js";
7
- import { i as We, T as Qe, f as Fe, j as Ye, p as Je, a as Xe, k as Ze } from "../chunks/temporal-bucket-5UYEotyQ.js";
8
- import { P as rr, b as or, i as tr, c as sr, d as nr, r as lr, a as ar } from "../chunks/pivot-result-identity-DU1v-5Xk.js";
9
- import { p as ur, v as mr } from "../chunks/raw-temporal-contract-CxncLze5.js";
10
- function S(r, e, t, o) {
2
+ import { f as w, a as y, b as R } from "../chunks/pivot-result-lifecycle-CHWEGU2o.js";
3
+ import { M as L, E as G, P as H, R as K, z as U, w as W, G as Q, n as F, x as Y, C as J, D as X, o as Z, q as ee, d as re, c as oe, h as te, e as se, B as ne, g as le, F as ae, p as ie, m as ue, k as me, y as ce, i as fe, l as pe, t as be, A as Te, r as we, j as he, u as Ee, v as ye, s as Re } from "../chunks/pivot-result-lifecycle-CHWEGU2o.js";
4
+ import { f as C, a as v, b as p, e as h } from "../chunks/pivot-header-presentation-D-0jvUwn.js";
5
+ import { A as ve, P as Ae, i as Se, m as Pe, q as de, s as ge, l as $e, c as Ve, d as ke, g as xe, h as Me, j as Be, o as Ie, p as Ne, n as je, t as ze, k as Oe, r as qe } from "../chunks/pivot-header-presentation-D-0jvUwn.js";
6
+ import { x as De, am as Le, e as Ge, an as He, al as Ke, d as Ue } from "../chunks/validators-DEmd8Sin.js";
7
+ import { i as Qe, T as Fe, f as Ye, j as Je, p as Xe, a as Ze, k as er } from "../chunks/temporal-bucket-5UYEotyQ.js";
8
+ import { P as or, b as tr, i as sr, c as nr, d as lr, r as ar, a as ir } from "../chunks/pivot-result-identity-DU1v-5Xk.js";
9
+ import { p as mr, v as cr } from "../chunks/raw-temporal-contract-CxncLze5.js";
10
+ function A(r, e, t, o) {
11
11
  const s = r instanceof Date ? r.toISOString() : String(r), l = (o == null ? void 0 : o.browserTimezone) || t, n = (o == null ? void 0 : o.isSqlCard) ?? !1;
12
12
  if (e != null && e.useRelativeTime)
13
13
  return C(
@@ -22,7 +22,7 @@ function S(r, e, t, o) {
22
22
  (e == null ? void 0 : e.sourceTimezone) || "auto"
23
23
  );
24
24
  }
25
- function A(r, e, t) {
25
+ function S(r, e, t) {
26
26
  if (r == null)
27
27
  return "";
28
28
  if (!t.useFormattedValues || !e)
@@ -35,7 +35,7 @@ function A(r, e, t) {
35
35
  t.locale
36
36
  ) : String(r);
37
37
  case "date":
38
- return S(
38
+ return A(
39
39
  r,
40
40
  e.dateFormat,
41
41
  t.timezone,
@@ -57,7 +57,7 @@ function A(r, e, t) {
57
57
  function P(r, e) {
58
58
  return e.visibleColumns.map((t) => {
59
59
  const o = r[t], s = e.columnSettings[t];
60
- return A(o, s, {
60
+ return S(o, s, {
61
61
  useFormattedValues: e.useFormattedValues,
62
62
  timezone: e.timezone,
63
63
  locale: e.locale
@@ -75,7 +75,7 @@ function d(r, e) {
75
75
  }
76
76
  return t;
77
77
  }
78
- function M(r, e, t = `
78
+ function B(r, e, t = `
79
79
  `) {
80
80
  return d(r, e).join(t);
81
81
  }
@@ -129,7 +129,7 @@ function V(r, e, t) {
129
129
  o.push(i), e.showRowTotals && typeof n == "number" && (s += n);
130
130
  }), e.showRowTotals && o.push(s.toLocaleString(t.locale)), o;
131
131
  }
132
- function N(r, e, t) {
132
+ function I(r, e, t) {
133
133
  const o = [];
134
134
  if (t.includeHeaders) {
135
135
  const s = g(e);
@@ -159,7 +159,7 @@ function T(r, e, t) {
159
159
  if (s)
160
160
  throw new Error(`${t} contains unknown property "${s}"`);
161
161
  }
162
- function I(r, e = "tableTotalsRequest") {
162
+ function N(r, e = "tableTotalsRequest") {
163
163
  if (!f(r))
164
164
  throw new Error(`${e} must be an object`);
165
165
  if (T(r, ["source", "columns"], e), r.source !== "documentFlatTable")
@@ -271,17 +271,17 @@ function z(r) {
271
271
  `;
272
272
  }
273
273
  export {
274
- Ce as AGGREGATE_TOTAL_MEMBER_MARKER,
275
- We as DEFAULT_RESOLVED_TEMPORAL_STYLE_SET,
274
+ ve as AGGREGATE_TOTAL_MEMBER_MARKER,
275
+ Qe as DEFAULT_RESOLVED_TEMPORAL_STYLE_SET,
276
276
  L as MissingResolvedRawTemporalFormatError,
277
- ve as PivotHeaderPresentationError,
278
- rr as PivotResultIdentityError,
279
- H as PivotResultLifecycleError,
280
- G as PresentationExecutionSnapshotError,
277
+ Ae as PivotHeaderPresentationError,
278
+ or as PivotResultIdentityError,
279
+ G as PivotResultLifecycleError,
280
+ H as PresentationExecutionSnapshotError,
281
281
  K as RawTemporalFormatContractError,
282
- _e as SEMAPHOR_GENERATED_COUNT_METRIC_ID,
283
- De as TEMPORAL_BUCKET_PATTERN_TOKENS,
284
- Qe as TemporalBucketContractError,
282
+ De as SEMAPHOR_GENERATED_COUNT_METRIC_ID,
283
+ Le as TEMPORAL_BUCKET_PATTERN_TOKENS,
284
+ Fe as TemporalBucketContractError,
285
285
  Se as arrayToCSV,
286
286
  p as arrayToCSVRow,
287
287
  U as assertRawTemporalChunkClassificationAgreement,
@@ -290,75 +290,76 @@ export {
290
290
  Q as createCanonicalPivotResultTransport,
291
291
  F as createPresentationExecutionSnapshot,
292
292
  Y as createRawTemporalChunkClassificationEvidence,
293
- J as derivePivotResultContractExpectations,
293
+ J as deriveMetricInstanceAliasExpectations,
294
+ X as derivePivotResultContractExpectations,
294
295
  h as escapeCSVValue,
295
296
  y as findResolvedNumericFormat,
296
- X as findResolvedRawTemporalFormat,
297
- Z as findResolvedTemporalBucketFormat,
298
- Ae as formatAggregateGrandTotalLabel,
299
- Pe as formatAggregateGroupCell,
300
- de as formatAggregateGroupRow,
301
- ge as formatAggregateSubtotalLabel,
302
- A as formatCellValue,
303
- ee as formatCurrency,
297
+ Z as findResolvedRawTemporalFormat,
298
+ ee as findResolvedTemporalBucketFormat,
299
+ Pe as formatAggregateGrandTotalLabel,
300
+ de as formatAggregateGroupCell,
301
+ ge as formatAggregateGroupRow,
302
+ $e as formatAggregateSubtotalLabel,
303
+ S as formatCellValue,
304
+ re as formatCurrency,
304
305
  v as formatDate,
305
- $e as formatDuration,
306
- Ve as formatMetricComparison,
307
- re as formatNumber,
308
- oe as formatNumberCustom,
306
+ Ve as formatDuration,
307
+ ke as formatMetricComparison,
308
+ oe as formatNumber,
309
+ te as formatNumberCustom,
309
310
  w as formatNumberWithColumnSettings,
310
311
  R as formatNumericCanonical,
311
- te as formatPercent,
312
+ se as formatPercent,
312
313
  V as formatPivotDataRow,
313
- N as formatPivotTableForCSV,
314
- se as formatRawTemporalValue,
314
+ I as formatPivotTableForCSV,
315
+ ne as formatRawTemporalValue,
315
316
  C as formatRelativeTime,
316
317
  P as formatRowForExport,
317
- ne as formatScientific,
318
+ le as formatScientific,
318
319
  d as formatTableForCSV,
319
- Fe as formatTemporalBucket,
320
+ Ye as formatTemporalBucket,
320
321
  g as generatePivotHeaders,
321
- M as generateTableCSV,
322
- ke as getTimezoneAbbreviation,
323
- xe as getTimezoneName,
322
+ B as generateTableCSV,
323
+ xe as getTimezoneAbbreviation,
324
+ Me as getTimezoneName,
324
325
  Be as isAggregateTotalMemberMarker,
325
326
  _ as isNumericCanonicalFormat,
326
- or as isPivotEmptyTupleAllowed,
327
- tr as isPivotSubtotalPrefix,
328
- Le as isTemporalBucketPreset,
329
- Me as objectsToCSV,
330
- le as parseCanonicalPivotResultTransport,
327
+ tr as isPivotEmptyTupleAllowed,
328
+ sr as isPivotSubtotalPrefix,
329
+ Ge as isTemporalBucketPreset,
330
+ Ie as objectsToCSV,
331
+ ae as parseCanonicalPivotResultTransport,
331
332
  j as parseFlatTableExportTotalsByColumnId,
332
- I as parseFlatTableExportTotalsRequest,
333
- ae as parseNumericCanonicalFormat,
334
- ie as parsePresentationExecutionSnapshot,
335
- ue as parsePresentationScope,
336
- me as parseRawTemporalChunkClassificationEvidence,
337
- ur as parseRawTemporalValueMetadata,
338
- ce as parseResolvedNumericCanonicalFormat,
339
- fe as parseResolvedPresentationEntries,
340
- pe as parseResolvedRawTemporalFormat,
341
- Ye as parseResolvedTemporalBucketFormat,
342
- Je as parseTemporalBucketValue,
333
+ N as parseFlatTableExportTotalsRequest,
334
+ ie as parseNumericCanonicalFormat,
335
+ ue as parsePresentationExecutionSnapshot,
336
+ me as parsePresentationScope,
337
+ ce as parseRawTemporalChunkClassificationEvidence,
338
+ mr as parseRawTemporalValueMetadata,
339
+ fe as parseResolvedNumericCanonicalFormat,
340
+ pe as parseResolvedPresentationEntries,
341
+ be as parseResolvedRawTemporalFormat,
342
+ Je as parseResolvedTemporalBucketFormat,
343
+ Xe as parseTemporalBucketValue,
343
344
  Ne as parseWithSourceTimezone,
344
- be as prepareRawTemporalFormatter,
345
- Ie as presentAggregateGroupRow,
346
- je as presentPivotHeader,
347
- sr as requirePivotHeaderMembers,
348
- nr as requirePivotResultColumnIdentities,
349
- ze as resolveAggregateTablePresentationContext,
345
+ Te as prepareRawTemporalFormatter,
346
+ je as presentAggregateGroupRow,
347
+ ze as presentPivotHeader,
348
+ nr as requirePivotHeaderMembers,
349
+ lr as requirePivotResultColumnIdentities,
350
+ Oe as resolveAggregateTablePresentationContext,
350
351
  He as resolveApplicableTemporalBucketFormat,
351
- Te as resolveCurrencyFractionDigits,
352
- Xe as resolveMetricResultAlias,
353
- we as resolveNumericPresentation,
354
- lr as resolveQueryColumnKeyMapEntry,
355
- he as resolveRawTemporalFormat,
356
- Ze as resolveTemporalBucketPresentation,
357
- Oe as resolveTimezone,
358
- ar as resolveUniqueQueryColumnKeyMapEntry,
359
- Ge as tokenizeTemporalBucketPattern,
360
- Ee as validateCardExportNumericPresentationSnapshot,
361
- ye as validateCardExportPresentationSnapshot,
362
- mr as validateRawTemporalResultColumn,
363
- Ke as validateTemporalBucketFormatApplicability
352
+ we as resolveCurrencyFractionDigits,
353
+ Ze as resolveMetricResultAlias,
354
+ he as resolveNumericPresentation,
355
+ ar as resolveQueryColumnKeyMapEntry,
356
+ Ee as resolveRawTemporalFormat,
357
+ er as resolveTemporalBucketPresentation,
358
+ qe as resolveTimezone,
359
+ ir as resolveUniqueQueryColumnKeyMapEntry,
360
+ Ke as tokenizeTemporalBucketPattern,
361
+ ye as validateCardExportNumericPresentationSnapshot,
362
+ Re as validateCardExportPresentationSnapshot,
363
+ cr as validateRawTemporalResultColumn,
364
+ Ue as validateTemporalBucketFormatApplicability
364
365
  };
package/dist/index.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./chunks/index-DEwVo0GH.cjs"),d=require("./chunks/common-types-C57kJ59w.cjs"),P=require("./chunks/report-preferences-dialog-CdHVi8_W.cjs"),i=require("react/jsx-runtime"),r=require("./chunks/switch-BHOdIXq3.cjs"),h=require("react"),N=require("./chunks/token-types-D7CaaI80.cjs"),u=require("./chunks/dashboard-briefing-launcher-B_ZDOOzA.cjs"),R=require("./chunks/use-debounced-dirty-check-XHSwAefL.cjs");require("./value-format-preferences/index.cjs");require("./chunks/validators-BDYprKI9.cjs");const _=require("./chunks/report-runtime-context-DqxS4wbi.cjs"),T=require("./chunks/pivot-result-identity-Bb4EixVN.cjs");require("./chunks/analyze-result-contract-LPDNldic.cjs");require("./chunks/temporal-bucket-authoring-o3Emn05L.cjs");require("./chunks/canonical-result-keys-BA0HCP4e.cjs");require("./chunks/saved-temporal-bucket-format-CFfWXRl9.cjs");require("react-dom");require("./chunks/color-CyB5o13F.cjs");require("./chunks/index-ByFbacH7.cjs");const B=require("./chunks/normalize-dashboard-for-dirty-check-BXRUMVb2.cjs"),w=require("./chunks/x-B6ghREd2.cjs");function j(a){const t=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(a){for(const o in a)if(o!=="default"){const l=Object.getOwnPropertyDescriptor(a,o);Object.defineProperty(t,o,l.get?l:{enumerable:!0,get:()=>a[o]})}}return t.default=a,Object.freeze(t)}const C=j(h);function M(a){const{displayPreferences:t,cardId:o,...l}=a,n={...l,id:a.dashboardId};return i.jsx(e.ErrorBoundary,{FallbackComponent:e.Fallback,children:i.jsxs(e.SemaphorContextProvider,{dashboardProps:n,children:[i.jsx(e.SemaphorReadyIndicator,{componentType:"visual",componentId:a.cardId}),i.jsx(e.UXProvider,{appearance:a.appearance,children:i.jsx(e.DisplayPreferencesProvider,{displayPreferences:t,children:i.jsx(e.Container,{type:"visual",cardId:o,...n,children:i.jsx(L,{cardId:o})})})})]})})}function L({cardId:a}){const t=r.useDashboardStore(n=>{var c;return(c=n.dashboard)==null?void 0:c.sheets}),{card:o,frame:l}=h.useMemo(()=>{const n=t==null?void 0:t.flatMap(s=>s.frames),c=n==null?void 0:n.flatMap(s=>s==null?void 0:s.cards),D=c==null?void 0:c.find(s=>(s==null?void 0:s.id)===a),E=n==null?void 0:n.find(s=>{var m;return(m=s==null?void 0:s.cards)==null?void 0:m.find(g=>(g==null?void 0:g.id)===a)});return{card:D,frame:E}},[t,a]);return!o||!l?i.jsx(e.FallbackVisual,{error:new Error("Card not found"),resetErrorBoundary:()=>{},customerFacingMessage:`Card not found with ID: ${a}`}):i.jsx("main",{className:"flex h-full grow flex-col",children:i.jsx(e.ErrorBoundary,{FallbackComponent:({error:n,resetErrorBoundary:c})=>i.jsx(e.FallbackVisual,{error:n,resetErrorBoundary:c,customerFacingMessage:"Error creating visual. Please try again."}),children:i.jsx(e.DashboardCard,{card:o,frame:l})})})}function q(a,t,o,l){h.useEffect(()=>{a&&!o&&t&&l(e.cloneDeep(t))},[a,o,t,l])}function I({name:a,items:t,value:o,onChange:l,isLoading:n,isError:c,refetch:D,className:E,icon:s,showNone:m=!1}){const g=C.useRef(null),[y,b]=C.useState(!1),[S,A]=C.useState("100%"),x=m?[...t||[],{id:"none",name:"None"}]:t;C.useLayoutEffect(()=>{g.current&&A(g.current.offsetWidth)},[]);function v(){var f;return n?"Loading...":c?"Error":o?(f=t==null?void 0:t.find(p=>p.id===o))==null?void 0:f.name:`Select ${a}`}function F(f,p){l(p),b(!1)}return i.jsxs(r.Popover,{open:y,onOpenChange:b,children:[i.jsx(r.PopoverTrigger,{asChild:!0,children:i.jsxs(r.Button,{ref:g,variant:"outline",role:"combobox","aria-expanded":y,className:r.cn("flex h-9 w-full justify-between",E),children:[i.jsxs("div",{className:"flex items-center gap-2",children:[s&&i.jsx("div",{className:"mr-2",children:s}),i.jsx("span",{className:"max-w-[150px] overflow-hidden truncate text-ellipsis whitespace-nowrap",children:v()})]}),i.jsx(w.ChevronDown,{className:"size-4 opacity-50"})]})}),i.jsx(r.PopoverContent,{className:"w-full p-0",style:{minWidth:S},children:i.jsxs(e.Command,{children:[i.jsxs("div",{className:"flex h-9 items-center justify-between border-b pr-1",children:[i.jsx(e.CommandInput,{className:"h-9",placeholder:"Search..."}),i.jsx(e.IconButton,{className:"h-7",onClick:D,children:i.jsx(e.RefreshCw,{className:r.cn("size-3.5 opacity-50",n&&"animate-spin")})})]}),i.jsxs(e.CommandList,{children:[i.jsxs(e.CommandEmpty,{children:["No ",a==null?void 0:a.toLowerCase()," found."]}),i.jsx(e.CommandGroup,{children:x==null?void 0:x.map(f=>i.jsx(e.CommandItem,{className:"overflow-x-auto",value:f.name,onSelect:p=>F(p,f.id),children:i.jsxs("div",{className:"flex items-center gap-2",children:[i.jsx(r.Check,{className:r.cn("size-4",o===f.id?"opacity-100":"opacity-0")}),i.jsx("div",{title:f.name,children:f.name})]})},f.id))})]})]})})]})}function U(a,t){h.useEffect(()=>(a&&t&&(window.__SEMAPHOR_PRINT_STATE__={...t}),()=>{a&&window.__SEMAPHOR_PRINT_STATE__&&delete window.__SEMAPHOR_PRINT_STATE__}),[a,t])}exports.BriefingAuthor=e.BriefingAuthor;exports.BriefingAuthorDialog=e.BriefingAuthorDialog;exports.BriefingUiCapabilitiesBoundary=e.BriefingUiCapabilitiesBoundary;exports.BriefingUiCapabilitiesProvider=e.BriefingUiCapabilitiesProvider;exports.BriefingsApiError=e.BriefingsApiError;exports.CardSummary=e.CardSummary;exports.Dashboard=e.Dashboard;exports.DashboardCreateDialogBase=e.DashboardCreateDialogBase;exports.DashboardExportDialog=e.DashboardExportDialog;exports.DashboardWC=e.DashboardWC;exports.DisplayFormatPreferencesFields=e.DisplayFormatPreferencesFields;exports.ExportError=e.ExportError;exports.MatrixTableVisual=e.MatrixTableVisual;exports.ResourceType=e.ResourceType;exports.SemaphorContextProvider=e.SemaphorContextProvider;exports.SemaphorDataProvider=e.SemaphorQueryClient;exports.SemaphorQueryClient=e.SemaphorQueryClient;exports.ShareDialog=e.ShareDialog;exports.SummaryCard=e.SummaryCard;exports.Surfboard=e.DashboardPlus;exports.applyBriefingFormPatch=e.applyBriefingFormPatch;exports.briefingFormDraftToCreateRequest=e.briefingFormDraftToCreateRequest;exports.briefingFormDraftToUpdateRequest=e.briefingFormDraftToUpdateRequest;exports.briefingToFormDraft=e.briefingToFormDraft;exports.cancelBriefingPreviewRun=e.cancelBriefingPreviewRun;exports.cancelBriefingRun=e.cancelBriefingRun;exports.cancelExport=e.cancelExport;exports.cloneDeep=e.cloneDeep;exports.createBriefing=e.createBriefing;exports.createBriefingFormDraft=e.createBriefingFormDraft;exports.createExport=e.createExport;exports.deleteBriefing=e.deleteBriefing;exports.deleteBriefingRun=e.deleteBriefingRun;exports.downloadDocumentPdf=e.downloadDocumentPdf;exports.downloadPdf=e.downloadPdf;exports.formatFileSize=e.formatFileSize;exports.getBriefing=e.getBriefing;exports.getBriefingArtifact=e.getBriefingArtifact;exports.getBriefingEvidence=e.getBriefingEvidence;exports.getBriefingPreviewRun=e.getBriefingPreviewRun;exports.getBriefingRun=e.getBriefingRun;exports.getDownloadUrl=e.getDownloadUrl;exports.getExportStatus=e.getExportStatus;exports.getExports=e.getExports;exports.isExportComplete=e.isExportComplete;exports.isExportInProgress=e.isExportInProgress;exports.listBriefingRuns=e.listBriefingRuns;exports.listBriefingTenantSummaries=e.listBriefingTenantSummaries;exports.listBriefings=e.listBriefings;exports.pauseBriefing=e.pauseBriefing;exports.polishBriefingText=e.polishBriefingText;exports.previewBriefingPlan=e.previewBriefingPlan;exports.resumeBriefing=e.resumeBriefing;exports.runBriefingNow=e.runBriefingNow;exports.runBriefingPreview=e.runBriefingPreview;exports.updateBriefing=e.updateBriefing;exports.useActiveExports=e.useActiveExports;exports.useAddNewFrame=e.useAddNewFrame;exports.useBriefingUiCapabilities=e.useBriefingUiCapabilities;exports.useCard=e.useCard;exports.useCardSummary=e.useCardSummary;exports.useDashboardById=e.useDashboardById;exports.useDashboardQuery=e.useDashboardQuery;exports.useDashboardSummary=e.useDashboardSummary;exports.useDataColumns=e.useDataColumns;exports.useDateFilterHook=e.useDateFilterHook;exports.useEditorAside=e.useEditorAside;exports.useExportActions=e.useExportActions;exports.useExportStore=e.useExportStore;exports.useInProgressExportsCount=e.useInProgressExportsCount;exports.useManagementStore=e.useManagementStore;exports.useResourceManagement=e.useResourceManagement;exports.useTextFilterHook=e.useTextFilterHook;exports.validateBriefingFormDraft=e.validateBriefingFormDraft;exports.CALCULATED_FIELD_ENTITY_MARKER=d.CALCULATED_FIELD_ENTITY_MARKER;exports.CONTROL_CARD_DEFAULT_VALUE=d.CONTROL_CARD_DEFAULT_VALUE;exports.DATE_FORMAT_VALUES=d.DATE_FORMAT_VALUES;exports.EMPTY_SELECTION=d.EMPTY_SELECTION;exports.PivotMarkerEnum=d.PivotMarkerEnum;exports.getFieldRuntimeColumnName=d.getFieldRuntimeColumnName;exports.hasCalculatedFieldMarker=d.hasCalculatedFieldMarker;exports.hasCalculatedFormulaInputs=d.hasCalculatedFormulaInputs;exports.isCalculatedDimension=d.isCalculatedDimension;exports.isCalculatedField=d.isCalculatedField;exports.isCalculatedMetric=d.isCalculatedMetric;exports.ReportPreferencesDialog=P.ReportPreferencesDialog;exports.createEmptyKpiConfig=r.createEmptyKpiConfig;exports.createSqlGenConfig=r.createSqlGenConfig;exports.emitDashboardLoad=r.emitDashboardLoad;exports.emitDashboardUnload=r.emitDashboardUnload;exports.fmt=r.fmt;exports.getColumnDataType=r.getColumnDataType;exports.getFilterValueType=r.getFilterValueType;exports.getFormattedTableNameForQuery=r.getFormattedTableNameForQuery;exports.getQualifiedTableName=r.getQualifiedTableName;exports.getSql=r.getSql;exports.invalidateToken=r.invalidateToken;exports.isBooleanDataType=r.isBooleanDataType;exports.isColumnInSqlGen=r.isColumnInSqlGen;exports.isDateDataType=r.isDateDataType;exports.isNumberDataType=r.isNumberDataType;exports.isTextDataType=r.isTextDataType;exports.resolveDataType=r.resolveDataType;exports.resolveDatamodelName=r.resolveDatamodelName;exports.useCurrentActiveCard=r.useCurrentActiveCard;exports.useCurrentCardConfig=r.useCurrentCardConfig;exports.useCurrentSheetActiveCards=r.useCurrentSheetActiveCards;exports.useDashboardActions=r.useDashboardActions;exports.useDashboardStore=r.useDashboardStore;exports.useEditorActions=r.useEditorActions;exports.useEditorStore=r.useEditorStore;exports.DEFAULT_SEMANTIC_DOMAIN_ACCESS=N.DEFAULT_SEMANTIC_DOMAIN_ACCESS;exports.AdvancedModeToggle=u.AdvancedModeToggle;exports.DashboardBriefingLauncher=u.DashboardBriefingLauncher;exports.DashboardControlsSettings=u.DashboardControlsSettings;exports.DashboardFilterControlsButton=u.DashboardFilterControlsButton;exports.DashboardFilterControlsLauncher=u.DashboardFilterControlsLauncher;exports.DocumentControlsSettings=u.DocumentControlsSettings;exports.ExportNotificationItem=u.ExportNotificationItem;exports.ExportNotificationList=u.ExportNotificationList;exports.NotificationBell=u.NotificationBell;exports.UnsavedChangesAlert=u.UnsavedChangesAlert;exports.VisualEditingControls=u.VisualEditingControls;exports.VisualsLibraryDialog=u.VisualsLibraryDialog;exports.WatchDashboardButton=u.WatchDashboardButton;exports.useExportPolling=u.useExportPolling;exports.useExportRecovery=u.useExportRecovery;exports.useDebouncedDirtyCheck=R.useDebouncedDirtyCheck;exports.DEFAULT_CALENDAR_CONTEXT=_.DEFAULT_CALENDAR_CONTEXT;exports.resolveQueryColumnKeyMapEntry=T.resolveQueryColumnKeyMapEntry;exports.resolveUniqueQueryColumnKeyMapEntry=T.resolveUniqueQueryColumnKeyMapEntry;exports.normalizeDashboardForDirtyCheck=B.normalizeDashboardForDirtyCheck;exports.serializeDashboardForDirtyCheck=B.serializeDashboardForDirtyCheck;exports.Combobox=I;exports.Visual=M;exports.useExposePrintState=U;exports.usePristineSnapshotInitializer=q;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./chunks/index-DHF-2AqS.cjs"),d=require("./chunks/common-types-C57kJ59w.cjs"),P=require("./chunks/report-preferences-dialog-BK0yAJnQ.cjs"),i=require("react/jsx-runtime"),r=require("./chunks/switch-f3TuZNLr.cjs"),h=require("react"),N=require("./chunks/token-types-D7CaaI80.cjs"),u=require("./chunks/dashboard-briefing-launcher-DHtEouuH.cjs"),R=require("./chunks/use-debounced-dirty-check-XHSwAefL.cjs");require("./value-format-preferences/index.cjs");require("./chunks/validators-BDYprKI9.cjs");const _=require("./chunks/report-runtime-context-DqxS4wbi.cjs"),T=require("./chunks/pivot-result-identity-Bb4EixVN.cjs");require("./chunks/analyze-result-contract-LPDNldic.cjs");require("./chunks/temporal-bucket-authoring-o3Emn05L.cjs");require("./chunks/canonical-result-keys-BA0HCP4e.cjs");require("./chunks/saved-temporal-bucket-format-CFfWXRl9.cjs");require("react-dom");require("./chunks/color-CyB5o13F.cjs");require("./chunks/index-ByFbacH7.cjs");const B=require("./chunks/normalize-dashboard-for-dirty-check-BXRUMVb2.cjs"),w=require("./chunks/x-B6ghREd2.cjs");function j(a){const t=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(a){for(const o in a)if(o!=="default"){const l=Object.getOwnPropertyDescriptor(a,o);Object.defineProperty(t,o,l.get?l:{enumerable:!0,get:()=>a[o]})}}return t.default=a,Object.freeze(t)}const C=j(h);function M(a){const{displayPreferences:t,cardId:o,...l}=a,n={...l,id:a.dashboardId};return i.jsx(e.ErrorBoundary,{FallbackComponent:e.Fallback,children:i.jsxs(e.SemaphorContextProvider,{dashboardProps:n,children:[i.jsx(e.SemaphorReadyIndicator,{componentType:"visual",componentId:a.cardId}),i.jsx(e.UXProvider,{appearance:a.appearance,children:i.jsx(e.DisplayPreferencesProvider,{displayPreferences:t,children:i.jsx(e.Container,{type:"visual",cardId:o,...n,children:i.jsx(L,{cardId:o})})})})]})})}function L({cardId:a}){const t=r.useDashboardStore(n=>{var c;return(c=n.dashboard)==null?void 0:c.sheets}),{card:o,frame:l}=h.useMemo(()=>{const n=t==null?void 0:t.flatMap(s=>s.frames),c=n==null?void 0:n.flatMap(s=>s==null?void 0:s.cards),D=c==null?void 0:c.find(s=>(s==null?void 0:s.id)===a),E=n==null?void 0:n.find(s=>{var m;return(m=s==null?void 0:s.cards)==null?void 0:m.find(g=>(g==null?void 0:g.id)===a)});return{card:D,frame:E}},[t,a]);return!o||!l?i.jsx(e.FallbackVisual,{error:new Error("Card not found"),resetErrorBoundary:()=>{},customerFacingMessage:`Card not found with ID: ${a}`}):i.jsx("main",{className:"flex h-full grow flex-col",children:i.jsx(e.ErrorBoundary,{FallbackComponent:({error:n,resetErrorBoundary:c})=>i.jsx(e.FallbackVisual,{error:n,resetErrorBoundary:c,customerFacingMessage:"Error creating visual. Please try again."}),children:i.jsx(e.DashboardCard,{card:o,frame:l})})})}function q(a,t,o,l){h.useEffect(()=>{a&&!o&&t&&l(e.cloneDeep(t))},[a,o,t,l])}function I({name:a,items:t,value:o,onChange:l,isLoading:n,isError:c,refetch:D,className:E,icon:s,showNone:m=!1}){const g=C.useRef(null),[y,b]=C.useState(!1),[S,A]=C.useState("100%"),x=m?[...t||[],{id:"none",name:"None"}]:t;C.useLayoutEffect(()=>{g.current&&A(g.current.offsetWidth)},[]);function v(){var f;return n?"Loading...":c?"Error":o?(f=t==null?void 0:t.find(p=>p.id===o))==null?void 0:f.name:`Select ${a}`}function F(f,p){l(p),b(!1)}return i.jsxs(r.Popover,{open:y,onOpenChange:b,children:[i.jsx(r.PopoverTrigger,{asChild:!0,children:i.jsxs(r.Button,{ref:g,variant:"outline",role:"combobox","aria-expanded":y,className:r.cn("flex h-9 w-full justify-between",E),children:[i.jsxs("div",{className:"flex items-center gap-2",children:[s&&i.jsx("div",{className:"mr-2",children:s}),i.jsx("span",{className:"max-w-[150px] overflow-hidden truncate text-ellipsis whitespace-nowrap",children:v()})]}),i.jsx(w.ChevronDown,{className:"size-4 opacity-50"})]})}),i.jsx(r.PopoverContent,{className:"w-full p-0",style:{minWidth:S},children:i.jsxs(e.Command,{children:[i.jsxs("div",{className:"flex h-9 items-center justify-between border-b pr-1",children:[i.jsx(e.CommandInput,{className:"h-9",placeholder:"Search..."}),i.jsx(e.IconButton,{className:"h-7",onClick:D,children:i.jsx(e.RefreshCw,{className:r.cn("size-3.5 opacity-50",n&&"animate-spin")})})]}),i.jsxs(e.CommandList,{children:[i.jsxs(e.CommandEmpty,{children:["No ",a==null?void 0:a.toLowerCase()," found."]}),i.jsx(e.CommandGroup,{children:x==null?void 0:x.map(f=>i.jsx(e.CommandItem,{className:"overflow-x-auto",value:f.name,onSelect:p=>F(p,f.id),children:i.jsxs("div",{className:"flex items-center gap-2",children:[i.jsx(r.Check,{className:r.cn("size-4",o===f.id?"opacity-100":"opacity-0")}),i.jsx("div",{title:f.name,children:f.name})]})},f.id))})]})]})})]})}function U(a,t){h.useEffect(()=>(a&&t&&(window.__SEMAPHOR_PRINT_STATE__={...t}),()=>{a&&window.__SEMAPHOR_PRINT_STATE__&&delete window.__SEMAPHOR_PRINT_STATE__}),[a,t])}exports.BriefingAuthor=e.BriefingAuthor;exports.BriefingAuthorDialog=e.BriefingAuthorDialog;exports.BriefingUiCapabilitiesBoundary=e.BriefingUiCapabilitiesBoundary;exports.BriefingUiCapabilitiesProvider=e.BriefingUiCapabilitiesProvider;exports.BriefingsApiError=e.BriefingsApiError;exports.CardSummary=e.CardSummary;exports.Dashboard=e.Dashboard;exports.DashboardCreateDialogBase=e.DashboardCreateDialogBase;exports.DashboardExportDialog=e.DashboardExportDialog;exports.DashboardWC=e.DashboardWC;exports.DisplayFormatPreferencesFields=e.DisplayFormatPreferencesFields;exports.ExportError=e.ExportError;exports.MatrixTableVisual=e.MatrixTableVisual;exports.ResourceType=e.ResourceType;exports.SemaphorContextProvider=e.SemaphorContextProvider;exports.SemaphorDataProvider=e.SemaphorQueryClient;exports.SemaphorQueryClient=e.SemaphorQueryClient;exports.ShareDialog=e.ShareDialog;exports.SummaryCard=e.SummaryCard;exports.Surfboard=e.DashboardPlus;exports.applyBriefingFormPatch=e.applyBriefingFormPatch;exports.briefingFormDraftToCreateRequest=e.briefingFormDraftToCreateRequest;exports.briefingFormDraftToUpdateRequest=e.briefingFormDraftToUpdateRequest;exports.briefingToFormDraft=e.briefingToFormDraft;exports.cancelBriefingPreviewRun=e.cancelBriefingPreviewRun;exports.cancelBriefingRun=e.cancelBriefingRun;exports.cancelExport=e.cancelExport;exports.cloneDeep=e.cloneDeep;exports.createBriefing=e.createBriefing;exports.createBriefingFormDraft=e.createBriefingFormDraft;exports.createExport=e.createExport;exports.deleteBriefing=e.deleteBriefing;exports.deleteBriefingRun=e.deleteBriefingRun;exports.downloadDocumentPdf=e.downloadDocumentPdf;exports.downloadPdf=e.downloadPdf;exports.formatFileSize=e.formatFileSize;exports.getBriefing=e.getBriefing;exports.getBriefingArtifact=e.getBriefingArtifact;exports.getBriefingEvidence=e.getBriefingEvidence;exports.getBriefingPreviewRun=e.getBriefingPreviewRun;exports.getBriefingRun=e.getBriefingRun;exports.getDownloadUrl=e.getDownloadUrl;exports.getExportStatus=e.getExportStatus;exports.getExports=e.getExports;exports.isExportComplete=e.isExportComplete;exports.isExportInProgress=e.isExportInProgress;exports.listBriefingRuns=e.listBriefingRuns;exports.listBriefingTenantSummaries=e.listBriefingTenantSummaries;exports.listBriefings=e.listBriefings;exports.pauseBriefing=e.pauseBriefing;exports.polishBriefingText=e.polishBriefingText;exports.previewBriefingPlan=e.previewBriefingPlan;exports.resumeBriefing=e.resumeBriefing;exports.runBriefingNow=e.runBriefingNow;exports.runBriefingPreview=e.runBriefingPreview;exports.updateBriefing=e.updateBriefing;exports.useActiveExports=e.useActiveExports;exports.useAddNewFrame=e.useAddNewFrame;exports.useBriefingUiCapabilities=e.useBriefingUiCapabilities;exports.useCard=e.useCard;exports.useCardSummary=e.useCardSummary;exports.useDashboardById=e.useDashboardById;exports.useDashboardQuery=e.useDashboardQuery;exports.useDashboardSummary=e.useDashboardSummary;exports.useDataColumns=e.useDataColumns;exports.useDateFilterHook=e.useDateFilterHook;exports.useEditorAside=e.useEditorAside;exports.useExportActions=e.useExportActions;exports.useExportStore=e.useExportStore;exports.useInProgressExportsCount=e.useInProgressExportsCount;exports.useManagementStore=e.useManagementStore;exports.useResourceManagement=e.useResourceManagement;exports.useTextFilterHook=e.useTextFilterHook;exports.validateBriefingFormDraft=e.validateBriefingFormDraft;exports.CALCULATED_FIELD_ENTITY_MARKER=d.CALCULATED_FIELD_ENTITY_MARKER;exports.CONTROL_CARD_DEFAULT_VALUE=d.CONTROL_CARD_DEFAULT_VALUE;exports.DATE_FORMAT_VALUES=d.DATE_FORMAT_VALUES;exports.EMPTY_SELECTION=d.EMPTY_SELECTION;exports.PivotMarkerEnum=d.PivotMarkerEnum;exports.getFieldRuntimeColumnName=d.getFieldRuntimeColumnName;exports.hasCalculatedFieldMarker=d.hasCalculatedFieldMarker;exports.hasCalculatedFormulaInputs=d.hasCalculatedFormulaInputs;exports.isCalculatedDimension=d.isCalculatedDimension;exports.isCalculatedField=d.isCalculatedField;exports.isCalculatedMetric=d.isCalculatedMetric;exports.ReportPreferencesDialog=P.ReportPreferencesDialog;exports.createEmptyKpiConfig=r.createEmptyKpiConfig;exports.createSqlGenConfig=r.createSqlGenConfig;exports.emitDashboardLoad=r.emitDashboardLoad;exports.emitDashboardUnload=r.emitDashboardUnload;exports.fmt=r.fmt;exports.getColumnDataType=r.getColumnDataType;exports.getFilterValueType=r.getFilterValueType;exports.getFormattedTableNameForQuery=r.getFormattedTableNameForQuery;exports.getQualifiedTableName=r.getQualifiedTableName;exports.getSql=r.getSql;exports.invalidateToken=r.invalidateToken;exports.isBooleanDataType=r.isBooleanDataType;exports.isColumnInSqlGen=r.isColumnInSqlGen;exports.isDateDataType=r.isDateDataType;exports.isNumberDataType=r.isNumberDataType;exports.isTextDataType=r.isTextDataType;exports.resolveDataType=r.resolveDataType;exports.resolveDatamodelName=r.resolveDatamodelName;exports.useCurrentActiveCard=r.useCurrentActiveCard;exports.useCurrentCardConfig=r.useCurrentCardConfig;exports.useCurrentSheetActiveCards=r.useCurrentSheetActiveCards;exports.useDashboardActions=r.useDashboardActions;exports.useDashboardStore=r.useDashboardStore;exports.useEditorActions=r.useEditorActions;exports.useEditorStore=r.useEditorStore;exports.DEFAULT_SEMANTIC_DOMAIN_ACCESS=N.DEFAULT_SEMANTIC_DOMAIN_ACCESS;exports.AdvancedModeToggle=u.AdvancedModeToggle;exports.DashboardBriefingLauncher=u.DashboardBriefingLauncher;exports.DashboardControlsSettings=u.DashboardControlsSettings;exports.DashboardFilterControlsButton=u.DashboardFilterControlsButton;exports.DashboardFilterControlsLauncher=u.DashboardFilterControlsLauncher;exports.DocumentControlsSettings=u.DocumentControlsSettings;exports.ExportNotificationItem=u.ExportNotificationItem;exports.ExportNotificationList=u.ExportNotificationList;exports.NotificationBell=u.NotificationBell;exports.UnsavedChangesAlert=u.UnsavedChangesAlert;exports.VisualEditingControls=u.VisualEditingControls;exports.VisualsLibraryDialog=u.VisualsLibraryDialog;exports.WatchDashboardButton=u.WatchDashboardButton;exports.useExportPolling=u.useExportPolling;exports.useExportRecovery=u.useExportRecovery;exports.useDebouncedDirtyCheck=R.useDebouncedDirtyCheck;exports.DEFAULT_CALENDAR_CONTEXT=_.DEFAULT_CALENDAR_CONTEXT;exports.resolveQueryColumnKeyMapEntry=T.resolveQueryColumnKeyMapEntry;exports.resolveUniqueQueryColumnKeyMapEntry=T.resolveUniqueQueryColumnKeyMapEntry;exports.normalizeDashboardForDirtyCheck=B.normalizeDashboardForDirtyCheck;exports.serializeDashboardForDirtyCheck=B.serializeDashboardForDirtyCheck;exports.Combobox=I;exports.Visual=M;exports.useExposePrintState=U;exports.usePristineSnapshotInitializer=q;
package/dist/index.js CHANGED
@@ -1,14 +1,14 @@
1
- import { E as y, F as N, S, c as P, U as w, d as _, C as F, e as x, f as R, g as M, h as I, i as L, I as k, R as U, j as O, k as V, l as q, m as z } from "./chunks/index-xki38iaF.js";
2
- import { al as Da, am as Ea, an as xa, ao as ya, W as ba, H as Ta, D as va, B as Ba, A as Aa, x as Na, b as Sa, av as Pa, M as wa, o as _a, r as Fa, r as Ra, s as Ma, G as Ia, a as La, ag as ka, ai as Ua, aj as Oa, ah as Va, a7 as qa, aa as za, au as Wa, _ as ja, af as Qa, aq as Ha, a2 as Ka, ab as Ga, z as Xa, y as Ya, ay as $a, Z as Ja, ac as Za, ad as ae, a6 as ee, a9 as se, at as re, as as oe, ar as ie, ax as te, aw as ne, a8 as le, Y as ue, X as de, a0 as ce, ae as fe, a4 as pe, a1 as me, a3 as he, a5 as ge, $ as Ce, Q as De, N as Ee, ap as xe, w as ye, K as be, v as Te, n as ve, J as Be, L as Ae, p as Ne, V as Se, P as Pe, O as we, T as _e, u as Fe, t as Re, q as Me, ak as Ie } from "./chunks/index-xki38iaF.js";
1
+ import { E as y, F as N, S, c as P, U as w, d as _, C as F, e as x, f as R, g as M, h as I, i as L, I as k, R as U, j as O, k as V, l as q, m as z } from "./chunks/index-BS2-ZZGf.js";
2
+ import { al as Da, am as Ea, an as xa, ao as ya, W as ba, H as Ta, D as va, B as Ba, A as Aa, x as Na, b as Sa, av as Pa, M as wa, o as _a, r as Fa, r as Ra, s as Ma, G as Ia, a as La, ag as ka, ai as Ua, aj as Oa, ah as Va, a7 as qa, aa as za, au as Wa, _ as ja, af as Qa, aq as Ha, a2 as Ka, ab as Ga, z as Xa, y as Ya, ay as $a, Z as Ja, ac as Za, ad as ae, a6 as ee, a9 as se, at as re, as as oe, ar as ie, ax as te, aw as ne, a8 as le, Y as ue, X as de, a0 as ce, ae as fe, a4 as pe, a1 as me, a3 as he, a5 as ge, $ as Ce, Q as De, N as Ee, ap as xe, w as ye, K as be, v as Te, n as ve, J as Be, L as Ae, p as Ne, V as Se, P as Pe, O as we, T as _e, u as Fe, t as Re, q as Me, ak as Ie } from "./chunks/index-BS2-ZZGf.js";
3
3
  import { a as ke, C as Ue, D as Oe, E as Ve, P as qe, g as ze, d as We, h as je, b as Qe, c as He, i as Ke } from "./chunks/common-types-H51FLKB7.js";
4
- import { R as Xe } from "./chunks/report-preferences-dialog-VRe-9gct.js";
4
+ import { R as Xe } from "./chunks/report-preferences-dialog-BDpkcUtz.js";
5
5
  import { jsx as a, jsxs as u } from "react/jsx-runtime";
6
- import { u as W, P as j, a as Q, B as H, c as C, b as K, d as G } from "./chunks/switch-BOBLNHUj.js";
7
- import { A as $e, n as Je, e as Ze, f as as, g as es, p as ss, o as rs, s as os, t as is, m as ts, i as ns, l as ls, q as us, k as ds, j as cs, h as fs, v as ps, r as ms, w as hs, y as gs, x as Cs, z as Ds, E as Es, D as xs } from "./chunks/switch-BOBLNHUj.js";
6
+ import { u as W, P as j, a as Q, B as H, c as C, b as K, d as G } from "./chunks/switch-DQR-Va05.js";
7
+ import { A as $e, n as Je, e as Ze, f as as, g as es, p as ss, o as rs, s as os, t as is, m as ts, i as ns, l as ls, q as us, k as ds, j as cs, h as fs, v as ps, r as ms, w as hs, y as gs, x as Cs, z as Ds, E as Es, D as xs } from "./chunks/switch-DQR-Va05.js";
8
8
  import * as p from "react";
9
9
  import { useMemo as X, useEffect as b } from "react";
10
10
  import { D as bs } from "./chunks/token-types-GbxRUozo.js";
11
- import { A as vs, g as Bs, D as As, e as Ns, f as Ss, d as Ps, b as ws, E as _s, N as Fs, U as Rs, a as Ms, V as Is, W as Ls, u as ks, c as Us } from "./chunks/dashboard-briefing-launcher-DPbSnj9m.js";
11
+ import { A as vs, g as Bs, D as As, e as Ns, f as Ss, d as Ps, b as ws, E as _s, N as Fs, U as Rs, a as Ms, V as Is, W as Ls, u as ks, c as Us } from "./chunks/dashboard-briefing-launcher-ClCj98sq.js";
12
12
  import { u as Vs } from "./chunks/use-debounced-dirty-check-BwAbnX_5.js";
13
13
  import "./value-format-preferences/index.js";
14
14
  import "./chunks/validators-DEmd8Sin.js";
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("../chunks/index-DEwVo0GH.cjs"),r=require("../chunks/common-types-C57kJ59w.cjs"),o=require("../chunks/report-preferences-dialog-CdHVi8_W.cjs");exports.DisplayFormatPreferencesFields=e.DisplayFormatPreferencesFields;exports.Surfboard=e.DashboardPlus;exports.CONTROL_CARD_DEFAULT_VALUE=r.CONTROL_CARD_DEFAULT_VALUE;exports.EMPTY_SELECTION=r.EMPTY_SELECTION;exports.ReportPreferencesDialog=o.ReportPreferencesDialog;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("../chunks/index-DHF-2AqS.cjs"),r=require("../chunks/common-types-C57kJ59w.cjs"),o=require("../chunks/report-preferences-dialog-BK0yAJnQ.cjs");exports.DisplayFormatPreferencesFields=e.DisplayFormatPreferencesFields;exports.Surfboard=e.DashboardPlus;exports.CONTROL_CARD_DEFAULT_VALUE=r.CONTROL_CARD_DEFAULT_VALUE;exports.EMPTY_SELECTION=r.EMPTY_SELECTION;exports.ReportPreferencesDialog=o.ReportPreferencesDialog;
@@ -1,6 +1,6 @@
1
- import { b as a, a as o } from "../chunks/index-xki38iaF.js";
1
+ import { b as a, a as o } from "../chunks/index-BS2-ZZGf.js";
2
2
  import { C as f, E } from "../chunks/common-types-H51FLKB7.js";
3
- import { R as t } from "../chunks/report-preferences-dialog-VRe-9gct.js";
3
+ import { R as t } from "../chunks/report-preferences-dialog-BDpkcUtz.js";
4
4
  export {
5
5
  f as CONTROL_CARD_DEFAULT_VALUE,
6
6
  a as DisplayFormatPreferencesFields,
@@ -2312,6 +2312,8 @@ declare type RelativeDateFilter = {
2312
2312
  mode: 'this';
2313
2313
  unit: DateUnit;
2314
2314
  toDate?: boolean;
2315
+ /** Only used with unit=month for single-day month-boundary presets. */
2316
+ boundary?: 'first_day' | 'last_day';
2315
2317
  } | {
2316
2318
  mode: 'previous';
2317
2319
  unit: DateUnit;
@@ -2011,6 +2011,8 @@ declare type RelativeDateFilter = {
2011
2011
  mode: 'this';
2012
2012
  unit: DateUnit;
2013
2013
  toDate?: boolean;
2014
+ /** Only used with unit=month for single-day month-boundary presets. */
2015
+ boundary?: 'first_day' | 'last_day';
2014
2016
  } | {
2015
2017
  mode: 'previous';
2016
2018
  unit: DateUnit;
@@ -2238,6 +2238,8 @@ declare type RelativeDateFilter = {
2238
2238
  mode: 'this';
2239
2239
  unit: DateUnit;
2240
2240
  toDate?: boolean;
2241
+ /** Only used with unit=month for single-day month-boundary presets. */
2242
+ boundary?: 'first_day' | 'last_day';
2241
2243
  } | {
2242
2244
  mode: 'previous';
2243
2245
  unit: DateUnit;
@@ -213,6 +213,12 @@ export declare interface DateFormatOptions {
213
213
 
214
214
  export declare const DEFAULT_RESOLVED_TEMPORAL_STYLE_SET: ResolvedTemporalStyleSet;
215
215
 
216
+ /**
217
+ * Returns the stable aliases required to distinguish repeated instances of
218
+ * one metric field. Unique metric fields remain role/field scoped.
219
+ */
220
+ export declare function deriveMetricInstanceAliasExpectations(metrics: readonly IdentifiedMetricField[]): string[];
221
+
216
222
  /**
217
223
  * Derives the authored identity expectations stored in a canonical pivot
218
224
  * lifecycle contract. Producers and cache-compatibility consumers must use
@@ -5066,6 +5066,8 @@ declare type RelativeDateFilter = {
5066
5066
  mode: 'this';
5067
5067
  unit: DateUnit;
5068
5068
  toDate?: boolean;
5069
+ /** Only used with unit=month for single-day month-boundary presets. */
5070
+ boundary?: 'first_day' | 'last_day';
5069
5071
  } | {
5070
5072
  mode: 'previous';
5071
5073
  unit: DateUnit;
@@ -1714,6 +1714,8 @@ declare type RelativeDateFilter = {
1714
1714
  mode: 'this';
1715
1715
  unit: DateUnit;
1716
1716
  toDate?: boolean;
1717
+ /** Only used with unit=month for single-day month-boundary presets. */
1718
+ boundary?: 'first_day' | 'last_day';
1717
1719
  } | {
1718
1720
  mode: 'previous';
1719
1721
  unit: DateUnit;
@@ -2251,6 +2251,8 @@ declare type RelativeDateFilter = {
2251
2251
  mode: 'this';
2252
2252
  unit: DateUnit;
2253
2253
  toDate?: boolean;
2254
+ /** Only used with unit=month for single-day month-boundary presets. */
2255
+ boundary?: 'first_day' | 'last_day';
2254
2256
  } | {
2255
2257
  mode: 'previous';
2256
2258
  unit: DateUnit;
@@ -3270,6 +3270,8 @@ export declare type RelativeDateFilter = {
3270
3270
  mode: 'this';
3271
3271
  unit: DateUnit;
3272
3272
  toDate?: boolean;
3273
+ /** Only used with unit=month for single-day month-boundary presets. */
3274
+ boundary?: 'first_day' | 'last_day';
3273
3275
  } | {
3274
3276
  mode: 'previous';
3275
3277
  unit: DateUnit;
package/package.json CHANGED
@@ -5,7 +5,7 @@
5
5
  "email": "support@semaphor.cloud"
6
6
  },
7
7
  "license": "MIT",
8
- "version": "0.1.456",
8
+ "version": "0.1.459",
9
9
  "description": "Fully interactive and customizable dashboards for your apps.",
10
10
  "keywords": [
11
11
  "react",