Files
shanghai-residences/src/components/index.ts
T
zhongyidian e0fa47d21a 更新依赖项及历史人物相关内容资源
- 更新 package.json 和 package-lock.json 中的依赖项
- 新增/更新陈云、黄炎培、鲁迅、孙中山的音频文件
- 新增场景和组件的图片资源
- 清理未使用的音频和图片文件
- 优化多个组件和页面的实现逻辑
2026-04-20 13:27:18 +08:00

116 lines
3.0 KiB
TypeScript

// Video component
export { default as Video } from './video'
export type { VideoProps, VideoRef, VideoAnchor, AnchorContext } from './video'
// Button components
export { Button, ImageButton, FlipActionButton } from './button'
export type { BaseButtonProps, ImageButtonProps, FlipActionButtonProps } from './button'
// Image component
export { Image } from './image'
export type { ImageProps } from './image'
// Title
export { Title } from './title'
// Guide components
export { GuideSteps, GuideStepsItem, StudyGuideModal } from './guide'
// Exhibit overlay
export { ExhibitOverlay } from './exhibit'
export type { ExhibitOverlayProps } from './exhibit'
export { ExhibitFlipOverlay } from './exhibit'
export type { ExhibitFlipOverlayProps } from './exhibit'
// Overlay component
export { Overlay } from './overlay'
export type { OverlayProps } from './overlay'
export { EndingOverlay } from './overlay'
export type { EndingOverlayProps } from './overlay'
// Spotlight component
export { Spotlight } from './spotlight'
// Quiz panel components
export {
QuizPanel,
SingleChoiceQuizPanel,
MultipleChoiceQuizPanel,
DragQuizPanel,
MatchQuizPanel,
SelectFillQuizPanel,
} from './layout/quiz'
export type {
QuizPanelProps,
SingleChoiceQuizPanelProps,
MultipleChoiceQuizPanelProps,
DragQuizPanelProps,
MatchQuizPanelProps,
SelectFillQuizPanelProps,
} from './layout/quiz'
//Cursor
export { default as Cursor } from '@/components/cursor'
// Quiz components
export { SingleChoice, MultipleChoice, DragFill } from './quiz'
export type {
SingleChoiceProps,
SingleChoiceOption,
MultipleChoiceProps,
MultipleChoiceOption,
DragFillProps,
DragFillOption,
DragFillBlank,
DragFillResult,
} from './quiz'
// Narration component
export { Narration } from './narration'
export type { NarrationProps } from './narration'
// Hint (lightweight toast)
export { HintHost, showHint, hideHint } from './hint'
export type { ShowHintOptions, HintPositionOffset } from './hint'
export { SceneHint } from './hint'
export type { SceneHintProps } from './hint'
// Clue components
export { ClueHintModal, ClueBookModal } from './clue'
export type { ClueHintModalProps, ClueHint, ClueBookModalProps } from './clue'
// Animation components
export { flyToAnimation } from './animation'
export type { FlyToAnimationOptions, FlyToPosition } from './animation'
// Select component
export { Select } from './select'
export type { SelectProps, SelectOption } from './select'
// Letter components
export {
LetterToChenyun,
LetterToMaozedong,
LetterToSunzhongshan,
LetterToHuangyanpei,
LetterToLuxun,
LetterToZhangleping,
LetterToNieer,
LetterToRongdesheng,
} from './letter'
export type {
LetterToChenyunProps,
LetterToMaozedongProps,
LetterToSunzhongshanProps,
LetterToHuangyanpeiProps,
LetterToLuxunProps,
LetterToZhanglepingProps,
LetterToNieerProps,
LetterToRongdeshengProps,
} from './letter'
// Puzzle components
export { PuzzleSystem, PuzzlePieceDisplay } from './puzzle'
export type { PuzzleSystemProps, PuzzlePieceDisplayProps } from './puzzle'