Projekte im Ticketsystem: Anlegen, Archiv und Anzeige repariert
- Neues Projekt (Projekte-Seite): Repo-Name blieb nach dem ersten
Buchstaben der Subdomain stehen ("m" statt "musterfirma")
- Ticket "Projekt waehlen": archivierte Repos nach Flag ausblenden, nicht
nach status (reaktivierte fehlten, archivierte wurden angeboten)
- Projektliste: "Aktive Projekte" + neue Ansicht "Alle inkl. Archiv";
Liste wird auch nach einem Anlege-Fehler neu geladen
- Kundenauswahl: "Kein Kunde" entfernt Kunde und Ticket wirklich (mit
Rueckfrage); beim Kundenwechsel bleibt kein fremdes Ticket haengen
- Zuordnen-Assistent ueberschreibt eine vorhandene Website nicht mehr
- Neues Projekt am Ticket bekommt die Art Website
- Umlaute in Subdomains wie im Portal (mueller statt m-ller)
- Preview-Block nur mit gespeicherter Subdomain; archivierte Projekte
erst reaktivieren, bevor sie bearbeitet werden
- Repo-Import beim Aufklappen hoechstens einmal pro Minute
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
1 parent
78bc99a73b
commit
f4c8b235b9
13 files changed
+269
-92
No files matched your search
@@ -0,0 +1,17 @@
|
||||
// Ein Aufruf hoechstens alle `maxAgeMs`: ein laufender Aufruf wird geteilt, danach liefert die
|
||||
// Funktion bis zum Ablauf null (uebersprungen). `now` nur fuer Tests.
|
||||
export function throttleRuns(run, maxAgeMs) {
|
||||
let pending = null
|
||||
let doneAt = 0
|
||||
return ({ now = Date.now() } = {}) => {
|
||||
if (pending) return pending
|
||||
if (doneAt && now - doneAt < maxAgeMs) return Promise.resolve(null)
|
||||
pending = Promise.resolve()
|
||||
.then(run)
|
||||
.finally(() => {
|
||||
doneAt = Date.now()
|
||||
pending = null
|
||||
})
|
||||
return pending
|
||||
}
|
||||
}
|
||||
Reference in new issue
Block a user