PdfDragButton komplett entfernt (Plattformgrenze)

Test-Ergebnis: Browser kann einer fremden Desktop-App keine echte
lokale Datei zum Anhaengen uebergeben. URL-Drag -> Thunderbird nur Link
(0 Bytes, Fehler beim Senden); Datei-Drop in den Text -> nur Dateiname
als Text; auf die Anhang-Leiste (Thunderbird/Linux) -> ebenfalls kein
echter Anhang; Webmail -> gar nicht moeglich.

Entscheidung: Feature raus. Download- und Anzeigen-Button decken den
Bedarf zuverlaessig ab. PdfDragButton geloescht, fileUrl()-Token-Param
zurueckgebaut. Pentest R131 damit gegenstandslos (kein Drag mehr).

Die separaten Copy-Buttons fuer IBAN + Ausweisnummer im Vertrags-
formular bleiben erhalten.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-07-30 14:51:52 +02:00
co-authored by Claude Opus 4.8
parent 3073acb4b0
commit 5bbb7dfffe
6 changed files with 18 additions and 247 deletions
@@ -10,7 +10,6 @@ import Button from '../../components/ui/Button';
import Input from '../../components/ui/Input';
import Select from '../../components/ui/Select';
import CopyButton from '../../components/ui/CopyButton';
import PdfDragButton from '../../components/ui/PdfDragButton';
import CustomerInfoModal from '../../components/contracts/CustomerInfoModal';
import { buildContractLabelParts } from '../../utils/contractLabel';
import type { ContractType } from '../../types';
@@ -979,12 +978,6 @@ export default function ContractForm() {
{selectedBankCard && (
<CopyButton value={selectedBankCard.iban} title="IBAN kopieren" />
)}
{selectedBankCard?.documentPath && (
<PdfDragButton
path={selectedBankCard.documentPath}
filename={`Bankkarte-${selectedBankCard.iban}`}
/>
)}
</span>
}
{...register('bankCardId')}
@@ -1011,12 +1004,6 @@ export default function ContractForm() {
{selectedDocument && (
<CopyButton value={selectedDocument.documentNumber} title="Ausweisnummer kopieren" />
)}
{selectedDocument?.documentPath && (
<PdfDragButton
path={selectedDocument.documentPath}
filename={`Ausweis-${selectedDocument.documentNumber}`}
/>
)}
</span>
}
{...register('identityDocumentId')}