mirror of
https://github.com/bilawalsidhu/gods-eye-view.git
synced 2026-11-04 18:34:02 +00:00
44 lines
1.8 KiB
JavaScript
44 lines
1.8 KiB
JavaScript
import flights from '../data/flights.js';
|
|
import military from '../data/militaryFlights.js';
|
|
import vessels from '../data/aisLiveVessels.js';
|
|
import { configureAlprSource } from '../data/alprCameras.js';
|
|
import { configureCctvSource } from '../data/cctv.js';
|
|
import { configureRadioSource } from '../data/radio.js';
|
|
import { configureTrafficSource } from '../data/traffic.js';
|
|
import { configureBikeshareSource } from '../data/bikeshare.js';
|
|
import { configureInstallationSource } from '../data/militaryInstallations.js';
|
|
import { configureSatelliteSource } from '../data/satellites.js';
|
|
import { configureLaunchSource } from '../data/rocketLaunches.js';
|
|
import { configureFirmsSource } from '../data/firmsHeatmap.js';
|
|
import { configureMilitaryRegistrySource } from '../data/militaryRegistry.js';
|
|
const configure = {
|
|
alpr: configureAlprSource,
|
|
cctv: configureCctvSource,
|
|
radio: configureRadioSource,
|
|
traffic: configureTrafficSource,
|
|
bikeshare: configureBikeshareSource,
|
|
installations: configureInstallationSource,
|
|
satellites: configureSatelliteSource,
|
|
launches: configureLaunchSource,
|
|
firms: configureFirmsSource,
|
|
};
|
|
/** Configure sources before any registration or state restoration starts. */
|
|
export function configureApplicationSources({
|
|
layers = {},
|
|
live = {},
|
|
signal,
|
|
defer,
|
|
}) {
|
|
for (const [name, source] of Object.entries(layers)) {
|
|
if (!configure[name]) throw new TypeError(`Unknown layer source: ${name}`);
|
|
defer(configure[name](source));
|
|
}
|
|
if (live.flights) flights.setSource(live.flights);
|
|
if (live.military) {
|
|
military.setSource(live.military);
|
|
defer(configureMilitaryRegistrySource(live.military, { signal }));
|
|
}
|
|
if (live.vessels) vessels.setSource(live.vessels);
|
|
}
|
|
export const liveLayers = Object.freeze({ flights, military, vessels });
|