feat(chat): port chat widget components from Dart to React

This commit is contained in:
2026-06-09 20:19:52 +08:00
parent 199a14650e
commit 109a3e3855
48 changed files with 2463 additions and 382 deletions
@@ -0,0 +1,66 @@
/* LanguageDialog 语言切换弹窗样式 */
.overlay {
position: fixed;
inset: 0;
background: rgba(0, 0, 0, 0.5);
display: flex;
align-items: center;
justify-content: center;
z-index: 50;
}
.dialog {
width: calc(100% - 40px);
max-width: 360px;
background: var(--color-surface, #1f1a2e);
border-radius: var(--radius-lg, 12px);
padding: var(--spacing-5, 20px);
display: flex;
flex-direction: column;
gap: var(--spacing-3, 12px);
max-height: 80vh;
}
.title {
font-size: var(--font-size-lg, 18px);
font-weight: 600;
margin: 0;
color: var(--color-text-primary, #fff);
}
.list {
display: flex;
flex-direction: column;
gap: var(--spacing-1, 4px);
overflow-y: auto;
max-height: 60vh;
}
.item {
display: flex;
align-items: center;
justify-content: space-between;
padding: var(--spacing-3, 12px) var(--spacing-4, 16px);
background: transparent;
border: 0;
border-radius: var(--radius-md, 8px);
color: var(--color-text-primary, #fff);
font-size: var(--font-size-base, 14px);
text-align: left;
cursor: pointer;
}
.item:hover,
.item:focus-visible {
background: rgba(255, 255, 255, 0.05);
}
.itemActive {
background: rgba(248, 77, 150, 0.15);
}
.check {
color: var(--color-accent, #f84d96);
font-weight: 700;
}