dyomedea/src/db/gpx.ts

46 lines
1.4 KiB
TypeScript
Raw Normal View History

import getUri from '../lib/ids';
2022-11-07 17:20:01 +00:00
import { put } from './lib';
const emptyGpx: Gpx = {
$: {
version: '1.1',
creator: 'dyomedea version 0.000002',
xmlns: 'http://www.topografix.com/GPX/1/1',
'xmlns:xsi': 'http://www.w3.org/2001/XMLSchema-instance',
'xsi:schemaLocation':
'http://www.topografix.com/GPX/1/1 http://www.topografix.com/GPX/1/1/gpx.xsd http://www.garmin.com/xmlschemas/GpxExtensions/v3 http://www8.garmin.com/xmlschemas/GpxExtensionsv3.xsd http://www.garmin.com/xmlschemas/WaypointExtension/v1 http://www8.garmin.com/xmlschemas/WaypointExtensionv1.xsd http://www.garmin.com/xmlschemas/TrackPointExtension/v1 http://www.garmin.com/xmlschemas/TrackPointExtensionv1.xsd',
'xmlns:gpxx': 'http://www.garmin.com/xmlschemas/GpxExtensions/v3',
'xmlns:wptx1': 'http://www.garmin.com/xmlschemas/WaypointExtension/v1',
'xmlns:gpxtpx': 'http://www.garmin.com/xmlschemas/TrackPointExtension/v1',
'xmlns:dyo': 'http://xmlns.dyomedea.com/',
},
metadata: {
2022-11-07 16:04:02 +00:00
name: '',
desc: '',
author: '',
copyright: '',
link: '',
time: '',
keywords: '',
bounds: '',
extensions: '',
},
2022-11-07 16:04:02 +00:00
wpt: [],
rte: [],
trk: [],
extensions: '',
};
export const putNewGpx = (id: string) => {
const uri = getUri('gpx', { gpx: id });
2022-11-07 17:20:01 +00:00
put(
uri,
'gpx',
(gpx) => {
gpx.metadata!.time = new Date(Date.now()).toISOString();
return gpx;
},
emptyGpx
);
};