Files
shanghai-residences/src/router/modules/rongdesheng.tsx
T
zhongyidian 284302341c feat: add progression logic for puzzle residences
- Implemented functions to manage puzzle progress including checking if residences are started, complete, and unlocked.
- Added utility functions to retrieve piece IDs based on residence and route.
- Introduced a new TypeScript file for progression management.
- Integrated puzzle data configuration and residence data for seamless progression tracking.
2026-05-01 21:19:25 +08:00

74 lines
2.2 KiB
TypeScript

import { lazy } from 'react'
import { RouteObject } from 'react-router-dom'
import { ResidenceLayout } from '@/components/layout'
import { VideoRouteHandle } from '../types'
const HomePage = lazy(() => import('@/pages/rongdesheng/home'))
const RongdeshengPlace1 = lazy(() => import('@/pages/rongdesheng/place/place1'))
const RongdeshengPlace2 = lazy(() => import('@/pages/rongdesheng/place/place2'))
const RongdeshengPlace3 = lazy(() => import('@/pages/rongdesheng/place/place3'))
const RongdeshengPlace4 = lazy(() => import('@/pages/rongdesheng/place/place4'))
const RongdeshengReflection = lazy(() => import('@/pages/rongdesheng/reflection'))
const RongdeshengInternalization = lazy(() => import('@/pages/rongdesheng/internalization'))
// 荣德生 router
// 路径格式:/:moduleName/rongdesheng/:page
export const RongdeshengRoutes: RouteObject[] = [
{
path: '/:moduleName/rongdesheng',
element: <ResidenceLayout />,
children: [
{
index: true,
element: <HomePage />,
handle: {
videoSrc: 'video/rongdesheng/rongdesheng_lukou.mp4',
} as VideoRouteHandle,
},
{
path: 'home',
element: <HomePage />,
handle: {
videoSrc: 'video/rongdesheng/rongdesheng_lukou.mp4',
} as VideoRouteHandle,
},
{
path: 'place1',
element: <RongdeshengPlace1 />,
handle: {
videoSrc: 'video/rongdesheng/rongdesheng_1.mp4',
} as VideoRouteHandle,
},
{
path: 'place2',
element: <RongdeshengPlace2 />,
handle: {
videoSrc: 'video/rongdesheng/rongdesheng_2.mp4',
} as VideoRouteHandle,
},
{
path: 'place3',
element: <RongdeshengPlace3 />,
handle: {
videoSrc: 'video/rongdesheng/rongdesheng_7.mp4',
} as VideoRouteHandle,
},
{
path: 'place4',
element: <RongdeshengPlace4 />,
handle: {
videoSrc: 'video/rongdesheng/rongdesheng_9.mp4',
} as VideoRouteHandle,
},
{
path: 'reflection',
element: <RongdeshengReflection />,
},
{
path: 'internalization',
element: <RongdeshengInternalization />,
},
],
},
]