planche 0.7.0 → 0.7.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (68) hide show
  1. package/README.md +60 -14
  2. package/app/assets/AboutDialog-BKZYkJTp.js +1 -0
  3. package/app/assets/ConnectDialog-BR8x82WA.js +1 -0
  4. package/app/assets/CopyDatabaseDialog-BNy2T6Gr.js +1 -0
  5. package/app/assets/CopyTableDialog-BPlrWZkd.js +1 -0
  6. package/app/assets/CreateDatabaseDialog-CSGP8uim.js +1 -0
  7. package/app/assets/DataDiffDialog-DnPrMjJH.js +1 -0
  8. package/app/assets/DownloadToCSVDialog-BAB8dFZb.js +3 -0
  9. package/app/assets/EditSchemaDialog-DbtEwLFq.js +1 -0
  10. package/app/assets/FindReplaceDialog-uWQWnCuI.js +1 -0
  11. package/app/assets/FlushDialog-Cs0aKhnC.js +1 -0
  12. package/app/assets/LinkColumnDialog-Wug5N1I5.js +1 -0
  13. package/app/assets/LocalHistoryDialog-DNRc52tY.js +1 -0
  14. package/app/assets/ProcessListDialog-EFZx2I21.js +1 -0
  15. package/app/assets/QuickCommandPalette-CpXQe_fD.js +1 -0
  16. package/app/assets/RowFormDialog-DGJRhveF.js +2 -0
  17. package/app/assets/SafetySettingsDialog-EPYmYqI7.js +1 -0
  18. package/app/assets/SchemaDiffDialog-CepiDNT4.js +7 -0
  19. package/app/assets/SchemaToHTMLDialog-Cl7FtDQ4.js +27 -0
  20. package/app/assets/StatusDialog-BorcEOOv.js +1 -0
  21. package/app/assets/TermsDialog-CSYNiNpB.js +1 -0
  22. package/app/assets/UserAddDialog-DvKVbCtu.js +1 -0
  23. package/app/assets/UserManagerDialog-lyWevcWM.js +1 -0
  24. package/app/assets/VariablesDialog-BVUkQuDm.js +1 -0
  25. package/app/assets/app-storage-B6v72zLH.js +1 -0
  26. package/app/assets/button-BGQhw-yz.js +1 -0
  27. package/app/assets/chevron-up-C8Exvnh_.js +1 -0
  28. package/app/assets/codicon-ngg6Pgfi.ttf +0 -0
  29. package/app/assets/connection-store-B9-4NAfR.js +1 -0
  30. package/app/assets/database-D3ZazTXj.js +1 -0
  31. package/app/assets/dbms-Cq4imB7l.js +353 -0
  32. package/app/assets/de-B9X_f_18.js +2 -0
  33. package/app/assets/dialog-z_ZHxAMN.js +1 -0
  34. package/app/assets/dist-Dfw8x01G.js +1 -0
  35. package/app/assets/dist-R-HWeP5h.js +41 -0
  36. package/app/assets/dist-Roudme38.js +3 -0
  37. package/app/assets/dist-eK8CwLw8.js +1 -0
  38. package/app/assets/editor.worker-BboMRUer.js +26 -0
  39. package/app/assets/engine-BmvPzjsq.js +1 -0
  40. package/app/assets/file-name-CnYBZPf9.js +1 -0
  41. package/app/assets/fr-ByU5YzKG.js +2 -0
  42. package/app/assets/i18n-9War-oHy.js +2 -0
  43. package/app/assets/ja-nAp-4B2u.js +2 -0
  44. package/app/assets/ko-BeLRvuuF.js +2 -0
  45. package/app/assets/main-CCLlOK4N.js +940 -0
  46. package/app/assets/main-DntTuWCY.css +2 -0
  47. package/app/assets/query-execution-C80kZc4y.js +7 -0
  48. package/app/assets/query-store-fCiE0iiG.js +1 -0
  49. package/app/assets/schema-nodes-n_QZJb21.js +1 -0
  50. package/app/assets/select-XqkC478q.js +1 -0
  51. package/app/assets/settings-store-MJead_iM.js +1 -0
  52. package/app/assets/sql-NEE52Syq.js +1 -0
  53. package/app/assets/sqlite3-BVKGSWc-.wasm +0 -0
  54. package/app/assets/sqlite3-opfs-async-proxy-D_xnb1D8.js +876 -0
  55. package/app/assets/sqlite3-worker1-CVKz6JuG.js +43 -0
  56. package/app/assets/storage-worker-DEIYmjYK.js +43 -0
  57. package/app/assets/table-copy-WMW8qLUH.js +1 -0
  58. package/app/assets/table-definition-Bs5VSn0X.js +1 -0
  59. package/app/assets/ui-store-DWSBgCoR.js +1 -0
  60. package/app/assets/use-engine-z0WEd5U4.js +1 -0
  61. package/app/assets/user-store-D_BMKTT2.js +1 -0
  62. package/app/assets/zh-QBkIdY--.js +2 -0
  63. package/app/favicon.svg +1 -0
  64. package/app/icons.svg +24 -0
  65. package/app/index.html +120 -0
  66. package/app/landing.css +25 -0
  67. package/dist/index.js +44 -35
  68. package/package.json +3 -2
@@ -0,0 +1,2 @@
1
+ var e={reconnecting:`Verbindung wird wiederhergestellt…`,dropSqlite:`Loslassen, um die SQLite-Datei zu öffnen`,dropSqliteHint:`Wird per WebAssembly im Browser geöffnet — die Datei bleibt auf Ihrem Rechner. Eine vorhandene -wal-Datei bitte mit ablegen.`,dropFailedTitle:`Abgelegte Datei konnte nicht geöffnet werden`,dropNotSqlite:`{{name}} ist keine SQLite-Datenbankdatei.`,crashTitle:`Etwas ist schiefgelaufen`,crashBody:`Die App ist auf einen unerwarteten Fehler gestoßen. Neu laden stellt Verbindungen und Tabs wieder her; ungespeicherte Änderungen im Raster gehen verloren.`,crashReload:`Neu laden`},t={auto:`Systemsprache ({{name}})`,en:`English`,ko:`한국어`,zh:`中文(简体)`,ja:`日本語`,de:`Deutsch`,fr:`Français`},n={title:`Sicherheit`,description:`Schutzmaßnahmen gegen versehentlichen Datenverlust. Schreibschutz, Umgebungsfarbe und Transaktionsmodus werden pro Verbindung festgelegt.`,language:`Sprache`,languageHint:`Wird sofort übernommen. „Systemsprache“ folgt der Einstellung Ihres Browsers.`,resetDefaults:`Auf Standardwerte zurücksetzen`,done:`Fertig`,analytics:`Anonyme Nutzungsstatistiken teilen`,analyticsHint:`Sendet anonyme Nutzungsereignisse (Engine, Funktion, Anweisungstyp) an Google Analytics. Niemals SQL-Text, Hostnamen, Tabellen- oder Benutzernamen.`,analyticsUnavailableHint:`In diesem Build nicht aktiv (keine Mess-ID konfiguriert).`,persistHistory:`Abfrageverlauf über Neuladen hinweg behalten`,persistHistoryHint:`Der Anweisungstext wird in diesem Browser gespeichert (Passwort-Literale werden maskiert; die offenen Editor-Tabs selbst bleiben immer erhalten). Aus: Verlauf und Snapshots leben nur bis zum Schließen des Tabs.`},r={settings:{safety:`Sicherheit…`,language:`Sprache`,title:`Einstellungen`,theme:`Design`},help:{gettingStarted:`Erste Schritte`,about:`Über Planche`,title:`Hilfe`,documentation:`Dokumentation`,terms:`Nutzungsbedingungen`},connection:{title:`Verbindung`,connect:`Verbinden`,disconnect:`Verbindung trennen`,readOnly:`Schreibgeschützt`,manualTransactions:`Manuelle Transaktionen`,saveDatabaseFile:`Datenbankdatei speichern`,saveDatabaseFileBlocked:`Datenbankdatei speichern (zuerst -wal laden)`,exit:`Beenden`},query:{title:`Abfrage`,execute:`Ausführen`,executeStatementAtCursor:`Anweisung am Cursor ausführen`,executeWholeScript:`Gesamtes Skript ausführen`,newQueryTab:`Neuer Abfrage-Tab`,findReplace:`Suchen und Ersetzen`,localHistory:`Lokaler Verlauf…`},edit:{title:`Bearbeiten`,undo:`Rückgängig`,redo:`Wiederholen`,cut:`Ausschneiden`,copy:`Kopieren`,paste:`Einfügen`,selectAll:`Alles auswählen`},database:{title:`Datenbank`,create:`Datenbank erstellen`,alter:`Datenbank ändern`,drop:`Datenbank löschen`,copy:`Datenbank kopieren`,compare:`Schemas vergleichen…`,truncate:`Datenbank leeren`,compareData:`Daten vergleichen…`},table:{title:`Tabelle`,create:`Tabelle erstellen`,alter:`Tabelle ändern`,drop:`Tabelle löschen`,rename:`Tabelle umbenennen`,truncate:`Tabelle leeren`,duplicateStructure:`Tabellenstruktur duplizieren`},export:{title:`Export`,csv:`Als CSV herunterladen`,schemaHtml:`Schema als HTML`,links:`Spaltenverknüpfungen exportieren…`,importLinks:`Spaltenverknüpfungen importieren…`},tools:{title:`Werkzeuge`,userManager:`Benutzerverwaltung`,processList:`Prozessliste`,variables:`Variablen`,status:`Status`,flush:`Flush`,quickCommand:`Schnellbefehl`,viewErd:`ERD anzeigen`,scratchpad:`Scratchpad (SQLite im Browser)`,federated:`Verbundabfrage (Join über Verbindungen)…`,federatedTab:`Verbund {{n}}`},messages:{databaseFileSaved:`Datenbankdatei gespeichert`,databaseExported:`Datenbank als Download exportiert`,databaseExportedWithReason:`Datenbank als Download exportiert — {{reason}}`,errorSavingDatabase:`Fehler beim Speichern der Datenbank: {{message}}`,noDatabaseSelected:`Keine Datenbank ausgewählt`,noTableSelected:`Keine Tabelle ausgewählt`,noActiveConnection:`Keine aktive Verbindung`,databaseDropped:`Datenbank „{{database}}“ wurde gelöscht`,errorDroppingDatabase:`Fehler beim Löschen der Datenbank: {{message}}`,noTablesInDatabase:`Keine Tabellen in der Datenbank „{{database}}“ gefunden`,databaseTruncated_one:`{{count}} Tabelle in „{{database}}“ wurde geleert`,databaseTruncated_other:`Alle {{count}} Tabellen in „{{database}}“ wurden geleert`,errorTruncatingDatabase:`Fehler beim Leeren der Datenbank: {{message}}`,tableDropped:`Tabelle „{{table}}“ wurde gelöscht`,errorDroppingTable:`Fehler beim Löschen der Tabelle: {{message}}`,tableTruncated:`Tabelle „{{table}}“ wurde geleert`,errorTruncatingTable:`Fehler beim Leeren der Tabelle: {{message}}`,renameTablePrompt:`Tabelle „{{table}}“ umbenennen in:`,tableRenamed:`Tabelle „{{table}}“ wurde in „{{newName}}“ umbenannt`,errorRenamingTable:`Fehler beim Umbenennen der Tabelle: {{message}}`,truncateDatabaseTitle:`Alle Tabellen in "{{name}}" leeren?`,truncateDatabaseDescription:`Alle Zeilen in {{count}} Tabelle(n) von "{{name}}" werden gelöscht. Die Tabellenstrukturen bleiben erhalten. Dies kann nicht rückgängig gemacht werden.`,truncateDatabaseConfirm:`Alle Tabellen leeren`,renameTableTitle:`Tabelle umbenennen`,renameTableConfirm:`Umbenennen`,noLinksToExport:`Keine Spaltenverknüpfungen zum Exportieren.`,linksExported:`{{count}} Spaltenverknüpfungen exportiert.`,linksImported:`{{count}} Spaltenverknüpfungen importiert.`,linksImportedPartial:`{{count}} Spaltenverknüpfungen importiert; kein passendes Profil für: {{profiles}}`,linksImportFailed:`Spaltenverknüpfungen konnten nicht importiert werden: {{reason}}`}},i={title:`Über Planche`,tagline:`Ein Datenbank-Client für MySQL, MariaDB, PostgreSQL und SQLite.`,version:`Version`,website:`Website`,disclaimer:`Planche wird „wie besehen“ und ohne jegliche Gewährleistung bereitgestellt. Die Autoren haften nicht für Schäden oder Datenverluste, die aus der Nutzung entstehen. Sichern Sie Ihre Daten, bevor Sie destruktive Anweisungen ausführen.`,rights:`Alle Rechte vorbehalten.`},a=JSON.parse('{"dialog":{"title":"Mit Datenbank verbinden","firstQueryTab":"Abfrage 1","colHostName":"Name","colTarget":"Ziel","colDbms":"DBMS","noSaved":"Keine gespeicherten Verbindungen","unnamed":"(unbenannt)","pickOnConnect":"(beim Verbinden auswählen)","noFile":"(keine Datei)","selectPrompt":"Wählen Sie eine Verbindung aus oder legen Sie eine neue an","addNew":"Neu hinzufügen","delete":"Löschen","testConnection":"Verbindung testen","connect":"Verbinden","close":"Schließen","unknownError":"Unbekannter Fehler","browserTestHint":"SQLite-Verbindungen im Browser öffnen beim Klick auf „Verbinden“ eine lokale Datei.","testSuccess":"Verbindung erfolgreich","restoredUnsaved":"{{file}}: ungespeicherte Änderungen aus der zwischengespeicherten Kopie wiederhergestellt","restoredUnsavedDiskChanged":"{{file}}: ungespeicherte Änderungen aus der zwischengespeicherten Kopie wiederhergestellt — Hinweis: Die Datei auf dem Datenträger hat sich seitdem geändert","walPending":"{{file}} ist im WAL-Modus: Aktuelle Änderungen befinden sich möglicherweise noch in der -wal-Datei. Verwenden Sie oben „-wal-Datei laden“, um sie einzubeziehen.","walApplied":"{{file}} wurde mit den Änderungen aus der -wal-Datei geöffnet","connectFailedTitle":"Verbindung fehlgeschlagen","testSuccessDescription":"Der Server hat die Zugangsdaten akzeptiert.","testFailedTitle":"Verbindungstest fehlgeschlagen","privacy":"Nichts, was Sie hier eingeben, wird an planche.dev-Server gesendet oder dort gespeichert. Verbindungsprofile liegen ausschließlich im lokalen Speicher dieses Browsers; Abfragen gehen direkt vom lokalen Agenten an Ihre Datenbank.","hostKeyTitle":"Unbekannter SSH-Hostschlüssel","hostKeyDescription":"{{host}}:{{port}} hat einen {{type}}-Schlüssel mit dem Fingerabdruck {{fingerprint}} vorgelegt. Vergleichen Sie ihn mit dem Fingerabdruck Ihres Serveradministrators; ein falscher Schlüssel lässt einen Angreifer Ihren Verkehr mitlesen.","hostKeyAccept":"Diesem Host vertrauen","gatewayTitle":"Gateway-Profile","gatewayAdd":"Hinzufügen","gatewayAdded":"Gateway-Profil {{name}} hinzugefügt.","gatewayReadOnly":"schreibgeschützt","gatewayWritable":"beschreibbar","gatewayProfileHint":"Diese Verbindung nutzt das vom Gateway gehaltene Profil „{{name}}“; hier gibt es nichts einzustellen.","gatewayLoadFailed":"Gateway-Profile konnten nicht geladen werden: {{error}}"},"form":{"hostName":"Name","hostNamePlaceholder":"Meine Verbindung","dataSource":"Datenquelle","openVia":"Öffnen über","viaBrowser":"Browser (lokale Datei)","viaAgent":"Lokaler Agent","viaBrowserHint":"Keine Installation nötig. Am besten für Dateien, die kein anderes Programm verwendet: Der Browser arbeitet auf einer Kopie im Arbeitsspeicher und kann die Datei nicht sperren. Änderungen, die währenddessen anderswo vorgenommen werden, bleiben unsichtbar und werden beim Speichern überschrieben.","viaAgentHint":"Öffnet die Datei mit SQLite selbst über npx planche — mit korrektem Locking und WAL, sicher neben anderen Programmen, die dieselbe Datenbank verwenden.","databaseFile":"Datenbankdatei","changeFile":"Datei ändern","filePickerHint":"Beim Klick auf „Verbinden“ öffnet sich eine Dateiauswahl (Tipp: ⌘⇧. zeigt versteckte Dateien, mit ⌘⇧G können Sie einen Pfad eingeben).","fileRememberedHint":"Die gewählte Datei wird gemerkt (Chromium), sodass beim erneuten Verbinden nur die Berechtigung abgefragt wird. Verwenden Sie Verbindung > Datenbankdatei speichern, um Änderungen zurückzuschreiben.","authToken":"Auth-Token","authTokenPlaceholder":"Leer lassen, um das Token des gekoppelten Agents zu verwenden","filePathPlaceholder":"/pfad/zur/datenbank.sqlite oder :memory:","createIfMissing":"Erstellen, falls nicht vorhanden","createIfMissingHint":"Der Pfad wird auf dem Host des Tunneling-Servers aufgelöst","host":"Host","port":"Port","database":"Datenbank","serviceName":"Dienstname","user":"Benutzer","password":"Passwort","savePassword":"Passwort speichern","savePasswordHint":"Aus: Das Passwort wird nur für diese Browsersitzung behalten und nie auf den Datenträger geschrieben.","charset":"Zeichensatz","autoConnection":"Automatisch verbinden","safety":"Sicherheit","environment":"Umgebung","environmentHint":"färbt Tab und Arbeitsbereich ein","readOnly":"Schreibgeschützt","readOnlyHint":"Anweisungen ablehnen, die Daten oder Schema ändern","transactions":"Transaktionen","txAuto":"Auto-Commit","txManual":"Manuell — Commit / Rollback über die Symbolleiste","ssh":"SSH","sshTunnel":"SSH-Tunnel","sshTunnelHint":"Datenbank über einen SSH-Sprunghost erreichen (der lokale Agent öffnet den Tunnel)","sshHost":"SSH-Host","sshPort":"SSH-Port","sshUser":"SSH-Benutzer","sshAuth":"SSH-Auth","sshAuthKey":"Privater Schlüssel","sshAuthPassword":"Passwort","sshAuthAgent":"ssh-agent","sshAuthAgentHint":"Verwendet die im ssh-agent des Rechners geladenen Schlüssel, auf dem npx planche läuft (SSH_AUTH_SOCK).","sshPassword":"SSH-Passwort","sshKey":"Privater Schlüssel","sshKeyPick":"Schlüsseldatei wählen…","sshKeyLoaded":"Schlüssel geladen","sshKeyHint":"Leer lassen, um das IdentityFile aus ~/.ssh/config (oder ~/.ssh/id_*) auf dem Rechner des Agents zu verwenden; ein gewählter Schlüssel wird mit diesem Profil gespeichert","sshPassphrase":"Passphrase","sshPassphrasePlaceholder":"Leer lassen, wenn der Schlüssel keine hat","sshSecretsHint":"SSH-Passwort, privater Schlüssel und Passphrase folgen der Einstellung „Passwort speichern“ oben. Unbekannte Hostschlüssel werden vor der ersten Verbindung zur Prüfung angezeigt und in ~/.planche/known_hosts auf dem Rechner des Agenten gespeichert.","sshHostPlaceholder":"bastion.example.com oder ein Host-Alias aus ~/.ssh/config","sshUserPlaceholder":"Leer lassen, um ~/.ssh/config zu verwenden","sshTargetHint":"Datenbank-Host und -Port werden auf dem Sprunghost aufgelöst — die echte Adresse der Datenbank (z. B. den RDS-Endpunkt) angeben, nicht localhost oder eine lokale Portweiterleitung.","connectionString":"Verbindungs-URI","connectionStringApplied":"In die Felder unten übernommen. Die URI selbst wird nicht gespeichert, nur die Felder.","connectionStringInvalid":"Keine PostgreSQL-URI (erwartet postgresql://user:password@host/database).","neonHint":"URI aus der Neon-Konsole (Connect > Connection string) einfügen; die Felder unten werden daraus befüllt.","supabaseHint":"URI aus Supabase (Connect > Session pooler oder Direct connection) einfügen; die Felder unten werden daraus befüllt.","supabasePoolerWarning":"Port 6543 ist der Pooler im Transaktionsmodus: Jede Anweisung kann auf einem anderen Backend laufen, daher funktionieren Schemawechsel, temporäre Tabellen, Prepared Statements und manuelle Transaktionen nicht. Verwenden Sie den Session-Pooler (Port 5432) oder die Direktverbindung.","managedTlsHint":"Dieser Dienst wird immer über TLS erreicht; die Verbindung geht direkt vom lokalen Agenten zum Dienst (kein SSH-Tunnel).","d1AccountId":"Account ID","d1DatabaseId":"Database ID","d1ApiToken":"API-Token","d1Hint":"Account ID: Cloudflare-Dashboard, rechts auf der Kontostartseite. Database ID: Storage & Databases > D1 > Ihre Datenbank. Token: My Profile > API Tokens > Create Token mit der Berechtigung \\"D1 Edit\\" (oder \\"D1 Read\\" für Nur-Lesen). Der lokale Agent ruft damit die Cloudflare-API auf.","d1LimitsHint":"D1 führt jede Anfrage einzeln aus und committet automatisch, daher gibt es keine manuellen Transaktionen; die Datenbank erscheint als einziges Schema \\"main\\".","tls":"TLS","tlsEnable":"Verbindung verschlüsseln","tlsVerify":"Serverzertifikat prüfen","tlsVerifyHint":"Aus: selbstsignierte Zertifikate werden akzeptiert (verschlüsselt, aber der Server ist nicht authentifiziert). Über einen SSH-Tunnel nicht verfügbar."},"agent":{"copy":"Kopieren","looking":"Suche nach dem Planche-Agent…","online":"Agent <b>v{{version}}</b> läuft unter <mono>{{url}}</mono>","outdated":"Agent v{{version}} spricht Protokoll {{protocol}}, diese App benötigt jedoch ein neueres. Starten Sie ihn neu mit <cmd/>","unauthorized":"Agent <b>v{{version}}</b> läuft unter <mono>{{url}}</mono>, ist aber nicht mit dieser App gekoppelt (das Token ändert sich bei jedem Start). Öffnen Sie den im Terminal des Agents ausgegebenen Link oder fügen Sie das Token unter „Konfigurieren“ ein.","offline":"Kein Agent unter <mono>{{url}}</mono>. Führen Sie <cmd/> in einem Terminal aus — es öffnet diese App bereits gekoppelt.","close":"Schließen","configure":"Konfigurieren","checkAgain":"Erneut prüfen","urlLabel":"Agent-URL","urlPlaceholder":"http://127.0.0.1:8888 (Standard)","tokenLabel":"Token","tokenPlaceholder":"Wird vom Agent ausgegeben","reset":"Zurücksetzen","save":"Speichern","remoteWarning":"Dieser Agent läuft nicht auf Ihrem Rechner ({{host}}): Jede Verbindung schickt ihre Passwörter und SSH-Schlüssel dorthin.","remoteRefusedTitle":"Entfernter Agent nicht erlaubt","remoteRefused":"Der Agent muss auf diesem Rechner laufen (127.0.0.1 oder localhost). Für einen Agenten auf einer anderen Maschine leiten Sie den Port mit `ssh -L 8888:127.0.0.1:8888 user@host` weiter und lassen die URL auf http://127.0.0.1:8888.","gateway":"Gateway „{{name}}“: {{count}} serverseitige Profile. Zugangsdaten bleiben auf dem Gateway; wählen Sie unten ein Profil."},"tab":{"noConnections":"Keine Verbindungen geöffnet. Klicken Sie auf „Verbinden“, um zu beginnen.","theSqliteFile":"die SQLite-Datei","reopened":"{{file}} erneut geöffnet","reopenFailed":"Datei konnte nicht erneut geöffnet werden: {{message}}","reopenPrompt":"Der Browser benötigt erneut Ihre Berechtigung, um <b>{{file}}</b> zu lesen.","reopenFile":"Datei erneut öffnen","closeConnection":"Verbindung schließen","reconnected":"{{file}} erneut verbunden","accessNotGranted":"Dateizugriff wurde nicht gewährt; beim Speichern wird stattdessen ein Download exportiert.","detachedPrompt":"Sie arbeiten auf einer zwischengespeicherten Kopie von <b>{{file}}</b>. Verbinden Sie die Datei erneut, um Änderungen direkt zu speichern.","reconnectFile":"Datei erneut verbinden","detachedHide":"Ausblenden (beim Speichern wird bei Bedarf nach der Datei gefragt)","walFramesApplied_one":"{{count}} WAL-Frame aus {{file}}-wal übernommen","walFramesApplied_other":"{{count}} WAL-Frames aus {{file}}-wal übernommen","walNoChanges":"Die -wal-Datei enthielt keine bestätigten Änderungen","walLoadFailed":"-wal-Datei konnte nicht geladen werden: {{message}}","walPrompt":"<b>{{file}}</b> ist im WAL-Modus: Möglicherweise werden die neuesten Daten erst angezeigt, wenn die Datei <mono>{{file}}-wal</mono> geladen wurde; bis dahin ist das Speichern deaktiviert. Falls keine solche Datei daneben existiert (die Datenbank wurde sauber geschlossen), bestätigen Sie das stattdessen. Falls ein anderes Programm diese Datenbank noch verwendet, öffnen Sie sie stattdessen über den lokalen Agent (<mono>npx planche</mono>): Der Browser kann die Datei nicht sicher gemeinsam nutzen.","loadWal":"-wal-Datei laden","noWalHint":"Ich habe nachgesehen: Es gibt keine -wal-Datei neben der Datenbank","noWal":"Keine -wal-Datei","dismiss":"Schließen","walHide":"Ausblenden (Speichern bleibt deaktiviert)","readOnlyBadge":"schreibgeschützt"}}'),o={connect:`Verbinden (Alt+N)`,disconnect:`Verbindung trennen`,newQueryTab:`Neuer Abfrage-Tab (Alt+T)`,execute:`Ausführen (F9)`,executeStatement:`Anweisung am Cursor / Auswahl ausführen (Ctrl+Enter)`,commit:`Commit`,commitHint:`Offene Transaktion bestätigen (Commit)`,noOpenTransaction:`Keine offene Transaktion`,rollback:`Rollback`,rollbackHint:`Offene Transaktion verwerfen (Rollback)`,readOnlyBadge:`schreibgeschützt`,readOnlyHint:`Diese Verbindung lehnt Anweisungen ab, die Daten oder Schema ändern`,userManager:`Benutzerverwaltung (Alt+U)`,quickCommand:`Schnellbefehl`,processList:`Prozessliste`,variables:`Variablen`,status:`Status`,flush:`Flush`,fullscreen:`Vollbild`},s={readOnly:`schreibgeschützt`,txOpen:`Transaktion offen`,manualTx:`manuelle Transaktionen`},c={title:`Schnellbefehl`,description:`Suchen Sie einen auszuführenden Befehl...`,inputPlaceholder:`Befehl eingeben oder suchen...`,empty:`Keine Befehle gefunden.`,groups:{connection:`Verbindung`,query:`Abfrage`,database:`Datenbank`,table:`Tabelle`,tools:`Werkzeuge`},commands:{connect:`Verbinden`,disconnect:`Verbindung trennen`,executeQuery:`Abfrage ausführen`,newQueryTab:`Neuer Abfrage-Tab`,createDatabase:`Datenbank erstellen`,dropDatabase:`Datenbank löschen`,createTable:`Tabelle erstellen`,alterTable:`Tabelle ändern`,dropTable:`Tabelle löschen`,processList:`Prozessliste`,serverVariables:`Servervariablen`,serverStatus:`Serverstatus`,flush:`Flush`,userManager:`Benutzerverwaltung`}},l={title:`Willkommen bei Planche`,intro:`Ein SQL-Client, der in Ihrem Browser läuft. Ihre Datenbanken werden über einen kleinen Agent auf Ihrem Rechner erreicht, sodass Zugangsdaten und Daten Ihren Computer nie verlassen.`,skip:`Überspringen`,skipTitle:`Diesen Bildschirm ausblenden (Hilfe > Erste Schritte bringt ihn zurück)`,copy:`Kopieren`,copied:`Kopiert`,sampleOpenFailed:`Die Beispieldatenbank konnte nicht geöffnet werden: {{message}}`,steps:{agent:{title:`Lokalen Agent starten`,body:`Führen Sie dies einmal in einem Terminal aus (Node.js 22 oder neuer). Es startet den Agent und koppelt ihn mit dieser Seite.`},connection:{title:`Verbindung hinzufügen`,body:`Wählen Sie Ihre Datenbank, um das Verbindungsformular mit passenden Voreinstellungen zu öffnen.`},sample:{title:`Keine Datenbank zur Hand? Probieren Sie das Beispiel`,body:`Laden Sie eine Beispieldatenbank eines Webshops (24 Tabellen, ca. 50.000 Zeilen, Views und Trigger) in den Browser, um Editor, Tabellenansicht und Schemabaum auszuprobieren.`,loading:`Beispiel wird geladen…`,button:`Beispieldatenbank ausprobieren`}},terms:{title:`Bevor Sie beginnen`,local:`Alles läuft lokal: Zugangsdaten, Abfragen und Ergebnisse bleiben auf Ihrem Rechner und werden nie an uns gesendet.`,asIs:`Planche wird ohne Gewährleistung bereitgestellt. Die Schutzmechanismen (Bestätigung destruktiver Befehle, Nur-Lese-Modus) sind Hilfen, keine Garantien.`,dataLoss:`Sie sind für jede über Planche ausgeführte Anweisung verantwortlich. Sichern Sie Ihre Daten, bevor Sie etwas Destruktives ausführen.`,agree:`Ich habe die Nutzungsbedingungen gelesen und stimme ihnen zu.`,accepted:`Sie haben die Nutzungsbedingungen akzeptiert.`,readFull:`Vollständige Bedingungen lesen`}},u={treeLabel:`Schema`,unreachableHint:`Nicht die Datenbank, an die diese Verbindung gebunden ist; legen Sie ein Profil dafür an, um sie zu durchsuchen`,objectType:{table:`Tabelle`,view:`View`,procedure:`Prozedur`,function:`Funktion`,trigger:`Trigger`,event:`Event`},menu:{showCreate:`CREATE-Anweisung anzeigen ({{type}})`,alter:`{{type}} ändern`,drop:`{{type}} löschen`,create:`{{type}} erstellen`,refresh:`Aktualisieren`,unreachable:`Verbinden Sie sich mit einem an diese Datenbank gebundenen Profil, um sie zu durchsuchen`,openDatabase:`Datenbank öffnen`,createSchema:`Schema erstellen`,createTable:`Tabelle erstellen`,dropDatabase:`Datenbank löschen`,openSchema:`Schema öffnen`,dropSchema:`Schema löschen`,newQueryTab:`Neuer Abfrage-Tab`,generateSql:`SQL erzeugen`,openTable:`Tabelle öffnen`,alterTable:`Tabelle ändern`,showCreateTable:`CREATE TABLE anzeigen`,duplicateStructure:`Struktur duplizieren`,copyTable:`Tabelle kopieren nach…`,compare:`{{type}} vergleichen…`,truncateTable:`Tabelle leeren`,dropTable:`Tabelle löschen`,exportCsv:`Als CSV exportieren`,openView:`View öffnen`,alterView:`View ändern`,showCreateView:`CREATE VIEW anzeigen`,dropView:`View löschen`,compareData:`Daten vergleichen…`},actions:{createStatementUnavailable:`-- CREATE-Anweisung für {{type}} {{name}} konnte nicht abgerufen werden`,getCreateFailed:`CREATE {{type}} konnte nicht abgerufen werden: {{message}}`,createTabTitle:`{{type}} erstellen`,createSchemaTabTitle:`Schema erstellen`,generateSqlFailed:`SQL konnte nicht erzeugt werden: {{message}}`,dropTableTitle:`Tabelle „{{name}}“ löschen?`,dropTableDescription:`Dies löscht die Tabelle und alle darin enthaltenen Zeilen dauerhaft{{from}}. Dies kann nicht rückgängig gemacht werden.`,dropTableConfirm:`Tabelle löschen`,dropObjectTitle:`{{type}} „{{name}}“ löschen?`,dropObjectDescription:`Die Definition von {{type}} wird entfernt{{from}}. Dies kann nicht rückgängig gemacht werden.`,dropObjectConfirm:`{{type}} löschen`,fromDatabase:` aus der Datenbank „{{database}}“`,dropped:`{{type}} {{name}} gelöscht`,dropFailed:`{{type}} konnte nicht gelöscht werden`,dropDatabaseTitle:`Datenbank „{{name}}“ löschen?`,dropDatabaseDescription:`Dies löscht die Datenbank mit allen Tabellen und Daten dauerhaft. Dies kann nicht rückgängig gemacht werden.`,dropDatabaseConfirm:`Datenbank löschen`,droppedDatabase:`Datenbank {{name}} gelöscht`,dropDatabaseFailed:`Datenbank konnte nicht gelöscht werden`,dropSchemaTitle:`Schema „{{name}}“ löschen?`,dropSchemaDescription:`Dies löscht das Schema mit allen Tabellen und Daten dauerhaft. Dies kann nicht rückgängig gemacht werden.`,dropSchemaConfirm:`Schema löschen`,droppedSchema:`Schema {{name}} gelöscht`,dropSchemaFailed:`Schema konnte nicht gelöscht werden`,truncateTitle:`Tabelle „{{name}}“ leeren?`,truncateDescription:`Alle Zeilen in „{{name}}“ werden gelöscht. Die Tabellenstruktur bleibt erhalten. Dies kann nicht rückgängig gemacht werden.`,truncateConfirm:`Tabelle leeren`,truncated:`{{name}} geleert`,truncateFailed:`Leeren fehlgeschlagen`},tree:{loadDatabasesFailed:`Datenbanken konnten nicht geladen werden: {{message}}`}},d={editor:{destructiveMarker:`Destruktiv: {{action}} {{names}}`,readOnlyMarker:`Die Verbindung ist schreibgeschützt; diese Anweisung ändert Daten oder Schema`,actionExecute:`Ausführen (gemäß Einstellungen)`,actionExecuteStatement:`Anweisung am Cursor / Auswahl ausführen`,actionExecuteScript:`Gesamtes Skript ausführen`},tabs:{newQuery:`Neue Abfrage`,queryTitle:`Abfrage {{n}}`,erdViewer:`ERD-Viewer`,close:`Schließen`,closeOthers:`Andere schließen`,closeLeft:`Tabs links schließen`,closeRight:`Tabs rechts schließen`,closeAll:`Alle schließen`},executor:{noActiveConnection:`Keine aktive Verbindung`,uncommittedTitle:`Nicht bestätigte Transaktion`,uncommittedDescription:`Diese Verbindung hat eine offene Transaktion. Beim Trennen werden ihre Änderungen zurückgerollt.`,uncommittedConfirm:`Rollback und trennen`,unsavedTitle:`Ungespeicherte Änderungen`,unsavedDescription:`{{file}} enthält Änderungen, die nicht in die Datei gespeichert wurden. Beim Trennen gehen sie verloren (verwenden Sie zuerst Verbindung > Datenbankdatei speichern, um sie zu behalten).`,theSqliteDatabase:`Die SQLite-Datenbank`,unsavedConfirm:`Verwerfen und trennen`}},f={tabs:{message:`Meldung`,info:`Info`,history:`Verlauf`,result:`Ergebnis`,resultN:`Ergebnis {{n}}`},message:{executing:`Abfrage wird ausgeführt...`,error:`Fehler: {{message}}`,total:` (Gesamt: {{ms}} ms)`,ready:`Bereit.`,log:`Ausführungsprotokoll`,statementN:`Anweisung {{n}}`,limitedBadge:`Limit erreicht`,insertId:`Insert-ID {{id}}`,failed:`Fehlgeschlagen`,failedStatement:`Fehlgeschlagene Anweisung`,summary:`{{ok}} erfolgreich · {{failed}} fehlgeschlagen · {{ms}} gesamt`,copy:`Kopieren`,copied:`Kopiert`,showSql:`SQL anzeigen`,hideSql:`SQL ausblenden`},info:{empty:`Keine Abfrageinformationen verfügbar.`,resultN:`Ergebnis {{n}}`,metadata:`Abfrage-Metadaten`,executionTime:`Ausführungszeit`,notAvailable:`k. A.`,affectedRows:`Betroffene Zeilen`,fields:`Felder`,fieldDetails:`Felddetails`,colName:`Name`,colType:`Typ`,colTable:`Tabelle`,resultSets:`Ergebnismengen`,rowsReturned:`Zurückgegebene Zeilen`,insertId:`Letzte Insert-ID`,lastQuery:`Zuletzt ausgeführte Anweisung`,copy:`Kopieren`,copied:`Kopiert`,colOrigin:`Ursprung`,primaryKey:`Primärschlüssel`,rowsAndFields:`{{rows}} Zeilen × {{fields}} Felder`,noFields:`Diese Anweisung hat keine Spalten zurückgegeben.`},rowForm:{colColumn:`Spalte`,colValue:`Wert`,insertTitle:`Zeile einfügen`,editTitle:`Zeile bearbeiten`,loading:`Spalten werden geladen...`,preview:`Anweisung`,nothingToWrite:`Nichts zu schreiben`,insert:`Einfügen`,update:`Aktualisieren`,stageInsert:`Als ausstehende Zeile hinzufügen`,stageEdit:`In Raster übernehmen`,stageHint:`Werte nur ins Raster stellen, ohne etwas auszuführen; später mit den anderen Änderungen committen.`,inserted:`Zeile in {{table}} eingefügt`,updated:`Zeile in {{table}} aktualisiert`,confirmInsertTitle:`Zeile in {{table}} einfügen?`,confirmUpdateTitle:`Zeile in {{table}} aktualisieren?`,inTransaction:`Läuft in der offenen Transaktion`,pickDate:`Datum wählen`,now:`Jetzt`,formatJson:`Formatieren`,binaryUnsupported:`Binärspalten können hier nicht bearbeitet werden; NULL/DEFAULT lassen oder per SQL setzen.`,generateUuid:`UUID erzeugen`,defaultValue:`Standardwert`,clickToChange:`Zum Ändern klicken`,empty:`(leer)`,autoHint:`Vom Server erzeugt`,mode:{keep:`Behalten`,auto:`Auto`,value:`Wert`},invalid:{integer:`Ganze Zahl eingeben`,unsigned:`Diese Spalte akzeptiert keine negativen Zahlen`,number:`Zahl eingeben`,json:`Ungültiges JSON`,date:`Format YYYY-MM-DD verwenden`,datetime:`Format YYYY-MM-DD HH:MM:SS verwenden`,time:`Format HH:MM:SS verwenden`,length:`Höchstens {{max}} Zeichen`}},history:{copied:`In die Zwischenablage kopiert`,searchPlaceholder:`Verlauf durchsuchen...`,all:`Alle`,success:`Erfolgreich`,failed:`Fehlgeschlagen`,thisTab:`Nur dieser Tab`,noMatch:`Keine passenden Einträge.`,count:`{{count}} Einträge`,clear:`Leeren`,clearTitle:`Abfrageverlauf leeren?`,clearDescription:`Alle {{count}} Einträge dieser Verbindung werden entfernt. Dies kann nicht rückgängig gemacht werden.`,clearConfirm:`Verlauf leeren`,insert:`In Editor einfügen`,inserted:`In den Editor eingefügt`,copy:`Kopieren`,rows:`{{count}} Zeilen`,affected:`{{count}} betroffen`,today:`Heute`,yesterday:`Gestern`,empty:`Kein Abfrageverlauf.`},json:{arrayLength:`Array[{{count}}]`,keys_one:`{{count}} Schlüssel`,keys_other:`{{count}} Schlüssel`,invalid:`Ungültiges JSON`,clickToView:`Klicken, um JSON anzuzeigen`,expandAll:`Alle aufklappen`,collapseAll:`Alle einklappen`,edit:`Bearbeiten`,view:`Anzeigen`,copied:`Kopiert`,copy:`Kopieren`,shortcutHint:`{{mod}}+Enter zum Speichern · Esc zum Abbrechen`,cancel:`Abbrechen`,save:`Speichern`},grid:{readOnlyConnection:`Schreibgeschützte Verbindung`,readOnlyWal:`Schreibgeschützt: -wal-Datei nicht geladen`,readOnlyNoPk:`Schreibgeschützt: Tabelle hat keinen Primärschlüssel`,commitTitle:`{{count}} Änderung(en) an {{table}} übernehmen?`,commitDescription:`Die folgenden Anweisungen werden ausgeführt.`,commitConfirm:`Übernehmen`,rowPrefix:`Zeile {{row}}:`,cancelled:`abgebrochen`,commitFailed:`Übernehmen fehlgeschlagen: {{message}}`,executedInTransaction:`{{count}} Änderung(en) innerhalb der offenen Transaktion ausgeführt — klicken Sie in der Symbolleiste auf „Commit“, um sie dauerhaft zu machen (Neuladen rollt sie zurück)`,committed:`{{count}} Änderung(en) an {{table}} übernommen`,noData:`Keine Daten zum Anzeigen.`,commit:`Übernehmen`,discard:`Verwerfen`,addRow:`Zeile hinzufügen`,removeNewRow:`Diese neue Zeile verwerfen`,addRowForm:`Per Formular hinzufügen`,addRowFormHint:`Formular mit einem Feld je Spalte öffnen (als INSERT committet)`,editRowForm:`Diese Zeile im Formular bearbeiten`,addRowHint:`Neue Zeile hinzufügen (wird als INSERT übernommen)`,delete:`Löschen`,deleteCount:`Löschen ({{count}})`,deleteHint:`Ausgewählte Zeilen löschen (wird als DELETE übernommen). Wählen Sie Zeilen über die Zeilennummern-Spalte aus.`,field:`Feld`,searchPlaceholder:`Suchen...`,orderBy:`Sortieren nach`,none:`Keine`,refresh:`Aktualisieren`,dismiss:`Schließen`,clearSelection:`Auswahl aufheben`,columns:`Spalten`,showAllColumns:`Alle anzeigen`,hideAllColumns:`Alle ausblenden`,selectAll:`Alle Zeilen auswählen`,emptyTable:`Diese Tabelle enthält keine Zeilen.`,noRows:`Keine Zeilen zurückgegeben.`,addARow:`Zeile hinzufügen`,markedForDeletion:`Zum Löschen markiert — klicken, um wiederherzustellen`,newRow:`Neue Zeile`,clickToSelect:`Klicken zum Auswählen; Shift/Ctrl für Mehrfachauswahl`,rows:`Zeilen: {{count}}`,rowsWithNew:`Zeilen: {{count}} (+{{added}})`,sortedBy:`Sortiert nach: {{column}} {{direction}}`,selected:`{{count}} ausgewählt`,cellsModified:`{{count}} Zelle(n) geändert`,newCount:`{{count}} neu`,toDelete:`{{count}} zu löschen`,searchMode:`Vergleichsart`,contains:`enthält`,equals:`gleich`,followLink:`{{table}} öffnen, wo {{column}} = Wert`,linkColumn:`„{{column}}“ mit anderer Tabelle verknüpfen…`,editLink:`Verknüpfung von „{{column}}“ bearbeiten…`,removeLink:`Verknüpfung entfernen`,copyValue:`Wert kopieren`,filterByValue:`Filter: {{column}} = dieser Wert`,clearFilter:`Filter aufheben`,copyColumnName:`Spaltennamen kopieren`,editCell:`Zelle bearbeiten`,setNull:`Auf NULL setzen`,setEmpty:`Auf leeren String setzen`,restoreRow:`Zeile wiederherstellen`,hideColumn:`Spalte „{{column}}“ ausblenden`,copyRowsTsv_one:`Zeile als TSV kopieren (mit Kopfzeile)`,copyRowsTsv_other:`{{count}} Zeilen als TSV kopieren (mit Kopfzeile)`,copyRowsCsv_one:`Zeile als CSV kopieren`,copyRowsCsv_other:`{{count}} Zeilen als CSV kopieren`,copyRowsJson_one:`Zeile als JSON kopieren`,copyRowsJson_other:`{{count}} Zeilen als JSON kopieren`,copyRowsInsert_one:`Zeile als INSERT kopieren`,copyRowsInsert_other:`{{count}} Zeilen als INSERT kopieren`,deleteRowsPending_one:`Zeile löschen (bis Commit ausstehend)`,deleteRowsPending_other:`{{count}} Zeilen löschen (bis Commit ausstehend)`,sendRowsToScratchpad_one:`Zeile ins Scratchpad senden`,sendRowsToScratchpad_other:`{{count}} Zeilen ins Scratchpad senden`,sendAllToScratchpad:`Alle {{count}} geladenen Zeilen ins Scratchpad senden`,sentToScratchpad:`{{count}} Zeilen in die Scratchpad-Tabelle {{table}} kopiert.`,changesSince:`Seit letztem Laden: {{changed}} geändert · {{added}} neu · {{gone}} weg`,changesToggle:`Hervorhebung der Änderungen seit dem letzten Laden umschalten`,changesDismiss:`Diese Änderungen verwerfen`,previousValue:`Vorheriger Wert: {{value}}`},link:{title:`Spalte mit anderer Tabelle verknüpfen`,source:`Spalte`,hint:`Die Werte dieser Spalte werden zu Links: Ein Klick öffnet die Zieltabelle gefiltert auf die passenden Zeilen. Echte Fremdschlüssel werden automatisch verknüpft.`,targetDatabase:`Zieldatenbank`,targetTable:`Zieltabelle`,targetColumn:`Zielspalte`,pickTable:`Tabelle wählen`,pickColumn:`Spalte wählen`,remove:`Verknüpfung entfernen`,cancel:`Abbrechen`,save:`Verknüpfung speichern`,targetConnection:`Zielverbindung`,targetNotConnected:`Die verknüpfte Verbindung ist nicht geöffnet. Bitte zuerst verbinden.`}},p={defaultDescription:`Diese Aktion kann nicht rückgängig gemacht werden.`,typeToConfirm:`Geben Sie <name/> zur Bestätigung ein`,cancel:`Abbrechen`,confirm:`Bestätigen`,ok:`OK`},m={dialog:{createTitle:`Tabelle erstellen`,alterTitle:`Tabelle ändern`,duplicateTitle:`Tabellenstruktur duplizieren`,create:`Erstellen`,alter:`Ändern`,cancel:`Abbrechen`,tableName:`Tabellenname`,tableNamePlaceholder:`Tabellennamen eingeben...`,loading:`Tabellenschema wird geladen...`,tabSchema:`Schema`,tabIndexes:`Indizes`,tabProperties:`Eigenschaften`},schema:{colField:`Feldname`,colType:`Datentyp`,colLength:`Länge`,colDefault:`Standard`,colPk:`PK`,colNotNull:`Not Null`,colUnsigned:`Unsigned`,colAutoIncrement:`Auto Incr`,colZerofill:`Zerofill`,colComment:`Kommentar`,empty:`Keine Spalten definiert. Klicken Sie auf „Spalte hinzufügen“, um eine anzulegen.`,add:`Spalte hinzufügen`,remove:`Spalte entfernen`},indexes:{colName:`Indexname`,colType:`Indextyp`,colColumns:`Spalten`,empty:`Keine Indizes definiert. Klicken Sie auf „Index hinzufügen“, um einen anzulegen.`,add:`Index hinzufügen`,remove:`Index entfernen`},index:{addTitle:`Index hinzufügen`,editTitle:`Index bearbeiten`,name:`Indexname`,namePlaceholder:`Indexnamen eingeben`,type:`Indextyp`,columns:`Spalten`,noColumns:`Keine Spalten verfügbar. Definieren Sie zuerst Spalten im Tab „Schema“.`,unnamed:`(unbenannt)`,cancel:`Abbrechen`,ok:`OK`},properties:{engine:`Engine`,charset:`Zeichensatz`,collation:`Kollation`,autoIncrement:`Auto Increment`,autoIncrementPlaceholder:`Standard`,comment:`Kommentar`},info:{engine:`Engine`,version:`Version`,rowFormat:`Zeilenformat`,rows:`Zeilen`,avgRowLength:`Ø Zeilenlänge`,dataLength:`Datengröße`,createTime:`Erstellt am`,updateTime:`Aktualisiert am`,collation:`Kollation`,comment:`Kommentar`},copy:{title:`Tabelle kopieren`,source:`Quelle`,targetConnection:`Zielverbindung`,targetDatabase:`Zieldatenbank`,targetTable:`Name der Zieltabelle`,what:`Kopieren`,structureAndData:`Struktur & Daten`,structureOnly:`Nur Struktur`,ifExists:`Wenn die Zieltabelle existiert`,abort:`Abbrechen (Standard)`,dropAndRecreate:`Löschen und neu anlegen (Name muss erneut eingegeben werden)`,preview:`CREATE TABLE auf dem Ziel (bearbeitbar)`,crossEngineHint:`Das Ziel ist {{engine}}: Typen unten prüfen, MySQL-spezifische Attribute wurden entfernt.`,readOnly:`schreibgeschützt`,loading:`Lädt…`,progressCreate:`Tabelle wird angelegt…`,progressCount:`Zeilen werden gezählt…`,progressRows:`{{copied}} von {{total}} Zeilen kopiert`,progressDone:`Fertig`,doneTitle:`Tabelle kopiert`,doneRows:`{{count}} Zeilen nach {{table}} kopiert.`,doneStructure:`Struktur von {{table}} angelegt.`,noColumns:`Die Quelltabelle hat keine Spalten.`,exists:`Die Tabelle {{table}} existiert im Ziel bereits. Anderen Namen wählen oder „Löschen und neu anlegen“.`,dropTitle:`Vorhandene Tabelle {{table}} löschen?`,dropDescription:`Die Zieltabelle und alle ihre Zeilen werden vor dem Kopieren gelöscht. Das lässt sich nicht rückgängig machen.`,dropConfirm:`Löschen und kopieren`,cancelled:`Kopieren abgebrochen.`,stop:`Stopp`,cancel:`Abbrechen`,copy:`Kopieren`}},h={copy:{title:`Datenbank kopieren`,source:`Quelldatenbank`,target:`Name der Zieldatenbank`,targetPlaceholder:`Namen der Zieldatenbank eingeben`,options:`Optionen`,structureAndData:`Struktur und Daten`,structureOnly:`Nur Struktur`,cancel:`Abbrechen`,copy:`Kopieren`},diff:{title:`Schemas vergleichen`,source:`Quelle`,target:`Ziel`,pickConnection:`Verbindung`,pickDatabase:`Datenbank`,crossEngineHint:`Unterschiedliche Engines: Typnamen unterscheiden sich je Dialekt, daher zeigen die meisten Spalten eine Typänderung.`,sameSide:`Quelle und Ziel sind dieselbe Datenbank.`,summary:`{{changed}} geändert, {{missingTarget}} fehlen im Ziel, {{missingSource}} nur im Ziel, {{identical}} identisch`,showIdentical:`Identische Tabellen anzeigen`,identicalAll:`Die Tabellen sind identisch.`,column:`Spalte`,index:`Index`,object:`Objekt`,selectTable:`Tabelle auswählen, um Unterschiede zu sehen.`,missingInTarget:`{{table}} existiert im Ziel nicht; das Skript legt sie an.`,missingInSource:`{{table}} existiert nur im Ziel; das Skript löscht sie (auskommentiert, sofern DROPs nicht eingeschlossen sind).`,includeDrops:`DROP-Anweisungen als ausführbares SQL einschließen (Standard: auskommentiert)`,tabTitle:`Sync {{database}}`,close:`Schließen`,compare:`Vergleichen`,comparing:`Vergleicht…`,openScript:`Skript im Editor öffnen`,noDefinition:`Keine CREATE-Anweisung verfügbar`},create:{title:`Datenbank erstellen`,name:`Datenbankname`,namePlaceholder:`Datenbanknamen eingeben`,charset:`Zeichensatz`,collation:`Kollation`,cancel:`Abbrechen`,create:`Erstellen`},csv:{title:`Als CSV herunterladen`,target:`Ziel`,targetQueryResult:`Aktuelles Abfrageergebnis`,targetTableData:`Tabellendaten`,tableName:`Tabellenname`,tableNamePlaceholder:`Tabellennamen eingeben`,delimiter:`Trennzeichen`,delimiterComma:`Komma (,)`,delimiterTab:`Tabulator (\\t)`,delimiterSemicolon:`Semikolon (;)`,delimiterPipe:`Pipe (|)`,includeHeaders:`Kopfzeile einschließen`,cancel:`Abbrechen`,download:`Herunterladen`,downloading:`Wird heruntergeladen...`,progress:`{{loaded}} von {{total}} Zeilen geschrieben`,progressUnknown:`{{loaded}} Zeilen geschrieben`,stop:`Stopp`,done:`{{count}} Zeilen von {{table}} als CSV exportiert.`,database:`Datenbank`,databasePlaceholder:`Datenbank wählen`},html:{title:`Schema als HTML`,database:`Datenbank`,selectDatabase:`Datenbank auswählen`,tables:`Einzuschließende Tabellen`,selectAll:`Alle auswählen`,deselectAll:`Auswahl aufheben`,noTables:`Keine Tabellen verfügbar.`,include:`Einschließen`,includeColumns:`Spalten`,includeIndexes:`Indizes`,includeProperties:`Eigenschaften`,cancel:`Abbrechen`,generate:`Generieren`,generating:`Wird generiert...`,sectionColumns:`Spalten`,sectionIndexes:`Indizes`,sectionProperties:`Eigenschaften`,docTitle:`Schema: {{database}}`,heading:`Datenbank: {{database}}`,summary:`Tabellen: {{count}} | Generiert: {{date}}`,footer:`Generiert von Planche 2026`},dataDiff:{title:`Daten vergleichen`,pickTable:`Tabelle`,hint:`Zeilen werden über den Primärschlüssel der Quelltabelle zugeordnet und als Text verglichen. Pro Seite werden bis zu {{cap}} Zeilen geladen; große Tabellen vorher per Filter eingrenzen.`,sameSide:`Quelle und Ziel sind dieselbe Tabelle.`,noPrimaryKey:`{{table}} hat keinen Primärschlüssel; ohne ihn lassen sich Zeilen nicht zuordnen.`,keyMissingInTarget:`Der Zieltabelle fehlen die Schlüsselspalten: {{columns}}`,summary:`Schlüssel: {{key}} – {{added}} fehlen im Ziel, {{changed}} unterschiedlich, {{removed}} nur im Ziel, {{identical}} identisch`,capped:`Nur die ersten {{cap}} Zeilen jeder Seite wurden verglichen.`,ignoredColumns:`Ignorierte Spalten (nur auf einer Seite): {{columns}}`,added_one:`{{count}} fehlt im Ziel`,added_other:`{{count}} fehlen im Ziel`,changed_one:`{{count}} unterschiedlich`,changed_other:`{{count}} unterschiedlich`,removed_one:`{{count}} nur im Ziel`,removed_other:`{{count}} nur im Ziel`,none:`Nichts in dieser Gruppe.`,more:`… {{count}} weitere nicht aufgeführt`,includeDeletes:`DELETE-Anweisungen als ausführbares SQL einschließen (Standard: auskommentiert)`,tabTitle:`Daten-Sync {{table}}`,loading:`Zeilen werden geladen – Quelle: {{source}}, Ziel: {{target}}`}},g={manager:{title:`Benutzerverwaltung`,addUser:`Benutzer hinzufügen`,removeUser:`Benutzer entfernen`,noUsers:`Keine Benutzer geladen`,grantScope:`Berechtigungsbereich`,apply:`Anwenden`,close:`Schließen`,removed:`Benutzer '{{user}}'@'{{host}}' entfernt`,selectUserFirst:`Bitte wählen Sie zuerst einen Benutzer aus`,applied:`Änderungen erfolgreich angewendet`},add:{title:`Benutzer hinzufügen`,username:`Benutzername`,usernamePlaceholder:`Benutzernamen eingeben`,host:`Host`,password:`Passwort`,passwordPlaceholder:`Passwort eingeben`,confirmPassword:`Passwort bestätigen`,confirmPasswordPlaceholder:`Passwort bestätigen`,plugin:`Plugin`,cancel:`Abbrechen`,add:`Hinzufügen`,usernameRequired:`Benutzername ist erforderlich`,passwordMismatch:`Die Passwörter stimmen nicht überein`,added:`Benutzer '{{user}}'@'{{host}}' hinzugefügt`},privileges:{globalTitle:`Globale Berechtigungen`,databaseTitle:`Datenbankberechtigungen`,tableTitle:`Tabellenberechtigungen`,checkAll:`Alle auswählen`,uncheckAll:`Alle abwählen`,categoryData:`Daten`,categoryStructure:`Struktur`,categoryAdministration:`Administration`},grantTree:{globalPrivileges:`Globale Berechtigungen`}},_={close:`Schließen`,noActiveConnection:`Keine aktive Verbindung`,variableName:`Variablenname`,value:`Wert`,scope:{session:`Session`,global:`Global`},findReplace:{findPlaceholder:`Suchen`,replacePlaceholder:`Ersetzen`,found:`{{count}} gefunden`,noResults:`Keine Treffer`,previous:`Zurück`,next:`Weiter`,close:`Schließen`,replace:`Ersetzen`,all:`Alle`,caseSensitive:`Groß-/Kleinschreibung`,regex:`Regex`,wholeWord:`Ganzes Wort`},flush:{title:`Flush`,executed:`Ausgeführt: {{command}}`,executeError:`Fehler beim Ausführen von {{command}}: {{message}}`},localHistory:{title:`Lokaler Verlauf`,description:`Versionen dieses Tabs, die vor jeder Ausführung und vor dem Überschreiben durch eine Vorlage erfasst wurden.`,empty:`Noch kein Verlauf für diesen Tab.`,restored:`Editorinhalt aus dem lokalen Verlauf wiederhergestellt`,restore:`Diese Version wiederherstellen`,chars:`{{count}} Zeichen`,reason:{execute:`vor Ausführung`,replaced:`vor Überschreiben`,restore:`vor Wiederherstellung`}},processList:{title:`Prozessliste`,refresh:`Aktualisieren`,autoRefresh:`Automatisch aktualisieren`,empty:`Keine Prozesse vorhanden`,kill:`Beenden`,killProcess:`Prozess beenden`,selectToKill:`Bitte wählen Sie einen zu beendenden Prozess aus`,killed:`Prozess {{id}} wurde beendet`,killError:`Fehler beim Beenden des Prozesses: {{message}}`,loadError:`Fehler beim Laden der Prozessliste: {{message}}`,updatedAt:`aktualisiert {{time}}`,filterPlaceholder:`Nach Benutzer, Host, DB, SQL filtern...`,hideIdle:`Inaktive ausblenden`,noMatch:`Keine Prozesse entsprechen dem Filter`,self:`ich`,selfHint:`Dies ist die eigene Sitzung von Planche`,statementOf:`Anweisung von #{{id}}`,noStatement:`Keine Anweisung`,copy:`Kopieren`,copied:`Kopiert`,killConfirmTitle:`Prozess {{id}} beenden?`,killConfirmDescription:`Die Sitzung von {{user}}@{{host}} wird beendet und die laufende Anweisung abgebrochen. Eine offene Transaktion wird zurückgerollt.`,stats:{total:`Gesamt`,active:`Aktiv`,idle:`Inaktiv`,longest:`Längste Laufzeit`},columns:{id:`Id`,user:`Benutzer`,host:`Host`,db:`db`,command:`Befehl`,time:`Zeit`,state:`Zustand`,info:`Info`,action:`Aktion`}},status:{title:`Serverstatus`,filterPlaceholder:`Statusvariablen filtern...`,empty:`Keine Statusvariablen vorhanden`,loadError:`Fehler beim Laden des Status: {{message}}`},variables:{title:`Servervariablen`,filterPlaceholder:`Variablen filtern...`,empty:`Keine Variablen vorhanden`,loadError:`Fehler beim Laden der Variablen: {{message}}`}},v={empty:{title:`Öffnen Sie eine Prisma-Schemadatei (.prisma), um das ERD anzuzeigen`,description:`Modelle, Enums und Relationen werden automatisch analysiert`,openFile:`.prisma-Datei öffnen`,dropHint:`oder ziehen Sie eine Datei in diesen Bereich`},entity:{enumBadge:`ENUM`,modelBadge:`MODEL`,columns:{value:`Wert`,comment:`Kommentar`,type:`Typ`,column:`Spalte`},linkBadge:`LINK`,externalTitle:`Verknüpfte Tabelle auf {{location}} (Spaltenverknüpfung, kein echter Fremdschlüssel)`},toolbar:{refresh:`Aktualisieren`,zoomIn:`Vergrößern`,zoomOut:`Verkleinern`,resetView:`Ansicht zurücksetzen`,center:`Zentrieren`,fitAll:`Alles einpassen`,spreadAll:`Alles verteilen`,resetLayout:`Layout zurücksetzen`,legendOneToMany:`1:N (FK)`,tables:`Tabellen:`,relations:`Relationen:`,columns:`Spalten:`},viewer:{noServerConnection:`Keine aktive Serververbindung`,loading:`Schema wird aus {{database}} geladen...`,loadFailed:`ERD konnte nicht geladen werden`,noDatabase:`Keine Datenbank ausgewählt.`,selectDatabaseHint:`Wählen Sie im Schemabaum eine Datenbank aus und öffnen Sie dann „ERD anzeigen“.`}},y={runAnyway:`Trotzdem ausführen`,query:{rowsReturned:`{{count}} Zeile(n) zurückgegeben`,rowsAffected:`{{count}} Zeile(n) betroffen`,rowsReturnedLimited:`{{count}} Zeile(n) zurückgegeben (begrenzt auf {{limit}}; fügen Sie LIMIT hinzu, um mehr abzurufen)`,notConnected:`Nicht verbunden`,fileNotOpen:`Die SQLite-Datei ist noch nicht geöffnet — klicken Sie oben auf „Datei erneut öffnen“, um den Zugriff erneut zu gewähren.`,failed:`Abfrage fehlgeschlagen`,nothingToExecute:`Nichts auszuführen`},destructive:{title_one:`Destruktive Anweisung ausführen?`,title_other:`{{count}} destruktive Anweisungen ausführen?`,description:`Folgendes wird Daten dauerhaft ändern oder löschen. Dies kann nicht rückgängig gemacht werden.`,unknownTarget:`(unbekannt)`,deleteAll:`DELETE aller Zeilen aus {{target}}`,updateAll:`UPDATE aller Zeilen in {{target}}`,alterDrop:`DROP COLUMN/PARTITION auf {{target}}`},readOnly:{refused:`Die Verbindung „{{label}}“ ist schreibgeschützt. {{count}} Anweisung(en) würde(n) Daten oder Schema ändern.`,title:`„{{label}}“ ist schreibgeschützt`,description:`Diese Anweisungen ändern Daten oder Schema. Trotzdem auf dieser Verbindung ausführen?`},transaction:{startFailed:`Transaktion konnte nicht gestartet werden`,started:`Transaktion gestartet — Commit oder Rollback, wenn Sie fertig sind`,implicitCommit:`{{kind}} hat ein implizites COMMIT der offenen Transaktion ausgelöst`,committed:`Transaktion bestätigt (Commit)`,rolledBack:`Transaktion zurückgerollt (Rollback)`,commandFailed:`{{name}} fehlgeschlagen`,commandFailedWith:`{{name}} fehlgeschlagen: {{message}}`},save:{notBrowserSqlite:`Keine SQLite-Verbindung im Browser.`,inMemory:`In-Memory-Datenbank: Sie kann nur als Download exportiert werden.`,noFileSystemAccess:`Dieser Browser hat keine File System Access API (nur Chrome/Edge): Die Datenbank wird als Download exportiert, statt direkt geschrieben zu werden.`,noWritableHandle:`Die Datei wurde ohne beschreibbares Handle geöffnet: Sie wird als Download exportiert.`},agent:{devProxyUrl:`{{url}} (über Dev-Proxy)`,notPlanche:`Es hat etwas geantwortet, aber es ist kein Planche-Agent`,unreachable:"Planche-Agent unter {{url}} nicht erreichbar — führen Sie `npx planche` aus ({{message}})",httpError:`HTTP-Fehler: {{status}} {{statusText}}`,emptyResponse:`Der Tunneling-Server hat eine leere Antwort zurückgegeben`,reconnected:`Verbindung zu {{name}} wiederhergestellt — der Agent hatte sie verworfen (Neustart oder Leerlauf-Timeout).`},sample:{profileName:`Beispiel-Shop (im Browser)`,downloadFailed:`Die Beispieldatenbank konnte nicht heruntergeladen werden ({{status}})`,tabTitle:`Abfrage 1`},sqliteFile:{tooSmall:`Die Datei ist zu klein, um eine SQLite-Datenbank zu sein.`,notSqlite:`Keine SQLite-Datenbank (oder eine verschlüsselte, z. B. SQLCipher). Der 16-Byte-Header lautet nicht „SQLite format 3“.`,badPageSize:`Beschädigter SQLite-Header: ungültige Seitengröße {{size}}.`,unreadable:`SQLite konnte die Datei nicht lesen: {{message}}`,pickerDescription:`SQLite-Datenbank`,walNotLoaded:`Diese Datenbank ist im WAL-Modus und ihre -wal-Datei wurde nicht geladen. Laden Sie sie oder bestätigen Sie im Banner, dass keine -wal-Datei existiert, bevor Sie speichern.`,changedOnDisk:`{{name}} wurde nach dem Laden auf dem Datenträger geändert (ein anderes Programm hat hineingeschrieben). Speichern würde diese Änderungen überschreiben — öffnen Sie die Datei erneut und wiederholen Sie Ihre Änderungen, oder verwenden Sie den Tunneling-Server.`,walHasChanges:`{{name}}-wal enthält neue Änderungen; laden Sie sie vor dem Speichern.`,walChangedOnDisk:`{{name}}-wal wurde nach dem Laden von einem anderen Programm geschrieben; öffnen Sie die Datei vor dem Speichern erneut.`,writeDenied:`Schreibzugriff auf {{name}} wurde nicht gewährt. Erlauben Sie ihn in der Browserabfrage oder exportieren Sie stattdessen als Download.`},environment:{none:`Keine`,green:`Grün (Entwicklung)`,blue:`Blau`,yellow:`Gelb (Staging)`,orange:`Orange`,red:`Rot (Produktion)`,purple:`Lila`},scratchpad:{profileName:`Scratchpad`,namePromptTitle:`Name der Scratchpad-Tabelle`,namePromptDescription:`Im Scratchpad gibt es bereits eine Tabelle {{table}}. Wählen Sie einen anderen Namen.`,nameTaken:`Tabelle {{table}} existiert bereits.`},federated:{pulling:`Hole {{table}} von {{connection}}…`,capped:`{{table}}: nur die ersten {{limit}} Zeilen wurden geholt.`,templateLine1:`Eine Tabelle einer offenen Verbindung als "Verbindungsname".database.table referenzieren; sie wird vor der Ausführung in dieses Scratchpad kopiert.`,templateLine2:`Tabellen sind auf {{limit}} Zeilen begrenzt. Die Abfrage selbst läuft in SQLite (in Ihrem Browser).`,templateConnections:`Offene Verbindungen: {{names}}`,templateNone:`Noch keine andere Verbindung offen. Verbinden Sie eine und referenzieren Sie sie hier.`,done:`{{rows}} Zeilen aus {{tables}} entfernten Tabellen ins Scratchpad geholt.`,pullingProgress:`Hole {{table}} von {{connection}}: {{loaded}} / {{total}} Zeilen…`},paged:{noColumns:`{{table}} hat keine Spalten.`,cancelled:`Abgebrochen.`}},b={title:`Nutzungsbedingungen`,version:`Version {{version}}`,englishOnly:`Die Bedingungen liegen auf Englisch vor. Die Zusammenfassung auf dem Startbildschirm ist in Ihrer Sprache verfügbar.`},x={title:`{{kind}} würde {{count}} Zeilen betreffen`,titleUnknown:`{{kind}} – betroffene Zeilen unbekannt`,description:`Das sind die Zeilen, die die Anweisung jetzt berühren würde, per SELECT gelesen. Noch wurde nichts geschrieben.`,previewFailed:`Die Vorschau-Abfrage ist fehlgeschlagen: {{error}}
2
+ Sie können die Anweisung trotzdem ausführen.`,noRows:`Keine Zeile passt – die Anweisung würde nichts ändern.`,truncated:`Die ersten {{shown}} von {{count}} Zeilen werden angezeigt.`,previewQuery:`Vorschau-Abfrage`,run:`{{kind}} ausführen ({{count}} Zeilen)`,runAnyway:`Trotzdem ausführen`},S={app:e,language:t,settings:n,menu:r,about:i,connection:a,toolbar:o,footer:s,palette:c,welcome:l,schema:u,query:d,result:f,confirm:p,table:m,database:h,user:g,command:_,erd:v,services:y,terms:b,dryRun:x};export{i as about,e as app,_ as command,p as confirm,a as connection,h as database,S as default,x as dryRun,v as erd,s as footer,t as language,r as menu,c as palette,d as query,f as result,u as schema,y as services,n as settings,m as table,b as terms,o as toolbar,g as user,l as welcome};
@@ -0,0 +1 @@
1
+ import{m as e}from"./ui-store-DWSBgCoR.js";import{i as t,l as n,o as r,t as i}from"./button-BGQhw-yz.js";import{a,i as o,n as s,o as c,r as l,s as u,t as d}from"./dist-R-HWeP5h.js";e();var f=n();function p({...e}){return(0,f.jsx)(d,{"data-slot":`dialog`,...e})}function m({...e}){return(0,f.jsx)(c,{"data-slot":`dialog-portal`,...e})}function h({className:e,...t}){return(0,f.jsx)(a,{"data-slot":`dialog-overlay`,className:r(`fixed inset-0 z-50 bg-black/50 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:animate-in data-[state=open]:fade-in-0`,e),...t})}function g({className:e,children:n,showCloseButton:i=!0,...a}){return(0,f.jsxs)(m,{"data-slot":`dialog-portal`,children:[(0,f.jsx)(h,{}),(0,f.jsxs)(l,{"data-slot":`dialog-content`,className:r(`fixed top-[50%] left-[50%] z-50 grid w-full max-w-[calc(100%-2rem)] translate-x-[-50%] translate-y-[-50%] gap-4 rounded-lg border bg-background p-6 shadow-lg duration-200 outline-none data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=open]:zoom-in-95 sm:max-w-lg`,e),...a,children:[n,i&&(0,f.jsxs)(s,{"data-slot":`dialog-close`,className:`absolute top-4 right-4 rounded-xs opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:ring-2 focus:ring-ring focus:ring-offset-2 focus:outline-hidden disabled:pointer-events-none data-[state=open]:bg-accent data-[state=open]:text-muted-foreground [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4`,children:[(0,f.jsx)(t,{}),(0,f.jsx)(`span`,{className:`sr-only`,children:`Close`})]})]})]})}function _({className:e,...t}){return(0,f.jsx)(`div`,{"data-slot":`dialog-header`,className:r(`flex flex-col gap-2 text-center sm:text-left`,e),...t})}function v({className:e,showCloseButton:t=!1,children:n,...a}){return(0,f.jsxs)(`div`,{"data-slot":`dialog-footer`,className:r(`flex flex-col-reverse gap-2 sm:flex-row sm:justify-end`,e),...a,children:[n,t&&(0,f.jsx)(s,{asChild:!0,children:(0,f.jsx)(i,{variant:`outline`,children:`Close`})})]})}function y({className:e,...t}){return(0,f.jsx)(u,{"data-slot":`dialog-title`,className:r(`text-lg leading-none font-semibold`,e),...t})}function b({className:e,...t}){return(0,f.jsx)(o,{"data-slot":`dialog-description`,className:r(`text-sm text-muted-foreground`,e),...t})}export{_ as a,v as i,g as n,y as o,b as r,p as t};
@@ -0,0 +1 @@
1
+ import{_ as e,m as t}from"./ui-store-DWSBgCoR.js";import{b as n,l as r,p as i,s as a}from"./button-BGQhw-yz.js";import{S as o,b as s,g as c}from"./dist-R-HWeP5h.js";var l=e(n(),1),u=r(),d=e(t(),1),f=Object.defineProperty,p=(e,t)=>f(e,`name`,{value:t,configurable:!0});function m(e){let[t,n]=d.useState(void 0);return s(()=>{if(e){n({width:e.offsetWidth,height:e.offsetHeight});let t=new ResizeObserver(t=>{if(!Array.isArray(t)||!t.length)return;let r=t[0],i,a;if(`borderBoxSize`in r){let e=r.borderBoxSize,t=Array.isArray(e)?e[0]:e;i=t.inlineSize,a=t.blockSize}else i=e.offsetWidth,a=e.offsetHeight;n({width:i,height:a})});return t.observe(e,{box:`border-box`}),()=>t.unobserve(e)}n(void 0)},[e]),t}p(m,`useSize`);var h=[`top`,`right`,`bottom`,`left`],g=Math.min,_=Math.max,v=Math.round,y=Math.floor,b=e=>({x:e,y:e}),x={left:`right`,right:`left`,bottom:`top`,top:`bottom`};function S(e,t,n){return _(e,g(t,n))}function C(e,t){return typeof e==`function`?e(t):e}function w(e){return e.split(`-`)[0]}function T(e){return e.split(`-`)[1]}function E(e){return e===`x`?`y`:`x`}function D(e){return e===`y`?`height`:`width`}function O(e){let t=e[0];return t===`t`||t===`b`?`y`:`x`}function k(e){return E(O(e))}function A(e,t,n){n===void 0&&(n=!1);let r=T(e),i=k(e),a=D(i),o=i===`x`?r===(n?`end`:`start`)?`right`:`left`:r===`start`?`bottom`:`top`;return t.reference[a]>t.floating[a]&&(o=z(o)),[o,z(o)]}function j(e){let t=z(e);return[M(e),t,M(t)]}function M(e){return e.includes(`start`)?e.replace(`start`,`end`):e.replace(`end`,`start`)}var N=[`left`,`right`],P=[`right`,`left`],F=[`top`,`bottom`],I=[`bottom`,`top`];function L(e,t,n){switch(e){case`top`:case`bottom`:return n?t?P:N:t?N:P;case`left`:case`right`:return t?F:I;default:return[]}}function R(e,t,n,r){let i=T(e),a=L(w(e),n===`start`,r);return i&&(a=a.map(e=>e+`-`+i),t&&(a=a.concat(a.map(M)))),a}function z(e){let t=w(e);return x[t]+e.slice(t.length)}function ee(e){return{top:e.top??0,right:e.right??0,bottom:e.bottom??0,left:e.left??0}}function B(e){return typeof e==`number`?{top:e,right:e,bottom:e,left:e}:ee(e)}function V(e){let{x:t,y:n,width:r,height:i}=e;return{width:r,height:i,top:n,left:t,right:t+r,bottom:n+i,x:t,y:n}}function te(e,t,n){let{reference:r,floating:i}=e,a=O(t),o=k(t),s=D(o),c=w(t),l=a===`y`,u=r.x+r.width/2-i.width/2,d=r.y+r.height/2-i.height/2,f=r[s]/2-i[s]/2,p;switch(c){case`top`:p={x:u,y:r.y-i.height};break;case`bottom`:p={x:u,y:r.y+r.height};break;case`right`:p={x:r.x+r.width,y:d};break;case`left`:p={x:r.x-i.width,y:d};break;default:p={x:r.x,y:r.y}}let m=T(t);return m&&(p[o]+=f*(m===`end`?1:-1)*(n&&l?-1:1)),p}async function ne(e,t){t===void 0&&(t={});let{x:n,y:r,platform:i,rects:a,elements:o,strategy:s}=e,{boundary:c=`clippingAncestors`,rootBoundary:l=`viewport`,elementContext:u=`floating`,altBoundary:d=!1,padding:f=0}=C(t,e),p=B(f),m=o[d?u===`floating`?`reference`:`floating`:u],h=V(await i.getClippingRect({element:await(i.isElement==null?void 0:i.isElement(m))??!0?m:m.contextElement||await(i.getDocumentElement==null?void 0:i.getDocumentElement(o.floating)),boundary:c,rootBoundary:l,strategy:s})),g=u===`floating`?{x:n,y:r,width:a.floating.width,height:a.floating.height}:a.reference,_=await(i.getOffsetParent==null?void 0:i.getOffsetParent(o.floating)),v=await(i.isElement==null?void 0:i.isElement(_))&&await(i.getScale==null?void 0:i.getScale(_))||{x:1,y:1},y=V(i.convertOffsetParentRelativeRectToViewportRelativeRect?await i.convertOffsetParentRelativeRectToViewportRelativeRect({elements:o,rect:g,offsetParent:_,strategy:s}):g);return{top:(h.top-y.top+p.top)/v.y,bottom:(y.bottom-h.bottom+p.bottom)/v.y,left:(h.left-y.left+p.left)/v.x,right:(y.right-h.right+p.right)/v.x}}var re=50,ie=async(e,t,n)=>{let{placement:r=`bottom`,strategy:i=`absolute`,middleware:a=[],platform:o}=n,s=o.detectOverflow?o:{...o,detectOverflow:ne},c=await(o.isRTL==null?void 0:o.isRTL(t)),l=await o.getElementRects({reference:e,floating:t,strategy:i}),{x:u,y:d}=te(l,r,c),f=r,p=0,m={};for(let n=0;n<a.length;n++){let h=a[n];if(!h)continue;let{name:g,fn:_}=h,{x:v,y,data:b,reset:x}=await _({x:u,y:d,initialPlacement:r,placement:f,strategy:i,middlewareData:m,rects:l,platform:s,elements:{reference:e,floating:t}});u=v??u,d=y??d,m[g]={...m[g],...b},x&&p<re&&(p++,typeof x==`object`&&(x.placement&&(f=x.placement),x.rects&&(l=x.rects===!0?await o.getElementRects({reference:e,floating:t,strategy:i}):x.rects),{x:u,y:d}=te(l,f,c)),n=-1)}return{x:u,y:d,placement:f,strategy:i,middlewareData:m}},ae=e=>({name:`arrow`,options:e,async fn(t){let{x:n,y:r,placement:i,rects:a,platform:o,elements:s,middlewareData:c}=t,{element:l,padding:u=0}=C(e,t)||{};if(l==null)return{};let d=B(u),f={x:n,y:r},p=k(i),m=D(p),h=await o.getDimensions(l),_=p===`y`,v=_?`top`:`left`,y=_?`bottom`:`right`,b=_?`clientHeight`:`clientWidth`,x=a.reference[m]+a.reference[p]-f[p]-a.floating[m],w=f[p]-a.reference[p],E=await(o.getOffsetParent==null?void 0:o.getOffsetParent(l)),O=E?E[b]:0;(!O||!await(o.isElement==null?void 0:o.isElement(E)))&&(O=s.floating[b]||a.floating[m]);let A=x/2-w/2,j=O/2-h[m]/2-1,M=g(d[v],j),N=g(d[y],j),P=O-h[m]-N,F=O/2-h[m]/2+A,I=S(M,F,P),L=!c.arrow&&T(i)!=null&&F!==I&&a.reference[m]/2-(F<M?M:N)-h[m]/2<0,R=L?F<M?F-M:F-P:0;return{[p]:f[p]+R,data:{[p]:I,centerOffset:F-I-R,...L&&{alignmentOffset:R}},reset:L}}}),oe=function(e){return e===void 0&&(e={}),{name:`flip`,options:e,async fn(t){var n;let{placement:r,middlewareData:i,rects:a,initialPlacement:o,platform:s,elements:c}=t,{mainAxis:l=!0,crossAxis:u=!0,fallbackPlacements:d,fallbackStrategy:f=`bestFit`,fallbackAxisSideDirection:p=`none`,flipAlignment:m=!0,...h}=C(e,t);if((n=i.arrow)!=null&&n.alignmentOffset)return{};let g=w(r),_=O(o),v=w(o)===o,y=await(s.isRTL==null?void 0:s.isRTL(c.floating)),b=d||(v||!m?[z(o)]:j(o)),x=p!==`none`;!d&&x&&b.push(...R(o,m,p,y));let S=[o,...b],T=await s.detectOverflow(t,h),E=[],D=i.flip?.overflows||[];if(l&&E.push(T[g]),u){let e=A(r,a,y);E.push(T[e[0]],T[e[1]])}if(D=[...D,{placement:r,overflows:E}],!E.every(e=>e<=0)){let e=(i.flip?.index||0)+1,t=S[e];if(t&&(u!==`alignment`||_===O(t)||D.every(e=>O(e.placement)!==_||e.overflows[0]>0)))return{data:{index:e,overflows:D},reset:{placement:t}};let n=D.filter(e=>e.overflows[0]<=0).sort((e,t)=>e.overflows[1]-t.overflows[1])[0]?.placement;if(!n)switch(f){case`bestFit`:{let e=D.filter(e=>{if(x){let t=O(e.placement);return t===_||t===`y`}return!0}).map(e=>[e.placement,e.overflows.filter(e=>e>0).reduce((e,t)=>e+t,0)]).sort((e,t)=>e[1]-t[1])[0]?.[0];e&&(n=e);break}case`initialPlacement`:n=o}if(r!==n)return{reset:{placement:n}}}return{}}}};function se(e,t){return{top:e.top-t.height,right:e.right-t.width,bottom:e.bottom-t.height,left:e.left-t.width}}function ce(e){return h.some(t=>e[t]>=0)}var le=function(e){return e===void 0&&(e={}),{name:`hide`,options:e,async fn(t){let{rects:n,platform:r}=t,{strategy:i=`referenceHidden`,...a}=C(e,t);switch(i){case`referenceHidden`:{let e=se(await r.detectOverflow(t,{...a,elementContext:`reference`}),n.reference);return{data:{referenceHiddenOffsets:e,referenceHidden:ce(e)}}}case`escaped`:{let e=se(await r.detectOverflow(t,{...a,altBoundary:!0}),n.floating);return{data:{escapedOffsets:e,escaped:ce(e)}}}default:return{}}}}},ue=new Set([`left`,`top`]);async function de(e,t){let{placement:n,platform:r,elements:i}=e,a=await(r.isRTL==null?void 0:r.isRTL(i.floating)),o=w(n),s=T(n),c=O(n)===`y`,l=ue.has(o)?-1:1,u=a&&c?-1:1,d=C(t,e),{mainAxis:f,crossAxis:p,alignmentAxis:m}=typeof d==`number`?{mainAxis:d,crossAxis:0,alignmentAxis:null}:{mainAxis:d.mainAxis||0,crossAxis:d.crossAxis||0,alignmentAxis:d.alignmentAxis};return s&&typeof m==`number`&&(p=s===`end`?m*-1:m),c?{x:p*u,y:f*l}:{x:f*l,y:p*u}}var fe=function(e){return e===void 0&&(e=0),{name:`offset`,options:e,async fn(t){var n;let{x:r,y:i,placement:a,middlewareData:o}=t,s=await de(t,e);return a===o.offset?.placement&&(n=o.arrow)!=null&&n.alignmentOffset?{}:{x:r+s.x,y:i+s.y,data:{...s,placement:a}}}}},pe=function(e){return e===void 0&&(e={}),{name:`shift`,options:e,async fn(t){let{x:n,y:r,placement:i,platform:a}=t,{mainAxis:o=!0,crossAxis:s=!1,limiter:c={fn:e=>{let{x:t,y:n}=e;return{x:t,y:n}}},...l}=C(e,t),u={x:n,y:r},d=await a.detectOverflow(t,l),f=O(i),p=E(f),m=u[p],h=u[f],g=(e,t)=>S(t+d[e===`y`?`top`:`left`],t,t-d[e===`y`?`bottom`:`right`]);o&&(m=g(p,m)),s&&(h=g(f,h));let _=c.fn({...t,[p]:m,[f]:h});return{..._,data:{x:_.x-n,y:_.y-r,enabled:{[p]:o,[f]:s}}}}}},me=function(e){return e===void 0&&(e={}),{options:e,fn(t){let{x:n,y:r,placement:i,rects:a,middlewareData:o}=t,{offset:s=0,mainAxis:c=!0,crossAxis:l=!0}=C(e,t),u={x:n,y:r},d=O(i),f=E(d),p=u[f],m=u[d],h=C(s,t),g=typeof h==`number`?{mainAxis:h,crossAxis:0}:{mainAxis:h.mainAxis??0,crossAxis:h.crossAxis??0};if(c){let e=f===`y`?`height`:`width`,t=a.reference[f]-a.floating[e]+g.mainAxis,n=a.reference[f]+a.reference[e]-g.mainAxis;p<t?p=t:p>n&&(p=n)}if(l){let e=f===`y`?`width`:`height`,t=ue.has(w(i)),n=a.reference[d]-a.floating[e]+(t&&o.offset?.[d]||0)+(t?0:g.crossAxis),r=a.reference[d]+a.reference[e]+(t?0:o.offset?.[d]||0)-(t?g.crossAxis:0);m<n?m=n:m>r&&(m=r)}return{[f]:p,[d]:m}}}},he=function(e){return e===void 0&&(e={}),{name:`size`,options:e,async fn(t){let{placement:n,rects:r,platform:i,elements:a}=t,{apply:o=()=>{},...s}=C(e,t),c=await i.detectOverflow(t,s),l=w(n),u=T(n),d=O(n)===`y`,{width:f,height:p}=r.floating,m,h;l===`top`||l===`bottom`?(m=l,h=u===(await(i.isRTL==null?void 0:i.isRTL(a.floating))?`start`:`end`)?`left`:`right`):(h=l,m=u===`end`?`top`:`bottom`);let v=p-c.top-c.bottom,y=f-c.left-c.right,b=g(p-c[m],v),x=g(f-c[h],y),S=t.middlewareData.shift,E=!S,D=b,k=x;S!=null&&S.enabled.x&&(k=y),S!=null&&S.enabled.y&&(D=v),E&&!u&&(d?k=f-2*_(c.left,c.right):D=p-2*_(c.top,c.bottom)),await o({...t,availableWidth:k,availableHeight:D});let A=await i.getDimensions(a.floating);return f!==A.width||p!==A.height?{reset:{rects:!0}}:{}}}};function ge(){return typeof window<`u`}function H(e){return _e(e)?(e.nodeName||``).toLowerCase():`#document`}function U(e){var t;return(e==null||(t=e.ownerDocument)==null?void 0:t.defaultView)||window}function W(e){return((_e(e)?e.ownerDocument:e.document)||window.document)?.documentElement}function _e(e){return ge()?e instanceof Node||e instanceof U(e).Node:!1}function G(e){return ge()?e instanceof Element||e instanceof U(e).Element:!1}function K(e){return ge()?e instanceof HTMLElement||e instanceof U(e).HTMLElement:!1}function ve(e){return!ge()||typeof ShadowRoot>`u`?!1:e instanceof ShadowRoot||e instanceof U(e).ShadowRoot}function ye(e){let{overflow:t,overflowX:n,overflowY:r,display:i}=Y(e);return/auto|scroll|overlay|hidden|clip/.test(t+r+n)&&i!==`inline`&&i!==`contents`}function be(e){return/^(table|td|th)$/.test(H(e))}function xe(e){try{if(e.matches(`:popover-open`))return!0}catch{}try{return e.matches(`:modal`)}catch{return!1}}var Se=/transform|translate|scale|rotate|perspective|filter/,Ce=/paint|layout|strict|content/,q=e=>!!e&&e!==`none`,we;function Te(e){let t=G(e)?Y(e):e;return q(t.transform)||q(t.translate)||q(t.scale)||q(t.rotate)||q(t.perspective)||!De()&&(q(t.backdropFilter)||q(t.filter))||Se.test(t.willChange||``)||Ce.test(t.contain||``)}function Ee(e){let t=X(e);for(;K(t)&&!J(t);){if(Te(t))return t;if(xe(t))return null;t=X(t)}return null}function De(){return we??=typeof CSS<`u`&&CSS.supports&&CSS.supports(`-webkit-backdrop-filter`,`none`),we}function J(e){return/^(html|body|#document)$/.test(H(e))}function Y(e){return U(e).getComputedStyle(e)}function Oe(e){return G(e)?{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}:{scrollLeft:e.scrollX,scrollTop:e.scrollY}}function X(e){if(H(e)===`html`)return e;let t=e.assignedSlot||e.parentNode||ve(e)&&e.host||W(e);return ve(t)?t.host:t}function ke(e){let t=X(e);return J(t)?(e.ownerDocument||e).body:K(t)&&ye(t)?t:ke(t)}function Ae(e,t,n){t===void 0&&(t=[]),n===void 0&&(n=!0);let r=ke(e),i=r===e.ownerDocument?.body,a=U(r);if(i){let e=je(a);return t.concat(a,a.visualViewport||[],ye(r)?r:[],e&&n?Ae(e):[])}return t.concat(r,Ae(r,[],n))}function je(e){return e.parent&&Object.getPrototypeOf(e.parent)?e.frameElement:null}function Me(e){let t=Y(e),n=parseFloat(t.width)||0,r=parseFloat(t.height)||0,i=K(e),a=i?e.offsetWidth:n,o=i?e.offsetHeight:r,s=v(n)!==a||v(r)!==o;return s&&(n=a,r=o),{width:n,height:r,$:s}}function Ne(e){return G(e)?e:e.contextElement}function Z(e){let t=Ne(e);if(!K(t))return b(1);let n=t.getBoundingClientRect(),{width:r,height:i,$:a}=Me(t),o=(a?v(n.width):n.width)/r,s=(a?v(n.height):n.height)/i;return(!o||!Number.isFinite(o))&&(o=1),(!s||!Number.isFinite(s))&&(s=1),{x:o,y:s}}var Pe=b(0);function Fe(e){let t=U(e);return!De()||!t.visualViewport?Pe:{x:t.visualViewport.offsetLeft,y:t.visualViewport.offsetTop}}function Ie(e,t,n){return t===void 0&&(t=!1),!!n&&t&&n===U(e)}function Q(e,t,n,r){t===void 0&&(t=!1),n===void 0&&(n=!1);let i=e.getBoundingClientRect(),a=Ne(e),o=b(1);t&&(r?G(r)&&(o=Z(r)):o=Z(e));let s=Ie(a,n,r)?Fe(a):b(0),c=(i.left+s.x)/o.x,l=(i.top+s.y)/o.y,u=i.width/o.x,d=i.height/o.y;if(a&&r){let e=U(a),t=G(r)?U(r):r,n=e,i=je(n);for(;i&&t!==n;){let e=Z(i),t=i.getBoundingClientRect(),r=Y(i),a=t.left+(i.clientLeft+parseFloat(r.paddingLeft))*e.x,o=t.top+(i.clientTop+parseFloat(r.paddingTop))*e.y;c*=e.x,l*=e.y,u*=e.x,d*=e.y,c+=a,l+=o,n=U(i),i=je(n)}}return V({width:u,height:d,x:c,y:l})}function Le(e,t){let n=Oe(e).scrollLeft;return t?t.left+n:Q(W(e)).left+n}function Re(e,t){let n=e.getBoundingClientRect();return{x:n.left+t.scrollLeft-Le(e,n),y:n.top+t.scrollTop}}function ze(e){let{elements:t,rect:n,offsetParent:r,strategy:i}=e,a=i===`fixed`,o=W(r),s=t?xe(t.floating):!1;if(r===o||s&&a)return n;let c={scrollLeft:0,scrollTop:0},l=b(1),u=b(0),d=K(r);if((d||!a)&&((H(r)!==`body`||ye(o))&&(c=Oe(r)),d)){let e=Q(r);l=Z(r),u.x=e.x+r.clientLeft,u.y=e.y+r.clientTop}let f=o&&!d&&!a?Re(o,c):b(0);return{width:n.width*l.x,height:n.height*l.y,x:n.x*l.x-c.scrollLeft*l.x+u.x+f.x,y:n.y*l.y-c.scrollTop*l.y+u.y+f.y}}function Be(e){return e.getClientRects?Array.from(e.getClientRects()):[]}function Ve(e){let t=Oe(e),n=e.ownerDocument.body,r=_(e.scrollWidth,e.clientWidth,n.scrollWidth,n.clientWidth),i=_(e.scrollHeight,e.clientHeight,n.scrollHeight,n.clientHeight),a=-t.scrollLeft+Le(e),o=-t.scrollTop;return Y(n).direction===`rtl`&&(a+=_(e.clientWidth,n.clientWidth)-r),{width:r,height:i,x:a,y:o}}var He=25;function Ue(e,t,n){n===void 0&&(n=`viewport`);let r=n===`layoutViewport`,i=U(e),a=W(e),o=i.visualViewport,s=a.clientWidth,c=a.clientHeight,l=0,u=0;if(o){let e=!De()||t===`fixed`;r?e||(l=-o.offsetLeft,u=-o.offsetTop):(s=o.width,c=o.height,e&&(l=o.offsetLeft,u=o.offsetTop))}if(Le(a)<=0){let e=a.ownerDocument,t=e.body,n=getComputedStyle(t),r=e.compatMode===`CSS1Compat`&&parseFloat(n.marginLeft)+parseFloat(n.marginRight)||0,i=Math.abs(a.clientWidth-t.clientWidth-r),o=getComputedStyle(a).scrollbarGutter===`stable both-edges`?i/2:i;o<=He&&(s-=o)}return{width:s,height:c,x:l,y:u}}function We(e,t){let n=Q(e,!0,t===`fixed`),r=n.top+e.clientTop,i=n.left+e.clientLeft,a=Z(e);return{width:e.clientWidth*a.x,height:e.clientHeight*a.y,x:i*a.x,y:r*a.y}}function Ge(e,t,n){let r;if(t===`viewport`||t===`layoutViewport`)r=Ue(e,n,t);else if(t===`document`)r=Ve(W(e));else if(G(t))r=We(t,n);else{let n=Fe(e);r={x:t.x-n.x,y:t.y-n.y,width:t.width,height:t.height}}return V(r)}function Ke(e,t){let n=t.get(e);if(n)return n;let r=Ae(e,[],!1).filter(e=>G(e)&&H(e)!==`body`),i=null,a=Y(e).position===`fixed`,o=a?X(e):e;for(;G(o)&&!J(o);){let e=Y(o),t=Te(o),n=i?i.position:a?`fixed`:``;!t&&(n===`fixed`||n===`absolute`&&e.position===`static`)?r=r.filter(e=>e!==o):i=e,o=X(o)}return t.set(e,r),r}function qe(e){let{element:t,boundary:n,rootBoundary:r,strategy:i}=e,a=[...n===`clippingAncestors`?xe(t)?[]:Ke(t,this._c):[].concat(n),r],o=Ge(t,a[0],i),s=o.top,c=o.right,l=o.bottom,u=o.left;for(let e=1;e<a.length;e++){let n=Ge(t,a[e],i);s=_(n.top,s),c=g(n.right,c),l=g(n.bottom,l),u=_(n.left,u)}return{width:c-u,height:l-s,x:u,y:s}}function Je(e){let{width:t,height:n}=Me(e);return{width:t,height:n}}function Ye(e,t,n){let r=K(t),i=W(t),a=n===`fixed`,o=Q(e,!0,a,t),s={scrollLeft:0,scrollTop:0},c=b(0);if((r||!a)&&((H(t)!==`body`||ye(i))&&(s=Oe(t)),r)){let e=Q(t,!0,a,t);c.x=e.x+t.clientLeft,c.y=e.y+t.clientTop}!r&&i&&(c.x=Le(i));let l=i&&!r&&!a?Re(i,s):b(0);return{x:o.left+s.scrollLeft-c.x-l.x,y:o.top+s.scrollTop-c.y-l.y,width:o.width,height:o.height}}function Xe(e){return Y(e).position===`static`}function Ze(e,t){if(!K(e)||Y(e).position===`fixed`)return null;if(t)return t(e);let n=e.offsetParent;return W(e)===n&&(n=n.ownerDocument.body),n}function Qe(e,t){let n=U(e);if(xe(e))return n;if(!K(e)){let t=X(e);for(;t&&!J(t);){if(G(t)&&!Xe(t))return t;t=X(t)}return n}let r=Ze(e,t);for(;r&&be(r)&&Xe(r);)r=Ze(r,t);return r&&J(r)&&Xe(r)&&!Te(r)?n:r||Ee(e)||n}var $e=async function(e){let t=this.getOffsetParent||Qe,n=this.getDimensions,r=await n(e.floating);return{reference:Ye(e.reference,await t(e.floating),e.strategy),floating:{x:0,y:0,width:r.width,height:r.height}}};function et(e){return Y(e).direction===`rtl`}var tt={convertOffsetParentRelativeRectToViewportRelativeRect:ze,getDocumentElement:W,getClippingRect:qe,getOffsetParent:Qe,getElementRects:$e,getClientRects:Be,getDimensions:Je,getScale:Z,isElement:G,isRTL:et};function nt(e,t){return e.x===t.x&&e.y===t.y&&e.width===t.width&&e.height===t.height}function rt(e,t,n){let r=null,i,a=W(e);function o(){var e;clearTimeout(i),(e=r)==null||e.disconnect(),r=null}function s(n,c){n===void 0&&(n=!1),c===void 0&&(c=1),o();let l=e.getBoundingClientRect(),{left:u,top:d,width:f,height:p}=l;if(n||t(),!f||!p)return;let m=y(d),h=y(a.clientWidth-(u+f)),v=y(a.clientHeight-(d+p)),b=y(u),x={rootMargin:-m+`px `+-h+`px `+-v+`px `+-b+`px`,threshold:_(0,g(1,c))||1},S=!0;function C(t){let n=t[0].intersectionRatio;if(!nt(l,e.getBoundingClientRect()))return s();if(n!==c){if(!S)return s();n?s(!1,n):i=setTimeout(()=>{s(!1,1e-7)},1e3)}S=!1}try{r=new IntersectionObserver(C,{...x,root:a.ownerDocument})}catch{r=new IntersectionObserver(C,x)}r.observe(e)}let c=U(e),l=()=>s(n);return c.addEventListener(`resize`,l),s(!0),()=>{c.removeEventListener(`resize`,l),o()}}function it(e,t,n,r){r===void 0&&(r={});let{ancestorScroll:i=!0,ancestorResize:a=!0,elementResize:o=typeof ResizeObserver==`function`,layoutShift:s=typeof IntersectionObserver==`function`,animationFrame:c=!1}=r,l=Ne(e),u=i||a?[...l?Ae(l):[],...t?Ae(t):[]]:[];u.forEach(e=>{i&&e.addEventListener(`scroll`,n),a&&e.addEventListener(`resize`,n)});let d=l&&s?rt(l,n,a):null,f=-1,p=null;o&&(p=new ResizeObserver(e=>{let[r]=e;r&&r.target===l&&p&&t&&(p.unobserve(t),cancelAnimationFrame(f),f=requestAnimationFrame(()=>{var e;(e=p)==null||e.observe(t)})),n()}),l&&!c&&p.observe(l),t&&p.observe(t));let m,h=c?Q(e):null;c&&g();function g(){let t=Q(e);h&&!nt(h,t)&&n(),h=t,m=requestAnimationFrame(g)}return n(),()=>{var e;u.forEach(e=>{i&&e.removeEventListener(`scroll`,n),a&&e.removeEventListener(`resize`,n)}),d?.(),(e=p)==null||e.disconnect(),p=null,c&&cancelAnimationFrame(m)}}var at=fe,ot=pe,st=oe,ct=he,lt=le,ut=ae,dt=me,ft=(e,t,n)=>{let r=new Map,i=n??{},a={...tt,...i.platform,_c:r};return ie(e,t,{...i,platform:a})},pt=typeof document<`u`?d.useLayoutEffect:function(){};function mt(e,t){if(e===t)return!0;if(typeof e!=typeof t)return!1;if(typeof e==`function`&&e.toString()===t.toString())return!0;let n,r,i;if(e&&t&&typeof e==`object`){if(Array.isArray(e)){if(n=e.length,n!==t.length)return!1;for(r=n;r--!==0;)if(!mt(e[r],t[r]))return!1;return!0}if(i=Object.keys(e),n=i.length,n!==Object.keys(t).length)return!1;for(r=n;r--!==0;)if(!{}.hasOwnProperty.call(t,i[r]))return!1;for(r=n;r--!==0;){let n=i[r];if(!(n===`_owner`&&e.$$typeof)&&!mt(e[n],t[n]))return!1}return!0}return e!==e&&t!==t}function ht(e){return typeof window>`u`?1:(e.ownerDocument.defaultView||window).devicePixelRatio||1}function gt(e,t){let n=ht(e);return Math.round(t*n)/n}function _t(e){let t=d.useRef(e);return pt(()=>{t.current=e}),t}function vt(e){e===void 0&&(e={});let{placement:t=`bottom`,strategy:n=`absolute`,middleware:r=[],platform:i,elements:{reference:a,floating:o}={},transform:s=!0,whileElementsMounted:c,open:u}=e,[f,p]=d.useState({x:0,y:0,strategy:n,placement:t,middlewareData:{},isPositioned:!1}),[m,h]=d.useState(r);mt(m,r)||h(r);let[g,_]=d.useState(null),[v,y]=d.useState(null),b=d.useCallback(e=>{e!==w.current&&(w.current=e,_(e))},[]),x=d.useCallback(e=>{e!==T.current&&(T.current=e,y(e))},[]),S=a||g,C=o||v,w=d.useRef(null),T=d.useRef(null),E=d.useRef(f),D=c!=null,O=_t(c),k=_t(i),A=_t(u),j=d.useCallback(()=>{if(!w.current||!T.current)return;let e={placement:t,strategy:n,middleware:m};k.current&&(e.platform=k.current),ft(w.current,T.current,e).then(e=>{let t={...e,isPositioned:A.current!==!1};M.current&&!mt(E.current,t)&&(E.current=t,l.flushSync(()=>{p(t)}))})},[m,t,n,k,A]);pt(()=>{u===!1&&E.current.isPositioned&&(E.current.isPositioned=!1,p(e=>({...e,isPositioned:!1})))},[u]);let M=d.useRef(!1);pt(()=>(M.current=!0,()=>{M.current=!1}),[]),pt(()=>{if(S&&(w.current=S),C&&(T.current=C),S&&C){if(O.current)return O.current(S,C,j);j()}},[S,C,j,O,D]);let N=d.useMemo(()=>({reference:w,floating:T,setReference:b,setFloating:x}),[b,x]),P=d.useMemo(()=>({reference:S,floating:C}),[S,C]),F=d.useMemo(()=>{let e={position:n,left:0,top:0};if(!P.floating)return e;let t=gt(P.floating,f.x),r=gt(P.floating,f.y);return s?{...e,transform:`translate(`+t+`px, `+r+`px)`,...ht(P.floating)>=1.5&&{willChange:`transform`}}:{position:n,left:t,top:r}},[n,s,P.floating,f.x,f.y]);return d.useMemo(()=>({...f,update:j,refs:N,elements:P,floatingStyles:F}),[f,j,N,P,F])}var yt=e=>{function t(e){return{}.hasOwnProperty.call(e,`current`)}return{name:`arrow`,options:e,fn(n){let{element:r,padding:i}=typeof e==`function`?e(n):e;return r&&t(r)?r.current==null?{}:ut({element:r.current,padding:i}).fn(n):r?ut({element:r,padding:i}).fn(n):{}}}},bt=(e,t)=>{let n=at(e);return{name:n.name,fn:n.fn,options:[e,t]}},xt=(e,t)=>{let n=ot(e);return{name:n.name,fn:n.fn,options:[e,t]}},St=(e,t)=>({fn:dt(e).fn,options:[e,t]}),Ct=(e,t)=>{let n=st(e);return{name:n.name,fn:n.fn,options:[e,t]}},wt=(e,t)=>{let n=ct(e);return{name:n.name,fn:n.fn,options:[e,t]}},Tt=(e,t)=>{let n=lt(e);return{name:n.name,fn:n.fn,options:[e,t]}},Et=(e,t)=>{let n=yt(e);return{name:n.name,fn:n.fn,options:[e,t]}},Dt=Object.defineProperty,Ot=d.forwardRef(((e,t)=>Dt(e,`name`,{value:t,configurable:!0}))(function(e,t){let{children:n,width:r=10,height:i=5,...o}=e;return(0,u.jsx)(a.svg,{...o,ref:t,width:r,height:i,viewBox:`0 0 30 10`,preserveAspectRatio:`none`,children:e.asChild?n:(0,u.jsx)(`polygon`,{points:`0,0 30,0 15,10`})})},`Arrow`)),kt=Object.defineProperty,$=(e,t)=>kt(e,`name`,{value:t,configurable:!0}),At=`Popper`,[jt,Mt]=o(At),[Nt,Pt]=jt(At),Ft=$(e=>{let{__scopePopper:t,children:n}=e,[r,i]=d.useState(null),[a,o]=d.useState(void 0);return(0,u.jsx)(Nt,{scope:t,anchor:r,onAnchorChange:i,placementState:a,setPlacementState:o,children:n})},`Popper`),It=`PopperAnchor`,Lt=d.forwardRef($(function(e,t){let{__scopePopper:n,virtualRef:r,...o}=e,s=Pt(It,n),c=d.useRef(null),l=s.onAnchorChange,f=d.useCallback(e=>{c.current=e,e&&l(e)},[l]),p=i(t,f),m=d.useRef(null);d.useEffect(()=>{if(!r)return;let e=m.current;m.current=r.current,e!==m.current&&l(m.current)});let h=s.placementState&&qt(s.placementState),g=h?.[0],_=h?.[1];return r?null:(0,u.jsx)(a.div,{"data-radix-popper-side":g,"data-radix-popper-align":_,...o,ref:p})},`PopperAnchor`)),Rt=`PopperContent`,[zt,Bt]=jt(Rt),Vt=d.forwardRef($(function(e,t){let{__scopePopper:n,side:r=`bottom`,sideOffset:o=0,align:l=`center`,alignOffset:f=0,arrowPadding:p=0,avoidCollisions:h=!0,collisionBoundary:g=[],collisionPadding:_=0,sticky:v=`partial`,hideWhenDetached:y=!1,updatePositionStrategy:b=`optimized`,onPlaced:x,...S}=e,C=Pt(Rt,n),[w,T]=d.useState(null),E=i(t,T),[D,O]=d.useState(null),k=m(D),A=k?.width??0,j=k?.height??0,M=r+(l===`center`?``:`-`+l),N=typeof _==`number`?_:{top:0,right:0,bottom:0,left:0,..._},P=Array.isArray(g)?g:[g],F=P.length>0,I={padding:N,boundary:P.filter(Gt),altBoundary:F},{refs:L,floatingStyles:R,placement:z,isPositioned:ee,middlewareData:B}=vt({strategy:`fixed`,placement:M,whileElementsMounted:$((...e)=>it(...e,{animationFrame:b===`always`}),`whileElementsMounted`),elements:{reference:C.anchor},middleware:[bt({mainAxis:o+j,alignmentAxis:f}),h&&xt({mainAxis:!0,crossAxis:!1,limiter:v===`partial`?St():void 0,...I}),h&&Ct({...I}),wt({...I,apply:$(({elements:e,rects:t,availableWidth:n,availableHeight:r})=>{let{width:i,height:a}=t.reference,o=e.floating.style;o.setProperty(`--radix-popper-available-width`,`${n}px`),o.setProperty(`--radix-popper-available-height`,`${r}px`),o.setProperty(`--radix-popper-anchor-width`,`${i}px`),o.setProperty(`--radix-popper-anchor-height`,`${a}px`)},`apply`)}),D&&Et({element:D,padding:p}),Kt({arrowWidth:A,arrowHeight:j}),y&&Tt({strategy:`referenceHidden`,...I,boundary:F?I.boundary:void 0})]}),V=C.setPlacementState;s(()=>(V(z),()=>{V(void 0)}),[z,V]);let[te,ne]=qt(z),re=c(x);s(()=>{ee&&re?.()},[ee,re]);let ie=B.arrow?.x,ae=B.arrow?.y,oe=B.arrow?.centerOffset!==0,[se,ce]=d.useState();return s(()=>{w&&ce(window.getComputedStyle(w).zIndex)},[w]),(0,u.jsx)(`div`,{ref:L.setFloating,"data-radix-popper-content-wrapper":``,style:{...R,transform:ee?R.transform:`translate(0, -200%)`,minWidth:`max-content`,zIndex:se,"--radix-popper-transform-origin":[B.transformOrigin?.x,B.transformOrigin?.y].join(` `),...B.hide?.referenceHidden&&{visibility:`hidden`,pointerEvents:`none`}},dir:e.dir,children:(0,u.jsx)(zt,{scope:n,placedSide:te,placedAlign:ne,onArrowChange:O,arrowX:ie,arrowY:ae,shouldHideArrow:oe,children:(0,u.jsx)(a.div,{"data-side":te,"data-align":ne,...S,ref:E,style:{...S.style,animation:ee?S.style?.animation:`none`}})})})},`PopperContent`)),Ht=`PopperArrow`,Ut={top:`bottom`,right:`left`,bottom:`top`,left:`right`},Wt=d.forwardRef($(function(e,t){let{__scopePopper:n,...r}=e,i=Bt(Ht,n),a=Ut[i.placedSide];return(0,u.jsx)(`span`,{ref:i.onArrowChange,style:{position:`absolute`,left:i.arrowX,top:i.arrowY,[a]:0,transformOrigin:{top:``,right:`0 0`,bottom:`center 0`,left:`100% 0`}[i.placedSide],transform:{top:`translateY(100%)`,right:`translateY(50%) rotate(90deg) translateX(-50%)`,bottom:`rotate(180deg)`,left:`translateY(50%) rotate(-90deg) translateX(50%)`}[i.placedSide],visibility:i.shouldHideArrow?`hidden`:void 0},children:(0,u.jsx)(Ot,{...r,ref:t,style:{...r.style,display:`block`}})})},`PopperArrow`));function Gt(e){return e!==null}$(Gt,`isNotNull`);var Kt=$(e=>({name:`transformOrigin`,options:e,fn(t){let{placement:n,rects:r,middlewareData:i}=t,a=i.arrow?.centerOffset!==0,o=a?0:e.arrowWidth,s=a?0:e.arrowHeight,[c,l]=qt(n),u={start:`0%`,center:`50%`,end:`100%`}[l],d=(i.arrow?.x??0)+o/2,f=(i.arrow?.y??0)+s/2,p=``,m=``;return c===`bottom`?(p=a?u:`${d}px`,m=`${-s}px`):c===`top`?(p=a?u:`${d}px`,m=`${r.floating.height+s}px`):c===`right`?(p=`${-s}px`,m=a?u:`${f}px`):c===`left`&&(p=`${r.floating.width+s}px`,m=a?u:`${f}px`),{data:{x:p,y:m}}}}),`transformOrigin`);function qt(e){let[t,n=`center`]=e.split(`-`);return[t,n]}$(qt,`getSideAndAlignFromPlacement`);var Jt=Ft,Yt=Lt,Xt=Vt,Zt=Wt;export{Mt as a,Jt as i,Zt as n,Xt as r,Yt as t};
@@ -0,0 +1,41 @@
1
+ import{_ as e,m as t}from"./ui-store-DWSBgCoR.js";import{b as n,c as r,l as i,p as a,s as o,u as s}from"./button-BGQhw-yz.js";var c=e(t(),1),l=i(),u=Object.defineProperty,d=(e,t)=>u(e,`name`,{value:t,configurable:!0});function f(e,t){let n=c.createContext(t);n.displayName=e+`Context`;let r=d(e=>{let{children:t,...r}=e,i=c.useMemo(()=>r,Object.values(r));return(0,l.jsx)(n.Provider,{value:i,children:t})},`Provider`);r.displayName=e+`Provider`;function i(r,i={}){let{optional:a=!1}=i,o=c.useContext(n);if(o)return o;if(t!==void 0)return t;if(!a)throw Error(`\`${r}\` must be used within \`${e}\``)}return d(i,`useContext`),[r,i]}d(f,`createContext`);function p(e,t=[]){let n=[];function r(t,r){let i=c.createContext(r);i.displayName=t+`Context`;let a=n.length;n=[...n,r];let o=d(t=>{let{scope:n,children:r,...o}=t,s=n?.[e]?.[a]||i,u=c.useMemo(()=>o,Object.values(o));return(0,l.jsx)(s.Provider,{value:u,children:r})},`Provider`);o.displayName=t+`Provider`;function s(n,o,s={}){let{optional:l=!1}=s,u=o?.[e]?.[a]||i,d=c.useContext(u);if(d)return d;if(r!==void 0)return r;if(!l)throw Error(`\`${n}\` must be used within \`${t}\``)}return d(s,`useContext`),[o,s]}d(r,`createContext`);let i=d(()=>{let t=n.map(e=>c.createContext(e));return d(function(n){let r=n?.[e]||t;return c.useMemo(()=>({[`__scope${e}`]:{...n,[e]:r}}),[n,r])},`useScope`)},`createScope`);return i.scopeName=e,[r,m(i,...t)]}d(p,`createContextScope`);function m(...e){let t=e[0];if(e.length===1)return t;let n=d(()=>{let n=e.map(e=>({useScope:e(),scopeName:e.scopeName}));return d(function(e){let r=n.reduce((t,{useScope:n,scopeName:r})=>{let i=n(e)[`__scope${r}`];return{...t,...i}},{});return c.useMemo(()=>({[`__scope${t.scopeName}`]:r}),[r])},`useComposedScopes`)},`createScope`);return n.scopeName=t.scopeName,n}d(m,`composeContextScopes`);var h=Object.defineProperty,g=(e,t)=>h(e,`name`,{value:t,configurable:!0}),_=!!(typeof window<`u`&&window.document&&window.document.createElement);function v(e,t,{checkForDefaultPrevented:n=!0}={}){return g(function(r){if(e?.(r),n===!1||!r||!r.defaultPrevented)return t?.(r)},`handleEvent`)}g(v,`composeEventHandlers`);function ee(e){if(!_)throw Error(`Cannot access window outside of the DOM`);return e?.ownerDocument?.defaultView??window}g(ee,`getOwnerWindow`);function y(e){if(!_)throw Error(`Cannot access document outside of the DOM`);return e?.ownerDocument??document}g(y,`getOwnerDocument`);function b(e,t=!1){let{activeElement:n}=y(e);if(!n?.nodeName)return null;if(x(n)&&n.contentDocument)return b(n.contentDocument.body,t);if(t){let e=n.getAttribute(`aria-activedescendant`);if(e){let t=y(n).getElementById(e);if(t)return t}}return n}g(b,`getActiveElement`);function x(e){return e.tagName===`IFRAME`}g(x,`isFrame`);var S=globalThis?.document?c.useLayoutEffect:()=>{},C=Object.defineProperty,te=(e,t)=>C(e,`name`,{value:t,configurable:!0}),w=c.useEffectEvent,T=c.useInsertionEffect;function ne(e){if(typeof w==`function`)return w(e);let t=c.useRef(()=>{throw Error(`Cannot call an event handler while rendering.`)});return typeof T==`function`?T(()=>{t.current=e}):S(()=>{t.current=e}),c.useMemo(()=>((...e)=>t.current?.(...e)),[])}te(ne,`useEffectEvent`);var re=Object.defineProperty,E=(e,t)=>re(e,`name`,{value:t,configurable:!0}),D=c.useInsertionEffect||S;function ie({prop:e,defaultProp:t,onChange:n=E(()=>{},`onChange`),caller:r}){let[i,a,o]=ae({defaultProp:t,onChange:n}),s=e!==void 0;return[s?e:i,c.useCallback(t=>{if(s){let n=oe(t)?t(e):t;n!==e&&o.current?.(n)}else a(t)},[s,e,a,o])]}E(ie,`useControllableState`);function ae({defaultProp:e,onChange:t}){let[n,r]=c.useState(e),i=c.useRef(n),a=c.useRef(t);return D(()=>{a.current=t},[t]),c.useEffect(()=>{i.current!==n&&(a.current?.(n),i.current=n)},[n,i]),[n,r,a]}E(ae,`useUncontrolledState`);function oe(e){return typeof e==`function`}E(oe,`isFunction`);var se=Symbol(`RADIX:SYNC_STATE`);function ce(e,t,n,r){let{prop:i,defaultProp:a,onChange:o,caller:s}=t,l=i!==void 0,u=ne(o),d=[{...n,state:a}];r&&d.push(r);let[f,p]=c.useReducer((t,n)=>{if(n.type===se)return{...t,state:n.state};let r=e(t,n);return l&&!Object.is(r.state,t.state)&&u(r.state),r},...d),m=f.state,h=c.useRef(m);c.useEffect(()=>{h.current!==m&&(h.current=m,l||u(m))},[m,h,l]);let g=c.useMemo(()=>i===void 0?f:{...f,state:i},[f,i]);return c.useEffect(()=>{l&&!Object.is(i,f.state)&&p({type:se,state:i})},[i,f.state,l]),[g,p]}E(ce,`useControllableStateReducer`);var le=e(n(),1),ue=Object.defineProperty,O=(e,t)=>ue(e,`name`,{value:t,configurable:!0});function de(e,t){return c.useReducer((e,n)=>t[e][n]??e,e)}O(de,`useStateMachine`);var k=O(e=>{let{present:t,children:n}=e,r=fe(t),i=typeof n==`function`?n({present:r.isPresent}):c.Children.only(n),a=me(r.ref,he(i));return typeof n==`function`||r.isPresent?c.cloneElement(i,{ref:a}):null},`Presence`);function fe(e){let[t,n]=c.useState(),r=c.useRef(null),i=c.useRef(e),a=c.useRef(`none`),o=c.useRef(void 0),[s,l]=de(e?`mounted`:`unmounted`,{mounted:{UNMOUNT:`unmounted`,ANIMATION_OUT:`unmountSuspended`},unmountSuspended:{MOUNT:`mounted`,ANIMATION_END:`unmounted`},unmounted:{MOUNT:`mounted`}});return c.useEffect(()=>{s===`mounted`?(a.current=o.current??A(r.current),o.current=void 0):a.current=`none`},[s]),S(()=>{let t=r.current,n=i.current;if(n!==e){let r=a.current,s=A(t);e?(o.current=s,l(`MOUNT`)):s===`none`||t?.display===`none`?l(`UNMOUNT`):l(n&&r!==s?`ANIMATION_OUT`:`UNMOUNT`),i.current=e}},[e,l]),S(()=>{if(t){let e,n=t.ownerDocument.defaultView??window,o=O(a=>{let o=A(r.current).includes(CSS.escape(a.animationName));if(a.target===t&&o&&(l(`ANIMATION_END`),!i.current)){let r=t.style.animationFillMode;t.style.animationFillMode=`forwards`,e=n.setTimeout(()=>{t.style.animationFillMode===`forwards`&&(t.style.animationFillMode=r)})}},`handleAnimationEnd`),s=O(e=>{e.target===t&&(a.current=A(r.current))},`handleAnimationStart`);return t.addEventListener(`animationstart`,s),t.addEventListener(`animationcancel`,o),t.addEventListener(`animationend`,o),()=>{n.clearTimeout(e),t.removeEventListener(`animationstart`,s),t.removeEventListener(`animationcancel`,o),t.removeEventListener(`animationend`,o)}}l(`ANIMATION_END`)},[t,l]),{isPresent:[`mounted`,`unmountSuspended`].includes(s),ref:c.useCallback(e=>{if(e){let t=getComputedStyle(e);r.current=t,o.current=A(t)}else r.current=null;n(e)},[])}}O(fe,`usePresence`);function pe(e,t){if(typeof e==`function`)return e(t);e!=null&&(e.current=t)}O(pe,`setRef`);function me(...e){let t=c.useRef(e);return t.current=e,c.useCallback(e=>{let n=t.current,r=!1,i=n.map(t=>{let n=pe(t,e);return!r&&typeof n==`function`&&(r=!0),n});if(r)return()=>{for(let e=0;e<i.length;e++){let t=i[e];typeof t==`function`?t():pe(n[e],null)}}},[])}O(me,`useStableComposedRefs`);function A(e){return e?.animationName||`none`}O(A,`getAnimationName`);function he(e){let t=Object.getOwnPropertyDescriptor(e.props,`ref`)?.get,n=t&&`isReactWarning`in t&&t.isReactWarning;return n?e.ref:(t=Object.getOwnPropertyDescriptor(e,`ref`)?.get,n=t&&`isReactWarning`in t&&t.isReactWarning,n?e.props.ref:e.props.ref||e.ref)}O(he,`getElementRef`);var ge=Object.defineProperty,_e=(e,t)=>ge(e,`name`,{value:t,configurable:!0}),ve=c.useId||(()=>void 0),ye=0;function j(e){let[t,n]=c.useState(ve());return S(()=>{e||n(e=>e??String(ye++))},[e]),e||(t?`radix-${t}`:``)}_e(j,`useId`);var be=Object.defineProperty,xe=(e,t)=>be(e,`name`,{value:t,configurable:!0});function M(e){let t=c.useRef(e);return c.useEffect(()=>{t.current=e}),c.useMemo(()=>((...e)=>t.current?.(...e)),[])}xe(M,`useCallbackRef`);var Se=Object.defineProperty,N=(e,t)=>Se(e,`name`,{value:t,configurable:!0}),Ce=`dismissableLayer.update`,we=`dismissableLayer.pointerDownOutside`,Te=`dismissableLayer.focusOutside`,Ee,De=c.createContext({layers:new Set,layersWithOutsidePointerEventsDisabled:new Set,branches:new Set,dismissableSurfaces:new Set}),Oe=c.forwardRef(N(function(e,t){let{disableOutsidePointerEvents:n=!1,deferPointerDownOutside:r=!1,onEscapeKeyDown:i,onPointerDownOutside:s,onFocusOutside:u,onInteractOutside:d,onDismiss:f,...p}=e,m=c.useContext(De),[h,g]=c.useState(null),_=h?.ownerDocument??globalThis?.document,[,ee]=c.useState({}),y=a(t,g),b=Array.from(m.layers),[x]=[...m.layersWithOutsidePointerEventsDisabled].slice(-1),S=x?b.indexOf(x):-1,C=h?b.indexOf(h):-1,te=m.layersWithOutsidePointerEventsDisabled.size>0,w=C>=S,T=c.useRef(!1),ne=je(e=>{s?.(e),d?.(e),e.defaultPrevented||f?.()},{ownerDocument:_,deferPointerDownOutside:r,isDeferredPointerDownOutsideRef:T,dismissableSurfaces:m.dismissableSurfaces,shouldHandlePointerDownOutside:c.useCallback(e=>{if(!(e instanceof Node))return!1;let t=[...m.branches].some(t=>t.contains(e));return w&&!t},[m.branches,w])}),re=Me(e=>{if(r&&T.current)return;let t=e.target;[...m.branches].some(e=>e.contains(t))||(u?.(e),d?.(e),e.defaultPrevented||f?.())},_),E=h?C===b.length-1:!1,D=M(e=>{e.key===`Escape`&&(i?.(e),!e.defaultPrevented&&f&&(e.preventDefault(),f()))});return c.useEffect(()=>{if(E)return _.addEventListener(`keydown`,D,{capture:!0}),()=>_.removeEventListener(`keydown`,D,{capture:!0})},[_,E,D]),c.useEffect(()=>{if(h)return n&&(m.layersWithOutsidePointerEventsDisabled.size===0&&(Ee=_.body.style.pointerEvents,_.body.style.pointerEvents=`none`),m.layersWithOutsidePointerEventsDisabled.add(h)),m.layers.add(h),Ne(),()=>{n&&(m.layersWithOutsidePointerEventsDisabled.delete(h),m.layersWithOutsidePointerEventsDisabled.size===0&&(_.body.style.pointerEvents=Ee))}},[h,_,n,m]),c.useEffect(()=>()=>{h&&(m.layers.delete(h),m.layersWithOutsidePointerEventsDisabled.delete(h),Ne())},[h,m]),c.useEffect(()=>{let e=N(()=>ee({}),`handleUpdate`);return document.addEventListener(Ce,e),()=>document.removeEventListener(Ce,e)},[]),(0,l.jsx)(o.div,{...p,ref:y,style:{pointerEvents:te?w?`auto`:`none`:void 0,...e.style},onFocusCapture:v(e.onFocusCapture,re.onFocusCapture),onBlurCapture:v(e.onBlurCapture,re.onBlurCapture),onPointerDownCapture:v(e.onPointerDownCapture,ne.onPointerDownCapture)})},`DismissableLayer`));function ke(){let e=c.useContext(De),[t,n]=c.useState(null);return c.useEffect(()=>{if(t)return e.dismissableSurfaces.add(t),()=>{e.dismissableSurfaces.delete(t)}},[t,e.dismissableSurfaces]),n}N(ke,`useDismissableLayerSurface`);var Ae=N(()=>!0,`IS_TRUE`);function je(e,t){let{ownerDocument:n=globalThis?.document,deferPointerDownOutside:r=!1,isDeferredPointerDownOutsideRef:i,dismissableSurfaces:a,shouldHandlePointerDownOutside:o=Ae}=t,s=M(e),l=c.useRef(!1),u=c.useRef(!1),d=c.useRef(new Map),f=c.useRef(()=>{});return c.useEffect(()=>{function e(){u.current=!1,i.current=!1,d.current.clear()}N(e,`resetOutsideInteraction`);function t(){return Array.from(d.current.values()).some(Boolean)}N(t,`isOutsideInteractionIntercepted`);function c(e){if(!u.current)return;let t=e.target;t instanceof Node&&[...a].some(e=>e.contains(t))||d.current.set(e.type,!0),e.type===`click`&&window.setTimeout(()=>{u.current&&f.current()},0)}N(c,`handleInteractionCapture`);function p(e){u.current&&d.current.set(e.type,!1)}N(p,`handleInteractionBubble`);let m=N(a=>{if(a.target&&!l.current){let c=function(){n.removeEventListener(`click`,f.current);let r=t();e(),r||Pe(we,s,p,{discrete:!0})};if(N(c,`handleAndDispatchPointerDownOutsideEvent`),!o(a.target)){n.removeEventListener(`click`,f.current),e(),l.current=!1;return}let p={originalEvent:a};u.current=!0,i.current=r&&a.button===0,d.current.clear(),!r||a.button!==0?c():(n.removeEventListener(`click`,f.current),f.current=c,n.addEventListener(`click`,f.current,{once:!0}))}else n.removeEventListener(`click`,f.current),e();l.current=!1},`handlePointerDown`),h=[`pointerup`,`mousedown`,`mouseup`,`touchstart`,`touchend`,`click`];for(let e of h)n.addEventListener(e,c,!0),n.addEventListener(e,p);let g=window.setTimeout(()=>{n.addEventListener(`pointerdown`,m)},0);return()=>{window.clearTimeout(g),n.removeEventListener(`pointerdown`,m),n.removeEventListener(`click`,f.current);for(let e of h)n.removeEventListener(e,c,!0),n.removeEventListener(e,p)}},[n,s,r,i,a,o]),{onPointerDownCapture:N(()=>l.current=!0,`onPointerDownCapture`)}}N(je,`usePointerDownOutside`);function Me(e,t=globalThis?.document){let n=M(e),r=c.useRef(!1);return c.useEffect(()=>{let e=N(e=>{e.target&&!r.current&&Pe(Te,n,{originalEvent:e},{discrete:!1})},`handleFocus`);return t.addEventListener(`focusin`,e),()=>t.removeEventListener(`focusin`,e)},[t,n]),{onFocusCapture:N(()=>r.current=!0,`onFocusCapture`),onBlurCapture:N(()=>r.current=!1,`onBlurCapture`)}}N(Me,`useFocusOutside`);function Ne(){let e=new CustomEvent(Ce);document.dispatchEvent(e)}N(Ne,`dispatchUpdate`);function Pe(e,t,n,{discrete:i}){let a=n.originalEvent.target,o=new CustomEvent(e,{bubbles:!1,cancelable:!0,detail:n});t&&a.addEventListener(e,t,{once:!0}),i?r(a,o):a.dispatchEvent(o)}N(Pe,`handleAndDispatchCustomEvent`);var Fe=Object.defineProperty,P=(e,t)=>Fe(e,`name`,{value:t,configurable:!0}),Ie=`focusScope.autoFocusOnMount`,Le=`focusScope.autoFocusOnUnmount`,Re={bubbles:!1,cancelable:!0},ze=c.forwardRef(P(function(e,t){let{loop:n=!1,trapped:r=!1,onMountAutoFocus:i,onUnmountAutoFocus:s,...u}=e,[d,f]=c.useState(null),p=M(i),m=M(s),h=c.useRef(null),g=a(t,f),_=c.useRef({paused:!1,pause(){this.paused=!0},resume(){this.paused=!1}}).current;c.useEffect(()=>{if(r){let e=function(e){if(_.paused||!d)return;let t=e.target;d.contains(t)?h.current=t:F(h.current,{select:!0})},t=function(e){if(_.paused||!d)return;let t=e.relatedTarget;t!==null&&(d.contains(t)||F(h.current,{select:!0}))},n=function(e){if(document.activeElement===document.body)for(let t of e)t.removedNodes.length>0&&F(d)};P(e,`handleFocusIn`),P(t,`handleFocusOut`),P(n,`handleMutations`),document.addEventListener(`focusin`,e),document.addEventListener(`focusout`,t);let r=new MutationObserver(n);return d&&r.observe(d,{childList:!0,subtree:!0}),()=>{document.removeEventListener(`focusin`,e),document.removeEventListener(`focusout`,t),r.disconnect()}}},[r,d,_.paused]),c.useEffect(()=>{if(d){Ke.add(_);let e=document.activeElement;if(!d.contains(e)){let t=new CustomEvent(Ie,Re);d.addEventListener(Ie,p),d.dispatchEvent(t),t.defaultPrevented||(Be(Ye(He(d)),{select:!0}),document.activeElement===e&&F(d))}return()=>{d.removeEventListener(Ie,p),setTimeout(()=>{let t=new CustomEvent(Le,Re);d.addEventListener(Le,m),d.dispatchEvent(t),t.defaultPrevented||F(e??document.body,{select:!0}),d.removeEventListener(Le,m),Ke.remove(_)},0)}}},[d,p,m,_]);let v=c.useCallback(e=>{if(!n&&!r||_.paused)return;let t=e.key===`Tab`&&!e.altKey&&!e.ctrlKey&&!e.metaKey,i=document.activeElement;if(t&&i){let t=e.currentTarget,[r,a]=Ve(t);r&&a?!e.shiftKey&&i===a?(e.preventDefault(),n&&F(r,{select:!0})):e.shiftKey&&i===r&&(e.preventDefault(),n&&F(a,{select:!0})):i===t&&e.preventDefault()}},[n,r,_.paused]);return(0,l.jsx)(o.div,{tabIndex:-1,...u,ref:g,onKeyDown:v})},`FocusScope`));function Be(e,{select:t=!1}={}){let n=document.activeElement;for(let r of e)if(F(r,{select:t}),document.activeElement!==n)return}P(Be,`focusFirst`);function Ve(e){let t=He(e);return[Ue(t,e),Ue(t.reverse(),e)]}P(Ve,`getTabbableEdges`);function He(e){let t=[],n=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,{acceptNode:P(e=>{let t=e.tagName===`INPUT`&&e.type===`hidden`;return e.disabled||e.hidden||t?NodeFilter.FILTER_SKIP:e.tabIndex>=0?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP},`acceptNode`)});for(;n.nextNode();)t.push(n.currentNode);return t}P(He,`getTabbableCandidates`);function Ue(e,t){let n=typeof t.checkVisibility==`function`&&t.checkVisibility({checkVisibilityCSS:!0});for(let r of e)if(!(n?!r.checkVisibility({checkVisibilityCSS:!0}):We(r,{upTo:t})))return r}P(Ue,`findVisible`);function We(e,{upTo:t}){if(getComputedStyle(e).visibility===`hidden`)return!0;for(;e;){if(t!==void 0&&e===t)return!1;if(getComputedStyle(e).display===`none`)return!0;e=e.parentElement}return!1}P(We,`isHidden`);function Ge(e){return e instanceof HTMLInputElement&&`select`in e}P(Ge,`isSelectableInput`);function F(e,{select:t=!1}={}){if(e&&e.focus){let n=document.activeElement;e.focus({preventScroll:!0}),e!==n&&Ge(e)&&t&&e.select()}}P(F,`focus`);var Ke=qe();function qe(){let e=[];return{add(t){let n=e[0];t!==n&&n?.pause(),e=Je(e,t),e.unshift(t)},remove(t){e=Je(e,t),e[0]?.resume()}}}P(qe,`createFocusScopesStack`);function Je(e,t){let n=[...e],r=n.indexOf(t);return r!==-1&&n.splice(r,1),n}P(Je,`arrayRemove`);function Ye(e){return e.filter(e=>e.tagName!==`A`)}P(Ye,`removeLinks`);var Xe=Object.defineProperty,Ze=c.forwardRef(((e,t)=>Xe(e,`name`,{value:t,configurable:!0}))(function(e,t){let{container:n,...r}=e,[i,a]=c.useState(!1);S(()=>a(!0),[]);let s=n||i&&globalThis?.document?.body;return s?le.createPortal((0,l.jsx)(o.div,{...r,ref:t}),s):null},`Portal`)),Qe=Object.defineProperty,$e=(e,t)=>Qe(e,`name`,{value:t,configurable:!0}),I=0,L=null;function et(e){return R(),e.children}$e(et,`FocusGuards`);function R(){c.useEffect(()=>{L||={start:tt(),end:tt()};let{start:e,end:t}=L;return document.body.firstElementChild!==e&&document.body.insertAdjacentElement(`afterbegin`,e),document.body.lastElementChild!==t&&document.body.insertAdjacentElement(`beforeend`,t),I++,()=>{I===1&&(L?.start.remove(),L?.end.remove(),L=null),I=Math.max(0,I-1)}},[])}$e(R,`useFocusGuards`);function tt(){let e=document.createElement(`span`);return e.setAttribute(`data-radix-focus-guard`,``),e.tabIndex=0,e.style.outline=`none`,e.style.opacity=`0`,e.style.position=`fixed`,e.style.pointerEvents=`none`,e}$e(tt,`createFocusGuard`);var z=function(){return z=Object.assign||function(e){for(var t,n=1,r=arguments.length;n<r;n++)for(var i in t=arguments[n],t)Object.prototype.hasOwnProperty.call(t,i)&&(e[i]=t[i]);return e},z.apply(this,arguments)};function nt(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&typeof Object.getOwnPropertySymbols==`function`)for(var i=0,r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]]);return n}function rt(e,t,n){if(n||arguments.length===2)for(var r=0,i=t.length,a;r<i;r++)(a||!(r in t))&&(a||=Array.prototype.slice.call(t,0,r),a[r]=t[r]);return e.concat(a||Array.prototype.slice.call(t))}var B=`right-scroll-bar-position`,V=`width-before-scroll-bar`,it=`with-scroll-bars-hidden`,at=`--removed-body-scroll-bar-size`;function ot(e,t){return typeof e==`function`?e(t):e&&(e.current=t),e}function st(e,t){var n=(0,c.useState)(function(){return{value:e,callback:t,facade:{get current(){return n.value},set current(e){var t=n.value;t!==e&&(n.value=e,n.callback(e,t))}}}})[0];return n.callback=t,n.facade}var ct=typeof window<`u`?c.useLayoutEffect:c.useEffect,lt=new WeakMap;function ut(e,t){var n=st(t||null,function(t){return e.forEach(function(e){return ot(e,t)})});return ct(function(){var t=lt.get(n);if(t){var r=new Set(t),i=new Set(e),a=n.current;r.forEach(function(e){i.has(e)||ot(e,null)}),i.forEach(function(e){r.has(e)||ot(e,a)})}lt.set(n,e)},[e]),n}function dt(e){return e}function ft(e,t){t===void 0&&(t=dt);var n=[],r=!1;return{read:function(){if(r)throw Error("Sidecar: could not `read` from an `assigned` medium. `read` could be used only with `useMedium`.");return n.length?n[n.length-1]:e},useMedium:function(e){var i=t(e,r);return n.push(i),function(){n=n.filter(function(e){return e!==i})}},assignSyncMedium:function(e){for(r=!0;n.length;){var t=n;n=[],t.forEach(e)}n={push:function(t){return e(t)},filter:function(){return n}}},assignMedium:function(e){r=!0;var t=[];if(n.length){var i=n;n=[],i.forEach(e),t=n}var a=function(){var n=t;t=[],n.forEach(e)},o=function(){return Promise.resolve().then(a)};o(),n={push:function(e){t.push(e),o()},filter:function(e){return t=t.filter(e),n}}}}}function pt(e){e===void 0&&(e={});var t=ft(null);return t.options=z({async:!0,ssr:!1},e),t}var mt=function(e){var t=e.sideCar,n=nt(e,[`sideCar`]);if(!t)throw Error("Sidecar: please provide `sideCar` property to import the right car");var r=t.read();if(!r)throw Error(`Sidecar medium not found`);return c.createElement(r,z({},n))};mt.isSideCarExport=!0;function ht(e,t){return e.useMedium(t),mt}var gt=pt(),_t=function(){},H=c.forwardRef(function(e,t){var n=c.useRef(null),r=c.useState({onScrollCapture:_t,onWheelCapture:_t,onTouchMoveCapture:_t}),i=r[0],a=r[1],o=e.forwardProps,s=e.children,l=e.className,u=e.removeScrollBar,d=e.enabled,f=e.shards,p=e.sideCar,m=e.noRelative,h=e.noIsolation,g=e.inert,_=e.allowPinchZoom,v=e.as,ee=v===void 0?`div`:v,y=e.gapMode,b=nt(e,[`forwardProps`,`children`,`className`,`removeScrollBar`,`enabled`,`shards`,`sideCar`,`noRelative`,`noIsolation`,`inert`,`allowPinchZoom`,`as`,`gapMode`]),x=p,S=ut([n,t]),C=z(z({},b),i);return c.createElement(c.Fragment,null,d&&c.createElement(x,{sideCar:gt,removeScrollBar:u,shards:f,noRelative:m,noIsolation:h,inert:g,setCallbacks:a,allowPinchZoom:!!_,lockRef:n,gapMode:y}),o?c.cloneElement(c.Children.only(s),z(z({},C),{ref:S})):c.createElement(ee,z({},C,{className:l,ref:S}),s))});H.defaultProps={enabled:!0,removeScrollBar:!0,inert:!1},H.classNames={fullWidth:V,zeroRight:B};var vt=function(){if(typeof __webpack_nonce__<`u`)return __webpack_nonce__};function yt(){if(!document)return null;var e=document.createElement(`style`);e.type=`text/css`;var t=vt();return t&&e.setAttribute(`nonce`,t),e}function bt(e,t){e.styleSheet?e.styleSheet.cssText=t:e.appendChild(document.createTextNode(t))}function xt(e){(document.head||document.getElementsByTagName(`head`)[0]).appendChild(e)}var St=function(){var e=0,t=null;return{add:function(n){e==0&&(t=yt())&&(bt(t,n),xt(t)),e++},remove:function(){e--,!e&&t&&(t.parentNode&&t.parentNode.removeChild(t),t=null)}}},Ct=function(){var e=St();return function(t,n){c.useEffect(function(){return e.add(t),function(){e.remove()}},[t&&n])}},wt=function(){var e=Ct();return function(t){var n=t.styles,r=t.dynamic;return e(n,r),null}},Tt={left:0,top:0,right:0,gap:0},Et=function(e){return parseInt(e||``,10)||0},Dt=function(e){var t=window.getComputedStyle(document.body),n=t[e===`padding`?`paddingLeft`:`marginLeft`],r=t[e===`padding`?`paddingTop`:`marginTop`],i=t[e===`padding`?`paddingRight`:`marginRight`];return[Et(n),Et(r),Et(i)]},Ot=function(e){if(e===void 0&&(e=`margin`),typeof window>`u`)return Tt;var t=Dt(e),n=document.documentElement.clientWidth,r=window.innerWidth;return{left:t[0],top:t[1],right:t[2],gap:Math.max(0,r-n+t[2]-t[0])}},kt=wt(),U=`data-scroll-locked`,At=function(e,t,n,r){var i=e.left,a=e.top,o=e.right,s=e.gap;return n===void 0&&(n=`margin`),`
2
+ .${it} {
3
+ overflow: hidden ${r};
4
+ padding-right: ${s}px ${r};
5
+ }
6
+ body[${U}] {
7
+ overflow: hidden ${r};
8
+ overscroll-behavior: contain;
9
+ ${[t&&`position: relative ${r};`,n===`margin`&&`
10
+ padding-left: ${i}px;
11
+ padding-top: ${a}px;
12
+ padding-right: ${o}px;
13
+ margin-left:0;
14
+ margin-top:0;
15
+ margin-right: ${s}px ${r};
16
+ `,n===`padding`&&`padding-right: ${s}px ${r};`].filter(Boolean).join(``)}
17
+ }
18
+
19
+ .${B} {
20
+ right: ${s}px ${r};
21
+ }
22
+
23
+ .${V} {
24
+ margin-right: ${s}px ${r};
25
+ }
26
+
27
+ .${B} .${B} {
28
+ right: 0 ${r};
29
+ }
30
+
31
+ .${V} .${V} {
32
+ margin-right: 0 ${r};
33
+ }
34
+
35
+ body[${U}] {
36
+ ${at}: ${s}px;
37
+ }
38
+ `},jt=function(){var e=parseInt(document.body.getAttribute(`data-scroll-locked`)||`0`,10);return isFinite(e)?e:0},Mt=function(){c.useEffect(function(){return document.body.setAttribute(U,(jt()+1).toString()),function(){var e=jt()-1;e<=0?document.body.removeAttribute(U):document.body.setAttribute(U,e.toString())}},[])},Nt=function(e){var t=e.noRelative,n=e.noImportant,r=e.gapMode,i=r===void 0?`margin`:r;Mt();var a=c.useMemo(function(){return Ot(i)},[i]);return c.createElement(kt,{styles:At(a,!t,i,n?``:`!important`)})},Pt=!1;if(typeof window<`u`)try{var W=Object.defineProperty({},"passive",{get:function(){return Pt=!0,!0}});window.addEventListener(`test`,W,W),window.removeEventListener(`test`,W,W)}catch{Pt=!1}var G=Pt?{passive:!1}:!1,Ft=function(e){return e.tagName===`TEXTAREA`},It=function(e,t){if(!(e instanceof Element))return!1;var n=window.getComputedStyle(e);return n[t]!==`hidden`&&!(n.overflowY===n.overflowX&&!Ft(e)&&n[t]===`visible`)},Lt=function(e){return It(e,`overflowY`)},Rt=function(e){return It(e,`overflowX`)},zt=function(e,t){var n=t.ownerDocument,r=t;do{if(typeof ShadowRoot<`u`&&r instanceof ShadowRoot&&(r=r.host),Ht(e,r)){var i=Ut(e,r);if(i[1]>i[2])return!0}r=r.parentNode}while(r&&r!==n.body);return!1},Bt=function(e){return[e.scrollTop,e.scrollHeight,e.clientHeight]},Vt=function(e){return[e.scrollLeft,e.scrollWidth,e.clientWidth]},Ht=function(e,t){return e===`v`?Lt(t):Rt(t)},Ut=function(e,t){return e===`v`?Bt(t):Vt(t)},Wt=function(e,t){return e===`h`&&t===`rtl`?-1:1},Gt=function(e,t,n,r,i){var a=Wt(e,window.getComputedStyle(t).direction),o=a*r,s=n.target,c=t.contains(s),l=!1,u=o>0,d=0,f=0;do{if(!s)break;var p=Ut(e,s),m=p[0],h=p[1]-p[2]-a*m;(m||h)&&Ht(e,s)&&(d+=h,f+=m);var g=s.parentNode;s=g&&g.nodeType===Node.DOCUMENT_FRAGMENT_NODE?g.host:g}while(!c&&s!==document.body||c&&(t.contains(s)||t===s));return(u&&(i&&Math.abs(d)<1||!i&&o>d)||!u&&(i&&Math.abs(f)<1||!i&&-o>f))&&(l=!0),l},K=function(e){return`changedTouches`in e?[e.changedTouches[0].clientX,e.changedTouches[0].clientY]:[0,0]},Kt=function(e){return[e.deltaX,e.deltaY]},qt=function(e){return e&&`current`in e?e.current:e},Jt=function(e,t){return e[0]===t[0]&&e[1]===t[1]},Yt=function(e){return`
39
+ .block-interactivity-${e} {pointer-events: none;}
40
+ .allow-interactivity-${e} {pointer-events: all;}
41
+ `},Xt=0,q=[];function Zt(e){var t=c.useRef([]),n=c.useRef([0,0]),r=c.useRef(),i=c.useState(Xt++)[0],a=c.useState(wt)[0],o=c.useRef(e);c.useEffect(function(){o.current=e},[e]),c.useEffect(function(){if(e.inert){document.body.classList.add(`block-interactivity-${i}`);var t=rt([e.lockRef.current],(e.shards||[]).map(qt),!0).filter(Boolean);return t.forEach(function(e){return e.classList.add(`allow-interactivity-${i}`)}),function(){document.body.classList.remove(`block-interactivity-${i}`),t.forEach(function(e){return e.classList.remove(`allow-interactivity-${i}`)})}}},[e.inert,e.lockRef.current,e.shards]);var s=c.useCallback(function(e,t){if(`touches`in e&&e.touches.length===2||e.type===`wheel`&&e.ctrlKey)return!o.current.allowPinchZoom;var i=K(e),a=n.current,s=`deltaX`in e?e.deltaX:a[0]-i[0],c=`deltaY`in e?e.deltaY:a[1]-i[1],l,u=e.target,d=Math.abs(s)>Math.abs(c)?`h`:`v`;if(`touches`in e&&d===`h`&&u.type===`range`)return!1;var f=window.getSelection(),p=f&&f.anchorNode;if(p&&(p===u||p.contains(u)))return!1;var m=zt(d,u);if(!m)return!0;if(m?l=d:(l=d===`v`?`h`:`v`,m=zt(d,u)),!m)return!1;if(!r.current&&`changedTouches`in e&&(s||c)&&(r.current=l),!l)return!0;var h=r.current||l;return Gt(h,t,e,h===`h`?s:c,!0)},[]),l=c.useCallback(function(e){var n=e;if(!(!q.length||q[q.length-1]!==a)){var r=`deltaY`in n?Kt(n):K(n),i=t.current.filter(function(e){return e.name===n.type&&(e.target===n.target||n.target===e.shadowParent)&&Jt(e.delta,r)})[0];if(i&&i.should){n.cancelable&&n.preventDefault();return}if(!i){var c=(o.current.shards||[]).map(qt).filter(Boolean).filter(function(e){return e.contains(n.target)});(c.length>0?s(n,c[0]):!o.current.noIsolation)&&n.cancelable&&n.preventDefault()}}},[]),u=c.useCallback(function(e,n,r,i){var a={name:e,delta:n,target:r,should:i,shadowParent:Qt(r)};t.current.push(a),setTimeout(function(){t.current=t.current.filter(function(e){return e!==a})},1)},[]),d=c.useCallback(function(e){n.current=K(e),r.current=void 0},[]),f=c.useCallback(function(t){u(t.type,Kt(t),t.target,s(t,e.lockRef.current))},[]),p=c.useCallback(function(t){u(t.type,K(t),t.target,s(t,e.lockRef.current))},[]);c.useEffect(function(){return q.push(a),e.setCallbacks({onScrollCapture:f,onWheelCapture:f,onTouchMoveCapture:p}),document.addEventListener(`wheel`,l,G),document.addEventListener(`touchmove`,l,G),document.addEventListener(`touchstart`,d,G),function(){q=q.filter(function(e){return e!==a}),document.removeEventListener(`wheel`,l,G),document.removeEventListener(`touchmove`,l,G),document.removeEventListener(`touchstart`,d,G)}},[]);var m=e.removeScrollBar,h=e.inert;return c.createElement(c.Fragment,null,h?c.createElement(a,{styles:Yt(i)}):null,m?c.createElement(Nt,{noRelative:e.noRelative,gapMode:e.gapMode}):null)}function Qt(e){for(var t=null;e!==null;)e instanceof ShadowRoot&&(t=e.host,e=e.host),e=e.parentNode;return t}var $t=ht(gt,Zt),en=c.forwardRef(function(e,t){return c.createElement(H,z({},e,{ref:t,sideCar:$t}))});en.classNames=H.classNames;var tn=function(e){return typeof document>`u`?null:(Array.isArray(e)?e[0]:e).ownerDocument.body},J=new WeakMap,Y=new WeakMap,X={},nn=0,rn=function(e){return e&&(e.host||rn(e.parentNode))},an=function(e,t){return t.map(function(t){if(e.contains(t))return t;var n=rn(t);return n&&e.contains(n)?n:(console.error(`aria-hidden`,t,`in not contained inside`,e,`. Doing nothing`),null)}).filter(function(e){return!!e})},on=function(e,t,n,r){var i=an(t,Array.isArray(e)?e:[e]);X[n]||(X[n]=new WeakMap);var a=X[n],o=[],s=new Set,c=new Set(i),l=function(e){!e||s.has(e)||(s.add(e),l(e.parentNode))};i.forEach(l);var u=function(e){!e||c.has(e)||Array.prototype.forEach.call(e.children,function(e){if(s.has(e))u(e);else try{var t=e.getAttribute(r),i=t!==null&&t!==`false`,c=(J.get(e)||0)+1,l=(a.get(e)||0)+1;J.set(e,c),a.set(e,l),o.push(e),c===1&&i&&Y.set(e,!0),l===1&&e.setAttribute(n,`true`),i||e.setAttribute(r,`true`)}catch(t){console.error(`aria-hidden: cannot operate on `,e,t)}})};return u(t),s.clear(),nn++,function(){o.forEach(function(e){var t=J.get(e)-1,i=a.get(e)-1;J.set(e,t),a.set(e,i),t||(Y.has(e)||e.removeAttribute(r),Y.delete(e)),i||e.removeAttribute(n)}),nn--,nn||(J=new WeakMap,J=new WeakMap,Y=new WeakMap,X={})}},sn=function(e,t,n){n===void 0&&(n=`data-aria-hidden`);var r=Array.from(Array.isArray(e)?e:[e]),i=t||tn(e);return i?(r.push.apply(r,Array.from(i.querySelectorAll(`[aria-live], script`))),on(r,i,n,`aria-hidden`)):function(){return null}},cn=Object.defineProperty,Z=(e,t)=>cn(e,`name`,{value:t,configurable:!0}),ln=`Dialog`,[un,dn]=p(ln),[fn,Q]=un(ln),pn=Z(e=>{let{__scopeDialog:t,children:n,open:r,defaultOpen:i,onOpenChange:a,modal:o=!0}=e,s=c.useRef(null),u=c.useRef(null),[d,f]=ie({prop:r,defaultProp:i??!1,onChange:a,caller:ln}),[p,m]=c.useState(0),[h,g]=c.useState(0);return(0,l.jsx)(fn,{scope:t,triggerRef:s,contentRef:u,contentId:j(),titleId:j(),descriptionId:j(),titlePresent:p>0,descriptionPresent:h>0,setTitleCount:m,setDescriptionCount:g,open:d,onOpenChange:f,onOpenToggle:c.useCallback(()=>f(e=>!e),[f]),modal:o,children:n})},`Dialog`),mn=`DialogTrigger`,hn=c.forwardRef(Z(function(e,t){let{__scopeDialog:n,...r}=e,i=Q(mn,n),s=a(t,i.triggerRef);return(0,l.jsx)(o.button,{type:`button`,"aria-haspopup":`dialog`,"aria-expanded":i.open,"aria-controls":i.open?i.contentId:void 0,"data-state":Pn(i.open),...r,ref:s,onClick:v(e.onClick,i.onOpenToggle)})},`DialogTrigger`)),gn=`DialogPortal`,[_n,vn]=un(gn,{forceMount:void 0}),yn=Z(e=>{let{__scopeDialog:t,forceMount:n,children:r,container:i}=e,a=Q(gn,t);return(0,l.jsx)(_n,{scope:t,forceMount:n,children:c.Children.map(r,e=>(0,l.jsx)(k,{present:n||a.open,children:(0,l.jsx)(Ze,{asChild:!0,container:i,children:e})}))})},`DialogPortal`),bn=`DialogOverlay`,xn=c.forwardRef(Z(function(e,t){let n=vn(bn,e.__scopeDialog),{forceMount:r=n.forceMount,...i}=e,a=Q(bn,e.__scopeDialog);return a.modal?(0,l.jsx)(k,{present:r||a.open,children:(0,l.jsx)(Cn,{...i,ref:t})}):null},`DialogOverlay`)),Sn=s(`DialogOverlay.RemoveScroll`),Cn=c.forwardRef(Z(function(e,t){let{__scopeDialog:n,...r}=e,i=Q(bn,n),s=ke(),c=a(t,s);return(0,l.jsx)(en,{as:Sn,allowPinchZoom:!0,shards:[i.contentRef],children:(0,l.jsx)(o.div,{"data-state":Pn(i.open),...r,ref:c,style:{pointerEvents:`auto`,...r.style}})})},`DialogOverlayImpl`)),$=`DialogContent`,wn=c.forwardRef(Z(function(e,t){let n=vn($,e.__scopeDialog),{forceMount:r=n.forceMount,...i}=e,a=Q($,e.__scopeDialog);return(0,l.jsx)(k,{present:r||a.open,children:a.modal?(0,l.jsx)(Tn,{...i,ref:t}):(0,l.jsx)(En,{...i,ref:t})})},`DialogContent`)),Tn=c.forwardRef(Z(function(e,t){let n=Q($,e.__scopeDialog),r=c.useRef(null),i=a(t,n.contentRef,r);return c.useEffect(()=>{let e=r.current;if(e)return sn(e)},[]),(0,l.jsx)(Dn,{...e,ref:i,trapFocus:n.open,disableOutsidePointerEvents:n.open,onCloseAutoFocus:v(e.onCloseAutoFocus,e=>{e.preventDefault(),n.triggerRef.current?.focus()}),onPointerDownOutside:v(e.onPointerDownOutside,e=>{let t=e.detail.originalEvent,n=t.button===0&&t.ctrlKey===!0;(t.button===2||n)&&e.preventDefault()}),onFocusOutside:v(e.onFocusOutside,e=>e.preventDefault())})},`DialogContentModal`)),En=c.forwardRef(Z(function(e,t){let n=Q($,e.__scopeDialog),r=c.useRef(!1),i=c.useRef(!1);return(0,l.jsx)(Dn,{...e,ref:t,trapFocus:!1,disableOutsidePointerEvents:!1,onCloseAutoFocus:t=>{e.onCloseAutoFocus?.(t),t.defaultPrevented||(r.current||n.triggerRef.current?.focus(),t.preventDefault()),r.current=!1,i.current=!1},onInteractOutside:t=>{e.onInteractOutside?.(t),t.defaultPrevented||(r.current=!0,t.detail.originalEvent.type===`pointerdown`&&(i.current=!0));let a=t.target;n.triggerRef.current?.contains(a)&&t.preventDefault(),t.detail.originalEvent.type===`focusin`&&i.current&&t.preventDefault()}})},`DialogContentNonModal`)),Dn=c.forwardRef(Z(function(e,t){let{__scopeDialog:n,trapFocus:r,onOpenAutoFocus:i,onCloseAutoFocus:a,...o}=e,s=Q($,n);return R(),(0,l.jsx)(l.Fragment,{children:(0,l.jsx)(ze,{asChild:!0,loop:!0,trapped:r,onMountAutoFocus:i,onUnmountAutoFocus:a,children:(0,l.jsx)(Oe,{role:`dialog`,id:s.contentId,"aria-describedby":s.descriptionPresent?s.descriptionId:void 0,"aria-labelledby":s.titlePresent?s.titleId:void 0,"data-state":Pn(s.open),...o,ref:t,deferPointerDownOutside:!0,onDismiss:()=>s.onOpenChange(!1)})})})},`DialogContentImpl`)),On=`DialogTitle`,kn=c.forwardRef(Z(function(e,t){let{__scopeDialog:n,...r}=e,i=Q(On,n),{setTitleCount:a}=i;return S(()=>(a(e=>e+1),()=>a(e=>e-1)),[a]),(0,l.jsx)(o.h2,{id:i.titleId,...r,ref:t})},`DialogTitle`)),An=`DialogDescription`,jn=c.forwardRef(Z(function(e,t){let{__scopeDialog:n,...r}=e,i=Q(An,n),{setDescriptionCount:a}=i;return S(()=>(a(e=>e+1),()=>a(e=>e-1)),[a]),(0,l.jsx)(o.p,{id:i.descriptionId,...r,ref:t})},`DialogDescription`)),Mn=`DialogClose`,Nn=c.forwardRef(Z(function(e,t){let{__scopeDialog:n,...r}=e,i=Q(Mn,n);return(0,l.jsx)(o.button,{type:`button`,...r,ref:t,onClick:v(e.onClick,()=>i.onOpenChange(!1))})},`DialogClose`));function Pn(e){return e?`open`:`closed`}Z(Pn,`getState`);export{p as S,j as _,xn as a,S as b,hn as c,en as d,R as f,M as g,Oe as h,jn as i,dn as l,ze as m,Nn as n,yn as o,Ze as p,wn as r,kn as s,pn as t,sn as u,k as v,v as x,ie as y};