Skip to content

Commit f20ef4c

Browse files
committed
refactor: ♻️ refactor data out of sensorList and multisiteLookangles
1 parent d3b4862 commit f20ef4c

File tree

9 files changed

+290
-305
lines changed

9 files changed

+290
-305
lines changed

package-lock.json

+3-1
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/catalogs/sensor-groups.ts

+120
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,120 @@
1+
import { errorManagerInstance } from '@app/singletons/errorManager';
2+
3+
export interface SensorGroup {
4+
name: string;
5+
header: string;
6+
topLink: {
7+
name: string;
8+
badge: string;
9+
}
10+
list: string[];
11+
}
12+
13+
export const fetchSensorGroups = async (): Promise<SensorGroup[]> => {
14+
let sensorGroupsApi = await fetch('https://api.keeptrack.space/v1/sensor-groups').then((response) => response.json());
15+
16+
if (sensorGroupsApi.length === 0) {
17+
errorManagerInstance.warn('No sensor groups found in the API, reverting to the included sensor groups database.');
18+
sensorGroupsApi = sensorGroups;
19+
}
20+
21+
return sensorGroupsApi;
22+
};
23+
24+
/**
25+
* @deprecated Migrate to fetchSensorGroups
26+
*/
27+
export const sensorGroups: SensorGroup[] = [
28+
{
29+
name: 'ssn',
30+
header: 'Space Surveillance Network Sensors',
31+
topLink: {
32+
name: 'All Space Surveillance Network Sensors',
33+
badge: 'COALITION',
34+
},
35+
list: [
36+
'EGLAFB', 'KWAJSPF', 'GEODDSDGC', 'GEODDSMAU', 'GEODDSSOC',
37+
'KWAJALT', 'KWAJMMW', 'KWAJALC', 'KWAJTDX', 'MITMIL', 'RAFASC',
38+
'GLBII', 'HOLCBAND', 'HOLSST',
39+
],
40+
},
41+
{
42+
name: 'mw',
43+
header: 'US Missile Warning Sensors',
44+
topLink: {
45+
name: 'All Missile Warning Sensors',
46+
badge: 'NORAD',
47+
},
48+
list: ['BLEAFB', 'CODSFS', 'CAVSFS', 'CLRSFS', 'RAFFYL', 'PITSB'],
49+
},
50+
{
51+
name: 'md',
52+
header: 'US Missile Defense Agency Sensors',
53+
topLink: {
54+
name: 'All Missile Defense Sensors',
55+
badge: 'MDA',
56+
},
57+
list: ['COBRADANE', 'HARTPY', 'QTRTPY', 'KURTPY', 'SHATPY', 'KCSTPY', 'SBXRDR'],
58+
},
59+
{
60+
name: 'leolabs',
61+
header: 'LeoLabs Sensors',
62+
topLink: {
63+
name: 'All LeoLabs Sensors',
64+
badge: 'LEOLABS',
65+
},
66+
list: ['LEOCRSR', 'LEOAZORES', 'LEOKSR', 'LEOPFISR', 'LEOMSR'],
67+
},
68+
{
69+
name: 'esoc',
70+
header: 'European Space Operations Centre Sensors',
71+
topLink: {
72+
name: 'All ESOC Sensors',
73+
badge: 'ESA',
74+
},
75+
list: [
76+
'GRV', 'TIR', 'GES', 'NRC', 'PDM', 'TRO', 'SDT', 'ZimLAT',
77+
'ZimSMART', 'Tromso', 'Kiruna', 'Sodankyla', 'Svalbard',
78+
],
79+
},
80+
{
81+
name: 'rus',
82+
header: 'Russian Sensors',
83+
topLink: {
84+
name: 'All Russian Sensors',
85+
badge: 'RUSSIA',
86+
},
87+
list: [
88+
'OLED', 'OLEV', 'PEC', 'MISD', 'MISV', 'LEKV', 'ARMV', 'KALV',
89+
'BARV', 'YENV', 'ORSV', 'STO', 'NAK',
90+
],
91+
},
92+
{
93+
name: 'prc',
94+
header: 'Chinese Sensors',
95+
topLink: {
96+
name: 'All Chinese Sensors',
97+
badge: 'CHINA',
98+
},
99+
list: ['SHD', 'HEI', 'ZHE', 'XIN', 'PMO'],
100+
},
101+
{
102+
name: 'other',
103+
header: 'Other Sensors',
104+
topLink: {
105+
name: 'Other Sensors',
106+
badge: 'OTHER',
107+
},
108+
list: ['ROC', 'MLS', 'PO', 'LSO', 'MAY'],
109+
},
110+
/*
111+
* {
112+
* name: 'us',
113+
* title: 'United States',
114+
* list: [
115+
* 'CODSFS', 'BLEAFB', 'CAVSFS', 'CLRSFS', 'EGLAFB', 'RAFFYL',
116+
* 'PITSB', 'MITMIL', 'KWAJALT', 'RAFASC', 'COBRADANE',
117+
* ],
118+
* },
119+
*/
120+
];

0 commit comments

Comments
 (0)