visualizer-components 0.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 (259) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +90 -0
  3. package/dist/assets/RudderIcon.d.ts +23 -0
  4. package/dist/assets/RudderIcon.d.ts.map +1 -0
  5. package/dist/assets/RudderIcon.js +23 -0
  6. package/dist/assets/RudderIcon.js.map +1 -0
  7. package/dist/assets/svgSources.d.ts +18 -0
  8. package/dist/assets/svgSources.d.ts.map +1 -0
  9. package/dist/assets/svgSources.js +18 -0
  10. package/dist/assets/svgSources.js.map +1 -0
  11. package/dist/components/Joystick.d.ts +23 -0
  12. package/dist/components/Joystick.d.ts.map +1 -0
  13. package/dist/components/Joystick.js +114 -0
  14. package/dist/components/Joystick.js.map +1 -0
  15. package/dist/components/TelemetryDashboard.d.ts +31 -0
  16. package/dist/components/TelemetryDashboard.d.ts.map +1 -0
  17. package/dist/components/TelemetryDashboard.js +127 -0
  18. package/dist/components/TelemetryDashboard.js.map +1 -0
  19. package/dist/components/controls/ControlOverlay.d.ts +64 -0
  20. package/dist/components/controls/ControlOverlay.d.ts.map +1 -0
  21. package/dist/components/controls/ControlOverlay.js +88 -0
  22. package/dist/components/controls/ControlOverlay.js.map +1 -0
  23. package/dist/components/controls/ControlsDrawer.d.ts +37 -0
  24. package/dist/components/controls/ControlsDrawer.d.ts.map +1 -0
  25. package/dist/components/controls/ControlsDrawer.js +93 -0
  26. package/dist/components/controls/ControlsDrawer.js.map +1 -0
  27. package/dist/components/controls/ForceVectorsPanel.d.ts +37 -0
  28. package/dist/components/controls/ForceVectorsPanel.d.ts.map +1 -0
  29. package/dist/components/controls/ForceVectorsPanel.js +76 -0
  30. package/dist/components/controls/ForceVectorsPanel.js.map +1 -0
  31. package/dist/components/controls/InfoPopover.d.ts +34 -0
  32. package/dist/components/controls/InfoPopover.d.ts.map +1 -0
  33. package/dist/components/controls/InfoPopover.js +41 -0
  34. package/dist/components/controls/InfoPopover.js.map +1 -0
  35. package/dist/components/controls/Legend.d.ts +29 -0
  36. package/dist/components/controls/Legend.d.ts.map +1 -0
  37. package/dist/components/controls/Legend.js +74 -0
  38. package/dist/components/controls/Legend.js.map +1 -0
  39. package/dist/components/controls/MobileBottomNav.d.ts +17 -0
  40. package/dist/components/controls/MobileBottomNav.d.ts.map +1 -0
  41. package/dist/components/controls/MobileBottomNav.js +46 -0
  42. package/dist/components/controls/MobileBottomNav.js.map +1 -0
  43. package/dist/components/hud/SceneHUD.d.ts +100 -0
  44. package/dist/components/hud/SceneHUD.d.ts.map +1 -0
  45. package/dist/components/hud/SceneHUD.js +216 -0
  46. package/dist/components/hud/SceneHUD.js.map +1 -0
  47. package/dist/components/hud/telemetry/Batteries.d.ts +40 -0
  48. package/dist/components/hud/telemetry/Batteries.d.ts.map +1 -0
  49. package/dist/components/hud/telemetry/Batteries.js +137 -0
  50. package/dist/components/hud/telemetry/Batteries.js.map +1 -0
  51. package/dist/components/hud/telemetry/Compass.d.ts +2 -0
  52. package/dist/components/hud/telemetry/Compass.d.ts.map +1 -0
  53. package/dist/components/hud/telemetry/Compass.js +147 -0
  54. package/dist/components/hud/telemetry/Compass.js.map +1 -0
  55. package/dist/components/hud/telemetry/Log.d.ts +2 -0
  56. package/dist/components/hud/telemetry/Log.d.ts.map +1 -0
  57. package/dist/components/hud/telemetry/Log.js +65 -0
  58. package/dist/components/hud/telemetry/Log.js.map +1 -0
  59. package/dist/components/hud/telemetry/Map.d.ts +4 -0
  60. package/dist/components/hud/telemetry/Map.d.ts.map +1 -0
  61. package/dist/components/hud/telemetry/Map.js +293 -0
  62. package/dist/components/hud/telemetry/Map.js.map +1 -0
  63. package/dist/components/hud/telemetry/PowerRudderPanel.d.ts +2 -0
  64. package/dist/components/hud/telemetry/PowerRudderPanel.d.ts.map +1 -0
  65. package/dist/components/hud/telemetry/PowerRudderPanel.js +115 -0
  66. package/dist/components/hud/telemetry/PowerRudderPanel.js.map +1 -0
  67. package/dist/components/hud/telemetry/RadiusVisualizer.d.ts +63 -0
  68. package/dist/components/hud/telemetry/RadiusVisualizer.d.ts.map +1 -0
  69. package/dist/components/hud/telemetry/RadiusVisualizer.js +139 -0
  70. package/dist/components/hud/telemetry/RadiusVisualizer.js.map +1 -0
  71. package/dist/components/hud/telemetry/RadiusVisualizerPanel.d.ts +31 -0
  72. package/dist/components/hud/telemetry/RadiusVisualizerPanel.d.ts.map +1 -0
  73. package/dist/components/hud/telemetry/RadiusVisualizerPanel.js +37 -0
  74. package/dist/components/hud/telemetry/RadiusVisualizerPanel.js.map +1 -0
  75. package/dist/components/hud/telemetry/ShipRudderVisualizer.d.ts +43 -0
  76. package/dist/components/hud/telemetry/ShipRudderVisualizer.d.ts.map +1 -0
  77. package/dist/components/hud/telemetry/ShipRudderVisualizer.js +121 -0
  78. package/dist/components/hud/telemetry/ShipRudderVisualizer.js.map +1 -0
  79. package/dist/components/hud/telemetry/ShipRudderVisualizerPanel.d.ts +26 -0
  80. package/dist/components/hud/telemetry/ShipRudderVisualizerPanel.d.ts.map +1 -0
  81. package/dist/components/hud/telemetry/ShipRudderVisualizerPanel.js +29 -0
  82. package/dist/components/hud/telemetry/ShipRudderVisualizerPanel.js.map +1 -0
  83. package/dist/components/hud/telemetry/SignalLog.d.ts +7 -0
  84. package/dist/components/hud/telemetry/SignalLog.d.ts.map +1 -0
  85. package/dist/components/hud/telemetry/SignalLog.js +28 -0
  86. package/dist/components/hud/telemetry/SignalLog.js.map +1 -0
  87. package/dist/components/hud/telemetry/SignalStrength.d.ts +9 -0
  88. package/dist/components/hud/telemetry/SignalStrength.d.ts.map +1 -0
  89. package/dist/components/hud/telemetry/SignalStrength.js +53 -0
  90. package/dist/components/hud/telemetry/SignalStrength.js.map +1 -0
  91. package/dist/components/hud/telemetry/Speedometer.d.ts +2 -0
  92. package/dist/components/hud/telemetry/Speedometer.d.ts.map +1 -0
  93. package/dist/components/hud/telemetry/Speedometer.js +70 -0
  94. package/dist/components/hud/telemetry/Speedometer.js.map +1 -0
  95. package/dist/components/hud/telemetry/Task.d.ts +2 -0
  96. package/dist/components/hud/telemetry/Task.d.ts.map +1 -0
  97. package/dist/components/hud/telemetry/Task.js +61 -0
  98. package/dist/components/hud/telemetry/Task.js.map +1 -0
  99. package/dist/components/hud/telemetry/TaskData.d.ts +2 -0
  100. package/dist/components/hud/telemetry/TaskData.d.ts.map +1 -0
  101. package/dist/components/hud/telemetry/TaskData.js +62 -0
  102. package/dist/components/hud/telemetry/TaskData.js.map +1 -0
  103. package/dist/components/hud/telemetry/index.d.ts +40 -0
  104. package/dist/components/hud/telemetry/index.d.ts.map +1 -0
  105. package/dist/components/hud/telemetry/index.js +40 -0
  106. package/dist/components/hud/telemetry/index.js.map +1 -0
  107. package/dist/components/hud/telemetry/powerColor.d.ts +16 -0
  108. package/dist/components/hud/telemetry/powerColor.d.ts.map +1 -0
  109. package/dist/components/hud/telemetry/powerColor.js +15 -0
  110. package/dist/components/hud/telemetry/powerColor.js.map +1 -0
  111. package/dist/components/scenes/MappingScene.d.ts +19 -0
  112. package/dist/components/scenes/MappingScene.d.ts.map +1 -0
  113. package/dist/components/scenes/MappingScene.js +353 -0
  114. package/dist/components/scenes/MappingScene.js.map +1 -0
  115. package/dist/components/scenes/SceneCanvas.d.ts +96 -0
  116. package/dist/components/scenes/SceneCanvas.d.ts.map +1 -0
  117. package/dist/components/scenes/SceneCanvas.js +151 -0
  118. package/dist/components/scenes/SceneCanvas.js.map +1 -0
  119. package/dist/components/scenes/SceneRenderer.d.ts +16 -0
  120. package/dist/components/scenes/SceneRenderer.d.ts.map +1 -0
  121. package/dist/components/scenes/SceneRenderer.js +60 -0
  122. package/dist/components/scenes/SceneRenderer.js.map +1 -0
  123. package/dist/components/scenes/TelemetryScene.d.ts +6 -0
  124. package/dist/components/scenes/TelemetryScene.d.ts.map +1 -0
  125. package/dist/components/scenes/TelemetryScene.js +6 -0
  126. package/dist/components/scenes/TelemetryScene.js.map +1 -0
  127. package/dist/components/svg/CompassRose.d.ts +129 -0
  128. package/dist/components/svg/CompassRose.d.ts.map +1 -0
  129. package/dist/components/svg/CompassRose.js +221 -0
  130. package/dist/components/svg/CompassRose.js.map +1 -0
  131. package/dist/connection/config.d.ts +41 -0
  132. package/dist/connection/config.d.ts.map +1 -0
  133. package/dist/connection/config.js +44 -0
  134. package/dist/connection/config.js.map +1 -0
  135. package/dist/contexts/SceneContext.d.ts +35 -0
  136. package/dist/contexts/SceneContext.d.ts.map +1 -0
  137. package/dist/contexts/SceneContext.js +24 -0
  138. package/dist/contexts/SceneContext.js.map +1 -0
  139. package/dist/hooks/useAutoPathAnimation.d.ts +22 -0
  140. package/dist/hooks/useAutoPathAnimation.d.ts.map +1 -0
  141. package/dist/hooks/useAutoPathAnimation.js +102 -0
  142. package/dist/hooks/useAutoPathAnimation.js.map +1 -0
  143. package/dist/hooks/useLayoutConfig.d.ts +29 -0
  144. package/dist/hooks/useLayoutConfig.d.ts.map +1 -0
  145. package/dist/hooks/useLayoutConfig.js +30 -0
  146. package/dist/hooks/useLayoutConfig.js.map +1 -0
  147. package/dist/hooks/useSceneContext.d.ts +64 -0
  148. package/dist/hooks/useSceneContext.d.ts.map +1 -0
  149. package/dist/hooks/useSceneContext.js +37 -0
  150. package/dist/hooks/useSceneContext.js.map +1 -0
  151. package/dist/index.d.ts +44 -0
  152. package/dist/index.d.ts.map +1 -0
  153. package/dist/index.js +57 -0
  154. package/dist/index.js.map +1 -0
  155. package/dist/providers/TelemetryProvider.d.ts +27 -0
  156. package/dist/providers/TelemetryProvider.d.ts.map +1 -0
  157. package/dist/providers/TelemetryProvider.js +50 -0
  158. package/dist/providers/TelemetryProvider.js.map +1 -0
  159. package/dist/providers/TelemetryThemeProvider.d.ts +25 -0
  160. package/dist/providers/TelemetryThemeProvider.d.ts.map +1 -0
  161. package/dist/providers/TelemetryThemeProvider.js +54 -0
  162. package/dist/providers/TelemetryThemeProvider.js.map +1 -0
  163. package/dist/store/actions/connectionActions.d.ts +39 -0
  164. package/dist/store/actions/connectionActions.d.ts.map +1 -0
  165. package/dist/store/actions/connectionActions.js +162 -0
  166. package/dist/store/actions/connectionActions.js.map +1 -0
  167. package/dist/store/actions/fetchTelemetry.d.ts +51 -0
  168. package/dist/store/actions/fetchTelemetry.d.ts.map +1 -0
  169. package/dist/store/actions/fetchTelemetry.js +135 -0
  170. package/dist/store/actions/fetchTelemetry.js.map +1 -0
  171. package/dist/store/index.d.ts +23 -0
  172. package/dist/store/index.d.ts.map +1 -0
  173. package/dist/store/index.js +22 -0
  174. package/dist/store/index.js.map +1 -0
  175. package/dist/store/slices/connectionSlice.d.ts +15 -0
  176. package/dist/store/slices/connectionSlice.d.ts.map +1 -0
  177. package/dist/store/slices/connectionSlice.js +39 -0
  178. package/dist/store/slices/connectionSlice.js.map +1 -0
  179. package/dist/store/slices/discoveredGridSlice.d.ts +168 -0
  180. package/dist/store/slices/discoveredGridSlice.d.ts.map +1 -0
  181. package/dist/store/slices/discoveredGridSlice.js +146 -0
  182. package/dist/store/slices/discoveredGridSlice.js.map +1 -0
  183. package/dist/store/slices/sceneSlice.d.ts +185 -0
  184. package/dist/store/slices/sceneSlice.d.ts.map +1 -0
  185. package/dist/store/slices/sceneSlice.js +95 -0
  186. package/dist/store/slices/sceneSlice.js.map +1 -0
  187. package/dist/store/slices/simulationSlice.d.ts +87 -0
  188. package/dist/store/slices/simulationSlice.d.ts.map +1 -0
  189. package/dist/store/slices/simulationSlice.js +55 -0
  190. package/dist/store/slices/simulationSlice.js.map +1 -0
  191. package/dist/store/slices/telemetrySlice.d.ts +10 -0
  192. package/dist/store/slices/telemetrySlice.d.ts.map +1 -0
  193. package/dist/store/slices/telemetrySlice.js +88 -0
  194. package/dist/store/slices/telemetrySlice.js.map +1 -0
  195. package/dist/store/slices/videoSlice.d.ts +12 -0
  196. package/dist/store/slices/videoSlice.d.ts.map +1 -0
  197. package/dist/store/slices/videoSlice.js +27 -0
  198. package/dist/store/slices/videoSlice.js.map +1 -0
  199. package/dist/store/slices/visualizationSlice.d.ts +152 -0
  200. package/dist/store/slices/visualizationSlice.d.ts.map +1 -0
  201. package/dist/store/slices/visualizationSlice.js +58 -0
  202. package/dist/store/slices/visualizationSlice.js.map +1 -0
  203. package/dist/store/store.d.ts +61 -0
  204. package/dist/store/store.d.ts.map +1 -0
  205. package/dist/store/store.js +78 -0
  206. package/dist/store/store.js.map +1 -0
  207. package/dist/theme/index.d.ts +14 -0
  208. package/dist/theme/index.d.ts.map +1 -0
  209. package/dist/theme/index.js +14 -0
  210. package/dist/theme/index.js.map +1 -0
  211. package/dist/theme/lightTheme.d.ts +151 -0
  212. package/dist/theme/lightTheme.d.ts.map +1 -0
  213. package/dist/theme/lightTheme.js +194 -0
  214. package/dist/theme/lightTheme.js.map +1 -0
  215. package/dist/theme/telemetryTheme.d.ts +90 -0
  216. package/dist/theme/telemetryTheme.d.ts.map +1 -0
  217. package/dist/theme/telemetryTheme.js +157 -0
  218. package/dist/theme/telemetryTheme.js.map +1 -0
  219. package/dist/types/detectedObjectsTypes.d.ts +18 -0
  220. package/dist/types/detectedObjectsTypes.d.ts.map +1 -0
  221. package/dist/types/detectedObjectsTypes.js +8 -0
  222. package/dist/types/detectedObjectsTypes.js.map +1 -0
  223. package/dist/types/index.d.ts +16 -0
  224. package/dist/types/index.d.ts.map +1 -0
  225. package/dist/types/index.js +16 -0
  226. package/dist/types/index.js.map +1 -0
  227. package/dist/types/ros.d.ts +87 -0
  228. package/dist/types/ros.d.ts.map +1 -0
  229. package/dist/types/ros.js +17 -0
  230. package/dist/types/ros.js.map +1 -0
  231. package/dist/types/statusTypes.d.ts +81 -0
  232. package/dist/types/statusTypes.d.ts.map +1 -0
  233. package/dist/types/statusTypes.js +52 -0
  234. package/dist/types/statusTypes.js.map +1 -0
  235. package/dist/types/taskTypes.d.ts +65 -0
  236. package/dist/types/taskTypes.d.ts.map +1 -0
  237. package/dist/types/taskTypes.js +18 -0
  238. package/dist/types/taskTypes.js.map +1 -0
  239. package/dist/types/telemetryInterfaces.d.ts +81 -0
  240. package/dist/types/telemetryInterfaces.d.ts.map +1 -0
  241. package/dist/types/telemetryInterfaces.js +30 -0
  242. package/dist/types/telemetryInterfaces.js.map +1 -0
  243. package/dist/utils/basestation.d.ts +7 -0
  244. package/dist/utils/basestation.d.ts.map +1 -0
  245. package/dist/utils/basestation.js +49 -0
  246. package/dist/utils/basestation.js.map +1 -0
  247. package/dist/utils/batteryUtil.d.ts +8 -0
  248. package/dist/utils/batteryUtil.d.ts.map +1 -0
  249. package/dist/utils/batteryUtil.js +32 -0
  250. package/dist/utils/batteryUtil.js.map +1 -0
  251. package/dist/utils/telemetry/index.d.ts +13 -0
  252. package/dist/utils/telemetry/index.d.ts.map +1 -0
  253. package/dist/utils/telemetry/index.js +13 -0
  254. package/dist/utils/telemetry/index.js.map +1 -0
  255. package/dist/utils/telemetry/telemetryFactory.d.ts +48 -0
  256. package/dist/utils/telemetry/telemetryFactory.d.ts.map +1 -0
  257. package/dist/utils/telemetry/telemetryFactory.js +390 -0
  258. package/dist/utils/telemetry/telemetryFactory.js.map +1 -0
  259. package/package.json +91 -0
@@ -0,0 +1,157 @@
1
+ import { createTheme } from "@mui/material/styles";
2
+ import { statusColors, setColors } from "./lightTheme";
3
+ export const telemetryTheme = createTheme({
4
+ palette: {
5
+ mode: "dark",
6
+ background: {
7
+ default: "#000000",
8
+ paper: "rgba(0, 0, 0, 0.35)",
9
+ },
10
+ primary: {
11
+ main: "#00c9ff",
12
+ light: "#33d9ff",
13
+ dark: "#0099cc",
14
+ contrastText: "#000000",
15
+ },
16
+ secondary: {
17
+ main: "#00ff88",
18
+ light: "#33ffaa",
19
+ dark: "#00cc6b",
20
+ contrastText: "#000000",
21
+ },
22
+ text: {
23
+ primary: "#ffffff",
24
+ secondary: "#e5e7eb",
25
+ disabled: "#9ca3af",
26
+ },
27
+ divider: "rgba(255, 255, 255, 0.08)",
28
+ telemetry: {
29
+ status: {
30
+ online: "#10b981",
31
+ warning: "#f59e0b",
32
+ error: "#ef4444",
33
+ offline: "#6b7280",
34
+ },
35
+ background: {
36
+ primary: "rgba(0, 0, 0, 0.5)",
37
+ secondary: "rgba(0, 0, 0, 0.35)",
38
+ tertiary: "rgba(255, 255, 255, 0.02)",
39
+ header: "rgba(255, 255, 255, 0.04)",
40
+ overlay: "rgba(0, 0, 0, 0.3)",
41
+ headerAlt: "rgba(0, 0, 0, 0.5)",
42
+ empty: "rgba(255, 255, 255, 0)",
43
+ },
44
+ border: {
45
+ light: "rgba(255, 255, 255, 0.08)",
46
+ lighter: "rgba(255, 255, 255, 0.05)",
47
+ lightest: "rgba(255, 255, 255, 0)",
48
+ },
49
+ text: {
50
+ primary: "#ffffff",
51
+ secondary: "#e5e7eb",
52
+ },
53
+ accent: "#fbbf24",
54
+ },
55
+ occupancyMap: {
56
+ empty: "#1d4ed8",
57
+ occupied: "#ef4444",
58
+ path: "#1e3a8a",
59
+ current: "#10b981",
60
+ objective: "#fbbf24",
61
+ error: "#ef4444",
62
+ currentIcon: "#6ee7b7",
63
+ objectiveIcon: "#fcd34d",
64
+ errorIcon: "#f87171",
65
+ courseIcon: "#fbbf24",
66
+ course: "#1e3a8a",
67
+ plan: "#8b5cf6",
68
+ },
69
+ status: {
70
+ primary: statusColors,
71
+ secondary: setColors(),
72
+ },
73
+ },
74
+ typography: {
75
+ fontFamily: `'Roboto', 'Arial', sans-serif`,
76
+ h1: {
77
+ fontFamily: `'Montserrat', 'Roboto', sans-serif`,
78
+ fontWeight: 700,
79
+ color: "#ffffff",
80
+ },
81
+ h2: {
82
+ fontFamily: `'Montserrat', 'Roboto', sans-serif`,
83
+ fontWeight: 700,
84
+ color: "#ffffff",
85
+ },
86
+ h3: {
87
+ fontFamily: `'Montserrat', 'Roboto', sans-serif`,
88
+ fontWeight: 600,
89
+ color: "#ffffff",
90
+ },
91
+ h4: {
92
+ fontFamily: `'Montserrat', 'Roboto', sans-serif`,
93
+ fontWeight: 600,
94
+ color: "#ffffff",
95
+ },
96
+ h5: {
97
+ fontFamily: `'Montserrat', 'Roboto', sans-serif`,
98
+ fontWeight: 600,
99
+ color: "#e5e7eb",
100
+ },
101
+ h6: {
102
+ fontFamily: `'Montserrat', 'Roboto', sans-serif`,
103
+ fontWeight: 600,
104
+ color: "#e5e7eb",
105
+ },
106
+ body1: {
107
+ color: "#ffffff",
108
+ },
109
+ body2: {
110
+ color: "#e5e7eb",
111
+ },
112
+ button: {
113
+ fontFamily: `'Montserrat', 'Roboto', sans-serif`,
114
+ fontWeight: 600,
115
+ textTransform: "none",
116
+ },
117
+ caption: {
118
+ color: "#9ca3af",
119
+ fontSize: "0.75rem",
120
+ fontWeight: 500,
121
+ letterSpacing: "0.05em",
122
+ textTransform: "uppercase",
123
+ },
124
+ },
125
+ components: {
126
+ MuiButton: {
127
+ styleOverrides: {
128
+ root: {
129
+ borderRadius: 8,
130
+ textTransform: "none",
131
+ fontWeight: 600,
132
+ },
133
+ contained: {
134
+ boxShadow: "0 4px 12px rgba(0, 201, 255, 0.3)",
135
+ },
136
+ },
137
+ },
138
+ MuiCard: {
139
+ styleOverrides: {
140
+ root: {
141
+ backgroundColor: "rgba(0, 0, 0, 0.35)",
142
+ borderColor: "rgba(255, 255, 255, 0.08)",
143
+ border: "1px solid rgba(255, 255, 255, 0.08)",
144
+ },
145
+ },
146
+ },
147
+ MuiPaper: {
148
+ styleOverrides: {
149
+ root: {
150
+ backgroundColor: "rgba(0, 0, 0, 0.35)",
151
+ borderColor: "rgba(255, 255, 255, 0.08)",
152
+ },
153
+ },
154
+ },
155
+ },
156
+ });
157
+ //# sourceMappingURL=telemetryTheme.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"telemetryTheme.js","sourceRoot":"","sources":["../../src/theme/telemetryTheme.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,18 @@
1
+ /**
2
+ * @file detectedObjectsTypes.ts
3
+ * @description
4
+ * This file defines TypeScript types for detected objects in the ASV telemetry application.
5
+ * These types are used to represent the data structure of objects detected by the ASV's sensors,
6
+ */
7
+ export type DetectedObject = {
8
+ label: string;
9
+ label_id: number;
10
+ confidence: number;
11
+ position: {
12
+ x: number;
13
+ y: number;
14
+ z: number;
15
+ };
16
+ };
17
+ export type DetectedObjects = DetectedObject[];
18
+ //# sourceMappingURL=detectedObjectsTypes.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"detectedObjectsTypes.d.ts","sourceRoot":"","sources":["../../src/types/detectedObjectsTypes.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,MAAM,MAAM,cAAc,GAAG;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE;QACN,CAAC,EAAE,MAAM,CAAC;QACV,CAAC,EAAE,MAAM,CAAC;QACV,CAAC,EAAE,MAAM,CAAC;KACb,CAAC;CACL,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG,cAAc,EAAE,CAAC"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * @file detectedObjectsTypes.ts
3
+ * @description
4
+ * This file defines TypeScript types for detected objects in the ASV telemetry application.
5
+ * These types are used to represent the data structure of objects detected by the ASV's sensors,
6
+ */
7
+ export {};
8
+ //# sourceMappingURL=detectedObjectsTypes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"detectedObjectsTypes.js","sourceRoot":"","sources":["../../src/types/detectedObjectsTypes.ts"],"names":[],"mappings":"AAAA;;;;;GAKG"}
@@ -0,0 +1,16 @@
1
+ /**
2
+ * @file types/index.ts
3
+ * @description
4
+ * This file serves as a central export point for all TypeScript types used in the ASV telemetry application.
5
+ * It re-exports types from various modules such as mapTypes and statusTypes, allowing for cleaner imports throughout the application.
6
+ * @author Carson Fujita
7
+ * @license MIT
8
+ */
9
+ export * from './statusTypes';
10
+ export * from './taskTypes';
11
+ export * from './telemetryInterfaces';
12
+ export * from './detectedObjectsTypes';
13
+ export * from './ros';
14
+ export * from 'react-isometric-engine';
15
+ export * from 'isometric-physics';
16
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,cAAc,eAAe,CAAC;AAC9B,cAAc,aAAa,CAAC;AAC5B,cAAc,uBAAuB,CAAC;AACtC,cAAc,wBAAwB,CAAC;AACvC,cAAc,OAAO,CAAC;AACtB,cAAc,wBAAwB,CAAC;AACvC,cAAc,mBAAmB,CAAC"}
@@ -0,0 +1,16 @@
1
+ /**
2
+ * @file types/index.ts
3
+ * @description
4
+ * This file serves as a central export point for all TypeScript types used in the ASV telemetry application.
5
+ * It re-exports types from various modules such as mapTypes and statusTypes, allowing for cleaner imports throughout the application.
6
+ * @author Carson Fujita
7
+ * @license MIT
8
+ */
9
+ export * from './statusTypes';
10
+ export * from './taskTypes';
11
+ export * from './telemetryInterfaces';
12
+ export * from './detectedObjectsTypes';
13
+ export * from './ros';
14
+ export * from 'react-isometric-engine';
15
+ export * from 'isometric-physics';
16
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,cAAc,eAAe,CAAC;AAC9B,cAAc,aAAa,CAAC;AAC5B,cAAc,uBAAuB,CAAC;AACtC,cAAc,wBAAwB,CAAC;AACvC,cAAc,OAAO,CAAC;AACtB,cAAc,wBAAwB,CAAC;AACvC,cAAc,mBAAmB,CAAC"}
@@ -0,0 +1,87 @@
1
+ /**
2
+ * @file types/ros.ts
3
+ * @description
4
+ * Minimal TypeScript mirrors of the ROS 2 message shapes the ASV publishes
5
+ * (`geometry_msgs`, `sensor_msgs`). The basestation bridges ROS messages into
6
+ * the visualizer's {@link Status} wire format, so nothing in this library
7
+ * consumes these directly — they exist as a typed target surface for the
8
+ * basestation bridge and for future integration work.
9
+ *
10
+ * Field names intentionally match the ROS message definitions (snake_case)
11
+ * rather than this library's conventions.
12
+ *
13
+ * @author Carson Fujita
14
+ * @license MIT
15
+ */
16
+ /** geometry_msgs/msg/Vector3 */
17
+ export interface RosVector3 {
18
+ x: number;
19
+ y: number;
20
+ z: number;
21
+ }
22
+ /** geometry_msgs/msg/Point */
23
+ export type RosPoint = RosVector3;
24
+ /** geometry_msgs/msg/Quaternion */
25
+ export interface RosQuaternion {
26
+ x: number;
27
+ y: number;
28
+ z: number;
29
+ w: number;
30
+ }
31
+ /** geometry_msgs/msg/Pose */
32
+ export interface RosPose {
33
+ position: RosPoint;
34
+ orientation: RosQuaternion;
35
+ }
36
+ /** geometry_msgs/msg/Twist */
37
+ export interface RosTwist {
38
+ linear: RosVector3;
39
+ angular: RosVector3;
40
+ }
41
+ /** std_msgs/msg/Header (builtin_interfaces/msg/Time flattened) */
42
+ export interface RosHeader {
43
+ stamp: {
44
+ sec: number;
45
+ nanosec: number;
46
+ };
47
+ frame_id: string;
48
+ }
49
+ /** sensor_msgs/msg/NavSatStatus */
50
+ export interface RosNavSatStatus {
51
+ status: number;
52
+ service: number;
53
+ }
54
+ /** sensor_msgs/msg/NavSatFix */
55
+ export interface RosNavSatFix {
56
+ header: RosHeader;
57
+ status: RosNavSatStatus;
58
+ latitude: number;
59
+ longitude: number;
60
+ altitude: number;
61
+ position_covariance: number[];
62
+ position_covariance_type: number;
63
+ }
64
+ /** sensor_msgs/msg/Imu */
65
+ export interface RosImu {
66
+ header: RosHeader;
67
+ orientation: RosQuaternion;
68
+ orientation_covariance: number[];
69
+ angular_velocity: RosVector3;
70
+ angular_velocity_covariance: number[];
71
+ linear_acceleration: RosVector3;
72
+ linear_acceleration_covariance: number[];
73
+ }
74
+ /** nav_msgs/msg/Odometry (pose/twist without covariance wrappers simplified) */
75
+ export interface RosOdometry {
76
+ header: RosHeader;
77
+ child_frame_id: string;
78
+ pose: {
79
+ pose: RosPose;
80
+ covariance: number[];
81
+ };
82
+ twist: {
83
+ twist: RosTwist;
84
+ covariance: number[];
85
+ };
86
+ }
87
+ //# sourceMappingURL=ros.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ros.d.ts","sourceRoot":"","sources":["../../src/types/ros.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,gCAAgC;AAChC,MAAM,WAAW,UAAU;IACvB,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;CACb;AAED,8BAA8B;AAC9B,MAAM,MAAM,QAAQ,GAAG,UAAU,CAAC;AAElC,mCAAmC;AACnC,MAAM,WAAW,aAAa;IAC1B,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;CACb;AAED,6BAA6B;AAC7B,MAAM,WAAW,OAAO;IACpB,QAAQ,EAAE,QAAQ,CAAC;IACnB,WAAW,EAAE,aAAa,CAAC;CAC9B;AAED,8BAA8B;AAC9B,MAAM,WAAW,QAAQ;IACrB,MAAM,EAAE,UAAU,CAAC;IACnB,OAAO,EAAE,UAAU,CAAC;CACvB;AAED,kEAAkE;AAClE,MAAM,WAAW,SAAS;IACtB,KAAK,EAAE;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;IACxC,QAAQ,EAAE,MAAM,CAAC;CACpB;AAED,mCAAmC;AACnC,MAAM,WAAW,eAAe;IAC5B,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;CACnB;AAED,gCAAgC;AAChC,MAAM,WAAW,YAAY;IACzB,MAAM,EAAE,SAAS,CAAC;IAClB,MAAM,EAAE,eAAe,CAAC;IACxB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,mBAAmB,EAAE,MAAM,EAAE,CAAC;IAC9B,wBAAwB,EAAE,MAAM,CAAC;CACpC;AAED,0BAA0B;AAC1B,MAAM,WAAW,MAAM;IACnB,MAAM,EAAE,SAAS,CAAC;IAClB,WAAW,EAAE,aAAa,CAAC;IAC3B,sBAAsB,EAAE,MAAM,EAAE,CAAC;IACjC,gBAAgB,EAAE,UAAU,CAAC;IAC7B,2BAA2B,EAAE,MAAM,EAAE,CAAC;IACtC,mBAAmB,EAAE,UAAU,CAAC;IAChC,8BAA8B,EAAE,MAAM,EAAE,CAAC;CAC5C;AAED,gFAAgF;AAChF,MAAM,WAAW,WAAW;IACxB,MAAM,EAAE,SAAS,CAAC;IAClB,cAAc,EAAE,MAAM,CAAC;IACvB,IAAI,EAAE;QAAE,IAAI,EAAE,OAAO,CAAC;QAAC,UAAU,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC;IAC9C,KAAK,EAAE;QAAE,KAAK,EAAE,QAAQ,CAAC;QAAC,UAAU,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC;CACpD"}
@@ -0,0 +1,17 @@
1
+ /**
2
+ * @file types/ros.ts
3
+ * @description
4
+ * Minimal TypeScript mirrors of the ROS 2 message shapes the ASV publishes
5
+ * (`geometry_msgs`, `sensor_msgs`). The basestation bridges ROS messages into
6
+ * the visualizer's {@link Status} wire format, so nothing in this library
7
+ * consumes these directly — they exist as a typed target surface for the
8
+ * basestation bridge and for future integration work.
9
+ *
10
+ * Field names intentionally match the ROS message definitions (snake_case)
11
+ * rather than this library's conventions.
12
+ *
13
+ * @author Carson Fujita
14
+ * @license MIT
15
+ */
16
+ export {};
17
+ //# sourceMappingURL=ros.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ros.js","sourceRoot":"","sources":["../../src/types/ros.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG"}
@@ -0,0 +1,81 @@
1
+ /**
2
+ * @file status.ts
3
+ * @description Defines the Status type and its initial value for the ASV telemetry system.
4
+ * This file is used to maintain a consistent structure for the status data across the application.
5
+ * It includes information about the map, planning, task, power, rudder, ASV state, signal strength, and video stream.
6
+ *
7
+ * @author Carson Fujita
8
+ * @license MIT
9
+ */
10
+ import type { Path, Grid } from "react-isometric-engine";
11
+ import type { TaskData, TaskLocation, TaskStatus } from "./taskTypes";
12
+ import type { DetectedObject } from "./detectedObjectsTypes";
13
+ type CourseTrailPoint = {
14
+ x: number;
15
+ y: number;
16
+ };
17
+ type ZedPosition = {
18
+ x: number;
19
+ y: number;
20
+ z: number;
21
+ };
22
+ type ZedOrientation = {
23
+ roll: number;
24
+ pitch: number;
25
+ yaw: number;
26
+ };
27
+ type Zed = {
28
+ odom: {
29
+ position: ZedPosition;
30
+ orientation: ZedOrientation;
31
+ };
32
+ objects: DetectedObject[];
33
+ camera: {
34
+ active: boolean;
35
+ width: number;
36
+ height: number;
37
+ encoding: string;
38
+ };
39
+ };
40
+ type Status = {
41
+ map: {
42
+ occupancyGrid: Grid;
43
+ navigationGrid: Grid;
44
+ courseTrail: CourseTrailPoint[];
45
+ };
46
+ planning: {
47
+ status: TaskStatus;
48
+ course: Path;
49
+ plan: Path;
50
+ };
51
+ task: {
52
+ log: string[];
53
+ location: TaskLocation;
54
+ data: TaskData;
55
+ };
56
+ rudder: {
57
+ angle: number;
58
+ };
59
+ battery: {
60
+ motors: number;
61
+ primary: number;
62
+ };
63
+ motors: {
64
+ left: number;
65
+ right: number;
66
+ };
67
+ asv: {
68
+ speed: number;
69
+ heading: number;
70
+ longitude: number;
71
+ latitude: number;
72
+ };
73
+ signal: {
74
+ strength: number;
75
+ };
76
+ zed: Zed;
77
+ };
78
+ declare const InitialStatus: Status;
79
+ export type { Status, CourseTrailPoint, Zed, ZedPosition, ZedOrientation };
80
+ export { InitialStatus };
81
+ //# sourceMappingURL=statusTypes.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"statusTypes.d.ts","sourceRoot":"","sources":["../../src/types/statusTypes.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,OAAO,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,KAAK,EAAE,QAAQ,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACtE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAE7D,KAAK,gBAAgB,GAAG;IACpB,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;CACb,CAAC;AAEF,KAAK,WAAW,GAAG;IAAE,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AACvD,KAAK,cAAc,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAA;CAAE,CAAC;AAEnE,KAAK,GAAG,GAAG;IACP,IAAI,EAAE;QACF,QAAQ,EAAE,WAAW,CAAC;QACtB,WAAW,EAAE,cAAc,CAAC;KAC/B,CAAC;IACF,OAAO,EAAE,cAAc,EAAE,CAAC;IAC1B,MAAM,EAAE;QACJ,MAAM,EAAE,OAAO,CAAC;QAChB,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;QACf,QAAQ,EAAE,MAAM,CAAC;KACpB,CAAC;CACL,CAAC;AAEF,KAAK,MAAM,GAAG;IACV,GAAG,EAAE;QACD,aAAa,EAAE,IAAI,CAAC;QACpB,cAAc,EAAE,IAAI,CAAC;QACrB,WAAW,EAAE,gBAAgB,EAAE,CAAC;KACnC,CAAC;IACF,QAAQ,EAAE;QACN,MAAM,EAAE,UAAU,CAAC;QACnB,MAAM,EAAE,IAAI,CAAC;QACb,IAAI,EAAE,IAAI,CAAC;KACd,CAAC;IACF,IAAI,EAAE;QACF,GAAG,EAAE,MAAM,EAAE,CAAC;QACd,QAAQ,EAAE,YAAY,CAAC;QACvB,IAAI,EAAE,QAAQ,CAAC;KAClB,CAAC;IACF,MAAM,EAAE;QACJ,KAAK,EAAE,MAAM,CAAC;KACjB,CAAC;IACF,OAAO,EAAE;QACL,MAAM,EAAE,MAAM,CAAC;QACf,OAAO,EAAE,MAAM,CAAC;KACnB,CAAA;IACD,MAAM,EAAE;QACJ,IAAI,EAAE,MAAM,CAAC;QACb,KAAK,EAAE,MAAM,CAAC;KACjB,CAAC;IACF,GAAG,EAAE;QACD,KAAK,EAAE,MAAM,CAAC;QACd,OAAO,EAAE,MAAM,CAAC;QAChB,SAAS,EAAE,MAAM,CAAC;QAClB,QAAQ,EAAE,MAAM,CAAC;KACpB,CAAC;IACF,MAAM,EAAE;QACJ,QAAQ,EAAE,MAAM,CAAC;KACpB,CAAC;IACF,GAAG,EAAE,GAAG,CAAC;CACZ,CAAA;AAED,QAAA,MAAM,aAAa,EAAE,MAiDpB,CAAC;AAEF,YAAY,EAAE,MAAM,EAAE,gBAAgB,EAAE,GAAG,EAAE,WAAW,EAAE,cAAc,EAAE,CAAC;AAC3E,OAAO,EAAE,aAAa,EAAE,CAAC"}
@@ -0,0 +1,52 @@
1
+ const InitialStatus = {
2
+ map: {
3
+ occupancyGrid: [],
4
+ navigationGrid: [],
5
+ courseTrail: [],
6
+ },
7
+ planning: {
8
+ status: "idle",
9
+ course: [],
10
+ plan: []
11
+ },
12
+ task: {
13
+ log: [],
14
+ location: { latitude: 0, longitude: 0 },
15
+ data: { id: 0, name: "", status: "standby", latitude: 0, longitude: 0 }
16
+ },
17
+ rudder: {
18
+ angle: 0
19
+ },
20
+ motors: {
21
+ left: 100,
22
+ right: 100
23
+ },
24
+ battery: {
25
+ motors: 0,
26
+ primary: 0
27
+ },
28
+ asv: {
29
+ speed: 0,
30
+ heading: 0,
31
+ longitude: 0,
32
+ latitude: 0
33
+ },
34
+ signal: {
35
+ strength: 100
36
+ },
37
+ zed: {
38
+ odom: {
39
+ position: { x: 0, y: 0, z: 0 },
40
+ orientation: { roll: 0, pitch: 0, yaw: 0 },
41
+ },
42
+ objects: [],
43
+ camera: {
44
+ active: false,
45
+ width: 0,
46
+ height: 0,
47
+ encoding: "",
48
+ },
49
+ },
50
+ };
51
+ export { InitialStatus };
52
+ //# sourceMappingURL=statusTypes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"statusTypes.js","sourceRoot":"","sources":["../../src/types/statusTypes.ts"],"names":[],"mappings":"AA0EA,MAAM,aAAa,GAAW;IAC1B,GAAG,EAAE;QACD,aAAa,EAAE,EAAE;QACjB,cAAc,EAAE,EAAE;QAClB,WAAW,EAAE,EAAE;KAClB;IACD,QAAQ,EAAE;QACN,MAAM,EAAE,MAAM;QACd,MAAM,EAAE,EAAE;QACV,IAAI,EAAE,EAAE;KACX;IACD,IAAI,EAAE;QACF,GAAG,EAAE,EAAE;QACP,QAAQ,EAAE,EAAE,QAAQ,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE;QACvC,IAAI,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE;KAC1E;IACD,MAAM,EAAE;QACJ,KAAK,EAAE,CAAC;KACX;IACD,MAAM,EAAE;QACJ,IAAI,EAAE,GAAG;QACT,KAAK,EAAE,GAAG;KACb;IACD,OAAO,EAAE;QACL,MAAM,EAAE,CAAC;QACT,OAAO,EAAE,CAAC;KACb;IACD,GAAG,EAAE;QACD,KAAK,EAAE,CAAC;QACR,OAAO,EAAE,CAAC;QACV,SAAS,EAAE,CAAC;QACZ,QAAQ,EAAE,CAAC;KACd;IACD,MAAM,EAAE;QACJ,QAAQ,EAAE,GAAG;KAChB;IACD,GAAG,EAAE;QACD,IAAI,EAAE;YACF,QAAQ,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE;YAC9B,WAAW,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE;SAC7C;QACD,OAAO,EAAE,EAAE;QACX,MAAM,EAAE;YACJ,MAAM,EAAE,KAAK;YACb,KAAK,EAAE,CAAC;YACR,MAAM,EAAE,CAAC;YACT,QAAQ,EAAE,EAAE;SACf;KACJ;CACJ,CAAC;AAGF,OAAO,EAAE,aAAa,EAAE,CAAC"}
@@ -0,0 +1,65 @@
1
+ /**
2
+ * Location of a task
3
+ *
4
+ * @author Carson Fujita
5
+ * @remarks
6
+ * - This interface represents the location of a task, which includes latitude and longitude coordinates.
7
+ *
8
+ * @value id - Optional unique identifier for the task location
9
+ * @value latitude - Latitude coordinate of the task location
10
+ * @value longitude - Longitude coordinate of the task location
11
+ */
12
+ type TaskLocation = {
13
+ id?: string;
14
+ latitude: number;
15
+ longitude: number;
16
+ };
17
+ /**
18
+ * Data associated with a task
19
+ *
20
+ * @author Carson Fujita
21
+ * @remarks
22
+ * - This interface represents the data associated with a task, including its name, status, and location coordinates.
23
+ *
24
+ * @value id - Unique identifier for the task
25
+ * @value name - Name of the task
26
+ * @value status - Current {@link TaskStatus} of the task (e.g., "autonomous", "remote", "standby", "lost connection", "out of control")
27
+ * @value latitude - Latitude coordinate of the task's location
28
+ * @value longitude - Longitude coordinate of the task's location
29
+ */
30
+ type TaskData = {
31
+ id: number;
32
+ name: string;
33
+ status: TaskStatus;
34
+ latitude: number;
35
+ longitude: number;
36
+ };
37
+ /**
38
+ * Constant values representing possible task statuses
39
+ *
40
+ * @author Carson Fujita
41
+ * @remarksdue
42
+ * - These values are used to represent the different statuses a task can have, such as "autonomous", "remote", "standby", "lost connection", and "out of control".
43
+ * - not an enum due to restrictions
44
+ * @see {@link TaskStatus}
45
+ */
46
+ declare const TaskValues: {
47
+ autonomous: string;
48
+ remote: string;
49
+ standby: string;
50
+ lostConnection: string;
51
+ outOfControl: string;
52
+ };
53
+ type TaskOptions = typeof TaskValues;
54
+ /**
55
+ * Type representing the possible task statuses
56
+ *
57
+ * @author Carson Fujita
58
+ * @see {@link TaskValues}
59
+ * @remarks
60
+ * - This type is derived from the values defined in {@link TaskValues} and is used to ensure type safety when working with task statuses throughout the application.
61
+ */
62
+ type TaskStatus = typeof TaskValues[keyof typeof TaskValues];
63
+ export type { TaskLocation, TaskData, TaskStatus, TaskOptions };
64
+ export { TaskValues };
65
+ //# sourceMappingURL=taskTypes.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"taskTypes.d.ts","sourceRoot":"","sources":["../../src/types/taskTypes.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,KAAK,YAAY,GAAG;IAChB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;CAErB,CAAC;AAEF;;;;;;;;;;;;GAYG;AACH,KAAK,QAAQ,GAAG;IACZ,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,UAAU,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;CACrB,CAAC;AAGF;;;;;;;;GAQG;AACH,QAAA,MAAM,UAAU;;;;;;CAMf,CAAA;AAED,KAAK,WAAW,GAAG,OAAO,UAAU,CAAC;AAErC;;;;;;;GAOG;AACH,KAAK,UAAU,GAAG,OAAO,UAAU,CAAC,MAAM,OAAO,UAAU,CAAC,CAAC;AAE7D,YAAY,EAAE,YAAY,EAAE,QAAQ,EAAE,UAAU,EAAE,WAAW,EAAE,CAAC;AAChE,OAAO,EAAE,UAAU,EAAE,CAAC"}
@@ -0,0 +1,18 @@
1
+ /**
2
+ * Constant values representing possible task statuses
3
+ *
4
+ * @author Carson Fujita
5
+ * @remarksdue
6
+ * - These values are used to represent the different statuses a task can have, such as "autonomous", "remote", "standby", "lost connection", and "out of control".
7
+ * - not an enum due to restrictions
8
+ * @see {@link TaskStatus}
9
+ */
10
+ const TaskValues = {
11
+ autonomous: "autonomous",
12
+ remote: "remote",
13
+ standby: "standby",
14
+ lostConnection: "lost connection",
15
+ outOfControl: "out of control"
16
+ };
17
+ export { TaskValues };
18
+ //# sourceMappingURL=taskTypes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"taskTypes.js","sourceRoot":"","sources":["../../src/types/taskTypes.ts"],"names":[],"mappings":"AAwCA;;;;;;;;GAQG;AACH,MAAM,UAAU,GAAG;IACf,UAAU,EAAE,YAAY;IACxB,MAAM,EAAE,QAAQ;IAChB,OAAO,EAAE,SAAS;IAClB,cAAc,EAAE,iBAAiB;IACjC,YAAY,EAAE,gBAAgB;CACjC,CAAA;AAeD,OAAO,EAAE,UAAU,EAAE,CAAC"}