@skdx/web-components-charts 0.44.0 → 0.48.0

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 (174) hide show
  1. package/dist/area.cjs +9 -9
  2. package/dist/area.d.cts +2 -1
  3. package/dist/area.d.ts +2 -1
  4. package/dist/area.js +9 -9
  5. package/dist/bar.cjs +9 -9
  6. package/dist/bar.d.cts +2 -1
  7. package/dist/bar.d.ts +2 -1
  8. package/dist/bar.js +9 -9
  9. package/dist/boxplot.cjs +35 -35
  10. package/dist/boxplot.d.cts +2 -1
  11. package/dist/boxplot.d.ts +2 -1
  12. package/dist/boxplot.js +12 -12
  13. package/dist/bubble.cjs +10 -10
  14. package/dist/bubble.d.cts +2 -1
  15. package/dist/bubble.d.ts +2 -1
  16. package/dist/bubble.js +10 -10
  17. package/dist/bullet.cjs +12 -12
  18. package/dist/bullet.d.cts +2 -1
  19. package/dist/bullet.d.ts +2 -1
  20. package/dist/bullet.js +12 -12
  21. package/dist/bump.cjs +11 -11
  22. package/dist/bump.d.cts +2 -1
  23. package/dist/bump.d.ts +2 -1
  24. package/dist/bump.js +29 -29
  25. package/dist/candlestick.cjs +28 -28
  26. package/dist/candlestick.d.cts +2 -1
  27. package/dist/candlestick.d.ts +2 -1
  28. package/dist/candlestick.js +8 -8
  29. package/dist/chord.cjs +15 -15
  30. package/dist/chord.d.cts +2 -1
  31. package/dist/chord.d.ts +2 -1
  32. package/dist/chord.js +28 -28
  33. package/dist/circle-packing.cjs +5 -5
  34. package/dist/circle-packing.d.cts +2 -1
  35. package/dist/circle-packing.d.ts +2 -1
  36. package/dist/circle-packing.js +8 -8
  37. package/dist/combo.cjs +9 -9
  38. package/dist/combo.d.cts +2 -1
  39. package/dist/combo.d.ts +2 -1
  40. package/dist/combo.js +9 -9
  41. package/dist/dumbbell.cjs +7 -7
  42. package/dist/dumbbell.d.cts +2 -1
  43. package/dist/dumbbell.d.ts +2 -1
  44. package/dist/dumbbell.js +8 -8
  45. package/dist/funnel.cjs +12 -12
  46. package/dist/funnel.d.cts +2 -1
  47. package/dist/funnel.d.ts +2 -1
  48. package/dist/funnel.js +27 -27
  49. package/dist/gantt.cjs +15 -15
  50. package/dist/gantt.d.cts +2 -1
  51. package/dist/gantt.d.ts +2 -1
  52. package/dist/gantt.js +15 -15
  53. package/dist/gauge.cjs +13 -13
  54. package/dist/gauge.d.cts +2 -1
  55. package/dist/gauge.d.ts +2 -1
  56. package/dist/gauge.js +13 -13
  57. package/dist/heatmap.cjs +5 -5
  58. package/dist/heatmap.d.cts +2 -1
  59. package/dist/heatmap.d.ts +2 -1
  60. package/dist/heatmap.js +5 -5
  61. package/dist/histogram.cjs +13 -13
  62. package/dist/histogram.d.cts +2 -1
  63. package/dist/histogram.d.ts +2 -1
  64. package/dist/histogram.js +13 -13
  65. package/dist/icicle.cjs +10 -10
  66. package/dist/icicle.d.cts +2 -1
  67. package/dist/icicle.d.ts +2 -1
  68. package/dist/icicle.js +10 -10
  69. package/dist/{index-D44-61v7.d.cts → index-Hexgp_4S.d.cts} +5 -1070
  70. package/dist/{index-D44-61v7.d.ts → index-pqdWxinA.d.ts} +5 -1070
  71. package/dist/index.cjs +5 -5
  72. package/dist/index.d.cts +3 -2
  73. package/dist/index.d.ts +3 -2
  74. package/dist/index.js +3 -3
  75. package/dist/line.cjs +9 -9
  76. package/dist/line.d.cts +2 -1
  77. package/dist/line.d.ts +2 -1
  78. package/dist/line.js +9 -9
  79. package/dist/linear-gauge.cjs +8 -8
  80. package/dist/linear-gauge.d.cts +2 -1
  81. package/dist/linear-gauge.d.ts +2 -1
  82. package/dist/linear-gauge.js +8 -8
  83. package/dist/map.cjs +6 -6
  84. package/dist/map.d.cts +2 -1
  85. package/dist/map.d.ts +2 -1
  86. package/dist/map.js +6 -6
  87. package/dist/marimekko.cjs +8 -8
  88. package/dist/marimekko.d.cts +2 -1
  89. package/dist/marimekko.d.ts +2 -1
  90. package/dist/marimekko.js +5 -5
  91. package/dist/network.cjs +10 -10
  92. package/dist/network.d.cts +2 -1
  93. package/dist/network.d.ts +2 -1
  94. package/dist/network.js +9 -9
  95. package/dist/organization.cjs +6 -6
  96. package/dist/organization.d.cts +2 -1
  97. package/dist/organization.d.ts +2 -1
  98. package/dist/organization.js +24 -24
  99. package/dist/parallel.cjs +8 -8
  100. package/dist/parallel.d.cts +2 -1
  101. package/dist/parallel.d.ts +2 -1
  102. package/dist/parallel.js +8 -8
  103. package/dist/pareto.cjs +9 -9
  104. package/dist/pareto.d.cts +2 -1
  105. package/dist/pareto.d.ts +2 -1
  106. package/dist/pareto.js +9 -9
  107. package/dist/pie.cjs +11 -11
  108. package/dist/pie.d.cts +2 -1
  109. package/dist/pie.d.ts +2 -1
  110. package/dist/pie.js +26 -26
  111. package/dist/polar-area.cjs +19 -19
  112. package/dist/polar-area.d.cts +2 -1
  113. package/dist/polar-area.d.ts +2 -1
  114. package/dist/polar-area.js +27 -27
  115. package/dist/portable-runtime.js +1 -0
  116. package/dist/portable.cjs +1 -0
  117. package/dist/portable.d.cts +25 -0
  118. package/dist/portable.d.ts +25 -0
  119. package/dist/portable.js +1 -0
  120. package/dist/radar.cjs +9 -9
  121. package/dist/radar.d.cts +2 -1
  122. package/dist/radar.d.ts +2 -1
  123. package/dist/radar.js +29 -29
  124. package/dist/radial.cjs +10 -10
  125. package/dist/radial.d.cts +2 -1
  126. package/dist/radial.d.ts +2 -1
  127. package/dist/radial.js +10 -10
  128. package/dist/range.cjs +13 -13
  129. package/dist/range.d.cts +2 -1
  130. package/dist/range.d.ts +2 -1
  131. package/dist/range.js +13 -13
  132. package/dist/sankey.cjs +8 -8
  133. package/dist/sankey.d.cts +2 -1
  134. package/dist/sankey.d.ts +2 -1
  135. package/dist/sankey.js +27 -27
  136. package/dist/scatter.cjs +10 -10
  137. package/dist/scatter.d.cts +2 -1
  138. package/dist/scatter.d.ts +2 -1
  139. package/dist/scatter.js +11 -11
  140. package/dist/sparkline.cjs +11 -11
  141. package/dist/sparkline.d.cts +2 -1
  142. package/dist/sparkline.d.ts +2 -1
  143. package/dist/sparkline.js +11 -11
  144. package/dist/sunburst.cjs +14 -14
  145. package/dist/sunburst.d.cts +2 -1
  146. package/dist/sunburst.d.ts +2 -1
  147. package/dist/sunburst.js +10 -10
  148. package/dist/swarm.cjs +10 -10
  149. package/dist/swarm.d.cts +2 -1
  150. package/dist/swarm.d.ts +2 -1
  151. package/dist/swarm.js +11 -11
  152. package/dist/timeline.cjs +12 -12
  153. package/dist/timeline.d.cts +2 -1
  154. package/dist/timeline.d.ts +2 -1
  155. package/dist/timeline.js +30 -30
  156. package/dist/tree.cjs +6 -6
  157. package/dist/tree.d.cts +2 -1
  158. package/dist/tree.d.ts +2 -1
  159. package/dist/tree.js +24 -24
  160. package/dist/treemap.cjs +14 -14
  161. package/dist/treemap.d.cts +2 -1
  162. package/dist/treemap.d.ts +2 -1
  163. package/dist/treemap.js +15 -15
  164. package/dist/types-DPf3PUs2.d.cts +1168 -0
  165. package/dist/types-DPf3PUs2.d.ts +1168 -0
  166. package/dist/waffle.cjs +3 -3
  167. package/dist/waffle.d.cts +2 -1
  168. package/dist/waffle.d.ts +2 -1
  169. package/dist/waffle.js +23 -23
  170. package/dist/waterfall.cjs +11 -11
  171. package/dist/waterfall.d.cts +2 -1
  172. package/dist/waterfall.d.ts +2 -1
  173. package/dist/waterfall.js +13 -13
  174. package/package.json +6 -4
@@ -0,0 +1,25 @@
1
+ import { al as ChartInput, am as PieChartInput } from './types-DPf3PUs2.js';
2
+
3
+ /** A portable chart uses the same data, formatting, state and theme options as its component. */
4
+ type PortableChartOptions = {
5
+ /** Accessible chart name, escaped into the resulting SVG. */
6
+ label: string;
7
+ /** Optional token resolver for a self-contained exported document. */
8
+ resolve?: ((cssVariable: string) => string) | undefined;
9
+ } & ({
10
+ type: 'bar' | 'line' | 'area';
11
+ input: ChartInput;
12
+ } | {
13
+ type: 'pie';
14
+ input: PieChartInput;
15
+ });
16
+ /**
17
+ * Renders an accessible static SVG with canonical chart geometry. This entry has no
18
+ * DOM, Lit or framework dependency and can be embedded in an offline document's
19
+ * module runtime. Call again with new data when that document refreshes a binding.
20
+ * Interactive focus/selection and responsive measurement belong to the chart components;
21
+ * callers supply dimensions and expose the document's data table when needed.
22
+ */
23
+ declare function renderChartSvg(options: PortableChartOptions): string;
24
+
25
+ export { ChartInput, PieChartInput, type PortableChartOptions, renderChartSvg };
@@ -0,0 +1 @@
1
+ var rn=e=>Number(e.toPrecision(12)),Hn,on=e=>(Hn??(Hn=new Intl.NumberFormat)).format(rn(e)),Wn=e=>{let t=Math.round(Math.abs(e)),n=e<0?"-":"",o=Math.floor(t/3600),i=Math.floor(t%3600/60),s=a=>String(a).padStart(2,"0");return o>0?`${n}${o}h ${s(i)}m`:i>0?`${n}${i}m ${s(t%60)}s`:`${n}${t}s`};function ce(e){if(e===void 0)return on;if(typeof e=="function")return e;let{style:t,locale:n,digits:o,unit:i="",timeZone:s}=e,a=u=>i?p=>u(p)+i:u,d=u=>o===void 0?u===void 0?{}:{maximumFractionDigits:u}:{minimumFractionDigits:o,maximumFractionDigits:o},f=u=>{let p=new Intl.NumberFormat(n,u);return a(x=>p.format(rn(x)))},l=u=>{let p=new Intl.DateTimeFormat(n,s?{...u,timeZone:s}:u);return x=>p.format(x)};switch(t){case"integer":return f({maximumFractionDigits:0});case"decimal":return f(d(2));case"percent":return f({style:"percent",...d(0)});case"currency":return f({style:"currency",currency:e.currency??"USD",...d()});case"compact":return f({notation:"compact",...d(1)});case"scientific":return f({notation:"scientific",...d(2)});case"date":return l({dateStyle:"medium"});case"time":return l({timeStyle:"short"});case"datetime":return l({dateStyle:"medium",timeStyle:"short"});case"duration":return a(Wn)}}function at(e,t){if(typeof e=="string")return e;let n=e instanceof Date?e.getTime():e;return t?ce(t)(n):e instanceof Date?new Intl.DateTimeFormat().format(e):on(n)}var de=e=>{if(e instanceof Date)return e.getTime();if(typeof e=="number")return e;let t=Number(e);return Number.isFinite(t)&&e.trim()!==""?t:Date.parse(e)};function ve([e,t],[n,o]){let i=t-e;return s=>i===0?n:n+(s-e)/i*(o-n)}function ge(e,t,n=5){if(e===t)return[e];let o=(t-e)/Math.max(1,n),i=10**Math.floor(Math.log10(o)),s=o/i,a=(s<1.5?1:s<3.5?2:s<7.5?5:10)*i,d=Math.floor(e/a)*a,f=Math.ceil(t/a)*a,l=[];for(let u=d;u<=f+a/2;u+=a)l.push(sn(u));return l}function an(e,[t,n],o=.2){let i=e===0?0:(n-t)/e,s=i*(1-Math.max(0,Math.min(.9,o)));return{step:i,bandwidth:s,start:a=>t+a*i+(i-s)/2,center:a=>t+(a+.5)*i}}var sn=e=>Number(e.toPrecision(12)),h=e=>Number(e.toFixed(2)),v=e=>typeof e=="number"&&Number.isFinite(e),fe=e=>e.filter(v);function he(e){let t=1/0,n=-1/0;for(let o of e)v(o)&&(o<t&&(t=o),o>n&&(n=o));return t===1/0?[0,0]:[t,n]}function ye(e,t="linear"){if(e.length===0)return"";let n=e[0];if(t==="step"||t==="stepBefore"||t==="stepAfter"){let l=`M${n.x} ${n.y}`;for(let u=1;u<e.length;u++){let p=e[u-1],x=e[u];t==="stepAfter"?l+=`H${x.x}V${x.y}`:t==="stepBefore"?l+=`V${x.y}H${x.x}`:l+=`H${h((p.x+x.x)/2)}V${x.y}H${x.x}`}return l}if(t==="linear"||e.length<3)return`M${e.map(l=>`${l.x} ${l.y}`).join("L")}`;let o=e.length,i=e.slice(1).map((l,u)=>l.x-e[u].x),s=e.slice(1).map((l,u)=>l.y-e[u].y),a=i.map((l,u)=>l===0?0:s[u]/l),d=[a[0]];for(let l=1;l<o-1;l++){let u=a[l-1],p=a[l];d.push(u*p<=0?0:(u+p)/2)}d.push(a[o-2]);for(let l=0;l<o-1;l++){let u=a[l];if(u===0){d[l]=0,d[l+1]=0;continue}let p=d[l]/u,x=d[l+1]/u,S=Math.hypot(p,x);S>3&&(d[l]=3*p*u/S,d[l+1]=3*x*u/S)}let f=`M${n.x} ${n.y}`;for(let l=0;l<o-1;l++){let u=e[l],p=e[l+1],x=i[l]/3;f+=`C${h(u.x+x)} ${h(u.y+x*d[l])} ${h(p.x-x)} ${h(p.y-x*d[l+1])} ${p.x} ${p.y}`}return f}var Ee=1e3,De=60*Ee,Be=60*De,je=24*Be,Gn=[Ee,5*Ee,15*Ee,30*Ee,De,5*De,15*De,30*De,Be,3*Be,6*Be,12*Be,je,2*je,7*je,14*je];function ln(e,t,n=6){if(!(t>e))return[e];let o=t-e,i=Gn.find(p=>o/p<=n),s=[];if(i!==void 0){for(let p=Math.ceil(e/i)*i;p<=t;p+=i)s.push(p);return s.length?s:[e,t]}let a=o/(30*je),d=[1,2,3,6,12,24,60,120].find(p=>a/p<=n)??240,f=new Date(e),l=f.getUTCFullYear(),u=Math.ceil((f.getUTCMonth()+(f.getUTCDate()>1?1:0))/d)*d;for(let p=Date.UTC(l,u,1);p<=t;)s.push(p),u+=d,u>=12&&(l+=Math.floor(u/12),u%=12),p=Date.UTC(l,u,1);return s.length?s:[e,t]}function cn(e,t){let n=Math.floor(Math.log10(e)),o=Math.ceil(Math.log10(t)),i=o-n<=1?[1,2,5]:[1],s=[];for(let a=n;a<=o;a++)for(let d of i)s.push(sn(d*10**a));return s.filter(a=>a>=e/1.0001&&a<=t*1.0001)}function it(e,t={}){if(t.thresholds&&t.thresholds.length>=2)return[...t.thresholds].filter(Number.isFinite).sort((f,l)=>f-l);let[n,o]=t.domain??he(e),i=Math.max(1,e.length),s=Math.max(1,t.bins??Math.ceil(Math.log2(i)+1)),a=t.binWidth??(o>n?(o-n)/s:1),d=o>n?Math.max(1,Math.ceil((o-n)/a-1e-9)):1;return Array.from({length:d+1},(f,l)=>Number((n+l*a).toPrecision(12)))}function st(e,t){let n=[];for(let s=0;s+1<t.length;s++)n.push({x0:t[s],x1:t[s+1],count:0});if(n.length===0)return n;let o=t[0],i=t[t.length-1];for(let s of fe(e)){if(s<o||s>i)continue;let a=0,d=n.length-1;for(;a<d;){let f=a+d+1>>1;n[f].x0<=s?a=f:d=f-1}n[a].count++}return n}var dn=["primary","success","warning","danger","neutral"].flatMap(e=>[500,700].map(t=>`var(--skdx-color-${e}-${t})`)).sort((e,t)=>Number(e.endsWith("700)"))-Number(t.endsWith("700)"))),H={axis:"var(--skdx-color-border-strong)",grid:"var(--skdx-color-border-subtle)",label:"var(--skdx-color-text-muted)",focus:"var(--skdx-color-focus-ring)",positive:"var(--skdx-color-success-500)",negative:"var(--skdx-color-danger-500)",fontFamily:"var(--skdx-font-family)",fontSize:"var(--skdx-font-size-xs)"},Rt=(e="neutral")=>e==="neutral"?H.axis:`var(--skdx-color-${e}-500)`,Lt=(e="neutral")=>e==="neutral"?H.label:e==="primary"?"var(--skdx-color-text-accent)":`var(--skdx-color-text-${e})`,fn=(e,t)=>t??dn[e%dn.length];var ee={top:16,right:16,bottom:32,left:48};function hn(e,t,n=ee){return{x:n.left,y:n.top,width:Math.max(0,e-n.left-n.right),height:Math.max(0,t-n.top-n.bottom)}}function lt(e){let t=e.legend;if(t)return t===!0?{}:t.enabled===!1?void 0:t}function un(e){let t=e.tooltip;return t===void 0||t===!0?{enabled:!0}:t===!1?{enabled:!1}:{...t,enabled:t.enabled??!0}}var mn=e=>e.crosshair===!0||un(e).trigger==="axis",ct=20,Un=120,pn=e=>{let t=lt(e);return t&&(t.position==="left"||t.position==="right")?t.width??Un:0},Ce=(e,t=600,n=300)=>({width:(e.width??t)-pn(e),height:(e.height??n)-(lt(e)?.position==="bottom"?ct:0)}),dt=(e,t,n)=>{let o=lt(e);return!o||!(o.position===void 0||o.position==="top")?0:(t?Math.max(1,bn(t,n??Ce(e).width,o)):1)*ct},ae=6.5;function xn(e,t){let n=Array.from(e),o=Math.max(0,Math.floor(t/ae));return n.length<=o?e:o===0?"":`${n.slice(0,o-1).join("")}\u2026`}var _e=(e,t,n)=>n??(e.palette&&e.palette.length>0?e.palette[t%e.palette.length]:fn(t)),ft=(e,t)=>e.hiddenSeries?.includes(t)??!1;function Vt(e,t,n=[],o={},i=10,s=8,a=!1){let d=[],f=o.maxItems,l=f!==void 0&&f>=0&&e.length>f?e.slice(0,f):e,u=e.length-l.length,p=o.interactive??!0,x=s,S=i,w=(m,k,M,c)=>{let g=(k?18:4)+m.length*ae;x>s&&(a||x+g>t-8)&&(x=s,S+=ct),k&&d.push({kind:"rect",part:"legend-swatch",x,y:S-5,width:10,height:10,fill:k,opacity:c?.3:void 0,item:M}),d.push({kind:"text",part:"legend-label",x:x+(k?14:0),y:S,text:m,baseline:"middle",fill:c?H.grid:H.label,item:M}),x+=g+12};for(let m of l){let k=n.includes(m.name),M=p?{label:m.name,series:m.name,legend:!0}:void 0;w(o.formatter?.(m.name)??m.name,m.color,M,k)}return u>0&&w(`+${u} more`,void 0,void 0,!1),o.align==="end"?Zn(d,t):d}function Zn(e,t){let n=new Map;for(let i of e){let s=i.kind==="rect"?i.y+5:i.y;n.set(s,[...n.get(s)??[],i])}let o=[];for(let i of n.values()){let s=Math.max(...i.map(d=>d.kind==="rect"?d.x+d.width:d.x+d.text.length*ae)),a=t-8-s;for(let d of i)o.push({...d,x:d.x+a})}return o}var bn=(e,t,n={})=>new Set(Vt(e,t,[],n).flatMap(o=>o.kind==="text"?[o.y]:[])).size;function Ne(e,t,n,o=[]){let i=lt(e),s=i&&e.direction==="rtl"&&i.align===void 0?{...i,align:"end"}:i,a=un(e),d=s?.position==="bottom",f=pn(e),l=e.hiddenSeries??[],u=s?f?Vt(o,1/0,l,s,10,(s.position==="right"?t:0)+8,!0):Vt(o,t,l,s,d?n+10:10):[],p=d?bn(o,t,s):0;return{width:t+f,height:d?n+Math.max(1,p)*ct:n,legendOffset:s?.position==="left"?f:void 0,tooltip:a.enabled,tooltipFormatter:a.formatter,axisTooltipFormatter:a.axisFormatter,tooltipPortal:a.portal,tooltipPlacement:a.placement,tooltipAnchored:a.followPointer===!1?!0:void 0,description:e.description,decorative:e.decorative,animate:e.animate===!0?300:e.animate||void 0,responsive:!!e.responsive,shapes:u}}function gn([e,t],n,o=!1,i){let s=typeof o=="boolean"?{scale:o?"log":"linear"}:o,a=ce(s.format??i),d=s.min??e,f=s.max??t;s.reversed&&(n=[n[1],n[0]]);let l={id:s.id,position:s.position,options:s};if(s.scale==="sqrt"){let m=$=>Math.sign($)*Math.sqrt(Math.abs($)),k=s.nice===!1?[d,f]:ge(d,f,s.ticks),M=s.min??k[0],c=s.max??k[k.length-1],g=ve([m(M),m(c)],n),I=$=>g(m($)),y=ge(M,c,s.ticks).filter($=>$>=M-1e-9&&$<=c+1e-9);return{...l,scale:I,domain:[M,c],format:a,ticks:(y.length>=2?y:[M,c]).map($=>({pos:h(I($)),label:a($)})),zero:h(I(Math.min(Math.max(0,M),c)))}}if(s.scale==="log"){let m=Math.max(d,Number.EPSILON),k=Math.max(f,m),M=cn(m,k),c=[Math.log10(m),Math.log10(k)],g=ve(c,n),I=y=>g(Math.log10(Math.max(y,Number.EPSILON)));return{...l,scale:I,domain:c,format:a,ticks:M.map(y=>({pos:h(I(y)),label:a(y)})),zero:h(n[0])}}let u=ge(d,f,s.ticks),p=[s.min??(s.nice===!1?d:u[0]),s.max??(s.nice===!1?f:u[u.length-1])],x=ve(p,n),S=u.filter(m=>m>=p[0]-1e-9&&m<=p[1]+1e-9),w=(S.length>=2?S:[p[0],p[1]]).map(m=>({pos:h(x(m)),label:a(m)}));return{...l,scale:x,domain:p,format:a,ticks:w,zero:h(x(Math.min(Math.max(0,p[0]),p[1])))}}var yn=([e,t],n)=>Math.max(ee.left,ge(e,t).reduce((o,i)=>Math.max(o,n(i).length),0)*ae+14),kn=e=>e?.grid!==!1;function ht(e,t){if(e.length<2)return e;let n=e.reduce((i,s)=>Math.max(i,s.label.length),0)*ae+8,o=Math.max(1,Math.ceil(e.length*n/Math.max(1,t)));return o===1?e:e.filter((i,s)=>s%o===0)}var zt=(e,t,n,o)=>`${e}, ${t}: ${o(n)}`;function ut(e,t,n,o){let i=e.error!==void 0?"error":e.loading?"loading":t?"empty":null;if(!i)return null;let{width:s,height:a}=Ce(e,n,o),d=i==="error"?e.error:i==="loading"?"Loading\u2026":e.emptyMessage??"No data available",f=[];return i==="loading"&&f.push({kind:"rect",part:"skeleton",x:0,y:0,width:s,height:a,fill:"var(--skdx-color-surface-sunken)",rx:8}),f.push({kind:"text",part:`state-${i}`,x:h(s/2),y:h(a/2),text:d,anchor:"middle",baseline:"middle",fill:i==="error"?"var(--skdx-color-text-danger)":H.label}),{...Ne(e,s,a),shapes:f,tooltip:!1}}var Pt=(e,t,n)=>{let o=t.length*ae/2;return e+o>n?"end":e-o<0?"start":"middle"};function Ft(e,t={}){let{plot:n,xTicks:o,yTicks:i,baseline:s}=e,a=n.x+n.width,d=n.y+n.height,f=[],l=t.grid??!0,u=(w,m)=>m?{kind:"line",part:"grid",x1:w.pos,x2:w.pos,y1:n.y,y2:d,stroke:H.grid}:{kind:"line",part:"grid",x1:n.x,x2:a,y1:w.pos,y2:w.pos,stroke:H.grid},p=t.x?.tickRotation??0,x=(w,m,k,M)=>p?W(w,m,k,{part:M,anchor:p<0?"end":"start",baseline:"middle",rotate:p}):mt(w,m,k,e.width,{part:M,anchor:Pt(w,k,e.width)}),S=(w,m,k,M,c)=>{for(let g of w)f.push(m==="x"?{kind:"line",part:"tick",x1:g.pos,x2:g.pos,y1:k,y2:h(k+M*c),stroke:H.axis}:{kind:"line",part:"tick",x1:k,x2:h(k+M*c),y1:g.pos,y2:g.pos,stroke:H.axis})};if(t.categoryGrid)for(let w of o)f.push(u(w,!t.horizontal));if(t.horizontal){let w=t.axes??[{ticks:i,position:"bottom",offset:0,label:t.yLabel,...t.y}];if(l)for(let m of i)f.push(u(m,!0));w[0]?.showLine!==!1&&f.push({kind:"line",part:"axis",x1:s,x2:s,y1:n.y,y2:d,stroke:H.axis});for(let m of w){let k=m.position==="top"||m.position==="right",M=h(k?n.y-m.offset:d+m.offset),c=k||m.offset>0;m.showLine&&c&&f.push({kind:"line",part:"axis",x1:n.x,x2:a,y1:M,y2:M,stroke:H.axis}),m.showTicks&&S(m.ticks,"x",M,k?-1:1,m.tickSize??4);let g=h(k?M-8:M+20);for(let I of m.ticks)f.push(k?W(I.pos,g,I.label,{part:"x-label-top",anchor:Pt(I.pos,I.label,e.width)}):x(I.pos,g,I.label,"x-label"));m.label&&f.push(c?W(4,g,m.label,{part:"axis-title",anchor:"start",baseline:k?void 0:"middle"}):W(4,n.y-6,m.label,{part:"axis-title",anchor:"start"}))}t.x?.showLine&&f.push({kind:"line",part:"axis",x1:t.rtl?a:n.x,x2:t.rtl?a:n.x,y1:n.y,y2:d,stroke:H.axis}),t.x?.showTicks&&S(o,"y",t.rtl?a:n.x,t.rtl?1:-1,t.x.tickSize??4);for(let m of o)f.push(t.rtl?W(a+8,m.pos,m.label,{part:"y-label",anchor:"start",baseline:"middle"}):W(n.x-8,m.pos,m.label,{part:"y-label",anchor:"end",baseline:"middle"}))}else{if(l)for(let m of i)f.push(u(m,!1));t.y?.showLine!==!1&&f.push({kind:"line",part:"axis",x1:n.x,x2:a,y1:s,y2:s,stroke:H.axis});let w=t.axes??[{ticks:i,position:"left",offset:0,label:t.yLabel,...t.y},...t.rightTicks?[{ticks:t.rightTicks,position:"right",offset:0,label:t.rightLabel}]:[]];for(let m of w){let k=m.position==="left",M=k?n.x-m.offset:a+m.offset,c=k?"y-label":"y-label-right";m.showLine&&f.push({kind:"line",part:"axis",x1:h(M),x2:h(M),y1:n.y,y2:d,stroke:H.axis}),m.showTicks&&S(m.ticks,"y",h(M),k?-1:1,m.tickSize??4);for(let g of m.ticks)f.push(W(h(k?M-8:M+8),g.pos,g.label,{part:c,anchor:k?"end":"start",baseline:"middle"}));m.label&&f.push(W(h(k?m.offset===0?4:Math.max(4,M-40):m.offset===0?e.width-4:Math.min(e.width-4,M+40)),n.y-6,m.label,{part:"axis-title",anchor:k?"start":"end"}))}t.x?.showTicks&&S(o,"x",d,1,t.x.tickSize??4);for(let m of o)f.push(x(m.pos,d+(p?12:20),m.label,"x-label"))}return t.xLabel&&f.push(W(h(n.x+n.width/2),e.height-4,t.xLabel,{part:"axis-title",anchor:"middle"})),t.horizontal&&t.rightLabel&&f.push(W(e.width-4,n.y-6,t.rightLabel,{part:"axis-title",anchor:"end"})),f}var W=(e,t,n,o={})=>({kind:"text",part:"label",x:e,y:t,text:n,fill:H.label,...o});function mt(e,t,n,o,i={}){let s=Math.max(4,Math.min(o-4,e)),a=i.anchor??"start",d=a==="middle"?2*Math.min(s-4,o-s-4):a==="end"?s-4:o-s-4,f=xn(n,d);return{kind:"text",part:"label",x:s,y:t,fill:H.label,...i,text:f,title:f===n?i.title:n}}function pt(e){return e.flatMap(t=>{if(t.kind!=="text"||t.fill!=="var(--skdx-color-text-on-accent)"&&t.part!=="reference-label")return[t];let n=t.text.length*ae+8,o=t.x-(t.anchor==="middle"?n/2:t.anchor==="end"?n-4:4),i=t.y-(t.baseline==="hanging"?2:t.baseline==="middle"?9:14);return[{kind:"rect",part:"label-background",x:o,y:i,width:n,height:18,rx:8,fill:"var(--skdx-color-surface-raised)"},{...t,fill:t.part==="reference-label"?t.fill:"var(--skdx-color-text-default)"}]})}var He=(e,t,n,o,i,s)=>({kind:"circle",part:"point",cx:e,cy:t,r:n,fill:o,title:i,item:s});function Et(e,t){let n=[],{plot:o}=t,i=o.x+o.width,s=o.y+o.height,a=f=>Math.max(o.x,Math.min(i,f)),d=f=>Math.max(o.y,Math.min(s,f));for(let f of e??[]){let l=f.color??Rt(f.variant),u=f.color??Lt(f.variant),p={part:"reference-label",fill:u},x=t.horizontal===!0;if("y"in f){let S=h(t.y(f.y,f.axis??"left"));if(x){let w=a(S);n.push(...wn(w,o.y,s,l,f.label,p))}else{let w=d(S);n.push(...Mn(o.x,i,w,l,f.label,p))}}else if("x"in f){let S=t.x(f.x);if(S===void 0)continue;x?n.push(...Mn(o.x,i,d(h(S)),l,f.label,p)):n.push(...wn(a(h(S)),o.y,s,l,f.label,p))}else if("y1"in f){let S=h(t.y(f.y1,f.axis??"left")),w=h(t.y(f.y2,f.axis??"left"));x?n.push(...$n(a(Math.min(S,w)),a(Math.max(S,w)),o,l,f.label,u)):n.push(...Sn(d(Math.min(S,w)),d(Math.max(S,w)),o,l,f.label,u))}else{let S=t.x(f.x1),w=t.x(f.x2);if(S===void 0||w===void 0)continue;let m=h(Math.min(S,w)),k=h(Math.max(S,w));x?n.push(...Sn(d(m),d(k),o,l,f.label,u)):n.push(...$n(a(m),a(k),o,l,f.label,u))}}return n}function Mn(e,t,n,o,i,s){let a={kind:"line",part:"reference",x1:e,x2:t,y1:n,y2:n,stroke:o,dash:"6 4",strokeWidth:1.5,title:i};return i?[a,W(t-4,n-5,i,{...s,anchor:"end"})]:[a]}function wn(e,t,n,o,i,s){let a={kind:"line",part:"reference",x1:e,x2:e,y1:t,y2:n,stroke:o,dash:"6 4",strokeWidth:1.5,title:i};return i?[a,W(e+4,t+10,i,{...s,anchor:"start"})]:[a]}function Sn(e,t,n,o,i,s){let a={kind:"rect",part:"reference-area",x:n.x,y:e,width:n.width,height:h(Math.max(0,t-e)),fill:o,opacity:.12,title:i};return i?[a,W(n.x+n.width-4,e+12,i,{part:"reference-label",fill:s,anchor:"end"})]:[a]}function $n(e,t,n,o,i,s){let a={kind:"rect",part:"reference-area",x:e,y:n.y,width:h(Math.max(0,t-e)),height:n.height,fill:o,opacity:.12,title:i};return i?[a,W(e+4,n.y+12,i,{part:"reference-label",fill:s,anchor:"start"})]:[a]}function vn(e,t){let n=[],{plot:o}=t,i=o.x+o.width,s=o.y+o.height;for(let a of e??[]){let d=a.color??Rt(a.variant),f=a.color??Lt(a.variant),l=(w,m,k)=>{let M=t.x(w);if(M===void 0)return;let c=t.y(m,k??"left");return t.horizontal?{x:h(c),y:h(M)}:{x:h(M),y:h(c)}},u=a.id??a.label,p=w=>({label:w,id:u,name:a.label});if(a.type==="line"||a.type==="band"){let{type:w,id:m,...k}=a;n.push(...Et([k],t));continue}if(a.type==="rect"){let w=l(a.x1,a.y1,a.axis),m=l(a.x2,a.y2,a.axis);if(!w||!m)continue;let k=Math.max(o.x,Math.min(w.x,m.x)),M=Math.max(o.y,Math.min(w.y,m.y)),c=a.label??"";n.push({kind:"rect",part:"annotation-rect",x:h(k),y:h(M),width:h(Math.max(0,Math.min(i,Math.max(w.x,m.x))-k)),height:h(Math.max(0,Math.min(s,Math.max(w.y,m.y))-M)),fill:d,opacity:.12,stroke:d,title:c||void 0,item:c?p(c):void 0}),a.label&&n.push(W(h(k+4),h(M+12),a.label,{part:"annotation-label",fill:f}));continue}let x=l(a.x,a.y,a.axis);if(!x)continue;if(a.type==="text"){n.push(W(x.x,x.y,a.text,{part:"annotation-text",fill:f,anchor:"middle",baseline:"middle",title:a.label}));continue}let S=a.label??`${String(a.x)}, ${a.y}`;if(n.push({kind:"circle",part:"annotation-point",cx:x.x,cy:x.y,r:5,fill:d,stroke:"var(--skdx-color-surface-default)",title:S,item:p(S)}),a.type==="callout"&&a.label){let[w,m]=a.offset??[16,-16],k=h(Math.max(o.x,Math.min(i,x.x+w))),M=h(Math.max(o.y,Math.min(s,x.y+m)));n.push({kind:"line",part:"annotation-leader",x1:x.x,y1:x.y,x2:k,y2:M,stroke:d},W(k,M,a.label,{part:"annotation-label",fill:f,anchor:w>=0?"start":"end",baseline:"middle"}))}}return n}var Dt=2e3;function qn(e){if(e!=="none")return e===void 0||e==="auto"?{strategy:"lttb",threshold:Dt}:typeof e=="string"?{strategy:e,threshold:Dt}:{strategy:e.strategy,threshold:e.threshold??Dt}}function Kn(e,t){let n=e.length;if(t>=n||t<3)return e.map((d,f)=>f);let o=[0],i=[],s=(n-2)/(t-2),a=0;for(let d=0;d<t-2;d++){let f=Math.floor((d+1)*s)+1,l=Math.min(n-1,Math.floor((d+2)*s)+1),u=0,p=0,x=0;for(let g=f;g<l;g++){let I=e[g];v(I)&&(u+=g,p+=I,x++)}u=x?u/x:(f+l)/2,p=x?p/x:0;let S=Math.floor(d*s)+1,w=Math.min(n-1,Math.floor((d+1)*s)+1),m=e[a],k=v(m)?m:0,M=-1,c=-1;for(let g=S;g<w;g++){let I=e[g];if(!v(I)){i.push(g);continue}let y=Math.abs((a-u)*(I-k)-(a-g)*(p-k));y>c&&(c=y,M=g)}M<0&&(M=S),o.push(M),a=M}return o.push(n-1),i.length?[...new Set([...o,...i])].sort((d,f)=>d-f):o}function Xn(e,t){let n=e.length,o=Math.max(1,Math.floor(t/2));if(o*2>=n)return e.map((a,d)=>d);let i=[],s=n/o;for(let a=0;a<o;a++){let d=Math.floor(a*s),f=a===o-1?n:Math.floor((a+1)*s),l=-1,u=-1;for(let p=d;p<f;p++){let x=e[p];if(!v(x)){i.push(p);continue}(l<0||x<e[l])&&(l=p),(u<0||x>e[u])&&(u=p)}l>=0&&i.push(Math.min(l,u)),u>=0&&u!==l&&i.push(Math.max(l,u))}return[...new Set(i)].sort((a,d)=>a-d)}function Yn(e,t){let n=e.length,o=Math.max(1,Math.floor(t/4));if(o*4>=n)return e.map((a,d)=>d);let i=[],s=n/o;for(let a=0;a<o;a++){let d=Math.floor(a*s),f=a===o-1?n:Math.floor((a+1)*s),l=-1,u=-1,p=-1,x=-1;for(let S=d;S<f;S++){let w=e[S];if(!v(w)){i.push(S);continue}p<0&&(p=S),x=S,(l<0||w<e[l])&&(l=S),(u<0||w>e[u])&&(u=S)}for(let S of[p,l,u,x])S>=0&&i.push(S)}return[...new Set(i)].sort((a,d)=>a-d)}function Cn(e,t,n){let o=qn(n);if(!o||t<=o.threshold||e.length===0)return;let i=o.strategy==="minmax"?Xn:o.strategy==="m4"?Yn:Kn,s=new Set;for(let a of e)for(let d of i(a.slice(0,t),o.threshold))s.add(d);return[...s].sort((a,d)=>a-d)}function In(e,t,n,o,i,s,a,d){if(o==="circle")return{...He(e,t,n,i,s,a),part:d};let f=o==="square"?`M${h(e-n)} ${h(t-n)}h${h(2*n)}v${h(2*n)}h${h(-2*n)}Z`:o==="diamond"?`M${h(e)} ${h(t-n*1.3)}L${h(e+n*1.3)} ${h(t)}L${h(e)} ${h(t+n*1.3)}L${h(e-n*1.3)} ${h(t)}Z`:`M${h(e)} ${h(t-n*1.2)}L${h(e+n*1.15)} ${h(t+n*.9)}L${h(e-n*1.15)} ${h(t+n*.9)}Z`;return{kind:"path",part:d,d:f,fill:i,title:s,item:a}}var Jn=e=>{let t=0;return e.map(n=>v(n)?t+=n:null)},Qn=e=>e.map((t,n)=>{let o=e[n-1];return n>0&&v(t)&&v(o)?t-o:null}),er=e=>e.map((t,n)=>{let o=e[n-1];return n>0&&v(t)&&v(o)&&o!==0?(t-o)/Math.abs(o):null});function tr(e,t){let n=Math.max(1,Math.floor(t));return e.map((o,i)=>{if(i<n-1)return null;let s=0;for(let a=i-n+1;a<=i;a++){let d=e[a];if(!v(d))return null;s+=d}return s/n})}function nr(e,t="max"){let n=0;for(let o of e)v(o)&&(n=t==="sum"?n+o:Math.max(n,o));return e.map(o=>v(o)?n===0?0:o/n:null)}function rr(e,t="desc"){let n=e.filter(v).sort((o,i)=>t==="asc"?o-i:i-o);return e.map(o=>v(o)?n.indexOf(o)+1:null)}var or=(e,t=-1/0,n=1/0)=>e.map(o=>v(o)&&o>=t&&o<=n?o:null),ar=(e,t="asc")=>[...e].sort((n,o)=>v(n)?v(o)?t==="asc"?n-o:o-n:-1:v(o)?1:0);function ir(e,t,n="sum"){let o=Math.max(1,Math.floor(t)),i=[];for(let s=0;s<e.length;s+=o){let a=e.slice(s,s+o).filter(v);if(a.length===0){i.push(null);continue}let d=a.reduce((f,l)=>f+l,0);i.push(n==="sum"?d:n==="mean"?d/a.length:n==="min"?Math.min(...a):Math.max(...a))}return i}function sr(e,t={}){let n=e.filter(v),o=it(n,t);return{edges:o,counts:st(n,o).map(i=>i.count)}}function Bt(e,t){let n=[...e];for(let o of t??[])switch(o.type){case"cumulative":n=Jn(n);break;case"difference":n=Qn(n);break;case"percentageChange":n=er(n);break;case"movingAverage":n=tr(n,o.window);break;case"normalize":n=nr(n,o.to);break;case"rank":n=rr(n,o.order);break;case"filter":n=or(n,o.min,o.max);break;case"sort":n=ar(n,o.order);break;case"aggregate":n=ir(n,o.every,o.method);break;case"bin":n=sr(n,o).counts;break}return n}var lr=100,cr=2e3,An=32,On=28,bt=e=>e.position==="right"||e.position==="top";function dr(e){let n=(e.yAxis===void 0?[]:Array.isArray(e.yAxis)?e.yAxis:[e.yAxis]).map((i,s)=>({...i,id:i.id??(s===0?"left":s===1?"right":String(s)),position:i.position??(s===1?"right":"left")}));n.length===0&&n.push({id:"left",position:"left"});let o=n.some(i=>i.id==="right"||bt(i));return e.rightAxis?n.push({...e.rightAxis,id:"right",position:"right"}):!o&&e.series.some(i=>i.axis==="right")&&n.push({id:"right",position:"right"}),n}function Rn(e,t){let n=e[0]?.id;return t===void 0||t==="left"?n:t==="right"?(e.find(o=>o.id==="right")??e.find(bt))?.id:e.find(o=>o.id===t)?.id}var xt=e=>e.kind==="bar"||e.kind==="range"&&e.style==="bar";function We(e,t){let n=ce(e.format),{series:o,categories:i,issues:s,axes:a}=hr(e,t,n),d=e.direction==="rtl",f=e.baseline??0,l=Math.max(i.length,...o.map(r=>Math.max(r.data.length,r.low.length))),u=o.every(r=>fe(r.data).length===0&&fe(r.high).length===0),p=ut(e,u);if(p)return{...p,issues:s};let x=e.xAxis?.type??"category",S=x!=="category"&&i.length>0&&i.every(r=>typeof r!="string"||x==="time"&&v(de(r))),w=S?i.map(de):[],[m,k]=he(w),M=e.xAxis?.format??(x==="time"?{style:k-m<2*864e5?"time":"date"}:void 0),c=Array.from({length:l},(r,b)=>{let C=i[b];return C===void 0?String(b+1):at(C,M)}),g=fr(e.zoom,l),I=Array.from({length:g.end-g.start},(r,b)=>g.start+b),y=e.orientation==="horizontal",z=o.map(r=>({...r,hidden:r.hidden||y&&!xt(r)})).filter(r=>!r.hidden),P=z.some(r=>!xt(r))?Cn(z.filter(r=>!xt(r)).map(r=>I.map(b=>(r.kind==="range"?r.high[b]:r.data[b])??null)),I.length,e.sampling):void 0,L=P?P.map(r=>I[r]):I,U=e.stacked==="percent"||e.stackOffset==="expand",Z=e.stackOffset??"zero",Q=new Map,J=new Map,ue=new Map;for(let r of z)r.stack!==void 0&&r.kind!=="range"&&ue.set(r.stack,[...ue.get(r.stack)??[],r]);for(let r of ue.values()){let b=new Array(l).fill(f),C=new Array(l).fill(f),D=new Array(l).fill(0);if(U)for(let F of r)F.data.forEach((R,B)=>{v(R)&&(D[B]=D[B]+Math.abs(R))});for(let F of r){let R=[],B=[];for(let V=0;V<l;V++){let E=F.data[V];if(!v(E)){R.push(null),B.push(null);continue}let O=D[V],A=U?O>0?E/O:0:E,j=A>=0?b:C;R.push(j[V]),j[V]=j[V]+A,B.push(j[V])}Q.set(F,R),J.set(F,B)}if(Z==="silhouette"||Z==="wiggle"){let F=new Array(l).fill(0);if(Z==="silhouette")for(let R=0;R<l;R++)F[R]=-(b[R]-f)/2;else{let R=0;for(let B=0;B<l;B++){let V=r.length,E=0;for(let A=0;A<V;A++){let j=r[A],N=j.data[B],G=j.data[B-1],X=B>0&&v(N)&&v(G)?N-G:0;E+=(V-A-.5)*X}let O=b[B]-f;R=B===0?-O/2:R-(O>0?E/Math.max(1,V):0),F[B]=R}}for(let R of r){let B=Q.get(R),V=J.get(R);for(let E=0;E<l;E++){let O=B[E],A=V[E];v(O)&&(B[E]=O+F[E]),v(A)&&(V[E]=A+F[E])}}}}let Ze=r=>r.kind==="range"?{from:r.low,to:r.high}:{from:Q.get(r)??new Array(l).fill(f),to:J.get(r)??r.data},ke=r=>{let b=[],C=!1;for(let R of z){if(R.axis!==r)continue;let{from:B,to:V}=Ze(R);for(let E of L){let O=V[E];if(v(O)&&b.push(O),R.kind==="range"||R.stack!==void 0){let A=B[E];v(A)&&b.push(A)}}if(R.errors)for(let E of L){let O=Tn(R.data[E],R.errors[E]);O&&b.push(O[0],O[1])}(R.kind==="bar"||R.kind==="area")&&Z==="zero"&&(C=!0)}let[D,F]=he(b);return C?[Math.min(f,D),Math.max(f,F)]:[D,F]},{width:me,height:Ie}=Ce(e),qe=e.brush?An+On:0,Ke=L.reduce((r,b)=>Math.max(r,c[b].length),0)*ae,Ae=U?{style:"percent"}:void 0,T=r=>{if(r.scale==="log")return ee.left;let[b,C]=ke(r.id),D=ce(r.format??Ae??e.format);return yn([r.min??b,r.max??C],D)+(r.showTicks?r.tickSize??4:0)},q=r=>y?bt(r)?"top":"bottom":bt(r)!==d?"right":"left",te=r=>y?24+(r.showTicks?r.tickSize??4:0):T(r),xe=new Set(z.map(r=>r.axis)),Y=a.filter(r=>xe.has(r.id)||a.length>1),K=new Map,ne={left:0,right:0,top:0,bottom:0};for(let r of Y){let b=q(r);K.set(r.id,ne[b]),ne[b]+=te(r)}let Oe=Y.find(r=>q(r)==="bottom"),re=o.map(r=>({name:r.name,color:r.color})),Xe={top:ee.top+dt(e,re,me)+(a.some(r=>r.label)?12:0)+ne.top,right:y?d?Math.max(ee.left,Ke+16):ee.right:Math.max(ee.right,ne.right),bottom:ee.bottom+qe+(e.xAxis?.label?14:0)+(e.xAxis?.tickRotation?24:0)+ne.bottom-(Oe?te(Oe):0),left:y?d?ee.right:Math.max(ee.left,Ke+16):Math.max(ee.left,ne.left)},_=hn(me,Ie,Xe),oe=y?d?[_.x+_.width,_.x]:[_.x,_.x+_.width]:[_.y+_.height,_.y],Me=y?[_.y,_.y+_.height]:d?[_.x+_.width,_.x]:[_.x,_.x+_.width],Te=new Map(a.map(r=>[r.id,{...gn(ke(r.id),oe,{format:Ae,...r},e.format),position:q(r),offset:K.get(r.id)??0}])),_t=a[0]?.id,Ye=Te.get(_t),yt=r=>Te.get(Rn(a,r)??_t)??Ye,se=(r,b)=>yt(b).scale(r),Nt=r=>h(r.scale(Math.min(Math.max(f,Math.min(...r.domain)),Math.max(...r.domain)))),Je=an(L.length,Me,e.barGap),kt=L.map(r=>w[r]),Mt=[...kt].sort((r,b)=>r-b),we=1/0;for(let r=1;r<Mt.length;r++)we=Math.min(we,Mt[r]-Mt[r-1]);let[Se,Re]=he(kt),le=we===1/0?Math.max(1,Math.abs(Re)*.05||1):we/2,Le=ve([Se-le,Re+le],Me),Qe=r=>h(S?Le(kt[r]):Je.center(r)),Ht=S?Math.abs(Le(Se+(we===1/0?le:we))-Le(Se))*.8:Je.bandwidth,Wt=r=>S?Qe(r)-Ht/2:Je.start(r),Dn=S?(x==="time"?ln(Se-le,Re+le):ge(Se-le,Re+le)).filter(r=>r>=Se-le&&r<=Re+le).map(r=>({pos:h(Le(r)),label:at(r,M)})):ht(L.map((r,b)=>({pos:Qe(b),label:c[r]})),y?1/0:_.width/Math.max(.2,Math.abs(Math.cos((e.xAxis?.tickRotation??0)*Math.PI/180)))),wt={...Ne(e,me,Ie,re),plot:_,xTicks:Dn,yTicks:y?ht(Ye.ticks,_.width):Ye.ticks,baseline:Nt(Ye)},Bn=a[0],Gt=Ft(wt,{horizontal:y,rtl:d,axes:Y.map(r=>{let b=Te.get(r.id);return{ticks:y?ht(b.ticks,_.width):b.ticks,position:b.position,offset:b.offset??0,label:r.label,showLine:r.showLine,showTicks:r.showTicks,tickSize:r.tickSize}}),xLabel:e.xAxis?.label,grid:kn(Bn),categoryGrid:e.xAxis?.grid===!0,x:e.xAxis}),jn=r=>{if(typeof r=="number"&&i.every(C=>typeof C=="string"))return r;let b=typeof r=="string"?r:de(r);for(let C=0;C<l;C++){let D=i[C];if(D!==void 0&&(typeof b=="string"?D===b||c[C]===b:de(D)===b))return C}},Ut={plot:_,horizontal:y,x:r=>{if(S&&(typeof r!="string"||v(de(r))))return Le(de(r));let b=jn(r),C=b===void 0?-1:L.indexOf(b);return C<0?void 0:Je.center(C)},y:(r,b)=>se(r,b)},Zt=Et(e.references,Ut);Gt.push(...Zt.filter(r=>r.part!=="reference-label"));let _n=pt(Zt.filter(r=>r.part==="reference-label")),St=[],$t=new Map;for(let r of z){if(!xt(r))continue;let b=r.stack??r,C=St.indexOf(b);C<0&&(C=St.push(b)-1),$t.set(r,C)}let et=Ht/Math.max(1,St.length),pe=Math.min(et,e.barWidth??1/0),qt=(et-pe)/2,vt=[],tt=[],Ct=[],It=[],At=[],Kt=[],nt=[],rt=r=>yt(r.axis).format,Ot=Math.max(0,e.minBarSize??0),Nn=(r,b,C)=>{let D=Math.abs(b-r);if(D>=Ot)return[Math.min(r,b),D];let R=r+(y?C?1:-1:C?-1:1)*Ot;return[Math.min(r,R),Ot]},Ve=(r,b,C,D)=>({label:D,series:r.name,seriesId:r.id??r.name,category:c[b],index:b,value:C}),Xt=(r,b,C,D)=>{let F=Tn(D,r.errors?.[b]);if(!F)return;let R=h(se(F[0],r.axis)),B=h(se(F[1],r.axis)),V=4,E="var(--skdx-color-text-default)",O=`${r.name}, ${c[b]}: ${rt(r)(F[0])} \u2013 ${rt(r)(F[1])}`;Kt.push(y?{kind:"line",part:"error-bar",x1:R,x2:B,y1:C,y2:C,stroke:E,title:O}:{kind:"line",part:"error-bar",x1:C,x2:C,y1:R,y2:B,stroke:E,title:O},y?{kind:"line",part:"error-cap",x1:R,x2:R,y1:h(C-V),y2:h(C+V),stroke:E}:{kind:"line",part:"error-cap",x1:h(C-V),x2:h(C+V),y1:R,y2:R,stroke:E},y?{kind:"line",part:"error-cap",x1:B,x2:B,y1:h(C-V),y2:h(C+V),stroke:E}:{kind:"line",part:"error-cap",x1:h(C-V),x2:h(C+V),y1:B,y2:B,stroke:E})};for(let r of z){let{from:b,to:C}=Ze(r),D=rt(r),F=L.length<=cr;if(r.kind==="bar"){let O="";L.forEach((A,j)=>{let N=r.data[A],G=b[A],X=C[A];if(!v(N)||!v(G)||!v(X))return;let $e=se(G,r.axis),be=se(X,r.axis),[ze,Pe]=Nn($e,be,X>=G),Fe=Wt(j)+$t.get(r)*et+qt,Jt=h(y?ze:Fe),Qt=h(y?Fe:ze),Tt=h(y?Pe:pe),en=h(y?pe:Pe);if(!F){O+=`M${Jt} ${Qt}h${Tt}v${en}h${-Tt}Z`;return}let tn=zt(r.name,c[A],U?X-G:N,D);if(tt.push({kind:"rect",part:"bar",x:Jt,y:Qt,width:Tt,height:en,fill:r.color,rx:e.radius,title:tn,item:Ve(r,A,N,tn)}),Xt(r,A,h(Fe+pe/2),N),e.labels){let nn=D(U?X-G:N);At.push(y?W(h(Math.max($e,be)+4),h(Fe+pe/2),nn,{baseline:"middle"}):W(h(Fe+pe/2),h(Math.min($e,be)-4),nn,{anchor:"middle"}))}}),O&&tt.push({kind:"path",part:"bars",d:O,fill:r.color,title:r.name});continue}if(r.kind==="range"&&r.style==="bar"){L.forEach((O,A)=>{let j=b[O],N=C[O];if(!v(j)||!v(N))return;let G=se(Math.min(j,N),r.axis),X=se(Math.max(j,N),r.axis),$e=Wt(A)+$t.get(r)*et+qt,be=`${r.name}, ${c[O]}: ${D(Math.min(j,N))} \u2013 ${D(Math.max(j,N))}`,ze=Ve(r,O,N,be),Pe=Math.max(1,Math.abs(X-G));tt.push(y?{kind:"rect",part:"range",x:h(Math.min(G,X)),y:h($e),width:h(Pe),height:h(pe),fill:r.color,rx:e.radius,title:F?be:void 0,item:ze}:{kind:"rect",part:"range",x:h($e),y:h(Math.min(G,X)),width:h(pe),height:h(Pe),fill:r.color,rx:e.radius,title:F?be:void 0,item:ze})});continue}let R=e.nulls==="connect"||e.nulls===void 0&&e.connectNulls,B=[],V=[];L.forEach((O,A)=>{let j=b[O],N=C[O];if(!v(N)||!v(j)){!R&&V.length&&(B.push(V),V=[]);return}V.push({x:Qe(A),y:h(se(N,r.axis)),y0:h(se(j,r.axis)),i:O})}),V.length&&B.push(V);let E=r.markers??L.length<=lr;for(let O of B){let A=ye(O,r.curve);if(r.kind==="range"&&r.style==="line"){Ct.push({kind:"path",part:"range-high",d:A,stroke:r.color,strokeWidth:2,strokeLinejoin:"round"},{kind:"path",part:"range-low",d:ye(O.map(j=>({x:j.x,y:j.y0})),r.curve),stroke:r.color,strokeWidth:2,strokeLinejoin:"round",dash:"4 3"});continue}if(r.kind==="range"){let j=ye([...O].reverse().map(N=>({x:N.x,y:N.y0})),r.curve);vt.push({kind:"path",part:"range",d:`${A}L${j.slice(1)}Z`,fill:r.color,fillOpacity:.2,title:r.name});continue}if(r.kind==="area"){let j=Nt(yt(r.axis)),N=r.stack!==void 0?ye([...O].reverse().map(X=>({x:X.x,y:X.y0})),r.curve).slice(1):`${O[O.length-1]?.x} ${j}L${O[0]?.x} ${j}`,G=`skdx-g-${r.index}`;r.gradient&&!nt.some(X=>X.id===G)&&nt.push({id:G,vertical:!0,stops:[{offset:0,color:r.color,opacity:r.fillOpacity},{offset:1,color:r.color,opacity:0}]}),vt.push({kind:"path",part:"area",d:`${A}L${N}Z`,fill:r.gradient?`url(#${G})`:r.color,fillOpacity:r.gradient?void 0:r.fillOpacity})}Ct.push({kind:"path",part:"line",d:A,stroke:r.color,strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round",dash:r.dash})}if(r.kind==="range"&&F)for(let O of B)for(let A of O){let j=r.low[A.i],N=r.high[A.i],G=`${r.name}, ${c[A.i]}: ${D(Math.min(j,N))} \u2013 ${D(Math.max(j,N))}`;It.push({...He(A.x,A.y,.01,r.color,G,Ve(r,A.i,N,G)),part:"anchor"})}if(r.kind!=="range")for(let O of B)for(let A of O){if(!E&&!F&&!e.labels&&!r.errors)continue;let j=r.data[A.i],N=U?C[A.i]-b[A.i]:j,G=zt(r.name,c[A.i],N,D);(E||F)&&It.push(E&&r.symbol!=="circle"?In(A.x,A.y,r.markerSize,r.symbol,r.color,F?G:void 0,Ve(r,A.i,j,G),"point"):{...He(A.x,A.y,E?r.markerSize:.01,r.color,F?G:void 0,Ve(r,A.i,j,G)),part:E?"point":"anchor"}),F&&Xt(r,A.i,y?A.y:A.x,C[A.i]),e.labels&&At.push(W(A.x,A.y-8,D(N),{anchor:"middle"}))}}let Yt={plot:_,xs:y?[]:L.map((r,b)=>Qe(b)),rows:L.map(r=>[c[r],...z.map(b=>{let C=rt(b);if(b.kind==="range"){let F=b.low[r],R=b.high[r];return`${b.name}: ${v(F)&&v(R)?`${C(F)} \u2013 ${C(R)}`:"\u2014"}`}let D=b.data[r];return`${b.name}: ${v(D)?C(U?(J.get(b)?.[r]??0)-(Q.get(b)?.[r]??0):D):"\u2014"}`})]),count:l,zoom:g,crosshair:mn(e)},ot=[];if(e.brush&&!y){let r={x:_.x,y:_.y+_.height+On,width:_.width,height:An},b=z.find(D=>D.kind!=="range"),C={x:h(r.x+g.start/Math.max(1,l)*r.width),y:r.y,width:h((g.end-g.start)/Math.max(1,l)*r.width),height:r.height};if(ot.push({kind:"rect",part:"brush",x:r.x,y:r.y,width:r.width,height:r.height,fill:"var(--skdx-color-surface-sunken)",stroke:H.grid}),b){let D=fe(b.data),[F,R]=he(D),B=l>1?r.width/(l-1):0,V=b.data.flatMap((O,A)=>v(O)?[{x:h(r.x+A*B),y:h(r.y+r.height-(R===F?.5:(O-F)/(R-F))*(r.height-4)-2)}]:[]),E=ye(V);V.length>1&&ot.push({kind:"path",part:"brush-series",d:`${E}L${V[V.length-1]?.x} ${r.y+r.height}L${V[0]?.x} ${r.y+r.height}Z`,fill:b.color,fillOpacity:.3})}ot.push({kind:"rect",part:"brush-window",...C,fill:"var(--skdx-color-primary-500)",opacity:.15,stroke:H.axis},{kind:"rect",part:"brush-handle",x:h(C.x-3),y:r.y+8,width:6,height:r.height-16,fill:H.axis,rx:8},{kind:"rect",part:"brush-handle",x:h(C.x+C.width-3),y:r.y+8,width:6,height:r.height-16,fill:H.axis,rx:8}),Yt.brush={box:r,window:C}}return{...wt,shapes:[...Gt,...vt,...tt,...Ct,...Kt,...It,...At,..._n,...vn(e.annotations,Ut),...ot,...wt.shapes],hit:Yt,issues:s,defs:nt.length?nt:void 0}}function Tn(e,t){if(!(!v(e)||t===null||t===void 0))return typeof t=="number"?v(t)?[e-Math.abs(t),e+Math.abs(t)]:void 0:v(t[0])&&v(t[1])?[Math.min(t[0],t[1]),Math.max(t[0],t[1])]:void 0}function fr(e,t){if(!e||t<2)return{start:0,end:t};let n=Math.max(0,Math.min(t-1,Math.floor(e.start))),o=Math.max(n+1,Math.min(t,Math.ceil(e.end)));return o-n<2&&t>=2?{start:Math.min(n,t-2),end:Math.min(n,t-2)+2}:{start:n,end:o}}function hr(e,t,n){let o=c=>c.type??t,i=[],s=dr(e),a=e.categories??[],d=(e.transforms??[]).filter(c=>c.type==="sort"||c.type==="bin"||c.type==="aggregate"),f=(e.transforms??[]).filter(c=>!d.includes(c)),l=e.stacked||e.stackOffset!==void 0&&e.stackOffset!=="zero",u=(c,g,I)=>{let y=I.filter($=>$!==null&&!(typeof $=="number"&&Number.isFinite($))).length;y&&i.push({code:"invalid-value",severity:"warning",message:`Series "${c}" has ${y} value${y===1?"":"s"} that ${y===1?"is":"are"} neither a number nor null; drawn as gaps.`,itemId:g??c}),a.length&&I.length!==a.length&&!e.transform&&i.push({code:"length-mismatch",severity:"warning",message:`Series "${c}" has ${I.length} values for ${a.length} categories.`,itemId:g??c})},p=e.series.map((c,g)=>{let I=o(c),y=l?!0:void 0,$=c.type==="range"?void 0:c.stack,z=$===!1?void 0:$===!0||$===void 0&&y?`${I}`:$;c.type==="range"?(u(c.name,c.id,c.low),u(c.name,c.id,c.high)):u(c.name,c.id,c.data);let P=U=>e.nulls==="zero"?U.map(Z=>v(Z)?Z:0):U,L=Rn(s,c.axis);return L===void 0&&i.push({code:"unknown-axis",severity:"warning",message:`Series "${c.name}" names axis "${String(c.axis)}", which is not defined; drawn on the first axis.`,itemId:c.id??c.name}),{name:c.name,id:c.id,color:_e(e,g,c.color),axis:L??s[0]?.id,hidden:ft(e,c.name),index:g,kind:I,data:c.type==="range"?[]:P(Bt(Bt(c.data,f),c.transforms)),low:c.type==="range"?c.low:[],high:c.type==="range"?c.high:[],curve:c.curve??e.curve??"linear",dash:c.type==="range"?void 0:c.dash,markers:c.type==="range"?void 0:c.markers,symbol:c.type==="range"?"circle":c.symbol??"circle",markerSize:c.type==="range"?3:c.markerSize??3,errors:c.type==="range"?void 0:c.errors,stack:I==="range"||I==="line"?void 0:z,style:c.type==="range"?c.style??"area":"area",fillOpacity:(c.type==="range"?void 0:c.fillOpacity)??e.fillOpacity??.25,gradient:c.type!=="range"&&c.gradient===!0}}),x=()=>Math.max(a.length,...p.map(c=>Math.max(c.data.length,c.low.length))),S=c=>{let g=y=>y.length?c.map($=>y[$]??null):y,I=Array.from({length:x()},(y,$)=>a[$]??String($+1));a=c.map(y=>I[y]),p=p.map(y=>({...y,data:g(y.data),low:g(y.low),high:g(y.high)}))},w=(c,g)=>{let I=(g!==void 0?p.find($=>$.name===g):void 0)??p.find($=>!$.hidden&&$.kind!=="range")??p[0];g!==void 0&&!p.some($=>$.name===g)&&i.push({code:"unknown-series",severity:"warning",message:`sort.by names "${g}", which is not a series; sorted by the first series.`});let y=Array.from({length:x()},($,z)=>z).sort(($,z)=>{let P=I?.data[$]??I?.high[$],L=I?.data[z]??I?.high[z],U=v(P)?P:-1/0,Z=v(L)?L:-1/0;return c==="asc"?U-Z:Z-U});S(y)},m=c=>{let g=p.flatMap(y=>fe(y.data)),I=it(g,c);a=I.slice(1).map((y,$)=>`${n(I[$])}\u2013${n(y)}`),p=p.map(y=>{let $=fe(y.data),z=0,P=st($,I).map(L=>e.binMode==="density"?$.length?L.count/($.length*(L.x1-L.x0)):0:e.binMode==="cumulative"?z+=L.count:L.count);return{...y,data:P}})},k=(c,g)=>{let I=Math.max(1,Math.floor(c)),y=x(),$=P=>{if(!P.length)return P;let L=[];for(let U=0;U<y;U+=I){let Z=fe(P.slice(U,U+I));L.push(Z.length===0?null:g==="sum"?Z.reduce((Q,J)=>Q+J,0):g==="mean"?Z.reduce((Q,J)=>Q+J,0)/Z.length:g==="min"?Math.min(...Z):Math.max(...Z))}return L};a=Array.from({length:y},(P,L)=>a[L]??String(L+1)).filter((P,L)=>L%I===0),p=p.map(P=>({...P,data:$(P.data),low:$(P.low),high:$(P.high)}))};e.transform==="histogram"?m({bins:e.bins,binWidth:e.binWidth,domain:e.binDomain}):e.transform==="cumulative"&&(p=p.map(c=>{let g=0;return{...c,data:c.data.map(I=>v(I)?g+=I:g)}}));for(let c of d)c.type==="sort"?w(c.order??"desc"):c.type==="bin"?m(c):c.type==="aggregate"&&k(c.every,c.method??"sum");typeof e.sort=="string"?w(e.sort):e.sort&&w(e.sort.order,e.sort.by);let M=e.xAxis?.domain;if(M){let c=x(),g=Array.from({length:c},(z,P)=>a[P]??String(P+1)),I=z=>{let P=typeof z=="string"?z:de(z);return g.findIndex(L=>typeof P=="string"?L===P||at(L)===P:de(L)===P)},y=M.map(I),$=z=>z.length?y.map(P=>P<0?null:z[P]??null):z;a=[...M],p=p.map(z=>({...z,data:$(z.data),low:$(z.low),high:$(z.high)}))}return{series:p,categories:a,issues:i,axes:s}}var Ln=e=>We(e,"bar");var ie=e=>e.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/"/g,"&quot;"),Ge=e=>e.filter(([,t])=>t!==void 0&&t!=="").map(([t,n])=>` ${t}="${ie(String(n))}"`).join("");function ur(e){let t=e.title?`<title>${ie(e.title)}</title>`:"",n=["data-skdx-part",e.part];switch(e.kind){case"path":return`<path${Ge([n,["d",e.d],["fill",e.fill??"none"],["stroke",e.stroke],["stroke-width",e.strokeWidth],["stroke-linecap",e.strokeLinecap],["stroke-linejoin",e.strokeLinejoin],["stroke-dasharray",e.dash],["opacity",e.opacity],["fill-opacity",e.fillOpacity]])}>${t}</path>`;case"rect":return`<rect${Ge([n,["x",e.x],["y",e.y],["width",e.width],["height",e.height],["rx",e.rx],["fill",e.fill],["stroke",e.stroke],["fill-opacity",e.opacity]])}>${t}</rect>`;case"line":return`<line${Ge([n,["x1",e.x1],["y1",e.y1],["x2",e.x2],["y2",e.y2],["stroke",e.stroke],["stroke-width",e.strokeWidth],["stroke-dasharray",e.dash],["opacity",e.opacity]])}>${t}</line>`;case"circle":return`<circle${Ge([n,["cx",e.cx],["cy",e.cy],["r",e.r],["fill",e.fill],["stroke",e.stroke]])}>${t}</circle>`;case"text":return`<text${Ge([n,["aria-label",e.title],["x",e.x],["y",e.y],["text-anchor",e.anchor],["dominant-baseline",e.baseline],["fill",e.fill],["font-weight",e.weight],["transform",e.rotate?`rotate(${e.rotate} ${e.x} ${e.y})`:void 0]])}>${ie(e.text)}</text>`}}function mr(e){let t=e.defs??[];return t.length===0?"":`<defs>${t.map(n=>`<linearGradient id="${ie(n.id)}" x1="0" y1="0" x2="${n.vertical===!1?1:0}" y2="${n.vertical===!1?0:1}">${n.stops.map(o=>`<stop offset="${o.offset}" stop-color="${ie(o.color)}"${o.opacity===void 0?"":` stop-opacity="${o.opacity}"`}/>`).join("")}</linearGradient>`).join("")}</defs>`}function Vn(e,t,n){let o=mr(e)+e.shapes.map(ur).join("");n&&(o=o.replace(/var\((--[\w-]+)\)/g,(a,d)=>n(d).trim()||a));let i=e.decorative?'aria-hidden="true"':`role="img" aria-label="${ie(t)}"`,s=e.description?`<desc>${ie(e.description)}</desc>`:"";return`<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 ${e.width} ${e.height}" width="${e.width}" height="${e.height}" ${i} font-family="${ie(H.fontFamily)}" font-size="${ie(H.fontSize)}"><title>${ie(t)}</title>${s}${o}</svg>`}var zn=e=>We(e,"line"),Pn=e=>We(e,"area");function jt(e){return e==null?[]:(Array.isArray(e)?e:[e]).map(n=>typeof n=="object"?n:{id:n})}var pr=e=>e.id??e.name??e.series,xr=e=>e.seriesId??e.series;function br(e,t){let n=!1;return t.id!==void 0&&(n=!0,pr(e)!==t.id&&e.id!==t.id&&e.name!==t.id)||t.series!==void 0&&(n=!0,xr(e)!==t.series&&e.series!==t.series)||t.index!==void 0&&(n=!0,e.index!==t.index)||t.category!==void 0&&(n=!0,e.category!==t.category)?!1:n}var Fn=(e,t,n=jt(t))=>n.some(o=>br(e,o));var Ue=2*Math.PI;function gt(e,t,n,o,i,s){let a=(l,u)=>`${h(e+l*Math.sin(u))} ${h(t-l*Math.cos(u))}`;if(s-i>=Ue-1e-9){let l=i+Ue/2;return`${gt(e,t,n,o,i,l)}${gt(e,t,n,o,l,s)}`}let d=s-i>Math.PI?1:0,f=`M${a(n,i)}A${n} ${n} 0 ${d} 1 ${a(n,s)}`;return o>0?`${f}L${a(o,s)}A${o} ${o} 0 ${d} 0 ${a(o,i)}Z`:`${f}L${h(e)} ${h(t)}Z`}function gr(e,t,n,o,i,s,a){let d=s-i;if(a<=0||d>=Ue-1e-9)return gt(e,t,n,o,i,s);let f=Math.sin(Math.min(Math.PI/2,d/2)),l=Math.min(a,o>0?(n-o)/2:n/2,n*f/(1+f));if(o>0&&f<1&&(l=Math.min(l,o*f/(1-f))),l<=.25)return gt(e,t,n,o,i,s);let u=(k,M)=>`${h(e+k*Math.sin(M))} ${h(t-k*Math.cos(M))}`,p=k=>`A${h(l)} ${h(l)} 0 0 1 ${k}`,x=Math.asin(l/(n-l)),S=Math.sqrt((n-l)**2-l*l),w=s-i-2*x>Math.PI?1:0,m=`M${u(S,i)}${p(u(n,i+x))}A${n} ${n} 0 ${w} 1 ${u(n,s-x)}${p(u(S,s))}`;if(o>0){let k=Math.asin(l/(o+l)),M=Math.sqrt((o+l)**2-l*l),c=s-i-2*k>Math.PI?1:0;m+=`L${u(M,s)}${p(u(o,s-k))}A${o} ${o} 0 ${c} 0 ${u(o,i+k)}${p(u(M,i))}Z`}else m+=`L${h(e)} ${h(t)}Z`;return m}function En(e){let t=[];for(let T of e.data)v(T.value)&&T.value<0&&t.push({code:"negative-value",severity:"warning",message:`"${T.name}" is negative (${T.value}); a share of a whole cannot be, so it is drawn as zero.`,itemId:T.id??T.name});let n=ut(e,!e.data.some(T=>v(T.value)&&T.value>0),300,300);if(n)return{...n,issues:t};let o=ce(e.format),i=e.percentFormat?ce(e.percentFormat):T=>`${Math.round(T*100)}%`,s=Math.max(0,e.cornerRadius??0),{width:a,height:d}=Ce(e,300,300),f=e.data.map((T,q)=>({name:T.name,color:_e(e,q,T.color)})),l=dt(e,f,a),u=(e.startAngle??0)*Math.PI/180,p=(e.endAngle??(e.startAngle??0)+360)*Math.PI/180,x=Math.max(0,Math.min(Ue,p-u)),S=x<=Math.PI+1e-9&&Math.abs(Math.sin(u))>.99,w=e.labels&&e.labelPosition==="outside",m=a/2,k=Math.max(.2,Math.min(1,e.outerRadius??1)),M=w?40:8,c=(S?Math.max(0,Math.min(a/2,d-l)-M):Math.max(0,Math.min(a,d-l)/2-M))*k,g=S?u<0||u>Math.PI?d-M:l+M:l+(d-l)/2,I=c*Math.min(.95,Math.max(0,e.innerRadius??(e.variant==="donut"?.6:0))),y=e.data.map((T,q)=>({...T,i:q,value:v(T.value)&&!ft(e,T.name)?Math.max(0,T.value):0})),$=e.sort?[...y].sort((T,q)=>e.sort==="asc"?T.value-q.value:q.value-T.value):y,z=$.reduce((T,q)=>T+q.value,0),P=$.filter(T=>T.value>0).length,L=Math.max(0,Math.min((e.padAngle??0)*Math.PI/180,x/Math.max(1,P)/2)),U=x>=Ue-1e-9,Z=P>1?U?P:P-1:0,Q=x-Z*L,J=Math.min((e.minAngle??0)*Math.PI/180,Q/Math.max(1,P)),ue=$.map(T=>z>0?T.value/z*Q:0);if(J>0)for(let T=0;T<$.length;T++){let q=$.map((Y,K)=>Y.value>0&&ue[K]<J);if(!q.some(Boolean))break;let te=q.filter(Boolean).length*J,xe=$.reduce((Y,K,ne)=>Y+(q[ne]||K.value<=0?0:K.value),0);if($.forEach((Y,K)=>{ue[K]=q[K]?J:xe>0?Y.value/xe*(Q-te):0}),!$.some((Y,K)=>Y.value>0&&!q[K]&&ue[K]<J))break}let Ze=jt(e.selected),ke=u+(U&&Z?L/2:0),me=[],Ie=[],qe=[],Ke=$.map((T,q)=>{let te=z>0?T.value/z:0,xe=ke,Y=ke+ue[q];te>0&&(ke=Y+L);let K=i(te),ne=`${T.name}: ${o(T.value)} (${K})`,Oe={label:ne,id:T.id??T.name,name:T.name,index:T.i,value:T.value},re=(xe+Y)/2;if(e.labels&&te>0){let _=`${T.name} ${K}`;if(w){let oe=Math.sin(re),Me=h(g-(c+14)*Math.cos(re));qe.some(Te=>Math.abs(Te-Me)<12)||(qe.push(Me),Ie.push({kind:"line",part:"label-connector",x1:h(m+c*oe),y1:h(g-c*Math.cos(re)),x2:h(m+(c+12)*oe),y2:h(g-(c+12)*Math.cos(re)),stroke:H.axis}),me.push(mt(h(m+(c+16)*oe),Me,_,a,{part:"slice-label",anchor:oe>.1?"start":oe<-.1?"end":"middle",baseline:"middle",fill:"var(--skdx-color-text-default)"})))}else if(te>.03){let oe=(c+I)/2;me.push(mt(h(m+oe*Math.sin(re)),h(g-oe*Math.cos(re)),_,a,{part:"slice-label",anchor:"middle",baseline:"middle",fill:"var(--skdx-color-text-on-accent)"}))}}let Xe=Fn(Oe,void 0,Ze)?Math.max(4,c*.06):0;return{kind:"path",part:"slice",d:te>0?gr(m+Xe*Math.sin(re),g-Xe*Math.cos(re),c,I,xe,Y,s):"",fill:_e(e,T.i,T.color),title:ne,item:te>0?Oe:void 0}});e.centerLabel&&me.push(W(h(m),h(S?g-12:g),e.centerLabel,{part:"center-label",anchor:"middle",baseline:"middle",fill:"var(--skdx-color-text-default)",weight:"bold"}));let Ae=Ne(e,a,d,f);return{...Ae,shapes:pt([...Ke,...Ie,...Ae.shapes,...me]),issues:t}}function ko(e){let t=e.type==="pie"?En(e.input):e.type==="bar"?Ln(e.input):e.type==="line"?zn(e.input):Pn(e.input);return Vn(t,e.label,e.resolve)}export{ko as renderChartSvg};
package/dist/radar.cjs CHANGED
@@ -1,6 +1,6 @@
1
- "use strict";var ce=Object.defineProperty;var vt=Object.getOwnPropertyDescriptor;var Wt=Object.getOwnPropertyNames;var Ut=Object.prototype.hasOwnProperty;var Kt=(e,n)=>{for(var t in n)ce(e,t,{get:n[t],enumerable:!0})},Yt=(e,n,t,r)=>{if(n&&typeof n=="object"||typeof n=="function")for(let i of Wt(n))!Ut.call(e,i)&&i!==t&&ce(e,i,{get:()=>n[i],enumerable:!(r=vt(n,i))||r.enumerable});return e};var qt=e=>Yt(ce({},"__esModule",{value:!0}),e),c=(e,n,t,r)=>{for(var i=r>1?void 0:r?vt(n,t):n,o=e.length-1,s;o>=0;o--)(s=e[o])&&(i=(r?s(n,t,i):s(i))||i);return r&&i&&ce(n,t,i),i};var bn={};Kt(bn,{SkdxRadarChart:()=>O});module.exports=qt(bn);var L=require("lit/decorators.js");var wt=e=>Number(e.toPrecision(12)),Xt,Qt=e=>(Xt??(Xt=new Intl.NumberFormat)).format(wt(e)),Jt=e=>{let n=Math.round(Math.abs(e)),t=e<0?"-":"",r=Math.floor(n/3600),i=Math.floor(n%3600/60),o=s=>String(s).padStart(2,"0");return r>0?`${t}${r}h ${o(i)}m`:i>0?`${t}${i}m ${o(n%60)}s`:`${t}${n}s`};function de(e){if(e===void 0)return Qt;if(typeof e=="function")return e;let{style:n,locale:t,digits:r,unit:i="",timeZone:o}=e,s=u=>i?p=>u(p)+i:u,a=u=>r===void 0?u===void 0?{}:{maximumFractionDigits:u}:{minimumFractionDigits:r,maximumFractionDigits:r},l=u=>{let p=new Intl.NumberFormat(t,u);return s(b=>p.format(wt(b)))},d=u=>{let p=new Intl.DateTimeFormat(t,o?{...u,timeZone:o}:u);return b=>p.format(b)};switch(n){case"integer":return l({maximumFractionDigits:0});case"decimal":return l(a(2));case"percent":return l({style:"percent",...a(0)});case"currency":return l({style:"currency",currency:e.currency??"USD",...a()});case"compact":return l({notation:"compact",...a(1)});case"scientific":return l({notation:"scientific",...a(2)});case"date":return d({dateStyle:"medium"});case"time":return d({timeStyle:"short"});case"datetime":return d({dateStyle:"medium",timeStyle:"short"});case"duration":return s(Jt)}}function he(e,n,t=5){if(e===n)return[e];let r=(n-e)/Math.max(1,t),i=10**Math.floor(Math.log10(r)),o=r/i,s=(o<1.5?1:o<3.5?2:o<7.5?5:10)*i,a=Math.floor(e/s)*s,l=Math.ceil(n/s)*s,d=[];for(let u=a;u<=l+s/2;u+=s)d.push(en(u));return d}var en=e=>Number(e.toPrecision(12)),x=e=>Number(e.toFixed(2)),q=e=>typeof e=="number"&&Number.isFinite(e),kt=e=>e.filter(q);function X(e){let n=1/0,t=-1/0;for(let r of e)q(r)&&(r<n&&(n=r),r>t&&(t=r));return n===1/0?[0,0]:[n,t]}var U=1e3,K=60*U,Y=60*K,ue=24*Y,yn=[U,5*U,15*U,30*U,K,5*K,15*K,30*K,Y,3*Y,6*Y,12*Y,ue,2*ue,7*ue,14*ue];var tn=/-?\d*\.?\d+(?:e[-+]?\d+)?/gi,nn=/([MLTHVCSQAZmlthvcsqaz])([^MLTHVCSQAZmlthvcsqaz]*)/g,rn={M:2,L:2,T:2,C:6,S:4,Q:4,A:7,H:-1,V:-2};function on(e,n,t){return e.replace(nn,(r,i,o)=>{let s=rn[i];if(s===void 0)return i+o;let l=(o.match(tn)??[]).map((d,u)=>{let p=Number(d);if(s===-1)return String(p+n);if(s===-2)return String(p+t);let b=u%s;return s===7?b===5?String(p+n):b===6?String(p+t):d:String(b%2===0?p+n:p+t)});return i+l.join(" ")})}var Mt=(e,n,t)=>e.map(r=>{switch(r.kind){case"rect":return{...r,x:r.x+n,y:r.y+t};case"circle":return{...r,cx:r.cx+n,cy:r.cy+t};case"line":return{...r,x1:r.x1+n,x2:r.x2+n,y1:r.y1+t,y2:r.y2+t};case"text":return{...r,x:r.x+n,y:r.y+t};case"path":return{...r,d:on(r.d,n,t)}}});var Ie=["primary","success","warning","danger","neutral"].flatMap(e=>[500,700].map(n=>`var(--skdx-color-${e}-${n})`)).sort((e,n)=>Number(e.endsWith("700)"))-Number(n.endsWith("700)"))),w={axis:"var(--skdx-color-border-strong)",grid:"var(--skdx-color-border-subtle)",label:"var(--skdx-color-text-muted)",focus:"var(--skdx-color-focus-ring)",positive:"var(--skdx-color-success-500)",negative:"var(--skdx-color-danger-500)",fontFamily:"var(--skdx-font-family)",fontSize:"var(--skdx-font-size-xs)"};var St=(e,n)=>n??Ie[e%Ie.length];function Q(e){let n=e.legend;if(n)return n===!0?{}:n.enabled===!1?void 0:n}function Ct(e){let n=e.tooltip;return n===void 0||n===!0?{enabled:!0}:n===!1?{enabled:!1}:{...n,enabled:n.enabled??!0}}var pe=20,sn=120,$t=e=>{let n=Q(e);return n&&(n.position==="left"||n.position==="right")?n.width??sn:0},fe=(e,n=600,t=300)=>({width:(e.width??n)-$t(e),height:(e.height??t)-(Q(e)?.position==="bottom"?pe:0)}),It=(e,n,t)=>{let r=Q(e);return!r||!(r.position===void 0||r.position==="top")?0:(n?Math.max(1,Tt(n,t??fe(e).width,r)):1)*pe},H=6.5;function an(e,n){let t=Array.from(e),r=Math.max(0,Math.floor(n/H));return t.length<=r?e:r===0?"":`${t.slice(0,r-1).join("")}\u2026`}var ze=(e,n,t)=>t??(e.palette&&e.palette.length>0?e.palette[n%e.palette.length]:St(n)),Oe=(e,n)=>e.hiddenSeries?.includes(n)??!1;function Te(e,n,t=[],r={},i=10,o=8,s=!1){let a=[],l=r.maxItems,d=l!==void 0&&l>=0&&e.length>l?e.slice(0,l):e,u=e.length-d.length,p=r.interactive??!0,b=o,T=i,$=(M,y,C,z)=>{let P=(y?18:4)+M.length*H;b>o&&(s||b+P>n-8)&&(b=o,T+=pe),y&&a.push({kind:"rect",part:"legend-swatch",x:b,y:T-5,width:10,height:10,fill:y,opacity:z?.3:void 0,item:C}),a.push({kind:"text",part:"legend-label",x:b+(y?14:0),y:T,text:M,baseline:"middle",fill:z?w.grid:w.label,item:C}),b+=P+12};for(let M of d){let y=t.includes(M.name),C=p?{label:M.name,series:M.name,legend:!0}:void 0;$(r.formatter?.(M.name)??M.name,M.color,C,y)}return u>0&&$(`+${u} more`,void 0,void 0,!1),r.align==="end"?ln(a,n):a}function ln(e,n){let t=new Map;for(let i of e){let o=i.kind==="rect"?i.y+5:i.y;t.set(o,[...t.get(o)??[],i])}let r=[];for(let i of t.values()){let o=Math.max(...i.map(a=>a.kind==="rect"?a.x+a.width:a.x+a.text.length*H)),s=n-8-o;for(let a of i)r.push({...a,x:a.x+s})}return r}var Tt=(e,n,t={})=>new Set(Te(e,n,[],t).flatMap(r=>r.kind==="text"?[r.y]:[])).size;function Ae(e,n,t,r=[]){let i=Q(e),o=i&&e.direction==="rtl"&&i.align===void 0?{...i,align:"end"}:i,s=Ct(e),a=o?.position==="bottom",l=$t(e),d=e.hiddenSeries??[],u=o?l?Te(r,1/0,d,o,10,(o.position==="right"?n:0)+8,!0):Te(r,n,d,o,a?t+10:10):[],p=a?Tt(r,n,o):0;return{width:n+l,height:a?t+Math.max(1,p)*pe:t,legendOffset:o?.position==="left"?l:void 0,tooltip:s.enabled,tooltipFormatter:s.formatter,axisTooltipFormatter:s.axisFormatter,tooltipPortal:s.portal,tooltipPlacement:s.placement,tooltipAnchored:s.followPointer===!1?!0:void 0,description:e.description,decorative:e.decorative,animate:e.animate===!0?300:e.animate||void 0,responsive:!!e.responsive,shapes:u}}function Le(e){let n=e.legendOffset;if(!n)return e;let t=[...Mt(e.shapes.filter(l=>!l.part.startsWith("legend-")),n,0),...e.shapes.filter(l=>l.part.startsWith("legend-"))],r=l=>({...l,x:l.x+n}),i=e.hit?{...e.hit,plot:r(e.hit.plot),xs:e.hit.xs.map(l=>l+n),brush:e.hit.brush?{box:r(e.hit.brush.box),window:r(e.hit.brush.window)}:void 0}:void 0,o=e.edit,s=o?{...o,scale:l=>o.scale(l)+n,invert:l=>o.invert(l-n),bars:o.bars.map(l=>({...l,x0:l.x0+n,x1:l.x1+n}))}:void 0,a=e.map?{...e.map,plot:r(e.map.plot)}:void 0;return{...e,shapes:t,hit:i,edit:s,map:a,legendOffset:void 0}}function me(e,n,t,r,i,o="auto"){let s=Array.isArray(t)?t:[t],a=Math.max(1,Math.floor((r-12)/H)),l=s.flatMap(y=>{let C=[],z=Array.from(y);for(;z.length>a;){let P=z.slice(0,a+1).lastIndexOf(" ");P<1&&(P=a),C.push(z.slice(0,P).join("")),z=z.slice(P),z[0]===" "&&z.shift()}return C.push(z.join("")),C}),d=Math.max(1,Math.floor((i-6)/16)),u=l.slice(0,d);l.length>d&&(u[d-1]=an(`${u[d-1]}\u2026`,r-12));let p=Math.min(r,Math.max(0,...u.map(y=>Array.from(y).length))*H+12),b=Math.min(i,6+u.length*16),T=o==="top"?{x:e-p/2,y:n-b-8}:o==="bottom"?{x:e-p/2,y:n+8}:o==="left"?{x:e-p-8,y:n-b/2}:o==="right"?{x:e+8,y:n-b/2}:{x:e+12,y:n-b-6},$=Math.max(0,Math.min(r-p,T.x)),M=Math.max(0,Math.min(i-b,T.y));return[{kind:"rect",part:"tooltip",title:s.join(`
2
- `),x:x($),y:x(M),width:x(p),height:b,fill:"var(--skdx-color-surface-raised)",stroke:w.axis,rx:8},...u.map((y,C)=>({kind:"text",part:"tooltip-label",x:x($+6),y:x(M+11+C*16),text:y,baseline:"middle",fill:"var(--skdx-color-text-default)",weight:u.length>1&&C===0?"bold":void 0}))]}var zt=(e,n,t,r)=>`${e}, ${n}: ${r(t)}`;function Ot(e,n,t,r){let i=e.error!==void 0?"error":e.loading?"loading":n?"empty":null;if(!i)return null;let{width:o,height:s}=fe(e,t,r),a=i==="error"?e.error:i==="loading"?"Loading\u2026":e.emptyMessage??"No data available",l=[];return i==="loading"&&l.push({kind:"rect",part:"skeleton",x:0,y:0,width:o,height:s,fill:"var(--skdx-color-surface-sunken)",rx:8}),l.push({kind:"text",part:`state-${i}`,x:x(o/2),y:x(s/2),text:a,anchor:"middle",baseline:"middle",fill:i==="error"?"var(--skdx-color-text-danger)":w.label}),{...Ae(e,o,s),shapes:l,tooltip:!1}}var be=(e,n,t,r={})=>({kind:"text",part:"label",x:e,y:n,text:t,fill:w.label,...r});var At=(e,n,t,r,i,o)=>({kind:"circle",part:"point",cx:e,cy:n,r:t,fill:r,title:i,item:o});function ge(e){return e==null?[]:(Array.isArray(e)?e:[e]).map(t=>typeof t=="object"?t:{id:t})}var Pe=e=>e.id??e.name??e.series,Lt=e=>e.seriesId??e.series;function D(e,n){let t=!1;return n.id!==void 0&&(t=!0,Pe(e)!==n.id&&e.id!==n.id&&e.name!==n.id)||n.series!==void 0&&(t=!0,Lt(e)!==n.series&&e.series!==n.series)||n.index!==void 0&&(t=!0,e.index!==n.index)||n.category!==void 0&&(t=!0,e.category!==n.category)?!1:t}function j(e){let n={},t=Pe(e);t!==void 0&&(n.id=t);let r=Lt(e);return r!==void 0&&e.series!==void 0&&(n.series=r),e.index!==void 0&&(n.index=e.index),n}var Be=(e,n)=>e.id===n.id&&e.series===n.series&&e.index===n.index&&e.category===n.category;function Re(e,n,t){let r=ge(e),i=j(n),o=r.some(s=>D(n,s));return t==="single"?o?[]:[i]:o?r.filter(s=>!D(n,s)):[...r,i]}var cn=.2;function dn(e){let n=w.focus;switch(e.kind){case"rect":return{kind:"rect",part:"selected",x:e.x-1.5,y:e.y-1.5,width:e.width+3,height:e.height+3,fill:"none",stroke:n,rx:e.rx};case"circle":return{kind:"circle",part:"selected",cx:e.cx,cy:e.cy,r:e.r+2.5,fill:"none",stroke:n};case"path":return{kind:"path",part:"selected",d:e.d,fill:"none",stroke:n,strokeWidth:2.5};case"line":return{...e,part:"selected",stroke:n,strokeWidth:(e.strokeWidth??1)+3,title:void 0,item:void 0};case"text":return}}var un=(e,n)=>e.kind==="text"?{...e,fill:w.grid}:{...e,opacity:(e.opacity??1)*n};function Ne(e,n){let t=ge(n.selected),r=n.highlighted===void 0||n.highlighted===null?[]:ge(n.highlighted),i=r[0];if(t.length===0&&!i)return e;let o={highlighted:n.highlightScope?.highlighted??"item",faded:n.highlightScope?.faded??"global"},s=[],a=u=>!i||r.some(p=>D(u,p))?!0:o.highlighted==="series"?r.some(p=>p.series!==void 0&&D(u,{series:p.series})):!1,l=u=>{if(!i||o.faded==="none"||a(u))return!1;if(o.faded==="series"){let p=i.series;return p!==void 0&&D(u,{series:p})}return!0},d=e.shapes.map(u=>{let p=u.item;if(!p||p.legend)return u;if(t.some(b=>D(p,b))){let b=dn(u);b&&s.push(b)}return l(p)?un(u,cn):u});return s.length?{...e,shapes:[...d,...s]}:{...e,shapes:d}}function De(e){let n=e.metrics??(e.categories??[]).map(f=>({label:f})),t=Ot(e,n.length===0||e.series.every(f=>kt(f.data).length===0),300,300);if(t)return t;let r=[],i=de(e.format),{width:o,height:s}=fe(e,300,300),a=e.series.map((f,S)=>({name:f.name,color:ze(e,S,f.color)})),l=It(e,a,o),d=o/2,u=l+(s-l)/2,p=Math.max(0,Math.min(o,s-l)/2-36),b=n.length,T=(e.startAngle??0)*Math.PI/180-Math.PI/2,$=f=>T+f*2*Math.PI/Math.max(1,b),M=e.series.filter(f=>!Oe(e,f.name)),y=e.normalize===!0?"series":e.normalize===!1||e.normalize===void 0?e.metrics?"metric":"none":e.normalize;y==="series"&&M.length>1&&r.push({code:"misleading-scale",severity:"warning",message:"normalize: 'series' scales each series to its own maximum, so polygons cannot be compared in magnitude; prefer 'metric' or 'none'."});let C=Math.max(1,Math.round(e.levels??4)),z=e.max??Math.max(0,X(M.flatMap(f=>f.data))[1]),P=y==="none"?he(0,z,C):Array.from({length:C+1},(f,S)=>100*S/C),R=y==="none"?e.max??P[P.length-1]:100,ne=n.map((f,S)=>{let I=M.map(ae=>ae.data[S]),[A,N]=X(I),B=f.min??Math.min(0,A),G=he(B,f.max??N,C);return{min:B,max:f.max??G[G.length-1]}}),re=e.series.map(f=>Math.max(0,X(f.data)[1])),ie=(f,S,I)=>{if(y==="series")return re[f]>0?I/re[f]*100:0;if(y==="metric"){let A=ne[S];return A.max>A.min?(I-A.min)/(A.max-A.min)*100:0}return I},E=(f,S)=>{let I=R>0?Math.max(0,Math.min(S,R))/R*p:0;return{x:x(d+I*Math.cos($(f))),y:x(u+I*Math.sin($(f)))}},oe=f=>b===0?"":`M${n.map((S,I)=>{let A=E(I,f(I));return`${A.x} ${A.y}`}).join("L")}Z`,Ce=f=>{if(e.gridShape==="circle"){let S=R>0?f/R*p:0;return{kind:"circle",part:"grid",cx:x(d),cy:x(u),r:x(S),fill:"none",stroke:w.grid}}return{kind:"path",part:"grid",d:oe(()=>f),stroke:w.grid}},se=P.filter(f=>f>0&&f<=R),$e=f=>y==="none"?i(f):y==="series"?`${f}%`:(()=>{let S=ne[0];return de(n[0]?.format??e.format)(S.min+(S.max-S.min)*f/100)})(),Vt=[...se.map(Ce),...n.map((f,S)=>{let I=E(S,R);return{kind:"line",part:"grid",x1:x(d),y1:x(u),x2:I.x,y2:I.y,stroke:w.grid}}),...se.map(f=>be(x(d+4),E(0,f).y,$e(f),{part:"y-label",baseline:"middle"})),...n.map((f,S)=>{let I=Math.cos($(S)),A=p+14;return be(x(d+A*I),x(u+A*Math.sin($(S))),f.label,{part:"x-label",anchor:I>.1?"start":I<-.1?"end":"middle",baseline:"middle"})})],ft=[],mt=[],bt=[],gt=e.markers??!0,Zt=e.markerSize??3;e.series.forEach((f,S)=>{if(Oe(e,f.name))return;let I=ze(e,S,f.color),A=N=>{let B=f.data[N];return q(B)?ie(S,N,B):0};n.forEach((N,B)=>{let G=f.data[B];if(!q(G))return;let ae=de(N.format??e.format),le=E(B,ie(S,B,G)),yt=zt(f.name,N.label,G,ae);ft.push({...At(le.x,le.y,gt?Zt:.01,I,yt,{label:yt,id:N.id,series:f.name,seriesId:f.id,category:N.label,index:B,value:G}),part:gt?"point":"anchor"}),e.labels&&bt.push(be(le.x,x(le.y-7),ae(G),{part:"value-label",anchor:"middle",fill:"var(--skdx-color-text-default)"}))}),mt.push({kind:"path",part:"area",d:oe(A),fill:e.fill??!0?I:void 0,fillOpacity:.25,stroke:I,strokeWidth:2,title:f.name,item:{label:f.name,series:f.name,seriesId:f.id}})});let xt=Ae(e,o,s,a);return{...xt,shapes:[...Vt,...mt,...ft,...bt,...xt.shapes],issues:r}}var Pt="var(--skdx-radius-default, var(--skdx-radius-md, 0.5rem))";function xe(e){return["tooltip","skeleton","label-background","stage-label-background","brush-handle"].includes(e)?Pt:void 0}function W(e,n,t,r,i){let o=e.getBoundingClientRect();return{x:o.width?(n-o.left)*r/o.width:n,y:o.height?(t-o.top)*i/o.height:t}}var Fe=(e,n,t)=>n>=e.x&&n<=e.x+e.width&&t>=e.y&&t<=e.y+e.height;function Bt(e,n){let t=0,r=1/0;return e.xs.forEach((i,o)=>{let s=Math.abs(i-n);s<r&&(r=s,t=o)}),t}function J(e,n){let t=e.hit;if(!t||t.xs.length===0)return;let r=Bt(t,n),i=t.rows[r]??[];return{index:r,rows:e.axisTooltipFormatter?.(i,r)??i}}function Ge(e,n){let t=e.hit;if(!t||t.xs.length===0)return;let r=t.xs[Bt(t,n)];return{kind:"line",part:"crosshair",x1:r,x2:r,y1:t.plot.y,y2:t.plot.y+t.plot.height,stroke:w.axis,dash:"3 3"}}function je(e,n,t){let r=e.hit;if(!r||!r.crosshair||r.xs.length===0||!Fe(r.plot,n,t))return[];let i=Ge(e,n),{rows:o}=J(e,n),s=e.tooltipAnchored?r.plot.y+8:t;return[i,...me(i.x1,s,o,e.width,e.height,e.tooltipPlacement)]}function _e(e,n){let t=e.hit;if(!t||t.xs.length===0)return[];let r=t.rows.findIndex(o=>o[0]===n);if(r<0)return[];let i=t.xs[r];return je(e,i,t.plot.y+8)}function He(e,n,t,r,i){if(!e.tooltip)return{lines:[],shapes:[]};if(e.hit?.crosshair){let{x:l,y:d}=W(t,r,i,e.width,e.height);if(Fe(e.hit.plot,l,d)){let u=J(e,l),p=Ge(e,l);if(u&&p)return{lines:u.rows,shapes:[p]}}}let o=n?.closest?.("[data-skdx-part]"),s=e.tooltipFormatter?_(e,n)?.item:void 0,a=s&&e.tooltipFormatter?.(s)||o&&Array.from(o.children).find(l=>l.tagName.toLowerCase()==="title")?.textContent;return a?{lines:Array.isArray(a)?a:[a],shapes:[]}:{lines:[],shapes:[]}}function Rt(e,n,t,r,i,o,s){let a=e?.closest?.("[data-skdx-part]"),l=s&&s.tooltipFormatter?_(s,e)?.item:void 0,d=l&&s?.tooltipFormatter?.(l)||a&&Array.from(a.children).find($=>$.tagName.toLowerCase()==="title")?.textContent;if(!d)return[];let u=s?.tooltipAnchored?_(s,e):void 0,p=u?s?.shapes[u.index]:void 0,{x:b,y:T}=p?ee(p):W(n,t,r,i,o);return me(b,T,d,i,o,s?.tooltipPlacement)}function Ee(e,n,t,r,i){if(!e.tooltip)return[];if(e.hit?.crosshair){let{x:o,y:s}=W(t,r,i,e.width,e.height),a=je(e,o,s);if(a.length>0)return a}return Rt(n,t,r,i,e.width,e.height,e)}function Ve(e,n){let t=_(e,n);return t&&!t.item.legend?j(t.item):null}var hn=(e,n)=>{let{x:t,y:r}=ee(e),i=e.kind==="circle"?e.cy:e.kind==="rect"?e.y+e.height/2:r;return t>=n.x&&t<=n.x+n.width&&i>=n.y&&i<=n.y+n.height};function Ze(e,n){let t=new Set,r=[];for(let i of e.shapes){if(!i.item||i.item.legend||i.part==="anchor"||!hn(i,n))continue;let o=j(i.item),s=JSON.stringify(o);t.has(s)||(t.add(s),r.push(o))}return r}var We=e=>({kind:"rect",part:"selection-box",x:x(e.x),y:x(e.y),width:x(e.width),height:x(e.height),fill:w.focus,opacity:.12,stroke:w.focus}),ve=(e,n,t,r)=>({x:Math.min(e,t),y:Math.min(n,r),width:Math.abs(t-e),height:Math.abs(r-n)});function Nt(e,n,t){let r=!1;for(let i=0,o=e.length-1;i<e.length;o=i++){let s=e[i],a=e[o];s.y>t!=a.y>t&&n<(a.x-s.x)*(t-s.y)/(a.y-s.y)+s.x&&(r=!r)}return r}function Ue(e,n){if(n.length<3)return[];let t=new Set,r=[];for(let i of e.shapes){if(!i.item||i.item.legend||i.part==="anchor")continue;let{x:o,y:s}=ee(i),a=i.kind==="circle"?i.cy:i.kind==="rect"?i.y+i.height/2:s;if(!Nt(n,o,a))continue;let l=j(i.item),d=JSON.stringify(l);t.has(d)||(t.add(d),r.push(l))}return r}var Ke=e=>({kind:"path",part:"selection-lasso",d:e.length?`M${e.map(n=>`${x(n.x)} ${x(n.y)}`).join("L")}`:"",fill:w.focus,fillOpacity:.12,stroke:w.focus,dash:"4 3"}),ye=6;function Ye(e,n,t){let r=e.edit;if(r){for(let i of r.bars)if(!(t<i.y||t>i.y+i.height||n<i.x0-ye||n>i.x1+ye))return Math.abs(n-i.x0)<=ye?{bar:i,mode:"start"}:Math.abs(n-i.x1)<=ye?{bar:i,mode:"end"}:{bar:i,mode:"move"}}}function qe(e,n,t){let r=e.edit;return Dt(r,n,r.invert(n.bar.x0+t)-r.invert(n.bar.x0))}function Xe(e,n,t){let r=e.edit,i=t.key==="ArrowRight"?1:t.key==="ArrowLeft"?-1:0;if(!r||n===null||!i||!(t.shiftKey||t.altKey))return;let o=r.bars.find(l=>l.index===n);if(!o)return;let s=t.altKey?t.shiftKey?"start":"end":"move",a=r.snap??r.invert(o.x0+10)-r.invert(o.x0);return Dt(r,{bar:o,mode:s},i*a)}function Dt(e,{bar:n,mode:t},r){let i=a=>e.snap?Math.round(a/e.snap)*e.snap:a,o=n.start,s=n.end;return t==="move"?(o=i(n.start+r),s=o+(n.end-n.start)):t==="start"?o=Math.min(i(n.start+r),n.end):s=Math.max(i(n.end+r),n.start),{id:n.id,name:n.name,start:o,end:s}}function Qe(e,n,t){let r=e.edit,i=r.scale(t.start),o=r.scale(t.end);return{kind:"rect",part:"edit-ghost",x:x(Math.min(i,o)),y:x(n.bar.y),width:x(Math.max(1,Math.abs(o-i))),height:x(n.bar.height),fill:w.focus,opacity:.25,stroke:w.focus,rx:2}}var pn=64,fn=e=>Math.max(1,Math.min(pn,e));function Je(e,n,t,r){let i=n>0?.8:1.25,o=fn(e.view.zoom*i);if(o===e.view.zoom)return e.view;let{plot:s,scale:a}=e,[l,d]=e.view.center,u=(t-(s.x+s.width/2))/a,p=(r-(s.y+s.height/2))/a,b=e.view.zoom/o;return{center:[l+u*(1-b),e.fromY(e.toY(d)-p*(1-b))],zoom:o}}function et(e,n,t,r){let{scale:i}=e;return{center:[n.center[0]-t/i,e.fromY(e.toY(n.center[1])+r/i)],zoom:n.zoom}}function _(e,n){let t=n?.closest?.("[data-skdx-i]"),r=Number(t?.getAttribute("data-skdx-i")),i=Number.isInteger(r)?e.shapes[r]?.item:void 0;return i?{index:r,item:i}:void 0}var we=e=>e.shapes.flatMap((n,t)=>n.item&&!n.item.legend?[t]:[]);function ee(e){switch(e.kind){case"rect":return{x:e.x+e.width/2,y:e.y};case"circle":return{x:e.cx,y:e.cy-e.r};case"line":return{x:(e.x1+e.x2)/2,y:Math.min(e.y1,e.y2)};case"text":return{x:e.x,y:e.y};case"path":{let n=/M\s*(-?[\d.]+)[ ,](-?[\d.]+)/.exec(e.d);return n?{x:Number(n[1]),y:Number(n[2])}:{x:0,y:0}}}}function tt(e,n){let t=n===null?void 0:e.shapes[n];if(!t)return[];let r=w.focus,i;switch(t.kind){case"rect":i={kind:"rect",part:"focus",x:t.x-2,y:t.y-2,width:t.width+4,height:t.height+4,fill:"none",stroke:r,rx:2};break;case"circle":i={kind:"circle",part:"focus",cx:t.cx,cy:t.cy,r:t.r+3,fill:"none",stroke:r};break;case"line":i={kind:"line",part:"focus",x1:t.x1,y1:t.y1,x2:t.x2,y2:t.y2,stroke:r,strokeWidth:4};break;case"text":i={kind:"rect",part:"focus",x:t.x-2,y:t.y-8,width:t.text.length*H+4,height:16,fill:"none",stroke:r,rx:2};break;case"path":i={kind:"path",part:"focus",d:t.d,stroke:r,strokeWidth:2,fill:"none"};break}let{x:o,y:s}=ee(t),a=t.item&&e.tooltipFormatter?.(t.item)||(t.item?.label??t.title??"");return[i,...a?me(x(o),x(s),a,e.width,e.height):[]]}function nt(e,n,t){let r=we(e);if(r.length===0)return;let i=n===null?-1:r.indexOf(n);switch(t){case"ArrowRight":case"ArrowDown":return r[Math.min(r.length-1,i+1)];case"ArrowLeft":case"ArrowUp":return r[Math.max(0,i<=0?0:i-1)];case"Home":return r[0];case"End":return r[r.length-1];case"Escape":return null;default:return}}var V=2,Z=(e,n,t)=>{let r=Math.max(V,Math.min(t,Math.round(n))),i=Math.max(0,Math.min(t-r,Math.round(e)));return{start:i,end:i+r}},Ft=(e,n)=>!e||e.start<=0&&e.end>=n;function rt(e,n,t){if(e.count<=V||!e.plot.width)return;let{start:r,end:i}=e.zoom,o=i-r,s=n>0?1.25:.8,a=Math.max(V,Math.min(e.count,Math.round(o*s)));if(a===o)return n>0&&!Ft(e.zoom,e.count)?Z(r,a,e.count):void 0;let l=Math.max(0,Math.min(1,(t-e.plot.x)/e.plot.width)),d=r+l*o;return Z(d-l*a,a,e.count)}function it(e,n,t,r){let i=n.end-n.start,o=Math.max(V,Math.min(e.count,Math.round(i/Math.max(.05,t)))),s=Math.max(0,Math.min(1,(r-e.plot.x)/Math.max(1,e.plot.width)));return Z(n.start+s*i-s*o,o,e.count)}function ot(e,n,t){let r=n.end-n.start,i=e.plot.width/Math.max(1,r);return Z(n.start-t/i,r,e.count)}function st(e,n,t){let r=e.brush;if(!r||!Fe(r.box,n,t))return;let i=r.window;if(Math.abs(n-i.x)<=6)return{grab:"left",zoom:e.zoom};if(Math.abs(n-(i.x+i.width))<=6)return{grab:"right",zoom:e.zoom};if(n>i.x&&n<i.x+i.width)return{grab:"move",zoom:e.zoom};let o=e.zoom.end-e.zoom.start,s=(n-r.box.x)/Math.max(1,r.box.width)*e.count;return{grab:"move",zoom:Z(s-o/2,o,e.count)}}function at(e,n,t,r){let i=e.brush;if(!i)return t;let o=r/Math.max(1,i.box.width)*e.count;if(n==="move")return Z(t.start+o,t.end-t.start,e.count);if(n==="left")return{start:Math.max(0,Math.min(t.end-V,Math.round(t.start+o))),end:t.end};let s=Math.min(e.count,Math.max(t.start+V,Math.round(t.end+o)));return{start:t.start,end:s}}function ct(e,n){switch(n.type){case"svg":return Promise.resolve(lt(e,n.label,n.resolve));case"csv":return Promise.resolve(Ht(n.rows));case"png":{if(typeof document>"u"||typeof Image>"u")return Promise.reject(new Error("PNG export needs a browser"));let t=lt(e,n.label,n.resolve);return _t(t,e.width,e.height,n.scale,n.background)}}}var F=e=>e.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/"/g,"&quot;"),te=e=>e.filter(([,n])=>n!==void 0&&n!=="").map(([n,t])=>` ${n}="${F(String(t))}"`).join("");function Gt(e){let n=e.title?`<title>${F(e.title)}</title>`:"",t=["data-skdx-part",e.part];switch(e.kind){case"path":return`<path${te([t,["d",e.d],["fill",e.fill??"none"],["stroke",e.stroke],["stroke-width",e.strokeWidth],["stroke-linecap",e.strokeLinecap],["stroke-linejoin",e.strokeLinejoin],["stroke-dasharray",e.dash],["opacity",e.opacity],["fill-opacity",e.fillOpacity]])}>${n}</path>`;case"rect":return`<rect${te([t,["x",e.x],["y",e.y],["width",e.width],["height",e.height],["rx",e.rx],["fill",e.fill],["stroke",e.stroke],["fill-opacity",e.opacity]])}>${n}</rect>`;case"line":return`<line${te([t,["x1",e.x1],["y1",e.y1],["x2",e.x2],["y2",e.y2],["stroke",e.stroke],["stroke-width",e.strokeWidth],["stroke-dasharray",e.dash],["opacity",e.opacity]])}>${n}</line>`;case"circle":return`<circle${te([t,["cx",e.cx],["cy",e.cy],["r",e.r],["fill",e.fill],["stroke",e.stroke]])}>${n}</circle>`;case"text":return`<text${te([t,["aria-label",e.title],["x",e.x],["y",e.y],["text-anchor",e.anchor],["dominant-baseline",e.baseline],["fill",e.fill],["font-weight",e.weight],["transform",e.rotate?`rotate(${e.rotate} ${e.x} ${e.y})`:void 0]])}>${F(e.text)}</text>`}}function jt(e){let n=e.defs??[];return n.length===0?"":`<defs>${n.map(t=>`<linearGradient id="${F(t.id)}" x1="0" y1="0" x2="${t.vertical===!1?1:0}" y2="${t.vertical===!1?0:1}">${t.stops.map(r=>`<stop offset="${r.offset}" stop-color="${F(r.color)}"${r.opacity===void 0?"":` stop-opacity="${r.opacity}"`}/>`).join("")}</linearGradient>`).join("")}</defs>`}function lt(e,n,t){let r=jt(e)+e.shapes.map(Gt).join("");return t&&(r=r.replace(/var\((--[\w-]+)\)/g,(i,o)=>t(o).trim()||i)),`<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 ${e.width} ${e.height}" width="${e.width}" height="${e.height}" role="img" aria-label="${F(n)}" font-family="${F(w.fontFamily)}" font-size="${F(w.fontSize)}"><title>${F(n)}</title>${r}</svg>`}function _t(e,n,t,r=2,i){return new Promise((o,s)=>{let a=URL.createObjectURL(new Blob([e],{type:"image/svg+xml;charset=utf-8"})),l=new Image;l.onload=()=>{URL.revokeObjectURL(a);let d=document.createElement("canvas");d.width=Math.round(n*r),d.height=Math.round(t*r);let u=d.getContext("2d");if(!u)return s(new Error("canvas 2d context unavailable"));i&&(u.fillStyle=i,u.fillRect(0,0,d.width,d.height)),u.drawImage(l,0,0,d.width,d.height),d.toBlob(p=>p?o(p):s(new Error("toBlob failed")),"image/png")},l.onerror=()=>{URL.revokeObjectURL(a),s(new Error("svg could not be decoded"))},l.src=a})}function Ht(e){let n=t=>{let r=t==null?"":String(t);return/[",\n\r]/.test(r)?`"${r.replace(/"/g,'""')}"`:r};return e.map(t=>t.map(n).join(",")).join(`\r
3
- `)}function dt(e,n){if(!n)return;let t=typeof n=="object"?n.maxRows??500:500,r=e.hit;if(r&&r.rows.length>0){let a=r.rows[0];if(r.rows.length>t)return;let l=["",...a.slice(1).map(u=>u.replace(/:\s[^:]*$/,""))],d=r.rows.map(u=>[u[0],...u.slice(1).map(p=>p.slice(p.lastIndexOf(": ")+2))]);return[l,...d]}let i=e.shapes.flatMap(a=>a.item&&!a.item.legend&&!(a.part==="anchor"&&!a.title)?[a.item]:[]);if(i.length===0||i.length>t)return;let o=["series","name","category","value"].filter(a=>i.some(l=>l[a]!==void 0)),s=(a,l)=>a[l]===void 0?"":String(a[l]);return[o.map(a=>a[0]?.toUpperCase()+a.slice(1)),...i.map(a=>o.map(l=>s(a,l)))]}var ut=new Map;function ke(e){let n=ut.get(e);if(n)return n.group;let t=new Set,r={},i={current:r,subscribe(o){return t.add(o),()=>{t.delete(o),t.size===0&&ut.delete(e)}},publish(o,s){Object.assign(r,o);for(let a of t)a(o,s)}};return ut.set(e,{group:i,listeners:t}),i}var Et='[data-skdx-part]:not([data-skdx-part^="tooltip"]):not([data-skdx-part="focus"]):not([data-skdx-part="crosshair"])',ht=`@keyframes skdx-in{from{opacity:0}to{opacity:1}}${Et}{animation:skdx-in var(--skdx-chart-duration,0ms) ease-out;transition:${["x","y","width","height","cx","cy","r","opacity","fill-opacity","d"].map(e=>`${e} var(--skdx-chart-duration,0ms) ease-out`).join(",")}}@media (prefers-reduced-motion:reduce){${Et}{animation:none;transition:none}}`;function pt(e){let n=e.animate;return n&&e.shapes.length<=1500?`${n}ms`:void 0}var m=require("lit"),h=require("lit/decorators.js"),v=require("lit/directives/if-defined.js");var Se={fromAttribute:()=>!1},g=class extends m.LitElement{constructor(){super(...arguments);this.legend=!1;this.tooltip=!0;this.selectionMode="none";this.loading=!1;this.decorative=!1;this.accessibleTable=!1;this.zoomable=!1;this.editable=!1;this.crossFilter=!1;this.animated=!1;this.responsive=!1;this.tip=[];this.overlay=[];this.portal=null;this.highlightState=null;this.crossState=null;this.lastCross=null;this.pointers=new Map;this.hover=null;this.token={};this.focused=null;this.hiddenState=[];this.drag=null;this.onPointerMove=t=>{let r=this.layout;if(!r)return;this.pointers.has(t.pointerId)&&this.pointers.set(t.pointerId,this.viewBox(t,r).x);let i=this.drag;if(i?.grab==="select"){let{x:o,y:s}=this.viewBox(t,r);this.overlay=[We(ve(i.x,i.y,o,s))];return}if(i?.grab==="lasso"){let{x:o,y:s}=this.viewBox(t,r);i.points=[...i.points??[],{x:o,y:s}],this.overlay=[Ke(i.points)];return}if(i?.grab==="edit"){if(!i.gantt)return;let{x:o}=this.viewBox(t,r);i.change=qe(r,i.gantt,o-i.x),this.overlay=[Qe(r,i.gantt,i.change)];return}if(i?.grab==="map"){if(!r.map||!i.view)return;let{x:o,y:s}=this.viewBox(t,r);this.setView(et(r.map,i.view,o-i.x,s-i.y));return}if(i&&r.hit){if(i.grab==="pinch"){let[s,a]=[...this.pointers.values()];if(s===void 0||a===void 0||!i.distance)return;this.setZoom(it(r.hit,i.zoom,Math.abs(s-a)/i.distance,(s+a)/2));return}let{x:o}=this.viewBox(t,r);this.setZoom(i.grab==="pan"?ot(r.hit,i.zoom,o-i.x):at(r.hit,i.grab,i.zoom,o-i.x));return}if(r.tooltipPortal){let{lines:o,shapes:s}=He(r,t.target,t.currentTarget,t.clientX,t.clientY);this.tip=s,this.portal=o.length?{x:t.clientX,y:t.clientY,lines:o}:null}else{let o=Ee(r,t.target,t.currentTarget,t.clientX,t.clientY);(o.length>0||this.tip.length>0)&&(this.tip=o)}if(this.highlight(Ve(r,t.target)),this.syncId&&r.hit?.crosshair){let o=J(r,this.viewBox(t,r).x);this.shareCrosshair(o?r.hit.rows[o.index]?.[0]??null:null)}};this.onPointerDown=t=>{let r=this.layout;if(!r||t.button!==0)return;let{x:i,y:o}=this.viewBox(t,r),s=_(r,t.target)?.item.legend,a=this.canEdit(r)?Ye(r,i,o):void 0;if(a){this.drag={x:i,y:o,zoom:{start:0,end:0},grab:"edit",gantt:a},t.currentTarget.setPointerCapture(t.pointerId),this.clearTip();return}if(this.brushing()&&!s){this.drag={x:i,y:o,zoom:{start:0,end:0},grab:this.selectionMode==="lasso"?"lasso":"select",points:[{x:i,y:o}]},t.currentTarget.setPointerCapture(t.pointerId),this.clearTip();return}if(this.canPan(r)&&r.map){let d=r.map.plot;if(i<d.x||i>d.x+d.width||o<d.y||o>d.y+d.height)return;this.drag={x:i,y:o,zoom:{start:0,end:0},grab:"map",view:r.map.view},t.currentTarget.setPointerCapture(t.pointerId),this.clearTip();return}let l=r.hit;if(!(!l||!this.canZoom(r))){if(this.pointers.set(t.pointerId,i),this.pointers.size===2){let[d,u]=[...this.pointers.values()];this.drag={x:(d+u)/2,y:o,zoom:l.zoom,grab:"pinch",distance:Math.abs(d-u)||1}}else{let d=st(l,i,o);if(d)this.drag={x:i,y:o,zoom:d.zoom,grab:d.grab},d.zoom!==l.zoom&&this.setZoom(d.zoom);else if(this.zoomable&&i>=l.plot.x&&i<=l.plot.x+l.plot.width&&o>=l.plot.y&&o<=l.plot.y+l.plot.height)this.drag={x:i,y:o,zoom:l.zoom,grab:"pan"};else{this.pointers.delete(t.pointerId);return}}t.currentTarget.setPointerCapture(t.pointerId),this.clearTip()}};this.onPointerUp=t=>{this.pointers.delete(t.pointerId);let r=t.currentTarget;r.hasPointerCapture(t.pointerId)&&r.releasePointerCapture(t.pointerId);let i=this.drag,o=this.layout;if(o&&(i?.grab==="select"||i?.grab==="lasso"||i?.grab==="edit"||i?.grab==="map")){this.overlay=[];let{x:s,y:a}=this.viewBox(t,o);if(Math.abs(s-i.x)>2||Math.abs(a-i.y)>2){i.grab==="select"?this.setSelected(Ze(o,ve(i.x,i.y,s,a))):i.grab==="lasso"?this.setSelected(Ue(o,i.points??[])):i.grab==="edit"&&i.change&&this.emit("skdx-task-change",i.change),this.drag={...i,distance:-1};return}this.drag=null;return}(this.pointers.size===0||this.drag?.grab==="pinch")&&(this.drag=null)};this.onWheel=t=>{let r=this.layout;if(!r)return;let{x:i,y:o}=this.viewBox(t,r);if(r.map&&this.canPan(r)){let l=r.map.plot;if(i<l.x||i>l.x+l.width||o<l.y||o>l.y+l.height)return;t.preventDefault(),this.setView(Je(r.map,t.deltaY,i,o));return}let s=r.hit;if(!s||!this.canZoom(r)||o<s.plot.y||o>s.plot.y+s.plot.height)return;let a=rt(s,t.deltaY,i);a&&(t.preventDefault(),this.setZoom(a))};this.onClick=t=>{if(!this.layout)return;if(this.drag?.distance===-1){this.drag=null;return}let r=_(this.layout,t.target);r&&(r.item.range?this.setZoom(r.item.range):r.item.legend&&r.item.series!==void 0?this.toggle(r.item.series):(this.select(r.item),this.emit("skdx-item-click",r.item)))};this.onKeyDown=t=>{if(t.key==="Escape"){t.preventDefault(),this.focused=null,this.clearTip(),this.crossState=null,this.highlight(null);return}let r=this.layout;if(!r)return;if((t.key==="Enter"||t.key===" ")&&this.focused!==null){let a=r.shapes[this.focused]?.item;a&&(t.preventDefault(),this.select(a),this.emit("skdx-item-click",a));return}let i=this.canEdit(r)?Xe(r,this.focused,t):void 0;if(i){t.preventDefault(),this.emit("skdx-task-change",i);return}let o=nt(r,this.focused,t.key);if(o===void 0)return;t.preventDefault(),this.focused=o;let s=o===null?void 0:r.shapes[o]?.item;this.highlight(s?j(s):null)}}connectedCallback(){super.connectedCallback(),!(typeof ResizeObserver>"u")&&(this.observer=new ResizeObserver(([t])=>{let r=Math.floor(t?.contentRect.width??0);r>0&&(this.measured=r)}),this.observer.observe(this))}disconnectedCallback(){this.observer?.disconnect(),this.leave?.(),this.leave=void 0,this.joined=void 0,super.disconnectedCallback()}sized(){let{width:t,height:r,legend:i,tooltip:o,format:s,palette:a,loading:l,error:d,emptyMessage:u,description:p,decorative:b,animated:T,responsive:$,highlighted:M,highlightScope:y,accessibleTable:C}=this;return{...typeof $=="object"&&this.measured!==void 0&&this.measured<($.breakpoint??480)?$.compact:void 0,width:$&&this.measured?this.measured:t,height:r,animate:T,responsive:$,legend:i,tooltip:o,format:s,palette:a,loading:l,error:d,emptyMessage:u,description:p,decorative:b,highlighted:M===void 0?this.highlightState:M,highlightScope:y,accessibleTable:C,hiddenSeries:this.hiddenSeries??this.hiddenState,zoom:this.zoom??this.zoomState,selected:this.selected??this.selectedState,view:this.view??this.viewState}}emit(t,r){this.dispatchEvent(new CustomEvent(t,{detail:r,bubbles:!0,composed:!0}))}publish(t){this.syncId&&ke(this.syncId).publish(t,this.token)}join(){if(this.joined===this.syncId||(this.leave?.(),this.leave=void 0,this.joined=this.syncId,!this.syncId))return;let t=ke(this.syncId),r=i=>{"highlighted"in i&&(this.highlightState=i.highlighted??null),i.selected&&(this.selectedState=i.selected,this.crossFilter&&(this.highlightState=i.selected.length?i.selected:null)),"zoom"in i&&(this.zoomState=i.zoom),i.hiddenSeries&&(this.hiddenState=i.hiddenSeries),"crosshair"in i&&(this.crossState=i.crosshair??null)};r(t.current),this.leave=t.subscribe((i,o)=>{o!==this.token&&r(i)})}setZoom(t){this.zoomState=t,this.emit("skdx-zoom-change",t),this.publish({zoom:t})}setView(t){this.viewState=t,this.emit("skdx-view-change",t)}setSelected(t){this.selectedState=t,this.emit("skdx-selected-change",t),this.publish({selected:t})}toggle(t){let r=this.hiddenSeries??this.hiddenState,i=r.includes(t)?r.filter(o=>o!==t):[...r,t];this.hiddenState=i,this.emit("skdx-hidden-series-change",i),this.publish({hiddenSeries:i})}highlight(t){let r=this.hover;r===t||r&&t&&Be(r,t)||(this.hover=t,this.emit("skdx-highlighted-change",t),this.highlightState=t,this.syncId&&this.publish({highlighted:t}))}select(t){let r=this.selectionMode;r!=="none"&&this.setSelected(Re(this.selected??this.selectedState,t,r==="single"?"single":"multiple"))}shareCrosshair(t){!this.syncId||this.lastCross===t||(this.lastCross=t,this.publish({crosshair:t}))}clearTip(){this.tip=[],this.portal=null,this.shareCrosshair(null)}canZoom(t){return!!(t.hit&&(this.zoomable||t.hit.brush))}canPan(t){return!!(t.map&&this.zoomable)}canEdit(t){return!!(this.editable&&t.edit)}brushing(){return this.selectionMode==="brush"||this.selectionMode==="lasso"}viewBox(t,r){return W(t.currentTarget,t.clientX,t.clientY,r.width,r.height)}getSvgElement(){return this.renderRoot.querySelector("svg")}getLayout(){return this.layout}resetZoom(){this.setZoom(void 0)}zoomTo(t){this.setZoom(t)}focusItem(t){let r=this.layout;if(!r)return!1;let i=r.shapes.findIndex(o=>o.item&&!o.item.legend&&D(o.item,t));return i<0?!1:(this.getSvgElement()?.focus(),this.focused=i,!0)}export(t){let r=this.layout;return r?ct(r,{...t,label:t.label??this.label??this.localName}):Promise.reject(new Error("not rendered yet"))}root(t,r,i){this.join();let o=Ne(Le(t),this.sized());if(this.layout=o,o.issues!==this.reported){this.reported=o.issues;for(let y of o.issues??[])this.emit("skdx-data-issue",y)}let s=this.canZoom(o),a=this.canPan(o),l=this.canEdit(o),d=this.brushing(),u=s||a||l||d,p=!o.decorative&&we(o).length>0,b=pt(o),T=dt(o,this.accessibleTable),$=typeof this.accessibleTable=="object"&&this.accessibleTable.caption||i,M=this.portal;return m.html`<svg
1
+ "use strict";var ce=Object.defineProperty;var vt=Object.getOwnPropertyDescriptor;var Wt=Object.getOwnPropertyNames;var Ut=Object.prototype.hasOwnProperty;var Kt=(e,n)=>{for(var t in n)ce(e,t,{get:n[t],enumerable:!0})},Yt=(e,n,t,r)=>{if(n&&typeof n=="object"||typeof n=="function")for(let i of Wt(n))!Ut.call(e,i)&&i!==t&&ce(e,i,{get:()=>n[i],enumerable:!(r=vt(n,i))||r.enumerable});return e};var qt=e=>Yt(ce({},"__esModule",{value:!0}),e),c=(e,n,t,r)=>{for(var i=r>1?void 0:r?vt(n,t):n,o=e.length-1,s;o>=0;o--)(s=e[o])&&(i=(r?s(n,t,i):s(i))||i);return r&&i&&ce(n,t,i),i};var bn={};Kt(bn,{SkdxRadarChart:()=>O});module.exports=qt(bn);var L=require("lit/decorators.js");var wt=e=>Number(e.toPrecision(12)),Xt,Qt=e=>(Xt??(Xt=new Intl.NumberFormat)).format(wt(e)),Jt=e=>{let n=Math.round(Math.abs(e)),t=e<0?"-":"",r=Math.floor(n/3600),i=Math.floor(n%3600/60),o=s=>String(s).padStart(2,"0");return r>0?`${t}${r}h ${o(i)}m`:i>0?`${t}${i}m ${o(n%60)}s`:`${t}${n}s`};function de(e){if(e===void 0)return Qt;if(typeof e=="function")return e;let{style:n,locale:t,digits:r,unit:i="",timeZone:o}=e,s=u=>i?p=>u(p)+i:u,a=u=>r===void 0?u===void 0?{}:{maximumFractionDigits:u}:{minimumFractionDigits:r,maximumFractionDigits:r},l=u=>{let p=new Intl.NumberFormat(t,u);return s(b=>p.format(wt(b)))},d=u=>{let p=new Intl.DateTimeFormat(t,o?{...u,timeZone:o}:u);return b=>p.format(b)};switch(n){case"integer":return l({maximumFractionDigits:0});case"decimal":return l(a(2));case"percent":return l({style:"percent",...a(0)});case"currency":return l({style:"currency",currency:e.currency??"USD",...a()});case"compact":return l({notation:"compact",...a(1)});case"scientific":return l({notation:"scientific",...a(2)});case"date":return d({dateStyle:"medium"});case"time":return d({timeStyle:"short"});case"datetime":return d({dateStyle:"medium",timeStyle:"short"});case"duration":return s(Jt)}}function he(e,n,t=5){if(e===n)return[e];let r=(n-e)/Math.max(1,t),i=10**Math.floor(Math.log10(r)),o=r/i,s=(o<1.5?1:o<3.5?2:o<7.5?5:10)*i,a=Math.floor(e/s)*s,l=Math.ceil(n/s)*s,d=[];for(let u=a;u<=l+s/2;u+=s)d.push(en(u));return d}var en=e=>Number(e.toPrecision(12)),x=e=>Number(e.toFixed(2)),q=e=>typeof e=="number"&&Number.isFinite(e),kt=e=>e.filter(q);function X(e){let n=1/0,t=-1/0;for(let r of e)q(r)&&(r<n&&(n=r),r>t&&(t=r));return n===1/0?[0,0]:[n,t]}var U=1e3,K=60*U,Y=60*K,ue=24*Y,yn=[U,5*U,15*U,30*U,K,5*K,15*K,30*K,Y,3*Y,6*Y,12*Y,ue,2*ue,7*ue,14*ue];var tn=/-?\d*\.?\d+(?:e[-+]?\d+)?/gi,nn=/([MLTHVCSQAZmlthvcsqaz])([^MLTHVCSQAZmlthvcsqaz]*)/g,rn={M:2,L:2,T:2,C:6,S:4,Q:4,A:7,H:-1,V:-2};function on(e,n,t){return e.replace(nn,(r,i,o)=>{let s=rn[i];if(s===void 0)return i+o;let l=(o.match(tn)??[]).map((d,u)=>{let p=Number(d);if(s===-1)return String(p+n);if(s===-2)return String(p+t);let b=u%s;return s===7?b===5?String(p+n):b===6?String(p+t):d:String(b%2===0?p+n:p+t)});return i+l.join(" ")})}var Mt=(e,n,t)=>e.map(r=>{switch(r.kind){case"rect":return{...r,x:r.x+n,y:r.y+t};case"circle":return{...r,cx:r.cx+n,cy:r.cy+t};case"line":return{...r,x1:r.x1+n,x2:r.x2+n,y1:r.y1+t,y2:r.y2+t};case"text":return{...r,x:r.x+n,y:r.y+t};case"path":return{...r,d:on(r.d,n,t)}}});var Ie=["primary","success","warning","danger","neutral"].flatMap(e=>[500,700].map(n=>`var(--skdx-color-${e}-${n})`)).sort((e,n)=>Number(e.endsWith("700)"))-Number(n.endsWith("700)"))),w={axis:"var(--skdx-color-border-strong)",grid:"var(--skdx-color-border-subtle)",label:"var(--skdx-color-text-muted)",focus:"var(--skdx-color-focus-ring)",positive:"var(--skdx-color-success-500)",negative:"var(--skdx-color-danger-500)",fontFamily:"var(--skdx-font-family)",fontSize:"var(--skdx-font-size-xs)"};var St=(e,n)=>n??Ie[e%Ie.length];function Q(e){let n=e.legend;if(n)return n===!0?{}:n.enabled===!1?void 0:n}function $t(e){let n=e.tooltip;return n===void 0||n===!0?{enabled:!0}:n===!1?{enabled:!1}:{...n,enabled:n.enabled??!0}}var pe=20,sn=120,Ct=e=>{let n=Q(e);return n&&(n.position==="left"||n.position==="right")?n.width??sn:0},fe=(e,n=600,t=300)=>({width:(e.width??n)-Ct(e),height:(e.height??t)-(Q(e)?.position==="bottom"?pe:0)}),It=(e,n,t)=>{let r=Q(e);return!r||!(r.position===void 0||r.position==="top")?0:(n?Math.max(1,Tt(n,t??fe(e).width,r)):1)*pe},H=6.5;function an(e,n){let t=Array.from(e),r=Math.max(0,Math.floor(n/H));return t.length<=r?e:r===0?"":`${t.slice(0,r-1).join("")}\u2026`}var ze=(e,n,t)=>t??(e.palette&&e.palette.length>0?e.palette[n%e.palette.length]:St(n)),Oe=(e,n)=>e.hiddenSeries?.includes(n)??!1;function Te(e,n,t=[],r={},i=10,o=8,s=!1){let a=[],l=r.maxItems,d=l!==void 0&&l>=0&&e.length>l?e.slice(0,l):e,u=e.length-d.length,p=r.interactive??!0,b=o,I=i,T=(M,y,$,z)=>{let P=(y?18:4)+M.length*H;b>o&&(s||b+P>n-8)&&(b=o,I+=pe),y&&a.push({kind:"rect",part:"legend-swatch",x:b,y:I-5,width:10,height:10,fill:y,opacity:z?.3:void 0,item:$}),a.push({kind:"text",part:"legend-label",x:b+(y?14:0),y:I,text:M,baseline:"middle",fill:z?w.grid:w.label,item:$}),b+=P+12};for(let M of d){let y=t.includes(M.name),$=p?{label:M.name,series:M.name,legend:!0}:void 0;T(r.formatter?.(M.name)??M.name,M.color,$,y)}return u>0&&T(`+${u} more`,void 0,void 0,!1),r.align==="end"?ln(a,n):a}function ln(e,n){let t=new Map;for(let i of e){let o=i.kind==="rect"?i.y+5:i.y;t.set(o,[...t.get(o)??[],i])}let r=[];for(let i of t.values()){let o=Math.max(...i.map(a=>a.kind==="rect"?a.x+a.width:a.x+a.text.length*H)),s=n-8-o;for(let a of i)r.push({...a,x:a.x+s})}return r}var Tt=(e,n,t={})=>new Set(Te(e,n,[],t).flatMap(r=>r.kind==="text"?[r.y]:[])).size;function Ae(e,n,t,r=[]){let i=Q(e),o=i&&e.direction==="rtl"&&i.align===void 0?{...i,align:"end"}:i,s=$t(e),a=o?.position==="bottom",l=Ct(e),d=e.hiddenSeries??[],u=o?l?Te(r,1/0,d,o,10,(o.position==="right"?n:0)+8,!0):Te(r,n,d,o,a?t+10:10):[],p=a?Tt(r,n,o):0;return{width:n+l,height:a?t+Math.max(1,p)*pe:t,legendOffset:o?.position==="left"?l:void 0,tooltip:s.enabled,tooltipFormatter:s.formatter,axisTooltipFormatter:s.axisFormatter,tooltipPortal:s.portal,tooltipPlacement:s.placement,tooltipAnchored:s.followPointer===!1?!0:void 0,description:e.description,decorative:e.decorative,animate:e.animate===!0?300:e.animate||void 0,responsive:!!e.responsive,shapes:u}}function Le(e){let n=e.legendOffset;if(!n)return e;let t=[...Mt(e.shapes.filter(l=>!l.part.startsWith("legend-")),n,0),...e.shapes.filter(l=>l.part.startsWith("legend-"))],r=l=>({...l,x:l.x+n}),i=e.hit?{...e.hit,plot:r(e.hit.plot),xs:e.hit.xs.map(l=>l+n),brush:e.hit.brush?{box:r(e.hit.brush.box),window:r(e.hit.brush.window)}:void 0}:void 0,o=e.edit,s=o?{...o,scale:l=>o.scale(l)+n,invert:l=>o.invert(l-n),bars:o.bars.map(l=>({...l,x0:l.x0+n,x1:l.x1+n}))}:void 0,a=e.map?{...e.map,plot:r(e.map.plot)}:void 0;return{...e,shapes:t,hit:i,edit:s,map:a,legendOffset:void 0}}function me(e,n,t,r,i,o="auto"){let s=Array.isArray(t)?t:[t],a=Math.max(1,Math.floor((r-12)/H)),l=s.flatMap(y=>{let $=[],z=Array.from(y);for(;z.length>a;){let P=z.slice(0,a+1).lastIndexOf(" ");P<1&&(P=a),$.push(z.slice(0,P).join("")),z=z.slice(P),z[0]===" "&&z.shift()}return $.push(z.join("")),$}),d=Math.max(1,Math.floor((i-6)/16)),u=l.slice(0,d);l.length>d&&(u[d-1]=an(`${u[d-1]}\u2026`,r-12));let p=Math.min(r,Math.max(0,...u.map(y=>Array.from(y).length))*H+12),b=Math.min(i,6+u.length*16),I=o==="top"?{x:e-p/2,y:n-b-8}:o==="bottom"?{x:e-p/2,y:n+8}:o==="left"?{x:e-p-8,y:n-b/2}:o==="right"?{x:e+8,y:n-b/2}:{x:e+12,y:n-b-6},T=Math.max(0,Math.min(r-p,I.x)),M=Math.max(0,Math.min(i-b,I.y));return[{kind:"rect",part:"tooltip",title:s.join(`
2
+ `),x:x(T),y:x(M),width:x(p),height:b,fill:"var(--skdx-color-surface-raised)",stroke:w.axis,rx:8},...u.map((y,$)=>({kind:"text",part:"tooltip-label",x:x(T+6),y:x(M+11+$*16),text:y,baseline:"middle",fill:"var(--skdx-color-text-default)",weight:u.length>1&&$===0?"bold":void 0}))]}var zt=(e,n,t,r)=>`${e}, ${n}: ${r(t)}`;function Ot(e,n,t,r){let i=e.error!==void 0?"error":e.loading?"loading":n?"empty":null;if(!i)return null;let{width:o,height:s}=fe(e,t,r),a=i==="error"?e.error:i==="loading"?"Loading\u2026":e.emptyMessage??"No data available",l=[];return i==="loading"&&l.push({kind:"rect",part:"skeleton",x:0,y:0,width:o,height:s,fill:"var(--skdx-color-surface-sunken)",rx:8}),l.push({kind:"text",part:`state-${i}`,x:x(o/2),y:x(s/2),text:a,anchor:"middle",baseline:"middle",fill:i==="error"?"var(--skdx-color-text-danger)":w.label}),{...Ae(e,o,s),shapes:l,tooltip:!1}}var be=(e,n,t,r={})=>({kind:"text",part:"label",x:e,y:n,text:t,fill:w.label,...r});var At=(e,n,t,r,i,o)=>({kind:"circle",part:"point",cx:e,cy:n,r:t,fill:r,title:i,item:o});function ge(e){return e==null?[]:(Array.isArray(e)?e:[e]).map(t=>typeof t=="object"?t:{id:t})}var Pe=e=>e.id??e.name??e.series,Lt=e=>e.seriesId??e.series;function F(e,n){let t=!1;return n.id!==void 0&&(t=!0,Pe(e)!==n.id&&e.id!==n.id&&e.name!==n.id)||n.series!==void 0&&(t=!0,Lt(e)!==n.series&&e.series!==n.series)||n.index!==void 0&&(t=!0,e.index!==n.index)||n.category!==void 0&&(t=!0,e.category!==n.category)?!1:t}function j(e){let n={},t=Pe(e);t!==void 0&&(n.id=t);let r=Lt(e);return r!==void 0&&e.series!==void 0&&(n.series=r),e.index!==void 0&&(n.index=e.index),n}var Be=(e,n)=>e.id===n.id&&e.series===n.series&&e.index===n.index&&e.category===n.category;function Re(e,n,t){let r=ge(e),i=j(n),o=r.some(s=>F(n,s));return t==="single"?o?[]:[i]:o?r.filter(s=>!F(n,s)):[...r,i]}var cn=.2;function dn(e){let n=w.focus;switch(e.kind){case"rect":return{kind:"rect",part:"selected",x:e.x-1.5,y:e.y-1.5,width:e.width+3,height:e.height+3,fill:"none",stroke:n,rx:e.rx};case"circle":return{kind:"circle",part:"selected",cx:e.cx,cy:e.cy,r:e.r+2.5,fill:"none",stroke:n};case"path":return{kind:"path",part:"selected",d:e.d,fill:"none",stroke:n,strokeWidth:2.5};case"line":return{...e,part:"selected",stroke:n,strokeWidth:(e.strokeWidth??1)+3,title:void 0,item:void 0};case"text":return}}var un=(e,n)=>e.kind==="text"?{...e,fill:w.grid}:{...e,opacity:(e.opacity??1)*n};function Ne(e,n){let t=ge(n.selected),r=n.highlighted===void 0||n.highlighted===null?[]:ge(n.highlighted),i=r[0];if(t.length===0&&!i)return e;let o={highlighted:n.highlightScope?.highlighted??"item",faded:n.highlightScope?.faded??"global"},s=[],a=u=>!i||r.some(p=>F(u,p))?!0:o.highlighted==="series"?r.some(p=>p.series!==void 0&&F(u,{series:p.series})):!1,l=u=>{if(!i||o.faded==="none"||a(u))return!1;if(o.faded==="series"){let p=i.series;return p!==void 0&&F(u,{series:p})}return!0},d=e.shapes.map(u=>{let p=u.item;if(!p||p.legend)return u;if(t.some(b=>F(p,b))){let b=dn(u);b&&s.push(b)}return l(p)?un(u,cn):u});return s.length?{...e,shapes:[...d,...s]}:{...e,shapes:d}}function De(e){let n=e.metrics??(e.categories??[]).map(f=>({label:f})),t=Ot(e,n.length===0||e.series.every(f=>kt(f.data).length===0),300,300);if(t)return t;let r=[],i=de(e.format),{width:o,height:s}=fe(e,300,300),a=e.series.map((f,S)=>({name:f.name,color:ze(e,S,f.color)})),l=It(e,a,o),d=o/2,u=l+(s-l)/2,p=Math.max(0,Math.min(o,s-l)/2-36),b=n.length,I=(e.startAngle??0)*Math.PI/180-Math.PI/2,T=f=>I+f*2*Math.PI/Math.max(1,b),M=e.series.filter(f=>!Oe(e,f.name)),y=e.normalize===!0?"series":e.normalize===!1||e.normalize===void 0?e.metrics?"metric":"none":e.normalize;y==="series"&&M.length>1&&r.push({code:"misleading-scale",severity:"warning",message:"normalize: 'series' scales each series to its own maximum, so polygons cannot be compared in magnitude; prefer 'metric' or 'none'."});let $=Math.max(1,Math.round(e.levels??4)),z=e.max??Math.max(0,X(M.flatMap(f=>f.data))[1]),P=y==="none"?he(0,z,$):Array.from({length:$+1},(f,S)=>100*S/$),N=y==="none"?e.max??P[P.length-1]:100,ne=n.map((f,S)=>{let C=M.map(ae=>ae.data[S]),[A,D]=X(C),B=f.min??Math.min(0,A),G=he(B,f.max??D,$);return{min:B,max:f.max??G[G.length-1]}}),re=e.series.map(f=>Math.max(0,X(f.data)[1])),ie=(f,S,C)=>{if(y==="series")return re[f]>0?C/re[f]*100:0;if(y==="metric"){let A=ne[S];return A.max>A.min?(C-A.min)/(A.max-A.min)*100:0}return C},E=(f,S)=>{let C=N>0?Math.max(0,Math.min(S,N))/N*p:0;return{x:x(d+C*Math.cos(T(f))),y:x(u+C*Math.sin(T(f)))}},oe=f=>b===0?"":`M${n.map((S,C)=>{let A=E(C,f(C));return`${A.x} ${A.y}`}).join("L")}Z`,$e=f=>{if(e.gridShape==="circle"){let S=N>0?f/N*p:0;return{kind:"circle",part:"grid",cx:x(d),cy:x(u),r:x(S),fill:"none",stroke:w.grid}}return{kind:"path",part:"grid",d:oe(()=>f),stroke:w.grid}},se=P.filter(f=>f>0&&f<=N),Ce=f=>y==="none"?i(f):y==="series"?`${f}%`:(()=>{let S=ne[0];return de(n[0]?.format??e.format)(S.min+(S.max-S.min)*f/100)})(),Vt=[...se.map($e),...n.map((f,S)=>{let C=E(S,N);return{kind:"line",part:"grid",x1:x(d),y1:x(u),x2:C.x,y2:C.y,stroke:w.grid}}),...se.map(f=>be(x(d+4),E(0,f).y,Ce(f),{part:"y-label",baseline:"middle"})),...n.map((f,S)=>{let C=Math.cos(T(S)),A=p+14;return be(x(d+A*C),x(u+A*Math.sin(T(S))),f.label,{part:"x-label",anchor:C>.1?"start":C<-.1?"end":"middle",baseline:"middle"})})],ft=[],mt=[],bt=[],gt=e.markers??!0,Zt=e.markerSize??3;e.series.forEach((f,S)=>{if(Oe(e,f.name))return;let C=ze(e,S,f.color),A=D=>{let B=f.data[D];return q(B)?ie(S,D,B):0};n.forEach((D,B)=>{let G=f.data[B];if(!q(G))return;let ae=de(D.format??e.format),le=E(B,ie(S,B,G)),yt=zt(f.name,D.label,G,ae);ft.push({...At(le.x,le.y,gt?Zt:.01,C,yt,{label:yt,id:D.id,series:f.name,seriesId:f.id,category:D.label,index:B,value:G}),part:gt?"point":"anchor"}),e.labels&&bt.push(be(le.x,x(le.y-7),ae(G),{part:"value-label",anchor:"middle",fill:"var(--skdx-color-text-default)"}))}),mt.push({kind:"path",part:"area",d:oe(A),fill:e.fill??!0?C:void 0,fillOpacity:.25,stroke:C,strokeWidth:2,title:f.name,item:{label:f.name,series:f.name,seriesId:f.id}})});let xt=Ae(e,o,s,a);return{...xt,shapes:[...Vt,...mt,...ft,...bt,...xt.shapes],issues:r}}var Pt="var(--skdx-radius-default, var(--skdx-radius-md, 0.5rem))";function xe(e){return["tooltip","skeleton","label-background","stage-label-background","brush-handle"].includes(e)?Pt:void 0}function W(e,n,t,r,i){let o=e.getBoundingClientRect();return{x:o.width?(n-o.left)*r/o.width:n,y:o.height?(t-o.top)*i/o.height:t}}var Fe=(e,n,t)=>n>=e.x&&n<=e.x+e.width&&t>=e.y&&t<=e.y+e.height;function Bt(e,n){let t=0,r=1/0;return e.xs.forEach((i,o)=>{let s=Math.abs(i-n);s<r&&(r=s,t=o)}),t}function J(e,n){let t=e.hit;if(!t||t.xs.length===0)return;let r=Bt(t,n),i=t.rows[r]??[];return{index:r,rows:e.axisTooltipFormatter?.(i,r)??i}}function Ge(e,n){let t=e.hit;if(!t||t.xs.length===0)return;let r=t.xs[Bt(t,n)];return{kind:"line",part:"crosshair",x1:r,x2:r,y1:t.plot.y,y2:t.plot.y+t.plot.height,stroke:w.axis,dash:"3 3"}}function je(e,n,t){let r=e.hit;if(!r||!r.crosshair||r.xs.length===0||!Fe(r.plot,n,t))return[];let i=Ge(e,n),{rows:o}=J(e,n),s=e.tooltipAnchored?r.plot.y+8:t;return[i,...me(i.x1,s,o,e.width,e.height,e.tooltipPlacement)]}function _e(e,n){let t=e.hit;if(!t||t.xs.length===0)return[];let r=t.rows.findIndex(o=>o[0]===n);if(r<0)return[];let i=t.xs[r];return je(e,i,t.plot.y+8)}function He(e,n,t,r,i){if(!e.tooltip)return{lines:[],shapes:[]};if(e.hit?.crosshair){let{x:l,y:d}=W(t,r,i,e.width,e.height);if(Fe(e.hit.plot,l,d)){let u=J(e,l),p=Ge(e,l);if(u&&p)return{lines:u.rows,shapes:[p]}}}let o=n?.closest?.("[data-skdx-part]"),s=e.tooltipFormatter?_(e,n)?.item:void 0,a=s&&e.tooltipFormatter?.(s)||o&&Array.from(o.children).find(l=>l.tagName.toLowerCase()==="title")?.textContent;return a?{lines:Array.isArray(a)?a:[a],shapes:[]}:{lines:[],shapes:[]}}function Rt(e,n,t,r,i,o,s){let a=e?.closest?.("[data-skdx-part]"),l=s&&s.tooltipFormatter?_(s,e)?.item:void 0,d=l&&s?.tooltipFormatter?.(l)||a&&Array.from(a.children).find(T=>T.tagName.toLowerCase()==="title")?.textContent;if(!d)return[];let u=s?.tooltipAnchored?_(s,e):void 0,p=u?s?.shapes[u.index]:void 0,{x:b,y:I}=p?ee(p):W(n,t,r,i,o);return me(b,I,d,i,o,s?.tooltipPlacement)}function Ee(e,n,t,r,i){if(!e.tooltip)return[];if(e.hit?.crosshair){let{x:o,y:s}=W(t,r,i,e.width,e.height),a=je(e,o,s);if(a.length>0)return a}return Rt(n,t,r,i,e.width,e.height,e)}function Ve(e,n){let t=_(e,n);return t&&!t.item.legend?j(t.item):null}var hn=(e,n)=>{let{x:t,y:r}=ee(e),i=e.kind==="circle"?e.cy:e.kind==="rect"?e.y+e.height/2:r;return t>=n.x&&t<=n.x+n.width&&i>=n.y&&i<=n.y+n.height};function Ze(e,n){let t=new Set,r=[];for(let i of e.shapes){if(!i.item||i.item.legend||i.part==="anchor"||!hn(i,n))continue;let o=j(i.item),s=JSON.stringify(o);t.has(s)||(t.add(s),r.push(o))}return r}var We=e=>({kind:"rect",part:"selection-box",x:x(e.x),y:x(e.y),width:x(e.width),height:x(e.height),fill:w.focus,opacity:.12,stroke:w.focus}),ve=(e,n,t,r)=>({x:Math.min(e,t),y:Math.min(n,r),width:Math.abs(t-e),height:Math.abs(r-n)});function Nt(e,n,t){let r=!1;for(let i=0,o=e.length-1;i<e.length;o=i++){let s=e[i],a=e[o];s.y>t!=a.y>t&&n<(a.x-s.x)*(t-s.y)/(a.y-s.y)+s.x&&(r=!r)}return r}function Ue(e,n){if(n.length<3)return[];let t=new Set,r=[];for(let i of e.shapes){if(!i.item||i.item.legend||i.part==="anchor")continue;let{x:o,y:s}=ee(i),a=i.kind==="circle"?i.cy:i.kind==="rect"?i.y+i.height/2:s;if(!Nt(n,o,a))continue;let l=j(i.item),d=JSON.stringify(l);t.has(d)||(t.add(d),r.push(l))}return r}var Ke=e=>({kind:"path",part:"selection-lasso",d:e.length?`M${e.map(n=>`${x(n.x)} ${x(n.y)}`).join("L")}`:"",fill:w.focus,fillOpacity:.12,stroke:w.focus,dash:"4 3"}),ye=6;function Ye(e,n,t){let r=e.edit;if(r){for(let i of r.bars)if(!(t<i.y||t>i.y+i.height||n<i.x0-ye||n>i.x1+ye))return Math.abs(n-i.x0)<=ye?{bar:i,mode:"start"}:Math.abs(n-i.x1)<=ye?{bar:i,mode:"end"}:{bar:i,mode:"move"}}}function qe(e,n,t){let r=e.edit;return Dt(r,n,r.invert(n.bar.x0+t)-r.invert(n.bar.x0))}function Xe(e,n,t){let r=e.edit,i=t.key==="ArrowRight"?1:t.key==="ArrowLeft"?-1:0;if(!r||n===null||!i||!(t.shiftKey||t.altKey))return;let o=r.bars.find(l=>l.index===n);if(!o)return;let s=t.altKey?t.shiftKey?"start":"end":"move",a=r.snap??r.invert(o.x0+10)-r.invert(o.x0);return Dt(r,{bar:o,mode:s},i*a)}function Dt(e,{bar:n,mode:t},r){let i=a=>e.snap?Math.round(a/e.snap)*e.snap:a,o=n.start,s=n.end;return t==="move"?(o=i(n.start+r),s=o+(n.end-n.start)):t==="start"?o=Math.min(i(n.start+r),n.end):s=Math.max(i(n.end+r),n.start),{id:n.id,name:n.name,start:o,end:s}}function Qe(e,n,t){let r=e.edit,i=r.scale(t.start),o=r.scale(t.end);return{kind:"rect",part:"edit-ghost",x:x(Math.min(i,o)),y:x(n.bar.y),width:x(Math.max(1,Math.abs(o-i))),height:x(n.bar.height),fill:w.focus,opacity:.25,stroke:w.focus,rx:2}}var pn=64,fn=e=>Math.max(1,Math.min(pn,e));function Je(e,n,t,r){let i=n>0?.8:1.25,o=fn(e.view.zoom*i);if(o===e.view.zoom)return e.view;let{plot:s,scale:a}=e,[l,d]=e.view.center,u=(t-(s.x+s.width/2))/a,p=(r-(s.y+s.height/2))/a,b=e.view.zoom/o;return{center:[l+u*(1-b),e.fromY(e.toY(d)-p*(1-b))],zoom:o}}function et(e,n,t,r){let{scale:i}=e;return{center:[n.center[0]-t/i,e.fromY(e.toY(n.center[1])+r/i)],zoom:n.zoom}}function _(e,n){let t=n?.closest?.("[data-skdx-i]"),r=Number(t?.getAttribute("data-skdx-i")),i=Number.isInteger(r)?e.shapes[r]?.item:void 0;return i?{index:r,item:i}:void 0}var we=e=>e.shapes.flatMap((n,t)=>n.item&&!n.item.legend?[t]:[]);function ee(e){switch(e.kind){case"rect":return{x:e.x+e.width/2,y:e.y};case"circle":return{x:e.cx,y:e.cy-e.r};case"line":return{x:(e.x1+e.x2)/2,y:Math.min(e.y1,e.y2)};case"text":return{x:e.x,y:e.y};case"path":{let n=/M\s*(-?[\d.]+)[ ,](-?[\d.]+)/.exec(e.d);return n?{x:Number(n[1]),y:Number(n[2])}:{x:0,y:0}}}}function tt(e,n){let t=n===null?void 0:e.shapes[n];if(!t)return[];let r=w.focus,i;switch(t.kind){case"rect":i={kind:"rect",part:"focus",x:t.x-2,y:t.y-2,width:t.width+4,height:t.height+4,fill:"none",stroke:r,rx:2};break;case"circle":i={kind:"circle",part:"focus",cx:t.cx,cy:t.cy,r:t.r+3,fill:"none",stroke:r};break;case"line":i={kind:"line",part:"focus",x1:t.x1,y1:t.y1,x2:t.x2,y2:t.y2,stroke:r,strokeWidth:4};break;case"text":i={kind:"rect",part:"focus",x:t.x-2,y:t.y-8,width:t.text.length*H+4,height:16,fill:"none",stroke:r,rx:2};break;case"path":i={kind:"path",part:"focus",d:t.d,stroke:r,strokeWidth:2,fill:"none"};break}let{x:o,y:s}=ee(t),a=t.item&&e.tooltipFormatter?.(t.item)||(t.item?.label??t.title??"");return[i,...a?me(x(o),x(s),a,e.width,e.height):[]]}function nt(e,n,t){let r=we(e);if(r.length===0)return;let i=n===null?-1:r.indexOf(n);switch(t){case"ArrowRight":case"ArrowDown":return r[Math.min(r.length-1,i+1)];case"ArrowLeft":case"ArrowUp":return r[Math.max(0,i<=0?0:i-1)];case"Home":return r[0];case"End":return r[r.length-1];case"Escape":return null;default:return}}var V=2,Z=(e,n,t)=>{let r=Math.max(V,Math.min(t,Math.round(n))),i=Math.max(0,Math.min(t-r,Math.round(e)));return{start:i,end:i+r}},Ft=(e,n)=>!e||e.start<=0&&e.end>=n;function rt(e,n,t){if(e.count<=V||!e.plot.width)return;let{start:r,end:i}=e.zoom,o=i-r,s=n>0?1.25:.8,a=Math.max(V,Math.min(e.count,Math.round(o*s)));if(a===o)return n>0&&!Ft(e.zoom,e.count)?Z(r,a,e.count):void 0;let l=Math.max(0,Math.min(1,(t-e.plot.x)/e.plot.width)),d=r+l*o;return Z(d-l*a,a,e.count)}function it(e,n,t,r){let i=n.end-n.start,o=Math.max(V,Math.min(e.count,Math.round(i/Math.max(.05,t)))),s=Math.max(0,Math.min(1,(r-e.plot.x)/Math.max(1,e.plot.width)));return Z(n.start+s*i-s*o,o,e.count)}function ot(e,n,t){let r=n.end-n.start,i=e.plot.width/Math.max(1,r);return Z(n.start-t/i,r,e.count)}function st(e,n,t){let r=e.brush;if(!r||!Fe(r.box,n,t))return;let i=r.window;if(Math.abs(n-i.x)<=6)return{grab:"left",zoom:e.zoom};if(Math.abs(n-(i.x+i.width))<=6)return{grab:"right",zoom:e.zoom};if(n>i.x&&n<i.x+i.width)return{grab:"move",zoom:e.zoom};let o=e.zoom.end-e.zoom.start,s=(n-r.box.x)/Math.max(1,r.box.width)*e.count;return{grab:"move",zoom:Z(s-o/2,o,e.count)}}function at(e,n,t,r){let i=e.brush;if(!i)return t;let o=r/Math.max(1,i.box.width)*e.count;if(n==="move")return Z(t.start+o,t.end-t.start,e.count);if(n==="left")return{start:Math.max(0,Math.min(t.end-V,Math.round(t.start+o))),end:t.end};let s=Math.min(e.count,Math.max(t.start+V,Math.round(t.end+o)));return{start:t.start,end:s}}function ct(e,n){switch(n.type){case"svg":return Promise.resolve(lt(e,n.label,n.resolve));case"csv":return Promise.resolve(Ht(n.rows));case"png":{if(typeof document>"u"||typeof Image>"u")return Promise.reject(new Error("PNG export needs a browser"));let t=lt(e,n.label,n.resolve);return _t(t,e.width,e.height,n.scale,n.background)}}}var R=e=>e.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/"/g,"&quot;"),te=e=>e.filter(([,n])=>n!==void 0&&n!=="").map(([n,t])=>` ${n}="${R(String(t))}"`).join("");function Gt(e){let n=e.title?`<title>${R(e.title)}</title>`:"",t=["data-skdx-part",e.part];switch(e.kind){case"path":return`<path${te([t,["d",e.d],["fill",e.fill??"none"],["stroke",e.stroke],["stroke-width",e.strokeWidth],["stroke-linecap",e.strokeLinecap],["stroke-linejoin",e.strokeLinejoin],["stroke-dasharray",e.dash],["opacity",e.opacity],["fill-opacity",e.fillOpacity]])}>${n}</path>`;case"rect":return`<rect${te([t,["x",e.x],["y",e.y],["width",e.width],["height",e.height],["rx",e.rx],["fill",e.fill],["stroke",e.stroke],["fill-opacity",e.opacity]])}>${n}</rect>`;case"line":return`<line${te([t,["x1",e.x1],["y1",e.y1],["x2",e.x2],["y2",e.y2],["stroke",e.stroke],["stroke-width",e.strokeWidth],["stroke-dasharray",e.dash],["opacity",e.opacity]])}>${n}</line>`;case"circle":return`<circle${te([t,["cx",e.cx],["cy",e.cy],["r",e.r],["fill",e.fill],["stroke",e.stroke]])}>${n}</circle>`;case"text":return`<text${te([t,["aria-label",e.title],["x",e.x],["y",e.y],["text-anchor",e.anchor],["dominant-baseline",e.baseline],["fill",e.fill],["font-weight",e.weight],["transform",e.rotate?`rotate(${e.rotate} ${e.x} ${e.y})`:void 0]])}>${R(e.text)}</text>`}}function jt(e){let n=e.defs??[];return n.length===0?"":`<defs>${n.map(t=>`<linearGradient id="${R(t.id)}" x1="0" y1="0" x2="${t.vertical===!1?1:0}" y2="${t.vertical===!1?0:1}">${t.stops.map(r=>`<stop offset="${r.offset}" stop-color="${R(r.color)}"${r.opacity===void 0?"":` stop-opacity="${r.opacity}"`}/>`).join("")}</linearGradient>`).join("")}</defs>`}function lt(e,n,t){let r=jt(e)+e.shapes.map(Gt).join("");t&&(r=r.replace(/var\((--[\w-]+)\)/g,(s,a)=>t(a).trim()||s));let i=e.decorative?'aria-hidden="true"':`role="img" aria-label="${R(n)}"`,o=e.description?`<desc>${R(e.description)}</desc>`:"";return`<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 ${e.width} ${e.height}" width="${e.width}" height="${e.height}" ${i} font-family="${R(w.fontFamily)}" font-size="${R(w.fontSize)}"><title>${R(n)}</title>${o}${r}</svg>`}function _t(e,n,t,r=2,i){return new Promise((o,s)=>{let a=URL.createObjectURL(new Blob([e],{type:"image/svg+xml;charset=utf-8"})),l=new Image;l.onload=()=>{URL.revokeObjectURL(a);let d=document.createElement("canvas");d.width=Math.round(n*r),d.height=Math.round(t*r);let u=d.getContext("2d");if(!u)return s(new Error("canvas 2d context unavailable"));i&&(u.fillStyle=i,u.fillRect(0,0,d.width,d.height)),u.drawImage(l,0,0,d.width,d.height),d.toBlob(p=>p?o(p):s(new Error("toBlob failed")),"image/png")},l.onerror=()=>{URL.revokeObjectURL(a),s(new Error("svg could not be decoded"))},l.src=a})}function Ht(e){let n=t=>{let r=t==null?"":String(t);return/[",\n\r]/.test(r)?`"${r.replace(/"/g,'""')}"`:r};return e.map(t=>t.map(n).join(",")).join(`\r
3
+ `)}function dt(e,n){if(!n)return;let t=typeof n=="object"?n.maxRows??500:500,r=e.hit;if(r&&r.rows.length>0){let a=r.rows[0];if(r.rows.length>t)return;let l=["",...a.slice(1).map(u=>u.replace(/:\s[^:]*$/,""))],d=r.rows.map(u=>[u[0],...u.slice(1).map(p=>p.slice(p.lastIndexOf(": ")+2))]);return[l,...d]}let i=e.shapes.flatMap(a=>a.item&&!a.item.legend&&!(a.part==="anchor"&&!a.title)?[a.item]:[]);if(i.length===0||i.length>t)return;let o=["series","name","category","value"].filter(a=>i.some(l=>l[a]!==void 0)),s=(a,l)=>a[l]===void 0?"":String(a[l]);return[o.map(a=>a[0]?.toUpperCase()+a.slice(1)),...i.map(a=>o.map(l=>s(a,l)))]}var ut=new Map;function ke(e){let n=ut.get(e);if(n)return n.group;let t=new Set,r={},i={current:r,subscribe(o){return t.add(o),()=>{t.delete(o),t.size===0&&ut.delete(e)}},publish(o,s){Object.assign(r,o);for(let a of t)a(o,s)}};return ut.set(e,{group:i,listeners:t}),i}var Et='[data-skdx-part]:not([data-skdx-part^="tooltip"]):not([data-skdx-part="focus"]):not([data-skdx-part="crosshair"])',ht=`@keyframes skdx-in{from{opacity:0}to{opacity:1}}${Et}{animation:skdx-in var(--skdx-chart-duration,0ms) ease-out;transition:${["x","y","width","height","cx","cy","r","opacity","fill-opacity","d"].map(e=>`${e} var(--skdx-chart-duration,0ms) ease-out`).join(",")}}@media (prefers-reduced-motion:reduce){${Et}{animation:none;transition:none}}`;function pt(e){let n=e.animate;return n&&e.shapes.length<=1500?`${n}ms`:void 0}var m=require("lit"),h=require("lit/decorators.js"),v=require("lit/directives/if-defined.js");var Se={fromAttribute:()=>!1},g=class extends m.LitElement{constructor(){super(...arguments);this.legend=!1;this.tooltip=!0;this.selectionMode="none";this.loading=!1;this.decorative=!1;this.accessibleTable=!1;this.zoomable=!1;this.editable=!1;this.crossFilter=!1;this.animated=!1;this.responsive=!1;this.tip=[];this.overlay=[];this.portal=null;this.highlightState=null;this.crossState=null;this.lastCross=null;this.pointers=new Map;this.hover=null;this.token={};this.focused=null;this.hiddenState=[];this.drag=null;this.onPointerMove=t=>{let r=this.layout;if(!r)return;this.pointers.has(t.pointerId)&&this.pointers.set(t.pointerId,this.viewBox(t,r).x);let i=this.drag;if(i?.grab==="select"){let{x:o,y:s}=this.viewBox(t,r);this.overlay=[We(ve(i.x,i.y,o,s))];return}if(i?.grab==="lasso"){let{x:o,y:s}=this.viewBox(t,r);i.points=[...i.points??[],{x:o,y:s}],this.overlay=[Ke(i.points)];return}if(i?.grab==="edit"){if(!i.gantt)return;let{x:o}=this.viewBox(t,r);i.change=qe(r,i.gantt,o-i.x),this.overlay=[Qe(r,i.gantt,i.change)];return}if(i?.grab==="map"){if(!r.map||!i.view)return;let{x:o,y:s}=this.viewBox(t,r);this.setView(et(r.map,i.view,o-i.x,s-i.y));return}if(i&&r.hit){if(i.grab==="pinch"){let[s,a]=[...this.pointers.values()];if(s===void 0||a===void 0||!i.distance)return;this.setZoom(it(r.hit,i.zoom,Math.abs(s-a)/i.distance,(s+a)/2));return}let{x:o}=this.viewBox(t,r);this.setZoom(i.grab==="pan"?ot(r.hit,i.zoom,o-i.x):at(r.hit,i.grab,i.zoom,o-i.x));return}if(r.tooltipPortal){let{lines:o,shapes:s}=He(r,t.target,t.currentTarget,t.clientX,t.clientY);this.tip=s,this.portal=o.length?{x:t.clientX,y:t.clientY,lines:o}:null}else{let o=Ee(r,t.target,t.currentTarget,t.clientX,t.clientY);(o.length>0||this.tip.length>0)&&(this.tip=o)}if(this.highlight(Ve(r,t.target)),this.syncId&&r.hit?.crosshair){let o=J(r,this.viewBox(t,r).x);this.shareCrosshair(o?r.hit.rows[o.index]?.[0]??null:null)}};this.onPointerDown=t=>{let r=this.layout;if(!r||t.button!==0)return;let{x:i,y:o}=this.viewBox(t,r),s=_(r,t.target)?.item.legend,a=this.canEdit(r)?Ye(r,i,o):void 0;if(a){this.drag={x:i,y:o,zoom:{start:0,end:0},grab:"edit",gantt:a},t.currentTarget.setPointerCapture(t.pointerId),this.clearTip();return}if(this.brushing()&&!s){this.drag={x:i,y:o,zoom:{start:0,end:0},grab:this.selectionMode==="lasso"?"lasso":"select",points:[{x:i,y:o}]},t.currentTarget.setPointerCapture(t.pointerId),this.clearTip();return}if(this.canPan(r)&&r.map){let d=r.map.plot;if(i<d.x||i>d.x+d.width||o<d.y||o>d.y+d.height)return;this.drag={x:i,y:o,zoom:{start:0,end:0},grab:"map",view:r.map.view},t.currentTarget.setPointerCapture(t.pointerId),this.clearTip();return}let l=r.hit;if(!(!l||!this.canZoom(r))){if(this.pointers.set(t.pointerId,i),this.pointers.size===2){let[d,u]=[...this.pointers.values()];this.drag={x:(d+u)/2,y:o,zoom:l.zoom,grab:"pinch",distance:Math.abs(d-u)||1}}else{let d=st(l,i,o);if(d)this.drag={x:i,y:o,zoom:d.zoom,grab:d.grab},d.zoom!==l.zoom&&this.setZoom(d.zoom);else if(this.zoomable&&i>=l.plot.x&&i<=l.plot.x+l.plot.width&&o>=l.plot.y&&o<=l.plot.y+l.plot.height)this.drag={x:i,y:o,zoom:l.zoom,grab:"pan"};else{this.pointers.delete(t.pointerId);return}}t.currentTarget.setPointerCapture(t.pointerId),this.clearTip()}};this.onPointerUp=t=>{this.pointers.delete(t.pointerId);let r=t.currentTarget;r.hasPointerCapture(t.pointerId)&&r.releasePointerCapture(t.pointerId);let i=this.drag,o=this.layout;if(o&&(i?.grab==="select"||i?.grab==="lasso"||i?.grab==="edit"||i?.grab==="map")){this.overlay=[];let{x:s,y:a}=this.viewBox(t,o);if(Math.abs(s-i.x)>2||Math.abs(a-i.y)>2){i.grab==="select"?this.setSelected(Ze(o,ve(i.x,i.y,s,a))):i.grab==="lasso"?this.setSelected(Ue(o,i.points??[])):i.grab==="edit"&&i.change&&this.emit("skdx-task-change",i.change),this.drag={...i,distance:-1};return}this.drag=null;return}(this.pointers.size===0||this.drag?.grab==="pinch")&&(this.drag=null)};this.onWheel=t=>{let r=this.layout;if(!r)return;let{x:i,y:o}=this.viewBox(t,r);if(r.map&&this.canPan(r)){let l=r.map.plot;if(i<l.x||i>l.x+l.width||o<l.y||o>l.y+l.height)return;t.preventDefault(),this.setView(Je(r.map,t.deltaY,i,o));return}let s=r.hit;if(!s||!this.canZoom(r)||o<s.plot.y||o>s.plot.y+s.plot.height)return;let a=rt(s,t.deltaY,i);a&&(t.preventDefault(),this.setZoom(a))};this.onClick=t=>{if(!this.layout)return;if(this.drag?.distance===-1){this.drag=null;return}let r=_(this.layout,t.target);r&&(r.item.range?this.setZoom(r.item.range):r.item.legend&&r.item.series!==void 0?this.toggle(r.item.series):(this.select(r.item),this.emit("skdx-item-click",r.item)))};this.onKeyDown=t=>{if(t.key==="Escape"){t.preventDefault(),this.focused=null,this.clearTip(),this.crossState=null,this.highlight(null);return}let r=this.layout;if(!r)return;if((t.key==="Enter"||t.key===" ")&&this.focused!==null){let a=r.shapes[this.focused]?.item;a&&(t.preventDefault(),this.select(a),this.emit("skdx-item-click",a));return}let i=this.canEdit(r)?Xe(r,this.focused,t):void 0;if(i){t.preventDefault(),this.emit("skdx-task-change",i);return}let o=nt(r,this.focused,t.key);if(o===void 0)return;t.preventDefault(),this.focused=o;let s=o===null?void 0:r.shapes[o]?.item;this.highlight(s?j(s):null)}}connectedCallback(){super.connectedCallback(),!(typeof ResizeObserver>"u")&&(this.observer=new ResizeObserver(([t])=>{let r=Math.floor(t?.contentRect.width??0);r>0&&(this.measured=r)}),this.observer.observe(this))}disconnectedCallback(){this.observer?.disconnect(),this.leave?.(),this.leave=void 0,this.joined=void 0,super.disconnectedCallback()}sized(){let{width:t,height:r,legend:i,tooltip:o,format:s,palette:a,loading:l,error:d,emptyMessage:u,description:p,decorative:b,animated:I,responsive:T,highlighted:M,highlightScope:y,accessibleTable:$}=this;return{width:T&&this.measured?this.measured:t,height:r,animate:I,responsive:T,legend:i,tooltip:o,format:s,palette:a,loading:l,error:d,emptyMessage:u,description:p,decorative:b,highlighted:M===void 0?this.highlightState:M,highlightScope:y,accessibleTable:$,hiddenSeries:this.hiddenSeries??this.hiddenState,zoom:this.zoom??this.zoomState,selected:this.selected??this.selectedState,view:this.view??this.viewState}}compactOverrides(){let t=this.responsive;return typeof t=="object"&&this.measured!==void 0&&this.measured<(t.breakpoint??480)?{...t.compact,width:this.measured}:void 0}emit(t,r){this.dispatchEvent(new CustomEvent(t,{detail:r,bubbles:!0,composed:!0}))}publish(t){this.syncId&&ke(this.syncId).publish(t,this.token)}join(){if(this.joined===this.syncId||(this.leave?.(),this.leave=void 0,this.joined=this.syncId,!this.syncId))return;let t=ke(this.syncId),r=i=>{"highlighted"in i&&(this.highlightState=i.highlighted??null),i.selected&&(this.selectedState=i.selected,this.crossFilter&&(this.highlightState=i.selected.length?i.selected:null)),"zoom"in i&&(this.zoomState=i.zoom),i.hiddenSeries&&(this.hiddenState=i.hiddenSeries),"crosshair"in i&&(this.crossState=i.crosshair??null)};r(t.current),this.leave=t.subscribe((i,o)=>{o!==this.token&&r(i)})}setZoom(t){this.zoomState=t,this.emit("skdx-zoom-change",t),this.publish({zoom:t})}setView(t){this.viewState=t,this.emit("skdx-view-change",t)}setSelected(t){this.selectedState=t,this.emit("skdx-selected-change",t),this.publish({selected:t})}toggle(t){let r=this.hiddenSeries??this.hiddenState,i=r.includes(t)?r.filter(o=>o!==t):[...r,t];this.hiddenState=i,this.emit("skdx-hidden-series-change",i),this.publish({hiddenSeries:i})}highlight(t){let r=this.hover;r===t||r&&t&&Be(r,t)||(this.hover=t,this.emit("skdx-highlighted-change",t),this.highlightState=t,this.syncId&&this.publish({highlighted:t}))}select(t){let r=this.selectionMode;r!=="none"&&this.setSelected(Re(this.selected??this.selectedState,t,r==="single"?"single":"multiple"))}shareCrosshair(t){!this.syncId||this.lastCross===t||(this.lastCross=t,this.publish({crosshair:t}))}clearTip(){this.tip=[],this.portal=null,this.shareCrosshair(null)}canZoom(t){return!!(t.hit&&(this.zoomable||t.hit.brush))}canPan(t){return!!(t.map&&this.zoomable)}canEdit(t){return!!(this.editable&&t.edit)}brushing(){return this.selectionMode==="brush"||this.selectionMode==="lasso"}viewBox(t,r){return W(t.currentTarget,t.clientX,t.clientY,r.width,r.height)}getSvgElement(){return this.renderRoot.querySelector("svg")}getLayout(){return this.layout}resetZoom(){this.setZoom(void 0)}zoomTo(t){this.setZoom(t)}focusItem(t){let r=this.layout;if(!r)return!1;let i=r.shapes.findIndex(o=>o.item&&!o.item.legend&&F(o.item,t));return i<0?!1:(this.getSvgElement()?.focus(),this.focused=i,!0)}export(t){let r=this.layout;return r?ct(r,{...t,label:t.label??this.label??this.localName}):Promise.reject(new Error("not rendered yet"))}root(t,r,i){this.join();let o=Ne(Le(t),this.sized());if(this.layout=o,o.issues!==this.reported){this.reported=o.issues;for(let y of o.issues??[])this.emit("skdx-data-issue",y)}let s=this.canZoom(o),a=this.canPan(o),l=this.canEdit(o),d=this.brushing(),u=s||a||l||d,p=!o.decorative&&we(o).length>0,b=pt(o),I=dt(o,this.accessibleTable),T=typeof this.accessibleTable=="object"&&this.accessibleTable.caption||i,M=this.portal;return m.html`<svg
4
4
  xmlns="http://www.w3.org/2000/svg"
5
5
  viewBox="0 0 ${o.width} ${o.height}"
6
6
  width=${o.width}
@@ -42,18 +42,18 @@
42
42
  >
43
43
  ${M.lines.map(y=>m.html`<div>${y}</div>`)}
44
44
  </div>`:m.nothing}
45
- ${T?m.html`<table data-skdx-table=${r}>
45
+ ${I?m.html`<table data-skdx-table=${r}>
46
46
  <caption>
47
- ${$}
47
+ ${T}
48
48
  </caption>
49
49
  <thead>
50
50
  <tr>
51
- ${(T[0]??[]).map(y=>m.html`<th scope="col">${y}</th>`)}
51
+ ${(I[0]??[]).map(y=>m.html`<th scope="col">${y}</th>`)}
52
52
  </tr>
53
53
  </thead>
54
54
  <tbody>
55
- ${T.slice(1).map(y=>m.html`<tr>
56
- ${y.map((C,z)=>z===0?m.html`<th scope="row">${C}</th>`:m.html`<td>${C}</td>`)}
55
+ ${I.slice(1).map(y=>m.html`<tr>
56
+ ${y.map(($,z)=>z===0?m.html`<th scope="row">${$}</th>`:m.html`<td>${$}</td>`)}
57
57
  </tr>`)}
58
58
  </tbody>
59
59
  </table>`:m.nothing}`}};g.styles=m.css`
@@ -109,4 +109,4 @@
109
109
  [role='tooltip'] > :first-child:not(:only-child) {
110
110
  font-weight: bold;
111
111
  }
112
- `,c([(0,h.property)({type:Number})],g.prototype,"width",2),c([(0,h.property)({type:Number})],g.prototype,"height",2),c([(0,h.property)()],g.prototype,"label",2),c([(0,h.property)({type:Boolean,reflect:!0})],g.prototype,"legend",2),c([(0,h.property)({type:Boolean,attribute:"no-tooltip",converter:Se})],g.prototype,"tooltip",2),c([(0,h.property)({attribute:!1})],g.prototype,"format",2),c([(0,h.property)({attribute:!1})],g.prototype,"palette",2),c([(0,h.property)({attribute:!1})],g.prototype,"hiddenSeries",2),c([(0,h.property)({attribute:!1})],g.prototype,"selected",2),c([(0,h.property)({attribute:"selection-mode"})],g.prototype,"selectionMode",2),c([(0,h.property)({attribute:!1})],g.prototype,"highlighted",2),c([(0,h.property)({attribute:!1})],g.prototype,"highlightScope",2),c([(0,h.property)({type:Boolean,reflect:!0})],g.prototype,"loading",2),c([(0,h.property)()],g.prototype,"error",2),c([(0,h.property)({attribute:"empty-message"})],g.prototype,"emptyMessage",2),c([(0,h.property)()],g.prototype,"description",2),c([(0,h.property)({type:Boolean,reflect:!0})],g.prototype,"decorative",2),c([(0,h.property)({type:Boolean,attribute:"accessible-table"})],g.prototype,"accessibleTable",2),c([(0,h.property)({attribute:!1})],g.prototype,"zoom",2),c([(0,h.property)({attribute:!1})],g.prototype,"view",2),c([(0,h.property)({type:Boolean,reflect:!0})],g.prototype,"zoomable",2),c([(0,h.property)({type:Boolean,reflect:!0})],g.prototype,"editable",2),c([(0,h.property)({attribute:"sync-id"})],g.prototype,"syncId",2),c([(0,h.property)({type:Boolean,attribute:"cross-filter"})],g.prototype,"crossFilter",2),c([(0,h.property)({converter:{fromAttribute:t=>t===null?!1:t===""?!0:Number(t)}})],g.prototype,"animated",2),c([(0,h.property)({type:Boolean,reflect:!0})],g.prototype,"responsive",2),c([(0,h.state)()],g.prototype,"tip",2),c([(0,h.state)()],g.prototype,"overlay",2),c([(0,h.state)()],g.prototype,"portal",2),c([(0,h.state)()],g.prototype,"measured",2),c([(0,h.state)()],g.prototype,"viewState",2),c([(0,h.state)()],g.prototype,"highlightState",2),c([(0,h.state)()],g.prototype,"crossState",2),c([(0,h.state)()],g.prototype,"focused",2),c([(0,h.state)()],g.prototype,"hiddenState",2),c([(0,h.state)()],g.prototype,"zoomState",2),c([(0,h.state)()],g.prototype,"selectedState",2);var k=class extends g{constructor(){super(...arguments);this.series=[];this.labels=!1;this.connectNulls=!1;this.stacked=!1;this.brush=!1;this.crosshair=!1}input(){let{series:t,categories:r,xAxis:i,yAxis:o,rightAxis:s,references:a,annotations:l,labels:d,curve:u,connectNulls:p,nulls:b,stacked:T,stackOffset:$,orientation:M,radius:y,barGap:C,barWidth:z,sort:P,transform:R,transforms:ne,bins:re,binWidth:ie,binDomain:E,binMode:oe,sampling:Ce,brush:se,crosshair:$e}=this;return{...this.sized(),series:t,categories:r,xAxis:i,yAxis:o,rightAxis:s,references:a,annotations:l,labels:d,curve:u,connectNulls:p,nulls:b,stacked:T,stackOffset:$,orientation:M,radius:y,barGap:C,barWidth:z,sort:P,transform:R,transforms:ne,bins:re,binWidth:ie,binDomain:E,binMode:oe,sampling:Ce,brush:se,crosshair:$e}}};c([(0,h.property)({attribute:!1})],k.prototype,"series",2),c([(0,h.property)({attribute:!1})],k.prototype,"categories",2),c([(0,h.property)({attribute:!1})],k.prototype,"xAxis",2),c([(0,h.property)({attribute:!1})],k.prototype,"yAxis",2),c([(0,h.property)({attribute:!1})],k.prototype,"rightAxis",2),c([(0,h.property)({attribute:!1})],k.prototype,"references",2),c([(0,h.property)({attribute:!1})],k.prototype,"annotations",2),c([(0,h.property)({type:Boolean,reflect:!0})],k.prototype,"labels",2),c([(0,h.property)()],k.prototype,"curve",2),c([(0,h.property)({type:Boolean,attribute:"connect-nulls"})],k.prototype,"connectNulls",2),c([(0,h.property)()],k.prototype,"nulls",2),c([(0,h.property)({reflect:!0,converter:{fromAttribute:t=>t==="percent"?"percent":t!==null}})],k.prototype,"stacked",2),c([(0,h.property)({attribute:"stack-offset"})],k.prototype,"stackOffset",2),c([(0,h.property)()],k.prototype,"orientation",2),c([(0,h.property)({type:Number})],k.prototype,"radius",2),c([(0,h.property)({type:Number,attribute:"bar-gap"})],k.prototype,"barGap",2),c([(0,h.property)({type:Number,attribute:"bar-width"})],k.prototype,"barWidth",2),c([(0,h.property)()],k.prototype,"sort",2),c([(0,h.property)()],k.prototype,"transform",2),c([(0,h.property)({attribute:!1})],k.prototype,"transforms",2),c([(0,h.property)({type:Number})],k.prototype,"bins",2),c([(0,h.property)({type:Number,attribute:"bin-width"})],k.prototype,"binWidth",2),c([(0,h.property)({attribute:!1})],k.prototype,"binDomain",2),c([(0,h.property)({attribute:"bin-mode"})],k.prototype,"binMode",2),c([(0,h.property)({attribute:!1})],k.prototype,"sampling",2),c([(0,h.property)({type:Boolean,reflect:!0})],k.prototype,"brush",2),c([(0,h.property)({type:Boolean,reflect:!0})],k.prototype,"crosshair",2);var mn=e=>e.defs&&e.defs.length?m.svg`<defs>${e.defs.map(n=>m.svg`<linearGradient id=${n.id} x1="0" y1="0" x2=${n.vertical===!1?1:0} y2=${n.vertical===!1?0:1}>${n.stops.map(t=>m.svg`<stop offset=${t.offset} stop-color=${t.color} stop-opacity=${(0,v.ifDefined)(t.opacity)}></stop>`)}</linearGradient>`)}</defs>`:m.nothing,Me=e=>m.svg`${e.map((n,t)=>{let r=n.title?m.svg`<title>${n.title}</title>`:m.nothing,i=n.item?t:void 0;switch(n.kind){case"path":return m.svg`<path data-skdx-part=${n.part} data-skdx-i=${(0,v.ifDefined)(i)} d=${n.d} fill=${n.fill??"none"} stroke=${(0,v.ifDefined)(n.stroke)} stroke-width=${(0,v.ifDefined)(n.strokeWidth)} stroke-linecap=${(0,v.ifDefined)(n.strokeLinecap)} stroke-linejoin=${(0,v.ifDefined)(n.strokeLinejoin)} stroke-dasharray=${(0,v.ifDefined)(n.dash)} opacity=${(0,v.ifDefined)(n.opacity)} fill-opacity=${(0,v.ifDefined)(n.fillOpacity)}>${r}</path>`;case"rect":return m.svg`<rect data-skdx-part=${n.part} data-skdx-i=${(0,v.ifDefined)(i)} x=${n.x} y=${n.y} width=${n.width} height=${n.height} rx=${(0,v.ifDefined)(n.rx)} style=${(0,v.ifDefined)(xe(n.part)?`rx:${xe(n.part)}`:void 0)} fill=${n.fill} stroke=${(0,v.ifDefined)(n.stroke)} fill-opacity=${(0,v.ifDefined)(n.opacity)} pointer-events=${(0,v.ifDefined)(n.part==="stage-label-background"||n.part==="label-background"?"none":void 0)}>${r}</rect>`;case"line":return m.svg`<line data-skdx-part=${n.part} data-skdx-i=${(0,v.ifDefined)(i)} x1=${n.x1} y1=${n.y1} x2=${n.x2} y2=${n.y2} stroke=${n.stroke} stroke-width=${(0,v.ifDefined)(n.strokeWidth)} stroke-dasharray=${(0,v.ifDefined)(n.dash)} opacity=${(0,v.ifDefined)(n.opacity)}>${r}</line>`;case"circle":return m.svg`<circle data-skdx-part=${n.part} data-skdx-i=${(0,v.ifDefined)(i)} cx=${n.cx} cy=${n.cy} r=${n.r} fill=${n.fill} stroke=${(0,v.ifDefined)(n.stroke)} opacity=${(0,v.ifDefined)(n.opacity)}>${r}</circle>`;case"text":return m.svg`<text aria-label=${(0,v.ifDefined)(n.title)} data-skdx-part=${n.part} data-skdx-i=${(0,v.ifDefined)(i)} x=${n.x} y=${n.y} text-anchor=${(0,v.ifDefined)(n.anchor)} dominant-baseline=${(0,v.ifDefined)(n.baseline)} fill=${(0,v.ifDefined)(n.fill)} font-weight=${(0,v.ifDefined)(n.weight)} pointer-events=${(0,v.ifDefined)(i===void 0?"none":void 0)} transform=${(0,v.ifDefined)(n.rotate?`rotate(${n.rotate} ${n.x} ${n.y})`:void 0)}>${n.text}</text>`}})}`;var O=class extends g{constructor(){super(...arguments);this.series=[];this.fill=!0;this.markers=!0;this.labels=!1}render(){let{series:t,categories:r,metrics:i,normalized:o,max:s,fill:a,levels:l,markers:d,markerSize:u,labels:p,startAngle:b,gridShape:T}=this;return this.root(De({...this.sized(),series:t,categories:r,metrics:i,normalize:o,max:s,fill:a,levels:l,markers:d,markerSize:u,labels:p,startAngle:b,gridShape:T}),"radar",this.label??"Radar chart")}};c([(0,L.property)({attribute:!1})],O.prototype,"series",2),c([(0,L.property)({attribute:!1})],O.prototype,"categories",2),c([(0,L.property)({attribute:!1})],O.prototype,"metrics",2),c([(0,L.property)({attribute:!1})],O.prototype,"normalized",2),c([(0,L.property)({type:Number})],O.prototype,"max",2),c([(0,L.property)({type:Boolean,attribute:"no-fill",converter:Se})],O.prototype,"fill",2),c([(0,L.property)({type:Number})],O.prototype,"levels",2),c([(0,L.property)({type:Boolean,attribute:"no-markers",converter:Se})],O.prototype,"markers",2),c([(0,L.property)({type:Number,attribute:"marker-size"})],O.prototype,"markerSize",2),c([(0,L.property)({type:Boolean,reflect:!0})],O.prototype,"labels",2),c([(0,L.property)({type:Number,attribute:"start-angle"})],O.prototype,"startAngle",2),c([(0,L.property)({attribute:"grid-shape"})],O.prototype,"gridShape",2),O=c([(0,L.customElement)("skdx-radar-chart")],O);0&&(module.exports={SkdxRadarChart});
112
+ `,c([(0,h.property)({type:Number})],g.prototype,"width",2),c([(0,h.property)({type:Number})],g.prototype,"height",2),c([(0,h.property)()],g.prototype,"label",2),c([(0,h.property)({type:Boolean,reflect:!0})],g.prototype,"legend",2),c([(0,h.property)({type:Boolean,attribute:"no-tooltip",converter:Se})],g.prototype,"tooltip",2),c([(0,h.property)({attribute:!1})],g.prototype,"format",2),c([(0,h.property)({attribute:!1})],g.prototype,"palette",2),c([(0,h.property)({attribute:!1})],g.prototype,"hiddenSeries",2),c([(0,h.property)({attribute:!1})],g.prototype,"selected",2),c([(0,h.property)({attribute:"selection-mode"})],g.prototype,"selectionMode",2),c([(0,h.property)({attribute:!1})],g.prototype,"highlighted",2),c([(0,h.property)({attribute:!1})],g.prototype,"highlightScope",2),c([(0,h.property)({type:Boolean,reflect:!0})],g.prototype,"loading",2),c([(0,h.property)()],g.prototype,"error",2),c([(0,h.property)({attribute:"empty-message"})],g.prototype,"emptyMessage",2),c([(0,h.property)()],g.prototype,"description",2),c([(0,h.property)({type:Boolean,reflect:!0})],g.prototype,"decorative",2),c([(0,h.property)({type:Boolean,attribute:"accessible-table"})],g.prototype,"accessibleTable",2),c([(0,h.property)({attribute:!1})],g.prototype,"zoom",2),c([(0,h.property)({attribute:!1})],g.prototype,"view",2),c([(0,h.property)({type:Boolean,reflect:!0})],g.prototype,"zoomable",2),c([(0,h.property)({type:Boolean,reflect:!0})],g.prototype,"editable",2),c([(0,h.property)({attribute:"sync-id"})],g.prototype,"syncId",2),c([(0,h.property)({type:Boolean,attribute:"cross-filter"})],g.prototype,"crossFilter",2),c([(0,h.property)({converter:{fromAttribute:t=>t===null?!1:t===""?!0:Number(t)}})],g.prototype,"animated",2),c([(0,h.property)({type:Boolean,reflect:!0})],g.prototype,"responsive",2),c([(0,h.state)()],g.prototype,"tip",2),c([(0,h.state)()],g.prototype,"overlay",2),c([(0,h.state)()],g.prototype,"portal",2),c([(0,h.state)()],g.prototype,"measured",2),c([(0,h.state)()],g.prototype,"viewState",2),c([(0,h.state)()],g.prototype,"highlightState",2),c([(0,h.state)()],g.prototype,"crossState",2),c([(0,h.state)()],g.prototype,"focused",2),c([(0,h.state)()],g.prototype,"hiddenState",2),c([(0,h.state)()],g.prototype,"zoomState",2),c([(0,h.state)()],g.prototype,"selectedState",2);var k=class extends g{constructor(){super(...arguments);this.series=[];this.labels=!1;this.connectNulls=!1;this.stacked=!1;this.brush=!1;this.crosshair=!1}input(){let{series:t,categories:r,xAxis:i,yAxis:o,rightAxis:s,references:a,annotations:l,labels:d,curve:u,connectNulls:p,nulls:b,stacked:I,stackOffset:T,orientation:M,radius:y,barGap:$,barWidth:z,sort:P,transform:N,transforms:ne,bins:re,binWidth:ie,binDomain:E,binMode:oe,sampling:$e,brush:se,crosshair:Ce}=this;return{...this.sized(),series:t,categories:r,xAxis:i,yAxis:o,rightAxis:s,references:a,annotations:l,labels:d,curve:u,connectNulls:p,nulls:b,stacked:I,stackOffset:T,orientation:M,radius:y,barGap:$,barWidth:z,sort:P,transform:N,transforms:ne,bins:re,binWidth:ie,binDomain:E,binMode:oe,sampling:$e,brush:se,crosshair:Ce,...this.compactOverrides()}}};c([(0,h.property)({attribute:!1})],k.prototype,"series",2),c([(0,h.property)({attribute:!1})],k.prototype,"categories",2),c([(0,h.property)({attribute:!1})],k.prototype,"xAxis",2),c([(0,h.property)({attribute:!1})],k.prototype,"yAxis",2),c([(0,h.property)({attribute:!1})],k.prototype,"rightAxis",2),c([(0,h.property)({attribute:!1})],k.prototype,"references",2),c([(0,h.property)({attribute:!1})],k.prototype,"annotations",2),c([(0,h.property)({type:Boolean,reflect:!0})],k.prototype,"labels",2),c([(0,h.property)()],k.prototype,"curve",2),c([(0,h.property)({type:Boolean,attribute:"connect-nulls"})],k.prototype,"connectNulls",2),c([(0,h.property)()],k.prototype,"nulls",2),c([(0,h.property)({reflect:!0,converter:{fromAttribute:t=>t==="percent"?"percent":t!==null}})],k.prototype,"stacked",2),c([(0,h.property)({attribute:"stack-offset"})],k.prototype,"stackOffset",2),c([(0,h.property)()],k.prototype,"orientation",2),c([(0,h.property)({type:Number})],k.prototype,"radius",2),c([(0,h.property)({type:Number,attribute:"bar-gap"})],k.prototype,"barGap",2),c([(0,h.property)({type:Number,attribute:"bar-width"})],k.prototype,"barWidth",2),c([(0,h.property)()],k.prototype,"sort",2),c([(0,h.property)()],k.prototype,"transform",2),c([(0,h.property)({attribute:!1})],k.prototype,"transforms",2),c([(0,h.property)({type:Number})],k.prototype,"bins",2),c([(0,h.property)({type:Number,attribute:"bin-width"})],k.prototype,"binWidth",2),c([(0,h.property)({attribute:!1})],k.prototype,"binDomain",2),c([(0,h.property)({attribute:"bin-mode"})],k.prototype,"binMode",2),c([(0,h.property)({attribute:!1})],k.prototype,"sampling",2),c([(0,h.property)({type:Boolean,reflect:!0})],k.prototype,"brush",2),c([(0,h.property)({type:Boolean,reflect:!0})],k.prototype,"crosshair",2);var mn=e=>e.defs&&e.defs.length?m.svg`<defs>${e.defs.map(n=>m.svg`<linearGradient id=${n.id} x1="0" y1="0" x2=${n.vertical===!1?1:0} y2=${n.vertical===!1?0:1}>${n.stops.map(t=>m.svg`<stop offset=${t.offset} stop-color=${t.color} stop-opacity=${(0,v.ifDefined)(t.opacity)}></stop>`)}</linearGradient>`)}</defs>`:m.nothing,Me=e=>m.svg`${e.map((n,t)=>{let r=n.title?m.svg`<title>${n.title}</title>`:m.nothing,i=n.item?t:void 0;switch(n.kind){case"path":return m.svg`<path data-skdx-part=${n.part} data-skdx-i=${(0,v.ifDefined)(i)} d=${n.d} fill=${n.fill??"none"} stroke=${(0,v.ifDefined)(n.stroke)} stroke-width=${(0,v.ifDefined)(n.strokeWidth)} stroke-linecap=${(0,v.ifDefined)(n.strokeLinecap)} stroke-linejoin=${(0,v.ifDefined)(n.strokeLinejoin)} stroke-dasharray=${(0,v.ifDefined)(n.dash)} opacity=${(0,v.ifDefined)(n.opacity)} fill-opacity=${(0,v.ifDefined)(n.fillOpacity)}>${r}</path>`;case"rect":return m.svg`<rect data-skdx-part=${n.part} data-skdx-i=${(0,v.ifDefined)(i)} x=${n.x} y=${n.y} width=${n.width} height=${n.height} rx=${(0,v.ifDefined)(n.rx)} style=${(0,v.ifDefined)(xe(n.part)?`rx:${xe(n.part)}`:void 0)} fill=${n.fill} stroke=${(0,v.ifDefined)(n.stroke)} fill-opacity=${(0,v.ifDefined)(n.opacity)} pointer-events=${(0,v.ifDefined)(n.part==="stage-label-background"||n.part==="label-background"?"none":void 0)}>${r}</rect>`;case"line":return m.svg`<line data-skdx-part=${n.part} data-skdx-i=${(0,v.ifDefined)(i)} x1=${n.x1} y1=${n.y1} x2=${n.x2} y2=${n.y2} stroke=${n.stroke} stroke-width=${(0,v.ifDefined)(n.strokeWidth)} stroke-dasharray=${(0,v.ifDefined)(n.dash)} opacity=${(0,v.ifDefined)(n.opacity)}>${r}</line>`;case"circle":return m.svg`<circle data-skdx-part=${n.part} data-skdx-i=${(0,v.ifDefined)(i)} cx=${n.cx} cy=${n.cy} r=${n.r} fill=${n.fill} stroke=${(0,v.ifDefined)(n.stroke)} opacity=${(0,v.ifDefined)(n.opacity)}>${r}</circle>`;case"text":return m.svg`<text aria-label=${(0,v.ifDefined)(n.title)} data-skdx-part=${n.part} data-skdx-i=${(0,v.ifDefined)(i)} x=${n.x} y=${n.y} text-anchor=${(0,v.ifDefined)(n.anchor)} dominant-baseline=${(0,v.ifDefined)(n.baseline)} fill=${(0,v.ifDefined)(n.fill)} font-weight=${(0,v.ifDefined)(n.weight)} pointer-events=${(0,v.ifDefined)(i===void 0?"none":void 0)} transform=${(0,v.ifDefined)(n.rotate?`rotate(${n.rotate} ${n.x} ${n.y})`:void 0)}>${n.text}</text>`}})}`;var O=class extends g{constructor(){super(...arguments);this.series=[];this.fill=!0;this.markers=!0;this.labels=!1}render(){let{series:t,categories:r,metrics:i,normalized:o,max:s,fill:a,levels:l,markers:d,markerSize:u,labels:p,startAngle:b,gridShape:I}=this;return this.root(De({...this.sized(),series:t,categories:r,metrics:i,normalize:o,max:s,fill:a,levels:l,markers:d,markerSize:u,labels:p,startAngle:b,gridShape:I,...this.compactOverrides()}),"radar",this.label??"Radar chart")}};c([(0,L.property)({attribute:!1})],O.prototype,"series",2),c([(0,L.property)({attribute:!1})],O.prototype,"categories",2),c([(0,L.property)({attribute:!1})],O.prototype,"metrics",2),c([(0,L.property)({attribute:!1})],O.prototype,"normalized",2),c([(0,L.property)({type:Number})],O.prototype,"max",2),c([(0,L.property)({type:Boolean,attribute:"no-fill",converter:Se})],O.prototype,"fill",2),c([(0,L.property)({type:Number})],O.prototype,"levels",2),c([(0,L.property)({type:Boolean,attribute:"no-markers",converter:Se})],O.prototype,"markers",2),c([(0,L.property)({type:Number,attribute:"marker-size"})],O.prototype,"markerSize",2),c([(0,L.property)({type:Boolean,reflect:!0})],O.prototype,"labels",2),c([(0,L.property)({type:Number,attribute:"start-angle"})],O.prototype,"startAngle",2),c([(0,L.property)({attribute:"grid-shape"})],O.prototype,"gridShape",2),O=c([(0,L.customElement)("skdx-radar-chart")],O);0&&(module.exports={SkdxRadarChart});
package/dist/radar.d.cts CHANGED
@@ -1,2 +1,3 @@
1
1
  import 'lit';
2
- export { aD as SkdxRadarChart } from './index-D44-61v7.cjs';
2
+ import './types-DPf3PUs2.cjs';
3
+ export { D as SkdxRadarChart } from './index-Hexgp_4S.cjs';
package/dist/radar.d.ts CHANGED
@@ -1,2 +1,3 @@
1
1
  import 'lit';
2
- export { aD as SkdxRadarChart } from './index-D44-61v7.js';
2
+ import './types-DPf3PUs2.js';
3
+ export { D as SkdxRadarChart } from './index-pqdWxinA.js';