@trailstash/ultra
Version:
A web based tool for making MapLibre GL maps with data from sources such as Overpass, GeoJSON, GPX, KML, TCX, etc
29 lines (26 loc) • 685 B
JavaScript
import wkt from "wkt";
const wktDataTypes = new Set([
"http://www.opengis.net/ont/geosparql#wktLiteral",
"http://www.openlinksw.com/schemas/virtrdf#Geometry",
]);
export default function (sparqlJSON) {
return {
type: "FeatureCollection",
features: sparqlJSON.results.bindings.map((record) => {
const properties = {};
let geometry;
for (const [key, { datatype, value }] of Object.entries(record)) {
if (wktDataTypes.has(datatype)) {
geometry = wkt.parse(value);
} else {
properties[key] = value;
}
}
return {
type: "Feature",
geometry,
properties,
};
}),
};
}