@rubin-epo/epo-widget-lib 2.0.13 → 2.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.
@@ -1 +1 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const t=require("react/jsx-runtime"),u=require("@rubin-epo/epo-react-lib/styles"),o=require("./styles.cjs"),d=require("../ForeignObject/index.cjs"),y=require("../Viewport/index.cjs"),j=(n="")=>{const r=["top","right"],a=["center","center"],s=n?[...n.split(" "),...a].slice(0,2):r,e={justifyContent:null,alignItems:null};return s.forEach(i=>{switch(i){case"center":e.alignItems=e.alignItems??"center",e.justifyContent=e.justifyContent??"center";break;case"top":e.alignItems="start";break;case"right":e.justifyContent="end";break;case"bottom":e.alignItems="end";break;case"left":e.justifyContent="start";break}}),e},c=({className:n,children:r,position:a,viewport:s,forIds:e,forScreenreaders:i})=>{const l=t.jsx(d.default,{children:t.jsx(o.DisplayContainer,{style:j(a),children:t.jsxs(o.Display,{form:Array.isArray(e)?e.join(" "):e,className:n,children:[t.jsx("span",{"aria-hidden":!!i,children:r}),t.jsx(u.ScreenreaderText,{children:i})]})})});return s?t.jsx(y.default,{...s,children:l}):l};c.displayName="Charts.Readout";exports.default=c;
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const t=require("react/jsx-runtime"),c=require("@rubin-epo/epo-react-lib/styles");require("../Base/index.cjs");require("../XAxis/index.cjs");require("../YAxis/index.cjs");require("../Guidelines/index.cjs");require("../Tooltip/index.cjs");require("../Bars/index.cjs");const d=require("../Viewport/index.cjs"),y=require("../ForeignObject/index.cjs");require("../ScatterPlot/index.cjs");const o=require("./styles.cjs"),j=(r="")=>{const i=["top","right"],a=["center","center"],n=r?[...r.split(" "),...a].slice(0,2):i,e={justifyContent:null,alignItems:null};return n.forEach(s=>{switch(s){case"center":e.alignItems=e.alignItems??"center",e.justifyContent=e.justifyContent??"center";break;case"top":e.alignItems="start";break;case"right":e.justifyContent="end";break;case"bottom":e.alignItems="end";break;case"left":e.justifyContent="start";break}}),e},u=({className:r,children:i,position:a,viewport:n,forIds:e,forScreenreaders:s})=>{const l=t.jsx(y.default,{children:t.jsx(o.DisplayContainer,{style:j(a),children:t.jsxs(o.Display,{form:Array.isArray(e)?e.join(" "):e,className:r,children:[t.jsx("span",{"aria-hidden":!!s,children:i}),t.jsx(c.ScreenreaderText,{children:s})]})})});return n?t.jsx(d.default,{...n,children:l}):l};u.displayName="Charts.Readout";exports.default=u;
@@ -1,15 +1,22 @@
1
1
  import { jsx as e, jsxs as l } from "react/jsx-runtime";
2
2
  import { ScreenreaderText as c } from "@rubin-epo/epo-react-lib/styles";
3
- import { DisplayContainer as m, Display as f } from "./styles.js";
4
- import u from "../ForeignObject/index.js";
5
- import d from "../Viewport/index.js";
6
- const p = (n = "") => {
7
- const s = ["top", "right"], o = ["center", "center"], i = n ? [...n.split(" "), ...o].slice(0, 2) : s, t = {
3
+ import "../Base/index.js";
4
+ import "../XAxis/index.js";
5
+ import "../YAxis/index.js";
6
+ import "../Guidelines/index.js";
7
+ import "../Tooltip/index.js";
8
+ import "../Bars/index.js";
9
+ import m from "../Viewport/index.js";
10
+ import p from "../ForeignObject/index.js";
11
+ import "../ScatterPlot/index.js";
12
+ import { DisplayContainer as f, Display as u } from "./styles.js";
13
+ const d = (i = "") => {
14
+ const o = ["top", "right"], s = ["center", "center"], r = i ? [...i.split(" "), ...s].slice(0, 2) : o, t = {
8
15
  justifyContent: null,
9
16
  alignItems: null
10
17
  };
11
- return i.forEach((r) => {
12
- switch (r) {
18
+ return r.forEach((n) => {
19
+ switch (n) {
13
20
  case "center":
14
21
  t.alignItems = t.alignItems ?? "center", t.justifyContent = t.justifyContent ?? "center";
15
22
  break;
@@ -28,25 +35,25 @@ const p = (n = "") => {
28
35
  }
29
36
  }), t;
30
37
  }, y = ({
31
- className: n,
32
- children: s,
33
- position: o,
34
- viewport: i,
38
+ className: i,
39
+ children: o,
40
+ position: s,
41
+ viewport: r,
35
42
  forIds: t,
36
- forScreenreaders: r
43
+ forScreenreaders: n
37
44
  }) => {
38
- const a = /* @__PURE__ */ e(u, { children: /* @__PURE__ */ e(m, { style: p(o), children: /* @__PURE__ */ l(
39
- f,
45
+ const a = /* @__PURE__ */ e(p, { children: /* @__PURE__ */ e(f, { style: d(s), children: /* @__PURE__ */ l(
46
+ u,
40
47
  {
41
48
  form: Array.isArray(t) ? t.join(" ") : t,
42
- className: n,
49
+ className: i,
43
50
  children: [
44
- /* @__PURE__ */ e("span", { "aria-hidden": !!r, children: s }),
45
- /* @__PURE__ */ e(c, { children: r })
51
+ /* @__PURE__ */ e("span", { "aria-hidden": !!n, children: o }),
52
+ /* @__PURE__ */ e(c, { children: n })
46
53
  ]
47
54
  }
48
55
  ) }) });
49
- return i ? /* @__PURE__ */ e(d, { ...i, children: a }) : a;
56
+ return r ? /* @__PURE__ */ e(m, { ...r, children: a }) : a;
50
57
  };
51
58
  y.displayName = "Charts.Readout";
52
59
  export {
@@ -1 +1 @@
1
- "use client";"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const n=require("react/jsx-runtime"),J=require("react"),$=require("../hooks/useAxis.cjs"),K=require("./styles.cjs"),R=require("../defaults.cjs"),Q=require("../canvas/Points/index.cjs"),U=require("../YAxis/index.cjs"),V=require("../ClippingContainer/index.cjs"),H=require("../Guidelines/index.cjs"),X=require("../XAxis/index.cjs"),Y=require("../Tooltip/index.cjs"),Z=require("../Points/index.cjs"),w={svg:Z.default,canvas:Q.default},M=({data:C,className:D,xAxis:l,yAxis:c,width:d,height:u,title:T,activePointId:p,margins:z,tooltip:a,onLoadedCallback:B,renderer:E="svg",plotChildren:y})=>{const[q,h]=J.useState(),{label:O,points:x}=C,o={...R.default.margins,...z},e=typeof q<"u"?x[q]:x.find(({id:v})=>v===p),f=[0+o.left,d-o.right],b=[u-o.bottom,0+o.top],[r,j,t]=$.default({...l,range:f}),[i,m,s]=$.default({...c,range:b}),S=s(i[0]),g=t(r[0]),I=s(i[1]),_=t(r[1]),k="x-axis-label",L="y-axis-label",N=Math.abs(f[1]-f[0]),W=Math.abs(b[1]-b[0]),F=w[E],P=n.jsx(F,{data:x,onHoverCallback:a?v=>h(v):void 0,onHoverOutCallback:a?()=>h(void 0):void 0,width:d,height:u,xScale:t,yScale:s,label:O,onLoadedCallback:B}),G={Data:P,xScale:t,yScale:s,yStart:S,yEnd:I,xStart:g,xEnd:_,yDomain:i,xDomain:r};return n.jsxs(K.Chart,{verticalLabel:c.label,verticalLabelId:L,horizontalLabel:l.label,horizontalLabelId:k,className:D,width:d,height:u,title:T,children:[n.jsx(U.default,{ticks:m,x:g,labelledById:L,yDomain:i,yScale:s}),n.jsxs(V.default,{x:g,y:I,width:N,height:W,children:[l.guidelines&&n.jsx(H.default,{guides:j.length,direction:"vertical",xDomain:r,yDomain:i,xScale:t,yScale:s}),c.guidelines&&n.jsx(H.default,{guides:m.length,xDomain:r,yDomain:i,xScale:t,yScale:s}),y?y(G):P]}),n.jsx(X.default,{ticks:j,y:S,labelledById:k,xDomain:r,xScale:t}),a&&n.jsxs(Y.default,{x:e?t(e.x):void 0,y:e?s(e.y):void 0,visible:!!e,offset:R.default.pointRadius,children:[e&&typeof a=="function"&&a(e),e&&typeof a=="string"&&a]})]})};M.displayName="Charts.ScatterPlot";exports.default=M;
1
+ "use client";"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const n=require("react/jsx-runtime"),J=require("react");require("../Base/index.cjs");const K=require("../XAxis/index.cjs"),Q=require("../YAxis/index.cjs"),$=require("../Guidelines/index.cjs"),U=require("../Points/index.cjs"),V=require("../Tooltip/index.cjs"),X=require("../ClippingContainer/index.cjs");require("../Bars/index.cjs");require("../Viewport/index.cjs");const R=require("../hooks/useAxis.cjs"),Y=require("./styles.cjs"),H=require("../defaults.cjs"),Z=require("../canvas/Points/index.cjs"),w={svg:U.default,canvas:Z.default},M=({data:C,className:D,xAxis:l,yAxis:c,width:d,height:u,title:T,activePointId:p,margins:z,tooltip:a,onLoadedCallback:B,renderer:E="svg",plotChildren:y})=>{const[q,h]=J.useState(),{label:O,points:x}=C,o={...H.default.margins,...z},e=typeof q<"u"?x[q]:x.find(({id:v})=>v===p),f=[0+o.left,d-o.right],b=[u-o.bottom,0+o.top],[r,j,t]=R.default({...l,range:f}),[i,m,s]=R.default({...c,range:b}),S=s(i[0]),g=t(r[0]),I=s(i[1]),_=t(r[1]),k="x-axis-label",L="y-axis-label",N=Math.abs(f[1]-f[0]),W=Math.abs(b[1]-b[0]),F=w[E],P=n.jsx(F,{data:x,onHoverCallback:a?v=>h(v):void 0,onHoverOutCallback:a?()=>h(void 0):void 0,width:d,height:u,xScale:t,yScale:s,label:O,onLoadedCallback:B}),G={Data:P,xScale:t,yScale:s,yStart:S,yEnd:I,xStart:g,xEnd:_,yDomain:i,xDomain:r};return n.jsxs(Y.Chart,{verticalLabel:c.label,verticalLabelId:L,horizontalLabel:l.label,horizontalLabelId:k,className:D,width:d,height:u,title:T,children:[n.jsx(Q.default,{ticks:m,x:g,labelledById:L,yDomain:i,yScale:s}),n.jsxs(X.default,{x:g,y:I,width:N,height:W,children:[l.guidelines&&n.jsx($.default,{guides:j.length,direction:"vertical",xDomain:r,yDomain:i,xScale:t,yScale:s}),c.guidelines&&n.jsx($.default,{guides:m.length,xDomain:r,yDomain:i,xScale:t,yScale:s}),y?y(G):P]}),n.jsx(K.default,{ticks:j,y:S,labelledById:k,xDomain:r,xScale:t}),a&&n.jsxs(V.default,{x:e?t(e.x):void 0,y:e?s(e.y):void 0,visible:!!e,offset:H.default.pointRadius,children:[e&&typeof a=="function"&&a(e),e&&typeof a=="string"&&a]})]})};M.displayName="Charts.ScatterPlot";exports.default=M;
@@ -1,19 +1,22 @@
1
1
  "use client";
2
- import { jsxs as u, jsx as i } from "react/jsx-runtime";
2
+ import { jsxs as u, jsx as s } from "react/jsx-runtime";
3
3
  import { useState as F } from "react";
4
- import R from "../hooks/useAxis.js";
5
- import { Chart as J } from "./styles.js";
6
- import D from "../defaults.js";
7
- import K from "../canvas/Points/index.js";
8
- import Q from "../YAxis/index.js";
9
- import U from "../ClippingContainer/index.js";
10
- import T from "../Guidelines/index.js";
11
- import V from "../XAxis/index.js";
12
- import Z from "../Tooltip/index.js";
13
- import _ from "../Points/index.js";
4
+ import "../Base/index.js";
5
+ import J from "../XAxis/index.js";
6
+ import K from "../YAxis/index.js";
7
+ import R from "../Guidelines/index.js";
8
+ import Q from "../Points/index.js";
9
+ import U from "../Tooltip/index.js";
10
+ import V from "../ClippingContainer/index.js";
11
+ import "../Bars/index.js";
12
+ import "../Viewport/index.js";
13
+ import D from "../hooks/useAxis.js";
14
+ import { Chart as Z } from "./styles.js";
15
+ import T from "../defaults.js";
16
+ import _ from "../canvas/Points/index.js";
14
17
  const $ = {
15
- svg: _,
16
- canvas: K
18
+ svg: Q,
19
+ canvas: _
17
20
  }, w = ({
18
21
  data: j,
19
22
  className: z,
@@ -29,32 +32,32 @@ const $ = {
29
32
  renderer: G = "svg",
30
33
  plotChildren: x
31
34
  }) => {
32
- const [y, h] = F(), { label: N, points: f } = j, r = { ...D.margins, ...M }, t = typeof y < "u" ? f[y] : f.find(({ id: p }) => p === E), b = [0 + r.left, d - r.right], g = [m - r.bottom, 0 + r.top], [s, I, e] = R({ ...l, range: b }), [a, P, o] = R({ ...c, range: g }), S = o(a[0]), v = e(s[0]), k = o(a[1]), O = e(s[1]), C = "x-axis-label", L = "y-axis-label", W = Math.abs(b[1] - b[0]), X = Math.abs(g[1] - g[0]), Y = $[G], H = /* @__PURE__ */ i(
35
+ const [y, h] = F(), { label: N, points: f } = j, a = { ...T.margins, ...M }, t = typeof y < "u" ? f[y] : f.find(({ id: v }) => v === E), p = [0 + a.left, d - a.right], b = [m - a.bottom, 0 + a.top], [i, I, o] = D({ ...l, range: p }), [r, P, e] = D({ ...c, range: b }), S = e(r[0]), g = o(i[0]), k = e(r[1]), O = o(i[1]), C = "x-axis-label", L = "y-axis-label", W = Math.abs(p[1] - p[0]), X = Math.abs(b[1] - b[0]), Y = $[G], H = /* @__PURE__ */ s(
33
36
  Y,
34
37
  {
35
38
  data: f,
36
- onHoverCallback: n ? (p) => h(p) : void 0,
39
+ onHoverCallback: n ? (v) => h(v) : void 0,
37
40
  onHoverOutCallback: n ? () => h(void 0) : void 0,
38
41
  width: d,
39
42
  height: m,
40
- xScale: e,
41
- yScale: o,
43
+ xScale: o,
44
+ yScale: e,
42
45
  label: N,
43
46
  onLoadedCallback: A
44
47
  }
45
48
  ), q = {
46
49
  Data: H,
47
- xScale: e,
48
- yScale: o,
50
+ xScale: o,
51
+ yScale: e,
49
52
  yStart: S,
50
53
  yEnd: k,
51
- xStart: v,
54
+ xStart: g,
52
55
  xEnd: O,
53
- yDomain: a,
54
- xDomain: s
56
+ yDomain: r,
57
+ xDomain: i
55
58
  };
56
59
  return /* @__PURE__ */ u(
57
- J,
60
+ Z,
58
61
  {
59
62
  verticalLabel: c.label,
60
63
  verticalLabelId: L,
@@ -65,66 +68,66 @@ const $ = {
65
68
  height: m,
66
69
  title: B,
67
70
  children: [
68
- /* @__PURE__ */ i(
69
- Q,
71
+ /* @__PURE__ */ s(
72
+ K,
70
73
  {
71
74
  ticks: P,
72
- x: v,
75
+ x: g,
73
76
  labelledById: L,
74
- yDomain: a,
75
- yScale: o
77
+ yDomain: r,
78
+ yScale: e
76
79
  }
77
80
  ),
78
81
  /* @__PURE__ */ u(
79
- U,
82
+ V,
80
83
  {
81
- x: v,
84
+ x: g,
82
85
  y: k,
83
86
  width: W,
84
87
  height: X,
85
88
  children: [
86
- l.guidelines && /* @__PURE__ */ i(
87
- T,
89
+ l.guidelines && /* @__PURE__ */ s(
90
+ R,
88
91
  {
89
92
  guides: I.length,
90
93
  direction: "vertical",
91
- xDomain: s,
92
- yDomain: a,
93
- xScale: e,
94
- yScale: o
94
+ xDomain: i,
95
+ yDomain: r,
96
+ xScale: o,
97
+ yScale: e
95
98
  }
96
99
  ),
97
- c.guidelines && /* @__PURE__ */ i(
98
- T,
100
+ c.guidelines && /* @__PURE__ */ s(
101
+ R,
99
102
  {
100
103
  guides: P.length,
101
- xDomain: s,
102
- yDomain: a,
103
- xScale: e,
104
- yScale: o
104
+ xDomain: i,
105
+ yDomain: r,
106
+ xScale: o,
107
+ yScale: e
105
108
  }
106
109
  ),
107
110
  x ? x(q) : H
108
111
  ]
109
112
  }
110
113
  ),
111
- /* @__PURE__ */ i(
112
- V,
114
+ /* @__PURE__ */ s(
115
+ J,
113
116
  {
114
117
  ticks: I,
115
118
  y: S,
116
119
  labelledById: C,
117
- xDomain: s,
118
- xScale: e
120
+ xDomain: i,
121
+ xScale: o
119
122
  }
120
123
  ),
121
124
  n && /* @__PURE__ */ u(
122
- Z,
125
+ U,
123
126
  {
124
- x: t ? e(t.x) : void 0,
125
- y: t ? o(t.y) : void 0,
127
+ x: t ? o(t.x) : void 0,
128
+ y: t ? e(t.y) : void 0,
126
129
  visible: !!t,
127
- offset: D.pointRadius,
130
+ offset: T.pointRadius,
128
131
  children: [
129
132
  t && typeof n == "function" && n(t),
130
133
  t && typeof n == "string" && n
@@ -127,8 +127,10 @@ export declare const PotentialOrbitsData: {
127
127
  export declare const ObjectDetailsData: {
128
128
  orbits: {
129
129
  neos: {
130
- H: number;
130
+ Number: null;
131
+ Name: null;
131
132
  Principal_desig: string;
133
+ Epoch: string;
132
134
  M: number;
133
135
  Peri: number;
134
136
  Node: number;
@@ -136,16 +138,23 @@ export declare const ObjectDetailsData: {
136
138
  e: number;
137
139
  n: number;
138
140
  a: number;
141
+ Tp: number;
142
+ Orbital_period: number;
143
+ H: number;
144
+ G: number;
145
+ Perihelion_dist: number;
146
+ Aphelion_dist: number;
147
+ Orbit_type: number;
148
+ Arc_length: number;
139
149
  Ref: string;
140
- Orbit_type: string;
141
- diameter: number;
142
- Earth_moid: number;
143
- Jupiter_moid: number;
144
- }[];
145
- detailsRows: {
146
- rowColor: string;
147
- rowTitle: string;
148
- rowContent: string;
150
+ "Earth MOID": number;
151
+ object_details: ({
152
+ rowTitle: string;
153
+ rowContent: string;
154
+ } | {
155
+ rowTitle: string;
156
+ rowContent: number;
157
+ })[];
149
158
  }[];
150
159
  };
151
160
  showTimeControls: boolean;
@@ -9,6 +9,7 @@ export interface OrbitalSimProviderProps {
9
9
  selectedAnswer: string | null;
10
10
  updateSelectedAnswer: (newSelectedAnswer: string | null) => void;
11
11
  swappableOrbits?: boolean;
12
+ selectedNeoIndex?: number;
12
13
  }
13
14
  export type OrbitalSimContextValues = {
14
15
  orbits: Orbits;
@@ -20,6 +21,7 @@ export type OrbitalSimContextValues = {
20
21
  updateActiveObservation: (activeId: string) => void;
21
22
  selectedAnswer: string | null;
22
23
  swappableOrbits: boolean;
24
+ selectedNeoIndex?: number;
23
25
  };
24
26
  export type Observation = {
25
27
  id: string;
@@ -37,10 +39,11 @@ export type Neo = {
37
39
  Node: number;
38
40
  Ref: string;
39
41
  Principal_desig: string;
42
+ object_details?: DetailsRow[];
40
43
  };
41
44
  export type DetailsRow = {
42
45
  rowTitle: string;
43
- rowContent: string | TrustedHTML;
46
+ rowContent: string | number | TrustedHTML;
44
47
  };
45
48
  export type Orbits = {
46
49
  neos: Neo[] | null;
@@ -51,7 +54,7 @@ export type Orbits = {
51
54
  defaultZoom: number | null;
52
55
  potentialOrbits: boolean;
53
56
  noDetails: boolean;
54
- detailsRows: DetailsRow[] | null;
55
57
  refObjs: string[] | null;
56
58
  noControls: boolean;
59
+ selectedNeoIndex?: number;
57
60
  };
@@ -1 +1 @@
1
- "use client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const P=require("react/jsx-runtime"),t=require("react"),c=t.createContext(null);function g(){const s=t.useContext(c);if(!s)throw new Error("OrbitalSim components cannot be rendered outside the OrbitalSimContext.Provider component.");return s}function j({children:s,orbitData:r,showDetailsTable:f=!1,allowOrbitRotation:b=!1,showTimeControls:v=!1,selectedAnswer:i,updateSelectedAnswer:x,swappableOrbits:m=!1}){const[l,u]=t.useState({neos:null,activeNeo:null,observations:[],paused:!1,pov:null,defaultZoom:null,potentialOrbits:!1,noDetails:!1,detailsRows:null,refObjs:null,noControls:!1}),[e,S]=t.useState(()=>l.observations??[]);t.useEffect(()=>{u(r),S(r.observations)},[r]);const d=t.useMemo(()=>e&&e.length>0?e.map(n=>({...n,isActive:n.label===i})):[],[i,e]),O=n=>{if(e&&e.length>0){let C=e.map(o=>o.id==n?{...o,isActive:!0}:{...o,isActive:!1});S(C);const a=e.find(o=>o.id===n);x((a==null?void 0:a.label)||null)}},p=t.useMemo(()=>({orbits:l,showDetailsTable:f,allowOrbitRotation:b,showTimeControls:v,setOrbits:u,observations:d,updateActiveObservation:O,selectedAnswer:i,swappableOrbits:m}),[l,f,b,v,u,d,O,i,m]);return P.jsx(c.Provider,{value:p,children:s})}exports.OrbitalSimContext=c;exports.OrbitalSimProvider=j;exports.useOrbitalSimContext=g;
1
+ "use client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const g=require("react/jsx-runtime"),e=require("react"),c=e.createContext(null);function j(){const s=e.useContext(c);if(!s)throw new Error("OrbitalSim components cannot be rendered outside the OrbitalSimContext.Provider component.");return s}function h({children:s,orbitData:r,showDetailsTable:f=!1,allowOrbitRotation:b=!1,showTimeControls:v=!1,selectedAnswer:i,updateSelectedAnswer:p,swappableOrbits:m=!1,selectedNeoIndex:S}){const[l,u]=e.useState({neos:null,activeNeo:null,observations:[],paused:!1,pov:null,defaultZoom:null,potentialOrbits:!1,noDetails:!1,refObjs:null,noControls:!1}),[t,O]=e.useState(()=>l.observations??[]);e.useEffect(()=>{u(r),O(r.observations)},[r]);const d=e.useMemo(()=>t&&t.length>0?t.map(n=>({...n,isActive:n.label===i})):[],[i,t]),x=n=>{if(t&&t.length>0){let P=t.map(o=>o.id==n?{...o,isActive:!0}:{...o,isActive:!1});O(P);const a=t.find(o=>o.id===n);p((a==null?void 0:a.label)||null)}},C=e.useMemo(()=>({orbits:l,showDetailsTable:f,allowOrbitRotation:b,showTimeControls:v,setOrbits:u,observations:d,updateActiveObservation:x,selectedAnswer:i,swappableOrbits:m,selectedNeoIndex:S}),[l,f,b,v,u,d,x,i,m,S]);return g.jsx(c.Provider,{value:C,children:s})}exports.OrbitalSimContext=c;exports.OrbitalSimProvider=h;exports.useOrbitalSimContext=j;
@@ -27,4 +27,4 @@ export declare function useOrbitalSimContext(): OrbitalSimContextValues;
27
27
  *
28
28
  * @returns
29
29
  */
30
- export declare function OrbitalSimProvider({ children, orbitData, showDetailsTable, allowOrbitRotation, showTimeControls, selectedAnswer, updateSelectedAnswer, swappableOrbits }: OrbitalSimProviderProps): import("react/jsx-runtime").JSX.Element;
30
+ export declare function OrbitalSimProvider({ children, orbitData, showDetailsTable, allowOrbitRotation, showTimeControls, selectedAnswer, updateSelectedAnswer, swappableOrbits, selectedNeoIndex }: OrbitalSimProviderProps): import("react/jsx-runtime").JSX.Element;
@@ -1,26 +1,27 @@
1
1
  "use client";
2
- import { jsx as P } from "react/jsx-runtime";
3
- import { createContext as g, useState as p, useEffect as j, useMemo as x, useContext as A } from "react";
4
- const O = g(null);
5
- function N() {
6
- const o = A(O);
2
+ import { jsx as g } from "react/jsx-runtime";
3
+ import { createContext as j, useState as x, useEffect as A, useMemo as S, useContext as E } from "react";
4
+ const d = j(null);
5
+ function Z() {
6
+ const o = E(d);
7
7
  if (!o)
8
8
  throw new Error(
9
9
  "OrbitalSim components cannot be rendered outside the OrbitalSimContext.Provider component."
10
10
  );
11
11
  return o;
12
12
  }
13
- function W({
13
+ function k({
14
14
  children: o,
15
15
  orbitData: i,
16
16
  showDetailsTable: a = !1,
17
17
  allowOrbitRotation: f = !1,
18
18
  showTimeControls: c = !1,
19
19
  selectedAnswer: s,
20
- updateSelectedAnswer: S,
21
- swappableOrbits: v = !1
20
+ updateSelectedAnswer: C,
21
+ swappableOrbits: v = !1,
22
+ selectedNeoIndex: b
22
23
  }) {
23
- const [l, r] = p({
24
+ const [r, l] = x({
24
25
  neos: null,
25
26
  activeNeo: null,
26
27
  observations: [],
@@ -29,50 +30,51 @@ function W({
29
30
  defaultZoom: null,
30
31
  potentialOrbits: !1,
31
32
  noDetails: !1,
32
- detailsRows: null,
33
33
  refObjs: null,
34
34
  noControls: !1
35
- }), [t, b] = p(
36
- () => l.observations ?? []
35
+ }), [t, m] = x(
36
+ () => r.observations ?? []
37
37
  );
38
- j(() => {
39
- r(i), b(i.observations);
38
+ A(() => {
39
+ l(i), m(i.observations);
40
40
  }, [i]);
41
- const m = x(
41
+ const p = S(
42
42
  () => t && t.length > 0 ? t.map((e) => ({ ...e, isActive: e.label === s })) : [],
43
43
  [s, t]
44
- ), d = (e) => {
44
+ ), O = (e) => {
45
45
  if (t && t.length > 0) {
46
- let h = t.map((n) => n.id == e ? { ...n, isActive: !0 } : { ...n, isActive: !1 });
47
- b(h);
46
+ let P = t.map((n) => n.id == e ? { ...n, isActive: !0 } : { ...n, isActive: !1 });
47
+ m(P);
48
48
  const u = t.find((n) => n.id === e);
49
- S((u == null ? void 0 : u.label) || null);
49
+ C((u == null ? void 0 : u.label) || null);
50
50
  }
51
- }, C = x(() => ({
52
- orbits: l,
51
+ }, h = S(() => ({
52
+ orbits: r,
53
53
  showDetailsTable: a,
54
54
  allowOrbitRotation: f,
55
55
  showTimeControls: c,
56
- setOrbits: r,
57
- observations: m,
58
- updateActiveObservation: d,
56
+ setOrbits: l,
57
+ observations: p,
58
+ updateActiveObservation: O,
59
59
  selectedAnswer: s,
60
- swappableOrbits: v
60
+ swappableOrbits: v,
61
+ selectedNeoIndex: b
61
62
  }), [
62
- l,
63
+ r,
63
64
  a,
64
65
  f,
65
66
  c,
66
- r,
67
- m,
68
- d,
67
+ l,
68
+ p,
69
+ O,
69
70
  s,
70
- v
71
+ v,
72
+ b
71
73
  ]);
72
- return /* @__PURE__ */ P(O.Provider, { value: C, children: o });
74
+ return /* @__PURE__ */ g(d.Provider, { value: h, children: o });
73
75
  }
74
76
  export {
75
- O as OrbitalSimContext,
76
- W as OrbitalSimProvider,
77
- N as useOrbitalSimContext
77
+ d as OrbitalSimContext,
78
+ k as OrbitalSimProvider,
79
+ Z as useOrbitalSimContext
78
80
  };
@@ -1 +1 @@
1
- "use client";"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("react/jsx-runtime"),s=require("react"),M=require("./Orbitals/OrbitalDetails.cjs"),V=require("./Camera/CameraController.cjs"),W=require("./Camera/Camera.cjs"),B=require("./Orbitals/Orbitals.cjs"),G=require("./Sun.cjs"),N=require("./Controls/PlaybackSpeed.cjs"),A=require("./Controls/PlaybackControls.cjs"),l=require("./styles.cjs"),H=require("./Context/index.cjs");function I(){const{orbits:i,showDetailsTable:q,allowOrbitRotation:v,showTimeControls:m,swappableOrbits:x}=H.useOrbitalSimContext(),{paused:h,pov:y,defaultZoom:c,potentialOrbits:w,detailsRows:P}=i,u={min:1157e-8,max:365.25,initial:11.574,step:1},[n,a]=s.useState(!h),[D,o]=s.useState(1),[R,j]=s.useState(0),[O,d]=s.useState(h?0:u.initial),[g,p]=s.useState(0),[r,b]=s.useState(0),[C,k]=s.useState(1),[f,T]=s.useState({neos:[{Principal_desig:""}]});s.useEffect(()=>{m||(a(!1),d(0)),r>0?(d(u.initial),o(1),p(0),b(-1)):r<0&&(p(0),a(!0),b(0))},[r]);const Z=t=>{d(+t)},_=()=>{n||o(1),a(!n)},F=()=>{a(t=>!1),b(t=>t+1)},z=t=>{a(!1),o(1),j(S=>S+1)},L=t=>{a(!1),o(-1),j(S=>S+1)},E=t=>{T({neos:[t]})};return e.jsxs(e.Fragment,{children:[e.jsx(l.GlobalStyles,{}),e.jsxs(l.OrbitalSimWrapper,{children:[x?e.jsx(l.SwappableOrbitsContainer,{children:i&&i.neos&&i.neos.map(t=>e.jsx(l.SwappableOrbitButton,{onClick:()=>E(t),"data-active":Object.keys(f).length?t.Principal_desig===f.neos[0].Principal_desig:!1,children:t.Ref}))}):e.jsxs(e.Fragment,{children:[P&&q&&e.jsx(M.default,{}),m&&e.jsxs(e.Fragment,{children:[e.jsx(N.default,{elapsedTime:g,dayPerVizSec:O,speeds:u,sliderOnChangeCallback:Z}),e.jsx(A.default,{playing:n,handleStartStop:_,handleNext:z,handlePrevious:L,isDisabled:!1,handleReset:F})]})]}),e.jsxs(l.CanvasWrapper,{orthographic:!0,children:[e.jsx(V.default,{pov:v?null:y??"top",reset:r}),e.jsx(W.default,{near:-1e3,far:1e3,position:[0,0,10],defaultZoom:c||3}),e.jsx("ambientLight",{intensity:.9}),e.jsx(B.default,{defaultZoom:c||1,playing:n,stepDirection:D,dayPerVizSec:O,frameOverride:R,potentialOrbits:w,elapsedTime:g,setElapsedTime:p,reset:r,zoomLevel:C,setZoomLevel:k,orbits:x?f:i}),e.jsx(G.default,{zoomLevel:C,defaultZoom:c||1})]})]})]})}exports.default=I;
1
+ "use client";"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("react/jsx-runtime"),s=require("react"),M=require("./Orbitals/OrbitalDetails.cjs"),N=require("./Camera/CameraController.cjs"),V=require("./Camera/Camera.cjs"),W=require("./Orbitals/Orbitals.cjs"),B=require("./Sun.cjs"),G=require("./Controls/PlaybackSpeed.cjs"),I=require("./Controls/PlaybackControls.cjs"),n=require("./styles.cjs"),A=require("./Context/index.cjs");function H(){const{orbits:i,showDetailsTable:q,allowOrbitRotation:v,showTimeControls:m,swappableOrbits:x,selectedNeoIndex:y}=A.useOrbitalSimContext(),{paused:h,pov:P,defaultZoom:c,potentialOrbits:w}=i,u={min:1157e-8,max:365.25,initial:11.574,step:1},[l,a]=s.useState(!h),[D,o]=s.useState(1),[k,j]=s.useState(0),[O,d]=s.useState(h?0:u.initial),[g,p]=s.useState(0),[r,b]=s.useState(0),[C,R]=s.useState(1),[f,T]=s.useState({neos:[{Principal_desig:""}]});s.useEffect(()=>{m||(a(!1),d(0)),r>0?(d(u.initial),o(1),p(0),b(-1)):r<0&&(p(0),a(!0),b(0))},[r]);const Z=t=>{d(+t)},_=()=>{l||o(1),a(!l)},F=()=>{a(t=>!1),b(t=>t+1)},z=t=>{a(!1),o(1),j(S=>S+1)},L=t=>{a(!1),o(-1),j(S=>S+1)},E=t=>{T({neos:[t]})};return e.jsxs(e.Fragment,{children:[e.jsx(n.GlobalStyles,{}),e.jsxs(n.OrbitalSimWrapper,{children:[x?e.jsx(n.SwappableOrbitsContainer,{children:i&&i.neos&&i.neos.map(t=>e.jsx(n.SwappableOrbitButton,{onClick:()=>E(t),"data-active":Object.keys(f).length?t.Principal_desig===f.neos[0].Principal_desig:!1,children:t.Ref}))}):e.jsxs(e.Fragment,{children:[q&&e.jsx(M.default,{}),m&&e.jsxs(e.Fragment,{children:[e.jsx(G.default,{elapsedTime:g,dayPerVizSec:O,speeds:u,sliderOnChangeCallback:Z}),e.jsx(I.default,{playing:l,handleStartStop:_,handleNext:z,handlePrevious:L,isDisabled:!1,handleReset:F})]})]}),e.jsxs(n.CanvasWrapper,{orthographic:!0,children:[e.jsx(N.default,{pov:v?null:P??"top",reset:r}),e.jsx(V.default,{near:-1e3,far:1e3,position:[0,0,10],defaultZoom:c||3}),e.jsx("ambientLight",{intensity:.9}),e.jsx(W.default,{defaultZoom:c||1,playing:l,stepDirection:D,dayPerVizSec:O,frameOverride:k,potentialOrbits:w,elapsedTime:g,setElapsedTime:p,reset:r,zoomLevel:C,setZoomLevel:R,selectedNeoIndex:y,orbits:x?f:i}),e.jsx(B.default,{zoomLevel:C,defaultZoom:c||1})]})]})]})}exports.default=H;
@@ -1,24 +1,23 @@
1
1
  "use client";
2
2
  import { jsxs as s, Fragment as h, jsx as t } from "react/jsx-runtime";
3
- import { useState as i, useEffect as B } from "react";
4
- import G from "./Orbitals/OrbitalDetails.js";
5
- import N from "./Camera/CameraController.js";
6
- import q from "./Camera/Camera.js";
7
- import A from "./Orbitals/Orbitals.js";
8
- import H from "./Sun.js";
9
- import I from "./Controls/PlaybackSpeed.js";
3
+ import { useState as i, useEffect as W } from "react";
4
+ import B from "./Orbitals/OrbitalDetails.js";
5
+ import G from "./Camera/CameraController.js";
6
+ import I from "./Camera/Camera.js";
7
+ import q from "./Orbitals/Orbitals.js";
8
+ import A from "./Sun.js";
9
+ import H from "./Controls/PlaybackSpeed.js";
10
10
  import J from "./Controls/PlaybackControls.js";
11
11
  import { GlobalStyles as K, OrbitalSimWrapper as M, SwappableOrbitsContainer as Q, SwappableOrbitButton as U, CanvasWrapper as X } from "./styles.js";
12
12
  import { useOrbitalSimContext as Y } from "./Context/index.js";
13
13
  function me() {
14
- const { orbits: o, showDetailsTable: P, allowOrbitRotation: D, showTimeControls: S, swappableOrbits: O } = Y(), {
14
+ const { orbits: o, showDetailsTable: P, allowOrbitRotation: x, showTimeControls: S, swappableOrbits: O, selectedNeoIndex: D } = Y(), {
15
15
  paused: C,
16
- pov: x,
16
+ pov: k,
17
17
  defaultZoom: p,
18
- potentialOrbits: k,
19
- detailsRows: R
20
- } = o, c = { min: 1157e-8, max: 365.25, initial: 11.574, step: 1 }, [l, a] = i(!C), [Z, n] = i(1), [T, g] = i(0), [w, m] = i(C ? 0 : c.initial), [v, d] = i(0), [r, f] = i(0), [y, j] = i(1), [b, z] = i({ neos: [{ Principal_desig: "" }] });
21
- B(() => {
18
+ potentialOrbits: Z
19
+ } = o, c = { min: 1157e-8, max: 365.25, initial: 11.574, step: 1 }, [l, a] = i(!C), [R, n] = i(1), [T, g] = i(0), [v, m] = i(C ? 0 : c.initial), [w, d] = i(0), [r, f] = i(0), [y, j] = i(1), [b, z] = i({ neos: [{ Principal_desig: "" }] });
20
+ W(() => {
22
21
  S || (a(!1), m(0)), r > 0 ? (m(c.initial), n(1), d(0), f(-1)) : r < 0 && (d(0), a(!0), f(0));
23
22
  }, [r]);
24
23
  const L = (e) => {
@@ -29,9 +28,9 @@ function me() {
29
28
  a((e) => !1), f((e) => e + 1);
30
29
  }, F = (e) => {
31
30
  a(!1), n(1), g((u) => u + 1);
32
- }, V = (e) => {
31
+ }, N = (e) => {
33
32
  a(!1), n(-1), g((u) => u + 1);
34
- }, W = (e) => {
33
+ }, V = (e) => {
35
34
  z({
36
35
  neos: [e]
37
36
  });
@@ -42,18 +41,18 @@ function me() {
42
41
  O ? /* @__PURE__ */ t(Q, { children: o && o.neos && o.neos.map((e) => /* @__PURE__ */ t(
43
42
  U,
44
43
  {
45
- onClick: () => W(e),
44
+ onClick: () => V(e),
46
45
  "data-active": Object.keys(b).length ? e.Principal_desig === b.neos[0].Principal_desig : !1,
47
46
  children: e.Ref
48
47
  }
49
48
  )) }) : /* @__PURE__ */ s(h, { children: [
50
- R && P && /* @__PURE__ */ t(G, {}),
49
+ P && /* @__PURE__ */ t(B, {}),
51
50
  S && /* @__PURE__ */ s(h, { children: [
52
51
  /* @__PURE__ */ t(
53
- I,
52
+ H,
54
53
  {
55
- elapsedTime: v,
56
- dayPerVizSec: w,
54
+ elapsedTime: w,
55
+ dayPerVizSec: v,
57
56
  speeds: c,
58
57
  sliderOnChangeCallback: L
59
58
  }
@@ -64,7 +63,7 @@ function me() {
64
63
  playing: l,
65
64
  handleStartStop: _,
66
65
  handleNext: F,
67
- handlePrevious: V,
66
+ handlePrevious: N,
68
67
  isDisabled: !1,
69
68
  handleReset: E
70
69
  }
@@ -72,9 +71,9 @@ function me() {
72
71
  ] })
73
72
  ] }),
74
73
  /* @__PURE__ */ s(X, { orthographic: !0, children: [
75
- /* @__PURE__ */ t(N, { pov: D ? null : x ?? "top", reset: r }),
74
+ /* @__PURE__ */ t(G, { pov: x ? null : k ?? "top", reset: r }),
76
75
  /* @__PURE__ */ t(
77
- q,
76
+ I,
78
77
  {
79
78
  near: -1e3,
80
79
  far: 1e3,
@@ -84,24 +83,25 @@ function me() {
84
83
  ),
85
84
  /* @__PURE__ */ t("ambientLight", { intensity: 0.9 }),
86
85
  /* @__PURE__ */ t(
87
- A,
86
+ q,
88
87
  {
89
88
  defaultZoom: p || 1,
90
89
  playing: l,
91
- stepDirection: Z,
92
- dayPerVizSec: w,
90
+ stepDirection: R,
91
+ dayPerVizSec: v,
93
92
  frameOverride: T,
94
- potentialOrbits: k,
95
- elapsedTime: v,
93
+ potentialOrbits: Z,
94
+ elapsedTime: w,
96
95
  setElapsedTime: d,
97
96
  reset: r,
98
97
  zoomLevel: y,
99
98
  setZoomLevel: j,
99
+ selectedNeoIndex: D,
100
100
  orbits: O ? b : o
101
101
  }
102
102
  ),
103
103
  /* @__PURE__ */ t(
104
- H,
104
+ A,
105
105
  {
106
106
  zoomLevel: y,
107
107
  defaultZoom: p || 1
@@ -1 +1 @@
1
- "use client";"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("react/jsx-runtime"),n=require("react"),c=require("@rubin-epo/epo-react-lib/Button"),u=require("../Context/index.cjs"),s=require("./styles.cjs"),d=require("../styles.cjs"),a=t=>t&&t.__esModule?t:{default:t},x=a(c);function h(){const{orbits:t}=u.useOrbitalSimContext(),{detailsRows:l}=t,[i,o]=n.useState(!1);return e.jsxs(e.Fragment,{children:[e.jsx(d.GlobalStyles,{}),e.jsx(s.ButtonWrapper,{styleAs:"secondary",isInactive:!l,onClick:()=>{o(!i)},children:i?"Hide Details":"Show Details"}),e.jsx(s.SlideoutWrapper,{slideFrom:"left",isOpen:i,children:e.jsxs(s.SlideoutPanel,{children:[e.jsx("h3",{children:"Orbital Details"}),l&&l.map(r=>e.jsxs(s.SlideoutRow,{children:[e.jsx(s.SlideoutColLeft,{children:e.jsx("p",{children:r.rowTitle})}),e.jsx(s.SlideoutColRight,{children:e.jsx("p",{children:r.rowContent})})]},r.rowTitle)),e.jsx(x.default,{isBlock:!0,onClick:()=>o(!i),children:"Close"})]})})]})}exports.default=h;
1
+ "use client";"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("react/jsx-runtime"),u=require("react"),d=require("@rubin-epo/epo-react-lib/Button"),a=require("../Context/index.cjs"),s=require("./styles.cjs"),x=require("../styles.cjs"),j=t=>t&&t.__esModule?t:{default:t},h=j(d);function S(){var r;const[t,o]=u.useState(!1),{orbits:n,selectedNeoIndex:c}=a.useOrbitalSimContext(),{object_details:l}=((r=n.neos)==null?void 0:r[c])||{};return e.jsxs(e.Fragment,{children:[e.jsx(x.GlobalStyles,{}),e.jsx(s.ButtonWrapper,{styleAs:"secondary",isInactive:!l,onClick:()=>{o(!t)},children:t?"Hide Details":"Show Details"}),e.jsx(s.SlideoutWrapper,{slideFrom:"left",isOpen:t,children:e.jsxs(s.SlideoutPanel,{children:[e.jsx("h3",{children:"Orbital Details"}),l&&l.map(i=>e.jsxs(s.SlideoutRow,{children:[e.jsx(s.SlideoutColLeft,{children:e.jsx("p",{children:i.rowTitle})}),e.jsx(s.SlideoutColRight,{children:e.jsx("p",{children:i.rowContent})})]},i.rowTitle)),e.jsx(h.default,{isBlock:!0,onClick:()=>o(!t),children:"Close"})]})})]})}exports.default=S;
@@ -1,38 +1,39 @@
1
1
  "use client";
2
- import { jsxs as l, Fragment as s, jsx as t } from "react/jsx-runtime";
3
- import { useState as c } from "react";
4
- import a from "@rubin-epo/epo-react-lib/Button";
5
- import { useOrbitalSimContext as d } from "../Context/index.js";
6
- import { ButtonWrapper as m, SlideoutWrapper as p, SlideoutPanel as h, SlideoutRow as u, SlideoutColLeft as f, SlideoutColRight as S } from "./styles.js";
2
+ import { jsxs as l, Fragment as d, jsx as e } from "react/jsx-runtime";
3
+ import { useState as a } from "react";
4
+ import m from "@rubin-epo/epo-react-lib/Button";
5
+ import { useOrbitalSimContext as p } from "../Context/index.js";
6
+ import { ButtonWrapper as h, SlideoutWrapper as u, SlideoutPanel as f, SlideoutRow as S, SlideoutColLeft as C, SlideoutColRight as b } from "./styles.js";
7
7
  import { GlobalStyles as w } from "../styles.js";
8
- function v() {
9
- const { orbits: n } = d(), {
10
- detailsRows: i
11
- } = n, [e, r] = c(!1);
12
- return /* @__PURE__ */ l(s, { children: [
13
- /* @__PURE__ */ t(w, {}),
14
- /* @__PURE__ */ t(
15
- m,
8
+ function y() {
9
+ var n;
10
+ const [t, r] = a(!1), { orbits: s, selectedNeoIndex: c } = p(), {
11
+ object_details: i
12
+ } = ((n = s.neos) == null ? void 0 : n[c]) || {};
13
+ return /* @__PURE__ */ l(d, { children: [
14
+ /* @__PURE__ */ e(w, {}),
15
+ /* @__PURE__ */ e(
16
+ h,
16
17
  {
17
18
  styleAs: "secondary",
18
19
  isInactive: !i,
19
20
  onClick: () => {
20
- r(!e);
21
+ r(!t);
21
22
  },
22
- children: e ? "Hide Details" : "Show Details"
23
+ children: t ? "Hide Details" : "Show Details"
23
24
  }
24
25
  ),
25
- /* @__PURE__ */ t(p, { slideFrom: "left", isOpen: e, children: /* @__PURE__ */ l(h, { children: [
26
- /* @__PURE__ */ t("h3", { children: "Orbital Details" }),
27
- i && i.map((o) => /* @__PURE__ */ l(u, { children: [
28
- /* @__PURE__ */ t(f, { children: /* @__PURE__ */ t("p", { children: o.rowTitle }) }),
29
- /* @__PURE__ */ t(S, { children: /* @__PURE__ */ t("p", { children: o.rowContent }) })
26
+ /* @__PURE__ */ e(u, { slideFrom: "left", isOpen: t, children: /* @__PURE__ */ l(f, { children: [
27
+ /* @__PURE__ */ e("h3", { children: "Orbital Details" }),
28
+ i && i.map((o) => /* @__PURE__ */ l(S, { children: [
29
+ /* @__PURE__ */ e(C, { children: /* @__PURE__ */ e("p", { children: o.rowTitle }) }),
30
+ /* @__PURE__ */ e(b, { children: /* @__PURE__ */ e("p", { children: o.rowContent }) })
30
31
  ] }, o.rowTitle)),
31
- /* @__PURE__ */ t(
32
- a,
32
+ /* @__PURE__ */ e(
33
+ m,
33
34
  {
34
35
  isBlock: !0,
35
- onClick: () => r(!e),
36
+ onClick: () => r(!t),
36
37
  children: "Close"
37
38
  }
38
39
  )
@@ -40,5 +41,5 @@ function v() {
40
41
  ] });
41
42
  }
42
43
  export {
43
- v as default
44
+ y as default
44
45
  };
@@ -1 +1 @@
1
- "use client";"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const o=require("react/jsx-runtime"),O=require("react"),e=require("../../../node_modules/prop-types/index.cjs"),R=require("@react-three/fiber"),x=require("./Orbital.cjs"),F=require("./PotentialOrbits.cjs"),v=require("../orbitalUtilities.cjs");function h({playing:s,dayPerVizSec:i,stepDirection:u,frameOverride:a,defaultZoom:b,potentialOrbits:C,elapsedTime:m,setElapsedTime:p,reset:j,zoomLevel:l,setZoomLevel:M,orbits:$}){const{neos:n,refObjs:I,activeNeo:P}=$;function _(r){const{remainingInits:t}=r;return{remainingInits:t-1}}const{camera:g}=R.useThree(),[k,q]=O.useReducer(_,{remainingInits:n&&Array.isArray(n)?n.length:0});function T(){return(I||["earth","jupiter","mars","neptune"]).map(v.getRefObjProps).map(t=>{const{orbitColor:c,objectColor:f,objectRadius:d,Ref:y,Principal_desig:z,name:A}=t;return o.jsx(x.default,{type:"planet",data:t,position:[0,0,0],zoomMod:l,defaultZoom:b,playing:s,stepDirection:u,dayPerVizSec:i,frameOverride:a,orbitColor:c,objectColor:f,objectRadius:d,reset:j},`${y}-${z||A}`)})}return R.useFrame((r,t)=>{g.zoom!==l&&M(g.zoom),s&&p(m+u*t*i)}),O.useEffect(()=>{a&&p(m+u*(1/60)*i)},[a]),o.jsxs(o.Fragment,{children:[T(),C?o.jsx(F.default,{data:n,position:[0,0,0],initialized:!0,zoomMod:l,defaultZoom:b,playing:s,stepDirection:u,dayPerVizSec:i,frameOverride:a,initCallback:q}):n?n.map((r,t)=>{const{Ref:c,Principal_desig:f,name:d}=r;return o.jsx(x.default,{type:"neo",data:r,position:[0,0,0],active:r===P,initialized:k.remainingInits<=0,zoomMod:l,defaultZoom:b,playing:s,stepDirection:u,dayPerVizSec:i,frameOverride:a,reset:j,initCallback:q},c&&(f||d)?`${c}-${f||d}`:`orbit-${t}`)}):null]})}h.propTypes={playing:e.default.bool,dayPerVizSec:e.default.number,stepDirection:e.default.number,frameOverride:e.default.number,activeVelocityCallback:e.default.func,defaultZoom:e.default.number,zoomLevel:e.default.number,setZoomLevel:e.default.func,potentialOrbits:e.default.bool,elapsedTime:e.default.number,setElapsedTime:e.default.func,reset:e.default.number};exports.default=h;
1
+ "use client";"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const o=require("react/jsx-runtime"),h=require("react"),e=require("../../../node_modules/prop-types/index.cjs"),x=require("@react-three/fiber"),C=require("./Orbital.cjs"),v=require("./PotentialOrbits.cjs"),E=require("../orbitalUtilities.cjs");function M({playing:s,dayPerVizSec:i,stepDirection:n,frameOverride:u,defaultZoom:d,potentialOrbits:$,elapsedTime:p,setElapsedTime:j,reset:g,zoomLevel:l,setZoomLevel:I,selectedNeoIndex:q,orbits:P}){const{neos:m,refObjs:_,activeNeo:k}=P,a=Number.isInteger(q)?[m[q]]:m;function T(r){const{remainingInits:t}=r;return{remainingInits:t-1}}const{camera:O}=x.useThree(),[y,R]=h.useReducer(T,{remainingInits:a&&Array.isArray(a)?a.length:0});function z(){return(_||["earth","jupiter","mars","neptune"]).map(E.getRefObjProps).map(t=>{const{orbitColor:f,objectColor:c,objectRadius:b,Ref:A,Principal_desig:F,name:N}=t;return o.jsx(C.default,{type:"planet",data:t,position:[0,0,0],zoomMod:l,defaultZoom:d,playing:s,stepDirection:n,dayPerVizSec:i,frameOverride:u,orbitColor:f,objectColor:c,objectRadius:b,reset:g},`${A}-${F||N}`)})}return x.useFrame((r,t)=>{O.zoom!==l&&I(O.zoom),s&&j(p+n*t*i)}),h.useEffect(()=>{u&&j(p+n*(1/60)*i)},[u]),o.jsxs(o.Fragment,{children:[z(),$?o.jsx(v.default,{data:m,position:[0,0,0],initialized:!0,zoomMod:l,defaultZoom:d,playing:s,stepDirection:n,dayPerVizSec:i,frameOverride:u,initCallback:R}):a?a.map((r,t)=>{const{Ref:f,Principal_desig:c,name:b}=r;return o.jsx(C.default,{type:"neo",data:r,position:[0,0,0],active:r===k,initialized:y.remainingInits<=0,zoomMod:l,defaultZoom:d,playing:s,stepDirection:n,dayPerVizSec:i,frameOverride:u,reset:g,initCallback:R},f&&(c||b)?`${f}-${c||b}`:`orbit-${t}`)}):null]})}M.propTypes={playing:e.default.bool,dayPerVizSec:e.default.number,stepDirection:e.default.number,frameOverride:e.default.number,activeVelocityCallback:e.default.func,defaultZoom:e.default.number,zoomLevel:e.default.number,setZoomLevel:e.default.func,potentialOrbits:e.default.bool,elapsedTime:e.default.number,setElapsedTime:e.default.func,reset:e.default.number};exports.default=M;
@@ -1,5 +1,5 @@
1
1
  export default Orbitals;
2
- declare function Orbitals({ playing, dayPerVizSec, stepDirection, frameOverride, defaultZoom, potentialOrbits, elapsedTime, setElapsedTime, reset, zoomLevel, setZoomLevel, orbits }: {
2
+ declare function Orbitals({ playing, dayPerVizSec, stepDirection, frameOverride, defaultZoom, potentialOrbits, elapsedTime, setElapsedTime, reset, zoomLevel, setZoomLevel, selectedNeoIndex, orbits }: {
3
3
  playing: any;
4
4
  dayPerVizSec: any;
5
5
  stepDirection: any;
@@ -11,6 +11,7 @@ declare function Orbitals({ playing, dayPerVizSec, stepDirection, frameOverride,
11
11
  reset: any;
12
12
  zoomLevel: any;
13
13
  setZoomLevel: any;
14
+ selectedNeoIndex: any;
14
15
  orbits: any;
15
16
  }): import("react/jsx-runtime").JSX.Element;
16
17
  declare namespace Orbitals {
@@ -1,113 +1,114 @@
1
1
  "use client";
2
- import { jsxs as A, Fragment as F, jsx as f } from "react/jsx-runtime";
3
- import { useReducer as _, useEffect as E } from "react";
2
+ import { jsxs as N, Fragment as _, jsx as l } from "react/jsx-runtime";
3
+ import { useReducer as E, useEffect as q } from "react";
4
4
  import t from "../../../node_modules/prop-types/index.js";
5
- import { useThree as N, useFrame as q } from "@react-three/fiber";
6
- import R from "./Orbital.js";
7
- import w from "./PotentialOrbits.js";
8
- import { getRefObjProps as B } from "../orbitalUtilities.js";
9
- function G({
5
+ import { useThree as w, useFrame as B } from "@react-three/fiber";
6
+ import C from "./Orbital.js";
7
+ import G from "./PotentialOrbits.js";
8
+ import { getRefObjProps as H } from "../orbitalUtilities.js";
9
+ function J({
10
10
  playing: a,
11
- dayPerVizSec: n,
11
+ dayPerVizSec: e,
12
12
  stepDirection: i,
13
- frameOverride: s,
14
- defaultZoom: c,
15
- potentialOrbits: h,
16
- elapsedTime: l,
17
- setElapsedTime: d,
18
- reset: j,
13
+ frameOverride: n,
14
+ defaultZoom: f,
15
+ potentialOrbits: $,
16
+ elapsedTime: d,
17
+ setElapsedTime: j,
18
+ reset: g,
19
19
  zoomLevel: m,
20
- setZoomLevel: C,
21
- orbits: $
20
+ setZoomLevel: I,
21
+ selectedNeoIndex: O,
22
+ orbits: P
22
23
  }) {
23
24
  const {
24
- neos: e,
25
- refObjs: I,
26
- activeNeo: P
27
- } = $;
28
- function k(o) {
25
+ neos: c,
26
+ refObjs: k,
27
+ activeNeo: M
28
+ } = P, s = Number.isInteger(O) ? [c[O]] : c;
29
+ function T(o) {
29
30
  const { remainingInits: r } = o;
30
31
  return { remainingInits: r - 1 };
31
32
  }
32
- const { camera: g } = N(), [x, O] = _(k, {
33
- remainingInits: e && Array.isArray(e) ? e.length : 0
33
+ const { camera: R } = w(), [x, h] = E(T, {
34
+ remainingInits: s && Array.isArray(s) ? s.length : 0
34
35
  });
35
- function M() {
36
- return (I || ["earth", "jupiter", "mars", "neptune"]).map(B).map((r) => {
36
+ function y() {
37
+ return (k || ["earth", "jupiter", "mars", "neptune"]).map(H).map((r) => {
37
38
  const {
38
39
  orbitColor: u,
39
40
  objectColor: p,
40
41
  objectRadius: b,
41
- Ref: T,
42
- Principal_desig: y,
43
- name: z
42
+ Ref: z,
43
+ Principal_desig: A,
44
+ name: F
44
45
  } = r;
45
- return /* @__PURE__ */ f(
46
- R,
46
+ return /* @__PURE__ */ l(
47
+ C,
47
48
  {
48
49
  type: "planet",
49
50
  data: r,
50
51
  position: [0, 0, 0],
51
52
  zoomMod: m,
52
- defaultZoom: c,
53
+ defaultZoom: f,
53
54
  playing: a,
54
55
  stepDirection: i,
55
- dayPerVizSec: n,
56
- frameOverride: s,
56
+ dayPerVizSec: e,
57
+ frameOverride: n,
57
58
  orbitColor: u,
58
59
  objectColor: p,
59
60
  objectRadius: b,
60
- reset: j
61
+ reset: g
61
62
  },
62
- `${T}-${y || z}`
63
+ `${z}-${A || F}`
63
64
  );
64
65
  });
65
66
  }
66
- return q((o, r) => {
67
- g.zoom !== m && C(g.zoom), a && d(l + i * r * n);
68
- }), E(() => {
69
- s && d(l + i * (1 / 60) * n);
70
- }, [s]), /* @__PURE__ */ A(F, { children: [
71
- M(),
72
- h ? /* @__PURE__ */ f(
73
- w,
67
+ return B((o, r) => {
68
+ R.zoom !== m && I(R.zoom), a && j(d + i * r * e);
69
+ }), q(() => {
70
+ n && j(d + i * (1 / 60) * e);
71
+ }, [n]), /* @__PURE__ */ N(_, { children: [
72
+ y(),
73
+ $ ? /* @__PURE__ */ l(
74
+ G,
74
75
  {
75
- data: e,
76
+ data: c,
76
77
  position: [0, 0, 0],
77
78
  initialized: !0,
78
79
  zoomMod: m,
79
- defaultZoom: c,
80
+ defaultZoom: f,
80
81
  playing: a,
81
82
  stepDirection: i,
82
- dayPerVizSec: n,
83
- frameOverride: s,
84
- initCallback: O
83
+ dayPerVizSec: e,
84
+ frameOverride: n,
85
+ initCallback: h
85
86
  }
86
- ) : e ? e.map((o, r) => {
87
+ ) : s ? s.map((o, r) => {
87
88
  const { Ref: u, Principal_desig: p, name: b } = o;
88
- return /* @__PURE__ */ f(
89
- R,
89
+ return /* @__PURE__ */ l(
90
+ C,
90
91
  {
91
92
  type: "neo",
92
93
  data: o,
93
94
  position: [0, 0, 0],
94
- active: o === P,
95
+ active: o === M,
95
96
  initialized: x.remainingInits <= 0,
96
97
  zoomMod: m,
97
- defaultZoom: c,
98
+ defaultZoom: f,
98
99
  playing: a,
99
100
  stepDirection: i,
100
- dayPerVizSec: n,
101
- frameOverride: s,
102
- reset: j,
103
- initCallback: O
101
+ dayPerVizSec: e,
102
+ frameOverride: n,
103
+ reset: g,
104
+ initCallback: h
104
105
  },
105
106
  u && (p || b) ? `${u}-${p || b}` : `orbit-${r}`
106
107
  );
107
108
  }) : null
108
109
  ] });
109
110
  }
110
- G.propTypes = {
111
+ J.propTypes = {
111
112
  playing: t.bool,
112
113
  dayPerVizSec: t.number,
113
114
  stepDirection: t.number,
@@ -122,5 +123,5 @@ G.propTypes = {
122
123
  reset: t.number
123
124
  };
124
125
  export {
125
- G as default
126
+ J as default
126
127
  };
@@ -1 +1 @@
1
- "use client";"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("react/jsx-runtime"),S=require("react"),_=require("d3-geo-projection"),M=require("d3-geo"),q=require("d3-array"),E=require("../../../atomic/ImageStack/index.cjs"),a=require("./styles.cjs"),N=require("../../../charts/Base/index.cjs"),U=require("../../../charts/Tooltip/index.cjs"),y=({className:L,objects:p=[],images:v=[],visibleImages:w=[],describedById:G})=>{const[O,P]=S.useState(!1),[x,f]=S.useState(),l=600,c=300,n={top:20,right:0,bottom:20,left:20},W=l+n.right+n.left,$=c+n.top+n.bottom,d=15,u=30,j=-90,m=90,g=-180,k=180,h=2,i=_.geoAitoff(),s=M.geoGraticule();s.step([u,d]),s.extent([[g,j],[k,m]]),i.fitExtent([[n.left,n.top],[n.left+l-h,n.top+c]],s.outline());const B=q.range(j+d,m,d),A=q.range(g+u,k,u),C=M.geoPath(i).pointRadius(6),r=t=>C(t)||void 0,o=typeof x<"u"?p[x]:void 0,b=(o?i([o==null?void 0:o.long,o==null?void 0:o.lat]):[0,0])||[0,0];return e.jsxs(N.default,{width:W,height:$,className:L,children:[e.jsx("mask",{id:"imageMask",children:e.jsx("path",{d:r(s.outline()),fill:"white"})}),e.jsx(a.Background,{d:r(s.outline())}),e.jsx(a.Graticule,{d:r(s())}),e.jsx(a.ImageStackerWrapper,{style:{"--image-stack-opacity":O&&1},x:n.left,y:n.top,width:l-h,height:c,mask:"url(#imageMask)",children:e.jsx(E.default,{images:v,describedById:G,visible:w,loadCallback:()=>P(!0),showBackdrop:!1,showLoader:!1})}),e.jsx("g",{children:p.map(({id:t,lat:H,long:R},T)=>e.jsx(a.UserObject,{d:r({type:"Point",coordinates:[R,H]}),onMouseOver:()=>f(T),onMouseOut:()=>f(void 0)},t))}),e.jsx("g",{"aria-hidden":"true",children:B.map(t=>t===0?null:e.jsxs(a.LatLabel,{style:{dominantBaseline:t>0?"text-after-edge":"text-before-edge"},transform:`translate(${i([g,t])})`,children:[t,"°"]},t))}),e.jsx("g",{"aria-hidden":"true",children:A.map(t=>e.jsxs(a.LongLabel,{transform:`translate(${i([t,0])})`,children:[t,"°"]},t))}),e.jsx(a.Outline,{strokeWidth:h,d:r(s.outline())}),e.jsx(U.default,{visible:!!o,x:b[0],y:b[1],children:o==null?void 0:o.id})]})};y.displayName="Widgets.SupernovaThreeVector.Skymap";exports.default=y;
1
+ "use client";"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("react/jsx-runtime"),b=require("react"),_=require("d3-geo-projection"),S=require("d3-geo"),M=require("d3-array"),E=require("../../../charts/Base/index.cjs");require("../../../charts/XAxis/index.cjs");require("../../../charts/YAxis/index.cjs");require("../../../charts/Guidelines/index.cjs");const N=require("../../../charts/Tooltip/index.cjs");require("../../../charts/Bars/index.cjs");require("../../../charts/Viewport/index.cjs");require("../../../charts/ScatterPlot/index.cjs");const U=require("../../../atomic/ImageStack/index.cjs"),r=require("./styles.cjs"),y=({className:L,objects:p=[],images:v=[],visibleImages:w=[],describedById:G})=>{const[O,P]=b.useState(!1),[x,f]=b.useState(),l=600,c=300,n={top:20,right:0,bottom:20,left:20},W=l+n.right+n.left,$=c+n.top+n.bottom,d=15,u=30,j=-90,m=90,g=-180,q=180,h=2,i=_.geoAitoff(),s=S.geoGraticule();s.step([u,d]),s.extent([[g,j],[q,m]]),i.fitExtent([[n.left,n.top],[n.left+l-h,n.top+c]],s.outline());const B=M.range(j+d,m,d),A=M.range(g+u,q,u),C=S.geoPath(i).pointRadius(6),a=t=>C(t)||void 0,o=typeof x<"u"?p[x]:void 0,k=(o?i([o==null?void 0:o.long,o==null?void 0:o.lat]):[0,0])||[0,0];return e.jsxs(E.default,{width:W,height:$,className:L,children:[e.jsx("mask",{id:"imageMask",children:e.jsx("path",{d:a(s.outline()),fill:"white"})}),e.jsx(r.Background,{d:a(s.outline())}),e.jsx(r.Graticule,{d:a(s())}),e.jsx(r.ImageStackerWrapper,{style:{"--image-stack-opacity":O&&1},x:n.left,y:n.top,width:l-h,height:c,mask:"url(#imageMask)",children:e.jsx(U.default,{images:v,describedById:G,visible:w,loadCallback:()=>P(!0),showBackdrop:!1,showLoader:!1})}),e.jsx("g",{children:p.map(({id:t,lat:H,long:R},T)=>e.jsx(r.UserObject,{d:a({type:"Point",coordinates:[R,H]}),onMouseOver:()=>f(T),onMouseOut:()=>f(void 0)},t))}),e.jsx("g",{"aria-hidden":"true",children:B.map(t=>t===0?null:e.jsxs(r.LatLabel,{style:{dominantBaseline:t>0?"text-after-edge":"text-before-edge"},transform:`translate(${i([g,t])})`,children:[t,"°"]},t))}),e.jsx("g",{"aria-hidden":"true",children:A.map(t=>e.jsxs(r.LongLabel,{transform:`translate(${i([t,0])})`,children:[t,"°"]},t))}),e.jsx(r.Outline,{strokeWidth:h,d:a(s.outline())}),e.jsx(N.default,{visible:!!o,x:k[0],y:k[1],children:o==null?void 0:o.id})]})};y.displayName="Widgets.SupernovaThreeVector.Skymap";exports.default=y;
@@ -1,13 +1,19 @@
1
1
  "use client";
2
- import { jsxs as h, jsx as e } from "react/jsx-runtime";
2
+ import { jsxs as h, jsx as o } from "react/jsx-runtime";
3
3
  import { useState as L } from "react";
4
4
  import { geoAitoff as E } from "d3-geo-projection";
5
5
  import { geoGraticule as N, geoPath as R } from "d3-geo";
6
6
  import { range as M } from "d3-array";
7
- import U from "../../../atomic/ImageStack/index.js";
8
- import { Background as V, Graticule as q, ImageStackerWrapper as z, UserObject as D, LatLabel as F, LongLabel as J, Outline as K } from "./styles.js";
9
- import Q from "../../../charts/Base/index.js";
10
- import X from "../../../charts/Tooltip/index.js";
7
+ import U from "../../../charts/Base/index.js";
8
+ import "../../../charts/XAxis/index.js";
9
+ import "../../../charts/YAxis/index.js";
10
+ import "../../../charts/Guidelines/index.js";
11
+ import V from "../../../charts/Tooltip/index.js";
12
+ import "../../../charts/Bars/index.js";
13
+ import "../../../charts/Viewport/index.js";
14
+ import "../../../charts/ScatterPlot/index.js";
15
+ import q from "../../../atomic/ImageStack/index.js";
16
+ import { Background as z, Graticule as D, ImageStackerWrapper as F, UserObject as J, LatLabel as K, LongLabel as Q, Outline as X } from "./styles.js";
11
17
  const Y = ({
12
18
  className: y,
13
19
  objects: g = [],
@@ -15,38 +21,38 @@ const Y = ({
15
21
  visibleImages: w = [],
16
22
  describedById: B
17
23
  }) => {
18
- const [O, W] = L(!1), [f, u] = L(), s = 600, l = 300, a = {
24
+ const [O, W] = L(!1), [f, u] = L(), s = 600, l = 300, i = {
19
25
  top: 20,
20
26
  right: 0,
21
27
  bottom: 20,
22
28
  left: 20
23
- }, j = s + a.right + a.left, C = l + a.top + a.bottom, c = 15, d = 30, k = -90, x = 90, p = -180, b = 180, m = 2, i = E(), n = N();
24
- n.step([d, c]), n.extent([
29
+ }, j = s + i.right + i.left, C = l + i.top + i.bottom, c = 15, d = 30, k = -90, x = 90, p = -180, b = 180, m = 2, a = E(), r = N();
30
+ r.step([d, c]), r.extent([
25
31
  [p, k],
26
32
  [b, x]
27
- ]), i.fitExtent(
33
+ ]), a.fitExtent(
28
34
  [
29
- [a.left, a.top],
30
- [a.left + s - m, a.top + l]
35
+ [i.left, i.top],
36
+ [i.left + s - m, i.top + l]
31
37
  ],
32
- n.outline()
38
+ r.outline()
33
39
  );
34
- const G = M(k + c, x, c), H = M(p + d, b, d), P = R(i).pointRadius(6), r = (t) => P(t) || void 0, o = typeof f < "u" ? g[f] : void 0, S = (o ? i([o == null ? void 0 : o.long, o == null ? void 0 : o.lat]) : [0, 0]) || [0, 0];
35
- return /* @__PURE__ */ h(Q, { width: j, height: C, className: y, children: [
36
- /* @__PURE__ */ e("mask", { id: "imageMask", children: /* @__PURE__ */ e("path", { d: r(n.outline()), fill: "white" }) }),
37
- /* @__PURE__ */ e(V, { d: r(n.outline()) }),
38
- /* @__PURE__ */ e(q, { d: r(n()) }),
39
- /* @__PURE__ */ e(
40
- z,
40
+ const G = M(k + c, x, c), H = M(p + d, b, d), P = R(a).pointRadius(6), n = (t) => P(t) || void 0, e = typeof f < "u" ? g[f] : void 0, S = (e ? a([e == null ? void 0 : e.long, e == null ? void 0 : e.lat]) : [0, 0]) || [0, 0];
41
+ return /* @__PURE__ */ h(U, { width: j, height: C, className: y, children: [
42
+ /* @__PURE__ */ o("mask", { id: "imageMask", children: /* @__PURE__ */ o("path", { d: n(r.outline()), fill: "white" }) }),
43
+ /* @__PURE__ */ o(z, { d: n(r.outline()) }),
44
+ /* @__PURE__ */ o(D, { d: n(r()) }),
45
+ /* @__PURE__ */ o(
46
+ F,
41
47
  {
42
48
  style: { "--image-stack-opacity": O && 1 },
43
- x: a.left,
44
- y: a.top,
49
+ x: i.left,
50
+ y: i.top,
45
51
  width: s - m,
46
52
  height: l,
47
53
  mask: "url(#imageMask)",
48
- children: /* @__PURE__ */ e(
49
- U,
54
+ children: /* @__PURE__ */ o(
55
+ q,
50
56
  {
51
57
  images: v,
52
58
  describedById: B,
@@ -58,10 +64,10 @@ const Y = ({
58
64
  )
59
65
  }
60
66
  ),
61
- /* @__PURE__ */ e("g", { children: g.map(({ id: t, lat: T, long: $ }, A) => /* @__PURE__ */ e(
62
- D,
67
+ /* @__PURE__ */ o("g", { children: g.map(({ id: t, lat: T, long: $ }, A) => /* @__PURE__ */ o(
68
+ J,
63
69
  {
64
- d: r({
70
+ d: n({
65
71
  type: "Point",
66
72
  coordinates: [$, T]
67
73
  }),
@@ -70,14 +76,14 @@ const Y = ({
70
76
  },
71
77
  t
72
78
  )) }),
73
- /* @__PURE__ */ e("g", { "aria-hidden": "true", children: G.map(
79
+ /* @__PURE__ */ o("g", { "aria-hidden": "true", children: G.map(
74
80
  (t) => t === 0 ? null : /* @__PURE__ */ h(
75
- F,
81
+ K,
76
82
  {
77
83
  style: {
78
84
  dominantBaseline: t > 0 ? "text-after-edge" : "text-before-edge"
79
85
  },
80
- transform: `translate(${i([p, t])})`,
86
+ transform: `translate(${a([p, t])})`,
81
87
  children: [
82
88
  t,
83
89
  "°"
@@ -86,10 +92,10 @@ const Y = ({
86
92
  t
87
93
  )
88
94
  ) }),
89
- /* @__PURE__ */ e("g", { "aria-hidden": "true", children: H.map((t) => /* @__PURE__ */ h(
90
- J,
95
+ /* @__PURE__ */ o("g", { "aria-hidden": "true", children: H.map((t) => /* @__PURE__ */ h(
96
+ Q,
91
97
  {
92
- transform: `translate(${i([t, 0])})`,
98
+ transform: `translate(${a([t, 0])})`,
93
99
  children: [
94
100
  t,
95
101
  "°"
@@ -97,20 +103,20 @@ const Y = ({
97
103
  },
98
104
  t
99
105
  )) }),
100
- /* @__PURE__ */ e(
101
- K,
106
+ /* @__PURE__ */ o(
107
+ X,
102
108
  {
103
109
  strokeWidth: m,
104
- d: r(n.outline())
110
+ d: n(r.outline())
105
111
  }
106
112
  ),
107
- /* @__PURE__ */ e(
108
- X,
113
+ /* @__PURE__ */ o(
114
+ V,
109
115
  {
110
- visible: !!o,
116
+ visible: !!e,
111
117
  x: S[0],
112
118
  y: S[1],
113
- children: o == null ? void 0 : o.id
119
+ children: e == null ? void 0 : e.id
114
120
  }
115
121
  )
116
122
  ] });
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@rubin-epo/epo-widget-lib",
3
- "version": "2.0.13",
3
+ "version": "2.1.0",
4
4
  "description": "Rubin Observatory Education & Public Outreach team React scientific and educational widgets.",
5
5
  "author": "Rubin EPO",
6
6
  "license": "MIT",