This commit is contained in:
@@ -411,10 +411,28 @@ const main = async () => {
|
||||
await mkdir(outputDir, { recursive: true })
|
||||
|
||||
const sdkManifest = await getJson(`${apiRoot}/gis/sdk/maps/${encodeURIComponent(mapId)}/manifest`)
|
||||
const accessibleFloors = (sdkManifest.floors || []).filter((floor) => {
|
||||
const selectedFloors = (sdkManifest.floors || []).filter((floor) => {
|
||||
const code = String(floor.floorCode || '').trim().toUpperCase()
|
||||
return Boolean(code && floor.modelUrl && (!requestedFloors.size || requestedFloors.has(code)))
|
||||
return Boolean(code && (!requestedFloors.size || requestedFloors.has(code)))
|
||||
})
|
||||
const accessibleFloors = (await Promise.all(selectedFloors.map(async (floor) => {
|
||||
if (floor.modelUrl) return floor
|
||||
|
||||
const bundle = await getJson(
|
||||
`${apiRoot}/gis/sdk/floors/${encodeURIComponent(String(floor.floorId))}/bundle`
|
||||
)
|
||||
const modelUrl = String(bundle?.model?.modelUrl || '').trim()
|
||||
if (!modelUrl) {
|
||||
throw new Error(`${floor.floorCode}: SDK manifest and floor bundle both lack a model URL`)
|
||||
}
|
||||
return {
|
||||
...floor,
|
||||
modelUrl,
|
||||
modelVersion: String(
|
||||
bundle?.model?.modelVersion || bundle?.dataVersion || floor.modelVersion || sdkManifest.dataVersion || 'unversioned'
|
||||
)
|
||||
}
|
||||
}))).filter(Boolean)
|
||||
const sdkFloorsByCode = new Map((sdkManifest.floors || []).map((floor) => (
|
||||
[String(floor.floorCode || '').trim().toUpperCase(), floor]
|
||||
)))
|
||||
|
||||
Reference in New Issue
Block a user