Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
parse(data, options = {}) {
let result;
// If a zip is present, don't read anything else
if (data.zip) {
result = shp.parseZip(data.zip);
} else if (data.shp && data.shx && data.dbf) {
result = Promise.all([
shp.parseShp(data.shp, data.prj),
shp.parseDbf(data.dbf),
]).then(shp.combine);
}
options.crsIn = data.prj ? proj4(data.prj).oProj.datumName : undefined;
return Promise.resolve(result).then(res => GeoJsonParser.parse(res, options));
},
};
shapefileRead = (e: ProgressEvent & {target: EventTarget}) => {
debug(`read ${e.target.result.byteLength} bytes`)
const shapefile = shp.parseZip(e.target.result)
const properties = []
for (const key in shapefile.features[0].properties) {
if (shapefile.features[0].properties.hasOwnProperty(key)) {
properties.push(key)
}
}
this.setState({
shapefile,
properties,
nameProp: properties[0],
freqProp: properties[0],
speedProp: properties[0],
error: undefined
})
shpToGeoJSON: function(zipBuffer) {
return [].concat(shp.parseZip(zipBuffer));
},
kmlToGeoJSON: function(xml) {