Files
frontend-miniapp/src/domain/guideReadiness.ts

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'