ui(roles): warning «изменения применятся ко всем сотрудникам» при edit

Edit модалка для кастомной роли (не системной, существующей) теперь
показывает amber-плашку перед матрицей прав — напоминает что галка
тут касается N людей сразу. Системные роли — без плашки (там
disabled чекбоксы).

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
nns 2026-04-26 15:08:13 +05:00
parent 4dd6b16eed
commit 6f61bbd974

View file

@ -229,7 +229,7 @@ export function EmployeeRolesPage() {
<Modal <Modal
open={!!form} open={!!form}
onClose={() => setForm(null)} onClose={() => setForm(null)}
title={form?.id ? 'Редактировать роль' : 'Новая роль'} title={form?.id ? `Редактировать роль${form.isSystem ? ' (системная)' : ''}` : 'Новая роль'}
width="max-w-2xl" width="max-w-2xl"
footer={ footer={
<> <>
@ -256,6 +256,11 @@ export function EmployeeRolesPage() {
<Field label="Описание"> <Field label="Описание">
<TextArea rows={2} value={form.description} onChange={(e) => setForm({ ...form, description: e.target.value })} /> <TextArea rows={2} value={form.description} onChange={(e) => setForm({ ...form, description: e.target.value })} />
</Field> </Field>
{form.id && !form.isSystem && (
<div className="rounded-md bg-amber-50 border border-amber-200 dark:bg-amber-900/20 dark:border-amber-800 px-3 py-2 text-xs text-amber-800 dark:text-amber-200">
Изменение прав применится ко ВСЕМ сотрудникам с этой ролью.
</div>
)}
<div className="border-t border-slate-200 dark:border-slate-700 pt-3 space-y-4"> <div className="border-t border-slate-200 dark:border-slate-700 pt-3 space-y-4">
<h3 className="text-sm font-semibold">Права</h3> <h3 className="text-sm font-semibold">Права</h3>
{PERM_GROUPS.map((g) => ( {PERM_GROUPS.map((g) => (