46 lines
1.1 KiB
TypeScript
46 lines
1.1 KiB
TypeScript
import type {
|
|
GuideRouteReadiness
|
|
} from '@/domain/museum'
|
|
|
|
export const NAV_ROUTE_GRAPH_READY = false
|
|
|
|
export const NAV_ROUTE_UNAVAILABLE_MESSAGE = '当前暂不支持正式导航,可查看位置预览、路线示意和室外参考'
|
|
|
|
export const NAV_ROUTE_READINESS: GuideRouteReadiness = {
|
|
ready: NAV_ROUTE_GRAPH_READY,
|
|
message: NAV_ROUTE_UNAVAILABLE_MESSAGE,
|
|
requiredData: ['route_graph', 'nav_data']
|
|
}
|
|
|
|
export const applyRouteReadinessGate = (
|
|
readiness: GuideRouteReadiness | null | undefined
|
|
): GuideRouteReadiness => {
|
|
const fallback = readiness || NAV_ROUTE_READINESS
|
|
const requiredData = fallback.requiredData?.length
|
|
? fallback.requiredData
|
|
: NAV_ROUTE_READINESS.requiredData
|
|
|
|
if (!NAV_ROUTE_GRAPH_READY) {
|
|
return {
|
|
...NAV_ROUTE_READINESS,
|
|
requiredData
|
|
}
|
|
}
|
|
|
|
if (!fallback.ready) {
|
|
return {
|
|
...fallback,
|
|
ready: false,
|
|
message: fallback.message || NAV_ROUTE_UNAVAILABLE_MESSAGE,
|
|
requiredData
|
|
}
|
|
}
|
|
|
|
return {
|
|
...fallback,
|
|
requiredData
|
|
}
|
|
}
|
|
|
|
export const NAV_ASSET_BASE_URL = '/static/nav-assets/codex_nav_20260621_175310_museum_default_centerline_finalxy'
|