in src/lib/components/molecules/canvas-map/lib/formats/GeoJSON.js [39:80]
readFeaturesFromObject(object) {
const geoJSONObject = object
let features = null
if (geoJSONObject["type"] === "FeatureCollection") {
const geoJSONFeatureCollection = object
features = []
const geoJSONFeatures = geoJSONFeatureCollection["features"]
for (let i = 0, ii = geoJSONFeatures.length; i < ii; ++i) {
const featureObject = this.readFeatureFromObject(geoJSONFeatures[i])
if (!featureObject) {
continue
}
features.push(featureObject)
}
} else if (geoJSONObject["type"] === "Feature") {
features = [
this.readFeatureFromObject(
/** @type {GeoJSONFeature} */ (geoJSONObject),
),
]
} else if (Array.isArray(geoJSONObject)) {
features = []
for (let i = 0, ii = geoJSONObject.length; i < ii; ++i) {
const featureObject = this.readFeatureFromObject(geoJSONObject[i])
if (!featureObject) {
continue
}
features.push(featureObject)
}
} else {
try {
const geometries = this.readGeometriesFromObject(geoJSONObject)
const feature = new Feature({ geometries })
features = [feature]
} catch {
console.warn("Unable to interpret GeoJSON:", geoJSONObject)
return
}
}
return features.flat()
}