add alert-level-changes widget with working time range selector

This commit is contained in:
2026-08-18 21:20:49 +00:00
parent 7667235fdb
commit 7f92ddd62b
9 changed files with 318 additions and 86 deletions
@@ -2,25 +2,13 @@ import VdapApi from '../../hooks/useVdapApi.js';
import { useMemo } from 'react';
import Plot from 'react-plotly.js';
import {Box, Flex, Spinner, Text} from "@chakra-ui/react";
import useBuildUrl from "@/hooks/useBuildUrl.js";
export default function SeismicEvents({ settings, widgetID}) {
const url = useMemo(() =>{
if (settings?.startDate && settings?.endDate)
return '/api/v2/seismic_events?start_date=' + settings?.startDate + '&end_date=' + settings?.endDate;
else {
const base_url = '/api/v2/seismic_events';
let today = new Date();
let sevenDaysAgo = new Date(today);
sevenDaysAgo.setDate(sevenDaysAgo.getDate() - 7);
// build url, defaults to 7 days past
const url = useBuildUrl('/api/v2/seismic_events', settings?.startDate, settings?.endDate);
sevenDaysAgo = sevenDaysAgo.toLocaleDateString('en-CA');
today = today.toLocaleDateString('en-CA');
return base_url + '?start_date=' + sevenDaysAgo + '&end_date=' + today;
}
}, [settings?.startDate, settings?.endDate]);
console.log(url);
// retrieve data from api
const { data: apiData, isLoading, error } = VdapApi(url);
const plotTraces = useMemo(() => {