()
| 73 | } |
| 74 | |
| 75 | export default function ProgramIndex() { |
| 76 | return ( |
| 77 | <Box sx={{flex: 1, minHeight: 0, overflowY: "auto", width: "100%", py: {xs: 1, sm: 2}}}> |
| 78 | <Typography variant="h5" sx={{fontWeight: 700}}>项目信息表</Typography> |
| 79 | <Typography sx={{color: "text.secondary", mt: 1, mb: 4, maxWidth: 720}}> |
| 80 | 汇集 ShanghaiTech 学长学姐整理的海外硕博项目信息,从左侧选择学校开始浏览,或借助筛选快速定位目标项目。 |
| 81 | </Typography> |
| 82 | |
| 83 | <SectionLabel>快速上手</SectionLabel> |
| 84 | <Box sx={{display: "grid", gridTemplateColumns: "repeat(auto-fill, minmax(300px, 1fr))", gap: 2}}> |
| 85 | {tips.map((tip) => ( |
| 86 | <Paper key={tip.title} elevation={0} |
| 87 | sx={{bgcolor: (theme) => theme.palette.surfaceVariant, borderRadius: 3, p: 2.5, display: "flex", gap: 2, alignItems: "flex-start"}}> |
| 88 | <IconTile>{tip.icon}</IconTile> |
| 89 | <Box> |
| 90 | <Typography sx={{fontWeight: 600, mb: 0.5}}>{tip.title}</Typography> |
| 91 | <Typography variant="body2" sx={{color: "text.secondary", lineHeight: 1.7}}>{tip.desc}</Typography> |
| 92 | </Box> |
| 93 | </Paper> |
| 94 | ))} |
| 95 | </Box> |
| 96 | |
| 97 | <Box sx={{mt: 4}}> |
| 98 | <SectionLabel>专业标签速查</SectionLabel> |
| 99 | <Paper elevation={0} |
| 100 | sx={{bgcolor: (theme) => theme.palette.surfaceVariant, borderRadius: 3, p: 2.5, display: "grid", gridTemplateColumns: "repeat(auto-fill, minmax(220px, 1fr))", gap: 1.5}}> |
| 101 | {majors.map((m) => ( |
| 102 | <Box key={m.tag} sx={{display: "flex", alignItems: "center", gap: 1.5}}> |
| 103 | <Chip label={m.tag} size="small" |
| 104 | sx={{fontWeight: 700, bgcolor: (theme) => theme.palette.surface, color: "primary.main", minWidth: 60}}/> |
| 105 | <Box sx={{minWidth: 0}}> |
| 106 | <Typography variant="body2" sx={{fontWeight: 600, lineHeight: 1.3}}>{m.zh}</Typography> |
| 107 | <Typography variant="caption" sx={{color: "text.secondary"}}>{m.full}</Typography> |
| 108 | </Box> |
| 109 | </Box> |
| 110 | ))} |
| 111 | </Paper> |
| 112 | </Box> |
| 113 | |
| 114 | <Box sx={{mt: 4}}> |
| 115 | <SectionLabel>使用须知</SectionLabel> |
| 116 | <Paper elevation={0} sx={{bgcolor: (theme) => theme.palette.surfaceVariant, borderRadius: 3, p: 2.5}}> |
| 117 | <Box component="ul" sx={{m: 0, pl: 2.5, color: "text.secondary"}}> |
| 118 | {notes.map((note) => ( |
| 119 | <Typography component="li" variant="body2" key={note} sx={{lineHeight: 1.9}}>{note}</Typography> |
| 120 | ))} |
| 121 | </Box> |
| 122 | <Typography variant="body2" sx={{color: "text.secondary", mt: 1.5, lineHeight: 1.8}}> |
| 123 | 没有找到你的学校?请到 GitHub{" "} |
| 124 | <MuiLink href="https://github.com/orgs/OpenSIST/discussions/23" target="_blank" rel="noopener">Discussion</MuiLink> |
| 125 | {" "}中提出需要添加的学校名称,开发者会尽快处理。 |
| 126 | </Typography> |
| 127 | </Paper> |
| 128 | </Box> |
| 129 | </Box> |
| 130 | ); |
| 131 | } |
nothing calls this directly
no outgoing calls
no test coverage detected