Prüfung / Lint, Typen, Tests (push) Canceled after 0s
Prüfung / Images bauen (pdf) (push) Canceled after 0s
Prüfung / Images bauen (web) (push) Canceled after 0s
Prüfung / Images bauen (worker) (push) Canceled after 0s
Images / bauen (pdf, docker/pdf.Dockerfile) (push) Canceled after 0s
Images / bauen (web, docker/web.Dockerfile) (push) Canceled after 0s
Images / bauen (worker, docker/worker.Dockerfile) (push) Canceled after 0s
375 Vorkommen in 210 Dateien. Betrifft Kommentare, Oberflaechentexte und die README; an keiner Stelle Bedeutung, nur Zeichensetzung.
29 lines
899 B
TypeScript
29 lines
899 B
TypeScript
import type { CasePreview } from '@/lib/chat/preview'
|
|
|
|
/**
|
|
* Die Form, in der eine Nachricht die Grenze zur Anzeige überquert.
|
|
*
|
|
* Datumsangaben als Zeichenkette, weil ein `Date` diese Grenze nicht sauber
|
|
* überquert, und der Text einer zurückgezogenen Nachricht ist **leer** - nicht
|
|
* ausgeblendet. Was der Client nicht bekommt, kann er nicht zeigen.
|
|
*/
|
|
export type ChatMessageView = {
|
|
id: string
|
|
body: string
|
|
authorId: string
|
|
authorName: string
|
|
replyToId: string | null
|
|
editedAt: string | null
|
|
withdrawnAt: string | null
|
|
adoptedEntryId: string | null
|
|
createdAt: string
|
|
/** Nur zu Aktenzeichen, die im Text vorkommen. Serverseitig aufgelöst. */
|
|
previews: Record<string, CasePreview>
|
|
}
|
|
|
|
const CASE_NUMBER = /\b[A-Za-z][A-Za-z0-9-]*-\d{4}-\d{3,8}\b/g
|
|
|
|
export function extractCaseNumbers(body: string): string[] {
|
|
return [...new Set(body.match(CASE_NUMBER) ?? [])]
|
|
}
|