UI: дополнения группы — горизонтальные тумблеры вместо галочек; строка базовой игры скрыта

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
2026-06-26 16:43:10 +03:00
co-authored by Claude Opus 4.8
parent c39c96d5dc
commit cd7e5d16b4
2 changed files with 51 additions and 15 deletions
+18 -15
View File
@@ -72,21 +72,24 @@ export function GroupSettingsPage() {
<div className="card">
<h3>Дополнения</h3>
<div className="stack">
{(expansions ?? []).map((e) => (
<label key={e.id} className="row" style={{ justifyContent: "space-between" }}>
<span>
{e.name_ru}
{e.is_base && <span className="muted small"> (всегда включено)</span>}
</span>
<input
type="checkbox"
style={{ width: "auto" }}
disabled={e.is_base || !isOwner}
checked={e.is_base || selected.has(e.id)}
onChange={() => toggle(e.id)}
/>
</label>
))}
{(expansions ?? [])
.filter((e) => !e.is_base)
.map((e) => (
<label key={e.id} className="row" style={{ justifyContent: "space-between" }}>
<span>{e.name_ru}</span>
<span className="switch">
<input
type="checkbox"
disabled={!isOwner}
checked={selected.has(e.id)}
onChange={() => toggle(e.id)}
/>
<span className="switch-track">
<span className="switch-thumb" />
</span>
</span>
</label>
))}
</div>
{isOwner && (
<button className="btn btn-primary" style={{ marginTop: 10 }} onClick={saveExpansions}>