feat(app): add error/loading boundaries and update dashboard routes

- Add error.tsx and loading.tsx boundaries for admin, parent, student, teacher routes

- Add dashboard-error-fallback and dashboard-loading-skeleton components

- Add student/learning page, parent/leave routes, teacher textbook components

- Update existing app routes across auth, dashboard, and API endpoints

- Update proxy middleware and next-auth type declarations
This commit is contained in:
SpecialX
2026-06-23 17:38:28 +08:00
parent c4d3433cc9
commit 1a9377222c
90 changed files with 1690 additions and 741 deletions

View File

@@ -190,3 +190,54 @@
font-feature-settings: "rlig" 1, "calt" 1;
}
}
/* ---- 备课画布:锚点与连线透明度规则 ---- */
/* 范围锚定文本背景默认透明opacity 0选中关联节点时显示opacity 0.3 */
.range-anchor {
background-color: var(--node-color, #1976d2);
opacity: 0;
transition: opacity 0.2s ease;
border-radius: 2px;
cursor: pointer;
padding: 0 1px;
}
.range-anchor.active {
opacity: 0.3;
}
.range-anchor:hover {
opacity: 0.5;
}
/* 点锚定占位符默认半透明opacity 0.3选中关联节点时不透明opacity 1 */
.point-anchor {
background-color: var(--node-color, #1976d2);
color: #fff;
opacity: 0.3;
transition: opacity 0.2s ease;
border-radius: 50%;
cursor: pointer;
padding: 0 4px;
margin: 0 1px;
font-size: 0.85em;
font-weight: 600;
display: inline-block;
min-width: 1.2em;
text-align: center;
line-height: 1.2;
user-select: none;
}
.point-anchor.active {
opacity: 1;
}
.point-anchor:hover {
opacity: 0.8;
}
/* 锚点连线:默认 10% 透明度,选中关联节点时完整显示 */
.anchor-edge {
opacity: 0.1;
transition: opacity 0.2s ease;
}
.anchor-edge.active {
opacity: 1;
}