refactor: migrace vsech formularu na FormField komponentu + JWT upgrade

- FormField.jsx: pridana podpora style prop
- 23 stranek migrovano na FormField (166 vyskytu, -246 radku)
- firebase/php-jwt upgrade v6.11 -> v7.0.3 (security advisory fix)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-03-12 19:33:36 +01:00
parent 37122579d0
commit 2328ba2840
26 changed files with 366 additions and 612 deletions

View File

@@ -3,6 +3,7 @@ import { motion, AnimatePresence } from 'framer-motion'
import { useAuth } from '../context/AuthContext'
import { useAlert } from '../context/AlertContext'
import ConfirmModal from '../components/ConfirmModal'
import FormField from '../components/FormField'
import Forbidden from '../components/Forbidden'
import useModalLock from '../hooks/useModalLock'
@@ -357,8 +358,7 @@ export default function Users() {
<div className="admin-modal-body">
<div className="admin-form">
<div className="admin-form-row">
<div className="admin-form-group">
<label className="admin-form-label">Jméno</label>
<FormField label="Jméno">
<input
type="text"
value={formData.first_name}
@@ -366,9 +366,8 @@ export default function Users() {
required
className="admin-form-input"
/>
</div>
<div className="admin-form-group">
<label className="admin-form-label">Příjmení</label>
</FormField>
<FormField label="Příjmení">
<input
type="text"
value={formData.last_name}
@@ -376,11 +375,10 @@ export default function Users() {
required
className="admin-form-input"
/>
</div>
</FormField>
</div>
<div className="admin-form-group">
<label className="admin-form-label">Uživatelské jméno</label>
<FormField label="Uživatelské jméno">
<input
type="text"
value={formData.username}
@@ -388,10 +386,9 @@ export default function Users() {
required
className="admin-form-input"
/>
</div>
</FormField>
<div className="admin-form-group">
<label className="admin-form-label">E-mail</label>
<FormField label="E-mail">
<input
type="email"
value={formData.email}
@@ -399,12 +396,9 @@ export default function Users() {
required
className="admin-form-input"
/>
</div>
</FormField>
<div className="admin-form-group">
<label className="admin-form-label">
Heslo {editingUser && '(ponechte prázdné pro zachování stávajícího)'}
</label>
<FormField label={`Heslo ${editingUser ? '(ponechte prázdné pro zachování stávajícího)' : ''}`}>
<input
type="password"
value={formData.password}
@@ -412,10 +406,9 @@ export default function Users() {
required={!editingUser}
className="admin-form-input"
/>
</div>
</FormField>
<div className="admin-form-group">
<label className="admin-form-label">Role</label>
<FormField label="Role">
<select
value={formData.role_id}
onChange={(e) => setFormData({ ...formData, role_id: e.target.value })}
@@ -428,7 +421,7 @@ export default function Users() {
</option>
))}
</select>
</div>
</FormField>
<label className="admin-form-checkbox">
<input