@rubin-epo/epo-widget-lib 1.0.8 → 1.1.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 (127) hide show
  1. package/dist/ColorTool.d.ts +2 -2
  2. package/dist/FilterTool.d.ts +2 -2
  3. package/dist/IsochronePlot.js +15 -16
  4. package/dist/SupernovaThreeVector.cjs +1 -1
  5. package/dist/SupernovaThreeVector.js +89 -84
  6. package/dist/ViewIndicator.cjs +1 -0
  7. package/dist/ViewIndicator.d.ts +3 -0
  8. package/dist/ViewIndicator.js +143 -0
  9. package/dist/atomic/Blinker/Controls/Controls.cjs +1 -1
  10. package/dist/atomic/Blinker/Controls/Controls.js +24 -25
  11. package/dist/charts/Bars/index.cjs +1 -1
  12. package/dist/charts/Bars/index.js +19 -21
  13. package/dist/charts/Base/index.cjs +1 -1
  14. package/dist/charts/Base/index.js +22 -23
  15. package/dist/charts/Base/styles.d.ts +1 -1
  16. package/dist/charts/ClippingContainer/index.cjs +1 -1
  17. package/dist/charts/ClippingContainer/index.js +9 -10
  18. package/dist/charts/ForeignObject/index.cjs +1 -1
  19. package/dist/charts/ForeignObject/index.js +8 -9
  20. package/dist/charts/Guidelines/index.cjs +1 -1
  21. package/dist/charts/Guidelines/index.js +11 -13
  22. package/dist/charts/PathFromPoints/index.js +1 -2
  23. package/dist/charts/Points/ErrorBar.cjs +1 -1
  24. package/dist/charts/Points/ErrorBar.js +9 -10
  25. package/dist/charts/Points/index.cjs +1 -1
  26. package/dist/charts/Points/index.js +30 -31
  27. package/dist/charts/Readout/index.cjs +1 -1
  28. package/dist/charts/Readout/index.js +24 -17
  29. package/dist/charts/ScatterPlot/index.cjs +1 -1
  30. package/dist/charts/ScatterPlot/index.js +79 -77
  31. package/dist/charts/Tooltip/index.cjs +1 -1
  32. package/dist/charts/Tooltip/index.js +14 -15
  33. package/dist/charts/Viewport/index.cjs +1 -1
  34. package/dist/charts/Viewport/index.js +13 -14
  35. package/dist/charts/XAxis/index.cjs +1 -1
  36. package/dist/charts/XAxis/index.js +22 -24
  37. package/dist/charts/YAxis/index.cjs +1 -1
  38. package/dist/charts/YAxis/index.js +17 -18
  39. package/dist/charts/canvas/Points/index.cjs +1 -1
  40. package/dist/charts/canvas/Points/index.js +27 -29
  41. package/dist/charts/defaults.cjs +1 -1
  42. package/dist/charts/defaults.js +13 -13
  43. package/dist/charts/styles.d.ts +6 -6
  44. package/dist/layout/Controls/index.d.ts +1 -1
  45. package/dist/lib/reimg.cjs +1 -1
  46. package/dist/lib/reimg.js +19 -19
  47. package/dist/lib/utils.cjs +1 -1
  48. package/dist/lib/utils.js +11 -15
  49. package/dist/widgets/CameraFilter/styles.d.ts +5 -5
  50. package/dist/widgets/ColorTool/Actions/Export/index.cjs +1 -1
  51. package/dist/widgets/ColorTool/Actions/Export/index.js +17 -18
  52. package/dist/widgets/ColorTool/Actions/index.cjs +1 -1
  53. package/dist/widgets/ColorTool/Actions/index.d.ts +1 -1
  54. package/dist/widgets/ColorTool/Actions/index.js +21 -22
  55. package/dist/widgets/ColorTool/FilterControls/FilterControls.cjs +1 -1
  56. package/dist/widgets/ColorTool/FilterControls/FilterControls.d.ts +1 -1
  57. package/dist/widgets/ColorTool/FilterControls/FilterControls.js +32 -33
  58. package/dist/widgets/ColorTool/FilterControls/styles.d.ts +1 -1
  59. package/dist/widgets/ColorTool/ImageComposite/ImageComposite.cjs +1 -1
  60. package/dist/widgets/ColorTool/ImageComposite/ImageComposite.d.ts +1 -1
  61. package/dist/widgets/ColorTool/ImageComposite/ImageComposite.js +22 -23
  62. package/dist/widgets/ColorTool/__mocks__/index.d.ts +15 -0
  63. package/dist/widgets/ColorTool/hooks/useFilteredImages.cjs +1 -1
  64. package/dist/widgets/ColorTool/hooks/useFilteredImages.d.ts +1 -1
  65. package/dist/widgets/ColorTool/hooks/useFilteredImages.js +9 -10
  66. package/dist/widgets/ColorTool/index.d.ts +46 -1
  67. package/dist/widgets/ColorTool/lib/server.d.ts +1 -1
  68. package/dist/widgets/ColorTool/lib/utils.d.ts +1 -1
  69. package/dist/widgets/FilterTool/index.d.ts +12 -1
  70. package/dist/widgets/FilterTool/styles.d.ts +6 -6
  71. package/dist/widgets/IsochronePlot/A11Y/CurveFit.cjs +1 -1
  72. package/dist/widgets/IsochronePlot/A11Y/CurveFit.js +22 -23
  73. package/dist/widgets/IsochronePlot/Controls/index.cjs +1 -1
  74. package/dist/widgets/IsochronePlot/Controls/index.js +22 -23
  75. package/dist/widgets/IsochronePlot/defaults.cjs +1 -1
  76. package/dist/widgets/IsochronePlot/defaults.js +2 -2
  77. package/dist/widgets/LightCurvePlot/Plot/index.cjs +1 -1
  78. package/dist/widgets/LightCurvePlot/Plot/index.js +28 -29
  79. package/dist/widgets/LightCurvePlot/PlotWithCurve/A11Y/LightCurveLabel/index.cjs +1 -1
  80. package/dist/widgets/LightCurvePlot/PlotWithCurve/A11Y/LightCurveLabel/index.js +20 -21
  81. package/dist/widgets/LightCurvePlot/PlotWithCurve/DM15Display/index.cjs +1 -1
  82. package/dist/widgets/LightCurvePlot/PlotWithCurve/DM15Display/index.js +11 -12
  83. package/dist/widgets/LightCurvePlot/PlotWithCurve/MagnitudeSlider/index.cjs +1 -1
  84. package/dist/widgets/LightCurvePlot/PlotWithCurve/MagnitudeSlider/index.js +20 -21
  85. package/dist/widgets/LightCurvePlot/PlotWithCurve/styles.js +2 -2
  86. package/dist/widgets/LightCurvePlot/defaults.cjs +1 -1
  87. package/dist/widgets/LightCurvePlot/defaults.js +2 -2
  88. package/dist/widgets/SourceSelector/SourceMap/index.cjs +1 -1
  89. package/dist/widgets/SourceSelector/SourceMap/index.js +12 -13
  90. package/dist/widgets/SourceSelector/SourceMap/styles.d.ts +2 -2
  91. package/dist/widgets/SourceSelector/SourceSelector.cjs +1 -1
  92. package/dist/widgets/SourceSelector/SourceSelector.js +39 -44
  93. package/dist/widgets/SupernovaThreeVector/Histogram/index.cjs +1 -1
  94. package/dist/widgets/SupernovaThreeVector/Histogram/index.js +36 -36
  95. package/dist/widgets/SupernovaThreeVector/Histogram/styles.d.ts +1 -1
  96. package/dist/widgets/SupernovaThreeVector/LiveLabel/index.cjs +1 -1
  97. package/dist/widgets/SupernovaThreeVector/LiveLabel/index.js +16 -17
  98. package/dist/widgets/SupernovaThreeVector/Skymap/index.cjs +1 -1
  99. package/dist/widgets/SupernovaThreeVector/Skymap/index.js +63 -58
  100. package/dist/widgets/SupernovaThreeVector/Skymap/styles.d.ts +7 -7
  101. package/dist/widgets/SupernovaThreeVector/styles.cjs +13 -19
  102. package/dist/widgets/SupernovaThreeVector/styles.js +21 -31
  103. package/dist/widgets/ViewIndicator/index.d.ts +13 -0
  104. package/dist/widgets/ViewIndicator/styles.cjs +52 -0
  105. package/dist/widgets/ViewIndicator/styles.d.ts +4402 -0
  106. package/dist/widgets/ViewIndicator/styles.js +67 -0
  107. package/package.json +65 -5
  108. package/dist/CameraFilter.cjs +0 -1
  109. package/dist/CameraFilter.d.ts +0 -3
  110. package/dist/CameraFilter.js +0 -102
  111. package/dist/Charts.cjs +0 -1
  112. package/dist/Charts.d.ts +0 -1
  113. package/dist/Charts.js +0 -24
  114. package/dist/widgets/CameraFilter/CondensedFilterRanges/CondensedFilterRanges.cjs +0 -1
  115. package/dist/widgets/CameraFilter/CondensedFilterRanges/CondensedFilterRanges.js +0 -62
  116. package/dist/widgets/CameraFilter/SpectrumDisplay/ColorLabels/ColorLabels.cjs +0 -1
  117. package/dist/widgets/CameraFilter/SpectrumDisplay/ColorLabels/ColorLabels.js +0 -100
  118. package/dist/widgets/CameraFilter/SpectrumDisplay/SpectrumDisplay.cjs +0 -1
  119. package/dist/widgets/CameraFilter/SpectrumDisplay/SpectrumDisplay.js +0 -98
  120. package/dist/widgets/CameraFilter/SpectrumDisplay/SpectrumLabels/SpectrumLabels.cjs +0 -1
  121. package/dist/widgets/CameraFilter/SpectrumDisplay/SpectrumLabels/SpectrumLabels.js +0 -59
  122. package/dist/widgets/CameraFilter/data.cjs +0 -1
  123. package/dist/widgets/CameraFilter/data.js +0 -84
  124. package/dist/widgets/CameraFilter/styles.cjs +0 -105
  125. package/dist/widgets/CameraFilter/styles.js +0 -128
  126. package/dist/widgets/ColorTool/ColorTool.d.ts +0 -46
  127. package/dist/widgets/FilterTool/FilterTool.d.ts +0 -12
@@ -1,3 +1,3 @@
1
- export * from './widgets/ColorTool/ColorTool'
2
- import _default from './widgets/ColorTool/ColorTool'
1
+ export * from './widgets/ColorTool/index'
2
+ import _default from './widgets/ColorTool/index'
3
3
  export default _default
@@ -1,3 +1,3 @@
1
- export * from './widgets/FilterTool/FilterTool'
2
- import _default from './widgets/FilterTool/FilterTool'
1
+ export * from './widgets/FilterTool/index'
2
+ import _default from './widgets/FilterTool/index'
3
3
  export default _default
@@ -17,14 +17,13 @@ import nt from "./widgets/IsochronePlot/A11Y/CurveFit.js";
17
17
  import { ageToGyrs as at, distanceToLyrs as lt } from "./widgets/IsochronePlot/helpers.js";
18
18
  import { PlotWrapper as mt } from "./atomic/PlotWrapper/styles.js";
19
19
  const ct = (t) => t ? t < parseFloat(j("BREAK_PHABLET_MIN")) ? s.pointRadius.md : t < parseFloat(j("BREAK_LARGE_TABLET")) ? s.pointRadius.sm : s.pointRadius.lg : s.pointRadius.lg, E = (t, n, r = 2) => {
20
- if (r < 0)
21
- return "";
20
+ if (r < 0) return "";
22
21
  const i = t.toFixed(r);
23
22
  return n.includes(i) ? i : E(t, n, r - 1);
24
23
  }, dt = (t, n, r, i) => {
25
24
  const u = E(t, Object.keys(i)), l = i[u];
26
25
  return l ? l.map(({ x: g, y: f }) => ({ x: n(g), y: r(f) })) : [];
27
- }, Dt = ({
26
+ }, It = ({
28
27
  data: t,
29
28
  value: n,
30
29
  ageLibrary: r,
@@ -67,7 +66,7 @@ const ct = (t) => t ? t < parseFloat(j("BREAK_PHABLET_MIN")) ? s.pointRadius.md
67
66
  distance: (o) => lt(o).toLocaleString(v, {
68
67
  maximumFractionDigits: 0
69
68
  })
70
- }, B = {
69
+ }, D = {
71
70
  age: L.age(d),
72
71
  distance: L.distance(F)
73
72
  }, G = /* @__PURE__ */ e(mt, { ref: z, children: /* @__PURE__ */ e(
@@ -90,18 +89,18 @@ const ct = (t) => t ? t < parseFloat(j("BREAK_PHABLET_MIN")) ? s.pointRadius.md
90
89
  xScale: p,
91
90
  yScale: R,
92
91
  yStart: S,
93
- yEnd: D,
94
- xStart: I,
92
+ yEnd: I,
93
+ xStart: T,
95
94
  xEnd: N,
96
95
  yDomain: $
97
96
  }) => {
98
- const T = dt(d, p, R, _), K = R(F + $[1]);
97
+ const B = dt(d, p, R, _), K = R(F + $[1]);
99
98
  return /* @__PURE__ */ q(J, { children: [
100
99
  o,
101
100
  d && /* @__PURE__ */ e(
102
101
  rt,
103
102
  {
104
- points: T,
103
+ points: B,
105
104
  svgProps: {
106
105
  strokeWidth: 2,
107
106
  transform: `translate(0,${K})`
@@ -112,10 +111,10 @@ const ct = (t) => t ? t < parseFloat(j("BREAK_PHABLET_MIN")) ? s.pointRadius.md
112
111
  et,
113
112
  {
114
113
  viewport: {
115
- x: I,
116
- y: D,
117
- outerHeight: S - D,
118
- outerWidth: N - I,
114
+ x: T,
115
+ y: I,
116
+ outerHeight: S - I,
117
+ outerWidth: N - T,
119
118
  innerWidth: b,
120
119
  innerHeight: y
121
120
  },
@@ -125,8 +124,8 @@ const ct = (t) => t ? t < parseFloat(j("BREAK_PHABLET_MIN")) ? s.pointRadius.md
125
124
  nt,
126
125
  {
127
126
  points: t,
128
- value: B,
129
- isochrone: T,
127
+ value: D,
128
+ isochrone: B,
130
129
  offset: K,
131
130
  xScale: p,
132
131
  yScale: R,
@@ -135,7 +134,7 @@ const ct = (t) => t ? t < parseFloat(j("BREAK_PHABLET_MIN")) ? s.pointRadius.md
135
134
  }
136
135
  ),
137
136
  children: x("isochrone_plot.output", {
138
- ...B
137
+ ...D
139
138
  })
140
139
  }
141
140
  )
@@ -179,5 +178,5 @@ const ct = (t) => t ? t < parseFloat(j("BREAK_PHABLET_MIN")) ? s.pointRadius.md
179
178
  );
180
179
  };
181
180
  export {
182
- Dt as default
181
+ It as default
183
182
  };
@@ -1 +1 @@
1
- "use client";"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const t=require("react/jsx-runtime"),q=require("react"),D=require("react-i18next"),l=require("d3-array"),E=require("@rubin-epo/epo-react-lib/HorizontalSlider"),d=require("./lib/utils.cjs"),N=require("./widgets/SupernovaThreeVector/LiveLabel/index.cjs"),r=require("./widgets/SupernovaThreeVector/styles.cjs"),P=n=>n&&n.__esModule?n:{default:n},U=P(E),R=({histogramData:n,userData:k,binnedImages:I,step:u=100})=>{const{t:x}=D.useTranslation(),h=q.useId(),i={top:30,bottom:30,left:50,right:0},o=600,y=o/1.6,L=[i.left,o-i.right],V=[y-i.bottom,i.top],g=6,p=7,v=n.map(({value:e})=>e),b=0,$=l.max(v)||Math.max(...v),m=n.map(({bin:e})=>e),c=l.min(m)||0,a=l.max(m)||Math.max(...m),j=l.nice(c,a,g),f=l.nice(b,$||b,p),S=d.getLinearScale(j,L),A=d.getLinearScale(f,V),[s,M]=q.useState([c,a]),_=15,H=`calc(${i.left/o*100}% - ${_}px)`,w=`calc(${(1-S(a)/o)*100}% - ${_}px)`,C=n.map(({bin:e})=>d.between(e,s[0],s[1])),T=k.filter(({distance:e})=>d.between(e,s[0],s[1]+u)),B=n.reduce((e,{value:O},z)=>C[z]?e+O:e,0);return t.jsxs(r.ThreeVectorContainer,{ratio:{landscape:3/2,portrait:9/16},children:[t.jsxs(r.ThreeVectorLayout,{children:[t.jsxs(r.HistogramContainer,{children:[t.jsx(r.ChartTitle,{children:x("supernova_three_vector.histogram.title")}),t.jsx(r.Histogram,{data:n,activeRange:s,xDomain:j,yDomain:f,xScale:S,yScale:A,yTicks:p,xTicks:g,step:u,margin:i,width:o,height:y})]}),t.jsx(r.SliderContainer,{style:{paddingInlineStart:H,paddingInlineEnd:w},children:t.jsx(U.default,{min:c,max:a,step:u,value:s,ariaValuetext:({valueNow:e})=>x("supernova_three_vector.slider.valueLabel",{value:e}),color:"var(--turquoise85,#12726D)",minLabel:`${c} Mlyr`,maxLabel:`${a} Mlyr`,onChangeCallback:e=>Array.isArray(e)&&M(e)})}),t.jsxs(r.SkymapContainer,{children:[t.jsx(r.ChartTitle,{children:x("supernova_three_vector.skymap.title")}),t.jsx(r.Skymap,{objects:T,images:I,describedById:h,visibleImages:C})]}),t.jsx(r.ResetButton,{onResetCallback:()=>M([c,a])})]}),t.jsx(N.default,{id:h,objects:T,min:s[0],max:s[1]+u,supernovaCount:B})]})};R.displayName="Widgets.SupernovaThreeVector";exports.default=R;
1
+ "use client";"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const t=require("react/jsx-runtime"),T=require("react"),D=require("react-i18next"),l=require("d3-array"),E=require("@rubin-epo/epo-react-lib/HorizontalSlider"),d=require("./lib/utils.cjs"),F=require("./atomic/Button/patterns/Reset.cjs"),N=require("./layout/Controls/index.cjs"),P=require("./widgets/SupernovaThreeVector/LiveLabel/index.cjs"),r=require("./widgets/SupernovaThreeVector/styles.cjs"),U=n=>n&&n.__esModule?n:{default:n},W=U(E),R=({histogramData:n,userData:k,binnedImages:I,step:u=100})=>{const{t:x}=D.useTranslation(),g=T.useId(),i={top:30,bottom:30,left:50,right:0},o=600,h=o/1.6,L=[i.left,o-i.right],$=[h-i.bottom,i.top],y=6,p=7,j=n.map(({value:e})=>e),v=0,V=l.max(j)||Math.max(...j),m=n.map(({bin:e})=>e),c=l.min(m)||0,a=l.max(m)||Math.max(...m),b=l.nice(c,a,y),f=l.nice(v,V||v,p),S=d.getLinearScale(b,L),w=d.getLinearScale(f,$),[s,M]=T.useState([c,a]),_=15,A=`calc(${i.left/o*100}% - ${_}px)`,H=`calc(${(1-S(a)/o)*100}% - ${_}px)`,q=n.map(({bin:e})=>d.between(e,s[0],s[1])),C=k.filter(({distance:e})=>d.between(e,s[0],s[1]+u)),O=n.reduce((e,{value:z},B)=>q[B]?e+z:e,0);return t.jsx(N.default,{ratio:{landscape:3/2,portrait:1/2},widget:t.jsxs(t.Fragment,{children:[t.jsxs(r.ThreeVectorLayout,{children:[t.jsxs(r.HistogramContainer,{children:[t.jsx(r.ChartTitle,{children:x("supernova_three_vector.histogram.title")}),t.jsx(r.Histogram,{data:n,activeRange:s,xDomain:b,yDomain:f,xScale:S,yScale:w,yTicks:p,xTicks:y,step:u,margin:i,width:o,height:h})]}),t.jsx(r.SliderContainer,{style:{paddingInlineStart:A,paddingInlineEnd:H},children:t.jsx(W.default,{min:c,max:a,step:u,value:s,ariaValuetext:({valueNow:e})=>x("supernova_three_vector.slider.valueLabel",{value:e}),color:"var(--turquoise85,#12726D)",minLabel:`${c} Mlyr`,maxLabel:`${a} Mlyr`,onChangeCallback:e=>Array.isArray(e)&&M(e)})}),t.jsxs(r.SkymapContainer,{children:[t.jsx(r.ChartTitle,{children:x("supernova_three_vector.skymap.title")}),t.jsx(r.Skymap,{objects:C,images:I,describedById:g,visibleImages:q})]})]}),t.jsx(P.default,{id:g,objects:C,min:s[0],max:s[1]+u,supernovaCount:O})]}),actions:t.jsx(F.default,{onResetCallback:()=>M([c,a])})})};R.displayName="Widgets.SupernovaThreeVector";exports.default=R;
@@ -1,105 +1,110 @@
1
1
  "use client";
2
- import { jsxs as l, jsx as n } from "react/jsx-runtime";
3
- import { useId as N, useState as U } from "react";
4
- import { useTranslation as W } from "react-i18next";
5
- import { max as T, min as D, nice as k } from "d3-array";
6
- import F from "@rubin-epo/epo-react-lib/HorizontalSlider";
7
- import { getLinearScale as R, between as V } from "./lib/utils.js";
8
- import G from "./widgets/SupernovaThreeVector/LiveLabel/index.js";
9
- import { ThreeVectorContainer as J, ThreeVectorLayout as K, HistogramContainer as P, ChartTitle as I, Histogram as Q, SliderContainer as X, SkymapContainer as Y, Skymap as Z, ResetButton as ee } from "./widgets/SupernovaThreeVector/styles.js";
10
- const te = ({
2
+ import { jsx as t, jsxs as l, Fragment as E } from "react/jsx-runtime";
3
+ import { useId as F, useState as N } from "react";
4
+ import { useTranslation as U } from "react-i18next";
5
+ import { max as k, min as D, nice as R } from "d3-array";
6
+ import G from "@rubin-epo/epo-react-lib/HorizontalSlider";
7
+ import { getLinearScale as T, between as I } from "./lib/utils.js";
8
+ import J from "./atomic/Button/patterns/Reset.js";
9
+ import K from "./layout/Controls/index.js";
10
+ import P from "./widgets/SupernovaThreeVector/LiveLabel/index.js";
11
+ import { ThreeVectorLayout as Q, HistogramContainer as X, ChartTitle as V, Histogram as Y, SliderContainer as Z, SkymapContainer as ee, Skymap as te } from "./widgets/SupernovaThreeVector/styles.js";
12
+ const ne = ({
11
13
  histogramData: i,
12
14
  userData: _,
13
15
  binnedImages: $,
14
16
  step: c = 100
15
17
  }) => {
16
- const { t: m } = W(), p = N(), r = {
18
+ const { t: m } = U(), p = F(), o = {
17
19
  top: 30,
18
20
  bottom: 30,
19
21
  left: 50,
20
22
  right: 0
21
- }, a = 600, u = a / 1.6, j = [r.left, a - r.right], A = [u - r.bottom, r.top], h = 6, x = 7, y = i.map(({ value: e }) => e), f = 0, B = T(y) || Math.max(...y), d = i.map(({ bin: e }) => e), s = D(d) || 0, o = T(d) || Math.max(...d), g = k(s, o, h), v = k(f, B || f, x), b = R(g, j), H = R(v, A), [t, S] = U([s, o]), M = 15, w = `calc(${r.left / a * 100}% - ${M}px)`, O = `calc(${(1 - b(o) / a) * 100}% - ${M}px)`, C = i.map(
22
- ({ bin: e }) => V(e, t[0], t[1])
23
+ }, a = 600, u = a / 1.6, j = [o.left, a - o.right], w = [u - o.bottom, o.top], x = 6, g = 7, h = i.map(({ value: e }) => e), f = 0, A = k(h) || Math.max(...h), d = i.map(({ bin: e }) => e), s = D(d) || 0, r = k(d) || Math.max(...d), y = R(s, r, x), v = R(f, A || f, g), b = T(y, j), B = T(v, w), [n, S] = N([s, r]), M = 15, H = `calc(${o.left / a * 100}% - ${M}px)`, O = `calc(${(1 - b(r) / a) * 100}% - ${M}px)`, C = i.map(
24
+ ({ bin: e }) => I(e, n[0], n[1])
23
25
  ), L = _.filter(
24
- ({ distance: e }) => V(e, t[0], t[1] + c)
25
- ), q = i.reduce((e, { value: z }, E) => C[E] ? e + z : e, 0);
26
- return /* @__PURE__ */ l(J, { ratio: { landscape: 3 / 2, portrait: 9 / 16 }, children: [
27
- /* @__PURE__ */ l(K, { children: [
28
- /* @__PURE__ */ l(P, { children: [
29
- /* @__PURE__ */ n(I, { children: m("supernova_three_vector.histogram.title") }),
30
- /* @__PURE__ */ n(
31
- Q,
32
- {
33
- data: i,
34
- activeRange: t,
35
- xDomain: g,
36
- yDomain: v,
37
- xScale: b,
38
- yScale: H,
39
- yTicks: x,
40
- xTicks: h,
41
- step: c,
42
- margin: r,
43
- width: a,
44
- height: u
45
- }
46
- )
47
- ] }),
48
- /* @__PURE__ */ n(
49
- X,
50
- {
51
- style: {
52
- paddingInlineStart: w,
53
- paddingInlineEnd: O
54
- },
55
- children: /* @__PURE__ */ n(
56
- F,
26
+ ({ distance: e }) => I(e, n[0], n[1] + c)
27
+ ), W = i.reduce((e, { value: q }, z) => C[z] ? e + q : e, 0);
28
+ return /* @__PURE__ */ t(
29
+ K,
30
+ {
31
+ ratio: { landscape: 3 / 2, portrait: 1 / 2 },
32
+ widget: /* @__PURE__ */ l(E, { children: [
33
+ /* @__PURE__ */ l(Q, { children: [
34
+ /* @__PURE__ */ l(X, { children: [
35
+ /* @__PURE__ */ t(V, { children: m("supernova_three_vector.histogram.title") }),
36
+ /* @__PURE__ */ t(
37
+ Y,
38
+ {
39
+ data: i,
40
+ activeRange: n,
41
+ xDomain: y,
42
+ yDomain: v,
43
+ xScale: b,
44
+ yScale: B,
45
+ yTicks: g,
46
+ xTicks: x,
47
+ step: c,
48
+ margin: o,
49
+ width: a,
50
+ height: u
51
+ }
52
+ )
53
+ ] }),
54
+ /* @__PURE__ */ t(
55
+ Z,
57
56
  {
58
- min: s,
59
- max: o,
60
- step: c,
61
- value: t,
62
- ariaValuetext: ({ valueNow: e }) => m("supernova_three_vector.slider.valueLabel", { value: e }),
63
- color: "var(--turquoise85,#12726D)",
64
- minLabel: `${s} Mlyr`,
65
- maxLabel: `${o} Mlyr`,
66
- onChangeCallback: (e) => Array.isArray(e) && S(e)
57
+ style: {
58
+ paddingInlineStart: H,
59
+ paddingInlineEnd: O
60
+ },
61
+ children: /* @__PURE__ */ t(
62
+ G,
63
+ {
64
+ min: s,
65
+ max: r,
66
+ step: c,
67
+ value: n,
68
+ ariaValuetext: ({ valueNow: e }) => m("supernova_three_vector.slider.valueLabel", {
69
+ value: e
70
+ }),
71
+ color: "var(--turquoise85,#12726D)",
72
+ minLabel: `${s} Mlyr`,
73
+ maxLabel: `${r} Mlyr`,
74
+ onChangeCallback: (e) => Array.isArray(e) && S(e)
75
+ }
76
+ )
67
77
  }
68
- )
69
- }
70
- ),
71
- /* @__PURE__ */ l(Y, { children: [
72
- /* @__PURE__ */ n(I, { children: m("supernova_three_vector.skymap.title") }),
73
- /* @__PURE__ */ n(
74
- Z,
78
+ ),
79
+ /* @__PURE__ */ l(ee, { children: [
80
+ /* @__PURE__ */ t(V, { children: m("supernova_three_vector.skymap.title") }),
81
+ /* @__PURE__ */ t(
82
+ te,
83
+ {
84
+ objects: L,
85
+ images: $,
86
+ describedById: p,
87
+ visibleImages: C
88
+ }
89
+ )
90
+ ] })
91
+ ] }),
92
+ /* @__PURE__ */ t(
93
+ P,
75
94
  {
95
+ id: p,
76
96
  objects: L,
77
- images: $,
78
- describedById: p,
79
- visibleImages: C
97
+ min: n[0],
98
+ max: n[1] + c,
99
+ supernovaCount: W
80
100
  }
81
101
  )
82
102
  ] }),
83
- /* @__PURE__ */ n(
84
- ee,
85
- {
86
- onResetCallback: () => S([s, o])
87
- }
88
- )
89
- ] }),
90
- /* @__PURE__ */ n(
91
- G,
92
- {
93
- id: p,
94
- objects: L,
95
- min: t[0],
96
- max: t[1] + c,
97
- supernovaCount: q
98
- }
99
- )
100
- ] });
103
+ actions: /* @__PURE__ */ t(J, { onResetCallback: () => S([s, r]) })
104
+ }
105
+ );
101
106
  };
102
- te.displayName = "Widgets.SupernovaThreeVector";
107
+ ne.displayName = "Widgets.SupernovaThreeVector";
103
108
  export {
104
- te as default
109
+ ne as default
105
110
  };
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const o=require("react/jsx-runtime"),V=require("react"),j=require("d3-geo"),s=require("./widgets/ViewIndicator/styles.cjs"),W=require("./lib/utils.cjs"),h=10,$=10,k=[h,$],m=100,v=100,g=j.geoGraticule();g.step([180,180]);const b=t=>{const{backFaces:n=!1,applyRotation:i=!0}=t||{},e=j.geoOrthographic();e.fitExtent([[0,0],[m,v]],g.outline()),i&&e.rotate(k),n&&e.clipAngle(null);const r=j.geoPath(e);return{projection:e,pathGenerator:a=>r(a)||void 0}},A=()=>{const{pathGenerator:t}=b({applyRotation:!1});return o.jsx(s.Outline,{d:t(g.outline())})},R=({backFaces:t})=>{const{pathGenerator:n}=b({backFaces:t});return o.jsx(s.Meridian,{d:n(g()),opacity:t?.8:void 0})},C=(t,n)=>{const i=t>90-h&&t<270-h,e=n>0+$,r=t>180-h,c=["top","bottom"],a=["left","right"];e&&c.reverse(),r&&a.reverse();const d=["plane",c[0],...a,c[1]];return i&&d.reverse(),d},N=({ra:t,dec:n,fov:i})=>{const{pathGenerator:e}=b({backFaces:!0}),[r,c]=i,a=Math.max(r,.1)/2,d=Math.max(c,.1)/2,S=n+d,M=n-d,w=t+a,G=t-a,p=[w,S],f=[G,S],x=[w,M],y=[G,M],E=m/2,F=v/2,u=l=>`${l}L${E},${F}`,L={plane:o.jsx(s.Plane,{d:e({type:"Polygon",coordinates:[[p,f,y,x,p]]})}),top:o.jsx(s.TopEdges,{d:u(e({type:"LineString",coordinates:[p,f]}))}),bottom:o.jsx(s.TopEdges,{d:u(e({type:"LineString",coordinates:[y,x]}))}),left:o.jsx(s.SideEdges,{d:u(e({type:"LineString",coordinates:[x,p]}))}),right:o.jsx(s.SideEdges,{d:u(e({type:"LineString",coordinates:[f,y]}))})},O=C(t,n),P=W.getLinearScale([0,180],[0,100],{clamp:!0,fractionDigits:0})(Math.abs(180-t));return o.jsx(s.ViewCone,{style:{"--percent-mix-primary":`${P}%`,"--percent-mix-secondary":`${100-P}%`},children:O.map(l=>{if(L[l])return o.jsx(V.Fragment,{children:L[l]},l)})})},q=({size:t="var(--size-spacing-m)",className:n,ra:i,dec:e,fov:r})=>{const c=typeof i<"u"&&typeof e<"u"&&typeof r<"u";return o.jsxs(s.Container,{style:{"--size-container":t},className:n,children:[o.jsx(s.NorthDirection,{children:"N"}),o.jsxs(s.SVG,{preserveAspectRatio:"xMidYMid meet",viewBox:`0 0 ${m} ${v}`,children:[o.jsx(R,{backFaces:!0}),c&&o.jsx(N,{ra:i,dec:e,fov:r}),o.jsx(R,{}),o.jsx(A,{})]})]})};q.displayName="Widget.ViewIndicator";exports.default=q;
@@ -0,0 +1,3 @@
1
+ export * from './widgets/ViewIndicator/index'
2
+ import _default from './widgets/ViewIndicator/index'
3
+ export default _default
@@ -0,0 +1,143 @@
1
+ import { jsxs as G, jsx as o } from "react/jsx-runtime";
2
+ import { Fragment as W } from "react";
3
+ import { geoGraticule as k, geoOrthographic as A, geoPath as C } from "d3-geo";
4
+ import { Container as N, NorthDirection as z, SVG as B, Outline as D, Meridian as H, Plane as I, TopEdges as F, SideEdges as P, ViewCone as Y } from "./widgets/ViewIndicator/styles.js";
5
+ import { getLinearScale as q } from "./lib/utils.js";
6
+ const h = 10, O = 10, T = [h, O], y = 100, v = 100, f = k();
7
+ f.step([180, 180]);
8
+ const x = (t) => {
9
+ const { backFaces: n = !1, applyRotation: i = !0 } = t || {}, e = A();
10
+ e.fitExtent(
11
+ [
12
+ [0, 0],
13
+ [y, v]
14
+ ],
15
+ f.outline()
16
+ ), i && e.rotate(T), n && e.clipAngle(null);
17
+ const r = C(e);
18
+ return { projection: e, pathGenerator: (s) => r(s) || void 0 };
19
+ }, X = () => {
20
+ const { pathGenerator: t } = x({ applyRotation: !1 });
21
+ return /* @__PURE__ */ o(D, { d: t(f.outline()) });
22
+ }, R = ({ backFaces: t }) => {
23
+ const { pathGenerator: n } = x({ backFaces: t });
24
+ return /* @__PURE__ */ o(
25
+ H,
26
+ {
27
+ d: n(f()),
28
+ opacity: t ? 0.8 : void 0
29
+ }
30
+ );
31
+ }, J = (t, n) => {
32
+ const i = t > 90 - h && t < 270 - h, e = n > 0 + O, r = t > 180 - h, c = ["top", "bottom"], s = ["left", "right"];
33
+ e && c.reverse(), r && s.reverse();
34
+ const a = ["plane", c[0], ...s, c[1]];
35
+ return i && a.reverse(), a;
36
+ }, K = ({ ra: t, dec: n, fov: i }) => {
37
+ const { pathGenerator: e } = x({ backFaces: !0 }), [r, c] = i, s = Math.max(r, 0.1) / 2, a = Math.max(c, 0.1) / 2, b = n + a, M = n - a, S = t + s, $ = t - s, p = [S, b], g = [$, b], m = [S, M], u = [$, M], V = y / 2, j = v / 2, l = (d) => `${d}L${V},${j}`, w = {
38
+ plane: /* @__PURE__ */ o(
39
+ I,
40
+ {
41
+ d: e({
42
+ type: "Polygon",
43
+ coordinates: [[p, g, u, m, p]]
44
+ })
45
+ }
46
+ ),
47
+ top: /* @__PURE__ */ o(
48
+ F,
49
+ {
50
+ d: l(
51
+ e({
52
+ type: "LineString",
53
+ coordinates: [p, g]
54
+ })
55
+ )
56
+ }
57
+ ),
58
+ bottom: /* @__PURE__ */ o(
59
+ F,
60
+ {
61
+ d: l(
62
+ e({
63
+ type: "LineString",
64
+ coordinates: [u, m]
65
+ })
66
+ )
67
+ }
68
+ ),
69
+ left: /* @__PURE__ */ o(
70
+ P,
71
+ {
72
+ d: l(
73
+ e({
74
+ type: "LineString",
75
+ coordinates: [m, p]
76
+ })
77
+ )
78
+ }
79
+ ),
80
+ right: /* @__PURE__ */ o(
81
+ P,
82
+ {
83
+ d: l(
84
+ e({
85
+ type: "LineString",
86
+ coordinates: [g, u]
87
+ })
88
+ )
89
+ }
90
+ )
91
+ }, E = J(t, n), L = q([0, 180], [0, 100], {
92
+ clamp: !0,
93
+ fractionDigits: 0
94
+ })(Math.abs(180 - t));
95
+ return /* @__PURE__ */ o(
96
+ Y,
97
+ {
98
+ style: {
99
+ "--percent-mix-primary": `${L}%`,
100
+ "--percent-mix-secondary": `${100 - L}%`
101
+ },
102
+ children: E.map((d) => {
103
+ if (w[d])
104
+ return /* @__PURE__ */ o(W, { children: w[d] }, d);
105
+ })
106
+ }
107
+ );
108
+ }, Q = ({
109
+ size: t = "var(--size-spacing-m)",
110
+ className: n,
111
+ ra: i,
112
+ dec: e,
113
+ fov: r
114
+ }) => {
115
+ const c = typeof i < "u" && typeof e < "u" && typeof r < "u";
116
+ return /* @__PURE__ */ G(
117
+ N,
118
+ {
119
+ style: { "--size-container": t },
120
+ className: n,
121
+ children: [
122
+ /* @__PURE__ */ o(z, { children: "N" }),
123
+ /* @__PURE__ */ G(
124
+ B,
125
+ {
126
+ preserveAspectRatio: "xMidYMid meet",
127
+ viewBox: `0 0 ${y} ${v}`,
128
+ children: [
129
+ /* @__PURE__ */ o(R, { backFaces: !0 }),
130
+ c && /* @__PURE__ */ o(K, { ra: i, dec: e, fov: r }),
131
+ /* @__PURE__ */ o(R, {}),
132
+ /* @__PURE__ */ o(X, {})
133
+ ]
134
+ }
135
+ )
136
+ ]
137
+ }
138
+ );
139
+ };
140
+ Q.displayName = "Widget.ViewIndicator";
141
+ export {
142
+ Q as default
143
+ };
@@ -1 +1 @@
1
- "use client";"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const t=require("react/jsx-runtime"),c=require("react-i18next"),u=require("./styles.cjs"),r=require("../../PlaybackControl/PlaybackControl.cjs"),n=({playing:a,handleStartStop:o,handleNext:s,handlePrevious:i,className:d,isDisabled:l})=>{const{t:e}=c.useTranslation();return t.jsxs(u.ControlsContainer,{"data-testid":"blinker-controls",className:d,children:[t.jsx(r.default,{"data-testid":"blinker-backward",icon:"Backward",label:e("blinker.controls.backward"),handleClick:i,disabled:l}),t.jsx(r.default,{"data-testid":"blinker-start-stop",icon:a?"Pause":"Play",label:e(a?"blinker.controls.pause":"blinker.controls.play"),handleClick:o,disabled:l}),t.jsx(r.default,{"data-testid":"blinker-forward",icon:"Forward",label:e("blinker.controls.forward"),handleClick:s,disabled:l})]})};n.displayName="Atomic.Blinker.Controls";const b=n;exports.default=b;
1
+ "use client";"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const t=require("react/jsx-runtime"),c=require("react-i18next"),u=require("./styles.cjs"),r=require("../../PlaybackControl/PlaybackControl.cjs"),n=({playing:a,handleStartStop:o,handleNext:s,handlePrevious:i,className:d,isDisabled:l})=>{const{t:e}=c.useTranslation();return t.jsxs(u.ControlsContainer,{"data-testid":"blinker-controls",className:d,children:[t.jsx(r.default,{"data-testid":"blinker-backward",icon:"Backward",label:e("blinker.controls.backward"),handleClick:i,disabled:l}),t.jsx(r.default,{"data-testid":"blinker-start-stop",icon:a?"Pause":"Play",label:e(a?"blinker.controls.pause":"blinker.controls.play"),handleClick:o,disabled:l}),t.jsx(r.default,{"data-testid":"blinker-forward",icon:"Forward",label:e("blinker.controls.forward"),handleClick:s,disabled:l})]})};n.displayName="Atomic.Blinker.Controls";exports.default=n;
@@ -1,50 +1,50 @@
1
1
  "use client";
2
- import { jsxs as c, jsx as t } from "react/jsx-runtime";
3
- import { useTranslation as k } from "react-i18next";
4
- import { ControlsContainer as b } from "./styles.js";
5
- import l from "../../PlaybackControl/PlaybackControl.js";
6
- const n = ({
2
+ import { jsxs as d, jsx as l } from "react/jsx-runtime";
3
+ import { useTranslation as c } from "react-i18next";
4
+ import { ControlsContainer as k } from "./styles.js";
5
+ import t from "../../PlaybackControl/PlaybackControl.js";
6
+ const b = ({
7
7
  playing: a,
8
- handleStartStop: e,
9
- handleNext: i,
10
- handlePrevious: s,
11
- className: d,
8
+ handleStartStop: n,
9
+ handleNext: e,
10
+ handlePrevious: i,
11
+ className: s,
12
12
  isDisabled: o
13
13
  }) => {
14
- const { t: r } = k();
15
- return /* @__PURE__ */ c(
16
- b,
14
+ const { t: r } = c();
15
+ return /* @__PURE__ */ d(
16
+ k,
17
17
  {
18
18
  "data-testid": "blinker-controls",
19
- className: d,
19
+ className: s,
20
20
  children: [
21
- /* @__PURE__ */ t(
22
- l,
21
+ /* @__PURE__ */ l(
22
+ t,
23
23
  {
24
24
  "data-testid": "blinker-backward",
25
25
  icon: "Backward",
26
26
  label: r("blinker.controls.backward"),
27
- handleClick: s,
27
+ handleClick: i,
28
28
  disabled: o
29
29
  }
30
30
  ),
31
- /* @__PURE__ */ t(
32
- l,
31
+ /* @__PURE__ */ l(
32
+ t,
33
33
  {
34
34
  "data-testid": "blinker-start-stop",
35
35
  icon: a ? "Pause" : "Play",
36
36
  label: r(a ? "blinker.controls.pause" : "blinker.controls.play"),
37
- handleClick: e,
37
+ handleClick: n,
38
38
  disabled: o
39
39
  }
40
40
  ),
41
- /* @__PURE__ */ t(
42
- l,
41
+ /* @__PURE__ */ l(
42
+ t,
43
43
  {
44
44
  "data-testid": "blinker-forward",
45
45
  icon: "Forward",
46
46
  label: r("blinker.controls.forward"),
47
- handleClick: i,
47
+ handleClick: e,
48
48
  disabled: o
49
49
  }
50
50
  )
@@ -52,8 +52,7 @@ const n = ({
52
52
  }
53
53
  );
54
54
  };
55
- n.displayName = "Atomic.Blinker.Controls";
56
- const u = n;
55
+ b.displayName = "Atomic.Blinker.Controls";
57
56
  export {
58
- u as default
57
+ b as default
59
58
  };
@@ -1 +1 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const b=require("react/jsx-runtime"),d=require("react"),h=require("../styles.cjs"),a=({data:e,yDomain:i,xScale:o,yScale:r,y:t=r(i[0])})=>e.length===0?null:b.jsx("g",{role:"list",children:e.map(({stroke:u,fill:c,width:s=8,x:f,value:l,props:m},g)=>{if(l===0)return null;const n=t-r(l);return d.createElement(h.Bar,{role:"listitem",height:n,y:t,width:s,x:o(f),fill:c||"var(--bar-fill, #12726D)",stroke:u||"var(--bar-stroke, transparent)",key:g,transform:`translate(-${s/2} -${n})`,...m})})});a.displayName="Charts.Bars";const p=a;exports.default=p;
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const b=require("react/jsx-runtime"),d=require("react"),h=require("../styles.cjs"),a=({data:e,yDomain:i,xScale:u,yScale:r,y:t=r(i[0])})=>e.length===0?null:b.jsx("g",{role:"list",children:e.map(({stroke:o,fill:c,width:s=8,x:f,value:l,props:m},g)=>{if(l===0)return null;const n=t-r(l);return d.createElement(h.Bar,{role:"listitem",height:n,y:t,width:s,x:u(f),fill:c||"var(--bar-fill, #12726D)",stroke:o||"var(--bar-stroke, transparent)",key:g,transform:`translate(-${s/2} -${n})`,...m})})});a.displayName="Charts.Bars";exports.default=a;
@@ -1,34 +1,32 @@
1
1
  import { jsx as h } from "react/jsx-runtime";
2
- import { createElement as B } from "react";
2
+ import { createElement as c } from "react";
3
3
  import { Bar as g } from "../styles.js";
4
- const n = ({
4
+ const k = ({
5
5
  data: r,
6
- yDomain: o,
7
- xScale: i,
6
+ yDomain: s,
7
+ xScale: o,
8
8
  yScale: t,
9
- y: e = t(o[0])
10
- }) => r.length === 0 ? null : /* @__PURE__ */ h("g", { role: "list", children: r.map(({ stroke: m, fill: f, width: s = 8, x: p, value: a, props: u }, c) => {
11
- if (a === 0)
12
- return null;
13
- const l = e - t(a);
14
- return /* @__PURE__ */ B(
9
+ y: e = t(s[0])
10
+ }) => r.length === 0 ? null : /* @__PURE__ */ h("g", { role: "list", children: r.map(({ stroke: i, fill: m, width: l = 8, x: f, value: a, props: p }, u) => {
11
+ if (a === 0) return null;
12
+ const n = e - t(a);
13
+ return /* @__PURE__ */ c(
15
14
  g,
16
15
  {
17
16
  role: "listitem",
18
- height: l,
17
+ height: n,
19
18
  y: e,
20
- width: s,
21
- x: i(p),
22
- fill: f || "var(--bar-fill, #12726D)",
23
- stroke: m || "var(--bar-stroke, transparent)",
24
- key: c,
25
- transform: `translate(-${s / 2} -${l})`,
26
- ...u
19
+ width: l,
20
+ x: o(f),
21
+ fill: m || "var(--bar-fill, #12726D)",
22
+ stroke: i || "var(--bar-stroke, transparent)",
23
+ key: u,
24
+ transform: `translate(-${l / 2} -${n})`,
25
+ ...p
27
26
  }
28
27
  );
29
28
  }) });
30
- n.displayName = "Charts.Bars";
31
- const b = n;
29
+ k.displayName = "Charts.Bars";
32
30
  export {
33
- b as default
31
+ k as default
34
32
  };
@@ -1 +1 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("react/jsx-runtime"),r=require("./styles.cjs"),c=({width:s=900,height:i=300,xMin:o=0,yMin:x=0,verticalLabel:a,verticalLabelId:t,horizontalLabel:n,horizontalLabelId:l,title:d,children:j,className:p})=>e.jsxs(r.ChartContainer,{children:[d&&e.jsx(r.TitleWrapper,{children:e.jsx(r.Title,{children:d})}),a&&e.jsxs(e.Fragment,{children:[e.jsx(r.VerticalLabelWrapper,{children:e.jsx(r.Label,{id:t,"aria-hidden":!!t,children:a})}),e.jsx(r.Filler,{})]}),e.jsx(r.SVG,{preserveAspectRatio:"xMidYMid meet",viewBox:`${o} ${x} ${s} ${i}`,className:p,style:{"--aspect-ratio":`${s} / ${i}`},role:"group",children:j}),n&&e.jsx(r.HorizontalLabelWrapper,{children:e.jsx(r.Label,{id:l,"aria-hidden":!!l,children:n})})]});c.displayName="Charts.Base";const u=c;exports.default=u;
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("react/jsx-runtime"),r=require("./styles.cjs"),c=({width:s=900,height:i=300,xMin:x=0,yMin:j=0,verticalLabel:a,verticalLabelId:t,horizontalLabel:l,horizontalLabelId:n,title:d,children:o,className:p})=>e.jsxs(r.ChartContainer,{children:[d&&e.jsx(r.TitleWrapper,{children:e.jsx(r.Title,{children:d})}),a&&e.jsxs(e.Fragment,{children:[e.jsx(r.VerticalLabelWrapper,{children:e.jsx(r.Label,{id:t,"aria-hidden":!!t,children:a})}),e.jsx(r.Filler,{})]}),e.jsx(r.SVG,{preserveAspectRatio:"xMidYMid meet",viewBox:`${x} ${j} ${s} ${i}`,className:p,style:{"--aspect-ratio":`${s} / ${i}`},role:"group",children:o}),l&&e.jsx(r.HorizontalLabelWrapper,{children:e.jsx(r.Label,{id:n,"aria-hidden":!!n,children:l})})]});c.displayName="Charts.Base";exports.default=c;