semiotic 3.7.4 → 3.7.5

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 (135) hide show
  1. package/CLAUDE.md +10 -7
  2. package/README.md +36 -19
  3. package/ai/schema.json +221 -1
  4. package/ai/system-prompt.md +2 -1
  5. package/dist/components/Annotation.d.ts +4 -0
  6. package/dist/components/DataSummaryContext.d.ts +1 -0
  7. package/dist/components/ai/chartCapabilityTypes.d.ts +16 -0
  8. package/dist/components/ai/dataPitfallsBridge.d.ts +101 -0
  9. package/dist/components/ai/dataQualityBridge.d.ts +201 -0
  10. package/dist/components/ai/describeChart.d.ts +2 -0
  11. package/dist/components/ai/generativeChart.d.ts +145 -0
  12. package/dist/components/charts/custom/NetworkCustomChart.d.ts +14 -1
  13. package/dist/components/charts/ordinal/SwarmPlot.d.ts +7 -0
  14. package/dist/components/charts/realtime/RealtimeLineChart.d.ts +21 -0
  15. package/dist/components/charts/realtime/aggregate.d.ts +51 -0
  16. package/dist/components/charts/realtime/eventTime.d.ts +26 -0
  17. package/dist/components/charts/shared/colorPalettes.d.ts +2 -0
  18. package/dist/components/charts/shared/colorUtils.d.ts +1 -12
  19. package/dist/components/charts/shared/minMax.d.ts +3 -0
  20. package/dist/components/charts/shared/radialGeometry.d.ts +0 -18
  21. package/dist/components/charts/shared/smartTooltip.d.ts +27 -0
  22. package/dist/components/charts/shared/statisticalOverlays.d.ts +35 -0
  23. package/dist/components/charts/shared/tooltipUtils.d.ts +2 -0
  24. package/dist/components/charts/shared/useChartSetup.d.ts +1 -1
  25. package/dist/components/charts/shared/useCustomChartSetup.d.ts +1 -1
  26. package/dist/components/charts/shared/validateChartData.d.ts +1 -1
  27. package/dist/components/charts/xy/Scatterplot.d.ts +9 -0
  28. package/dist/components/data/fromArrow.d.ts +54 -0
  29. package/dist/components/data/fromMermaid.d.ts +47 -0
  30. package/dist/components/data/fromObservablePlot.d.ts +69 -0
  31. package/dist/components/data/portability/index.d.ts +14 -0
  32. package/dist/components/data/portability/spec.d.ts +129 -0
  33. package/dist/components/data/portability/vegaLite.d.ts +62 -0
  34. package/dist/components/realtime/ReorderBuffer.d.ts +54 -0
  35. package/dist/components/realtime/RunningStats.d.ts +66 -0
  36. package/dist/components/realtime/WindowAccumulator.d.ts +105 -0
  37. package/dist/components/realtime/parseWindowDuration.d.ts +12 -0
  38. package/dist/components/recipes/customTooltip.d.ts +31 -0
  39. package/dist/components/recipes/gofish.d.ts +207 -0
  40. package/dist/components/recipes/gofishBoba.d.ts +23 -0
  41. package/dist/components/recipes/gofishIR.d.ts +169 -0
  42. package/dist/components/recipes/gofishIRExamples.d.ts +89 -0
  43. package/dist/components/recipes/gofishInterpreter.d.ts +52 -0
  44. package/dist/components/recipes/gofishLambdas.d.ts +145 -0
  45. package/dist/components/recipes/mermaidDag.d.ts +44 -0
  46. package/dist/components/recipes/packedClusterMatrix.d.ts +166 -0
  47. package/dist/components/recipes/recipeChrome.d.ts +100 -0
  48. package/dist/components/recipes/recipeLegend.d.ts +57 -0
  49. package/dist/components/recipes/recipeUtils.d.ts +105 -0
  50. package/dist/components/semiotic-ai.d.ts +6 -0
  51. package/dist/components/semiotic-data.d.ts +2 -0
  52. package/dist/components/semiotic-experimental.d.ts +20 -0
  53. package/dist/components/semiotic-network.d.ts +3 -1
  54. package/dist/components/semiotic-ordinal.d.ts +2 -0
  55. package/dist/components/semiotic-realtime.d.ts +9 -1
  56. package/dist/components/semiotic-recipes.d.ts +18 -1
  57. package/dist/components/semiotic-themes.d.ts +2 -0
  58. package/dist/components/semiotic-xy.d.ts +2 -0
  59. package/dist/components/semiotic.d.ts +4 -0
  60. package/dist/components/store/ObservationStore.d.ts +21 -2
  61. package/dist/components/store/SelectionStore.d.ts +1 -1
  62. package/dist/components/store/ThemeStore.d.ts +1 -1
  63. package/dist/components/store/TooltipStore.d.ts +1 -1
  64. package/dist/components/store/createStore.d.ts +1 -1
  65. package/dist/components/store/designTokens.d.ts +15 -0
  66. package/dist/components/stream/NetworkHtmlMarksLayer.d.ts +44 -0
  67. package/dist/components/stream/NetworkPipelineStore.d.ts +32 -0
  68. package/dist/components/stream/NetworkSVGOverlay.d.ts +12 -0
  69. package/dist/components/stream/OrdinalPipelineStore.d.ts +18 -0
  70. package/dist/components/stream/PipelineStore.d.ts +27 -0
  71. package/dist/components/stream/SceneGraph.d.ts +5 -1
  72. package/dist/components/stream/customLayout.d.ts +20 -0
  73. package/dist/components/stream/customLayoutDiagnostics.d.ts +11 -0
  74. package/dist/components/stream/customLayoutSelection.d.ts +52 -0
  75. package/dist/components/stream/networkCustomLayout.d.ts +66 -1
  76. package/dist/components/stream/networkTypes.d.ts +29 -1
  77. package/dist/components/stream/ordinalCustomLayout.d.ts +17 -1
  78. package/dist/components/stream/ordinalSceneBuilders/types.d.ts +2 -0
  79. package/dist/components/stream/ordinalTypes.d.ts +19 -3
  80. package/dist/components/stream/renderers/networkSymbolRenderer.d.ts +2 -0
  81. package/dist/components/stream/renderers/symbolCanvasRenderer.d.ts +2 -0
  82. package/dist/components/stream/stalenessBands.d.ts +28 -0
  83. package/dist/components/stream/symbolPath.d.ts +24 -0
  84. package/dist/components/stream/types.d.ts +72 -3
  85. package/dist/components/stream/useStalenessCheck.d.ts +6 -1
  86. package/dist/components/stream/xySceneBuilders/pointScene.d.ts +2 -2
  87. package/dist/components/stream/xySceneBuilders/types.d.ts +5 -0
  88. package/dist/geo.min.js +1 -1
  89. package/dist/geo.module.min.js +1 -1
  90. package/dist/network.min.js +1 -1
  91. package/dist/network.module.min.js +1 -1
  92. package/dist/ordinal.min.js +1 -1
  93. package/dist/ordinal.module.min.js +1 -1
  94. package/dist/realtime.min.js +1 -1
  95. package/dist/realtime.module.min.js +1 -1
  96. package/dist/semiotic-ai-semiotic-ai-u954ylUn.js +2 -0
  97. package/dist/semiotic-ai-statisticalOverlays-CU7jW05Q.js +1 -0
  98. package/dist/semiotic-ai.d.ts +6 -0
  99. package/dist/semiotic-ai.min.js +1 -1
  100. package/dist/semiotic-ai.module.min.js +1 -1
  101. package/dist/semiotic-data.d.ts +2 -0
  102. package/dist/semiotic-data.min.js +1 -1
  103. package/dist/semiotic-data.module.min.js +1 -1
  104. package/dist/semiotic-experimental.d.ts +20 -0
  105. package/dist/semiotic-experimental.min.js +1 -0
  106. package/dist/semiotic-experimental.module.min.js +1 -0
  107. package/dist/semiotic-network.d.ts +3 -1
  108. package/dist/semiotic-ordinal.d.ts +2 -0
  109. package/dist/semiotic-realtime.d.ts +9 -1
  110. package/dist/semiotic-recipes.d.ts +18 -1
  111. package/dist/semiotic-recipes.min.js +1 -1
  112. package/dist/semiotic-recipes.module.min.js +1 -1
  113. package/dist/semiotic-semiotic-BmrYbi99.js +2 -0
  114. package/dist/semiotic-statisticalOverlays-IjZw8Lsu.js +1 -0
  115. package/dist/semiotic-themes.d.ts +2 -0
  116. package/dist/semiotic-themes.min.js +1 -1
  117. package/dist/semiotic-themes.module.min.js +1 -1
  118. package/dist/semiotic-utils.min.js +1 -1
  119. package/dist/semiotic-utils.module.min.js +1 -1
  120. package/dist/semiotic-value.min.js +1 -1
  121. package/dist/semiotic-value.module.min.js +1 -1
  122. package/dist/semiotic-xy.d.ts +2 -0
  123. package/dist/semiotic.d.ts +4 -0
  124. package/dist/semiotic.min.js +1 -1
  125. package/dist/semiotic.module.min.js +1 -1
  126. package/dist/server.min.js +1 -1
  127. package/dist/server.module.min.js +1 -1
  128. package/dist/xy-semiotic-xy-Dufu3D0-.js +2 -0
  129. package/dist/xy-statisticalOverlays-3Ni9bRph.js +1 -0
  130. package/dist/xy.min.js +1 -1
  131. package/dist/xy.module.min.js +1 -1
  132. package/package.json +11 -3
  133. package/dist/semiotic-ai-statisticalOverlays-C2PPlmXv.js +0 -1
  134. package/dist/semiotic-statisticalOverlays-C3DsOgr_.js +0 -1
  135. package/dist/xy-statisticalOverlays-C2PPlmXv.js +0 -1
@@ -1,2 +1,2 @@
1
1
  "use client";
2
- "use strict";const e=require("react/jsx-runtime"),t=require("react");function n(e){if(e&&e.__esModule)return e;const t=Object.create(null);if(e)for(const n in e)if("default"!==n){const i=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,i.get?i:{enumerable:!0,get:function(){return e[n]}})}return t.default=e,Object.freeze(t)}const i=n(t);function r({componentName:t,message:n,diagnosticHint:i,width:r,height:l}){return e.jsx("div",{role:"alert",style:{width:r,height:Math.max(l,120),display:"flex",alignItems:"center",justifyContent:"center",border:"1px dashed rgba(128, 128, 128, 0.4)",borderRadius:8,background:"rgba(128, 128, 128, 0.04)",padding:24,boxSizing:"border-box"},children:e.jsxs("div",{style:{textAlign:"center",maxWidth:400},children:[e.jsx("div",{style:{fontSize:13,fontWeight:600,color:"rgba(128, 128, 128, 0.7)",marginBottom:6,fontFamily:"monospace"},children:t}),e.jsx("div",{style:{fontSize:14,color:"rgba(128, 128, 128, 0.9)",lineHeight:1.5},children:n}),i&&e.jsx("div",{"data-testid":"semiotic-diagnostic-hint",style:{marginTop:10,padding:"8px 12px",background:"rgba(128, 128, 128, 0.06)",borderRadius:4,fontSize:12,color:"rgba(128, 128, 128, 0.8)",fontFamily:"monospace",textAlign:"left",whiteSpace:"pre-wrap",lineHeight:1.6},children:i})]})})}class l extends i.Component{constructor(e){super(e),this.state={error:null}}static getDerivedStateFromError(e){return{error:e}}componentDidCatch(e,t){var n,i;null===(i=(n=this.props).onError)||void 0===i||i.call(n,e,t)}render(){if(this.state.error){const{fallback:t}=this.props,n=this.state.error;return"function"==typeof t?t(n):void 0!==t?t:e.jsx(r,{componentName:"ChartErrorBoundary",message:n.message||"An unexpected error occurred while rendering this chart.",width:600,height:400})}return this.props.children}}function o({componentName:t,width:n,height:i,children:o}){return e.jsx(l,{fallback:l=>e.jsx(r,{componentName:t,message:l.message,width:n,height:i}),children:o})}function a(e,t={}){var n,i,r,l,o,a,u;if("function"==typeof e)return e;const c=null!==(n=t.locale)&&void 0!==n?n:"en-US",d=null!==(i=t.currency)&&void 0!==i?i:"USD";if("currency"===e){const e=null!==(r=t.precision)&&void 0!==r?r:2,n=new Intl.NumberFormat(c,{style:"currency",currency:d,maximumFractionDigits:e,minimumFractionDigits:e});return e=>n.format(e)}if("percent"===e){const e=null!==(l=t.precision)&&void 0!==l?l:1,n=new Intl.NumberFormat(c,{style:"percent",maximumFractionDigits:e,minimumFractionDigits:0});return e=>n.format(e)}if("compact"===e){const e=null!==(o=t.precision)&&void 0!==o?o:1,n=new Intl.NumberFormat(c,{notation:"compact",maximumFractionDigits:e,minimumFractionDigits:0});return e=>n.format(e)}if("duration"===e)return e=>s(e);const m=null!==(a=t.precision)&&void 0!==a?a:0,h=new Intl.NumberFormat(c,{notation:null!==(u=t.notation)&&void 0!==u?u:"standard",maximumFractionDigits:m,minimumFractionDigits:0});return e=>h.format(e)}function s(e){if(!Number.isFinite(e))return e+"";const t=0>e?"-":"",n=Math.abs(e);if(1e3>n)return`${t}${Math.round(n)}ms`;const i=n/1e3;if(60>i)return`${t}${r=i,Math.round(100*r)/100+""}s`;var r;const l=i/60;if(60>l){const e=Math.floor(l),n=Math.round(i-60*e);return 0===n?`${t}${e}m`:`${t}${e}m ${n}s`}const o=l/60;if(24>o){const e=Math.floor(o),n=Math.round(l-60*e);return 0===n?`${t}${e}h`:`${t}${e}h ${n}m`}const a=Math.floor(o/24),s=Math.round(o-24*a);return 0===s?`${t}${a}d`:`${t}${a}d ${s}h`}function u(e,t,n){return`${null!=t?t:""}${e}${null!=n?n:""}`}function c(e,t){return Number.isFinite(e)?0===e?t(0):`${e>0?"+":"−"}${t(Math.abs(e))}`:""}function d(e,t,n="en-US",i=1){if(!Number.isFinite(e)||!Number.isFinite(t))return null;if(0===e)return null;const r=(t-e)/Math.abs(e);return new Intl.NumberFormat(n,{style:"percent",maximumFractionDigits:i,minimumFractionDigits:0,signDisplay:"exceptZero"}).format(r)}function m(e,t){if(!t||0===t.length)return null;if(!Number.isFinite(e))return null;const n=t.filter(e=>Number.isFinite(e.at)||e.at===-1/0).slice().sort((e,t)=>e.at-t.at);let i=null;for(const t of n){if(t.at>e)break;i=t}return i}function h(e,t){return t||("neutral"===e?"var(--semiotic-text, currentColor)":`var(--semiotic-${e}, currentColor)`)}"undefined"!=typeof process&&process;const b={tile:{width:280,height:184,align:"start",labelSize:13,captionSize:11,valueSize:40,deltaSize:13,padding:{top:14,right:16,bottom:14,left:16},background:"var(--semiotic-surface, transparent)",border:!0,showHeader:!0,showDelta:!0,showTrend:!0,showChart:!0,chartSize:44},presentation:{width:540,height:320,align:"center",labelSize:18,captionSize:14,valueSize:96,deltaSize:18,padding:{top:32,right:32,bottom:32,left:32},background:"var(--semiotic-surface, transparent)",border:!0,showHeader:!0,showDelta:!0,showTrend:!0,showChart:!0,chartSize:80},inline:{width:void 0,height:void 0,align:"inherit",labelSize:0,captionSize:0,valueSize:0,deltaSize:0,padding:{top:0,right:0,bottom:0,left:0},background:"transparent",border:!1,showHeader:!1,showDelta:!0,showTrend:!1,showChart:!1,chartSize:0},thumbnail:{width:96,height:56,align:"center",labelSize:0,captionSize:0,valueSize:22,deltaSize:0,padding:{top:4,right:6,bottom:4,left:6},background:"transparent",border:!1,showHeader:!1,showDelta:!1,showTrend:!1,showChart:!1,chartSize:0}};function f(e,t,n){return void 0===e?n:"function"==typeof e?e(t):e}function g(e){return"positive"===e?"var(--semiotic-success, currentColor)":"negative"===e?"var(--semiotic-danger, currentColor)":"var(--semiotic-text-secondary, currentColor)"}function p(e){return"positive"===e?"▲":"negative"===e?"▼":"■"}const v=t.forwardRef((n,i)=>{var r,l,s,v;const{value:x,label:w,caption:N,format:S,locale:j,currency:F,precision:$,prefix:_,suffix:z,unit:M,comparison:D,target:C,delta:k,deltaFormat:I,showDeltaPercent:L,direction:R,sentiment:O,thresholds:E,windowSize:B=60,mode:P="tile",align:T,width:H,height:W,padding:A,emphasis:V,color:q,background:U,borderColor:Z,borderRadius:X,className:Y,style:G,animate:J,stalenessThreshold:K,staleLabel:Q,headerSlot:ee,valueSlot:te,deltaSlot:ne,trendSlot:ie,chartSlot:re,chartSize:le,footerSlot:oe,onClick:ae,onObservation:se,chartId:ue,description:ce,summary:de,loading:me,loadingContent:he,emptyContent:be}=n,fe=null!==(r=b[P])&&void 0!==r?r:b.tile,ge=null!=T?T:fe.align,pe=null!=H?H:fe.width,ve=null!=W?W:fe.height,xe=function(){const[e,n]=t.useState(()=>!("undefined"==typeof window||!window.matchMedia)&&window.matchMedia("(prefers-reduced-motion: reduce)").matches);return t.useEffect(()=>{if("undefined"==typeof window||!window.matchMedia)return;const e=window.matchMedia("(prefers-reduced-motion: reduce)");return n(e.matches),function(e,t){if("function"==typeof e.addEventListener)return e.addEventListener("change",t),()=>e.removeEventListener("change",t);const n=e;return n.addListener(t),()=>n.removeListener(t)}(e,e=>n(e.matches))},[]),e}(),[ye,we]=t.useState([]),[Ne,Se]=t.useState(null),[je,Fe]=t.useState(null),[$e,_e]=t.useState(null),ze=t.useRef([]),Me=t.useRef(null),De=t.useRef(x);t.useEffect(()=>{De.current=x},[x]);const Ce=t.useRef(B);t.useEffect(()=>{Ce.current=B},[B]);const ke=t.useCallback(e=>{const t="number"==typeof e?{value:e,time:Date.now()}:Object.assign({time:Date.now()},e),n="number"==typeof t.time?t.time:t.time instanceof Date?t.time.getTime():Date.now();return Object.assign(Object.assign({},t),{time:n})},[]),Ie=t.useCallback(e=>{if(0===e.length)return;const t=Ce.current,n=e.map(ke);let i=ze.current.concat(n);i.length>t&&(i=i.slice(i.length-t)),ze.current=i;const r=n[n.length-1];Me.current=r.value,we(i),Se(r.value);for(let e=n.length-1;e>=0;e--){const t=n[e].comparison;if(null!=t){Fe(t);break}}_e(r.time)},[ke]),Le=t.useCallback(e=>Ie([e]),[Ie]);t.useImperativeHandle(i,()=>({push:e=>Le(e),pushMany:e=>Ie(e),clear:()=>{ze.current=[],Me.current=null,we([]),Se(null),Fe(null),_e(null)},getValue:()=>{var e;return null!==(e=Me.current)&&void 0!==e?e:Number.isFinite(De.current)?De.current:null},getData:()=>ze.current.slice()}),[Le,Ie]);const Re=null!=Ne?Ne:x,Oe=null==Re||"number"!=typeof Re||!Number.isFinite(Re),Ee=t.useMemo(()=>a(null!=S?S:"number",{locale:j,currency:F,precision:$}),[S,j,F,$]),Be=t.useMemo(()=>{var e;return a(null!==(e=null!=I?I:S)&&void 0!==e?e:"number",{locale:j,currency:F,precision:null==I&&null==S?0:$})},[I,S,j,F,$]),Pe=null!=J&&J,Te=t.useRef(("object"==typeof Pe&&!1===Pe.intro||!Pe)&&Number.isFinite(x)?x:0),He=function(e,n,i){const[r,l]=t.useState(e),o=t.useRef(null),a=t.useRef(e),s=t.useRef(0),u=t.useRef(e);return t.useEffect(()=>{if(!Number.isFinite(e))return void l(e);if(!n||i)return void l(e);const t="object"==typeof n&&n.duration?n.duration:300,c="object"==typeof n&&"linear"===n.easing?"linear":"ease-out";a.current=r,u.current=e,s.current="undefined"!=typeof performance?performance.now():Date.now();const d="linear"===c?e=>e:e=>1-Math.pow(1-e,3),m=e=>{const n=Math.min(1,(e-s.current)/t),i=d(n);l(a.current+(u.current-a.current)*i),1>n?o.current=requestAnimationFrame(m):(o.current=null,l(u.current))};return o.current=requestAnimationFrame(m),()=>{null!=o.current&&cancelAnimationFrame(o.current),o.current=null}},[e,n,i]),r}(Number.isFinite(Re)?Re:Te.current,Pe,xe),We=Pe?He:Number.isFinite(Re)?Re:0,Ae=t.useMemo(()=>m(Number.isFinite(Re)?Re:NaN,E),[Re,E]),Ve=Ae?Ae.level:"neutral",qe=null!=q?q:h(Ve,null==Ae?void 0:Ae.color),Ue=null!==(l=null!=je?je:null==D?void 0:D.value)&&void 0!==l?l:null,Ze=null!=k?k:null!=Ue&&Number.isFinite(Re)?Re-Ue:null,Xe=function(e,t,n){if(n&&"auto"!==n)return n;if(null==e||0===e||!Number.isFinite(e))return"neutral";const i=null!=t?t:"higher-is-better";return"neutral"===i?"neutral":("higher-is-better"===i?e>0:0>e)?"positive":"negative"}(Ze,null!==(v=null!==(s=null==D?void 0:D.direction)&&void 0!==s?s:null==C?void 0:C.direction)&&void 0!==v?v:R,O),Ye=null!=Ze&&Number.isFinite(Ze)?c(Ze,Be):null,Ge=null!=Ue&&Number.isFinite(Re)&&(null==L||L)?d(Ue,Re,j):null,Je=t.useMemo(()=>{if(!C||!Number.isFinite(Re)||!C.value)return null;const e=Re/C.value;return new Intl.NumberFormat(null!=j?j:"en-US",{style:"percent",maximumFractionDigits:0}).format(e)},[C,Re,j]),Ke=t.useMemo(()=>{var e,t;return a(null!==(t=null!==(e=null==C?void 0:C.format)&&void 0!==e?e:S)&&void 0!==t?t:"number",{locale:j,currency:F,precision:$})},[null==C?void 0:C.format,S,j,F,$]),Qe=t.useMemo(()=>{var e,t;return a(null!==(t=null!==(e=null==D?void 0:D.format)&&void 0!==e?e:S)&&void 0!==t?t:"number",{locale:j,currency:F,precision:$})},[null==D?void 0:D.format,S,j,F,$]),et=function(e,n){const[i,r]=t.useState(!1);return t.useEffect(()=>{if(!n||null==e)return void r(!1);const t=()=>{const t=Date.now()-e;r(t>=n)};t();const i=setInterval(t,Math.max(250,Math.floor(n/4)));return()=>clearInterval(i)},[e,n]),i}($e,K),tt=Number.isFinite(We)?u(Ee(We),_,z):"",nt={value:Oe?null:Re,formattedValue:tt,level:Ve,color:qe,delta:Ze,deltaFormatted:Ye,deltaPercent:Ge,sentiment:Xe,isStale:et,pushBuffer:ye},it=null!=ce?ce:function(e){var t;const n=[];if(e.label&&n.push(e.label+":"),n.push(e.unit?`${e.formattedValue} ${e.unit}`:e.formattedValue),e.deltaFormatted){const t=e.delta;n.push(`${null!=t&&Number.isFinite(t)&&0!==t?t>0?"up":"down":"change"} ${e.deltaFormatted}${e.deltaPercent?` (${e.deltaPercent})`:""}${e.comparisonLabel?" from "+e.comparisonLabel:""}`)}return e.targetPercent&&e.targetLabel&&n.push(`${e.targetPercent} of ${e.targetLabel}`),e.stale&&n.push(null!==(t=e.staleLabel)&&void 0!==t?t:"stale"),n.join(", ")}({label:w,formattedValue:Number.isFinite(Re)?u(Ee(Re),_,z):"",unit:M,comparisonLabel:null==D?void 0:D.label,delta:Ze,deltaFormatted:Ye,deltaPercent:Ge,targetLabel:null==C?void 0:C.label,targetPercent:Je,stale:et,staleLabel:Q}),rt="number"==typeof A?{top:A,right:A,bottom:A,left:A}:Object.assign(Object.assign({},fe.padding),null!=A?A:{}),lt="end"===ge?"flex-end":"center"===ge?"center":"start"===ge?"flex-start":"inherit",ot=Object.assign({position:"relative",boxSizing:"border-box",width:pe,height:ve,padding:`${rt.top}px ${rt.right}px ${rt.bottom}px ${rt.left}px`,background:null!=U?U:fe.background,border:fe.border?"1px solid "+(null!=Z?Z:"var(--semiotic-border, #e2e2e2)"):void 0,borderRadius:"number"==typeof X?X+"px":null!=X?X:"var(--semiotic-border-radius, 8px)",display:"inline"===P?"inline-flex":"flex",flexDirection:"column",alignItems:"inherit"===lt?void 0:lt,textAlign:ge,fontFamily:"var(--semiotic-font-family, system-ui, sans-serif)",color:"var(--semiotic-text, #111)",opacity:et?.55:1,transition:"opacity 240ms ease-out",gridColumn:"primary"===V?"span 2":void 0,cursor:ae?"pointer":void 0},G),at=t.useCallback(e=>{const t=e.currentTarget.getBoundingClientRect(),n=e.clientX-t.left,i=e.clientY-t.top,r={value:Oe?NaN:Re,level:Ve,delta:Ze};ae&&ae(r,{x:n,y:i}),se&&se({type:"click",datum:r,x:n,y:i,chartType:"BigNumber",chartId:ue,timestamp:Date.now()})},[ae,se,ue,Oe,Re,Ve,Ze]),st="inline"===P?"span":"div",ut=["semiotic-bignumber","semiotic-bignumber--mode-"+P,"semiotic-bignumber--level-"+Ve,"semiotic-bignumber--sentiment-"+Xe,et?"semiotic-bignumber--stale":null,Y].filter(Boolean).join(" "),ct="positive"===Xe?"up":"negative"===Xe?"down":"flat";if(me){const t="number"==typeof pe?pe:280,n="number"==typeof ve?ve:160;return e.jsx(st,{role:"status","aria-live":"polite","aria-busy":"true",className:ut+" semiotic-bignumber--loading",style:Object.assign(Object.assign({},ot),{opacity:1}),children:null!=he?he:e.jsx(y,{width:t,height:n,mode:P})})}return Oe?!1===be?null:e.jsx(st,{role:"status","aria-label":w?w+": no value":"no value",className:ut+" semiotic-bignumber--empty",style:Object.assign(Object.assign({},ot),{color:"var(--semiotic-text-secondary, #666)",fontSize:13,alignItems:"center",justifyContent:"center"}),children:null!=be?be:"—"}):e.jsx(o,{componentName:"BigNumber",width:"number"==typeof pe?pe:280,height:"number"==typeof ve?ve:160,children:e.jsxs(st,{role:"group","aria-label":it,"data-chart":"BigNumber","data-mode":P,"data-level":Ve,"data-stale":et?"true":void 0,"data-sentiment":Xe,className:ut,style:ot,onClick:ae||se?at:void 0,children:[fe.showHeader&&(w||N||ee)?e.jsx("div",{className:"semiotic-bignumber__header",style:{display:"flex",flexDirection:"column",gap:2,marginBottom:6,paddingRight:fe.showChart&&null!=re?(null!=le?le:fe.chartSize)+8:0},children:f(ee,nt,e.jsxs(e.Fragment,{children:[w?e.jsx("span",{className:"semiotic-bignumber__label",style:{fontSize:fe.labelSize,color:"var(--semiotic-text-secondary, #6b7280)",fontWeight:500,letterSpacing:.2},children:w}):null,N?e.jsx("span",{className:"semiotic-bignumber__caption",style:{fontSize:fe.captionSize,color:"var(--semiotic-text-secondary, #9ca3af)"},children:N}):null]}))}):null,f(te,nt,e.jsxs(st,{className:"semiotic-bignumber__value semiotic-bignumber__value--"+Ve,style:{display:"inline"===P?"inline-flex":"flex",alignItems:"baseline",gap:6,fontVariantNumeric:"tabular-nums",fontWeight:600,color:qe,fontSize:fe.valueSize||void 0,lineHeight:1.05},children:[e.jsx("span",{className:"semiotic-bignumber__value-text",children:tt}),M?e.jsx("span",{className:"semiotic-bignumber__unit",style:{fontSize:fe.valueSize?Math.max(11,Math.round(.32*fe.valueSize)):"0.75em",color:"var(--semiotic-text-secondary, #9ca3af)",fontWeight:500},children:M}):null]})),fe.showDelta&&(Ye||C||D)?e.jsx(st,{className:"semiotic-bignumber__delta semiotic-bignumber__delta--"+ct,style:{display:"inline"===P?"inline-flex":"flex",flexWrap:"wrap",gap:8,alignItems:"baseline",marginTop:"inline"===P?0:6,fontSize:fe.deltaSize||void 0,color:"var(--semiotic-text-secondary, #6b7280)"},children:f(ne,nt,e.jsxs(e.Fragment,{children:[Ye?e.jsxs("span",{className:"semiotic-bignumber__delta-row semiotic-bignumber__delta-row--"+ct,style:{display:"inline-flex",alignItems:"center",gap:4,color:g(Xe),fontWeight:600},children:[e.jsx("span",{"aria-hidden":"true",className:"semiotic-bignumber__arrow semiotic-bignumber__arrow--"+ct,children:p(Xe)}),e.jsx("span",{className:"semiotic-bignumber__delta-amount",children:Ye}),Ge?e.jsxs("span",{className:"semiotic-bignumber__delta-percent",style:{fontWeight:500},children:["(",Ge,")"]}):null]}):null,(null==D?void 0:D.label)?e.jsx("span",{className:"semiotic-bignumber__comparison-label",children:D.label}):null,C?e.jsxs("span",{className:"semiotic-bignumber__target",style:{display:"inline-flex",alignItems:"baseline",gap:4},children:[Ye||(null==D?void 0:D.label)?e.jsx("span",{"aria-hidden":"true",className:"semiotic-bignumber__separator",children:"·"}):null,e.jsx("span",{className:"semiotic-bignumber__target-percent",style:{fontWeight:500,color:"var(--semiotic-text, #111)"},children:Je}),e.jsxs("span",{className:"semiotic-bignumber__target-value",children:["of ",Ke(C.value),C.label?" "+C.label:""]})]}):null]}))}):null,fe.showChart&&null!=re?e.jsx("div",{className:"semiotic-bignumber__chart",style:{position:"absolute",top:rt.top,right:rt.right,width:null!=le?le:fe.chartSize,height:null!=le?le:fe.chartSize,display:"flex",alignItems:"center",justifyContent:"center",pointerEvents:"none"},children:e.jsx("div",{style:{pointerEvents:"auto",lineHeight:0},children:f(re,nt,null)})}):null,fe.showTrend&&null!=ie?e.jsx("div",{className:"semiotic-bignumber__trend",style:{position:"absolute",left:rt.left,right:rt.right,bottom:rt.bottom+(null!=oe?28:0)},children:f(ie,nt,null)}):null,null!=oe?e.jsx(st,{className:"semiotic-bignumber__footer",style:{position:"absolute",left:rt.left,right:rt.right,bottom:rt.bottom,fontSize:fe.deltaSize||void 0,color:"var(--semiotic-text-secondary, #9ca3af)"},children:f(oe,nt,null)}):null,de?e.jsx("span",{style:{position:"absolute",width:1,height:1,padding:0,margin:-1,overflow:"hidden",clip:"rect(0,0,0,0)",whiteSpace:"nowrap",border:0},children:de}):null,e.jsx("span",{"aria-hidden":"true",style:{display:"none"},children:null!=Ue?Qe(Ue):null})]})})});v.displayName="BigNumber";const x=v;function y(t){const n=Math.floor(.45*t.width),i=Math.floor(.6*t.width),r=(t,n)=>e.jsx("div",{style:{width:t,height:n,background:"var(--semiotic-border, #e0e0e0)",borderRadius:4,opacity:.55}});return e.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:10,justifyContent:"center",width:"100%",height:"100%"},children:["thumbnail"!==t.mode&&"inline"!==t.mode?r(n,10):null,r(i,"presentation"===t.mode?48:28),"tile"===t.mode||"presentation"===t.mode?r(Math.floor(.35*t.width),8):null]})}exports.BigNumber=x,exports.BigNumberDefault=x,exports.buildFormatter=a,exports.buildSparklinePath=function(e,t){var n,i,r;const l=null!==(n=t.padding)&&void 0!==n?n:1;if(0===e.length)return{line:"",area:"",points:[]};if(1===e.length){const e=t.width/2,n=t.height/2;return{line:`M${e},${n}`,area:"",points:[{x:e,y:n}]}}const o=null!==(i=t.yMin)&&void 0!==i?i:e.reduce((e,t)=>Number.isFinite(t)&&e>t?t:e,1/0),a=(null!==(r=t.yMax)&&void 0!==r?r:e.reduce((e,t)=>Number.isFinite(t)&&t>e?t:e,-1/0))-o||1,s=Math.max(0,t.width-2*l),u=Math.max(0,t.height-2*l),c=1===e.length?0:s/(e.length-1),d=[];let m="";for(let t=0;e.length>t;t++){const n=e[t];if(!Number.isFinite(n))continue;const i=l+t*c,r=l+u-(n-o)/a*u;m+=`${0===d.length?"M":"L"}${i.toFixed(2)},${r.toFixed(2)}`,d.push({x:i,y:r})}if(0===d.length)return{line:"",area:"",points:[]};const h=d[0],b=l+u;return{line:m,area:`${m} L${d[d.length-1].x.toFixed(2)},${b.toFixed(2)} L${h.x.toFixed(2)},${b.toFixed(2)} Z`,points:d}},exports.colorForLevel=h,exports.formatDeltaPercent=d,exports.formatDuration=s,exports.formatSignedDelta=c,exports.resolveThreshold=m;
2
+ "use strict";const e=require("react/jsx-runtime"),t=require("react");function n(e){if(e&&e.__esModule)return e;const t=Object.create(null);if(e)for(const n in e)if("default"!==n){const i=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,i.get?i:{enumerable:!0,get:function(){return e[n]}})}return t.default=e,Object.freeze(t)}const i=n(t);function r({componentName:t,message:n,diagnosticHint:i,width:r,height:l}){return e.jsx("div",{role:"alert",style:{width:r,height:Math.max(l,120),display:"flex",alignItems:"center",justifyContent:"center",border:"1px dashed rgba(128, 128, 128, 0.4)",borderRadius:8,background:"rgba(128, 128, 128, 0.04)",padding:24,boxSizing:"border-box"},children:e.jsxs("div",{style:{textAlign:"center",maxWidth:400},children:[e.jsx("div",{style:{fontSize:13,fontWeight:600,color:"rgba(128, 128, 128, 0.7)",marginBottom:6,fontFamily:"monospace"},children:t}),e.jsx("div",{style:{fontSize:14,color:"rgba(128, 128, 128, 0.9)",lineHeight:1.5},children:n}),i&&e.jsx("div",{"data-testid":"semiotic-diagnostic-hint",style:{marginTop:10,padding:"8px 12px",background:"rgba(128, 128, 128, 0.06)",borderRadius:4,fontSize:12,color:"rgba(128, 128, 128, 0.8)",fontFamily:"monospace",textAlign:"left",whiteSpace:"pre-wrap",lineHeight:1.6},children:i})]})})}class l extends i.Component{constructor(e){super(e),this.state={error:null}}static getDerivedStateFromError(e){return{error:e}}componentDidCatch(e,t){var n,i;null===(i=(n=this.props).onError)||void 0===i||i.call(n,e,t)}render(){if(this.state.error){const{fallback:t}=this.props,n=this.state.error;return"function"==typeof t?t(n):void 0!==t?t:e.jsx(r,{componentName:"ChartErrorBoundary",message:n.message||"An unexpected error occurred while rendering this chart.",width:600,height:400})}return this.props.children}}function o({componentName:t,width:n,height:i,children:o}){return e.jsx(l,{fallback:l=>e.jsx(r,{componentName:t,message:l.message,width:n,height:i}),children:o})}function a(e,t={}){var n,i,r,l,o,a,u;if("function"==typeof e)return e;const c=null!==(n=t.locale)&&void 0!==n?n:"en-US",m=null!==(i=t.currency)&&void 0!==i?i:"USD";if("currency"===e){const e=null!==(r=t.precision)&&void 0!==r?r:2,n=new Intl.NumberFormat(c,{style:"currency",currency:m,maximumFractionDigits:e,minimumFractionDigits:e});return e=>n.format(e)}if("percent"===e){const e=null!==(l=t.precision)&&void 0!==l?l:1,n=new Intl.NumberFormat(c,{style:"percent",maximumFractionDigits:e,minimumFractionDigits:0});return e=>n.format(e)}if("compact"===e){const e=null!==(o=t.precision)&&void 0!==o?o:1,n=new Intl.NumberFormat(c,{notation:"compact",maximumFractionDigits:e,minimumFractionDigits:0});return e=>n.format(e)}if("duration"===e)return e=>s(e);const d=null!==(a=t.precision)&&void 0!==a?a:0,h=new Intl.NumberFormat(c,{notation:null!==(u=t.notation)&&void 0!==u?u:"standard",maximumFractionDigits:d,minimumFractionDigits:0});return e=>h.format(e)}function s(e){if(!Number.isFinite(e))return e+"";const t=0>e?"-":"",n=Math.abs(e);if(1e3>n)return`${t}${Math.round(n)}ms`;const i=n/1e3;if(60>i)return`${t}${r=i,Math.round(100*r)/100+""}s`;var r;const l=i/60;if(60>l){const e=Math.floor(l),n=Math.round(i-60*e);return 0===n?`${t}${e}m`:`${t}${e}m ${n}s`}const o=l/60;if(24>o){const e=Math.floor(o),n=Math.round(l-60*e);return 0===n?`${t}${e}h`:`${t}${e}h ${n}m`}const a=Math.floor(o/24),s=Math.round(o-24*a);return 0===s?`${t}${a}d`:`${t}${a}d ${s}h`}function u(e,t,n){return`${null!=t?t:""}${e}${null!=n?n:""}`}function c(e,t){return Number.isFinite(e)?0===e?t(0):`${e>0?"+":"−"}${t(Math.abs(e))}`:""}function m(e,t){if(!t||0===t.length)return null;if(!Number.isFinite(e))return null;const n=t.filter(e=>Number.isFinite(e.at)||e.at===-1/0).slice().sort((e,t)=>e.at-t.at);let i=null;for(const t of n){if(t.at>e)break;i=t}return i}function d(e,t){return t||("neutral"===e?"var(--semiotic-text, currentColor)":`var(--semiotic-${e}, currentColor)`)}"undefined"!=typeof process&&process;const h={tile:{width:280,height:184,align:"start",labelSize:13,captionSize:11,valueSize:40,deltaSize:13,padding:{top:14,right:16,bottom:14,left:16},background:"var(--semiotic-surface, transparent)",border:!0,showHeader:!0,showDelta:!0,showTrend:!0,showChart:!0,chartSize:44},presentation:{width:540,height:320,align:"center",labelSize:18,captionSize:14,valueSize:96,deltaSize:18,padding:{top:32,right:32,bottom:32,left:32},background:"var(--semiotic-surface, transparent)",border:!0,showHeader:!0,showDelta:!0,showTrend:!0,showChart:!0,chartSize:80},inline:{width:void 0,height:void 0,align:"inherit",labelSize:0,captionSize:0,valueSize:0,deltaSize:0,padding:{top:0,right:0,bottom:0,left:0},background:"transparent",border:!1,showHeader:!1,showDelta:!0,showTrend:!1,showChart:!1,chartSize:0},thumbnail:{width:96,height:56,align:"center",labelSize:0,captionSize:0,valueSize:22,deltaSize:0,padding:{top:4,right:6,bottom:4,left:6},background:"transparent",border:!1,showHeader:!1,showDelta:!1,showTrend:!1,showChart:!1,chartSize:0}};function b(e,t,n){return void 0===e?n:"function"==typeof e?e(t):e}function f(e){return"positive"===e?"var(--semiotic-success, currentColor)":"negative"===e?"var(--semiotic-danger, currentColor)":"var(--semiotic-text-secondary, currentColor)"}function g(e){return"positive"===e?"▲":"negative"===e?"▼":"■"}const p=t.forwardRef((n,i)=>{var r,l,s,p;const{value:v,label:y,caption:w,format:N,locale:S,currency:F,precision:j,prefix:$,suffix:_,unit:z,comparison:M,target:D,delta:C,deltaFormat:k,showDeltaPercent:I,direction:L,sentiment:R,thresholds:O,windowSize:E=60,mode:B="tile",align:P,width:T,height:H,padding:W,emphasis:A,color:V,background:U,borderColor:q,borderRadius:Z,className:X,style:Y,animate:G,stalenessThreshold:J,staleLabel:K,headerSlot:Q,valueSlot:ee,deltaSlot:te,trendSlot:ne,chartSlot:ie,chartSize:re,footerSlot:le,onClick:oe,onObservation:ae,chartId:se,description:ue,summary:ce,loading:me,loadingContent:de,emptyContent:he}=n,be=null!==(r=h[B])&&void 0!==r?r:h.tile,fe=null!=P?P:be.align,ge=null!=T?T:be.width,pe=null!=H?H:be.height,ve=function(){const[e,n]=t.useState(()=>!("undefined"==typeof window||!window.matchMedia)&&window.matchMedia("(prefers-reduced-motion: reduce)").matches);return t.useEffect(()=>{if("undefined"==typeof window||!window.matchMedia)return;const e=window.matchMedia("(prefers-reduced-motion: reduce)");return n(e.matches),function(e,t){if("function"==typeof e.addEventListener)return e.addEventListener("change",t),()=>e.removeEventListener("change",t);const n=e;return n.addListener(t),()=>n.removeListener(t)}(e,e=>n(e.matches))},[]),e}(),[xe,ye]=t.useState([]),[we,Ne]=t.useState(null),[Se,Fe]=t.useState(null),[je,$e]=t.useState(null),_e=t.useRef([]),ze=t.useRef(null),Me=t.useRef(v);t.useEffect(()=>{Me.current=v},[v]);const De=t.useRef(E);t.useEffect(()=>{De.current=E},[E]);const Ce=t.useCallback(e=>{const t="number"==typeof e?{value:e,time:Date.now()}:Object.assign({time:Date.now()},e),n="number"==typeof t.time?t.time:t.time instanceof Date?t.time.getTime():Date.now();return Object.assign(Object.assign({},t),{time:n})},[]),ke=t.useCallback(e=>{if(0===e.length)return;const t=De.current,n=e.map(Ce);let i=_e.current.concat(n);i.length>t&&(i=i.slice(i.length-t)),_e.current=i;const r=n[n.length-1];ze.current=r.value,ye(i),Ne(r.value);for(let e=n.length-1;e>=0;e--){const t=n[e].comparison;if(null!=t){Fe(t);break}}$e(r.time)},[Ce]),Ie=t.useCallback(e=>ke([e]),[ke]);t.useImperativeHandle(i,()=>({push:e=>Ie(e),pushMany:e=>ke(e),clear:()=>{_e.current=[],ze.current=null,ye([]),Ne(null),Fe(null),$e(null)},getValue:()=>{var e;return null!==(e=ze.current)&&void 0!==e?e:Number.isFinite(Me.current)?Me.current:null},getData:()=>_e.current.slice()}),[Ie,ke]);const Le=null!=we?we:v,Re=null==Le||"number"!=typeof Le||!Number.isFinite(Le),Oe=t.useMemo(()=>a(null!=N?N:"number",{locale:S,currency:F,precision:j}),[N,S,F,j]),Ee=t.useMemo(()=>{var e;return a(null!==(e=null!=k?k:N)&&void 0!==e?e:"number",{locale:S,currency:F,precision:null==k&&null==N?0:j})},[k,N,S,F,j]),Be=null!=G&&G,Pe=t.useRef(("object"==typeof Be&&!1===Be.intro||!Be)&&Number.isFinite(v)?v:0),Te=function(e,n,i){const[r,l]=t.useState(e),o=t.useRef(null),a=t.useRef(e),s=t.useRef(0),u=t.useRef(e);return t.useEffect(()=>{if(!Number.isFinite(e))return void l(e);if(!n||i)return void l(e);const t="object"==typeof n&&n.duration?n.duration:300,c="object"==typeof n&&"linear"===n.easing?"linear":"ease-out";a.current=r,u.current=e,s.current="undefined"!=typeof performance?performance.now():Date.now();const m="linear"===c?e=>e:e=>1-Math.pow(1-e,3),d=e=>{const n=Math.min(1,(e-s.current)/t),i=m(n);l(a.current+(u.current-a.current)*i),1>n?o.current=requestAnimationFrame(d):(o.current=null,l(u.current))};return o.current=requestAnimationFrame(d),()=>{null!=o.current&&cancelAnimationFrame(o.current),o.current=null}},[e,n,i]),r}(Number.isFinite(Le)?Le:Pe.current,Be,ve),He=Be?Te:Number.isFinite(Le)?Le:0,We=t.useMemo(()=>m(Number.isFinite(Le)?Le:NaN,O),[Le,O]),Ae=We?We.level:"neutral",Ve=null!=V?V:d(Ae,null==We?void 0:We.color),Ue=null!==(l=null!=Se?Se:null==M?void 0:M.value)&&void 0!==l?l:null,qe=null!=C?C:null!=Ue&&Number.isFinite(Le)?Le-Ue:null,Ze=function(e,t,n){if(n&&"auto"!==n)return n;if(null==e||0===e||!Number.isFinite(e))return"neutral";const i=null!=t?t:"higher-is-better";return"neutral"===i?"neutral":("higher-is-better"===i?e>0:0>e)?"positive":"negative"}(qe,null!==(p=null!==(s=null==M?void 0:M.direction)&&void 0!==s?s:null==D?void 0:D.direction)&&void 0!==p?p:L,R),Xe=null!=qe&&Number.isFinite(qe)?c(qe,Ee):null,Ye=t.useMemo(()=>new Intl.NumberFormat(null!=S?S:"en-US",{style:"percent",maximumFractionDigits:1,minimumFractionDigits:0,signDisplay:"exceptZero"}),[S]),Ge=null!=Ue&&Number.isFinite(Le)&&(null==I||I)&&0!==Ue?Ye.format((Le-Ue)/Math.abs(Ue)):null,Je=t.useMemo(()=>new Intl.NumberFormat(null!=S?S:"en-US",{style:"percent",maximumFractionDigits:0}),[S]),Ke=t.useMemo(()=>D&&Number.isFinite(Le)&&D.value?Je.format(Le/D.value):null,[D,Le,Je]),Qe=t.useMemo(()=>{var e,t;return a(null!==(t=null!==(e=null==D?void 0:D.format)&&void 0!==e?e:N)&&void 0!==t?t:"number",{locale:S,currency:F,precision:j})},[null==D?void 0:D.format,N,S,F,j]),et=t.useMemo(()=>{var e,t;return a(null!==(t=null!==(e=null==M?void 0:M.format)&&void 0!==e?e:N)&&void 0!==t?t:"number",{locale:S,currency:F,precision:j})},[null==M?void 0:M.format,N,S,F,j]),tt=function(e,n){const[i,r]=t.useState(!1);return t.useEffect(()=>{if(!n||null==e)return void r(!1);const t=()=>{const t=Date.now()-e;r(t>=n)};t();const i=setInterval(t,Math.max(250,Math.floor(n/4)));return()=>clearInterval(i)},[e,n]),i}(je,J),nt=Number.isFinite(He)?u(Oe(He),$,_):"",it={value:Re?null:Le,formattedValue:nt,level:Ae,color:Ve,delta:qe,deltaFormatted:Xe,deltaPercent:Ge,sentiment:Ze,isStale:tt,pushBuffer:xe},rt=null!=ue?ue:function(e){var t;const n=[];if(e.label&&n.push(e.label+":"),n.push(e.unit?`${e.formattedValue} ${e.unit}`:e.formattedValue),e.deltaFormatted){const t=e.delta;n.push(`${null!=t&&Number.isFinite(t)&&0!==t?t>0?"up":"down":"change"} ${e.deltaFormatted}${e.deltaPercent?` (${e.deltaPercent})`:""}${e.comparisonLabel?" from "+e.comparisonLabel:""}`)}return e.targetPercent&&e.targetLabel&&n.push(`${e.targetPercent} of ${e.targetLabel}`),e.stale&&n.push(null!==(t=e.staleLabel)&&void 0!==t?t:"stale"),n.join(", ")}({label:y,formattedValue:Number.isFinite(Le)?u(Oe(Le),$,_):"",unit:z,comparisonLabel:null==M?void 0:M.label,delta:qe,deltaFormatted:Xe,deltaPercent:Ge,targetLabel:null==D?void 0:D.label,targetPercent:Ke,stale:tt,staleLabel:K}),lt="number"==typeof W?{top:W,right:W,bottom:W,left:W}:Object.assign(Object.assign({},be.padding),null!=W?W:{}),ot="end"===fe?"flex-end":"center"===fe?"center":"start"===fe?"flex-start":"inherit",at=Object.assign({position:"relative",boxSizing:"border-box",width:ge,height:pe,padding:`${lt.top}px ${lt.right}px ${lt.bottom}px ${lt.left}px`,background:null!=U?U:be.background,border:be.border?"1px solid "+(null!=q?q:"var(--semiotic-border, #e2e2e2)"):void 0,borderRadius:"number"==typeof Z?Z+"px":null!=Z?Z:"var(--semiotic-border-radius, 8px)",display:"inline"===B?"inline-flex":"flex",flexDirection:"column",alignItems:"inherit"===ot?void 0:ot,textAlign:fe,fontFamily:"var(--semiotic-font-family, system-ui, sans-serif)",color:"var(--semiotic-text, #111)",opacity:tt?.55:1,transition:"opacity 240ms ease-out",gridColumn:"primary"===A?"span 2":void 0,cursor:oe?"pointer":void 0},Y),st=t.useCallback(e=>{const t=e.currentTarget.getBoundingClientRect(),n=e.clientX-t.left,i=e.clientY-t.top,r={value:Re?NaN:Le,level:Ae,delta:qe};oe&&oe(r,{x:n,y:i}),ae&&ae({type:"click",datum:r,x:n,y:i,chartType:"BigNumber",chartId:se,timestamp:Date.now()})},[oe,ae,se,Re,Le,Ae,qe]),ut="inline"===B?"span":"div",ct=["semiotic-bignumber","semiotic-bignumber--mode-"+B,"semiotic-bignumber--level-"+Ae,"semiotic-bignumber--sentiment-"+Ze,tt?"semiotic-bignumber--stale":null,X].filter(Boolean).join(" "),mt="positive"===Ze?"up":"negative"===Ze?"down":"flat";if(me){const t="number"==typeof ge?ge:280,n="number"==typeof pe?pe:160;return e.jsx(ut,{role:"status","aria-live":"polite","aria-busy":"true",className:ct+" semiotic-bignumber--loading",style:Object.assign(Object.assign({},at),{opacity:1}),children:null!=de?de:e.jsx(x,{width:t,height:n,mode:B})})}return Re?!1===he?null:e.jsx(ut,{role:"status","aria-label":y?y+": no value":"no value",className:ct+" semiotic-bignumber--empty",style:Object.assign(Object.assign({},at),{color:"var(--semiotic-text-secondary, #666)",fontSize:13,alignItems:"center",justifyContent:"center"}),children:null!=he?he:"—"}):e.jsx(o,{componentName:"BigNumber",width:"number"==typeof ge?ge:280,height:"number"==typeof pe?pe:160,children:e.jsxs(ut,{role:"group","aria-label":rt,"data-chart":"BigNumber","data-mode":B,"data-level":Ae,"data-stale":tt?"true":void 0,"data-sentiment":Ze,className:ct,style:at,onClick:oe||ae?st:void 0,children:[be.showHeader&&(y||w||Q)?e.jsx("div",{className:"semiotic-bignumber__header",style:{display:"flex",flexDirection:"column",gap:2,marginBottom:6,paddingRight:be.showChart&&null!=ie?(null!=re?re:be.chartSize)+8:0},children:b(Q,it,e.jsxs(e.Fragment,{children:[y?e.jsx("span",{className:"semiotic-bignumber__label",style:{fontSize:be.labelSize,color:"var(--semiotic-text-secondary, #6b7280)",fontWeight:500,letterSpacing:.2},children:y}):null,w?e.jsx("span",{className:"semiotic-bignumber__caption",style:{fontSize:be.captionSize,color:"var(--semiotic-text-secondary, #9ca3af)"},children:w}):null]}))}):null,b(ee,it,e.jsxs(ut,{className:"semiotic-bignumber__value semiotic-bignumber__value--"+Ae,style:{display:"inline"===B?"inline-flex":"flex",alignItems:"baseline",gap:6,fontVariantNumeric:"tabular-nums",fontWeight:600,color:Ve,fontSize:be.valueSize||void 0,lineHeight:1.05},children:[e.jsx("span",{className:"semiotic-bignumber__value-text",children:nt}),z?e.jsx("span",{className:"semiotic-bignumber__unit",style:{fontSize:be.valueSize?Math.max(11,Math.round(.32*be.valueSize)):"0.75em",color:"var(--semiotic-text-secondary, #9ca3af)",fontWeight:500},children:z}):null]})),be.showDelta&&(Xe||D||M)?e.jsx(ut,{className:"semiotic-bignumber__delta semiotic-bignumber__delta--"+mt,style:{display:"inline"===B?"inline-flex":"flex",flexWrap:"wrap",gap:8,alignItems:"baseline",marginTop:"inline"===B?0:6,fontSize:be.deltaSize||void 0,color:"var(--semiotic-text-secondary, #6b7280)"},children:b(te,it,e.jsxs(e.Fragment,{children:[Xe?e.jsxs("span",{className:"semiotic-bignumber__delta-row semiotic-bignumber__delta-row--"+mt,style:{display:"inline-flex",alignItems:"center",gap:4,color:f(Ze),fontWeight:600},children:[e.jsx("span",{"aria-hidden":"true",className:"semiotic-bignumber__arrow semiotic-bignumber__arrow--"+mt,children:g(Ze)}),e.jsx("span",{className:"semiotic-bignumber__delta-amount",children:Xe}),Ge?e.jsxs("span",{className:"semiotic-bignumber__delta-percent",style:{fontWeight:500},children:["(",Ge,")"]}):null]}):null,(null==M?void 0:M.label)?e.jsx("span",{className:"semiotic-bignumber__comparison-label",children:M.label}):null,D?e.jsxs("span",{className:"semiotic-bignumber__target",style:{display:"inline-flex",alignItems:"baseline",gap:4},children:[Xe||(null==M?void 0:M.label)?e.jsx("span",{"aria-hidden":"true",className:"semiotic-bignumber__separator",children:"·"}):null,e.jsx("span",{className:"semiotic-bignumber__target-percent",style:{fontWeight:500,color:"var(--semiotic-text, #111)"},children:Ke}),e.jsxs("span",{className:"semiotic-bignumber__target-value",children:["of ",Qe(D.value),D.label?" "+D.label:""]})]}):null]}))}):null,be.showChart&&null!=ie?e.jsx("div",{className:"semiotic-bignumber__chart",style:{position:"absolute",top:lt.top,right:lt.right,width:null!=re?re:be.chartSize,height:null!=re?re:be.chartSize,display:"flex",alignItems:"center",justifyContent:"center",pointerEvents:"none"},children:e.jsx("div",{style:{pointerEvents:"auto",lineHeight:0},children:b(ie,it,null)})}):null,be.showTrend&&null!=ne?e.jsx("div",{className:"semiotic-bignumber__trend",style:{position:"absolute",left:lt.left,right:lt.right,bottom:lt.bottom+(null!=le?28:0)},children:b(ne,it,null)}):null,null!=le?e.jsx(ut,{className:"semiotic-bignumber__footer",style:{position:"absolute",left:lt.left,right:lt.right,bottom:lt.bottom,fontSize:be.deltaSize||void 0,color:"var(--semiotic-text-secondary, #9ca3af)"},children:b(le,it,null)}):null,ce?e.jsx("span",{style:{position:"absolute",width:1,height:1,padding:0,margin:-1,overflow:"hidden",clip:"rect(0,0,0,0)",whiteSpace:"nowrap",border:0},children:ce}):null,e.jsx("span",{"aria-hidden":"true",style:{display:"none"},children:null!=Ue?et(Ue):null})]})})});p.displayName="BigNumber";const v=p;function x(t){const n=Math.floor(.45*t.width),i=Math.floor(.6*t.width),r=(t,n)=>e.jsx("div",{style:{width:t,height:n,background:"var(--semiotic-border, #e0e0e0)",borderRadius:4,opacity:.55}});return e.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:10,justifyContent:"center",width:"100%",height:"100%"},children:["thumbnail"!==t.mode&&"inline"!==t.mode?r(n,10):null,r(i,"presentation"===t.mode?48:28),"tile"===t.mode||"presentation"===t.mode?r(Math.floor(.35*t.width),8):null]})}exports.BigNumber=v,exports.BigNumberDefault=v,exports.buildFormatter=a,exports.buildSparklinePath=function(e,t){var n,i,r;const l=null!==(n=t.padding)&&void 0!==n?n:1;if(0===e.length)return{line:"",area:"",points:[]};if(1===e.length){const e=t.width/2,n=t.height/2;return{line:`M${e},${n}`,area:"",points:[{x:e,y:n}]}}const o=null!==(i=t.yMin)&&void 0!==i?i:e.reduce((e,t)=>Number.isFinite(t)&&e>t?t:e,1/0),a=(null!==(r=t.yMax)&&void 0!==r?r:e.reduce((e,t)=>Number.isFinite(t)&&t>e?t:e,-1/0))-o||1,s=Math.max(0,t.width-2*l),u=Math.max(0,t.height-2*l),c=1===e.length?0:s/(e.length-1),m=[];let d="";for(let t=0;e.length>t;t++){const n=e[t];if(!Number.isFinite(n))continue;const i=l+t*c,r=l+u-(n-o)/a*u;d+=`${0===m.length?"M":"L"}${i.toFixed(2)},${r.toFixed(2)}`,m.push({x:i,y:r})}if(0===m.length)return{line:"",area:"",points:[]};const h=m[0],b=l+u;return{line:d,area:`${d} L${m[m.length-1].x.toFixed(2)},${b.toFixed(2)} L${h.x.toFixed(2)},${b.toFixed(2)} Z`,points:m}},exports.colorForLevel=d,exports.formatDeltaPercent=function(e,t,n="en-US",i=1){if(!Number.isFinite(e)||!Number.isFinite(t))return null;if(0===e)return null;const r=(t-e)/Math.abs(e);return new Intl.NumberFormat(n,{style:"percent",maximumFractionDigits:i,minimumFractionDigits:0,signDisplay:"exceptZero"}).format(r)},exports.formatDuration=s,exports.formatSignedDelta=c,exports.resolveThreshold=m;
@@ -1,2 +1,2 @@
1
1
  "use client";
2
- import{jsx as e,jsxs as t,Fragment as n}from"react/jsx-runtime";import*as i from"react";import{useState as r,useEffect as l,forwardRef as o,useRef as a,useCallback as s,useImperativeHandle as u,useMemo as c}from"react";function d({componentName:n,message:i,diagnosticHint:r,width:l,height:o}){return e("div",{role:"alert",style:{width:l,height:Math.max(o,120),display:"flex",alignItems:"center",justifyContent:"center",border:"1px dashed rgba(128, 128, 128, 0.4)",borderRadius:8,background:"rgba(128, 128, 128, 0.04)",padding:24,boxSizing:"border-box"},children:t("div",{style:{textAlign:"center",maxWidth:400},children:[e("div",{style:{fontSize:13,fontWeight:600,color:"rgba(128, 128, 128, 0.7)",marginBottom:6,fontFamily:"monospace"},children:n}),e("div",{style:{fontSize:14,color:"rgba(128, 128, 128, 0.9)",lineHeight:1.5},children:i}),r&&e("div",{"data-testid":"semiotic-diagnostic-hint",style:{marginTop:10,padding:"8px 12px",background:"rgba(128, 128, 128, 0.06)",borderRadius:4,fontSize:12,color:"rgba(128, 128, 128, 0.8)",fontFamily:"monospace",textAlign:"left",whiteSpace:"pre-wrap",lineHeight:1.6},children:r})]})})}class m extends i.Component{constructor(e){super(e),this.state={error:null}}static getDerivedStateFromError(e){return{error:e}}componentDidCatch(e,t){var n,i;null===(i=(n=this.props).onError)||void 0===i||i.call(n,e,t)}render(){if(this.state.error){const{fallback:t}=this.props,n=this.state.error;return"function"==typeof t?t(n):void 0!==t?t:e(d,{componentName:"ChartErrorBoundary",message:n.message||"An unexpected error occurred while rendering this chart.",width:600,height:400})}return this.props.children}}function h({componentName:t,width:n,height:i,children:r}){return e(m,{fallback:r=>e(d,{componentName:t,message:r.message,width:n,height:i}),children:r})}function b(e,t={}){var n,i,r,l,o,a,s;if("function"==typeof e)return e;const u=null!==(n=t.locale)&&void 0!==n?n:"en-US",c=null!==(i=t.currency)&&void 0!==i?i:"USD";if("currency"===e){const e=null!==(r=t.precision)&&void 0!==r?r:2,n=new Intl.NumberFormat(u,{style:"currency",currency:c,maximumFractionDigits:e,minimumFractionDigits:e});return e=>n.format(e)}if("percent"===e){const e=null!==(l=t.precision)&&void 0!==l?l:1,n=new Intl.NumberFormat(u,{style:"percent",maximumFractionDigits:e,minimumFractionDigits:0});return e=>n.format(e)}if("compact"===e){const e=null!==(o=t.precision)&&void 0!==o?o:1,n=new Intl.NumberFormat(u,{notation:"compact",maximumFractionDigits:e,minimumFractionDigits:0});return e=>n.format(e)}if("duration"===e)return e=>g(e);const d=null!==(a=t.precision)&&void 0!==a?a:0,m=new Intl.NumberFormat(u,{notation:null!==(s=t.notation)&&void 0!==s?s:"standard",maximumFractionDigits:d,minimumFractionDigits:0});return e=>m.format(e)}function g(e){if(!Number.isFinite(e))return e+"";const t=0>e?"-":"",n=Math.abs(e);if(1e3>n)return`${t}${Math.round(n)}ms`;const i=n/1e3;if(60>i)return`${t}${r=i,Math.round(100*r)/100+""}s`;var r;const l=i/60;if(60>l){const e=Math.floor(l),n=Math.round(i-60*e);return 0===n?`${t}${e}m`:`${t}${e}m ${n}s`}const o=l/60;if(24>o){const e=Math.floor(o),n=Math.round(l-60*e);return 0===n?`${t}${e}h`:`${t}${e}h ${n}m`}const a=Math.floor(o/24),s=Math.round(o-24*a);return 0===s?`${t}${a}d`:`${t}${a}d ${s}h`}function p(e,t,n){return`${null!=t?t:""}${e}${null!=n?n:""}`}function f(e,t){return Number.isFinite(e)?0===e?t(0):`${e>0?"+":"−"}${t(Math.abs(e))}`:""}function v(e,t,n="en-US",i=1){if(!Number.isFinite(e)||!Number.isFinite(t))return null;if(0===e)return null;const r=(t-e)/Math.abs(e);return new Intl.NumberFormat(n,{style:"percent",maximumFractionDigits:i,minimumFractionDigits:0,signDisplay:"exceptZero"}).format(r)}function y(e,t){if(!t||0===t.length)return null;if(!Number.isFinite(e))return null;const n=t.filter(e=>Number.isFinite(e.at)||e.at===-1/0).slice().sort((e,t)=>e.at-t.at);let i=null;for(const t of n){if(t.at>e)break;i=t}return i}function w(e,t){return t||("neutral"===e?"var(--semiotic-text, currentColor)":`var(--semiotic-${e}, currentColor)`)}function x(e,t){var n,i,r;const l=null!==(n=t.padding)&&void 0!==n?n:1;if(0===e.length)return{line:"",area:"",points:[]};if(1===e.length){const e=t.width/2,n=t.height/2;return{line:`M${e},${n}`,area:"",points:[{x:e,y:n}]}}const o=null!==(i=t.yMin)&&void 0!==i?i:e.reduce((e,t)=>Number.isFinite(t)&&e>t?t:e,1/0),a=(null!==(r=t.yMax)&&void 0!==r?r:e.reduce((e,t)=>Number.isFinite(t)&&t>e?t:e,-1/0))-o||1,s=Math.max(0,t.width-2*l),u=Math.max(0,t.height-2*l),c=1===e.length?0:s/(e.length-1),d=[];let m="";for(let t=0;e.length>t;t++){const n=e[t];if(!Number.isFinite(n))continue;const i=l+t*c,r=l+u-(n-o)/a*u;m+=`${0===d.length?"M":"L"}${i.toFixed(2)},${r.toFixed(2)}`,d.push({x:i,y:r})}if(0===d.length)return{line:"",area:"",points:[]};const h=d[0],b=l+u;return{line:m,area:`${m} L${d[d.length-1].x.toFixed(2)},${b.toFixed(2)} L${h.x.toFixed(2)},${b.toFixed(2)} Z`,points:d}}"undefined"!=typeof process&&process;const N={tile:{width:280,height:184,align:"start",labelSize:13,captionSize:11,valueSize:40,deltaSize:13,padding:{top:14,right:16,bottom:14,left:16},background:"var(--semiotic-surface, transparent)",border:!0,showHeader:!0,showDelta:!0,showTrend:!0,showChart:!0,chartSize:44},presentation:{width:540,height:320,align:"center",labelSize:18,captionSize:14,valueSize:96,deltaSize:18,padding:{top:32,right:32,bottom:32,left:32},background:"var(--semiotic-surface, transparent)",border:!0,showHeader:!0,showDelta:!0,showTrend:!0,showChart:!0,chartSize:80},inline:{width:void 0,height:void 0,align:"inherit",labelSize:0,captionSize:0,valueSize:0,deltaSize:0,padding:{top:0,right:0,bottom:0,left:0},background:"transparent",border:!1,showHeader:!1,showDelta:!0,showTrend:!1,showChart:!1,chartSize:0},thumbnail:{width:96,height:56,align:"center",labelSize:0,captionSize:0,valueSize:22,deltaSize:0,padding:{top:4,right:6,bottom:4,left:6},background:"transparent",border:!1,showHeader:!1,showDelta:!1,showTrend:!1,showChart:!1,chartSize:0}};function F(e,t,n){return void 0===e?n:"function"==typeof e?e(t):e}function S(e){return"positive"===e?"var(--semiotic-success, currentColor)":"negative"===e?"var(--semiotic-danger, currentColor)":"var(--semiotic-text-secondary, currentColor)"}function $(e){return"positive"===e?"▲":"negative"===e?"▼":"■"}const _=o((i,o)=>{var d,m,g,x;const{value:_,label:z,caption:M,format:C,locale:j,currency:I,precision:k,prefix:L,suffix:B,unit:O,comparison:T,target:H,delta:W,deltaFormat:E,showDeltaPercent:P,direction:A,sentiment:R,thresholds:V,windowSize:U=60,mode:q="tile",align:Z,width:X,height:Y,padding:G,emphasis:J,color:K,background:Q,borderColor:ee,borderRadius:te,className:ne,style:ie,animate:re,stalenessThreshold:le,staleLabel:oe,headerSlot:ae,valueSlot:se,deltaSlot:ue,trendSlot:ce,chartSlot:de,chartSize:me,footerSlot:he,onClick:be,onObservation:ge,chartId:pe,description:fe,summary:ve,loading:ye,loadingContent:we,emptyContent:xe}=i,Ne=null!==(d=N[q])&&void 0!==d?d:N.tile,Fe=null!=Z?Z:Ne.align,Se=null!=X?X:Ne.width,$e=null!=Y?Y:Ne.height,_e=function(){const[e,t]=r(()=>!("undefined"==typeof window||!window.matchMedia)&&window.matchMedia("(prefers-reduced-motion: reduce)").matches);return l(()=>{if("undefined"==typeof window||!window.matchMedia)return;const e=window.matchMedia("(prefers-reduced-motion: reduce)");return t(e.matches),function(e,t){if("function"==typeof e.addEventListener)return e.addEventListener("change",t),()=>e.removeEventListener("change",t);const n=e;return n.addListener(t),()=>n.removeListener(t)}(e,e=>t(e.matches))},[]),e}(),[ze,De]=r([]),[Me,Ce]=r(null),[je,Ie]=r(null),[ke,Le]=r(null),Be=a([]),Oe=a(null),Te=a(_);l(()=>{Te.current=_},[_]);const He=a(U);l(()=>{He.current=U},[U]);const We=s(e=>{const t="number"==typeof e?{value:e,time:Date.now()}:Object.assign({time:Date.now()},e),n="number"==typeof t.time?t.time:t.time instanceof Date?t.time.getTime():Date.now();return Object.assign(Object.assign({},t),{time:n})},[]),Ee=s(e=>{if(0===e.length)return;const t=He.current,n=e.map(We);let i=Be.current.concat(n);i.length>t&&(i=i.slice(i.length-t)),Be.current=i;const r=n[n.length-1];Oe.current=r.value,De(i),Ce(r.value);for(let e=n.length-1;e>=0;e--){const t=n[e].comparison;if(null!=t){Ie(t);break}}Le(r.time)},[We]),Pe=s(e=>Ee([e]),[Ee]);u(o,()=>({push:e=>Pe(e),pushMany:e=>Ee(e),clear:()=>{Be.current=[],Oe.current=null,De([]),Ce(null),Ie(null),Le(null)},getValue:()=>{var e;return null!==(e=Oe.current)&&void 0!==e?e:Number.isFinite(Te.current)?Te.current:null},getData:()=>Be.current.slice()}),[Pe,Ee]);const Ae=null!=Me?Me:_,Re=null==Ae||"number"!=typeof Ae||!Number.isFinite(Ae),Ve=c(()=>b(null!=C?C:"number",{locale:j,currency:I,precision:k}),[C,j,I,k]),Ue=c(()=>{var e;return b(null!==(e=null!=E?E:C)&&void 0!==e?e:"number",{locale:j,currency:I,precision:null==E&&null==C?0:k})},[E,C,j,I,k]),qe=null!=re&&re,Ze=a(("object"==typeof qe&&!1===qe.intro||!qe)&&Number.isFinite(_)?_:0),Xe=function(e,t,n){const[i,o]=r(e),s=a(null),u=a(e),c=a(0),d=a(e);return l(()=>{if(!Number.isFinite(e))return void o(e);if(!t||n)return void o(e);const r="object"==typeof t&&t.duration?t.duration:300,l="object"==typeof t&&"linear"===t.easing?"linear":"ease-out";u.current=i,d.current=e,c.current="undefined"!=typeof performance?performance.now():Date.now();const a="linear"===l?e=>e:e=>1-Math.pow(1-e,3),m=e=>{const t=Math.min(1,(e-c.current)/r),n=a(t);o(u.current+(d.current-u.current)*n),1>t?s.current=requestAnimationFrame(m):(s.current=null,o(d.current))};return s.current=requestAnimationFrame(m),()=>{null!=s.current&&cancelAnimationFrame(s.current),s.current=null}},[e,t,n]),i}(Number.isFinite(Ae)?Ae:Ze.current,qe,_e),Ye=qe?Xe:Number.isFinite(Ae)?Ae:0,Ge=c(()=>y(Number.isFinite(Ae)?Ae:NaN,V),[Ae,V]),Je=Ge?Ge.level:"neutral",Ke=null!=K?K:w(Je,null==Ge?void 0:Ge.color),Qe=null!==(m=null!=je?je:null==T?void 0:T.value)&&void 0!==m?m:null,et=null!=W?W:null!=Qe&&Number.isFinite(Ae)?Ae-Qe:null,tt=function(e,t,n){if(n&&"auto"!==n)return n;if(null==e||0===e||!Number.isFinite(e))return"neutral";const i=null!=t?t:"higher-is-better";return"neutral"===i?"neutral":("higher-is-better"===i?e>0:0>e)?"positive":"negative"}(et,null!==(x=null!==(g=null==T?void 0:T.direction)&&void 0!==g?g:null==H?void 0:H.direction)&&void 0!==x?x:A,R),nt=null!=et&&Number.isFinite(et)?f(et,Ue):null,it=null!=Qe&&Number.isFinite(Ae)&&(null==P||P)?v(Qe,Ae,j):null,rt=c(()=>{if(!H||!Number.isFinite(Ae)||!H.value)return null;const e=Ae/H.value;return new Intl.NumberFormat(null!=j?j:"en-US",{style:"percent",maximumFractionDigits:0}).format(e)},[H,Ae,j]),lt=c(()=>{var e,t;return b(null!==(t=null!==(e=null==H?void 0:H.format)&&void 0!==e?e:C)&&void 0!==t?t:"number",{locale:j,currency:I,precision:k})},[null==H?void 0:H.format,C,j,I,k]),ot=c(()=>{var e,t;return b(null!==(t=null!==(e=null==T?void 0:T.format)&&void 0!==e?e:C)&&void 0!==t?t:"number",{locale:j,currency:I,precision:k})},[null==T?void 0:T.format,C,j,I,k]),at=function(e,t){const[n,i]=r(!1);return l(()=>{if(!t||null==e)return void i(!1);const n=()=>{const n=Date.now()-e;i(n>=t)};n();const r=setInterval(n,Math.max(250,Math.floor(t/4)));return()=>clearInterval(r)},[e,t]),n}(ke,le),st=Number.isFinite(Ye)?p(Ve(Ye),L,B):"",ut={value:Re?null:Ae,formattedValue:st,level:Je,color:Ke,delta:et,deltaFormatted:nt,deltaPercent:it,sentiment:tt,isStale:at,pushBuffer:ze},ct=null!=fe?fe:function(e){var t;const n=[];if(e.label&&n.push(e.label+":"),n.push(e.unit?`${e.formattedValue} ${e.unit}`:e.formattedValue),e.deltaFormatted){const t=e.delta;n.push(`${null!=t&&Number.isFinite(t)&&0!==t?t>0?"up":"down":"change"} ${e.deltaFormatted}${e.deltaPercent?` (${e.deltaPercent})`:""}${e.comparisonLabel?" from "+e.comparisonLabel:""}`)}return e.targetPercent&&e.targetLabel&&n.push(`${e.targetPercent} of ${e.targetLabel}`),e.stale&&n.push(null!==(t=e.staleLabel)&&void 0!==t?t:"stale"),n.join(", ")}({label:z,formattedValue:Number.isFinite(Ae)?p(Ve(Ae),L,B):"",unit:O,comparisonLabel:null==T?void 0:T.label,delta:et,deltaFormatted:nt,deltaPercent:it,targetLabel:null==H?void 0:H.label,targetPercent:rt,stale:at,staleLabel:oe}),dt="number"==typeof G?{top:G,right:G,bottom:G,left:G}:Object.assign(Object.assign({},Ne.padding),null!=G?G:{}),mt="end"===Fe?"flex-end":"center"===Fe?"center":"start"===Fe?"flex-start":"inherit",ht=Object.assign({position:"relative",boxSizing:"border-box",width:Se,height:$e,padding:`${dt.top}px ${dt.right}px ${dt.bottom}px ${dt.left}px`,background:null!=Q?Q:Ne.background,border:Ne.border?"1px solid "+(null!=ee?ee:"var(--semiotic-border, #e2e2e2)"):void 0,borderRadius:"number"==typeof te?te+"px":null!=te?te:"var(--semiotic-border-radius, 8px)",display:"inline"===q?"inline-flex":"flex",flexDirection:"column",alignItems:"inherit"===mt?void 0:mt,textAlign:Fe,fontFamily:"var(--semiotic-font-family, system-ui, sans-serif)",color:"var(--semiotic-text, #111)",opacity:at?.55:1,transition:"opacity 240ms ease-out",gridColumn:"primary"===J?"span 2":void 0,cursor:be?"pointer":void 0},ie),bt=s(e=>{const t=e.currentTarget.getBoundingClientRect(),n=e.clientX-t.left,i=e.clientY-t.top,r={value:Re?NaN:Ae,level:Je,delta:et};be&&be(r,{x:n,y:i}),ge&&ge({type:"click",datum:r,x:n,y:i,chartType:"BigNumber",chartId:pe,timestamp:Date.now()})},[be,ge,pe,Re,Ae,Je,et]),gt="inline"===q?"span":"div",pt=["semiotic-bignumber","semiotic-bignumber--mode-"+q,"semiotic-bignumber--level-"+Je,"semiotic-bignumber--sentiment-"+tt,at?"semiotic-bignumber--stale":null,ne].filter(Boolean).join(" "),ft="positive"===tt?"up":"negative"===tt?"down":"flat";if(ye){const t="number"==typeof Se?Se:280,n="number"==typeof $e?$e:160;return e(gt,{role:"status","aria-live":"polite","aria-busy":"true",className:pt+" semiotic-bignumber--loading",style:Object.assign(Object.assign({},ht),{opacity:1}),children:null!=we?we:e(D,{width:t,height:n,mode:q})})}return Re?!1===xe?null:e(gt,{role:"status","aria-label":z?z+": no value":"no value",className:pt+" semiotic-bignumber--empty",style:Object.assign(Object.assign({},ht),{color:"var(--semiotic-text-secondary, #666)",fontSize:13,alignItems:"center",justifyContent:"center"}),children:null!=xe?xe:"—"}):e(h,{componentName:"BigNumber",width:"number"==typeof Se?Se:280,height:"number"==typeof $e?$e:160,children:t(gt,{role:"group","aria-label":ct,"data-chart":"BigNumber","data-mode":q,"data-level":Je,"data-stale":at?"true":void 0,"data-sentiment":tt,className:pt,style:ht,onClick:be||ge?bt:void 0,children:[Ne.showHeader&&(z||M||ae)?e("div",{className:"semiotic-bignumber__header",style:{display:"flex",flexDirection:"column",gap:2,marginBottom:6,paddingRight:Ne.showChart&&null!=de?(null!=me?me:Ne.chartSize)+8:0},children:F(ae,ut,t(n,{children:[z?e("span",{className:"semiotic-bignumber__label",style:{fontSize:Ne.labelSize,color:"var(--semiotic-text-secondary, #6b7280)",fontWeight:500,letterSpacing:.2},children:z}):null,M?e("span",{className:"semiotic-bignumber__caption",style:{fontSize:Ne.captionSize,color:"var(--semiotic-text-secondary, #9ca3af)"},children:M}):null]}))}):null,F(se,ut,t(gt,{className:"semiotic-bignumber__value semiotic-bignumber__value--"+Je,style:{display:"inline"===q?"inline-flex":"flex",alignItems:"baseline",gap:6,fontVariantNumeric:"tabular-nums",fontWeight:600,color:Ke,fontSize:Ne.valueSize||void 0,lineHeight:1.05},children:[e("span",{className:"semiotic-bignumber__value-text",children:st}),O?e("span",{className:"semiotic-bignumber__unit",style:{fontSize:Ne.valueSize?Math.max(11,Math.round(.32*Ne.valueSize)):"0.75em",color:"var(--semiotic-text-secondary, #9ca3af)",fontWeight:500},children:O}):null]})),Ne.showDelta&&(nt||H||T)?e(gt,{className:"semiotic-bignumber__delta semiotic-bignumber__delta--"+ft,style:{display:"inline"===q?"inline-flex":"flex",flexWrap:"wrap",gap:8,alignItems:"baseline",marginTop:"inline"===q?0:6,fontSize:Ne.deltaSize||void 0,color:"var(--semiotic-text-secondary, #6b7280)"},children:F(ue,ut,t(n,{children:[nt?t("span",{className:"semiotic-bignumber__delta-row semiotic-bignumber__delta-row--"+ft,style:{display:"inline-flex",alignItems:"center",gap:4,color:S(tt),fontWeight:600},children:[e("span",{"aria-hidden":"true",className:"semiotic-bignumber__arrow semiotic-bignumber__arrow--"+ft,children:$(tt)}),e("span",{className:"semiotic-bignumber__delta-amount",children:nt}),it?t("span",{className:"semiotic-bignumber__delta-percent",style:{fontWeight:500},children:["(",it,")"]}):null]}):null,(null==T?void 0:T.label)?e("span",{className:"semiotic-bignumber__comparison-label",children:T.label}):null,H?t("span",{className:"semiotic-bignumber__target",style:{display:"inline-flex",alignItems:"baseline",gap:4},children:[nt||(null==T?void 0:T.label)?e("span",{"aria-hidden":"true",className:"semiotic-bignumber__separator",children:"·"}):null,e("span",{className:"semiotic-bignumber__target-percent",style:{fontWeight:500,color:"var(--semiotic-text, #111)"},children:rt}),t("span",{className:"semiotic-bignumber__target-value",children:["of ",lt(H.value),H.label?" "+H.label:""]})]}):null]}))}):null,Ne.showChart&&null!=de?e("div",{className:"semiotic-bignumber__chart",style:{position:"absolute",top:dt.top,right:dt.right,width:null!=me?me:Ne.chartSize,height:null!=me?me:Ne.chartSize,display:"flex",alignItems:"center",justifyContent:"center",pointerEvents:"none"},children:e("div",{style:{pointerEvents:"auto",lineHeight:0},children:F(de,ut,null)})}):null,Ne.showTrend&&null!=ce?e("div",{className:"semiotic-bignumber__trend",style:{position:"absolute",left:dt.left,right:dt.right,bottom:dt.bottom+(null!=he?28:0)},children:F(ce,ut,null)}):null,null!=he?e(gt,{className:"semiotic-bignumber__footer",style:{position:"absolute",left:dt.left,right:dt.right,bottom:dt.bottom,fontSize:Ne.deltaSize||void 0,color:"var(--semiotic-text-secondary, #9ca3af)"},children:F(he,ut,null)}):null,ve?e("span",{style:{position:"absolute",width:1,height:1,padding:0,margin:-1,overflow:"hidden",clip:"rect(0,0,0,0)",whiteSpace:"nowrap",border:0},children:ve}):null,e("span",{"aria-hidden":"true",style:{display:"none"},children:null!=Qe?ot(Qe):null})]})})});_.displayName="BigNumber";const z=_;function D(n){const i=Math.floor(.45*n.width),r=Math.floor(.6*n.width),l=(t,n)=>e("div",{style:{width:t,height:n,background:"var(--semiotic-border, #e0e0e0)",borderRadius:4,opacity:.55}});return t("div",{style:{display:"flex",flexDirection:"column",gap:10,justifyContent:"center",width:"100%",height:"100%"},children:["thumbnail"!==n.mode&&"inline"!==n.mode?l(i,10):null,l(r,"presentation"===n.mode?48:28),"tile"===n.mode||"presentation"===n.mode?l(Math.floor(.35*n.width),8):null]})}export{z as BigNumber,z as BigNumberDefault,b as buildFormatter,x as buildSparklinePath,w as colorForLevel,v as formatDeltaPercent,g as formatDuration,f as formatSignedDelta,y as resolveThreshold};
2
+ import{jsx as e,jsxs as t,Fragment as n}from"react/jsx-runtime";import*as i from"react";import{useState as r,useEffect as l,forwardRef as o,useRef as a,useCallback as s,useImperativeHandle as u,useMemo as c}from"react";function m({componentName:n,message:i,diagnosticHint:r,width:l,height:o}){return e("div",{role:"alert",style:{width:l,height:Math.max(o,120),display:"flex",alignItems:"center",justifyContent:"center",border:"1px dashed rgba(128, 128, 128, 0.4)",borderRadius:8,background:"rgba(128, 128, 128, 0.04)",padding:24,boxSizing:"border-box"},children:t("div",{style:{textAlign:"center",maxWidth:400},children:[e("div",{style:{fontSize:13,fontWeight:600,color:"rgba(128, 128, 128, 0.7)",marginBottom:6,fontFamily:"monospace"},children:n}),e("div",{style:{fontSize:14,color:"rgba(128, 128, 128, 0.9)",lineHeight:1.5},children:i}),r&&e("div",{"data-testid":"semiotic-diagnostic-hint",style:{marginTop:10,padding:"8px 12px",background:"rgba(128, 128, 128, 0.06)",borderRadius:4,fontSize:12,color:"rgba(128, 128, 128, 0.8)",fontFamily:"monospace",textAlign:"left",whiteSpace:"pre-wrap",lineHeight:1.6},children:r})]})})}class d extends i.Component{constructor(e){super(e),this.state={error:null}}static getDerivedStateFromError(e){return{error:e}}componentDidCatch(e,t){var n,i;null===(i=(n=this.props).onError)||void 0===i||i.call(n,e,t)}render(){if(this.state.error){const{fallback:t}=this.props,n=this.state.error;return"function"==typeof t?t(n):void 0!==t?t:e(m,{componentName:"ChartErrorBoundary",message:n.message||"An unexpected error occurred while rendering this chart.",width:600,height:400})}return this.props.children}}function h({componentName:t,width:n,height:i,children:r}){return e(d,{fallback:r=>e(m,{componentName:t,message:r.message,width:n,height:i}),children:r})}function b(e,t={}){var n,i,r,l,o,a,s;if("function"==typeof e)return e;const u=null!==(n=t.locale)&&void 0!==n?n:"en-US",c=null!==(i=t.currency)&&void 0!==i?i:"USD";if("currency"===e){const e=null!==(r=t.precision)&&void 0!==r?r:2,n=new Intl.NumberFormat(u,{style:"currency",currency:c,maximumFractionDigits:e,minimumFractionDigits:e});return e=>n.format(e)}if("percent"===e){const e=null!==(l=t.precision)&&void 0!==l?l:1,n=new Intl.NumberFormat(u,{style:"percent",maximumFractionDigits:e,minimumFractionDigits:0});return e=>n.format(e)}if("compact"===e){const e=null!==(o=t.precision)&&void 0!==o?o:1,n=new Intl.NumberFormat(u,{notation:"compact",maximumFractionDigits:e,minimumFractionDigits:0});return e=>n.format(e)}if("duration"===e)return e=>g(e);const m=null!==(a=t.precision)&&void 0!==a?a:0,d=new Intl.NumberFormat(u,{notation:null!==(s=t.notation)&&void 0!==s?s:"standard",maximumFractionDigits:m,minimumFractionDigits:0});return e=>d.format(e)}function g(e){if(!Number.isFinite(e))return e+"";const t=0>e?"-":"",n=Math.abs(e);if(1e3>n)return`${t}${Math.round(n)}ms`;const i=n/1e3;if(60>i)return`${t}${r=i,Math.round(100*r)/100+""}s`;var r;const l=i/60;if(60>l){const e=Math.floor(l),n=Math.round(i-60*e);return 0===n?`${t}${e}m`:`${t}${e}m ${n}s`}const o=l/60;if(24>o){const e=Math.floor(o),n=Math.round(l-60*e);return 0===n?`${t}${e}h`:`${t}${e}h ${n}m`}const a=Math.floor(o/24),s=Math.round(o-24*a);return 0===s?`${t}${a}d`:`${t}${a}d ${s}h`}function p(e,t,n){return`${null!=t?t:""}${e}${null!=n?n:""}`}function f(e,t){return Number.isFinite(e)?0===e?t(0):`${e>0?"+":"−"}${t(Math.abs(e))}`:""}function v(e,t,n="en-US",i=1){if(!Number.isFinite(e)||!Number.isFinite(t))return null;if(0===e)return null;const r=(t-e)/Math.abs(e);return new Intl.NumberFormat(n,{style:"percent",maximumFractionDigits:i,minimumFractionDigits:0,signDisplay:"exceptZero"}).format(r)}function y(e,t){if(!t||0===t.length)return null;if(!Number.isFinite(e))return null;const n=t.filter(e=>Number.isFinite(e.at)||e.at===-1/0).slice().sort((e,t)=>e.at-t.at);let i=null;for(const t of n){if(t.at>e)break;i=t}return i}function w(e,t){return t||("neutral"===e?"var(--semiotic-text, currentColor)":`var(--semiotic-${e}, currentColor)`)}function x(e,t){var n,i,r;const l=null!==(n=t.padding)&&void 0!==n?n:1;if(0===e.length)return{line:"",area:"",points:[]};if(1===e.length){const e=t.width/2,n=t.height/2;return{line:`M${e},${n}`,area:"",points:[{x:e,y:n}]}}const o=null!==(i=t.yMin)&&void 0!==i?i:e.reduce((e,t)=>Number.isFinite(t)&&e>t?t:e,1/0),a=(null!==(r=t.yMax)&&void 0!==r?r:e.reduce((e,t)=>Number.isFinite(t)&&t>e?t:e,-1/0))-o||1,s=Math.max(0,t.width-2*l),u=Math.max(0,t.height-2*l),c=1===e.length?0:s/(e.length-1),m=[];let d="";for(let t=0;e.length>t;t++){const n=e[t];if(!Number.isFinite(n))continue;const i=l+t*c,r=l+u-(n-o)/a*u;d+=`${0===m.length?"M":"L"}${i.toFixed(2)},${r.toFixed(2)}`,m.push({x:i,y:r})}if(0===m.length)return{line:"",area:"",points:[]};const h=m[0],b=l+u;return{line:d,area:`${d} L${m[m.length-1].x.toFixed(2)},${b.toFixed(2)} L${h.x.toFixed(2)},${b.toFixed(2)} Z`,points:m}}"undefined"!=typeof process&&process;const N={tile:{width:280,height:184,align:"start",labelSize:13,captionSize:11,valueSize:40,deltaSize:13,padding:{top:14,right:16,bottom:14,left:16},background:"var(--semiotic-surface, transparent)",border:!0,showHeader:!0,showDelta:!0,showTrend:!0,showChart:!0,chartSize:44},presentation:{width:540,height:320,align:"center",labelSize:18,captionSize:14,valueSize:96,deltaSize:18,padding:{top:32,right:32,bottom:32,left:32},background:"var(--semiotic-surface, transparent)",border:!0,showHeader:!0,showDelta:!0,showTrend:!0,showChart:!0,chartSize:80},inline:{width:void 0,height:void 0,align:"inherit",labelSize:0,captionSize:0,valueSize:0,deltaSize:0,padding:{top:0,right:0,bottom:0,left:0},background:"transparent",border:!1,showHeader:!1,showDelta:!0,showTrend:!1,showChart:!1,chartSize:0},thumbnail:{width:96,height:56,align:"center",labelSize:0,captionSize:0,valueSize:22,deltaSize:0,padding:{top:4,right:6,bottom:4,left:6},background:"transparent",border:!1,showHeader:!1,showDelta:!1,showTrend:!1,showChart:!1,chartSize:0}};function F(e,t,n){return void 0===e?n:"function"==typeof e?e(t):e}function S(e){return"positive"===e?"var(--semiotic-success, currentColor)":"negative"===e?"var(--semiotic-danger, currentColor)":"var(--semiotic-text-secondary, currentColor)"}function $(e){return"positive"===e?"▲":"negative"===e?"▼":"■"}const _=o((i,o)=>{var m,d,g,v;const{value:x,label:_,caption:z,format:M,locale:C,currency:j,precision:I,prefix:k,suffix:L,unit:B,comparison:O,target:T,delta:H,deltaFormat:W,showDeltaPercent:E,direction:P,sentiment:A,thresholds:R,windowSize:V=60,mode:U="tile",align:Z,width:q,height:X,padding:Y,emphasis:G,color:J,background:K,borderColor:Q,borderRadius:ee,className:te,style:ne,animate:ie,stalenessThreshold:re,staleLabel:le,headerSlot:oe,valueSlot:ae,deltaSlot:se,trendSlot:ue,chartSlot:ce,chartSize:me,footerSlot:de,onClick:he,onObservation:be,chartId:ge,description:pe,summary:fe,loading:ve,loadingContent:ye,emptyContent:we}=i,xe=null!==(m=N[U])&&void 0!==m?m:N.tile,Ne=null!=Z?Z:xe.align,Fe=null!=q?q:xe.width,Se=null!=X?X:xe.height,$e=function(){const[e,t]=r(()=>!("undefined"==typeof window||!window.matchMedia)&&window.matchMedia("(prefers-reduced-motion: reduce)").matches);return l(()=>{if("undefined"==typeof window||!window.matchMedia)return;const e=window.matchMedia("(prefers-reduced-motion: reduce)");return t(e.matches),function(e,t){if("function"==typeof e.addEventListener)return e.addEventListener("change",t),()=>e.removeEventListener("change",t);const n=e;return n.addListener(t),()=>n.removeListener(t)}(e,e=>t(e.matches))},[]),e}(),[_e,ze]=r([]),[De,Me]=r(null),[Ce,je]=r(null),[Ie,ke]=r(null),Le=a([]),Be=a(null),Oe=a(x);l(()=>{Oe.current=x},[x]);const Te=a(V);l(()=>{Te.current=V},[V]);const He=s(e=>{const t="number"==typeof e?{value:e,time:Date.now()}:Object.assign({time:Date.now()},e),n="number"==typeof t.time?t.time:t.time instanceof Date?t.time.getTime():Date.now();return Object.assign(Object.assign({},t),{time:n})},[]),We=s(e=>{if(0===e.length)return;const t=Te.current,n=e.map(He);let i=Le.current.concat(n);i.length>t&&(i=i.slice(i.length-t)),Le.current=i;const r=n[n.length-1];Be.current=r.value,ze(i),Me(r.value);for(let e=n.length-1;e>=0;e--){const t=n[e].comparison;if(null!=t){je(t);break}}ke(r.time)},[He]),Ee=s(e=>We([e]),[We]);u(o,()=>({push:e=>Ee(e),pushMany:e=>We(e),clear:()=>{Le.current=[],Be.current=null,ze([]),Me(null),je(null),ke(null)},getValue:()=>{var e;return null!==(e=Be.current)&&void 0!==e?e:Number.isFinite(Oe.current)?Oe.current:null},getData:()=>Le.current.slice()}),[Ee,We]);const Pe=null!=De?De:x,Ae=null==Pe||"number"!=typeof Pe||!Number.isFinite(Pe),Re=c(()=>b(null!=M?M:"number",{locale:C,currency:j,precision:I}),[M,C,j,I]),Ve=c(()=>{var e;return b(null!==(e=null!=W?W:M)&&void 0!==e?e:"number",{locale:C,currency:j,precision:null==W&&null==M?0:I})},[W,M,C,j,I]),Ue=null!=ie&&ie,Ze=a(("object"==typeof Ue&&!1===Ue.intro||!Ue)&&Number.isFinite(x)?x:0),qe=function(e,t,n){const[i,o]=r(e),s=a(null),u=a(e),c=a(0),m=a(e);return l(()=>{if(!Number.isFinite(e))return void o(e);if(!t||n)return void o(e);const r="object"==typeof t&&t.duration?t.duration:300,l="object"==typeof t&&"linear"===t.easing?"linear":"ease-out";u.current=i,m.current=e,c.current="undefined"!=typeof performance?performance.now():Date.now();const a="linear"===l?e=>e:e=>1-Math.pow(1-e,3),d=e=>{const t=Math.min(1,(e-c.current)/r),n=a(t);o(u.current+(m.current-u.current)*n),1>t?s.current=requestAnimationFrame(d):(s.current=null,o(m.current))};return s.current=requestAnimationFrame(d),()=>{null!=s.current&&cancelAnimationFrame(s.current),s.current=null}},[e,t,n]),i}(Number.isFinite(Pe)?Pe:Ze.current,Ue,$e),Xe=Ue?qe:Number.isFinite(Pe)?Pe:0,Ye=c(()=>y(Number.isFinite(Pe)?Pe:NaN,R),[Pe,R]),Ge=Ye?Ye.level:"neutral",Je=null!=J?J:w(Ge,null==Ye?void 0:Ye.color),Ke=null!==(d=null!=Ce?Ce:null==O?void 0:O.value)&&void 0!==d?d:null,Qe=null!=H?H:null!=Ke&&Number.isFinite(Pe)?Pe-Ke:null,et=function(e,t,n){if(n&&"auto"!==n)return n;if(null==e||0===e||!Number.isFinite(e))return"neutral";const i=null!=t?t:"higher-is-better";return"neutral"===i?"neutral":("higher-is-better"===i?e>0:0>e)?"positive":"negative"}(Qe,null!==(v=null!==(g=null==O?void 0:O.direction)&&void 0!==g?g:null==T?void 0:T.direction)&&void 0!==v?v:P,A),tt=null!=Qe&&Number.isFinite(Qe)?f(Qe,Ve):null,nt=c(()=>new Intl.NumberFormat(null!=C?C:"en-US",{style:"percent",maximumFractionDigits:1,minimumFractionDigits:0,signDisplay:"exceptZero"}),[C]),it=null!=Ke&&Number.isFinite(Pe)&&(null==E||E)&&0!==Ke?nt.format((Pe-Ke)/Math.abs(Ke)):null,rt=c(()=>new Intl.NumberFormat(null!=C?C:"en-US",{style:"percent",maximumFractionDigits:0}),[C]),lt=c(()=>T&&Number.isFinite(Pe)&&T.value?rt.format(Pe/T.value):null,[T,Pe,rt]),ot=c(()=>{var e,t;return b(null!==(t=null!==(e=null==T?void 0:T.format)&&void 0!==e?e:M)&&void 0!==t?t:"number",{locale:C,currency:j,precision:I})},[null==T?void 0:T.format,M,C,j,I]),at=c(()=>{var e,t;return b(null!==(t=null!==(e=null==O?void 0:O.format)&&void 0!==e?e:M)&&void 0!==t?t:"number",{locale:C,currency:j,precision:I})},[null==O?void 0:O.format,M,C,j,I]),st=function(e,t){const[n,i]=r(!1);return l(()=>{if(!t||null==e)return void i(!1);const n=()=>{const n=Date.now()-e;i(n>=t)};n();const r=setInterval(n,Math.max(250,Math.floor(t/4)));return()=>clearInterval(r)},[e,t]),n}(Ie,re),ut=Number.isFinite(Xe)?p(Re(Xe),k,L):"",ct={value:Ae?null:Pe,formattedValue:ut,level:Ge,color:Je,delta:Qe,deltaFormatted:tt,deltaPercent:it,sentiment:et,isStale:st,pushBuffer:_e},mt=null!=pe?pe:function(e){var t;const n=[];if(e.label&&n.push(e.label+":"),n.push(e.unit?`${e.formattedValue} ${e.unit}`:e.formattedValue),e.deltaFormatted){const t=e.delta;n.push(`${null!=t&&Number.isFinite(t)&&0!==t?t>0?"up":"down":"change"} ${e.deltaFormatted}${e.deltaPercent?` (${e.deltaPercent})`:""}${e.comparisonLabel?" from "+e.comparisonLabel:""}`)}return e.targetPercent&&e.targetLabel&&n.push(`${e.targetPercent} of ${e.targetLabel}`),e.stale&&n.push(null!==(t=e.staleLabel)&&void 0!==t?t:"stale"),n.join(", ")}({label:_,formattedValue:Number.isFinite(Pe)?p(Re(Pe),k,L):"",unit:B,comparisonLabel:null==O?void 0:O.label,delta:Qe,deltaFormatted:tt,deltaPercent:it,targetLabel:null==T?void 0:T.label,targetPercent:lt,stale:st,staleLabel:le}),dt="number"==typeof Y?{top:Y,right:Y,bottom:Y,left:Y}:Object.assign(Object.assign({},xe.padding),null!=Y?Y:{}),ht="end"===Ne?"flex-end":"center"===Ne?"center":"start"===Ne?"flex-start":"inherit",bt=Object.assign({position:"relative",boxSizing:"border-box",width:Fe,height:Se,padding:`${dt.top}px ${dt.right}px ${dt.bottom}px ${dt.left}px`,background:null!=K?K:xe.background,border:xe.border?"1px solid "+(null!=Q?Q:"var(--semiotic-border, #e2e2e2)"):void 0,borderRadius:"number"==typeof ee?ee+"px":null!=ee?ee:"var(--semiotic-border-radius, 8px)",display:"inline"===U?"inline-flex":"flex",flexDirection:"column",alignItems:"inherit"===ht?void 0:ht,textAlign:Ne,fontFamily:"var(--semiotic-font-family, system-ui, sans-serif)",color:"var(--semiotic-text, #111)",opacity:st?.55:1,transition:"opacity 240ms ease-out",gridColumn:"primary"===G?"span 2":void 0,cursor:he?"pointer":void 0},ne),gt=s(e=>{const t=e.currentTarget.getBoundingClientRect(),n=e.clientX-t.left,i=e.clientY-t.top,r={value:Ae?NaN:Pe,level:Ge,delta:Qe};he&&he(r,{x:n,y:i}),be&&be({type:"click",datum:r,x:n,y:i,chartType:"BigNumber",chartId:ge,timestamp:Date.now()})},[he,be,ge,Ae,Pe,Ge,Qe]),pt="inline"===U?"span":"div",ft=["semiotic-bignumber","semiotic-bignumber--mode-"+U,"semiotic-bignumber--level-"+Ge,"semiotic-bignumber--sentiment-"+et,st?"semiotic-bignumber--stale":null,te].filter(Boolean).join(" "),vt="positive"===et?"up":"negative"===et?"down":"flat";if(ve){const t="number"==typeof Fe?Fe:280,n="number"==typeof Se?Se:160;return e(pt,{role:"status","aria-live":"polite","aria-busy":"true",className:ft+" semiotic-bignumber--loading",style:Object.assign(Object.assign({},bt),{opacity:1}),children:null!=ye?ye:e(D,{width:t,height:n,mode:U})})}return Ae?!1===we?null:e(pt,{role:"status","aria-label":_?_+": no value":"no value",className:ft+" semiotic-bignumber--empty",style:Object.assign(Object.assign({},bt),{color:"var(--semiotic-text-secondary, #666)",fontSize:13,alignItems:"center",justifyContent:"center"}),children:null!=we?we:"—"}):e(h,{componentName:"BigNumber",width:"number"==typeof Fe?Fe:280,height:"number"==typeof Se?Se:160,children:t(pt,{role:"group","aria-label":mt,"data-chart":"BigNumber","data-mode":U,"data-level":Ge,"data-stale":st?"true":void 0,"data-sentiment":et,className:ft,style:bt,onClick:he||be?gt:void 0,children:[xe.showHeader&&(_||z||oe)?e("div",{className:"semiotic-bignumber__header",style:{display:"flex",flexDirection:"column",gap:2,marginBottom:6,paddingRight:xe.showChart&&null!=ce?(null!=me?me:xe.chartSize)+8:0},children:F(oe,ct,t(n,{children:[_?e("span",{className:"semiotic-bignumber__label",style:{fontSize:xe.labelSize,color:"var(--semiotic-text-secondary, #6b7280)",fontWeight:500,letterSpacing:.2},children:_}):null,z?e("span",{className:"semiotic-bignumber__caption",style:{fontSize:xe.captionSize,color:"var(--semiotic-text-secondary, #9ca3af)"},children:z}):null]}))}):null,F(ae,ct,t(pt,{className:"semiotic-bignumber__value semiotic-bignumber__value--"+Ge,style:{display:"inline"===U?"inline-flex":"flex",alignItems:"baseline",gap:6,fontVariantNumeric:"tabular-nums",fontWeight:600,color:Je,fontSize:xe.valueSize||void 0,lineHeight:1.05},children:[e("span",{className:"semiotic-bignumber__value-text",children:ut}),B?e("span",{className:"semiotic-bignumber__unit",style:{fontSize:xe.valueSize?Math.max(11,Math.round(.32*xe.valueSize)):"0.75em",color:"var(--semiotic-text-secondary, #9ca3af)",fontWeight:500},children:B}):null]})),xe.showDelta&&(tt||T||O)?e(pt,{className:"semiotic-bignumber__delta semiotic-bignumber__delta--"+vt,style:{display:"inline"===U?"inline-flex":"flex",flexWrap:"wrap",gap:8,alignItems:"baseline",marginTop:"inline"===U?0:6,fontSize:xe.deltaSize||void 0,color:"var(--semiotic-text-secondary, #6b7280)"},children:F(se,ct,t(n,{children:[tt?t("span",{className:"semiotic-bignumber__delta-row semiotic-bignumber__delta-row--"+vt,style:{display:"inline-flex",alignItems:"center",gap:4,color:S(et),fontWeight:600},children:[e("span",{"aria-hidden":"true",className:"semiotic-bignumber__arrow semiotic-bignumber__arrow--"+vt,children:$(et)}),e("span",{className:"semiotic-bignumber__delta-amount",children:tt}),it?t("span",{className:"semiotic-bignumber__delta-percent",style:{fontWeight:500},children:["(",it,")"]}):null]}):null,(null==O?void 0:O.label)?e("span",{className:"semiotic-bignumber__comparison-label",children:O.label}):null,T?t("span",{className:"semiotic-bignumber__target",style:{display:"inline-flex",alignItems:"baseline",gap:4},children:[tt||(null==O?void 0:O.label)?e("span",{"aria-hidden":"true",className:"semiotic-bignumber__separator",children:"·"}):null,e("span",{className:"semiotic-bignumber__target-percent",style:{fontWeight:500,color:"var(--semiotic-text, #111)"},children:lt}),t("span",{className:"semiotic-bignumber__target-value",children:["of ",ot(T.value),T.label?" "+T.label:""]})]}):null]}))}):null,xe.showChart&&null!=ce?e("div",{className:"semiotic-bignumber__chart",style:{position:"absolute",top:dt.top,right:dt.right,width:null!=me?me:xe.chartSize,height:null!=me?me:xe.chartSize,display:"flex",alignItems:"center",justifyContent:"center",pointerEvents:"none"},children:e("div",{style:{pointerEvents:"auto",lineHeight:0},children:F(ce,ct,null)})}):null,xe.showTrend&&null!=ue?e("div",{className:"semiotic-bignumber__trend",style:{position:"absolute",left:dt.left,right:dt.right,bottom:dt.bottom+(null!=de?28:0)},children:F(ue,ct,null)}):null,null!=de?e(pt,{className:"semiotic-bignumber__footer",style:{position:"absolute",left:dt.left,right:dt.right,bottom:dt.bottom,fontSize:xe.deltaSize||void 0,color:"var(--semiotic-text-secondary, #9ca3af)"},children:F(de,ct,null)}):null,fe?e("span",{style:{position:"absolute",width:1,height:1,padding:0,margin:-1,overflow:"hidden",clip:"rect(0,0,0,0)",whiteSpace:"nowrap",border:0},children:fe}):null,e("span",{"aria-hidden":"true",style:{display:"none"},children:null!=Ke?at(Ke):null})]})})});_.displayName="BigNumber";const z=_;function D(n){const i=Math.floor(.45*n.width),r=Math.floor(.6*n.width),l=(t,n)=>e("div",{style:{width:t,height:n,background:"var(--semiotic-border, #e0e0e0)",borderRadius:4,opacity:.55}});return t("div",{style:{display:"flex",flexDirection:"column",gap:10,justifyContent:"center",width:"100%",height:"100%"},children:["thumbnail"!==n.mode&&"inline"!==n.mode?l(i,10):null,l(r,"presentation"===n.mode?48:28),"tile"===n.mode||"presentation"===n.mode?l(Math.floor(.35*n.width),8):null]})}export{z as BigNumber,z as BigNumberDefault,b as buildFormatter,x as buildSparklinePath,w as colorForLevel,v as formatDeltaPercent,g as formatDuration,f as formatSignedDelta,y as resolveThreshold};
@@ -18,6 +18,8 @@ export { QuadrantChart } from "./components/charts/xy/QuadrantChart";
18
18
  export { MultiAxisLineChart } from "./components/charts/xy/MultiAxisLineChart";
19
19
  export { CandlestickChart } from "./components/charts/xy/CandlestickChart";
20
20
  export { XYCustomChart } from "./components/charts/custom/XYCustomChart";
21
+ export { useCustomLayoutSelection } from "./components/stream/customLayoutSelection";
22
+ export type { CustomLayoutSelection } from "./components/stream/customLayoutSelection";
21
23
  export type { StreamXYFrameProps, StreamXYFrameHandle } from "./components/stream/types";
22
24
  export type { CustomLayout, LayoutContext, LayoutResult } from "./components/stream/customLayout";
23
25
  export type { LineChartProps } from "./components/charts/xy/LineChart";
@@ -33,6 +33,8 @@ export type { StreamNetworkFrameProps, StreamNetworkFrameHandle, NetworkChartTyp
33
33
  export type { SelectionConfig, LinkedHoverProp, LinkedBrushProp } from "./components/charts/shared/types";
34
34
  export type { LinkedChartsProps } from "./components/LinkedCharts";
35
35
  export { useSelection, useSelectionActions, useLinkedHover, useBrushSelection, useFilteredData } from "./components/LinkedCharts";
36
+ export { useCustomLayoutSelection } from "./components/stream/customLayoutSelection";
37
+ export type { CustomLayoutSelection } from "./components/stream/customLayoutSelection";
36
38
  export type { UseSelectionOptions, UseSelectionResult, UseSelectionActionsResult, UseLinkedHoverOptions, UseLinkedHoverResult, UseBrushSelectionOptions, UseBrushSelectionResult } from "./components/LinkedCharts";
37
39
  export { useChartObserver } from "./components/LinkedCharts";
38
40
  export type { UseChartObserverOptions, UseChartObserverResult } from "./components/LinkedCharts";
@@ -62,6 +64,8 @@ export type { HatchPatternOptions } from "./components/charts/shared/hatchPatter
62
64
  export { smartTickFormat, adaptiveTimeTicks } from "./components/charts/shared/formatUtils";
63
65
  export { darkenColor, lightenColor } from "./components/charts/shared/colorManipulation";
64
66
  export type { TooltipProp, TooltipConfig, TooltipField, MultiLineTooltipConfig } from "./components/Tooltip/Tooltip";
67
+ export { smartTooltipEntries } from "./components/charts/shared/tooltipUtils";
68
+ export type { SmartTooltipEntry, SmartTooltipResult } from "./components/charts/shared/tooltipUtils";
65
69
  export type { ArrowOfTime, WindowMode, ThresholdType, LineStyle, BarStyle, WaterfallStyle, SwarmStyle, AnnotationContext, AnnotationAnchorMode, CrosshairStyle, HoverAnnotationConfig, HoverData } from "./components/realtime/types";
66
70
  export type { RealtimeLineChartProps } from "./components/charts/realtime/RealtimeLineChart";
67
71
  export type { RealtimeTemporalHistogramProps, RealtimeHistogramProps, TemporalHistogramProps } from "./components/charts/realtime/RealtimeHistogram";