react-semaphor 0.1.485 → 0.1.486
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/chunks/{dashboard-briefing-launcher-a1airxaP.js → dashboard-briefing-launcher-BLPYBFZn.js} +3 -3
- package/dist/chunks/{dashboard-briefing-launcher-6ONld9U4.cjs → dashboard-briefing-launcher-Bc8IJ2Bo.cjs} +1 -1
- package/dist/chunks/{dashboard-controls-DD2VIzYk.js → dashboard-controls-4dmUovsq.js} +3 -3
- package/dist/chunks/{dashboard-controls-DNfMo0Zi.cjs → dashboard-controls-DQ95FIgN.cjs} +1 -1
- package/dist/chunks/{dashboard-json-BEXkWUBR.js → dashboard-json-B8uqjktD.js} +1 -1
- package/dist/chunks/{dashboard-json-ADHgHJ__.cjs → dashboard-json-HPBVir83.cjs} +1 -1
- package/dist/chunks/{edit-dashboard-visual-yqmnJZUE.js → edit-dashboard-visual-CQHnffN_.js} +2 -2
- package/dist/chunks/{edit-dashboard-visual-CDv08dmD.cjs → edit-dashboard-visual-Dx7c7rdg.cjs} +1 -1
- package/dist/chunks/{editor-action-buttons-DcxOjhP_.cjs → editor-action-buttons-DXKTuaGM.cjs} +1 -1
- package/dist/chunks/{editor-action-buttons-C4N6PORV.js → editor-action-buttons-Dt990Wd9.js} +1 -1
- package/dist/chunks/{index-BOLKq4Ak.cjs → index-BMBjEw3O.cjs} +101 -101
- package/dist/chunks/{index-Pi9v2gBd.js → index-E4GmfQa7.js} +13098 -13083
- package/dist/chunks/pivot-header-presentation-BBM9y_3s.cjs +4 -0
- package/dist/chunks/{pivot-header-presentation-BX7M7Ii4.js → pivot-header-presentation-C5a6YCrP.js} +88 -80
- package/dist/chunks/{report-preferences-dialog-BEWligXl.cjs → report-preferences-dialog-CW1uGxxj.cjs} +1 -1
- package/dist/chunks/{report-preferences-dialog--aKplC1_.js → report-preferences-dialog-DBoyiHdV.js} +1 -1
- package/dist/dashboard/index.cjs +1 -1
- package/dist/dashboard/index.js +1 -1
- package/dist/data-app-builder/index.cjs +1 -1
- package/dist/data-app-builder/index.js +1 -1
- package/dist/format-utils/index.cjs +3 -3
- package/dist/format-utils/index.js +72 -71
- package/dist/index.cjs +1 -1
- package/dist/index.js +4 -4
- package/dist/surfboard/index.cjs +1 -1
- package/dist/surfboard/index.js +2 -2
- package/dist/types/format-utils.d.ts +4 -7
- package/package.json +1 -1
- package/dist/chunks/pivot-header-presentation-CTN5E7sJ.cjs +0 -4
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
"use strict";var Z=Object.defineProperty;var B=(e,t,r)=>t in e?Z(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r;var p=(e,t,r)=>B(e,typeof t!="symbol"?t+"":t,r);const c=require("./index-ByQgqT9d.cjs"),M=require("./pivot-result-lifecycle-D_bRCqaB.cjs"),j=require("./index-F25jnH0p.cjs"),H=require("./metric-comparison-x0lipytf.cjs"),v=["day","hour","minute","second","millisecond"],A={day:864e5,hour:36e5,minute:6e4,second:1e3,millisecond:1},Y={day:"d",hour:"hr",minute:"min",second:"s",millisecond:"ms"},W={day:["day","days"],hour:["hour","hours"],minute:["minute","minutes"],second:["second","seconds"],millisecond:["millisecond","milliseconds"]};function q(e){return e==="day"||e==="hour"||e==="minute"||e==="second"||e==="millisecond"}function R(e,t){return q(e)?e:t}function S(e,t){return v.indexOf(R(e,t))}function K(e,t){const r=S(e,"day"),o=S(t,"second"),n=Math.min(r,o),a=Math.max(r,o);return v.slice(n,a+1)}function J(e,t){return e*A[R(t,"second")]}function Q(e,t){const r=K(t.largestUnit,t.smallestUnit),o=r[r.length-1],n=A[o];let a=Math.round(e/n)*n;return r.map(i=>{const s=A[i],l=Math.floor(a/s);return a-=l*s,{unit:i,value:l}})}function z(e,t){const r=e.filter(a=>a.value!==0),o=r.length>0?r:[e[e.length-1]],n=typeof t=="number"&&Number.isFinite(t)?Math.max(1,Math.trunc(t)):o.length;return o.slice(0,n).map(a=>`${a.value}${Y[a.unit]}`).join(" ")}function ee(e,t){const r=e.filter(a=>a.value!==0),o=r.length>0?r:[e[e.length-1]],n=typeof t=="number"&&Number.isFinite(t)?Math.max(1,Math.trunc(t)):o.length;return o.slice(0,n).map(a=>{const[i,s]=W[a.unit];return`${a.value} ${a.value===1?i:s}`}).join(" ")}function te(e){const t=e.some(l=>l.unit==="day"&&l.value!==0),r=e.some(l=>l.unit==="millisecond"),o=e.findIndex(l=>l.value!==0),n=Math.max(0,e.length-2),a=t?0:o===-1?n:Math.min(o,n),i=o===-1?e.slice(n):e.slice(a);if(i.length===0)return"0";const s=i.map((l,u)=>l.unit==="millisecond"?String(l.value).padStart(3,"0"):u===0?String(l.value):String(l.value).padStart(2,"0")).join(":");return r?s.replace(/:(\d{3})$/,".$1"):s}function re(e,t,r){const o=`${r.prefix||""}${e}${r.suffix||""}`;return t?r.negativeInParentheses?`(${o})`:`-${o}`:o}function V(e,t={}){if(e==null)return"";const r=typeof e=="number"?e:typeof e=="string"&&e.trim()?Number(e):NaN;if(!Number.isFinite(r))return"";const o=t.inputUnit||"second",n=t.outputStyle==="digital"||t.outputStyle==="long"?t.outputStyle:"compact",a=r<0,i=Math.abs(J(r,o)),s=Q(i,t),l=n==="digital"?te(s):n==="long"?ee(s,t.maxUnits):z(s,t.maxUnits);return re(l,a,t)}function ne(e,t,r){const o={...t,locale:t.locale??r};if(o.type==="number")return M.formatNumericCanonical(e,o);const{prefix:n,suffix:a,...i}=o;return`${n??""}${M.formatNumericCanonical(e,{...i,negativeStyle:o.type==="currency"?o.negativeStyle:"minus"})}${a??""}`}function T(e,t,r){return e===null?{value:e,text:null}:!t||!c.isNumericCanonicalFormat(t)&&t.type!=="duration"?{value:e,text:M.formatNumericCanonical(e,{type:"number",locale:r})}:t.type==="duration"?{value:e,text:V(e,{inputUnit:t.inputUnit,outputStyle:t.outputStyle,largestUnit:t.largestUnit,smallestUnit:t.smallestUnit,maxUnits:t.maxUnits,prefix:t.prefix,suffix:t.suffix,negativeInParentheses:t.negativeStyle==="parentheses"})}:{value:e,text:ne(e,t,r)}}function C(e,t,r,o){return e===null?{value:e,text:null}:o==="percent"?{value:e,text:M.formatNumericCanonical(e,{type:"percent",locale:r,minimumFractionDigits:t,maximumFractionDigits:t,percentValueMode:"fraction"})}:{value:e,text:M.formatNumericCanonical(e,{type:"number",locale:r,minimumFractionDigits:t,maximumFractionDigits:t,suffix:"×"})}}function _(e,t){if(e===void 0)return t;if(!Number.isInteger(e)||e<0||e>6)throw new RangeError("Comparison precision must be an integer from 0 to 6.");return e}function oe(e,t){const r={mode:t.displayMode,current:T(e.currentValue,t.metricFormat,t.locale),comparison:T(e.comparisonValue,t.metricFormat,t.locale)};return(t.displayMode==="difference"||t.displayMode==="both")&&(r.difference=T(e.delta,t.metricFormat,t.locale)),(t.displayMode==="percent_change"||t.displayMode==="both")&&(r.percentChange=C(e.percentChange,_(t.precision,1),t.locale,"percent")),t.displayMode==="ratio"&&(r.ratio=C(e.ratio,_(t.precision,2),t.locale,"ratio")),r}function y(e,t){const r=c.toDate(e),o=c.toDate(t),n=r.getTime()-o.getTime();return n<0?-1:n>0?1:n}function ae(e){return c.constructFrom(e,Date.now())}function se(e,t){const r=c.toDate(e),o=c.toDate(t),n=r.getFullYear()-o.getFullYear(),a=r.getMonth()-o.getMonth();return n*12+a}function ie(e){return t=>{const o=(e?Math[e]:Math.trunc)(t);return o===0?0:o}}function le(e,t){return+c.toDate(e)-+c.toDate(t)}function ce(e){const t=c.toDate(e);return t.setHours(23,59,59,999),t}function ue(e){const t=c.toDate(e),r=t.getMonth();return t.setFullYear(t.getFullYear(),r+1,0),t.setHours(23,59,59,999),t}function fe(e){const t=c.toDate(e);return+ce(t)==+ue(t)}function me(e,t){const r=c.toDate(e),o=c.toDate(t),n=y(r,o),a=Math.abs(se(r,o));let i;if(a<1)i=0;else{r.getMonth()===1&&r.getDate()>27&&r.setDate(30),r.setMonth(r.getMonth()-n*a);let s=y(r,o)===-n;fe(c.toDate(e))&&a===1&&y(e,o)===1&&(s=!1),i=n*(a-Number(s))}return i===0?0:i}function ge(e,t,r){const o=le(e,t)/1e3;return ie(r==null?void 0:r.roundingMethod)(o)}function de(e,t,r){const o=c.getDefaultOptions(),n=(r==null?void 0:r.locale)??o.locale??c.enUS,a=2520,i=y(e,t);if(isNaN(i))throw new RangeError("Invalid time value");const s=Object.assign({},r,{addSuffix:r==null?void 0:r.addSuffix,comparison:i});let l,u;i>0?(l=c.toDate(t),u=c.toDate(e)):(l=c.toDate(e),u=c.toDate(t));const g=ge(u,l),m=(c.getTimezoneOffsetInMilliseconds(u)-c.getTimezoneOffsetInMilliseconds(l))/1e3,f=Math.round((g-m)/60);let h;if(f<2)return r!=null&&r.includeSeconds?g<5?n.formatDistance("lessThanXSeconds",5,s):g<10?n.formatDistance("lessThanXSeconds",10,s):g<20?n.formatDistance("lessThanXSeconds",20,s):g<40?n.formatDistance("halfAMinute",0,s):g<60?n.formatDistance("lessThanXMinutes",1,s):n.formatDistance("xMinutes",1,s):f===0?n.formatDistance("lessThanXMinutes",1,s):n.formatDistance("xMinutes",f,s);if(f<45)return n.formatDistance("xMinutes",f,s);if(f<90)return n.formatDistance("aboutXHours",1,s);if(f<c.minutesInDay){const d=Math.round(f/60);return n.formatDistance("aboutXHours",d,s)}else{if(f<a)return n.formatDistance("xDays",1,s);if(f<c.minutesInMonth){const d=Math.round(f/c.minutesInDay);return n.formatDistance("xDays",d,s)}else if(f<c.minutesInMonth*2)return h=Math.round(f/c.minutesInMonth),n.formatDistance("aboutXMonths",h,s)}if(h=me(u,l),h<12){const d=Math.round(f/c.minutesInMonth);return n.formatDistance("xMonths",d,s)}else{const d=h%12,b=Math.trunc(h/12);return d<3?n.formatDistance("aboutXYears",b,s):d<9?n.formatDistance("overXYears",b,s):n.formatDistance("almostXYears",b+1,s)}}function I(e,t){return de(e,ae(e),t)}function he(e,t){return e&&e!=="auto"?e:t}function Me(e,t=new Date){try{const r={timeZone:e,timeZoneName:"short"},n=new Intl.DateTimeFormat("en-US",r).formatToParts(t).find(a=>a.type==="timeZoneName");return(n==null?void 0:n.value)||e}catch{return e}}function ye(e){try{const t={timeZone:e,timeZoneName:"long"},o=new Intl.DateTimeFormat("en-US",t).formatToParts(new Date).find(n=>n.type==="timeZoneName");return(o==null?void 0:o.value)||e}catch{return e}}function L(e,t="auto"){if(!e)return new Date(NaN);const r=e.endsWith("Z"),o=/[+-]\d{2}:?\d{2}$/.test(e),n=/\([A-Z]{3,4}\)$/.test(e);if(t==="auto")return r||o||n?new Date(e):new Date(e+"Z");if(t==="local"){if(r||o){const a=e.replace(/Z$/,"").replace(/[+-]\d{2}:?\d{2}$/,"");return new Date(a)}return new Date(e)}else return t==="UTC"?r?new Date(e):o?new Date(e):new Date(e+"Z"):r||o||n?new Date(e):j.fromZonedTime(e,t)}const De="MM/dd/yyyy",we=(e,t,r,o="auto")=>{if(!e)return"";try{const n=L(e,o);if(isNaN(n.getTime()))return e;const i=(t&&t.trim()?t:De).replace(/LLLL/g,"MMMM").replace(/LLL/g,"MMM");return r&&r!=="auto"?c.formatInTimeZone(n,r,i):c.format(n,i)}catch(n){return console.error("Date formatting error:",n),e}},be=(e,t="auto")=>{if(!e)return"";try{const r=L(e,t);return isNaN(r.getTime())?e:I(r,{addSuffix:!0})}catch(r){return console.error("Relative time formatting error:",r),e}};function N(e,t=","){if(e==null)return"";const r=String(e);return r.includes(t)||r.includes('"')||r.includes(`
|
|
2
|
+
`)||r.includes("\r")?`"${r.replace(/"/g,'""')}"`:r}function E(e,t=","){return e.map(r=>N(r,t)).join(t)}function O(e,t={}){const{delimiter:r=",",lineEnding:o=`
|
|
3
|
+
`}=t;return e.map(n=>E(n,r)).join(o)}function Te(e,t={}){if(e.length===0)return"";const{delimiter:r=",",lineEnding:o=`
|
|
4
|
+
`,includeHeaders:n=!0,columns:a}=t,i=a||Object.keys(e[0]),s=[];n&&s.push(i);for(const l of e){const u=i.map(g=>{const m=l[g];return m==null?"":String(m)});s.push(u)}return O(s,{delimiter:r,lineEnding:o})}const P=1e4,Ae=1e6;function Le(e){return e>P}const xe="pdf-group-continuation";function $(e){if(!e.previousRow||e.row.isSubtotal===!0||e.row.isGrandTotal===!0||e.previousRow.isSubtotal===!0||e.previousRow.isGrandTotal===!0)return!0;for(let t=0;t<=e.levelIndex;t++)if(e.getValue(e.row,t)!==e.getValue(e.previousRow,t))return!0;return!1}const U="__TOTAL__";function D(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function w(e){return e===U}function pe(e){const t=new Map,r=(e.groupByColumns??[]).map((n,a)=>{var u,g,m;if(!D(n))throw new Error(`Aggregate groupByColumns[${a}] is invalid`);const i=typeof n.id=="string"&&n.id.length>0?n.id:void 0,s=i?(m=(g=(u=e.columnKeyMap)==null?void 0:u.byRole)==null?void 0:g.groupby)==null?void 0:m[i]:void 0,l=(s==null?void 0:s.outputKey)||(s==null?void 0:s.rawKey)||(typeof n.alias=="string"&&n.alias.length>0?n.alias:typeof n.name=="string"&&n.name.length>0?n.name:void 0);if(!l)throw new Error(`Aggregate groupByColumns[${a}] has no output key`);return[i,n.alias,n.name,l].forEach(f=>{typeof f=="string"&&f.length>0&&t.set(f,l)}),l}),o=(e.rowAggregates??[]).flatMap(n=>!D(n)||typeof n.function!="string"||typeof n.groupLevel!="string"?[]:[{function:n.function,groupLevel:n.groupLevel==="ALL"?"ALL":t.get(n.groupLevel)||n.groupLevel,...typeof n.label=="string"?{label:n.label}:{}}]);return{groupColumnKeys:r,rowAggregates:o}}function F(e){return e==="SUM"?"Total":e.charAt(0).toUpperCase()+e.slice(1).toLowerCase()}function G(e){var r;if(e.customLabel)return e.customLabel;const t=F(e.aggregateFunction);if(e.levelValue!==void 0&&!w(e.levelValue)){if(e.levelValue===null){const n=(r=e.formatValue)==null?void 0:r.call(e,null);return n?`Subtotal ${n}`:`Subtotal ${t}`}const o=e.formatValue?e.formatValue(e.levelValue):String(e.levelValue);if(o)return`Subtotal (${o})`}return`Subtotal ${t}`}function k(e,t){return t||`Grand ${F(e)}`}function Se(e){const t=e.context.groupColumnKeys.indexOf(e.columnKey);if(t<0)throw new Error(`Aggregate group column "${e.columnKey}" is unknown`);return $({row:e.row,previousRow:e.previousRow,levelIndex:t,getValue:(r,o)=>r[e.context.groupColumnKeys[o]]})}function x(e){var o,n;const t=e.context.groupColumnKeys,r=typeof e.row.aggregate=="string"?e.row.aggregate:"SUM";if(e.row.isGrandTotal===!0){const a=(o=e.context.rowAggregates.find(i=>i.groupLevel==="ALL"))==null?void 0:o.label;return{kind:"grand-total",cells:t.map((i,s)=>({columnKey:i,text:s===0?k(r,a):"",placement:s===0?"label":"empty",colSpan:s===0?t.length:1}))}}if(e.row.isSubtotal===!0){if(typeof e.row.subtotalLevel!="string")throw new Error("Aggregate subtotal row is missing subtotalLevel");const a=t.indexOf(e.row.subtotalLevel);if(a<0)throw new Error(`Aggregate subtotal level "${e.row.subtotalLevel}" has no group column`);const i=D(e.row.subtotalContext)?e.row.subtotalContext:void 0,s=D(i==null?void 0:i.groupByValues)?i.groupByValues:{},l=(n=e.context.rowAggregates.find(u=>u.groupLevel===e.row.subtotalLevel&&u.function===r))==null?void 0:n.label;return{kind:"subtotal",cells:t.map((u,g)=>{if(g>a)return{columnKey:u,text:"",placement:"empty",colSpan:1};if(g<a){const m=e.row[u];return{columnKey:u,text:m===void 0||w(m)?"":e.formatValue(m,u),placement:"value",colSpan:1}}return{columnKey:u,text:G({aggregateFunction:r,customLabel:l,levelValue:s[u],formatValue:m=>e.formatLabelValue?e.formatLabelValue(m,u):String(e.formatValue(m,u)??"")}),placement:"label",colSpan:t.length-a}})}}return{kind:"data",cells:t.map(a=>{const i=e.row[a];return{columnKey:a,text:i===void 0||w(i)?"":e.formatValue(i,a),placement:"value",colSpan:1}})}}function Ce(e){const t=x(e).cells.find(r=>r.columnKey===e.columnKey);if(!t)throw new Error(`Aggregate group column "${e.columnKey}" is unknown`);return t.text}function _e(e){return x(e).cells.map(t=>t.text)}class X extends Error{constructor(r,o){super(`${r}: ${o}`);p(this,"deliveryBlocking",!0);this.code=r,this.name="PivotHeaderPresentationError"}}function ve(e){var n;const t=e.mode??"formatted",r=e.members.map(a=>{var s;if(t==="canonical"||!a.temporalBucket)return a.value===null?"":String(a.value);const i=(s=e.resolveTemporalFormat)==null?void 0:s.call(e,a.fieldId);if(!i)throw new X("missing_resolved_temporal_format",`Missing resolved temporal presentation for pivot field "${a.fieldId}"`);return H.formatTemporalBucket({value:a.value,metadata:a.temporalBucket,format:i})}),o=((n=e.metricLabel)==null?void 0:n.trim())||void 0;return{memberLabels:r,...o?{metricLabel:o}:{},flattenedLabel:[...r,...o?[o]:[]].join(" / ")}}exports.AGGREGATE_TOTAL_MEMBER_MARKER=U;exports.DIRECT_CSV_EXPORT_MAX_ROWS=P;exports.FULL_DATASET_CSV_EXPORT_MAX_ROWS=Ae;exports.PDF_GROUP_CONTINUATION_CLASS=xe;exports.PivotHeaderPresentationError=X;exports.arrayToCSV=O;exports.arrayToCSVRow=E;exports.escapeCSVValue=N;exports.formatAggregateGrandTotalLabel=k;exports.formatAggregateGroupCell=Ce;exports.formatAggregateGroupRow=_e;exports.formatAggregateSubtotalLabel=G;exports.formatDate=we;exports.formatDistanceToNow=I;exports.formatDuration=V;exports.formatMetricComparison=oe;exports.formatRelativeTime=be;exports.getTimezoneAbbreviation=Me;exports.getTimezoneName=ye;exports.isAggregateTotalMemberMarker=w;exports.objectsToCSV=Te;exports.parseWithSourceTimezone=L;exports.presentAggregateGroupRow=x;exports.presentPivotHeader=ve;exports.requiresChunkedCsvExport=Le;exports.resolveAggregateTablePresentationContext=pe;exports.resolveTimezone=he;exports.shouldPresentAggregateGroupValue=Se;exports.shouldPresentGroupedTableValue=$;
|
package/dist/chunks/{pivot-header-presentation-BX7M7Ii4.js → pivot-header-presentation-C5a6YCrP.js}
RENAMED
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
var
|
|
2
|
-
var F = (e, t, n) => t in e ?
|
|
3
|
-
var
|
|
4
|
-
import { i as O, t as f, c as
|
|
1
|
+
var E = Object.defineProperty;
|
|
2
|
+
var F = (e, t, n) => t in e ? E(e, t, { enumerable: !0, configurable: !0, writable: !0, value: n }) : e[t] = n;
|
|
3
|
+
var T = (e, t, n) => F(e, typeof t != "symbol" ? t + "" : t, n);
|
|
4
|
+
import { i as O, t as f, c as P, g as U, e as k, a as A, m as S, b as M, f as Z, d as G } from "./index-BS0_dp0l.js";
|
|
5
5
|
import { b as y } from "./pivot-result-lifecycle-mjJ1rBvV.js";
|
|
6
6
|
import { f as X } from "./index-CACdoqu3.js";
|
|
7
7
|
import { h as B } from "./metric-comparison-CTexJ8V1.js";
|
|
8
|
-
const
|
|
8
|
+
const V = [
|
|
9
9
|
"day",
|
|
10
10
|
"hour",
|
|
11
11
|
"minute",
|
|
@@ -33,18 +33,18 @@ const I = [
|
|
|
33
33
|
function Y(e) {
|
|
34
34
|
return e === "day" || e === "hour" || e === "minute" || e === "second" || e === "millisecond";
|
|
35
35
|
}
|
|
36
|
-
function
|
|
36
|
+
function C(e, t) {
|
|
37
37
|
return Y(e) ? e : t;
|
|
38
38
|
}
|
|
39
|
-
function
|
|
40
|
-
return
|
|
39
|
+
function v(e, t) {
|
|
40
|
+
return V.indexOf(C(e, t));
|
|
41
41
|
}
|
|
42
42
|
function K(e, t) {
|
|
43
|
-
const n =
|
|
44
|
-
return
|
|
43
|
+
const n = v(e, "day"), o = v(t, "second"), r = Math.min(n, o), s = Math.max(n, o);
|
|
44
|
+
return V.slice(r, s + 1);
|
|
45
45
|
}
|
|
46
46
|
function W(e, t) {
|
|
47
|
-
return e * L[
|
|
47
|
+
return e * L[C(t, "second")];
|
|
48
48
|
}
|
|
49
49
|
function q(e, t) {
|
|
50
50
|
const n = K(t.largestUnit, t.smallestUnit), o = n[n.length - 1], r = L[o];
|
|
@@ -118,7 +118,7 @@ function x(e, t, n) {
|
|
|
118
118
|
})
|
|
119
119
|
} : { value: e, text: ne(e, t, n) };
|
|
120
120
|
}
|
|
121
|
-
function
|
|
121
|
+
function _(e, t, n, o) {
|
|
122
122
|
return e === null ? { value: e, text: null } : o === "percent" ? {
|
|
123
123
|
value: e,
|
|
124
124
|
text: y(e, {
|
|
@@ -139,13 +139,13 @@ function v(e, t, n, o) {
|
|
|
139
139
|
})
|
|
140
140
|
};
|
|
141
141
|
}
|
|
142
|
-
function
|
|
142
|
+
function I(e, t) {
|
|
143
143
|
if (e === void 0) return t;
|
|
144
144
|
if (!Number.isInteger(e) || e < 0 || e > 6)
|
|
145
145
|
throw new RangeError("Comparison precision must be an integer from 0 to 6.");
|
|
146
146
|
return e;
|
|
147
147
|
}
|
|
148
|
-
function
|
|
148
|
+
function Ie(e, t) {
|
|
149
149
|
const n = {
|
|
150
150
|
mode: t.displayMode,
|
|
151
151
|
current: x(
|
|
@@ -163,14 +163,14 @@ function ve(e, t) {
|
|
|
163
163
|
e.delta,
|
|
164
164
|
t.metricFormat,
|
|
165
165
|
t.locale
|
|
166
|
-
)), (t.displayMode === "percent_change" || t.displayMode === "both") && (n.percentChange =
|
|
166
|
+
)), (t.displayMode === "percent_change" || t.displayMode === "both") && (n.percentChange = _(
|
|
167
167
|
e.percentChange,
|
|
168
|
-
|
|
168
|
+
I(t.precision, 1),
|
|
169
169
|
t.locale,
|
|
170
170
|
"percent"
|
|
171
|
-
)), t.displayMode === "ratio" && (n.ratio =
|
|
171
|
+
)), t.displayMode === "ratio" && (n.ratio = _(
|
|
172
172
|
e.ratio,
|
|
173
|
-
|
|
173
|
+
I(t.precision, 2),
|
|
174
174
|
t.locale,
|
|
175
175
|
"ratio"
|
|
176
176
|
)), n;
|
|
@@ -180,7 +180,7 @@ function w(e, t) {
|
|
|
180
180
|
return r < 0 ? -1 : r > 0 ? 1 : r;
|
|
181
181
|
}
|
|
182
182
|
function re(e) {
|
|
183
|
-
return
|
|
183
|
+
return P(e, Date.now());
|
|
184
184
|
}
|
|
185
185
|
function oe(e, t) {
|
|
186
186
|
const n = f(e), o = f(t), r = n.getFullYear() - o.getFullYear(), s = n.getMonth() - o.getMonth();
|
|
@@ -226,7 +226,7 @@ function fe(e, t, n) {
|
|
|
226
226
|
return se(n == null ? void 0 : n.roundingMethod)(o);
|
|
227
227
|
}
|
|
228
228
|
function me(e, t, n) {
|
|
229
|
-
const o =
|
|
229
|
+
const o = U(), r = (n == null ? void 0 : n.locale) ?? o.locale ?? k, s = 2520, i = w(e, t);
|
|
230
230
|
if (isNaN(i))
|
|
231
231
|
throw new RangeError("Invalid time value");
|
|
232
232
|
const a = Object.assign({}, n, {
|
|
@@ -235,7 +235,7 @@ function me(e, t, n) {
|
|
|
235
235
|
});
|
|
236
236
|
let l, c;
|
|
237
237
|
i > 0 ? (l = f(t), c = f(e)) : (l = f(e), c = f(t));
|
|
238
|
-
const g = fe(c, l), m = (
|
|
238
|
+
const g = fe(c, l), m = (A(c) - A(l)) / 1e3, u = Math.round((g - m) / 60);
|
|
239
239
|
let h;
|
|
240
240
|
if (u < 2)
|
|
241
241
|
return n != null && n.includeSeconds ? g < 5 ? r.formatDistance("lessThanXSeconds", 5, a) : g < 10 ? r.formatDistance("lessThanXSeconds", 10, a) : g < 20 ? r.formatDistance("lessThanXSeconds", 20, a) : g < 40 ? r.formatDistance("halfAMinute", 0, a) : g < 60 ? r.formatDistance("lessThanXMinutes", 1, a) : r.formatDistance("xMinutes", 1, a) : u === 0 ? r.formatDistance("lessThanXMinutes", 1, a) : r.formatDistance("xMinutes", u, a);
|
|
@@ -266,10 +266,10 @@ function me(e, t, n) {
|
|
|
266
266
|
function ge(e, t) {
|
|
267
267
|
return me(e, re(e), t);
|
|
268
268
|
}
|
|
269
|
-
function
|
|
269
|
+
function Ve(e, t) {
|
|
270
270
|
return e && e !== "auto" ? e : t;
|
|
271
271
|
}
|
|
272
|
-
function
|
|
272
|
+
function Ce(e, t = /* @__PURE__ */ new Date()) {
|
|
273
273
|
try {
|
|
274
274
|
const n = {
|
|
275
275
|
timeZone: e,
|
|
@@ -293,7 +293,7 @@ function Ne(e) {
|
|
|
293
293
|
return e;
|
|
294
294
|
}
|
|
295
295
|
}
|
|
296
|
-
function
|
|
296
|
+
function N(e, t = "auto") {
|
|
297
297
|
if (!e)
|
|
298
298
|
return /* @__PURE__ */ new Date(NaN);
|
|
299
299
|
const n = e.endsWith("Z"), o = /[+-]\d{2}:?\d{2}$/.test(e), r = /\([A-Z]{3,4}\)$/.test(e);
|
|
@@ -307,11 +307,11 @@ function V(e, t = "auto") {
|
|
|
307
307
|
return new Date(e);
|
|
308
308
|
} else return t === "UTC" ? n ? new Date(e) : o ? new Date(e) : /* @__PURE__ */ new Date(e + "Z") : n || o || r ? new Date(e) : X(e, t);
|
|
309
309
|
}
|
|
310
|
-
const de = "MM/dd/yyyy",
|
|
310
|
+
const de = "MM/dd/yyyy", Re = (e, t, n, o = "auto") => {
|
|
311
311
|
if (!e)
|
|
312
312
|
return "";
|
|
313
313
|
try {
|
|
314
|
-
const r =
|
|
314
|
+
const r = N(e, o);
|
|
315
315
|
if (isNaN(r.getTime()))
|
|
316
316
|
return e;
|
|
317
317
|
const i = (t && t.trim() ? t : de).replace(/LLLL/g, "MMMM").replace(/LLL/g, "MMM");
|
|
@@ -319,11 +319,11 @@ const de = "MM/dd/yyyy", Ve = (e, t, n, o = "auto") => {
|
|
|
319
319
|
} catch (r) {
|
|
320
320
|
return console.error("Date formatting error:", r), e;
|
|
321
321
|
}
|
|
322
|
-
},
|
|
322
|
+
}, $e = (e, t = "auto") => {
|
|
323
323
|
if (!e)
|
|
324
324
|
return "";
|
|
325
325
|
try {
|
|
326
|
-
const n =
|
|
326
|
+
const n = N(e, t);
|
|
327
327
|
return isNaN(n.getTime()) ? e : ge(n, { addSuffix: !0 });
|
|
328
328
|
} catch (n) {
|
|
329
329
|
return console.error("Relative time formatting error:", n), e;
|
|
@@ -344,7 +344,7 @@ function Me(e, t = {}) {
|
|
|
344
344
|
` } = t;
|
|
345
345
|
return e.map((r) => ye(r, n)).join(o);
|
|
346
346
|
}
|
|
347
|
-
function
|
|
347
|
+
function Ee(e, t = {}) {
|
|
348
348
|
if (e.length === 0)
|
|
349
349
|
return "";
|
|
350
350
|
const {
|
|
@@ -364,16 +364,25 @@ function Re(e, t = {}) {
|
|
|
364
364
|
}
|
|
365
365
|
return Me(a, { delimiter: n, lineEnding: o });
|
|
366
366
|
}
|
|
367
|
-
const we = 1e4,
|
|
368
|
-
function
|
|
367
|
+
const we = 1e4, Fe = 1e6;
|
|
368
|
+
function Oe(e) {
|
|
369
369
|
return e > we;
|
|
370
370
|
}
|
|
371
|
-
const
|
|
371
|
+
const Pe = "pdf-group-continuation";
|
|
372
|
+
function be(e) {
|
|
373
|
+
if (!e.previousRow || e.row.isSubtotal === !0 || e.row.isGrandTotal === !0 || e.previousRow.isSubtotal === !0 || e.previousRow.isGrandTotal === !0)
|
|
374
|
+
return !0;
|
|
375
|
+
for (let t = 0; t <= e.levelIndex; t++)
|
|
376
|
+
if (e.getValue(e.row, t) !== e.getValue(e.previousRow, t))
|
|
377
|
+
return !0;
|
|
378
|
+
return !1;
|
|
379
|
+
}
|
|
380
|
+
const De = "__TOTAL__";
|
|
372
381
|
function b(e) {
|
|
373
382
|
return typeof e == "object" && e !== null && !Array.isArray(e);
|
|
374
383
|
}
|
|
375
384
|
function p(e) {
|
|
376
|
-
return e ===
|
|
385
|
+
return e === De;
|
|
377
386
|
}
|
|
378
387
|
function Ue(e) {
|
|
379
388
|
const t = /* @__PURE__ */ new Map(), n = (e.groupByColumns ?? []).map((r, s) => {
|
|
@@ -395,13 +404,13 @@ function Ue(e) {
|
|
|
395
404
|
]);
|
|
396
405
|
return { groupColumnKeys: n, rowAggregates: o };
|
|
397
406
|
}
|
|
398
|
-
function
|
|
407
|
+
function R(e) {
|
|
399
408
|
return e === "SUM" ? "Total" : e.charAt(0).toUpperCase() + e.slice(1).toLowerCase();
|
|
400
409
|
}
|
|
401
|
-
function
|
|
410
|
+
function xe(e) {
|
|
402
411
|
var n;
|
|
403
412
|
if (e.customLabel) return e.customLabel;
|
|
404
|
-
const t =
|
|
413
|
+
const t = R(e.aggregateFunction);
|
|
405
414
|
if (e.levelValue !== void 0 && !p(e.levelValue)) {
|
|
406
415
|
if (e.levelValue === null) {
|
|
407
416
|
const r = (n = e.formatValue) == null ? void 0 : n.call(e, null);
|
|
@@ -412,25 +421,23 @@ function De(e) {
|
|
|
412
421
|
}
|
|
413
422
|
return `Subtotal ${t}`;
|
|
414
423
|
}
|
|
415
|
-
function
|
|
416
|
-
return t || `Grand ${
|
|
424
|
+
function Le(e, t) {
|
|
425
|
+
return t || `Grand ${R(e)}`;
|
|
417
426
|
}
|
|
418
|
-
function
|
|
427
|
+
function ke(e) {
|
|
419
428
|
const t = e.context.groupColumnKeys.indexOf(e.columnKey);
|
|
420
429
|
if (t < 0)
|
|
421
430
|
throw new Error(
|
|
422
431
|
`Aggregate group column "${e.columnKey}" is unknown`
|
|
423
432
|
);
|
|
424
|
-
|
|
425
|
-
|
|
426
|
-
|
|
427
|
-
|
|
428
|
-
|
|
429
|
-
|
|
430
|
-
}
|
|
431
|
-
return !1;
|
|
433
|
+
return be({
|
|
434
|
+
row: e.row,
|
|
435
|
+
previousRow: e.previousRow,
|
|
436
|
+
levelIndex: t,
|
|
437
|
+
getValue: (n, o) => n[e.context.groupColumnKeys[o]]
|
|
438
|
+
});
|
|
432
439
|
}
|
|
433
|
-
function
|
|
440
|
+
function $(e) {
|
|
434
441
|
var o, r;
|
|
435
442
|
const t = e.context.groupColumnKeys, n = typeof e.row.aggregate == "string" ? e.row.aggregate : "SUM";
|
|
436
443
|
if (e.row.isGrandTotal === !0) {
|
|
@@ -441,7 +448,7 @@ function R(e) {
|
|
|
441
448
|
kind: "grand-total",
|
|
442
449
|
cells: t.map((i, a) => ({
|
|
443
450
|
columnKey: i,
|
|
444
|
-
text: a === 0 ?
|
|
451
|
+
text: a === 0 ? Le(n, s) : "",
|
|
445
452
|
placement: a === 0 ? "label" : "empty",
|
|
446
453
|
colSpan: a === 0 ? t.length : 1
|
|
447
454
|
}))
|
|
@@ -479,7 +486,7 @@ function R(e) {
|
|
|
479
486
|
}
|
|
480
487
|
return {
|
|
481
488
|
columnKey: c,
|
|
482
|
-
text:
|
|
489
|
+
text: xe({
|
|
483
490
|
aggregateFunction: n,
|
|
484
491
|
customLabel: l,
|
|
485
492
|
levelValue: a[c],
|
|
@@ -504,25 +511,25 @@ function R(e) {
|
|
|
504
511
|
})
|
|
505
512
|
};
|
|
506
513
|
}
|
|
507
|
-
function
|
|
508
|
-
const t =
|
|
514
|
+
function Ze(e) {
|
|
515
|
+
const t = $(e).cells.find(
|
|
509
516
|
(n) => n.columnKey === e.columnKey
|
|
510
517
|
);
|
|
511
518
|
if (!t)
|
|
512
519
|
throw new Error(`Aggregate group column "${e.columnKey}" is unknown`);
|
|
513
520
|
return t.text;
|
|
514
521
|
}
|
|
515
|
-
function
|
|
516
|
-
return
|
|
522
|
+
function Ge(e) {
|
|
523
|
+
return $(e).cells.map((t) => t.text);
|
|
517
524
|
}
|
|
518
|
-
class
|
|
525
|
+
class pe extends Error {
|
|
519
526
|
constructor(n, o) {
|
|
520
527
|
super(`${n}: ${o}`);
|
|
521
|
-
|
|
528
|
+
T(this, "deliveryBlocking", !0);
|
|
522
529
|
this.code = n, this.name = "PivotHeaderPresentationError";
|
|
523
530
|
}
|
|
524
531
|
}
|
|
525
|
-
function
|
|
532
|
+
function Xe(e) {
|
|
526
533
|
var r;
|
|
527
534
|
const t = e.mode ?? "formatted", n = e.members.map((s) => {
|
|
528
535
|
var a;
|
|
@@ -530,7 +537,7 @@ function Ge(e) {
|
|
|
530
537
|
return s.value === null ? "" : String(s.value);
|
|
531
538
|
const i = (a = e.resolveTemporalFormat) == null ? void 0 : a.call(e, s.fieldId);
|
|
532
539
|
if (!i)
|
|
533
|
-
throw new
|
|
540
|
+
throw new pe(
|
|
534
541
|
"missing_resolved_temporal_format",
|
|
535
542
|
`Missing resolved temporal presentation for pivot field "${s.fieldId}"`
|
|
536
543
|
);
|
|
@@ -550,32 +557,33 @@ function Ge(e) {
|
|
|
550
557
|
};
|
|
551
558
|
}
|
|
552
559
|
export {
|
|
553
|
-
|
|
560
|
+
De as A,
|
|
554
561
|
we as D,
|
|
555
|
-
|
|
556
|
-
|
|
557
|
-
|
|
562
|
+
Fe as F,
|
|
563
|
+
Pe as P,
|
|
564
|
+
Re as a,
|
|
558
565
|
ye as b,
|
|
559
566
|
te as c,
|
|
560
|
-
|
|
567
|
+
Ie as d,
|
|
561
568
|
he as e,
|
|
562
|
-
|
|
563
|
-
|
|
569
|
+
$e as f,
|
|
570
|
+
Ce as g,
|
|
564
571
|
Ne as h,
|
|
565
572
|
Me as i,
|
|
566
|
-
|
|
567
|
-
|
|
568
|
-
|
|
569
|
-
|
|
570
|
-
|
|
571
|
-
|
|
572
|
-
|
|
573
|
-
|
|
574
|
-
|
|
575
|
-
|
|
576
|
-
|
|
577
|
-
|
|
578
|
-
|
|
579
|
-
|
|
580
|
-
ge as x
|
|
573
|
+
Oe as j,
|
|
574
|
+
p as k,
|
|
575
|
+
Ue as l,
|
|
576
|
+
xe as m,
|
|
577
|
+
Le as n,
|
|
578
|
+
Ee as o,
|
|
579
|
+
N as p,
|
|
580
|
+
$ as q,
|
|
581
|
+
Ve as r,
|
|
582
|
+
ke as s,
|
|
583
|
+
Ze as t,
|
|
584
|
+
Ge as u,
|
|
585
|
+
pe as v,
|
|
586
|
+
Xe as w,
|
|
587
|
+
ge as x,
|
|
588
|
+
be as y
|
|
581
589
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";const e=require("react/jsx-runtime"),o=require("react"),l=require("./index-BOLKq4Ak.cjs"),u=require("./switch-EWWOPEdH.cjs"),V=require("./report-runtime-context-BfW4qiMJ.cjs");require("./x-B6ghREd2.cjs");require("./card-config-utils-D3Xuu0ub.cjs");require("./validators-DqIM0B3C.cjs");require("./analyze-result-contract-BX_nQmPN.cjs");const L=require("../value-format-preferences/index.cjs");function G(a={}){const{authToken:c,tokenProps:t}=l.useSemaphorContext(),m=u.useDashboardStore(p=>p.actions.applyResolvedCalendarPreferences),s=a.enabled??!0,i=(c==null?void 0:c.accessToken)??null,h=(t==null?void 0:t.apiServiceUrl)??null,[g,S]=o.useState(!1),[b,C]=o.useState(!1),[f,j]=o.useState(!1),[T,x]=o.useState(null),[w,P]=o.useState(null),v=o.useRef(i);v.current=i,o.useEffect(()=>{P(null),x(null),S(!1),C(!1),j(!1)},[i]);const N=o.useCallback(async p=>{const r=V.parseCalendarPreferencesResponse(await p.json());if(!r.ok)throw new Error("Calendar preferences response is invalid");return r.value},[]),k=o.useCallback(async()=>{if(!s||!i||!h)return;const p=i;S(!0),x(null);try{const r=await fetch(`${h}/v1/user-preferences/calendar`,{method:"GET",headers:{Authorization:`Bearer ${i}`}});if(!r.ok){const y=await r.json().catch(()=>({}));throw new Error(y.error||"Failed to fetch preferences")}const n=await N(r);v.current===p&&P(n)}catch(r){v.current===p&&x(r instanceof Error?r.message:"Unknown error")}finally{v.current===p&&S(!1)}},[i,h,s,N]);o.useEffect(()=>{s&&k()},[s,k]);const E=o.useCallback(async p=>{if(!i||!h)return x("Not authenticated"),!1;const r=i;C(!0),x(null);try{const n=await fetch(`${h}/v1/user-preferences/calendar`,{method:"PATCH",headers:{"Content-Type":"application/json",Authorization:`Bearer ${i}`},body:JSON.stringify(p)});if(!n.ok){const D=await n.json().catch(()=>({}));throw new Error(D.error||"Failed to update preferences")}const y=await N(n);return v.current!==r?!1:(P(y),m(y.resolved,y.sources),!0)}catch(n){return v.current===r&&x(n instanceof Error?n.message:"Unknown error"),!1}finally{v.current===r&&C(!1)}},[i,h,m,N]),A=o.useCallback(async()=>{if(!i||!h)return x("Not authenticated"),!1;const p=i;j(!0),x(null);try{const r=await fetch(`${h}/v1/user-preferences/calendar`,{method:"DELETE",headers:{Authorization:`Bearer ${i}`}});if(!r.ok){const y=await r.json().catch(()=>({}));throw new Error(y.error||"Failed to clear preferences")}const n=await N(r);return v.current!==p?!1:(P(n),m(n.resolved,n.sources),!0)}catch(r){return v.current===p&&x(r instanceof Error?r.message:"Unknown error"),!1}finally{v.current===p&&j(!1)}},[i,h,m,N]);return{preferences:w,isLoading:g,isSaving:b,isClearing:f,error:T,updatePreferences:E,clearPreferences:A,refetch:k}}const F=[{value:"America/New_York",label:"Eastern Time (US & Canada)"},{value:"America/Chicago",label:"Central Time (US & Canada)"},{value:"America/Denver",label:"Mountain Time (US & Canada)"},{value:"America/Los_Angeles",label:"Pacific Time (US & Canada)"},{value:"America/Phoenix",label:"Arizona"},{value:"America/Anchorage",label:"Alaska"},{value:"Pacific/Honolulu",label:"Hawaii"},{value:"Europe/London",label:"London"},{value:"Europe/Paris",label:"Paris, Berlin, Rome"},{value:"Asia/Tokyo",label:"Tokyo"},{value:"Asia/Shanghai",label:"Beijing, Shanghai"},{value:"Asia/Kolkata",label:"Mumbai, New Delhi"},{value:"Australia/Sydney",label:"Sydney"},{value:"UTC",label:"UTC"}],B=[{value:0,label:"Sunday"},{value:1,label:"Monday"},{value:6,label:"Saturday"}],R="text-[10px] font-medium uppercase tracking-[0.08em] text-muted-foreground";function W(){try{const a=Intl;if(a.supportedValuesOf)return a.supportedValuesOf("timeZone")}catch{}return F.map(a=>a.value)}function H(a){if(!a)return"default";if(a.tz!==a.weekStart)return"inherited";switch(a.tz){case"viewer_tenant":return"tenant";case"viewer_organization":return"organization";case"system_default":return"system";case"session_initial":return"embedded";default:return"default"}}function U(a){const c=F.find(t=>t.value===a);return c?c.label:a}function K(a){const c=B.find(t=>t.value===a);return c?c.label:String(a)}function J({active:a,onClose:c}){const{preferences:t,isLoading:m,isSaving:s,isClearing:i,updatePreferences:h,clearPreferences:g}=G({enabled:a}),S=l.useCalendarContext(),b=(t==null?void 0:t.resolved.tz)||(S==null?void 0:S.tz)||"UTC",C=(t==null?void 0:t.resolved.weekStart)??(S==null?void 0:S.weekStart)??1,[f,j]=o.useState((t==null?void 0:t.stored)===null),[T,x]=o.useState(!1),[w,P]=o.useState(b),[v,N]=o.useState(C),[k,E]=o.useState(!1),A=o.useMemo(()=>W(),[]),p=o.useMemo(()=>A.filter(d=>!F.some(M=>M.value===d)),[A]),r=o.useMemo(()=>U(w),[w]),n=t!=null&&t.inherited?U(t.inherited.tz):"UTC",y=t!=null&&t.inherited?K(t.inherited.weekStart):"Monday",D=H(t==null?void 0:t.inheritedSources);o.useEffect(()=>{if(!a){x(!1);return}T||(t&&j(t.stored===null),P(b),N(C))},[a,T,t,b,C]);const O=async()=>{if(m){l.ue.error("Preferences are still loading. Please try again.");return}f?await g()?(l.ue.success("Now using default settings."),c()):l.ue.error("Failed to save preferences. Please try again."):await h({tz:w,weekStart:v})?(l.ue.success("Preferences saved."),c()):l.ue.error("Failed to save preferences. Please try again.")},_=()=>{c()},z=s||i,$=z||m;return e.jsxs(e.Fragment,{children:[e.jsxs("div",{className:"space-y-4 py-1",children:[e.jsxs(l.RadioGroup,{value:f?"defaults":"custom",onValueChange:d=>{x(!0),j(d==="defaults")},className:"space-y-0.5",children:[e.jsxs("label",{htmlFor:"mode-defaults",className:u.cn("flex cursor-pointer items-start gap-2 rounded-control px-2 py-1.5 hover:bg-muted/50",f&&"bg-muted/50"),onClick:()=>{x(!0),j(!0)},children:[e.jsx(l.RadioGroupItem,{value:"defaults",id:"mode-defaults",className:"mt-0.5"}),e.jsxs("div",{className:"flex-1 min-w-0",children:[e.jsxs("p",{className:"text-[13px] font-medium text-foreground",children:["Use ",D," defaults"]}),e.jsxs("p",{className:"text-[12px] text-muted-foreground",children:[n,", week starts ",y]})]})]}),e.jsxs("label",{htmlFor:"mode-custom",className:u.cn("flex cursor-pointer items-start gap-2 rounded-control px-2 py-1.5 hover:bg-muted/50",!f&&"bg-muted/50"),onClick:()=>{x(!0),j(!1)},children:[e.jsx(l.RadioGroupItem,{value:"custom",id:"mode-custom",className:"mt-0.5"}),e.jsx("p",{className:"flex-1 text-[13px] font-medium text-foreground",children:"Use custom settings"})]})]}),e.jsxs("div",{className:u.cn("space-y-4 border-t border-border/60 pt-4 transition-opacity",f&&"pointer-events-none opacity-50"),children:[e.jsxs("div",{className:"space-y-1.5",children:[e.jsx(u.Label,{className:R,children:"Timezone"}),e.jsxs(u.Popover,{open:k,onOpenChange:E,modal:!0,children:[e.jsx(u.PopoverTrigger,{asChild:!0,children:e.jsxs(u.Button,{variant:"outline",size:"xs",role:"combobox","aria-expanded":k,className:"w-full justify-between text-[12px] font-normal",disabled:f,children:[e.jsx("span",{className:"truncate",children:r}),e.jsx(l.ChevronsUpDown,{className:"ml-2 h-3.5 w-3.5 shrink-0 opacity-50"})]})}),e.jsx(u.PopoverContent,{className:"z-50 w-[--radix-popover-trigger-width] p-0",align:"start",children:e.jsxs(l.Command,{className:"overflow-visible",children:[e.jsx(l.CommandInput,{placeholder:"Search timezones…"}),e.jsxs(l.CommandList,{children:[e.jsx(l.CommandEmpty,{children:"No timezone found."}),e.jsx(l.CommandGroup,{heading:"Common",children:F.map(d=>e.jsxs(l.CommandItem,{value:`${d.value} ${d.label}`,onSelect:()=>{x(!0),P(d.value),E(!1)},children:[e.jsx(u.Check,{className:u.cn("h-3.5 w-3.5",w===d.value?"opacity-100":"opacity-0")}),e.jsx("span",{className:"flex-1",children:d.label}),e.jsx("span",{className:"text-[11px] text-muted-foreground",children:d.value})]},d.value))}),e.jsx(l.CommandSeparator,{}),e.jsx(l.CommandGroup,{heading:"All timezones",children:p.map(d=>e.jsxs(l.CommandItem,{value:d,onSelect:()=>{x(!0),P(d),E(!1)},children:[e.jsx(u.Check,{className:u.cn("h-3.5 w-3.5",w===d?"opacity-100":"opacity-0")}),d]},d))})]})]})})]})]}),e.jsxs("div",{className:"space-y-1.5",children:[e.jsx(u.Label,{className:R,children:"Week starts on"}),e.jsx(l.RadioGroup,{value:String(v),onValueChange:d=>{x(!0),N(Number(d))},className:"flex gap-4",disabled:f,children:B.map(d=>e.jsxs("label",{htmlFor:`week-start-${d.value}`,className:u.cn("flex cursor-pointer items-center gap-2 text-[13px]",f&&"cursor-not-allowed"),children:[e.jsx(l.RadioGroupItem,{value:String(d.value),id:`week-start-${d.value}`,disabled:f}),d.label]},d.value))})]})]})]}),e.jsxs(l.DialogFooter,{children:[e.jsx(u.Button,{variant:"outline",size:"xs",onClick:_,disabled:z,children:"Cancel"}),e.jsx(u.Button,{size:"xs",onClick:O,disabled:$,children:z?e.jsxs(e.Fragment,{children:[e.jsx(u.LoaderCircle,{className:"h-3.5 w-3.5 animate-spin"}),"Saving…"]}):"Save"})]})]})}function Y(a={}){const{authToken:c,tokenProps:t}=l.useSemaphorContext(),m=u.useDashboardStore(r=>r.actions.applyResolvedValueFormatPreferences),s=a.enabled??!0,i=(c==null?void 0:c.accessToken)??null,h=(t==null?void 0:t.apiServiceUrl)??null,g=o.useRef(i);g.current=i;const[S,b]=o.useState(null),[C,f]=o.useState(!1),[j,T]=o.useState(!1),[x,w]=o.useState(!1),[P,v]=o.useState(null);o.useEffect(()=>{b(null),v(null),f(!1),T(!1),w(!1)},[i]);const N=o.useCallback(async r=>{const n=L.parseValueFormatPreferencesResponse(await r.json());if(!n.ok)throw new Error("Value format preferences response is invalid");return n.value},[]),k=o.useCallback(async(r,n)=>{if(!i||!h)throw new Error("Not authenticated");const y=await fetch(`${h}/v1/user-preferences/value-format`,{method:r,headers:{Authorization:`Bearer ${i}`,...n?{"Content-Type":"application/json"}:{}},body:n?JSON.stringify(n):void 0});if(!y.ok){const D=await y.json().catch(()=>({}));throw new Error(D.error||"Failed to update preferences")}return N(y)},[i,h,N]),E=o.useCallback(async()=>{if(!s||!i||!h)return;const r=i;f(!0),v(null);try{const n=await k("GET");g.current===r&&b(n)}catch(n){g.current===r&&v(n instanceof Error?n.message:"Unknown error")}finally{g.current===r&&f(!1)}},[i,h,s,k]);o.useEffect(()=>{s&&E()},[s,E]);const A=o.useCallback(async r=>{const n=i;T(!0),v(null);try{const y=await k("PATCH",r);return g.current!==n?!1:(b(y),m(y.resolved,y.sources),!0)}catch(y){return g.current===n&&v(y instanceof Error?y.message:"Unknown error"),!1}finally{g.current===n&&T(!1)}},[i,m,k]),p=o.useCallback(async()=>{const r=i;w(!0),v(null);try{const n=await k("DELETE");return g.current!==r?!1:(b(n),m(n.resolved,n.sources),!0)}catch(n){return g.current===r&&v(n instanceof Error?n.message:"Unknown error"),!1}finally{g.current===r&&w(!1)}},[i,m,k]);return{preferences:S,isLoading:C,isSaving:j,isClearing:x,error:P,updatePreferences:A,clearPreferences:p,refetch:E}}const I=["locale","dateStyle","dateTime.dateStyle","dateTime.timeStyle","defaultCurrency"];function q(a,c){var t,m;switch(c){case"locale":return a==null?void 0:a.locale;case"dateStyle":return a==null?void 0:a.dateStyle;case"dateTime.dateStyle":return(t=a==null?void 0:a.dateTime)==null?void 0:t.dateStyle;case"dateTime.timeStyle":return(m=a==null?void 0:a.dateTime)==null?void 0:m.timeStyle;case"defaultCurrency":return a==null?void 0:a.defaultCurrency}}function Z(a){var m,s;const c=(m=a==null?void 0:a.dateTime)==null?void 0:m.dateStyle,t=(s=a==null?void 0:a.dateTime)==null?void 0:s.timeStyle;return{locale:a==null?void 0:a.locale,dateStyle:a==null?void 0:a.dateStyle,dateTime:c===void 0&&t===void 0?void 0:{dateStyle:c,timeStyle:t},defaultCurrency:a==null?void 0:a.defaultCurrency}}function Q({active:a,onClose:c}){var g,S,b,C,f,j,T;const{preferences:t,isLoading:m,isSaving:s,updatePreferences:i}=Y({enabled:a});if(!a)return null;if(!t)return e.jsxs(e.Fragment,{children:[e.jsx("div",{className:"py-2",children:e.jsx("div",{className:"flex min-h-36 items-center justify-center text-[12px] text-muted-foreground",children:m?"Loading preferences…":"Preferences unavailable."})}),e.jsxs(l.DialogFooter,{className:"justify-between sm:justify-between",children:[e.jsx(u.Button,{variant:"ghost",size:"xs",disabled:!0,children:"Reset display formats"}),e.jsxs("div",{className:"flex gap-2",children:[e.jsx(u.Button,{variant:"outline",size:"xs",onClick:c,children:"Cancel"}),e.jsx(u.Button,{size:"xs",disabled:!0,children:"Save"})]})]})]});const h=[((g=t.stored)==null?void 0:g.locale)??"",((S=t.stored)==null?void 0:S.dateStyle)??"",((C=(b=t.stored)==null?void 0:b.dateTime)==null?void 0:C.dateStyle)??"",((j=(f=t.stored)==null?void 0:f.dateTime)==null?void 0:j.timeStyle)??"",((T=t.stored)==null?void 0:T.defaultCurrency)??""].join(":");return e.jsx(X,{preferences:t,isSaving:s,updatePreferences:i,onClose:c},h)}function X({preferences:a,isSaving:c,updatePreferences:t,onClose:m}){var b,C;const[s,i]=o.useState(()=>Z(a.stored)),h=(s.locale===void 0||L.canonicalizeSupportedLocale(s.locale)!==void 0)&&(s.defaultCurrency===void 0||L.canonicalizeSupportedCurrencyCode(s.defaultCurrency)!==void 0)&&(s.dateStyle===void 0||["short","medium","long"].includes(s.dateStyle))&&(((b=s.dateTime)==null?void 0:b.dateStyle)===void 0||["short","medium","long"].includes(s.dateTime.dateStyle))&&(((C=s.dateTime)==null?void 0:C.timeStyle)===void 0||["short","medium","long"].includes(s.dateTime.timeStyle)),g=async()=>{const f={...s.locale!==void 0?{locale:s.locale}:{},...s.dateStyle!==void 0?{dateStyle:s.dateStyle}:{},...s.dateTime?{dateTime:{...s.dateTime}}:{},...s.defaultCurrency!==void 0?{defaultCurrency:s.defaultCurrency}:{}},j=I.filter(w=>q(s,w)===void 0&&q(a.stored,w)!==void 0),T={...Object.keys(f).length>0?{set:f}:{},...j.length>0?{clear:j}:{}};(Object.keys(T).length===0?!0:await t(T))?(l.ue.success("Display format preferences saved."),m()):l.ue.error("Failed to save preferences. Please try again.")},S=async()=>{await t({clear:[...I]})?(l.ue.success("Display format preferences reset."),m()):l.ue.error("Failed to reset display format preferences. Please try again.")};return e.jsxs(e.Fragment,{children:[e.jsx("div",{className:"py-2",children:e.jsx(l.DisplayFormatPreferencesFields,{value:s,inherited:a.inherited,inheritedSources:a.inheritedSources,onChange:i,disabled:c})}),e.jsxs(l.DialogFooter,{className:"justify-between sm:justify-between",children:[e.jsx(u.Button,{variant:"ghost",size:"xs",onClick:S,disabled:c||a.stored===null,children:"Reset display formats"}),e.jsxs("div",{className:"flex gap-2",children:[e.jsx(u.Button,{variant:"outline",size:"xs",onClick:m,disabled:c,children:"Cancel"}),e.jsx(u.Button,{size:"xs",onClick:g,disabled:c||!h,children:c?e.jsxs(e.Fragment,{children:[e.jsx(u.LoaderCircle,{className:"h-3.5 w-3.5 animate-spin"}),"Saving…"]}):"Save"})]})]})]})}function ee({open:a,onOpenChange:c}){const[t,m]=o.useState("display"),s=()=>c(!1);return e.jsx(l.Dialog,{open:a,onOpenChange:c,children:e.jsxs(l.DialogContent,{className:"rounded-control border-border/60 sm:max-w-[440px] sm:rounded-control",children:[e.jsxs(l.DialogHeader,{children:[e.jsx(l.DialogTitle,{className:"text-[15px]",children:"Report preferences"}),e.jsx(l.DialogDescription,{className:"text-[13px] leading-5",children:"Set how values and Calendar periods appear for you."})]}),e.jsxs(u.Tabs,{value:t,onValueChange:m,children:[e.jsxs(u.TabsList,{variant:"underline",className:"w-full justify-start",children:[e.jsx(u.TabsTrigger,{value:"display",children:"Display formats"}),e.jsx(u.TabsTrigger,{value:"calendar",children:"Calendar"})]}),e.jsx(u.TabsContent,{value:"display",children:e.jsx(Q,{active:a&&t==="display",onClose:s})}),e.jsx(u.TabsContent,{value:"calendar",children:e.jsx(J,{active:a&&t==="calendar",onClose:s})})]})]})})}exports.ReportPreferencesDialog=ee;
|
|
1
|
+
"use strict";const e=require("react/jsx-runtime"),o=require("react"),l=require("./index-BMBjEw3O.cjs"),u=require("./switch-EWWOPEdH.cjs"),V=require("./report-runtime-context-BfW4qiMJ.cjs");require("./x-B6ghREd2.cjs");require("./card-config-utils-D3Xuu0ub.cjs");require("./validators-DqIM0B3C.cjs");require("./analyze-result-contract-BX_nQmPN.cjs");const L=require("../value-format-preferences/index.cjs");function G(a={}){const{authToken:c,tokenProps:t}=l.useSemaphorContext(),m=u.useDashboardStore(p=>p.actions.applyResolvedCalendarPreferences),s=a.enabled??!0,i=(c==null?void 0:c.accessToken)??null,h=(t==null?void 0:t.apiServiceUrl)??null,[g,S]=o.useState(!1),[b,C]=o.useState(!1),[f,j]=o.useState(!1),[T,x]=o.useState(null),[w,P]=o.useState(null),v=o.useRef(i);v.current=i,o.useEffect(()=>{P(null),x(null),S(!1),C(!1),j(!1)},[i]);const N=o.useCallback(async p=>{const r=V.parseCalendarPreferencesResponse(await p.json());if(!r.ok)throw new Error("Calendar preferences response is invalid");return r.value},[]),k=o.useCallback(async()=>{if(!s||!i||!h)return;const p=i;S(!0),x(null);try{const r=await fetch(`${h}/v1/user-preferences/calendar`,{method:"GET",headers:{Authorization:`Bearer ${i}`}});if(!r.ok){const y=await r.json().catch(()=>({}));throw new Error(y.error||"Failed to fetch preferences")}const n=await N(r);v.current===p&&P(n)}catch(r){v.current===p&&x(r instanceof Error?r.message:"Unknown error")}finally{v.current===p&&S(!1)}},[i,h,s,N]);o.useEffect(()=>{s&&k()},[s,k]);const E=o.useCallback(async p=>{if(!i||!h)return x("Not authenticated"),!1;const r=i;C(!0),x(null);try{const n=await fetch(`${h}/v1/user-preferences/calendar`,{method:"PATCH",headers:{"Content-Type":"application/json",Authorization:`Bearer ${i}`},body:JSON.stringify(p)});if(!n.ok){const D=await n.json().catch(()=>({}));throw new Error(D.error||"Failed to update preferences")}const y=await N(n);return v.current!==r?!1:(P(y),m(y.resolved,y.sources),!0)}catch(n){return v.current===r&&x(n instanceof Error?n.message:"Unknown error"),!1}finally{v.current===r&&C(!1)}},[i,h,m,N]),A=o.useCallback(async()=>{if(!i||!h)return x("Not authenticated"),!1;const p=i;j(!0),x(null);try{const r=await fetch(`${h}/v1/user-preferences/calendar`,{method:"DELETE",headers:{Authorization:`Bearer ${i}`}});if(!r.ok){const y=await r.json().catch(()=>({}));throw new Error(y.error||"Failed to clear preferences")}const n=await N(r);return v.current!==p?!1:(P(n),m(n.resolved,n.sources),!0)}catch(r){return v.current===p&&x(r instanceof Error?r.message:"Unknown error"),!1}finally{v.current===p&&j(!1)}},[i,h,m,N]);return{preferences:w,isLoading:g,isSaving:b,isClearing:f,error:T,updatePreferences:E,clearPreferences:A,refetch:k}}const F=[{value:"America/New_York",label:"Eastern Time (US & Canada)"},{value:"America/Chicago",label:"Central Time (US & Canada)"},{value:"America/Denver",label:"Mountain Time (US & Canada)"},{value:"America/Los_Angeles",label:"Pacific Time (US & Canada)"},{value:"America/Phoenix",label:"Arizona"},{value:"America/Anchorage",label:"Alaska"},{value:"Pacific/Honolulu",label:"Hawaii"},{value:"Europe/London",label:"London"},{value:"Europe/Paris",label:"Paris, Berlin, Rome"},{value:"Asia/Tokyo",label:"Tokyo"},{value:"Asia/Shanghai",label:"Beijing, Shanghai"},{value:"Asia/Kolkata",label:"Mumbai, New Delhi"},{value:"Australia/Sydney",label:"Sydney"},{value:"UTC",label:"UTC"}],B=[{value:0,label:"Sunday"},{value:1,label:"Monday"},{value:6,label:"Saturday"}],R="text-[10px] font-medium uppercase tracking-[0.08em] text-muted-foreground";function W(){try{const a=Intl;if(a.supportedValuesOf)return a.supportedValuesOf("timeZone")}catch{}return F.map(a=>a.value)}function H(a){if(!a)return"default";if(a.tz!==a.weekStart)return"inherited";switch(a.tz){case"viewer_tenant":return"tenant";case"viewer_organization":return"organization";case"system_default":return"system";case"session_initial":return"embedded";default:return"default"}}function U(a){const c=F.find(t=>t.value===a);return c?c.label:a}function K(a){const c=B.find(t=>t.value===a);return c?c.label:String(a)}function J({active:a,onClose:c}){const{preferences:t,isLoading:m,isSaving:s,isClearing:i,updatePreferences:h,clearPreferences:g}=G({enabled:a}),S=l.useCalendarContext(),b=(t==null?void 0:t.resolved.tz)||(S==null?void 0:S.tz)||"UTC",C=(t==null?void 0:t.resolved.weekStart)??(S==null?void 0:S.weekStart)??1,[f,j]=o.useState((t==null?void 0:t.stored)===null),[T,x]=o.useState(!1),[w,P]=o.useState(b),[v,N]=o.useState(C),[k,E]=o.useState(!1),A=o.useMemo(()=>W(),[]),p=o.useMemo(()=>A.filter(d=>!F.some(M=>M.value===d)),[A]),r=o.useMemo(()=>U(w),[w]),n=t!=null&&t.inherited?U(t.inherited.tz):"UTC",y=t!=null&&t.inherited?K(t.inherited.weekStart):"Monday",D=H(t==null?void 0:t.inheritedSources);o.useEffect(()=>{if(!a){x(!1);return}T||(t&&j(t.stored===null),P(b),N(C))},[a,T,t,b,C]);const O=async()=>{if(m){l.ue.error("Preferences are still loading. Please try again.");return}f?await g()?(l.ue.success("Now using default settings."),c()):l.ue.error("Failed to save preferences. Please try again."):await h({tz:w,weekStart:v})?(l.ue.success("Preferences saved."),c()):l.ue.error("Failed to save preferences. Please try again.")},_=()=>{c()},z=s||i,$=z||m;return e.jsxs(e.Fragment,{children:[e.jsxs("div",{className:"space-y-4 py-1",children:[e.jsxs(l.RadioGroup,{value:f?"defaults":"custom",onValueChange:d=>{x(!0),j(d==="defaults")},className:"space-y-0.5",children:[e.jsxs("label",{htmlFor:"mode-defaults",className:u.cn("flex cursor-pointer items-start gap-2 rounded-control px-2 py-1.5 hover:bg-muted/50",f&&"bg-muted/50"),onClick:()=>{x(!0),j(!0)},children:[e.jsx(l.RadioGroupItem,{value:"defaults",id:"mode-defaults",className:"mt-0.5"}),e.jsxs("div",{className:"flex-1 min-w-0",children:[e.jsxs("p",{className:"text-[13px] font-medium text-foreground",children:["Use ",D," defaults"]}),e.jsxs("p",{className:"text-[12px] text-muted-foreground",children:[n,", week starts ",y]})]})]}),e.jsxs("label",{htmlFor:"mode-custom",className:u.cn("flex cursor-pointer items-start gap-2 rounded-control px-2 py-1.5 hover:bg-muted/50",!f&&"bg-muted/50"),onClick:()=>{x(!0),j(!1)},children:[e.jsx(l.RadioGroupItem,{value:"custom",id:"mode-custom",className:"mt-0.5"}),e.jsx("p",{className:"flex-1 text-[13px] font-medium text-foreground",children:"Use custom settings"})]})]}),e.jsxs("div",{className:u.cn("space-y-4 border-t border-border/60 pt-4 transition-opacity",f&&"pointer-events-none opacity-50"),children:[e.jsxs("div",{className:"space-y-1.5",children:[e.jsx(u.Label,{className:R,children:"Timezone"}),e.jsxs(u.Popover,{open:k,onOpenChange:E,modal:!0,children:[e.jsx(u.PopoverTrigger,{asChild:!0,children:e.jsxs(u.Button,{variant:"outline",size:"xs",role:"combobox","aria-expanded":k,className:"w-full justify-between text-[12px] font-normal",disabled:f,children:[e.jsx("span",{className:"truncate",children:r}),e.jsx(l.ChevronsUpDown,{className:"ml-2 h-3.5 w-3.5 shrink-0 opacity-50"})]})}),e.jsx(u.PopoverContent,{className:"z-50 w-[--radix-popover-trigger-width] p-0",align:"start",children:e.jsxs(l.Command,{className:"overflow-visible",children:[e.jsx(l.CommandInput,{placeholder:"Search timezones…"}),e.jsxs(l.CommandList,{children:[e.jsx(l.CommandEmpty,{children:"No timezone found."}),e.jsx(l.CommandGroup,{heading:"Common",children:F.map(d=>e.jsxs(l.CommandItem,{value:`${d.value} ${d.label}`,onSelect:()=>{x(!0),P(d.value),E(!1)},children:[e.jsx(u.Check,{className:u.cn("h-3.5 w-3.5",w===d.value?"opacity-100":"opacity-0")}),e.jsx("span",{className:"flex-1",children:d.label}),e.jsx("span",{className:"text-[11px] text-muted-foreground",children:d.value})]},d.value))}),e.jsx(l.CommandSeparator,{}),e.jsx(l.CommandGroup,{heading:"All timezones",children:p.map(d=>e.jsxs(l.CommandItem,{value:d,onSelect:()=>{x(!0),P(d),E(!1)},children:[e.jsx(u.Check,{className:u.cn("h-3.5 w-3.5",w===d?"opacity-100":"opacity-0")}),d]},d))})]})]})})]})]}),e.jsxs("div",{className:"space-y-1.5",children:[e.jsx(u.Label,{className:R,children:"Week starts on"}),e.jsx(l.RadioGroup,{value:String(v),onValueChange:d=>{x(!0),N(Number(d))},className:"flex gap-4",disabled:f,children:B.map(d=>e.jsxs("label",{htmlFor:`week-start-${d.value}`,className:u.cn("flex cursor-pointer items-center gap-2 text-[13px]",f&&"cursor-not-allowed"),children:[e.jsx(l.RadioGroupItem,{value:String(d.value),id:`week-start-${d.value}`,disabled:f}),d.label]},d.value))})]})]})]}),e.jsxs(l.DialogFooter,{children:[e.jsx(u.Button,{variant:"outline",size:"xs",onClick:_,disabled:z,children:"Cancel"}),e.jsx(u.Button,{size:"xs",onClick:O,disabled:$,children:z?e.jsxs(e.Fragment,{children:[e.jsx(u.LoaderCircle,{className:"h-3.5 w-3.5 animate-spin"}),"Saving…"]}):"Save"})]})]})}function Y(a={}){const{authToken:c,tokenProps:t}=l.useSemaphorContext(),m=u.useDashboardStore(r=>r.actions.applyResolvedValueFormatPreferences),s=a.enabled??!0,i=(c==null?void 0:c.accessToken)??null,h=(t==null?void 0:t.apiServiceUrl)??null,g=o.useRef(i);g.current=i;const[S,b]=o.useState(null),[C,f]=o.useState(!1),[j,T]=o.useState(!1),[x,w]=o.useState(!1),[P,v]=o.useState(null);o.useEffect(()=>{b(null),v(null),f(!1),T(!1),w(!1)},[i]);const N=o.useCallback(async r=>{const n=L.parseValueFormatPreferencesResponse(await r.json());if(!n.ok)throw new Error("Value format preferences response is invalid");return n.value},[]),k=o.useCallback(async(r,n)=>{if(!i||!h)throw new Error("Not authenticated");const y=await fetch(`${h}/v1/user-preferences/value-format`,{method:r,headers:{Authorization:`Bearer ${i}`,...n?{"Content-Type":"application/json"}:{}},body:n?JSON.stringify(n):void 0});if(!y.ok){const D=await y.json().catch(()=>({}));throw new Error(D.error||"Failed to update preferences")}return N(y)},[i,h,N]),E=o.useCallback(async()=>{if(!s||!i||!h)return;const r=i;f(!0),v(null);try{const n=await k("GET");g.current===r&&b(n)}catch(n){g.current===r&&v(n instanceof Error?n.message:"Unknown error")}finally{g.current===r&&f(!1)}},[i,h,s,k]);o.useEffect(()=>{s&&E()},[s,E]);const A=o.useCallback(async r=>{const n=i;T(!0),v(null);try{const y=await k("PATCH",r);return g.current!==n?!1:(b(y),m(y.resolved,y.sources),!0)}catch(y){return g.current===n&&v(y instanceof Error?y.message:"Unknown error"),!1}finally{g.current===n&&T(!1)}},[i,m,k]),p=o.useCallback(async()=>{const r=i;w(!0),v(null);try{const n=await k("DELETE");return g.current!==r?!1:(b(n),m(n.resolved,n.sources),!0)}catch(n){return g.current===r&&v(n instanceof Error?n.message:"Unknown error"),!1}finally{g.current===r&&w(!1)}},[i,m,k]);return{preferences:S,isLoading:C,isSaving:j,isClearing:x,error:P,updatePreferences:A,clearPreferences:p,refetch:E}}const I=["locale","dateStyle","dateTime.dateStyle","dateTime.timeStyle","defaultCurrency"];function q(a,c){var t,m;switch(c){case"locale":return a==null?void 0:a.locale;case"dateStyle":return a==null?void 0:a.dateStyle;case"dateTime.dateStyle":return(t=a==null?void 0:a.dateTime)==null?void 0:t.dateStyle;case"dateTime.timeStyle":return(m=a==null?void 0:a.dateTime)==null?void 0:m.timeStyle;case"defaultCurrency":return a==null?void 0:a.defaultCurrency}}function Z(a){var m,s;const c=(m=a==null?void 0:a.dateTime)==null?void 0:m.dateStyle,t=(s=a==null?void 0:a.dateTime)==null?void 0:s.timeStyle;return{locale:a==null?void 0:a.locale,dateStyle:a==null?void 0:a.dateStyle,dateTime:c===void 0&&t===void 0?void 0:{dateStyle:c,timeStyle:t},defaultCurrency:a==null?void 0:a.defaultCurrency}}function Q({active:a,onClose:c}){var g,S,b,C,f,j,T;const{preferences:t,isLoading:m,isSaving:s,updatePreferences:i}=Y({enabled:a});if(!a)return null;if(!t)return e.jsxs(e.Fragment,{children:[e.jsx("div",{className:"py-2",children:e.jsx("div",{className:"flex min-h-36 items-center justify-center text-[12px] text-muted-foreground",children:m?"Loading preferences…":"Preferences unavailable."})}),e.jsxs(l.DialogFooter,{className:"justify-between sm:justify-between",children:[e.jsx(u.Button,{variant:"ghost",size:"xs",disabled:!0,children:"Reset display formats"}),e.jsxs("div",{className:"flex gap-2",children:[e.jsx(u.Button,{variant:"outline",size:"xs",onClick:c,children:"Cancel"}),e.jsx(u.Button,{size:"xs",disabled:!0,children:"Save"})]})]})]});const h=[((g=t.stored)==null?void 0:g.locale)??"",((S=t.stored)==null?void 0:S.dateStyle)??"",((C=(b=t.stored)==null?void 0:b.dateTime)==null?void 0:C.dateStyle)??"",((j=(f=t.stored)==null?void 0:f.dateTime)==null?void 0:j.timeStyle)??"",((T=t.stored)==null?void 0:T.defaultCurrency)??""].join(":");return e.jsx(X,{preferences:t,isSaving:s,updatePreferences:i,onClose:c},h)}function X({preferences:a,isSaving:c,updatePreferences:t,onClose:m}){var b,C;const[s,i]=o.useState(()=>Z(a.stored)),h=(s.locale===void 0||L.canonicalizeSupportedLocale(s.locale)!==void 0)&&(s.defaultCurrency===void 0||L.canonicalizeSupportedCurrencyCode(s.defaultCurrency)!==void 0)&&(s.dateStyle===void 0||["short","medium","long"].includes(s.dateStyle))&&(((b=s.dateTime)==null?void 0:b.dateStyle)===void 0||["short","medium","long"].includes(s.dateTime.dateStyle))&&(((C=s.dateTime)==null?void 0:C.timeStyle)===void 0||["short","medium","long"].includes(s.dateTime.timeStyle)),g=async()=>{const f={...s.locale!==void 0?{locale:s.locale}:{},...s.dateStyle!==void 0?{dateStyle:s.dateStyle}:{},...s.dateTime?{dateTime:{...s.dateTime}}:{},...s.defaultCurrency!==void 0?{defaultCurrency:s.defaultCurrency}:{}},j=I.filter(w=>q(s,w)===void 0&&q(a.stored,w)!==void 0),T={...Object.keys(f).length>0?{set:f}:{},...j.length>0?{clear:j}:{}};(Object.keys(T).length===0?!0:await t(T))?(l.ue.success("Display format preferences saved."),m()):l.ue.error("Failed to save preferences. Please try again.")},S=async()=>{await t({clear:[...I]})?(l.ue.success("Display format preferences reset."),m()):l.ue.error("Failed to reset display format preferences. Please try again.")};return e.jsxs(e.Fragment,{children:[e.jsx("div",{className:"py-2",children:e.jsx(l.DisplayFormatPreferencesFields,{value:s,inherited:a.inherited,inheritedSources:a.inheritedSources,onChange:i,disabled:c})}),e.jsxs(l.DialogFooter,{className:"justify-between sm:justify-between",children:[e.jsx(u.Button,{variant:"ghost",size:"xs",onClick:S,disabled:c||a.stored===null,children:"Reset display formats"}),e.jsxs("div",{className:"flex gap-2",children:[e.jsx(u.Button,{variant:"outline",size:"xs",onClick:m,disabled:c,children:"Cancel"}),e.jsx(u.Button,{size:"xs",onClick:g,disabled:c||!h,children:c?e.jsxs(e.Fragment,{children:[e.jsx(u.LoaderCircle,{className:"h-3.5 w-3.5 animate-spin"}),"Saving…"]}):"Save"})]})]})]})}function ee({open:a,onOpenChange:c}){const[t,m]=o.useState("display"),s=()=>c(!1);return e.jsx(l.Dialog,{open:a,onOpenChange:c,children:e.jsxs(l.DialogContent,{className:"rounded-control border-border/60 sm:max-w-[440px] sm:rounded-control",children:[e.jsxs(l.DialogHeader,{children:[e.jsx(l.DialogTitle,{className:"text-[15px]",children:"Report preferences"}),e.jsx(l.DialogDescription,{className:"text-[13px] leading-5",children:"Set how values and Calendar periods appear for you."})]}),e.jsxs(u.Tabs,{value:t,onValueChange:m,children:[e.jsxs(u.TabsList,{variant:"underline",className:"w-full justify-start",children:[e.jsx(u.TabsTrigger,{value:"display",children:"Display formats"}),e.jsx(u.TabsTrigger,{value:"calendar",children:"Calendar"})]}),e.jsx(u.TabsContent,{value:"display",children:e.jsx(Q,{active:a&&t==="display",onClose:s})}),e.jsx(u.TabsContent,{value:"calendar",children:e.jsx(J,{active:a&&t==="calendar",onClose:s})})]})]})})}exports.ReportPreferencesDialog=ee;
|
package/dist/chunks/{report-preferences-dialog--aKplC1_.js → report-preferences-dialog-DBoyiHdV.js}
RENAMED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { jsxs as o, Fragment as j, jsx as t } from "react/jsx-runtime";
|
|
2
2
|
import oe, { useState as S, useRef as X, useEffect as U, useCallback as E, useMemo as _ } from "react";
|
|
3
|
-
import { ay as ee, az as ce, aA as B, aB as $, aC as de, g as ue, h as me, i as fe, j as he, k as M, l as H, aD as ve, aE as V, aF as z, b as ye, aG as pe, aH as ge, aI as Se, aJ as be, aK as Te } from "./index-
|
|
3
|
+
import { ay as ee, az as ce, aA as B, aB as $, aC as de, g as ue, h as me, i as fe, j as he, k as M, l as H, aD as ve, aE as V, aF as z, b as ye, aG as pe, aH as ge, aI as Se, aJ as be, aK as Te } from "./index-E4GmfQa7.js";
|
|
4
4
|
import { u as ae, c as F, O as W, P as we, a as Ce, B as D, b as ke, d as q, L as te, T as xe, F as Ne, G, I as K } from "./switch-CZt_oBQ2.js";
|
|
5
5
|
import { a as Pe } from "./report-runtime-context-B_pAmqxl.js";
|
|
6
6
|
import "./x-CXDkqdur.js";
|
package/dist/dashboard/index.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("../chunks/index-
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("../chunks/index-BMBjEw3O.cjs"),e=require("../chunks/common-types-BCSbPclk.cjs");exports.Dashboard=o.Dashboard;exports.CONTROL_CARD_DEFAULT_VALUE=e.CONTROL_CARD_DEFAULT_VALUE;exports.EMPTY_SELECTION=e.EMPTY_SELECTION;
|
package/dist/dashboard/index.js
CHANGED
|
@@ -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-
|
|
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-BMBjEw3O.cjs"),w=require("../chunks/switch-EWWOPEdH.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,7 +2,7 @@ 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 { aL as ea, aM as ta, aN as Ir, aO as jr, aP as zr, aQ as ra, aR as Wr, aS as Hr, aT as Jr, aU as Vr, aV as _r, aW as Ur, aX as Gr, aY as na, aZ as aa, a_ as oa, a$ as Ht, b0 as on, R as Kr, b1 as sa, b2 as Vt, b3 as sn, b4 as ia, b5 as la } from "../chunks/index-
|
|
5
|
+
import { aL as ea, aM as ta, aN as Ir, aO as jr, aP as zr, aQ as ra, aR as Wr, aS as Hr, aT as Jr, aU as Vr, aV as _r, aW as Ur, aX as Gr, aY as na, aZ as aa, a_ as oa, a$ as Ht, b0 as on, R as Kr, b1 as sa, b2 as Vt, b3 as sn, b4 as ia, b5 as la } from "../chunks/index-E4GmfQa7.js";
|
|
6
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-CZt_oBQ2.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";
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const _=require("../chunks/index-ByQgqT9d.cjs"),i=require("../chunks/pivot-result-lifecycle-D_bRCqaB.cjs"),n=require("../chunks/pivot-header-presentation-
|
|
2
|
-
`){return
|
|
3
|
-
`}exports.isNumericCanonicalFormat=_.isNumericCanonicalFormat;exports.MissingResolvedRawTemporalFormatError=i.MissingResolvedRawTemporalFormatError;exports.PivotResultLifecycleError=i.PivotResultLifecycleError;exports.PresentationExecutionSnapshotError=i.PresentationExecutionSnapshotError;exports.RawTemporalFormatContractError=i.RawTemporalFormatContractError;exports.assertRawTemporalChunkClassificationAgreement=i.assertRawTemporalChunkClassificationAgreement;exports.classifyDeclaredSqlTemporalColumn=i.classifyDeclaredSqlTemporalColumn;exports.createCanonicalPivotResultTransport=i.createCanonicalPivotResultTransport;exports.createPresentationExecutionSnapshot=i.createPresentationExecutionSnapshot;exports.createRawTemporalChunkClassificationEvidence=i.createRawTemporalChunkClassificationEvidence;exports.deriveMetricInstanceAliasExpectations=i.deriveMetricInstanceAliasExpectations;exports.derivePivotResultContractExpectations=i.derivePivotResultContractExpectations;exports.findResolvedNumericFormat=i.findResolvedNumericFormat;exports.findResolvedRawTemporalFormat=i.findResolvedRawTemporalFormat;exports.findResolvedTemporalBucketFormat=i.findResolvedTemporalBucketFormat;exports.formatCurrency=i.formatCurrency;exports.formatNumber=i.formatNumber;exports.formatNumberCustom=i.formatNumberCustom;exports.formatNumberWithColumnSettings=i.formatNumberWithColumnSettings;exports.formatNumericCanonical=i.formatNumericCanonical;exports.formatPercent=i.formatPercent;exports.formatRawTemporalValue=i.formatRawTemporalValue;exports.formatScientific=i.formatScientific;exports.parseCanonicalPivotResultTransport=i.parseCanonicalPivotResultTransport;exports.parseNumericCanonicalFormat=i.parseNumericCanonicalFormat;exports.parsePresentationExecutionSnapshot=i.parsePresentationExecutionSnapshot;exports.parsePresentationScope=i.parsePresentationScope;exports.parseRawTemporalChunkClassificationEvidence=i.parseRawTemporalChunkClassificationEvidence;exports.parseResolvedNumericCanonicalFormat=i.parseResolvedNumericCanonicalFormat;exports.parseResolvedPresentationEntries=i.parseResolvedPresentationEntries;exports.parseResolvedRawTemporalFormat=i.parseResolvedRawTemporalFormat;exports.prepareRawTemporalFormatter=i.prepareRawTemporalFormatter;exports.resolveCurrencyFractionDigits=i.resolveCurrencyFractionDigits;exports.resolveNumericPresentation=i.resolveNumericPresentation;exports.resolveRawTemporalFormat=i.resolveRawTemporalFormat;exports.validateCardExportNumericPresentationSnapshot=i.validateCardExportNumericPresentationSnapshot;exports.validateCardExportPresentationSnapshot=i.validateCardExportPresentationSnapshot;exports.validateRawTemporalPattern=i.validateRawTemporalPattern;exports.AGGREGATE_PDF_CONTINUATION_CLASS=n.
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const _=require("../chunks/index-ByQgqT9d.cjs"),i=require("../chunks/pivot-result-lifecycle-D_bRCqaB.cjs"),n=require("../chunks/pivot-header-presentation-BBM9y_3s.cjs"),c=require("../pdf-export-policy/index.cjs"),f=require("../chunks/validators-DqIM0B3C.cjs"),p=require("../chunks/metric-comparison-x0lipytf.cjs"),T=require("../chunks/pivot-result-identity-BVnhG2rR.cjs"),P=require("../chunks/raw-temporal-contract-vnNwLy9R.cjs");function N(r,e,o,t){const a=r instanceof Date?r.toISOString():String(r),s=(t==null?void 0:t.browserTimezone)||o,l=(t==null?void 0:t.isSqlCard)??!1;if(e!=null&&e.useRelativeTime)return n.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 n.formatDate(a,m,e!=null&&e.timezone&&(e==null?void 0:e.timezone)!=="auto"?e.timezone:l?s:o,(e==null?void 0:e.sourceTimezone)||"auto")}function v(r,e,o){if(r==null)return"";if(!o.useFormattedValues||!e)return String(r);switch(e.type){case"number":return typeof r=="number"?i.formatNumberWithColumnSettings(r,e.numberFormat,o.locale):String(r);case"date":return N(r,e.dateFormat,o.timezone,{browserTimezone:o.browserTimezone,isSqlCard:o.isSqlCard});case"progress":return typeof r=="number"?`${r}%`:String(r);case"badge":case"link":case"text":case"none":default:return String(r)}}function A(r,e){return e.visibleColumns.map(o=>{const t=r[o],a=e.columnSettings[o];return v(t,a,{useFormattedValues:e.useFormattedValues,timezone:e.timezone,locale:e.locale})})}function d(r,e){const o=[];e.includeHeaders&&o.push(n.arrayToCSVRow(e.visibleColumns,e.delimiter));for(const t of r){const a=A(t,e);o.push(a.map(s=>n.escapeCSVValue(s,e.delimiter)).join(e.delimiter))}return o}function V(r,e,o=`
|
|
2
|
+
`){return d(r,e).join(o)}function h(r,e,o){for(const t of r){if(t.level<o){e[t.level].push(t.name);for(let a=1;a<t.colspan;a++)e[t.level].push("")}t.children?h(t.children,e,o):t.columnKey&&e[o].push(t.name)}}function y(r){const e=r.pivotByColumns.length,o=r.groupByColumns.length,t=Array.from({length:e+1},()=>[]);for(let a=0;a<e;a++)t[a].push(...Array(o).fill(""));if(t[e].push(...r.groupByColumns.map(a=>a.label||a.name)),h(r.columnHeadersTree,t,e),r.showRowTotals){for(let a=0;a<e;a++)t[a].push("");t[e].push("Total")}return t}function O(r,e,o){if(r==null)return"";if(!o.useFormattedValues)return String(r);const t=o.columnSettings[e];return typeof r=="number"&&(t==null?void 0:t.type)==="number"?i.formatNumberWithColumnSettings(r,t.numberFormat,o.locale):typeof r=="number"?r.toLocaleString(o.locale):String(r)}function g(r,e,o){const t=[];r.fieldValues.forEach((s,l)=>{r.isSubtotal&&l===0?t.push(`${s} Total`):r.isSubtotal?t.push(""):t.push(String(s??""))});let a=0;return e.columnHeaders.forEach(s=>{var u;const l=(u=r.cells[s])==null?void 0:u.value,m=O(l,s,o);t.push(m),e.showRowTotals&&typeof l=="number"&&(a+=l)}),e.showRowTotals&&t.push(a.toLocaleString(o.locale)),t}function F(r,e,o){const t=[];if(o.includeHeaders){const a=y(e);for(const s of a)t.push(n.arrayToCSVRow(s,o.delimiter))}for(const a of r){const s=g(a,e,o);t.push(s.map(l=>n.escapeCSVValue(l,o.delimiter)).join(o.delimiter))}return t}function C(r){if(r===null||typeof r!="object"||Array.isArray(r))return!1;const e=Object.getPrototypeOf(r);return e===null||e===Object.prototype}function S(r,e,o){const t=new Set(e),a=Object.keys(r).find(s=>!t.has(s));if(a)throw new Error(`${o} contains unknown property "${a}"`)}function M(r,e="tableTotalsRequest"){if(!C(r))throw new Error(`${e} must be an object`);if(S(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 o=0;const t=r.columns.map((l,m)=>{const u=`${e}.columns.${m}`;if(!C(l))throw new Error(`${u} must be an object`);S(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 E=l.role;if(l.behavior!=="sum"&&l.behavior!=="avg"&&l.behavior!=="count"&&l.behavior!=="label")throw new Error(`${u}.behavior is invalid`);const R=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&&E!=="metric")throw new Error(`${u}.metricAlias requires metric role`);if(R==="label"){if(o+=1,E==="metric")throw new Error(`${u}.behavior label requires a non-metric role`)}else if(E!=="metric")throw new Error(`${u}.${R} 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:E,behavior:R,...b?{metricAlias:b}:{},...l.label!==void 0?{label:l.label}:{}}}),a=new Map,s=new Set;for(const l of t){if(l.metricAlias){if(s.has(l.metricAlias))throw new Error(`${e}.columns duplicates metricAlias "${l.metricAlias}"`);s.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(o>1)throw new Error(`${e}.columns may contain at most one label`);return{source:"documentFlatTable",columns:t}}function I(r,e="tableTotalsByColumnId"){if(!C(r))throw new Error(`${e} must be an object`);const o={};for(const[t,a]of Object.entries(r)){if(!t.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}.${t} must be a string, finite number, or null`);o[t]=a}if(Object.keys(o).length===0)throw new Error(`${e} must not be empty`);return o}function k(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 D(r){const e=r.visibleColumns.map(o=>{const a=Object.prototype.hasOwnProperty.call(r.totalsByColumnId,o)?r.totalsByColumnId[o]:o===r.labelColumnKey?"Total":null;if(a===null)return"";if(!r.useFormattedValues)return String(a);const s=i.findResolvedNumericFormat({snapshot:r.snapshot,scope:r.scope,target:{kind:"column",columnKey:o}}),l=s?k(a):null;return s&&l!==null?i.formatNumericCanonical(l,s):String(a)});return`${n.arrayToCSVRow(e,r.delimiter)}
|
|
3
|
+
`}exports.isNumericCanonicalFormat=_.isNumericCanonicalFormat;exports.MissingResolvedRawTemporalFormatError=i.MissingResolvedRawTemporalFormatError;exports.PivotResultLifecycleError=i.PivotResultLifecycleError;exports.PresentationExecutionSnapshotError=i.PresentationExecutionSnapshotError;exports.RawTemporalFormatContractError=i.RawTemporalFormatContractError;exports.assertRawTemporalChunkClassificationAgreement=i.assertRawTemporalChunkClassificationAgreement;exports.classifyDeclaredSqlTemporalColumn=i.classifyDeclaredSqlTemporalColumn;exports.createCanonicalPivotResultTransport=i.createCanonicalPivotResultTransport;exports.createPresentationExecutionSnapshot=i.createPresentationExecutionSnapshot;exports.createRawTemporalChunkClassificationEvidence=i.createRawTemporalChunkClassificationEvidence;exports.deriveMetricInstanceAliasExpectations=i.deriveMetricInstanceAliasExpectations;exports.derivePivotResultContractExpectations=i.derivePivotResultContractExpectations;exports.findResolvedNumericFormat=i.findResolvedNumericFormat;exports.findResolvedRawTemporalFormat=i.findResolvedRawTemporalFormat;exports.findResolvedTemporalBucketFormat=i.findResolvedTemporalBucketFormat;exports.formatCurrency=i.formatCurrency;exports.formatNumber=i.formatNumber;exports.formatNumberCustom=i.formatNumberCustom;exports.formatNumberWithColumnSettings=i.formatNumberWithColumnSettings;exports.formatNumericCanonical=i.formatNumericCanonical;exports.formatPercent=i.formatPercent;exports.formatRawTemporalValue=i.formatRawTemporalValue;exports.formatScientific=i.formatScientific;exports.parseCanonicalPivotResultTransport=i.parseCanonicalPivotResultTransport;exports.parseNumericCanonicalFormat=i.parseNumericCanonicalFormat;exports.parsePresentationExecutionSnapshot=i.parsePresentationExecutionSnapshot;exports.parsePresentationScope=i.parsePresentationScope;exports.parseRawTemporalChunkClassificationEvidence=i.parseRawTemporalChunkClassificationEvidence;exports.parseResolvedNumericCanonicalFormat=i.parseResolvedNumericCanonicalFormat;exports.parseResolvedPresentationEntries=i.parseResolvedPresentationEntries;exports.parseResolvedRawTemporalFormat=i.parseResolvedRawTemporalFormat;exports.prepareRawTemporalFormatter=i.prepareRawTemporalFormatter;exports.resolveCurrencyFractionDigits=i.resolveCurrencyFractionDigits;exports.resolveNumericPresentation=i.resolveNumericPresentation;exports.resolveRawTemporalFormat=i.resolveRawTemporalFormat;exports.validateCardExportNumericPresentationSnapshot=i.validateCardExportNumericPresentationSnapshot;exports.validateCardExportPresentationSnapshot=i.validateCardExportPresentationSnapshot;exports.validateRawTemporalPattern=i.validateRawTemporalPattern;exports.AGGREGATE_PDF_CONTINUATION_CLASS=n.PDF_GROUP_CONTINUATION_CLASS;exports.AGGREGATE_TOTAL_MEMBER_MARKER=n.AGGREGATE_TOTAL_MEMBER_MARKER;exports.DIRECT_CSV_EXPORT_MAX_ROWS=n.DIRECT_CSV_EXPORT_MAX_ROWS;exports.FULL_DATASET_CSV_EXPORT_MAX_ROWS=n.FULL_DATASET_CSV_EXPORT_MAX_ROWS;exports.PDF_GROUP_CONTINUATION_CLASS=n.PDF_GROUP_CONTINUATION_CLASS;exports.PivotHeaderPresentationError=n.PivotHeaderPresentationError;exports.arrayToCSV=n.arrayToCSV;exports.arrayToCSVRow=n.arrayToCSVRow;exports.escapeCSVValue=n.escapeCSVValue;exports.formatAggregateGrandTotalLabel=n.formatAggregateGrandTotalLabel;exports.formatAggregateGroupCell=n.formatAggregateGroupCell;exports.formatAggregateGroupRow=n.formatAggregateGroupRow;exports.formatAggregateSubtotalLabel=n.formatAggregateSubtotalLabel;exports.formatDate=n.formatDate;exports.formatDuration=n.formatDuration;exports.formatMetricComparison=n.formatMetricComparison;exports.formatRelativeTime=n.formatRelativeTime;exports.getTimezoneAbbreviation=n.getTimezoneAbbreviation;exports.getTimezoneName=n.getTimezoneName;exports.isAggregateTotalMemberMarker=n.isAggregateTotalMemberMarker;exports.objectsToCSV=n.objectsToCSV;exports.parseWithSourceTimezone=n.parseWithSourceTimezone;exports.presentAggregateGroupRow=n.presentAggregateGroupRow;exports.presentPivotHeader=n.presentPivotHeader;exports.requiresChunkedCsvExport=n.requiresChunkedCsvExport;exports.resolveAggregateTablePresentationContext=n.resolveAggregateTablePresentationContext;exports.resolveTimezone=n.resolveTimezone;exports.shouldPresentAggregateGroupValue=n.shouldPresentAggregateGroupValue;exports.FAST_PDF_POLICY=c.FAST_PDF_POLICY;exports.PDF_SAFETY_LIMIT_EXCEEDED=c.PDF_SAFETY_LIMIT_EXCEEDED;exports.getUtf8ByteLength=c.getUtf8ByteLength;exports.isFastPdfOutputSizeEligible=c.isFastPdfOutputSizeEligible;exports.isFastPdfPageCountEligible=c.isFastPdfPageCountEligible;exports.isFastPdfRequestSizeEligible=c.isFastPdfRequestSizeEligible;exports.isFastPdfRowCountEligible=c.isFastPdfRowCountEligible;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=p.DEFAULT_RESOLVED_TEMPORAL_STYLE_SET;exports.TemporalBucketContractError=p.TemporalBucketContractError;exports.formatTemporalBucket=p.formatTemporalBucket;exports.parseResolvedTemporalBucketFormat=p.parseResolvedTemporalBucketFormat;exports.parseTemporalBucketValue=p.parseTemporalBucketValue;exports.resolveMetricResultAlias=p.resolveMetricResultAlias;exports.resolveTemporalBucketPresentation=p.resolveTemporalBucketPresentation;exports.PivotResultIdentityError=T.PivotResultIdentityError;exports.isPivotEmptyTupleAllowed=T.isPivotEmptyTupleAllowed;exports.isPivotSubtotalPrefix=T.isPivotSubtotalPrefix;exports.requirePivotHeaderMembers=T.requirePivotHeaderMembers;exports.requirePivotResultColumnIdentities=T.requirePivotResultColumnIdentities;exports.resolveQueryColumnKeyMapEntry=T.resolveQueryColumnKeyMapEntry;exports.resolveUniqueQueryColumnKeyMapEntry=T.resolveUniqueQueryColumnKeyMapEntry;exports.parseRawTemporalValueMetadata=P.parseRawTemporalValueMetadata;exports.validateRawTemporalResultColumn=P.validateRawTemporalResultColumn;exports.buildFlatTableExportTotalsFooter=D;exports.formatCellValue=v;exports.formatPivotDataRow=g;exports.formatPivotTableForCSV=F;exports.formatRowForExport=A;exports.formatTableForCSV=d;exports.generatePivotHeaders=y;exports.generateTableCSV=V;exports.parseFlatTableExportTotalsByColumnId=I;exports.parseFlatTableExportTotalsRequest=M;
|