const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["static/main-Da4duY4Y.js","static/vendor-monaco-kUzn8ZZg.js","static/vendor-monaco-Cdw5dZYH.css","static/UserAppMain-C6qQslSa.js","static/vendor-ui-DZJzNhfO.js","static/vendor-react-RA0MeLRT.js","static/vendor-data-DipQAKt7.js","static/button-BamSYHGn.js","static/vendor-utils-DxBcq7o1.js","static/button-CP00zwgT.css","static/webviewDetection-BGkn8C8u.js","static/progress-fp-nWkMh.js","static/index-ZHXqJ0xM.js","static/AppLogsAPI-DB6wC6Bb.js","static/domainValidation-C2COoIZ_.js","static/UserAppMain-Dgihpmma.css","static/WebApp-VzhvG0oC.js","static/FiverrChatContext-_Ugn1zgY.js","static/GenericContentSkeleton-BbEg6AJe.js","static/purify.es-CxTuOytG.js","static/GenericContentSkeleton-CrtU-Edf.css","static/SettingsPageSkeleton-DATzMD8v.js","static/NativeMobileApp-D4mAmUkY.js","static/MixPanelTracker-Uv7QiLq2.js"])))=>i.map(i=>d[i]);
import{cK as RP,cl as Go,r as M,l as sy,j as J,cL as zP,P as xr,u as MP,cM as NP,k as qa,cN as zl,m as FP,cO as ly,bx as LP,cP as jP,q as OP,cQ as BP,cR as UP,cS as qP,X as VP,i as W,cT as Lu,cU as cy,cV as $P,cW as WP,cX as GP}from"./vendor-ui-DZJzNhfO.js";import{_ as Pc}from"./vendor-monaco-kUzn8ZZg.js";import{c as dy,t as HP,r as YP}from"./vendor-utils-DxBcq7o1.js";import{g as uy}from"./vendor-data-DipQAKt7.js";function _c(e,a){for(var n=0;n<a.length;n++){const t=a[n];if(typeof t!="string"&&!Array.isArray(t)){for(const i in t)if(i!=="default"&&!(i in e)){const r=Object.getOwnPropertyDescriptor(t,i);r&&Object.defineProperty(e,i,r.get?r:{enumerable:!0,get:()=>t[i]})}}}return Object.freeze(Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}))}(function(){const a=document.createElement("link").relList;if(a&&a.supports&&a.supports("modulepreload"))return;for(const i of document.querySelectorAll('link[rel="modulepreload"]'))t(i);new MutationObserver(i=>{for(const r of i)if(r.type==="childList")for(const o of r.addedNodes)o.tagName==="LINK"&&o.rel==="modulepreload"&&t(o)}).observe(document,{childList:!0,subtree:!0});function n(i){const r={};return i.integrity&&(r.integrity=i.integrity),i.referrerPolicy&&(r.referrerPolicy=i.referrerPolicy),i.crossOrigin==="use-credentials"?r.credentials="include":i.crossOrigin==="anonymous"?r.credentials="omit":r.credentials="same-origin",r}function t(i){if(i.ep)return;i.ep=!0;const r=n(i);fetch(i.href,r)}})();var vs={},bf;function KP(){if(bf)return vs;bf=1;var e=RP();return vs.createRoot=e.createRoot,vs.hydrateRoot=e.hydrateRoot,vs}var py=KP();const my=Go(py),Wge=_c({__proto__:null,default:my},[py]),ZP={sectionTitle:"Kontoeinstellungen",sectionDescription:"Verwalten Sie Ihre persönlichen Kontoeinstellungen und Präferenzen.",heading:"Konto",email:{label:"E-Mail",placeholder:"Keine E-Mail angegeben"},fullName:{label:"Vollständiger Name",placeholder:"Vollständigen Namen eingeben",profileHint:"So erscheinen Sie auf Ihrem öffentlichen Base44-<profileLink>Profil</profileLink>."},phoneNumber:{label:"Telefonnummer",placeholder:"Telefonnummer eingeben",smsConsent:"Durch die Eingabe Ihrer Telefonnummer stimmen Sie zu, SMS-Benachrichtigungen von uns zu erhalten."},defaultAgents:{label:"Standard-Agents",toggleLabel:"Agents standardmäßig für neue Apps aktivieren",description:"Wenn aktiviert, werden Agents für neue Apps automatisch aktiviert, sodass sie autonome Aufgaben ausführen und Tools verwenden können."},defaultTestData:{label:"Standard-Testdaten",toggleLabel:"Testdaten standardmäßig für neue Apps aktivieren",description:"Wenn aktiviert, starten neue Apps mit eingeschalteten Testdaten, damit Sie Änderungen sicher testen können, ohne Live-Daten zu beeinflussen.",upgradeRequired:"Diese Funktion erfordert den Builder-Plan oder höher.",seePlans:"Pläne ansehen"},apiKey:{label:"API-Schlüssel",copyTitle:"API-Schlüssel kopieren",copied:"Kopiert!",regenerate:"Neu generieren",regenerating:"Wird neu generiert...",regenShort:"Neu gen.",regenShortLoading:"Neu gen...",description:"Ihr API-Schlüssel ermöglicht den Zugriff auf Ihren Arbeitsbereich. Teilen Sie ihn nicht mit anderen.",notGenerated:"Noch nicht generiert — klicken Sie auf Regenerieren"},backofficeApiKey:{title:"Backoffice-API-Schlüssel",description:"Verwenden Sie diesen Schlüssel für programmatische Anfragen an den Backoffice-Dienst. Er funktioniert nicht auf dem Plattform-Dienst. Bewahren Sie ihn geheim auf.",yourKey:"Ihr Backoffice-API-Schlüssel",copySuccess:"Backoffice-API-Schlüssel kopiert",copyError:"Backoffice-API-Schlüssel konnte nicht kopiert werden",regenSuccess:"Backoffice-API-Schlüssel neu generiert",regenError:"Fehler beim Neugenerieren: {{error}}",warning:"Durch das Neugenerieren wird der vorherige Schlüssel sofort ungültig. Alle Clients, die ihn verwenden, müssen aktualisiert werden.",existsPlaceholder:"•••••••••••••••••• (Schlüssel vorhanden — nur der Hash wird gespeichert; neu generieren, um einen neuen Schlüssel zu sehen)",showOnceWarning:"Kopieren Sie diesen Schlüssel jetzt. Er wird nur einmal angezeigt und kann später nicht wiederhergestellt werden."},unsavedChanges:"Nicht gespeicherte Änderungen",discard:"Verwerfen",save:"Speichern",saving:"Wird gespeichert...",saveSuccess:"Kontoeinstellungen erfolgreich aktualisiert!",saveError:"Kontoeinstellungen konnten nicht aktualisiert werden: {{error}}",unknownError:"Unbekannter Fehler",apiKeyCopySuccess:"API-Schlüssel in die Zwischenablage kopiert!",apiKeyCopyError:"API-Schlüssel konnte nicht kopiert werden",apiKeyRegenSuccess:"API-Schlüssel erfolgreich neu generiert!",apiKeyRegenError:"API-Schlüssel konnte nicht neu generiert werden: {{error}}"},JP={title:"Zwei-Faktor-Authentifizierung",description:"Fügen Sie beim Anmelden eine zusätzliche Schutzebene hinzu. Bei jeder Anmeldung wird ein Code abgefragt.",twoFactorEnabled:"Zwei-Faktor-Authentifizierung ist aktiviert.",statsLine:"{{used}}/{{total}} Wiederherstellungscodes verwendet · {{devices}} vertrauenswürdige Geräte",totp:{name:"Authentifizierungs-App",description:"Verwenden Sie eine App wie Google Authenticator oder Duo, um sichere Anmeldecodes zu generieren.",setupTitle:"Authentifizierungs-App einrichten",scanQr:"Scannen Sie den QR-Code mit Ihrer Authentifizierungs-App",cantScan:"Code kann nicht gescannt werden? Manuell eingeben:",enterCodeTitle:"Code aus Ihrer Authentifizierungs-App eingeben",enterDigitCode:"6-stelligen Code eingeben",codesRefresh:"Codes werden alle 30 Sekunden aktualisiert.",qrCodeAlt:"QR-Code zur Einrichtung der Authentifizierungs-App",enabled:"Authentifizierungs-App aktiviert",disabled:"Authentifizierungs-App deaktiviert"},sms:{name:"Textnachrichten",description:"Erhalten Sie Anmeldecodes per Textnachricht auf Ihr Telefon.",enterPhone:"Telefonnummer eingeben",phoneLabel:"Telefonnummer",phonePlaceholder:"(555) 000-0000",verificationWillBeSent:"Ein Bestätigungscode wird an diese Nummer gesendet.",verifyPhone:"Telefonnummer bestätigen",codeSentTo:"Ein 6-stelliger Code wurde an {{phone}} gesendet",standardRates:"Es können Standard-Nachrichten- und Datengebühren anfallen.",invalidPhone:"Ungültige Telefonnummer. Bitte überprüfen Sie die Nummer und versuchen Sie es erneut.",enabled:"SMS-MFA aktiviert",disabled:"Textnachrichten deaktiviert"},recovery:{saveTitle:"Wiederherstellungscodes speichern",saveDescription:"Speichern Sie diese Wiederherstellungscodes an einem sicheren Ort. Sie benötigen sie, wenn Sie den Zugriff auf Ihr Telefon oder Ihre Authentifizierungs-App verlieren.",eachCodeOnce:"Jeder Wiederherstellungscode kann nur einmal verwendet werden. Bewahren Sie sie sicher und zugänglich auf.",eachCodeOnceShort:"Jeder Wiederherstellungscode kann nur einmal verwendet werden.",copyAll:"Alle kopieren",download:"Herunterladen",copied:"Kopiert",enterRecoveryCode:"Wiederherstellungscode eingeben"},disable:{title:"Zwei-Faktor-Authentifizierung deaktivieren",turnOff:"Zwei-Faktor-Authentifizierung ausschalten?",turnOffDescription:"Um fortzufahren, müssen Sie sich mit einem an Ihr Telefon gesendeten Code oder einem Wiederherstellungscode verifizieren.",verifyWithPhone:"Mit einem an Ihr Telefon gesendeten Code verifizieren",verifyWithApp:"Code aus Ihrer Authentifizierungs-App eingeben",enterRecoveryToDisable:"Geben Sie einen Ihrer Wiederherstellungscodes ein, um die Zwei-Faktor-Authentifizierung zu deaktivieren.",useRecoveryCode:"Wiederherstellungscode verwenden",verifyViaApp:"Über App verifizieren",verifyAndDisable:"Verifizieren & Deaktivieren"},regenerate:{title:"Wiederherstellungscodes neu generieren",trustedDevicesCount_one:"{{count}} vertrauenswürdiges Gerät",trustedDevicesCount_other:"{{count}} vertrauenswürdige Geräte",codesUsed:"{{used}}/{{total}} Wiederherstellungscodes verwendet",descriptionChoose:"Wählen Sie eine Verifizierungsmethode, um Ihre Wiederherstellungscodes neu zu generieren. Alle bestehenden Codes werden ungültig.",descriptionSms:"Wir senden zur Bestätigung einen Verifizierungscode an Ihr Telefon.",descriptionSmsVerify:"Geben Sie einen Verifizierungscode ein, um Ihre Wiederherstellungscodes neu zu generieren. Alle bestehenden Codes werden ungültig.",descriptionTotpVerify:"Geben Sie einen Verifizierungscode ein, um Ihre Wiederherstellungscodes neu zu generieren. Alle bestehenden Codes werden ungültig.",verifyWithApp:"Code aus Ihrer Authentifizierungs-App eingeben",verifyWithSms:"Mit einem an Ihr Telefon gesendeten Code verifizieren",smsMethodLabel:"SMS-Nachricht",enterCodeLabel:"6-stelligen Code eingeben",helperTotp:"Öffnen Sie Ihre Authentifizierungs-App, um den Code zu erhalten",helperSms:"Geben Sie den an Ihr Telefon gesendeten Code ein",verifyAndRegenerate:"Verifizieren & Neu generieren",enterCode:"Code eingeben"},reauth:{title:"Identität bestätigen",description:"Bestätigen Sie aus Sicherheitsgründen Ihre Identität, bevor Sie {{method}} als Anmeldemethode hinzufügen.",actionTotp:"Geben Sie den 6-stelligen Code aus Ihrer Authentifizierungs-App ein.",actionSms:"Geben Sie den an {{phone}} gesendeten Code ein."},common:{enable:"Aktivieren",enabled:"Aktiviert",cancel:"Abbrechen",close:"Schließen",back:"Zurück",done:"Fertig",verify:"Verifizieren",sendCode:"Code senden",regenerate:"Neu generieren",regenerateRecoveryCodes:"Wiederherstellungscodes neu generieren",disable:"Deaktivieren",continue:"Weiter",fullCodeError:"Geben Sie den vollständigen 6-stelligen Code ein",fullRecoveryError:"Geben Sie den vollständigen Wiederherstellungscode ein",enterVerificationCode:"Bestätigungscode eingeben",didntReceive:"Keinen Code erhalten?",resendIn:"Erneut senden in {{seconds}}s",resend:"Erneut senden",verificationSent:"Bestätigungscode gesendet",failedToSetup:"Einrichtung der Authentifizierungs-App fehlgeschlagen",failedToSendCode:"Code konnte nicht gesendet werden",failedToResend:"Erneutes Senden fehlgeschlagen",invalidCode:"Ungültiger Code",lockedOut:"Zu viele Fehlversuche. Versuchen Sie es in {{minutes}} Min. erneut.",lockedOutShort:"Vorübergehend gesperrt ({{minutes}} Min.)"}},QP={section:{title:"Konto löschen",description:"Löschen Sie Ihr Konto zusammen mit allen zugehörigen Daten, Einstellungen und Aktivitäten.",accessNote:"Nach dem Einreichen der Löschanfrage haben Sie noch 1 Woche Zugriff auf Ihr Konto.",deleteButton:"Konto löschen",enterpriseTooltip:"Das Löschen von Konten ist für Enterprise-Benutzer nicht möglich. Bitte wenden Sie sich an den Administrator Ihrer Organisation."},pendingRequest:{willBeDeleted:"Ihr Konto, Abonnement, eigene Apps und Arbeitsbereiche werden in <bold>{{daysRemaining}} Tagen</bold> ({{formattedEnd}}) gelöscht. Ab diesem Datum ist die Löschung endgültig. Bis dahin können Sie die Löschung abbrechen.",processing:"Löschung wird verarbeitet...",cancelButton:"Anfrage abbrechen",renewalWarning:"Wenn Ihr Abonnement in diesen {{daysRemaining}} Tagen erneuert werden soll, erfolgt die Erneuerung trotzdem, es sei denn, Sie kündigen das Abonnement manuell vor dem Erneuerungsdatum."},toast:{submitSuccess:"Löschanfrage eingereicht. Wir prüfen und bearbeiten sie nach der 7-tägigen Karenzzeit.",submitError:"Löschantrag konnte nicht eingereicht werden. Bitte versuchen Sie es erneut.",cancelSuccess:"Löschanfrage wurde erfolgreich abgebrochen.",cancelError:"Anfrage konnte nicht abgebrochen werden. Bitte versuchen Sie es erneut.",preflightError:"Kontostatus konnte nicht überprüft werden. Bitte versuchen Sie es erneut."},dialog:{title:"Ihr Konto löschen",description:"Dadurch wird Ihr Konto und alle zugehörigen Daten zur dauerhaften Löschung vorgemerkt.",whatWillBeDeleted:"Was wird gelöscht:",itemAccountProfile:"Ihr Konto und Profil",itemAllApps:"Alle von Ihnen erstellten Apps",itemAllData:"Alle in Ihren Apps gespeicherten Daten",itemUploadedFiles:"Hochgeladene Dateien und Medien",gracePeriodNote:"Sie haben 7 Tage, um diese Anfrage zu stornieren. Danach wird unser Team die Löschung prüfen und bearbeiten.",subscriptionNote:"Die Kündigung eines Abonnements ist endgültig und es werden keine Erstattungen gewährt",cancelButton:"Abbrechen",deleteButton:"Konto löschen"},subscriptions:{dialogTitle:"Abonnements kündigen, bevor Sie Ihr Konto löschen",warning:"Sie haben noch aktive Abonnements. Bitte kündigen Sie diese zuerst.",listLabel:"Aktive Abonnements:",personalPlan:"Persönlicher Plan",planAndBilling:"Plan & Abrechnung",yearly:"jährlich",monthly:"monatlich",cancelFirst:"Kündigen Sie alle oben genannten Abonnements und kommen Sie dann zurück, um Ihr Konto zu löschen.",closeButton:"Schließen",manageButton:"Abonnements verwalten"},workspaceOwner:{titleStep1:"Sie besitzen Arbeitsbereiche",titleStep2:"Löschung des Arbeitsbereichs bestätigen",memberCount_one:"{{count}} Mitglied",memberCount_other:"{{count}} Mitglieder",warningOwner_one:"Sie besitzen den folgenden Arbeitsbereich. Wenn Sie fortfahren, werden alle Apps in diesem Arbeitsbereich dauerhaft gelöscht und alle Mitglieder verlieren den Zugriff.",warningOwner_other:"Sie besitzen die folgenden Arbeitsbereiche. Wenn Sie fortfahren, werden alle Apps in diesen Arbeitsbereichen dauerhaft gelöscht und alle Mitglieder verlieren den Zugriff.",leaveWorkspaces_one:"Sie werden auch diesen Arbeitsbereich verlassen und den Zugriff verlieren:",leaveWorkspaces_other:"Sie werden auch diese Arbeitsbereiche verlassen und den Zugriff verlieren:",confirmInstructions:"Geben Sie unten jeden Arbeitsbereichsnamen ein, um die Löschung zu bestätigen. Diese Aktion ist unwiderruflich.",typeToConfirm:'Geben Sie <bold>"{{name}}"</bold> zur Bestätigung ein',deleteAnyway:"Trotzdem löschen",deleteAccount:"Konto löschen",cancel:"Abbrechen"},memberInfo:{title_one:"Sie werden diesen Arbeitsbereich verlassen",title_other:"Sie werden diese Arbeitsbereiche verlassen",description_one:"Wenn Sie Ihr Konto löschen, werden Sie aus dem folgenden Arbeitsbereich entfernt. Sie verlieren den Zugriff auf alle Apps und Daten des Arbeitsbereichs.",description_other:"Wenn Sie Ihr Konto löschen, werden Sie aus den folgenden Arbeitsbereichen entfernt. Sie verlieren den Zugriff auf alle Apps und Daten der Arbeitsbereiche.",cancel:"Abbrechen",continueWithDeletion:"Mit Löschung fortfahren"}},XP={title:"GitHub-Konto",addAccount:"GitHub-Konto hinzufügen",unlockWithBuilder:"Schalten Sie diese Funktion mit dem Builder-Plan frei.",loading:"Laden...",connecting:"Verbinden...",reconnect:"Erneut verbinden",connectionLost:"Die Verbindung zu GitHub wurde unterbrochen. Bitte verbinden Sie Ihr GitHub-Konto erneut, um fortzufahren.",connected:"Verbunden",connectedDescription:"Ihr GitHub-Konto ist verbunden",disconnect:"Trennen",tryAgain:"Erneut versuchen",connectGitHub:"GitHub verbinden",disconnectDialog:{title:"Von GitHub trennen?",accountDescription:"Das Trennen Ihres GitHub-Kontos hat keine Auswirkungen auf verbundene Apps.<br/>Sie müssen Ihr Konto nur erneut verbinden, wenn Sie ein Repository verbinden oder neu verbinden möchten.",repoDescription:"Dies trennt die App vom {{repoName}}-Repository.",repoDescriptionNoName:"Dies trennt die App vom GitHub-Repository.",repoDetail1:"Ihr GitHub-Repository bleibt unverändert — es wird nicht gelöscht oder entfernt.",repoDetail2:"Sie können weiterhin wie gewohnt an Ihrer App arbeiten, aber GitHub ist nicht mehr die Quelle der Wahrheit für Ihren Code, und die bidirektionale Synchronisierung wird deaktiviert.",disconnectingProgress:"Trennen… Das kann einige Minuten dauern.",cancel:"Abbrechen",disconnect:"Trennen",disconnecting:"Trennen…"}},e_={title:"Google Drive",connected:"Verbunden",connectedDescription:"Ihr Google Drive ist verbunden",disconnectedDescription:"Verbinden Sie Ihr Google Drive, um Dateien zu importieren",connect:"Verbinden",connecting:"Verbindung wird hergestellt...",disconnect:"Trennen",disconnecting:"Wird getrennt...",loading:"Laden...",connectTitle:"Mit Google Drive verbinden",connectDescription:"Gewähren Sie Zugriff, um Dateien aus Google Drive als KI-Chat-Kontext zu verwenden.",benefitImport:"Importieren Sie Docs, Sheets und Slides aus Ihrem Google Drive",benefitChoose:"Wählen Sie jedes Mal, welche Dateien verwendet werden sollen",benefitSecure:"Ausgewählte Inhalte werden sicher für Ihre Anwendung gespeichert",connectButton:"Google Drive verbinden",cancel:"Abbrechen",privacyNote:"Es wird nur auf Dateien zugegriffen, die Sie auswählen.",disconnectAnytime:"Sie können die Verbindung jederzeit in den Kontoeinstellungen trennen."},t_={title:"Chat-Einstellungen",sendMessageShortcut:"Tastenkürzel zum Senden",insertNewLineShortcut:"Tastenkürzel für neue Zeile",soundPreferences:"Toneinstellungen",browserNotifications:"Browser-Benachrichtigungen",notificationsHelpText:"Benachrichtigungen aktiviert, aber keine erhalten? <docLink>Dokumentation aufrufen</docLink>",notificationOptions:{onFirstPromptOnly:"Nur bei erstem Prompt",onEveryPromptCompletion:"Bei jedem Prompt-Abschluss",disableNotificationSounds:"Benachrichtigungstöne deaktivieren",disableBrowserNotifications:"Browser-Benachrichtigungen deaktivieren"}},a_={account:ZP,mfa:JP,deleteAccount:QP,github:XP,googleDrive:e_,chatSettings:t_},n_={title:"Zugriff anfordern für {{appName}}",subtitleDefault:"Fordern Sie Zugriff an oder wechseln Sie zu einem Konto, das bereits berechtigt ist.",subtitleRequested:"Sie erhalten eine E-Mail, wenn Ihre Anfrage genehmigt wird.",requestAccess:"Zugriff anfordern",requestSubmitted:"Anfrage gesendet",loggedInAs:"Sie sind angemeldet als {{email}}",switchAccount:"Konto wechseln",errorMessage:"Etwas ist schiefgelaufen. Bitte versuchen Sie es erneut oder wechseln Sie das Konto.",tooManyAttempts:"Zu viele Versuche. Bitte versuchen Sie es später erneut.",backToLogin:"Zurück zur Anmeldung"},i_={title:"Zugriff eingeschränkt",subtitle:"Sie müssen Mitglied dieses Arbeitsbereichs sein, um auf die App zuzugreifen."},r_={accessRequired:n_,workspaceRestricted:i_},o_={title:"Willkommen bei Base44",loginWithGoogle:"Mit Google anmelden",loginWithGithub:"Mit GitHub anmelden",loggingIn:"Anmeldung läuft...",or:"Oder",emailLabel:"E-Mail",emailPlaceholder:"E-Mail-Adresse eingeben",edit:"Bearbeiten",lastUsed:"Zuletzt verwendet",ssoEnabled:"SSO ist für <strong>{{workspace}}</strong> aktiviert",ssoClickBelow:"Klicke unten, um mit der Anmeldung deiner Organisation fortzufahren",passwordLabel:"Passwort",forgotPassword:"Passwort vergessen?",passwordPlaceholder:"Passwort eingeben",checkingAuth:"Authentifizierungsmethode wird überprüft...",checking:"Überprüfung...",continue:"Weiter",continueWithSSO:"Weiter mit {{provider}}",logIn:"Anmelden",noAccount:"Noch kein Konto?",signUp:"Registrieren",verifyEmailFirst:"Bitte bestätige deine E-Mail-Adresse vor der Anmeldung. Prüfe dein Postfach für den Bestätigungscode.",resendVerificationCode:"Bestätigungscode erneut senden",enterEmailFirst:"Bitte gib zuerst deine E-Mail-Adresse ein",invalidEmail:"Bitte gib eine gültige E-Mail-Adresse ein",ssoError:"SSO-Konfigurationsfehler. Bitte versuche es erneut.",invalidCredentials:"Ungültige E-Mail oder Passwort",loginFailed:"Anmeldung fehlgeschlagen. Bitte versuche es erneut.",failedResendVerification:"Bestätigungscode konnte nicht erneut gesendet werden. Bitte versuche es erneut.",passwordResetRequired:"Aus Sicherheitsgründen musst du dein Passwort zurücksetzen, bevor du dich anmelden kannst. Prüfe dein Postfach für einen Zurücksetzungslink.",resetLinkSent:"Ein Link zum Zurücksetzen des Passworts wurde an deine E-Mail gesendet.",resendResetLink:"Zurücksetzungslink erneut senden",failedResendResetLink:"Zurücksetzungslink konnte nicht gesendet werden. Bitte versuche es erneut.",termsAndPrivacy:"<terms>Nutzungsbedingungen</terms> und <privacy>Datenschutzerklärung</privacy>."},s_={title:"Erstelle dein Konto",agreeToTerms:'Mit Klick auf "Registrieren" stimmst du unseren <terms>Nutzungsbedingungen</terms> und der <privacy>Datenschutzerklärung</privacy> zu.',signUpWithGoogle:"Mit Google registrieren",signUpWithGithub:"Mit GitHub registrieren",signingUp:"Registrierung...",creatingAccount:"Konto wird erstellt...",signUpButton:"Registrieren",alreadyHaveAccount:"Bereits ein Base44-Konto?",logIn:"Anmelden",validatingReferral:"Empfehlungscode wird überprüft...",invalidReferral:"Ungültiger Empfehlungscode",youveBeenInvited:"Du wurdest eingeladen!",invitedToJoin:"<strong>{{name}}</strong> hat dich zu Base44 eingeladen",signUpFreeCredits:"Registriere dich und erhalte 10 Gratis-Credits!",signUpBaseDayCredits:"Registriere dich und erhalte 44 kostenlose Credits!",letsBuild:"Lass uns gemeinsam etwas Großartiges bauen!",registrationFailed:"Registrierung fehlgeschlagen. Bitte versuche es erneut.",failedValidateReferral:"Empfehlungscode konnte nicht überprüft werden",completeVerification:"Bitte schließe die Verifizierung ab",weakPassword:"Schwaches Passwort"},l_={title:"Passwort zurücksetzen",subtitle:"Gib die E-Mail-Adresse ein, mit der du dich registriert hast. Wir senden dir einen Link zum Zurücksetzen deines Passworts.",backToLogin:"Zurück zur Anmeldung",loginEmail:"Anmelde-E-Mail",emailPlaceholder:"z.B. name@email.com",sending:"Wird gesendet...",verifyEmail:"E-Mail verifizieren",invalidEmail:"Ungültige E-Mail-Adresse",failedSendReset:"Reset-Link konnte nicht gesendet werden. Bitte versuche es erneut."},c_={title:"Prüfe dein Postfach",subtitle:"Wir haben Anweisungen zum Zurücksetzen des Passworts an <strong>{{email}}</strong> gesendet.",backToReset:"Zurück zum Passwort zurücksetzen",checkInfo:"Bitte prüfe dein Postfach für den Link zum Zurücksetzen des Passworts.",mayTakeMinutes:"Es kann einige Minuten dauern, bis die E-Mail ankommt.",goToSignIn:"Zur Anmeldung",didntGetEmail:"E-Mail nicht erhalten?",resending:"Wird erneut gesendet...",resendEmail:"E-Mail erneut senden",emailNotFound:"E-Mail-Adresse nicht gefunden. Bitte geh zurück und versuche es erneut.",newResetSent:"Neue E-Mail zum Zurücksetzen des Passworts gesendet. Bitte prüfe dein Postfach.",failedResendEmail:"E-Mail konnte nicht erneut gesendet werden. Bitte versuche es erneut."},d_={title:"Neues Passwort festlegen",subtitle:"Gib dein neues Passwort für Base44 ein",newPasswordLabel:"Neues Passwort",newPasswordPlaceholder:"Neues Passwort eingeben",confirmPasswordLabel:"Neues Passwort bestätigen",confirmPasswordPlaceholder:"Neues Passwort erneut eingeben",resetting:"Wird zurückgesetzt...",resetButton:"Passwort zurücksetzen",backToLogIn:"Zurück zur Anmeldung",invalidToken:"Ungültiger oder fehlender Reset-Token. Bitte fordere ein neues Passwort-Reset an.",passwordsMismatch:"Passwörter stimmen nicht überein. Bitte versuche es erneut.",weakPassword:"Bitte erstelle mindestens ein mittelstarkes Passwort.",resetSuccess:"Passwort erfolgreich zurückgesetzt! Weiterleitung zur Anmeldung...",resetSuccessLogin:"Passwort erfolgreich zurückgesetzt! Bitte melde dich mit deinem neuen Passwort an.",failedReset:"Passwort konnte nicht zurückgesetzt werden. Bitte versuche es erneut.",invalidOrExpiredToken:"Ungültiger oder abgelaufener Reset-Token"},u_={verifyTitle:"Identität bestätigen",verification:{chooseMethod:"Authentifizierungsmethode wählen",authenticatorApp:"Authenticator-App",smsMessage:"SMS-Nachricht",recoveryCode:"Wiederherstellungscode",continue:"Weiter",backToLogin:"Zurück zur Anmeldung",chooseAnotherMethod:"Andere Methode wählen",verifyViaText:"Per SMS bestätigen",verifyViaApp:"Per Authenticator-App bestätigen",enterRecoveryCode:"Wiederherstellungscode eingeben",rememberDevice:"Dieses Gerät 30 Tage merken",verifying:"Wird überprüft...",verify:"Bestätigen",useRecoveryCode:"Wiederherstellungscode verwenden",sendingCodeTo:"Code wird an {{phone}} gesendet…",enterCodeSentTo:"Gib den an {{phone}} gesendeten Code ein",enterCodeFromApp:"Gib den Code aus deiner Authenticator-App ein",yourPhone:"dein Telefon",didntReceiveCode:"Keinen Code erhalten?",resendIn:"Erneut senden in {{seconds}}s",resend:"Erneut senden",enterCompleteRecoveryCode:"Bitte gib den vollständigen Wiederherstellungscode ein",enterCompleteCode:"Bitte gib den vollständigen 6-stelligen Code ein",verificationFailed:"Bestätigung fehlgeschlagen. Bitte versuche es erneut.",failedSendCode:"Code konnte nicht gesendet werden. Bitte erneut versuchen."}},p_={buildingApp:"Deine App wird erstellt",verifyEmailSubtitle:"Bestätige deine E-Mail, um fortzufahren",signUpSubtitle:"Registriere dich und sieh zu, wie sie zum Leben erwacht",loginSubtitle:"Melde dich an und sieh zu, wie sie zum Leben erwacht"},m_={completeVerification:"Bitte schließe die Sicherheitsverifizierung ab"},g_={title:"E-Mail bestätigen",subtitle:"Wir haben einen Bestätigungscode an {{email}} gesendet",verificationCode:"Bestätigungscode",fillAllFields:"Bitte fülle alle Felder aus.",enterCodeSent:"Gib den Bestätigungscode ein, der an deine E-Mail gesendet wurde",verifying:"Wird überprüft...",verifyEmail:"E-Mail bestätigen",wrongEmail:"Falsche E-Mail? Ändern",didntReceiveCode:"Code nicht erhalten?",resendEmail:"E-Mail erneut senden",emailVerifiedLogin:"E-Mail erfolgreich bestätigt! Du kannst dich jetzt anmelden.",emailVerifiedContinue:"E-Mail erfolgreich bestätigt! Bitte melde dich an, um fortzufahren.",invalidCode:"Ungültiger Bestätigungscode. Bitte versuche es erneut.",verificationFailed:"Bestätigung fehlgeschlagen. Bitte versuche es erneut.",newCodeSent:"Neuer Bestätigungscode an deine E-Mail gesendet.",failedResendCode:"Bestätigungscode konnte nicht erneut gesendet werden. Bitte versuche es erneut."},h_={login:o_,register:s_,forgotPassword:l_,checkEmail:c_,resetPassword:d_,mfa:u_,authModal:p_,turnstile:m_,otp:g_},f_={notFound:"Profil nicht gefunden",notFoundDescription:"Das Builder-Profil @{{username}} existiert nicht."},v_={edit:"Bearbeiten",done:"Fertig",cancel:"Abbrechen",appCount_one:"{{count}} App",appCount_other:"{{count}} Apps",joined:"Beigetreten {{date}}",namePlaceholder:"Dein Name",displayNameLabel:"Anzeigename",usernameLabel:"Benutzername",changeUsername:"Benutzername ändern",saveChanges:"Änderungen speichern",partnerBadge:"Base44 Partner"},b_={label:"Bio",placeholder:"Schreibe eine kurze Bio über dich...",emptyPlaceholder:"Erzähl Besuchern von dir — füge eine kurze Bio hinzu.",hint:"Max. 220 Zeichen",maxChars:"Max. {{max}} Zeichen"},y_={viewTitle:"Apps",appsHeader:"Apps ({{count}})",appsHeaderEmpty:"Apps",featuredCounter_one:"{{count}} hervorgehoben",featuredCounter_other:"{{count}} hervorgehoben",editHint:"Wähle aus, welche Apps auf deinem öffentlichen Profil erscheinen.",noPublishedApps:"Keine veröffentlichten Apps gefunden. Veröffentliche zuerst eine App!",noPublishedAppsTitle:"Keine veröffentlichten Apps",noPublishedAppsDescription:"Du hast noch keine Apps veröffentlicht. Gehe zu deinem Workspace, um einen Entwurf fertigzustellen und zu veröffentlichen, damit du ihn in deinem Profil präsentieren kannst.",viewMyApps:"Meine Apps anzeigen",untitled:"Ohne Titel",updated:"Angepinnte Apps aktualisiert!",updateFailed:"Angepinnte Apps konnten nicht aktualisiert werden",manageApps:"Apps verwalten",chooseTitle:"Apps zur Anzeige auswählen",chooseDescription:"Wähle bis zu {{max}} veröffentlichte Apps aus, die auf deinem öffentlichen Profil angezeigt werden",selectAll:"Alle auswählen",deselectAll:"Alle abwählen",saveChanges:"Speichern",searchApps:"Apps suchen...",publicBadge:"Öffentlich",privateBadge:"Privat",showMore:"Mehr anzeigen",showLess:"Weniger anzeigen",maxReached:"Maximal {{max}} Apps erlaubt",close:"Schließen",noSearchResults:"Keine Apps entsprechen deiner Suche",updatedRecently:"kürzlich aktualisiert",selectAllCount:"Alle auswählen ({{count}})",deselectAllCount:"Alle abwählen ({{count}})"},k_={editTooltip:"Social-Links bearbeiten",addLinks:"Social-Links hinzufügen",addLink:"Link hinzufügen",cancelTooltip:"Abbrechen",removeTooltip:"Entfernen",label:"Soziale Netzwerke",hint:"Bis zu 6 Social-Links hinzufügen",linkLabel:"Link",addCustomLink:"Eigenen Link hinzufügen",pastePlaceholder:"URL hier einfügen",enterUsernameOrUrl:"Benutzername oder vollständige Profil-URL eingeben",movedTo:"Zu {{platform}} verschoben",addedAsCustom:"Als benutzerdefinierter Link hinzugefügt",fieldOccupied:"Sieht aus wie ein {{platform}}-Link — das Feld hat bereits eine URL",customSlotsFull:"Sieht aus wie ein {{platform}}-Link. Entferne einen benutzerdefinierten Link, um ihn hinzuzufügen."},w_={profileUpdated:"Profil aktualisiert!",profileUpdateFailed:"Profil konnte nicht aktualisiert werden",usernameClaimed:"Benutzername beansprucht!",usernameClaimFailed:"Benutzername konnte nicht beansprucht werden",loadFailed:"Profil konnte nicht geladen werden",invalidImageType:"Bitte lade ein gültiges Bild hoch (JPG, PNG, GIF oder WebP)",imageTooLarge:"Das Bild muss kleiner als 5 MB sein",avatarUpdated:"Profilbild aktualisiert!",avatarUploadFailed:"Bild konnte nicht hochgeladen werden",avatarRemoveFailed:"Bild konnte nicht entfernt werden"},A_={title:"Änderungen verwerfen?",description:"Du hast ungespeicherte Änderungen, die verloren gehen.",confirm:"Verwerfen"},S_={title:"Benutzername ändern",placeholder:"benutzername",checking:"Wird geprüft...",available:"Verfügbar!",notAvailable:"Nicht verfügbar",urlWarning:"Deine Profil-URL wird zu /@{{username}} geändert. Alte Links funktionieren nicht mehr.",cancel:"Abbrechen",claim:"Benutzername beanspruchen",tryInstead:"Versuche:"},C_={locationLabel:"Standort",locationPlaceholder:"z. B. Berlin, Deutschland",showEmailLabel:"Konto-E-Mail anzeigen"},D_={title:"Titelbild aktualisieren",description:"Wähle einen unserer Farbverläufe oder lade dein eigenes Bild hoch",uploadFile:"Eigenes Bild hochladen",orUseTemplate:"Oder eine Vorlage verwenden",cancel:"Abbrechen",saveChanges:"Änderungen speichern",updated:"Titelbild aktualisiert!",updateFailed:"Titelbild konnte nicht aktualisiert werden",uploadFailed:"Bild konnte nicht hochgeladen werden",dragToReposition:"Ziehen zum Neupositionieren",replaceImage:"Bild ersetzen",reposition:"Neu positionieren"},T_={title:"Aktivität",mon:"Mo",wed:"Mi",fri:"Fr",less:"Weniger",more:"Mehr",messages_one:"{{count}} Prompt",messages_other:"{{count}} Prompts",founderMode:"Founder mode",noActivity:"Keine Aktivität",onDate:"am {{date}}",showOnProfile:"Im Profil anzeigen"},E_={customize:"Profil anpassen",title:"Noch keine öffentlichen Apps",description:"Dein Profil ist der beste Ort, um deine Arbeit mit der Base44-Community zu teilen. Wähle aus deinen veröffentlichten Apps aus, um sie hier anzuzeigen, oder starte ein neues Projekt, um deine Aktivität zu steigern.",anonDescription:"Dieser Builder hat noch keine seiner Apps öffentlich gemacht. Schau später vorbei, um die neuesten Aktivitäten zu sehen, oder entdecke, was andere erstellen.",startCreating:"Jetzt erstellen",chooseFromApps:"Aus meinen Apps wählen"},P_={page:f_,header:v_,bio:b_,pinnedApps:y_,social:k_,toast:w_,discardDialog:A_,usernameDialog:S_,details:C_,coverImage:D_,activity:T_,emptyState:E_},__=JSON.parse(`{"title":"KI-Agenten","beta":"Beta","subtitle":"Baue KI-Agenten in deine App mit der KI-Agenten-Infrastruktur von Base44","disabled":"Deaktiviert","setupAgents":"Agenten einrichten","enableAgents":"Agenten aktivieren","turnOnToggle":"Schalte den Schalter ein, um die Erstellung von Agenten zu ermöglichen","addFirstAgent":"Füge deinen ersten Agenten hinzu","creditsUsed":"{{credits}} Credits verwendet","creditsUsedTooltip":"Monatlich verwendete Integrations-Credits","askChatToCreate":"Bitte den Chat, einen Agenten für dich zu erstellen. Beschreibe, welche Rolle der Agent haben soll und welche Aufgaben er ausführen soll.","defineInConfig":"Definiere deine Agenten in lokalen Konfigurationsdateien und synchronisiere sie mit deiner App über die Base44 CLI.","viewDocumentation":"Dokumentation anzeigen","noAgentsYet":"Noch keine Agenten","promptChatToCreate":"Fordere den Chat auf, deinen ersten KI-Agenten zu erstellen","agentsTab":"Agenten","conversationsTab":"Konversationen","searchConversations":"Konversationen durchsuchen...","filterAll":"Alle","filterMine":"Meine","filterUsers":"Benutzer","noConversationsYet":"Noch keine Konversationen","noConversationsMatchSearch":"Keine Konversationen entsprechen Ihrer Suche","tryDifferentSearch":"Versuchen Sie einen anderen Suchbegriff","goToAgentsTab":"Gehe zum Agenten-Tab, um eine Konversation zu starten","conversationStarted":"Konversation gestartet","agentConfiguration":"Agenten-Konfiguration","guidelines":"Richtlinien","tools":"Werkzeuge","whatsapp":"WhatsApp","toolsAndCapabilities":"Werkzeuge und Fähigkeiten","descriptionLabel":"Beschreibung","systemPromptDesc":"Dies ist der System-Prompt, der das Verhalten des Agenten definiert","briefDescription":"Kurze Beschreibung, was dieser Agent tut...","instructions":"Anweisungen","instructionsDesc":"Spezifische Richtlinien und Regeln, denen der Agent folgen soll","detailedInstructions":"Detaillierte Anweisungen für den Agenten...","availableTools":"Verfügbare Werkzeuge","configureTools":"Konfiguriere, auf welche Werkzeuge und Daten dieser Agent zugreifen kann","add":"Hinzufügen","allEntitySlotsUsed":"Alle Entitäts-Slots belegt","addEntityTool":"Entitäts-Werkzeug hinzufügen","entityToolDesc":"Datenbankoperationen und CRUD-Zugriff","allFunctionSlotsUsed":"Alle Funktions-Slots belegt","addBackendFunction":"Backend-Funktion hinzufügen","backendFunctionDesc":"Benutzerdefinierte Backend-Logik und Integrationen","noToolsConfigured":"Keine Werkzeuge konfiguriert","addToolsDesc":"Füge Entitäts-Werkzeuge oder Backend-Funktionen hinzu, um dem Agenten Fähigkeiten zu verleihen","entityTool":"Entitäts-Werkzeug","selectEntity":"Entität auswählen","allowedOperations":"Erlaubte Operationen","deleteWarning":"Vorsicht, vom Agenten gelöschte Daten können nicht wiederhergestellt werden","backendFunction":"Backend-Funktion","selectBackendFunction":"Backend-Funktion auswählen","functionDescription":"Funktionsbeschreibung","describeFunction":"Beschreibe, wann und wie diese Funktion verwendet werden soll...","whatsappIntegration":"WhatsApp-Integration","whatsappDesc":"Verbinde deinen Agenten mit WhatsApp für nahtlose Kommunikation","testChat":"Test-Chat","addWhatsapp":"WhatsApp zu deiner App hinzufügen","whatsappEnableDesc":"Aktiviere WhatsApp-Zugang für deine Benutzer mit einem einzigen Befehl","addWhatsappButton":"Einen WhatsApp-Button für den {{agent}} hinzufügen","sendToChat":"An Chat senden","fullChatCapabilities":"Volle Chat-Funktionalität","fullChatDesc":"Alle Web-Chat-Funktionen funktionieren nahtlos in WhatsApp, einschließlich Werkzeuge und Datenzugriff","voiceMediaSupport":"Sprach- und Medienunterstützung","voiceMediaDesc":"Benutzer können Sprachnachrichten und Bilder für eine natürliche Interaktion senden","customNumbers":"Eigene Nummern","customNumbersDesc":"Verbinde deine eigenen WhatsApp Business-Nummern","easyUiIntegration":"Einfache UI-Integration","easyUiDesc":"Füge einen WhatsApp-Button mit einem einfachen Chat-Befehl zu deiner App hinzu","welcomeMessage":"Willkommensnachricht","welcomeMessageDesc":"Erstelle eine herzliche Begrüßung, die deinen Agenten vorstellt und Erwartungen setzt","charCount":"{{count}}/500","editAgent":"Agent bearbeiten","edit":"Bearbeiten","startChat":"Chat starten","chat":"Chat","functionCount":"{{count}} Funktion(en)","noDescriptionProvided":"Keine Beschreibung vorhanden","entities":"Entitäten:","activeConversation":"Aktive Konversation","readOnlyConversation":"Schreibgeschützte Konversation","startConversation":"Starte deine Konversation","typeMessageBelow":"Gib unten eine Nachricht ein, um zu beginnen","typeYourMessage":"Schreibe deine Nachricht...","cancel":"Abbrechen","saving":"Wird gespeichert...","save":"Speichern","commandAddedToChat":"Befehl zum Chat hinzugefügt. Drücke Enter zum Senden.","failedToSaveAgentConfiguration":"Agenten-Konfiguration konnte nicht gespeichert werden","promptAddedToChat":"Prompt zum Chat hinzugefügt","unableToLoadSuggestions":"Vorschläge konnten nicht geladen werden. Bitte versuche es später erneut.","createAgent":"Agent erstellen","createAgentTitle":"Agent erstellen","createAgentDescription":"Bitte den Chat, einen Agenten für dich zu erstellen. Beschreibe, welche Rolle der Agent haben soll und welche Aufgaben er übernehmen soll.","manageAgentsAndConversations":"Agenten und Konversationen verwalten","skills":"Fähigkeiten","skillsEnabledLimit":"Du kannst bis zu {{count}} Fähigkeiten pro Agent aktivieren.","appSkillsTitle":"App-Fähigkeiten","appSkillsDescription":"Wiederverwendbare Anweisungs-Fähigkeiten für Agenten in dieser App.","addSkill":"Fähigkeit hinzufügen","noAppSkillsYet":"Noch keine App-Fähigkeiten. Erstelle eine, um sie in verschiedenen Agenten dieser App zu verwenden.","workspaceSkillsTitle":"Arbeitsbereich-Fähigkeiten","workspaceSkillsDescription":"Geteilte Fähigkeiten aus diesem Arbeitsbereich. Schalte sie ein, um sie für diesen Agenten zu aktivieren.","loadingWorkspaceSkills":"Arbeitsbereich-Fähigkeiten werden geladen...","noWorkspaceSkillsAvailable":"Derzeit sind keine geteilten Arbeitsbereich-Fähigkeiten verfügbar.","manageWorkspaceSkills":"Arbeitsbereich-Fähigkeiten verwalten","workspaceSkillSource":"Arbeitsbereich","appSkillSource":"App","unavailable":"nicht verfügbar","addAppSkill":"App-Fähigkeit hinzufügen","editAppSkill":"{{name}} bearbeiten","skillName":"Fähigkeitsname","skillNameHint":"Verwende kleine Buchstaben, Zahlen und Bindestriche.","skillNameInvalid":"Der Name muss aus kleinen Buchstaben, Zahlen und Bindestrichen bestehen, ohne führende/nachfolgende Bindestriche (z.B. 'code-review', 'sql-expert').","skillDescription":"Beschreibung","skillInstructions":"Anweisungen","enableForCurrentAgent":"Für aktuellen Agenten aktivieren","enableForCurrentAgentDescription":"Dies ändert den aktuellen Editor-Zustand und wird mit dem Agenten gespeichert.","createSkill":"Fähigkeit erstellen","saveChanges":"Änderungen speichern","workspaceSkillUnavailableDescription":"Diese Arbeitsbereich-Fähigkeit ist nicht mehr aktiviert oder verfügbar.","appSkillUnavailableDescription":"Diese App-Fähigkeit existiert nicht mehr in der App-Fähigkeiten-Bibliothek.","skillValidationRequired":"Name, Beschreibung und Anweisungen sind erforderlich","skillCreated":"Fähigkeit erstellt","skillUpdated":"Fähigkeit aktualisiert","failedToSaveSkill":"Fähigkeit konnte nicht gespeichert werden","skillSavedButAssignmentsFailed":"Die Fähigkeit wurde gespeichert, aber das Anhängen an den Agenten ist fehlgeschlagen","skillSavedButAssignmentsRefreshDelayed":"Der Editor konnte nicht automatisch aktualisiert werden. Bitte lade neu, um den aktuellen Stand zu prüfen.","skillSavedButSyncFailed":"Die Fähigkeit wurde gespeichert, aber die Synchronisierung des Agentenzustands ist fehlgeschlagen","skillSavedButSyncRefreshDelayed":"Die Fähigkeit wurde gespeichert, aber der Editor konnte nicht automatisch aktualisiert werden. Bitte lade neu, um den aktuellen Stand zu prüfen.","skillSavedStateRefreshed":"Fähigkeit gespeichert. Der Editor wurde aktualisiert, damit er dem neuesten gespeicherten Stand entspricht.","skillSavedRefreshDelayed":"Fähigkeit gespeichert, aber der Editor konnte nicht automatisch aktualisiert werden. Bitte lade neu, um den aktuellen Stand zu prüfen.","skillDeleted":"Fähigkeit gelöscht","skillDeletedRefreshDelayed":"Die Fähigkeit wurde gelöscht, aber der Editor konnte nicht automatisch aktualisiert werden. Bitte lade neu, um den aktuellen Stand zu prüfen.","failedToDeleteSkill":"Fähigkeit konnte nicht gelöscht werden","skillLimitReached":"Dieser Agent hat bereits die maximale Anzahl aktivierter Fähigkeiten erreicht.","skillTemplatePickerTitle":"Starter-Fähigkeit auswählen","startFromScratch":"Von Grund auf starten","startFromScratchDescription":"Erstelle eine eigene Fähigkeit mit deinen eigenen Anweisungen.","useTemplate":"Vorlage verwenden","skillTemplates":{"refundPolicy":{"description":"Vorlage für Rückerstattungsregeln, Berechtigung und welche Details der Agent vor einer Eskalation sammeln soll."},"supportEscalation":{"description":"Vorlage dafür, wann an den menschlichen Support übergeben werden soll und welche Zusammenfassung der Agent vorbereiten muss."},"pricingAndPlans":{"description":"Vorlage zum Erklären von Tarifen, Abrechnungsintervallen, Upgrades und wann Enterprise-Anfragen weitergeleitet werden sollen."},"brandVoice":{"description":"Vorlage für Tonfall, Schreibstil und Kommunikationsregeln, damit der Agent zur Marke passt."}},"memory":"Gedächtnis","memoryTitle":"Agenten-Gedächtnis","memorySubtitle":"Aktiviere das Langzeitgedächtnis, damit dein Agent sich Informationen über Konversationen hinweg merken kann","enableMemory":"Gedächtnis aktivieren","enableMemoryDesc":"Wenn aktiviert, kann der Agent Informationen über Konversationen hinweg speichern und abrufen","memoryScope":"Gedächtnis-Umfang","memoryScopeDesc":"Wähle, welche Arten von Erinnerungen der Agent erstellen kann","memoryScopeGlobalAndUser":"Global & Pro Benutzer","memoryScopeGlobalAndUserDesc":"Agent kann gemeinsame und persönliche Erinnerungen speichern","memoryScopeGlobal":"Nur Global","memoryScopeGlobalDesc":"Erinnerungen, die mit allen Benutzern geteilt werden","memoryScopeUser":"Nur Pro Benutzer","memoryScopeUserDesc":"Erinnerungen, die für jeden Benutzer spezifisch sind","memoryInstructions":"Gedächtnis-Anweisungen","memoryInstructionsDesc":"Leite den Agenten an, wann er Erinnerungen speichern und was er einbeziehen soll","memoryInstructionsPlaceholder":"Z.B. Speichere globale Erinnerungen für Produktupdates, Unternehmensankündigungen und geteiltes Wissen. Speichere Benutzer-Erinnerungen für persönliche Vorlieben wie Kommunikationsstil, Tonfall und spezifische Interessen.","savedMemories":"Gespeicherte Erinnerungen","refresh":"Aktualisieren","noMemoriesYet":"Noch keine Erinnerungen gespeichert","noMemoriesDesc":"Erinnerungen erscheinen hier, wenn der Agent sie während Konversationen speichert","memoryItemDeleted":"Erinnerungseintrag gelöscht","memoryDeleteFailed":"Fehler beim Löschen des Erinnerungseintrags","defaultDescription":"Standard: {{description}}"}`),x_={writing:"Schreiben",wrote:"Geschrieben",reading:"Lesen",read:"Gelesen",deleting:"Löschen",deleted:"Gelöscht",editing:"Bearbeiten",edited:"Bearbeitet",creating:"Erstellen",created:"Erstellt",updating:"Aktualisieren",updated:"Aktualisiert",update:"Aktualisieren",delete:"Löschen",importing:"Importieren",imported:"Importiert",import:"Importieren",searching:"Suchen",searched:"Gesucht",searchingForBugs:"Suche nach Fehlern...",searchedBugs:"Fehlersuche abgeschlossen",install:"Installieren",installing:"Installieren",installed:"Installiert",analyzing:"Analysieren",running:"Ausführen",failed:"Fehlgeschlagen",run:"Ausführen",settingSecrets:"Geheimnisse setzen",setSecret:"Geheimnis gesetzt",setSecrets:"Geheimnisse setzen",testing:"Testen",checking:"Prüfen",tested:"Getestet",checked:"Geprüft",fetching:"Abrufen",fetched:"Abgerufen",waitingForApproval:"Warte auf Genehmigung...",searchedDocsFor:"Dokumentation durchsucht für",searchingDocsFor:"Dokumentation durchsuchen für",searchedFor:"Gesucht nach",searchingFor:"Suche nach",foundResult_one:"{{count}} Ergebnis gefunden",foundResult_other:"{{count}} Ergebnisse gefunden",toggling:"Umschalten",toggled:"Umgeschaltet",listing:"Auflisten",listed:"Aufgelistet",approvalRequired:"Genehmigung erforderlich",approve:"Genehmigen",approving:"Genehmigung...",reject:"Ablehnen",rejected:"abgelehnt",previousApproval:"Diese Genehmigungsanfrage stammt aus einer früheren Nachricht",query:"Abfrage:",updateWith:"Aktualisieren mit:",importComplete:"Import abgeschlossen",importingData:"Daten werden importiert...",percentComplete:"{{percent}}% abgeschlossen",recordsProgress:"{{current}} / {{total}} Datensätze",preparing:"Vorbereitung...",otherToolsAfterApproval:"Andere Tools werden nach der Genehmigung ausgeführt",countPackages:"{{num}} Pakete:",updateAllEntityRecords:"Alle Datensätze von <entity>{{entityName}}</entity> aktualisieren",updateEntityRecordsMatching:"Datensätze von <entity>{{entityName}}</entity> mit Übereinstimmung aktualisieren:",deleteAllEntityRecords:"Alle Datensätze von <entity>{{entityName}}</entity> löschen",deleteEntityRecordsMatching:"Datensätze von <entity>{{entityName}}</entity> mit Übereinstimmung löschen:",importDataFromInto:"Daten von <file>{{fileName}}</file> in <entity>{{entityName}}</entity> importieren",importDataFromSheetInto:"Daten von <file>{{fileName}}</file> (Blatt: <sheet>{{sheetName}}</sheet>) in <entity>{{entityName}}</entity> importieren",countRecordsIntoEntity:"{{num}} Datensätze in <entity>{{entityName}}</entity>",dataIntoEntity:"Daten in <entity>{{entityName}}</entity>",countRecordsEntity:"{{num}} Datensätze <entity>{{entityName}}</entity>",allEntityRecords:"alle Datensätze von <entity>{{entityName}}</entity>",entityRecords:"Datensätze von <entity>{{entityName}}</entity>",grepSearching:'Suche nach "{{pattern}}"...',grepSearchComplete:"Suche abgeschlossen",grepFoundResults_one:"{{count}} Ergebnis gefunden",grepFoundResults_other:"{{count}} Ergebnisse gefunden",grepInFiles_one:"in {{count}} Datei",grepInFiles_other:"in {{count}} Dateien"},I_={agents:__,tools:x_},R_={title:"Automatisierungen",subtitle:"Erstelle und verwalte Automatisierungen in deiner App.",newAutomation:"Neue Automatisierung",chooseAutomation:"Wähle eine Automatisierung",selectHowStarts:"Wähle, wie diese Automatisierung gestartet wird.",scheduled:"Geplant",scheduledDescription:"Führe diese Automatisierung nach einem wiederkehrenden Zeitplan oder zu einem bestimmten Zeitpunkt aus.",dataEvent:"Datenereignis",dataEventDescription:"Führe diese Automatisierung aus, wenn ein Datensatz erstellt, aktualisiert oder gelöscht wird.",connector:"Konnektor",connectorDescription:"Führe diese Automatisierung aus, wenn eine verbundene Integration ein Ereignis sendet.",connectorBetaTooltip:"Dieser Connector ist während der Beta kostenlos.",beta:"Beta",connectorNewAutomation:"Neue Konnektor-Automatisierung",connectorIntegrationType:"Integration",connectorSelectIntegration:"Integration auswählen",connectorNoIntegrations:"Keine Integrationen verbunden",connectorNoIntegrationsHint:"Um die Automatisierung zu aktivieren, musst du zuerst eine Integration erstellen.",connectorCreateIntegration:"Integration erstellen",connectorCreateNewIntegration:"Neue Integration erstellen",connectorEvents:"Ereignisse",connectorSelectEvents:"Ereignisse zum Empfangen auswählen",connectorSelectEvent:"Ein Ereignis auswählen",connectorAvailableEvents:"Verfügbare Ereignisse ({{count}})",connectorType:"Konnektor",allEvents:"alle Ereignisse",deleteAutomation:"Automatisierung löschen?",deleteAutomationDesc:'Dies löscht "{{name}}" und den gesamten Ausführungsverlauf dauerhaft. Diese Aktion kann nicht rückgängig gemacht werden.',delete:"Löschen",deleting:"Wird gelöscht...",cancel:"Abbrechen",copyOutput:"Ausgabe kopieren",scheduledType:"Geplant",dataEventType:"Datenereignis",someRunsFailed:"Einige Ausführungen fehlgeschlagen",reviewLogsOrFix:"Überprüfe die Protokolle oder lass die Fehler von der KI beheben.",fixing:"Wird behoben...",fixWithAI:"Mit KI beheben",failedToGetErrorContext:"Fehler beim Abrufen des Fehler-Kontexts",logsTab:"Protokolle",noLogsYet:"Noch keine Protokolle",back:"Zurück",close:"Schließen",saving:"Wird gespeichert...",save:"Speichern",active:"Aktiv",archived:"Archiviert",archivedAutomations:"Archivierte Automatisierungen",nameAndDescription:"Name und Beschreibung",typeColumn:"Typ",lastRun:"Letzte Ausführung",failed:"Fehlgeschlagen",loading:"Laden...",editAutomation:"Automatisierung bearbeiten",runNow:"Jetzt ausführen",archive:"Archivieren",duplicate:"Duplizieren",unlockAutomations:"Automatisierungen freischalten",unlockAutomationsDesc:"Um Automatisierungen in deiner App auszuführen, benötigst du Backend-Funktionen. Upgrade, um Backend-Funktionen zu aktivieren und Automatisierungen zu nutzen.",enableBackendFunctions:"Aktiviere Backend-Funktionen, um zu beginnen",enableBackendFunctionsDesc:"Automatisierungen führen Backend-Funktionen nach einem Zeitplan oder bei Datenänderungen aus. Aktiviere Backend-Funktionen in den Einstellungen, um Automatisierungen zu nutzen.",openSettings:"Einstellungen öffnen",createBackendFunction:"Erstelle eine Backend-Funktion, um Automatisierungen hinzuzufügen",createBackendFunctionDesc:"Um eine Automatisierung zu erstellen, benötigst du zuerst eine Backend-Funktion in deinem Code. Schreibe eine Backend-Funktion in deinem Code oder frage den Chat um Hilfe.",noAutomationsYet:"Noch keine Automatisierungen",noAutomationsDesc:"Erstelle eine Automatisierung, um Aufgaben in deiner App automatisch auszuführen.",noArchivedAutomations:"Keine archivierten Automatisierungen",noArchivedDesc:"Automatisierungen, die du archivierst oder deren Enddatum erreicht ist, erscheinen hier.",runAutomation:"Automatisierung ausführen",selectRecord:"Wähle einen <entity>{{entity}}</entity>-Datensatz, mit dem die Automatisierung ausgeführt werden soll.",searchRecords:"{{entity}}-Datensätze suchen...",noRecordsFound:"Keine {{entity}}-Datensätze gefunden.",noRecordsMatch:'Keine Datensätze entsprechen "{{query}}"',recordsCount:"{{filtered}} von {{total}} Datensätzen",totalRecords:"{{total}} Datensätze",running:"Wird ausgeführt...",automationName:"Automatisierungsname",describeAutomation:"Beschreibe, was diese Automatisierung tut.",functionToRun:"Auszuführende Funktion",selectFunction:"Wähle eine Backend-Funktion aus deinem Code. Die Funktion erhält die Entitätsdaten, wenn die Automatisierung ausgelöst wird.",noBackendFunctions:"Keine Backend-Funktionen verfügbar",selectAFunction:"Funktion auswählen",runsWhen:"Wird ausgeführt wenn",noItems:"Keine Elemente",selectItem:"Element auswählen",is:"Ist",selectEvent:"Ereignis auswählen",automationNameRequired:"Automatisierungsname ist erforderlich.",selectEntity:"Bitte wähle eine Entität aus.",selectEventType:"Bitte wähle mindestens einen Ereignistyp aus.",selectFunctionRequired:"Bitte wähle eine auszuführende Funktion.",newDataAutomation:"Neue Daten-Automatisierung",details:"Details",logsWillAppearAfterFire:"Protokolle erscheinen hier, nachdem diese Automatisierung ausgelöst wurde.",selectFunctionFromCode:"Wähle eine Backend-Funktion aus deinem Code. Um eine Funktion hinzuzufügen oder zu bearbeiten, aktualisiere sie in deinem Code oder frage den Chat um Hilfe.",recurring:"Wiederkehrend",oneTime:"Einmalig",repeatsEvery:"Wiederholt sich alle",minute:"Minute",hour:"Stunde",day:"Tag",week:"Woche",month:"Monat",startAt:"Beginnt um",at:"Um",repeatsOn:"Wiederholt sich am",repeatsOnDay:"Wiederholt sich am Tag",ends:"Endet",never:"Nie",on:"Am",after:"Nach",occurrences:"Wiederholungen",runOn:"Ausführen am",atTime:"Zur Uhrzeit",oneTimeDateRequired:"Einmalige Zeitpläne erfordern die Angabe eines Datums.",oneTimeTimeRequired:"Einmalige Zeitpläne erfordern die Angabe einer Uhrzeit.",oneTimePastError:"Datum und Uhrzeit für einmalige Zeitpläne dürfen nicht in der Vergangenheit liegen.",minMinutesInterval:"Das Mindestintervall für minutenbasierte Zeitpläne beträgt {{min}} Minuten.",selectDayForWeekly:"Bitte wähle mindestens einen Tag für den wöchentlichen Zeitplan.",monthlyDayRequired:"Monatliche Zeitpläne erfordern die Auswahl eines Tages im Monat.",endDateRequired:"Ein Enddatum ist erforderlich, wenn 'Endet' auf 'Am' gesetzt ist.",endDatePast:"Das Enddatum darf nicht in der Vergangenheit liegen.",occurrenceCountMin:"Die Anzahl der Wiederholungen muss mindestens 1 betragen.",newScheduledAutomation:"Neue geplante Automatisierung",logsWillAppearAfterRun:"Protokolle erscheinen hier, nachdem diese Automatisierung ausgeführt wurde.",description:"Beschreibung",nameField:"Name",typeField:"Typ",automationUpdated:"Automatisierung erfolgreich aktualisiert",automationCreated:"Automatisierung erfolgreich erstellt",failedToSave:"Automatisierung konnte nicht gespeichert werden",functionArgs:"Argumente (JSON)",functionArgsPlaceholder:'{"key": "value"}',functionArgsTooltip:"Optionales JSON-Objekt, das als zusätzliche Argumente an die Funktion übergeben wird.",functionArgsInvalidJson:"Argumente müssen gültiges JSON sein.",advanced:"Erweitert",triggerConditions:"Auslösebedingungen",conditionsSetByAI:"Bedingungen werden vom KI-Builder konfiguriert und können nicht manuell bearbeitet werden.",conditionsSummaryError:"Bedingungszusammenfassung konnte nicht geladen werden.",connectorNoManualIntegrations:"Keine Integrationen für manuelle Erstellung verfügbar",connectorNoManualIntegrationsHint:"Einige Integrationen erfordern Auslösebedingungen und können nur über den KI-Builder erstellt werden.",suggestedForYou:"Empfehlungen für dich",basedOnYourContext:"Basierend auf dem Kontext deiner App",createFromScratch:"Von Grund auf erstellen"},z_={automations:R_},M_={title:"Integrationen",myIntegrations:"Meine Integrationen",browse:"Durchsuchen",payments:"Zahlungen",failedToLoad:"App-Verbindungen konnten nicht geladen werden",successfullySwitched:"Konto erfolgreich gewechselt zu {{name}}",cancelled:"Abgebrochen",connectionCancelled:"App-Verbindung wurde abgebrochen",disconnected:"{{name}} wurde getrennt",failedToDisconnect:"App-Verbindung konnte nicht getrennt werden",stripeRemoved:"Stripe-Integration wurde entfernt",wixPaymentsDisconnected:"Wix Payments wurde getrennt",integrationRemoved:"{{name}} wurde entfernt",failedToRemove:"Integration konnte nicht entfernt werden",connectedAccountsWarning:"Verbundene Konten können sensible Daten für jeden mit Zugriff offenlegen.",unlockFeature:"Diese Funktion freischalten",unlockFeatureDesc:"Diese Funktion ist nur im Builder-Plan oder höher verfügbar. Upgrade, um ohne Einschränkungen weiterzuarbeiten",upgradeToUseConnector:"Upgraden, um die Funktion zu nutzen",access:"{{name}}-Zugriff",disconnectAccount:"Konto trennen?",disconnectDesc:"Der Zugriff für <bold>{{email}}</bold> auf <bold>{{name}}</bold> wird widerrufen.<br/>Der Integrationseintrag wird für eine zukünftige Wiederverbindung beibehalten.",disconnecting:"Wird getrennt...",disconnect:"Trennen",removeIntegration:"Integration entfernen?",removeDesc:"<bold>{{name}}</bold> wird dauerhaft aus dieser App entfernt.<br/>Um die Verbindung erneut herzustellen, musst du sie von Grund auf neu einrichten.",removing:"Wird entfernt...",remove:"Entfernen",cancel:"Abbrechen",reject:"Ablehnen",new:"Neu",done:"Fertig",success:"Erfolg",error:"Fehler",setupIntegrations:"Integrationen einrichten",setupIntegrationsDesc:"Verknüpfe deine App ganz einfach mit Konnektoren wie Google Calendar, Google Drive, Slack, Notion, Salesforce, HubSpot und mehr.",setupIntegrationsChat:"Beschreibe einfach im Chat, was du verbinden möchtest, und es wird für dich eingerichtet.",viewAccess:"Zugriff anzeigen",connecting:"Wird verbunden...",switchAccount:"Konto wechseln",reconnect:"Erneut verbinden",disconnectAccount2:"Konto trennen",use:"Verwenden",examplePrompts:"Beispiel-Prompts",clickPromptToAdd:"Klicke auf einen Prompt, um ihn zu deinem Chat hinzuzufügen.",unableToLoadSuggestions:"Vorschläge konnten nicht geladen werden. Bitte versuche es später erneut.",requiresBackendFunctions:"Diese Integration erfordert Backend-Funktionen, eine Funktion, die nur im Builder-Plan und höher verfügbar ist. ",seePlans:"Pläne ansehen",promptAddedToChat:"Prompt zum Chat hinzugefügt. Drücke Enter zum Senden.",connectors:"Konnektoren",connectorsDesc:"Verbinde deine App mit beliebten Diensten über schnelle OAuth-Verbindungen.",searchConnectors:"Konnektoren suchen",noSearchResults:"Keine Ergebnisse für deine Suche",noSearchResultsDesc:"Versuche andere Suchbegriffe oder überprüfe die Schreibweise. Du kannst auch nach Name oder kürzlich hinzugefügt sortieren.",sort:{title:"Sortieren",mostUsed:"Meistgenutzt",recentlyAdded:"Kürzlich hinzugefügt",az:"A-Z",za:"Z-A"},revoked:"Widerrufen",connectionLost:"Verbindung verloren — bitte erneut verbinden",configModal:{connectTo:"Verbinden mit {{name}}",configureConnection:"Konfiguriere deine {{name}}-Verbindung",loadingConfig:"Konfiguration wird geladen...",retryHint:"Du kannst es erneut versuchen.",connect:"Verbinden",connecting:"Verbindung wird hergestellt...",validationRequired:"{{name}} ist erforderlich",validationInvalid:"{{name}} ist ungültig",fetchError:"Konfiguration konnte nicht geladen werden.",retry:"Erneut versuchen"},wixPayments:{title:"Wix Payments",live:"Live",disconnected:"Getrennt",acceptingPayments:"Zahlungen werden akzeptiert",integrationDisconnected:"Integration getrennt",openingWixPayments:"Wix Payments wird geöffnet...",popupBlocked:"Wix Payments wurde von deinem Browser blockiert. Verwende den untenstehenden Link, um das Payments-Dashboard manuell zu öffnen.",errors:{noUrl:"Die Wix-Payments-URL konnte nicht abgerufen werden. Bitte versuche es erneut.",fetchFailed:"Wix Payments konnte nicht geöffnet werden. Bitte versuche es erneut.",invalidRedirect:"Wix Payments konnte nicht geöffnet werden. Bitte versuche es erneut."},openDashboard:"Dashboard öffnen",managePayments:"Zahlungen verwalten",disconnect:"Trennen",disconnectIntegration:"Integration trennen?",disconnectDesc:"<bold>Wix Payments</bold> wird von dieser App getrennt.<br/>Du kannst es später über den Chat erneut verbinden.",disconnecting:"Wird getrennt...",disconnectButton:"Trennen",enterNamePrompt:"Bitte geben Sie Ihren Namen ein, um fortzufahren:",firstNamePlaceholder:"Vorname",lastNamePlaceholder:"Nachname"},stripe:{unableToClaimSandbox:"Sandbox konnte nicht beansprucht werden",sandboxExpired:"Die Sandbox ist möglicherweise abgelaufen oder wurde bereits beansprucht. Bitte lade die Seite neu.",failedGetClaimUrl:"Claim-URL konnte nicht abgerufen werden",pleaseTryAgain:"Bitte versuche es erneut oder lade die Seite neu.",pendingSetup:"Einrichtung ausstehend",completeSetupGuide:"Schließe die Einrichtungsanleitung ab, um echte Zahlungen zu empfangen",live:"Live",stripe:"Stripe",loadingStripe:"Laden...",acceptingPayments:"Echte Zahlungen werden akzeptiert",accountDetails:"Stripe-Kontodetails",hideGuide:"Anleitung ausblenden",showGuide:"Anleitung anzeigen",goToStripe:"Zu Stripe wechseln",aboutIntegration:"Über die Integration",aboutStripeIntegration:"Über die Stripe-Integration",stripeDesc:"Mit Stripe kannst du Zahlungen annehmen, Auszahlungen senden und dein Geschäft online verwalten. Diese Integration ermöglicht dir:",acceptCards:"Kreditkarten und andere Zahlungsmethoden akzeptieren",createProducts:"Produkte und Abonnements erstellen",manageCustomers:"Kunden und Abrechnung verwalten",close:"Schließen",tryTestPayment:"Testzahlung durchführen",claimSandbox:"Deine Stripe-Sandbox beanspruchen",addLiveKeys:"Füge deine Live-API-Schlüssel von Stripe hinzu",copiedCard:"Kopiert!",testCardCopied:"Testkartennummer in die Zwischenablage kopiert.",failedToCopy:"Kopieren fehlgeschlagen",copyManually:"Bitte manuell kopieren: 4242 4242 4242 4242",keysSaved:"API-Schlüssel erfolgreich gespeichert.",failedSaveKeys:"API-Schlüssel konnten nicht gespeichert werden. Bitte versuche es erneut.",movedOutOfTestMode:"Du hast den Testmodus verlassen.",noNeedTestPayments:"Testzahlungen sind nicht mehr nötig.",useTestCard:"Verwende diese Testkarte, um einen Kauf zu simulieren:",testCardNumber:"4242 4242 4242 4242",anyFutureExpiry:", beliebiges zukünftiges Ablaufdatum, beliebige 3-stellige CVC.",publishAndOpen:"Veröffentliche deine App und öffne sie in einem neuen Tab, um das Bezahlerlebnis zu testen",copyCardNumber:"Kartennummer kopieren",connectStripeDesc:"Verbinde dich mit deinem bestehenden Stripe-Konto oder erstelle ein neues, um echte Zahlungen zu empfangen.",claimAndGoLive:"Beanspruchen & Live gehen",copyLiveKeys:"Kopiere deine Live-Publishable- und Secret-Schlüssel aus deinem <link>Stripe-Dashboard</link>, um die Einrichtung abzuschließen und echte Zahlungen in deiner App zu aktivieren.",publishableKey:"Publishable Key",secretKey:"Secret Key",enterValue:"Wert eingeben",savingKeys:"Wird gespeichert...",saveApiKeys:"API-Schlüssel speichern",completeStepInStripe:"Um diesen Schritt abzuschließen, beanspruche die Sandbox und schließe die Einrichtung in Stripe ab"}},N_={title:"App-Integrationen",subtitle:"Verbinde deine App mit Drittanbieter-Diensten und erweitere ihre Funktionalität.",integrationCatalog:"Integrationskatalog",payments:"Zahlungen",zapier:"Zapier",couldNotLoad:"Integrationsdetails konnten nicht geladen werden. Bitte versuche es erneut.",loadingDetails:"Details werden geladen...",backToCatalog:"Zurück zum Katalog",integrationAdded:"Integration hinzugefügt (Platzhalter)",wouldBeAdded:"{{name}} würde zu deiner App hinzugefügt werden. Geheime Werte protokolliert.",requiresConfiguration:"Konfiguration erforderlich",requiresSecrets:"Diese Integration erfordert {{count}} geheime(n) Wert(e) zur Konfiguration.",addToApp:"Zur App hinzufügen",paymentProcessing:"Zahlungsabwicklung",paymentProcessingDesc:"Akzeptiere Zahlungen in deiner App mit beliebten Zahlungsanbietern. Demnächst verfügbar!",leadingPaymentPlatform:"Führende Zahlungsplattform",globallyRecognized:"Weltweit anerkannte Zahlungen",configurePayment:"Konfiguriere Zahlungsanbieter, um Abonnements, Einmalkäufe und mehr in deiner App zu ermöglichen.",zapierIntegration:"Zapier-Integration",zapierDesc:"Verbinde deine App mit tausenden anderen Diensten über Zapier.",automateWithZapier:"Automatisiere mit Zapier",linkBase44:"Verknüpfe Base44 mit deinen Lieblings-Apps wie Slack, Google Sheets, Mailchimp und mehr.",exploreOnZapier:"Base44 auf Zapier erkunden",configureIntegration:"{{name}} konfigurieren",configureDesc:"Diese Integration erfordert einige geheime Werte. Diese werden sicher und verschlüsselt gespeichert.",saveAndAdd:"Speichern und Integration hinzufügen"},F_={title:"Fähigkeiten",description:"Füge Fähigkeiten hinzu, um zu gestalten, wie die KI deine Apps erstellt.",manage:"Verwalten"},L_=JSON.parse('{"title":"Konnektoren","connectorsForAppUsers":"Konnektoren für App-Nutzer","connectorsForAppUsersDesc":"Richten Sie Konnektoren ein, damit App-Nutzer ihre persönlichen Konten mit Apps in diesem Workspace verknüpfen können.","connectorsForAppUsersDialogDesc":"Lassen Sie App-Nutzer ihre persönlichen Konten mit Apps in diesem Workspace verknüpfen.","addConnector":"Konnektor hinzufügen","browseConnectors":"Konnektoren durchsuchen","noConnectorsYet":"Noch keine Konnektoren","noConnectorsYetDesc":"Fügen Sie Konnektoren hinzu, damit App-Nutzer ihre persönlichen Konten verknüpfen können.","view":"Anzeigen","edit":"Bearbeiten","connections":"Verbindungen","addConnection":"Verbindung hinzufügen","viewConnector":"Konnektor anzeigen","connectorName":"Konnektor-Name","connector":"{{name}}-Konnektor","examplePrompts":"Beispiel-Prompts","back":"Zurück","configureConnection":"Verbindung konfigurieren","configureConnectionDesc":"Geben Sie Ihre Client-ID, Ihr Geheimnis und Berechtigungen an.","connectorNameDesc":"Geben Sie einen kurzen Namen ein, um diesen Konnektor zu identifizieren","clientId":"Client-ID","clientSecret":"Client-Geheimnis","clientSecrets":"Client-Geheimnisse","scopes":"Bereiche","scopesDesc":"Geben Sie die Bereiche ein, die Ihre App benötigt. Schreiben Sie jeden Bereich in eine separate Zeile.","scopesPlaceholder":"Bereiche eingeben, einen pro Zeile","scopesPlaceholderExample":"z.B.\\nhttps://www.googleapis.com/auth/calendar.readonly\\nemail","connectionConfig":"Verbindungskonfiguration","cancel":"Abbrechen","close":"Schließen","addingConnector":"Wird hinzugefügt...","savingConnector":"Wird gespeichert...","saveChanges":"Änderungen speichern","deleteConnector":"Konnektor löschen","deleteConfirm":"{{name}} löschen? Diese Aktion kann nicht rückgängig gemacht werden.","deleting":"Wird gelöscht...","addConnectionTitle":"{{name}}-Verbindung hinzufügen","editConnectionTitle":"{{name}}-Verbindung bearbeiten","connectorReadOnly":"{{name}}-Konnektor","readOnlyDesc":"Schreibgeschützte Ansicht der Konnektor-Details","builtInConnectors":"Integrierte Konnektoren","promptExamples":"Prompt-Beispiele für den Einstieg","adminOnlyTooltip":"Nur Workspace-Administratoren oder -Besitzer können Integrationen für App-Nutzer verbinden","settingUp":"Konnektor wird eingerichtet...","configured":"Konnektor konfiguriert","setUp":"{{type}} App-Nutzer-Konnektor einrichten","setUpGeneric":"App-Nutzer-Konnektor einrichten","connecting":"Wird verbunden...","connect":"Verbinden","reject":"Ablehnen","workspaceLevelNote":"Diese Integration wird auf Workspace-Ebene zugänglich sein und auf alle in diesem Workspace erstellten Anwendungen angewendet.","previousMessage":"Diese Konnektor-Einrichtung stammt aus einer vorherigen Nachricht","toastErrorTitle":"Fehler","toastCreated":"Konnektor erstellt","toastCreateFailed":"Konnektor konnte nicht erstellt werden","toastDuplicateName":"Ein Konnektor mit diesem Namen existiert bereits in diesem Workspace","toastUpdated":"Konnektor aktualisiert","toastUpdateFailed":"Konnektor konnte nicht aktualisiert werden","toastDeleted":"Konnektor gelöscht","toastDeleteFailed":"Konnektor konnte nicht gelöscht werden","configFetchFailed":"Verbindungskonfiguration konnte nicht geladen werden. Erforderliche Felder fehlen möglicherweise.","retry":"Erneut versuchen","toastLoadFailed":"OAuth-Konnektoren konnten nicht geladen werden","namePlaceholder":"z.B. Marketing {{label}}","clientIdPlaceholder":"OAuth-Client-ID eingeben","clientSecretPlaceholderNew":"Neues Client-Geheimnis eingeben","clientSecretPlaceholder":"OAuth-Client-Geheimnis eingeben","extraDetails":{"googlecalendar":{"longDescription":"Verbinde dich mit Google Kalender, damit deine App-Nutzer Kalendereinträge anzeigen, erstellen und verwalten können. Synchronisiere Termine, automatisiere die Erstellung von Besprechungen aus Formulareingaben und erstelle Planungs-Workflows.","examplePrompt0":"Synchronisiere anstehende Besprechungen mit einem In-App-Dashboard.","examplePrompt1":"Erstelle Kalendereinträge aus Formulareingaben.","examplePrompt2":"Zeige eine Tagesübersicht für den angemeldeten Nutzer an.","examplePrompt3":"Sende Erinnerungen vor anstehenden Terminen."},"slack":{"longDescription":"Verbinde dich mit Slack, um Nachrichten zu teilen und Canvases direkt zu erstellen, damit die Zusammenarbeit vereinfacht und die Produktivität gesteigert wird. Suche und rufe Nachrichten, Kanäle, Threads, Dateien und Nutzer ab, um Claude den Kontext für eine effizientere Arbeit zu geben.","examplePrompt0":"Synchronisiere neue App-Nutzer mit einem Slack-Kanal.","examplePrompt1":"Sende Build-Statusupdates an #devops.","examplePrompt2":"Poste App-Fehler im #alerts-Kanal.","examplePrompt3":"Benachrichtige das Team bei neuem Kundenfeedback."},"salesforce":{"longDescription":"Verbinde dich mit Salesforce, um auf Kontakte, Leads, Opportunities und benutzerdefinierte Objekte zuzugreifen. Ermögliche deinen App-Nutzern, ihre CRM-Daten einzusehen und zu aktualisieren, Deals zu verfolgen und Vertriebsworkflows zu automatisieren.","examplePrompt0":"Zeige ein Dashboard mit offenen Opportunities an.","examplePrompt1":"Erstelle einen neuen Lead aus einer Formulareingabe.","examplePrompt2":"Synchronisiere Kontaktaktualisierungen zurück zu Salesforce.","examplePrompt3":"Benachrichtige das Team, wenn ein Deal abgeschlossen wird."},"hubspot":{"longDescription":"Verbinde dich mit HubSpot, um Kontakte, Unternehmen, Deals und Marketingkampagnen zu verwalten. Ermögliche deinen App-Nutzern, ihre CRM-Daten zu synchronisieren, Interaktionen zu verfolgen und Marketingworkflows zu automatisieren.","examplePrompt0":"Zeige eine Liste der neuesten Deals in der App an.","examplePrompt1":"Füge neue Kontakte aus Anmeldeformularen hinzu.","examplePrompt2":"Synchronisiere E-Mail-Kampagnenergebnisse mit einem Dashboard.","examplePrompt3":"Aktualisiere Deal-Phasen aus der App."},"notion":{"longDescription":"Verbinde dich mit Notion, um auf Seiten, Datenbanken und Workspace-Inhalte zuzugreifen. Ermögliche deinen App-Nutzern, ihren Notion-Workspace zu lesen und zu aktualisieren, strukturierte Daten zu synchronisieren und Content-Workflows zu automatisieren.","examplePrompt0":"Ziehe Aufgabenlisten aus einer Notion-Datenbank.","examplePrompt1":"Erstelle neue Seiten aus Formulareingaben.","examplePrompt2":"Synchronisiere Projektstatusaktualisierungen mit Notion.","examplePrompt3":"Zeige Notion-Inhalte innerhalb der App an."},"slackbot":{"longDescription":"Verbinde einen Slack-Bot, um Nachrichten als gebrandeten Bot mit benutzerdefiniertem Namen und Symbol zu posten. Reagiere auf App-Erwähnungen, verwende Slash-Befehle und automatisiere Bot-basierte Workflows in deinem Slack-Workspace.","examplePrompt0":"Poste tägliche Standup-Zusammenfassungen in #general.","examplePrompt1":"Reagiere auf Slash-Befehle mit App-Daten.","examplePrompt2":"Sende automatisierte Warnungen, wenn Aufgaben überfällig sind.","examplePrompt3":"Benachrichtige Kanäle, wenn neue Bestellungen eingehen."},"googledrive":{"longDescription":"Verbinde dich mit Google Drive, um Dateien hochzuladen, zu organisieren und zu verwalten. Ermögliche deinen App-Nutzern, generierte Dokumente zu speichern, Daten zu sichern und direkt aus deiner App auf ihre Drive-Dateien zuzugreifen.","examplePrompt0":"Speichere generierte Berichte in einem gemeinsamen Drive-Ordner.","examplePrompt1":"Lade vom Nutzer eingereichte Dateien auf Google Drive hoch.","examplePrompt2":"Liste aktuelle Dateien aus einem bestimmten Ordner auf.","examplePrompt3":"Sichere App-Datenexporte automatisch auf Drive."},"gmail":{"longDescription":"Verbinde dich mit Gmail, um E-Mails programmatisch zu senden, zu lesen und zu verwalten. Ermögliche deinen App-Nutzern, E-Mail-Workflows zu automatisieren, Posteingangsnachrichten zu lesen und personalisierte E-Mails von ihrem eigenen Konto zu senden.","examplePrompt0":"Sende eine Bestätigungs-E-Mail nach einer Formulareingabe.","examplePrompt1":"Zeige die neuesten Posteingangsnachrichten des Nutzers an.","examplePrompt2":"Antworte automatisch auf E-Mails, die bestimmte Kriterien erfüllen.","examplePrompt3":"Verfasse und sende personalisierte Outreach-E-Mails."},"googlesheets":{"longDescription":"Verbinde dich mit Google Sheets, um Tabellendaten zu lesen, zu schreiben und zu aktualisieren. Ermögliche deinen App-Nutzern, Datensätze zu synchronisieren, Daten aus Tabellen zu importieren und App-Daten in ihre Tabellen zu exportieren.","examplePrompt0":"Importiere Produktdaten aus einer Google-Tabelle.","examplePrompt1":"Exportiere tägliche Verkaufsberichte in eine Tabelle.","examplePrompt2":"Synchronisiere Formulareingaben mit einer Tracking-Tabelle.","examplePrompt3":"Lies Preisdaten aus einer gemeinsamen Tabelle."},"googleslides":{"longDescription":"Verbinde dich mit Google Slides, um Präsentationen zu erstellen und zu bearbeiten. Ermögliche deinen App-Nutzern, Foliensätze aus Vorlagen zu generieren, dynamische Inhalte hinzuzufügen und die Präsentationserstellung zu automatisieren.","examplePrompt0":"Generiere ein Pitch-Deck aus Formulareingaben.","examplePrompt1":"Füge eine neue Folie mit wöchentlichen Kennzahlen hinzu.","examplePrompt2":"Erstelle Präsentationen aus Berichtsvorlagen.","examplePrompt3":"Aktualisiere Folieninhalte mit den neuesten Daten."},"googledocs":{"longDescription":"Verbinde dich mit Google Docs, um Dokumente zu erstellen, zu lesen und zu bearbeiten. Ermögliche deinen App-Nutzern, Verträge zu generieren, Vorlagen auszufüllen und Dokumente direkt aus deiner App zu verwalten.","examplePrompt0":"Generiere einen Vertrag aus einer Vorlage.","examplePrompt1":"Erstelle Besprechungsnotizen aus Formulardaten.","examplePrompt2":"Fülle eine Dokumentvorlage mit Nutzerdaten aus.","examplePrompt3":"Füge neue Inhalte zu einem bestehenden Dokument hinzu."},"googlebigquery":{"longDescription":"Verbinde dich mit Google BigQuery, um SQL-Abfragen auszuführen und große Datensätze zu analysieren. Ermögliche deinen App-Nutzern, ihr Data Warehouse abzufragen, Dashboards zu erstellen und Analysen in deine App zu übertragen.","examplePrompt0":"Frage Verkaufsdaten ab und zeige sie in einem Diagramm an.","examplePrompt1":"Ziehe Nutzeranalysen aus BigQuery-Tabellen.","examplePrompt2":"Führe einen geplanten Bericht aus Warehouse-Daten aus.","examplePrompt3":"Zeige die meistverkauften Produkte aus Abfrageergebnissen an."},"linkedin":{"longDescription":"Verbinde dich mit LinkedIn, um auf Profildaten zuzugreifen und Beiträge zu teilen. Ermögliche deinen App-Nutzern, Updates zu veröffentlichen, berufliche Profile abzurufen und Social-Media-Workflows auf LinkedIn zu automatisieren.","examplePrompt0":"Poste Unternehmensupdates automatisch auf LinkedIn.","examplePrompt1":"Rufe Profildetails für den angemeldeten Nutzer ab.","examplePrompt2":"Teile Blogbeiträge aus der App auf LinkedIn.","examplePrompt3":"Zeige LinkedIn-Profilinfos auf einem Dashboard an."},"tiktok":{"longDescription":"Verbinde dich mit TikTok, um auf Profilinfos, Follower-Statistiken und Videodaten zuzugreifen. Ermögliche deinen App-Nutzern, ihre TikTok-Performance zu verfolgen und ihre veröffentlichten Videos zu durchsuchen.","examplePrompt0":"Zeige Follower-Anzahl und Profilstatistiken an.","examplePrompt1":"Liste die neuesten TikTok-Videos des Nutzers auf.","examplePrompt2":"Zeige Video-Performance-Kennzahlen auf einem Dashboard an.","examplePrompt3":"Verfolge das Follower-Wachstum über die Zeit."},"discord":{"longDescription":"Verbinde dich mit Discord, um Nachrichten zu senden, Server zu verwalten und mit Gilden und Kanälen zu interagieren. Ermögliche deinen App-Nutzern, Benachrichtigungen zu automatisieren, Updates zu posten und sich mit ihrer Discord-Community zu integrieren.","examplePrompt0":"Sende Bestellbenachrichtigungen an einen Discord-Kanal.","examplePrompt1":"Poste App-Warnungen in einem #benachrichtigungen-Kanal.","examplePrompt2":"Liste verfügbare Kanäle in einem Discord-Server auf.","examplePrompt3":"Benachrichtige das Team, wenn sich ein neuer Nutzer anmeldet."},"wix":{"longDescription":"Verbinde dich mit Wix, um auf Website-Daten zuzugreifen, Inhalte zu verwalten und mit Wix-Geschäftslösungen wie Stores, Bookings und CRM zu interagieren. Ermögliche deinen App-Nutzern, Produkte, Bestellungen und Kundendaten zu synchronisieren.","examplePrompt0":"Synchronisiere Wix-Store-Produkte mit der App.","examplePrompt1":"Ziehe aktuelle Bestellungen aus Wix Stores.","examplePrompt2":"Zeige Buchungsverfügbarkeit von Wix Bookings an.","examplePrompt3":"Verwalte Wix-CRM-Kontakte aus deiner App."},"github":{"longDescription":"Verbinde dich mit GitHub, um auf Repositories zuzugreifen, Issues und Pull Requests zu verwalten und Entwicklungsworkflows zu automatisieren. Ermögliche deinen App-Nutzern, Codeänderungen zu verfolgen, Issues zu erstellen und ihren Entwicklungsprozess zu optimieren.","examplePrompt0":"Liste offene Issues aus einem Repository auf.","examplePrompt1":"Erstelle ein neues Issue aus einem Fehlerbericht-Formular.","examplePrompt2":"Zeige aktuelle Pull Requests auf einem Dashboard an.","examplePrompt3":"Verfolge Commit-Aktivitäten über Repositories hinweg."},"wrike":{"longDescription":"Verbinde dich mit Wrike, um Projekte, Aufgaben und Teamzusammenarbeit zu verwalten. Ermögliche deinen App-Nutzern, Aufgaben zu erstellen und zu aktualisieren, den Projektfortschritt zu verfolgen und die Arbeit teamübergreifend zu koordinieren.","examplePrompt0":"Erstelle Aufgaben aus Formulareingaben.","examplePrompt1":"Zeige Projektzeitpläne auf einem Dashboard an.","examplePrompt2":"Aktualisiere den Aufgabenstatus aus der App heraus.","examplePrompt3":"Zeige Teamauslastung und Aufgabenzuweisungen an."},"box":{"longDescription":"Verbinde dich mit Box, um Dateien und Ordner hochzuladen, zu verwalten und zu teilen. Ermögliche deinen App-Nutzern, Dokumente sicher zu speichern, Dateien zu organisieren und in Box an Inhalten zusammenzuarbeiten.","examplePrompt0":"Lade generierte Dokumente in einen Box-Ordner hoch.","examplePrompt1":"Liste Dateien in einem gemeinsamen Box-Verzeichnis auf.","examplePrompt2":"Lade Dateien aus Box in die App herunter.","examplePrompt3":"Teile einen Box-Dateilink mit Teammitgliedern."},"clickup":{"longDescription":"Verbinde dich mit ClickUp, um Aufgaben, Projekte und Team-Workflows zu verwalten. Ermögliche deinen App-Nutzern, Aufgaben zu erstellen, Status zu aktualisieren und den Projektfortschritt direkt aus deiner App zu verfolgen.","examplePrompt0":"Erstelle ClickUp-Aufgaben aus Formulareingaben.","examplePrompt1":"Zeige den Aufgabenboard-Status auf einem Dashboard an.","examplePrompt2":"Aktualisiere Aufgabenprioritäten aus der App.","examplePrompt3":"Liste überfällige Aufgaben für den aktuellen Sprint auf."},"google_analytics":{"longDescription":"Verbinde dich mit Google Analytics, um auf Website-Traffic, Nutzerverhalten und Marketing-Performance-Daten zuzugreifen. Ermögliche deinen App-Nutzern, Analyseberichte einzusehen und wichtige Kennzahlen innerhalb deiner App zu verfolgen.","examplePrompt0":"Zeige Seitenaufrufe und Sitzungen auf einem Dashboard an.","examplePrompt1":"Zeige die Top-Traffic-Quellen der letzten Woche an.","examplePrompt2":"Verfolge Konversionsraten über Kampagnen hinweg.","examplePrompt3":"Ziehe Nutzerdemografie- und Verhaltensdaten."},"outlook":{"longDescription":"Verbinde dich mit Outlook, um E-Mails zu senden und zu lesen, Kalendereinträge zu verwalten und auf Microsoft-365-Mail und -Kalender zuzugreifen. Ermögliche deinen App-Nutzern, E-Mail-Workflows zu automatisieren und ihren Zeitplan zu synchronisieren.","examplePrompt0":"Sende Follow-up-E-Mails aus der App.","examplePrompt1":"Zeige anstehende Kalendereinträge an.","examplePrompt2":"Erstelle Kalendereinträge aus Formulareingaben.","examplePrompt3":"Zeige aktuelle E-Mails auf einem Dashboard an."},"linear":{"longDescription":"Verbinde dich mit Linear, um Issues, Projekte und Zyklen zu erstellen und zu verwalten. Ermögliche deinen App-Nutzern, Team-Workflows zu verfolgen, Sprints zu organisieren und den Engineering-Fortschritt im Blick zu behalten.","examplePrompt0":"Erstelle Linear-Issues aus Fehlerbericht-Formularen.","examplePrompt1":"Zeige aktive Sprint-Issues auf einem Dashboard an.","examplePrompt2":"Aktualisiere den Issue-Status aus der App heraus.","examplePrompt3":"Verfolge Zyklusfortschritt und Team-Velocity."},"dropbox":{"longDescription":"Verbinde dich mit Dropbox, um Dateien und Ordner hochzuladen, herunterzuladen und zu verwalten. Ermögliche deinen App-Nutzern, Dateien in der Cloud zu speichern, Daten zu synchronisieren und auf ihre Dropbox-Inhalte aus deiner App zuzugreifen.","examplePrompt0":"Lade exportierte Berichte auf Dropbox hoch.","examplePrompt1":"Liste Dateien in einem bestimmten Dropbox-Ordner auf.","examplePrompt2":"Lade gemeinsame Dateien in die App herunter.","examplePrompt3":"Synchronisiere App-Datensicherungen mit Dropbox."}},"builtIn":{"sendEmail":{"name":"E-Mails senden","rowDescription":"Sende E-Mails an Personen in deiner Base44-App mit anpassbaren Absendernamen und HTML-Inhalten.","subtitle":"Sende automatisierte E-Mails direkt aus deiner App an deine Nutzer.","longDescription":"Sende E-Mails automatisch aus deiner App als Teil von Workflows oder Automatisierungen. Diese Integration kann aus Flows, Backend-Funktionen oder Agenten ausgelöst werden, um Benachrichtigungen wie Bestätigungen, Warnungen, Zusammenfassungen oder Zugriffslinks an Nutzer zu senden.","examplePrompt0":"Wenn ein Support-Ticket auf \\"gelöst\\" aktualisiert wird, verwende SendEmail, um den Anfragenden mit einer Zusammenfassung der Lösung zu benachrichtigen.","examplePrompt1":"Erstelle eine wöchentliche Automatisierung, die SendEmail verwendet, um Admins eine Übersicht neuer Bestellungen und wichtiger Kennzahlen zu senden.","examplePrompt2":"Füge einen täglichen Flow hinzu, der SendEmail verwendet, um Admins eine Zusammenfassung neuer Anmeldungen in dieser App zu senden.","examplePrompt3":"Erstelle eine Automatisierung, die SendEmail verwendet, um Nutzer 24 Stunden vor ihrem gebuchten Termin zu erinnern."},"uploadFile":{"name":"Datei hochladen","rowDescription":"Lasse Nutzer Dateien in deine App hochladen. Verwende die zurückgegebene Datei-URL in anderen Integrationen oder Workflows.","subtitle":"Lasse Nutzer Dateien in deine App hochladen. Verwende die zurückgegebene Datei-URL in anderen Integrationen oder Workflows.","longDescription":"Ermögliche Nutzern, Dateien in deine App hochzuladen und an Datensätze anzuhängen. Diese Integration betreibt Upload-Komponenten, mit denen du Dokumente, Bilder, Quittungen, Verträge, Screenshots, Profilbilder, CSV-Dateien oder Tabellen sammeln und nur die sichere Datei-URL in deinen Daten speichern kannst.","examplePrompt0":"Füge ein Datei-Upload-Feld zu diesem Formular hinzu, verwende Datei hochladen und speichere die Datei-URL im zugehörigen Datensatz.","examplePrompt1":"Erstelle eine Seite, auf der Nutzer mit Datei hochladen Profilbilder hochladen und die Bild-URL in ihrer Nutzer-Entität speichern können.","examplePrompt2":"Richte einen Upload-Bereich für CSV-Dateien mit Datei hochladen ein, damit ich diese Dateien später in meine Datentabellen importieren kann."},"invokeLlm":{"name":"LLM aufrufen","rowDescription":"Generiere KI-Antworten mit integrierten Sprachmodellen, Prompts, Dateien und strukturierten Ausgaben.","subtitle":"Generiere KI-Antworten mit integrierten Sprachmodellen, Prompts, Dateien und strukturierten Ausgaben.","longDescription":"Verwende ein Sprachmodell, um Antworten aus Prompts zu generieren. Diese Integration kann strukturierte JSON-Ausgaben zurückgeben, Bilder analysieren, Dateianhänge als Kontext verwenden und bei Bedarf eine Websuche durchführen. Sie kann für Agenten, Workflows und andere KI-gesteuerte Funktionen in deiner App verwendet werden.","examplePrompt0":"Generiere KI-Antworten aus Nutzereingaben mit LLM aufrufen und zeige die Antwort auf dieser Seite an.","examplePrompt1":"Verwende LLM aufrufen, um lange Feedback-Nachrichten in drei Stichpunkte zusammenzufassen, die auf jedem Feedback-Datensatz gespeichert werden.","examplePrompt2":"Füge eine \\"Text umschreiben\\"-Funktion hinzu, die Nutzertext an LLM aufrufen sendet und eine klarere, freundlichere Version zurückgibt.","examplePrompt3":"Verwende LLM aufrufen, um jedes Support-Ticket als \\"Bug\\", \\"Feature-Anfrage\\" oder \\"Frage\\" zu klassifizieren und das Label am Ticket-Datensatz zu speichern."},"generateImage":{"name":"Bild generieren","rowDescription":"Erstelle Bilder aus detaillierten Textbeschreibungen. Gibt eine URL zum generierten Bild zurück.","subtitle":"Gib einfach eine Textbeschreibung des gewünschten Bildes ein, und es wird eine URL zum generierten Bild zurückgegeben.","longDescription":"Generiere Bilder mit KI aus Textbeschreibungen oder Flows in deiner App. Diese Integration ermöglicht es deiner App, Cover-Bilder, Thumbnails, Avatare, Produkt-Platzhalter oder einfache Marketing-Grafiken auf Abruf zu erstellen, ohne einen externen Bildanbieter zu verbinden.","examplePrompt0":"Verwende Bild generieren, um ein Standard-Produktbild zu erstellen, wenn ein neues Produkt ohne Fotos hinzugefügt wird.","examplePrompt1":"Füge eine Funktion hinzu, bei der Nutzer eine kurze Beschreibung eingeben können und Bild generieren eine Cover-Bild-URL zurückgibt, die auf ihrem Beitrag gespeichert wird.","examplePrompt2":"Erstelle einen Flow, der Bild generieren verwendet, um Avatar-Bilder für neue Nutzer basierend auf ihrer Lieblingsfarbe oder ihrem Thema zu generieren."},"extractData":{"name":"Daten aus hochgeladenen Dateien extrahieren","rowDescription":"Ziehe strukturierte Daten aus hochgeladenen Dateien (CSV, PNG, JPG, JPEG, PDF) mit JSON-Schemas. Nützlich für den Massenimport von Daten.","subtitle":"Ziehe strukturierte Daten aus hochgeladenen Dateien (CSV, PNG, JPG, JPEG, PDF) mit JSON-Schemas. Nützlich für den Massenimport von Daten.","longDescription":"Extrahiere automatisch strukturierte Daten aus Dateien, die in deine App hochgeladen werden, und speichere sie in deinen Entitäten. Diese Integration liest Dokumente und Tabellen und wandelt deren Inhalte in strukturierte Felder um, die du in Datensätzen, Berichten oder Automatisierungen verwenden kannst.","examplePrompt0":"Wenn jemand eine PDF-Rechnung hochlädt, verwende Daten extrahieren, um Lieferant, Gesamtbetrag und Fälligkeitsdatum in eine Rechnungs-Entität zu übertragen.","examplePrompt1":"Verwende Daten extrahieren, um eine CSV-Datei mit Kontakten zu lesen und einen Kontaktdatensatz pro Zeile zu erstellen.","examplePrompt2":"Nachdem ein Nutzer ein Quittungsbild hochgeladen hat, verwende Daten extrahieren, um Händler, Datum und Einzelposten in einen strukturierten Ausgaben-Datensatz zu extrahieren."},"whatsapp":{"name":"WhatsApp","rowDescription":"Verbinde deinen Agenten mit WhatsApp, damit Nutzer den Agenten deiner App direkt vom Handy aus kontaktieren können, ohne die App zu öffnen.","subtitle":"Verbinde deinen Agenten mit WhatsApp, damit Nutzer den Agenten deiner App direkt vom Handy aus kontaktieren können, ohne die App zu öffnen.","longDescription":"Verbinde deinen Agenten mit WhatsApp, damit Nutzer den Agenten deiner App direkt vom Handy aus kontaktieren können. Verwende diese Integration, um Support zu bearbeiten, Daten zu sammeln oder Updates über WhatsApp zu senden, während der Agent im Hintergrund auf die Daten und Workflows deiner App zugreift.","examplePrompt0":"Verbinde meinen Support-Agenten mit WhatsApp, damit Kunden dort Fragen stellen können und der Agent mit dem Wissen meiner App antwortet.","examplePrompt1":"Richte einen WhatsApp-Flow ein, bei dem neue Nachrichten Datensätze in meiner Kontakte-Entität erstellen oder aktualisieren und der Agent die Details bestätigt.","examplePrompt2":"Wenn sich ein Bestellstatus auf \\"versendet\\" ändert, soll der Agent eine WhatsApp-Nachricht mit dem Tracking-Link und wichtigen Bestellinformationen senden."}}}'),j_={title:"Konnektoren für App-Nutzer",description:"Richte Konnektoren ein, damit App-Nutzer ihre persönlichen Konten verknüpfen können.",manage:"Verwalten"},O_={connections:M_,integrations:N_,skillsBanner:F_,oauthConnectors:L_,oauthConnectorsBanner:j_},B_={importSuccessful:"Import erfolgreich",importSuccessfulMsg:"{{count}} {{name}}-Datensätze erfolgreich importiert",importFailed:"Import fehlgeschlagen",exportSuccessful:"Export erfolgreich",exportSuccessfulMsg:"Entitäten erfolgreich als CSV exportiert",exportFailed:"Export fehlgeschlagen",moveAllToTrash:"Alle Datensätze in den Papierkorb verschieben",moveAllToTrashConfirm:"Bist du sicher, dass du alle Datensätze in den Papierkorb verschieben möchtest? Du kannst sie später aus dem Papierkorb wiederherstellen.",moveToTrash:"In den Papierkorb",success:"Erfolg",allMovedToTrash:"Alle Datensätze erfolgreich in den Papierkorb verschoben",error:"Fehler",add:"Hinzufügen",addItem:"Element hinzufügen",import:"Importieren",export:"Exportieren",schema:"Schema",recentlyDeleted:"Kürzlich gelöscht",deleteAll:"Alle löschen",permissions:"Berechtigungen",permissionsDesc:"Erstelle Regeln, um zu steuern, wer Datensätze lesen und schreiben kann. Mehrere Regeln werden mit ODER-Logik verknüpft.",saveRules:"Regeln speichern",permissionsIssueDetected:"Berechtigungsproblem erkannt",learnMoreAboutPermissions:"<a>Mehr erfahren <icon/></a> über Berechtigungen und Sicherheitsregeln",customize:"Anpassen",apply:"Anwenden",checkingPermissions:"Berechtigungssicherheit wird geprüft",failedCheckPermissions:"Berechtigungsprüfung fehlgeschlagen",permissionsCheckPassed:"Berechtigungsprüfung bestanden",recommendedRules:"Empfohlene Regeln",editRecord:"{{entity}} bearbeiten",addNewRecord:"Neue(n) {{entity}} hinzufügen",test:"Test",production:"Produktion",filters:"Filter",schemaEditor:"Schema-Editor",noRecordsFound:"Keine Datensätze gefunden",getStartedAdding:"Beginne, indem du deinen ersten Datensatz hinzufügst.",loadingEntity:"{{entity}} wird geladen..."},U_={production:"Produktion",test:"Test"},q_={back:"Zurück",trashTitle:"{{entity}}: Papierkorb",test:"(Test)",production:"(Produktion)",trashDescription:`Anzeigen, wiederherstellen oder dauerhaft löschen.
Elemente werden nach 30 Tagen endgültig gelöscht.`,permanentlyDelete:"Datensatz dauerhaft löschen",permanentlyDeleteConfirm:"Bist du sicher, dass du diesen Datensatz dauerhaft löschen möchtest? Diese Aktion kann nicht rückgängig gemacht werden.",deletePermanently:"Dauerhaft löschen",restoreSelected:"Ausgewählte Datensätze wiederherstellen",restoreSelectedConfirm:"Bist du sicher, dass du {{count}} ausgewählte(n) Datensatz/Datensätze wiederherstellen möchtest?",restore:"Wiederherstellen",restoreAll:"Alle Datensätze wiederherstellen",restoreAllConfirm:"Bist du sicher, dass du alle Datensätze im Papierkorb wiederherstellen möchtest?",restoreAllBtn:"Alle wiederherstellen",deletedDate:"Gelöscht am",actions:"Aktionen",failedToLoad:"Gelöschte Datensätze konnten nicht geladen werden",tryAgain:"Erneut versuchen",loadingDeleted:"Gelöschte Datensätze werden geladen...",noDeletedRecords:"Keine gelöschten Datensätze gefunden",restoreCount:"{{count}} ausgewählte wiederherstellen",restoring:"Wird wiederhergestellt..."},V_={data:B_,toolbar:U_,trash:q_},$_=JSON.parse(`{"title":"Domains","subtitle":"Kaufe, verbinde und verwalte deine Domains.","learnMore":"Mehr erfahren","expired":"Vor {{days}} Tagen abgelaufen","expiresIn":"Läuft in {{days}} Tagen ab","lastChecked":"Zuletzt geprüft: {{time}}","domainLinked":"Domain verknüpft","domainLinkedMsg":"Domain wurde mit deinem Projekt verknüpft","errorLinkingDomain":"Fehler beim Verknüpfen der Domain","linking":"Wird verknüpft...","linkDomain":"Domain verknüpfen","checkStatus":"Status prüfen","checking":"Wird geprüft...","verifyDomain":"Verifizieren","verifying":"Wird verifiziert...","unlinkDomain":"Domain trennen","unlinking":"Wird getrennt...","unlinked":"Getrennt","domainActive":"Domain aktiv","waitingDns":"Warte auf DNS-Propagierung","verified":"Verifiziert","error":"Fehler","pending":"Ausstehend","domainUnlinked":"Domain getrennt","domainUnlinkedMsg":"Domain wurde von deinem Projekt getrennt","errorUnlinkingDomain":"Fehler beim Trennen der Domain","domainDeleted":"Domain gelöscht","errorDeletingDomain":"Fehler beim Löschen der Domain","errorCheckingStatus":"Fehler beim Prüfen des Status","verificationInitiated":"Verifizierung eingeleitet","checkBackMinutes":"Bitte prüfe in wenigen Minuten erneut","errorVerifyingDomain":"Fehler beim Verifizieren der Domain","deleteDomain":"Domain löschen","deleteConfirm":"Bist du sicher, dass du löschen möchtest?","deleting":"Wird gelöscht...","unlinkDialogDescription":"Diese Domain wurde über Base44 erworben.\\n\\nSie bleibt unter deinen Domains aufgelistet, ist aber nicht mehr mit deinem Projekt verbunden.","wantToUseDomain":"Möchtest du deine Domain verwenden?","customDomainsAvailable":"Eigene Domains sind ab dem Builder-Plan verfügbar.<br/>Upgrade, um deine Domain mit dieser App zu verbinden.","viewPlans":"Pläne anzeigen","getNewDomain":"Neue Domain erhalten","getNewDomainDescription":"Verleihe deiner App mit einer eigenen Domain einen professionellen Auftritt.","suggestedForApp":"Vorschlag für deine App: <bold>{{domain}}</bold>","suggestedForApp_prefix":"Vorschlag für deine App:","buyNewDomain":"Neue Domain kaufen","buyAnother":"Weitere kaufen","buyThisDomain":"Diese Domain kaufen","orConnectExisting":"Oder eine bestehende Domain verbinden, die du bereits besitzt","connectExistingDomain":"Bestehende Domain verbinden","getYourCustomDomain":"Hole dir deine eigene Domain","upgradeDescription":"Eigene Domains sind ab dem Builder-Plan verfügbar.","upgradeYourPlan":"Plan upgraden","processing":"Wird verarbeitet...","loading":"Laden...","domainLimitReached":"Domain-Limit erreicht","domainLimitMsg":"Du hast das Maximum von {{max}} Domains für diese App erreicht ({{current}}/{{max}}).\\nBitte entferne einige Domains, bevor du neue hinzufügst.","noCustomDomainYet":"Du hast noch keine eigene Domain verbunden","connectDescription":"Verbinde deine Base44-App mit deiner eigenen Domain, um deine Marke in den Vordergrund zu stellen und deine App leicht auffindbar und teilbar zu machen.","buyDomain":"Domain kaufen","neverExpires":"Läuft nie ab","editUrl":"URL bearbeiten","domainPurchased":"Domain gekauft!","domainPurchasedMsg":"Deine Domain {{domain}} wurde erfolgreich gekauft. Warte, bis sie in deinen Domains erscheint...","domainPurchaseFailed":"Domain-Kauf fehlgeschlagen","purchaseFailedMsg":"Kauf für {{domain}} fehlgeschlagen.","domainLimitReachedToast":"Domain-Limit erreicht","domainLimitToastMsg":"Du kannst nur bis zu {{max}} Domains pro App haben. Bitte entferne zuerst einige Domains.","domainAddedSuccessfully":"Domain erfolgreich hinzugefügt.","verifyToComplete":"Bitte verifiziere deine Domain, um die Einrichtung abzuschließen.","failedToConnect":"Domain konnte nicht verbunden werden","connectYourDomain":"Verbinden","builtInDomain":"Integrierte URL","customDomains":"Eigene Domains","adminCanAdd":"Admin: kann beliebige Domains hinzufügen","domainDisabled":"Domain deaktiviert","domainEnabled":"Domain aktiviert","domainDisabledMsg":"Domain wurde deaktiviert und leitet keinen Traffic mehr weiter.","domainEnabledMsg":"Domain wurde wieder aktiviert und leitet Traffic weiter.","errorTogglingDomain":"Fehler beim Umschalten der Domain","disabledBadge":"Deaktiviert","enableDomain":"Aktivieren","disableDomain":"Deaktivieren","enableDomainTitle":"Domain aktivieren (Admin)","disableDomainTitle":"Domain deaktivieren (Admin)","errorFetchingDomains":"Fehler beim Abrufen der Domains","cancel":"Abbrechen","cannotPurchase":"Domain kann nicht gekauft werden","domainPurchaseDisabled":"Domain-Kauf ist derzeit deaktiviert","entriNotReady":"Entri ist noch nicht bereit. Bitte versuche es in einem Moment erneut.","errorPurchasingDomain":"Fehler beim Kauf der Domain","loadingEntri":"Entri wird geladen...","addNewDomain":"Neue Domain hinzufügen","enterDomainFormat":"Gib deinen Domainnamen unten ein. Stelle sicher, dass er dem Format entspricht: app.beispiel.com","enterDomainPlaceholder":"Domain eingeben (z.B. app.beispiel.com)","invalidDomain":"Das sieht nicht nach einer gültigen Domain aus.\\nGib eine gültige Domain ein, z.B. beispiel.com oder app.beispiel.com.","domainAlreadyConnected":"Diese Domain ist bereits mit deiner App verbunden.","configureDnsAtRegister":"DNS beim Registrar konfigurieren","addDomain":"Domain hinzufügen","adding":"Wird hinzugefügt...","domainConnectionNeeded":"Domain-Verbindung erforderlich","retryFromEmailSettings":"Bitte versuche es erneut über die E-Mail-Domain-Einstellungen.","emailDomainSubmitted":"E-Mail-Domain eingereicht.","addDnsRecords":"Bitte füge DNS-Einträge bei deinem Domain-Anbieter hinzu.","verificationMayTake48h":"Die Verifizierung kann bis zu 48 Stunden dauern.","senderDetailsUpdated":"Absenderdetails aktualisiert.","editSenderDetails":"Absenderdetails bearbeiten","setSenderDetails":"Absenderdetails festlegen","saveChanges":"Änderungen speichern","connectDomain":"Domain verbinden","saving":"Wird gespeichert...","connecting":"Wird verbunden...","usersWillGetEmails":"Deine Benutzer erhalten E-Mails von diesen Absenderdetails.","senderName":"Absendername","customAddress":"Benutzerdefinierte Adresse","noReply":"no-reply","noReplyEmailAddress":"no-reply@base44-apps.com","domain":"Domain","copyToClipboard":"In die Zwischenablage kopieren","addCnameRecord":"CNAME-Eintrag hinzufügen: ","wwwToDomain":"www → base44.onrender.com","addAnameRecord":"ANAME/ALIAS-Eintrag hinzufügen: ","emptyOrAtDomain":"leer oder @ → base44.onrender.com","ifNoAnameSupport":"Falls dein DNS-Anbieter ANAME/ALIAS nicht unterstützt, verwende einen A-Eintrag:","aRecordIp":"@ → 216.24.57.1","removeAaaaRecords":"Entferne alle AAAA-Einträge von deiner Domain während der DNS-Konfiguration. AAAA-Einträge verweisen auf eine IPv6-Adresse, und Base44 verwendet IPv4. Diese Einträge können unerwartetes Verhalten bei deiner benutzerdefinierten Domain verursachen.","dnsChangesNote":"Bitte beachte, dass es nach dem Hinzufügen von DNS-Einträgen einige Zeit dauern kann, bis die Änderungen vollständig über das Internet verbreitet sind. Während dieser Zeit funktioniert die Domain möglicherweise nicht richtig.","addDnsRecordsFor":"1. Füge diese DNS-Einträge bei deinem Domain-Anbieter hinzu für ","type":"Typ","nameColumn":"Name","hostColumn":"Host","tabAnameAlias":"ANAME/ALIAS","tabARecord":"A-Record","addRecordsStepIntro":"Füge diese Einträge im Dashboard deines Anbieters hinzu, um die Einrichtung abzuschließen:","removeAaaaShort":"Entferne alle AAAA-(IPv6-)Einträge, da sie Verbindungen blockieren können.","customDomainStep2Verify":"Sobald du alle Einträge im Dashboard deines Anbieters aktualisiert hast, klicke auf „<bold>Domain verifizieren</bold>“. DNS-Änderungen können bis zu 48–78 Stunden brauchen, um sich zu verbreiten.","closeModal":"Schließen","verifyDomainButton":"Domain verifizieren","dnsTargetFallback":"base44.onrender.com","value":"Wert","onceConfiguredVerify":"2. Klicke nach der Konfiguration auf '<bold>Verifizieren</bold>' auf der E-Mail-Domain-Karte, um die Einrichtung zu überprüfen. DNS-Änderungen können bis zu 48-78 Stunden dauern.","emailDnsChangesNote":"Bitte beachte, dass DNS-Änderungen nach dem Hinzufügen bis zu 48 Stunden dauern können. Während dieser Zeit werden E-Mails von der aktuellen E-Mail-Adresse gesendet.","configureDnsForEmail":"DNS für E-Mail-Domain konfigurieren","connectDomainDns":"Verbinde deine Domain über deinen DNS-Anbieter","followInstructions":"Folge den Anweisungen unten, um DNS-Einträge zu konfigurieren.","addRecordsInProvider":"Füge diese Einträge im Dashboard deines Anbieters hinzu, um die Einrichtung abzuschließen.","done":"Fertig","needHelp":"Brauchst du Hilfe? Erstelle ein Ticket im ","supportSystem":"Support-System","urlUpdated":"URL aktualisiert","customUrlRemoved":"Benutzerdefinierte URL entfernt. Deine App ist jetzt erreichbar unter {{url}}","appAvailableAt":"Deine App ist jetzt erreichbar unter {{url}}","urlAlreadyTaken":"Diese URL ist bereits vergeben. Probiere einen der Vorschläge unten oder gib eine andere URL ein.","urlAlreadyTakenNoSuggestions":"Diese URL ist bereits vergeben. Bitte versuche eine andere URL.","suggestedAlternatives":"Verfügbare Alternativen:","urlReserved":"Diese URL ist reserviert. Bitte versuche eine andere.","urlInvalid":"Diese URL ist ungültig. Bitte versuche eine andere.","slugInvalidClient":"Diese URL ist ungültig. Verwende nur Kleinbuchstaben, Zahlen und Bindestriche.","slugResetToDefault":"Slug auf Standard zurückgesetzt","errorResettingSlug":"Fehler beim Zurücksetzen des Slugs","failedResetSlug":"Zurücksetzen auf Standard-Slug fehlgeschlagen","editUrlTitle":"URL bearbeiten","builtInDomainLabel":"Base44 integrierte URL","resetToDefault":"Auf Standard zurücksetzen","urlEditingRequiresPlan":"URL-Bearbeitung erfordert einen Starter-Plan. ","upgradeToPremium":"Auf Premium upgraden","changing":"Wird geändert...","change":"Ändern","emailDomain":"E-Mail-Domain","sendingFromDefault":"Das Senden von der Standard-Domain kostet 1 Integrations-Credit pro E-Mail. Die Verwendung einer eigenen Domain kostet 2 Integrations-Credits.","useCustomDomain":"Eigene Domain verwenden","sendingFrom":"Absendername: {{name}}","connectDomainForCustom":"Verbinde eine Domain, um eine benutzerdefinierte Absenderadresse zu verwenden.","buyADomain":"Eine Domain kaufen","dnsConfiguration":"DNS-Konfiguration","pleaseWaitTryAgain":"Bitte warte einen Moment und versuche es erneut.","dnsConfigFailed":"DNS-Konfiguration fehlgeschlagen","dnsPleaseTryLater":"Bitte versuche es später erneut.","verificationFailed":"Verifizierung fehlgeschlagen","dnsNotVerified":"DNS-Einträge noch nicht verifiziert. Bitte überprüfe deine DNS-Konfiguration und versuche es erneut.","domainVerificationFailed":"Domain-Verifizierung fehlgeschlagen","couldntVerifyDns":"Wir konnten deine DNS-Einträge nicht verifizieren. Bitte überprüfe sie und versuche es erneut.","completeSetup":"Einrichtung abschließen","opening":"Wird geöffnet...","cancelling":"Wird abgebrochen...","connectionFailed":"Verbindung fehlgeschlagen","retry":"Erneut versuchen","retrying":"Wird erneut versucht...","couldntCompleteDns":"DNS-Einrichtung konnte nicht abgeschlossen werden. Bitte versuche es erneut.","couldntConnectEmail":"Die Domain konnte nicht mit dem E-Mail-Anbieter verbunden werden. Bitte versuche es erneut.","pendingVerification":"Verifizierung ausstehend","emailBeingVerified":"Deine E-Mail-Adresse wird verifiziert.","makeSureDnsCorrect":"Stelle sicher, dass die DNS-Einträge korrekt bei deinem Domain-Anbieter hinzugefügt wurden.","verify":"Verifizieren","notConfigured":"Nicht konfiguriert","active":"Aktiv","editSenderDetailsAction":"Absenderdetails bearbeiten","detachCustomDomain":"Benutzerdefinierte Domain trennen","suspended":"Gesperrt","disabled":"Deaktiviert","blocked":"Blockiert","propagationBlocked":"Propagierung blockiert","propagationBlockedTooltip":"DNS-Propagierung kann eine Weile dauern. Vergleiche deine DNS-Einträge mit unseren Anweisungen, wenn etwas noch nicht stimmt.","pendingConnection":"Verbindung ausstehend","completeSetupToSend":"Schließe die Einrichtung ab, um E-Mails von deiner Domain zu senden. E-Mails werden derzeit gesendet von ","emailCurrentlySentFrom":"Deine E-Mail-Adresse wird verifiziert. E-Mails werden derzeit gesendet von ","dnsNotVerifiedYet":"DNS-Einträge wurden noch nicht verifiziert. Stelle sicher, dass sie korrekt gesetzt sind, und klicke dann auf 'Verifizieren'.","couldntConnectMakeSure":"Die Domain konnte nicht mit dem E-Mail-Anbieter verbunden werden. Stelle sicher, dass die DNS-Einträge korrekt bei deinem Domain-Anbieter hinzugefügt wurden, und versuche es erneut.","base44Domain":"Base44 Domain","maxDomainsReached":"Maximum von {{max}} Domains für diese App erreicht","viewDnsRecords":"DNS-Einträge anzeigen","upgradeBannerText":"Benutzerdefinierte Domains erfordern einen Builder-Plan oder höher. Upgrade durchführen, um sie zu aktivieren.","upgradeToUseDomain":"Upgrade deinen Plan, um diese Domain zu nutzen.","emailDomainPurchasedOnly":"Die E-Mail-Domain-Einrichtung ist derzeit nur für über Base44 erworbene Domains verfügbar.","save":"Speichern","urlHint":"Nur Kleinbuchstaben, Zahlen und Bindestriche","copyUrl":"URL kopieren","builtInUrlTooltip":"Deine App ist immer unter dieser URL verfügbar.","builderPlanRequired":"Diese Funktion ist im Builder-Plan und höher verfügbar.","somethingWentWrong":"Etwas ist schief gelaufen","failedToGetPurchaseConfig":"Fehler beim Abrufen der Kaufkonfiguration","errorEnablingEmail":"Fehler beim Aktivieren von E-Mail","failedToEnableEmail":"E-Mail konnte nicht aktiviert werden","errorUpdatingSenderDetails":"Fehler beim Aktualisieren der Absenderdetails","failedToUpdateSenderDetails":"Absenderdetails konnten nicht aktualisiert werden","errorReplacingDomain":"Fehler beim Ersetzen der Domain","failedToReplaceDomain":"Domain konnte nicht ersetzt werden","failedToAddDomain":"Domain konnte nicht hinzugefügt werden","processingPurchase":"Kauf wird verarbeitet...","subscriptionRequired":"Abonnement erforderlich"}`),W_={domains:$_},G_={title:"Protokoll-Explorer",subtitle:"Überwache Systemprotokolle deiner App.",refresh:"Aktualisieren",loadingLogs:"Protokolle werden geladen...",pleaseWait:"Bitte warte, während wir deine Protokolle abrufen",failedToLoad:"Protokolle konnten nicht geladen werden",errorFetching:"Beim Abrufen der Protokolle ist ein Fehler aufgetreten. Bitte versuche es erneut.",noLogsMatchFilters:"Keine Protokolle entsprechen deinen Filtern",tryAdjusting:"Versuche deine Filter anzupassen",noLogsFound:"Keine Protokolle gefunden",logsWillAppear:"Protokolle erscheinen hier, wenn Aktivität auftritt",tryAgain:"Erneut versuchen",resetFilters:"Filter zurücksetzen",details:"Details",outputs:"Ausgaben",errorTab:"Fehler",noAdditionalDetails:"Keine weiteren Details verfügbar.",clearFilters:"Filter löschen",filterByEmail:"Nach E-Mail filtern...",errorsOnly:"Nur Fehler",allEvents:"Alle Ereignisse",typeColumn:"Typ",userColumn:"Benutzer",timestamp:"Zeitstempel"},H_={title:"Analysen",publishToCollect:"Veröffentliche deine App, um mit der Datenerfassung zu beginnen."},Y_={title:"API-Dokumentation",subtitle:"Vollständige API-Referenz für deine App. Verwende die OpenAPI-Spezifikation mit jedem API-Client oder Dokumentationstool.",downloadSpec:"OpenAPI-Spezifikation herunterladen",copyForLLM:"Für KI kopieren",copyForLLMTooltip:"KI-freundliche Markdown-Dokumentation in die Zwischenablage kopieren",copied:"Kopiert!",codeExamplesIn:"Codebeispiele in:",authTitle:"Authentifizierung",authDescription:"Alle API-Anfragen erfordern einen api_key-Header. Du findest deinen API-Schlüssel in deinem Benutzerprofil oder kannst ihn programmatisch über User.me() im App-SDK abrufen.",sdkAuthDescription:"Installiere das Base44 SDK und initialisiere den Client mit deiner App-ID. Das SDK übernimmt die Authentifizierung und bietet typisierte Methoden für alle Entitätsoperationen und Backend-Funktionen.",entitiesTitle:"Entitäts-Endpunkte",schema:"Schema",endpoints:"Endpunkte",copyAll:"Alles kopieren",copyEntity:"Entität kopieren",functionsTitle:"Backend-Funktionen",functionsDescription:"Rufe deine bereitgestellten Backend-Funktionen über HTTP auf. Jede Funktion akzeptiert beliebige JSON-Daten und gibt die Antwort der Funktion zurück.",agentTitle:"App-Agent",agentDescription:"Interagiere mit dem KI-Agenten deiner App über Konversationen. Erstelle eine Konversation, sende Nachrichten und erhalte Antworten vom Agenten.",copy:"Kopieren",parameters:"Parameter",loading:"API-Dokumentation wird geladen...",error:"API-Dokumentation konnte nicht geladen werden. Bitte versuche es erneut."},K_={logs:G_,analytics:H_,api:Y_},Z_={error:"Fehler",appStillLoading:"App wird noch geladen... Name nicht aktualisiert",appNameEmpty:"App-Name darf nicht leer sein",removedFromFavorites:"Von Favoriten entfernt",addedToFavorites:"Zu Favoriten hinzugefügt",removedDescription:"App aus deiner Sternchenliste entfernt",addedDescription:"App zu deiner Sternchenliste hinzugefügt",descriptionUpdated:"Beschreibung aktualisiert",descriptionUpdatedMsg:"Deine App-Beschreibung wurde erfolgreich aktualisiert",failedUpdateDescription:"Beschreibung konnte nicht aktualisiert werden",openApp:"App öffnen",shareApp:"App teilen",winFreeCredits:"Gratis-Credits gewinnen!",appVisibility:"App-Sichtbarkeit",controlAccess:"Steuere, wer auf deine App zugreifen kann",inviteUsers:"Benutzer einladen",growUserBase:"Vergrößere deine Nutzerbasis, indem du andere einlädst",copyLink:"Link kopieren",copied:"Kopiert!",sendInvites:"Einladungen senden",paymentsViaStripe:"Zahlungen via Stripe",pendingSetup:"Einrichtung ausstehend",completeSetupGuide:"Schließe die Einrichtungsanleitung ab, um echte Zahlungen zu empfangen",live:"Live",testModeMessage:"Du bist noch im Testmodus. Schließe die Einrichtung ab, um Zahlungen zu empfangen.",readyForPayments:"Deine App ist bereit, Zahlungen via Stripe zu empfangen.",continueSetup:"Einrichtung fortsetzen",payments:"Zahlungen",poweredByWix:"Bereitgestellt von Wix",manage:"Verwalten",openingWixPayments:"Wix Payments wird geöffnet...",wixPaymentsErrors:{noUrl:"Die Wix-Payments-URL konnte nicht abgerufen werden. Bitte versuche es erneut.",fetchFailed:"Wix Payments konnte nicht geöffnet werden. Bitte versuche es erneut.",invalidRedirect:"Wix Payments konnte nicht geöffnet werden. Bitte versuche es erneut."},disconnected:"Getrennt",wixPaymentsDashboardError:"Wix Payments-Dashboard konnte nicht geöffnet werden",platformBadge:"Plattform-Badge",badgeVisible:'Das "Mit Base44 bearbeiten"-Badge ist derzeit auf deiner App sichtbar.',hideBadge:"Badge ausblenden",editAppNameAccessibilityLabel:"Titel bearbeiten",editAppDescription:"App-Beschreibung bearbeiten",descriptionPrompt:"Gib eine kurze Beschreibung des Zwecks und der Funktionalität deiner App an.",describeYourApp:"Beschreibe deine App...",cancel:"Abbrechen",save:"Speichern",created:"Erstellt {{time}}"},J_={overview:Z_},Q_={title:"App-Sicherheit",subtitle:"Konfiguriere Sicherheitsrichtlinien auf Zeilenebene, um zu steuern, wer auf die Daten deiner App zugreifen kann",scanIssues:"Probleme scannen",scanTime:"Der Scan dauert in der Regel wenige Minuten",scanning:"Wird gescannt",startSecurityCheck:"Sicherheitscheck starten",scanResults:"Scan-Ergebnisse",rlsRecommendations:"RLS-Empfehlungen",rlsRecommendationsFound:"{{count}} RLS-Empfehlung(en) gefunden,",viewRecommendations:"Empfehlungen anzeigen",noRlsRecommendations:"Keine RLS-Empfehlungen gefunden",secrets:"Geheimnisse",exposedSecretsFound:"{{count}} offengelegte Geheimnisse gefunden",noExposedSecrets:"Keine offengelegten Geheimnisse gefunden",backendFunctions:"Backend-Funktionen",unauthenticatedFunctions:"{{count}} nicht authentifizierte Backend-Funktionen gefunden",noUnauthenticatedFunctions:"Keine nicht authentifizierten Backend-Funktionen gefunden",dataEntities:"Datenentitäten",entitiesCount:"{{count}} Entitäten",scanComplete:"Sicherheitsscan abgeschlossen",reviewFindings:"Überprüfe die folgenden Ergebnisse.",scanFailed:"Sicherheitsscan fehlgeschlagen",ruleSaved:"Regel für {{entity}} gespeichert",ruleSavedMsg:"Die empfohlene Regel wurde gespeichert.",failedToSaveRule:"Regel konnte nicht gespeichert werden",createAccess:"Erstellungszugriff",readAccess:"Lesezugriff",updateAccess:"Aktualisierungszugriff",deleteAccess:"Löschzugriff",removeAllRules:"Alle Sicherheitsregeln entfernen",removeAllRulesConfirm:"Dadurch werden alle Sicherheitsregeln für diese Entität entfernt, sodass alle Benutzer auf alle Datensätze zugreifen können. Bist du sicher, dass du fortfahren möchtest?",removeAllRulesBtn:"Alle Regeln entfernen",securityRules:"Sicherheitsregeln: {{entity}}",securityRulesTitle:"Sicherheitsregeln",securityRulesDesc:"Erstelle Regeln, um zu steuern, wer Datensätze lesen und schreiben kann. Mehrere Regeln werden mit ODER-Logik verknüpft.",publicAccess:"Öffentlicher Zugriff",publicAccessDesc:"Derzeit können alle Benutzer auf alle Datensätze in dieser Entität zugreifen. Es gibt keine Zugriffsbeschränkungen.",createAccessRules:"Zugriffsregeln erstellen",create:"Erstellen",read:"Lesen",update:"Aktualisieren",deleteAction:"Löschen",crudRules:"{{crud}}-Regeln",addRule:"Regel hinzufügen",generatedRules:"Generierte {{crud}}-Regeln (JSON)",saveSecurityRules:"Sicherheitsregeln speichern",crudAccessRules:"{{crud}}-Zugriffsregeln",configurePermissions:"Berechtigungen für jede Aktion konfigurieren",generatedJsonPreview:"Generiertes JSON (Vorschau)",saveRules:"Regeln speichern",rlsRecommendation:"RLS-Empfehlung",dismiss:"Verwerfen",applyFixes:"Korrekturen anwenden",restricted:"Eingeschränkt",public:"Öffentlich",fullAccess:"Alle Benutzer haben vollen Zugriff",createLabel:"Erstellen:",readLabel:"Lesen:",updateLabel:"Aktualisieren:",deleteLabel:"Löschen:",noRestrictions:"Keine Einschränkungen",allUsersCanAccess:"Alle Benutzer können auf Datensätze zugreifen",creatorOnly:"Nur Ersteller",creatorOnlyDesc:"Benutzer können nur auf Datensätze zugreifen, die sie erstellt haben",entityUserComparison:"Entitäts-Benutzer-Feldvergleich",entityUserComparisonDesc:"Vergleiche ein Feld in dieser Entität mit einer Benutzereigenschaft",entityField:"Entitätsfeld",fieldInEntity:"Feld in der Entität zum Vergleichen",userField:"Benutzerfeld",fieldFromUser:"Feld vom Benutzer zum Vergleichen",userPropertyCheck:"Benutzereigenschaftsprüfung",userPropertyCheckDesc:"Prüfe, ob eine Benutzereigenschaft einem bestimmten Wert entspricht",userProperty:"Benutzereigenschaft",selectUserProperty:"Benutzereigenschaft auswählen",userRole:"Benutzerrolle",userEmail:"Benutzer-E-Mail",fullName:"Vollständiger Name",requiredValue:"Erforderlicher Wert",selectRole:"Rolle auswählen",adminRole:"Admin",userRoleOption:"Benutzer",noRestrictionsLabel:"Keine Einschränkungen",creatorOnlyLabel:"Nur Ersteller",adminOnlyLabel:"Nur Admin",filePath:"Datei: {{path}}",severityCritical:"Kritisch",severityHigh:"Hoch",securityScanLabel:"Sicherheitsscan",upToDate:"Aktuell",upToDateTooltip:"Seit der letzten Prüfung wurden keine sicherheitsrelevanten Änderungen vorgenommen",outOfDate:"Veraltet",outOfDateTooltip:"Seit der letzten Prüfung wurden sicherheitsrelevante Änderungen gemacht. Führe bitte einen neuen Sicherheitsscan durch.",runSecurityScan:"Sicherheitsscan starten",securityPageTitle:"Sicherheit",securityPageSubtitle:"Verwalte deine Berechtigungen und Sicherheitsregeln. <a>Mehr erfahren <icon/></a>",issuesDetails:"Details zu Problemen",rlsIssuesTitle_one:"{{count}} RLS-Problem",rlsIssuesTitle_other:"{{count}} RLS-Probleme",rlsIssuesSubtitle:"Aktiviere Sicherheit auf Zeilenebene, um deine Daten zu schützen",exposedSecretsTitle_one:"{{count}} Offengelegtes Geheimnis",exposedSecretsTitle_other:"{{count}} Offengelegte Geheimnisse",exposedSecretsSubtitle:"Sichere und rotiere alle offengelegten Geheimnisse, um deine Anwendung und Daten zu schützen.",unauthBackendTitle_one:"{{count}} Nicht authentifizierte Backend-Funktion",unauthBackendTitle_other:"{{count}} Nicht authentifizierte Backend-Funktionen",unauthBackendSubtitle:"Schütze Backend-Task-Endpunkte mit Authentifizierung.",noIssuesFound:"Keine Probleme gefunden. Die Sicherheit deiner App sieht gut aus, aber überprüfe sie regelmäßig, um geschützt zu bleiben.",recommendedRulesLabel:"Empfohlene Regeln:",fix:"Beheben",fixAll:"Alle beheben",missingRlsRules:"{{entity}} hat keine RLS-Regeln",customizeSuggestion:"Vorschlag anpassen",goToEntityPage:"Zur Entitätsseite gehen",ruleColumnHeader:"Regel",allUsers:"Alle Benutzer",fieldComparison:"Feldvergleich",noScanTitle:"Überprüfe die Sicherheit deiner App",noScanDescription:"Überprüfe deine Konfiguration, erkenne potenzielle Risiken und erfahre, wie du den Schutz deiner App stärken kannst",checkSecurity:"Sicherheit prüfen",back:"Zurück",cancel:"Abbrechen"},X_={title:"App-Geheimnisse",secretDeleted:"Geheimnis gelöscht",errorDeletingSecret:"Fehler beim Löschen des Geheimnisses",secretUpdated:"Geheimnis aktualisiert",errorUpdatingSecret:"Fehler beim Aktualisieren des Geheimnisses",newSecretValue:"Neuer Geheimniswert",save:"Speichern",cancel:"Abbrechen",addSecret:"Geheimnis hinzufügen",addNewSecret:"Neues Geheimnis hinzufügen",addNewSecretDescription:"Gib den Namen und Wert deines Geheimnisses ein. Geheimnisse werden verschlüsselt und sicher gespeichert.",secretName:"Geheimnisname",secretNamePlaceholder:"Geheimnisname eingeben (z.B. API_KEY)",secretNameNoSpaces:"Geheimnisname darf keine Leerzeichen enthalten. Verwende Unterstriche (z.B. API_KEY).",secretValue:"Geheimniswert",secretValuePlaceholder:"Geheimniswert eingeben",adding:"Wird hinzugefügt...",aboutSecretsManagement:"Über die Geheimnisverwaltung",secretsDescription:"Geheimnisse sind Umgebungsvariablen, die sensible Informationen wie API-Schlüssel, Tokens und Passwörter enthalten. Sie werden verschlüsselt gespeichert und zur Laufzeit sicher in deine App eingefügt.",secretsBullet1:"Geheimnisse werden von deinen Backend-Funktionen verwendet, um auf externe Dienste zuzugreifen",secretsBullet2:"Alle Geheimnisse werden verschlüsselt und sicher gespeichert",secretsBullet3:"Du kannst Geheimnisse nach Bedarf hinzufügen, aktualisieren oder löschen",needHelp:"Brauchst du Hilfe?",supportSystem:"Öffne ein Support-Ticket",configuredSecrets:"Konfigurierte Geheimnisse",noSecretsYet:"Noch keine Geheimnisse konfiguriert. Füge dein erstes Geheimnis hinzu, um zu beginnen.",secretAddedSuccessfully:"Geheimnis erfolgreich hinzugefügt",errorCreatingSecret:"Fehler beim Erstellen des Geheimnisses",errorFetchingSecrets:"Fehler beim Abrufen der Geheimnisse"},ex={security:Q_,secrets:X_},tx={mainPage:"Hauptseite",mainPageDesc:"Lege die Standard-Startseite für deine App fest",selectMainPage:"Hauptseite auswählen",appVisibility:"App-Sichtbarkeit",controlAccess:"Steuere, wer auf deine App zugreifen kann",platformBadge:"Plattform-Badge",platformBadgeDesc:'Zeige oder verberge das "Mit Base44 bearbeiten"-Badge auf deiner App.',onlyForPaying:"Nur für zahlende Benutzer verfügbar.",upgradeNow:"Jetzt upgraden",visible:"Sichtbar",hidden:"Verborgen",hideEntityCreator:"Entitäts-Ersteller verbergen",hideEntityCreatorDesc:'Verberge, wer jeden Datensatz in den Datentabellen deiner App erstellt hat. Wenn aktiviert, wird das Feld "Erstellt von" den Benutzern nicht angezeigt.',aiAgents:"KI-Agenten",aiAgentsDesc:"Baue KI-Agenten in deine App mit der KI-Agenten-Infrastruktur von Base44",aiAgentsEnabled:"KI-Agenten aktiviert",aiAgentsEnabledDesc:"Deine App hat jetzt Zugriff auf die KI-Agenten-Infrastruktur von Base44. Du kannst intelligente Agenten erstellen, die Benutzern bei verschiedenen Aufgaben helfen, Fragen beantworten und mit den Daten deiner App interagieren. Nutze den Chat, um deine Agenten zu erstellen und zu konfigurieren.",testData:"Testdaten",testDataDesc:"Verwende Testdaten, um Änderungen sicher zu testen, ohne Live-Daten zu beeinträchtigen.",onlyForBuilder:"Nur für den Builder-Plan und höher verfügbar.",testDataVersionNote:"Um dies zu nutzen, benötigst du eine neuere Version deiner App. Mache einfach eine Änderung — sende eine Nachricht an die KI, ändere etwas Code oder nutze den visuellen Editor — und schon bist du bereit.",cloneApp:"App klonen",cloneAppDesc:"Erstelle eine Kopie dieser App",githubConnectionIssue:"GitHub-Verbindungsproblem. Bitte stelle die Verbindung wieder her, um diese App zu klonen.",cantCloneOldInfra:`Du kannst keine App auf der alten Infrastruktur klonen.
Aktualisiere die Infrastruktur, um deine App zu klonen.`,createCopy:"Kopie erstellen",backendFunctions:"Backend-Funktionen",backendFunctionsDesc:"Serverseitige Funktionalität aktivieren • Empfohlen für Entwickler",activating:"Wird aktiviert...",activated:"Aktiviert",activate:"Aktivieren",upgradePlan:"Plan upgraden",dangerZone:"Gefahrenzone",dangerZoneDesc:"Unumkehrbare Aktionen, die deine App betreffen",deleteApp:"App löschen",deleteAppDesc:"Entferne diese App und alle ihre Daten dauerhaft",adminControls:"Admin-Steuerung",adminControlsDesc:"App-Verfügbarkeit verwalten",unblockApp:"App entsperren",blockApp:"App blockieren",appLogo:"App-Logo",editLogo:"Logo bearbeiten",appDescription:"App-Beschreibung",saveDescription:"Beschreibung speichern",describeYourApp:"Beschreibe deine App..."},ax={editAppLogo:"App-Logo bearbeiten",uploadLogo:"Logo hochladen",generateLogo:"Logo generieren",dragAndDrop:"Ziehe per Drag & Drop oder klicke zum Hochladen",clickToUpload:"Klicke zum Hochladen oder ziehe per Drag & Drop",pngJpgLimit:"PNG, JPG bis zu 5MB",upload:"Hochladen",whatShouldLook:"Wie soll dein Logo aussehen?",generating:"Wird generiert...",generateNew:"Neues Logo generieren",cancel:"Abbrechen",save:"Speichern",logoPrompt:"Logo-Generierungsprompt",describeLogo:"Beschreibe, wie dein Logo aussehen soll",uploading:"Wird hochgeladen...",selectImage:"Bild auswählen"},nx={removeListingConfirm:"Bist du sicher, dass du diesen Eintrag entfernen möchtest? Diese Aktion entfernt ihn aus den App-Vorlagen.",listingRemoved:"Eintrag erfolgreich aus dem Katalog entfernt",appTemplates:"App-Vorlagen",listedFor:"Gelistet für ${{price}} • {{sales}} Verkäufe • {{status}}",manageTemplate:"Verwalte deinen Vorlageneintrag",shareTemplate:"Teile deine Vorlage mit der Community, damit andere sie entdecken und verwenden können.",manageListing:"Eintrag verwalten",publishToTemplates:"In App-Vorlagen veröffentlichen",seeOnTemplates:"In App-Vorlagen ansehen",removingListing:"Wird entfernt...",removeFromTemplates:"Aus App-Vorlagen entfernen",salesRevenue:"{{sales}} Verkäufe • ${{revenue}} Umsatz",publishedToTemplates:"In App-Vorlagen veröffentlicht",rejectedReason:"Ablehnungsgrund: {{reason}}"},ix={public:"Öffentlich",private:"Privat",workspace:"Arbeitsbereich",requireLogin:"Anmeldung für den Zugriff erforderlich"},rx={notAvailableOnMobile:"Die Verwaltung von {{feature}} ist auf Mobilgeräten nicht verfügbar",loginFromDesktop:"Bitte melde dich über einen Desktop-Browser an",okay:"Okay",domains:"Domains",security:"Sicherheit",code:"Code",apiFeature:"API",templates:"Vorlagen"},ox={settings:tx,logo:ax,catalog:nx,visibility:ix,desktop:rx},sx={title:"Benutzer",subtitle:"Verwalte die Benutzer und ihre Rollen der App",inviteUser:"Benutzer einladen",schema:"Schema",searchByEmailOrName:"Nach E-Mail oder Name suchen",pendingRequests:"Ausstehende Anfragen",userSchemaEditor:"Benutzer-Schema-Editor",editUser:"Benutzer bearbeiten",loadingUsers:"Benutzer werden geladen...",noUsersFound:"Keine Benutzer gefunden",noPendingRequests:"Keine ausstehenden Anfragen",noPendingRequestsDesc:"Es gibt derzeit keine Zugriffsanfragen, die auf Genehmigung warten",inviteYourFirstUser:"Lade deinen ersten Benutzer ein",getStartedByInviting:"Beginne, indem du deinen ersten Benutzer zur App einlädst.",tryAdjustingSearch:"Versuche deine Suche oder Filter anzupassen, um das Gewünschte zu finden.",moreActions:"Weitere Aktionen",resendInvitation:"Einladung erneut senden",cancelInvite:"Einladung abbrechen",editUserAction:"Benutzer bearbeiten",changeOwner:"Eigentümer ändern",makeAppOwner:"Zum App-Eigentümer machen",resendOwnershipRequest:"Eigentümeranfrage erneut senden",cancelOwnershipRequest:"Eigentümeranfrage abbrechen",changeRole:"Rolle ändern",selectNewRole:"Wähle eine neue Rolle für {{name}}:",back:"Zurück",manageInvitation:"Einladung verwalten",approve:"Genehmigen",reject:"Ablehnen",unknown:"Unbekannt",admin:"Admin",user:"Benutzer",allRoles:"Alle Rollen",name:"Name",owner:"Eigentümer",pendingOwnership:"Eigentümerschaft ausstehend",role:"Rolle",email:"E-Mail",hasntLoggedIn:"{{role}} hat sich noch nicht in der App angemeldet.",userRemovedSuccess:"Benutzer erfolgreich entfernt",failedCancelInvitation:"Einladung konnte nicht abgebrochen werden",userLoggedInSinceRefresh:"Dieser Benutzer hat sich seit deiner letzten Aktualisierung angemeldet. Lade die Seite neu, um den aktualisierten Status zu sehen, bevor du es erneut versuchst.",failedRemoveUser:"Benutzer konnte nicht entfernt werden",subscriptionRequired:"Abonnement erforderlich",onlyPayingCanAdmin:"Nur zahlende Benutzer können andere Benutzer zu Admins machen.",upgradeSubscription:"Upgrade dein Abonnement",toContinue:"um fortzufahren.",userUpdatedSuccess:"Benutzer erfolgreich aktualisiert",userApprovedSuccess:"Benutzer erfolgreich genehmigt",failedApproveRequest:"Zugriffsanfrage konnte nicht genehmigt werden",invitationRejected:"Einladung abgelehnt",failedDenyRequest:"Zugriffsanfrage konnte nicht abgelehnt werden",invitationResentSuccess:"Einladung erfolgreich erneut gesendet",failedResendInvitation:"Einladung konnte nicht erneut gesendet werden",emailSent:"E-Mail gesendet",ownershipTransferResent:"Die Eigentümerübertragungseinladung wurde erneut gesendet.",transferCancelled:"Übertragung abgebrochen",ownershipTransferCancelled:"Die Eigentümerübertragung wurde abgebrochen.",failedCancelTransfer:"Übertragung konnte nicht abgebrochen werden",cancelInviteAction:"Einladung abbrechen",removeUser:"Benutzer entfernen",failedApproveUser:"Benutzer konnte nicht genehmigt werden",success:"Erfolg",error:"Fehler",save:"Speichern",deleteConfirm:"Bist du sicher, dass du diesen Datensatz löschen möchtest?",deleteFailed:"Löschen fehlgeschlagen"},lx={users:sx},cx="Soziale Inhalte",dx="Erstelle einen Social-Media-Werbeplan mit postfertigen Inhalten.",ux="Soziale Inhalte werden geladen",px={title:"Etwas ist schiefgelaufen",description:"Ein unerwarteter Fehler ist aufgetreten. Bitte aktualisiere die Seite.",tryAgain:"Erneut versuchen"},mx={emptyTitle:"Bewirb deine App in den sozialen Medien",emptyDescription:"Wir analysieren deine App und schlagen dir die besten Posts und Plattformen vor.",getStarted:"Meinen Content-Plan erstellen",learnMore:"Mehr erfahren",emptyCheck1:"Definiere, was du erreichen möchtest",emptyCheck2:"Finde die besten Kanäle für deine App",emptyCheck3:"Erhalte maßgeschneiderte Post-Ideen, die du sofort teilen kannst",analyzingBase:"Analyse deiner App",analyzingDescription:"Wir lernen deine App kennen – was sie macht, für wen sie ist und wie man sie am besten bewirbt.",combiningBase:"Deine Content-Strategie erstellen",combiningDescription:"Wir formen deine Botschaft und wählen die richtigen Kanäle für deinen Launch.",planStep1:"Deine Strategie anwenden",planStep2:"Content für jede Plattform anpassen",planStep3:"Post-Texte schreiben",planStep4:"Visuals für deine Posts erstellen",stepOf:"Schritt {{current}} von {{total}}"},gx={letsGo:"Los geht's",next:"Weiter",back:"Zurück",creatingPlan:"Deine Inhalte werden erstellt...",creatingPlanBase:"Deine Inhalte werden erstellt",strategyReady:"Vorgeschlagene Strategie"},hx={emptyTitle:"Bereit, deine App zu bewerben?",emptyDescription:"Beantworte die Fragen, um deinen Content zu personalisieren.",generateNewPlan:"Neuen Plan erstellen",downloadContent:"Inhalte herunterladen",downloading:"Wird heruntergeladen...",startFresh:"Neu starten"},fx={copy:"Kopieren",copied:"Kopiert",copiedToClipboard:"In die Zwischenablage kopiert",failedToCopy:"Kopieren fehlgeschlagen",cancel:"Abbrechen",save:"Speichern",imageGenerationFailed:"Bildgenerierung fehlgeschlagen",retryImage:"Erneut versuchen",download:"Bild herunterladen",expandImage:"In voller Größe anzeigen",close:"Schließen",regenerateImage:"Bild regenerieren",imageRefinePlaceholder:"Was möchtest du ändern?",imageAlt:"Beitragsvisual",share:"Teilen",editPostTitle:"Beitrag bearbeiten",descriptionLabel:"Beschreibung",imageLabel:"Bild",improveWithAI:"Mit KI verbessern",refineInputPlaceholder:"Was möchtest du ändern?",saveChanges:"Änderungen speichern"},vx={handle:"deinprofil",displayName:"Dein Name"},bx={reviewTitle:"Überprüfe deine vorgeschlagene Strategie",goalLabel:"Dein Ziel",approachLabel:"Vorgeschlagener Ansatz",strategyLabel:"Die Strategie",showMore:"Mehr anzeigen",showLess:"Weniger anzeigen",platformsLabel:"Zielplattformen",platformsDescription:"Wir haben die besten Plattformen für dein Business vorausgewählt.",editSelection:"Auswahl bearbeiten",selectPlatforms:"Wähle deine Plattformen",maxPlatforms:"Bis zu 3 Plattformen",toneLabel:"Deinen Ton anpassen (optional)",toneDescription:"Füge einen Link zu deinem Social-Media-Profil ein und wir passen die Posts an deinen Ton an.",generatePosts:"Posts erstellen"},yx={resetTitle:"Neuen Plan erstellen?",resetDescription:"Wir erstellen einen komplett neuen Plan für dich. Deine aktuellen Posts und Änderungen werden ersetzt und können nicht wiederhergestellt werden.",cancel:"Abbrechen",resetConfirm:"Neuen Plan erstellen",upgradeTitle:"Nicht genügend Integrations-Credits",upgradeDescription:"Du hast nicht genügend Integrations-Credits für diese Aktion. Upgrade deinen Plan, um mehr zu erhalten.",upgradeAction:"Plan upgraden"},kx={sendFailed:"Etwas ist schiefgelaufen",sendFailedDescription:"Die KI konnte nicht erreicht werden. Bitte versuche es erneut.",postUpdated:"Beitrag aktualisiert",postUpdateFailed:"Beitrag konnte nicht aktualisiert werden",postRefined:"Beitrag verfeinert",refineFailed:"Verfeinerung nicht möglich",refineFailedDescription:"Die KI konnte die Änderungen diesmal nicht anwenden. Bitte versuche es erneut.",imageGenerated:"Bild generiert!",imageGenerateFailed:"Bild konnte nicht generiert werden",imageGenerateFailedDescription:"Bei der Bildgenerierung ist etwas schiefgelaufen. Bitte versuche es erneut.",planReset:"Inhalte zurückgesetzt – bereit für einen Neustart",planResetFailed:"Zurücksetzen fehlgeschlagen",insufficientCredits:"Nicht genügend Integrations-Credits",insufficientCreditsDescription:"Deine Integrations-Credits sind aufgebraucht. Upgrade deinen Plan für mehr Credits.",downloadPartial:"Inhalte konnten nicht vollständig heruntergeladen werden",downloadPartialDescription:"Einige Bilder konnten nicht heruntergeladen werden. Bitte versuche es erneut."},wx={pageTitle:cx,pageSubtitle:dx,loadingBase:ux,errorBoundary:px,wizard:mx,steps:gx,toolbox:hx,post:fx,mock:vx,strategy:bx,dialog:yx,toast:kx},Ax={overview:"Übersicht",users:"Benutzer",data:"Daten",analytics:"Analysen",domains:"Domains",integrations:"Integrationen",security:"Sicherheit",code:"Code",agents:"Agenten",automations:"Automatisierungen",logs:"Protokolle",api:"API",settings:"Einstellungen",appSettings:"App-Einstellungen",authentication:"Authentifizierung",appTemplate:"App-Vorlage",secrets:"Geheimnisse",backToEditor:"Zurück zum Editor",codeFiles:"Code-Dateien",search:"Suchen...",clearSearch:"Suche löschen",virality:"Soziale Inhalte"},Sx="App-Daten werden geladen...",Cx="Papierkorb: {{entityName}}",Dx={issuesFound:"Probleme gefunden",inComponent:"In der Komponente {{componentName}}:",resolving:"Wird behoben...",resolveWithAI:"Mit KI beheben",noCreditDeduction:"Diese Aktion wird keine Credits von deinem Konto abziehen."},Tx={loadingCheckpoint:"Checkpoint-Code wird geladen...",errorFetchingFiles:"Fehler beim Abrufen der Dateien",backToPreview:"Zurück zur Vorschau"},Ex={letsBuild:"Lass uns deine App bauen",tellMeCreate:"Sag mir im Chat, was du erstellen möchtest",loadingApp:"Deine App wird geladen",buildingPreview:"Vorschau wird erstellt",previewPreparing:"Deine App-Vorschau wird vorbereitet.",mayTakeMoment:"Dies kann einen Moment dauern.",previewUnavailable:"Vorschau nicht verfügbar",previewCouldntLoad:"Die Vorschau für diese Version konnte nicht geladen werden.",retryBuild:"Build wiederholen",buildingIdea:"Deine Idee wird umgesetzt",didYouKnow:"Wusstest du schon?",packagePending:"Paketinstallation ausstehend",approvePackage:"Bitte genehmige die npm-Paketinstallation im Chat, um fortzufahren",loadingPreview:"Vorschau wird geladen…",refreshPreview:"Vorschau aktualisieren",capture:{verbDiscovering:"Entdecken",verbDesigning:"Gestalten",verbBuilding:"Erstellen",verbPolishing:"Verfeinern",verbUnveiling:"Enthüllen",verbStudying:"Analysieren",verbExtracting:"Extrahieren",verbReimagining:"Neugestalten",verbRefining:"Verfeinern",stageAnalyzingDesign:"Design wird analysiert",stageExtractingColorsAndFonts:"Farben & Schriften werden extrahiert",stageBuildingPages:"Seiten werden erstellt",stageCreatingComponents:"Komponenten werden erstellt",stageRefiningDetails:"Details werden verfeinert",stageAlmostThere:"Fast fertig",stageStudyingDesignLanguage:"Designsprache wird studiert",stageExtractingColorsAndTypography:"Farben & Typografie werden extrahiert",stageCraftingYourPages:"Deine einzigartigen Seiten werden erstellt",stageApplyingDesignInspiration:"Design-Inspiration wird angewendet",stageRefiningLookAndFeel:"Look & Feel wird verfeinert",yourSite:"deine Seite",aSiteInspiredBy:"eine Seite inspiriert von <site>{{siteName}}</site>",progress:"Fortschritt"},figma:{verbFetching:"Abrufen",verbExtracting:"Extrahieren",verbProcessing:"Verarbeiten",verbTransforming:"Transformieren",verbBuilding:"Erstellen",stageReadingDesign:"Figma-Design wird gelesen",stageProcessingStructure:"Designstruktur wird verarbeitet",stageHandlingAssets:"Assets werden verarbeitet & Code wird generiert",stageApplyingAI:"KI-Layout-Transformation wird angewendet",stageCompiling:"App wird kompiliert & finalisiert",yourFigmaDesign:"dein Figma-Design",defaultName:"Figma Import"}},Px={canvas:"Canvas",dashboard:"Dashboard",preview:"Vorschau",exitSplitScreen:"Geteilten Bildschirm beenden, um Vorschau zu sehen",versionHistory:"Versionshistorie",moreOptions:"Mehr Optionen",filesUsedInPage:"Auf dieser Seite verwendete Dateien",seeAllFiles:"Alle Dateien anzeigen",activityMonitor:"Aktivitätsmonitor",exportAsZip:"Projekt als ZIP exportieren",helpCenter:"Hilfecenter",actAsUser:"Als Benutzer:in agieren",viewAppNewTab:"Aktuelle Version ansehen",refreshPreview:"Vorschau aktualisieren",refresh:"Aktualisieren",switchToDesktop:"Zur Desktop-Ansicht wechseln",switchToMobile:"Zur mobilen Ansicht wechseln",showChatPanel:"Chat-Panel anzeigen",hideChatPanel:"Chat-Panel ausblenden",turnOffTestData:"Testdaten deaktivieren",turnOnTestData:"Testdaten aktivieren",shareApp:"App teilen",shareInviteUsers:"Teilen und Benutzer einladen",moreActions:"Weitere Aktionen",inviteCollaborators:"Mitarbeiter einladen",viewOnly:"Nur Ansicht",viewOnlyAccess:"Du hast nur Lesezugriff auf diese App",upgradeInfraTooltip:"Deine App ist bereit für ein schnelles Upgrade<br/>auf die neue Infrastruktur.",appOverview:"App-Übersicht",myApp:"Meine App",production:"Produktion",test:"Test",gitHub:"GitHub",gitHubConnection:"GitHub-Verbindung",collaborators:"Mitarbeiter",collaboratorDisplayYou:"{{name}} (Du)",collaboratorUnknown:"Unbekannt",addCollaborator:"Mitarbeiter hinzufügen",saving:"Speichern...",savedAgo:"Vor {{time}} gespeichert",unsavedChanges_one:"{{count}} ungespeicherte Änderung",unsavedChanges_other:"{{count}} ungespeicherte Änderungen",theme:"Thema",themeTitle:"Thema",themeDescription:"Diese Farben und Schriftarten bilden dein Thema. Alle Änderungen gelten überall.",themeColors:"Farben",themeFonts:"Schriftarten",noThemeColors:"Keine Themenfarben gefunden",themeSaveChanges:"Speichern und Anwenden",themeCancel:"Abbrechen",colorPickerCustom:"Benutzerdefiniert",colorPickerPalette:"Palette",fontPickerSearch:"Schriftarten suchen...",fontPickerBrandFonts:"Markenschriftarten",fontPickerAllFonts:"Alle Schriftarten",fontPickerNoResults:"Keine Schriftarten gefunden",fontPickerSelectFont:"Schriftart auswählen"},_x={desktop:"Desktop",tablet:"Tablet",mobile:"Mobil",isAvailable:"ist verfügbar",getDomain:"Domain erhalten",connectDomain:"Benutzerdefinierte Domain verbinden",undo:"Rückgängig",redo:"Wiederholen",fullscreen:"Vollbild",breakpoints:"Haltepunkte",splitView:"Geteilte Ansicht",exitSplitView:"Geteilte Ansicht beenden",exitPreview:"Vorschau beenden"},xx={upgrade:"Upgraden",upgradePlan:"Plan upgraden",percentOff:"{{percent}}% Rabatt",limitedTimeOffer:"Zeitlich begrenztes Willkommensangebot",getDiscountOff:"{{discount}} Rabatt auf ausgewählte Jahrespläne"},Ix={viewingVersionHistory:"Versionshistorie anzeigen",buildInProgress:"Build läuft...",retryBuildToEnable:"Build wiederholen, um diese Ansicht zu aktivieren",viewApp:"App anzeigen",viewCode:"Code anzeigen",restoring:"Wird wiederhergestellt...",restoreThisVersion:"Diese Version wiederherstellen",publishing:"Wird veröffentlicht...",publishThisVersion:"Diese Version veröffentlichen",exit:"Beenden",back:"Zurück",publish:"Veröffentlichen",restore:"Wiederherstellen",latest:"Neueste"},Rx={actAs:"Agieren als",actingAs:"Du agierst als",searchUser:"Nach einem bestimmten Benutzer suchen",anonymousGuest:"Anonymer Gast",you:"Du",warningChanges:"Jede Änderung wird in den Benutzerdaten widergespiegelt.",carefulChanges:"- sei vorsichtig, Änderungen hier betreffen diesen Benutzer",exitMode:"Modus beenden",noUsersYet:"Du hast noch keine Benutzer",addOrInvite:"Füge Benutzer hinzu oder lade sie ein, um zu sehen, wie deine App für sie funktioniert",invite:"Einladen",usersCount:"Benutzer ({{count}})",noMatchingUsers:"Keine passenden Benutzer gefunden",trySearching:"Versuche nach Name oder Rolle zu suchen"},zx={pressEnterNavigate:"Drücke Enter zum Navigieren"},Mx={publishApp:"App veröffentlichen",publish:"Veröffentlichen",publishing:"Wird veröffentlicht...",disabledUntilUpdate:"Veröffentlichung ist deaktiviert, bis du das Infrastruktur-Update abgeschlossen hast.",currentlyDisabled:"Veröffentlichung ist derzeit deaktiviert",codeNotGenerated:"Die Veröffentlichung wird aktiviert, sobald deine App bereit ist",visualEditsSaveWarning:"Einige visuelle Änderungen konnten vor der Veröffentlichung nicht gespeichert werden",republishApp:"App erneut veröffentlichen",lastPublished:"Zuletzt veröffentlicht {{time}}"},Nx={whatToChange:"Was möchtest du ändern?",whatToDiscuss:"Was möchtest du besprechen?",saveChangesBeforeTyping:"Änderungen speichern, bevor du tippst",exitEditModeToContinue:"Bearbeitungsmodus verlassen, bevor du tippst",fetchingFromGitHub:"Wird von GitHub abgerufen...",viewOnlyAccess:"Du hast nur Lesezugriff",zeroCreditsRemaining:"0 Credits übrig",visualEdit:"Bearbeiten",visualEditDisabledAgentRunning:"Visuelle Bearbeitung nicht verfügbar, während der Agent läuft",edit:"Bearbeiten",discuss:"Besprechen",ask:"Element bearbeiten",editData:"Daten bearbeiten",discussMode:"Besprechungsmodus",discussModeDescription:"Chatte mit der KI über alles, ohne Code-Änderungen vorzunehmen. Verbraucht 0,3 Credits pro Anfrage.",thought:"Nachgedacht",thoughtWithDuration:"Nachgedacht <duration>für {{duration}}</duration>",planningNextSteps:"Nächste Schritte werden geplant...",signUpToStartBuilding:"Registriere dich, um mit dem Bauen zu beginnen...",suggestions:"Vorschläge",latestMessages:"Neueste Nachrichten",aiModel:"KI-Modell",aiControls:"KI-Steuerung",uploadFile:"Vom Computer hochladen",uploadFileMobile:"Vom Gerät hochladen",addFromGoogleDrive:"Von Google Drive hochladen",connectorRequestFailed:"Konnektor-Anfrage konnte nicht gesendet werden. Bitte versuche es erneut.",designingYourWebsite:"deine Website wird gestaltet...",speechToText:"Spracherkennung",processingAudio:"Audio wird verarbeitet...",clickToStopRecording:"Aufnahme stoppen"},Fx={dialogTitle:"Befehlspalette des Builders",dialogDescription:"Im Builder nach Seiten, Dateien, Entitäten, Ansichten und Schnellaktionen suchen.",searchPlaceholder:"Seiten, Dateien, Entitäten, Ansichten und Schnellaktionen durchsuchen...",emptyTitle:"Kein passender Befehl",emptyDescription:"Nach einem Seitennamen, Dateipfad, Entitätsnamen, einer Editor-Ansicht oder einer Schnellaktion wie Testdaten suchen.",homeSubtitle:"Startseite",navigationSubtitle:"Dashboard",viewSubtitle:"Editor-Ansicht",entityDataSubtitle:"Daten",entityCodeSubtitle:"Code",integrationsSubtitle:"Integrationen",domainSubtitle:"Eigene Domain",collaboratorsSubtitle:"Mitwirkende",helpSubtitle:"Hilfe-Center",publishSubtitle:"Bereitstellen und teilen",publishNowSubtitle:"Neueste Änderungen veröffentlichen",versionHistorySubtitle:"Versionsverlauf",securitySubtitle:"Sicherheit",testDataSubtitle:"Zu Testdaten wechseln",productionDataSubtitle:"Zu Produktionsdaten wechseln",backToWorkspace:"Zurück zum Workspace",switchToPreview:"Zur Vorschau wechseln",switchToDashboard:"Zum Dashboard wechseln",switchToCode:"Zum Code wechseln",switchToCanvas:"Zur Canvas wechseln",openEntityData:"{{entityName}}-Daten öffnen",openEntityCode:"{{entityName}}-Code öffnen",addIntegration:"Integration hinzufügen",addDomain:"Domain hinzufügen",inviteCollaborator:"Mitwirkenden einladen",getHelp:"Hilfe erhalten",publishMyApp:"Meine App veröffentlichen",publishNow:"Jetzt veröffentlichen",versionHistory:"Versionsverlauf anzeigen",startSecurityCheck:"Sicherheitsprüfung starten",turnOnTestData:"Testdaten einschalten",turnOffTestData:"Testdaten ausschalten",groups:{navigate:"Navigieren",views:"Ansichten",files:"Dateien",entities:"Entitäten",actions:"Aktionen"}},Lx="Unbekannte Ansicht",jx="App-Editor",Ox="Beta",Bx={title:"Mitarbeiter einladen",subtitle:"Gib anderen Zugang zur Bearbeitung dieser App.",emailPlaceholder:"E-Mails eingeben, durch Kommas getrennt",removeIneligible:"Nicht berechtigte Benutzer entfernen",appCollaborators:"App-Mitarbeiter",you:"(Du)",owner:"Eigentümer",moreActions:"Weitere Aktionen",makeAppOwner:"Zum App-Eigentümer machen",removeCollaborator:"Mitarbeiter entfernen",resendOwnershipRequest:"Eigentumsanfrage erneut senden",getOwnershipLink:"Eigentumslink abrufen",cancelOwnershipRequest:"Eigentumsanfrage abbrechen",ownershipTooltip:"Der neue Eigentümer muss die Übertragung per E-Mail-Einladung akzeptieren. Die Einladung läuft in 7 Tagen ab. Du erhältst eine E-Mail, wenn die Übertragung abgeschlossen ist.",removeTitle:"Diesen Mitarbeiter aus deiner App entfernen?",removeDescription:"Durch das Entfernen dieses Mitarbeiters wird sein Zugang zum Editor sofort widerrufen und er kann keine Änderungen mehr an der App vornehmen.",removeAccessOnly:"Nur Mitarbeiterzugang entfernen",removeAccessOnlyDesc:"Der Benutzer wird weiterhin in der Benutzerliste angezeigt",removeEntirely:"Vollständig aus der App entfernen",removeEntirelyDesc:"Der Benutzer wird auch aus der Benutzerliste entfernt",cancel:"Abbrechen",enterEmail:"Bitte eine E-Mail-Adresse eingeben",invalidEmail:"Ungültige E-Mail",invalidEmails:"Eine oder mehrere E-Mail-Adressen sind ungültig. Bitte überprüfe sie und versuche es erneut.",cannotInviteOwner:"Du kannst den Eigentümer dieser App nicht einladen",alreadyExists:"Mitarbeiter existiert bereits.",alreadyExist:"Mitarbeiter existieren bereits.",invitationSent:"Mitarbeitereinladung erfolgreich gesendet",invitationsSent:"{{count}} Mitarbeitereinladungen erfolgreich gesendet",removedFromApp:"Mitarbeiter aus der App entfernt",accessRemoved:"Mitarbeiterzugang entfernt",ownershipResent:"Eigentumsanfrage erfolgreich erneut gesendet",ownershipLinkCopied:"Eigentumslink in die Zwischenablage kopiert",ownershipCancelled:"Eigentumsanfrage abgebrochen",failedToSendInvitation:"Einladung konnte nicht gesendet werden",failedToRemoveCollaborator:"Mitarbeiter konnte nicht entfernt werden",failedToResendOwnership:"Eigentumsanfrage konnte nicht erneut gesendet werden",failedToGetOwnershipLink:"Eigentumslink konnte nicht abgerufen werden",failedToCancelOwnership:"Eigentumsanfrage konnte nicht abgebrochen werden",creditsWarning:"Alle Mitarbeiter verbrauchen Credits aus dem Arbeitsbereich.",notWorkspaceMember:"Kein Arbeitsbereich-Mitglied",notMemberDescription_one:"<bold>{{emails}}</bold> ist kein Mitglied dieses Arbeitsbereichs.",notMemberDescription_other:"<bold>{{emails}}</bold> sind keine Mitglieder dieses Arbeitsbereichs.",addAsGuest:"Als Gast hinzufügen",addAsGuestDescription:"Der Benutzer wird als Gast mit Zugang nur zu dieser App hinzugefügt.",addToWorkspace:"Zum Arbeitsbereich hinzufügen",addToWorkspaceDescription:"Gehe zu den Arbeitsbereich-Einstellungen, um als vollständiges Mitglied hinzuzufügen.",guestBadge:"Gast",emailListOverflow:"{{first}} und {{count}} weitere",pendingInvitationWarning_one:"Dieser Benutzer hat bereits eine ausstehende Einladung als Mitglied des Arbeitsbereichs. Das Hinzufügen als Gast wird diese ersetzen.",pendingInvitationWarning_other:"{{count}} dieser Benutzer haben bereits ausstehende Einladungen als Mitglieder des Arbeitsbereichs. Das Hinzufügen als Gäste wird diese ersetzen."},Ux={title:"Ihre Integrations-Credits sind aufgebraucht",description:"Dies kann dazu führen, dass Benutzer in Ihrer App bestimmte Aktionen nicht ausführen können.",upgradeLink:"Plan upgraden, um mehr Credits zu erhalten",dismiss:"Banner schließen"},qx={gathering:"Wird gesammelt",gathered:"Gesammelt",connectorsInformation:"Connector-Informationen",write:"Schreiben",writing:"Schreiben",wrote:"Geschrieben",generatingImage:"Bild generieren",generatedImage:"Bild generiert",reading:"Lesen",read:"Gelesen",deleting:"Löschen",deleted:"Gelöscht",editing:"Bearbeiten",edited:"Bearbeitet",edit:"Bearbeiten",creating:"Erstellen",created:"Erstellt",updating:"Aktualisieren",updated:"Aktualisiert",update:"Aktualisieren",delete:"Löschen",importing:"Importieren",imported:"Importiert",import:"Importieren",searching:"Suchen",searched:"Gesucht",searchingForBugs:"Suche nach Fehlern...",searchedBugs:"Fehlersuche abgeschlossen",install:"Installieren",installing:"Installieren",installed:"Installiert",analyzing:"Analysieren",running:"Ausführen",failed:"Fehlgeschlagen",run:"Ausführen",settingSecrets:"Geheimnisse setzen",setSecret:"Geheimnis gesetzt",setSecrets:"Geheimnisse setzen",testing:"Testen",checking:"Prüfen",tested:"Getestet",checked:"Geprüft",fetching:"Abrufen",fetched:"Abgerufen",waitingForApproval:"Warte auf Genehmigung...",searchedDocsFor:"Dokumentation durchsucht für",searchingDocsFor:"Dokumentation durchsuchen für",searchedFor:"Gesucht nach",searchingFor:"Suche nach",foundResult_one:"{{count}} Ergebnis gefunden",foundResult_other:"{{count}} Ergebnisse gefunden",toggling:"Umschalten",toggled:"Umgeschaltet",listing:"Auflisten",listed:"Aufgelistet",approvalRequired:"Genehmigung erforderlich",changesPending_one:"{{count}} ausstehende Änderung",changesPending_other:"{{count}} ausstehende Änderungen",approve:"Genehmigen",approving:"Genehmigung...",reject:"Ablehnen",rejected:"abgelehnt",rejecting:"Ablehnung...",approveCount:"Genehmigen ({{count}})",rejectAll:"Alle ablehnen",previousApproval:"Diese Genehmigungsanfrage stammt aus einer früheren Nachricht",query:"Abfrage:",updateFallback:"{{entityName}} aktualisieren",updateFallbackSingle:"{{fieldName}} auf {{fieldValue}} setzen bei {{entityName}}",updateFallbackMultiple:"{{fieldName}} auf {{fieldValue}} setzen (+{{extraFields}} weitere) bei {{entityName}}",deleteFallback:"{{entityName}}-Einträge löschen",updateWith:"Aktualisieren mit:",importComplete:"Import abgeschlossen",importingData:"Daten werden importiert...",percentComplete:"{{percent}}% abgeschlossen",recordsProgress:"{{current}} / {{total}} Datensätze",preparing:"Vorbereitung...",otherToolsAfterApproval:"Andere Tools werden nach der Genehmigung ausgeführt",loadingConfig:"Konfiguration wird geladen...",fetchConfigError:"Konfiguration konnte nicht geladen werden.",retry:"Erneut versuchen",countPackages:"{{num}} Pakete:",updateAllEntityRecords:"Alle Datensätze von <entity>{{entityName}}</entity> aktualisieren",updateEntityRecordsMatching:"Datensätze von <entity>{{entityName}}</entity> mit Übereinstimmung aktualisieren:",deleteAllEntityRecords:"Alle Datensätze von <entity>{{entityName}}</entity> löschen",deleteEntityRecordsMatching:"Datensätze von <entity>{{entityName}}</entity> mit Übereinstimmung löschen:",importDataFromInto:"Daten von <file>{{fileName}}</file> in <entity>{{entityName}}</entity> importieren",importDataFromSheetInto:"Daten von <file>{{fileName}}</file> (Blatt: <sheet>{{sheetName}}</sheet>) in <entity>{{entityName}}</entity> importieren",countRecordsIntoEntity:"{{num}} Datensätze in <entity>{{entityName}}</entity>",dataIntoEntity:"Daten in <entity>{{entityName}}</entity>",countRecordsEntity:"{{num}} Datensätze <entity>{{entityName}}</entity>",allEntityRecords:"alle Datensätze von <entity>{{entityName}}</entity>",entityRecords:"Datensätze von <entity>{{entityName}}</entity>",grepSearching:'Suche nach "{{pattern}}"...',grepSearchComplete:"Suche abgeschlossen",grepFoundResults_one:"{{count}} Ergebnis gefunden",grepFoundResults_other:"{{count}} Ergebnisse gefunden",grepInFiles_one:"in {{count}} Datei",grepInFiles_other:"in {{count}} Dateien"},Vx={chatOnlyDescription:"Diese Einstellung ist jetzt nur über den Chat zugänglich.",description:"Legen Sie die Standard-Startseite für Ihre App fest",chatHint:"Um dies zu ändern, schreiben Sie im Chat:",prompt:"Ändere die Hauptseite zu {PageName}",placeholder:"Hauptseite",copiedToast:"In die Zwischenablage kopiert"},$x={confirmMessage:"Bist du sicher, dass du diese App offline nehmen möchtest? Sie wird für Benutzer nicht mehr zugänglich sein, bis du sie wieder veröffentlichst.",successTitle:"Erfolg",successDescription:"App erfolgreich offline genommen",errorTitle:"Fehler",errorDescription:"App konnte nicht offline genommen werden",description:"Nimm deine App offline. Du kannst sie jederzeit wieder veröffentlichen.",unpublishing:"Wird offline genommen...",button:"Offline nehmen"},Wx={title:"App löschen",description:"Diese Aktion kann <strong>nicht</strong> rückgängig gemacht werden. Die App <strong>{{appSlug}}</strong> und alle zugehörigen Daten werden dauerhaft gelöscht.",descriptionSimple:"<strong>{{displayName}}</strong> wird dauerhaft gelöscht.<br/>Alle App-Daten, der Verlauf, Benutzer, Domains und Integrationen werden unwiderruflich entfernt. <danger>Diese Aktion kann nicht rückgängig gemacht werden.</danger>",confirmLabel:"Zur Bestätigung geben Sie <strong>{{appSlug}}</strong> unten ein:",cancel:"Abbrechen",deleteButton:"Diese App löschen",deleting:"Wird gelöscht...",successTitle:"Erfolg",successDescription:"App erfolgreich gelöscht",errorTitle:"Fehler",errorDescription:"App konnte nicht gelöscht werden"},Gx={using:"Fähigkeit {{name}} wird verwendet",failed:"Fähigkeit {{name}} konnte nicht verwendet werden",used:"Fähigkeit {{name}} wurde verwendet"},Hx={thinkingIdeas:"{{agentName}} denkt über Ideen nach...",ideasFrom:"Ideen von {{agentName}}"},Yx="Automatisierung wird erstellt...",Kx="Automatisierung konnte nicht erstellt werden",Zx="Automatisierung",Jx=JSON.parse(`{"sidebar":{"chat":"Chat","continueOnWhatsApp":"Auf WhatsApp fortsetzen","continueOnTelegram":"Auf Telegram fortsetzen","continueOnLine":"Auf LINE fortsetzen","continueOnIMessage":"Auf iMessage fortsetzen","imessage":"iMessage","brain":"Gehirn","integrations":"Integrationen","knowledge":"Wissen","memory":"Gedächtnis","payments":"Zahlungen","tasks":"Aufgaben","artifacts":"Artefakte","settings":"Einstellungen","secretsAndKeys":"Geheimnisse & Schlüssel","security":"Sicherheit","credits":"Credits","whatsapp":"WhatsApp","telegram":"Telegram","line":"LINE","files":"Dateien","uploadFile":"Datei hochladen","refreshFiles":"Dateien aktualisieren","searchFiles":"Dateien suchen...","filesFolders":"{{fileCount}} Dateien · {{folderCount}} Ordner","toolsPermission":"Werkzeugberechtigungen","apiDocs":"API","channels":"Kanäle","feedback":"Feedback geben","agentSettings":"Agenteneinstellungen","dangerZone":"Gefahrenzone"},"filePanel":{"source":"Quelle","preview":"Vorschau","save":"Speichern","saveAndRedeploy":"Speichern & neu bereitstellen","fileSaved":"Datei gespeichert","functionRedeployed":"Funktion gespeichert und neu bereitgestellt","failedToSaveFile":"Datei konnte nicht gespeichert werden","failedToRedeploy":"Funktion konnte nicht neu bereitgestellt werden","failedToReadFile":"Datei konnte nicht gelesen werden"},"modelPicker":{"automatic":"Automatisch","automaticDescription":"Automatisch das beste KI-Modell für jede Anfrage","manual":"Manuell","manualDescription":"Ein bestimmtes KI-Modell auswählen.","manualCreditNote":"Der Credit-Verbrauch kann je nach Modell variieren","manualDisabledDescription":"Ein bestimmtes KI-Modell auswählen ({{models}}). Verfügbar ab dem Builder-Plan.","builderPlus":"Builder+","upgradeToSelect":"Upgrade, um ein KI-Modell auszuwählen"},"chat":{"loadingAgent":"Agent wird geladen...","agentNotFound":"Agent nicht gefunden","waitingForAuth":"Warte auf Authentifizierungstoken...","anErrorOccurred":"Ein Fehler ist aufgetreten","aiModelUpdated":"KI-Modell aktualisiert","failedToUpdateModel":"KI-Modell konnte nicht aktualisiert werden","hideSidebar":"Seitenleiste ausblenden","showSidebar":"Seitenleiste anzeigen","darkMode":"Zu dunklem Modus wechseln","lightMode":"Zu hellem Modus wechseln","dropFileHere":"Datei hier ablegen","imagesDocsAndMore":"Bilder, Dokumente und mehr","loadPreviousMessages":"Vorherige Nachrichten laden","somethingWentWrong":"Etwas ist schiefgelaufen","retry":"Erneut versuchen","chatFromApp":"Chatte mit mir über eine App, die du bereits nutzt","attachFile":"Dateien anhängen","typeMessage":"Nachricht eingeben...","toggleLiveBrowser":"Live-Browser umschalten","noActiveBrowser":"Keine aktive Browser-Sitzung","stopGenerating":"Generierung stoppen","suggestions":"Vorschläge","liveBrowser":"Live-Browser","fullScreen":"Vollbild","exitFullScreen":"Vollbild beenden","closeBrowser":"Browser schließen","live":"Live","expandBrowser":"Browser erweitern","failedToStartConversation":"Konversation konnte nicht gestartet werden – versuche, manuell eine Nachricht zu senden.","failedToLoadConversation":"Konversation konnte nicht geladen werden","failedToUploadFile":"Datei konnte nicht hochgeladen werden","tooManyFiles":"Sie können bis zu {{max}} Dateien pro Nachricht anhängen","failedToSendMessage":"Nachricht konnte nicht gesendet werden","failedToStopAgent":"Agent konnte nicht gestoppt werden","queued":"In der Warteschlange ({{count}})","queueFull":"Die Warteschlange ist voll. Bitte warten Sie, bis der Agent fertig ist.","failedToEditQueued":"Nachricht in der Warteschlange konnte nicht bearbeitet werden","failedToDeleteQueued":"Nachricht aus der Warteschlange konnte nicht entfernt werden","deleteMessage":"Nachricht löschen","failedToDeleteMessage":"Nachricht konnte nicht gelöscht werden","today":"Heute","yesterday":"Gestern","thinking":"Denke nach...","you":"Du","failedToSubmitToolInput":"Tool-Eingabe konnte nicht übermittelt werden","whatsInImage":"Was ist auf diesem Bild?","heresAFile":"Hier ist eine Datei: {{fileName}}","heresAFileAndMore":"Hier ist eine Datei: {{fileName}} (+{{count}} weitere)","heresFiles":"Hier sind {{count}} Dateien","whatsInTheseImages":"Was ist auf diesen {{count}} Bildern?","creditsRunningLow":"Ihre Credits gehen zur Neige.","purchaseMoreCredits":"Weitere Credits kaufen →","saleDiscount":"Erhalten Sie {{discount}} Rabatt auf ausgewählte Jahrespläne","limitedTimeOffer":"Zeitlich begrenztes Angebot","upgradePlan":"Plan aktualisieren","reply":"Antworten","copyMessage":"Kopieren","copied":"Kopiert"},"files":{"uploaded":"{{fileName}} hochgeladen","failedToUpload":"{{fileName}} konnte nicht hochgeladen werden","failedToRead":"{{fileName}} konnte nicht gelesen werden"},"dashboard":{"title":"Dashboard","subtitle":"Übersicht deines Agenten.","created":"Erstellt am {{date}}","memories":"Erinnerungen","filesLabel":"Dateien","folders":"Ordner","agentMemory":"Agent-Speicher","noMemoriesYet":"Noch keine Erinnerungen","noMemoriesDescription":"Dein Agent speichert gelernte Informationen hier, während du chattest."},"creditsTab":{"title":"Credits","description":"Credit-Verbrauch und Abrechnungsdetails werden hier angezeigt."},"settingsTab":{"settings":"Einstellungen","secrets":"Geheimnisse","security":"Sicherheit","creditCard":"Kreditkarte"},"agentSettingsTab":{"title":"Agenteneinstellungen","subtitle":"Konfigurieren Sie, wie Ihr Agent arbeitet.","cloneTitle":"Agent klonen","cloneDescription":"Erstellen Sie eine Kopie dieses Agenten mit allen Konfigurationen, Entitäten und Backend-Funktionen.","cloneButton":"Agent klonen"},"clonePage":{"back":"Zurück","title":"Agent klonen","subtitle":"Wählen Sie aus, was in den geklonten Agenten übernommen werden soll.","optionChat":"Chatverlauf","optionChatDesc":"Den Builder-Chatverlauf in den neuen Agenten kopieren.","optionSkills":"Fähigkeiten","optionSkillsDesc":"Backend-Funktionen, Integrationen und Tool-Konfigurationen kopieren.","optionTasks":"Aufgaben","optionTasksDesc":"Automatisierungen kopieren (geplant, entitätsbasiert und Connector-basiert).","optionSecrets":"API-Schlüssel","optionSecretsDesc":"Gespeicherte Geheimnisse und API-Schlüssel in den neuen Agenten kopieren.","cloneButton":"Agent klonen","cloning":"Wird geklont...","cloneError":"Fehler beim Klonen des Agenten"},"securityTab":{"title":"Sicherheit","subtitle":"Führe einen Sicherheitsscan durch, um potenzielle Schwachstellen zu erkennen.","scanning":"Wird gescannt...","runScan":"Sicherheitsscan starten","noIssues":"Keine Probleme gefunden","agentSecure":"Dein Agent sieht sicher aus.","severityCount":"{{severity}} Schweregrad","idleMessage":"Klicke auf „Sicherheitsscan starten“, um deinen Agenten auf Schwachstellen zu prüfen.","scanFailed":"Sicherheitsscan fehlgeschlagen"},"secretsTab":{"title":"Geheimnisse","subtitle":"Umgebungsvariablen, die den Backend-Funktionen deines Agenten zur Verfügung stehen.","noSecrets":"Noch keine Geheimnisse","addSecret":"Geheimnis hinzufügen","secretNamePlaceholder":"SECRET_NAME","valuePlaceholder":"Wert","add":"Hinzufügen","secretSaved":"Geheimnis {{name}} gespeichert","failedToSave":"Geheimnis konnte nicht gespeichert werden","secretDeleted":"Geheimnis {{name}} gelöscht","failedToDelete":"Geheimnis konnte nicht gelöscht werden","failedToLoad":"Geheimnisse konnten nicht geladen werden"},"billingTab":{"title":"Agent-Kreditkarte","subtitle":"Verbrauch und Abrechnung für deinen Agenten.","monthlyUsage":"Monatlicher Verbrauch","extraCredits":"+{{count}} zusätzliche Credits verfügbar","pastDue":"Zahlung überfällig","pastDueDescription":"Bitte aktualisiere deine Zahlungsmethode, um eine Dienstunterbrechung zu vermeiden.","goodStanding":"Konto in gutem Zustand","currentPeriod":"Aktueller Zeitraum:","nextPeriod":"Nächster Zeitraum beginnt:","manageBilling":"Abrechnung verwalten","failedToLoad":"Verbrauchsdaten konnten nicht geladen werden","unableToLoad":"Abrechnungsdaten konnten nicht geladen werden"},"apiDocsTab":{"title":"API-Referenz","subtitle":"Nutze die REST-API, um programmgesteuert mit deinem Agenten zu interagieren. Erstelle Konversationen, sende Nachrichten und verwalte Erinnerungen aus jeder Anwendung heraus.","baseUrl":"Basis-URL","authentication":"Authentifizierung","authDescription":"Füge deinen API-Schlüssel im Request-Header hinzu:","authAlternative":"Alternativ kannst du ihn als Query-Parameter übergeben:","quickStart":"Schnellstart","quickStartDescription":"Folge diesen Schritten, um über die API mit deinem Agenten zu chatten:","step1CreateConversation":"1. Erstelle eine Konversation","step2SendMessage":"2. Sende eine Nachricht","step3ListConversations":"3. Liste Konversationen auf","endpoints":"API-Endpunkte","requestBody":"Request-Body","listConversationsDesc":"Alle Konversationen für den authentifizierten Benutzer auflisten","listConversationsNote":"Gibt Konversationen nach Erstellungsdatum sortiert zurück. Unterstützt Paginierung über Query-Parameter.","getConversationDesc":"Eine bestimmte Konversation mit allen Nachrichten abrufen","createConversationDesc":"Eine neue Konversation mit dem Agenten erstellen","sendMessageDesc":"Eine Nachricht senden und die Antwort des Agenten erhalten","sendMessageNote":"Der Agent verarbeitet die Nachricht und gibt seine Antwort zurück. Die maximale Nachrichtenlänge beträgt 8000 Zeichen.","deleteMessageDesc":"Eine bestimmte Nachricht aus einer Konversation löschen","listMemoryDesc":"Die Erinnerungseinträge des Agenten auflisten","deleteMemoryDesc":"Einen bestimmten Erinnerungseintrag löschen","responseFormat":"Antwortformat","responseFormatDescription":"Konversationen werden als JSON-Objekte mit einem Nachrichten-Array zurückgegeben:","rateLimits":"Ratenlimits","rateLimitsDescription":"API-Anfragen sind pro Benutzer ratenbegrenzt. Wenn du das Limit überschreitest, erhältst du den Statuscode 429. Warte kurz und versuche es erneut.","errorCodes":"Fehlercodes","error401":"Nicht autorisiert - ungültiger oder fehlender API-Schlüssel","error403":"Verboten - du hast keinen Zugriff auf diese Ressource","error400":"Ungültige Anfrage - fehlerhafte Eingabe (z. B. Nachricht zu lang)","error404":"Nicht gefunden - Konversation oder Ressource existiert nicht","copy":"Kopieren"},"toolsPermissionTab":{"title":"Werkzeugberechtigungen","subtitle":"Bestimmte Aktionen ohne Ihre Bestätigung ausführen lassen.","warning":"Wenn aktiviert, führt der Agent diese Aktionen eigenständig aus. Ihre Datensicherheitsregeln gelten weiterhin.","updateData":"Daten aktualisieren","updateDataDescription":"Den Agenten Datensätze ohne Nachfrage aktualisieren lassen.","deleteData":"Daten löschen","deleteDataDescription":"Den Agenten Datensätze ohne Nachfrage löschen lassen.","failedToSave":"Einstellungen konnten nicht gespeichert werden","effectNote":"Einstellungen werden sofort wirksam. KI-Antworten folgen den Regeln möglicherweise nicht immer perfekt.","connectorRulesTitle":"Konnektor-Regeln","connectorRulesSubtitle":"Legen Sie fest, was der Agent mit jedem Dienst tun darf und was nicht.","connectorRulePlaceholder":"z. B. Nur E-Mails lesen, niemals senden oder löschen","loadingConnectors":"Konnektoren werden geladen...","saveRules":"Speichern","rulesSaved":"Konnektor-Regeln gespeichert"},"knowledgeTab":{"noFiles":"Noch keine Wissensdateien","noFilesDescription":"Beginne einen Chat mit deinem Agenten, um seine Identität und sein Wissen aufzubauen","identity":"Identität"},"memoryTab":{"title":"Gedächtnis","subtitle":"Was dein Agent über dich und deine Gespräche weiß.","emptyTitle":"Noch nichts vorhanden","emptyDescription":"Während du chattest, baut dein Agent automatisch Gedächtnis auf – Kontext aus letzten Nachrichten, Sitzungszusammenfassungen und wichtige Fakten.","addEntry":"Hinzufügen","saveEntry":"Speichern","cancelEdit":"Abbrechen","titlePlaceholder":"Was soll sich der Agent merken?","contentPlaceholder":"Weitere Details hinzufügen (optional)","saved":"Gedächtnis aktualisiert","failedToSave":"Aktualisierung fehlgeschlagen","factsHeading":"Gespeicherte Fakten","factsDescription":"Wichtige Fakten, die über alle Gespräche hinweg bestehen bleiben.","noMemories":"Keine gespeicherten Fakten","noMemoriesDescription":"Wichtige Fakten werden automatisch aus Gesprächen extrahiert, oder du kannst sie manuell hinzufügen.","shortTermHeading":"Kurzzeitgedächtnis","shortTermDescription":"Kontext aus dem aktuellen Gespräch, alle ~10 Nachrichten aktualisiert.","shortTermUpdated":"Aktualisiert","shortTermDeleted":"Gelöscht","deleteShortTermConfirm":"Diesen Kontext entfernen? Der Agent verliert diesen Teil des Gesprächsverlaufs.","longTermHeading":"Tägliche Sitzungen","longTermDescription":"Eine Zusammenfassung der Gespräche jedes Tages.","longTermDeleted":"Gelöscht","deleteLongTermConfirm":"Diese Tages-Sitzung löschen? Der Agent verliert den Zugang zu diesem Gesprächsverlauf.","messages":"{{count}} Nachr.","emptyTranscript":"Leeres Transkript","noText":"(kein Text)","usedTools":"Verwendet: {{tools}}"},"telegramTab":{"title":"Telegram","connected":"Dein Telegram-Bot ist verbunden und aktiv.","notConnected":"Verbinde einen Telegram-Bot, damit Nutzer mit deinem Agenten chatten können.","connectedBot":"Verbundener Bot","botName":"Bot-Name","username":"Benutzername","status":"Status","active":"Aktiv","verifyBanner":"Klicken Sie auf die Schaltfläche unten, um Ihre Identität auf Telegram zu bestätigen. So wird sichergestellt, dass nur Sie diesen Bot verwenden können.","verifyOnTelegram":"Auf Telegram verifizieren","openTelegram":"In Telegram öffnen","scanQr":"Scanne den QR-Code mit deinem Handy, um den Bot in Telegram zu öffnen.","disconnect":"Trennen","disconnectConfirm":"Diesen Telegram-Bot trennen? Nutzer erhalten keine Antworten mehr.","disconnected":"Telegram-Bot getrennt","failedToDisconnect":"Trennung fehlgeschlagen","howItWorks":"So funktioniert es","step1":"Nutzer öffnen deinen Bot in Telegram und senden /start.","step2":"Jede Textnachricht wird von deinem Agenten verarbeitet.","step3":"Die Antwort des Agenten wird im Telegram-Chat zurückgesendet."},"telegramSetup":{"connectTitle":"Telegram verbinden","connectDescription":"Erstellen Sie mit einem Klick einen Telegram-Bot für Ihren Agenten. Er wird automatisch eingerichtet und ist sofort chatbereit.","autoCreateButton":"Telegram-Bot verbinden","autoWaitingTitle":"Bot-Erstellung läuft...","autoWaitingDescription":"Bestätige den Bot in Telegram, dann richten wir alles automatisch ein.","autoTimeoutError":"Zeitüberschreitung bei der Bot-Erstellung. Bitte versuchen Sie es erneut oder nutzen Sie die manuelle Einrichtung.","autoExpiredError":"Bot-Erstellung fehlgeschlagen. Bitte versuchen Sie es erneut.","cancel":"Abbrechen","alreadyHaveBot":"Ich habe schon einen Bot-Token","pasteTokenTitle":"Mit Token verbinden","manualInstructions":"Erstellen Sie einen Bot über @BotFather in Telegram und fügen Sie den Token hier ein.","tokenPlaceholder":"Bot-Token einfügen...","tokenExtracted":"Token extrahiert","tokenNotFound":"Kein gültiger Token gefunden","connectBot":"Verbinden","connecting":"Verbindung wird hergestellt...","successTitle":"Bot verbunden!","openTelegram":"In Telegram öffnen","failedToConnect":"Bot konnte nicht verbunden werden"},"whatsappTab":{"title":"WhatsApp","subtitle":"Ermögliche Nutzern, über WhatsApp mit deinem Agenten zu chatten.","connectTitle":"WhatsApp verbinden","connectDescription":"Klicke auf die Schaltfläche unten, um WhatsApp zu öffnen und die Verbindung zu aktivieren. Du erhältst einen Aktivierungscode, den du an die WhatsApp-Nummer des Agenten senden kannst.","openWhatsApp":"WhatsApp öffnen","scanQr":"Scanne den QR-Code mit deinem Handy, um die Konversation in WhatsApp zu öffnen.","howItWorks":"So funktioniert es","step1":"Klicke auf „WhatsApp öffnen“ – dies öffnet WhatsApp mit einem vorausgefüllten Aktivierungscode.","step2":"Sende den Aktivierungscode, um die Verbindung zu starten.","step3":"Nach der Verbindung wird jede Nachricht, die du auf WhatsApp sendest, von deinem Agenten bearbeitet."},"lineTab":{"title":"LINE","subtitle":"Chatte mit deinem Agenten auf LINE.","connectTitle":"Über LINE verbinden","connectDescription":"Erstelle einen Aktivierungscode, scanne den QR-Code auf deinem Handy und sende den Code.","generateCode":"Aktivierungscode erstellen","generating":"Wird erstellt...","regenerate":"Neuen Code erstellen","codeCopied":"Code kopiert!","codeExpiry":"Läuft in 30 Minuten ab","failedToGenerate":"Verbindung zu LINE fehlgeschlagen","howItWorks":"So funktioniert es","step1":"Klicke auf „Aktivierungscode erstellen“, um Code und QR zu erhalten.","step2":"Scanne den QR-Code mit LINE auf deinem Handy, um den Bot als Freund hinzuzufügen.","step3":"Sende den Aktivierungscode als Nachricht an den Bot, um die Verbindung herzustellen.","scanQrLabel":"Mit LINE scannen","scanQrHint":"Öffne LINE auf deinem Handy und scanne diesen QR-Code, um den Bot hinzuzufügen.","activationCodeLabel":"Aktivierungscode","sendCodeHint":"Sende diesen Code nach dem Hinzufügen als Nachricht an den Bot."},"imessageTab":{"title":"iMessage","subtitle":"Chat with your agent via iMessage.","connectTitle":"Connect via iMessage","connectDescription":"Click the button below and iMessage will open with the activation code ready to send.","connectButton":"Connect via iMessage","manualFallback":"Didn't open automatically? Send the code manually:","phoneNumberLabel":"Text this number","activationCodeLabel":"Activation code","codeCopied":"Code copied!","codeExpiry":"Expires in 30 minutes","failedToGenerate":"Failed to generate iMessage code","capacityTitle":"iMessage temporarily unavailable","capacityMessage":"iMessage is experiencing unusually high demand right now. Please check back in a few hours — we're working on expanding capacity.","howItWorks":"How it works","step1":"Click \\"Connect via iMessage\\" — your Messages app will open with the activation code pre-filled.","step2":"Send the message and your agent is connected. That's it!"},"pluginsTab":{"builtInServices":"Integrierte Dienste","builtInSubtitle":"Plattformfunktionen, die deinem Agenten standardmäßig zur Verfügung stehen.","base44Backend":"Base44 Backend","alwaysActive":"Immer aktiv","base44Description":"Datenbank, Funktionen, Dateispeicher und Automatisierungen","dataEntities":"Daten & Entitäten","dataEntitiesTool1":"Entitätsdatensätze erstellen, lesen, aktualisieren, löschen und filtern","dataEntitiesTool2":"Sicherheit auf Zeilenebene","backendFunctions":"Backend-Funktionen","backendFunctionsTool1":"Serverlose Deno-Funktionen bereitstellen und aufrufen","backendFunctionsTool2":"Umgebungsgeheimnisse verwalten","fileStorage":"Dateispeicher","fileStorageTool1":"Öffentliche und private Dateien hochladen","fileStorageTool2":"Signierte Download-URLs erstellen","automationsLabel":"Automatisierungen","automationsTool1":"CRON-Jobs planen","automationsTool2":"Entitätsänderungs-Trigger","connectors":"Konnektoren","connectorsSubtitle":"Verbinde deinen Agenten mit den Apps und Diensten, die du bereits nutzt.","addConnector":"Konnektor hinzufügen","close":"Schließen","noConnectors":"Keine Konnektoren. Füge einen hinzu, um deinem Agenten Zugang zu externen Diensten zu geben.","connected":"Verbunden","available":"Verfügbar ({{count}})","allConnected":"Alle Konnektoren sind bereits verbunden.","revoked":"Widerrufen","disconnectedStatus":"Getrennt","active":"Aktiv","switchAccount":"Konto wechseln","reconnect":"Erneut verbinden","disconnect":"Trennen","remove":"Entfernen","connect":"Verbinden","connectorConnected":"Konnektor verbunden","connectionCancelled":"Verbindung abgebrochen","connectorDisconnected":"Konnektor getrennt","failedToDisconnect":"Trennung fehlgeschlagen","connectorRemoved":"Konnektor entfernt","failedToRemove":"Entfernen fehlgeschlagen","openAuthLinkManually":"Autorisierungslink manuell öffnen","connecting":"Wird verbunden...","mcpPlugins":"MCP-Plugins","mcpSubtitle":"MCP-Verbindungen, die die Fähigkeiten deines Agenten erweitern.","cancel":"Abbrechen","addPlugin":"Plugin hinzufügen","noPlugins":"Keine Plugins verbunden","noPluginsDescription":"Füge einen MCP-Server hinzu, um deinem Agenten neue Tools zu geben.","failedToLoad":"Plugins konnten nicht geladen werden","failedToToggle":"Plugin konnte nicht umgeschaltet werden","pluginDeleted":"Plugin gelöscht","failedToDelete":"Plugin konnte nicht gelöscht werden","pluginAdded":"Plugin hinzugefügt","pluginNamePlaceholder":"Plugin-Name","mcpUrlPlaceholder":"MCP-Server-URL (https://...)","foundTools":"{{count}} Tools gefunden","connectionTestFailed":"Verbindungstest fehlgeschlagen","connectedTools":"Verbunden – {{count}} Tools verfügbar","connectionFailed":"Verbindung fehlgeschlagen","test":"Testen","save":"Speichern","failedToCreate":"Plugin konnte nicht erstellt werden","enabled":"Aktiviert","disabled":"Deaktiviert","toolsCount":"Tools ({{count}})","noTools":"Keine Tools verfügbar","toolsFound":"{{count}} Tools gefunden","testFailed":"Test fehlgeschlagen","connectedChatMessage":"Ich habe {{name}} über das Integrations-Panel verbunden. Was kann ich damit machen?","connectedReadOnlyChatMessage":"Ich habe {{name}} im Nur-Lesen-Modus über das Integrations-Panel verbunden. Es kann nur Daten lesen, nichts erstellen oder ändern. Was kann ich damit machen?","accessModeChangedMessage":"Ich habe {{name}} auf den Modus {{mode}} umgestellt. Bitte beachte das bei zukünftigen Aktionen.","disconnectedChatMessage":"Ich habe {{name}} über das Integrations-Panel getrennt.","readOnly":"Nur lesen","fullAccess":"Kann verwalten","switchToReadOnly":"Auf Nur-Lesen umschalten","switchToFullAccess":"Auf Verwalten umschalten","searchConnectors":"Konnektoren durchsuchen...","noSearchResults":"Keine Konnektoren gefunden","noSearchResultsDesc":"Versuche andere Suchbegriffe oder lösche die Suche.","noConnectorsYet":"Noch keine Konnektoren verbunden.","base44Official":"Base44 Official","setUp":"Einrichten","loadMore":"{{count}} weitere laden","showAll":"Alle anzeigen ({{count}})","moreIcons":"+{{count}} weitere","sort":{"title":"Sortieren","mostUsed":"Meistverwendet","recentlyAdded":"Kürzlich hinzugefügt","az":"A-Z","za":"Z-A"}},"paymentsTab":{"title":"Zahlungen","stripeName":"Stripe","description":"Akzeptiere Zahlungen von deinen Kunden über Stripe.","notConnected":"Stripe ist nicht verbunden","connectedDescription":"Zahlungslinks, Produkte und Checkout sind verfügbar.","setupPrompt":"Bitte deinen Agenten im Chat, Stripe-Zahlungen einzurichten. Er führt dich durch den Prozess.","askInChat":"Im Chat fragen","sandboxMode":"Sandbox","liveMode":"Live","testCard":"Testkartennummer","claimAndGoLive":"Übernehmen & Live schalten","remove":"Integration entfernen","removeConfirm":"Bist du sicher?","confirmRemove":"Ja, entfernen","cancel":"Abbrechen","removed":"Stripe-Integration entfernt","removeFailed":"Stripe-Integration konnte nicht entfernt werden","loadFailed":"Zahlungsstatus konnte nicht geladen werden","setupMessage":"Richte Stripe-Zahlungen für meinen Agenten ein"},"integrationsTab":{"tabSkills":"Skills","tabConnectors":"Connectors","skillsTitle":"Skills","skillsSubtitle":"Reusable instructions that give your agent specialized abilities.","addSkill":"Add Skill","noSkills":"No skills yet","noSkillsHint":"Add a skill to teach your agent new capabilities.","installed":"Installiert"},"automationsTab":{"title":"Automatisierungen","subtitle":"Geplante Aufgaben und Webhooks.","noAutomations":"Noch keine Automatisierungen","trySuggestions":"Probiere eine der obigen Ideen aus oder frage im Chat.","askAgent":"Frage deinen Agenten im Chat, eine einzurichten.","scheduled":"Geplant","entityTriggered":"Entitätsgesteuert","webhooks":"Webhooks","active":"Aktiv","paused":"Pausiert","details":"Details","runNow":"Jetzt ausführen","pause":"Pausieren","activate":"Aktivieren","delete":"Löschen","trigger":"Auslöser","instructions":"Anweisungen","taskId":"Aufgaben-ID","parameters":"Parameter","runHistory":"Ausführungsverlauf","totalRuns":"{{count}} insgesamt","succeeded":"{{count}} erfolgreich","failedRuns":"{{count}} fehlgeschlagen","lastRun":"Letzte Ausführung:","created":"Erstellt am {{date}}","runsStats":"{{total}} Ausführungen · {{succeeded}} erfolgreich · {{failed}} fehlgeschlagen","failedToToggle":"Automatisierung konnte nicht umgeschaltet werden","archive":"Archivieren","automationArchived":"Automatisierung archiviert","failedToArchive":"Automatisierung konnte nicht archiviert werden","automationDeleted":"Automatisierung gelöscht","failedToDelete":"Automatisierung konnte nicht gelöscht werden","automationTriggered":"Automatisierung ausgelöst","failedToRun":"Automatisierung konnte nicht ausgeführt werden","failedToLoad":"Automatisierungen konnten nicht geladen werden","consumesCredits":"Verbraucht Nachrichten-Credits","agentRunsWhenTriggered":"Agent antwortet bei Auslösung","agentNameRunsWhenTriggered":"{{name}} antwortet bei Auslösung","creditsUsed":"{{credits}} Credits verwendet","totalCredits":"Credits insgesamt: {{credits}}","trackingSince":"seit {{date}}","executionLogs":"Ausführungsprotokolle","noLogs":"Noch keine Protokolle","status":{"success":"Erfolg","running":"Läuft","failed":"Fehlgeschlagen"},"archived":"Archiviert","noArchivedAutomations":"Keine archivierten Automatisierungen","archivedDescription":"Automatisierungen, die Sie archivieren, werden hier angezeigt.","restore":"Wiederherstellen","automationRestored":"Automatisierung wiederhergestellt","failedToRestore":"Automatisierung konnte nicht wiederhergestellt werden"},"identity":{"updated":"Identität aktualisiert","failedToSave":"Identität konnte nicht gespeichert werden","avatar":"Avatar","emoji":"Emoji","setEmoji":"Setzen","uploadImage":"Bild hochladen","changeImage":"Ändern","removeImage":"Bild entfernen","useEmoji":"Emoji verwenden","name":"Agent-Name","agentNamePlaceholder":"Agent-Name","userName":"Dein Name","userNameDisplay":"Dein Name: {{name}}","userNamePlaceholder":"Dein Name","userNameHint":"So spricht dich der Agent an","description":"Beschreibung","descriptionPlaceholder":"Was macht dieser Agent?","unnamedAgent":"Unbenannter Agent","cancel":"Abbrechen","save":"Speichern","edit":"Bearbeiten","rawIdentity":"IDENTITY.md (Rohtext)","editInEditor":"Im Editor bearbeiten","entry":"{{count}} Eintrag","entries":"{{count}} Einträge"},"knowledgeEditor":{"fileUpdated":"Datei wurde extern aktualisiert","fileModified":"{{name}} wurde geändert. Neu laden, um Änderungen zu sehen.","reload":"Neu laden","saved":"{{label}} gespeichert","failedToSave":"Speichern fehlgeschlagen","unsavedChanges":"Du hast ungespeicherte Änderungen. Verwerfen?","rawText":"Rohtext","readOnly":"Schreibgeschützt","editAnyway":"Trotzdem bearbeiten","edit":"Bearbeiten","save":"Speichern","startWriting":"Beginne zu schreiben..."},"knowledgeFiles":{"title":"Wissensdateien","uploading":"{{count}} Datei(en) werden hochgeladen...","new":"Neu","fileNamePlaceholder":"dateiname","mdExtension":".md","enterFileName":"Bitte gib einen Dateinamen ein","fileExists":"Eine Datei mit diesem Namen existiert bereits","failedToCreate":"Datei konnte nicht erstellt werden","unsupportedType":"Nicht unterstützter Dateityp","failedToUpload":"{{name}} konnte nicht hochgeladen werden","renamedTo":"Umbenannt in {{name}}","failedToRename":"Datei konnte nicht umbenannt werden","failedToLoadFile":"Datei konnte nicht geladen werden","deleteConfirm":"\\"{{name}}\\" löschen? Dies kann nicht rückgängig gemacht werden.","failedToDelete":"Datei konnte nicht gelöscht werden","dropOrUpload":"Dateien hier ablegen oder klicken zum Hochladen","supportedTypes":"Dokumente, Bilder, CSVs, Code-Dateien und mehr","dropOrBrowse":"Dateien ablegen oder","browse":"durchsuchen"},"artifacts":{"description":"Kleine Mini-Apps für den Einstieg. Für vollständige Apps, erstelle auf Base44.","buildFullApp":"Vollständige App erstellen","title":"Artefakte","pageCount_one":"{{count}} Seite","pageCount_other":"{{count}} Seiten","empty":"Noch keine Artefakte","emptyDescription":"Bitte deinen Agenten, eine Mini-App zu erstellen, und sie erscheint hier."},"feedbackModal":{"thankYou":"Vielen Dank!","thankYouSubtitle":"Ihr Feedback hilft uns, uns zu verbessern.","title":"Wie ist Ihre Erfahrung?","subtitle":"Ihr Feedback bestimmt, was wir als Nächstes entwickeln.","submitError":"Feedback konnte nicht gesendet werden. Bitte versuchen Sie es erneut.","placeholder":"Teilen Sie uns Ihre Gedanken mit...","sending":"Wird gesendet...","sendFeedback":"Feedback senden","ratingBad":"Schlecht","ratingPoor":"Mangelhaft","ratingOkay":"Okay","ratingGood":"Gut","ratingAmazing":"Liebe es","openSupportTicket":"Support-Ticket öffnen"},"dangerZoneTab":{"title":"Gefahrenzone","subtitle":"Unwiderrufliche Aktionen für diesen Agenten.","deleteTitle":"Diesen Agenten löschen","deleteDescription":"Entfernt diesen Agenten und alle seine Daten, Unterhaltungen, Dateien und Integrationen dauerhaft. Diese Aktion kann nicht rückgängig gemacht werden.","deleteButton":"Diesen Agenten löschen","deleteSuccess":"Agent erfolgreich gelöscht","deleteFailed":"Fehler beim Löschen des Agenten"}}`),Qx={live:"Live",offScreen:"Außerhalb des Bildschirms",waiting:"Warten...",loading:"Lädt...",previewTitle:"Vorschau: {{pageName}}"},Xx={main:"Haupt"},eI={title:"Agent löschen",description:"Dies wird <strong>{{displayName}}</strong> dauerhaft löschen.<br/>Alle Agentendaten, Unterhaltungen, Dateien und Integrationen werden unwiderruflich gelöscht. <danger>Diese Aktion kann nicht rückgängig gemacht werden.</danger>",cancel:"Abbrechen",deleteButton:"Diesen Agenten löschen",deleting:"Wird gelöscht..."},tI={title:"Deine App teilen",subtitle:"Link per E-Mail oder in sozialen Netzwerken teilen",sendInviteLabel:"Einladung senden",sendInvitation_one:"Einladung senden",sendInvitation_other:"Einladungen senden",invalidEmailsError:"Eine oder mehrere E-Mail-Adressen sind ungültig. Bitte überprüfe sie und versuche es erneut.",workspaceIneligibleError:"Versuche stattdessen, Benutzer aus deinem Arbeitsbereich einzuladen.",nonWorkspaceIneligibleError:"Einige E-Mail-Adressen sind nicht zur Einladung berechtigt.",removeIneligibleUsers:"Nicht berechtigte Benutzer entfernen",inviteSuccessToast:"Benutzereinladung erfolgreich gesendet",inviteErrorToast:"Einladungen konnten nicht gesendet werden",copyLink:"Link kopieren",sendInvitationSection:"Einladung senden",inviteEmailPlaceholder:"E-Mail-Adresse eingeben",inviteButton:"Einladen",shareLiveAppLink:"Live-App-Link teilen",shareLiveAppLinkDesc:"Jeder mit dem Link kann deine App live ansehen, basierend auf deinen App-Sichtbarkeitseinstellungen.",linkCopied:"Link kopiert",enterEmailError:"Bitte gib eine E-Mail-Adresse ein",cannotInviteOwner:"Du kannst den Eigentümer dieser App nicht einladen",inviteSuccess_one:"Einladung erfolgreich gesendet",inviteSuccess_other:"{{count}} Einladungen erfolgreich gesendet",inviteFailedToSend:"Einladung konnte nicht gesendet werden",role_admin:"Admin",role_user:"Benutzer"},aI={sidebar:Ax,loading:Sx,trash:Cx,errors:Dx,codeView:Tx,loader:Ex,toolbar:Px,header:_x,upgrade:xx,checkpoints:Ix,viewAs:Rx,pages:zx,publish:Mx,chat:Nx,builderCommandPalette:Fx,unknownView:Lx,appEditor:jx,beta:Ox,collaborators:Bx,integrationsBanner:Ux,tools:qx,mainPage:Vx,unpublishApp:$x,deleteApp:Wx,skillTool:Gx,automations:Hx,create_automation:Yx,create_automation_error:Kx,automation_fallback_name:Zx,agentEditor:Jx,canvasPage:Qx,canvasToolbar:Xx,deleteAgent:eI,new:"Neu",shareModal:tI},nI={title:"Was willst du als Nächstes erstellen?",titleMobile:`Hi, was willst du
als Nächstes erstellen?`,subtitle:"Beschreibe deine App-Idee unten oder lass dich inspirieren von unseren",subtitleTemplatesLink:"Vorlagen"},iI={title:"Zuletzt erstellte Apps"},rI={title:"Letzte Superagenten"},oI={placeholder:"Beschreibe die App, die du erstellen möchtest...",placeholderPlanMode:"Sag Base, was du möchtest",placeholderViewer:"Betrachter können keine Apps erstellen",placeholderWithUrl:"Beschreibung hinzufügen (optional)...",captureFullMode:"Eine Seite wie diese erstellen",captureDesignMode:"Eine neue Seite inspiriert von diesem Design erstellen für...",uploadFile:"Vom Computer hochladen",uploadFileMobile:"Vom Gerät hochladen",captureFromUrlDescription:"Einen 1:1-Ausgangspunkt erstellen",createFromUrl:"Von URL starten",aiModel:"KI-Modell",selectAiModel:"KI-Modell auswählen",addFromGoogleDrive:"Von Google Drive hochladen",modelPicker:{automatic:"Automatisch",automaticDescription:"Das beste KI-Modell wird für jede Anfrage ausgewählt",new:"Neu",manual:"Manuell",builderPlus:"Builder+",manualDescription:"Ein bestimmtes KI-Modell auswählen ({{models}}). Verfügbar ab dem Builder-Plan.",upgradeToSelect:"Upgrade, um ein KI-Modell auszuwählen"},speechToText:"Spracherkennung",processingAudio:"Audio wird verarbeitet...",clickToStopRecording:"Aufnahme stoppen"},sI={exploreTemplates:"Vorlagen aus der Community entdecken",discoverDescription:"Entdecke eine kuratierte Sammlung von Apps, die von unserer Community erstellt wurden.",failedToLoadCatalog:"Katalog konnte nicht geladen werden",showingItems:"{{displayed}} von {{total}} Einträgen angezeigt",searchApps:"Apps suchen",viewAllTemplates:"Alle Vorlagen ansehen",allCategories:"Alle",priceAll:"Alle Vorlagen",priceFree:"Nur kostenlose",pricePaid:"Nur kostenpflichtige",pageTitle:"App-Vorlagen",pageSubtitle:"Entdecke eine kuratierte Sammlung von Apps, die von unserer Community erstellt wurden.",tabs:{community:"Community",workspace:"Arbeitsbereich",myTemplates:"Meine Vorlagen"},categories:{marketingAndSales:"Marketing & Vertrieb",operations:"Operationen",dataAndAnalytics:"Daten & Analyse",contentGeneration:"Inhaltserstellung",hrAndLegal:"Personal & Recht",finance:"Finanzen",education:"Bildung",community:"Community",lifestyleAndHobbies:"Lifestyle & Hobbys",gamesAndEntertainment:"Spiele & Unterhaltung","Marketing & Sales":"Marketing & Vertrieb",Operations:"Betrieb","Data & Analytics":"Daten & Analysen","Content Generation":"Inhaltserstellung","HR & Legal":"Personal & Recht",Finance:"Finanzen",Education:"Bildung",Community:"Community","Lifestyle & Hobbies":"Lifestyle & Hobbys","Games & Entertainment":"Spiele & Unterhaltung"},sort:{popular:"Beliebt",newest:"Neueste zuerst",oldest:"Älteste zuerst"},languagePlaceholder:"Sprache",pricePlaceholder:"Preis",noAppsFound:"Keine Apps gefunden",adjustSearchOrFilters:"Suche oder Filter anpassen",templateNotFound:"Vorlage nicht gefunden oder nicht verfügbar.",viewAllCommunityTemplates:"Alle Community-Vorlagen anzeigen",loadingMore:"Weitere Einträge werden geladen...",viewDetails:"Details anzeigen",workspaceBadge:"Arbeitsbereich",purchasedBadge:"Gekauft",free:"Kostenlos",unknownUser:"Unbekannter Benutzer",private:"Privat",howTo:{title:"So teilst du deine App mit der Community",intro:"Folge diesen einfachen Schritten:",step1Title:"Öffne den Builder deiner App",step1Desc:"Navigiere zu einer App, die du erstellt hast oder auf die du Admin-Zugriff hast",step2Title:"Gehe zu den Katalogeinstellungen",step2Path:"Arbeitsbereich → Einstellungen → App-Vorlagen → Eintrag verwalten",step3Title:"Veröffentliche deinen Eintrag",step3Desc:"Füge eine Beschreibung und Screenshots hinzu und konfiguriere die Sichtbarkeit deines Eintrags",tipFull:"<bold>Tipp:</bold> Stelle sicher, dass deine App bereitgestellt ist und eine ansprechende Beschreibung hat, um mehr Nutzer anzuziehen!"},modal:{close:"Schließen",prevScreenshot:"Vorheriger Screenshot",nextScreenshot:"Nächster Screenshot",screenshotAlt:"Screenshot {{index}}",goToScreenshot:"Zu Screenshot {{index}}",createdBy:"von {{creatorName}}",unknownCreator:"Unbekannt",usages_one:"{{count}} Nutzung",usages_other:"{{count}} Nutzungen",private:"Privat",workspaceTemplate:"Workspace-Vorlage",clonePurchase:"Kauf klonen",processing:"Verarbeitung...",purchaseFor:"Kaufen für {{price}} $",useTemplate:"Vorlage verwenden",viewApp:"App aufrufen",paymentInfo:"Die Zahlung geht vollständig an den Ersteller",backendFunctionsEnabled:"Backend-Funktionen aktiviert",usesIntegrations:"Verwendet Integrationen",aboutThisApp:"Über diese App",noDescription:"Keine Beschreibung verfügbar",termsOfUse:"Nutzungsbedingungen",success:"Erfolg",error:"Fehler",purchaseFailed:"Kauf fehlgeschlagen",failedToPurchase:"Kauf konnte nicht gestartet werden",listingApproved:"App-Eintrag erfolgreich genehmigt",approveListingFailed:"Eintrag konnte nicht genehmigt werden",listingDeclined:"App-Eintrag erfolgreich abgelehnt",declineListingFailed:"Eintrag konnte nicht abgelehnt werden",pendingUpdate:"Ausstehende Aktualisierung zur Überprüfung",codeChangesPending:"App-Code-Änderungen ausstehend",metadataChanges:"Metadatenänderungen des Eintrags:",manageListing:"Eintrag verwalten",approveUpdate:"Aktualisierung genehmigen",declineUpdate:"Aktualisierung ablehnen",approveListing:"Eintrag genehmigen",declineListing:"Eintrag ablehnen",approving:"Wird genehmigt...",declining:"Wird abgelehnt...",cloneAsAdmin:"Als Admin klonen"}},lI={subscriptionOverdue:"Abonnementzahlung überfällig",overdueMessage:"Deine Abonnementzahlung ist überfällig. Der Zugang zu einigen Funktionen ist derzeit eingeschränkt. Bitte aktualisiere deine Zahlungsmethode, um wieder vollen Zugang zu erhalten.",goToBilling:"Zur Abrechnung",creditLimitReached:"Du hast das Limit dieses Monats erreicht. Um weiterhin Apps zu erstellen",upgradePlan:"Plan upgraden"},cI={viewerAccess:"Du hast Betrachter-Zugang und kannst keine Apps erstellen. Kontaktiere deinen Workspace-Admin, um zum Editor aufzusteigen."},dI={fillApiKeys:"Bitte fülle alle erforderlichen API-Schlüssel aus, bevor du absendest.",createAppFailed:"App konnte nicht erstellt werden. Bitte versuche es erneut."},uI={title:"Von URL starten",description:"Verwende eine beliebige Website als Ausgangspunkt für deine neue Seite.",urlLabel:"Website-URL",urlPlaceholder:"z.B. www.beispiel.de",errorEmpty:"Bitte gib eine URL ein",errorInvalid:"Gib eine gültige Website-URL ein, z.B. www.beispiel.de",errorTooLong:"Die URL ist zu lang. Bitte verwende eine kürzere URL.",modeFull:"Inhalt & Design",modeFullDescription:"Eine ähnliche Seite erstellen.",modeDesign:"Nur Design",modeDesignDescription:"Eine neue Seite im gleichen Stil erstellen.",modeContent:"Nur Inhalt",legalNotice:"Verwende nur URLs, bei denen du Rechte am Inhalt hast.",cancel:"Abbrechen",add:"Hinzufügen",learnMore:"Mehr über das Erstellen aus einer URL erfahren",capturedUrl:"URL erfasst",appReady:"Deine App ist fertig! Du kannst sie jetzt anpassen oder neue Funktionen hinzufügen.",banner:{headline:"Deine App wird erstellt",headlineDesign:"Deine App wird erstellt",subtitle:"Das kann ein paar Minuten dauern — wir sorgen dafür, dass sich das Warten lohnt.",activity:{msg1:"Die Seite wird erkundet...",msg2:"Das Design wird analysiert...",msg3:"Die Teile werden zusammengefügt...",msg4:"Etwas Besonderes wird geschaffen...",msg5:"Wir arbeiten daran...",msg6:"Es wird perfektioniert...",msg7:"Einen Moment noch, es wird großartig..."}}},pI={count:"Integrationen: {{count}}",loading:"Integration wird geladen...",selectedIntegrations:"Ausgewählte Integrationen:"},mI={menuItem:"Konnektoren",dialogTitle:"Konnektoren",dialogDescription:"Verbinde Tools und Datenquellen, um deine App zu stärken.",search:"Suchen",add:"Hinzufügen",added:"Hinzugefügt",remove:"Entfernen",noResults:"Keine Konnektoren gefunden",suggestionCardTitle:"Hilf mir bei deiner Integrationsanfrage für:",choosePrompt:"Wähle einen Prompt um fortzufahren.",somethingElse:"Etwas anderes",cancel:"Abbrechen",send:"Senden",connectTo:"Verbinden mit <name>{{name}}</name>",upgradeToConnect:"Erweitere deinen Plan, um {{name}} mit deiner App zu verbinden.",connecting:"Verbinde {{names}}…",cancelled:"abgebrochen",subtitles:{stripe:"Produkte oder Abos verkaufen und Zahlungen empfangen.",salesforce:"CRM-Datensätze automatisieren und synchronisieren.",slack:"Nachrichten senden und Slack als Nutzer verwalten.",slackbot:"Als Marken-Bot in deinem Slack-Workspace posten.",notion:"Wissen und Projektdaten organisieren und synchronisieren.",googlecalendar:"Termine und Kalendereinträge verwalten.",googledrive:"App-generierte Dateien exportieren und sichern.",gmail:"E-Mail-Versand und Posteingang automatisieren.",googlesheets:"Tabellendaten synchronisieren und verwalten.",googleslides:"Präsentationen erstellen und verwalten.",googledocs:"Dokumente erstellen und automatisieren.",googlebigquery:"Analysedaten abfragen und synchronisieren.",hubspot:"CRM-Daten synchronisieren und Marketing automatisieren.",linkedin:"Updates teilen und auf Berufsprofile zugreifen.",tiktok:"Profilstatistiken verfolgen und Videos durchsuchen.",discord:"In Kanälen posten und deine Discord-Community integrieren.",wix:"Auf Wix-Websitedaten und Business-Tools zugreifen.",github:"Repos, Issues und Pull Requests verwalten.",gitlab:"Projekte, MRs und CI/CD-Pipelines verwalten.",bamboohr:"Mitarbeiterverzeichnis und HR-Verwaltung.",wrike:"Projektplanung und Teamkoordination.",box:"Sicheres Cloud-Content-Management.",clickup:"Projekte organisieren und Teamarbeit verfolgen.",google_analytics:"Website-Traffic und Nutzereinblicke verfolgen.",outlook:"E-Mail und Kalender.",linear:"Issue-Tracking und Projektmanagement.",dropbox:"Dateien in der Cloud speichern und synchronisieren.",google_search_console:"SEO und Suchanalysen.",google_classroom:"Bildung und Kursverwaltung.",airtable:"Flexible Datenbanken und Tabellen.",splitwise:"Ausgaben aufteilen und Gruppenrechnungen verwalten.",microsoft_teams:"Team-Chat, Kanäle und Meetings.",share_point:"Dokumentenverwaltung und Zusammenarbeit.",one_drive:"Cloud-Dateispeicher.",typeform:"Formulare, Umfragen und Datenerfassung."}},gI={label:"Plan",tooltip:"Aktiviere den Plan-Modus, damit die KI einen detaillierten Plan erstellt, bevor sie deine App baut."},hI="Alle anzeigen",fI="Fehler",vI={menuLabel:"Aus Figma importieren",title:"Aus einem Figma-Frame generieren",description:"Füge den Link zu deinem Frame ein, um eine App basierend auf deinem Design zu generieren.",labelUrl:"Figma-Frame-Link",placeholderUrl:"z.B., https://www.figma.com/frame-link",urlHelp:"Verwende einen Link zu einem Frame, nicht zu einer Datei oder Seite.",learnPrepare:"Erfahre, wie du deinen Figma-Frame vorbereitest",connectTitle:"Mit Figma verbinden",connectDescription:"Erlaube Zugriff auf dein Figma-Konto, um dein Design zu importieren.",connectButton:"Mit Figma verbinden",connectedToFigma:"Mit Figma verbunden",errorMissingUrl:"Gib eine URL zu einem Figma-Frame ein",errorNotFigmaUrl:"Gib eine URL zu einem Figma-Frame ein",errorNotFrameUrl:"Gib eine URL zu einem Frame ein, nicht zu einer Datei oder Seite.",errorRateLimit:"Die Figma-API ist vorübergehend ausgelastet. Bitte versuche es in einigen Minuten erneut.",errorForbidden:"Ungültige oder abgelaufene Figma-Verbindung. Bitte verbinde dein Figma-Konto erneut.",errorNotFound:"Figma-Datei nicht gefunden. Bitte überprüfe die URL und stelle sicher, dass du Zugriff hast.",errorGeneric:"Zugriff auf dieses Figma-Design nicht möglich. Bitte überprüfe die URL und versuche es erneut.",validating:"Wird überprüft...",switchAccount:"Figma-Konto wechseln",cancel:"Abbrechen",generate:"Generieren",viewerCannotGenerate:"Du hast Betrachter-Zugriff und kannst keine Apps erstellen. Wende dich an deinen Workspace-Administrator, um zum Editor hochgestuft zu werden.",figmaFile:"Figma-Datei",justNow:"Gerade eben",importingMessage:"Generiere eine App basierend auf deinem Design aus diesem Figma-Frame."},bI={connectFailed:"Verbindung mit Figma fehlgeschlagen. Bitte versuche es erneut.",popupBlocked:"Popup blockiert. Bitte erlaube Popups und versuche es erneut.",disconnected:"Figma getrennt",disconnectFailed:"Trennung von Figma fehlgeschlagen. Bitte versuche es erneut."},yI={capturing:"Erfassung läuft...",figmaDescription:"Analyse des Figma-Designsystems. Layout, Typografie und Farb-Tokens werden extrahiert, um deine App zu erstellen."},kI={webApp:"Apps",aiAgent:"Superagents",recentApps:"Letzte Apps",templates:"Vorlagen",favoritesComingSoon:"Favoriten kommen bald"},wI={new:"Neu",message:"Sag Hallo zu deinem echten persönlichen Agenten",cta:"Jetzt ausprobieren"},AI={greeting:"Hallo {{name}},",greetingGeneric:"Hallo,",title:"Erstelle deinen eigenen persönlichen KI-Agent",createTitle:"Erstelle deinen eigenen Superagent",newBadge:"Neu",subtitle:"Dein KI-Agent, der Aufgaben erledigt, sich mit deinen Tools verbindet und rund um die Uhr für dich arbeitet",cta:"Erstelle deinen Superagent",creating:"Wird erstellt...",continueHero:{heading:"Mach weiter, wo du aufgehört hast",continueBtn:"Weiter mit {{name}}",or:"Oder",createNew:"Neuen Superagent erstellen",activeAgo:"Aktiv {{time}}",you:"Du"},features:{hassleFree:{title:"Problemlos",desc:"Kein Docker, keine Server, keine Einrichtung. Starte einfach deinen Superagent."},alwaysOn:{title:"Immer aktiv",desc:"Führt Aufgaben und Automatisierungen für dich aus, rund um die Uhr."},actions:{title:"Führt echte Aktionen aus",desc:"Erledigt Aufgaben, sendet Updates und reagiert automatisch."},remembers:{title:"Erinnert sich an alles",desc:"Behält deine Ziele, Präferenzen und den Kontext im Blick."},everywhere:{title:"Lebt dort, wo du bist",desc:"Funktioniert in WhatsApp, Telegram, Slack und in deinem Browser."},secure:{title:"Standardmäßig sicher",desc:"Zugriff nur auf das, was du erlaubst."}},untitled:"Unbenannter Agent",active:"Aktiv",noDescription:"Keine Beschreibung verfügbar",edited:"Bearbeitet {{time}}",updated:"Aktualisiert {{time}}",failedToCreate:"Agent konnte nicht erstellt werden. Bitte versuche es erneut.",errorPage:{title:"Hoppla, etwas ist schiefgelaufen",descriptionLine1:"Auf unserer Seite gab es ein technisches Problem.",descriptionLine2:"Gehe zurück zur Agenten-Erstellungsseite und versuche es erneut",goToAgents:"Zu Agenten →"}},SI={edited:"Bearbeitet {{time}}",updated:"Aktualisiert {{time}}",updatedRecently:"Kürzlich aktualisiert"},CI={emptyTitle:"Du hast noch keine Apps erstellt.",emptySubtitle:"Erstelle deine erste App mit dem Formular oben!"},DI={dialogTitle:"Schnellnavigation",dialogDescription:"Schneller Zugriff auf Apps, Vorlagen, Abrechnung und Workspace-Einstellungen direkt von der Startseite aus.",searchPlaceholder:"Apps, Einstellungen, Vorlagen, Abrechnung suchen...",searching:"Workspace-Apps werden durchsucht...",emptyTitle:"Kein passendes Ziel",emptyDescription:"Suche nach einem App-Namen, einem Einstellungsbereich oder einer Seite wie Abrechnung oder Vorlagen.",allApps:"Alle Apps",backToWorkspace:"Zurück zum Workspace",templates:"Vorlagen",billing:"Abrechnung",groups:{apps:"Apps",navigate:"Seiten",workspace:"Arbeitsbereich",account:"Konto"},subtitles:{favoriteApp:"Favorisierte App",recentApp:"Kürzlich verwendete App",page:"Seite"}},TI={label:"Was möchtest du erstellen?",more:"Mehr",moreIdeas:"Mehr Ideen",categories:{CRM:"CRM","Dev productivity":"Entwickler-Produktivität",Educational:"Bildung","Content Generation and Editing":"Inhaltserstellung und -bearbeitung","Personal Finance":"Persönliche Finanzen","Health and Wellness":"Gesundheit und Wohlbefinden",Productivity:"Produktivität","Travel Planning":"Reiseplanung",Entertainment:"Unterhaltung",Environmental:"Umwelt","Home Management":"Hausverwaltung","Creative Tools":"Kreative Werkzeuge",Tasks:"Aufgaben","CRM & Sales":"CRM & Vertrieb",Portfolio:"Portfolio",Finance:"Finanzen","Scheduling & Booking":"Planung & Buchung",eCommerce:"E-Commerce","Construction & Trade":"Bau & Handwerk","Events & Community":"Veranstaltungen & Gemeinschaft",Wellness:"Wellness","Operations & Logistics":"Betrieb & Logistik","Tasks & Workflows":"Aufgaben & Workflows","Content & Sites":"Inhalte & Seiten",Booking:"Buchung","E-commerce":"E-Commerce",Projects:"Projekte",Operations:"Betrieb"}},EI={hero:nI,recentApps:iI,recentAgents:rI,chat:oI,catalog:sI,billing:lI,permissions:cI,validation:dI,urlCapture:uI,integrations:pI,connectors:mI,planMode:gI,viewAll:hI,error:fI,figmaDialog:vI,figmaOAuth:bI,statusBanner:yI,tabs:kI,tryAgentBanner:wI,agent:AI,appCard:SI,appsList:CI,commandPalette:DI,ideas:TI},PI={title:"Integrationen",subtitle:"Entdecke vorgefertigte Integrationen, mit denen du dich mit APIs, Diensten und Tools verbinden kannst, um die Möglichkeiten deiner App zu erweitern."},_I={placeholder:"Integrationen suchen..."},xI={title:"Keine passenden Integrationen gefunden",description:"Passe deine Such- oder Filtereinstellungen an."},II={title:"Konnektoren",subtitle:"Schnelle OAuth-Verbindungen zu beliebten Diensten, unterstützt von Base44."},RI={howToUse:"Anleitung",dialog:{getStarted:"Erste Schritte",navigateInstruction:"Gehe zum Reiter Integrationen in deiner App, um {{name}} zu verbinden und personalisierte Prompts zu erhalten.",upgradeNotice:"Diese Integration erfordert Backend-Funktionen, die nur im Builder-Tarif und höher verfügbar sind. <seePlansLink>Pläne anzeigen</seePlansLink>"}},zI={stripe:"Produkte oder Abonnements verkaufen und online bezahlt werden.",salesforce:"CRM-Datensätze automatisieren und synchronisieren.",slack:"Nachrichten senden und Slack als Benutzer verwalten.",slackbot:"Als gebrandeter Bot in deinem Slack-Workspace posten.",notion:"Wissen und Projektdaten organisieren und synchronisieren.",googlecalendar:"Deinen Kalender und Termine verwalten.",googledrive:"App-generierte Dateien exportieren und sichern.",gmail:"E-Mail-Versand und Posteingang automatisieren.",googlesheets:"Tabellendaten synchronisieren und verwalten.",googleslides:"Präsentationen erstellen und verwalten.",googledocs:"Dokumente verwalten und die Erstellung automatisieren.",googlebigquery:"Analysedaten abfragen und synchronisieren.",googletasks:"Aufgabenlisten und To-dos verwalten.",googlemeet:"Videokonferenzen und Meetings.",hubspot:"CRM-Daten synchronisieren und Marketing automatisieren.",linkedin:"Updates teilen und auf Berufsprofile zugreifen.",tiktok:"Profilstatistiken verfolgen und Videos durchsuchen.",discord:"Channels benachrichtigen und Discord-Community integrieren.",wix:"Auf Wix-Website-Daten und Business-Tools zugreifen.",github:"Repos, Issues und Pull Requests verwalten.",gitlab:"Projekte, MRs und CI/CD-Pipelines verwalten.",bamboohr:"Mitarbeiterverzeichnis und HR-Verwaltung.",wrike:"Projektplanung und Teamkoordination.",box:"Sichere Cloud-Inhaltsverwaltung.",clickup:"Projekte organisieren und Teamarbeit verfolgen.",google_analytics:"Website-Traffic und Nutzereinblicke verfolgen.",outlook:"E-Mail und Kalender.",linear:"Issue-Tracking und Projektmanagement.",dropbox:"Dateien in der Cloud speichern und synchronisieren.",google_search_console:"SEO und Suchanalysen.",google_classroom:"Bildung und Kursverwaltung.",airtable:"Flexible Datenbanken und Tabellen.",splitwise:"Ausgaben aufteilen und Gruppenrechnungen verwalten.",microsoft_teams:"Team-Chat, Channels und Meetings.",share_point:"Dokumentenverwaltung und Zusammenarbeit.",one_drive:"Cloud-Dateispeicher.",typeform:"Formulare, Umfragen und Datenerfassung.",hugging_face:"KI-Inferenz und Modell-Repositories.",calendly:"Automatisierte Terminplanung.",contentful:"Headless CMS und Content-Verwaltung.",supabase:"Schemas durchsuchen, Daten lesen und Projektstatus anzeigen (nur lesend)."},MI={page:PI,search:_I,emptyState:xI,connectors:II,connector:RI,catalog:zI},NI={title:"Launchpad",subtitle:"Entdecke und erkunde Apps, die von der Community erstellt wurden",shareApp:"Deine App teilen",allApps:"Alle Apps",noAppsFound:"Keine Apps gefunden",noAppsHint:"Versuche, deine Filter zu löschen oder nach etwas anderem zu suchen.",noAppsEmpty:"Sei der Erste, der eine App auf Launchpad veröffentlicht!",clearFilters:"Filter löschen",goToFirstPage:"Zur ersten Seite",retry:"Erneut versuchen",publishedToast:"Deine App ist jetzt auf Launchpad live!"},FI={placeholder:"Apps auf Launchpad suchen..."},LI={all:"Alle"},jI={title:"Gerade im Trend"},OI={title:"Top-Apps",empty:"Noch keine Top-Apps für diesen Zeitraum.",thisWeek:"Diese Woche",thisMonth:"Diesen Monat",allTime:"Gesamte Zeit"},BI={live:"Live",someone:"Jemand",sentences:{vote:"{{user}} hat gerade für {{app}} gestimmt",like:"{{user}} hat gerade {{app}} gefällt",publish:"{{user}} hat gerade {{app}} veröffentlicht",default:"{{user}} hat gerade mit {{app}} interagiert"}},UI={signInPrompt:"Bitte melde dich an, um deine App auf Launchpad zu veröffentlichen.",signIn:"Anmelden",back:"Zurück",next:"Weiter",publish:"Veröffentlichen",publishing:"Wird veröffentlicht...",stepOf:"Schritt {{current}} von {{total}}",successToast:"Deine App ist jetzt auf Launchpad live!",failedDefault:"Veröffentlichung fehlgeschlagen. Bitte versuche es erneut.",categoriesLoadFailed:"Kategorien konnten nicht geladen werden. Bitte schließe das Fenster und versuche es erneut.",categoriesRetry:"Erneut versuchen",steps:{selectApp:"App auswählen",details:"Details",preview:"Vorschau"},appPicker:{chooseApp:"Wähle die App aus, die du auf Launchpad veröffentlichen möchtest.",searchPlaceholder:"Deine Apps durchsuchen...",loadFailed:"Deine Apps konnten nicht geladen werden.",tryAgain:"Erneut versuchen",noApps:"Du hast noch keine Apps.",noAppsForQuery:"Keine Apps gefunden für „{{query}}“",loadMore:"Mehr laden"},preview:{caption:"So erscheint deine App im Launchpad-Raster:",creatorFallback:"Du"},categoryPicker:{count:"{{current}}/{{max}} Kategorien ausgewählt"},validation:{nameRequired:"App-Name ist erforderlich",descriptionRequired:"Kurzbeschreibung ist erforderlich",descriptionTooLong:"Maximal {{max}} Zeichen",categoriesRequired:"Wähle mindestens 1 Kategorie",screenshotsRequired:"Lade mindestens 1 Screenshot hoch"}},qI={uploadFailed:"Einige Screenshots konnten nicht hochgeladen werden. Bitte versuche es erneut.",uploading:"Wird hochgeladen...",addImage:"Bild hinzufügen",count:"{{current}}/{{max}} Screenshots. Zum Sortieren ziehen."},VI={previous:"Zurück",next:"Weiter",pageOf:"Seite {{page}} von {{totalPages}}"},$I={justNow:"gerade eben",minutesAgo:"vor {{count}} Min.",hoursAgo:"vor {{count}} Std.",daysAgo:"vor {{count}} T."},WI={appName:"App-Name",shortDescription:"Kurzbeschreibung",shortDescriptionPlaceholder:"Eine kurze Beschreibung, was deine App macht",longDescription:"Ausführliche Beschreibung",longDescriptionPlaceholder:"Erzähle mehr über deine App...",optional:"Optional",categories:"Kategorien",screenshots:"Screenshots",generateWithAi:"Mit KI generieren",aiComingSoon:"KI-Generierung kommt bald"},GI={tryApp:"App testen",share:"Teilen",shareToast:"Link in die Zwischenablage kopiert!",shareError:"Fehler beim Teilen",about:"Über",moreByCreator:"Mehr von {{name}}",backToLaunchpad:"Zurück zu Launchpad",notFound:"App nicht gefunden",notFoundHint:"Diese App wurde möglicherweise entfernt oder zurückgezogen.",loadFailed:"Fehler beim Laden der App-Details.",unknownCreator:"diesem Ersteller"},HI={title:"Kommentare",placeholder:"Kommentar schreiben...",submit:"Posten",submitting:"Wird gepostet...",empty:"Noch keine Kommentare. Sei der Erste!",loadMore:"Mehr Kommentare laden",deleteFailed:"Fehler beim Löschen des Kommentars.",postFailed:"Fehler beim Posten des Kommentars.",signInToComment:"Melde dich an, um einen Kommentar zu hinterlassen",anonymous:"Anonym"},YI={likeFailed:"Fehler beim Aktualisieren des Likes.",voteFailed:"Fehler beim Aktualisieren der Stimme.",selfVoteError:"Du kannst nicht für deine eigene App stimmen."},KI={loadFailed:"Launchpad-Daten konnten nicht geladen werden. Bitte versuche es erneut.",browseFailed:"Apps konnten nicht geladen werden. Bitte versuche es erneut.",topAppsFailed:"Top-Apps konnten nicht geladen werden. Bitte versuche es erneut.",categoriesFailed:"Kategorien konnten nicht geladen werden.",refreshFailed:"Aktualisierung fehlgeschlagen — bitte lade die Seite neu."},ZI={page:NI,search:FI,categories:LI,trending:jI,topApps:OI,liveActivity:BI,publish:UI,screenshots:qI,pagination:VI,relativeTime:$I,fillDetails:WI,detail:GI,comments:HI,engagement:YI,errors:KI},JI={title:"Apps",allAgentsTitle:"Alle Agenten",createNewApp:"Neue App erstellen",createNewAgent:"Neuen Agenten erstellen",tabRecents:"Zuletzt verwendet",tabFavorites:"Favoriten",tabAllApps:"Alle Apps",tabAllAgents:"Alle Agenten",searchPlaceholder:"Apps suchen",gridView:"Rasteransicht",listView:"Listenansicht",appTypeLabel:"App-Typ",appTypeApps:"Apps",appTypeAgents:"Agenten",tableHeaderName:"Name",tableHeaderDescription:"Beschreibung",tableHeaderActions:"Aktionen",folderActionAddApps:"Apps hinzufügen",folderActionRename:"Umbenennen",folderActionDelete:"Löschen",filterOwnedByMe:"In meinem Besitz",filterMyAppsPersonal:"Meine Apps (persönlicher Arbeitsbereich)",filterAllPlatform:"Alle Apps (plattformweit)",filterMyAppsWorkspace:"Meine Apps im Arbeitsbereich {{workspaceName}}",filterAllAppsWorkspace:"Alle Apps im Arbeitsbereich {{workspaceName}}",addNewFolder:"Neuen Ordner hinzufügen",sortLastUpdated:"Zuletzt aktualisiert",sortLastCreated:"Zuletzt erstellt",sortNameAsc:"Name (A-Z)",sortNameDesc:"Name (Z-A)",filterCreatedByMe:"Von mir erstellt",filterCreatedByAnyone:"Von allen erstellt",filterAllPlatformApps:"Alle Plattform-Apps",filterMyApps:"Meine Apps in {{workspaceName}}",planModeDescription:"Diese Anwendung befindet sich derzeit im Planungsmodus und wurde noch nicht erstellt.",noDescription:"Keine Beschreibung",byCreator:"Von {{name}}",createdAgo:"Erstellt {{timeAgo}}",untitledPlan:"Unbenannter Plan",tableHeaderApp:"App",tableHeaderLastUpdated:"Zuletzt aktualisiert",tableHeaderCreatedBy:"Erstellt von",emptyFolderTitle:"Noch keine Apps hinzugefügt",emptyFolderMessage:"Apps erscheinen hier, sobald Sie sie hinzufügen",addExistingApps:"Vorhandene Apps hinzufügen",emptyFavoritesTitle:"Noch keine Lieblings-Apps",emptyFavoritesMessage:"Markieren Sie eine App mit einem Stern, um sie hier hinzuzufügen.",emptyRecentsTitle:"Keine letzten Aktivitäten",emptyRecentsMessage:"Apps, die Sie öffnen, erscheinen hier.",emptySearchTitle:"Keine Apps gefunden",emptySearchMessage:"Keine Apps gefunden, die Ihren Kriterien entsprechen.",clearFilters:"Filter zurücksetzen",previous:"Zurück",next:"Weiter",failedToUpdateStar:"Stern konnte nicht aktualisiert werden",failedToUpdateFavorite:"Favorit konnte nicht aktualisiert werden",pleaseRetry:"Bitte versuchen Sie es erneut",folderCreated:"Ordner erstellt",folderRenamed:"Ordner umbenannt",folderDeleted:"Ordner gelöscht",folderUpdated:"Ordner aktualisiert",filter:"Filter"},QI={showAll:"Alle anzeigen",appCount_one:"{{count}} App",appCount_other:"{{count}} Apps",addApps:"Apps hinzufügen",rename:"Umbenennen",delete:"Löschen",cancel:"Abbrechen",save:"Speichern",saving:"Wird gespeichert...",create:"Erstellen",deleting:"Wird gelöscht...",createFirstFolder:"Ersten Ordner erstellen",createNewFolder:"Neuen Ordner erstellen",renameFolder:"Ordner umbenennen",folderVisibilityDescription:"Die Ordnerorganisation ist für Ihren Arbeitsbereich sichtbar.",folderNamePlaceholder:"Ordnername",visibility:"Sichtbarkeit",scopeWorkspace:"Arbeitsbereich",scopePersonal:"Persönlich",personalScopeHint:"Nur für Sie sichtbar",deleteFolder:"Ordner löschen",deleteFolderDescription:'Sie sind dabei, "{{name}}" zu löschen? Apps in diesem Ordner werden nicht gelöscht, nur der Ordner.',manageFolders:"Ordner verwalten",manageFoldersDescription:"Diese App zu Ordnern hinzufügen oder daraus entfernen.",searchFoldersPlaceholder:"Ordner suchen...",createNewFolderButton:"Neuen Ordner erstellen",noFoldersMatchSearch:"Keine Ordner entsprechen Ihrer Suche",noFoldersYet:"Noch keine Ordner",allFolders:"Alle Ordner",searchFolders:"Ordner suchen",scopeFilterAll:"Alle",sortNameAsc:"Name A–Z",sortNameDesc:"Name Z–A",sortMostApps:"Meiste Apps",sortFewestApps:"Wenigste Apps",noFoldersFound:"Keine Ordner gefunden",noFoldersMatchCriteria:"Keine Ordner entsprechen Ihren Suchkriterien.",clearSearch:"Suche zurücksetzen",manageAppsInFolder:"Apps im Ordner verwalten",manageAppsDescription:'Apps in "{{name}}" hinzufügen oder entfernen.',searchAppsPlaceholder:"Apps suchen...",noAppsMatchSearch:"Keine Apps entsprechen Ihrer Suche",noAppsFound:"Keine Apps gefunden",loadMore:"Mehr laden",appUpdatedAgo:"Aktualisiert {{timeAgo}}",saveWithCount:"{{label}} ({{count}})",operationFailed:"Vorgang fehlgeschlagen. Bitte versuchen Sie es erneut."},XI={viewLiveApp:"Live-App ansehen",share:"Teilen",rename:"Umbenennen",cloneApp:"App klonen",appSettings:"App-Einstellungen",delete:"Löschen",appDeleted:"App gelöscht",appDeletedDescription:'"{{name}}" wurde gelöscht',failedToDelete:"App konnte nicht gelöscht werden",failedToDeleteDescription:"Beim Löschen der App ist ein Fehler aufgetreten",manageFolders:"Ordner verwalten",removeFromFolder:"Aus Ordner entfernen",goToAppSettings:"Zu App-Einstellungen",deleteApp:"App löschen",deleteAppTitle:'"{{name}}" löschen?',deleteAppDescription:"Dadurch wird diese App und alle ihre Daten dauerhaft gelöscht. Diese Aktion kann nicht rückgängig gemacht werden.",appRemovedFromFolder:"App aus Ordner entfernt",failedToRemoveFromFolder:"App konnte nicht aus dem Ordner entfernt werden",addedToFolders_one:"App zu {{count}} Ordner hinzugefügt",addedToFolders_other:"App zu {{count}} Ordnern hinzugefügt",removedFromFolders_one:"App aus {{count}} Ordner entfernt",removedFromFolders_other:"App aus {{count}} Ordnern entfernt",failedToUpdateFolders:"Ordner konnten nicht aktualisiert werden",foldersUpdated:"{{added}} und {{removed}}",removeFromFavorites:"Aus Favoriten entfernen",addToFavorites:"Zu Favoriten hinzufügen"},eR={title:"App umbenennen",description:"Der App-Name ist für Sie und Ihre Nutzer sichtbar.",inputPlaceholder:"App-Name eingeben",urlUpdateNote:"Das Ändern des App-Namens aktualisiert auch die App-URL.",cancel:"Abbrechen",save:"Speichern",saving:"Wird gespeichert...",nameRequired:"App-Name ist erforderlich",enterDifferentName:"Bitte geben Sie einen anderen Namen ein",successTitle:"App umbenannt",successDescription:'App in "{{name}}" umbenannt',successDescriptionUrlFailed:'App in "{{name}}" umbenannt, aber die URL konnte nicht aktualisiert werden.',failedTitle:"App konnte nicht umbenannt werden",failedDescription:"Beim Umbenennen der App ist ein Fehler aufgetreten"},tR="Laden...",aR="(Kopie)",nR={cloningTitle:"{{appName}} wird geklont",cloningDescription:"Das kann einen Moment dauern. Sie finden es auf der Apps-Seite, sobald es fertig ist",goToApps:"Zu den Apps",confirmingPurchaseTitle:"Kauf wird bestätigt...",confirmingPurchaseSubtitle:"Das dauert normalerweise nur ein paar Sekunden",errorTitle:"Fehler",goBack:"Zurück",cloneNotAllowedTitle:"Klonen nicht erlaubt",cloneNotAllowedDescription:"Diese App erfordert Backend-Funktionen. Sie benötigen den Builder-Tarif oder höher, um sie zu klonen.",configureSecrets:"Secrets konfigurieren",cloneTitle:"{{name}} klonen",cloneButton:"{{name}} klonen",cloningButton:"{{name}} wird geklont...",defaultAppName:"App",preparing:"Wird vorbereitet...",errorCloningApp:"Beim Klonen der App ist ein Fehler aufgetreten",errorFetchingRequirements:"Beim Abrufen der Klon-Anforderungen ist ein Fehler aufgetreten",errorPurchaseTimeout:"Die Bestätigung Ihres Kaufs dauert länger als erwartet. Bitte prüfen Sie Ihre E-Mail oder kontaktieren Sie den Support, falls das Problem weiterhin besteht.",errorVerifyPurchase:"Kauf konnte nicht verifiziert werden. Bitte versuchen Sie es erneut."},iR={userApps:JI,folders:QI,appActions:XI,renameApp:eR,loading:tR,copySuffix:aR,remixPage:nR},rR={title:"Base44 App Templates Marketplace – Nutzungsbedingungen",lastUpdated:"Zuletzt aktualisiert: 18. November 2025"},oR={header:rR},sR={home:"Startseite",allApps:"Alle Apps",apps:"Apps",integrations:"Integrationen",appTemplates:"App-Vorlagen",hirePartner:"Partner engagieren",affiliates:"Affiliates",docsSupport:"Dokumente & Support",admins:"Admins",referFriends:"Freunde empfehlen",language:"Sprache",startBuilding:"Jetzt bauen"},lR={title:"Arbeitsbereich erstellen",subtitle:"Beginnen Sie mit der Zusammenarbeit mit Ihren Arbeitsbereichsmitgliedern",back:"Zurück",formTitle:"Arbeitsbereichsinformationen",nameLabel:"Name des Arbeitsbereichs",namePlaceholder:"Namen des Arbeitsbereichs eingeben",nameHint:"Wählen Sie einen Namen, der Ihren Arbeitsbereich repräsentiert",nameRequiredError:"Der Name des Arbeitsbereichs ist erforderlich",createFailedError:"Arbeitsbereich konnte nicht erstellt werden",limitReachedError:"Arbeitsbereichslimit erreicht. Sie können maximal 3 Arbeitsbereiche erstellen.",cancelButton:"Abbrechen",createButton:"Arbeitsbereich erstellen",creatingButton:"Arbeitsbereich wird erstellt...",whatHappensNext:{title:"Was passiert als nächstes?",ownerPermissions:"Sie werden der Arbeitsbereichsinhaber mit vollständigen Verwaltungsberechtigungen",inviteMembers:"Sie können Arbeitsbereichsmitglieder einladen und Lizenzen verwalten",accessDashboard:"Greifen Sie auf Ihr Arbeitsbereich-Dashboard zu, um loszulegen"}},cR={workspace:"Workspace",backToWorkspace:"Zurück zu {{workspaceName}}",settings:"Einstellungen",inviteMembers:"Mitglieder einladen",myWorkspaces:"Meine Workspaces",createWorkspace:"Workspace erstellen",noWorkspacesFound:"Keine Workspaces gefunden",accountSettings:"Kontoeinstellungen",apiKey:"API-Schlüssel",helpSupport:"Hilfe & Support",becomeAffiliate:"Affiliate werden",defaultUser:"Benutzer",defaultUserInitial:"B",referFriend:"Freund empfehlen",giftCards:"Geschenkkarten",sendGiftCard:"Geschenkkarte senden",notifications:"Benachrichtigungen",logOut:"Abmelden",aboutApp:"Über die App",upgradePlan:"Plan upgraden",winCredits:"Gratis-Credits gewinnen",pricingPlans:"Preispläne",documentation:"Dokumentation",getHelp:"Hilfe erhalten",memberCount_one:"{{count}} Mitglied",memberCount_other:"{{count}} Mitglieder",myProfile:"Mein Profil",viewProfile:"Profil ansehen",failedToLoadProfile:"Profil konnte nicht geladen werden",user:"Benutzer"},dR={ariaLabel:"Agent-Menü",agentFallback:"Agent"},uR={integrationCredits:"Integrations-Credits",monthlyCredits:"Monatliche Credits",messageCredits:"Nachrichtenkredit",dailyCredits:"Tägliche Credits",giftCardCredits:"Geschenk-Credits",renewsAt:"Erneuert sich am {{date}}",giftCardTooltip:"Geschenk-Credits werden vor Ihren Plan-Credits verwendet.",percentUsed:"{{percent}}% verwendet",messagesRemaining_one:"{{count}} Nachricht verbleibend",messagesRemaining_other:"{{count}} Nachrichten verbleibend",upgradeYourPlan:"Plan upgraden",getMoreOutOfYourApps:"Holen Sie mehr aus Ihren Apps heraus",upgradeYourPlanToPro:"Upgraden Sie Ihren Plan auf Pro",redeemDescription:"Nach dem Einlösen werden die Credits deinem Workspace gutgeschrieben.",creditsRemaining_one:"{{count}} Credit verbleibend",creditsRemaining_other:"{{count}} Credits verbleibend"},pR={label:"Community",appTemplates:"App-Vorlagen",appTemplatesDesc:"Starte schneller mit Community-Vorlagen.",hirePartner:"Partner engagieren",hirePartnerDesc:"Finde Partner und starte eine Zusammenarbeit.",spotlight:"Spotlight",spotlightDesc:"Entdecke herausragende Apps.",affiliateProgram:"Affiliate-Programm",affiliateProgramDesc:"Werde ein Base44-Affiliate.",joinUsOn:"Folge uns auf"},mR=JSON.parse(`{"title":"Einstellungen","lockedFeature":{"includedInPlan":"Im {{plan}}-Plan und höher enthalten","includedInPlanExact":"Im {{plan}}-Plan enthalten","viewPlans":"Pläne ansehen","talkToSales":"Mit dem Vertrieb sprechen","authSecurity":{"title":"Workspace-Zugang kontrollieren","body":"Unverzichtbar für regulierte Branchen und sicherheitsbewusste Organisationen","ssoAccess":"Single Sign-On (SSO) nutzen, um Passwortrisiken zu reduzieren","domainVerification":"Mit Domain-Verifizierung kontrollieren, wer beitreten kann","ipWhitelisting":"Zugang nur von vertrauenswürdigen IP-Adressen erlauben"},"integrations":{"title":"Einmal einrichten, im gesamten Workspace nutzen","body":"Für Teams, die APIs und externe Tools über Apps hinweg standardisieren.","configureOnce":"API-Integrationen einmal für alle Apps und Teammitglieder konfigurieren","sharedAccess":"Jeder im Workspace kann verbundene Tools sofort nutzen","consistentConnections":"Externe Verbindungen über alle Apps hinweg konsistent halten"},"appsConfiguration":{"title":"App-Sichtbarkeit und SSO-Regeln festlegen","body":"Für Teams, die interne Tools und sensible Apps verwalten.","publicAppControl":"Bestimmen, wer öffentliche Apps in diesem Workspace erstellen kann","defaultVisibility":"Die anfängliche Sichtbarkeit für neue Apps festlegen","enforceSso":"Workspace-SSO über alle Apps hinweg durchsetzen"},"analytics":{"title":"Sieh, wie dein Team Base44 nutzt","body":"Für Workspace-Inhaber und Admins, die Nutzung und Akzeptanz verfolgen.","creditTracking":"Verfolgen, wie Credits im Team genutzt werden","activeUsers":"Sehen, welche Teammitglieder Base44 aktiv nutzen","licenseUsage":"Verstehen, wie viele Lizenzen derzeit genutzt werden"},"skills":{"title":"Geben Sie Ihrer KI wiederverwendbare Skills","body":"Definieren Sie konsistentes KI-Verhalten, das in all Ihren Apps funktioniert.","reusableInstructions":"Erstellen Sie individuelle Anweisungen (einen Skill), die bestimmen, wie die KI Ihre Apps baut","autoActivation":"Einmal erstellen, in all Ihren Apps wiederverwenden","teamConsistency":"Ton, Formatierung, Logik oder jedes Verhalten steuern, das Sie standardisieren möchten"},"mcpConnections":{"title":"Externe Tools mit MCP verbinden","body":"Bringen Sie Live-Daten aus externen Tools direkt in Ihre Apps.","externalTools":"Geben Sie Ihrem KI-Builder Zugriff auf Echtzeit-Kontext während er arbeitet","customServers":"Verbinden Sie benutzerdefinierte MCP-Server zur Nutzung in all Ihren Apps","extendCapabilities":"Greifen Sie auf Tools wie Amplitude, Linear und mehr beim Bauen zu"}},"membersTitle":"Mitglieder","inviteMembers":"Mitglieder einladen","inviteByEmail":"Per E-Mail einladen","bulkInviteCsv":"Masseneinladung (CSV)","close":"Schließen","createInviteLink":"Einladungslink erstellen","manageInviteLinks":"Einladungslinks verwalten","backToMembers":"Zurück zu Mitglieder","backToMenu":"Zurück zum Einstellungsmenü","inviteLinks":{"title":"Einladungslinks","breadcrumb":"Einladungslinks","description":"Einladungslinks für diesen Workspace erstellen und verwalten.","createInviteLink":"Einladungslink erstellen","noLinksYet":"Noch keine Einladungslinks","noLinksSubtitle":"Erstellen Sie einen Einladungslink, um den Zugang zu diesem Workspace einfach zu teilen.","copyLink":"Link kopieren","copyLinkLower":"Link kopieren","deleteTooltip":"Einladungslink löschen","deleteButton":"Löschen","deleteLinkButton":"Link löschen","deleteConfirmTitle":"Einladungslink löschen?","deleteConfirmActive":"Personen können diesem Workspace über diesen Link nicht mehr beitreten. Diese Aktion kann nicht rückgängig gemacht werden.","deleteConfirmInactive":"Dieser Link und sein Verlauf werden aus diesem Workspace entfernt.","copiedToClipboard":"Einladungslink in die Zwischenablage kopiert.","columnName":"Name","columnStatus":"Status","columnUsage":"Nutzung","columnRole":"Rolle","columnExpiration":"Ablaufdatum","columnDomains":"Erlaubte Domains","statusActive":"Aktiv","statusRevoked":"Widerrufen","statusExpired":"Abgelaufen","statusLimitReached":"Limit erreicht","usageUnlimited":"Unbegrenzt","dialogTitle":"Einladungslink erstellen","dialogMobileTitle":"Link erstellen","linkName":"Linkname (Optional)","linkNamePlaceholder":"z.B. Onboarding neue Mitarbeiter","role":"Rolle","selectRole":"Rolle auswählen","roleViewer":"Betrachter","roleEditor":"Bearbeiter","roleMember":"Mitglied","expiration":"Ablauf","selectExpiration":"Ablauf auswählen","nDays_one":"{{count}} Tag","nDays_other":"{{count}} Tage","never":"Nie","maximumUses":"Maximale Nutzungen","selectLimit":"Limit auswählen","unlimited":"Unbegrenzt","nUses_one":"{{count}} Nutzung","nUses_other":"{{count}} Nutzungen","allowedDomains":"Erlaubte E-Mail-Domains (Optional)","allowedDomainsPlaceholder":"z.B. firma.com, partner.org","domainsHelp":"Mehrere Domains mit Komma trennen.","domainsError":"Ungültige Eingabe. Verwenden Sie kommagetrennte Domains (z.B. firma.com, partner.org)","securityWarning":"Jeder mit diesem Link kann Ihrem Workspace beitreten und auf dessen Daten zugreifen. Teilen Sie ihn nur mit vertrauenswürdigen Personen.","advancedOptions":"Erweiterte Optionen","cancel":"Abbrechen","creating":"Wird erstellt...","create":"Erstellen","linkCreatedAndCopied":"Einladungslink erstellt und kopiert.","manageInvitations":"Einladungen verwalten"},"postPaymentInvite":{"title":"Alles bereit!","description":"Ihr Plan ist aktiv. Laden Sie Ihre Freunde und Kollegen ein, um gemeinsam zu entwickeln.","createInviteLink":"Einladungslink erstellen","inviteByEmail":"Per E-Mail einladen","maybeLater":"Später vielleicht","inviteLinkReady":"Einladungslink bereit","subtitleNoDomain":"Jeder mit diesem Link kann als <bold>{{role}}</bold> beitreten","subtitleWithDomain":"Jeder mit einer {{domains}}-E-Mail kann als <bold>{{role}}</bold> beitreten","copied":"Kopiert","manageInvitationsPrompt":"Du kannst alle deine Einladungslinks auf der Einstellungsseite unter <inviteLink>Einladungslinks</inviteLink> verwalten.","copyLink":"Kopieren","close":"Schließen","expires":"Läuft ab {{time}}","remainingUses_one":"{{count}} Nutzung verbleibend","remainingUses_other":"{{count}} Nutzungen verbleibend"},"sections":{"workspace":"Workspace","integrations":"Integrationen","account":"Konto"},"creditUsage":{"pageDescription":"Überwachen Sie Ihren Credit-Verbrauch und Ihre Nutzungsmuster.","currentPlan":"Sie befinden sich derzeit im {{planName}}-Plan","overLimit":"Limit überschritten","updatePayment":"Zahlung aktualisieren","upgrade":"Upgrade","paymentOverdue":"Zahlung überfällig","pastDueDescription":"Ihre Abonnementzahlung ist überfällig. Die angezeigten Credits und Limits basieren auf Ihrem letzten bezahlten Plan ({{plan}}).","tryAgain":"Erneut versuchen","trying":"Bitte warten...","monthlyMessages":"Monatliche Nachrichten","workspaceTotal":"Workspace-Gesamt","workspaceUsage":"Workspace-Nutzung","dailyMessages":"Tägliche Nachrichten","loadError":"Nutzungsstatistiken konnten nicht geladen werden","portalError":"Zahlungsverwaltung konnte nicht geöffnet werden. Bitte versuchen Sie es erneut.","portalErrorTitle":"Fehler","creditsRenewIn":"Credits werden in {{timeLeft}} erneuert","expired":"Abgelaufen","dailyUsageTitle":"Tägliche Nutzung (Nachrichten)","noUsageData":"Keine Nutzungsdaten verfügbar","messagesLabel":"Nachrichten","timeDaysHours":"{{days}}T : {{hours}}Std","timeHoursMinutes":"{{hours}}Std : {{minutes}}Min","timeMinutes":"{{minutes}}Min"},"basicInformation":{"pageTitle":"Allgemeine Informationen","pageSubtitleEditable":"Verwalten Sie die Details und Einstellungen Ihres Arbeitsbereichs.","pageSubtitleReadOnly":"Arbeitsbereichsdetails anzeigen. Nur Eigentümer und Administratoren können bearbeiten.","loadingMessage":"Arbeitsbereichsinformationen werden geladen...","workspaceNameLabel":"Name des Arbeitsbereichs","workspaceNamePlaceholder":"Namen des Arbeitsbereichs eingeben","workspaceDescriptionLabel":"Beschreibung des Arbeitsbereichs","workspaceDescriptionPlaceholder":"Beschreiben Sie Ihren Arbeitsbereich...","workspaceNameEmptyErrorMessage":"Der Name des Arbeitsbereichs darf nicht leer sein","cancelButton":"Abbrechen","saveButton":"Änderungen speichern","savingButton":"Speichern...","saveSuccessMessage":"Arbeitsbereichseinstellungen erfolgreich aktualisiert!","saveErrorMessage":"Fehler beim Aktualisieren der Arbeitsbereichseinstellungen: {{error}}","unknownError":"Unbekannter Fehler"},"leaveWorkspace":{"title":"Arbeitsbereich verlassen","description":"Wenn Sie diesen Arbeitsbereich verlassen, verlieren Sie den Zugriff auf alle zugehörigen Apps. Das Eigentum an Ihren Apps wird auf den Arbeitsbereichsinhaber übertragen.","button":"Arbeitsbereich verlassen","soleOwnerNote":"Sie können den Arbeitsbereich nicht verlassen, da Sie der einzige Inhaber sind.","successMessage":"Sie haben den Arbeitsbereich verlassen.","workspaceNameFallback":"Arbeitsbereich","dialog":{"title":"{{name}} verlassen?","confirmQuestion":"Sind Sie sicher, dass Sie <bold>{{name}}</bold> verlassen möchten?","transferWarning":"Ihre Apps in diesem Arbeitsbereich werden auf den Arbeitsbereichsinhaber übertragen und Sie verlieren den Zugriff.","cancelButton":"Abbrechen","confirmButton":"Arbeitsbereich verlassen"}},"menu":{"basicInformation":"Allgemeine Informationen","planAndBilling":"Plan und Abrechnung","creditUsage":"Credit-Nutzung","members":"Mitglieder","seatsAndMembers":"Plätze und Mitglieder","authAndSecurity":"Authentifizierung und Sicherheit","integrations":"Integrationen","appsConfiguration":"App-Konfiguration","analytics":"Analysen","accountSettings":"Kontoeinstellungen","mcpConnections":"MCP-Verbindungen","skills":"Fähigkeiten","connectors":"Konnektoren","manageSubscription":"Abonnement verwalten","secrets":"Geheimnisse","dataResidency":"Datenresidenz"},"guests":{"tabMembers":"Mitglieder","tabGuests":"Gäste","title":"Gäste","infoBanner":"Gäste sind externe Benutzer, die zu bestimmten Apps eingeladen wurden. Sie verbrauchen Credits aus dem gemeinsamen Pool des Arbeitsbereichs.","searchPlaceholder":"Nach E-Mail oder App suchen...","columnGuest":"Gäste","columnApp":"App","columnInvitedBy":"Eingeladen von","columnCreditsUsed":"Verbrauchte Credits","pending":"Ausstehend","promoteToEditor":"Zum Editor befördern","promoteToViewer":"Zum Betrachter befördern","removeFromWorkspace":"Aus dem Arbeitsbereich entfernen","emptyTitle":"Noch keine Gäste","emptySubtitle":"Gäste können über den App-Mitarbeiter-Einladungsablauf hinzugefügt werden.","noResults":"Keine Gäste gefunden","noResultsSubtitle":"Keine Gäste entsprechen \\"{{searchTerm}}\\"","promoted":"{{email}} zu {{role}} befördert","promoteFailed":"Rolle konnte nicht aktualisiert werden","setCreditLimit":"Kreditlimit festlegen","upgradeForCreditLimit":"Upgrade auf den Enterprise-Plan für diese Funktion","viewAppAccess":"App-Zugang anzeigen","removeMember":"Mitglied entfernen","guestRole":"Gast","appAccessTitle":"App-Zugang von {{name}}","appAccessDescription":"Sehen Sie die Apps, auf die dieser Gast im Arbeitsbereich zugreifen kann.","appAccessLoading":"Laden...","appAccessEmpty":"Kein App-Zugang gefunden.","appAccessColumnApp":"App","appAccessDone":"Fertig"},"members":{"pageTitle":"Mitglieder","pageDescription":"Mitglieder und Rollen für diesen Arbeitsbereich anzeigen und verwalten.","tableTitle":"Mitglieder ({{count}})","columnMembers":"Mitglieder","columnCreditsUsed":"Verbrauchte Credits","columnCreditsUsedWithLimit":"Verbrauchte Credits (von {{limit}})","columnCreditLimit":"Credit-Limit","columnRole":"Rolle","roleOwner":"Eigentümer","roleAdmin":"Admin","roleEditor":"Editor","roleViewer":"Betrachter","pending":"Ausstehend","expired":"Abgelaufen","searchPlaceholder":"Nach Name oder E-Mail suchen...","searchPlaceholderMobile":"Suchen...","inviteMembers":"Mitglieder einladen","inviteByEmail":"Mitglieder einladen","bulkInvite":"Masseneinladung","setCreditLimit":"Credit-Limit festlegen","removeMember":"Mitglied entfernen","upgradeTooltip":"Upgrade auf den Enterprise-Plan, um diese Funktion freizuschalten","default":"(Standard)","emptyTitle":"Noch keine Mitglieder","emptyTitleNoResults":"Keine Mitglieder gefunden","emptySubtitlePersonal":"Persönliche Arbeitsbereiche enthalten nur Sie","emptySubtitleShared":"Laden Sie Ihr erstes Mitglied ein","emptySubtitleNoResults":"Keine Mitglieder entsprechen \\"{{searchTerm}}\\"","cantChangeOwnRole":"Sie können Ihre eigene Rolle nicht ändern. Bitten Sie einen Arbeitsbereich-Eigentümer, sie zu aktualisieren.","creditLimitTooltip":"Begrenzen Sie, wie viele Credits jedes Mitglied aus dem Workspace-Pool nutzen kann. Legen Sie Limits individuell fest oder verteilen Sie sie gleichmäßig auf alle Mitglieder.","tableTitleFiltered":"Mitglieder ({{filteredCount}} von {{totalCount}})","clearSearch":"Suche löschen"},"seatsAndMembers":{"pageTitle":"Plätze und Mitglieder","pageDescription":"Verwalten Sie Workspace-Plätze und Teammitglieder.","emptyTitle":"Erste Schritte mit Arbeitsbereich-Plätzen","emptyDescription":"Kaufen Sie Plätze, um Mitglieder einzuladen und mit der Zusammenarbeit zu beginnen.","buyFirstSeats":"Erste Plätze kaufen","planSeats":"{{planName}} Plätze","seatsUsage":"Platznutzung","addSeats":"Plätze hinzufügen","removeSeats":"Plätze entfernen","seatsAvailable_one":"{{count}} Platz verfügbar","seatsAvailable_other":"{{count}} Plätze verfügbar","buyMoreSeats":"Weitere Plätze kaufen","expandWorkspace":"Workspace-Größe erweitern","searchPlaceholder":"Nach E-Mail, Rolle, Status oder Platztyp suchen (z.B. Starter, Pro)...","searchTip":"Tipp: Suchen Sie nach Platztypen wie \\"Starter\\", \\"Builder\\", \\"Pro\\", \\"Elite\\" oder \\"kein Platz\\""},"inviteDialog":{"title":"Mitglieder einladen","emailAddress":"E-Mail-Adresse","role":"Rolle","cancel":"Abbrechen","invite":"Einladen","inviting":"Wird eingeladen...","roleViewer":"Betrachter","roleEditor":"Editor","roleAdmin":"Admin","roleMember":"Mitglied","errorNoEmail":"Bitte mindestens eine E-Mail-Adresse eingeben","errorInvalidEmail":"Eine oder mehrere E-Mail-Adressen sind ungültig.","errorFallback":"Benutzer konnten nicht eingeladen werden","toastSingle":"Einladung an {{email}} gesendet","toastMultiple":"{{count}} Einladungen erfolgreich gesendet"},"dataResidency":{"title":"Datenresidenz","tooltip":"Legt die Datenspeicherregion für Apps in diesem Arbeitsbereich fest.","edit":"Bearbeiten","upgradeRequired":"Elite-Plan oder höher erforderlich, um Datenresidenz zu konfigurieren.","appliesToNewApps":"Gilt für neu erstellte Apps. Bestehende Apps behalten ihre aktuelle Region.","editModal":{"title":"Arbeitsbereich-Datenresidenz","description":"Wählen Sie, wo Daten für Apps gespeichert werden sollen, die Sie in diesem Arbeitsbereich erstellen.","label":"Datenresidenz","appliesToNewApps":"Gilt für neu erstellte Apps. Bestehende Apps behalten ihre aktuelle Datenregion.","viewAllApps":"Datenresidenz für alle Arbeitsbereich-Apps anzeigen","cancel":"Abbrechen","save":"Speichern","saving":"Wird gespeichert...","updateSuccess":"Datenresidenz erfolgreich aktualisiert","updateError":"Fehler beim Aktualisieren der Datenresidenz: {{detail}}","unknownError":"Unbekannter Fehler"},"appsModal":{"title":"App-Datenresidenz","description":"Sehen Sie, wo Daten für jede App in diesem Arbeitsbereich gespeichert sind.","appName":"App-Name","dataRegion":"Datenregion","loading":"Lädt...","noApps":"Keine Apps in diesem Arbeitsbereich.","migrationInfo":"Müssen Sie eine App in eine andere Region verschieben? <a>Migration anfragen.</a>","supportTitle":"Anfrage zur Datenregionsmigration — {{name}}","supportContent":"Ich möchte App-Daten in eine andere Region migrieren.\\n\\nArbeitsbereich: {{name}} ({{id}})\\nAktuelle Standardregion: {{region}}\\nZielregion: \\nZu migrierende Apps: "}},"mcp":{"title":"MCP-Verbindungen","addMcp":"MCP hinzufügen","limitReached":"Du hast das Limit von {{max}} MCP-Servern erreicht. Entferne einen, um eine neue Verbindung hinzuzufügen.","description":"Verbinde benutzerdefinierte MCP-Server, um die Baufähigkeiten von Base44 mit externen Tools und Daten zu erweitern.","descriptionWithLink":"Verbinde benutzerdefinierte MCP-Server, um die Baufähigkeiten von Base44 mit externen Tools und Daten zu erweitern. <a>Mehr über MCP erfahren<icon/></a>","learnMore":"Mehr über MCP erfahren","emptyTitle":"Noch kein MCP-Server verbunden","addCustomMcp":"Benutzerdefinierten MCP hinzufügen","aria":{"enableConnection":"{{name}} aktivieren","disableConnection":"{{name}} deaktivieren","actionsFor":"Aktionen für {{name}}"},"actions":{"editDetails":"Details bearbeiten","removeMcp":"MCP entfernen"},"deleteConfirm":{"title":"MCP-Verbindung entfernen","description":"Bist du sicher, dass du \\"{{name}}\\" entfernen möchtest? Diese Aktion kann nicht rückgängig gemacht werden.","confirm":"Entfernen","cancel":"Abbrechen"},"tools":{"availableTools_one":"{{count}} verfügbares Tool","availableTools_other":"{{count}} verfügbare Tools","more":"+{{count}} weitere","showLess":"Weniger anzeigen","loadingTools":"Tools werden geladen..."},"addDialog":{"title":"Benutzerdefinierten MCP-Server hinzufügen","name":"Name","namePlaceholder":"z. B. Mein MCP-Server","url":"URL","urlExists":"MCP-Server existiert bereits.","authentication":"Authentifizierung","authNone":"Nicht erforderlich","authNoneDescription":"Ohne Anmeldedaten verbinden","authOAuth":"OAuth","authOAuthDescription":"Im nächsten Schritt autorisieren","customHeaders":"Benutzerdefinierte Header","optional":"optional","headersDescription":"Header hinzufügen, die mit jeder Anfrage gesendet werden (z. B. API-Schlüssel)","headerName":"Header-Name","headerValue":"Wert","addHeader":"Header hinzufügen","connectionFailed":"Verbindung fehlgeschlagen","serverReady":"MCP-Server ist bereit zur Verbindung.","serverReadyWithTools_one":"MCP-Server ist bereit zur Verbindung. 1 Tool gefunden.","serverReadyWithTools_other":"MCP-Server ist bereit zur Verbindung. {{count}} Tools gefunden.","toolsFound_one":"{{count}} Tool gefunden.","toolsFound_other":"{{count}} Tools gefunden.","oauthConfirmed":"Server bestätigt. Klicke auf \\"Autorisieren & Hinzufügen\\", um die OAuth-Authentifizierung abzuschließen.","test":"Testen","testAndAdd":"Testen & Hinzufügen","authorizeAndAdd":"Autorisieren & Hinzufügen","cancel":"Abbrechen","urlRequired":"Bitte gib eine Server-URL ein.","fieldsRequired":"Bitte fülle alle Pflichtfelder aus.","authRequired":"Für diesen Server ist eine Authentifizierung erforderlich. Wähle OAuth, um fortzufahren.","authNotRequired":"Dieser Server benötigt kein OAuth. Versuche, ohne OAuth hinzuzufügen.","testFailed":"Verbindungstest fehlgeschlagen."},"editDialog":{"title":"Verbundenen MCP bearbeiten","enabled":"Aktiviert","nameRequired":"Bitte gib einen Namen ein.","changeInfo":"Um die URL oder Authentifizierungsmethode zu ändern, erstelle eine neue MCP-Verbindung.","saveChanges":"Änderungen speichern","removeMcp":"MCP entfernen","cancel":"Abbrechen"},"toast":{"added":"MCP-Verbindung hinzugefügt","addedDescription":"Erfolgreich mit dem MCP-Server verbunden.","addedWithName":"Verbindung \\"{{name}}\\" erfolgreich hinzugefügt.","saved":"Änderungen gespeichert","savedDescription":"MCP-Verbindung erfolgreich aktualisiert."}},"skills":{"title":"Fähigkeiten","addSkill":"Fähigkeit hinzufügen","addSkillLower":"Fähigkeit hinzufügen","editSkill":"Fähigkeit bearbeiten","viewSkill":"Fähigkeit anzeigen","deleteSkill":"Fähigkeit löschen","limitReached":"Du hast das Limit von {{max}} Fähigkeiten erreicht. Entferne eine, um eine neue Fähigkeit hinzuzufügen.","description":"Erstelle wiederverwendbare Anweisungssätze, die der KI-Builder während Gesprächen aktivieren kann.","emptyDescription":"Fähigkeiten sind gespeicherte Richtlinien, die bestimmen, wie die KI deine Apps baut. Sie werden bei Bedarf aktiviert, um deinen Regeln und Best Practices automatisch zu folgen.","emptyDescriptionWithLink":"Fähigkeiten sind gespeicherte Richtlinien, die bestimmen, wie die KI deine Apps baut. Sie werden bei Bedarf aktiviert, um deinen Regeln und Best Practices automatisch zu folgen. <a>Mehr erfahren</a>","learnMore":"Mehr erfahren","getStartedWithTemplate":"Mit einer Vorlage starten","viewMore":"Mehr anzeigen","failedToLoadTemplates":"Fähigkeiten-Vorlagen konnten nicht geladen werden","templatesUnavailable":"Vordefinierte Vorlagen sind möglicherweise nicht verfügbar.","failedToLoadTemplate":"Vorlage konnte nicht geladen werden","form":{"skillName":"Name der Fähigkeit","namePlaceholder":"z. B. brand-guidelines","nameRequired":"Name ist erforderlich","nameMaxLength":"Der Name darf maximal {{max}} Zeichen lang sein","namePattern":"Nur Kleinbuchstaben, Zahlen und Bindestriche (z. B. code-review)","nameExists":"Eine Fähigkeit mit diesem Namen existiert bereits","description":"Beschreibung","descriptionHint":"Sag dem Agenten, wann er diese Fähigkeit nutzen soll. Er liest dies, um zu entscheiden, ob er sie aktiviert.","descriptionPlaceholder":"z.B. Setzt Markenfarben, Typografie und Designmuster auf allen Seiten und Komponenten durch. Verwenden bei der Erstellung neuer Seiten, Aktualisierung von Styles oder wenn der Benutzer die Marke oder das Designsystem erwähnt.","instructions":"Anweisungen","instructionsHint":"Die Schritt-für-Schritt-Regeln, die dein Agent befolgt, wenn diese Fähigkeit aktiviert wird. Schreib es, als würdest du ein neues Teammitglied trainieren.","instructionsPlaceholder":"## Markenfarben\\nPrimär: #1E40AF (Navigation, Buttons)\\nAkzent: #F59E0B (Highlights, CTAs)\\nHintergrund: #F8FAFC, Oberfläche: Weiß\\n\\n## Typografie\\nÜberschriften: fett, dunkles Schiefergrau\\nFließtext: text-sm text-slate-600\\nEinheitliche Abstände zwischen Abschnitten\\n\\n## Komponentenmuster\\n- Card mit dezentem Schatten für Datenbereiche\\n- Immer Lade- und Leerzustände einbauen\\n- Formulare: Sheet-Dialoge für Erstellen/Bearbeiten\\n- Tabellen: gestreifte Zeilen, sortierbare Spalten","reviewHint":"Von KI verfeinert. Passe es vor dem Speichern gerne an."},"dialog":{"reviewTitle":"Fähigkeit überprüfen","reviewSubtitle":"Überprüfe die Beschreibung und Anweisungen vor dem Speichern. Du kannst dies jederzeit bearbeiten.","pickerTitle":"Fähigkeit hinzufügen oder von Grund auf starten","startFromScratch":"Von Grund auf starten","cancel":"Abbrechen","backToOriginal":"Zurück zum Original","saveSkill":"Fähigkeit speichern","saveChanges":"Änderungen speichern","refineAndReview":"Verfeinern & Überprüfen","refineShort":"Verfeinern","close":"Schließen","add":"Hinzufügen","enabled":"Aktiviert"},"toast":{"created":"Fähigkeit erstellt","createdDescription":"\\"{{name}}\\" wurde hinzugefügt.","failedToCreate":"Fähigkeit konnte nicht erstellt werden","updated":"Fähigkeit aktualisiert","updatedDescription":"\\"{{name}}\\" wurde gespeichert.","failedToUpdate":"Fähigkeit konnte nicht aktualisiert werden","refinedTooLong":"Verfeinerte Fähigkeit ist zu lang","refinedTooLongDescription":"Wir haben versucht, sie zu kürzen, aber das Ergebnis überschreitet immer noch das Zeichenlimit. Kürze deinen Inhalt und verfeinere erneut.","failedToPolish":"Fähigkeit konnte nicht verfeinert werden","failedToLoad":"Fähigkeit konnte nicht geladen werden","failedToLoadList":"Fähigkeiten konnten nicht geladen werden","retryLater":"Bitte versuche es später erneut.","retryAgain":"Bitte versuche es erneut.","removed":"Fähigkeit entfernt","removedDescription":"Die Fähigkeit wurde entfernt."},"deleteConfirm":{"description":"Bist du sicher, dass du \\"{{name}}\\" löschen möchtest? Diese Aktion kann nicht rückgängig gemacht werden.","confirm":"Löschen","cancel":"Abbrechen"},"aria":{"enableSkill":"{{name}} aktivieren","disableSkill":"{{name}} deaktivieren","actionsFor":"Aktionen für {{name}}"}},"secrets":{"title":"Geheimnisse","description":"Verwalten Sie Anmeldeinformationen und Zugriffstoken für den programmatischen Zugriff auf Ihren Workspace.","apiKeys":{"title":"API-Schlüssel","description":"Erstellen und verwalten Sie API-Schlüssel für den programmatischen Zugriff auf Ihren Workspace. Verwenden Sie diese Schlüssel, um Audit-Logs zu streamen, Ihren Identity-Provider über SCIM zu verbinden oder Workspace-Daten über die Monitoring-API in ein externes System zu exportieren.","createButton":"API-Schlüssel erstellen","limitReached":"Sie haben das Maximum von {{max}} API-Schlüsseln erreicht. Löschen Sie einen vorhandenen Schlüssel, um einen neuen zu erstellen.","table":{"name":"Name","key":"Schlüssel","createdBy":"Erstellt von","created":"Erstellt","lastUsed":"Zuletzt verwendet","status":"Status","never":"Nie"},"status":{"active":"Aktiv","disabled":"Deaktiviert"},"emptyState":{"title":"Noch keine API-Schlüssel","description":"Workspace-API-Schlüssel ermöglichen programmatischen Zugriff auf Ihre Workspace-APIs (SIEM, SCIM, benutzerdefinierte Integrationen)."},"actions":{"edit":"Bearbeiten","disableKey":"Schlüssel deaktivieren","enableKey":"Schlüssel aktivieren","deleteKey":"Schlüssel löschen","actionsFor":"Aktionen für {{name}}"},"sheet":{"editButton":"Bearbeiten","disableButton":"Deaktivieren","enableButton":"Aktivieren"},"disableConfirm":{"title":"API-Schlüssel deaktivieren?","description":"Der API-Schlüssel <strong>\\"{{name}}\\"</strong> wird sofort deaktiviert. Integrationen, die diesen Schlüssel verwenden, funktionieren nicht mehr.","note":"Sie können ihn später wieder aktivieren.","confirm":"Schlüssel deaktivieren","cancel":"Abbrechen"},"enableConfirm":{"title":"API-Schlüssel aktivieren?","description":"Der API-Schlüssel <strong>\\"{{name}}\\"</strong> wird wieder aktiviert. Integrationen, die diesen Schlüssel verwenden, funktionieren wieder.","confirm":"Schlüssel aktivieren","cancel":"Abbrechen"},"deleteConfirm":{"title":"API-Schlüssel löschen?","description":"Der API-Schlüssel <strong>\\"{{name}}\\"</strong> wird dauerhaft gelöscht. Diese Aktion kann nicht rückgängig gemacht werden. Integrationen, die diesen Schlüssel verwenden, funktionieren sofort nicht mehr.","confirm":"Schlüssel löschen","cancel":"Abbrechen"},"toast":{"loadError":"API-Schlüssel konnten nicht geladen werden","loadErrorDescription":"Bitte versuchen Sie es erneut.","disabled":"API-Schlüssel deaktiviert","disabledDescription":"\\"{{name}}\\" wurde deaktiviert.","disableError":"API-Schlüssel konnte nicht deaktiviert werden","enabled":"API-Schlüssel aktiviert","enabledDescription":"\\"{{name}}\\" wurde wieder aktiviert.","enableError":"API-Schlüssel konnte nicht aktiviert werden","deleted":"API-Schlüssel gelöscht","deletedDescription":"\\"{{name}}\\" wurde dauerhaft gelöscht.","deleteError":"API-Schlüssel konnte nicht gelöscht werden","createError":"API-Schlüssel konnte nicht erstellt werden","updateError":"API-Schlüssel konnte nicht aktualisiert werden","copyError":"API-Schlüssel konnte nicht kopiert werden","updated":"API-Schlüssel aktualisiert","updatedDescription":"\\"{{name}}\\" wurde gespeichert."},"createDialog":{"title":"API-Schlüssel erstellen","titleReveal":"API-Schlüssel erstellt","namePlaceholder":"z.B. SIEM-Integration","descriptionPlaceholder":"Wofür wird dieser Schlüssel verwendet?","cancelButton":"Abbrechen","createButton":"Schlüssel erstellen","creatingButton":"Erstelle...","warningMessage":"Kopieren Sie diesen Schlüssel jetzt – Sie werden ihn nicht mehr sehen können. Behandeln Sie ihn wie ein Passwort: Er gewährt Zugriff auf Ihre Workspace-Daten über die API.","yourApiKey":"Ihr API-Schlüssel","doneButton":"Fertig","copyAria":"API-Schlüssel kopieren"},"editDialog":{"title":"API-Schlüssel bearbeiten","cancelButton":"Abbrechen","saveButton":"Speichern","savingButton":"Speichere..."},"formFields":{"name":"Name","description":"Beschreibung","descriptionOptional":"(optional)"}}},"authSecurity":{"title":"Authentifizierung und Sicherheit","description":"Konfiguriere die Authentifizierungs- und Sicherheitseinstellungen für deinen Arbeitsbereich.","sso":{"title":"Single Sign-On-Konfiguration","configureTooltip":"SSO für deinen Arbeitsbereich konfigurieren","description":"Aktiviere SSO, um die Authentifizierung für deine Arbeitsbereichsmitglieder zu vereinfachen.","settingUp":"Einrichten...","setUp":"Einrichten","setUpConfiguration":"SSO einrichten","enforcedTooltip":"Dieses SSO wird für alle Apps im Arbeitsbereich erzwungen, d.h. sie verwenden es automatisch zur Authentifizierung. Um die Durchsetzungseinstellungen zu aktualisieren, gehe zu App-Konfiguration.","enforcedBadge":"Für Apps erzwungen","setUpAction":"Einrichten","configure":"Konfigurieren","selectProvider":"SSO-Anbieter auswählen","cancelSetup":"Einrichtung abbrechen","dismiss":"Schließen","saving":"Speichern...","enableSSO":"SSO aktivieren","saveSSOSettings":"SSO-Einstellungen speichern","notAvailableTitle":"Nicht verfügbar","notAvailableDesc":"Single Sign-On (SSO) ist für persönliche Arbeitsbereiche nicht verfügbar.","limitedAccessTitle":"Eingeschränkter Zugriff","limitedAccessDesc":"Nur Arbeitsbereichsadministratoren können SSO-Einstellungen konfigurieren.","toast":{"error":"Fehler","failedToLoadSettings":"SSO-Einstellungen konnten nicht geladen werden","failedToLoadAppSettings":"App-Einstellungen konnten nicht geladen werden","ssoEnabled":"SSO aktiviert","ssoEnabledDesc":"Single Sign-On wurde für deinen Arbeitsbereich aktiviert","ssoDisabled":"SSO deaktiviert","ssoDisabledDesc":"Single Sign-On wurde deaktiviert","failedToUpdateStatus":"SSO-Status konnte nicht aktualisiert werden","success":"Erfolg","settingsUpdated":"SSO-Einstellungen erfolgreich aktualisiert","failedToUpdate":"SSO-Einstellungen konnten nicht aktualisiert werden"},"fields":{"client_id":"Client-ID","client_secret":"Client-Secret","scope":"Scope","discovery_url":"Discovery-URL","tenant_id":"Mandanten-ID","okta_domain":"Okta-Domain","auth_endpoint":"Auth-Endpunkt","token_endpoint":"Token-Endpunkt","userinfo_endpoint":"Benutzerinfo-Endpunkt","jwks_uri":"JWKS-URI","name":"Anbietername"},"autoGenerated":"(Automatisch generiert)","placeholders":{"client_id":"Client-ID eingeben","client_secret":"Client-Secret eingeben","scope":"Scope eingeben","discovery_url":"Discovery-URL eingeben","tenant_id":"Deine Azure AD Mandanten-ID","okta_domain":"dein-unternehmen","auth_endpoint":"Auth-Endpunkt eingeben","token_endpoint":"Token-Endpunkt eingeben","userinfo_endpoint":"Benutzerinfo-Endpunkt eingeben","jwks_uri":"JWKS-URI eingeben","name":"Anbietername eingeben"},"tooltips":{"clientId":"Die OAuth-Client-ID, die von deinem Identitätsanbieter bereitgestellt wird","clientSecret":"Das OAuth-Client-Secret, das von deinem Identitätsanbieter bereitgestellt wird (vertraulich halten)","scopeGeneral":"Anzufordernde OAuth-Bereiche (openid, email, profile werden häufig verwendet)","scopeGithub":"Anzufordernde OAuth-Bereiche (user:email für GitHub)","discoveryUrlGoogle":"OIDC-Discovery-Endpunkt (für Google vorkonfiguriert)","discoveryUrlMicrosoft":"OIDC-Discovery-Endpunkt wird automatisch aus deiner Mandanten-ID generiert","discoveryUrlOkta":"OIDC-Discovery-Endpunkt wird automatisch aus deiner Okta-Domain generiert","discoveryUrlAdvanced":"OIDC-Discovery-Endpunkt-URL (falls von deinem Anbieter unterstützt)","tenantId":"Azure AD-Mandanten-ID. Im Azure-Portal → Azure Active Directory → Übersicht","oktaDomain":"Dein Okta-Domainname (z. B. 'ihr-unternehmen' aus ihr-unternehmen.okta.com)","authEndpointGithub":"GitHub OAuth-Autorisierungs-Endpunkt (vorkonfiguriert)","authEndpointGeneral":"OAuth-Autorisierungs-Endpunkt-URL","tokenEndpointGithub":"GitHub OAuth-Token-Endpunkt (vorkonfiguriert)","tokenEndpointGeneral":"OAuth-Token-Endpunkt-URL","userinfoEndpointGithub":"GitHub API-Benutzer-Endpunkt (vorkonfiguriert)","userinfoEndpointGeneral":"OAuth-Benutzerinfo-Endpunkt-URL","jwksUri":"JSON Web Key Set-URI zur Token-Verifizierung","providerName":"Benutzerdefinierter Name für deinen SSO-Anbieter"},"providerFallback":"{{name}} SSO","providers":{"advanced":"Erweiterte / Manuelle Konfiguration"}},"domainVerification":{"title":"Domain-Verifizierung","label":"Arbeitsbereich-Domain","placeholder":"Domain hinzufügen","hint":"Die mit deinem Arbeitsbereich verknüpfte Domain","check":"Prüfen","verified":"Verifiziert","checking":"Wird geprüft","copyFailed":"Kopieren in die Zwischenablage fehlgeschlagen","dnsTimedOut":"DNS-Verifizierung hat das Zeitlimit überschritten. Bitte überprüfe deine DNS-Einstellungen und versuche es erneut.","domainVerifiedSuccess":"Domain erfolgreich verifiziert!","enterDomainFirst":"Bitte gib zuerst eine Domain ein","domainSaved":"Domain gespeichert. Füge den DNS-Eintrag hinzu, um den Besitz zu bestätigen.","configFailed":"Domain-Verifizierung konnte nicht konfiguriert werden","verificationReset":"Domain-Verifizierung wurde zurückgesetzt","resetFailed":"Domain-Verifizierung konnte nicht zurückgesetzt werden","addDnsRecords":"DNS-Einträge für {{domain}} hinzufügen","dnsInstructions":"Melde dich bei deinem Domain-Anbieter an, gehe zu den DNS-Einstellungen und füge diesen TXT-Eintrag hinzu.","type":"Typ","hostName":"Host / Name","value":"Wert","dnsCheckNote":"Die DNS-Verifizierung kann einige Minuten dauern. Sobald alles aktualisiert ist, verifizieren wir deine Domain automatisch.","checkingDns":"DNS-Einträge werden überprüft...","resetting":"Wird zurückgesetzt...","reset":"Zurücksetzen","copyLabel":"{{label}} kopieren"}}}`),gR={earnBonusCredits:"Bonus-Credits verdienen"},hR={apps:"Apps",superagents:"Superagenten",newAgent:"Neuer Agent",emptyAgents:"Erstellen Sie Ihren ersten Agent und sehen Sie hier Ihre Unterhaltungen.",allAgents:"Alle Agenten",settings:"Einstellungen",inviteMembers:"Mitglieder einladen",allWorkspaces:"Alle Arbeitsbereiche",org:"Organisation",createNewWorkspace:"Neuen Arbeitsbereich erstellen",recents:"Zuletzt verwendet",favorites:"Favoriten",noFavoritesYet:"Noch keine Favoriten",addAppsForQuickAccess:"Fügen Sie Ihre Apps für schnellen Zugriff hinzu",view_all:"Alle anzeigen"},fR={pageTitle:"Base44 Geschenkkarte kaufen",pageSubtitle:"Verschenke die Freude am Bauen. Sende eine Geschenkkarte an einen Freund.",tabBuy:"Geschenkkarte kaufen",tabPurchased:"Gekauft",successTitle:"Geschenkkarte erfolgreich gekauft!",successDescription:"Der Empfänger erhält eine E-Mail mit dem Geschenkkarten-Code.",successDescriptionPdf:"Überprüfe deine E-Mail für eine druckbare Geschenkkarte, die du persönlich verschenken kannst.",dismissSuccess:"Erfolgsmeldung schließen",amount:"Betrag",customAmount:"$ Benutzerdefiniert",customAmountPlaceholder:"{{symbol}} Eigener Betrag",customAmountError:"Der Betrag muss zwischen {{min}} und {{max}} liegen",creditsInfo:"Diese Geschenkkarte enthält <strong>{{credits}} Nachrichtenguthaben</strong> für die App-Entwicklung",deliveryMethodTitle:"Versandmethode wählen",deliveryEmail:"E-Mail an Empfänger senden (sofort nach Kauf)",deliveryPdf:"E-Mail an mich senden (PDF zum Drucken)",recipientTitle:"An",recipientName:"Name",recipientNamePlaceholder:"Name des Empfängers",recipientEmail:"E-Mail",recipientEmailPlaceholder:"E-Mail des Empfängers",messageLabel:"Geschenkkarten-Nachricht (optional)",messagePlaceholder:"Persönliche Nachricht hinzufügen...",suggestMessage:"Nachricht vorschlagen",suggestFallbackName:"Freund",messageCharCount:"{{count}}/300 Zeichen",senderTitle:"Von",senderName:"Dein Name",senderNamePlaceholder:"Dein Name",submitButton:"Weiter zum Kauf",submitting:"Wird verarbeitet...",errorGeneric:"Etwas ist schiefgelaufen",historyEmpty:"Noch keine Geschenkkarten. Kaufe eine für einen Freund!",historyTo:"An {{name}}",historyCodeLabel:"Geschenkkarten-Code",historyCopy:"Kopieren",historyCopied:"Kopiert",historyRedeemed:"Diese Geschenkkarte wurde eingelöst",historyRedeemedOn:"Diese Geschenkkarte wurde am {{date}} eingelöst",historySentTo:"Gesendet an {{email}}",statusSent:"Gesendet",statusRedeemed:"Eingelöst",statusExpired:"Abgelaufen",statusProcessing:"In Bearbeitung",statusPending:"Ausstehend",statusRevoked:"Widerrufen",designTitle:"Design auswählen",historyActions:"Aktionen",designClassic:"Klassisch",designSunrise:"Sonnenaufgang",designOcean:"Ozean",cardLabel:"Geschenkkarte",cardCreditsLabel:"Nachrichtenguthaben",cardFor:"Für {{name}}",cardDefaultName:"Deinen Freund",historyError:"Geschenkkarten konnten nicht geladen werden. Bitte erneut versuchen.",historyDateIssued:"Ausstellungsdatum",historyRecipient:"Empfänger",historyAmount:"Betrag",historyStatus:"Status",historyCode:"Code",historySenderDetails:"Absenderdetails",historySentToYou:"An Sie gesendet",historyViewCode:"Code anzeigen",historyHideCode:"Code verbergen",historyDownloadPdf:"PDF herunterladen",historyResend:"Erneut senden",historyResendSuccess:"Geschenkkarten-E-Mail erfolgreich erneut gesendet!",historyResendError:"Erneutes Senden fehlgeschlagen. Bitte versuchen Sie es erneut.",historyDownloadError:"Download fehlgeschlagen. Bitte versuchen Sie es erneut.",historyCredits:"Credits",emailInvalid:"Bitte geben Sie eine gültige E-Mail-Adresse ein",buyGiftCard:"Geschenkkarte kaufen",giftAndReferrals:"Geschenke & Empfehlungen",redeemTitle:"Du hast eine Geschenkkarte erhalten!",redeemDescription:"Nach dem Einlösen werden die Credits deinem Workspace gutgeschrieben.",redeemSelectWorkspace:"Workspace auswählen",redeemBackToWorkspace:"Zurück zum Workspace",redeemCheckCreditUsage:"Kreditverbrauch prüfen",redeemErrorDescription:"Dieser Code wurde bereits verwendet und kann nicht erneut eingelöst werden. Falls du nicht sicher bist, was passiert ist, kannst du deine Credits prüfen oder den Support kontaktieren.",redeemDefaultWorkspace:"diesem",error:"Fehler",redeemSuccess:"Geschenkkarte eingelöst!",redeemSuccessDescription:"{{credits}} Credits wurden zu {{workspace}} hinzugefügt.",redeemButton:"Geschenkkarte einlösen",redeemNotNow:"Nicht jetzt",redeemDocsLink:"Erfahre in <docsLink>unserer Dokumentation</docsLink>, wie Geschenkkarten-Guthaben funktioniert",redeemCouponDescription:"Löse sie ein, um {{amount}} Rabatt auf dein Abonnement zu erhalten.",redeemCouponAppliedTitle:"Geschenkkarte angewendet!",redeemCouponReadyTitle:"Geschenkkarte einsatzbereit!",redeemCouponNoWorkspace:"Kein Workspace ausgewählt",coupon:{title:"Gutschein oder Geschenkkarte einlösen",description:"Gib deinen Code ein, um Credits zu deinem Guthaben hinzuzufügen.",placeholder:"Code eingeben",apply:"Einlösen",success:"Gutschein erfolgreich eingelöst!",invalidCode:"Der Code ist ungültig. Bitte versuche es erneut.",notFound:"Gutscheincode nicht gefunden. Bitte überprüfe den Code und versuche es erneut.",giftCardNotFound:"Geschenkkarte nicht gefunden. Überprüfe den Code und versuche es erneut.",redeemFailed:"Geschenkkarte konnte nicht eingelöst werden. Bitte versuche es erneut."},errors:{invalidRecipientEmail:"Bitte gib eine gültige E-Mail-Adresse ein",recipientEmailRequired:"E-Mail-Adresse des Empfängers ist erforderlich",checkoutFailed:"Kauf konnte nicht eingeleitet werden. Bitte versuche es erneut.",confirmPurchaseFailed:"Kauf konnte nicht bestätigt werden. Bitte versuche es erneut.",alreadyRedeemed:"Diese Geschenkkarte wurde bereits eingelöst",notAvailable:"Diese Geschenkkarte kann nicht eingelöst werden",expired:"Diese Geschenkkarte ist abgelaufen",notWorkspaceMember:"Du bist kein Mitglied des ausgewählten Workspaces",networkError:"Netzwerkfehler. Bitte überprüfe deine Internetverbindung und versuche es erneut.",rateLimitExceeded:"Zu viele Versuche. Bitte versuche es später erneut.",permissionDenied:"Nur Workspace-Eigentümer können Geschenkkarten einlösen. Bitte einen Workspace-Eigentümer, diesen Code einzulösen.",invalidPlanPrice:"Dieser Plan ist für den Geschenkkarten-Checkout nicht verfügbar. Bitte wähle einen anderen Plan."},creditBanner:"Du hast {{amount}} Geschenkkarten-Guthaben auf deinem Konto. Es wird automatisch auf deine nächste Rechnung angewendet.",upgradeGiftCardWarning:"Dein aktueller Plan wurde mit einer Geschenkkarte erworben. Das Geschenkkarten-Guthaben wird bei Upgrades nicht übertragen — dir wird der anteilige Preis berechnet."},vR={back:"Zurück"},bR="Laden...",yR={message:"Angemeldet als <strong>{{email}}</strong> — stimmt nicht mit dem erwarteten Konto überein.",switchAccount:"Konto wechseln",dismiss:"Banner schließen"},kR={topBar:sR,createWorkspacePage:lR,workspaceMenu:cR,agentEditorMenu:dR,credits:uR,community:pR,workspaceSettings:mR,referralCta:gR,sidebar:hR,giftCards:fR,common:vR,loading:bR,userMismatch:yR},wR={notifications:"Benachrichtigungen",latestNews:"Neueste Nachrichten"},AR={loading:"Laden...",loadingMore:"Mehr laden...",errorLoading:"Benachrichtigungen konnten nicht geladen werden",noNotifications:"Noch keine Benachrichtigungen",noMoreNotifications:"Keine weiteren Benachrichtigungen",noNews:"Noch keine Neuigkeiten"},SR={markAllAsRead:"Alle als gelesen markieren",readMore:"Mehr lesen",showLess:"Weniger anzeigen",upgrade:"Upgrade",percentOff:"{{percent}}% Rabatt"},CR={tabs:wR,states:AR,actions:SR},DR="Plan und Abrechnung",TR="Abonnement verwalten",ER={planAndBilling:"Plan & Abrechnung"},PR={details:"Abonnement-Details",cancelPlan:"Plan kündigen",cancelling:"Wird gekündigt...",explorePlans:"Pläne erkunden",reactivatePlan:"Plan reaktivieren",reactivating:"Wird reaktiviert...",upgradePlan:"Plan upgraden",updatePayment:"Zahlung aktualisieren",managePlan:"Plan verwalten",yourPlan:"Ihr Plan",creditsPerMonth:"Credits pro Monat",price:"Preis",nextBillingDate:"Nächstes Abrechnungsdatum",highlights:"Plan-Highlights",cancelChange:"Änderung abbrechen",cancelTooltip:"Um Ihr Abonnement zu kündigen, brechen Sie zuerst das geplante Downgrade ab",currentlyUsing:"Sie nutzen derzeit den <bold>{{plan}}</bold>-Plan",subscriptionEndsOn:"Ihr Abonnement endet am {{date}}",subscriptionRenewsOn:"Ihr Abonnement wird am {{date}} verlängert",noActiveSubscription:"Kein aktives Abonnement",keepSubscription:"Möchten Sie Ihr Abonnement behalten? Klicken Sie auf <manageLink>Plan verwalten</manageLink> und brechen Sie die Änderung ab.",planChangeNotice:"Ihr Plan wird am Ende des aktuellen Abrechnungszeitraums auf {{plan}} geändert.",cancelOnDate:"Ihr Plan wird am {{date}} gekündigt. Reaktivieren Sie ihn, um Ihre aktuellen Credits und Funktionen zu behalten.",cancelNoDate:"Ihr Abonnement ist zur Kündigung vorgemerkt. Reaktivieren Sie es, um Ihre aktuellen Credits und Funktionen zu behalten.",free:"Kostenlos",monthly:"monatlich",yearly:"jährlich",subscriptionCancelled:"Abonnement gekündigt",staysActiveUntil:"Alles bleibt aktiv bis {{date}}",creditsFormat:"{{messageCredits}} Nachricht | {{integrationCredits}} Integration",priceFormat:"{{amount}} {{symbol}}/{{period}}"},_R={privateApps:"Private Apps",inAppCodeEditing:"Code-Bearbeitung in der App",unlimitedApps:"Unbegrenzte Apps",removeBase44Badge:"Base44-Badge entfernen",connectDomain:"Domain verbinden",backendFunctions:"Backend-Funktionen",github2WaySync:"Github Zwei-Wege-Synchronisation",customOAuth:"Benutzerdefiniertes OAuth aus der Google Console",aiModelSelection:"KI-Modellauswahl",stripeIntegration:"Stripe-Integration",customEmailDomain:"Benutzerdefinierte E-Mail-Domain",appStoreFileDownloads:"App-Store-Dateidownloads"},xR={title:"Zahlung überfällig",description:"Ihre Abonnementzahlung ist überfällig. Bitte aktualisieren Sie Ihre Zahlungsmethode, um vollen Zugang zu Ihren Plan-Funktionen wiederherzustellen.",tryAgain:"Erneut versuchen",trying:"Wird verarbeitet..."},IR={title:"Zahlungsmethode",manage:"Verwalten",noPaymentMethod:"Keine Zahlungsmethode hinterlegt",default:"Standard",expires:"Läuft ab {{month}}/{{year}}"},RR={title:"Rechnungsinformationen",manage:"Verwalten",name:"Name",email:"E-Mail",billingAddress:"Rechnungsadresse",noInformation:"Keine Rechnungsinformationen verfügbar"},zR={title:"Abrechnungshistorie",noHistory:"Keine Abrechnungshistorie verfügbar",loading:"Abrechnungshistorie wird geladen...",loadError:"Fehler beim Laden der Abrechnungsdaten",planDescription:"{{plan}}-Plan",downloadInvoice:"Rechnung herunterladen"},MR={managingBillingFor:"Abrechnung für <bold>{{name}}</bold> verwalten",subscriptionRenewsOn:"Das Workspace-Abonnement wird am {{date}} verlängert",noActiveSubscription:"Kein aktives Workspace-Abonnement",manage:"Verwalten",defaultName:"Arbeitsbereich",addSeats:"Lizenzen hinzufügen",loadError:"Fehler beim Laden der Workspace-Abrechnungshistorie",workspaceSeats:"Workspace-Lizenzen",contactAdmin:{title:"Workspace-Plan",subtitle:"Verwaltet von Ihrem Workspace",body:"Mehr Credits benötigt? Wenden Sie sich an Ihren Workspace-Administrator, um den Plan Ihres Teams zu upgraden."}},NR={portalError:"Abrechnungsportal konnte nicht geöffnet werden. Bitte versuchen Sie es später erneut oder kontaktieren Sie den Support.",paymentPortalError:"Zahlungsverwaltung konnte nicht geöffnet werden. Bitte versuchen Sie es erneut.",scheduleCancelSuccess:"Abonnement-Zeitplan erfolgreich abgebrochen",scheduleCancelError:"Fehler beim Abbrechen des Abonnement-Zeitplans. Bitte versuchen Sie es später erneut.",subscriptionCancelError:"Fehler beim Kündigen des Abonnements. Bitte versuchen Sie es erneut."},FR={title:DR,manageSubscription:TR,breadcrumb:ER,subscription:PR,features:_R,pastDue:xR,paymentMethod:IR,billingInformation:RR,billingHistory:zR,workspace:MR,toasts:NR},LR={title:"Sprechen Sie mit uns",subtitle:"Kontaktieren Sie unser Team, um zu erfahren, wie Base44 Ihrer Organisation helfen kann.",form:{firstName:"Vorname*",lastName:"Nachname*",workEmail:"Geschäftliche E-Mail*",companyWebsite:"Unternehmenswebsite*",role:"Position*",discussion:"Was möchten Sie besprechen?",submit:"Absenden"},success:{title:"Vielen Dank für Ihre Nachricht!",description:"Wir haben Ihre Nachricht erhalten und unser Team wird sich innerhalb von 24 Stunden bei Ihnen melden. Wir freuen uns darauf, Sie auf Ihrer Reise mit Base44 zu begleiten!"}},jR={iso27001:{title:"ISO 27001",subtitle:"ISO Sicherheitsmanagement"},soc2:{title:"SOC 2 Typ II",subtitle:"SOC für Dienstleistungsorganisationen"},gdpr:{title:"DSGVO",subtitle:"Datenschutz-Grundverordnung"}},OR={fiveApps:"5 Apps",unlimitedCollaborators:"Unbegrenzte Mitarbeiter",userAnalytics:"Benutzeranalyse",aiAgents:"KI-Agenten",limitedDb:"Begrenzte 512-MB-Datenbank",unlimitedApps:"Unbegrenzte Apps",unlimitedNumberOfApps:"Unbegrenzte Anzahl von Apps",connectDomain:"Domain verbinden",connectorsIntegrations:"Konnektoren & Integrationen",backendFunctions:"Backend-Funktionen",scaledUserAnalytics:"Skalierte Benutzeranalyse",privateApps:"Private Apps",flexibleAiModelControl:"Flexible KI-Modell-Steuerung",removeBase44Branding:"Base44-Branding entfernen",inAppCodeEditing:"Code-Bearbeitung in der App",inAppCodeEdits:"Code-Bearbeitung in der App",freeDomainOneYear:"Kostenlose Domain für 1 Jahr",creditsToShare:"25 Credits zum Teilen mit einem Freund",githubTwoWayIntegration:"GitHub Zwei-Wege-Integration",githubIntegration:"GitHub-Integration",earlyAccessBeta:"Frühzeitiger Zugang zu Beta-Funktionen",premiumSupport:"Premium-Support",sso:"SSO",prioritySupport:"Bevorzugter Support",workspacePublishingControls:"Workspace-Veröffentlichungssteuerung",workspaceTemplates:"Workspace-Vorlagen",ipWhitelisting:"IP-Whitelist",workspaceUsageAnalytics:"Workspace-Nutzungsanalyse",userRolesPermissions:"Benutzerrollen und Berechtigungen",dataTrainingOptOut:"Opt-out für KI-Training",scim:"SCIM",creditConsumptionControl:"Kreditverbrauchskontrolle",dedicatedAccountManager:"Dedizierter Account-Manager",dedicatedSolutionEngineer:"Dedizierter Solution-Engineer",enterpriseSupport:"Enterprise-Support",customSecurityCapabilities:"Benutzerdefinierte Sicherheitsfunktionen",customDatabaseStorage:"Benutzerdefinierter Datenbankspeicher",customRateLimits:"Benutzerdefinierte Ratenlimits",tailoredOnboarding:"Maßgeschneidertes Onboarding & Befähigung",workspaceMonitoringApi:"Workspace-Überwachungs-API"},BR={unlimitedApps:"Unbegrenzte Apps",unlimitedCollaboratorsSharedCredits:"Unbegrenzte Mitarbeiter mit geteilten Credits",customDomain:"Eigene Domain",removeBase44Branding:"Base44-Branding entfernen",builtInIntegrations:"Vorkonfigurierte Integrationen",automations:"Automatisierungen",chooseAiModel:"KI-Modell wählen",inAppCodeEditing:"Code-Bearbeitung in der App",twoWayGithubSync:"2-Wege GitHub-Sync",privateTemplates:"Private Vorlagen",earlyAccessNewFeatures:"Frühzugang zu neuen Funktionen",prioritySupport:"Prioritäts-Support"},UR={choosePlan:"Wählen Sie den richtigen Plan für sich",usage:"Nutzung",back:"Zurück",chooseBillingCycleUpgrade:"Wählen Sie Ihren Abrechnungszeitraum für das Upgrade auf {{planName}}",selectBillingCycle:"Wählen Sie einen Abrechnungszeitraum für Ihren {{planName}}-Plan",viewBilling:"Abrechnung anzeigen",seePricing:"Preise ansehen"},qR={desktop:"Base44 ist Teil von <wixLogo/> - Vertraut von über 250 Millionen Menschen weltweit",mobile:{line1:"Base44 ist Teil von <wixLogo/>",line2:"Vertraut von über 250 Millionen Menschen weltweit"}},VR={badge:{recommended:"Empfohlen",popular:"Beliebt",mostPopular:"Am beliebtesten",currentPlan:"Aktueller Plan",discountOff:"{{discount}} Rabatt"},button:{processing:"Wird verarbeitet...",notAvailable:"Nicht verfügbar",manageSubscription:"Abonnement verwalten",managePlan:"Plan verwalten",currentPlan:"Aktueller Plan",upgradePlan:"Plan upgraden",upgradeTo:"Auf {{planName}} upgraden",downgradeTo:"Auf {{planName}} downgraden",downgradePlan:"Plan downgraden",switchPlan:"Plan wechseln",subscribeTo:"{{planName}} abonnieren",bookDemo:"Demo buchen",getPlan:"{{planName}} wählen"},credits:{monthly:"Monatliche Credits",integration:"Integrations-Credits",monthlyLower:"monatliche Credits",integrationLower:"Integrations-Credits",messageCredits:"Nachrichten-Credits",perMonth:"/Monat",sharedAcrossUsers:"Geteilt zwischen unbegrenzt vielen Nutzern",messageShort:"Nachrichten",integrationShort:"Integration"},features:{highlights:"Plan-Highlights:",allInBusinessPlus:"Alles in Business plus:",allInBuilderPlus:"Alles in Builder plus:",unlimitedAgents:"Unbegrenzte Anzahl an Agenten"},free:{dailyCredits:"{{dailyCredits}} tägliche Credits (bis zu {{monthlyMax}}/Monat)",integrationCredits:"{{amount}} Integrations-Credits"},enterprise:{description:"Enterprise-gerechte Governance, Skalierbarkeit und Support mit einem <bold>individuellen Preismodell</bold> und einer individuellen Credit-Menge."}},$R={offTiers:"Tarife mit 30% Rabatt",currentPlan:"Aktueller Plan",popular:"Beliebt",messageCredits:"Nachrichten-Credits",integrationCredits:"Integrations-Credits",perMonth:"/Monat",placeholder:"Credits auswählen",footer:{cantFind:"Keinen passenden Plan gefunden?",contactUs:"Kontakt aufnehmen"}},WR={button:{cancel:"Abbrechen",confirmUpgrade:"Upgrade bestätigen",confirmDowngrade:"Downgrade bestätigen",confirmSwitch:"Wechsel bestätigen",processing:"Wird verarbeitet...",continue:"Weiter"},upgrade:{title:"Abonnement-Upgrade bestätigen",upgradeDescription:"Sie sind dabei, auf den {{planName}}-Plan für <price/> zu upgraden. Ihr Abonnement wird sofort aktualisiert und Sie werden anteilig für den Rest Ihres Abrechnungszeitraums belastet.",upgradeDescriptionYearly:"Sie sind dabei, auf den {{planName}}-Jahresplan für <price/> zu upgraden. Ihr Abonnement wird sofort aktualisiert und Sie werden anteilig für den Rest Ihres Abrechnungszeitraums belastet.",upgradeDescriptionShort:"Sie sind dabei, auf den {{planName}}-Plan für <price/> zu upgraden. Ihr Abonnement wird sofort aktualisiert und Sie werden anteilig belastet."},downgrade:{title:"Abonnement-Downgrade bestätigen",description:"Sie sind dabei, auf den {{planName}}-Plan für {{price}}/Monat zu wechseln. Diese Änderung tritt am Ende Ihres aktuellen Abrechnungszeitraums in Kraft."},switch:{title:"Plan wechseln",switchDescription:"Beim Wechsel zum {{planName}}-Plan werden Ihre verfügbaren Funktionen aktualisiert und Ihre monatlichen Limits auf <bold>{{messageCredits}} Nachrichten-Credits und {{integrationCredits}} Integrations-Credits</bold> festgelegt.",nextBillingDate:"Diese Änderungen treten am {{date}} zu Beginn Ihres nächsten Abrechnungszeitraums in Kraft.",nextBillingCycle:"Diese Änderungen treten zu Beginn Ihres nächsten Abrechnungszeitraums in Kraft."},manageSubscription:{title:"Ihr Abonnement verwalten",description:"Wählen Sie, wie Sie Ihr {{planName}}-Abonnement verwalten möchten.",upgradeToYearly:"Auf jährliche Abrechnung upgraden",upgradeToYearlySavings:"Sparen Sie und erhalten Sie eine kostenlose Domain + 25 Credits zum Teilen",upgradeToYearlySavingsStarter:"Sparen Sie und erhalten Sie 25 Credits zum Teilen",managePayments:"Zahlungen verwalten",managePaymentsDescription:"Zahlungsmethode aktualisieren, Rechnungen anzeigen und mehr",managePaymentsDescriptionAlt:"Zahlungsmethode aktualisieren, Rechnungen anzeigen und mehr"},upgradeToYearly:{titleV1:"Abonnement-Upgrade bestätigen",titleV2:"Plan upgraden",descriptionV2:"Nach dem Upgrade wird ein anteiliger Betrag für die verbleibende Zeit Ihres aktuellen Plans berechnet. Ab Ihrem nächsten Abrechnungsdatum wird der volle Planpreis von {{price}} × 12 Monate berechnet.",benefitsTitle:"🎠Jahres-Vorteile",freeDomain:"Kostenlose Domain für ein Jahr",shareCredits:"25 Credits zum Teilen mit Freunden",betterValue:"Besserer Wert mit jährlicher Abrechnung"}},GR={title:"Häufig gestellte Fragen",whatIsBase44:{question:"Was ist Base44?",answer:{description:"Base44 ist eine KI-gestützte Plattform, die es Ihnen ermöglicht, benutzerdefinierte Softwareanwendungen ohne Programmierkenntnisse zu erstellen. Sie verwendet natürliche Sprachverarbeitung, um Ihre Anforderungen zu verstehen und funktionsfähige Software basierend auf Ihren Beschreibungen zu generieren.",accessibility:"Unsere Plattform ist benutzerfreundlich und für nicht-technische Benutzer zugänglich gestaltet, sodass Sie durch einfache Gespräche mit unserer KI leistungsstarke Anwendungen erstellen können."}},freePlan:{question:"Was ist im kostenlosen Plan enthalten?",answer:{allowances:"Der kostenlose Plan bietet Ihnen täglich 5 Nachrichten und monatlich insgesamt 25 Nachrichten. Außerdem erhalten Sie 100 Integrationsguthaben, um verschiedene Integrationen wie Authentifizierung, Datenbank und Analysen auszuprobieren.",coreAccess:"Mit dem kostenlosen Plan haben Sie Zugang zu allen wichtigen Integrationstypen, sodass Sie vollständig funktionsfähige Anwendungen mit Benutzerauthentifizierung, Datenspeicherung und mehr erstellen können – alles kostenlos."}},integrationCredits:{question:"Was sind Integrationsguthaben?",answer:{definition:"Integrationsguthaben werden verwendet, um auf die verschiedenen Integrationen von Base44 in Ihrer Anwendung zuzugreifen.",capabilities:"Diese Integrationen verbessern die Funktionalität Ihrer App, einschließlich LLMs, Datei-Upload, Bildverständnis, Bildgenerierung, E-Mail-Versand, SMS-Versand, Datenbankabfragen und vieles mehr. Die Anzahl der Integrationsguthaben in Ihrem Plan bestimmt, wie viele dieser Anfragen Sie pro Monat stellen können.",expiration:"Nicht verwendete Guthaben verfallen am Ende Ihres monatlichen Abrechnungszyklus (an Ihrem Reset-Datum).",learnMore:"Erfahren Sie mehr über die Verwendung von Guthaben in der Wissensdatenbank."}},appTypes:{question:"Welche Arten von Anwendungen kann ich mit Base44 erstellen?",answer:{examples:"Base44 ist vielseitig einsetzbar und kann zum Erstellen einer Vielzahl von Anwendungen verwendet werden, einschließlich, aber nicht beschränkt auf: vollständig funktionsfähige SaaS-Produkte, Backoffice-Tools, persönliche Produktivitäts-Apps, Kundenportale und Tools zur Automatisierung von Geschäftsprozessen.",prototyping:"Sie können es auch für schnelles Prototyping und die Erstellung von MVPs nutzen, um Ihre Ideen schnell zu validieren, ohne in teure Entwicklungsressourcen investieren zu müssen."}},ownership:{question:"Wem gehören die mit Base44 erstellten Anwendungen?",answer:{yourProperty:"Zwischen Ihnen und Base44 gelten alle über unsere Plattform generierten Anwendungen und Inhalte als Ihr Eigentum. Wir erheben keine Eigentumsansprüche auf das, was Sie mit Base44 erstellen.",intellectualProperty:"Ihr geistiges Eigentum bleibt Ihres, und Sie können die generierten Anwendungen im Rahmen des gesetzlich Erlaubten frei nutzen, ändern, verteilen oder verkaufen."}},deployment:{question:"Wie werden Base44-Anwendungen bereitgestellt?",answer:{instantAccess:"Mit Base44 ist die Bereitstellung unglaublich einfach. Ihre Anwendungen sind sofort nutzbar und teilbar, sobald Sie sie erstellen. Teilen Sie einfach die URL Ihrer App mit anderen.",noHosting:"Es sind keine separaten Hosting- oder Bereitstellungsschritte erforderlich, was es unglaublich einfach macht, Ihre Anwendung schnell zum Laufen zu bringen."}},planLimits:{question:"Was passiert, wenn ich meine Planlimits erreiche?",answer:{limitations:"Wenn Sie Ihr tägliches Nachrichtenlimit erreichen, müssen Sie bis zum nächsten Tag warten, um weitere Nachrichten zu senden. Wenn Sie Ihr monatliches Limit erreichen, können Sie keine zusätzlichen Nachrichten senden oder Integrationsanfragen stellen, bis Ihr nächster Abrechnungszyklus beginnt.",upgradeOption:"Um Unterbrechungen bei der App-Entwicklung und -Nutzung zu vermeiden, können Sie jederzeit über Ihr Abrechnungs-Dashboard auf einen höheren Plan mit erhöhten Limits upgraden."}}},HR={pendingChange:{title:"Ausstehende Abonnementänderung",message:"Sie haben eine Abonnementänderung zum {{tierName}}-Plan, die am Ende Ihres aktuellen Abrechnungszyklus wirksam wird.",subMessage:'Hinweis: Um Ihr Abonnement zu kündigen, stornieren Sie zuerst diese Änderung und nutzen Sie dann "Zahlungen verwalten" zur Kündigung.',cancelChange:"Änderung stornieren",cancelling:"Wird storniert..."},cancellation:{title:"Abonnementkündigung geplant",message:"Ihr Abonnement endet am {{endDate}}. Bis dahin haben Sie vollen Zugriff auf alle Funktionen.",subMessage:"Möchten Sie Ihr Abonnement behalten? Sie können es mit einem Klick reaktivieren.",managePayments:"Zahlungen verwalten",processing:"Wird verarbeitet..."}},YR={currentPlan:"Ihr aktueller Plan ist {{displayName}},",withCredits:"mit {{messageCredits}} Nachrichtenguthaben & {{integrationCredits}} Integrationsguthaben."},KR={title:"Base44 Vorteile:",responsiveVisualEditor:"Responsiver visueller Editor",builtInBackend:"Integriertes Backend",userManagement:"Benutzerverwaltung"},ZR={title:"Abonnementzahlung überfällig",tryAgain:"Erneut versuchen",trying:"Wird versucht...",updatePaymentMethod:"Zahlungsmethode aktualisieren",description:"Ihre letzte Zahlung ist fehlgeschlagen. Versuchen Sie es erneut oder aktualisieren Sie Ihre Zahlungsmethode, um den vollen Zugriff auf Ihren Plan wiederherzustellen."},JR={error:"Fehler",success:"Erfolg",checkoutError:"Checkout-Sitzung konnte nicht erstellt werden. Bitte versuchen Sie es später erneut.",subscriptionUpdated:"Abonnement aktualisiert",downgradeScheduled:"Ihr Abonnement wurde für ein Downgrade am Ende Ihres Abrechnungszyklus eingeplant.",upgradeSuccess:"Ihr Abonnement wurde erfolgreich hochgestuft. Die Änderungen werden in Kürze wirksam.",updateError:"Abonnement konnte nicht aktualisiert werden. Bitte versuchen Sie es später erneut.",portalError:"Abrechnungsportal konnte nicht geöffnet werden. Bitte versuchen Sie es später erneut.",scheduleCancelSuccess:"Abonnement-Zeitplan erfolgreich storniert",scheduleCancelError:"Abonnement-Zeitplan konnte nicht storniert werden. Bitte versuchen Sie es später erneut.",paymentPortalError:"Zahlungsverwaltung konnte nicht geöffnet werden. Bitte versuchen Sie es erneut."},QR={loadError:"Workspace-Abrechnungsinformationen konnten nicht geladen werden",loadErrorAlert:"Workspace-Abrechnungsinformationen konnten nicht geladen werden. Bitte versuchen Sie es später erneut.",seatTypePlan:"{{seatType}}-Plan",currentPlanContact:"Sie nutzen derzeit den {{seatType}}-Plan. Für Änderungen wenden Sie sich bitte an Ihren Workspace-{{adminType}}.",workspaceOwner:"Workspace-Eigentümer:",workspaceAdmin:"Workspace-Administrator:",viewerAccess:"Betrachter-Zugang",viewerAccessDescription:"Sie haben derzeit Betrachter-Zugang in diesem Workspace. Für einen Platz mit vollem Zugriff wenden Sie sich bitte an Ihren Workspace-{{adminType}}.",adminAccessMessage:"<strong>Administrator-Zugang:</strong> Besuchen Sie das <a>Workspace-Dashboard</a>, um Plätze, Abrechnung und Teammitglieder zu verwalten.",adminTypes:{owner:"Eigentümer",administrator:"Administrator"}},XR={loadError:"Workspace-Informationen konnten nicht geladen werden. Bitte versuchen Sie es später erneut.",workspacePlan:"Workspace-Plan:",renews:"Verlängerung:",workspaceOwner:"Workspace-Eigentümer",contactOwner:"Für Abrechnungsänderungen oder Abonnementfragen wenden Sie sich an Ihren Workspace-Eigentümer.",ownerLabel:"Workspace-Eigentümer:",adminAccessMessage:"<strong>Administrator-Zugang:</strong> Besuchen Sie die <a>Workspace-Mitglieder</a>-Seite, um Mitglieder zu verwalten.",billingManagedByOwner:"Die Abrechnung wird von Ihrem Workspace-Eigentümer verwaltet. Wenden Sie sich bei abrechnungsbezogenen Fragen an den oben genannten Eigentümer.",roles:{owner:{title:"Eigentümer",description:"Voller Zugriff auf Workspace-Abrechnung, Einstellungen und Mitgliederverwaltung."},admin:{title:"Administrator",description:"Kann Workspace-Einstellungen und Mitglieder verwalten, aber keine Abrechnung ändern."},editor:{title:"Bearbeiter",description:"Kann Apps in diesem Workspace erstellen und bearbeiten."},viewer:{title:"Betrachter",description:"Kann Apps in diesem Workspace mit Lesezugriff anzeigen."},member:{title:"Mitglied",description:"Teammitglied mit Zugriff auf Workspace-Apps."},guest:{title:"Gast",description:"Externer Mitarbeiter mit Zugriff auf bestimmte Apps in diesem Workspace."}}},ez={title:"Sicherheit und Compliance",iso:{title:"ISO/IEC 27001",subtitle:"ISO/IEC Sicherheitsmanagement"},soc2:{title:"SOC 2 Type II",subtitle:"SOC für Dienstleistungsorganisationen"},gdpr:{title:"GDPR",subtitle:"Datenschutz- und Privatsphäre-Verordnung"}},tz={title:"Base44 für Unternehmen",subtitle:"Ermöglichen Sie großen Organisationen, Lösungen zu entwickeln, die perfekt zu ihren Teams passen – sicher und skalierbar",contactUs:"Kontaktieren Sie uns",features:{onboarding:{title:"Onboarding & Schulung",description:"Maßgeschneiderte Onboarding-Pläne kombiniert mit Live-Schulungen und Ressourcen, die Administratoren und Endnutzern eine schnelle Einführung ermöglichen."},accountTeam:{title:"Dediziertes Account-Team",description:"Arbeiten Sie mit einem namentlich bekannten Account Manager und Solution Engineer zusammen, der direkte Beratung, Eskalationen und Roadmap-Abstimmung bietet."},prioritySupport:{title:"Priorisierter Support, garantiert",description:"Erhalten Sie garantierten Vorrangsupport und definierte Reaktionszeiten über einen dedizierten Support-Kanal."},capabilities:{title:"Enterprise-Grade-Funktionen",description:"Sicherheits-, Compliance-, Management- und Monitoring-Funktionen – für die erforderliche Kontrolle und Flexibilität im großen Maßstab."}}},az={yearly:"Jährlich",monthly:"Monatlich",yearlyInline:"Jahres",monthlyInline:"Monats",monthlyCredits:"Monats-Credits",integrationCredits:"Integrationsguthaben",priceSuffixYearly:" × 12 Monate",priceSuffixMonthly:" / pro Monat",off:"RABATT",save:"SPAREN",discountBadge:"{{discount}} RABATT",saveBadge:"SPAREN {{amount}}",planNotFound:"Plan-Preise nicht verfügbar. Bitte gehen Sie zurück und versuchen Sie es erneut.",upgradeDialogTitle:"Abonnement-Upgrade bestätigen",upgradeDialogDescription:"Sie sind dabei, auf den {{planName}}-Plan für <price/>/Monat zu upgraden. Ihr Abonnement wird sofort aktualisiert und Ihnen wird ein anteiliger Betrag für den Rest Ihres Abrechnungszyklus berechnet.",noteMonthlyExcludes:"HINWEIS: Das Monatsabonnement enthält nicht:",whatsIncluded:"Was im {{period}}-Plan enthalten ist",chooseYearly:"Wählen Sie ein <yearlyLink>Jahresabonnement</yearlyLink>, um das Beste aus Ihrem Premium-Plan herauszuholen",yearlyFeatures:{discount:"Genießen Sie einen Sonderrabatt und sparen Sie Geld",freeDomain:"Kostenlose Domain für 1 Jahr",shareCredits:"25 Guthaben zum Teilen mit einem Freund"},monthlyFeatures:{discount:"Sonderrabatt und Einsparungen",freeDomain:"Kostenlose Domain für 1 Jahr",shareCredits:"25 Guthaben zum Teilen mit einem Freund"},planNotAvailable:"Planpreise nicht verfügbar. Bitte versuchen Sie es erneut.",goBack:"Zurück",continueToCheckout:"Weiter zur Kasse",confirmSubscriptionUpgrade:"Abonnement-Upgrade bestätigen",upgradeDescription:"Sie sind dabei, auf den {{planName}}-Plan für <strikethrough>{{originalPrice}}</strikethrough>{{price}}/Monat zu upgraden. Ihr Abonnement wird sofort aktualisiert und Ihnen wird ein anteiliger Betrag für den Rest Ihres Abrechnungszyklus berechnet.",cancel:"Abbrechen",confirmUpgrade:"Upgrade bestätigen",processing:"Wird verarbeitet...",studentDiscountFootnote:"Das Angebot gilt für das erste Jahr (12 Monate) eines neuen Starter-Plans. Einmalig pro Benutzer verwendbar; der Rabatt kann nach einer Kündigung nicht reaktiviert werden."},nz={bannerTitle:"Student oder Lehrkraft? Bis zu {{percent}}% Rabatt auf den Starter-Plan",bannerSubtitle:"Verifizieren Sie Ihre Universitäts-E-Mail, um vergünstigte Preise freizuschalten",verifiedWith:"Verifiziert mit {{email}} - bis zu {{percent}}% Rabatt",starterPlan:"Starter-Plan",active:"Aktiv",dialogTitle:"Studentenrabatt",surveyTitle:"Erzählen Sie uns von sich",alreadyActiveDesc:"Ihr Studentenrabatt ist bereits aktiv.",emailStepDesc:"Verifizieren Sie Ihre Universitäts-E-Mail, um Studentenpreise freizuschalten.",codeStepDesc:"Wir haben einen 6-stelligen Code an {{email}} gesendet",surveyStepDesc:"Nur ein paar kurze Fragen, um Ihre Verifizierung abzuschließen.",benefitDiscount:"Bis zu {{percent}}% Rabatt",benefitDiscountDetail:"auf den Starter-Plan",benefitAccess:"Voller Zugang",benefitAccessDetail:"zu allen Starter-Funktionen",benefitClaimOnce:"Einmal einlösen",benefitClaimOnceDetail:"jederzeit auf Starter nutzbar",alreadyApplied:"Ihr Studentenrabatt ist bereits angewendet",alreadyAppliedDesc:"Verifiziert mit {{email}}. Vergünstigte Preise werden bei berechtigten Plänen oben angezeigt.",gotIt:"Verstanden",emailPlaceholder:"sie@universitaet.edu",emailHint:"Wir unterstützen .edu, .ac.uk, .ac.il und andere Universitäts-Domains.",sending:"Wird gesendet...",sendCode:"Verifizierungscode senden",codePlaceholder:"6-stelligen Code eingeben",verifying:"Wird verifiziert...",verifyCode:"Code verifizieren",changeEmail:"E-Mail ändern",resendCooldown:"Code erneut senden ({{seconds}}s)",resendCode:"Code erneut senden",role:"Rolle",student:"Student",teacher:"Lehrkraft",intendedUseLabel:"Wofür planen Sie Base44 zu nutzen?",intendedUsePlaceholder:"z.B. Kursprojekt, Forschungstool, Abschlussarbeit...",fieldOfStudy:"Was ist Ihr Studienfach?",fieldOfTeaching:"Was ist Ihr Lehrfach?",selectField:"Studienfach auswählen...",searchFields:"Fächer suchen...",other:"Sonstiges",specifyField:"Bitte angeben...",graduationDate:"Voraussichtliches Abschlussdatum",month:"Monat",year:"Jahr",activating:"Wird aktiviert...",verifyingEmail:"E-Mail wird verifiziert...",activateDiscount:"Rabatt aktivieren",errorNoEmail:"Bitte geben Sie Ihre Universitäts-E-Mail-Adresse ein.",errorInvalidEmail:"Bitte geben Sie eine gültige E-Mail-Adresse ein.",errorSendFailed:"Verifizierungscode konnte nicht gesendet werden. Bitte versuchen Sie es erneut.",errorEmailAlreadyClaimed:"Diese Universitäts-E-Mail ist bereits mit einem anderen Konto verknüpft.",errorNoCode:"Bitte geben Sie den 6-stelligen Code aus Ihrer E-Mail ein.",errorInvalidCode:"Ungültiger oder abgelaufener Code. Bitte versuchen Sie es erneut.",errorNoIntendedUse:"Bitte teilen Sie uns mit, wofür Sie Base44 nutzen möchten.",errorNoField:"Bitte wählen Sie Ihr Studienfach aus.",errorNoFieldOther:"Bitte geben Sie Ihr Studienfach an.",errorNoGraduation:"Bitte wählen Sie Ihr voraussichtliches Abschlussdatum.",toastActivatedTitle:"Studentenrabatt aktiviert",toastActivatedDesc:"Ihre Studentenpreise werden jetzt auf berechtigte Pläne angewendet. Scrollen Sie nach oben, um die aktualisierten Preise zu sehen.",errorActivateFailed:"Rabatt konnte nicht aktiviert werden. Bitte versuchen Sie es erneut.",toastResentTitle:"Code erneut gesendet",toastResentDesc:"Ein neuer Verifizierungscode wurde an Ihre E-Mail gesendet.",errorResendFailed:"Code konnte nicht erneut gesendet werden. Bitte warten Sie einen Moment und versuchen Sie es erneut."},iz="Dein aktueller Plan wurde mit einer Geschenkkarte erworben. Das Geschenkkarten-Guthaben wird bei Upgrades nicht übertragen — dir wird der anteilige Preis berechnet.",rz={title:"Kauf erfolgreich",redirecting:"Sie werden in {{seconds}}s zur App zurückgeleitet...",button:"Zurück zur App"},oz={modal:LR,certificates:jR,features:OR,borderTag:BR,header:UR,messageLabel:qR,card:VR,dropdown:$R,dialog:WR,faq:GR,notices:HR,manageSubscription:YR,benefits:KR,overduePayment:ZR,toasts:JR,workspaceBilling:QR,workspaceRoles:XR,security:ez,enterprise:tz,periodSelector:az,studentDiscount:nz,upgradeGiftCardWarning:iz,returnToApp:rz},sz="Freunde einladen & Credits verdienen",lz="Freunde einladen &<br/>Credits verdienen",cz="Einladen & Credits verdienen",dz="Teile deinen Link und verdiene {{credits}} Credits, wenn Freunde ihre erste App veröffentlichen",uz={title:"Fantastisch! Du hast die maximale Anzahl an Empfehlungen erreicht",description:"Du kannst insgesamt bis zu {{maxReferrals}} Freunde einladen",extra:"({{extra}} weitere bringen keine Credits)"},pz={tryAgain:"Erneut versuchen",copied:"In die Zwischenablage kopiert!",copyButton:"Kopieren",copiedButton:"Kopiert"},mz={title:"So funktioniert es",shareLink:"Teile deinen einzigartigen Empfehlungslink mit Freunden",signupBonus:"Sie erhalten <bold>{{credits}} Credits</bold>, wenn sie sich anmelden",publishReward:"Du verdienst <bold>{{credits}} Credits</bold>, wenn sie ihre erste App veröffentlichen"},gz="Deine Empfehlungen ({{current}}/{{max}})",hz={registered:"Registriert",earned:"Verdient"},fz={back:"Zurück",close:"Schließen",srTitle:"Empfehlungsprogramm",baseDayBadge:"Base44 Day",creditsCount:"{{credits}} Credits",earnCredits:"{{credits}} Credits verdienen",termsAndConditions:"Nutzungsbedingungen",termsDescription:"Nutzungsbedingungen des Empfehlungsprogramms"},vz={title:"Nutzungsbedingungen",eligibility:{title:"Berechtigung",newUsersOnly:"Nur neue Nutzer können an diesem Empfehlungsangebot teilnehmen. Bestehende Konten sind ausgeschlossen.",shareResponsibly:"Wir bitten dich, deinen Empfehlungslink verantwortungsbewusst zu teilen. Das Posten auf irrelevanten oder spamartigen Plattformen kann zum Ausschluss aus dem Programm führen."},credits:{title:"Empfehlungs-Credits",earnOnPublish:"Du verdienst {{credits}} Credits, wenn ein empfohlener Freund seine erste App veröffentlicht",bonusOnSignup:"Empfohlene Freunde erhalten bei der Registrierung {{credits}} Bonus-Credits",maxPerAccount:"Maximal 5 erfolgreiche Empfehlungen pro Konto",noCashValue:"Credits haben keinen Geldwert und können nicht übertragen werden"},restrictions:{title:"Einschränkungen",voidFraudulent:"Base44 behält sich das Recht vor, betrügerische Empfehlungen zu annullieren",nonTransferable:"Empfehlungscodes sind nicht übertragbar"},footer:"Base44 behält sich das Recht vor, dieses Empfehlungsprogramm jederzeit zu ändern oder zu beenden. Änderungen werden über die Plattform kommuniziert."},bz={title:sz,titleDesktop:lz,titleMobile:cz,subtitle:dz,maxReached:uz,link:pz,howItWorks:mz,yourReferrals:gz,status:hz,dialog:fz,terms:vz},yz={title:"Spotlight",subtitle:"Entdecke herausragende Anwendungen und Websites, die mit Base44 erstellt wurden",loading:"Spotlight wird geladen…",errorMessage:"Spotlight konnte nicht geladen werden. Bitte versuche es später erneut.",empty:"Noch keine Spotlight-Apps."},kz={title:"Fehler",description:"Spotlight-Apps konnten nicht geladen werden."},wz={label:"Heutiges Spotlight",byCreator:"von {{creator}}",screenshotAlt:"{{appName}}-Screenshot",logoAlt:"{{appName}}-Logo"},Az={"beautifully-designed":"Wunderschön gestaltet","loved-by-the-community":"Von der Community geliebt",saas:"SaaS",education:"Bildung","e-commerce":"E-Commerce",websites:"Websites"},Sz={screenshotAlt:"{{appName}}-Screenshot",logoAlt:"{{appName}}-Logo",viewDetailsLabel:"Details anzeigen",viewDetailsAriaLabel:"Details für {{appName}} anzeigen"},Cz={backButton:"Spotlight",byCreator:"Von {{creator}}",iframeTitle:"{{appName}}-Vorschau",previewNotAvailable:"Vorschau nicht verfügbar"},Dz={ariaLabel:"App bei Spotlight einreichen",heading:"Möchtest du, dass deine App hier erscheint?",description:"Zeige, was du mit Base44 gebaut hast. Reiche es bei Spotlight ein und inspiriere die Community.",buttonText:"DEINE APP EINREICHEN"},Tz={title:"App bei Spotlight einreichen",selectAppSubtitle:"Wähle die App aus, die du für die Spotlight-Seite nominieren möchtest.",detailsSubtitle:"Erzähle uns, warum deine App auf der Spotlight-Seite vorgestellt werden sollte.",back:"Zurück",cancel:"Abbrechen",next:"Weiter",searchPlaceholder:"Apps suchen...",aboutLabel:"Über diese App",aboutPlaceholder:"Erzähle uns etwas Interessantes über deine App – besondere Funktionen, clevere Tricks oder alles, was die Community entdecken sollte",screenshotLabel:"Screenshot <optional>(optional)</optional>",screenshotHint:"PNG, JPG oder WebP — min. 800×450 Pixel, bis zu 2 MB",submit:"Einreichen",submitting:"Wird eingereicht…",submitError:"Spotlight-Anfrage konnte nicht gesendet werden.",successAlreadyInSpotlight:"Bereits im Spotlight",successRequestReceived:"Anfrage erhalten",successDescription:'Wir werden "{{appName}}" für Spotlight prüfen. Du erhältst bald eine Antwort.'},Ez={viewApp:"App ansehen",share:"Teilen",upvote:"Abstimmen",alreadyUpvoted:"Bereits abgestimmt",thankYouForVote:"Danke für deine Stimme!",voteError:"Stimme konnte nicht registriert werden",voteErrorDescription:"Bitte versuche es später erneut.",linkShared:"Link geteilt",linkCopied:"Link in Zwischenablage kopiert",shareError:"Konnte nicht geteilt werden"},Pz={label:"Wusstest du schon?"},_z={editedAgo:"bearbeitet {{timeAgo}}",editedRecently:"Kürzlich bearbeitet",noAppsFound:"Keine Apps gefunden",noAppsAvailable:"Keine Apps verfügbar",loadMore:"Mehr Apps laden",loading:"Wird geladen…"},xz={page:yz,fetchError:kz,featured:wz,sections:Az,card:Sz,detailModal:Cz,submitBanner:Dz,requestModal:Tz,actions:Ez,didYouKnow:Pz,appPicker:_z},Iz={page:{title:"Hilfe & Support",subtitle:"Erhalten Sie die Unterstützung, die Sie benötigen, um großartige Anwendungen mit BASE44 zu erstellen"},getStarted:"Loslegen",cards:{documentation:{title:"Dokumentation",description:"Entdecken Sie umfassende Leitfäden, Tutorials, FAQs und Best Practices für das Entwickeln mit Base44."},discord:{title:"Discord-Community",description:"Vernetzen Sie sich mit anderen Entwicklern und erhalten Sie sofortige Hilfe von unserer aktiven Community."},supportTicket:{title:"Support-Ticket eröffnen",description:"Reichen Sie ein detailliertes Support-Ticket ein und erhalten Sie persönliche Unterstützung."}},appContext:{title:"App-spezifischer Support",description:"Supportanfragen werden der App <appId>{{appId}}</appId> zugeordnet"},quickActions:{title:"Schnellaktionen",subtitle:"Verwalten Sie Ihr Support-Erlebnis",myTickets:{title:"Meine Support-Tickets",description:"Vorhandene Support-Tickets anzeigen und verwalten"},communityForum:{title:"Community-Forum",description:"Unsere neue Reddit-Community"}}},Rz={fallbackTitle:"Support-Gespräch",appLink:"App"},zz={title:"Meine Support-Tickets",backToSupport:"Zurück zum Support",showingTicketsForApp:"Zeigt Tickets für App: <app>{{appId}}</app>",filteredByApp:"Gefiltert nach App: <app>{{appId}}</app>"},Mz={title:"Support-Ticket einreichen",titleResume:"Ein Support-Ticket einreichen"},Nz={helpMessage:"Sofortige Hilfe benötigt? <normal>Lesen Sie unsere </normal><docsLink>Dokumentation</docsLink><normal> oder treten Sie unserer </normal><discordLink>Discord-Community</discordLink><normal> bei</normal>."},Fz={heading:"Support-Anfrage fortsetzen?",description:"Sie haben zuvor begonnen, ein Support-Ticket zu erstellen.",chooseHowToProceed:"Wie möchten Sie fortfahren:",continueWhereLeftOff:"Weitermachen, wo Sie aufgehört haben",continueWhereLeftOffDesc:"Stellen Sie Ihre vorherigen Eingaben wieder her und machen Sie weiter, wo Sie aufgehört haben.",startNewTicket:"Neues Ticket starten",startNewTicketDesc:"Entwurf verwerfen und eine neue Support-Anfrage starten.",continue:"Weiter"},Lz={tellUsAboutYourIssue:"Beschreiben Sie Ihr Problem",whatTypeOfIssue:"Welche Art von Problem haben Sie?",selectApp:"Wählen Sie die App aus, die mit Ihrem Problem zusammenhängt"},jz={instruction:"Bitte teilen Sie mit, was Sie getan haben, was schiefgelaufen ist und wie wir das Problem reproduzieren können.",descriptionLabel:"Beschreibung",descriptionPlaceholder:`Beispiel:
• Was Sie versucht haben zu tun
• Was stattdessen passiert ist
• Eventuelle Fehlermeldungen
• Schritte zum Reproduzieren (falls zutreffend)`,attachmentsLabel:"Anhänge",viewApp:"App ansehen",dragAndDropFiles:"Dateien hierher ziehen",dropFilesHere:"Dateien hier ablegen",browseFiles:"Dateien durchsuchen",uploading:"Wird hochgeladen...",unsupportedFileType:'Dateityp "{{type}}" wird nicht unterstützt. Unterstützte Typen: jpg, jpeg, png, pdf.',invalidFile:"Ungültige Datei",failedToUpload:"Datei-Upload fehlgeschlagen"},Oz={analyzingIssue:"Problem wird analysiert...",categoryFullDescription:"Ihr Problem fällt wahrscheinlich in eine dieser Kategorien.<br/>Wählen Sie die passendste aus — das hilft uns, Sie zur richtigen Lösung zu führen."},Bz={authentication:"Authentifizierung",billing:"Abrechnung",bug_report:"Fehlerbericht",domain:"Domain",integrations_and_backend_functions:"Integrationen & Backend",chat_issues:"Chat-Probleme",security:"Sicherheit",social_post_bonus_credits:"Social-Post-Bonusguthaben",superagent:"Superagent",other:"Sonstiges"},Uz={searchPlaceholder:"Apps suchen...",addAppLink:"App-Link hinzufügen",addAppLinkPlaceholder:"z. B. https://your-app-url.com oder https://yourapp.base44.app",invalidUrl:"Bitte geben Sie eine gültige URL ein, die mit http:// oder https:// beginnt",noAppsFound:"Keine Apps gefunden",noAppsAvailable:"Keine Apps verfügbar",loadingMore:"Wird geladen...",loadMore:"Mehr Apps laden",edited:"bearbeitet {{time}}"},qz={loading:"Gespräch wird geladen...",errorTitle:"Fehler beim Laden des Gesprächs",noConversationTitle:"Kein Gespräch gefunden",noConversationMessage:"Dieses Gespräch existiert nicht oder Sie haben keinen Zugriff darauf.",tryAgain:"Erneut versuchen",ticketFallbackTitle:"Support-Ticket",categoryFallback:"Allgemein",closeTicket:"Ticket schließen",closing:"Wird geschlossen...",aiAssistantInfo:"KI-Assistent · Kann Fehler machen",talkToSpecialist:"Mit einem Support-Spezialisten sprechen",handledBySpecialist:"Wird von einem Support-Spezialisten bearbeitet",notifyWhenResponds:"Benachrichtigen, wenn der Support antwortet",ticketResolvedTitle:"Dieses Ticket wurde gelöst",ticketResolvedMessage:"Bitte erstellen Sie ein neues Ticket für weitere Unterstützung",conversationClosed:"Dieses Gespräch ist geschlossen",aiHandlingTicket:"Der KI-Agent bearbeitet dieses Ticket. Klicken Sie auf <bold>Übernehmen</bold>, um manuell zu antworten.",typeResponse:"Antwort eingeben...",typeMessage:"Nachricht eingeben...",failedLoadConversation:"Gespräch konnte nicht geladen werden. Bitte erneut versuchen.",ticketAlreadyResolved:"Dieses Ticket wurde bereits gelöst. Bitte erstellen Sie ein neues Ticket für weitere Unterstützung.",failedCloseTicket:"Ticket konnte nicht geschlossen werden. Bitte erneut versuchen.",failedEscalate:"Ticket konnte nicht eskaliert werden. Bitte erneut versuchen.",confirmCloseTicket:"Möchten Sie dieses Ticket schließen? Es wird als gelöst markiert.",premiumSupportTier:"Premium-Support",standardSupportTier:"Standard-Support",premiumSupportMessage:"Offline-Support, priorisierte Antwort innerhalb von 48 Stunden",standardSupportMessage:"Offline-Support, Antwort innerhalb von 48 Stunden",templates:{label:"Schnellvorlagen",less:"Weniger"},draft:{title:"KI-Vorschlag",collapse:"Einklappen",viewAll:"Alle anzeigen",use:"Verwenden"},escalateModal:{title:"Menschlichen Support anfordern",description:"Ihr Ticket wird zur personalisierten Bearbeitung an unser Support-Team weitergeleitet.",cancel:"Abbrechen",requesting:"Wird angefordert...",requestButton:"Menschlichen Support anfordern"}},Vz={supportTeam:"Support-Team",attachedFile:"Angehängte Datei",translatedFrom:"Übersetzt aus {{language}}",internalNote:"Interne Notiz",emptyTitle:"Gespräch beginnen",emptyMessage:"Senden Sie eine Nachricht, um Ihr Support-Gespräch zu beginnen",translating:"Wird übersetzt...",showingTranslations:"Übersetzungen werden angezeigt",translateToEnglish:"Ins Englische übersetzen",confirmDeleteMessage:"Möchten Sie diese Nachricht wirklich löschen?",failedDeleteMessage:"Nachricht konnte nicht gelöscht werden. Bitte erneut versuchen.",failedTranslate:"Nachrichten konnten nicht übersetzt werden. Bitte erneut versuchen.",attachedContent:"Angehängter Inhalt",videoNotSupported:"Ihr Browser unterstützt keine Videowiedergabe.",noteBy:"von {{name}}",adminFallback:"Admin",events:{unknownActor:"Jemand",statusChange:"{{actor}} hat den Status zu {{status}} geändert",unassigned:"{{actor}} hat die Zuweisung aufgehoben",assigned:"{{actor}} hat {{assignee}} zugewiesen",reassigned:"{{actor}} hat zu {{assignee}} neu zugewiesen",escalated:"{{actor}} hat eskaliert",removedEscalation:"{{actor}} hat die Eskalation aufgehoben",categoryChange:"{{actor}} hat die Kategorie zu {{category}} geändert",labelChangeAdded:"{{actor}} hat {{labels}} hinzugefügt",labelChangeRemoved:"{{actor}} hat {{labels}} entfernt",labelChangeBoth:"{{actor}} hat {{added}} hinzugefügt und {{removed}} entfernt",updated:"{{actor}} hat das Ticket aktualisiert",markedAbusive:"{{actor}} hat Inhalt als missbräuchlich markiert",clearedAbusive:"{{actor}} hat die Markierung für missbräuchlichen Inhalt entfernt"}},$z={uploading:"Wird hochgeladen...",uploadFiles:"Dateien hochladen",fileTypeError:"Bitte fordern Sie Unterstützung für weitere Dateitypen auf <link>feedback.base44.com</link> an"},Wz={open:"Offen",closed:"Geschlossen",all:"Alle"},Gz={open:"Offen",resolved:"Gelöst"},Hz={noOpenTickets:"Keine offenen Tickets",noClosedTickets:"Keine geschlossenen Tickets",noTickets:"Keine Tickets",descriptionOpen:"Sie haben derzeit keine offenen Support-Tickets.",descriptionClosed:"Keine geschlossenen Tickets gefunden.",descriptionAll:"Sie haben noch keine Support-Tickets eingereicht."},Yz={appLabel:"App: {{appId}}",dateNotAvailable:"Nicht verfügbar"},Kz={loadingTitle:"Fehler beim Laden der Tickets",loadingFailed:"Support-Tickets konnten nicht geladen werden. Bitte versuchen Sie es erneut.",ticketLimitTitle:"Ticket-Limit erreicht",ticketLimitDescription:"Es gibt mehr Tickets als geladen werden können. Nur die neuesten 1000 Tickets wurden geladen."},Zz={free:"Kostenlos"},Jz={cancel:"Abbrechen",back:"Zurück",skip:"Überspringen",continue:"Weiter",submitting:"Wird gesendet...",refresh:"Aktualisieren",newTicket:"Neues Ticket",createNewTicket:"Neues Ticket erstellen",tryAgain:"Erneut versuchen",bannedAlert:"Ihr Zugang zu Base44 Support wurde aufgrund eines Verstoßes gegen die Base44 Support-Nutzungsbedingungen eingeschränkt. Weitere Details finden Sie in der E-Mail, die wir Ihnen gesendet haben."},Qz={descriptionRequired:"Bitte fügen Sie eine Beschreibung hinzu",descriptionTooShort:"Bitte fügen Sie etwas mehr Details hinzu. Mindestens 20 Zeichen erforderlich.",appRequired:"Wählen Sie eine Ihrer Apps aus oder fügen Sie einen Link hinzu, damit wir wissen, wo das Problem auftritt.",submissionFailed:"Ihr Support-Ticket konnte nicht gesendet werden. Bitte versuchen Sie es erneut."},Xz={dailyLimitReached:"Tageslimit erreicht",somethingWentWrong:"Etwas ist schiefgelaufen",dailyLimitMessage:"Das tägliche Limit für Support-Gespräche wurde überschritten. Sie können mit Ihrem aktuellen Abonnement bis zu {{limit}} Gespräche pro Tag erstellen.",tryAgain:"Erneut versuchen",cancel:"Abbrechen",close:"Schließen"},eM={help:Iz,sidebar:Rz,page:zz,modal:Mz,footer:Nz,resumeStep:Fz,steps:Lz,tellUsAboutYourIssue:jz,whatTypeOfIssue:Oz,categories:Bz,selectApp:Uz,chat:qz,messages:Vz,input:$z,tabs:Wz,status:Gz,emptyState:Hz,ticketCard:Yz,errors:Kz,tiers:Zz,actions:Jz,validation:Qz,submissionError:Xz},tM={sectionTitle:"Account settings",sectionDescription:"Manage your personal account preferences and settings.",heading:"Account",email:{label:"Email",placeholder:"No email set"},fullName:{label:"Full Name",placeholder:"Enter your full name",profileHint:"This is how you'll appear on your public Base44 <profileLink>profile</profileLink>."},phoneNumber:{label:"Phone Number",placeholder:"Enter your phone number",smsConsent:"By entering your phone number, you agree to receive SMS notifications from us."},defaultAgents:{label:"Default Agents",toggleLabel:"Enable agents for new apps by default",description:"When enabled, new apps will automatically have agents enabled, allowing them to run autonomous tasks and use tools."},defaultTestData:{label:"Default Test Data",toggleLabel:"Enable test data for new apps by default",description:"When enabled, new apps start with test data turned on so you can safely test changes without affecting live data.",upgradeRequired:"This feature requires Builder plan or higher.",seePlans:"See Plans"},apiKey:{label:"API Key",copyTitle:"Copy API key",copied:"Copied!",regenerate:"Regenerate",regenerating:"Regenerating...",regenShort:"Regen",regenShortLoading:"Regen...",description:"Your API key provides access to your workspace. Do not share it with others.",notGenerated:"Not yet generated — click Regenerate"},backofficeApiKey:{title:"Backoffice API Key",description:"Use this key to authenticate programmatic requests against the backoffice service. It will not work on the platform service. Keep it secret.",yourKey:"Your backoffice API key",copySuccess:"API key copied",copyError:"Failed to copy API key",regenSuccess:"Backoffice API key regenerated",regenError:"Failed to regenerate: {{error}}",warning:"Regenerating invalidates the previous key immediately. Any clients using it will need to be updated.",existsPlaceholder:"•••••••••••••••••• (key exists — only the hash is stored; regenerate to see a new one)",showOnceWarning:"Copy this key now. It is shown only once and cannot be retrieved later."},unsavedChanges:"Unsaved changes",discard:"Discard",save:"Save",saving:"Saving...",saveSuccess:"Account settings updated successfully!",saveError:"Failed to update account settings: {{error}}",unknownError:"Unknown error",apiKeyCopySuccess:"API key copied to clipboard!",apiKeyCopyError:"Failed to copy API key",apiKeyRegenSuccess:"API key regenerated successfully!",apiKeyRegenError:"Failed to regenerate API key: {{error}}"},aM={title:"Two-factor authentication",description:"Add an extra layer of protection when signing in. You'll be asked for a code each time you sign in.",twoFactorEnabled:"Two-factor authentication is enabled.",statsLine:"{{used}}/{{total}} recovery codes used · {{devices}} trusted devices",totp:{name:"Authenticator app",description:"Use an app like Google Authenticator or Duo to generate secure sign-in codes.",setupTitle:"Set up your authenticator app",scanQr:"Scan the QR code with your authenticator app",cantScan:"Can't scan the code? Enter it manually:",enterCodeTitle:"Enter a code from your authenticator app",enterDigitCode:"Enter the 6-digit code",codesRefresh:"Codes refresh every 30 seconds.",qrCodeAlt:"QR code for authenticator app setup",enabled:"Authenticator app enabled",disabled:"Authenticator app disabled"},sms:{name:"Text messages",description:"Get sign-in codes sent to your phone by text message.",enterPhone:"Enter your phone number",phoneLabel:"Phone number",phonePlaceholder:"(555) 000-0000",verificationWillBeSent:"A verification code will be sent to this number to confirm it's yours.",verifyPhone:"Verify your phone number",codeSentTo:"A 6-digit code sent to {{phone}}",standardRates:"Standard message and data rates may apply.",invalidPhone:"Invalid phone number. Please check the number and try again.",enabled:"Text message MFA enabled",disabled:"Text messages disabled"},recovery:{saveTitle:"Save your recovery codes",saveDescription:"Save these recovery codes in a secure place. You'll need them if you lose access to your phone or authenticator app.",eachCodeOnce:"Each recovery code can only be used once. Keep them somewhere safe and accessible.",eachCodeOnceShort:"Each recovery code can only be used once.",copyAll:"Copy All",download:"Download",copied:"Copied",enterRecoveryCode:"Enter the recovery code"},disable:{title:"Disable two-factor authentication",turnOff:"Turn off two-factor authentication?",turnOffDescription:"To continue, you'll need to verify with a code sent to your phone or a recovery code.",verifyWithPhone:"Verify with a code sent to your phone",verifyWithApp:"Enter a code from your authenticator app",enterRecoveryToDisable:"Enter one of your recovery codes to disable two-factor authentication.",useRecoveryCode:"Use Recovery Code",verifyViaApp:"Verify via App",verifyAndDisable:"Verify & Disable"},regenerate:{title:"Regenerate recovery codes",trustedDevicesCount_one:"{{count}} trusted device",trustedDevicesCount_other:"{{count}} trusted devices",codesUsed:"{{used}}/{{total}} recovery codes used",descriptionChoose:"Choose a verification method to regenerate your recovery codes. This will invalidate all existing codes.",descriptionSms:"We'll send a verification code to your phone to confirm.",descriptionSmsVerify:"Enter a verification code to regenerate your recovery codes. This will invalidate all existing recovery codes.",descriptionTotpVerify:"Enter a verification code to regenerate your recovery codes. This will invalidate all existing recovery codes.",verifyWithApp:"Enter a code from your authenticator app",verifyWithSms:"Verify with a code sent to your phone",smsMethodLabel:"SMS message",enterCodeLabel:"Enter the 6-digit code",helperTotp:"Open your authenticator app to get the code",helperSms:"Enter the code sent to your phone",verifyAndRegenerate:"Verify & Regenerate",enterCode:"Enter code"},reauth:{title:"Verify your identity",description:"For security, verify your identity before adding {{method}} as a sign-in method.",actionTotp:"Enter the 6-digit code from your authenticator app.",actionSms:"Enter the code sent to {{phone}}."},common:{enable:"Enable",enabled:"Enabled",cancel:"Cancel",close:"Close",back:"Back",done:"Done",verify:"Verify",sendCode:"Send Code",regenerate:"Regenerate",regenerateRecoveryCodes:"Regenerate Recovery Codes",disable:"Disable",continue:"Continue",fullCodeError:"Enter the full 6-digit code",fullRecoveryError:"Enter the full recovery code",enterVerificationCode:"Enter a verification code",didntReceive:"Didn't receive a code?",resendIn:"Resend in {{seconds}}s",resend:"Resend",verificationSent:"Verification code sent",failedToSetup:"Failed to set up authenticator",failedToSendCode:"Failed to send code",failedToResend:"Failed to resend",invalidCode:"Invalid code",lockedOut:"Too many failed attempts. Try again in {{minutes}} min.",lockedOutShort:"Temporarily locked ({{minutes}} min)"}},nM={section:{title:"Delete account",description:"Delete your account along with all associated data, settings, and activity.",accessNote:"You will have access to your account for 1 week after requesting deletion.",deleteButton:"Delete Account",enterpriseTooltip:"Account deletion isn't available for enterprise users. Please contact your organization admin."},pendingRequest:{willBeDeleted:"Your account, subscription, owned apps and workspaces will be deleted in <bold>{{daysRemaining}} days</bold> ({{formattedEnd}}) and will be permanent from that date. Until then you can cancel the deletion.",processing:"Deletion is being processed...",cancelButton:"Cancel request",renewalWarning:"If your subscription is scheduled to renew during these {{daysRemaining}} days, the renewal will still occur unless you cancel the subscription manually before the renewal date"},toast:{submitSuccess:"Deletion request submitted. We will review and process it after the 7-day grace period.",submitError:"Failed to submit deletion request. Please try again.",cancelSuccess:"Deletion request cancelled successfully.",cancelError:"Failed to cancel request. Please try again.",preflightError:"Could not verify account status. Please try again."},dialog:{title:"Delete Your Account",description:"This will schedule your account and all associated data for permanent deletion.",whatWillBeDeleted:"What will be deleted:",itemAccountProfile:"Your account and profile",itemAllApps:"All apps you've created",itemAllData:"All data stored in your apps",itemUploadedFiles:"Uploaded files and media",gracePeriodNote:"You'll have 7 days to cancel this request. After that, our team will review and process your deletion shortly.",subscriptionNote:"Subscription cancellation is final with no refunds",cancelButton:"Cancel",deleteButton:"Delete Account"},subscriptions:{dialogTitle:"Cancel subscriptions before deleting your account",warning:"You still have active subscriptions. Please cancel them first.",listLabel:"Active subscriptions:",personalPlan:"Personal plan",planAndBilling:"Plan & Billing",yearly:"yearly",monthly:"monthly",cancelFirst:"Cancel all subscriptions above, then come back here to delete your account.",closeButton:"Close",manageButton:"Manage subscriptions"},workspaceOwner:{titleStep1:"You own workspaces",titleStep2:"Confirm workspace deletion",memberCount_one:"{{count}} member",memberCount_other:"{{count}} members",warningOwner_one:"You currently own the following workspace. If you continue, all apps in this workspace will be permanently deleted, and all members will lose access.",warningOwner_other:"You currently own the following workspaces. If you continue, all apps in these workspaces will be permanently deleted, and all members will lose access.",leaveWorkspaces_one:"You will also leave this workspace and lose access:",leaveWorkspaces_other:"You will also leave these workspaces and lose access:",confirmInstructions:"Type each workspace name below to confirm deletion. This action is irreversible.",typeToConfirm:'Type <bold>"{{name}}"</bold> to confirm',deleteAnyway:"Delete anyway",deleteAccount:"Delete Account",cancel:"Cancel"},memberInfo:{title_one:"You will leave this workspace",title_other:"You will leave these workspaces",description_one:"Deleting your account will remove you from the following workspace. You will lose access to all workspace apps and data.",description_other:"Deleting your account will remove you from the following workspaces. You will lose access to all workspace apps and data.",continueWithDeletion:"Continue with deletion",cancel:"Cancel"}},iM={title:"GitHub account",addAccount:"Add your GitHub account",unlockWithBuilder:"Unlock this feature with the Builder plan.",loading:"Loading...",connecting:"Connecting...",reconnect:"Reconnect",connectionLost:"The connection to GitHub was lost. Please reconnect your GitHub account to continue.",connected:"Connected",connectedDescription:"Your GitHub account is connected",disconnect:"Disconnect",tryAgain:"Try Again",connectGitHub:"Connect GitHub",disconnectDialog:{title:"Disconnect from GitHub?",accountDescription:"Disconnecting your GitHub account will not affect any connected apps.<br/>You'll only need to reconnect your account if you want to connect or reconnect a repository.",repoDescription:"This will disconnect the app from the {{repoName}} repository.",repoDescriptionNoName:"This will disconnect the app from the GitHub repository.",repoDetail1:"Your GitHub repository will remain unchanged — it will not be deleted or removed.",repoDetail2:"You can continue working on your app as before, but GitHub will no longer be the source of truth for your code, and two-way sync will be disabled.",disconnectingProgress:"Disconnecting… This may take a few minutes.",cancel:"Cancel",disconnect:"Disconnect",disconnecting:"Disconnecting…"}},rM={title:"Google Drive",connected:"Connected",connectedDescription:"Your Google Drive is connected",disconnectedDescription:"Connect your Google Drive to import files",connect:"Connect",connecting:"Connecting...",disconnect:"Disconnect",disconnecting:"Disconnecting...",loading:"Loading...",connectTitle:"Connect to Google Drive",connectDescription:"Give access to use files from Google Drive as AI chat context.",benefitImport:"Import Docs, Sheets, and Slides from your Google Drive",benefitChoose:"Choose which files to use each time",benefitSecure:"Selected content is securely stored for use in your app",connectButton:"Connect Google Drive",cancel:"Cancel",privacyNote:"Only files you select are accessed.",disconnectAnytime:"You can disconnect anytime in account settings."},oM={title:"Chat Settings",sendMessageShortcut:"Send message shortcut",insertNewLineShortcut:"Insert new line shortcut",soundPreferences:"Sound Preferences",browserNotifications:"Browser Notifications",notificationsHelpText:"Enabled notifications but not receiving them? <docLink>Check the documentation</docLink>",notificationOptions:{onFirstPromptOnly:"On first prompt only",onEveryPromptCompletion:"On every prompt completion",disableNotificationSounds:"Disable notification sounds",disableBrowserNotifications:"Disable browser notifications"}},sM={account:tM,mfa:aM,deleteAccount:nM,github:iM,googleDrive:rM,chatSettings:oM},lM={title:"Request access to {{appName}}",subtitleDefault:"Ask for access or switch to an account that is already authorized.",subtitleRequested:"You'll be notified by email if your request is approved.",requestAccess:"Request access",requestSubmitted:"Request submitted",loggedInAs:"You're logged in as {{email}}",switchAccount:"Switch account",errorMessage:"Something went wrong. Please try again or switch to a different account.",tooManyAttempts:"Too many attempts. Please try again later.",backToLogin:"Back to login"},cM={title:"Access restricted",subtitle:"You must be a member of this workspace to access the app."},dM={accessRequired:lM,workspaceRestricted:cM},uM={title:"Welcome to Base44",loginWithGoogle:"Log in with Google",loginWithGithub:"Log in with GitHub",loggingIn:"Logging in...",or:"Or",emailLabel:"Email",emailPlaceholder:"Enter your email address",edit:"Edit",lastUsed:"Last Used",ssoEnabled:"SSO is enabled for <strong>{{workspace}}</strong>",ssoClickBelow:"Click below to continue with your organization's login",passwordLabel:"Password",forgotPassword:"Forgot password?",passwordPlaceholder:"Enter your password",checkingAuth:"Checking authentication method...",checking:"Checking...",continue:"Continue",continueWithSSO:"Continue with {{provider}}",logIn:"Log In",noAccount:"Don't have an account?",signUp:"Sign up",verifyEmailFirst:"Please verify your email before logging in. Check your email for the verification code.",resendVerificationCode:"Resend verification code",enterEmailFirst:"Please enter your email address first",invalidEmail:"Please enter a valid email address",ssoError:"SSO configuration error. Please try again.",invalidCredentials:"Invalid email or password",loginFailed:"Login failed. Please try again.",failedResendVerification:"Failed to resend verification code. Please try again.",passwordResetRequired:"For security reasons, you must reset your password before logging in. Check your email for a reset link.",resetLinkSent:"A password reset link has been sent to your email.",resendResetLink:"Resend reset link",failedResendResetLink:"Failed to send reset link. Please try again.",termsAndPrivacy:"<terms>Terms of Service</terms> and <privacy>Privacy Policy</privacy>."},pM={title:"Create your account",agreeToTerms:'By clicking "Sign Up", you agree to our <terms>Terms of Service</terms> and <privacy>Privacy Policy</privacy>.',signUpWithGoogle:"Sign up with Google",signUpWithGithub:"Sign up with GitHub",signingUp:"Signing up...",creatingAccount:"Creating account...",signUpButton:"Sign Up",alreadyHaveAccount:"Already have a Base44 account?",logIn:"Log in",validatingReferral:"Validating referral code...",invalidReferral:"Invalid Referral Code",youveBeenInvited:"You've been invited!",invitedToJoin:"<strong>{{name}}</strong> invited you to join Base44",signUpFreeCredits:"Sign up to get 10 free credits!",signUpBaseDayCredits:"Sign up to get 44 free credits!",letsBuild:"Let's build something amazing together!",registrationFailed:"Registration failed. Please try again.",failedValidateReferral:"Failed to validate referral code",completeVerification:"Please complete the verification",weakPassword:"Weak password"},mM={title:"Reset your password",subtitle:"Enter the email address you used to sign up, and we'll send you a link to reset your password.",backToLogin:"Back to log in",loginEmail:"Login email",emailPlaceholder:"e.g., name@email.com",sending:"Sending...",verifyEmail:"Verify Email",invalidEmail:"Invalid email address",failedSendReset:"Failed to send reset link. Please try again."},gM={title:"Check your email",subtitle:"We've sent password reset instructions to <strong>{{email}}</strong>.",backToReset:"Back to Reset password",checkInfo:"Please check your email for the password reset link.",mayTakeMinutes:"It may take a few minutes to arrive.",goToSignIn:"Go to Sign In",didntGetEmail:"Didn't get the email?",resending:"Resending...",resendEmail:"Resend email",emailNotFound:"Email address not found. Please go back and try again.",newResetSent:"New password reset email sent. Please check your inbox.",failedResendEmail:"Failed to resend email. Please try again."},hM={title:"Set new password",subtitle:"Enter your new password for Base44",newPasswordLabel:"New password",newPasswordPlaceholder:"Enter your new password",confirmPasswordLabel:"Confirm new password",confirmPasswordPlaceholder:"Confirm your new password",resetting:"Resetting...",resetButton:"Reset Password",backToLogIn:"Back to Log In",invalidToken:"Invalid or missing reset token. Please request a new password reset.",passwordsMismatch:"Passwords do not match. Please try again.",weakPassword:"Please create at least an average strength password.",resetSuccess:"Password reset successfully! Redirecting to login...",resetSuccessLogin:"Password reset successfully! Please log in with your new password.",failedReset:"Failed to reset password. Please try again.",invalidOrExpiredToken:"Invalid or expired reset token"},fM={verifyTitle:"Verify your identity",verification:{chooseMethod:"Choose an authentication method",authenticatorApp:"Authenticator app",smsMessage:"SMS message",recoveryCode:"Recovery code",continue:"Continue",backToLogin:"Back to Login",chooseAnotherMethod:"Choose Another Method",verifyViaText:"Verify via Text Message",verifyViaApp:"Verify via Authenticator App",enterRecoveryCode:"Enter the recovery code",rememberDevice:"Remember this device for 30 days",verifying:"Verifying...",verify:"Verify",useRecoveryCode:"Use a Recovery Code",sendingCodeTo:"Sending code to {{phone}}…",enterCodeSentTo:"Enter the code sent to {{phone}}",enterCodeFromApp:"Enter the code from your authenticator app",yourPhone:"your phone",didntReceiveCode:"Didn't receive a code?",resendIn:"Resend in {{seconds}}s",resend:"Resend",enterCompleteRecoveryCode:"Please enter the complete recovery code",enterCompleteCode:"Please enter the complete 6-digit code",verificationFailed:"Verification failed. Please try again.",failedSendCode:"Failed to send code. Please try resending."}},vM={buildingApp:"Building your app",verifyEmailSubtitle:"Verify your email to continue",signUpSubtitle:"Sign up to watch it come to life",loginSubtitle:"Log in to watch it come to life"},bM={completeVerification:"Please complete the security verification"},yM={title:"Verify your email",subtitle:"We sent a verification code to {{email}}",verificationCode:"Verification Code",fillAllFields:"Please fill out all fields.",enterCodeSent:"Enter the verification code sent to your email",verifying:"Verifying...",verifyEmail:"Verify Email",wrongEmail:"Wrong email? Change it",didntReceiveCode:"Didn't receive the code?",resendEmail:"Resend email",emailVerifiedLogin:"Email verified successfully! You can now log in.",emailVerifiedContinue:"Email verified successfully! Please log in to continue.",invalidCode:"Invalid verification code. Please try again.",verificationFailed:"Verification failed. Please try again.",newCodeSent:"New verification code sent to your email.",failedResendCode:"Failed to resend verification code. Please try again."},kM={login:uM,register:pM,forgotPassword:mM,checkEmail:gM,resetPassword:hM,mfa:fM,authModal:vM,turnstile:bM,otp:yM},wM={notFound:"Profile not found",notFoundDescription:"The builder profile @{{username}} doesn't exist."},AM={edit:"Edit",done:"Done",cancel:"Cancel",appCount_one:"{{count}} App",appCount_other:"{{count}} Apps",joined:"Joined {{date}}",namePlaceholder:"Your name",displayNameLabel:"Display Name",usernameLabel:"Username",changeUsername:"Change username",saveChanges:"Save changes",partnerBadge:"Base44 Partner"},SM={label:"Bio",placeholder:"Write a short bio about yourself...",emptyPlaceholder:"Tell visitors about yourself — add a short bio.",hint:"Max. 220 characters",maxChars:"Max. {{max}} characters"},CM={viewTitle:"Apps",appsHeader:"Apps ({{count}})",appsHeaderEmpty:"Apps",featuredCounter_one:"{{count}} featured",featuredCounter_other:"{{count}} featured",editHint:"Select which apps appear on your public profile.",noPublishedApps:"No published apps found. Publish an app first!",noPublishedAppsTitle:"No published apps",noPublishedAppsDescription:"You haven't published any apps just yet. Head over to your workspace to finalize a draft and hit publish so you can showcase it on your profile.",viewMyApps:"View my apps",untitled:"Untitled",updated:"Pinned apps updated!",updateFailed:"Failed to update pinned apps",manageApps:"Manage apps",chooseTitle:"Choose Apps to Display",chooseDescription:"Select up to {{max}} published apps to appear on your public profile",selectAll:"Select all",selectAllCount:"Select all ({{count}})",deselectAll:"Deselect all",deselectAllCount:"Deselect all ({{count}})",saveChanges:"Save",searchApps:"Search apps...",publicBadge:"Public",privateBadge:"Private",showMore:"Show more",showLess:"Show less",maxReached:"Maximum {{max}} apps allowed",close:"Close",noSearchResults:"No apps match your search",updatedRecently:"updated recently"},DM={editTooltip:"Edit social links",addLinks:"Add social links",addLink:"Add link",cancelTooltip:"Cancel",removeTooltip:"Remove",label:"Socials",hint:"Add up to 6 social links",linkLabel:"Link",addCustomLink:"Add custom link",pastePlaceholder:"Paste URL here",enterUsernameOrUrl:"Enter your username or full profile URL",movedTo:"Moved to {{platform}}",addedAsCustom:"Added as custom link",fieldOccupied:"Looks like a {{platform}} link — that field already has a URL",customSlotsFull:"Looks like a {{platform}} link. Remove a custom link to add it."},TM={profileUpdated:"Profile updated!",profileUpdateFailed:"Failed to update profile",usernameClaimed:"Username claimed!",usernameClaimFailed:"Failed to claim username",loadFailed:"Failed to load profile",invalidImageType:"Please upload a valid image (JPG, PNG, GIF, or WebP)",imageTooLarge:"Image must be less than 5MB",avatarUpdated:"Profile image updated!",avatarUploadFailed:"Failed to upload image",avatarRemoveFailed:"Failed to remove image"},EM={title:"Discard changes?",description:"You have unsaved changes that will be lost.",confirm:"Discard"},PM={title:"Change Username",placeholder:"username",checking:"Checking...",available:"Available!",notAvailable:"Not available",urlWarning:"Your profile URL will change to /@{{username}}. Old links will stop working.",cancel:"Cancel",claim:"Claim Username",tryInstead:"Try:"},_M={locationLabel:"Location",locationPlaceholder:"e.g. San Francisco, CA",showEmailLabel:"Display your account email"},xM={title:"Update cover image",description:"Choose one of our custom gradients or upload your own",uploadFile:"Upload custom image",orUseTemplate:"Or use a template",cancel:"Cancel",saveChanges:"Save changes",updated:"Cover image updated!",updateFailed:"Failed to update cover image",uploadFailed:"Failed to upload image",dragToReposition:"Drag to reposition",replaceImage:"Replace Image",reposition:"Reposition"},IM={title:"Activity",mon:"Mon",wed:"Wed",fri:"Fri",less:"Less",more:"More",messages_one:"{{count}} prompt",messages_other:"{{count}} prompts",founderMode:"Founder mode",noActivity:"No activity",onDate:"on {{date}}",showOnProfile:"Show on profile"},RM={customize:"Customize your profile",title:"No public apps yet",description:"Your profile is the best place to share your work with the Base44 community. Select from your existing published apps to display them here, or start building a new project to grow your activity.",anonDescription:"This builder hasn't made any of their apps visible to the public. Check back later to see their latest activity, or explore what other creators are building.",startCreating:"Start Creating",chooseFromApps:"Choose from my apps"},zM={page:wM,header:AM,bio:SM,pinnedApps:CM,social:DM,toast:TM,discardDialog:EM,usernameDialog:PM,details:_M,coverImage:xM,activity:IM,emptyState:RM},MM={title:"AI Agents",beta:"Beta",subtitle:"Build AI agents into your app using Base44's AI agents infrastructure",disabled:"Disabled",setupAgents:"Set up Agents",enableAgents:"Enable Agents",turnOnToggle:"Turn on the toggle to allow agent creation",addFirstAgent:"Add your first Agent",creditsUsed:"{{credits}} credits used",creditsUsedTooltip:"Monthly integration credits used",askChatToCreate:"Ask the chat to create an agent for you. Describe what role the agent should have and what tasks it should perform.",defineInConfig:"Define your agents in local configuration files and sync them with your app using the Base44 CLI.",viewDocumentation:"View documentation",noAgentsYet:"No Agents Yet",promptChatToCreate:"Prompt the chat to create your first AI agent",agentsTab:"Agents",conversationsTab:"Conversations",searchConversations:"Search conversations...",filterAll:"All",filterMine:"Mine",filterUsers:"Users",noConversationsYet:"No conversations yet",noConversationsMatchSearch:"No conversations match your search",tryDifferentSearch:"Try a different search term",goToAgentsTab:"Go to the Agents tab to start a conversation",conversationStarted:"Conversation started",agentConfiguration:"Agent Configuration",guidelines:"Guidelines",tools:"Tools",whatsapp:"WhatsApp",toolsAndCapabilities:"Tools and Capabilities",descriptionLabel:"Description",systemPromptDesc:"This is the system prompt that defines the agent's behavior",briefDescription:"Brief description of what this agent does...",instructions:"Instructions",instructionsDesc:"Specific guidelines and rules the agent should follow",detailedInstructions:"Detailed instructions for the agent...",availableTools:"Available Tools",configureTools:"Configure what tools and data this agent can access",add:"Add",allEntitySlotsUsed:"All Entity Slots Used",addEntityTool:"Add Entity Tool",entityToolDesc:"Database operations and CRUD access",allFunctionSlotsUsed:"All Function Slots Used",addBackendFunction:"Add Backend Function",backendFunctionDesc:"Custom backend logic and integrations",noToolsConfigured:"No tools configured",addToolsDesc:"Add entity tools or backend functions to give the agent capabilities",entityTool:"Entity Tool",selectEntity:"Select entity",allowedOperations:"Allowed operations",deleteWarning:"Careful, deleted data by the agent can't be restored",backendFunction:"Backend Function",selectBackendFunction:"Select backend function",functionDescription:"Function Description",describeFunction:"Describe when and how this function should be used...",whatsappIntegration:"WhatsApp Integration",whatsappDesc:"Connect your agent to WhatsApp for seamless communication",testChat:"Test Chat",addWhatsapp:"Add WhatsApp to Your App",whatsappEnableDesc:"Enable WhatsApp access for your users with a single command",addWhatsappButton:"Add a WhatsApp button for the {{agent}}",sendToChat:"Send to Chat",fullChatCapabilities:"Full Chat Capabilities",fullChatDesc:"All web chat features work seamlessly in WhatsApp, including tools and data access",voiceMediaSupport:"Voice & Media Support",voiceMediaDesc:"Users can send voice notes and images for natural interaction",customNumbers:"Custom Numbers",customNumbersDesc:"Connect your own WhatsApp Business numbers",easyUiIntegration:"Easy UI Integration",easyUiDesc:"Add WhatsApp button to your app with a simple chat command",welcomeMessage:"Welcome Message",welcomeMessageDesc:"Craft a warm greeting that introduces your agent and sets expectations",charCount:"{{count}}/500",editAgent:"Edit Agent",edit:"Edit",startChat:"Start Chat",chat:"Chat",functionCount:"{{count}} function(s)",noDescriptionProvided:"No description provided",entities:"Entities:",activeConversation:"Active conversation",readOnlyConversation:"Read-only conversation",startConversation:"Start your conversation",typeMessageBelow:"Type a message below to begin",typeYourMessage:"Type your message...",cancel:"Cancel",saving:"Saving...",save:"Save",commandAddedToChat:"Command added to chat. Press Enter to send.",failedToSaveAgentConfiguration:"Failed to save agent configuration",promptAddedToChat:"Prompt added to chat",unableToLoadSuggestions:"Unable to load suggestions. Try again later.",createAgent:"Create Agent",createAgentTitle:"Create an Agent",createAgentDescription:"Ask the chat to create an agent for you. Describe what role the agent should have and what tasks it should perform.",manageAgentsAndConversations:"Manage agents and conversations",skills:"Skills",skillsEnabledLimit:"You can enable up to {{count}} skills per agent.",appSkillsTitle:"App Skills",appSkillsDescription:"Reusable instruction skills for agents in this app.",addSkill:"Add Skill",noAppSkillsYet:"No app skills yet. Create one to reuse across agents in this app.",workspaceSkillsTitle:"Workspace Skills",workspaceSkillsDescription:"Shared skills from this workspace. Toggle them on to enable for this agent.",loadingWorkspaceSkills:"Loading workspace skills...",noWorkspaceSkillsAvailable:"No shared workspace skills are currently available.",manageWorkspaceSkills:"Manage workspace skills",workspaceSkillSource:"workspace",appSkillSource:"app",unavailable:"unavailable",addAppSkill:"Add App Skill",editAppSkill:"Edit {{name}}",skillName:"Skill name",skillNameHint:"Use lowercase letters, numbers, and hyphens.",skillNameInvalid:"Name must be lowercase alphanumeric with hyphens, no leading/trailing hyphens (e.g. 'code-review', 'sql-expert').",skillDescription:"Description",skillInstructions:"Instructions",enableForCurrentAgent:"Enable for current agent",enableForCurrentAgentDescription:"This changes the current editor state and is saved with the agent.",createSkill:"Create Skill",saveChanges:"Save Changes",workspaceSkillUnavailableDescription:"This workspace skill is no longer enabled or available.",appSkillUnavailableDescription:"This app skill no longer exists in the app skill library.",skillValidationRequired:"Name, description, and instructions are required",skillCreated:"Skill created",skillUpdated:"Skill updated",failedToSaveSkill:"Failed to save skill",skillSavedButAssignmentsFailed:"Skill saved, but attaching it to the agent failed",skillSavedButAssignmentsRefreshDelayed:"The editor could not refresh automatically. Please reload to verify the latest state.",skillSavedButSyncFailed:"Skill saved, but syncing the agent state failed",skillSavedButSyncRefreshDelayed:"The skill was saved, but the editor could not refresh automatically. Please reload to verify the latest state.",skillSavedStateRefreshed:"Skill saved. The editor was refreshed to match the latest saved state.",skillSavedRefreshDelayed:"Skill saved, but the editor could not refresh automatically. Please reload to verify the latest state.",skillDeleted:"Skill deleted",skillDeletedRefreshDelayed:"The skill was deleted, but the editor could not refresh automatically. Please reload to verify the latest state.",failedToDeleteSkill:"Failed to delete skill",skillLimitReached:"This agent already has the maximum number of enabled skills.",skillTemplatePickerTitle:"Choose a starter skill",startFromScratch:"Start from scratch",startFromScratchDescription:"Create a custom skill with your own instructions.",useTemplate:"Use template",skillTemplates:{refundPolicy:{description:"Template for refund rules, eligibility, and how the agent should collect details before escalating."},supportEscalation:{description:"Template for when to hand off to human support and what summary the agent should prepare."},pricingAndPlans:{description:"Template for explaining plans, billing cadence, upgrades, and when to route enterprise requests."},brandVoice:{description:"Template for tone, writing style, and communication rules so the agent sounds on-brand."}},memory:"Memory",memoryTitle:"Agent Memory",memorySubtitle:"Enable long-term memory so your agent can remember information across conversations",enableMemory:"Enable Memory",enableMemoryDesc:"When enabled, the agent can save and recall information across conversations",memoryScope:"Memory Scope",memoryScopeDesc:"Choose what types of memories the agent can create",memoryScopeGlobalAndUser:"Global & Per User",memoryScopeGlobalAndUserDesc:"Agent can save shared and personal memories",memoryScopeGlobal:"Global Only",memoryScopeGlobalDesc:"Memories shared across all users",memoryScopeUser:"Per User Only",memoryScopeUserDesc:"Memories specific to each user",memoryInstructions:"Memory Instructions",memoryInstructionsDesc:"Guide the agent on when to save memories and what to include",memoryInstructionsPlaceholder:"E.g., Save global memories for product updates, company announcements, and shared knowledge. Save user memories for personal preferences like communication style, tone, and specific interests.",savedMemories:"Saved Memories",refresh:"Refresh",noMemoriesYet:"No memories saved yet",noMemoriesDesc:"Memories will appear here as the agent saves them during conversations",memoryItemDeleted:"Memory item deleted",memoryDeleteFailed:"Failed to delete memory item",defaultDescription:"Default: {{description}}"},NM={writing:"Writing",wrote:"Wrote",reading:"Reading",read:"Read",deleting:"Deleting",deleted:"Deleted",editing:"Editing",edited:"Edited",creating:"Creating",created:"Created",updating:"Updating",updated:"Updated",update:"Update",delete:"Delete",importing:"Importing",imported:"Imported",import:"Import",searching:"Searching",searched:"Searched",searchingForBugs:"Searching for bugs...",searchedBugs:"Searched bugs",install:"Install",installing:"Installing",installed:"Installed",analyzing:"Analyzing",running:"Running",failed:"Failed",run:"Run",settingSecrets:"Setting secrets",setSecret:"Set secret",setSecrets:"Set secrets",testing:"Testing",checking:"Checking",tested:"Tested",checked:"Checked",fetching:"Fetching",fetched:"Fetched",waitingForApproval:"Waiting for approval...",searchedDocsFor:"Searched docs for",searchingDocsFor:"Searching docs for",searchedFor:"Searched for",searchingFor:"Searching for",foundResult_one:"Found {{count}} result",foundResult_other:"Found {{count}} results",toggling:"Toggling",toggled:"Toggled",listing:"Listing",listed:"Listed",approvalRequired:"Approval Required",approve:"Approve",approving:"Approving...",reject:"Reject",rejected:"rejected",previousApproval:"This approval request is from a previous message",query:"Query:",updateWith:"Update with:",importComplete:"Import complete",importingData:"Importing data...",percentComplete:"{{percent}}% complete",recordsProgress:"{{current}} / {{total}} records",preparing:"Preparing...",otherToolsAfterApproval:"Other tools will run after approval",countPackages:"{{num}} packages:",updateAllEntityRecords:"Update all <entity>{{entityName}}</entity> records",updateEntityRecordsMatching:"Update <entity>{{entityName}}</entity> records matching:",deleteAllEntityRecords:"Delete all <entity>{{entityName}}</entity> records",deleteEntityRecordsMatching:"Delete <entity>{{entityName}}</entity> records matching:",importDataFromInto:"Import data from <file>{{fileName}}</file> into <entity>{{entityName}}</entity>",importDataFromSheetInto:"Import data from <file>{{fileName}}</file> (sheet: <sheet>{{sheetName}}</sheet>) into <entity>{{entityName}}</entity>",countRecordsIntoEntity:"{{num}} records into <entity>{{entityName}}</entity>",dataIntoEntity:"data into <entity>{{entityName}}</entity>",countRecordsEntity:"{{num}} records <entity>{{entityName}}</entity>",allEntityRecords:"all <entity>{{entityName}}</entity> records",entityRecords:"<entity>{{entityName}}</entity> records",grepSearching:'Searching "{{pattern}}"...',grepSearchComplete:"Search complete",grepFoundResults_one:"Found {{count}} result",grepFoundResults_other:"Found {{count}} results",grepInFiles_one:"in {{count}} file",grepInFiles_other:"in {{count}} files"},FM={agents:MM,tools:NM},LM={title:"Automations",subtitle:"Build and manage automations in your app.",newAutomation:"New Automation",chooseAutomation:"Choose an automation",selectHowStarts:"Select how this automation will start.",scheduled:"Scheduled",scheduledDescription:"Run this automation on a recurring schedule or at a specific time.",dataEvent:"Data event",dataEventDescription:"Run this automation when a record is created, updated, or deleted.",connector:"Connector",connectorDescription:"Run this automation when a connected integration sends an event.",connectorBetaTooltip:"This connector is free while in beta.",beta:"Beta",connectorNewAutomation:"New Connector Automation",connectorIntegrationType:"Integration",connectorSelectIntegration:"Select an integration",connectorNoIntegrations:"No integrations connected",connectorNoIntegrationsHint:"To enable automation, you need to create an integration first.",connectorCreateIntegration:"Create integration",connectorCreateNewIntegration:"Create new integration",connectorEvents:"Events",connectorSelectEvent:"Select an event",connectorSelectEvents:"Select events to listen for",connectorAvailableEvents:"Available events ({{count}})",connectorType:"Connector",allEvents:"all events",deleteAutomation:"Delete automation?",deleteAutomationDesc:'This will permanently delete "{{name}}" and all its execution history. This action cannot be undone.',delete:"Delete",deleting:"Deleting...",cancel:"Cancel",copyOutput:"Copy output",scheduledType:"Scheduled",dataEventType:"Data event",someRunsFailed:"Some runs failed",reviewLogsOrFix:"Review the logs or let AI fix the errors.",fixing:"Fixing...",fixWithAI:"Fix with AI",failedToGetErrorContext:"Failed to get error context",logsTab:"Logs",noLogsYet:"No logs yet",back:"Back",close:"Close",saving:"Saving...",save:"Save",active:"Active",archived:"Archived",archivedAutomations:"Archived automations",nameAndDescription:"Name and description",typeColumn:"Type",lastRun:"Last run",failed:"Failed",loading:"Loading...",editAutomation:"Edit automation",runNow:"Run now",archive:"Archive",duplicate:"Duplicate",unlockAutomations:"Unlock automations",unlockAutomationsDesc:"To run automations in your app, you need backend functions enabled. Upgrade to enable backend functions and start using automations.",enableBackendFunctions:"Enable backend functions to get started",enableBackendFunctionsDesc:"Automations run backend functions on a schedule or when data changes. Turn on backend functions in Settings to use automations.",openSettings:"Open Settings",createBackendFunction:"Create a backend function to add automations",createBackendFunctionDesc:"To create an automation, you first need a backend function in your code. Write a backend function in your code or ask the chat for help.",noAutomationsYet:"No automations yet",noAutomationsDesc:"Create an automation to run tasks automatically in your app.",noArchivedAutomations:"No archived automations",noArchivedDesc:"Automations you archive or that reach their end date will appear here.",runAutomation:"Run Automation",selectRecord:"Select a <entity>{{entity}}</entity> record to run the automation with.",searchRecords:"Search {{entity}} records...",noRecordsFound:"No {{entity}} records found.",noRecordsMatch:'No records match "{{query}}"',recordsCount:"{{filtered}} of {{total}} records",totalRecords:"{{total}} records",running:"Running...",automationName:"Automation name",describeAutomation:"Describe what this automation does.",functionToRun:"Function to run",selectFunction:"Select a backend function from your code. The function will receive the entity data when the automation fires.",noBackendFunctions:"No backend functions available",selectAFunction:"Select a function",runsWhen:"Runs when",noItems:"No items",selectItem:"Select item",is:"Is",selectEvent:"Select event",automationNameRequired:"Automation name is required.",selectEntity:"Please select an entity.",selectEventType:"Please select at least one event type.",selectFunctionRequired:"Please select a function to run.",newDataAutomation:"New data automation",details:"Details",logsWillAppearAfterFire:"Logs will appear here after this automation fires.",selectFunctionFromCode:"Select a backend function from your code. To add or edit a function, update it in your code or ask the chat for help.",recurring:"Recurring",oneTime:"One Time",repeatsEvery:"Repeats every",minute:"Minute",hour:"Hour",day:"Day",week:"Week",month:"Month",startAt:"Start at",at:"At",repeatsOn:"Repeats on",repeatsOnDay:"Repeats on day",ends:"Ends",never:"Never",on:"On",after:"After",occurrences:"occurrences",runOn:"Run on",atTime:"At time",oneTimeDateRequired:"One-time schedules require a date to be specified.",oneTimeTimeRequired:"One-time schedules require a time to be specified.",oneTimePastError:"One-time schedule date and time cannot be in the past.",minMinutesInterval:"Minimum interval for minute-based schedules is {{min}} minutes.",selectDayForWeekly:"Please select at least one day for weekly schedule.",monthlyDayRequired:"Monthly schedules require a day of month to be selected.",endDateRequired:"End date is required when 'Ends' is set to 'On'.",endDatePast:"End date cannot be in the past.",occurrenceCountMin:"Occurrence count must be at least 1.",newScheduledAutomation:"New scheduled automation",logsWillAppearAfterRun:"Logs will appear here after this automation runs.",description:"Description",nameField:"Name",typeField:"Type",automationUpdated:"Automation updated successfully",automationCreated:"Automation created successfully",failedToSave:"Failed to save automation",functionArgs:"Arguments (JSON)",functionArgsPlaceholder:'{"key": "value"}',functionArgsTooltip:"Optional JSON object passed to the function as additional arguments.",functionArgsInvalidJson:"Arguments must be valid JSON.",advanced:"Advanced",triggerConditions:"Trigger conditions",conditionsSetByAI:"Conditions are configured by the AI builder and cannot be edited manually.",conditionsSummaryError:"Could not load conditions summary.",connectorNoManualIntegrations:"No integrations available for manual creation",connectorNoManualIntegrationsHint:"Some integrations require trigger conditions and can only be created through the AI builder.",suggestedForYou:"Suggested for you",basedOnYourContext:"Based on your app's context",createFromScratch:"Create from scratch"},jM={automations:LM},OM={title:"Integrations",myIntegrations:"My integrations",browse:"Browse",payments:"Payments",failedToLoad:"Failed to load app connections",successfullySwitched:"Successfully switched account to {{name}}",cancelled:"Cancelled",connectionCancelled:"App connection was cancelled",disconnected:"{{name}} has been disconnected",failedToDisconnect:"Failed to disconnect app connection",stripeRemoved:"Stripe integration has been removed",wixPaymentsDisconnected:"Wix Payments has been disconnected",integrationRemoved:"{{name}} has been removed",failedToRemove:"Failed to remove integration",connectedAccountsWarning:"Connected accounts may expose sensitive data to anyone with access.",unlockFeature:"Unlock this feature",unlockFeatureDesc:"This feature is only available on the Builder plan or higher. Upgrade to continue working without limits",upgradeToUseConnector:"Upgrade to use feature",access:"{{name}} Access",disconnectAccount:"Disconnect Account?",disconnectDesc:"Access for <bold>{{email}}</bold> on <bold>{{name}}</bold> will be revoked.<br/>The integration record will be preserved for future reconnection.",disconnecting:"Disconnecting...",disconnect:"Disconnect",removeIntegration:"Remove Integration?",removeDesc:"<bold>{{name}}</bold> will be permanently removed from this app.<br/>To create a connection again, you will need to set it up from scratch.",removing:"Removing...",remove:"Remove",cancel:"Cancel",reject:"Reject",new:"New",done:"Done",success:"Success",error:"Error",setupIntegrations:"Set up Integrations",setupIntegrationsDesc:"Easily link your app to connectors like Google Calendar, Google Drive, Slack, Notion, Salesforce, HubSpot and more.",setupIntegrationsChat:"Just describe what you want to connect in the chat, and it will set it up for you.",viewAccess:"View Access",connecting:"Connecting...",switchAccount:"Switch account",reconnect:"Reconnect",disconnectAccount2:"Disconnect account",use:"Use",examplePrompts:"Example prompts",clickPromptToAdd:"Click a prompt to add it to your chat.",unableToLoadSuggestions:"Unable to load suggestions. Please try again later.",requiresBackendFunctions:"This integration requires backend functions, a feature available only on Builder tier and above. ",seePlans:"See Plans",promptAddedToChat:"Prompt added to chat. Press Enter to send.",connectors:"Connectors",connectorsDesc:"Connect your app to popular services with quick OAuth connections.",searchConnectors:"Search connectors",noSearchResults:"No results for your search",noSearchResultsDesc:"Try using different keywords or check the spelling. You can also sort by name or recently added to browse.",sort:{title:"Sort",mostUsed:"Most used",recentlyAdded:"Recently added",az:"A-Z",za:"Z-A"},revoked:"Revoked",connectionLost:"Connection is lost — please reconnect",configModal:{connectTo:"Connect to {{name}}",configureConnection:"Configure your {{name}} connection",loadingConfig:"Loading configuration...",retryHint:"You can try again.",connect:"Connect",connecting:"Connecting...",validationRequired:"{{name}} is required",validationInvalid:"Invalid {{name}}",fetchError:"Failed to load configuration.",retry:"Retry"},wixPayments:{title:"Wix Payments",live:"Live",disconnected:"Disconnected",acceptingPayments:"Accepting payments",integrationDisconnected:"Integration disconnected",openingWixPayments:"Opening Wix Payments...",popupBlocked:"Wix Payments was blocked by your browser. Use the link below to open Payments Dashboard manually.",errors:{noUrl:"Failed to get Wix Payments URL. Please try again.",fetchFailed:"Failed to open Wix Payments. Please try again.",invalidRedirect:"Failed to open Wix Payments. Please try again."},openDashboard:"Open Dashboard",managePayments:"Manage Payments",disconnect:"Disconnect",disconnectIntegration:"Disconnect Integration?",disconnectDesc:"<bold>Wix Payments</bold> will be disconnected from this app.<br/>You can reconnect it later from the chat.",disconnecting:"Disconnecting...",disconnectButton:"Disconnect",enterNamePrompt:"Please enter your name to continue:",firstNamePlaceholder:"First name",lastNamePlaceholder:"Last name"},stripe:{unableToClaimSandbox:"Unable to claim sandbox",sandboxExpired:"The sandbox may have expired or already been claimed. Please refresh the page.",failedGetClaimUrl:"Failed to get claim URL",pleaseTryAgain:"Please try again or refresh the page.",pendingSetup:"Pending Setup",completeSetupGuide:"Complete the setup guide to accept real payments",live:"Live",stripe:"Stripe",loadingStripe:"Loading...",acceptingPayments:"Accepting real payments",accountDetails:"Stripe account details",hideGuide:"Hide Guide",showGuide:"Show Guide",goToStripe:"Go to Stripe",aboutIntegration:"About Integration",aboutStripeIntegration:"About Stripe Integration",stripeDesc:"Stripe allows you to accept payments, send payouts, and manage your business online. This integration enables you to:",acceptCards:"Accept credit cards and other payment methods",createProducts:"Create products and subscriptions",manageCustomers:"Manage customers and billing",close:"Close",tryTestPayment:"Try a test payment",claimSandbox:"Claim your Stripe sandbox",addLiveKeys:"Add your live API keys from Stripe",copiedCard:"Copied!",testCardCopied:"Test card number copied to clipboard.",failedToCopy:"Failed to copy",copyManually:"Please copy manually: 4242 4242 4242 4242",keysSaved:"API keys saved successfully.",failedSaveKeys:"Failed to save API keys. Please try again.",movedOutOfTestMode:"You've moved out of test mode.",noNeedTestPayments:"No need to run test payments anymore.",useTestCard:"Use this test card to simulate a purchase:",testCardNumber:"4242 4242 4242 4242",anyFutureExpiry:", any future expiry, any 3-digit CVC.",publishAndOpen:"Publish your app and open it in a new tab to test the checkout experience",copyCardNumber:"Copy Card Number",connectStripeDesc:"Connect to your existing Stripe account or create a new one to start accepting real payments.",claimAndGoLive:"Claim & Go Live",copyLiveKeys:"Copy your live Publishable and Secret keys from your <link>Stripe Dashboard</link> to finish setup and enable real payments in your app.",publishableKey:"Publishable key",secretKey:"Secret key",enterValue:"Enter value",savingKeys:"Saving...",saveApiKeys:"Save API keys",completeStepInStripe:"To complete this step, claim sandbox and finish setup in Stripe"}},BM={title:"App Integrations",subtitle:"Connect your app to third-party services and extend its functionality.",integrationCatalog:"Integration Catalog",payments:"Payments",zapier:"Zapier",couldNotLoad:"Could not load integration details. Please try again.",loadingDetails:"Loading details...",backToCatalog:"Back to Catalog",integrationAdded:"Integration Added (Placeholder)",wouldBeAdded:"{{name}} would be added to your app. Secret values logged.",requiresConfiguration:"Requires Configuration",requiresSecrets:"This integration requires {{count}} secret value(s) to be configured.",addToApp:"Add to App",paymentProcessing:"Payment Processing",paymentProcessingDesc:"Accept payments in your app with popular payment processors. Coming Soon!",leadingPaymentPlatform:"Leading payment platform",globallyRecognized:"Globally recognized payments",configurePayment:"Configure payment providers to enable subscriptions, one-time purchases, and more in your application.",zapierIntegration:"Zapier Integration",zapierDesc:"Connect your app with thousands of other services through Zapier.",automateWithZapier:"Automate with Zapier",linkBase44:"Link Base44 to your favorite apps like Slack, Google Sheets, Mailchimp, and more.",exploreOnZapier:"Explore Base44 on Zapier",configureIntegration:"Configure {{name}}",configureDesc:"This integration requires some secret values to be set up. These are stored securely and encrypted.",saveAndAdd:"Save and Add Integration"},UM={title:"Skills",description:"Add skills to shape how the AI builds your apps.",manage:"Manage"},qM=JSON.parse(`{"title":"Connectors","connectorsForAppUsers":"Connectors For App Users","connectorsForAppUsersDesc":"Set up connectors so app users can link personal accounts to apps in this workspace.","connectorsForAppUsersDialogDesc":"Let app users connect their personal accounts to apps in this workspace.","addConnector":"Add Connector","browseConnectors":"Browse Connectors","noConnectorsYet":"No connectors yet","noConnectorsYetDesc":"Add connectors so app users can link their personal accounts.","view":"View","edit":"Edit","connections":"Connections","addConnection":"Add Connection","viewConnector":"View Connector","connectorName":"Connector name","connector":"{{name}} Connector","examplePrompts":"Example Prompts","back":"Back","configureConnection":"Configure your connection","configureConnectionDesc":"Provide your Client ID, Secret, and permissions.","connectorNameDesc":"Enter a short name to identify this connector","clientId":"Client ID","clientSecret":"Client Secret","clientSecrets":"Client Secrets","scopes":"Scopes","scopesDesc":"Enter the scopes your app needs. Write each scope on a separate line.","scopesPlaceholder":"Enter scopes, one per line","scopesPlaceholderExample":"e.g.\\nhttps://www.googleapis.com/auth/calendar.readonly\\nemail","connectionConfig":"Connection Configuration","cancel":"Cancel","close":"Close","addingConnector":"Adding...","savingConnector":"Saving...","saveChanges":"Save Changes","deleteConnector":"Delete Connector","deleteConfirm":"Delete {{name}}? This action cannot be undone.","deleting":"Deleting...","addConnectionTitle":"Add {{name}} Connection","editConnectionTitle":"Edit {{name}} Connection","connectorReadOnly":"{{name}} Connector","readOnlyDesc":"Read-only view of connector details","builtInConnectors":"Built in Connectors","promptExamples":"Prompt examples to get started","adminOnlyTooltip":"Only workspace admins or owners can connect integrations for app users","settingUp":"Setting up connector...","configured":"Connector configured","setUp":"Set up {{type}} app user connector","setUpGeneric":"Set up app user connector","connecting":"Connecting...","connect":"Connect","reject":"Reject","workspaceLevelNote":"This integration will be accessible at the workspace level and applied to all applications created within that workspace.","previousMessage":"This connector setup is from a previous message","toastErrorTitle":"Error","toastCreated":"Connector created","toastCreateFailed":"Failed to create connector","toastDuplicateName":"A connector with this name already exists in this workspace","toastUpdated":"Connector updated","toastUpdateFailed":"Failed to update connector","toastDeleted":"Connector deleted","toastDeleteFailed":"Failed to delete connector","configFetchFailed":"Failed to load connection configuration. Required fields may be missing.","retry":"Retry","toastLoadFailed":"Failed to load OAuth connectors","namePlaceholder":"e.g. Marketing {{label}}","clientIdPlaceholder":"Enter OAuth client ID","clientSecretPlaceholderNew":"Enter new client secret","clientSecretPlaceholder":"Enter OAuth client secret","extraDetails":{"googlecalendar":{"longDescription":"Connect to Google Calendar to let your app users view, create, and manage calendar events. Sync schedules, automate meeting creation from form submissions, and build scheduling workflows.","examplePrompt0":"Sync upcoming meetings to an in-app dashboard.","examplePrompt1":"Create calendar events from form submissions.","examplePrompt2":"Show a daily agenda view for the logged-in user.","examplePrompt3":"Send reminders before upcoming events."},"slack":{"longDescription":"Connect to Slack to share messages and create canvases directly to simplify collaboration and boost productivity. Search and retrieve messages, channels, threads, files, and users, giving Claude the context to streamline your work.","examplePrompt0":"Sync new app users to a Slack channel.","examplePrompt1":"Send build status updates to #devops.","examplePrompt2":"Post app errors to #alerts channel.","examplePrompt3":"Notify team on new customer feedback."},"salesforce":{"longDescription":"Connect to Salesforce to access contacts, leads, opportunities, and custom objects. Let your app users view and update their CRM data, track deals, and automate sales workflows.","examplePrompt0":"Show a dashboard of open opportunities.","examplePrompt1":"Create a new lead from a form submission.","examplePrompt2":"Sync contact updates back to Salesforce.","examplePrompt3":"Notify the team when a deal closes."},"hubspot":{"longDescription":"Connect to HubSpot to manage contacts, companies, deals, and marketing campaigns. Let your app users sync their CRM data, track engagement, and automate marketing workflows.","examplePrompt0":"Display a list of recent deals in the app.","examplePrompt1":"Add new contacts from sign-up forms.","examplePrompt2":"Sync email campaign results to a dashboard.","examplePrompt3":"Update deal stages from the app."},"notion":{"longDescription":"Connect to Notion to access pages, databases, and workspace content. Let your app users read and update their Notion workspace, sync structured data, and automate content workflows.","examplePrompt0":"Pull task lists from a Notion database.","examplePrompt1":"Create new pages from form submissions.","examplePrompt2":"Sync project status updates to Notion.","examplePrompt3":"Display Notion content inside the app."},"slackbot":{"longDescription":"Connect a Slack Bot to post messages as a branded bot with a custom name and icon. Respond to app mentions, use slash commands, and automate bot-centric workflows in your Slack workspace.","examplePrompt0":"Post daily standup summaries to #general.","examplePrompt1":"Respond to slash commands with app data.","examplePrompt2":"Send automated alerts when tasks are overdue.","examplePrompt3":"Notify channels when new orders come in."},"googledrive":{"longDescription":"Connect to Google Drive to upload, organize, and manage files. Let your app users save generated documents, back up data, and access their Drive files directly from your app.","examplePrompt0":"Save generated reports to a shared Drive folder.","examplePrompt1":"Upload user-submitted files to Google Drive.","examplePrompt2":"List recent files from a specific folder.","examplePrompt3":"Back up app data exports to Drive automatically."},"gmail":{"longDescription":"Connect to Gmail to send, read, and manage emails programmatically. Let your app users automate email workflows, read inbox messages, and send personalized emails from their own account.","examplePrompt0":"Send a confirmation email after form submission.","examplePrompt1":"Display the user's latest inbox messages.","examplePrompt2":"Auto-reply to emails matching certain criteria.","examplePrompt3":"Draft and send personalized outreach emails."},"googlesheets":{"longDescription":"Connect to Google Sheets to read, write, and update spreadsheet data. Let your app users sync records, import data from sheets, and export app data to their spreadsheets.","examplePrompt0":"Import product data from a Google Sheet.","examplePrompt1":"Export daily sales reports to a spreadsheet.","examplePrompt2":"Sync form submissions to a tracking sheet.","examplePrompt3":"Read pricing data from a shared spreadsheet."},"googleslides":{"longDescription":"Connect to Google Slides to create and edit presentations. Let your app users generate slide decks from templates, add dynamic content, and automate presentation creation.","examplePrompt0":"Generate a pitch deck from form inputs.","examplePrompt1":"Add a new slide with weekly metrics.","examplePrompt2":"Create presentations from report templates.","examplePrompt3":"Update slide content with the latest data."},"googledocs":{"longDescription":"Connect to Google Docs to create, read, and edit documents. Let your app users generate contracts, fill in templates, and manage documents directly from your app.","examplePrompt0":"Generate a contract from a template.","examplePrompt1":"Create meeting notes from form data.","examplePrompt2":"Fill in a document template with user details.","examplePrompt3":"Append new content to an existing doc."},"googlebigquery":{"longDescription":"Connect to Google BigQuery to run SQL queries and analyze large datasets. Let your app users query their data warehouse, build dashboards, and pull analytics into your app.","examplePrompt0":"Query sales data and display in a chart.","examplePrompt1":"Pull user analytics from BigQuery tables.","examplePrompt2":"Run a scheduled report from warehouse data.","examplePrompt3":"Show top-performing products from query results."},"linkedin":{"longDescription":"Connect to LinkedIn to access profile data and share posts. Let your app users publish updates, retrieve professional profiles, and automate social media workflows on LinkedIn.","examplePrompt0":"Post company updates to LinkedIn automatically.","examplePrompt1":"Pull profile details for the logged-in user.","examplePrompt2":"Share blog posts to LinkedIn from the app.","examplePrompt3":"Display LinkedIn profile info on a dashboard."},"tiktok":{"longDescription":"Connect to TikTok to access profile info, follower stats, and video data. Let your app users track their TikTok performance and browse their published videos.","examplePrompt0":"Show follower count and profile stats.","examplePrompt1":"List the user's most recent TikTok videos.","examplePrompt2":"Display video performance metrics on a dashboard.","examplePrompt3":"Track follower growth over time."},"discord":{"longDescription":"Connect to Discord to send messages, manage servers, and interact with guilds and channels. Let your app users automate notifications, post updates, and integrate with their Discord community.","examplePrompt0":"Send order notifications to a Discord channel.","examplePrompt1":"Post app alerts to a #notifications channel.","examplePrompt2":"List available channels in a Discord server.","examplePrompt3":"Notify the team when a new user signs up."},"wix":{"longDescription":"Connect to Wix to access site data, manage content, and interact with Wix business solutions like Stores, Bookings, and CRM. Let your app users sync products, orders, and customer data.","examplePrompt0":"Sync Wix store products to the app.","examplePrompt1":"Pull recent orders from Wix Stores.","examplePrompt2":"Display booking availability from Wix Bookings.","examplePrompt3":"Manage Wix CRM contacts from your app."},"github":{"longDescription":"Connect to GitHub to access repositories, manage issues and pull requests, and automate development workflows. Let your app users track code changes, create issues, and streamline their dev process.","examplePrompt0":"List open issues from a repository.","examplePrompt1":"Create a new issue from a bug report form.","examplePrompt2":"Show recent pull requests on a dashboard.","examplePrompt3":"Track commit activity across repositories."},"wrike":{"longDescription":"Connect to Wrike to manage projects, tasks, and team collaboration. Let your app users create and update tasks, track project progress, and coordinate work across teams.","examplePrompt0":"Create tasks from form submissions.","examplePrompt1":"Display project timelines on a dashboard.","examplePrompt2":"Update task status from within the app.","examplePrompt3":"Show team workload and task assignments."},"box":{"longDescription":"Connect to Box to upload, manage, and share files and folders. Let your app users store documents securely, organize files, and collaborate on content in Box.","examplePrompt0":"Upload generated documents to a Box folder.","examplePrompt1":"List files in a shared Box directory.","examplePrompt2":"Download files from Box into the app.","examplePrompt3":"Share a Box file link with team members."},"clickup":{"longDescription":"Connect to ClickUp to manage tasks, projects, and team workflows. Let your app users create tasks, update statuses, and track project progress directly from your app.","examplePrompt0":"Create ClickUp tasks from form submissions.","examplePrompt1":"Show task board status on a dashboard.","examplePrompt2":"Update task priorities from the app.","examplePrompt3":"List overdue tasks for the current sprint."},"google_analytics":{"longDescription":"Connect to Google Analytics to access website traffic, user behavior, and marketing performance data. Let your app users view analytics reports and track key metrics from within your app.","examplePrompt0":"Display page views and sessions on a dashboard.","examplePrompt1":"Show top traffic sources for the past week.","examplePrompt2":"Track conversion rates across campaigns.","examplePrompt3":"Pull user demographics and behavior data."},"outlook":{"longDescription":"Connect to Outlook to send and read emails, manage calendar events, and access Microsoft 365 mail and calendar. Let your app users automate email workflows and sync their schedule.","examplePrompt0":"Send follow-up emails from the app.","examplePrompt1":"Display upcoming calendar events.","examplePrompt2":"Create calendar events from form submissions.","examplePrompt3":"Show recent emails on a dashboard."},"linear":{"longDescription":"Connect to Linear to create and manage issues, projects, and cycles. Let your app users track team workflows, organize sprints, and stay on top of engineering progress.","examplePrompt0":"Create Linear issues from bug report forms.","examplePrompt1":"Show active sprint issues on a dashboard.","examplePrompt2":"Update issue status from within the app.","examplePrompt3":"Track cycle progress and team velocity."},"dropbox":{"longDescription":"Connect to Dropbox to upload, download, and manage files and folders. Let your app users store files in the cloud, sync data, and access their Dropbox content from your app.","examplePrompt0":"Upload exported reports to Dropbox.","examplePrompt1":"List files in a specific Dropbox folder.","examplePrompt2":"Download shared files into the app.","examplePrompt3":"Sync app data backups to Dropbox."}},"builtIn":{"sendEmail":{"name":"Send Emails","rowDescription":"Send emails to people in your Base44 app with customizable sender names and rich HTML content.","subtitle":"Send automated emails to your users directly from your app.","longDescription":"Send emails automatically from your app as part of workflows or automations. This integration can be triggered from flows, backend functions, or agents to send notifications such as confirmations, alerts, summaries, or access links to users.","examplePrompt0":"When a support ticket is updated to \\"resolved\\", use SendEmail to notify the requester with a summary of the resolution.","examplePrompt1":"Create a weekly automation that uses SendEmail to send admins a digest of new orders and key metrics.","examplePrompt2":"Add a daily flow that uses SendEmail to send admins a summary of new signups in this app.","examplePrompt3":"Create an automation that uses SendEmail to remind users 24 hours before their booked appointment."},"uploadFile":{"name":"Upload File","rowDescription":"Let people upload files to your app. Use the returned file URL in other integrations or workflows.","subtitle":"Let people upload files to your app. Use the returned file URL in other integrations or workflows.","longDescription":"Allow users to upload files to your app and attach them to records. This integration powers upload components so you can collect documents, images, receipts, contracts, screenshots, profile pictures, CSV files, or spreadsheets, and store only the secure file URL in your data.","examplePrompt0":"Add a file upload field to this form using Upload File and save the file URL on the related record.","examplePrompt1":"Create a page where users can upload profile pictures with Upload File and store the image URL on their user entity.","examplePrompt2":"Set up an upload area for CSV files using Upload File so I can import those files later into my data tables."},"invokeLlm":{"name":"Invoke LLM","rowDescription":"Generate AI responses using built-in language models, prompts, files, and structured outputs.","subtitle":"Generate AI responses using built-in language models, prompts, files, and structured outputs.","longDescription":"Use a language model to generate responses from prompts. This integration can return structured JSON outputs, analyze images, use file attachments as context, and perform web search when needed. It can be used to power agents, workflows, and other AI-driven features in your app.","examplePrompt0":"Generate AI responses from user input using Invoke LLM and show the answer on this page.","examplePrompt1":"Use Invoke LLM to summarize long feedback messages into three bullet insights stored on each Feedback record.","examplePrompt2":"Add a \\"rewrite this text\\" feature that sends user text to Invoke LLM and returns a clearer, friendlier version.","examplePrompt3":"Use Invoke LLM to classify each support ticket as \\"bug\\", \\"feature request\\", or \\"question\\" and save the label on the ticket record."},"generateImage":{"name":"Generate Image","rowDescription":"Create images from detailed text prompts. Returns a URL to the generated image.","subtitle":"Simply provide a text prompt describing the image you want, and it returns a URL to the generated image.","longDescription":"Generate images using AI from text prompts or flows in your app. This integration lets your app create cover images, thumbnails, avatars, product placeholders, or simple marketing visuals on demand without connecting to an external image provider.","examplePrompt0":"Use Generate Image to create a default product image when a new product is added without photos.","examplePrompt1":"Add a feature where users can enter a short description and Generate Image returns a cover image URL saved on their post.","examplePrompt2":"Create a flow that uses Generate Image to generate avatar images for new users based on their favorite color or theme."},"extractData":{"name":"Extract data from uploaded files","rowDescription":"Pull structured data from uploaded files (CSV, PNG, JPG, JPEG, PDF) using JSON schemas. Useful for importing data in bulk.","subtitle":"Pull structured data from uploaded files (CSV, PNG, JPG, JPEG, PDF) using JSON schemas. Useful for importing data in bulk.","longDescription":"Automatically extract structured data from files uploaded to your app and store it in your entities. This integration reads documents and spreadsheets and turns their contents into structured fields you can use in records, reports, or automations.","examplePrompt0":"When someone uploads a PDF invoice, use Extract Data from Uploaded Files to pull out the vendor, total amount, and due date into an Invoices entity.","examplePrompt1":"Use Extract Data from Uploaded Files to read a CSV of contacts and create one contact record per row.","examplePrompt2":"After a user uploads a receipt image, use Extract Data from Uploaded Files to extract the merchant, date, and line items into a structured Expenses record."},"whatsapp":{"name":"WhatsApp","rowDescription":"Connect your agent to WhatsApp so people can message your app's agent directly from their phone, without even opening the app.","subtitle":"Connect your agent to WhatsApp so people can message your app's agent directly from their phone, without even opening the app.","longDescription":"Connect your agent to WhatsApp so people can message your app's agent directly from their phone. Use this integration to handle support, collect data, or send updates over WhatsApp while the agent calls your app's data and workflows behind the scenes.","examplePrompt0":"Connect my support agent to WhatsApp so customers can ask questions there and the agent replies using my app's knowledge.","examplePrompt1":"Set up a WhatsApp flow where new messages create or update records in my Contacts entity and the agent confirms the details.","examplePrompt2":"When an order status changes to \\"shipped\\", have the agent send a WhatsApp message with the tracking link and key order info."}}}`),VM={title:"Connectors For App Users",description:"Set up connectors so app users can link their personal accounts.",manage:"Manage"},$M={connections:OM,integrations:BM,skillsBanner:UM,oauthConnectors:qM,oauthConnectorsBanner:VM},WM={importSuccessful:"Import Successful",importSuccessfulMsg:"Successfully imported {{count}} {{name}} records",importFailed:"Import Failed",exportSuccessful:"Export Successful",exportSuccessfulMsg:"Successfully exported entities to CSV",exportFailed:"Export Failed",moveAllToTrash:"Move All Records to Trash",moveAllToTrashConfirm:"Are you sure you want to move all record(s) to trash? You can restore them later from the trash.",moveToTrash:"Move to Trash",success:"Success",allMovedToTrash:"All records moved to trash successfully",error:"Error",add:"Add",addItem:"Add Item",import:"Import",export:"Export",schema:"Schema",recentlyDeleted:"Recently Deleted",deleteAll:"Delete All",permissions:"Permissions",permissionsDesc:"Create rules to control who can read and write records. Multiple rules are combined with OR logic.",saveRules:"Save Rules",permissionsIssueDetected:"Permissions issue detected",learnMoreAboutPermissions:"<a>Learn more <icon/></a> about permissions and security rules",customize:"Customize",apply:"Apply",checkingPermissions:"Checking permissions security",failedCheckPermissions:"Failed to check permissions",permissionsCheckPassed:"Permissions check passed",recommendedRules:"Recommended rules",editRecord:"Edit {{entity}}",addNewRecord:"Add New {{entity}}",test:"Test",production:"Production",filters:"Filters",schemaEditor:"Schema Editor",noRecordsFound:"No records found",getStartedAdding:"Get started by adding your first record.",loadingEntity:"Loading {{entity}}..."},GM={production:"Production",test:"Test"},HM={back:"Back",trashTitle:"{{entity}}: Trash",test:"(Test)",production:"(Production)",trashDescription:`View, restore or permanently delete items.
Items are permanently deleted after 30 days.`,permanentlyDelete:"Permanently Delete Record",permanentlyDeleteConfirm:"Are you sure you want to permanently delete this record? This action cannot be undone.",deletePermanently:"Delete Permanently",restoreSelected:"Restore Selected Records",restoreSelectedConfirm:"Are you sure you want to restore {{count}} selected record(s)?",restore:"Restore",restoreAll:"Restore All Records",restoreAllConfirm:"Are you sure you want to restore all records in the trash?",restoreAllBtn:"Restore All",deletedDate:"Deleted Date",actions:"Actions",failedToLoad:"Failed to load deleted records",tryAgain:"Try Again",loadingDeleted:"Loading deleted records...",noDeletedRecords:"No deleted records found",restoreCount:"Restore {{count}} Selected",restoring:"Restoring..."},YM={data:WM,toolbar:GM,trash:HM},KM=JSON.parse(`{"title":"Domains","subtitle":"Buy, connect and manage your domains.","learnMore":"Learn more","expired":"Expired {{days}} days ago","expiresIn":"Expires in {{days}} days","lastChecked":"Last checked: {{time}}","domainLinked":"Domain linked","domainLinkedMsg":"Domain has been linked to your project","errorLinkingDomain":"Error linking domain","linking":"Linking...","linkDomain":"Link Domain","checkStatus":"Check Status","checking":"Checking...","verifyDomain":"Verify","verifying":"Verifying...","unlinkDomain":"Unlink Domain","unlinking":"Unlinking...","unlinked":"Unlinked","domainActive":"Domain Active","waitingDns":"Waiting for DNS Propagation","verified":"Verified","error":"Error","pending":"Pending","domainUnlinked":"Domain unlinked","domainUnlinkedMsg":"Domain has been unlinked from your project","errorUnlinkingDomain":"Error unlinking domain","domainDeleted":"Domain deleted","errorDeletingDomain":"Error deleting domain","errorCheckingStatus":"Error checking status","verificationInitiated":"Verification initiated","checkBackMinutes":"Please check back in a few minutes","errorVerifyingDomain":"Error verifying domain","deleteDomain":"Delete domain","deleteConfirm":"Are you sure you want to delete?","deleting":"Deleting...","unlinkDialogDescription":"This domain was purchased through Base44.\\n\\nIt will remain listed under your domains but will no longer be connected to your project.","wantToUseDomain":"Want to use your domain?","customDomainsAvailable":"Custom domains are available on our Builder plan and above.<br/>Upgrade to connect your domain to this app.","viewPlans":"View Plans","getNewDomain":"Get a new domain","getNewDomainDescription":"Make your app look professional with a unique domain.","suggestedForApp":"Suggested for your app: <bold>{{domain}}</bold>","suggestedForApp_prefix":"Suggested for your app:","buyNewDomain":"Buy new domain","buyAnother":"Buy another","buyThisDomain":"Buy this domain","orConnectExisting":"Or connect an existing domain you already own","connectExistingDomain":"Connect existing domain","getYourCustomDomain":"Get your custom domain","upgradeDescription":"Custom domains are available on our Builder plan and above.","upgradeYourPlan":"Upgrade your plan","processing":"Processing...","loading":"Loading...","domainLimitReached":"Domain Limit Reached","domainLimitMsg":"You have reached the maximum of {{max}} domains for this app ({{current}}/{{max}}).\\nPlease remove some domains before adding new ones.","noCustomDomainYet":"You haven't connected a custom domain yet","connectDescription":"Connect your Base44 app to your own domain to put your brand front and center, and make your app easy to find and share.","buyDomain":"Buy Domain","neverExpires":"Never Expires","editUrl":"Edit URL","domainPurchased":"Domain Purchased!","domainPurchasedMsg":"Your domain {{domain}} was purchased successfully. Waiting for it to appear in your domains...","domainPurchaseFailed":"Domain Purchase Failed","purchaseFailedMsg":"Purchase failed for {{domain}}.","domainLimitReachedToast":"Domain limit reached","domainLimitToastMsg":"You can only have up to {{max}} domains per app. Please remove some domains first.","domainAddedSuccessfully":"Domain added successfully.","verifyToComplete":"Please verify your domain to complete setup.","failedToConnect":"Failed to connect your domain","connectYourDomain":"Connect","builtInDomain":"Built-in URL","customDomains":"Custom domains","adminCanAdd":"Admin: can add any domain","domainDisabled":"Domain disabled","domainEnabled":"Domain enabled","domainDisabledMsg":"Domain has been disabled and will no longer serve traffic.","domainEnabledMsg":"Domain has been re-enabled and will resume serving traffic.","errorTogglingDomain":"Error toggling domain","disabledBadge":"Disabled","enableDomain":"Enable","disableDomain":"Disable","enableDomainTitle":"Enable domain (admin)","disableDomainTitle":"Disable domain (admin)","errorFetchingDomains":"Error fetching domains","cancel":"Cancel","cannotPurchase":"Cannot purchase domain","domainPurchaseDisabled":"Domain purchase is currently disabled","entriNotReady":"Entri is not ready yet. Please try again in a moment.","errorPurchasingDomain":"Error purchasing domain","loadingEntri":"Loading Entri...","addNewDomain":"Add New Domain","enterDomainFormat":"Enter your domain name below. Make sure it follows the format: app.example.com","enterDomainPlaceholder":"Enter domain (e.g., app.example.com)","invalidDomain":"This doesn't look like a valid domain.\\nEnter a valid domain, e.g. example.com or app.example.com.","domainAlreadyConnected":"This domain is already connected to your app.","configureDnsAtRegister":"Configure DNS at register","addDomain":"Add Domain","adding":"Adding...","domainConnectionNeeded":"Domain connection needed","retryFromEmailSettings":"Please retry from the email domain settings.","emailDomainSubmitted":"Email domain submitted.","addDnsRecords":"Please add DNS records to your domain provider.","verificationMayTake48h":"Verification may take up to 48 hours.","senderDetailsUpdated":"Sender details updated.","editSenderDetails":"Edit sender details","setSenderDetails":"Set your sender details","saveChanges":"Save Changes","connectDomain":"Connect Domain","saving":"Saving...","connecting":"Connecting...","usersWillGetEmails":"Your users will get emails from these sender details.","senderName":"Sender name","customAddress":"Custom address","noReply":"no-reply","noReplyEmailAddress":"no-reply@base44-apps.com","domain":"Domain","copyToClipboard":"Copy to clipboard","addCnameRecord":"Add CNAME record: ","wwwToDomain":"www → base44.onrender.com","addAnameRecord":"Add ANAME/ALIAS record: ","emptyOrAtDomain":"empty or @ → base44.onrender.com","ifNoAnameSupport":"If your DNS provider doesn't support ANAME/ALIAS, use A record:","aRecordIp":"@ → 216.24.57.1","removeAaaaRecords":"Remove any AAAA records from your domain while configuring DNS. AAAA records map to an IPv6 address, and Base44 uses IPv4. These records can cause unexpected behavior for your custom domain.","dnsChangesNote":"Please note, after adding DNS records, it may take some time for changes to fully propagate across the internet. During this time, the domain may not work properly.","addDnsRecordsFor":"1. Add these DNS records to your domain provider for ","type":"Type","nameColumn":"Name","hostColumn":"Host","tabAnameAlias":"ANAME/ALIAS","tabARecord":"A record","addRecordsStepIntro":"Add these records in your provider's dashboard to finish setup:","removeAaaaShort":"Be sure to remove any AAAA (IPv6) records, as they can block connections.","customDomainStep2Verify":"Once you've updated all the records in your provider's dashboard, click '<bold>Verify Domain</bold>'. DNS changes may take up to 48-78 hours to propagate.","closeModal":"Close","verifyDomainButton":"Verify domain","dnsTargetFallback":"base44.onrender.com","value":"Value","onceConfiguredVerify":"2. Once configured, click '<bold>Verify</bold>' on the email domain card to verify the setup. DNS changes may take up to 48-78 hours to propagate.","emailDnsChangesNote":"Please note, after adding DNS records, changes may take up to 48 hours to propagate. During this time, emails will be sent from current email address.","configureDnsForEmail":"Configure DNS for email domain","connectDomainDns":"Connect your domain through your DNS provider","followInstructions":"Follow the instructions below to configure DNS records.","addRecordsInProvider":"Add these records in your provider's dashboard to finish setup.","done":"Done","needHelp":"Need help? Create a ticket at ","supportSystem":"support system","urlUpdated":"URL updated","customUrlRemoved":"Custom url removed. Your app is now available at {{url}}","appAvailableAt":"Your app is now available at {{url}}","urlAlreadyTaken":"This URL is already taken. Try one of the suggestions below, or enter a different one.","urlAlreadyTakenNoSuggestions":"This URL is already taken. Please try a different one.","suggestedAlternatives":"Available alternatives:","urlReserved":"This URL is reserved. Please try a different one.","urlInvalid":"This URL is invalid. Please try a different one.","slugInvalidClient":"This URL is invalid. Use lowercase letters, numbers, and hyphens only","slugResetToDefault":"Slug reset to default","errorResettingSlug":"Error resetting slug","failedResetSlug":"Failed to reset to default slug","editUrlTitle":"Edit URL","builtInDomainLabel":"Base44 Built-in URL","resetToDefault":"Reset to default","urlEditingRequiresPlan":"URL editing requires a starter plan. ","upgradeToPremium":"Upgrade to Premium","changing":"Changing...","change":"Change","emailDomain":"Email domain","sendingFromDefault":"Sending from the default domain costs 1 integration credit per email. Using a custom domain costs 2 integration credits.","useCustomDomain":"Use your custom domain","sendingFrom":"Sender Name: {{name}}","connectDomainForCustom":"Connect a domain to use a custom sender address.","buyADomain":"Buy a domain","dnsConfiguration":"DNS configuration","pleaseWaitTryAgain":"Please wait a moment and try again.","dnsConfigFailed":"DNS configuration failed","dnsPleaseTryLater":"Please try again later.","verificationFailed":"Verification failed","dnsNotVerified":"DNS records not yet verified. Please check your DNS configuration and try again.","domainVerificationFailed":"Domain verification failed","couldntVerifyDns":"We couldn't verify your DNS records. Please check them and try again.","completeSetup":"Complete Setup","opening":"Opening...","cancelling":"Cancelling...","connectionFailed":"Connection failed","retry":"Retry","retrying":"Retrying...","couldntCompleteDns":"Couldn't complete DNS setup. Please try again.","couldntConnectEmail":"Couldn't connect the domain to the email provider. Please try again.","pendingVerification":"Pending verification","emailBeingVerified":"Your email address is being verified.","makeSureDnsCorrect":"Make sure DNS records added correctly to your domain provider.","verify":"Verify","notConfigured":"Not Configured","active":"Active","editSenderDetailsAction":"Edit Sender Details","detachCustomDomain":"Detach custom domain","suspended":"Suspended","disabled":"Disabled","blocked":"Blocked","propagationBlocked":"Propagation Blocked","propagationBlockedTooltip":"DNS propagation can take a while. Compare your DNS records with our instructions if something still looks wrong.","pendingConnection":"Pending connection","completeSetupToSend":"Complete setup to start sending emails from your domain. Emails are currently sent from ","emailCurrentlySentFrom":"Your email address is being verified. Emails are currently sent from ","dnsNotVerifiedYet":"DNS records haven't been verified yet. Make sure they're set correctly, then click 'Verify'.","couldntConnectMakeSure":"Couldn't connect the domain to the email provider. Make sure DNS records added correctly to your domain provider and try again.","base44Domain":"Base44 Domain","maxDomainsReached":"Maximum of {{max}} domains reached for this app","viewDnsRecords":"View DNS records","save":"Save","urlHint":"Use lowercase letters, numbers, and hyphens only","copyUrl":"Copy URL","builtInUrlTooltip":"Your app will always be available at this URL.","builderPlanRequired":"This feature is available on our Builder plan and above.","upgradeBannerText":"Custom domains require a Builder plan or higher. Upgrade to enable them.","upgradeToUseDomain":"Upgrade your plan to use this domain.","emailDomainPurchasedOnly":"Email domain setup is currently available only for domains purchased through Base44.","somethingWentWrong":"Something went wrong","failedToGetPurchaseConfig":"Failed to get purchase config","errorEnablingEmail":"Error enabling email","failedToEnableEmail":"Failed to enable email","errorUpdatingSenderDetails":"Error updating sender details","failedToUpdateSenderDetails":"Failed to update sender details","errorReplacingDomain":"Error replacing domain","failedToReplaceDomain":"Failed to replace domain","failedToAddDomain":"Failed to add domain","processingPurchase":"Processing purchase...","subscriptionRequired":"Subscription Required"}`),ZM={domains:KM},JM={title:"Logs Explorer",subtitle:"Monitor system logs across your application.",refresh:"Refresh",loadingLogs:"Loading logs...",pleaseWait:"Please wait while we fetch your logs",failedToLoad:"Failed to load logs",errorFetching:"There was an error fetching the logs. Please try again.",noLogsMatchFilters:"No logs match your filters",tryAdjusting:"Try adjusting your filters",noLogsFound:"No logs found",logsWillAppear:"Logs will appear here when activity occurs",tryAgain:"Try again",resetFilters:"Reset filters",details:"Details",outputs:"Outputs",errorTab:"Error",noAdditionalDetails:"No additional details available.",clearFilters:"Clear filters",filterByEmail:"Filter by email...",errorsOnly:"Errors only",allEvents:"All Events",typeColumn:"Type",userColumn:"User",timestamp:"Timestamp"},QM={title:"Analytics",publishToCollect:"Publish your app to start collecting data."},XM={title:"API Documentation",subtitle:"Complete API reference for your app. Use the OpenAPI spec with any API client or documentation tool.",downloadSpec:"Download OpenAPI Spec",copyForLLM:"Copy for LLM",copyForLLMTooltip:"Copy AI-friendly Markdown documentation to clipboard",copied:"Copied!",codeExamplesIn:"Code examples in:",authTitle:"Authentication",authDescription:"All API requests require an api_key header. You can find your API key in your user profile, or retrieve it programmatically via User.me() in the app SDK.",sdkAuthDescription:"Install the Base44 SDK and initialize the client with your app ID. The SDK handles authentication and provides typed methods for all entity operations and backend functions.",entitiesTitle:"Entity Endpoints",schema:"Schema",endpoints:"Endpoints",copyAll:"Copy all",copyEntity:"Copy entity",functionsTitle:"Backend Functions",functionsDescription:"Invoke your deployed backend functions via HTTP. Each function accepts any JSON payload and returns the function's response.",agentTitle:"App Agent",agentDescription:"Interact with your app's AI agent through conversations. Create a conversation, send messages, and receive agent responses.",copy:"Copy",parameters:"Parameters",loading:"Loading API documentation...",error:"Failed to load API documentation. Please try again."},eN={logs:JM,analytics:QM,api:XM},tN={error:"Error",appStillLoading:"App is still loading... name not updated",appNameEmpty:"App name cannot be empty",removedFromFavorites:"Removed from favorites",addedToFavorites:"Added to favorites",removedDescription:"App removed from your starred list",addedDescription:"App added to your starred list",descriptionUpdated:"Description updated",descriptionUpdatedMsg:"Your app description has been updated successfully",failedUpdateDescription:"Failed to update app description",openApp:"Open App",shareApp:"Share App",winFreeCredits:"win free credits!",appVisibility:"App Visibility",controlAccess:"Control who can access your application",inviteUsers:"Invite Users",growUserBase:"Grow your user base by inviting others",copyLink:"Copy Link",copied:"Copied!",sendInvites:"Send Invites",paymentsViaStripe:"Payments via Stripe",pendingSetup:"Pending Setup",completeSetupGuide:"Complete the setup guide to accept real payments",live:"Live",testModeMessage:"You're still in test mode. Finish setup to start receiving payments.",readyForPayments:"Your app is ready to accept payments via Stripe.",continueSetup:"Continue Setup",payments:"Payments",poweredByWix:"Powered by Wix",manage:"Manage",openingWixPayments:"Opening Wix Payments...",wixPaymentsErrors:{noUrl:"Failed to get Wix Payments URL. Please try again.",fetchFailed:"Failed to open Wix Payments. Please try again.",invalidRedirect:"Failed to open Wix Payments. Please try again."},disconnected:"Disconnected",wixPaymentsDashboardError:"Failed to open Wix Payments dashboard",platformBadge:"Platform Badge",badgeVisible:'The "Edit with Base44" badge is currently visible on your app.',hideBadge:"Hide Badge",editAppNameAccessibilityLabel:"Edit title",editAppDescription:"Edit App Description",descriptionPrompt:"Provide a brief description of your app's purpose and functionality.",describeYourApp:"Describe your app...",cancel:"Cancel",save:"Save",created:"Created {{time}}"},aN={overview:tN},nN={title:"App Security",subtitle:"Configure row-level security policies to control who can access your app's data",scanIssues:"Scan issues",scanTime:"Scan typically takes few minutes to complete",scanning:"Scanning",startSecurityCheck:"Start Security Check",scanResults:"Scan Results",rlsRecommendations:"RLS Recommendations",rlsRecommendationsFound:"{{count}} RLS recommendation(s) found,",viewRecommendations:"View recommendations",noRlsRecommendations:"No RLS recommendations found",secrets:"Secrets",exposedSecretsFound:"{{count}} Exposed secrets found",noExposedSecrets:"No exposed secrets found",backendFunctions:"Backend Functions",unauthenticatedFunctions:"{{count}} Unauthenticated backend functions found",noUnauthenticatedFunctions:"No unauthenticated backend functions found",dataEntities:"Data Entities",entitiesCount:"{{count}} entities",scanComplete:"Security scan complete",reviewFindings:"Review the findings below.",scanFailed:"Security scan failed",ruleSaved:"Rule saved for {{entity}}",ruleSavedMsg:"The recommended rule has been saved.",failedToSaveRule:"Failed to save rule",createAccess:"Create Access",readAccess:"Read Access",updateAccess:"Update Access",deleteAccess:"Delete Access",removeAllRules:"Remove All Security Rules",removeAllRulesConfirm:"This will remove all security rules for this entity, allowing all users to access all records. Are you sure you want to continue?",removeAllRulesBtn:"Remove All Rules",securityRules:"Security Rules: {{entity}}",securityRulesTitle:"Security Rules",securityRulesDesc:"Create rules to control who can read and write records. Multiple rules are combined with OR logic.",publicAccess:"Public Access",publicAccessDesc:"Currently all users can access all records in this entity. There are no access restrictions.",createAccessRules:"Create Access Rules",create:"Create",read:"Read",update:"Update",deleteAction:"Delete",crudRules:"{{crud}} Rules",addRule:"Add Rule",generatedRules:"Generated {{crud}} Rules (JSON)",saveSecurityRules:"Save Security Rules",crudAccessRules:"{{crud}} Access Rules",configurePermissions:"Configure permissions for each action",generatedJsonPreview:"Generated JSON (Preview)",saveRules:"Save Rules",rlsRecommendation:"RLS Recommendation",dismiss:"Dismiss",applyFixes:"Apply Fixes",restricted:"Restricted",public:"Public",fullAccess:"All users have full access",createLabel:"Create:",readLabel:"Read:",updateLabel:"Update:",deleteLabel:"Delete:",noRestrictions:"No Restrictions",allUsersCanAccess:"All users can access records",creatorOnly:"Creator Only",creatorOnlyDesc:"Users can only access records they created",entityUserComparison:"Entity-User Field Comparison",entityUserComparisonDesc:"Compare a field in this entity with a user property",entityField:"Entity Field",fieldInEntity:"Field in the entity to compare",userField:"User Field",fieldFromUser:"Field from the user to compare",userPropertyCheck:"User Property Check",userPropertyCheckDesc:"Check if a user property matches a specific value",userProperty:"User Property",selectUserProperty:"Select user property",userRole:"User Role",userEmail:"User Email",fullName:"Full Name",requiredValue:"Required Value",selectRole:"Select role",adminRole:"Admin",userRoleOption:"User",noRestrictionsLabel:"No restrictions",creatorOnlyLabel:"Creator only",adminOnlyLabel:"Admin only",filePath:"File: {{path}}",severityCritical:"Critical",severityHigh:"High",securityScanLabel:"Security Scan",upToDate:"Up to date",upToDateTooltip:"No changes affecting security have been made since the last check",outOfDate:"Out of date",outOfDateTooltip:"Changes affecting security have been made since the last check. Please run a new security scan.",runSecurityScan:"Run Security Scan",securityPageTitle:"Security",securityPageSubtitle:"Manage your permissions and security rules. <a>Learn more <icon/></a>",issuesDetails:"Issues details",rlsIssuesTitle_one:"{{count}} RLS Issue",rlsIssuesTitle_other:"{{count}} RLS Issues",rlsIssuesSubtitle:"Enable Row Level Security to protect your data",exposedSecretsTitle_one:"{{count}} Exposed Secret",exposedSecretsTitle_other:"{{count}} Exposed Secrets",exposedSecretsSubtitle:"Secure and rotate any exposed secrets to keep your application and data safe.",unauthBackendTitle_one:"{{count}} Unauthenticated Backend Function",unauthBackendTitle_other:"{{count}} Unauthenticated Backend Functions",unauthBackendSubtitle:"Protect backend task endpoints with authentication.",noIssuesFound:"No issues found. Your app's security looks good, but keep reviewing it regularly to stay protected.",recommendedRulesLabel:"Recommended rules:",fix:"Fix",fixAll:"Fix All",missingRlsRules:"{{entity}} is missing RLS rules",customizeSuggestion:"Customize suggestion",goToEntityPage:"Go to entity page",ruleColumnHeader:"Rule",allUsers:"All users",fieldComparison:"Field Comparison",noScanTitle:"Check the security of your app",noScanDescription:"Review your configuration, identify potential risks, and learn how to strengthen your app's protection",checkSecurity:"Check Security",back:"Back",cancel:"Cancel"},iN={title:"Application Secrets",secretDeleted:"Secret deleted",errorDeletingSecret:"Error deleting secret",secretUpdated:"Secret updated",errorUpdatingSecret:"Error updating secret",newSecretValue:"New secret value",save:"Save",cancel:"Cancel",addSecret:"Add Secret",addNewSecret:"Add New Secret",addNewSecretDescription:"Enter your secret name and value below. Secrets are encrypted and securely stored.",secretName:"Secret Name",secretNamePlaceholder:"Enter secret name (e.g. API_KEY)",secretNameNoSpaces:"Secret name cannot contain spaces. Use underscores instead (e.g. API_KEY).",secretValue:"Secret Value",secretValuePlaceholder:"Enter secret value",adding:"Adding...",aboutSecretsManagement:"About Secrets Management",secretsDescription:"Secrets are environment variables that contain sensitive information like API keys, tokens, and passwords. They are encrypted at rest and securely injected into your application at runtime.",secretsBullet1:"Secrets are used by your backend functions to access external services",secretsBullet2:"All secrets are encrypted and stored securely",secretsBullet3:"You can add, update, or delete secrets as needed for your application",needHelp:"Need help?",supportSystem:"Open a support ticket",configuredSecrets:"Configured Secrets",noSecretsYet:"No secrets configured yet. Add your first secret to get started.",secretAddedSuccessfully:"Secret added successfully",errorCreatingSecret:"Error creating secret",errorFetchingSecrets:"Error fetching secrets"},rN={security:nN,secrets:iN},oN={mainPage:"Main Page",mainPageDesc:"Set the default landing page for your app",selectMainPage:"Select main page",appVisibility:"App Visibility",controlAccess:"Control who can access your application",platformBadge:"Platform Badge",platformBadgeDesc:'Show or hide the "Edit with Base44" badge on your app.',onlyForPaying:"Available only for paying users.",upgradeNow:"Upgrade now",visible:"Visible",hidden:"Hidden",hideEntityCreator:"Hide Entity Creator",hideEntityCreatorDesc:`Hide who created each record in your app's data tables. When enabled, the "created by" field will not be shown to users.`,aiAgents:"AI Agents",aiAgentsDesc:"Build AI agents into your app using Base44's AI agents infrastructure",aiAgentsEnabled:"AI Agents Enabled",aiAgentsEnabledDesc:"Your app now has access to Base44's AI agents infrastructure. You can create intelligent agents that can help users with various tasks, answer questions, and interact with your app's data. Use the chat to build and configure your agents.",testData:"Test Data",testDataDesc:"Use test data to safely test changes without affecting live data.",onlyForBuilder:"Available only for Builder plan and above.",testDataVersionNote:"To use this, you'll need a newer version of your app. Just make any change—send a message to the AI, tweak some code, or use the visual editor—and you're good to go.",cloneApp:"Clone App",cloneAppDesc:"Create a duplicate of this app",githubConnectionIssue:"GitHub connection issue. Please reconnect to clone this app.",cantCloneOldInfra:`You can't clone an app on the old infrastructure.
Update infrastructure to clone your app.`,createCopy:"Create Copy",backendFunctions:"Backend Functions",backendFunctionsDesc:"Enable server-side functionality • Recommended for developers",activating:"Activating...",activated:"Activated",activate:"Activate",upgradePlan:"Upgrade Plan",dangerZone:"Danger Zone",dangerZoneDesc:"Irreversible actions that affect your app",deleteApp:"Delete App",deleteAppDesc:"Permanently remove this app and all its data",adminControls:"Admin Controls",adminControlsDesc:"Manage app availability",unblockApp:"Unblock App",blockApp:"Block App",appLogo:"App Logo",editLogo:"Edit Logo",appDescription:"App Description",saveDescription:"Save Description",describeYourApp:"Describe your app..."},sN={editAppLogo:"Edit App Logo",uploadLogo:"Upload Logo",generateLogo:"Generate Logo",dragAndDrop:"Drag and drop or click to upload",clickToUpload:"Click to upload or drag and drop",pngJpgLimit:"PNG, JPG up to 5MB",upload:"Upload",whatShouldLook:"What should your logo look like?",generating:"Generating...",generateNew:"Generate new logo",cancel:"Cancel",save:"Save",logoPrompt:"Logo Generation Prompt",describeLogo:"Describe how you want your logo to look",uploading:"Uploading...",selectImage:"Select Image"},lN={removeListingConfirm:"Are you sure you want to remove this listing? This action will remove it from the App templates.",listingRemoved:"Listing removed from catalog successfully",appTemplates:"App Templates",listedFor:"Listed for ${{price}} • {{sales}} sales • {{status}}",manageTemplate:"Manage your template listing",shareTemplate:"Share your template with the community so others can discover and use it.",manageListing:"Manage Listing",publishToTemplates:"Publish to App Templates",seeOnTemplates:"See on App Templates",removingListing:"Removing...",removeFromTemplates:"Remove from App Templates",salesRevenue:"{{sales}} sales • ${{revenue}} revenue",publishedToTemplates:"Published to App Templates",rejectedReason:"Rejected Reason: {{reason}}"},cN={public:"Public",private:"Private",workspace:"Workspace",requireLogin:"Require login to access"},dN={notAvailableOnMobile:"Managing {{feature}} isn't available on mobile",loginFromDesktop:"Please log in from a desktop browser",okay:"Okay",domains:"domains",security:"security",code:"code",apiFeature:"API",templates:"templates"},uN={settings:oN,logo:sN,catalog:lN,visibility:cN,desktop:dN},pN={title:"Users",subtitle:"Manage the app's users and their roles",inviteUser:"Invite User",schema:"Schema",searchByEmailOrName:"Search by Email or Name",pendingRequests:"Pending requests",userSchemaEditor:"User Schema Editor",editUser:"Edit User",loadingUsers:"Loading users...",noUsersFound:"No users found",noPendingRequests:"No pending requests",noPendingRequestsDesc:"There are currently no access requests awaiting approval",inviteYourFirstUser:"Invite your first user",getStartedByInviting:"Get started by inviting your first user to the app.",tryAdjustingSearch:"Try adjusting your search or filters to find what you're looking for.",moreActions:"More actions",resendInvitation:"Resend invitation",cancelInvite:"Cancel invite",editUserAction:"Edit user",changeOwner:"Change owner",makeAppOwner:"Make app owner",resendOwnershipRequest:"Resend ownership request",cancelOwnershipRequest:"Cancel ownership request",changeRole:"Change role",selectNewRole:"Select a new role for {{name}}:",back:"Back",manageInvitation:"Manage invitation",approve:"Approve",reject:"Reject",unknown:"Unknown",admin:"Admin",user:"User",allRoles:"all roles",name:"Name",owner:"Owner",pendingOwnership:"Pending ownership",role:"Role",email:"Email",hasntLoggedIn:"{{role}} hasn't logged in to the app yet.",userRemovedSuccess:"User removed successfully",failedCancelInvitation:"Failed to cancel invitation",userLoggedInSinceRefresh:"This user has logged in since your last refresh. Refresh the page to view their updated status before trying again.",failedRemoveUser:"Failed to remove user",subscriptionRequired:"Subscription Required",onlyPayingCanAdmin:"Only paying users can make other users admins.",upgradeSubscription:"Upgrade your subscription",toContinue:"to continue.",userUpdatedSuccess:"User updated successfully",userApprovedSuccess:"User approved successfully",failedApproveRequest:"Failed to approve access request",invitationRejected:"Invitation rejected",failedDenyRequest:"Failed to deny access request",invitationResentSuccess:"Invitation resent successfully",failedResendInvitation:"Failed to resend invitation",emailSent:"Email sent",ownershipTransferResent:"Ownership transfer invitation has been resent.",transferCancelled:"Transfer cancelled",ownershipTransferCancelled:"The ownership transfer has been cancelled.",failedCancelTransfer:"Failed to cancel transfer",cancelInviteAction:"Cancel invite",removeUser:"Remove user",failedApproveUser:"Failed to approve user",success:"Success",error:"Error",save:"Save",deleteConfirm:"Are you sure you want to delete this record?",deleteFailed:"Delete failed"},mN={users:pN},gN="Social content",hN="Get a social promotion plan and ready-to-post content.",fN="Loading Social content",vN={title:"Something went wrong",description:"An unexpected error occurred. Please try refreshing the page.",tryAgain:"Try again"},bN={emptyTitle:"Promote your app in minutes",emptyDescription:"We'll analyze your app to suggest the best posts and platforms.",getStarted:"Get started",learnMore:"Learn more",emptyCheck1:"Define what you want to achieve",emptyCheck2:"Pick the best channels for your app",emptyCheck3:"Get tailored post ideas you can share right away",analyzingBase:"Analyzing your app",analyzingDescription:"Learning about your app, what it does, who it's for, and how to promote it.",combiningBase:"Creating your content strategy",combiningDescription:"We're shaping your message and selecting the right channels for your launch.",planStep1:"Using your strategy",planStep2:"Adapting content for each platform",planStep3:"Writing post copy",planStep4:"Creating visuals for your posts",stepOf:"Step {{current}} of {{total}}"},yN={letsGo:"Let's go",next:"Continue",back:"Back",creatingPlan:"Generating your social content...",creatingPlanBase:"Generating your social content",strategyReady:"Suggested strategy"},kN={emptyTitle:"Ready to promote your app?",emptyDescription:"Answer the questions to personalize your content.",generateNewPlan:"Generate new strategy",downloadContent:"Download Content",downloading:"Downloading...",startFresh:"Start Fresh"},wN={copy:"Copy",copied:"Copied",copiedToClipboard:"Copied to clipboard",failedToCopy:"Failed to copy",cancel:"Cancel",save:"Save",imageGenerationFailed:"Image generation failed",retryImage:"Try again",download:"Download image",expandImage:"View full size",close:"Close",regenerateImage:"Regenerate image",imageRefinePlaceholder:"What would you like to change?",imageAlt:"Post visual",share:"Share",editPostTitle:"Edit post",descriptionLabel:"Description",imageLabel:"Image",improveWithAI:"Improve with AI",refineInputPlaceholder:"What would you like to change?",saveChanges:"Save changes"},AN={handle:"yourhandle",displayName:"Your Name"},SN={reviewTitle:"Review your suggested strategy",goalLabel:"Your goal",approachLabel:"Suggested approach",strategyLabel:"Strategy overview",showMore:"Show more",showLess:"Show less",platformsLabel:"Target platforms",platformsDescription:"We've pre-selected the best platforms for your business.",editSelection:"Edit selection",selectPlatforms:"Choose your platforms",maxPlatforms:"Up to 3 platforms",toneLabel:"Match your tone (optional)",toneDescription:"Paste a link to your social profile and we'll adapt the posts to your tone.",generatePosts:"Generate posts"},CN={resetTitle:"Generate New Plan?",resetDescription:"We'll generate a completely new plan for you. Your current posts and edits will be replaced and can't be recovered.",cancel:"Cancel",resetConfirm:"Generate New Plan",upgradeTitle:"Not enough integration credits",upgradeDescription:"You don't have enough integration credits for this action. Upgrade your plan to get more.",upgradeAction:"Upgrade Plan"},DN={sendFailed:"Something went wrong",sendFailedDescription:"Couldn't reach the AI. Please try again.",postUpdated:"Post updated",postUpdateFailed:"Failed to update post",postRefined:"Post refined",refineFailed:"Couldn't refine post",refineFailedDescription:"The AI couldn't apply changes this time. Please try again.",imageGenerated:"Image generated!",imageGenerateFailed:"Couldn't generate image",imageGenerateFailedDescription:"Something went wrong with image generation. Please try again.",planReset:"Content reset - ready for a fresh start",planResetFailed:"Failed to reset",insufficientCredits:"Not enough integration credits",insufficientCreditsDescription:"You've run out of integration credits. Upgrade your plan to get more.",downloadPartial:"Couldn't download all content",downloadPartialDescription:"Some images failed to download. Please try again."},TN={pageTitle:gN,pageSubtitle:hN,loadingBase:fN,errorBoundary:vN,wizard:bN,steps:yN,toolbox:kN,post:wN,mock:AN,strategy:SN,dialog:CN,toast:DN},EN={overview:"Overview",users:"Users",data:"Data",analytics:"Analytics",domains:"Domains",integrations:"Integrations",security:"Security",code:"Code",agents:"Agents",automations:"Automations",logs:"Logs",api:"API",settings:"Settings",appSettings:"App Settings",authentication:"Authentication",appTemplate:"App Template",secrets:"Secrets",backToEditor:"Back to Editor",codeFiles:"Code files",search:"Search...",clearSearch:"Clear search",virality:"Social content"},PN="Loading app data...",_N="Trash: {{entityName}}",xN={issuesFound:"Issues Found",inComponent:"In {{componentName}} component:",resolving:"Resolving...",resolveWithAI:"Resolve with AI",noCreditDeduction:"This action won't deduct credits from your account."},IN={loadingCheckpoint:"Loading checkpoint code...",errorFetchingFiles:"Error fetching files",backToPreview:"Back to Preview"},RN={letsBuild:"Let's Build Your App",tellMeCreate:"Tell me what you'd like to create using the chat",loadingApp:"Loading your app",buildingPreview:"Building preview",previewPreparing:"Your app preview is being prepared.",mayTakeMoment:"This may take a moment.",previewUnavailable:"Preview unavailable",previewCouldntLoad:"The preview for this version couldn't be loaded.",retryBuild:"Retry build",buildingIdea:"Building your idea",didYouKnow:"Did you know?",packagePending:"Package Installation Pending",approvePackage:"Please approve the npm package installation in the chat to continue",loadingPreview:"Loading preview…",refreshPreview:"Refresh preview",capture:{verbDiscovering:"Discovering",verbDesigning:"Designing",verbBuilding:"Building",verbPolishing:"Polishing",verbUnveiling:"Unveiling",verbStudying:"Studying",verbExtracting:"Extracting",verbReimagining:"Reimagining",verbRefining:"Refining",stageAnalyzingDesign:"Analyzing design",stageExtractingColorsAndFonts:"Extracting colors & fonts",stageBuildingPages:"Building pages",stageCreatingComponents:"Creating components",stageRefiningDetails:"Refining details",stageAlmostThere:"Almost there",stageStudyingDesignLanguage:"Studying the design language",stageExtractingColorsAndTypography:"Extracting colors & typography",stageCraftingYourPages:"Crafting your unique pages",stageApplyingDesignInspiration:"Applying design inspiration",stageRefiningLookAndFeel:"Refining the look & feel",yourSite:"your site",aSiteInspiredBy:"a site inspired by <site>{{siteName}}</site>",progress:"Progress"},figma:{verbFetching:"Fetching",verbExtracting:"Extracting",verbProcessing:"Processing",verbTransforming:"Transforming",verbBuilding:"Building",stageReadingDesign:"Reading your Figma design",stageProcessingStructure:"Processing design structure",stageHandlingAssets:"Handling assets & generating code",stageApplyingAI:"Applying AI layout transform",stageCompiling:"Compiling & finalizing your app",yourFigmaDesign:"your Figma design",defaultName:"Figma Import"}},zN={canvas:"Canvas",dashboard:"Dashboard",preview:"Preview",exitSplitScreen:"Exit split screen mode to preview",versionHistory:"Version history",moreOptions:"More options",filesUsedInPage:"Files used in this page",seeAllFiles:"See all files",activityMonitor:"Activity monitor",exportAsZip:"Export project as ZIP",helpCenter:"Help Center",actAsUser:"Act as a user",viewAppNewTab:"Preview current version",refreshPreview:"Refresh preview",refresh:"Refresh",switchToDesktop:"Switch to desktop view",switchToMobile:"Switch to mobile view",showChatPanel:"Show chat panel",hideChatPanel:"Hide chat panel",turnOffTestData:"Turn off test data",turnOnTestData:"Turn on test data",shareApp:"Share app",shareInviteUsers:"Share and invite users",moreActions:"More Actions",inviteCollaborators:"Invite collaborators",viewOnly:"View only",viewOnlyAccess:"You have view-only access to this app",upgradeInfraTooltip:"Your app is ready for a quick upgrade<br/>to the new infrastructure.",appOverview:"App Overview",myApp:"My App",production:"Production",test:"Test",gitHub:"GitHub",gitHubConnection:"GitHub Connection",collaborators:"Collaborators",collaboratorDisplayYou:"{{name}} (You)",collaboratorUnknown:"Unknown",addCollaborator:"Add collaborator",saving:"Saving...",savedAgo:"Saved {{time}} ago",unsavedChanges_one:"{{count}} unsaved change",unsavedChanges_other:"{{count}} unsaved changes",theme:"Theme",themeTitle:"Theme",themeDescription:"These colors and fonts make up your theme. Any changes apply everywhere.",themeColors:"Colors",themeFonts:"Fonts",noThemeColors:"No theme colors found",themeSaveChanges:"Save & Apply",themeCancel:"Cancel",colorPickerCustom:"Custom",colorPickerPalette:"Palette",fontPickerSearch:"Search fonts...",fontPickerBrandFonts:"Brand Fonts",fontPickerAllFonts:"All Fonts",fontPickerNoResults:"No fonts found",fontPickerSelectFont:"Select font"},MN={desktop:"Desktop",tablet:"Tablet",mobile:"Mobile",isAvailable:"is available",getDomain:"Get Domain",connectDomain:"Connect a custom domain",undo:"Undo",redo:"Redo",fullscreen:"Fullscreen",breakpoints:"Breakpoints",splitView:"Split view",exitSplitView:"Exit split view",exitPreview:"Exit Preview"},NN={upgrade:"Upgrade",upgradePlan:"Upgrade plan",percentOff:"{{percent}}% off",limitedTimeOffer:"Limited time welcome offer",getDiscountOff:"Get {{discount}} off select yearly plans"},FN={viewingVersionHistory:"Viewing Version History",buildInProgress:"Build in progress...",retryBuildToEnable:"Retry build to enable this view",viewApp:"View App",viewCode:"View Code",restoring:"Restoring...",restoreThisVersion:"Restore This Version",publishing:"Publishing...",publishThisVersion:"Publish This Version",exit:"Exit",back:"Back",publish:"Publish",restore:"Restore",latest:"Latest"},LN={actAs:"Act as",actingAs:"You're acting as",searchUser:"Search for a specific user",anonymousGuest:"Anonymous Guest",you:"You",warningChanges:"Any change you make will reflect in user data.",carefulChanges:"- be careful, changes here affect this user",exitMode:"Exit mode",noUsersYet:"You don't have any users yet",addOrInvite:"Add or invite users to see how your app works for them",invite:"Invite",usersCount:"Users ({{count}})",noMatchingUsers:"No matching users found",trySearching:"Try searching by name or role"},jN={pressEnterNavigate:"Press Enter to navigate"},ON={publishApp:"Publish App",republishApp:"Republish App",publish:"Publish",publishing:"Publishing...",disabledUntilUpdate:"Publishing is disabled until you complete the infrastructure update.",currentlyDisabled:"Publishing is currently disabled",codeNotGenerated:"Publishing will be enabled once your app is ready",visualEditsSaveWarning:"Some visual edits couldn't be saved before publishing",lastPublished:"Last published {{time}}"},BN={whatToChange:"What would you like to change?",whatToDiscuss:"What would you like to discuss?",saveChangesBeforeTyping:"Save changes before typing",exitEditModeToContinue:"Exit Edit mode before typing",fetchingFromGitHub:"Fetching from GitHub...",viewOnlyAccess:"You have view-only access",zeroCreditsRemaining:"0 credits remaining",visualEdit:"Edit",visualEditDisabledAgentRunning:"Visual edit unavailable while agent is running",edit:"Edit",discuss:"Discuss",ask:"Edit Element",editData:"Edit data",discussMode:"Discuss Mode",discussModeDescription:"Chat with the AI about anything without making code changes. Uses 0.3 credits per request.",thought:"Thought",thoughtWithDuration:"Thought <duration>for {{duration}}</duration>",planningNextSteps:"Planning next steps...",signUpToStartBuilding:"Sign up to start building...",suggestions:"Suggestions",latestMessages:"Latest messages",aiModel:"AI Model",aiControls:"AI Controls",uploadFile:"Upload from computer",uploadFileMobile:"Upload from device",addFromGoogleDrive:"Upload from Google Drive",connectorRequestFailed:"Failed to send connector request. Please try again.",designingYourWebsite:"designing your website...",speechToText:"Speech to text",processingAudio:"Processing audio...",clickToStopRecording:"Click to stop recording"},UN={dialogTitle:"Builder command palette",dialogDescription:"Search pages, files, entities, views, and quick actions inside the builder.",searchPlaceholder:"Search pages, files, entities, views, and quick actions...",emptyTitle:"No matching command",emptyDescription:"Try a page name, file path, entity name, editor view, or quick action like test data.",homeSubtitle:"Home",navigationSubtitle:"Dashboard",viewSubtitle:"Editor view",entityDataSubtitle:"Data",entityCodeSubtitle:"Code",integrationsSubtitle:"Integrations",domainSubtitle:"Custom domain",collaboratorsSubtitle:"Collaborators",helpSubtitle:"Help center",publishSubtitle:"Deploy and share",publishNowSubtitle:"Publish latest changes",versionHistorySubtitle:"Version history",securitySubtitle:"Security",testDataSubtitle:"Switch to test data",productionDataSubtitle:"Switch to production data",backToWorkspace:"Back to workspace",switchToPreview:"Switch to Preview",switchToDashboard:"Switch to Dashboard",switchToCode:"Switch to Code",switchToCanvas:"Switch to Canvas",openEntityData:"Open {{entityName}} data",openEntityCode:"Open {{entityName}} code",addIntegration:"Add integration",addDomain:"Add a domain",inviteCollaborator:"Invite collaborator",getHelp:"Get help",publishMyApp:"Publish my app",publishNow:"Publish now",versionHistory:"See version history",startSecurityCheck:"Start Security Check",turnOnTestData:"Turn on test data",turnOffTestData:"Turn off test data",groups:{navigate:"Navigate",views:"Views",files:"Files",entities:"Entities",actions:"Actions"}},qN="Unknown view",VN="App Editor",$N="Beta",WN={title:"Invite collaborators",subtitle:"Give people access to edit this app.",emailPlaceholder:"Enter emails, separated by commas",removeIneligible:"Remove ineligible users",appCollaborators:"App collaborators",you:"(You)",owner:"Owner",moreActions:"More actions",makeAppOwner:"Make app owner",removeCollaborator:"Remove collaborator",resendOwnershipRequest:"Resend ownership request",getOwnershipLink:"Get ownership link",cancelOwnershipRequest:"Cancel ownership request",ownershipTooltip:"The new owner needs to accept the transfer via the invite email. The invite expires in 7 days. You'll get an email when the transfer is complete.",removeTitle:"Remove this collaborator from your app?",removeDescription:"Removing this collaborator will immediately revoke their access to the editor and prevent them from making any changes in the app.",removeAccessOnly:"Remove collaborator access only",removeAccessOnlyDesc:"The user will still appear in the Users list",removeEntirely:"Remove from app entirely",removeEntirelyDesc:"The user will be removed from the Users list as well",cancel:"Cancel",enterEmail:"Please enter an email address",invalidEmail:"Invalid email",invalidEmails:"One or more email addresses are not valid, please check them and try again.",cannotInviteOwner:"You cannot invite the owner of this app",alreadyExists:"Collaborator already exists.",alreadyExist:"Collaborators already exist.",invitationSent:"Collaborators invitation sent successfully",invitationsSent:"{{count}} Collaborators invitation sent successfully",removedFromApp:"Collaborator removed from app",accessRemoved:"Collaborator access removed",ownershipResent:"Ownership request resent successfully",ownershipLinkCopied:"Ownership link copied to clipboard",ownershipCancelled:"Ownership request cancelled",failedToSendInvitation:"Failed to send invitation",failedToRemoveCollaborator:"Failed to remove collaborator",failedToResendOwnership:"Failed to resend ownership request",failedToGetOwnershipLink:"Failed to get ownership link",failedToCancelOwnership:"Failed to cancel ownership request",creditsWarning:"All collaborators consume credits from the workspace.",notWorkspaceMember:"Not a workspace member",notMemberDescription_one:"<bold>{{emails}}</bold> is not a member of this workspace.",notMemberDescription_other:"<bold>{{emails}}</bold> are not members of this workspace.",addAsGuest:"Add as guest",addAsGuestDescription:"The user will be added as a guest with access to this app only.",addToWorkspace:"Add to workspace",addToWorkspaceDescription:"Go to workspace settings to add as a full workspace member.",guestBadge:"Guest",emailListOverflow:"{{first}} and {{count}} more",pendingInvitationWarning_one:"This user already has a pending workspace member invitation. Adding as guest will replace it.",pendingInvitationWarning_other:"{{count}} of these users already have pending workspace member invitations. Adding as guests will replace them."},GN={title:"You've run out of integration credits",description:"This may affect users in your app from performing certain actions.",upgradeLink:"Upgrade plan to get more credits",dismiss:"Dismiss banner"},HN={gathering:"Gathering",gathered:"Gathered",connectorsInformation:"connectors information",write:"Write",writing:"Writing",wrote:"Wrote",generatingImage:"Generating image",generatedImage:"Generated image",reading:"Reading",read:"Read",deleting:"Deleting",deleted:"Deleted",editing:"Editing",edited:"Edited",edit:"Edit",creating:"Creating",created:"Created",updating:"Updating",updated:"Updated",update:"Update",delete:"Delete",importing:"Importing",imported:"Imported",import:"Import",searching:"Searching",searched:"Searched",searchingForBugs:"Searching for bugs...",searchedBugs:"Searched bugs",install:"Install",installing:"Installing",installed:"Installed",analyzing:"Analyzing",running:"Running",failed:"Failed",run:"Run",settingSecrets:"Setting secrets",setSecret:"Set secret",setSecrets:"Set secrets",testing:"Testing",checking:"Checking",tested:"Tested",checked:"Checked",fetching:"Fetching",fetched:"Fetched",waitingForApproval:"Waiting for approval...",searchedDocsFor:"Searched docs for",searchingDocsFor:"Searching docs for",searchedFor:"Searched for",searchingFor:"Searching for",foundResult_one:"Found {{count}} result",foundResult_other:"Found {{count}} results",toggling:"Toggling",toggled:"Toggled",listing:"Listing",listed:"Listed",approvalRequired:"Approval Required",changesPending_one:"{{count}} change pending",changesPending_other:"{{count}} changes pending",approve:"Approve",approving:"Approving...",reject:"Reject",rejected:"rejected",rejecting:"Rejecting...",approveCount:"Approve ({{count}})",rejectAll:"Reject All",previousApproval:"This approval request is from a previous message",query:"Query:",updateFallback:"Update {{entityName}}",updateFallbackSingle:"Set {{fieldName}} to {{fieldValue}} on {{entityName}}",updateFallbackMultiple:"Set {{fieldName}} to {{fieldValue}} (+{{extraFields}} more) on {{entityName}}",deleteFallback:"Delete {{entityName}} records",updateWith:"Update with:",importComplete:"Import complete",importingData:"Importing data...",percentComplete:"{{percent}}% complete",recordsProgress:"{{current}} / {{total}} records",preparing:"Preparing...",otherToolsAfterApproval:"Other tools will run after approval",loadingConfig:"Loading configuration...",fetchConfigError:"Failed to load configuration.",retry:"Retry",countPackages:"{{num}} packages:",updateAllEntityRecords:"Update all <entity>{{entityName}}</entity> records",updateEntityRecordsMatching:"Update <entity>{{entityName}}</entity> records matching:",deleteAllEntityRecords:"Delete all <entity>{{entityName}}</entity> records",deleteEntityRecordsMatching:"Delete <entity>{{entityName}}</entity> records matching:",importDataFromInto:"Import data from <file>{{fileName}}</file> into <entity>{{entityName}}</entity>",importDataFromSheetInto:"Import data from <file>{{fileName}}</file> (sheet: <sheet>{{sheetName}}</sheet>) into <entity>{{entityName}}</entity>",countRecordsIntoEntity:"{{num}} records into <entity>{{entityName}}</entity>",dataIntoEntity:"data into <entity>{{entityName}}</entity>",countRecordsEntity:"{{num}} records <entity>{{entityName}}</entity>",allEntityRecords:"all <entity>{{entityName}}</entity> records",entityRecords:"<entity>{{entityName}}</entity> records",grepSearching:'Searching "{{pattern}}"...',grepSearchComplete:"Search complete",grepFoundResults_one:"Found {{count}} result",grepFoundResults_other:"Found {{count}} results",grepInFiles_one:"in {{count}} file",grepInFiles_other:"in {{count}} files"},YN={chatOnlyDescription:"This setting can now be accessed only via chat.",description:"Set the default landing page for your app",chatHint:"To change this write in chat:",prompt:"Change the main page to {PageName}",placeholder:"Main page",copiedToast:"Copied to clipboard"},KN={confirmMessage:"Are you sure you want to unpublish this app? It will no longer be accessible to users until you publish it again.",successTitle:"Success",successDescription:"App unpublished successfully",errorTitle:"Error",errorDescription:"Failed to unpublish app",description:"Take your app offline. You can re-publish it at any time.",unpublishing:"Unpublishing...",button:"Unpublish"},ZN={title:"Delete App",description:"This action <strong>cannot</strong> be undone. This will permanently delete the <strong>{{appSlug}}</strong> app and all of its data.",descriptionSimple:"This will permanently delete <strong>{{displayName}}</strong>.<br/>All app data, history, users, domains, and integrations will be permanently erased. <danger>This action cannot be undone.</danger>",confirmLabel:"To confirm, type <strong>{{appSlug}}</strong> below:",cancel:"Cancel",deleteButton:"Delete this app",deleting:"Deleting...",successTitle:"Success",successDescription:"App deleted successfully",errorTitle:"Error",errorDescription:"Failed to delete app"},JN={title:"Delete Agent",description:"This will permanently delete <strong>{{displayName}}</strong>.<br/>All agent data, conversations, files, and integrations will be permanently erased. <danger>This action cannot be undone.</danger>",cancel:"Cancel",deleteButton:"Delete this agent",deleting:"Deleting..."},QN={using:"Using {{name}} skill",failed:"Failed to use {{name}} skill",used:"Used {{name}} skill"},XN={thinkingIdeas:"{{agentName}} is thinking of ideas...",ideasFrom:"Ideas from {{agentName}}"},eF="Creating automation...",tF="Failed to create automation",aF="Automation",nF=JSON.parse(`{"sidebar":{"chat":"Chat","continueOnWhatsApp":"Continue on WhatsApp","continueOnTelegram":"Continue on Telegram","continueOnLine":"Continue on LINE","continueOnIMessage":"Continue on iMessage","imessage":"iMessage","brain":"Brain","integrations":"Integrations","knowledge":"Knowledge","memory":"Memory","payments":"Payments","tasks":"Tasks","artifacts":"Artifacts","settings":"Settings","secretsAndKeys":"Secrets & Keys","security":"Security","credits":"Credits","whatsapp":"WhatsApp","telegram":"Telegram","line":"LINE","files":"Files","uploadFile":"Attach","refreshFiles":"Refresh files","searchFiles":"Search files...","filesFolders":"{{fileCount}} files · {{folderCount}} folders","toolsPermission":"Tools Permission","apiDocs":"API","agentSettings":"Agent Settings","dangerZone":"Danger Zone","channels":"Channels","feedback":"Leave feedback"},"filePanel":{"source":"Source","preview":"Preview","save":"Save","saveAndRedeploy":"Save & Redeploy","fileSaved":"File saved","functionRedeployed":"Function saved and redeployed","failedToSaveFile":"Failed to save file","failedToRedeploy":"Failed to redeploy function","failedToReadFile":"Failed to read file"},"modelPicker":{"automatic":"Automatic","automaticDescription":"Matched with the best AI model for each request","manual":"Manual","manualDescription":"Select a specific AI model.","manualCreditNote":"Credit usage may vary by model","manualDisabledDescription":"Select a specific AI model ({{models}}). Available on the Builder plan and above.","builderPlus":"Builder+","upgradeToSelect":"Upgrade to select an AI model"},"chat":{"loadingAgent":"Loading agent...","agentNotFound":"Agent not found","waitingForAuth":"Waiting for authentication token...","anErrorOccurred":"An error occurred","aiModelUpdated":"AI model updated","failedToUpdateModel":"Failed to update AI model","hideSidebar":"Hide sidebar","showSidebar":"Show sidebar","darkMode":"Switch to dark mode","lightMode":"Switch to light mode","dropFileHere":"Drop file here","imagesDocsAndMore":"Images, documents, and more","loadPreviousMessages":"Load previous messages","somethingWentWrong":"Something went wrong","retry":"Retry","chatFromApp":"Chat with me from an app you already use","attachFile":"Attach files","typeMessage":"Type a message...","toggleLiveBrowser":"Toggle live browser","noActiveBrowser":"No active browser session","stopGenerating":"Stop generating","suggestions":"Suggestions","liveBrowser":"Live Browser","fullScreen":"Full screen","exitFullScreen":"Exit full screen","closeBrowser":"Close browser","live":"Live","expandBrowser":"Expand browser","failedToStartConversation":"Failed to start conversation — try sending a message manually.","failedToLoadConversation":"Failed to load conversation","failedToUploadFile":"Failed to upload file","tooManyFiles":"You can attach up to {{max}} files per message","failedToSendMessage":"Failed to send message","failedToStopAgent":"Failed to stop agent","today":"Today","yesterday":"Yesterday","thinking":"Thinking...","you":"You","failedToSubmitToolInput":"Failed to submit tool input","queued":"Queued ({{count}})","queueFull":"Message queue is full. Please wait for the agent to finish.","failedToEditQueued":"Failed to edit queued message","failedToDeleteQueued":"Failed to remove queued message","deleteMessage":"Delete message","failedToDeleteMessage":"Failed to delete message","whatsInImage":"What's in this image?","heresAFile":"Here's a file: {{fileName}}","heresAFileAndMore":"Here's a file: {{fileName}} (+{{count}} more)","heresFiles":"Here are {{count}} files","whatsInTheseImages":"What's in these {{count}} images?","creditsRunningLow":"You're running low on credits.","purchaseMoreCredits":"Purchase more credits →","saleDiscount":"Get {{discount}} off select yearly plans","limitedTimeOffer":"Limited time offer","upgradePlan":"Upgrade Plan","reply":"Reply","copyMessage":"Copy","copied":"Copied"},"files":{"uploaded":"Uploaded {{fileName}}","failedToUpload":"Failed to upload {{fileName}}","failedToRead":"Failed to read {{fileName}}"},"dashboard":{"title":"Dashboard","subtitle":"Overview of your agent.","created":"Created {{date}}","memories":"Memories","filesLabel":"Files","folders":"Folders","agentMemory":"Agent Memory","noMemoriesYet":"No memories yet","noMemoriesDescription":"Your agent will store learned information here as you chat."},"memoryTab":{"title":"Memory","subtitle":"What your agent knows about you and your conversations.","emptyTitle":"Nothing here yet","emptyDescription":"As you chat, your agent will build memory automatically — context from recent messages, session summaries, and key facts.","addEntry":"Add","saveEntry":"Save","cancelEdit":"Cancel","titlePlaceholder":"What should the agent remember?","contentPlaceholder":"Add more detail (optional)","saved":"Memory updated","failedToSave":"Failed to update","factsHeading":"Saved Facts","factsDescription":"Key facts that persist across all conversations.","noMemories":"No saved facts","noMemoriesDescription":"Important facts are auto-extracted from conversations, or you can add them manually.","shortTermHeading":"Short-term Memory","shortTermDescription":"Context from the current conversation, updated every ~10 messages.","shortTermUpdated":"Updated","shortTermDeleted":"Deleted","deleteShortTermConfirm":"Remove this context? The agent will lose this part of the conversation history.","longTermHeading":"Daily Sessions","longTermDescription":"A summary of each day's conversations.","longTermDeleted":"Deleted","deleteLongTermConfirm":"Delete this day's session? The agent will lose access to this conversation history.","messages":"{{count}} msgs","emptyTranscript":"Empty transcript","noText":"(no text)","usedTools":"Used: {{tools}}"},"creditsTab":{"title":"Credits","description":"Credit usage and billing details will appear here."},"settingsTab":{"settings":"Settings","secrets":"Secrets","security":"Security","creditCard":"Credit Card"},"agentSettingsTab":{"title":"Agent Settings","subtitle":"Configure how your agent operates.","cloneTitle":"Clone Agent","cloneDescription":"Create a copy of this agent with all its configuration, entities, and backend functions.","cloneButton":"Clone Agent"},"clonePage":{"back":"Back","title":"Clone Agent","subtitle":"Choose what to include in your cloned agent.","optionChat":"Chat History","optionChatDesc":"Copy the builder conversation history to the new agent.","optionSkills":"Skills","optionSkillsDesc":"Copy backend functions, integrations, and tool configurations.","optionTasks":"Tasks","optionTasksDesc":"Copy automations (scheduled, entity-triggered, and connector-based).","optionSecrets":"API Keys","optionSecretsDesc":"Copy stored secrets and API keys to the new agent.","cloneButton":"Clone Agent","cloning":"Cloning...","cloneError":"Failed to clone agent"},"securityTab":{"title":"Security","subtitle":"Run a security scan to detect potential vulnerabilities.","scanning":"Scanning...","runScan":"Run Security Scan","noIssues":"No issues found","agentSecure":"Your agent looks secure.","severityCount":"{{severity}} severity","idleMessage":"Click \\"Run Security Scan\\" to check your agent for vulnerabilities.","scanFailed":"Security scan failed"},"secretsTab":{"title":"Secrets","subtitle":"Environment variables available to your agent's backend functions.","noSecrets":"No secrets yet","addSecret":"Add a secret","secretNamePlaceholder":"SECRET_NAME","valuePlaceholder":"value","add":"Add","secretSaved":"Secret {{name}} saved","failedToSave":"Failed to save secret","secretDeleted":"Secret {{name}} deleted","failedToDelete":"Failed to delete secret","failedToLoad":"Failed to load secrets"},"billingTab":{"title":"Agent Credit Card","subtitle":"Usage and billing for your agent.","monthlyUsage":"Monthly Usage","extraCredits":"+{{count}} extra credits available","pastDue":"Payment past due","pastDueDescription":"Please update your payment method to avoid service interruption.","goodStanding":"Account in good standing","currentPeriod":"Current period:","nextPeriod":"Next period starts:","manageBilling":"Manage billing","failedToLoad":"Failed to load usage data","unableToLoad":"Unable to load billing data"},"dangerZoneTab":{"title":"Danger Zone","subtitle":"Irreversible actions for this agent.","deleteTitle":"Delete this agent","deleteDescription":"Permanently remove this agent and all its data, conversations, files, and integrations. This action cannot be undone.","deleteButton":"Delete this agent","deleteSuccess":"Agent deleted successfully","deleteFailed":"Failed to delete agent"},"apiDocsTab":{"title":"API Reference","subtitle":"Use the REST API to interact with your agent programmatically. Create conversations, send messages, and manage memory from any application.","baseUrl":"Base URL","authentication":"Authentication","authDescription":"Include your API key in the request header:","authAlternative":"Alternatively, pass it as a query parameter:","quickStart":"Quick Start","quickStartDescription":"Follow these steps to start chatting with your agent via the API:","step1CreateConversation":"1. Create a conversation","step2SendMessage":"2. Send a message","step3ListConversations":"3. List conversations","endpoints":"API Endpoints","requestBody":"Request body","listConversationsDesc":"List all conversations for the authenticated user","listConversationsNote":"Returns conversations sorted by creation date. Supports pagination via query parameters.","getConversationDesc":"Get a specific conversation with all messages","createConversationDesc":"Create a new conversation with the agent","sendMessageDesc":"Send a message and get the agent's response","sendMessageNote":"The agent will process the message and return its response. Max message length is 8000 characters.","deleteMessageDesc":"Delete a specific message from a conversation","listMemoryDesc":"List the agent's memory items","deleteMemoryDesc":"Delete a specific memory item","responseFormat":"Response Format","responseFormatDescription":"Conversations are returned as JSON objects containing an array of messages:","rateLimits":"Rate Limits","rateLimitsDescription":"API requests are rate-limited per user. If you exceed the limit, you'll receive a 429 status code. Wait and retry after a short delay.","errorCodes":"Error Codes","error401":"Unauthorized — invalid or missing API key","error403":"Forbidden — you don't have access to this resource","error400":"Bad request — invalid input (e.g. message too long)","error404":"Not found — conversation or resource doesn't exist","copy":"Copy"},"toolsPermissionTab":{"title":"Tools Permission","subtitle":"Allow specific operations to execute without requiring your confirmation.","warning":"When enabled, the agent will perform these actions on its own. Your data security rules still apply.","updateData":"Update Data","updateDataDescription":"Let the agent update records without asking first.","deleteData":"Delete Data","deleteDataDescription":"Let the agent delete records without asking first.","failedToSave":"Failed to save settings","effectNote":"Settings apply immediately. AI responses may not always follow rules perfectly.","connectorRulesTitle":"Connector Rules","connectorRulesSubtitle":"Tell the agent what it can and can't do with each service.","connectorRulePlaceholder":"e.g., Only read emails, never send or delete","loadingConnectors":"Loading connectors...","saveRules":"Save","rulesSaved":"Connector rules saved"},"knowledgeTab":{"noFiles":"No knowledge files yet","noFilesDescription":"Start chatting with your agent to build its identity and knowledge","identity":"Identity"},"telegramTab":{"title":"Telegram","connected":"Your Telegram bot is connected and active.","notConnected":"Connect a Telegram bot to chat with your agent.","connectedBot":"Connected Bot","botName":"Bot name","username":"Username","status":"Status","active":"Active","verifyBanner":"Click the button below to verify your identity on Telegram. This ensures only you can use this bot.","verifyOnTelegram":"Verify on Telegram","openTelegram":"Open in Telegram","scanQr":"Scan the QR code with your phone to open the bot in Telegram.","disconnect":"Disconnect","disconnectConfirm":"Disconnect this Telegram bot? Users will no longer receive responses.","disconnected":"Telegram bot disconnected","failedToDisconnect":"Failed to disconnect","howItWorks":"How it works","step1":"Users open your bot in Telegram and send /start to begin.","step2":"Every text message they send is processed by your agent.","step3":"The agent's response is sent back in the Telegram chat."},"telegramSetup":{"connectTitle":"Connect Telegram","connectDescription":"Create a Telegram bot for your agent with one click. It will be set up and ready to chat automatically.","autoCreateButton":"Connect Telegram Bot","autoWaitingTitle":"Waiting for bot creation...","autoWaitingDescription":"Confirm the bot in Telegram, then we'll set everything up automatically.","autoTimeoutError":"Bot creation timed out. Please try again or use manual setup.","autoExpiredError":"Bot creation failed. Please try again.","cancel":"Cancel","alreadyHaveBot":"I already have a bot token","pasteTokenTitle":"Connect with Token","manualInstructions":"Create a bot via @BotFather in Telegram, then paste the token here.","tokenPlaceholder":"Paste bot token...","tokenExtracted":"Token extracted","tokenNotFound":"No valid token found","connectBot":"Connect","connecting":"Connecting...","successTitle":"Bot Connected!","openTelegram":"Open in Telegram","failedToConnect":"Failed to connect bot"},"whatsappTab":{"title":"WhatsApp","subtitle":"Chat with your agent via WhatsApp.","connectTitle":"Connect WhatsApp","connectDescription":"Click the button below to open WhatsApp and activate the connection. You'll receive an activation code to send to the agent's WhatsApp number.","openWhatsApp":"Open WhatsApp","scanQr":"Scan the QR code with your phone to open the conversation in WhatsApp.","howItWorks":"How it works","step1":"Click \\"Open WhatsApp\\" — this opens WhatsApp with a pre-filled activation code.","step2":"Send the activation code to start the connection.","step3":"Once connected, any message you send on WhatsApp will be handled by your agent."},"lineTab":{"title":"LINE","subtitle":"Chat with your agent on LINE.","connectTitle":"Connect via LINE","connectDescription":"Generate an activation code, scan the QR on your phone to add the bot, then send the code.","generateCode":"Generate Activation Code","scanQrLabel":"Scan with LINE","scanQrHint":"Open LINE on your phone and scan this QR code to add the bot.","activationCodeLabel":"Activation code","sendCodeHint":"After adding the bot, send this code as a message to activate.","generating":"Generating...","regenerate":"Generate a new code","codeCopied":"Code copied!","codeExpiry":"Expires in 30 minutes","failedToGenerate":"Failed to connect to LINE","howItWorks":"How it works","step1":"Click \\"Generate Activation Code\\" to get your code and QR.","step2":"Scan the QR code with LINE on your phone to add the bot as a friend.","step3":"Send the activation code as a message to the bot to connect."},"imessageTab":{"title":"iMessage","subtitle":"Chat with your agent via iMessage.","connected":"Connected and active via iMessage.","connectedTitle":"iMessage Connection","connectAnotherTitle":"Connect another device","statusLabel":"Status","active":"Active","connectTitle":"Connect via iMessage","connectDescription":"Click the button below and iMessage will open with the activation code ready to send.","connectButton":"Connect via iMessage","manualFallback":"Didn't open automatically? Send the code manually:","phoneNumberLabel":"Phone number","activationCodeLabel":"Activation code","codeCopied":"Code copied!","codeExpiry":"Expires in 30 minutes","failedToGenerate":"Failed to generate iMessage code","appleOnlyTitle":"Apple device required","appleOnlyMessage":"iMessage is only available on Apple devices (iPhone, iPad, or Mac). Please open this page on an Apple device to connect.","capacityTitle":"iMessage temporarily unavailable","capacityMessage":"iMessage is experiencing unusually high demand right now. Please check back in a few hours — we're working on expanding capacity.","howItWorks":"How it works","step1":"Click \\"Connect via iMessage\\" — your Messages app will open with the activation code pre-filled.","step2":"Send the message and your agent is connected. That's it!"},"pluginsTab":{"builtInServices":"Built-in Services","builtInSubtitle":"Platform capabilities available to your agent by default.","base44Backend":"Base44 Backend","alwaysActive":"Always Active","base44Description":"Database, functions, file storage, and automations","dataEntities":"Data & Entities","dataEntitiesTool1":"Create, read, update, delete & filter entity records","dataEntitiesTool2":"Row-level security enforcement","backendFunctions":"Backend Functions","backendFunctionsTool1":"Deploy & call serverless Deno functions","backendFunctionsTool2":"Manage environment secrets","fileStorage":"File Storage","fileStorageTool1":"Upload public & private files","fileStorageTool2":"Create signed download URLs","automationsLabel":"Automations","automationsTool1":"Schedule CRON jobs","automationsTool2":"Entity change triggers","connectors":"Connectors","connectorsSubtitle":"Connect your agent to the apps and services you already use.","addConnector":"Add Connector","close":"Close","noConnectors":"No connectors. Add one to give your agent access to external services.","connected":"Connected","available":"Available ({{count}})","allConnected":"All connectors are already connected.","revoked":"Revoked","disconnectedStatus":"Disconnected","active":"Active","switchAccount":"Switch account","reconnect":"Reconnect","disconnect":"Disconnect","remove":"Remove","connect":"Connect","connectorConnected":"Connector connected","connectionCancelled":"Connection cancelled","connectorDisconnected":"Connector disconnected","failedToDisconnect":"Failed to disconnect","connectorRemoved":"Connector removed","failedToRemove":"Failed to remove","openAuthLinkManually":"Open authorization link manually","connecting":"Connecting...","mcpPlugins":"MCP Plugins","mcpSubtitle":"MCP connections that extend your agent's capabilities.","cancel":"Cancel","addPlugin":"Add Plugin","noPlugins":"No plugins connected","noPluginsDescription":"Add an MCP server to give your agent new tools.","failedToLoad":"Failed to load plugins","failedToToggle":"Failed to toggle plugin","pluginDeleted":"Plugin deleted","failedToDelete":"Failed to delete plugin","pluginAdded":"Plugin added","pluginNamePlaceholder":"Plugin name","mcpUrlPlaceholder":"MCP server URL (https://...)","foundTools":"Found {{count}} tools","connectionTestFailed":"Connection test failed","connectedTools":"Connected — {{count}} tools available","connectionFailed":"Connection failed","test":"Test","save":"Save","failedToCreate":"Failed to create plugin","enabled":"Enabled","disabled":"Disabled","toolsCount":"Tools ({{count}})","noTools":"No tools available","toolsFound":"{{count}} tools found","testFailed":"Test failed","connectedChatMessage":"I just connected {{name}} from the integrations panel. What can I do with it?","connectedReadOnlyChatMessage":"I just connected {{name}} in read-only mode from the integrations panel. It can only read data, not create or modify anything. What can I do with it?","accessModeChangedMessage":"I just switched {{name}} to {{mode}} mode. Please keep this in mind for future actions.","disconnectedChatMessage":"I just disconnected {{name}} from the integrations panel.","readOnly":"Read only","fullAccess":"Can manage","switchToReadOnly":"Switch to read only","switchToFullAccess":"Switch to manage","searchConnectors":"Search connectors...","noSearchResults":"No connectors found","noSearchResultsDesc":"Try different keywords or clear the search.","noConnectorsYet":"No connectors connected yet.","base44Official":"Base44 Official","setUp":"Set up","loadMore":"Load {{count}} more","showAll":"Show all ({{count}})","moreIcons":"+{{count}} more","sort":{"title":"Sort","mostUsed":"Most used","recentlyAdded":"Recently added","az":"A-Z","za":"Z-A"}},"paymentsTab":{"title":"Payments","stripeName":"Stripe","description":"Accept payments from your customers via Stripe.","notConnected":"Stripe is not connected","connectedDescription":"Payment links, products, and checkout are available.","setupPrompt":"Ask your agent in chat to set up Stripe payments. It will guide you through the process.","askInChat":"Ask in chat","sandboxMode":"Sandbox","liveMode":"Live","testCard":"Test card number","claimAndGoLive":"Claim & Go Live","remove":"Remove integration","removeConfirm":"Are you sure?","confirmRemove":"Yes, remove","cancel":"Cancel","removed":"Stripe integration removed","removeFailed":"Failed to remove Stripe integration","loadFailed":"Failed to load payment status","setupMessage":"Set up Stripe payments for my agent"},"integrationsTab":{"tabSkills":"Skills","tabConnectors":"Connectors","skillsTitle":"Skills","skillsSubtitle":"Reusable instructions that give your agent specialized abilities.","addSkill":"Add Skill","noSkills":"No skills yet","noSkillsHint":"Add a skill to teach your agent new capabilities.","installed":"Installed"},"automationsTab":{"title":"Automations","subtitle":"Scheduled tasks and webhooks.","noAutomations":"No automations yet","trySuggestions":"Try one of the ideas above, or ask in chat.","askAgent":"Ask your agent in chat to set one up.","scheduled":"Scheduled","entityTriggered":"Entity Triggered","webhooks":"Webhooks","active":"Active","paused":"Paused","details":"Details","runNow":"Run now","pause":"Pause","activate":"Activate","delete":"Delete","trigger":"Trigger","instructions":"Instructions","taskId":"Task ID","parameters":"Parameters","runHistory":"Run History","totalRuns":"{{count}} total","succeeded":"{{count}} succeeded","failedRuns":"{{count}} failed","lastRun":"Last run:","created":"Created {{date}}","runsStats":"{{total}} runs · {{succeeded}} succeeded · {{failed}} failed","failedToToggle":"Failed to toggle automation","archive":"Archive","automationArchived":"Automation archived","failedToArchive":"Failed to archive automation","automationDeleted":"Automation deleted","failedToDelete":"Failed to delete automation","automationTriggered":"Automation triggered","failedToRun":"Failed to run automation","failedToLoad":"Failed to load automations","consumesCredits":"Consumes message credits","agentRunsWhenTriggered":"Agent responds when triggered","agentNameRunsWhenTriggered":"{{name}} responds when triggered","creditsUsed":"{{credits}} credits used","totalCredits":"Total credits: {{credits}}","trackingSince":"since {{date}}","executionLogs":"Execution Logs","noLogs":"No logs yet","status":{"success":"success","running":"running","failed":"failed"},"archived":"Archived","noArchivedAutomations":"No archived automations","archivedDescription":"Automations you archive will appear here.","restore":"Restore","automationRestored":"Automation restored","failedToRestore":"Failed to restore automation"},"identity":{"updated":"Identity updated","failedToSave":"Failed to save identity","avatar":"Avatar","emoji":"Emoji","setEmoji":"Set","uploadImage":"Upload image","changeImage":"Change","removeImage":"Remove image","useEmoji":"Use emoji","name":"Agent Name","agentNamePlaceholder":"Agent name","userName":"Your Name","userNameDisplay":"Your Name: {{name}}","userNamePlaceholder":"Your name","userNameHint":"How the agent addresses you","description":"Description","descriptionPlaceholder":"What does this agent do?","unnamedAgent":"Unnamed Agent","cancel":"Cancel","save":"Save","edit":"Edit","rawIdentity":"Raw IDENTITY.md","editInEditor":"Edit in editor","entry":"{{count}} entry","entries":"{{count}} entries"},"knowledgeEditor":{"fileUpdated":"File was updated externally","fileModified":"{{name}} was modified. Reload to see changes.","reload":"Reload","saved":"{{label}} saved","failedToSave":"Failed to save","unsavedChanges":"You have unsaved changes. Discard them?","rawText":"Raw text","readOnly":"Read-only","editAnyway":"Edit anyway","edit":"Edit","save":"Save","startWriting":"Start writing..."},"knowledgeFiles":{"title":"Knowledge Files","uploading":"Uploading {{count}} file(s)...","new":"New","fileNamePlaceholder":"file-name","mdExtension":".md","enterFileName":"Please enter a file name","fileExists":"A file with this name already exists","failedToCreate":"Failed to create file","unsupportedType":"Unsupported file type","failedToUpload":"Failed to upload {{name}}","renamedTo":"Renamed to {{name}}","failedToRename":"Failed to rename file","failedToLoadFile":"Failed to load file","deleteConfirm":"Delete \\"{{name}}\\"? This cannot be undone.","failedToDelete":"Failed to delete file","dropOrUpload":"Drop files here or click to upload","supportedTypes":"Documents, images, CSVs, code files, and more","dropOrBrowse":"Drop files or","browse":"browse"},"artifacts":{"description":"Small mini apps to get you going. For full-featured apps, build on Base44.","buildFullApp":"Build a full app","title":"Artifacts","pageCount_one":"{{count}} page","pageCount_other":"{{count}} pages","empty":"No artifacts yet","emptyDescription":"Ask your agent to create a mini app and it will appear here."},"feedbackModal":{"thankYou":"Thank you!","thankYouSubtitle":"Your feedback helps us improve.","title":"How's your experience?","subtitle":"Your feedback shapes what we build next.","submitError":"Failed to submit feedback. Please try again.","placeholder":"Tell us what's on your mind...","sending":"Sending...","sendFeedback":"Send feedback","ratingBad":"Bad","ratingPoor":"Poor","ratingOkay":"Okay","ratingGood":"Good","ratingAmazing":"Love it","openSupportTicket":"Open a support ticket"}}`),iF={live:"Live",offScreen:"Off-screen",waiting:"Waiting...",loading:"Loading...",previewTitle:"Preview: {{pageName}}"},rF={main:"main"},oF={title:"Share your app",subtitle:"Share a link by email or on social",sendInviteLabel:"Send invite",sendInvitation_one:"Send Invitation",sendInvitation_other:"Send Invitations",invalidEmailsError:"One or more email addresses are not valid, please check them and try again.",workspaceIneligibleError:"You can also invite users from your workspace.",nonWorkspaceIneligibleError:"Some email addresses are not eligible to be invited.",removeIneligibleUsers:"Remove ineligible users",inviteSuccessToast:"User invitation sent successfully",inviteErrorToast:"Failed to send invites",copyLink:"Copy link",sendInvitationSection:"Send invitation",inviteEmailPlaceholder:"Enter email address",inviteButton:"Invite",shareLiveAppLink:"Share live app link",shareLiveAppLinkDesc:"Anyone with the link can view your app live, based on your app's visibility settings.",linkCopied:"Link Copied",enterEmailError:"Please enter an email address",cannotInviteOwner:"You cannot invite the owner of this app",inviteSuccess_one:"Invitation sent successfully",inviteSuccess_other:"{{count}} invitations sent successfully",inviteFailedToSend:"Failed to send invitation",role_admin:"Admin",role_user:"User"},sF={sidebar:EN,loading:PN,trash:_N,errors:xN,codeView:IN,loader:RN,toolbar:zN,header:MN,upgrade:NN,checkpoints:FN,viewAs:LN,pages:jN,publish:ON,chat:BN,builderCommandPalette:UN,unknownView:qN,appEditor:VN,beta:$N,new:"New",collaborators:WN,integrationsBanner:GN,tools:HN,mainPage:YN,unpublishApp:KN,deleteApp:ZN,deleteAgent:JN,skillTool:QN,automations:XN,create_automation:eF,create_automation_error:tF,automation_fallback_name:aF,agentEditor:nF,canvasPage:iF,canvasToolbar:rF,shareModal:oF},lF={title:"What will you build next?",titleMobile:`Hi, What will you
build next?`,subtitle:"Describe your app idea below or get inspired by our",subtitleTemplatesLink:"templates"},cF={title:"Recent Apps"},dF={title:"Recent Superagents"},uF={placeholder:"Describe the app you want to create...",placeholderPlanMode:"Tell Base what you want",placeholderViewer:"Viewers cannot create apps",placeholderWithUrl:"Add a description (optional)...",captureFullMode:"Build a site like this one",captureDesignMode:"Create a new site inspired by this design for...",uploadFile:"Upload from computer",uploadFileMobile:"Upload from device",captureFromUrlDescription:"Create a 1:1 starting point",createFromUrl:"Start from URL",addFromGoogleDrive:"Upload from Google Drive",aiModel:"AI Model",selectAiModel:"Select AI Model",modelPicker:{automatic:"Automatic",automaticDescription:"Matched with the best AI Model for each request",new:"New",manual:"Manual",builderPlus:"Builder+",manualDescription:"Select a specific AI model ({{models}}). Available on the Builder plan and above.",upgradeToSelect:"Upgrade to select an AI model"},speechToText:"Speech to text",processingAudio:"Processing audio...",clickToStopRecording:"Click to stop recording"},pF={exploreTemplates:"Explore templates from the community",discoverDescription:"Discover a curated collection of applications built by our community.",failedToLoadCatalog:"Failed to load catalog items",showingItems:"Showing {{displayed}} of {{total}} items",searchApps:"Search apps",viewAllTemplates:"View all templates",allCategories:"All",priceAll:"All Templates",priceFree:"Free Only",pricePaid:"Paid Only",pageTitle:"App Templates",pageSubtitle:"Explore a curated collection of applications built by our community.",tabs:{community:"Community",workspace:"Workspace",myTemplates:"My Templates"},categories:{marketingAndSales:"Marketing & Sales",operations:"Operations",dataAndAnalytics:"Data & Analytics",contentGeneration:"Content Generation",hrAndLegal:"HR & Legal",finance:"Finance",education:"Education",community:"Community",lifestyleAndHobbies:"Lifestyle & Hobbies",gamesAndEntertainment:"Games & Entertainment","Marketing & Sales":"Marketing & Sales",Operations:"Operations","Data & Analytics":"Data & Analytics","Content Generation":"Content Generation","HR & Legal":"HR & Legal",Finance:"Finance",Education:"Education",Community:"Community","Lifestyle & Hobbies":"Lifestyle & Hobbies","Games & Entertainment":"Games & Entertainment"},sort:{popular:"Popular",newest:"Newest first",oldest:"Oldest first"},languagePlaceholder:"Language",pricePlaceholder:"Price",noAppsFound:"No apps found",adjustSearchOrFilters:"Try adjusting your search or filters",templateNotFound:"Template not found or unavailable.",viewAllCommunityTemplates:"View All Community Templates",loadingMore:"Loading more items...",viewDetails:"View details",workspaceBadge:"Workspace",purchasedBadge:"Purchased",free:"Free",unknownUser:"Unknown User",private:"Private",howTo:{title:"How to Share Your App with the Community",intro:"Follow these simple steps:",step1Title:"Open your app's builder",step1Desc:"Navigate to an app you created or have admin access to",step2Title:"Go to catalog settings",step2Path:"Workspace → Settings → App Templates → Manage Listing",step3Title:"Publish your listing",step3Desc:"Add a description, screenshots, and configure your listing visibility",tipFull:"<bold>Tip:</bold> Make sure your app is deployed and has an engaging description to attract more users!"},modal:{close:"Close",prevScreenshot:"Previous screenshot",nextScreenshot:"Next screenshot",screenshotAlt:"Screenshot {{index}}",goToScreenshot:"Go to screenshot {{index}}",createdBy:"by {{creatorName}}",unknownCreator:"Unknown",usages_one:"{{count}} Usage",usages_other:"{{count}} Usages",private:"Private",workspaceTemplate:"Workspace Template",clonePurchase:"Clone Purchase",processing:"Processing...",purchaseFor:"Purchase for ${{price}}",useTemplate:"Use Template",viewApp:"View app",paymentInfo:"Payment goes entirely to the creator",backendFunctionsEnabled:"Backend functions enabled",usesIntegrations:"Uses integrations",aboutThisApp:"About this app",noDescription:"No description available",termsOfUse:"Terms of use",success:"Success",error:"Error",purchaseFailed:"Purchase Failed",failedToPurchase:"Failed to initiate purchase",listingApproved:"App listing approved successfully",approveListingFailed:"Failed to approve listing",listingDeclined:"App listing declined successfully",declineListingFailed:"Failed to decline listing",pendingUpdate:"Pending Update for Review",codeChangesPending:"App code changes pending",metadataChanges:"Listing metadata changes:",manageListing:"Manage Listing",approveUpdate:"Approve Update",declineUpdate:"Decline Update",approveListing:"Approve Listing",declineListing:"Decline Listing",approving:"Approving...",declining:"Declining...",cloneAsAdmin:"Clone as Admin"}},mF={subscriptionOverdue:"Subscription payment overdue",overdueMessage:"Your subscription payment is overdue, Access to some features is currently limited. Please update your payment method to regain full access.",goToBilling:"Go to Billing",creditLimitReached:"You've reached this month's limit. To continue creating apps",upgradePlan:"upgrade your plan"},gF={viewerAccess:"You have viewer access and cannot create apps. Contact your workspace admin to upgrade to Editor."},hF={fillApiKeys:"Please fill in all required API keys before submitting.",createAppFailed:"Failed to create app. Please try again."},fF={title:"Start from URL",description:"Use any website as a starting point for your new site.",urlLabel:"Website URL",urlPlaceholder:"e.g., www.example.com",errorEmpty:"Please enter a URL",errorInvalid:"Enter a valid website URL, like www.example.com",errorTooLong:"URL is too long. Please use a shorter URL.",modeFull:"Content & Design",modeFullDescription:"Build a similar site.",modeDesign:"Design only",modeDesignDescription:"Create a new site in the same style.",modeContent:"Content only",legalNotice:"Only use URLs where you have rights to the content.",cancel:"Cancel",add:"Add",learnMore:"Learn about creating from a URL",capturedUrl:"Captured url",appReady:"Your app is ready! You can now customize it or add new features.",banner:{headline:"Creating your app",headlineDesign:"Creating your app",subtitle:"This might take a bit longer than usual - we're making it worth the wait.",activity:{msg1:"Getting to know the site...",msg2:"Studying the design and feel...",msg3:"Putting the pieces together...",msg4:"Crafting something special...",msg5:"Working on it...",msg6:"Making it just right...",msg7:"Hang tight, great things ahead..."}}},vF={count:"Integrations: {{count}}",loading:"Loading integration...",selectedIntegrations:"Selected Integrations:"},bF={menuItem:"Connectors",dialogTitle:"Connectors",dialogDescription:"Connect tools and data sources to power your app.",search:"Search",add:"Add",added:"Added",remove:"Remove",noResults:"No connectors found",suggestionCardTitle:"Help me understand your integration request to:",choosePrompt:"Choose a prompt to continue.",somethingElse:"Something else",cancel:"Cancel",send:"Send",connectTo:"Connect to <name>{{name}}</name>",upgradeToConnect:"Upgrade your plan to connect {{name}} to your app.",connecting:"Connecting {{names}}…",cancelled:"cancelled",subtitles:{stripe:"Sell products or subscriptions and get paid online.",salesforce:"Automate and sync CRM records.",slack:"Send messages and manage Slack as a user.",slackbot:"Post as a branded bot in your Slack workspace.",notion:"Organize and sync knowledge or project data.",googlecalendar:"Manage your schedule and calendar events.",googledrive:"Export and back up app-generated files.",gmail:"Automate email sending and inbox management.",googlesheets:"Sync and manage spreadsheet data.",googleslides:"Generate and manage presentations.",googledocs:"Manage and automate document creation.",googlebigquery:"Query and sync analytics data.",hubspot:"Sync CRM data and automate marketing.",linkedin:"Share updates and access professional profiles.",tiktok:"Track your profile stats and browse your videos.",discord:"Notify channels and integrate with your Discord community.",wix:"Access Wix site data and business tools.",github:"Manage repos, issues, and pull requests.",gitlab:"Manage projects, MRs, and CI/CD pipelines.",bamboohr:"Employee directory and HR management.",wrike:"Project planning and team coordination.",box:"Secure cloud content management.",clickup:"Organize projects and track team work.",google_analytics:"Track website traffic and user insights.",outlook:"Email and calendar.",linear:"Issue tracking and project management.",dropbox:"Store and sync files in the cloud.",google_search_console:"SEO and search analytics.",google_classroom:"Education and course management.",airtable:"Flexible databases and spreadsheets.",splitwise:"Expense splitting and group bills.",microsoft_teams:"Team chat, channels, and meetings.",share_point:"Document management and collaboration.",one_drive:"Cloud file storage.",typeform:"Forms, surveys, and data collection."}},yF={label:"Plan",tooltip:"Enable Plan mode to have the AI create a detailed plan before building your app."},kF="View all",wF="Error",AF={menuLabel:"Import from Figma",title:"Generate from Figma",description:"Paste a link to your Figma frame to generate an app based on your design.",labelUrl:"Figma URL",placeholderUrl:"e.g., https://www.figma.com/frame-link",urlHelp:"Use a link to one frame or section, not a file or page.",learnPrepare:"Learn how to prepare your design for import",connectTitle:"Connect to Figma",connectDescription:"Allow access to your Figma account to import your design.",connectButton:"Connect to Figma",connectedToFigma:"Connected to Figma",errorMissingUrl:"Enter a URL to a Figma frame or section",errorNotFigmaUrl:"Enter a URL to a Figma frame or section",errorNotFrameUrl:"Enter a URL to one frame, not a file or page.",errorRateLimit:"Figma's API is temporarily busy. Please try again in a few minutes.",errorForbidden:"Invalid or expired Figma connection. Please try reconnecting your Figma account.",errorNotFound:"Figma file not found. Please check the URL and make sure you have access to this file.",errorGeneric:"Unable to access this Figma design. Please check the URL and try again.",validating:"Checking...",switchAccount:"Switch Figma account",cancel:"Cancel",generate:"Generate",viewerCannotGenerate:"You have viewer access and cannot create apps. Contact your workspace admin to upgrade to Editor.",figmaFile:"Figma file",justNow:"Just now",importingMessage:"Generate an app based on your design from this Figma frame."},SF={connectFailed:"Failed to connect Figma. Please try again.",popupBlocked:"Popup blocked. Please allow popups and try again.",disconnected:"Figma disconnected",disconnectFailed:"Failed to disconnect Figma. Please try again."},CF={capturing:"Capturing...",figmaDescription:"Analyzing Figma design system. Extracting layout, typography, and color tokens to build your app."},DF={webApp:"Apps",aiAgent:"Superagents",recentApps:"Recent apps",templates:"Templates",favoritesComingSoon:"Favorites coming soon"},TF={new:"New",message:"Say hello to your real Personal Agent",cta:"Try it now"},EF={greeting:"Hi {{name}},",greetingGeneric:"Hi there,",title:"Build your own AI Personal Agent",createTitle:"Create your own Superagent",newBadge:"New",subtitle:"Your AI agent that runs tasks, connects to your tools, and works for you 24/7",cta:"Create your Superagent",creating:"Creating...",continueHero:{heading:"Pick up where you left off",continueBtn:"Continue with {{name}}",or:"Or",createNew:"Create a new superagent",activeAgo:"Active {{time}}",you:"You"},features:{hassleFree:{title:"Hassle free",desc:"No Docker, no servers, no setup. Just run your Superagent."},alwaysOn:{title:"Always on",desc:"Runs tasks and automations for you, 24/7."},actions:{title:"Takes real action",desc:"Handles tasks, sends updates, and reacts automatically."},remembers:{title:"Remembers everything",desc:"Keeps track of your goals, preferences, and context."},everywhere:{title:"Lives where you are",desc:"Works in WhatsApp, Telegram, Slack, and your browser."},secure:{title:"Secure by default",desc:"Access only to what you allow."}},untitled:"Untitled Agent",active:"Active",noDescription:"No description available",edited:"Edited {{time}}",updated:"Updated {{time}}",failedToCreate:"Failed to create agent. Please try again.",errorPage:{title:"Oops, something went wrong",descriptionLine1:"There was a technical issue on our side.",descriptionLine2:"Go back to the agent creation page and try again",goToAgents:"Go to Agents →"}},PF={edited:"Edited {{time}}",updated:"Updated {{time}}",updatedRecently:"Updated recently"},_F={emptyTitle:"You haven't created any apps yet.",emptySubtitle:"Create your first app using the form above!"},xF={dialogTitle:"Quick navigation",dialogDescription:"Jump to apps, templates, billing, and workspace settings from the homepage.",searchPlaceholder:"Search apps, settings, templates, billing...",searching:"Searching workspace apps...",emptyTitle:"No matching destination",emptyDescription:"Try an app name, a settings section, or a page like billing or templates.",allApps:"All apps",backToWorkspace:"Back to workspace",templates:"Templates",billing:"Billing",groups:{apps:"Apps",navigate:"Pages",workspace:"Workspace",account:"Account"},subtitles:{favoriteApp:"Favorite app",recentApp:"Recent app",page:"Page"}},IF={label:"What would you like to create?",more:"More",moreIdeas:"More ideas",categories:{CRM:"CRM","Dev productivity":"Dev Productivity",Educational:"Educational","Content Generation and Editing":"Content Generation and Editing","Personal Finance":"Personal Finance","Health and Wellness":"Health and Wellness",Productivity:"Productivity","Travel Planning":"Travel Planning",Entertainment:"Entertainment",Environmental:"Environmental","Home Management":"Home Management","Creative Tools":"Creative Tools",Tasks:"Tasks","CRM & Sales":"CRM & Sales",Portfolio:"Portfolio",Finance:"Finance","Scheduling & Booking":"Scheduling & Booking",eCommerce:"eCommerce","Construction & Trade":"Construction & Trade","Events & Community":"Events & Community",Wellness:"Wellness","Operations & Logistics":"Operations & Logistics","Tasks & Workflows":"Tasks & Workflows","Content & Sites":"Content & Sites",Booking:"Booking","E-commerce":"E-Commerce",Projects:"Projects",Operations:"Operations"}},RF={hero:lF,recentApps:cF,recentAgents:dF,chat:uF,catalog:pF,billing:mF,permissions:gF,validation:hF,urlCapture:fF,integrations:vF,connectors:bF,planMode:yF,viewAll:kF,error:wF,figmaDialog:AF,figmaOAuth:SF,statusBanner:CF,tabs:DF,tryAgentBanner:TF,agent:EF,appCard:PF,appsList:_F,commandPalette:xF,ideas:IF},zF={title:"Integrations",subtitle:"Discover pre-built integrations that let you connect to APIs, services, and tools to extend your app's capabilities."},MF={placeholder:"Search integrations..."},NF={title:"No matching integrations found",description:"Try adjusting your search or filter settings."},FF={title:"Connectors",subtitle:"Quick OAuth connections to popular services, supported by Base44."},LF={howToUse:"How to use",dialog:{getStarted:"Get started",navigateInstruction:"Navigate to your app's Integrations tab to connect {{name}} and get personalized prompts.",upgradeNotice:"This integration requires backend functions, a feature available only on Builder tier and above. <seePlansLink>See Plans</seePlansLink>"}},jF={stripe:"Sell products or subscriptions and get paid online.",salesforce:"Automate and sync CRM records.",slack:"Send messages and manage Slack as a user.",slackbot:"Post as a branded bot in your Slack workspace.",notion:"Organize and sync knowledge or project data.",googlecalendar:"Manage your schedule and calendar events.",googledrive:"Export and back up app-generated files.",gmail:"Automate email sending and inbox management.",googlesheets:"Sync and manage spreadsheet data.",googleslides:"Generate and manage presentations.",googledocs:"Manage and automate document creation.",googlebigquery:"Query and sync analytics data.",googletasks:"Manage to-do lists and tasks.",googlemeet:"Video conferences and meetings.",hubspot:"Sync CRM data and automate marketing.",linkedin:"Share updates and access professional profiles.",tiktok:"Track your profile stats and browse your videos.",discord:"Notify channels and integrate with your Discord community.",wix:"Access Wix site data and business tools.",github:"Manage repos, issues, and pull requests.",gitlab:"Manage projects, MRs, and CI/CD pipelines.",bamboohr:"Employee directory and HR management.",wrike:"Project planning and team coordination.",box:"Secure cloud content management.",clickup:"Organize projects and track team work.",google_analytics:"Track website traffic and user insights.",outlook:"Email and calendar.",linear:"Issue tracking and project management.",dropbox:"Store and sync files in the cloud.",google_search_console:"SEO and search analytics.",google_classroom:"Education and course management.",airtable:"Flexible databases and spreadsheets.",splitwise:"Expense splitting and group bills.",microsoft_teams:"Team chat, channels, and meetings.",share_point:"Document management and collaboration.",one_drive:"Cloud file storage.",typeform:"Forms, surveys, and data collection.",hugging_face:"AI inference and model repos.",calendly:"Automated appointment scheduling.",contentful:"Headless CMS and content management.",supabase:"Browse schemas, read data, and view project status (read-only)."},OF={page:zF,search:MF,emptyState:NF,connectors:FF,connector:LF,catalog:jF},BF={title:"Launchpad",subtitle:"Discover and explore apps built by the community",shareApp:"Share Your App",allApps:"All Apps",noAppsFound:"No apps found",noAppsHint:"Try clearing your filters or searching for something else.",noAppsEmpty:"Be the first to publish an app on Launchpad!",clearFilters:"Clear filters",goToFirstPage:"Go to first page",retry:"Retry",publishedToast:"Your app is now live on Launchpad!"},UF={placeholder:"Search apps on Launchpad..."},qF={all:"All"},VF={title:"Trending Now"},$F={title:"Top Apps",empty:"No top apps for this period yet.",thisWeek:"This Week",thisMonth:"This Month",allTime:"All Time"},WF={live:"Live",someone:"Someone",sentences:{vote:"{{user}} just voted on {{app}}",like:"{{user}} just liked {{app}}",publish:"{{user}} just published {{app}}",default:"{{user}} just interacted with {{app}}"}},GF={signInPrompt:"Please sign in to publish your app on Launchpad.",signIn:"Sign in",back:"Back",next:"Next",publish:"Publish",publishing:"Publishing...",stepOf:"Step {{current}} of {{total}}",successToast:"Your app is now live on Launchpad!",failedDefault:"Failed to publish. Please try again.",categoriesLoadFailed:"Failed to load categories. Please close and try again.",categoriesRetry:"Retry",steps:{selectApp:"Select App",details:"Details",preview:"Preview"},appPicker:{chooseApp:"Choose which app you'd like to publish on Launchpad.",searchPlaceholder:"Search your apps...",loadFailed:"Failed to load your apps.",tryAgain:"Try again",noApps:"You don't have any apps yet.",noAppsForQuery:'No apps found for "{{query}}"',loadMore:"Load more"},preview:{caption:"Here's how your app will appear in the Launchpad grid:",creatorFallback:"You"},categoryPicker:{count:"{{current}}/{{max}} categories selected"},validation:{nameRequired:"App name is required",descriptionRequired:"Short description is required",descriptionTooLong:"Max {{max}} characters",categoriesRequired:"Select at least 1 category",screenshotsRequired:"Upload at least 1 screenshot"}},HF={uploadFailed:"Some screenshots failed to upload. Please try again.",uploading:"Uploading...",addImage:"Add image",count:"{{current}}/{{max}} screenshots. Drag to reorder."},YF={previous:"Previous",next:"Next",pageOf:"Page {{page}} of {{totalPages}}"},KF={justNow:"just now",minutesAgo:"{{count}}m ago",hoursAgo:"{{count}}h ago",daysAgo:"{{count}}d ago"},ZF={appName:"App Name",shortDescription:"Short Description",shortDescriptionPlaceholder:"A brief description of what your app does",longDescription:"Long Description",longDescriptionPlaceholder:"Tell people more about your app...",optional:"Optional",categories:"Categories",screenshots:"Screenshots",generateWithAi:"Generate with AI",aiComingSoon:"AI generation coming soon"},JF={tryApp:"Try App",share:"Share",shareToast:"Link copied to clipboard!",shareError:"Failed to share",about:"About",moreByCreator:"More by {{name}}",backToLaunchpad:"Back to Launchpad",notFound:"App not found",notFoundHint:"This app may have been removed or unpublished.",loadFailed:"Failed to load app details.",unknownCreator:"this creator"},QF={title:"Comments",placeholder:"Write a comment...",submit:"Post",submitting:"Posting...",empty:"No comments yet. Be the first!",loadMore:"Load more comments",deleteFailed:"Failed to delete comment.",postFailed:"Failed to post comment.",signInToComment:"Sign in to leave a comment",anonymous:"Anonymous"},XF={likeFailed:"Failed to update like.",voteFailed:"Failed to update vote.",selfVoteError:"You cannot vote for your own app."},eL={loadFailed:"Failed to load Launchpad data. Please try again.",browseFailed:"Failed to load apps. Please try again.",topAppsFailed:"Failed to load top apps. Please try again.",categoriesFailed:"Failed to load categories.",refreshFailed:"Failed to refresh — please reload the page."},tL={page:BF,search:UF,categories:qF,trending:VF,topApps:$F,liveActivity:WF,publish:GF,screenshots:HF,pagination:YF,relativeTime:KF,fillDetails:ZF,detail:JF,comments:QF,engagement:XF,errors:eL},aL={title:"Apps",allAgentsTitle:"All Agents",createNewApp:"Create New App",createNewAgent:"Create New Agent",tabRecents:"Recents",tabFavorites:"Favorites",tabAllApps:"All Apps",tabAllAgents:"All Agents",searchPlaceholder:"Search apps",gridView:"Grid view",listView:"List view",appTypeLabel:"App type",appTypeApps:"Apps",appTypeAgents:"Agents",tableHeaderName:"Name",tableHeaderDescription:"Description",tableHeaderActions:"Actions",folderActionAddApps:"Add Apps",folderActionRename:"Rename",folderActionDelete:"Delete",filterOwnedByMe:"Owned by me",filterMyAppsPersonal:"My apps (personal workspace)",filterAllPlatform:"All apps (platform wide)",filterMyAppsWorkspace:"My apps in {{workspaceName}} workspace",filterAllAppsWorkspace:"All apps in {{workspaceName}} workspace",addNewFolder:"Add New Folder",sortLastUpdated:"Last updated",sortLastCreated:"Last created",sortNameAsc:"Name (A-Z)",sortNameDesc:"Name (Z-A)",filterCreatedByMe:"Created by me",filterCreatedByAnyone:"Created by anyone",filterAllPlatformApps:"All platform apps",filterMyApps:"My apps in {{workspaceName}}",planModeDescription:"This application is currently in Plan Mode and has not been built yet.",noDescription:"No description",byCreator:"By {{name}}",createdAgo:"Created {{timeAgo}}",untitledPlan:"Untitled Plan",tableHeaderApp:"App",tableHeaderLastUpdated:"Last updated",tableHeaderCreatedBy:"Created by",emptyFolderTitle:"No apps added yet",emptyFolderMessage:"Apps will appear here once you add them",addExistingApps:"Add Existing Apps",emptyFavoritesTitle:"No favorite apps yet",emptyFavoritesMessage:"Star an app to add it here.",emptyRecentsTitle:"No recent activity",emptyRecentsMessage:"Apps you open will appear here.",emptySearchTitle:"No apps found",emptySearchMessage:"No apps found matching your criteria.",clearFilters:"Clear filters",previous:"Previous",next:"Next",failedToUpdateStar:"Failed to update star",failedToUpdateFavorite:"Failed to update favorite",pleaseRetry:"Please try again",folderCreated:"Folder created",folderRenamed:"Folder renamed",folderDeleted:"Folder deleted",folderUpdated:"Folder updated",filter:"Filter"},nL={showAll:"Show all",appCount_one:"{{count}} app",appCount_other:"{{count}} apps",addApps:"Add apps",rename:"Rename",delete:"Delete",cancel:"Cancel",save:"Save",saving:"Saving...",create:"Create",deleting:"Deleting...",createFirstFolder:"Create your first folder",createNewFolder:"Create new folder",renameFolder:"Rename folder",folderVisibilityDescription:"Folder organization is visible for your workspace.",folderNamePlaceholder:"Folder name",visibility:"Visibility",scopeWorkspace:"Workspace",scopePersonal:"Personal",personalScopeHint:"Only visible to you",deleteFolder:"Delete folder",deleteFolderDescription:`You're about to delete "{{name}}"? Apps in this folder won't be deleted, only the folder.`,manageFolders:"Manage folders",manageFoldersDescription:"Add or remove this app from folders.",searchFoldersPlaceholder:"Search folders...",createNewFolderButton:"Create New Folder",noFoldersMatchSearch:"No folders match your search",noFoldersYet:"No folders yet",allFolders:"All Folders",searchFolders:"Search folders",scopeFilterAll:"All",sortNameAsc:"Name A–Z",sortNameDesc:"Name Z–A",sortMostApps:"Most apps",sortFewestApps:"Fewest apps",noFoldersFound:"No folders found",noFoldersMatchCriteria:"No folders match your search criteria.",clearSearch:"Clear search",manageAppsInFolder:"Manage apps in folder",manageAppsDescription:'Add or remove apps in "{{name}}".',searchAppsPlaceholder:"Search for apps...",noAppsMatchSearch:"No apps match your search",noAppsFound:"No apps found",loadMore:"Load more",appUpdatedAgo:"Updated {{timeAgo}}",saveWithCount:"{{label}} ({{count}})",operationFailed:"Operation failed. Please try again."},iL={viewLiveApp:"View live app",share:"Share",rename:"Rename",cloneApp:"Clone app",appSettings:"App settings",delete:"Delete",appDeleted:"App deleted",appDeletedDescription:'"{{name}}" has been deleted',failedToDelete:"Failed to delete app",failedToDeleteDescription:"An error occurred while deleting the app",manageFolders:"Manage folders",removeFromFolder:"Remove from folder",goToAppSettings:"Go to App Settings",deleteApp:"Delete app",deleteAppTitle:'Delete "{{name}}"?',deleteAppDescription:"This will permanently delete this app and all its data. This action cannot be undone.",appRemovedFromFolder:"App removed from folder",failedToRemoveFromFolder:"Failed to remove app from folder",addedToFolders_one:"App added to {{count}} folder",addedToFolders_other:"App added to {{count}} folders",removedFromFolders_one:"App removed from {{count}} folder",removedFromFolders_other:"App removed from {{count}} folders",failedToUpdateFolders:"Failed to update folders",foldersUpdated:"{{added}} and {{removed}}",removeFromFavorites:"Remove from favorites",addToFavorites:"Add to favorites"},rL={title:"Rename app",description:"The app name is visible to you and your users.",inputPlaceholder:"Enter app name",urlUpdateNote:"Changing the app name will also update the app URL.",cancel:"Cancel",save:"Save",saving:"Saving...",nameRequired:"App name is required",enterDifferentName:"Please enter a different name",successTitle:"App renamed",successDescription:'App renamed to "{{name}}"',successDescriptionUrlFailed:'App renamed to "{{name}}", but the URL could not be updated.',failedTitle:"Failed to rename app",failedDescription:"An error occurred while renaming the app"},oL="Loading...",sL="(Copy)",lL={cloningTitle:"Cloning {{appName}}",cloningDescription:"This may take a few moments. You'll find it in the Apps page once it's ready",goToApps:"Go to Apps",confirmingPurchaseTitle:"Confirming your purchase...",confirmingPurchaseSubtitle:"This usually takes just a few seconds",errorTitle:"Error",goBack:"Go Back",cloneNotAllowedTitle:"Clone Not Allowed",cloneNotAllowedDescription:"This app requires backend functions. You need to be on the Builder tier or above to remix it.",configureSecrets:"Configure Secrets",cloneTitle:"Clone {{name}}",cloneButton:"Clone {{name}}",cloningButton:"Cloning {{name}}...",defaultAppName:"App",preparing:"Preparing...",errorCloningApp:"An error occurred while cloning the app",errorFetchingRequirements:"An error occurred while fetching cloning requirements",errorPurchaseTimeout:"Your purchase is taking longer than expected to confirm. Please check your email for confirmation, or contact support if the issue persists.",errorVerifyPurchase:"Unable to verify purchase. Please try again."},cL={userApps:aL,folders:nL,appActions:iL,renameApp:rL,loading:oL,copySuffix:sL,remixPage:lL},dL={title:"Base44 App Templates Marketplace - Terms of Service",lastUpdated:"Last updated: November 18, 2025"},uL=`These Base44 App Templates Marketplace Terms of Service (the "App Templates Terms") are a binding agreement between you and Wix.com Ltd. (including its subsidiaries and affiliates), which operates the Base44-branded services (collectively, "Base44", "we," or "us").
By accessing or using the App Templates Marketplace, you acknowledge that you have read, understood and agree to be bound by:
- the general Terms of Service of Base44.com, as may be amended from time to time, which can be reviewed at {{termsUrl}} ("Base44 Terms")
You further acknowledge that you have read the terms and conditions of Base44's privacy policy, which are published at {{privacyUrl}}, as may be amended from time to time, ("Privacy Policy").
The Base44 Terms and the Privacy Policy are incorporated herein by reference, and shall govern your use of the Base44 App Templates Marketplace in addition to these Terms. For the avoidance of doubt, the Base44 App Templates Marketplace is part of the Base44 Services. In the event of any conflict or inconsistency between these Terms and the Base44 Terms or the Privacy Policy, these Terms shall prevail with respect to the App Templates Marketplace.
Capitalized terms used in these Terms but not defined herein shall have the respective meanings ascribed to them in the Base44 Terms and Privacy Policy.
**WE MAY REVISE THESE APP TEMPLATES TERMS AT ANY TIME BY POSTING AN UPDATED VERSION.** Changes may include, without limitation, revenue‑share percentages, service fees, pricing, tax handling, payment processor terms, payout methods, minimum payout thresholds, currencies, withholdings and reserves, listing standards, ranking signals, security and compliance requirements, review policies, and enforcement mechanisms (collectively, "Program Changes"). Unless we state otherwise in our notice, Program Changes apply on and after the effective date of your Creator account, your existing listings, and future transactions involving those listings. Service fees, reserves, withholdings, offsets, payment processor requirements, and payout schedules may apply to amounts not yet paid out as of the effective date and to future transactions for existing listings. End‑user entitlements: Program Changes do not reduce features or access that an end user has already paid for under a prior license grant; however, operational, billing, support, compliance, security, or technical requirements may be updated and will apply to ongoing use. We may use third‑party payment processors, and your payouts are subject to their terms, limits, verification/KYC requirements, and availability. You are responsible for all taxes, and we may withhold or collect taxes where required by law. We may offset any amounts you owe us (including fees, refunds, chargebacks, adjustments, or tax withholdings) against any payouts due to you and we may establish, adjust, or release commercially reasonable reserves (e.g., up to 90 days, or longer if permitted by law or required by processors) to cover potential liabilities for past or future transactions.
We may modify, suspend, or discontinue the Marketplace or any feature, category, integration, or API, and may reclassify, delist, or require updates to your listings.
We may suspend or terminate your access, listings, or account at any time, with or without notice, including for suspected fraud, abuse, violations of these Terms, or non‑compliance with payment processor requirements or where your listings or templates present a security or integrity risk, including any attempt to install or distribute malware, spyware, or other malicious code, run unauthorized background services, mine cryptocurrency, or otherwise misuse user or platform resources. Upon suspension or termination, we may: (a) disable or remove your listings; (b) calculate your final net balance; (c) withhold a commercially reasonable reserve (e.g., up to 90 days) to cover potential refunds, chargebacks, or other liabilities; (d) pay out any undisputed net amounts due in accordance with the then‑current payout schedule, subject to offsets, holds, and legal withholdings; and/or (e) recoup any negative balances from your on‑file payment method or future earnings. Your continued use of the App Templates Marketplace following any changes constitutes acceptance. If you do not agree, do not use the App Templates Marketplace.
Base44 shall have the right to terminate your account as a Base44 Creator (as defined below) or a Base44 Member and remove you from the App Templates Marketplace at any time, without notice.
## 1. Overview of the Base44 App Templates Marketplace
### 1.1 Definitions
**"Marketplace"** means the Base44 App Templates Marketplace.
**"Listing"** means a Template's Marketplace page content (title, description, pricing, media, and support details).
**"Template License"** means the limited license granted to a Member to install/use one Template.
**"Duplicated App" / "Duplicating"** means creating a new app instance by duplicating from another app (whether via Base44 functionality or other means).
**"Base44 Billing System"** means Base44's integrated payments infrastructure (and approved third‑party processors).
**"Billing Action"** means any transaction processed by or through the Base44 Billing System, including purchases, refunds, chargebacks, holds, offsets, and reserves.
**"Member Modifications"** means any configurations, custom code, scripts, schemas, components, connectors, assets, content, data models, or other changes created by or for a Member in connection with installing, using, or customizing a Template in an app instance.
**"Member Derivative Works"** means any derivative works based on a Template that are created by or for a Member within the Member's environment, excluding the unmodified Template and Creator assets (e.g., Creator's marks, media, and proprietary libraries).
**"Member Data"** means any data, content, or materials input, uploaded, generated, or otherwise supplied by or for a Member (including by end users) in connection with use of the Template or the Marketplace.
### 1.2 The Base44 App Templates Marketplace is a marketplace that:
- Enables Base44 Creators (as defined below) to list, market and license app templates designed to operate in connection with the Base44 platform ("App Templates" or "Templates");
- Enables Base44 Members (as defined below) to discover Creators, review their profiles, and purchase single‑use licenses to App Templates.
Base44 itself does not offer or provide any services under the App Template Marketplace. Base44 is authorized by Creators to grant and sell licenses to App Templates. Creators remain solely responsible for their Templates.
### 1.3 Roles
**"Base44 Creator"** or **"Creator"** is any person or entity with a premium valid Base44 User Account that lists App Templates in the App Templates Marketplace.
**"Base44 Member"** or **"Member"** is any user with a valid Base44 User Account who browses, licenses Templates.
Creators and Members are each a "User" and collectively "Users."
### 1.4 Nature of services
Base44 is not an employment, matching, or referral agency. Except as expressly stated, the App Templates Marketplace does not provide, place, or seek employment/engagements for Users.
Base44 (or its payment providers) is authorized by Creators to grant and sell end‑user licenses to App Templates. Creators remain solely responsible for their Templates. Base44 is not liable for Creator Templates.
## 2. Eligibility
You must be at least 18 (or the age of majority in your jurisdiction) and have the authority to enter into these Terms. If you act on behalf of an entity, you represent that you are duly authorized to bind that entity.
You are responsible for your account, credentials, and all activity under it. Do not share your credentials. Notify Base44 promptly of any unauthorized access.
You agree not to:
- Violate any law, regulation, sanctions or export control regimes;
- Infringe any third‑party rights (IP, privacy, publicity, contract);
- Introduce malware, spyware, or other malicious code;
- Engage in spamming, scraping, or abusive behavior;
- Circumvent security or technical protections;
## 3. Participation
Selling Templates requires a paid plan, you must maintain an active eligible Base44 subscription (as specified by Base44 from time to time) in order to list, sell, or receive payouts for Templates.
Access to list App Templates is subject to Base44 eligibility criteria, guidelines, and continued compliance. We may approve, reject, remove, or require edits to any Template or profile at our sole discretion and without obligation to explain. One profile per Creator. Public profile information may be visible through the Platform.
## 4. Licenses and rights
### 4.1 Your license to Base44
By creating, posting or sharing any information or Templates, through the Service, you grant Base44 a worldwide, non‑exclusive, sublicensable, royalty‑free, fully‑paid, perpetual, transferable license to use, host, reproduce, modify, distribute, publicly perform/display, and otherwise exploit your App Templates, listing materials, profile content, marks and logos to operate, market, review, test, list, license and support the App Templates Marketplace and related Base44 services. This includes, without limitation, the right to sell non-sublicensable licenses of Marketplace Templates to Base44 Members, facilitate communications with Base44 Members and advertise and promote the Service, the Marketplace, your Profile, Portfolio and Templates. You waive any claims against Base44 or anyone on its behalf relating to any past, present or future moral rights, artists' rights, or any other similar rights worldwide that you may have in or to the Templates in your portfolio, with respect to such permitted uses.
### 4.2 Ownership
Except for the granted licenses, between Base44 and Creator, Creator retains ownership of its App Templates, marks and content. Base44 does not claim ownership in your Template Intellectual Property by virtue of listing or sale in the App Templates Marketplace.
Base44 does not acquire any ownership interest in the Templates, Marks or other User Content under these Marketplace Terms. Base44 Creator and its licensors (as applicable) shall retain their right, title and interest in the Templates, Marks and other User Content. In the event of any third party claim that a Base44 Member's possession or use of a Template or service you provide infringes on a third party's intellectual property rights, you, not Base44, will be solely responsible for the investigation, defense, settlement and discharge of any such intellectual property infringement claim.
**Member ownership of modifications.** As between the Parties, Member owns all right, title, and interest in and to Member Modifications, Member Derivative Works, and Member Data (excluding the underlying Template IP and Creator assets). Creator will have no claim (including IP, authorship, or moral rights claims) to Member Modifications, Member Derivative Works, or Member Data, and hereby waives and agrees not to assert such claims to the extent permitted by law. Nothing herein grants Member any ownership interest in the Creator's Template IP or Creator assets.
**Marks.** You grant Base44 a right to use, reproduce and display the Base44 Creator, and the Template's name and trademarks (the "Base44 Creator Marks") to market your listing, the App Templates Marketplace and promotional and marketing activities conducted by Base44 from time to time.
## 5. Creator representations
You represent, warrant, and covenant that:
1. You have the full right, power and authority to enter into these Terms and to fully perform all obligations hereunder. If you are entering into these Terms on behalf of an entity, you have the legal authority to bind that entity to these Terms. You are at least eighteen (18) years of age, or the age of majority in your jurisdiction of residence, whichever is higher.
2. All information you have provided and will provide to Base44 (including in listings, profiles, support channels, compliance attestations, tax forms and review materials) is and will remain true, accurate, current and complete.
3. Your App Templates, their contemplated use, and your use of App Templates Marketplace resources, do not and will not violate or conflict with any agreement, obligation, policy, or restriction to which you are a party or of which you are aware.
4. Your App Templates, their contemplated use, and your use of the App Templates Marketplace comply, and will continue to comply, with all applicable laws, rules and regulations, including without limitation:
- Data protection, privacy, and security laws governing the collection, use, sharing, retention and cross‑border transfer of personal information;
- Applicable telecommunications and electronic communications laws;
- Consumer protection, e‑commerce, advertising and marketing, product/service, and related laws.
5. Your App Templates, listings, and related materials, and your use of the App Templates Marketplace platform, do not and will not infringe, misappropriate, or violate any intellectual property, privacy, publicity, contractual, or other personal rights of any third party.
6. Your Templates presented in your profile will be free of any malicious code.
7. You own or otherwise have the full right and authority to present and publish the User Content or other content presented in your Profile, your Templates and your Portfolio (including, without limitation, links and third party websites). You must not submit, upload, post, display or share any content that you do not have the right to copy, use, link to or share for the purpose of your use of the Base44 Marketplace.
8. **No third‑party payments triggered by our exercise of rights** Base44 exercise of the rights you grant under these App Templates Marketplace Terms (including the operational license and use of your marks and listing materials) will not obligate Base44 to pay any amounts to any third party (e.g., royalties, residuals, guild fees, or other payments).
9. You are not (i) listed on, owned or controlled by any person or entity listed on, or otherwise the subject of, any applicable sanctions lists (including the U.S. OFAC Specially Designated Nationals and Blocked Persons List), and (ii) a national of, located in, or ordinarily resident in any country or region subject to comprehensive economic sanctions by the United States or Israel (currently including Crimea region of Ukraine, Cuba, Iran, North Korea, and Syria). You will comply with all applicable export control and sanctions laws.
10. You will promptly notify Base44 of any change that would render the above untrue or inaccurate; timely address review findings; and provide information reasonably requested to verify your compliance with these App Templates Marketplace Terms.
11. You confirm and acknowledge that some Personal Information and other Information (as those terms are defined in the Privacy Policy) you provide Base44 may become public and accessible to Base44 Members and other Base44 website visitors reviewing your Profile on the Base44 App Template Marketplace.
12. To the extent permitted by law, you irrevocably permit Members to adapt, configure, and develop on top of your Template within their app instance(s) and waive, and agree not to assert, any moral rights or similar claims that would restrict such permitted adaptations.
### 5.1 Warranty
You are solely responsible for any warranties, whether expressed or implied by law, to the extent not effectively disclaimed, for the Templates and any services you provide. Base44 will have no warranty obligation whatsoever with respect to the Templates or services you provide.
You agree that Base44 may monitor use of the Creator App Template to ensure quality, improve Base44 products and services, and verify your compliance with the Base44 Terms. This monitoring may include Base44 accessing and using your Apps, for example to identify security issues that could affect Base44 or Base44's users and/or visitors (collectively, the "Users"). You will not interfere with this monitoring. Base44 may use any technical means to overcome such interference. Base44 may suspend access to the Creator Apps by You or your Apps without notice if we reasonably believe that You are in violation of the Base44 Terms.
### 5.2 License to You
Subject to your ongoing compliance with these Terms, Base44 grants You a limited, non-exclusive, non-assignable, non-transferable and revocable license to use the Base44 Platform and develop, test, share and support your Apps which are built on Our Platform, solely in the manner described in these Terms.
You may not rent, lease, lend, sell, redistribute or sublicense the Base44 Services and/or the Base44 Template Marketplace.
Base44 retains all right, title, and interest in the Base44 Platform and Services.
## 6. Template requirements; submission and review
### 6.1 Requirements
- The Template must be fully functional and reviewed for bugs and defects;
- The Template, and any demo or instances presented in your Listing, must be free of malware, spyware, viruses, trojans, backdoors, or other malicious code, and must not run unauthorized background services, mine cryptocurrency, or otherwise misuse user or platform resources;
- The Template must not include any mechanism that grants the Creator (or any third party) access to a Member's app instance, systems, or data.
- The Template must not collect, transmit, Member Data.
- The Template must not infringe or misappropriate any intellectual property or personal right of any third party; and
- The Template must comply with any other requirements provided to you by Base44.
### 6.2 Submission
Submit each Template (and material updates) for review with an active demo account, credentials, and any resources needed to fully evaluate functionality.
Address review findings within specified timeframes; do not introduce unrelated changes when correcting issues.
Only public Templates without login are permitted; do not submit private Templates.
Listing text, screenshots, media, and pricing must accurately describe functionality, limitations, and any in‑Template purchases.
### 6.3 Approval; monitoring
Base44 may review before and after publication, require changes, or remove/suspend any Template or Creator profile at any time at our discretion, including any attempt to install or distribute malware, spyware, or other malicious code, run unauthorized background services, mine cryptocurrency, or otherwise misuse user or platform resources.
Content that is defamatory, libelous, obscene, harassing, threatening, incendiary, abusive, racist, deceptive or fraudulent; encourages harmful/illegal conduct; infringes rights; manipulates ratings/reviews; cheats review; steals data; or otherwise violates law/these Terms.
Base44 Creator agrees to cooperate with Base44 in the reviewing, testing and evaluation process and to answer questions and provide information and materials reasonably requested by Base44. Base44 may require Base44 Creator to make adjustments and/or modifications to its Template, as necessary to ensure the Template's compliance with this Agreement. Base44 Creator shall make such required adjustments within a reasonable period of time as determined by Base44. It is clarified that Base44 shall have no obligation to include any Template in the Marketplace even if such Template was previously approved by Base44.
### 6.4 Ranking
The order of presentation of the Base44 Creators' Profiles and Marketplace Templates on the Base44 Marketplace is subject to Base44's sole and absolute discretion. Ranking is determined by parameters decided by Base44, including, without limitation, the nature of the feedback we may receive from Base44 Members who have purchased the Templates you designed. Ranking signals may include compliance history, quality and performance metrics, User feedback, and support responsiveness, and may change over time without notice.
## 7. Responsibility and Support
### 7.1 You are solely responsible for all content of the Template
You are solely responsible for development, operation, maintenance, compliance, and support of Templates and for addressing third‑party claims.
Publish clear support channels (name, address, contact email) and provide timely support to Members who purchased your Template.
Creators must acknowledge Member support requests within two (2) business days and provide status updates until resolution, as disclosed in the Listing.
If Base44 receives a claim from a third party concerning a Template, Base44 may refer such claim to you. You must respond to the claim promptly, and take any and all actions required for the Template to comply with the law when applicable. If you discover or are notified that a Template violates the terms of these Marketplace Terms or the Base44 Terms, you shall immediately take the required actions to correct such violation. You must state in your Profile your name, address and all the required contact information to which any Base44 Member questions, complaints or claims with respect to the App Templates provide should be directed.
## 8. Pricing, Collection and Revenue Share
All money collection related to Templates must use the Base44 Billing System and approved payment providers. No external purchase mechanisms (e.g., license keys, QR codes, external checkout links).
### 8.1 Pricing disclosures and entitlements
Base44 Creators are required to clearly define and present the prices applicable to the Template Licenses being purchased on the Marketplace. If a Marketplace Template License price is charged in any currency other than U.S. Dollar, Base44 will have the sole discretion to determine the exchange rate applicable to the Marketplace Template License and to set off any exchange rate costs incurred to Base44 as result of payment in any non U.S. Dollar currency.
Prices must reflect total cost. If integration is free but a related service costs money, disclose that price in the listing.
Your Template's pricing is up to you. However, Base44 won't distribute apps or in-app purchase items that are clearly overpriced, and such behavior may lead to rejection.
If your Template includes in-app purchases, make sure the description, screenshots and previews indicate which features require purchase.
If you raise prices, the change applies only to new purchasers. Existing paying users retain access to all functionality they already paid for.
### 8.2 Collection
Base44, either directly or through its third party partners or service providers, shall facilitate all purchases, returns and chargeback transactions related to the offered Marketplace Template Licenses (each, a "Billing Action"), including, collection of payments and processing cancellations and refunds related to Marketplace Template Licenses as the Creator's authorized. Base44 shall have the right but shall not be obligated, at its sole discretion, to approve cancellations of Marketplace Template Licenses purchased by Base44 Members and to refund such Base44 Members for the amounts paid by them to Base44 (or any part thereof). All Billing Actions are processed via the Base44 Billing System and are subject to processor terms, limits, verification/KYC, and availability.
### 8.3 Revenue share
"Net App Template License Revenues" are payable 100% to the Creator and 0% to Base44 (the "Revenue Share"), unless otherwise notified in writing. The term "Net App Template License Revenues" shall mean the aggregate amounts actually paid by Base44 Members to Base44 in consideration for the sale and use of a License to a Marketplace Template offered on the Marketplace excluding any and all taxes, currency exchange rates and other governmental charges of any kind that may be imposed; hosting fees; third party fees; refunds or rebates; billing or processing fees; and amounts paid by Base44 in connection with the sale of a License for a Marketplace Template.
### 8.4 Payment of Revenue Share
The Revenue Share will be payable on a monthly basis within ninety (90) days from the Calculation Date (as defined below) on which Base44 collected the relevant Net App Template License Revenues. Calculation of the Revenue Share will occur on the first day of each calendar month for all Marketplace Template Licenses purchased by Base44 Members during the prior calendar month (the "Calculation Date").
Base44 will not pay Base44 Creator an amount lower than two hundred U.S. dollars (USD $200; the "Minimum Payment Amount"). Accordingly, in the event Base44 Creator's balance at the end of a month is lower than the Minimum Payment Amount, such balance shall be carried over and added to the next month's Revenue Share amount until the total amount payable to such Base44 Creator reaches the Minimum Payment Amount. Any amounts will be payable to a Base44 Creator upon closing of such Base44 Creator's User Account.
### 8.5 Form of Payment
All Revenue Share payments shall be due and payable in U.S. dollars only. Payment shall be made through wire transfer or any other method chosen by Base44, at its sole discretion. In certain territories, Base44 may require a valid tax invoice from the party receiving the payment, and payouts may be delayed until such documentation is received. Payment timing may be adjusted for holds, reserves, chargebacks, and other Billing Actions as permitted in these Terms.
### 8.6 Refunds and chargebacks
Base44 may approve cancellations/refunds at its discretion. Creators must return the corresponding share for refunded/charged‑back transactions; we may offset against future payouts.
### 8.7 Taxes
Base44 does not serve as an employer of any Base44 Creator. Base44 Creator shall be responsible for the payment of any and all taxes assessments, fees and other governmental charges of any kind, as well as withholding and reporting obligations applicable to the conduct of Base44 Creator's business. You understand and agree that if Base44 is found to be liable for any tax, withholding or reporting obligation in connection with any Services provided or received by you, you will immediately reimburse and indemnify Base44 for all costs, expenses and liabilities (including any interest and penalties) relating to the same. In the event that pursuant to any law or regulation, tax is required to be withheld at source from any payment made to Base44 Creator, Base44 shall withhold said tax at the rate set forth in the certification issued by the appropriate taxing authority and provided to Base44 by Base44 Creator, or in the absence of such certification, at the rate determined by said law or regulation. If a Template License price is presented in any currency other than U.S. dollars, Base44 will have the sole discretion to determine the exchange rate applicable to the License and to set off any exchange rate costs incurred to Base44 as result of payment in any non U.S. dollar currency.
### 8.8 Right to change
We may modify revenue mechanisms, payout methods, minimums and and/or any other method set forth in this Section, at our sole discretion at any time, without notice to Base44 Creator.
## 9. Access controls
### 9.1 No unauthorized admin or role elevation; no backdoors
You must not add yourself (or anyone on your behalf) as a site owner, site admin, contributor, or otherwise elevate your privileges within a Member's app instance.
You must not create hidden users, backdoor access, shared "support" accounts, or otherwise bypass Base44 permission flows.
### 9.2 Cookies/trackers
If the Template uses cookies or similar tracking technologies ("Cookies") to track Base44 Members or their visitors, the Base44 Creator must provide clear and comprehensive notice identifying the Cookies used, the data collected, purposes of use, third parties involved, and obtain valid consent where required (e.g., via a compliant CMP in the EEA/UK).
### 9.3 Duplicating
For clarity: Cloning creates a new app instance and does not carry over or expand the scope of any existing Template License. Each Duplicated App must initialize as a separate Instance under these Terms.
**Ownership of content created in a Duplicated App.** Member Modifications, Member Derivative Works, and Member Data created in a Duplicated App are owned by the Member (excluding underlying Template IP and Creator assets), and are not subject to Creator ownership or claim.
## 10. Security and permissions
Implement industry‑standard security (e.g., protect against CSRF/XSS; store salted password hashes; encrypt sensitive data in transit and at rest; do not store sensitive data in cookies).
Request only the minimum permissions necessary; define scope before requesting; secure app secret keys, OAuth tokens, and Instance IDs.
## 11. Economic Sanctions and Exports Controls
Creator will not provide or permit use of Templates in or by persons/entities in any of the countries that are subject to comprehensive economic sanctions under the EAR, OFAC, or Israeli regulations - currently including Crimea region of Ukraine, Cuba, Iran, North Korea, Syria. Moreover, Base44 Creator shall not allow and fully restrict any usage relating to its Template(s) from Members (individuals and entities) identified on any Sanctions list, including but not limited to OFAC's Specially Designated Nationals and Blocked Parties List (the "SDN List"), entities owned 50% or more by any individuals or entities on the SDN List, or individuals or entities that are located in any comprehensively sanctioned country.
Creator is solely responsible for compliance with U.S., Israeli, EU, UK and other applicable export controls and sanctions.
## 12. User experience; technical; accessibility
Functionality must be clear and match the listing.
Installation/configuration/management flows must be intuitive; show demo data on first run.
Submissions with material bugs or errors will be rejected.
## 13. Marketing; reviews
Do not force ratings/reviews/shares/follows, or incentivize reviews (discounts, gifts, etc.). Do not write or solicit fake reviews.
**UX intrusions.** No distracting/annoying behavior (e.g., JS alert/confirm boxes).
Do not display ads or "powered by" watermarks.
Creators must not promote or redirect Users to other distribution platforms or external purchase flows from within the Template or the Listing.
Cross‑promotion of other apps by the same Creator must be unobtrusive and relevant to the Template's core functionality.
## 14. Content and third‑party data
Do not include illegal content or infringe Base44 or third‑party rights (including trademarks/copyrights/branded content) without authorization. Provide proof upon request.
If the Template uses/displays third‑party content/services, ensure you have rights under their terms; provide authorization upon Base44 request.
Do not facilitate illegal file sharing or enable saving, copying, extracting, converting, downloading, or transmitting media from third‑party sources without explicit authorization/licensing.
## 15. Additional terms for Members
### 15.1 General acknowledgements
Base44 is not the employer, agent, or supervisor of Creators. Creators act as independent contractors.
Listings are Creator‑provided. Base44 does not guarantee accuracy, suitability, quality, legality, availability, or performance of Templates.
You are responsible for providing accurate information, paying required fees/taxes, and complying with law, export controls, and sanctions.
References or links to Creators or Templates do not constitute endorsement.
You are solely responsible for your activity in the App Templates Marketplace and for exercising judgment when licensing Templates or engaging Creators.
### 15.2 Information sharing and communications
You authorize Base44 to share your necessary account and contact information with Creators you engage and to contact you with messages and promotional materials (opt‑out available as provided by law).
### 15.3 Third‑party dependencies
Some Templates rely on external services/APIs. Your use of those is subject to the third party's terms and privacy policy. Changes by a third party may affect Template functionality; Base44 is not responsible for third‑party services.
### 15.4 Termination by Base44
We may terminate or suspend your access at any time. Previously purchased Template licenses generally remain in effect per the applicable license terms.
## 16. Licensing of App Templates
Base44 is authorized by the Creator to grant you a limited, personal, non‑exclusive, non‑transferable, non‑sublicensable, perpetual, single‑use license to install/use the Template in connection with one (1) app instance under your Base44 account, solely to customize and operate that app instance.
**Member Modifications; Derivative Works.** Subject to these Terms and the applicable license, Members may configure, adapt, and create Member Modifications and Member Derivative Works from a Template for use within their app instance(s). Creator irrevocably permits such adaptations and, to the maximum extent permitted by law, waives any moral rights enforcement that would prevent or restrict such adaptations. For the avoidance of doubt: (i) the Creator retains ownership of the underlying Template IP and Creator assets; (ii) the Member owns the Member Modifications, Member Derivative Works, and Member Data (excluding the underlying Template IP and Creator assets); and (iii) Creator has no ownership, authorship, or other IP claim to Member Modifications, Member Derivative Works, or Member Data.
**Commercialization limits.** Member Modifications and Member Derivative Works may not be resold, relicensed, distributed, or published as Templates or marketplace listings (on or off the Marketplace) unless expressly permitted by these Terms or by written consent from the Creator and Base44.
### 16.1 License limitations
This App Template license is limited to a single use and is non‑refundable unless required by applicable law or expressly stated otherwise herein.
You may not resell, redistribute, relicense, or publish the Template or any substantial portion of it, including any modified versions, except for internal use within your licensed app instance(s). Each Duplicated App is a separate app instance and requires its own Template License.
Nothing in these Terms restricts your right to create and use Member Modifications or Member Derivative Works internally within your app instance(s). However, you may not list or distribute Member Modifications or Member Derivative Works as a new Template or product on the Marketplace (or elsewhere) if they incorporate the Creator's Template IP or assets, unless you have obtained written permission from the Creator (and Base44, where required).
Creators must not display advertisements, promotional banners, or "powered by" watermarks to site owners or visitors, except where the Template's sole purpose is advertising and such behavior is (i) lawful, (ii) clearly disclosed pre‑purchase in the Listing, and (iii) compliant with applicable consent and disclosure requirements.
### 16.2 Ownership and support
Creator retains ownership of Template IP. No rights are granted except as expressly stated.
Creator is solely responsible for Template support unless the listing states otherwise. Base44 does not provide support for Creator Templates.
### 16.3 Non‑refundability
Template purchases are generally final and non‑refundable, except where required by law.
### 16.4 Payments
You authorize Base44 or its payment providers to process charges and handle renewals if a Template or related service is offered on a subscription basis.
Chargebacks may result in suspension/termination of access and capacity loss. Contact support before initiating a chargeback to avoid unintended consequences.
### 16.5 Third‑party services and dependencies
Templates may require or interoperate with third‑party services, APIs, data sources or Base44 platform services. Your use of such offerings is subject to their terms and privacy policies. Base44 is not responsible for third‑party services.
### 16.6 Removal/suspension
We may suspend or remove access to third‑party services (including where a provider ceases operations or violates policy) without liability to you. Such changes may impact Template functionality.
### 16.7 Creator - Member disputes
Creators and Members must resolve disputes directly. Base44 does not mediate Creator‑Member disputes. Violations of these App Templates Marketplace Terms may result in removal, suspension, or other action.
## 17. Intellectual property; notices
We respect IP rights. If you believe content infringes your rights, submit a notice to abuse@base44.com (subject: "IP Infringement Notice"). We may remove content or disable access and may terminate repeat infringers.
**Counter‑notice.** If your content was removed based on an infringement notice, you may submit a counter‑notice as permitted by law. We may share notices with the other party.
## 18. Warranties; Disclaimers
To the fullest extent permitted by law, the App Templates Marketplace and all Templates are provided "as is" and "as available," without warranties of any kind (express, implied, or statutory), including merchantability, fitness for a particular purpose, accuracy, reliability, non‑infringement, or that Templates or the App Templates Marketplace will be secure, error‑free, or uninterrupted. Outputs from any AI or automated tooling are suggestions only and may be inaccurate or infringing; review before use.
## 19. Limitation of liability
The following disclaimers and limitations of liability are supplemental to the disclaimers and limitations of liability under the Base44 Terms:
**19.1** YOU AGREE THAT YOUR USE OF THE BASE44 APP TEMPLATE MARKETPLACE, WHETHER AS A BASE44 CREATOR OR AS A BASE44 MEMBER, IS AT YOUR SOLE RISK. TO THE FULLEST EXTENT PERMITTED BY LAW, BASE44, ITS OFFICERS, DIRECTORS, EMPLOYEES, AND AGENTS (COLLECTIVELY, "BASE44 REPRESENTATIVES") DISCLAIM ALL WARRANTIES, EXPRESS OR IMPLIED, AND ASSUME NO RESPONSIBILITY IN CONNECTION WITH: (A) THE TEMPLATES OFFERED BY BASE44 CREATORS ON THE BASE44 APP TEMPLATE MARKETPLACE AND ANY USE THEREOF BY ANY USER; (B) THE ACCURACY OR COMPLETENESS OF THE MARKETPLACE SITE'S CONTENT OR THE CONTENT OF ANY SITES LINKED TO THE MARKETPLACE; (C) ANY BASE44 CREATOR'S REGISTRATION OR PROFESSIONAL ACCREDITATION; (D) THE RESULTS THAT MAY BE OBTAINED FROM USE OF THE BASE44 APP TEMPLATE MARKETPLACE; (E) THE TIMELINESS, ACCURACY, RELIABILITY, QUALITY, SUITABILITY, SAFETY, COMPLETENESS, OR CONTENT OF THE APP TEMPLATES, OR ANY PRODUCTS, MERCHANDISE, CONTENT, INFORMATION, OR MATERIALS PROVIDED THROUGH OR IN CONNECTION WITH THE BASE44 APP TEMPLATE MARKETPLACE; AND (F) THE SUITABILITY, LEGALITY, OR ABILITY OF ANY BASE44 CREATOR TO PROVIDE SERVICES.
NEITHER BASE44 NOR BASE44 REPRESENTATIVES ARE RESPONSIBLE FOR THE CONDUCT, WHETHER ONLINE OR OFFLINE, OF ANY USER OF THE BASE44 APP TEMPLATE MARKETPLACE (INCLUDING, WITHOUT LIMITATION, ANY BASE44 MEMBER OR BASE44 CREATOR).
**19.2** IN ADDITION TO ANY LIMITATIONS OF LIABILITY SET OUT IN THE BASE44 TERMS, IN NO EVENT SHALL BASE44 OR ANY BASE44 REPRESENTATIVES BE LIABLE TO YOU FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, PUNITIVE, OR CONSEQUENTIAL DAMAGES WHATSOEVER RESULTING FROM: (I) THE USE OF OR INABILITY TO USE THE SERVICE; (II) UNAUTHORIZED ACCESS TO OR ALTERATION OF YOUR ACCOUNT; (III) YOUR RELIANCE ON USER CONTENT, INCLUDING TEMPLATES; (IV) ANY COMMUNICATION BETWEEN ANY BASE44 MEMBER AND ANY BASE44 CREATOR LISTED ON THE BASE44 APP TEMPLATE MARKETPLACE; OR (V) ANY OTHER MATTER RELATING TO THE SERVICE. SOME JURISDICTIONS DO NOT PERMIT THE EXCLUSION OF CERTAIN LIABILITIES; ACCORDINGLY, CERTAIN LIMITATIONS DESCRIBED HEREIN MAY NOT APPLY TO YOU.
YOU EXPRESSLY WAIVE AND RELEASE BASE44 AND BASE44 REPRESENTATIVES FROM ANY AND ALL LIABILITY, CLAIMS, OR DAMAGES ARISING FROM OR IN ANY WAY RELATED TO THE SERVICES. IN THE EVENT YOU HAVE A DISPUTE WITH ONE OR MORE USERS, YOU RELEASE BASE44 AND BASE44 REPRESENTATIVES FROM ANY AND ALL CLAIMS, DEMANDS, OR DAMAGES (ACTUAL, DIRECT, OR CONSEQUENTIAL) OF EVERY KIND AND NATURE, KNOWN AND UNKNOWN, SUSPECTED AND UNSUSPECTED, DISCLOSED AND UNDISCLOSED, ARISING OUT OF OR IN ANY WAY CONNECTED WITH SUCH DISPUTE. AS WITH THE PURCHASE OF ANY PRODUCT OR SERVICE, USERS SHOULD USE THEIR BEST JUDGMENT AND EXERCISE CAUTION WHERE APPROPRIATE. YOUR USE OF THE BASE44 APP TEMPLATE MARKETPLACE AND THE SERVICES IS AT YOUR OWN RISK. THE FOREGOING LIMITATIONS OF LIABILITY SHALL APPLY TO THE FULLEST EXTENT PERMITTED BY LAW IN THE APPLICABLE JURISDICTION. USERS SHOULD USE THEIR BEST JUDGMENT WHEN PURCHASING OR PROVIDING A SERVICE.
NOTHING IN THE BASE44 APP TEMPLATES TERMS OR ON THE BASE44 APP TEMPLATE MARKETPLACE CONSTITUTES, OR IS INTENDED TO CONSTITUTE, LEGAL, FINANCIAL, OR OTHER PROFESSIONAL ADVICE.
TO THE FULLEST EXTENT PERMITTED BY LAW, BASE44'S MAXIMUM LIABILITY ARISING OUT OF OR IN CONNECTION WITH THE SERVICE OR YOUR USE OF THE BASE44 APP TEMPLATE MARKETPLACE, REGARDLESS OF THE CAUSE OF ACTION (CONTRACT, TORT, BREACH OF WARRANTY, OR OTHERWISE), WILL NOT EXCEED THE GREATER OF: (A) IF YOU ARE A BASE44 MEMBER, THE FEES YOU HAVE PAID TO BASE44 FOR THE LICENSE TO A TEMPLATE; (B) IF YOU ARE A BASE44 CREATOR, THE FEES PAID BY BASE44 TO YOU IN THE LAST THREE (3) MONTHS; AND (C) $100.
## 20. Indemnity
As a user of the Base44 App Template Marketplace (whether a Base44 Member or a Base44 Creator), and in addition to your indemnification obligations under the Base44 Terms, you agree to defend, indemnify, and hold harmless Base44 and its officers, directors, shareholders, employees, affiliates, and agents from and against any and all claims, damages, obligations, losses, liabilities, costs, debts, and expenses (including reasonable attorneys' fees) arising out of or related to:
**For all Base44 Members and Base44 Creators:**
1. your violation of any third‑party right, including any copyright, property, or privacy right, resulting from your portfolio, user content, or your use of the Services or Templates;
2. your use of the Base44 App Template Marketplace and/or the Services, including any transactions or interactions arising therefrom; and
3. any alleged breach by you of these Marketplace Terms (including any documents incorporated by reference) or of any agreement between a Base44 Creator and a Base44 Member governing a Member's use of a Template.
**Additional obligations for Base44 Creators:**
4. your gross negligence or willful misconduct; and
5. any claims arising from the use of, inability to use, performance, non‑performance, or improper performance of your Template, including any product liability claims.
## 21. Termination
Base44 Members and Base44 Creators acknowledge that Base44 may, in its sole discretion, terminate their access to the Base44 App Template Marketplace, the Services, and any Templates at any time, with or without notice. Such termination may disable or limit certain Template features. Base44 shall have no liability arising from or related to any such termination.
### 21.1 Effect
- Creator accounts and listings may be deactivated or removed.
- Member access to the App Templates Marketplace may cease; previously issued Template licenses generally remain in effect per license terms.
- Accrued, undisputed Creator payouts will be paid per schedule, subject to offsets for refunds/chargebacks.
- Sections intended to survive (payments, IP, disclaimers, limitations, indemnity, privacy, sanctions/export, governing law) survive termination.
### 21.2 Data and capacity loss
Termination or removal may result in loss of content, data or functionality. Back up your data. We are not responsible for data loss.
## 22. Changes to the App Templates Marketplace
**Terms and services** We may change, suspend, or discontinue any feature of the App Templates Marketplace, and/or update these Terms, at any time, with or without notice, subject to applicable law. If changes materially impact fees or revenue share percentage, we will provide prior notice (for percentage changes).
## 23. Governing law; disputes; venue; class action waiver
### 23.1 Governing law
You expressly acknowledge and agree that Base44 shall have the right to enforce these Terms against you. Except to the extent any mandatory applicable law provides otherwise, these Terms, the rights and remedies provided hereunder, and any and all claims and disputes related hereto and/or to the App Templates Marketplace shall be governed by, construed under and enforced in all respects solely and exclusively in accordance with the internal substantive laws of the State of Israel, without respect to its conflict of laws principles. Any and all such claims and disputes shall be brought in, and you hereby consent to them being decided exclusively by, a court of competent jurisdiction located in Tel Aviv, Israel. The application of the United Nations Convention on Contracts for the International Sale of Goods is expressly excluded.
Notwithstanding the foregoing, if you are located in the United States of America, the governing law for payment‑related disputes between you and Base44 will be the State of New York, without respect to its conflict of laws principles, and such disputes shall be brought exclusively in courts located in New York, New York.
## 24. Miscellaneous
**Entire agreement.** These Terms, together with the Base44 Terms of Service, and the Base44 Privacy Policy, constitute the entire agreement regarding the App Templates Marketplace.
**Assignment.** We may assign these Terms. You may not assign without our prior written consent.
**Severability; waiver.** If any provision is unenforceable, the remainder remains in effect. No waiver is effective unless in writing and no waiver of one breach is a waiver of another.
**Notices.** We may notify you via the App Templates Marketplace, email, your account, your Reseller (if applicable), or other contact details you provided. Notices are deemed received within 24 hours of sending unless otherwise indicated.
**Relationship.** Nothing herein creates a partnership, joint venture, or employment relationship between Base44 and any User.
**Survival.** The following provisions survive termination or expiration: licenses granted to Base44; payments, offsets, taxes; data privacy and access controls; security and permissions; sanctions/export; disclaimers; limitations of liability; indemnity; IP and notices; dispute resolution; and any other provision that by its nature should survive.`,pL={header:dL,body:uL},mL={home:"Home",allApps:"All apps",apps:"Apps",integrations:"Integrations",appTemplates:"Templates",hirePartner:"Hire A Partner",affiliates:"Affiliates",docsSupport:"Docs & Support",admins:"Admins",referFriends:"Refer Friends",language:"Language",startBuilding:"Start Building"},gL={title:"Create a Workspace",subtitle:"Start collaborating with your workspace members",back:"Back",formTitle:"Workspace Information",nameLabel:"Workspace Name",namePlaceholder:"Enter your workspace name",nameHint:"Choose a name that represents your workspace",nameRequiredError:"Workspace name is required",createFailedError:"Failed to create workspace",limitReachedError:"Workspace limit reached. You can create a maximum of 3 workspaces.",cancelButton:"Cancel",createButton:"Create Workspace",creatingButton:"Creating Workspace...",whatHappensNext:{title:"What happens next?",ownerPermissions:"You'll be the workspace owner with full management permissions",inviteMembers:"You can invite workspace members and manage seats",accessDashboard:"Access your workspace dashboard to get started"}},hL={workspace:"Workspace",backToWorkspace:"Back to {{workspaceName}}",settings:"Settings",inviteMembers:"Invite members",myWorkspaces:"My Workspaces",createWorkspace:"Create a Workspace",noWorkspacesFound:"No workspaces found",accountSettings:"Account settings",apiKey:"API Key",helpSupport:"Help & support",becomeAffiliate:"Become an affiliate",defaultUser:"User",defaultUserInitial:"U",referFriend:"Refer a friend",giftCards:"Gift Cards",sendGiftCard:"Send a gift card",notifications:"Notifications",logOut:"Log out",aboutApp:"About the app",upgradePlan:"Upgrade Plan",winCredits:"Win free credits",pricingPlans:"Pricing plans",documentation:"Documentation",getHelp:"Get help",memberCount_one:"{{count}} member",memberCount_other:"{{count}} members",myProfile:"My Profile",viewProfile:"View profile",failedToLoadProfile:"Failed to load profile",user:"User"},fL={ariaLabel:"Agent menu",agentFallback:"Agent"},vL={integrationCredits:"Integration credits",monthlyCredits:"Monthly Credits",messageCredits:"Message credits",dailyCredits:"Daily Credits",giftCardCredits:"Gift Credits",renewsAt:"Renews at {{date}}",giftCardTooltip:"Gift card credits are used before your plan credits.",percentUsed:"{{percent}}% used",messagesRemaining_one:"{{count}} message remaining",messagesRemaining_other:"{{count}} messages remaining",upgradeYourPlan:"Upgrade your plan",getMoreOutOfYourApps:"Get more out of your apps",upgradeYourPlanToPro:"Upgrade your plan to Pro",redeemDescription:"Once you redeem, credits will be applied to your workspace.",creditsRemaining_one:"{{count}} credit remaining",creditsRemaining_other:"{{count}} credits remaining"},bL={label:"Community",appTemplates:"App Templates",appTemplatesDesc:"Start faster with community templates.",hirePartner:"Hire a Partner",hirePartnerDesc:"Find partners and start collaborating.",spotlight:"Spotlight",spotlightDesc:"Explore standout applications.",affiliateProgram:"Affiliate Program",affiliateProgramDesc:"Become a Base44 affiliate.",joinUsOn:"Join us on"},yL=JSON.parse(`{"title":"Settings","lockedFeature":{"includedInPlan":"Included in the {{plan}} plan and above","includedInPlanExact":"Included in the {{plan}} plan","viewPlans":"View Plans","talkToSales":"Talk to sales","authSecurity":{"title":"Control workspace access","body":"Essential for regulated industries and security-conscious organizations","ssoAccess":"Use single sign-on (SSO) to reduce password risk","domainVerification":"Control who can join with domain verification","ipWhitelisting":"Allow access only from trusted IP addresses"},"integrations":{"title":"Set up once, use across your workspace","body":"For teams standardizing APIs and external tools across apps.","configureOnce":"Configure API integrations once for all apps and teammates","sharedAccess":"Let anyone in your workspace use connected tools instantly","consistentConnections":"Keep external connections consistent across every app"},"appsConfiguration":{"title":"Set app visibility and SSO rules","body":"For teams managing internal tools and sensitive apps.","publicAppControl":"Decide who can create public apps in this workspace","defaultVisibility":"Set the initial visibility for new apps","enforceSso":"Enforce workspace SSO across all apps"},"analytics":{"title":"See how your team uses Base44","body":"For workspace owners and admins tracking usage and adoption.","creditTracking":"Track how credits are being used across your team","activeUsers":"See which teammates are actively using Base44","licenseUsage":"Understand how many licenses are currently in use"},"skills":{"title":"Give Your AI Reusable Skills","body":"Define consistent AI behavior that works across all your apps.","reusableInstructions":"Create a set of custom instructions (a skill) that shape how the AI builds your apps","autoActivation":"Create once, reuse across all your apps","teamConsistency":"Guide tone, formatting, logic, or any behavior you want to standardize"},"mcpConnections":{"title":"Connect external tools with MCP","body":"Bring live data from external tools directly into your apps.","externalTools":"Give your AI builder access to real-time context while it works","customServers":"Connect custom MCP servers to use across all your apps","extendCapabilities":"Access tools like Amplitude, Linear, and more while building"}},"membersTitle":"Members","inviteMembers":"Invite Members","inviteByEmail":"Invite by email","bulkInviteCsv":"Bulk invite (CSV)","close":"Close","createInviteLink":"Create Invite Link","manageInviteLinks":"Manage Invite Links","backToMembers":"Back to members","backToMenu":"Back to settings menu","inviteLinks":{"title":"Invite links","breadcrumb":"Invite Links","description":"Create and manage invite links for this workspace.","createInviteLink":"Create Invite Link","noLinksYet":"No invite links yet","noLinksSubtitle":"Create an invite link to easily share access to this workspace.","copyLink":"Copy Link","copyLinkLower":"Copy link","deleteTooltip":"Delete invite link","deleteButton":"Delete","deleteLinkButton":"Delete Link","deleteConfirmTitle":"Delete invite link?","deleteConfirmActive":"People won't be able to join using this link anymore. This action can't be undone.","deleteConfirmInactive":"This link and its history will be removed from this workspace.","copiedToClipboard":"Invite link copied to clipboard.","columnName":"Name","columnStatus":"Status","columnUsage":"Usage","columnRole":"Role","columnExpiration":"Expiration date","columnDomains":"Allowed domains","statusActive":"Active","statusRevoked":"Revoked","statusExpired":"Expired","statusLimitReached":"Limit reached","usageUnlimited":"Unlimited","dialogTitle":"Create invite link","dialogMobileTitle":"Create link","linkName":"Link name (Optional)","linkNamePlaceholder":"e.g., New Hire Onboarding","role":"Role","selectRole":"Select role","roleViewer":"Viewer","roleEditor":"Editor","roleMember":"Member","expiration":"Expiration","selectExpiration":"Select expiration","nDays_one":"{{count}} day","nDays_other":"{{count}} days","never":"Never","maximumUses":"Maximum uses","selectLimit":"Select limit","unlimited":"Unlimited","nUses_one":"{{count}} use","nUses_other":"{{count}} uses","allowedDomains":"Allowed email domains (Optional)","allowedDomainsPlaceholder":"e.g., company.com, partner.org","domainsHelp":"Separate multiple domains with commas.","domainsError":"Invalid entry. Use comma-separated domains (e.g., company.com, partner.org)","securityWarning":"Anyone with this link can join your workspace and access its data. Only share it with people you trust.","advancedOptions":"Advanced options","cancel":"Cancel","creating":"Creating...","create":"Create","linkCreatedAndCopied":"Invite link created and copied.","manageInvitations":"Manage invitations"},"postPaymentInvite":{"title":"You're all set!","description":"Your plan is active. Invite your friends and colleagues to start building together.","createInviteLink":"Create Invite Link","inviteByEmail":"Invite by Email","maybeLater":"Maybe Later","inviteLinkReady":"Invite link ready","subtitleNoDomain":"Anyone with this link can join as <bold>{{role}}</bold>","subtitleWithDomain":"Anyone with a {{domains}} email can join as <bold>{{role}}</bold>","copied":"Copied","manageInvitationsPrompt":"You can manage all your invite links from the <inviteLink>Invite Links</inviteLink> settings page.","copyLink":"Copy","close":"Close","expires":"Expires {{time}}","remainingUses_one":"{{count}} use remaining","remainingUses_other":"{{count}} uses remaining"},"sections":{"workspace":"Workspace","integrations":"Integrations","account":"Account"},"creditUsage":{"pageDescription":"Monitor your credit consumption and usage patterns.","currentPlan":"You're currently on the {{planName}} Plan","overLimit":"Over Limit","updatePayment":"Update Payment","upgrade":"Upgrade","paymentOverdue":"Payment overdue","pastDueDescription":"Your subscription payment is past due. Credits and limits shown are based on your last paid plan ({{plan}}).","tryAgain":"Try again","trying":"Trying...","monthlyMessages":"Monthly Messages","workspaceTotal":"Workspace Total","workspaceUsage":"Workspace Usage","dailyMessages":"Daily Messages","loadError":"Failed to load usage statistics","portalError":"Failed to open payment management. Please try again.","portalErrorTitle":"Error","creditsRenewIn":"Credits renew in {{timeLeft}}","expired":"Expired","dailyUsageTitle":"Daily Usage (Messages)","noUsageData":"No usage data available","messagesLabel":"messages","timeDaysHours":"{{days}}d : {{hours}}h","timeHoursMinutes":"{{hours}}h : {{minutes}}m","timeMinutes":"{{minutes}}m"},"basicInformation":{"pageTitle":"Basic information","pageSubtitleEditable":"Manage your workspace details and settings.","pageSubtitleReadOnly":"View workspace details. Only workspace owners and admins can edit.","loadingMessage":"Loading workspace information...","workspaceNameLabel":"Workspace name","workspaceNamePlaceholder":"Enter workspace name","workspaceDescriptionLabel":"Workspace description","workspaceDescriptionPlaceholder":"Describe your workspace...","workspaceNameEmptyErrorMessage":"Workspace name cannot be empty","cancelButton":"Cancel","saveButton":"Save Changes","savingButton":"Saving...","saveSuccessMessage":"Workspace settings updated successfully!","saveErrorMessage":"Failed to update workspace settings: {{error}}","unknownError":"Unknown error"},"leaveWorkspace":{"title":"Leave workspace","description":"If you leave this workspace, you will lose access to all associated apps. Ownership of your apps will be transferred to the workspace owner.","button":"Leave Workspace","soleOwnerNote":"You can't leave the workspace because you're the only owner.","successMessage":"You have left the workspace.","workspaceNameFallback":"workspace","dialog":{"title":"Leave {{name}}?","confirmQuestion":"Are you sure you want to leave <bold>{{name}}</bold>?","transferWarning":"Your apps in this workspace will be transferred to the workspace owner and you will lose access.","cancelButton":"Cancel","confirmButton":"Leave Workspace"}},"menu":{"basicInformation":"Basic information","planAndBilling":"Plan and billing","creditUsage":"Credit usage","members":"Members","seatsAndMembers":"Seats and members","authAndSecurity":"Auth and security","integrations":"Integrations","appsConfiguration":"Apps configuration","analytics":"Analytics","accountSettings":"Account settings","mcpConnections":"MCP connections","skills":"Skills","connectors":"Connectors","manageSubscription":"Manage Subscription","secrets":"Secrets","dataResidency":"Data residency"},"guests":{"tabMembers":"Members","tabGuests":"Guests","title":"Guests","infoBanner":"Guests are external users invited to specific apps. They consume credits from the workspace's shared pool.","searchPlaceholder":"Search by email or app...","columnGuest":"Guests","columnApp":"App","columnInvitedBy":"Invited by","columnCreditsUsed":"Credits used","pending":"Pending","promoteToEditor":"Promote to editor","promoteToViewer":"Promote to viewer","removeFromWorkspace":"Remove from workspace","emptyTitle":"No guests yet","emptySubtitle":"Guests can be added from the app collaborator invite flow.","noResults":"No guests found","noResultsSubtitle":"No guests match \\"{{searchTerm}}\\"","promoted":"{{email}} promoted to {{role}}","promoteFailed":"Failed to update role","setCreditLimit":"Set credit limit","upgradeForCreditLimit":"Upgrade to Enterprise plan for this feature","viewAppAccess":"View app access","removeMember":"Remove member","guestRole":"Guest","appAccessTitle":"{{name}}'s app access","appAccessDescription":"View the apps this guest can access in the workspace.","appAccessLoading":"Loading...","appAccessEmpty":"No app access found.","appAccessColumnApp":"App","appAccessDone":"Done"},"members":{"pageTitle":"Members","pageDescription":"View and manage members and roles for this workspace.","tableTitle":"Members ({{count}})","columnMembers":"Members","columnCreditsUsed":"Credits used","columnCreditsUsedWithLimit":"Credits used (out of {{limit}})","columnCreditLimit":"Credit limit","columnRole":"Role","roleOwner":"Owner","roleAdmin":"Admin","roleEditor":"Editor","roleViewer":"Viewer","pending":"Pending","expired":"Expired","searchPlaceholder":"Search by name or email...","searchPlaceholderMobile":"Search...","inviteMembers":"Invite Members","inviteByEmail":"Invite members","bulkInvite":"Bulk invite","setCreditLimit":"Set credit limit","removeMember":"Remove member","upgradeTooltip":"Upgrade to the Enterprise plan to unlock this feature","default":"(default)","emptyTitle":"No workspace members yet","emptyTitleNoResults":"No members found","emptySubtitlePersonal":"Personal workspaces contain only you","emptySubtitleShared":"Start by inviting your first workspace member","emptySubtitleNoResults":"No members match \\"{{searchTerm}}\\"","cantChangeOwnRole":"You can't change your own role. Ask a workspace owner to update it for you.","creditLimitTooltip":"Limit how many credits each member can use from the workspace pool. Set limits individually or distribute evenly across all members.","tableTitleFiltered":"Members ({{filteredCount}} of {{totalCount}})","clearSearch":"Clear search"},"seatsAndMembers":{"pageTitle":"Seats and members","pageDescription":"Manage workspace seats and team members.","emptyTitle":"Get Started with Workspace Seats","emptyDescription":"Purchase seats to invite workspace members and start collaborating.","buyFirstSeats":"Buy Your First Seats","planSeats":"{{planName}} Seats","seatsUsage":"Seats Usage","addSeats":"Add Seats","removeSeats":"Remove Seats","seatsAvailable_one":"{{count}} seat available","seatsAvailable_other":"{{count}} seats available","buyMoreSeats":"Buy More Seats","expandWorkspace":"Expand your workspace size","searchPlaceholder":"Search by email, role, status, or seat type (e.g., starter, pro)...","searchTip":"Tip: Search for seat types like \\"starter\\", \\"builder\\", \\"pro\\", \\"elite\\", or \\"no seat\\""},"inviteDialog":{"title":"Invite Members","emailAddress":"Email Address","role":"Role","cancel":"Cancel","invite":"Invite","inviting":"Inviting...","roleViewer":"Viewer","roleEditor":"Editor","roleAdmin":"Admin","roleMember":"Member","errorNoEmail":"Please enter at least one email address","errorInvalidEmail":"One or more email addresses are invalid.","errorFallback":"Failed to invite users","toastSingle":"Invitation sent to {{email}}","toastMultiple":"{{count}} invitations sent successfully"},"dataResidency":{"title":"Data residency","tooltip":"Sets the data storage region for apps in this workspace.","edit":"Edit","upgradeRequired":"Elite plan or above required to configure data residency.","appliesToNewApps":"Applies to newly created apps. Existing apps keep their current region.","editModal":{"title":"Workspace data residency","description":"Choose where to store data for apps you create in this workspace.","label":"Data residency","appliesToNewApps":"Applies to newly created apps. Existing apps keep their current data region.","viewAllApps":"View data residency for all workspace apps","cancel":"Cancel","save":"Save","saving":"Saving...","updateSuccess":"Data residency updated successfully","updateError":"Failed to update data residency: {{detail}}","unknownError":"Unknown error"},"appsModal":{"title":"App data residency","description":"See where data is stored for each app in this workspace.","appName":"App name","dataRegion":"Data region","loading":"Loading...","noApps":"No apps in this workspace.","migrationInfo":"Need to move an app to a different region? <a>Request a migration.</a>","supportTitle":"Data region migration request — {{name}}","supportContent":"I'd like to migrate app data to a different region.\\n\\nWorkspace: {{name}} ({{id}})\\nCurrent default region: {{region}}\\nTarget region: \\nApps to migrate: "}},"mcp":{"title":"MCP Connections","addMcp":"Add MCP","limitReached":"You've reached the limit of {{max}} MCP servers. Remove one to add a new connection.","description":"Connect custom MCP servers to extend Base44's building capabilities with external tools and data.","descriptionWithLink":"Connect custom MCP servers to extend Base44's building capabilities with external tools and data. <a>Learn more about MCP<icon/></a>","learnMore":"Learn more about MCP","emptyTitle":"No MCP server connected yet","addCustomMcp":"Add Custom MCP","aria":{"enableConnection":"Enable {{name}}","disableConnection":"Disable {{name}}","actionsFor":"Actions for {{name}}"},"actions":{"editDetails":"Edit Details","removeMcp":"Remove MCP"},"deleteConfirm":{"title":"Remove MCP Connection","description":"Are you sure you want to remove \\"{{name}}\\"? This action cannot be undone.","confirm":"Remove","cancel":"Cancel"},"tools":{"availableTools_one":"{{count}} available tool","availableTools_other":"{{count}} available tools","more":"+{{count}} more","showLess":"Show less","loadingTools":"Loading tools..."},"addDialog":{"title":"Add custom MCP server","name":"Name","namePlaceholder":"i.e., My MCP Server","url":"URL","urlExists":"MCP Server already exists.","authentication":"Authentication","authNone":"Not required","authNoneDescription":"Connect without credentials","authOAuth":"OAuth","authOAuthDescription":"Authorize in the next step","customHeaders":"Custom Headers","optional":"optional","headersDescription":"Add headers that will be sent with every request (e.g., API keys)","headerName":"Header name","headerValue":"Value","addHeader":"Add Header","connectionFailed":"Connection failed","serverReady":"MCP server is ready to connect.","serverReadyWithTools_one":"MCP server is ready to connect. 1 tool found.","serverReadyWithTools_other":"MCP server is ready to connect. {{count}} tools found.","toolsFound_one":"{{count}} tool found.","toolsFound_other":"{{count}} tools found.","oauthConfirmed":"Server confirmed. Click \\"Authorize & Add\\" to complete OAuth authentication.","test":"Test","testAndAdd":"Test & Add","authorizeAndAdd":"Authorize & Add","cancel":"Cancel","urlRequired":"Please enter a server URL.","fieldsRequired":"Please fill in all required fields.","authRequired":"Authentication is required for this server. Select OAuth to continue.","authNotRequired":"This server does not require OAuth. Try adding without OAuth.","testFailed":"Connection test failed."},"editDialog":{"title":"Edit connected MCP","enabled":"Enabled","nameRequired":"Please enter a name.","changeInfo":"To change the URL or authentication method, create a new MCP connection.","saveChanges":"Save Changes","removeMcp":"Remove MCP","cancel":"Cancel"},"toast":{"added":"MCP connection added","addedDescription":"Successfully connected to the MCP server.","addedWithName":"Successfully added \\"{{name}}\\" connection.","saved":"Changes saved","savedDescription":"MCP connection updated successfully."}},"skills":{"title":"Skills","addSkill":"Add Skill","addSkillLower":"Add skill","editSkill":"Edit Skill","viewSkill":"View Skill","deleteSkill":"Delete Skill","limitReached":"You've reached the limit of {{max}} skills. Remove one to add a new skill.","description":"Create reusable instruction sets that the AI builder can activate during conversations.","emptyDescription":"Skills are saved guidelines that shape how the AI builds your apps. They activate when needed to follow your rules and best practices automatically.","emptyDescriptionWithLink":"Skills are saved guidelines that shape how the AI builds your apps. They activate when needed to follow your rules and best practices automatically. <a>Learn more</a>","learnMore":"Learn more","getStartedWithTemplate":"Get started with a template","viewMore":"View more","failedToLoadTemplates":"Failed to load skill templates","templatesUnavailable":"Preset templates may be unavailable.","failedToLoadTemplate":"Failed to load template","form":{"skillName":"Skill Name","namePlaceholder":"e.g. brand-guidelines","nameRequired":"Name is required","nameMaxLength":"Name must be at most {{max}} characters","namePattern":"Lowercase letters, numbers, and hyphens only (e.g. code-review)","nameExists":"A skill with this name already exists","description":"Description","descriptionHint":"Tell the agent when to use this skill. It reads this to decide whether to activate it.","descriptionPlaceholder":"e.g. Enforces brand colors, typography, and design patterns across all pages and components. Use when creating new pages, updating styling, or when the user mentions the brand or design system.","instructions":"Instructions","instructionsHint":"The step-by-step rules your agent follows when this skill activates. Write it like you're training a new team member.","instructionsPlaceholder":"## Brand Colors\\nPrimary: #1E40AF (navigation, buttons)\\nAccent: #F59E0B (highlights, CTAs)\\nBackground: #F8FAFC, Surface: white\\n\\n## Typography\\nHeadings: bold, dark slate\\nBody: text-sm text-slate-600\\nUse consistent spacing between sections\\n\\n## Component Patterns\\n- Use Card with subtle shadow for data sections\\n- Always include loading and empty states\\n- Forms: use Sheet dialogs for create/edit flows\\n- Tables: striped rows, sortable columns","reviewHint":"Refined by AI. Feel free to adjust before saving."},"dialog":{"reviewTitle":"Review your skill","reviewSubtitle":"Check the description and instructions before saving. You can edit this anytime.","pickerTitle":"Add skill or start from scratch","startFromScratch":"Start from scratch","cancel":"Cancel","backToOriginal":"Back to Original","saveSkill":"Save Skill","saveChanges":"Save Changes","refineAndReview":"Refine & Review","refineShort":"Refine","close":"Close","add":"Add","enabled":"Enabled"},"toast":{"created":"Skill created","createdDescription":"\\"{{name}}\\" has been added.","failedToCreate":"Failed to create skill","updated":"Skill updated","updatedDescription":"\\"{{name}}\\" has been saved.","failedToUpdate":"Failed to update skill","refinedTooLong":"Refined skill is too long","refinedTooLongDescription":"We tried to condense it but the result still exceeds the character limit. Try shortening your content and refining again.","failedToPolish":"Failed to polish skill","failedToLoad":"Failed to load skill","failedToLoadList":"Failed to load skills","retryLater":"Please try again later.","retryAgain":"Please try again.","removed":"Skill removed","removedDescription":"The skill has been removed."},"deleteConfirm":{"description":"Are you sure you want to delete \\"{{name}}\\"? This action cannot be undone.","confirm":"Delete","cancel":"Cancel"},"aria":{"enableSkill":"Enable {{name}}","disableSkill":"Disable {{name}}","actionsFor":"Actions for {{name}}"}},"secrets":{"title":"Secrets","description":"Manage credentials and access tokens for programmatic access to your workspace.","apiKeys":{"title":"API keys","description":"Create and manage API keys for programmatic access to your workspace. Use these keys to stream audit logs, connect your identity provider via SCIM, or pull workspace data into an external system via the Monitoring API.","createButton":"Create API Key","limitReached":"You've reached the maximum limit of {{max}} API keys. Delete an existing key to create a new one.","table":{"name":"Name","key":"Key","createdBy":"Created by","created":"Created","lastUsed":"Last Used","status":"Status","never":"Never"},"status":{"active":"Active","disabled":"Disabled"},"emptyState":{"title":"No API keys yet","description":"Workspace API keys give programmatic access to your workspace APIs (SIEM, SCIM, custom integrations)."},"actions":{"edit":"Edit","disableKey":"Disable key","enableKey":"Enable key","deleteKey":"Delete key","actionsFor":"Actions for {{name}}"},"sheet":{"editButton":"Edit","disableButton":"Disable","enableButton":"Enable"},"disableConfirm":{"title":"Disable API Key?","description":"The API key <strong>\\"{{name}}\\"</strong> will be immediately disabled. Any integrations using this key will stop working.","note":"You can re-enable it later.","confirm":"Disable Key","cancel":"Cancel"},"enableConfirm":{"title":"Enable API Key?","description":"The API key <strong>\\"{{name}}\\"</strong> will be re-enabled. Integrations using this key will resume working.","confirm":"Enable Key","cancel":"Cancel"},"deleteConfirm":{"title":"Delete API Key?","description":"The API key <strong>\\"{{name}}\\"</strong> will be permanently deleted. This action cannot be undone. Any integrations using this key will stop working immediately.","confirm":"Delete Key","cancel":"Cancel"},"toast":{"loadError":"Failed to load API keys","loadErrorDescription":"Please try again.","disabled":"API key disabled","disabledDescription":"\\"{{name}}\\" has been disabled.","disableError":"Failed to disable API key","enabled":"API key enabled","enabledDescription":"\\"{{name}}\\" has been re-enabled.","enableError":"Failed to enable API key","deleted":"API key deleted","deletedDescription":"\\"{{name}}\\" has been permanently deleted.","deleteError":"Failed to delete API key","createError":"Failed to create API key","updateError":"Failed to update API key","copyError":"Failed to copy API key","updated":"API key updated","updatedDescription":"\\"{{name}}\\" has been saved."},"createDialog":{"title":"Create API Key","titleReveal":"API Key Created","namePlaceholder":"e.g. SIEM Integration","descriptionPlaceholder":"What is this key used for?","cancelButton":"Cancel","createButton":"Create Key","creatingButton":"Creating...","warningMessage":"Copy this key now - you won't be able to see it again. Treat it like a password: it grants access to your workspace data via the API.","yourApiKey":"Your API key","doneButton":"Done","copyAria":"Copy API key"},"editDialog":{"title":"Edit API Key","cancelButton":"Cancel","saveButton":"Save","savingButton":"Saving..."},"formFields":{"name":"Name","description":"Description","descriptionOptional":"(optional)"}}},"authSecurity":{"title":"Auth and security","description":"Configure authentication and security settings for your workspace.","sso":{"title":"Single Sign-on Configuration","configureTooltip":"Configure SSO for your workspace","description":"Enable SSO to streamline authentication for your workspace members.","settingUp":"Setting up...","setUp":"Set Up","setUpConfiguration":"Set up SSO Configuration","enforcedTooltip":"This SSO is enforced for all apps in the workspace, meaning they automatically use it for authentication. To update enforcement settings, go to Apps Configuration.","enforcedBadge":"Enforced for apps","setUpAction":"Set up","configure":"Configure","selectProvider":"Select SSO Provider","cancelSetup":"Cancel Setup","dismiss":"Dismiss","saving":"Saving...","enableSSO":"Enable SSO","saveSSOSettings":"Save SSO Settings","notAvailableTitle":"Not Available","notAvailableDesc":"Single Sign-On (SSO) is not available for personal workspaces.","limitedAccessTitle":"Limited Access","limitedAccessDesc":"Only workspace admins can configure SSO settings.","toast":{"error":"Error","failedToLoadSettings":"Failed to load SSO settings","failedToLoadAppSettings":"Failed to load app settings","ssoEnabled":"SSO Enabled","ssoEnabledDesc":"Single Sign-On has been enabled for your workspace","ssoDisabled":"SSO Disabled","ssoDisabledDesc":"Single Sign-On has been disabled","failedToUpdateStatus":"Failed to update SSO status","success":"Success","settingsUpdated":"SSO settings updated successfully","failedToUpdate":"Failed to update SSO settings"},"fields":{"client_id":"Client ID","client_secret":"Client Secret","scope":"Scope","discovery_url":"Discovery URL","tenant_id":"Tenant ID","okta_domain":"Okta Domain","auth_endpoint":"Auth Endpoint","token_endpoint":"Token Endpoint","userinfo_endpoint":"Userinfo Endpoint","jwks_uri":"JWKS URI","name":"Provider Name"},"autoGenerated":"(Auto-generated)","placeholders":{"client_id":"Enter client ID","client_secret":"Enter client secret","scope":"Enter scope","discovery_url":"Enter discovery URL","tenant_id":"Your Azure AD tenant ID","okta_domain":"your-company","auth_endpoint":"Enter auth endpoint","token_endpoint":"Enter token endpoint","userinfo_endpoint":"Enter userinfo endpoint","jwks_uri":"Enter JWKS URI","name":"Enter provider name"},"tooltips":{"clientId":"The OAuth client ID provided by your identity provider","clientSecret":"The OAuth client secret provided by your identity provider (keep this confidential)","scopeGeneral":"OAuth scopes to request (openid, email, profile are commonly used)","scopeGithub":"OAuth scopes to request (user:email for GitHub)","discoveryUrlGoogle":"OIDC discovery endpoint (pre-configured for Google)","discoveryUrlMicrosoft":"OIDC discovery endpoint automatically generated from your tenant ID","discoveryUrlOkta":"OIDC discovery endpoint automatically generated from your Okta domain","discoveryUrlAdvanced":"OIDC discovery endpoint URL (if supported by your provider)","tenantId":"Azure AD Directory (tenant) ID - found in Azure Portal → Azure Active Directory → Overview","oktaDomain":"Your Okta domain name (e.g., 'your-company' from your-company.okta.com)","authEndpointGithub":"GitHub OAuth authorization endpoint (pre-configured)","authEndpointGeneral":"OAuth authorization endpoint URL","tokenEndpointGithub":"GitHub OAuth token endpoint (pre-configured)","tokenEndpointGeneral":"OAuth token endpoint URL","userinfoEndpointGithub":"GitHub API user endpoint (pre-configured)","userinfoEndpointGeneral":"OAuth userinfo endpoint URL","jwksUri":"JSON Web Key Set URI for token verification","providerName":"Custom name for your SSO provider"},"providerFallback":"{{name}} SSO","providers":{"advanced":"Advanced / Manual Configuration"}},"domainVerification":{"title":"Domain Verification","label":"Workspace domain","placeholder":"Add your domain","hint":"The domain linked to your workspace","check":"Check","verified":"Verified","checking":"Checking","copyFailed":"Failed to copy to clipboard","dnsTimedOut":"DNS verification timed out. Please check your DNS settings and try again.","domainVerifiedSuccess":"Domain verified successfully!","enterDomainFirst":"Please enter a domain first","domainSaved":"Domain saved. Add the DNS record to verify ownership.","configFailed":"Failed to configure domain verification","verificationReset":"Domain verification has been reset","resetFailed":"Failed to reset domain verification","addDnsRecords":"Add DNS records for {{domain}}","dnsInstructions":"Log into your domain provider, go to the DNS settings, and add this TXT record.","type":"Type","hostName":"Host / Name","value":"Value","dnsCheckNote":"DNS verification can take a few minutes. Once everything is updated, we'll automatically verify your domain.","checkingDns":"Checking your DNS records...","resetting":"Resetting...","reset":"Reset","copyLabel":"Copy {{label}}"}}}`),kL={earnBonusCredits:"Earn bonus credits"},wL={apps:"Apps",superagents:"Superagents",newAgent:"New Agent",emptyAgents:"Create your first agent and see your conversations here.",allAgents:"All Agents",settings:"Settings",inviteMembers:"Invite members",allWorkspaces:"My workspaces",org:"Org",createNewWorkspace:"Create new workspace",recents:"Recents",favorites:"Favorites",noFavoritesYet:"No favorites yet",addAppsForQuickAccess:"Add your apps for quick access",view_all:"View all"},AL={pageTitle:"Gift cards",pageSubtitle:"Give the gift of building. Send a gift card to a friend.",tabBuy:"Buy a gift card",tabPurchased:"Purchase history",successTitle:"Gift card purchased successfully!",successDescription:"The recipient will receive an email with their gift card code.",successDescriptionPdf:"Check your email for a printable gift card to give in person.",dismissSuccess:"Dismiss success message",amount:"Choose an amount",customAmount:"$ Custom",customAmountPlaceholder:"{{symbol}} Custom amount",customAmountError:"Amount must be between {{min}} and {{max}}",creditsInfo:"This gift card includes <strong>{{credits}} message credits</strong> to build apps",deliveryMethodTitle:"How would you like to send it?",deliveryEmail:"Email to recipient (immediately)",deliveryPdf:"Email to you (printable)",recipientTitle:"Who is it for?",recipientName:"Name",recipientNamePlaceholder:"Enter recipient name",recipientEmail:"Email",recipientEmailPlaceholder:"Enter recipient email",messageLabel:"Gift card message (optional)",messagePlaceholder:"Add a personal message (optional)",suggestMessage:"Suggest a message",suggestFallbackName:"friend",messageCharCount:"{{count}}/300 characters",senderTitle:"Who is it from?",senderName:"Your name",senderNamePlaceholder:"Enter sender name",submitButton:"Continue to checkout",submitting:"Processing...",errorGeneric:"Something went wrong",historyEmpty:"No gift cards yet. Buy one for a friend!",historyTo:"To {{name}}",historyCodeLabel:"Gift card code",historyCopy:"Copy",historyCopied:"Copied",historyRedeemed:"This gift card has been redeemed",historyRedeemedOn:"This gift card has been redeemed on {{date}}",historySentTo:"Sent to {{email}}",statusSent:"Sent",statusRedeemed:"Redeemed",statusExpired:"Expired",statusProcessing:"Processing",statusPending:"Pending",statusRevoked:"Revoked",historyActions:"Actions",designTitle:"Pick a design",designClassic:"Classic",designSunrise:"Sunrise",designOcean:"Ocean",cardLabel:"Gift Card",cardCreditsLabel:"message credits",cardFor:"For {{name}}",cardDefaultName:"Your Friend",historyError:"Failed to load gift cards. Please try again.",historyDateIssued:"Date issued",historyRecipient:"Recipient",historyAmount:"Amount",historyStatus:"Status",historyCode:"Code",historySenderDetails:"Sender details",historySentToYou:"Sent to you",historyViewCode:"View code",historyHideCode:"Hide code",historyDownloadPdf:"Download PDF",historyResend:"Resend",historyResendSuccess:"Gift card email resent successfully!",historyResendError:"Failed to resend email. Please try again.",historyDownloadError:"Failed to download. Please try again.",historyCredits:"credits",emailInvalid:"Please enter a valid email address",buyGiftCard:"Buy a Gift Card",giftAndReferrals:"Gift & Referrals",redeemTitle:"You received a gift card!",redeemDescription:"Once you redeem, credits will be applied to your workspace.",redeemSelectWorkspace:"Select a workspace",redeemBackToWorkspace:"Back to Workspace",redeemCheckCreditUsage:"Check credit usage",redeemErrorDescription:"This code has already been used and cannot be redeemed again. If you are not sure what happened, you can check your credits or contact support.",redeemDefaultWorkspace:"this",error:"Error",redeemSuccess:"Gift card redeemed!",redeemSuccessDescription:"{{credits}} credits added to {{workspace}}.",redeemButton:"Redeem gift card",redeemNotNow:"Not now",redeemDocsLink:"Learn how gift card credits work in <docsLink>our documentation</docsLink>",redeemCouponDescription:"Redeem it to get {{amount}} off your subscription.",redeemCouponAppliedTitle:"Gift card applied!",redeemCouponReadyTitle:"Gift card ready to use!",redeemCouponNoWorkspace:"No workspace selected",coupon:{title:"Redeem a coupon or gift card",description:"Enter your code to add credits to your balance.",placeholder:"Enter your code",apply:"Apply",success:"Coupon applied successfully!",invalidCode:"The code is invalid. Please try again.",notFound:"Coupon code not found. Please check and try again.",giftCardNotFound:"Gift card not found. Check the code and try again.",redeemFailed:"Failed to redeem gift card. Please try again."},errors:{invalidRecipientEmail:"Please enter a valid email address",recipientEmailRequired:"Recipient email is required",checkoutFailed:"Failed to initiate checkout. Please try again.",confirmPurchaseFailed:"Failed to confirm purchase. Please try again.",alreadyRedeemed:"This gift card has already been redeemed",notAvailable:"This gift card is not available for redemption",expired:"This gift card has expired",notWorkspaceMember:"You are not a member of the selected workspace",networkError:"Network error. Please check your internet connection and try again.",rateLimitExceeded:"Too many attempts. Please try again later.",permissionDenied:"Only workspace owners can redeem gift cards. Ask a workspace owner to apply this code.",invalidPlanPrice:"This plan is not available for gift card checkout. Please select a different plan."},creditBanner:"You have {{amount}} gift card credit on your account. It will be applied to your next invoice automatically.",upgradeGiftCardWarning:"Your current plan was purchased using a gift card. Gift card credit is not transferred on upgrades — you will be charged the prorated price."},SL={back:"Go Back"},CL="Loading...",DL={message:"Signed in as <strong>{{email}}</strong> — doesn't match the expected account.",switchAccount:"Switch account",dismiss:"Dismiss banner"},TL={topBar:mL,createWorkspacePage:gL,workspaceMenu:hL,agentEditorMenu:fL,credits:vL,community:bL,workspaceSettings:yL,referralCta:kL,sidebar:wL,giftCards:AL,common:SL,loading:CL,userMismatch:DL},EL={notifications:"Notifications",latestNews:"Latest news"},PL={loading:"Loading...",loadingMore:"Loading more...",errorLoading:"Failed to load notifications",noNotifications:"No notifications yet",noMoreNotifications:"No more notifications",noNews:"No news yet"},_L={markAllAsRead:"Mark all as read",readMore:"Read more",showLess:"Show less",upgrade:"Upgrade",percentOff:"{{percent}}% off"},xL={tabs:EL,states:PL,actions:_L},IL="Plan and billing",RL="Manage Subscription",zL={planAndBilling:"Plan & billing"},ML={details:"Subscription Details",cancelPlan:"Cancel Plan",cancelling:"Cancelling...",explorePlans:"Explore Plans",reactivatePlan:"Reactivate Plan",reactivating:"Reactivating...",upgradePlan:"Upgrade Plan",updatePayment:"Update Payment",managePlan:"Manage Plan",yourPlan:"Your Plan",creditsPerMonth:"Credits per month",price:"Price",nextBillingDate:"Next Billing Date",highlights:"Plan highlights",cancelChange:"Cancel Change",cancelTooltip:"To cancel your subscription, first cancel your scheduled downgrade",currentlyUsing:"You're currently using the <bold>{{plan}}</bold> plan",subscriptionEndsOn:"Your subscription will end on {{date}}",subscriptionRenewsOn:"Your subscription renews on {{date}}",noActiveSubscription:"No active subscription",keepSubscription:"Want to keep your subscription? Click <manageLink>Manage Plan</manageLink> and Cancel the change.",planChangeNotice:"Your plan will change to {{plan}} at the end of your current billing cycle.",cancelOnDate:"Your plan is set to cancel on {{date}}. Reactivate to keep your current credits and features.",cancelNoDate:"Your subscription is set to cancel. Reactivate to keep your current credits and features.",free:"Free",monthly:"monthly",yearly:"yearly",subscriptionCancelled:"Subscription Cancelled",staysActiveUntil:"Everything stays active until {{date}}",creditsFormat:"{{messageCredits}} message | {{integrationCredits}} integration",priceFormat:"{{symbol}}{{amount}}/{{period}}"},NL={privateApps:"Private apps",inAppCodeEditing:"In app code editing",unlimitedApps:"Unlimited apps",removeBase44Badge:"Remove Base44 badge",connectDomain:"Connect a domain",backendFunctions:"Backend functions",github2WaySync:"Github 2-way sync",customOAuth:"Custom OAuth from google console",aiModelSelection:"AI Model selection",stripeIntegration:"Stripe integration",customEmailDomain:"Custom e-mail domain",appStoreFileDownloads:"App store file downloads"},FL={title:"Payment overdue",description:"Your subscription payment is past due. Please update your payment method to restore full access to your plan features.",tryAgain:"Try again",trying:"Trying..."},LL={title:"Payment Method",manage:"Manage",noPaymentMethod:"No payment method on file",default:"Default",expires:"Expires {{month}}/{{year}}"},jL={title:"Billing Information",manage:"Manage",name:"Name",email:"Email",billingAddress:"Billing Address",noInformation:"No billing information available"},OL={title:"Billing History",noHistory:"No billing history available",loading:"Loading billing history...",loadError:"Failed to load billing data",planDescription:"{{plan}} Plan",downloadInvoice:"Download Invoice"},BL={managingBillingFor:"Managing billing for <bold>{{name}}</bold>",subscriptionRenewsOn:"Workspace subscription renews on {{date}}",noActiveSubscription:"No active workspace subscription",manage:"Manage",defaultName:"workspace",addSeats:"Add Seats",loadError:"Failed to load workspace billing history",workspaceSeats:"Workspace Seats",contactAdmin:{title:"Workspace Plan",subtitle:"Managed by your workspace",body:"Need more credits? Contact your workspace administrator to upgrade your team's plan."}},UL={portalError:"Failed to open billing portal. Please try again later or contact support.",paymentPortalError:"Failed to open payment management. Please try again.",scheduleCancelSuccess:"Subscription schedule cancelled successfully",scheduleCancelError:"Failed to cancel subscription schedule. Please try again later.",subscriptionCancelError:"Failed to cancel subscription. Please try again."},qL={title:IL,manageSubscription:RL,breadcrumb:zL,subscription:ML,features:NL,pastDue:FL,paymentMethod:LL,billingInformation:jL,billingHistory:OL,workspace:BL,toasts:UL},VL={title:"Let's talk",subtitle:"Connect with our team to see how Base44 can help your organization.",form:{firstName:"First name*",lastName:"Last name*",workEmail:"Work Email*",companyWebsite:"Company website*",role:"Role*",discussion:"What would you like to discuss?",submit:"Submit"},success:{title:"Thank you for reaching out!",description:"We've received your message and our team will get back to you within 24 hours. We're excited to help you with your Base44 journey!"}},$L={iso27001:{title:"ISO 27001",subtitle:"ISO Security Management"},soc2:{title:"SOC 2 Type II",subtitle:"SOC for Service Organizations"},gdpr:{title:"GDPR",subtitle:"Data Protection and Privacy Regulation"}},WL={fiveApps:"5 apps",unlimitedCollaborators:"Unlimited collaborators",userAnalytics:"User analytics",aiAgents:"AI Agents",limitedDb:"Limited 512MB DB",unlimitedApps:"Unlimited apps",unlimitedNumberOfApps:"Unlimited number of apps",connectDomain:"Connect a domain",connectorsIntegrations:"Connectors & integrations",backendFunctions:"Backend Functions",scaledUserAnalytics:"Scaled user analytics",privateApps:"Private apps",flexibleAiModelControl:"Flexible AI model control",removeBase44Branding:"Remove Base44 branding",inAppCodeEditing:"In-app code editing",inAppCodeEdits:"In-app code edits",freeDomainOneYear:"Free domain for 1 year",creditsToShare:"25 credits to share with a friend",githubTwoWayIntegration:"GitHub 2-way integration",githubIntegration:"GitHub integration",earlyAccessBeta:"Early access to beta features",premiumSupport:"Premium Support",sso:"SSO",prioritySupport:"Priority support",workspacePublishingControls:"Workspace publishing controls",workspaceTemplates:"Workspace templates",ipWhitelisting:"IP Whitelisting",workspaceUsageAnalytics:"Workspace usage analytics",userRolesPermissions:"User roles and permissions",dataTrainingOptOut:"Data training opt out",scim:"SCIM",creditConsumptionControl:"Credit consumption control",dedicatedAccountManager:"Dedicated Account Manager",dedicatedSolutionEngineer:"Dedicated Solution Engineer",enterpriseSupport:"Enterprise Support",customSecurityCapabilities:"Custom security capabilities",customDatabaseStorage:"Custom Database Storage",customRateLimits:"Custom rate limits",tailoredOnboarding:"Tailored onboarding & enablement",workspaceMonitoringApi:"Workspace monitoring API"},GL={unlimitedApps:"Unlimited apps",unlimitedCollaboratorsSharedCredits:"Unlimited collaborators with shared credits",customDomain:"Custom domain",removeBase44Branding:"Remove Base44 branding",builtInIntegrations:"Built-in integrations",automations:"Automations",chooseAiModel:"Choose your AI model",inAppCodeEditing:"In-app code editing",twoWayGithubSync:"2-way GitHub sync",privateTemplates:"Private templates",earlyAccessNewFeatures:"Early access to new features",prioritySupport:"Priority support"},HL={choosePlan:"Choose the plan that's right for you",usage:"Usage",back:"Back",chooseBillingCycleUpgrade:"Choose your billing cycle for upgrading to {{planName}}",selectBillingCycle:"Select a billing cycle for your {{planName}} plan",viewBilling:"View Billing",seePricing:"See Pricing"},YL={desktop:"Base44 is part of <wixLogo/> - Trusted by 250M+ people worldwide",mobile:{line1:"Base44 is part of <wixLogo/>",line2:"Trusted by 250M+ people worldwide"}},KL={badge:{recommended:"Recommended",popular:"Popular",mostPopular:"Most Popular",currentPlan:"Current Plan",discountOff:"{{discount}} off"},button:{processing:"Processing...",notAvailable:"Not Available",manageSubscription:"Manage Subscription",managePlan:"Manage Plan",currentPlan:"Current Plan",upgradePlan:"Upgrade Plan",upgradeTo:"Upgrade to {{planName}}",downgradeTo:"Downgrade to {{planName}}",downgradePlan:"Downgrade Plan",switchPlan:"Switch Plan",subscribeTo:"Subscribe to {{planName}}",bookDemo:"Book a Demo",getPlan:"Get {{planName}}"},credits:{monthly:"Monthly credits",integration:"Integration credits",monthlyLower:"monthly credits",integrationLower:"integration credits",messageCredits:"message credits",perMonth:"/mo",sharedAcrossUsers:"Shared across unlimited users",messageShort:"message",integrationShort:"integration"},features:{highlights:"Plan highlights:",allInBusinessPlus:"All in Business plus:",allInBuilderPlus:"All in Builder plus:",unlimitedAgents:"Unlimited number of agents"},free:{dailyCredits:"{{dailyCredits}} daily credits (up to {{monthlyMax}}/mo)",integrationCredits:"{{amount}} integration credits"},enterprise:{description:"Get enterprise-grade governance, scalability, and support, with a <bold>custom pricing</bold> model and a custom credit amount."}},ZL={offTiers:"30% off tiers",currentPlan:"Current plan",popular:"Popular",messageCredits:"message credits",integrationCredits:"integration credits",perMonth:"/mo",placeholder:"Select credits",footer:{cantFind:"Can't find a plan that fits?",contactUs:"Contact Us"}},JL={button:{cancel:"Cancel",confirmUpgrade:"Confirm Upgrade",confirmDowngrade:"Confirm Downgrade",confirmSwitch:"Confirm Switch",processing:"Processing...",continue:"Continue"},upgrade:{title:"Confirm Subscription Upgrade",upgradeDescription:"You are about to upgrade to the {{planName}} plan for <price/>. Your subscription will be updated immediately and you'll be charged a prorated amount for the remainder of your billing cycle.",upgradeDescriptionYearly:"You are about to upgrade to the {{planName}} yearly plan for <price/>. Your subscription will be updated immediately and you'll be charged a prorated amount for the remainder of your billing cycle.",upgradeDescriptionShort:"You are about to upgrade to the {{planName}} plan for <price/>. Your subscription will be updated immediately and you'll be charged a prorated amount."},downgrade:{title:"Confirm Subscription Downgrade",description:"You are about to downgrade to the {{planName}} plan for {{price}}/mo. This change will take effect at the end of your current billing cycle."},switch:{title:"Switch Plan",switchDescription:"Switching to the {{planName}} plan will update your available features and set your monthly limits to <bold>{{messageCredits}} message credits and {{integrationCredits}} integration credits.</bold>",nextBillingDate:"These changes will take effect on {{date}}, at the start of your next billing cycle.",nextBillingCycle:"These changes will take effect at the start of your next billing cycle."},manageSubscription:{title:"Manage Your Subscription",description:"Choose how you'd like to manage your {{planName}} subscription.",upgradeToYearly:"Upgrade to Yearly",upgradeToYearlySavings:"Save money and get a free domain + 25 credits to share",upgradeToYearlySavingsStarter:"Save money and get 25 credits to share",managePayments:"Manage Payments",managePaymentsDescription:"Update payment method, view invoices and more",managePaymentsDescriptionAlt:"Update payment method, view invoices, and more"},upgradeToYearly:{titleV1:"Confirm Subscription Upgrade",titleV2:"Upgrade Plan",descriptionV2:"Once you upgrade, you'll be charged a prorated amount as a result of the time left in your current plan. Starting on your next billing date, you'll be charged for the full plan price of {{price}} x 12 months.",benefitsTitle:"🎠Yearly Benefits",freeDomain:"Get a free domain for a year",shareCredits:"25 credits to share with friends",betterValue:"Better value with yearly pricing"}},QL={title:"Frequently Asked Questions",whatIsBase44:{question:"What is Base44?",answer:{description:"Base44 is an AI-powered platform that allows you to build custom software applications without coding. It uses natural language processing to understand your requirements and generate functional software based on your descriptions.",accessibility:"Our platform is designed to be user-friendly and accessible to non-technical users, enabling you to create powerful applications through simple conversations with our AI."}},freePlan:{question:"What's included in the free plan?",answer:{allowances:"The free plan gives you a daily allowance of 5 messages and a monthly cap of 25 messages total. You also get 100 integration credits to experiment with various integrations like authentication, database, and analytics.",coreAccess:"With the free plan, you have access to all core integration types, allowing you to build fully functional applications with user authentication, data storage, and more - all at no cost."}},integrationCredits:{question:"What are integration credits?",answer:{definition:"Integration credits are used to access Base44's various integrations within your application.",capabilities:"These integrations enhance your app's functionality, including LLMs, file uploading, image understanding, image generation, email sending, SMS sending, database querying, and many more. The number of integration credits in your plan determines how many of these requests you can make per month.",expiration:"Unused credits expire at the end of your monthly billing cycle (on your reset date).",learnMore:"Learn more about how credits are used in the Knowledge Base."}},appTypes:{question:"What types of applications can I build with Base44?",answer:{examples:"Base44 is versatile and can be used to build a wide range of applications, including but not limited to: fully functional SaaS products, backoffice tools, personal productivity apps, customer portals, and business process automation tools.",prototyping:"You can also use it for rapid prototyping and creating MVPs, allowing you to validate your ideas quickly without investing in expensive development resources."}},ownership:{question:"Who owns the applications created with Base44?",answer:{yourProperty:"Between you and Base44, all applications and content generated through our platform shall be considered your property. We make no ownership claims over anything you create using Base44.",intellectualProperty:"Your intellectual property remains yours, and you're free to use, modify, distribute, or sell the generated applications as permitted by law."}},deployment:{question:"How are Base44 applications deployed?",answer:{instantAccess:"With Base44, deployment is incredibly simple. Your applications are instantly usable and shareable as soon as you create them. Simply use and share the URL of your app with others.",noHosting:"There's no need for separate hosting or deployment steps, making it incredibly easy to get your application up and running quickly."}},planLimits:{question:"What happens if I reach my plan limits?",answer:{limitations:"When you reach your daily message limit, you'll need to wait until the next day to send more messages. If you hit your monthly limit, you won't be able to send additional messages or make integration requests until the beginning of your next billing cycle.",upgradeOption:"To avoid interruptions in your app development and usage, you can upgrade to a higher tier plan with increased limits at any time from your billing dashboard."}}},XL={pendingChange:{title:"Pending Subscription Change",message:"You have a subscription change to the {{tierName}} plan scheduled to take effect at the end of your current billing cycle.",subMessage:'Note: To cancel your subscription, first cancel this change, then use "manage payments" to cancel.',cancelChange:"Cancel Change",cancelling:"Cancelling..."},cancellation:{title:"Subscription Cancellation Scheduled",message:"Your subscription will end on {{endDate}}. Until then, you have full access to all features.",subMessage:"Want to keep your subscription? You can reactivate it with one click.",managePayments:"Manage Payments",processing:"Processing..."}},e0={currentPlan:"Your current plan is {{displayName}},",withCredits:"with {{messageCredits}} message credits & {{integrationCredits}} integration credits."},t0={title:"Base44 benefits:",responsiveVisualEditor:"Responsive visual editor",builtInBackend:"Built-in backend",userManagement:"User management"},a0={title:"Subscription payment overdue",tryAgain:"Try again",trying:"Trying...",updatePaymentMethod:"Update Payment Method",description:"Your last payment didn't go through. Try again or update your payment method to restore full access to your plan."},n0={error:"Error",success:"Success",checkoutError:"Failed to create checkout session. Please try again later.",subscriptionUpdated:"Subscription Updated",downgradeScheduled:"Your subscription has been scheduled to downgrade at the end of your billing cycle.",upgradeSuccess:"Your subscription has been upgraded successfully. Changes will be reflected shortly.",updateError:"Failed to update subscription. Please try again later.",portalError:"Failed to open billing portal. Please try again later.",scheduleCancelSuccess:"Subscription schedule cancelled successfully",scheduleCancelError:"Failed to cancel subscription schedule. Please try again later.",paymentPortalError:"Failed to open payment management. Please try again."},i0={loadError:"Failed to load workspace billing information",loadErrorAlert:"Unable to load workspace billing information. Please try again later.",seatTypePlan:"{{seatType}} Plan",currentPlanContact:"You're currently on the {{seatType}} plan. To make changes, please contact your workspace {{adminType}}.",workspaceOwner:"Workspace owner:",workspaceAdmin:"Workspace admin:",viewerAccess:"Viewer Access",viewerAccessDescription:"You currently have viewer access in this workspace. To get a seat with full access, please contact your workspace {{adminType}}.",adminAccessMessage:"<strong>Administrator Access:</strong> Visit the <a>workspace dashboard</a> to manage seats, billing, and team members.",adminTypes:{owner:"owner",administrator:"administrator"}},r0={loadError:"Unable to load workspace information. Please try again later.",workspacePlan:"Workspace plan:",renews:"Renews:",workspaceOwner:"Workspace Owner",contactOwner:"For billing changes or subscription questions, contact your workspace owner.",ownerLabel:"Workspace owner:",adminAccessMessage:"<strong>Administrator Access:</strong> Visit the <a>workspace members</a> page to manage members.",billingManagedByOwner:"Billing is managed by your workspace owner. Contact the owner listed above for any billing-related questions.",roles:{owner:{title:"Owner",description:"Full access to workspace billing, settings, and member management."},admin:{title:"Admin",description:"Can manage workspace settings and members, but cannot modify billing."},editor:{title:"Editor",description:"Can create and edit apps within this workspace."},viewer:{title:"Viewer",description:"Can view apps in this workspace with read-only access."},member:{title:"Member",description:"Team member with access to workspace apps."},guest:{title:"Guest",description:"External collaborator with access to specific apps in this workspace."}}},o0={title:"Security and Compliance",iso:{title:"ISO/IEC 27001",subtitle:"ISO/IEC Security Management"},soc2:{title:"SOC 2 Type II",subtitle:"SOC for Service Organizations"},gdpr:{title:"GDPR",subtitle:"Data Protection and Privacy Regulation"}},s0={title:"Base44 for Enterprise",subtitle:"Empower large organizations to build solutions that fit their teams perfectly, safely and at scale",contactUs:"Contact Us",features:{onboarding:{title:"Onboarding & Training",description:"Tailored onboarding plans combined with live training and resources, designed to help admins and end users adopt quickly."},accountTeam:{title:"Dedicated Account Team",description:"Work with a named account manager and solution engineer, providing direct guidance, escalations, and roadmap alignment."},prioritySupport:{title:"Priority support, guaranteed",description:"Get guaranteed priority assistance and defined response times from a dedicated support channel."},capabilities:{title:"Enterprise-Grade Capabilities",description:"Security, compliance, management, and monitoring features - providing the control and flexibility required at scale."}}},l0={yearly:"Yearly",monthly:"Monthly",yearlyInline:"yearly",monthlyInline:"monthly",monthlyCredits:"Monthly credits",integrationCredits:"Integration credits",priceSuffixYearly:" × 12 months",priceSuffixMonthly:" / every month",off:"OFF",save:"SAVE",discountBadge:"{{discount}} OFF",saveBadge:"SAVE {{amount}}",planNotFound:"Plan pricing not available. Please go back and try again.",upgradeDialogTitle:"Confirm Subscription Upgrade",upgradeDialogDescription:"You are about to upgrade to the {{planName}} plan for <price/>/mo. Your subscription will be updated immediately and you'll be charged a prorated amount for the remainder of your billing cycle.",noteMonthlyExcludes:"NOTE: Monthly subscription doesn't include:",whatsIncluded:"What's included with the {{period}} plan",chooseYearly:"Choose a <yearlyLink>yearly</yearlyLink> subscription to get the most from your premium plan",yearlyFeatures:{discount:"Enjoy a special discount and save money",freeDomain:"Get a free domain for 1 year",shareCredits:"Receive 25 credits to share with a friend"},monthlyFeatures:{discount:"Special discount and savings",freeDomain:"Free domain for 1 year",shareCredits:"25 credits to share with a friend"},planNotAvailable:"Plan pricing not available. Please try again.",goBack:"Go Back",continueToCheckout:"Continue to Checkout",confirmSubscriptionUpgrade:"Confirm Subscription Upgrade",upgradeDescription:"You are about to upgrade to the {{planName}} plan for <strikethrough>{{originalPrice}}</strikethrough>{{price}}/mo. Your subscription will be updated immediately and you'll be charged a prorated amount for the remainder of your billing cycle.",cancel:"Cancel",confirmUpgrade:"Confirm Upgrade",processing:"Processing...",studentDiscountFootnote:"Offer applies to the first year (12 months) of a new Starter plan. One-time use per user; discount cannot be reactivated following cancellation."},c0={bannerTitle:"Student or teacher? Get up to {{percent}}% off Starter plan",bannerSubtitle:"Verify your university email to unlock discounted pricing",verifiedWith:"Verified with {{email}} - up to {{percent}}% off",starterPlan:"Starter Plan",active:"Active",dialogTitle:"Student discount",surveyTitle:"Tell us about yourself",alreadyActiveDesc:"Your student discount is already active.",emailStepDesc:"Verify your university email to unlock student pricing.",codeStepDesc:"We sent a 6-digit code to {{email}}",surveyStepDesc:"Just a few quick questions to complete your verification.",benefitDiscount:"Up to {{percent}}% off",benefitDiscountDetail:"on the Starter plan",benefitAccess:"Full access",benefitAccessDetail:"to all Starter features",benefitClaimOnce:"Claim once",benefitClaimOnceDetail:"use anytime on Starter",alreadyApplied:"Your student discount is already applied",alreadyAppliedDesc:"Verified with {{email}}. Discounted pricing is shown on eligible plans above.",gotIt:"Got it",emailPlaceholder:"you@university.edu",emailHint:"We accept .edu, .ac.uk, .ac.il, and other university domains.",sending:"Sending...",sendCode:"Send verification code",codePlaceholder:"Enter 6-digit code",verifying:"Verifying...",verifyCode:"Verify code",changeEmail:"Change email",resendCooldown:"Resend code ({{seconds}}s)",resendCode:"Resend code",role:"Role",student:"Student",teacher:"Teacher",intendedUseLabel:"What do you plan to use Base44 for?",intendedUsePlaceholder:"e.g., Class project, research tool, thesis...",fieldOfStudy:"What is your field of study?",fieldOfTeaching:"What is your field of teaching?",selectField:"Select field of study...",searchFields:"Search fields...",other:"Other",specifyField:"Please specify...",graduationDate:"Expected graduation date",month:"Month",year:"Year",activating:"Activating...",verifyingEmail:"Verifying email...",activateDiscount:"Activate discount",errorNoEmail:"Please enter your university email address.",errorInvalidEmail:"Please enter a valid email address.",errorSendFailed:"Failed to send verification code. Please try again.",errorEmailAlreadyClaimed:"This university email is already linked to another account.",errorNoCode:"Please enter the 6-digit code from your email.",errorInvalidCode:"Invalid or expired code. Please try again.",errorNoIntendedUse:"Please tell us what you plan to use Base44 for.",errorNoField:"Please select your field of study.",errorNoFieldOther:"Please specify your field of study.",errorNoGraduation:"Please select your expected graduation date.",toastActivatedTitle:"Student discount activated",toastActivatedDesc:"Your student pricing is now applied to eligible plans. Scroll up to view updated prices.",errorActivateFailed:"Failed to activate discount. Please try again.",toastResentTitle:"Code resent",toastResentDesc:"A new verification code has been sent to your email.",errorResendFailed:"Failed to resend code. Please wait a moment and try again."},d0="Your current plan was purchased using a gift card. Gift card credit is not transferred on upgrades — you will be charged the prorated price.",u0={title:"Purchase Successful",redirecting:"Redirecting you back to the app in {{seconds}}s...",button:"Return to App"},p0={modal:VL,certificates:$L,features:WL,borderTag:GL,header:HL,messageLabel:YL,card:KL,dropdown:ZL,dialog:JL,faq:QL,notices:XL,manageSubscription:e0,benefits:t0,overduePayment:a0,toasts:n0,workspaceBilling:i0,workspaceRoles:r0,security:o0,enterprise:s0,periodSelector:l0,studentDiscount:c0,upgradeGiftCardWarning:d0,returnToApp:u0},m0="Invite Friends & Earn Credits",g0="Invite Friends &<br/>Earn Credits",h0="Invite & Earn Credits",f0="Share your link and earn {{credits}} credits when friends publish their first app",v0={title:"Amazing! You've reached the maximum referrals",description:"You can refer up to {{maxReferrals}} friends total",extra:"({{extra}} additional won't earn credits)"},b0={tryAgain:"Try again",copied:"Copied to clipboard!",copyButton:"Copy",copiedButton:"Copied"},y0={title:"How it Works",shareLink:"Share your unique referral link with friends",signupBonus:"They get <bold>{{credits}} credits</bold> when they sign up",publishReward:"You earn <bold>{{credits}} credits</bold> when they publish their first app"},k0="Your Referrals ({{current}}/{{max}})",w0={registered:"Registered",earned:"Earned"},A0={back:"Back",close:"Close",srTitle:"Referral Program",baseDayBadge:"Base44 Day",creditsCount:"{{credits}} credits",earnCredits:"Earn {{credits}} credits",termsAndConditions:"Terms & Conditions",termsDescription:"Referral program terms and conditions"},S0={title:"Terms & Conditions",eligibility:{title:"Eligibility",newUsersOnly:"Only brand-new users can join through this referral offer. Existing accounts aren't included.",shareResponsibly:"We ask that you share your referral link responsibly. Posting it in irrelevant or spammy places may lead to removal from the program."},credits:{title:"Referral Credits",earnOnPublish:"You earn {{credits}} credits when a referred friend publishes their first app",bonusOnSignup:"Referred friends receive {{credits}} bonus credits upon registration",maxPerAccount:"Maximum of 5 successful referrals per account",noCashValue:"Credits have no cash value and cannot be transferred"},restrictions:{title:"Restrictions",voidFraudulent:"Base44 reserves the right to void fraudulent referrals",nonTransferable:"Referral codes are non-transferable"},footer:"Base44 reserves the right to modify or terminate this referral program at any time. Changes will be communicated through the platform."},C0={title:m0,titleDesktop:g0,titleMobile:h0,subtitle:f0,maxReached:v0,link:b0,howItWorks:y0,yourReferrals:k0,status:w0,dialog:A0,terms:S0},D0={title:"Spotlight",subtitle:"Explore standout applications and websites created with Base44",loading:"Loading spotlight…",errorMessage:"Unable to load spotlight. Please try again later.",empty:"No spotlight apps yet."},T0={title:"Error",description:"Failed to load spotlight apps."},E0={label:"Today's Spotlight",byCreator:"by {{creator}}",screenshotAlt:"{{appName}} screenshot",logoAlt:"{{appName}} logo"},P0={"beautifully-designed":"Beautifully Designed","loved-by-the-community":"Loved by the Community",saas:"SaaS",education:"Education","e-commerce":"e-Commerce",websites:"Websites"},_0={screenshotAlt:"{{appName}} screenshot",logoAlt:"{{appName}} logo",viewDetailsLabel:"View Details",viewDetailsAriaLabel:"View details for {{appName}}"},x0={backButton:"Spotlight",byCreator:"By {{creator}}",iframeTitle:"{{appName}} preview",previewNotAvailable:"Preview not available"},I0={ariaLabel:"Submit your app to Spotlight",heading:"Want your app to appear here?",description:"Show what you've built in Base44. Submit to Spotlight and inspire the community.",buttonText:"SUBMIT YOUR APP"},R0={title:"Submit your app to Spotlight",selectAppSubtitle:"Choose the app you want to nominate for the Spotlight page.",detailsSubtitle:"Tell us why your app should be featured on the Spotlight page.",back:"Back",cancel:"Cancel",next:"Next",searchPlaceholder:"Search for apps...",aboutLabel:"About this app",aboutPlaceholder:"Tell us something interesting about your app that users should know – special features, smart tricks you used, or anything the community would enjoy discovering",screenshotLabel:"Screenshot <optional>(optional)</optional>",screenshotHint:"PNG, JPG, or WebP — min 800×450px, up to 2 MB",submit:"Submit",submitting:"Submitting…",submitError:"Failed to submit spotlight request.",successAlreadyInSpotlight:"Already in spotlight",successRequestReceived:"Request received",successDescription:`We'll review "{{appName}}" for spotlight. You'll hear back soon.`},z0={viewApp:"View App",share:"Share",upvote:"Upvote",alreadyUpvoted:"Already upvoted",thankYouForVote:"Thanks for your vote!",voteError:"Could not register vote",voteErrorDescription:"Please try again later.",linkShared:"Link shared",linkCopied:"Link copied to clipboard",shareError:"Could not share"},M0={label:"Did you know?"},N0={editedAgo:"edited {{timeAgo}}",editedRecently:"Edited recently",noAppsFound:"No apps found",noAppsAvailable:"No apps available",loadMore:"Load more apps",loading:"Loading…"},F0={page:D0,fetchError:T0,featured:E0,sections:P0,card:_0,detailModal:x0,submitBanner:I0,requestModal:R0,actions:z0,didYouKnow:M0,appPicker:N0},L0={page:{title:"Help & Support",subtitle:"Get the help you need to build amazing applications with BASE44"},getStarted:"Get Started",cards:{documentation:{title:"Documentation",description:"Explore comprehensive guides, tutorials, FAQs, and best practices for building with Base44."},discord:{title:"Discord Community",description:"Connect with fellow builders and get instant help from our active community."},supportTicket:{title:"Open Support Ticket",description:"Submit a detailed support ticket and get personalized assistance."}},appContext:{title:"App-Specific Support",description:"Support requests will be associated with app: <appId>{{appId}}</appId>"},quickActions:{title:"Quick Actions",subtitle:"Manage your support experience",myTickets:{title:"My Support Tickets",description:"View and manage your existing support tickets"},communityForum:{title:"Community Forum",description:"Our brand-new reddit community"}}},j0={fallbackTitle:"Support Conversation",appLink:"App"},O0={title:"My Support Tickets",backToSupport:"Back to Support",showingTicketsForApp:"Showing tickets for App: <app>{{appId}}</app>",filteredByApp:"Filtered by App: <app>{{appId}}</app>"},B0={title:"Submit support ticket",titleResume:"Submit a support ticket"},U0={helpMessage:"Need immediate help? <normal>Check our </normal><docsLink>documentation</docsLink><normal> or join our </normal><discordLink>Discord community</discordLink>."},q0={heading:"Continue your support request?",description:"You started creating a support ticket earlier.",chooseHowToProceed:"Choose how you'd like to proceed:",continueWhereLeftOff:"Continue where you left off",continueWhereLeftOffDesc:"Restore your previous inputs and continue from the last step.",startNewTicket:"Start a new ticket",startNewTicketDesc:"Discard the draft and start a new support request.",continue:"Continue"},V0={tellUsAboutYourIssue:"Tell us about your issue",whatTypeOfIssue:"What type of issue are you experiencing?",selectApp:"Select the app related to your issue"},$0={instruction:"Please share what you were doing, what went wrong, how we can reproduce it.",descriptionLabel:"Description",descriptionPlaceholder:`Example:
• What you were trying to do
• What happened instead
• Any error message
• Steps to reproduce (if relevant)`,attachmentsLabel:"Attachments",viewApp:"View app",dragAndDropFiles:"Drag and drop files here",dropFilesHere:"Drop files here",browseFiles:"Browse files",uploading:"Uploading...",unsupportedFileType:'File type "{{type}}" is not supported. Supported types: jpg, jpeg, png, pdf.',invalidFile:"Invalid file",failedToUpload:"Failed to upload file"},W0={analyzingIssue:"Analyzing your issue...",categoryFullDescription:"It looks like your issue falls into one of these categories.<br/>Select the one that fits best — it helps us guide you to the right solution."},G0={authentication:"Authentication",billing:"Billing",bug_report:"Bug Report",domain:"Domain",integrations_and_backend_functions:"Integrations & Backend",chat_issues:"Chat Issues",security:"Security",social_post_bonus_credits:"Social Post Bonus Credits",superagent:"Superagent",other:"Other"},H0={searchPlaceholder:"Search for apps...",addAppLink:"Add app link",addAppLinkPlaceholder:"e. g., https://your-app-url.com or https://yourapp.base44.app",invalidUrl:"Please enter a valid URL starting with http:// or https://",noAppsFound:"No apps found",noAppsAvailable:"No apps available",loadingMore:"Loading...",loadMore:"Load more apps",edited:"edited {{time}}"},Y0={loading:"Loading conversation...",errorTitle:"Error Loading Conversation",noConversationTitle:"No Conversation Found",noConversationMessage:"This conversation doesn't exist or you don't have access to it.",tryAgain:"Try Again",ticketFallbackTitle:"Support Ticket",categoryFallback:"General",closeTicket:"Close Ticket",closing:"Closing...",aiAssistantInfo:"AI assistant · May make mistakes",talkToSpecialist:"Talk to a support specialist",handledBySpecialist:"Handled by a support specialist",notifyWhenResponds:"Notify me when support responds",ticketResolvedTitle:"This ticket has been resolved",ticketResolvedMessage:"Please create a new ticket for additional support",conversationClosed:"This conversation is closed",aiHandlingTicket:"AI agent is handling this ticket. Click <bold>Take over</bold> to reply manually.",typeResponse:"Type your response...",typeMessage:"Type your message...",failedLoadConversation:"Failed to load conversation. Please try again.",ticketAlreadyResolved:"This ticket has been resolved. Please create a new ticket for additional support.",failedCloseTicket:"Failed to close ticket. Please try again.",failedEscalate:"Failed to escalate ticket. Please try again.",confirmCloseTicket:"Are you sure you want to close this ticket? This will mark it as resolved.",premiumSupportTier:"Premium Support",standardSupportTier:"Standard Support",premiumSupportMessage:"Offline support, prioritized reply within 48h",standardSupportMessage:"Offline support, reply within 48h",templates:{label:"Quick Templates",less:"Less"},draft:{title:"AI Suggested Response",collapse:"Collapse",viewAll:"View All",use:"Use"},escalateModal:{title:"Request human support",description:"Your ticket will be transferred to our support team for a personalized response.",cancel:"Cancel",requesting:"Requesting...",requestButton:"Request human support"}},K0={supportTeam:"Support Team",attachedFile:"Attached file",translatedFrom:"Translated from {{language}}",internalNote:"Internal Note",emptyTitle:"Start the conversation",emptyMessage:"Send a message to begin your support conversation",translating:"Translating...",showingTranslations:"Showing translations",translateToEnglish:"Translate to English",confirmDeleteMessage:"Are you sure you want to delete this message?",failedDeleteMessage:"Failed to delete message. Please try again.",failedTranslate:"Failed to translate messages. Please try again.",attachedContent:"Attached content",videoNotSupported:"Your browser doesn't support video playback.",noteBy:"by {{name}}",adminFallback:"Admin",events:{unknownActor:"Someone",statusChange:"{{actor}} changed status to {{status}}",unassigned:"{{actor}} unassigned the ticket",assigned:"{{actor}} assigned to {{assignee}}",reassigned:"{{actor}} reassigned to {{assignee}}",escalated:"{{actor}} escalated",removedEscalation:"{{actor}} removed escalation",categoryChange:"{{actor}} changed category to {{category}}",labelChangeAdded:"{{actor}} added {{labels}}",labelChangeRemoved:"{{actor}} removed {{labels}}",labelChangeBoth:"{{actor}} added {{added}}; removed {{removed}}",updated:"{{actor}} updated ticket",markedAbusive:"{{actor}} marked content as abusive",clearedAbusive:"{{actor}} cleared abusive content flag"}},Z0={uploading:"Uploading...",uploadFiles:"Upload files",fileTypeError:"Please request support for additional file types at <link>feedback.base44.com</link>"},J0={open:"Open",closed:"Closed",all:"All"},Q0={open:"Open",resolved:"Resolved"},X0={noOpenTickets:"No Open Tickets",noClosedTickets:"No Closed Tickets",noTickets:"No Tickets",descriptionOpen:"You don't have any open support tickets at the moment.",descriptionClosed:"No closed tickets found.",descriptionAll:"You haven't submitted any support tickets yet."},ej={appLabel:"App: {{appId}}",dateNotAvailable:"Not available"},tj={loadingTitle:"Error Loading Tickets",loadingFailed:"Failed to load support tickets. Please try again.",ticketLimitTitle:"Ticket Limit Reached",ticketLimitDescription:"There are more tickets than can be loaded. Only the top 1000 most recent tickets were loaded."},aj={free:"Free"},nj={cancel:"Cancel",back:"Back",skip:"Skip",continue:"Continue",submitting:"Submitting...",refresh:"Refresh",newTicket:"New Ticket",createNewTicket:"Create New Ticket",tryAgain:"Try Again",bannedAlert:"Your access to Base44 Support has been restricted due to a violation of the Base44 Support Terms of Use. Please refer to the email we sent you for more details."},ij={descriptionRequired:"Please add a description",descriptionTooShort:"Please add a bit more detail. Minimum is 20 characters.",appRequired:"Choose one of your apps or add a link so we know where the issue is happening.",submissionFailed:"Failed to submit your support ticket. Please try again."},rj={dailyLimitReached:"Daily limit reached",somethingWentWrong:"Something went wrong",dailyLimitMessage:"Daily support conversation limit exceeded. You can create up to {{limit}} conversations per day with your current subscription.",tryAgain:"Try again",cancel:"Cancel",close:"Close"},oj={help:L0,sidebar:j0,page:O0,modal:B0,footer:U0,resumeStep:q0,steps:V0,tellUsAboutYourIssue:$0,whatTypeOfIssue:W0,categories:G0,selectApp:H0,chat:Y0,messages:K0,input:Z0,tabs:J0,status:Q0,emptyState:X0,ticketCard:ej,errors:tj,tiers:aj,actions:nj,validation:ij,submissionError:rj},sj={sectionTitle:"Configuración de cuenta",sectionDescription:"Administra tus preferencias y configuración personal de cuenta.",heading:"Cuenta",email:{label:"Correo electrónico",placeholder:"Sin correo electrónico"},fullName:{label:"Nombre completo",placeholder:"Ingresa tu nombre completo",profileHint:"Asà aparecerás en tu <profileLink>perfil</profileLink> público de Base44."},phoneNumber:{label:"Número de teléfono",placeholder:"Ingresa tu número de teléfono",smsConsent:"Al ingresar tu número de teléfono, aceptas recibir notificaciones SMS de nuestra parte."},defaultAgents:{label:"Agentes predeterminados",toggleLabel:"Habilitar agentes para nuevas apps por defecto",description:"Cuando está habilitado, las nuevas apps tendrán agentes activados automáticamente, permitiéndoles ejecutar tareas autónomas y usar herramientas."},defaultTestData:{label:"Datos de prueba predeterminados",toggleLabel:"Habilitar datos de prueba para nuevas apps por defecto",description:"Cuando está habilitado, las nuevas apps inician con datos de prueba activados para que puedas probar cambios de forma segura sin afectar los datos en vivo.",upgradeRequired:"Esta función requiere el plan Builder o superior.",seePlans:"Ver planes"},apiKey:{label:"Clave API",copyTitle:"Copiar clave API",copied:"¡Copiado!",regenerate:"Regenerar",regenerating:"Regenerando...",regenShort:"Regen.",regenShortLoading:"Regen...",description:"Tu clave API proporciona acceso a tu espacio de trabajo. No la compartas con otros.",notGenerated:"Aún no generada — haz clic en Regenerar"},backofficeApiKey:{title:"Clave API del Backoffice",description:"Usa esta clave para autenticar peticiones programáticas al servicio de backoffice. No funciona en el servicio de plataforma. Mantenla en secreto.",yourKey:"Tu clave API del backoffice",copySuccess:"Clave API copiada",copyError:"Error al copiar la clave API",regenSuccess:"Clave API del backoffice regenerada",regenError:"Error al regenerar: {{error}}",warning:"Regenerar invalida la clave anterior inmediatamente. Los clientes que la usen deberán actualizarse.",existsPlaceholder:"•••••••••••••••••• (clave existe — solo se almacena el hash; regenera para ver una nueva)",showOnceWarning:"Copia esta clave ahora. Se muestra solo una vez y no puede recuperarse después."},unsavedChanges:"Cambios sin guardar",discard:"Descartar",save:"Guardar",saving:"Guardando...",saveSuccess:"¡Configuración de cuenta actualizada correctamente!",saveError:"No se pudo actualizar la configuración de cuenta: {{error}}",unknownError:"Error desconocido",apiKeyCopySuccess:"¡Clave API copiada al portapapeles!",apiKeyCopyError:"No se pudo copiar la clave API",apiKeyRegenSuccess:"¡Clave API regenerada correctamente!",apiKeyRegenError:"No se pudo regenerar la clave API: {{error}}"},lj={title:"Autenticación de dos factores",description:"Agrega una capa extra de protección al iniciar sesión. Se te pedirá un código cada vez que inicies sesión.",twoFactorEnabled:"La autenticación de dos factores está habilitada.",statsLine:"{{used}}/{{total}} códigos de recuperación usados · {{devices}} dispositivos de confianza",totp:{name:"Aplicación de autenticación",description:"Usa una aplicación como Google Authenticator o Duo para generar códigos de inicio de sesión seguros.",setupTitle:"Configura tu aplicación de autenticación",scanQr:"Escanea el código QR con tu aplicación de autenticación",cantScan:"¿No puedes escanear el código? Ingrésalo manualmente:",enterCodeTitle:"Ingresa un código de tu aplicación de autenticación",enterDigitCode:"Ingresa el código de 6 dÃgitos",codesRefresh:"Los códigos se actualizan cada 30 segundos.",qrCodeAlt:"Código QR para configurar la aplicación de autenticación",enabled:"Aplicación de autenticación habilitada",disabled:"Aplicación de autenticación deshabilitada"},sms:{name:"Mensajes de texto",description:"Recibe códigos de inicio de sesión enviados a tu teléfono por mensaje de texto.",enterPhone:"Ingresa tu número de teléfono",phoneLabel:"Número de teléfono",phonePlaceholder:"(555) 000-0000",verificationWillBeSent:"Se enviará un código de verificación a este número para confirmar que es tuyo.",verifyPhone:"Verificar tu número de teléfono",codeSentTo:"Se envió un código de 6 dÃgitos a {{phone}}",standardRates:"Pueden aplicarse tarifas estándar de mensajes y datos.",invalidPhone:"Número de teléfono inválido. Verifica el número e intenta de nuevo.",enabled:"MFA por mensaje de texto habilitado",disabled:"Mensajes de texto deshabilitados"},recovery:{saveTitle:"Guarda tus códigos de recuperación",saveDescription:"Guarda estos códigos de recuperación en un lugar seguro. Los necesitarás si pierdes acceso a tu teléfono o aplicación de autenticación.",eachCodeOnce:"Cada código de recuperación solo se puede usar una vez. Guárdalos en un lugar seguro y accesible.",eachCodeOnceShort:"Cada código de recuperación solo se puede usar una vez.",copyAll:"Copiar todo",download:"Descargar",copied:"Copiado",enterRecoveryCode:"Ingresa el código de recuperación"},disable:{title:"Deshabilitar autenticación de dos factores",turnOff:"¿Desactivar la autenticación de dos factores?",turnOffDescription:"Para continuar, necesitarás verificar con un código enviado a tu teléfono o un código de recuperación.",verifyWithPhone:"Verificar con un código enviado a tu teléfono",verifyWithApp:"Ingresa un código de tu aplicación de autenticación",enterRecoveryToDisable:"Ingresa uno de tus códigos de recuperación para deshabilitar la autenticación de dos factores.",useRecoveryCode:"Usar código de recuperación",verifyViaApp:"Verificar vÃa App",verifyAndDisable:"Verificar y deshabilitar"},regenerate:{title:"Regenerar códigos de recuperación",trustedDevicesCount_one:"{{count}} dispositivo de confianza",trustedDevicesCount_other:"{{count}} dispositivos de confianza",codesUsed:"{{used}}/{{total}} códigos de recuperación usados",descriptionChoose:"Elige un método de verificación para regenerar tus códigos de recuperación. Esto invalidará todos los códigos existentes.",descriptionSms:"Enviaremos un código de verificación a tu teléfono para confirmar.",descriptionSmsVerify:"Ingresa un código de verificación para regenerar tus códigos de recuperación. Esto invalidará todos los códigos existentes.",descriptionTotpVerify:"Ingresa un código de verificación para regenerar tus códigos de recuperación. Esto invalidará todos los códigos existentes.",verifyWithApp:"Ingresa un código de tu aplicación de autenticación",verifyWithSms:"Verificar con un código enviado a tu teléfono",smsMethodLabel:"Mensaje SMS",enterCodeLabel:"Ingresa el código de 6 dÃgitos",helperTotp:"Abre tu aplicación de autenticación para obtener el código",helperSms:"Ingresa el código enviado a tu teléfono",verifyAndRegenerate:"Verificar y regenerar",enterCode:"Ingresar código"},reauth:{title:"Verifica tu identidad",description:"Por seguridad, verifica tu identidad antes de agregar {{method}} como método de inicio de sesión.",actionTotp:"Ingresa el código de 6 dÃgitos de tu aplicación de autenticación.",actionSms:"Ingresa el código enviado a {{phone}}."},common:{enable:"Habilitar",enabled:"Habilitado",cancel:"Cancelar",close:"Cerrar",back:"Atrás",done:"Listo",verify:"Verificar",sendCode:"Enviar código",regenerate:"Regenerar",regenerateRecoveryCodes:"Regenerar códigos de recuperación",disable:"Deshabilitar",continue:"Continuar",fullCodeError:"Ingresa el código completo de 6 dÃgitos",fullRecoveryError:"Ingresa el código de recuperación completo",enterVerificationCode:"Ingresa un código de verificación",didntReceive:"¿No recibiste un código?",resendIn:"Reenviar en {{seconds}}s",resend:"Reenviar",verificationSent:"Código de verificación enviado",failedToSetup:"Error al configurar la aplicación de autenticación",failedToSendCode:"Error al enviar el código",failedToResend:"Error al reenviar",invalidCode:"Código inválido",lockedOut:"Demasiados intentos fallidos. Inténtalo de nuevo en {{minutes}} min.",lockedOutShort:"Bloqueado temporalmente ({{minutes}} min)"}},cj={section:{title:"Eliminar cuenta",description:"Elimina tu cuenta junto con todos los datos, configuraciones y actividad asociados.",accessNote:"Tendrás acceso a tu cuenta durante 1 semana después de solicitar la eliminación.",deleteButton:"Eliminar cuenta",enterpriseTooltip:"La eliminación de cuenta no está disponible para usuarios empresariales. ComunÃcate con el administrador de tu organización."},pendingRequest:{willBeDeleted:"Tu cuenta, suscripción, apps propias y espacios de trabajo se eliminarán en <bold>{{daysRemaining}} dÃas</bold> ({{formattedEnd}}) y la eliminación será permanente a partir de esa fecha. Hasta entonces puedes cancelar la eliminación.",processing:"La eliminación está siendo procesada...",cancelButton:"Cancelar solicitud",renewalWarning:"Si tu suscripción está programada para renovarse durante estos {{daysRemaining}} dÃas, la renovación ocurrirá de todos modos a menos que canceles la suscripción manualmente antes de la fecha de renovación"},toast:{submitSuccess:"Solicitud de eliminación enviada. La revisaremos y procesaremos después del perÃodo de gracia de 7 dÃas.",submitError:"No se pudo enviar la solicitud de eliminación. Por favor, inténtalo de nuevo.",cancelSuccess:"Solicitud de eliminación cancelada exitosamente.",cancelError:"No se pudo cancelar la solicitud. Por favor, inténtalo de nuevo.",preflightError:"No se pudo verificar el estado de la cuenta. Por favor, inténtalo de nuevo."},dialog:{title:"Eliminar tu cuenta",description:"Esto programará tu cuenta y todos los datos asociados para su eliminación permanente.",whatWillBeDeleted:"Qué se eliminará:",itemAccountProfile:"Tu cuenta y perfil",itemAllApps:"Todas las apps que has creado",itemAllData:"Todos los datos almacenados en tus apps",itemUploadedFiles:"Archivos y medios subidos",gracePeriodNote:"Tendrás 7 dÃas para cancelar esta solicitud. Después de eso, nuestro equipo revisará y procesará tu eliminación en breve.",subscriptionNote:"La cancelación de la suscripción es definitiva y sin reembolsos",cancelButton:"Cancelar",deleteButton:"Eliminar cuenta"},subscriptions:{dialogTitle:"Cancela las suscripciones antes de eliminar tu cuenta",warning:"Aún tienes suscripciones activas. Por favor, cancélalas primero.",listLabel:"Suscripciones activas:",personalPlan:"Plan personal",planAndBilling:"Plan y facturación",yearly:"anual",monthly:"mensual",cancelFirst:"Cancela todas las suscripciones anteriores, luego vuelve aquà para eliminar tu cuenta.",closeButton:"Cerrar",manageButton:"Gestionar suscripciones"},workspaceOwner:{titleStep1:"Eres propietario de espacios de trabajo",titleStep2:"Confirmar eliminación del espacio de trabajo",memberCount_one:"{{count}} miembro",memberCount_other:"{{count}} miembros",warningOwner_one:"Actualmente eres propietario del siguiente espacio de trabajo. Si continúas, todas las apps en este espacio de trabajo se eliminarán permanentemente y todos los miembros perderán el acceso.",warningOwner_other:"Actualmente eres propietario de los siguientes espacios de trabajo. Si continúas, todas las apps en estos espacios de trabajo se eliminarán permanentemente y todos los miembros perderán el acceso.",leaveWorkspaces_one:"También abandonarás este espacio de trabajo y perderás el acceso:",leaveWorkspaces_other:"También abandonarás estos espacios de trabajo y perderás el acceso:",confirmInstructions:"Escribe el nombre de cada espacio de trabajo a continuación para confirmar la eliminación. Esta acción es irreversible.",typeToConfirm:'Escribe <bold>"{{name}}"</bold> para confirmar',deleteAnyway:"Eliminar de todos modos",deleteAccount:"Eliminar cuenta",cancel:"Cancelar"},memberInfo:{title_one:"Abandonarás este espacio de trabajo",title_other:"Abandonarás estos espacios de trabajo",description_one:"Al eliminar tu cuenta, serás eliminado del siguiente espacio de trabajo. Perderás el acceso a todas las apps y datos del espacio de trabajo.",description_other:"Al eliminar tu cuenta, serás eliminado de los siguientes espacios de trabajo. Perderás el acceso a todas las apps y datos de los espacios de trabajo.",cancel:"Cancelar",continueWithDeletion:"Continuar con la eliminación"}},dj={title:"Cuenta de GitHub",addAccount:"Agrega tu cuenta de GitHub",unlockWithBuilder:"Desbloquea esta función con el plan Builder.",loading:"Cargando...",connecting:"Conectando...",reconnect:"Volver a conectar",connectionLost:"Se perdió la conexión a GitHub. Vuelve a conectar tu cuenta de GitHub para continuar.",connected:"Conectado",connectedDescription:"Tu cuenta de GitHub está conectada",disconnect:"Desconectar",tryAgain:"Intentar de nuevo",connectGitHub:"Conectar GitHub",disconnectDialog:{title:"¿Desconectar de GitHub?",accountDescription:"Desconectar tu cuenta de GitHub no afectará ninguna app conectada.<br/>Solo necesitarás volver a conectar tu cuenta si quieres conectar o reconectar un repositorio.",repoDescription:"Esto desconectará la app del repositorio {{repoName}}.",repoDescriptionNoName:"Esto desconectará la app del repositorio de GitHub.",repoDetail1:"Tu repositorio de GitHub permanecerá sin cambios — no se eliminará ni se quitará.",repoDetail2:"Puedes continuar trabajando en tu app como antes, pero GitHub ya no será la fuente de verdad para tu código y la sincronización bidireccional quedará deshabilitada.",disconnectingProgress:"Desconectando… Esto puede tardar unos minutos.",cancel:"Cancelar",disconnect:"Desconectar",disconnecting:"Desconectando…"}},uj={title:"Google Drive",connected:"Conectado",connectedDescription:"Tu Google Drive está conectado",disconnectedDescription:"Conecta tu Google Drive para importar archivos",connect:"Conectar",connecting:"Conectando...",disconnect:"Desconectar",disconnecting:"Desconectando...",loading:"Cargando...",connectTitle:"Conectar con Google Drive",connectDescription:"Otorga acceso para usar archivos de Google Drive como contexto del chat de IA.",benefitImport:"Importa Documentos, Hojas de cálculo y Presentaciones desde tu Google Drive",benefitChoose:"Elige qué archivos usar cada vez",benefitSecure:"El contenido seleccionado se almacena de forma segura para usar en tu aplicación",connectButton:"Conectar Google Drive",cancel:"Cancelar",privacyNote:"Solo se accede a los archivos que selecciones.",disconnectAnytime:"Puedes desconectar en cualquier momento desde la configuración de la cuenta."},pj={title:"Configuración del chat",sendMessageShortcut:"Atajo para enviar mensajes",insertNewLineShortcut:"Atajo para nueva lÃnea",soundPreferences:"Preferencias de sonido",browserNotifications:"Notificaciones del navegador",notificationsHelpText:"¿Notificaciones habilitadas pero no las recibes? <docLink>Consulta la documentación</docLink>",notificationOptions:{onFirstPromptOnly:"Solo en el primer prompt",onEveryPromptCompletion:"En cada finalización de prompt",disableNotificationSounds:"Deshabilitar sonidos de notificación",disableBrowserNotifications:"Deshabilitar notificaciones del navegador"}},mj={account:sj,mfa:lj,deleteAccount:cj,github:dj,googleDrive:uj,chatSettings:pj},gj={title:"Solicitar acceso a {{appName}}",subtitleDefault:"Solicite acceso o cambie a una cuenta que ya tenga permiso.",subtitleRequested:"Recibirás un correo cuando tu solicitud sea aprobada.",requestAccess:"Solicitar acceso",requestSubmitted:"Solicitud enviada",loggedInAs:"Has iniciado sesión como {{email}}",switchAccount:"Cambiar cuenta",errorMessage:"Algo salió mal. Inténtalo de nuevo o cambia a una cuenta diferente.",tooManyAttempts:"Demasiados intentos. Inténtalo de nuevo más tarde.",backToLogin:"Volver al inicio de sesión"},hj={title:"Acceso restringido",subtitle:"Debes ser miembro de este espacio de trabajo para acceder a la aplicación."},fj={accessRequired:gj,workspaceRestricted:hj},vj={title:"Bienvenido a Base44",loginWithGoogle:"Iniciar sesión con Google",loginWithGithub:"Iniciar sesión con GitHub",loggingIn:"Iniciando sesión...",or:"O",emailLabel:"Correo electrónico",emailPlaceholder:"Ingresa tu correo electrónico",edit:"Editar",lastUsed:"Último usado",ssoEnabled:"SSO está habilitado para <strong>{{workspace}}</strong>",ssoClickBelow:"Haz clic abajo para continuar con el inicio de sesión de tu organización",passwordLabel:"Contraseña",forgotPassword:"¿Olvidaste tu contraseña?",passwordPlaceholder:"Ingresa tu contraseña",checkingAuth:"Verificando método de autenticación...",checking:"Verificando...",continue:"Continuar",continueWithSSO:"Continuar con {{provider}}",logIn:"Iniciar sesión",noAccount:"¿No tienes una cuenta?",signUp:"Registrarse",verifyEmailFirst:"Por favor, verifica tu correo electrónico antes de iniciar sesión. Revisa tu correo para el código de verificación.",resendVerificationCode:"Reenviar código de verificación",enterEmailFirst:"Por favor, ingresa tu correo electrónico primero",invalidEmail:"Por favor, ingresa un correo electrónico válido",ssoError:"Error de configuración SSO. Por favor, intenta de nuevo.",invalidCredentials:"Correo electrónico o contraseña inválidos",loginFailed:"Error al iniciar sesión. Por favor, intenta de nuevo.",failedResendVerification:"Error al reenviar el código de verificación. Por favor, intenta de nuevo.",passwordResetRequired:"Por razones de seguridad, debes restablecer tu contraseña antes de iniciar sesión. Revisa tu correo para un enlace de restablecimiento.",resetLinkSent:"Se ha enviado un enlace para restablecer la contraseña a tu correo electrónico.",resendResetLink:"Reenviar enlace de restablecimiento",failedResendResetLink:"No se pudo enviar el enlace de restablecimiento. Inténtalo de nuevo.",termsAndPrivacy:"<terms>Términos de servicio</terms> y <privacy>PolÃtica de privacidad</privacy>."},bj={title:"Crea tu cuenta",agreeToTerms:'Al hacer clic en "Registrarse", aceptas nuestros <terms>Términos de servicio</terms> y <privacy>PolÃtica de privacidad</privacy>.',signUpWithGoogle:"Registrarse con Google",signUpWithGithub:"Registrarse con GitHub",signingUp:"Registrando...",creatingAccount:"Creando cuenta...",signUpButton:"Registrarse",alreadyHaveAccount:"¿Ya tienes una cuenta de Base44?",logIn:"Iniciar sesión",validatingReferral:"Validando código de referido...",invalidReferral:"Código de referido inválido",youveBeenInvited:"¡Has sido invitado!",invitedToJoin:"<strong>{{name}}</strong> te invitó a unirte a Base44",signUpFreeCredits:"¡RegÃstrate y obtén 10 créditos gratis!",signUpBaseDayCredits:"¡RegÃstrate y obtén 44 créditos gratis!",letsBuild:"¡Construyamos algo increÃble juntos!",registrationFailed:"Error en el registro. Por favor, intenta de nuevo.",failedValidateReferral:"Error al validar el código de referido",completeVerification:"Por favor completa la verificación",weakPassword:"Contraseña débil"},yj={title:"Restablece tu contraseña",subtitle:"Ingresa el correo electrónico con el que te registraste y te enviaremos un enlace para restablecer tu contraseña.",backToLogin:"Volver al inicio de sesión",loginEmail:"Correo de inicio de sesión",emailPlaceholder:"ej., nombre@email.com",sending:"Enviando...",verifyEmail:"Verificar correo",invalidEmail:"Correo electrónico inválido",failedSendReset:"Error al enviar el enlace de restablecimiento. Por favor, intenta de nuevo."},kj={title:"Revisa tu correo",subtitle:"Hemos enviado instrucciones para restablecer tu contraseña a <strong>{{email}}</strong>.",backToReset:"Volver a restablecer contraseña",checkInfo:"Por favor, revisa tu correo para el enlace de restablecimiento de contraseña.",mayTakeMinutes:"Puede tardar unos minutos en llegar.",goToSignIn:"Ir a iniciar sesión",didntGetEmail:"¿No recibiste el correo?",resending:"Reenviando...",resendEmail:"Reenviar correo",emailNotFound:"Correo electrónico no encontrado. Por favor, regresa e intenta de nuevo.",newResetSent:"Nuevo correo de restablecimiento enviado. Por favor, revisa tu bandeja de entrada.",failedResendEmail:"Error al reenviar el correo. Por favor, intenta de nuevo."},wj={title:"Establecer nueva contraseña",subtitle:"Ingresa tu nueva contraseña para Base44",newPasswordLabel:"Nueva contraseña",newPasswordPlaceholder:"Ingresa tu nueva contraseña",confirmPasswordLabel:"Confirmar nueva contraseña",confirmPasswordPlaceholder:"Confirma tu nueva contraseña",resetting:"Restableciendo...",resetButton:"Restablecer contraseña",backToLogIn:"Volver al inicio de sesión",invalidToken:"Token de restablecimiento inválido o faltante. Por favor, solicita un nuevo restablecimiento de contraseña.",passwordsMismatch:"Las contraseñas no coinciden. Por favor, intenta de nuevo.",weakPassword:"Por favor, crea al menos una contraseña de fortaleza media.",resetSuccess:"¡Contraseña restablecida exitosamente! Redirigiendo al inicio de sesión...",resetSuccessLogin:"¡Contraseña restablecida exitosamente! Por favor, inicia sesión con tu nueva contraseña.",failedReset:"Error al restablecer la contraseña. Por favor, intenta de nuevo.",invalidOrExpiredToken:"Token de restablecimiento inválido o expirado"},Aj={verifyTitle:"Verifica tu identidad",verification:{chooseMethod:"Elige un método de autenticación",authenticatorApp:"Aplicación de autenticación",smsMessage:"Mensaje SMS",recoveryCode:"Código de recuperación",continue:"Continuar",backToLogin:"Volver al inicio de sesión",chooseAnotherMethod:"Elegir otro método",verifyViaText:"Verificar por mensaje de texto",verifyViaApp:"Verificar por aplicación de autenticación",enterRecoveryCode:"Ingresa el código de recuperación",rememberDevice:"Recordar este dispositivo por 30 dÃas",verifying:"Verificando...",verify:"Verificar",useRecoveryCode:"Usar código de recuperación",sendingCodeTo:"Enviando código a {{phone}}…",enterCodeSentTo:"Ingresa el código enviado a {{phone}}",enterCodeFromApp:"Ingresa el código de tu aplicación de autenticación",yourPhone:"tu teléfono",didntReceiveCode:"¿No recibiste el código?",resendIn:"Reenviar en {{seconds}}s",resend:"Reenviar",enterCompleteRecoveryCode:"Por favor, ingresa el código de recuperación completo",enterCompleteCode:"Por favor, ingresa el código completo de 6 dÃgitos",verificationFailed:"La verificación falló. Por favor, intenta de nuevo.",failedSendCode:"Error al enviar el código. Por favor, intenta reenviar."}},Sj={buildingApp:"Construyendo tu app",verifyEmailSubtitle:"Verifica tu correo para continuar",signUpSubtitle:"RegÃstrate para verla cobrar vida",loginSubtitle:"Inicia sesión para verla cobrar vida"},Cj={completeVerification:"Por favor completa la verificación de seguridad"},Dj={title:"Verifica tu correo",subtitle:"Enviamos un código de verificación a {{email}}",verificationCode:"Código de verificación",fillAllFields:"Por favor, completa todos los campos.",enterCodeSent:"Ingresa el código de verificación enviado a tu correo",verifying:"Verificando...",verifyEmail:"Verificar correo",wrongEmail:"¿Correo incorrecto? Cámbialo",didntReceiveCode:"¿No recibiste el código?",resendEmail:"Reenviar correo",emailVerifiedLogin:"¡Correo verificado exitosamente! Ya puedes iniciar sesión.",emailVerifiedContinue:"¡Correo verificado exitosamente! Por favor, inicia sesión para continuar.",invalidCode:"Código de verificación inválido. Por favor, intenta de nuevo.",verificationFailed:"La verificación falló. Por favor, intenta de nuevo.",newCodeSent:"Nuevo código de verificación enviado a tu correo.",failedResendCode:"Error al reenviar el código de verificación. Por favor, intenta de nuevo."},Tj={login:vj,register:bj,forgotPassword:yj,checkEmail:kj,resetPassword:wj,mfa:Aj,authModal:Sj,turnstile:Cj,otp:Dj},Ej={notFound:"Perfil no encontrado",notFoundDescription:"El perfil de builder @{{username}} no existe."},Pj={edit:"Editar",done:"Listo",cancel:"Cancelar",appCount_one:"{{count}} App",appCount_other:"{{count}} Apps",joined:"Se unió en {{date}}",namePlaceholder:"Tu nombre",displayNameLabel:"Nombre visible",usernameLabel:"Nombre de usuario",changeUsername:"Cambiar nombre de usuario",saveChanges:"Guardar cambios",partnerBadge:"Base44 Partner"},_j={label:"Bio",placeholder:"Escribe una breve biografÃa sobre ti...",emptyPlaceholder:"Cuéntales a los visitantes sobre ti — agrega una breve biografÃa.",hint:"Máx. 220 caracteres",maxChars:"Máx. {{max}} caracteres"},xj={viewTitle:"Apps",appsHeader:"Apps ({{count}})",appsHeaderEmpty:"Apps",featuredCounter_one:"{{count}} destacada",featuredCounter_other:"{{count}} destacadas",editHint:"Selecciona qué apps aparecen en tu perfil público.",noPublishedApps:"No se encontraron apps publicadas. ¡Publica una app primero!",noPublishedAppsTitle:"Sin apps publicadas",noPublishedAppsDescription:"Aún no has publicado ninguna app. Ve a tu espacio de trabajo para finalizar un borrador y publicarlo para mostrarlo en tu perfil.",viewMyApps:"Ver mis apps",untitled:"Sin tÃtulo",updated:"¡Apps fijadas actualizadas!",updateFailed:"No se pudieron actualizar las apps fijadas",manageApps:"Administrar apps",chooseTitle:"Elegir apps para mostrar",chooseDescription:"Selecciona hasta {{max}} apps publicadas para mostrar en tu perfil público",selectAll:"Seleccionar todo",deselectAll:"Deseleccionar todo",saveChanges:"Guardar",searchApps:"Buscar apps...",publicBadge:"Pública",privateBadge:"Privada",showMore:"Mostrar más",showLess:"Mostrar menos",maxReached:"Máximo {{max}} apps permitidas",close:"Cerrar",noSearchResults:"Ninguna app coincide con tu búsqueda",updatedRecently:"actualizado recientemente",selectAllCount:"Seleccionar todo ({{count}})",deselectAllCount:"Deseleccionar todo ({{count}})"},Ij={editTooltip:"Editar enlaces sociales",addLinks:"Agregar enlaces sociales",addLink:"Agregar enlace",cancelTooltip:"Cancelar",removeTooltip:"Eliminar",label:"Redes sociales",hint:"Agrega hasta 6 enlaces sociales",linkLabel:"Enlace",addCustomLink:"Agregar enlace personalizado",pastePlaceholder:"Pega la URL aquÃ",enterUsernameOrUrl:"Ingresa tu nombre de usuario o la URL completa del perfil",movedTo:"Movido a {{platform}}",addedAsCustom:"Agregado como enlace personalizado",fieldOccupied:"Parece un enlace de {{platform}} — ese campo ya tiene una URL",customSlotsFull:"Parece un enlace de {{platform}}. Elimina un enlace personalizado para agregarlo."},Rj={profileUpdated:"¡Perfil actualizado!",profileUpdateFailed:"No se pudo actualizar el perfil",usernameClaimed:"¡Nombre de usuario obtenido!",usernameClaimFailed:"No se pudo obtener el nombre de usuario",loadFailed:"No se pudo cargar el perfil",invalidImageType:"Sube una imagen válida (JPG, PNG, GIF o WebP)",imageTooLarge:"La imagen debe ser menor a 5 MB",avatarUpdated:"¡Imagen de perfil actualizada!",avatarUploadFailed:"No se pudo subir la imagen",avatarRemoveFailed:"No se pudo eliminar la imagen"},zj={title:"¿Descartar cambios?",description:"Tienes cambios sin guardar que se perderán.",confirm:"Descartar"},Mj={title:"Cambiar nombre de usuario",placeholder:"nombre de usuario",checking:"Verificando...",available:"¡Disponible!",notAvailable:"No disponible",urlWarning:"Tu URL de perfil cambiará a /@{{username}}. Los enlaces anteriores dejarán de funcionar.",cancel:"Cancelar",claim:"Obtener nombre de usuario",tryInstead:"Prueba:"},Nj={locationLabel:"Ubicación",locationPlaceholder:"p. ej. Madrid, España",showEmailLabel:"Mostrar el email de tu cuenta"},Fj={title:"Actualizar imagen de portada",description:"Elige uno de nuestros degradados o sube tu propia imagen",uploadFile:"Subir imagen personalizada",orUseTemplate:"O usa una plantilla",cancel:"Cancelar",saveChanges:"Guardar cambios",updated:"¡Imagen de portada actualizada!",updateFailed:"No se pudo actualizar la imagen de portada",uploadFailed:"No se pudo subir la imagen",dragToReposition:"Arrastra para reposicionar",replaceImage:"Reemplazar imagen",reposition:"Reposicionar"},Lj={title:"Actividad",mon:"Lun",wed:"Mié",fri:"Vie",less:"Menos",more:"Más",messages_one:"{{count}} prompt",messages_other:"{{count}} prompts",founderMode:"Founder mode",noActivity:"Sin actividad",onDate:"el {{date}}",showOnProfile:"Mostrar en el perfil"},jj={customize:"Personaliza tu perfil",title:"Aún no hay apps públicas",description:"Tu perfil es el mejor lugar para compartir tu trabajo con la comunidad de Base44. Selecciona de tus apps publicadas para mostrarlas aquÃ, o comienza un nuevo proyecto para aumentar tu actividad.",anonDescription:"Este builder aún no ha hecho públicas ninguna de sus apps. Vuelve más tarde para ver su actividad más reciente, o explora lo que otros creadores están construyendo.",startCreating:"Empezar a crear",chooseFromApps:"Elegir de mis apps"},Oj={page:Ej,header:Pj,bio:_j,pinnedApps:xj,social:Ij,toast:Rj,discardDialog:zj,usernameDialog:Mj,details:Nj,coverImage:Fj,activity:Lj,emptyState:jj},Bj=JSON.parse(`{"title":"Agentes IA","beta":"Beta","subtitle":"Crea agentes IA en tu app usando la infraestructura de agentes IA de Base44","disabled":"Deshabilitado","setupAgents":"Configurar agentes","enableAgents":"Habilitar agentes","turnOnToggle":"Activa el interruptor para permitir la creación de agentes","addFirstAgent":"Agrega tu primer Agente","creditsUsed":"{{credits}} créditos utilizados","creditsUsedTooltip":"Créditos de integración mensuales utilizados","askChatToCreate":"PÃdele al chat que cree un agente para ti. Describe qué rol debe tener el agente y qué tareas debe realizar.","defineInConfig":"Define tus agentes en archivos de configuración locales y sincronÃzalos con tu app usando el CLI de Base44.","viewDocumentation":"Ver documentación","noAgentsYet":"Aún No Hay Agentes","promptChatToCreate":"PÃdele al chat que cree tu primer agente IA","agentsTab":"Agentes","conversationsTab":"Conversaciones","searchConversations":"Buscar conversaciones...","filterAll":"Todos","filterMine":"MÃos","filterUsers":"Usuarios","noConversationsYet":"Aún no hay conversaciones","noConversationsMatchSearch":"No hay conversaciones que coincidan con tu búsqueda","tryDifferentSearch":"Intenta con un término de búsqueda diferente","goToAgentsTab":"Ve a la pestaña de Agentes para iniciar una conversación","conversationStarted":"Conversación iniciada","agentConfiguration":"Configuración del Agente","guidelines":"Directrices","tools":"Herramientas","whatsapp":"WhatsApp","toolsAndCapabilities":"Herramientas y Capacidades","descriptionLabel":"Descripción","systemPromptDesc":"Este es el prompt del sistema que define el comportamiento del agente","briefDescription":"Breve descripción de lo que hace este agente...","instructions":"Instrucciones","instructionsDesc":"Directrices y reglas especÃficas que el agente debe seguir","detailedInstructions":"Instrucciones detalladas para el agente...","availableTools":"Herramientas Disponibles","configureTools":"Configura qué herramientas y datos puede acceder este agente","add":"Agregar","allEntitySlotsUsed":"Todos los Espacios de Entidad Usados","addEntityTool":"Agregar Herramienta de Entidad","entityToolDesc":"Operaciones de base de datos y acceso CRUD","allFunctionSlotsUsed":"Todos los Espacios de Función Usados","addBackendFunction":"Agregar Función Backend","backendFunctionDesc":"Lógica backend personalizada e integraciones","noToolsConfigured":"No hay herramientas configuradas","addToolsDesc":"Agrega herramientas de entidad o funciones backend para darle capacidades al agente","entityTool":"Herramienta de Entidad","selectEntity":"Seleccionar entidad","allowedOperations":"Operaciones permitidas","deleteWarning":"Cuidado, los datos eliminados por el agente no se pueden restaurar","backendFunction":"Función Backend","selectBackendFunction":"Seleccionar función backend","functionDescription":"Descripción de la Función","describeFunction":"Describe cuándo y cómo debe usarse esta función...","whatsappIntegration":"Integración con WhatsApp","whatsappDesc":"Conecta tu agente a WhatsApp para una comunicación fluida","testChat":"Chat de Prueba","addWhatsapp":"Agrega WhatsApp a Tu App","whatsappEnableDesc":"Habilita el acceso a WhatsApp para tus usuarios con un solo comando","addWhatsappButton":"Agrega un botón de WhatsApp para el {{agent}}","sendToChat":"Enviar al Chat","fullChatCapabilities":"Capacidades Completas de Chat","fullChatDesc":"Todas las funciones del chat web funcionan perfectamente en WhatsApp, incluyendo herramientas y acceso a datos","voiceMediaSupport":"Soporte de Voz y Multimedia","voiceMediaDesc":"Los usuarios pueden enviar notas de voz e imágenes para una interacción natural","customNumbers":"Números Personalizados","customNumbersDesc":"Conecta tus propios números de WhatsApp Business","easyUiIntegration":"Integración de UI Sencilla","easyUiDesc":"Agrega un botón de WhatsApp a tu app con un simple comando de chat","welcomeMessage":"Mensaje de Bienvenida","welcomeMessageDesc":"Crea un saludo cálido que presente a tu agente y establezca expectativas","charCount":"{{count}}/500","editAgent":"Editar Agente","edit":"Editar","startChat":"Iniciar Chat","chat":"Chat","functionCount":"{{count}} función(es)","noDescriptionProvided":"No se proporcionó descripción","entities":"Entidades:","activeConversation":"Conversación activa","readOnlyConversation":"Conversación de solo lectura","startConversation":"Inicia tu conversación","typeMessageBelow":"Escribe un mensaje abajo para comenzar","typeYourMessage":"Escribe tu mensaje...","cancel":"Cancelar","saving":"Guardando...","save":"Guardar","commandAddedToChat":"Comando agregado al chat. Presiona Enter para enviar.","failedToSaveAgentConfiguration":"Error al guardar la configuración del agente","promptAddedToChat":"Prompt agregado al chat","unableToLoadSuggestions":"No se pudieron cargar las sugerencias. Inténtalo más tarde.","createAgent":"Crear agente","createAgentTitle":"Crear un agente","createAgentDescription":"Pide al chat que cree un agente para ti. Describe qué rol debe tener el agente y qué tareas debe realizar.","manageAgentsAndConversations":"Gestionar agentes y conversaciones","skills":"Habilidades","skillsEnabledLimit":"Puedes habilitar hasta {{count}} habilidades por agente.","appSkillsTitle":"Habilidades de Aplicación","appSkillsDescription":"Habilidades de instrucción reutilizables para agentes en esta aplicación.","addSkill":"Añadir Habilidad","noAppSkillsYet":"Aún no hay habilidades de aplicación. Crea una para reutilizarla entre agentes en esta aplicación.","workspaceSkillsTitle":"Habilidades de Espacio de Trabajo","workspaceSkillsDescription":"Habilidades compartidas de este espacio de trabajo. ActÃvalas para habilitarlas en este agente.","loadingWorkspaceSkills":"Cargando habilidades de espacio de trabajo...","noWorkspaceSkillsAvailable":"No hay habilidades compartidas de espacio de trabajo disponibles actualmente.","manageWorkspaceSkills":"Gestionar habilidades de espacio de trabajo","workspaceSkillSource":"espacio de trabajo","appSkillSource":"aplicación","unavailable":"no disponible","addAppSkill":"Añadir Habilidad de Aplicación","editAppSkill":"Editar {{name}}","skillName":"Nombre de habilidad","skillNameHint":"Usa letras minúsculas, números y guiones.","skillNameInvalid":"El nombre debe ser alfanumérico en minúsculas con guiones, sin guiones al inicio/final (ej. 'code-review', 'sql-expert').","skillDescription":"Descripción","skillInstructions":"Instrucciones","enableForCurrentAgent":"Habilitar para el agente actual","enableForCurrentAgentDescription":"Esto cambia el estado actual del editor y se guarda con el agente.","createSkill":"Crear Habilidad","saveChanges":"Guardar Cambios","workspaceSkillUnavailableDescription":"Esta habilidad de espacio de trabajo ya no está habilitada o disponible.","appSkillUnavailableDescription":"Esta habilidad de aplicación ya no existe en la biblioteca de habilidades de la aplicación.","skillValidationRequired":"Se requiere nombre, descripción e instrucciones","skillCreated":"Habilidad creada","skillUpdated":"Habilidad actualizada","failedToSaveSkill":"Error al guardar la habilidad","skillSavedButAssignmentsFailed":"La habilidad se guardó, pero no se pudo adjuntar al agente","skillSavedButAssignmentsRefreshDelayed":"El editor no pudo actualizarse automáticamente. Recarga para verificar el estado más reciente.","skillSavedButSyncFailed":"La habilidad se guardó, pero falló la sincronización del estado del agente","skillSavedButSyncRefreshDelayed":"La habilidad se guardó, pero el editor no pudo actualizarse automáticamente. Recarga para verificar el estado más reciente.","skillSavedStateRefreshed":"La habilidad se guardó. El editor se actualizó para coincidir con el estado guardado más reciente.","skillSavedRefreshDelayed":"La habilidad se guardó, pero el editor no pudo actualizarse automáticamente. Recarga para verificar el estado más reciente.","skillDeleted":"Habilidad eliminada","skillDeletedRefreshDelayed":"La habilidad se eliminó, pero el editor no pudo actualizarse automáticamente. Recarga para verificar el estado más reciente.","failedToDeleteSkill":"Error al eliminar la habilidad","skillLimitReached":"Este agente ya tiene el número máximo de habilidades habilitadas.","skillTemplatePickerTitle":"Elige una habilidad inicial","startFromScratch":"Empezar desde cero","startFromScratchDescription":"Crea una habilidad personalizada con tus propias instrucciones.","useTemplate":"Usar plantilla","skillTemplates":{"refundPolicy":{"description":"Plantilla para reglas de reembolso, elegibilidad y qué detalles debe recopilar el agente antes de escalar."},"supportEscalation":{"description":"Plantilla para cuándo pasar a soporte humano y qué resumen debe preparar el agente."},"pricingAndPlans":{"description":"Plantilla para explicar planes, ciclos de facturación, mejoras y cuándo derivar solicitudes enterprise."},"brandVoice":{"description":"Plantilla para tono, estilo de escritura y reglas de comunicación para que el agente suene acorde a la marca."}},"memory":"Memoria","memoryTitle":"Memoria del agente","memorySubtitle":"Habilita la memoria a largo plazo para que tu agente recuerde información entre conversaciones","enableMemory":"Habilitar memoria","enableMemoryDesc":"Cuando está habilitado, el agente puede guardar y recuperar información entre conversaciones","memoryScope":"Alcance de la memoria","memoryScopeDesc":"Elige qué tipos de recuerdos puede crear el agente","memoryScopeGlobalAndUser":"Global y por usuario","memoryScopeGlobalAndUserDesc":"El agente puede guardar recuerdos compartidos y personales","memoryScopeGlobal":"Solo global","memoryScopeGlobalDesc":"Recuerdos compartidos entre todos los usuarios","memoryScopeUser":"Solo por usuario","memoryScopeUserDesc":"Recuerdos especÃficos para cada usuario","memoryInstructions":"Instrucciones de memoria","memoryInstructionsDesc":"GuÃa al agente sobre cuándo guardar recuerdos y qué incluir","memoryInstructionsPlaceholder":"Ej., Guarda recuerdos globales para actualizaciones de productos, anuncios de la empresa y conocimiento compartido. Guarda recuerdos de usuario para preferencias personales como estilo de comunicación, tono e intereses especÃficos.","savedMemories":"Recuerdos guardados","refresh":"Actualizar","noMemoriesYet":"Aún no hay recuerdos guardados","noMemoriesDesc":"Los recuerdos aparecerán aquà cuando el agente los guarde durante las conversaciones","memoryItemDeleted":"Recuerdo eliminado","memoryDeleteFailed":"Error al eliminar el recuerdo","defaultDescription":"Predeterminado: {{description}}"}`),Uj={writing:"Escribiendo",wrote:"Escrito",reading:"Leyendo",read:"LeÃdo",deleting:"Eliminando",deleted:"Eliminado",editing:"Editando",edited:"Editado",creating:"Creando",created:"Creado",updating:"Actualizando",updated:"Actualizado",update:"Actualizar",delete:"Eliminar",importing:"Importando",imported:"Importado",import:"Importar",searching:"Buscando",searched:"Buscado",searchingForBugs:"Buscando errores...",searchedBugs:"Búsqueda de errores completada",install:"Instalar",installing:"Instalando",installed:"Instalado",analyzing:"Analizando",running:"Ejecutando",failed:"Falló",run:"Ejecutar",settingSecrets:"Configurando secretos",setSecret:"Secreto configurado",setSecrets:"Configurar secretos",testing:"Probando",checking:"Verificando",tested:"Probado",checked:"Verificado",fetching:"Obteniendo",fetched:"Obtenido",waitingForApproval:"Esperando aprobación...",searchedDocsFor:"Documentación buscada para",searchingDocsFor:"Buscando en documentación para",searchedFor:"Buscado",searchingFor:"Buscando",foundResult_one:"{{count}} resultado encontrado",foundResult_other:"{{count}} resultados encontrados",toggling:"Alternando",toggled:"Alternado",listing:"Listando",listed:"Listado",approvalRequired:"Aprobación requerida",approve:"Aprobar",approving:"Aprobando...",reject:"Rechazar",rejected:"rechazado",previousApproval:"Esta solicitud de aprobación es de un mensaje anterior",query:"Consulta:",updateWith:"Actualizar con:",importComplete:"Importación completa",importingData:"Importando datos...",percentComplete:"{{percent}}% completado",recordsProgress:"{{current}} / {{total}} registros",preparing:"Preparando...",otherToolsAfterApproval:"Otras herramientas se ejecutarán después de la aprobación",countPackages:"{{num}} paquetes:",updateAllEntityRecords:"Actualizar todos los registros de <entity>{{entityName}}</entity>",updateEntityRecordsMatching:"Actualizar registros de <entity>{{entityName}}</entity> que coinciden con:",deleteAllEntityRecords:"Eliminar todos los registros de <entity>{{entityName}}</entity>",deleteEntityRecordsMatching:"Eliminar registros de <entity>{{entityName}}</entity> que coinciden con:",importDataFromInto:"Importar datos de <file>{{fileName}}</file> en <entity>{{entityName}}</entity>",importDataFromSheetInto:"Importar datos de <file>{{fileName}}</file> (hoja: <sheet>{{sheetName}}</sheet>) en <entity>{{entityName}}</entity>",countRecordsIntoEntity:"{{num}} registros en <entity>{{entityName}}</entity>",dataIntoEntity:"datos en <entity>{{entityName}}</entity>",countRecordsEntity:"{{num}} registros <entity>{{entityName}}</entity>",allEntityRecords:"todos los registros de <entity>{{entityName}}</entity>",entityRecords:"registros de <entity>{{entityName}}</entity>",grepSearching:'Buscando "{{pattern}}"...',grepSearchComplete:"Búsqueda completada",grepFoundResults_one:"Se encontró {{count}} resultado",grepFoundResults_other:"Se encontraron {{count}} resultados",grepInFiles_one:"en {{count}} archivo",grepInFiles_other:"en {{count}} archivos"},qj={agents:Bj,tools:Uj},Vj={title:"Automatizaciones",subtitle:"Construye y gestiona automatizaciones en tu app.",newAutomation:"Nueva Automatización",chooseAutomation:"Elige una automatización",selectHowStarts:"Selecciona cómo se iniciará esta automatización.",scheduled:"Programada",scheduledDescription:"Ejecuta esta automatización en un horario recurrente o en un momento especÃfico.",dataEvent:"Evento de datos",dataEventDescription:"Ejecuta esta automatización cuando un registro se crea, actualiza o elimina.",connector:"Conector",connectorDescription:"Ejecuta esta automatización cuando una integración conectada envÃa un evento.",connectorBetaTooltip:"Este conector es gratuito durante la beta.",beta:"Beta",connectorNewAutomation:"Nueva automatización de conector",connectorIntegrationType:"Integración",connectorSelectIntegration:"Seleccionar una integración",connectorNoIntegrations:"No hay integraciones conectadas",connectorNoIntegrationsHint:"Para habilitar la automatización, primero necesitas crear una integración.",connectorCreateIntegration:"Crear integración",connectorCreateNewIntegration:"Crear nueva integración",connectorEvents:"Eventos",connectorSelectEvents:"Seleccionar eventos a escuchar",connectorSelectEvent:"Seleccionar un evento",connectorAvailableEvents:"Eventos disponibles ({{count}})",connectorType:"Conector",allEvents:"todos los eventos",deleteAutomation:"¿Eliminar automatización?",deleteAutomationDesc:'Esto eliminará permanentemente "{{name}}" y todo su historial de ejecución. Esta acción no se puede deshacer.',delete:"Eliminar",deleting:"Eliminando...",cancel:"Cancelar",copyOutput:"Copiar resultado",scheduledType:"Programada",dataEventType:"Evento de datos",someRunsFailed:"Algunas ejecuciones fallaron",reviewLogsOrFix:"Revisa los registros o deja que la IA corrija los errores.",fixing:"Corrigiendo...",fixWithAI:"Corregir con IA",failedToGetErrorContext:"Error al obtener el contexto del error",logsTab:"Registros",noLogsYet:"Aún no hay registros",back:"Volver",close:"Cerrar",saving:"Guardando...",save:"Guardar",active:"Activa",archived:"Archivada",archivedAutomations:"Automatizaciones archivadas",nameAndDescription:"Nombre y descripción",typeColumn:"Tipo",lastRun:"Última ejecución",failed:"Fallida",loading:"Cargando...",editAutomation:"Editar automatización",runNow:"Ejecutar ahora",archive:"Archivar",duplicate:"Duplicar",unlockAutomations:"Desbloquear automatizaciones",unlockAutomationsDesc:"Para ejecutar automatizaciones en tu app, necesitas funciones backend habilitadas. Mejora tu plan para habilitar funciones backend y comenzar a usar automatizaciones.",enableBackendFunctions:"Habilita funciones backend para comenzar",enableBackendFunctionsDesc:"Las automatizaciones ejecutan funciones backend según un horario o cuando cambian los datos. Activa las funciones backend en Configuración para usar automatizaciones.",openSettings:"Abrir configuración",createBackendFunction:"Crea una función backend para agregar automatizaciones",createBackendFunctionDesc:"Para crear una automatización, primero necesitas una función backend en tu código. Escribe una función backend en tu código o pÃdele ayuda al chat.",noAutomationsYet:"Aún no hay automatizaciones",noAutomationsDesc:"Crea una automatización para ejecutar tareas automáticamente en tu app.",noArchivedAutomations:"No hay automatizaciones archivadas",noArchivedDesc:"Las automatizaciones que archives o que alcancen su fecha de finalización aparecerán aquÃ.",runAutomation:"Ejecutar Automatización",selectRecord:"Selecciona un registro de <entity>{{entity}}</entity> para ejecutar la automatización.",searchRecords:"Buscar registros de {{entity}}...",noRecordsFound:"No se encontraron registros de {{entity}}.",noRecordsMatch:'Ningún registro coincide con "{{query}}"',recordsCount:"{{filtered}} de {{total}} registros",totalRecords:"{{total}} registros",running:"Ejecutando...",automationName:"Nombre de la automatización",describeAutomation:"Describe qué hace esta automatización.",functionToRun:"Función a ejecutar",selectFunction:"Selecciona una función backend de tu código. La función recibirá los datos de la entidad cuando se active la automatización.",noBackendFunctions:"No hay funciones backend disponibles",selectAFunction:"Seleccionar una función",runsWhen:"Se ejecuta cuando",noItems:"Sin elementos",selectItem:"Seleccionar elemento",is:"Es",selectEvent:"Seleccionar evento",automationNameRequired:"El nombre de la automatización es requerido.",selectEntity:"Por favor, selecciona una entidad.",selectEventType:"Por favor, selecciona al menos un tipo de evento.",selectFunctionRequired:"Por favor, selecciona una función a ejecutar.",newDataAutomation:"Nueva automatización de datos",details:"Detalles",logsWillAppearAfterFire:"Los registros aparecerán aquà después de que se active esta automatización.",selectFunctionFromCode:"Selecciona una función backend de tu código. Para agregar o editar una función, actualÃzala en tu código o pÃdele ayuda al chat.",recurring:"Recurrente",oneTime:"Una Vez",repeatsEvery:"Se repite cada",minute:"Minuto",hour:"Hora",day:"DÃa",week:"Semana",month:"Mes",startAt:"Inicia en",at:"A las",repeatsOn:"Se repite el",repeatsOnDay:"Se repite el dÃa",ends:"Finaliza",never:"Nunca",on:"El",after:"Después de",occurrences:"ocurrencias",runOn:"Ejecutar el",atTime:"A la hora",oneTimeDateRequired:"Los horarios de una sola vez requieren que se especifique una fecha.",oneTimeTimeRequired:"Los horarios de una sola vez requieren que se especifique una hora.",oneTimePastError:"La fecha y hora del horario de una sola vez no pueden estar en el pasado.",minMinutesInterval:"El intervalo mÃnimo para horarios basados en minutos es {{min}} minutos.",selectDayForWeekly:"Por favor, selecciona al menos un dÃa para el horario semanal.",monthlyDayRequired:"Los horarios mensuales requieren que se seleccione un dÃa del mes.",endDateRequired:"La fecha de finalización es requerida cuando 'Finaliza' está configurado como 'El'.",endDatePast:"La fecha de finalización no puede estar en el pasado.",occurrenceCountMin:"El número de ocurrencias debe ser al menos 1.",newScheduledAutomation:"Nueva automatización programada",logsWillAppearAfterRun:"Los registros aparecerán aquà después de que se ejecute esta automatización.",description:"Descripción",nameField:"Nombre",typeField:"Tipo",automationUpdated:"Automatización actualizada correctamente",automationCreated:"Automatización creada correctamente",failedToSave:"Error al guardar la automatización",functionArgs:"Argumentos (JSON)",functionArgsPlaceholder:'{"key": "value"}',functionArgsTooltip:"Objeto JSON opcional que se pasa a la función como argumentos adicionales.",functionArgsInvalidJson:"Los argumentos deben ser JSON válido.",advanced:"Avanzado",triggerConditions:"Condiciones de activación",conditionsSetByAI:"Las condiciones son configuradas por el constructor de IA y no se pueden editar manualmente.",conditionsSummaryError:"No se pudo cargar el resumen de condiciones.",connectorNoManualIntegrations:"No hay integraciones disponibles para creación manual",connectorNoManualIntegrationsHint:"Algunas integraciones requieren condiciones de activación y solo se pueden crear a través del constructor de IA.",suggestedForYou:"Sugerencias para ti",basedOnYourContext:"Basado en el contexto de tu app",createFromScratch:"Crear desde cero"},$j={automations:Vj},Wj={title:"Integraciones",myIntegrations:"Mis integraciones",browse:"Explorar",payments:"Pagos",failedToLoad:"Error al cargar las conexiones de la app",successfullySwitched:"Cuenta cambiada exitosamente a {{name}}",cancelled:"Cancelado",connectionCancelled:"La conexión de la app fue cancelada",disconnected:"{{name}} ha sido desconectado",failedToDisconnect:"Error al desconectar la conexión de la app",stripeRemoved:"La integración de Stripe ha sido eliminada",wixPaymentsDisconnected:"Wix Payments ha sido desconectado",integrationRemoved:"{{name}} ha sido eliminado",failedToRemove:"Error al eliminar la integración",connectedAccountsWarning:"Las cuentas conectadas pueden exponer datos sensibles a cualquier persona con acceso.",unlockFeature:"Desbloquear esta función",unlockFeatureDesc:"Esta función solo está disponible en el plan Builder o superior. Mejora tu plan para seguir trabajando sin lÃmites",upgradeToUseConnector:"Mejorar plan para usar la función",access:"Acceso a {{name}}",disconnectAccount:"¿Desconectar Cuenta?",disconnectDesc:"Se revocará el acceso de <bold>{{email}}</bold> en <bold>{{name}}</bold>.<br/>El registro de integración se conservará para una futura reconexión.",disconnecting:"Desconectando...",disconnect:"Desconectar",removeIntegration:"¿Eliminar Integración?",removeDesc:"<bold>{{name}}</bold> será eliminado permanentemente de esta app.<br/>Para crear una conexión nuevamente, necesitarás configurarla desde cero.",removing:"Eliminando...",remove:"Eliminar",cancel:"Cancelar",reject:"Rechazar",new:"Nuevo",done:"Listo",success:"Éxito",error:"Error",setupIntegrations:"Configurar Integraciones",setupIntegrationsDesc:"Conecta fácilmente tu app a conectores como Google Calendar, Google Drive, Slack, Notion, Salesforce, HubSpot y más.",setupIntegrationsChat:"Solo describe lo que quieres conectar en el chat y se configurará por ti.",viewAccess:"Ver Acceso",connecting:"Conectando...",switchAccount:"Cambiar cuenta",reconnect:"Reconectar",disconnectAccount2:"Desconectar cuenta",use:"Usar",examplePrompts:"Prompts de ejemplo",clickPromptToAdd:"Haz clic en un prompt para agregarlo a tu chat.",unableToLoadSuggestions:"No se pudieron cargar las sugerencias. Por favor, intenta de nuevo más tarde.",requiresBackendFunctions:"Esta integración requiere funciones backend, una función disponible solo en el plan Builder y superior. ",seePlans:"Ver Planes",promptAddedToChat:"Prompt agregado al chat. Presiona Enter para enviar.",connectors:"Conectores",connectorsDesc:"Conecta tu app a servicios populares con conexiones OAuth rápidas.",searchConnectors:"Buscar conectores",noSearchResults:"Sin resultados para tu búsqueda",noSearchResultsDesc:"Prueba con otras palabras clave o revisa la ortografÃa. También puedes ordenar por nombre o agregados recientemente.",sort:{title:"Ordenar",mostUsed:"Más usados",recentlyAdded:"Agregados recientemente",az:"A-Z",za:"Z-A"},revoked:"Revocado",connectionLost:"Se perdió la conexión — por favor reconecta",configModal:{connectTo:"Conectar a {{name}}",configureConnection:"Configura tu conexión a {{name}}",loadingConfig:"Cargando configuración...",retryHint:"Puedes intentarlo de nuevo.",connect:"Conectar",connecting:"Conectando...",validationRequired:"{{name}} es obligatorio",validationInvalid:"{{name}} no es válido",fetchError:"No se pudo cargar la configuración.",retry:"Reintentar"},wixPayments:{title:"Wix Payments",live:"Activo",disconnected:"Desconectado",acceptingPayments:"Aceptando pagos",integrationDisconnected:"Integración desconectada",openingWixPayments:"Abriendo Wix Payments...",popupBlocked:"Wix Payments fue bloqueado por tu navegador. Usa el enlace de abajo para abrir manualmente el panel de pagos.",errors:{noUrl:"No se pudo obtener la URL de Wix Payments. Inténtalo de nuevo.",fetchFailed:"No se pudo abrir Wix Payments. Inténtalo de nuevo.",invalidRedirect:"No se pudo abrir Wix Payments. Inténtalo de nuevo."},openDashboard:"Abrir panel de pagos",managePayments:"Administrar pagos",disconnect:"Desconectar",disconnectIntegration:"¿Desconectar integración?",disconnectDesc:"<bold>Wix Payments</bold> será desconectado de esta app.<br/>Puedes reconectarlo más tarde desde el chat.",disconnecting:"Desconectando...",disconnectButton:"Desconectar",enterNamePrompt:"Por favor, ingresa tu nombre para continuar:",firstNamePlaceholder:"Nombre",lastNamePlaceholder:"Apellido"},stripe:{unableToClaimSandbox:"No se pudo reclamar el sandbox",sandboxExpired:"El sandbox puede haber expirado o ya fue reclamado. Por favor, actualiza la página.",failedGetClaimUrl:"Error al obtener la URL de reclamación",pleaseTryAgain:"Por favor, intenta de nuevo o actualiza la página.",pendingSetup:"Configuración Pendiente",completeSetupGuide:"Completa la guÃa de configuración para aceptar pagos reales",live:"Activo",stripe:"Stripe",loadingStripe:"Cargando...",acceptingPayments:"Aceptando pagos reales",accountDetails:"Detalles de la cuenta de Stripe",hideGuide:"Ocultar GuÃa",showGuide:"Mostrar GuÃa",goToStripe:"Ir a Stripe",aboutIntegration:"Sobre la Integración",aboutStripeIntegration:"Sobre la Integración de Stripe",stripeDesc:"Stripe te permite aceptar pagos, enviar transferencias y gestionar tu negocio en lÃnea. Esta integración te permite:",acceptCards:"Aceptar tarjetas de crédito y otros métodos de pago",createProducts:"Crear productos y suscripciones",manageCustomers:"Gestionar clientes y facturación",close:"Cerrar",tryTestPayment:"Prueba un pago de prueba",claimSandbox:"Reclama tu sandbox de Stripe",addLiveKeys:"Agrega tus claves API en vivo desde Stripe",copiedCard:"¡Copiado!",testCardCopied:"Número de tarjeta de prueba copiado al portapapeles.",failedToCopy:"Error al copiar",copyManually:"Por favor copia manualmente: 4242 4242 4242 4242",keysSaved:"Claves API guardadas exitosamente.",failedSaveKeys:"Error al guardar las claves API. Por favor, intenta de nuevo.",movedOutOfTestMode:"Has salido del modo de prueba.",noNeedTestPayments:"Ya no necesitas ejecutar pagos de prueba.",useTestCard:"Usa esta tarjeta de prueba para simular una compra:",testCardNumber:"4242 4242 4242 4242",anyFutureExpiry:", cualquier fecha de vencimiento futura, cualquier CVC de 3 dÃgitos.",publishAndOpen:"Publica tu app y ábrela en una nueva pestaña para probar la experiencia de pago",copyCardNumber:"Copiar Número de Tarjeta",connectStripeDesc:"Conéctate a tu cuenta de Stripe existente o crea una nueva para comenzar a aceptar pagos reales.",claimAndGoLive:"Reclamar y Activar",copyLiveKeys:"Copia tus claves en vivo Publishable y Secret desde tu <link>Panel de Stripe</link> para completar la configuración y habilitar pagos reales en tu app.",publishableKey:"Clave Publishable",secretKey:"Clave Secret",enterValue:"Ingresa valor",savingKeys:"Guardando...",saveApiKeys:"Guardar claves API",completeStepInStripe:"Para completar este paso, reclama el sandbox y finaliza la configuración en Stripe"}},Gj={title:"Integraciones de la App",subtitle:"Conecta tu app a servicios de terceros y amplÃa su funcionalidad.",integrationCatalog:"Catálogo de Integraciones",payments:"Pagos",zapier:"Zapier",couldNotLoad:"No se pudieron cargar los detalles de la integración. Por favor, intenta de nuevo.",loadingDetails:"Cargando detalles...",backToCatalog:"Volver al Catálogo",integrationAdded:"Integración Agregada (Marcador)",wouldBeAdded:"{{name}} se agregarÃa a tu app. Valores secretos registrados.",requiresConfiguration:"Requiere Configuración",requiresSecrets:"Esta integración requiere {{count}} valor(es) secreto(s) a configurar.",addToApp:"Agregar a la App",paymentProcessing:"Procesamiento de Pagos",paymentProcessingDesc:"Acepta pagos en tu app con procesadores de pago populares. ¡Próximamente!",leadingPaymentPlatform:"Plataforma de pagos lÃder",globallyRecognized:"Pagos reconocidos globalmente",configurePayment:"Configura proveedores de pago para habilitar suscripciones, compras únicas y más en tu aplicación.",zapierIntegration:"Integración con Zapier",zapierDesc:"Conecta tu app con miles de otros servicios a través de Zapier.",automateWithZapier:"Automatiza con Zapier",linkBase44:"Conecta Base44 a tus apps favoritas como Slack, Google Sheets, Mailchimp y más.",exploreOnZapier:"Explorar Base44 en Zapier",configureIntegration:"Configurar {{name}}",configureDesc:"Esta integración requiere algunos valores secretos para configurarse. Estos se almacenan de forma segura y cifrada.",saveAndAdd:"Guardar y Agregar Integración"},Hj={title:"Habilidades",description:"Agrega habilidades para moldear cómo la IA construye tus apps.",manage:"Gestionar"},Yj=JSON.parse('{"title":"Conectores","connectorsForAppUsers":"Conectores para usuarios de la app","connectorsForAppUsersDesc":"Configura conectores para que los usuarios de la app puedan vincular sus cuentas personales a las apps de este workspace.","connectorsForAppUsersDialogDesc":"Permite a los usuarios de la app conectar sus cuentas personales a las apps de este workspace.","addConnector":"Agregar conector","browseConnectors":"Explorar conectores","noConnectorsYet":"Aún no hay conectores","noConnectorsYetDesc":"Agrega conectores para que los usuarios de la app puedan vincular sus cuentas personales.","view":"Ver","edit":"Editar","connections":"Conexiones","addConnection":"Agregar conexión","viewConnector":"Ver conector","connectorName":"Nombre del conector","connector":"Conector {{name}}","examplePrompts":"Prompts de ejemplo","back":"Atrás","configureConnection":"Configurar tu conexión","configureConnectionDesc":"Proporciona tu ID de cliente, secreto y permisos.","connectorNameDesc":"Ingresa un nombre corto para identificar este conector","clientId":"ID del cliente","clientSecret":"Secreto del cliente","clientSecrets":"Secretos del cliente","scopes":"Alcances","scopesDesc":"Ingresa los alcances que necesita tu app. Escribe cada alcance en una lÃnea separada.","scopesPlaceholder":"Ingresa alcances, uno por lÃnea","scopesPlaceholderExample":"ej.\\nhttps://www.googleapis.com/auth/calendar.readonly\\nemail","connectionConfig":"Configuración de conexión","cancel":"Cancelar","close":"Cerrar","addingConnector":"Agregando...","savingConnector":"Guardando...","saveChanges":"Guardar cambios","deleteConnector":"Eliminar conector","deleteConfirm":"¿Eliminar {{name}}? Esta acción no se puede deshacer.","deleting":"Eliminando...","addConnectionTitle":"Agregar conexión {{name}}","editConnectionTitle":"Editar conexión {{name}}","connectorReadOnly":"Conector {{name}}","readOnlyDesc":"Vista de solo lectura de los detalles del conector","builtInConnectors":"Conectores integrados","promptExamples":"Ejemplos de prompts para comenzar","adminOnlyTooltip":"Solo los administradores o propietarios del workspace pueden conectar integraciones para usuarios de la app","settingUp":"Configurando conector...","configured":"Conector configurado","setUp":"Configurar conector de usuario de app {{type}}","setUpGeneric":"Configurar conector de usuario de app","connecting":"Conectando...","connect":"Conectar","reject":"Rechazar","workspaceLevelNote":"Esta integración estará accesible a nivel de workspace y se aplicará a todas las aplicaciones creadas dentro de ese workspace.","previousMessage":"Esta configuración de conector es de un mensaje anterior","toastErrorTitle":"Error","toastCreated":"Conector creado","toastCreateFailed":"Error al crear el conector","toastDuplicateName":"Ya existe un conector con este nombre en este workspace","toastUpdated":"Conector actualizado","toastUpdateFailed":"Error al actualizar el conector","toastDeleted":"Conector eliminado","toastDeleteFailed":"Error al eliminar el conector","configFetchFailed":"No se pudo cargar la configuración de conexión. Es posible que falten campos obligatorios.","retry":"Reintentar","toastLoadFailed":"Error al cargar los conectores OAuth","namePlaceholder":"ej. Marketing {{label}}","clientIdPlaceholder":"Ingresa el ID de cliente OAuth","clientSecretPlaceholderNew":"Ingresa el nuevo secreto del cliente","clientSecretPlaceholder":"Ingresa el secreto de cliente OAuth","extraDetails":{"googlecalendar":{"longDescription":"Conéctate a Google Calendar para permitir que los usuarios de tu app vean, creen y gestionen eventos del calendario. Sincroniza horarios, automatiza la creación de reuniones a partir de envÃos de formularios y crea flujos de trabajo de programación.","examplePrompt0":"Sincronizar próximas reuniones en un panel dentro de la app.","examplePrompt1":"Crear eventos de calendario a partir de envÃos de formularios.","examplePrompt2":"Mostrar una vista de agenda diaria para el usuario conectado.","examplePrompt3":"Enviar recordatorios antes de los próximos eventos."},"slack":{"longDescription":"Conéctate a Slack para compartir mensajes y crear lienzos directamente para simplificar la colaboración y aumentar la productividad. Busca y recupera mensajes, canales, hilos, archivos y usuarios, dándole a Claude el contexto para agilizar tu trabajo.","examplePrompt0":"Sincronizar nuevos usuarios de la app a un canal de Slack.","examplePrompt1":"Enviar actualizaciones de estado de compilación a #devops.","examplePrompt2":"Publicar errores de la app en el canal #alertas.","examplePrompt3":"Notificar al equipo sobre nuevos comentarios de clientes."},"salesforce":{"longDescription":"Conéctate a Salesforce para acceder a contactos, prospectos, oportunidades y objetos personalizados. Permite a los usuarios de tu app ver y actualizar sus datos de CRM, rastrear negocios y automatizar flujos de trabajo de ventas.","examplePrompt0":"Mostrar un panel de oportunidades abiertas.","examplePrompt1":"Crear un nuevo prospecto a partir de un envÃo de formulario.","examplePrompt2":"Sincronizar actualizaciones de contactos de vuelta a Salesforce.","examplePrompt3":"Notificar al equipo cuando se cierra un negocio."},"hubspot":{"longDescription":"Conéctate a HubSpot para gestionar contactos, empresas, negocios y campañas de marketing. Permite a los usuarios de tu app sincronizar sus datos de CRM, rastrear interacciones y automatizar flujos de trabajo de marketing.","examplePrompt0":"Mostrar una lista de negocios recientes en la app.","examplePrompt1":"Agregar nuevos contactos desde formularios de registro.","examplePrompt2":"Sincronizar resultados de campañas de email en un panel.","examplePrompt3":"Actualizar etapas de negocios desde la app."},"notion":{"longDescription":"Conéctate a Notion para acceder a páginas, bases de datos y contenido del workspace. Permite a los usuarios de tu app leer y actualizar su workspace de Notion, sincronizar datos estructurados y automatizar flujos de trabajo de contenido.","examplePrompt0":"Traer listas de tareas desde una base de datos de Notion.","examplePrompt1":"Crear nuevas páginas a partir de envÃos de formularios.","examplePrompt2":"Sincronizar actualizaciones de estado de proyectos a Notion.","examplePrompt3":"Mostrar contenido de Notion dentro de la app."},"slackbot":{"longDescription":"Conecta un Bot de Slack para publicar mensajes como un bot con marca personalizada con nombre e Ãcono propios. Responde a menciones de la app, usa comandos de barra y automatiza flujos de trabajo centrados en el bot en tu workspace de Slack.","examplePrompt0":"Publicar resúmenes diarios de standup en #general.","examplePrompt1":"Responder a comandos de barra con datos de la app.","examplePrompt2":"Enviar alertas automatizadas cuando las tareas están atrasadas.","examplePrompt3":"Notificar a los canales cuando llegan nuevos pedidos."},"googledrive":{"longDescription":"Conéctate a Google Drive para subir, organizar y gestionar archivos. Permite a los usuarios de tu app guardar documentos generados, respaldar datos y acceder a sus archivos de Drive directamente desde tu app.","examplePrompt0":"Guardar informes generados en una carpeta compartida de Drive.","examplePrompt1":"Subir archivos enviados por usuarios a Google Drive.","examplePrompt2":"Listar archivos recientes de una carpeta especÃfica.","examplePrompt3":"Respaldar exportaciones de datos de la app en Drive automáticamente."},"gmail":{"longDescription":"Conéctate a Gmail para enviar, leer y gestionar correos electrónicos de forma programática. Permite a los usuarios de tu app automatizar flujos de trabajo de correo, leer mensajes de la bandeja de entrada y enviar correos personalizados desde su propia cuenta.","examplePrompt0":"Enviar un correo de confirmación después del envÃo de un formulario.","examplePrompt1":"Mostrar los últimos mensajes de la bandeja de entrada del usuario.","examplePrompt2":"Responder automáticamente a correos que cumplan ciertos criterios.","examplePrompt3":"Redactar y enviar correos personalizados de difusión."},"googlesheets":{"longDescription":"Conéctate a Google Sheets para leer, escribir y actualizar datos de hojas de cálculo. Permite a los usuarios de tu app sincronizar registros, importar datos desde hojas y exportar datos de la app a sus hojas de cálculo.","examplePrompt0":"Importar datos de productos desde una hoja de Google.","examplePrompt1":"Exportar informes diarios de ventas a una hoja de cálculo.","examplePrompt2":"Sincronizar envÃos de formularios a una hoja de seguimiento.","examplePrompt3":"Leer datos de precios desde una hoja de cálculo compartida."},"googleslides":{"longDescription":"Conéctate a Google Slides para crear y editar presentaciones. Permite a los usuarios de tu app generar presentaciones desde plantillas, agregar contenido dinámico y automatizar la creación de presentaciones.","examplePrompt0":"Generar una presentación de propuesta a partir de datos de un formulario.","examplePrompt1":"Agregar una nueva diapositiva con métricas semanales.","examplePrompt2":"Crear presentaciones a partir de plantillas de informes.","examplePrompt3":"Actualizar el contenido de las diapositivas con los datos más recientes."},"googledocs":{"longDescription":"Conéctate a Google Docs para crear, leer y editar documentos. Permite a los usuarios de tu app generar contratos, completar plantillas y gestionar documentos directamente desde tu app.","examplePrompt0":"Generar un contrato a partir de una plantilla.","examplePrompt1":"Crear notas de reunión a partir de datos de un formulario.","examplePrompt2":"Completar una plantilla de documento con los datos del usuario.","examplePrompt3":"Agregar nuevo contenido a un documento existente."},"googlebigquery":{"longDescription":"Conéctate a Google BigQuery para ejecutar consultas SQL y analizar grandes conjuntos de datos. Permite a los usuarios de tu app consultar su almacén de datos, crear paneles y obtener analÃticas dentro de tu app.","examplePrompt0":"Consultar datos de ventas y mostrarlos en un gráfico.","examplePrompt1":"Extraer analÃticas de usuarios desde tablas de BigQuery.","examplePrompt2":"Ejecutar un informe programado desde los datos del almacén.","examplePrompt3":"Mostrar los productos con mejor rendimiento a partir de resultados de consultas."},"linkedin":{"longDescription":"Conéctate a LinkedIn para acceder a datos de perfil y compartir publicaciones. Permite a los usuarios de tu app publicar actualizaciones, obtener perfiles profesionales y automatizar flujos de trabajo de redes sociales en LinkedIn.","examplePrompt0":"Publicar actualizaciones de la empresa en LinkedIn automáticamente.","examplePrompt1":"Obtener detalles del perfil del usuario conectado.","examplePrompt2":"Compartir publicaciones de blog en LinkedIn desde la app.","examplePrompt3":"Mostrar información del perfil de LinkedIn en un panel."},"tiktok":{"longDescription":"Conéctate a TikTok para acceder a información del perfil, estadÃsticas de seguidores y datos de videos. Permite a los usuarios de tu app rastrear su rendimiento en TikTok y explorar sus videos publicados.","examplePrompt0":"Mostrar cantidad de seguidores y estadÃsticas del perfil.","examplePrompt1":"Listar los videos más recientes del usuario en TikTok.","examplePrompt2":"Mostrar métricas de rendimiento de videos en un panel.","examplePrompt3":"Rastrear el crecimiento de seguidores a lo largo del tiempo."},"discord":{"longDescription":"Conéctate a Discord para enviar mensajes, gestionar servidores e interactuar con gremios y canales. Permite a los usuarios de tu app automatizar notificaciones, publicar actualizaciones e integrarse con su comunidad de Discord.","examplePrompt0":"Enviar notificaciones de pedidos a un canal de Discord.","examplePrompt1":"Publicar alertas de la app en un canal #notificaciones.","examplePrompt2":"Listar canales disponibles en un servidor de Discord.","examplePrompt3":"Notificar al equipo cuando un nuevo usuario se registra."},"wix":{"longDescription":"Conéctate a Wix para acceder a datos del sitio, gestionar contenido e interactuar con soluciones empresariales de Wix como Tiendas, Reservas y CRM. Permite a los usuarios de tu app sincronizar productos, pedidos y datos de clientes.","examplePrompt0":"Sincronizar productos de la tienda Wix a la app.","examplePrompt1":"Traer pedidos recientes de Wix Stores.","examplePrompt2":"Mostrar disponibilidad de reservas desde Wix Bookings.","examplePrompt3":"Gestionar contactos del CRM de Wix desde tu app."},"github":{"longDescription":"Conéctate a GitHub para acceder a repositorios, gestionar issues y pull requests, y automatizar flujos de trabajo de desarrollo. Permite a los usuarios de tu app rastrear cambios en el código, crear issues y agilizar su proceso de desarrollo.","examplePrompt0":"Listar issues abiertos de un repositorio.","examplePrompt1":"Crear un nuevo issue a partir de un formulario de reporte de bugs.","examplePrompt2":"Mostrar pull requests recientes en un panel.","examplePrompt3":"Rastrear actividad de commits entre repositorios."},"wrike":{"longDescription":"Conéctate a Wrike para gestionar proyectos, tareas y colaboración en equipo. Permite a los usuarios de tu app crear y actualizar tareas, rastrear el progreso de proyectos y coordinar el trabajo entre equipos.","examplePrompt0":"Crear tareas a partir de envÃos de formularios.","examplePrompt1":"Mostrar cronogramas de proyectos en un panel.","examplePrompt2":"Actualizar el estado de tareas desde dentro de la app.","examplePrompt3":"Mostrar carga de trabajo del equipo y asignaciones de tareas."},"box":{"longDescription":"Conéctate a Box para subir, gestionar y compartir archivos y carpetas. Permite a los usuarios de tu app almacenar documentos de forma segura, organizar archivos y colaborar en contenido en Box.","examplePrompt0":"Subir documentos generados a una carpeta de Box.","examplePrompt1":"Listar archivos en un directorio compartido de Box.","examplePrompt2":"Descargar archivos de Box dentro de la app.","examplePrompt3":"Compartir un enlace de archivo de Box con miembros del equipo."},"clickup":{"longDescription":"Conéctate a ClickUp para gestionar tareas, proyectos y flujos de trabajo del equipo. Permite a los usuarios de tu app crear tareas, actualizar estados y rastrear el progreso de proyectos directamente desde tu app.","examplePrompt0":"Crear tareas de ClickUp a partir de envÃos de formularios.","examplePrompt1":"Mostrar el estado del tablero de tareas en un panel.","examplePrompt2":"Actualizar prioridades de tareas desde la app.","examplePrompt3":"Listar tareas atrasadas del sprint actual."},"google_analytics":{"longDescription":"Conéctate a Google Analytics para acceder a datos de tráfico web, comportamiento de usuarios y rendimiento de marketing. Permite a los usuarios de tu app ver informes de analÃticas y rastrear métricas clave desde dentro de tu app.","examplePrompt0":"Mostrar vistas de página y sesiones en un panel.","examplePrompt1":"Mostrar las principales fuentes de tráfico de la última semana.","examplePrompt2":"Rastrear tasas de conversión entre campañas.","examplePrompt3":"Obtener datos demográficos y de comportamiento de usuarios."},"outlook":{"longDescription":"Conéctate a Outlook para enviar y leer correos electrónicos, gestionar eventos del calendario y acceder al correo y calendario de Microsoft 365. Permite a los usuarios de tu app automatizar flujos de trabajo de correo y sincronizar su agenda.","examplePrompt0":"Enviar correos de seguimiento desde la app.","examplePrompt1":"Mostrar próximos eventos del calendario.","examplePrompt2":"Crear eventos de calendario a partir de envÃos de formularios.","examplePrompt3":"Mostrar correos recientes en un panel."},"linear":{"longDescription":"Conéctate a Linear para crear y gestionar issues, proyectos y ciclos. Permite a los usuarios de tu app rastrear flujos de trabajo del equipo, organizar sprints y mantenerse al dÃa con el progreso de ingenierÃa.","examplePrompt0":"Crear issues en Linear a partir de formularios de reporte de bugs.","examplePrompt1":"Mostrar issues del sprint activo en un panel.","examplePrompt2":"Actualizar el estado de issues desde dentro de la app.","examplePrompt3":"Rastrear el progreso del ciclo y la velocidad del equipo."},"dropbox":{"longDescription":"Conéctate a Dropbox para subir, descargar y gestionar archivos y carpetas. Permite a los usuarios de tu app almacenar archivos en la nube, sincronizar datos y acceder a su contenido de Dropbox desde tu app.","examplePrompt0":"Subir informes exportados a Dropbox.","examplePrompt1":"Listar archivos en una carpeta especÃfica de Dropbox.","examplePrompt2":"Descargar archivos compartidos dentro de la app.","examplePrompt3":"Sincronizar respaldos de datos de la app a Dropbox."}},"builtIn":{"sendEmail":{"name":"Enviar correos","rowDescription":"EnvÃa correos electrónicos a personas en tu app Base44 con nombres de remitente personalizables y contenido HTML enriquecido.","subtitle":"EnvÃa correos electrónicos automatizados a tus usuarios directamente desde tu app.","longDescription":"EnvÃa correos electrónicos automáticamente desde tu app como parte de flujos de trabajo o automatizaciones. Esta integración puede activarse desde flujos, funciones backend o agentes para enviar notificaciones como confirmaciones, alertas, resúmenes o enlaces de acceso a usuarios.","examplePrompt0":"Cuando un ticket de soporte se actualice a \\"resuelto\\", usa SendEmail para notificar al solicitante con un resumen de la resolución.","examplePrompt1":"Crea una automatización semanal que use SendEmail para enviar a los admins un resumen de nuevos pedidos y métricas clave.","examplePrompt2":"Agrega un flujo diario que use SendEmail para enviar a los admins un resumen de nuevos registros en esta app.","examplePrompt3":"Crea una automatización que use SendEmail para recordar a los usuarios 24 horas antes de su cita reservada."},"uploadFile":{"name":"Subir archivo","rowDescription":"Permite a las personas subir archivos a tu app. Usa la URL del archivo devuelta en otras integraciones o flujos de trabajo.","subtitle":"Permite a las personas subir archivos a tu app. Usa la URL del archivo devuelta en otras integraciones o flujos de trabajo.","longDescription":"Permite a los usuarios subir archivos a tu app y adjuntarlos a registros. Esta integración potencia componentes de carga para que puedas recopilar documentos, imágenes, recibos, contratos, capturas de pantalla, fotos de perfil, archivos CSV o hojas de cálculo, y almacenar solo la URL segura del archivo en tus datos.","examplePrompt0":"Agrega un campo de carga de archivos a este formulario usando Subir archivo y guarda la URL del archivo en el registro relacionado.","examplePrompt1":"Crea una página donde los usuarios puedan subir fotos de perfil con Subir archivo y almacenar la URL de la imagen en su entidad de usuario.","examplePrompt2":"Configura un área de carga para archivos CSV usando Subir archivo para que pueda importar esos archivos más tarde en mis tablas de datos."},"invokeLlm":{"name":"Invocar LLM","rowDescription":"Genera respuestas de IA usando modelos de lenguaje integrados, prompts, archivos y salidas estructuradas.","subtitle":"Genera respuestas de IA usando modelos de lenguaje integrados, prompts, archivos y salidas estructuradas.","longDescription":"Usa un modelo de lenguaje para generar respuestas a partir de prompts. Esta integración puede devolver salidas JSON estructuradas, analizar imágenes, usar archivos adjuntos como contexto y realizar búsquedas web cuando sea necesario. Se puede usar para potenciar agentes, flujos de trabajo y otras funciones impulsadas por IA en tu app.","examplePrompt0":"Genera respuestas de IA a partir de la entrada del usuario usando Invocar LLM y muestra la respuesta en esta página.","examplePrompt1":"Usa Invocar LLM para resumir mensajes de feedback largos en tres puntos clave almacenados en cada registro de Feedback.","examplePrompt2":"Agrega una función \\"reescribir este texto\\" que envÃe el texto del usuario a Invocar LLM y devuelva una versión más clara y amigable.","examplePrompt3":"Usa Invocar LLM para clasificar cada ticket de soporte como \\"bug\\", \\"solicitud de función\\" o \\"pregunta\\" y guardar la etiqueta en el registro del ticket."},"generateImage":{"name":"Generar imagen","rowDescription":"Crea imágenes a partir de descripciones de texto detalladas. Devuelve una URL a la imagen generada.","subtitle":"Simplemente proporciona un prompt de texto describiendo la imagen que deseas, y devuelve una URL a la imagen generada.","longDescription":"Genera imágenes usando IA a partir de prompts de texto o flujos en tu app. Esta integración permite que tu app cree imágenes de portada, miniaturas, avatares, marcadores de producto o visuales de marketing simples bajo demanda sin conectar a un proveedor de imágenes externo.","examplePrompt0":"Usa Generar imagen para crear una imagen de producto predeterminada cuando se agrega un nuevo producto sin fotos.","examplePrompt1":"Agrega una función donde los usuarios puedan ingresar una descripción corta y Generar imagen devuelva una URL de imagen de portada guardada en su publicación.","examplePrompt2":"Crea un flujo que use Generar imagen para generar imágenes de avatar para nuevos usuarios basándose en su color o tema favorito."},"extractData":{"name":"Extraer datos de archivos subidos","rowDescription":"Extrae datos estructurados de archivos subidos (CSV, PNG, JPG, JPEG, PDF) usando esquemas JSON. Útil para importar datos en masa.","subtitle":"Extrae datos estructurados de archivos subidos (CSV, PNG, JPG, JPEG, PDF) usando esquemas JSON. Útil para importar datos en masa.","longDescription":"Extrae automáticamente datos estructurados de archivos subidos a tu app y almacénalos en tus entidades. Esta integración lee documentos y hojas de cálculo y convierte su contenido en campos estructurados que puedes usar en registros, informes o automatizaciones.","examplePrompt0":"Cuando alguien suba una factura PDF, usa Extraer datos para obtener el proveedor, monto total y fecha de vencimiento en una entidad de Facturas.","examplePrompt1":"Usa Extraer datos para leer un CSV de contactos y crear un registro de contacto por fila.","examplePrompt2":"Después de que un usuario suba una imagen de recibo, usa Extraer datos para extraer el comerciante, fecha y artÃculos en un registro estructurado de Gastos."},"whatsapp":{"name":"WhatsApp","rowDescription":"Conecta tu agente a WhatsApp para que las personas puedan enviar mensajes al agente de tu app directamente desde su teléfono, sin abrir la app.","subtitle":"Conecta tu agente a WhatsApp para que las personas puedan enviar mensajes al agente de tu app directamente desde su teléfono, sin abrir la app.","longDescription":"Conecta tu agente a WhatsApp para que las personas puedan enviar mensajes al agente de tu app directamente desde su teléfono. Usa esta integración para manejar soporte, recopilar datos o enviar actualizaciones por WhatsApp mientras el agente accede a los datos y flujos de trabajo de tu app en segundo plano.","examplePrompt0":"Conecta mi agente de soporte a WhatsApp para que los clientes puedan hacer preguntas ahà y el agente responda usando el conocimiento de mi app.","examplePrompt1":"Configura un flujo de WhatsApp donde los nuevos mensajes creen o actualicen registros en mi entidad de Contactos y el agente confirme los detalles.","examplePrompt2":"Cuando el estado de un pedido cambie a \\"enviado\\", haz que el agente envÃe un mensaje de WhatsApp con el enlace de seguimiento e información clave del pedido."}}}'),Kj={title:"Conectores para usuarios de la app",description:"Configura conectores para que los usuarios de la app puedan vincular sus cuentas personales.",manage:"Gestionar"},Zj={connections:Wj,integrations:Gj,skillsBanner:Hj,oauthConnectors:Yj,oauthConnectorsBanner:Kj},Jj={importSuccessful:"Importación Exitosa",importSuccessfulMsg:"Se importaron {{count}} registros de {{name}} exitosamente",importFailed:"Importación Fallida",exportSuccessful:"Exportación Exitosa",exportSuccessfulMsg:"Entidades exportadas a CSV exitosamente",exportFailed:"Exportación Fallida",moveAllToTrash:"Mover Todos los Registros a la Papelera",moveAllToTrashConfirm:"¿Estás seguro de que quieres mover todos los registros a la papelera? Puedes restaurarlos después desde la papelera.",moveToTrash:"Mover a la Papelera",success:"Éxito",allMovedToTrash:"Todos los registros movidos a la papelera exitosamente",error:"Error",add:"Agregar",addItem:"Agregar elemento",import:"Importar",export:"Exportar",schema:"Esquema",recentlyDeleted:"Eliminados Recientemente",deleteAll:"Eliminar Todo",permissions:"Permisos",permissionsDesc:"Crea reglas para controlar quién puede leer y escribir registros. Múltiples reglas se combinan con lógica OR.",saveRules:"Guardar Reglas",permissionsIssueDetected:"Problema de permisos detectado",learnMoreAboutPermissions:"<a>Más información <icon/></a> sobre permisos y reglas de seguridad",customize:"Personalizar",apply:"Aplicar",checkingPermissions:"Verificando seguridad de permisos",failedCheckPermissions:"Error al verificar permisos",permissionsCheckPassed:"Verificación de permisos exitosa",recommendedRules:"Reglas recomendadas",editRecord:"Editar {{entity}}",addNewRecord:"Agregar Nuevo {{entity}}",test:"Prueba",production:"Producción",filters:"Filtros",schemaEditor:"Editor de Esquema",noRecordsFound:"No se encontraron registros",getStartedAdding:"Comienza agregando tu primer registro.",loadingEntity:"Cargando {{entity}}..."},Qj={production:"Producción",test:"Prueba"},Xj={back:"Volver",trashTitle:"{{entity}}: Papelera",test:"(Prueba)",production:"(Producción)",trashDescription:`Ver, restaurar o eliminar permanentemente elementos.
Los elementos se eliminan permanentemente después de 30 dÃas.`,permanentlyDelete:"Eliminar Registro Permanentemente",permanentlyDeleteConfirm:"¿Estás seguro de que quieres eliminar permanentemente este registro? Esta acción no se puede deshacer.",deletePermanently:"Eliminar Permanentemente",restoreSelected:"Restaurar Registros Seleccionados",restoreSelectedConfirm:"¿Estás seguro de que quieres restaurar {{count}} registro(s) seleccionado(s)?",restore:"Restaurar",restoreAll:"Restaurar Todos los Registros",restoreAllConfirm:"¿Estás seguro de que quieres restaurar todos los registros en la papelera?",restoreAllBtn:"Restaurar Todo",deletedDate:"Fecha de Eliminación",actions:"Acciones",failedToLoad:"Error al cargar registros eliminados",tryAgain:"Intentar de Nuevo",loadingDeleted:"Cargando registros eliminados...",noDeletedRecords:"No se encontraron registros eliminados",restoreCount:"Restaurar {{count}} Seleccionados",restoring:"Restaurando..."},eO={data:Jj,toolbar:Qj,trash:Xj},tO=JSON.parse(`{"title":"Dominios","subtitle":"Compra, conecta y gestiona tus dominios.","learnMore":"Saber más","expired":"Expirado hace {{days}} dÃas","expiresIn":"Expira en {{days}} dÃas","lastChecked":"Última verificación: {{time}}","domainLinked":"Dominio vinculado","domainLinkedMsg":"El dominio ha sido vinculado a tu proyecto","errorLinkingDomain":"Error al vincular dominio","linking":"Vinculando...","linkDomain":"Vincular Dominio","checkStatus":"Verificar Estado","checking":"Verificando...","verifyDomain":"Verificar","verifying":"Verificando...","unlinkDomain":"Desvincular Dominio","unlinking":"Desvinculando...","unlinked":"Desvinculado","domainActive":"Dominio Activo","waitingDns":"Esperando Propagación DNS","verified":"Verificado","error":"Error","pending":"Pendiente","domainUnlinked":"Dominio desvinculado","domainUnlinkedMsg":"El dominio ha sido desvinculado de tu proyecto","errorUnlinkingDomain":"Error al desvincular dominio","domainDeleted":"Dominio eliminado","errorDeletingDomain":"Error al eliminar dominio","errorCheckingStatus":"Error al verificar estado","verificationInitiated":"Verificación iniciada","checkBackMinutes":"Por favor, vuelve a verificar en unos minutos","errorVerifyingDomain":"Error al verificar dominio","deleteDomain":"Eliminar Dominio","deleteConfirm":"¿Estás seguro de que quieres eliminar?","deleting":"Eliminando...","unlinkDialogDescription":"Este dominio fue comprado a través de Base44.\\n\\nPermanecerá listado en tus dominios pero ya no estará conectado a tu proyecto.","wantToUseDomain":"¿Quieres usar tu dominio?","customDomainsAvailable":"Los dominios personalizados están disponibles en nuestro plan Builder y superiores.<br/>Mejora tu plan para conectar tu dominio a esta app.","viewPlans":"Ver Planes","getNewDomain":"Obtener un nuevo dominio","getNewDomainDescription":"Dale a tu app un aspecto profesional con un dominio único.","suggestedForApp":"Sugerido para tu app: <bold>{{domain}}</bold>","suggestedForApp_prefix":"Sugerido para tu app:","buyNewDomain":"Comprar nuevo dominio","buyAnother":"Comprar otro","buyThisDomain":"Comprar este dominio","orConnectExisting":"O conecta un dominio existente que ya poseas","connectExistingDomain":"Conectar dominio existente","getYourCustomDomain":"Obtén tu dominio personalizado","upgradeDescription":"Los dominios personalizados están disponibles en el plan Builder y superiores.","upgradeYourPlan":"Mejora tu plan","processing":"Procesando...","loading":"Cargando...","domainLimitReached":"LÃmite de Dominios Alcanzado","domainLimitMsg":"Has alcanzado el máximo de {{max}} dominios para esta app ({{current}}/{{max}}).\\nPor favor, elimina algunos dominios antes de agregar nuevos.","noCustomDomainYet":"Aún no has conectado un dominio personalizado","connectDescription":"Conecta tu app de Base44 a tu propio dominio para destacar tu marca y hacer tu app fácil de encontrar y compartir.","buyDomain":"Comprar dominio","neverExpires":"Nunca expira","editUrl":"Editar URL","domainPurchased":"¡Dominio Comprado!","domainPurchasedMsg":"Tu dominio {{domain}} fue comprado exitosamente. Esperando a que aparezca en tus dominios...","domainPurchaseFailed":"Compra de Dominio Fallida","purchaseFailedMsg":"La compra falló para {{domain}}.","domainLimitReachedToast":"LÃmite de dominios alcanzado","domainLimitToastMsg":"Solo puedes tener hasta {{max}} dominios por app. Por favor, elimina algunos dominios primero.","domainAddedSuccessfully":"Dominio agregado exitosamente.","verifyToComplete":"Por favor, verifica tu dominio para completar la configuración.","failedToConnect":"Error al conectar tu dominio","connectYourDomain":"Conectar","builtInDomain":"URL integrada","customDomains":"Dominios personalizados","adminCanAdd":"Admin: puede agregar cualquier dominio","domainDisabled":"Dominio desactivado","domainEnabled":"Dominio activado","domainDisabledMsg":"El dominio ha sido desactivado y ya no servirá tráfico.","domainEnabledMsg":"El dominio ha sido reactivado y volverá a servir tráfico.","errorTogglingDomain":"Error al cambiar el estado del dominio","disabledBadge":"Desactivado","enableDomain":"Activar","disableDomain":"Desactivar","enableDomainTitle":"Activar dominio (admin)","disableDomainTitle":"Desactivar dominio (admin)","errorFetchingDomains":"Error al obtener dominios","cancel":"Cancelar","cannotPurchase":"No se puede comprar el dominio","domainPurchaseDisabled":"La compra de dominios está deshabilitada actualmente","entriNotReady":"Entri aún no está listo. Por favor, intenta de nuevo en un momento.","errorPurchasingDomain":"Error al comprar dominio","loadingEntri":"Cargando Entri...","addNewDomain":"Agregar Nuevo Dominio","enterDomainFormat":"Ingresa el nombre de tu dominio a continuación. Asegúrate de que siga el formato: app.ejemplo.com","enterDomainPlaceholder":"Ingresa dominio (ej., app.ejemplo.com)","invalidDomain":"Esto no parece un dominio válido.\\nIngresa un dominio válido, ej. ejemplo.com o app.ejemplo.com.","domainAlreadyConnected":"Este dominio ya está conectado a tu app.","configureDnsAtRegister":"Configurar DNS en el registrador","addDomain":"Agregar Dominio","adding":"Agregando...","domainConnectionNeeded":"Se necesita conexión de dominio","retryFromEmailSettings":"Por favor, reintenta desde la configuración de dominio de correo.","emailDomainSubmitted":"Dominio de correo enviado.","addDnsRecords":"Por favor, agrega los registros DNS a tu proveedor de dominio.","verificationMayTake48h":"La verificación puede tardar hasta 48 horas.","senderDetailsUpdated":"Datos del remitente actualizados.","editSenderDetails":"Editar datos del remitente","setSenderDetails":"Configura los datos de tu remitente","saveChanges":"Guardar Cambios","connectDomain":"Conectar Dominio","saving":"Guardando...","connecting":"Conectando...","usersWillGetEmails":"Tus usuarios recibirán correos con estos datos de remitente.","senderName":"Nombre del remitente","customAddress":"Dirección personalizada","noReply":"no-reply","noReplyEmailAddress":"no-reply@base44-apps.com","domain":"Dominio","copyToClipboard":"Copiar al portapapeles","addCnameRecord":"Agregar registro CNAME: ","wwwToDomain":"www → base44.onrender.com","addAnameRecord":"Agregar registro ANAME/ALIAS: ","emptyOrAtDomain":"vacÃo o @ → base44.onrender.com","ifNoAnameSupport":"Si tu proveedor DNS no soporta ANAME/ALIAS, usa un registro A:","aRecordIp":"@ → 216.24.57.1","removeAaaaRecords":"Elimina cualquier registro AAAA de tu dominio mientras configuras DNS. Los registros AAAA apuntan a una dirección IPv6, y Base44 usa IPv4. Estos registros pueden causar comportamiento inesperado para tu dominio personalizado.","dnsChangesNote":"Por favor ten en cuenta que, después de agregar registros DNS, puede tomar un tiempo para que los cambios se propaguen completamente por internet. Durante este tiempo, el dominio puede no funcionar correctamente.","addDnsRecordsFor":"1. Agrega estos registros DNS a tu proveedor de dominio para ","type":"Tipo","nameColumn":"Nombre","hostColumn":"Host","tabAnameAlias":"ANAME/ALIAS","tabARecord":"Registro A","addRecordsStepIntro":"Añade estos registros en el panel de tu proveedor para terminar la configuración:","removeAaaaShort":"Asegúrate de eliminar los registros AAAA (IPv6), ya que pueden bloquear las conexiones.","customDomainStep2Verify":"Cuando hayas actualizado todos los registros en el panel de tu proveedor, haz clic en «<bold>Verificar dominio</bold>». Los cambios de DNS pueden tardar hasta 48-78 horas en propagarse.","closeModal":"Cerrar","verifyDomainButton":"Verificar dominio","dnsTargetFallback":"base44.onrender.com","value":"Valor","onceConfiguredVerify":"2. Una vez configurado, haz clic en '<bold>Verificar</bold>' en la tarjeta del dominio de correo para verificar la configuración. Los cambios DNS pueden tardar hasta 48-78 horas en propagarse.","emailDnsChangesNote":"Por favor ten en cuenta que, después de agregar registros DNS, los cambios pueden tardar hasta 48 horas en propagarse. Durante este tiempo, los correos se enviarán desde la dirección de correo actual.","configureDnsForEmail":"Configurar DNS para dominio de correo","connectDomainDns":"Conecta tu dominio a través de tu proveedor DNS","followInstructions":"Sigue las instrucciones a continuación para configurar los registros DNS.","addRecordsInProvider":"Agrega estos registros en el panel de tu proveedor para completar la configuración.","done":"Listo","needHelp":"¿Necesitas ayuda? Crea un ticket en ","supportSystem":"sistema de soporte","urlUpdated":"URL actualizada","customUrlRemoved":"URL personalizada eliminada. Tu app ahora está disponible en {{url}}","appAvailableAt":"Tu app ahora está disponible en {{url}}","urlAlreadyTaken":"Esta URL ya está en uso. Prueba una de las sugerencias o ingresa otra URL.","urlAlreadyTakenNoSuggestions":"Esta URL ya está en uso. Por favor, intenta con otra URL.","suggestedAlternatives":"Alternativas disponibles:","urlReserved":"Esta URL está reservada. Por favor, intenta con otra.","urlInvalid":"Esta URL no es válida. Por favor, intenta con otra.","slugInvalidClient":"Esta URL no es válida. Usa solo letras minúsculas, números y guiones.","slugResetToDefault":"Slug restablecido al valor predeterminado","errorResettingSlug":"Error al restablecer slug","failedResetSlug":"Error al restablecer al slug predeterminado","editUrlTitle":"Editar URL","builtInDomainLabel":"URL integrada de Base44","resetToDefault":"Restablecer al valor predeterminado","urlEditingRequiresPlan":"La edición de URL requiere un plan starter. ","upgradeToPremium":"Mejorar a Premium","changing":"Cambiando...","change":"Cambiar","emailDomain":"Dominio de correo","sendingFromDefault":"Enviar desde el dominio predeterminado cuesta 1 crédito de integración por correo. Usar un dominio personalizado cuesta 2 créditos de integración.","useCustomDomain":"Usa tu dominio personalizado","sendingFrom":"Nombre del Remitente: {{name}}","connectDomainForCustom":"Conecta un dominio para usar una dirección de remitente personalizada.","buyADomain":"Comprar un dominio","dnsConfiguration":"Configuración DNS","pleaseWaitTryAgain":"Por favor, espera un momento e intenta de nuevo.","dnsConfigFailed":"La configuración DNS falló","dnsPleaseTryLater":"Por favor, intenta de nuevo más tarde.","verificationFailed":"La verificación falló","dnsNotVerified":"Los registros DNS aún no se han verificado. Por favor, revisa tu configuración DNS e intenta de nuevo.","domainVerificationFailed":"La verificación del dominio falló","couldntVerifyDns":"No pudimos verificar tus registros DNS. Por favor, revÃsalos e intenta de nuevo.","completeSetup":"Completar Configuración","opening":"Abriendo...","cancelling":"Cancelando...","connectionFailed":"La conexión falló","retry":"Reintentar","retrying":"Reintentando...","couldntCompleteDns":"No se pudo completar la configuración DNS. Por favor, intenta de nuevo.","couldntConnectEmail":"No se pudo conectar el dominio al proveedor de correo. Por favor, intenta de nuevo.","pendingVerification":"Verificación pendiente","emailBeingVerified":"Tu dirección de correo está siendo verificada.","makeSureDnsCorrect":"Asegúrate de que los registros DNS se hayan agregado correctamente a tu proveedor de dominio.","verify":"Verificar","notConfigured":"No Configurado","active":"Activo","editSenderDetailsAction":"Editar Datos del Remitente","detachCustomDomain":"Desconectar dominio personalizado","suspended":"Suspendido","disabled":"Deshabilitado","blocked":"Bloqueado","propagationBlocked":"Propagación Bloqueada","propagationBlockedTooltip":"La propagación DNS puede tardar. Compara tus registros DNS con nuestras instrucciones si algo sigue fallando.","pendingConnection":"Conexión pendiente","completeSetupToSend":"Completa la configuración para empezar a enviar correos desde tu dominio. Los correos actualmente se envÃan desde ","emailCurrentlySentFrom":"Tu dirección de correo está siendo verificada. Los correos actualmente se envÃan desde ","dnsNotVerifiedYet":"Los registros DNS aún no han sido verificados. Asegúrate de que estén configurados correctamente y luego haz clic en 'Verificar'.","couldntConnectMakeSure":"No se pudo conectar el dominio al proveedor de correo. Asegúrate de que los registros DNS se hayan agregado correctamente a tu proveedor de dominio e intenta de nuevo.","base44Domain":"Dominio Base44","maxDomainsReached":"Se alcanzó el máximo de {{max}} dominios para esta app","viewDnsRecords":"Ver registros DNS","upgradeBannerText":"Los dominios personalizados requieren un plan Builder o superior. Actualiza para habilitarlos.","upgradeToUseDomain":"Actualiza tu plan para usar este dominio.","emailDomainPurchasedOnly":"La configuración del dominio de correo actualmente solo está disponible para dominios comprados a través de Base44.","save":"Guardar","urlHint":"Usa solo letras minúsculas, números y guiones","copyUrl":"Copiar URL","builtInUrlTooltip":"Tu app siempre estará disponible en esta URL.","builderPlanRequired":"Esta caracterÃstica está disponible en nuestro plan Builder y superiores.","somethingWentWrong":"Algo salió mal","failedToGetPurchaseConfig":"No se pudo obtener la configuración de compra","errorEnablingEmail":"Error al habilitar correo","failedToEnableEmail":"No se pudo habilitar el correo","errorUpdatingSenderDetails":"Error al actualizar datos del remitente","failedToUpdateSenderDetails":"No se pudieron actualizar los datos del remitente","errorReplacingDomain":"Error al reemplazar dominio","failedToReplaceDomain":"No se pudo reemplazar el dominio","failedToAddDomain":"No se pudo agregar el dominio","processingPurchase":"Procesando compra...","subscriptionRequired":"Suscripción Requerida"}`),aO={domains:tO},nO={title:"Explorador de registros",subtitle:"Monitorea los registros del sistema de tu aplicación.",refresh:"Actualizar",loadingLogs:"Cargando registros...",pleaseWait:"Por favor espera mientras obtenemos tus registros",failedToLoad:"Error al cargar registros",errorFetching:"Hubo un error al obtener los registros. Por favor, intenta de nuevo.",noLogsMatchFilters:"Ningún registro coincide con tus filtros",tryAdjusting:"Intenta ajustar tus filtros",noLogsFound:"No se encontraron registros",logsWillAppear:"Los registros aparecerán aquà cuando ocurra actividad",tryAgain:"Intentar de nuevo",resetFilters:"Restablecer filtros",details:"Detalles",outputs:"Resultados",errorTab:"Error",noAdditionalDetails:"No hay detalles adicionales disponibles.",clearFilters:"Limpiar filtros",filterByEmail:"Filtrar por correo...",errorsOnly:"Solo errores",allEvents:"Todos los Eventos",typeColumn:"Tipo",userColumn:"Usuario",timestamp:"Marca de tiempo"},iO={title:"AnalÃticas",publishToCollect:"Publica tu app para comenzar a recopilar datos."},rO={title:"Documentación API",subtitle:"Referencia completa de la API de tu app. Usa la especificación OpenAPI con cualquier cliente API o herramienta de documentación.",downloadSpec:"Descargar especificación OpenAPI",copyForLLM:"Copiar para IA",copyForLLMTooltip:"Copiar documentación Markdown amigable para IA al portapapeles",copied:"¡Copiado!",codeExamplesIn:"Ejemplos de código en:",authTitle:"Autenticación",authDescription:"Todas las solicitudes API requieren un encabezado api_key. Puedes encontrar tu clave API en tu perfil de usuario, o recuperarla programáticamente con User.me() en el SDK de la app.",sdkAuthDescription:"Instala el SDK de Base44 e inicializa el cliente con el ID de tu app. El SDK gestiona la autenticación y proporciona métodos tipados para todas las operaciones de entidades y funciones backend.",entitiesTitle:"Endpoints de Entidades",schema:"Esquema",endpoints:"Endpoints",copyAll:"Copiar todo",copyEntity:"Copiar entidad",functionsTitle:"Funciones Backend",functionsDescription:"Invoca tus funciones backend desplegadas vÃa HTTP. Cada función acepta cualquier payload JSON y devuelve la respuesta de la función.",agentTitle:"Agente de App",agentDescription:"Interactúa con el agente de IA de tu app a través de conversaciones. Crea una conversación, envÃa mensajes y recibe respuestas del agente.",copy:"Copiar",parameters:"Parámetros",loading:"Cargando documentación de la API...",error:"Error al cargar la documentación de la API. Inténtalo de nuevo."},oO={logs:nO,analytics:iO,api:rO},sO={error:"Error",appStillLoading:"La app aún está cargando... nombre no actualizado",appNameEmpty:"El nombre de la app no puede estar vacÃo",removedFromFavorites:"Eliminado de favoritos",addedToFavorites:"Agregado a favoritos",removedDescription:"App eliminada de tu lista de favoritos",addedDescription:"App agregada a tu lista de favoritos",descriptionUpdated:"Descripción actualizada",descriptionUpdatedMsg:"La descripción de tu app ha sido actualizada exitosamente",failedUpdateDescription:"Error al actualizar la descripción de la app",openApp:"Abrir App",shareApp:"Compartir App",winFreeCredits:"¡gana créditos gratis!",appVisibility:"Visibilidad de la App",controlAccess:"Controla quién puede acceder a tu aplicación",inviteUsers:"Invitar usuarios",growUserBase:"Haz crecer tu base de usuarios invitando a otros",copyLink:"Copiar enlace",copied:"¡Copiado!",sendInvites:"Enviar invitaciones",paymentsViaStripe:"Pagos con Stripe",pendingSetup:"Configuración Pendiente",completeSetupGuide:"Completa la guÃa de configuración para aceptar pagos reales",live:"Activo",testModeMessage:"Aún estás en modo de prueba. Completa la configuración para empezar a recibir pagos.",readyForPayments:"Tu app está lista para aceptar pagos con Stripe.",continueSetup:"Continuar Configuración",payments:"Pagos",poweredByWix:"Proporcionado por Wix",manage:"Gestionar",openingWixPayments:"Abriendo Wix Payments...",wixPaymentsErrors:{noUrl:"No se pudo obtener la URL de Wix Payments. Inténtalo de nuevo.",fetchFailed:"No se pudo abrir Wix Payments. Inténtalo de nuevo.",invalidRedirect:"No se pudo abrir Wix Payments. Inténtalo de nuevo."},disconnected:"Desconectado",wixPaymentsDashboardError:"No se pudo abrir el panel de Wix Payments",platformBadge:"Insignia de Plataforma",badgeVisible:'La insignia "Editar con Base44" es actualmente visible en tu app.',hideBadge:"Ocultar Insignia",editAppNameAccessibilityLabel:"Editar tÃtulo",editAppDescription:"Editar Descripción de la App",descriptionPrompt:"Proporciona una breve descripción del propósito y funcionalidad de tu app.",describeYourApp:"Describe tu app...",cancel:"Cancelar",save:"Guardar",created:"Creado {{time}}"},lO={overview:sO},cO={title:"Seguridad de la App",subtitle:"Configura polÃticas de seguridad a nivel de fila para controlar quién puede acceder a los datos de tu app",scanIssues:"Escanear problemas",scanTime:"El escaneo normalmente toma unos minutos en completarse",scanning:"Escaneando",startSecurityCheck:"Verificación de seguridad",scanResults:"Resultados del Escaneo",rlsRecommendations:"Recomendaciones RLS",rlsRecommendationsFound:"{{count}} recomendación(es) RLS encontrada(s),",viewRecommendations:"Ver recomendaciones",noRlsRecommendations:"No se encontraron recomendaciones RLS",secrets:"Secretos",exposedSecretsFound:"{{count}} secreto(s) expuesto(s) encontrado(s)",noExposedSecrets:"No se encontraron secretos expuestos",backendFunctions:"Funciones Backend",unauthenticatedFunctions:"{{count}} función(es) backend sin autenticación encontrada(s)",noUnauthenticatedFunctions:"No se encontraron funciones backend sin autenticación",dataEntities:"Entidades de Datos",entitiesCount:"{{count}} entidades",scanComplete:"Escaneo de seguridad completado",reviewFindings:"Revisa los hallazgos a continuación.",scanFailed:"Escaneo de seguridad fallido",ruleSaved:"Regla guardada para {{entity}}",ruleSavedMsg:"La regla recomendada ha sido guardada.",failedToSaveRule:"Error al guardar regla",createAccess:"Acceso de Creación",readAccess:"Acceso de Lectura",updateAccess:"Acceso de Actualización",deleteAccess:"Acceso de Eliminación",removeAllRules:"Eliminar Todas las Reglas de Seguridad",removeAllRulesConfirm:"Esto eliminará todas las reglas de seguridad para esta entidad, permitiendo que todos los usuarios accedan a todos los registros. ¿Estás seguro de que quieres continuar?",removeAllRulesBtn:"Eliminar Todas las Reglas",securityRules:"Reglas de Seguridad: {{entity}}",securityRulesTitle:"Reglas de Seguridad",securityRulesDesc:"Crea reglas para controlar quién puede leer y escribir registros. Múltiples reglas se combinan con lógica OR.",publicAccess:"Acceso Público",publicAccessDesc:"Actualmente todos los usuarios pueden acceder a todos los registros en esta entidad. No hay restricciones de acceso.",createAccessRules:"Crear Reglas de Acceso",create:"Crear",read:"Leer",update:"Actualizar",deleteAction:"Eliminar",crudRules:"Reglas de {{crud}}",addRule:"Agregar Regla",generatedRules:"Reglas de {{crud}} Generadas (JSON)",saveSecurityRules:"Guardar Reglas de Seguridad",crudAccessRules:"Reglas de acceso de {{crud}}",configurePermissions:"Configurar permisos para cada acción",generatedJsonPreview:"JSON Generado (Vista previa)",saveRules:"Guardar Reglas",rlsRecommendation:"Recomendación RLS",dismiss:"Descartar",applyFixes:"Aplicar Correcciones",restricted:"Restringido",public:"Público",fullAccess:"Todos los usuarios tienen acceso completo",createLabel:"Crear:",readLabel:"Leer:",updateLabel:"Actualizar:",deleteLabel:"Eliminar:",noRestrictions:"Sin Restricciones",allUsersCanAccess:"Todos los usuarios pueden acceder a los registros",creatorOnly:"Solo el Creador",creatorOnlyDesc:"Los usuarios solo pueden acceder a los registros que crearon",entityUserComparison:"Comparación de Campo Entidad-Usuario",entityUserComparisonDesc:"Compara un campo en esta entidad con una propiedad del usuario",entityField:"Campo de Entidad",fieldInEntity:"Campo en la entidad para comparar",userField:"Campo de Usuario",fieldFromUser:"Campo del usuario para comparar",userPropertyCheck:"Verificación de Propiedad de Usuario",userPropertyCheckDesc:"Verifica si una propiedad del usuario coincide con un valor especÃfico",userProperty:"Propiedad de Usuario",selectUserProperty:"Seleccionar propiedad de usuario",userRole:"Rol de Usuario",userEmail:"Correo del Usuario",fullName:"Nombre Completo",requiredValue:"Valor Requerido",selectRole:"Seleccionar rol",adminRole:"Admin",userRoleOption:"Usuario",noRestrictionsLabel:"Sin restricciones",creatorOnlyLabel:"Solo el creador",adminOnlyLabel:"Solo admin",filePath:"Archivo: {{path}}",severityCritical:"CrÃtico",severityHigh:"Alto",securityScanLabel:"Escaneo de Seguridad",upToDate:"Actualizado",upToDateTooltip:"No se han realizado cambios que afecten la seguridad desde la última verificación",outOfDate:"Desactualizado",outOfDateTooltip:"Se han realizado cambios que afectan la seguridad desde la última verificación. Ejecuta un nuevo escaneo de seguridad.",runSecurityScan:"Ejecutar Escaneo de Seguridad",securityPageTitle:"Seguridad",securityPageSubtitle:"Gestiona tus permisos y reglas de seguridad. <a>Más información <icon/></a>",issuesDetails:"Detalles de problemas",rlsIssuesTitle_one:"{{count}} Problema de RLS",rlsIssuesTitle_other:"{{count}} Problemas de RLS",rlsIssuesSubtitle:"Habilita la seguridad a nivel de fila para proteger tus datos",exposedSecretsTitle_one:"{{count}} Secreto Expuesto",exposedSecretsTitle_other:"{{count}} Secretos Expuestos",exposedSecretsSubtitle:"Asegura y rota cualquier secreto expuesto para mantener tu aplicación y datos seguros.",unauthBackendTitle_one:"{{count}} Función Backend sin Autenticación",unauthBackendTitle_other:"{{count}} Funciones Backend sin Autenticación",unauthBackendSubtitle:"Protege los endpoints de tareas backend con autenticación.",noIssuesFound:"No se encontraron problemas. La seguridad de tu app se ve bien, pero revÃsala regularmente para mantenerte protegido.",recommendedRulesLabel:"Reglas recomendadas:",fix:"Corregir",fixAll:"Corregir Todo",missingRlsRules:"{{entity}} no tiene reglas RLS",customizeSuggestion:"Personalizar sugerencia",goToEntityPage:"Ir a la página de la entidad",ruleColumnHeader:"Regla",allUsers:"Todos los usuarios",fieldComparison:"Comparación de Campo",noScanTitle:"Comprueba la seguridad de tu app",noScanDescription:"Revisa tu configuración, identifica posibles riesgos y aprende cómo fortalecer la protección de tu app",checkSecurity:"Verificar seguridad",back:"Volver",cancel:"Cancelar"},dO={title:"Secretos de la Aplicación",secretDeleted:"Secreto eliminado",errorDeletingSecret:"Error al eliminar secreto",secretUpdated:"Secreto actualizado",errorUpdatingSecret:"Error al actualizar secreto",newSecretValue:"Nuevo valor del secreto",save:"Guardar",cancel:"Cancelar",addSecret:"Agregar Secreto",addNewSecret:"Agregar Nuevo Secreto",addNewSecretDescription:"Ingresa el nombre y valor de tu secreto a continuación. Los secretos se cifran y almacenan de forma segura.",secretName:"Nombre del Secreto",secretNamePlaceholder:"Ingresa nombre del secreto (ej. API_KEY)",secretNameNoSpaces:"El nombre del secreto no puede contener espacios. Usa guiones bajos (ej. API_KEY).",secretValue:"Valor del Secreto",secretValuePlaceholder:"Ingresa valor del secreto",adding:"Agregando...",aboutSecretsManagement:"Sobre la Gestión de Secretos",secretsDescription:"Los secretos son variables de entorno que contienen información sensible como claves API, tokens y contraseñas. Se cifran en reposo y se inyectan de forma segura en tu aplicación en tiempo de ejecución.",secretsBullet1:"Los secretos son usados por tus funciones backend para acceder a servicios externos",secretsBullet2:"Todos los secretos se cifran y almacenan de forma segura",secretsBullet3:"Puedes agregar, actualizar o eliminar secretos según sea necesario para tu aplicación",needHelp:"¿Necesitas ayuda?",supportSystem:"Abre un ticket de soporte",configuredSecrets:"Secretos Configurados",noSecretsYet:"No hay secretos configurados aún. Agrega tu primer secreto para comenzar.",secretAddedSuccessfully:"Secreto agregado exitosamente",errorCreatingSecret:"Error al crear secreto",errorFetchingSecrets:"Error al obtener secretos"},uO={security:cO,secrets:dO},pO={mainPage:"Página Principal",mainPageDesc:"Establece la página de inicio predeterminada para tu app",selectMainPage:"Seleccionar página principal",appVisibility:"Visibilidad de la App",controlAccess:"Controla quién puede acceder a tu aplicación",platformBadge:"Insignia de Plataforma",platformBadgeDesc:'Muestra u oculta la insignia "Editar con Base44" en tu app.',onlyForPaying:"Disponible solo para usuarios con suscripción.",upgradeNow:"Mejorar ahora",visible:"Visible",hidden:"Oculto",hideEntityCreator:"Ocultar Creador de Entidad",hideEntityCreatorDesc:'Oculta quién creó cada registro en las tablas de datos de tu app. Cuando se habilita, el campo "creado por" no se mostrará a los usuarios.',aiAgents:"Agentes IA",aiAgentsDesc:"Crea agentes IA en tu app usando la infraestructura de agentes IA de Base44",aiAgentsEnabled:"Agentes IA Habilitados",aiAgentsEnabledDesc:"Tu app ahora tiene acceso a la infraestructura de agentes IA de Base44. Puedes crear agentes inteligentes que ayuden a los usuarios con diversas tareas, respondan preguntas e interactúen con los datos de tu app. Usa el chat para construir y configurar tus agentes.",testData:"Datos de Prueba",testDataDesc:"Usa datos de prueba para probar cambios de forma segura sin afectar los datos en producción.",onlyForBuilder:"Disponible solo para el plan Builder y superiores.",testDataVersionNote:"Para usar esto, necesitarás una versión más reciente de tu app. Solo haz cualquier cambio — envÃa un mensaje a la IA, modifica algo de código o usa el editor visual — y estarás listo.",cloneApp:"Clonar App",cloneAppDesc:"Crea un duplicado de esta app",githubConnectionIssue:"Problema de conexión con GitHub. Por favor, reconecta para clonar esta app.",cantCloneOldInfra:`No puedes clonar una app en la infraestructura antigua.
Actualiza la infraestructura para clonar tu app.`,createCopy:"Crear Copia",backendFunctions:"Funciones Backend",backendFunctionsDesc:"Habilita funcionalidad del lado del servidor - Recomendado para desarrolladores",activating:"Activando...",activated:"Activado",activate:"Activar",upgradePlan:"Mejorar Plan",dangerZone:"Zona de Peligro",dangerZoneDesc:"Acciones irreversibles que afectan tu app",deleteApp:"Eliminar App",deleteAppDesc:"Elimina permanentemente esta app y todos sus datos",adminControls:"Controles de Admin",adminControlsDesc:"Gestionar disponibilidad de la app",unblockApp:"Desbloquear App",blockApp:"Bloquear App",appLogo:"Logo de la App",editLogo:"Editar Logo",appDescription:"Descripción de la App",saveDescription:"Guardar Descripción",describeYourApp:"Describe tu app..."},mO={editAppLogo:"Editar Logo de la App",uploadLogo:"Subir Logo",generateLogo:"Generar Logo",dragAndDrop:"Arrastra y suelta o haz clic para subir",clickToUpload:"Haz clic para subir o arrastra y suelta",pngJpgLimit:"PNG, JPG hasta 5MB",upload:"Subir",whatShouldLook:"¿Cómo deberÃa verse tu logo?",generating:"Generando...",generateNew:"Generar nuevo logo",cancel:"Cancelar",save:"Guardar",logoPrompt:"Prompt de Generación de Logo",describeLogo:"Describe cómo quieres que se vea tu logo",uploading:"Subiendo...",selectImage:"Seleccionar Imagen"},gO={removeListingConfirm:"¿Estás seguro de que quieres eliminar esta publicación? Esta acción la eliminará de las Plantillas de Apps.",listingRemoved:"Publicación eliminada del catálogo exitosamente",appTemplates:"Plantillas de Apps",listedFor:"Publicado por ${{price}} - {{sales}} ventas - {{status}}",manageTemplate:"Gestiona tu publicación de plantilla",shareTemplate:"Comparte tu plantilla con la comunidad para que otros puedan descubrirla y usarla.",manageListing:"Gestionar Publicación",publishToTemplates:"Publicar en Plantillas de Apps",seeOnTemplates:"Ver en Plantillas de Apps",removingListing:"Eliminando...",removeFromTemplates:"Eliminar de Plantillas de Apps",salesRevenue:"{{sales}} ventas - ${{revenue}} ingresos",publishedToTemplates:"Publicado en Plantillas de Apps",rejectedReason:"Razón de Rechazo: {{reason}}"},hO={public:"Público",private:"Privado",workspace:"Espacio de Trabajo",requireLogin:"Requiere inicio de sesión para acceder"},fO={notAvailableOnMobile:"La gestión de {{feature}} no está disponible en dispositivos móviles",loginFromDesktop:"Por favor, inicia sesión desde un navegador de escritorio",okay:"Entendido",domains:"dominios",security:"seguridad",code:"código",apiFeature:"API",templates:"plantillas"},vO={settings:pO,logo:mO,catalog:gO,visibility:hO,desktop:fO},bO={title:"Usuarios",subtitle:"Gestiona los usuarios de la app y sus roles",inviteUser:"Invitar Usuario",schema:"Esquema",searchByEmailOrName:"Buscar por correo o nombre",pendingRequests:"Solicitudes pendientes",userSchemaEditor:"Editor de Esquema de Usuario",editUser:"Editar Usuario",loadingUsers:"Cargando usuarios...",noUsersFound:"No se encontraron usuarios",noPendingRequests:"No hay solicitudes pendientes",noPendingRequestsDesc:"Actualmente no hay solicitudes de acceso esperando aprobación",inviteYourFirstUser:"Invita a tu primer usuario",getStartedByInviting:"Comienza invitando a tu primer usuario a la app.",tryAdjustingSearch:"Intenta ajustar tu búsqueda o filtros para encontrar lo que buscas.",moreActions:"Más acciones",resendInvitation:"Reenviar invitación",cancelInvite:"Cancelar invitación",editUserAction:"Editar usuario",changeOwner:"Cambiar propietario",makeAppOwner:"Hacer propietario de la app",resendOwnershipRequest:"Reenviar solicitud de propiedad",cancelOwnershipRequest:"Cancelar solicitud de propiedad",changeRole:"Cambiar rol",selectNewRole:"Selecciona un nuevo rol para {{name}}:",back:"Volver",manageInvitation:"Gestionar invitación",approve:"Aprobar",reject:"Rechazar",unknown:"Desconocido",admin:"Admin",user:"Usuario",allRoles:"todos los roles",name:"Nombre",owner:"Propietario",pendingOwnership:"Propiedad pendiente",role:"Rol",email:"Correo electrónico",hasntLoggedIn:"{{role}} aún no ha iniciado sesión en la app.",userRemovedSuccess:"Usuario eliminado exitosamente",failedCancelInvitation:"Error al cancelar la invitación",userLoggedInSinceRefresh:"Este usuario ha iniciado sesión desde tu última actualización. Actualiza la página para ver su estado actualizado antes de intentar de nuevo.",failedRemoveUser:"Error al eliminar usuario",subscriptionRequired:"Suscripción Requerida",onlyPayingCanAdmin:"Solo los usuarios con suscripción pueden hacer administradores a otros usuarios.",upgradeSubscription:"Mejora tu suscripción",toContinue:"para continuar.",userUpdatedSuccess:"Usuario actualizado exitosamente",userApprovedSuccess:"Usuario aprobado exitosamente",failedApproveRequest:"Error al aprobar la solicitud de acceso",invitationRejected:"Invitación rechazada",failedDenyRequest:"Error al rechazar la solicitud de acceso",invitationResentSuccess:"Invitación reenviada exitosamente",failedResendInvitation:"Error al reenviar la invitación",emailSent:"Correo enviado",ownershipTransferResent:"La invitación de transferencia de propiedad ha sido reenviada.",transferCancelled:"Transferencia cancelada",ownershipTransferCancelled:"La transferencia de propiedad ha sido cancelada.",failedCancelTransfer:"Error al cancelar la transferencia",cancelInviteAction:"Cancelar invitación",removeUser:"Eliminar usuario",failedApproveUser:"Error al aprobar usuario",success:"Éxito",error:"Error",save:"Guardar",deleteConfirm:"¿Estás seguro de que quieres eliminar este registro?",deleteFailed:"Error al eliminar"},yO={users:bO},kO="Contenido social",wO="Obtén un plan de promoción social y contenido listo para publicar.",AO="Cargando contenido social",SO={title:"Algo salió mal",description:"Ocurrió un error inesperado. Por favor, actualiza la página.",tryAgain:"Intentar de nuevo"},CO={emptyTitle:"Promociona tu app en redes sociales",emptyDescription:"Analizaremos tu app y crearemos publicaciones listas para compartir en redes sociales.",getStarted:"Crear mi plan de contenido",learnMore:"Más información",emptyCheck1:"Define lo que quieres lograr",emptyCheck2:"Elige los mejores canales para tu app",emptyCheck3:"Obtén ideas de posts personalizadas listas para compartir",analyzingBase:"Analizando tu app",analyzingDescription:"Conociendo tu app: qué hace, para quién es y cómo promocionarla.",combiningBase:"Creando tu estrategia de contenido",combiningDescription:"Estamos dando forma a tu mensaje y eligiendo los canales adecuados para tu lanzamiento.",planStep1:"Aplicando tu estrategia",planStep2:"Adaptando contenido para cada plataforma",planStep3:"Escribiendo los textos de los posts",planStep4:"Creando imágenes para tus publicaciones",stepOf:"Paso {{current}} de {{total}}"},DO={letsGo:"¡Vamos!",next:"Siguiente",back:"Atrás",creatingPlan:"Creando tu contenido...",creatingPlanBase:"Creando tu contenido",strategyReady:"Estrategia sugerida"},TO={emptyTitle:"¿Listo para promocionar tu app?",emptyDescription:"Responde las preguntas para personalizar tu contenido.",generateNewPlan:"Generar nuevo plan",downloadContent:"Descargar contenido",downloading:"Descargando...",startFresh:"Empezar de nuevo"},EO={copy:"Copiar",copied:"Copiado",copiedToClipboard:"Copiado al portapapeles",failedToCopy:"Error al copiar",cancel:"Cancelar",save:"Guardar",imageGenerationFailed:"Error al generar la imagen",retryImage:"Intentar de nuevo",download:"Descargar imagen",expandImage:"Ver tamaño completo",close:"Cerrar",regenerateImage:"Regenerar imagen",imageRefinePlaceholder:"¿Qué te gustarÃa cambiar?",imageAlt:"Visual de la publicación",share:"Compartir",editPostTitle:"Editar publicación",descriptionLabel:"Descripción",imageLabel:"Imagen",improveWithAI:"Mejorar con IA",refineInputPlaceholder:"¿Qué te gustarÃa cambiar?",saveChanges:"Guardar cambios"},PO={handle:"tuperfil",displayName:"Tu Nombre"},_O={reviewTitle:"Revisa tu estrategia sugerida",goalLabel:"Tu objetivo",approachLabel:"Enfoque sugerido",strategyLabel:"La estrategia",showMore:"Ver más",showLess:"Ver menos",platformsLabel:"Plataformas objetivo",platformsDescription:"Hemos preseleccionado las mejores plataformas para tu negocio.",editSelection:"Editar selección",selectPlatforms:"Elige tus plataformas",maxPlatforms:"Hasta 3 plataformas",toneLabel:"Adaptar tu tono (opcional)",toneDescription:"Pega el enlace de tu perfil social y adaptaremos los posts a tu tono.",generatePosts:"Generar posts"},xO={resetTitle:"¿Generar nuevo plan?",resetDescription:"Generaremos un plan completamente nuevo para ti. Tus publicaciones y ediciones actuales serán reemplazadas y no se podrán recuperar.",cancel:"Cancelar",resetConfirm:"Generar nuevo plan",upgradeTitle:"No hay suficientes créditos de integración",upgradeDescription:"No tienes suficientes créditos de integración para esta acción. Mejora tu plan para obtener más.",upgradeAction:"Mejorar plan"},IO={sendFailed:"Algo salió mal",sendFailedDescription:"No se pudo contactar con la IA. Por favor, inténtalo de nuevo.",postUpdated:"Publicación actualizada",postUpdateFailed:"Error al actualizar la publicación",postRefined:"Publicación refinada",refineFailed:"No se pudo refinar la publicación",refineFailedDescription:"La IA no pudo aplicar los cambios. Inténtalo de nuevo.",imageGenerated:"¡Imagen generada!",imageGenerateFailed:"No se pudo generar la imagen",imageGenerateFailedDescription:"Algo salió mal con la generación. Inténtalo de nuevo.",planReset:"Contenido reiniciado - listo para empezar de nuevo",planResetFailed:"Error al reiniciar",insufficientCredits:"Créditos de integración insuficientes",insufficientCreditsDescription:"Se acabaron tus créditos de integración. Mejora tu plan para obtener más.",downloadPartial:"No se pudo descargar todo el contenido",downloadPartialDescription:"Algunas imágenes no se pudieron descargar. Inténtalo de nuevo."},RO={pageTitle:kO,pageSubtitle:wO,loadingBase:AO,errorBoundary:SO,wizard:CO,steps:DO,toolbox:TO,post:EO,mock:PO,strategy:_O,dialog:xO,toast:IO},zO={overview:"Resumen",users:"Usuarios",data:"Datos",analytics:"AnalÃticas",domains:"Dominios",integrations:"Integraciones",security:"Seguridad",code:"Código",agents:"Agentes",automations:"Automatizaciones",logs:"Registros",api:"API",settings:"Configuración",appSettings:"Configuración de App",authentication:"Autenticación",appTemplate:"Plantilla de App",secrets:"Secretos",backToEditor:"Volver al Editor",codeFiles:"Archivos de código",search:"Buscar...",clearSearch:"Borrar búsqueda",virality:"Contenido social"},MO="Cargando datos de la app...",NO="Papelera: {{entityName}}",FO={issuesFound:"Problemas Encontrados",inComponent:"En el componente {{componentName}}:",resolving:"Resolviendo...",resolveWithAI:"Resolver con IA",noCreditDeduction:"Esta acción no descontará créditos de tu cuenta."},LO={loadingCheckpoint:"Cargando código del checkpoint...",errorFetchingFiles:"Error al obtener archivos",backToPreview:"Volver a la Vista Previa"},jO={letsBuild:"Construyamos Tu App",tellMeCreate:"Dime qué te gustarÃa crear usando el chat",loadingApp:"Cargando tu app",buildingPreview:"Construyendo vista previa",previewPreparing:"La vista previa de tu app se está preparando.",mayTakeMoment:"Esto puede tardar un momento.",previewUnavailable:"Vista previa no disponible",previewCouldntLoad:"No se pudo cargar la vista previa de esta versión.",retryBuild:"Reintentar build",buildingIdea:"Construyendo tu idea",didYouKnow:"¿SabÃas que?",packagePending:"Instalación de Paquete Pendiente",approvePackage:"Por favor, aprueba la instalación del paquete npm en el chat para continuar",loadingPreview:"Cargando vista previa…",refreshPreview:"Actualizar vista previa",capture:{verbDiscovering:"Descubriendo",verbDesigning:"Diseñando",verbBuilding:"Construyendo",verbPolishing:"Puliendo",verbUnveiling:"Revelando",verbStudying:"Estudiando",verbExtracting:"Extrayendo",verbReimagining:"Reimaginando",verbRefining:"Refinando",stageAnalyzingDesign:"Analizando diseño",stageExtractingColorsAndFonts:"Extrayendo colores y fuentes",stageBuildingPages:"Construyendo páginas",stageCreatingComponents:"Creando componentes",stageRefiningDetails:"Refinando detalles",stageAlmostThere:"Casi listo",stageStudyingDesignLanguage:"Estudiando el lenguaje de diseño",stageExtractingColorsAndTypography:"Extrayendo colores y tipografÃa",stageCraftingYourPages:"Creando tus páginas únicas",stageApplyingDesignInspiration:"Aplicando la inspiración de diseño",stageRefiningLookAndFeel:"Refinando la apariencia",yourSite:"tu sitio",aSiteInspiredBy:"un sitio inspirado en <site>{{siteName}}</site>",progress:"Progreso"},figma:{verbFetching:"Obteniendo",verbExtracting:"Extrayendo",verbProcessing:"Procesando",verbTransforming:"Transformando",verbBuilding:"Construyendo",stageReadingDesign:"Leyendo tu diseño de Figma",stageProcessingStructure:"Procesando estructura del diseño",stageHandlingAssets:"Gestionando recursos y generando código",stageApplyingAI:"Aplicando transformación de diseño con IA",stageCompiling:"Compilando y finalizando tu app",yourFigmaDesign:"tu diseño de Figma",defaultName:"Importar de Figma"}},OO={canvas:"Canvas",dashboard:"Panel",preview:"Vista Previa",exitSplitScreen:"Salir del modo de pantalla dividida para vista previa",versionHistory:"Historial de versiones",moreOptions:"Más opciones",filesUsedInPage:"Archivos usados en esta página",seeAllFiles:"Ver todos los archivos",activityMonitor:"Monitor de actividad",exportAsZip:"Exportar proyecto como ZIP",helpCenter:"Centro de Ayuda",actAsUser:"Actuar como usuario",viewAppNewTab:"Vista previa de la versión actual",refreshPreview:"Actualizar vista previa",refresh:"Actualizar",switchToDesktop:"Cambiar a vista de escritorio",switchToMobile:"Cambiar a vista móvil",showChatPanel:"Mostrar panel de chat",hideChatPanel:"Ocultar panel de chat",turnOffTestData:"Desactivar datos de prueba",turnOnTestData:"Activar datos de prueba",shareApp:"Compartir app",shareInviteUsers:"Compartir e invitar usuarios",moreActions:"Más Acciones",inviteCollaborators:"Invitar colaboradores",viewOnly:"Solo lectura",viewOnlyAccess:"Tienes acceso de solo lectura a esta app",upgradeInfraTooltip:"Tu app está lista para una actualización rápida<br/>a la nueva infraestructura.",appOverview:"Resumen de la App",myApp:"Mi App",production:"Producción",test:"Prueba",gitHub:"GitHub",gitHubConnection:"Conexión GitHub",collaborators:"Colaboradores",collaboratorDisplayYou:"{{name}} (Tú)",collaboratorUnknown:"Desconocido",addCollaborator:"Agregar colaborador",saving:"Guardando...",savedAgo:"Guardado hace {{time}}",unsavedChanges_one:"{{count}} cambio sin guardar",unsavedChanges_other:"{{count}} cambios sin guardar",theme:"Tema",themeTitle:"Tema",themeDescription:"Estos colores y fuentes componen tu tema. Los cambios se aplican en todas partes.",themeColors:"Colores",themeFonts:"Fuentes",noThemeColors:"No se encontraron colores de tema",themeSaveChanges:"Guardar y Aplicar",themeCancel:"Cancelar",colorPickerCustom:"Personalizado",colorPickerPalette:"Paleta",fontPickerSearch:"Buscar fuentes...",fontPickerBrandFonts:"Fuentes de marca",fontPickerAllFonts:"Todas las fuentes",fontPickerNoResults:"No se encontraron fuentes",fontPickerSelectFont:"Seleccionar fuente"},BO={desktop:"Escritorio",tablet:"Tableta",mobile:"Móvil",isAvailable:"está disponible",getDomain:"Obtener dominio",connectDomain:"Conectar un dominio personalizado",undo:"Deshacer",redo:"Rehacer",fullscreen:"Pantalla completa",breakpoints:"Puntos de interrupción",splitView:"Vista dividida",exitSplitView:"Salir de vista dividida",exitPreview:"Salir de vista previa"},UO={upgrade:"Mejorar",upgradePlan:"Mejorar plan",percentOff:"{{percent}}% de descuento",limitedTimeOffer:"Oferta de bienvenida por tiempo limitado",getDiscountOff:"Obtén {{discount}} de descuento en planes anuales seleccionados"},qO={viewingVersionHistory:"Viendo Historial de Versiones",buildInProgress:"Build en progreso...",retryBuildToEnable:"Reintentar build para habilitar esta vista",viewApp:"Ver App",viewCode:"Ver Código",restoring:"Restaurando...",restoreThisVersion:"Restaurar Esta Versión",publishing:"Publicando...",publishThisVersion:"Publicar Esta Versión",exit:"Salir",back:"Atrás",publish:"Publicar",restore:"Restaurar",latest:"Más reciente"},VO={actAs:"Actuar como",actingAs:"Estás actuando como",searchUser:"Buscar un usuario especÃfico",anonymousGuest:"Invitado Anónimo",you:"Tú",warningChanges:"Cualquier cambio que hagas se reflejará en los datos del usuario.",carefulChanges:"- ten cuidado, los cambios aquà afectan a este usuario",exitMode:"Salir del modo",noUsersYet:"Aún no tienes usuarios",addOrInvite:"Agrega o invita usuarios para ver cómo funciona tu app para ellos",invite:"Invitar",usersCount:"Usuarios ({{count}})",noMatchingUsers:"No se encontraron usuarios",trySearching:"Intenta buscar por nombre o rol"},$O={pressEnterNavigate:"Presiona Enter para navegar"},WO={publishApp:"Publicar app",publish:"Publicar",publishing:"Publicando...",disabledUntilUpdate:"La publicación está deshabilitada hasta que completes la actualización de infraestructura.",currentlyDisabled:"La publicación está deshabilitada actualmente",codeNotGenerated:"La publicación se habilitará una vez que tu app esté lista",visualEditsSaveWarning:"Algunas ediciones visuales no pudieron guardarse antes de la publicación",republishApp:"Republicar aplicación",lastPublished:"Última publicación {{time}}"},GO={whatToChange:"¿Qué te gustarÃa cambiar?",whatToDiscuss:"¿Qué te gustarÃa discutir?",saveChangesBeforeTyping:"Guarda los cambios antes de escribir",exitEditModeToContinue:"Sal del modo Edición antes de escribir",fetchingFromGitHub:"Obteniendo de GitHub...",viewOnlyAccess:"Tienes acceso de solo lectura",zeroCreditsRemaining:"0 créditos restantes",visualEdit:"Editar",visualEditDisabledAgentRunning:"La edición visual no está disponible mientras el agente está en ejecución",edit:"Editar",discuss:"Discutir",ask:"Editar elemento",editData:"Editar datos",discussMode:"Modo Discusión",discussModeDescription:"Chatea con la IA sobre cualquier tema sin hacer cambios en el código. Usa 0.3 créditos por solicitud.",thought:"Pensó",thoughtWithDuration:"Pensó <duration>durante {{duration}}</duration>",planningNextSteps:"Planificando próximos pasos...",signUpToStartBuilding:"RegÃstrate para empezar a construir...",suggestions:"Sugerencias",latestMessages:"Mensajes recientes",aiModel:"Modelo de IA",aiControls:"Controles de IA",uploadFile:"Subir desde computadora",uploadFileMobile:"Subir desde dispositivo",addFromGoogleDrive:"Subir desde Google Drive",connectorRequestFailed:"No se pudo enviar la solicitud del conector. Por favor, inténtalo de nuevo.",designingYourWebsite:"diseñando tu sitio web...",speechToText:"Reconocimiento de voz",processingAudio:"Procesando audio...",clickToStopRecording:"Clic para detener la grabación"},HO={dialogTitle:"Paleta de comandos del constructor",dialogDescription:"Busca páginas, archivos, entidades, vistas y acciones rápidas dentro del editor.",searchPlaceholder:"Buscar páginas, archivos, entidades, vistas y acciones rápidas...",emptyTitle:"No hay coincidencias",emptyDescription:"Prueba con el nombre de una página, la ruta de un archivo, el nombre de una entidad, una vista del editor o una acción rápida como datos de prueba.",homeSubtitle:"Inicio",navigationSubtitle:"Panel de control",viewSubtitle:"Vista del editor",entityDataSubtitle:"Datos",entityCodeSubtitle:"Código",integrationsSubtitle:"Integraciones",domainSubtitle:"Dominio personalizado",collaboratorsSubtitle:"Colaboradores",helpSubtitle:"Centro de ayuda",publishSubtitle:"Desplegar y compartir",publishNowSubtitle:"Publicar los últimos cambios",versionHistorySubtitle:"Historial de versiones",securitySubtitle:"Seguridad",testDataSubtitle:"Cambiar a datos de prueba",productionDataSubtitle:"Cambiar a datos de producción",backToWorkspace:"Volver al Workspace",switchToPreview:"Cambiar a Vista previa",switchToDashboard:"Cambiar a Panel de control",switchToCode:"Cambiar a Código",switchToCanvas:"Cambiar a Canvas",openEntityData:"Abrir datos de {{entityName}}",openEntityCode:"Abrir código de {{entityName}}",addIntegration:"Añadir integración",addDomain:"Añadir dominio",inviteCollaborator:"Invitar colaborador",getHelp:"Obtener ayuda",publishMyApp:"Publicar mi aplicación",publishNow:"Publicar ahora",versionHistory:"Ver historial de versiones",startSecurityCheck:"Iniciar verificación de seguridad",turnOnTestData:"Activar datos de prueba",turnOffTestData:"Desactivar datos de prueba",groups:{navigate:"Navegar",views:"Vistas",files:"Archivos",entities:"Entidades",actions:"Acciones"}},YO="Vista desconocida",KO="Editor de App",ZO="Beta",JO={title:"Invitar colaboradores",subtitle:"Da acceso a otras personas para editar esta app.",emailPlaceholder:"Ingresa correos, separados por comas",removeIneligible:"Eliminar usuarios no elegibles",appCollaborators:"Colaboradores de la app",you:"(Tú)",owner:"Propietario",moreActions:"Más acciones",makeAppOwner:"Hacer propietario de la app",removeCollaborator:"Eliminar colaborador",resendOwnershipRequest:"Reenviar solicitud de propiedad",getOwnershipLink:"Obtener enlace de propiedad",cancelOwnershipRequest:"Cancelar solicitud de propiedad",ownershipTooltip:"El nuevo propietario debe aceptar la transferencia a través del correo de invitación. La invitación expira en 7 dÃas. Recibirás un correo cuando la transferencia esté completa.",removeTitle:"¿Eliminar este colaborador de tu app?",removeDescription:"Eliminar este colaborador revocará inmediatamente su acceso al editor y le impedirá realizar cambios en la app.",removeAccessOnly:"Solo eliminar acceso de colaborador",removeAccessOnlyDesc:"El usuario seguirá apareciendo en la lista de usuarios",removeEntirely:"Eliminar completamente de la app",removeEntirelyDesc:"El usuario también será eliminado de la lista de usuarios",cancel:"Cancelar",enterEmail:"Por favor ingresa una dirección de correo",invalidEmail:"Correo inválido",invalidEmails:"Una o más direcciones de correo no son válidas, por favor revÃsalas e intenta de nuevo.",cannotInviteOwner:"No puedes invitar al propietario de esta app",alreadyExists:"El colaborador ya existe.",alreadyExist:"Los colaboradores ya existen.",invitationSent:"Invitación de colaborador enviada exitosamente",invitationsSent:"{{count}} invitaciones de colaboradores enviadas exitosamente",removedFromApp:"Colaborador eliminado de la app",accessRemoved:"Acceso de colaborador eliminado",ownershipResent:"Solicitud de propiedad reenviada exitosamente",ownershipLinkCopied:"Enlace de propiedad copiado al portapapeles",ownershipCancelled:"Solicitud de propiedad cancelada",failedToSendInvitation:"No se pudo enviar la invitación",failedToRemoveCollaborator:"No se pudo eliminar al colaborador",failedToResendOwnership:"No se pudo reenviar la solicitud de propiedad",failedToGetOwnershipLink:"No se pudo obtener el enlace de propiedad",failedToCancelOwnership:"No se pudo cancelar la solicitud de propiedad",creditsWarning:"Todos los colaboradores consumen créditos del espacio de trabajo.",notWorkspaceMember:"No es miembro del espacio de trabajo",notMemberDescription_one:"<bold>{{emails}}</bold> no es miembro de este espacio de trabajo.",notMemberDescription_other:"<bold>{{emails}}</bold> no son miembros de este espacio de trabajo.",addAsGuest:"Añadir como invitado",addAsGuestDescription:"El usuario será añadido como invitado con acceso solo a esta app.",addToWorkspace:"Añadir al espacio de trabajo",addToWorkspaceDescription:"Ir a la configuración del espacio de trabajo para añadir como miembro completo.",guestBadge:"Invitado",emailListOverflow:"{{first}} y {{count}} más",pendingInvitationWarning_one:"Este usuario ya tiene una invitación pendiente como miembro del espacio de trabajo. Añadirlo como invitado la reemplazará.",pendingInvitationWarning_other:"{{count}} de estos usuarios ya tienen invitaciones pendientes como miembros del espacio de trabajo. Añadirlos como invitados las reemplazará."},QO={title:"Se han agotado tus créditos de integración",description:"Esto puede afectar a los usuarios de tu app para realizar ciertas acciones.",upgradeLink:"Mejora tu plan para obtener más créditos",dismiss:"Cerrar banner"},XO={gathering:"Recopilando",gathered:"Recopilado",connectorsInformation:"información de conectores",write:"Escribir",writing:"Escribiendo",wrote:"Escrito",generatingImage:"Generando imagen",generatedImage:"Imagen generada",reading:"Leyendo",read:"LeÃdo",deleting:"Eliminando",deleted:"Eliminado",editing:"Editando",edited:"Editado",edit:"Editar",creating:"Creando",created:"Creado",updating:"Actualizando",updated:"Actualizado",update:"Actualizar",delete:"Eliminar",importing:"Importando",imported:"Importado",import:"Importar",searching:"Buscando",searched:"Buscado",searchingForBugs:"Buscando errores...",searchedBugs:"Búsqueda de errores completada",install:"Instalar",installing:"Instalando",installed:"Instalado",analyzing:"Analizando",running:"Ejecutando",failed:"Falló",run:"Ejecutar",settingSecrets:"Configurando secretos",setSecret:"Secreto configurado",setSecrets:"Configurar secretos",testing:"Probando",checking:"Verificando",tested:"Probado",checked:"Verificado",fetching:"Obteniendo",fetched:"Obtenido",waitingForApproval:"Esperando aprobación...",searchedDocsFor:"Documentación buscada para",searchingDocsFor:"Buscando en documentación para",searchedFor:"Buscado",searchingFor:"Buscando",foundResult_one:"{{count}} resultado encontrado",foundResult_other:"{{count}} resultados encontrados",toggling:"Alternando",toggled:"Alternado",listing:"Listando",listed:"Listado",approvalRequired:"Aprobación requerida",changesPending_one:"{{count}} cambio pendiente",changesPending_other:"{{count}} cambios pendientes",approve:"Aprobar",approving:"Aprobando...",reject:"Rechazar",rejected:"rechazado",rejecting:"Rechazando...",approveCount:"Aprobar ({{count}})",rejectAll:"Rechazar todo",previousApproval:"Esta solicitud de aprobación es de un mensaje anterior",query:"Consulta:",updateFallback:"Actualizar {{entityName}}",updateFallbackSingle:"Establecer {{fieldName}} a {{fieldValue}} en {{entityName}}",updateFallbackMultiple:"Establecer {{fieldName}} a {{fieldValue}} (+{{extraFields}} más) en {{entityName}}",deleteFallback:"Eliminar registros de {{entityName}}",updateWith:"Actualizar con:",importComplete:"Importación completa",importingData:"Importando datos...",percentComplete:"{{percent}}% completado",recordsProgress:"{{current}} / {{total}} registros",preparing:"Preparando...",otherToolsAfterApproval:"Otras herramientas se ejecutarán después de la aprobación",loadingConfig:"Cargando configuración...",fetchConfigError:"No se pudo cargar la configuración.",retry:"Reintentar",countPackages:"{{num}} paquetes:",updateAllEntityRecords:"Actualizar todos los registros de <entity>{{entityName}}</entity>",updateEntityRecordsMatching:"Actualizar registros de <entity>{{entityName}}</entity> que coinciden con:",deleteAllEntityRecords:"Eliminar todos los registros de <entity>{{entityName}}</entity>",deleteEntityRecordsMatching:"Eliminar registros de <entity>{{entityName}}</entity> que coinciden con:",importDataFromInto:"Importar datos de <file>{{fileName}}</file> en <entity>{{entityName}}</entity>",importDataFromSheetInto:"Importar datos de <file>{{fileName}}</file> (hoja: <sheet>{{sheetName}}</sheet>) en <entity>{{entityName}}</entity>",countRecordsIntoEntity:"{{num}} registros en <entity>{{entityName}}</entity>",dataIntoEntity:"datos en <entity>{{entityName}}</entity>",countRecordsEntity:"{{num}} registros <entity>{{entityName}}</entity>",allEntityRecords:"todos los registros de <entity>{{entityName}}</entity>",entityRecords:"registros de <entity>{{entityName}}</entity>",grepSearching:'Buscando "{{pattern}}"...',grepSearchComplete:"Búsqueda completada",grepFoundResults_one:"Se encontró {{count}} resultado",grepFoundResults_other:"Se encontraron {{count}} resultados",grepInFiles_one:"en {{count}} archivo",grepInFiles_other:"en {{count}} archivos"},e1={chatOnlyDescription:"Esta configuración ahora solo está disponible a través del chat.",description:"Establece la página de inicio predeterminada para tu app",chatHint:"Para cambiar esto, escribe en el chat:",prompt:"Cambia la página principal a {PageName}",placeholder:"Página principal",copiedToast:"Copiado al portapapeles"},t1={confirmMessage:"¿Estás seguro de que quieres despublicar esta aplicación? Ya no será accesible para los usuarios hasta que la publiques nuevamente.",successTitle:"Éxito",successDescription:"Aplicación despublicada exitosamente",errorTitle:"Error",errorDescription:"Error al despublicar la aplicación",description:"Poner tu aplicación fuera de lÃnea. Puedes volver a publicarla en cualquier momento.",unpublishing:"Despublicando...",button:"Despublicar"},a1={title:"Eliminar app",description:"Esta acción <strong>no se puede</strong> deshacer. Se eliminará permanentemente la app <strong>{{appSlug}}</strong> y todos sus datos.",descriptionSimple:"Se eliminará permanentemente <strong>{{displayName}}</strong>.<br/>Todos los datos, historial, usuarios, dominios e integraciones de la app serán eliminados de forma irreversible. <danger>Esta acción no se puede deshacer.</danger>",confirmLabel:"Para confirmar, escriba <strong>{{appSlug}}</strong> a continuación:",cancel:"Cancelar",deleteButton:"Eliminar esta app",deleting:"Eliminando...",successTitle:"Éxito",successDescription:"App eliminada exitosamente",errorTitle:"Error",errorDescription:"No se pudo eliminar la app"},n1={using:"Usando habilidad {{name}}",failed:"Error al usar la habilidad {{name}}",used:"Habilidad {{name}} usada"},i1={thinkingIdeas:"{{agentName}} está pensando en ideas...",ideasFrom:"Ideas de {{agentName}}"},r1="Creando automatización...",o1="Error al crear la automatización",s1="Automatización",l1=JSON.parse(`{"sidebar":{"chat":"Chat","continueOnWhatsApp":"Continuar en WhatsApp","continueOnTelegram":"Continuar en Telegram","continueOnLine":"Continuar en LINE","continueOnIMessage":"Continuar en iMessage","imessage":"iMessage","brain":"Cerebro","integrations":"Integraciones","knowledge":"Conocimiento","memory":"Memoria","payments":"Pagos","tasks":"Tareas","artifacts":"Artefactos","settings":"Configuración","secretsAndKeys":"Secretos y claves","security":"Seguridad","credits":"Créditos","whatsapp":"WhatsApp","telegram":"Telegram","line":"LINE","files":"Archivos","uploadFile":"Subir archivo","refreshFiles":"Actualizar archivos","searchFiles":"Buscar archivos...","filesFolders":"{{fileCount}} archivos · {{folderCount}} carpetas","toolsPermission":"Permisos de herramientas","apiDocs":"API","channels":"Canales","feedback":"Dejar comentarios","agentSettings":"Configuración del agente","dangerZone":"Zona de peligro"},"filePanel":{"source":"Fuente","preview":"Vista previa","save":"Guardar","saveAndRedeploy":"Guardar y redesplegar","fileSaved":"Archivo guardado","functionRedeployed":"Función guardada y redesplegada","failedToSaveFile":"Error al guardar el archivo","failedToRedeploy":"Error al redesplegar la función","failedToReadFile":"Error al leer el archivo"},"modelPicker":{"automatic":"Automático","automaticDescription":"Se asigna el mejor modelo de IA para cada solicitud","manual":"Manual","manualDescription":"Selecciona un modelo de IA especÃfico.","manualCreditNote":"El uso de créditos puede variar según el modelo","manualDisabledDescription":"Selecciona un modelo de IA especÃfico ({{models}}). Disponible en el plan Builder y superiores.","builderPlus":"Builder+","upgradeToSelect":"Mejora tu plan para seleccionar un modelo de IA"},"chat":{"loadingAgent":"Cargando agente...","agentNotFound":"Agente no encontrado","waitingForAuth":"Esperando token de autenticación...","anErrorOccurred":"Ocurrió un error","aiModelUpdated":"Modelo de IA actualizado","failedToUpdateModel":"Error al actualizar el modelo de IA","hideSidebar":"Ocultar barra lateral","showSidebar":"Mostrar barra lateral","darkMode":"Cambiar a modo oscuro","lightMode":"Cambiar a modo claro","dropFileHere":"Arrastra el archivo aquÃ","imagesDocsAndMore":"Imágenes, documentos y más","loadPreviousMessages":"Cargar mensajes anteriores","somethingWentWrong":"Algo salió mal","retry":"Reintentar","chatFromApp":"Chatea conmigo desde una app que ya usas","attachFile":"Adjuntar archivos","typeMessage":"Escribe un mensaje...","toggleLiveBrowser":"Alternar navegador en vivo","noActiveBrowser":"No hay sesión de navegador activa","stopGenerating":"Detener generación","suggestions":"Sugerencias","liveBrowser":"Navegador en vivo","fullScreen":"Pantalla completa","exitFullScreen":"Salir de pantalla completa","closeBrowser":"Cerrar navegador","live":"En vivo","expandBrowser":"Expandir navegador","failedToStartConversation":"No se pudo iniciar la conversación — intenta enviar un mensaje manualmente.","failedToLoadConversation":"Error al cargar la conversación","failedToUploadFile":"Error al subir el archivo","tooManyFiles":"Puedes adjuntar hasta {{max}} archivos por mensaje","failedToSendMessage":"Error al enviar el mensaje","failedToStopAgent":"Error al detener el agente","queued":"En cola ({{count}})","queueFull":"La cola de mensajes está llena. Espere a que el agente termine.","failedToEditQueued":"Error al editar el mensaje en cola","failedToDeleteQueued":"Error al eliminar el mensaje en cola","deleteMessage":"Eliminar mensaje","failedToDeleteMessage":"Error al eliminar el mensaje","today":"Hoy","yesterday":"Ayer","thinking":"Pensando...","you":"Tú","failedToSubmitToolInput":"Error al enviar la entrada de la herramienta","whatsInImage":"¿Qué hay en esta imagen?","heresAFile":"Aquà tienes un archivo: {{fileName}}","heresAFileAndMore":"Aquà tienes un archivo: {{fileName}} (+{{count}} más)","heresFiles":"Aquà tienes {{count}} archivos","whatsInTheseImages":"¿Qué hay en estas {{count}} imágenes?","creditsRunningLow":"Te estás quedando sin créditos.","purchaseMoreCredits":"Comprar más créditos →","saleDiscount":"Obtén {{discount}} de descuento en planes anuales seleccionados","limitedTimeOffer":"Oferta por tiempo limitado","upgradePlan":"Mejorar plan","reply":"Responder","copyMessage":"Copiar","copied":"Copiado"},"files":{"uploaded":"{{fileName}} subido","failedToUpload":"Error al subir {{fileName}}","failedToRead":"Error al leer {{fileName}}"},"dashboard":{"title":"Panel","subtitle":"Resumen de tu agente.","created":"Creado el {{date}}","memories":"Memorias","filesLabel":"Archivos","folders":"Carpetas","agentMemory":"Memoria del agente","noMemoriesYet":"Aún no hay memorias","noMemoriesDescription":"Tu agente almacenará información aprendida aquà mientras chateas."},"creditsTab":{"title":"Créditos","description":"El uso de créditos y los detalles de facturación aparecerán aquÃ."},"settingsTab":{"settings":"Configuración","secrets":"Secretos","security":"Seguridad","creditCard":"Tarjeta de crédito"},"agentSettingsTab":{"title":"Configuración del agente","subtitle":"Configura cómo opera tu agente.","cloneTitle":"Clonar agente","cloneDescription":"Crea una copia de este agente con toda su configuración, entidades y funciones de backend.","cloneButton":"Clonar agente"},"clonePage":{"back":"Volver","title":"Clonar agente","subtitle":"Elige qué incluir en el agente clonado.","optionChat":"Historial de chat","optionChatDesc":"Copiar el historial de conversación del constructor al nuevo agente.","optionSkills":"Habilidades","optionSkillsDesc":"Copiar funciones backend, integraciones y configuraciones de herramientas.","optionTasks":"Tareas","optionTasksDesc":"Copiar automatizaciones (programadas, basadas en entidades y conectores).","optionSecrets":"Claves API","optionSecretsDesc":"Copiar secretos y claves API almacenados al nuevo agente.","cloneButton":"Clonar agente","cloning":"Clonando...","cloneError":"Error al clonar el agente"},"securityTab":{"title":"Seguridad","subtitle":"Ejecuta un escaneo de seguridad para detectar posibles vulnerabilidades.","scanning":"Escaneando...","runScan":"Ejecutar escaneo de seguridad","noIssues":"No se encontraron problemas","agentSecure":"Tu agente parece seguro.","severityCount":"Severidad {{severity}}","idleMessage":"Haz clic en \\"Ejecutar escaneo de seguridad\\" para verificar tu agente en busca de vulnerabilidades.","scanFailed":"El escaneo de seguridad falló"},"secretsTab":{"title":"Secretos","subtitle":"Variables de entorno disponibles para las funciones backend de tu agente.","noSecrets":"Aún no hay secretos","addSecret":"Agregar un secreto","secretNamePlaceholder":"SECRET_NAME","valuePlaceholder":"valor","add":"Agregar","secretSaved":"Secreto {{name}} guardado","failedToSave":"Error al guardar el secreto","secretDeleted":"Secreto {{name}} eliminado","failedToDelete":"Error al eliminar el secreto","failedToLoad":"Error al cargar los secretos"},"billingTab":{"title":"Tarjeta de crédito del agente","subtitle":"Uso y facturación de tu agente.","monthlyUsage":"Uso mensual","extraCredits":"+{{count}} créditos extra disponibles","pastDue":"Pago vencido","pastDueDescription":"Actualiza tu método de pago para evitar interrupciones del servicio.","goodStanding":"Cuenta al dÃa","currentPeriod":"PerÃodo actual:","nextPeriod":"El próximo perÃodo comienza:","manageBilling":"Gestionar facturación","failedToLoad":"Error al cargar los datos de uso","unableToLoad":"No se pudieron cargar los datos de facturación"},"apiDocsTab":{"title":"Referencia de la API","subtitle":"Usa la API REST para interactuar con tu agente de forma programática. Crea conversaciones, envÃa mensajes y administra la memoria desde cualquier aplicación.","baseUrl":"URL base","authentication":"Autenticación","authDescription":"Incluye tu clave API en el encabezado de la solicitud:","authAlternative":"También puedes pasarla como parámetro de consulta:","quickStart":"Inicio rápido","quickStartDescription":"Sigue estos pasos para empezar a chatear con tu agente a través de la API:","step1CreateConversation":"1. Crear una conversación","step2SendMessage":"2. Enviar un mensaje","step3ListConversations":"3. Listar conversaciones","endpoints":"Endpoints de la API","requestBody":"Cuerpo de la solicitud","listConversationsDesc":"Lista todas las conversaciones del usuario autenticado","listConversationsNote":"Devuelve las conversaciones ordenadas por fecha de creación. Admite paginación mediante parámetros de consulta.","getConversationDesc":"Obtén una conversación especÃfica con todos los mensajes","createConversationDesc":"Crea una nueva conversación con el agente","sendMessageDesc":"EnvÃa un mensaje y obtén la respuesta del agente","sendMessageNote":"El agente procesará el mensaje y devolverá su respuesta. La longitud máxima del mensaje es de 8000 caracteres.","deleteMessageDesc":"Elimina un mensaje especÃfico de una conversación","listMemoryDesc":"Lista los elementos de memoria del agente","deleteMemoryDesc":"Elimina un elemento de memoria especÃfico","responseFormat":"Formato de respuesta","responseFormatDescription":"Las conversaciones se devuelven como objetos JSON que contienen un array de mensajes:","rateLimits":"LÃmites de tasa","rateLimitsDescription":"Las solicitudes a la API están limitadas por usuario. Si superas el lÃmite, recibirás un código de estado 429. Espera un momento y vuelve a intentarlo.","errorCodes":"Códigos de error","error401":"No autorizado - clave API inválida o ausente","error403":"Prohibido - no tienes acceso a este recurso","error400":"Solicitud incorrecta - entrada inválida (p. ej. mensaje demasiado largo)","error404":"No encontrado - la conversación o el recurso no existe","copy":"Copiar"},"toolsPermissionTab":{"title":"Permisos de herramientas","subtitle":"Permitir que operaciones especÃficas se ejecuten sin requerir tu confirmación.","warning":"Cuando está habilitado, el agente realizará estas acciones por su cuenta. Tus reglas de seguridad de datos siguen aplicando.","updateData":"Actualizar datos","updateDataDescription":"Permitir que el agente actualice registros sin preguntar primero.","deleteData":"Eliminar datos","deleteDataDescription":"Permitir que el agente elimine registros sin preguntar primero.","failedToSave":"Error al guardar la configuración","effectNote":"La configuración se aplica de inmediato. Las respuestas de la IA no siempre siguen las reglas a la perfección.","connectorRulesTitle":"Reglas de conectores","connectorRulesSubtitle":"Indica al agente qué puede y qué no puede hacer con cada servicio.","connectorRulePlaceholder":"p. ej., Solo leer correos, nunca enviar ni eliminar","loadingConnectors":"Cargando conectores...","saveRules":"Guardar","rulesSaved":"Reglas de conectores guardadas"},"knowledgeTab":{"noFiles":"Aún no hay archivos de conocimiento","noFilesDescription":"Comienza a chatear con tu agente para construir su identidad y conocimiento","identity":"Identidad"},"memoryTab":{"title":"Memoria","subtitle":"Lo que tu agente sabe sobre ti y tus conversaciones.","emptyTitle":"Aún no hay nada","emptyDescription":"Mientras chateas, tu agente construirá memoria automáticamente — contexto de mensajes recientes, resúmenes de sesiones y datos clave.","addEntry":"Añadir","saveEntry":"Guardar","cancelEdit":"Cancelar","titlePlaceholder":"¿Qué deberÃa recordar el agente?","contentPlaceholder":"Añadir más detalle (opcional)","saved":"Memoria actualizada","failedToSave":"Error al actualizar","factsHeading":"Hechos guardados","factsDescription":"Hechos clave que persisten en todas las conversaciones.","noMemories":"Sin hechos guardados","noMemoriesDescription":"Los hechos importantes se extraen automáticamente de las conversaciones, o puedes añadirlos manualmente.","shortTermHeading":"Memoria a corto plazo","shortTermDescription":"Contexto de la conversación actual, actualizado cada ~10 mensajes.","shortTermUpdated":"Actualizado","shortTermDeleted":"Eliminado","deleteShortTermConfirm":"¿Eliminar este contexto? El agente perderá esta parte del historial de conversación.","longTermHeading":"Sesiones diarias","longTermDescription":"Un resumen de las conversaciones de cada dÃa.","longTermDeleted":"Eliminado","deleteLongTermConfirm":"¿Eliminar la sesión de este dÃa? El agente perderá acceso a este historial de conversación.","messages":"{{count}} msjs","emptyTranscript":"Transcripción vacÃa","noText":"(sin texto)","usedTools":"Usado: {{tools}}"},"telegramTab":{"title":"Telegram","connected":"Tu bot de Telegram está conectado y activo.","notConnected":"Conecta un bot de Telegram para que los usuarios chateen con tu agente.","connectedBot":"Bot conectado","botName":"Nombre del bot","username":"Nombre de usuario","status":"Estado","active":"Activo","verifyBanner":"Haz clic en el botón de abajo para verificar tu identidad en Telegram. Esto asegura que solo tú puedas usar este bot.","verifyOnTelegram":"Verificar en Telegram","openTelegram":"Abrir en Telegram","scanQr":"Escanea el código QR con tu teléfono para abrir el bot en Telegram.","disconnect":"Desconectar","disconnectConfirm":"¿Desconectar este bot de Telegram? Los usuarios ya no recibirán respuestas.","disconnected":"Bot de Telegram desconectado","failedToDisconnect":"Error al desconectar","howItWorks":"Cómo funciona","step1":"Los usuarios abren tu bot en Telegram y envÃan /start para comenzar.","step2":"Cada mensaje de texto es procesado por tu agente.","step3":"La respuesta del agente se envÃa en el chat de Telegram."},"telegramSetup":{"connectTitle":"Conectar Telegram","connectDescription":"Crea un bot de Telegram para tu agente con un solo clic. Se configurará y estará listo para chatear automáticamente.","autoCreateButton":"Conectar bot de Telegram","autoWaitingTitle":"Esperando la creación del bot...","autoWaitingDescription":"Confirma el bot en Telegram y configuraremos todo automáticamente.","autoTimeoutError":"Se agotó el tiempo para crear el bot. Inténtalo de nuevo o usa la configuración manual.","autoExpiredError":"No se pudo crear el bot. Inténtalo de nuevo.","cancel":"Cancelar","alreadyHaveBot":"Ya tengo un token de bot","pasteTokenTitle":"Conectar con token","manualInstructions":"Crea un bot con @BotFather en Telegram y pega el token aquÃ.","tokenPlaceholder":"Pega el token del bot...","tokenExtracted":"Token extraÃdo","tokenNotFound":"No se encontró un token válido","connectBot":"Conectar","connecting":"Conectando...","successTitle":"¡Bot conectado!","openTelegram":"Abrir en Telegram","failedToConnect":"Error al conectar el bot"},"whatsappTab":{"title":"WhatsApp","subtitle":"Permite a los usuarios chatear con tu agente por WhatsApp.","connectTitle":"Conectar WhatsApp","connectDescription":"Haz clic en el botón de abajo para abrir WhatsApp y activar la conexión. Recibirás un código de activación para enviar al número de WhatsApp del agente.","openWhatsApp":"Abrir WhatsApp","scanQr":"Escanea el código QR con tu teléfono para abrir la conversación en WhatsApp.","howItWorks":"Cómo funciona","step1":"Haz clic en \\"Abrir WhatsApp\\" — esto abre WhatsApp con un código de activación prellenado.","step2":"EnvÃa el código de activación para iniciar la conexión.","step3":"Una vez conectado, cualquier mensaje que envÃes en WhatsApp será procesado por tu agente."},"lineTab":{"title":"LINE","subtitle":"Chatea con tu agente en LINE.","connectTitle":"Conectar vÃa LINE","connectDescription":"Genera un código de activación, escanea el QR con tu teléfono para agregar el bot y envÃa el código.","generateCode":"Generar código de activación","scanQrLabel":"Escanear con LINE","scanQrHint":"Abre LINE en tu teléfono y escanea este código QR para agregar el bot.","activationCodeLabel":"Código de activación","sendCodeHint":"Después de agregar el bot, envÃa este código como mensaje para activar.","generating":"Generando...","regenerate":"Generar un nuevo código","codeCopied":"¡Código copiado!","codeExpiry":"Expira en 30 minutos","failedToGenerate":"Error al conectar con LINE","howItWorks":"Cómo funciona","step1":"Haz clic en \\"Generar código de activación\\" para obtener tu código y QR.","step2":"Escanea el código QR con LINE en tu teléfono para agregar el bot como amigo.","step3":"EnvÃa el código de activación como mensaje al bot para conectar."},"imessageTab":{"title":"iMessage","subtitle":"Chat with your agent via iMessage.","connectTitle":"Connect via iMessage","connectDescription":"Click the button below and iMessage will open with the activation code ready to send.","connectButton":"Connect via iMessage","manualFallback":"Didn't open automatically? Send the code manually:","phoneNumberLabel":"Text this number","activationCodeLabel":"Activation code","codeCopied":"Code copied!","codeExpiry":"Expires in 30 minutes","failedToGenerate":"Failed to generate iMessage code","capacityTitle":"iMessage temporarily unavailable","capacityMessage":"iMessage is experiencing unusually high demand right now. Please check back in a few hours — we're working on expanding capacity.","howItWorks":"How it works","step1":"Click \\"Connect via iMessage\\" — your Messages app will open with the activation code pre-filled.","step2":"Send the message and your agent is connected. That's it!"},"pluginsTab":{"builtInServices":"Servicios integrados","builtInSubtitle":"Capacidades de la plataforma disponibles para tu agente por defecto.","base44Backend":"Base44 Backend","alwaysActive":"Siempre activo","base44Description":"Base de datos, funciones, almacenamiento de archivos y automatizaciones","dataEntities":"Datos y entidades","dataEntitiesTool1":"Crear, leer, actualizar, eliminar y filtrar registros de entidades","dataEntitiesTool2":"Seguridad a nivel de fila","backendFunctions":"Funciones backend","backendFunctionsTool1":"Desplegar y llamar funciones serverless de Deno","backendFunctionsTool2":"Gestionar secretos de entorno","fileStorage":"Almacenamiento de archivos","fileStorageTool1":"Subir archivos públicos y privados","fileStorageTool2":"Crear URLs de descarga firmadas","automationsLabel":"Automatizaciones","automationsTool1":"Programar trabajos CRON","automationsTool2":"Triggers de cambio de entidad","connectors":"Conectores","connectorsSubtitle":"Conecta tu agente con las apps y servicios que ya usas.","addConnector":"Agregar conector","close":"Cerrar","noConnectors":"Sin conectores. Agrega uno para dar a tu agente acceso a servicios externos.","connected":"Conectado","available":"Disponibles ({{count}})","allConnected":"Todos los conectores ya están conectados.","revoked":"Revocado","disconnectedStatus":"Desconectado","active":"Activo","switchAccount":"Cambiar cuenta","reconnect":"Reconectar","disconnect":"Desconectar","remove":"Eliminar","connect":"Conectar","connectorConnected":"Conector conectado","connectionCancelled":"Conexión cancelada","connectorDisconnected":"Conector desconectado","failedToDisconnect":"Error al desconectar","connectorRemoved":"Conector eliminado","failedToRemove":"Error al eliminar","openAuthLinkManually":"Abrir enlace de autorización manualmente","connecting":"Conectando...","mcpPlugins":"Plugins MCP","mcpSubtitle":"Conexiones MCP que amplÃan las capacidades de tu agente.","cancel":"Cancelar","addPlugin":"Agregar plugin","noPlugins":"Sin plugins conectados","noPluginsDescription":"Agrega un servidor MCP para dar nuevas herramientas a tu agente.","failedToLoad":"Error al cargar plugins","failedToToggle":"Error al alternar plugin","pluginDeleted":"Plugin eliminado","failedToDelete":"Error al eliminar plugin","pluginAdded":"Plugin agregado","pluginNamePlaceholder":"Nombre del plugin","mcpUrlPlaceholder":"URL del servidor MCP (https://...)","foundTools":"{{count}} herramientas encontradas","connectionTestFailed":"Prueba de conexión fallida","connectedTools":"Conectado — {{count}} herramientas disponibles","connectionFailed":"Conexión fallida","test":"Probar","save":"Guardar","failedToCreate":"Error al crear plugin","enabled":"Habilitado","disabled":"Deshabilitado","toolsCount":"Herramientas ({{count}})","noTools":"Sin herramientas disponibles","toolsFound":"{{count}} herramientas encontradas","testFailed":"Prueba fallida","connectedChatMessage":"Acabo de conectar {{name}} desde el panel de integraciones. ¿Qué puedo hacer con esto?","connectedReadOnlyChatMessage":"Acabo de conectar {{name}} en modo solo lectura desde el panel de integraciones. Solo puede leer datos, no crear ni modificar nada. ¿Qué puedo hacer con esto?","accessModeChangedMessage":"Acabo de cambiar {{name}} al modo {{mode}}. Tenlo en cuenta para futuras acciones.","disconnectedChatMessage":"Acabo de desconectar {{name}} desde el panel de integraciones.","readOnly":"Solo lectura","fullAccess":"Puede gestionar","switchToReadOnly":"Cambiar a solo lectura","switchToFullAccess":"Cambiar a gestionar","searchConnectors":"Buscar conectores...","noSearchResults":"No se encontraron conectores","noSearchResultsDesc":"Prueba con palabras clave diferentes o borra la búsqueda.","noConnectorsYet":"Aún no hay conectores conectados.","base44Official":"Base44 Official","setUp":"Configurar","loadMore":"Cargar {{count}} más","showAll":"Mostrar todos ({{count}})","moreIcons":"+{{count}} más","sort":{"title":"Ordenar","mostUsed":"Más utilizados","recentlyAdded":"Añadidos recientemente","az":"A-Z","za":"Z-A"}},"paymentsTab":{"title":"Pagos","stripeName":"Stripe","description":"Acepta pagos de tus clientes con Stripe.","notConnected":"Stripe no está conectado","connectedDescription":"Enlaces de pago, productos y proceso de pago disponibles.","setupPrompt":"Pide a tu agente en el chat que configure los pagos con Stripe. Te guiará en el proceso.","askInChat":"Preguntar en el chat","sandboxMode":"Sandbox","liveMode":"En vivo","testCard":"Número de tarjeta de prueba","claimAndGoLive":"Reclamar y pasar a producción","remove":"Quitar integración","removeConfirm":"¿Estás seguro?","confirmRemove":"SÃ, quitar","cancel":"Cancelar","removed":"Integración de Stripe eliminada","removeFailed":"Error al eliminar la integración de Stripe","loadFailed":"Error al cargar el estado de pago","setupMessage":"Configura los pagos con Stripe para mi agente"},"integrationsTab":{"tabSkills":"Skills","tabConnectors":"Connectors","skillsTitle":"Skills","skillsSubtitle":"Reusable instructions that give your agent specialized abilities.","addSkill":"Add Skill","noSkills":"No skills yet","noSkillsHint":"Add a skill to teach your agent new capabilities.","installed":"Instalado"},"automationsTab":{"title":"Automatizaciones","subtitle":"Tareas programadas y webhooks.","noAutomations":"Aún no hay automatizaciones","trySuggestions":"Prueba una de las ideas de arriba o pregunta en el chat.","askAgent":"Pide a tu agente en el chat que configure una.","scheduled":"Programada","entityTriggered":"Por cambio de entidad","webhooks":"Webhooks","active":"Activa","paused":"Pausada","details":"Detalles","runNow":"Ejecutar ahora","pause":"Pausar","activate":"Activar","delete":"Eliminar","trigger":"Disparador","instructions":"Instrucciones","taskId":"ID de tarea","parameters":"Parámetros","runHistory":"Historial de ejecución","totalRuns":"{{count}} en total","succeeded":"{{count}} exitosas","failedRuns":"{{count}} fallidas","lastRun":"Última ejecución:","created":"Creado el {{date}}","runsStats":"{{total}} ejecuciones · {{succeeded}} exitosas · {{failed}} fallidas","failedToToggle":"Error al alternar automatización","archive":"Archivar","automationArchived":"Automatización archivada","failedToArchive":"Error al archivar automatización","automationDeleted":"Automatización eliminada","failedToDelete":"Error al eliminar automatización","automationTriggered":"Automatización ejecutada","failedToRun":"Error al ejecutar automatización","failedToLoad":"Error al cargar automatizaciones","consumesCredits":"Consume créditos de mensajes","agentRunsWhenTriggered":"El agente responde al activarse","agentNameRunsWhenTriggered":"{{name}} responde al activarse","creditsUsed":"{{credits}} créditos utilizados","totalCredits":"Total de créditos: {{credits}}","trackingSince":"desde {{date}}","executionLogs":"Registros de ejecución","noLogs":"Aún no hay registros","status":{"success":"éxito","running":"en ejecución","failed":"fallido"},"archived":"Archivadas","noArchivedAutomations":"No hay automatizaciones archivadas","archivedDescription":"Las automatizaciones que archives aparecerán aquÃ.","restore":"Restaurar","automationRestored":"Automatización restaurada","failedToRestore":"Error al restaurar automatización"},"identity":{"updated":"Identidad actualizada","failedToSave":"Error al guardar la identidad","avatar":"Avatar","emoji":"Emoji","setEmoji":"Usar","uploadImage":"Subir imagen","changeImage":"Cambiar","removeImage":"Eliminar imagen","useEmoji":"Usar emoji","name":"Nombre del agente","agentNamePlaceholder":"Nombre del agente","userName":"Tu nombre","userNameDisplay":"Tu nombre: {{name}}","userNamePlaceholder":"Tu nombre","userNameHint":"Cómo te llama el agente","description":"Descripción","descriptionPlaceholder":"¿Qué hace este agente?","unnamedAgent":"Agente sin nombre","cancel":"Cancelar","save":"Guardar","edit":"Editar","rawIdentity":"IDENTITY.md (texto sin formato)","editInEditor":"Editar en el editor","entry":"{{count}} entrada","entries":"{{count}} entradas"},"knowledgeEditor":{"fileUpdated":"El archivo fue actualizado externamente","fileModified":"{{name}} fue modificado. Recarga para ver los cambios.","reload":"Recargar","saved":"{{label}} guardado","failedToSave":"Error al guardar","unsavedChanges":"Tienes cambios sin guardar. ¿Descartarlos?","rawText":"Texto sin formato","readOnly":"Solo lectura","editAnyway":"Editar de todos modos","edit":"Editar","save":"Guardar","startWriting":"Comienza a escribir..."},"knowledgeFiles":{"title":"Archivos de conocimiento","uploading":"Subiendo {{count}} archivo(s)...","new":"Nuevo","fileNamePlaceholder":"nombre-del-archivo","mdExtension":".md","enterFileName":"Ingresa un nombre de archivo","fileExists":"Ya existe un archivo con este nombre","failedToCreate":"Error al crear archivo","unsupportedType":"Tipo de archivo no soportado","failedToUpload":"Error al subir {{name}}","renamedTo":"Renombrado a {{name}}","failedToRename":"Error al renombrar archivo","failedToLoadFile":"Error al cargar archivo","deleteConfirm":"¿Eliminar \\"{{name}}\\"? Esto no se puede deshacer.","failedToDelete":"Error al eliminar archivo","dropOrUpload":"Arrastra archivos aquà o haz clic para subir","supportedTypes":"Documentos, imágenes, CSVs, archivos de código y más","dropOrBrowse":"Arrastra archivos o","browse":"buscar"},"artifacts":{"description":"Pequeñas mini apps para comenzar. Para aplicaciones completas, construye en Base44.","buildFullApp":"Construir una aplicación completa","title":"Artefactos","pageCount_one":"{{count}} página","pageCount_other":"{{count}} páginas","empty":"Aún no hay artefactos","emptyDescription":"Pide a tu agente que cree una mini app y aparecerá aquÃ."},"feedbackModal":{"thankYou":"¡Gracias!","thankYouSubtitle":"Tu opinión nos ayuda a mejorar.","title":"¿Cómo es tu experiencia?","subtitle":"Tu opinión define lo que construimos a continuación.","submitError":"No se pudo enviar la opinión. Inténtalo de nuevo.","placeholder":"Cuéntanos lo que piensas...","sending":"Enviando...","sendFeedback":"Enviar opinión","ratingBad":"Malo","ratingPoor":"Pobre","ratingOkay":"Regular","ratingGood":"Bueno","ratingAmazing":"Me encanta","openSupportTicket":"Abrir un ticket de soporte"},"dangerZoneTab":{"title":"Zona de peligro","subtitle":"Acciones irreversibles para este agente.","deleteTitle":"Eliminar este agente","deleteDescription":"Eliminará permanentemente este agente y todos sus datos, conversaciones, archivos e integraciones. Esta acción no se puede deshacer.","deleteButton":"Eliminar este agente","deleteSuccess":"Agente eliminado correctamente","deleteFailed":"Error al eliminar el agente"}}`),c1={live:"Live",offScreen:"Fuera de pantalla",waiting:"Esperando...",loading:"Cargando...",previewTitle:"Vista previa: {{pageName}}"},d1={main:"principal"},u1={title:"Eliminar agente",description:"Esto eliminará permanentemente <strong>{{displayName}}</strong>.<br/>Todos los datos del agente, conversaciones, archivos e integraciones se borrarán permanentemente. <danger>Esta acción no se puede deshacer.</danger>",cancel:"Cancelar",deleteButton:"Eliminar este agente",deleting:"Eliminando..."},p1={title:"Comparte tu app",subtitle:"Comparte un enlace por correo o en redes sociales",sendInviteLabel:"Enviar invitación",sendInvitation_one:"Enviar invitación",sendInvitation_other:"Enviar invitaciones",invalidEmailsError:"Una o más direcciones de correo no son válidas. Por favor, verifÃcalas e inténtalo de nuevo.",workspaceIneligibleError:"Prueba invitar usuarios de tu espacio de trabajo en su lugar.",nonWorkspaceIneligibleError:"Algunas direcciones de correo no son elegibles para ser invitadas.",removeIneligibleUsers:"Eliminar usuarios no elegibles",inviteSuccessToast:"Invitación de usuario enviada correctamente",inviteErrorToast:"Error al enviar las invitaciones",copyLink:"Copiar enlace",sendInvitationSection:"Enviar invitación",inviteEmailPlaceholder:"Ingresa una dirección de correo",inviteButton:"Invitar",shareLiveAppLink:"Compartir enlace de la app en vivo",shareLiveAppLinkDesc:"Cualquier persona con el enlace puede ver tu app en vivo, según la configuración de visibilidad de tu app.",linkCopied:"Enlace copiado",enterEmailError:"Por favor, ingresa una dirección de correo",cannotInviteOwner:"No puedes invitar al propietario de esta app",inviteSuccess_one:"Invitación enviada correctamente",inviteSuccess_other:"{{count}} invitaciones enviadas correctamente",inviteFailedToSend:"Error al enviar la invitación",role_admin:"Admin",role_user:"Usuario"},m1={sidebar:zO,loading:MO,trash:NO,errors:FO,codeView:LO,loader:jO,toolbar:OO,header:BO,upgrade:UO,checkpoints:qO,viewAs:VO,pages:$O,publish:WO,chat:GO,builderCommandPalette:HO,unknownView:YO,appEditor:KO,beta:ZO,collaborators:JO,integrationsBanner:QO,tools:XO,mainPage:e1,unpublishApp:t1,deleteApp:a1,skillTool:n1,automations:i1,create_automation:r1,create_automation_error:o1,automation_fallback_name:s1,agentEditor:l1,canvasPage:c1,canvasToolbar:d1,deleteAgent:u1,new:"Nuevo",shareModal:p1},g1={title:"¿Qué vas a crear a continuación?",titleMobile:`Hola, ¿Qué vas a
crear a continuación?`,subtitle:"Describe abajo la idea de tu app o inspÃrate con nuestras",subtitleTemplatesLink:"plantillas"},h1={title:"Apps recientes"},f1={title:"Superagentes recientes"},v1={placeholder:"Describe la app que quieres crear...",placeholderPlanMode:"Dile a Base lo que quieres",placeholderViewer:"Los lectores no pueden crear apps",placeholderWithUrl:"Agrega una descripción (opcional)...",captureFullMode:"Crear un sitio como este",captureDesignMode:"Crear un nuevo sitio inspirado en este diseño para...",uploadFile:"Subir desde computadora",uploadFileMobile:"Subir desde dispositivo",captureFromUrlDescription:"Crear un punto de partida 1:1",createFromUrl:"Iniciar desde URL",aiModel:"Modelo de IA",selectAiModel:"Seleccionar modelo de IA",addFromGoogleDrive:"Subir desde Google Drive",modelPicker:{automatic:"Automático",automaticDescription:"Se selecciona el mejor modelo de IA para cada solicitud",new:"Nuevo",manual:"Manual",builderPlus:"Builder+",manualDescription:"Selecciona un modelo de IA especÃfico ({{models}}). Disponible en el plan Builder o superior.",upgradeToSelect:"Mejora tu plan para seleccionar un modelo de IA"},speechToText:"Reconocimiento de voz",processingAudio:"Procesando audio...",clickToStopRecording:"Clic para detener la grabación"},b1={exploreTemplates:"Explorar plantillas de la comunidad",discoverDescription:"Descubre una colección curada de aplicaciones creadas por nuestra comunidad.",failedToLoadCatalog:"Error al cargar los elementos del catálogo",showingItems:"Mostrando {{displayed}} de {{total}} elementos",searchApps:"Buscar apps",viewAllTemplates:"Ver todas las plantillas",allCategories:"Todas",priceAll:"Todas las plantillas",priceFree:"Solo gratuitas",pricePaid:"Solo de pago",pageTitle:"Plantillas de apps",pageSubtitle:"Explora una colección curada de aplicaciones creadas por nuestra comunidad.",tabs:{community:"Comunidad",workspace:"Espacio de trabajo",myTemplates:"Mis plantillas"},categories:{marketingAndSales:"Marketing y ventas",operations:"Operaciones",dataAndAnalytics:"Datos y análisis",contentGeneration:"Generación de contenido",hrAndLegal:"RR. HH. y legal",finance:"Finanzas",education:"Educación",community:"Comunidad",lifestyleAndHobbies:"Estilo de vida y hobbies",gamesAndEntertainment:"Juegos y entretenimiento","Marketing & Sales":"Marketing y ventas",Operations:"Operaciones","Data & Analytics":"Datos y análisis","Content Generation":"Generación de contenido","HR & Legal":"RRHH y legal",Finance:"Finanzas",Education:"Educación",Community:"Comunidad","Lifestyle & Hobbies":"Estilo de vida y aficiones","Games & Entertainment":"Juegos y entretenimiento"},sort:{popular:"Popular",newest:"Más recientes",oldest:"Más antiguas"},languagePlaceholder:"Idioma",pricePlaceholder:"Precio",noAppsFound:"No se encontraron apps",adjustSearchOrFilters:"Intenta ajustar tu búsqueda o filtros",templateNotFound:"Plantilla no encontrada o no disponible.",viewAllCommunityTemplates:"Ver todas las plantillas de la comunidad",loadingMore:"Cargando más elementos...",viewDetails:"Ver detalles",workspaceBadge:"Espacio de trabajo",purchasedBadge:"Comprado",free:"Gratis",unknownUser:"Usuario desconocido",private:"Privado",howTo:{title:"Cómo compartir tu app con la comunidad",intro:"Sigue estos sencillos pasos:",step1Title:"Abre el builder de tu app",step1Desc:"Navega a una app que hayas creado o a la que tengas acceso de administrador",step2Title:"Ve a la configuración del catálogo",step2Path:"Espacio de trabajo → Configuración → Plantillas de apps → Gestionar listado",step3Title:"Publica tu listado",step3Desc:"Agrega una descripción, capturas de pantalla y configura la visibilidad de tu listado",tipFull:"<bold>Consejo:</bold> ¡Asegúrate de que tu app esté desplegada y tenga una descripción atractiva para atraer más usuarios!"},modal:{close:"Cerrar",prevScreenshot:"Captura anterior",nextScreenshot:"Captura siguiente",screenshotAlt:"Captura {{index}}",goToScreenshot:"Ir a la captura {{index}}",createdBy:"por {{creatorName}}",unknownCreator:"Desconocido",usages_one:"{{count}} uso",usages_other:"{{count}} usos",private:"Privado",workspaceTemplate:"Plantilla del workspace",clonePurchase:"Clonar compra",processing:"Procesando...",purchaseFor:"Comprar por ${{price}}",useTemplate:"Usar plantilla",viewApp:"Ver app",paymentInfo:"El pago va Ãntegramente al creador",backendFunctionsEnabled:"Funciones backend habilitadas",usesIntegrations:"Usa integraciones",aboutThisApp:"Acerca de esta app",noDescription:"Sin descripción disponible",termsOfUse:"Términos de uso",success:"Éxito",error:"Error",purchaseFailed:"Error en la compra",failedToPurchase:"No se pudo iniciar la compra",listingApproved:"Listado de app aprobado exitosamente",approveListingFailed:"No se pudo aprobar el listado",listingDeclined:"Listado de app rechazado exitosamente",declineListingFailed:"No se pudo rechazar el listado",pendingUpdate:"Actualización pendiente de revisión",codeChangesPending:"Cambios de código de la app pendientes",metadataChanges:"Cambios en los metadatos del listado:",manageListing:"Gestionar listado",approveUpdate:"Aprobar actualización",declineUpdate:"Rechazar actualización",approveListing:"Aprobar listado",declineListing:"Rechazar listado",approving:"Aprobando...",declining:"Rechazando...",cloneAsAdmin:"Clonar como admin"}},y1={subscriptionOverdue:"Pago de suscripción vencido",overdueMessage:"Tu pago de suscripción está vencido. El acceso a algunas funciones está limitado actualmente. Por favor, actualiza tu método de pago para recuperar el acceso completo.",goToBilling:"Ir a Facturación",creditLimitReached:"Has alcanzado el lÃmite de este mes. Para seguir creando apps",upgradePlan:"mejorar tu plan"},k1={viewerAccess:"Tienes acceso de lector y no puedes crear apps. Contacta al administrador de tu workspace para actualizar a Editor."},w1={fillApiKeys:"Por favor, completa todas las claves API requeridas antes de enviar.",createAppFailed:"Error al crear la app. Por favor, intenta de nuevo."},A1={title:"Iniciar desde URL",description:"Usa cualquier sitio web como punto de partida para tu nuevo sitio.",urlLabel:"URL del sitio web",urlPlaceholder:"ej., www.ejemplo.com",errorEmpty:"Por favor, ingresa una URL",errorInvalid:"Ingresa una URL de sitio web válida, como www.ejemplo.com",errorTooLong:"La URL es demasiado larga. Por favor, usa una URL más corta.",modeFull:"Contenido y diseño",modeFullDescription:"Crear un sitio similar.",modeDesign:"Solo diseño",modeDesignDescription:"Crear un nuevo sitio con el mismo estilo.",modeContent:"Solo contenido",legalNotice:"Solo usa URLs donde tengas derechos sobre el contenido.",cancel:"Cancelar",add:"Agregar",learnMore:"Aprende sobre la creación desde una URL",capturedUrl:"URL capturada",appReady:"¡Tu app está lista! Ahora puedes personalizarla o agregar nuevas funciones.",banner:{headline:"Creando tu app",headlineDesign:"Creando tu app",subtitle:"Esto puede tardar un poco más de lo habitual - estamos haciendo que valga la pena.",activity:{msg1:"Conociendo el sitio...",msg2:"Estudiando el diseño y la estética...",msg3:"Armando las piezas...",msg4:"Creando algo especial...",msg5:"Trabajando en ello...",msg6:"Buscando la perfección...",msg7:"Espera, vienen cosas geniales..."}}},S1={count:"Integraciones: {{count}}",loading:"Cargando integración...",selectedIntegrations:"Integraciones Seleccionadas:"},C1={menuItem:"Conectores",dialogTitle:"Conectores",dialogDescription:"Conecta herramientas y fuentes de datos para potenciar tu app.",search:"Buscar",add:"Agregar",added:"Agregado",remove:"Eliminar",noResults:"No se encontraron conectores",suggestionCardTitle:"Ayúdame a entender tu solicitud de integración para:",choosePrompt:"Elige una opción para continuar.",somethingElse:"Algo más",cancel:"Cancelar",send:"Enviar",connectTo:"Conectar a <name>{{name}}</name>",upgradeToConnect:"Mejora tu plan para conectar {{name}} a tu app.",connecting:"Conectando {{names}}…",cancelled:"cancelado",subtitles:{stripe:"Vende productos o suscripciones y cobra en lÃnea.",salesforce:"Automatiza y sincroniza registros de CRM.",slack:"EnvÃa mensajes y gestiona Slack como usuario.",slackbot:"Publica como bot de marca en tu workspace de Slack.",notion:"Organiza y sincroniza conocimiento o datos de proyectos.",googlecalendar:"Gestiona tu agenda y eventos del calendario.",googledrive:"Exporta y respalda archivos generados por la app.",gmail:"Automatiza el envÃo de correos y la gestión del buzón.",googlesheets:"Sincroniza y gestiona datos de hojas de cálculo.",googleslides:"Genera y gestiona presentaciones.",googledocs:"Gestiona y automatiza la creación de documentos.",googlebigquery:"Consulta y sincroniza datos de analÃtica.",hubspot:"Sincroniza datos de CRM y automatiza el marketing.",linkedin:"Comparte actualizaciones y accede a perfiles profesionales.",tiktok:"Consulta estadÃsticas de tu perfil y explora tus videos.",discord:"Notifica canales e integra tu comunidad de Discord.",wix:"Accede a los datos de tu sitio Wix y herramientas de negocio.",github:"Gestiona repositorios, issues y pull requests.",gitlab:"Gestiona proyectos, MRs y pipelines de CI/CD.",bamboohr:"Directorio de empleados y gestión de RRHH.",wrike:"Planificación de proyectos y coordinación de equipos.",box:"Gestión segura de contenido en la nube.",clickup:"Organiza proyectos y rastrea el trabajo del equipo.",google_analytics:"Analiza el tráfico web y el comportamiento de usuarios.",outlook:"Correo electrónico y calendario.",linear:"Seguimiento de incidencias y gestión de proyectos.",dropbox:"Almacena y sincroniza archivos en la nube.",google_search_console:"SEO y analÃtica de búsqueda.",google_classroom:"Educación y gestión de cursos.",airtable:"Bases de datos y hojas de cálculo flexibles.",splitwise:"Divide gastos y gestiona cuentas grupales.",microsoft_teams:"Chat en equipo, canales y reuniones.",share_point:"Gestión de documentos y colaboración.",one_drive:"Almacenamiento de archivos en la nube.",typeform:"Formularios, encuestas y recopilación de datos."}},D1={label:"Plan",tooltip:"Activa el modo Plan para que la IA cree un plan detallado antes de crear tu app."},T1="Ver todo",E1="Error",P1={menuLabel:"Importar desde Figma",title:"Generar desde un frame de Figma",description:"Pega el enlace de tu frame para generar una app basada en tu diseño.",labelUrl:"Enlace del frame de Figma",placeholderUrl:"ej., https://www.figma.com/frame-link",urlHelp:"Usa un enlace a un frame, no a un archivo o página.",learnPrepare:"Aprende a preparar tu frame de Figma",connectTitle:"Conectar con Figma",connectDescription:"Permite acceso a tu cuenta de Figma para importar tu diseño.",connectButton:"Conectar con Figma",connectedToFigma:"Conectado a Figma",errorMissingUrl:"Ingresa una URL de un frame de Figma",errorNotFigmaUrl:"Ingresa una URL de un frame de Figma",errorNotFrameUrl:"Ingresa una URL de un frame, no de un archivo o página.",errorRateLimit:"La API de Figma está temporalmente ocupada. Por favor intenta de nuevo en unos minutos.",errorForbidden:"Conexión de Figma inválida o expirada. Por favor reconecta tu cuenta de Figma.",errorNotFound:"Archivo de Figma no encontrado. Por favor verifica la URL y asegúrate de tener acceso.",errorGeneric:"No se puede acceder a este diseño de Figma. Por favor verifica la URL e intenta de nuevo.",validating:"Verificando...",switchAccount:"Cambiar cuenta de Figma",cancel:"Cancelar",generate:"Generar",viewerCannotGenerate:"Tienes acceso de solo lectura y no puedes crear aplicaciones. Contacta al administrador de tu workspace para actualizar a Editor.",figmaFile:"Archivo Figma",justNow:"Justo ahora",importingMessage:"Genera una app basada en tu diseño desde este frame de Figma."},_1={connectFailed:"Error al conectar Figma. Por favor intenta de nuevo.",popupBlocked:"Popup bloqueado. Por favor permite popups e intenta de nuevo.",disconnected:"Figma desconectado",disconnectFailed:"Error al desconectar Figma. Por favor intenta de nuevo."},x1={capturing:"Capturando...",figmaDescription:"Analizando el sistema de diseño de Figma. Extrayendo estructura, tipografÃa y tokens de color para construir tu app."},I1={webApp:"Apps",aiAgent:"Superagentes",recentApps:"Apps recientes",templates:"Plantillas",favoritesComingSoon:"Favoritos próximamente"},R1={new:"Nuevo",message:"Di hola a tu verdadero Agente Personal",cta:"Pruébalo ahora"},z1={greeting:"Hola {{name}},",greetingGeneric:"Hola,",title:"Crea tu propio Agente Personal de IA",createTitle:"Crea tu propio Superagente",newBadge:"Nuevo",subtitle:"Tu agente de IA que ejecuta tareas, se conecta con tus herramientas y trabaja para ti las 24 horas",cta:"Crea tu Superagente",creating:"Creando...",continueHero:{heading:"Continúa donde lo dejaste",continueBtn:"Continuar con {{name}}",or:"O",createNew:"Crear un nuevo superagente",activeAgo:"Activo {{time}}",you:"Tú"},features:{hassleFree:{title:"Sin complicaciones",desc:"Sin Docker, sin servidores, sin configuración. Solo ejecuta tu Superagente."},alwaysOn:{title:"Siempre activo",desc:"Ejecuta tareas y automatizaciones para ti, las 24 horas."},actions:{title:"Toma acciones reales",desc:"Maneja tareas, envÃa actualizaciones y reacciona automáticamente."},remembers:{title:"Recuerda todo",desc:"Mantiene un registro de tus objetivos, preferencias y contexto."},everywhere:{title:"Vive donde estás",desc:"Funciona en WhatsApp, Telegram, Slack y tu navegador."},secure:{title:"Seguro por defecto",desc:"Acceso solo a lo que tú permites."}},untitled:"Agente sin tÃtulo",active:"Activo",noDescription:"Sin descripción disponible",edited:"Editado {{time}}",updated:"Actualizado {{time}}",failedToCreate:"No se pudo crear el agente. Por favor, inténtalo de nuevo.",errorPage:{title:"Vaya, algo salió mal",descriptionLine1:"Hubo un problema técnico de nuestra parte.",descriptionLine2:"Vuelve a la página de creación de agentes e inténtalo de nuevo",goToAgents:"Ir a Agentes →"}},M1={edited:"Editado {{time}}",updated:"Actualizado {{time}}",updatedRecently:"Actualizado recientemente"},N1={emptyTitle:"TodavÃa no has creado ninguna app.",emptySubtitle:"¡Crea tu primera app usando el formulario de arriba!"},F1={dialogTitle:"Navegación rápida",dialogDescription:"Accede a apps, plantillas, facturación y la configuración del Workspace desde la página principal.",searchPlaceholder:"Buscar apps, ajustes, plantillas, facturación...",searching:"Buscando apps del Workspace...",emptyTitle:"No hay coincidencias",emptyDescription:"Prueba con el nombre de una app, una sección de ajustes o una página como facturación o plantillas.",allApps:"Todas las apps",backToWorkspace:"Volver al Workspace",templates:"Plantillas",billing:"Facturación",groups:{apps:"Apps",navigate:"Páginas",workspace:"Espacio de trabajo",account:"Cuenta"},subtitles:{favoriteApp:"App favorita",recentApp:"App reciente",page:"Página"}},L1={label:"¿Qué te gustarÃa crear?",more:"Más",moreIdeas:"Más ideas",categories:{CRM:"CRM","Dev productivity":"Productividad para desarrolladores",Educational:"Educativo","Content Generation and Editing":"Generación y edición de contenido","Personal Finance":"Finanzas personales","Health and Wellness":"Salud y bienestar",Productivity:"Productividad","Travel Planning":"Planificación de viajes",Entertainment:"Entretenimiento",Environmental:"Medio ambiente","Home Management":"Gestión del hogar","Creative Tools":"Herramientas creativas",Tasks:"Tareas","CRM & Sales":"CRM y ventas",Portfolio:"Portafolio",Finance:"Finanzas","Scheduling & Booking":"Agenda y reservas",eCommerce:"eCommerce","Construction & Trade":"Construcción y oficios","Events & Community":"Eventos y comunidad",Wellness:"Bienestar","Operations & Logistics":"Operaciones y logÃstica","Tasks & Workflows":"Tareas y flujos","Content & Sites":"Contenido y sitios",Booking:"Reservas","E-commerce":"E-Commerce",Projects:"Proyectos",Operations:"Operaciones"}},j1={hero:g1,recentApps:h1,recentAgents:f1,chat:v1,catalog:b1,billing:y1,permissions:k1,validation:w1,urlCapture:A1,integrations:S1,connectors:C1,planMode:D1,viewAll:T1,error:E1,figmaDialog:P1,figmaOAuth:_1,statusBanner:x1,tabs:I1,tryAgentBanner:R1,agent:z1,appCard:M1,appsList:N1,commandPalette:F1,ideas:L1},O1={title:"Integraciones",subtitle:"Descubre integraciones prediseñadas que te permiten conectarte a APIs, servicios y herramientas para ampliar las capacidades de tu app."},B1={placeholder:"Buscar integraciones..."},U1={title:"No se encontraron integraciones coincidentes",description:"Intenta ajustar tu búsqueda o los filtros."},q1={title:"Conectores",subtitle:"Conexiones OAuth rápidas con servicios populares, respaldadas por Base44."},V1={howToUse:"Cómo usar",dialog:{getStarted:"Comenzar",navigateInstruction:"Ve a la pestaña de Integraciones de tu app para conectar {{name}} y obtener prompts personalizados.",upgradeNotice:"Esta integración requiere funciones de backend, disponibles únicamente en el plan Builder o superior. <seePlansLink>Ver planes</seePlansLink>"}},$1={stripe:"Vende productos o suscripciones y cobra en lÃnea.",salesforce:"Automatiza y sincroniza registros de CRM.",slack:"EnvÃa mensajes y gestiona Slack como usuario.",slackbot:"Publica como un bot personalizado en tu workspace de Slack.",notion:"Organiza y sincroniza conocimiento o datos de proyectos.",googlecalendar:"Gestiona tu agenda y eventos de calendario.",googledrive:"Exporta y respalda archivos generados por tu app.",gmail:"Automatiza el envÃo de correos y la gestión de la bandeja de entrada.",googlesheets:"Sincroniza y gestiona datos en hojas de cálculo.",googleslides:"Genera y gestiona presentaciones.",googledocs:"Gestiona y automatiza la creación de documentos.",googlebigquery:"Consulta y sincroniza datos analÃticos.",googletasks:"Gestiona listas de tareas pendientes.",googlemeet:"Videoconferencias y reuniones.",hubspot:"Sincroniza datos de CRM y automatiza el marketing.",linkedin:"Comparte actualizaciones y accede a perfiles profesionales.",tiktok:"Monitorea estadÃsticas de tu perfil y navega por tus videos.",discord:"Publica en canales e intégrate con tu comunidad de Discord.",wix:"Accede a los datos del sitio Wix y herramientas de negocio.",github:"Gestiona repositorios, issues y pull requests.",gitlab:"Gestiona proyectos, MRs y pipelines de CI/CD.",bamboohr:"Directorio de empleados y gestión de RRHH.",wrike:"Planificación de proyectos y coordinación de equipos.",box:"Gestión segura de contenidos en la nube.",clickup:"Organiza proyectos y realiza seguimiento del trabajo en equipo.",google_analytics:"Monitorea el tráfico web e insights de usuarios.",outlook:"Correo electrónico y calendario.",linear:"Seguimiento de issues y gestión de proyectos.",dropbox:"Almacena y sincroniza archivos en la nube.",google_search_console:"SEO y analÃtica de búsqueda.",google_classroom:"Educación y gestión de cursos.",airtable:"Bases de datos y hojas de cálculo flexibles.",splitwise:"División de gastos y facturas grupales.",microsoft_teams:"Chat de equipo, canales y reuniones.",share_point:"Gestión de documentos y colaboración.",one_drive:"Almacenamiento de archivos en la nube.",typeform:"Formularios, encuestas y recopilación de datos.",hugging_face:"Inferencia de IA y repositorios de modelos.",calendly:"Programación automática de citas.",contentful:"CMS headless y gestión de contenidos.",supabase:"Explora esquemas, lee datos y consulta el estado del proyecto (solo lectura)."},W1={page:O1,search:B1,emptyState:U1,connectors:q1,connector:V1,catalog:$1},G1={title:"Launchpad",subtitle:"Descubre y explora apps creadas por la comunidad",shareApp:"Comparte tu app",allApps:"Todas las apps",noAppsFound:"No se encontraron apps",noAppsHint:"Intenta limpiar los filtros o buscar otra cosa.",noAppsEmpty:"¡Sé el primero en publicar una app en Launchpad!",clearFilters:"Limpiar filtros",goToFirstPage:"Ir a la primera página",retry:"Reintentar",publishedToast:"¡Tu app ya está en vivo en Launchpad!"},H1={placeholder:"Buscar apps en Launchpad..."},Y1={all:"Todas"},K1={title:"Tendencias ahora"},Z1={title:"Apps destacadas",empty:"Aún no hay apps destacadas para este perÃodo.",thisWeek:"Esta semana",thisMonth:"Este mes",allTime:"Todo el tiempo"},J1={live:"En vivo",someone:"Alguien",sentences:{vote:"{{user}} acaba de votar por {{app}}",like:"{{user}} acaba de dar like a {{app}}",publish:"{{user}} acaba de publicar {{app}}",default:"{{user}} acaba de interactuar con {{app}}"}},Q1={signInPrompt:"Inicia sesión para publicar tu app en Launchpad.",signIn:"Iniciar sesión",back:"Atrás",next:"Siguiente",publish:"Publicar",publishing:"Publicando...",stepOf:"Paso {{current}} de {{total}}",successToast:"¡Tu app ya está en vivo en Launchpad!",failedDefault:"Error al publicar. Por favor, inténtalo de nuevo.",categoriesLoadFailed:"Error al cargar las categorÃas. Cierra y vuelve a intentarlo.",categoriesRetry:"Reintentar",steps:{selectApp:"Seleccionar app",details:"Detalles",preview:"Vista previa"},appPicker:{chooseApp:"Elige qué app te gustarÃa publicar en Launchpad.",searchPlaceholder:"Buscar tus apps...",loadFailed:"No se pudieron cargar tus apps.",tryAgain:"Reintentar",noApps:"Aún no tienes ninguna app.",noAppsForQuery:"No se encontraron apps para «{{query}}»",loadMore:"Cargar más"},preview:{caption:"Asà se verá tu app en el grid de Launchpad:",creatorFallback:"Tú"},categoryPicker:{count:"{{current}}/{{max}} categorÃas seleccionadas"},validation:{nameRequired:"El nombre de la app es obligatorio",descriptionRequired:"La descripción corta es obligatoria",descriptionTooLong:"Máx. {{max}} caracteres",categoriesRequired:"Selecciona al menos 1 categorÃa",screenshotsRequired:"Sube al menos 1 captura de pantalla"}},X1={uploadFailed:"Algunas capturas de pantalla no se pudieron subir. Por favor, inténtalo de nuevo.",uploading:"Subiendo...",addImage:"Agregar imagen",count:"{{current}}/{{max}} capturas de pantalla. Arrastra para reordenar."},eB={previous:"Anterior",next:"Siguiente",pageOf:"Página {{page}} de {{totalPages}}"},tB={justNow:"ahora mismo",minutesAgo:"hace {{count}} min",hoursAgo:"hace {{count}} h",daysAgo:"hace {{count}} d"},aB={appName:"Nombre de la app",shortDescription:"Descripción breve",shortDescriptionPlaceholder:"Una breve descripción de lo que hace tu app",longDescription:"Descripción detallada",longDescriptionPlaceholder:"Cuenta más sobre tu app...",optional:"Opcional",categories:"CategorÃas",screenshots:"Capturas de pantalla",generateWithAi:"Generar con IA",aiComingSoon:"Generación con IA próximamente"},nB={tryApp:"Probar App",share:"Compartir",shareToast:"Enlace copiado al portapapeles.",shareError:"Error al compartir",about:"Acerca de",moreByCreator:"Más de {{name}}",backToLaunchpad:"Volver a Launchpad",notFound:"App no encontrada",notFoundHint:"Esta app pudo haber sido eliminada o despublicada.",loadFailed:"Error al cargar los detalles de la app.",unknownCreator:"este creador"},iB={title:"Comentarios",placeholder:"Escribe un comentario...",submit:"Publicar",submitting:"Publicando...",empty:"Aún no hay comentarios. ¡Sé el primero!",loadMore:"Cargar más comentarios",deleteFailed:"Error al eliminar el comentario.",postFailed:"Error al publicar el comentario.",signInToComment:"Inicia sesión para dejar un comentario",anonymous:"Anónimo"},rB={likeFailed:"Error al actualizar el like.",voteFailed:"Error al actualizar el voto.",selfVoteError:"No puedes votar por tu propia app."},oB={loadFailed:"Error al cargar los datos de Launchpad. Por favor, inténtalo de nuevo.",browseFailed:"Error al cargar las apps. Por favor, inténtalo de nuevo.",topAppsFailed:"Error al cargar las apps destacadas. Por favor, inténtalo de nuevo.",categoriesFailed:"Error al cargar las categorÃas.",refreshFailed:"Error al actualizar — por favor, recarga la página."},sB={page:G1,search:H1,categories:Y1,trending:K1,topApps:Z1,liveActivity:J1,publish:Q1,screenshots:X1,pagination:eB,relativeTime:tB,fillDetails:aB,detail:nB,comments:iB,engagement:rB,errors:oB},lB={title:"Apps",allAgentsTitle:"Todos los agentes",createNewApp:"Crear nueva app",createNewAgent:"Crear nuevo agente",tabRecents:"Recientes",tabFavorites:"Favoritos",tabAllApps:"Todas las apps",tabAllAgents:"Todos los agentes",searchPlaceholder:"Buscar apps",gridView:"Vista de cuadrÃcula",listView:"Vista de lista",appTypeLabel:"Tipo de app",appTypeApps:"Apps",appTypeAgents:"Agentes",tableHeaderName:"Nombre",tableHeaderDescription:"Descripción",tableHeaderActions:"Acciones",folderActionAddApps:"Agregar apps",folderActionRename:"Renombrar",folderActionDelete:"Eliminar",filterOwnedByMe:"De mi propiedad",filterMyAppsPersonal:"Mis apps (espacio de trabajo personal)",filterAllPlatform:"Todas las apps (en toda la plataforma)",filterMyAppsWorkspace:"Mis apps en el espacio de trabajo {{workspaceName}}",filterAllAppsWorkspace:"Todas las apps en el espacio de trabajo {{workspaceName}}",addNewFolder:"Agregar nueva carpeta",sortLastUpdated:"Última actualización",sortLastCreated:"Última creación",sortNameAsc:"Nombre (A-Z)",sortNameDesc:"Nombre (Z-A)",filterCreatedByMe:"Creado por mÃ",filterCreatedByAnyone:"Creado por cualquiera",filterAllPlatformApps:"Todas las apps de la plataforma",filterMyApps:"Mis apps en {{workspaceName}}",planModeDescription:"Esta aplicación está actualmente en modo de planificación y aún no ha sido creada.",noDescription:"Sin descripción",byCreator:"Por {{name}}",createdAgo:"Creado {{timeAgo}}",untitledPlan:"Plan sin tÃtulo",tableHeaderApp:"App",tableHeaderLastUpdated:"Última actualización",tableHeaderCreatedBy:"Creado por",emptyFolderTitle:"Aún no se han agregado apps",emptyFolderMessage:"Las apps aparecerán aquà una vez que las agregues",addExistingApps:"Agregar apps existentes",emptyFavoritesTitle:"Aún no tienes apps favoritas",emptyFavoritesMessage:"Marca una app con estrella para agregarla aquÃ.",emptyRecentsTitle:"Sin actividad reciente",emptyRecentsMessage:"Las apps que abras aparecerán aquÃ.",emptySearchTitle:"No se encontraron apps",emptySearchMessage:"No se encontraron apps que coincidan con tus criterios.",clearFilters:"Limpiar filtros",previous:"Anterior",next:"Siguiente",failedToUpdateStar:"No se pudo marcar como favorito",failedToUpdateFavorite:"No se pudo actualizar el favorito",pleaseRetry:"Por favor, inténtalo de nuevo",folderCreated:"Carpeta creada",folderRenamed:"Carpeta renombrada",folderDeleted:"Carpeta eliminada",folderUpdated:"Carpeta actualizada",filter:"Filtrar"},cB={showAll:"Ver todo",appCount_one:"{{count}} app",appCount_other:"{{count}} apps",addApps:"Agregar apps",rename:"Renombrar",delete:"Eliminar",cancel:"Cancelar",save:"Guardar",saving:"Guardando...",create:"Crear",deleting:"Eliminando...",createFirstFolder:"Crear tu primera carpeta",createNewFolder:"Crear nueva carpeta",renameFolder:"Renombrar carpeta",folderVisibilityDescription:"La organización de carpetas es visible para tu espacio de trabajo.",folderNamePlaceholder:"Nombre de la carpeta",visibility:"Visibilidad",scopeWorkspace:"Espacio de trabajo",scopePersonal:"Personal",personalScopeHint:"Solo visible para ti",deleteFolder:"Eliminar carpeta",deleteFolderDescription:'¿Estás a punto de eliminar "{{name}}"? Las apps de esta carpeta no se eliminarán, solo la carpeta.',manageFolders:"Administrar carpetas",manageFoldersDescription:"Agregar o eliminar esta app de carpetas.",searchFoldersPlaceholder:"Buscar carpetas...",createNewFolderButton:"Crear nueva carpeta",noFoldersMatchSearch:"Ninguna carpeta coincide con tu búsqueda",noFoldersYet:"Aún no hay carpetas",allFolders:"Todas las carpetas",searchFolders:"Buscar carpetas",scopeFilterAll:"Todas",sortNameAsc:"Nombre A–Z",sortNameDesc:"Nombre Z–A",sortMostApps:"Más apps",sortFewestApps:"Menos apps",noFoldersFound:"No se encontraron carpetas",noFoldersMatchCriteria:"Ninguna carpeta coincide con tus criterios de búsqueda.",clearSearch:"Limpiar búsqueda",manageAppsInFolder:"Administrar apps en la carpeta",manageAppsDescription:'Agregar o eliminar apps en "{{name}}".',searchAppsPlaceholder:"Buscar apps...",noAppsMatchSearch:"Ninguna app coincide con tu búsqueda",noAppsFound:"No se encontraron apps",loadMore:"Cargar más",appUpdatedAgo:"Actualizado {{timeAgo}}",saveWithCount:"{{label}} ({{count}})",operationFailed:"Operación fallida. Por favor, inténtalo de nuevo."},dB={viewLiveApp:"Ver app en vivo",share:"Compartir",rename:"Renombrar",cloneApp:"Clonar app",appSettings:"Configuración de app",delete:"Eliminar",appDeleted:"App eliminada",appDeletedDescription:'"{{name}}" ha sido eliminada',failedToDelete:"Error al eliminar la app",failedToDeleteDescription:"Ocurrió un error al eliminar la app",manageFolders:"Administrar carpetas",removeFromFolder:"Eliminar de la carpeta",goToAppSettings:"Ir a configuración de app",deleteApp:"Eliminar app",deleteAppTitle:'¿Eliminar "{{name}}"?',deleteAppDescription:"Esto eliminará permanentemente esta app y todos sus datos. Esta acción no se puede deshacer.",appRemovedFromFolder:"App eliminada de la carpeta",failedToRemoveFromFolder:"Error al eliminar la app de la carpeta",addedToFolders_one:"App agregada a {{count}} carpeta",addedToFolders_other:"App agregada a {{count}} carpetas",removedFromFolders_one:"App eliminada de {{count}} carpeta",removedFromFolders_other:"App eliminada de {{count}} carpetas",failedToUpdateFolders:"Error al actualizar carpetas",foldersUpdated:"{{added}} y {{removed}}",removeFromFavorites:"Quitar de favoritos",addToFavorites:"Añadir a favoritos"},uB={title:"Renombrar app",description:"El nombre de la app es visible para usted y sus usuarios.",inputPlaceholder:"Ingrese el nombre de la app",urlUpdateNote:"Cambiar el nombre de la app también actualizará la URL de la app.",cancel:"Cancelar",save:"Guardar",saving:"Guardando...",nameRequired:"El nombre de la app es obligatorio",enterDifferentName:"Por favor, ingrese un nombre diferente",successTitle:"App renombrada",successDescription:'App renombrada a "{{name}}"',successDescriptionUrlFailed:'App renombrada a "{{name}}", pero no se pudo actualizar la URL.',failedTitle:"Error al renombrar la app",failedDescription:"Ocurrió un error al renombrar la app"},pB="Cargando...",mB="(Copia)",gB={cloningTitle:"Clonando {{appName}}",cloningDescription:"Esto puede tardar unos momentos. Lo encontrarás en la página Apps una vez que esté lista",goToApps:"Ir a Apps",confirmingPurchaseTitle:"Confirmando tu compra...",confirmingPurchaseSubtitle:"Esto suele tardar solo unos segundos",errorTitle:"Error",goBack:"Volver",cloneNotAllowedTitle:"Clonación no permitida",cloneNotAllowedDescription:"Esta app requiere funciones de backend. Necesitas estar en el nivel Builder o superior para clonarla.",configureSecrets:"Configurar secretos",cloneTitle:"Clonar {{name}}",cloneButton:"Clonar {{name}}",cloningButton:"Clonando {{name}}...",defaultAppName:"App",preparing:"Preparando...",errorCloningApp:"Ocurrió un error al clonar la app",errorFetchingRequirements:"Ocurrió un error al obtener los requisitos de clonación",errorPurchaseTimeout:"La confirmación de tu compra está tardando más de lo esperado. Revisa tu correo electrónico para confirmar, o contacta al soporte si el problema persiste.",errorVerifyPurchase:"No se pudo verificar la compra. Por favor, inténtalo de nuevo."},hB={userApps:lB,folders:cB,appActions:dB,renameApp:uB,loading:pB,copySuffix:mB,remixPage:gB},fB={title:"Base44 App Templates Marketplace - Términos de Servicio",lastUpdated:"Última actualización: 18 de noviembre de 2025"},vB={header:fB},bB={home:"Inicio",allApps:"Todas las Apps",apps:"Apps",integrations:"Integraciones",appTemplates:"Plantillas de Apps",hirePartner:"Contratar un Partner",affiliates:"Afiliados",docsSupport:"Docs y Soporte",admins:"Admins",referFriends:"Referir Amigos",language:"Idioma",startBuilding:"Empezar a crear"},yB={title:"Crear un espacio de trabajo",subtitle:"Empieza a colaborar con los miembros de tu espacio de trabajo",back:"Volver",formTitle:"Información del espacio de trabajo",nameLabel:"Nombre del espacio de trabajo",namePlaceholder:"Ingresa el nombre de tu espacio de trabajo",nameHint:"Elige un nombre que represente tu espacio de trabajo",nameRequiredError:"El nombre del espacio de trabajo es obligatorio",createFailedError:"Error al crear el espacio de trabajo",limitReachedError:"LÃmite de espacios de trabajo alcanzado. Puedes crear un máximo de 3 espacios de trabajo.",cancelButton:"Cancelar",createButton:"Crear espacio de trabajo",creatingButton:"Creando espacio de trabajo...",whatHappensNext:{title:"¿Qué pasa después?",ownerPermissions:"Serás el propietario del espacio de trabajo con permisos de gestión completos",inviteMembers:"Puedes invitar a miembros del espacio de trabajo y gestionar licencias",accessDashboard:"Accede al panel de tu espacio de trabajo para comenzar"}},kB={workspace:"Workspace",backToWorkspace:"Volver a {{workspaceName}}",settings:"Configuración",inviteMembers:"Invitar miembros",myWorkspaces:"Mis Workspaces",createWorkspace:"Crear un Workspace",noWorkspacesFound:"No se encontraron workspaces",accountSettings:"Configuración de Cuenta",apiKey:"Clave API",helpSupport:"Ayuda y Soporte",becomeAffiliate:"Ser Afiliado",defaultUser:"Usuario",defaultUserInitial:"U",referFriend:"Referir a un Amigo",giftCards:"Tarjetas de Regalo",sendGiftCard:"Enviar tarjeta regalo",notifications:"Notificaciones",logOut:"Cerrar sesión",aboutApp:"Sobre la app",upgradePlan:"Mejorar Plan",winCredits:"Ganar créditos gratis",pricingPlans:"Planes de precios",documentation:"Documentación",getHelp:"Obtener ayuda",memberCount_one:"{{count}} miembro",memberCount_other:"{{count}} miembros",myProfile:"Mi perfil",viewProfile:"Ver perfil",failedToLoadProfile:"No se pudo cargar el perfil",user:"Usuario"},wB={ariaLabel:"Menú del agente",agentFallback:"Agente"},AB={integrationCredits:"Créditos de integraciones",monthlyCredits:"Créditos Mensuales",messageCredits:"Créditos de mensajes",dailyCredits:"Créditos Diarios",giftCardCredits:"Créditos de Regalo",renewsAt:"Se renueva el {{date}}",giftCardTooltip:"Los créditos de tarjeta de regalo se usan antes que los créditos de tu plan.",percentUsed:"{{percent}}% usado",messagesRemaining_one:"{{count}} mensaje restante",messagesRemaining_other:"{{count}} mensajes restantes",upgradeYourPlan:"Mejorar tu plan",getMoreOutOfYourApps:"Saca más provecho de tus apps",upgradeYourPlanToPro:"Mejora tu plan a Pro",redeemDescription:"Una vez canjeados, los créditos se aplicarán a tu espacio de trabajo.",creditsRemaining_one:"{{count}} crédito restante",creditsRemaining_other:"{{count}} créditos restantes"},SB={label:"Comunidad",appTemplates:"Plantillas de Apps",appTemplatesDesc:"Empieza más rápido con plantillas de la comunidad.",hirePartner:"Contratar un Partner",hirePartnerDesc:"Encuentra Partners y comienza a colaborar.",spotlight:"Destacados",spotlightDesc:"Explora aplicaciones destacadas.",affiliateProgram:"Programa de Afiliados",affiliateProgramDesc:"Conviértete en afiliado de Base44.",joinUsOn:"Únete a nosotros en"},CB=JSON.parse(`{"title":"Configuración","lockedFeature":{"includedInPlan":"Incluido en el plan {{plan}} y superiores","includedInPlanExact":"Incluido en el plan {{plan}}","viewPlans":"Ver planes","talkToSales":"Hablar con ventas","authSecurity":{"title":"Controla el acceso al workspace","body":"Esencial para industrias reguladas y organizaciones enfocadas en seguridad","ssoAccess":"Usa inicio de sesión único (SSO) para reducir riesgos de contraseñas","domainVerification":"Controla quién puede unirse con verificación de dominio","ipWhitelisting":"Permite el acceso solo desde direcciones IP de confianza"},"integrations":{"title":"Configura una vez, usa en todo tu workspace","body":"Para equipos que estandarizan APIs y herramientas externas en sus apps.","configureOnce":"Configura integraciones API una vez para todas las apps y compañeros","sharedAccess":"Cualquiera en tu workspace puede usar las herramientas conectadas al instante","consistentConnections":"Mantén las conexiones externas consistentes en todas las apps"},"appsConfiguration":{"title":"Define visibilidad de apps y reglas SSO","body":"Para equipos que gestionan herramientas internas y apps sensibles.","publicAppControl":"Decide quién puede crear apps públicas en este workspace","defaultVisibility":"Establece la visibilidad inicial para nuevas apps","enforceSso":"Aplica SSO del workspace en todas las apps"},"analytics":{"title":"Ve cómo tu equipo usa Base44","body":"Para propietarios y admins de workspace que rastrean uso y adopción.","creditTracking":"Rastrea cómo se usan los créditos en tu equipo","activeUsers":"Ve qué compañeros están usando Base44 activamente","licenseUsage":"Entiende cuántas licencias están actualmente en uso"},"skills":{"title":"Dale a tu IA skills reutilizables","body":"Define un comportamiento de IA consistente que funcione en todas tus apps.","reusableInstructions":"Crea un conjunto de instrucciones personalizadas (un skill) que moldean cómo la IA construye tus apps","autoActivation":"Crea una vez, reutiliza en todas tus apps","teamConsistency":"GuÃa el tono, formato, lógica o cualquier comportamiento que quieras estandarizar"},"mcpConnections":{"title":"Conecta herramientas externas con MCP","body":"Trae datos en vivo de herramientas externas directamente a tus apps.","externalTools":"Dale a tu constructor de IA acceso a contexto en tiempo real mientras trabaja","customServers":"Conecta servidores MCP personalizados para usar en todas tus apps","extendCapabilities":"Accede a herramientas como Amplitude, Linear y más mientras desarrollas"}},"membersTitle":"Miembros","inviteMembers":"Invitar miembros","inviteByEmail":"Invitar por correo electrónico","bulkInviteCsv":"Invitación masiva (CSV)","close":"Cerrar","createInviteLink":"Crear enlace de invitación","manageInviteLinks":"Gestionar enlaces de invitación","backToMembers":"Volver a miembros","backToMenu":"Volver al menú de configuración","inviteLinks":{"title":"Enlaces de invitación","breadcrumb":"Enlaces de invitación","description":"Crea y gestiona enlaces de invitación para este workspace.","createInviteLink":"Crear enlace de invitación","noLinksYet":"Aún no hay enlaces de invitación","noLinksSubtitle":"Crea un enlace de invitación para compartir fácilmente el acceso a este workspace.","copyLink":"Copiar enlace","copyLinkLower":"Copiar enlace","deleteTooltip":"Eliminar enlace de invitación","deleteButton":"Eliminar","deleteLinkButton":"Eliminar enlace","deleteConfirmTitle":"¿Eliminar enlace de invitación?","deleteConfirmActive":"Las personas ya no podrán unirse usando este enlace. Esta acción no se puede deshacer.","deleteConfirmInactive":"Este enlace y su historial se eliminarán de este workspace.","copiedToClipboard":"Enlace de invitación copiado al portapapeles.","columnName":"Nombre","columnStatus":"Estado","columnUsage":"Uso","columnRole":"Rol","columnExpiration":"Fecha de expiración","columnDomains":"Dominios permitidos","statusActive":"Activo","statusRevoked":"Revocado","statusExpired":"Expirado","statusLimitReached":"LÃmite alcanzado","usageUnlimited":"Ilimitado","dialogTitle":"Crear enlace de invitación","dialogMobileTitle":"Crear enlace","linkName":"Nombre del enlace (Opcional)","linkNamePlaceholder":"ej., Incorporación de nuevos empleados","role":"Rol","selectRole":"Seleccionar rol","roleViewer":"Visor","roleEditor":"Editor","roleMember":"Miembro","expiration":"Expiración","selectExpiration":"Seleccionar expiración","nDays_one":"{{count}} dÃa","nDays_other":"{{count}} dÃas","never":"Nunca","maximumUses":"Usos máximos","selectLimit":"Seleccionar lÃmite","unlimited":"Ilimitado","nUses_one":"{{count}} uso","nUses_other":"{{count}} usos","allowedDomains":"Dominios de correo permitidos (Opcional)","allowedDomainsPlaceholder":"ej., empresa.com, socio.org","domainsHelp":"Separa múltiples dominios con comas.","domainsError":"Entrada inválida. Usa dominios separados por comas (ej., empresa.com, socio.org)","securityWarning":"Cualquier persona con este enlace puede unirse a tu workspace y acceder a sus datos. Compártelo solo con personas de confianza.","advancedOptions":"Opciones avanzadas","cancel":"Cancelar","creating":"Creando...","create":"Crear","linkCreatedAndCopied":"Enlace de invitación creado y copiado.","manageInvitations":"Gestionar invitaciones"},"postPaymentInvite":{"title":"¡Todo listo!","description":"Tu plan está activo. Invita a tus amigos y colegas para empezar a construir juntos.","createInviteLink":"Crear enlace de invitación","inviteByEmail":"Invitar por correo electrónico","maybeLater":"Quizás más tarde","inviteLinkReady":"Enlace de invitación listo","subtitleNoDomain":"Cualquier persona con este enlace puede unirse como <bold>{{role}}</bold>","subtitleWithDomain":"Cualquier persona con un correo {{domains}} puede unirse como <bold>{{role}}</bold>","copied":"Copiado","manageInvitationsPrompt":"Puedes gestionar todos tus enlaces de invitación desde la página de configuración de <inviteLink>Enlaces de invitación</inviteLink>.","copyLink":"Copiar","close":"Cerrar","expires":"Expira {{time}}","remainingUses_one":"{{count}} uso restante","remainingUses_other":"{{count}} usos restantes"},"sections":{"workspace":"Workspace","integrations":"Integraciones","account":"Cuenta"},"creditUsage":{"pageDescription":"Monitorea tu consumo de créditos y patrones de uso.","currentPlan":"Actualmente estás en el Plan {{planName}}","overLimit":"LÃmite superado","updatePayment":"Actualizar pago","upgrade":"Mejorar","paymentOverdue":"Pago vencido","pastDueDescription":"El pago de tu suscripción está vencido. Los créditos y lÃmites mostrados se basan en tu último plan pagado ({{plan}}).","tryAgain":"Reintentar","trying":"Intentando...","monthlyMessages":"Mensajes mensuales","workspaceTotal":"Total del espacio de trabajo","workspaceUsage":"Uso del espacio de trabajo","dailyMessages":"Mensajes diarios","loadError":"Error al cargar estadÃsticas de uso","portalError":"No se pudo abrir la gestión de pagos. Por favor, inténtalo de nuevo.","portalErrorTitle":"Error","creditsRenewIn":"Los créditos se renuevan en {{timeLeft}}","expired":"Expirado","dailyUsageTitle":"Uso diario (Mensajes)","noUsageData":"No hay datos de uso disponibles","messagesLabel":"mensajes","timeDaysHours":"{{days}}d : {{hours}}h","timeHoursMinutes":"{{hours}}h : {{minutes}}m","timeMinutes":"{{minutes}}m"},"basicInformation":{"pageTitle":"Información básica","pageSubtitleEditable":"Administra los detalles y la configuración de tu espacio de trabajo.","pageSubtitleReadOnly":"Ver detalles del espacio de trabajo. Solo los propietarios y administradores pueden editar.","loadingMessage":"Cargando información del espacio de trabajo...","workspaceNameLabel":"Nombre del espacio de trabajo","workspaceNamePlaceholder":"Ingresa el nombre del espacio de trabajo","workspaceDescriptionLabel":"Descripción del espacio de trabajo","workspaceDescriptionPlaceholder":"Describe tu espacio de trabajo...","workspaceNameEmptyErrorMessage":"El nombre del espacio de trabajo no puede estar vacÃo","cancelButton":"Cancelar","saveButton":"Guardar cambios","savingButton":"Guardando...","saveSuccessMessage":"¡Configuración del espacio de trabajo actualizada con éxito!","saveErrorMessage":"Error al actualizar la configuración del espacio de trabajo: {{error}}","unknownError":"Error desconocido"},"leaveWorkspace":{"title":"Salir del espacio de trabajo","description":"Si abandona este espacio de trabajo, perderá el acceso a todas las aplicaciones asociadas. La propiedad de sus aplicaciones se transferirá al propietario del espacio de trabajo.","button":"Salir del espacio de trabajo","soleOwnerNote":"No puede salir del espacio de trabajo porque es el único propietario.","successMessage":"Ha abandonado el espacio de trabajo.","workspaceNameFallback":"espacio de trabajo","dialog":{"title":"¿Salir de {{name}}?","confirmQuestion":"¿Está seguro de que desea salir de <bold>{{name}}</bold>?","transferWarning":"Sus aplicaciones en este espacio de trabajo se transferirán al propietario del espacio de trabajo y perderá el acceso.","cancelButton":"Cancelar","confirmButton":"Salir del espacio de trabajo"}},"menu":{"basicInformation":"Información básica","planAndBilling":"Plan y facturación","creditUsage":"Uso de créditos","members":"Miembros","seatsAndMembers":"Puestos y miembros","authAndSecurity":"Autenticación y seguridad","integrations":"Integraciones","appsConfiguration":"Configuración de apps","analytics":"AnalÃticas","accountSettings":"Configuración de cuenta","mcpConnections":"Conexiones MCP","skills":"Habilidades","connectors":"Conectores","manageSubscription":"Gestionar suscripción","secrets":"Secretos","dataResidency":"Residencia de datos"},"guests":{"tabMembers":"Miembros","tabGuests":"Invitados","title":"Invitados","infoBanner":"Los invitados son usuarios externos invitados a apps especÃficas. Consumen créditos del pool compartido del espacio de trabajo.","searchPlaceholder":"Buscar por correo o app...","columnGuest":"Invitados","columnApp":"App","columnInvitedBy":"Invitado por","columnCreditsUsed":"Créditos usados","pending":"Pendiente","promoteToEditor":"Promover a Editor","promoteToViewer":"Promover a Visor","removeFromWorkspace":"Eliminar del espacio de trabajo","emptyTitle":"Aún no hay invitados","emptySubtitle":"Los invitados se pueden añadir desde el flujo de invitación de colaboradores de la app.","noResults":"No se encontraron invitados","noResultsSubtitle":"Ningún invitado coincide con \\"{{searchTerm}}\\"","promoted":"{{email}} promovido a {{role}}","promoteFailed":"Error al actualizar el rol","setCreditLimit":"Establecer lÃmite de créditos","upgradeForCreditLimit":"Actualiza al plan Enterprise para esta función","viewAppAccess":"Ver acceso a apps","removeMember":"Eliminar miembro","guestRole":"Invitado","appAccessTitle":"Acceso a apps de {{name}}","appAccessDescription":"Ver las apps a las que este invitado puede acceder en el espacio de trabajo.","appAccessLoading":"Cargando...","appAccessEmpty":"No se encontró acceso a apps.","appAccessColumnApp":"App","appAccessDone":"Listo"},"members":{"pageTitle":"Miembros","pageDescription":"Ver y gestionar los miembros y roles de este espacio de trabajo.","tableTitle":"Miembros ({{count}})","columnMembers":"Miembros","columnCreditsUsed":"Créditos utilizados","columnCreditsUsedWithLimit":"Créditos utilizados (de {{limit}})","columnCreditLimit":"LÃmite de créditos","columnRole":"Rol","roleOwner":"Propietario","roleAdmin":"Admin","roleEditor":"Editor","roleViewer":"Visor","pending":"Pendiente","expired":"Expirado","searchPlaceholder":"Buscar por nombre o correo...","searchPlaceholderMobile":"Buscar...","inviteMembers":"Invitar miembros","inviteByEmail":"Invitar miembros","bulkInvite":"Invitación masiva","setCreditLimit":"Establecer lÃmite de créditos","removeMember":"Eliminar miembro","upgradeTooltip":"Actualiza al plan Enterprise para desbloquear esta función","default":"(predeterminado)","emptyTitle":"Aún no hay miembros","emptyTitleNoResults":"No se encontraron miembros","emptySubtitlePersonal":"Los espacios de trabajo personales solo te contienen a ti","emptySubtitleShared":"Comienza invitando a tu primer miembro","emptySubtitleNoResults":"Ningún miembro coincide con \\"{{searchTerm}}\\"","cantChangeOwnRole":"No puedes cambiar tu propio rol. Pide a un propietario del espacio de trabajo que lo actualice.","creditLimitTooltip":"Limita cuántos créditos puede usar cada miembro del pool del espacio de trabajo. Establece lÃmites individualmente o distribúyelos equitativamente entre todos los miembros.","tableTitleFiltered":"Miembros ({{filteredCount}} de {{totalCount}})","clearSearch":"Borrar búsqueda"},"seatsAndMembers":{"pageTitle":"Puestos y miembros","pageDescription":"Administra los puestos del espacio de trabajo y los miembros del equipo.","emptyTitle":"Comienza con puestos del espacio de trabajo","emptyDescription":"Compra puestos para invitar miembros al espacio de trabajo y comenzar a colaborar.","buyFirstSeats":"Compra tus primeros puestos","planSeats":"Puestos {{planName}}","seatsUsage":"Uso de puestos","addSeats":"Agregar puestos","removeSeats":"Eliminar puestos","seatsAvailable_one":"{{count}} puesto disponible","seatsAvailable_other":"{{count}} puestos disponibles","buyMoreSeats":"Comprar más puestos","expandWorkspace":"AmplÃa el tamaño de tu espacio de trabajo","searchPlaceholder":"Buscar por correo, rol, estado o tipo de puesto (ej., starter, pro)...","searchTip":"Sugerencia: Busca tipos de puesto como \\"starter\\", \\"builder\\", \\"pro\\", \\"elite\\" o \\"sin puesto\\""},"inviteDialog":{"title":"Invitar miembros","emailAddress":"Correo electrónico","role":"Rol","cancel":"Cancelar","invite":"Invitar","inviting":"Invitando...","roleViewer":"Visor","roleEditor":"Editor","roleAdmin":"Admin","roleMember":"Miembro","errorNoEmail":"Por favor ingresa al menos una dirección de correo","errorInvalidEmail":"Una o más direcciones de correo son inválidas.","errorFallback":"Error al invitar usuarios","toastSingle":"Invitación enviada a {{email}}","toastMultiple":"{{count}} invitaciones enviadas con éxito"},"dataResidency":{"title":"Residencia de datos","tooltip":"Establece la región de almacenamiento de datos para las aplicaciones en este espacio de trabajo.","edit":"Editar","upgradeRequired":"Se requiere plan Elite o superior para configurar la residencia de datos.","appliesToNewApps":"Se aplica a las aplicaciones recién creadas. Las aplicaciones existentes mantienen su región actual.","editModal":{"title":"Residencia de datos del espacio de trabajo","description":"Elige dónde almacenar los datos de las aplicaciones que creas en este espacio de trabajo.","label":"Residencia de datos","appliesToNewApps":"Se aplica a las aplicaciones recién creadas. Las aplicaciones existentes mantienen su región de datos actual.","viewAllApps":"Ver residencia de datos de todas las aplicaciones del espacio de trabajo","cancel":"Cancelar","save":"Guardar","saving":"Guardando...","updateSuccess":"Residencia de datos actualizada correctamente","updateError":"Error al actualizar la residencia de datos: {{detail}}","unknownError":"Error desconocido"},"appsModal":{"title":"Residencia de datos de aplicaciones","description":"Ve dónde se almacenan los datos de cada aplicación en este espacio de trabajo.","appName":"Nombre de la aplicación","dataRegion":"Región de datos","loading":"Cargando...","noApps":"No hay aplicaciones en este espacio de trabajo.","migrationInfo":"¿Necesitas mover una aplicación a una región diferente? <a>Solicitar una migración.</a>","supportTitle":"Solicitud de migración de región de datos — {{name}}","supportContent":"Me gustarÃa migrar los datos de la aplicación a una región diferente.\\n\\nEspacio de trabajo: {{name}} ({{id}})\\nRegión predeterminada actual: {{region}}\\nRegión de destino: \\nAplicaciones a migrar: "}},"mcp":{"title":"Conexiones MCP","addMcp":"Añadir MCP","limitReached":"Has alcanzado el lÃmite de {{max}} servidores MCP. Elimina uno para añadir una nueva conexión.","description":"Conecta servidores MCP personalizados para ampliar las capacidades de construcción de Base44 con herramientas y datos externos.","descriptionWithLink":"Conecta servidores MCP personalizados para ampliar las capacidades de construcción de Base44 con herramientas y datos externos. <a>Más información sobre MCP<icon/></a>","learnMore":"Más información sobre MCP","emptyTitle":"Aún no hay servidor MCP conectado","addCustomMcp":"Añadir MCP personalizado","aria":{"enableConnection":"Activar {{name}}","disableConnection":"Desactivar {{name}}","actionsFor":"Acciones para {{name}}"},"actions":{"editDetails":"Editar detalles","removeMcp":"Eliminar MCP"},"deleteConfirm":{"title":"Eliminar conexión MCP","description":"¿Estás seguro de que quieres eliminar \\"{{name}}\\"? Esta acción no se puede deshacer.","confirm":"Eliminar","cancel":"Cancelar"},"tools":{"availableTools_one":"{{count}} herramienta disponible","availableTools_other":"{{count}} herramientas disponibles","more":"+{{count}} más","showLess":"Mostrar menos","loadingTools":"Cargando herramientas..."},"addDialog":{"title":"Añadir servidor MCP personalizado","name":"Nombre","namePlaceholder":"ej. Mi servidor MCP","url":"URL","urlExists":"El servidor MCP ya existe.","authentication":"Autenticación","authNone":"No requerida","authNoneDescription":"Conectar sin credenciales","authOAuth":"OAuth","authOAuthDescription":"Autorizar en el siguiente paso","customHeaders":"Headers personalizados","optional":"opcional","headersDescription":"Añade headers que se enviarán con cada solicitud (ej. claves API)","headerName":"Nombre del header","headerValue":"Valor","addHeader":"Añadir header","connectionFailed":"Conexión fallida","serverReady":"El servidor MCP está listo para conectar.","serverReadyWithTools_one":"El servidor MCP está listo para conectar. 1 herramienta encontrada.","serverReadyWithTools_other":"El servidor MCP está listo para conectar. {{count}} herramientas encontradas.","toolsFound_one":"{{count}} herramienta encontrada.","toolsFound_other":"{{count}} herramientas encontradas.","oauthConfirmed":"Servidor confirmado. Haz clic en \\"Autorizar y añadir\\" para completar la autenticación OAuth.","test":"Probar","testAndAdd":"Probar y añadir","authorizeAndAdd":"Autorizar y añadir","cancel":"Cancelar","urlRequired":"Por favor, introduce una URL del servidor.","fieldsRequired":"Por favor, completa todos los campos obligatorios.","authRequired":"Se requiere autenticación para este servidor. Selecciona OAuth para continuar.","authNotRequired":"Este servidor no requiere OAuth. Intenta añadir sin OAuth.","testFailed":"La prueba de conexión ha fallado."},"editDialog":{"title":"Editar MCP conectado","enabled":"Activado","nameRequired":"Por favor, introduce un nombre.","changeInfo":"Para cambiar la URL o el método de autenticación, crea una nueva conexión MCP.","saveChanges":"Guardar cambios","removeMcp":"Eliminar MCP","cancel":"Cancelar"},"toast":{"added":"Conexión MCP añadida","addedDescription":"Conectado exitosamente al servidor MCP.","addedWithName":"Conexión \\"{{name}}\\" añadida exitosamente.","saved":"Cambios guardados","savedDescription":"Conexión MCP actualizada exitosamente."}},"skills":{"title":"Habilidades","addSkill":"Añadir habilidad","addSkillLower":"añadir habilidad","editSkill":"Editar habilidad","viewSkill":"Ver habilidad","deleteSkill":"Eliminar habilidad","limitReached":"Has alcanzado el lÃmite de {{max}} habilidades. Elimina una para añadir una nueva.","description":"Crea conjuntos de instrucciones reutilizables que el constructor de IA puede activar durante las conversaciones.","emptyDescription":"Las habilidades son directrices guardadas que definen cómo la IA construye tus apps. Se activan cuando es necesario para seguir tus reglas y mejores prácticas automáticamente.","emptyDescriptionWithLink":"Las habilidades son directrices guardadas que definen cómo la IA construye tus apps. Se activan cuando es necesario para seguir tus reglas y mejores prácticas automáticamente. <a>Saber más</a>","learnMore":"Saber más","getStartedWithTemplate":"Empezar con una plantilla","viewMore":"Ver más","failedToLoadTemplates":"Error al cargar plantillas de habilidades","templatesUnavailable":"Las plantillas predefinidas pueden no estar disponibles.","failedToLoadTemplate":"Error al cargar la plantilla","form":{"skillName":"Nombre de la habilidad","namePlaceholder":"ej. brand-guidelines","nameRequired":"El nombre es obligatorio","nameMaxLength":"El nombre debe tener como máximo {{max}} caracteres","namePattern":"Solo minúsculas, números y guiones (ej. code-review)","nameExists":"Ya existe una habilidad con este nombre","description":"Descripción","descriptionHint":"Indica al agente cuándo usar esta habilidad. Lee esto para decidir si activarla.","descriptionPlaceholder":"ej. Aplica los colores de marca, tipografÃa y patrones de diseño en todas las páginas y componentes. Usar al crear nuevas páginas, actualizar estilos o cuando el usuario mencione la marca o el sistema de diseño.","instructions":"Instrucciones","instructionsHint":"Las reglas paso a paso que tu agente sigue cuando esta habilidad se activa. EscrÃbelo como si estuvieras entrenando a un nuevo miembro del equipo.","instructionsPlaceholder":"## Colores de Marca\\nPrimario: #1E40AF (navegación, botones)\\nAcento: #F59E0B (resaltados, CTAs)\\nFondo: #F8FAFC, Superficie: blanco\\n\\n## TipografÃa\\nEncabezados: negrita, slate oscuro\\nCuerpo: text-sm text-slate-600\\nEspaciado consistente entre secciones\\n\\n## Patrones de Componentes\\n- Usar Card con sombra sutil para secciones de datos\\n- Siempre incluir estados de carga y vacÃos\\n- Formularios: usar diálogos Sheet para crear/editar\\n- Tablas: filas alternas, columnas ordenables","reviewHint":"Refinado por IA. Siéntete libre de ajustar antes de guardar."},"dialog":{"reviewTitle":"Revisar tu habilidad","reviewSubtitle":"Comprueba la descripción e instrucciones antes de guardar. Puedes editarlo en cualquier momento.","pickerTitle":"Añadir habilidad o empezar desde cero","startFromScratch":"Empezar desde cero","cancel":"Cancelar","backToOriginal":"Volver al original","saveSkill":"Guardar habilidad","saveChanges":"Guardar cambios","refineAndReview":"Refinar y revisar","refineShort":"Refinar","close":"Cerrar","add":"Añadir","enabled":"Activado"},"toast":{"created":"Habilidad creada","createdDescription":"\\"{{name}}\\" se ha añadido.","failedToCreate":"Error al crear la habilidad","updated":"Habilidad actualizada","updatedDescription":"\\"{{name}}\\" se ha guardado.","failedToUpdate":"Error al actualizar la habilidad","refinedTooLong":"La habilidad refinada es demasiado larga","refinedTooLongDescription":"Intentamos condensarla pero el resultado sigue superando el lÃmite de caracteres. Acorta el contenido e inténtalo de nuevo.","failedToPolish":"Error al refinar la habilidad","failedToLoad":"Error al cargar la habilidad","failedToLoadList":"Error al cargar las habilidades","retryLater":"Por favor, inténtalo más tarde.","retryAgain":"Por favor, inténtalo de nuevo.","removed":"Habilidad eliminada","removedDescription":"La habilidad ha sido eliminada."},"deleteConfirm":{"description":"¿Estás seguro de que quieres eliminar \\"{{name}}\\"? Esta acción no se puede deshacer.","confirm":"Eliminar","cancel":"Cancelar"},"aria":{"enableSkill":"Activar {{name}}","disableSkill":"Desactivar {{name}}","actionsFor":"Acciones para {{name}}"}},"secrets":{"title":"Secretos","description":"Gestiona credenciales y tokens de acceso para el acceso programático a tu workspace.","apiKeys":{"title":"Claves de API","description":"Crea y gestiona claves API para el acceso programático a tu workspace. Usa estas claves para transmitir registros de auditorÃa, conectar tu proveedor de identidad mediante SCIM o extraer datos del workspace a un sistema externo a través de la API de Monitorización.","createButton":"Crear clave de API","limitReached":"Has alcanzado el lÃmite máximo de {{max}} claves de API. Elimina una clave existente para crear una nueva.","table":{"name":"Nombre","key":"Clave","createdBy":"Creado por","created":"Creado","lastUsed":"Último uso","status":"Estado","never":"Nunca"},"status":{"active":"Activo","disabled":"Desactivado"},"emptyState":{"title":"Aún no hay claves de API","description":"Las claves de API del workspace proporcionan acceso programático a las APIs del workspace (SIEM, SCIM, integraciones personalizadas)."},"actions":{"edit":"Editar","disableKey":"Desactivar clave","enableKey":"Activar clave","deleteKey":"Eliminar clave","actionsFor":"Acciones para {{name}}"},"sheet":{"editButton":"Editar","disableButton":"Desactivar","enableButton":"Activar"},"disableConfirm":{"title":"¿Desactivar clave de API?","description":"La clave de API <strong>\\"{{name}}\\"</strong> se desactivará inmediatamente. Las integraciones que usen esta clave dejarán de funcionar.","note":"Puedes reactivarla más tarde.","confirm":"Desactivar clave","cancel":"Cancelar"},"enableConfirm":{"title":"¿Activar clave de API?","description":"La clave de API <strong>\\"{{name}}\\"</strong> se reactivará. Las integraciones que usen esta clave volverán a funcionar.","confirm":"Activar clave","cancel":"Cancelar"},"deleteConfirm":{"title":"¿Eliminar clave de API?","description":"La clave de API <strong>\\"{{name}}\\"</strong> se eliminará permanentemente. Esta acción no se puede deshacer. Las integraciones que usen esta clave dejarán de funcionar inmediatamente.","confirm":"Eliminar clave","cancel":"Cancelar"},"toast":{"loadError":"Error al cargar las claves de API","loadErrorDescription":"Por favor, inténtalo de nuevo.","disabled":"Clave de API desactivada","disabledDescription":"\\"{{name}}\\" ha sido desactivada.","disableError":"Error al desactivar la clave de API","enabled":"Clave de API activada","enabledDescription":"\\"{{name}}\\" ha sido reactivada.","enableError":"Error al activar la clave de API","deleted":"Clave de API eliminada","deletedDescription":"\\"{{name}}\\" ha sido eliminada permanentemente.","deleteError":"Error al eliminar la clave de API","createError":"Error al crear la clave de API","updateError":"Error al actualizar la clave de API","copyError":"Error al copiar la clave de API","updated":"Clave de API actualizada","updatedDescription":"\\"{{name}}\\" ha sido guardada."},"createDialog":{"title":"Crear clave de API","titleReveal":"Clave de API creada","namePlaceholder":"ej. Integración SIEM","descriptionPlaceholder":"¿Para qué se usa esta clave?","cancelButton":"Cancelar","createButton":"Crear clave","creatingButton":"Creando...","warningMessage":"Copia esta clave ahora – no podrás verla de nuevo. Trátala como una contraseña: otorga acceso a los datos de tu workspace a través de la API.","yourApiKey":"Tu clave de API","doneButton":"Listo","copyAria":"Copiar clave de API"},"editDialog":{"title":"Editar clave de API","cancelButton":"Cancelar","saveButton":"Guardar","savingButton":"Guardando..."},"formFields":{"name":"Nombre","description":"Descripción","descriptionOptional":"(opcional)"}}},"authSecurity":{"title":"Autenticación y seguridad","description":"Configura los ajustes de autenticación y seguridad para tu espacio de trabajo.","sso":{"title":"Configuración de inicio de sesión único","configureTooltip":"Configura el SSO para tu espacio de trabajo","description":"Activa el SSO para simplificar la autenticación para los miembros de tu espacio de trabajo.","settingUp":"Configurando...","setUp":"Configurar","setUpConfiguration":"Configurar SSO","enforcedTooltip":"Este SSO está aplicado a todas las apps en el espacio de trabajo, lo que significa que lo usan automáticamente para autenticación. Para actualizar los ajustes de aplicación, ve a Configuración de Apps.","enforcedBadge":"Aplicado a las apps","setUpAction":"Configurar","configure":"Configurar","selectProvider":"Seleccionar proveedor SSO","cancelSetup":"Cancelar configuración","dismiss":"Cerrar","saving":"Guardando...","enableSSO":"Activar SSO","saveSSOSettings":"Guardar configuración SSO","notAvailableTitle":"No disponible","notAvailableDesc":"El inicio de sesión único (SSO) no está disponible para espacios de trabajo personales.","limitedAccessTitle":"Acceso limitado","limitedAccessDesc":"Solo los administradores del espacio de trabajo pueden configurar el SSO.","toast":{"error":"Error","failedToLoadSettings":"Error al cargar la configuración SSO","failedToLoadAppSettings":"Error al cargar la configuración de la app","ssoEnabled":"SSO activado","ssoEnabledDesc":"El inicio de sesión único ha sido activado para tu espacio de trabajo","ssoDisabled":"SSO desactivado","ssoDisabledDesc":"El inicio de sesión único ha sido desactivado","failedToUpdateStatus":"Error al actualizar el estado del SSO","success":"Éxito","settingsUpdated":"Configuración SSO actualizada correctamente","failedToUpdate":"Error al actualizar la configuración SSO"},"fields":{"client_id":"ID de cliente","client_secret":"Secreto del cliente","scope":"Scope","discovery_url":"URL de descubrimiento","tenant_id":"ID de inquilino","okta_domain":"Dominio de Okta","auth_endpoint":"Endpoint de autorización","token_endpoint":"Endpoint de token","userinfo_endpoint":"Endpoint de información del usuario","jwks_uri":"URI de JWKS","name":"Nombre del proveedor"},"autoGenerated":"(Generado automáticamente)","placeholders":{"client_id":"Ingresa el ID de cliente","client_secret":"Ingresa el secreto del cliente","scope":"Ingresa el scope","discovery_url":"Ingresa la URL de descubrimiento","tenant_id":"Tu ID de inquilino de Azure AD","okta_domain":"tu-empresa","auth_endpoint":"Ingresa el endpoint de autorización","token_endpoint":"Ingresa el endpoint de token","userinfo_endpoint":"Ingresa el endpoint de información del usuario","jwks_uri":"Ingresa la URI de JWKS","name":"Ingresa el nombre del proveedor"},"tooltips":{"clientId":"El ID de cliente OAuth proporcionado por tu proveedor de identidad","clientSecret":"El secreto de cliente OAuth proporcionado por tu proveedor de identidad (mantenlo confidencial)","scopeGeneral":"Scopes de OAuth a solicitar (openid, email, profile son los más comunes)","scopeGithub":"Scopes de OAuth a solicitar (user:email para GitHub)","discoveryUrlGoogle":"Endpoint de descubrimiento OIDC (preconfigurado para Google)","discoveryUrlMicrosoft":"Endpoint de descubrimiento OIDC generado automáticamente a partir de tu ID de inquilino","discoveryUrlOkta":"Endpoint de descubrimiento OIDC generado automáticamente a partir de tu dominio de Okta","discoveryUrlAdvanced":"URL del endpoint de descubrimiento OIDC (si es compatible con tu proveedor)","tenantId":"ID de inquilino de Azure AD. Portal Azure → Azure Active Directory → Información general","oktaDomain":"Tu nombre de dominio de Okta (p. ej., 'tu-empresa' de tu-empresa.okta.com)","authEndpointGithub":"Endpoint de autorización OAuth de GitHub (preconfigurado)","authEndpointGeneral":"URL del endpoint de autorización OAuth","tokenEndpointGithub":"Endpoint de token OAuth de GitHub (preconfigurado)","tokenEndpointGeneral":"URL del endpoint de token OAuth","userinfoEndpointGithub":"Endpoint de usuario de la API de GitHub (preconfigurado)","userinfoEndpointGeneral":"URL del endpoint de información del usuario OAuth","jwksUri":"URI del conjunto de claves web JSON para la verificación de tokens","providerName":"Nombre personalizado para tu proveedor SSO"},"providerFallback":"SSO de {{name}}","providers":{"advanced":"Configuración avanzada / manual"}},"domainVerification":{"title":"Verificación de dominio","label":"Dominio del espacio de trabajo","placeholder":"Agrega tu dominio","hint":"El dominio vinculado a tu espacio de trabajo","check":"Verificar","verified":"Verificado","checking":"Verificando","copyFailed":"No se pudo copiar al portapapeles","dnsTimedOut":"La verificación DNS ha expirado. Revisa tu configuración DNS e inténtalo de nuevo.","domainVerifiedSuccess":"¡Dominio verificado exitosamente!","enterDomainFirst":"Ingresa un dominio primero","domainSaved":"Dominio guardado. Agrega el registro DNS para verificar la propiedad.","configFailed":"No se pudo configurar la verificación de dominio","verificationReset":"La verificación de dominio ha sido restablecida","resetFailed":"No se pudo restablecer la verificación de dominio","addDnsRecords":"Agregar registros DNS para {{domain}}","dnsInstructions":"Inicia sesión en tu proveedor de dominio, ve a la configuración DNS y agrega este registro TXT.","type":"Tipo","hostName":"Host / Nombre","value":"Valor","dnsCheckNote":"La verificación DNS puede tardar unos minutos. Una vez que todo esté actualizado, verificaremos tu dominio automáticamente.","checkingDns":"Verificando tus registros DNS...","resetting":"Restableciendo...","reset":"Restablecer","copyLabel":"Copiar {{label}}"}}}`),DB={earnBonusCredits:"Gana créditos extra"},TB={apps:"Apps",superagents:"Superagentes",newAgent:"Nuevo Agente",emptyAgents:"Crea tu primer agente y ve tus conversaciones aquÃ.",allAgents:"Todos los Agentes",settings:"Configuración",inviteMembers:"Invitar miembros",allWorkspaces:"Todos los Espacios",org:"Organización",createNewWorkspace:"Crear nuevo espacio",recents:"Recientes",favorites:"Favoritos",noFavoritesYet:"Aún no hay favoritos",addAppsForQuickAccess:"Añade tus apps para acceso rápido",view_all:"Ver todo"},EB={pageTitle:"Comprar Tarjeta de Regalo Base44",pageSubtitle:"Regala el poder de crear. EnvÃa una tarjeta de regalo a un amigo.",tabBuy:"Comprar Tarjeta de Regalo",tabPurchased:"Compradas",successTitle:"¡Tarjeta de regalo comprada con éxito!",successDescription:"El destinatario recibirá un correo con el código de la tarjeta de regalo.",successDescriptionPdf:"Revisa tu correo electrónico para obtener una tarjeta de regalo imprimible que puedes dar en persona.",dismissSuccess:"Cerrar mensaje de éxito",amount:"Monto",customAmount:"$ Personalizado",customAmountPlaceholder:"{{symbol}} Monto personalizado",customAmountError:"El monto debe ser entre {{min}} y {{max}}",creditsInfo:"Esta tarjeta de regalo incluye <strong>{{credits}} créditos de mensajes</strong> para crear apps",deliveryMethodTitle:"Elige el método de entrega",deliveryEmail:"Enviar correo al destinatario (inmediatamente después de la compra)",deliveryPdf:"Enviarme un correo (PDF para imprimir)",recipientTitle:"Para",recipientName:"Nombre",recipientNamePlaceholder:"Nombre del destinatario",recipientEmail:"Correo electrónico",recipientEmailPlaceholder:"Correo del destinatario",messageLabel:"Mensaje de la tarjeta de regalo (opcional)",messagePlaceholder:"Agregar un mensaje personal...",suggestMessage:"Sugerir un mensaje",suggestFallbackName:"amigo",messageCharCount:"{{count}}/300 caracteres",senderTitle:"De",senderName:"Tu nombre",senderNamePlaceholder:"Tu nombre",submitButton:"Continuar con la compra",submitting:"Procesando...",errorGeneric:"Algo salió mal",historyEmpty:"Aún no tienes tarjetas de regalo. ¡Compra una para un amigo!",historyTo:"Para {{name}}",historyCodeLabel:"Código de tarjeta de regalo",historyCopy:"Copiar",historyCopied:"Copiado",historyRedeemed:"Esta tarjeta de regalo ha sido canjeada",historyRedeemedOn:"Esta tarjeta de regalo fue canjeada el {{date}}",historySentTo:"Enviada a {{email}}",statusSent:"Enviada",statusRedeemed:"Canjeada",statusExpired:"Expirada",statusProcessing:"Procesando",statusPending:"Pendiente",statusRevoked:"Revocada",designTitle:"Elegir un diseño",historyActions:"Acciones",designClassic:"Clásico",designSunrise:"Amanecer",designOcean:"Océano",cardLabel:"Tarjeta de Regalo",cardCreditsLabel:"créditos de mensajes",cardFor:"Para {{name}}",cardDefaultName:"Tu Amigo",historyError:"No se pudieron cargar las tarjetas de regalo. Inténtalo de nuevo.",historyDateIssued:"Fecha de emisión",historyRecipient:"Destinatario",historyAmount:"Monto",historyStatus:"Estado",historyCode:"Código",historySenderDetails:"Detalles del remitente",historySentToYou:"Enviada a ti",historyViewCode:"Ver código",historyHideCode:"Ocultar código",historyDownloadPdf:"Descargar PDF",historyResend:"Reenviar",historyResendSuccess:"¡Correo de tarjeta de regalo reenviado con éxito!",historyResendError:"Error al reenviar el correo. Inténtalo de nuevo.",historyDownloadError:"Error en la descarga. Inténtalo de nuevo.",historyCredits:"créditos",emailInvalid:"Por favor ingresa una dirección de correo válida",buyGiftCard:"Comprar Tarjeta de Regalo",giftAndReferrals:"Regalos y Referencias",redeemTitle:"¡Has recibido una tarjeta de regalo!",redeemDescription:"Una vez canjeados, los créditos se aplicarán a tu espacio de trabajo.",redeemSelectWorkspace:"Seleccionar un espacio de trabajo",redeemBackToWorkspace:"Volver al espacio de trabajo",redeemCheckCreditUsage:"Ver uso de créditos",redeemErrorDescription:"Este código ya fue utilizado y no puede canjearse de nuevo. Si no sabes qué pasó, puedes revisar tus créditos o contactar al soporte.",redeemDefaultWorkspace:"este",error:"Error",redeemSuccess:"¡Tarjeta de regalo canjeada!",redeemSuccessDescription:"{{credits}} créditos añadidos a {{workspace}}.",redeemButton:"Canjear tarjeta de regalo",redeemNotNow:"Ahora no",redeemDocsLink:"Aprende cómo funcionan los créditos de tarjetas de regalo en <docsLink>nuestra documentación</docsLink>",redeemCouponDescription:"Canjéala para obtener {{amount}} de descuento en tu suscripción.",redeemCouponAppliedTitle:"¡Tarjeta de regalo aplicada!",redeemCouponReadyTitle:"¡Tarjeta de regalo lista para usar!",redeemCouponNoWorkspace:"No se seleccionó un espacio de trabajo",coupon:{title:"Canjear un cupón o tarjeta de regalo",description:"Ingresa tu código para agregar créditos a tu saldo.",placeholder:"Ingresa tu código",apply:"Aplicar",success:"¡Cupón aplicado con éxito!",invalidCode:"El código es inválido. Inténtalo de nuevo.",notFound:"Código de cupón no encontrado. Verifica el código e inténtalo de nuevo.",giftCardNotFound:"Tarjeta de regalo no encontrada. Verifica el código e inténtalo de nuevo.",redeemFailed:"No se pudo canjear la tarjeta de regalo. Inténtalo de nuevo."},errors:{invalidRecipientEmail:"Por favor, ingresa una dirección de correo electrónico válida",recipientEmailRequired:"El correo electrónico del destinatario es obligatorio",checkoutFailed:"No se pudo iniciar la compra. Inténtalo de nuevo.",confirmPurchaseFailed:"No se pudo confirmar la compra. Inténtalo de nuevo.",alreadyRedeemed:"Esta tarjeta de regalo ya fue canjeada",notAvailable:"Esta tarjeta de regalo no está disponible para canje",expired:"Esta tarjeta de regalo ha expirado",notWorkspaceMember:"No eres miembro del espacio de trabajo seleccionado",networkError:"Error de red. Por favor verifica tu conexión a internet e inténtalo de nuevo.",rateLimitExceeded:"Demasiados intentos. Inténtalo de nuevo más tarde.",permissionDenied:"Solo los propietarios del espacio de trabajo pueden canjear tarjetas de regalo. Pide a un propietario que aplique este código.",invalidPlanPrice:"Este plan no está disponible para el pago con tarjeta de regalo. Selecciona otro plan."},creditBanner:"Tienes {{amount}} de crédito de tarjeta de regalo en tu cuenta. Se aplicará a tu próxima factura automáticamente.",upgradeGiftCardWarning:"Tu plan actual fue adquirido con una tarjeta de regalo. El crédito de la tarjeta de regalo no se transfiere en cambios de plan — se te cobrará el precio prorrateado."},PB={back:"Volver"},_B="Cargando...",xB={message:"Conectado como <strong>{{email}}</strong> — no coincide con la cuenta esperada.",switchAccount:"Cambiar cuenta",dismiss:"Cerrar banner"},IB={topBar:bB,createWorkspacePage:yB,workspaceMenu:kB,agentEditorMenu:wB,credits:AB,community:SB,workspaceSettings:CB,referralCta:DB,sidebar:TB,giftCards:EB,common:PB,loading:_B,userMismatch:xB},RB={notifications:"Notificaciones",latestNews:"Últimas noticias"},zB={loading:"Cargando...",loadingMore:"Cargando más...",errorLoading:"Error al cargar las notificaciones",noNotifications:"Aún no hay notificaciones",noMoreNotifications:"No hay más notificaciones",noNews:"Aún no hay noticias"},MB={markAllAsRead:"Marcar todo como leÃdo",readMore:"Leer más",showLess:"Ver menos",upgrade:"Actualizar",percentOff:"{{percent}}% de descuento"},NB={tabs:RB,states:zB,actions:MB},FB="Plan y facturación",LB="Gestionar suscripción",jB={planAndBilling:"Plan y facturación"},OB={details:"Detalles de la suscripción",cancelPlan:"Cancelar plan",cancelling:"Cancelando...",explorePlans:"Explorar planes",reactivatePlan:"Reactivar plan",reactivating:"Reactivando...",upgradePlan:"Mejorar plan",updatePayment:"Actualizar pago",managePlan:"Gestionar plan",yourPlan:"Tu plan",creditsPerMonth:"Créditos por mes",price:"Precio",nextBillingDate:"Próxima fecha de facturación",highlights:"Destacados del plan",cancelChange:"Cancelar cambio",cancelTooltip:"Para cancelar tu suscripción, primero cancela el cambio a un plan inferior programado",currentlyUsing:"Estás usando el plan <bold>{{plan}}</bold>",subscriptionEndsOn:"Tu suscripción terminará el {{date}}",subscriptionRenewsOn:"Tu suscripción se renueva el {{date}}",noActiveSubscription:"Sin suscripción activa",keepSubscription:"¿Quieres mantener tu suscripción? Haz clic en <manageLink>Gestionar plan</manageLink> y cancela el cambio.",planChangeNotice:"Tu plan cambiará a {{plan}} al final de tu ciclo de facturación actual.",cancelOnDate:"Tu plan está programado para cancelarse el {{date}}. Reactiva para mantener tus créditos y funciones actuales.",cancelNoDate:"Tu suscripción está programada para cancelarse. Reactiva para mantener tus créditos y funciones actuales.",free:"Gratuito",monthly:"mensual",yearly:"anual",subscriptionCancelled:"Suscripción cancelada",staysActiveUntil:"Todo permanece activo hasta {{date}}",creditsFormat:"{{messageCredits}} mensaje | {{integrationCredits}} integración",priceFormat:"{{amount}} {{symbol}}/{{period}}"},BB={privateApps:"Aplicaciones privadas",inAppCodeEditing:"Edición de código en la aplicación",unlimitedApps:"Aplicaciones ilimitadas",removeBase44Badge:"Eliminar insignia de Base44",connectDomain:"Conectar un dominio",backendFunctions:"Funciones de backend",github2WaySync:"Sincronización bidireccional con Github",customOAuth:"OAuth personalizado desde Google Console",aiModelSelection:"Selección de modelo de IA",stripeIntegration:"Integración con Stripe",customEmailDomain:"Dominio de correo personalizado",appStoreFileDownloads:"Descargas de archivos de la tienda de aplicaciones"},UB={title:"Pago vencido",description:"El pago de tu suscripción está vencido. Actualiza tu método de pago para restaurar el acceso completo a las funciones de tu plan.",tryAgain:"Intentar de nuevo",trying:"Procesando..."},qB={title:"Método de pago",manage:"Gestionar",noPaymentMethod:"No hay método de pago registrado",default:"Predeterminado",expires:"Vence {{month}}/{{year}}"},VB={title:"Información de facturación",manage:"Gestionar",name:"Nombre",email:"Correo electrónico",billingAddress:"Dirección de facturación",noInformation:"No hay información de facturación disponible"},$B={title:"Historial de facturación",noHistory:"No hay historial de facturación disponible",loading:"Cargando historial de facturación...",loadError:"Error al cargar los datos de facturación",planDescription:"Plan {{plan}}",downloadInvoice:"Descargar factura"},WB={managingBillingFor:"Gestionando la facturación de <bold>{{name}}</bold>",subscriptionRenewsOn:"La suscripción del espacio de trabajo se renueva el {{date}}",noActiveSubscription:"Sin suscripción activa en el espacio de trabajo",manage:"Gestionar",defaultName:"espacio de trabajo",addSeats:"Añadir licencias",loadError:"Error al cargar el historial de facturación del espacio de trabajo",workspaceSeats:"Licencias del espacio de trabajo",contactAdmin:{title:"Plan del espacio de trabajo",subtitle:"Gestionado por tu espacio de trabajo",body:"¿Necesitas más créditos? Contacta al administrador de tu espacio de trabajo para mejorar el plan de tu equipo."}},GB={portalError:"No se pudo abrir el portal de facturación. Inténtalo más tarde o contacta con el soporte.",paymentPortalError:"No se pudo abrir la gestión de pagos. Por favor, inténtalo de nuevo.",scheduleCancelSuccess:"Programación de suscripción cancelada correctamente",scheduleCancelError:"Error al cancelar la programación de suscripción. Por favor, inténtalo más tarde.",subscriptionCancelError:"Error al cancelar la suscripción. Por favor, inténtalo de nuevo."},HB={title:FB,manageSubscription:LB,breadcrumb:jB,subscription:OB,features:BB,pastDue:UB,paymentMethod:qB,billingInformation:VB,billingHistory:$B,workspace:WB,toasts:GB},YB={title:"Hablemos",subtitle:"Conéctese con nuestro equipo para ver cómo Base44 puede ayudar a su organización.",form:{firstName:"Nombre*",lastName:"Apellido*",workEmail:"Correo corporativo*",companyWebsite:"Sitio web de la empresa*",role:"Cargo*",discussion:"¿Qué le gustarÃa comentar?",submit:"Enviar"},success:{title:"¡Gracias por ponerse en contacto!",description:"Hemos recibido su mensaje y nuestro equipo le responderá en un plazo de 24 horas. ¡Estaremos encantados de acompañarle en su camino con Base44!"}},KB={iso27001:{title:"ISO 27001",subtitle:"Gestión de seguridad ISO"},soc2:{title:"SOC 2 Tipo II",subtitle:"SOC para organizaciones de servicios"},gdpr:{title:"RGPD",subtitle:"Reglamento de protección de datos y privacidad"}},ZB={fiveApps:"5 apps",unlimitedCollaborators:"Colaboradores ilimitados",userAnalytics:"AnalÃticas de usuario",aiAgents:"Agentes de IA",limitedDb:"Base de datos limitada a 512 MB",unlimitedApps:"Apps ilimitadas",unlimitedNumberOfApps:"Número ilimitado de apps",connectDomain:"Conectar un dominio",connectorsIntegrations:"Conectores e integraciones",backendFunctions:"Funciones de backend",scaledUserAnalytics:"AnalÃticas de usuario escaladas",privateApps:"Apps privadas",flexibleAiModelControl:"Control flexible del modelo de IA",removeBase44Branding:"Eliminar la marca de Base44",inAppCodeEditing:"Edición de código en la app",inAppCodeEdits:"Edición de código en la app",freeDomainOneYear:"Dominio gratuito por 1 año",creditsToShare:"25 créditos para compartir con un amigo",githubTwoWayIntegration:"Integración bidireccional con GitHub",githubIntegration:"Integración con GitHub",earlyAccessBeta:"Acceso anticipado a funciones beta",premiumSupport:"Soporte Premium",sso:"SSO",prioritySupport:"Soporte prioritario",workspacePublishingControls:"Controles de publicación del espacio de trabajo",workspaceTemplates:"Plantillas del espacio de trabajo",ipWhitelisting:"Lista de IPs permitidas",workspaceUsageAnalytics:"AnalÃticas de uso del espacio de trabajo",userRolesPermissions:"Roles y permisos de usuario",dataTrainingOptOut:"Exclusión del entrenamiento de datos",scim:"SCIM",creditConsumptionControl:"Control del consumo de créditos",dedicatedAccountManager:"Gestor de cuenta dedicado",dedicatedSolutionEngineer:"Ingeniero de soluciones dedicado",enterpriseSupport:"Soporte empresarial",customSecurityCapabilities:"Capacidades de seguridad personalizadas",customDatabaseStorage:"Almacenamiento de base de datos personalizado",customRateLimits:"LÃmites de tasa personalizados",tailoredOnboarding:"Incorporación y capacitación personalizadas",workspaceMonitoringApi:"API de monitoreo del espacio de trabajo"},JB={unlimitedApps:"Apps ilimitadas",unlimitedCollaboratorsSharedCredits:"Colaboradores ilimitados con créditos compartidos",customDomain:"Dominio personalizado",removeBase44Branding:"Eliminar marca Base44",builtInIntegrations:"Integraciones incorporadas",automations:"Automatizaciones",chooseAiModel:"Elige tu modelo de IA",inAppCodeEditing:"Edición de código en la app",twoWayGithubSync:"Sincronización bidireccional con GitHub",privateTemplates:"Plantillas privadas",earlyAccessNewFeatures:"Acceso anticipado a nuevas funciones",prioritySupport:"Soporte prioritario"},QB={choosePlan:"Elige el plan ideal para ti",usage:"Uso",back:"Volver",chooseBillingCycleUpgrade:"Elige tu ciclo de facturación para actualizar a {{planName}}",selectBillingCycle:"Elige un ciclo de facturación para tu plan {{planName}}",viewBilling:"Ver facturación",seePricing:"Ver precios"},XB={desktop:"Base44 es parte de <wixLogo/> - En el que confÃan más de 250 millones de personas en todo el mundo",mobile:{line1:"Base44 es parte de <wixLogo/>",line2:"En el que confÃan más de 250 millones de personas en todo el mundo"}},eU={badge:{recommended:"Recomendado",popular:"Popular",mostPopular:"Más popular",currentPlan:"Plan actual",discountOff:"{{discount}} de descuento"},button:{processing:"Procesando...",notAvailable:"No disponible",manageSubscription:"Gestionar suscripción",managePlan:"Gestionar plan",currentPlan:"Plan actual",upgradePlan:"Mejorar plan",upgradeTo:"Mejorar a {{planName}}",downgradeTo:"Reducir a {{planName}}",downgradePlan:"Reducir plan",switchPlan:"Cambiar plan",subscribeTo:"Suscribirse a {{planName}}",bookDemo:"Reservar demo",getPlan:"Obtener {{planName}}"},credits:{monthly:"Créditos mensuales",integration:"Créditos de integración",monthlyLower:"créditos mensuales",integrationLower:"créditos de integración",messageCredits:"créditos de mensajes",perMonth:"/mes",sharedAcrossUsers:"Compartido entre usuarios ilimitados",messageShort:"mensajes",integrationShort:"integración"},features:{highlights:"Aspectos destacados del plan:",allInBusinessPlus:"Todo en Business más:",allInBuilderPlus:"Todo en Builder más:",unlimitedAgents:"Número ilimitado de agentes"},free:{dailyCredits:"{{dailyCredits}} créditos diarios (hasta {{monthlyMax}}/mes)",integrationCredits:"{{amount}} créditos de integración"},enterprise:{description:"Gobernanza, escalabilidad y soporte de nivel empresarial, con un modelo de <bold>precio personalizado</bold> y una cantidad de créditos personalizada."}},tU={offTiers:"Niveles con 30% de descuento",currentPlan:"Plan actual",popular:"Popular",messageCredits:"créditos de mensajes",integrationCredits:"créditos de integración",perMonth:"/mes",placeholder:"Seleccionar créditos",footer:{cantFind:"¿No encuentras un plan que se adapte?",contactUs:"Contáctanos"}},aU={button:{cancel:"Cancelar",confirmUpgrade:"Confirmar mejora",confirmDowngrade:"Confirmar reducción",confirmSwitch:"Confirmar cambio",processing:"Procesando...",continue:"Continuar"},upgrade:{title:"Confirmar mejora de suscripción",upgradeDescription:"Estás a punto de mejorar al plan {{planName}} por <price/>. Tu suscripción se actualizará inmediatamente y se te cobrará un importe proporcional por el resto de tu ciclo de facturación.",upgradeDescriptionYearly:"Estás a punto de mejorar al plan anual {{planName}} por <price/>. Tu suscripción se actualizará inmediatamente y se te cobrará un importe proporcional por el resto de tu ciclo de facturación.",upgradeDescriptionShort:"Estás a punto de mejorar al plan {{planName}} por <price/>. Tu suscripción se actualizará inmediatamente y se te cobrará un importe proporcional."},downgrade:{title:"Confirmar reducción de suscripción",description:"Estás a punto de reducir al plan {{planName}} por {{price}}/mes. Este cambio entrará en vigor al final de tu ciclo de facturación actual."},switch:{title:"Cambiar plan",switchDescription:"Al cambiar al plan {{planName}} se actualizarán tus funciones disponibles y se establecerán tus lÃmites mensuales en <bold>{{messageCredits}} créditos de mensajes y {{integrationCredits}} créditos de integración.</bold>",nextBillingDate:"Estos cambios entrarán en vigor el {{date}}, al inicio de tu próximo ciclo de facturación.",nextBillingCycle:"Estos cambios entrarán en vigor al inicio de tu próximo ciclo de facturación."},manageSubscription:{title:"Gestionar tu suscripción",description:"Elige cómo quieres gestionar tu suscripción a {{planName}}.",upgradeToYearly:"Mejorar a facturación anual",upgradeToYearlySavings:"Ahorra y obtén un dominio gratis + 25 créditos para compartir",upgradeToYearlySavingsStarter:"Ahorra y obtén 25 créditos para compartir",managePayments:"Gestionar pagos",managePaymentsDescription:"Actualizar método de pago, ver facturas y más",managePaymentsDescriptionAlt:"Actualizar método de pago, ver facturas y más"},upgradeToYearly:{titleV1:"Confirmar mejora de suscripción",titleV2:"Mejorar plan",descriptionV2:"Al mejorar, se te cobrará un importe proporcional por el tiempo restante de tu plan actual. A partir de tu próxima fecha de facturación, se te cobrará el precio completo del plan de {{price}} × 12 meses.",benefitsTitle:"🎠Ventajas anuales",freeDomain:"Dominio gratuito durante un año",shareCredits:"25 créditos para compartir con amigos",betterValue:"Mejor valor con facturación anual"}},nU={title:"Preguntas frecuentes",whatIsBase44:{question:"¿Qué es Base44?",answer:{description:"Base44 es una plataforma impulsada por IA que te permite crear aplicaciones de software personalizadas sin necesidad de programar. Utiliza procesamiento de lenguaje natural para entender tus requisitos y generar software funcional basado en tus descripciones.",accessibility:"Nuestra plataforma está diseñada para ser fácil de usar y accesible para usuarios no técnicos, permitiéndote crear aplicaciones poderosas a través de simples conversaciones con nuestra IA."}},freePlan:{question:"¿Qué incluye el plan gratuito?",answer:{allowances:"El plan gratuito te ofrece una asignación diaria de 5 mensajes y un lÃmite mensual de 25 mensajes en total. También obtienes 100 créditos de integración para experimentar con diversas integraciones como autenticación, base de datos y análisis.",coreAccess:"Con el plan gratuito, tienes acceso a todos los tipos de integración principales, lo que te permite crear aplicaciones completamente funcionales con autenticación de usuarios, almacenamiento de datos y más, todo sin costo."}},integrationCredits:{question:"¿Qué son los créditos de integración?",answer:{definition:"Los créditos de integración se utilizan para acceder a las diversas integraciones de Base44 dentro de tu aplicación.",capabilities:"Estas integraciones mejoran la funcionalidad de tu app, incluyendo LLMs, carga de archivos, comprensión de imágenes, generación de imágenes, envÃo de correos electrónicos, envÃo de SMS, consultas de bases de datos y muchas más. El número de créditos de integración en tu plan determina cuántas de estas solicitudes puedes realizar por mes.",expiration:"Los créditos no utilizados expiran al final de tu ciclo de facturación mensual (en tu fecha de restablecimiento).",learnMore:"Obtén más información sobre cómo se usan los créditos en la Base de Conocimiento."}},appTypes:{question:"¿Qué tipos de aplicaciones puedo crear con Base44?",answer:{examples:"Base44 es versátil y puede utilizarse para crear una amplia variedad de aplicaciones, entre otras: productos SaaS completamente funcionales, herramientas de backoffice, aplicaciones de productividad personal, portales para clientes y herramientas de automatización de procesos de negocio.",prototyping:"También puedes usarlo para prototipado rápido y creación de MVPs, permitiéndote validar tus ideas rápidamente sin invertir en costosos recursos de desarrollo."}},ownership:{question:"¿Quién es el propietario de las aplicaciones creadas con Base44?",answer:{yourProperty:"Entre tú y Base44, todas las aplicaciones y contenido generado a través de nuestra plataforma se considerarán de tu propiedad. No reclamamos ningún derecho de propiedad sobre lo que crees usando Base44.",intellectualProperty:"Tu propiedad intelectual es tuya, y eres libre de usar, modificar, distribuir o vender las aplicaciones generadas según lo permita la ley."}},deployment:{question:"¿Cómo se despliegan las aplicaciones de Base44?",answer:{instantAccess:"Con Base44, el despliegue es increÃblemente simple. Tus aplicaciones son utilizables y compartibles de inmediato tan pronto como las creas. Simplemente usa y comparte la URL de tu app con otros.",noHosting:"No es necesario realizar pasos separados de alojamiento o despliegue, lo que hace que sea increÃblemente fácil poner en marcha tu aplicación rápidamente."}},planLimits:{question:"¿Qué sucede si alcanzo los lÃmites de mi plan?",answer:{limitations:"Cuando alcances tu lÃmite diario de mensajes, deberás esperar hasta el dÃa siguiente para enviar más mensajes. Si alcanzas tu lÃmite mensual, no podrás enviar mensajes adicionales ni realizar solicitudes de integración hasta el inicio de tu próximo ciclo de facturación.",upgradeOption:"Para evitar interrupciones en el desarrollo y uso de tu app, puedes actualizar a un plan de nivel superior con lÃmites aumentados en cualquier momento desde tu panel de facturación."}}},iU={pendingChange:{title:"Cambio de suscripción pendiente",message:"Tienes un cambio de suscripción al plan {{tierName}} programado para entrar en vigor al final de tu ciclo de facturación actual.",subMessage:'Nota: Para cancelar tu suscripción, primero cancela este cambio y luego usa "gestionar pagos" para cancelar.',cancelChange:"Cancelar cambio",cancelling:"Cancelando..."},cancellation:{title:"Cancelación de suscripción programada",message:"Tu suscripción finalizará el {{endDate}}. Hasta entonces, tienes acceso completo a todas las funciones.",subMessage:"¿Quieres mantener tu suscripción? Puedes reactivarla con un solo clic.",managePayments:"Gestionar pagos",processing:"Procesando..."}},rU={currentPlan:"Tu plan actual es {{displayName}},",withCredits:"con {{messageCredits}} créditos de mensajes y {{integrationCredits}} créditos de integración."},oU={title:"Beneficios de Base44:",responsiveVisualEditor:"Editor visual responsivo",builtInBackend:"Backend integrado",userManagement:"Gestión de usuarios"},sU={title:"Pago de suscripción vencido",tryAgain:"Intentar de nuevo",trying:"Intentando...",updatePaymentMethod:"Actualizar método de pago",description:"Tu último pago no se procesó. Inténtalo de nuevo o actualiza tu método de pago para restaurar el acceso completo a tu plan."},lU={error:"Error",success:"Éxito",checkoutError:"No se pudo crear la sesión de pago. Por favor, inténtalo más tarde.",subscriptionUpdated:"Suscripción actualizada",downgradeScheduled:"Tu suscripción ha sido programada para reducirse al final de tu ciclo de facturación.",upgradeSuccess:"Tu suscripción ha sido actualizada exitosamente. Los cambios se reflejarán en breve.",updateError:"No se pudo actualizar la suscripción. Por favor, inténtalo más tarde.",portalError:"No se pudo abrir el portal de facturación. Por favor, inténtalo más tarde.",scheduleCancelSuccess:"Programación de suscripción cancelada exitosamente",scheduleCancelError:"No se pudo cancelar la programación de suscripción. Por favor, inténtalo más tarde.",paymentPortalError:"No se pudo abrir la gestión de pagos. Por favor, inténtalo de nuevo."},cU={loadError:"No se pudo cargar la información de facturación del espacio de trabajo",loadErrorAlert:"No se pudo cargar la información de facturación del espacio de trabajo. Por favor, inténtalo más tarde.",seatTypePlan:"Plan {{seatType}}",currentPlanContact:"Actualmente estás en el plan {{seatType}}. Para hacer cambios, contacta a tu {{adminType}} del espacio de trabajo.",workspaceOwner:"Propietario del espacio de trabajo:",workspaceAdmin:"Administrador del espacio de trabajo:",viewerAccess:"Acceso de visualización",viewerAccessDescription:"Actualmente tienes acceso de visualización en este espacio de trabajo. Para obtener un asiento con acceso completo, contacta a tu {{adminType}} del espacio de trabajo.",adminAccessMessage:"<strong>Acceso de administrador:</strong> Visita el <a>panel del espacio de trabajo</a> para gestionar asientos, facturación y miembros del equipo.",adminTypes:{owner:"propietario",administrator:"administrador"}},dU={loadError:"No se pudo cargar la información del espacio de trabajo. Por favor, inténtalo más tarde.",workspacePlan:"Plan del espacio de trabajo:",renews:"Se renueva:",workspaceOwner:"Propietario del espacio de trabajo",contactOwner:"Para cambios de facturación o preguntas sobre la suscripción, contacta al propietario de tu espacio de trabajo.",ownerLabel:"Propietario del espacio de trabajo:",adminAccessMessage:"<strong>Acceso de administrador:</strong> Visita la página de <a>miembros del espacio de trabajo</a> para gestionar miembros.",billingManagedByOwner:"La facturación es gestionada por el propietario de tu espacio de trabajo. Contacta al propietario indicado arriba para cualquier pregunta relacionada con la facturación.",roles:{owner:{title:"Propietario",description:"Acceso completo a facturación, configuración y gestión de miembros del espacio de trabajo."},admin:{title:"Administrador",description:"Puede gestionar la configuración y los miembros del espacio de trabajo, pero no puede modificar la facturación."},editor:{title:"Editor",description:"Puede crear y editar apps dentro de este espacio de trabajo."},viewer:{title:"Visualizador",description:"Puede ver apps en este espacio de trabajo con acceso de solo lectura."},member:{title:"Miembro",description:"Miembro del equipo con acceso a las apps del espacio de trabajo."},guest:{title:"Invitado",description:"Colaborador externo con acceso a apps especÃficas en este espacio de trabajo."}}},uU={title:"Seguridad y cumplimiento",iso:{title:"ISO/IEC 27001",subtitle:"Gestión de seguridad ISO/IEC"},soc2:{title:"SOC 2 Type II",subtitle:"SOC para organizaciones de servicios"},gdpr:{title:"GDPR",subtitle:"Regulación de protección de datos y privacidad"}},pU={title:"Base44 para Empresas",subtitle:"Empodera a grandes organizaciones para construir soluciones que se adapten perfectamente a sus equipos, de forma segura y escalable",contactUs:"Contáctanos",features:{onboarding:{title:"Incorporación y Formación",description:"Planes de incorporación personalizados combinados con formación en vivo y recursos, diseñados para ayudar a administradores y usuarios finales a adoptar la plataforma rápidamente."},accountTeam:{title:"Equipo de Cuenta Dedicado",description:"Trabaja con un gestor de cuentas y un ingeniero de soluciones designados, que brindan orientación directa, escalaciones y alineación de hoja de ruta."},prioritySupport:{title:"Soporte prioritario, garantizado",description:"Obtén asistencia prioritaria garantizada y tiempos de respuesta definidos a través de un canal de soporte dedicado."},capabilities:{title:"Capacidades de Nivel Empresarial",description:"Funciones de seguridad, cumplimiento, gestión y monitoreo que proporcionan el control y la flexibilidad necesarios a escala."}}},mU={yearly:"Anual",monthly:"Mensual",yearlyInline:"anual",monthlyInline:"mensual",monthlyCredits:"Créditos mensuales",integrationCredits:"Créditos de integración",priceSuffixYearly:" × 12 meses",priceSuffixMonthly:" / cada mes",off:"DTO.",save:"AHORRA",discountBadge:"{{discount}} DTO.",saveBadge:"AHORRA {{amount}}",planNotFound:"Precios del plan no disponibles. Por favor vuelve e inténtalo de nuevo.",upgradeDialogTitle:"Confirmar mejora de suscripción",upgradeDialogDescription:"Estás a punto de mejorar al plan {{planName}} por <price/>/mes. Tu suscripción se actualizará inmediatamente y se te cobrará un monto prorrateado por el resto de tu ciclo de facturación.",noteMonthlyExcludes:"NOTA: La suscripción mensual no incluye:",whatsIncluded:"Qué incluye el plan {{period}}",chooseYearly:"Elige una suscripción <yearlyLink>anual</yearlyLink> para aprovechar al máximo tu plan premium",yearlyFeatures:{discount:"Disfruta de un descuento especial y ahorra dinero",freeDomain:"Dominio gratuito por 1 año",shareCredits:"Recibe 25 créditos para compartir con un amigo"},monthlyFeatures:{discount:"Descuento especial y ahorros",freeDomain:"Dominio gratuito por 1 año",shareCredits:"25 créditos para compartir con un amigo"},planNotAvailable:"Precios del plan no disponibles. Por favor, inténtalo de nuevo.",goBack:"Volver",continueToCheckout:"Continuar al pago",confirmSubscriptionUpgrade:"Confirmar mejora de suscripción",upgradeDescription:"Estás a punto de mejorar al plan {{planName}} por <strikethrough>{{originalPrice}}</strikethrough>{{price}}/mes. Tu suscripción se actualizará inmediatamente y se te cobrará un monto prorrateado por el resto de tu ciclo de facturación.",cancel:"Cancelar",confirmUpgrade:"Confirmar mejora",processing:"Procesando...",studentDiscountFootnote:"La oferta se aplica al primer año (12 meses) de un nuevo plan Starter. Uso único por usuario; el descuento no puede reactivarse después de la cancelación."},gU={bannerTitle:"¿Eres estudiante o profesor? Obtén hasta {{percent}}% de descuento en el plan Starter",bannerSubtitle:"Verifica tu correo universitario para desbloquear precios con descuento",verifiedWith:"Verificado con {{email}} - hasta {{percent}}% de descuento",starterPlan:"Plan Starter",active:"Activo",dialogTitle:"Descuento estudiantil",surveyTitle:"Cuéntanos sobre ti",alreadyActiveDesc:"Tu descuento estudiantil ya está activo.",emailStepDesc:"Verifica tu correo universitario para desbloquear precios estudiantiles.",codeStepDesc:"Enviamos un código de 6 dÃgitos a {{email}}",surveyStepDesc:"Solo unas pocas preguntas rápidas para completar tu verificación.",benefitDiscount:"Hasta {{percent}}% de descuento",benefitDiscountDetail:"en el plan Starter",benefitAccess:"Acceso completo",benefitAccessDetail:"a todas las funciones de Starter",benefitClaimOnce:"Canjear una vez",benefitClaimOnceDetail:"usar en cualquier momento en Starter",alreadyApplied:"Tu descuento estudiantil ya está aplicado",alreadyAppliedDesc:"Verificado con {{email}}. Los precios con descuento se muestran en los planes elegibles arriba.",gotIt:"Entendido",emailPlaceholder:"tu@universidad.edu",emailHint:"Aceptamos .edu, .ac.uk, .ac.il y otros dominios universitarios.",sending:"Enviando...",sendCode:"Enviar código de verificación",codePlaceholder:"Ingresa el código de 6 dÃgitos",verifying:"Verificando...",verifyCode:"Verificar código",changeEmail:"Cambiar correo",resendCooldown:"Reenviar código ({{seconds}}s)",resendCode:"Reenviar código",role:"Rol",student:"Estudiante",teacher:"Profesor",intendedUseLabel:"¿Para qué planeas usar Base44?",intendedUsePlaceholder:"ej.: Proyecto de clase, herramienta de investigación, tesis...",fieldOfStudy:"¿Cuál es tu campo de estudio?",fieldOfTeaching:"¿Cuál es tu campo de enseñanza?",selectField:"Selecciona un campo de estudio...",searchFields:"Buscar campos...",other:"Otro",specifyField:"Por favor especifica...",graduationDate:"Fecha esperada de graduación",month:"Mes",year:"Año",activating:"Activando...",verifyingEmail:"Verificando correo...",activateDiscount:"Activar descuento",errorNoEmail:"Por favor ingresa tu dirección de correo universitario.",errorInvalidEmail:"Por favor ingresa una dirección de correo válida.",errorSendFailed:"Error al enviar el código de verificación. Por favor intenta de nuevo.",errorEmailAlreadyClaimed:"Este correo universitario ya está vinculado a otra cuenta.",errorNoCode:"Por favor ingresa el código de 6 dÃgitos de tu correo.",errorInvalidCode:"Código inválido o expirado. Por favor intenta de nuevo.",errorNoIntendedUse:"Por favor cuéntanos para qué planeas usar Base44.",errorNoField:"Por favor selecciona tu campo de estudio.",errorNoFieldOther:"Por favor especifica tu campo de estudio.",errorNoGraduation:"Por favor selecciona tu fecha esperada de graduación.",toastActivatedTitle:"Descuento estudiantil activado",toastActivatedDesc:"Tus precios estudiantiles ahora están aplicados a los planes elegibles. Desplázate hacia arriba para ver los precios actualizados.",errorActivateFailed:"Error al activar el descuento. Por favor intenta de nuevo.",toastResentTitle:"Código reenviado",toastResentDesc:"Se ha enviado un nuevo código de verificación a tu correo.",errorResendFailed:"Error al reenviar el código. Por favor espera un momento e intenta de nuevo."},hU="Tu plan actual fue adquirido con una tarjeta de regalo. El crédito de la tarjeta de regalo no se transfiere en cambios de plan — se te cobrará el precio prorrateado.",fU={title:"Compra exitosa",redirecting:"Redirigiendo a la app en {{seconds}}s...",button:"Volver a la app"},vU={modal:YB,certificates:KB,features:ZB,borderTag:JB,header:QB,messageLabel:XB,card:eU,dropdown:tU,dialog:aU,faq:nU,notices:iU,manageSubscription:rU,benefits:oU,overduePayment:sU,toasts:lU,workspaceBilling:cU,workspaceRoles:dU,security:uU,enterprise:pU,periodSelector:mU,studentDiscount:gU,upgradeGiftCardWarning:hU,returnToApp:fU},bU="Invita amigos y gana créditos",yU="Invita amigos y gana créditos",kU="Invita y gana créditos",wU="Comparte tu enlace y gana {{credits}} créditos cuando tus amigos publiquen su primera app",AU={title:"¡IncreÃble! Has alcanzado el máximo de referidos",description:"Puedes referir hasta {{maxReferrals}} amigos en total",extra:"({{extra}} adicionales no ganarán créditos)"},SU={tryAgain:"Intentar de nuevo",copied:"¡Copiado al portapapeles!",copyButton:"Copiar",copiedButton:"Copiado"},CU={title:"Cómo funciona",shareLink:"Comparte tu enlace de referido único con amigos",signupBonus:"Ellos obtienen <bold>{{credits}} créditos</bold> cuando se registran",publishReward:"Tú ganas <bold>{{credits}} créditos</bold> cuando publican su primera app"},DU="Tus referidos ({{current}}/{{max}})",TU={registered:"Registrado",earned:"Ganado"},EU={back:"Volver",close:"Cerrar",srTitle:"Programa de referidos",baseDayBadge:"Base44 Day",creditsCount:"{{credits}} créditos",earnCredits:"Gana {{credits}} créditos",termsAndConditions:"Términos y condiciones",termsDescription:"Términos y condiciones del programa de referidos"},PU={title:"Términos y condiciones",eligibility:{title:"Elegibilidad",newUsersOnly:"Solo los nuevos usuarios pueden unirse a través de esta oferta de referido. Las cuentas existentes no están incluidas.",shareResponsibly:"Te pedimos que compartas tu enlace de referido de manera responsable. Publicarlo en lugares irrelevantes o de spam puede llevar a la eliminación del programa."},credits:{title:"Créditos de referido",earnOnPublish:"Ganas {{credits}} créditos cuando un amigo referido publica su primera app",bonusOnSignup:"Los amigos referidos reciben {{credits}} créditos de bonificación al registrarse",maxPerAccount:"Máximo de 5 referidos exitosos por cuenta",noCashValue:"Los créditos no tienen valor en efectivo y no pueden transferirse"},restrictions:{title:"Restricciones",voidFraudulent:"Base44 se reserva el derecho de anular referidos fraudulentos",nonTransferable:"Los códigos de referido no son transferibles"},footer:"Base44 se reserva el derecho de modificar o terminar este programa de referidos en cualquier momento. Los cambios serán comunicados a través de la plataforma."},_U={title:bU,titleDesktop:yU,titleMobile:kU,subtitle:wU,maxReached:AU,link:SU,howItWorks:CU,yourReferrals:DU,status:TU,dialog:EU,terms:PU},xU={title:"Spotlight",subtitle:"Explora aplicaciones y sitios web destacados creados con Base44",loading:"Cargando Spotlight…",errorMessage:"No se pudo cargar Spotlight. Por favor, inténtalo más tarde.",empty:"Aún no hay apps en Spotlight."},IU={title:"Error",description:"No se pudieron cargar las apps de Spotlight."},RU={label:"Spotlight del dÃa",byCreator:"por {{creator}}",screenshotAlt:"Captura de pantalla de {{appName}}",logoAlt:"Logo de {{appName}}"},zU={"beautifully-designed":"Diseño excepcional","loved-by-the-community":"Adorado por la comunidad",saas:"SaaS",education:"Educación","e-commerce":"Comercio electrónico",websites:"Sitios web"},MU={screenshotAlt:"Captura de pantalla de {{appName}}",logoAlt:"Logo de {{appName}}",viewDetailsLabel:"Ver detalles",viewDetailsAriaLabel:"Ver detalles de {{appName}}"},NU={backButton:"Spotlight",byCreator:"Por {{creator}}",iframeTitle:"Vista previa de {{appName}}",previewNotAvailable:"Vista previa no disponible"},FU={ariaLabel:"Enviar tu app a Spotlight",heading:"¿Quieres que tu app aparezca aquÃ?",description:"Muestra lo que has construido en Base44. EnvÃalo a Spotlight e inspira a la comunidad.",buttonText:"ENVÃA TU APP"},LU={title:"Enviar tu app a Spotlight",selectAppSubtitle:"Elige la app que quieres nominar para la página de Spotlight.",detailsSubtitle:"Cuéntanos por qué tu app deberÃa aparecer en la página de Spotlight.",back:"Atrás",cancel:"Cancelar",next:"Siguiente",searchPlaceholder:"Buscar apps...",aboutLabel:"Sobre esta app",aboutPlaceholder:"Cuéntanos algo interesante sobre tu app – funciones especiales, trucos ingeniosos o cualquier cosa que la comunidad deberÃa descubrir",screenshotLabel:"Captura de pantalla <optional>(opcional)</optional>",screenshotHint:"PNG, JPG o WebP — mÃn. 800×450 px, hasta 2 MB",submit:"Enviar",submitting:"Enviando…",submitError:"No se pudo enviar la solicitud de Spotlight.",successAlreadyInSpotlight:"Ya está en Spotlight",successRequestReceived:"Solicitud recibida",successDescription:'Revisaremos "{{appName}}" para Spotlight. Te responderemos pronto.'},jU={viewApp:"Ver App",share:"Compartir",upvote:"Votar",alreadyUpvoted:"Ya votaste",thankYouForVote:"¡Gracias por tu voto!",voteError:"No se pudo registrar el voto",voteErrorDescription:"Por favor, inténtalo más tarde.",linkShared:"Enlace compartido",linkCopied:"Enlace copiado al portapapeles",shareError:"No se pudo compartir"},OU={label:"¿SabÃas que?"},BU={editedAgo:"editado {{timeAgo}}",editedRecently:"Editado recientemente",noAppsFound:"No se encontraron apps",noAppsAvailable:"No hay apps disponibles",loadMore:"Cargar más apps",loading:"Cargando…"},UU={page:xU,fetchError:IU,featured:RU,sections:zU,card:MU,detailModal:NU,submitBanner:FU,requestModal:LU,actions:jU,didYouKnow:OU,appPicker:BU},qU={page:{title:"Ayuda y Soporte",subtitle:"Obtén la ayuda que necesitas para crear aplicaciones increÃbles con BASE44"},getStarted:"Comenzar",cards:{documentation:{title:"Documentación",description:"Explora guÃas completas, tutoriales, preguntas frecuentes y mejores prácticas para construir con Base44."},discord:{title:"Comunidad de Discord",description:"Conéctate con otros desarrolladores y obtén ayuda instantánea de nuestra activa comunidad."},supportTicket:{title:"Abrir Ticket de Soporte",description:"EnvÃa un ticket de soporte detallado y obtén asistencia personalizada."}},appContext:{title:"Soporte EspecÃfico de la App",description:"Las solicitudes de soporte estarán asociadas con la app <appId>{{appId}}</appId>"},quickActions:{title:"Acciones Rápidas",subtitle:"Gestiona tu experiencia de soporte",myTickets:{title:"Mis Tickets de Soporte",description:"Ver y gestionar tus tickets de soporte existentes"},communityForum:{title:"Foro de la Comunidad",description:"Nuestra recién creada comunidad de Reddit"}}},VU={fallbackTitle:"Conversación de soporte",appLink:"App"},$U={title:"Mis tickets de soporte",backToSupport:"Volver al soporte",showingTicketsForApp:"Mostrando tickets para la App: <app>{{appId}}</app>",filteredByApp:"Filtrado por App: <app>{{appId}}</app>"},WU={title:"Enviar ticket de soporte",titleResume:"Enviar un ticket de soporte"},GU={helpMessage:"¿Necesitas ayuda inmediata? <normal>Consulta nuestra </normal><docsLink>documentación</docsLink><normal> o únete a nuestra </normal><discordLink>comunidad de Discord</discordLink>."},HU={heading:"¿Continuar con tu solicitud de soporte?",description:"Anteriormente comenzaste a crear un ticket de soporte.",chooseHowToProceed:"Elige cómo deseas continuar:",continueWhereLeftOff:"Continuar donde lo dejaste",continueWhereLeftOffDesc:"Restaura tus entradas anteriores y continúa desde el último paso.",startNewTicket:"Iniciar un nuevo ticket",startNewTicketDesc:"Descarta el borrador e inicia una nueva solicitud de soporte.",continue:"Continuar"},YU={tellUsAboutYourIssue:"Cuéntanos sobre tu problema",whatTypeOfIssue:"¿Qué tipo de problema estás experimentando?",selectApp:"Selecciona la aplicación relacionada con tu problema"},KU={instruction:"Por favor, comparte qué estabas haciendo, qué salió mal y cómo podemos reproducirlo.",descriptionLabel:"Descripción",descriptionPlaceholder:`Ejemplo:
• Lo que intentabas hacer
• Lo que ocurrió en su lugar
• Cualquier mensaje de error
• Pasos para reproducirlo (si es relevante)`,attachmentsLabel:"Adjuntos",viewApp:"Ver app",dragAndDropFiles:"Arrastra y suelta archivos aquÃ",dropFilesHere:"Suelta los archivos aquÃ",browseFiles:"Examinar archivos",uploading:"Subiendo...",unsupportedFileType:'El tipo de archivo "{{type}}" no es compatible. Tipos admitidos: jpg, jpeg, png, pdf.',invalidFile:"Archivo no válido",failedToUpload:"Error al subir el archivo"},ZU={analyzingIssue:"Analizando tu problema...",categoryFullDescription:"Parece que tu problema cae en una de estas categorÃas.<br/>Selecciona la que mejor se adapte — nos ayuda a guiarte hacia la solución correcta."},JU={authentication:"Autenticación",billing:"Facturación",bug_report:"Reporte de error",domain:"Dominio",integrations_and_backend_functions:"Integraciones y Backend",chat_issues:"Problemas de chat",security:"Seguridad",social_post_bonus_credits:"Créditos de bonificación por publicación social",superagent:"Superagente",other:"Otro"},QU={searchPlaceholder:"Buscar aplicaciones...",addAppLink:"Agregar enlace de app",addAppLinkPlaceholder:"p. ej., https://your-app-url.com o https://yourapp.base44.app",invalidUrl:"Por favor, introduce una URL válida que comience con http:// o https://",noAppsFound:"No se encontraron apps",noAppsAvailable:"No hay apps disponibles",loadingMore:"Cargando...",loadMore:"Cargar más apps",edited:"editado {{time}}"},XU={loading:"Cargando conversación...",errorTitle:"Error al cargar la conversación",noConversationTitle:"Conversación no encontrada",noConversationMessage:"Esta conversación no existe o no tienes acceso a ella.",tryAgain:"Intentar de nuevo",ticketFallbackTitle:"Ticket de soporte",categoryFallback:"General",closeTicket:"Cerrar ticket",closing:"Cerrando...",aiAssistantInfo:"Asistente de IA · Puede cometer errores",talkToSpecialist:"Hablar con un especialista de soporte",handledBySpecialist:"Atendido por un especialista de soporte",notifyWhenResponds:"Notificarme cuando el soporte responda",ticketResolvedTitle:"Este ticket ha sido resuelto",ticketResolvedMessage:"Por favor, crea un nuevo ticket para soporte adicional",conversationClosed:"Esta conversación está cerrada",aiHandlingTicket:"El agente de IA está gestionando este ticket. Haz clic en <bold>Tomar control</bold> para responder manualmente.",typeResponse:"Escribe tu respuesta...",typeMessage:"Escribe tu mensaje...",failedLoadConversation:"No se pudo cargar la conversación. Por favor, inténtalo de nuevo.",ticketAlreadyResolved:"Este ticket ha sido resuelto. Por favor, crea un nuevo ticket para soporte adicional.",failedCloseTicket:"No se pudo cerrar el ticket. Por favor, inténtalo de nuevo.",failedEscalate:"No se pudo escalar el ticket. Por favor, inténtalo de nuevo.",confirmCloseTicket:"¿Estás seguro de que quieres cerrar este ticket? Se marcará como resuelto.",premiumSupportTier:"Soporte Premium",standardSupportTier:"Soporte Estándar",premiumSupportMessage:"Soporte offline, respuesta prioritaria en 48h",standardSupportMessage:"Soporte offline, respuesta en 48h",templates:{label:"Plantillas rápidas",less:"Menos"},draft:{title:"Respuesta sugerida por IA",collapse:"Contraer",viewAll:"Ver todo",use:"Usar"},escalateModal:{title:"Solicitar soporte humano",description:"Tu ticket será transferido a nuestro equipo de soporte para una respuesta personalizada.",cancel:"Cancelar",requesting:"Solicitando...",requestButton:"Solicitar soporte humano"}},eq={supportTeam:"Equipo de soporte",attachedFile:"Archivo adjunto",translatedFrom:"Traducido de {{language}}",internalNote:"Nota interna",emptyTitle:"Inicia la conversación",emptyMessage:"EnvÃa un mensaje para comenzar tu conversación de soporte",translating:"Traduciendo...",showingTranslations:"Mostrando traducciones",translateToEnglish:"Traducir al inglés",confirmDeleteMessage:"¿Estás seguro de que quieres eliminar este mensaje?",failedDeleteMessage:"No se pudo eliminar el mensaje. Por favor, inténtalo de nuevo.",failedTranslate:"No se pudieron traducir los mensajes. Por favor, inténtalo de nuevo.",attachedContent:"Contenido adjunto",videoNotSupported:"Tu navegador no admite la reproducción de video.",noteBy:"por {{name}}",adminFallback:"Admin",events:{unknownActor:"Alguien",statusChange:"{{actor}} cambió el estado a {{status}}",unassigned:"{{actor}} quitó la asignación del ticket",assigned:"{{actor}} asignó a {{assignee}}",reassigned:"{{actor}} reasignó a {{assignee}}",escalated:"{{actor}} escaló el ticket",removedEscalation:"{{actor}} eliminó la escalada",categoryChange:"{{actor}} cambió la categorÃa a {{category}}",labelChangeAdded:"{{actor}} añadió {{labels}}",labelChangeRemoved:"{{actor}} eliminó {{labels}}",labelChangeBoth:"{{actor}} añadió {{added}} y eliminó {{removed}}",updated:"{{actor}} actualizó el ticket",markedAbusive:"{{actor}} marcó el contenido como abusivo",clearedAbusive:"{{actor}} eliminó la marca de contenido abusivo"}},tq={uploading:"Subiendo...",uploadFiles:"Subir archivos",fileTypeError:"Por favor, solicita soporte para tipos de archivo adicionales en <link>feedback.base44.com</link>"},aq={open:"Abiertos",closed:"Cerrados",all:"Todos"},nq={open:"Abierto",resolved:"Resuelto"},iq={noOpenTickets:"Sin tickets abiertos",noClosedTickets:"Sin tickets cerrados",noTickets:"Sin tickets",descriptionOpen:"No tienes tickets de soporte abiertos en este momento.",descriptionClosed:"No se encontraron tickets cerrados.",descriptionAll:"Aún no has enviado ningún ticket de soporte."},rq={appLabel:"App: {{appId}}",dateNotAvailable:"No disponible"},oq={loadingTitle:"Error al cargar los tickets",loadingFailed:"No se pudieron cargar los tickets de soporte. Por favor, inténtalo de nuevo.",ticketLimitTitle:"LÃmite de tickets alcanzado",ticketLimitDescription:"Hay más tickets de los que se pueden cargar. Solo se cargaron los 1000 tickets más recientes."},sq={free:"Gratis"},lq={cancel:"Cancelar",back:"Atrás",skip:"Omitir",continue:"Continuar",submitting:"Enviando...",refresh:"Actualizar",newTicket:"Nuevo ticket",createNewTicket:"Crear nuevo ticket",tryAgain:"Intentar de nuevo",bannedAlert:"Su acceso a Base44 Support ha sido restringido debido a una violación de los Términos de Uso de Base44 Support. Consulte el correo electrónico que le enviamos para obtener más detalles."},cq={descriptionRequired:"Por favor, añade una descripción",descriptionTooShort:"Por favor, añade un poco más de detalle. El mÃnimo es de 20 caracteres.",appRequired:"Elige una de tus apps o añade un enlace para que sepamos dónde ocurre el problema.",submissionFailed:"No se pudo enviar tu ticket de soporte. Por favor, inténtalo de nuevo."},dq={dailyLimitReached:"LÃmite diario alcanzado",somethingWentWrong:"Algo salió mal",dailyLimitMessage:"LÃmite diario de conversaciones de soporte superado. Puedes crear hasta {{limit}} conversaciones por dÃa con tu suscripción actual.",tryAgain:"Intentar de nuevo",cancel:"Cancelar",close:"Cerrar"},uq={help:qU,sidebar:VU,page:$U,modal:WU,footer:GU,resumeStep:HU,steps:YU,tellUsAboutYourIssue:KU,whatTypeOfIssue:ZU,categories:JU,selectApp:QU,chat:XU,messages:eq,input:tq,tabs:aq,status:nq,emptyState:iq,ticketCard:rq,errors:oq,tiers:sq,actions:lq,validation:cq,submissionError:dq},pq={sectionTitle:"Paramètres du compte",sectionDescription:"Gérez vos préférences et paramètres personnels de compte.",heading:"Compte",email:{label:"E-mail",placeholder:"Aucun e-mail défini"},fullName:{label:"Nom complet",placeholder:"Entrez votre nom complet",profileHint:"C'est ainsi que vous apparaîtrez sur votre <profileLink>profil</profileLink> public Base44."},phoneNumber:{label:"Numéro de téléphone",placeholder:"Entrez votre numéro de téléphone",smsConsent:"En entrant votre numéro de téléphone, vous acceptez de recevoir des notifications SMS de notre part."},defaultAgents:{label:"Agents par défaut",toggleLabel:"Activer les agents pour les nouvelles applications par défaut",description:"Lorsqu'activé, les nouvelles applications auront automatiquement les agents activés, leur permettant d'exécuter des tâches autonomes et d'utiliser des outils."},defaultTestData:{label:"Données de test par défaut",toggleLabel:"Activer les données de test pour les nouvelles applications par défaut",description:"Lorsqu'activé, les nouvelles applications démarrent avec les données de test activées pour que vous puissiez tester les modifications en toute sécurité sans affecter les données en direct.",upgradeRequired:"Cette fonctionnalité nécessite le plan Builder ou supérieur.",seePlans:"Voir les plans"},apiKey:{label:"Clé API",copyTitle:"Copier la clé API",copied:"Copié !",regenerate:"Régénérer",regenerating:"Régénération...",regenShort:"Regen.",regenShortLoading:"Regen...",description:"Votre clé API donne accès à votre espace de travail. Ne la partagez pas avec d'autres.",notGenerated:"Pas encore générée — cliquez sur Régénérer"},backofficeApiKey:{title:"Clé API du backoffice",description:"Utilisez cette clé pour authentifier les requêtes programmatiques auprès du service backoffice. Elle ne fonctionne pas sur le service de plateforme. Gardez-la secrète.",yourKey:"Votre clé API du backoffice",copySuccess:"Clé API copiée",copyError:"Échec de la copie de la clé API",regenSuccess:"Clé API du backoffice régénérée",regenError:"Échec de la régénération : {{error}}",warning:"La régénération invalide immédiatement la clé précédente. Les clients qui l'utilisent devront être mis à jour.",existsPlaceholder:"•••••••••••••••••• (clé existante — seul le hash est stocké ; régénérez pour en voir une nouvelle)",showOnceWarning:"Copiez cette clé maintenant. Elle n'est affichée qu'une seule fois et ne peut pas être récupérée plus tard."},unsavedChanges:"Modifications non enregistrées",discard:"Abandonner",save:"Enregistrer",saving:"Enregistrement...",saveSuccess:"Paramètres du compte mis à jour avec succès !",saveError:"Impossible de mettre à jour les paramètres du compte : {{error}}",unknownError:"Erreur inconnue",apiKeyCopySuccess:"Clé API copiée dans le presse-papiers !",apiKeyCopyError:"Impossible de copier la clé API",apiKeyRegenSuccess:"Clé API régénérée avec succès !",apiKeyRegenError:"Impossible de régénérer la clé API : {{error}}"},mq={title:"Authentification à deux facteurs",description:"Ajoutez une couche de protection supplémentaire lors de la connexion. Un code vous sera demandé à chaque connexion.",twoFactorEnabled:"L'authentification à deux facteurs est activée.",statsLine:"{{used}}/{{total}} codes de récupération utilisés · {{devices}} appareils de confiance",totp:{name:"Application d'authentification",description:"Utilisez une application comme Google Authenticator ou Duo pour générer des codes de connexion sécurisés.",setupTitle:"Configurer votre application d'authentification",scanQr:"Scannez le code QR avec votre application d'authentification",cantScan:"Impossible de scanner le code ? Entrez-le manuellement :",enterCodeTitle:"Entrez un code de votre application d'authentification",enterDigitCode:"Entrez le code à 6 chiffres",codesRefresh:"Les codes sont actualisés toutes les 30 secondes.",qrCodeAlt:"Code QR pour la configuration de l'application d'authentification",enabled:"Application d'authentification activée",disabled:"Application d'authentification désactivée"},sms:{name:"Messages texte",description:"Recevez des codes de connexion envoyés sur votre téléphone par SMS.",enterPhone:"Entrez votre numéro de téléphone",phoneLabel:"Numéro de téléphone",phonePlaceholder:"(555) 000-0000",verificationWillBeSent:"Un code de vérification sera envoyé à ce numéro pour confirmer qu'il vous appartient.",verifyPhone:"Vérifier votre numéro de téléphone",codeSentTo:"Un code à 6 chiffres a été envoyé au {{phone}}",standardRates:"Des frais de messagerie et de données standard peuvent s'appliquer.",invalidPhone:"Numéro de téléphone invalide. Veuillez vérifier le numéro et réessayer.",enabled:"MFA par SMS activé",disabled:"Messages texte désactivés"},recovery:{saveTitle:"Enregistrez vos codes de récupération",saveDescription:"Conservez ces codes de récupération dans un endroit sûr. Vous en aurez besoin si vous perdez l'accès à votre téléphone ou à votre application d'authentification.",eachCodeOnce:"Chaque code de récupération ne peut être utilisé qu'une seule fois. Conservez-les dans un endroit sûr et accessible.",eachCodeOnceShort:"Chaque code de récupération ne peut être utilisé qu'une seule fois.",copyAll:"Tout copier",download:"Télécharger",copied:"Copié",enterRecoveryCode:"Entrez le code de récupération"},disable:{title:"Désactiver l'authentification à deux facteurs",turnOff:"Désactiver l'authentification à deux facteurs ?",turnOffDescription:"Pour continuer, vous devrez vérifier avec un code envoyé sur votre téléphone ou un code de récupération.",verifyWithPhone:"Vérifier avec un code envoyé sur votre téléphone",verifyWithApp:"Entrez un code de votre application d'authentification",enterRecoveryToDisable:"Entrez l'un de vos codes de récupération pour désactiver l'authentification à deux facteurs.",useRecoveryCode:"Utiliser un code de récupération",verifyViaApp:"Vérifier via l'application",verifyAndDisable:"Vérifier et désactiver"},regenerate:{title:"Régénérer les codes de récupération",trustedDevicesCount_one:"{{count}} appareil de confiance",trustedDevicesCount_other:"{{count}} appareils de confiance",codesUsed:"{{used}}/{{total}} codes de récupération utilisés",descriptionChoose:"Choisissez une méthode de vérification pour régénérer vos codes de récupération. Cela invalidera tous les codes existants.",descriptionSms:"Nous enverrons un code de vérification sur votre téléphone pour confirmer.",descriptionSmsVerify:"Entrez un code de vérification pour régénérer vos codes de récupération. Cela invalidera tous les codes existants.",descriptionTotpVerify:"Entrez un code de vérification pour régénérer vos codes de récupération. Cela invalidera tous les codes existants.",verifyWithApp:"Entrez un code de votre application d'authentification",verifyWithSms:"Vérifier avec un code envoyé sur votre téléphone",smsMethodLabel:"Message SMS",enterCodeLabel:"Entrez le code à 6 chiffres",helperTotp:"Ouvrez votre application d'authentification pour obtenir le code",helperSms:"Entrez le code envoyé sur votre téléphone",verifyAndRegenerate:"Vérifier et régénérer",enterCode:"Entrer le code"},reauth:{title:"Vérifiez votre identité",description:"Par sécurité, confirmez votre identité avant d'ajouter {{method}} comme méthode de connexion.",actionTotp:"Entrez le code à 6 chiffres de votre application d'authentification.",actionSms:"Entrez le code envoyé au {{phone}}."},common:{enable:"Activer",enabled:"Activé",cancel:"Annuler",close:"Fermer",back:"Retour",done:"Terminé",verify:"Vérifier",sendCode:"Envoyer le code",regenerate:"Régénérer",regenerateRecoveryCodes:"Régénérer les codes de récupération",disable:"Désactiver",continue:"Continuer",fullCodeError:"Entrez le code complet à 6 chiffres",fullRecoveryError:"Entrez le code de récupération complet",enterVerificationCode:"Entrez un code de vérification",didntReceive:"Vous n'avez pas reçu de code ?",resendIn:"Renvoyer dans {{seconds}}s",resend:"Renvoyer",verificationSent:"Code de vérification envoyé",failedToSetup:"Échec de la configuration de l'authentification",failedToSendCode:"Échec de l'envoi du code",failedToResend:"Échec du renvoi",invalidCode:"Code invalide",lockedOut:"Trop de tentatives échouées. Réessayez dans {{minutes}} min.",lockedOutShort:"Temporairement verrouillé ({{minutes}} min)"}},gq={section:{title:"Supprimer le compte",description:"Supprimez votre compte ainsi que toutes les données, paramètres et activités associés.",accessNote:"Vous aurez accès à votre compte pendant 1 semaine après avoir demandé la suppression.",deleteButton:"Supprimer le compte",enterpriseTooltip:"La suppression de compte n'est pas disponible pour les utilisateurs d'entreprise. Veuillez contacter l'administrateur de votre organisation."},pendingRequest:{willBeDeleted:"Votre compte, abonnement, applications et espaces de travail seront supprimés dans <bold>{{daysRemaining}} jours</bold> ({{formattedEnd}}) et ce sera définitif à partir de cette date. Jusque-là , vous pouvez annuler la suppression.",processing:"Suppression en cours de traitement...",cancelButton:"Annuler la demande",renewalWarning:"Si votre abonnement doit être renouvelé pendant ces {{daysRemaining}} jours, le renouvellement aura quand même lieu à moins que vous n'annuliez l'abonnement manuellement avant la date de renouvellement"},toast:{submitSuccess:"Demande de suppression soumise. Nous l'examinerons et la traiterons après la période de grâce de 7 jours.",submitError:"Impossible de soumettre la demande de suppression. Veuillez réessayer.",cancelSuccess:"Demande de suppression annulée avec succès.",cancelError:"Impossible d'annuler la demande. Veuillez réessayer.",preflightError:"Impossible de vérifier le statut du compte. Veuillez réessayer."},dialog:{title:"Supprimer votre compte",description:"Cela planifiera la suppression définitive de votre compte et de toutes les données associées.",whatWillBeDeleted:"Ce qui sera supprimé :",itemAccountProfile:"Votre compte et profil",itemAllApps:"Toutes les applications que vous avez créées",itemAllData:"Toutes les données stockées dans vos applications",itemUploadedFiles:"Fichiers et médias téléchargés",gracePeriodNote:"Vous aurez 7 jours pour annuler cette demande. Après cela, notre équipe examinera et traitera votre suppression sous peu.",subscriptionNote:"L'annulation d'abonnement est définitive et sans remboursement",cancelButton:"Annuler",deleteButton:"Supprimer le compte"},subscriptions:{dialogTitle:"Annulez vos abonnements avant de supprimer votre compte",warning:"Vous avez encore des abonnements actifs. Veuillez d'abord les annuler.",listLabel:"Abonnements actifs :",personalPlan:"Plan personnel",planAndBilling:"Plan et facturation",yearly:"annuel",monthly:"mensuel",cancelFirst:"Annulez tous les abonnements ci-dessus, puis revenez ici pour supprimer votre compte.",closeButton:"Fermer",manageButton:"Gérer les abonnements"},workspaceOwner:{titleStep1:"Vous possédez des espaces de travail",titleStep2:"Confirmer la suppression de l'espace de travail",memberCount_one:"{{count}} membre",memberCount_other:"{{count}} membres",warningOwner_one:"Vous êtes actuellement propriétaire de l'espace de travail suivant. Si vous continuez, toutes les applications de cet espace de travail seront définitivement supprimées et tous les membres perdront l'accès.",warningOwner_other:"Vous êtes actuellement propriétaire des espaces de travail suivants. Si vous continuez, toutes les applications de ces espaces de travail seront définitivement supprimées et tous les membres perdront l'accès.",leaveWorkspaces_one:"Vous quitterez également cet espace de travail et perdrez l'accès :",leaveWorkspaces_other:"Vous quitterez également ces espaces de travail et perdrez l'accès :",confirmInstructions:"Saisissez le nom de chaque espace de travail ci-dessous pour confirmer la suppression. Cette action est irréversible.",typeToConfirm:'Saisissez <bold>"{{name}}"</bold> pour confirmer',deleteAnyway:"Supprimer quand même",deleteAccount:"Supprimer le compte",cancel:"Annuler"},memberInfo:{title_one:"Vous quitterez cet espace de travail",title_other:"Vous quitterez ces espaces de travail",description_one:"La suppression de votre compte vous retirera de l'espace de travail suivant. Vous perdrez l'accès à toutes les applications et données de l'espace de travail.",description_other:"La suppression de votre compte vous retirera des espaces de travail suivants. Vous perdrez l'accès à toutes les applications et données des espaces de travail.",cancel:"Annuler",continueWithDeletion:"Continuer la suppression"}},hq={title:"Compte GitHub",addAccount:"Ajouter votre compte GitHub",unlockWithBuilder:"Débloquez cette fonctionnalité avec le plan Builder.",loading:"Chargement...",connecting:"Connexion...",reconnect:"Reconnecter",connectionLost:"La connexion à GitHub a été perdue. Veuillez reconnecter votre compte GitHub pour continuer.",connected:"Connecté",connectedDescription:"Votre compte GitHub est connecté",disconnect:"Déconnecter",tryAgain:"Réessayer",connectGitHub:"Connecter GitHub",disconnectDialog:{title:"Se déconnecter de GitHub ?",accountDescription:"La déconnexion de votre compte GitHub n'affectera pas les applications connectées.<br/>Vous n'aurez qu'à reconnecter votre compte si vous souhaitez connecter ou reconnecter un dépôt.",repoDescription:"Cette action déconnectera l'application du dépôt {{repoName}}.",repoDescriptionNoName:"Cette action déconnectera l'application du dépôt GitHub.",repoDetail1:"Votre dépôt GitHub restera inchangé — il ne sera pas supprimé ni retiré.",repoDetail2:"Vous pourrez continuer à travailler sur votre application comme avant, mais GitHub ne sera plus la source de vérité pour votre code, et la synchronisation bidirectionnelle sera désactivée.",disconnectingProgress:"Déconnexion… Cela peut prendre quelques minutes.",cancel:"Annuler",disconnect:"Déconnecter",disconnecting:"Déconnexion…"}},fq={title:"Google Drive",connected:"Connecté",connectedDescription:"Votre Google Drive est connecté",disconnectedDescription:"Connectez votre Google Drive pour importer des fichiers",connect:"Connecter",connecting:"Connexion...",disconnect:"Déconnecter",disconnecting:"Déconnexion...",loading:"Chargement...",connectTitle:"Se connecter à Google Drive",connectDescription:"Autorisez l'accès pour utiliser les fichiers de Google Drive comme contexte de chat IA.",benefitImport:"Importez des Documents, Feuilles de calcul et Présentations depuis votre Google Drive",benefitChoose:"Choisissez quels fichiers utiliser à chaque fois",benefitSecure:"Le contenu sélectionné est stocké en toute sécurité pour une utilisation dans votre application",connectButton:"Connecter Google Drive",cancel:"Annuler",privacyNote:"Seuls les fichiers que vous sélectionnez sont accessibles.",disconnectAnytime:"Vous pouvez vous déconnecter à tout moment dans les paramètres du compte."},vq={title:"Paramètres du chat",sendMessageShortcut:"Raccourci d'envoi de message",insertNewLineShortcut:"Raccourci de nouvelle ligne",soundPreferences:"Préférences sonores",browserNotifications:"Notifications du navigateur",notificationsHelpText:"Notifications activées mais vous ne les recevez pas ? <docLink>Consulter la documentation</docLink>",notificationOptions:{onFirstPromptOnly:"Uniquement au premier prompt",onEveryPromptCompletion:"À chaque fin de prompt",disableNotificationSounds:"Désactiver les sons de notification",disableBrowserNotifications:"Désactiver les notifications du navigateur"}},bq={account:pq,mfa:mq,deleteAccount:gq,github:hq,googleDrive:fq,chatSettings:vq},yq={title:"Demander l'accès à {{appName}}",subtitleDefault:"Demandez l'accès ou basculez vers un compte qui possède déjà les permissions nécessaires.",subtitleRequested:"Vous serez notifié par e-mail lorsque votre demande sera approuvée.",requestAccess:"Demander l'accès",requestSubmitted:"Demande envoyée",loggedInAs:"Vous êtes connecté en tant que {{email}}",switchAccount:"Changer de compte",errorMessage:"Une erreur est survenue. Veuillez réessayer ou changer de compte.",tooManyAttempts:"Trop de tentatives. Veuillez réessayer plus tard.",backToLogin:"Retour à la connexion"},kq={title:"Accès restreint",subtitle:"Vous devez être membre de cet espace de travail pour accéder à l'application."},wq={accessRequired:yq,workspaceRestricted:kq},Aq={title:"Bienvenue sur Base44",loginWithGoogle:"Se connecter avec Google",loginWithGithub:"Se connecter avec GitHub",loggingIn:"Connexion en cours...",or:"Ou",emailLabel:"E-mail",emailPlaceholder:"Entrez votre adresse e-mail",edit:"Modifier",lastUsed:"Dernière utilisation",ssoEnabled:"Le SSO est activé pour <strong>{{workspace}}</strong>",ssoClickBelow:"Cliquez ci-dessous pour continuer avec la connexion de votre organisation",passwordLabel:"Mot de passe",forgotPassword:"Mot de passe oublié ?",passwordPlaceholder:"Entrez votre mot de passe",checkingAuth:"Vérification de la méthode d'authentification...",checking:"Vérification...",continue:"Continuer",continueWithSSO:"Continuer avec {{provider}}",logIn:"Se connecter",noAccount:"Vous n'avez pas de compte ?",signUp:"S'inscrire",verifyEmailFirst:"Veuillez vérifier votre e-mail avant de vous connecter. Consultez votre e-mail pour le code de vérification.",resendVerificationCode:"Renvoyer le code de vérification",enterEmailFirst:"Veuillez d'abord entrer votre adresse e-mail",invalidEmail:"Veuillez entrer une adresse e-mail valide",ssoError:"Erreur de configuration SSO. Veuillez réessayer.",invalidCredentials:"Adresse e-mail ou mot de passe invalide",loginFailed:"Échec de la connexion. Veuillez réessayer.",failedResendVerification:"Échec du renvoi du code de vérification. Veuillez réessayer.",passwordResetRequired:"Pour des raisons de sécurité, vous devez réinitialiser votre mot de passe avant de vous connecter. Consultez votre e-mail pour un lien de réinitialisation.",resetLinkSent:"Un lien de réinitialisation du mot de passe a été envoyé à votre adresse e-mail.",resendResetLink:"Renvoyer le lien de réinitialisation",failedResendResetLink:"Impossible d'envoyer le lien de réinitialisation. Veuillez réessayer.",termsAndPrivacy:"<terms>Conditions d'utilisation</terms> et <privacy>Politique de confidentialité</privacy>."},Sq={title:"Créez votre compte",agreeToTerms:"En cliquant sur « S'inscrire », vous acceptez nos <terms>Conditions d'utilisation</terms> et notre <privacy>Politique de confidentialité</privacy>.",signUpWithGoogle:"S'inscrire avec Google",signUpWithGithub:"S'inscrire avec GitHub",signingUp:"Inscription en cours...",creatingAccount:"Création du compte...",signUpButton:"S'inscrire",alreadyHaveAccount:"Vous avez déjà un compte Base44 ?",logIn:"Se connecter",validatingReferral:"Validation du code de parrainage...",invalidReferral:"Code de parrainage invalide",youveBeenInvited:"Vous avez été invité !",invitedToJoin:"<strong>{{name}}</strong> vous a invité à rejoindre Base44",signUpFreeCredits:"Inscrivez-vous pour obtenir 10 crédits gratuits !",signUpBaseDayCredits:"Inscrivez-vous pour obtenir 44 crédits gratuits !",letsBuild:"Construisons quelque chose d'incroyable ensemble !",registrationFailed:"Échec de l'inscription. Veuillez réessayer.",failedValidateReferral:"Échec de la validation du code de parrainage",completeVerification:"Veuillez compléter la vérification",weakPassword:"Mot de passe faible"},Cq={title:"Réinitialisez votre mot de passe",subtitle:"Entrez l'adresse e-mail utilisée lors de votre inscription, et nous vous enverrons un lien pour réinitialiser votre mot de passe.",backToLogin:"Retour à la connexion",loginEmail:"E-mail de connexion",emailPlaceholder:"ex. : nom@email.com",sending:"Envoi en cours...",verifyEmail:"Vérifier l'e-mail",invalidEmail:"Adresse e-mail invalide",failedSendReset:"Échec de l'envoi du lien de réinitialisation. Veuillez réessayer."},Dq={title:"Vérifiez votre e-mail",subtitle:"Nous avons envoyé les instructions de réinitialisation du mot de passe à <strong>{{email}}</strong>.",backToReset:"Retour à la réinitialisation du mot de passe",checkInfo:"Veuillez vérifier votre e-mail pour le lien de réinitialisation du mot de passe.",mayTakeMinutes:"Cela peut prendre quelques minutes.",goToSignIn:"Aller à la connexion",didntGetEmail:"Vous n'avez pas reçu l'e-mail ?",resending:"Renvoi en cours...",resendEmail:"Renvoyer l'e-mail",emailNotFound:"Adresse e-mail introuvable. Veuillez revenir en arrière et réessayer.",newResetSent:"Nouvel e-mail de réinitialisation envoyé. Veuillez vérifier votre boîte de réception.",failedResendEmail:"Échec du renvoi de l'e-mail. Veuillez réessayer."},Tq={title:"Définir un nouveau mot de passe",subtitle:"Entrez votre nouveau mot de passe pour Base44",newPasswordLabel:"Nouveau mot de passe",newPasswordPlaceholder:"Entrez votre nouveau mot de passe",confirmPasswordLabel:"Confirmer le nouveau mot de passe",confirmPasswordPlaceholder:"Confirmez votre nouveau mot de passe",resetting:"Réinitialisation...",resetButton:"Réinitialiser le mot de passe",backToLogIn:"Retour à la connexion",invalidToken:"Jeton de réinitialisation invalide ou manquant. Veuillez demander une nouvelle réinitialisation de mot de passe.",passwordsMismatch:"Les mots de passe ne correspondent pas. Veuillez réessayer.",weakPassword:"Veuillez créer un mot de passe d'au moins force moyenne.",resetSuccess:"Mot de passe réinitialisé avec succès ! Redirection vers la connexion...",resetSuccessLogin:"Mot de passe réinitialisé avec succès ! Veuillez vous connecter avec votre nouveau mot de passe.",failedReset:"Échec de la réinitialisation du mot de passe. Veuillez réessayer.",invalidOrExpiredToken:"Jeton de réinitialisation invalide ou expiré"},Eq={verifyTitle:"Vérifiez votre identité",verification:{chooseMethod:"Choisissez une méthode d'authentification",authenticatorApp:"Application d'authentification",smsMessage:"Message SMS",recoveryCode:"Code de récupération",continue:"Continuer",backToLogin:"Retour à la connexion",chooseAnotherMethod:"Choisir une autre méthode",verifyViaText:"Vérifier par SMS",verifyViaApp:"Vérifier via l'application d'authentification",enterRecoveryCode:"Entrez le code de récupération",rememberDevice:"Se souvenir de cet appareil pendant 30 jours",verifying:"Vérification...",verify:"Vérifier",useRecoveryCode:"Utiliser un code de récupération",sendingCodeTo:"Envoi du code à {{phone}}…",enterCodeSentTo:"Entrez le code envoyé au {{phone}}",enterCodeFromApp:"Entrez le code de votre application d'authentification",yourPhone:"votre téléphone",didntReceiveCode:"Vous n'avez pas reçu de code ?",resendIn:"Renvoyer dans {{seconds}}s",resend:"Renvoyer",enterCompleteRecoveryCode:"Veuillez entrer le code de récupération complet",enterCompleteCode:"Veuillez entrer le code à 6 chiffres complet",verificationFailed:"Échec de la vérification. Veuillez réessayer.",failedSendCode:"Échec de l'envoi du code. Veuillez réessayer."}},Pq={buildingApp:"Construction de votre application",verifyEmailSubtitle:"Vérifiez votre e-mail pour continuer",signUpSubtitle:"Inscrivez-vous pour la voir prendre vie",loginSubtitle:"Connectez-vous pour la voir prendre vie"},_q={completeVerification:"Veuillez compléter la vérification de sécurité"},xq={title:"Vérifiez votre e-mail",subtitle:"Nous avons envoyé un code de vérification à {{email}}",verificationCode:"Code de vérification",fillAllFields:"Veuillez remplir tous les champs.",enterCodeSent:"Entrez le code de vérification envoyé à votre e-mail",verifying:"Vérification...",verifyEmail:"Vérifier l'e-mail",wrongEmail:"Mauvais e-mail ? Modifier",didntReceiveCode:"Vous n'avez pas reçu le code ?",resendEmail:"Renvoyer l'e-mail",emailVerifiedLogin:"E-mail vérifié avec succès ! Vous pouvez maintenant vous connecter.",emailVerifiedContinue:"E-mail vérifié avec succès ! Veuillez vous connecter pour continuer.",invalidCode:"Code de vérification invalide. Veuillez réessayer.",verificationFailed:"Échec de la vérification. Veuillez réessayer.",newCodeSent:"Nouveau code de vérification envoyé à votre e-mail.",failedResendCode:"Échec du renvoi du code de vérification. Veuillez réessayer."},Iq={login:Aq,register:Sq,forgotPassword:Cq,checkEmail:Dq,resetPassword:Tq,mfa:Eq,authModal:Pq,turnstile:_q,otp:xq},Rq={notFound:"Profil introuvable",notFoundDescription:"Le profil builder @{{username}} n'existe pas."},zq={edit:"Modifier",done:"Terminé",cancel:"Annuler",appCount_one:"{{count}} App",appCount_other:"{{count}} Apps",joined:"Inscrit en {{date}}",namePlaceholder:"Votre nom",displayNameLabel:"Nom affiché",usernameLabel:"Nom d'utilisateur",changeUsername:"Changer le nom d'utilisateur",saveChanges:"Enregistrer les modifications",partnerBadge:"Base44 Partner"},Mq={label:"Bio",placeholder:"Écrivez une courte bio sur vous...",emptyPlaceholder:"Présentez-vous aux visiteurs — ajoutez une courte bio.",hint:"Max. 220 caractères",maxChars:"Max. {{max}} caractères"},Nq={viewTitle:"Apps",appsHeader:"Apps ({{count}})",appsHeaderEmpty:"Apps",featuredCounter_one:"{{count}} mise en avant",featuredCounter_other:"{{count}} mises en avant",editHint:"Sélectionnez quelles apps apparaissent sur votre profil public.",noPublishedApps:"Aucune app publiée trouvée. Publiez d'abord une app !",noPublishedAppsTitle:"Aucune app publiée",noPublishedAppsDescription:"Vous n'avez pas encore publié d'apps. Rendez-vous dans votre espace de travail pour finaliser un brouillon et le publier afin de le présenter sur votre profil.",viewMyApps:"Voir mes apps",untitled:"Sans titre",updated:"Apps épinglées mises à jour !",updateFailed:"Impossible de mettre à jour les apps épinglées",manageApps:"Gérer les apps",chooseTitle:"Choisir les apps à afficher",chooseDescription:"Sélectionnez jusqu'à {{max}} apps publiées à afficher sur votre profil public",selectAll:"Tout sélectionner",deselectAll:"Tout désélectionner",saveChanges:"Enregistrer",searchApps:"Rechercher des apps...",publicBadge:"Publique",privateBadge:"Privée",showMore:"Afficher plus",showLess:"Afficher moins",maxReached:"Maximum {{max}} apps autorisées",close:"Fermer",noSearchResults:"Aucune app ne correspond à votre recherche",updatedRecently:"mis à jour récemment",selectAllCount:"Tout sélectionner ({{count}})",deselectAllCount:"Tout désélectionner ({{count}})"},Fq={editTooltip:"Modifier les liens sociaux",addLinks:"Ajouter des liens sociaux",addLink:"Ajouter un lien",cancelTooltip:"Annuler",removeTooltip:"Supprimer",label:"Réseaux sociaux",hint:"Ajoutez jusqu'à 6 liens sociaux",linkLabel:"Lien",addCustomLink:"Ajouter un lien personnalisé",pastePlaceholder:"Collez l'URL ici",enterUsernameOrUrl:"Entrez votre nom d'utilisateur ou l'URL complète du profil",movedTo:"Déplacé vers {{platform}}",addedAsCustom:"Ajouté comme lien personnalisé",fieldOccupied:"Cela ressemble à un lien {{platform}} — ce champ a déjà une URL",customSlotsFull:"Cela ressemble à un lien {{platform}}. Supprimez un lien personnalisé pour l'ajouter."},Lq={profileUpdated:"Profil mis à jour !",profileUpdateFailed:"Impossible de mettre à jour le profil",usernameClaimed:"Nom d'utilisateur obtenu !",usernameClaimFailed:"Impossible d'obtenir le nom d'utilisateur",loadFailed:"Impossible de charger le profil",invalidImageType:"Veuillez télécharger une image valide (JPG, PNG, GIF ou WebP)",imageTooLarge:"L'image doit faire moins de 5 Mo",avatarUpdated:"Photo de profil mise à jour !",avatarUploadFailed:"Impossible de télécharger l'image",avatarRemoveFailed:"Impossible de supprimer l'image"},jq={title:"Abandonner les modifications ?",description:"Vous avez des modifications non enregistrées qui seront perdues.",confirm:"Abandonner"},Oq={title:"Changer le nom d'utilisateur",placeholder:"nom d'utilisateur",checking:"Vérification...",available:"Disponible !",notAvailable:"Non disponible",urlWarning:"Votre URL de profil changera en /@{{username}}. Les anciens liens ne fonctionneront plus.",cancel:"Annuler",claim:"Obtenir le nom d'utilisateur",tryInstead:"Essayez :"},Bq={locationLabel:"Localisation",locationPlaceholder:"ex. Paris, France",showEmailLabel:"Afficher l'email de votre compte"},Uq={title:"Modifier l'image de couverture",description:"Choisissez l'un de nos dégradés ou téléchargez votre propre image",uploadFile:"Importer une image personnalisée",orUseTemplate:"Ou utiliser un modèle",cancel:"Annuler",saveChanges:"Enregistrer",updated:"Image de couverture mise à jour !",updateFailed:"Impossible de mettre à jour l'image de couverture",uploadFailed:"Impossible de télécharger l'image",dragToReposition:"Glisser pour repositionner",replaceImage:"Remplacer l'image",reposition:"Repositionner"},qq={title:"Activité",mon:"Lun",wed:"Mer",fri:"Ven",less:"Moins",more:"Plus",messages_one:"{{count}} prompt",messages_other:"{{count}} prompts",founderMode:"Founder mode",noActivity:"Aucune activité",onDate:"le {{date}}",showOnProfile:"Afficher sur le profil"},Vq={customize:"Personnaliser votre profil",title:"Pas encore d'apps publiques",description:"Votre profil est le meilleur endroit pour partager votre travail avec la communauté Base44. Sélectionnez parmi vos apps publiées pour les afficher ici, ou lancez un nouveau projet pour développer votre activité.",anonDescription:"Ce builder n'a pas encore rendu ses apps publiques. Revenez plus tard pour voir son activité récente, ou explorez ce que d'autres créateurs construisent.",startCreating:"Commencer à créer",chooseFromApps:"Choisir parmi mes apps"},$q={page:Rq,header:zq,bio:Mq,pinnedApps:Nq,social:Fq,toast:Lq,discardDialog:jq,usernameDialog:Oq,details:Bq,coverImage:Uq,activity:qq,emptyState:Vq},Wq=JSON.parse(`{"title":"Agents IA","beta":"Bêta","subtitle":"Intégrez des agents IA dans votre application grâce à l'infrastructure d'agents IA de Base44","disabled":"Désactivé","setupAgents":"Configurer les agents","enableAgents":"Activer les agents","turnOnToggle":"Activez le bouton pour permettre la création d'agents","addFirstAgent":"Ajoutez votre premier agent","creditsUsed":"{{credits}} crédits utilisés","creditsUsedTooltip":"Crédits d'intégration mensuels utilisés","askChatToCreate":"Demandez au chat de créer un agent pour vous. Décrivez le rôle que l'agent devrait avoir et les tâches qu'il devrait effectuer.","defineInConfig":"Définissez vos agents dans des fichiers de configuration locaux et synchronisez-les avec votre application à l'aide du CLI Base44.","viewDocumentation":"Voir la documentation","noAgentsYet":"Aucun agent pour le moment","promptChatToCreate":"Demandez au chat de créer votre premier agent IA","agentsTab":"Agents","conversationsTab":"Conversations","searchConversations":"Rechercher des conversations...","filterAll":"Tous","filterMine":"Les miennes","filterUsers":"Utilisateurs","noConversationsYet":"Aucune conversation pour le moment","noConversationsMatchSearch":"Aucune conversation ne correspond à votre recherche","tryDifferentSearch":"Essayez un autre terme de recherche","goToAgentsTab":"Allez dans l'onglet Agents pour démarrer une conversation","conversationStarted":"Conversation démarrée","agentConfiguration":"Configuration de l'agent","guidelines":"Directives","tools":"Outils","whatsapp":"WhatsApp","toolsAndCapabilities":"Outils et capacités","descriptionLabel":"Description","systemPromptDesc":"Ceci est le prompt système qui définit le comportement de l'agent","briefDescription":"Brève description de ce que fait cet agent...","instructions":"Instructions","instructionsDesc":"Directives et règles spécifiques que l'agent doit suivre","detailedInstructions":"Instructions détaillées pour l'agent...","availableTools":"Outils disponibles","configureTools":"Configurez les outils et les données auxquels cet agent peut accéder","add":"Ajouter","allEntitySlotsUsed":"Tous les emplacements d'entités utilisés","addEntityTool":"Ajouter un outil d'entité","entityToolDesc":"Opérations de base de données et accès CRUD","allFunctionSlotsUsed":"Tous les emplacements de fonctions utilisés","addBackendFunction":"Ajouter une fonction backend","backendFunctionDesc":"Logique backend personnalisée et intégrations","noToolsConfigured":"Aucun outil configuré","addToolsDesc":"Ajoutez des outils d'entité ou des fonctions backend pour donner des capacités à l'agent","entityTool":"Outil d'entité","selectEntity":"Sélectionner une entité","allowedOperations":"Opérations autorisées","deleteWarning":"Attention, les données supprimées par l'agent ne peuvent pas être restaurées","backendFunction":"Fonction backend","selectBackendFunction":"Sélectionner une fonction backend","functionDescription":"Description de la fonction","describeFunction":"Décrivez quand et comment cette fonction doit être utilisée...","whatsappIntegration":"Intégration WhatsApp","whatsappDesc":"Connectez votre agent à WhatsApp pour une communication fluide","testChat":"Chat de test","addWhatsapp":"Ajoutez WhatsApp à votre application","whatsappEnableDesc":"Activez l'accès WhatsApp pour vos utilisateurs avec une seule commande","addWhatsappButton":"Ajouter un bouton WhatsApp pour {{agent}}","sendToChat":"Envoyer au chat","fullChatCapabilities":"Toutes les capacités du chat","fullChatDesc":"Toutes les fonctionnalités du chat web fonctionnent parfaitement dans WhatsApp, y compris les outils et l'accès aux données","voiceMediaSupport":"Support voix et médias","voiceMediaDesc":"Les utilisateurs peuvent envoyer des notes vocales et des images pour une interaction naturelle","customNumbers":"Numéros personnalisés","customNumbersDesc":"Connectez vos propres numéros WhatsApp Business","easyUiIntegration":"Intégration UI facile","easyUiDesc":"Ajoutez un bouton WhatsApp à votre application avec une simple commande chat","welcomeMessage":"Message de bienvenue","welcomeMessageDesc":"Rédigez un accueil chaleureux qui présente votre agent et définit les attentes","charCount":"{{count}}/500","editAgent":"Modifier l'agent","edit":"Modifier","startChat":"Démarrer le chat","chat":"Chat","functionCount":"{{count}} fonction(s)","noDescriptionProvided":"Aucune description fournie","entities":"Entités :","activeConversation":"Conversation active","readOnlyConversation":"Conversation en lecture seule","startConversation":"Démarrez votre conversation","typeMessageBelow":"Tapez un message ci-dessous pour commencer","typeYourMessage":"Tapez votre message...","cancel":"Annuler","saving":"Enregistrement...","save":"Enregistrer","commandAddedToChat":"Commande ajoutée au chat. Appuyez sur Entrée pour envoyer.","failedToSaveAgentConfiguration":"Échec de l'enregistrement de la configuration de l'agent","promptAddedToChat":"Prompt ajouté au chat","unableToLoadSuggestions":"Impossible de charger les suggestions. Réessayez plus tard.","createAgent":"Créer un agent","createAgentTitle":"Créer un agent","createAgentDescription":"Demandez au chat de créer un agent pour vous. Décrivez le rôle que l'agent doit avoir et les tâches qu'il doit accomplir.","manageAgentsAndConversations":"Gérer les agents et les conversations","skills":"Compétences","skillsEnabledLimit":"Vous pouvez activer jusqu'à {{count}} compétences par agent.","appSkillsTitle":"Compétences d'Application","appSkillsDescription":"Compétences d'instruction réutilisables pour les agents dans cette application.","addSkill":"Ajouter Compétence","noAppSkillsYet":"Aucune compétence d'application pour le moment. Créez-en une pour la réutiliser entre les agents de cette application.","workspaceSkillsTitle":"Compétences d'Espace de Travail","workspaceSkillsDescription":"Compétences partagées de cet espace de travail. Activez-les pour les utiliser avec cet agent.","loadingWorkspaceSkills":"Chargement des compétences d'espace de travail...","noWorkspaceSkillsAvailable":"Aucune compétence partagée d'espace de travail n'est actuellement disponible.","manageWorkspaceSkills":"Gérer les compétences d'espace de travail","workspaceSkillSource":"espace de travail","appSkillSource":"application","unavailable":"non disponible","addAppSkill":"Ajouter Compétence d'Application","editAppSkill":"Modifier {{name}}","skillName":"Nom de compétence","skillNameHint":"Utilisez des lettres minuscules, des chiffres et des tirets.","skillNameInvalid":"Le nom doit être alphanumérique en minuscules avec des tirets, pas de tirets au début/fin (ex. 'code-review', 'sql-expert').","skillDescription":"Description","skillInstructions":"Instructions","enableForCurrentAgent":"Activer pour l'agent actuel","enableForCurrentAgentDescription":"Cela modifie l'état actuel de l'éditeur et est enregistré avec l'agent.","createSkill":"Créer Compétence","saveChanges":"Enregistrer les Modifications","workspaceSkillUnavailableDescription":"Cette compétence d'espace de travail n'est plus activée ou disponible.","appSkillUnavailableDescription":"Cette compétence d'application n'existe plus dans la bibliothèque de compétences de l'application.","skillValidationRequired":"Le nom, la description et les instructions sont requis","skillCreated":"Compétence créée","skillUpdated":"Compétence mise à jour","failedToSaveSkill":"Échec de l'enregistrement de la compétence","skillSavedButAssignmentsFailed":"La compétence a été enregistrée, mais son rattachement à l'agent a échoué","skillSavedButAssignmentsRefreshDelayed":"L'éditeur n'a pas pu se rafraîchir automatiquement. Rechargez pour vérifier l'état le plus récent.","skillSavedButSyncFailed":"La compétence a été enregistrée, mais la synchronisation de l'état de l'agent a échoué","skillSavedButSyncRefreshDelayed":"La compétence a été enregistrée, mais l'éditeur n'a pas pu se rafraîchir automatiquement. Rechargez pour vérifier l'état le plus récent.","skillSavedStateRefreshed":"Compétence enregistrée. L'éditeur a été rafraîchi pour correspondre au dernier état enregistré.","skillSavedRefreshDelayed":"Compétence enregistrée, mais l'éditeur n'a pas pu se rafraîchir automatiquement. Rechargez pour vérifier l'état le plus récent.","skillDeleted":"Compétence supprimée","skillDeletedRefreshDelayed":"La compétence a été supprimée, mais l'éditeur n'a pas pu se rafraîchir automatiquement. Rechargez pour vérifier l'état le plus récent.","failedToDeleteSkill":"Échec de la suppression de la compétence","skillLimitReached":"Cet agent a déjà atteint le nombre maximum de compétences activées.","skillTemplatePickerTitle":"Choisir une compétence de départ","startFromScratch":"Commencer de zéro","startFromScratchDescription":"Créez une compétence personnalisée avec vos propres instructions.","useTemplate":"Utiliser le modèle","skillTemplates":{"refundPolicy":{"description":"Modèle pour les règles de remboursement, l'éligibilité et les détails que l'agent doit collecter avant une escalade."},"supportEscalation":{"description":"Modèle indiquant quand transmettre au support humain et quel résumé l'agent doit préparer."},"pricingAndPlans":{"description":"Modèle pour expliquer les offres, la fréquence de facturation, les upgrades et quand orienter les demandes enterprise."},"brandVoice":{"description":"Modèle pour le ton, le style d'écriture et les règles de communication afin que l'agent reste fidèle à la marque."}},"memory":"Mémoire","memoryTitle":"Mémoire de l'agent","memorySubtitle":"Activez la mémoire à long terme pour que votre agent se souvienne des informations entre les conversations","enableMemory":"Activer la mémoire","enableMemoryDesc":"Lorsqu'elle est activée, l'agent peut sauvegarder et rappeler des informations entre les conversations","memoryScope":"Portée de la mémoire","memoryScopeDesc":"Choisissez quels types de souvenirs l'agent peut créer","memoryScopeGlobalAndUser":"Global et par utilisateur","memoryScopeGlobalAndUserDesc":"L'agent peut sauvegarder des souvenirs partagés et personnels","memoryScopeGlobal":"Global uniquement","memoryScopeGlobalDesc":"Souvenirs partagés entre tous les utilisateurs","memoryScopeUser":"Par utilisateur uniquement","memoryScopeUserDesc":"Souvenirs spécifiques à chaque utilisateur","memoryInstructions":"Instructions de mémoire","memoryInstructionsDesc":"Guidez l'agent sur quand sauvegarder des souvenirs et quoi inclure","memoryInstructionsPlaceholder":"Ex., Sauvegardez des souvenirs globaux pour les mises à jour produit, les annonces d'entreprise et les connaissances partagées. Sauvegardez des souvenirs utilisateur pour les préférences personnelles comme le style de communication, le ton et les intérêts spécifiques.","savedMemories":"Souvenirs sauvegardés","refresh":"Actualiser","noMemoriesYet":"Aucun souvenir sauvegardé","noMemoriesDesc":"Les souvenirs apparaîtront ici lorsque l'agent les sauvegardera pendant les conversations","memoryItemDeleted":"Souvenir supprimé","memoryDeleteFailed":"Échec de la suppression du souvenir","defaultDescription":"Par défaut : {{description}}"}`),Gq={writing:"Écriture",wrote:"Écrit",reading:"Lecture",read:"Lu",deleting:"Suppression",deleted:"Supprimé",editing:"Modification",edited:"Modifié",creating:"Création",created:"Créé",updating:"Mise à jour",updated:"Mis à jour",update:"Mettre à jour",delete:"Supprimer",importing:"Importation",imported:"Importé",import:"Importer",searching:"Recherche",searched:"Recherché",searchingForBugs:"Recherche de bugs...",searchedBugs:"Bugs recherchés",install:"Installer",installing:"Installation",installed:"Installé",analyzing:"Analyse",running:"Exécution",failed:"Échoué",run:"Exécuter",settingSecrets:"Configuration des secrets",setSecret:"Secret configuré",setSecrets:"Secrets configurés",testing:"Test",checking:"Vérification",tested:"Testé",checked:"Vérifié",fetching:"Récupération",fetched:"Récupéré",waitingForApproval:"En attente d'approbation...",searchedDocsFor:"Documentation recherchée pour",searchingDocsFor:"Recherche de documentation pour",searchedFor:"Recherché pour",searchingFor:"Recherche de",foundResult_one:"{{count}} résultat trouvé",foundResult_other:"{{count}} résultats trouvés",toggling:"Basculement",toggled:"Basculé",listing:"Listage",listed:"Listé",approvalRequired:"Approbation requise",approve:"Approuver",approving:"Approbation...",reject:"Rejeter",rejected:"rejeté",previousApproval:"Cette demande d'approbation provient d'un message précédent",query:"Requête :",updateWith:"Mettre à jour avec :",importComplete:"Importation terminée",importingData:"Importation des données...",percentComplete:"{{percent}}% terminé",recordsProgress:"{{current}} / {{total}} enregistrements",preparing:"Préparation...",otherToolsAfterApproval:"Les autres outils s'exécuteront après approbation",countPackages:"{{num}} packages :",updateAllEntityRecords:"Mettre à jour tous les enregistrements <entity>{{entityName}}</entity>",updateEntityRecordsMatching:"Mettre à jour les enregistrements <entity>{{entityName}}</entity> correspondant à :",deleteAllEntityRecords:"Supprimer tous les enregistrements <entity>{{entityName}}</entity>",deleteEntityRecordsMatching:"Supprimer les enregistrements <entity>{{entityName}}</entity> correspondant à :",importDataFromInto:"Importer les données de <file>{{fileName}}</file> dans <entity>{{entityName}}</entity>",importDataFromSheetInto:"Importer les données de <file>{{fileName}}</file> (feuille : <sheet>{{sheetName}}</sheet>) dans <entity>{{entityName}}</entity>",countRecordsIntoEntity:"{{num}} enregistrements dans <entity>{{entityName}}</entity>",dataIntoEntity:"données dans <entity>{{entityName}}</entity>",countRecordsEntity:"{{num}} enregistrements <entity>{{entityName}}</entity>",allEntityRecords:"tous les enregistrements <entity>{{entityName}}</entity>",entityRecords:"enregistrements <entity>{{entityName}}</entity>",grepSearching:'Recherche de "{{pattern}}"...',grepSearchComplete:"Recherche terminée",grepFoundResults_one:"{{count}} résultat trouvé",grepFoundResults_other:"{{count}} résultats trouvés",grepInFiles_one:"dans {{count}} fichier",grepInFiles_other:"dans {{count}} fichiers"},Hq={agents:Wq,tools:Gq},Yq={title:"Automatisations",subtitle:"Créez et gérez les automatisations de votre application.",newAutomation:"Nouvelle automatisation",chooseAutomation:"Choisir une automatisation",selectHowStarts:"Sélectionnez comment cette automatisation démarre.",scheduled:"Programmée",scheduledDescription:"Exécutez cette automatisation selon un calendrier récurrent ou à une heure précise.",dataEvent:"Événement de données",dataEventDescription:"Exécutez cette automatisation lorsqu'un enregistrement est créé, mis à jour ou supprimé.",connector:"Connecteur",connectorDescription:"Exécutez cette automatisation lorsqu'une intégration connectée envoie un événement.",connectorBetaTooltip:"Ce connecteur est gratuit pendant la bêta.",beta:"Bêta",connectorNewAutomation:"Nouvelle automatisation de connecteur",connectorIntegrationType:"Intégration",connectorSelectIntegration:"Sélectionner une intégration",connectorNoIntegrations:"Aucune intégration connectée",connectorNoIntegrationsHint:"Pour activer l'automatisation, vous devez d'abord créer une intégration.",connectorCreateIntegration:"Créer une intégration",connectorCreateNewIntegration:"Créer une nouvelle intégration",connectorEvents:"Événements",connectorSelectEvents:"Sélectionner les événements à écouter",connectorSelectEvent:"Sélectionner un événement",connectorAvailableEvents:"Événements disponibles ({{count}})",connectorType:"Connecteur",allEvents:"tous les événements",deleteAutomation:"Supprimer l'automatisation ?",deleteAutomationDesc:"Cela supprimera définitivement « {{name}} » et tout son historique d'exécution. Cette action est irréversible.",delete:"Supprimer",deleting:"Suppression...",cancel:"Annuler",copyOutput:"Copier la sortie",scheduledType:"Programmée",dataEventType:"Événement de données",someRunsFailed:"Certaines exécutions ont échoué",reviewLogsOrFix:"Examinez les journaux ou laissez l'IA corriger les erreurs.",fixing:"Correction...",fixWithAI:"Corriger avec l'IA",failedToGetErrorContext:"Échec de l'obtention du contexte d'erreur",logsTab:"Journaux",noLogsYet:"Aucun journal pour le moment",back:"Retour",close:"Fermer",saving:"Enregistrement...",save:"Enregistrer",active:"Actif",archived:"Archivé",archivedAutomations:"Automatisations archivées",nameAndDescription:"Nom et description",typeColumn:"Type",lastRun:"Dernière exécution",failed:"Échoué",loading:"Chargement...",editAutomation:"Modifier l'automatisation",runNow:"Exécuter maintenant",archive:"Archiver",duplicate:"Dupliquer",unlockAutomations:"Débloquer les automatisations",unlockAutomationsDesc:"Pour exécuter des automatisations dans votre application, vous avez besoin des fonctions backend activées. Mettez à niveau pour activer les fonctions backend et commencer à utiliser les automatisations.",enableBackendFunctions:"Activez les fonctions backend pour commencer",enableBackendFunctionsDesc:"Les automatisations exécutent des fonctions backend selon un calendrier ou lors de changements de données. Activez les fonctions backend dans les Paramètres pour utiliser les automatisations.",openSettings:"Ouvrir les paramètres",createBackendFunction:"Créez une fonction backend pour ajouter des automatisations",createBackendFunctionDesc:"Pour créer une automatisation, vous avez d'abord besoin d'une fonction backend dans votre code. Écrivez une fonction backend dans votre code ou demandez de l'aide dans le chat.",noAutomationsYet:"Aucune automatisation pour le moment",noAutomationsDesc:"Créez une automatisation pour exécuter des tâches automatiquement dans votre application.",noArchivedAutomations:"Aucune automatisation archivée",noArchivedDesc:"Les automatisations que vous archivez ou qui atteignent leur date de fin apparaîtront ici.",runAutomation:"Exécuter l'automatisation",selectRecord:"Sélectionnez un enregistrement <entity>{{entity}}</entity> pour exécuter l'automatisation.",searchRecords:"Rechercher des enregistrements {{entity}}...",noRecordsFound:"Aucun enregistrement {{entity}} trouvé.",noRecordsMatch:"Aucun enregistrement ne correspond à « {{query}} »",recordsCount:"{{filtered}} sur {{total}} enregistrements",totalRecords:"{{total}} enregistrements",running:"Exécution...",automationName:"Nom de l'automatisation",describeAutomation:"Décrivez ce que fait cette automatisation.",functionToRun:"Fonction à exécuter",selectFunction:"Sélectionnez une fonction backend de votre code. La fonction recevra les données de l'entité lorsque l'automatisation se déclenchera.",noBackendFunctions:"Aucune fonction backend disponible",selectAFunction:"Sélectionner une fonction",runsWhen:"S'exécute quand",noItems:"Aucun élément",selectItem:"Sélectionner un élément",is:"Est",selectEvent:"Sélectionner un événement",automationNameRequired:"Le nom de l'automatisation est requis.",selectEntity:"Veuillez sélectionner une entité.",selectEventType:"Veuillez sélectionner au moins un type d'événement.",selectFunctionRequired:"Veuillez sélectionner une fonction à exécuter.",newDataAutomation:"Nouvelle automatisation de données",details:"Détails",logsWillAppearAfterFire:"Les journaux apparaîtront ici après le déclenchement de cette automatisation.",selectFunctionFromCode:"Sélectionnez une fonction backend de votre code. Pour ajouter ou modifier une fonction, mettez-la à jour dans votre code ou demandez de l'aide dans le chat.",recurring:"Récurrent",oneTime:"Une seule fois",repeatsEvery:"Se répète tous les",minute:"Minute",hour:"Heure",day:"Jour",week:"Semaine",month:"Mois",startAt:"Début à ",at:"À",repeatsOn:"Se répète le",repeatsOnDay:"Se répète le jour",ends:"Fin",never:"Jamais",on:"Le",after:"Après",occurrences:"occurrences",runOn:"Exécuter le",atTime:"À l'heure",oneTimeDateRequired:"Les calendriers uniques nécessitent une date spécifiée.",oneTimeTimeRequired:"Les calendriers uniques nécessitent une heure spécifiée.",oneTimePastError:"La date et l'heure du calendrier unique ne peuvent pas être dans le passé.",minMinutesInterval:"L'intervalle minimum pour les calendriers basés sur les minutes est de {{min}} minutes.",selectDayForWeekly:"Veuillez sélectionner au moins un jour pour le calendrier hebdomadaire.",monthlyDayRequired:"Les calendriers mensuels nécessitent la sélection d'un jour du mois.",endDateRequired:"La date de fin est requise lorsque « Fin » est défini sur « Le ».",endDatePast:"La date de fin ne peut pas être dans le passé.",occurrenceCountMin:"Le nombre d'occurrences doit être d'au moins 1.",newScheduledAutomation:"Nouvelle automatisation programmée",logsWillAppearAfterRun:"Les journaux apparaîtront ici après l'exécution de cette automatisation.",description:"Description",nameField:"Nom",typeField:"Type",automationUpdated:"Automatisation mise à jour avec succès",automationCreated:"Automatisation créée avec succès",failedToSave:"Échec de l'enregistrement de l'automatisation",functionArgs:"Arguments (JSON)",functionArgsPlaceholder:'{"key": "value"}',functionArgsTooltip:"Objet JSON optionnel passé à la fonction comme arguments supplémentaires.",functionArgsInvalidJson:"Les arguments doivent être du JSON valide.",advanced:"Avancé",triggerConditions:"Conditions de déclenchement",conditionsSetByAI:"Les conditions sont configurées par le constructeur IA et ne peuvent pas être modifiées manuellement.",conditionsSummaryError:"Impossible de charger le résumé des conditions.",connectorNoManualIntegrations:"Aucune intégration disponible pour la création manuelle",connectorNoManualIntegrationsHint:"Certaines intégrations nécessitent des conditions de déclenchement et ne peuvent être créées que via le constructeur IA.",suggestedForYou:"Suggestions pour vous",basedOnYourContext:"Basé sur le contexte de votre application",createFromScratch:"Créer à partir de zéro"},Kq={automations:Yq},Zq={title:"Intégrations",myIntegrations:"Mes intégrations",browse:"Parcourir",payments:"Paiements",failedToLoad:"Échec du chargement des connexions de l'application",successfullySwitched:"Compte basculé avec succès vers {{name}}",cancelled:"Annulé",connectionCancelled:"La connexion de l'application a été annulée",disconnected:"{{name}} a été déconnecté",failedToDisconnect:"Échec de la déconnexion de l'application",stripeRemoved:"L'intégration Stripe a été supprimée",wixPaymentsDisconnected:"Wix Payments a été déconnecté",integrationRemoved:"{{name}} a été supprimé",failedToRemove:"Échec de la suppression de l'intégration",connectedAccountsWarning:"Les comptes connectés peuvent exposer des données sensibles à toute personne ayant accès.",unlockFeature:"Débloquer cette fonctionnalité",unlockFeatureDesc:"Cette fonctionnalité est uniquement disponible sur le plan Builder ou supérieur. Mettez à niveau pour continuer à travailler sans limites",upgradeToUseConnector:"Mettre à niveau pour utiliser cette fonctionnalité",access:"Accès {{name}}",disconnectAccount:"Déconnecter le compte ?",disconnectDesc:"L'accès de <bold>{{email}}</bold> sur <bold>{{name}}</bold> sera révoqué.<br/>L'enregistrement d'intégration sera conservé pour une future reconnexion.",disconnecting:"Déconnexion...",disconnect:"Déconnecter",removeIntegration:"Supprimer l'intégration ?",removeDesc:"<bold>{{name}}</bold> sera définitivement supprimé de cette application.<br/>Pour recréer une connexion, vous devrez la configurer depuis le début.",removing:"Suppression...",remove:"Supprimer",cancel:"Annuler",reject:"Rejeter",new:"Nouveau",done:"Terminé",success:"Succès",error:"Erreur",setupIntegrations:"Configurer les intégrations",setupIntegrationsDesc:"Liez facilement votre application à des connecteurs comme Google Calendar, Google Drive, Slack, Notion, Salesforce, HubSpot et plus encore.",setupIntegrationsChat:"Décrivez simplement ce que vous souhaitez connecter dans le chat, et il le configurera pour vous.",viewAccess:"Voir l'accès",connecting:"Connexion...",switchAccount:"Changer de compte",reconnect:"Reconnecter",disconnectAccount2:"Déconnecter le compte",use:"Utiliser",examplePrompts:"Exemples de prompts",clickPromptToAdd:"Cliquez sur un prompt pour l'ajouter à votre chat.",unableToLoadSuggestions:"Impossible de charger les suggestions. Veuillez réessayer plus tard.",requiresBackendFunctions:"Cette intégration nécessite des fonctions backend, une fonctionnalité disponible uniquement sur le niveau Builder et supérieur. ",seePlans:"Voir les plans",promptAddedToChat:"Prompt ajouté au chat. Appuyez sur Entrée pour envoyer.",connectors:"Connecteurs",connectorsDesc:"Connectez votre application à des services populaires avec des connexions OAuth rapides.",searchConnectors:"Rechercher des connecteurs",noSearchResults:"Aucun résultat pour votre recherche",noSearchResultsDesc:"Essayez d'utiliser d'autres mots-clés ou vérifiez l'orthographe. Vous pouvez aussi trier par nom ou ajoutés récemment.",sort:{title:"Trier",mostUsed:"Plus utilisés",recentlyAdded:"Ajoutés récemment",az:"A-Z",za:"Z-A"},revoked:"Révoqué",connectionLost:"La connexion est perdue — veuillez reconnecter",configModal:{connectTo:"Se connecter à {{name}}",configureConnection:"Configurez votre connexion à {{name}}",loadingConfig:"Chargement de la configuration...",retryHint:"Vous pouvez réessayer.",connect:"Connecter",connecting:"Connexion...",validationRequired:"{{name}} est requis",validationInvalid:"{{name}} n'est pas valide",fetchError:"Impossible de charger la configuration.",retry:"Réessayer"},wixPayments:{title:"Wix Payments",live:"En ligne",disconnected:"Déconnecté",acceptingPayments:"Accepte les paiements",integrationDisconnected:"Intégration déconnectée",openingWixPayments:"Ouverture de Wix Payments...",popupBlocked:"Wix Payments a été bloqué par votre navigateur. Utilisez le lien ci-dessous pour ouvrir manuellement le tableau de bord des paiements.",errors:{noUrl:"Impossible d'obtenir l'URL de Wix Payments. Veuillez réessayer.",fetchFailed:"Impossible d'ouvrir Wix Payments. Veuillez réessayer.",invalidRedirect:"Impossible d'ouvrir Wix Payments. Veuillez réessayer."},openDashboard:"Ouvrir le tableau de bord",managePayments:"Gérer les paiements",disconnect:"Déconnecter",disconnectIntegration:"Déconnecter l'intégration ?",disconnectDesc:"<bold>Wix Payments</bold> sera déconnecté de cette application.<br/>Vous pouvez le reconnecter plus tard depuis le chat.",disconnecting:"Déconnexion...",disconnectButton:"Déconnecter",enterNamePrompt:"Veuillez entrer votre nom pour continuer :",firstNamePlaceholder:"Prénom",lastNamePlaceholder:"Nom de famille"},stripe:{unableToClaimSandbox:"Impossible de réclamer le sandbox",sandboxExpired:"Le sandbox a peut-être expiré ou déjà été réclamé. Veuillez rafraîchir la page.",failedGetClaimUrl:"Échec de l'obtention de l'URL de réclamation",pleaseTryAgain:"Veuillez réessayer ou rafraîchir la page.",pendingSetup:"Configuration en attente",completeSetupGuide:"Terminez le guide de configuration pour accepter les paiements réels",live:"En ligne",stripe:"Stripe",loadingStripe:"Chargement...",acceptingPayments:"Accepte les paiements réels",accountDetails:"Détails du compte Stripe",hideGuide:"Masquer le guide",showGuide:"Afficher le guide",goToStripe:"Aller sur Stripe",aboutIntegration:"À propos de l'intégration",aboutStripeIntegration:"À propos de l'intégration Stripe",stripeDesc:"Stripe vous permet d'accepter des paiements, d'envoyer des virements et de gérer votre activité en ligne. Cette intégration vous permet de :",acceptCards:"Accepter les cartes de crédit et autres méthodes de paiement",createProducts:"Créer des produits et des abonnements",manageCustomers:"Gérer les clients et la facturation",close:"Fermer",tryTestPayment:"Essayer un paiement test",claimSandbox:"Réclamez votre sandbox Stripe",addLiveKeys:"Ajoutez vos clés API live depuis Stripe",copiedCard:"Copié !",testCardCopied:"Numéro de carte test copié dans le presse-papiers.",failedToCopy:"Échec de la copie",copyManually:"Veuillez copier manuellement : 4242 4242 4242 4242",keysSaved:"Clés API enregistrées avec succès.",failedSaveKeys:"Échec de l'enregistrement des clés API. Veuillez réessayer.",movedOutOfTestMode:"Vous avez quitté le mode test.",noNeedTestPayments:"Plus besoin d'effectuer des paiements test.",useTestCard:"Utilisez cette carte test pour simuler un achat :",testCardNumber:"4242 4242 4242 4242",anyFutureExpiry:", toute date d'expiration future, tout CVC à 3 chiffres.",publishAndOpen:"Publiez votre application et ouvrez-la dans un nouvel onglet pour tester l'expérience de paiement",copyCardNumber:"Copier le numéro de carte",connectStripeDesc:"Connectez-vous à votre compte Stripe existant ou créez-en un nouveau pour commencer à accepter de vrais paiements.",claimAndGoLive:"Réclamer et passer en production",copyLiveKeys:"Copiez vos clés Publishable et Secret live depuis votre <link>Tableau de bord Stripe</link> pour terminer la configuration et activer les paiements réels dans votre application.",publishableKey:"Clé publique",secretKey:"Clé secrète",enterValue:"Entrez la valeur",savingKeys:"Enregistrement...",saveApiKeys:"Enregistrer les clés API",completeStepInStripe:"Pour terminer cette étape, réclamez le sandbox et terminez la configuration dans Stripe"}},Jq={title:"Intégrations de l'application",subtitle:"Connectez votre application à des services tiers et étendez ses fonctionnalités.",integrationCatalog:"Catalogue d'intégrations",payments:"Paiements",zapier:"Zapier",couldNotLoad:"Impossible de charger les détails de l'intégration. Veuillez réessayer.",loadingDetails:"Chargement des détails...",backToCatalog:"Retour au catalogue",integrationAdded:"Intégration ajoutée (provisoire)",wouldBeAdded:"{{name}} serait ajouté à votre application. Valeurs secrètes enregistrées.",requiresConfiguration:"Configuration requise",requiresSecrets:"Cette intégration nécessite {{count}} valeur(s) secrète(s) à configurer.",addToApp:"Ajouter à l'application",paymentProcessing:"Traitement des paiements",paymentProcessingDesc:"Acceptez des paiements dans votre application avec des processeurs de paiement populaires. Bientôt disponible !",leadingPaymentPlatform:"Plateforme de paiement de référence",globallyRecognized:"Paiements mondialement reconnus",configurePayment:"Configurez les fournisseurs de paiement pour activer les abonnements, les achats uniques et plus encore dans votre application.",zapierIntegration:"Intégration Zapier",zapierDesc:"Connectez votre application à des milliers d'autres services via Zapier.",automateWithZapier:"Automatisez avec Zapier",linkBase44:"Liez Base44 à vos applications favorites comme Slack, Google Sheets, Mailchimp et plus encore.",exploreOnZapier:"Explorer Base44 sur Zapier",configureIntegration:"Configurer {{name}}",configureDesc:"Cette intégration nécessite la configuration de certaines valeurs secrètes. Celles-ci sont stockées de manière sécurisée et chiffrée.",saveAndAdd:"Enregistrer et ajouter l'intégration"},Qq={title:"Compétences",description:"Ajoutez des compétences pour façonner la manière dont l'IA construit vos apps.",manage:"Gérer"},Xq=JSON.parse(`{"title":"Connecteurs","connectorsForAppUsers":"Connecteurs pour les utilisateurs d'apps","connectorsForAppUsersDesc":"Configurez des connecteurs pour que les utilisateurs d'apps puissent lier leurs comptes personnels aux apps de cet espace de travail.","connectorsForAppUsersDialogDesc":"Permettez aux utilisateurs d'apps de connecter leurs comptes personnels aux apps de cet espace de travail.","addConnector":"Ajouter un connecteur","browseConnectors":"Parcourir les connecteurs","noConnectorsYet":"Aucun connecteur pour l'instant","noConnectorsYetDesc":"Ajoutez des connecteurs pour que les utilisateurs d'apps puissent lier leurs comptes personnels.","view":"Voir","edit":"Modifier","connections":"Connexions","addConnection":"Ajouter une connexion","viewConnector":"Voir le connecteur","connectorName":"Nom du connecteur","connector":"Connecteur {{name}}","examplePrompts":"Exemples de prompts","back":"Retour","configureConnection":"Configurez votre connexion","configureConnectionDesc":"Fournissez votre ID client, secret et autorisations.","connectorNameDesc":"Entrez un nom court pour identifier ce connecteur","clientId":"ID client","clientSecret":"Secret client","clientSecrets":"Secrets client","scopes":"Portées","scopesDesc":"Entrez les portées dont votre app a besoin. Écrivez chaque portée sur une ligne séparée.","scopesPlaceholder":"Entrez les portées, une par ligne","scopesPlaceholderExample":"ex.\\nhttps://www.googleapis.com/auth/calendar.readonly\\nemail","connectionConfig":"Configuration de connexion","cancel":"Annuler","close":"Fermer","addingConnector":"Ajout en cours...","savingConnector":"Sauvegarde en cours...","saveChanges":"Sauvegarder les modifications","deleteConnector":"Supprimer le connecteur","deleteConfirm":"Supprimer {{name}} ? Cette action ne peut pas être annulée.","deleting":"Suppression en cours...","addConnectionTitle":"Ajouter une connexion {{name}}","editConnectionTitle":"Modifier la connexion {{name}}","connectorReadOnly":"Connecteur {{name}}","readOnlyDesc":"Vue en lecture seule des détails du connecteur","builtInConnectors":"Connecteurs intégrés","promptExamples":"Exemples de prompts pour commencer","adminOnlyTooltip":"Seuls les administrateurs ou propriétaires d'espace de travail peuvent connecter des intégrations pour les utilisateurs d'apps","settingUp":"Configuration du connecteur en cours...","configured":"Connecteur configuré","setUp":"Configurer le connecteur d'utilisateur d'app {{type}}","setUpGeneric":"Configurer le connecteur d'utilisateur d'app","connecting":"Connexion en cours...","connect":"Se connecter","reject":"Rejeter","workspaceLevelNote":"Cette intégration sera accessible au niveau de l'espace de travail et appliquée à toutes les applications créées dans cet espace de travail.","previousMessage":"Cette configuration de connecteur provient d'un message précédent","toastErrorTitle":"Erreur","toastCreated":"Connecteur créé","toastCreateFailed":"Échec de la création du connecteur","toastDuplicateName":"Un connecteur avec ce nom existe déjà dans cet espace de travail","toastUpdated":"Connecteur mis à jour","toastUpdateFailed":"Échec de la mise à jour du connecteur","toastDeleted":"Connecteur supprimé","toastDeleteFailed":"Échec de la suppression du connecteur","configFetchFailed":"Échec du chargement de la configuration de connexion. Des champs obligatoires peuvent être manquants.","retry":"Réessayer","toastLoadFailed":"Échec du chargement des connecteurs OAuth","namePlaceholder":"ex. Marketing {{label}}","clientIdPlaceholder":"Entrez l'ID client OAuth","clientSecretPlaceholderNew":"Entrez le nouveau secret client","clientSecretPlaceholder":"Entrez le secret client OAuth","extraDetails":{"googlecalendar":{"longDescription":"Connectez-vous à Google Calendar pour permettre aux utilisateurs de votre app de consulter, créer et gérer des événements de calendrier. Synchronisez les agendas, automatisez la création de réunions à partir de soumissions de formulaires et créez des workflows de planification.","examplePrompt0":"Synchroniser les réunions à venir sur un tableau de bord dans l'app.","examplePrompt1":"Créer des événements de calendrier à partir de soumissions de formulaires.","examplePrompt2":"Afficher une vue de l'agenda du jour pour l'utilisateur connecté.","examplePrompt3":"Envoyer des rappels avant les événements à venir."},"slack":{"longDescription":"Connectez-vous à Slack pour partager des messages et créer des canevas directement afin de simplifier la collaboration et augmenter la productivité. Recherchez et récupérez des messages, canaux, fils de discussion, fichiers et utilisateurs, donnant à Claude le contexte pour optimiser votre travail.","examplePrompt0":"Synchroniser les nouveaux utilisateurs de l'app dans un canal Slack.","examplePrompt1":"Envoyer les mises à jour de statut de build dans #devops.","examplePrompt2":"Publier les erreurs de l'app dans le canal #alertes.","examplePrompt3":"Notifier l'équipe lors d'un nouveau retour client."},"salesforce":{"longDescription":"Connectez-vous à Salesforce pour accéder aux contacts, prospects, opportunités et objets personnalisés. Permettez aux utilisateurs de votre app de consulter et mettre à jour leurs données CRM, de suivre les affaires et d'automatiser les workflows de vente.","examplePrompt0":"Afficher un tableau de bord des opportunités ouvertes.","examplePrompt1":"Créer un nouveau prospect à partir d'une soumission de formulaire.","examplePrompt2":"Synchroniser les mises à jour de contacts vers Salesforce.","examplePrompt3":"Notifier l'équipe quand une affaire est conclue."},"hubspot":{"longDescription":"Connectez-vous à HubSpot pour gérer les contacts, entreprises, affaires et campagnes marketing. Permettez aux utilisateurs de votre app de synchroniser leurs données CRM, de suivre l'engagement et d'automatiser les workflows marketing.","examplePrompt0":"Afficher une liste des affaires récentes dans l'app.","examplePrompt1":"Ajouter de nouveaux contacts à partir de formulaires d'inscription.","examplePrompt2":"Synchroniser les résultats de campagnes e-mail sur un tableau de bord.","examplePrompt3":"Mettre à jour les étapes des affaires depuis l'app."},"notion":{"longDescription":"Connectez-vous à Notion pour accéder aux pages, bases de données et contenus de l'espace de travail. Permettez aux utilisateurs de votre app de lire et mettre à jour leur espace Notion, de synchroniser des données structurées et d'automatiser les workflows de contenu.","examplePrompt0":"Récupérer les listes de tâches d'une base de données Notion.","examplePrompt1":"Créer de nouvelles pages à partir de soumissions de formulaires.","examplePrompt2":"Synchroniser les mises à jour de statut de projet vers Notion.","examplePrompt3":"Afficher le contenu Notion dans l'app."},"slackbot":{"longDescription":"Connectez un bot Slack pour publier des messages en tant que bot personnalisé avec un nom et une icône de marque. Répondez aux mentions de l'app, utilisez des commandes slash et automatisez des workflows centrés sur le bot dans votre espace de travail Slack.","examplePrompt0":"Publier des résumés quotidiens de standup dans #général.","examplePrompt1":"Répondre aux commandes slash avec les données de l'app.","examplePrompt2":"Envoyer des alertes automatiques quand des tâches sont en retard.","examplePrompt3":"Notifier les canaux quand de nouvelles commandes arrivent."},"googledrive":{"longDescription":"Connectez-vous à Google Drive pour télécharger, organiser et gérer des fichiers. Permettez aux utilisateurs de votre app d'enregistrer des documents générés, de sauvegarder des données et d'accéder à leurs fichiers Drive directement depuis votre app.","examplePrompt0":"Enregistrer les rapports générés dans un dossier Drive partagé.","examplePrompt1":"Télécharger les fichiers soumis par les utilisateurs vers Google Drive.","examplePrompt2":"Lister les fichiers récents d'un dossier spécifique.","examplePrompt3":"Sauvegarder automatiquement les exports de données de l'app sur Drive."},"gmail":{"longDescription":"Connectez-vous à Gmail pour envoyer, lire et gérer des e-mails de manière programmatique. Permettez aux utilisateurs de votre app d'automatiser les workflows d'e-mails, de lire les messages de la boîte de réception et d'envoyer des e-mails personnalisés depuis leur propre compte.","examplePrompt0":"Envoyer un e-mail de confirmation après une soumission de formulaire.","examplePrompt1":"Afficher les derniers messages de la boîte de réception de l'utilisateur.","examplePrompt2":"Répondre automatiquement aux e-mails correspondant à certains critères.","examplePrompt3":"Rédiger et envoyer des e-mails de prospection personnalisés."},"googlesheets":{"longDescription":"Connectez-vous à Google Sheets pour lire, écrire et mettre à jour les données de feuilles de calcul. Permettez aux utilisateurs de votre app de synchroniser les enregistrements, d'importer des données depuis des feuilles et d'exporter les données de l'app vers leurs feuilles de calcul.","examplePrompt0":"Importer les données produits depuis une feuille Google Sheets.","examplePrompt1":"Exporter les rapports de ventes quotidiens vers une feuille de calcul.","examplePrompt2":"Synchroniser les soumissions de formulaires vers une feuille de suivi.","examplePrompt3":"Lire les données tarifaires depuis une feuille de calcul partagée."},"googleslides":{"longDescription":"Connectez-vous à Google Slides pour créer et modifier des présentations. Permettez aux utilisateurs de votre app de générer des présentations à partir de modèles, d'ajouter du contenu dynamique et d'automatiser la création de présentations.","examplePrompt0":"Générer un pitch deck à partir des données d'un formulaire.","examplePrompt1":"Ajouter une nouvelle diapositive avec les métriques hebdomadaires.","examplePrompt2":"Créer des présentations à partir de modèles de rapports.","examplePrompt3":"Mettre à jour le contenu des diapositives avec les dernières données."},"googledocs":{"longDescription":"Connectez-vous à Google Docs pour créer, lire et modifier des documents. Permettez aux utilisateurs de votre app de générer des contrats, de remplir des modèles et de gérer des documents directement depuis votre app.","examplePrompt0":"Générer un contrat à partir d'un modèle.","examplePrompt1":"Créer des notes de réunion à partir des données d'un formulaire.","examplePrompt2":"Remplir un modèle de document avec les informations de l'utilisateur.","examplePrompt3":"Ajouter du nouveau contenu à un document existant."},"googlebigquery":{"longDescription":"Connectez-vous à Google BigQuery pour exécuter des requêtes SQL et analyser de grands ensembles de données. Permettez aux utilisateurs de votre app d'interroger leur entrepôt de données, de créer des tableaux de bord et d'intégrer des analyses dans votre app.","examplePrompt0":"Interroger les données de ventes et les afficher dans un graphique.","examplePrompt1":"Extraire les analyses utilisateur depuis les tables BigQuery.","examplePrompt2":"Exécuter un rapport planifié depuis les données de l'entrepôt.","examplePrompt3":"Afficher les produits les plus performants à partir des résultats de requêtes."},"linkedin":{"longDescription":"Connectez-vous à LinkedIn pour accéder aux données de profil et partager des publications. Permettez aux utilisateurs de votre app de publier des mises à jour, de récupérer des profils professionnels et d'automatiser les workflows de réseaux sociaux sur LinkedIn.","examplePrompt0":"Publier automatiquement les actualités de l'entreprise sur LinkedIn.","examplePrompt1":"Récupérer les détails du profil de l'utilisateur connecté.","examplePrompt2":"Partager des articles de blog sur LinkedIn depuis l'app.","examplePrompt3":"Afficher les informations du profil LinkedIn sur un tableau de bord."},"tiktok":{"longDescription":"Connectez-vous à TikTok pour accéder aux informations de profil, aux statistiques d'abonnés et aux données vidéo. Permettez aux utilisateurs de votre app de suivre leurs performances TikTok et de parcourir leurs vidéos publiées.","examplePrompt0":"Afficher le nombre d'abonnés et les statistiques du profil.","examplePrompt1":"Lister les vidéos TikTok les plus récentes de l'utilisateur.","examplePrompt2":"Afficher les métriques de performance vidéo sur un tableau de bord.","examplePrompt3":"Suivre la croissance des abonnés dans le temps."},"discord":{"longDescription":"Connectez-vous à Discord pour envoyer des messages, gérer des serveurs et interagir avec les guildes et les canaux. Permettez aux utilisateurs de votre app d'automatiser les notifications, de publier des mises à jour et de s'intégrer à leur communauté Discord.","examplePrompt0":"Envoyer des notifications de commande dans un canal Discord.","examplePrompt1":"Publier les alertes de l'app dans un canal #notifications.","examplePrompt2":"Lister les canaux disponibles d'un serveur Discord.","examplePrompt3":"Notifier l'équipe quand un nouvel utilisateur s'inscrit."},"wix":{"longDescription":"Connectez-vous à Wix pour accéder aux données du site, gérer le contenu et interagir avec les solutions business de Wix comme Stores, Bookings et CRM. Permettez aux utilisateurs de votre app de synchroniser les produits, commandes et données clients.","examplePrompt0":"Synchroniser les produits de la boutique Wix dans l'app.","examplePrompt1":"Récupérer les commandes récentes depuis Wix Stores.","examplePrompt2":"Afficher la disponibilité des réservations depuis Wix Bookings.","examplePrompt3":"Gérer les contacts Wix CRM depuis votre app."},"github":{"longDescription":"Connectez-vous à GitHub pour accéder aux dépôts, gérer les issues et pull requests et automatiser les workflows de développement. Permettez aux utilisateurs de votre app de suivre les modifications de code, de créer des issues et de rationaliser leur processus de développement.","examplePrompt0":"Lister les issues ouvertes d'un dépôt.","examplePrompt1":"Créer une nouvelle issue à partir d'un formulaire de rapport de bug.","examplePrompt2":"Afficher les pull requests récentes sur un tableau de bord.","examplePrompt3":"Suivre l'activité des commits à travers les dépôts."},"wrike":{"longDescription":"Connectez-vous à Wrike pour gérer les projets, les tâches et la collaboration d'équipe. Permettez aux utilisateurs de votre app de créer et mettre à jour des tâches, de suivre la progression des projets et de coordonner le travail entre les équipes.","examplePrompt0":"Créer des tâches à partir de soumissions de formulaires.","examplePrompt1":"Afficher les calendriers de projet sur un tableau de bord.","examplePrompt2":"Mettre à jour le statut des tâches depuis l'app.","examplePrompt3":"Afficher la charge de travail de l'équipe et les attributions de tâches."},"box":{"longDescription":"Connectez-vous à Box pour télécharger, gérer et partager des fichiers et dossiers. Permettez aux utilisateurs de votre app de stocker des documents en toute sécurité, d'organiser des fichiers et de collaborer sur du contenu dans Box.","examplePrompt0":"Télécharger les documents générés dans un dossier Box.","examplePrompt1":"Lister les fichiers d'un répertoire Box partagé.","examplePrompt2":"Télécharger des fichiers depuis Box dans l'app.","examplePrompt3":"Partager un lien de fichier Box avec les membres de l'équipe."},"clickup":{"longDescription":"Connectez-vous à ClickUp pour gérer les tâches, les projets et les workflows d'équipe. Permettez aux utilisateurs de votre app de créer des tâches, de mettre à jour les statuts et de suivre la progression des projets directement depuis votre app.","examplePrompt0":"Créer des tâches ClickUp à partir de soumissions de formulaires.","examplePrompt1":"Afficher le statut du tableau de tâches sur un tableau de bord.","examplePrompt2":"Mettre à jour les priorités des tâches depuis l'app.","examplePrompt3":"Lister les tâches en retard pour le sprint en cours."},"google_analytics":{"longDescription":"Connectez-vous à Google Analytics pour accéder aux données de trafic web, de comportement utilisateur et de performance marketing. Permettez aux utilisateurs de votre app de consulter les rapports d'analyse et de suivre les métriques clés depuis votre app.","examplePrompt0":"Afficher les pages vues et les sessions sur un tableau de bord.","examplePrompt1":"Afficher les principales sources de trafic de la semaine passée.","examplePrompt2":"Suivre les taux de conversion à travers les campagnes.","examplePrompt3":"Extraire les données démographiques et de comportement des utilisateurs."},"outlook":{"longDescription":"Connectez-vous à Outlook pour envoyer et lire des e-mails, gérer les événements de calendrier et accéder à la messagerie et au calendrier Microsoft 365. Permettez aux utilisateurs de votre app d'automatiser les workflows d'e-mails et de synchroniser leur agenda.","examplePrompt0":"Envoyer des e-mails de relance depuis l'app.","examplePrompt1":"Afficher les événements de calendrier à venir.","examplePrompt2":"Créer des événements de calendrier à partir de soumissions de formulaires.","examplePrompt3":"Afficher les e-mails récents sur un tableau de bord."},"linear":{"longDescription":"Connectez-vous à Linear pour créer et gérer les issues, projets et cycles. Permettez aux utilisateurs de votre app de suivre les workflows d'équipe, d'organiser les sprints et de rester informés de la progression de l'ingénierie.","examplePrompt0":"Créer des issues Linear à partir de formulaires de rapport de bugs.","examplePrompt1":"Afficher les issues du sprint actif sur un tableau de bord.","examplePrompt2":"Mettre à jour le statut des issues depuis l'app.","examplePrompt3":"Suivre la progression des cycles et la vélocité de l'équipe."},"dropbox":{"longDescription":"Connectez-vous à Dropbox pour télécharger, télécharger et gérer des fichiers et dossiers. Permettez aux utilisateurs de votre app de stocker des fichiers dans le cloud, de synchroniser des données et d'accéder à leur contenu Dropbox depuis votre app.","examplePrompt0":"Télécharger les rapports exportés vers Dropbox.","examplePrompt1":"Lister les fichiers d'un dossier Dropbox spécifique.","examplePrompt2":"Télécharger les fichiers partagés dans l'app.","examplePrompt3":"Synchroniser les sauvegardes de données de l'app vers Dropbox."}},"builtIn":{"sendEmail":{"name":"Envoyer des e-mails","rowDescription":"Envoyez des e-mails aux personnes dans votre app Base44 avec des noms d'expéditeur personnalisables et du contenu HTML enrichi.","subtitle":"Envoyez des e-mails automatisés à vos utilisateurs directement depuis votre app.","longDescription":"Envoyez des e-mails automatiquement depuis votre app dans le cadre de workflows ou d'automatisations. Cette intégration peut être déclenchée depuis des flux, des fonctions backend ou des agents pour envoyer des notifications telles que des confirmations, des alertes, des résumés ou des liens d'accès aux utilisateurs.","examplePrompt0":"Quand un ticket de support est mis à jour en « résolu », utilisez SendEmail pour notifier le demandeur avec un résumé de la résolution.","examplePrompt1":"Créez une automatisation hebdomadaire qui utilise SendEmail pour envoyer aux admins un résumé des nouvelles commandes et métriques clés.","examplePrompt2":"Ajoutez un flux quotidien qui utilise SendEmail pour envoyer aux admins un résumé des nouvelles inscriptions dans cette app.","examplePrompt3":"Créez une automatisation qui utilise SendEmail pour rappeler aux utilisateurs 24 heures avant leur rendez-vous réservé."},"uploadFile":{"name":"Télécharger un fichier","rowDescription":"Permettez aux utilisateurs de télécharger des fichiers dans votre app. Utilisez l'URL du fichier renvoyée dans d'autres intégrations ou workflows.","subtitle":"Permettez aux utilisateurs de télécharger des fichiers dans votre app. Utilisez l'URL du fichier renvoyée dans d'autres intégrations ou workflows.","longDescription":"Permettez aux utilisateurs de télécharger des fichiers dans votre app et de les joindre à des enregistrements. Cette intégration alimente les composants de téléchargement pour que vous puissiez collecter des documents, images, reçus, contrats, captures d'écran, photos de profil, fichiers CSV ou feuilles de calcul, et stocker uniquement l'URL sécurisée du fichier dans vos données.","examplePrompt0":"Ajoutez un champ de téléchargement de fichier à ce formulaire en utilisant Télécharger un fichier et enregistrez l'URL du fichier sur l'enregistrement associé.","examplePrompt1":"Créez une page où les utilisateurs peuvent télécharger des photos de profil avec Télécharger un fichier et stocker l'URL de l'image sur leur entité utilisateur.","examplePrompt2":"Configurez une zone de téléchargement pour les fichiers CSV en utilisant Télécharger un fichier afin que je puisse importer ces fichiers plus tard dans mes tables de données."},"invokeLlm":{"name":"Invoquer le LLM","rowDescription":"Générez des réponses IA en utilisant des modèles de langage intégrés, des prompts, des fichiers et des sorties structurées.","subtitle":"Générez des réponses IA en utilisant des modèles de langage intégrés, des prompts, des fichiers et des sorties structurées.","longDescription":"Utilisez un modèle de langage pour générer des réponses à partir de prompts. Cette intégration peut renvoyer des sorties JSON structurées, analyser des images, utiliser des fichiers joints comme contexte et effectuer des recherches web si nécessaire. Elle peut être utilisée pour alimenter des agents, des workflows et d'autres fonctionnalités pilotées par l'IA dans votre app.","examplePrompt0":"Générez des réponses IA à partir des entrées utilisateur en utilisant Invoquer le LLM et affichez la réponse sur cette page.","examplePrompt1":"Utilisez Invoquer le LLM pour résumer les longs messages de feedback en trois points clés stockés sur chaque enregistrement de Feedback.","examplePrompt2":"Ajoutez une fonctionnalité « réécrire ce texte » qui envoie le texte de l'utilisateur à Invoquer le LLM et renvoie une version plus claire et conviviale.","examplePrompt3":"Utilisez Invoquer le LLM pour classifier chaque ticket de support comme « bug », « demande de fonctionnalité » ou « question » et enregistrer l'étiquette sur le ticket."},"generateImage":{"name":"Générer une image","rowDescription":"Créez des images à partir de descriptions textuelles détaillées. Renvoie une URL vers l'image générée.","subtitle":"Fournissez simplement un prompt textuel décrivant l'image souhaitée, et il renvoie une URL vers l'image générée.","longDescription":"Générez des images à l'aide de l'IA à partir de prompts textuels ou de flux dans votre app. Cette intégration permet à votre app de créer des images de couverture, des miniatures, des avatars, des placeholders de produits ou des visuels marketing simples à la demande sans connecter un fournisseur d'images externe.","examplePrompt0":"Utilisez Générer une image pour créer une image produit par défaut quand un nouveau produit est ajouté sans photos.","examplePrompt1":"Ajoutez une fonctionnalité où les utilisateurs peuvent entrer une courte description et Générer une image renvoie une URL d'image de couverture enregistrée sur leur publication.","examplePrompt2":"Créez un flux qui utilise Générer une image pour générer des images d'avatar pour les nouveaux utilisateurs en fonction de leur couleur ou thème préféré."},"extractData":{"name":"Extraire des données de fichiers téléchargés","rowDescription":"Extrayez des données structurées de fichiers téléchargés (CSV, PNG, JPG, JPEG, PDF) à l'aide de schémas JSON. Utile pour l'importation en masse de données.","subtitle":"Extrayez des données structurées de fichiers téléchargés (CSV, PNG, JPG, JPEG, PDF) à l'aide de schémas JSON. Utile pour l'importation en masse de données.","longDescription":"Extrayez automatiquement des données structurées des fichiers téléchargés dans votre app et stockez-les dans vos entités. Cette intégration lit les documents et feuilles de calcul et transforme leur contenu en champs structurés que vous pouvez utiliser dans des enregistrements, rapports ou automatisations.","examplePrompt0":"Quand quelqu'un télécharge une facture PDF, utilisez Extraire des données pour récupérer le fournisseur, le montant total et la date d'échéance dans une entité Factures.","examplePrompt1":"Utilisez Extraire des données pour lire un CSV de contacts et créer un enregistrement de contact par ligne.","examplePrompt2":"Après qu'un utilisateur télécharge une image de reçu, utilisez Extraire des données pour extraire le commerçant, la date et les articles dans un enregistrement structuré de Dépenses."},"whatsapp":{"name":"WhatsApp","rowDescription":"Connectez votre agent à WhatsApp pour que les utilisateurs puissent envoyer des messages à l'agent de votre app directement depuis leur téléphone, sans ouvrir l'app.","subtitle":"Connectez votre agent à WhatsApp pour que les utilisateurs puissent envoyer des messages à l'agent de votre app directement depuis leur téléphone, sans ouvrir l'app.","longDescription":"Connectez votre agent à WhatsApp pour que les utilisateurs puissent envoyer des messages à l'agent de votre app directement depuis leur téléphone. Utilisez cette intégration pour gérer le support, collecter des données ou envoyer des mises à jour via WhatsApp pendant que l'agent accède aux données et workflows de votre app en arrière-plan.","examplePrompt0":"Connectez mon agent de support à WhatsApp pour que les clients puissent poser des questions là -bas et que l'agent réponde en utilisant les connaissances de mon app.","examplePrompt1":"Configurez un flux WhatsApp où les nouveaux messages créent ou mettent à jour des enregistrements dans mon entité Contacts et l'agent confirme les détails.","examplePrompt2":"Quand le statut d'une commande passe à « expédié », faites que l'agent envoie un message WhatsApp avec le lien de suivi et les informations clés de la commande."}}}`),e4={title:"Connecteurs pour les utilisateurs d'apps",description:"Configurez des connecteurs pour que les utilisateurs d'apps puissent lier leurs comptes personnels.",manage:"Gérer"},t4={connections:Zq,integrations:Jq,skillsBanner:Qq,oauthConnectors:Xq,oauthConnectorsBanner:e4},a4={importSuccessful:"Importation réussie",importSuccessfulMsg:"{{count}} enregistrements {{name}} importés avec succès",importFailed:"Échec de l'importation",exportSuccessful:"Exportation réussie",exportSuccessfulMsg:"Entités exportées en CSV avec succès",exportFailed:"Échec de l'exportation",moveAllToTrash:"Déplacer tous les enregistrements vers la corbeille",moveAllToTrashConfirm:"Êtes-vous sûr de vouloir déplacer tous les enregistrements vers la corbeille ? Vous pourrez les restaurer ultérieurement depuis la corbeille.",moveToTrash:"Déplacer vers la corbeille",success:"Succès",allMovedToTrash:"Tous les enregistrements ont été déplacés vers la corbeille avec succès",error:"Erreur",add:"Ajouter",addItem:"Ajouter un élément",import:"Importer",export:"Exporter",schema:"Schéma",recentlyDeleted:"Supprimés récemment",deleteAll:"Tout supprimer",permissions:"Permissions",permissionsDesc:"Créez des règles pour contrôler qui peut lire et écrire des enregistrements. Plusieurs règles sont combinées avec une logique OU.",saveRules:"Enregistrer les règles",permissionsIssueDetected:"Problème de permissions détecté",learnMoreAboutPermissions:"<a>En savoir plus <icon/></a> sur les permissions et les règles de sécurité",customize:"Personnaliser",apply:"Appliquer",checkingPermissions:"Vérification de la sécurité des permissions",failedCheckPermissions:"Échec de la vérification des permissions",permissionsCheckPassed:"Vérification des permissions réussie",recommendedRules:"Règles recommandées",editRecord:"Modifier {{entity}}",addNewRecord:"Ajouter un nouveau {{entity}}",test:"Test",production:"Production",filters:"Filtres",schemaEditor:"Éditeur de schéma",noRecordsFound:"Aucun enregistrement trouvé",getStartedAdding:"Commencez par ajouter votre premier enregistrement.",loadingEntity:"Chargement de {{entity}}..."},n4={production:"Production",test:"Test"},i4={back:"Retour",trashTitle:"{{entity}} : Corbeille",test:"(Test)",production:"(Production)",trashDescription:`Afficher, restaurer ou supprimer définitivement des éléments.
Les éléments sont définitivement supprimés après 30 jours.`,permanentlyDelete:"Supprimer définitivement l'enregistrement",permanentlyDeleteConfirm:"Êtes-vous sûr de vouloir supprimer définitivement cet enregistrement ? Cette action est irréversible.",deletePermanently:"Supprimer définitivement",restoreSelected:"Restaurer les enregistrements sélectionnés",restoreSelectedConfirm:"Êtes-vous sûr de vouloir restaurer {{count}} enregistrement(s) sélectionné(s) ?",restore:"Restaurer",restoreAll:"Restaurer tous les enregistrements",restoreAllConfirm:"Êtes-vous sûr de vouloir restaurer tous les enregistrements de la corbeille ?",restoreAllBtn:"Tout restaurer",deletedDate:"Date de suppression",actions:"Actions",failedToLoad:"Échec du chargement des enregistrements supprimés",tryAgain:"Réessayer",loadingDeleted:"Chargement des enregistrements supprimés...",noDeletedRecords:"Aucun enregistrement supprimé trouvé",restoreCount:"Restaurer {{count}} sélectionné(s)",restoring:"Restauration..."},r4={data:a4,toolbar:n4,trash:i4},o4=JSON.parse(`{"title":"Domaines","subtitle":"Achetez, connectez et gérez vos domaines.","learnMore":"En savoir plus","expired":"Expiré il y a {{days}} jours","expiresIn":"Expire dans {{days}} jours","lastChecked":"Dernière vérification : {{time}}","domainLinked":"Domaine lié","domainLinkedMsg":"Le domaine a été lié à votre projet","errorLinkingDomain":"Erreur lors de la liaison du domaine","linking":"Liaison...","linkDomain":"Lier le domaine","checkStatus":"Vérifier le statut","checking":"Vérification...","verifyDomain":"Vérifier","verifying":"Vérification...","unlinkDomain":"Délier le domaine","unlinking":"Déliaison...","unlinked":"Délié","domainActive":"Domaine actif","waitingDns":"En attente de la propagation DNS","verified":"Vérifié","error":"Erreur","pending":"En attente","domainUnlinked":"Domaine délié","domainUnlinkedMsg":"Le domaine a été délié de votre projet","errorUnlinkingDomain":"Erreur lors de la déliaison du domaine","domainDeleted":"Domaine supprimé","errorDeletingDomain":"Erreur lors de la suppression du domaine","errorCheckingStatus":"Erreur lors de la vérification du statut","verificationInitiated":"Vérification lancée","checkBackMinutes":"Veuillez revenir vérifier dans quelques minutes","errorVerifyingDomain":"Erreur lors de la vérification du domaine","deleteDomain":"Supprimer le domaine","deleteConfirm":"Êtes-vous sûr de vouloir supprimer ?","deleting":"Suppression...","unlinkDialogDescription":"Ce domaine a été acheté via Base44.\\n\\nIl restera listé parmi vos domaines mais ne sera plus connecté à votre projet.","wantToUseDomain":"Vous souhaitez utiliser votre domaine ?","customDomainsAvailable":"Les domaines personnalisés sont disponibles sur le plan Builder et supérieur.<br/>Mettez à niveau pour connecter votre domaine à cette application.","viewPlans":"Voir les plans","getNewDomain":"Obtenir un nouveau domaine","getNewDomainDescription":"Donnez un aspect professionnel à votre application avec un domaine unique.","suggestedForApp":"Suggéré pour votre application : <bold>{{domain}}</bold>","suggestedForApp_prefix":"Suggéré pour votre application :","buyNewDomain":"Acheter un nouveau domaine","buyAnother":"Acheter un autre","buyThisDomain":"Acheter ce domaine","orConnectExisting":"Ou connectez un domaine existant que vous possédez déjà ","connectExistingDomain":"Connecter un domaine existant","getYourCustomDomain":"Obtenez votre domaine personnalisé","upgradeDescription":"Les domaines personnalisés sont disponibles sur le plan Builder et supérieur.","upgradeYourPlan":"Mettez à niveau votre plan","processing":"Traitement...","loading":"Chargement...","domainLimitReached":"Limite de domaines atteinte","domainLimitMsg":"Vous avez atteint le maximum de {{max}} domaines pour cette application ({{current}}/{{max}}).\\nVeuillez en supprimer avant d'en ajouter de nouveaux.","noCustomDomainYet":"Vous n'avez pas encore connecté de domaine personnalisé","connectDescription":"Connectez votre application Base44 à votre propre domaine pour mettre votre marque en avant et rendre votre application facile à trouver et à partager.","buyDomain":"Acheter un domaine","neverExpires":"N'expire jamais","editUrl":"Modifier l'URL","domainPurchased":"Domaine acheté !","domainPurchasedMsg":"Votre domaine {{domain}} a été acheté avec succès. En attente de son apparition dans vos domaines...","domainPurchaseFailed":"Échec de l'achat du domaine","purchaseFailedMsg":"Échec de l'achat pour {{domain}}.","domainLimitReachedToast":"Limite de domaines atteinte","domainLimitToastMsg":"Vous ne pouvez avoir que {{max}} domaines par application. Veuillez d'abord en supprimer.","domainAddedSuccessfully":"Domaine ajouté avec succès.","verifyToComplete":"Veuillez vérifier votre domaine pour terminer la configuration.","failedToConnect":"Échec de la connexion de votre domaine","connectYourDomain":"Connecter","builtInDomain":"URL intégrée","customDomains":"Domaines personnalisés","adminCanAdd":"Admin : peut ajouter n'importe quel domaine","domainDisabled":"Domaine désactivé","domainEnabled":"Domaine activé","domainDisabledMsg":"Le domaine a été désactivé et ne servira plus de trafic.","domainEnabledMsg":"Le domaine a été réactivé et recommencera à servir le trafic.","errorTogglingDomain":"Erreur lors du changement d'état du domaine","disabledBadge":"Désactivé","enableDomain":"Activer","disableDomain":"Désactiver","enableDomainTitle":"Activer le domaine (admin)","disableDomainTitle":"Désactiver le domaine (admin)","errorFetchingDomains":"Erreur lors de la récupération des domaines","cancel":"Annuler","cannotPurchase":"Impossible d'acheter le domaine","domainPurchaseDisabled":"L'achat de domaines est actuellement désactivé","entriNotReady":"Entri n'est pas encore prêt. Veuillez réessayer dans un moment.","errorPurchasingDomain":"Erreur lors de l'achat du domaine","loadingEntri":"Chargement d'Entri...","addNewDomain":"Ajouter un nouveau domaine","enterDomainFormat":"Entrez votre nom de domaine ci-dessous. Assurez-vous qu'il respecte le format : app.example.com","enterDomainPlaceholder":"Entrez le domaine (ex. : app.example.com)","invalidDomain":"Cela ne ressemble pas à un domaine valide.\\nEntrez un domaine valide, ex. : example.com ou app.example.com.","domainAlreadyConnected":"Ce domaine est déjà connecté à votre application.","configureDnsAtRegister":"Configurer le DNS chez le registraire","addDomain":"Ajouter le domaine","adding":"Ajout...","domainConnectionNeeded":"Connexion du domaine nécessaire","retryFromEmailSettings":"Veuillez réessayer depuis les paramètres de domaine e-mail.","emailDomainSubmitted":"Domaine e-mail soumis.","addDnsRecords":"Veuillez ajouter les enregistrements DNS à votre fournisseur de domaine.","verificationMayTake48h":"La vérification peut prendre jusqu'à 48 heures.","senderDetailsUpdated":"Détails de l'expéditeur mis à jour.","editSenderDetails":"Modifier les détails de l'expéditeur","setSenderDetails":"Définir vos détails d'expéditeur","saveChanges":"Enregistrer les modifications","connectDomain":"Connecter le domaine","saving":"Enregistrement...","connecting":"Connexion...","usersWillGetEmails":"Vos utilisateurs recevront des e-mails avec ces détails d'expéditeur.","senderName":"Nom de l'expéditeur","customAddress":"Adresse personnalisée","noReply":"no-reply","noReplyEmailAddress":"no-reply@base44-apps.com","domain":"Domaine","copyToClipboard":"Copier dans le presse-papiers","addCnameRecord":"Ajouter un enregistrement CNAME : ","wwwToDomain":"www → base44.onrender.com","addAnameRecord":"Ajouter un enregistrement ANAME/ALIAS : ","emptyOrAtDomain":"vide ou @ → base44.onrender.com","ifNoAnameSupport":"Si votre fournisseur DNS ne prend pas en charge ANAME/ALIAS, utilisez un enregistrement A :","aRecordIp":"@ → 216.24.57.1","removeAaaaRecords":"Supprimez tous les enregistrements AAAA de votre domaine lors de la configuration DNS. Les enregistrements AAAA correspondent à une adresse IPv6, et Base44 utilise IPv4. Ces enregistrements peuvent provoquer un comportement inattendu pour votre domaine personnalisé.","dnsChangesNote":"Veuillez noter qu'après l'ajout des enregistrements DNS, les changements peuvent mettre du temps à se propager sur Internet. Pendant ce temps, le domaine peut ne pas fonctionner correctement.","addDnsRecordsFor":"1. Ajoutez ces enregistrements DNS à votre fournisseur de domaine pour ","type":"Type","nameColumn":"Nom","hostColumn":"Hôte","tabAnameAlias":"ANAME/ALIAS","tabARecord":"Enregistrement A","addRecordsStepIntro":"Ajoutez ces enregistrements dans le tableau de bord de votre fournisseur pour terminer la configuration :","removeAaaaShort":"Supprimez les enregistrements AAAA (IPv6), car ils peuvent bloquer les connexions.","customDomainStep2Verify":"Une fois tous les enregistrements mis à jour dans le tableau de bord de votre fournisseur, cliquez sur « <bold>Vérifier le domaine</bold> ». La propagation des changements DNS peut prendre jusqu’à 48 à 78 heures.","closeModal":"Fermer","verifyDomainButton":"Vérifier le domaine","dnsTargetFallback":"base44.onrender.com","value":"Valeur","onceConfiguredVerify":"2. Une fois configuré, cliquez sur « <bold>Vérifier</bold> » sur la carte du domaine e-mail pour vérifier la configuration. Les changements DNS peuvent prendre jusqu'à 48-78 heures pour se propager.","emailDnsChangesNote":"Veuillez noter qu'après l'ajout des enregistrements DNS, les changements peuvent prendre jusqu'à 48 heures pour se propager. Pendant ce temps, les e-mails seront envoyés depuis l'adresse e-mail actuelle.","configureDnsForEmail":"Configurer le DNS pour le domaine e-mail","connectDomainDns":"Connectez votre domaine via votre fournisseur DNS","followInstructions":"Suivez les instructions ci-dessous pour configurer les enregistrements DNS.","addRecordsInProvider":"Ajoutez ces enregistrements dans le tableau de bord de votre fournisseur pour terminer la configuration.","done":"Terminé","needHelp":"Besoin d'aide ? Créez un ticket sur ","supportSystem":"système de support","urlUpdated":"URL mise à jour","customUrlRemoved":"URL personnalisée supprimée. Votre application est maintenant disponible à {{url}}","appAvailableAt":"Votre application est maintenant disponible à {{url}}","urlAlreadyTaken":"Cette URL est déjà prise. Essayez une des suggestions ci-dessous ou saisissez une autre URL.","urlAlreadyTakenNoSuggestions":"Cette URL est déjà prise. Veuillez essayer une autre URL.","suggestedAlternatives":"Alternatives disponibles :","urlReserved":"Cette URL est réservée. Veuillez en essayer une autre.","urlInvalid":"Cette URL est invalide. Veuillez en essayer une autre.","slugInvalidClient":"Cette URL est invalide. Utilisez uniquement des lettres minuscules, des chiffres et des tirets.","slugResetToDefault":"Slug réinitialisé par défaut","errorResettingSlug":"Erreur lors de la réinitialisation du slug","failedResetSlug":"Échec de la réinitialisation du slug par défaut","editUrlTitle":"Modifier l'URL","builtInDomainLabel":"URL intégrée Base44","resetToDefault":"Réinitialiser par défaut","urlEditingRequiresPlan":"La modification de l'URL nécessite un plan starter. ","upgradeToPremium":"Passer au plan Premium","changing":"Modification...","change":"Modifier","emailDomain":"Domaine e-mail","sendingFromDefault":"L'envoi depuis le domaine par défaut coûte 1 crédit d'intégration par e-mail. L'utilisation d'un domaine personnalisé coûte 2 crédits d'intégration.","useCustomDomain":"Utilisez votre domaine personnalisé","sendingFrom":"Nom de l'expéditeur : {{name}}","connectDomainForCustom":"Connectez un domaine pour utiliser une adresse d'expéditeur personnalisée.","buyADomain":"Acheter un domaine","dnsConfiguration":"Configuration DNS","pleaseWaitTryAgain":"Veuillez patienter un moment et réessayer.","dnsConfigFailed":"Échec de la configuration DNS","dnsPleaseTryLater":"Veuillez réessayer plus tard.","verificationFailed":"Échec de la vérification","dnsNotVerified":"Les enregistrements DNS ne sont pas encore vérifiés. Veuillez vérifier votre configuration DNS et réessayer.","domainVerificationFailed":"Échec de la vérification du domaine","couldntVerifyDns":"Nous n'avons pas pu vérifier vos enregistrements DNS. Veuillez les vérifier et réessayer.","completeSetup":"Terminer la configuration","opening":"Ouverture...","cancelling":"Annulation...","connectionFailed":"Échec de la connexion","retry":"Réessayer","retrying":"Nouvelle tentative...","couldntCompleteDns":"Impossible de terminer la configuration DNS. Veuillez réessayer.","couldntConnectEmail":"Impossible de connecter le domaine au fournisseur d'e-mail. Veuillez réessayer.","pendingVerification":"Vérification en attente","emailBeingVerified":"Votre adresse e-mail est en cours de vérification.","makeSureDnsCorrect":"Assurez-vous que les enregistrements DNS ont été correctement ajoutés à votre fournisseur de domaine.","verify":"Vérifier","notConfigured":"Non configuré","active":"Actif","editSenderDetailsAction":"Modifier les détails de l'expéditeur","detachCustomDomain":"Détacher le domaine personnalisé","suspended":"Suspendu","disabled":"Désactivé","blocked":"Bloqué","propagationBlocked":"Propagation bloquée","propagationBlockedTooltip":"La propagation DNS peut prendre du temps. Comparez vos enregistrements DNS avec nos instructions si le problème persiste.","pendingConnection":"Connexion en attente","completeSetupToSend":"Terminez la configuration pour commencer à envoyer des e-mails depuis votre domaine. Les e-mails sont actuellement envoyés depuis ","emailCurrentlySentFrom":"Votre adresse e-mail est en cours de vérification. Les e-mails sont actuellement envoyés depuis ","dnsNotVerifiedYet":"Les enregistrements DNS n'ont pas encore été vérifiés. Assurez-vous qu'ils sont correctement configurés, puis cliquez sur « Vérifier ».","couldntConnectMakeSure":"Impossible de connecter le domaine au fournisseur d'e-mail. Assurez-vous que les enregistrements DNS ont été correctement ajoutés à votre fournisseur de domaine et réessayez.","base44Domain":"Domaine Base44","maxDomainsReached":"Maximum de {{max}} domaines atteint pour cette application","viewDnsRecords":"Voir les enregistrements DNS","upgradeBannerText":"Les domaines personnalisés nécessitent un plan Builder ou supérieur. Mettez à niveau pour les activer.","upgradeToUseDomain":"Mettez à niveau votre plan pour utiliser ce domaine.","emailDomainPurchasedOnly":"La configuration du domaine e-mail n'est actuellement disponible que pour les domaines achetés via Base44.","save":"Enregistrer","urlHint":"Utilisez uniquement des lettres minuscules, des chiffres et des tirets","copyUrl":"Copier l'URL","builtInUrlTooltip":"Votre application sera toujours disponible à cette URL.","builderPlanRequired":"Cette fonctionnalité est disponible sur notre plan Builder et supérieur.","somethingWentWrong":"Une erreur s'est produite","failedToGetPurchaseConfig":"Échec de la récupération de la configuration d'achat","errorEnablingEmail":"Erreur lors de l'activation du domaine e-mail","failedToEnableEmail":"Impossible d'activer le domaine e-mail","errorUpdatingSenderDetails":"Erreur lors de la mise à jour des détails de l'expéditeur","failedToUpdateSenderDetails":"Impossible de mettre à jour les détails de l'expéditeur","errorReplacingDomain":"Erreur lors du remplacement du domaine","failedToReplaceDomain":"Impossible de remplacer le domaine","failedToAddDomain":"Impossible d'ajouter le domaine","processingPurchase":"Traitement de l'achat...","subscriptionRequired":"Abonnement requis"}`),s4={domains:o4},l4={title:"Explorateur de journaux",subtitle:"Surveillez les journaux système de votre application.",refresh:"Actualiser",loadingLogs:"Chargement des journaux...",pleaseWait:"Veuillez patienter pendant que nous récupérons vos journaux",failedToLoad:"Échec du chargement des journaux",errorFetching:"Une erreur s'est produite lors de la récupération des journaux. Veuillez réessayer.",noLogsMatchFilters:"Aucun journal ne correspond à vos filtres",tryAdjusting:"Essayez d'ajuster vos filtres",noLogsFound:"Aucun journal trouvé",logsWillAppear:"Les journaux apparaîtront ici lorsque de l'activité se produira",tryAgain:"Réessayer",resetFilters:"Réinitialiser les filtres",details:"Détails",outputs:"Sorties",errorTab:"Erreur",noAdditionalDetails:"Aucun détail supplémentaire disponible.",clearFilters:"Effacer les filtres",filterByEmail:"Filtrer par e-mail...",errorsOnly:"Erreurs uniquement",allEvents:"Tous les événements",typeColumn:"Type",userColumn:"Utilisateur",timestamp:"Horodatage"},c4={title:"Analytique",publishToCollect:"Publiez votre application pour commencer à collecter des données."},d4={title:"Documentation API",subtitle:"Référence complète de l'API de votre application. Utilisez la spécification OpenAPI avec n'importe quel client API ou outil de documentation.",downloadSpec:"Télécharger la spécification OpenAPI",copyForLLM:"Copier pour IA",copyForLLMTooltip:"Copier la documentation Markdown adaptée à l'IA dans le presse-papiers",copied:"Copié !",codeExamplesIn:"Exemples de code en :",authTitle:"Authentification",authDescription:"Toutes les requêtes API nécessitent un en-tête api_key. Vous pouvez trouver votre clé API dans votre profil utilisateur, ou la récupérer programmatiquement via User.me() dans le SDK de l'application.",sdkAuthDescription:"Installez le SDK Base44 et initialisez le client avec l'ID de votre application. Le SDK gère l'authentification et fournit des méthodes typées pour toutes les opérations d'entités et les fonctions backend.",entitiesTitle:"Endpoints des Entités",schema:"Schéma",endpoints:"Endpoints",copyAll:"Tout copier",copyEntity:"Copier l'entité",functionsTitle:"Fonctions Backend",functionsDescription:"Invoquez vos fonctions backend déployées via HTTP. Chaque fonction accepte n'importe quelle charge utile JSON et retourne la réponse de la fonction.",agentTitle:"Agent d'App",agentDescription:"Interagissez avec l'agent IA de votre application via des conversations. Créez une conversation, envoyez des messages et recevez les réponses de l'agent.",copy:"Copier",parameters:"Paramètres",loading:"Chargement de la documentation de l'API...",error:"Impossible de charger la documentation de l'API. Veuillez réessayer."},u4={logs:l4,analytics:c4,api:d4},p4={error:"Erreur",appStillLoading:"L'application est encore en cours de chargement... nom non mis à jour",appNameEmpty:"Le nom de l'application ne peut pas être vide",removedFromFavorites:"Retiré des favoris",addedToFavorites:"Ajouté aux favoris",removedDescription:"Application retirée de votre liste de favoris",addedDescription:"Application ajoutée à votre liste de favoris",descriptionUpdated:"Description mise à jour",descriptionUpdatedMsg:"La description de votre application a été mise à jour avec succès",failedUpdateDescription:"Échec de la mise à jour de la description de l'application",openApp:"Ouvrir l'application",shareApp:"Partager l'application",winFreeCredits:"gagnez des crédits gratuits !",appVisibility:"Visibilité de l'application",controlAccess:"Contrôlez qui peut accéder à votre application",inviteUsers:"Inviter des utilisateurs",growUserBase:"Développez votre base d'utilisateurs en invitant d'autres personnes",copyLink:"Copier le lien",copied:"Copié !",sendInvites:"Envoyer les invitations",paymentsViaStripe:"Paiements via Stripe",pendingSetup:"Configuration en attente",completeSetupGuide:"Terminez le guide de configuration pour accepter les paiements réels",live:"En ligne",testModeMessage:"Vous êtes toujours en mode test. Terminez la configuration pour commencer à recevoir des paiements.",readyForPayments:"Votre application est prête à accepter les paiements via Stripe.",continueSetup:"Continuer la configuration",payments:"Paiements",poweredByWix:"Propulsé par Wix",manage:"Gérer",openingWixPayments:"Ouverture de Wix Payments...",wixPaymentsErrors:{noUrl:"Impossible d'obtenir l'URL de Wix Payments. Veuillez réessayer.",fetchFailed:"Impossible d'ouvrir Wix Payments. Veuillez réessayer.",invalidRedirect:"Impossible d'ouvrir Wix Payments. Veuillez réessayer."},disconnected:"Déconnecté",wixPaymentsDashboardError:"Échec de l'ouverture du tableau de bord Wix Payments",platformBadge:"Badge de la plateforme",badgeVisible:"Le badge « Modifier avec Base44 » est actuellement visible sur votre application.",hideBadge:"Masquer le badge",editAppNameAccessibilityLabel:"Modifier le titre",editAppDescription:"Modifier la description de l'application",descriptionPrompt:"Fournissez une brève description de l'objectif et des fonctionnalités de votre application.",describeYourApp:"Décrivez votre application...",cancel:"Annuler",save:"Enregistrer",created:"Créé {{time}}"},m4={overview:p4},g4={title:"Sécurité de l'application",subtitle:"Configurez les politiques de sécurité au niveau des lignes pour contrôler l'accès aux données de votre application",scanIssues:"Analyser les problèmes",scanTime:"L'analyse prend généralement quelques minutes",scanning:"Analyse en cours",startSecurityCheck:"Lancer la vérification de sécurité",scanResults:"Résultats de l'analyse",rlsRecommendations:"Recommandations RLS",rlsRecommendationsFound:"{{count}} recommandation(s) RLS trouvée(s),",viewRecommendations:"Voir les recommandations",noRlsRecommendations:"Aucune recommandation RLS trouvée",secrets:"Secrets",exposedSecretsFound:"{{count}} secrets exposés trouvés",noExposedSecrets:"Aucun secret exposé trouvé",backendFunctions:"Fonctions backend",unauthenticatedFunctions:"{{count}} fonctions backend non authentifiées trouvées",noUnauthenticatedFunctions:"Aucune fonction backend non authentifiée trouvée",dataEntities:"Entités de données",entitiesCount:"{{count}} entités",scanComplete:"Analyse de sécurité terminée",reviewFindings:"Examinez les résultats ci-dessous.",scanFailed:"Échec de l'analyse de sécurité",ruleSaved:"Règle enregistrée pour {{entity}}",ruleSavedMsg:"La règle recommandée a été enregistrée.",failedToSaveRule:"Échec de l'enregistrement de la règle",createAccess:"Accès en création",readAccess:"Accès en lecture",updateAccess:"Accès en modification",deleteAccess:"Accès en suppression",removeAllRules:"Supprimer toutes les règles de sécurité",removeAllRulesConfirm:"Cela supprimera toutes les règles de sécurité pour cette entité, permettant à tous les utilisateurs d'accéder à tous les enregistrements. Voulez-vous continuer ?",removeAllRulesBtn:"Supprimer toutes les règles",securityRules:"Règles de sécurité : {{entity}}",securityRulesTitle:"Règles de sécurité",securityRulesDesc:"Créez des règles pour contrôler qui peut lire et écrire des enregistrements. Plusieurs règles sont combinées avec une logique OU.",publicAccess:"Accès public",publicAccessDesc:"Actuellement, tous les utilisateurs peuvent accéder à tous les enregistrements de cette entité. Il n'y a aucune restriction d'accès.",createAccessRules:"Créer des règles d'accès",create:"Créer",read:"Lire",update:"Mettre à jour",deleteAction:"Supprimer",crudRules:"Règles {{crud}}",addRule:"Ajouter une règle",generatedRules:"Règles {{crud}} générées (JSON)",saveSecurityRules:"Enregistrer les règles de sécurité",crudAccessRules:"Règles d'accès {{crud}}",configurePermissions:"Configurer les permissions pour chaque action",generatedJsonPreview:"JSON généré (Aperçu)",saveRules:"Enregistrer les règles",rlsRecommendation:"Recommandation RLS",dismiss:"Ignorer",applyFixes:"Appliquer les corrections",restricted:"Restreint",public:"Public",fullAccess:"Tous les utilisateurs ont un accès complet",createLabel:"Création :",readLabel:"Lecture :",updateLabel:"Modification :",deleteLabel:"Suppression :",noRestrictions:"Aucune restriction",allUsersCanAccess:"Tous les utilisateurs peuvent accéder aux enregistrements",creatorOnly:"Créateur uniquement",creatorOnlyDesc:"Les utilisateurs ne peuvent accéder qu'aux enregistrements qu'ils ont créés",entityUserComparison:"Comparaison entité-utilisateur",entityUserComparisonDesc:"Comparer un champ de cette entité avec une propriété de l'utilisateur",entityField:"Champ de l'entité",fieldInEntity:"Champ de l'entité à comparer",userField:"Champ de l'utilisateur",fieldFromUser:"Champ de l'utilisateur à comparer",userPropertyCheck:"Vérification de la propriété utilisateur",userPropertyCheckDesc:"Vérifier si une propriété de l'utilisateur correspond à une valeur spécifique",userProperty:"Propriété utilisateur",selectUserProperty:"Sélectionner la propriété utilisateur",userRole:"Rôle utilisateur",userEmail:"E-mail utilisateur",fullName:"Nom complet",requiredValue:"Valeur requise",selectRole:"Sélectionner le rôle",adminRole:"Administrateur",userRoleOption:"Utilisateur",noRestrictionsLabel:"Aucune restriction",creatorOnlyLabel:"Créateur uniquement",adminOnlyLabel:"Administrateur uniquement",filePath:"Fichier : {{path}}",severityCritical:"Critique",severityHigh:"Élevé",securityScanLabel:"Analyse de sécurité",upToDate:"À jour",upToDateTooltip:"Aucun changement affectant la sécurité n'a été effectué depuis la dernière vérification",outOfDate:"Obsolète",outOfDateTooltip:"Des changements affectant la sécurité ont été effectués depuis la dernière vérification. Veuillez lancer une nouvelle analyse de sécurité.",runSecurityScan:"Lancer l'analyse de sécurité",securityPageTitle:"Sécurité",securityPageSubtitle:"Gérez vos permissions et règles de sécurité. <a>En savoir plus <icon/></a>",issuesDetails:"Détails des problèmes",rlsIssuesTitle_one:"{{count}} Problème RLS",rlsIssuesTitle_other:"{{count}} Problèmes RLS",rlsIssuesSubtitle:"Activez la sécurité au niveau des lignes pour protéger vos données",exposedSecretsTitle_one:"{{count}} Secret Exposé",exposedSecretsTitle_other:"{{count}} Secrets Exposés",exposedSecretsSubtitle:"Sécurisez et renouvelez tout secret exposé pour protéger votre application et vos données.",unauthBackendTitle_one:"{{count}} Fonction Backend Non Authentifiée",unauthBackendTitle_other:"{{count}} Fonctions Backend Non Authentifiées",unauthBackendSubtitle:"Protégez les endpoints des tâches backend avec l'authentification.",noIssuesFound:"Aucun problème trouvé. La sécurité de votre app semble bonne, mais continuez à la vérifier régulièrement pour rester protégé.",recommendedRulesLabel:"Règles recommandées :",fix:"Corriger",fixAll:"Tout Corriger",missingRlsRules:"{{entity}} n'a pas de règles RLS",customizeSuggestion:"Personnaliser la suggestion",goToEntityPage:"Aller à la page de l'entité",ruleColumnHeader:"Règle",allUsers:"Tous les utilisateurs",fieldComparison:"Comparaison de Champ",noScanTitle:"Vérifiez la sécurité de votre application",noScanDescription:"Examinez votre configuration, identifiez les risques potentiels et apprenez comment renforcer la protection de votre application",checkSecurity:"Vérifier la sécurité",back:"Retour",cancel:"Annuler"},h4={title:"Secrets de l'application",secretDeleted:"Secret supprimé",errorDeletingSecret:"Erreur lors de la suppression du secret",secretUpdated:"Secret mis à jour",errorUpdatingSecret:"Erreur lors de la mise à jour du secret",newSecretValue:"Nouvelle valeur du secret",save:"Enregistrer",cancel:"Annuler",addSecret:"Ajouter un secret",addNewSecret:"Ajouter un nouveau secret",addNewSecretDescription:"Entrez le nom et la valeur de votre secret ci-dessous. Les secrets sont chiffrés et stockés de manière sécurisée.",secretName:"Nom du secret",secretNamePlaceholder:"Entrez le nom du secret (ex. : API_KEY)",secretNameNoSpaces:"Le nom du secret ne peut pas contenir d'espaces. Utilisez des underscores à la place (ex. : API_KEY).",secretValue:"Valeur du secret",secretValuePlaceholder:"Entrez la valeur du secret",adding:"Ajout...",aboutSecretsManagement:"À propos de la gestion des secrets",secretsDescription:"Les secrets sont des variables d'environnement contenant des informations sensibles comme les clés API, les jetons et les mots de passe. Ils sont chiffrés au repos et injectés de manière sécurisée dans votre application lors de l'exécution.",secretsBullet1:"Les secrets sont utilisés par vos fonctions backend pour accéder aux services externes",secretsBullet2:"Tous les secrets sont chiffrés et stockés de manière sécurisée",secretsBullet3:"Vous pouvez ajouter, mettre à jour ou supprimer des secrets selon les besoins de votre application",needHelp:"Besoin d'aide ?",supportSystem:"Ouvrez un ticket d'assistance",configuredSecrets:"Secrets configurés",noSecretsYet:"Aucun secret configuré pour le moment. Ajoutez votre premier secret pour commencer.",secretAddedSuccessfully:"Secret ajouté avec succès",errorCreatingSecret:"Erreur lors de la création du secret",errorFetchingSecrets:"Erreur lors de la récupération des secrets"},f4={security:g4,secrets:h4},v4={mainPage:"Page principale",mainPageDesc:"Définissez la page d'accueil par défaut de votre application",selectMainPage:"Sélectionner la page principale",appVisibility:"Visibilité de l'application",controlAccess:"Contrôlez qui peut accéder à votre application",platformBadge:"Badge de la plateforme",platformBadgeDesc:"Afficher ou masquer le badge « Modifier avec Base44 » sur votre application.",onlyForPaying:"Disponible uniquement pour les utilisateurs payants.",upgradeNow:"Mettre à niveau maintenant",visible:"Visible",hidden:"Masqué",hideEntityCreator:"Masquer le créateur d'entité",hideEntityCreatorDesc:"Masquer qui a créé chaque enregistrement dans les tables de données de votre application. Lorsque cette option est activée, le champ « créé par » ne sera pas affiché aux utilisateurs.",aiAgents:"Agents IA",aiAgentsDesc:"Intégrez des agents IA dans votre application grâce à l'infrastructure d'agents IA de Base44",aiAgentsEnabled:"Agents IA activés",aiAgentsEnabledDesc:"Votre application a maintenant accès à l'infrastructure d'agents IA de Base44. Vous pouvez créer des agents intelligents qui peuvent aider les utilisateurs avec diverses tâches, répondre aux questions et interagir avec les données de votre application. Utilisez le chat pour créer et configurer vos agents.",testData:"Données de test",testDataDesc:"Utilisez les données de test pour tester les modifications en toute sécurité sans affecter les données en production.",onlyForBuilder:"Disponible uniquement pour le plan Builder et supérieur.",testDataVersionNote:"Pour utiliser cette fonctionnalité, vous aurez besoin d'une version plus récente de votre application. Faites simplement un changement — envoyez un message à l'IA, modifiez du code ou utilisez l'éditeur visuel — et c'est parti.",cloneApp:"Cloner l'application",cloneAppDesc:"Créer un duplicata de cette application",githubConnectionIssue:"Problème de connexion GitHub. Veuillez reconnecter pour cloner cette application.",cantCloneOldInfra:`Vous ne pouvez pas cloner une application sur l'ancienne infrastructure.
Mettez à jour l'infrastructure pour cloner votre application.`,createCopy:"Créer une copie",backendFunctions:"Fonctions backend",backendFunctionsDesc:"Activer les fonctionnalités côté serveur • Recommandé pour les développeurs",activating:"Activation...",activated:"Activé",activate:"Activer",upgradePlan:"Mettre à niveau le plan",dangerZone:"Zone de danger",dangerZoneDesc:"Actions irréversibles qui affectent votre application",deleteApp:"Supprimer l'application",deleteAppDesc:"Supprimer définitivement cette application et toutes ses données",adminControls:"Contrôles administrateur",adminControlsDesc:"Gérer la disponibilité de l'application",unblockApp:"Débloquer l'application",blockApp:"Bloquer l'application",appLogo:"Logo de l'application",editLogo:"Modifier le logo",appDescription:"Description de l'application",saveDescription:"Enregistrer la description",describeYourApp:"Décrivez votre application..."},b4={editAppLogo:"Modifier le logo de l'application",uploadLogo:"Télécharger le logo",generateLogo:"Générer le logo",dragAndDrop:"Glissez-déposez ou cliquez pour télécharger",clickToUpload:"Cliquez pour télécharger ou glissez-déposez",pngJpgLimit:"PNG, JPG jusqu'à 5 Mo",upload:"Télécharger",whatShouldLook:"À quoi devrait ressembler votre logo ?",generating:"Génération...",generateNew:"Générer un nouveau logo",cancel:"Annuler",save:"Enregistrer",logoPrompt:"Prompt de génération du logo",describeLogo:"Décrivez comment vous voulez que votre logo apparaisse",uploading:"Téléchargement...",selectImage:"Sélectionner une image"},y4={removeListingConfirm:"Êtes-vous sûr de vouloir supprimer cette annonce ? Cette action la retirera des modèles d'applications.",listingRemoved:"Annonce supprimée du catalogue avec succès",appTemplates:"Modèles d'applications",listedFor:"Listé à {{price}} $ • {{sales}} ventes • {{status}}",manageTemplate:"Gérer votre annonce de modèle",shareTemplate:"Partagez votre modèle avec la communauté pour que d'autres puissent le découvrir et l'utiliser.",manageListing:"Gérer l'annonce",publishToTemplates:"Publier dans les modèles d'applications",seeOnTemplates:"Voir dans les modèles d'applications",removingListing:"Suppression...",removeFromTemplates:"Retirer des modèles d'applications",salesRevenue:"{{sales}} ventes • {{revenue}} $ de revenus",publishedToTemplates:"Publié dans les modèles d'applications",rejectedReason:"Motif du rejet : {{reason}}"},k4={public:"Public",private:"Privé",workspace:"Espace de travail",requireLogin:"Connexion requise pour accéder"},w4={notAvailableOnMobile:"La gestion de {{feature}} n'est pas disponible sur mobile",loginFromDesktop:"Veuillez vous connecter depuis un navigateur de bureau",okay:"D'accord",domains:"domaines",security:"sécurité",code:"code",apiFeature:"API",templates:"modèles"},A4={settings:v4,logo:b4,catalog:y4,visibility:k4,desktop:w4},S4={title:"Utilisateurs",subtitle:"Gérer les utilisateurs de l'application et leurs rôles",inviteUser:"Inviter un utilisateur",schema:"Schéma",searchByEmailOrName:"Rechercher par e-mail ou nom",pendingRequests:"Demandes en attente",userSchemaEditor:"Éditeur de schéma utilisateur",editUser:"Modifier l'utilisateur",loadingUsers:"Chargement des utilisateurs...",noUsersFound:"Aucun utilisateur trouvé",noPendingRequests:"Aucune demande en attente",noPendingRequestsDesc:"Il n'y a actuellement aucune demande d'accès en attente d'approbation",inviteYourFirstUser:"Invitez votre premier utilisateur",getStartedByInviting:"Commencez par inviter votre premier utilisateur dans l'application.",tryAdjustingSearch:"Essayez d'ajuster votre recherche ou vos filtres pour trouver ce que vous cherchez.",moreActions:"Plus d'actions",resendInvitation:"Renvoyer l'invitation",cancelInvite:"Annuler l'invitation",editUserAction:"Modifier l'utilisateur",changeOwner:"Changer le propriétaire",makeAppOwner:"Désigner comme propriétaire de l'application",resendOwnershipRequest:"Renvoyer la demande de propriété",cancelOwnershipRequest:"Annuler la demande de propriété",changeRole:"Changer le rôle",selectNewRole:"Sélectionnez un nouveau rôle pour {{name}} :",back:"Retour",manageInvitation:"Gérer l'invitation",approve:"Approuver",reject:"Rejeter",unknown:"Inconnu",admin:"Administrateur",user:"Utilisateur",allRoles:"tous les rôles",name:"Nom",owner:"Propriétaire",pendingOwnership:"Propriété en attente",role:"Rôle",email:"E-mail",hasntLoggedIn:"{{role}} ne s'est pas encore connecté à l'application.",userRemovedSuccess:"Utilisateur supprimé avec succès",failedCancelInvitation:"Échec de l'annulation de l'invitation",userLoggedInSinceRefresh:"Cet utilisateur s'est connecté depuis votre dernier rafraîchissement. Rafraîchissez la page pour voir son statut mis à jour avant de réessayer.",failedRemoveUser:"Échec de la suppression de l'utilisateur",subscriptionRequired:"Abonnement requis",onlyPayingCanAdmin:"Seuls les utilisateurs payants peuvent attribuer le rôle d'administrateur.",upgradeSubscription:"Mettez à niveau votre abonnement",toContinue:"pour continuer.",userUpdatedSuccess:"Utilisateur mis à jour avec succès",userApprovedSuccess:"Utilisateur approuvé avec succès",failedApproveRequest:"Échec de l'approbation de la demande d'accès",invitationRejected:"Invitation rejetée",failedDenyRequest:"Échec du refus de la demande d'accès",invitationResentSuccess:"Invitation renvoyée avec succès",failedResendInvitation:"Échec du renvoi de l'invitation",emailSent:"E-mail envoyé",ownershipTransferResent:"L'invitation de transfert de propriété a été renvoyée.",transferCancelled:"Transfert annulé",ownershipTransferCancelled:"Le transfert de propriété a été annulé.",failedCancelTransfer:"Échec de l'annulation du transfert",cancelInviteAction:"Annuler l'invitation",removeUser:"Supprimer l'utilisateur",failedApproveUser:"Échec de l'approbation de l'utilisateur",success:"Succès",error:"Erreur",save:"Enregistrer",deleteConfirm:"Êtes-vous sûr de vouloir supprimer cet enregistrement ?",deleteFailed:"Échec de la suppression"},C4={users:S4},D4="Contenu social",T4="Obtiens un plan de promotion social et du contenu prêt à publier.",E4="Chargement du contenu social",P4={title:"Une erreur est survenue",description:"Une erreur inattendue s'est produite. Rafraîchis la page.",tryAgain:"Réessayer"},_4={emptyTitle:"Fais la promotion de ton app sur les réseaux sociaux",emptyDescription:"Nous analyserons ton app et créerons des publications prêtes à être partagées.",getStarted:"Créer mon plan de contenu",learnMore:"En savoir plus",emptyCheck1:"Définis ce que tu veux accomplir",emptyCheck2:"Choisis les meilleurs canaux pour ton app",emptyCheck3:"Obtiens des idées de posts personnalisées prêtes à partager",analyzingBase:"Analyse de ton app",analyzingDescription:"Découverte de ton app : ce qu'elle fait, à qui elle s'adresse et comment la promouvoir.",combiningBase:"Création de ta stratégie de contenu",combiningDescription:"Nous façonnons ton message et sélectionnons les bons canaux pour ton lancement.",planStep1:"Application de ta stratégie",planStep2:"Adaptation du contenu pour chaque plateforme",planStep3:"Rédaction des textes de posts",planStep4:"Création des visuels pour tes posts",stepOf:"Étape {{current}} sur {{total}}"},x4={letsGo:"C'est parti",next:"Suivant",back:"Retour",creatingPlan:"Création de ton contenu...",creatingPlanBase:"Création de ton contenu",strategyReady:"Stratégie suggérée"},I4={emptyTitle:"Prêt à promouvoir ton app ?",emptyDescription:"Réponds aux questions pour personnaliser ton contenu.",generateNewPlan:"Générer un nouveau plan",downloadContent:"Télécharger le contenu",downloading:"Téléchargement...",startFresh:"Recommencer"},R4={copy:"Copier",copied:"Copié",copiedToClipboard:"Copié dans le presse-papiers",failedToCopy:"Échec de la copie",cancel:"Annuler",save:"Enregistrer",imageGenerationFailed:"La génération de l'image a échoué",retryImage:"Réessayer",download:"Télécharger l'image",expandImage:"Voir en taille réelle",close:"Fermer",regenerateImage:"Régénérer l'image",imageRefinePlaceholder:"Que souhaites-tu modifier ?",imageAlt:"Visuel de la publication",share:"Partager",editPostTitle:"Modifier la publication",descriptionLabel:"Description",imageLabel:"Image",improveWithAI:"Améliorer avec l'IA",refineInputPlaceholder:"Que souhaites-tu modifier ?",saveChanges:"Enregistrer les modifications"},z4={handle:"tonprofil",displayName:"Ton Nom"},M4={reviewTitle:"Vérifie ta stratégie suggérée",goalLabel:"Ton objectif",approachLabel:"Approche suggérée",strategyLabel:"La stratégie",showMore:"Voir plus",showLess:"Voir moins",platformsLabel:"Plateformes cibles",platformsDescription:"Nous avons présélectionné les meilleures plateformes pour ton business.",editSelection:"Modifier la sélection",selectPlatforms:"Choisis tes plateformes",maxPlatforms:"Jusqu'à 3 plateformes",toneLabel:"Adapter ton ton (optionnel)",toneDescription:"Colle le lien vers ton profil social et nous adapterons les posts à ton ton.",generatePosts:"Générer les posts"},N4={resetTitle:"Générer un nouveau plan ?",resetDescription:"On va générer un tout nouveau plan pour toi. Tes publications et modifications actuelles seront remplacées et ne pourront pas être récupérées.",cancel:"Annuler",resetConfirm:"Générer un nouveau plan",upgradeTitle:"Crédits d'intégration insuffisants",upgradeDescription:"Tu n'as pas assez de crédits d'intégration pour cette action. Améliore ton abonnement pour en obtenir plus.",upgradeAction:"Améliorer"},F4={sendFailed:"Une erreur est survenue",sendFailedDescription:"Impossible de contacter l'IA. Réessaie.",postUpdated:"Publication mise à jour",postUpdateFailed:"Échec de la mise à jour de la publication",postRefined:"Publication affinée",refineFailed:"Impossible d'affiner la publication",refineFailedDescription:"L'IA n'a pas pu appliquer les modifications. Réessaie.",imageGenerated:"Image générée !",imageGenerateFailed:"Impossible de générer l'image",imageGenerateFailedDescription:"Un problème est survenu lors de la génération. Réessaie.",planReset:"Contenu réinitialisé – prêt pour un nouveau départ",planResetFailed:"Échec de la réinitialisation",insufficientCredits:"Crédits d'intégration insuffisants",insufficientCreditsDescription:"Tes crédits d'intégration sont épuisés. Améliore ton abonnement pour en obtenir plus.",downloadPartial:"Impossible de tout télécharger",downloadPartialDescription:"Certaines images n'ont pas pu être téléchargées. Réessaie."},L4={pageTitle:D4,pageSubtitle:T4,loadingBase:E4,errorBoundary:P4,wizard:_4,steps:x4,toolbox:I4,post:R4,mock:z4,strategy:M4,dialog:N4,toast:F4},j4={overview:"Vue d'ensemble",users:"Utilisateurs",data:"Données",analytics:"Analytique",domains:"Domaines",integrations:"Intégrations",security:"Sécurité",code:"Code",agents:"Agents",automations:"Automatisations",logs:"Journaux",api:"API",settings:"Paramètres",appSettings:"Paramètres de l'application",authentication:"Authentification",appTemplate:"Modèle d'application",secrets:"Secrets",backToEditor:"Retour à l'éditeur",codeFiles:"Fichiers de code",search:"Rechercher...",clearSearch:"Effacer la recherche",virality:"Contenu social"},O4="Chargement des données de l'application...",B4="Corbeille : {{entityName}}",U4={issuesFound:"Problèmes détectés",inComponent:"Dans le composant {{componentName}} :",resolving:"Résolution...",resolveWithAI:"Résoudre avec l'IA",noCreditDeduction:"Cette action ne déduira pas de crédits de votre compte."},q4={loadingCheckpoint:"Chargement du code du point de contrôle...",errorFetchingFiles:"Erreur lors de la récupération des fichiers",backToPreview:"Retour à l'aperçu"},V4={letsBuild:"Construisons votre application",tellMeCreate:"Dites-moi ce que vous souhaitez créer via le chat",loadingApp:"Chargement de votre application",buildingPreview:"Construction de l'aperçu",previewPreparing:"L'aperçu de votre application est en cours de préparation.",mayTakeMoment:"Cela peut prendre un moment.",previewUnavailable:"Aperçu indisponible",previewCouldntLoad:"L'aperçu de cette version n'a pas pu être chargé.",retryBuild:"Réessayer la construction",buildingIdea:"Construction de votre idée",didYouKnow:"Le saviez-vous ?",packagePending:"Installation de package en attente",approvePackage:"Veuillez approuver l'installation du package npm dans le chat pour continuer",loadingPreview:"Chargement de l'aperçu…",refreshPreview:"Actualiser l'aperçu",capture:{verbDiscovering:"Découvrir",verbDesigning:"Concevoir",verbBuilding:"Construire",verbPolishing:"Peaufiner",verbUnveiling:"Dévoiler",verbStudying:"Étudier",verbExtracting:"Extraire",verbReimagining:"Réinventer",verbRefining:"Affiner",stageAnalyzingDesign:"Analyse du design",stageExtractingColorsAndFonts:"Extraction des couleurs et polices",stageBuildingPages:"Construction des pages",stageCreatingComponents:"Création des composants",stageRefiningDetails:"Affinage des détails",stageAlmostThere:"Presque terminé",stageStudyingDesignLanguage:"Étude du langage de design",stageExtractingColorsAndTypography:"Extraction des couleurs et typographie",stageCraftingYourPages:"Création de vos pages uniques",stageApplyingDesignInspiration:"Application de l'inspiration design",stageRefiningLookAndFeel:"Affinage de l'apparence",yourSite:"votre site",aSiteInspiredBy:"un site inspiré de <site>{{siteName}}</site>",progress:"Progression"},figma:{verbFetching:"Récupération en cours",verbExtracting:"Extraction en cours",verbProcessing:"Traitement en cours",verbTransforming:"Transformation en cours",verbBuilding:"Construction en cours",stageReadingDesign:"Lecture de votre design Figma",stageProcessingStructure:"Traitement de la structure du design",stageHandlingAssets:"Traitement des ressources et génération du code",stageApplyingAI:"Application de la transformation IA",stageCompiling:"Compilation et finalisation de votre app",yourFigmaDesign:"votre design Figma",defaultName:"Import Figma"}},$4={canvas:"Canvas",dashboard:"Tableau de bord",preview:"Aperçu",exitSplitScreen:"Quittez le mode écran partagé pour prévisualiser",versionHistory:"Historique des versions",moreOptions:"Plus d'options",filesUsedInPage:"Fichiers utilisés dans cette page",seeAllFiles:"Voir tous les fichiers",activityMonitor:"Moniteur d'activité",exportAsZip:"Exporter le projet en ZIP",helpCenter:"Centre d'aide",actAsUser:"Agir en tant qu'utilisateur",viewAppNewTab:"Prévisualiser la version actuelle",refreshPreview:"Actualiser l'aperçu",refresh:"Actualiser",switchToDesktop:"Passer à la vue bureau",switchToMobile:"Passer à la vue mobile",showChatPanel:"Afficher le panneau de chat",hideChatPanel:"Masquer le panneau de chat",turnOffTestData:"Désactiver les données de test",turnOnTestData:"Activer les données de test",shareApp:"Partager l'application",shareInviteUsers:"Partager et inviter des utilisateurs",moreActions:"Plus d'actions",inviteCollaborators:"Inviter des collaborateurs",viewOnly:"Lecture seule",viewOnlyAccess:"Vous avez un accès en lecture seule à cette application",upgradeInfraTooltip:"Votre application est prête pour une mise à niveau rapide<br/>vers la nouvelle infrastructure.",appOverview:"Vue d'ensemble de l'application",myApp:"Mon application",production:"Production",test:"Test",gitHub:"GitHub",gitHubConnection:"Connexion GitHub",collaborators:"Collaborateurs",collaboratorDisplayYou:"{{name}} (Vous)",collaboratorUnknown:"Inconnu",addCollaborator:"Ajouter un collaborateur",saving:"Enregistrement...",savedAgo:"Enregistré il y a {{time}}",unsavedChanges_one:"{{count}} modification non enregistrée",unsavedChanges_other:"{{count}} modifications non enregistrées",theme:"Thème",themeTitle:"Thème",themeDescription:"Ces couleurs et polices composent votre thème. Les modifications s'appliquent partout.",themeColors:"Couleurs",themeFonts:"Polices",noThemeColors:"Aucune couleur de thème trouvée",themeSaveChanges:"Enregistrer et Appliquer",themeCancel:"Annuler",colorPickerCustom:"Personnalisé",colorPickerPalette:"Palette",fontPickerSearch:"Rechercher des polices...",fontPickerBrandFonts:"Polices de marque",fontPickerAllFonts:"Toutes les polices",fontPickerNoResults:"Aucune police trouvée",fontPickerSelectFont:"Sélectionner une police"},W4={desktop:"Bureau",tablet:"Tablette",mobile:"Mobile",isAvailable:"est disponible",getDomain:"Obtenir un domaine",connectDomain:"Connecter un domaine personnalisé",undo:"Annuler",redo:"Rétablir",fullscreen:"Plein écran",breakpoints:"Points d'arrêt",splitView:"Vue partagée",exitSplitView:"Quitter la vue partagée",exitPreview:"Quitter l'aperçu"},G4={upgrade:"Mettre à niveau",upgradePlan:"Mettre à niveau le plan",percentOff:"{{percent}}% de réduction",limitedTimeOffer:"Offre de bienvenue limitée",getDiscountOff:"Obtenez {{discount}} de réduction sur les plans annuels sélectionnés"},H4={viewingVersionHistory:"Affichage de l'historique des versions",buildInProgress:"Construction en cours...",retryBuildToEnable:"Relancez la construction pour activer cette vue",viewApp:"Voir l'application",viewCode:"Voir le code",restoring:"Restauration...",restoreThisVersion:"Restaurer cette version",publishing:"Publication...",publishThisVersion:"Publier cette version",exit:"Quitter",back:"Retour",publish:"Publier",restore:"Restaurer",latest:"Dernière"},Y4={actAs:"Agir en tant que",actingAs:"Vous agissez en tant que",searchUser:"Rechercher un utilisateur spécifique",anonymousGuest:"Visiteur anonyme",you:"Vous",warningChanges:"Toute modification se reflétera dans les données de l'utilisateur.",carefulChanges:"- attention, les modifications ici affectent cet utilisateur",exitMode:"Quitter le mode",noUsersYet:"Vous n'avez pas encore d'utilisateurs",addOrInvite:"Ajoutez ou invitez des utilisateurs pour voir comment votre application fonctionne pour eux",invite:"Inviter",usersCount:"Utilisateurs ({{count}})",noMatchingUsers:"Aucun utilisateur correspondant trouvé",trySearching:"Essayez de rechercher par nom ou rôle"},K4={pressEnterNavigate:"Appuyez sur Entrée pour naviguer"},Z4={publishApp:"Publier l'application",publish:"Publier",publishing:"Publication...",disabledUntilUpdate:"La publication est désactivée jusqu'à ce que vous terminiez la mise à jour de l'infrastructure.",currentlyDisabled:"La publication est actuellement désactivée",codeNotGenerated:"La publication sera activée une fois votre application prête",visualEditsSaveWarning:"Certaines modifications visuelles n'ont pas pu être enregistrées avant la publication",republishApp:"Republier l'application",lastPublished:"Dernière publication {{time}}"},J4={whatToChange:"Que souhaitez-vous modifier ?",whatToDiscuss:"De quoi souhaitez-vous discuter ?",saveChangesBeforeTyping:"Enregistrez les modifications avant de taper",exitEditModeToContinue:"Quittez le mode Édition avant de taper",fetchingFromGitHub:"Récupération depuis GitHub...",viewOnlyAccess:"Vous avez un accès en lecture seule",zeroCreditsRemaining:"0 crédits restants",visualEdit:"Modifier",visualEditDisabledAgentRunning:"L'édition visuelle est indisponible pendant que l'agent est en cours d'exécution",edit:"Modifier",discuss:"Discuter",ask:"Modifier l'élément",editData:"Modifier les données",discussMode:"Mode discussion",discussModeDescription:"Discutez avec l'IA de n'importe quoi sans modifier le code. Utilise 0,3 crédits par requête.",thought:"Réflexion",thoughtWithDuration:"A réfléchi <duration>pendant {{duration}}</duration>",planningNextSteps:"Planification des prochaines étapes...",signUpToStartBuilding:"Inscrivez-vous pour commencer à construire...",suggestions:"Suggestions",latestMessages:"Derniers messages",aiModel:"Modèle IA",aiControls:"Contrôles IA",uploadFile:"Importer depuis l'ordinateur",uploadFileMobile:"Importer depuis l'appareil",addFromGoogleDrive:"Importer depuis Google Drive",connectorRequestFailed:"Échec de l'envoi de la demande de connecteur. Veuillez réessayer.",designingYourWebsite:"création de votre site web...",speechToText:"Reconnaissance vocale",processingAudio:"Traitement de l'audio...",clickToStopRecording:"Cliquer pour arrêter l'enregistrement"},Q4={dialogTitle:"Palette de commandes du constructeur",dialogDescription:"Recherchez des pages, des fichiers, des entités, des vues et des actions rapides dans le builder.",searchPlaceholder:"Rechercher des pages, des fichiers, des entités, des vues et des actions rapides...",emptyTitle:"Aucune commande correspondante",emptyDescription:"Essayez un nom de page, un chemin de fichier, un nom d'entité, une vue de l'éditeur ou une action rapide comme les données de test.",homeSubtitle:"Accueil",navigationSubtitle:"Tableau de bord",viewSubtitle:"Vue de l'éditeur",entityDataSubtitle:"Données",entityCodeSubtitle:"Code",integrationsSubtitle:"Intégrations",domainSubtitle:"Domaine personnalisé",collaboratorsSubtitle:"Collaborateurs",helpSubtitle:"Centre d'aide",publishSubtitle:"Déployer et partager",publishNowSubtitle:"Publier les dernières modifications",versionHistorySubtitle:"Historique des versions",securitySubtitle:"Sécurité",testDataSubtitle:"Passer aux données de test",productionDataSubtitle:"Passer aux données de production",backToWorkspace:"Retour à l'espace de travail",switchToPreview:"Basculer vers l'Aperçu",switchToDashboard:"Basculer vers le Tableau de bord",switchToCode:"Basculer vers le Code",switchToCanvas:"Basculer vers le Canvas",openEntityData:"Ouvrir les données de {{entityName}}",openEntityCode:"Ouvrir le code de {{entityName}}",addIntegration:"Ajouter une intégration",addDomain:"Ajouter un domaine",inviteCollaborator:"Inviter un collaborateur",getHelp:"Obtenir de l'aide",publishMyApp:"Publier mon application",publishNow:"Publier maintenant",versionHistory:"Voir l'historique des versions",startSecurityCheck:"Démarrer la vérification de sécurité",turnOnTestData:"Activer les données de test",turnOffTestData:"Désactiver les données de test",groups:{navigate:"Naviguer",views:"Vues",files:"Fichiers",entities:"Entités",actions:"Actions"}},X4="Vue inconnue",eV="Éditeur d'application",tV="Bêta",aV={title:"Inviter des collaborateurs",subtitle:"Donnez accès à d'autres personnes pour modifier cette application.",emailPlaceholder:"Entrez les e-mails, séparés par des virgules",removeIneligible:"Retirer les utilisateurs non éligibles",appCollaborators:"Collaborateurs de l'application",you:"(Vous)",owner:"Propriétaire",moreActions:"Plus d'actions",makeAppOwner:"Désigner comme propriétaire",removeCollaborator:"Retirer le collaborateur",resendOwnershipRequest:"Renvoyer la demande de propriété",getOwnershipLink:"Obtenir le lien de propriété",cancelOwnershipRequest:"Annuler la demande de propriété",ownershipTooltip:"Le nouveau propriétaire doit accepter le transfert via l'e-mail d'invitation. L'invitation expire dans 7 jours. Vous recevrez un e-mail lorsque le transfert sera terminé.",removeTitle:"Retirer ce collaborateur de votre application ?",removeDescription:"Le retrait de ce collaborateur révoquera immédiatement son accès à l'éditeur et l'empêchera d'apporter des modifications à l'application.",removeAccessOnly:"Retirer l'accès collaborateur uniquement",removeAccessOnlyDesc:"L'utilisateur apparaîtra toujours dans la liste des utilisateurs",removeEntirely:"Retirer entièrement de l'application",removeEntirelyDesc:"L'utilisateur sera également retiré de la liste des utilisateurs",cancel:"Annuler",enterEmail:"Veuillez entrer une adresse e-mail",invalidEmail:"E-mail invalide",invalidEmails:"Une ou plusieurs adresses e-mail ne sont pas valides, veuillez les vérifier et réessayer.",cannotInviteOwner:"Vous ne pouvez pas inviter le propriétaire de cette application",alreadyExists:"Le collaborateur existe déjà .",alreadyExist:"Les collaborateurs existent déjà .",invitationSent:"Invitation des collaborateurs envoyée avec succès",invitationsSent:"{{count}} invitations de collaborateurs envoyées avec succès",removedFromApp:"Collaborateur retiré de l'application",accessRemoved:"Accès du collaborateur retiré",ownershipResent:"Demande de propriété renvoyée avec succès",ownershipLinkCopied:"Lien de propriété copié dans le presse-papiers",ownershipCancelled:"Demande de propriété annulée",failedToSendInvitation:"Échec de l'envoi de l'invitation",failedToRemoveCollaborator:"Échec du retrait du collaborateur",failedToResendOwnership:"Échec du renvoi de la demande de propriété",failedToGetOwnershipLink:"Échec de l'obtention du lien de propriété",failedToCancelOwnership:"Échec de l'annulation de la demande de propriété",creditsWarning:"Tous les collaborateurs consomment des crédits de l'espace de travail.",notWorkspaceMember:"Non membre de l'espace de travail",notMemberDescription_one:"<bold>{{emails}}</bold> n'est pas membre de cet espace de travail.",notMemberDescription_other:"<bold>{{emails}}</bold> ne sont pas membres de cet espace de travail.",addAsGuest:"Ajouter en tant qu'invité",addAsGuestDescription:"L'utilisateur sera ajouté en tant qu'invité avec accès à cette application uniquement.",addToWorkspace:"Ajouter à l'espace de travail",addToWorkspaceDescription:"Accédez aux paramètres de l'espace de travail pour ajouter en tant que membre à part entière.",guestBadge:"Invité",emailListOverflow:"{{first}} et {{count}} autres",pendingInvitationWarning_one:"Cet utilisateur a déjà une invitation en attente en tant que membre de l'espace de travail. L'ajouter en tant qu'invité la remplacera.",pendingInvitationWarning_other:"{{count}} de ces utilisateurs ont déjà des invitations en attente en tant que membres de l'espace de travail. Les ajouter en tant qu'invités les remplacera."},nV={title:"Vos crédits d'intégration sont épuisés",description:"Cela peut empêcher les utilisateurs de votre application d'effectuer certaines actions.",upgradeLink:"Mettre à niveau le plan pour obtenir plus de crédits",dismiss:"Fermer la bannière"},iV={gathering:"Collecte en cours",gathered:"Collecté",connectorsInformation:"informations sur les connecteurs",write:"Écrire",writing:"Écriture",wrote:"Écrit",generatingImage:"Génération d'image",generatedImage:"Image générée",reading:"Lecture",read:"Lu",deleting:"Suppression",deleted:"Supprimé",editing:"Modification",edited:"Modifié",edit:"Modifier",creating:"Création",created:"Créé",updating:"Mise à jour",updated:"Mis à jour",update:"Mettre à jour",delete:"Supprimer",importing:"Importation",imported:"Importé",import:"Importer",searching:"Recherche",searched:"Recherché",searchingForBugs:"Recherche de bugs...",searchedBugs:"Bugs recherchés",install:"Installer",installing:"Installation",installed:"Installé",analyzing:"Analyse",running:"Exécution",failed:"Échoué",run:"Exécuter",settingSecrets:"Configuration des secrets",setSecret:"Secret configuré",setSecrets:"Secrets configurés",testing:"Test",checking:"Vérification",tested:"Testé",checked:"Vérifié",fetching:"Récupération",fetched:"Récupéré",waitingForApproval:"En attente d'approbation...",searchedDocsFor:"Documentation recherchée pour",searchingDocsFor:"Recherche de documentation pour",searchedFor:"Recherché pour",searchingFor:"Recherche de",foundResult_one:"{{count}} résultat trouvé",foundResult_other:"{{count}} résultats trouvés",grepSearching:'Recherche de "{{pattern}}"...',grepSearchComplete:"Recherche terminée",grepFoundResults_one:"{{count}} résultat trouvé",grepFoundResults_other:"{{count}} résultats trouvés",grepInFiles_one:"dans {{count}} fichier",grepInFiles_other:"dans {{count}} fichiers",toggling:"Basculement",toggled:"Basculé",listing:"Listage",listed:"Listé",approvalRequired:"Approbation requise",changesPending_one:"{{count}} modification en attente",changesPending_other:"{{count}} modifications en attente",approve:"Approuver",approving:"Approbation...",reject:"Rejeter",rejected:"rejeté",rejecting:"Rejet...",approveCount:"Approuver ({{count}})",rejectAll:"Tout rejeter",previousApproval:"Cette demande d'approbation provient d'un message précédent",query:"Requête :",updateFallback:"Mettre à jour {{entityName}}",updateFallbackSingle:"Définir {{fieldName}} à {{fieldValue}} sur {{entityName}}",updateFallbackMultiple:"Définir {{fieldName}} à {{fieldValue}} (+{{extraFields}} autres) sur {{entityName}}",deleteFallback:"Supprimer les enregistrements {{entityName}}",updateWith:"Mettre à jour avec :",importComplete:"Importation terminée",importingData:"Importation des données...",percentComplete:"{{percent}}% terminé",recordsProgress:"{{current}} / {{total}} enregistrements",preparing:"Préparation...",otherToolsAfterApproval:"Les autres outils s'exécuteront après approbation",loadingConfig:"Chargement de la configuration...",fetchConfigError:"Impossible de charger la configuration.",retry:"Réessayer",countPackages:"{{num}} packages :",updateAllEntityRecords:"Mettre à jour tous les enregistrements <entity>{{entityName}}</entity>",updateEntityRecordsMatching:"Mettre à jour les enregistrements <entity>{{entityName}}</entity> correspondant à :",deleteAllEntityRecords:"Supprimer tous les enregistrements <entity>{{entityName}}</entity>",deleteEntityRecordsMatching:"Supprimer les enregistrements <entity>{{entityName}}</entity> correspondant à :",importDataFromInto:"Importer les données de <file>{{fileName}}</file> dans <entity>{{entityName}}</entity>",importDataFromSheetInto:"Importer les données de <file>{{fileName}}</file> (feuille : <sheet>{{sheetName}}</sheet>) dans <entity>{{entityName}}</entity>",countRecordsIntoEntity:"{{num}} enregistrements dans <entity>{{entityName}}</entity>",dataIntoEntity:"données dans <entity>{{entityName}}</entity>",countRecordsEntity:"{{num}} enregistrements <entity>{{entityName}}</entity>",allEntityRecords:"tous les enregistrements <entity>{{entityName}}</entity>",entityRecords:"enregistrements <entity>{{entityName}}</entity>"},rV={chatOnlyDescription:"Ce paramètre n'est désormais accessible que via le chat.",description:"Définissez la page d'accueil par défaut de votre application",chatHint:"Pour modifier cela, écrivez dans le chat :",prompt:"Changer la page principale en {PageName}",placeholder:"Page principale",copiedToast:"Copié dans le presse-papiers"},oV={confirmMessage:"Êtes-vous sûr de vouloir dépublier cette application ? Elle ne sera plus accessible aux utilisateurs jusqu'à ce que vous la republiiez.",successTitle:"Succès",successDescription:"Application dépubliée avec succès",errorTitle:"Erreur",errorDescription:"Échec de la dépublication de l'application",description:"Mettre votre application hors ligne. Vous pouvez la republier à tout moment.",unpublishing:"Dépublication en cours...",button:"Dépublier"},sV={title:"Supprimer l'application",description:"Cette action est <strong>irréversible</strong>. L'application <strong>{{appSlug}}</strong> et toutes ses données seront définitivement supprimées.",descriptionSimple:"<strong>{{displayName}}</strong> sera définitivement supprimée.<br/>Toutes les données, l'historique, les utilisateurs, les domaines et les intégrations seront effacés de manière irréversible. <danger>Cette action est irréversible.</danger>",confirmLabel:"Pour confirmer, saisissez <strong>{{appSlug}}</strong> ci-dessous :",cancel:"Annuler",deleteButton:"Supprimer cette application",deleting:"Suppression...",successTitle:"Succès",successDescription:"Application supprimée avec succès",errorTitle:"Erreur",errorDescription:"Impossible de supprimer l'application"},lV={using:"Utilisation de la compétence {{name}}",failed:"Échec de l'utilisation de la compétence {{name}}",used:"Compétence {{name}} utilisée"},cV={thinkingIdeas:"{{agentName}} réfléchit à des idées...",ideasFrom:"Idées de {{agentName}}"},dV="Création de l'automatisation...",uV="Échec de la création de l'automatisation",pV="Automatisation",mV=JSON.parse(`{"sidebar":{"chat":"Chat","continueOnWhatsApp":"Continuer sur WhatsApp","continueOnTelegram":"Continuer sur Telegram","continueOnLine":"Continuer sur LINE","continueOnIMessage":"Continuer sur iMessage","imessage":"iMessage","brain":"Cerveau","integrations":"Intégrations","knowledge":"Connaissances","memory":"Mémoire","payments":"Paiements","tasks":"Tâches","artifacts":"Artefacts","settings":"Paramètres","secretsAndKeys":"Secrets et clés","security":"Sécurité","credits":"Crédits","whatsapp":"WhatsApp","telegram":"Telegram","line":"LINE","files":"Fichiers","uploadFile":"Importer un fichier","refreshFiles":"Actualiser les fichiers","searchFiles":"Rechercher des fichiers...","filesFolders":"{{fileCount}} fichiers · {{folderCount}} dossiers","toolsPermission":"Permissions des outils","apiDocs":"API","channels":"Canaux","feedback":"Laisser un avis","agentSettings":"Paramètres de l'agent","dangerZone":"Zone de danger"},"filePanel":{"source":"Source","preview":"Aperçu","save":"Enregistrer","saveAndRedeploy":"Enregistrer et redéployer","fileSaved":"Fichier enregistré","functionRedeployed":"Fonction enregistrée et redéployée","failedToSaveFile":"Échec de l'enregistrement du fichier","failedToRedeploy":"Échec du redéploiement de la fonction","failedToReadFile":"Échec de la lecture du fichier"},"modelPicker":{"automatic":"Automatique","automaticDescription":"Le meilleur modèle IA est sélectionné pour chaque requête","manual":"Manuel","manualDescription":"Sélectionnez un modèle IA spécifique.","manualCreditNote":"L'utilisation de crédits peut varier selon le modèle","manualDisabledDescription":"Sélectionnez un modèle IA spécifique ({{models}}). Disponible à partir du plan Builder.","builderPlus":"Builder+","upgradeToSelect":"Passez à un plan supérieur pour sélectionner un modèle IA"},"chat":{"loadingAgent":"Chargement de l'agent...","agentNotFound":"Agent introuvable","waitingForAuth":"En attente du jeton d'authentification...","anErrorOccurred":"Une erreur est survenue","aiModelUpdated":"Modèle IA mis à jour","failedToUpdateModel":"Échec de la mise à jour du modèle IA","hideSidebar":"Masquer la barre latérale","showSidebar":"Afficher la barre latérale","darkMode":"Passer au mode sombre","lightMode":"Passer au mode clair","dropFileHere":"Déposez le fichier ici","imagesDocsAndMore":"Images, documents et plus","loadPreviousMessages":"Charger les messages précédents","somethingWentWrong":"Une erreur est survenue","retry":"Réessayer","chatFromApp":"Discutez avec moi depuis une application que vous utilisez déjà ","attachFile":"Joindre des fichiers","typeMessage":"Saisissez un message...","toggleLiveBrowser":"Basculer le navigateur en direct","noActiveBrowser":"Aucune session de navigateur active","stopGenerating":"Arrêter la génération","suggestions":"Suggestions","liveBrowser":"Navigateur en direct","fullScreen":"Plein écran","exitFullScreen":"Quitter le plein écran","closeBrowser":"Fermer le navigateur","live":"En direct","expandBrowser":"Agrandir le navigateur","failedToStartConversation":"Impossible de démarrer la conversation — essayez d'envoyer un message manuellement.","failedToLoadConversation":"Échec du chargement de la conversation","failedToUploadFile":"Échec de l'envoi du fichier","tooManyFiles":"Vous pouvez joindre jusqu'à {{max}} fichiers par message","failedToSendMessage":"Échec de l'envoi du message","failedToStopAgent":"Échec de l'arrêt de l'agent","queued":"En file d'attente ({{count}})","queueFull":"La file d'attente est pleine. Veuillez attendre que l'agent termine.","failedToEditQueued":"Échec de la modification du message en file d'attente","failedToDeleteQueued":"Échec de la suppression du message en file d'attente","deleteMessage":"Supprimer le message","failedToDeleteMessage":"Échec de la suppression du message","today":"Aujourd'hui","yesterday":"Hier","thinking":"Réflexion...","you":"Vous","failedToSubmitToolInput":"Échec de l'envoi de l'entrée de l'outil","whatsInImage":"Qu'y a-t-il dans cette image ?","heresAFile":"Voici un fichier : {{fileName}}","heresAFileAndMore":"Voici un fichier : {{fileName}} (+{{count}} autre(s))","heresFiles":"Voici {{count}} fichiers","whatsInTheseImages":"Qu'y a-t-il dans ces {{count}} images ?","creditsRunningLow":"Vos crédits sont bientôt épuisés.","purchaseMoreCredits":"Acheter plus de crédits →","saleDiscount":"Obtenez {{discount}} de réduction sur les forfaits annuels sélectionnés","limitedTimeOffer":"Offre à durée limitée","upgradePlan":"Mettre à niveau","reply":"Répondre","copyMessage":"Copier","copied":"Copié"},"files":{"uploaded":"{{fileName}} importé","failedToUpload":"Échec de l'import de {{fileName}}","failedToRead":"Échec de la lecture de {{fileName}}"},"dashboard":{"title":"Tableau de bord","subtitle":"Vue d'ensemble de votre agent.","created":"Créé le {{date}}","memories":"Souvenirs","filesLabel":"Fichiers","folders":"Dossiers","agentMemory":"Mémoire de l'agent","noMemoriesYet":"Pas encore de souvenirs","noMemoriesDescription":"Votre agent stockera les informations apprises ici au fil de vos conversations."},"creditsTab":{"title":"Crédits","description":"L'utilisation des crédits et les détails de facturation apparaîtront ici."},"settingsTab":{"settings":"Paramètres","secrets":"Secrets","security":"Sécurité","creditCard":"Carte de crédit"},"agentSettingsTab":{"title":"Paramètres de l'agent","subtitle":"Configurez le fonctionnement de votre agent.","cloneTitle":"Cloner l'agent","cloneDescription":"Créez une copie de cet agent avec toute sa configuration, ses entités et ses fonctions backend.","cloneButton":"Cloner l'agent"},"clonePage":{"back":"Retour","title":"Cloner l'agent","subtitle":"Choisissez ce qui doit être inclus dans l'agent cloné.","optionChat":"Historique du chat","optionChatDesc":"Copier l'historique de conversation du constructeur vers le nouvel agent.","optionSkills":"Compétences","optionSkillsDesc":"Copier les fonctions backend, intégrations et configurations d'outils.","optionTasks":"Tâches","optionTasksDesc":"Copier les automatisations (planifiées, déclenchées par entité et connecteurs).","optionSecrets":"Clés API","optionSecretsDesc":"Copier les secrets et clés API stockés vers le nouvel agent.","cloneButton":"Cloner l'agent","cloning":"Clonage en cours...","cloneError":"Échec du clonage de l'agent"},"securityTab":{"title":"Sécurité","subtitle":"Lancez une analyse de sécurité pour détecter les vulnérabilités potentielles.","scanning":"Analyse en cours...","runScan":"Lancer l'analyse de sécurité","noIssues":"Aucun problème détecté","agentSecure":"Votre agent semble sécurisé.","severityCount":"Sévérité {{severity}}","idleMessage":"Cliquez sur \\"Lancer l'analyse de sécurité\\" pour vérifier les vulnérabilités de votre agent.","scanFailed":"L'analyse de sécurité a échoué"},"secretsTab":{"title":"Secrets","subtitle":"Variables d'environnement disponibles pour les fonctions backend de votre agent.","noSecrets":"Pas encore de secrets","addSecret":"Ajouter un secret","secretNamePlaceholder":"SECRET_NAME","valuePlaceholder":"valeur","add":"Ajouter","secretSaved":"Secret {{name}} enregistré","failedToSave":"Échec de l'enregistrement du secret","secretDeleted":"Secret {{name}} supprimé","failedToDelete":"Échec de la suppression du secret","failedToLoad":"Échec du chargement des secrets"},"billingTab":{"title":"Carte de crédit de l'agent","subtitle":"Utilisation et facturation de votre agent.","monthlyUsage":"Utilisation mensuelle","extraCredits":"+{{count}} crédits supplémentaires disponibles","pastDue":"Paiement en retard","pastDueDescription":"Veuillez mettre à jour votre moyen de paiement pour éviter une interruption de service.","goodStanding":"Compte en règle","currentPeriod":"Période actuelle :","nextPeriod":"Prochaine période :","manageBilling":"Gérer la facturation","failedToLoad":"Échec du chargement des données d'utilisation","unableToLoad":"Impossible de charger les données de facturation"},"apiDocsTab":{"title":"Référence de l'API","subtitle":"Utilisez l'API REST pour interagir avec votre agent de façon programmatique. Créez des conversations, envoyez des messages et gérez la mémoire depuis n'importe quelle application.","baseUrl":"URL de base","authentication":"Authentification","authDescription":"Incluez votre clé API dans l'en-tête de la requête :","authAlternative":"Vous pouvez aussi la transmettre comme paramètre de requête :","quickStart":"Démarrage rapide","quickStartDescription":"Suivez ces étapes pour commencer à discuter avec votre agent via l'API :","step1CreateConversation":"1. Créer une conversation","step2SendMessage":"2. Envoyer un message","step3ListConversations":"3. Lister les conversations","endpoints":"Points de terminaison de l'API","requestBody":"Corps de la requête","listConversationsDesc":"Lister toutes les conversations de l'utilisateur authentifié","listConversationsNote":"Retourne les conversations triées par date de création. Prend en charge la pagination via les paramètres de requête.","getConversationDesc":"Récupérer une conversation spécifique avec tous ses messages","createConversationDesc":"Créer une nouvelle conversation avec l'agent","sendMessageDesc":"Envoyer un message et obtenir la réponse de l'agent","sendMessageNote":"L'agent traitera le message et renverra sa réponse. La longueur maximale d'un message est de 8000 caractères.","deleteMessageDesc":"Supprimer un message spécifique d'une conversation","listMemoryDesc":"Lister les éléments de mémoire de l'agent","deleteMemoryDesc":"Supprimer un élément de mémoire spécifique","responseFormat":"Format de réponse","responseFormatDescription":"Les conversations sont renvoyées sous forme d'objets JSON contenant un tableau de messages :","rateLimits":"Limites de débit","rateLimitsDescription":"Les requêtes API sont limitées par utilisateur. Si vous dépassez la limite, vous recevrez un code d'état 429. Attendez un instant puis réessayez.","errorCodes":"Codes d'erreur","error401":"Non autorisé - clé API invalide ou manquante","error403":"Interdit - vous n'avez pas accès à cette ressource","error400":"Requête invalide - entrée non valide (par ex. message trop long)","error404":"Introuvable - la conversation ou la ressource n'existe pas","copy":"Copier"},"toolsPermissionTab":{"title":"Permissions des outils","subtitle":"Autoriser certaines opérations à s'exécuter sans votre confirmation.","warning":"Lorsque cette option est activée, l'agent effectuera ces actions de manière autonome. Vos règles de sécurité des données restent en vigueur.","updateData":"Mettre à jour les données","updateDataDescription":"Laisser l'agent mettre à jour des enregistrements sans demander d'abord.","deleteData":"Supprimer les données","deleteDataDescription":"Laisser l'agent supprimer des enregistrements sans demander d'abord.","failedToSave":"Échec de l'enregistrement des paramètres","effectNote":"Les paramètres s'appliquent immédiatement. Les réponses de l'IA ne suivent pas toujours les règles parfaitement.","connectorRulesTitle":"Règles des connecteurs","connectorRulesSubtitle":"Indiquez à l'agent ce qu'il peut et ne peut pas faire avec chaque service.","connectorRulePlaceholder":"ex. : Lire les e-mails uniquement, ne jamais envoyer ni supprimer","loadingConnectors":"Chargement des connecteurs...","saveRules":"Enregistrer","rulesSaved":"Règles des connecteurs enregistrées"},"knowledgeTab":{"noFiles":"Pas encore de fichiers de connaissances","noFilesDescription":"Commencez à discuter avec votre agent pour construire son identité et ses connaissances","identity":"Identité"},"memoryTab":{"title":"Mémoire","subtitle":"Ce que votre agent sait de vous et de vos conversations.","emptyTitle":"Rien ici pour le moment","emptyDescription":"Au fil de vos échanges, votre agent construira sa mémoire automatiquement — contexte des messages récents, résumés de sessions et faits clés.","addEntry":"Ajouter","saveEntry":"Enregistrer","cancelEdit":"Annuler","titlePlaceholder":"Que doit retenir l'agent ?","contentPlaceholder":"Ajouter plus de détails (optionnel)","saved":"Mémoire mise à jour","failedToSave":"Échec de la mise à jour","factsHeading":"Faits enregistrés","factsDescription":"Faits clés qui persistent à travers toutes les conversations.","noMemories":"Aucun fait enregistré","noMemoriesDescription":"Les faits importants sont extraits automatiquement des conversations, ou vous pouvez les ajouter manuellement.","shortTermHeading":"Mémoire à court terme","shortTermDescription":"Contexte de la conversation en cours, mis à jour environ tous les 10 messages.","shortTermUpdated":"Mis à jour","shortTermDeleted":"Supprimé","deleteShortTermConfirm":"Supprimer ce contexte ? L'agent perdra cette partie de l'historique de conversation.","longTermHeading":"Sessions quotidiennes","longTermDescription":"Un résumé des conversations de chaque jour.","longTermDeleted":"Supprimé","deleteLongTermConfirm":"Supprimer la session de ce jour ? L'agent perdra l'accès à cet historique de conversation.","messages":"{{count}} mess.","emptyTranscript":"Transcription vide","noText":"(pas de texte)","usedTools":"Utilisé : {{tools}}"},"telegramTab":{"title":"Telegram","connected":"Votre bot Telegram est connecté et actif.","notConnected":"Connectez un bot Telegram pour permettre aux utilisateurs de discuter avec votre agent.","verifyBanner":"Cliquez sur le bouton ci-dessous pour vérifier votre identité sur Telegram. Cela garantit que vous êtes le seul à pouvoir utiliser ce bot.","verifyOnTelegram":"Vérifier sur Telegram","connectedBot":"Bot connecté","botName":"Nom du bot","username":"Nom d'utilisateur","status":"Statut","active":"Actif","openTelegram":"Ouvrir dans Telegram","scanQr":"Scannez le code QR avec votre téléphone pour ouvrir le bot dans Telegram.","disconnect":"Déconnecter","disconnectConfirm":"Déconnecter ce bot Telegram ? Les utilisateurs ne recevront plus de réponses.","disconnected":"Bot Telegram déconnecté","failedToDisconnect":"Échec de la déconnexion","howItWorks":"Comment ça marche","step1":"Les utilisateurs ouvrent votre bot dans Telegram et envoient /start pour commencer.","step2":"Chaque message texte est traité par votre agent.","step3":"La réponse de l'agent est envoyée dans le chat Telegram."},"telegramSetup":{"connectTitle":"Connecter Telegram","connectDescription":"Créez un bot Telegram pour votre agent en un clic. Il sera configuré et prêt à discuter automatiquement.","autoCreateButton":"Connecter le bot Telegram","autoWaitingTitle":"Création du bot en cours...","autoWaitingDescription":"Confirmez le bot dans Telegram, nous configurerons ensuite tout automatiquement.","autoTimeoutError":"Délai dépassé pour la création du bot. Réessayez ou utilisez la configuration manuelle.","autoExpiredError":"Échec de la création du bot. Veuillez réessayer.","cancel":"Annuler","alreadyHaveBot":"J'ai déjà un jeton de bot","pasteTokenTitle":"Se connecter avec un jeton","manualInstructions":"Créez un bot via @BotFather sur Telegram, puis collez le jeton ici.","tokenPlaceholder":"Collez le jeton du bot...","tokenExtracted":"Jeton extrait","tokenNotFound":"Aucun jeton valide trouvé","connectBot":"Connecter","connecting":"Connexion...","successTitle":"Bot connecté !","openTelegram":"Ouvrir dans Telegram","failedToConnect":"Échec de la connexion du bot"},"whatsappTab":{"title":"WhatsApp","subtitle":"Permettez aux utilisateurs de discuter avec votre agent via WhatsApp.","connectTitle":"Connecter WhatsApp","connectDescription":"Cliquez sur le bouton ci-dessous pour ouvrir WhatsApp et activer la connexion. Vous recevrez un code d'activation à envoyer au numéro WhatsApp de l'agent.","openWhatsApp":"Ouvrir WhatsApp","scanQr":"Scannez le code QR avec votre téléphone pour ouvrir la conversation dans WhatsApp.","howItWorks":"Comment ça marche","step1":"Cliquez sur \\"Ouvrir WhatsApp\\" — cela ouvre WhatsApp avec un code d'activation pré-rempli.","step2":"Envoyez le code d'activation pour démarrer la connexion.","step3":"Une fois connecté, chaque message envoyé sur WhatsApp sera traité par votre agent."},"lineTab":{"title":"LINE","subtitle":"Discutez avec votre agent sur LINE.","connectTitle":"Se connecter via LINE","connectDescription":"Générez un code d'activation, scannez le QR avec votre téléphone pour ajouter le bot, puis envoyez le code.","generateCode":"Générer un code d'activation","scanQrLabel":"Scanner avec LINE","scanQrHint":"Ouvrez LINE sur votre téléphone et scannez ce QR code pour ajouter le bot.","activationCodeLabel":"Code d'activation","sendCodeHint":"Après avoir ajouté le bot, envoyez ce code comme message pour activer.","generating":"Génération...","regenerate":"Générer un nouveau code","codeCopied":"Code copié !","codeExpiry":"Expire dans 30 minutes","failedToGenerate":"Échec de la connexion à LINE","howItWorks":"Comment ça marche","step1":"Cliquez sur \\"Générer un code d'activation\\" pour obtenir votre code et QR.","step2":"Scannez le QR code avec LINE sur votre téléphone pour ajouter le bot en ami.","step3":"Envoyez le code d'activation comme message au bot pour vous connecter."},"imessageTab":{"title":"iMessage","subtitle":"Chat with your agent via iMessage.","connectTitle":"Connect via iMessage","connectDescription":"Click the button below and iMessage will open with the activation code ready to send.","connectButton":"Connect via iMessage","manualFallback":"Didn't open automatically? Send the code manually:","phoneNumberLabel":"Text this number","activationCodeLabel":"Activation code","codeCopied":"Code copied!","codeExpiry":"Expires in 30 minutes","failedToGenerate":"Failed to generate iMessage code","capacityTitle":"iMessage temporarily unavailable","capacityMessage":"iMessage is experiencing unusually high demand right now. Please check back in a few hours — we're working on expanding capacity.","howItWorks":"How it works","step1":"Click \\"Connect via iMessage\\" — your Messages app will open with the activation code pre-filled.","step2":"Send the message and your agent is connected. That's it!"},"pluginsTab":{"builtInServices":"Services intégrés","builtInSubtitle":"Fonctionnalités de la plateforme disponibles par défaut pour votre agent.","base44Backend":"Base44 Backend","alwaysActive":"Toujours actif","base44Description":"Base de données, fonctions, stockage de fichiers et automatisations","dataEntities":"Données et entités","dataEntitiesTool1":"Créer, lire, mettre à jour, supprimer et filtrer les enregistrements d'entités","dataEntitiesTool2":"Sécurité au niveau des lignes","backendFunctions":"Fonctions backend","backendFunctionsTool1":"Déployer et appeler des fonctions serverless Deno","backendFunctionsTool2":"Gérer les secrets d'environnement","fileStorage":"Stockage de fichiers","fileStorageTool1":"Importer des fichiers publics et privés","fileStorageTool2":"Créer des URLs de téléchargement signées","automationsLabel":"Automatisations","automationsTool1":"Planifier des tâches CRON","automationsTool2":"Déclencheurs de changement d'entité","connectors":"Connecteurs","connectorsSubtitle":"Connectez votre agent aux apps et services que vous utilisez déjà .","addConnector":"Ajouter un connecteur","close":"Fermer","noConnectors":"Aucun connecteur. Ajoutez-en un pour donner à votre agent accès aux services externes.","connected":"Connecté","available":"Disponibles ({{count}})","allConnected":"Tous les connecteurs sont déjà connectés.","revoked":"Révoqué","disconnectedStatus":"Déconnecté","active":"Actif","switchAccount":"Changer de compte","reconnect":"Reconnecter","disconnect":"Déconnecter","remove":"Supprimer","connect":"Connecter","connectorConnected":"Connecteur connecté","connectionCancelled":"Connexion annulée","connectorDisconnected":"Connecteur déconnecté","failedToDisconnect":"Échec de la déconnexion","connectorRemoved":"Connecteur supprimé","failedToRemove":"Échec de la suppression","openAuthLinkManually":"Ouvrir le lien d'autorisation manuellement","connecting":"Connexion en cours...","mcpPlugins":"Plugins MCP","mcpSubtitle":"Connexions MCP qui étendent les capacités de votre agent.","cancel":"Annuler","addPlugin":"Ajouter un plugin","noPlugins":"Aucun plugin connecté","noPluginsDescription":"Ajoutez un serveur MCP pour donner de nouveaux outils à votre agent.","failedToLoad":"Échec du chargement des plugins","failedToToggle":"Échec du basculement du plugin","pluginDeleted":"Plugin supprimé","failedToDelete":"Échec de la suppression du plugin","pluginAdded":"Plugin ajouté","pluginNamePlaceholder":"Nom du plugin","mcpUrlPlaceholder":"URL du serveur MCP (https://...)","foundTools":"{{count}} outils trouvés","connectionTestFailed":"Test de connexion échoué","connectedTools":"Connecté — {{count}} outils disponibles","connectionFailed":"Connexion échouée","test":"Tester","save":"Enregistrer","failedToCreate":"Échec de la création du plugin","enabled":"Activé","disabled":"Désactivé","toolsCount":"Outils ({{count}})","noTools":"Aucun outil disponible","toolsFound":"{{count}} outils trouvés","testFailed":"Test échoué","connectedChatMessage":"Je viens de connecter {{name}} depuis le panneau d'intégrations. Que puis-je faire avec ?","connectedReadOnlyChatMessage":"Je viens de connecter {{name}} en mode lecture seule depuis le panneau d'intégrations. Il ne peut que lire les données, pas créer ni modifier quoi que ce soit. Que puis-je faire avec ?","accessModeChangedMessage":"Je viens de passer {{name}} en mode {{mode}}. Merci d'en tenir compte pour les prochaines actions.","disconnectedChatMessage":"Je viens de déconnecter {{name}} depuis le panneau d'intégrations.","readOnly":"Lecture seule","fullAccess":"Peut gérer","switchToReadOnly":"Passer en lecture seule","switchToFullAccess":"Passer en gestion","searchConnectors":"Rechercher des connecteurs...","noSearchResults":"Aucun connecteur trouvé","noSearchResultsDesc":"Essayez d'autres mots-clés ou effacez la recherche.","noConnectorsYet":"Aucun connecteur connecté pour l'instant.","base44Official":"Base44 Official","setUp":"Configurer","loadMore":"Charger {{count}} de plus","showAll":"Tout afficher ({{count}})","moreIcons":"+{{count}} de plus","sort":{"title":"Trier","mostUsed":"Les plus utilisés","recentlyAdded":"Récemment ajoutés","az":"A-Z","za":"Z-A"}},"paymentsTab":{"title":"Paiements","stripeName":"Stripe","description":"Acceptez les paiements de vos clients via Stripe.","notConnected":"Stripe n'est pas connecté","connectedDescription":"Liens de paiement, produits et passage en caisse disponibles.","setupPrompt":"Demandez à votre agent dans le chat de configurer les paiements Stripe. Il vous guidera.","askInChat":"Demander dans le chat","sandboxMode":"Sandbox","liveMode":"Production","testCard":"Numéro de carte de test","claimAndGoLive":"Réclamer et passer en production","remove":"Supprimer l'intégration","removeConfirm":"Êtes-vous sûr ?","confirmRemove":"Oui, supprimer","cancel":"Annuler","removed":"Intégration Stripe supprimée","removeFailed":"Échec de la suppression de l'intégration Stripe","loadFailed":"Échec du chargement du statut de paiement","setupMessage":"Configurez les paiements Stripe pour mon agent"},"integrationsTab":{"tabSkills":"Skills","tabConnectors":"Connectors","skillsTitle":"Skills","skillsSubtitle":"Reusable instructions that give your agent specialized abilities.","addSkill":"Add Skill","noSkills":"No skills yet","noSkillsHint":"Add a skill to teach your agent new capabilities.","installed":"Installé"},"automationsTab":{"title":"Automatisations","subtitle":"Tâches planifiées et webhooks.","noAutomations":"Pas encore d'automatisations","trySuggestions":"Essayez l'une des idées ci-dessus ou demandez dans le chat.","askAgent":"Demandez à votre agent dans le chat d'en configurer une.","scheduled":"Planifiée","entityTriggered":"Déclenchée par entité","webhooks":"Webhooks","active":"Active","paused":"En pause","details":"Détails","runNow":"Exécuter maintenant","pause":"Mettre en pause","activate":"Activer","delete":"Supprimer","trigger":"Déclencheur","instructions":"Instructions","taskId":"ID de tâche","parameters":"Paramètres","runHistory":"Historique d'exécution","totalRuns":"{{count}} au total","succeeded":"{{count}} réussies","failedRuns":"{{count}} échouées","lastRun":"Dernière exécution :","created":"Créé le {{date}}","runsStats":"{{total}} exécutions · {{succeeded}} réussies · {{failed}} échouées","failedToToggle":"Échec du basculement de l'automatisation","archive":"Archiver","automationArchived":"Automatisation archivée","failedToArchive":"Échec de l'archivage de l'automatisation","automationDeleted":"Automatisation supprimée","failedToDelete":"Échec de la suppression de l'automatisation","automationTriggered":"Automatisation déclenchée","failedToRun":"Échec de l'exécution de l'automatisation","failedToLoad":"Échec du chargement des automatisations","consumesCredits":"Consomme des crédits de messages","agentRunsWhenTriggered":"L'agent répond quand déclenché","agentNameRunsWhenTriggered":"{{name}} répond quand déclenché","creditsUsed":"{{credits}} crédits utilisés","totalCredits":"Total des crédits : {{credits}}","trackingSince":"depuis {{date}}","executionLogs":"Journaux d'exécution","noLogs":"Aucun journal pour le moment","status":{"success":"succès","running":"en cours","failed":"échoué"},"archived":"Archivées","noArchivedAutomations":"Aucune automatisation archivée","archivedDescription":"Les automatisations que vous archivez apparaîtront ici.","restore":"Restaurer","automationRestored":"Automatisation restaurée","failedToRestore":"Échec de la restauration de l'automatisation"},"identity":{"updated":"Identité mise à jour","failedToSave":"Échec de l'enregistrement de l'identité","avatar":"Avatar","emoji":"Emoji","setEmoji":"Définir","uploadImage":"Téléverser une image","changeImage":"Changer","removeImage":"Supprimer l'image","useEmoji":"Utiliser un emoji","name":"Nom de l'agent","agentNamePlaceholder":"Nom de l'agent","userName":"Votre nom","userNameDisplay":"Votre nom : {{name}}","userNamePlaceholder":"Votre nom","userNameHint":"Comment l'agent vous appelle","description":"Description","descriptionPlaceholder":"Que fait cet agent ?","unnamedAgent":"Agent sans nom","cancel":"Annuler","save":"Enregistrer","edit":"Modifier","rawIdentity":"IDENTITY.md (texte brut)","editInEditor":"Modifier dans l'éditeur","entry":"{{count}} entrée","entries":"{{count}} entrées"},"knowledgeEditor":{"fileUpdated":"Le fichier a été mis à jour en externe","fileModified":"{{name}} a été modifié. Rechargez pour voir les modifications.","reload":"Recharger","saved":"{{label}} enregistré","failedToSave":"Échec de l'enregistrement","unsavedChanges":"Vous avez des modifications non enregistrées. Les abandonner ?","rawText":"Texte brut","readOnly":"Lecture seule","editAnyway":"Modifier quand même","edit":"Modifier","save":"Enregistrer","startWriting":"Commencez à écrire..."},"knowledgeFiles":{"title":"Fichiers de connaissances","uploading":"Import de {{count}} fichier(s)...","new":"Nouveau","fileNamePlaceholder":"nom-du-fichier","mdExtension":".md","enterFileName":"Veuillez saisir un nom de fichier","fileExists":"Un fichier portant ce nom existe déjà ","failedToCreate":"Échec de la création du fichier","unsupportedType":"Type de fichier non pris en charge","failedToUpload":"Échec de l'import de {{name}}","renamedTo":"Renommé en {{name}}","failedToRename":"Échec du renommage du fichier","failedToLoadFile":"Échec du chargement du fichier","deleteConfirm":"Supprimer \\"{{name}}\\" ? Cette action est irréversible.","failedToDelete":"Échec de la suppression du fichier","dropOrUpload":"Déposez les fichiers ici ou cliquez pour importer","supportedTypes":"Documents, images, CSV, fichiers de code et plus","dropOrBrowse":"Déposez les fichiers ou","browse":"parcourir"},"artifacts":{"description":"Petites mini-applications pour commencer. Pour des applications complètes, construisez sur Base44.","buildFullApp":"Créer une application complète","title":"Artefacts","pageCount_one":"{{count}} page","pageCount_other":"{{count}} pages","empty":"Aucun artefact pour l'instant","emptyDescription":"Demandez à votre agent de créer une mini-application et elle apparaîtra ici."},"feedbackModal":{"thankYou":"Merci !","thankYouSubtitle":"Vos retours nous aident à nous améliorer.","title":"Comment est votre expérience ?","subtitle":"Vos retours façonnent ce que nous construisons ensuite.","submitError":"Échec de l'envoi. Veuillez réessayer.","placeholder":"Dites-nous ce que vous en pensez...","sending":"Envoi en cours...","sendFeedback":"Envoyer","ratingBad":"Mauvais","ratingPoor":"Médiocre","ratingOkay":"Correct","ratingGood":"Bien","ratingAmazing":"J'adore","openSupportTicket":"Ouvrir un ticket de support"},"dangerZoneTab":{"title":"Zone de danger","subtitle":"Actions irréversibles pour cet agent.","deleteTitle":"Supprimer cet agent","deleteDescription":"Supprimera définitivement cet agent et toutes ses données, conversations, fichiers et intégrations. Cette action est irréversible.","deleteButton":"Supprimer cet agent","deleteSuccess":"Agent supprimé avec succès","deleteFailed":"Échec de la suppression de l'agent"}}`),gV={live:"Live",offScreen:"Hors écran",waiting:"En attente...",loading:"Chargement...",previewTitle:"Aperçu : {{pageName}}"},hV={main:"principal"},fV={title:"Supprimer l'agent",description:"Cela supprimera définitivement <strong>{{displayName}}</strong>.<br/>Toutes les données de l'agent, conversations, fichiers et intégrations seront définitivement effacées. <danger>Cette action est irréversible.</danger>",cancel:"Annuler",deleteButton:"Supprimer cet agent",deleting:"Suppression..."},vV={title:"Partager votre application",subtitle:"Partagez un lien par e-mail ou sur les réseaux sociaux",sendInviteLabel:"Envoyer une invitation",sendInvitation_one:"Envoyer l'invitation",sendInvitation_other:"Envoyer les invitations",invalidEmailsError:"Une ou plusieurs adresses e-mail ne sont pas valides. Veuillez les vérifier et réessayer.",workspaceIneligibleError:"Essayez d'inviter des utilisateurs de votre espace de travail à la place.",nonWorkspaceIneligibleError:"Certaines adresses e-mail ne sont pas éligibles pour être invitées.",removeIneligibleUsers:"Retirer les utilisateurs non éligibles",inviteSuccessToast:"Invitation envoyée avec succès",inviteErrorToast:"Échec de l'envoi des invitations",copyLink:"Copier le lien",sendInvitationSection:"Envoyer une invitation",inviteEmailPlaceholder:"Saisir une adresse e-mail",inviteButton:"Inviter",shareLiveAppLink:"Partager le lien de l'application en direct",shareLiveAppLinkDesc:"Toute personne disposant du lien peut voir votre application en direct, selon les paramètres de visibilité de votre application.",linkCopied:"Lien copié",enterEmailError:"Veuillez saisir une adresse e-mail",cannotInviteOwner:"Vous ne pouvez pas inviter le propriétaire de cette application",inviteSuccess_one:"Invitation envoyée avec succès",inviteSuccess_other:"{{count}} invitations envoyées avec succès",inviteFailedToSend:"Échec de l'envoi de l'invitation",role_admin:"Admin",role_user:"Utilisateur"},bV={sidebar:j4,loading:O4,trash:B4,errors:U4,codeView:q4,loader:V4,toolbar:$4,header:W4,upgrade:G4,checkpoints:H4,viewAs:Y4,pages:K4,publish:Z4,chat:J4,builderCommandPalette:Q4,unknownView:X4,appEditor:eV,beta:tV,collaborators:aV,integrationsBanner:nV,tools:iV,mainPage:rV,unpublishApp:oV,deleteApp:sV,skillTool:lV,automations:cV,create_automation:dV,create_automation_error:uV,automation_fallback_name:pV,agentEditor:mV,canvasPage:gV,canvasToolbar:hV,deleteAgent:fV,new:"Nouveau",shareModal:vV},yV={title:"Que construirez-vous ensuite ?",titleMobile:`Bonjour, que
construirez-vous ensuite ?`,subtitle:"Décrivez votre idée d'application ci-dessous ou inspirez-vous de nos",subtitleTemplatesLink:"modèles"},kV={title:"Applications récentes"},wV={title:"Superagents récents"},AV={placeholder:"Décrivez l'application que vous souhaitez créer...",placeholderPlanMode:"Dites à Base ce que vous voulez",placeholderViewer:"Les spectateurs ne peuvent pas créer d'applications",placeholderWithUrl:"Ajoutez une description (optionnel)...",captureFullMode:"Créer un site comme celui-ci",captureDesignMode:"Créer un nouveau site inspiré de ce design pour...",uploadFile:"Importer depuis l'ordinateur",uploadFileMobile:"Importer depuis l'appareil",captureFromUrlDescription:"Créer un point de départ 1:1",createFromUrl:"Commencer à partir d'une URL",aiModel:"Modèle IA",selectAiModel:"Sélectionner un modèle IA",addFromGoogleDrive:"Importer depuis Google Drive",modelPicker:{automatic:"Automatique",automaticDescription:"Le meilleur modèle IA est sélectionné pour chaque requête",new:"Nouveau",manual:"Manuel",builderPlus:"Builder+",manualDescription:"Sélectionnez un modèle IA spécifique ({{models}}). Disponible à partir du plan Builder.",upgradeToSelect:"Passez au plan supérieur pour sélectionner un modèle IA"},speechToText:"Reconnaissance vocale",processingAudio:"Traitement de l'audio...",clickToStopRecording:"Cliquer pour arrêter l'enregistrement"},SV={exploreTemplates:"Explorez les modèles de la communauté",discoverDescription:"Découvrez une collection d'applications créées par notre communauté.",failedToLoadCatalog:"Échec du chargement du catalogue",showingItems:"Affichage de {{displayed}} sur {{total}} éléments",searchApps:"Rechercher des applications",viewAllTemplates:"Voir tous les modèles",allCategories:"Tous",priceAll:"Tous les modèles",priceFree:"Gratuits uniquement",pricePaid:"Payants uniquement",pageTitle:"Modèles d'applications",pageSubtitle:"Découvrez une collection curatée d'applications créées par notre communauté.",tabs:{community:"Communauté",workspace:"Espace de travail",myTemplates:"Mes modèles"},categories:{marketingAndSales:"Marketing & Ventes",operations:"Opérations",dataAndAnalytics:"Données & Analyses",contentGeneration:"Génération de contenu",hrAndLegal:"RH & Juridique",finance:"Finance",education:"Éducation",community:"Communauté",lifestyleAndHobbies:"Style de vie & Loisirs",gamesAndEntertainment:"Jeux & Divertissement","Marketing & Sales":"Marketing et ventes",Operations:"Opérations","Data & Analytics":"Données et analyses","Content Generation":"Génération de contenu","HR & Legal":"RH et juridique",Finance:"Finance",Education:"Éducation",Community:"Communauté","Lifestyle & Hobbies":"Mode de vie et loisirs","Games & Entertainment":"Jeux et divertissements"},sort:{popular:"Populaire",newest:"Les plus récents",oldest:"Les plus anciens"},languagePlaceholder:"Langue",pricePlaceholder:"Prix",noAppsFound:"Aucune application trouvée",adjustSearchOrFilters:"Essayez d'ajuster votre recherche ou vos filtres",templateNotFound:"Modèle introuvable ou indisponible.",viewAllCommunityTemplates:"Voir tous les modèles de la communauté",loadingMore:"Chargement d'éléments supplémentaires...",viewDetails:"Voir les détails",workspaceBadge:"Espace de travail",purchasedBadge:"Acheté",free:"Gratuit",unknownUser:"Utilisateur inconnu",private:"Privé",howTo:{title:"Comment partager votre application avec la communauté",intro:"Suivez ces étapes simples :",step1Title:"Ouvrez le constructeur de votre app",step1Desc:"Accédez à une application que vous avez créée ou à laquelle vous avez un accès administrateur",step2Title:"Accédez aux paramètres du catalogue",step2Path:"Espace de travail → Paramètres → Modèles d'applications → Gérer l'annonce",step3Title:"Publiez votre annonce",step3Desc:"Ajoutez une description, des captures d'écran et configurez la visibilité de votre annonce",tipFull:"<bold>Conseil :</bold> Assurez-vous que votre application est déployée et dispose d'une description attrayante pour attirer plus d'utilisateurs !"},modal:{close:"Fermer",prevScreenshot:"Capture précédente",nextScreenshot:"Capture suivante",screenshotAlt:"Capture {{index}}",goToScreenshot:"Aller à la capture {{index}}",createdBy:"par {{creatorName}}",unknownCreator:"Inconnu",usages_one:"{{count}} utilisation",usages_other:"{{count}} utilisations",private:"Privé",workspaceTemplate:"Modèle d'espace de travail",clonePurchase:"Cloner l'achat",processing:"Traitement...",purchaseFor:"Acheter pour {{price}} $",useTemplate:"Utiliser le modèle",viewApp:"Voir l'app",paymentInfo:"Le paiement va entièrement au créateur",backendFunctionsEnabled:"Fonctions backend activées",usesIntegrations:"Utilise des intégrations",aboutThisApp:"À propos de cette app",noDescription:"Aucune description disponible",termsOfUse:"Conditions d'utilisation",success:"Succès",error:"Erreur",purchaseFailed:"Échec de l'achat",failedToPurchase:"Impossible de lancer l'achat",listingApproved:"Annonce approuvée avec succès",approveListingFailed:"Impossible d'approuver l'annonce",listingDeclined:"Annonce refusée avec succès",declineListingFailed:"Impossible de refuser l'annonce",pendingUpdate:"Mise à jour en attente de révision",codeChangesPending:"Modifications du code app en attente",metadataChanges:"Modifications des métadonnées de l'annonce :",manageListing:"Gérer l'annonce",approveUpdate:"Approuver la mise à jour",declineUpdate:"Refuser la mise à jour",approveListing:"Approuver l'annonce",declineListing:"Refuser l'annonce",approving:"Approbation en cours...",declining:"Refus en cours...",cloneAsAdmin:"Cloner en tant qu'admin"}},CV={subscriptionOverdue:"Paiement d'abonnement en retard",overdueMessage:"Le paiement de votre abonnement est en retard. L'accès à certaines fonctionnalités est actuellement limité. Veuillez mettre à jour votre méthode de paiement pour retrouver un accès complet.",goToBilling:"Aller à la facturation",creditLimitReached:"Vous avez atteint la limite de ce mois. Pour continuer à créer des applications",upgradePlan:"mettez à niveau votre plan"},DV={viewerAccess:"Vous avez un accès en lecture seule et ne pouvez pas créer d'applications. Contactez l'administrateur de votre espace de travail pour passer à Éditeur."},TV={fillApiKeys:"Veuillez remplir toutes les clés API requises avant de soumettre.",createAppFailed:"Échec de la création de l'app. Veuillez réessayer."},EV={title:"Commencer à partir d'une URL",description:"Utilisez n'importe quel site web comme point de départ pour votre nouveau site.",urlLabel:"URL du site web",urlPlaceholder:"ex., www.exemple.fr",errorEmpty:"Veuillez entrer une URL",errorInvalid:"Entrez une URL de site web valide, comme www.exemple.fr",errorTooLong:"L'URL est trop longue. Veuillez utiliser une URL plus courte.",modeFull:"Contenu & design",modeFullDescription:"Créer un site similaire.",modeDesign:"Design uniquement",modeDesignDescription:"Créer un nouveau site dans le même style.",modeContent:"Contenu uniquement",legalNotice:"Utilisez uniquement les URLs pour lesquelles vous détenez les droits sur le contenu.",cancel:"Annuler",add:"Ajouter",learnMore:"En savoir plus sur la création à partir d'une URL",capturedUrl:"URL capturée",appReady:"Votre appli est prête ! Vous pouvez maintenant la personnaliser ou ajouter de nouvelles fonctionnalités.",banner:{headline:"Création de votre appli",headlineDesign:"Création de votre appli",subtitle:"Cela peut prendre un peu plus de temps que d'habitude - on fait en sorte que ça vaille le coup.",activity:{msg1:"Découverte du site...",msg2:"Étude du design et du style...",msg3:"Assemblage des éléments...",msg4:"Création de quelque chose de spécial...",msg5:"On y travaille...",msg6:"Peaufinage en cours...",msg7:"Patience, de belles choses arrivent..."}}},PV={count:"Intégrations : {{count}}",loading:"Chargement de l'intégration...",selectedIntegrations:"Intégrations sélectionnées :"},_V={menuItem:"Connecteurs",dialogTitle:"Connecteurs",dialogDescription:"Connectez des outils et des sources de données pour renforcer votre application.",search:"Rechercher",add:"Ajouter",added:"Ajouté",remove:"Supprimer",noResults:"Aucun connecteur trouvé",suggestionCardTitle:"Aidez-moi à comprendre votre demande d'intégration pour :",choosePrompt:"Choisissez une option pour continuer.",somethingElse:"Autre chose",cancel:"Annuler",send:"Envoyer",connectTo:"Se connecter à <name>{{name}}</name>",upgradeToConnect:"Mettez à niveau votre plan pour connecter {{name}} à votre application.",connecting:"Connexion à {{names}}…",cancelled:"annulé",subtitles:{stripe:"Vendez des produits ou abonnements et encaissez en ligne.",salesforce:"Automatisez et synchronisez vos données CRM.",slack:"Envoyez des messages et gérez Slack en tant qu'utilisateur.",slackbot:"Publiez en tant que bot de marque sur votre workspace Slack.",notion:"Organisez et synchronisez vos connaissances et projets.",googlecalendar:"Gérez votre agenda et vos événements.",googledrive:"Exportez et sauvegardez les fichiers générés par l'app.",gmail:"Automatisez l'envoi et la gestion des e-mails.",googlesheets:"Synchronisez et gérez vos données de tableurs.",googleslides:"Créez et gérez des présentations.",googledocs:"Gérez et automatisez la création de documents.",googlebigquery:"Interrogez et synchronisez vos données analytiques.",hubspot:"Synchronisez les données CRM et automatisez le marketing.",linkedin:"Partagez des publications et accédez aux profils professionnels.",tiktok:"Suivez vos statistiques de profil et parcourez vos vidéos.",discord:"Notifiez des canaux et intégrez votre communauté Discord.",wix:"Accédez aux données de votre site Wix et aux outils métier.",github:"Gérez les dépôts, issues et pull requests.",gitlab:"Gérez les projets, MRs et pipelines CI/CD.",bamboohr:"Annuaire des employés et gestion RH.",wrike:"Planification de projets et coordination d'équipe.",box:"Gestion sécurisée de contenu dans le cloud.",clickup:"Organisez vos projets et suivez le travail de l'équipe.",google_analytics:"Analysez le trafic et le comportement des utilisateurs.",outlook:"E-mail et calendrier.",linear:"Suivi des tickets et gestion de projet.",dropbox:"Stockez et synchronisez vos fichiers dans le cloud.",google_search_console:"SEO et analyse des recherches.",google_classroom:"Éducation et gestion des cours.",airtable:"Bases de données et tableurs flexibles.",splitwise:"Partage de dépenses et gestion des comptes de groupe.",microsoft_teams:"Chat d'équipe, canaux et réunions.",share_point:"Gestion documentaire et collaboration.",one_drive:"Stockage de fichiers dans le cloud.",typeform:"Formulaires, sondages et collecte de données."}},xV={label:"Planifier",tooltip:"Activez le mode Plan pour que l'IA crée un plan détaillé avant de construire votre application."},IV="Voir tout",RV="Erreur",zV={menuLabel:"Importer depuis Figma",title:"Générer depuis un cadre Figma",description:"Collez le lien de votre frame pour générer une app basée sur votre design.",labelUrl:"Lien du cadre Figma",placeholderUrl:"ex., https://www.figma.com/frame-link",urlHelp:"Utilisez un lien vers un cadre, pas un fichier ou une page.",learnPrepare:"Apprenez à préparer votre cadre Figma",connectTitle:"Se connecter à Figma",connectDescription:"Autorisez l'accès à votre compte Figma pour importer votre design.",connectButton:"Se connecter à Figma",connectedToFigma:"Connecté à Figma",errorMissingUrl:"Entrez une URL d'un cadre Figma",errorNotFigmaUrl:"Entrez une URL d'un cadre Figma",errorNotFrameUrl:"Entrez une URL d'un cadre, pas d'un fichier ou d'une page.",errorRateLimit:"L'API Figma est temporairement occupée. Veuillez réessayer dans quelques minutes.",errorForbidden:"Connexion Figma invalide ou expirée. Veuillez reconnecter votre compte Figma.",errorNotFound:"Fichier Figma introuvable. Veuillez vérifier l'URL et vous assurer que vous avez accès.",errorGeneric:"Impossible d'accéder à ce design Figma. Veuillez vérifier l'URL et réessayer.",validating:"Vérification...",switchAccount:"Changer de compte Figma",cancel:"Annuler",generate:"Générer",viewerCannotGenerate:"Vous avez un accès en lecture seule et ne pouvez pas créer d'applications. Contactez l'administrateur de votre workspace pour passer au rôle d'Éditeur.",figmaFile:"Fichier Figma",justNow:"À l'instant",importingMessage:"Génère une app basée sur votre design depuis ce cadre Figma."},MV={connectFailed:"Échec de la connexion à Figma. Veuillez réessayer.",popupBlocked:"Popup bloqué. Veuillez autoriser les popups et réessayer.",disconnected:"Figma déconnecté",disconnectFailed:"Échec de la déconnexion de Figma. Veuillez réessayer."},NV={capturing:"Capture en cours...",figmaDescription:"Analyse du système de design Figma. Extraction de la mise en page, de la typographie et des tokens de couleur pour construire votre app."},FV={webApp:"Apps",aiAgent:"Superagents",recentApps:"Apps récentes",templates:"Modèles",favoritesComingSoon:"Favoris bientôt disponibles"},LV={new:"Nouveau",message:"Dites bonjour à votre vrai Agent Personnel",cta:"Essayez maintenant"},jV={greeting:"Bonjour {{name}},",greetingGeneric:"Bonjour,",title:"Créez votre propre Agent Personnel IA",createTitle:"Créez votre propre Superagent",newBadge:"Nouveau",subtitle:"Votre agent IA qui exécute des tâches, se connecte à vos outils et travaille pour vous 24h/24",cta:"Créez votre Superagent",creating:"Création...",continueHero:{heading:"Reprenez là où vous vous étiez arrêté",continueBtn:"Continuer avec {{name}}",or:"Ou",createNew:"Créer un nouveau superagent",activeAgo:"Actif {{time}}",you:"Vous"},features:{hassleFree:{title:"Sans tracas",desc:"Pas de Docker, pas de serveurs, pas de configuration. Lancez simplement votre Superagent."},alwaysOn:{title:"Toujours actif",desc:"Exécute des tâches et automatisations pour vous, 24h/24."},actions:{title:"Effectue de vraies actions",desc:"Gère des tâches, envoie des mises à jour et réagit automatiquement."},remembers:{title:"Se souvient de tout",desc:"Garde une trace de vos objectifs, préférences et contexte."},everywhere:{title:"Vit là où vous êtes",desc:"Fonctionne dans WhatsApp, Telegram, Slack et votre navigateur."},secure:{title:"Sécurisé par défaut",desc:"Accès uniquement à ce que vous autorisez."}},untitled:"Agent sans titre",active:"Actif",noDescription:"Aucune description disponible",edited:"Modifié {{time}}",updated:"Mis à jour {{time}}",failedToCreate:"Impossible de créer l'agent. Veuillez réessayer.",errorPage:{title:"Oups, quelque chose s'est mal passé",descriptionLine1:"Un problème technique est survenu de notre côté.",descriptionLine2:"Retournez à la page de création d'agent et réessayez",goToAgents:"Aller aux Agents →"}},OV={edited:"Modifié {{time}}",updated:"Mis à jour {{time}}",updatedRecently:"Mis à jour récemment"},BV={emptyTitle:"Vous n'avez encore créé aucune app.",emptySubtitle:"Créez votre première app en utilisant le formulaire ci-dessus !"},UV={dialogTitle:"Navigation rapide",dialogDescription:"Accédez rapidement aux apps, modèles, à la facturation et aux réglages d'espace de travail depuis la page d'accueil.",searchPlaceholder:"Rechercher des apps, réglages, modèles, facturation...",searching:"Recherche des apps de l'espace de travail...",emptyTitle:"Aucune destination correspondante",emptyDescription:"Essayez un nom d'app, une section des réglages ou une page comme la facturation ou les modèles.",allApps:"Toutes les apps",backToWorkspace:"Retour à l'espace de travail",templates:"Modèles",billing:"Facturation",groups:{apps:"Apps",navigate:"Pages",workspace:"Espace de travail",account:"Compte"},subtitles:{favoriteApp:"App favorite",recentApp:"App récente",page:"Page"}},qV={label:"Que souhaitez-vous créer ?",more:"Plus",moreIdeas:"Plus d'idées",categories:{CRM:"CRM","Dev productivity":"Productivité Dev",Educational:"Éducatif","Content Generation and Editing":"Génération et édition de contenu","Personal Finance":"Finances personnelles","Health and Wellness":"Santé et bien-être",Productivity:"Productivité","Travel Planning":"Planification de voyages",Entertainment:"Divertissement",Environmental:"Environnement","Home Management":"Gestion de la maison","Creative Tools":"Outils créatifs",Tasks:"Tâches","CRM & Sales":"CRM et ventes",Portfolio:"Portfolio",Finance:"Finance","Scheduling & Booking":"Planification et réservation",eCommerce:"eCommerce","Construction & Trade":"Construction et métiers","Events & Community":"Événements et communauté",Wellness:"Bien-être","Operations & Logistics":"Opérations et logistique","Tasks & Workflows":"Tâches et flux","Content & Sites":"Contenu et sites",Booking:"Réservation","E-commerce":"E-Commerce",Projects:"Projets",Operations:"Opérations"}},VV={hero:yV,recentApps:kV,recentAgents:wV,chat:AV,catalog:SV,billing:CV,permissions:DV,validation:TV,urlCapture:EV,integrations:PV,connectors:_V,planMode:xV,viewAll:IV,error:RV,figmaDialog:zV,figmaOAuth:MV,statusBanner:NV,tabs:FV,tryAgentBanner:LV,agent:jV,appCard:OV,appsList:BV,commandPalette:UV,ideas:qV},$V={title:"Intégrations",subtitle:"Découvrez des intégrations prêtes à l'emploi pour vous connecter à des APIs, des services et des outils afin d'étendre les capacités de votre application."},WV={placeholder:"Rechercher des intégrations..."},GV={title:"Aucune intégration correspondante trouvée",description:"Essayez d'ajuster votre recherche ou vos filtres."},HV={title:"Connecteurs",subtitle:"Connexions OAuth rapides aux services populaires, prises en charge par Base44."},YV={howToUse:"Comment utiliser",dialog:{getStarted:"Commencer",navigateInstruction:"Accédez à l'onglet Intégrations de votre application pour connecter {{name}} et obtenir des prompts personnalisés.",upgradeNotice:"Cette intégration nécessite des fonctions backend, disponibles uniquement avec le forfait Builder et supérieur. <seePlansLink>Voir les forfaits</seePlansLink>"}},KV={stripe:"Vendez des produits ou des abonnements et recevez vos paiements en ligne.",salesforce:"Automatisez et synchronisez les enregistrements CRM.",slack:"Envoyez des messages et gérez Slack en tant qu'utilisateur.",slackbot:"Publiez en tant que bot personnalisé dans votre espace de travail Slack.",notion:"Organisez et synchronisez vos connaissances et données de projet.",googlecalendar:"Gérez votre agenda et vos événements.",googledrive:"Exportez et sauvegardez les fichiers générés par votre application.",gmail:"Automatisez l'envoi d'e-mails et la gestion de la boîte de réception.",googlesheets:"Synchronisez et gérez les données de vos feuilles de calcul.",googleslides:"Créez et gérez des présentations.",googledocs:"Gérez et automatisez la création de documents.",googlebigquery:"Interrogez et synchronisez des données analytiques.",googletasks:"Gérez vos listes de tâches.",googlemeet:"Vidéoconférences et réunions.",hubspot:"Synchronisez les données CRM et automatisez le marketing.",linkedin:"Partagez des mises à jour et accédez aux profils professionnels.",tiktok:"Suivez vos statistiques de profil et parcourez vos vidéos.",discord:"Publiez dans vos canaux et intégrez votre communauté Discord.",wix:"Accédez aux données du site Wix et aux outils métier.",github:"Gérez les dépôts, issues et pull requests.",gitlab:"Gérez les projets, MRs et pipelines CI/CD.",bamboohr:"Annuaire des employés et gestion RH.",wrike:"Planification de projets et coordination d'équipe.",box:"Gestion sécurisée de contenu dans le cloud.",clickup:"Organisez les projets et suivez le travail d'équipe.",google_analytics:"Suivez le trafic web et les insights utilisateurs.",outlook:"E-mail et calendrier.",linear:"Suivi des issues et gestion de projet.",dropbox:"Stockez et synchronisez des fichiers dans le cloud.",google_search_console:"SEO et analytique de recherche.",google_classroom:"Éducation et gestion de cours.",airtable:"Bases de données et feuilles de calcul flexibles.",splitwise:"Partage de dépenses et factures groupées.",microsoft_teams:"Chat d'équipe, canaux et réunions.",share_point:"Gestion de documents et collaboration.",one_drive:"Stockage de fichiers dans le cloud.",typeform:"Formulaires, sondages et collecte de données.",hugging_face:"Inférence IA et référentiels de modèles.",calendly:"Planification automatisée de rendez-vous.",contentful:"CMS headless et gestion de contenu.",supabase:"Explorez les schémas, lisez les données et consultez l'état du projet (lecture seule)."},ZV={page:$V,search:WV,emptyState:GV,connectors:HV,connector:YV,catalog:KV},JV={title:"Launchpad",subtitle:"Découvrez et explorez les apps créées par la communauté",shareApp:"Partagez votre app",allApps:"Toutes les apps",noAppsFound:"Aucune app trouvée",noAppsHint:"Essayez de réinitialiser vos filtres ou de rechercher autre chose.",noAppsEmpty:"Soyez le premier à publier une app sur Launchpad !",clearFilters:"Réinitialiser les filtres",goToFirstPage:"Aller à la première page",retry:"Réessayer",publishedToast:"Votre app est maintenant en ligne sur Launchpad !"},QV={placeholder:"Rechercher des apps sur Launchpad..."},XV={all:"Toutes"},e$={title:"Tendances du moment"},t$={title:"Meilleures apps",empty:"Pas encore de meilleures apps pour cette période.",thisWeek:"Cette semaine",thisMonth:"Ce mois-ci",allTime:"Depuis toujours"},a$={live:"En direct",someone:"Quelqu'un",sentences:{vote:"{{user}} vient de voter pour {{app}}",like:"{{user}} vient d'aimer {{app}}",publish:"{{user}} vient de publier {{app}}",default:"{{user}} vient d'interagir avec {{app}}"}},n$={signInPrompt:"Veuillez vous connecter pour publier votre app sur Launchpad.",signIn:"Se connecter",back:"Retour",next:"Suivant",publish:"Publier",publishing:"Publication en cours...",stepOf:"Étape {{current}} sur {{total}}",successToast:"Votre app est maintenant en ligne sur Launchpad !",failedDefault:"Échec de la publication. Veuillez réessayer.",categoriesLoadFailed:"Impossible de charger les catégories. Veuillez fermer et réessayer.",categoriesRetry:"Réessayer",steps:{selectApp:"Sélectionner une app",details:"Détails",preview:"Aperçu"},appPicker:{chooseApp:"Choisissez l'app que vous souhaitez publier sur Launchpad.",searchPlaceholder:"Rechercher vos apps...",loadFailed:"Impossible de charger vos apps.",tryAgain:"Réessayer",noApps:"Vous n'avez pas encore d'apps.",noAppsForQuery:"Aucune app trouvée pour « {{query}} »",loadMore:"Charger plus"},preview:{caption:"Voici à quoi votre app ressemblera dans la grille Launchpad :",creatorFallback:"Vous"},categoryPicker:{count:"{{current}}/{{max}} catégories sélectionnées"},validation:{nameRequired:"Le nom de l'app est requis",descriptionRequired:"La description courte est requise",descriptionTooLong:"Max. {{max}} caractères",categoriesRequired:"Sélectionnez au moins 1 catégorie",screenshotsRequired:"Téléversez au moins 1 capture d'écran"}},i$={uploadFailed:"Certaines captures d'écran n'ont pas pu être téléversées. Veuillez réessayer.",uploading:"Téléversement en cours...",addImage:"Ajouter une image",count:"{{current}}/{{max}} captures d'écran. Glissez pour réorganiser."},r$={previous:"Précédent",next:"Suivant",pageOf:"Page {{page}} sur {{totalPages}}"},o$={justNow:"à l'instant",minutesAgo:"il y a {{count}} min",hoursAgo:"il y a {{count}} h",daysAgo:"il y a {{count}} j"},s$={appName:"Nom de l'app",shortDescription:"Description courte",shortDescriptionPlaceholder:"Une brève description de ce que fait votre app",longDescription:"Description détaillée",longDescriptionPlaceholder:"Parlez-nous davantage de votre app...",optional:"Facultatif",categories:"Catégories",screenshots:"Captures d'écran",generateWithAi:"Générer avec l'IA",aiComingSoon:"Génération par IA bientôt disponible"},l$={tryApp:"Essayer l'app",share:"Partager",shareToast:"Lien copié dans le presse-papiers !",shareError:"Échec du partage",about:"À propos",moreByCreator:"Plus de {{name}}",backToLaunchpad:"Retour à Launchpad",notFound:"App introuvable",notFoundHint:"Cette app a peut-être été supprimée ou dépubliée.",loadFailed:"Échec du chargement des détails de l'app.",unknownCreator:"ce créateur"},c$={title:"Commentaires",placeholder:"Écrire un commentaire...",submit:"Publier",submitting:"Publication...",empty:"Pas encore de commentaires. Soyez le premier !",loadMore:"Charger plus de commentaires",deleteFailed:"Échec de la suppression du commentaire.",postFailed:"Échec de la publication du commentaire.",signInToComment:"Connectez-vous pour laisser un commentaire",anonymous:"Anonyme"},d$={likeFailed:"Échec de la mise à jour du like.",voteFailed:"Échec de la mise à jour du vote.",selfVoteError:"Vous ne pouvez pas voter pour votre propre app."},u$={loadFailed:"Impossible de charger les données de Launchpad. Veuillez réessayer.",browseFailed:"Impossible de charger les apps. Veuillez réessayer.",topAppsFailed:"Impossible de charger les meilleures apps. Veuillez réessayer.",categoriesFailed:"Impossible de charger les catégories.",refreshFailed:"Échec de l'actualisation — veuillez recharger la page."},p$={page:JV,search:QV,categories:XV,trending:e$,topApps:t$,liveActivity:a$,publish:n$,screenshots:i$,pagination:r$,relativeTime:o$,fillDetails:s$,detail:l$,comments:c$,engagement:d$,errors:u$},m$={title:"Apps",allAgentsTitle:"Tous les agents",createNewApp:"Créer une nouvelle app",createNewAgent:"Créer un nouvel agent",tabRecents:"Récents",tabFavorites:"Favoris",tabAllApps:"Toutes les apps",tabAllAgents:"Tous les agents",searchPlaceholder:"Rechercher des apps",gridView:"Vue grille",listView:"Vue liste",appTypeLabel:"Type d'app",appTypeApps:"Apps",appTypeAgents:"Agents",tableHeaderName:"Nom",tableHeaderDescription:"Description",tableHeaderActions:"Actions",folderActionAddApps:"Ajouter des apps",folderActionRename:"Renommer",folderActionDelete:"Supprimer",filterOwnedByMe:"Dont je suis propriétaire",filterMyAppsPersonal:"Mes apps (espace de travail personnel)",filterAllPlatform:"Toutes les apps (à l'échelle de la plateforme)",filterMyAppsWorkspace:"Mes apps dans l'espace de travail {{workspaceName}}",filterAllAppsWorkspace:"Toutes les apps dans l'espace de travail {{workspaceName}}",addNewFolder:"Ajouter un nouveau dossier",sortLastUpdated:"Dernière mise à jour",sortLastCreated:"Dernière création",sortNameAsc:"Nom (A-Z)",sortNameDesc:"Nom (Z-A)",filterCreatedByMe:"Créé par moi",filterCreatedByAnyone:"Créé par tous",filterAllPlatformApps:"Toutes les apps de la plateforme",filterMyApps:"Mes apps dans {{workspaceName}}",planModeDescription:"Cette application est actuellement en mode planification et n'a pas encore été créée.",noDescription:"Pas de description",byCreator:"Par {{name}}",createdAgo:"Créé {{timeAgo}}",untitledPlan:"Plan sans titre",tableHeaderApp:"App",tableHeaderLastUpdated:"Dernière mise à jour",tableHeaderCreatedBy:"Créé par",emptyFolderTitle:"Aucune app ajoutée",emptyFolderMessage:"Les apps apparaîtront ici une fois ajoutées",addExistingApps:"Ajouter des apps existantes",emptyFavoritesTitle:"Aucune app favorite",emptyFavoritesMessage:"Mettez une app en favori pour l'ajouter ici.",emptyRecentsTitle:"Aucune activité récente",emptyRecentsMessage:"Les apps que vous ouvrez apparaîtront ici.",emptySearchTitle:"Aucune app trouvée",emptySearchMessage:"Aucune app ne correspond à vos critères.",clearFilters:"Effacer les filtres",previous:"Précédent",next:"Suivant",failedToUpdateStar:"Échec de la mise à jour du favori",failedToUpdateFavorite:"Échec de la mise à jour du favori",pleaseRetry:"Veuillez réessayer",folderCreated:"Dossier créé",folderRenamed:"Dossier renommé",folderDeleted:"Dossier supprimé",folderUpdated:"Dossier mis à jour",filter:"Filtrer"},g$={showAll:"Tout afficher",appCount_one:"{{count}} app",appCount_other:"{{count}} apps",addApps:"Ajouter des apps",rename:"Renommer",delete:"Supprimer",cancel:"Annuler",save:"Enregistrer",saving:"Enregistrement...",create:"Créer",deleting:"Suppression...",createFirstFolder:"Créer votre premier dossier",createNewFolder:"Créer un nouveau dossier",renameFolder:"Renommer le dossier",folderVisibilityDescription:"L'organisation des dossiers est visible pour votre espace de travail.",folderNamePlaceholder:"Nom du dossier",visibility:"Visibilité",scopeWorkspace:"Espace de travail",scopePersonal:"Personnel",personalScopeHint:"Visible uniquement par vous",deleteFolder:"Supprimer le dossier",deleteFolderDescription:'Vous êtes sur le point de supprimer "{{name}}" ? Les apps de ce dossier ne seront pas supprimées, seulement le dossier.',manageFolders:"Gérer les dossiers",manageFoldersDescription:"Ajouter ou supprimer cette app des dossiers.",searchFoldersPlaceholder:"Rechercher des dossiers...",createNewFolderButton:"Créer un nouveau dossier",noFoldersMatchSearch:"Aucun dossier ne correspond à votre recherche",noFoldersYet:"Aucun dossier pour l'instant",allFolders:"Tous les dossiers",searchFolders:"Rechercher des dossiers",scopeFilterAll:"Tous",sortNameAsc:"Nom A–Z",sortNameDesc:"Nom Z–A",sortMostApps:"Plus d'apps",sortFewestApps:"Moins d'apps",noFoldersFound:"Aucun dossier trouvé",noFoldersMatchCriteria:"Aucun dossier ne correspond à vos critères de recherche.",clearSearch:"Effacer la recherche",manageAppsInFolder:"Gérer les apps dans le dossier",manageAppsDescription:'Ajouter ou supprimer des apps dans "{{name}}".',searchAppsPlaceholder:"Rechercher des apps...",noAppsMatchSearch:"Aucune app ne correspond à votre recherche",noAppsFound:"Aucune app trouvée",loadMore:"Charger plus",appUpdatedAgo:"Mis à jour {{timeAgo}}",saveWithCount:"{{label}} ({{count}})",operationFailed:"Opération échouée. Veuillez réessayer."},h$={viewLiveApp:"Voir l'app en ligne",share:"Partager",rename:"Renommer",cloneApp:"Cloner l'app",appSettings:"Paramètres de l'app",delete:"Supprimer",appDeleted:"App supprimée",appDeletedDescription:'"{{name}}" a été supprimée',failedToDelete:"Échec de la suppression de l'app",failedToDeleteDescription:"Une erreur est survenue lors de la suppression de l'app",manageFolders:"Gérer les dossiers",removeFromFolder:"Supprimer du dossier",goToAppSettings:"Aller aux paramètres de l'app",deleteApp:"Supprimer l'app",deleteAppTitle:'Supprimer "{{name}}" ?',deleteAppDescription:"Cela supprimera définitivement cette app et toutes ses données. Cette action est irréversible.",appRemovedFromFolder:"App supprimée du dossier",failedToRemoveFromFolder:"Échec de la suppression de l'app du dossier",addedToFolders_one:"App ajoutée à {{count}} dossier",addedToFolders_other:"App ajoutée à {{count}} dossiers",removedFromFolders_one:"App supprimée de {{count}} dossier",removedFromFolders_other:"App supprimée de {{count}} dossiers",failedToUpdateFolders:"Échec de la mise à jour des dossiers",foldersUpdated:"{{added}} et {{removed}}",removeFromFavorites:"Retirer des favoris",addToFavorites:"Ajouter aux favoris"},f$={title:"Renommer l'app",description:"Le nom de l'app est visible pour vous et vos utilisateurs.",inputPlaceholder:"Entrez le nom de l'app",urlUpdateNote:"Changer le nom de l'app mettra également à jour son URL.",cancel:"Annuler",save:"Enregistrer",saving:"Enregistrement...",nameRequired:"Le nom de l'app est obligatoire",enterDifferentName:"Veuillez entrer un nom différent",successTitle:"App renommée",successDescription:'App renommée en "{{name}}"',successDescriptionUrlFailed:`App renommée en "{{name}}", mais l'URL n'a pas pu être mise à jour.`,failedTitle:"Échec du renommage de l'app",failedDescription:"Une erreur est survenue lors du renommage de l'app"},v$="Chargement...",b$="(Copie)",y$={cloningTitle:"Clonage de {{appName}}",cloningDescription:"Cela peut prendre quelques instants. Vous le trouverez sur la page Apps une fois prêt",goToApps:"Accéder aux apps",confirmingPurchaseTitle:"Confirmation de votre achat...",confirmingPurchaseSubtitle:"Cela ne prend généralement que quelques secondes",errorTitle:"Erreur",goBack:"Retour",cloneNotAllowedTitle:"Clonage non autorisé",cloneNotAllowedDescription:"Cette app nécessite des fonctions backend. Vous devez être au niveau Builder ou supérieur pour la cloner.",configureSecrets:"Configurer les secrets",cloneTitle:"Cloner {{name}}",cloneButton:"Cloner {{name}}",cloningButton:"Clonage de {{name}}...",defaultAppName:"App",preparing:"Préparation...",errorCloningApp:"Une erreur s'est produite lors du clonage de l'app",errorFetchingRequirements:"Une erreur s'est produite lors de la récupération des prérequis de clonage",errorPurchaseTimeout:"La confirmation de votre achat prend plus de temps que prévu. Vérifiez votre e-mail pour la confirmation, ou contactez le support si le problème persiste.",errorVerifyPurchase:"Impossible de vérifier l'achat. Veuillez réessayer."},k$={userApps:m$,folders:g$,appActions:h$,renameApp:f$,loading:v$,copySuffix:b$,remixPage:y$},w$={title:"Base44 App Templates Marketplace – Conditions d'utilisation",lastUpdated:"Dernière mise à jour : 18 novembre 2025"},A$={header:w$},S$={home:"Accueil",allApps:"Toutes les applications",apps:"Applications",integrations:"Intégrations",appTemplates:"Modèles d'applications",hirePartner:"Engager un partenaire",affiliates:"Affiliés",docsSupport:"Docs & Support",admins:"Administrateurs",referFriends:"Parrainer des amis",language:"Langue",startBuilding:"Commencer à créer"},C$={title:"Créer un espace de travail",subtitle:"Commencez à collaborer avec les membres de votre espace de travail",back:"Retour",formTitle:"Informations sur l'espace de travail",nameLabel:"Nom de l'espace de travail",namePlaceholder:"Entrez le nom de votre espace de travail",nameHint:"Choisissez un nom qui représente votre espace de travail",nameRequiredError:"Le nom de l'espace de travail est requis",createFailedError:"Échec de la création de l'espace de travail",limitReachedError:"Limite d'espaces de travail atteinte. Vous pouvez créer un maximum de 3 espaces de travail.",cancelButton:"Annuler",createButton:"Créer l'espace de travail",creatingButton:"Création de l'espace de travail...",whatHappensNext:{title:"Que se passe-t-il ensuite ?",ownerPermissions:"Vous serez le propriétaire de l'espace de travail avec toutes les autorisations de gestion",inviteMembers:"Vous pouvez inviter des membres et gérer les licences",accessDashboard:"Accédez au tableau de bord de votre espace de travail pour commencer"}},D$={workspace:"Espace de travail",backToWorkspace:"Retour à {{workspaceName}}",settings:"Paramètres",inviteMembers:"Inviter des membres",myWorkspaces:"Mes espaces de travail",createWorkspace:"Créer un espace de travail",noWorkspacesFound:"Aucun espace de travail trouvé",accountSettings:"Paramètres du compte",apiKey:"Clé API",helpSupport:"Aide et support",becomeAffiliate:"Devenir affilié",defaultUser:"Utilisateur",defaultUserInitial:"U",referFriend:"Parrainer un ami",giftCards:"Cartes Cadeaux",sendGiftCard:"Envoyer une carte cadeau",notifications:"Notifications",logOut:"Se déconnecter",aboutApp:"À propos de l'application",upgradePlan:"Mettre à niveau",winCredits:"Gagnez des crédits gratuits",pricingPlans:"Plans tarifaires",documentation:"Documentation",getHelp:"Obtenir de l'aide",memberCount_one:"{{count}} membre",memberCount_other:"{{count}} membres",myProfile:"Mon profil",viewProfile:"Voir le profil",failedToLoadProfile:"Impossible de charger le profil",user:"Utilisateur"},T$={ariaLabel:"Menu de l'agent",agentFallback:"Agent"},E$={integrationCredits:"Crédits d'intégrations",monthlyCredits:"Crédits mensuels",messageCredits:"Crédits de messages",dailyCredits:"Crédits quotidiens",giftCardCredits:"Crédits Cadeaux",renewsAt:"Renouvellement le {{date}}",giftCardTooltip:"Les crédits de carte cadeau sont utilisés avant les crédits de votre plan.",percentUsed:"{{percent}}% utilisé",messagesRemaining_one:"{{count}} message restant",messagesRemaining_other:"{{count}} messages restants",upgradeYourPlan:"Mettre à niveau votre plan",getMoreOutOfYourApps:"Tirez le meilleur de vos apps",upgradeYourPlanToPro:"Passez votre plan à Pro",redeemDescription:"Une fois échangés, les crédits seront appliqués à votre espace de travail.",creditsRemaining_one:"{{count}} crédit restant",creditsRemaining_other:"{{count}} crédits restants"},P$={label:"Communauté",appTemplates:"Modèles d'applications",appTemplatesDesc:"Démarrez plus vite avec les modèles de la communauté.",hirePartner:"Engager un partenaire",hirePartnerDesc:"Trouvez des partenaires et commencez à collaborer.",spotlight:"En vedette",spotlightDesc:"Explorez les applications remarquables.",affiliateProgram:"Programme d'affiliation",affiliateProgramDesc:"Devenez affilié Base44.",joinUsOn:"Rejoignez-nous sur"},_$=JSON.parse(`{"title":"Paramètres","lockedFeature":{"includedInPlan":"Inclus dans le plan {{plan}} et supérieur","includedInPlanExact":"Inclus dans le plan {{plan}}","viewPlans":"Voir les plans","talkToSales":"Parler aux ventes","authSecurity":{"title":"Contrôlez l'accès à l'espace de travail","body":"Essentiel pour les industries réglementées et les organisations soucieuses de la sécurité","ssoAccess":"Utilisez l'authentification unique (SSO) pour réduire les risques liés aux mots de passe","domainVerification":"Contrôlez qui peut rejoindre avec la vérification de domaine","ipWhitelisting":"Autorisez l'accès uniquement depuis des adresses IP de confiance"},"integrations":{"title":"Configurez une fois, utilisez dans tout l'espace de travail","body":"Pour les équipes standardisant les API et outils externes entre les applications.","configureOnce":"Configurez les intégrations API une seule fois pour toutes les applications et coéquipiers","sharedAccess":"Permettez à tous dans votre espace de travail d'utiliser les outils connectés instantanément","consistentConnections":"Gardez les connexions externes cohérentes dans chaque application"},"appsConfiguration":{"title":"Définissez la visibilité des applications et les règles SSO","body":"Pour les équipes gérant des outils internes et des applications sensibles.","publicAppControl":"Décidez qui peut créer des applications publiques dans cet espace de travail","defaultVisibility":"Définissez la visibilité initiale des nouvelles applications","enforceSso":"Appliquez le SSO de l'espace de travail à toutes les applications"},"analytics":{"title":"Voyez comment votre équipe utilise Base44","body":"Pour les propriétaires et administrateurs d'espaces de travail suivant l'utilisation et l'adoption.","creditTracking":"Suivez comment les crédits sont utilisés au sein de votre équipe","activeUsers":"Voyez quels coéquipiers utilisent activement Base44","licenseUsage":"Comprenez combien de licences sont actuellement utilisées"},"skills":{"title":"Donnez à votre IA des skills réutilisables","body":"Définissez un comportement IA cohérent qui fonctionne dans toutes vos applications.","reusableInstructions":"Créez un ensemble d'instructions personnalisées (un skill) qui façonnent la manière dont l'IA construit vos applications","autoActivation":"Créez une fois, réutilisez dans toutes vos applications","teamConsistency":"Guidez le ton, le formatage, la logique ou tout comportement que vous souhaitez standardiser"},"mcpConnections":{"title":"Connectez des outils externes avec MCP","body":"Intégrez des données en direct d'outils externes directement dans vos applications.","externalTools":"Donnez à votre générateur IA accès au contexte en temps réel pendant qu'il travaille","customServers":"Connectez des serveurs MCP personnalisés à utiliser dans toutes vos applications","extendCapabilities":"Accédez à des outils comme Amplitude, Linear et plus encore lors du développement"}},"membersTitle":"Membres","inviteMembers":"Inviter des membres","inviteByEmail":"Inviter par e-mail","bulkInviteCsv":"Invitation groupée (CSV)","close":"Fermer","createInviteLink":"Créer un lien d'invitation","manageInviteLinks":"Gérer les liens d'invitation","backToMembers":"Retour aux membres","backToMenu":"Retour au menu des paramètres","inviteLinks":{"title":"Liens d'invitation","breadcrumb":"Liens d'invitation","description":"Créez et gérez les liens d'invitation pour cet espace de travail.","createInviteLink":"Créer un lien d'invitation","noLinksYet":"Aucun lien d'invitation","noLinksSubtitle":"Créez un lien d'invitation pour partager facilement l'accès à cet espace de travail.","copyLink":"Copier le lien","copyLinkLower":"Copier le lien","deleteTooltip":"Supprimer le lien d'invitation","deleteButton":"Supprimer","deleteLinkButton":"Supprimer le lien","deleteConfirmTitle":"Supprimer le lien d'invitation ?","deleteConfirmActive":"Les personnes ne pourront plus rejoindre via ce lien. Cette action est irréversible.","deleteConfirmInactive":"Ce lien et son historique seront supprimés de cet espace de travail.","copiedToClipboard":"Lien d'invitation copié dans le presse-papiers.","columnName":"Nom","columnStatus":"Statut","columnUsage":"Utilisation","columnRole":"Rôle","columnExpiration":"Date d'expiration","columnDomains":"Domaines autorisés","statusActive":"Actif","statusRevoked":"Révoqué","statusExpired":"Expiré","statusLimitReached":"Limite atteinte","usageUnlimited":"Illimité","dialogTitle":"Créer un lien d'invitation","dialogMobileTitle":"Créer un lien","linkName":"Nom du lien (Facultatif)","linkNamePlaceholder":"ex., Intégration de nouveaux employés","role":"Rôle","selectRole":"Sélectionner un rôle","roleViewer":"Lecteur","roleEditor":"Éditeur","roleMember":"Membre","expiration":"Expiration","selectExpiration":"Sélectionner l'expiration","nDays_one":"{{count}} jour","nDays_other":"{{count}} jours","never":"Jamais","maximumUses":"Utilisations maximales","selectLimit":"Sélectionner la limite","unlimited":"Illimité","nUses_one":"{{count}} utilisation","nUses_other":"{{count}} utilisations","allowedDomains":"Domaines e-mail autorisés (Facultatif)","allowedDomainsPlaceholder":"ex., entreprise.com, partenaire.org","domainsHelp":"Séparez les domaines par des virgules.","domainsError":"Entrée invalide. Utilisez des domaines séparés par des virgules (ex., entreprise.com, partenaire.org)","securityWarning":"Toute personne disposant de ce lien peut rejoindre votre espace de travail et accéder à ses données. Ne le partagez qu'avec des personnes de confiance.","advancedOptions":"Options avancées","cancel":"Annuler","creating":"Création...","create":"Créer","linkCreatedAndCopied":"Lien d'invitation créé et copié.","manageInvitations":"Gérer les invitations"},"postPaymentInvite":{"title":"Tout est prêt !","description":"Votre plan est actif. Invitez vos amis et collègues à construire ensemble.","createInviteLink":"Créer un lien d'invitation","inviteByEmail":"Inviter par e-mail","maybeLater":"Peut-être plus tard","inviteLinkReady":"Lien d'invitation prêt","subtitleNoDomain":"Toute personne disposant de ce lien peut rejoindre en tant que <bold>{{role}}</bold>","subtitleWithDomain":"Toute personne avec un e-mail {{domains}} peut rejoindre en tant que <bold>{{role}}</bold>","copied":"Copié","manageInvitationsPrompt":"Vous pouvez gérer tous vos liens d'invitation depuis la page de paramètres <inviteLink>Liens d'invitation</inviteLink>.","copyLink":"Copier","close":"Fermer","expires":"Expire {{time}}","remainingUses_one":"{{count}} utilisation restante","remainingUses_other":"{{count}} utilisations restantes"},"sections":{"workspace":"Espace de travail","integrations":"Intégrations","account":"Compte"},"creditUsage":{"pageDescription":"Surveillez votre consommation de crédits et vos habitudes d'utilisation.","currentPlan":"Vous êtes actuellement sur le Plan {{planName}}","overLimit":"Limite dépassée","updatePayment":"Mettre à jour le paiement","upgrade":"Mettre à niveau","paymentOverdue":"Paiement en retard","pastDueDescription":"Le paiement de votre abonnement est en retard. Les crédits et limites affichés sont basés sur votre dernier plan payé ({{plan}}).","tryAgain":"Réessayer","trying":"En cours...","monthlyMessages":"Messages mensuels","workspaceTotal":"Total de l'espace de travail","workspaceUsage":"Utilisation de l'espace de travail","dailyMessages":"Messages quotidiens","loadError":"Impossible de charger les statistiques d'utilisation","portalError":"Impossible d'ouvrir la gestion des paiements. Veuillez réessayer.","portalErrorTitle":"Erreur","creditsRenewIn":"Les crédits se renouvellent dans {{timeLeft}}","expired":"Expiré","dailyUsageTitle":"Utilisation quotidienne (Messages)","noUsageData":"Aucune donnée d'utilisation disponible","messagesLabel":"messages","timeDaysHours":"{{days}}j : {{hours}}h","timeHoursMinutes":"{{hours}}h : {{minutes}}min","timeMinutes":"{{minutes}}min"},"basicInformation":{"pageTitle":"Informations de base","pageSubtitleEditable":"Gérez les détails et les paramètres de votre espace de travail.","pageSubtitleReadOnly":"Consultez les détails de l'espace de travail. Seuls les propriétaires et les administrateurs peuvent modifier.","loadingMessage":"Chargement des informations de l'espace de travail...","workspaceNameLabel":"Nom de l'espace de travail","workspaceNamePlaceholder":"Entrez le nom de l'espace de travail","workspaceDescriptionLabel":"Description de l'espace de travail","workspaceDescriptionPlaceholder":"Décrivez votre espace de travail...","workspaceNameEmptyErrorMessage":"Le nom de l'espace de travail ne peut pas être vide","cancelButton":"Annuler","saveButton":"Enregistrer les modifications","savingButton":"Enregistrement...","saveSuccessMessage":"Paramètres de l'espace de travail mis à jour avec succès !","saveErrorMessage":"Échec de la mise à jour des paramètres de l'espace de travail : {{error}}","unknownError":"Erreur inconnue"},"leaveWorkspace":{"title":"Quitter l'espace de travail","description":"Si vous quittez cet espace de travail, vous perdrez l'accès à toutes les applications associées. La propriété de vos applications sera transférée au propriétaire de l'espace de travail.","button":"Quitter l'espace de travail","soleOwnerNote":"Vous ne pouvez pas quitter l'espace de travail car vous êtes le seul propriétaire.","successMessage":"Vous avez quitté l'espace de travail.","workspaceNameFallback":"espace de travail","dialog":{"title":"Quitter {{name}} ?","confirmQuestion":"Êtes-vous sûr de vouloir quitter <bold>{{name}}</bold> ?","transferWarning":"Vos applications dans cet espace de travail seront transférées au propriétaire de l'espace de travail et vous perdrez l'accès.","cancelButton":"Annuler","confirmButton":"Quitter l'espace de travail"}},"menu":{"basicInformation":"Informations de base","planAndBilling":"Plan et facturation","creditUsage":"Utilisation des crédits","members":"Membres","seatsAndMembers":"Sièges et membres","authAndSecurity":"Authentification et sécurité","integrations":"Intégrations","appsConfiguration":"Configuration des applications","analytics":"Analytique","accountSettings":"Paramètres du compte","mcpConnections":"Connexions MCP","skills":"Compétences","connectors":"Connecteurs","manageSubscription":"Gérer l'abonnement","secrets":"Secrets","dataResidency":"Résidence des données"},"guests":{"tabMembers":"Membres","tabGuests":"Invités","title":"Invités","infoBanner":"Les invités sont des utilisateurs externes invités à des applications spécifiques. Ils consomment des crédits du pool partagé de l'espace de travail.","searchPlaceholder":"Rechercher par e-mail ou application...","columnGuest":"Invités","columnApp":"Application","columnInvitedBy":"Invité par","columnCreditsUsed":"Crédits utilisés","pending":"En attente","promoteToEditor":"Promouvoir en Éditeur","promoteToViewer":"Promouvoir en Lecteur","removeFromWorkspace":"Retirer de l'espace de travail","emptyTitle":"Aucun invité pour le moment","emptySubtitle":"Les invités peuvent être ajoutés depuis le flux d'invitation de collaborateurs de l'application.","noResults":"Aucun invité trouvé","noResultsSubtitle":"Aucun invité ne correspond à \\"{{searchTerm}}\\"","promoted":"{{email}} promu en {{role}}","promoteFailed":"Échec de la mise à jour du rôle","setCreditLimit":"Définir la limite de crédits","upgradeForCreditLimit":"Passez au plan Enterprise pour cette fonctionnalité","viewAppAccess":"Voir l'accès aux apps","removeMember":"Retirer le membre","guestRole":"Invité","appAccessTitle":"Accès aux apps de {{name}}","appAccessDescription":"Voir les apps auxquelles cet invité peut accéder dans l'espace de travail.","appAccessLoading":"Chargement...","appAccessEmpty":"Aucun accès aux apps trouvé.","appAccessColumnApp":"Application","appAccessDone":"Terminé"},"members":{"pageTitle":"Membres","pageDescription":"Afficher et gérer les membres et les rôles de cet espace de travail.","tableTitle":"Membres ({{count}})","columnMembers":"Membres","columnCreditsUsed":"Crédits utilisés","columnCreditsUsedWithLimit":"Crédits utilisés (de {{limit}})","columnCreditLimit":"Limite de crédits","columnRole":"Rôle","roleOwner":"Propriétaire","roleAdmin":"Admin","roleEditor":"Éditeur","roleViewer":"Lecteur","pending":"En attente","expired":"Expiré","searchPlaceholder":"Rechercher par nom ou e-mail...","searchPlaceholderMobile":"Rechercher...","inviteMembers":"Inviter des membres","inviteByEmail":"Inviter des membres","bulkInvite":"Invitation groupée","setCreditLimit":"Définir la limite de crédits","removeMember":"Retirer le membre","upgradeTooltip":"Passez au plan Enterprise pour débloquer cette fonctionnalité","default":"(par défaut)","emptyTitle":"Aucun membre pour le moment","emptyTitleNoResults":"Aucun membre trouvé","emptySubtitlePersonal":"Les espaces de travail personnels ne contiennent que vous","emptySubtitleShared":"Commencez par inviter votre premier membre","emptySubtitleNoResults":"Aucun membre ne correspond à \\"{{searchTerm}}\\"","cantChangeOwnRole":"Vous ne pouvez pas modifier votre propre rôle. Demandez à un propriétaire de l'espace de travail de le mettre à jour.","creditLimitTooltip":"Limitez le nombre de crédits que chaque membre peut utiliser depuis le pool de l'espace de travail. Définissez des limites individuellement ou répartissez-les équitablement entre tous les membres.","tableTitleFiltered":"Membres ({{filteredCount}} sur {{totalCount}})","clearSearch":"Effacer la recherche"},"seatsAndMembers":{"pageTitle":"Sièges et membres","pageDescription":"Gérez les sièges de l'espace de travail et les membres de l'équipe.","emptyTitle":"Commencer avec les sièges de l'espace de travail","emptyDescription":"Achetez des sièges pour inviter des membres et commencer à collaborer.","buyFirstSeats":"Achetez vos premiers sièges","planSeats":"Sièges {{planName}}","seatsUsage":"Utilisation des sièges","addSeats":"Ajouter des sièges","removeSeats":"Supprimer des sièges","seatsAvailable_one":"{{count}} siège disponible","seatsAvailable_other":"{{count}} sièges disponibles","buyMoreSeats":"Acheter plus de sièges","expandWorkspace":"Agrandissez votre espace de travail","searchPlaceholder":"Rechercher par e-mail, rôle, statut ou type de siège (ex., starter, pro)...","searchTip":"Astuce : Recherchez des types de sièges comme \\"starter\\", \\"builder\\", \\"pro\\", \\"elite\\" ou \\"sans siège\\""},"inviteDialog":{"title":"Inviter des membres","emailAddress":"Adresse e-mail","role":"Rôle","cancel":"Annuler","invite":"Inviter","inviting":"Invitation en cours...","roleViewer":"Visualiseur","roleEditor":"Éditeur","roleAdmin":"Admin","roleMember":"Membre","errorNoEmail":"Veuillez saisir au moins une adresse e-mail","errorInvalidEmail":"Une ou plusieurs adresses e-mail sont invalides.","errorFallback":"Échec de l'invitation des utilisateurs","toastSingle":"Invitation envoyée à {{email}}","toastMultiple":"{{count}} invitations envoyées avec succès"},"dataResidency":{"title":"Résidence des données","tooltip":"Définit la région de stockage des données pour les applications dans cet espace de travail.","edit":"Modifier","upgradeRequired":"Plan Elite ou supérieur requis pour configurer la résidence des données.","appliesToNewApps":"S'applique aux nouvelles applications créées. Les applications existantes conservent leur région actuelle.","editModal":{"title":"Résidence des données de l'espace de travail","description":"Choisissez où stocker les données des applications que vous créez dans cet espace de travail.","label":"Résidence des données","appliesToNewApps":"S'applique aux nouvelles applications créées. Les applications existantes conservent leur région de données actuelle.","viewAllApps":"Voir la résidence des données pour toutes les applications de l'espace de travail","cancel":"Annuler","save":"Enregistrer","saving":"Enregistrement...","updateSuccess":"Résidence des données mise à jour avec succès","updateError":"Échec de la mise à jour de la résidence des données : {{detail}}","unknownError":"Erreur inconnue"},"appsModal":{"title":"Résidence des données des applications","description":"Voir où sont stockées les données de chaque application dans cet espace de travail.","appName":"Nom de l'application","dataRegion":"Région des données","loading":"Chargement...","noApps":"Aucune application dans cet espace de travail.","migrationInfo":"Besoin de déplacer une application vers une région différente ? <a>Demander une migration.</a>","supportTitle":"Demande de migration de région de données — {{name}}","supportContent":"Je souhaite migrer les données de l'application vers une autre région.\\n\\nEspace de travail : {{name}} ({{id}})\\nRégion par défaut actuelle : {{region}}\\nRégion cible : \\nApplications à migrer : "}},"mcp":{"title":"Connexions MCP","addMcp":"Ajouter MCP","limitReached":"Vous avez atteint la limite de {{max}} serveurs MCP. Supprimez-en un pour ajouter une nouvelle connexion.","description":"Connectez des serveurs MCP personnalisés pour étendre les capacités de construction de Base44 avec des outils et données externes.","descriptionWithLink":"Connectez des serveurs MCP personnalisés pour étendre les capacités de construction de Base44 avec des outils et données externes. <a>En savoir plus sur MCP<icon/></a>","learnMore":"En savoir plus sur MCP","emptyTitle":"Aucun serveur MCP connecté","addCustomMcp":"Ajouter un MCP personnalisé","aria":{"enableConnection":"Activer {{name}}","disableConnection":"Désactiver {{name}}","actionsFor":"Actions pour {{name}}"},"actions":{"editDetails":"Modifier les détails","removeMcp":"Supprimer MCP"},"deleteConfirm":{"title":"Supprimer la connexion MCP","description":"Êtes-vous sûr de vouloir supprimer \\"{{name}}\\" ? Cette action est irréversible.","confirm":"Supprimer","cancel":"Annuler"},"tools":{"availableTools_one":"{{count}} outil disponible","availableTools_other":"{{count}} outils disponibles","more":"+{{count}} de plus","showLess":"Afficher moins","loadingTools":"Chargement des outils..."},"addDialog":{"title":"Ajouter un serveur MCP personnalisé","name":"Nom","namePlaceholder":"ex. Mon serveur MCP","url":"URL","urlExists":"Le serveur MCP existe déjà .","authentication":"Authentification","authNone":"Non requise","authNoneDescription":"Se connecter sans identifiants","authOAuth":"OAuth","authOAuthDescription":"Autoriser à l'étape suivante","customHeaders":"En-têtes personnalisés","optional":"facultatif","headersDescription":"Ajoutez des en-têtes envoyés avec chaque requête (ex. clés API)","headerName":"Nom de l'en-tête","headerValue":"Valeur","addHeader":"Ajouter un en-tête","connectionFailed":"Connexion échouée","serverReady":"Le serveur MCP est prêt à se connecter.","serverReadyWithTools_one":"Le serveur MCP est prêt à se connecter. 1 outil trouvé.","serverReadyWithTools_other":"Le serveur MCP est prêt à se connecter. {{count}} outils trouvés.","toolsFound_one":"{{count}} outil trouvé.","toolsFound_other":"{{count}} outils trouvés.","oauthConfirmed":"Serveur confirmé. Cliquez sur \\"Autoriser et ajouter\\" pour compléter l'authentification OAuth.","test":"Tester","testAndAdd":"Tester et ajouter","authorizeAndAdd":"Autoriser et ajouter","cancel":"Annuler","urlRequired":"Veuillez entrer une URL de serveur.","fieldsRequired":"Veuillez remplir tous les champs obligatoires.","authRequired":"L'authentification est requise pour ce serveur. Sélectionnez OAuth pour continuer.","authNotRequired":"Ce serveur ne nécessite pas OAuth. Essayez d'ajouter sans OAuth.","testFailed":"Le test de connexion a échoué."},"editDialog":{"title":"Modifier le MCP connecté","enabled":"Activé","nameRequired":"Veuillez entrer un nom.","changeInfo":"Pour modifier l'URL ou la méthode d'authentification, créez une nouvelle connexion MCP.","saveChanges":"Enregistrer les modifications","removeMcp":"Supprimer MCP","cancel":"Annuler"},"toast":{"added":"Connexion MCP ajoutée","addedDescription":"Connexion au serveur MCP réussie.","addedWithName":"Connexion \\"{{name}}\\" ajoutée avec succès.","saved":"Modifications enregistrées","savedDescription":"Connexion MCP mise à jour avec succès."}},"skills":{"title":"Compétences","addSkill":"Ajouter une compétence","addSkillLower":"ajouter une compétence","editSkill":"Modifier la compétence","viewSkill":"Voir la compétence","deleteSkill":"Supprimer la compétence","limitReached":"Vous avez atteint la limite de {{max}} compétences. Supprimez-en une pour en ajouter une nouvelle.","description":"Créez des ensembles d'instructions réutilisables que le constructeur IA peut activer pendant les conversations.","emptyDescription":"Les compétences sont des directives enregistrées qui définissent comment l'IA construit vos applications. Elles s'activent lorsque nécessaire pour suivre automatiquement vos règles et bonnes pratiques.","emptyDescriptionWithLink":"Les compétences sont des directives enregistrées qui définissent comment l'IA construit vos applications. Elles s'activent lorsque nécessaire pour suivre automatiquement vos règles et bonnes pratiques. <a>En savoir plus</a>","learnMore":"En savoir plus","getStartedWithTemplate":"Commencer avec un modèle","viewMore":"Voir plus","failedToLoadTemplates":"Échec du chargement des modèles de compétences","templatesUnavailable":"Les modèles prédéfinis peuvent être indisponibles.","failedToLoadTemplate":"Échec du chargement du modèle","form":{"skillName":"Nom de la compétence","namePlaceholder":"ex. brand-guidelines","nameRequired":"Le nom est requis","nameMaxLength":"Le nom doit contenir au maximum {{max}} caractères","namePattern":"Uniquement minuscules, chiffres et tirets (ex. code-review)","nameExists":"Une compétence avec ce nom existe déjà ","description":"Description","descriptionHint":"Indiquez à l'agent quand utiliser cette compétence. Il lit ceci pour décider de l'activer ou non.","descriptionPlaceholder":"ex. Applique les couleurs de marque, la typographie et les modèles de design sur toutes les pages et composants. À utiliser lors de la création de nouvelles pages, la mise à jour des styles ou lorsque l'utilisateur mentionne la marque ou le système de design.","instructions":"Instructions","instructionsHint":"Les règles étape par étape que votre agent suit lorsque cette compétence s'active. Écrivez comme si vous formiez un nouveau membre de l'équipe.","instructionsPlaceholder":"## Couleurs de Marque\\nPrimaire : #1E40AF (navigation, boutons)\\nAccent : #F59E0B (mises en avant, CTAs)\\nArrière-plan : #F8FAFC, Surface : blanc\\n\\n## Typographie\\nTitres : gras, slate foncé\\nCorps : text-sm text-slate-600\\nEspacement uniforme entre les sections\\n\\n## Modèles de Composants\\n- Utiliser Card avec ombre subtile pour les sections de données\\n- Toujours inclure les états de chargement et vides\\n- Formulaires : utiliser des dialogues Sheet pour créer/modifier\\n- Tableaux : lignes alternées, colonnes triables","reviewHint":"Affiné par l'IA. N'hésitez pas à ajuster avant d'enregistrer."},"dialog":{"reviewTitle":"Vérifier votre compétence","reviewSubtitle":"Vérifiez la description et les instructions avant d'enregistrer. Vous pouvez modifier à tout moment.","pickerTitle":"Ajouter une compétence ou commencer de zéro","startFromScratch":"Commencer de zéro","cancel":"Annuler","backToOriginal":"Retour à l'original","saveSkill":"Enregistrer la compétence","saveChanges":"Enregistrer les modifications","refineAndReview":"Affiner et vérifier","refineShort":"Affiner","close":"Fermer","add":"Ajouter","enabled":"Activé"},"toast":{"created":"Compétence créée","createdDescription":"\\"{{name}}\\" a été ajoutée.","failedToCreate":"Échec de la création de la compétence","updated":"Compétence mise à jour","updatedDescription":"\\"{{name}}\\" a été enregistrée.","failedToUpdate":"Échec de la mise à jour de la compétence","refinedTooLong":"La compétence affinée est trop longue","refinedTooLongDescription":"Nous avons essayé de la condenser mais le résultat dépasse toujours la limite de caractères. Essayez de raccourcir le contenu et d'affiner à nouveau.","failedToPolish":"Échec de l'affinage de la compétence","failedToLoad":"Échec du chargement de la compétence","failedToLoadList":"Échec du chargement des compétences","retryLater":"Veuillez réessayer plus tard.","retryAgain":"Veuillez réessayer.","removed":"Compétence supprimée","removedDescription":"La compétence a été supprimée."},"deleteConfirm":{"description":"Êtes-vous sûr de vouloir supprimer \\"{{name}}\\" ? Cette action est irréversible.","confirm":"Supprimer","cancel":"Annuler"},"aria":{"enableSkill":"Activer {{name}}","disableSkill":"Désactiver {{name}}","actionsFor":"Actions pour {{name}}"}},"secrets":{"title":"Secrets","description":"Gérez les identifiants et les jetons d'accès pour l'accès programmatique à votre workspace.","apiKeys":{"title":"Clés d'API","description":"Créez et gérez des clés API pour accéder par programmation à votre espace de travail. Utilisez ces clés pour diffuser des journaux d'audit, connecter votre fournisseur d'identité via SCIM ou extraire des données de l'espace de travail dans un système externe via l'API de surveillance.","createButton":"Créer une clé d'API","limitReached":"Vous avez atteint la limite maximale de {{max}} clés d'API. Supprimez une clé existante pour en créer une nouvelle.","table":{"name":"Nom","key":"Clé","createdBy":"Créé par","created":"Créé","lastUsed":"Dernière utilisation","status":"Statut","never":"Jamais"},"status":{"active":"Actif","disabled":"Désactivé"},"emptyState":{"title":"Aucune clé d'API pour l'instant","description":"Les clés d'API de l'espace de travail permettent un accès programmatique aux API de l'espace de travail (SIEM, SCIM, intégrations personnalisées)."},"actions":{"edit":"Modifier","disableKey":"Désactiver la clé","enableKey":"Activer la clé","deleteKey":"Supprimer la clé","actionsFor":"Actions pour {{name}}"},"sheet":{"editButton":"Modifier","disableButton":"Désactiver","enableButton":"Activer"},"disableConfirm":{"title":"Désactiver la clé d'API ?","description":"La clé d'API <strong>\\"{{name}}\\"</strong> sera immédiatement désactivée. Toutes les intégrations utilisant cette clé cesseront de fonctionner.","note":"Vous pourrez la réactiver ultérieurement.","confirm":"Désactiver la clé","cancel":"Annuler"},"enableConfirm":{"title":"Activer la clé d'API ?","description":"La clé d'API <strong>\\"{{name}}\\"</strong> sera réactivée. Les intégrations utilisant cette clé reprendront leur fonctionnement.","confirm":"Activer la clé","cancel":"Annuler"},"deleteConfirm":{"title":"Supprimer la clé d'API ?","description":"La clé d'API <strong>\\"{{name}}\\"</strong> sera définitivement supprimée. Cette action est irréversible. Toutes les intégrations utilisant cette clé cesseront immédiatement de fonctionner.","confirm":"Supprimer la clé","cancel":"Annuler"},"toast":{"loadError":"Impossible de charger les clés d'API","loadErrorDescription":"Veuillez réessayer.","disabled":"Clé d'API désactivée","disabledDescription":"\\"{{name}}\\" a été désactivée.","disableError":"Impossible de désactiver la clé d'API","enabled":"Clé d'API activée","enabledDescription":"\\"{{name}}\\" a été réactivée.","enableError":"Impossible d'activer la clé d'API","deleted":"Clé d'API supprimée","deletedDescription":"\\"{{name}}\\" a été définitivement supprimée.","deleteError":"Impossible de supprimer la clé d'API","createError":"Impossible de créer la clé d'API","updateError":"Impossible de mettre à jour la clé d'API","copyError":"Impossible de copier la clé d'API","updated":"Clé d'API mise à jour","updatedDescription":"\\"{{name}}\\" a été enregistrée."},"createDialog":{"title":"Créer une clé d'API","titleReveal":"Clé d'API créée","namePlaceholder":"ex. Intégration SIEM","descriptionPlaceholder":"À quoi sert cette clé ?","cancelButton":"Annuler","createButton":"Créer la clé","creatingButton":"Création...","warningMessage":"Copiez cette clé maintenant – vous ne pourrez plus la voir. Traitez-la comme un mot de passe : elle donne accès aux données de votre espace de travail via l'API.","yourApiKey":"Votre clé d'API","doneButton":"Terminé","copyAria":"Copier la clé d'API"},"editDialog":{"title":"Modifier la clé d'API","cancelButton":"Annuler","saveButton":"Enregistrer","savingButton":"Enregistrement..."},"formFields":{"name":"Nom","description":"Description","descriptionOptional":"(facultatif)"}}},"authSecurity":{"title":"Authentification et sécurité","description":"Configurez les paramètres d'authentification et de sécurité pour votre espace de travail.","sso":{"title":"Configuration de l'authentification unique","configureTooltip":"Configurez le SSO pour votre espace de travail","description":"Activez le SSO pour simplifier l'authentification pour les membres de votre espace de travail.","settingUp":"Configuration en cours...","setUp":"Configurer","setUpConfiguration":"Configurer le SSO","enforcedTooltip":"Ce SSO est appliqué à toutes les applications de l'espace de travail, ce qui signifie qu'elles l'utilisent automatiquement pour l'authentification. Pour mettre à jour les paramètres d'application, accédez à Configuration des applications.","enforcedBadge":"Appliqué aux applications","setUpAction":"Configurer","configure":"Configurer","selectProvider":"Sélectionner le fournisseur SSO","cancelSetup":"Annuler la configuration","dismiss":"Fermer","saving":"Enregistrement...","enableSSO":"Activer le SSO","saveSSOSettings":"Enregistrer les paramètres SSO","notAvailableTitle":"Non disponible","notAvailableDesc":"L'authentification unique (SSO) n'est pas disponible pour les espaces de travail personnels.","limitedAccessTitle":"Accès limité","limitedAccessDesc":"Seuls les administrateurs de l'espace de travail peuvent configurer les paramètres SSO.","toast":{"error":"Erreur","failedToLoadSettings":"Échec du chargement des paramètres SSO","failedToLoadAppSettings":"Échec du chargement des paramètres de l'application","ssoEnabled":"SSO activé","ssoEnabledDesc":"L'authentification unique a été activée pour votre espace de travail","ssoDisabled":"SSO désactivé","ssoDisabledDesc":"L'authentification unique a été désactivée","failedToUpdateStatus":"Échec de la mise à jour du statut SSO","success":"Succès","settingsUpdated":"Paramètres SSO mis à jour avec succès","failedToUpdate":"Échec de la mise à jour des paramètres SSO"},"fields":{"client_id":"ID client","client_secret":"Secret client","scope":"Scope","discovery_url":"URL de découverte","tenant_id":"ID locataire","okta_domain":"Domaine Okta","auth_endpoint":"Endpoint d'authentification","token_endpoint":"Endpoint de jeton","userinfo_endpoint":"Endpoint userinfo","jwks_uri":"URI JWKS","name":"Nom du fournisseur"},"autoGenerated":"(Généré automatiquement)","placeholders":{"client_id":"Entrez l'ID client","client_secret":"Entrez le secret client","scope":"Entrez le scope","discovery_url":"Entrez l'URL de découverte","tenant_id":"Votre ID locataire Azure AD","okta_domain":"votre-entreprise","auth_endpoint":"Entrez l'endpoint d'authentification","token_endpoint":"Entrez l'endpoint de jeton","userinfo_endpoint":"Entrez l'endpoint userinfo","jwks_uri":"Entrez l'URI JWKS","name":"Entrez le nom du fournisseur"},"tooltips":{"clientId":"L'ID client OAuth fourni par votre fournisseur d'identité","clientSecret":"Le secret client OAuth fourni par votre fournisseur d'identité (à conserver confidentiel)","scopeGeneral":"Scopes OAuth à demander (openid, email, profile sont couramment utilisés)","scopeGithub":"Scopes OAuth à demander (user:email pour GitHub)","discoveryUrlGoogle":"Point de terminaison de découverte OIDC (préconfiguré pour Google)","discoveryUrlMicrosoft":"Point de terminaison de découverte OIDC généré automatiquement à partir de votre ID locataire","discoveryUrlOkta":"Point de terminaison de découverte OIDC généré automatiquement à partir de votre domaine Okta","discoveryUrlAdvanced":"URL du point de terminaison de découverte OIDC (si pris en charge par votre fournisseur)","tenantId":"ID de locataire Azure AD. Portail Azure → Azure Active Directory → Vue d'ensemble","oktaDomain":"Votre nom de domaine Okta (p. ex., 'votre-entreprise' de votre-entreprise.okta.com)","authEndpointGithub":"Point de terminaison d'autorisation OAuth GitHub (préconfiguré)","authEndpointGeneral":"URL du point de terminaison d'autorisation OAuth","tokenEndpointGithub":"Point de terminaison de token OAuth GitHub (préconfiguré)","tokenEndpointGeneral":"URL du point de terminaison de token OAuth","userinfoEndpointGithub":"Point de terminaison utilisateur de l'API GitHub (préconfiguré)","userinfoEndpointGeneral":"URL du point de terminaison userinfo OAuth","jwksUri":"URI de l'ensemble de clés Web JSON pour la vérification des tokens","providerName":"Nom personnalisé pour votre fournisseur SSO"},"providerFallback":"SSO {{name}}","providers":{"advanced":"Configuration avancée / manuelle"}},"domainVerification":{"title":"Vérification du domaine","label":"Domaine de l'espace de travail","placeholder":"Ajoutez votre domaine","hint":"Le domaine associé à votre espace de travail","check":"Vérifier","verified":"Vérifié","checking":"Vérification","copyFailed":"Échec de la copie dans le presse-papiers","dnsTimedOut":"La vérification DNS a expiré. Veuillez vérifier vos paramètres DNS et réessayer.","domainVerifiedSuccess":"Domaine vérifié avec succès !","enterDomainFirst":"Veuillez d'abord saisir un domaine","domainSaved":"Domaine enregistré. Ajoutez l'enregistrement DNS pour vérifier la propriété.","configFailed":"Échec de la configuration de la vérification du domaine","verificationReset":"La vérification du domaine a été réinitialisée","resetFailed":"Échec de la réinitialisation de la vérification du domaine","addDnsRecords":"Ajouter les enregistrements DNS pour {{domain}}","dnsInstructions":"Connectez-vous à votre fournisseur de domaine, accédez aux paramètres DNS et ajoutez cet enregistrement TXT.","type":"Type","hostName":"Hôte / Nom","value":"Valeur","dnsCheckNote":"La vérification DNS peut prendre quelques minutes. Une fois tout mis à jour, nous vérifierons automatiquement votre domaine.","checkingDns":"Vérification de vos enregistrements DNS...","resetting":"Réinitialisation...","reset":"Réinitialiser","copyLabel":"Copier {{label}}"}}}`),x$={earnBonusCredits:"Gagnez des crédits bonus"},I$={apps:"Apps",superagents:"Superagents",newAgent:"Nouvel Agent",emptyAgents:"Créez votre premier agent et retrouvez vos conversations ici.",allAgents:"Tous les Agents",settings:"Paramètres",inviteMembers:"Inviter des membres",allWorkspaces:"Tous les espaces de travail",org:"Org",createNewWorkspace:"Créer un espace de travail",recents:"Récents",favorites:"Favoris",noFavoritesYet:"Pas encore de favoris",addAppsForQuickAccess:"Ajoutez vos apps pour un accès rapide",view_all:"Tout voir"},R$={pageTitle:"Acheter une Carte Cadeau Base44",pageSubtitle:"Offrez le plaisir de créer. Envoyez une carte cadeau à un ami.",tabBuy:"Acheter une Carte Cadeau",tabPurchased:"Achetées",successTitle:"Carte cadeau achetée avec succès !",successDescription:"Le destinataire recevra un e-mail avec le code de la carte cadeau.",successDescriptionPdf:"Vérifiez votre e-mail pour une carte cadeau imprimable à offrir en personne.",dismissSuccess:"Fermer le message de succès",amount:"Montant",customAmount:"$ Personnalisé",customAmountPlaceholder:"{{symbol}} Montant personnalisé",customAmountError:"Le montant doit être entre {{min}} et {{max}}",creditsInfo:"Cette carte cadeau comprend <strong>{{credits}} crédits de messages</strong> pour créer des apps",deliveryMethodTitle:"Choisir le mode de livraison",deliveryEmail:"Envoyer un e-mail au destinataire (immédiatement après l'achat)",deliveryPdf:"M'envoyer un e-mail (PDF à imprimer)",recipientTitle:"À",recipientName:"Nom",recipientNamePlaceholder:"Nom du destinataire",recipientEmail:"E-mail",recipientEmailPlaceholder:"E-mail du destinataire",messageLabel:"Message de la carte cadeau (facultatif)",messagePlaceholder:"Ajouter un message personnel...",suggestMessage:"Suggérer un message",suggestFallbackName:"ami",messageCharCount:"{{count}}/300 caractères",senderTitle:"De",senderName:"Votre nom",senderNamePlaceholder:"Votre nom",submitButton:"Continuer l'achat",submitting:"Traitement en cours...",errorGeneric:"Une erreur est survenue",historyEmpty:"Pas encore de cartes cadeaux. Achetez-en une pour un ami !",historyTo:"Pour {{name}}",historyCodeLabel:"Code de la carte cadeau",historyCopy:"Copier",historyCopied:"Copié",historyRedeemed:"Cette carte cadeau a été utilisée",historyRedeemedOn:"Cette carte cadeau a été utilisée le {{date}}",historySentTo:"Envoyée à {{email}}",statusSent:"Envoyée",statusRedeemed:"Utilisée",statusExpired:"Expirée",statusProcessing:"En traitement",statusPending:"En attente",statusRevoked:"Révoquée",designTitle:"Choisir un design",historyActions:"Actions",designClassic:"Classique",designSunrise:"Aurore",designOcean:"Océan",cardLabel:"Carte Cadeau",cardCreditsLabel:"crédits de messages",cardFor:"Pour {{name}}",cardDefaultName:"Votre Ami",historyError:"Impossible de charger les cartes cadeaux. Veuillez réessayer.",historyDateIssued:"Date d'émission",historyRecipient:"Destinataire",historyAmount:"Montant",historyStatus:"Statut",historyCode:"Code",historySenderDetails:"Détails de l'expéditeur",historySentToYou:"Envoyée à vous",historyViewCode:"Voir le code",historyHideCode:"Masquer le code",historyDownloadPdf:"Télécharger le PDF",historyResend:"Renvoyer",historyResendSuccess:"E-mail de carte cadeau renvoyé avec succès !",historyResendError:"Échec du renvoi de l'e-mail. Veuillez réessayer.",historyDownloadError:"Échec du téléchargement. Veuillez réessayer.",historyCredits:"crédits",emailInvalid:"Veuillez entrer une adresse e-mail valide",buyGiftCard:"Acheter une Carte Cadeau",giftAndReferrals:"Cadeaux & Parrainages",redeemTitle:"Vous avez reçu une carte cadeau !",redeemDescription:"Une fois échangés, les crédits seront appliqués à votre espace de travail.",redeemSelectWorkspace:"Sélectionner un espace de travail",redeemBackToWorkspace:"Retour à l'espace de travail",redeemCheckCreditUsage:"Vérifier l'utilisation des crédits",redeemErrorDescription:"Ce code a déjà été utilisé et ne peut pas être échangé à nouveau. Si vous n'êtes pas sûr de ce qui s'est passé, vous pouvez vérifier vos crédits ou contacter le support.",redeemDefaultWorkspace:"cet",error:"Erreur",redeemSuccess:"Carte cadeau utilisée !",redeemSuccessDescription:"{{credits}} crédits ajoutés à {{workspace}}.",redeemButton:"Utiliser la carte cadeau",redeemNotNow:"Pas maintenant",redeemDocsLink:"Découvrez comment fonctionnent les crédits de cartes cadeaux dans <docsLink>notre documentation</docsLink>",redeemCouponDescription:"Utilisez-la pour obtenir {{amount}} de réduction sur votre abonnement.",redeemCouponAppliedTitle:"Carte cadeau appliquée !",redeemCouponReadyTitle:"Carte cadeau prête à utiliser !",redeemCouponNoWorkspace:"Aucun espace de travail sélectionné",coupon:{title:"Utiliser un coupon ou une carte cadeau",description:"Entrez votre code pour ajouter des crédits à votre solde.",placeholder:"Entrez votre code",apply:"Appliquer",success:"Coupon appliqué avec succès !",invalidCode:"Le code est invalide. Veuillez réessayer.",notFound:"Code promo introuvable. Vérifiez le code et réessayez.",giftCardNotFound:"Carte cadeau introuvable. Vérifiez le code et réessayez.",redeemFailed:"Impossible d'utiliser la carte cadeau. Veuillez réessayer."},errors:{invalidRecipientEmail:"Veuillez entrer une adresse e-mail valide",recipientEmailRequired:"L'adresse e-mail du destinataire est obligatoire",checkoutFailed:"Impossible d'initier l'achat. Veuillez réessayer.",confirmPurchaseFailed:"Impossible de confirmer l'achat. Veuillez réessayer.",alreadyRedeemed:"Cette carte cadeau a déjà été utilisée",notAvailable:"Cette carte cadeau ne peut pas être utilisée",expired:"Cette carte cadeau a expiré",notWorkspaceMember:"Vous n'êtes pas membre de l'espace de travail sélectionné",networkError:"Erreur réseau. Veuillez vérifier votre connexion internet et réessayer.",rateLimitExceeded:"Trop de tentatives. Veuillez réessayer plus tard.",permissionDenied:"Seuls les propriétaires de l'espace de travail peuvent utiliser les cartes cadeaux. Demandez à un propriétaire d'appliquer ce code.",invalidPlanPrice:"Ce plan n'est pas disponible pour le paiement par carte cadeau. Veuillez sélectionner un autre plan."},creditBanner:"Vous avez {{amount}} de crédit de carte cadeau sur votre compte. Il sera appliqué automatiquement à votre prochaine facture.",upgradeGiftCardWarning:"Votre plan actuel a été acheté avec une carte cadeau. Le crédit de la carte cadeau n'est pas transféré lors des mises à niveau — le prix au prorata vous sera facturé."},z$={back:"Retour"},M$="Chargement...",N$={message:"Connecté en tant que <strong>{{email}}</strong> — ne correspond pas au compte attendu.",switchAccount:"Changer de compte",dismiss:"Fermer la bannière"},F$={topBar:S$,createWorkspacePage:C$,workspaceMenu:D$,agentEditorMenu:T$,credits:E$,community:P$,workspaceSettings:_$,referralCta:x$,sidebar:I$,giftCards:R$,common:z$,loading:M$,userMismatch:N$},L$={notifications:"Notifications",latestNews:"Dernières nouvelles"},j$={loading:"Chargement...",loadingMore:"Chargement en cours...",errorLoading:"Impossible de charger les notifications",noNotifications:"Aucune notification pour l'instant",noMoreNotifications:"Aucune autre notification",noNews:"Aucune actualité pour l'instant"},O$={markAllAsRead:"Tout marquer comme lu",readMore:"Lire la suite",showLess:"Voir moins",upgrade:"Améliorer",percentOff:"{{percent}}% de réduction"},B$={tabs:L$,states:j$,actions:O$},U$="Plan et facturation",q$="Gérer l'abonnement",V$={planAndBilling:"Plan et facturation"},$$={details:"Détails de l'abonnement",cancelPlan:"Annuler le plan",cancelling:"Annulation...",explorePlans:"Explorer les plans",reactivatePlan:"Réactiver le plan",reactivating:"Réactivation...",upgradePlan:"Mettre à niveau le plan",updatePayment:"Mettre à jour le paiement",managePlan:"Gérer le plan",yourPlan:"Votre plan",creditsPerMonth:"Crédits par mois",price:"Prix",nextBillingDate:"Prochaine date de facturation",highlights:"Points forts du plan",cancelChange:"Annuler le changement",cancelTooltip:"Pour annuler votre abonnement, annulez d'abord le passage à un plan inférieur planifié",currentlyUsing:"Vous utilisez actuellement le plan <bold>{{plan}}</bold>",subscriptionEndsOn:"Votre abonnement se termine le {{date}}",subscriptionRenewsOn:"Votre abonnement se renouvelle le {{date}}",noActiveSubscription:"Aucun abonnement actif",keepSubscription:"Vous souhaitez conserver votre abonnement ? Cliquez sur <manageLink>Gérer le plan</manageLink> et annulez le changement.",planChangeNotice:"Votre plan passera à {{plan}} à la fin de votre cycle de facturation actuel.",cancelOnDate:"Votre plan est programmé pour être annulé le {{date}}. Réactivez-le pour conserver vos crédits et fonctionnalités actuels.",cancelNoDate:"Votre abonnement est programmé pour être annulé. Réactivez-le pour conserver vos crédits et fonctionnalités actuels.",free:"Gratuit",monthly:"mensuel",yearly:"annuel",subscriptionCancelled:"Abonnement annulé",staysActiveUntil:"Tout reste actif jusqu'au {{date}}",creditsFormat:"{{messageCredits}} message | {{integrationCredits}} intégration",priceFormat:"{{amount}} {{symbol}}/{{period}}"},W$={privateApps:"Applications privées",inAppCodeEditing:"Édition de code dans l'application",unlimitedApps:"Applications illimitées",removeBase44Badge:"Supprimer le badge Base44",connectDomain:"Connecter un domaine",backendFunctions:"Fonctions backend",github2WaySync:"Synchronisation bidirectionnelle avec Github",customOAuth:"OAuth personnalisé depuis Google Console",aiModelSelection:"Sélection du modèle IA",stripeIntegration:"Intégration Stripe",customEmailDomain:"Domaine e-mail personnalisé",appStoreFileDownloads:"Téléchargements de fichiers de la boutique d'applications"},G$={title:"Paiement en retard",description:"Le paiement de votre abonnement est en retard. Veuillez mettre à jour votre méthode de paiement pour rétablir l'accès complet aux fonctionnalités de votre plan.",tryAgain:"Réessayer",trying:"En cours..."},H$={title:"Méthode de paiement",manage:"Gérer",noPaymentMethod:"Aucune méthode de paiement enregistrée",default:"Par défaut",expires:"Expire {{month}}/{{year}}"},Y$={title:"Informations de facturation",manage:"Gérer",name:"Nom",email:"E-mail",billingAddress:"Adresse de facturation",noInformation:"Aucune information de facturation disponible"},K$={title:"Historique de facturation",noHistory:"Aucun historique de facturation disponible",loading:"Chargement de l'historique de facturation...",loadError:"Échec du chargement des données de facturation",planDescription:"Plan {{plan}}",downloadInvoice:"Télécharger la facture"},Z$={managingBillingFor:"Gestion de la facturation pour <bold>{{name}}</bold>",subscriptionRenewsOn:"L'abonnement de l'espace de travail se renouvelle le {{date}}",noActiveSubscription:"Aucun abonnement actif pour l'espace de travail",manage:"Gérer",defaultName:"espace de travail",addSeats:"Ajouter des licences",loadError:"Échec du chargement de l'historique de facturation de l'espace de travail",workspaceSeats:"Licences de l'espace de travail",contactAdmin:{title:"Plan de l'espace de travail",subtitle:"Géré par votre espace de travail",body:"Besoin de plus de crédits ? Contactez l'administrateur de votre espace de travail pour améliorer le plan de votre équipe."}},J$={portalError:"Impossible d'ouvrir le portail de facturation. Veuillez réessayer plus tard ou contacter le support.",paymentPortalError:"Impossible d'ouvrir la gestion des paiements. Veuillez réessayer.",scheduleCancelSuccess:"Planification de l'abonnement annulée avec succès",scheduleCancelError:"Échec de l'annulation de la planification de l'abonnement. Veuillez réessayer plus tard.",subscriptionCancelError:"Échec de l'annulation de l'abonnement. Veuillez réessayer."},Q$={title:U$,manageSubscription:q$,breadcrumb:V$,subscription:$$,features:W$,pastDue:G$,paymentMethod:H$,billingInformation:Y$,billingHistory:K$,workspace:Z$,toasts:J$},X$={title:"Parlons",subtitle:"Contactez notre équipe pour découvrir comment Base44 peut aider votre organisation.",form:{firstName:"Prénom*",lastName:"Nom*",workEmail:"E-mail professionnel*",companyWebsite:"Site web de l'entreprise*",role:"Poste*",discussion:"Qu'aimeriez-vous aborder ?",submit:"Envoyer"},success:{title:"Merci de nous avoir contactés !",description:"Nous avons bien reçu votre message et notre équipe vous répondra dans les 24 heures. Nous sommes ravis de vous accompagner dans votre parcours Base44 !"}},eW={iso27001:{title:"ISO 27001",subtitle:"Gestion de la sécurité ISO"},soc2:{title:"SOC 2 Type II",subtitle:"SOC pour les organisations de services"},gdpr:{title:"RGPD",subtitle:"Règlement sur la protection des données et la vie privée"}},tW={fiveApps:"5 applications",unlimitedCollaborators:"Collaborateurs illimités",userAnalytics:"Analyses des utilisateurs",aiAgents:"Agents IA",limitedDb:"Base de données limitée à 512 Mo",unlimitedApps:"Applications illimitées",unlimitedNumberOfApps:"Nombre illimité d'applications",connectDomain:"Connecter un domaine",connectorsIntegrations:"Connecteurs et intégrations",backendFunctions:"Fonctions backend",scaledUserAnalytics:"Analyses utilisateurs évolutives",privateApps:"Applications privées",flexibleAiModelControl:"Contrôle flexible du modèle IA",removeBase44Branding:"Supprimer la marque Base44",inAppCodeEditing:"Édition de code dans l'application",inAppCodeEdits:"Édition de code dans l'application",freeDomainOneYear:"Domaine gratuit pour 1 an",creditsToShare:"25 crédits à partager avec un ami",githubTwoWayIntegration:"Intégration GitHub bidirectionnelle",githubIntegration:"Intégration GitHub",earlyAccessBeta:"Accès anticipé aux fonctionnalités bêta",premiumSupport:"Support Premium",sso:"SSO",prioritySupport:"Support prioritaire",workspacePublishingControls:"Contrôles de publication de l'espace de travail",workspaceTemplates:"Modèles d'espace de travail",ipWhitelisting:"Liste d'IPs autorisées",workspaceUsageAnalytics:"Analyses d'utilisation de l'espace de travail",userRolesPermissions:"Rôles et permissions des utilisateurs",dataTrainingOptOut:"Désactivation de l'entraînement des données",scim:"SCIM",creditConsumptionControl:"Contrôle de la consommation de crédits",dedicatedAccountManager:"Gestionnaire de compte dédié",dedicatedSolutionEngineer:"Ingénieur solutions dédié",enterpriseSupport:"Support entreprise",customSecurityCapabilities:"Capacités de sécurité personnalisées",customDatabaseStorage:"Stockage de base de données personnalisé",customRateLimits:"Limites de débit personnalisées",tailoredOnboarding:"Onboarding et accompagnement personnalisés",workspaceMonitoringApi:"API de surveillance de l'espace de travail"},aW={unlimitedApps:"Applications illimitées",unlimitedCollaboratorsSharedCredits:"Collaborateurs illimités avec crédits partagés",customDomain:"Domaine personnalisé",removeBase44Branding:"Supprimer la marque Base44",builtInIntegrations:"Intégrations incluses",automations:"Automatisations",chooseAiModel:"Choisissez votre modèle IA",inAppCodeEditing:"Édition de code dans l'app",twoWayGithubSync:"Synchronisation bidirectionnelle GitHub",privateTemplates:"Modèles privés",earlyAccessNewFeatures:"Accès anticipé aux nouvelles fonctionnalités",prioritySupport:"Support prioritaire"},nW={choosePlan:"Choisissez le forfait qui vous convient",usage:"Utilisation",back:"Retour",chooseBillingCycleUpgrade:"Choisissez votre cycle de facturation pour passer à {{planName}}",selectBillingCycle:"Choisissez un cycle de facturation pour votre forfait {{planName}}",viewBilling:"Voir la facturation",seePricing:"Voir les tarifs"},iW={desktop:"Base44 fait partie de <wixLogo/> - Approuvé par plus de 250 millions de personnes dans le monde",mobile:{line1:"Base44 fait partie de <wixLogo/>",line2:"Approuvé par plus de 250 millions de personnes dans le monde"}},rW={badge:{recommended:"Recommandé",popular:"Populaire",mostPopular:"Le plus populaire",currentPlan:"Plan actuel",discountOff:"{{discount}} de réduction"},button:{processing:"Traitement en cours...",notAvailable:"Non disponible",manageSubscription:"Gérer l'abonnement",managePlan:"Gérer le plan",currentPlan:"Plan actuel",upgradePlan:"Améliorer le plan",upgradeTo:"Passer à {{planName}}",downgradeTo:"Rétrograder vers {{planName}}",downgradePlan:"Rétrograder le plan",switchPlan:"Changer de plan",subscribeTo:"S'abonner à {{planName}}",bookDemo:"Réserver une démo",getPlan:"Obtenir {{planName}}"},credits:{monthly:"Crédits mensuels",integration:"Crédits d'intégration",monthlyLower:"crédits mensuels",integrationLower:"crédits d'intégration",messageCredits:"crédits de messages",perMonth:"/mois",sharedAcrossUsers:"Partagé entre utilisateurs illimités",messageShort:"messages",integrationShort:"intégration"},features:{highlights:"Points forts du plan :",allInBusinessPlus:"Tout dans Business plus :",allInBuilderPlus:"Tout dans Builder plus :",unlimitedAgents:"Nombre illimité d'agents"},free:{dailyCredits:"{{dailyCredits}} crédits quotidiens (jusqu'à {{monthlyMax}}/mois)",integrationCredits:"{{amount}} crédits d'intégration"},enterprise:{description:"Gouvernance, évolutivité et support de niveau entreprise, avec un modèle de <bold>tarification personnalisée</bold> et un montant de crédits personnalisé."}},oW={offTiers:"Formules à -30%",currentPlan:"Plan actuel",popular:"Populaire",messageCredits:"crédits de messages",integrationCredits:"crédits d'intégration",perMonth:"/mois",placeholder:"Sélectionner des crédits",footer:{cantFind:"Vous ne trouvez pas un plan adapté ?",contactUs:"Nous contacter"}},sW={button:{cancel:"Annuler",confirmUpgrade:"Confirmer la mise à niveau",confirmDowngrade:"Confirmer la rétrogradation",confirmSwitch:"Confirmer le changement",processing:"Traitement en cours...",continue:"Continuer"},upgrade:{title:"Confirmer la mise à niveau de l'abonnement",upgradeDescription:"Vous êtes sur le point de passer au plan {{planName}} pour <price/>. Votre abonnement sera mis à jour immédiatement et vous serez facturé au prorata pour le reste de votre cycle de facturation.",upgradeDescriptionYearly:"Vous êtes sur le point de passer au plan annuel {{planName}} pour <price/>. Votre abonnement sera mis à jour immédiatement et vous serez facturé au prorata pour le reste de votre cycle de facturation.",upgradeDescriptionShort:"Vous êtes sur le point de passer au plan {{planName}} pour <price/>. Votre abonnement sera mis à jour immédiatement et vous serez facturé au prorata."},downgrade:{title:"Confirmer la rétrogradation de l'abonnement",description:"Vous êtes sur le point de passer au plan {{planName}} pour {{price}}/mois. Ce changement prendra effet à la fin de votre cycle de facturation actuel."},switch:{title:"Changer de plan",switchDescription:"Le passage au plan {{planName}} mettra à jour vos fonctionnalités disponibles et fixera vos limites mensuelles à <bold>{{messageCredits}} crédits de messages et {{integrationCredits}} crédits d'intégration.</bold>",nextBillingDate:"Ces modifications prendront effet le {{date}}, au début de votre prochain cycle de facturation.",nextBillingCycle:"Ces modifications prendront effet au début de votre prochain cycle de facturation."},manageSubscription:{title:"Gérer votre abonnement",description:"Choisissez comment vous souhaitez gérer votre abonnement {{planName}}.",upgradeToYearly:"Passer à la facturation annuelle",upgradeToYearlySavings:"Économisez et obtenez un domaine gratuit + 25 crédits à partager",upgradeToYearlySavingsStarter:"Économisez et obtenez 25 crédits à partager",managePayments:"Gérer les paiements",managePaymentsDescription:"Mettre à jour le mode de paiement, voir les factures et plus",managePaymentsDescriptionAlt:"Mettre à jour le mode de paiement, voir les factures et plus"},upgradeToYearly:{titleV1:"Confirmer la mise à niveau de l'abonnement",titleV2:"Améliorer le plan",descriptionV2:"Après la mise à niveau, vous serez facturé au prorata pour le temps restant de votre plan actuel. À partir de votre prochaine date de facturation, vous serez facturé le prix complet du plan de {{price}} × 12 mois.",benefitsTitle:"🎠Avantages annuels",freeDomain:"Domaine gratuit pendant un an",shareCredits:"25 crédits à partager avec des amis",betterValue:"Meilleure valeur avec la facturation annuelle"}},lW={title:"Questions fréquemment posées",whatIsBase44:{question:"Qu'est-ce que Base44 ?",answer:{description:"Base44 est une plateforme alimentée par l'IA qui vous permet de créer des applications logicielles personnalisées sans programmation. Elle utilise le traitement du langage naturel pour comprendre vos besoins et générer des logiciels fonctionnels basés sur vos descriptions.",accessibility:"Notre plateforme est conçue pour être conviviale et accessible aux utilisateurs non techniques, vous permettant de créer des applications puissantes à travers de simples conversations avec notre IA."}},freePlan:{question:"Qu'est-ce qui est inclus dans le plan gratuit ?",answer:{allowances:"Le plan gratuit vous offre une allocation quotidienne de 5 messages et un plafond mensuel de 25 messages au total. Vous obtenez également 100 crédits d'intégration pour expérimenter avec diverses intégrations comme l'authentification, la base de données et les analyses.",coreAccess:"Avec le plan gratuit, vous avez accès à tous les types d'intégration principaux, vous permettant de créer des applications entièrement fonctionnelles avec authentification des utilisateurs, stockage des données et plus encore – le tout gratuitement."}},integrationCredits:{question:"Que sont les crédits d'intégration ?",answer:{definition:"Les crédits d'intégration sont utilisés pour accéder aux diverses intégrations de Base44 au sein de votre application.",capabilities:"Ces intégrations améliorent les fonctionnalités de votre application, notamment les LLMs, le téléchargement de fichiers, la compréhension d'images, la génération d'images, l'envoi d'e-mails, l'envoi de SMS, les requêtes de base de données, et bien plus encore. Le nombre de crédits d'intégration dans votre plan détermine le nombre de ces requêtes que vous pouvez effectuer par mois.",expiration:"Les crédits non utilisés expirent à la fin de votre cycle de facturation mensuel (à votre date de réinitialisation).",learnMore:"En savoir plus sur la façon dont les crédits sont utilisés dans la base de connaissances."}},appTypes:{question:"Quels types d'applications puis-je créer avec Base44 ?",answer:{examples:"Base44 est polyvalent et peut être utilisé pour créer une large gamme d'applications, notamment mais sans s'y limiter : des produits SaaS entièrement fonctionnels, des outils de back-office, des applications de productivité personnelle, des portails clients et des outils d'automatisation des processus métier.",prototyping:"Vous pouvez également l'utiliser pour le prototypage rapide et la création de MVPs, vous permettant de valider vos idées rapidement sans investir dans des ressources de développement coûteuses."}},ownership:{question:"À qui appartiennent les applications créées avec Base44 ?",answer:{yourProperty:"Entre vous et Base44, toutes les applications et tous les contenus générés via notre plateforme sont considérés comme votre propriété. Nous ne revendiquons aucun droit de propriété sur ce que vous créez avec Base44.",intellectualProperty:"Votre propriété intellectuelle vous appartient, et vous êtes libre d'utiliser, de modifier, de distribuer ou de vendre les applications générées dans les limites autorisées par la loi."}},deployment:{question:"Comment les applications Base44 sont-elles déployées ?",answer:{instantAccess:"Avec Base44, le déploiement est incroyablement simple. Vos applications sont instantanément utilisables et partageables dès que vous les créez. Utilisez simplement et partagez l'URL de votre application avec d'autres.",noHosting:"Il n'est pas nécessaire d'effectuer des étapes d'hébergement ou de déploiement séparées, ce qui rend incroyablement facile la mise en service rapide de votre application."}},planLimits:{question:"Que se passe-t-il si j'atteins les limites de mon plan ?",answer:{limitations:"Lorsque vous atteignez votre limite quotidienne de messages, vous devrez attendre jusqu'au lendemain pour en envoyer davantage. Si vous atteignez votre limite mensuelle, vous ne pourrez pas envoyer de messages supplémentaires ni effectuer de requêtes d'intégration jusqu'au début de votre prochain cycle de facturation.",upgradeOption:"Pour éviter les interruptions dans le développement et l'utilisation de votre application, vous pouvez passer à un plan de niveau supérieur avec des limites augmentées à tout moment depuis votre tableau de bord de facturation."}}},cW={pendingChange:{title:"Changement d'abonnement en attente",message:"Vous avez un changement d'abonnement vers le plan {{tierName}} prévu pour prendre effet à la fin de votre cycle de facturation actuel.",subMessage:`Remarque : Pour annuler votre abonnement, annulez d'abord ce changement, puis utilisez "gérer les paiements" pour annuler.`,cancelChange:"Annuler le changement",cancelling:"Annulation en cours..."},cancellation:{title:"Annulation d'abonnement programmée",message:"Votre abonnement prendra fin le {{endDate}}. D'ici là , vous avez un accès complet à toutes les fonctionnalités.",subMessage:"Vous souhaitez conserver votre abonnement ? Vous pouvez le réactiver en un clic.",managePayments:"Gérer les paiements",processing:"Traitement en cours..."}},dW={currentPlan:"Votre plan actuel est {{displayName}},",withCredits:"avec {{messageCredits}} crédits de messages et {{integrationCredits}} crédits d'intégration."},uW={title:"Avantages de Base44 :",responsiveVisualEditor:"Éditeur visuel responsive",builtInBackend:"Backend intégré",userManagement:"Gestion des utilisateurs"},pW={title:"Paiement d'abonnement en retard",tryAgain:"Réessayer",trying:"Tentative en cours...",updatePaymentMethod:"Mettre à jour le moyen de paiement",description:"Votre dernier paiement a échoué. Réessayez ou mettez à jour votre moyen de paiement pour restaurer l'accès complet à votre plan."},mW={error:"Erreur",success:"Succès",checkoutError:"Impossible de créer la session de paiement. Veuillez réessayer plus tard.",subscriptionUpdated:"Abonnement mis à jour",downgradeScheduled:"Votre abonnement a été programmé pour être rétrogradé à la fin de votre cycle de facturation.",upgradeSuccess:"Votre abonnement a été mis à niveau avec succès. Les changements seront reflétés sous peu.",updateError:"Impossible de mettre à jour l'abonnement. Veuillez réessayer plus tard.",portalError:"Impossible d'ouvrir le portail de facturation. Veuillez réessayer plus tard.",scheduleCancelSuccess:"Programmation d'abonnement annulée avec succès",scheduleCancelError:"Impossible d'annuler la programmation d'abonnement. Veuillez réessayer plus tard.",paymentPortalError:"Impossible d'ouvrir la gestion des paiements. Veuillez réessayer."},gW={loadError:"Impossible de charger les informations de facturation de l'espace de travail",loadErrorAlert:"Impossible de charger les informations de facturation de l'espace de travail. Veuillez réessayer plus tard.",seatTypePlan:"Plan {{seatType}}",currentPlanContact:"Vous êtes actuellement sur le plan {{seatType}}. Pour effectuer des modifications, veuillez contacter votre {{adminType}} d'espace de travail.",workspaceOwner:"Propriétaire de l'espace de travail :",workspaceAdmin:"Administrateur de l'espace de travail :",viewerAccess:"Accès en lecture seule",viewerAccessDescription:"Vous avez actuellement un accès en lecture seule dans cet espace de travail. Pour obtenir un siège avec accès complet, veuillez contacter votre {{adminType}} d'espace de travail.",adminAccessMessage:"<strong>Accès administrateur :</strong> Visitez le <a>tableau de bord de l'espace de travail</a> pour gérer les sièges, la facturation et les membres de l'équipe.",adminTypes:{owner:"propriétaire",administrator:"administrateur"}},hW={loadError:"Impossible de charger les informations de l'espace de travail. Veuillez réessayer plus tard.",workspacePlan:"Plan de l'espace de travail :",renews:"Renouvellement :",workspaceOwner:"Propriétaire de l'espace de travail",contactOwner:"Pour les modifications de facturation ou les questions sur l'abonnement, contactez le propriétaire de votre espace de travail.",ownerLabel:"Propriétaire de l'espace de travail :",adminAccessMessage:"<strong>Accès administrateur :</strong> Visitez la page des <a>membres de l'espace de travail</a> pour gérer les membres.",billingManagedByOwner:"La facturation est gérée par le propriétaire de votre espace de travail. Contactez le propriétaire indiqué ci-dessus pour toute question liée à la facturation.",roles:{owner:{title:"Propriétaire",description:"Accès complet à la facturation, aux paramètres et à la gestion des membres de l'espace de travail."},admin:{title:"Administrateur",description:"Peut gérer les paramètres et les membres de l'espace de travail, mais ne peut pas modifier la facturation."},editor:{title:"Éditeur",description:"Peut créer et modifier des apps dans cet espace de travail."},viewer:{title:"Lecteur",description:"Peut consulter les apps dans cet espace de travail en lecture seule."},member:{title:"Membre",description:"Membre de l'équipe avec accès aux apps de l'espace de travail."},guest:{title:"Invité",description:"Collaborateur externe avec accès à des apps spécifiques dans cet espace de travail."}}},fW={title:"Sécurité et conformité",iso:{title:"ISO/IEC 27001",subtitle:"Gestion de la sécurité ISO/IEC"},soc2:{title:"SOC 2 Type II",subtitle:"SOC pour les organisations de services"},gdpr:{title:"GDPR",subtitle:"Règlement sur la protection des données et la vie privée"}},vW={title:"Base44 pour les Entreprises",subtitle:"Permettez aux grandes organisations de créer des solutions parfaitement adaptées à leurs équipes, en toute sécurité et à grande échelle",contactUs:"Nous contacter",features:{onboarding:{title:"Intégration et Formation",description:"Des plans d'intégration personnalisés combinés à des formations en direct et des ressources, conçus pour aider les administrateurs et les utilisateurs finaux à adopter rapidement la solution."},accountTeam:{title:"Équipe de Compte Dédiée",description:"Collaborez avec un responsable de compte et un ingénieur solution désignés, offrant des conseils directs, des escalades et un alignement sur la feuille de route."},prioritySupport:{title:"Support prioritaire, garanti",description:"Bénéficiez d'une assistance prioritaire garantie et de temps de réponse définis via un canal de support dédié."},capabilities:{title:"Fonctionnalités de Niveau Entreprise",description:"Des fonctionnalités de sécurité, de conformité, de gestion et de surveillance offrant le contrôle et la flexibilité nécessaires à grande échelle."}}},bW={yearly:"Annuel",monthly:"Mensuel",yearlyInline:"annuel",monthlyInline:"mensuel",monthlyCredits:"Crédits mensuels",integrationCredits:"Crédits d'intégration",priceSuffixYearly:" × 12 mois",priceSuffixMonthly:" / par mois",off:"REMISE",save:"ÉCONOMISEZ",discountBadge:"{{discount}} REMISE",saveBadge:"ÉCONOMISEZ {{amount}}",planNotFound:"Tarifs du forfait non disponibles. Veuillez revenir en arrière et réessayer.",upgradeDialogTitle:"Confirmer la mise à niveau de l'abonnement",upgradeDialogDescription:"Vous êtes sur le point de passer au forfait {{planName}} pour <price/>/mois. Votre abonnement sera mis à jour immédiatement et un montant au prorata vous sera facturé pour le reste de votre cycle de facturation.",noteMonthlyExcludes:"NOTE : L'abonnement mensuel n'inclut pas :",whatsIncluded:"Ce qui est inclus dans le forfait {{period}}",chooseYearly:"Choisissez un abonnement <yearlyLink>annuel</yearlyLink> pour tirer le meilleur parti de votre forfait premium",yearlyFeatures:{discount:"Profitez d'une remise spéciale et économisez",freeDomain:"Domaine gratuit pendant 1 an",shareCredits:"Recevez 25 crédits à partager avec un ami"},monthlyFeatures:{discount:"Remise spéciale et économies",freeDomain:"Domaine gratuit pendant 1 an",shareCredits:"25 crédits à partager avec un ami"},planNotAvailable:"Tarification du forfait non disponible. Veuillez réessayer.",goBack:"Retour",continueToCheckout:"Continuer vers le paiement",confirmSubscriptionUpgrade:"Confirmer la mise à niveau de l'abonnement",upgradeDescription:"Vous êtes sur le point de passer au forfait {{planName}} pour <strikethrough>{{originalPrice}}</strikethrough>{{price}}/mois. Votre abonnement sera mis à jour immédiatement et un montant au prorata vous sera facturé pour le reste de votre cycle de facturation.",cancel:"Annuler",confirmUpgrade:"Confirmer la mise à niveau",processing:"Traitement...",studentDiscountFootnote:"L'offre s'applique à la première année (12 mois) d'un nouveau plan Starter. Utilisation unique par utilisateur ; la réduction ne peut pas être réactivée après une annulation."},yW={bannerTitle:"Étudiant ou enseignant ? Jusqu'à {{percent}}% de réduction sur le plan Starter",bannerSubtitle:"Vérifiez votre e-mail universitaire pour débloquer des tarifs réduits",verifiedWith:"Vérifié avec {{email}} - jusqu'à {{percent}}% de réduction",starterPlan:"Plan Starter",active:"Actif",dialogTitle:"Réduction étudiante",surveyTitle:"Parlez-nous de vous",alreadyActiveDesc:"Votre réduction étudiante est déjà active.",emailStepDesc:"Vérifiez votre e-mail universitaire pour débloquer les tarifs étudiants.",codeStepDesc:"Nous avons envoyé un code à 6 chiffres à {{email}}",surveyStepDesc:"Quelques questions rapides pour finaliser votre vérification.",benefitDiscount:"Jusqu'à {{percent}}% de réduction",benefitDiscountDetail:"sur le plan Starter",benefitAccess:"Accès complet",benefitAccessDetail:"à toutes les fonctionnalités Starter",benefitClaimOnce:"Utilisable une fois",benefitClaimOnceDetail:"à tout moment sur Starter",alreadyApplied:"Votre réduction étudiante est déjà appliquée",alreadyAppliedDesc:"Vérifié avec {{email}}. Les tarifs réduits sont affichés sur les plans éligibles ci-dessus.",gotIt:"Compris",emailPlaceholder:"vous@universite.edu",emailHint:"Nous acceptons .edu, .ac.uk, .ac.il et d'autres domaines universitaires.",sending:"Envoi en cours...",sendCode:"Envoyer le code de vérification",codePlaceholder:"Entrez le code à 6 chiffres",verifying:"Vérification en cours...",verifyCode:"Vérifier le code",changeEmail:"Changer d'e-mail",resendCooldown:"Renvoyer le code ({{seconds}}s)",resendCode:"Renvoyer le code",role:"Rôle",student:"Étudiant",teacher:"Enseignant",intendedUseLabel:"À quoi comptez-vous utiliser Base44 ?",intendedUsePlaceholder:"ex. : Projet de cours, outil de recherche, thèse...",fieldOfStudy:"Quel est votre domaine d'études ?",fieldOfTeaching:"Quel est votre domaine d'enseignement ?",selectField:"Sélectionnez un domaine d'études...",searchFields:"Rechercher des domaines...",other:"Autre",specifyField:"Veuillez préciser...",graduationDate:"Date de diplôme prévue",month:"Mois",year:"Année",activating:"Activation en cours...",verifyingEmail:"Vérification de l'e-mail...",activateDiscount:"Activer la réduction",errorNoEmail:"Veuillez entrer votre adresse e-mail universitaire.",errorInvalidEmail:"Veuillez entrer une adresse e-mail valide.",errorSendFailed:"Échec de l'envoi du code de vérification. Veuillez réessayer.",errorEmailAlreadyClaimed:"Cet e-mail universitaire est déjà associé à un autre compte.",errorNoCode:"Veuillez entrer le code à 6 chiffres reçu par e-mail.",errorInvalidCode:"Code invalide ou expiré. Veuillez réessayer.",errorNoIntendedUse:"Veuillez nous dire à quoi vous comptez utiliser Base44.",errorNoField:"Veuillez sélectionner votre domaine d'études.",errorNoFieldOther:"Veuillez préciser votre domaine d'études.",errorNoGraduation:"Veuillez sélectionner votre date de diplôme prévue.",toastActivatedTitle:"Réduction étudiante activée",toastActivatedDesc:"Vos tarifs étudiants sont maintenant appliqués aux plans éligibles. Faites défiler vers le haut pour voir les prix mis à jour.",errorActivateFailed:"Échec de l'activation de la réduction. Veuillez réessayer.",toastResentTitle:"Code renvoyé",toastResentDesc:"Un nouveau code de vérification a été envoyé à votre e-mail.",errorResendFailed:"Échec du renvoi du code. Veuillez patienter un instant et réessayer."},kW="Votre plan actuel a été acheté avec une carte cadeau. Le crédit de la carte cadeau n'est pas transféré lors des mises à niveau — le prix au prorata vous sera facturé.",wW={title:"Achat réussi",redirecting:"Redirection vers l'application dans {{seconds}}s...",button:"Retour à l'application"},AW={modal:X$,certificates:eW,features:tW,borderTag:aW,header:nW,messageLabel:iW,card:rW,dropdown:oW,dialog:sW,faq:lW,notices:cW,manageSubscription:dW,benefits:uW,overduePayment:pW,toasts:mW,workspaceBilling:gW,workspaceRoles:hW,security:fW,enterprise:vW,periodSelector:bW,studentDiscount:yW,upgradeGiftCardWarning:kW,returnToApp:wW},SW="Invitez des amis et gagnez des crédits",CW="Invitez des amis et gagnez des crédits",DW="Invitez et gagnez des crédits",TW="Partagez votre lien et gagnez {{credits}} crédits quand vos amis publient leur première app",EW={title:"Incroyable ! Vous avez atteint le maximum de parrainages",description:"Vous pouvez parrainer jusqu'à {{maxReferrals}} amis au total",extra:"({{extra}} supplémentaires ne rapporteront pas de crédits)"},PW={tryAgain:"Réessayer",copied:"Copié dans le presse-papiers !",copyButton:"Copier",copiedButton:"Copié"},_W={title:"Comment ça marche",shareLink:"Partagez votre lien de parrainage unique avec vos amis",signupBonus:"Ils reçoivent <bold>{{credits}} crédits</bold> à l'inscription",publishReward:"Vous gagnez <bold>{{credits}} crédits</bold> quand ils publient leur première app"},xW="Vos parrainages ({{current}}/{{max}})",IW={registered:"Inscrit",earned:"Gagné"},RW={back:"Retour",close:"Fermer",srTitle:"Programme de parrainage",baseDayBadge:"Base44 Day",creditsCount:"{{credits}} crédits",earnCredits:"Gagnez {{credits}} crédits",termsAndConditions:"Conditions générales",termsDescription:"Conditions générales du programme de parrainage"},zW={title:"Conditions générales",eligibility:{title:"Éligibilité",newUsersOnly:"Seuls les nouveaux utilisateurs peuvent participer à cette offre de parrainage. Les comptes existants ne sont pas inclus.",shareResponsibly:"Nous vous demandons de partager votre lien de parrainage de manière responsable. Le publier sur des sites non pertinents ou spam peut entraîner l'exclusion du programme."},credits:{title:"Crédits de parrainage",earnOnPublish:"Vous gagnez {{credits}} crédits quand un ami parrainé publie sa première app",bonusOnSignup:"Les amis parrainés reçoivent {{credits}} crédits de bonus à l'inscription",maxPerAccount:"Maximum de 5 parrainages réussis par compte",noCashValue:"Les crédits n'ont aucune valeur monétaire et ne peuvent pas être transférés"},restrictions:{title:"Restrictions",voidFraudulent:"Base44 se réserve le droit d'annuler les parrainages frauduleux",nonTransferable:"Les codes de parrainage ne sont pas transférables"},footer:"Base44 se réserve le droit de modifier ou de mettre fin à ce programme de parrainage à tout moment. Les changements seront communiqués via la plateforme."},MW={title:SW,titleDesktop:CW,titleMobile:DW,subtitle:TW,maxReached:EW,link:PW,howItWorks:_W,yourReferrals:xW,status:IW,dialog:RW,terms:zW},NW={title:"Spotlight",subtitle:"Explorez des applications et sites web remarquables créés avec Base44",loading:"Chargement de Spotlight…",errorMessage:"Impossible de charger Spotlight. Veuillez réessayer plus tard.",empty:"Aucune app dans Spotlight pour l'instant."},FW={title:"Erreur",description:"Impossible de charger les apps Spotlight."},LW={label:"Spotlight du jour",byCreator:"par {{creator}}",screenshotAlt:"Capture d'écran de {{appName}}",logoAlt:"Logo de {{appName}}"},jW={"beautifully-designed":"Magnifiquement conçu","loved-by-the-community":"Adoré par la communauté",saas:"SaaS",education:"Éducation","e-commerce":"Commerce électronique",websites:"Sites web"},OW={screenshotAlt:"Capture d'écran de {{appName}}",logoAlt:"Logo de {{appName}}",viewDetailsLabel:"Voir les détails",viewDetailsAriaLabel:"Voir les détails de {{appName}}"},BW={backButton:"Spotlight",byCreator:"Par {{creator}}",iframeTitle:"Aperçu de {{appName}}",previewNotAvailable:"Aperçu non disponible"},UW={ariaLabel:"Soumettre votre app à Spotlight",heading:"Vous voulez que votre app apparaisse ici ?",description:"Montrez ce que vous avez construit avec Base44. Soumettez à Spotlight et inspirez la communauté.",buttonText:"SOUMETTRE VOTRE APP"},qW={title:"Soumettre votre app à Spotlight",selectAppSubtitle:"Choisissez l'app que vous souhaitez nominer pour la page Spotlight.",detailsSubtitle:"Dites-nous pourquoi votre app devrait être présentée sur la page Spotlight.",back:"Retour",cancel:"Annuler",next:"Suivant",searchPlaceholder:"Rechercher des apps...",aboutLabel:"À propos de cette app",aboutPlaceholder:"Parlez-nous de quelque chose d'intéressant dans votre app – fonctionnalités spéciales, astuces intelligentes ou tout ce que la communauté aimerait découvrir",screenshotLabel:"Capture d'écran <optional>(facultatif)</optional>",screenshotHint:"PNG, JPG ou WebP — min. 800×450 px, jusqu'à 2 Mo",submit:"Soumettre",submitting:"Envoi en cours…",submitError:"Impossible de soumettre la demande Spotlight.",successAlreadyInSpotlight:"Déjà dans Spotlight",successRequestReceived:"Demande reçue",successDescription:'Nous allons examiner "{{appName}}" pour Spotlight. Vous aurez bientôt des nouvelles.'},VW={viewApp:"Voir l'app",share:"Partager",upvote:"Voter",alreadyUpvoted:"Déjà voté",thankYouForVote:"Merci pour votre vote !",voteError:"Impossible d'enregistrer le vote",voteErrorDescription:"Veuillez réessayer plus tard.",linkShared:"Lien partagé",linkCopied:"Lien copié dans le presse-papiers",shareError:"Impossible de partager"},$W={label:"Le saviez-vous ?"},WW={editedAgo:"modifié {{timeAgo}}",editedRecently:"Modifié récemment",noAppsFound:"Aucune app trouvée",noAppsAvailable:"Aucune app disponible",loadMore:"Charger plus d'apps",loading:"Chargement…"},GW={page:NW,fetchError:FW,featured:LW,sections:jW,card:OW,detailModal:BW,submitBanner:UW,requestModal:qW,actions:VW,didYouKnow:$W,appPicker:WW},HW={page:{title:"Aide & Support",subtitle:"Obtenez l'aide dont vous avez besoin pour créer des applications extraordinaires avec BASE44"},getStarted:"Commencer",cards:{documentation:{title:"Documentation",description:"Explorez des guides complets, des tutoriels, des FAQ et les meilleures pratiques pour développer avec Base44."},discord:{title:"Communauté Discord",description:"Connectez-vous avec d'autres développeurs et obtenez une aide instantanée de notre communauté active."},supportTicket:{title:"Ouvrir un ticket de support",description:"Soumettez un ticket de support détaillé et obtenez une assistance personnalisée."}},appContext:{title:"Support spécifique à l'application",description:"Les demandes de support seront associées à l'application <appId>{{appId}}</appId>"},quickActions:{title:"Actions rapides",subtitle:"Gérez votre expérience de support",myTickets:{title:"Mes tickets de support",description:"Afficher et gérer vos tickets de support existants"},communityForum:{title:"Forum communautaire",description:"Notre nouvelle communauté Reddit"}}},YW={fallbackTitle:"Conversation de support",appLink:"App"},KW={title:"Mes tickets de support",backToSupport:"Retour au support",showingTicketsForApp:"Affichage des tickets pour l'App : <app>{{appId}}</app>",filteredByApp:"Filtré par App : <app>{{appId}}</app>"},ZW={title:"Soumettre un ticket de support",titleResume:"Soumettre un ticket de support"},JW={helpMessage:"Besoin d'aide immédiate ? <normal>Consultez notre </normal><docsLink>documentation</docsLink><normal> ou rejoignez notre </normal><discordLink>communauté Discord</discordLink>."},QW={heading:"Continuer votre demande de support ?",description:"Vous avez commencé à créer un ticket de support précédemment.",chooseHowToProceed:"Choisissez comment vous souhaitez continuer :",continueWhereLeftOff:"Continuer où vous en étiez",continueWhereLeftOffDesc:"Restaurez vos saisies précédentes et continuez depuis la dernière étape.",startNewTicket:"Commencer un nouveau ticket",startNewTicketDesc:"Abandonnez le brouillon et commencez une nouvelle demande de support.",continue:"Continuer"},XW={tellUsAboutYourIssue:"Décrivez-nous votre problème",whatTypeOfIssue:"Quel type de problème rencontrez-vous ?",selectApp:"Sélectionnez l'application liée à votre problème"},eG={instruction:"Veuillez partager ce que vous faisiez, ce qui s'est mal passé et comment nous pouvons reproduire le problème.",descriptionLabel:"Description",descriptionPlaceholder:`Exemple :
• Ce que vous essayiez de faire
• Ce qui s'est passé à la place
• Tout message d'erreur
• Étapes pour reproduire (si pertinent)`,attachmentsLabel:"Pièces jointes",viewApp:"Voir l'app",dragAndDropFiles:"Glissez et déposez des fichiers ici",dropFilesHere:"Déposez les fichiers ici",browseFiles:"Parcourir les fichiers",uploading:"Téléversement en cours...",unsupportedFileType:`Le type de fichier "{{type}}" n'est pas pris en charge. Types pris en charge : jpg, jpeg, png, pdf.`,invalidFile:"Fichier non valide",failedToUpload:"Échec du téléversement du fichier"},tG={analyzingIssue:"Analyse de votre problème...",categoryFullDescription:"Il semble que votre problème entre dans l'une de ces catégories.<br/>Sélectionnez celle qui correspond le mieux — cela nous aide à vous guider vers la bonne solution."},aG={authentication:"Authentification",billing:"Facturation",bug_report:"Rapport de bug",domain:"Domaine",integrations_and_backend_functions:"Intégrations et Backend",chat_issues:"Problèmes de chat",security:"Sécurité",social_post_bonus_credits:"Crédits bonus pour publication sociale",superagent:"Superagent",other:"Autre"},nG={searchPlaceholder:"Rechercher des applications...",addAppLink:"Ajouter un lien d'app",addAppLinkPlaceholder:"p. ex., https://your-app-url.com ou https://yourapp.base44.app",invalidUrl:"Veuillez entrer une URL valide commençant par http:// ou https://",noAppsFound:"Aucune app trouvée",noAppsAvailable:"Aucune app disponible",loadingMore:"Chargement...",loadMore:"Charger plus d'apps",edited:"modifié {{time}}"},iG={loading:"Chargement de la conversation...",errorTitle:"Erreur de chargement de la conversation",noConversationTitle:"Conversation introuvable",noConversationMessage:"Cette conversation n'existe pas ou vous n'y avez pas accès.",tryAgain:"Réessayer",ticketFallbackTitle:"Ticket de support",categoryFallback:"Général",closeTicket:"Fermer le ticket",closing:"Fermeture...",aiAssistantInfo:"Assistant IA · Peut faire des erreurs",talkToSpecialist:"Parler à un spécialiste du support",handledBySpecialist:"Pris en charge par un spécialiste du support",notifyWhenResponds:"Me notifier quand le support répond",ticketResolvedTitle:"Ce ticket a été résolu",ticketResolvedMessage:"Veuillez créer un nouveau ticket pour une assistance supplémentaire",conversationClosed:"Cette conversation est fermée",aiHandlingTicket:"L'agent IA gère ce ticket. Cliquez sur <bold>Prendre en charge</bold> pour répondre manuellement.",typeResponse:"Tapez votre réponse...",typeMessage:"Tapez votre message...",failedLoadConversation:"Impossible de charger la conversation. Veuillez réessayer.",ticketAlreadyResolved:"Ce ticket a été résolu. Veuillez créer un nouveau ticket pour une assistance supplémentaire.",failedCloseTicket:"Impossible de fermer le ticket. Veuillez réessayer.",failedEscalate:"Impossible d'escalader le ticket. Veuillez réessayer.",confirmCloseTicket:"Êtes-vous sûr de vouloir fermer ce ticket ? Il sera marqué comme résolu.",premiumSupportTier:"Support Premium",standardSupportTier:"Support Standard",premiumSupportMessage:"Support hors ligne, réponse prioritaire dans les 48h",standardSupportMessage:"Support hors ligne, réponse dans les 48h",templates:{label:"Modèles rapides",less:"Moins"},draft:{title:"Réponse suggérée par l'IA",collapse:"Réduire",viewAll:"Tout voir",use:"Utiliser"},escalateModal:{title:"Demander un support humain",description:"Votre ticket sera transféré à notre équipe de support pour une réponse personnalisée.",cancel:"Annuler",requesting:"Demande en cours...",requestButton:"Demander un support humain"}},rG={supportTeam:"Équipe de support",attachedFile:"Fichier joint",translatedFrom:"Traduit depuis {{language}}",internalNote:"Note interne",emptyTitle:"Démarrer la conversation",emptyMessage:"Envoyez un message pour commencer votre conversation de support",translating:"Traduction en cours...",showingTranslations:"Affichage des traductions",translateToEnglish:"Traduire en anglais",confirmDeleteMessage:"Êtes-vous sûr de vouloir supprimer ce message ?",failedDeleteMessage:"Impossible de supprimer le message. Veuillez réessayer.",failedTranslate:"Impossible de traduire les messages. Veuillez réessayer.",attachedContent:"Contenu joint",videoNotSupported:"Votre navigateur ne prend pas en charge la lecture vidéo.",noteBy:"par {{name}}",adminFallback:"Admin",events:{unknownActor:"Quelqu'un",statusChange:"{{actor}} a changé le statut en {{status}}",unassigned:"{{actor}} a supprimé l'assignation du ticket",assigned:"{{actor}} a assigné à {{assignee}}",reassigned:"{{actor}} a réassigné à {{assignee}}",escalated:"{{actor}} a escaladé le ticket",removedEscalation:"{{actor}} a supprimé l'escalade",categoryChange:"{{actor}} a changé la catégorie en {{category}}",labelChangeAdded:"{{actor}} a ajouté {{labels}}",labelChangeRemoved:"{{actor}} a supprimé {{labels}}",labelChangeBoth:"{{actor}} a ajouté {{added}} et supprimé {{removed}}",updated:"{{actor}} a mis à jour le ticket",markedAbusive:"{{actor}} a marqué le contenu comme abusif",clearedAbusive:"{{actor}} a supprimé le marquage de contenu abusif"}},oG={uploading:"Téléchargement...",uploadFiles:"Télécharger des fichiers",fileTypeError:"Veuillez demander la prise en charge de types de fichiers supplémentaires sur <link>feedback.base44.com</link>"},sG={open:"Ouvert",closed:"Fermé",all:"Tous"},lG={open:"Ouvert",resolved:"Résolu"},cG={noOpenTickets:"Aucun ticket ouvert",noClosedTickets:"Aucun ticket fermé",noTickets:"Aucun ticket",descriptionOpen:"Vous n'avez aucun ticket de support ouvert pour le moment.",descriptionClosed:"Aucun ticket fermé trouvé.",descriptionAll:"Vous n'avez encore soumis aucun ticket de support."},dG={appLabel:"App : {{appId}}",dateNotAvailable:"Non disponible"},uG={loadingTitle:"Erreur de chargement des tickets",loadingFailed:"Impossible de charger les tickets de support. Veuillez réessayer.",ticketLimitTitle:"Limite de tickets atteinte",ticketLimitDescription:"Il y a plus de tickets qu'il n'est possible d'en charger. Seuls les 1000 tickets les plus récents ont été chargés."},pG={free:"Gratuit"},mG={cancel:"Annuler",back:"Retour",skip:"Ignorer",continue:"Continuer",submitting:"Envoi en cours...",refresh:"Actualiser",newTicket:"Nouveau ticket",createNewTicket:"Créer un nouveau ticket",tryAgain:"Réessayer",bannedAlert:"Votre accès au Support Base44 a été restreint en raison d'une violation des Conditions d'Utilisation du Support Base44. Veuillez consulter l'e-mail que nous vous avons envoyé pour plus de détails."},gG={descriptionRequired:"Veuillez ajouter une description",descriptionTooShort:"Veuillez ajouter un peu plus de détails. Le minimum est de 20 caractères.",appRequired:"Choisissez l'une de vos apps ou ajoutez un lien pour que nous sachions où le problème se produit.",submissionFailed:"Impossible d'envoyer votre ticket de support. Veuillez réessayer."},hG={dailyLimitReached:"Limite quotidienne atteinte",somethingWentWrong:"Une erreur s'est produite",dailyLimitMessage:"Limite quotidienne de conversations de support dépassée. Vous pouvez créer jusqu'à {{limit}} conversations par jour avec votre abonnement actuel.",tryAgain:"Réessayer",cancel:"Annuler",close:"Fermer"},fG={help:HW,sidebar:YW,page:KW,modal:ZW,footer:JW,resumeStep:QW,steps:XW,tellUsAboutYourIssue:eG,whatTypeOfIssue:tG,categories:aG,selectApp:nG,chat:iG,messages:rG,input:oG,tabs:sG,status:lG,emptyState:cG,ticketCard:dG,errors:uG,tiers:pG,actions:mG,validation:gG,submissionError:hG},vG={sectionTitle:"アカウントè¨å®š",sectionDescription:"個人アカウントã®è¨å®šã¨ç’°å¢ƒè¨å®šã‚’管ç†ã—ã¾ã™ã€‚",heading:"アカウント",email:{label:"メールアドレス",placeholder:"メールアドレス未è¨å®š"},fullName:{label:"æ°å",placeholder:"æ°åを入力ã—ã¦ãã ã•ã„",profileHint:"ã‚ãªãŸã®Base44公開<profileLink>プãƒãƒ•ィール</profileLink>ã«è¡¨ç¤ºã•れã¾ã™ã€‚"},phoneNumber:{label:"電話番å·",placeholder:"電話番å·ã‚’入力ã—ã¦ãã ã•ã„",smsConsent:"電話番å·ã‚’入力ã™ã‚‹ã“ã¨ã§ã€SMSã«ã‚ˆã‚‹é€šçŸ¥ã®å—ä¿¡ã«åŒæ„ã—ãŸã“ã¨ã«ãªã‚Šã¾ã™ã€‚"},defaultAgents:{label:"デフォルトエージェント",toggleLabel:"æ–°ã—ã„アプリã§ãƒ‡ãƒ•ォルトã§ã‚¨ãƒ¼ã‚¸ã‚§ãƒ³ãƒˆã‚’有効ã«ã™ã‚‹",description:"有効ã«ã™ã‚‹ã¨ã€æ–°ã—ã„アプリã¯è‡ªå‹•çš„ã«ã‚¨ãƒ¼ã‚¸ã‚§ãƒ³ãƒˆãŒæœ‰åŠ¹åŒ–ã•れã€è‡ªå¾‹çš„ãªã‚¿ã‚¹ã‚¯ã®å®Ÿè¡Œã‚„ツールã®ä½¿ç”¨ãŒå¯èƒ½ã«ãªã‚Šã¾ã™ã€‚"},defaultTestData:{label:"デフォルトã®ãƒ†ã‚¹ãƒˆãƒ‡ãƒ¼ã‚¿",toggleLabel:"æ–°ã—ã„アプリã§ãƒ‡ãƒ•ォルトã§ãƒ†ã‚¹ãƒˆãƒ‡ãƒ¼ã‚¿ã‚’有効ã«ã™ã‚‹",description:"有効ã«ã™ã‚‹ã¨ã€æ–°ã—ã„アプリã¯ãƒ†ã‚¹ãƒˆãƒ‡ãƒ¼ã‚¿ãŒã‚ªãƒ³ã®çŠ¶æ…‹ã§èµ·å‹•ã—ã€ãƒ©ã‚¤ãƒ–データã«å½±éŸ¿ã‚’与ãˆãšã«å®‰å…¨ã«å¤‰æ›´ã‚’テストã§ãã¾ã™ã€‚",upgradeRequired:"ã“ã®æ©Ÿèƒ½ã¯Builderプラン以上ãŒå¿…è¦ã§ã™ã€‚",seePlans:"プランを見る"},apiKey:{label:"APIã‚ー",copyTitle:"APIã‚ーをコピー",copied:"コピーã—ã¾ã—ãŸï¼",regenerate:"å†ç”Ÿæˆ",regenerating:"å†ç”Ÿæˆä¸...",regenShort:"å†ç”Ÿæˆ",regenShortLoading:"処ç†ä¸...",description:"APIã‚ーã¯ãƒ¯ãƒ¼ã‚¯ã‚¹ãƒšãƒ¼ã‚¹ã¸ã®ã‚¢ã‚¯ã‚»ã‚¹ã‚’æä¾›ã—ã¾ã™ã€‚他者ã¨å…±æœ‰ã—ãªã„ã§ãã ã•ã„。",notGenerated:"æœªç”Ÿæˆ â€” 「å†ç”Ÿæˆã€ã‚’クリックã—ã¦ãã ã•ã„"},backofficeApiKey:{title:"ãƒãƒƒã‚¯ã‚ªãƒ•ィスAPIã‚ー",description:"ã“ã®ã‚ーを使用ã—ã¦ã€ãƒãƒƒã‚¯ã‚ªãƒ•ィスサービスã¸ã®ãƒ—ãƒã‚°ãƒ©ãƒ ã«ã‚ˆã‚‹ãƒªã‚¯ã‚¨ã‚¹ãƒˆã‚’èªè¨¼ã—ã¾ã™ã€‚プラットフォームサービスã§ã¯æ©Ÿèƒ½ã—ã¾ã›ã‚“。秘密ã«ã—ã¦ãã ã•ã„。",yourKey:"ã‚ãªãŸã®ãƒãƒƒã‚¯ã‚ªãƒ•ィスAPIã‚ー",copySuccess:"APIã‚ーをコピーã—ã¾ã—ãŸ",copyError:"APIã‚ーã®ã‚³ãƒ”ーã«å¤±æ•—ã—ã¾ã—ãŸ",regenSuccess:"ãƒãƒƒã‚¯ã‚ªãƒ•ィスAPIã‚ーをå†ç”Ÿæˆã—ã¾ã—ãŸ",regenError:"å†ç”Ÿæˆã«å¤±æ•—ã—ã¾ã—ãŸ: {{error}}",warning:"å†ç”Ÿæˆã™ã‚‹ã¨ã€ä»¥å‰ã®ã‚ーã¯ç›´ã¡ã«ç„¡åйã«ãªã‚Šã¾ã™ã€‚使用ã—ã¦ã„ã‚‹ã‚¯ãƒ©ã‚¤ã‚¢ãƒ³ãƒˆã¯æ›´æ–°ãŒå¿…è¦ã§ã™ã€‚",existsPlaceholder:"•••••••••••••••••• (ã‚ーã¯å˜åœ¨ã—ã¾ã™ — ãƒãƒƒã‚·ãƒ¥ã®ã¿ä¿å˜ã•れã¾ã™ã€‚æ–°ã—ã„ã‚ーを表示ã™ã‚‹ã«ã¯å†ç”Ÿæˆã—ã¦ãã ã•ã„)",showOnceWarning:"ã“ã®ã‚ーを今ã™ãコピーã—ã¦ãã ã•ã„。一度ã ã‘表示ã•れã€å¾Œã§å–å¾—ã™ã‚‹ã“ã¨ã¯ã§ãã¾ã›ã‚“。"},unsavedChanges:"未ä¿å˜ã®å¤‰æ›´",discard:"ç ´æ£„",save:"ä¿å˜",saving:"ä¿å˜ä¸...",saveSuccess:"アカウントè¨å®šã‚’æ›´æ–°ã—ã¾ã—ãŸï¼",saveError:"アカウントè¨å®šã®æ›´æ–°ã«å¤±æ•—ã—ã¾ã—ãŸï¼š{{error}}",unknownError:"䏿˜Žãªã‚¨ãƒ©ãƒ¼",apiKeyCopySuccess:"APIã‚ーをクリップボードã«ã‚³ãƒ”ーã—ã¾ã—ãŸï¼",apiKeyCopyError:"APIã‚ーã®ã‚³ãƒ”ーã«å¤±æ•—ã—ã¾ã—ãŸ",apiKeyRegenSuccess:"APIã‚ーをå†ç”Ÿæˆã—ã¾ã—ãŸï¼",apiKeyRegenError:"APIã‚ーã®å†ç”Ÿæˆã«å¤±æ•—ã—ã¾ã—ãŸï¼š{{error}}"},bG={title:"二è¦ç´ èªè¨¼",description:"サインイン時ã«è¿½åŠ ã®ä¿è·ã‚’è¨å®šã—ã¾ã™ã€‚サインインã™ã‚‹ãŸã³ã«ã‚³ãƒ¼ãƒ‰ã®å…¥åŠ›ãŒæ±‚ã‚られã¾ã™ã€‚",twoFactorEnabled:"二è¦ç´ èªè¨¼ãŒæœ‰åйã«ãªã‚Šã¾ã—ãŸã€‚",statsLine:"{{used}}/{{total}} リカãƒãƒªãƒ¼ã‚³ãƒ¼ãƒ‰ä½¿ç”¨æ¸ˆã¿ · {{devices}} ä¿¡é ¼æ¸ˆã¿ãƒ‡ãƒã‚¤ã‚¹",totp:{name:"èªè¨¼ã‚¢ãƒ—リ",description:"Google Authenticatorã‚„Duoãªã©ã®ã‚¢ãƒ—リを使用ã—ã¦å®‰å…¨ãªã‚µã‚¤ãƒ³ã‚¤ãƒ³ã‚³ãƒ¼ãƒ‰ã‚’生æˆã—ã¾ã™ã€‚",setupTitle:"èªè¨¼ã‚¢ãƒ—リをè¨å®šã™ã‚‹",scanQr:"èªè¨¼ã‚¢ãƒ—リã§QRコードをスã‚ャンã—ã¦ãã ã•ã„",cantScan:"コードをスã‚ャンã§ãã¾ã›ã‚“ã‹ï¼Ÿæ‰‹å‹•ã§å…¥åŠ›ã—ã¦ãã ã•ã„:",enterCodeTitle:"èªè¨¼ã‚¢ãƒ—リã®ã‚³ãƒ¼ãƒ‰ã‚’入力ã—ã¦ãã ã•ã„",enterDigitCode:"6æ¡ã®ã‚³ãƒ¼ãƒ‰ã‚’入力",codesRefresh:"コードã¯30ç§’ã”ã¨ã«æ›´æ–°ã•れã¾ã™ã€‚",qrCodeAlt:"èªè¨¼ã‚¢ãƒ—リè¨å®šç”¨QRコード",enabled:"èªè¨¼ã‚¢ãƒ—ãƒªãŒæœ‰åйã«ãªã‚Šã¾ã—ãŸ",disabled:"èªè¨¼ã‚¢ãƒ—リãŒç„¡åйã«ãªã‚Šã¾ã—ãŸ"},sms:{name:"テã‚ストメッセージ",description:"テã‚ストメッセージã§ã‚µã‚¤ãƒ³ã‚¤ãƒ³ã‚³ãƒ¼ãƒ‰ã‚’å—ã‘å–りã¾ã™ã€‚",enterPhone:"電話番å·ã‚’入力ã—ã¦ãã ã•ã„",phoneLabel:"電話番å·",phonePlaceholder:"(555) 000-0000",verificationWillBeSent:"ã“ã®ç•ªå·ã«ç¢ºèªã‚³ãƒ¼ãƒ‰ãŒé€ä¿¡ã•れã¾ã™ã€‚",verifyPhone:"電話番å·ã‚’確èªã™ã‚‹",codeSentTo:"{{phone}} ã«6æ¡ã®ã‚³ãƒ¼ãƒ‰ãŒé€ä¿¡ã•れã¾ã—ãŸ",standardRates:"標準的ãªãƒ¡ãƒƒã‚»ãƒ¼ã‚¸æ–™é‡‘ã¨ãƒ‡ãƒ¼ã‚¿æ–™é‡‘ãŒã‹ã‹ã‚‹å ´åˆãŒã‚りã¾ã™ã€‚",invalidPhone:"電話番å·ãŒç„¡åйã§ã™ã€‚番å·ã‚’確èªã—ã¦ã‚‚ã†ä¸€åº¦ãŠè©¦ã—ãã ã•ã„。",enabled:"テã‚ストメッセージMFAãŒæœ‰åйã«ãªã‚Šã¾ã—ãŸ",disabled:"テã‚ストメッセージãŒç„¡åйã«ãªã‚Šã¾ã—ãŸ"},recovery:{saveTitle:"リカãƒãƒªãƒ¼ã‚³ãƒ¼ãƒ‰ã‚’ä¿å˜ã—ã¦ãã ã•ã„",saveDescription:"ã“れらã®ãƒªã‚«ãƒãƒªãƒ¼ã‚³ãƒ¼ãƒ‰ã‚’安全ãªå ´æ‰€ã«ä¿å˜ã—ã¦ãã ã•ã„。電話やèªè¨¼ã‚¢ãƒ—リã«ã‚¢ã‚¯ã‚»ã‚¹ã§ããªããªã£ãŸå ´åˆã«å¿…è¦ã«ãªã‚Šã¾ã™ã€‚",eachCodeOnce:"å„リカãƒãƒªãƒ¼ã‚³ãƒ¼ãƒ‰ã¯ä¸€åº¦ã—ã‹ä½¿ç”¨ã§ãã¾ã›ã‚“。安全ã§ã‚¢ã‚¯ã‚»ã‚¹ã—ã‚„ã™ã„å ´æ‰€ã«ä¿ç®¡ã—ã¦ãã ã•ã„。",eachCodeOnceShort:"å„リカãƒãƒªãƒ¼ã‚³ãƒ¼ãƒ‰ã¯ä¸€åº¦ã—ã‹ä½¿ç”¨ã§ãã¾ã›ã‚“。",copyAll:"ã™ã¹ã¦ã‚³ãƒ”ー",download:"ダウンãƒãƒ¼ãƒ‰",copied:"コピーã—ã¾ã—ãŸ",enterRecoveryCode:"リカãƒãƒªãƒ¼ã‚³ãƒ¼ãƒ‰ã‚’入力"},disable:{title:"二è¦ç´ èªè¨¼ã‚’無効ã«ã™ã‚‹",turnOff:"二è¦ç´ èªè¨¼ã‚’オフã«ã—ã¾ã™ã‹ï¼Ÿ",turnOffDescription:"続行ã™ã‚‹ã«ã¯ã€é›»è©±ã«é€ä¿¡ã•れãŸã‚³ãƒ¼ãƒ‰ã¾ãŸã¯ãƒªã‚«ãƒãƒªãƒ¼ã‚³ãƒ¼ãƒ‰ã§ç¢ºèªã™ã‚‹å¿…è¦ãŒã‚りã¾ã™ã€‚",verifyWithPhone:"電話ã«é€ä¿¡ã•れãŸã‚³ãƒ¼ãƒ‰ã§ç¢ºèª",verifyWithApp:"èªè¨¼ã‚¢ãƒ—リã®ã‚³ãƒ¼ãƒ‰ã‚’入力",enterRecoveryToDisable:"二è¦ç´ èªè¨¼ã‚’無効ã«ã™ã‚‹ã«ã¯ã€ãƒªã‚«ãƒãƒªãƒ¼ã‚³ãƒ¼ãƒ‰ã‚’入力ã—ã¦ãã ã•ã„。",useRecoveryCode:"リカãƒãƒªãƒ¼ã‚³ãƒ¼ãƒ‰ã‚’使用",verifyViaApp:"アプリã§ç¢ºèª",verifyAndDisable:"確èªã—ã¦ç„¡åйã«ã™ã‚‹"},regenerate:{title:"リカãƒãƒªãƒ¼ã‚³ãƒ¼ãƒ‰ã‚’å†ç”Ÿæˆ",trustedDevicesCount_one:"{{count}} å°ã®ä¿¡é ¼æ¸ˆã¿ãƒ‡ãƒã‚¤ã‚¹",trustedDevicesCount_other:"{{count}} å°ã®ä¿¡é ¼æ¸ˆã¿ãƒ‡ãƒã‚¤ã‚¹",codesUsed:"{{used}}/{{total}} リカãƒãƒªãƒ¼ã‚³ãƒ¼ãƒ‰ä½¿ç”¨æ¸ˆã¿",descriptionChoose:"リカãƒãƒªãƒ¼ã‚³ãƒ¼ãƒ‰ã‚’å†ç”Ÿæˆã™ã‚‹ãŸã‚ã®ç¢ºèªæ–¹æ³•ã‚’é¸æŠžã—ã¦ãã ã•ã„。既å˜ã®ã‚³ãƒ¼ãƒ‰ã¯ã™ã¹ã¦ç„¡åйã«ãªã‚Šã¾ã™ã€‚",descriptionSms:"確èªã®ãŸã‚ã€é›»è©±ã«ç¢ºèªã‚³ãƒ¼ãƒ‰ã‚’é€ä¿¡ã—ã¾ã™ã€‚",descriptionSmsVerify:"リカãƒãƒªãƒ¼ã‚³ãƒ¼ãƒ‰ã‚’å†ç”Ÿæˆã™ã‚‹ãŸã‚ã®ç¢ºèªã‚³ãƒ¼ãƒ‰ã‚’入力ã—ã¦ãã ã•ã„。既å˜ã®ã‚³ãƒ¼ãƒ‰ã¯ã™ã¹ã¦ç„¡åйã«ãªã‚Šã¾ã™ã€‚",descriptionTotpVerify:"リカãƒãƒªãƒ¼ã‚³ãƒ¼ãƒ‰ã‚’å†ç”Ÿæˆã™ã‚‹ãŸã‚ã®ç¢ºèªã‚³ãƒ¼ãƒ‰ã‚’入力ã—ã¦ãã ã•ã„。既å˜ã®ã‚³ãƒ¼ãƒ‰ã¯ã™ã¹ã¦ç„¡åйã«ãªã‚Šã¾ã™ã€‚",verifyWithApp:"èªè¨¼ã‚¢ãƒ—リã®ã‚³ãƒ¼ãƒ‰ã‚’入力",verifyWithSms:"電話ã«é€ä¿¡ã•れãŸã‚³ãƒ¼ãƒ‰ã§ç¢ºèª",smsMethodLabel:"SMSメッセージ",enterCodeLabel:"6æ¡ã®ã‚³ãƒ¼ãƒ‰ã‚’入力",helperTotp:"èªè¨¼ã‚¢ãƒ—リを開ã„ã¦ã‚³ãƒ¼ãƒ‰ã‚’å–å¾—ã—ã¦ãã ã•ã„",helperSms:"電話ã«é€ä¿¡ã•れãŸã‚³ãƒ¼ãƒ‰ã‚’入力ã—ã¦ãã ã•ã„",verifyAndRegenerate:"確èªã—ã¦å†ç”Ÿæˆ",enterCode:"コードを入力"},reauth:{title:"本人確èª",description:"ã‚»ã‚ュリティã®ãŸã‚ã€{{method}}ã‚’è¿½åŠ ã™ã‚‹å‰ã«æœ¬äººç¢ºèªã‚’行ã„ã¾ã™ã€‚",actionTotp:"èªè¨¼ã‚¢ãƒ—リã®6æ¡ã®ã‚³ãƒ¼ãƒ‰ã‚’入力ã—ã¦ãã ã•ã„。",actionSms:"{{phone}}ã«é€ä¿¡ã•れãŸã‚³ãƒ¼ãƒ‰ã‚’入力ã—ã¦ãã ã•ã„。"},common:{enable:"有効ã«ã™ã‚‹",enabled:"有効",cancel:"ã‚ャンセル",close:"é–‰ã˜ã‚‹",back:"戻る",done:"完了",verify:"確èª",sendCode:"コードをé€ä¿¡",regenerate:"å†ç”Ÿæˆ",regenerateRecoveryCodes:"リカãƒãƒªãƒ¼ã‚³ãƒ¼ãƒ‰ã‚’å†ç”Ÿæˆ",disable:"無効ã«ã™ã‚‹",continue:"続行",fullCodeError:"6æ¡ã®ã‚³ãƒ¼ãƒ‰ã‚’入力ã—ã¦ãã ã•ã„",fullRecoveryError:"リカãƒãƒªãƒ¼ã‚³ãƒ¼ãƒ‰ã‚’入力ã—ã¦ãã ã•ã„",enterVerificationCode:"確èªã‚³ãƒ¼ãƒ‰ã‚’入力ã—ã¦ãã ã•ã„",didntReceive:"コードãŒå±Šãã¾ã›ã‚“ã‹ï¼Ÿ",resendIn:"{{seconds}}秒後ã«å†é€ä¿¡",resend:"å†é€ä¿¡",verificationSent:"確èªã‚³ãƒ¼ãƒ‰ãŒé€ä¿¡ã•れã¾ã—ãŸ",failedToSetup:"èªè¨¼ã‚¢ãƒ—リã®è¨å®šã«å¤±æ•—ã—ã¾ã—ãŸ",failedToSendCode:"コードã®é€ä¿¡ã«å¤±æ•—ã—ã¾ã—ãŸ",failedToResend:"å†é€ä¿¡ã«å¤±æ•—ã—ã¾ã—ãŸ",invalidCode:"無効ãªã‚³ãƒ¼ãƒ‰",lockedOut:"試行回数ãŒå¤šã™ãŽã¾ã™ã€‚{{minutes}}分後ã«ã‚‚ã†ä¸€åº¦ãŠè©¦ã—ãã ã•ã„。",lockedOutShort:"一時的ã«ãƒãƒƒã‚¯ä¸ï¼ˆ{{minutes}}分)"}},yG={section:{title:"アカウントを削除",description:"アカウントã¨ãれã«é–¢é€£ã™ã‚‹ã™ã¹ã¦ã®ãƒ‡ãƒ¼ã‚¿ã€è¨å®šã€ã‚¢ã‚¯ãƒ†ã‚£ãƒ“ティを削除ã—ã¾ã™ã€‚",accessNote:"削除をリクエストã—ãŸå¾Œã€1週間ã¯ã‚¢ã‚«ã‚¦ãƒ³ãƒˆã«ã‚¢ã‚¯ã‚»ã‚¹ã§ãã¾ã™ã€‚",deleteButton:"アカウントを削除",enterpriseTooltip:"エンタープライズユーザーã¯ã‚¢ã‚«ã‚¦ãƒ³ãƒˆã‚’削除ã§ãã¾ã›ã‚“。組織ã®ç®¡ç†è€…ã«ãŠå•ã„åˆã‚ã›ãã ã•ã„。"},pendingRequest:{willBeDeleted:"アカウントã€ã‚µãƒ–ã‚¹ã‚¯ãƒªãƒ—ã‚·ãƒ§ãƒ³ã€æ‰€æœ‰ã™ã‚‹ã‚¢ãƒ—リã¨ãƒ¯ãƒ¼ã‚¯ã‚¹ãƒšãƒ¼ã‚¹ã¯<bold>{{daysRemaining}}日後</bold>({{formattedEnd}})ã«å‰Šé™¤ã•れã€ä»¥é™ã¯å–り消ã™ã“ã¨ãŒã§ãã¾ã›ã‚“。ãれã¾ã§ã®é–“ã¯å‰Šé™¤ã‚’ã‚ャンセルã§ãã¾ã™ã€‚",processing:"削除処ç†ä¸...",cancelButton:"リクエストをã‚ャンセル",renewalWarning:"サブスクリプションãŒã“れらã®{{daysRemaining}}æ—¥ä»¥å†…ã«æ›´æ–°ã•れる予定ã®å ´åˆã€æ›´æ–°æ—¥å‰ã«æ‰‹å‹•ã§ã‚µãƒ–スクリプションをã‚ャンセルã—ãªã„é™ã‚Šã€æ›´æ–°ã¯å¼•ãç¶šã発生ã—ã¾ã™"},toast:{submitSuccess:"削除リクエストãŒé€ä¿¡ã•れã¾ã—ãŸã€‚7日間ã®çŒ¶äºˆæœŸé–“後ã«ç¢ºèªãƒ»å‡¦ç†ã„ãŸã—ã¾ã™ã€‚",submitError:"削除リクエストã®é€ä¿¡ã«å¤±æ•—ã—ã¾ã—ãŸã€‚ã‚‚ã†ä¸€åº¦ãŠè©¦ã—ãã ã•ã„。",cancelSuccess:"å‰Šé™¤ãƒªã‚¯ã‚¨ã‚¹ãƒˆãŒæ£å¸¸ã«ã‚ャンセルã•れã¾ã—ãŸã€‚",cancelError:"リクエストã®ã‚ャンセルã«å¤±æ•—ã—ã¾ã—ãŸã€‚ã‚‚ã†ä¸€åº¦ãŠè©¦ã—ãã ã•ã„。",preflightError:"アカウントã®ã‚¹ãƒ†ãƒ¼ã‚¿ã‚¹ã‚’確èªã§ãã¾ã›ã‚“ã§ã—ãŸã€‚ã‚‚ã†ä¸€åº¦ãŠè©¦ã—ãã ã•ã„。"},dialog:{title:"アカウントã®å‰Šé™¤",description:"ã“れã«ã‚ˆã‚Šã€ã‚¢ã‚«ã‚¦ãƒ³ãƒˆã¨ã™ã¹ã¦ã®é–¢é€£ãƒ‡ãƒ¼ã‚¿ãŒæ°¸ä¹…削除ã®ã‚¹ã‚±ã‚¸ãƒ¥ãƒ¼ãƒ«ã«ç™»éŒ²ã•れã¾ã™ã€‚",whatWillBeDeleted:"削除ã•れるもã®ï¼š",itemAccountProfile:"アカウントã¨ãƒ—ãƒãƒ•ィール",itemAllApps:"作æˆã—ãŸã™ã¹ã¦ã®ã‚¢ãƒ—リ",itemAllData:"アプリã«ä¿å˜ã•れã¦ã„ã‚‹ã™ã¹ã¦ã®ãƒ‡ãƒ¼ã‚¿",itemUploadedFiles:"アップãƒãƒ¼ãƒ‰ã—ãŸãƒ•ァイルã¨ãƒ¡ãƒ‡ã‚£ã‚¢",gracePeriodNote:"ã“ã®ãƒªã‚¯ã‚¨ã‚¹ãƒˆã‚’ã‚ャンセルã™ã‚‹ãŸã‚ã®7日間ãŒã‚りã¾ã™ã€‚ãã®å¾Œã€ãƒãƒ¼ãƒ ãŒå‰Šé™¤ã‚’確èªãƒ»å‡¦ç†ã—ã¾ã™ã€‚",subscriptionNote:"サブスクリプションã®ã‚ãƒ£ãƒ³ã‚»ãƒ«ã¯æœ€çµ‚çš„ãªã‚‚ã®ã§ã‚りã€è¿”金ã¯ã‚りã¾ã›ã‚“",cancelButton:"ã‚ャンセル",deleteButton:"アカウントを削除"},subscriptions:{dialogTitle:"アカウント削除å‰ã«ã‚µãƒ–スクリプションをã‚ャンセルã—ã¦ãã ã•ã„",warning:"ã¾ã アクティブãªã‚µãƒ–スクリプションãŒã‚りã¾ã™ã€‚å…ˆã«ã‚ャンセルã—ã¦ãã ã•ã„。",listLabel:"アクティブãªã‚µãƒ–スクリプション:",personalPlan:"個人プラン",planAndBilling:"プランã¨è«‹æ±‚",yearly:"年払ã„",monthly:"月払ã„",cancelFirst:"上記ã®ã™ã¹ã¦ã®ã‚µãƒ–スクリプションをã‚ャンセルã—ã¦ã‹ã‚‰ã€ã“ã¡ã‚‰ã«æˆ»ã£ã¦ã‚¢ã‚«ã‚¦ãƒ³ãƒˆã‚’削除ã—ã¦ãã ã•ã„。",closeButton:"é–‰ã˜ã‚‹",manageButton:"サブスクリプションを管ç†"},workspaceOwner:{titleStep1:"ワークスペースを所有ã—ã¦ã„ã¾ã™",titleStep2:"ワークスペースã®å‰Šé™¤ã‚’確èª",memberCount_one:"{{count}} メンãƒãƒ¼",memberCount_other:"{{count}} メンãƒãƒ¼",warningOwner_one:"以下ã®ãƒ¯ãƒ¼ã‚¯ã‚¹ãƒšãƒ¼ã‚¹ã‚’所有ã—ã¦ã„ã¾ã™ã€‚続行ã™ã‚‹ã¨ã€ã“ã®ãƒ¯ãƒ¼ã‚¯ã‚¹ãƒšãƒ¼ã‚¹å†…ã®ã™ã¹ã¦ã®ã‚¢ãƒ—リãŒå®Œå…¨ã«å‰Šé™¤ã•れã€ã™ã¹ã¦ã®ãƒ¡ãƒ³ãƒãƒ¼ãŒã‚¢ã‚¯ã‚»ã‚¹ã‚’失ã„ã¾ã™ã€‚",warningOwner_other:"以下ã®ãƒ¯ãƒ¼ã‚¯ã‚¹ãƒšãƒ¼ã‚¹ã‚’所有ã—ã¦ã„ã¾ã™ã€‚続行ã™ã‚‹ã¨ã€ã“れらã®ãƒ¯ãƒ¼ã‚¯ã‚¹ãƒšãƒ¼ã‚¹å†…ã®ã™ã¹ã¦ã®ã‚¢ãƒ—リãŒå®Œå…¨ã«å‰Šé™¤ã•れã€ã™ã¹ã¦ã®ãƒ¡ãƒ³ãƒãƒ¼ãŒã‚¢ã‚¯ã‚»ã‚¹ã‚’失ã„ã¾ã™ã€‚",leaveWorkspaces_one:"ã“ã®ãƒ¯ãƒ¼ã‚¯ã‚¹ãƒšãƒ¼ã‚¹ã‚‚退出ã—ã€ã‚¢ã‚¯ã‚»ã‚¹ã‚’失ã„ã¾ã™ï¼š",leaveWorkspaces_other:"ã“れらã®ãƒ¯ãƒ¼ã‚¯ã‚¹ãƒšãƒ¼ã‚¹ã‚‚退出ã—ã€ã‚¢ã‚¯ã‚»ã‚¹ã‚’失ã„ã¾ã™ï¼š",confirmInstructions:"削除を確èªã™ã‚‹ãŸã‚ã«ã€ä»¥ä¸‹ã«å„ワークスペースåを入力ã—ã¦ãã ã•ã„。ã“ã®æ“作ã¯å–り消ã›ã¾ã›ã‚“。",typeToConfirm:'確èªã®ãŸã‚ <bold>"{{name}}"</bold> ã¨å…¥åŠ›ã—ã¦ãã ã•ã„',deleteAnyway:"ãれã§ã‚‚削除ã™ã‚‹",deleteAccount:"アカウントを削除",cancel:"ã‚ャンセル"},memberInfo:{title_one:"ã“ã®ãƒ¯ãƒ¼ã‚¯ã‚¹ãƒšãƒ¼ã‚¹ã‚’退出ã—ã¾ã™",title_other:"ã“れらã®ãƒ¯ãƒ¼ã‚¯ã‚¹ãƒšãƒ¼ã‚¹ã‚’退出ã—ã¾ã™",description_one:"アカウントを削除ã™ã‚‹ã¨ã€ä»¥ä¸‹ã®ãƒ¯ãƒ¼ã‚¯ã‚¹ãƒšãƒ¼ã‚¹ã‹ã‚‰é€€å‡ºã•れã¾ã™ã€‚ワークスペースã®ã™ã¹ã¦ã®ã‚¢ãƒ—リã¨ãƒ‡ãƒ¼ã‚¿ã¸ã®ã‚¢ã‚¯ã‚»ã‚¹ã‚’失ã„ã¾ã™ã€‚",description_other:"アカウントを削除ã™ã‚‹ã¨ã€ä»¥ä¸‹ã®ãƒ¯ãƒ¼ã‚¯ã‚¹ãƒšãƒ¼ã‚¹ã‹ã‚‰é€€å‡ºã•れã¾ã™ã€‚ワークスペースã®ã™ã¹ã¦ã®ã‚¢ãƒ—リã¨ãƒ‡ãƒ¼ã‚¿ã¸ã®ã‚¢ã‚¯ã‚»ã‚¹ã‚’失ã„ã¾ã™ã€‚",cancel:"ã‚ャンセル",continueWithDeletion:"削除を続行"}},kG={title:"GitHubアカウント",addAccount:"GitHubã‚¢ã‚«ã‚¦ãƒ³ãƒˆã‚’è¿½åŠ ",unlockWithBuilder:"Builderプランã§ã“ã®æ©Ÿèƒ½ã‚’アンãƒãƒƒã‚¯ã—ã¦ãã ã•ã„。",loading:"èªã¿è¾¼ã¿ä¸...",connecting:"接続ä¸...",reconnect:"å†æŽ¥ç¶š",connectionLost:"GitHubã¸ã®æŽ¥ç¶šãŒå¤±ã‚れã¾ã—ãŸã€‚GitHubã‚¢ã‚«ã‚¦ãƒ³ãƒˆã‚’å†æŽ¥ç¶šã—ã¦ç¶šè¡Œã—ã¦ãã ã•ã„。",connected:"接続済ã¿",connectedDescription:"GitHubã‚¢ã‚«ã‚¦ãƒ³ãƒˆãŒæŽ¥ç¶šã•れã¦ã„ã¾ã™",disconnect:"切æ–",tryAgain:"å†è©¦è¡Œ",connectGitHub:"GitHubã«æŽ¥ç¶š",disconnectDialog:{title:"GitHubã‹ã‚‰åˆ‡æ–ã—ã¾ã™ã‹ï¼Ÿ",accountDescription:"GitHubアカウントを切æ–ã—ã¦ã‚‚ã€æŽ¥ç¶šã•れã¦ã„るアプリã«ã¯å½±éŸ¿ã—ã¾ã›ã‚“。<br/>リãƒã‚¸ãƒˆãƒªã‚’接続ã¾ãŸã¯å†æŽ¥ç¶šã™ã‚‹å ´åˆã«ã®ã¿ã€ã‚¢ã‚«ã‚¦ãƒ³ãƒˆã‚’å†æŽ¥ç¶šã™ã‚‹å¿…è¦ãŒã‚りã¾ã™ã€‚",repoDescription:"ã“れã«ã‚ˆã‚Šã€ã‚¢ãƒ—リã¯{{repoName}}リãƒã‚¸ãƒˆãƒªã‹ã‚‰åˆ‡æ–ã•れã¾ã™ã€‚",repoDescriptionNoName:"ã“れã«ã‚ˆã‚Šã€ã‚¢ãƒ—リã¯GitHubリãƒã‚¸ãƒˆãƒªã‹ã‚‰åˆ‡æ–ã•れã¾ã™ã€‚",repoDetail1:"GitHubリãƒã‚¸ãƒˆãƒªã¯å¤‰æ›´ã•れã¾ã›ã‚“ — 削除も除去もã•れã¾ã›ã‚“。",repoDetail2:"引ãç¶šãアプリã«å–り組むã“ã¨ãŒã§ãã¾ã™ãŒã€GitHubã¯ã‚³ãƒ¼ãƒ‰ã®ä¿¡é ¼ã§ãるソースã§ã¯ãªããªã‚Šã€åŒæ–¹å‘åŒæœŸãŒç„¡åйã«ãªã‚Šã¾ã™ã€‚",disconnectingProgress:"切æ–ä¸â€¦ 数分ã‹ã‹ã‚‹å ´åˆãŒã‚りã¾ã™ã€‚",cancel:"ã‚ャンセル",disconnect:"切æ–",disconnecting:"切æ–ä¸â€¦"}},wG={title:"Google Drive",connected:"接続済ã¿",connectedDescription:"Google DriveãŒæŽ¥ç¶šã•れã¦ã„ã¾ã™",disconnectedDescription:"Google Driveを接続ã—ã¦ãƒ•ァイルをインãƒãƒ¼ãƒˆ",connect:"接続",connecting:"接続ä¸...",disconnect:"切æ–",disconnecting:"切æ–ä¸...",loading:"èªã¿è¾¼ã¿ä¸...",connectTitle:"Google Driveã«æŽ¥ç¶š",connectDescription:"AIãƒãƒ£ãƒƒãƒˆã®ã‚³ãƒ³ãƒ†ã‚ストã¨ã—ã¦Google Driveã®ãƒ•ァイルを使用ã™ã‚‹ãŸã‚ã®ã‚¢ã‚¯ã‚»ã‚¹ã‚’許å¯ã—ã¾ã™ã€‚",benefitImport:"Google Driveã‹ã‚‰ãƒ‰ã‚ュメントã€ã‚¹ãƒ—レッドシートã€ãƒ—レゼンテーションをインãƒãƒ¼ãƒˆ",benefitChoose:"使用ã™ã‚‹ãƒ•ã‚¡ã‚¤ãƒ«ã‚’æ¯Žå›žé¸æŠž",benefitSecure:"é¸æŠžã—ãŸã‚³ãƒ³ãƒ†ãƒ³ãƒ„ã¯ã‚¢ãƒ—リã§ä½¿ç”¨ã™ã‚‹ãŸã‚ã«å®‰å…¨ã«ä¿å˜ã•れã¾ã™",connectButton:"Google Driveを接続",cancel:"ã‚ャンセル",privacyNote:"é¸æŠžã—ãŸãƒ•ァイルã®ã¿ãŒã‚¢ã‚¯ã‚»ã‚¹ã•れã¾ã™ã€‚",disconnectAnytime:"アカウントè¨å®šã§ã„ã¤ã§ã‚‚切æ–ã§ãã¾ã™ã€‚"},AG={title:"ãƒãƒ£ãƒƒãƒˆè¨å®š",sendMessageShortcut:"メッセージé€ä¿¡ã‚·ãƒ§ãƒ¼ãƒˆã‚«ãƒƒãƒˆ",insertNewLineShortcut:"改行挿入ショートカット",soundPreferences:"サウンドè¨å®š",browserNotifications:"ブラウザ通知",notificationsHelpText:"通知を有効ã«ã—ã¦ã„ã‚‹ã®ã«å—ä¿¡ã§ãã¦ã„ã¾ã›ã‚“ã‹ï¼Ÿ <docLink>ドã‚ュメントを確èªã™ã‚‹</docLink>",notificationOptions:{onFirstPromptOnly:"最åˆã®ãƒ—ãƒãƒ³ãƒ—トã®ã¿",onEveryPromptCompletion:"毎回ã®ãƒ—ãƒãƒ³ãƒ—ト完了時",disableNotificationSounds:"通知音を無効ã«ã™ã‚‹",disableBrowserNotifications:"ブラウザ通知を無効ã«ã™ã‚‹"}},SG={account:vG,mfa:bG,deleteAccount:yG,github:kG,googleDrive:wG,chatSettings:AG},CG={title:"{{appName}}ã¸ã®ã‚¢ã‚¯ã‚»ã‚¹ã‚’リクエスト",subtitleDefault:"アクセスをリクエストã™ã‚‹ã‹ã€ã™ã§ã«æ¨©é™ãŒã‚るアカウントã«åˆ‡ã‚Šæ›¿ãˆã¦ãã ã•ã„。",subtitleRequested:"ç”³è«‹ãŒæ‰¿èªã•れã¾ã—ãŸã‚‰ãƒ¡ãƒ¼ãƒ«ã§ãŠçŸ¥ã‚‰ã›ã—ã¾ã™ã€‚",requestAccess:"アクセス権を申請",requestSubmitted:"申請をé€ä¿¡ã—ã¾ã—ãŸ",loggedInAs:"{{email}} ã¨ã—ã¦ãƒã‚°ã‚¤ãƒ³ä¸",switchAccount:"アカウントを切り替ãˆ",errorMessage:"エラーãŒç™ºç”Ÿã—ã¾ã—ãŸã€‚ã‚‚ã†ä¸€åº¦ãŠè©¦ã—ã„ãŸã ãã‹ã€åˆ¥ã®ã‚¢ã‚«ã‚¦ãƒ³ãƒˆã«åˆ‡ã‚Šæ›¿ãˆã¦ãã ã•ã„。",tooManyAttempts:"試行回数ãŒå¤šã™ãŽã¾ã™ã€‚ã—ã°ã‚‰ãã—ã¦ã‹ã‚‰ã‚‚ã†ä¸€åº¦ãŠè©¦ã—ãã ã•ã„。",backToLogin:"ãƒã‚°ã‚¤ãƒ³ã«æˆ»ã‚‹"},DG={title:"アクセスãŒåˆ¶é™ã•れã¦ã„ã¾ã™",subtitle:"ã“ã®ã‚¢ãƒ—リã«ã‚¢ã‚¯ã‚»ã‚¹ã™ã‚‹ã«ã¯ã€ã“ã®ãƒ¯ãƒ¼ã‚¯ã‚¹ãƒšãƒ¼ã‚¹ã®ãƒ¡ãƒ³ãƒãƒ¼ã§ã‚ã‚‹å¿…è¦ãŒã‚りã¾ã™ã€‚"},TG={accessRequired:CG,workspaceRestricted:DG},EG={title:"Base44ã¸ã‚ˆã†ã“ã",loginWithGoogle:"Googleã§ãƒã‚°ã‚¤ãƒ³",loginWithGithub:"GitHubã§ãƒã‚°ã‚¤ãƒ³",loggingIn:"ãƒã‚°ã‚¤ãƒ³ä¸...",or:"ã¾ãŸã¯",emailLabel:"メールアドレス",emailPlaceholder:"メールアドレスを入力",edit:"編集",lastUsed:"å‰å›žä½¿ç”¨",ssoEnabled:"<strong>{{workspace}}</strong>ã§SSOãŒæœ‰åйã§ã™",ssoClickBelow:"下ã®ãƒœã‚¿ãƒ³ã‚’クリックã—ã¦çµ„ç¹”ã®ãƒã‚°ã‚¤ãƒ³ã«é€²ã‚“ã§ãã ã•ã„",passwordLabel:"パスワード",forgotPassword:"パスワードをãŠå¿˜ã‚Œã§ã™ã‹ï¼Ÿ",passwordPlaceholder:"パスワードを入力",checkingAuth:"èªè¨¼æ–¹æ³•を確èªä¸...",checking:"確èªä¸...",continue:"続行",continueWithSSO:"{{provider}}ã§ç¶šè¡Œ",logIn:"ãƒã‚°ã‚¤ãƒ³",noAccount:"ã‚¢ã‚«ã‚¦ãƒ³ãƒˆã‚’ãŠæŒã¡ã§ãªã„ã§ã™ã‹ï¼Ÿ",signUp:"æ–°è¦ç™»éŒ²",verifyEmailFirst:"ãƒã‚°ã‚¤ãƒ³ã™ã‚‹å‰ã«ãƒ¡ãƒ¼ãƒ«ã‚¢ãƒ‰ãƒ¬ã‚¹ã‚’確èªã—ã¦ãã ã•ã„。確èªã‚³ãƒ¼ãƒ‰ã‚’メールã§é€ä¿¡ã—ã¾ã—ãŸã€‚",resendVerificationCode:"確èªã‚³ãƒ¼ãƒ‰ã‚’å†é€ä¿¡",enterEmailFirst:"最åˆã«ãƒ¡ãƒ¼ãƒ«ã‚¢ãƒ‰ãƒ¬ã‚¹ã‚’入力ã—ã¦ãã ã•ã„",invalidEmail:"有効ãªãƒ¡ãƒ¼ãƒ«ã‚¢ãƒ‰ãƒ¬ã‚¹ã‚’入力ã—ã¦ãã ã•ã„",ssoError:"SSOè¨å®šã‚¨ãƒ©ãƒ¼ã§ã™ã€‚ã‚‚ã†ä¸€åº¦ãŠè©¦ã—ãã ã•ã„。",invalidCredentials:"メールアドレスã¾ãŸã¯ãƒ‘ã‚¹ãƒ¯ãƒ¼ãƒ‰ãŒæ£ã—ãã‚りã¾ã›ã‚“",loginFailed:"ãƒã‚°ã‚¤ãƒ³ã«å¤±æ•—ã—ã¾ã—ãŸã€‚ã‚‚ã†ä¸€åº¦ãŠè©¦ã—ãã ã•ã„。",failedResendVerification:"確èªã‚³ãƒ¼ãƒ‰ã®å†é€ä¿¡ã«å¤±æ•—ã—ã¾ã—ãŸã€‚ã‚‚ã†ä¸€åº¦ãŠè©¦ã—ãã ã•ã„。",passwordResetRequired:"ã‚»ã‚ュリティ上ã®ç†ç”±ã‹ã‚‰ã€ãƒã‚°ã‚¤ãƒ³ã™ã‚‹å‰ã«ãƒ‘スワードをリセットã™ã‚‹å¿…è¦ãŒã‚りã¾ã™ã€‚リセットリンクをメールã§ç¢ºèªã—ã¦ãã ã•ã„。",resetLinkSent:"パスワードリセットリンクをメールã«é€ä¿¡ã—ã¾ã—ãŸã€‚",resendResetLink:"リセットリンクをå†é€ä¿¡",failedResendResetLink:"リセットリンクã®é€ä¿¡ã«å¤±æ•—ã—ã¾ã—ãŸã€‚ã‚‚ã†ä¸€åº¦ãŠè©¦ã—ãã ã•ã„。",termsAndPrivacy:"<terms>利用è¦ç´„</terms>ãŠã‚ˆã³<privacy>プライãƒã‚·ãƒ¼ãƒãƒªã‚·ãƒ¼</privacy>。"},PG={title:"アカウントを作æˆ",agreeToTerms:"「新è¦ç™»éŒ²ã€ã‚’クリックã™ã‚‹ã¨ã€<terms>利用è¦ç´„</terms>ãŠã‚ˆã³<privacy>プライãƒã‚·ãƒ¼ãƒãƒªã‚·ãƒ¼</privacy>ã«åŒæ„ã—ãŸã‚‚ã®ã¨ã¿ãªã•れã¾ã™ã€‚",signUpWithGoogle:"Googleã§æ–°è¦ç™»éŒ²",signUpWithGithub:"GitHubã§æ–°è¦ç™»éŒ²",signingUp:"登録ä¸...",creatingAccount:"アカウント作æˆä¸...",signUpButton:"æ–°è¦ç™»éŒ²",alreadyHaveAccount:"ã™ã§ã«Base44ã‚¢ã‚«ã‚¦ãƒ³ãƒˆã‚’ãŠæŒã¡ã§ã™ã‹ï¼Ÿ",logIn:"ãƒã‚°ã‚¤ãƒ³",validatingReferral:"紹介コードを確èªä¸...",invalidReferral:"無効ãªç´¹ä»‹ã‚³ãƒ¼ãƒ‰",youveBeenInvited:"招待ã•れã¾ã—ãŸï¼",invitedToJoin:"<strong>{{name}}</strong>ã•ã‚“ã‹ã‚‰Base44ã¸ã®æ‹›å¾…ã§ã™",signUpFreeCredits:"登録ã—ã¦10無料クレジットをç²å¾—ï¼",signUpBaseDayCredits:"登録ã—ã¦44無料クレジットをç²å¾—ï¼",letsBuild:"一緒ã«ç´ 晴らã—ã„ã‚‚ã®ã‚’作りã¾ã—ょã†ï¼",registrationFailed:"登録ã«å¤±æ•—ã—ã¾ã—ãŸã€‚ã‚‚ã†ä¸€åº¦ãŠè©¦ã—ãã ã•ã„。",failedValidateReferral:"紹介コードã®ç¢ºèªã«å¤±æ•—ã—ã¾ã—ãŸ",completeVerification:"èªè¨¼ã‚’完了ã—ã¦ãã ã•ã„",weakPassword:"å¼±ã„パスワード"},_G={title:"パスワードをリセット",subtitle:"登録ã«ä½¿ç”¨ã—ãŸãƒ¡ãƒ¼ãƒ«ã‚¢ãƒ‰ãƒ¬ã‚¹ã‚’入力ã—ã¦ãã ã•ã„。パスワードリセット用ã®ãƒªãƒ³ã‚¯ã‚’ãŠé€ã‚Šã—ã¾ã™ã€‚",backToLogin:"ãƒã‚°ã‚¤ãƒ³ã«æˆ»ã‚‹",loginEmail:"ãƒã‚°ã‚¤ãƒ³ãƒ¡ãƒ¼ãƒ«ã‚¢ãƒ‰ãƒ¬ã‚¹",emailPlaceholder:"例:name@email.com",sending:"é€ä¿¡ä¸...",verifyEmail:"メールを確èª",invalidEmail:"無効ãªãƒ¡ãƒ¼ãƒ«ã‚¢ãƒ‰ãƒ¬ã‚¹",failedSendReset:"リセットリンクã®é€ä¿¡ã«å¤±æ•—ã—ã¾ã—ãŸã€‚ã‚‚ã†ä¸€åº¦ãŠè©¦ã—ãã ã•ã„。"},xG={title:"メールを確èªã—ã¦ãã ã•ã„",subtitle:"ãƒ‘ã‚¹ãƒ¯ãƒ¼ãƒ‰ãƒªã‚»ãƒƒãƒˆã®æ‰‹é †ã‚’<strong>{{email}}</strong>ã«é€ä¿¡ã—ã¾ã—ãŸã€‚",backToReset:"ãƒ‘ã‚¹ãƒ¯ãƒ¼ãƒ‰ãƒªã‚»ãƒƒãƒˆã«æˆ»ã‚‹",checkInfo:"メールã§ãƒ‘スワードリセットリンクを確èªã—ã¦ãã ã•ã„。",mayTakeMinutes:"届ãã¾ã§ã«æ•°åˆ†ã‹ã‹ã‚‹å ´åˆãŒã‚りã¾ã™ã€‚",goToSignIn:"ãƒã‚°ã‚¤ãƒ³ã¸",didntGetEmail:"メールãŒå±Šãã¾ã›ã‚“ã‹ï¼Ÿ",resending:"å†é€ä¿¡ä¸...",resendEmail:"メールをå†é€ä¿¡",emailNotFound:"メールアドレスãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“。戻ã£ã¦ã‚‚ã†ä¸€åº¦ãŠè©¦ã—ãã ã•ã„。",newResetSent:"æ–°ã—ã„パスワードリセットメールをé€ä¿¡ã—ã¾ã—ãŸã€‚å—信トレイを確èªã—ã¦ãã ã•ã„。",failedResendEmail:"メールã®å†é€ä¿¡ã«å¤±æ•—ã—ã¾ã—ãŸã€‚ã‚‚ã†ä¸€åº¦ãŠè©¦ã—ãã ã•ã„。"},IG={title:"æ–°ã—ã„パスワードをè¨å®š",subtitle:"Base44ã®æ–°ã—ã„パスワードを入力ã—ã¦ãã ã•ã„",newPasswordLabel:"æ–°ã—ã„パスワード",newPasswordPlaceholder:"æ–°ã—ã„パスワードを入力",confirmPasswordLabel:"æ–°ã—ã„パスワードã®ç¢ºèª",confirmPasswordPlaceholder:"æ–°ã—ã„パスワードをå†å…¥åŠ›",resetting:"リセットä¸...",resetButton:"パスワードをリセット",backToLogIn:"ãƒã‚°ã‚¤ãƒ³ã«æˆ»ã‚‹",invalidToken:"リセットトークンãŒç„¡åйã¾ãŸã¯è¦‹ã¤ã‹ã‚Šã¾ã›ã‚“。新ã—ã„パスワードリセットをリクエストã—ã¦ãã ã•ã„。",passwordsMismatch:"パスワードãŒä¸€è‡´ã—ã¾ã›ã‚“。もã†ä¸€åº¦ãŠè©¦ã—ãã ã•ã„。",weakPassword:"å°‘ãªãã¨ã‚‚ä¸ç¨‹åº¦ã®å¼·åº¦ã®ãƒ‘スワードを作æˆã—ã¦ãã ã•ã„。",resetSuccess:"パスワードãŒãƒªã‚»ãƒƒãƒˆã•れã¾ã—ãŸï¼ãƒã‚°ã‚¤ãƒ³ãƒšãƒ¼ã‚¸ã«ãƒªãƒ€ã‚¤ãƒ¬ã‚¯ãƒˆã—ã¦ã„ã¾ã™...",resetSuccessLogin:"パスワードãŒãƒªã‚»ãƒƒãƒˆã•れã¾ã—ãŸï¼æ–°ã—ã„パスワードã§ãƒã‚°ã‚¤ãƒ³ã—ã¦ãã ã•ã„。",failedReset:"パスワードã®ãƒªã‚»ãƒƒãƒˆã«å¤±æ•—ã—ã¾ã—ãŸã€‚ã‚‚ã†ä¸€åº¦ãŠè©¦ã—ãã ã•ã„。",invalidOrExpiredToken:"リセットトークンãŒç„¡åйã¾ãŸã¯æœŸé™åˆ‡ã‚Œã§ã™"},RG={verifyTitle:"本人確èª",verification:{chooseMethod:"èªè¨¼æ–¹æ³•ã‚’é¸æŠž",authenticatorApp:"èªè¨¼ã‚¢ãƒ—リ",smsMessage:"SMSメッセージ",recoveryCode:"リカãƒãƒªãƒ¼ã‚³ãƒ¼ãƒ‰",continue:"続行",backToLogin:"ãƒã‚°ã‚¤ãƒ³ã«æˆ»ã‚‹",chooseAnotherMethod:"åˆ¥ã®æ–¹æ³•ã‚’é¸æŠž",verifyViaText:"テã‚ストメッセージã§ç¢ºèª",verifyViaApp:"èªè¨¼ã‚¢ãƒ—リã§ç¢ºèª",enterRecoveryCode:"リカãƒãƒªãƒ¼ã‚³ãƒ¼ãƒ‰ã‚’入力",rememberDevice:"ã“ã®ãƒ‡ãƒã‚¤ã‚¹ã‚’30日間記憶ã™ã‚‹",verifying:"確èªä¸...",verify:"確èª",useRecoveryCode:"リカãƒãƒªãƒ¼ã‚³ãƒ¼ãƒ‰ã‚’使用",sendingCodeTo:"{{phone}}ã«ã‚³ãƒ¼ãƒ‰ã‚’é€ä¿¡ä¸â€¦",enterCodeSentTo:"{{phone}}ã«é€ä¿¡ã•れãŸã‚³ãƒ¼ãƒ‰ã‚’入力",enterCodeFromApp:"èªè¨¼ã‚¢ãƒ—リã®ã‚³ãƒ¼ãƒ‰ã‚’入力",yourPhone:"ãŠä½¿ã„ã®é›»è©±",didntReceiveCode:"コードãŒå±Šãã¾ã›ã‚“ã‹ï¼Ÿ",resendIn:"{{seconds}}秒後ã«å†é€ä¿¡",resend:"å†é€ä¿¡",enterCompleteRecoveryCode:"完全ãªãƒªã‚«ãƒãƒªãƒ¼ã‚³ãƒ¼ãƒ‰ã‚’入力ã—ã¦ãã ã•ã„",enterCompleteCode:"6æ¡ã®ã‚³ãƒ¼ãƒ‰ã‚’入力ã—ã¦ãã ã•ã„",verificationFailed:"確èªã«å¤±æ•—ã—ã¾ã—ãŸã€‚ã‚‚ã†ä¸€åº¦ãŠè©¦ã—ãã ã•ã„。",failedSendCode:"コードã®é€ä¿¡ã«å¤±æ•—ã—ã¾ã—ãŸã€‚å†é€ä¿¡ã—ã¦ãã ã•ã„。"}},zG={buildingApp:"アプリを構築ä¸",verifyEmailSubtitle:"メールアドレスを確èªã—ã¦ç¶šè¡Œ",signUpSubtitle:"サインアップã—ã¦ã€ã‚¢ãƒ—リãŒå½¢ã«ãªã‚‹ã®ã‚’見届ã‘よã†",loginSubtitle:"ãƒã‚°ã‚¤ãƒ³ã—ã¦ã€ã‚¢ãƒ—リãŒå½¢ã«ãªã‚‹ã®ã‚’見届ã‘よã†"},MG={completeVerification:"ã‚»ã‚ュリティèªè¨¼ã‚’完了ã—ã¦ãã ã•ã„"},NG={title:"メールアドレスを確èª",subtitle:"{{email}}ã«ç¢ºèªã‚³ãƒ¼ãƒ‰ã‚’é€ä¿¡ã—ã¾ã—ãŸ",verificationCode:"確èªã‚³ãƒ¼ãƒ‰",fillAllFields:"ã™ã¹ã¦ã®ãƒ•ィールドを入力ã—ã¦ãã ã•ã„。",enterCodeSent:"メールã«é€ä¿¡ã•れãŸç¢ºèªã‚³ãƒ¼ãƒ‰ã‚’入力ã—ã¦ãã ã•ã„",verifying:"確èªä¸...",verifyEmail:"メールを確èª",wrongEmail:"メールアドレスãŒé•ã†ï¼Ÿå¤‰æ›´ã™ã‚‹",didntReceiveCode:"コードãŒå±Šãã¾ã›ã‚“ã‹ï¼Ÿ",resendEmail:"メールをå†é€ä¿¡",emailVerifiedLogin:"メールãŒç¢ºèªã•れã¾ã—ãŸï¼ãƒã‚°ã‚¤ãƒ³ã§ãã¾ã™ã€‚",emailVerifiedContinue:"メールãŒç¢ºèªã•れã¾ã—ãŸï¼ãƒã‚°ã‚¤ãƒ³ã—ã¦ç¶šè¡Œã—ã¦ãã ã•ã„。",invalidCode:"無効ãªç¢ºèªã‚³ãƒ¼ãƒ‰ã§ã™ã€‚ã‚‚ã†ä¸€åº¦ãŠè©¦ã—ãã ã•ã„。",verificationFailed:"確èªã«å¤±æ•—ã—ã¾ã—ãŸã€‚ã‚‚ã†ä¸€åº¦ãŠè©¦ã—ãã ã•ã„。",newCodeSent:"æ–°ã—ã„確èªã‚³ãƒ¼ãƒ‰ã‚’メールã«é€ä¿¡ã—ã¾ã—ãŸã€‚",failedResendCode:"確èªã‚³ãƒ¼ãƒ‰ã®å†é€ä¿¡ã«å¤±æ•—ã—ã¾ã—ãŸã€‚ã‚‚ã†ä¸€åº¦ãŠè©¦ã—ãã ã•ã„。"},FG={login:EG,register:PG,forgotPassword:_G,checkEmail:xG,resetPassword:IG,mfa:RG,authModal:zG,turnstile:MG,otp:NG},LG={notFound:"プãƒãƒ•ィールãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“",notFoundDescription:"ビルダープãƒãƒ•ィール @{{username}} ã¯å˜åœ¨ã—ã¾ã›ã‚“。"},jG={edit:"編集",done:"完了",cancel:"ã‚ャンセル",appCount_one:"{{count}} アプリ",appCount_other:"{{count}} アプリ",joined:"{{date}} ã«å‚åŠ ",namePlaceholder:"ã‚ãªãŸã®åå‰",displayNameLabel:"表示å",usernameLabel:"ユーザーå",changeUsername:"ユーザーåを変更",saveChanges:"変更をä¿å˜",partnerBadge:"Base44 パートナー"},OG={label:"自己紹介",placeholder:"自己紹介を書ã„ã¦ãã ã•ã„...",emptyPlaceholder:"訪å•者ã«è‡ªå·±ç´¹ä»‹ã—ã¾ã—ょㆠ— çŸã„è‡ªå·±ç´¹ä»‹ã‚’è¿½åŠ ã—ã¦ãã ã•ã„。",hint:"最大220æ–‡å—",maxChars:"最大{{max}}æ–‡å—"},BG={viewTitle:"アプリ",appsHeader:"アプリ ({{count}})",appsHeaderEmpty:"アプリ",featuredCounter_one:"{{count}} 件を注目表示",featuredCounter_other:"{{count}} 件を注目表示",editHint:"公開プãƒãƒ•ィールã«è¡¨ç¤ºã™ã‚‹ã‚¢ãƒ—ãƒªã‚’é¸æŠžã—ã¦ãã ã•ã„。",noPublishedApps:"公開ã•れãŸã‚¢ãƒ—リãŒã‚りã¾ã›ã‚“。ã¾ãšã‚¢ãƒ—リを公開ã—ã¦ãã ã•ã„ï¼",noPublishedAppsTitle:"公開ã•れãŸã‚¢ãƒ—リãŒã‚りã¾ã›ã‚“",noPublishedAppsDescription:"ã¾ã アプリを公開ã—ã¦ã„ã¾ã›ã‚“。ワークスペースã«ç§»å‹•ã—ã¦ãƒ‰ãƒ©ãƒ•トを完æˆã•ã›ã€å…¬é–‹ã—ã¦ãƒ—ãƒãƒ•ィールã«è¡¨ç¤ºã—ã¾ã—ょã†ã€‚",viewMyApps:"マイアプリを表示",untitled:"無題",updated:"ピン留ã‚アプリを更新ã—ã¾ã—ãŸï¼",updateFailed:"ピン留ã‚ã‚¢ãƒ—ãƒªã®æ›´æ–°ã«å¤±æ•—ã—ã¾ã—ãŸ",manageApps:"アプリを管ç†",chooseTitle:"表示ã™ã‚‹ã‚¢ãƒ—ãƒªã‚’é¸æŠž",chooseDescription:"公開プãƒãƒ•ィールã«è¡¨ç¤ºã™ã‚‹å…¬é–‹æ¸ˆã¿ã‚¢ãƒ—リを最大{{max}}å€‹é¸æŠžã—ã¦ãã ã•ã„",selectAll:"ã™ã¹ã¦é¸æŠž",deselectAll:"ã™ã¹ã¦è§£é™¤",saveChanges:"ä¿å˜",searchApps:"アプリを検索...",publicBadge:"公開",privateBadge:"éžå…¬é–‹",showMore:"ã‚‚ã£ã¨è¦‹ã‚‹",showLess:"折りãŸãŸã‚€",maxReached:"最大{{max}}個ã®ã‚¢ãƒ—リã¾ã§é¸æŠžã§ãã¾ã™",close:"é–‰ã˜ã‚‹",noSearchResults:"検索ã«ä¸€è‡´ã™ã‚‹ã‚¢ãƒ—リãŒã‚りã¾ã›ã‚“",updatedRecently:"最近更新",selectAllCount:"ã™ã¹ã¦é¸æŠž ({{count}})",deselectAllCount:"ã™ã¹ã¦è§£é™¤ ({{count}})"},UG={editTooltip:"ソーシャルリンクを編集",addLinks:"ã‚½ãƒ¼ã‚·ãƒ£ãƒ«ãƒªãƒ³ã‚¯ã‚’è¿½åŠ ",addLink:"ãƒªãƒ³ã‚¯ã‚’è¿½åŠ ",cancelTooltip:"ã‚ャンセル",removeTooltip:"削除",label:"ソーシャル",hint:"最大6ã¤ã®ã‚½ãƒ¼ã‚·ãƒ£ãƒ«ãƒªãƒ³ã‚¯ã‚’è¿½åŠ ",linkLabel:"リンク",addCustomLink:"ã‚«ã‚¹ã‚¿ãƒ ãƒªãƒ³ã‚¯ã‚’è¿½åŠ ",pastePlaceholder:"URLを貼り付ã‘",enterUsernameOrUrl:"ユーザーåã¾ãŸã¯ãƒ—ãƒãƒ•ィールURLを入力ã—ã¦ãã ã•ã„",movedTo:"{{platform}}ã«ç§»å‹•ã—ã¾ã—ãŸ",addedAsCustom:"カスタムリンクã¨ã—ã¦è¿½åŠ ã—ã¾ã—ãŸ",fieldOccupied:"{{platform}}ã®ãƒªãƒ³ã‚¯ã®ã‚ˆã†ã§ã™ — ãã®ãƒ•ィールドã«ã¯æ—¢ã«URLãŒã‚りã¾ã™",customSlotsFull:"{{platform}}ã®ãƒªãƒ³ã‚¯ã®ã‚ˆã†ã§ã™ã€‚è¿½åŠ ã™ã‚‹ã«ã¯ã‚«ã‚¹ã‚¿ãƒ リンクを削除ã—ã¦ãã ã•ã„。"},qG={profileUpdated:"プãƒãƒ•ィールを更新ã—ã¾ã—ãŸï¼",profileUpdateFailed:"プãƒãƒ•ã‚£ãƒ¼ãƒ«ã®æ›´æ–°ã«å¤±æ•—ã—ã¾ã—ãŸ",usernameClaimed:"ユーザーåã‚’å–å¾—ã—ã¾ã—ãŸï¼",usernameClaimFailed:"ユーザーåã®å–å¾—ã«å¤±æ•—ã—ã¾ã—ãŸ",loadFailed:"プãƒãƒ•ィールã®èªã¿è¾¼ã¿ã«å¤±æ•—ã—ã¾ã—ãŸ",invalidImageType:"有効ãªç”»åƒã‚’アップãƒãƒ¼ãƒ‰ã—ã¦ãã ã•ã„(JPGã€PNGã€GIFã€ã¾ãŸã¯WebP)",imageTooLarge:"ç”»åƒã¯5MB未満ã«ã—ã¦ãã ã•ã„",avatarUpdated:"プãƒãƒ•ィール画åƒã‚’æ›´æ–°ã—ã¾ã—ãŸï¼",avatarUploadFailed:"ç”»åƒã®ã‚¢ãƒƒãƒ—ãƒãƒ¼ãƒ‰ã«å¤±æ•—ã—ã¾ã—ãŸ",avatarRemoveFailed:"ç”»åƒã®å‰Šé™¤ã«å¤±æ•—ã—ã¾ã—ãŸ"},VG={title:"å¤‰æ›´ã‚’ç ´æ£„ã—ã¾ã™ã‹ï¼Ÿ",description:"ä¿å˜ã•れã¦ã„ãªã„変更ãŒå¤±ã‚れã¾ã™ã€‚",confirm:"ç ´æ£„"},$G={title:"ユーザーåを変更",placeholder:"ユーザーå",checking:"確èªä¸...",available:"利用å¯èƒ½ï¼",notAvailable:"利用ã§ãã¾ã›ã‚“",urlWarning:"プãƒãƒ•ィールURL㌠/@{{username}} ã«å¤‰æ›´ã•れã¾ã™ã€‚以å‰ã®ãƒªãƒ³ã‚¯ã¯æ©Ÿèƒ½ã—ãªããªã‚Šã¾ã™ã€‚",cancel:"ã‚ャンセル",claim:"ユーザーåã‚’å–å¾—",tryInstead:"ã“ã¡ã‚‰ã¯ã„ã‹ãŒã§ã™ã‹ï¼š"},WG={locationLabel:"所在地",locationPlaceholder:"例: æ±äº¬ã€æ—¥æœ¬",showEmailLabel:"アカウントã®ãƒ¡ãƒ¼ãƒ«ã‚’表示"},GG={title:"ã‚«ãƒãƒ¼ç”»åƒã‚’æ›´æ–°",description:"カスタムグラデーションã‹ã‚‰é¸ã¶ã‹ã€ç”»åƒã‚’アップãƒãƒ¼ãƒ‰ã—ã¦ãã ã•ã„",uploadFile:"カスタム画åƒã‚’アップãƒãƒ¼ãƒ‰",orUseTemplate:"ã¾ãŸã¯ãƒ†ãƒ³ãƒ—レートを使用",cancel:"ã‚ャンセル",saveChanges:"変更をä¿å˜",updated:"ã‚«ãƒãƒ¼ç”»åƒã‚’æ›´æ–°ã—ã¾ã—ãŸï¼",updateFailed:"ã‚«ãƒãƒ¼ç”»åƒã®æ›´æ–°ã«å¤±æ•—ã—ã¾ã—ãŸ",uploadFailed:"ç”»åƒã®ã‚¢ãƒƒãƒ—ãƒãƒ¼ãƒ‰ã«å¤±æ•—ã—ã¾ã—ãŸ",dragToReposition:"ドラッグã—ã¦ä½ç½®ã‚’調整",replaceImage:"ç”»åƒã‚’変更",reposition:"ä½ç½®ã‚’調整"},HG={title:"アクティビティ",mon:"月",wed:"æ°´",fri:"金",less:"å°‘",more:"多",messages_one:"{{count}} プãƒãƒ³ãƒ—ト",messages_other:"{{count}} プãƒãƒ³ãƒ—ト",founderMode:"Founder mode",noActivity:"アクティビティãªã—",onDate:"{{date}}ã«",showOnProfile:"プãƒãƒ•ィールã«è¡¨ç¤º"},YG={customize:"プãƒãƒ•ィールをカスタマイズ",title:"公開アプリã¯ã¾ã ã‚りã¾ã›ã‚“",description:"プãƒãƒ•ィールã¯ã€Base44コミュニティã¨ã‚ãªãŸã®ä½œå“を共有ã™ã‚‹æœ€é©ãªå ´æ‰€ã§ã™ã€‚公開済ã¿ã®ã‚¢ãƒ—リã‹ã‚‰é¸æŠžã—ã¦ã“ã“ã«è¡¨ç¤ºã™ã‚‹ã‹ã€æ–°ã—ã„プãƒã‚¸ã‚§ã‚¯ãƒˆã‚’å§‹ã‚ã¦ã‚¢ã‚¯ãƒ†ã‚£ãƒ“ティを増やã—ã¾ã—ょã†ã€‚",anonDescription:"ã“ã®ãƒ“ルダーã¯ã¾ã アプリを公開ã—ã¦ã„ã¾ã›ã‚“。最新ã®ã‚¢ã‚¯ãƒ†ã‚£ãƒ“ティを確èªã™ã‚‹ãŸã‚ã«ã¾ãŸãŠè¶Šã—ã„ãŸã ãã‹ã€ä»–ã®ã‚¯ãƒªã‚¨ã‚¤ã‚¿ãƒ¼ã®ä½œå“ã‚’ã”覧ãã ã•ã„。",startCreating:"作æˆã‚’é–‹å§‹",chooseFromApps:"アプリã‹ã‚‰é¸æŠž"},KG={page:LG,header:jG,bio:OG,pinnedApps:BG,social:UG,toast:qG,discardDialog:VG,usernameDialog:$G,details:WG,coverImage:GG,activity:HG,emptyState:YG},ZG={title:"AIエージェント",beta:"ベータ",subtitle:"Base44ã®AIエージェントインフラを使用ã—ã¦ã‚¢ãƒ—リã«AIエージェントを構築",disabled:"無効",setupAgents:"エージェントをセットアップ",enableAgents:"エージェントを有効ã«ã™ã‚‹",turnOnToggle:"トグルをオンã«ã—ã¦ã‚¨ãƒ¼ã‚¸ã‚§ãƒ³ãƒˆã®ä½œæˆã‚’許å¯ã—ã¾ã™",addFirstAgent:"最åˆã®ã‚¨ãƒ¼ã‚¸ã‚§ãƒ³ãƒˆã‚’è¿½åŠ ",creditsUsed:"使用クレジット: {{credits}}",creditsUsedTooltip:"月次ã®çµ±åˆã‚¯ãƒ¬ã‚¸ãƒƒãƒˆä½¿ç”¨é‡",askChatToCreate:"ãƒãƒ£ãƒƒãƒˆã§ã‚¨ãƒ¼ã‚¸ã‚§ãƒ³ãƒˆã®ä½œæˆã‚’ä¾é ¼ã—ã¦ãã ã•ã„ã€‚ã‚¨ãƒ¼ã‚¸ã‚§ãƒ³ãƒˆãŒæ‹…ã†ã¹ã役割ã¨å®Ÿè¡Œã™ã‚‹ã‚¿ã‚¹ã‚¯ã‚’説明ã—ã¦ãã ã•ã„。",defineInConfig:"ãƒãƒ¼ã‚«ãƒ«è¨å®šãƒ•ァイルã§ã‚¨ãƒ¼ã‚¸ã‚§ãƒ³ãƒˆã‚’定義ã—ã€Base44 CLIを使用ã—ã¦ã‚¢ãƒ—リã¨åŒæœŸã—ã¾ã™ã€‚",viewDocumentation:"ドã‚ュメントを表示",noAgentsYet:"エージェントã¯ã¾ã ã‚りã¾ã›ã‚“",promptChatToCreate:"ãƒãƒ£ãƒƒãƒˆã«ãƒ—ãƒãƒ³ãƒ—トを入力ã—ã¦æœ€åˆã®AIエージェントを作æˆã—ã¾ã—ょã†",agentsTab:"エージェント",conversationsTab:"会話",searchConversations:"会話を検索...",filterAll:"ã™ã¹ã¦",filterMine:"自分ã®",filterUsers:"ユーザー",noConversationsYet:"会話ã¯ã¾ã ã‚りã¾ã›ã‚“",noConversationsMatchSearch:"検索ã«ä¸€è‡´ã™ã‚‹ä¼šè©±ã¯ã‚りã¾ã›ã‚“",tryDifferentSearch:"åˆ¥ã®æ¤œç´¢èªžå¥ã‚’ãŠè©¦ã—ãã ã•ã„",goToAgentsTab:"エージェントタブã«ç§»å‹•ã—ã¦ä¼šè©±ã‚’é–‹å§‹ã—ã¾ã—ょã†",conversationStarted:"会話を開始ã—ã¾ã—ãŸ",agentConfiguration:"エージェントè¨å®š",guidelines:"ガイドライン",tools:"ツール",whatsapp:"WhatsApp",toolsAndCapabilities:"ãƒ„ãƒ¼ãƒ«ã¨æ©Ÿèƒ½",descriptionLabel:"説明",systemPromptDesc:"ã“れã¯ã‚¨ãƒ¼ã‚¸ã‚§ãƒ³ãƒˆã®å‹•作を定義ã™ã‚‹ã‚·ã‚¹ãƒ†ãƒ プãƒãƒ³ãƒ—トã§ã™",briefDescription:"ã“ã®ã‚¨ãƒ¼ã‚¸ã‚§ãƒ³ãƒˆã®å†…容を簡å˜ã«èª¬æ˜Ž...",instructions:"指示",instructionsDesc:"エージェントãŒå¾“ã†ã¹ã具体的ãªã‚¬ã‚¤ãƒ‰ãƒ©ã‚¤ãƒ³ã¨ãƒ«ãƒ¼ãƒ«",detailedInstructions:"エージェントã¸ã®è©³ç´°ãªæŒ‡ç¤º...",availableTools:"利用å¯èƒ½ãªãƒ„ール",configureTools:"ã“ã®ã‚¨ãƒ¼ã‚¸ã‚§ãƒ³ãƒˆãŒã‚¢ã‚¯ã‚»ã‚¹ã§ãるツールã¨ãƒ‡ãƒ¼ã‚¿ã‚’è¨å®šã—ã¾ã™",add:"è¿½åŠ ",allEntitySlotsUsed:"ã™ã¹ã¦ã®ã‚¨ãƒ³ãƒ†ã‚£ãƒ†ã‚£ã‚¹ãƒãƒƒãƒˆãŒä½¿ç”¨æ¸ˆã¿ã§ã™",addEntityTool:"ã‚¨ãƒ³ãƒ†ã‚£ãƒ†ã‚£ãƒ„ãƒ¼ãƒ«ã‚’è¿½åŠ ",entityToolDesc:"データベースæ“作ã¨CRUDアクセス",allFunctionSlotsUsed:"ã™ã¹ã¦ã®é–¢æ•°ã‚¹ãƒãƒƒãƒˆãŒä½¿ç”¨æ¸ˆã¿ã§ã™",addBackendFunction:"ãƒãƒƒã‚¯ã‚¨ãƒ³ãƒ‰é–¢æ•°ã‚’è¿½åŠ ",backendFunctionDesc:"カスタムãƒãƒƒã‚¯ã‚¨ãƒ³ãƒ‰ãƒã‚¸ãƒƒã‚¯ã¨ã‚¤ãƒ³ãƒ†ã‚°ãƒ¬ãƒ¼ã‚·ãƒ§ãƒ³",noToolsConfigured:"ツールãŒè¨å®šã•れã¦ã„ã¾ã›ã‚“",addToolsDesc:"エンティティツールã¾ãŸã¯ãƒãƒƒã‚¯ã‚¨ãƒ³ãƒ‰é–¢æ•°ã‚’è¿½åŠ ã—ã¦ã‚¨ãƒ¼ã‚¸ã‚§ãƒ³ãƒˆã«æ©Ÿèƒ½ã‚’æŒãŸã›ã¾ã™",entityTool:"エンティティツール",selectEntity:"ã‚¨ãƒ³ãƒ†ã‚£ãƒ†ã‚£ã‚’é¸æŠž",allowedOperations:"許å¯ã•ã‚ŒãŸæ“作",deleteWarning:"注æ„: エージェントãŒå‰Šé™¤ã—ãŸãƒ‡ãƒ¼ã‚¿ã¯å¾©å…ƒã§ãã¾ã›ã‚“",backendFunction:"ãƒãƒƒã‚¯ã‚¨ãƒ³ãƒ‰é–¢æ•°",selectBackendFunction:"ãƒãƒƒã‚¯ã‚¨ãƒ³ãƒ‰é–¢æ•°ã‚’é¸æŠž",functionDescription:"関数ã®èª¬æ˜Ž",describeFunction:"ã“ã®é–¢æ•°ã‚’ã„ã¤ã€ã©ã®ã‚ˆã†ã«ä½¿ç”¨ã™ã¹ãã‹ã‚’説明ã—ã¦ãã ã•ã„...",whatsappIntegration:"WhatsAppインテグレーション",whatsappDesc:"エージェントをWhatsAppã«æŽ¥ç¶šã—ã¦ã‚·ãƒ¼ãƒ レスãªã‚³ãƒŸãƒ¥ãƒ‹ã‚±ãƒ¼ã‚·ãƒ§ãƒ³ã‚’実ç¾",testChat:"テストãƒãƒ£ãƒƒãƒˆ",addWhatsapp:"アプリã«WhatsAppã‚’è¿½åŠ ",whatsappEnableDesc:"1ã¤ã®ã‚³ãƒžãƒ³ãƒ‰ã§ãƒ¦ãƒ¼ã‚¶ãƒ¼ã«WhatsAppアクセスを有効ã«ã—ã¾ã™",addWhatsappButton:"{{agent}}用ã®WhatsAppãƒœã‚¿ãƒ³ã‚’è¿½åŠ ",sendToChat:"ãƒãƒ£ãƒƒãƒˆã«é€ä¿¡",fullChatCapabilities:"フルãƒãƒ£ãƒƒãƒˆæ©Ÿèƒ½",fullChatDesc:"ツールやデータアクセスをå«ã‚€ã™ã¹ã¦ã®ã‚¦ã‚§ãƒ–ãƒãƒ£ãƒƒãƒˆæ©Ÿèƒ½ãŒWhatsAppã§ã‚·ãƒ¼ãƒ レスã«å‹•作ã—ã¾ã™",voiceMediaSupport:"音声・メディア対応",voiceMediaDesc:"ユーザーã¯è‡ªç„¶ãªã‚¤ãƒ³ã‚¿ãƒ©ã‚¯ã‚·ãƒ§ãƒ³ã®ãŸã‚ã«ãƒœã‚¤ã‚¹ãƒŽãƒ¼ãƒˆã‚„ç”»åƒã‚’é€ä¿¡ã§ãã¾ã™",customNumbers:"カスタム番å·",customNumbersDesc:"独自ã®WhatsApp Businessã®ç•ªå·ã‚’接続ã§ãã¾ã™",easyUiIntegration:"ç°¡å˜ãªUIçµ±åˆ",easyUiDesc:"シンプルãªãƒãƒ£ãƒƒãƒˆã‚³ãƒžãƒ³ãƒ‰ã§ã‚¢ãƒ—リã«WhatsAppãƒœã‚¿ãƒ³ã‚’è¿½åŠ ",welcomeMessage:"ウェルカムメッセージ",welcomeMessageDesc:"エージェントを紹介ã—ã€æœŸå¾…ã‚’è¨å®šã™ã‚‹æ¸©ã‹ã„挨拶を作æˆã—ã¦ãã ã•ã„",charCount:"{{count}}/500",editAgent:"エージェントを編集",edit:"編集",startChat:"ãƒãƒ£ãƒƒãƒˆã‚’é–‹å§‹",chat:"ãƒãƒ£ãƒƒãƒˆ",functionCount:"{{count}}個ã®é–¢æ•°",noDescriptionProvided:"説明ã¯ã‚りã¾ã›ã‚“",entities:"エンティティ:",activeConversation:"アクティブãªä¼šè©±",readOnlyConversation:"èªã¿å–り専用ã®ä¼šè©±",startConversation:"会話を開始",typeMessageBelow:"下ã«ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã‚’入力ã—ã¦å§‹ã‚ã¾ã—ょã†",typeYourMessage:"メッセージを入力...",cancel:"ã‚ャンセル",saving:"ä¿å˜ä¸...",save:"ä¿å˜",commandAddedToChat:"コマンドãŒãƒãƒ£ãƒƒãƒˆã«è¿½åŠ ã•れã¾ã—ãŸã€‚Enterã‚ーã§é€ä¿¡ã—ã¦ãã ã•ã„。",failedToSaveAgentConfiguration:"エージェントè¨å®šã®ä¿å˜ã«å¤±æ•—ã—ã¾ã—ãŸ",promptAddedToChat:"プãƒãƒ³ãƒ—トをãƒãƒ£ãƒƒãƒˆã«è¿½åŠ ã—ã¾ã—ãŸ",unableToLoadSuggestions:"ææ¡ˆã‚’èªã¿è¾¼ã‚ã¾ã›ã‚“ã§ã—ãŸã€‚後ã§ã‚‚ã†ä¸€åº¦ãŠè©¦ã—ãã ã•ã„。",createAgent:"エージェントを作æˆ",createAgentTitle:"エージェントを作æˆ",createAgentDescription:"ãƒãƒ£ãƒƒãƒˆã«ã‚¨ãƒ¼ã‚¸ã‚§ãƒ³ãƒˆã‚’作æˆã™ã‚‹ã‚ˆã†ä¾é ¼ã—ã¦ãã ã•ã„。エージェントã®å½¹å‰²ã¨å®Ÿè¡Œã™ã‚‹ã‚¿ã‚¹ã‚¯ã‚’説明ã—ã¦ãã ã•ã„。",manageAgentsAndConversations:"エージェントã¨ä¼šè©±ã‚’管ç†",skills:"スã‚ル",skillsEnabledLimit:"エージェントã”ã¨ã«æœ€å¤§{{count}}個ã®ã‚¹ã‚ルを有効ã«ã§ãã¾ã™ã€‚",appSkillsTitle:"アプリスã‚ル",appSkillsDescription:"ã“ã®ã‚¢ãƒ—リ内ã®ã‚¨ãƒ¼ã‚¸ã‚§ãƒ³ãƒˆç”¨ã®å†åˆ©ç”¨å¯èƒ½ãªæŒ‡ç¤ºã‚¹ã‚ル。",addSkill:"スã‚ãƒ«è¿½åŠ ",noAppSkillsYet:"アプリスã‚ルãŒã¾ã ã‚りã¾ã›ã‚“。ã“ã®ã‚¢ãƒ—リ内ã®ã‚¨ãƒ¼ã‚¸ã‚§ãƒ³ãƒˆé–“ã§å†åˆ©ç”¨ã™ã‚‹ãŸã‚ã«ã‚¹ã‚ルを作æˆã—ã¦ãã ã•ã„。",workspaceSkillsTitle:"ワークスペーススã‚ル",workspaceSkillsDescription:"ã“ã®ãƒ¯ãƒ¼ã‚¯ã‚¹ãƒšãƒ¼ã‚¹ã®å…±æœ‰ã‚¹ã‚ルã§ã™ã€‚オンã«åˆ‡ã‚Šæ›¿ãˆã¦ã“ã®ã‚¨ãƒ¼ã‚¸ã‚§ãƒ³ãƒˆã§æœ‰åйã«ã—ã¦ãã ã•ã„。",loadingWorkspaceSkills:"ワークスペーススã‚ルをèªã¿è¾¼ã¿ä¸...",noWorkspaceSkillsAvailable:"ç¾åœ¨åˆ©ç”¨å¯èƒ½ãªå…±æœ‰ãƒ¯ãƒ¼ã‚¯ã‚¹ãƒšãƒ¼ã‚¹ã‚¹ã‚ルã¯ã‚りã¾ã›ã‚“。",manageWorkspaceSkills:"ワークスペーススã‚ルを管ç†",workspaceSkillSource:"ワークスペース",appSkillSource:"アプリ",unavailable:"利用ä¸å¯",addAppSkill:"アプリスã‚ãƒ«è¿½åŠ ",editAppSkill:"{{name}}を編集",skillName:"スã‚ルå",skillNameHint:"å°æ–‡å—ã€æ•°å—ã€ãƒã‚¤ãƒ•ンを使用ã—ã¦ãã ã•ã„。",skillNameInvalid:"åå‰ã¯å°æ–‡å—ã®è‹±æ•°å—ã¨ãƒã‚¤ãƒ•ãƒ³ã§æ§‹æˆã—ã€å…ˆé ・末尾ã«ãƒã‚¤ãƒ•ンã¯ä»˜ã‘ã¾ã›ã‚“(例:'code-review'ã€'sql-expert')。",skillDescription:"説明",skillInstructions:"指示",enableForCurrentAgent:"ç¾åœ¨ã®ã‚¨ãƒ¼ã‚¸ã‚§ãƒ³ãƒˆã§æœ‰åйã«ã™ã‚‹",enableForCurrentAgentDescription:"ç¾åœ¨ã®ã‚¨ãƒ‡ã‚£ã‚¿ãƒ¼ã®çŠ¶æ…‹ãŒå¤‰æ›´ã•れã€ã‚¨ãƒ¼ã‚¸ã‚§ãƒ³ãƒˆã¨å…±ã«ä¿å˜ã•れã¾ã™ã€‚",createSkill:"スã‚ル作æˆ",saveChanges:"変更をä¿å˜",workspaceSkillUnavailableDescription:"ã“ã®ãƒ¯ãƒ¼ã‚¯ã‚¹ãƒšãƒ¼ã‚¹ã‚¹ã‚ルã¯ç„¡åŠ¹åŒ–ã•れã¦ã„ã‚‹ã‹åˆ©ç”¨ã§ãã¾ã›ã‚“。",appSkillUnavailableDescription:"ã“ã®ã‚¢ãƒ—リスã‚ルã¯ã‚¢ãƒ—リã®ã‚¹ã‚ルライブラリã«å˜åœ¨ã—ãªããªã‚Šã¾ã—ãŸã€‚",skillValidationRequired:"åå‰ã€èª¬æ˜Žã€æŒ‡ç¤ºãŒå¿…è¦ã§ã™",skillCreated:"スã‚ルãŒä½œæˆã•れã¾ã—ãŸ",skillUpdated:"スã‚ãƒ«ãŒæ›´æ–°ã•れã¾ã—ãŸ",failedToSaveSkill:"スã‚ルã®ä¿å˜ã«å¤±æ•—ã—ã¾ã—ãŸ",skillSavedButAssignmentsFailed:"スã‚ルã¯ä¿å˜ã•れã¾ã—ãŸãŒã€ã‚¨ãƒ¼ã‚¸ã‚§ãƒ³ãƒˆã¸ã®ã‚¢ã‚¿ãƒƒãƒã«å¤±æ•—ã—ã¾ã—ãŸ",skillSavedButAssignmentsRefreshDelayed:"エディターを自動更新ã§ãã¾ã›ã‚“ã§ã—ãŸã€‚最新ã®çŠ¶æ…‹ã‚’ç¢ºèªã™ã‚‹ã«ã¯å†èªã¿è¾¼ã¿ã—ã¦ãã ã•ã„。",skillSavedButSyncFailed:"スã‚ルã¯ä¿å˜ã•れã¾ã—ãŸãŒã€ã‚¨ãƒ¼ã‚¸ã‚§ãƒ³ãƒˆçŠ¶æ…‹ã®åŒæœŸã«å¤±æ•—ã—ã¾ã—ãŸ",skillSavedButSyncRefreshDelayed:"スã‚ルã¯ä¿å˜ã•れã¾ã—ãŸãŒã€ã‚¨ãƒ‡ã‚£ã‚¿ãƒ¼ã‚’自動更新ã§ãã¾ã›ã‚“ã§ã—ãŸã€‚最新ã®çŠ¶æ…‹ã‚’ç¢ºèªã™ã‚‹ã«ã¯å†èªã¿è¾¼ã¿ã—ã¦ãã ã•ã„。",skillSavedStateRefreshed:"スã‚ルをä¿å˜ã—ã¾ã—ãŸã€‚最新ã®ä¿å˜çŠ¶æ…‹ã«åˆã‚ã›ã¦ã‚¨ãƒ‡ã‚£ã‚¿ãƒ¼ã‚’æ›´æ–°ã—ã¾ã—ãŸã€‚",skillSavedRefreshDelayed:"スã‚ルã¯ä¿å˜ã•れã¾ã—ãŸãŒã€ã‚¨ãƒ‡ã‚£ã‚¿ãƒ¼ã‚’自動更新ã§ãã¾ã›ã‚“ã§ã—ãŸã€‚最新ã®çŠ¶æ…‹ã‚’ç¢ºèªã™ã‚‹ã«ã¯å†èªã¿è¾¼ã¿ã—ã¦ãã ã•ã„。",skillDeleted:"スã‚ルãŒå‰Šé™¤ã•れã¾ã—ãŸ",skillDeletedRefreshDelayed:"スã‚ルã¯å‰Šé™¤ã•れã¾ã—ãŸãŒã€ã‚¨ãƒ‡ã‚£ã‚¿ãƒ¼ã‚’自動更新ã§ãã¾ã›ã‚“ã§ã—ãŸã€‚最新ã®çŠ¶æ…‹ã‚’ç¢ºèªã™ã‚‹ã«ã¯å†èªã¿è¾¼ã¿ã—ã¦ãã ã•ã„。",failedToDeleteSkill:"スã‚ルã®å‰Šé™¤ã«å¤±æ•—ã—ã¾ã—ãŸ",skillLimitReached:"ã“ã®ã‚¨ãƒ¼ã‚¸ã‚§ãƒ³ãƒˆã¯ã™ã§ã«æœ‰åйã«ã§ãるスã‚ルã®ä¸Šé™ã«é”ã—ã¦ã„ã¾ã™ã€‚",skillTemplatePickerTitle:"スタータースã‚ãƒ«ã‚’é¸æŠž",startFromScratch:"ゼãƒã‹ã‚‰ä½œæˆ",startFromScratchDescription:"ç‹¬è‡ªã®æŒ‡ç¤ºã§ã‚«ã‚¹ã‚¿ãƒ スã‚ルを作æˆã—ã¾ã™ã€‚",useTemplate:"テンプレートを使ã†",skillTemplates:{refundPolicy:{description:"返金ルールã€é©ç”¨æ¡ä»¶ã€ã‚¨ã‚¹ã‚«ãƒ¬ãƒ¼ã‚·ãƒ§ãƒ³å‰ã«ã‚¨ãƒ¼ã‚¸ã‚§ãƒ³ãƒˆãŒé›†ã‚ã‚‹ã¹ãæƒ…å ±ã®ãƒ†ãƒ³ãƒ—レートã§ã™ã€‚"},supportEscalation:{description:"人間ã®ã‚µãƒãƒ¼ãƒˆã¸å¼•ãç¶™ãタイミングã¨ã€ã‚¨ãƒ¼ã‚¸ã‚§ãƒ³ãƒˆãŒæº–å‚™ã™ã¹ãè¦ç´„ã®ãƒ†ãƒ³ãƒ—レートã§ã™ã€‚"},pricingAndPlans:{description:"プランã€è«‹æ±‚サイクルã€ã‚¢ãƒƒãƒ—グレードã€enterpriseå•ã„åˆã‚ã›ã®æŒ¯ã‚Šåˆ†ã‘を説明ã™ã‚‹ãŸã‚ã®ãƒ†ãƒ³ãƒ—レートã§ã™ã€‚"},brandVoice:{description:"エージェントã®å£èª¿ã€æ–‡ä½“ã€ã‚³ãƒŸãƒ¥ãƒ‹ã‚±ãƒ¼ã‚·ãƒ§ãƒ³ãƒ«ãƒ¼ãƒ«ã‚’ブランドã«åˆã‚ã›ã‚‹ãŸã‚ã®ãƒ†ãƒ³ãƒ—レートã§ã™ã€‚"}},memory:"メモリ",memoryTitle:"エージェントメモリ",memorySubtitle:"長期メモリを有効ã«ã—ã¦ã€ã‚¨ãƒ¼ã‚¸ã‚§ãƒ³ãƒˆãŒä¼šè©±ã‚’ã¾ãŸã„ã§æƒ…å ±ã‚’è¨˜æ†¶ã§ãるよã†ã«ã—ã¾ã™",enableMemory:"メモリを有効ã«ã™ã‚‹",enableMemoryDesc:"有効ã«ã™ã‚‹ã¨ã€ã‚¨ãƒ¼ã‚¸ã‚§ãƒ³ãƒˆã¯ä¼šè©±ã‚’ã¾ãŸã„ã§æƒ…å ±ã‚’ä¿å˜ãƒ»å‘¼ã³å‡ºã—ã§ãã¾ã™",memoryScope:"メモリã®ç¯„囲",memoryScopeDesc:"エージェントãŒä½œæˆã§ãるメモリã®ç¨®é¡žã‚’é¸æŠžã—ã¾ã™",memoryScopeGlobalAndUser:"ã‚°ãƒãƒ¼ãƒãƒ«ï¼†ãƒ¦ãƒ¼ã‚¶ãƒ¼ã”ã¨",memoryScopeGlobalAndUserDesc:"エージェントã¯å…±æœ‰ãƒ¡ãƒ¢ãƒªã¨å€‹äººãƒ¡ãƒ¢ãƒªã‚’ä¿å˜ã§ãã¾ã™",memoryScopeGlobal:"ã‚°ãƒãƒ¼ãƒãƒ«ã®ã¿",memoryScopeGlobalDesc:"ã™ã¹ã¦ã®ãƒ¦ãƒ¼ã‚¶ãƒ¼é–“ã§å…±æœ‰ã•れるメモリ",memoryScopeUser:"ユーザーã”ã¨ã®ã¿",memoryScopeUserDesc:"å„ユーザーã«å›ºæœ‰ã®ãƒ¡ãƒ¢ãƒª",memoryInstructions:"ãƒ¡ãƒ¢ãƒªã®æŒ‡ç¤º",memoryInstructionsDesc:"エージェントã«ãƒ¡ãƒ¢ãƒªã‚’ä¿å˜ã™ã‚‹ã‚¿ã‚¤ãƒŸãƒ³ã‚°ã¨å†…容を指示ã—ã¾ã™",memoryInstructionsPlaceholder:"例:製å“アップデートã€ä¼šç¤¾ã®ãŠçŸ¥ã‚‰ã›ã€å…±æœ‰çŸ¥è˜ã®ãŸã‚ã«ã‚°ãƒãƒ¼ãƒãƒ«ãƒ¡ãƒ¢ãƒªã‚’ä¿å˜ã—ã¾ã™ã€‚コミュニケーションスタイルã€ãƒˆãƒ¼ãƒ³ã€ç‰¹å®šã®é–¢å¿ƒäº‹ãªã©ã®å€‹äººçš„ãªå¥½ã¿ã®ãŸã‚ã«ãƒ¦ãƒ¼ã‚¶ãƒ¼ãƒ¡ãƒ¢ãƒªã‚’ä¿å˜ã—ã¾ã™ã€‚",savedMemories:"ä¿å˜æ¸ˆã¿ãƒ¡ãƒ¢ãƒª",refresh:"æ›´æ–°",noMemoriesYet:"ã¾ã メモリãŒä¿å˜ã•れã¦ã„ã¾ã›ã‚“",noMemoriesDesc:"エージェントãŒä¼šè©±ä¸ã«ãƒ¡ãƒ¢ãƒªã‚’ä¿å˜ã™ã‚‹ã¨ã€ã“ã“ã«è¡¨ç¤ºã•れã¾ã™",memoryItemDeleted:"ãƒ¡ãƒ¢ãƒªé …ç›®ã‚’å‰Šé™¤ã—ã¾ã—ãŸ",memoryDeleteFailed:"ãƒ¡ãƒ¢ãƒªé …ç›®ã®å‰Šé™¤ã«å¤±æ•—ã—ã¾ã—ãŸ",defaultDescription:"デフォルト: {{description}}"},JG={writing:"書ãè¾¼ã¿ä¸",wrote:"書ãè¾¼ã¿å®Œäº†",reading:"èªã¿è¾¼ã¿ä¸",read:"èªã¿è¾¼ã¿å®Œäº†",deleting:"削除ä¸",deleted:"削除完了",editing:"編集ä¸",edited:"編集完了",creating:"作æˆä¸",created:"作æˆå®Œäº†",updating:"æ›´æ–°ä¸",updated:"更新完了",update:"æ›´æ–°",delete:"削除",importing:"インãƒãƒ¼ãƒˆä¸",imported:"インãƒãƒ¼ãƒˆå®Œäº†",import:"インãƒãƒ¼ãƒˆ",searching:"検索ä¸",searched:"検索完了",searchingForBugs:"ãƒã‚°ã‚’検索ä¸...",searchedBugs:"ãƒã‚°æ¤œç´¢å®Œäº†",install:"インストール",installing:"インストールä¸",installed:"インストール完了",analyzing:"分æžä¸",running:"実行ä¸",failed:"失敗",run:"実行",settingSecrets:"シークレットè¨å®šä¸",setSecret:"シークレットè¨å®šå®Œäº†",setSecrets:"シークレットをè¨å®š",testing:"テストä¸",checking:"確èªä¸",tested:"テスト完了",checked:"確èªå®Œäº†",fetching:"å–å¾—ä¸",fetched:"å–得完了",waitingForApproval:"承èªå¾…ã¡...",searchedDocsFor:"ドã‚ュメント検索完了:",searchingDocsFor:"ドã‚ュメント検索ä¸ï¼š",searchedFor:"検索完了:",searchingFor:"検索ä¸ï¼š",foundResult_one:"{{count}}ä»¶ã®çµæžœãŒè¦‹ã¤ã‹ã‚Šã¾ã—ãŸ",foundResult_other:"{{count}}ä»¶ã®çµæžœãŒè¦‹ã¤ã‹ã‚Šã¾ã—ãŸ",toggling:"切り替ãˆä¸",toggled:"切り替ãˆå®Œäº†",listing:"一覧å–å¾—ä¸",listed:"一覧å–得完了",approvalRequired:"承èªãŒå¿…è¦ã§ã™",approve:"承èª",approving:"承èªä¸...",reject:"æ‹’å¦",rejected:"æ‹’å¦ã•れã¾ã—ãŸ",previousApproval:"ã“ã®æ‰¿èªãƒªã‚¯ã‚¨ã‚¹ãƒˆã¯ä»¥å‰ã®ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã‹ã‚‰ã®ã‚‚ã®ã§ã™",query:"クエリ:",updateWith:"更新内容:",importComplete:"インãƒãƒ¼ãƒˆå®Œäº†",importingData:"データをインãƒãƒ¼ãƒˆä¸...",percentComplete:"{{percent}}% 完了",recordsProgress:"{{current}} / {{total}} レコード",preparing:"準備ä¸...",otherToolsAfterApproval:"承èªå¾Œã«ä»–ã®ãƒ„ールãŒå®Ÿè¡Œã•れã¾ã™",countPackages:"{{num}}個ã®ãƒ‘ッケージ:",updateAllEntityRecords:"<entity>{{entityName}}</entity>ã®å…¨ãƒ¬ã‚³ãƒ¼ãƒ‰ã‚’æ›´æ–°",updateEntityRecordsMatching:"<entity>{{entityName}}</entity>ã®æ¡ä»¶ã«ä¸€è‡´ã™ã‚‹ãƒ¬ã‚³ãƒ¼ãƒ‰ã‚’更新:",deleteAllEntityRecords:"<entity>{{entityName}}</entity>ã®å…¨ãƒ¬ã‚³ãƒ¼ãƒ‰ã‚’削除",deleteEntityRecordsMatching:"<entity>{{entityName}}</entity>ã®æ¡ä»¶ã«ä¸€è‡´ã™ã‚‹ãƒ¬ã‚³ãƒ¼ãƒ‰ã‚’削除:",importDataFromInto:"<file>{{fileName}}</file>ã‹ã‚‰<entity>{{entityName}}</entity>ã«ãƒ‡ãƒ¼ã‚¿ã‚’インãƒãƒ¼ãƒˆ",importDataFromSheetInto:"<file>{{fileName}}</file>(シート:<sheet>{{sheetName}}</sheet>)ã‹ã‚‰<entity>{{entityName}}</entity>ã«ãƒ‡ãƒ¼ã‚¿ã‚’インãƒãƒ¼ãƒˆ",countRecordsIntoEntity:"{{num}}ä»¶ã®ãƒ¬ã‚³ãƒ¼ãƒ‰ã‚’<entity>{{entityName}}</entity>ã«",dataIntoEntity:"データを<entity>{{entityName}}</entity>ã«",countRecordsEntity:"{{num}}ä»¶ã®ãƒ¬ã‚³ãƒ¼ãƒ‰ <entity>{{entityName}}</entity>",allEntityRecords:"<entity>{{entityName}}</entity>ã®å…¨ãƒ¬ã‚³ãƒ¼ãƒ‰",entityRecords:"<entity>{{entityName}}</entity> レコード",grepSearching:'"{{pattern}}"を検索ä¸...',grepSearchComplete:"検索完了",grepFoundResults_one:"{{count}}ä»¶ã®çµæžœãŒè¦‹ã¤ã‹ã‚Šã¾ã—ãŸ",grepFoundResults_other:"{{count}}ä»¶ã®çµæžœãŒè¦‹ã¤ã‹ã‚Šã¾ã—ãŸ",grepInFiles_one:"{{count}}ファイル内",grepInFiles_other:"{{count}}ファイル内"},QG={agents:ZG,tools:JG},XG={title:"オートメーション",subtitle:"アプリã®ã‚ªãƒ¼ãƒˆãƒ¡ãƒ¼ã‚·ãƒ§ãƒ³ã‚’構築・管ç†ã€‚",newAutomation:"æ–°ã—ã„オートメーション",chooseAutomation:"ã‚ªãƒ¼ãƒˆãƒ¡ãƒ¼ã‚·ãƒ§ãƒ³ã‚’é¸æŠž",selectHowStarts:"ã“ã®ã‚ªãƒ¼ãƒˆãƒ¡ãƒ¼ã‚·ãƒ§ãƒ³ã®é–‹å§‹æ–¹æ³•ã‚’é¸æŠžã—ã¦ãã ã•ã„。",scheduled:"スケジュール",scheduledDescription:"定期的ãªã‚¹ã‚±ã‚¸ãƒ¥ãƒ¼ãƒ«ã¾ãŸã¯ç‰¹å®šã®æ™‚é–“ã«ã“ã®ã‚ªãƒ¼ãƒˆãƒ¡ãƒ¼ã‚·ãƒ§ãƒ³ã‚’実行ã—ã¾ã™ã€‚",dataEvent:"データイベント",dataEventDescription:"レコードãŒä½œæˆã€æ›´æ–°ã€ã¾ãŸã¯å‰Šé™¤ã•れãŸã¨ãã«ã“ã®ã‚ªãƒ¼ãƒˆãƒ¡ãƒ¼ã‚·ãƒ§ãƒ³ã‚’実行ã—ã¾ã™ã€‚",connector:"コãƒã‚¯ã‚¿ãƒ¼",connectorDescription:"接続ã•れãŸã‚¤ãƒ³ãƒ†ã‚°ãƒ¬ãƒ¼ã‚·ãƒ§ãƒ³ãŒã‚¤ãƒ™ãƒ³ãƒˆã‚’é€ä¿¡ã—ãŸã¨ãã«ã“ã®ã‚ªãƒ¼ãƒˆãƒ¡ãƒ¼ã‚·ãƒ§ãƒ³ã‚’実行ã—ã¾ã™ã€‚",connectorBetaTooltip:"ã“ã®ã‚³ãƒã‚¯ã‚¿ãƒ¼ã¯ãƒ™ãƒ¼ã‚¿æœŸé–“ä¸ã¯ç„¡æ–™ã§ã™ã€‚",beta:"ベータ",connectorNewAutomation:"æ–°ã—ã„コãƒã‚¯ã‚¿ãƒ¼ã‚ªãƒ¼ãƒˆãƒ¡ãƒ¼ã‚·ãƒ§ãƒ³",connectorIntegrationType:"インテグレーション",connectorSelectIntegration:"ã‚¤ãƒ³ãƒ†ã‚°ãƒ¬ãƒ¼ã‚·ãƒ§ãƒ³ã‚’é¸æŠž",connectorNoIntegrations:"接続ã•れãŸã‚¤ãƒ³ãƒ†ã‚°ãƒ¬ãƒ¼ã‚·ãƒ§ãƒ³ãŒã‚りã¾ã›ã‚“",connectorNoIntegrationsHint:"自動化を有効ã«ã™ã‚‹ã«ã¯ã€ã¾ãšã‚¤ãƒ³ãƒ†ã‚°ãƒ¬ãƒ¼ã‚·ãƒ§ãƒ³ã‚’作æˆã™ã‚‹å¿…è¦ãŒã‚りã¾ã™ã€‚",connectorCreateIntegration:"インテグレーションを作æˆ",connectorCreateNewIntegration:"æ–°ã—ã„インテグレーションを作æˆ",connectorEvents:"イベント",connectorSelectEvents:"監視ã™ã‚‹ã‚¤ãƒ™ãƒ³ãƒˆã‚’é¸æŠž",connectorSelectEvent:"ã‚¤ãƒ™ãƒ³ãƒˆã‚’é¸æŠž",connectorAvailableEvents:"利用å¯èƒ½ãªã‚¤ãƒ™ãƒ³ãƒˆ ({{count}})",connectorType:"コãƒã‚¯ã‚¿ãƒ¼",allEvents:"ã™ã¹ã¦ã®ã‚¤ãƒ™ãƒ³ãƒˆ",deleteAutomation:"オートメーションを削除ã—ã¾ã™ã‹ï¼Ÿ",deleteAutomationDesc:"「{{name}}ã€ã¨ãã®ã™ã¹ã¦ã®å®Ÿè¡Œå±¥æ´ãŒå®Œå…¨ã«å‰Šé™¤ã•れã¾ã™ã€‚ã“ã®æ“作ã¯å…ƒã«æˆ»ã›ã¾ã›ã‚“。",delete:"削除",deleting:"削除ä¸...",cancel:"ã‚ャンセル",copyOutput:"出力をコピー",scheduledType:"スケジュール",dataEventType:"データイベント",someRunsFailed:"一部ã®å®Ÿè¡ŒãŒå¤±æ•—ã—ã¾ã—ãŸ",reviewLogsOrFix:"ãƒã‚°ã‚’確èªã™ã‚‹ã‹ã€AIã«ã‚¨ãƒ©ãƒ¼ã‚’ä¿®æ£ã•ã›ã¦ãã ã•ã„。",fixing:"ä¿®æ£ä¸...",fixWithAI:"AIã§ä¿®æ£",failedToGetErrorContext:"エラーコンテã‚ストã®å–å¾—ã«å¤±æ•—ã—ã¾ã—ãŸ",logsTab:"ãƒã‚°",noLogsYet:"ãƒã‚°ã¯ã¾ã ã‚りã¾ã›ã‚“",back:"戻る",close:"é–‰ã˜ã‚‹",saving:"ä¿å˜ä¸...",save:"ä¿å˜",active:"アクティブ",archived:"アーカイブ済ã¿",archivedAutomations:"アーカイブ済ã¿ã‚ªãƒ¼ãƒˆãƒ¡ãƒ¼ã‚·ãƒ§ãƒ³",nameAndDescription:"åå‰ã¨èª¬æ˜Ž",typeColumn:"種類",lastRun:"最終実行",failed:"失敗",loading:"èªã¿è¾¼ã¿ä¸...",editAutomation:"オートメーションを編集",runNow:"今ã™ã実行",archive:"アーカイブ",duplicate:"複製",unlockAutomations:"オートメーションã®ãƒãƒƒã‚¯ã‚’解除",unlockAutomationsDesc:"アプリã§ã‚ªãƒ¼ãƒˆãƒ¡ãƒ¼ã‚·ãƒ§ãƒ³ã‚’実行ã™ã‚‹ã«ã¯ã€ãƒãƒƒã‚¯ã‚¨ãƒ³ãƒ‰é–¢æ•°ã‚’有効ã«ã™ã‚‹å¿…è¦ãŒã‚りã¾ã™ã€‚アップグレードã—ã¦ãƒãƒƒã‚¯ã‚¨ãƒ³ãƒ‰é–¢æ•°ã‚’有効ã«ã—ã€ã‚ªãƒ¼ãƒˆãƒ¡ãƒ¼ã‚·ãƒ§ãƒ³ã®ä½¿ç”¨ã‚’é–‹å§‹ã—ã¾ã—ょã†ã€‚",enableBackendFunctions:"ãƒãƒƒã‚¯ã‚¨ãƒ³ãƒ‰é–¢æ•°ã‚’有効ã«ã—ã¦å§‹ã‚ã¾ã—ょã†",enableBackendFunctionsDesc:"オートメーションã¯ã‚¹ã‚±ã‚¸ãƒ¥ãƒ¼ãƒ«ã¾ãŸã¯ãƒ‡ãƒ¼ã‚¿å¤‰æ›´æ™‚ã«ãƒãƒƒã‚¯ã‚¨ãƒ³ãƒ‰é–¢æ•°ã‚’実行ã—ã¾ã™ã€‚è¨å®šã§ãƒãƒƒã‚¯ã‚¨ãƒ³ãƒ‰é–¢æ•°ã‚’有効ã«ã—ã¦ã‚ªãƒ¼ãƒˆãƒ¡ãƒ¼ã‚·ãƒ§ãƒ³ã‚’使用ã—ã¦ãã ã•ã„。",openSettings:"è¨å®šã‚’é–‹ã",createBackendFunction:"ã‚ªãƒ¼ãƒˆãƒ¡ãƒ¼ã‚·ãƒ§ãƒ³ã‚’è¿½åŠ ã™ã‚‹ã«ã¯ãƒãƒƒã‚¯ã‚¨ãƒ³ãƒ‰é–¢æ•°ã‚’作æˆã—ã¦ãã ã•ã„",createBackendFunctionDesc:"オートメーションを作æˆã™ã‚‹ã«ã¯ã€ã¾ãšã‚³ãƒ¼ãƒ‰å†…ã«ãƒãƒƒã‚¯ã‚¨ãƒ³ãƒ‰é–¢æ•°ãŒå¿…è¦ã§ã™ã€‚コードã«ãƒãƒƒã‚¯ã‚¨ãƒ³ãƒ‰é–¢æ•°ã‚’記述ã™ã‚‹ã‹ã€ãƒãƒ£ãƒƒãƒˆã«åŠ©ã‘を求ã‚ã¦ãã ã•ã„。",noAutomationsYet:"オートメーションã¯ã¾ã ã‚りã¾ã›ã‚“",noAutomationsDesc:"オートメーションを作æˆã—ã¦ã€ã‚¢ãƒ—リ内ã®ã‚¿ã‚¹ã‚¯ã‚’自動的ã«å®Ÿè¡Œã—ã¾ã—ょã†ã€‚",noArchivedAutomations:"アーカイブ済ã¿ã®ã‚ªãƒ¼ãƒˆãƒ¡ãƒ¼ã‚·ãƒ§ãƒ³ã¯ã‚りã¾ã›ã‚“",noArchivedDesc:"アーカイブã—ãŸã‚ªãƒ¼ãƒˆãƒ¡ãƒ¼ã‚·ãƒ§ãƒ³ã‚„終了日ã«é”ã—ãŸã‚ªãƒ¼ãƒˆãƒ¡ãƒ¼ã‚·ãƒ§ãƒ³ã¯ã“ã“ã«è¡¨ç¤ºã•れã¾ã™ã€‚",runAutomation:"オートメーションを実行",selectRecord:"<entity>{{entity}}</entity>ãƒ¬ã‚³ãƒ¼ãƒ‰ã‚’é¸æŠžã—ã¦ã‚ªãƒ¼ãƒˆãƒ¡ãƒ¼ã‚·ãƒ§ãƒ³ã‚’実行ã—ã¦ãã ã•ã„。",searchRecords:"{{entity}}レコードを検索...",noRecordsFound:"{{entity}}レコードãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“。",noRecordsMatch:"「{{query}}ã€ã«ä¸€è‡´ã™ã‚‹ãƒ¬ã‚³ãƒ¼ãƒ‰ã¯ã‚りã¾ã›ã‚“",recordsCount:"{{total}}ä»¶ä¸{{filtered}}ä»¶ã®ãƒ¬ã‚³ãƒ¼ãƒ‰",totalRecords:"{{total}}ä»¶ã®ãƒ¬ã‚³ãƒ¼ãƒ‰",running:"実行ä¸...",automationName:"オートメーションå",describeAutomation:"ã“ã®ã‚ªãƒ¼ãƒˆãƒ¡ãƒ¼ã‚·ãƒ§ãƒ³ã®å†…容を説明ã—ã¦ãã ã•ã„。",functionToRun:"実行ã™ã‚‹é–¢æ•°",selectFunction:"コードã‹ã‚‰ãƒãƒƒã‚¯ã‚¨ãƒ³ãƒ‰é–¢æ•°ã‚’é¸æŠžã—ã¦ãã ã•ã„ã€‚ã‚ªãƒ¼ãƒˆãƒ¡ãƒ¼ã‚·ãƒ§ãƒ³ç™ºç«æ™‚ã«é–¢æ•°ãŒã‚¨ãƒ³ãƒ†ã‚£ãƒ†ã‚£ãƒ‡ãƒ¼ã‚¿ã‚’å—ã‘å–りã¾ã™ã€‚",noBackendFunctions:"利用å¯èƒ½ãªãƒãƒƒã‚¯ã‚¨ãƒ³ãƒ‰é–¢æ•°ãŒã‚りã¾ã›ã‚“",selectAFunction:"é–¢æ•°ã‚’é¸æŠž",runsWhen:"実行æ¡ä»¶",noItems:"アイテムãªã—",selectItem:"ã‚¢ã‚¤ãƒ†ãƒ ã‚’é¸æŠž",is:"ãŒ",selectEvent:"ã‚¤ãƒ™ãƒ³ãƒˆã‚’é¸æŠž",automationNameRequired:"オートメーションåã¯å¿…é ˆã§ã™ã€‚",selectEntity:"ã‚¨ãƒ³ãƒ†ã‚£ãƒ†ã‚£ã‚’é¸æŠžã—ã¦ãã ã•ã„。",selectEventType:"å°‘ãªãã¨ã‚‚1ã¤ã®ã‚¤ãƒ™ãƒ³ãƒˆã‚¿ã‚¤ãƒ—ã‚’é¸æŠžã—ã¦ãã ã•ã„。",selectFunctionRequired:"実行ã™ã‚‹é–¢æ•°ã‚’é¸æŠžã—ã¦ãã ã•ã„。",newDataAutomation:"æ–°ã—ã„データオートメーション",details:"詳細",logsWillAppearAfterFire:"ã“ã®ã‚ªãƒ¼ãƒˆãƒ¡ãƒ¼ã‚·ãƒ§ãƒ³ãŒç™ºç«ã—ãŸå¾Œã«ãƒã‚°ãŒã“ã“ã«è¡¨ç¤ºã•れã¾ã™ã€‚",selectFunctionFromCode:"コードã‹ã‚‰ãƒãƒƒã‚¯ã‚¨ãƒ³ãƒ‰é–¢æ•°ã‚’é¸æŠžã—ã¦ãã ã•ã„。関数ã®è¿½åŠ ã‚„ç·¨é›†ã¯ã€ã‚³ãƒ¼ãƒ‰å†…ã§æ›´æ–°ã™ã‚‹ã‹ãƒãƒ£ãƒƒãƒˆã«åŠ©ã‘を求ã‚ã¦ãã ã•ã„。",recurring:"繰り返ã—",oneTime:"1回ã®ã¿",repeatsEvery:"繰り返ã—é–“éš”",minute:"分",hour:"時間",day:"æ—¥",week:"週",month:"月",startAt:"開始時刻",at:"時刻",repeatsOn:"ç¹°ã‚Šè¿”ã—æ›œæ—¥",repeatsOnDay:"ç¹°ã‚Šè¿”ã—æ—¥",ends:"終了",never:"ãªã—",on:"日付指定",after:"回数指定",occurrences:"回",runOn:"実行日",atTime:"実行時刻",oneTimeDateRequired:"1回é™ã‚Šã®ã‚¹ã‚±ã‚¸ãƒ¥ãƒ¼ãƒ«ã«ã¯æ—¥ä»˜ã®æŒ‡å®šãŒå¿…è¦ã§ã™ã€‚",oneTimeTimeRequired:"1回é™ã‚Šã®ã‚¹ã‚±ã‚¸ãƒ¥ãƒ¼ãƒ«ã«ã¯æ™‚åˆ»ã®æŒ‡å®šãŒå¿…è¦ã§ã™ã€‚",oneTimePastError:"1回é™ã‚Šã®ã‚¹ã‚±ã‚¸ãƒ¥ãƒ¼ãƒ«ã®æ—¥æ™‚ã¯éŽåŽ»ã«ã™ã‚‹ã“ã¨ã¯ã§ãã¾ã›ã‚“。",minMinutesInterval:"分å˜ä½ã‚¹ã‚±ã‚¸ãƒ¥ãƒ¼ãƒ«ã®æœ€å°é–“éš”ã¯{{min}}分ã§ã™ã€‚",selectDayForWeekly:"週次スケジュールã«ã¯å°‘ãªãã¨ã‚‚1ã¤ã®æ›œæ—¥ã‚’é¸æŠžã—ã¦ãã ã•ã„。",monthlyDayRequired:"月次スケジュールã«ã¯æœˆã®æ—¥ã‚’é¸æŠžã™ã‚‹å¿…è¦ãŒã‚りã¾ã™ã€‚",endDateRequired:"「終了ã€ãŒã€Œæ—¥ä»˜æŒ‡å®šã€ã«è¨å®šã•れã¦ã„ã‚‹å ´åˆã€çµ‚了日ã¯å¿…é ˆã§ã™ã€‚",endDatePast:"終了日ã¯éŽåŽ»ã«ã™ã‚‹ã“ã¨ã¯ã§ãã¾ã›ã‚“。",occurrenceCountMin:"実行回数ã¯å°‘ãªãã¨ã‚‚1回以上ã«ã—ã¦ãã ã•ã„。",newScheduledAutomation:"æ–°ã—ã„スケジュールオートメーション",logsWillAppearAfterRun:"ã“ã®ã‚ªãƒ¼ãƒˆãƒ¡ãƒ¼ã‚·ãƒ§ãƒ³ãŒå®Ÿè¡Œã•れãŸå¾Œã«ãƒã‚°ãŒã“ã“ã«è¡¨ç¤ºã•れã¾ã™ã€‚",description:"説明",nameField:"åå‰",typeField:"種類",automationUpdated:"ã‚ªãƒ¼ãƒˆãƒ¡ãƒ¼ã‚·ãƒ§ãƒ³ãŒæ£å¸¸ã«æ›´æ–°ã•れã¾ã—ãŸ",automationCreated:"ã‚ªãƒ¼ãƒˆãƒ¡ãƒ¼ã‚·ãƒ§ãƒ³ãŒæ£å¸¸ã«ä½œæˆã•れã¾ã—ãŸ",failedToSave:"オートメーションã®ä¿å˜ã«å¤±æ•—ã—ã¾ã—ãŸ",functionArgs:"引数 (JSON)",functionArgsPlaceholder:'{"key": "value"}',functionArgsTooltip:"関数ã«è¿½åŠ å¼•æ•°ã¨ã—ã¦æ¸¡ã™ã‚ªãƒ—ションã®JSONオブジェクトã§ã™ã€‚",functionArgsInvalidJson:"å¼•æ•°ã¯æœ‰åйãªJSONã§ã‚ã‚‹å¿…è¦ãŒã‚りã¾ã™ã€‚",advanced:"詳細è¨å®š",triggerConditions:"トリガーæ¡ä»¶",conditionsSetByAI:"æ¡ä»¶ã¯AIビルダーã«ã‚ˆã£ã¦è¨å®šã•ã‚Œã€æ‰‹å‹•ã§ç·¨é›†ã™ã‚‹ã“ã¨ã¯ã§ãã¾ã›ã‚“。",conditionsSummaryError:"æ¡ä»¶ã®è¦ç´„ã‚’èªã¿è¾¼ã‚ã¾ã›ã‚“ã§ã—ãŸã€‚",connectorNoManualIntegrations:"手動作æˆã§åˆ©ç”¨å¯èƒ½ãªçµ±åˆãŒã‚りã¾ã›ã‚“",connectorNoManualIntegrationsHint:"一部ã®çµ±åˆã«ã¯ãƒˆãƒªã‚¬ãƒ¼æ¡ä»¶ãŒå¿…è¦ã§ã€AIビルダーを通ã˜ã¦ã®ã¿ä½œæˆã§ãã¾ã™ã€‚",suggestedForYou:"ãŠã™ã™ã‚",basedOnYourContext:"アプリã®ã‚³ãƒ³ãƒ†ã‚ストã«åŸºã¥ãææ¡ˆ",createFromScratch:"一ã‹ã‚‰ä½œæˆ"},e3={automations:XG},t3={title:"インテグレーション",myIntegrations:"マイインテグレーション",browse:"å‚ç…§",payments:"決済",failedToLoad:"アプリ接続ã®èªã¿è¾¼ã¿ã«å¤±æ•—ã—ã¾ã—ãŸ",successfullySwitched:"アカウントãŒ{{name}}ã«æ£å¸¸ã«åˆ‡ã‚Šæ›¿ã‚りã¾ã—ãŸ",cancelled:"ã‚ャンセルã•れã¾ã—ãŸ",connectionCancelled:"アプリ接続ãŒã‚ャンセルã•れã¾ã—ãŸ",disconnected:"{{name}}ãŒåˆ‡æ–ã•れã¾ã—ãŸ",failedToDisconnect:"アプリ接続ã®åˆ‡æ–ã«å¤±æ•—ã—ã¾ã—ãŸ",stripeRemoved:"StripeインテグレーションãŒå‰Šé™¤ã•れã¾ã—ãŸ",wixPaymentsDisconnected:"Wix PaymentsãŒåˆ‡æ–ã•れã¾ã—ãŸ",integrationRemoved:"{{name}}ãŒå‰Šé™¤ã•れã¾ã—ãŸ",failedToRemove:"インテグレーションã®å‰Šé™¤ã«å¤±æ•—ã—ã¾ã—ãŸ",connectedAccountsWarning:"接続ã•れãŸã‚¢ã‚«ã‚¦ãƒ³ãƒˆã¯ã€ã‚¢ã‚¯ã‚»ã‚¹æ¨©ã‚’æŒã¤ã™ã¹ã¦ã®ãƒ¦ãƒ¼ã‚¶ãƒ¼ã«æ©Ÿå¯†ãƒ‡ãƒ¼ã‚¿ã‚’公開ã™ã‚‹å¯èƒ½æ€§ãŒã‚りã¾ã™ã€‚",unlockFeature:"ã“ã®æ©Ÿèƒ½ã®ãƒãƒƒã‚¯ã‚’解除",unlockFeatureDesc:"ã“ã®æ©Ÿèƒ½ã¯Builderプラン以上ã§ã®ã¿åˆ©ç”¨å¯èƒ½ã§ã™ã€‚アップグレードã—ã¦åˆ¶é™ãªã作æ¥ã‚’ç¶šã‘ã¾ã—ょã†",upgradeToUseConnector:"アップグレードã—ã¦æ©Ÿèƒ½ã‚’利用",access:"{{name}}アクセス",disconnectAccount:"アカウントを切æ–ã—ã¾ã™ã‹ï¼Ÿ",disconnectDesc:"<bold>{{name}}</bold>上ã®<bold>{{email}}</bold>ã®ã‚¢ã‚¯ã‚»ã‚¹ãŒå–り消ã•れã¾ã™ã€‚<br/>インテグレーションレコードã¯ä»Šå¾Œã®å†æŽ¥ç¶šã®ãŸã‚ã«ä¿æŒã•れã¾ã™ã€‚",disconnecting:"切æ–ä¸...",disconnect:"切æ–",removeIntegration:"インテグレーションを削除ã—ã¾ã™ã‹ï¼Ÿ",removeDesc:"<bold>{{name}}</bold>ã¯ã“ã®ã‚¢ãƒ—リã‹ã‚‰å®Œå…¨ã«å‰Šé™¤ã•れã¾ã™ã€‚<br/>å†åº¦æŽ¥ç¶šã‚’作æˆã™ã‚‹ã«ã¯ã€æœ€åˆã‹ã‚‰ã‚»ãƒƒãƒˆã‚¢ãƒƒãƒ—ã™ã‚‹å¿…è¦ãŒã‚りã¾ã™ã€‚",removing:"削除ä¸...",remove:"削除",cancel:"ã‚ャンセル",reject:"æ‹’å¦",new:"æ–°ç€",done:"完了",success:"æˆåŠŸ",error:"エラー",setupIntegrations:"インテグレーションをセットアップ",setupIntegrationsDesc:"Google Calendarã€Google Driveã€Slackã€Notionã€Salesforceã€HubSpotãªã©ã®ã‚³ãƒã‚¯ã‚¿ã«ã‚¢ãƒ—リを簡å˜ã«ãƒªãƒ³ã‚¯ã§ãã¾ã™ã€‚",setupIntegrationsChat:"ãƒãƒ£ãƒƒãƒˆã§æŽ¥ç¶šã—ãŸã„内容を説明ã™ã‚‹ã ã‘ã§ã€ã‚»ãƒƒãƒˆã‚¢ãƒƒãƒ—ã—ã¦ãれã¾ã™ã€‚",viewAccess:"アクセスを表示",connecting:"接続ä¸...",switchAccount:"アカウントを切り替ãˆ",reconnect:"å†æŽ¥ç¶š",disconnectAccount2:"アカウントを切æ–",use:"使用",examplePrompts:"プãƒãƒ³ãƒ—ト例",clickPromptToAdd:"プãƒãƒ³ãƒ—トをクリックã—ã¦ãƒãƒ£ãƒƒãƒˆã«è¿½åŠ ã—ã¾ã™ã€‚",unableToLoadSuggestions:"ææ¡ˆã‚’èªã¿è¾¼ã‚ã¾ã›ã‚“ã§ã—ãŸã€‚後ã§ã‚‚ã†ä¸€åº¦ãŠè©¦ã—ãã ã•ã„。",requiresBackendFunctions:"ã“ã®ã‚¤ãƒ³ãƒ†ã‚°ãƒ¬ãƒ¼ã‚·ãƒ§ãƒ³ã«ã¯ãƒãƒƒã‚¯ã‚¨ãƒ³ãƒ‰é–¢æ•°ãŒå¿…è¦ã§ã™ã€‚Builder以上ã®ãƒ—ランã§ã®ã¿åˆ©ç”¨å¯èƒ½ãªæ©Ÿèƒ½ã§ã™ã€‚",seePlans:"プランを見る",promptAddedToChat:"プãƒãƒ³ãƒ—トãŒãƒãƒ£ãƒƒãƒˆã«è¿½åŠ ã•れã¾ã—ãŸã€‚Enterã‚ーを押ã—ã¦é€ä¿¡ã—ã¦ãã ã•ã„。",connectors:"コãƒã‚¯ã‚¿",connectorsDesc:"クイックOAuth接続ã§äººæ°—ã®ã‚µãƒ¼ãƒ“スã«ã‚¢ãƒ—リを接続ã—ã¾ã™ã€‚",searchConnectors:"コãƒã‚¯ã‚¿ã‚’検索",noSearchResults:"æ¤œç´¢çµæžœãŒã‚りã¾ã›ã‚“",noSearchResultsDesc:"別ã®ã‚ーワードを使用ã™ã‚‹ã‹ã€ã‚¹ãƒšãƒ«ã‚’確èªã—ã¦ãã ã•ã„。åå‰é †ã‚„æœ€è¿‘è¿½åŠ ã•れãŸé †ã§ä¸¦ã¹æ›¿ãˆã¦æŽ¢ã™ã“ã¨ã‚‚ã§ãã¾ã™ã€‚",sort:{title:"ä¸¦ã³æ›¿ãˆ",mostUsed:"よã使ã‚れる",recentlyAdded:"æœ€è¿‘è¿½åŠ ",az:"A-Z",za:"Z-A"},revoked:"å–ã‚Šæ¶ˆã—æ¸ˆã¿",connectionLost:"接続ãŒå¤±ã‚れã¾ã—㟠— å†æŽ¥ç¶šã—ã¦ãã ã•ã„",configModal:{connectTo:"{{name}}ã«æŽ¥ç¶š",configureConnection:"{{name}}ã®æŽ¥ç¶šã‚’è¨å®šã—ã¦ãã ã•ã„",loadingConfig:"è¨å®šã‚’èªã¿è¾¼ã¿ä¸...",retryHint:"å†è©¦è¡Œã§ãã¾ã™ã€‚",connect:"接続",connecting:"接続ä¸...",validationRequired:"{{name}}ã¯å¿…é ˆã§ã™",validationInvalid:"{{name}}ãŒç„¡åйã§ã™",fetchError:"è¨å®šã®èªã¿è¾¼ã¿ã«å¤±æ•—ã—ã¾ã—ãŸã€‚",retry:"å†è©¦è¡Œ"},wixPayments:{title:"Wix Payments",live:"本番",disconnected:"åˆ‡æ–æ¸ˆã¿",acceptingPayments:"決済をå—付ä¸",integrationDisconnected:"ã‚¤ãƒ³ãƒ†ã‚°ãƒ¬ãƒ¼ã‚·ãƒ§ãƒ³åˆ‡æ–æ¸ˆã¿",openingWixPayments:"Wix Payments ã‚’é–‹ã„ã¦ã„ã¾ã™...",popupBlocked:"Wix Payments ãŒãƒ–ラウザã«ã‚ˆã£ã¦ãƒ–ãƒãƒƒã‚¯ã•れã¾ã—ãŸã€‚下ã®ãƒªãƒ³ã‚¯ã‹ã‚‰ãƒ€ãƒƒã‚·ãƒ¥ãƒœãƒ¼ãƒ‰ã‚’手動ã§é–‹ã„ã¦ãã ã•ã„。",errors:{noUrl:"Wix Payments ã®URLã‚’å–å¾—ã§ãã¾ã›ã‚“ã§ã—ãŸã€‚ã‚‚ã†ä¸€åº¦ãŠè©¦ã—ãã ã•ã„。",fetchFailed:"Wix Payments ã‚’é–‹ã‘ã¾ã›ã‚“ã§ã—ãŸã€‚ã‚‚ã†ä¸€åº¦ãŠè©¦ã—ãã ã•ã„。",invalidRedirect:"Wix Payments ã‚’é–‹ã‘ã¾ã›ã‚“ã§ã—ãŸã€‚ã‚‚ã†ä¸€åº¦ãŠè©¦ã—ãã ã•ã„。"},openDashboard:"ダッシュボードを開ã",managePayments:"決済を管ç†",disconnect:"切æ–",disconnectIntegration:"インテグレーションを切æ–ã—ã¾ã™ã‹ï¼Ÿ",disconnectDesc:"<bold>Wix Payments</bold>ãŒã“ã®ã‚¢ãƒ—リã‹ã‚‰åˆ‡æ–ã•れã¾ã™ã€‚<br/>後ã§ãƒãƒ£ãƒƒãƒˆã‹ã‚‰å†æŽ¥ç¶šã§ãã¾ã™ã€‚",disconnecting:"切æ–ä¸...",disconnectButton:"切æ–",enterNamePrompt:"続行ã™ã‚‹ã«ã¯åå‰ã‚’入力ã—ã¦ãã ã•ã„:",firstNamePlaceholder:"å",lastNamePlaceholder:"å§“"},stripe:{unableToClaimSandbox:"サンドボックスをå–å¾—ã§ãã¾ã›ã‚“",sandboxExpired:"ã‚µãƒ³ãƒ‰ãƒœãƒƒã‚¯ã‚¹ã®æœ‰åŠ¹æœŸé™ãŒåˆ‡ã‚Œã¦ã„ã‚‹ã‹ã€æ—¢ã«å–得済ã¿ã®å¯èƒ½æ€§ãŒã‚りã¾ã™ã€‚ページを更新ã—ã¦ãã ã•ã„。",failedGetClaimUrl:"å–å¾—URLã®å–å¾—ã«å¤±æ•—ã—ã¾ã—ãŸ",pleaseTryAgain:"å†åº¦ãŠè©¦ã—ã„ãŸã ãã‹ã€ãƒšãƒ¼ã‚¸ã‚’æ›´æ–°ã—ã¦ãã ã•ã„。",pendingSetup:"セットアップ待ã¡",completeSetupGuide:"セットアップガイドを完了ã—ã¦å®Ÿéš›ã®æ”¯æ‰•ã„ã‚’å—ã‘付ã‘ã¾ã™",live:"本番",stripe:"Stripe",loadingStripe:"èªã¿è¾¼ã¿ä¸...",acceptingPayments:"å®Ÿéš›ã®æ”¯æ‰•ã„ã‚’å—付ä¸",accountDetails:"Stripeアカウント詳細",hideGuide:"ガイドをéžè¡¨ç¤º",showGuide:"ガイドを表示",goToStripe:"Stripeã«ç§»å‹•",aboutIntegration:"インテグレーションã«ã¤ã„ã¦",aboutStripeIntegration:"Stripeインテグレーションã«ã¤ã„ã¦",stripeDesc:"Stripeを使用ã™ã‚‹ã¨ã€æ”¯æ‰•ã„ã®å—ã‘付ã‘ã€é€é‡‘ã€ã‚ªãƒ³ãƒ©ã‚¤ãƒ³ãƒ“ジãƒã‚¹ã®ç®¡ç†ãŒå¯èƒ½ã§ã™ã€‚ã“ã®ã‚¤ãƒ³ãƒ†ã‚°ãƒ¬ãƒ¼ã‚·ãƒ§ãƒ³ã«ã‚ˆã‚Šã€ä»¥ä¸‹ã®ã“ã¨ãŒã§ãã¾ã™ï¼š",acceptCards:"クレジットカードやãã®ä»–ã®æ”¯æ‰•ã„æ–¹æ³•ã‚’å—ã‘付ã‘",createProducts:"商å“やサブスクリプションを作æˆ",manageCustomers:"顧客ã¨è«‹æ±‚を管ç†",close:"é–‰ã˜ã‚‹",tryTestPayment:"テスト支払ã„を試ã™",claimSandbox:"Stripeサンドボックスをå–å¾—",addLiveKeys:"Stripeã‹ã‚‰ãƒ©ã‚¤ãƒ–APIã‚ãƒ¼ã‚’è¿½åŠ ",copiedCard:"コピーã—ã¾ã—ãŸï¼",testCardCopied:"テスト用カード番å·ãŒã‚¯ãƒªãƒƒãƒ—ボードã«ã‚³ãƒ”ーã•れã¾ã—ãŸã€‚",failedToCopy:"コピーã«å¤±æ•—ã—ã¾ã—ãŸ",copyManually:"手動ã§ã‚³ãƒ”ーã—ã¦ãã ã•ã„: 4242 4242 4242 4242",keysSaved:"APIã‚ãƒ¼ãŒæ£å¸¸ã«ä¿å˜ã•れã¾ã—ãŸã€‚",failedSaveKeys:"APIã‚ーã®ä¿å˜ã«å¤±æ•—ã—ã¾ã—ãŸã€‚å†åº¦ãŠè©¦ã—ãã ã•ã„。",movedOutOfTestMode:"テストモードを終了ã—ã¾ã—ãŸã€‚",noNeedTestPayments:"テスト支払ã„を実行ã™ã‚‹å¿…è¦ã¯ã‚‚ã†ã‚りã¾ã›ã‚“。",useTestCard:"ã“ã®ãƒ†ã‚¹ãƒˆç”¨ã‚«ãƒ¼ãƒ‰ã‚’使用ã—ã¦è³¼å…¥ã‚’シミュレートã—ã¦ãã ã•ã„:",testCardNumber:"4242 4242 4242 4242",anyFutureExpiry:"ã€ä»»æ„ã®å°†æ¥ã®æœ‰åŠ¹æœŸé™ã€ä»»æ„ã®3æ¡CVC。",publishAndOpen:"アプリを公開ã—ã¦æ–°ã—ã„タブã§é–‹ãã€ãƒã‚§ãƒƒã‚¯ã‚¢ã‚¦ãƒˆä½“験をテストã—ã¦ãã ã•ã„",copyCardNumber:"カード番å·ã‚’コピー",connectStripeDesc:"æ—¢å˜ã®Stripeã‚¢ã‚«ã‚¦ãƒ³ãƒˆã«æŽ¥ç¶šã™ã‚‹ã‹ã€æ–°ã—ã„アカウントを作æˆã—ã¦å®Ÿéš›ã®æ”¯æ‰•ã„ã®å—ã‘付ã‘ã‚’é–‹å§‹ã—ã¾ã™ã€‚",claimAndGoLive:"å–å¾—ã—ã¦æœ¬ç•ªã«ç§»è¡Œ",copyLiveKeys:"<link>Stripeダッシュボード</link>ã‹ã‚‰ãƒ©ã‚¤ãƒ–ã®å…¬é–‹ã‚ーã¨ã‚·ãƒ¼ã‚¯ãƒ¬ãƒƒãƒˆã‚ーをコピーã—ã¦ã€ã‚»ãƒƒãƒˆã‚¢ãƒƒãƒ—を完了ã—アプリã§å®Ÿéš›ã®æ”¯æ‰•ã„を有効ã«ã—ã¾ã™ã€‚",publishableKey:"公開ã‚ー",secretKey:"シークレットã‚ー",enterValue:"値を入力",savingKeys:"ä¿å˜ä¸...",saveApiKeys:"APIã‚ーをä¿å˜",completeStepInStripe:"ã“ã®ã‚¹ãƒ†ãƒƒãƒ—を完了ã™ã‚‹ã«ã¯ã€ã‚µãƒ³ãƒ‰ãƒœãƒƒã‚¯ã‚¹ã‚’å–å¾—ã—ã¦Stripeã§ã‚»ãƒƒãƒˆã‚¢ãƒƒãƒ—を完了ã—ã¦ãã ã•ã„"}},a3={title:"アプリインテグレーション",subtitle:"ã‚¢ãƒ—ãƒªã‚’ã‚µãƒ¼ãƒ‰ãƒ‘ãƒ¼ãƒ†ã‚£ã‚µãƒ¼ãƒ“ã‚¹ã«æŽ¥ç¶šã—ã€æ©Ÿèƒ½ã‚’æ‹¡å¼µã—ã¾ã™ã€‚",integrationCatalog:"インテグレーションカタãƒã‚°",payments:"決済",zapier:"Zapier",couldNotLoad:"インテグレーションã®è©³ç´°ã‚’èªã¿è¾¼ã‚ã¾ã›ã‚“ã§ã—ãŸã€‚å†åº¦ãŠè©¦ã—ãã ã•ã„。",loadingDetails:"詳細をèªã¿è¾¼ã¿ä¸...",backToCatalog:"ã‚«ã‚¿ãƒã‚°ã«æˆ»ã‚‹",integrationAdded:"インテグレーションãŒè¿½åŠ ã•れã¾ã—ãŸï¼ˆãƒ—レースホルダー)",wouldBeAdded:"{{name}}ãŒã‚¢ãƒ—リã«è¿½åŠ ã•れã¾ã™ã€‚シークレット値ãŒãƒã‚°ã«è¨˜éŒ²ã•れã¾ã—ãŸã€‚",requiresConfiguration:"è¨å®šãŒå¿…è¦ã§ã™",requiresSecrets:"ã“ã®ã‚¤ãƒ³ãƒ†ã‚°ãƒ¬ãƒ¼ã‚·ãƒ§ãƒ³ã«ã¯{{count}}個ã®ã‚·ãƒ¼ã‚¯ãƒ¬ãƒƒãƒˆå€¤ã®è¨å®šãŒå¿…è¦ã§ã™ã€‚",addToApp:"アプリã«è¿½åŠ ",paymentProcessing:"決済処ç†",paymentProcessingDesc:"äººæ°—ã®æ±ºæ¸ˆãƒ—ãƒã‚»ãƒƒã‚µã§ã‚¢ãƒ—ãƒªå†…ã®æ”¯æ‰•ã„ã‚’å—ã‘付ã‘ã¾ã™ã€‚近日公開ï¼",leadingPaymentPlatform:"主è¦ãªæ±ºæ¸ˆãƒ—ラットフォーム",globallyRecognized:"世界的ã«èªçŸ¥ã•ã‚ŒãŸæ±ºæ¸ˆ",configurePayment:"決済プãƒãƒã‚¤ãƒ€ãƒ¼ã‚’è¨å®šã—ã¦ã€ã‚¢ãƒ—リケーションã§ã‚µãƒ–スクリプションã€å˜ç™ºè³¼å…¥ãªã©ã‚’有効ã«ã—ã¾ã™ã€‚",zapierIntegration:"Zapierインテグレーション",zapierDesc:"Zapierを通ã˜ã¦ã‚¢ãƒ—ãƒªã‚’ä»–ã®æ•°åƒã®ã‚µãƒ¼ãƒ“ã‚¹ã«æŽ¥ç¶šã—ã¾ã™ã€‚",automateWithZapier:"Zapierã§è‡ªå‹•化",linkBase44:"Base44ã‚’Slackã€Google Sheetsã€Mailchimpãªã©ã®ãŠæ°—ã«å…¥ã‚Šã®ã‚¢ãƒ—リã«ãƒªãƒ³ã‚¯ã—ã¾ã™ã€‚",exploreOnZapier:"Zapierã§Base44を探索",configureIntegration:"{{name}}ã‚’è¨å®š",configureDesc:"ã“ã®ã‚¤ãƒ³ãƒ†ã‚°ãƒ¬ãƒ¼ã‚·ãƒ§ãƒ³ã«ã¯ã„ãã¤ã‹ã®ã‚·ãƒ¼ã‚¯ãƒ¬ãƒƒãƒˆå€¤ã®è¨å®šãŒå¿…è¦ã§ã™ã€‚ã“れらã¯å®‰å…¨ã«æš—å·åŒ–ã•れã¦ä¿å˜ã•れã¾ã™ã€‚",saveAndAdd:"ä¿å˜ã—ã¦ã‚¤ãƒ³ãƒ†ã‚°ãƒ¬ãƒ¼ã‚·ãƒ§ãƒ³ã‚’è¿½åŠ "},n3={title:"スã‚ル",description:"スã‚ãƒ«ã‚’è¿½åŠ ã—ã¦ã€AIãŒã‚¢ãƒ—リを構築ã™ã‚‹æ–¹æ³•を形作りã¾ã—ょã†ã€‚",manage:"管ç†"},i3=JSON.parse('{"title":"コãƒã‚¯ã‚¿","connectorsForAppUsers":"アプリユーザーå‘ã‘コãƒã‚¯ã‚¿","connectorsForAppUsersDesc":"アプリユーザーãŒå€‹äººã‚¢ã‚«ã‚¦ãƒ³ãƒˆã‚’ã“ã®ãƒ¯ãƒ¼ã‚¯ã‚¹ãƒšãƒ¼ã‚¹ã®ã‚¢ãƒ—リã«ãƒªãƒ³ã‚¯ã§ãるよã†ã«ã‚³ãƒã‚¯ã‚¿ã‚’è¨å®šã—ã¾ã™ã€‚","connectorsForAppUsersDialogDesc":"アプリユーザーãŒã“ã®ãƒ¯ãƒ¼ã‚¯ã‚¹ãƒšãƒ¼ã‚¹ã®ã‚¢ãƒ—リã«å€‹äººã‚¢ã‚«ã‚¦ãƒ³ãƒˆã‚’接続ã§ãるよã†ã«ã—ã¾ã™ã€‚","addConnector":"コãƒã‚¯ã‚¿ã‚’è¿½åŠ ","browseConnectors":"コãƒã‚¯ã‚¿ã‚’å‚ç…§","noConnectorsYet":"ã¾ã コãƒã‚¯ã‚¿ãŒã‚りã¾ã›ã‚“","noConnectorsYetDesc":"アプリユーザーãŒå€‹äººã‚¢ã‚«ã‚¦ãƒ³ãƒˆã‚’リンクã§ãるよã†ã«ã‚³ãƒã‚¯ã‚¿ã‚’è¿½åŠ ã—ã¦ãã ã•ã„。","view":"表示","edit":"編集","connections":"接続","addConnection":"æŽ¥ç¶šã‚’è¿½åŠ ","viewConnector":"コãƒã‚¯ã‚¿ã‚’表示","connectorName":"コãƒã‚¯ã‚¿å","connector":"{{name}}コãƒã‚¯ã‚¿","examplePrompts":"プãƒãƒ³ãƒ—ト例","back":"戻る","configureConnection":"接続をè¨å®š","configureConnectionDesc":"クライアントIDã€ã‚·ãƒ¼ã‚¯ãƒ¬ãƒƒãƒˆã€æ¨©é™ã‚’æä¾›ã—ã¦ãã ã•ã„。","connectorNameDesc":"ã“ã®ã‚³ãƒã‚¯ã‚¿ã‚’è˜åˆ¥ã™ã‚‹ãŸã‚ã®çŸã„åå‰ã‚’入力ã—ã¦ãã ã•ã„","clientId":"クライアントID","clientSecret":"クライアントシークレット","clientSecrets":"クライアントシークレット","scopes":"スコープ","scopesDesc":"アプリãŒå¿…è¦ã¨ã™ã‚‹ã‚¹ã‚³ãƒ¼ãƒ—を入力ã—ã¦ãã ã•ã„。å„スコープを別ã®è¡Œã«è¨˜è¿°ã—ã¦ãã ã•ã„。","scopesPlaceholder":"スコープを入力ã€1行ã«1ã¤ãšã¤","scopesPlaceholderExample":"例:\\nhttps://www.googleapis.com/auth/calendar.readonly\\nemail","connectionConfig":"接続è¨å®š","cancel":"ã‚ャンセル","close":"é–‰ã˜ã‚‹","addingConnector":"è¿½åŠ ä¸...","savingConnector":"ä¿å˜ä¸...","saveChanges":"変更をä¿å˜","deleteConnector":"コãƒã‚¯ã‚¿ã‚’削除","deleteConfirm":"{{name}}を削除ã—ã¾ã™ã‹ï¼Ÿã“ã®æ“作ã¯å…ƒã«æˆ»ã›ã¾ã›ã‚“。","deleting":"削除ä¸...","addConnectionTitle":"{{name}}æŽ¥ç¶šã‚’è¿½åŠ ","editConnectionTitle":"{{name}}接続を編集","connectorReadOnly":"{{name}}コãƒã‚¯ã‚¿","readOnlyDesc":"コãƒã‚¯ã‚¿è©³ç´°ã®èªã¿å–り専用ビュー","builtInConnectors":"組ã¿è¾¼ã¿ã‚³ãƒã‚¯ã‚¿","promptExamples":"é–‹å§‹ã™ã‚‹ãŸã‚ã®ãƒ—ãƒãƒ³ãƒ—ト例","adminOnlyTooltip":"ワークスペース管ç†è€…ã¾ãŸã¯æ‰€æœ‰è€…ã®ã¿ãŒã‚¢ãƒ—リユーザーã®ã‚¤ãƒ³ãƒ†ã‚°ãƒ¬ãƒ¼ã‚·ãƒ§ãƒ³ã‚’接続ã§ãã¾ã™","settingUp":"コãƒã‚¯ã‚¿ã‚’è¨å®šä¸...","configured":"コãƒã‚¯ã‚¿ãŒè¨å®šã•れã¾ã—ãŸ","setUp":"{{type}}アプリユーザーコãƒã‚¯ã‚¿ã‚’è¨å®š","setUpGeneric":"アプリユーザーコãƒã‚¯ã‚¿ã‚’è¨å®š","connecting":"接続ä¸...","connect":"接続","reject":"æ‹’å¦","workspaceLevelNote":"ã“ã®ã‚¤ãƒ³ãƒ†ã‚°ãƒ¬ãƒ¼ã‚·ãƒ§ãƒ³ã¯ãƒ¯ãƒ¼ã‚¯ã‚¹ãƒšãƒ¼ã‚¹ãƒ¬ãƒ™ãƒ«ã§ã‚¢ã‚¯ã‚»ã‚¹å¯èƒ½ã«ãªã‚Šã€ãã®ãƒ¯ãƒ¼ã‚¯ã‚¹ãƒšãƒ¼ã‚¹å†…ã§ä½œæˆã•れãŸã™ã¹ã¦ã®ã‚¢ãƒ—リケーションã«é©ç”¨ã•れã¾ã™ã€‚","previousMessage":"ã“ã®ã‚³ãƒã‚¯ã‚¿è¨å®šã¯å‰ã®ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã‹ã‚‰ã®ã‚‚ã®ã§ã™","toastErrorTitle":"エラー","toastCreated":"コãƒã‚¯ã‚¿ãŒä½œæˆã•れã¾ã—ãŸ","toastCreateFailed":"コãƒã‚¯ã‚¿ã®ä½œæˆã«å¤±æ•—ã—ã¾ã—ãŸ","toastDuplicateName":"ã“ã®åå‰ã®ã‚³ãƒã‚¯ã‚¿ã¯ã“ã®ãƒ¯ãƒ¼ã‚¯ã‚¹ãƒšãƒ¼ã‚¹ã«æ—¢ã«å˜åœ¨ã—ã¾ã™","toastUpdated":"コãƒã‚¯ã‚¿ãŒæ›´æ–°ã•れã¾ã—ãŸ","toastUpdateFailed":"コãƒã‚¯ã‚¿ã®æ›´æ–°ã«å¤±æ•—ã—ã¾ã—ãŸ","toastDeleted":"コãƒã‚¯ã‚¿ãŒå‰Šé™¤ã•れã¾ã—ãŸ","toastDeleteFailed":"コãƒã‚¯ã‚¿ã®å‰Šé™¤ã«å¤±æ•—ã—ã¾ã—ãŸ","configFetchFailed":"接続è¨å®šã®èªã¿è¾¼ã¿ã«å¤±æ•—ã—ã¾ã—ãŸã€‚å¿…é ˆãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰ãŒè¡¨ç¤ºã•れãªã„å ´åˆãŒã‚りã¾ã™ã€‚","retry":"å†è©¦è¡Œ","toastLoadFailed":"OAuthコãƒã‚¯ã‚¿ã®èªã¿è¾¼ã¿ã«å¤±æ•—ã—ã¾ã—ãŸ","namePlaceholder":"例: マーケティング {{label}}","clientIdPlaceholder":"OAuthクライアントIDを入力","clientSecretPlaceholderNew":"æ–°ã—ã„クライアントシークレットを入力","clientSecretPlaceholder":"OAuthクライアントシークレットを入力","extraDetails":{"googlecalendar":{"longDescription":"Googleã‚«ãƒ¬ãƒ³ãƒ€ãƒ¼ã«æŽ¥ç¶šã—ã¦ã€ã‚¢ãƒ—リユーザーãŒã‚«ãƒ¬ãƒ³ãƒ€ãƒ¼ã®äºˆå®šã‚’表示ã€ä½œæˆã€ç®¡ç†ã§ãるよã†ã«ã—ã¾ã™ã€‚スケジュールã®åŒæœŸã€ãƒ•ォームé€ä¿¡ã‹ã‚‰ã®ä¼šè°è‡ªå‹•作æˆã€ã‚¹ã‚±ã‚¸ãƒ¥ãƒ¼ãƒ«ç®¡ç†ãƒ¯ãƒ¼ã‚¯ãƒ•ãƒãƒ¼ã®æ§‹ç¯‰ãŒå¯èƒ½ã§ã™ã€‚","examplePrompt0":"今後ã®ä¼šè°ã‚’アプリ内ダッシュボードã«åŒæœŸã™ã‚‹ã€‚","examplePrompt1":"フォームé€ä¿¡ã‹ã‚‰ã‚«ãƒ¬ãƒ³ãƒ€ãƒ¼ã®äºˆå®šã‚’作æˆã™ã‚‹ã€‚","examplePrompt2":"ãƒã‚°ã‚¤ãƒ³ãƒ¦ãƒ¼ã‚¶ãƒ¼ã®1æ—¥ã®äºˆå®šè¡¨ã‚’表示ã™ã‚‹ã€‚","examplePrompt3":"今後ã®äºˆå®šã®å‰ã«ãƒªãƒžã‚¤ãƒ³ãƒ€ãƒ¼ã‚’é€ä¿¡ã™ã‚‹ã€‚"},"slack":{"longDescription":"Slackã«æŽ¥ç¶šã—ã¦ã€ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã®å…±æœ‰ã‚„ã‚ャンãƒã‚¹ã®ä½œæˆã‚’直接行ã„ã€ã‚³ãƒ©ãƒœãƒ¬ãƒ¼ã‚·ãƒ§ãƒ³ã‚’ç°¡ç´ åŒ–ã—生産性をå‘上ã•ã›ã¾ã™ã€‚メッセージã€ãƒãƒ£ãƒ³ãƒãƒ«ã€ã‚¹ãƒ¬ãƒƒãƒ‰ã€ãƒ•ァイルã€ãƒ¦ãƒ¼ã‚¶ãƒ¼ã‚’検索・å–å¾—ã—ã€Claudeã«ä½œæ¥ã‚’効率化ã™ã‚‹ãŸã‚ã®ã‚³ãƒ³ãƒ†ã‚ストをæä¾›ã—ã¾ã™ã€‚","examplePrompt0":"æ–°ã—ã„アプリユーザーをSlackãƒãƒ£ãƒ³ãƒãƒ«ã«åŒæœŸã™ã‚‹ã€‚","examplePrompt1":"ãƒ“ãƒ«ãƒ‰ã‚¹ãƒ†ãƒ¼ã‚¿ã‚¹ã®æ›´æ–°ã‚’#devopsã«é€ä¿¡ã™ã‚‹ã€‚","examplePrompt2":"アプリエラーを#alertsãƒãƒ£ãƒ³ãƒãƒ«ã«æŠ•稿ã™ã‚‹ã€‚","examplePrompt3":"æ–°ã—ã„顧客フィードãƒãƒƒã‚¯ã‚’ãƒãƒ¼ãƒ ã«é€šçŸ¥ã™ã‚‹ã€‚"},"salesforce":{"longDescription":"Salesforceã«æŽ¥ç¶šã—ã¦ã€é€£çµ¡å…ˆã€ãƒªãƒ¼ãƒ‰ã€å•†è«‡ã€ã‚«ã‚¹ã‚¿ãƒ オブジェクトã«ã‚¢ã‚¯ã‚»ã‚¹ã—ã¾ã™ã€‚アプリユーザーãŒCRMデータã®è¡¨ç¤ºãƒ»æ›´æ–°ã€å–引ã®è¿½è·¡ã€å–¶æ¥ãƒ¯ãƒ¼ã‚¯ãƒ•ãƒãƒ¼ã®è‡ªå‹•化を行ãˆã‚‹ã‚ˆã†ã«ã—ã¾ã™ã€‚","examplePrompt0":"進行ä¸ã®å•†è«‡ã®ãƒ€ãƒƒã‚·ãƒ¥ãƒœãƒ¼ãƒ‰ã‚’表示ã™ã‚‹ã€‚","examplePrompt1":"フォームé€ä¿¡ã‹ã‚‰æ–°ã—ã„リードを作æˆã™ã‚‹ã€‚","examplePrompt2":"é€£çµ¡å…ˆã®æ›´æ–°ã‚’Salesforceã«åŒæœŸã™ã‚‹ã€‚","examplePrompt3":"å–å¼•ãŒæˆç«‹ã—ãŸã‚‰ãƒãƒ¼ãƒ ã«é€šçŸ¥ã™ã‚‹ã€‚"},"hubspot":{"longDescription":"HubSpotã«æŽ¥ç¶šã—ã¦ã€é€£çµ¡å…ˆã€ä¼šç¤¾ã€å–引ã€ãƒžãƒ¼ã‚±ãƒ†ã‚£ãƒ³ã‚°ã‚ャンペーンを管ç†ã—ã¾ã™ã€‚アプリユーザーãŒCRMデータã®åŒæœŸã€ã‚¨ãƒ³ã‚²ãƒ¼ã‚¸ãƒ¡ãƒ³ãƒˆã®è¿½è·¡ã€ãƒžãƒ¼ã‚±ãƒ†ã‚£ãƒ³ã‚°ãƒ¯ãƒ¼ã‚¯ãƒ•ãƒãƒ¼ã®è‡ªå‹•化を行ãˆã‚‹ã‚ˆã†ã«ã—ã¾ã™ã€‚","examplePrompt0":"最近ã®å–引一覧をアプリã«è¡¨ç¤ºã™ã‚‹ã€‚","examplePrompt1":"サインアップフォームã‹ã‚‰æ–°ã—ã„é€£çµ¡å…ˆã‚’è¿½åŠ ã™ã‚‹ã€‚","examplePrompt2":"メールã‚ャンペーンã®çµæžœã‚’ダッシュボードã«åŒæœŸã™ã‚‹ã€‚","examplePrompt3":"アプリã‹ã‚‰å–引ステージを更新ã™ã‚‹ã€‚"},"notion":{"longDescription":"Notionã«æŽ¥ç¶šã—ã¦ã€ãƒšãƒ¼ã‚¸ã€ãƒ‡ãƒ¼ã‚¿ãƒ™ãƒ¼ã‚¹ã€ãƒ¯ãƒ¼ã‚¯ã‚¹ãƒšãƒ¼ã‚¹ã®ã‚³ãƒ³ãƒ†ãƒ³ãƒ„ã«ã‚¢ã‚¯ã‚»ã‚¹ã—ã¾ã™ã€‚アプリユーザーãŒNotionワークスペースã®èªã¿å–ã‚Šãƒ»æ›´æ–°ã€æ§‹é€ 化データã®åŒæœŸã€ã‚³ãƒ³ãƒ†ãƒ³ãƒ„ワークフãƒãƒ¼ã®è‡ªå‹•化を行ãˆã‚‹ã‚ˆã†ã«ã—ã¾ã™ã€‚","examplePrompt0":"Notionデータベースã‹ã‚‰ã‚¿ã‚¹ã‚¯ãƒªã‚¹ãƒˆã‚’å–å¾—ã™ã‚‹ã€‚","examplePrompt1":"フォームé€ä¿¡ã‹ã‚‰æ–°ã—ã„ページを作æˆã™ã‚‹ã€‚","examplePrompt2":"プãƒã‚¸ã‚§ã‚¯ãƒˆã®ã‚¹ãƒ†ãƒ¼ã‚¿ã‚¹æ›´æ–°ã‚’Notionã«åŒæœŸã™ã‚‹ã€‚","examplePrompt3":"Notionã®ã‚³ãƒ³ãƒ†ãƒ³ãƒ„をアプリ内ã«è¡¨ç¤ºã™ã‚‹ã€‚"},"slackbot":{"longDescription":"Slack Botを接続ã—ã¦ã€ã‚«ã‚¹ã‚¿ãƒ åã¨ã‚¢ã‚¤ã‚³ãƒ³ã‚’æŒã¤ãƒ–ランドボットã¨ã—ã¦ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã‚’投稿ã—ã¾ã™ã€‚アプリメンションã€ã‚¹ãƒ©ãƒƒã‚·ãƒ¥ã‚³ãƒžãƒ³ãƒ‰ã¸ã®å¿œç”ã€Slackワークスペースã§ã®ãƒœãƒƒãƒˆä¸å¿ƒã®ãƒ¯ãƒ¼ã‚¯ãƒ•ãƒãƒ¼ã®è‡ªå‹•化ãŒå¯èƒ½ã§ã™ã€‚","examplePrompt0":"毎日ã®ã‚¹ã‚¿ãƒ³ãƒ‰ã‚¢ãƒƒãƒ—サマリーを#generalã«æŠ•ç¨¿ã™ã‚‹ã€‚","examplePrompt1":"スラッシュコマンドã«ã‚¢ãƒ—リデータã§å¿œç”ã™ã‚‹ã€‚","examplePrompt2":"ã‚¿ã‚¹ã‚¯ãŒæœŸé™åˆ‡ã‚Œã®å ´åˆã«è‡ªå‹•アラートをé€ä¿¡ã™ã‚‹ã€‚","examplePrompt3":"æ–°ã—ã„æ³¨æ–‡ãŒå…¥ã£ãŸã‚‰ãƒãƒ£ãƒ³ãƒãƒ«ã«é€šçŸ¥ã™ã‚‹ã€‚"},"googledrive":{"longDescription":"Googleãƒ‰ãƒ©ã‚¤ãƒ–ã«æŽ¥ç¶šã—ã¦ã€ãƒ•ァイルã®ã‚¢ãƒƒãƒ—ãƒãƒ¼ãƒ‰ã€æ•´ç†ã€ç®¡ç†ã‚’行ã„ã¾ã™ã€‚アプリユーザーãŒç”Ÿæˆã•れãŸãƒ‰ã‚ュメントã®ä¿å˜ã€ãƒ‡ãƒ¼ã‚¿ã®ãƒãƒƒã‚¯ã‚¢ãƒƒãƒ—ã€ã‚¢ãƒ—リã‹ã‚‰ç›´æŽ¥ãƒ‰ãƒ©ã‚¤ãƒ–ファイルã«ã‚¢ã‚¯ã‚»ã‚¹ã§ãるよã†ã«ã—ã¾ã™ã€‚","examplePrompt0":"生æˆã•れãŸãƒ¬ãƒãƒ¼ãƒˆã‚’共有ドライブフォルダã«ä¿å˜ã™ã‚‹ã€‚","examplePrompt1":"ユーザーãŒé€ä¿¡ã—ãŸãƒ•ァイルをGoogleドライブã«ã‚¢ãƒƒãƒ—ãƒãƒ¼ãƒ‰ã™ã‚‹ã€‚","examplePrompt2":"特定ã®ãƒ•ã‚©ãƒ«ãƒ€å†…ã®æœ€è¿‘ã®ãƒ•ァイルを一覧表示ã™ã‚‹ã€‚","examplePrompt3":"アプリデータã®ã‚¨ã‚¯ã‚¹ãƒãƒ¼ãƒˆã‚’自動的ã«ãƒ‰ãƒ©ã‚¤ãƒ–ã«ãƒãƒƒã‚¯ã‚¢ãƒƒãƒ—ã™ã‚‹ã€‚"},"gmail":{"longDescription":"Gmailã«æŽ¥ç¶šã—ã¦ã€ãƒ¡ãƒ¼ãƒ«ã®ãƒ—ãƒã‚°ãƒ©ãƒ çš„ãªé€ä¿¡ã€èªã¿å–りã€ç®¡ç†ã‚’行ã„ã¾ã™ã€‚アプリユーザーãŒãƒ¡ãƒ¼ãƒ«ãƒ¯ãƒ¼ã‚¯ãƒ•ãƒãƒ¼ã®è‡ªå‹•化ã€å—信トレイã®ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸èªã¿å–りã€è‡ªåˆ†ã®ã‚¢ã‚«ã‚¦ãƒ³ãƒˆã‹ã‚‰ã®ãƒ‘ーソナライズã•れãŸãƒ¡ãƒ¼ãƒ«é€ä¿¡ã‚’行ãˆã‚‹ã‚ˆã†ã«ã—ã¾ã™ã€‚","examplePrompt0":"フォームé€ä¿¡å¾Œã«ç¢ºèªãƒ¡ãƒ¼ãƒ«ã‚’é€ä¿¡ã™ã‚‹ã€‚","examplePrompt1":"ãƒ¦ãƒ¼ã‚¶ãƒ¼ã®æœ€æ–°ã®å—信トレイメッセージを表示ã™ã‚‹ã€‚","examplePrompt2":"ç‰¹å®šã®æ¡ä»¶ã«ä¸€è‡´ã™ã‚‹ãƒ¡ãƒ¼ãƒ«ã«è‡ªå‹•返信ã™ã‚‹ã€‚","examplePrompt3":"パーソナライズã•れãŸã‚¢ã‚¦ãƒˆãƒªãƒ¼ãƒãƒ¡ãƒ¼ãƒ«ã‚’作æˆã—ã¦é€ä¿¡ã™ã‚‹ã€‚"},"googlesheets":{"longDescription":"Googleã‚¹ãƒ—ãƒ¬ãƒƒãƒ‰ã‚·ãƒ¼ãƒˆã«æŽ¥ç¶šã—ã¦ã€ãƒ‡ãƒ¼ã‚¿ã®èªã¿å–ã‚Šã€æ›¸ãè¾¼ã¿ã€æ›´æ–°ã‚’行ã„ã¾ã™ã€‚アプリユーザーãŒãƒ¬ã‚³ãƒ¼ãƒ‰ã®åŒæœŸã€ã‚·ãƒ¼ãƒˆã‹ã‚‰ã®ãƒ‡ãƒ¼ã‚¿ã‚¤ãƒ³ãƒãƒ¼ãƒˆã€ã‚¢ãƒ—リデータã®ã‚¹ãƒ—レッドシートã¸ã®ã‚¨ã‚¯ã‚¹ãƒãƒ¼ãƒˆã‚’行ãˆã‚‹ã‚ˆã†ã«ã—ã¾ã™ã€‚","examplePrompt0":"Googleスプレッドシートã‹ã‚‰å•†å“データをインãƒãƒ¼ãƒˆã™ã‚‹ã€‚","examplePrompt1":"日次売上レãƒãƒ¼ãƒˆã‚’スプレッドシートã«ã‚¨ã‚¯ã‚¹ãƒãƒ¼ãƒˆã™ã‚‹ã€‚","examplePrompt2":"フォームé€ä¿¡ã‚’トラッã‚ングシートã«åŒæœŸã™ã‚‹ã€‚","examplePrompt3":"共有スプレッドシートã‹ã‚‰ä¾¡æ ¼ãƒ‡ãƒ¼ã‚¿ã‚’èªã¿å–る。"},"googleslides":{"longDescription":"Googleã‚¹ãƒ©ã‚¤ãƒ‰ã«æŽ¥ç¶šã—ã¦ã€ãƒ—レゼンテーションã®ä½œæˆã¨ç·¨é›†ã‚’行ã„ã¾ã™ã€‚アプリユーザーãŒãƒ†ãƒ³ãƒ—レートã‹ã‚‰ã‚¹ãƒ©ã‚¤ãƒ‰ãƒ‡ãƒƒã‚を生æˆã€å‹•çš„ã‚³ãƒ³ãƒ†ãƒ³ãƒ„ã‚’è¿½åŠ ã€ãƒ—レゼンテーション作æˆã‚’自動化ã§ãるよã†ã«ã—ã¾ã™ã€‚","examplePrompt0":"フォーム入力ã‹ã‚‰ãƒ”ッãƒãƒ‡ãƒƒã‚を生æˆã™ã‚‹ã€‚","examplePrompt1":"週次メトリクスをå«ã‚€æ–°ã—ã„ã‚¹ãƒ©ã‚¤ãƒ‰ã‚’è¿½åŠ ã™ã‚‹ã€‚","examplePrompt2":"レãƒãƒ¼ãƒˆãƒ†ãƒ³ãƒ—レートã‹ã‚‰ãƒ—レゼンテーションを作æˆã™ã‚‹ã€‚","examplePrompt3":"最新データã§ã‚¹ãƒ©ã‚¤ãƒ‰ã®ã‚³ãƒ³ãƒ†ãƒ³ãƒ„ã‚’æ›´æ–°ã™ã‚‹ã€‚"},"googledocs":{"longDescription":"Googleドã‚ãƒ¥ãƒ¡ãƒ³ãƒˆã«æŽ¥ç¶šã—ã¦ã€ãƒ‰ã‚ュメントã®ä½œæˆã€èªã¿å–りã€ç·¨é›†ã‚’行ã„ã¾ã™ã€‚アプリユーザーãŒå¥‘約書ã®ç”Ÿæˆã€ãƒ†ãƒ³ãƒ—レートã®å…¥åŠ›ã€ã‚¢ãƒ—リã‹ã‚‰ç›´æŽ¥ãƒ‰ã‚ュメントを管ç†ã§ãるよã†ã«ã—ã¾ã™ã€‚","examplePrompt0":"テンプレートã‹ã‚‰å¥‘約書を生æˆã™ã‚‹ã€‚","examplePrompt1":"フォームデータã‹ã‚‰è°äº‹éŒ²ã‚’作æˆã™ã‚‹ã€‚","examplePrompt2":"ユーザー詳細ã§ãƒ‰ã‚ュメントテンプレートを埋ã‚る。","examplePrompt3":"æ—¢å˜ã®ãƒ‰ã‚ãƒ¥ãƒ¡ãƒ³ãƒˆã«æ–°ã—ã„ã‚³ãƒ³ãƒ†ãƒ³ãƒ„ã‚’è¿½åŠ ã™ã‚‹ã€‚"},"googlebigquery":{"longDescription":"Google BigQueryã«æŽ¥ç¶šã—ã¦ã€SQLクエリã®å®Ÿè¡Œã¨å¤§è¦æ¨¡ãƒ‡ãƒ¼ã‚¿ã‚»ãƒƒãƒˆã®åˆ†æžã‚’行ã„ã¾ã™ã€‚アプリユーザーãŒãƒ‡ãƒ¼ã‚¿ã‚¦ã‚§ã‚¢ãƒã‚¦ã‚¹ã¸ã®ã‚¯ã‚¨ãƒªã€ãƒ€ãƒƒã‚·ãƒ¥ãƒœãƒ¼ãƒ‰ã®æ§‹ç¯‰ã€ã‚¢ãƒ—リã¸ã®åˆ†æžãƒ‡ãƒ¼ã‚¿ã®å–り込ã¿ã‚’行ãˆã‚‹ã‚ˆã†ã«ã—ã¾ã™ã€‚","examplePrompt0":"売上データをクエリã—ã¦ãƒãƒ£ãƒ¼ãƒˆã«è¡¨ç¤ºã™ã‚‹ã€‚","examplePrompt1":"BigQueryテーブルã‹ã‚‰ãƒ¦ãƒ¼ã‚¶ãƒ¼åˆ†æžã‚’å–å¾—ã™ã‚‹ã€‚","examplePrompt2":"ウェアãƒã‚¦ã‚¹ãƒ‡ãƒ¼ã‚¿ã‹ã‚‰ã‚¹ã‚±ã‚¸ãƒ¥ãƒ¼ãƒ«ãƒ¬ãƒãƒ¼ãƒˆã‚’実行ã™ã‚‹ã€‚","examplePrompt3":"ã‚¯ã‚¨ãƒªçµæžœã‹ã‚‰å£²ä¸Šä¸Šä½ã®è£½å“を表示ã™ã‚‹ã€‚"},"linkedin":{"longDescription":"LinkedInã«æŽ¥ç¶šã—ã¦ã€ãƒ—ãƒãƒ•ィールデータã¸ã®ã‚¢ã‚¯ã‚»ã‚¹ã¨æŠ•稿ã®å…±æœ‰ã‚’行ã„ã¾ã™ã€‚ã‚¢ãƒ—ãƒªãƒ¦ãƒ¼ã‚¶ãƒ¼ãŒæ›´æ–°ã®å…¬é–‹ã€ãƒ—ãƒãƒ•ェッショナルプãƒãƒ•ィールã®å–å¾—ã€LinkedInã§ã®ã‚½ãƒ¼ã‚·ãƒ£ãƒ«ãƒ¡ãƒ‡ã‚£ã‚¢ãƒ¯ãƒ¼ã‚¯ãƒ•ãƒãƒ¼ã®è‡ªå‹•化を行ãˆã‚‹ã‚ˆã†ã«ã—ã¾ã™ã€‚","examplePrompt0":"伿¥ã®æ›´æ–°æƒ…å ±ã‚’LinkedInã«è‡ªå‹•投稿ã™ã‚‹ã€‚","examplePrompt1":"ãƒã‚°ã‚¤ãƒ³ãƒ¦ãƒ¼ã‚¶ãƒ¼ã®ãƒ—ãƒãƒ•ィール詳細をå–å¾—ã™ã‚‹ã€‚","examplePrompt2":"アプリã‹ã‚‰LinkedInã«ãƒ–ãƒã‚°è¨˜äº‹ã‚’共有ã™ã‚‹ã€‚","examplePrompt3":"ダッシュボードã«LinkedInプãƒãƒ•ã‚£ãƒ¼ãƒ«æƒ…å ±ã‚’è¡¨ç¤ºã™ã‚‹ã€‚"},"tiktok":{"longDescription":"TikTokã«æŽ¥ç¶šã—ã¦ã€ãƒ—ãƒãƒ•ã‚£ãƒ¼ãƒ«æƒ…å ±ã€ãƒ•ã‚©ãƒãƒ¯ãƒ¼çµ±è¨ˆã€å‹•画データã«ã‚¢ã‚¯ã‚»ã‚¹ã—ã¾ã™ã€‚アプリユーザーãŒTikTokã®ãƒ‘フォーマンスを追跡ã—ã€å…¬é–‹æ¸ˆã¿å‹•画を閲覧ã§ãるよã†ã«ã—ã¾ã™ã€‚","examplePrompt0":"フォãƒãƒ¯ãƒ¼æ•°ã¨ãƒ—ãƒãƒ•ィール統計を表示ã™ã‚‹ã€‚","examplePrompt1":"ãƒ¦ãƒ¼ã‚¶ãƒ¼ã®æœ€æ–°TikTok動画を一覧表示ã™ã‚‹ã€‚","examplePrompt2":"動画パフォーマンスメトリクスをダッシュボードã«è¡¨ç¤ºã™ã‚‹ã€‚","examplePrompt3":"フォãƒãƒ¯ãƒ¼ã®å¢—åŠ ã‚’çµŒæ™‚çš„ã«è¿½è·¡ã™ã‚‹ã€‚"},"discord":{"longDescription":"Discordã«æŽ¥ç¶šã—ã¦ã€ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã®é€ä¿¡ã€ã‚µãƒ¼ãƒãƒ¼ã®ç®¡ç†ã€ã‚®ãƒ«ãƒ‰ã‚„ãƒãƒ£ãƒ³ãƒãƒ«ã¨ã®ã‚„りå–りを行ã„ã¾ã™ã€‚アプリユーザーãŒé€šçŸ¥ã®è‡ªå‹•åŒ–ã€æ›´æ–°ã®æŠ•稿ã€Discordコミュニティã¨ã®é€£æºã‚’行ãˆã‚‹ã‚ˆã†ã«ã—ã¾ã™ã€‚","examplePrompt0":"注文通知をDiscordãƒãƒ£ãƒ³ãƒãƒ«ã«é€ä¿¡ã™ã‚‹ã€‚","examplePrompt1":"アプリアラートを#notificationsãƒãƒ£ãƒ³ãƒãƒ«ã«æŠ•稿ã™ã‚‹ã€‚","examplePrompt2":"Discordサーãƒãƒ¼ã®åˆ©ç”¨å¯èƒ½ãªãƒãƒ£ãƒ³ãƒãƒ«ã‚’一覧表示ã™ã‚‹ã€‚","examplePrompt3":"æ–°ã—ã„ユーザーãŒã‚µã‚¤ãƒ³ã‚¢ãƒƒãƒ—ã—ãŸã‚‰ãƒãƒ¼ãƒ ã«é€šçŸ¥ã™ã‚‹ã€‚"},"wix":{"longDescription":"Wixã«æŽ¥ç¶šã—ã¦ã€ã‚µã‚¤ãƒˆãƒ‡ãƒ¼ã‚¿ã¸ã®ã‚¢ã‚¯ã‚»ã‚¹ã€ã‚³ãƒ³ãƒ†ãƒ³ãƒ„ã®ç®¡ç†ã€Storesã€Bookingsã€CRMãªã©ã®Wixビジãƒã‚¹ã‚½ãƒªãƒ¥ãƒ¼ã‚·ãƒ§ãƒ³ã¨ã®ã‚„りå–りを行ã„ã¾ã™ã€‚アプリユーザーãŒå•†å“ã€æ³¨æ–‡ã€é¡§å®¢ãƒ‡ãƒ¼ã‚¿ã‚’åŒæœŸã§ãるよã†ã«ã—ã¾ã™ã€‚","examplePrompt0":"Wixストアã®å•†å“をアプリã«åŒæœŸã™ã‚‹ã€‚","examplePrompt1":"Wix Storesã‹ã‚‰æœ€è¿‘ã®æ³¨æ–‡ã‚’å–å¾—ã™ã‚‹ã€‚","examplePrompt2":"Wix Bookingsã®äºˆç´„å¯èƒ½çжæ³ã‚’表示ã™ã‚‹ã€‚","examplePrompt3":"アプリã‹ã‚‰Wix CRMã®é€£çµ¡å…ˆã‚’管ç†ã™ã‚‹ã€‚"},"github":{"longDescription":"GitHubã«æŽ¥ç¶šã—ã¦ã€ãƒªãƒã‚¸ãƒˆãƒªã¸ã®ã‚¢ã‚¯ã‚»ã‚¹ã€ã‚¤ã‚·ãƒ¥ãƒ¼ã‚„プルリクエストã®ç®¡ç†ã€é–‹ç™ºãƒ¯ãƒ¼ã‚¯ãƒ•ãƒãƒ¼ã®è‡ªå‹•化を行ã„ã¾ã™ã€‚アプリユーザーãŒã‚³ãƒ¼ãƒ‰å¤‰æ›´ã®è¿½è·¡ã€ã‚¤ã‚·ãƒ¥ãƒ¼ã®ä½œæˆã€é–‹ç™ºãƒ—ãƒã‚»ã‚¹ã®åŠ¹çŽ‡åŒ–ã‚’è¡Œãˆã‚‹ã‚ˆã†ã«ã—ã¾ã™ã€‚","examplePrompt0":"リãƒã‚¸ãƒˆãƒªã®ã‚ªãƒ¼ãƒ—ンイシューを一覧表示ã™ã‚‹ã€‚","examplePrompt1":"ãƒã‚°å ±å‘Šãƒ•ォームã‹ã‚‰æ–°ã—ã„イシューを作æˆã™ã‚‹ã€‚","examplePrompt2":"最近ã®ãƒ—ルリクエストをダッシュボードã«è¡¨ç¤ºã™ã‚‹ã€‚","examplePrompt3":"リãƒã‚¸ãƒˆãƒªå…¨ä½“ã®ã‚³ãƒŸãƒƒãƒˆã‚¢ã‚¯ãƒ†ã‚£ãƒ“ティを追跡ã™ã‚‹ã€‚"},"wrike":{"longDescription":"Wrikeã«æŽ¥ç¶šã—ã¦ã€ãƒ—ãƒã‚¸ã‚§ã‚¯ãƒˆã€ã‚¿ã‚¹ã‚¯ã€ãƒãƒ¼ãƒ コラボレーションを管ç†ã—ã¾ã™ã€‚アプリユーザーãŒã‚¿ã‚¹ã‚¯ã®ä½œæˆãƒ»æ›´æ–°ã€ãƒ—ãƒã‚¸ã‚§ã‚¯ãƒˆé€²æ—ã®è¿½è·¡ã€ãƒãƒ¼ãƒ é–“ã®ä½œæ¥èª¿æ•´ã‚’行ãˆã‚‹ã‚ˆã†ã«ã—ã¾ã™ã€‚","examplePrompt0":"フォームé€ä¿¡ã‹ã‚‰ã‚¿ã‚¹ã‚¯ã‚’作æˆã™ã‚‹ã€‚","examplePrompt1":"プãƒã‚¸ã‚§ã‚¯ãƒˆã®ã‚¿ã‚¤ãƒ ラインをダッシュボードã«è¡¨ç¤ºã™ã‚‹ã€‚","examplePrompt2":"アプリ内ã‹ã‚‰ã‚¿ã‚¹ã‚¯ã‚¹ãƒ†ãƒ¼ã‚¿ã‚¹ã‚’æ›´æ–°ã™ã‚‹ã€‚","examplePrompt3":"ãƒãƒ¼ãƒ ã®ä½œæ¥è² è·ã¨ã‚¿ã‚¹ã‚¯å‰²ã‚Šå½“ã¦ã‚’表示ã™ã‚‹ã€‚"},"box":{"longDescription":"Boxã«æŽ¥ç¶šã—ã¦ã€ãƒ•ァイルやフォルダã®ã‚¢ãƒƒãƒ—ãƒãƒ¼ãƒ‰ã€ç®¡ç†ã€å…±æœ‰ã‚’行ã„ã¾ã™ã€‚アプリユーザーãŒãƒ‰ã‚ュメントを安全ã«ä¿å˜ã€ãƒ•ァイルを整ç†ã€Box内ã®ã‚³ãƒ³ãƒ†ãƒ³ãƒ„ã§ã‚³ãƒ©ãƒœãƒ¬ãƒ¼ã‚·ãƒ§ãƒ³ã§ãるよã†ã«ã—ã¾ã™ã€‚","examplePrompt0":"生æˆã•れãŸãƒ‰ã‚ュメントをBoxフォルダã«ã‚¢ãƒƒãƒ—ãƒãƒ¼ãƒ‰ã™ã‚‹ã€‚","examplePrompt1":"共有Boxディレクトリ内ã®ãƒ•ァイルを一覧表示ã™ã‚‹ã€‚","examplePrompt2":"Boxã‹ã‚‰ã‚¢ãƒ—リã«ãƒ•ァイルをダウンãƒãƒ¼ãƒ‰ã™ã‚‹ã€‚","examplePrompt3":"Boxファイルã®ãƒªãƒ³ã‚¯ã‚’ãƒãƒ¼ãƒ メンãƒãƒ¼ã¨å…±æœ‰ã™ã‚‹ã€‚"},"clickup":{"longDescription":"ClickUpã«æŽ¥ç¶šã—ã¦ã€ã‚¿ã‚¹ã‚¯ã€ãƒ—ãƒã‚¸ã‚§ã‚¯ãƒˆã€ãƒãƒ¼ãƒ ワークフãƒãƒ¼ã‚’管ç†ã—ã¾ã™ã€‚アプリユーザーãŒã‚¿ã‚¹ã‚¯ã®ä½œæˆã€ã‚¹ãƒ†ãƒ¼ã‚¿ã‚¹ã®æ›´æ–°ã€ã‚¢ãƒ—リã‹ã‚‰ç›´æŽ¥ãƒ—ãƒã‚¸ã‚§ã‚¯ãƒˆé€²æ—を追跡ã§ãるよã†ã«ã—ã¾ã™ã€‚","examplePrompt0":"フォームé€ä¿¡ã‹ã‚‰ClickUpタスクを作æˆã™ã‚‹ã€‚","examplePrompt1":"タスクボードã®ã‚¹ãƒ†ãƒ¼ã‚¿ã‚¹ã‚’ダッシュボードã«è¡¨ç¤ºã™ã‚‹ã€‚","examplePrompt2":"アプリã‹ã‚‰ã‚¿ã‚¹ã‚¯ã®å„ªå…ˆåº¦ã‚’æ›´æ–°ã™ã‚‹ã€‚","examplePrompt3":"ç¾åœ¨ã®ã‚¹ãƒ—ãƒªãƒ³ãƒˆã®æœŸé™åˆ‡ã‚Œã‚¿ã‚¹ã‚¯ã‚’一覧表示ã™ã‚‹ã€‚"},"google_analytics":{"longDescription":"Googleã‚¢ãƒŠãƒªãƒ†ã‚£ã‚¯ã‚¹ã«æŽ¥ç¶šã—ã¦ã€Webサイトã®ãƒˆãƒ©ãƒ•ィックã€ãƒ¦ãƒ¼ã‚¶ãƒ¼è¡Œå‹•ã€ãƒžãƒ¼ã‚±ãƒ†ã‚£ãƒ³ã‚°ãƒ‘フォーマンスデータã«ã‚¢ã‚¯ã‚»ã‚¹ã—ã¾ã™ã€‚アプリユーザーãŒã‚¢ãƒ—リ内ã‹ã‚‰åˆ†æžãƒ¬ãƒãƒ¼ãƒˆã‚’閲覧ã—ã€ä¸»è¦æŒ‡æ¨™ã‚’追跡ã§ãるよã†ã«ã—ã¾ã™ã€‚","examplePrompt0":"ページビューã¨ã‚»ãƒƒã‚·ãƒ§ãƒ³æ•°ã‚’ダッシュボードã«è¡¨ç¤ºã™ã‚‹ã€‚","examplePrompt1":"éŽåŽ»1週間ã®ãƒˆãƒƒãƒ—トラフィックソースを表示ã™ã‚‹ã€‚","examplePrompt2":"ã‚ャンペーン全体ã®ã‚³ãƒ³ãƒãƒ¼ã‚¸ãƒ§ãƒ³çŽ‡ã‚’è¿½è·¡ã™ã‚‹ã€‚","examplePrompt3":"ユーザーã®ãƒ‡ãƒ¢ã‚°ãƒ©ãƒ•ィックã¨è¡Œå‹•データをå–å¾—ã™ã‚‹ã€‚"},"outlook":{"longDescription":"Outlookã«æŽ¥ç¶šã—ã¦ã€ãƒ¡ãƒ¼ãƒ«ã®é€å—ä¿¡ã€ã‚«ãƒ¬ãƒ³ãƒ€ãƒ¼ã‚¤ãƒ™ãƒ³ãƒˆã®ç®¡ç†ã€Microsoft 365ã®ãƒ¡ãƒ¼ãƒ«ã¨ã‚«ãƒ¬ãƒ³ãƒ€ãƒ¼ã¸ã®ã‚¢ã‚¯ã‚»ã‚¹ã‚’行ã„ã¾ã™ã€‚アプリユーザーãŒãƒ¡ãƒ¼ãƒ«ãƒ¯ãƒ¼ã‚¯ãƒ•ãƒãƒ¼ã®è‡ªå‹•化やスケジュールã®åŒæœŸã‚’行ãˆã‚‹ã‚ˆã†ã«ã—ã¾ã™ã€‚","examplePrompt0":"アプリã‹ã‚‰ãƒ•ã‚©ãƒãƒ¼ã‚¢ãƒƒãƒ—メールをé€ä¿¡ã™ã‚‹ã€‚","examplePrompt1":"今後ã®ã‚«ãƒ¬ãƒ³ãƒ€ãƒ¼ã‚¤ãƒ™ãƒ³ãƒˆã‚’表示ã™ã‚‹ã€‚","examplePrompt2":"フォームé€ä¿¡ã‹ã‚‰ã‚«ãƒ¬ãƒ³ãƒ€ãƒ¼ã‚¤ãƒ™ãƒ³ãƒˆã‚’作æˆã™ã‚‹ã€‚","examplePrompt3":"最近ã®ãƒ¡ãƒ¼ãƒ«ã‚’ダッシュボードã«è¡¨ç¤ºã™ã‚‹ã€‚"},"linear":{"longDescription":"Linearã«æŽ¥ç¶šã—ã¦ã€ã‚¤ã‚·ãƒ¥ãƒ¼ã€ãƒ—ãƒã‚¸ã‚§ã‚¯ãƒˆã€ã‚µã‚¤ã‚¯ãƒ«ã®ä½œæˆã¨ç®¡ç†ã‚’行ã„ã¾ã™ã€‚アプリユーザーãŒãƒãƒ¼ãƒ ワークフãƒãƒ¼ã®è¿½è·¡ã€ã‚¹ãƒ—ãƒªãƒ³ãƒˆã®æ•´ç†ã€ã‚¨ãƒ³ã‚¸ãƒ‹ã‚¢ãƒªãƒ³ã‚°ã®é€²æ—把æ¡ã‚’行ãˆã‚‹ã‚ˆã†ã«ã—ã¾ã™ã€‚","examplePrompt0":"ãƒã‚°å ±å‘Šãƒ•ォームã‹ã‚‰Linearイシューを作æˆã™ã‚‹ã€‚","examplePrompt1":"アクティブãªã‚¹ãƒ—リントã®ã‚¤ã‚·ãƒ¥ãƒ¼ã‚’ダッシュボードã«è¡¨ç¤ºã™ã‚‹ã€‚","examplePrompt2":"アプリ内ã‹ã‚‰ã‚¤ã‚·ãƒ¥ãƒ¼ã‚¹ãƒ†ãƒ¼ã‚¿ã‚¹ã‚’æ›´æ–°ã™ã‚‹ã€‚","examplePrompt3":"サイクルã®é€²æ—ã¨ãƒãƒ¼ãƒ ã®ãƒ™ãƒã‚·ãƒ†ã‚£ã‚’追跡ã™ã‚‹ã€‚"},"dropbox":{"longDescription":"Dropboxã«æŽ¥ç¶šã—ã¦ã€ãƒ•ァイルやフォルダã®ã‚¢ãƒƒãƒ—ãƒãƒ¼ãƒ‰ã€ãƒ€ã‚¦ãƒ³ãƒãƒ¼ãƒ‰ã€ç®¡ç†ã‚’行ã„ã¾ã™ã€‚アプリユーザーãŒã‚¯ãƒ©ã‚¦ãƒ‰ã«ãƒ•ァイルをä¿å˜ã€ãƒ‡ãƒ¼ã‚¿ã‚’åŒæœŸã€ã‚¢ãƒ—リã‹ã‚‰Dropboxã®ã‚³ãƒ³ãƒ†ãƒ³ãƒ„ã«ã‚¢ã‚¯ã‚»ã‚¹ã§ãるよã†ã«ã—ã¾ã™ã€‚","examplePrompt0":"エクスãƒãƒ¼ãƒˆã•れãŸãƒ¬ãƒãƒ¼ãƒˆã‚’Dropboxã«ã‚¢ãƒƒãƒ—ãƒãƒ¼ãƒ‰ã™ã‚‹ã€‚","examplePrompt1":"特定ã®Dropboxフォルダ内ã®ãƒ•ァイルを一覧表示ã™ã‚‹ã€‚","examplePrompt2":"共有ファイルをアプリã«ãƒ€ã‚¦ãƒ³ãƒãƒ¼ãƒ‰ã™ã‚‹ã€‚","examplePrompt3":"アプリデータã®ãƒãƒƒã‚¯ã‚¢ãƒƒãƒ—ã‚’Dropboxã«åŒæœŸã™ã‚‹ã€‚"}},"builtIn":{"sendEmail":{"name":"メールé€ä¿¡","rowDescription":"カスタマイズå¯èƒ½ãªé€ä¿¡è€…åã¨ãƒªãƒƒãƒHTMLコンテンツã§ã€Base44アプリã®ãƒ¦ãƒ¼ã‚¶ãƒ¼ã«ãƒ¡ãƒ¼ãƒ«ã‚’é€ä¿¡ã—ã¾ã™ã€‚","subtitle":"アプリã‹ã‚‰ç›´æŽ¥ãƒ¦ãƒ¼ã‚¶ãƒ¼ã«è‡ªå‹•メールをé€ä¿¡ã—ã¾ã™ã€‚","longDescription":"ワークフãƒãƒ¼ã‚„自動化ã®ä¸€ç’°ã¨ã—ã¦ã€ã‚¢ãƒ—リã‹ã‚‰è‡ªå‹•çš„ã«ãƒ¡ãƒ¼ãƒ«ã‚’é€ä¿¡ã—ã¾ã™ã€‚ã“ã®ã‚¤ãƒ³ãƒ†ã‚°ãƒ¬ãƒ¼ã‚·ãƒ§ãƒ³ã¯ã€ãƒ•ãƒãƒ¼ã€ãƒãƒƒã‚¯ã‚¨ãƒ³ãƒ‰é–¢æ•°ã€ã¾ãŸã¯ã‚¨ãƒ¼ã‚¸ã‚§ãƒ³ãƒˆã‹ã‚‰ãƒˆãƒªã‚¬ãƒ¼ã§ãã€ç¢ºèªã€ã‚¢ãƒ©ãƒ¼ãƒˆã€è¦ç´„ã€ã¾ãŸã¯ã‚¢ã‚¯ã‚»ã‚¹ãƒªãƒ³ã‚¯ãªã©ã®é€šçŸ¥ã‚’ユーザーã«é€ä¿¡ã§ãã¾ã™ã€‚","examplePrompt0":"サãƒãƒ¼ãƒˆãƒã‚±ãƒƒãƒˆãŒã€Œè§£æ±ºæ¸ˆã¿ã€ã«æ›´æ–°ã•れãŸã‚‰ã€SendEmailを使用ã—ã¦ã€è§£æ±ºã®è¦ç´„ã¨ã¨ã‚‚ã«ä¾é ¼è€…ã«é€šçŸ¥ã—ã¦ãã ã•ã„。","examplePrompt1":"SendEmailを使用ã—ã¦ã€ç®¡ç†è€…ã«æ–°è¦æ³¨æ–‡ã¨ä¸»è¦ãƒ¡ãƒˆãƒªã‚¯ã‚¹ã®ãƒ€ã‚¤ã‚¸ã‚§ã‚¹ãƒˆã‚’毎週é€ä¿¡ã™ã‚‹è‡ªå‹•化を作æˆã—ã¦ãã ã•ã„。","examplePrompt2":"SendEmailを使用ã—ã¦ã€ç®¡ç†è€…ã«ã“ã®ã‚¢ãƒ—ãƒªã®æ–°è¦ç™»éŒ²è€…ã®è¦ç´„を毎日é€ä¿¡ã™ã‚‹ãƒ•ãƒãƒ¼ã‚’è¿½åŠ ã—ã¦ãã ã•ã„。","examplePrompt3":"SendEmailを使用ã—ã¦ã€äºˆç´„ã—ãŸã‚¢ãƒã‚¤ãƒ³ãƒˆãƒ¡ãƒ³ãƒˆã®24時間å‰ã«ãƒ¦ãƒ¼ã‚¶ãƒ¼ã«ãƒªãƒžã‚¤ãƒ³ãƒ‰ã™ã‚‹è‡ªå‹•化を作æˆã—ã¦ãã ã•ã„。"},"uploadFile":{"name":"ファイルアップãƒãƒ¼ãƒ‰","rowDescription":"アプリã«ãƒ•ァイルをアップãƒãƒ¼ãƒ‰ã§ãるよã†ã«ã—ã¾ã™ã€‚è¿”ã•れãŸãƒ•ァイルURLã‚’ä»–ã®ã‚¤ãƒ³ãƒ†ã‚°ãƒ¬ãƒ¼ã‚·ãƒ§ãƒ³ã‚„ワークフãƒãƒ¼ã§ä½¿ç”¨ã§ãã¾ã™ã€‚","subtitle":"アプリã«ãƒ•ァイルをアップãƒãƒ¼ãƒ‰ã§ãるよã†ã«ã—ã¾ã™ã€‚è¿”ã•れãŸãƒ•ァイルURLã‚’ä»–ã®ã‚¤ãƒ³ãƒ†ã‚°ãƒ¬ãƒ¼ã‚·ãƒ§ãƒ³ã‚„ワークフãƒãƒ¼ã§ä½¿ç”¨ã§ãã¾ã™ã€‚","longDescription":"ユーザーãŒã‚¢ãƒ—リã«ãƒ•ァイルをアップãƒãƒ¼ãƒ‰ã—ã¦ãƒ¬ã‚³ãƒ¼ãƒ‰ã«æ·»ä»˜ã§ãるよã†ã«ã—ã¾ã™ã€‚ã“ã®ã‚¤ãƒ³ãƒ†ã‚°ãƒ¬ãƒ¼ã‚·ãƒ§ãƒ³ã¯ã‚¢ãƒƒãƒ—ãƒãƒ¼ãƒ‰ã‚³ãƒ³ãƒãƒ¼ãƒãƒ³ãƒˆã‚’駆動ã—ã€ãƒ‰ã‚ュメントã€ç”»åƒã€é ˜åŽæ›¸ã€å¥‘約書ã€ã‚¹ã‚¯ãƒªãƒ¼ãƒ³ã‚·ãƒ§ãƒƒãƒˆã€ãƒ—ãƒãƒ•ィール写真ã€CSVファイルã€ã¾ãŸã¯ã‚¹ãƒ—レッドシートをåŽé›†ã—ã€å®‰å…¨ãªãƒ•ァイルURLã®ã¿ã‚’データã«ä¿å˜ã§ãã¾ã™ã€‚","examplePrompt0":"ファイルアップãƒãƒ¼ãƒ‰ã‚’使用ã—ã¦ã“ã®ãƒ•ォームã«ãƒ•ァイルアップãƒãƒ¼ãƒ‰ãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰ã‚’è¿½åŠ ã—ã€é–¢é€£ãƒ¬ã‚³ãƒ¼ãƒ‰ã«ãƒ•ァイルURLã‚’ä¿å˜ã—ã¦ãã ã•ã„。","examplePrompt1":"ファイルアップãƒãƒ¼ãƒ‰ã§ãƒ—ãƒãƒ•ィール写真をアップãƒãƒ¼ãƒ‰ã—ã€ãƒ¦ãƒ¼ã‚¶ãƒ¼ã‚¨ãƒ³ãƒ†ã‚£ãƒ†ã‚£ã«ç”»åƒURLã‚’ä¿å˜ã§ãるページを作æˆã—ã¦ãã ã•ã„。","examplePrompt2":"ファイルアップãƒãƒ¼ãƒ‰ã‚’使用ã—ã¦CSVファイルã®ã‚¢ãƒƒãƒ—ãƒãƒ¼ãƒ‰ã‚¨ãƒªã‚¢ã‚’è¨å®šã—ã€å¾Œã§ãƒ‡ãƒ¼ã‚¿ãƒ†ãƒ¼ãƒ–ルã«ã‚¤ãƒ³ãƒãƒ¼ãƒˆã§ãるよã†ã«ã—ã¦ãã ã•ã„。"},"invokeLlm":{"name":"LLMを呼ã³å‡ºã™","rowDescription":"組ã¿è¾¼ã¿è¨€èªžãƒ¢ãƒ‡ãƒ«ã€ãƒ—ãƒãƒ³ãƒ—トã€ãƒ•ã‚¡ã‚¤ãƒ«ã€æ§‹é€ 化出力を使用ã—ã¦AI応ç”を生æˆã—ã¾ã™ã€‚","subtitle":"組ã¿è¾¼ã¿è¨€èªžãƒ¢ãƒ‡ãƒ«ã€ãƒ—ãƒãƒ³ãƒ—トã€ãƒ•ã‚¡ã‚¤ãƒ«ã€æ§‹é€ 化出力を使用ã—ã¦AI応ç”を生æˆã—ã¾ã™ã€‚","longDescription":"言語モデルを使用ã—ã¦ãƒ—ãƒãƒ³ãƒ—トã‹ã‚‰å¿œç”を生æˆã—ã¾ã™ã€‚ã“ã®ã‚¤ãƒ³ãƒ†ã‚°ãƒ¬ãƒ¼ã‚·ãƒ§ãƒ³ã¯æ§‹é€ 化JSON出力を返ã—ã€ç”»åƒã‚’分æžã—ã€ãƒ•ァイル添付をコンテã‚ストã¨ã—ã¦ä½¿ç”¨ã—ã€å¿…è¦ã«å¿œã˜ã¦Web検索を実行ã§ãã¾ã™ã€‚アプリã®ã‚¨ãƒ¼ã‚¸ã‚§ãƒ³ãƒˆã€ãƒ¯ãƒ¼ã‚¯ãƒ•ãƒãƒ¼ã€ãã®ä»–ã®AI駆動機能ã«ä½¿ç”¨ã§ãã¾ã™ã€‚","examplePrompt0":"LLMを呼ã³å‡ºã™ã‚’使用ã—ã¦ãƒ¦ãƒ¼ã‚¶ãƒ¼å…¥åŠ›ã‹ã‚‰AI応ç”を生æˆã—ã€ã“ã®ãƒšãƒ¼ã‚¸ã«å›žç”を表示ã—ã¦ãã ã•ã„。","examplePrompt1":"LLMを呼ã³å‡ºã™ã‚’使用ã—ã¦ã€é•·ã„フィードãƒãƒƒã‚¯ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã‚’å„フィードãƒãƒƒã‚¯ãƒ¬ã‚³ãƒ¼ãƒ‰ã«ä¿å˜ã•れる3ã¤ã®è¦ç‚¹ã«è¦ç´„ã—ã¦ãã ã•ã„。","examplePrompt2":"ユーザーテã‚ストをLLMを呼ã³å‡ºã™ã«é€ä¿¡ã—ã€ã‚ˆã‚Šæ˜Žç¢ºã§ãƒ•レンドリーãªãƒãƒ¼ã‚¸ãƒ§ãƒ³ã‚’è¿”ã™ã€Œãƒ†ã‚ストを書ãç›´ã™ã€æ©Ÿèƒ½ã‚’è¿½åŠ ã—ã¦ãã ã•ã„。","examplePrompt3":"LLMを呼ã³å‡ºã™ã‚’使用ã—ã¦ã€å„サãƒãƒ¼ãƒˆãƒã‚±ãƒƒãƒˆã‚’「ãƒã‚°ã€ã€ã€Œæ©Ÿèƒ½ãƒªã‚¯ã‚¨ã‚¹ãƒˆã€ã€ã¾ãŸã¯ã€Œè³ªå•ã€ã«åˆ†é¡žã—ã€ãƒã‚±ãƒƒãƒˆãƒ¬ã‚³ãƒ¼ãƒ‰ã«ãƒ©ãƒ™ãƒ«ã‚’ä¿å˜ã—ã¦ãã ã•ã„。"},"generateImage":{"name":"ç”»åƒç”Ÿæˆ","rowDescription":"詳細ãªãƒ†ã‚ストプãƒãƒ³ãƒ—トã‹ã‚‰ç”»åƒã‚’作æˆã—ã¾ã™ã€‚生æˆã•れãŸç”»åƒã®URLã‚’è¿”ã—ã¾ã™ã€‚","subtitle":"希望ã™ã‚‹ç”»åƒã‚’説明ã™ã‚‹ãƒ†ã‚ストプãƒãƒ³ãƒ—トをæä¾›ã™ã‚‹ã ã‘ã§ã€ç”Ÿæˆã•れãŸç”»åƒã®URLãŒè¿”ã•れã¾ã™ã€‚","longDescription":"アプリ内ã®ãƒ†ã‚ストプãƒãƒ³ãƒ—トやフãƒãƒ¼ã‹ã‚‰AIを使用ã—ã¦ç”»åƒã‚’生æˆã—ã¾ã™ã€‚ã“ã®ã‚¤ãƒ³ãƒ†ã‚°ãƒ¬ãƒ¼ã‚·ãƒ§ãƒ³ã«ã‚ˆã‚Šã€å¤–部ã®ç”»åƒãƒ—ãƒãƒã‚¤ãƒ€ãƒ¼ã«æŽ¥ç¶šã™ã‚‹ã“ã¨ãªãã€ã‚«ãƒãƒ¼ç”»åƒã€ã‚µãƒ ãƒã‚¤ãƒ«ã€ã‚¢ãƒã‚¿ãƒ¼ã€è£½å“プレースホルダーã€ã¾ãŸã¯ã‚·ãƒ³ãƒ—ルãªãƒžãƒ¼ã‚±ãƒ†ã‚£ãƒ³ã‚°ãƒ“ジュアルをオンデマンドã§ä½œæˆã§ãã¾ã™ã€‚","examplePrompt0":"写真ãªã—ã§æ–°è£½å“ãŒè¿½åŠ ã•れãŸã¨ãã€ç”»åƒç”Ÿæˆã‚’使用ã—ã¦ãƒ‡ãƒ•ォルトã®è£½å“ç”»åƒã‚’作æˆã—ã¦ãã ã•ã„。","examplePrompt1":"ユーザーãŒçŸã„説明を入力ã™ã‚‹ã¨ã€ç”»åƒç”ŸæˆãŒã‚«ãƒãƒ¼ç”»åƒURLã‚’è¿”ã—ã€æŠ•ç¨¿ã«ä¿å˜ã•ã‚Œã‚‹æ©Ÿèƒ½ã‚’è¿½åŠ ã—ã¦ãã ã•ã„。","examplePrompt2":"ç”»åƒç”Ÿæˆã‚’使用ã—ã¦ã€ãŠæ°—ã«å…¥ã‚Šã®è‰²ã‚„テーマã«åŸºã¥ã„ã¦æ–°è¦ãƒ¦ãƒ¼ã‚¶ãƒ¼ã®ã‚¢ãƒã‚¿ãƒ¼ç”»åƒã‚’生æˆã™ã‚‹ãƒ•ãƒãƒ¼ã‚’作æˆã—ã¦ãã ã•ã„。"},"extractData":{"name":"アップãƒãƒ¼ãƒ‰ãƒ•ァイルã‹ã‚‰ãƒ‡ãƒ¼ã‚¿æŠ½å‡º","rowDescription":"JSONスã‚ーマを使用ã—ã¦ã€ã‚¢ãƒƒãƒ—ãƒãƒ¼ãƒ‰ã•れãŸãƒ•ァイル(CSVã€PNGã€JPGã€JPEGã€PDF)ã‹ã‚‰æ§‹é€ 化データを抽出ã—ã¾ã™ã€‚データã®ä¸€æ‹¬ã‚¤ãƒ³ãƒãƒ¼ãƒˆã«ä¾¿åˆ©ã§ã™ã€‚","subtitle":"JSONスã‚ーマを使用ã—ã¦ã€ã‚¢ãƒƒãƒ—ãƒãƒ¼ãƒ‰ã•れãŸãƒ•ァイル(CSVã€PNGã€JPGã€JPEGã€PDF)ã‹ã‚‰æ§‹é€ 化データを抽出ã—ã¾ã™ã€‚データã®ä¸€æ‹¬ã‚¤ãƒ³ãƒãƒ¼ãƒˆã«ä¾¿åˆ©ã§ã™ã€‚","longDescription":"アプリã«ã‚¢ãƒƒãƒ—ãƒãƒ¼ãƒ‰ã•れãŸãƒ•ァイルã‹ã‚‰æ§‹é€ åŒ–ãƒ‡ãƒ¼ã‚¿ã‚’è‡ªå‹•çš„ã«æŠ½å‡ºã—ã€ã‚¨ãƒ³ãƒ†ã‚£ãƒ†ã‚£ã«ä¿å˜ã—ã¾ã™ã€‚ã“ã®ã‚¤ãƒ³ãƒ†ã‚°ãƒ¬ãƒ¼ã‚·ãƒ§ãƒ³ã¯ãƒ‰ã‚ュメントやスプレッドシートをèªã¿å–りã€ãã®å†…容をレコードã€ãƒ¬ãƒãƒ¼ãƒˆã€ã¾ãŸã¯è‡ªå‹•化ã§ä½¿ç”¨ã§ãã‚‹æ§‹é€ åŒ–ãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰ã«å¤‰æ›ã—ã¾ã™ã€‚","examplePrompt0":"誰ã‹ãŒPDF請求書をアップãƒãƒ¼ãƒ‰ã—ãŸã‚‰ã€ãƒ‡ãƒ¼ã‚¿æŠ½å‡ºã‚’使用ã—ã¦ã€ãƒ™ãƒ³ãƒ€ãƒ¼ã€åˆè¨ˆé‡‘é¡ã€æ”¯æ‰•期日を請求書エンティティã«å–り込んã§ãã ã•ã„。","examplePrompt1":"データ抽出を使用ã—ã¦é€£çµ¡å…ˆã®CSVã‚’èªã¿å–りã€è¡Œã”ã¨ã«1ã¤ã®é€£çµ¡å…ˆãƒ¬ã‚³ãƒ¼ãƒ‰ã‚’作æˆã—ã¦ãã ã•ã„。","examplePrompt2":"ユーザーãŒé ˜åŽæ›¸ç”»åƒã‚’アップãƒãƒ¼ãƒ‰ã—ãŸå¾Œã€ãƒ‡ãƒ¼ã‚¿æŠ½å‡ºã‚’使用ã—ã¦ã€åº—èˆ—ã€æ—¥ä»˜ã€æ˜Žç´°é …ç›®ã‚’æ§‹é€ åŒ–ã•れãŸçµŒè²»ãƒ¬ã‚³ãƒ¼ãƒ‰ã«æŠ½å‡ºã—ã¦ãã ã•ã„。"},"whatsapp":{"name":"WhatsApp","rowDescription":"エージェントをWhatsAppã«æŽ¥ç¶šã—ã¦ã€ãƒ¦ãƒ¼ã‚¶ãƒ¼ãŒã‚¢ãƒ—リを開ã‹ãšã«æºå¸¯é›»è©±ã‹ã‚‰ç›´æŽ¥ã‚¢ãƒ—リã®ã‚¨ãƒ¼ã‚¸ã‚§ãƒ³ãƒˆã«ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã‚’é€ã‚Œã‚‹ã‚ˆã†ã«ã—ã¾ã™ã€‚","subtitle":"エージェントをWhatsAppã«æŽ¥ç¶šã—ã¦ã€ãƒ¦ãƒ¼ã‚¶ãƒ¼ãŒã‚¢ãƒ—リを開ã‹ãšã«æºå¸¯é›»è©±ã‹ã‚‰ç›´æŽ¥ã‚¢ãƒ—リã®ã‚¨ãƒ¼ã‚¸ã‚§ãƒ³ãƒˆã«ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã‚’é€ã‚Œã‚‹ã‚ˆã†ã«ã—ã¾ã™ã€‚","longDescription":"エージェントをWhatsAppã«æŽ¥ç¶šã—ã¦ã€ãƒ¦ãƒ¼ã‚¶ãƒ¼ãŒæºå¸¯é›»è©±ã‹ã‚‰ç›´æŽ¥ã‚¢ãƒ—リã®ã‚¨ãƒ¼ã‚¸ã‚§ãƒ³ãƒˆã«ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã‚’é€ã‚Œã‚‹ã‚ˆã†ã«ã—ã¾ã™ã€‚ã“ã®ã‚¤ãƒ³ãƒ†ã‚°ãƒ¬ãƒ¼ã‚·ãƒ§ãƒ³ã‚’使用ã—ã¦ã€ã‚¨ãƒ¼ã‚¸ã‚§ãƒ³ãƒˆãŒãƒãƒƒã‚¯ã‚°ãƒ©ã‚¦ãƒ³ãƒ‰ã§ã‚¢ãƒ—リã®ãƒ‡ãƒ¼ã‚¿ã¨ãƒ¯ãƒ¼ã‚¯ãƒ•ãƒãƒ¼ã«ã‚¢ã‚¯ã‚»ã‚¹ã—ãªãŒã‚‰ã€ã‚µãƒãƒ¼ãƒˆã®å‡¦ç†ã€ãƒ‡ãƒ¼ã‚¿ã®åŽé›†ã€ã¾ãŸã¯WhatsApp経由ã§ã®æ›´æ–°æƒ…å ±ã®é€ä¿¡ã‚’行ã„ã¾ã™ã€‚","examplePrompt0":"サãƒãƒ¼ãƒˆã‚¨ãƒ¼ã‚¸ã‚§ãƒ³ãƒˆã‚’WhatsAppã«æŽ¥ç¶šã—ã¦ã€é¡§å®¢ãŒãã“ã§è³ªå•ã§ãã€ã‚¨ãƒ¼ã‚¸ã‚§ãƒ³ãƒˆãŒã‚¢ãƒ—リã®çŸ¥è˜ã‚’使ã£ã¦å›žç”ã™ã‚‹ã‚ˆã†ã«ã—ã¦ãã ã•ã„。","examplePrompt1":"æ–°ã—ã„メッセージãŒé€£çµ¡å…ˆã‚¨ãƒ³ãƒ†ã‚£ãƒ†ã‚£ã®ãƒ¬ã‚³ãƒ¼ãƒ‰ã‚’作æˆã¾ãŸã¯æ›´æ–°ã—ã€ã‚¨ãƒ¼ã‚¸ã‚§ãƒ³ãƒˆãŒè©³ç´°ã‚’確èªã™ã‚‹WhatsAppフãƒãƒ¼ã‚’è¨å®šã—ã¦ãã ã•ã„。","examplePrompt2":"注文ステータスãŒã€Œç™ºé€æ¸ˆã¿ã€ã«å¤‰æ›´ã•れãŸã‚‰ã€ã‚¨ãƒ¼ã‚¸ã‚§ãƒ³ãƒˆãŒè¿½è·¡ãƒªãƒ³ã‚¯ã¨ä¸»è¦ãªæ³¨æ–‡æƒ…å ±ã‚’å«ã‚€WhatsAppメッセージをé€ä¿¡ã™ã‚‹ã‚ˆã†ã«ã—ã¦ãã ã•ã„。"}}}'),r3={title:"アプリユーザーå‘ã‘コãƒã‚¯ã‚¿",description:"アプリユーザーãŒå€‹äººã‚¢ã‚«ã‚¦ãƒ³ãƒˆã‚’リンクã§ãるよã†ã«ã‚³ãƒã‚¯ã‚¿ã‚’è¨å®šã—ã¾ã™ã€‚",manage:"管ç†"},o3={connections:t3,integrations:a3,skillsBanner:n3,oauthConnectors:i3,oauthConnectorsBanner:r3},s3={importSuccessful:"インãƒãƒ¼ãƒˆæˆåŠŸ",importSuccessfulMsg:"{{count}}ä»¶ã®{{name}}レコードをæ£å¸¸ã«ã‚¤ãƒ³ãƒãƒ¼ãƒˆã—ã¾ã—ãŸ",importFailed:"インãƒãƒ¼ãƒˆå¤±æ•—",exportSuccessful:"エクスãƒãƒ¼ãƒˆæˆåŠŸ",exportSuccessfulMsg:"エンティティをCSVã«æ£å¸¸ã«ã‚¨ã‚¯ã‚¹ãƒãƒ¼ãƒˆã—ã¾ã—ãŸ",exportFailed:"エクスãƒãƒ¼ãƒˆå¤±æ•—",moveAllToTrash:"ã™ã¹ã¦ã®ãƒ¬ã‚³ãƒ¼ãƒ‰ã‚’ゴミ箱ã«ç§»å‹•",moveAllToTrashConfirm:"ã™ã¹ã¦ã®ãƒ¬ã‚³ãƒ¼ãƒ‰ã‚’ゴミ箱ã«ç§»å‹•ã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹ï¼Ÿå¾Œã‹ã‚‰å¾©å…ƒã§ãã¾ã™ã€‚",moveToTrash:"ゴミ箱ã«ç§»å‹•",success:"æˆåŠŸ",allMovedToTrash:"ã™ã¹ã¦ã®ãƒ¬ã‚³ãƒ¼ãƒ‰ãŒã‚´ãƒŸç®±ã«ç§»å‹•ã•れã¾ã—ãŸ",error:"エラー",add:"è¿½åŠ ",addItem:"ã‚¢ã‚¤ãƒ†ãƒ ã‚’è¿½åŠ ",import:"インãƒãƒ¼ãƒˆ",export:"エクスãƒãƒ¼ãƒˆ",schema:"スã‚ーマ",recentlyDeleted:"最近削除ã•れãŸã‚‚ã®",deleteAll:"ã™ã¹ã¦å‰Šé™¤",permissions:"権é™",permissionsDesc:"レコードã®èªã¿å–ã‚Šã¨æ›¸ãè¾¼ã¿ã‚’制御ã™ã‚‹ãƒ«ãƒ¼ãƒ«ã‚’作æˆã—ã¾ã™ã€‚複数ã®ãƒ«ãƒ¼ãƒ«ã¯ORè«–ç†ã§çµåˆã•れã¾ã™ã€‚",saveRules:"ルールをä¿å˜",permissionsIssueDetected:"権é™ã®å•é¡ŒãŒæ¤œå‡ºã•れã¾ã—ãŸ",learnMoreAboutPermissions:"権é™ã¨ã‚»ã‚ュリティルールã«ã¤ã„ã¦<a>詳ã—ãã¯ã“ã¡ã‚‰ <icon/></a>",customize:"カスタマイズ",apply:"é©ç”¨",checkingPermissions:"権é™ã®ã‚»ã‚ュリティを確èªä¸",failedCheckPermissions:"権é™ã®ç¢ºèªã«å¤±æ•—ã—ã¾ã—ãŸ",permissionsCheckPassed:"権é™ã®ç¢ºèªã«åˆæ ¼ã—ã¾ã—ãŸ",recommendedRules:"推奨ルール",editRecord:"{{entity}}を編集",addNewRecord:"æ–°ã—ã„{{entity}}ã‚’è¿½åŠ ",test:"テスト",production:"本番",filters:"フィルター",schemaEditor:"スã‚ーマエディター",noRecordsFound:"レコードãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“",getStartedAdding:"最åˆã®ãƒ¬ã‚³ãƒ¼ãƒ‰ã‚’è¿½åŠ ã—ã¦å§‹ã‚ã¾ã—ょã†ã€‚",loadingEntity:"{{entity}}ã‚’èªã¿è¾¼ã¿ä¸..."},l3={production:"本番",test:"テスト"},c3={back:"戻る",trashTitle:"{{entity}}: ゴミ箱",test:"(テスト)",production:"(本番)",trashDescription:`アイテムã®è¡¨ç¤ºã€å¾©å…ƒã€å®Œå…¨å‰Šé™¤ãŒã§ãã¾ã™ã€‚
アイテムã¯30日後ã«è‡ªå‹•çš„ã«å®Œå…¨å‰Šé™¤ã•れã¾ã™ã€‚`,permanentlyDelete:"レコードを完全ã«å‰Šé™¤",permanentlyDeleteConfirm:"ã“ã®ãƒ¬ã‚³ãƒ¼ãƒ‰ã‚’完全ã«å‰Šé™¤ã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹ï¼Ÿã“ã®æ“作ã¯å…ƒã«æˆ»ã›ã¾ã›ã‚“。",deletePermanently:"完全ã«å‰Šé™¤",restoreSelected:"é¸æŠžã—ãŸãƒ¬ã‚³ãƒ¼ãƒ‰ã‚’復元",restoreSelectedConfirm:"{{count}}ä»¶ã®é¸æŠžã—ãŸãƒ¬ã‚³ãƒ¼ãƒ‰ã‚’復元ã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹ï¼Ÿ",restore:"復元",restoreAll:"ã™ã¹ã¦ã®ãƒ¬ã‚³ãƒ¼ãƒ‰ã‚’復元",restoreAllConfirm:"ゴミ箱内ã®ã™ã¹ã¦ã®ãƒ¬ã‚³ãƒ¼ãƒ‰ã‚’復元ã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹ï¼Ÿ",restoreAllBtn:"ã™ã¹ã¦å¾©å…ƒ",deletedDate:"削除日",actions:"æ“作",failedToLoad:"削除ã•れãŸãƒ¬ã‚³ãƒ¼ãƒ‰ã®èªã¿è¾¼ã¿ã«å¤±æ•—ã—ã¾ã—ãŸ",tryAgain:"å†è©¦è¡Œ",loadingDeleted:"削除ã•れãŸãƒ¬ã‚³ãƒ¼ãƒ‰ã‚’èªã¿è¾¼ã¿ä¸...",noDeletedRecords:"削除ã•れãŸãƒ¬ã‚³ãƒ¼ãƒ‰ãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“",restoreCount:"{{count}}件を復元",restoring:"復元ä¸..."},d3={data:s3,toolbar:l3,trash:c3},u3={title:"ドメイン",subtitle:"ドメインã®è³¼å…¥ã€æŽ¥ç¶šã€ç®¡ç†ã€‚",learnMore:"詳細を見る",expired:"{{days}}æ—¥å‰ã«æœŸé™åˆ‡ã‚Œ",expiresIn:"ã‚ã¨{{days}}æ—¥ã§æœŸé™åˆ‡ã‚Œ",lastChecked:"最終確èª: {{time}}",domainLinked:"ドメインãŒãƒªãƒ³ã‚¯ã•れã¾ã—ãŸ",domainLinkedMsg:"ドメインãŒãƒ—ãƒã‚¸ã‚§ã‚¯ãƒˆã«ãƒªãƒ³ã‚¯ã•れã¾ã—ãŸ",errorLinkingDomain:"ドメインã®ãƒªãƒ³ã‚¯ã‚¨ãƒ©ãƒ¼",linking:"リンクä¸...",linkDomain:"ドメインをリンク",checkStatus:"ステータスを確èª",checking:"確èªä¸...",verifyDomain:"検証",verifying:"検証ä¸...",unlinkDomain:"ドメインã®ãƒªãƒ³ã‚¯è§£é™¤",unlinking:"リンク解除ä¸...",unlinked:"リンク解除済ã¿",domainActive:"ドメインアクティブ",waitingDns:"DNS伿’ã‚’å¾…ã£ã¦ã„ã¾ã™",verified:"検証済ã¿",error:"エラー",pending:"ä¿ç•™ä¸",domainUnlinked:"ドメインã®ãƒªãƒ³ã‚¯ãŒè§£é™¤ã•れã¾ã—ãŸ",domainUnlinkedMsg:"ドメインãŒãƒ—ãƒã‚¸ã‚§ã‚¯ãƒˆã‹ã‚‰ãƒªãƒ³ã‚¯è§£é™¤ã•れã¾ã—ãŸ",errorUnlinkingDomain:"ドメインã®ãƒªãƒ³ã‚¯è§£é™¤ã‚¨ãƒ©ãƒ¼",domainDeleted:"ドメインãŒå‰Šé™¤ã•れã¾ã—ãŸ",errorDeletingDomain:"ドメインã®å‰Šé™¤ã‚¨ãƒ©ãƒ¼",errorCheckingStatus:"ステータスã®ç¢ºèªã‚¨ãƒ©ãƒ¼",verificationInitiated:"検証ãŒé–‹å§‹ã•れã¾ã—ãŸ",checkBackMinutes:"数分後ã«ç¢ºèªã—ã¦ãã ã•ã„",errorVerifyingDomain:"ãƒ‰ãƒ¡ã‚¤ãƒ³ã®æ¤œè¨¼ã‚¨ãƒ©ãƒ¼",deleteDomain:"ドメインを削除",deleteConfirm:"本当ã«å‰Šé™¤ã—ã¾ã™ã‹ï¼Ÿ",deleting:"削除ä¸...",unlinkDialogDescription:`ã“ã®ãƒ‰ãƒ¡ã‚¤ãƒ³ã¯Base44を通ã˜ã¦è³¼å…¥ã•れã¾ã—ãŸã€‚
ドメインリストã«ã¯æ®‹ã‚Šã¾ã™ãŒã€ãƒ—ãƒã‚¸ã‚§ã‚¯ãƒˆã¨ã®æŽ¥ç¶šã¯è§£é™¤ã•れã¾ã™ã€‚`,wantToUseDomain:"ã‚ãªãŸã®ãƒ‰ãƒ¡ã‚¤ãƒ³ã‚’使ã„ãŸã„ã§ã™ã‹ï¼Ÿ",customDomainsAvailable:"カスタムドメインã¯Builderプラン以上ã§ã”利用ã„ãŸã ã‘ã¾ã™ã€‚<br/>アップグレードã—ã¦ãƒ‰ãƒ¡ã‚¤ãƒ³ã‚’ã“ã®ã‚¢ãƒ—ãƒªã«æŽ¥ç¶šã—ã¦ãã ã•ã„。",viewPlans:"プランを見る",getNewDomain:"æ–°ã—ã„ドメインをå–å¾—",getNewDomainDescription:"独自ã®ãƒ‰ãƒ¡ã‚¤ãƒ³ã§ã‚¢ãƒ—リをプãƒãƒ•ェッショナルã«è¦‹ã›ã¾ã—ょã†ã€‚",suggestedForApp:"ã‚ãªãŸã®ã‚¢ãƒ—リã«ãŠã™ã™ã‚: <bold>{{domain}}</bold>",suggestedForApp_prefix:"ã‚ãªãŸã®ã‚¢ãƒ—リã«ãŠã™ã™ã‚:",buyNewDomain:"æ–°ã—ã„ドメインを購入",buyAnother:"別ã®ãƒ‰ãƒ¡ã‚¤ãƒ³ã‚’購入",buyThisDomain:"ã“ã®ãƒ‰ãƒ¡ã‚¤ãƒ³ã‚’購入",orConnectExisting:"ã¾ãŸã¯æ—¢ã«ãŠæŒã¡ã®ãƒ‰ãƒ¡ã‚¤ãƒ³ã‚’接続",connectExistingDomain:"æ—¢å˜ã®ãƒ‰ãƒ¡ã‚¤ãƒ³ã‚’接続",getYourCustomDomain:"カスタムドメインをå–å¾—",upgradeDescription:"カスタムドメインã¯Builderプラン以上ã§ã”利用ã„ãŸã ã‘ã¾ã™ã€‚",upgradeYourPlan:"プランをアップグレード",processing:"処ç†ä¸...",loading:"èªã¿è¾¼ã¿ä¸...",domainLimitReached:"ドメイン制é™ã«é”ã—ã¾ã—ãŸ",domainLimitMsg:`ã“ã®ã‚¢ãƒ—ãƒªã®æœ€å¤§{{max}}ドメインã«é”ã—ã¾ã—ãŸï¼ˆ{{current}}/{{max}})。
æ–°ã—ã„ãƒ‰ãƒ¡ã‚¤ãƒ³ã‚’è¿½åŠ ã™ã‚‹å‰ã«ã„ãã¤ã‹ã®ãƒ‰ãƒ¡ã‚¤ãƒ³ã‚’削除ã—ã¦ãã ã•ã„。`,noCustomDomainYet:"カスタムドメインã¯ã¾ã 接続ã•れã¦ã„ã¾ã›ã‚“",connectDescription:"Base44アプリを独自ã®ãƒ‰ãƒ¡ã‚¤ãƒ³ã«æŽ¥ç¶šã—ã¦ã€ãƒ–ランドをå‰é¢ã«å‡ºã—ã€ã‚¢ãƒ—リを見ã¤ã‘ã‚„ã™ã共有ã—ã‚„ã™ãã—ã¾ã—ょã†ã€‚",buyDomain:"ドメインを購入",neverExpires:"無期é™",editUrl:"URLを編集",domainPurchased:"ドメインを購入ã—ã¾ã—ãŸï¼",domainPurchasedMsg:"ドメイン{{domain}}ã®è³¼å…¥ã«æˆåŠŸã—ã¾ã—ãŸã€‚ドメインリストã«è¡¨ç¤ºã•れるã¾ã§ãŠå¾…ã¡ãã ã•ã„...",domainPurchaseFailed:"ドメインã®è³¼å…¥ã«å¤±æ•—ã—ã¾ã—ãŸ",purchaseFailedMsg:"{{domain}}ã®è³¼å…¥ã«å¤±æ•—ã—ã¾ã—ãŸã€‚",domainLimitReachedToast:"ドメイン制é™ã«é”ã—ã¾ã—ãŸ",domainLimitToastMsg:"アプリã”ã¨ã«æœ€å¤§{{max}}ドメインã¾ã§ã§ã™ã€‚ã¾ãšã„ãã¤ã‹ã®ãƒ‰ãƒ¡ã‚¤ãƒ³ã‚’削除ã—ã¦ãã ã•ã„。",domainAddedSuccessfully:"ãƒ‰ãƒ¡ã‚¤ãƒ³ãŒæ£å¸¸ã«è¿½åŠ ã•れã¾ã—ãŸã€‚",verifyToComplete:"セットアップを完了ã™ã‚‹ãŸã‚ã«ãƒ‰ãƒ¡ã‚¤ãƒ³ã‚’検証ã—ã¦ãã ã•ã„。",failedToConnect:"ãƒ‰ãƒ¡ã‚¤ãƒ³ã®æŽ¥ç¶šã«å¤±æ•—ã—ã¾ã—ãŸ",connectYourDomain:"接続",builtInDomain:"組ã¿è¾¼ã¿URL",customDomains:"カスタムドメイン",adminCanAdd:"管ç†è€…: ä»»æ„ã®ãƒ‰ãƒ¡ã‚¤ãƒ³ã‚’è¿½åŠ å¯èƒ½",domainDisabled:"ドメイン無効化",domainEnabled:"ドメイン有効化",domainDisabledMsg:"ドメインãŒç„¡åŠ¹åŒ–ã•れã€ãƒˆãƒ©ãƒ•ィックã¯é…ä¿¡ã•れãªããªã‚Šã¾ã™ã€‚",domainEnabledMsg:"ドメインãŒå†æœ‰åŠ¹åŒ–ã•れã€ãƒˆãƒ©ãƒ•ィックã®é…ä¿¡ãŒå†é–‹ã•れã¾ã™ã€‚",errorTogglingDomain:"ドメインã®åˆ‡ã‚Šæ›¿ãˆã‚¨ãƒ©ãƒ¼",disabledBadge:"無効",enableDomain:"有効化",disableDomain:"無効化",enableDomainTitle:"ドメインを有効化(管ç†è€…)",disableDomainTitle:"ドメインを無効化(管ç†è€…)",errorFetchingDomains:"ドメインã®å–得エラー",cancel:"ã‚ャンセル",cannotPurchase:"ドメインを購入ã§ãã¾ã›ã‚“",domainPurchaseDisabled:"ドメインã®è³¼å…¥ã¯ç¾åœ¨ç„¡åйã«ãªã£ã¦ã„ã¾ã™",entriNotReady:"Entriã®æº–å‚™ãŒã¾ã ã§ãã¦ã„ã¾ã›ã‚“。ã—ã°ã‚‰ãã—ã¦ã‹ã‚‰å†åº¦ãŠè©¦ã—ãã ã•ã„。",errorPurchasingDomain:"ドメインã®è³¼å…¥ã‚¨ãƒ©ãƒ¼",loadingEntri:"Entriã‚’èªã¿è¾¼ã¿ä¸...",addNewDomain:"æ–°ã—ã„ãƒ‰ãƒ¡ã‚¤ãƒ³ã‚’è¿½åŠ ",enterDomainFormat:"下ã«ãƒ‰ãƒ¡ã‚¤ãƒ³åを入力ã—ã¦ãã ã•ã„。形å¼: app.example.com",enterDomainPlaceholder:"ドメインを入力(例: app.example.com)",invalidDomain:`有効ãªãƒ‰ãƒ¡ã‚¤ãƒ³ã§ã¯ã‚りã¾ã›ã‚“。
有効ãªãƒ‰ãƒ¡ã‚¤ãƒ³ã‚’入力ã—ã¦ãã ã•ã„(例: example.com ã¾ãŸã¯ app.example.com)。`,domainAlreadyConnected:"ã“ã®ãƒ‰ãƒ¡ã‚¤ãƒ³ã¯ã™ã§ã«ã‚¢ãƒ—ãƒªã«æŽ¥ç¶šã•れã¦ã„ã¾ã™ã€‚",configureDnsAtRegister:"レジストラã§DNSã‚’è¨å®š",addDomain:"ãƒ‰ãƒ¡ã‚¤ãƒ³ã‚’è¿½åŠ ",adding:"è¿½åŠ ä¸...",domainConnectionNeeded:"ãƒ‰ãƒ¡ã‚¤ãƒ³ã®æŽ¥ç¶šãŒå¿…è¦ã§ã™",retryFromEmailSettings:"メールドメインè¨å®šã‹ã‚‰å†è©¦è¡Œã—ã¦ãã ã•ã„。",emailDomainSubmitted:"メールドメインãŒé€ä¿¡ã•れã¾ã—ãŸã€‚",addDnsRecords:"ドメインプãƒãƒã‚¤ãƒ€ãƒ¼ã«DNSãƒ¬ã‚³ãƒ¼ãƒ‰ã‚’è¿½åŠ ã—ã¦ãã ã•ã„。",verificationMayTake48h:"検証ã«ã¯æœ€å¤§48時間ã‹ã‹ã‚‹å ´åˆãŒã‚りã¾ã™ã€‚",senderDetailsUpdated:"é€ä¿¡è€…æƒ…å ±ãŒæ›´æ–°ã•れã¾ã—ãŸã€‚",editSenderDetails:"é€ä¿¡è€…æƒ…å ±ã‚’ç·¨é›†",setSenderDetails:"é€ä¿¡è€…æƒ…å ±ã‚’è¨å®š",saveChanges:"変更をä¿å˜",connectDomain:"ドメインを接続",saving:"ä¿å˜ä¸...",connecting:"接続ä¸...",usersWillGetEmails:"ユーザーã¯ã“ã®é€ä¿¡è€…æƒ…å ±ã‹ã‚‰ãƒ¡ãƒ¼ãƒ«ã‚’å—ã‘å–りã¾ã™ã€‚",senderName:"é€ä¿¡è€…å",customAddress:"カスタムアドレス",noReply:"no-reply",noReplyEmailAddress:"no-reply@base44-apps.com",domain:"ドメイン",copyToClipboard:"クリップボードã«ã‚³ãƒ”ー",addCnameRecord:"CNAMEãƒ¬ã‚³ãƒ¼ãƒ‰ã‚’è¿½åŠ : ",wwwToDomain:"www → base44.onrender.com",addAnameRecord:"ANAME/ALIASãƒ¬ã‚³ãƒ¼ãƒ‰ã‚’è¿½åŠ : ",emptyOrAtDomain:"空ã¾ãŸã¯@ → base44.onrender.com",ifNoAnameSupport:"DNSプãƒãƒã‚¤ãƒ€ãƒ¼ãŒANAME/ALIASã«å¯¾å¿œã—ã¦ã„ãªã„å ´åˆã¯ã€Aレコードを使用ã—ã¦ãã ã•ã„:",aRecordIp:"@ → 216.24.57.1",removeAaaaRecords:"DNSè¨å®šä¸ã¯ãƒ‰ãƒ¡ã‚¤ãƒ³ã‹ã‚‰AAAAレコードを削除ã—ã¦ãã ã•ã„。AAAAレコードã¯IPv6アドレスã«ãƒžãƒƒãƒ”ングã•れã¾ã™ãŒã€Base44ã¯IPv4を使用ã—ã¦ã„ã¾ã™ã€‚ã“れらã®ãƒ¬ã‚³ãƒ¼ãƒ‰ã¯ã‚«ã‚¹ã‚¿ãƒ ドメインã§äºˆæœŸã—ãªã„動作を引ãèµ·ã“ã™å¯èƒ½æ€§ãŒã‚りã¾ã™ã€‚",dnsChangesNote:"DNSãƒ¬ã‚³ãƒ¼ãƒ‰ã‚’è¿½åŠ ã—ãŸå¾Œã€ã‚¤ãƒ³ã‚¿ãƒ¼ãƒãƒƒãƒˆå…¨ä½“ã«å¤‰æ›´ãŒå®Œå…¨ã«ä¼æ’ã™ã‚‹ã¾ã§æ™‚é–“ãŒã‹ã‹ã‚‹å ´åˆãŒã‚りã¾ã™ã€‚ã“ã®é–“ã€ãƒ‰ãƒ¡ã‚¤ãƒ³ãŒæ£ã—ãæ©Ÿèƒ½ã—ãªã„å¯èƒ½æ€§ãŒã‚りã¾ã™ã€‚",addDnsRecordsFor:"1. ドメインプãƒãƒã‚¤ãƒ€ãƒ¼ã«ä»¥ä¸‹ã®DNSãƒ¬ã‚³ãƒ¼ãƒ‰ã‚’è¿½åŠ ã—ã¦ãã ã•ã„: ",type:"種類",nameColumn:"åå‰",hostColumn:"ホスト",tabAnameAlias:"ANAME/ALIAS",tabARecord:"Aレコード",addRecordsStepIntro:"プãƒãƒã‚¤ãƒ€ãƒ¼ã®ãƒ€ãƒƒã‚·ãƒ¥ãƒœãƒ¼ãƒ‰ã§æ¬¡ã®ãƒ¬ã‚³ãƒ¼ãƒ‰ã‚’è¿½åŠ ã—ã¦ã‚»ãƒƒãƒˆã‚¢ãƒƒãƒ—を完了ã—ã¦ãã ã•ã„。",removeAaaaShort:"AAAA(IPv6ï¼‰ãƒ¬ã‚³ãƒ¼ãƒ‰ã¯æŽ¥ç¶šã‚’å¦¨ã’ã‚‹ã“ã¨ãŒã‚ã‚‹ãŸã‚ã€å¿…ãšå‰Šé™¤ã—ã¦ãã ã•ã„。",customDomainStep2Verify:"プãƒãƒã‚¤ãƒ€ãƒ¼ã®ãƒ€ãƒƒã‚·ãƒ¥ãƒœãƒ¼ãƒ‰ã§ãƒ¬ã‚³ãƒ¼ãƒ‰ã‚’ã™ã¹ã¦æ›´æ–°ã—ãŸã‚‰ã€ã€Œ<bold>ドメインを検証</bold>ã€ã‚’クリックã—ã¦ãã ã•ã„。DNSã®å¤‰æ›´ãŒåæ˜ ã•れるã¾ã§æœ€å¤§48〜78時間ã‹ã‹ã‚‹å ´åˆãŒã‚りã¾ã™ã€‚",closeModal:"é–‰ã˜ã‚‹",verifyDomainButton:"ドメインを検証",dnsTargetFallback:"base44.onrender.com",value:"値",onceConfiguredVerify:"2. è¨å®šãŒå®Œäº†ã—ãŸã‚‰ã€ãƒ¡ãƒ¼ãƒ«ãƒ‰ãƒ¡ã‚¤ãƒ³ã‚«ãƒ¼ãƒ‰ã®ã€Œ<bold>検証</bold>ã€ã‚’クリックã—ã¦ã‚»ãƒƒãƒˆã‚¢ãƒƒãƒ—を確èªã—ã¦ãã ã•ã„。DNS変更ã®ä¼æ’ã«ã¯æœ€å¤§48〜78時間ã‹ã‹ã‚‹å ´åˆãŒã‚りã¾ã™ã€‚",emailDnsChangesNote:"DNSãƒ¬ã‚³ãƒ¼ãƒ‰ã‚’è¿½åŠ ã—ãŸå¾Œã€å¤‰æ›´ã®ä¼æ’ã«ã¯æœ€å¤§48時間ã‹ã‹ã‚‹å ´åˆãŒã‚りã¾ã™ã€‚ã“ã®é–“ã€ãƒ¡ãƒ¼ãƒ«ã¯ç¾åœ¨ã®ãƒ¡ãƒ¼ãƒ«ã‚¢ãƒ‰ãƒ¬ã‚¹ã‹ã‚‰é€ä¿¡ã•れã¾ã™ã€‚",configureDnsForEmail:"メールドメインã®DNSã‚’è¨å®š",connectDomainDns:"DNSプãƒãƒã‚¤ãƒ€ãƒ¼ã‚’通ã˜ã¦ãƒ‰ãƒ¡ã‚¤ãƒ³ã‚’接続",followInstructions:"ä»¥ä¸‹ã®æ‰‹é †ã«å¾“ã£ã¦DNSレコードをè¨å®šã—ã¦ãã ã•ã„。",addRecordsInProvider:"プãƒãƒã‚¤ãƒ€ãƒ¼ã®ãƒ€ãƒƒã‚·ãƒ¥ãƒœãƒ¼ãƒ‰ã«ã“れらã®ãƒ¬ã‚³ãƒ¼ãƒ‰ã‚’è¿½åŠ ã—ã¦ã‚»ãƒƒãƒˆã‚¢ãƒƒãƒ—を完了ã—ã¦ãã ã•ã„。",done:"完了",needHelp:"ヘルプãŒå¿…è¦ã§ã™ã‹ï¼Ÿãƒã‚±ãƒƒãƒˆã‚’作æˆã—ã¦ãã ã•ã„: ",supportSystem:"サãƒãƒ¼ãƒˆã‚·ã‚¹ãƒ†ãƒ ",urlUpdated:"URLãŒæ›´æ–°ã•れã¾ã—ãŸ",customUrlRemoved:"カスタムURLãŒå‰Šé™¤ã•れã¾ã—ãŸã€‚ã‚¢ãƒ—ãƒªã¯æ¬¡ã®URLã§åˆ©ç”¨å¯èƒ½ã§ã™: {{url}}",appAvailableAt:"ã‚¢ãƒ—ãƒªã¯æ¬¡ã®URLã§åˆ©ç”¨å¯èƒ½ã§ã™: {{url}}",urlAlreadyTaken:"ã“ã®URLã¯æ—¢ã«ä½¿ç”¨ã•れã¦ã„ã¾ã™ã€‚以下ã®å€™è£œã‹ã‚‰é¸æŠžã™ã‚‹ã‹ã€åˆ¥ã®URLを入力ã—ã¦ãã ã•ã„。",urlAlreadyTakenNoSuggestions:"ã“ã®URLã¯æ—¢ã«ä½¿ç”¨ã•れã¦ã„ã¾ã™ã€‚別ã®URLã‚’ãŠè©¦ã—ãã ã•ã„。",suggestedAlternatives:"利用å¯èƒ½ãªå€™è£œ:",urlReserved:"ã“ã®URLã¯äºˆç´„済ã¿ã§ã™ã€‚別ã®URLã‚’ãŠè©¦ã—ãã ã•ã„。",urlInvalid:"ã“ã®URLã¯ç„¡åйã§ã™ã€‚別ã®URLã‚’ãŠè©¦ã—ãã ã•ã„。",slugInvalidClient:"ã“ã®URLã¯ç„¡åйã§ã™ã€‚å°æ–‡å—ã®è‹±å—ã€æ•°å—ã€ãƒã‚¤ãƒ•ンã®ã¿ä½¿ç”¨ã§ãã¾ã™ã€‚",slugResetToDefault:"スラグãŒãƒ‡ãƒ•ォルトã«ãƒªã‚»ãƒƒãƒˆã•れã¾ã—ãŸ",errorResettingSlug:"スラグã®ãƒªã‚»ãƒƒãƒˆã‚¨ãƒ©ãƒ¼",failedResetSlug:"デフォルトã®ã‚¹ãƒ©ã‚°ã¸ã®ãƒªã‚»ãƒƒãƒˆã«å¤±æ•—ã—ã¾ã—ãŸ",editUrlTitle:"URLを編集",builtInDomainLabel:"Base44組ã¿è¾¼ã¿URL",resetToDefault:"デフォルトã«ãƒªã‚»ãƒƒãƒˆ",urlEditingRequiresPlan:"URLã®ç·¨é›†ã«ã¯ã‚¹ã‚¿ãƒ¼ã‚¿ãƒ¼ãƒ—ランãŒå¿…è¦ã§ã™ã€‚",upgradeToPremium:"プレミアムã«ã‚¢ãƒƒãƒ—グレード",changing:"変更ä¸...",change:"変更",emailDomain:"メールドメイン",sendingFromDefault:"デフォルトドメインã‹ã‚‰ã®é€ä¿¡ã¯1通ã‚ãŸã‚Š1インテグレーションクレジットã‹ã‹ã‚Šã¾ã™ã€‚カスタムドメインã®ä½¿ç”¨ã¯2インテグレーションクレジットã‹ã‹ã‚Šã¾ã™ã€‚",useCustomDomain:"カスタムドメインを使用",sendingFrom:"é€ä¿¡è€…å: {{name}}",connectDomainForCustom:"カスタムé€ä¿¡è€…アドレスを使用ã™ã‚‹ã«ã¯ãƒ‰ãƒ¡ã‚¤ãƒ³ã‚’接続ã—ã¦ãã ã•ã„。",buyADomain:"ドメインを購入",dnsConfiguration:"DNSè¨å®š",pleaseWaitTryAgain:"ã—ã°ã‚‰ããŠå¾…ã¡ã„ãŸã ãã€å†åº¦ãŠè©¦ã—ãã ã•ã„。",dnsConfigFailed:"DNSè¨å®šã«å¤±æ•—ã—ã¾ã—ãŸ",dnsPleaseTryLater:"後ã§ã‚‚ã†ä¸€åº¦ãŠè©¦ã—ãã ã•ã„。",verificationFailed:"検証ã«å¤±æ•—ã—ã¾ã—ãŸ",dnsNotVerified:"DNSレコードãŒã¾ã 検証ã•れã¦ã„ã¾ã›ã‚“。DNSè¨å®šã‚’確èªã—ã¦å†åº¦ãŠè©¦ã—ãã ã•ã„。",domainVerificationFailed:"ãƒ‰ãƒ¡ã‚¤ãƒ³ã®æ¤œè¨¼ã«å¤±æ•—ã—ã¾ã—ãŸ",couldntVerifyDns:"DNSレコードを検証ã§ãã¾ã›ã‚“ã§ã—ãŸã€‚確èªã—ã¦å†åº¦ãŠè©¦ã—ãã ã•ã„。",completeSetup:"セットアップを完了",opening:"é–‹ã„ã¦ã„ã¾ã™...",cancelling:"ã‚ャンセルä¸...",connectionFailed:"接続ã«å¤±æ•—ã—ã¾ã—ãŸ",retry:"å†è©¦è¡Œ",retrying:"å†è©¦è¡Œä¸...",couldntCompleteDns:"DNSセットアップを完了ã§ãã¾ã›ã‚“ã§ã—ãŸã€‚å†åº¦ãŠè©¦ã—ãã ã•ã„。",couldntConnectEmail:"ドメインをメールプãƒãƒã‚¤ãƒ€ãƒ¼ã«æŽ¥ç¶šã§ãã¾ã›ã‚“ã§ã—ãŸã€‚å†åº¦ãŠè©¦ã—ãã ã•ã„。",pendingVerification:"検証待ã¡",emailBeingVerified:"メールアドレスを検証ä¸ã§ã™ã€‚",makeSureDnsCorrect:"DNSレコードãŒãƒ‰ãƒ¡ã‚¤ãƒ³ãƒ—ãƒãƒã‚¤ãƒ€ãƒ¼ã«æ£ã—ãè¿½åŠ ã•れã¦ã„ã‚‹ã“ã¨ã‚’確èªã—ã¦ãã ã•ã„。",verify:"検証",notConfigured:"未è¨å®š",active:"アクティブ",editSenderDetailsAction:"é€ä¿¡è€…æƒ…å ±ã‚’ç·¨é›†",detachCustomDomain:"カスタムドメインを切æ–",suspended:"åœæ¢ä¸",disabled:"無効",blocked:"ブãƒãƒƒã‚¯ä¸",propagationBlocked:"伿’ãŒãƒ–ãƒãƒƒã‚¯ã•れã¦ã„ã¾ã™",propagationBlockedTooltip:"DNSã®åæ˜ ã«ã¯æ™‚é–“ãŒã‹ã‹ã‚‹ã“ã¨ãŒã‚りã¾ã™ã€‚å•題ãŒç¶šãå ´åˆã¯ã€DNSãƒ¬ã‚³ãƒ¼ãƒ‰ã‚’å¼Šç¤¾ã®æ‰‹é †ã¨ç…§åˆã—ã¦ãã ã•ã„。",pendingConnection:"接続待ã¡",completeSetupToSend:"セットアップを完了ã—ã¦ãƒ‰ãƒ¡ã‚¤ãƒ³ã‹ã‚‰ãƒ¡ãƒ¼ãƒ«ã®é€ä¿¡ã‚’é–‹å§‹ã—ã¦ãã ã•ã„。ç¾åœ¨ã®ãƒ¡ãƒ¼ãƒ«é€ä¿¡å…ƒ: ",emailCurrentlySentFrom:"メールアドレスを検証ä¸ã§ã™ã€‚ç¾åœ¨ã®ãƒ¡ãƒ¼ãƒ«é€ä¿¡å…ƒ: ",dnsNotVerifiedYet:"DNSレコードãŒã¾ã 検証ã•れã¦ã„ã¾ã›ã‚“。æ£ã—ãè¨å®šã•れã¦ã„ã‚‹ã“ã¨ã‚’確èªã—ã¦ã‹ã‚‰ã€Œæ¤œè¨¼ã€ã‚’クリックã—ã¦ãã ã•ã„。",couldntConnectMakeSure:"ドメインをメールプãƒãƒã‚¤ãƒ€ãƒ¼ã«æŽ¥ç¶šã§ãã¾ã›ã‚“ã§ã—ãŸã€‚DNSレコードãŒãƒ‰ãƒ¡ã‚¤ãƒ³ãƒ—ãƒãƒã‚¤ãƒ€ãƒ¼ã«æ£ã—ãè¿½åŠ ã•れã¦ã„ã‚‹ã“ã¨ã‚’確èªã—ã¦å†åº¦ãŠè©¦ã—ãã ã•ã„。",base44Domain:"Base44ドメイン",maxDomainsReached:"ã“ã®ã‚¢ãƒ—ãƒªã®æœ€å¤§{{max}}ドメインã«é”ã—ã¾ã—ãŸ",viewDnsRecords:"DNSレコードを表示",upgradeBannerText:"カスタムドメインã«ã¯Builderプラン以上ãŒå¿…è¦ã§ã™ã€‚アップグレードã—ã¦æœ‰åйã«ã—ã¦ãã ã•ã„。",upgradeToUseDomain:"ã“ã®ãƒ‰ãƒ¡ã‚¤ãƒ³ã‚’使ã†ã«ã¯ãƒ—ランをアップグレードã—ã¦ãã ã•ã„。",emailDomainPurchasedOnly:"メールドメインã®è¨å®šã¯ç¾åœ¨ã€Base44を通ã˜ã¦è³¼å…¥ã—ãŸãƒ‰ãƒ¡ã‚¤ãƒ³ã§ã®ã¿åˆ©ç”¨å¯èƒ½ã§ã™ã€‚",save:"ä¿å˜",urlHint:"å°æ–‡å—ã®è‹±å—ã€æ•°å—ã€ãƒã‚¤ãƒ•ンã®ã¿ä½¿ç”¨ã§ãã¾ã™",copyUrl:"URLをコピー",builtInUrlTooltip:"アプリã¯ã“ã®URLã§å¸¸ã«åˆ©ç”¨å¯èƒ½ã§ã™ã€‚",builderPlanRequired:"ã“ã®æ©Ÿèƒ½ã¯Builderプラン以上ã§åˆ©ç”¨å¯èƒ½ã§ã™ã€‚",somethingWentWrong:"何ã‹å•題ãŒç™ºç”Ÿã—ã¾ã—ãŸ",failedToGetPurchaseConfig:"購入è¨å®šã®å–å¾—ã«å¤±æ•—ã—ã¾ã—ãŸ",errorEnablingEmail:"メール有効化エラー",failedToEnableEmail:"ãƒ¡ãƒ¼ãƒ«ã®æœ‰åŠ¹åŒ–ã«å¤±æ•—ã—ã¾ã—ãŸ",errorUpdatingSenderDetails:"é€ä¿¡è€…æƒ…å ±ã®æ›´æ–°ã‚¨ãƒ©ãƒ¼",failedToUpdateSenderDetails:"é€ä¿¡è€…æƒ…å ±ã®æ›´æ–°ã«å¤±æ•—ã—ã¾ã—ãŸ",errorReplacingDomain:"ドメイン置æ›ã‚¨ãƒ©ãƒ¼",failedToReplaceDomain:"ドメインã®ç½®æ›ã«å¤±æ•—ã—ã¾ã—ãŸ",failedToAddDomain:"ドメインã®è¿½åŠ ã«å¤±æ•—ã—ã¾ã—ãŸ",processingPurchase:"購入を処ç†ä¸...",subscriptionRequired:"サブスクリプションãŒå¿…è¦ã§ã™"},p3={domains:u3},m3={title:"ãƒã‚°ã‚¨ã‚¯ã‚¹ãƒ—ãƒãƒ¼ãƒ©ãƒ¼",subtitle:"アプリケーション全体ã®ã‚·ã‚¹ãƒ†ãƒ ãƒã‚°ã‚’監視。",refresh:"æ›´æ–°",loadingLogs:"ãƒã‚°ã‚’èªã¿è¾¼ã¿ä¸...",pleaseWait:"ãƒã‚°ã‚’å–å¾—ä¸ã§ã™ã€‚ãŠå¾…ã¡ãã ã•ã„",failedToLoad:"ãƒã‚°ã®èªã¿è¾¼ã¿ã«å¤±æ•—ã—ã¾ã—ãŸ",errorFetching:"ãƒã‚°ã®å–å¾—ä¸ã«ã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ã¾ã—ãŸã€‚å†åº¦ãŠè©¦ã—ãã ã•ã„。",noLogsMatchFilters:"フィルターã«ä¸€è‡´ã™ã‚‹ãƒã‚°ãŒã‚りã¾ã›ã‚“",tryAdjusting:"フィルターを調整ã—ã¦ã¿ã¦ãã ã•ã„",noLogsFound:"ãƒã‚°ãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“",logsWillAppear:"アクティビティãŒç™ºç”Ÿã™ã‚‹ã¨ã“ã“ã«ãƒã‚°ãŒè¡¨ç¤ºã•れã¾ã™",tryAgain:"å†è©¦è¡Œ",resetFilters:"フィルターをリセット",details:"詳細",outputs:"出力",errorTab:"エラー",noAdditionalDetails:"è¿½åŠ ã®è©³ç´°æƒ…å ±ã¯ã‚りã¾ã›ã‚“。",clearFilters:"フィルターをクリア",filterByEmail:"メールアドレスã§ãƒ•ィルター...",errorsOnly:"エラーã®ã¿",allEvents:"ã™ã¹ã¦ã®ã‚¤ãƒ™ãƒ³ãƒˆ",typeColumn:"種類",userColumn:"ユーザー",timestamp:"タイムスタンプ"},g3={title:"アナリティクス",publishToCollect:"アプリを公開ã—ã¦ãƒ‡ãƒ¼ã‚¿åŽé›†ã‚’é–‹å§‹ã—ã¾ã—ょã†ã€‚"},h3={title:"APIドã‚ュメント",subtitle:"アプリã®å®Œå…¨ãªAPIリファレンス。OpenAPI仕様を任æ„ã®APIクライアントやドã‚ュメントツールã§ä½¿ç”¨ã§ãã¾ã™ã€‚",downloadSpec:"OpenAPI仕様をダウンãƒãƒ¼ãƒ‰",copyForLLM:"AI用ã«ã‚³ãƒ”ー",copyForLLMTooltip:"AIå‘ã‘Markdownドã‚ュメントをクリップボードã«ã‚³ãƒ”ー",copied:"コピー完了ï¼",codeExamplesIn:"コード例ã®è¨€èªžï¼š",authTitle:"èªè¨¼",authDescription:"ã™ã¹ã¦ã®APIリクエストã«ã¯api_keyヘッダーãŒå¿…è¦ã§ã™ã€‚APIã‚ーã¯ãƒ¦ãƒ¼ã‚¶ãƒ¼ãƒ—ãƒãƒ•ィールã§ç¢ºèªã™ã‚‹ã‹ã€ã‚¢ãƒ—リSDKã®User.me()ã§ãƒ—ãƒã‚°ãƒ©ãƒ çš„ã«å–å¾—ã§ãã¾ã™ã€‚",sdkAuthDescription:"Base44 SDKをインストールã—ã€ã‚¢ãƒ—リIDã§ã‚¯ãƒ©ã‚¤ã‚¢ãƒ³ãƒˆã‚’åˆæœŸåŒ–ã—ã¾ã™ã€‚SDKãŒèªè¨¼ã‚’処ç†ã—ã€ã™ã¹ã¦ã®ã‚¨ãƒ³ãƒ†ã‚£ãƒ†ã‚£æ“作ã¨ãƒãƒƒã‚¯ã‚¨ãƒ³ãƒ‰é–¢æ•°ã®åž‹ä»˜ãメソッドをæä¾›ã—ã¾ã™ã€‚",entitiesTitle:"エンティティエンドãƒã‚¤ãƒ³ãƒˆ",schema:"スã‚ーマ",endpoints:"エンドãƒã‚¤ãƒ³ãƒˆ",copyAll:"ã™ã¹ã¦ã‚³ãƒ”ー",copyEntity:"エンティティをコピー",functionsTitle:"ãƒãƒƒã‚¯ã‚¨ãƒ³ãƒ‰é–¢æ•°",functionsDescription:"デプãƒã‚¤ã•れãŸãƒãƒƒã‚¯ã‚¨ãƒ³ãƒ‰é–¢æ•°ã‚’HTTP経由ã§å‘¼ã³å‡ºã—ã¾ã™ã€‚å„関数ã¯ä»»æ„ã®JSONペイãƒãƒ¼ãƒ‰ã‚’å—ã‘付ã‘ã€é–¢æ•°ã®ãƒ¬ã‚¹ãƒãƒ³ã‚¹ã‚’è¿”ã—ã¾ã™ã€‚",agentTitle:"アプリエージェント",agentDescription:"会話を通ã˜ã¦ã‚¢ãƒ—リã®AIエージェントã¨ã‚„りå–りã—ã¾ã™ã€‚会話を作æˆã—ã€ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã‚’é€ä¿¡ã—ã¦ã€ã‚¨ãƒ¼ã‚¸ã‚§ãƒ³ãƒˆã®å¿œç”ã‚’å—ã‘å–りã¾ã™ã€‚",copy:"コピー",parameters:"パラメーター",loading:"APIドã‚ュメントをèªã¿è¾¼ã¿ä¸...",error:"APIドã‚ュメントã®èªã¿è¾¼ã¿ã«å¤±æ•—ã—ã¾ã—ãŸã€‚ã‚‚ã†ä¸€åº¦ãŠè©¦ã—ãã ã•ã„。"},f3={logs:m3,analytics:g3,api:h3},v3={error:"エラー",appStillLoading:"アプリã¯ã¾ã èªã¿è¾¼ã¿ä¸ã§ã™...åå‰ãŒæ›´æ–°ã•れã¾ã›ã‚“ã§ã—ãŸ",appNameEmpty:"アプリåを空ã«ã™ã‚‹ã“ã¨ã¯ã§ãã¾ã›ã‚“",removedFromFavorites:"ãŠæ°—ã«å…¥ã‚Šã‹ã‚‰å‰Šé™¤",addedToFavorites:"ãŠæ°—ã«å…¥ã‚Šã«è¿½åŠ ",removedDescription:"アプリãŒãŠæ°—ã«å…¥ã‚Šãƒªã‚¹ãƒˆã‹ã‚‰å‰Šé™¤ã•れã¾ã—ãŸ",addedDescription:"アプリãŒãŠæ°—ã«å…¥ã‚Šãƒªã‚¹ãƒˆã«è¿½åŠ ã•れã¾ã—ãŸ",descriptionUpdated:"èª¬æ˜ŽãŒæ›´æ–°ã•れã¾ã—ãŸ",descriptionUpdatedMsg:"アプリã®èª¬æ˜ŽãŒæ£å¸¸ã«æ›´æ–°ã•れã¾ã—ãŸ",failedUpdateDescription:"アプリã®èª¬æ˜Žã®æ›´æ–°ã«å¤±æ•—ã—ã¾ã—ãŸ",openApp:"アプリを開ã",shareApp:"アプリを共有",winFreeCredits:"無料クレジットをç²å¾—ï¼",appVisibility:"アプリã®å…¬é–‹è¨å®š",controlAccess:"アプリケーションã¸ã®ã‚¢ã‚¯ã‚»ã‚¹ã‚’制御ã—ã¾ã™",inviteUsers:"ユーザーを招待",growUserBase:"ä»–ã®ãƒ¦ãƒ¼ã‚¶ãƒ¼ã‚’招待ã—ã¦ãƒ¦ãƒ¼ã‚¶ãƒ¼ãƒ™ãƒ¼ã‚¹ã‚’拡大",copyLink:"リンクをコピー",copied:"コピーã—ã¾ã—ãŸï¼",sendInvites:"招待をé€ä¿¡",paymentsViaStripe:"StripeçµŒç”±ã®æ”¯æ‰•ã„",pendingSetup:"セットアップ待ã¡",completeSetupGuide:"セットアップガイドを完了ã—ã¦å®Ÿéš›ã®æ”¯æ‰•ã„ã‚’å—ã‘付ã‘ã¾ã™",live:"本番",testModeMessage:"ã¾ã テストモードã§ã™ã€‚セットアップを完了ã—ã¦æ”¯æ‰•ã„ã®å—ã‘付ã‘ã‚’é–‹å§‹ã—ã¦ãã ã•ã„。",readyForPayments:"アプリã¯StripeçµŒç”±ã§æ”¯æ‰•ã„ã‚’å—ã‘付ã‘る準備ãŒã§ãã¦ã„ã¾ã™ã€‚",continueSetup:"セットアップを続ã‘ã‚‹",payments:"支払ã„",poweredByWix:"Wixæä¾›",manage:"管ç†",openingWixPayments:"Wix Payments ã‚’é–‹ã„ã¦ã„ã¾ã™...",wixPaymentsErrors:{noUrl:"Wix Payments ã®URLã‚’å–å¾—ã§ãã¾ã›ã‚“ã§ã—ãŸã€‚ã‚‚ã†ä¸€åº¦ãŠè©¦ã—ãã ã•ã„。",fetchFailed:"Wix Payments ã‚’é–‹ã‘ã¾ã›ã‚“ã§ã—ãŸã€‚ã‚‚ã†ä¸€åº¦ãŠè©¦ã—ãã ã•ã„。",invalidRedirect:"Wix Payments ã‚’é–‹ã‘ã¾ã›ã‚“ã§ã—ãŸã€‚ã‚‚ã†ä¸€åº¦ãŠè©¦ã—ãã ã•ã„。"},disconnected:"åˆ‡æ–æ¸ˆã¿",wixPaymentsDashboardError:"Wix Paymentsダッシュボードを開ã‘ã¾ã›ã‚“ã§ã—ãŸ",platformBadge:"プラットフォームãƒãƒƒã‚¸",badgeVisible:"「Edit with Base44ã€ãƒãƒƒã‚¸ã¯ç¾åœ¨ã‚¢ãƒ—リã«è¡¨ç¤ºã•れã¦ã„ã¾ã™ã€‚",hideBadge:"ãƒãƒƒã‚¸ã‚’éžè¡¨ç¤º",editAppNameAccessibilityLabel:"タイトルを編集",editAppDescription:"アプリã®èª¬æ˜Žã‚’編集",descriptionPrompt:"アプリã®ç›®çš„ã¨æ©Ÿèƒ½ã®ç°¡å˜ãªèª¬æ˜Žã‚’入力ã—ã¦ãã ã•ã„。",describeYourApp:"アプリを説明ã—ã¦ãã ã•ã„...",cancel:"ã‚ャンセル",save:"ä¿å˜",created:"ä½œæˆæ—¥: {{time}}"},b3={overview:v3},y3={title:"アプリセã‚ュリティ",subtitle:"行レベルセã‚ュリティãƒãƒªã‚·ãƒ¼ã‚’è¨å®šã—ã¦ã€ã‚¢ãƒ—リã®ãƒ‡ãƒ¼ã‚¿ã¸ã®ã‚¢ã‚¯ã‚»ã‚¹ã‚’制御ã—ã¾ã™",scanIssues:"å•題をスã‚ャン",scanTime:"スã‚ャンã¯é€šå¸¸æ•°åˆ†ã‹ã‹ã‚Šã¾ã™",scanning:"スã‚ャンä¸",startSecurityCheck:"ã‚»ã‚ュリティãƒã‚§ãƒƒã‚¯ã‚’é–‹å§‹",scanResults:"スã‚ãƒ£ãƒ³çµæžœ",rlsRecommendations:"RLSæŽ¨å¥¨äº‹é …",rlsRecommendationsFound:"{{count}}ä»¶ã®RLSæŽ¨å¥¨äº‹é …ãŒè¦‹ã¤ã‹ã‚Šã¾ã—ãŸã€‚",viewRecommendations:"æŽ¨å¥¨äº‹é …ã‚’è¡¨ç¤º",noRlsRecommendations:"RLSæŽ¨å¥¨äº‹é …ã¯ã‚りã¾ã›ã‚“",secrets:"シークレット",exposedSecretsFound:"{{count}}ä»¶ã®å…¬é–‹ã•れãŸã‚·ãƒ¼ã‚¯ãƒ¬ãƒƒãƒˆãŒè¦‹ã¤ã‹ã‚Šã¾ã—ãŸ",noExposedSecrets:"公開ã•れãŸã‚·ãƒ¼ã‚¯ãƒ¬ãƒƒãƒˆã¯ã‚りã¾ã›ã‚“",backendFunctions:"ãƒãƒƒã‚¯ã‚¨ãƒ³ãƒ‰é–¢æ•°",unauthenticatedFunctions:"{{count}}ä»¶ã®æœªèªè¨¼ãƒãƒƒã‚¯ã‚¨ãƒ³ãƒ‰é–¢æ•°ãŒè¦‹ã¤ã‹ã‚Šã¾ã—ãŸ",noUnauthenticatedFunctions:"未èªè¨¼ãƒãƒƒã‚¯ã‚¨ãƒ³ãƒ‰é–¢æ•°ã¯ã‚りã¾ã›ã‚“",dataEntities:"データエンティティ",entitiesCount:"{{count}}個ã®ã‚¨ãƒ³ãƒ†ã‚£ãƒ†ã‚£",scanComplete:"ã‚»ã‚ュリティスã‚ャン完了",reviewFindings:"以下ã®çµæžœã‚’確èªã—ã¦ãã ã•ã„。",scanFailed:"ã‚»ã‚ュリティスã‚ャンã«å¤±æ•—ã—ã¾ã—ãŸ",ruleSaved:"{{entity}}ã®ãƒ«ãƒ¼ãƒ«ãŒä¿å˜ã•れã¾ã—ãŸ",ruleSavedMsg:"推奨ルールãŒä¿å˜ã•れã¾ã—ãŸã€‚",failedToSaveRule:"ルールã®ä¿å˜ã«å¤±æ•—ã—ã¾ã—ãŸ",createAccess:"作æˆã‚¢ã‚¯ã‚»ã‚¹",readAccess:"èªã¿å–りアクセス",updateAccess:"更新アクセス",deleteAccess:"削除アクセス",removeAllRules:"ã™ã¹ã¦ã®ã‚»ã‚ュリティルールを削除",removeAllRulesConfirm:"ã“ã®ã‚¨ãƒ³ãƒ†ã‚£ãƒ†ã‚£ã®ã™ã¹ã¦ã®ã‚»ã‚ュリティルールãŒå‰Šé™¤ã•れã€ã™ã¹ã¦ã®ãƒ¦ãƒ¼ã‚¶ãƒ¼ãŒã™ã¹ã¦ã®ãƒ¬ã‚³ãƒ¼ãƒ‰ã«ã‚¢ã‚¯ã‚»ã‚¹ã§ãるよã†ã«ãªã‚Šã¾ã™ã€‚続行ã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹ï¼Ÿ",removeAllRulesBtn:"ã™ã¹ã¦ã®ãƒ«ãƒ¼ãƒ«ã‚’削除",securityRules:"ã‚»ã‚ュリティルール: {{entity}}",securityRulesTitle:"ã‚»ã‚ュリティルール",securityRulesDesc:"レコードã®èªã¿å–ã‚Šã¨æ›¸ãè¾¼ã¿ã‚’制御ã™ã‚‹ãƒ«ãƒ¼ãƒ«ã‚’作æˆã—ã¾ã™ã€‚複数ã®ãƒ«ãƒ¼ãƒ«ã¯ORè«–ç†ã§çµåˆã•れã¾ã™ã€‚",publicAccess:"パブリックアクセス",publicAccessDesc:"ç¾åœ¨ã€ã™ã¹ã¦ã®ãƒ¦ãƒ¼ã‚¶ãƒ¼ãŒã“ã®ã‚¨ãƒ³ãƒ†ã‚£ãƒ†ã‚£ã®ã™ã¹ã¦ã®ãƒ¬ã‚³ãƒ¼ãƒ‰ã«ã‚¢ã‚¯ã‚»ã‚¹ã§ãã¾ã™ã€‚アクセス制é™ã¯ã‚りã¾ã›ã‚“。",createAccessRules:"アクセスルールを作æˆ",create:"作æˆ",read:"èªã¿å–り",update:"æ›´æ–°",deleteAction:"削除",crudRules:"{{crud}}ルール",addRule:"ãƒ«ãƒ¼ãƒ«ã‚’è¿½åŠ ",generatedRules:"生æˆã•れãŸ{{crud}}ルール(JSON)",saveSecurityRules:"ã‚»ã‚ュリティルールをä¿å˜",crudAccessRules:"{{crud}}アクセスルール",configurePermissions:"å„ã‚¢ã‚¯ã‚·ãƒ§ãƒ³ã®æ¨©é™ã‚’è¨å®š",generatedJsonPreview:"生æˆã•れãŸJSON(プレビュー)",saveRules:"ルールをä¿å˜",rlsRecommendation:"RLSæŽ¨å¥¨äº‹é …",dismiss:"é–‰ã˜ã‚‹",applyFixes:"ä¿®æ£ã‚’é©ç”¨",restricted:"制é™ã‚り",public:"パブリック",fullAccess:"ã™ã¹ã¦ã®ãƒ¦ãƒ¼ã‚¶ãƒ¼ãŒãƒ•ルアクセスå¯èƒ½",createLabel:"作æˆ:",readLabel:"èªã¿å–り:",updateLabel:"æ›´æ–°:",deleteLabel:"削除:",noRestrictions:"制é™ãªã—",allUsersCanAccess:"ã™ã¹ã¦ã®ãƒ¦ãƒ¼ã‚¶ãƒ¼ãŒãƒ¬ã‚³ãƒ¼ãƒ‰ã«ã‚¢ã‚¯ã‚»ã‚¹å¯èƒ½",creatorOnly:"作æˆè€…ã®ã¿",creatorOnlyDesc:"ユーザーã¯è‡ªåˆ†ãŒä½œæˆã—ãŸãƒ¬ã‚³ãƒ¼ãƒ‰ã®ã¿ã‚¢ã‚¯ã‚»ã‚¹ã§ãã¾ã™",entityUserComparison:"エンティティ-ユーザーフィールド比較",entityUserComparisonDesc:"ã“ã®ã‚¨ãƒ³ãƒ†ã‚£ãƒ†ã‚£ã®ãƒ•ィールドをユーザープãƒãƒ‘ãƒ†ã‚£ã¨æ¯”較ã—ã¾ã™",entityField:"エンティティフィールド",fieldInEntity:"比較ã™ã‚‹ã‚¨ãƒ³ãƒ†ã‚£ãƒ†ã‚£å†…ã®ãƒ•ィールド",userField:"ユーザーフィールド",fieldFromUser:"比較ã™ã‚‹ãƒ¦ãƒ¼ã‚¶ãƒ¼ã®ãƒ•ィールド",userPropertyCheck:"ユーザープãƒãƒ‘ティãƒã‚§ãƒƒã‚¯",userPropertyCheckDesc:"ユーザープãƒãƒ‘ティãŒç‰¹å®šã®å€¤ã¨ä¸€è‡´ã™ã‚‹ã‹ç¢ºèªã—ã¾ã™",userProperty:"ユーザープãƒãƒ‘ティ",selectUserProperty:"ユーザープãƒãƒ‘ãƒ†ã‚£ã‚’é¸æŠž",userRole:"ユーザーã®å½¹å‰²",userEmail:"ユーザーã®ãƒ¡ãƒ¼ãƒ«ã‚¢ãƒ‰ãƒ¬ã‚¹",fullName:"フルãƒãƒ¼ãƒ ",requiredValue:"å¿…é ˆå€¤",selectRole:"å½¹å‰²ã‚’é¸æŠž",adminRole:"管ç†è€…",userRoleOption:"ユーザー",noRestrictionsLabel:"制é™ãªã—",creatorOnlyLabel:"作æˆè€…ã®ã¿",adminOnlyLabel:"管ç†è€…ã®ã¿",filePath:"ファイル: {{path}}",severityCritical:"é‡å¤§",severityHigh:"高",securityScanLabel:"ã‚»ã‚ュリティスã‚ャン",upToDate:"最新",upToDateTooltip:"å‰å›žã®ãƒã‚§ãƒƒã‚¯ä»¥é™ã€ã‚»ã‚ュリティã«å½±éŸ¿ã™ã‚‹å¤‰æ›´ã¯ã‚りã¾ã›ã‚“",outOfDate:"期é™åˆ‡ã‚Œ",outOfDateTooltip:"å‰å›žã®ãƒã‚§ãƒƒã‚¯ä»¥é™ã€ã‚»ã‚ュリティã«å½±éŸ¿ã™ã‚‹å¤‰æ›´ãŒã‚りã¾ã—ãŸã€‚æ–°ã—ã„ã‚»ã‚ュリティスã‚ャンを実行ã—ã¦ãã ã•ã„。",runSecurityScan:"ã‚»ã‚ュリティスã‚ャンを実行",securityPageTitle:"ã‚»ã‚ュリティ",securityPageSubtitle:"権é™ã¨ã‚»ã‚ュリティルールを管ç†ã—ã¾ã™ã€‚<a>詳ã—ãã¯ã“ã¡ã‚‰ <icon/></a>",issuesDetails:"å•題ã®è©³ç´°",rlsIssuesTitle_one:"{{count}}ä»¶ã®RLSå•題",rlsIssuesTitle_other:"{{count}}ä»¶ã®RLSå•題",rlsIssuesSubtitle:"行レベルセã‚ュリティを有効ã«ã—ã¦ãƒ‡ãƒ¼ã‚¿ã‚’ä¿è·ã—ã¦ãã ã•ã„",exposedSecretsTitle_one:"{{count}}ä»¶ã®å…¬é–‹ã•れãŸã‚·ãƒ¼ã‚¯ãƒ¬ãƒƒãƒˆ",exposedSecretsTitle_other:"{{count}}ä»¶ã®å…¬é–‹ã•れãŸã‚·ãƒ¼ã‚¯ãƒ¬ãƒƒãƒˆ",exposedSecretsSubtitle:"公開ã•れãŸã‚·ãƒ¼ã‚¯ãƒ¬ãƒƒãƒˆã‚’ä¿è·ã—ãƒãƒ¼ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ã—ã¦ã€ã‚¢ãƒ—リケーションã¨ãƒ‡ãƒ¼ã‚¿ã‚’安全ã«ä¿ã¡ã¾ã—ょã†ã€‚",unauthBackendTitle_one:"{{count}}ä»¶ã®æœªèªè¨¼ãƒãƒƒã‚¯ã‚¨ãƒ³ãƒ‰é–¢æ•°",unauthBackendTitle_other:"{{count}}ä»¶ã®æœªèªè¨¼ãƒãƒƒã‚¯ã‚¨ãƒ³ãƒ‰é–¢æ•°",unauthBackendSubtitle:"ãƒãƒƒã‚¯ã‚¨ãƒ³ãƒ‰ã‚¿ã‚¹ã‚¯ã®ã‚¨ãƒ³ãƒ‰ãƒã‚¤ãƒ³ãƒˆã‚’èªè¨¼ã§ä¿è·ã—ã¦ãã ã•ã„。",noIssuesFound:"å•題ã¯è¦‹ã¤ã‹ã‚Šã¾ã›ã‚“ã§ã—ãŸã€‚アプリã®ã‚»ã‚ュリティã¯è‰¯å¥½ã§ã™ãŒã€å®šæœŸçš„ã«ç¢ºèªã—ã¦ä¿è·ã‚’ç¶æŒã—ã¦ãã ã•ã„。",recommendedRulesLabel:"推奨ルール:",fix:"ä¿®æ£",fixAll:"ã™ã¹ã¦ä¿®æ£",missingRlsRules:"{{entity}}ã«RLSルールãŒã‚りã¾ã›ã‚“",customizeSuggestion:"ææ¡ˆã‚’カスタマイズ",goToEntityPage:"エンティティページã¸ç§»å‹•",ruleColumnHeader:"ルール",allUsers:"全ユーザー",fieldComparison:"フィールド比較",noScanTitle:"アプリã®ã‚»ã‚ュリティを確èªã™ã‚‹",noScanDescription:"è¨å®šã‚’見直ã—ã€æ½œåœ¨çš„ãªãƒªã‚¹ã‚¯ã‚’特定ã—ã€ã‚¢ãƒ—リã®ä¿è·ã‚’強化ã™ã‚‹æ–¹æ³•ã‚’å¦ã³ã¾ã—ょã†",checkSecurity:"ã‚»ã‚ュリティを確èª",back:"戻る",cancel:"ã‚ャンセル"},k3={title:"アプリケーションシークレット",secretDeleted:"シークレットãŒå‰Šé™¤ã•れã¾ã—ãŸ",errorDeletingSecret:"シークレットã®å‰Šé™¤ã‚¨ãƒ©ãƒ¼",secretUpdated:"ã‚·ãƒ¼ã‚¯ãƒ¬ãƒƒãƒˆãŒæ›´æ–°ã•れã¾ã—ãŸ",errorUpdatingSecret:"ã‚·ãƒ¼ã‚¯ãƒ¬ãƒƒãƒˆã®æ›´æ–°ã‚¨ãƒ©ãƒ¼",newSecretValue:"æ–°ã—ã„シークレット値",save:"ä¿å˜",cancel:"ã‚ャンセル",addSecret:"ã‚·ãƒ¼ã‚¯ãƒ¬ãƒƒãƒˆã‚’è¿½åŠ ",addNewSecret:"æ–°ã—ã„ã‚·ãƒ¼ã‚¯ãƒ¬ãƒƒãƒˆã‚’è¿½åŠ ",addNewSecretDescription:"シークレットåã¨å€¤ã‚’入力ã—ã¦ãã ã•ã„ã€‚ã‚·ãƒ¼ã‚¯ãƒ¬ãƒƒãƒˆã¯æš—å·åŒ–ã•れã¦å®‰å…¨ã«ä¿å˜ã•れã¾ã™ã€‚",secretName:"シークレットå",secretNamePlaceholder:"シークレットåを入力(例: API_KEY)",secretNameNoSpaces:"シークレットåã«ã‚¹ãƒšãƒ¼ã‚¹ã¯ä½¿ç”¨ã§ãã¾ã›ã‚“。代ã‚りã«ã‚¢ãƒ³ãƒ€ãƒ¼ã‚¹ã‚³ã‚¢ã‚’使用ã—ã¦ãã ã•ã„(例: API_KEY)。",secretValue:"シークレット値",secretValuePlaceholder:"シークレット値を入力",adding:"è¿½åŠ ä¸...",aboutSecretsManagement:"シークレット管ç†ã«ã¤ã„ã¦",secretsDescription:"シークレットã¯APIã‚ーã€ãƒˆãƒ¼ã‚¯ãƒ³ã€ãƒ‘スワードãªã©ã®æ©Ÿå¯†æƒ…å ±ã‚’å«ã‚€ç’°å¢ƒå¤‰æ•°ã§ã™ã€‚æš—å·åŒ–ã—ã¦ä¿å˜ã•れã€å®Ÿè¡Œæ™‚ã«ã‚¢ãƒ—リケーションã«å®‰å…¨ã«æ³¨å…¥ã•れã¾ã™ã€‚",secretsBullet1:"シークレットã¯ãƒãƒƒã‚¯ã‚¨ãƒ³ãƒ‰é–¢æ•°ãŒå¤–部サービスã«ã‚¢ã‚¯ã‚»ã‚¹ã™ã‚‹ãŸã‚ã«ä½¿ç”¨ã•れã¾ã™",secretsBullet2:"ã™ã¹ã¦ã®ã‚·ãƒ¼ã‚¯ãƒ¬ãƒƒãƒˆã¯æš—å·åŒ–ã•れã¦å®‰å…¨ã«ä¿å˜ã•れã¾ã™",secretsBullet3:"アプリケーションã«å¿…è¦ã«å¿œã˜ã¦ã‚·ãƒ¼ã‚¯ãƒ¬ãƒƒãƒˆã®è¿½åŠ ã€æ›´æ–°ã€å‰Šé™¤ãŒã§ãã¾ã™",needHelp:"ヘルプãŒå¿…è¦ã§ã™ã‹ï¼Ÿ",supportSystem:"サãƒãƒ¼ãƒˆãƒã‚±ãƒƒãƒˆã‚’作æˆã™ã‚‹",configuredSecrets:"è¨å®šæ¸ˆã¿ã‚·ãƒ¼ã‚¯ãƒ¬ãƒƒãƒˆ",noSecretsYet:"ã¾ã シークレットãŒè¨å®šã•れã¦ã„ã¾ã›ã‚“。最åˆã®ã‚·ãƒ¼ã‚¯ãƒ¬ãƒƒãƒˆã‚’è¿½åŠ ã—ã¦å§‹ã‚ã¾ã—ょã†ã€‚",secretAddedSuccessfully:"ã‚·ãƒ¼ã‚¯ãƒ¬ãƒƒãƒˆãŒæ£å¸¸ã«è¿½åŠ ã•れã¾ã—ãŸ",errorCreatingSecret:"シークレットã®ä½œæˆã‚¨ãƒ©ãƒ¼",errorFetchingSecrets:"シークレットã®å–得エラー"},w3={security:y3,secrets:k3},A3={mainPage:"メインページ",mainPageDesc:"アプリã®ãƒ‡ãƒ•ォルトランディングページをè¨å®š",selectMainPage:"ãƒ¡ã‚¤ãƒ³ãƒšãƒ¼ã‚¸ã‚’é¸æŠž",appVisibility:"アプリã®å…¬é–‹è¨å®š",controlAccess:"アプリケーションã¸ã®ã‚¢ã‚¯ã‚»ã‚¹ã‚’制御ã—ã¾ã™",platformBadge:"プラットフォームãƒãƒƒã‚¸",platformBadgeDesc:"アプリ上ã®ã€ŒEdit with Base44ã€ãƒãƒƒã‚¸ã®è¡¨ç¤ºãƒ»éžè¡¨ç¤ºã‚’切り替ãˆã¾ã™ã€‚",onlyForPaying:"有料ユーザーã®ã¿åˆ©ç”¨å¯èƒ½ã§ã™ã€‚",upgradeNow:"今ã™ãアップグレード",visible:"表示",hidden:"éžè¡¨ç¤º",hideEntityCreator:"エンティティ作æˆè€…ã‚’éžè¡¨ç¤º",hideEntityCreatorDesc:"アプリã®ãƒ‡ãƒ¼ã‚¿ãƒ†ãƒ¼ãƒ–ルã§å„レコードã®ä½œæˆè€…ã‚’éžè¡¨ç¤ºã«ã—ã¾ã™ã€‚有効ã«ã™ã‚‹ã¨ã€ã€Œä½œæˆè€…ã€ãƒ•ィールドãŒãƒ¦ãƒ¼ã‚¶ãƒ¼ã«è¡¨ç¤ºã•れãªããªã‚Šã¾ã™ã€‚",aiAgents:"AIエージェント",aiAgentsDesc:"Base44ã®AIエージェントインフラを使用ã—ã¦ã‚¢ãƒ—リã«AIエージェントを構築",aiAgentsEnabled:"AIã‚¨ãƒ¼ã‚¸ã‚§ãƒ³ãƒˆãŒæœ‰åйã§ã™",aiAgentsEnabledDesc:"アプリã§Base44ã®AIエージェントインフラãŒåˆ©ç”¨å¯èƒ½ã«ãªã‚Šã¾ã—ãŸã€‚ユーザーã®ã•ã¾ã–ã¾ãªã‚¿ã‚¹ã‚¯ã‚’支æ´ã—ã€è³ªå•ã«ç”ãˆã€ã‚¢ãƒ—リã®ãƒ‡ãƒ¼ã‚¿ã¨å¯¾è©±ã§ãるインテリジェントãªã‚¨ãƒ¼ã‚¸ã‚§ãƒ³ãƒˆã‚’作æˆã§ãã¾ã™ã€‚ãƒãƒ£ãƒƒãƒˆã‚’使用ã—ã¦ã‚¨ãƒ¼ã‚¸ã‚§ãƒ³ãƒˆã‚’構築・è¨å®šã—ã¦ãã ã•ã„。",testData:"テストデータ",testDataDesc:"テストデータを使用ã—ã¦ã€æœ¬ç•ªãƒ‡ãƒ¼ã‚¿ã«å½±éŸ¿ã‚’与ãˆãšã«å®‰å…¨ã«å¤‰æ›´ã‚’テストã—ã¾ã™ã€‚",onlyForBuilder:"Builderプラン以上ã§ã®ã¿åˆ©ç”¨å¯èƒ½ã§ã™ã€‚",testDataVersionNote:"ã“れを使用ã™ã‚‹ã«ã¯ã€ã‚¢ãƒ—ãƒªã®æ–°ã—ã„ãƒãƒ¼ã‚¸ãƒ§ãƒ³ãŒå¿…è¦ã§ã™ã€‚メッセージをé€ä¿¡ã™ã‚‹ã€ã‚³ãƒ¼ãƒ‰ã‚’調整ã™ã‚‹ã€ãƒ“ジュアルエディタを使用ã™ã‚‹ãªã©ã€ä½•ã‹å¤‰æ›´ã‚’åŠ ãˆã‚‹ã ã‘ã§æº–備完了ã§ã™ã€‚",cloneApp:"アプリを複製",cloneAppDesc:"ã“ã®ã‚¢ãƒ—リã®è¤‡è£½ã‚’作æˆ",githubConnectionIssue:"GitHub接続ã®å•題。ã“ã®ã‚¢ãƒ—リを複製ã™ã‚‹ã«ã¯GitHubã‚’å†æŽ¥ç¶šã—ã¦ãã ã•ã„。",cantCloneOldInfra:`å¤ã„インフラã®ã‚¢ãƒ—リã¯è¤‡è£½ã§ãã¾ã›ã‚“。
アプリを複製ã™ã‚‹ã«ã¯ã‚¤ãƒ³ãƒ•ラを更新ã—ã¦ãã ã•ã„。`,createCopy:"コピーを作æˆ",backendFunctions:"ãƒãƒƒã‚¯ã‚¨ãƒ³ãƒ‰é–¢æ•°",backendFunctionsDesc:"サーãƒãƒ¼ã‚µã‚¤ãƒ‰æ©Ÿèƒ½ã‚’有効化 • 開発者å‘ã‘æŽ¨å¥¨",activating:"有効化ä¸...",activated:"有効化済ã¿",activate:"有効化",upgradePlan:"プランをアップグレード",dangerZone:"å±é™ºãªæ“作",dangerZoneDesc:"アプリã«å½±éŸ¿ã‚’与ãˆã‚‹ä¸å¯é€†çš„ãªæ“作",deleteApp:"アプリを削除",deleteAppDesc:"ã“ã®ã‚¢ãƒ—リã¨ã™ã¹ã¦ã®ãƒ‡ãƒ¼ã‚¿ã‚’完全ã«å‰Šé™¤ã—ã¾ã™",adminControls:"管ç†è€…コントãƒãƒ¼ãƒ«",adminControlsDesc:"アプリã®å¯ç”¨æ€§ã‚’管ç†",unblockApp:"アプリã®ãƒ–ãƒãƒƒã‚¯ã‚’解除",blockApp:"アプリをブãƒãƒƒã‚¯",appLogo:"アプリãƒã‚´",editLogo:"ãƒã‚´ã‚’編集",appDescription:"アプリã®èª¬æ˜Ž",saveDescription:"説明をä¿å˜",describeYourApp:"アプリを説明ã—ã¦ãã ã•ã„..."},S3={editAppLogo:"アプリãƒã‚´ã‚’編集",uploadLogo:"ãƒã‚´ã‚’アップãƒãƒ¼ãƒ‰",generateLogo:"ãƒã‚´ã‚’生æˆ",dragAndDrop:"ドラッグ&ドãƒãƒƒãƒ—ã¾ãŸã¯ã‚¯ãƒªãƒƒã‚¯ã—ã¦ã‚¢ãƒƒãƒ—ãƒãƒ¼ãƒ‰",clickToUpload:"クリックã—ã¦ã‚¢ãƒƒãƒ—ãƒãƒ¼ãƒ‰ã¾ãŸã¯ãƒ‰ãƒ©ãƒƒã‚°ï¼†ãƒ‰ãƒãƒƒãƒ—",pngJpgLimit:"PNGã€JPG 最大5MB",upload:"アップãƒãƒ¼ãƒ‰",whatShouldLook:"ãƒã‚´ã¯ã©ã®ã‚ˆã†ãªè¦‹ãŸç›®ã«ã—ã¾ã™ã‹ï¼Ÿ",generating:"生æˆä¸...",generateNew:"æ–°ã—ã„ãƒã‚´ã‚’生æˆ",cancel:"ã‚ャンセル",save:"ä¿å˜",logoPrompt:"ãƒã‚´ç”Ÿæˆãƒ—ãƒãƒ³ãƒ—ト",describeLogo:"ãƒã‚´ã®è¦‹ãŸç›®ã‚’説明ã—ã¦ãã ã•ã„",uploading:"アップãƒãƒ¼ãƒ‰ä¸...",selectImage:"ç”»åƒã‚’é¸æŠž"},C3={removeListingConfirm:"ã“ã®ãƒªã‚¹ãƒ†ã‚£ãƒ³ã‚°ã‚’削除ã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹ï¼Ÿã“ã®æ“作ã«ã‚ˆã‚Šã‚¢ãƒ—リテンプレートã‹ã‚‰å‰Šé™¤ã•れã¾ã™ã€‚",listingRemoved:"ã‚«ã‚¿ãƒã‚°ã‹ã‚‰ãƒªã‚¹ãƒ†ã‚£ãƒ³ã‚°ãŒæ£å¸¸ã«å‰Šé™¤ã•れã¾ã—ãŸ",appTemplates:"アプリテンプレート",listedFor:"${{price}}ã§æŽ²è¼‰ä¸ â€¢ {{sales}}ä»¶ã®è²©å£² • {{status}}",manageTemplate:"テンプレートリスティングを管ç†",shareTemplate:"コミュニティã¨ãƒ†ãƒ³ãƒ—レートを共有ã—ã¦ã€ä»–ã®ãƒ¦ãƒ¼ã‚¶ãƒ¼ãŒç™ºè¦‹ã—ã¦ä½¿ç”¨ã§ãるよã†ã«ã—ã¾ã—ょã†ã€‚",manageListing:"リスティングを管ç†",publishToTemplates:"アプリテンプレートã«å…¬é–‹",seeOnTemplates:"アプリテンプレートã§è¡¨ç¤º",removingListing:"削除ä¸...",removeFromTemplates:"アプリテンプレートã‹ã‚‰å‰Šé™¤",salesRevenue:"{{sales}}ä»¶ã®è²©å£² • ${{revenue}}ã®åŽç›Š",publishedToTemplates:"アプリテンプレートã«å…¬é–‹æ¸ˆã¿",rejectedReason:"å´ä¸‹ç†ç”±: {{reason}}"},D3={public:"公開",private:"éžå…¬é–‹",workspace:"ワークスペース",requireLogin:"アクセスã«ãƒã‚°ã‚¤ãƒ³ã‚’è¦æ±‚"},T3={notAvailableOnMobile:"{{feature}}ã®ç®¡ç†ã¯ãƒ¢ãƒã‚¤ãƒ«ã§ã¯åˆ©ç”¨ã§ãã¾ã›ã‚“",loginFromDesktop:"デスクトップブラウザã‹ã‚‰ãƒã‚°ã‚¤ãƒ³ã—ã¦ãã ã•ã„",okay:"了解",domains:"ドメイン",security:"ã‚»ã‚ュリティ",code:"コード",apiFeature:"API",templates:"テンプレート"},E3={settings:A3,logo:S3,catalog:C3,visibility:D3,desktop:T3},P3={title:"ユーザー",subtitle:"アプリã®ãƒ¦ãƒ¼ã‚¶ãƒ¼ã¨ãã®å½¹å‰²ã‚’管ç†",inviteUser:"ユーザーを招待",schema:"スã‚ーマ",searchByEmailOrName:"メールアドレスã¾ãŸã¯åå‰ã§æ¤œç´¢",pendingRequests:"承èªå¾…ã¡ã®ãƒªã‚¯ã‚¨ã‚¹ãƒˆ",userSchemaEditor:"ユーザースã‚ーマエディター",editUser:"ユーザーを編集",loadingUsers:"ユーザーをèªã¿è¾¼ã¿ä¸...",noUsersFound:"ユーザーãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“",noPendingRequests:"承èªå¾…ã¡ã®ãƒªã‚¯ã‚¨ã‚¹ãƒˆã¯ã‚りã¾ã›ã‚“",noPendingRequestsDesc:"ç¾åœ¨ã€æ‰¿èªå¾…ã¡ã®ã‚¢ã‚¯ã‚»ã‚¹ãƒªã‚¯ã‚¨ã‚¹ãƒˆã¯ã‚りã¾ã›ã‚“",inviteYourFirstUser:"最åˆã®ãƒ¦ãƒ¼ã‚¶ãƒ¼ã‚’招待ã—ã¾ã—ょã†",getStartedByInviting:"最åˆã®ãƒ¦ãƒ¼ã‚¶ãƒ¼ã‚’ã‚¢ãƒ—ãƒªã«æ‹›å¾…ã—ã¦å§‹ã‚ã¾ã—ょã†ã€‚",tryAdjustingSearch:"検索æ¡ä»¶ã‚„フィルターを調整ã—ã¦ãпޢã—ã®ã‚‚ã®ã‚’見ã¤ã‘ã¦ãã ã•ã„。",moreActions:"ãã®ä»–ã®ã‚¢ã‚¯ã‚·ãƒ§ãƒ³",resendInvitation:"招待をå†é€ä¿¡",cancelInvite:"招待をã‚ャンセル",editUserAction:"ユーザーを編集",changeOwner:"オーナーを変更",makeAppOwner:"アプリオーナーã«ã™ã‚‹",resendOwnershipRequest:"オーナーシップリクエストをå†é€ä¿¡",cancelOwnershipRequest:"オーナーシップリクエストをã‚ャンセル",changeRole:"役割を変更",selectNewRole:"{{name}}ã®æ–°ã—ã„å½¹å‰²ã‚’é¸æŠžã—ã¦ãã ã•ã„:",back:"戻る",manageInvitation:"招待を管ç†",approve:"承èª",reject:"æ‹’å¦",unknown:"䏿˜Ž",admin:"管ç†è€…",user:"ユーザー",allRoles:"ã™ã¹ã¦ã®å½¹å‰²",name:"åå‰",owner:"オーナー",pendingOwnership:"オーナーシップ承èªå¾…ã¡",role:"役割",email:"メールアドレス",hasntLoggedIn:"{{role}}ã¯ã¾ã アプリã«ãƒã‚°ã‚¤ãƒ³ã—ã¦ã„ã¾ã›ã‚“。",userRemovedSuccess:"ãƒ¦ãƒ¼ã‚¶ãƒ¼ãŒæ£å¸¸ã«å‰Šé™¤ã•れã¾ã—ãŸ",failedCancelInvitation:"招待ã®ã‚ャンセルã«å¤±æ•—ã—ã¾ã—ãŸ",userLoggedInSinceRefresh:"æœ€å¾Œã®æ›´æ–°ä»¥é™ã«ã“ã®ãƒ¦ãƒ¼ã‚¶ãƒ¼ãŒãƒã‚°ã‚¤ãƒ³ã—ã¾ã—ãŸã€‚å†è©¦è¡Œã™ã‚‹å‰ã«ãƒšãƒ¼ã‚¸ã‚’æ›´æ–°ã—ã¦æœ€æ–°ã®ã‚¹ãƒ†ãƒ¼ã‚¿ã‚¹ã‚’確èªã—ã¦ãã ã•ã„。",failedRemoveUser:"ユーザーã®å‰Šé™¤ã«å¤±æ•—ã—ã¾ã—ãŸ",subscriptionRequired:"サブスクリプションãŒå¿…è¦ã§ã™",onlyPayingCanAdmin:"有料ユーザーã®ã¿ãŒä»–ã®ãƒ¦ãƒ¼ã‚¶ãƒ¼ã‚’管ç†è€…ã«ã§ãã¾ã™ã€‚",upgradeSubscription:"サブスクリプションをアップグレード",toContinue:"ã—ã¦ç¶šè¡Œã—ã¦ãã ã•ã„。",userUpdatedSuccess:"ãƒ¦ãƒ¼ã‚¶ãƒ¼ãŒæ£å¸¸ã«æ›´æ–°ã•れã¾ã—ãŸ",userApprovedSuccess:"ãƒ¦ãƒ¼ã‚¶ãƒ¼ãŒæ£å¸¸ã«æ‰¿èªã•れã¾ã—ãŸ",failedApproveRequest:"ã‚¢ã‚¯ã‚»ã‚¹ãƒªã‚¯ã‚¨ã‚¹ãƒˆã®æ‰¿èªã«å¤±æ•—ã—ã¾ã—ãŸ",invitationRejected:"æ‹›å¾…ãŒæ‹’å¦ã•れã¾ã—ãŸ",failedDenyRequest:"ã‚¢ã‚¯ã‚»ã‚¹ãƒªã‚¯ã‚¨ã‚¹ãƒˆã®æ‹’å¦ã«å¤±æ•—ã—ã¾ã—ãŸ",invitationResentSuccess:"æ‹›å¾…ãŒæ£å¸¸ã«å†é€ä¿¡ã•れã¾ã—ãŸ",failedResendInvitation:"招待ã®å†é€ä¿¡ã«å¤±æ•—ã—ã¾ã—ãŸ",emailSent:"メールé€ä¿¡æ¸ˆã¿",ownershipTransferResent:"ã‚ªãƒ¼ãƒŠãƒ¼ã‚·ãƒƒãƒ—ç§»è»¢ã®æ‹›å¾…ãŒå†é€ä¿¡ã•れã¾ã—ãŸã€‚",transferCancelled:"移転ãŒã‚ャンセルã•れã¾ã—ãŸ",ownershipTransferCancelled:"オーナーシップã®ç§»è»¢ãŒã‚ャンセルã•れã¾ã—ãŸã€‚",failedCancelTransfer:"移転ã®ã‚ャンセルã«å¤±æ•—ã—ã¾ã—ãŸ",cancelInviteAction:"招待をã‚ャンセル",removeUser:"ユーザーを削除",failedApproveUser:"ãƒ¦ãƒ¼ã‚¶ãƒ¼ã®æ‰¿èªã«å¤±æ•—ã—ã¾ã—ãŸ",success:"æˆåŠŸ",error:"エラー",save:"ä¿å˜",deleteConfirm:"ã“ã®ãƒ¬ã‚³ãƒ¼ãƒ‰ã‚’削除ã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹ï¼Ÿ",deleteFailed:"削除ã«å¤±æ•—ã—ã¾ã—ãŸ"},_3={users:P3},x3="ソーシャルコンテンツ",I3="SNSプãƒãƒ¢ãƒ¼ã‚·ãƒ§ãƒ³ãƒ—ランã¨ã™ãã«æŠ•ç¨¿ã§ãるコンテンツを作æˆã€‚",R3="ソーシャルコンテンツをèªã¿è¾¼ã¿ä¸",z3={title:"エラーãŒç™ºç”Ÿã—ã¾ã—ãŸ",description:"予期ã—ãªã„エラーãŒç™ºç”Ÿã—ã¾ã—ãŸã€‚ページを更新ã—ã¦ãã ã•ã„。",tryAgain:"å†è©¦è¡Œ"},M3={emptyTitle:"SNSã§ã‚¢ãƒ—リを宣ä¼ã—よã†",emptyDescription:"アプリを分æžã—ã€ãã®ã¾ã¾æŠ•稿ã§ãã‚‹SNS投稿を作æˆã—ã¾ã™ã€‚",getStarted:"コンテンツプランを作æˆ",learnMore:"詳ã—ãã¯ã“ã¡ã‚‰",emptyCheck1:"锿ˆã—ãŸã„目標を決ã‚ã‚‹",emptyCheck2:"ã‚¢ãƒ—ãƒªã«æœ€é©ãªãƒãƒ£ãƒãƒ«ã‚’é¸ã¶",emptyCheck3:"ã™ãã«ã‚·ã‚§ã‚¢ã§ãるカスタム投稿アイデアを入手",analyzingBase:"アプリを分æžä¸",analyzingDescription:"アプリã®å†…容ã€å¯¾è±¡ãƒ¦ãƒ¼ã‚¶ãƒ¼ã€ãƒ—ãƒãƒ¢ãƒ¼ã‚·ãƒ§ãƒ³æ–¹æ³•ã‚’å¦ã‚“ã§ã„ã¾ã™ã€‚",combiningBase:"コンテンツ戦略を作æˆä¸",combiningDescription:"メッセージを練り上ã’ã€ãƒãƒ¼ãƒ³ãƒã«æœ€é©ãªãƒãƒ£ãƒãƒ«ã‚’é¸ã‚“ã§ã„ã¾ã™ã€‚",planStep1:"戦略をé©ç”¨ä¸",planStep2:"å„プラットフォームå‘ã‘ã«ã‚³ãƒ³ãƒ†ãƒ³ãƒ„を調整ä¸",planStep3:"投稿テã‚ストを作æˆä¸",planStep4:"投稿用ã®ãƒ“ジュアルを作æˆä¸",stepOf:"ステップ {{current}} / {{total}}"},N3={letsGo:"å§‹ã‚ã¾ã—ょã†",next:"次ã¸",back:"戻る",creatingPlan:"コンテンツを作æˆä¸...",creatingPlanBase:"コンテンツを作æˆä¸",strategyReady:"ææ¡ˆã•ã‚ŒãŸæˆ¦ç•¥"},F3={emptyTitle:"アプリを宣ä¼ã™ã‚‹æº–å‚™ã¯ã§ãã¦ã„ã¾ã™ã‹ï¼Ÿ",emptyDescription:"質å•ã«ç”ãˆã¦ã‚³ãƒ³ãƒ†ãƒ³ãƒ„をパーソナライズã—ã¾ã—ょã†ã€‚",generateNewPlan:"æ–°ã—ã„プランを作æˆ",downloadContent:"コンテンツをダウンãƒãƒ¼ãƒ‰",downloading:"ダウンãƒãƒ¼ãƒ‰ä¸...",startFresh:"最åˆã‹ã‚‰ã‚„り直ã™"},L3={copy:"コピー",copied:"コピー済ã¿",copiedToClipboard:"クリップボードã«ã‚³ãƒ”ーã—ã¾ã—ãŸ",failedToCopy:"コピーã«å¤±æ•—ã—ã¾ã—ãŸ",cancel:"ã‚ャンセル",save:"ä¿å˜",imageGenerationFailed:"ç”»åƒã®ç”Ÿæˆã«å¤±æ•—ã—ã¾ã—ãŸ",retryImage:"ã‚‚ã†ä¸€åº¦è©¦ã™",download:"ç”»åƒã‚’ダウンãƒãƒ¼ãƒ‰",expandImage:"フルサイズã§è¡¨ç¤º",close:"é–‰ã˜ã‚‹",regenerateImage:"ç”»åƒã‚’å†ç”Ÿæˆ",imageRefinePlaceholder:"何を変更ã—ã¾ã™ã‹ï¼Ÿ",imageAlt:"投稿ã®ãƒ“ジュアル",share:"ã‚·ã‚§ã‚¢",editPostTitle:"投稿を編集",descriptionLabel:"説明",imageLabel:"ç”»åƒ",improveWithAI:"AIã§æ”¹å–„",refineInputPlaceholder:"何を変更ã—ã¾ã™ã‹ï¼Ÿ",saveChanges:"変更をä¿å˜"},j3={handle:"ã‚ãªãŸã®ID",displayName:"ã‚ãªãŸã®åå‰"},O3={reviewTitle:"ææ¡ˆã•ã‚ŒãŸæˆ¦ç•¥ã‚’確èª",goalLabel:"ã‚ãªãŸã®ç›®æ¨™",approachLabel:"推奨アプãƒãƒ¼ãƒ",strategyLabel:"戦略",showMore:"ã‚‚ã£ã¨è¦‹ã‚‹",showLess:"é–‰ã˜ã‚‹",platformsLabel:"対象プラットフォーム",platformsDescription:"ã‚ãªãŸã®ãƒ“ジãƒã‚¹ã«æœ€é©ãªãƒ—ラットフォームを事å‰ã«é¸æŠžã—ã¾ã—ãŸã€‚",editSelection:"é¸æŠžã‚’ç·¨é›†",selectPlatforms:"ãƒ—ãƒ©ãƒƒãƒˆãƒ•ã‚©ãƒ¼ãƒ ã‚’é¸æŠž",maxPlatforms:"最大3ã¤",toneLabel:"ã‚ãªãŸã®ãƒˆãƒ¼ãƒ³ã«åˆã‚ã›ã‚‹ï¼ˆä»»æ„)",toneDescription:"SNSプãƒãƒ•ィールã®ãƒªãƒ³ã‚¯ã‚’貼り付ã‘ã‚‹ã¨ã€æŠ•稿をã‚ãªãŸã®ãƒˆãƒ¼ãƒ³ã«åˆã‚ã›ã¾ã™ã€‚",generatePosts:"投稿を生æˆ"},B3={resetTitle:"æ–°ã—ã„プランを作æˆã—ã¾ã™ã‹ï¼Ÿ",resetDescription:"ã¾ã£ãŸãæ–°ã—ã„プランを作æˆã—ã¾ã™ã€‚ç¾åœ¨ã®æŠ•稿ã¨ç·¨é›†å†…容ã¯ç½®ãæ›ãˆã‚‰ã‚Œã€å¾©å…ƒã§ãã¾ã›ã‚“。",cancel:"ã‚ャンセル",resetConfirm:"æ–°ã—ã„プランを作æˆ",upgradeTitle:"インテグレーションクレジットãŒä¸è¶³ã—ã¦ã„ã¾ã™",upgradeDescription:"ã“ã®ã‚¢ã‚¯ã‚·ãƒ§ãƒ³ã«å¿…è¦ãªã‚¤ãƒ³ãƒ†ã‚°ãƒ¬ãƒ¼ã‚·ãƒ§ãƒ³ã‚¯ãƒ¬ã‚¸ãƒƒãƒˆãŒè¶³ã‚Šã¾ã›ã‚“。プランをアップグレードã—ã¦ãã ã•ã„。",upgradeAction:"プランをアップグレード"},U3={sendFailed:"エラーãŒç™ºç”Ÿã—ã¾ã—ãŸ",sendFailedDescription:"AIã«æŽ¥ç¶šã§ãã¾ã›ã‚“ã§ã—ãŸã€‚ã‚‚ã†ä¸€åº¦ãŠè©¦ã—ãã ã•ã„。",postUpdated:"投稿を更新ã—ã¾ã—ãŸ",postUpdateFailed:"æŠ•ç¨¿ã®æ›´æ–°ã«å¤±æ•—ã—ã¾ã—ãŸ",postRefined:"投稿を改善ã—ã¾ã—ãŸ",refineFailed:"投稿を改善ã§ãã¾ã›ã‚“ã§ã—ãŸ",refineFailedDescription:"AIãŒå¤‰æ›´ã‚’é©ç”¨ã§ãã¾ã›ã‚“ã§ã—ãŸã€‚ã‚‚ã†ä¸€åº¦ãŠè©¦ã—ãã ã•ã„。",imageGenerated:"ç”»åƒãŒç”Ÿæˆã•れã¾ã—ãŸï¼",imageGenerateFailed:"ç”»åƒã‚’生æˆã§ãã¾ã›ã‚“ã§ã—ãŸ",imageGenerateFailedDescription:"ç”»åƒç”Ÿæˆä¸ã«å•題ãŒç™ºç”Ÿã—ã¾ã—ãŸã€‚ã‚‚ã†ä¸€åº¦ãŠè©¦ã—ãã ã•ã„。",planReset:"コンテンツãŒãƒªã‚»ãƒƒãƒˆã•れã¾ã—㟠- æ–°ã—ã„ã‚¹ã‚¿ãƒ¼ãƒˆã®æº–å‚™ãŒã§ãã¾ã—ãŸ",planResetFailed:"リセットã«å¤±æ•—ã—ã¾ã—ãŸ",insufficientCredits:"インテグレーションクレジットãŒä¸è¶³ã—ã¦ã„ã¾ã™",insufficientCreditsDescription:"インテグレーションクレジットãŒä¸è¶³ã—ã¦ã„ã¾ã™ã€‚プランをアップグレードã—ã¦ã‚¯ãƒ¬ã‚¸ãƒƒãƒˆã‚’è¿½åŠ ã—ã¦ãã ã•ã„。",downloadPartial:"ã™ã¹ã¦ã®ã‚³ãƒ³ãƒ†ãƒ³ãƒ„をダウンãƒãƒ¼ãƒ‰ã§ãã¾ã›ã‚“ã§ã—ãŸ",downloadPartialDescription:"一部ã®ç”»åƒã®ãƒ€ã‚¦ãƒ³ãƒãƒ¼ãƒ‰ã«å¤±æ•—ã—ã¾ã—ãŸã€‚ã‚‚ã†ä¸€åº¦ãŠè©¦ã—ãã ã•ã„。"},q3={pageTitle:x3,pageSubtitle:I3,loadingBase:R3,errorBoundary:z3,wizard:M3,steps:N3,toolbox:F3,post:L3,mock:j3,strategy:O3,dialog:B3,toast:U3},V3={overview:"概è¦",users:"ユーザー",data:"データ",analytics:"アナリティクス",domains:"ドメイン",integrations:"連æº",security:"ã‚»ã‚ュリティ",code:"コード",agents:"エージェント",automations:"オートメーション",logs:"ãƒã‚°",api:"API",settings:"è¨å®š",appSettings:"アプリè¨å®š",authentication:"èªè¨¼",appTemplate:"アプリテンプレート",secrets:"シークレット",backToEditor:"ã‚¨ãƒ‡ã‚£ã‚¿ãƒ¼ã«æˆ»ã‚‹",codeFiles:"コードファイル",search:"検索...",clearSearch:"検索をクリア",virality:"ソーシャルコンテンツ"},$3="アプリデータをèªã¿è¾¼ã¿ä¸...",W3="ゴミ箱: {{entityName}}",G3={issuesFound:"å•題ãŒè¦‹ã¤ã‹ã‚Šã¾ã—ãŸ",inComponent:"{{componentName}}コンãƒãƒ¼ãƒãƒ³ãƒˆå†…:",resolving:"解決ä¸...",resolveWithAI:"AIã§è§£æ±º",noCreditDeduction:"ã“ã®ã‚¢ã‚¯ã‚·ãƒ§ãƒ³ã§ã¯ã‚¯ãƒ¬ã‚¸ãƒƒãƒˆã¯æ¶ˆè²»ã•れã¾ã›ã‚“。"},H3={loadingCheckpoint:"ãƒã‚§ãƒƒã‚¯ãƒã‚¤ãƒ³ãƒˆã‚³ãƒ¼ãƒ‰ã‚’èªã¿è¾¼ã¿ä¸...",errorFetchingFiles:"ファイルã®å–得エラー",backToPreview:"ãƒ—ãƒ¬ãƒ“ãƒ¥ãƒ¼ã«æˆ»ã‚‹"},Y3={letsBuild:"アプリを作りã¾ã—ょã†",tellMeCreate:"ãƒãƒ£ãƒƒãƒˆã§ä½œã‚ŠãŸã„ã‚‚ã®ã‚’æ•™ãˆã¦ãã ã•ã„",loadingApp:"アプリをèªã¿è¾¼ã¿ä¸",buildingPreview:"プレビューをビルドä¸",previewPreparing:"アプリã®ãƒ—レビューを準備ã—ã¦ã„ã¾ã™ã€‚",mayTakeMoment:"ã—ã°ã‚‰ããŠå¾…ã¡ãã ã•ã„。",previewUnavailable:"プレビューãŒåˆ©ç”¨ã§ãã¾ã›ã‚“",previewCouldntLoad:"ã“ã®ãƒãƒ¼ã‚¸ãƒ§ãƒ³ã®ãƒ—レビューをèªã¿è¾¼ã‚ã¾ã›ã‚“ã§ã—ãŸã€‚",retryBuild:"ビルドをå†è©¦è¡Œ",buildingIdea:"アイデアをビルドä¸",didYouKnow:"ã”å˜çŸ¥ã§ã™ã‹ï¼Ÿ",packagePending:"パッケージã®ã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«å¾…ã¡",approvePackage:"続行ã™ã‚‹ã«ã¯ãƒãƒ£ãƒƒãƒˆã§npmパッケージã®ã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«ã‚’承èªã—ã¦ãã ã•ã„",loadingPreview:"プレビューをèªã¿è¾¼ã¿ä¸â€¦",refreshPreview:"プレビューを更新",capture:{verbDiscovering:"発見ä¸",verbDesigning:"デザインä¸",verbBuilding:"構築ä¸",verbPolishing:"仕上ã’ä¸",verbUnveiling:"完æˆé–“è¿‘",verbStudying:"分æžä¸",verbExtracting:"抽出ä¸",verbReimagining:"冿§‹ç¯‰ä¸",verbRefining:"調整ä¸",stageAnalyzingDesign:"デザインを分æžä¸",stageExtractingColorsAndFonts:"カラーã¨ãƒ•ォントを抽出ä¸",stageBuildingPages:"ページを構築ä¸",stageCreatingComponents:"コンãƒãƒ¼ãƒãƒ³ãƒˆã‚’作æˆä¸",stageRefiningDetails:"ディテールを調整ä¸",stageAlmostThere:"ã‚‚ã†ã™ã完æˆ",stageStudyingDesignLanguage:"デザイン言語を分æžä¸",stageExtractingColorsAndTypography:"カラーã¨ã‚¿ã‚¤ãƒã‚°ãƒ©ãƒ•ィを抽出ä¸",stageCraftingYourPages:"オリジナルページを作æˆä¸",stageApplyingDesignInspiration:"デザインインスピレーションをé©ç”¨ä¸",stageRefiningLookAndFeel:"外観を調整ä¸",yourSite:"ã‚ãªãŸã®ã‚µã‚¤ãƒˆ",aSiteInspiredBy:"<site>{{siteName}}</site>ã«ã‚¤ãƒ³ã‚¹ãƒ‘イアã•れãŸã‚µã‚¤ãƒˆ",progress:"進æ—"},figma:{verbFetching:"å–å¾—ä¸",verbExtracting:"抽出ä¸",verbProcessing:"処ç†ä¸",verbTransforming:"変æ›ä¸",verbBuilding:"構築ä¸",stageReadingDesign:"Figmaデザインをèªã¿è¾¼ã¿ä¸",stageProcessingStructure:"ãƒ‡ã‚¶ã‚¤ãƒ³æ§‹é€ ã‚’å‡¦ç†ä¸",stageHandlingAssets:"アセットを処ç†ã—コードを生æˆä¸",stageApplyingAI:"AIレイアウト変æ›ã‚’é©ç”¨ä¸",stageCompiling:"ã‚¢ãƒ—ãƒªã‚’ã‚³ãƒ³ãƒ‘ã‚¤ãƒ«ã—æœ€çµ‚化ä¸",yourFigmaDesign:"ã‚ãªãŸã®Figmaデザイン",defaultName:"Figmaインãƒãƒ¼ãƒˆ"}},K3={canvas:"Canvas",dashboard:"ダッシュボード",preview:"プレビュー",exitSplitScreen:"分割画é¢ãƒ¢ãƒ¼ãƒ‰ã‚’終了ã—ã¦ãƒ—レビュー",versionHistory:"ãƒãƒ¼ã‚¸ãƒ§ãƒ³å±¥æ´",moreOptions:"ãã®ä»–ã®ã‚ªãƒ—ション",filesUsedInPage:"ã“ã®ãƒšãƒ¼ã‚¸ã§ä½¿ç”¨ã•れã¦ã„るファイル",seeAllFiles:"ã™ã¹ã¦ã®ãƒ•ァイルを見る",activityMonitor:"アクティビティモニター",exportAsZip:"ZIPã§ãƒ—ãƒã‚¸ã‚§ã‚¯ãƒˆã‚’エクスãƒãƒ¼ãƒˆ",helpCenter:"ヘルプセンター",actAsUser:"ユーザーã¨ã—ã¦æ“作",viewAppNewTab:"ç¾åœ¨ã®ãƒãƒ¼ã‚¸ãƒ§ãƒ³ã‚’プレビュー",refreshPreview:"プレビューを更新",refresh:"æ›´æ–°",switchToDesktop:"デスクトップ表示ã«åˆ‡æ›¿",switchToMobile:"モãƒã‚¤ãƒ«è¡¨ç¤ºã«åˆ‡æ›¿",showChatPanel:"ãƒãƒ£ãƒƒãƒˆãƒ‘ãƒãƒ«ã‚’表示",hideChatPanel:"ãƒãƒ£ãƒƒãƒˆãƒ‘ãƒãƒ«ã‚’éžè¡¨ç¤º",turnOffTestData:"テストデータをオフã«ã™ã‚‹",turnOnTestData:"テストデータをオンã«ã™ã‚‹",shareApp:"アプリを共有",shareInviteUsers:"ユーザーを共有・招待",moreActions:"ãã®ä»–ã®ã‚¢ã‚¯ã‚·ãƒ§ãƒ³",inviteCollaborators:"コラボレーターを招待",viewOnly:"閲覧ã®ã¿",viewOnlyAccess:"ã“ã®ã‚¢ãƒ—リã¸ã®é–²è¦§ã®ã¿ã®ã‚¢ã‚¯ã‚»ã‚¹æ¨©ãŒã‚りã¾ã™",upgradeInfraTooltip:"アプリを新ã—ã„インフラストラクãƒãƒ£ã«<br/>アップグレードã™ã‚‹æº–å‚™ãŒã§ãã¦ã„ã¾ã™ã€‚",appOverview:"アプリ概è¦",myApp:"マイアプリ",production:"本番",test:"テスト",gitHub:"GitHub",gitHubConnection:"GitHub接続",collaborators:"コラボレーター",collaboratorDisplayYou:"{{name}} (ã‚ãªãŸ)",collaboratorUnknown:"䏿˜Ž",addCollaborator:"ã‚³ãƒ©ãƒœãƒ¬ãƒ¼ã‚¿ãƒ¼ã‚’è¿½åŠ ",saving:"ä¿å˜ä¸...",savedAgo:"{{time}}å‰ã«ä¿å˜æ¸ˆã¿",unsavedChanges_one:"{{count}}ä»¶ã®æœªä¿å˜ã®å¤‰æ›´",unsavedChanges_other:"{{count}}ä»¶ã®æœªä¿å˜ã®å¤‰æ›´",theme:"テーマ",themeTitle:"テーマ",themeDescription:"ã“れらã®ã‚«ãƒ©ãƒ¼ã¨ãƒ•ォントãŒãƒ†ãƒ¼ãƒžã‚’æ§‹æˆã—ã¾ã™ã€‚変更ã¯ã™ã¹ã¦ã®å ´æ‰€ã«é©ç”¨ã•れã¾ã™ã€‚",themeColors:"カラー",themeFonts:"フォント",noThemeColors:"テーマã®è‰²ãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“",themeSaveChanges:"ä¿å˜ã—ã¦é©ç”¨",themeCancel:"ã‚ャンセル",colorPickerCustom:"カスタム",colorPickerPalette:"パレット",fontPickerSearch:"フォントを検索...",fontPickerBrandFonts:"ブランドフォント",fontPickerAllFonts:"ã™ã¹ã¦ã®ãƒ•ォント",fontPickerNoResults:"フォントãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“",fontPickerSelectFont:"ãƒ•ã‚©ãƒ³ãƒˆã‚’é¸æŠž"},Z3={desktop:"デスクトップ",tablet:"タブレット",mobile:"モãƒã‚¤ãƒ«",isAvailable:"利用å¯èƒ½",getDomain:"ドメインをå–å¾—",connectDomain:"カスタムドメインを接続",undo:"å…ƒã«æˆ»ã™",redo:"やり直ã™",fullscreen:"全画é¢",breakpoints:"ブレークãƒã‚¤ãƒ³ãƒˆ",splitView:"分割表示",exitSplitView:"分割表示を終了",exitPreview:"プレビューを終了"},J3={upgrade:"アップグレード",upgradePlan:"プランをアップグレード",percentOff:"{{percent}}%オフ",limitedTimeOffer:"期間é™å®šã‚¦ã‚§ãƒ«ã‚«ãƒ オファー",getDiscountOff:"年間プランãŒ{{discount}}オフ"},Q3={viewingVersionHistory:"ãƒãƒ¼ã‚¸ãƒ§ãƒ³å±¥æ´ã‚’表示ä¸",buildInProgress:"ビルドä¸...",retryBuildToEnable:"ã“ã®è¡¨ç¤ºã‚’有効ã«ã™ã‚‹ã«ã¯ãƒ“ルドをå†è©¦è¡Œ",viewApp:"アプリを見る",viewCode:"コードを見る",restoring:"復元ä¸...",restoreThisVersion:"ã“ã®ãƒãƒ¼ã‚¸ãƒ§ãƒ³ã‚’復元",publishing:"公開ä¸...",publishThisVersion:"ã“ã®ãƒãƒ¼ã‚¸ãƒ§ãƒ³ã‚’公開",exit:"終了",back:"戻る",publish:"公開",restore:"復元",latest:"最新"},X3={actAs:"ãªã‚Šã™ã¾ã—",actingAs:"æ“作ä¸ã®ãƒ¦ãƒ¼ã‚¶ãƒ¼:",searchUser:"ユーザーを検索",anonymousGuest:"匿åゲスト",you:"ã‚ãªãŸ",warningChanges:"行ã£ãŸå¤‰æ›´ã¯ãƒ¦ãƒ¼ã‚¶ãƒ¼ãƒ‡ãƒ¼ã‚¿ã«åæ˜ ã•れã¾ã™ã€‚",carefulChanges:"- 注æ„: ã“ã“ã§ã®å¤‰æ›´ã¯ã“ã®ãƒ¦ãƒ¼ã‚¶ãƒ¼ã«å½±éŸ¿ã—ã¾ã™",exitMode:"モードを終了",noUsersYet:"ã¾ã ユーザーãŒã„ã¾ã›ã‚“",addOrInvite:"ãƒ¦ãƒ¼ã‚¶ãƒ¼ã‚’è¿½åŠ ãƒ»æ‹›å¾…ã—ã¦ã€ã‚¢ãƒ—リãŒã©ã®ã‚ˆã†ã«å‹•作ã™ã‚‹ã‹ç¢ºèªã—ã¾ã—ょã†",invite:"招待",usersCount:"ユーザー ({{count}})",noMatchingUsers:"一致ã™ã‚‹ãƒ¦ãƒ¼ã‚¶ãƒ¼ãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“",trySearching:"åå‰ã¾ãŸã¯ãƒãƒ¼ãƒ«ã§æ¤œç´¢ã—ã¦ãã ã•ã„"},eH={pressEnterNavigate:"Enterã‚ーã§ç§»å‹•"},tH={publishApp:"アプリを公開",publish:"公開",publishing:"公開ä¸...",disabledUntilUpdate:"インフラストラクãƒãƒ£ã®æ›´æ–°ãŒå®Œäº†ã™ã‚‹ã¾ã§å…¬é–‹ã¯ç„¡åйã§ã™ã€‚",currentlyDisabled:"ç¾åœ¨å…¬é–‹ã¯ç„¡åйã§ã™",codeNotGenerated:"ã‚¢ãƒ—ãƒªã®æº–å‚™ãŒã§ãã‚‹ã¨å…¬é–‹ãŒæœ‰åйã«ãªã‚Šã¾ã™",visualEditsSaveWarning:"一部ã®ãƒ“ジュアル編集ã¯å…¬é–‹å‰ã«ä¿å˜ã§ãã¾ã›ã‚“ã§ã—ãŸ",republishApp:"アプリをå†å…¬é–‹",lastPublished:"最終公開 {{time}}"},aH={whatToChange:"何を変更ã—ã¾ã™ã‹ï¼Ÿ",whatToDiscuss:"何ã«ã¤ã„ã¦è©±ã—åˆã„ã¾ã™ã‹ï¼Ÿ",saveChangesBeforeTyping:"入力ã™ã‚‹å‰ã«å¤‰æ›´ã‚’ä¿å˜ã—ã¦ãã ã•ã„",exitEditModeToContinue:"入力ã™ã‚‹å‰ã«ç·¨é›†ãƒ¢ãƒ¼ãƒ‰ã‚’終了ã—ã¦ãã ã•ã„",fetchingFromGitHub:"GitHubã‹ã‚‰å–å¾—ä¸...",viewOnlyAccess:"閲覧ã®ã¿ã®ã‚¢ã‚¯ã‚»ã‚¹æ¨©ãŒã‚りã¾ã™",zeroCreditsRemaining:"残りクレジット0",visualEdit:"編集",visualEditDisabledAgentRunning:"エージェントãŒå®Ÿè¡Œä¸ã¯ãƒ“ジュアル編集を使用ã§ãã¾ã›ã‚“",edit:"編集",discuss:"ディスカス",ask:"è¦ç´ を編集",editData:"データを編集",discussMode:"ディスカスモード",discussModeDescription:"コード変更ãªã—ã§AIã¨ãƒãƒ£ãƒƒãƒˆã§ãã¾ã™ã€‚リクエストã”ã¨ã«0.3クレジットを使用ã—ã¾ã™ã€‚",thought:"æ€è€ƒæ™‚é–“",thoughtWithDuration:"æ€è€ƒæ™‚é–“ <duration>{{duration}}</duration>",planningNextSteps:"次ã®ã‚¹ãƒ†ãƒƒãƒ—を計画ä¸...",signUpToStartBuilding:"æ–°è¦ç™»éŒ²ã—ã¦ãƒ“ルドを始ã‚ã¾ã—ょã†...",suggestions:"ææ¡ˆ",latestMessages:"最新ã®ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸",aiModel:"AIモデル",aiControls:"AIコントãƒãƒ¼ãƒ«",uploadFile:"コンピューターã‹ã‚‰ã‚¢ãƒƒãƒ—ãƒãƒ¼ãƒ‰",uploadFileMobile:"デãƒã‚¤ã‚¹ã‹ã‚‰ã‚¢ãƒƒãƒ—ãƒãƒ¼ãƒ‰",addFromGoogleDrive:"Google Driveã‹ã‚‰ã‚¢ãƒƒãƒ—ãƒãƒ¼ãƒ‰",connectorRequestFailed:"コãƒã‚¯ã‚¿ãƒ¼ãƒªã‚¯ã‚¨ã‚¹ãƒˆã®é€ä¿¡ã«å¤±æ•—ã—ã¾ã—ãŸã€‚ã‚‚ã†ä¸€åº¦ãŠè©¦ã—ãã ã•ã„。",designingYourWebsite:"ウェブサイトをデザインä¸...",speechToText:"音声入力",processingAudio:"音声を処ç†ä¸...",clickToStopRecording:"クリックã—ã¦éŒ²éŸ³ã‚’åœæ¢"},nH={dialogTitle:"ビルダーã®ã‚³ãƒžãƒ³ãƒ‰ãƒ‘レット",dialogDescription:"ビルダー内ã®ãƒšãƒ¼ã‚¸ã€ãƒ•ァイルã€ã‚¨ãƒ³ãƒ†ã‚£ãƒ†ã‚£ã€ãƒ“ューã€ã‚¯ã‚¤ãƒƒã‚¯ã‚¢ã‚¯ã‚·ãƒ§ãƒ³ã‚’検索ã—ã¾ã™ã€‚",searchPlaceholder:"ページã€ãƒ•ァイルã€ã‚¨ãƒ³ãƒ†ã‚£ãƒ†ã‚£ã€ãƒ“ューã€ã‚¯ã‚¤ãƒƒã‚¯ã‚¢ã‚¯ã‚·ãƒ§ãƒ³ã‚’検索...",emptyTitle:"一致ã™ã‚‹ã‚³ãƒžãƒ³ãƒ‰ãŒã‚りã¾ã›ã‚“",emptyDescription:"ページåã€ãƒ•ァイルパスã€ã‚¨ãƒ³ãƒ†ã‚£ãƒ†ã‚£åã€ã‚¨ãƒ‡ã‚£ã‚¿ãƒ¼ãƒ“ューã€ã¾ãŸã¯ãƒ†ã‚¹ãƒˆãƒ‡ãƒ¼ã‚¿ã®ã‚ˆã†ãªã‚¯ã‚¤ãƒƒã‚¯ã‚¢ã‚¯ã‚·ãƒ§ãƒ³ã‚’ãŠè©¦ã—ãã ã•ã„。",homeSubtitle:"ホーム",navigationSubtitle:"ダッシュボード",viewSubtitle:"エディタービュー",entityDataSubtitle:"データ",entityCodeSubtitle:"コード",integrationsSubtitle:"連æº",domainSubtitle:"カスタムドメイン",collaboratorsSubtitle:"コラボレーター",helpSubtitle:"ヘルプセンター",publishSubtitle:"デプãƒã‚¤ã¨å…±æœ‰",publishNowSubtitle:"最新ã®å¤‰æ›´ã‚’公開",versionHistorySubtitle:"ãƒãƒ¼ã‚¸ãƒ§ãƒ³å±¥æ´",securitySubtitle:"ã‚»ã‚ュリティ",testDataSubtitle:"テストデータã«åˆ‡ã‚Šæ›¿ãˆ",productionDataSubtitle:"本番データã«åˆ‡ã‚Šæ›¿ãˆ",backToWorkspace:"ãƒ¯ãƒ¼ã‚¯ã‚¹ãƒšãƒ¼ã‚¹ã«æˆ»ã‚‹",switchToPreview:"プレビューã«åˆ‡ã‚Šæ›¿ãˆ",switchToDashboard:"ダッシュボードã«åˆ‡ã‚Šæ›¿ãˆ",switchToCode:"コードã«åˆ‡ã‚Šæ›¿ãˆ",switchToCanvas:"ã‚ャンãƒã‚¹ã«åˆ‡ã‚Šæ›¿ãˆ",openEntityData:"{{entityName}} データを開ã",openEntityCode:"{{entityName}} コードを開ã",addIntegration:"連æºã‚’è¿½åŠ ",addDomain:"ãƒ‰ãƒ¡ã‚¤ãƒ³ã‚’è¿½åŠ ",inviteCollaborator:"コラボレーターを招待",getHelp:"ヘルプを開ã",publishMyApp:"アプリを公開",publishNow:"今ã™ã公開",versionHistory:"ãƒãƒ¼ã‚¸ãƒ§ãƒ³å±¥æ´ã‚’表示",startSecurityCheck:"ã‚»ã‚ュリティãƒã‚§ãƒƒã‚¯ã‚’é–‹å§‹",turnOnTestData:"テストデータを有効ã«ã™ã‚‹",turnOffTestData:"テストデータを無効ã«ã™ã‚‹",groups:{navigate:"ナビゲート",views:"ビュー",files:"ファイル",entities:"エンティティ",actions:"アクション"}},iH="䏿˜Žãªãƒ“ュー",rH="アプリエディター",oH="ベータ",sH={title:"コラボレーターを招待",subtitle:"ã“ã®ã‚¢ãƒ—リを編集ã™ã‚‹ã‚¢ã‚¯ã‚»ã‚¹æ¨©ã‚’付与ã—ã¾ã™ã€‚",emailPlaceholder:"メールアドレスをカンマ区切りã§å…¥åŠ›",removeIneligible:"対象外ã®ãƒ¦ãƒ¼ã‚¶ãƒ¼ã‚’削除",appCollaborators:"アプリã®ã‚³ãƒ©ãƒœãƒ¬ãƒ¼ã‚¿ãƒ¼",you:"(ã‚ãªãŸ)",owner:"オーナー",moreActions:"ãã®ä»–ã®ã‚¢ã‚¯ã‚·ãƒ§ãƒ³",makeAppOwner:"アプリオーナーã«ã™ã‚‹",removeCollaborator:"コラボレーターを削除",resendOwnershipRequest:"所有権リクエストをå†é€ä¿¡",getOwnershipLink:"所有権リンクをå–å¾—",cancelOwnershipRequest:"所有権リクエストをã‚ャンセル",ownershipTooltip:"æ–°ã—ã„ã‚ªãƒ¼ãƒŠãƒ¼ã¯æ‹›å¾…メールã‹ã‚‰ç§»è¡Œã‚’承èªã™ã‚‹å¿…è¦ãŒã‚りã¾ã™ã€‚招待ã¯7æ—¥ã§æœ‰åŠ¹æœŸé™ãŒåˆ‡ã‚Œã¾ã™ã€‚移行完了時ã«ãƒ¡ãƒ¼ãƒ«ãŒå±Šãã¾ã™ã€‚",removeTitle:"ã“ã®ã‚³ãƒ©ãƒœãƒ¬ãƒ¼ã‚¿ãƒ¼ã‚’アプリã‹ã‚‰å‰Šé™¤ã—ã¾ã™ã‹ï¼Ÿ",removeDescription:"ã“ã®ã‚³ãƒ©ãƒœãƒ¬ãƒ¼ã‚¿ãƒ¼ã‚’削除ã™ã‚‹ã¨ã€ã‚¨ãƒ‡ã‚£ã‚¿ãƒ¼ã¸ã®ã‚¢ã‚¯ã‚»ã‚¹ãŒç›´ã¡ã«å–り消ã•れã€ã‚¢ãƒ—リã¸ã®å¤‰æ›´ãŒã§ããªããªã‚Šã¾ã™ã€‚",removeAccessOnly:"コラボレーターアクセスã®ã¿å‰Šé™¤",removeAccessOnlyDesc:"ユーザーã¯ãƒ¦ãƒ¼ã‚¶ãƒ¼ãƒªã‚¹ãƒˆã«è¡¨ç¤ºã•れãŸã¾ã¾ã«ãªã‚Šã¾ã™",removeEntirely:"アプリã‹ã‚‰å®Œå…¨ã«å‰Šé™¤",removeEntirelyDesc:"ユーザーã¯ãƒ¦ãƒ¼ã‚¶ãƒ¼ãƒªã‚¹ãƒˆã‹ã‚‰ã‚‚削除ã•れã¾ã™",cancel:"ã‚ャンセル",enterEmail:"メールアドレスを入力ã—ã¦ãã ã•ã„",invalidEmail:"無効ãªãƒ¡ãƒ¼ãƒ«",invalidEmails:"1ã¤ä»¥ä¸Šã®ãƒ¡ãƒ¼ãƒ«ã‚¢ãƒ‰ãƒ¬ã‚¹ãŒç„¡åйã§ã™ã€‚確èªã—ã¦å†è©¦è¡Œã—ã¦ãã ã•ã„。",cannotInviteOwner:"ã“ã®ã‚¢ãƒ—リã®ã‚ªãƒ¼ãƒŠãƒ¼ã‚’招待ã™ã‚‹ã“ã¨ã¯ã§ãã¾ã›ã‚“",alreadyExists:"ã‚³ãƒ©ãƒœãƒ¬ãƒ¼ã‚¿ãƒ¼ã¯æ—¢ã«å˜åœ¨ã—ã¾ã™ã€‚",alreadyExist:"ã‚³ãƒ©ãƒœãƒ¬ãƒ¼ã‚¿ãƒ¼ã¯æ—¢ã«å˜åœ¨ã—ã¾ã™ã€‚",invitationSent:"ã‚³ãƒ©ãƒœãƒ¬ãƒ¼ã‚¿ãƒ¼æ‹›å¾…ãŒæ£å¸¸ã«é€ä¿¡ã•れã¾ã—ãŸ",invitationsSent:"{{count}}ä»¶ã®ã‚³ãƒ©ãƒœãƒ¬ãƒ¼ã‚¿ãƒ¼æ‹›å¾…ãŒæ£å¸¸ã«é€ä¿¡ã•れã¾ã—ãŸ",removedFromApp:"コラボレーターをアプリã‹ã‚‰å‰Šé™¤ã—ã¾ã—ãŸ",accessRemoved:"コラボレーターアクセスを削除ã—ã¾ã—ãŸ",ownershipResent:"所有権リクエストをå†é€ä¿¡ã—ã¾ã—ãŸ",ownershipLinkCopied:"所有権リンクをクリップボードã«ã‚³ãƒ”ーã—ã¾ã—ãŸ",ownershipCancelled:"所有権リクエストをã‚ャンセルã—ã¾ã—ãŸ",failedToSendInvitation:"招待ã®é€ä¿¡ã«å¤±æ•—ã—ã¾ã—ãŸ",failedToRemoveCollaborator:"コラボレーターã®å‰Šé™¤ã«å¤±æ•—ã—ã¾ã—ãŸ",failedToResendOwnership:"所有権リクエストã®å†é€ä¿¡ã«å¤±æ•—ã—ã¾ã—ãŸ",failedToGetOwnershipLink:"所有権リンクã®å–å¾—ã«å¤±æ•—ã—ã¾ã—ãŸ",failedToCancelOwnership:"所有権リクエストã®ã‚ャンセルã«å¤±æ•—ã—ã¾ã—ãŸ",creditsWarning:"ã™ã¹ã¦ã®ã‚³ãƒ©ãƒœãƒ¬ãƒ¼ã‚¿ãƒ¼ã¯ãƒ¯ãƒ¼ã‚¯ã‚¹ãƒšãƒ¼ã‚¹ã®ã‚¯ãƒ¬ã‚¸ãƒƒãƒˆã‚’消費ã—ã¾ã™ã€‚",notWorkspaceMember:"ワークスペースメンãƒãƒ¼ã§ã¯ã‚りã¾ã›ã‚“",notMemberDescription_one:"<bold>{{emails}}</bold> ã¯ã“ã®ãƒ¯ãƒ¼ã‚¯ã‚¹ãƒšãƒ¼ã‚¹ã®ãƒ¡ãƒ³ãƒãƒ¼ã§ã¯ã‚りã¾ã›ã‚“。",notMemberDescription_other:"<bold>{{emails}}</bold> ã¯ã“ã®ãƒ¯ãƒ¼ã‚¯ã‚¹ãƒšãƒ¼ã‚¹ã®ãƒ¡ãƒ³ãƒãƒ¼ã§ã¯ã‚りã¾ã›ã‚“(複数)。",addAsGuest:"ゲストã¨ã—ã¦è¿½åŠ ",addAsGuestDescription:"ã“ã®ã‚¢ãƒ—リã®ã¿ã«ã‚¢ã‚¯ã‚»ã‚¹ã§ãるゲストã¨ã—ã¦è¿½åŠ ã•れã¾ã™ã€‚",addToWorkspace:"ワークスペースã«è¿½åŠ ",addToWorkspaceDescription:"ワークスペースè¨å®šã«ç§»å‹•ã—ã¦ã€æ£å¼ãªãƒ¯ãƒ¼ã‚¯ã‚¹ãƒšãƒ¼ã‚¹ãƒ¡ãƒ³ãƒãƒ¼ã¨ã—ã¦è¿½åŠ ã—ã¾ã™ã€‚",guestBadge:"ゲスト",emailListOverflow:"{{first}} ä»–{{count}}å",pendingInvitationWarning_one:"ã“ã®ãƒ¦ãƒ¼ã‚¶ãƒ¼ã¯ã™ã§ã«ãƒ¯ãƒ¼ã‚¯ã‚¹ãƒšãƒ¼ã‚¹ãƒ¡ãƒ³ãƒãƒ¼ã¨ã—ã¦ã®æ‹›å¾…ãŒä¿ç•™ä¸ã§ã™ã€‚ゲストã¨ã—ã¦è¿½åŠ ã™ã‚‹ã¨ã€ãã®æ‹›å¾…ã¯ç½®ãæ›ãˆã‚‰ã‚Œã¾ã™ã€‚",pendingInvitationWarning_other:"ã“れらã®ãƒ¦ãƒ¼ã‚¶ãƒ¼ã®ã†ã¡{{count}}人ã¯ã™ã§ã«ãƒ¯ãƒ¼ã‚¯ã‚¹ãƒšãƒ¼ã‚¹ãƒ¡ãƒ³ãƒãƒ¼ã¨ã—ã¦ã®æ‹›å¾…ãŒä¿ç•™ä¸ã§ã™ã€‚ゲストã¨ã—ã¦è¿½åŠ ã™ã‚‹ã¨ã€ãã‚Œã‚‰ã®æ‹›å¾…ã¯ç½®ãæ›ãˆã‚‰ã‚Œã¾ã™ã€‚"},lH={title:"連æºã‚¯ãƒ¬ã‚¸ãƒƒãƒˆã‚’使ã„切りã¾ã—ãŸ",description:"ã“れã«ã‚ˆã‚Šã€ã‚¢ãƒ—リã®ãƒ¦ãƒ¼ã‚¶ãƒ¼ãŒç‰¹å®šã®ã‚¢ã‚¯ã‚·ãƒ§ãƒ³ã‚’実行ã§ããªããªã‚‹å¯èƒ½æ€§ãŒã‚りã¾ã™ã€‚",upgradeLink:"プランをアップグレードã—ã¦ã‚¯ãƒ¬ã‚¸ãƒƒãƒˆã‚’è¿½åŠ ",dismiss:"ãƒãƒŠãƒ¼ã‚’é–‰ã˜ã‚‹"},cH={gathering:"åŽé›†ä¸",gathered:"åŽé›†æ¸ˆã¿",connectorsInformation:"コãƒã‚¯ã‚¿ãƒ¼æƒ…å ±",write:"書ãè¾¼ã¿",writing:"書ãè¾¼ã¿ä¸",wrote:"書ãè¾¼ã¿å®Œäº†",generatingImage:"ç”»åƒç”Ÿæˆä¸",generatedImage:"ç”»åƒç”Ÿæˆå®Œäº†",reading:"èªã¿è¾¼ã¿ä¸",read:"èªã¿è¾¼ã¿å®Œäº†",deleting:"削除ä¸",deleted:"削除完了",editing:"編集ä¸",edited:"編集完了",edit:"編集",creating:"作æˆä¸",created:"作æˆå®Œäº†",updating:"æ›´æ–°ä¸",updated:"更新完了",update:"æ›´æ–°",delete:"削除",importing:"インãƒãƒ¼ãƒˆä¸",imported:"インãƒãƒ¼ãƒˆå®Œäº†",import:"インãƒãƒ¼ãƒˆ",searching:"検索ä¸",searched:"検索完了",searchingForBugs:"ãƒã‚°ã‚’検索ä¸...",searchedBugs:"ãƒã‚°æ¤œç´¢å®Œäº†",install:"インストール",installing:"インストールä¸",installed:"インストール完了",analyzing:"分æžä¸",running:"実行ä¸",failed:"失敗",run:"実行",settingSecrets:"シークレットè¨å®šä¸",setSecret:"シークレットè¨å®šå®Œäº†",setSecrets:"シークレットをè¨å®š",testing:"テストä¸",checking:"確èªä¸",tested:"テスト完了",checked:"確èªå®Œäº†",fetching:"å–å¾—ä¸",fetched:"å–得完了",waitingForApproval:"承èªå¾…ã¡...",searchedDocsFor:"ドã‚ュメント検索完了:",searchingDocsFor:"ドã‚ュメント検索ä¸ï¼š",searchedFor:"検索完了:",searchingFor:"検索ä¸ï¼š",foundResult_one:"{{count}}ä»¶ã®çµæžœãŒè¦‹ã¤ã‹ã‚Šã¾ã—ãŸ",foundResult_other:"{{count}}ä»¶ã®çµæžœãŒè¦‹ã¤ã‹ã‚Šã¾ã—ãŸ",toggling:"切り替ãˆä¸",toggled:"切り替ãˆå®Œäº†",listing:"一覧å–å¾—ä¸",listed:"一覧å–得完了",approvalRequired:"承èªãŒå¿…è¦ã§ã™",changesPending_one:"{{count}}ä»¶ã®å¤‰æ›´ãŒä¿ç•™ä¸",changesPending_other:"{{count}}ä»¶ã®å¤‰æ›´ãŒä¿ç•™ä¸",approve:"承èª",approving:"承èªä¸...",reject:"æ‹’å¦",rejected:"æ‹’å¦ã•れã¾ã—ãŸ",rejecting:"æ‹’å¦ä¸...",approveCount:"æ‰¿èª ({{count}})",rejectAll:"ã™ã¹ã¦æ‹’å¦",previousApproval:"ã“ã®æ‰¿èªãƒªã‚¯ã‚¨ã‚¹ãƒˆã¯ä»¥å‰ã®ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã‹ã‚‰ã®ã‚‚ã®ã§ã™",query:"クエリ:",updateFallback:"{{entityName}}ã‚’æ›´æ–°",updateFallbackSingle:"{{entityName}}ã®{{fieldName}}ã‚’{{fieldValue}}ã«è¨å®š",updateFallbackMultiple:"{{entityName}}ã®{{fieldName}}ã‚’{{fieldValue}}ã«è¨å®š (+{{extraFields}}ä»¶)",deleteFallback:"{{entityName}}ã®ãƒ¬ã‚³ãƒ¼ãƒ‰ã‚’削除",updateWith:"更新内容:",importComplete:"インãƒãƒ¼ãƒˆå®Œäº†",importingData:"データをインãƒãƒ¼ãƒˆä¸...",percentComplete:"{{percent}}% 完了",recordsProgress:"{{current}} / {{total}} レコード",preparing:"準備ä¸...",otherToolsAfterApproval:"承èªå¾Œã«ä»–ã®ãƒ„ールãŒå®Ÿè¡Œã•れã¾ã™",loadingConfig:"è¨å®šã‚’èªã¿è¾¼ã¿ä¸...",fetchConfigError:"è¨å®šã®èªã¿è¾¼ã¿ã«å¤±æ•—ã—ã¾ã—ãŸã€‚",retry:"å†è©¦è¡Œ",countPackages:"{{num}}個ã®ãƒ‘ッケージ:",updateAllEntityRecords:"<entity>{{entityName}}</entity>ã®å…¨ãƒ¬ã‚³ãƒ¼ãƒ‰ã‚’æ›´æ–°",updateEntityRecordsMatching:"<entity>{{entityName}}</entity>ã®æ¡ä»¶ã«ä¸€è‡´ã™ã‚‹ãƒ¬ã‚³ãƒ¼ãƒ‰ã‚’更新:",deleteAllEntityRecords:"<entity>{{entityName}}</entity>ã®å…¨ãƒ¬ã‚³ãƒ¼ãƒ‰ã‚’削除",deleteEntityRecordsMatching:"<entity>{{entityName}}</entity>ã®æ¡ä»¶ã«ä¸€è‡´ã™ã‚‹ãƒ¬ã‚³ãƒ¼ãƒ‰ã‚’削除:",importDataFromInto:"<file>{{fileName}}</file>ã‹ã‚‰<entity>{{entityName}}</entity>ã«ãƒ‡ãƒ¼ã‚¿ã‚’インãƒãƒ¼ãƒˆ",importDataFromSheetInto:"<file>{{fileName}}</file>(シート:<sheet>{{sheetName}}</sheet>)ã‹ã‚‰<entity>{{entityName}}</entity>ã«ãƒ‡ãƒ¼ã‚¿ã‚’インãƒãƒ¼ãƒˆ",countRecordsIntoEntity:"{{num}}ä»¶ã®ãƒ¬ã‚³ãƒ¼ãƒ‰ã‚’<entity>{{entityName}}</entity>ã«",dataIntoEntity:"データを<entity>{{entityName}}</entity>ã«",countRecordsEntity:"{{num}}ä»¶ã®ãƒ¬ã‚³ãƒ¼ãƒ‰ <entity>{{entityName}}</entity>",allEntityRecords:"<entity>{{entityName}}</entity>ã®å…¨ãƒ¬ã‚³ãƒ¼ãƒ‰",entityRecords:"<entity>{{entityName}}</entity> レコード",grepSearching:'"{{pattern}}"を検索ä¸...',grepSearchComplete:"検索完了",grepFoundResults_one:"{{count}}ä»¶ã®çµæžœãŒè¦‹ã¤ã‹ã‚Šã¾ã—ãŸ",grepFoundResults_other:"{{count}}ä»¶ã®çµæžœãŒè¦‹ã¤ã‹ã‚Šã¾ã—ãŸ",grepInFiles_one:"{{count}}ファイル内",grepInFiles_other:"{{count}}ファイル内"},dH={chatOnlyDescription:"ã“ã®è¨å®šã¯ãƒãƒ£ãƒƒãƒˆã‹ã‚‰ã®ã¿ã‚¢ã‚¯ã‚»ã‚¹ã§ãã¾ã™ã€‚",description:"アプリã®ãƒ‡ãƒ•ォルトランディングページをè¨å®š",chatHint:"変更ã™ã‚‹ã«ã¯ãƒãƒ£ãƒƒãƒˆã§å…¥åŠ›ã—ã¦ãã ã•ã„:",prompt:"メインページを{PageName}ã«å¤‰æ›´ã—ã¦",placeholder:"メインページ",copiedToast:"クリップボードã«ã‚³ãƒ”ーã—ã¾ã—ãŸ"},uH={confirmMessage:"ã“ã®ã‚¢ãƒ—リã®å…¬é–‹ã‚’åœæ¢ã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹ï¼Ÿå†åº¦å…¬é–‹ã™ã‚‹ã¾ã§ã€ãƒ¦ãƒ¼ã‚¶ãƒ¼ã¯ã‚¢ã‚¯ã‚»ã‚¹ã§ããªããªã‚Šã¾ã™ã€‚",successTitle:"æˆåŠŸ",successDescription:"アプリã®å…¬é–‹ãŒæ£å¸¸ã«åœæ¢ã•れã¾ã—ãŸ",errorTitle:"エラー",errorDescription:"アプリã®å…¬é–‹åœæ¢ã«å¤±æ•—ã—ã¾ã—ãŸ",description:"アプリをオフラインã«ã—ã¾ã™ã€‚ã„ã¤ã§ã‚‚å†å…¬é–‹ã§ãã¾ã™ã€‚",unpublishing:"å…¬é–‹åœæ¢ä¸...",button:"å…¬é–‹åœæ¢"},pH={title:"アプリを削除",description:"ã“ã®æ“作ã¯<strong>å…ƒã«æˆ»ã›ã¾ã›ã‚“</strong>。アプリ <strong>{{appSlug}}</strong> ã¨ãã®ã™ã¹ã¦ã®ãƒ‡ãƒ¼ã‚¿ãŒå®Œå…¨ã«å‰Šé™¤ã•れã¾ã™ã€‚",descriptionSimple:"<strong>{{displayName}}</strong> ã¯å®Œå…¨ã«å‰Šé™¤ã•れã¾ã™ã€‚<br/>ã™ã¹ã¦ã®ã‚¢ãƒ—リデータã€å±¥æ´ã€ãƒ¦ãƒ¼ã‚¶ãƒ¼ã€ãƒ‰ãƒ¡ã‚¤ãƒ³ã€é€£æºãŒå®Œå…¨ã«æ¶ˆåŽ»ã•れã¾ã™ã€‚<danger>ã“ã®æ“作ã¯å…ƒã«æˆ»ã›ã¾ã›ã‚“。</danger>",confirmLabel:"確èªã®ãŸã‚ã€ä»¥ä¸‹ã« <strong>{{appSlug}}</strong> ã¨å…¥åŠ›ã—ã¦ãã ã•ã„:",cancel:"ã‚ャンセル",deleteButton:"ã“ã®ã‚¢ãƒ—リを削除",deleting:"削除ä¸...",successTitle:"æˆåŠŸ",successDescription:"ã‚¢ãƒ—ãƒªãŒæ£å¸¸ã«å‰Šé™¤ã•れã¾ã—ãŸ",errorTitle:"エラー",errorDescription:"アプリã®å‰Šé™¤ã«å¤±æ•—ã—ã¾ã—ãŸ"},mH={using:"{{name}}スã‚ルを使用ä¸",failed:"{{name}}スã‚ルã®ä½¿ç”¨ã«å¤±æ•—ã—ã¾ã—ãŸ",used:"{{name}}スã‚ルを使用ã—ã¾ã—ãŸ"},gH={thinkingIdeas:"{{agentName}}ãŒã‚¢ã‚¤ãƒ‡ã‚¢ã‚’考ãˆã¦ã„ã¾ã™...",ideasFrom:"{{agentName}}ã‹ã‚‰ã®ã‚¢ã‚¤ãƒ‡ã‚¢"},hH="自動化を作æˆä¸...",fH="自動化ã®ä½œæˆã«å¤±æ•—ã—ã¾ã—ãŸ",vH="自動化",bH=JSON.parse(`{"sidebar":{"chat":"ãƒãƒ£ãƒƒãƒˆ","continueOnWhatsApp":"WhatsAppã§ç¶šã‘ã‚‹","continueOnTelegram":"Telegramã§ç¶šã‘ã‚‹","continueOnLine":"LINEã§ç¶šã‘ã‚‹","continueOnIMessage":"iMessageã§ç¶šã‘ã‚‹","imessage":"iMessage","brain":"ブレイン","integrations":"インテグレーション","knowledge":"ナレッジ","memory":"記憶","payments":"決済","tasks":"タスク","artifacts":"アーティファクト","settings":"è¨å®š","secretsAndKeys":"シークレットã¨ã‚ー","security":"ã‚»ã‚ュリティ","credits":"クレジット","whatsapp":"WhatsApp","telegram":"Telegram","line":"LINE","files":"ファイル","uploadFile":"ファイルをアップãƒãƒ¼ãƒ‰","refreshFiles":"ファイルを更新","searchFiles":"ファイルを検索...","filesFolders":"{{fileCount}}ファイル · {{folderCount}}フォルダ","toolsPermission":"ツール権é™","apiDocs":"API","channels":"ãƒãƒ£ãƒãƒ«","feedback":"フィードãƒãƒƒã‚¯ã‚’é€ã‚‹","agentSettings":"エージェントè¨å®š","dangerZone":"å±é™ºã‚¾ãƒ¼ãƒ³"},"filePanel":{"source":"ソース","preview":"プレビュー","save":"ä¿å˜","saveAndRedeploy":"ä¿å˜ã—ã¦å†ãƒ‡ãƒ—ãƒã‚¤","fileSaved":"ファイルをä¿å˜ã—ã¾ã—ãŸ","functionRedeployed":"関数をä¿å˜ã—å†ãƒ‡ãƒ—ãƒã‚¤ã—ã¾ã—ãŸ","failedToSaveFile":"ファイルã®ä¿å˜ã«å¤±æ•—ã—ã¾ã—ãŸ","failedToRedeploy":"関数ã®å†ãƒ‡ãƒ—ãƒã‚¤ã«å¤±æ•—ã—ã¾ã—ãŸ","failedToReadFile":"ファイルã®èªã¿è¾¼ã¿ã«å¤±æ•—ã—ã¾ã—ãŸ"},"modelPicker":{"automatic":"自動","automaticDescription":"å„ãƒªã‚¯ã‚¨ã‚¹ãƒˆã«æœ€é©ãªAIãƒ¢ãƒ‡ãƒ«ã‚’è‡ªå‹•é¸æŠž","manual":"手動","manualDescription":"特定ã®AIãƒ¢ãƒ‡ãƒ«ã‚’é¸æŠžã—ã¾ã™ã€‚","manualCreditNote":"モデルã«ã‚ˆã£ã¦ã‚¯ãƒ¬ã‚¸ãƒƒãƒˆä½¿ç”¨é‡ãŒç•°ãªã‚‹å ´åˆãŒã‚りã¾ã™","manualDisabledDescription":"特定ã®AIãƒ¢ãƒ‡ãƒ«ã‚’é¸æŠžï¼ˆ{{models}})。Builderプラン以上ã§åˆ©ç”¨å¯èƒ½ã€‚","builderPlus":"Builder+","upgradeToSelect":"AIãƒ¢ãƒ‡ãƒ«ã‚’é¸æŠžã™ã‚‹ã«ã¯ã‚¢ãƒƒãƒ—グレードã—ã¦ãã ã•ã„"},"chat":{"loadingAgent":"エージェントをèªã¿è¾¼ã¿ä¸...","agentNotFound":"エージェントãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“","waitingForAuth":"èªè¨¼ãƒˆãƒ¼ã‚¯ãƒ³ã‚’待機ä¸...","anErrorOccurred":"エラーãŒç™ºç”Ÿã—ã¾ã—ãŸ","aiModelUpdated":"AIモデルを更新ã—ã¾ã—ãŸ","failedToUpdateModel":"AIãƒ¢ãƒ‡ãƒ«ã®æ›´æ–°ã«å¤±æ•—ã—ã¾ã—ãŸ","hideSidebar":"サイドãƒãƒ¼ã‚’éžè¡¨ç¤º","showSidebar":"サイドãƒãƒ¼ã‚’表示","darkMode":"ダークモードã«åˆ‡ã‚Šæ›¿ãˆ","lightMode":"ライトモードã«åˆ‡ã‚Šæ›¿ãˆ","dropFileHere":"ã“ã“ã«ãƒ•ァイルをドãƒãƒƒãƒ—","imagesDocsAndMore":"ç”»åƒã€ãƒ‰ã‚ュメントãªã©","loadPreviousMessages":"以å‰ã®ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã‚’èªã¿è¾¼ã‚€","somethingWentWrong":"å•題ãŒç™ºç”Ÿã—ã¾ã—ãŸ","retry":"å†è©¦è¡Œ","chatFromApp":"ãŠä½¿ã„ã®ã‚¢ãƒ—リã‹ã‚‰ãƒãƒ£ãƒƒãƒˆã§ãã¾ã™","attachFile":"ファイルを添付ã™ã‚‹","typeMessage":"メッセージを入力...","toggleLiveBrowser":"ライブブラウザを切り替ãˆ","noActiveBrowser":"アクティブãªãƒ–ラウザセッションãŒã‚りã¾ã›ã‚“","stopGenerating":"生æˆã‚’åœæ¢","suggestions":"ææ¡ˆ","liveBrowser":"ライブブラウザ","fullScreen":"全画é¢","exitFullScreen":"全画é¢ã‚’終了","closeBrowser":"ブラウザを閉ã˜ã‚‹","live":"ライブ","expandBrowser":"ブラウザを展開","failedToStartConversation":"会話を開始ã§ãã¾ã›ã‚“ã§ã—㟠— 手動ã§ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã‚’é€ä¿¡ã—ã¦ã¿ã¦ãã ã•ã„。","failedToLoadConversation":"会話ã®èªã¿è¾¼ã¿ã«å¤±æ•—ã—ã¾ã—ãŸ","failedToUploadFile":"ファイルã®ã‚¢ãƒƒãƒ—ãƒãƒ¼ãƒ‰ã«å¤±æ•—ã—ã¾ã—ãŸ","tooManyFiles":"1メッセージã«ã¤ã最大{{max}}ファイルã¾ã§æ·»ä»˜ã§ãã¾ã™","failedToSendMessage":"メッセージã®é€ä¿¡ã«å¤±æ•—ã—ã¾ã—ãŸ","failedToStopAgent":"エージェントã®åœæ¢ã«å¤±æ•—ã—ã¾ã—ãŸ","queued":"å¾…æ©Ÿä¸ ({{count}})","queueFull":"メッセージã®å¾…機ãŒã„ã£ã±ã„ã§ã™ã€‚エージェントã®å‡¦ç†å®Œäº†ã‚’ãŠå¾…ã¡ãã ã•ã„。","failedToEditQueued":"待機ä¸ã®ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã®ç·¨é›†ã«å¤±æ•—ã—ã¾ã—ãŸ","failedToDeleteQueued":"待機ä¸ã®ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã®å‰Šé™¤ã«å¤±æ•—ã—ã¾ã—ãŸ","deleteMessage":"メッセージを削除","failedToDeleteMessage":"メッセージã®å‰Šé™¤ã«å¤±æ•—ã—ã¾ã—ãŸ","today":"今日","yesterday":"昨日","thinking":"考ãˆä¸...","you":"ã‚ãªãŸ","failedToSubmitToolInput":"ツール入力ã®é€ä¿¡ã«å¤±æ•—ã—ã¾ã—ãŸ","whatsInImage":"ã“ã®ç”»åƒã«ã¯ä½•ãŒã‚りã¾ã™ã‹ï¼Ÿ","heresAFile":"ファイルã§ã™: {{fileName}}","heresAFileAndMore":"ファイルã§ã™: {{fileName}} (ä»–{{count}}ä»¶)","heresFiles":"{{count}}個ã®ãƒ•ァイルã§ã™","whatsInTheseImages":"ã“れらã®{{count}}æžšã®ç”»åƒã«ã¯ä½•ãŒã‚りã¾ã™ã‹ï¼Ÿ","creditsRunningLow":"ã‚¯ãƒ¬ã‚¸ãƒƒãƒˆãŒæ®‹ã‚Šã‚ãšã‹ã§ã™ã€‚","purchaseMoreCredits":"ã‚¯ãƒ¬ã‚¸ãƒƒãƒˆã‚’è¿½åŠ è³¼å…¥ →","saleDiscount":"対象ã®å¹´é–“プランを{{discount}}オフã§è³¼å…¥","limitedTimeOffer":"期間é™å®šã‚ªãƒ•ァー","upgradePlan":"プランをアップグレード","reply":"返信","copyMessage":"コピー","copied":"コピーã—ã¾ã—ãŸ"},"files":{"uploaded":"{{fileName}}をアップãƒãƒ¼ãƒ‰ã—ã¾ã—ãŸ","failedToUpload":"{{fileName}}ã®ã‚¢ãƒƒãƒ—ãƒãƒ¼ãƒ‰ã«å¤±æ•—ã—ã¾ã—ãŸ","failedToRead":"{{fileName}}ã®èªã¿è¾¼ã¿ã«å¤±æ•—ã—ã¾ã—ãŸ"},"dashboard":{"title":"ダッシュボード","subtitle":"ã‚¨ãƒ¼ã‚¸ã‚§ãƒ³ãƒˆã®æ¦‚è¦ã€‚","created":"{{date}}ã«ä½œæˆ","memories":"記憶","filesLabel":"ファイル","folders":"フォルダ","agentMemory":"エージェントã®è¨˜æ†¶","noMemoriesYet":"ã¾ã 記憶ãŒã‚りã¾ã›ã‚“","noMemoriesDescription":"ãƒãƒ£ãƒƒãƒˆã‚’通ã˜ã¦ã‚¨ãƒ¼ã‚¸ã‚§ãƒ³ãƒˆãŒå¦ç¿’ã—ãŸæƒ…å ±ãŒã“ã“ã«ä¿å˜ã•れã¾ã™ã€‚"},"creditsTab":{"title":"クレジット","description":"クレジット使用é‡ã¨è«‹æ±‚ã®è©³ç´°ãŒã“ã“ã«è¡¨ç¤ºã•れã¾ã™ã€‚"},"settingsTab":{"settings":"è¨å®š","secrets":"シークレット","security":"ã‚»ã‚ュリティ","creditCard":"クレジットカード"},"agentSettingsTab":{"title":"エージェントè¨å®š","subtitle":"エージェントã®å‹•作をè¨å®šã—ã¾ã™ã€‚","cloneTitle":"エージェントを複製","cloneDescription":"ã™ã¹ã¦ã®è¨å®šã€ã‚¨ãƒ³ãƒ†ã‚£ãƒ†ã‚£ã€ãƒãƒƒã‚¯ã‚¨ãƒ³ãƒ‰é–¢æ•°ã‚’å«ã‚€ã“ã®ã‚¨ãƒ¼ã‚¸ã‚§ãƒ³ãƒˆã®ã‚³ãƒ”ーを作æˆã—ã¾ã™ã€‚","cloneButton":"エージェントを複製"},"clonePage":{"back":"戻る","title":"エージェントを複製","subtitle":"複製ã™ã‚‹ã‚¨ãƒ¼ã‚¸ã‚§ãƒ³ãƒˆã«å«ã‚ã‚‹å†…å®¹ã‚’é¸æŠžã—ã¦ãã ã•ã„。","optionChat":"ãƒãƒ£ãƒƒãƒˆå±¥æ´","optionChatDesc":"ビルダーã®ä¼šè©±å±¥æ´ã‚’æ–°ã—ã„エージェントã«ã‚³ãƒ”ーã—ã¾ã™ã€‚","optionSkills":"スã‚ル","optionSkillsDesc":"ãƒãƒƒã‚¯ã‚¨ãƒ³ãƒ‰é–¢æ•°ã€ã‚¤ãƒ³ãƒ†ã‚°ãƒ¬ãƒ¼ã‚·ãƒ§ãƒ³ã€ãƒ„ールè¨å®šã‚’コピーã—ã¾ã™ã€‚","optionTasks":"タスク","optionTasksDesc":"自動化をコピーã—ã¾ã™ï¼ˆã‚¹ã‚±ã‚¸ãƒ¥ãƒ¼ãƒ«ã€ã‚¨ãƒ³ãƒ†ã‚£ãƒ†ã‚£ãƒˆãƒªã‚¬ãƒ¼ã€ã‚³ãƒã‚¯ã‚¿ãƒ™ãƒ¼ã‚¹ï¼‰ã€‚","optionSecrets":"APIã‚ー","optionSecretsDesc":"ä¿å˜ã•れãŸã‚·ãƒ¼ã‚¯ãƒ¬ãƒƒãƒˆã¨APIã‚ーを新ã—ã„エージェントã«ã‚³ãƒ”ーã—ã¾ã™ã€‚","cloneButton":"エージェントを複製","cloning":"複製ä¸...","cloneError":"エージェントã®è¤‡è£½ã«å¤±æ•—ã—ã¾ã—ãŸ"},"securityTab":{"title":"ã‚»ã‚ュリティ","subtitle":"ã‚»ã‚ュリティスã‚ャンを実行ã—ã¦æ½œåœ¨çš„ãªè„†å¼±æ€§ã‚’検出ã—ã¾ã™ã€‚","scanning":"スã‚ャンä¸...","runScan":"ã‚»ã‚ュリティスã‚ャンを実行","noIssues":"å•題ã¯è¦‹ã¤ã‹ã‚Šã¾ã›ã‚“ã§ã—ãŸ","agentSecure":"エージェントã¯å®‰å…¨ã§ã™ã€‚","severityCount":"{{severity}}ã®é‡å¤§åº¦","idleMessage":"「セã‚ュリティスã‚ャンを実行ã€ã‚’クリックã—ã¦ã‚¨ãƒ¼ã‚¸ã‚§ãƒ³ãƒˆã®è„†å¼±æ€§ã‚’確èªã—ã¦ãã ã•ã„。","scanFailed":"ã‚»ã‚ュリティスã‚ャンã«å¤±æ•—ã—ã¾ã—ãŸ"},"secretsTab":{"title":"シークレット","subtitle":"エージェントã®ãƒãƒƒã‚¯ã‚¨ãƒ³ãƒ‰é–¢æ•°ã§åˆ©ç”¨å¯èƒ½ãªç’°å¢ƒå¤‰æ•°ã€‚","noSecrets":"ã¾ã シークレットãŒã‚りã¾ã›ã‚“","addSecret":"ã‚·ãƒ¼ã‚¯ãƒ¬ãƒƒãƒˆã‚’è¿½åŠ ","secretNamePlaceholder":"SECRET_NAME","valuePlaceholder":"値","add":"è¿½åŠ ","secretSaved":"シークレット{{name}}ã‚’ä¿å˜ã—ã¾ã—ãŸ","failedToSave":"シークレットã®ä¿å˜ã«å¤±æ•—ã—ã¾ã—ãŸ","secretDeleted":"シークレット{{name}}を削除ã—ã¾ã—ãŸ","failedToDelete":"シークレットã®å‰Šé™¤ã«å¤±æ•—ã—ã¾ã—ãŸ","failedToLoad":"シークレットã®èªã¿è¾¼ã¿ã«å¤±æ•—ã—ã¾ã—ãŸ"},"billingTab":{"title":"エージェントã®ã‚¯ãƒ¬ã‚¸ãƒƒãƒˆã‚«ãƒ¼ãƒ‰","subtitle":"エージェントã®ä½¿ç”¨é‡ã¨è«‹æ±‚。","monthlyUsage":"月間使用é‡","extraCredits":"+{{count}}ã®è¿½åŠ ã‚¯ãƒ¬ã‚¸ãƒƒãƒˆãŒåˆ©ç”¨å¯èƒ½","pastDue":"æ”¯æ‰•ã„æœŸé™è¶…éŽ","pastDueDescription":"サービスã®ä¸æ–ã‚’é¿ã‘ã‚‹ãŸã‚ã€æ”¯æ‰•ã„æ–¹æ³•ã‚’æ›´æ–°ã—ã¦ãã ã•ã„。","goodStanding":"ã‚¢ã‚«ã‚¦ãƒ³ãƒˆã¯æ£å¸¸ã§ã™","currentPeriod":"ç¾åœ¨ã®æœŸé–“:","nextPeriod":"æ¬¡ã®æœŸé–“開始:","manageBilling":"請求管ç†","failedToLoad":"使用é‡ãƒ‡ãƒ¼ã‚¿ã®èªã¿è¾¼ã¿ã«å¤±æ•—ã—ã¾ã—ãŸ","unableToLoad":"請求データをèªã¿è¾¼ã‚ã¾ã›ã‚“"},"apiDocsTab":{"title":"API リファレンス","subtitle":"REST API を使ã£ã¦ãƒ—ãƒã‚°ãƒ©ãƒ ã‹ã‚‰ã‚¨ãƒ¼ã‚¸ã‚§ãƒ³ãƒˆã¨ã‚„りå–りã§ãã¾ã™ã€‚会話ã®ä½œæˆã€ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸é€ä¿¡ã€ãƒ¡ãƒ¢ãƒªç®¡ç†ã‚’ä»»æ„ã®ã‚¢ãƒ—リケーションã‹ã‚‰è¡Œãˆã¾ã™ã€‚","baseUrl":"ベース URL","authentication":"èªè¨¼","authDescription":"リクエストヘッダー㫠API ã‚ーをå«ã‚ã¦ãã ã•ã„:","authAlternative":"ã¾ãŸã¯ã€ã‚¯ã‚¨ãƒªãƒ‘ラメータã¨ã—ã¦æ¸¡ã™ã“ã¨ã‚‚ã§ãã¾ã™:","quickStart":"クイックスタート","quickStartDescription":"API 経由ã§ã‚¨ãƒ¼ã‚¸ã‚§ãƒ³ãƒˆã¨ä¼šè©±ã‚’å§‹ã‚ã‚‹ã«ã¯ã€æ¬¡ã®æ‰‹é †ã«å¾“ã£ã¦ãã ã•ã„:","step1CreateConversation":"1. 会話を作æˆ","step2SendMessage":"2. メッセージをé€ä¿¡","step3ListConversations":"3. 会話一覧をå–å¾—","endpoints":"API エンドãƒã‚¤ãƒ³ãƒˆ","requestBody":"リクエストボディ","listConversationsDesc":"èªè¨¼æ¸ˆã¿ãƒ¦ãƒ¼ã‚¶ãƒ¼ã®ã™ã¹ã¦ã®ä¼šè©±ã‚’一覧表示ã—ã¾ã™","listConversationsNote":"会話ã¯ä½œæˆæ—¥æ™‚é †ã§è¿”ã•れã¾ã™ã€‚クエリパラメータã§ãƒšãƒ¼ã‚¸ãƒãƒ¼ã‚·ãƒ§ãƒ³ã‚’サãƒãƒ¼ãƒˆã—ã¾ã™ã€‚","getConversationDesc":"ã™ã¹ã¦ã®ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã‚’å«ã‚€ç‰¹å®šã®ä¼šè©±ã‚’å–å¾—ã—ã¾ã™","createConversationDesc":"エージェントã¨ã®æ–°ã—ã„会話を作æˆã—ã¾ã™","sendMessageDesc":"メッセージをé€ä¿¡ã—ã¦ã‚¨ãƒ¼ã‚¸ã‚§ãƒ³ãƒˆã®å¿œç”ã‚’å–å¾—ã—ã¾ã™","sendMessageNote":"エージェントãŒãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã‚’処ç†ã—ã¦å¿œç”ã‚’è¿”ã—ã¾ã™ã€‚ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã®æœ€å¤§é•·ã¯ 8000 æ–‡å—ã§ã™ã€‚","deleteMessageDesc":"会話ã‹ã‚‰ç‰¹å®šã®ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã‚’削除ã—ã¾ã™","listMemoryDesc":"エージェントã®ãƒ¡ãƒ¢ãƒªã‚¢ã‚¤ãƒ†ãƒ を一覧表示ã—ã¾ã™","deleteMemoryDesc":"特定ã®ãƒ¡ãƒ¢ãƒªã‚¢ã‚¤ãƒ†ãƒ を削除ã—ã¾ã™","responseFormat":"レスãƒãƒ³ã‚¹å½¢å¼","responseFormatDescription":"会話ã¯ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸é…列をå«ã‚€ JSON オブジェクトã¨ã—ã¦è¿”ã•れã¾ã™:","rateLimits":"レート制é™","rateLimitsDescription":"API リクエストã«ã¯ãƒ¦ãƒ¼ã‚¶ãƒ¼ã”ã¨ã®ãƒ¬ãƒ¼ãƒˆåˆ¶é™ãŒã‚りã¾ã™ã€‚上é™ã‚’è¶…ãˆã‚‹ã¨ 429 ステータスコードãŒè¿”ã•れã¾ã™ã€‚å°‘ã—å¾…ã£ã¦ã‹ã‚‰å†è©¦è¡Œã—ã¦ãã ã•ã„。","errorCodes":"エラーコード","error401":"未èªè¨¼ - API ã‚ーãŒç„¡åйã¾ãŸã¯æŒ‡å®šã•れã¦ã„ã¾ã›ã‚“","error403":"ã‚¢ã‚¯ã‚»ã‚¹ç¦æ¢ - ã“ã®ãƒªã‚½ãƒ¼ã‚¹ã«ã‚¢ã‚¯ã‚»ã‚¹ã§ãã¾ã›ã‚“","error400":"䏿£ãªãƒªã‚¯ã‚¨ã‚¹ãƒˆ - 無効ãªå…¥åŠ›ï¼ˆä¾‹: メッセージãŒé•·ã™ãŽã‚‹ï¼‰","error404":"見ã¤ã‹ã‚Šã¾ã›ã‚“ - 会話ã¾ãŸã¯ãƒªã‚½ãƒ¼ã‚¹ãŒå˜åœ¨ã—ã¾ã›ã‚“","copy":"コピー"},"toolsPermissionTab":{"title":"ツール権é™","subtitle":"ç‰¹å®šã®æ“作を確èªãªã—ã§å®Ÿè¡Œã§ãるよã†ã«ã—ã¾ã™ã€‚","warning":"有効ã«ã™ã‚‹ã¨ã€ã‚¨ãƒ¼ã‚¸ã‚§ãƒ³ãƒˆã¯ã“ã‚Œã‚‰ã®æ“作を自動的ã«å®Ÿè¡Œã—ã¾ã™ã€‚データセã‚ュリティルールã¯å¼•ãç¶šãé©ç”¨ã•れã¾ã™ã€‚","updateData":"ãƒ‡ãƒ¼ã‚¿ã®æ›´æ–°","updateDataDescription":"エージェントãŒç¢ºèªãªã—ã§ãƒ¬ã‚³ãƒ¼ãƒ‰ã‚’æ›´æ–°ã§ãるよã†ã«ã—ã¾ã™ã€‚","deleteData":"データã®å‰Šé™¤","deleteDataDescription":"エージェントãŒç¢ºèªãªã—ã§ãƒ¬ã‚³ãƒ¼ãƒ‰ã‚’削除ã§ãるよã†ã«ã—ã¾ã™ã€‚","failedToSave":"è¨å®šã®ä¿å˜ã«å¤±æ•—ã—ã¾ã—ãŸ","effectNote":"è¨å®šã¯ã™ãã«åæ˜ ã•れã¾ã™ã€‚AIã®å¿œç”ãŒå¸¸ã«ãƒ«ãƒ¼ãƒ«ã«å®Œå…¨ã«å¾“ã†ã¨ã¯é™ã‚Šã¾ã›ã‚“。","connectorRulesTitle":"コãƒã‚¯ã‚¿ãƒ¼ãƒ«ãƒ¼ãƒ«","connectorRulesSubtitle":"å„サービスã§ã‚¨ãƒ¼ã‚¸ã‚§ãƒ³ãƒˆãŒã§ãã‚‹ã“ã¨ã¨ã§ããªã„ã“ã¨ã‚’指定ã—ã¾ã™ã€‚","connectorRulePlaceholder":"例: メールã®é–²è¦§ã®ã¿ã€é€ä¿¡ã‚„削除ã¯ç¦æ¢","loadingConnectors":"コãƒã‚¯ã‚¿ãƒ¼ã‚’èªã¿è¾¼ã¿ä¸...","saveRules":"ä¿å˜","rulesSaved":"コãƒã‚¯ã‚¿ãƒ¼ãƒ«ãƒ¼ãƒ«ã‚’ä¿å˜ã—ã¾ã—ãŸ"},"knowledgeTab":{"noFiles":"ã¾ã ナレッジファイルãŒã‚りã¾ã›ã‚“","noFilesDescription":"エージェントã¨ãƒãƒ£ãƒƒãƒˆã‚’å§‹ã‚ã¦ã€ã‚¢ã‚¤ãƒ‡ãƒ³ãƒ†ã‚£ãƒ†ã‚£ã¨ãƒŠãƒ¬ãƒƒã‚¸ã‚’構築ã—ã¾ã—ょã†","identity":"アイデンティティ"},"memoryTab":{"title":"記憶","subtitle":"エージェントãŒã‚ãªãŸã¨ä¼šè©±ã«ã¤ã„ã¦çŸ¥ã£ã¦ã„ã‚‹ã“ã¨ã€‚","emptyTitle":"ã¾ã 何もã‚りã¾ã›ã‚“","emptyDescription":"ãƒãƒ£ãƒƒãƒˆã™ã‚‹ã«ã¤ã‚Œã¦ã€ã‚¨ãƒ¼ã‚¸ã‚§ãƒ³ãƒˆã¯è‡ªå‹•çš„ã«è¨˜æ†¶ã‚’構築ã—ã¾ã™ — 最近ã®ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã®ã‚³ãƒ³ãƒ†ã‚ストã€ã‚»ãƒƒã‚·ãƒ§ãƒ³ã®è¦ç´„ã€é‡è¦ãªäº‹å®Ÿã€‚","addEntry":"è¿½åŠ ","saveEntry":"ä¿å˜","cancelEdit":"ã‚ャンセル","titlePlaceholder":"エージェントã«ä½•を覚ãˆã•ã›ã¾ã™ã‹ï¼Ÿ","contentPlaceholder":"è©³ç´°ã‚’è¿½åŠ ï¼ˆä»»æ„)","saved":"記憶を更新ã—ã¾ã—ãŸ","failedToSave":"æ›´æ–°ã«å¤±æ•—ã—ã¾ã—ãŸ","factsHeading":"ä¿å˜ã•れãŸäº‹å®Ÿ","factsDescription":"ã™ã¹ã¦ã®ä¼šè©±ã§ä¿æŒã•れるé‡è¦ãªäº‹å®Ÿã€‚","noMemories":"ä¿å˜ã•れãŸäº‹å®Ÿã¯ã‚りã¾ã›ã‚“","noMemoriesDescription":"é‡è¦ãªäº‹å®Ÿã¯ä¼šè©±ã‹ã‚‰è‡ªå‹•çš„ã«æŠ½å‡ºã•れるã‹ã€æ‰‹å‹•ã§è¿½åŠ ã§ãã¾ã™ã€‚","shortTermHeading":"çŸæœŸè¨˜æ†¶","shortTermDescription":"ç¾åœ¨ã®ä¼šè©±ã®ã‚³ãƒ³ãƒ†ã‚ストã€ç´„10メッセージã”ã¨ã«æ›´æ–°ã€‚","shortTermUpdated":"更新済ã¿","shortTermDeleted":"削除済ã¿","deleteShortTermConfirm":"ã“ã®ã‚³ãƒ³ãƒ†ã‚ストを削除ã—ã¾ã™ã‹ï¼Ÿã‚¨ãƒ¼ã‚¸ã‚§ãƒ³ãƒˆã¯ã“ã®ä¼šè©±å±¥æ´ã®ä¸€éƒ¨ã‚’失ã„ã¾ã™ã€‚","longTermHeading":"日次セッション","longTermDescription":"儿—¥ã®ä¼šè©±ã®è¦ç´„。","longTermDeleted":"削除済ã¿","deleteLongTermConfirm":"ã“ã®æ—¥ã®ã‚»ãƒƒã‚·ãƒ§ãƒ³ã‚’削除ã—ã¾ã™ã‹ï¼Ÿã‚¨ãƒ¼ã‚¸ã‚§ãƒ³ãƒˆã¯ã“ã®ä¼šè©±å±¥æ´ã«ã‚¢ã‚¯ã‚»ã‚¹ã§ããªããªã‚Šã¾ã™ã€‚","messages":"{{count}}ä»¶","emptyTranscript":"空ã®ãƒˆãƒ©ãƒ³ã‚¹ã‚¯ãƒªãƒ—ト","noText":"(テã‚ストãªã—)","usedTools":"使用: {{tools}}"},"telegramTab":{"title":"Telegram","connected":"TelegramãƒœãƒƒãƒˆãŒæŽ¥ç¶šã•れã€ç¨¼åƒä¸ã§ã™ã€‚","notConnected":"Telegramボットを接続ã—ã¦ã€ãƒ¦ãƒ¼ã‚¶ãƒ¼ãŒã‚¨ãƒ¼ã‚¸ã‚§ãƒ³ãƒˆã¨ãƒãƒ£ãƒƒãƒˆã§ãるよã†ã«ã—ã¾ã™ã€‚","verifyBanner":"下ã®ãƒœã‚¿ãƒ³ã‚’クリックã—ã¦ã€Telegramã§æœ¬äººç¢ºèªã‚’行ã£ã¦ãã ã•ã„。ã“れã«ã‚ˆã‚Šã€ã“ã®ãƒœãƒƒãƒˆã‚’使用ã§ãã‚‹ã®ã¯ã‚ãªãŸã ã‘ã«ãªã‚Šã¾ã™ã€‚","verifyOnTelegram":"Telegramã§ç¢ºèª","connectedBot":"接続済ã¿ãƒœãƒƒãƒˆ","botName":"ボットå","username":"ユーザーå","status":"ステータス","active":"アクティブ","openTelegram":"Telegramã§é–‹ã","scanQr":"スマートフォンã§QRコードをスã‚ャンã—ã¦ã€Telegramã§ãƒœãƒƒãƒˆã‚’é–‹ãã¾ã™ã€‚","disconnect":"切æ–","disconnectConfirm":"ã“ã®Telegramボットを切æ–ã—ã¾ã™ã‹ï¼Ÿãƒ¦ãƒ¼ã‚¶ãƒ¼ã¯å¿œç”ã‚’å—ã‘å–れãªããªã‚Šã¾ã™ã€‚","disconnected":"Telegramボットを切æ–ã—ã¾ã—ãŸ","failedToDisconnect":"切æ–ã«å¤±æ•—ã—ã¾ã—ãŸ","howItWorks":"仕組ã¿","step1":"ユーザーãŒTelegramã§ãƒœãƒƒãƒˆã‚’é–‹ãã€/startã‚’é€ä¿¡ã—ã¦é–‹å§‹ã—ã¾ã™ã€‚","step2":"ã™ã¹ã¦ã®ãƒ†ã‚ストメッセージãŒã‚¨ãƒ¼ã‚¸ã‚§ãƒ³ãƒˆã«ã‚ˆã£ã¦å‡¦ç†ã•れã¾ã™ã€‚","step3":"エージェントã®å¿œç”ãŒTelegramãƒãƒ£ãƒƒãƒˆã«é€ä¿¡ã•れã¾ã™ã€‚"},"telegramSetup":{"connectTitle":"Telegramを接続","connectDescription":"ワンクリックã§ã‚¨ãƒ¼ã‚¸ã‚§ãƒ³ãƒˆç”¨ã®Telegramボットを作æˆã—ã¾ã™ã€‚自動的ã«è¨å®šã•れã€ã™ãã«ãƒãƒ£ãƒƒãƒˆã§ãるよã†ã«ãªã‚Šã¾ã™ã€‚","autoCreateButton":"Telegramボットを接続","autoWaitingTitle":"ボット作æˆã‚’å¾…ã£ã¦ã„ã¾ã™...","autoWaitingDescription":"Telegramã§ãƒœãƒƒãƒˆã‚’確èªã—ã¦ãã ã•ã„。ãã®å¾Œã€è‡ªå‹•çš„ã«ã™ã¹ã¦è¨å®šã—ã¾ã™ã€‚","autoTimeoutError":"ボット作æˆãŒã‚¿ã‚¤ãƒ アウトã—ã¾ã—ãŸã€‚å†è©¦è¡Œã™ã‚‹ã‹ã€æ‰‹å‹•セットアップをã”利用ãã ã•ã„。","autoExpiredError":"ボットã®ä½œæˆã«å¤±æ•—ã—ã¾ã—ãŸã€‚ã‚‚ã†ä¸€åº¦ãŠè©¦ã—ãã ã•ã„。","cancel":"ã‚ャンセル","alreadyHaveBot":"ã™ã§ã«ãƒœãƒƒãƒˆãƒˆãƒ¼ã‚¯ãƒ³ã‚’æŒã£ã¦ã„ã¾ã™","pasteTokenTitle":"ãƒˆãƒ¼ã‚¯ãƒ³ã§æŽ¥ç¶š","manualInstructions":"Telegramã®@BotFatherã§ãƒœãƒƒãƒˆã‚’作æˆã—ã€ãƒˆãƒ¼ã‚¯ãƒ³ã‚’ã“ã“ã«è²¼ã‚Šä»˜ã‘ã¦ãã ã•ã„。","tokenPlaceholder":"ボットトークンを貼り付ã‘...","tokenExtracted":"トークンを抽出ã—ã¾ã—ãŸ","tokenNotFound":"有効ãªãƒˆãƒ¼ã‚¯ãƒ³ãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“","connectBot":"接続","connecting":"接続ä¸...","successTitle":"ãƒœãƒƒãƒˆãŒæŽ¥ç¶šã•れã¾ã—ãŸï¼","openTelegram":"Telegramã§é–‹ã","failedToConnect":"ãƒœãƒƒãƒˆã®æŽ¥ç¶šã«å¤±æ•—ã—ã¾ã—ãŸ"},"whatsappTab":{"title":"WhatsApp","subtitle":"WhatsAppを通ã˜ã¦ãƒ¦ãƒ¼ã‚¶ãƒ¼ãŒã‚¨ãƒ¼ã‚¸ã‚§ãƒ³ãƒˆã¨ãƒãƒ£ãƒƒãƒˆã§ãるよã†ã«ã—ã¾ã™ã€‚","connectTitle":"WhatsAppを接続","connectDescription":"下ã®ãƒœã‚¿ãƒ³ã‚’クリックã—ã¦WhatsAppã‚’é–‹ãã€æŽ¥ç¶šã‚’æœ‰åŠ¹ã«ã—ã¾ã™ã€‚エージェントã®WhatsApp番å·ã«é€ä¿¡ã™ã‚‹ã‚¢ã‚¯ãƒ†ã‚£ãƒ™ãƒ¼ã‚·ãƒ§ãƒ³ã‚³ãƒ¼ãƒ‰ãŒå±Šãã¾ã™ã€‚","openWhatsApp":"WhatsAppã‚’é–‹ã","scanQr":"スマートフォンã§QRコードをスã‚ャンã—ã¦ã€WhatsAppã§ä¼šè©±ã‚’é–‹ãã¾ã™ã€‚","howItWorks":"仕組ã¿","step1":"「WhatsAppã‚’é–‹ãã€ã‚’クリック — アクティベーションコードãŒå…¥åŠ›æ¸ˆã¿ã®çŠ¶æ…‹ã§WhatsAppãŒé–‹ãã¾ã™ã€‚","step2":"アクティベーションコードをé€ä¿¡ã—ã¦æŽ¥ç¶šã‚’é–‹å§‹ã—ã¾ã™ã€‚","step3":"接続後ã€WhatsAppã§é€ä¿¡ã—ãŸã™ã¹ã¦ã®ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ãŒã‚¨ãƒ¼ã‚¸ã‚§ãƒ³ãƒˆã«ã‚ˆã£ã¦å‡¦ç†ã•れã¾ã™ã€‚"},"lineTab":{"title":"LINE","subtitle":"LINEã§ã‚¨ãƒ¼ã‚¸ã‚§ãƒ³ãƒˆã¨ãƒãƒ£ãƒƒãƒˆã—ã¾ã—ょã†ã€‚","connectTitle":"LINEã§æŽ¥ç¶š","connectDescription":"アクティベーションコードを生æˆã—ã€ã‚¹ãƒžãƒ›ã§QRコードをèªã¿å–ã£ã¦ãƒœãƒƒãƒˆã‚’è¿½åŠ ã—ã¦ã€ã‚³ãƒ¼ãƒ‰ã‚’é€ä¿¡ã—ã¦ãã ã•ã„。","generateCode":"アクティベーションコードを生æˆ","scanQrLabel":"LINEã§ã‚¹ã‚ャン","scanQrHint":"スマホã®LINEã§ã“ã®QRコードをèªã¿å–ã£ã¦ãƒœãƒƒãƒˆã‚’å‹ã ã¡è¿½åŠ ã—ã¦ãã ã•ã„。","activationCodeLabel":"アクティベーションコード","sendCodeHint":"ãƒœãƒƒãƒˆã‚’è¿½åŠ ã—ãŸå¾Œã€ã“ã®ã‚³ãƒ¼ãƒ‰ã‚’メッセージã¨ã—ã¦é€ä¿¡ã—ã¦ãã ã•ã„。","generating":"生æˆä¸...","regenerate":"æ–°ã—ã„コードを生æˆ","codeCopied":"コードをコピーã—ã¾ã—ãŸï¼","codeExpiry":"30åˆ†ã§æœ‰åŠ¹æœŸé™åˆ‡ã‚Œ","failedToGenerate":"LINEã¸ã®æŽ¥ç¶šã«å¤±æ•—ã—ã¾ã—ãŸ","howItWorks":"仕組ã¿","step1":"「アクティベーションコードを生æˆã€ã‚’クリックã—ã¦ã‚³ãƒ¼ãƒ‰ã¨QRã‚’å–å¾—ã—ã¾ã™ã€‚","step2":"スマホã®LINEã§QRコードをèªã¿å–ã£ã¦ãƒœãƒƒãƒˆã‚’å‹ã ã¡è¿½åŠ ã—ã¾ã™ã€‚","step3":"アクティベーションコードをボットã«ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã¨ã—ã¦é€ä¿¡ã—ã¦æŽ¥ç¶šã—ã¾ã™ã€‚"},"imessageTab":{"title":"iMessage","subtitle":"Chat with your agent via iMessage.","connectTitle":"Connect via iMessage","connectDescription":"Click the button below and iMessage will open with the activation code ready to send.","connectButton":"Connect via iMessage","manualFallback":"Didn't open automatically? Send the code manually:","phoneNumberLabel":"Text this number","activationCodeLabel":"Activation code","codeCopied":"Code copied!","codeExpiry":"Expires in 30 minutes","failedToGenerate":"Failed to generate iMessage code","capacityTitle":"iMessage temporarily unavailable","capacityMessage":"iMessage is experiencing unusually high demand right now. Please check back in a few hours — we're working on expanding capacity.","howItWorks":"How it works","step1":"Click \\"Connect via iMessage\\" — your Messages app will open with the activation code pre-filled.","step2":"Send the message and your agent is connected. That's it!"},"pluginsTab":{"builtInServices":"組ã¿è¾¼ã¿ã‚µãƒ¼ãƒ“ス","builtInSubtitle":"エージェントã«ãƒ‡ãƒ•ォルトã§åˆ©ç”¨å¯èƒ½ãªãƒ—ラットフォーム機能。","base44Backend":"Base44 Backend","alwaysActive":"常時アクティブ","base44Description":"データベースã€é–¢æ•°ã€ãƒ•ァイルストレージã€ã‚ªãƒ¼ãƒˆãƒ¡ãƒ¼ã‚·ãƒ§ãƒ³","dataEntities":"データã¨ã‚¨ãƒ³ãƒ†ã‚£ãƒ†ã‚£","dataEntitiesTool1":"エンティティレコードã®ä½œæˆã€èªã¿å–ã‚Šã€æ›´æ–°ã€å‰Šé™¤ã€ãƒ•ィルタリング","dataEntitiesTool2":"行レベルセã‚ュリティ","backendFunctions":"ãƒãƒƒã‚¯ã‚¨ãƒ³ãƒ‰é–¢æ•°","backendFunctionsTool1":"サーãƒãƒ¼ãƒ¬ã‚¹Deno関数ã®ãƒ‡ãƒ—ãƒã‚¤ã¨å‘¼ã³å‡ºã—","backendFunctionsTool2":"環境シークレットã®ç®¡ç†","fileStorage":"ファイルストレージ","fileStorageTool1":"パブリック・プライベートファイルã®ã‚¢ãƒƒãƒ—ãƒãƒ¼ãƒ‰","fileStorageTool2":"ç½²å付ãダウンãƒãƒ¼ãƒ‰URLã®ä½œæˆ","automationsLabel":"オートメーション","automationsTool1":"CRONジョブã®ã‚¹ã‚±ã‚¸ãƒ¥ãƒ¼ãƒ«","automationsTool2":"エンティティ変更トリガー","connectors":"コãƒã‚¯ã‚¿ãƒ¼","connectorsSubtitle":"ã™ã§ã«ä½¿ã£ã¦ã„るアプリやサービスã«ã‚¨ãƒ¼ã‚¸ã‚§ãƒ³ãƒˆã‚’接続ã—ã¾ã™ã€‚","addConnector":"コãƒã‚¯ã‚¿ãƒ¼ã‚’è¿½åŠ ","close":"é–‰ã˜ã‚‹","noConnectors":"コãƒã‚¯ã‚¿ãƒ¼ãŒã‚りã¾ã›ã‚“。外部サービスã¸ã®ã‚¢ã‚¯ã‚»ã‚¹ã‚’è¿½åŠ ã—ã¦ãã ã•ã„。","connected":"接続済ã¿","available":"利用å¯èƒ½ ({{count}})","allConnected":"ã™ã¹ã¦ã®ã‚³ãƒã‚¯ã‚¿ãƒ¼ãŒæŽ¥ç¶šæ¸ˆã¿ã§ã™ã€‚","revoked":"å–ã‚Šæ¶ˆã—æ¸ˆã¿","disconnectedStatus":"åˆ‡æ–æ¸ˆã¿","active":"アクティブ","switchAccount":"アカウントを切り替ãˆ","reconnect":"å†æŽ¥ç¶š","disconnect":"切æ–","remove":"削除","connect":"接続","connectorConnected":"コãƒã‚¯ã‚¿ãƒ¼ã‚’接続ã—ã¾ã—ãŸ","connectionCancelled":"接続ãŒã‚ャンセルã•れã¾ã—ãŸ","connectorDisconnected":"コãƒã‚¯ã‚¿ãƒ¼ã‚’切æ–ã—ã¾ã—ãŸ","failedToDisconnect":"切æ–ã«å¤±æ•—ã—ã¾ã—ãŸ","connectorRemoved":"コãƒã‚¯ã‚¿ãƒ¼ã‚’削除ã—ã¾ã—ãŸ","failedToRemove":"削除ã«å¤±æ•—ã—ã¾ã—ãŸ","openAuthLinkManually":"èªè¨¼ãƒªãƒ³ã‚¯ã‚’手動ã§é–‹ã","connecting":"接続ä¸...","mcpPlugins":"MCPプラグイン","mcpSubtitle":"ã‚¨ãƒ¼ã‚¸ã‚§ãƒ³ãƒˆã®æ©Ÿèƒ½ã‚’æ‹¡å¼µã™ã‚‹MCP接続。","cancel":"ã‚ャンセル","addPlugin":"ãƒ—ãƒ©ã‚°ã‚¤ãƒ³ã‚’è¿½åŠ ","noPlugins":"ãƒ—ãƒ©ã‚°ã‚¤ãƒ³ãŒæŽ¥ç¶šã•れã¦ã„ã¾ã›ã‚“","noPluginsDescription":"MCPサーãƒãƒ¼ã‚’è¿½åŠ ã—ã¦ã‚¨ãƒ¼ã‚¸ã‚§ãƒ³ãƒˆã«æ–°ã—ã„ツールをæä¾›ã—ã¾ã™ã€‚","failedToLoad":"プラグインã®èªã¿è¾¼ã¿ã«å¤±æ•—ã—ã¾ã—ãŸ","failedToToggle":"プラグインã®åˆ‡ã‚Šæ›¿ãˆã«å¤±æ•—ã—ã¾ã—ãŸ","pluginDeleted":"プラグインを削除ã—ã¾ã—ãŸ","failedToDelete":"プラグインã®å‰Šé™¤ã«å¤±æ•—ã—ã¾ã—ãŸ","pluginAdded":"ãƒ—ãƒ©ã‚°ã‚¤ãƒ³ã‚’è¿½åŠ ã—ã¾ã—ãŸ","pluginNamePlaceholder":"プラグインå","mcpUrlPlaceholder":"MCPサーãƒãƒ¼URL (https://...)","foundTools":"{{count}}個ã®ãƒ„ールãŒè¦‹ã¤ã‹ã‚Šã¾ã—ãŸ","connectionTestFailed":"接続テストã«å¤±æ•—ã—ã¾ã—ãŸ","connectedTools":"接続済㿠— {{count}}個ã®ãƒ„ールãŒåˆ©ç”¨å¯èƒ½","connectionFailed":"接続ã«å¤±æ•—ã—ã¾ã—ãŸ","test":"テスト","save":"ä¿å˜","failedToCreate":"プラグインã®ä½œæˆã«å¤±æ•—ã—ã¾ã—ãŸ","enabled":"有効","disabled":"無効","toolsCount":"ツール ({{count}})","noTools":"利用å¯èƒ½ãªãƒ„ールãŒã‚りã¾ã›ã‚“","toolsFound":"{{count}}個ã®ãƒ„ールãŒè¦‹ã¤ã‹ã‚Šã¾ã—ãŸ","testFailed":"テストã«å¤±æ•—ã—ã¾ã—ãŸ","connectedChatMessage":"インテグレーションパãƒãƒ«ã‹ã‚‰{{name}}を接続ã—ã¾ã—ãŸã€‚何ãŒã§ãã¾ã™ã‹ï¼Ÿ","connectedReadOnlyChatMessage":"インテグレーションパãƒãƒ«ã‹ã‚‰{{name}}ã‚’èªã¿å–ã‚Šå°‚ç”¨ãƒ¢ãƒ¼ãƒ‰ã§æŽ¥ç¶šã—ã¾ã—ãŸã€‚データã®èªã¿å–りã®ã¿å¯èƒ½ã§ã€ä½œæˆã‚„変更ã¯ã§ãã¾ã›ã‚“。何ãŒã§ãã¾ã™ã‹ï¼Ÿ","accessModeChangedMessage":"{{name}}ã‚’{{mode}}モードã«åˆ‡ã‚Šæ›¿ãˆã¾ã—ãŸã€‚今後ã®ã‚¢ã‚¯ã‚·ãƒ§ãƒ³ã«ã”ç•™æ„ãã ã•ã„。","disconnectedChatMessage":"インテグレーションパãƒãƒ«ã‹ã‚‰{{name}}を切æ–ã—ã¾ã—ãŸã€‚","readOnly":"èªã¿å–り専用","fullAccess":"管ç†å¯èƒ½","switchToReadOnly":"èªã¿å–り専用ã«åˆ‡ã‚Šæ›¿ãˆ","switchToFullAccess":"管ç†ã«åˆ‡ã‚Šæ›¿ãˆ","searchConnectors":"コãƒã‚¯ã‚¿ã‚’検索...","noSearchResults":"コãƒã‚¯ã‚¿ãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“","noSearchResultsDesc":"別ã®ã‚ーワードを試ã™ã‹ã€æ¤œç´¢ã‚’クリアã—ã¦ãã ã•ã„。","noConnectorsYet":"ã¾ã コãƒã‚¯ã‚¿ãŒæŽ¥ç¶šã•れã¦ã„ã¾ã›ã‚“。","base44Official":"Base44 Official","setUp":"è¨å®š","loadMore":"ã•らã«{{count}}ä»¶ã‚’èªã¿è¾¼ã‚€","showAll":"ã™ã¹ã¦è¡¨ç¤º ({{count}})","moreIcons":"+{{count}}ä»¶","sort":{"title":"ä¸¦ã¹æ›¿ãˆ","mostUsed":"よã使ã‚れる","recentlyAdded":"æœ€è¿‘è¿½åŠ ","az":"A-Z","za":"Z-A"}},"paymentsTab":{"title":"支払ã„","stripeName":"Stripe","description":"Stripeã§ãŠå®¢æ§˜ã‹ã‚‰æ”¯æ‰•ã„ã‚’å—ã‘付ã‘ã¾ã™ã€‚","notConnected":"StripeãŒæŽ¥ç¶šã•れã¦ã„ã¾ã›ã‚“","connectedDescription":"支払ã„リンクã€å•†å“ã€ãƒã‚§ãƒƒã‚¯ã‚¢ã‚¦ãƒˆãŒåˆ©ç”¨å¯èƒ½ã§ã™ã€‚","setupPrompt":"ãƒãƒ£ãƒƒãƒˆã§ã‚¨ãƒ¼ã‚¸ã‚§ãƒ³ãƒˆã«Stripe支払ã„ã®è¨å®šã‚’ä¾é ¼ã—ã¦ãã ã•ã„ã€‚æ‰‹é †ã‚’æ¡ˆå†…ã—ã¾ã™ã€‚","askInChat":"ãƒãƒ£ãƒƒãƒˆã§ä¾é ¼","sandboxMode":"サンドボックス","liveMode":"本番","testCard":"テストカード番å·","claimAndGoLive":"請求ã—ã¦æœ¬ç•ªé‹ç”¨ã¸","remove":"連æºã‚’解除","removeConfirm":"よã‚ã—ã„ã§ã™ã‹ï¼Ÿ","confirmRemove":"ã¯ã„ã€è§£é™¤ã—ã¾ã™","cancel":"ã‚ャンセル","removed":"Stripe連æºã‚’解除ã—ã¾ã—ãŸ","removeFailed":"Stripe連æºã®è§£é™¤ã«å¤±æ•—ã—ã¾ã—ãŸ","loadFailed":"決済ステータスã®èªã¿è¾¼ã¿ã«å¤±æ•—ã—ã¾ã—ãŸ","setupMessage":"エージェント用ã«Stripe支払ã„ã‚’è¨å®šã—ã¦ãã ã•ã„"},"integrationsTab":{"tabSkills":"Skills","tabConnectors":"Connectors","skillsTitle":"Skills","skillsSubtitle":"Reusable instructions that give your agent specialized abilities.","addSkill":"Add Skill","noSkills":"No skills yet","noSkillsHint":"Add a skill to teach your agent new capabilities.","installed":"インストール済ã¿"},"automationsTab":{"title":"オートメーション","subtitle":"スケジュールã•れãŸã‚¿ã‚¹ã‚¯ãŠã‚ˆã³Webhook。","noAutomations":"ã¾ã オートメーションãŒã‚りã¾ã›ã‚“","trySuggestions":"上記ã®ã‚¢ã‚¤ãƒ‡ã‚¢ã‚’試ã™ã‹ã€ãƒãƒ£ãƒƒãƒˆã§è³ªå•ã—ã¦ãã ã•ã„。","askAgent":"ãƒãƒ£ãƒƒãƒˆã§ã‚¨ãƒ¼ã‚¸ã‚§ãƒ³ãƒˆã«è¨å®šã‚’ä¾é ¼ã—ã¦ãã ã•ã„。","scheduled":"スケジュール済ã¿","entityTriggered":"エンティティトリガー","webhooks":"Webhooks","active":"アクティブ","paused":"ä¸€æ™‚åœæ¢","details":"詳細","runNow":"今ã™ã実行","pause":"ä¸€æ™‚åœæ¢","activate":"有効化","delete":"削除","trigger":"トリガー","instructions":"æ‰‹é †","taskId":"タスクID","parameters":"パラメータ","runHistory":"実行履æ´","totalRuns":"åˆè¨ˆ{{count}}回","succeeded":"{{count}}回æˆåŠŸ","failedRuns":"{{count}}回失敗","lastRun":"最終実行:","created":"{{date}}ã«ä½œæˆ","runsStats":"{{total}}回実行 · {{succeeded}}回æˆåŠŸ · {{failed}}回失敗","failedToToggle":"オートメーションã®åˆ‡ã‚Šæ›¿ãˆã«å¤±æ•—ã—ã¾ã—ãŸ","archive":"アーカイブ","automationArchived":"オートメーションをアーカイブã—ã¾ã—ãŸ","failedToArchive":"オートメーションã®ã‚¢ãƒ¼ã‚«ã‚¤ãƒ–ã«å¤±æ•—ã—ã¾ã—ãŸ","automationDeleted":"オートメーションを削除ã—ã¾ã—ãŸ","failedToDelete":"オートメーションã®å‰Šé™¤ã«å¤±æ•—ã—ã¾ã—ãŸ","automationTriggered":"オートメーションを実行ã—ã¾ã—ãŸ","failedToRun":"オートメーションã®å®Ÿè¡Œã«å¤±æ•—ã—ã¾ã—ãŸ","failedToLoad":"オートメーションã®èªã¿è¾¼ã¿ã«å¤±æ•—ã—ã¾ã—ãŸ","consumesCredits":"メッセージクレジットを消費ã—ã¾ã™","agentRunsWhenTriggered":"トリガー時ã«ã‚¨ãƒ¼ã‚¸ã‚§ãƒ³ãƒˆãŒå¿œç”ã—ã¾ã™","agentNameRunsWhenTriggered":"トリガー時ã«{{name}}ãŒå¿œç”ã—ã¾ã™","creditsUsed":"使用クレジット: {{credits}}","totalCredits":"ç·ã‚¯ãƒ¬ã‚¸ãƒƒãƒˆ: {{credits}}","trackingSince":"{{date}}ã‹ã‚‰","executionLogs":"実行ãƒã‚°","noLogs":"ã¾ã ãƒã‚°ãŒã‚りã¾ã›ã‚“","status":{"success":"æˆåŠŸ","running":"実行ä¸","failed":"失敗"},"archived":"アーカイブ済ã¿","noArchivedAutomations":"アーカイブ済ã¿ã®ã‚ªãƒ¼ãƒˆãƒ¡ãƒ¼ã‚·ãƒ§ãƒ³ã¯ã‚りã¾ã›ã‚“","archivedDescription":"アーカイブã—ãŸã‚ªãƒ¼ãƒˆãƒ¡ãƒ¼ã‚·ãƒ§ãƒ³ã¯ã“ã“ã«è¡¨ç¤ºã•れã¾ã™ã€‚","restore":"復元","automationRestored":"オートメーションを復元ã—ã¾ã—ãŸ","failedToRestore":"オートメーションã®å¾©å…ƒã«å¤±æ•—ã—ã¾ã—ãŸ"},"identity":{"updated":"アイデンティティを更新ã—ã¾ã—ãŸ","failedToSave":"アイデンティティã®ä¿å˜ã«å¤±æ•—ã—ã¾ã—ãŸ","avatar":"ã‚¢ãƒã‚¿ãƒ¼","emoji":"絵文å—","setEmoji":"è¨å®š","uploadImage":"ç”»åƒã‚’アップãƒãƒ¼ãƒ‰","changeImage":"変更","removeImage":"ç”»åƒã‚’削除","useEmoji":"絵文å—を使用","name":"エージェントå","agentNamePlaceholder":"エージェントå","userName":"ã‚ãªãŸã®åå‰","userNameDisplay":"ã‚ãªãŸã®åå‰: {{name}}","userNamePlaceholder":"ã‚ãªãŸã®åå‰","userNameHint":"エージェントãŒã‚ãªãŸã‚’呼ã¶åå‰","description":"説明","descriptionPlaceholder":"ã“ã®ã‚¨ãƒ¼ã‚¸ã‚§ãƒ³ãƒˆã¯ä½•ã‚’ã—ã¾ã™ã‹ï¼Ÿ","unnamedAgent":"åå‰ã®ãªã„エージェント","cancel":"ã‚ャンセル","save":"ä¿å˜","edit":"編集","rawIdentity":"IDENTITY.md(生テã‚スト)","editInEditor":"エディターã§ç·¨é›†","entry":"{{count}}ä»¶ã®ã‚¨ãƒ³ãƒˆãƒª","entries":"{{count}}ä»¶ã®ã‚¨ãƒ³ãƒˆãƒª"},"knowledgeEditor":{"fileUpdated":"ファイルãŒå¤–éƒ¨ã§æ›´æ–°ã•れã¾ã—ãŸ","fileModified":"{{name}}ãŒå¤‰æ›´ã•れã¾ã—ãŸã€‚å†èªã¿è¾¼ã¿ã—ã¦å¤‰æ›´ã‚’確èªã—ã¦ãã ã•ã„。","reload":"å†èªã¿è¾¼ã¿","saved":"{{label}}ã‚’ä¿å˜ã—ã¾ã—ãŸ","failedToSave":"ä¿å˜ã«å¤±æ•—ã—ã¾ã—ãŸ","unsavedChanges":"未ä¿å˜ã®å¤‰æ›´ãŒã‚りã¾ã™ã€‚ç ´æ£„ã—ã¾ã™ã‹ï¼Ÿ","rawText":"生テã‚スト","readOnly":"èªã¿å–り専用","editAnyway":"編集ã™ã‚‹","edit":"編集","save":"ä¿å˜","startWriting":"入力を開始..."},"knowledgeFiles":{"title":"ナレッジファイル","uploading":"{{count}}個ã®ãƒ•ァイルをアップãƒãƒ¼ãƒ‰ä¸...","new":"æ–°è¦","fileNamePlaceholder":"ファイルå","mdExtension":".md","enterFileName":"ファイルåを入力ã—ã¦ãã ã•ã„","fileExists":"åŒã˜åå‰ã®ãƒ•ã‚¡ã‚¤ãƒ«ãŒæ—¢ã«å˜åœ¨ã—ã¾ã™","failedToCreate":"ファイルã®ä½œæˆã«å¤±æ•—ã—ã¾ã—ãŸ","unsupportedType":"サãƒãƒ¼ãƒˆã•れã¦ã„ãªã„ファイル形å¼","failedToUpload":"{{name}}ã®ã‚¢ãƒƒãƒ—ãƒãƒ¼ãƒ‰ã«å¤±æ•—ã—ã¾ã—ãŸ","renamedTo":"{{name}}ã«åå‰ã‚’変更ã—ã¾ã—ãŸ","failedToRename":"ファイルåã®å¤‰æ›´ã«å¤±æ•—ã—ã¾ã—ãŸ","failedToLoadFile":"ファイルã®èªã¿è¾¼ã¿ã«å¤±æ•—ã—ã¾ã—ãŸ","deleteConfirm":"\\"{{name}}\\"を削除ã—ã¾ã™ã‹ï¼Ÿã“ã®æ“作ã¯å…ƒã«æˆ»ã›ã¾ã›ã‚“。","failedToDelete":"ファイルã®å‰Šé™¤ã«å¤±æ•—ã—ã¾ã—ãŸ","dropOrUpload":"ã“ã“ã«ãƒ•ァイルをドãƒãƒƒãƒ—ã¾ãŸã¯ã‚¯ãƒªãƒƒã‚¯ã—ã¦ã‚¢ãƒƒãƒ—ãƒãƒ¼ãƒ‰","supportedTypes":"ドã‚ュメントã€ç”»åƒã€CSVã€ã‚³ãƒ¼ãƒ‰ãƒ•ァイルãªã©","dropOrBrowse":"ファイルをドãƒãƒƒãƒ—ã¾ãŸã¯","browse":"å‚ç…§"},"artifacts":{"description":"手軽ã«å§‹ã‚ã‚‰ã‚Œã‚‹ãƒŸãƒ‹ã‚¢ãƒ—ãƒªã€‚æœ¬æ ¼çš„ãªã‚¢ãƒ—リã¯Base44ã§æ§‹ç¯‰ã—ã¦ãã ã•ã„。","buildFullApp":"フルアプリを構築","title":"アーティファクト","pageCount_one":"{{count}}ページ","pageCount_other":"{{count}}ページ","empty":"ã¾ã アーティファクトã¯ã‚りã¾ã›ã‚“","emptyDescription":"エージェントã«ãƒŸãƒ‹ã‚¢ãƒ—リã®ä½œæˆã‚’ä¾é ¼ã™ã‚‹ã¨ã€ã“ã“ã«è¡¨ç¤ºã•れã¾ã™ã€‚"},"feedbackModal":{"thankYou":"ã‚りãŒã¨ã†ã”ã–ã„ã¾ã™ï¼","thankYouSubtitle":"皆様ã®ã”æ„è¦‹ãŒæ”¹å–„ã«å½¹ç«‹ã¡ã¾ã™ã€‚","title":"ã”åˆ©ç”¨ã®æ„Ÿæƒ³ã¯ã„ã‹ãŒã§ã™ã‹ï¼Ÿ","subtitle":"皆様ã®ã”æ„è¦‹ãŒæ¬¡ã®é–‹ç™ºã«åæ˜ ã•れã¾ã™ã€‚","submitError":"フィードãƒãƒƒã‚¯ã®é€ä¿¡ã«å¤±æ•—ã—ã¾ã—ãŸã€‚ã‚‚ã†ä¸€åº¦ãŠè©¦ã—ãã ã•ã„。","placeholder":"ã”æ„見をãŠèžã‹ã›ãã ã•ã„...","sending":"é€ä¿¡ä¸...","sendFeedback":"フィードãƒãƒƒã‚¯ã‚’é€ä¿¡","ratingBad":"悪ã„","ratingPoor":"䏿º€","ratingOkay":"普通","ratingGood":"良ã„","ratingAmazing":"最高","openSupportTicket":"サãƒãƒ¼ãƒˆãƒã‚±ãƒƒãƒˆã‚’é–‹ã"},"dangerZoneTab":{"title":"å±é™ºã‚¾ãƒ¼ãƒ³","subtitle":"ã“ã®ã‚¨ãƒ¼ã‚¸ã‚§ãƒ³ãƒˆã«å¯¾ã™ã‚‹å–り消ã—ä¸å¯èƒ½ãªæ“作。","deleteTitle":"ã“ã®ã‚¨ãƒ¼ã‚¸ã‚§ãƒ³ãƒˆã‚’削除","deleteDescription":"ã“ã®ã‚¨ãƒ¼ã‚¸ã‚§ãƒ³ãƒˆã¨ãã®ã™ã¹ã¦ã®ãƒ‡ãƒ¼ã‚¿ã€ä¼šè©±ã€ãƒ•ァイルã€çµ±åˆã‚’完全ã«å‰Šé™¤ã—ã¾ã™ã€‚ã“ã®æ“作ã¯å…ƒã«æˆ»ã›ã¾ã›ã‚“。","deleteButton":"ã“ã®ã‚¨ãƒ¼ã‚¸ã‚§ãƒ³ãƒˆã‚’削除","deleteSuccess":"ã‚¨ãƒ¼ã‚¸ã‚§ãƒ³ãƒˆãŒæ£å¸¸ã«å‰Šé™¤ã•れã¾ã—ãŸ","deleteFailed":"エージェントã®å‰Šé™¤ã«å¤±æ•—ã—ã¾ã—ãŸ"}}`),yH={live:"Live",offScreen:"ç”»é¢å¤–",waiting:"待機ä¸...",loading:"èªã¿è¾¼ã¿ä¸...",previewTitle:"プレビュー: {{pageName}}"},kH={main:"メイン"},wH={title:"エージェントを削除",description:"<strong>{{displayName}}</strong>を完全ã«å‰Šé™¤ã—ã¾ã™ã€‚<br/>ã™ã¹ã¦ã®ã‚¨ãƒ¼ã‚¸ã‚§ãƒ³ãƒˆãƒ‡ãƒ¼ã‚¿ã€ä¼šè©±ã€ãƒ•ァイルã€çµ±åˆãŒå®Œå…¨ã«æ¶ˆåŽ»ã•れã¾ã™ã€‚<danger>ã“ã®æ“作ã¯å…ƒã«æˆ»ã›ã¾ã›ã‚“。</danger>",cancel:"ã‚ャンセル",deleteButton:"ã“ã®ã‚¨ãƒ¼ã‚¸ã‚§ãƒ³ãƒˆã‚’削除",deleting:"削除ä¸..."},AH={title:"アプリを共有ã™ã‚‹",subtitle:"メールã¾ãŸã¯ã‚½ãƒ¼ã‚·ãƒ£ãƒ«ã§ãƒªãƒ³ã‚¯ã‚’共有ã™ã‚‹",sendInviteLabel:"招待をé€ã‚‹",sendInvitation_one:"招待をé€ã‚‹",sendInvitation_other:"招待をé€ã‚‹",invalidEmailsError:"1ã¤ä»¥ä¸Šã®ãƒ¡ãƒ¼ãƒ«ã‚¢ãƒ‰ãƒ¬ã‚¹ãŒç„¡åйã§ã™ã€‚確èªã—ã¦å†è©¦è¡Œã—ã¦ãã ã•ã„。",workspaceIneligibleError:"代ã‚りã«ãƒ¯ãƒ¼ã‚¯ã‚¹ãƒšãƒ¼ã‚¹ã®ãƒ¦ãƒ¼ã‚¶ãƒ¼ã‚’招待ã—ã¦ã¿ã¦ãã ã•ã„。",nonWorkspaceIneligibleError:"一部ã®ãƒ¡ãƒ¼ãƒ«ã‚¢ãƒ‰ãƒ¬ã‚¹ã¯æ‹›å¾…ã§ãã¾ã›ã‚“。",removeIneligibleUsers:"対象外ã®ãƒ¦ãƒ¼ã‚¶ãƒ¼ã‚’削除ã™ã‚‹",inviteSuccessToast:"ユーザーã¸ã®æ‹›å¾…ãŒæ£å¸¸ã«é€ä¿¡ã•れã¾ã—ãŸ",inviteErrorToast:"招待ã®é€ä¿¡ã«å¤±æ•—ã—ã¾ã—ãŸ",copyLink:"リンクをコピー",sendInvitationSection:"招待をé€ã‚‹",inviteEmailPlaceholder:"メールアドレスを入力",inviteButton:"招待ã™ã‚‹",shareLiveAppLink:"ライブアプリã®ãƒªãƒ³ã‚¯ã‚’共有ã™ã‚‹",shareLiveAppLinkDesc:"ã“ã®ãƒªãƒ³ã‚¯ã‚’知ã£ã¦ã„る人ãªã‚‰èª°ã§ã‚‚ã€ã‚¢ãƒ—リã®å…¬é–‹è¨å®šã«åŸºã¥ã„ã¦ã‚¢ãƒ—リをライブã§é–²è¦§ã§ãã¾ã™ã€‚",linkCopied:"リンクをコピーã—ã¾ã—ãŸ",enterEmailError:"メールアドレスを入力ã—ã¦ãã ã•ã„",cannotInviteOwner:"ã“ã®ã‚¢ãƒ—リã®ã‚ªãƒ¼ãƒŠãƒ¼ã‚’招待ã™ã‚‹ã“ã¨ã¯ã§ãã¾ã›ã‚“",inviteSuccess_one:"招待をé€ä¿¡ã—ã¾ã—ãŸ",inviteSuccess_other:"{{count}}ä»¶ã®æ‹›å¾…ã‚’é€ä¿¡ã—ã¾ã—ãŸ",inviteFailedToSend:"招待ã®é€ä¿¡ã«å¤±æ•—ã—ã¾ã—ãŸ",role_admin:"管ç†è€…",role_user:"ユーザー"},SH={sidebar:V3,loading:$3,trash:W3,errors:G3,codeView:H3,loader:Y3,toolbar:K3,header:Z3,upgrade:J3,checkpoints:Q3,viewAs:X3,pages:eH,publish:tH,chat:aH,builderCommandPalette:nH,unknownView:iH,appEditor:rH,beta:oH,collaborators:sH,integrationsBanner:lH,tools:cH,mainPage:dH,unpublishApp:uH,deleteApp:pH,skillTool:mH,automations:gH,create_automation:hH,create_automation_error:fH,automation_fallback_name:vH,agentEditor:bH,canvasPage:yH,canvasToolbar:kH,deleteAgent:wH,new:"æ–°ç€",shareModal:AH},CH={title:"次ã¯ä½•を作りã¾ã™ã‹ï¼Ÿ",titleMobile:`ã“ã‚“ã«ã¡ã¯ã€
次ã¯ä½•を作りã¾ã™ã‹ï¼Ÿ`,subtitle:"下ã«ã‚¢ãƒ—リã®ã‚¢ã‚¤ãƒ‡ã‚¢ã‚’入力ã™ã‚‹ã‹ã€",subtitleTemplatesLink:"テンプレート"},DH={title:"最近ã®ã‚¢ãƒ—リ"},TH={title:"最近ã®ã‚¹ãƒ¼ãƒ‘ーエージェント"},EH={placeholder:"作りãŸã„アプリを説明ã—ã¦ãã ã•ã„...",placeholderPlanMode:"Baseã«ä½œã‚ŠãŸã„ã‚‚ã®ã‚’ä¼ãˆã¦ãã ã•ã„",placeholderViewer:"閲覧者ã¯ã‚¢ãƒ—リを作æˆã§ãã¾ã›ã‚“",placeholderWithUrl:"èª¬æ˜Žã‚’è¿½åŠ ï¼ˆä»»æ„)...",captureFullMode:"ã“ã®ã‚ˆã†ãªã‚µã‚¤ãƒˆã‚’作æˆã™ã‚‹",captureDesignMode:"ã“ã®ãƒ‡ã‚¶ã‚¤ãƒ³ã«ã‚¤ãƒ³ã‚¹ãƒ‘イアã•ã‚ŒãŸæ–°ã—ã„サイトを作æˆã™ã‚‹...",uploadFile:"コンピューターã‹ã‚‰ã‚¢ãƒƒãƒ—ãƒãƒ¼ãƒ‰",uploadFileMobile:"デãƒã‚¤ã‚¹ã‹ã‚‰ã‚¢ãƒƒãƒ—ãƒãƒ¼ãƒ‰",captureFromUrlDescription:"1:1ã®å‡ºç™ºç‚¹ã‚’作æˆ",createFromUrl:"URLã‹ã‚‰é–‹å§‹",aiModel:"AIモデル",selectAiModel:"AIãƒ¢ãƒ‡ãƒ«ã‚’é¸æŠž",addFromGoogleDrive:"Google Driveã‹ã‚‰ã‚¢ãƒƒãƒ—ãƒãƒ¼ãƒ‰",modelPicker:{automatic:"自動",automaticDescription:"リクエストã”ã¨ã«æœ€é©ãªAIモデルãŒé¸æŠžã•れã¾ã™",new:"æ–°",manual:"手動",builderPlus:"Builder+",manualDescription:"特定ã®AIãƒ¢ãƒ‡ãƒ«ã‚’é¸æŠž ({{models}})。Builderプラン以上ã§åˆ©ç”¨å¯èƒ½ã€‚",upgradeToSelect:"AIãƒ¢ãƒ‡ãƒ«ã‚’é¸æŠžã™ã‚‹ã«ã¯ã‚¢ãƒƒãƒ—グレード"},speechToText:"音声入力",processingAudio:"音声を処ç†ä¸...",clickToStopRecording:"クリックã—ã¦éŒ²éŸ³ã‚’åœæ¢"},PH={exploreTemplates:"コミュニティã®ãƒ†ãƒ³ãƒ—レートを探索",discoverDescription:"コミュニティã«ã‚ˆã£ã¦ä½œã‚‰ã‚ŒãŸã‚¢ãƒ—リケーションã®ã‚³ãƒ¬ã‚¯ã‚·ãƒ§ãƒ³ã‚’ã”覧ãã ã•ã„。",failedToLoadCatalog:"ã‚«ã‚¿ãƒã‚°ã®èªã¿è¾¼ã¿ã«å¤±æ•—ã—ã¾ã—ãŸ",showingItems:"{{total}}ä»¶ä¸{{displayed}}件を表示",searchApps:"アプリを検索",viewAllTemplates:"ã™ã¹ã¦ã®ãƒ†ãƒ³ãƒ—レートを表示",allCategories:"ã™ã¹ã¦",priceAll:"ã™ã¹ã¦ã®ãƒ†ãƒ³ãƒ—レート",priceFree:"ç„¡æ–™ã®ã¿",pricePaid:"有料ã®ã¿",pageTitle:"アプリテンプレート",pageSubtitle:"コミュニティã«ã‚ˆã£ã¦ä½œã‚‰ã‚ŒãŸå޳é¸ã•れãŸã‚¢ãƒ—リケーションã®ã‚³ãƒ¬ã‚¯ã‚·ãƒ§ãƒ³ã‚’ã”覧ãã ã•ã„。",tabs:{community:"コミュニティ",workspace:"ワークスペース",myTemplates:"マイテンプレート"},categories:{marketingAndSales:"マーケティング&営æ¥",operations:"オペレーション",dataAndAnalytics:"データ&分æž",contentGeneration:"コンテンツ生æˆ",hrAndLegal:"人事&法務",finance:"財務",education:"教育",community:"コミュニティ",lifestyleAndHobbies:"ライフスタイル&趣味",gamesAndEntertainment:"ゲーム&エンターテインメント","Marketing & Sales":"マーケティング・営æ¥",Operations:"オペレーション","Data & Analytics":"データ・分æž","Content Generation":"コンテンツ生æˆ","HR & Legal":"人事・法務",Finance:"ファイナンス",Education:"教育",Community:"コミュニティ","Lifestyle & Hobbies":"ライフスタイル・趣味","Games & Entertainment":"ゲーム・エンタメ"},sort:{popular:"äººæ°—é †",newest:"æ–°ã—ã„é †",oldest:"å¤ã„é †"},languagePlaceholder:"言語",pricePlaceholder:"ä¾¡æ ¼",noAppsFound:"アプリãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“",adjustSearchOrFilters:"検索æ¡ä»¶ã¾ãŸã¯ãƒ•ィルターを調整ã—ã¦ãã ã•ã„",templateNotFound:"テンプレートãŒè¦‹ã¤ã‹ã‚‰ãªã„ã‹ã€åˆ©ç”¨ã§ãã¾ã›ã‚“。",viewAllCommunityTemplates:"ã™ã¹ã¦ã®ã‚³ãƒŸãƒ¥ãƒ‹ãƒ†ã‚£ãƒ†ãƒ³ãƒ—レートを表示",loadingMore:"ã•らã«èªã¿è¾¼ã¿ä¸...",viewDetails:"詳細を見る",workspaceBadge:"ワークスペース",purchasedBadge:"購入済ã¿",free:"ç„¡æ–™",unknownUser:"䏿˜Žãªãƒ¦ãƒ¼ã‚¶ãƒ¼",private:"プライベート",howTo:{title:"アプリをコミュニティã¨å…±æœ‰ã™ã‚‹æ–¹æ³•",intro:"以下ã®ç°¡å˜ãªæ‰‹é †ã«å¾“ã£ã¦ãã ã•ã„:",step1Title:"アプリã®ãƒ“ルダーを開ã",step1Desc:"作æˆã—ãŸã‚¢ãƒ—リã¾ãŸã¯ç®¡ç†è€…アクセス権をæŒã¤ã‚¢ãƒ—リã«ç§»å‹•ã—ã¾ã™",step2Title:"ã‚«ã‚¿ãƒã‚°è¨å®šã«ç§»å‹•",step2Path:"ワークスペース → è¨å®š → アプリテンプレート → リスティングを管ç†",step3Title:"リスティングを公開",step3Desc:"èª¬æ˜Žã‚„ã‚¹ã‚¯ãƒªãƒ¼ãƒ³ã‚·ãƒ§ãƒƒãƒˆã‚’è¿½åŠ ã—ã€ãƒªã‚¹ãƒ†ã‚£ãƒ³ã‚°ã®å…¬é–‹ç¯„囲をè¨å®šã—ã¾ã™",tipFull:"<bold>ヒント:</bold> アプリãŒãƒ‡ãƒ—ãƒã‚¤ã•れã¦ãŠã‚Šã€é…力的ãªèª¬æ˜ŽãŒã‚ã‚‹ã“ã¨ã‚’確èªã—ã¦ã€ã‚ˆã‚Šå¤šãã®ãƒ¦ãƒ¼ã‚¶ãƒ¼ã‚’惹ãã¤ã‘ã¾ã—ょã†ï¼"},modal:{close:"é–‰ã˜ã‚‹",prevScreenshot:"å‰ã®ã‚¹ã‚¯ãƒªãƒ¼ãƒ³ã‚·ãƒ§ãƒƒãƒˆ",nextScreenshot:"次ã®ã‚¹ã‚¯ãƒªãƒ¼ãƒ³ã‚·ãƒ§ãƒƒãƒˆ",screenshotAlt:"スクリーンショット {{index}}",goToScreenshot:"スクリーンショット {{index}} ã¸",createdBy:"{{creatorName}} 作",unknownCreator:"䏿˜Ž",usages_one:"{{count}} 回利用",usages_other:"{{count}} 回利用",private:"éžå…¬é–‹",workspaceTemplate:"ワークスペーステンプレート",clonePurchase:"購入済ã¿ã‚’クãƒãƒ¼ãƒ³",processing:"処ç†ä¸...",purchaseFor:"${{price}} ã§è³¼å…¥",useTemplate:"テンプレートを使用",viewApp:"アプリを見る",paymentInfo:"å…¨é¡ã‚¯ãƒªã‚¨ã‚¤ã‚¿ãƒ¼ã«æ”¯æ‰•ã‚れã¾ã™",backendFunctionsEnabled:"ãƒãƒƒã‚¯ã‚¨ãƒ³ãƒ‰æ©Ÿèƒ½ãŒæœ‰åй",usesIntegrations:"インテグレーションを使用",aboutThisApp:"ã“ã®ã‚¢ãƒ—リã«ã¤ã„ã¦",noDescription:"説明ã¯ã‚りã¾ã›ã‚“",termsOfUse:"利用è¦ç´„",success:"æˆåŠŸ",error:"エラー",purchaseFailed:"購入失敗",failedToPurchase:"購入を開始ã§ãã¾ã›ã‚“ã§ã—ãŸ",listingApproved:"ã‚¢ãƒ—ãƒªãƒªã‚¹ãƒˆãŒæ£å¸¸ã«æ‰¿èªã•れã¾ã—ãŸ",approveListingFailed:"リストを承èªã§ãã¾ã›ã‚“ã§ã—ãŸ",listingDeclined:"ã‚¢ãƒ—ãƒªãƒªã‚¹ãƒˆãŒæ£å¸¸ã«æ‹’å¦ã•れã¾ã—ãŸ",declineListingFailed:"リストを拒å¦ã§ãã¾ã›ã‚“ã§ã—ãŸ",pendingUpdate:"レビュー待ã¡ã®æ›´æ–°",codeChangesPending:"アプリコードã®å¤‰æ›´ãŒä¿ç•™ä¸",metadataChanges:"リストã®ãƒ¡ã‚¿ãƒ‡ãƒ¼ã‚¿å¤‰æ›´ï¼š",manageListing:"リストを管ç†",approveUpdate:"更新を承èª",declineUpdate:"æ›´æ–°ã‚’æ‹’å¦",approveListing:"リストを承èª",declineListing:"リストを拒å¦",approving:"承èªä¸...",declining:"æ‹’å¦ä¸...",cloneAsAdmin:"管ç†è€…ã¨ã—ã¦ã‚¯ãƒãƒ¼ãƒ³"}},_H={subscriptionOverdue:"ã‚µãƒ–ã‚¹ã‚¯ãƒªãƒ—ã‚·ãƒ§ãƒ³ã®æ”¯æ‰•ã„æœŸé™è¶…éŽ",overdueMessage:"ã‚µãƒ–ã‚¹ã‚¯ãƒªãƒ—ã‚·ãƒ§ãƒ³ã®æ”¯æ‰•ã„ãŒæœŸé™ã‚’è¶…éŽã—ã¦ã„ã¾ã™ã€‚ä¸€éƒ¨ã®æ©Ÿèƒ½ã¸ã®ã‚¢ã‚¯ã‚»ã‚¹ãŒåˆ¶é™ã•れã¦ã„ã¾ã™ã€‚フルアクセスを回復ã™ã‚‹ã«ã¯ã€ãŠæ”¯æ‰•ã„æ–¹æ³•ã‚’æ›´æ–°ã—ã¦ãã ã•ã„。",goToBilling:"請求ã¸ç§»å‹•",creditLimitReached:"今月ã®ä¸Šé™ã«é”ã—ã¾ã—ãŸã€‚アプリã®ä½œæˆã‚’ç¶šã‘ã‚‹ã«ã¯",upgradePlan:"プランをアップグレード"},xH={viewerAccess:"閲覧者アクセス権é™ã®ãŸã‚ã€ã‚¢ãƒ—リを作æˆã§ãã¾ã›ã‚“。エディターã¸ã®ã‚¢ãƒƒãƒ—グレードã«ã¤ã„ã¦ã¯ãƒ¯ãƒ¼ã‚¯ã‚¹ãƒšãƒ¼ã‚¹ç®¡ç†è€…ã«ãŠå•ã„åˆã‚ã›ãã ã•ã„。"},IH={fillApiKeys:"é€ä¿¡å‰ã«ã™ã¹ã¦ã®å¿…é ˆAPIã‚ーを入力ã—ã¦ãã ã•ã„。",createAppFailed:"アプリã®ä½œæˆã«å¤±æ•—ã—ã¾ã—ãŸã€‚ã‚‚ã†ä¸€åº¦ãŠè©¦ã—ãã ã•ã„。"},RH={title:"URLã‹ã‚‰é–‹å§‹",description:"ä»»æ„ã®Webサイトを新ã—ã„サイトã®å‡ºç™ºç‚¹ã¨ã—ã¦ä½¿ç”¨ã§ãã¾ã™ã€‚",urlLabel:"WebサイトURL",urlPlaceholder:"例: www.example.com",errorEmpty:"URLを入力ã—ã¦ãã ã•ã„",errorInvalid:"有効ãªWebサイトURLを入力ã—ã¦ãã ã•ã„(例: www.example.com)",errorTooLong:"URLãŒé•·ã™ãŽã¾ã™ã€‚çŸã„URLã‚’ãŠä½¿ã„ãã ã•ã„。",modeFull:"コンテンツ&デザイン",modeFullDescription:"類似サイトを構築ã—ã¾ã™ã€‚",modeDesign:"デザインã®ã¿",modeDesignDescription:"åŒã˜ã‚¹ã‚¿ã‚¤ãƒ«ã§æ–°ã—ã„サイトを作æˆã—ã¾ã™ã€‚",modeContent:"コンテンツã®ã¿",legalNotice:"ã‚³ãƒ³ãƒ†ãƒ³ãƒ„ã®æ¨©åˆ©ã‚’æŒã¤URLã®ã¿ä½¿ç”¨ã—ã¦ãã ã•ã„。",cancel:"ã‚ャンセル",add:"è¿½åŠ ",learnMore:"URLã‹ã‚‰ã®ä½œæˆã«ã¤ã„ã¦è©³ã—ã",capturedUrl:"ã‚ャプãƒãƒ£ã—ãŸURL",appReady:"ã‚¢ãƒ—ãƒªã®æº–å‚™ãŒã§ãã¾ã—ãŸï¼ã‚«ã‚¹ã‚¿ãƒžã‚¤ã‚ºã—ãŸã‚Šã€æ–°ã—ã„æ©Ÿèƒ½ã‚’è¿½åŠ ã§ãã¾ã™ã€‚",banner:{headline:"アプリを作æˆä¸",headlineDesign:"アプリを作æˆä¸",subtitle:"é€šå¸¸ã‚ˆã‚Šå°‘ã—æ™‚é–“ãŒã‹ã‹ã‚‹ã“ã¨ãŒã‚りã¾ã™ - ç´ æ™´ã‚‰ã—ã„ã‚‚ã®ã‚’ãŠå±Šã‘ã—ã¾ã™ã€‚",activity:{msg1:"サイトを調ã¹ã¦ã„ã¾ã™...",msg2:"デザインを分æžã—ã¦ã„ã¾ã™...",msg3:"パーツを組ã¿ç«‹ã¦ã¦ã„ã¾ã™...",msg4:"特別ãªã‚‚ã®ã‚’作æˆã—ã¦ã„ã¾ã™...",msg5:"作æ¥ä¸ã§ã™...",msg6:"仕上ã’ã¦ã„ã¾ã™...",msg7:"ã‚‚ã†å°‘ã—ãŠå¾…ã¡ãã ã•ã„..."}}},zH={count:"連æº: {{count}}",loading:"連æºã‚’èªã¿è¾¼ã¿ä¸...",selectedIntegrations:"é¸æŠžã•れãŸé€£æº:"},MH={menuItem:"コãƒã‚¯ã‚¿ãƒ¼",dialogTitle:"コãƒã‚¯ã‚¿ãƒ¼",dialogDescription:"ツールやデータソースを接続ã—ã¦ã€ã‚¢ãƒ—リを強化ã—ã¾ã—ょã†",search:"検索",add:"è¿½åŠ ",added:"è¿½åŠ æ¸ˆã¿",remove:"削除",noResults:"コãƒã‚¯ã‚¿ãƒ¼ãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“",suggestionCardTitle:"çµ±åˆãƒªã‚¯ã‚¨ã‚¹ãƒˆã®è©³ç´°ã‚’æ•™ãˆã¦ãã ã•ã„:",choosePrompt:"続行ã™ã‚‹ã‚ªãƒ—ã‚·ãƒ§ãƒ³ã‚’é¸æŠžã—ã¦ãã ã•ã„。",somethingElse:"ãã®ä»–",cancel:"ã‚ャンセル",send:"é€ä¿¡",connectTo:"<name>{{name}}</name>ã«æŽ¥ç¶š",upgradeToConnect:"{{name}}ã‚’ã‚¢ãƒ—ãƒªã«æŽ¥ç¶šã™ã‚‹ãŸã‚ã«ãƒ—ランをアップグレードã—ã¦ãã ã•ã„。",connecting:"{{names}}ã«æŽ¥ç¶šä¸â€¦",cancelled:"ã‚ャンセル済ã¿",subtitles:{stripe:"商å“やサブスクリプションを販売ã—ã¦ã‚ªãƒ³ãƒ©ã‚¤ãƒ³ã§åŽç›Šã‚’得る。",salesforce:"CRMãƒ¬ã‚³ãƒ¼ãƒ‰ã‚’è‡ªå‹•åŒ–ãƒ»åŒæœŸã™ã‚‹ã€‚",slack:"ユーザーã¨ã—ã¦ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸é€ä¿¡ã‚„Slack管ç†ã‚’行ã†ã€‚",slackbot:"ブランドボットã¨ã—ã¦Slackãƒ¯ãƒ¼ã‚¯ã‚¹ãƒšãƒ¼ã‚¹ã«æŠ•ç¨¿ã™ã‚‹ã€‚",notion:"ナレッジやプãƒã‚¸ã‚§ã‚¯ãƒˆãƒ‡ãƒ¼ã‚¿ã‚’æ•´ç†ãƒ»åŒæœŸã™ã‚‹ã€‚",googlecalendar:"スケジュールやカレンダーイベントを管ç†ã™ã‚‹ã€‚",googledrive:"アプリã§ç”Ÿæˆã—ãŸãƒ•ァイルをエクスãƒãƒ¼ãƒˆãƒ»ãƒãƒƒã‚¯ã‚¢ãƒƒãƒ—ã™ã‚‹ã€‚",gmail:"メールé€ä¿¡ã¨å—信トレイ管ç†ã‚’自動化ã™ã‚‹ã€‚",googlesheets:"ã‚¹ãƒ—ãƒ¬ãƒƒãƒ‰ã‚·ãƒ¼ãƒˆãƒ‡ãƒ¼ã‚¿ã‚’åŒæœŸãƒ»ç®¡ç†ã™ã‚‹ã€‚",googleslides:"プレゼンテーションを生æˆãƒ»ç®¡ç†ã™ã‚‹ã€‚",googledocs:"ドã‚ュメント作æˆã‚’管ç†ãƒ»è‡ªå‹•化ã™ã‚‹ã€‚",googlebigquery:"分æžãƒ‡ãƒ¼ã‚¿ã®ã‚¯ã‚¨ãƒªã¨åŒæœŸã‚’行ã†ã€‚",hubspot:"CRMãƒ‡ãƒ¼ã‚¿ã‚’åŒæœŸã—ã¦ãƒžãƒ¼ã‚±ãƒ†ã‚£ãƒ³ã‚°ã‚’自動化ã™ã‚‹ã€‚",linkedin:"投稿を共有ã—ã¦ãƒ—ãƒãƒ•ェッショナルプãƒãƒ•ィールã«ã‚¢ã‚¯ã‚»ã‚¹ã™ã‚‹ã€‚",tiktok:"プãƒãƒ•ィール統計ã®ç¢ºèªã‚„å‹•ç”»ã®é–²è¦§ã‚’行ã†ã€‚",discord:"ãƒãƒ£ãƒ³ãƒãƒ«ã«é€šçŸ¥ã—ã¦Discordコミュニティã¨é€£æºã™ã‚‹ã€‚",wix:"Wixサイトã®ãƒ‡ãƒ¼ã‚¿ã‚„ビジãƒã‚¹ãƒ„ールã«ã‚¢ã‚¯ã‚»ã‚¹ã™ã‚‹ã€‚",github:"リãƒã‚¸ãƒˆãƒªã€Issueã€ãƒ—ルリクエストを管ç†ã™ã‚‹ã€‚",gitlab:"プãƒã‚¸ã‚§ã‚¯ãƒˆã€MRã€CI/CDパイプラインを管ç†ã™ã‚‹ã€‚",bamboohr:"従æ¥å“¡ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã¨HR管ç†ã€‚",wrike:"プãƒã‚¸ã‚§ã‚¯ãƒˆè¨ˆç”»ã¨ãƒãƒ¼ãƒ 連æºã€‚",box:"安全ãªã‚¯ãƒ©ã‚¦ãƒ‰ã‚³ãƒ³ãƒ†ãƒ³ãƒ„管ç†ã€‚",clickup:"プãƒã‚¸ã‚§ã‚¯ãƒˆã‚’æ•´ç†ã—ã¦ãƒãƒ¼ãƒ ã®ä½œæ¥ã‚’追跡ã™ã‚‹ã€‚",google_analytics:"ウェブトラフィックã¨ãƒ¦ãƒ¼ã‚¶ãƒ¼ã‚¤ãƒ³ã‚µã‚¤ãƒˆã‚’追跡ã™ã‚‹ã€‚",outlook:"メールã¨ã‚«ãƒ¬ãƒ³ãƒ€ãƒ¼ã€‚",linear:"課題管ç†ã¨ãƒ—ãƒã‚¸ã‚§ã‚¯ãƒˆãƒžãƒã‚¸ãƒ¡ãƒ³ãƒˆã€‚",dropbox:"クラウドã§ãƒ•ァイルをä¿å˜ãƒ»åŒæœŸã™ã‚‹ã€‚",google_search_console:"SEOã¨æ¤œç´¢ã‚¢ãƒŠãƒªãƒ†ã‚£ã‚¯ã‚¹ã€‚",google_classroom:"教育ã¨ã‚³ãƒ¼ã‚¹ç®¡ç†ã€‚",airtable:"柔軟ãªãƒ‡ãƒ¼ã‚¿ãƒ™ãƒ¼ã‚¹ã¨ã‚¹ãƒ—レッドシート。",splitwise:"費用ã®åˆ†å‰²ã¨ã‚°ãƒ«ãƒ¼ãƒ—請求ã®ç®¡ç†ã€‚",microsoft_teams:"ãƒãƒ¼ãƒ ãƒãƒ£ãƒƒãƒˆã€ãƒãƒ£ãƒ³ãƒãƒ«ã€ä¼šè°ã€‚",share_point:"ドã‚ュメント管ç†ã¨ã‚³ãƒ©ãƒœãƒ¬ãƒ¼ã‚·ãƒ§ãƒ³ã€‚",one_drive:"クラウドファイルストレージ。",typeform:"フォームã€ã‚¢ãƒ³ã‚±ãƒ¼ãƒˆã€ãƒ‡ãƒ¼ã‚¿åŽé›†ã€‚"}},NH={label:"プラン",tooltip:"プランモードを有効ã«ã™ã‚‹ã¨ã€AIãŒã‚¢ãƒ—リを構築ã™ã‚‹å‰ã«è©³ç´°ãªè¨ˆç”»ã‚’作æˆã—ã¾ã™ã€‚"},FH="ã™ã¹ã¦è¡¨ç¤º",LH="エラー",jH={menuLabel:"Figmaã‹ã‚‰ã‚¤ãƒ³ãƒãƒ¼ãƒˆ",title:"Figmaフレームã‹ã‚‰ç”Ÿæˆ",description:"フレームã®ãƒªãƒ³ã‚¯ã‚’貼り付ã‘ã¦ã€ãƒ‡ã‚¶ã‚¤ãƒ³ã«åŸºã¥ãアプリを生æˆã—ã¾ã™ã€‚",labelUrl:"Figmaフレームã®ãƒªãƒ³ã‚¯",placeholderUrl:"例: https://www.figma.com/frame-link",urlHelp:"ファイルやページã§ã¯ãªãã€1ã¤ã®ãƒ•レームã¸ã®ãƒªãƒ³ã‚¯ã‚’使用ã—ã¦ãã ã•ã„。",learnPrepare:"Figmaãƒ•ãƒ¬ãƒ¼ãƒ ã®æº–備方法をå¦ã¶",connectTitle:"Figmaã«æŽ¥ç¶š",connectDescription:"デザインをインãƒãƒ¼ãƒˆã™ã‚‹ãŸã‚ã€Figmaアカウントã¸ã®ã‚¢ã‚¯ã‚»ã‚¹ã‚’許å¯ã—ã¦ãã ã•ã„。",connectButton:"Figmaã«æŽ¥ç¶š",connectedToFigma:"Figmaã«æŽ¥ç¶šæ¸ˆã¿",errorMissingUrl:"Figmaフレームã®URLを入力ã—ã¦ãã ã•ã„",errorNotFigmaUrl:"Figmaフレームã®URLを入力ã—ã¦ãã ã•ã„",errorNotFrameUrl:"ファイルやページã§ã¯ãªãã€1ã¤ã®ãƒ•レームã®URLを入力ã—ã¦ãã ã•ã„。",errorRateLimit:"Figmaã®APIãŒä¸€æ™‚çš„ã«æ··é›‘ã—ã¦ã„ã¾ã™ã€‚数分後ã«ã‚‚ã†ä¸€åº¦ãŠè©¦ã—ãã ã•ã„。",errorForbidden:"Figma接続ãŒç„¡åйã¾ãŸã¯æœŸé™åˆ‡ã‚Œã§ã™ã€‚Figmaã‚¢ã‚«ã‚¦ãƒ³ãƒˆã‚’å†æŽ¥ç¶šã—ã¦ãã ã•ã„。",errorNotFound:"FigmaファイルãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“。URLを確èªã—ã€ã‚¢ã‚¯ã‚»ã‚¹æ¨©ãŒã‚ã‚‹ã“ã¨ã‚’確èªã—ã¦ãã ã•ã„。",errorGeneric:"ã“ã®Figmaデザインã«ã‚¢ã‚¯ã‚»ã‚¹ã§ãã¾ã›ã‚“。URLを確èªã—ã¦å†è©¦è¡Œã—ã¦ãã ã•ã„。",validating:"確èªä¸...",switchAccount:"Figmaアカウントを切り替ãˆ",cancel:"ã‚ャンセル",generate:"生æˆ",viewerCannotGenerate:"閲覧専用アクセスã®ãŸã‚アプリを作æˆã§ãã¾ã›ã‚“。エディターã«ã‚¢ãƒƒãƒ—グレードã™ã‚‹ã«ã¯ãƒ¯ãƒ¼ã‚¯ã‚¹ãƒšãƒ¼ã‚¹ç®¡ç†è€…ã«ãŠå•ã„åˆã‚ã›ãã ã•ã„。",figmaFile:"Figmaファイル",justNow:"ãŸã£ãŸä»Š",importingMessage:"ã“ã®Figmaフレームã®ãƒ‡ã‚¶ã‚¤ãƒ³ã‹ã‚‰ã‚¢ãƒ—リを生æˆã—ã¾ã™ã€‚"},OH={connectFailed:"Figmaã®æŽ¥ç¶šã«å¤±æ•—ã—ã¾ã—ãŸã€‚ã‚‚ã†ä¸€åº¦ãŠè©¦ã—ãã ã•ã„。",popupBlocked:"ãƒãƒƒãƒ—アップãŒãƒ–ãƒãƒƒã‚¯ã•れã¾ã—ãŸã€‚ãƒãƒƒãƒ—アップを許å¯ã—ã¦å†è©¦è¡Œã—ã¦ãã ã•ã„。",disconnected:"Figmaを切æ–ã—ã¾ã—ãŸ",disconnectFailed:"Figmaã®åˆ‡æ–ã«å¤±æ•—ã—ã¾ã—ãŸã€‚ã‚‚ã†ä¸€åº¦ãŠè©¦ã—ãã ã•ã„。"},BH={capturing:"ã‚ャプãƒãƒ£ä¸...",figmaDescription:"Figmaã®ãƒ‡ã‚¶ã‚¤ãƒ³ã‚·ã‚¹ãƒ†ãƒ を分æžä¸ã€‚レイアウトã€ã‚¿ã‚¤ãƒã‚°ãƒ©ãƒ•ã‚£ã€ã‚«ãƒ©ãƒ¼ãƒˆãƒ¼ã‚¯ãƒ³ã‚’抽出ã—ã¦ã‚¢ãƒ—リを構築ã—ã¦ã„ã¾ã™ã€‚"},UH={webApp:"アプリ",aiAgent:"スーパーエージェント",recentApps:"最近ã®ã‚¢ãƒ—リ",templates:"テンプレート",favoritesComingSoon:"ãŠæ°—ã«å…¥ã‚Šã¯è¿‘日公開"},qH={new:"新機能",message:"本当ã®ãƒ‘ーソナルエージェントã«ã”挨拶ãã ã•ã„",cta:"今ã™ã試ã—ã¦ã¿ã‚‹"},VH={greeting:"ã“ã‚“ã«ã¡ã¯ {{name}}ã•ã‚“ã€",greetingGeneric:"ã“ã‚“ã«ã¡ã¯ã€",title:"自分ã ã‘ã®AIパーソナルエージェントを作ã‚ã†",createTitle:"自分ã ã‘ã®ã‚¹ãƒ¼ãƒ‘ーエージェントを作ã‚ã†",newBadge:"新機能",subtitle:"タスクを実行ã—ã€ãƒ„ールã¨é€£æºã—ã¦24時間365æ—¥ã‚ãªãŸã®ãŸã‚ã«åƒãAIエージェント",cta:"スーパーエージェントを作æˆ",creating:"作æˆä¸...",continueHero:{heading:"å‰å›žã®ç¶šãã‹ã‚‰å†é–‹",continueBtn:"{{name}}ã‚’ç¶šã‘ã‚‹",or:"ã¾ãŸã¯",createNew:"æ–°ã—ã„スーパーエージェントを作æˆ",activeAgo:"アクティブ {{time}}",you:"ã‚ãªãŸ"},features:{hassleFree:{title:"手間ã„らãš",desc:"Dockerä¸è¦ã€ã‚µãƒ¼ãƒãƒ¼ä¸è¦ã€ã‚»ãƒƒãƒˆã‚¢ãƒƒãƒ—ä¸è¦ã€‚スーパーエージェントを実行ã™ã‚‹ã ã‘。"},alwaysOn:{title:"常時稼åƒ",desc:"24時間365æ—¥ã€ã‚¿ã‚¹ã‚¯ã¨è‡ªå‹•化を実行ã—ã¾ã™ã€‚"},actions:{title:"実際ã®ã‚¢ã‚¯ã‚·ãƒ§ãƒ³ã‚’実行",desc:"タスクを処ç†ã—ã€æ›´æ–°ã‚’é€ä¿¡ã—ã€è‡ªå‹•çš„ã«å応ã—ã¾ã™ã€‚"},remembers:{title:"ã™ã¹ã¦ã‚’記憶",desc:"ã‚ãªãŸã®ç›®æ¨™ã€å¥½ã¿ã€ã‚³ãƒ³ãƒ†ã‚ストを把æ¡ã—ç¶šã‘ã¾ã™ã€‚"},everywhere:{title:"ã©ã“ã«ã§ã‚‚å˜åœ¨",desc:"WhatsAppã€Telegramã€Slackã€ãƒ–ラウザã§å‹•作ã—ã¾ã™ã€‚"},secure:{title:"デフォルトã§å®‰å…¨",desc:"許å¯ã—ãŸã‚‚ã®ã®ã¿ã«ã‚¢ã‚¯ã‚»ã‚¹ã—ã¾ã™ã€‚"}},untitled:"無題ã®ã‚¨ãƒ¼ã‚¸ã‚§ãƒ³ãƒˆ",active:"アクティブ",noDescription:"説明ã¯ã‚りã¾ã›ã‚“",edited:"{{time}}編集",updated:"{{time}}æ›´æ–°",failedToCreate:"エージェントã®ä½œæˆã«å¤±æ•—ã—ã¾ã—ãŸã€‚ã‚‚ã†ä¸€åº¦ãŠè©¦ã—ãã ã•ã„。",errorPage:{title:"å•題ãŒç™ºç”Ÿã—ã¾ã—ãŸ",descriptionLine1:"技術的ãªå•題ãŒç™ºç”Ÿã—ã¾ã—ãŸã€‚",descriptionLine2:"エージェント作æˆãƒšãƒ¼ã‚¸ã«æˆ»ã£ã¦ã€ã‚‚ã†ä¸€åº¦ãŠè©¦ã—ãã ã•ã„",goToAgents:"エージェント㸠→"}},$H={edited:"{{time}}編集",updated:"{{time}}æ›´æ–°",updatedRecently:"最近更新ã—ã¾ã—ãŸ"},WH={emptyTitle:"ã¾ã アプリを作æˆã—ã¦ã„ã¾ã›ã‚“。",emptySubtitle:"上ã®ãƒ•ォームを使ã£ã¦æœ€åˆã®ã‚¢ãƒ—リを作æˆã—ã¾ã—ょã†ï¼"},GH={dialogTitle:"クイックナビゲーション",dialogDescription:"ホームページã‹ã‚‰ã‚¢ãƒ—リã€ãƒ†ãƒ³ãƒ—レートã€è«‹æ±‚ã€ãƒ¯ãƒ¼ã‚¯ã‚¹ãƒšãƒ¼ã‚¹è¨å®šã¸ã™ã°ã‚„ã移動ã§ãã¾ã™ã€‚",searchPlaceholder:"アプリã€è¨å®šã€ãƒ†ãƒ³ãƒ—レートã€è«‹æ±‚を検索...",searching:"ワークスペースã®ã‚¢ãƒ—リを検索ä¸...",emptyTitle:"一致ã™ã‚‹ç§»å‹•å…ˆãŒã‚りã¾ã›ã‚“",emptyDescription:"アプリåã€è¨å®šã‚»ã‚¯ã‚·ãƒ§ãƒ³ã€ã¾ãŸã¯è«‹æ±‚やテンプレートã®ã‚ˆã†ãªãƒšãƒ¼ã‚¸åを試ã—ã¦ãã ã•ã„。",allApps:"ã™ã¹ã¦ã®ã‚¢ãƒ—リ",backToWorkspace:"ãƒ¯ãƒ¼ã‚¯ã‚¹ãƒšãƒ¼ã‚¹ã«æˆ»ã‚‹",templates:"テンプレート",billing:"請求",groups:{apps:"アプリ",navigate:"ページ",workspace:"ワークスペース",account:"アカウント"},subtitles:{favoriteApp:"ãŠæ°—ã«å…¥ã‚Šã®ã‚¢ãƒ—リ",recentApp:"最近ã®ã‚¢ãƒ—リ",page:"ページ"}},HH={label:"何を作りãŸã„ã§ã™ã‹ï¼Ÿ",more:"ã‚‚ã£ã¨",moreIdeas:"ã‚‚ã£ã¨ã‚¢ã‚¤ãƒ‡ã‚¢",categories:{CRM:"顧客管ç†","Dev productivity":"開発者ツール",Educational:"教育","Content Generation and Editing":"コンテンツ作æˆãƒ»ç·¨é›†","Personal Finance":"個人金èž","Health and Wellness":"å¥åº·ãƒ»ã‚¦ã‚§ãƒ«ãƒã‚¹",Productivity:"生産性","Travel Planning":"旅行計画",Entertainment:"エンターテインメント",Environmental:"環境","Home Management":"å®¶åºç®¡ç†","Creative Tools":"クリエイティブツール",Tasks:"タスク","CRM & Sales":"CRM・営æ¥",Portfolio:"ãƒãƒ¼ãƒˆãƒ•ォリオ",Finance:"財務","Scheduling & Booking":"スケジュール・予約",eCommerce:"eコマース","Construction & Trade":"建è¨ãƒ»è·äºº","Events & Community":"イベント・コミュニティ",Wellness:"ウェルãƒã‚¹","Operations & Logistics":"オペレーション・物æµ","Tasks & Workflows":"タスク・ワークフãƒãƒ¼","Content & Sites":"コンテンツ・サイト",Booking:"予約","E-commerce":"Eコマース",Projects:"プãƒã‚¸ã‚§ã‚¯ãƒˆ",Operations:"オペレーション"}},YH={hero:CH,recentApps:DH,recentAgents:TH,chat:EH,catalog:PH,billing:_H,permissions:xH,validation:IH,urlCapture:RH,integrations:zH,connectors:MH,planMode:NH,viewAll:FH,error:LH,figmaDialog:jH,figmaOAuth:OH,statusBanner:BH,tabs:UH,tryAgentBanner:qH,agent:VH,appCard:$H,appsList:WH,commandPalette:GH,ideas:HH},KH={title:"インテグレーション",subtitle:"APIやサービスã€ãƒ„ãƒ¼ãƒ«ã«æŽ¥ç¶šã—ã¦ã‚¢ãƒ—リã®å¯èƒ½æ€§ã‚’広ã’ã‚‹ã€äº‹å‰æ§‹ç¯‰æ¸ˆã¿ã®ã‚¤ãƒ³ãƒ†ã‚°ãƒ¬ãƒ¼ã‚·ãƒ§ãƒ³ã‚’ã”æ´»ç”¨ãã ã•ã„。"},ZH={placeholder:"インテグレーションを検索..."},JH={title:"一致ã™ã‚‹ã‚¤ãƒ³ãƒ†ã‚°ãƒ¬ãƒ¼ã‚·ãƒ§ãƒ³ãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“",description:"検索æ¡ä»¶ã‚„フィルターè¨å®šã‚’調整ã—ã¦ã¿ã¦ãã ã•ã„。"},QH={title:"コãƒã‚¯ã‚¿ãƒ¼",subtitle:"Base44ãŒã‚µãƒãƒ¼ãƒˆã™ã‚‹äººæ°—サービスã¸ã®ã‚¯ã‚¤ãƒƒã‚¯OAuth接続。"},XH={howToUse:"ä½¿ã„æ–¹",dialog:{getStarted:"å§‹ã‚æ–¹",navigateInstruction:"アプリã®ã‚¤ãƒ³ãƒ†ã‚°ãƒ¬ãƒ¼ã‚·ãƒ§ãƒ³ã‚¿ãƒ–ã§{{name}}を接続ã™ã‚‹ã¨ã€ãƒ‘ーソナライズã•れãŸãƒ—ãƒãƒ³ãƒ—トãŒåˆ©ç”¨ã§ãã¾ã™ã€‚",upgradeNotice:"ã“ã®ã‚¤ãƒ³ãƒ†ã‚°ãƒ¬ãƒ¼ã‚·ãƒ§ãƒ³ã«ã¯ãƒãƒƒã‚¯ã‚¨ãƒ³ãƒ‰é–¢æ•°ãŒå¿…è¦ã§ã€Builderプラン以上ã§ã®ã¿åˆ©ç”¨å¯èƒ½ã§ã™ã€‚<seePlansLink>プランを見る</seePlansLink>"}},eY={stripe:"製å“やサブスクリプションを販売ã—ã¦ã‚ªãƒ³ãƒ©ã‚¤ãƒ³ã§åŽç›Šã‚’得る。",salesforce:"CRMãƒ¬ã‚³ãƒ¼ãƒ‰ã‚’è‡ªå‹•åŒ–ãƒ»åŒæœŸã€‚",slack:"ユーザーã¨ã—ã¦ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã‚’é€ä¿¡ã—ã€Slackを管ç†ã€‚",slackbot:"Slackワークスペースã«ãƒ–ランドボットã¨ã—ã¦æŠ•ç¨¿ã€‚",notion:"ナレッジã¨ãƒ—ãƒã‚¸ã‚§ã‚¯ãƒˆãƒ‡ãƒ¼ã‚¿ã‚’æ•´ç†ãƒ»åŒæœŸã€‚",googlecalendar:"スケジュールã¨ã‚«ãƒ¬ãƒ³ãƒ€ãƒ¼ã‚¤ãƒ™ãƒ³ãƒˆã‚’管ç†ã€‚",googledrive:"アプリã§ç”Ÿæˆã—ãŸãƒ•ァイルをエクスãƒãƒ¼ãƒˆãƒ»ãƒãƒƒã‚¯ã‚¢ãƒƒãƒ—。",gmail:"メールé€ä¿¡ã¨å—信トレイを自動化。",googlesheets:"ã‚¹ãƒ—ãƒ¬ãƒƒãƒ‰ã‚·ãƒ¼ãƒˆãƒ‡ãƒ¼ã‚¿ã‚’åŒæœŸãƒ»ç®¡ç†ã€‚",googleslides:"プレゼンテーションを作æˆãƒ»ç®¡ç†ã€‚",googledocs:"ドã‚ュメントã®ç®¡ç†ã¨ä½œæˆã‚’自動化。",googlebigquery:"分æžãƒ‡ãƒ¼ã‚¿ã‚’ã‚¯ã‚¨ãƒªãƒ»åŒæœŸã€‚",googletasks:"ToDoリストã¨ã‚¿ã‚¹ã‚¯ã‚’管ç†ã€‚",googlemeet:"ビデオ会è°ã¨ãƒŸãƒ¼ãƒ†ã‚£ãƒ³ã‚°ã€‚",hubspot:"CRMãƒ‡ãƒ¼ã‚¿ã‚’åŒæœŸã—ã¦ãƒžãƒ¼ã‚±ãƒ†ã‚£ãƒ³ã‚°ã‚’自動化。",linkedin:"è¿‘æ³ã‚’ã‚·ã‚§ã‚¢ã—ã¦ãƒ—ãƒãƒ•ェッショナルプãƒãƒ•ィールã«ã‚¢ã‚¯ã‚»ã‚¹ã€‚",tiktok:"プãƒãƒ•ィール統計を追跡ã—ã¦å‹•画を確èªã€‚",discord:"ãƒãƒ£ãƒ³ãƒãƒ«ã«é€šçŸ¥ã—ã¦Discordコミュニティã¨é€£æºã€‚",wix:"Wixサイトデータã¨ãƒ“ジãƒã‚¹ãƒ„ールã«ã‚¢ã‚¯ã‚»ã‚¹ã€‚",github:"リãƒã‚¸ãƒˆãƒªã€Issueã€ãƒ—ルリクエストを管ç†ã€‚",gitlab:"プãƒã‚¸ã‚§ã‚¯ãƒˆã€MRã€CI/CDパイプラインを管ç†ã€‚",bamboohr:"従æ¥å“¡ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã¨HR管ç†ã€‚",wrike:"プãƒã‚¸ã‚§ã‚¯ãƒˆè¨ˆç”»ã¨ãƒãƒ¼ãƒ コーディãƒãƒ¼ã‚·ãƒ§ãƒ³ã€‚",box:"安全ãªã‚¯ãƒ©ã‚¦ãƒ‰ã‚³ãƒ³ãƒ†ãƒ³ãƒ„管ç†ã€‚",clickup:"プãƒã‚¸ã‚§ã‚¯ãƒˆã‚’æ•´ç†ã—ã¦ãƒãƒ¼ãƒ ã®ä½œæ¥ã‚’追跡。",google_analytics:"ウェブサイトトラフィックã¨ãƒ¦ãƒ¼ã‚¶ãƒ¼ã‚¤ãƒ³ã‚µã‚¤ãƒˆã‚’追跡。",outlook:"メールã¨ã‚«ãƒ¬ãƒ³ãƒ€ãƒ¼ã€‚",linear:"課題追跡ã¨ãƒ—ãƒã‚¸ã‚§ã‚¯ãƒˆç®¡ç†ã€‚",dropbox:"ファイルをクラウドã«ä¿å˜ãƒ»åŒæœŸã€‚",google_search_console:"SEOã¨æ¤œç´¢åˆ†æžã€‚",google_classroom:"教育ã¨ã‚³ãƒ¼ã‚¹ç®¡ç†ã€‚",airtable:"柔軟ãªãƒ‡ãƒ¼ã‚¿ãƒ™ãƒ¼ã‚¹ã¨ã‚¹ãƒ—レッドシート。",splitwise:"費用ã®åˆ†å‰²ã¨ã‚°ãƒ«ãƒ¼ãƒ—請求管ç†ã€‚",microsoft_teams:"ãƒãƒ¼ãƒ ãƒãƒ£ãƒƒãƒˆã€ãƒãƒ£ãƒ³ãƒãƒ«ã€ãƒŸãƒ¼ãƒ†ã‚£ãƒ³ã‚°ã€‚",share_point:"ドã‚ュメント管ç†ã¨ã‚³ãƒ©ãƒœãƒ¬ãƒ¼ã‚·ãƒ§ãƒ³ã€‚",one_drive:"クラウドファイルストレージ。",typeform:"フォームã€ã‚¢ãƒ³ã‚±ãƒ¼ãƒˆã€ãƒ‡ãƒ¼ã‚¿åŽé›†ã€‚",hugging_face:"AI推論ã¨ãƒ¢ãƒ‡ãƒ«ãƒªãƒã‚¸ãƒˆãƒªã€‚",calendly:"予約ã®è‡ªå‹•スケジュール管ç†ã€‚",contentful:"ヘッドレスCMSã¨ã‚³ãƒ³ãƒ†ãƒ³ãƒ„管ç†ã€‚",supabase:"スã‚ーマã®å‚ç…§ã€ãƒ‡ãƒ¼ã‚¿ã®èªã¿å–りã€ãƒ—ãƒã‚¸ã‚§ã‚¯ãƒˆã‚¹ãƒ†ãƒ¼ã‚¿ã‚¹ã®ç¢ºèªï¼ˆèªã¿å–り専用)。"},tY={page:KH,search:ZH,emptyState:JH,connectors:QH,connector:XH,catalog:eY},aY={title:"Launchpad",subtitle:"コミュニティãŒä½œæˆã—ãŸã‚¢ãƒ—リを発見・探索ã—よã†",shareApp:"アプリを共有ã™ã‚‹",allApps:"ã™ã¹ã¦ã®ã‚¢ãƒ—リ",noAppsFound:"アプリãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“",noAppsHint:"フィルターをクリアã™ã‚‹ã‹ã€åˆ¥ã®ã‚ãƒ¼ãƒ¯ãƒ¼ãƒ‰ã§æ¤œç´¢ã—ã¦ã¿ã¦ãã ã•ã„。",noAppsEmpty:"Launchpadã§æœ€åˆã®ã‚¢ãƒ—リを公開ã—ã¾ã—ょã†ï¼",clearFilters:"フィルターをクリア",goToFirstPage:"最åˆã®ãƒšãƒ¼ã‚¸ã¸",retry:"å†è©¦è¡Œ",publishedToast:"ã‚ãªãŸã®ã‚¢ãƒ—リãŒLaunchpadã§å…¬é–‹ã•れã¾ã—ãŸï¼"},nY={placeholder:"Launchpadã§ã‚¢ãƒ—リを検索..."},iY={all:"ã™ã¹ã¦"},rY={title:"トレンド"},oY={title:"トップアプリ",empty:"ã“ã®æœŸé–“ã®ãƒˆãƒƒãƒ—アプリã¯ã¾ã ã‚りã¾ã›ã‚“。",thisWeek:"今週",thisMonth:"今月",allTime:"全期間"},sY={live:"ライブ",someone:"誰ã‹ãŒ",sentences:{vote:"{{user}}ãŒãŸã£ãŸä»Š{{app}}ã«æŠ•ç¥¨ã—ã¾ã—ãŸ",like:"{{user}}ãŒãŸã£ãŸä»Š{{app}}ã«ã„ã„ãã—ã¾ã—ãŸ",publish:"{{user}}ãŒãŸã£ãŸä»Š{{app}}を公開ã—ã¾ã—ãŸ",default:"{{user}}ãŒãŸã£ãŸä»Š{{app}}ã‚’æ“作ã—ã¾ã—ãŸ"}},lY={signInPrompt:"Launchpadã«ã‚¢ãƒ—リを公開ã™ã‚‹ã«ã¯ã‚µã‚¤ãƒ³ã‚¤ãƒ³ã—ã¦ãã ã•ã„。",signIn:"サインイン",back:"戻る",next:"次ã¸",publish:"公開ã™ã‚‹",publishing:"公開ä¸...",stepOf:"ステップ {{current}} / {{total}}",successToast:"ã‚ãªãŸã®ã‚¢ãƒ—リãŒLaunchpadã§å…¬é–‹ã•れã¾ã—ãŸï¼",failedDefault:"公開ã«å¤±æ•—ã—ã¾ã—ãŸã€‚ã‚‚ã†ä¸€åº¦ãŠè©¦ã—ãã ã•ã„。",categoriesLoadFailed:"カテゴリã®èªã¿è¾¼ã¿ã«å¤±æ•—ã—ã¾ã—ãŸã€‚é–‰ã˜ã¦ã‹ã‚‰ã‚‚ã†ä¸€åº¦ãŠè©¦ã—ãã ã•ã„。",categoriesRetry:"å†è©¦è¡Œ",steps:{selectApp:"ã‚¢ãƒ—ãƒªã‚’é¸æŠž",details:"詳細",preview:"プレビュー"},appPicker:{chooseApp:"Launchpadã«å…¬é–‹ã™ã‚‹ã‚¢ãƒ—リをé¸ã‚“ã§ãã ã•ã„。",searchPlaceholder:"アプリを検索...",loadFailed:"アプリをèªã¿è¾¼ã‚ã¾ã›ã‚“ã§ã—ãŸã€‚",tryAgain:"å†è©¦è¡Œ",noApps:"ã¾ã アプリãŒã‚りã¾ã›ã‚“。",noAppsForQuery:"「{{query}}ã€ã«ä¸€è‡´ã™ã‚‹ã‚¢ãƒ—リãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“",loadMore:"ã‚‚ã£ã¨èªã¿è¾¼ã‚€"},preview:{caption:"Launchpadã®ã‚°ãƒªãƒƒãƒ‰ã§ã®è¡¨ç¤ºãƒ—レビュー:",creatorFallback:"ã‚ãªãŸ"},categoryPicker:{count:"{{current}}/{{max}} ã‚«ãƒ†ã‚´ãƒªã‚’é¸æŠžä¸"},validation:{nameRequired:"アプリåã¯å¿…é ˆã§ã™",descriptionRequired:"çŸã„説明ã¯å¿…é ˆã§ã™",descriptionTooLong:"最大 {{max}} æ–‡å—",categoriesRequired:"1ã¤ä»¥ä¸Šã®ã‚«ãƒ†ã‚´ãƒªã‚’é¸æŠžã—ã¦ãã ã•ã„",screenshotsRequired:"1ã¤ä»¥ä¸Šã®ã‚¹ã‚¯ãƒªãƒ¼ãƒ³ã‚·ãƒ§ãƒƒãƒˆã‚’アップãƒãƒ¼ãƒ‰ã—ã¦ãã ã•ã„"}},cY={uploadFailed:"一部ã®ã‚¹ã‚¯ãƒªãƒ¼ãƒ³ã‚·ãƒ§ãƒƒãƒˆã®ã‚¢ãƒƒãƒ—ãƒãƒ¼ãƒ‰ã«å¤±æ•—ã—ã¾ã—ãŸã€‚ã‚‚ã†ä¸€åº¦ãŠè©¦ã—ãã ã•ã„。",uploading:"アップãƒãƒ¼ãƒ‰ä¸...",addImage:"ç”»åƒã‚’è¿½åŠ ",count:"{{current}}/{{max}} スクリーンショット。ドラッグã§ä¸¦ã¹æ›¿ãˆã€‚"},dY={previous:"å‰ã¸",next:"次ã¸",pageOf:"{{page}} / {{totalPages}} ページ"},uY={justNow:"ãŸã£ãŸä»Š",minutesAgo:"{{count}}分å‰",hoursAgo:"{{count}}時間å‰",daysAgo:"{{count}}æ—¥å‰"},pY={appName:"アプリå",shortDescription:"ç°¡å˜ãªèª¬æ˜Ž",shortDescriptionPlaceholder:"ã‚¢ãƒ—ãƒªã®æ©Ÿèƒ½ã‚’ç°¡æ½”ã«èª¬æ˜Žã—ã¦ãã ã•ã„",longDescription:"詳細ãªèª¬æ˜Ž",longDescriptionPlaceholder:"アプリã«ã¤ã„ã¦ã‚‚ã£ã¨è©³ã—ãæ•™ãˆã¦ãã ã•ã„...",optional:"ä»»æ„",categories:"カテゴリ",screenshots:"スクリーンショット",generateWithAi:"AIã§ç”Ÿæˆ",aiComingSoon:"AI生æˆã¯è¿‘日公開予定ã§ã™"},mY={tryApp:"アプリを試ã™",share:"共有",shareToast:"リンクをクリップボードã«ã‚³ãƒ”ーã—ã¾ã—ãŸï¼",shareError:"共有ã«å¤±æ•—ã—ã¾ã—ãŸ",about:"概è¦",moreByCreator:"{{name}}ã®ä»–ã®ã‚¢ãƒ—リ",backToLaunchpad:"Launchpadã«æˆ»ã‚‹",notFound:"アプリãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“",notFoundHint:"ã“ã®ã‚¢ãƒ—リã¯å‰Šé™¤ã¾ãŸã¯éžå…¬é–‹ã«ãªã£ãŸå¯èƒ½æ€§ãŒã‚りã¾ã™ã€‚",loadFailed:"アプリã®è©³ç´°ã®èªã¿è¾¼ã¿ã«å¤±æ•—ã—ã¾ã—ãŸã€‚",unknownCreator:"ã“ã®ä½œæˆè€…"},gY={title:"コメント",placeholder:"コメントを書ã...",submit:"投稿",submitting:"投稿ä¸...",empty:"ã¾ã コメントã¯ã‚りã¾ã›ã‚“。最åˆã®ã‚³ãƒ¡ãƒ³ãƒˆã‚’投稿ã—ã¾ã—ょã†ï¼",loadMore:"ã•らã«ã‚³ãƒ¡ãƒ³ãƒˆã‚’èªã¿è¾¼ã‚€",deleteFailed:"コメントã®å‰Šé™¤ã«å¤±æ•—ã—ã¾ã—ãŸã€‚",postFailed:"ã‚³ãƒ¡ãƒ³ãƒˆã®æŠ•ç¨¿ã«å¤±æ•—ã—ã¾ã—ãŸã€‚",signInToComment:"コメントã™ã‚‹ã«ã¯ã‚µã‚¤ãƒ³ã‚¤ãƒ³ã—ã¦ãã ã•ã„",anonymous:"匿å"},hY={likeFailed:"ã„ã„ãã®æ›´æ–°ã«å¤±æ•—ã—ã¾ã—ãŸã€‚",voteFailed:"æŠ•ç¥¨ã®æ›´æ–°ã«å¤±æ•—ã—ã¾ã—ãŸã€‚",selfVoteError:"自分ã®ã‚¢ãƒ—リã«ã¯æŠ•票ã§ãã¾ã›ã‚“。"},fY={loadFailed:"Launchpadã®ãƒ‡ãƒ¼ã‚¿ã‚’èªã¿è¾¼ã‚ã¾ã›ã‚“ã§ã—ãŸã€‚ã‚‚ã†ä¸€åº¦ãŠè©¦ã—ãã ã•ã„。",browseFailed:"アプリをèªã¿è¾¼ã‚ã¾ã›ã‚“ã§ã—ãŸã€‚ã‚‚ã†ä¸€åº¦ãŠè©¦ã—ãã ã•ã„。",topAppsFailed:"トップアプリをèªã¿è¾¼ã‚ã¾ã›ã‚“ã§ã—ãŸã€‚ã‚‚ã†ä¸€åº¦ãŠè©¦ã—ãã ã•ã„。",categoriesFailed:"カテゴリをèªã¿è¾¼ã‚ã¾ã›ã‚“ã§ã—ãŸã€‚",refreshFailed:"æ›´æ–°ã«å¤±æ•—ã—ã¾ã—㟠— ページをå†èªã¿è¾¼ã¿ã—ã¦ãã ã•ã„。"},vY={page:aY,search:nY,categories:iY,trending:rY,topApps:oY,liveActivity:sY,publish:lY,screenshots:cY,pagination:dY,relativeTime:uY,fillDetails:pY,detail:mY,comments:gY,engagement:hY,errors:fY},bY={title:"アプリ",allAgentsTitle:"ã™ã¹ã¦ã®ã‚¨ãƒ¼ã‚¸ã‚§ãƒ³ãƒˆ",createNewApp:"æ–°ã—ã„アプリを作æˆ",createNewAgent:"æ–°ã—ã„エージェントを作æˆ",tabRecents:"最近",tabFavorites:"ãŠæ°—ã«å…¥ã‚Š",tabAllApps:"ã™ã¹ã¦ã®ã‚¢ãƒ—リ",tabAllAgents:"ã™ã¹ã¦ã®ã‚¨ãƒ¼ã‚¸ã‚§ãƒ³ãƒˆ",searchPlaceholder:"アプリを検索",gridView:"グリッド表示",listView:"リスト表示",appTypeLabel:"アプリã®ç¨®é¡ž",appTypeApps:"アプリ",appTypeAgents:"エージェント",tableHeaderName:"åå‰",tableHeaderDescription:"説明",tableHeaderActions:"アクション",folderActionAddApps:"ã‚¢ãƒ—ãƒªã‚’è¿½åŠ ",folderActionRename:"åå‰ã‚’変更",folderActionDelete:"削除",filterOwnedByMe:"è‡ªåˆ†ãŒæ‰€æœ‰",filterMyAppsPersonal:"自分ã®ã‚¢ãƒ—リ(個人ワークスペース)",filterAllPlatform:"ã™ã¹ã¦ã®ã‚¢ãƒ—リ(プラットフォーム全体)",filterMyAppsWorkspace:"{{workspaceName}}ワークスペースã®è‡ªåˆ†ã®ã‚¢ãƒ—リ",filterAllAppsWorkspace:"{{workspaceName}}ワークスペースã®ã™ã¹ã¦ã®ã‚¢ãƒ—リ",addNewFolder:"æ–°ã—ã„ãƒ•ã‚©ãƒ«ãƒ€ã‚’è¿½åŠ ",sortLastUpdated:"最終更新",sortLastCreated:"最終作æˆ",sortNameAsc:"åå‰ (A-Z)",sortNameDesc:"åå‰ (Z-A)",filterCreatedByMe:"自分ãŒä½œæˆ",filterCreatedByAnyone:"ã™ã¹ã¦ã®ãƒ¦ãƒ¼ã‚¶ãƒ¼",filterAllPlatformApps:"ã™ã¹ã¦ã®ãƒ—ラットフォームアプリ",filterMyApps:"{{workspaceName}}ã®è‡ªåˆ†ã®ã‚¢ãƒ—リ",planModeDescription:"ã“ã®ã‚¢ãƒ—リケーションã¯ç¾åœ¨ãƒ—ランモードã«ã‚りã€ã¾ã 作æˆã•れã¦ã„ã¾ã›ã‚“。",noDescription:"説明ãªã—",byCreator:"作æˆè€…:{{name}}",createdAgo:"{{timeAgo}}ã«ä½œæˆ",untitledPlan:"無題ã®ãƒ—ラン",tableHeaderApp:"アプリ",tableHeaderLastUpdated:"最終更新",tableHeaderCreatedBy:"作æˆè€…",emptyFolderTitle:"アプリãŒã¾ã è¿½åŠ ã•れã¦ã„ã¾ã›ã‚“",emptyFolderMessage:"è¿½åŠ ã™ã‚‹ã¨ã“ã“ã«ã‚¢ãƒ—リãŒè¡¨ç¤ºã•れã¾ã™",addExistingApps:"æ—¢å˜ã®ã‚¢ãƒ—ãƒªã‚’è¿½åŠ ",emptyFavoritesTitle:"ãŠæ°—ã«å…¥ã‚Šã®ã‚¢ãƒ—リãŒã‚りã¾ã›ã‚“",emptyFavoritesMessage:"ã‚¢ãƒ—ãƒªã«æ˜Ÿã‚’ã¤ã‘ã‚‹ã¨ã“ã“ã«è¿½åŠ ã•れã¾ã™ã€‚",emptyRecentsTitle:"最近ã®ã‚¢ã‚¯ãƒ†ã‚£ãƒ“ティãªã—",emptyRecentsMessage:"é–‹ã„ãŸã‚¢ãƒ—リãŒã“ã“ã«è¡¨ç¤ºã•れã¾ã™ã€‚",emptySearchTitle:"アプリãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“",emptySearchMessage:"æ¡ä»¶ã«ä¸€è‡´ã™ã‚‹ã‚¢ãƒ—リãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“。",clearFilters:"フィルターをクリア",previous:"å‰ã¸",next:"次ã¸",failedToUpdateStar:"ã‚¹ã‚¿ãƒ¼ã®æ›´æ–°ã«å¤±æ•—ã—ã¾ã—ãŸ",failedToUpdateFavorite:"ãŠæ°—ã«å…¥ã‚Šã®æ›´æ–°ã«å¤±æ•—ã—ã¾ã—ãŸ",pleaseRetry:"ã‚‚ã†ä¸€åº¦ãŠè©¦ã—ãã ã•ã„",folderCreated:"フォルダを作æˆã—ã¾ã—ãŸ",folderRenamed:"フォルダåを変更ã—ã¾ã—ãŸ",folderDeleted:"フォルダを削除ã—ã¾ã—ãŸ",folderUpdated:"フォルダを更新ã—ã¾ã—ãŸ",filter:"フィルター"},yY={showAll:"ã™ã¹ã¦è¡¨ç¤º",appCount_one:"{{count}}個ã®ã‚¢ãƒ—リ",appCount_other:"{{count}}個ã®ã‚¢ãƒ—リ",addApps:"ã‚¢ãƒ—ãƒªã‚’è¿½åŠ ",rename:"åå‰ã‚’変更",delete:"削除",cancel:"ã‚ャンセル",save:"ä¿å˜",saving:"ä¿å˜ä¸...",create:"作æˆ",deleting:"削除ä¸...",createFirstFolder:"最åˆã®ãƒ•ォルダを作æˆ",createNewFolder:"æ–°ã—ã„フォルダを作æˆ",renameFolder:"フォルダåを変更",folderVisibilityDescription:"ãƒ•ã‚©ãƒ«ãƒ€ã®æ•´ç†ã¯ãƒ¯ãƒ¼ã‚¯ã‚¹ãƒšãƒ¼ã‚¹å…¨ä½“ã«è¡¨ç¤ºã•れã¾ã™ã€‚",folderNamePlaceholder:"フォルダå",visibility:"表示è¨å®š",scopeWorkspace:"ワークスペース",scopePersonal:"個人",personalScopeHint:"ã‚ãªãŸã ã‘ã«è¡¨ç¤º",deleteFolder:"フォルダを削除",deleteFolderDescription:'"{{name}}"を削除ã—ã¾ã™ã‹ï¼Ÿã“ã®ãƒ•ォルダã®ã‚¢ãƒ—リã¯å‰Šé™¤ã•れãšã€ãƒ•ォルダã®ã¿å‰Šé™¤ã•れã¾ã™ã€‚',manageFolders:"フォルダを管ç†",manageFoldersDescription:"ã“ã®ã‚¢ãƒ—リをフォルダã«è¿½åŠ ã¾ãŸã¯å‰Šé™¤ã—ã¾ã™ã€‚",searchFoldersPlaceholder:"フォルダを検索...",createNewFolderButton:"æ–°ã—ã„フォルダを作æˆ",noFoldersMatchSearch:"検索ã«ä¸€è‡´ã™ã‚‹ãƒ•ォルダãŒã‚りã¾ã›ã‚“",noFoldersYet:"フォルダãŒã¾ã ã‚りã¾ã›ã‚“",allFolders:"ã™ã¹ã¦ã®ãƒ•ォルダ",searchFolders:"フォルダを検索",scopeFilterAll:"ã™ã¹ã¦",sortNameAsc:"åå‰ A–Z",sortNameDesc:"åå‰ Z–A",sortMostApps:"アプリ数ãŒå¤šã„é †",sortFewestApps:"アプリ数ãŒå°‘ãªã„é †",noFoldersFound:"フォルダãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“",noFoldersMatchCriteria:"検索æ¡ä»¶ã«ä¸€è‡´ã™ã‚‹ãƒ•ォルダãŒã‚りã¾ã›ã‚“。",clearSearch:"検索をクリア",manageAppsInFolder:"フォルダ内ã®ã‚¢ãƒ—リを管ç†",manageAppsDescription:'"{{name}}"ã®ã‚¢ãƒ—ãƒªã‚’è¿½åŠ ã¾ãŸã¯å‰Šé™¤ã—ã¾ã™ã€‚',searchAppsPlaceholder:"アプリを検索...",noAppsMatchSearch:"検索ã«ä¸€è‡´ã™ã‚‹ã‚¢ãƒ—リãŒã‚りã¾ã›ã‚“",noAppsFound:"アプリãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“",loadMore:"ã‚‚ã£ã¨èªã¿è¾¼ã‚€",appUpdatedAgo:"{{timeAgo}}ã«æ›´æ–°",saveWithCount:"{{label}}({{count}}件)",operationFailed:"æ“作ã«å¤±æ•—ã—ã¾ã—ãŸã€‚ã‚‚ã†ä¸€åº¦ãŠè©¦ã—ãã ã•ã„。"},kY={viewLiveApp:"ライブアプリを表示",share:"共有",rename:"åå‰ã‚’変更",cloneApp:"アプリを複製",appSettings:"アプリè¨å®š",delete:"削除",appDeleted:"アプリを削除ã—ã¾ã—ãŸ",appDeletedDescription:"「{{name}}ã€ãŒå‰Šé™¤ã•れã¾ã—ãŸ",failedToDelete:"アプリã®å‰Šé™¤ã«å¤±æ•—ã—ã¾ã—ãŸ",failedToDeleteDescription:"アプリã®å‰Šé™¤ä¸ã«ã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ã¾ã—ãŸ",manageFolders:"フォルダを管ç†",removeFromFolder:"フォルダã‹ã‚‰å‰Šé™¤",goToAppSettings:"アプリè¨å®šã¸",deleteApp:"アプリを削除",deleteAppTitle:'"{{name}}"を削除ã—ã¾ã™ã‹ï¼Ÿ',deleteAppDescription:"ã“ã®ã‚¢ãƒ—リã¨ãã®ã™ã¹ã¦ã®ãƒ‡ãƒ¼ã‚¿ãŒå®Œå…¨ã«å‰Šé™¤ã•れã¾ã™ã€‚ã“ã®æ“作ã¯å…ƒã«æˆ»ã›ã¾ã›ã‚“。",appRemovedFromFolder:"アプリをフォルダã‹ã‚‰å‰Šé™¤ã—ã¾ã—ãŸ",failedToRemoveFromFolder:"フォルダã‹ã‚‰ã‚¢ãƒ—リを削除ã§ãã¾ã›ã‚“ã§ã—ãŸ",addedToFolders_one:"アプリを{{count}}個ã®ãƒ•ォルダã«è¿½åŠ ",addedToFolders_other:"アプリを{{count}}個ã®ãƒ•ォルダã«è¿½åŠ ",removedFromFolders_one:"アプリを{{count}}個ã®ãƒ•ォルダã‹ã‚‰å‰Šé™¤",removedFromFolders_other:"アプリを{{count}}個ã®ãƒ•ォルダã‹ã‚‰å‰Šé™¤",failedToUpdateFolders:"ãƒ•ã‚©ãƒ«ãƒ€ã®æ›´æ–°ã«å¤±æ•—ã—ã¾ã—ãŸ",foldersUpdated:"{{added}}ã€{{removed}}",removeFromFavorites:"ãŠæ°—ã«å…¥ã‚Šã‹ã‚‰å‰Šé™¤",addToFavorites:"ãŠæ°—ã«å…¥ã‚Šã«è¿½åŠ "},wY={title:"アプリåを変更",description:"アプリåã¯ã‚ãªãŸã¨ãƒ¦ãƒ¼ã‚¶ãƒ¼ã«è¡¨ç¤ºã•れã¾ã™ã€‚",inputPlaceholder:"アプリåを入力",urlUpdateNote:"アプリåを変更ã™ã‚‹ã¨ã€ã‚¢ãƒ—リã®URLã‚‚æ›´æ–°ã•れã¾ã™ã€‚",cancel:"ã‚ャンセル",save:"ä¿å˜",saving:"ä¿å˜ä¸...",nameRequired:"アプリåã¯å¿…é ˆã§ã™",enterDifferentName:"別ã®åå‰ã‚’入力ã—ã¦ãã ã•ã„",successTitle:"アプリåを変更ã—ã¾ã—ãŸ",successDescription:"アプリåを「{{name}}ã€ã«å¤‰æ›´ã—ã¾ã—ãŸ",successDescriptionUrlFailed:"アプリåを「{{name}}ã€ã«å¤‰æ›´ã—ã¾ã—ãŸãŒã€URLã‚’æ›´æ–°ã§ãã¾ã›ã‚“ã§ã—ãŸã€‚",failedTitle:"アプリåã®å¤‰æ›´ã«å¤±æ•—ã—ã¾ã—ãŸ",failedDescription:"アプリåã®å¤‰æ›´ä¸ã«ã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ã¾ã—ãŸ"},AY="èªã¿è¾¼ã¿ä¸...",SY="(コピー)",CY={cloningTitle:"{{appName}}をクãƒãƒ¼ãƒ³ä¸",cloningDescription:"å°‘ã—æ™‚é–“ãŒã‹ã‹ã‚‹å ´åˆãŒã‚りã¾ã™ã€‚準備ãŒã§ããŸã‚‰Appsページã«è¡¨ç¤ºã•れã¾ã™",goToApps:"Appsã¸ç§»å‹•",confirmingPurchaseTitle:"購入を確èªä¸...",confirmingPurchaseSubtitle:"é€šå¸¸ã¯æ•°ç§’ã§å®Œäº†ã—ã¾ã™",errorTitle:"エラー",goBack:"戻る",cloneNotAllowedTitle:"クãƒãƒ¼ãƒ³ã§ãã¾ã›ã‚“",cloneNotAllowedDescription:"ã“ã®ã‚¢ãƒ—リã¯ãƒãƒƒã‚¯ã‚¨ãƒ³ãƒ‰æ©Ÿèƒ½ãŒå¿…è¦ã§ã™ã€‚クãƒãƒ¼ãƒ³ã™ã‚‹ã«ã¯Builderプラン以上ãŒå¿…è¦ã§ã™ã€‚",configureSecrets:"シークレットをè¨å®š",cloneTitle:"{{name}}をクãƒãƒ¼ãƒ³",cloneButton:"{{name}}をクãƒãƒ¼ãƒ³",cloningButton:"{{name}}をクãƒãƒ¼ãƒ³ä¸...",defaultAppName:"アプリ",preparing:"準備ä¸...",errorCloningApp:"アプリã®ã‚¯ãƒãƒ¼ãƒ³ä¸ã«ã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ã¾ã—ãŸ",errorFetchingRequirements:"クãƒãƒ¼ãƒ³è¦ä»¶ã®å–å¾—ä¸ã«ã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ã¾ã—ãŸ",errorPurchaseTimeout:"購入ã®ç¢ºèªã«äºˆæƒ³ã‚ˆã‚Šæ™‚é–“ãŒã‹ã‹ã£ã¦ã„ã¾ã™ã€‚確èªãƒ¡ãƒ¼ãƒ«ã‚’ã”確èªãã ã•ã„。å•題ãŒè§£æ±ºã—ãªã„å ´åˆã¯ã‚µãƒãƒ¼ãƒˆã«ãŠå•ã„åˆã‚ã›ãã ã•ã„。",errorVerifyPurchase:"購入を確èªã§ãã¾ã›ã‚“ã§ã—ãŸã€‚ã‚‚ã†ä¸€åº¦ãŠè©¦ã—ãã ã•ã„。"},DY={userApps:bY,folders:yY,appActions:kY,renameApp:wY,loading:AY,copySuffix:SY,remixPage:CY},TY={title:"Base44 アプリテンプレートマーケットプレイス - 利用è¦ç´„",lastUpdated:"最終更新日:2025å¹´11月18æ—¥"},EY={header:TY},PY={home:"ホーム",allApps:"ã™ã¹ã¦ã®ã‚¢ãƒ—リ",apps:"アプリ",integrations:"連æº",appTemplates:"アプリテンプレート",hirePartner:"パートナーを探ã™",affiliates:"アフィリエイト",docsSupport:"ドã‚ュメント&サãƒãƒ¼ãƒˆ",admins:"管ç†è€…",referFriends:"å‹é”を紹介",language:"言語",startBuilding:"作æˆã‚’é–‹å§‹"},_Y={title:"ワークスペースを作æˆ",subtitle:"ワークスペースメンãƒãƒ¼ã¨ã®ã‚³ãƒ©ãƒœãƒ¬ãƒ¼ã‚·ãƒ§ãƒ³ã‚’å§‹ã‚ã¾ã—ょã†",back:"戻る",formTitle:"ãƒ¯ãƒ¼ã‚¯ã‚¹ãƒšãƒ¼ã‚¹æƒ…å ±",nameLabel:"ワークスペースå",namePlaceholder:"ワークスペースåを入力ã—ã¦ãã ã•ã„",nameHint:"ワークスペースを表ã™åå‰ã‚’é¸ã‚“ã§ãã ã•ã„",nameRequiredError:"ワークスペースåã¯å¿…é ˆã§ã™",createFailedError:"ワークスペースã®ä½œæˆã«å¤±æ•—ã—ã¾ã—ãŸ",limitReachedError:"ワークスペースã®ä¸Šé™ã«é”ã—ã¾ã—ãŸã€‚最大3ã¤ã®ãƒ¯ãƒ¼ã‚¯ã‚¹ãƒšãƒ¼ã‚¹ã‚’作æˆã§ãã¾ã™ã€‚",cancelButton:"ã‚ャンセル",createButton:"ワークスペースを作æˆ",creatingButton:"ワークスペースを作æˆä¸...",whatHappensNext:{title:"次ã«ä½•ãŒèµ·ã“りã¾ã™ã‹ï¼Ÿ",ownerPermissions:"ã‚ãªãŸã¯ãƒ¯ãƒ¼ã‚¯ã‚¹ãƒšãƒ¼ã‚¹ã®ã‚ªãƒ¼ãƒŠãƒ¼ã¨ã—ã¦ã€å®Œå…¨ãªç®¡ç†æ¨©é™ã‚’æŒã¡ã¾ã™",inviteMembers:"ワークスペースメンãƒãƒ¼ã‚’招待ã—ã€ãƒ©ã‚¤ã‚»ãƒ³ã‚¹ã‚’管ç†ã§ãã¾ã™",accessDashboard:"ワークスペースã®ãƒ€ãƒƒã‚·ãƒ¥ãƒœãƒ¼ãƒ‰ã«ã‚¢ã‚¯ã‚»ã‚¹ã—ã¦å§‹ã‚ã¾ã—ょã†"}},xY={workspace:"ワークスペース",backToWorkspace:"{{workspaceName}} ã«æˆ»ã‚‹",settings:"è¨å®š",inviteMembers:"メンãƒãƒ¼ã‚’招待",myWorkspaces:"マイワークスペース",createWorkspace:"ワークスペースを作æˆ",noWorkspacesFound:"ワークスペースãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“",accountSettings:"アカウントè¨å®š",apiKey:"APIã‚ー",helpSupport:"ヘルプ&サãƒãƒ¼ãƒˆ",becomeAffiliate:"アフィリエイトã«ãªã‚‹",defaultUser:"ユーザー",defaultUserInitial:"ユ",referFriend:"å‹é”を紹介ã™ã‚‹",giftCards:"ギフトカード",sendGiftCard:"ギフトカードをé€ã‚‹",notifications:"通知",logOut:"ãƒã‚°ã‚¢ã‚¦ãƒˆ",aboutApp:"アプリã«ã¤ã„ã¦",upgradePlan:"プランをアップグレード",winCredits:"無料クレジットをç²å¾—",pricingPlans:"料金プラン",documentation:"ドã‚ュメント",getHelp:"ヘルプ",memberCount_one:"{{count}} メンãƒãƒ¼",memberCount_other:"{{count}} メンãƒãƒ¼",myProfile:"マイプãƒãƒ•ィール",viewProfile:"プãƒãƒ•ィールを見る",failedToLoadProfile:"プãƒãƒ•ィールã®èªã¿è¾¼ã¿ã«å¤±æ•—ã—ã¾ã—ãŸ",user:"ユーザー"},IY={ariaLabel:"エージェントメニュー",agentFallback:"エージェント"},RY={integrationCredits:"連æºã‚¯ãƒ¬ã‚¸ãƒƒãƒˆ",monthlyCredits:"月間クレジット",messageCredits:"メッセージクレジット",dailyCredits:"日間クレジット",giftCardCredits:"ギフトクレジット",renewsAt:"æ›´æ–°æ—¥: {{date}}",giftCardTooltip:"ギフトカードクレジットã¯ãƒ—ランクレジットより先ã«ä½¿ç”¨ã•れã¾ã™ã€‚",percentUsed:"{{percent}}% 使用済ã¿",messagesRemaining_one:"残り {{count}} メッセージ",messagesRemaining_other:"残り {{count}} メッセージ",upgradeYourPlan:"プランをアップグレード",getMoreOutOfYourApps:"アプリをもã£ã¨æ´»ç”¨ã—ã¾ã—ょã†",upgradeYourPlanToPro:"プランをProã«ã‚¢ãƒƒãƒ—グレード",redeemDescription:"å¼•ãæ›ãˆå¾Œã€ã‚¯ãƒ¬ã‚¸ãƒƒãƒˆã¯ã‚ãªãŸã®ãƒ¯ãƒ¼ã‚¯ã‚¹ãƒšãƒ¼ã‚¹ã«é©ç”¨ã•れã¾ã™ã€‚",creditsRemaining_one:"残り {{count}} クレジット",creditsRemaining_other:"残り {{count}} クレジット"},zY={label:"コミュニティ",appTemplates:"アプリテンプレート",appTemplatesDesc:"コミュニティテンプレートã§ç´ æ—©ã開始。",hirePartner:"パートナーを探ã™",hirePartnerDesc:"パートナーを見ã¤ã‘ã¦ã‚³ãƒ©ãƒœãƒ¬ãƒ¼ã‚·ãƒ§ãƒ³ã‚’å§‹ã‚ã¾ã—ょã†ã€‚",spotlight:"スãƒãƒƒãƒˆãƒ©ã‚¤ãƒˆ",spotlightDesc:"注目ã®ã‚¢ãƒ—リケーションを探索。",affiliateProgram:"アフィリエイトプãƒã‚°ãƒ©ãƒ ",affiliateProgramDesc:"Base44アフィリエイトã«ãªã‚‹ã€‚",joinUsOn:"フォãƒãƒ¼ã™ã‚‹"},MY=JSON.parse(`{"title":"è¨å®š","lockedFeature":{"includedInPlan":"{{plan}}プラン以上ã«å«ã¾ã‚Œã¦ã„ã¾ã™","includedInPlanExact":"{{plan}}プランã«å«ã¾ã‚Œã¦ã„ã¾ã™","viewPlans":"プランを見る","talkToSales":"å–¶æ¥ã«ç›¸è«‡ã™ã‚‹","authSecurity":{"title":"ワークスペースアクセスを管ç†ã™ã‚‹","body":"è¦åˆ¶ç”£æ¥ã‚„ã‚»ã‚ュリティをé‡è¦–ã™ã‚‹çµ„ç¹”ã«ä¸å¯æ¬ ","ssoAccess":"シングルサインオン(SSO)ã§ãƒ‘スワードリスクを軽減","domainVerification":"ドメイン検証ã§å‚åŠ è€…ã‚’ç®¡ç†","ipWhitelisting":"ä¿¡é ¼ã§ãã‚‹IPアドレスã‹ã‚‰ã®ã¿ã‚¢ã‚¯ã‚»ã‚¹ã‚’許å¯"},"integrations":{"title":"一度è¨å®šã™ã‚Œã°ã€ãƒ¯ãƒ¼ã‚¯ã‚¹ãƒšãƒ¼ã‚¹å…¨ä½“ã§åˆ©ç”¨","body":"アプリ全体ã§APIã¨å¤–部ツールを標準化ã™ã‚‹ãƒãƒ¼ãƒ å‘ã‘。","configureOnce":"ã™ã¹ã¦ã®ã‚¢ãƒ—リã¨ãƒãƒ¼ãƒ メイトå‘ã‘ã«API連æºã‚’一度ã ã‘è¨å®š","sharedAccess":"ワークスペースã®èª°ã‚‚ãŒæŽ¥ç¶šãƒ„ãƒ¼ãƒ«ã‚’ã™ãã«åˆ©ç”¨å¯èƒ½","consistentConnections":"ã™ã¹ã¦ã®ã‚¢ãƒ—リã§å¤–部接続ã®ä¸€è²«æ€§ã‚’ç¶æŒ"},"appsConfiguration":{"title":"アプリã®å¯è¦–性ã¨SSOルールをè¨å®š","body":"内部ツールや機密アプリを管ç†ã™ã‚‹ãƒãƒ¼ãƒ å‘ã‘。","publicAppControl":"ã“ã®ãƒ¯ãƒ¼ã‚¯ã‚¹ãƒšãƒ¼ã‚¹ã§å…¬é–‹ã‚¢ãƒ—リを作æˆã§ãる人を決定","defaultVisibility":"æ–°ã—ã„アプリã®åˆæœŸè¡¨ç¤ºè¨å®šã‚’行ã†","enforceSso":"ã™ã¹ã¦ã®ã‚¢ãƒ—リã«ãƒ¯ãƒ¼ã‚¯ã‚¹ãƒšãƒ¼ã‚¹SSOã‚’é©ç”¨"},"analytics":{"title":"ãƒãƒ¼ãƒ ãŒBase44ã‚’ã©ã®ã‚ˆã†ã«ä½¿ã£ã¦ã„ã‚‹ã‹ç¢ºèª","body":"利用状æ³ã¨æ™®åŠã‚’追跡ã™ã‚‹ãƒ¯ãƒ¼ã‚¯ã‚¹ãƒšãƒ¼ã‚¹ã‚ªãƒ¼ãƒŠãƒ¼ã¨ç®¡ç†è€…å‘ã‘。","creditTracking":"ãƒãƒ¼ãƒ 全体ã§ã‚¯ãƒ¬ã‚¸ãƒƒãƒˆãŒã©ã®ã‚ˆã†ã«ä½¿ã‚れã¦ã„ã‚‹ã‹ã‚’追跡","activeUsers":"ã©ã®ãƒãƒ¼ãƒ メイトãŒBase44ã‚’ç©æ¥µçš„ã«åˆ©ç”¨ã—ã¦ã„ã‚‹ã‹ã‚’確èª","licenseUsage":"ç¾åœ¨ä½¿ç”¨ã•れã¦ã„るライセンス数を把æ¡"},"skills":{"title":"AIã«å†åˆ©ç”¨å¯èƒ½ãªã‚¹ã‚ルを与ãˆã‚‹","body":"ã™ã¹ã¦ã®ã‚¢ãƒ—ãƒªã§æ©Ÿèƒ½ã™ã‚‹ä¸€è²«ã—ãŸAI動作を定義。","reusableInstructions":"AIãŒã‚¢ãƒ—リを構築ã™ã‚‹æ–¹æ³•ã‚’å½¢ã¥ãるカスタム指示セット(スã‚ル)を作æˆ","autoActivation":"一度作æˆã™ã‚Œã°ã€ã™ã¹ã¦ã®ã‚¢ãƒ—リã§å†åˆ©ç”¨","teamConsistency":"トーンã€ãƒ•ォーマットã€ãƒã‚¸ãƒƒã‚¯ã€æ¨™æº–化ã—ãŸã„動作をガイド"},"mcpConnections":{"title":"MCPã§å¤–部ツールを接続","body":"外部ツールã‹ã‚‰ãƒ©ã‚¤ãƒ–データを直接アプリã«å–り込む。","externalTools":"AIビルダーãŒä½œæ¥ä¸ã«ãƒªã‚¢ãƒ«ã‚¿ã‚¤ãƒ ã®ã‚³ãƒ³ãƒ†ã‚ストã«ã‚¢ã‚¯ã‚»ã‚¹","customServers":"カスタムMCPサーãƒãƒ¼ã‚’接続ã—ã¦ã™ã¹ã¦ã®ã‚¢ãƒ—リã§ä½¿ç”¨","extendCapabilities":"Amplitudeã€Linearãªã©ã®ãƒ„ールã«ãƒ“ルドä¸ã«ã‚¢ã‚¯ã‚»ã‚¹"}},"membersTitle":"メンãƒãƒ¼","inviteMembers":"メンãƒãƒ¼ã‚’招待","inviteByEmail":"ãƒ¡ãƒ¼ãƒ«ã§æ‹›å¾…","bulkInviteCsv":"一括招待 (CSV)","close":"é–‰ã˜ã‚‹","createInviteLink":"招待リンクを作æˆ","manageInviteLinks":"招待リンクを管ç†","backToMembers":"メンãƒãƒ¼ã«æˆ»ã‚‹","backToMenu":"è¨å®šãƒ¡ãƒ‹ãƒ¥ãƒ¼ã«æˆ»ã‚‹","inviteLinks":{"title":"招待リンク","breadcrumb":"招待リンク","description":"ã“ã®ãƒ¯ãƒ¼ã‚¯ã‚¹ãƒšãƒ¼ã‚¹ã®æ‹›å¾…リンクを作æˆãƒ»ç®¡ç†ã—ã¾ã™ã€‚","createInviteLink":"招待リンクを作æˆ","noLinksYet":"招待リンクã¯ã¾ã ã‚りã¾ã›ã‚“","noLinksSubtitle":"招待リンクを作æˆã—ã¦ã€ã“ã®ãƒ¯ãƒ¼ã‚¯ã‚¹ãƒšãƒ¼ã‚¹ã¸ã®ã‚¢ã‚¯ã‚»ã‚¹ã‚’ç°¡å˜ã«å…±æœ‰ã—ã¾ã—ょã†ã€‚","copyLink":"リンクをコピー","copyLinkLower":"リンクをコピー","deleteTooltip":"招待リンクを削除","deleteButton":"削除","deleteLinkButton":"リンクを削除","deleteConfirmTitle":"招待リンクを削除ã—ã¾ã™ã‹ï¼Ÿ","deleteConfirmActive":"ã“ã®ãƒªãƒ³ã‚¯ã§ãƒ¯ãƒ¼ã‚¯ã‚¹ãƒšãƒ¼ã‚¹ã«å‚åŠ ã§ããªããªã‚Šã¾ã™ã€‚ã“ã®æ“作ã¯å–り消ã›ã¾ã›ã‚“。","deleteConfirmInactive":"ã“ã®ãƒªãƒ³ã‚¯ã¨ãã®å±¥æ´ãŒãƒ¯ãƒ¼ã‚¯ã‚¹ãƒšãƒ¼ã‚¹ã‹ã‚‰å‰Šé™¤ã•れã¾ã™ã€‚","copiedToClipboard":"招待リンクをクリップボードã«ã‚³ãƒ”ーã—ã¾ã—ãŸã€‚","columnName":"åå‰","columnStatus":"ステータス","columnUsage":"使用状æ³","columnRole":"ãƒãƒ¼ãƒ«","columnExpiration":"有効期é™","columnDomains":"許å¯ãƒ‰ãƒ¡ã‚¤ãƒ³","statusActive":"有効","statusRevoked":"無効化","statusExpired":"期é™åˆ‡ã‚Œ","statusLimitReached":"上é™åˆ°é”","usageUnlimited":"無制é™","dialogTitle":"招待リンクを作æˆ","dialogMobileTitle":"リンクを作æˆ","linkName":"リンクå(任æ„)","linkNamePlaceholder":"例: 新入社員オンボーディング","role":"ãƒãƒ¼ãƒ«","selectRole":"ãƒãƒ¼ãƒ«ã‚’é¸æŠž","roleViewer":"閲覧者","roleEditor":"編集者","roleMember":"メンãƒãƒ¼","expiration":"有効期é™","selectExpiration":"有効期é™ã‚’é¸æŠž","nDays_one":"{{count}}æ—¥","nDays_other":"{{count}}æ—¥","never":"ãªã—","maximumUses":"最大使用回数","selectLimit":"上é™ã‚’é¸æŠž","unlimited":"無制é™","nUses_one":"{{count}}回","nUses_other":"{{count}}回","allowedDomains":"許å¯ãƒ¡ãƒ¼ãƒ«ãƒ‰ãƒ¡ã‚¤ãƒ³ï¼ˆä»»æ„)","allowedDomainsPlaceholder":"例: company.com, partner.org","domainsHelp":"複数ã®ãƒ‰ãƒ¡ã‚¤ãƒ³ã¯ã‚«ãƒ³ãƒžã§åŒºåˆ‡ã£ã¦ãã ã•ã„。","domainsError":"無効ãªå…¥åŠ›ã§ã™ã€‚カンマ区切りã®ãƒ‰ãƒ¡ã‚¤ãƒ³ã‚’使用ã—ã¦ãã ã•ã„(例: company.com, partner.org)","securityWarning":"ã“ã®ãƒªãƒ³ã‚¯ã‚’æŒã¤äººã¯èª°ã§ã‚‚ワークスペースã«å‚åŠ ã—ã€ãƒ‡ãƒ¼ã‚¿ã«ã‚¢ã‚¯ã‚»ã‚¹ã§ãã¾ã™ã€‚ä¿¡é ¼ã§ãる人ã«ã®ã¿å…±æœ‰ã—ã¦ãã ã•ã„。","advancedOptions":"詳細オプション","cancel":"ã‚ャンセル","creating":"作æˆä¸...","create":"作æˆ","linkCreatedAndCopied":"招待リンクを作æˆã—ã¦ã‚³ãƒ”ーã—ã¾ã—ãŸã€‚","manageInvitations":"招待を管ç†"},"postPaymentInvite":{"title":"準備完了ï¼","description":"ãƒ—ãƒ©ãƒ³ãŒæœ‰åйã«ãªã‚Šã¾ã—ãŸã€‚å‹äººã‚„åŒåƒšã‚’招待ã—ã¦ã€ä¸€ç·’ã«é–‹ç™ºã‚’å§‹ã‚ã¾ã—ょã†ã€‚","createInviteLink":"招待リンクを作æˆ","inviteByEmail":"ãƒ¡ãƒ¼ãƒ«ã§æ‹›å¾…","maybeLater":"後ã§","inviteLinkReady":"招待リンク準備完了","subtitleNoDomain":"ã“ã®ãƒªãƒ³ã‚¯ã‚’æŒã¤èª°ã§ã‚‚<bold>{{role}}</bold>ã¨ã—ã¦å‚åŠ ã§ãã¾ã™","subtitleWithDomain":"{{domains}}メールをæŒã¤èª°ã§ã‚‚<bold>{{role}}</bold>ã¨ã—ã¦å‚åŠ ã§ãã¾ã™","copied":"コピー済ã¿","manageInvitationsPrompt":"<inviteLink>招待リンク</inviteLink>ã®è¨å®šãƒšãƒ¼ã‚¸ã‹ã‚‰ã™ã¹ã¦ã®æ‹›å¾…リンクを管ç†ã§ãã¾ã™ã€‚","copyLink":"コピー","close":"é–‰ã˜ã‚‹","expires":"{{time}}ã«æœŸé™åˆ‡ã‚Œ","remainingUses_one":"残り{{count}}回使用å¯èƒ½","remainingUses_other":"残り{{count}}回使用å¯èƒ½"},"sections":{"workspace":"ワークスペース","integrations":"インテグレーション","account":"アカウント"},"creditUsage":{"pageDescription":"ã‚¯ãƒ¬ã‚¸ãƒƒãƒˆã®æ¶ˆè²»çжæ³ã¨ä½¿ç”¨ãƒ‘ターンを監視ã—ã¾ã™ã€‚","currentPlan":"ç¾åœ¨{{planName}}プランをã”利用ä¸ã§ã™","overLimit":"制é™è¶…éŽ","updatePayment":"支払ã„ã‚’æ›´æ–°","upgrade":"アップグレード","paymentOverdue":"æ”¯æ‰•ã„æœŸé™è¶…éŽ","pastDueDescription":"ã‚µãƒ–ã‚¹ã‚¯ãƒªãƒ—ã‚·ãƒ§ãƒ³ã®æ”¯æ‰•ã„ãŒæœŸé™ã‚’è¶…ãˆã¦ã„ã¾ã™ã€‚表示ã•れるクレジットã¨åˆ¶é™ã¯æœ€å¾Œã«æ”¯æ‰•ã£ãŸãƒ—ラン({{plan}})ã«åŸºã¥ã„ã¦ã„ã¾ã™ã€‚","tryAgain":"å†è©¦è¡Œ","trying":"試行ä¸...","monthlyMessages":"月間メッセージ","workspaceTotal":"ワークスペースåˆè¨ˆ","workspaceUsage":"ワークスペース使用é‡","dailyMessages":"日次メッセージ","loadError":"使用統計ã®èªã¿è¾¼ã¿ã«å¤±æ•—ã—ã¾ã—ãŸ","portalError":"支払ã„管ç†ã‚’é–‹ã‘ã¾ã›ã‚“ã§ã—ãŸã€‚ã‚‚ã†ä¸€åº¦ãŠè©¦ã—ãã ã•ã„。","portalErrorTitle":"エラー","creditsRenewIn":"クレジットãŒ{{timeLeft}}å¾Œã«æ›´æ–°ã•れã¾ã™","expired":"期é™åˆ‡ã‚Œ","dailyUsageTitle":"日次使用é‡ï¼ˆãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ï¼‰","noUsageData":"使用データãŒã‚りã¾ã›ã‚“","messagesLabel":"メッセージ","timeDaysHours":"{{days}}æ—¥{{hours}}時間","timeHoursMinutes":"{{hours}}時間{{minutes}}分","timeMinutes":"{{minutes}}分"},"basicInformation":{"pageTitle":"åŸºæœ¬æƒ…å ±","pageSubtitleEditable":"ワークスペースã®è©³ç´°ã¨è¨å®šã‚’管ç†ã—ã¾ã™ã€‚","pageSubtitleReadOnly":"ワークスペースã®è©³ç´°ã‚’表示ã—ã¾ã™ã€‚編集ã§ãã‚‹ã®ã¯ã‚ªãƒ¼ãƒŠãƒ¼ã¨ç®¡ç†è€…ã®ã¿ã§ã™ã€‚","loadingMessage":"ãƒ¯ãƒ¼ã‚¯ã‚¹ãƒšãƒ¼ã‚¹æƒ…å ±ã‚’èªã¿è¾¼ã¿ä¸...","workspaceNameLabel":"ワークスペースå","workspaceNamePlaceholder":"ワークスペースåを入力","workspaceDescriptionLabel":"ワークスペースã®èª¬æ˜Ž","workspaceDescriptionPlaceholder":"ワークスペースを説明ã—ã¦ãã ã•ã„...","workspaceNameEmptyErrorMessage":"ワークスペースåã¯ç©ºã«ã§ãã¾ã›ã‚“","cancelButton":"ã‚ャンセル","saveButton":"変更をä¿å˜","savingButton":"ä¿å˜ä¸...","saveSuccessMessage":"ワークスペースè¨å®šãŒæ£å¸¸ã«æ›´æ–°ã•れã¾ã—ãŸï¼","saveErrorMessage":"ワークスペースè¨å®šã®æ›´æ–°ã«å¤±æ•—ã—ã¾ã—ãŸ: {{error}}","unknownError":"䏿˜Žãªã‚¨ãƒ©ãƒ¼"},"leaveWorkspace":{"title":"ワークスペースを退出","description":"ã“ã®ãƒ¯ãƒ¼ã‚¯ã‚¹ãƒšãƒ¼ã‚¹ã‚’退出ã™ã‚‹ã¨ã€é–¢é€£ã™ã‚‹ã™ã¹ã¦ã®ã‚¢ãƒ—リã¸ã®ã‚¢ã‚¯ã‚»ã‚¹ãŒå¤±ã‚れã¾ã™ã€‚ã‚¢ãƒ—ãƒªã®æ‰€æœ‰æ¨©ã¯ãƒ¯ãƒ¼ã‚¯ã‚¹ãƒšãƒ¼ã‚¹ã®ã‚ªãƒ¼ãƒŠãƒ¼ã«ç§»è»¢ã•れã¾ã™ã€‚","button":"ワークスペースを退出","soleOwnerNote":"唯一ã®ã‚ªãƒ¼ãƒŠãƒ¼ã§ã‚ã‚‹ãŸã‚ã€ãƒ¯ãƒ¼ã‚¯ã‚¹ãƒšãƒ¼ã‚¹ã‚’退出ã§ãã¾ã›ã‚“。","successMessage":"ワークスペースを退出ã—ã¾ã—ãŸã€‚","workspaceNameFallback":"ワークスペース","dialog":{"title":"{{name}}を退出ã—ã¾ã™ã‹ï¼Ÿ","confirmQuestion":"<bold>{{name}}</bold>を退出ã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹ï¼Ÿ","transferWarning":"ã“ã®ãƒ¯ãƒ¼ã‚¯ã‚¹ãƒšãƒ¼ã‚¹å†…ã®ã‚¢ãƒ—リã¯ãƒ¯ãƒ¼ã‚¯ã‚¹ãƒšãƒ¼ã‚¹ã®ã‚ªãƒ¼ãƒŠãƒ¼ã«ç§»è»¢ã•れã€ã‚¢ã‚¯ã‚»ã‚¹ã§ããªããªã‚Šã¾ã™ã€‚","cancelButton":"ã‚ャンセル","confirmButton":"ワークスペースを退出"}},"menu":{"basicInformation":"åŸºæœ¬æƒ…å ±","planAndBilling":"プランã¨è«‹æ±‚","creditUsage":"クレジット使用é‡","members":"メンãƒãƒ¼","seatsAndMembers":"シートã¨ãƒ¡ãƒ³ãƒãƒ¼","authAndSecurity":"èªè¨¼ã¨ã‚»ã‚ュリティ","integrations":"連æº","appsConfiguration":"アプリè¨å®š","analytics":"アナリティクス","accountSettings":"アカウントè¨å®š","mcpConnections":"MCP接続","skills":"スã‚ル","connectors":"コãƒã‚¯ã‚¿","manageSubscription":"サブスクリプション管ç†","secrets":"シークレット","dataResidency":"データレジデンシー"},"guests":{"tabMembers":"メンãƒãƒ¼","tabGuests":"ゲスト","title":"ゲスト","infoBanner":"ゲストã¯ç‰¹å®šã®ã‚¢ãƒ—ãƒªã«æ‹›å¾…ã•れãŸå¤–部ユーザーã§ã™ã€‚ワークスペースã®å…±æœ‰ã‚¯ãƒ¬ã‚¸ãƒƒãƒˆãƒ—ールã‹ã‚‰ã‚¯ãƒ¬ã‚¸ãƒƒãƒˆã‚’消費ã—ã¾ã™ã€‚","searchPlaceholder":"メールã¾ãŸã¯ã‚¢ãƒ—ãƒªã§æ¤œç´¢...","columnGuest":"ゲスト","columnApp":"アプリ","columnInvitedBy":"招待者","columnCreditsUsed":"使用クレジット","pending":"ä¿ç•™ä¸","promoteToEditor":"ã‚¨ãƒ‡ã‚£ã‚¿ãƒ¼ã«æ˜‡æ ¼","promoteToViewer":"ãƒ“ãƒ¥ãƒ¼ã‚¢ãƒ¼ã«æ˜‡æ ¼","removeFromWorkspace":"ワークスペースã‹ã‚‰å‰Šé™¤","emptyTitle":"ã¾ã ゲストãŒã„ã¾ã›ã‚“","emptySubtitle":"ゲストã¯ã‚¢ãƒ—リã®ã‚³ãƒ©ãƒœãƒ¬ãƒ¼ã‚¿ãƒ¼æ‹›å¾…フãƒãƒ¼ã‹ã‚‰è¿½åŠ ã§ãã¾ã™ã€‚","noResults":"ゲストãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“","noResultsSubtitle":"\\"{{searchTerm}}\\"ã«ä¸€è‡´ã™ã‚‹ã‚²ã‚¹ãƒˆã¯ã‚りã¾ã›ã‚“","promoted":"{{email}}ã‚’{{role}}ã«æ˜‡æ ¼ã—ã¾ã—ãŸ","promoteFailed":"ãƒãƒ¼ãƒ«ã®æ›´æ–°ã«å¤±æ•—ã—ã¾ã—ãŸ","setCreditLimit":"クレジット上é™ã‚’è¨å®š","upgradeForCreditLimit":"ã“ã®æ©Ÿèƒ½ã«ã¯Enterpriseプランã¸ã®ã‚¢ãƒƒãƒ—グレードãŒå¿…è¦ã§ã™","viewAppAccess":"アプリアクセスを表示","removeMember":"メンãƒãƒ¼ã‚’削除","guestRole":"ゲスト","appAccessTitle":"{{name}}ã®ã‚¢ãƒ—リアクセス","appAccessDescription":"ã“ã®ã‚²ã‚¹ãƒˆãŒãƒ¯ãƒ¼ã‚¯ã‚¹ãƒšãƒ¼ã‚¹ã§ã‚¢ã‚¯ã‚»ã‚¹ã§ãるアプリを表示ã—ã¾ã™ã€‚","appAccessLoading":"èªã¿è¾¼ã¿ä¸...","appAccessEmpty":"アプリアクセスãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“。","appAccessColumnApp":"アプリ","appAccessDone":"完了"},"members":{"pageTitle":"メンãƒãƒ¼","pageDescription":"ã“ã®ãƒ¯ãƒ¼ã‚¯ã‚¹ãƒšãƒ¼ã‚¹ã®ãƒ¡ãƒ³ãƒãƒ¼ã¨ãƒãƒ¼ãƒ«ã‚’表示・管ç†ã—ã¾ã™ã€‚","tableTitle":"メンãƒãƒ¼ ({{count}})","columnMembers":"メンãƒãƒ¼","columnCreditsUsed":"使用クレジット","columnCreditsUsedWithLimit":"使用クレジット({{limit}}ä¸ï¼‰","columnCreditLimit":"クレジット上é™","columnRole":"ãƒãƒ¼ãƒ«","roleOwner":"オーナー","roleAdmin":"管ç†è€…","roleEditor":"エディター","roleViewer":"閲覧者","pending":"ä¿ç•™ä¸","expired":"期é™åˆ‡ã‚Œ","searchPlaceholder":"åå‰ã¾ãŸã¯ãƒ¡ãƒ¼ãƒ«ã§æ¤œç´¢...","searchPlaceholderMobile":"検索...","inviteMembers":"メンãƒãƒ¼ã‚’招待","inviteByEmail":"メンãƒãƒ¼ã‚’招待","bulkInvite":"一括招待","setCreditLimit":"クレジット上é™ã‚’è¨å®š","removeMember":"メンãƒãƒ¼ã‚’削除","upgradeTooltip":"ã“ã®æ©Ÿèƒ½ã‚’利用ã™ã‚‹ã«ã¯Enterpriseプランã«ã‚¢ãƒƒãƒ—グレードã—ã¦ãã ã•ã„","default":"(デフォルト)","emptyTitle":"ã¾ã メンãƒãƒ¼ãŒã„ã¾ã›ã‚“","emptyTitleNoResults":"メンãƒãƒ¼ãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“","emptySubtitlePersonal":"個人ワークスペースã«ã¯ã‚ãªãŸã ã‘ãŒå«ã¾ã‚Œã¦ã„ã¾ã™","emptySubtitleShared":"最åˆã®ãƒ¡ãƒ³ãƒãƒ¼ã‚’招待ã—ã¦å§‹ã‚ã¾ã—ょã†","emptySubtitleNoResults":"「{{searchTerm}}ã€ã«ä¸€è‡´ã™ã‚‹ãƒ¡ãƒ³ãƒãƒ¼ã¯ã„ã¾ã›ã‚“","cantChangeOwnRole":"自分ã®ãƒãƒ¼ãƒ«ã¯å¤‰æ›´ã§ãã¾ã›ã‚“。ワークスペースã®ã‚ªãƒ¼ãƒŠãƒ¼ã«æ›´æ–°ã‚’ä¾é ¼ã—ã¦ãã ã•ã„。","creditLimitTooltip":"å„メンãƒãƒ¼ãŒãƒ¯ãƒ¼ã‚¯ã‚¹ãƒšãƒ¼ã‚¹ãƒ—ールã‹ã‚‰ä½¿ç”¨ã§ãるクレジットã®ä¸Šé™ã‚’è¨å®šã—ã¾ã™ã€‚個別ã«åˆ¶é™ã‚’è¨å®šã™ã‚‹ã‹ã€å…¨ãƒ¡ãƒ³ãƒãƒ¼ã«å‡ç‰ã«é…分ã§ãã¾ã™ã€‚","tableTitleFiltered":"メンãƒãƒ¼ï¼ˆ{{totalCount}}ä»¶ä¸{{filteredCount}}件)","clearSearch":"検索をクリア"},"seatsAndMembers":{"pageTitle":"シートã¨ãƒ¡ãƒ³ãƒãƒ¼","pageDescription":"ワークスペースã®ã‚·ãƒ¼ãƒˆã¨ãƒãƒ¼ãƒ メンãƒãƒ¼ã‚’管ç†ã—ã¾ã™ã€‚","emptyTitle":"ワークスペースシートを始ã‚ã‚‹","emptyDescription":"シートを購入ã—ã¦ãƒ¡ãƒ³ãƒãƒ¼ã‚’招待ã—ã€ã‚³ãƒ©ãƒœãƒ¬ãƒ¼ã‚·ãƒ§ãƒ³ã‚’é–‹å§‹ã—ã¾ã—ょã†ã€‚","buyFirstSeats":"最åˆã®ã‚·ãƒ¼ãƒˆã‚’購入","planSeats":"{{planName}}シート","seatsUsage":"シート使用状æ³","addSeats":"ã‚·ãƒ¼ãƒˆã‚’è¿½åŠ ","removeSeats":"シートを削除","seatsAvailable_one":"{{count}}シート利用å¯èƒ½","seatsAvailable_other":"{{count}}シート利用å¯èƒ½","buyMoreSeats":"ã‚·ãƒ¼ãƒˆã‚’è¿½åŠ è³¼å…¥","expandWorkspace":"ワークスペースを拡張ã™ã‚‹","searchPlaceholder":"メールã€å½¹å‰²ã€ã‚¹ãƒ†ãƒ¼ã‚¿ã‚¹ã€ã¾ãŸã¯ã‚·ãƒ¼ãƒˆã‚¿ã‚¤ãƒ—ã§æ¤œç´¢ï¼ˆä¾‹ï¼šã‚¹ã‚¿ãƒ¼ã‚¿ãƒ¼ã€ãƒ—ãƒï¼‰...","searchTip":"ヒント:「スターターã€ã€Œãƒ“ルダーã€ã€Œãƒ—ãƒã€ã€Œã‚¨ãƒªãƒ¼ãƒˆã€ã€Œã‚·ãƒ¼ãƒˆãªã—ã€ãªã©ã®ã‚·ãƒ¼ãƒˆã‚¿ã‚¤ãƒ—ã§æ¤œç´¢ã§ãã¾ã™"},"inviteDialog":{"title":"メンãƒãƒ¼ã‚’招待","emailAddress":"メールアドレス","role":"ãƒãƒ¼ãƒ«","cancel":"ã‚ャンセル","invite":"招待","inviting":"招待ä¸...","roleViewer":"閲覧者","roleEditor":"エディター","roleAdmin":"管ç†è€…","roleMember":"メンãƒãƒ¼","errorNoEmail":"メールアドレスを1ã¤ä»¥ä¸Šå…¥åŠ›ã—ã¦ãã ã•ã„","errorInvalidEmail":"1ã¤ä»¥ä¸Šã®ãƒ¡ãƒ¼ãƒ«ã‚¢ãƒ‰ãƒ¬ã‚¹ãŒç„¡åйã§ã™ã€‚","errorFallback":"ãƒ¦ãƒ¼ã‚¶ãƒ¼ã®æ‹›å¾…ã«å¤±æ•—ã—ã¾ã—ãŸ","toastSingle":"招待を{{email}}ã«é€ä¿¡ã—ã¾ã—ãŸ","toastMultiple":"{{count}}ä»¶ã®æ‹›å¾…ã‚’é€ä¿¡ã—ã¾ã—ãŸ"},"dataResidency":{"title":"データレジデンシー","tooltip":"ã“ã®ãƒ¯ãƒ¼ã‚¯ã‚¹ãƒšãƒ¼ã‚¹å†…ã®ã‚¢ãƒ—リã®ãƒ‡ãƒ¼ã‚¿ã‚¹ãƒˆãƒ¬ãƒ¼ã‚¸ãƒªãƒ¼ã‚¸ãƒ§ãƒ³ã‚’è¨å®šã—ã¾ã™ã€‚","edit":"編集","upgradeRequired":"データレジデンシーをè¨å®šã™ã‚‹ã«ã¯Eliteプラン以上ãŒå¿…è¦ã§ã™ã€‚","appliesToNewApps":"æ–°ã—ã作æˆã•れるアプリã«é©ç”¨ã•れã¾ã™ã€‚æ—¢å˜ã®ã‚¢ãƒ—リã¯ç¾åœ¨ã®ãƒªãƒ¼ã‚¸ãƒ§ãƒ³ã‚’ä¿æŒã—ã¾ã™ã€‚","editModal":{"title":"ワークスペースデータレジデンシー","description":"ã“ã®ãƒ¯ãƒ¼ã‚¯ã‚¹ãƒšãƒ¼ã‚¹ã§ä½œæˆã™ã‚‹ã‚¢ãƒ—リã®ãƒ‡ãƒ¼ã‚¿ã‚’ä¿å˜ã™ã‚‹å ´æ‰€ã‚’é¸æŠžã—ã¦ãã ã•ã„。","label":"データレジデンシー","appliesToNewApps":"æ–°ã—ã作æˆã•れるアプリã«é©ç”¨ã•れã¾ã™ã€‚æ—¢å˜ã®ã‚¢ãƒ—リã¯ç¾åœ¨ã®ãƒ‡ãƒ¼ã‚¿ãƒªãƒ¼ã‚¸ãƒ§ãƒ³ã‚’ä¿æŒã—ã¾ã™ã€‚","viewAllApps":"ワークスペース内ã®ã™ã¹ã¦ã®ã‚¢ãƒ—リã®ãƒ‡ãƒ¼ã‚¿ãƒ¬ã‚¸ãƒ‡ãƒ³ã‚·ãƒ¼ã‚’表示","cancel":"ã‚ャンセル","save":"ä¿å˜","saving":"ä¿å˜ä¸...","updateSuccess":"ãƒ‡ãƒ¼ã‚¿ãƒ¬ã‚¸ãƒ‡ãƒ³ã‚·ãƒ¼ãŒæ£å¸¸ã«æ›´æ–°ã•れã¾ã—ãŸ","updateError":"ãƒ‡ãƒ¼ã‚¿ãƒ¬ã‚¸ãƒ‡ãƒ³ã‚·ãƒ¼ã®æ›´æ–°ã«å¤±æ•—ã—ã¾ã—ãŸï¼š{{detail}}","unknownError":"䏿˜Žãªã‚¨ãƒ©ãƒ¼"},"appsModal":{"title":"アプリデータレジデンシー","description":"ã“ã®ãƒ¯ãƒ¼ã‚¯ã‚¹ãƒšãƒ¼ã‚¹å†…ã®å„アプリã®ãƒ‡ãƒ¼ã‚¿ãŒã©ã“ã«ä¿å˜ã•れã¦ã„ã‚‹ã‹ã‚’確èªã—ã¾ã™ã€‚","appName":"アプリå","dataRegion":"データリージョン","loading":"èªã¿è¾¼ã¿ä¸...","noApps":"ã“ã®ãƒ¯ãƒ¼ã‚¯ã‚¹ãƒšãƒ¼ã‚¹ã«ã¯ã‚¢ãƒ—リãŒã‚りã¾ã›ã‚“。","migrationInfo":"アプリを別ã®ãƒªãƒ¼ã‚¸ãƒ§ãƒ³ã«ç§»å‹•ã™ã‚‹å¿…è¦ãŒã‚りã¾ã™ã‹ï¼Ÿ <a>移行をリクエストã™ã‚‹ã€‚</a>","supportTitle":"データリージョン移行リクエスト — {{name}}","supportContent":"アプリデータを別ã®ãƒªãƒ¼ã‚¸ãƒ§ãƒ³ã«ç§»è¡Œã—ãŸã„ã§ã™ã€‚\\n\\nワークスペース: {{name}} ({{id}})\\nç¾åœ¨ã®ãƒ‡ãƒ•ォルトリージョン: {{region}}\\n移行先リージョン: \\n移行ã™ã‚‹ã‚¢ãƒ—リ: "}},"mcp":{"title":"MCP接続","addMcp":"MCPã‚’è¿½åŠ ","limitReached":"MCPサーãƒãƒ¼ã®ä¸Šé™ï¼ˆ{{max}}件)ã«é”ã—ã¾ã—ãŸã€‚æ–°ã—ã„æŽ¥ç¶šã‚’è¿½åŠ ã™ã‚‹ã«ã¯1ã¤å‰Šé™¤ã—ã¦ãã ã•ã„。","description":"カスタムMCPサーãƒãƒ¼ã‚’接続ã—ã¦ã€å¤–部ツールやデータã§Base44ã®æ§‹ç¯‰æ©Ÿèƒ½ã‚’æ‹¡å¼µã—ã¾ã™ã€‚","descriptionWithLink":"カスタムMCPサーãƒãƒ¼ã‚’接続ã—ã¦ã€å¤–部ツールやデータã§Base44ã®æ§‹ç¯‰æ©Ÿèƒ½ã‚’æ‹¡å¼µã—ã¾ã™ã€‚<a>MCPã«ã¤ã„ã¦è©³ã—ã<icon/></a>","learnMore":"MCPã«ã¤ã„ã¦è©³ã—ã","emptyTitle":"MCPサーãƒãƒ¼ãŒæŽ¥ç¶šã•れã¦ã„ã¾ã›ã‚“","addCustomMcp":"カスタムMCPã‚’è¿½åŠ ","aria":{"enableConnection":"{{name}}を有効ã«ã™ã‚‹","disableConnection":"{{name}}を無効ã«ã™ã‚‹","actionsFor":"{{name}}ã®æ“作"},"actions":{"editDetails":"詳細を編集","removeMcp":"MCPを削除"},"deleteConfirm":{"title":"MCP接続を削除","description":"「{{name}}ã€ã‚’削除ã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹ï¼Ÿã“ã®æ“作ã¯å…ƒã«æˆ»ã›ã¾ã›ã‚“。","confirm":"削除","cancel":"ã‚ャンセル"},"tools":{"availableTools_one":"{{count}}個ã®åˆ©ç”¨å¯èƒ½ãªãƒ„ール","availableTools_other":"{{count}}個ã®åˆ©ç”¨å¯èƒ½ãªãƒ„ール","more":"+{{count}}ä»¶","showLess":"折りãŸãŸã‚€","loadingTools":"ツールをèªã¿è¾¼ã¿ä¸..."},"addDialog":{"title":"カスタムMCPサーãƒãƒ¼ã‚’è¿½åŠ ","name":"åå‰","namePlaceholder":"例: マイMCPサーãƒãƒ¼","url":"URL","urlExists":"MCPサーãƒãƒ¼ã¯æ—¢ã«å˜åœ¨ã—ã¾ã™ã€‚","authentication":"èªè¨¼","authNone":"ä¸è¦","authNoneDescription":"èªè¨¼æƒ…å ±ãªã—ã§æŽ¥ç¶š","authOAuth":"OAuth","authOAuthDescription":"次ã®ã‚¹ãƒ†ãƒƒãƒ—ã§èªè¨¼","customHeaders":"カスタムヘッダー","optional":"ä»»æ„","headersDescription":"ã™ã¹ã¦ã®ãƒªã‚¯ã‚¨ã‚¹ãƒˆã«é€ä¿¡ã•ã‚Œã‚‹ãƒ˜ãƒƒãƒ€ãƒ¼ã‚’è¿½åŠ ï¼ˆä¾‹: APIã‚ー)","headerName":"ヘッダーå","headerValue":"値","addHeader":"ãƒ˜ãƒƒãƒ€ãƒ¼ã‚’è¿½åŠ ","connectionFailed":"接続ã«å¤±æ•—ã—ã¾ã—ãŸ","serverReady":"MCPサーãƒãƒ¼ã¯æŽ¥ç¶šæº–å‚™ãŒã§ãã¦ã„ã¾ã™ã€‚","serverReadyWithTools_one":"MCPサーãƒãƒ¼ã¯æŽ¥ç¶šæº–å‚™ãŒã§ãã¦ã„ã¾ã™ã€‚1個ã®ãƒ„ールãŒè¦‹ã¤ã‹ã‚Šã¾ã—ãŸã€‚","serverReadyWithTools_other":"MCPサーãƒãƒ¼ã¯æŽ¥ç¶šæº–å‚™ãŒã§ãã¦ã„ã¾ã™ã€‚{{count}}個ã®ãƒ„ールãŒè¦‹ã¤ã‹ã‚Šã¾ã—ãŸã€‚","toolsFound_one":"{{count}}個ã®ãƒ„ールãŒè¦‹ã¤ã‹ã‚Šã¾ã—ãŸã€‚","toolsFound_other":"{{count}}個ã®ãƒ„ールãŒè¦‹ã¤ã‹ã‚Šã¾ã—ãŸã€‚","oauthConfirmed":"サーãƒãƒ¼ãŒç¢ºèªã•れã¾ã—ãŸã€‚「èªè¨¼ã—ã¦è¿½åŠ ã€ã‚’クリックã—ã¦OAuthèªè¨¼ã‚’完了ã—ã¦ãã ã•ã„。","test":"テスト","testAndAdd":"ãƒ†ã‚¹ãƒˆï¼†è¿½åŠ ","authorizeAndAdd":"èªè¨¼ã—ã¦è¿½åŠ ","cancel":"ã‚ャンセル","urlRequired":"サーãƒãƒ¼URLを入力ã—ã¦ãã ã•ã„。","fieldsRequired":"ã™ã¹ã¦ã®å¿…é ˆãƒ•ã‚£ãƒ¼ãƒ«ãƒ‰ã‚’å…¥åŠ›ã—ã¦ãã ã•ã„。","authRequired":"ã“ã®ã‚µãƒ¼ãƒãƒ¼ã«ã¯èªè¨¼ãŒå¿…è¦ã§ã™ã€‚OAuthã‚’é¸æŠžã—ã¦ç¶šè¡Œã—ã¦ãã ã•ã„。","authNotRequired":"ã“ã®ã‚µãƒ¼ãƒãƒ¼ã¯OAuthã‚’å¿…è¦ã¨ã—ã¾ã›ã‚“。OAuthãªã—ã§è¿½åŠ ã—ã¦ã¿ã¦ãã ã•ã„。","testFailed":"接続テストã«å¤±æ•—ã—ã¾ã—ãŸã€‚"},"editDialog":{"title":"接続済ã¿MCPを編集","enabled":"有効","nameRequired":"åå‰ã‚’入力ã—ã¦ãã ã•ã„。","changeInfo":"URLã‚„èªè¨¼æ–¹æ³•を変更ã™ã‚‹ã«ã¯ã€æ–°ã—ã„MCP接続を作æˆã—ã¦ãã ã•ã„。","saveChanges":"変更をä¿å˜","removeMcp":"MCPを削除","cancel":"ã‚ャンセル"},"toast":{"added":"MCPæŽ¥ç¶šã‚’è¿½åŠ ã—ã¾ã—ãŸ","addedDescription":"MCPサーãƒãƒ¼ã«æ£å¸¸ã«æŽ¥ç¶šã—ã¾ã—ãŸã€‚","addedWithName":"接続「{{name}}ã€ã‚’æ£å¸¸ã«è¿½åŠ ã—ã¾ã—ãŸã€‚","saved":"変更をä¿å˜ã—ã¾ã—ãŸ","savedDescription":"MCPæŽ¥ç¶šãŒæ£å¸¸ã«æ›´æ–°ã•れã¾ã—ãŸã€‚"}},"skills":{"title":"スã‚ル","addSkill":"スã‚ãƒ«ã‚’è¿½åŠ ","addSkillLower":"スã‚ãƒ«ã‚’è¿½åŠ ","editSkill":"スã‚ルを編集","viewSkill":"スã‚ルを表示","deleteSkill":"スã‚ルを削除","limitReached":"スã‚ルã®ä¸Šé™ï¼ˆ{{max}}件)ã«é”ã—ã¾ã—ãŸã€‚æ–°ã—ã„スã‚ãƒ«ã‚’è¿½åŠ ã™ã‚‹ã«ã¯1ã¤å‰Šé™¤ã—ã¦ãã ã•ã„。","description":"AIビルダーãŒä¼šè©±ä¸ã«ã‚¢ã‚¯ãƒ†ã‚£ãƒ–ã«ã§ãã‚‹å†åˆ©ç”¨å¯èƒ½ãªæŒ‡ç¤ºã‚»ãƒƒãƒˆã‚’作æˆã—ã¾ã™ã€‚","emptyDescription":"スã‚ルã¯ã€AIãŒã‚¢ãƒ—リを構築ã™ã‚‹æ–¹æ³•を形作るä¿å˜ã•れãŸã‚¬ã‚¤ãƒ‰ãƒ©ã‚¤ãƒ³ã§ã™ã€‚å¿…è¦ã«å¿œã˜ã¦è‡ªå‹•çš„ã«æœ‰åйã«ãªã‚Šã€ãƒ«ãƒ¼ãƒ«ã¨ãƒ™ã‚¹ãƒˆãƒ—ラクティスã«å¾“ã„ã¾ã™ã€‚","emptyDescriptionWithLink":"スã‚ルã¯ã€AIãŒã‚¢ãƒ—リを構築ã™ã‚‹æ–¹æ³•を形作るä¿å˜ã•れãŸã‚¬ã‚¤ãƒ‰ãƒ©ã‚¤ãƒ³ã§ã™ã€‚å¿…è¦ã«å¿œã˜ã¦è‡ªå‹•çš„ã«æœ‰åйã«ãªã‚Šã€ãƒ«ãƒ¼ãƒ«ã¨ãƒ™ã‚¹ãƒˆãƒ—ラクティスã«å¾“ã„ã¾ã™ã€‚<a>詳細を見る</a>","learnMore":"詳細を見る","getStartedWithTemplate":"テンプレートã‹ã‚‰å§‹ã‚ã‚‹","viewMore":"ã‚‚ã£ã¨è¦‹ã‚‹","failedToLoadTemplates":"スã‚ルテンプレートã®èªã¿è¾¼ã¿ã«å¤±æ•—ã—ã¾ã—ãŸ","templatesUnavailable":"プリセットテンプレートãŒåˆ©ç”¨ã§ããªã„å ´åˆãŒã‚りã¾ã™ã€‚","failedToLoadTemplate":"テンプレートã®èªã¿è¾¼ã¿ã«å¤±æ•—ã—ã¾ã—ãŸ","form":{"skillName":"スã‚ルå","namePlaceholder":"例: brand-guidelines","nameRequired":"åå‰ã¯å¿…é ˆã§ã™","nameMaxLength":"åå‰ã¯{{max}}æ–‡å—以内ã«ã—ã¦ãã ã•ã„","namePattern":"å°æ–‡å—ã€æ•°å—ã€ãƒã‚¤ãƒ•ンã®ã¿ï¼ˆä¾‹: code-review)","nameExists":"ã“ã®åå‰ã®ã‚¹ã‚ãƒ«ã¯æ—¢ã«å˜åœ¨ã—ã¾ã™","description":"説明","descriptionHint":"エージェントã«ã“ã®ã‚¹ã‚ルをã„ã¤ä½¿ã†ã‹ä¼ãˆã¦ãã ã•ã„。ã“れをèªã‚“ã§æœ‰åйã«ã™ã‚‹ã‹ã©ã†ã‹åˆ¤æ–ã—ã¾ã™ã€‚","descriptionPlaceholder":"例:ã™ã¹ã¦ã®ãƒšãƒ¼ã‚¸ã¨ã‚³ãƒ³ãƒãƒ¼ãƒãƒ³ãƒˆã«ãƒ–ランドカラーã€ã‚¿ã‚¤ãƒã‚°ãƒ©ãƒ•ã‚£ã€ãƒ‡ã‚¶ã‚¤ãƒ³ãƒ‘ターンをé©ç”¨ã—ã¾ã™ã€‚æ–°ã—ã„ページã®ä½œæˆã€ã‚¹ã‚¿ã‚¤ãƒ«ã®æ›´æ–°ã€ã¾ãŸã¯ãƒ¦ãƒ¼ã‚¶ãƒ¼ãŒãƒ–ランドやデザインシステムã«ã¤ã„ã¦è¨€åŠã—ãŸæ™‚ã«ä½¿ç”¨ã—ã¾ã™ã€‚","instructions":"指示","instructionsHint":"ã“ã®ã‚¹ã‚ãƒ«ãŒæœ‰åйã«ãªã£ãŸã¨ãã«ã‚¨ãƒ¼ã‚¸ã‚§ãƒ³ãƒˆãŒå¾“ã†ã‚¹ãƒ†ãƒƒãƒ—ãƒã‚¤ã‚¹ãƒ†ãƒƒãƒ—ã®ãƒ«ãƒ¼ãƒ«ã€‚æ–°ã—ã„ãƒãƒ¼ãƒ メンãƒãƒ¼ã‚’トレーニングã™ã‚‹ã‚ˆã†ã«æ›¸ã„ã¦ãã ã•ã„。","instructionsPlaceholder":"## ブランドカラー\\nプライマリ: #1E40AF(ナビゲーションã€ãƒœã‚¿ãƒ³ï¼‰\\nアクセント: #F59E0B(ãƒã‚¤ãƒ©ã‚¤ãƒˆã€CTA)\\n背景: #F8FAFCã€ã‚µãƒ¼ãƒ•ェス: 白\\n\\n## タイãƒã‚°ãƒ©ãƒ•ã‚£\\n見出ã—: 太å—ã€ãƒ€ãƒ¼ã‚¯ã‚¹ãƒ¬ãƒ¼ãƒˆ\\n本文: text-sm text-slate-600\\nセクション間ã®ã‚¹ãƒšãƒ¼ã‚¹ã‚’統一\\n\\n## コンãƒãƒ¼ãƒãƒ³ãƒˆãƒ‘ターン\\n- データセクションã«ã¯æŽ§ãˆã‚ãªã‚·ãƒ£ãƒ‰ã‚¦ã®Cardを使用\\n- ãƒãƒ¼ãƒ‡ã‚£ãƒ³ã‚°çŠ¶æ…‹ã¨ç©ºçŠ¶æ…‹ã‚’å¿…ãšå«ã‚ã‚‹\\n- フォーム: 作æˆ/編集ã«ã¯Sheetダイアãƒã‚°ã‚’使用\\n- テーブル: ストライプ行ã€ã‚½ãƒ¼ãƒˆå¯èƒ½ãªåˆ—","reviewHint":"AIã§èª¿æ•´æ¸ˆã¿ã€‚ä¿å˜å‰ã«è‡ªç”±ã«ç·¨é›†ã—ã¦ãã ã•ã„。"},"dialog":{"reviewTitle":"スã‚ルを確èª","reviewSubtitle":"ä¿å˜å‰ã«èª¬æ˜Žã¨æŒ‡ç¤ºã‚’確èªã—ã¦ãã ã•ã„。ã„ã¤ã§ã‚‚編集ã§ãã¾ã™ã€‚","pickerTitle":"スã‚ãƒ«ã‚’è¿½åŠ ã™ã‚‹ã‹ã€ã‚¼ãƒã‹ã‚‰å§‹ã‚ã‚‹","startFromScratch":"ゼãƒã‹ã‚‰å§‹ã‚ã‚‹","cancel":"ã‚ャンセル","backToOriginal":"å…ƒã«æˆ»ã™","saveSkill":"スã‚ルをä¿å˜","saveChanges":"変更をä¿å˜","refineAndReview":"調整ã—ã¦ç¢ºèª","refineShort":"調整","close":"é–‰ã˜ã‚‹","add":"è¿½åŠ ","enabled":"有効"},"toast":{"created":"スã‚ルを作æˆã—ã¾ã—ãŸ","createdDescription":"「{{name}}ã€ã‚’è¿½åŠ ã—ã¾ã—ãŸã€‚","failedToCreate":"スã‚ルã®ä½œæˆã«å¤±æ•—ã—ã¾ã—ãŸ","updated":"スã‚ルを更新ã—ã¾ã—ãŸ","updatedDescription":"「{{name}}ã€ã‚’ä¿å˜ã—ã¾ã—ãŸã€‚","failedToUpdate":"スã‚ãƒ«ã®æ›´æ–°ã«å¤±æ•—ã—ã¾ã—ãŸ","refinedTooLong":"調整ã—ãŸã‚¹ã‚ルãŒé•·ã™ãŽã¾ã™","refinedTooLongDescription":"è¦ç´„を試ã¿ã¾ã—ãŸãŒã€çµæžœãŒæ–‡å—数制é™ã‚’è¶…ãˆã¦ã„ã¾ã™ã€‚内容をçŸãã—ã¦å†åº¦èª¿æ•´ã—ã¦ãã ã•ã„。","failedToPolish":"スã‚ルã®èª¿æ•´ã«å¤±æ•—ã—ã¾ã—ãŸ","failedToLoad":"スã‚ルã®èªã¿è¾¼ã¿ã«å¤±æ•—ã—ã¾ã—ãŸ","failedToLoadList":"スã‚ルã®èªã¿è¾¼ã¿ã«å¤±æ•—ã—ã¾ã—ãŸ","retryLater":"後ã§ã‚‚ã†ä¸€åº¦ãŠè©¦ã—ãã ã•ã„。","retryAgain":"ã‚‚ã†ä¸€åº¦ãŠè©¦ã—ãã ã•ã„。","removed":"スã‚ルを削除ã—ã¾ã—ãŸ","removedDescription":"スã‚ルãŒå‰Šé™¤ã•れã¾ã—ãŸã€‚"},"deleteConfirm":{"description":"「{{name}}ã€ã‚’削除ã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹ï¼Ÿã“ã®æ“作ã¯å…ƒã«æˆ»ã›ã¾ã›ã‚“。","confirm":"削除","cancel":"ã‚ャンセル"},"aria":{"enableSkill":"{{name}}を有効ã«ã™ã‚‹","disableSkill":"{{name}}を無効ã«ã™ã‚‹","actionsFor":"{{name}}ã®æ“作"}},"secrets":{"title":"シークレット","description":"ワークスペースã¸ã®ãƒ—ãƒã‚°ãƒ©ãƒ アクセスã®ãŸã‚ã®èªè¨¼æƒ…å ±ã¨ã‚¢ã‚¯ã‚»ã‚¹ãƒˆãƒ¼ã‚¯ãƒ³ã‚’管ç†ã—ã¾ã™ã€‚","apiKeys":{"title":"APIã‚ー","description":"ワークスペースã¸ã®ãƒ—ãƒã‚°ãƒ©ãƒ アクセス用APIã‚ーを作æˆãƒ»ç®¡ç†ã—ã¾ã™ã€‚ã“れらã®ã‚ーを使用ã—ã¦ã€ç›£æŸ»ãƒã‚°ã‚’ストリーミングã—ãŸã‚Šã€SCIMã§IDプãƒãƒã‚¤ãƒ€ãƒ¼ã‚’接続ã—ãŸã‚Šã€Monitoring APIを通ã˜ã¦ãƒ¯ãƒ¼ã‚¯ã‚¹ãƒšãƒ¼ã‚¹ãƒ‡ãƒ¼ã‚¿ã‚’外部システムã«å–り込んã りã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚","createButton":"APIã‚ーを作æˆ","limitReached":"APIã‚ーã®ä¸Šé™{{max}}ä»¶ã«é”ã—ã¾ã—ãŸã€‚æ–°ã—ã„ã‚ーを作æˆã™ã‚‹ã«ã¯æ—¢å˜ã®ã‚ーを削除ã—ã¦ãã ã•ã„。","table":{"name":"åå‰","key":"ã‚ー","createdBy":"作æˆè€…","created":"ä½œæˆæ—¥","lastUsed":"最終使用日","status":"ステータス","never":"ãªã—"},"status":{"active":"有効","disabled":"無効"},"emptyState":{"title":"APIã‚ーãŒã‚りã¾ã›ã‚“","description":"ワークスペースAPIã‚ーã¯ãƒ¯ãƒ¼ã‚¯ã‚¹ãƒšãƒ¼ã‚¹APIã¸ã®ãƒ—ãƒã‚°ãƒ©ãƒ アクセスをæä¾›ã—ã¾ã™ï¼ˆSIEMã€SCIMã€ã‚«ã‚¹ã‚¿ãƒ インテグレーション)。"},"actions":{"edit":"編集","disableKey":"ã‚ーを無効化","enableKey":"ã‚ーを有効化","deleteKey":"ã‚ーを削除","actionsFor":"{{name}}ã®ã‚¢ã‚¯ã‚·ãƒ§ãƒ³"},"sheet":{"editButton":"編集","disableButton":"無効化","enableButton":"有効化"},"disableConfirm":{"title":"APIã‚ーを無効化ã—ã¾ã™ã‹ï¼Ÿ","description":"APIã‚ー<strong>\\"{{name}}\\"</strong>ã¯å³åº§ã«ç„¡åŠ¹åŒ–ã•れã¾ã™ã€‚ã“ã®ã‚ーを使用ã—ã¦ã„ã‚‹ã‚¤ãƒ³ãƒ†ã‚°ãƒ¬ãƒ¼ã‚·ãƒ§ãƒ³ã¯æ©Ÿèƒ½ã—ãªããªã‚Šã¾ã™ã€‚","note":"後ã§å†åº¦æœ‰åŠ¹åŒ–ã§ãã¾ã™ã€‚","confirm":"ã‚ーを無効化","cancel":"ã‚ャンセル"},"enableConfirm":{"title":"APIã‚ーを有効化ã—ã¾ã™ã‹ï¼Ÿ","description":"APIã‚ー<strong>\\"{{name}}\\"</strong>ãŒå†åº¦æœ‰åŠ¹åŒ–ã•れã¾ã™ã€‚ã“ã®ã‚ーを使用ã—ã¦ã„るインテグレーションãŒå†ã³æ©Ÿèƒ½ã—ã¾ã™ã€‚","confirm":"ã‚ーを有効化","cancel":"ã‚ャンセル"},"deleteConfirm":{"title":"APIã‚ーを削除ã—ã¾ã™ã‹ï¼Ÿ","description":"APIã‚ー<strong>\\"{{name}}\\"</strong>ã¯å®Œå…¨ã«å‰Šé™¤ã•れã¾ã™ã€‚ã“ã®æ“作ã¯å–り消ã›ã¾ã›ã‚“。ã“ã®ã‚ーを使用ã—ã¦ã„るインテグレーションã¯å³åº§ã«æ©Ÿèƒ½ã—ãªããªã‚Šã¾ã™ã€‚","confirm":"ã‚ーを削除","cancel":"ã‚ャンセル"},"toast":{"loadError":"APIã‚ーã®èªã¿è¾¼ã¿ã«å¤±æ•—ã—ã¾ã—ãŸ","loadErrorDescription":"ã‚‚ã†ä¸€åº¦ãŠè©¦ã—ãã ã•ã„。","disabled":"APIã‚ーãŒç„¡åŠ¹åŒ–ã•れã¾ã—ãŸ","disabledDescription":"\\"{{name}}\\"ãŒç„¡åŠ¹åŒ–ã•れã¾ã—ãŸã€‚","disableError":"APIã‚ーã®ç„¡åŠ¹åŒ–ã«å¤±æ•—ã—ã¾ã—ãŸ","enabled":"APIã‚ãƒ¼ãŒæœ‰åŠ¹åŒ–ã•れã¾ã—ãŸ","enabledDescription":"\\"{{name}}\\"ãŒå†åº¦æœ‰åŠ¹åŒ–ã•れã¾ã—ãŸã€‚","enableError":"APIã‚ãƒ¼ã®æœ‰åŠ¹åŒ–ã«å¤±æ•—ã—ã¾ã—ãŸ","deleted":"APIã‚ーãŒå‰Šé™¤ã•れã¾ã—ãŸ","deletedDescription":"\\"{{name}}\\"ãŒå®Œå…¨ã«å‰Šé™¤ã•れã¾ã—ãŸã€‚","deleteError":"APIã‚ーã®å‰Šé™¤ã«å¤±æ•—ã—ã¾ã—ãŸ","createError":"APIã‚ーã®ä½œæˆã«å¤±æ•—ã—ã¾ã—ãŸ","updateError":"APIã‚ãƒ¼ã®æ›´æ–°ã«å¤±æ•—ã—ã¾ã—ãŸ","copyError":"APIã‚ーã®ã‚³ãƒ”ーã«å¤±æ•—ã—ã¾ã—ãŸ","updated":"APIã‚ãƒ¼ãŒæ›´æ–°ã•れã¾ã—ãŸ","updatedDescription":"\\"{{name}}\\"ãŒä¿å˜ã•れã¾ã—ãŸã€‚"},"createDialog":{"title":"APIã‚ーを作æˆ","titleReveal":"APIã‚ーãŒä½œæˆã•れã¾ã—ãŸ","namePlaceholder":"例:SIEMインテグレーション","descriptionPlaceholder":"ã“ã®ã‚ーã®ç”¨é€”ã¯ï¼Ÿ","cancelButton":"ã‚ャンセル","createButton":"ã‚ーを作æˆ","creatingButton":"作æˆä¸...","warningMessage":"ã“ã®ã‚ーを今ã™ãコピーã—ã¦ãã ã•ㄠ– å†åº¦è¡¨ç¤ºã•れるã“ã¨ã¯ã‚りã¾ã›ã‚“。パスワードã¨åŒæ§˜ã«æ‰±ã£ã¦ãã ã•ã„:APIを通ã˜ã¦ãƒ¯ãƒ¼ã‚¯ã‚¹ãƒšãƒ¼ã‚¹ãƒ‡ãƒ¼ã‚¿ã¸ã®ã‚¢ã‚¯ã‚»ã‚¹ã‚’許å¯ã—ã¾ã™ã€‚","yourApiKey":"APIã‚ー","doneButton":"完了","copyAria":"APIã‚ーをコピー"},"editDialog":{"title":"APIã‚ーを編集","cancelButton":"ã‚ャンセル","saveButton":"ä¿å˜","savingButton":"ä¿å˜ä¸..."},"formFields":{"name":"åå‰","description":"説明","descriptionOptional":"(任æ„)"}}},"authSecurity":{"title":"èªè¨¼ã¨ã‚»ã‚ュリティ","description":"ワークスペースã®èªè¨¼ã¨ã‚»ã‚ュリティè¨å®šã‚’æ§‹æˆã—ã¾ã™ã€‚","sso":{"title":"シングルサインオンè¨å®š","configureTooltip":"ワークスペースã®SSOã‚’è¨å®šã™ã‚‹","description":"SSOを有効ã«ã—ã¦ã€ãƒ¯ãƒ¼ã‚¯ã‚¹ãƒšãƒ¼ã‚¹ãƒ¡ãƒ³ãƒãƒ¼ã®èªè¨¼ã‚’ç°¡ç´ åŒ–ã—ã¾ã™ã€‚","settingUp":"è¨å®šä¸...","setUp":"è¨å®šã™ã‚‹","setUpConfiguration":"SSOè¨å®š","enforcedTooltip":"ã“ã®SSOã¯ãƒ¯ãƒ¼ã‚¯ã‚¹ãƒšãƒ¼ã‚¹å†…ã®ã™ã¹ã¦ã®ã‚¢ãƒ—リã«é©ç”¨ã•れã¦ãŠã‚Šã€èªè¨¼ã«è‡ªå‹•çš„ã«ä½¿ç”¨ã•れã¾ã™ã€‚é©ç”¨è¨å®šã‚’æ›´æ–°ã™ã‚‹ã«ã¯ã€ã‚¢ãƒ—リè¨å®šã«ç§»å‹•ã—ã¦ãã ã•ã„。","enforcedBadge":"アプリã«é©ç”¨æ¸ˆã¿","setUpAction":"è¨å®šã™ã‚‹","configure":"è¨å®š","selectProvider":"SSOプãƒãƒã‚¤ãƒ€ãƒ¼ã‚’é¸æŠž","cancelSetup":"è¨å®šã‚’ã‚ャンセル","dismiss":"é–‰ã˜ã‚‹","saving":"ä¿å˜ä¸...","enableSSO":"SSOを有効化","saveSSOSettings":"SSOè¨å®šã‚’ä¿å˜","notAvailableTitle":"利用ä¸å¯","notAvailableDesc":"シングルサインオン(SSO)ã¯å€‹äººãƒ¯ãƒ¼ã‚¯ã‚¹ãƒšãƒ¼ã‚¹ã§ã¯åˆ©ç”¨ã§ãã¾ã›ã‚“。","limitedAccessTitle":"制é™ä»˜ãアクセス","limitedAccessDesc":"SSOè¨å®šã‚’æ§‹æˆã§ãã‚‹ã®ã¯ãƒ¯ãƒ¼ã‚¯ã‚¹ãƒšãƒ¼ã‚¹ç®¡ç†è€…ã®ã¿ã§ã™ã€‚","toast":{"error":"エラー","failedToLoadSettings":"SSOè¨å®šã®èªã¿è¾¼ã¿ã«å¤±æ•—ã—ã¾ã—ãŸ","failedToLoadAppSettings":"アプリè¨å®šã®èªã¿è¾¼ã¿ã«å¤±æ•—ã—ã¾ã—ãŸ","ssoEnabled":"SSO有効化","ssoEnabledDesc":"ワークスペースã®ã‚·ãƒ³ã‚°ãƒ«ã‚µã‚¤ãƒ³ã‚ªãƒ³ãŒæœ‰åйã«ãªã‚Šã¾ã—ãŸ","ssoDisabled":"SSO無効化","ssoDisabledDesc":"シングルサインオンãŒç„¡åйã«ãªã‚Šã¾ã—ãŸ","failedToUpdateStatus":"SSOçŠ¶æ…‹ã®æ›´æ–°ã«å¤±æ•—ã—ã¾ã—ãŸ","success":"æˆåŠŸ","settingsUpdated":"SSOè¨å®šãŒæ£å¸¸ã«æ›´æ–°ã•れã¾ã—ãŸ","failedToUpdate":"SSOè¨å®šã®æ›´æ–°ã«å¤±æ•—ã—ã¾ã—ãŸ"},"fields":{"client_id":"クライアントID","client_secret":"クライアントシークレット","scope":"スコープ","discovery_url":"ディスカãƒãƒªãƒ¼URL","tenant_id":"テナントID","okta_domain":"Oktaドメイン","auth_endpoint":"èªè¨¼ã‚¨ãƒ³ãƒ‰ãƒã‚¤ãƒ³ãƒˆ","token_endpoint":"トークンエンドãƒã‚¤ãƒ³ãƒˆ","userinfo_endpoint":"ãƒ¦ãƒ¼ã‚¶ãƒ¼æƒ…å ±ã‚¨ãƒ³ãƒ‰ãƒã‚¤ãƒ³ãƒˆ","jwks_uri":"JWKS URI","name":"プãƒãƒã‚¤ãƒ€ãƒ¼å"},"autoGenerated":"(自動生æˆï¼‰","placeholders":{"client_id":"クライアントIDを入力","client_secret":"クライアントシークレットを入力","scope":"スコープを入力","discovery_url":"ディスカãƒãƒªãƒ¼URLを入力","tenant_id":"Azure ADテナントIDを入力","okta_domain":"ã‚ãªãŸã®ä¼šç¤¾","auth_endpoint":"èªè¨¼ã‚¨ãƒ³ãƒ‰ãƒã‚¤ãƒ³ãƒˆã‚’入力","token_endpoint":"トークンエンドãƒã‚¤ãƒ³ãƒˆã‚’入力","userinfo_endpoint":"ãƒ¦ãƒ¼ã‚¶ãƒ¼æƒ…å ±ã‚¨ãƒ³ãƒ‰ãƒã‚¤ãƒ³ãƒˆã‚’入力","jwks_uri":"JWKS URIを入力","name":"プãƒãƒã‚¤ãƒ€ãƒ¼åを入力"},"tooltips":{"clientId":"IDプãƒãƒã‚¤ãƒ€ãƒ¼ã‹ã‚‰æä¾›ã•れãŸOAuthクライアントID","clientSecret":"IDプãƒãƒã‚¤ãƒ€ãƒ¼ã‹ã‚‰æä¾›ã•れãŸOAuthクライアントシークレット(機密ã¨ã—ã¦æ‰±ã£ã¦ãã ã•ã„)","scopeGeneral":"è¦æ±‚ã™ã‚‹OAuthスコープ(openidã€emailã€profileãŒä¸€èˆ¬çš„ã«ä½¿ç”¨ã•れã¾ã™ï¼‰","scopeGithub":"è¦æ±‚ã™ã‚‹OAuthスコープ(GitHubã®å ´åˆã¯user:email)","discoveryUrlGoogle":"OIDCディスカãƒãƒªãƒ¼ã‚¨ãƒ³ãƒ‰ãƒã‚¤ãƒ³ãƒˆï¼ˆGoogle用ã«äº‹å‰è¨å®šæ¸ˆã¿ï¼‰","discoveryUrlMicrosoft":"テナントIDã‹ã‚‰è‡ªå‹•生æˆã•れるOIDCディスカãƒãƒªãƒ¼ã‚¨ãƒ³ãƒ‰ãƒã‚¤ãƒ³ãƒˆ","discoveryUrlOkta":"Oktaドメインã‹ã‚‰OIDCディスカãƒãƒªãƒ¼ã‚¨ãƒ³ãƒ‰ãƒã‚¤ãƒ³ãƒˆãŒè‡ªå‹•生æˆã•れã¾ã™","discoveryUrlAdvanced":"OIDCディスカãƒãƒªãƒ¼ã‚¨ãƒ³ãƒ‰ãƒã‚¤ãƒ³ãƒˆURL(プãƒãƒã‚¤ãƒ€ãƒ¼ãŒã‚µãƒãƒ¼ãƒˆã—ã¦ã„ã‚‹å ´åˆï¼‰","tenantId":"Azure ADディレクトリ(テナント)ID - Azureãƒãƒ¼ã‚¿ãƒ« → Azure Active Directory → 概è¦ã§ç¢ºèªã§ãã¾ã™","oktaDomain":"Oktaドメインå(例:your-company.okta.comã®'your-company'ã®éƒ¨åˆ†ï¼‰","authEndpointGithub":"GitHub OAuthèªè¨¼ã‚¨ãƒ³ãƒ‰ãƒã‚¤ãƒ³ãƒˆï¼ˆäº‹å‰è¨å®šæ¸ˆã¿ï¼‰","authEndpointGeneral":"OAuthèªè¨¼ã‚¨ãƒ³ãƒ‰ãƒã‚¤ãƒ³ãƒˆURL","tokenEndpointGithub":"GitHub OAuthトークンエンドãƒã‚¤ãƒ³ãƒˆï¼ˆäº‹å‰è¨å®šæ¸ˆã¿ï¼‰","tokenEndpointGeneral":"OAuthトークンエンドãƒã‚¤ãƒ³ãƒˆURL","userinfoEndpointGithub":"GitHub APIユーザーエンドãƒã‚¤ãƒ³ãƒˆï¼ˆäº‹å‰è¨å®šæ¸ˆã¿ï¼‰","userinfoEndpointGeneral":"OAuthãƒ¦ãƒ¼ã‚¶ãƒ¼æƒ…å ±ã‚¨ãƒ³ãƒ‰ãƒã‚¤ãƒ³ãƒˆURL","jwksUri":"トークン検証用ã®JSON Web Key Set URI","providerName":"SSOプãƒãƒã‚¤ãƒ€ãƒ¼ã®ã‚«ã‚¹ã‚¿ãƒ å"},"providerFallback":"{{name}} シングルサインオン","providers":{"advanced":"詳細è¨å®š / 手動è¨å®š"}},"domainVerification":{"title":"ドメイン検証","label":"ワークスペースドメイン","placeholder":"ãƒ‰ãƒ¡ã‚¤ãƒ³ã‚’è¿½åŠ ","hint":"ワークスペースã«ãƒªãƒ³ã‚¯ã•れãŸãƒ‰ãƒ¡ã‚¤ãƒ³","check":"確èªã™ã‚‹","verified":"検証済ã¿","checking":"確èªä¸","copyFailed":"クリップボードã¸ã®ã‚³ãƒ”ーã«å¤±æ•—ã—ã¾ã—ãŸ","dnsTimedOut":"DNS検証ãŒã‚¿ã‚¤ãƒ アウトã—ã¾ã—ãŸã€‚DNSè¨å®šã‚’確èªã—ã¦å†è©¦è¡Œã—ã¦ãã ã•ã„。","domainVerifiedSuccess":"ãƒ‰ãƒ¡ã‚¤ãƒ³ãŒæ£å¸¸ã«æ¤œè¨¼ã•れã¾ã—ãŸï¼","enterDomainFirst":"å…ˆã«ãƒ‰ãƒ¡ã‚¤ãƒ³ã‚’入力ã—ã¦ãã ã•ã„","domainSaved":"ドメインãŒä¿å˜ã•れã¾ã—ãŸã€‚所有権を確èªã™ã‚‹ãŸã‚ã«DNSãƒ¬ã‚³ãƒ¼ãƒ‰ã‚’è¿½åŠ ã—ã¦ãã ã•ã„。","configFailed":"ドメイン検証ã®è¨å®šã«å¤±æ•—ã—ã¾ã—ãŸ","verificationReset":"ドメイン検証ãŒãƒªã‚»ãƒƒãƒˆã•れã¾ã—ãŸ","resetFailed":"ドメイン検証ã®ãƒªã‚»ãƒƒãƒˆã«å¤±æ•—ã—ã¾ã—ãŸ","addDnsRecords":"{{domain}}ã®DNSãƒ¬ã‚³ãƒ¼ãƒ‰ã‚’è¿½åŠ ","dnsInstructions":"ドメインプãƒãƒã‚¤ãƒ€ãƒ¼ã«ãƒã‚°ã‚¤ãƒ³ã—ã€DNSè¨å®šã«ç§»å‹•ã—ã¦ã€ã“ã®TXTãƒ¬ã‚³ãƒ¼ãƒ‰ã‚’è¿½åŠ ã—ã¦ãã ã•ã„。","type":"タイプ","hostName":"ホスト / åå‰","value":"値","dnsCheckNote":"DNS検証ã«ã¯æ•°åˆ†ã‹ã‹ã‚‹å ´åˆãŒã‚りã¾ã™ã€‚ã™ã¹ã¦ãŒæ›´æ–°ã•れるã¨ã€ãƒ‰ãƒ¡ã‚¤ãƒ³ãŒè‡ªå‹•çš„ã«æ¤œè¨¼ã•れã¾ã™ã€‚","checkingDns":"DNSレコードを確èªä¸...","resetting":"リセットä¸...","reset":"リセット","copyLabel":"{{label}}をコピー"}}}`),NY={earnBonusCredits:"ボーナスクレジットをç²å¾—"},FY={apps:"アプリ",superagents:"スーパーエージェント",newAgent:"æ–°ã—ã„エージェント",emptyAgents:"最åˆã®ã‚¨ãƒ¼ã‚¸ã‚§ãƒ³ãƒˆã‚’作æˆã™ã‚‹ã¨ã€ã“ã“ã«ä¼šè©±ãŒè¡¨ç¤ºã•れã¾ã™ã€‚",allAgents:"ã™ã¹ã¦ã®ã‚¨ãƒ¼ã‚¸ã‚§ãƒ³ãƒˆ",settings:"è¨å®š",inviteMembers:"メンãƒãƒ¼ã‚’招待",allWorkspaces:"ã™ã¹ã¦ã®ãƒ¯ãƒ¼ã‚¯ã‚¹ãƒšãƒ¼ã‚¹",org:"組織",createNewWorkspace:"æ–°ã—ã„ワークスペースを作æˆ",recents:"最近ã®é …ç›®",favorites:"ãŠæ°—ã«å…¥ã‚Š",noFavoritesYet:"ãŠæ°—ã«å…¥ã‚Šã¯ã¾ã ã‚りã¾ã›ã‚“",addAppsForQuickAccess:"ã‚¢ãƒ—ãƒªã‚’è¿½åŠ ã—ã¦ã™ã°ã‚„ãアクセス",view_all:"ã™ã¹ã¦è¡¨ç¤º"},LY={pageTitle:"Base44ギフトカードを購入",pageSubtitle:"ã‚‚ã®ã¥ãりã®å–œã³ã‚’è´ˆã‚ã†ã€‚å‹é”ã«ã‚®ãƒ•トカードをé€ã‚ã†ã€‚",tabBuy:"ギフトカードを購入",tabPurchased:"購入済ã¿",successTitle:"ã‚®ãƒ•ãƒˆã‚«ãƒ¼ãƒ‰ãŒæ£å¸¸ã«è³¼å…¥ã•れã¾ã—ãŸï¼",successDescription:"å—å–人ã«ã‚®ãƒ•トカードコードãŒè¨˜è¼‰ã•れãŸãƒ¡ãƒ¼ãƒ«ãŒé€ä¿¡ã•れã¾ã™ã€‚",successDescriptionPdf:"å°åˆ·ã—ã¦ç›´æŽ¥ãŠæ¸¡ã—ã§ãるギフトカードã«ã¤ã„ã¦ã€ãƒ¡ãƒ¼ãƒ«ã‚’ã”確èªãã ã•ã„。",dismissSuccess:"æˆåŠŸãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã‚’é–‰ã˜ã‚‹",amount:"金é¡",customAmount:"$ カスタム",customAmountPlaceholder:"{{symbol}} カスタム金é¡",customAmountError:"金é¡ã¯{{min}}〜{{max}}ã®ç¯„囲ã§å…¥åŠ›ã—ã¦ãã ã•ã„",creditsInfo:"ã“ã®ã‚®ãƒ•トカードã«ã¯<strong>{{credits}}メッセージクレジット</strong>ãŒå«ã¾ã‚Œã¾ã™",deliveryMethodTitle:"é…逿–¹æ³•ã‚’é¸æŠž",deliveryEmail:"å—å–人ã«ãƒ¡ãƒ¼ãƒ«ã‚’é€ä¿¡ï¼ˆè³¼å…¥å¾Œã™ã)",deliveryPdf:"自分ã«ãƒ¡ãƒ¼ãƒ«ã‚’é€ä¿¡ï¼ˆå°åˆ·ç”¨PDF)",recipientTitle:"宛先",recipientName:"åå‰",recipientNamePlaceholder:"å—å–人ã®åå‰",recipientEmail:"メール",recipientEmailPlaceholder:"å—å–人ã®ãƒ¡ãƒ¼ãƒ«ã‚¢ãƒ‰ãƒ¬ã‚¹",messageLabel:"ギフトカードメッセージ(任æ„)",messagePlaceholder:"ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã‚’è¿½åŠ ...",suggestMessage:"ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã‚’ææ¡ˆ",suggestFallbackName:"å‹é”",messageCharCount:"{{count}}/300æ–‡å—",senderTitle:"差出人",senderName:"ã‚ãªãŸã®åå‰",senderNamePlaceholder:"ã‚ãªãŸã®åå‰",submitButton:"購入手続ãã¸",submitting:"処ç†ä¸...",errorGeneric:"エラーãŒç™ºç”Ÿã—ã¾ã—ãŸ",historyEmpty:"ã¾ã ギフトカードã¯ã‚りã¾ã›ã‚“。å‹é”ã«ãƒ—レゼントã—よã†ï¼",historyTo:"{{name}}ã•ã‚“ã¸",historyCodeLabel:"ギフトカードコード",historyCopy:"コピー",historyCopied:"コピー済ã¿",historyRedeemed:"ã“ã®ã‚®ãƒ•トカードã¯ä½¿ç”¨æ¸ˆã¿ã§ã™",historyRedeemedOn:"ã“ã®ã‚®ãƒ•トカードã¯{{date}}ã«ä½¿ç”¨ã•れã¾ã—ãŸ",historySentTo:"{{email}}ã«é€ä¿¡æ¸ˆã¿",statusSent:"é€ä¿¡æ¸ˆã¿",statusRedeemed:"使用済ã¿",statusExpired:"期é™åˆ‡ã‚Œ",statusProcessing:"処ç†ä¸",statusPending:"ä¿ç•™ä¸",statusRevoked:"å–ã‚Šæ¶ˆã—æ¸ˆã¿",designTitle:"ãƒ‡ã‚¶ã‚¤ãƒ³ã‚’é¸æŠž",historyActions:"アクション",designClassic:"クラシック",designSunrise:"サンライズ",designOcean:"オーシャン",cardLabel:"ギフトカード",cardCreditsLabel:"メッセージクレジット",cardFor:"{{name}}ã•ã‚“ã¸",cardDefaultName:"ãŠå‹é”",historyError:"ギフトカードã®èªã¿è¾¼ã¿ã«å¤±æ•—ã—ã¾ã—ãŸã€‚ã‚‚ã†ä¸€åº¦ãŠè©¦ã—ãã ã•ã„。",historyDateIssued:"発行日",historyRecipient:"å—å–人",historyAmount:"金é¡",historyStatus:"ステータス",historyCode:"コード",historySenderDetails:"é€ä¿¡è€…詳細",historySentToYou:"ã‚ãªãŸã«é€ä¿¡æ¸ˆã¿",historyViewCode:"コードを表示",historyHideCode:"コードをéžè¡¨ç¤º",historyDownloadPdf:"PDFをダウンãƒãƒ¼ãƒ‰",historyResend:"å†é€ä¿¡",historyResendSuccess:"ギフトカードメールをå†é€ä¿¡ã—ã¾ã—ãŸï¼",historyResendError:"メールã®å†é€ä¿¡ã«å¤±æ•—ã—ã¾ã—ãŸã€‚ã‚‚ã†ä¸€åº¦ãŠè©¦ã—ãã ã•ã„。",historyDownloadError:"ダウンãƒãƒ¼ãƒ‰ã«å¤±æ•—ã—ã¾ã—ãŸã€‚ã‚‚ã†ä¸€åº¦ãŠè©¦ã—ãã ã•ã„。",historyCredits:"クレジット",emailInvalid:"有効ãªãƒ¡ãƒ¼ãƒ«ã‚¢ãƒ‰ãƒ¬ã‚¹ã‚’入力ã—ã¦ãã ã•ã„",buyGiftCard:"ギフトカードを購入",giftAndReferrals:"ギフト&紹介",redeemTitle:"ギフトカードをå—ã‘å–りã¾ã—ãŸï¼",redeemDescription:"å¼•ãæ›ãˆå¾Œã€ã‚¯ãƒ¬ã‚¸ãƒƒãƒˆã¯ã‚ãªãŸã®ãƒ¯ãƒ¼ã‚¯ã‚¹ãƒšãƒ¼ã‚¹ã«é©ç”¨ã•れã¾ã™ã€‚",redeemSelectWorkspace:"ãƒ¯ãƒ¼ã‚¯ã‚¹ãƒšãƒ¼ã‚¹ã‚’é¸æŠž",redeemBackToWorkspace:"ãƒ¯ãƒ¼ã‚¯ã‚¹ãƒšãƒ¼ã‚¹ã«æˆ»ã‚‹",redeemCheckCreditUsage:"クレジット使用状æ³ã‚’確èª",redeemErrorDescription:"ã“ã®ã‚³ãƒ¼ãƒ‰ã¯ã™ã§ã«ä½¿ç”¨ã•れã¦ãŠã‚Šã€å†åº¦å¼•ãæ›ãˆã‚‹ã“ã¨ã¯ã§ãã¾ã›ã‚“。何ãŒèµ·ããŸã‹ä¸æ˜Žãªå ´åˆã¯ã€ã‚¯ãƒ¬ã‚¸ãƒƒãƒˆã‚’確èªã™ã‚‹ã‹ã€ã‚µãƒãƒ¼ãƒˆã«ãŠå•ã„åˆã‚ã›ãã ã•ã„。",redeemDefaultWorkspace:"ã“ã®",error:"エラー",redeemSuccess:"ã‚®ãƒ•ãƒˆã‚«ãƒ¼ãƒ‰ã‚’å¼•ãæ›ãˆã¾ã—ãŸï¼",redeemSuccessDescription:"{{credits}}クレジットãŒ{{workspace}}ã«è¿½åŠ ã•れã¾ã—ãŸã€‚",redeemButton:"ã‚®ãƒ•ãƒˆã‚«ãƒ¼ãƒ‰ã‚’å¼•ãæ›ãˆã‚‹",redeemNotNow:"後ã§",redeemDocsLink:"ギフトカードクレジットã®ä»•組ã¿ã«ã¤ã„ã¦ã¯<docsLink>ドã‚ュメント</docsLink>ã‚’ã”覧ãã ã•ã„",redeemCouponDescription:"å¼•ãæ›ãˆã‚‹ã¨ã€ã‚µãƒ–スクリプションãŒ{{amount}}分ã®å‰²å¼•ã«ãªã‚Šã¾ã™ã€‚",redeemCouponAppliedTitle:"ギフトカードãŒé©ç”¨ã•れã¾ã—ãŸï¼",redeemCouponReadyTitle:"ã‚®ãƒ•ãƒˆã‚«ãƒ¼ãƒ‰ã®æº–å‚™ãŒã§ãã¾ã—ãŸï¼",redeemCouponNoWorkspace:"ワークスペースãŒé¸æŠžã•れã¦ã„ã¾ã›ã‚“",coupon:{title:"クーãƒãƒ³ã¾ãŸã¯ã‚®ãƒ•ãƒˆã‚«ãƒ¼ãƒ‰ã‚’å¼•ãæ›ãˆã‚‹",description:"コードを入力ã—ã¦ã‚¯ãƒ¬ã‚¸ãƒƒãƒˆã‚’è¿½åŠ ã—ã¦ãã ã•ã„。",placeholder:"コードを入力",apply:"é©ç”¨",success:"クーãƒãƒ³ãŒæ£å¸¸ã«é©ç”¨ã•れã¾ã—ãŸï¼",invalidCode:"コードãŒç„¡åйã§ã™ã€‚ã‚‚ã†ä¸€åº¦ãŠè©¦ã—ãã ã•ã„。",notFound:"クーãƒãƒ³ã‚³ãƒ¼ãƒ‰ãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“。コードを確èªã—ã¦ã‚‚ã†ä¸€åº¦ãŠè©¦ã—ãã ã•ã„。",giftCardNotFound:"ギフトカードãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“。コードを確èªã—ã¦ã‚‚ã†ä¸€åº¦ãŠè©¦ã—ãã ã•ã„。",redeemFailed:"ギフトカードã®å¼•ãæ›ãˆã«å¤±æ•—ã—ã¾ã—ãŸã€‚ã‚‚ã†ä¸€åº¦ãŠè©¦ã—ãã ã•ã„。"},errors:{invalidRecipientEmail:"有効ãªãƒ¡ãƒ¼ãƒ«ã‚¢ãƒ‰ãƒ¬ã‚¹ã‚’入力ã—ã¦ãã ã•ã„",recipientEmailRequired:"å—å–人ã®ãƒ¡ãƒ¼ãƒ«ã‚¢ãƒ‰ãƒ¬ã‚¹ã¯å¿…é ˆã§ã™",checkoutFailed:"購入を開始ã§ãã¾ã›ã‚“ã§ã—ãŸã€‚ã‚‚ã†ä¸€åº¦ãŠè©¦ã—ãã ã•ã„。",confirmPurchaseFailed:"購入を確èªã§ãã¾ã›ã‚“ã§ã—ãŸã€‚ã‚‚ã†ä¸€åº¦ãŠè©¦ã—ãã ã•ã„。",alreadyRedeemed:"ã“ã®ã‚®ãƒ•トカードã¯ã™ã§ã«ä½¿ç”¨æ¸ˆã¿ã§ã™",notAvailable:"ã“ã®ã‚®ãƒ•トカードã¯å¼•ãæ›ãˆã§ãã¾ã›ã‚“",expired:"ã“ã®ã‚®ãƒ•ãƒˆã‚«ãƒ¼ãƒ‰ã¯æœ‰åŠ¹æœŸé™ãŒåˆ‡ã‚Œã¦ã„ã¾ã™",notWorkspaceMember:"é¸æŠžã—ãŸãƒ¯ãƒ¼ã‚¯ã‚¹ãƒšãƒ¼ã‚¹ã®ãƒ¡ãƒ³ãƒãƒ¼ã§ã¯ã‚りã¾ã›ã‚“",networkError:"ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ã‚¨ãƒ©ãƒ¼ã§ã™ã€‚インターãƒãƒƒãƒˆæŽ¥ç¶šã‚’確èªã—ã¦ã‚‚ã†ä¸€åº¦ãŠè©¦ã—ãã ã•ã„。",rateLimitExceeded:"試行回数ãŒå¤šã™ãŽã¾ã™ã€‚ã—ã°ã‚‰ãã—ã¦ã‹ã‚‰ã‚‚ã†ä¸€åº¦ãŠè©¦ã—ãã ã•ã„。",permissionDenied:"ã‚®ãƒ•ãƒˆã‚«ãƒ¼ãƒ‰ã‚’å¼•ãæ›ãˆã‚‰ã‚Œã‚‹ã®ã¯ãƒ¯ãƒ¼ã‚¯ã‚¹ãƒšãƒ¼ã‚¹ã®ã‚ªãƒ¼ãƒŠãƒ¼ã®ã¿ã§ã™ã€‚オーナーã«ã“ã®ã‚³ãƒ¼ãƒ‰ã®é©ç”¨ã‚’ä¾é ¼ã—ã¦ãã ã•ã„。",invalidPlanPrice:"ã“ã®ãƒ—ランã¯ã‚®ãƒ•トカードã§ã®ãŠæ”¯æ‰•ã„ã«å¯¾å¿œã—ã¦ã„ã¾ã›ã‚“。別ã®ãƒ—ãƒ©ãƒ³ã‚’é¸æŠžã—ã¦ãã ã•ã„。"},creditBanner:"アカウントã«{{amount}}ã®ã‚®ãƒ•トカードクレジットãŒã‚りã¾ã™ã€‚次回ã®è«‹æ±‚書ã«è‡ªå‹•çš„ã«é©ç”¨ã•れã¾ã™ã€‚",upgradeGiftCardWarning:"ç¾åœ¨ã®ãƒ—ランã¯ã‚®ãƒ•トカードã§è³¼å…¥ã•れã¾ã—ãŸã€‚ギフトカードã®ã‚¯ãƒ¬ã‚¸ãƒƒãƒˆã¯ã‚¢ãƒƒãƒ—グレード時ã«å¼•ãç¶™ãŒã‚Œã¾ã›ã‚“ — 日割り料金ãŒè«‹æ±‚ã•れã¾ã™ã€‚"},jY={back:"戻る"},OY="èªã¿è¾¼ã¿ä¸...",BY={message:"<strong>{{email}}</strong>ã¨ã—ã¦ã‚µã‚¤ãƒ³ã‚¤ãƒ³ã—ã¦ã„ã¾ã™ — 想定ã•れãŸã‚¢ã‚«ã‚¦ãƒ³ãƒˆã¨ä¸€è‡´ã—ã¾ã›ã‚“。",switchAccount:"アカウントを切り替ãˆã‚‹",dismiss:"ãƒãƒŠãƒ¼ã‚’é–‰ã˜ã‚‹"},UY={topBar:PY,createWorkspacePage:_Y,workspaceMenu:xY,agentEditorMenu:IY,credits:RY,community:zY,workspaceSettings:MY,referralCta:NY,sidebar:FY,giftCards:LY,common:jY,loading:OY,userMismatch:BY},qY={notifications:"通知",latestNews:"最新ニュース"},VY={loading:"èªã¿è¾¼ã¿ä¸...",loadingMore:"ã•らã«èªã¿è¾¼ã¿ä¸...",errorLoading:"通知ã®èªã¿è¾¼ã¿ã«å¤±æ•—ã—ã¾ã—ãŸ",noNotifications:"通知ã¯ã¾ã ã‚りã¾ã›ã‚“",noMoreNotifications:"通知ã¯ã“れ以上ã‚りã¾ã›ã‚“",noNews:"ニュースã¯ã¾ã ã‚りã¾ã›ã‚“"},$Y={markAllAsRead:"ã™ã¹ã¦æ—¢èªã«ã™ã‚‹",readMore:"ç¶šãã‚’èªã‚€",showLess:"折りãŸãŸã‚€",upgrade:"アップグレード",percentOff:"{{percent}}%オフ"},WY={tabs:qY,states:VY,actions:$Y},GY="プランã¨è«‹æ±‚",HY="サブスクリプション管ç†",YY={planAndBilling:"プランã¨è«‹æ±‚"},KY={details:"サブスクリプション詳細",cancelPlan:"プランを解約",cancelling:"ã‚ャンセルä¸...",explorePlans:"プランを見る",reactivatePlan:"ãƒ—ãƒ©ãƒ³ã‚’å†æœ‰åŠ¹åŒ–",reactivating:"冿œ‰åŠ¹åŒ–ä¸...",upgradePlan:"プランをアップグレード",updatePayment:"支払ã„ã‚’æ›´æ–°",managePlan:"プランを管ç†",yourPlan:"ç¾åœ¨ã®ãƒ—ラン",creditsPerMonth:"月間クレジット",price:"料金",nextBillingDate:"次回請求日",highlights:"プランã®ç‰¹å¾´",cancelChange:"変更をã‚ャンセル",cancelTooltip:"サブスクリプションをã‚ャンセルã™ã‚‹ã«ã¯ã€ã¾ãšã‚¹ã‚±ã‚¸ãƒ¥ãƒ¼ãƒ«ã•れãŸãƒ€ã‚¦ãƒ³ã‚°ãƒ¬ãƒ¼ãƒ‰ã‚’ã‚ャンセルã—ã¦ãã ã•ã„",currentlyUsing:"ç¾åœ¨ <bold>{{plan}}</bold> プランをã”利用ä¸ã§ã™",subscriptionEndsOn:"サブスクリプションã¯{{date}}ã«çµ‚了ã—ã¾ã™",subscriptionRenewsOn:"サブスクリプションã¯{{date}}ã«æ›´æ–°ã•れã¾ã™",noActiveSubscription:"有効ãªã‚µãƒ–スクリプションãªã—",keepSubscription:"サブスクリプションを継続ã—ã¾ã™ã‹ï¼Ÿ<manageLink>プランを管ç†</manageLink>をクリックã—ã¦å¤‰æ›´ã‚’ã‚ャンセルã—ã¦ãã ã•ã„。",planChangeNotice:"ç¾åœ¨ã®è«‹æ±‚サイクル終了時ã«ãƒ—ランãŒ{{plan}}ã«å¤‰æ›´ã•れã¾ã™ã€‚",cancelOnDate:"プランã¯{{date}}ã«è§£ç´„ã•れる予定ã§ã™ã€‚ç¾åœ¨ã®ã‚¯ãƒ¬ã‚¸ãƒƒãƒˆã¨æ©Ÿèƒ½ã‚’ç¶æŒã™ã‚‹ã«ã¯å†æœ‰åŠ¹åŒ–ã—ã¦ãã ã•ã„。",cancelNoDate:"サブスクリプションã¯ã‚ャンセルã•れる予定ã§ã™ã€‚ç¾åœ¨ã®ã‚¯ãƒ¬ã‚¸ãƒƒãƒˆã¨æ©Ÿèƒ½ã‚’ç¶æŒã™ã‚‹ã«ã¯å†æœ‰åŠ¹åŒ–ã—ã¦ãã ã•ã„。",free:"ç„¡æ–™",monthly:"月",yearly:"å¹´",subscriptionCancelled:"サブスクリプションãŒã‚ャンセルã•れã¾ã—ãŸ",staysActiveUntil:"{{date}}ã¾ã§ã™ã¹ã¦ã®æ©Ÿèƒ½ãŒæœ‰åйã§ã™",creditsFormat:"{{messageCredits}} メッセージ | {{integrationCredits}} インテグレーション",priceFormat:"{{symbol}}{{amount}}/{{period}}"},ZY={privateApps:"プライベートアプリ",inAppCodeEditing:"アプリ内コード編集",unlimitedApps:"無制é™ã®ã‚¢ãƒ—リ",removeBase44Badge:"Base44ãƒãƒƒã‚¸ã‚’éžè¡¨ç¤º",connectDomain:"ドメインを接続",backendFunctions:"ãƒãƒƒã‚¯ã‚¨ãƒ³ãƒ‰é–¢æ•°",github2WaySync:"GitHubåŒæ–¹å‘åŒæœŸ",customOAuth:"Google Consoleã‹ã‚‰ã‚«ã‚¹ã‚¿ãƒ OAuth",aiModelSelection:"AIãƒ¢ãƒ‡ãƒ«é¸æŠž",stripeIntegration:"Stripe連æº",customEmailDomain:"カスタムメールドメイン",appStoreFileDownloads:"アプリストアファイルダウンãƒãƒ¼ãƒ‰"},JY={title:"æ”¯æ‰•ã„æœŸé™è¶…éŽ",description:"ã‚µãƒ–ã‚¹ã‚¯ãƒªãƒ—ã‚·ãƒ§ãƒ³ã®æ”¯æ‰•ã„ãŒæœŸé™ã‚’è¶…ãˆã¦ã„ã¾ã™ã€‚æ”¯æ‰•ã„æ–¹æ³•ã‚’æ›´æ–°ã—ã¦ãƒ—ラン機能ã¸ã®ãƒ•ルアクセスを回復ã—ã¦ãã ã•ã„。",tryAgain:"å†è©¦è¡Œ",trying:"処ç†ä¸..."},QY={title:"æ”¯æ‰•ã„æ–¹æ³•",manage:"管ç†",noPaymentMethod:"æ”¯æ‰•ã„æ–¹æ³•ãŒç™»éŒ²ã•れã¦ã„ã¾ã›ã‚“",default:"デフォルト",expires:"æœ‰åŠ¹æœŸé™ {{month}}/{{year}}"},XY={title:"è«‹æ±‚æƒ…å ±",manage:"管ç†",name:"åå‰",email:"メールアドレス",billingAddress:"è«‹æ±‚å…ˆä½æ‰€",noInformation:"è«‹æ±‚æƒ…å ±ãŒã‚りã¾ã›ã‚“"},e2={title:"請求履æ´",noHistory:"請求履æ´ãŒã‚りã¾ã›ã‚“",loading:"請求履æ´ã‚’èªã¿è¾¼ã¿ä¸...",loadError:"請求データã®èªã¿è¾¼ã¿ã«å¤±æ•—ã—ã¾ã—ãŸ",planDescription:"{{plan}} プラン",downloadInvoice:"請求書をダウンãƒãƒ¼ãƒ‰"},t2={managingBillingFor:"<bold>{{name}}</bold> ã®è«‹æ±‚を管ç†ä¸",subscriptionRenewsOn:"ワークスペースã®ã‚µãƒ–スクリプションã¯{{date}}ã«æ›´æ–°ã•れã¾ã™",noActiveSubscription:"有効ãªãƒ¯ãƒ¼ã‚¯ã‚¹ãƒšãƒ¼ã‚¹ã‚µãƒ–スクリプションãªã—",manage:"管ç†",defaultName:"ワークスペース",addSeats:"ãƒ¦ãƒ¼ã‚¶ãƒ¼ã‚’è¿½åŠ ",loadError:"ワークスペースã®è«‹æ±‚å±¥æ´ã®èªã¿è¾¼ã¿ã«å¤±æ•—ã—ã¾ã—ãŸ",workspaceSeats:"ワークスペースユーザー",contactAdmin:{title:"ワークスペースプラン",subtitle:"ワークスペースã§ç®¡ç†ã•れã¦ã„ã¾ã™",body:"クレジットãŒã‚‚ã£ã¨å¿…è¦ã§ã™ã‹ï¼Ÿãƒ¯ãƒ¼ã‚¯ã‚¹ãƒšãƒ¼ã‚¹ç®¡ç†è€…ã«é€£çµ¡ã—ã¦ã€ãƒãƒ¼ãƒ ã®ãƒ—ランをアップグレードã—ã¦ãã ã•ã„。"}},a2={portalError:"課金ãƒãƒ¼ã‚¿ãƒ«ã‚’é–‹ã‘ã¾ã›ã‚“ã§ã—ãŸã€‚後ã§ã‚‚ã†ä¸€åº¦ãŠè©¦ã—ã„ãŸã ãã‹ã€ã‚µãƒãƒ¼ãƒˆã«ãŠå•ã„åˆã‚ã›ãã ã•ã„。",paymentPortalError:"支払ã„管ç†ã‚’é–‹ã‘ã¾ã›ã‚“ã§ã—ãŸã€‚ã‚‚ã†ä¸€åº¦ãŠè©¦ã—ãã ã•ã„。",scheduleCancelSuccess:"ã‚µãƒ–ã‚¹ã‚¯ãƒªãƒ—ã‚·ãƒ§ãƒ³ã‚¹ã‚±ã‚¸ãƒ¥ãƒ¼ãƒ«ãŒæ£å¸¸ã«ã‚ャンセルã•れã¾ã—ãŸ",scheduleCancelError:"サブスクリプションスケジュールã®ã‚ャンセルã«å¤±æ•—ã—ã¾ã—ãŸã€‚後ã§ã‚‚ã†ä¸€åº¦ãŠè©¦ã—ãã ã•ã„。",subscriptionCancelError:"サブスクリプションã®ã‚ャンセルã«å¤±æ•—ã—ã¾ã—ãŸã€‚ã‚‚ã†ä¸€åº¦ãŠè©¦ã—ãã ã•ã„。"},n2={title:GY,manageSubscription:HY,breadcrumb:YY,subscription:KY,features:ZY,pastDue:JY,paymentMethod:QY,billingInformation:XY,billingHistory:e2,workspace:t2,toasts:a2},i2={title:"ãŠå•ã„åˆã‚ã›",subtitle:"ç§ãŸã¡ã®ãƒãƒ¼ãƒ ã«ãŠå•ã„åˆã‚ã›ã„ãŸã ãã€Base44 ãŒè²´ç¤¾ã®ãŠå½¹ã«ç«‹ã¦ã‚‹æ–¹æ³•ã‚’ã”確èªãã ã•ã„。",form:{firstName:"å*",lastName:"å§“*",workEmail:"会社メールアドレス*",companyWebsite:"会社ウェブサイト*",role:"å½¹è·*",discussion:"ã”相談内容をãŠèžã‹ã›ãã ã•ã„",submit:"é€ä¿¡"},success:{title:"ãŠå•ã„åˆã‚ã›ã‚りãŒã¨ã†ã”ã–ã„ã¾ã™ï¼",description:"メッセージをå—ã‘å–りã¾ã—ãŸã€‚24 時間以内ã«ãƒãƒ¼ãƒ よりã”連絡ã„ãŸã—ã¾ã™ã€‚Base44ã‚’ã”利用ã„ãŸã ãã“ã¨ã‚’楽ã—ã¿ã«ã—ã¦ã„ã¾ã™ï¼"}},r2={iso27001:{title:"ISO 27001",subtitle:"ISO ã‚»ã‚ュリティ管ç†"},soc2:{title:"SOC 2 タイプ II",subtitle:"サービス組織å‘ã‘ SOC"},gdpr:{title:"GDPR",subtitle:"データä¿è·ã¨ãƒ—ライãƒã‚·ãƒ¼è¦åˆ¶"}},o2={fiveApps:"5ã¤ã®ã‚¢ãƒ—リ",unlimitedCollaborators:"無制é™ã®ã‚³ãƒ©ãƒœãƒ¬ãƒ¼ã‚¿ãƒ¼",userAnalytics:"ユーザー分æž",aiAgents:"AIエージェント",limitedDb:"512MB DB(制é™ã‚り)",unlimitedApps:"無制é™ã®ã‚¢ãƒ—リ",unlimitedNumberOfApps:"無制é™ã®ã‚¢ãƒ—リ数",connectDomain:"ãƒ‰ãƒ¡ã‚¤ãƒ³ã®æŽ¥ç¶š",connectorsIntegrations:"コãƒã‚¯ã‚¿ãƒ¼ã¨é€£æº",backendFunctions:"ãƒãƒƒã‚¯ã‚¨ãƒ³ãƒ‰æ©Ÿèƒ½",scaledUserAnalytics:"スケーラブルãªãƒ¦ãƒ¼ã‚¶ãƒ¼åˆ†æž",privateApps:"プライベートアプリ",flexibleAiModelControl:"柔軟ãªAIモデル制御",removeBase44Branding:"Base44ブランディングを削除",inAppCodeEditing:"アプリ内コード編集",inAppCodeEdits:"アプリ内コード編集",freeDomainOneYear:"1年間無料ドメイン",creditsToShare:"å‹é”ã«ã‚·ã‚§ã‚¢ã§ãã‚‹25クレジット",githubTwoWayIntegration:"GitHubåŒæ–¹å‘連æº",githubIntegration:"GitHub連æº",earlyAccessBeta:"ベータ機能ã¸ã®æ—©æœŸã‚¢ã‚¯ã‚»ã‚¹",premiumSupport:"プレミアムサãƒãƒ¼ãƒˆ",sso:"シングルサインオン(SSO)",prioritySupport:"優先サãƒãƒ¼ãƒˆ",workspacePublishingControls:"ワークスペース公開管ç†",workspaceTemplates:"ワークスペーステンプレート",ipWhitelisting:"IPホワイトリスト",workspaceUsageAnalytics:"ワークスペース使用状æ³åˆ†æž",userRolesPermissions:"ユーザーãƒãƒ¼ãƒ«ã¨æ¨©é™",dataTrainingOptOut:"データå¦ç¿’ã®ã‚ªãƒ—トアウト",scim:"SCIM",creditConsumptionControl:"クレジット消費管ç†",dedicatedAccountManager:"専任アカウントマãƒãƒ¼ã‚¸ãƒ£ãƒ¼",dedicatedSolutionEngineer:"専任ソリューションエンジニア",enterpriseSupport:"エンタープライズサãƒãƒ¼ãƒˆ",customSecurityCapabilities:"カスタムセã‚ュリティ機能",customDatabaseStorage:"カスタムデータベースストレージ",customRateLimits:"カスタムレート制é™",tailoredOnboarding:"カスタマイズã•れãŸã‚ªãƒ³ãƒœãƒ¼ãƒ‡ã‚£ãƒ³ã‚°ã¨åˆ©ç”¨é–‹å§‹æ”¯æ´",workspaceMonitoringApi:"ワークスペース監視API"},s2={unlimitedApps:"無制é™ã®ã‚¢ãƒ—リ",unlimitedCollaboratorsSharedCredits:"共有クレジット付ã無制é™ã®ã‚³ãƒ©ãƒœãƒ¬ãƒ¼ã‚¿ãƒ¼",customDomain:"カスタムドメイン",removeBase44Branding:"Base44ブランディングを削除",builtInIntegrations:"組ã¿è¾¼ã¿ã‚¤ãƒ³ãƒ†ã‚°ãƒ¬ãƒ¼ã‚·ãƒ§ãƒ³",automations:"オートメーション",chooseAiModel:"AIãƒ¢ãƒ‡ãƒ«ã‚’é¸æŠž",inAppCodeEditing:"アプリ内コード編集",twoWayGithubSync:"åŒæ–¹å‘GitHubシンク",privateTemplates:"プライベートテンプレート",earlyAccessNewFeatures:"新機能ã¸ã®æ—©æœŸã‚¢ã‚¯ã‚»ã‚¹",prioritySupport:"優先サãƒãƒ¼ãƒˆ"},l2={choosePlan:"ã‚ãªãŸã«åˆã£ãŸãƒ—ランをãŠé¸ã³ãã ã•ã„",usage:"利用状æ³",back:"戻る",chooseBillingCycleUpgrade:"{{planName}}ã¸ã®ã‚¢ãƒƒãƒ—グレードã«å‘ã‘ã¦è«‹æ±‚サイクルをãŠé¸ã³ãã ã•ã„",selectBillingCycle:"{{planName}}プランã®è«‹æ±‚サイクルをãŠé¸ã³ãã ã•ã„",viewBilling:"請求を表示",seePricing:"料金を見る"},c2={desktop:"Base44ã¯<wixLogo/>ã®ä¸€éƒ¨ã§ã™ - 世界ä¸ã§2å„„5000万人以上ã«ä¿¡é ¼ã•れã¦ã„ã¾ã™",mobile:{line1:"Base44ã¯<wixLogo/>ã®ä¸€éƒ¨ã§ã™",line2:"世界ä¸ã§2å„„5000万人以上ã«ä¿¡é ¼ã•れã¦ã„ã¾ã™"}},d2={badge:{recommended:"ãŠã™ã™ã‚",popular:"人気",mostPopular:"一番人気",currentPlan:"ç¾åœ¨ã®ãƒ—ラン",discountOff:"{{discount}}オフ"},button:{processing:"処ç†ä¸...",notAvailable:"利用ä¸å¯",manageSubscription:"サブスクリプションを管ç†",managePlan:"プランを管ç†",currentPlan:"ç¾åœ¨ã®ãƒ—ラン",upgradePlan:"プランをアップグレード",upgradeTo:"{{planName}}ã«ã‚¢ãƒƒãƒ—グレード",downgradeTo:"{{planName}}ã«ãƒ€ã‚¦ãƒ³ã‚°ãƒ¬ãƒ¼ãƒ‰",downgradePlan:"プランをダウングレード",switchPlan:"プランを切り替ãˆã‚‹",subscribeTo:"{{planName}}ã«ç™»éŒ²",bookDemo:"デモを予約",getPlan:"{{planName}}ã‚’å–å¾—"},credits:{monthly:"月間クレジット",integration:"連æºã‚¯ãƒ¬ã‚¸ãƒƒãƒˆ",monthlyLower:"月間クレジット",integrationLower:"連æºã‚¯ãƒ¬ã‚¸ãƒƒãƒˆ",messageCredits:"メッセージクレジット",perMonth:"/月",sharedAcrossUsers:"無制é™ã®ãƒ¦ãƒ¼ã‚¶ãƒ¼ã§å…±æœ‰",messageShort:"メッセージ",integrationShort:"連æº"},features:{highlights:"プランã®ç‰¹å¾´:",allInBusinessPlus:"ビジãƒã‚¹ã®ã™ã¹ã¦ï¼‹:",allInBuilderPlus:"ビルダーã®ã™ã¹ã¦ï¼‹:",unlimitedAgents:"エージェント数無制é™"},free:{dailyCredits:"1æ—¥{{dailyCredits}}クレジット(最大{{monthlyMax}}/月)",integrationCredits:"{{amount}}連æºã‚¯ãƒ¬ã‚¸ãƒƒãƒˆ"},enterprise:{description:"エンタープライズグレードã®ã‚¬ãƒãƒŠãƒ³ã‚¹ã€ã‚¹ã‚±ãƒ¼ãƒ©ãƒ“リティã€ã‚µãƒãƒ¼ãƒˆã‚’<bold>カスタム料金</bold>モデルã¨ã‚«ã‚¹ã‚¿ãƒ クレジットé‡ã§ã”利用ã„ãŸã ã‘ã¾ã™ã€‚"}},u2={offTiers:"30%割引プラン",currentPlan:"ç¾åœ¨ã®ãƒ—ラン",popular:"人気",messageCredits:"メッセージクレジット",integrationCredits:"連æºã‚¯ãƒ¬ã‚¸ãƒƒãƒˆ",perMonth:"/月",placeholder:"ã‚¯ãƒ¬ã‚¸ãƒƒãƒˆã‚’é¸æŠž",footer:{cantFind:"é©åˆ‡ãªãƒ—ランãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“ã‹ï¼Ÿ",contactUs:"ãŠå•ã„åˆã‚ã›"}},p2={button:{cancel:"ã‚ャンセル",confirmUpgrade:"アップグレードを確èª",confirmDowngrade:"ダウングレードを確èª",confirmSwitch:"切り替ãˆã‚’確èª",processing:"処ç†ä¸...",continue:"ç¶šã‘ã‚‹"},upgrade:{title:"サブスクリプションã®ã‚¢ãƒƒãƒ—グレードを確èª",upgradeDescription:"{{planName}}プランã«<price/>ã§ã‚¢ãƒƒãƒ—グレードã—よã†ã¨ã—ã¦ã„ã¾ã™ã€‚サブスクリプションã¯ã™ãã«æ›´æ–°ã•れã€ç¾åœ¨ã®è«‹æ±‚ã‚µã‚¤ã‚¯ãƒ«ã®æ®‹ã‚Šã®æŒ‰åˆ†é‡‘é¡ãŒè«‹æ±‚ã•れã¾ã™ã€‚",upgradeDescriptionYearly:"{{planName}}年間プランã«<price/>ã§ã‚¢ãƒƒãƒ—グレードã—よã†ã¨ã—ã¦ã„ã¾ã™ã€‚サブスクリプションã¯ã™ãã«æ›´æ–°ã•れã€ç¾åœ¨ã®è«‹æ±‚ã‚µã‚¤ã‚¯ãƒ«ã®æ®‹ã‚Šã®æŒ‰åˆ†é‡‘é¡ãŒè«‹æ±‚ã•れã¾ã™ã€‚",upgradeDescriptionShort:"{{planName}}プランã«<price/>ã§ã‚¢ãƒƒãƒ—グレードã—よã†ã¨ã—ã¦ã„ã¾ã™ã€‚サブスクリプションã¯ã™ãã«æ›´æ–°ã•ã‚Œã€æŒ‰åˆ†é‡‘é¡ãŒè«‹æ±‚ã•れã¾ã™ã€‚"},downgrade:{title:"サブスクリプションã®ãƒ€ã‚¦ãƒ³ã‚°ãƒ¬ãƒ¼ãƒ‰ã‚’確èª",description:"{{planName}}プランã«{{price}}/月ã§ãƒ€ã‚¦ãƒ³ã‚°ãƒ¬ãƒ¼ãƒ‰ã—ã¾ã™ã€‚ã“ã®å¤‰æ›´ã¯ç¾åœ¨ã®è«‹æ±‚サイクルã®çµ‚äº†æ™‚ã«æœ‰åйã«ãªã‚Šã¾ã™ã€‚"},switch:{title:"プランを切り替ãˆã‚‹",switchDescription:"{{planName}}プランã«åˆ‡ã‚Šæ›¿ãˆã‚‹ã¨ã€åˆ©ç”¨å¯èƒ½ãªæ©Ÿèƒ½ãŒæ›´æ–°ã•ã‚Œã€æœˆé–“制é™ãŒ<bold>メッセージクレジット{{messageCredits}}ã€é€£æºã‚¯ãƒ¬ã‚¸ãƒƒãƒˆ{{integrationCredits}}</bold>ã«å¤‰æ›´ã•れã¾ã™ã€‚",nextBillingDate:"ã“れらã®å¤‰æ›´ã¯{{date}}ã€æ¬¡ã®è«‹æ±‚サイクルã®é–‹å§‹æ™‚ã«æœ‰åйã«ãªã‚Šã¾ã™ã€‚",nextBillingCycle:"ã“れらã®å¤‰æ›´ã¯æ¬¡ã®è«‹æ±‚サイクルã®é–‹å§‹æ™‚ã«æœ‰åйã«ãªã‚Šã¾ã™ã€‚"},manageSubscription:{title:"サブスクリプションを管ç†",description:"{{planName}}サブスクリプションã®ç®¡ç†æ–¹æ³•ã‚’é¸æŠžã—ã¦ãã ã•ã„。",upgradeToYearly:"年間プランã«ã‚¢ãƒƒãƒ—グレード",upgradeToYearlySavings:"節約ã—ã¦ç„¡æ–™ãƒ‰ãƒ¡ã‚¤ãƒ³ï¼‹25クレジットをシェア",upgradeToYearlySavingsStarter:"節約ã—ã¦25クレジットをシェア",managePayments:"支払ã„管ç†",managePaymentsDescription:"æ”¯æ‰•ã„æ–¹æ³•ã®æ›´æ–°ã€è«‹æ±‚書ã®ç¢ºèªãªã©",managePaymentsDescriptionAlt:"æ”¯æ‰•ã„æ–¹æ³•ã®æ›´æ–°ã€è«‹æ±‚書ã®ç¢ºèªãªã©"},upgradeToYearly:{titleV1:"サブスクリプションã®ã‚¢ãƒƒãƒ—グレードを確èª",titleV2:"プランをアップグレード",descriptionV2:"アップグレード後ã€ç¾åœ¨ã®ãƒ—ãƒ©ãƒ³ã®æ®‹ã‚ŠæœŸé–“ã«å¿œã˜ãŸæŒ‰åˆ†é‡‘é¡ãŒè«‹æ±‚ã•れã¾ã™ã€‚次ã®è«‹æ±‚æ—¥ã‹ã‚‰ã€{{price}} × 12ヶ月ã®ãƒ—ラン全é¡ãŒè«‹æ±‚ã•れã¾ã™ã€‚",benefitsTitle:"🎠年間特典",freeDomain:"1å¹´é–“ã®ç„¡æ–™ãƒ‰ãƒ¡ã‚¤ãƒ³",shareCredits:"å‹é”ã¨25クレジットをシェア",betterValue:"年間料金ã§ã‚ˆã‚ŠãŠå¾—ã«"}},m2={title:"よãã‚る質å•",whatIsBase44:{question:"Base44ã¨ã¯ä½•ã§ã™ã‹ï¼Ÿ",answer:{description:"Base44ã¯ã€ã‚³ãƒ¼ãƒ‡ã‚£ãƒ³ã‚°ãªã—ã§ã‚«ã‚¹ã‚¿ãƒ ソフトウェアアプリケーションを構築ã§ãã‚‹AIパワードプラットフォームã§ã™ã€‚自然言語処ç†ã‚’使用ã—ã¦è¦ä»¶ã‚’ç†è§£ã—ã€èª¬æ˜Žã«åŸºã¥ã„ã¦æ©Ÿèƒ½çš„ãªã‚½ãƒ•トウェアを生æˆã—ã¾ã™ã€‚",accessibility:"ç§ãŸã¡ã®ãƒ—ラットフォームã¯ã€æŠ€è¡“çš„ã§ãªã„ユーザーã«ã‚‚使ã„ã‚„ã™ãè¨è¨ˆã•れã¦ãŠã‚Šã€AIã¨ã®ã‚·ãƒ³ãƒ—ルãªä¼šè©±ã‚’通ã˜ã¦å¼·åŠ›ãªã‚¢ãƒ—リケーションを作æˆã§ãã¾ã™ã€‚"}},freePlan:{question:"無料プランã«ã¯ä½•ãŒå«ã¾ã‚Œã¦ã„ã¾ã™ã‹ï¼Ÿ",answer:{allowances:"無料プランã§ã¯ã€1æ—¥5ä»¶ã®ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã¨æœˆé–“åˆè¨ˆ25ä»¶ã®ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ãŒåˆ©ç”¨ã§ãã¾ã™ã€‚ã¾ãŸã€èªè¨¼ã€ãƒ‡ãƒ¼ã‚¿ãƒ™ãƒ¼ã‚¹ã€åˆ†æžãªã©ã®ã•ã¾ã–ã¾ãªã‚¤ãƒ³ãƒ†ã‚°ãƒ¬ãƒ¼ã‚·ãƒ§ãƒ³ã‚’試ã™ãŸã‚ã®100インテグレーションクレジットも付与ã•れã¾ã™ã€‚",coreAccess:"無料プランã§ã¯ã€ã™ã¹ã¦ã®ã‚³ã‚¢ã‚¤ãƒ³ãƒ†ã‚°ãƒ¬ãƒ¼ã‚·ãƒ§ãƒ³ã‚¿ã‚¤ãƒ—ã«ã‚¢ã‚¯ã‚»ã‚¹ã§ãã€ãƒ¦ãƒ¼ã‚¶ãƒ¼èªè¨¼ã‚„データストレージãªã©ã‚’å«ã‚€å®Œå…¨ã«æ©Ÿèƒ½ã™ã‚‹ã‚¢ãƒ—ãƒªã‚±ãƒ¼ã‚·ãƒ§ãƒ³ã‚’ç„¡æ–™ã§æ§‹ç¯‰ã§ãã¾ã™ã€‚"}},integrationCredits:{question:"インテグレーションクレジットã¨ã¯ä½•ã§ã™ã‹ï¼Ÿ",answer:{definition:"インテグレーションクレジットã¯ã€ã‚¢ãƒ—リケーション内ã§Base44ã®ã•ã¾ã–ã¾ãªã‚¤ãƒ³ãƒ†ã‚°ãƒ¬ãƒ¼ã‚·ãƒ§ãƒ³ã«ã‚¢ã‚¯ã‚»ã‚¹ã™ã‚‹ãŸã‚ã«ä½¿ç”¨ã•れã¾ã™ã€‚",capabilities:"ã“れらã®ã‚¤ãƒ³ãƒ†ã‚°ãƒ¬ãƒ¼ã‚·ãƒ§ãƒ³ã«ã‚ˆã‚Šã€LLMã€ãƒ•ァイルアップãƒãƒ¼ãƒ‰ã€ç”»åƒç†è§£ã€ç”»åƒç”Ÿæˆã€ãƒ¡ãƒ¼ãƒ«é€ä¿¡ã€SMSé€ä¿¡ã€ãƒ‡ãƒ¼ã‚¿ãƒ™ãƒ¼ã‚¹ã‚¯ã‚¨ãƒªãªã©ã€ã‚¢ãƒ—ãƒªã®æ©Ÿèƒ½ãŒå¼·åŒ–ã•れã¾ã™ã€‚プランã®ã‚¤ãƒ³ãƒ†ã‚°ãƒ¬ãƒ¼ã‚·ãƒ§ãƒ³ã‚¯ãƒ¬ã‚¸ãƒƒãƒˆæ•°ã«ã‚ˆã£ã¦ã€1ヶ月ã«ã“れらã®ãƒªã‚¯ã‚¨ã‚¹ãƒˆã‚’ã©ã‚Œã ã‘行ãˆã‚‹ã‹ãŒæ±ºã¾ã‚Šã¾ã™ã€‚",expiration:"未使用ã®ã‚¯ãƒ¬ã‚¸ãƒƒãƒˆã¯ã€æœˆæ¬¡è«‹æ±‚サイクルã®çµ‚了時(リセット日)ã«å¤±åйã—ã¾ã™ã€‚",learnMore:"クレジットã®ä½¿ç”¨æ–¹æ³•ã«ã¤ã„ã¦ã€è©³ã—ãã¯ãƒŠãƒ¬ãƒƒã‚¸ãƒ™ãƒ¼ã‚¹ã‚’ã”覧ãã ã•ã„。"}},appTypes:{question:"Base44ã§ã©ã®ã‚ˆã†ãªã‚¢ãƒ—リケーションを構築ã§ãã¾ã™ã‹ï¼Ÿ",answer:{examples:"Base44ã¯æ±Žç”¨æ€§ãŒé«˜ãã€å®Œå…¨ã«æ©Ÿèƒ½ã™ã‚‹SaaS製å“ã€ãƒãƒƒã‚¯ã‚ªãƒ•ィスツールã€å€‹äººç”Ÿç”£æ€§ã‚¢ãƒ—リã€é¡§å®¢ãƒãƒ¼ã‚¿ãƒ«ã€ãƒ“ジãƒã‚¹ãƒ—ãƒã‚»ã‚¹è‡ªå‹•化ツールãªã©ã€å¹…広ã„ã‚¢ãƒ—ãƒªã‚±ãƒ¼ã‚·ãƒ§ãƒ³ã®æ§‹ç¯‰ã«ä½¿ç”¨ã§ãã¾ã™ã€‚",prototyping:"ã¾ãŸã€ãƒ©ãƒ”ッドプãƒãƒˆã‚¿ã‚¤ãƒ”ングやMVPã®ä½œæˆã«ã‚‚使用ã§ãã€é«˜ä¾¡ãªé–‹ç™ºãƒªã‚½ãƒ¼ã‚¹ã«æŠ•資ã™ã‚‹ã“ã¨ãªãã‚¢ã‚¤ãƒ‡ã‚¢ã‚’ç´ æ—©ãæ¤œè¨¼ã§ãã¾ã™ã€‚"}},ownership:{question:"Base44ã§ä½œæˆã—ãŸã‚¢ãƒ—ãƒªã‚±ãƒ¼ã‚·ãƒ§ãƒ³ã®æ‰€æœ‰æ¨©ã¯èª°ã«ã‚りã¾ã™ã‹ï¼Ÿ",answer:{yourProperty:"ã‚ãªãŸã¨Base44ã®é–“ã§ã¯ã€ãƒ—ラットフォームを通ã˜ã¦ç”Ÿæˆã•れãŸã™ã¹ã¦ã®ã‚¢ãƒ—リケーションã¨ã‚³ãƒ³ãƒ†ãƒ³ãƒ„ã¯ã‚ãªãŸã®è²¡ç”£ã¨ã¿ãªã•れã¾ã™ã€‚Base44ã¯ã‚ãªãŸãŒä½œæˆã—ãŸã‚‚ã®ã«å¯¾ã—ã¦æ‰€æœ‰æ¨©ã‚’主張ã—ã¾ã›ã‚“。",intellectualProperty:"ã‚ãªãŸã®çŸ¥çš„財産ã¯ã‚ãªãŸã®ã‚‚ã®ã§ã‚ã‚Šã€æ³•律ã§èªã‚られる範囲ã§ç”Ÿæˆã•れãŸã‚¢ãƒ—リケーションを自由ã«ä½¿ç”¨ã€å¤‰æ›´ã€é…布ã€ã¾ãŸã¯è²©å£²ã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚"}},deployment:{question:"Base44ã®ã‚¢ãƒ—リケーションã¯ã©ã®ã‚ˆã†ã«ãƒ‡ãƒ—ãƒã‚¤ã•れã¾ã™ã‹ï¼Ÿ",answer:{instantAccess:"Base44ã§ã¯ã€ãƒ‡ãƒ—ãƒã‚¤ã¯éžå¸¸ã«ç°¡å˜ã§ã™ã€‚アプリケーションã¯ä½œæˆå¾Œã™ãã«ä½¿ç”¨å¯èƒ½ã«ãªã‚Šã€å…±æœ‰ã§ãã¾ã™ã€‚アプリã®URLを使用ã—ã¦ä»–ã®äººã¨å…±æœ‰ã™ã‚‹ã ã‘ã§ã™ã€‚",noHosting:"別途ホスティングやデプãƒã‚¤æ‰‹é †ã¯ä¸è¦ã§ã€ã‚¢ãƒ—リケーションをã™ãã«èµ·å‹•ã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚"}},planLimits:{question:"プランã®åˆ¶é™ã«é”ã—ãŸå ´åˆã¯ã©ã†ãªã‚Šã¾ã™ã‹ï¼Ÿ",answer:{limitations:"1æ—¥ã®ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸åˆ¶é™ã«é”ã—ãŸå ´åˆã€ç¿Œæ—¥ã¾ã§å¾…ã¤å¿…è¦ãŒã‚りã¾ã™ã€‚月間制é™ã«é”ã—ãŸå ´åˆã€æ¬¡ã®è«‹æ±‚サイクルãŒå§‹ã¾ã‚‹ã¾ã§è¿½åŠ ã®ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã‚’é€ä¿¡ã—ãŸã‚Šã€ã‚¤ãƒ³ãƒ†ã‚°ãƒ¬ãƒ¼ã‚·ãƒ§ãƒ³ãƒªã‚¯ã‚¨ã‚¹ãƒˆã‚’行ã†ã“ã¨ãŒã§ããªããªã‚Šã¾ã™ã€‚",upgradeOption:"アプリã®é–‹ç™ºã¨ä½¿ç”¨ã®ä¸æ–ã‚’é¿ã‘ã‚‹ãŸã‚ã«ã€è«‹æ±‚ダッシュボードã‹ã‚‰ã„ã¤ã§ã‚‚制é™ãŒå¢—åŠ ã—ãŸä¸Šä½ãƒ—ランã«ã‚¢ãƒƒãƒ—グレードã§ãã¾ã™ã€‚"}}},g2={pendingChange:{title:"ä¿ç•™ä¸ã®ã‚µãƒ–スクリプション変更",message:"ç¾åœ¨ã®è«‹æ±‚サイクルã®çµ‚了時ã«{{tierName}}プランã¸ã®ã‚µãƒ–スクリプション変更ãŒäºˆå®šã•れã¦ã„ã¾ã™ã€‚",subMessage:"注æ„: サブスクリプションをã‚ャンセルã™ã‚‹ã«ã¯ã€ã¾ãšã“ã®å¤‰æ›´ã‚’ã‚ャンセルã—ã¦ã‹ã‚‰ã€ã€Œæ”¯æ‰•ã„管ç†ã€ã‚’使用ã—ã¦ã‚ャンセルã—ã¦ãã ã•ã„。",cancelChange:"変更をã‚ャンセル",cancelling:"ã‚ャンセルä¸..."},cancellation:{title:"サブスクリプションã®ã‚ャンセルãŒäºˆå®šã•れã¦ã„ã¾ã™",message:"サブスクリプションã¯{{endDate}}ã«çµ‚了ã—ã¾ã™ã€‚ãれã¾ã§ã¯ã™ã¹ã¦ã®æ©Ÿèƒ½ã«å®Œå…¨ã«ã‚¢ã‚¯ã‚»ã‚¹ã§ãã¾ã™ã€‚",subMessage:"サブスクリプションを継続ã—ã¾ã™ã‹ï¼Ÿãƒ¯ãƒ³ã‚¯ãƒªãƒƒã‚¯ã§å†é–‹ã§ãã¾ã™ã€‚",managePayments:"支払ã„管ç†",processing:"処ç†ä¸..."}},h2={currentPlan:"ç¾åœ¨ã®ãƒ—ランã¯{{displayName}}ã€",withCredits:"{{messageCredits}}メッセージクレジットã¨{{integrationCredits}}インテグレーションクレジット付ã。"},f2={title:"Base44ã®ç‰¹å…¸:",responsiveVisualEditor:"レスãƒãƒ³ã‚·ãƒ–ビジュアルエディター",builtInBackend:"組ã¿è¾¼ã¿ãƒãƒƒã‚¯ã‚¨ãƒ³ãƒ‰",userManagement:"ユーザー管ç†"},v2={title:"ã‚µãƒ–ã‚¹ã‚¯ãƒªãƒ—ã‚·ãƒ§ãƒ³ã®æ”¯æ‰•ã„ãŒå»¶æ»žã—ã¦ã„ã¾ã™",tryAgain:"å†è©¦è¡Œ",trying:"試行ä¸...",updatePaymentMethod:"æ”¯æ‰•ã„æ–¹æ³•ã‚’æ›´æ–°",description:"å‰å›žã®æ”¯æ‰•ã„ãŒå‡¦ç†ã•れã¾ã›ã‚“ã§ã—ãŸã€‚å†è©¦è¡Œã™ã‚‹ã‹ã€æ”¯æ‰•ã„æ–¹æ³•ã‚’æ›´æ–°ã—ã¦ã€ãƒ—ランã¸ã®å®Œå…¨ãªã‚¢ã‚¯ã‚»ã‚¹ã‚’復元ã—ã¦ãã ã•ã„。"},b2={error:"エラー",success:"æˆåŠŸ",checkoutError:"ãƒã‚§ãƒƒã‚¯ã‚¢ã‚¦ãƒˆã‚»ãƒƒã‚·ãƒ§ãƒ³ã®ä½œæˆã«å¤±æ•—ã—ã¾ã—ãŸã€‚後ã§ã‚‚ã†ä¸€åº¦ãŠè©¦ã—ãã ã•ã„。",subscriptionUpdated:"ã‚µãƒ–ã‚¹ã‚¯ãƒªãƒ—ã‚·ãƒ§ãƒ³ãŒæ›´æ–°ã•れã¾ã—ãŸ",downgradeScheduled:"請求サイクルã®çµ‚了時ã«ã‚µãƒ–スクリプションã®ãƒ€ã‚¦ãƒ³ã‚°ãƒ¬ãƒ¼ãƒ‰ãŒäºˆå®šã•れã¾ã—ãŸã€‚",upgradeSuccess:"ã‚µãƒ–ã‚¹ã‚¯ãƒªãƒ—ã‚·ãƒ§ãƒ³ãŒæ£å¸¸ã«ã‚¢ãƒƒãƒ—グレードã•れã¾ã—ãŸã€‚変更ã¯ã¾ã‚‚ãªãåæ˜ ã•れã¾ã™ã€‚",updateError:"ã‚µãƒ–ã‚¹ã‚¯ãƒªãƒ—ã‚·ãƒ§ãƒ³ã®æ›´æ–°ã«å¤±æ•—ã—ã¾ã—ãŸã€‚後ã§ã‚‚ã†ä¸€åº¦ãŠè©¦ã—ãã ã•ã„。",portalError:"請求ãƒãƒ¼ã‚¿ãƒ«ã‚’é–‹ã‘ã¾ã›ã‚“ã§ã—ãŸã€‚後ã§ã‚‚ã†ä¸€åº¦ãŠè©¦ã—ãã ã•ã„。",scheduleCancelSuccess:"ã‚µãƒ–ã‚¹ã‚¯ãƒªãƒ—ã‚·ãƒ§ãƒ³ã‚¹ã‚±ã‚¸ãƒ¥ãƒ¼ãƒ«ãŒæ£å¸¸ã«ã‚ャンセルã•れã¾ã—ãŸ",scheduleCancelError:"サブスクリプションスケジュールã®ã‚ャンセルã«å¤±æ•—ã—ã¾ã—ãŸã€‚後ã§ã‚‚ã†ä¸€åº¦ãŠè©¦ã—ãã ã•ã„。",paymentPortalError:"支払ã„管ç†ã‚’é–‹ã‘ã¾ã›ã‚“ã§ã—ãŸã€‚ã‚‚ã†ä¸€åº¦ãŠè©¦ã—ãã ã•ã„。"},y2={loadError:"ワークスペースã®è«‹æ±‚æƒ…å ±ã‚’èªã¿è¾¼ã‚ã¾ã›ã‚“ã§ã—ãŸ",loadErrorAlert:"ワークスペースã®è«‹æ±‚æƒ…å ±ã‚’èªã¿è¾¼ã‚ã¾ã›ã‚“ã§ã—ãŸã€‚後ã§ã‚‚ã†ä¸€åº¦ãŠè©¦ã—ãã ã•ã„。",seatTypePlan:"{{seatType}}プラン",currentPlanContact:"ç¾åœ¨{{seatType}}プランをã”利用ä¸ã§ã™ã€‚変更ã™ã‚‹ã«ã¯ã€ãƒ¯ãƒ¼ã‚¯ã‚¹ãƒšãƒ¼ã‚¹ã®{{adminType}}ã«ãŠå•ã„åˆã‚ã›ãã ã•ã„。",workspaceOwner:"ワークスペースオーナー:",workspaceAdmin:"ワークスペース管ç†è€…:",viewerAccess:"閲覧者アクセス",viewerAccessDescription:"ã“ã®ãƒ¯ãƒ¼ã‚¯ã‚¹ãƒšãƒ¼ã‚¹ã§ã¯ç¾åœ¨é–²è¦§è€…アクセスã§ã™ã€‚フルアクセスã®ã‚·ãƒ¼ãƒˆã‚’å–å¾—ã™ã‚‹ã«ã¯ã€ãƒ¯ãƒ¼ã‚¯ã‚¹ãƒšãƒ¼ã‚¹ã®{{adminType}}ã«ãŠå•ã„åˆã‚ã›ãã ã•ã„。",adminAccessMessage:"<strong>管ç†è€…アクセス:</strong> <a>ワークスペースダッシュボード</a>ã§ã‚·ãƒ¼ãƒˆã€è«‹æ±‚ã€ãƒãƒ¼ãƒ メンãƒãƒ¼ã‚’管ç†ã§ãã¾ã™ã€‚",adminTypes:{owner:"オーナー",administrator:"管ç†è€…"}},k2={loadError:"ãƒ¯ãƒ¼ã‚¯ã‚¹ãƒšãƒ¼ã‚¹æƒ…å ±ã‚’èªã¿è¾¼ã‚ã¾ã›ã‚“ã§ã—ãŸã€‚後ã§ã‚‚ã†ä¸€åº¦ãŠè©¦ã—ãã ã•ã„。",workspacePlan:"ワークスペースプラン:",renews:"æ›´æ–°æ—¥:",workspaceOwner:"ワークスペースオーナー",contactOwner:"請求ã®å¤‰æ›´ã‚„サブスクリプションã«é–¢ã™ã‚‹è³ªå•ã¯ã€ãƒ¯ãƒ¼ã‚¯ã‚¹ãƒšãƒ¼ã‚¹ã‚ªãƒ¼ãƒŠãƒ¼ã«ãŠå•ã„åˆã‚ã›ãã ã•ã„。",ownerLabel:"ワークスペースオーナー:",adminAccessMessage:"<strong>管ç†è€…アクセス:</strong> <a>ワークスペースメンãƒãƒ¼</a>ページã§ãƒ¡ãƒ³ãƒãƒ¼ã‚’管ç†ã§ãã¾ã™ã€‚",billingManagedByOwner:"請求ã¯ãƒ¯ãƒ¼ã‚¯ã‚¹ãƒšãƒ¼ã‚¹ã‚ªãƒ¼ãƒŠãƒ¼ãŒç®¡ç†ã—ã¦ã„ã¾ã™ã€‚請求ã«é–¢ã™ã‚‹è³ªå•ã¯ã€ä¸Šè¨˜ã®ã‚ªãƒ¼ãƒŠãƒ¼ã«ãŠå•ã„åˆã‚ã›ãã ã•ã„。",roles:{owner:{title:"オーナー",description:"ワークスペースã®è«‹æ±‚ã€è¨å®šã€ãƒ¡ãƒ³ãƒãƒ¼ç®¡ç†ã¸ã®å®Œå…¨ãªã‚¢ã‚¯ã‚»ã‚¹æ¨©ã€‚"},admin:{title:"管ç†è€…",description:"ワークスペースã®è¨å®šã¨ãƒ¡ãƒ³ãƒãƒ¼ã‚’管ç†ã§ãã¾ã™ãŒã€è«‹æ±‚ã¯å¤‰æ›´ã§ãã¾ã›ã‚“。"},editor:{title:"エディター",description:"ã“ã®ãƒ¯ãƒ¼ã‚¯ã‚¹ãƒšãƒ¼ã‚¹å†…ã§ã‚¢ãƒ—リを作æˆãƒ»ç·¨é›†ã§ãã¾ã™ã€‚"},viewer:{title:"閲覧者",description:"ã“ã®ãƒ¯ãƒ¼ã‚¯ã‚¹ãƒšãƒ¼ã‚¹ã®ã‚¢ãƒ—リをèªã¿å–り専用ã§é–²è¦§ã§ãã¾ã™ã€‚"},member:{title:"メンãƒãƒ¼",description:"ワークスペースアプリã«ã‚¢ã‚¯ã‚»ã‚¹ã§ãã‚‹ãƒãƒ¼ãƒ メンãƒãƒ¼ã€‚"},guest:{title:"ゲスト",description:"ã“ã®ãƒ¯ãƒ¼ã‚¯ã‚¹ãƒšãƒ¼ã‚¹ã®ç‰¹å®šã®ã‚¢ãƒ—リã«ã‚¢ã‚¯ã‚»ã‚¹ã§ãる外部コラボレーター。"}}},w2={title:"ã‚»ã‚ュリティã¨ã‚³ãƒ³ãƒ—ライアンス",iso:{title:"ISO/IEC 27001",subtitle:"ISO/IECã‚»ã‚ュリティマãƒã‚¸ãƒ¡ãƒ³ãƒˆ"},soc2:{title:"SOC 2 Type II",subtitle:"サービス組織å‘ã‘SOC"},gdpr:{title:"GDPR",subtitle:"データä¿è·ãŠã‚ˆã³ãƒ—ライãƒã‚·ãƒ¼è¦åˆ¶"}},A2={title:"Base44 エンタープライズ",subtitle:"å¤§è¦æ¨¡ãªçµ„ç¹”ãŒã€ãƒãƒ¼ãƒ ã«æœ€é©ãªã‚½ãƒªãƒ¥ãƒ¼ã‚·ãƒ§ãƒ³ã‚’安全ã«ã‚¹ã‚±ãƒ¼ãƒ«ã—ã¦æ§‹ç¯‰ã§ãã‚‹ã‚ˆã†æ”¯æ´ã—ã¾ã™",contactUs:"ãŠå•ã„åˆã‚ã›",features:{onboarding:{title:"オンボーディングã¨ãƒˆãƒ¬ãƒ¼ãƒ‹ãƒ³ã‚°",description:"管ç†è€…ã¨ã‚¨ãƒ³ãƒ‰ãƒ¦ãƒ¼ã‚¶ãƒ¼ãŒè¿…速ã«å°Žå…¥ã§ãるよã†ã€ãƒ©ã‚¤ãƒ–トレーニングã¨ãƒªã‚½ãƒ¼ã‚¹ã‚’組ã¿åˆã‚ã›ãŸã€ã‚«ã‚¹ã‚¿ãƒžã‚¤ã‚ºã•れãŸã‚ªãƒ³ãƒœãƒ¼ãƒ‡ã‚£ãƒ³ã‚°ãƒ—ランをæä¾›ã—ã¾ã™ã€‚"},accountTeam:{title:"専任アカウントãƒãƒ¼ãƒ ",description:"å°‚ä»»ã®ã‚¢ã‚«ã‚¦ãƒ³ãƒˆãƒžãƒãƒ¼ã‚¸ãƒ£ãƒ¼ã¨ã‚½ãƒªãƒ¥ãƒ¼ã‚·ãƒ§ãƒ³ã‚¨ãƒ³ã‚¸ãƒ‹ã‚¢ãŒã€ç›´æŽ¥çš„ãªã‚¬ã‚¤ãƒ€ãƒ³ã‚¹ã€ã‚¨ã‚¹ã‚«ãƒ¬ãƒ¼ã‚·ãƒ§ãƒ³ã€ãƒãƒ¼ãƒ‰ãƒžãƒƒãƒ—ã®èª¿æ•´ã‚’æä¾›ã—ã¾ã™ã€‚"},prioritySupport:{title:"優先サãƒãƒ¼ãƒˆã€ä¿è¨¼ä»˜ã",description:"専用サãƒãƒ¼ãƒˆãƒãƒ£ãƒ³ãƒãƒ«ã‹ã‚‰ã€ä¿è¨¼ã•れãŸå„ªå…ˆã‚µãƒãƒ¼ãƒˆã¨å®šç¾©ã•れãŸå¿œç”時間をå—ã‘られã¾ã™ã€‚"},capabilities:{title:"ã‚¨ãƒ³ã‚¿ãƒ¼ãƒ—ãƒ©ã‚¤ã‚ºã‚°ãƒ¬ãƒ¼ãƒ‰ã®æ©Ÿèƒ½",description:"ã‚»ã‚ュリティã€ã‚³ãƒ³ãƒ—ライアンスã€ç®¡ç†ã€ç›£è¦–機能ã«ã‚ˆã‚Šã€å¤§è¦æ¨¡ã«å¿…è¦ãªã‚³ãƒ³ãƒˆãƒãƒ¼ãƒ«ã¨æŸ”軟性をæä¾›ã—ã¾ã™ã€‚"}}},S2={yearly:"å¹´é–“",monthly:"月é¡",yearlyInline:"å¹´é–“",monthlyInline:"月é¡",monthlyCredits:"月間クレジット",integrationCredits:"インテグレーションクレジット",priceSuffixYearly:" × 12ヶ月",priceSuffixMonthly:" / 毎月",off:"割引",save:"ãŠå¾—",discountBadge:"{{discount}}割引",saveBadge:"{{amount}}ãŠå¾—",planNotFound:"プラン料金ãŒåˆ©ç”¨ã§ãã¾ã›ã‚“。戻ã£ã¦ã‚‚ã†ä¸€åº¦ãŠè©¦ã—ãã ã•ã„。",upgradeDialogTitle:"サブスクリプションアップグレードã®ç¢ºèª",upgradeDialogDescription:"{{planName}}ãƒ—ãƒ©ãƒ³ã«æœˆé¡<price/>ã§ã‚¢ãƒƒãƒ—グレードã—よã†ã¨ã—ã¦ã„ã¾ã™ã€‚サブスクリプションã¯ã™ãã«æ›´æ–°ã•れã€ç¾åœ¨ã®è«‹æ±‚ã‚µã‚¤ã‚¯ãƒ«ã®æ®‹ã‚ŠæœŸé–“ã«å¯¾ã—ã¦æ—¥å‰²ã‚Šè¨ˆç®—ã§è«‹æ±‚ã•れã¾ã™ã€‚",noteMonthlyExcludes:"注:月é¡ã‚µãƒ–スクリプションã«ã¯ä»¥ä¸‹ãŒå«ã¾ã‚Œã¾ã›ã‚“:",whatsIncluded:"{{period}}プランã«å«ã¾ã‚Œã‚‹ã‚‚ã®",chooseYearly:"<yearlyLink>å¹´é–“</yearlyLink>ã‚µãƒ–ã‚¹ã‚¯ãƒªãƒ—ã‚·ãƒ§ãƒ³ã‚’é¸æŠžã—ã¦ã€ãƒ—レミアムプランを最大é™ã«æ´»ç”¨ã—ã¾ã—ょã†",yearlyFeatures:{discount:"特別割引ã§ãŠå¾—ã«",freeDomain:"1年間無料ドメイン",shareCredits:"å‹é”ã¨å…±æœ‰ã§ãã‚‹25クレジット"},monthlyFeatures:{discount:"特別割引ã¨ç¯€ç´„",freeDomain:"1年間無料ドメイン",shareCredits:"å‹é”ã¨å…±æœ‰ã§ãã‚‹25クレジット"},planNotAvailable:"プランã®ä¾¡æ ¼ãŒåˆ©ç”¨ã§ãã¾ã›ã‚“。もã†ä¸€åº¦ãŠè©¦ã—ãã ã•ã„。",goBack:"戻る",continueToCheckout:"ãŠæ”¯æ‰•ã„ã«é€²ã‚€",confirmSubscriptionUpgrade:"サブスクリプションアップグレードã®ç¢ºèª",upgradeDescription:"{{planName}}プランã«<strikethrough>{{originalPrice}}</strikethrough>{{price}}/月ã§ã‚¢ãƒƒãƒ—グレードã—よã†ã¨ã—ã¦ã„ã¾ã™ã€‚サブスクリプションã¯ã™ãã«æ›´æ–°ã•れã€ç¾åœ¨ã®è«‹æ±‚ã‚µã‚¤ã‚¯ãƒ«ã®æ®‹ã‚ŠæœŸé–“ã«å¯¾ã—ã¦æ—¥å‰²ã‚Šè¨ˆç®—ã§è«‹æ±‚ã•れã¾ã™ã€‚",cancel:"ã‚ャンセル",confirmUpgrade:"アップグレードを確èª",processing:"処ç†ä¸...",studentDiscountFootnote:"æœ¬ã‚ªãƒ•ã‚¡ãƒ¼ã¯æ–°è¦Starterプランã®åˆå¹´åº¦ï¼ˆ12ã‹æœˆï¼‰ã«é©ç”¨ã•れã¾ã™ã€‚1ユーザーã«ã¤ã1回é™ã‚Šã€‚解約後ã«å‰²å¼•ã‚’å†åº¦åˆ©ç”¨ã™ã‚‹ã“ã¨ã¯ã§ãã¾ã›ã‚“。"},C2={bannerTitle:"å¦ç”Ÿã¾ãŸã¯æ•™å“¡ã§ã™ã‹ï¼ŸStarterãƒ—ãƒ©ãƒ³ãŒæœ€å¤§{{percent}}%オフ",bannerSubtitle:"大å¦ã®ãƒ¡ãƒ¼ãƒ«ã‚¢ãƒ‰ãƒ¬ã‚¹ã‚’確èªã—ã¦å‰²å¼•ä¾¡æ ¼ã‚’ã”利用ãã ã•ã„",verifiedWith:"{{email}}ã§ç¢ºèªæ¸ˆã¿ - 最大{{percent}}%オフ",starterPlan:"Starterプラン",active:"有効",dialogTitle:"å¦ç”Ÿå‰²å¼•",surveyTitle:"ã‚ãªãŸã«ã¤ã„ã¦æ•™ãˆã¦ãã ã•ã„",alreadyActiveDesc:"å¦ç”Ÿå‰²å¼•ã¯ã™ã§ã«æœ‰åйã§ã™ã€‚",emailStepDesc:"大å¦ã®ãƒ¡ãƒ¼ãƒ«ã‚¢ãƒ‰ãƒ¬ã‚¹ã‚’確èªã—ã¦å¦ç”Ÿä¾¡æ ¼ã‚’ã”利用ãã ã•ã„。",codeStepDesc:"{{email}}ã«6æ¡ã®ã‚³ãƒ¼ãƒ‰ã‚’é€ä¿¡ã—ã¾ã—ãŸ",surveyStepDesc:"確èªã‚’完了ã™ã‚‹ãŸã‚ã«ã„ãã¤ã‹ã®ç°¡å˜ãªè³ªå•ã«ãŠç”ãˆãã ã•ã„。",benefitDiscount:"最大{{percent}}%オフ",benefitDiscountDetail:"Starterプラン",benefitAccess:"フルアクセス",benefitAccessDetail:"ã™ã¹ã¦ã®Starter機能",benefitClaimOnce:"1回é™ã‚Š",benefitClaimOnceDetail:"Starterã§ã„ã¤ã§ã‚‚使用å¯èƒ½",alreadyApplied:"å¦ç”Ÿå‰²å¼•ã¯ã™ã§ã«é©ç”¨ã•れã¦ã„ã¾ã™",alreadyAppliedDesc:"{{email}}ã§ç¢ºèªæ¸ˆã¿ã€‚å‰²å¼•ä¾¡æ ¼ã¯ä¸Šè¨˜ã®å¯¾è±¡ãƒ—ランã«è¡¨ç¤ºã•れã¦ã„ã¾ã™ã€‚",gotIt:"了解",emailPlaceholder:"ã‚ãªãŸ@大å¦.edu",emailHint:".eduã€.ac.ukã€.ac.ilãŠã‚ˆã³ãã®ä»–ã®å¤§å¦ãƒ‰ãƒ¡ã‚¤ãƒ³ã‚’å—ã‘付ã‘ã¦ã„ã¾ã™ã€‚",sending:"é€ä¿¡ä¸...",sendCode:"確èªã‚³ãƒ¼ãƒ‰ã‚’é€ä¿¡",codePlaceholder:"6æ¡ã®ã‚³ãƒ¼ãƒ‰ã‚’入力",verifying:"確èªä¸...",verifyCode:"コードを確èª",changeEmail:"メールアドレスを変更",resendCooldown:"コードをå†é€ä¿¡ï¼ˆ{{seconds}}秒)",resendCode:"コードをå†é€ä¿¡",role:"役割",student:"å¦ç”Ÿ",teacher:"教員",intendedUseLabel:"Base44ã‚’ã©ã®ã‚ˆã†ã«ä½¿ç”¨ã™ã‚‹äºˆå®šã§ã™ã‹ï¼Ÿ",intendedUsePlaceholder:"例:授æ¥ãƒ—ãƒã‚¸ã‚§ã‚¯ãƒˆã€ç ”究ツールã€è«–æ–‡...",fieldOfStudy:"専攻分野ã¯ä½•ã§ã™ã‹ï¼Ÿ",fieldOfTeaching:"担当教科ã¯ä½•ã§ã™ã‹ï¼Ÿ",selectField:"å°‚æ”»åˆ†é‡Žã‚’é¸æŠž...",searchFields:"分野を検索...",other:"ãã®ä»–",specifyField:"具体的ã«å…¥åŠ›ã—ã¦ãã ã•ã„...",graduationDate:"å’æ¥äºˆå®šæ—¥",month:"月",year:"å¹´",activating:"有効化ä¸...",verifyingEmail:"メール確èªä¸...",activateDiscount:"割引を有効化",errorNoEmail:"大å¦ã®ãƒ¡ãƒ¼ãƒ«ã‚¢ãƒ‰ãƒ¬ã‚¹ã‚’入力ã—ã¦ãã ã•ã„。",errorInvalidEmail:"有効ãªãƒ¡ãƒ¼ãƒ«ã‚¢ãƒ‰ãƒ¬ã‚¹ã‚’入力ã—ã¦ãã ã•ã„。",errorSendFailed:"確èªã‚³ãƒ¼ãƒ‰ã®é€ä¿¡ã«å¤±æ•—ã—ã¾ã—ãŸã€‚ã‚‚ã†ä¸€åº¦ãŠè©¦ã—ãã ã•ã„。",errorEmailAlreadyClaimed:"ã“ã®å¤§å¦ã®ãƒ¡ãƒ¼ãƒ«ã‚¢ãƒ‰ãƒ¬ã‚¹ã¯æ—¢ã«åˆ¥ã®ã‚¢ã‚«ã‚¦ãƒ³ãƒˆã«ç´ã¥ã‘られã¦ã„ã¾ã™ã€‚",errorNoCode:"メールã«å±Šã„ãŸ6æ¡ã®ã‚³ãƒ¼ãƒ‰ã‚’入力ã—ã¦ãã ã•ã„。",errorInvalidCode:"無効ã¾ãŸã¯æœŸé™åˆ‡ã‚Œã®ã‚³ãƒ¼ãƒ‰ã§ã™ã€‚ã‚‚ã†ä¸€åº¦ãŠè©¦ã—ãã ã•ã„。",errorNoIntendedUse:"Base44ã®ä½¿ç”¨ç›®çš„ã‚’æ•™ãˆã¦ãã ã•ã„。",errorNoField:"å°‚æ”»åˆ†é‡Žã‚’é¸æŠžã—ã¦ãã ã•ã„。",errorNoFieldOther:"専攻分野を入力ã—ã¦ãã ã•ã„。",errorNoGraduation:"å’æ¥äºˆå®šæ—¥ã‚’é¸æŠžã—ã¦ãã ã•ã„。",toastActivatedTitle:"å¦ç”Ÿå‰²å¼•ãŒæœ‰åŠ¹åŒ–ã•れã¾ã—ãŸ",toastActivatedDesc:"å¦ç”Ÿä¾¡æ ¼ãŒå¯¾è±¡ãƒ—ランã«é©ç”¨ã•れã¾ã—ãŸã€‚上ã«ã‚¹ã‚¯ãƒãƒ¼ãƒ«ã—ã¦æ›´æ–°ã•れãŸä¾¡æ ¼ã‚’ã”確èªãã ã•ã„。",errorActivateFailed:"å‰²å¼•ã®æœ‰åŠ¹åŒ–ã«å¤±æ•—ã—ã¾ã—ãŸã€‚ã‚‚ã†ä¸€åº¦ãŠè©¦ã—ãã ã•ã„。",toastResentTitle:"コードをå†é€ä¿¡ã—ã¾ã—ãŸ",toastResentDesc:"æ–°ã—ã„確èªã‚³ãƒ¼ãƒ‰ãŒãƒ¡ãƒ¼ãƒ«ã«é€ä¿¡ã•れã¾ã—ãŸã€‚",errorResendFailed:"コードã®å†é€ä¿¡ã«å¤±æ•—ã—ã¾ã—ãŸã€‚ã—ã°ã‚‰ãå¾…ã£ã¦ã‹ã‚‰ã‚‚ã†ä¸€åº¦ãŠè©¦ã—ãã ã•ã„。"},D2="ç¾åœ¨ã®ãƒ—ランã¯ã‚®ãƒ•トカードã§è³¼å…¥ã•れã¾ã—ãŸã€‚ギフトカードã®ã‚¯ãƒ¬ã‚¸ãƒƒãƒˆã¯ã‚¢ãƒƒãƒ—グレード時ã«å¼•ãç¶™ãŒã‚Œã¾ã›ã‚“ — 日割り料金ãŒè«‹æ±‚ã•れã¾ã™ã€‚",T2={title:"購入完了",redirecting:"{{seconds}}秒後ã«ã‚¢ãƒ—ãƒªã«æˆ»ã‚Šã¾ã™...",button:"ã‚¢ãƒ—ãƒªã«æˆ»ã‚‹"},E2={modal:i2,certificates:r2,features:o2,borderTag:s2,header:l2,messageLabel:c2,card:d2,dropdown:u2,dialog:p2,faq:m2,notices:g2,manageSubscription:h2,benefits:f2,overduePayment:v2,toasts:b2,workspaceBilling:y2,workspaceRoles:k2,security:w2,enterprise:A2,periodSelector:S2,studentDiscount:C2,upgradeGiftCardWarning:D2,returnToApp:T2},P2="å‹é”を招待ã—ã¦ã‚¯ãƒ¬ã‚¸ãƒƒãƒˆã‚’ç²å¾—",_2="å‹é”を招待ã—ã¦<br/>クレジットをç²å¾—",x2="招待ã—ã¦ã‚¯ãƒ¬ã‚¸ãƒƒãƒˆã‚’ç²å¾—",I2="ã‚ãªãŸã®ãƒªãƒ³ã‚¯ã‚’共有ã—ã¦ã€å‹é”ãŒæœ€åˆã®ã‚¢ãƒ—リを公開ã™ã‚‹ã¨ {{credits}} クレジットをç²å¾—ã§ãã¾ã™",R2={title:"ç´ æ™´ã‚‰ã—ã„ï¼æœ€å¤§æ‹›å¾…æ•°ã«é”ã—ã¾ã—ãŸ",description:"最大{{maxReferrals}}人ã®å‹é”を招待ã§ãã¾ã™",extra:"(ã•らã«{{extra}}äººè¿½åŠ ã—ã¦ã‚‚クレジットã¯ç²å¾—ã§ãã¾ã›ã‚“)"},z2={tryAgain:"ã‚‚ã†ä¸€åº¦è©¦ã™",copied:"クリップボードã«ã‚³ãƒ”ーã—ã¾ã—ãŸï¼",copyButton:"コピー",copiedButton:"コピー済ã¿"},M2={title:"仕組ã¿",shareLink:"ユニークãªç´¹ä»‹ãƒªãƒ³ã‚¯ã‚’å‹é”ã¨ã‚·ã‚§ã‚¢ã™ã‚‹",signupBonus:"å‹é”ãŒã‚µã‚¤ãƒ³ã‚¢ãƒƒãƒ—ã™ã‚‹ã¨<bold> {{credits}} クレジット</bold>もらãˆã¾ã™",publishReward:"å‹é”ãŒæœ€åˆã®ã‚¢ãƒ—リを公開ã™ã‚‹ã¨<bold> {{credits}} クレジット</bold>もらãˆã¾ã™"},N2="ã‚ãªãŸã®ç´¹ä»‹ ({{current}}/{{max}})",F2={registered:"登録済ã¿",earned:"ç²å¾—済ã¿"},L2={back:"戻る",close:"é–‰ã˜ã‚‹",srTitle:"紹介プãƒã‚°ãƒ©ãƒ ",baseDayBadge:"Base44 Day",creditsCount:"{{credits}} クレジット",earnCredits:"{{credits}} クレジットをç²å¾—",termsAndConditions:"利用è¦ç´„",termsDescription:"紹介プãƒã‚°ãƒ©ãƒ ã®åˆ©ç”¨è¦ç´„"},j2={title:"利用è¦ç´„",eligibility:{title:"è³‡æ ¼",newUsersOnly:"ã“ã®ç´¹ä»‹ã‚ªãƒ•ァーã«å‚åŠ ã§ãã‚‹ã®ã¯æ–°è¦ãƒ¦ãƒ¼ã‚¶ãƒ¼ã®ã¿ã§ã™ã€‚æ—¢å˜ã‚¢ã‚«ã‚¦ãƒ³ãƒˆã¯å¯¾è±¡å¤–ã§ã™ã€‚",shareResponsibly:"紹介リンクã¯è²¬ä»»ã‚’æŒã£ã¦å…±æœ‰ã—ã¦ãã ã•ã„。無関係ã¾ãŸã¯ã‚¹ãƒ‘ム的ãªå ´æ‰€ã¸ã®æŠ•稿ã¯ã€ãƒ—ãƒã‚°ãƒ©ãƒ ã‹ã‚‰ã®é™¤å¤–ã«ã¤ãªãŒã‚‹å¯èƒ½æ€§ãŒã‚りã¾ã™ã€‚"},credits:{title:"紹介クレジット",earnOnPublish:"紹介ã—ãŸå‹é”ãŒæœ€åˆã®ã‚¢ãƒ—リを公開ã™ã‚‹ã¨ {{credits}} クレジットをç²å¾—",bonusOnSignup:"紹介ã•れãŸå‹é”ã¯ç™»éŒ²æ™‚ã« {{credits}} ボーナスクレジットをå—ã‘å–ã‚‹",maxPerAccount:"1アカウントã‚ãŸã‚Šæœ€å¤§5å›žã®æˆåŠŸã—ãŸç´¹ä»‹",noCashValue:"クレジットã«ç¾é‡‘価値ã¯ãªãã€è²æ¸¡ã‚‚ã§ãã¾ã›ã‚“"},restrictions:{title:"制é™äº‹é …",voidFraudulent:"Base44ã¯ä¸æ£ãªç´¹ä»‹ã‚’無効ã«ã™ã‚‹æ¨©åˆ©ã‚’ç•™ä¿ã—ã¾ã™",nonTransferable:"紹介コードã¯è²æ¸¡ä¸å¯ã§ã™"},footer:"Base44ã¯ã„ã¤ã§ã‚‚本紹介プãƒã‚°ãƒ©ãƒ を変更ã¾ãŸã¯çµ‚了ã™ã‚‹æ¨©åˆ©ã‚’ç•™ä¿ã—ã¾ã™ã€‚変更ã¯ãƒ—ラットフォームを通ã˜ã¦é€šçŸ¥ã•れã¾ã™ã€‚"},O2={title:P2,titleDesktop:_2,titleMobile:x2,subtitle:I2,maxReached:R2,link:z2,howItWorks:M2,yourReferrals:N2,status:F2,dialog:L2,terms:j2},B2={title:"スãƒãƒƒãƒˆãƒ©ã‚¤ãƒˆ",subtitle:"Base44ã§ä½œã‚‰ã‚ŒãŸå„ªã‚ŒãŸã‚¢ãƒ—リã¨ã‚¦ã‚§ãƒ–サイトを探索ã—ã¾ã—ょã†",loading:"スãƒãƒƒãƒˆãƒ©ã‚¤ãƒˆã‚’èªã¿è¾¼ã¿ä¸â€¦",errorMessage:"スãƒãƒƒãƒˆãƒ©ã‚¤ãƒˆã‚’èªã¿è¾¼ã‚ã¾ã›ã‚“ã§ã—ãŸã€‚後ã§ã‚‚ã†ä¸€åº¦ãŠè©¦ã—ãã ã•ã„。",empty:"スãƒãƒƒãƒˆãƒ©ã‚¤ãƒˆã‚¢ãƒ—リã¯ã¾ã ã‚りã¾ã›ã‚“。"},U2={title:"エラー",description:"スãƒãƒƒãƒˆãƒ©ã‚¤ãƒˆã‚¢ãƒ—リã®èªã¿è¾¼ã¿ã«å¤±æ•—ã—ã¾ã—ãŸã€‚"},q2={label:"本日ã®ã‚¹ãƒãƒƒãƒˆãƒ©ã‚¤ãƒˆ",byCreator:"{{creator}} 作",screenshotAlt:"{{appName}}ã®ã‚¹ã‚¯ãƒªãƒ¼ãƒ³ã‚·ãƒ§ãƒƒãƒˆ",logoAlt:"{{appName}}ã®ãƒã‚´"},V2={"beautifully-designed":"美ã—ã„デザイン","loved-by-the-community":"コミュニティã§äººæ°—",saas:"SaaS",education:"教育","e-commerce":"Eコマース",websites:"ウェブサイト"},$2={screenshotAlt:"{{appName}}ã®ã‚¹ã‚¯ãƒªãƒ¼ãƒ³ã‚·ãƒ§ãƒƒãƒˆ",logoAlt:"{{appName}}ã®ãƒã‚´",viewDetailsLabel:"詳細を見る",viewDetailsAriaLabel:"{{appName}}ã®è©³ç´°ã‚’見る"},W2={backButton:"スãƒãƒƒãƒˆãƒ©ã‚¤ãƒˆ",byCreator:"{{creator}} 作",iframeTitle:"{{appName}}ã®ãƒ—レビュー",previewNotAvailable:"プレビューã¯åˆ©ç”¨ã§ãã¾ã›ã‚“"},G2={ariaLabel:"スãƒãƒƒãƒˆãƒ©ã‚¤ãƒˆã«ã‚¢ãƒ—リを申請",heading:"ã‚ãªãŸã®ã‚¢ãƒ—リをã“ã“ã«æŽ²è¼‰ã—ã¾ã›ã‚“ã‹ï¼Ÿ",description:"Base44ã§ä½œã£ãŸã‚‚ã®ã‚’見ã›ã¦ãã ã•ã„。スãƒãƒƒãƒˆãƒ©ã‚¤ãƒˆã«ç”³è«‹ã—ã¦ã‚³ãƒŸãƒ¥ãƒ‹ãƒ†ã‚£ã«ã‚¤ãƒ³ã‚¹ãƒ”レーションを与ãˆã¾ã—ょã†ã€‚",buttonText:"アプリを申請ã™ã‚‹"},H2={title:"スãƒãƒƒãƒˆãƒ©ã‚¤ãƒˆã«ã‚¢ãƒ—リを申請",selectAppSubtitle:"スãƒãƒƒãƒˆãƒ©ã‚¤ãƒˆãƒšãƒ¼ã‚¸ã«æŽ¨è–¦ã™ã‚‹ã‚¢ãƒ—リをé¸ã‚“ã§ãã ã•ã„。",detailsSubtitle:"ãªãœã‚ãªãŸã®ã‚¢ãƒ—リãŒã‚¹ãƒãƒƒãƒˆãƒ©ã‚¤ãƒˆãƒšãƒ¼ã‚¸ã«æŽ²è¼‰ã•れるã¹ãã‹æ•™ãˆã¦ãã ã•ã„。",back:"戻る",cancel:"ã‚ャンセル",next:"次ã¸",searchPlaceholder:"アプリを検索...",aboutLabel:"ã“ã®ã‚¢ãƒ—リã«ã¤ã„ã¦",aboutPlaceholder:"ã‚ãªãŸã®ã‚¢ãƒ—リã«ã¤ã„ã¦é¢ç™½ã„ã“ã¨ã‚’æ•™ãˆã¦ãã ã•ㄠ– ç‰¹åˆ¥ãªæ©Ÿèƒ½ã€ã‚¹ãƒžãƒ¼ãƒˆãªå·¥å¤«ã€ã¾ãŸã¯ã‚³ãƒŸãƒ¥ãƒ‹ãƒ†ã‚£ãŒå–œã‚“ã§ç™ºè¦‹ã™ã‚‹ã‚ˆã†ãªã“ã¨",screenshotLabel:"スクリーンショット<optional>(任æ„)</optional>",screenshotHint:"PNGã€JPGã€ã¾ãŸã¯WebP — 最å°800×450pxã€æœ€å¤§2MB",submit:"申請ã™ã‚‹",submitting:"申請ä¸â€¦",submitError:"スãƒãƒƒãƒˆãƒ©ã‚¤ãƒˆã®ç”³è«‹ã«å¤±æ•—ã—ã¾ã—ãŸã€‚",successAlreadyInSpotlight:"ã™ã§ã«ã‚¹ãƒãƒƒãƒˆãƒ©ã‚¤ãƒˆã«æŽ²è¼‰ã•れã¦ã„ã¾ã™",successRequestReceived:"申請をå—ã‘付ã‘ã¾ã—ãŸ",successDescription:'"{{appName}}"をスãƒãƒƒãƒˆãƒ©ã‚¤ãƒˆã®ãŸã‚ã«ç¢ºèªã—ã¾ã™ã€‚è¿‘æ—¥ä¸ã«ã”連絡ã—ã¾ã™ã€‚'},Y2={viewApp:"アプリを見る",share:"ã‚·ã‚§ã‚¢",upvote:"ã„ã„ã",alreadyUpvoted:"ã„ã„ãæ¸ˆã¿",thankYouForVote:"投票ã‚りãŒã¨ã†ã”ã–ã„ã¾ã™ï¼",voteError:"投票を登録ã§ãã¾ã›ã‚“ã§ã—ãŸ",voteErrorDescription:"後ã§ã‚‚ã†ä¸€åº¦ãŠè©¦ã—ãã ã•ã„。",linkShared:"リンクを共有ã—ã¾ã—ãŸ",linkCopied:"リンクをクリップボードã«ã‚³ãƒ”ーã—ã¾ã—ãŸ",shareError:"共有ã§ãã¾ã›ã‚“ã§ã—ãŸ"},K2={label:"ã”å˜çŸ¥ã§ã™ã‹ï¼Ÿ"},Z2={editedAgo:"{{timeAgo}}ã«æ›´æ–°",editedRecently:"最近更新ã—ã¾ã—ãŸ",noAppsFound:"アプリãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“",noAppsAvailable:"利用å¯èƒ½ãªã‚¢ãƒ—リãŒã‚りã¾ã›ã‚“",loadMore:"ã•らã«èªã¿è¾¼ã‚€",loading:"èªã¿è¾¼ã¿ä¸â€¦"},J2={page:B2,fetchError:U2,featured:q2,sections:V2,card:$2,detailModal:W2,submitBanner:G2,requestModal:H2,actions:Y2,didYouKnow:K2,appPicker:Z2},Q2={page:{title:"ヘルプ&サãƒãƒ¼ãƒˆ",subtitle:"BASE44ã§ç´ 晴らã—ã„アプリケーションを構築ã™ã‚‹ãŸã‚ã«å¿…è¦ãªã‚µãƒãƒ¼ãƒˆã‚’å—ã‘ã¾ã—ょã†"},getStarted:"å§‹ã‚ã‚‹",cards:{documentation:{title:"ドã‚ュメント",description:"Base44ã§ã®ãƒ“ルドã«é–¢ã™ã‚‹åŒ…括的ãªã‚¬ã‚¤ãƒ‰ã€ãƒãƒ¥ãƒ¼ãƒˆãƒªã‚¢ãƒ«ã€FAQã€ãƒ™ã‚¹ãƒˆãƒ—ラクティスを探索ã—ã¾ã—ょã†ã€‚"},discord:{title:"Discordコミュニティ",description:"仲間ã®ãƒ“ルダーã¨ç¹‹ãŒã‚Šã€ã‚¢ã‚¯ãƒ†ã‚£ãƒ–ãªã‚³ãƒŸãƒ¥ãƒ‹ãƒ†ã‚£ã‹ã‚‰å³åº§ã®ã‚µãƒãƒ¼ãƒˆã‚’å—ã‘ã¾ã—ょã†ã€‚"},supportTicket:{title:"サãƒãƒ¼ãƒˆãƒã‚±ãƒƒãƒˆã‚’é–‹ã",description:"詳細ãªã‚µãƒãƒ¼ãƒˆãƒã‚±ãƒƒãƒˆã‚’æå‡ºã—ã€å€‹åˆ¥ã®ã‚µãƒãƒ¼ãƒˆã‚’å—ã‘ã¾ã—ょã†ã€‚"}},appContext:{title:"アプリ固有ã®ã‚µãƒãƒ¼ãƒˆ",description:"サãƒãƒ¼ãƒˆãƒªã‚¯ã‚¨ã‚¹ãƒˆã¯ã‚¢ãƒ—リ <appId>{{appId}}</appId> ã«é–¢é€£ä»˜ã‘られã¾ã™"},quickActions:{title:"クイックアクション",subtitle:"サãƒãƒ¼ãƒˆä½“験を管ç†ã™ã‚‹",myTickets:{title:"マイサãƒãƒ¼ãƒˆãƒã‚±ãƒƒãƒˆ",description:"æ—¢å˜ã®ã‚µãƒãƒ¼ãƒˆãƒã‚±ãƒƒãƒˆã‚’確èªãƒ»ç®¡ç†ã™ã‚‹"},communityForum:{title:"コミュニティフォーラム",description:"æ–°ã—ãé–‹è¨ã•れãŸRedditコミュニティ"}}},X2={fallbackTitle:"サãƒãƒ¼ãƒˆä¼šè©±",appLink:"アプリ"},eK={title:"ç§ã®ã‚µãƒãƒ¼ãƒˆãƒã‚±ãƒƒãƒˆ",backToSupport:"サãƒãƒ¼ãƒˆã«æˆ»ã‚‹",showingTicketsForApp:"アプリã®ãƒã‚±ãƒƒãƒˆã‚’表示: <app>{{appId}}</app>",filteredByApp:"アプリã§ãƒ•ィルタリング: <app>{{appId}}</app>"},tK={title:"サãƒãƒ¼ãƒˆãƒã‚±ãƒƒãƒˆã‚’é€ä¿¡",titleResume:"サãƒãƒ¼ãƒˆãƒã‚±ãƒƒãƒˆã‚’é€ä¿¡ã™ã‚‹"},aK={helpMessage:"ã™ãã«ã‚µãƒãƒ¼ãƒˆãŒå¿…è¦ã§ã™ã‹ï¼Ÿ <normal>ã“ã¡ã‚‰ã®</normal><docsLink>ドã‚ュメント</docsLink><normal>ã‚’ã”確èªã„ãŸã ãã‹ã€ã“ã¡ã‚‰ã®</normal><discordLink>Discordコミュニティ</discordLink><normal>ã«ã”å‚åŠ ãã ã•ã„。</normal>"},nK={heading:"サãƒãƒ¼ãƒˆãƒªã‚¯ã‚¨ã‚¹ãƒˆã‚’ç¶šã‘ã¾ã™ã‹ï¼Ÿ",description:"以å‰ã«ã‚µãƒãƒ¼ãƒˆãƒã‚±ãƒƒãƒˆã®ä½œæˆã‚’é–‹å§‹ã—ã¾ã—ãŸã€‚",chooseHowToProceed:"ã©ã®ã‚ˆã†ã«é€²ã‚ã‚‹ã‹é¸æŠžã—ã¦ãã ã•ã„:",continueWhereLeftOff:"å‰å›žã®ç¶šãã‹ã‚‰",continueWhereLeftOffDesc:"以å‰ã®å…¥åŠ›å†…å®¹ã‚’å¾©å…ƒã—ã€å‰å›žã®ã‚¹ãƒ†ãƒƒãƒ—ã‹ã‚‰ç¶šã‘ã¾ã™ã€‚",startNewTicket:"æ–°ã—ã„ãƒã‚±ãƒƒãƒˆã‚’作æˆ",startNewTicketDesc:"下書ãã‚’ç ´æ£„ã—ã¦ã€æ–°ã—ã„サãƒãƒ¼ãƒˆãƒªã‚¯ã‚¨ã‚¹ãƒˆã‚’é–‹å§‹ã—ã¾ã™ã€‚",continue:"ç¶šã‘ã‚‹"},iK={tellUsAboutYourIssue:"å•題ã«ã¤ã„ã¦ãŠèžã‹ã›ãã ã•ã„",whatTypeOfIssue:"ã©ã®ã‚ˆã†ãªå•題ãŒç™ºç”Ÿã—ã¦ã„ã¾ã™ã‹ï¼Ÿ",selectApp:"å•題ã«é–¢é€£ã™ã‚‹ã‚¢ãƒ—ãƒªã‚’é¸æŠžã—ã¦ãã ã•ã„"},rK={instruction:"何をã—ã¦ã„ãŸã‹ã€ä½•ãŒå•題ã ã£ãŸã‹ã€å†ç¾æ–¹æ³•ã‚’ãŠçŸ¥ã‚‰ã›ãã ã•ã„。",descriptionLabel:"説明",descriptionPlaceholder:`例:
• 何をã—よã†ã¨ã—ã¦ã„ãŸã‹
• 代ã‚りã«ä½•ãŒèµ·ã“ã£ãŸã‹
• エラーメッセージ
• å†ç¾æ‰‹é †ï¼ˆé–¢é€£ã™ã‚‹å ´åˆï¼‰`,attachmentsLabel:"添付ファイル",viewApp:"アプリを表示",dragAndDropFiles:"ファイルをã“ã“ã«ãƒ‰ãƒ©ãƒƒã‚°ï¼†ãƒ‰ãƒãƒƒãƒ—",dropFilesHere:"ファイルをã“ã“ã«ãƒ‰ãƒãƒƒãƒ—",browseFiles:"ãƒ•ã‚¡ã‚¤ãƒ«ã‚’é¸æŠž",uploading:"アップãƒãƒ¼ãƒ‰ä¸...",unsupportedFileType:"ファイルタイプ「{{type}}ã€ã¯ã‚µãƒãƒ¼ãƒˆã•れã¦ã„ã¾ã›ã‚“。サãƒãƒ¼ãƒˆã•れã¦ã„るタイプ:jpgã€jpegã€pngã€pdf。",invalidFile:"無効ãªãƒ•ァイル",failedToUpload:"ファイルã®ã‚¢ãƒƒãƒ—ãƒãƒ¼ãƒ‰ã«å¤±æ•—ã—ã¾ã—ãŸ"},oK={analyzingIssue:"å•題を分æžä¸...",categoryFullDescription:"ãŠå®¢æ§˜ã®å•題ã¯ã“れらã®ã‚«ãƒ†ã‚´ãƒªã®ã„ãšã‚Œã‹ã«è©²å½“ã™ã‚‹ã‚ˆã†ã§ã™ã€‚<br/>最も当ã¦ã¯ã¾ã‚‹ã‚‚ã®ã‚’é¸æŠžã—ã¦ãã ã•ㄠ— é©åˆ‡ãªè§£æ±ºç–ã¸ã®ã”案内ã«å½¹ç«‹ã¡ã¾ã™ã€‚"},sK={authentication:"èªè¨¼",billing:"請求",bug_report:"ãƒã‚°å ±å‘Š",domain:"ドメイン",integrations_and_backend_functions:"インテグレーション&ãƒãƒƒã‚¯ã‚¨ãƒ³ãƒ‰",chat_issues:"ãƒãƒ£ãƒƒãƒˆã®å•題",security:"ã‚»ã‚ュリティ",social_post_bonus_credits:"ソーシャル投稿ボーナスクレジット",superagent:"スーパーエージェント",other:"ãã®ä»–"},lK={searchPlaceholder:"アプリを検索...",addAppLink:"ã‚¢ãƒ—ãƒªãƒªãƒ³ã‚¯ã‚’è¿½åŠ ",addAppLinkPlaceholder:"例:https://your-app-url.com ã¾ãŸã¯ https://yourapp.base44.app",invalidUrl:"http://ã¾ãŸã¯https://ã§å§‹ã¾ã‚‹æœ‰åйãªURLを入力ã—ã¦ãã ã•ã„",noAppsFound:"アプリãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“",noAppsAvailable:"利用å¯èƒ½ãªã‚¢ãƒ—リãŒã‚りã¾ã›ã‚“",loadingMore:"èªã¿è¾¼ã¿ä¸...",loadMore:"ã•らã«ã‚¢ãƒ—リをèªã¿è¾¼ã‚€",edited:"{{time}}ã«æ›´æ–°"},cK={loading:"会話をèªã¿è¾¼ã‚“ã§ã„ã¾ã™...",errorTitle:"会話ã®èªã¿è¾¼ã¿ã‚¨ãƒ©ãƒ¼",noConversationTitle:"会話ãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“",noConversationMessage:"ã“ã®ä¼šè©±ã¯å˜åœ¨ã—ãªã„ã‹ã€ã‚¢ã‚¯ã‚»ã‚¹æ¨©ãŒã‚りã¾ã›ã‚“。",tryAgain:"å†è©¦è¡Œ",ticketFallbackTitle:"サãƒãƒ¼ãƒˆãƒã‚±ãƒƒãƒˆ",categoryFallback:"一般",closeTicket:"ãƒã‚±ãƒƒãƒˆã‚’é–‰ã˜ã‚‹",closing:"é–‰ã˜ã¦ã„ã¾ã™...",aiAssistantInfo:"AIアシスタント・誤りãŒç”Ÿã˜ã‚‹å ´åˆãŒã‚りã¾ã™",talkToSpecialist:"サãƒãƒ¼ãƒˆã‚¹ãƒšã‚·ãƒ£ãƒªã‚¹ãƒˆã«ç›¸è«‡ã™ã‚‹",handledBySpecialist:"サãƒãƒ¼ãƒˆã‚¹ãƒšã‚·ãƒ£ãƒªã‚¹ãƒˆãŒå¯¾å¿œä¸",notifyWhenResponds:"サãƒãƒ¼ãƒˆãŒè¿”ä¿¡ã—ãŸã‚‰é€šçŸ¥ã™ã‚‹",ticketResolvedTitle:"ã“ã®ãƒã‚±ãƒƒãƒˆã¯è§£æ±ºæ¸ˆã¿ã§ã™",ticketResolvedMessage:"è¿½åŠ ã®ã‚µãƒãƒ¼ãƒˆãŒå¿…è¦ãªå ´åˆã¯æ–°ã—ã„ãƒã‚±ãƒƒãƒˆã‚’作æˆã—ã¦ãã ã•ã„",conversationClosed:"ã“ã®ä¼šè©±ã¯çµ‚了ã—ã¾ã—ãŸ",aiHandlingTicket:"AIエージェントãŒã“ã®ãƒã‚±ãƒƒãƒˆã‚’処ç†ä¸ã§ã™ã€‚手動ã§è¿”ä¿¡ã™ã‚‹ã«ã¯<bold>引ãç¶™ã</bold>をクリックã—ã¦ãã ã•ã„。",typeResponse:"返信を入力ã—ã¦ãã ã•ã„...",typeMessage:"メッセージを入力ã—ã¦ãã ã•ã„...",failedLoadConversation:"会話ã®èªã¿è¾¼ã¿ã«å¤±æ•—ã—ã¾ã—ãŸã€‚ã‚‚ã†ä¸€åº¦ãŠè©¦ã—ãã ã•ã„。",ticketAlreadyResolved:"ã“ã®ãƒã‚±ãƒƒãƒˆã¯è§£æ±ºæ¸ˆã¿ã§ã™ã€‚è¿½åŠ ã®ã‚µãƒãƒ¼ãƒˆãŒå¿…è¦ãªå ´åˆã¯æ–°ã—ã„ãƒã‚±ãƒƒãƒˆã‚’作æˆã—ã¦ãã ã•ã„。",failedCloseTicket:"ãƒã‚±ãƒƒãƒˆã‚’é–‰ã˜ã‚‹ã“ã¨ãŒã§ãã¾ã›ã‚“ã§ã—ãŸã€‚ã‚‚ã†ä¸€åº¦ãŠè©¦ã—ãã ã•ã„。",failedEscalate:"ãƒã‚±ãƒƒãƒˆã®ã‚¨ã‚¹ã‚«ãƒ¬ãƒ¼ã‚·ãƒ§ãƒ³ã«å¤±æ•—ã—ã¾ã—ãŸã€‚ã‚‚ã†ä¸€åº¦ãŠè©¦ã—ãã ã•ã„。",confirmCloseTicket:"ã“ã®ãƒã‚±ãƒƒãƒˆã‚’é–‰ã˜ã¾ã™ã‹ï¼Ÿè§£æ±ºæ¸ˆã¿ã¨ã—ã¦ãƒžãƒ¼ã‚¯ã•れã¾ã™ã€‚",premiumSupportTier:"プレミアムサãƒãƒ¼ãƒˆ",standardSupportTier:"スタンダードサãƒãƒ¼ãƒˆ",premiumSupportMessage:"オフラインサãƒãƒ¼ãƒˆã€48時間以内ã«å„ªå…ˆè¿”ä¿¡",standardSupportMessage:"オフラインサãƒãƒ¼ãƒˆã€48時間以内ã«è¿”ä¿¡",templates:{label:"クイックテンプレート",less:"é–‰ã˜ã‚‹"},draft:{title:"AIææ¡ˆã®è¿”ä¿¡",collapse:"折りãŸãŸã‚€",viewAll:"ã™ã¹ã¦è¡¨ç¤º",use:"使用"},escalateModal:{title:"人ã«ã‚ˆã‚‹ã‚µãƒãƒ¼ãƒˆã‚’リクエスト",description:"ãƒã‚±ãƒƒãƒˆã¯ã‚µãƒãƒ¼ãƒˆãƒãƒ¼ãƒ ã«è»¢é€ã•れã€å€‹åˆ¥ã®å¯¾å¿œã‚’å—ã‘ã¾ã™ã€‚",cancel:"ã‚ャンセル",requesting:"リクエストä¸...",requestButton:"人ã«ã‚ˆã‚‹ã‚µãƒãƒ¼ãƒˆã‚’リクエスト"}},dK={supportTeam:"サãƒãƒ¼ãƒˆãƒãƒ¼ãƒ ",attachedFile:"添付ファイル",translatedFrom:"{{language}}ã‹ã‚‰ç¿»è¨³",internalNote:"内部メモ",emptyTitle:"会話を始ã‚ã¾ã—ょã†",emptyMessage:"メッセージをé€ä¿¡ã—ã¦ã‚µãƒãƒ¼ãƒˆä¼šè©±ã‚’é–‹å§‹ã—ã¦ãã ã•ã„",translating:"翻訳ä¸...",showingTranslations:"翻訳を表示ä¸",translateToEnglish:"英語ã«ç¿»è¨³",confirmDeleteMessage:"ã“ã®ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã‚’削除ã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹ï¼Ÿ",failedDeleteMessage:"メッセージã®å‰Šé™¤ã«å¤±æ•—ã—ã¾ã—ãŸã€‚ã‚‚ã†ä¸€åº¦ãŠè©¦ã—ãã ã•ã„。",failedTranslate:"メッセージã®ç¿»è¨³ã«å¤±æ•—ã—ã¾ã—ãŸã€‚ã‚‚ã†ä¸€åº¦ãŠè©¦ã—ãã ã•ã„。",attachedContent:"添付コンテンツ",videoNotSupported:"ãŠä½¿ã„ã®ãƒ–ラウザã¯å‹•ç”»å†ç”Ÿã«å¯¾å¿œã—ã¦ã„ã¾ã›ã‚“。",noteBy:"{{name}} ã«ã‚ˆã‚‹",adminFallback:"管ç†è€…",events:{unknownActor:"誰ã‹",statusChange:"{{actor}} ãŒã‚¹ãƒ†ãƒ¼ã‚¿ã‚¹ã‚’ {{status}} ã«å¤‰æ›´ã—ã¾ã—ãŸ",unassigned:"{{actor}} ãŒå‰²ã‚Šå½“ã¦ã‚’解除ã—ã¾ã—ãŸ",assigned:"{{actor}} ㌠{{assignee}} ã«å‰²ã‚Šå½“ã¦ã¾ã—ãŸ",reassigned:"{{actor}} ㌠{{assignee}} ã«å†å‰²ã‚Šå½“ã¦ã—ã¾ã—ãŸ",escalated:"{{actor}} ãŒã‚¨ã‚¹ã‚«ãƒ¬ãƒ¼ã‚·ãƒ§ãƒ³ã—ã¾ã—ãŸ",removedEscalation:"{{actor}} ãŒã‚¨ã‚¹ã‚«ãƒ¬ãƒ¼ã‚·ãƒ§ãƒ³ã‚’解除ã—ã¾ã—ãŸ",categoryChange:"{{actor}} ãŒã‚«ãƒ†ã‚´ãƒªã‚’ {{category}} ã«å¤‰æ›´ã—ã¾ã—ãŸ",labelChangeAdded:"{{actor}} ㌠{{labels}} ã‚’è¿½åŠ ã—ã¾ã—ãŸ",labelChangeRemoved:"{{actor}} ㌠{{labels}} を削除ã—ã¾ã—ãŸ",labelChangeBoth:"{{actor}} ㌠{{added}} ã‚’è¿½åŠ ã—ã€{{removed}} を削除ã—ã¾ã—ãŸ",updated:"{{actor}} ãŒãƒã‚±ãƒƒãƒˆã‚’æ›´æ–°ã—ã¾ã—ãŸ",markedAbusive:"{{actor}} ãŒã‚³ãƒ³ãƒ†ãƒ³ãƒ„ã‚’ä¸é©åˆ‡ã¨ã—ã¦å ±å‘Šã—ã¾ã—ãŸ",clearedAbusive:"{{actor}} ãŒä¸é©åˆ‡ã‚³ãƒ³ãƒ†ãƒ³ãƒ„ã®å ±å‘Šã‚’解除ã—ã¾ã—ãŸ"}},uK={uploading:"アップãƒãƒ¼ãƒ‰ä¸...",uploadFiles:"ファイルをアップãƒãƒ¼ãƒ‰",fileTypeError:"è¿½åŠ ã®ãƒ•ァイルタイプã®ã‚µãƒãƒ¼ãƒˆã¯<link>feedback.base44.com</link>ã§ãƒªã‚¯ã‚¨ã‚¹ãƒˆã—ã¦ãã ã•ã„"},pK={open:"オープン",closed:"クãƒãƒ¼ã‚º",all:"ã™ã¹ã¦"},mK={open:"オープン",resolved:"解決済ã¿"},gK={noOpenTickets:"オープンãƒã‚±ãƒƒãƒˆãªã—",noClosedTickets:"クãƒãƒ¼ã‚ºãƒã‚±ãƒƒãƒˆãªã—",noTickets:"ãƒã‚±ãƒƒãƒˆãªã—",descriptionOpen:"ç¾åœ¨ã€ã‚ªãƒ¼ãƒ—ンãªã‚µãƒãƒ¼ãƒˆãƒã‚±ãƒƒãƒˆã¯ã‚りã¾ã›ã‚“。",descriptionClosed:"クãƒãƒ¼ã‚ºã•れãŸãƒã‚±ãƒƒãƒˆã¯è¦‹ã¤ã‹ã‚Šã¾ã›ã‚“。",descriptionAll:"ã¾ã サãƒãƒ¼ãƒˆãƒã‚±ãƒƒãƒˆã‚’æå‡ºã—ã¦ã„ã¾ã›ã‚“。"},hK={appLabel:"アプリ: {{appId}}",dateNotAvailable:"利用ä¸å¯"},fK={loadingTitle:"ãƒã‚±ãƒƒãƒˆã®èªã¿è¾¼ã¿ã‚¨ãƒ©ãƒ¼",loadingFailed:"サãƒãƒ¼ãƒˆãƒã‚±ãƒƒãƒˆã®èªã¿è¾¼ã¿ã«å¤±æ•—ã—ã¾ã—ãŸã€‚ã‚‚ã†ä¸€åº¦ãŠè©¦ã—ãã ã•ã„。",ticketLimitTitle:"ãƒã‚±ãƒƒãƒˆä¸Šé™ã«é”ã—ã¾ã—ãŸ",ticketLimitDescription:"èªã¿è¾¼ã¿å¯èƒ½ãªä»¶æ•°ã‚’è¶…ãˆã¦ã„ã¾ã™ã€‚最新ã®1000ä»¶ã®ã¿èªã¿è¾¼ã¾ã‚Œã¾ã—ãŸã€‚"},vK={free:"ç„¡æ–™"},bK={cancel:"ã‚ャンセル",back:"戻る",skip:"スã‚ップ",continue:"ç¶šã‘ã‚‹",submitting:"é€ä¿¡ä¸...",refresh:"æ›´æ–°",newTicket:"æ–°ã—ã„ãƒã‚±ãƒƒãƒˆ",createNewTicket:"æ–°ã—ã„ãƒã‚±ãƒƒãƒˆã‚’作æˆ",tryAgain:"å†è©¦è¡Œ",bannedAlert:"Base44サãƒãƒ¼ãƒˆã®åˆ©ç”¨è¦ç´„é•åã«ã‚ˆã‚Šã€Base44サãƒãƒ¼ãƒˆã¸ã®ã‚¢ã‚¯ã‚»ã‚¹ãŒåˆ¶é™ã•れã¾ã—ãŸã€‚詳細ã«ã¤ã„ã¦ã¯ã€ãŠé€ã‚Šã—ãŸãƒ¡ãƒ¼ãƒ«ã‚’ã”確èªãã ã•ã„。"},yK={descriptionRequired:"説明を入力ã—ã¦ãã ã•ã„",descriptionTooShort:"ã‚‚ã†å°‘ã—詳ã—ã入力ã—ã¦ãã ã•ã„。最低20æ–‡å—å¿…è¦ã§ã™ã€‚",appRequired:"å•題ãŒç™ºç”Ÿã—ã¦ã„ã‚‹ã‚¢ãƒ—ãƒªã‚’é¸æŠžã™ã‚‹ã‹ã€ãƒªãƒ³ã‚¯ã‚’è¿½åŠ ã—ã¦ãã ã•ã„。",submissionFailed:"サãƒãƒ¼ãƒˆãƒã‚±ãƒƒãƒˆã‚’é€ä¿¡ã§ãã¾ã›ã‚“ã§ã—ãŸã€‚ã‚‚ã†ä¸€åº¦ãŠè©¦ã—ãã ã•ã„。"},kK={dailyLimitReached:"1æ—¥ã®åˆ¶é™ã«é”ã—ã¾ã—ãŸ",somethingWentWrong:"å•題ãŒç™ºç”Ÿã—ã¾ã—ãŸ",dailyLimitMessage:"1æ—¥ã®ã‚µãƒãƒ¼ãƒˆä¼šè©±æ•°ã®ä¸Šé™ã«é”ã—ã¾ã—ãŸã€‚ç¾åœ¨ã®ãƒ—ランã§ã¯1æ—¥{{limit}}ä»¶ã¾ã§ä¼šè©±ã‚’作æˆã§ãã¾ã™ã€‚",tryAgain:"å†è©¦è¡Œ",cancel:"ã‚ャンセル",close:"é–‰ã˜ã‚‹"},wK={help:Q2,sidebar:X2,page:eK,modal:tK,footer:aK,resumeStep:nK,steps:iK,tellUsAboutYourIssue:rK,whatTypeOfIssue:oK,categories:sK,selectApp:lK,chat:cK,messages:dK,input:uK,tabs:pK,status:mK,emptyState:gK,ticketCard:hK,errors:fK,tiers:vK,actions:bK,validation:yK,submissionError:kK},AK={sectionTitle:"Configurações da conta",sectionDescription:"Gerencie suas preferências e configurações pessoais de conta.",heading:"Conta",email:{label:"E-mail",placeholder:"Nenhum e-mail definido"},fullName:{label:"Nome completo",placeholder:"Digite seu nome completo",profileHint:"É assim que você aparecerá no seu <profileLink>perfil</profileLink> público do Base44."},phoneNumber:{label:"Número de telefone",placeholder:"Digite seu número de telefone",smsConsent:"Ao inserir seu número de telefone, você concorda em receber notificações por SMS de nossa parte."},defaultAgents:{label:"Agentes padrão",toggleLabel:"Habilitar agentes para novos apps por padrão",description:"Quando habilitado, novos apps terão agentes habilitados automaticamente, permitindo que executem tarefas autônomas e usem ferramentas."},defaultTestData:{label:"Dados de teste padrão",toggleLabel:"Habilitar dados de teste para novos apps por padrão",description:"Quando habilitado, novos apps iniciam com dados de teste ativados para que você possa testar alterações com segurança sem afetar dados ao vivo.",upgradeRequired:"Este recurso requer o plano Builder ou superior.",seePlans:"Ver planos"},apiKey:{label:"Chave API",copyTitle:"Copiar chave API",copied:"Copiado!",regenerate:"Regenerar",regenerating:"Regenerando...",regenShort:"Regen.",regenShortLoading:"Regen...",description:"Sua chave API fornece acesso ao seu espaço de trabalho. Não a compartilhe com outras pessoas.",notGenerated:"Ainda não gerada — clique em Regenerar"},backofficeApiKey:{title:"Chave API do Backoffice",description:"Use esta chave para autenticar requisições programáticas ao serviço de backoffice. Ela não funciona no serviço de plataforma. Mantenha-a em segredo.",yourKey:"Sua chave API do backoffice",copySuccess:"Chave API copiada",copyError:"Falha ao copiar a chave API",regenSuccess:"Chave API do backoffice regenerada",regenError:"Falha ao regenerar: {{error}}",warning:"A regeneração invalida imediatamente a chave anterior. Clientes que a utilizam precisarão ser atualizados.",existsPlaceholder:"•••••••••••••••••• (chave existe — apenas o hash é armazenado; regenere para ver uma nova)",showOnceWarning:"Copie esta chave agora. É exibida apenas uma vez e não pode ser recuperada depois."},unsavedChanges:"Alterações não salvas",discard:"Descartar",save:"Salvar",saving:"Salvando...",saveSuccess:"Configurações da conta atualizadas com sucesso!",saveError:"Falha ao atualizar as configurações da conta: {{error}}",unknownError:"Erro desconhecido",apiKeyCopySuccess:"Chave API copiada para a área de transferência!",apiKeyCopyError:"Falha ao copiar a chave API",apiKeyRegenSuccess:"Chave API regenerada com sucesso!",apiKeyRegenError:"Falha ao regenerar a chave API: {{error}}"},SK={title:"Autenticação de dois fatores",description:"Adicione uma camada extra de proteção ao fazer login. Será solicitado um código a cada login.",twoFactorEnabled:"A autenticação de dois fatores está ativada.",statsLine:"{{used}}/{{total}} códigos de recuperação usados · {{devices}} dispositivos confiáveis",totp:{name:"Aplicativo de autenticação",description:"Use um aplicativo como Google Authenticator ou Duo para gerar códigos de login seguros.",setupTitle:"Configure seu aplicativo de autenticação",scanQr:"Escaneie o código QR com seu aplicativo de autenticação",cantScan:"Não consegue escanear o código? Digite-o manualmente:",enterCodeTitle:"Digite um código do seu aplicativo de autenticação",enterDigitCode:"Digite o código de 6 dÃgitos",codesRefresh:"Os códigos são atualizados a cada 30 segundos.",qrCodeAlt:"Código QR para configuração do aplicativo de autenticação",enabled:"Aplicativo de autenticação ativado",disabled:"Aplicativo de autenticação desativado"},sms:{name:"Mensagens de texto",description:"Receba códigos de login enviados para seu telefone por mensagem de texto.",enterPhone:"Digite seu número de telefone",phoneLabel:"Número de telefone",phonePlaceholder:"(555) 000-0000",verificationWillBeSent:"Um código de verificação será enviado para este número para confirmar que é seu.",verifyPhone:"Verificar seu número de telefone",codeSentTo:"Um código de 6 dÃgitos foi enviado para {{phone}}",standardRates:"Taxas padrão de mensagens e dados podem ser aplicadas.",invalidPhone:"Número de telefone inválido. Verifique o número e tente novamente.",enabled:"MFA por mensagem de texto ativado",disabled:"Mensagens de texto desativadas"},recovery:{saveTitle:"Salve seus códigos de recuperação",saveDescription:"Guarde estes códigos de recuperação em um local seguro. Você vai precisar deles caso perca o acesso ao seu telefone ou aplicativo de autenticação.",eachCodeOnce:"Cada código de recuperação pode ser usado apenas uma vez. Guarde-os em um local seguro e acessÃvel.",eachCodeOnceShort:"Cada código de recuperação pode ser usado apenas uma vez.",copyAll:"Copiar tudo",download:"Baixar",copied:"Copiado",enterRecoveryCode:"Digite o código de recuperação"},disable:{title:"Desativar autenticação de dois fatores",turnOff:"Desativar a autenticação de dois fatores?",turnOffDescription:"Para continuar, você precisará verificar com um código enviado para seu telefone ou um código de recuperação.",verifyWithPhone:"Verificar com um código enviado para seu telefone",verifyWithApp:"Digite um código do seu aplicativo de autenticação",enterRecoveryToDisable:"Digite um dos seus códigos de recuperação para desativar a autenticação de dois fatores.",useRecoveryCode:"Usar código de recuperação",verifyViaApp:"Verificar via aplicativo",verifyAndDisable:"Verificar e desativar"},regenerate:{title:"Regenerar códigos de recuperação",trustedDevicesCount_one:"{{count}} dispositivo confiável",trustedDevicesCount_other:"{{count}} dispositivos confiáveis",codesUsed:"{{used}}/{{total}} códigos de recuperação usados",descriptionChoose:"Escolha um método de verificação para regenerar seus códigos de recuperação. Isso invalidará todos os códigos existentes.",descriptionSms:"Enviaremos um código de verificação para seu telefone para confirmar.",descriptionSmsVerify:"Digite um código de verificação para regenerar seus códigos de recuperação. Isso invalidará todos os códigos existentes.",descriptionTotpVerify:"Digite um código de verificação para regenerar seus códigos de recuperação. Isso invalidará todos os códigos existentes.",verifyWithApp:"Digite um código do seu aplicativo de autenticação",verifyWithSms:"Verificar com um código enviado para seu telefone",smsMethodLabel:"Mensagem SMS",enterCodeLabel:"Digite o código de 6 dÃgitos",helperTotp:"Abra seu aplicativo de autenticação para obter o código",helperSms:"Digite o código enviado para seu telefone",verifyAndRegenerate:"Verificar e regenerar",enterCode:"Digite o código"},reauth:{title:"Verifique sua identidade",description:"Por segurança, confirme sua identidade antes de adicionar {{method}} como método de login.",actionTotp:"Digite o código de 6 dÃgitos do seu aplicativo de autenticação.",actionSms:"Digite o código enviado para {{phone}}."},common:{enable:"Ativar",enabled:"Ativado",cancel:"Cancelar",close:"Fechar",back:"Voltar",done:"ConcluÃdo",verify:"Verificar",sendCode:"Enviar código",regenerate:"Regenerar",regenerateRecoveryCodes:"Regenerar códigos de recuperação",disable:"Desativar",continue:"Continuar",fullCodeError:"Digite o código completo de 6 dÃgitos",fullRecoveryError:"Digite o código de recuperação completo",enterVerificationCode:"Digite um código de verificação",didntReceive:"Não recebeu um código?",resendIn:"Reenviar em {{seconds}}s",resend:"Reenviar",verificationSent:"Código de verificação enviado",failedToSetup:"Falha ao configurar o autenticador",failedToSendCode:"Falha ao enviar o código",failedToResend:"Falha ao reenviar",invalidCode:"Código inválido",lockedOut:"Muitas tentativas com falha. Tente novamente em {{minutes}} min.",lockedOutShort:"Temporariamente bloqueado ({{minutes}} min)"}},CK={section:{title:"Excluir conta",description:"Exclua sua conta junto com todos os dados, configurações e atividades associados.",accessNote:"Você terá acesso à sua conta por 1 semana após solicitar a exclusão.",deleteButton:"Excluir conta",enterpriseTooltip:"A exclusão de conta não está disponÃvel para usuários empresariais. Entre em contato com o administrador da sua organização."},pendingRequest:{willBeDeleted:"Sua conta, assinatura, aplicativos próprios e espaços de trabalho serão excluÃdos em <bold>{{daysRemaining}} dias</bold> ({{formattedEnd}}) e a exclusão será permanente a partir dessa data. Até então, você pode cancelar a exclusão.",processing:"A exclusão está sendo processada...",cancelButton:"Cancelar solicitação",renewalWarning:"Se sua assinatura estiver programada para renovar durante esses {{daysRemaining}} dias, a renovação ainda ocorrerá a menos que você cancele a assinatura manualmente antes da data de renovação"},toast:{submitSuccess:"Solicitação de exclusão enviada. Revisaremos e processaremos após o perÃodo de carência de 7 dias.",submitError:"Falha ao enviar a solicitação de exclusão. Por favor, tente novamente.",cancelSuccess:"Solicitação de exclusão cancelada com sucesso.",cancelError:"Falha ao cancelar a solicitação. Por favor, tente novamente.",preflightError:"Não foi possÃvel verificar o status da conta. Por favor, tente novamente."},dialog:{title:"Excluir sua conta",description:"Isso agendará sua conta e todos os dados associados para exclusão permanente.",whatWillBeDeleted:"O que será excluÃdo:",itemAccountProfile:"Sua conta e perfil",itemAllApps:"Todos os aplicativos que você criou",itemAllData:"Todos os dados armazenados nos seus aplicativos",itemUploadedFiles:"Arquivos e mÃdias enviados",gracePeriodNote:"Você terá 7 dias para cancelar esta solicitação. Depois disso, nossa equipe revisará e processará sua exclusão em breve.",subscriptionNote:"O cancelamento da assinatura é definitivo e sem reembolsos",cancelButton:"Cancelar",deleteButton:"Excluir conta"},subscriptions:{dialogTitle:"Cancele as assinaturas antes de excluir sua conta",warning:"Você ainda tem assinaturas ativas. Por favor, cancele-as primeiro.",listLabel:"Assinaturas ativas:",personalPlan:"Plano pessoal",planAndBilling:"Plano e cobrança",yearly:"anual",monthly:"mensal",cancelFirst:"Cancele todas as assinaturas acima, depois volte aqui para excluir sua conta.",closeButton:"Fechar",manageButton:"Gerenciar assinaturas"},workspaceOwner:{titleStep1:"Você possui espaços de trabalho",titleStep2:"Confirmar exclusão do espaço de trabalho",memberCount_one:"{{count}} membro",memberCount_other:"{{count}} membros",warningOwner_one:"Você atualmente possui o seguinte espaço de trabalho. Se continuar, todos os aplicativos neste espaço de trabalho serão excluÃdos permanentemente e todos os membros perderão o acesso.",warningOwner_other:"Você atualmente possui os seguintes espaços de trabalho. Se continuar, todos os aplicativos nestes espaços de trabalho serão excluÃdos permanentemente e todos os membros perderão o acesso.",leaveWorkspaces_one:"Você também sairá deste espaço de trabalho e perderá o acesso:",leaveWorkspaces_other:"Você também sairá destes espaços de trabalho e perderá o acesso:",confirmInstructions:"Digite o nome de cada espaço de trabalho abaixo para confirmar a exclusão. Esta ação é irreversÃvel.",typeToConfirm:'Digite <bold>"{{name}}"</bold> para confirmar',deleteAnyway:"Excluir mesmo assim",deleteAccount:"Excluir conta",cancel:"Cancelar"},memberInfo:{title_one:"Você sairá deste espaço de trabalho",title_other:"Você sairá destes espaços de trabalho",description_one:"Ao excluir sua conta, você será removido do seguinte espaço de trabalho. Você perderá o acesso a todos os aplicativos e dados do espaço de trabalho.",description_other:"Ao excluir sua conta, você será removido dos seguintes espaços de trabalho. Você perderá o acesso a todos os aplicativos e dados dos espaços de trabalho.",cancel:"Cancelar",continueWithDeletion:"Continuar com a exclusão"}},DK={title:"Conta do GitHub",addAccount:"Adicionar sua conta do GitHub",unlockWithBuilder:"Desbloqueie este recurso com o plano Builder.",loading:"Carregando...",connecting:"Conectando...",reconnect:"Reconectar",connectionLost:"A conexão com o GitHub foi perdida. Reconecte sua conta do GitHub para continuar.",connected:"Conectado",connectedDescription:"Sua conta do GitHub está conectada",disconnect:"Desconectar",tryAgain:"Tentar novamente",connectGitHub:"Conectar GitHub",disconnectDialog:{title:"Desconectar do GitHub?",accountDescription:"Desconectar sua conta do GitHub não afetará nenhum app conectado.<br/>Você só precisará reconectar sua conta se quiser conectar ou reconectar um repositório.",repoDescription:"Isso desconectará o app do repositório {{repoName}}.",repoDescriptionNoName:"Isso desconectará o app do repositório do GitHub.",repoDetail1:"Seu repositório do GitHub permanecerá sem alterações — não será excluÃdo nem removido.",repoDetail2:"Você pode continuar trabalhando no seu app como antes, mas o GitHub não será mais a fonte da verdade para o seu código e a sincronização bidirecional será desativada.",disconnectingProgress:"Desconectando… Isso pode levar alguns minutos.",cancel:"Cancelar",disconnect:"Desconectar",disconnecting:"Desconectando…"}},TK={title:"Google Drive",connected:"Conectado",connectedDescription:"Seu Google Drive está conectado",disconnectedDescription:"Conecte seu Google Drive para importar arquivos",connect:"Conectar",connecting:"Conectando...",disconnect:"Desconectar",disconnecting:"Desconectando...",loading:"Carregando...",connectTitle:"Conectar ao Google Drive",connectDescription:"Autorize o acesso para usar arquivos do Google Drive como contexto do chat de IA.",benefitImport:"Importe Documentos, Planilhas e Apresentações do seu Google Drive",benefitChoose:"Escolha quais arquivos usar a cada vez",benefitSecure:"O conteúdo selecionado é armazenado com segurança para uso no seu aplicativo",connectButton:"Conectar Google Drive",cancel:"Cancelar",privacyNote:"Apenas os arquivos que você selecionar serão acessados.",disconnectAnytime:"Você pode desconectar a qualquer momento nas configurações da conta."},EK={title:"Configurações do chat",sendMessageShortcut:"Atalho para enviar mensagem",insertNewLineShortcut:"Atalho para nova linha",soundPreferences:"Preferências de som",browserNotifications:"Notificações do navegador",notificationsHelpText:"Notificações ativas mas não as recebe? <docLink>Consultar a documentação</docLink>",notificationOptions:{onFirstPromptOnly:"Apenas no primeiro prompt",onEveryPromptCompletion:"A cada conclusão de prompt",disableNotificationSounds:"Desativar sons de notificação",disableBrowserNotifications:"Desativar notificações do navegador"}},PK={account:AK,mfa:SK,deleteAccount:CK,github:DK,googleDrive:TK,chatSettings:EK},_K={title:"Solicitar acesso a {{appName}}",subtitleDefault:"Solicite acesso ou mude para uma conta que já tenha permissão.",subtitleRequested:"Você será notificado por e-mail quando sua solicitação for aprovada.",requestAccess:"Solicitar acesso",requestSubmitted:"Solicitação enviada",loggedInAs:"Você está conectado como {{email}}",switchAccount:"Trocar conta",errorMessage:"Algo deu errado. Tente novamente ou mude para uma conta diferente.",tooManyAttempts:"Muitas tentativas. Tente novamente mais tarde.",backToLogin:"Voltar ao login"},xK={title:"Acesso restrito",subtitle:"Você deve ser membro deste espaço de trabalho para acessar o aplicativo."},IK={accessRequired:_K,workspaceRestricted:xK},RK={title:"Bem-vindo ao Base44",loginWithGoogle:"Entrar com Google",loginWithGithub:"Entrar com GitHub",loggingIn:"Entrando...",or:"Ou",emailLabel:"E-mail",emailPlaceholder:"Digite seu endereço de e-mail",edit:"Editar",lastUsed:"Último uso",ssoEnabled:"O SSO está habilitado para <strong>{{workspace}}</strong>",ssoClickBelow:"Clique abaixo para continuar com o login da sua organização",passwordLabel:"Senha",forgotPassword:"Esqueceu a senha?",passwordPlaceholder:"Digite sua senha",checkingAuth:"Verificando método de autenticação...",checking:"Verificando...",continue:"Continuar",continueWithSSO:"Continuar com {{provider}}",logIn:"Entrar",noAccount:"Não tem uma conta?",signUp:"Cadastre-se",verifyEmailFirst:"Por favor, verifique seu e-mail antes de entrar. Confira seu e-mail para o código de verificação.",resendVerificationCode:"Reenviar código de verificação",enterEmailFirst:"Por favor, digite seu endereço de e-mail primeiro",invalidEmail:"Por favor, digite um endereço de e-mail válido",ssoError:"Erro de configuração SSO. Por favor, tente novamente.",invalidCredentials:"E-mail ou senha inválidos",loginFailed:"Falha no login. Por favor, tente novamente.",failedResendVerification:"Falha ao reenviar código de verificação. Por favor, tente novamente.",passwordResetRequired:"Por razões de segurança, você deve redefinir sua senha antes de fazer login. Verifique seu e-mail para um link de redefinição.",resetLinkSent:"Um link de redefinição de senha foi enviado para seu e-mail.",resendResetLink:"Reenviar link de redefinição",failedResendResetLink:"Falha ao enviar o link de redefinição. Tente novamente.",termsAndPrivacy:"<terms>Termos de Serviço</terms> e <privacy>PolÃtica de Privacidade</privacy>."},zK={title:"Crie sua conta",agreeToTerms:'Ao clicar em "Cadastrar", você concorda com nossos <terms>Termos de Serviço</terms> e <privacy>PolÃtica de Privacidade</privacy>.',signUpWithGoogle:"Cadastrar com Google",signUpWithGithub:"Cadastrar com GitHub",signingUp:"Cadastrando...",creatingAccount:"Criando conta...",signUpButton:"Cadastrar",alreadyHaveAccount:"Já tem uma conta Base44?",logIn:"Entrar",validatingReferral:"Validando código de indicação...",invalidReferral:"Código de indicação inválido",youveBeenInvited:"Você foi convidado!",invitedToJoin:"<strong>{{name}}</strong> convidou você para o Base44",signUpFreeCredits:"Cadastre-se para ganhar 10 créditos gratuitos!",signUpBaseDayCredits:"Cadastre-se e ganhe 44 créditos grátis!",letsBuild:"Vamos construir algo incrÃvel juntos!",registrationFailed:"Falha no cadastro. Por favor, tente novamente.",failedValidateReferral:"Falha ao validar código de indicação",completeVerification:"Por favor, complete a verificação",weakPassword:"Senha fraca"},MK={title:"Redefinir sua senha",subtitle:"Digite o endereço de e-mail usado no cadastro e enviaremos um link para redefinir sua senha.",backToLogin:"Voltar ao login",loginEmail:"E-mail de login",emailPlaceholder:"ex.: nome@email.com",sending:"Enviando...",verifyEmail:"Verificar e-mail",invalidEmail:"Endereço de e-mail inválido",failedSendReset:"Falha ao enviar link de redefinição. Por favor, tente novamente."},NK={title:"Verifique seu e-mail",subtitle:"Enviamos instruções de redefinição de senha para <strong>{{email}}</strong>.",backToReset:"Voltar para redefinir senha",checkInfo:"Por favor, verifique seu e-mail para o link de redefinição de senha.",mayTakeMinutes:"Pode levar alguns minutos para chegar.",goToSignIn:"Ir para login",didntGetEmail:"Não recebeu o e-mail?",resending:"Reenviando...",resendEmail:"Reenviar e-mail",emailNotFound:"Endereço de e-mail não encontrado. Por favor, volte e tente novamente.",newResetSent:"Novo e-mail de redefinição de senha enviado. Por favor, verifique sua caixa de entrada.",failedResendEmail:"Falha ao reenviar e-mail. Por favor, tente novamente."},FK={title:"Definir nova senha",subtitle:"Digite sua nova senha para o Base44",newPasswordLabel:"Nova senha",newPasswordPlaceholder:"Digite sua nova senha",confirmPasswordLabel:"Confirmar nova senha",confirmPasswordPlaceholder:"Confirme sua nova senha",resetting:"Redefinindo...",resetButton:"Redefinir senha",backToLogIn:"Voltar ao login",invalidToken:"Token de redefinição inválido ou ausente. Por favor, solicite uma nova redefinição de senha.",passwordsMismatch:"As senhas não coincidem. Por favor, tente novamente.",weakPassword:"Por favor, crie uma senha de pelo menos força média.",resetSuccess:"Senha redefinida com sucesso! Redirecionando para o login...",resetSuccessLogin:"Senha redefinida com sucesso! Por favor, entre com sua nova senha.",failedReset:"Falha ao redefinir a senha. Por favor, tente novamente.",invalidOrExpiredToken:"Token de redefinição inválido ou expirado"},LK={verifyTitle:"Verifique sua identidade",verification:{chooseMethod:"Escolha um método de autenticação",authenticatorApp:"Aplicativo autenticador",smsMessage:"Mensagem SMS",recoveryCode:"Código de recuperação",continue:"Continuar",backToLogin:"Voltar ao login",chooseAnotherMethod:"Escolher outro método",verifyViaText:"Verificar por SMS",verifyViaApp:"Verificar pelo aplicativo autenticador",enterRecoveryCode:"Digite o código de recuperação",rememberDevice:"Lembrar este dispositivo por 30 dias",verifying:"Verificando...",verify:"Verificar",useRecoveryCode:"Usar um código de recuperação",sendingCodeTo:"Enviando código para {{phone}}…",enterCodeSentTo:"Digite o código enviado para {{phone}}",enterCodeFromApp:"Digite o código do seu aplicativo autenticador",yourPhone:"seu telefone",didntReceiveCode:"Não recebeu o código?",resendIn:"Reenviar em {{seconds}}s",resend:"Reenviar",enterCompleteRecoveryCode:"Por favor, digite o código de recuperação completo",enterCompleteCode:"Por favor, digite o código de 6 dÃgitos completo",verificationFailed:"Falha na verificação. Por favor, tente novamente.",failedSendCode:"Falha ao enviar código. Por favor, tente reenviar."}},jK={buildingApp:"Construindo seu aplicativo",verifyEmailSubtitle:"Verifique seu e-mail para continuar",signUpSubtitle:"Cadastre-se para vê-lo ganhar vida",loginSubtitle:"Entre para vê-lo ganhar vida"},OK={completeVerification:"Por favor, complete a verificação de segurança"},BK={title:"Verifique seu e-mail",subtitle:"Enviamos um código de verificação para {{email}}",verificationCode:"Código de verificação",fillAllFields:"Por favor, preencha todos os campos.",enterCodeSent:"Digite o código de verificação enviado para seu e-mail",verifying:"Verificando...",verifyEmail:"Verificar e-mail",wrongEmail:"E-mail errado? Alterar",didntReceiveCode:"Não recebeu o código?",resendEmail:"Reenviar e-mail",emailVerifiedLogin:"E-mail verificado com sucesso! Você já pode entrar.",emailVerifiedContinue:"E-mail verificado com sucesso! Por favor, entre para continuar.",invalidCode:"Código de verificação inválido. Por favor, tente novamente.",verificationFailed:"Falha na verificação. Por favor, tente novamente.",newCodeSent:"Novo código de verificação enviado para seu e-mail.",failedResendCode:"Falha ao reenviar código de verificação. Por favor, tente novamente."},UK={login:RK,register:zK,forgotPassword:MK,checkEmail:NK,resetPassword:FK,mfa:LK,authModal:jK,turnstile:OK,otp:BK},qK={notFound:"Perfil não encontrado",notFoundDescription:"O perfil de builder @{{username}} não existe."},VK={edit:"Editar",done:"ConcluÃdo",cancel:"Cancelar",appCount_one:"{{count}} App",appCount_other:"{{count}} Apps",joined:"Entrou em {{date}}",namePlaceholder:"Seu nome",displayNameLabel:"Nome de exibição",usernameLabel:"Nome de usuário",changeUsername:"Alterar nome de usuário",saveChanges:"Salvar alterações",partnerBadge:"Base44 Partner"},$K={label:"Bio",placeholder:"Escreva uma breve bio sobre você...",emptyPlaceholder:"Conte aos visitantes sobre você — adicione uma breve bio.",hint:"Máx. 220 caracteres",maxChars:"Máx. {{max}} caracteres"},WK={viewTitle:"Apps",appsHeader:"Apps ({{count}})",appsHeaderEmpty:"Apps",featuredCounter_one:"{{count}} em destaque",featuredCounter_other:"{{count}} em destaque",editHint:"Selecione quais apps aparecem no seu perfil público.",noPublishedApps:"Nenhum app publicado encontrado. Publique um app primeiro!",noPublishedAppsTitle:"Nenhum app publicado",noPublishedAppsDescription:"Você ainda não publicou nenhum app. Vá para seu espaço de trabalho para finalizar um rascunho e publicá-lo para exibi-lo no seu perfil.",viewMyApps:"Ver meus apps",untitled:"Sem tÃtulo",updated:"Apps fixados atualizados!",updateFailed:"Falha ao atualizar apps fixados",manageApps:"Gerenciar apps",chooseTitle:"Escolher apps para exibir",chooseDescription:"Selecione até {{max}} apps publicados para aparecer no seu perfil público",selectAll:"Selecionar tudo",deselectAll:"Desmarcar tudo",saveChanges:"Salvar",searchApps:"Buscar apps...",publicBadge:"Público",privateBadge:"Privado",showMore:"Mostrar mais",showLess:"Mostrar menos",maxReached:"Máximo de {{max}} apps permitidos",close:"Fechar",noSearchResults:"Nenhum app corresponde à sua busca",updatedRecently:"atualizado recentemente",selectAllCount:"Selecionar tudo ({{count}})",deselectAllCount:"Desselecionar tudo ({{count}})"},GK={editTooltip:"Editar links sociais",addLinks:"Adicionar links sociais",addLink:"Adicionar link",cancelTooltip:"Cancelar",removeTooltip:"Remover",label:"Redes sociais",hint:"Adicione até 6 links sociais",linkLabel:"Link",addCustomLink:"Adicionar link personalizado",pastePlaceholder:"Cole a URL aqui",enterUsernameOrUrl:"Digite seu nome de usuário ou URL completa do perfil",movedTo:"Movido para {{platform}}",addedAsCustom:"Adicionado como link personalizado",fieldOccupied:"Parece um link do {{platform}} — esse campo já tem uma URL",customSlotsFull:"Parece um link do {{platform}}. Remova um link personalizado para adicioná-lo."},HK={profileUpdated:"Perfil atualizado!",profileUpdateFailed:"Falha ao atualizar o perfil",usernameClaimed:"Nome de usuário obtido!",usernameClaimFailed:"Falha ao obter nome de usuário",loadFailed:"Falha ao carregar o perfil",invalidImageType:"Envie uma imagem válida (JPG, PNG, GIF ou WebP)",imageTooLarge:"A imagem deve ter menos de 5 MB",avatarUpdated:"Imagem de perfil atualizada!",avatarUploadFailed:"Falha ao enviar a imagem",avatarRemoveFailed:"Falha ao remover a imagem"},YK={title:"Descartar alterações?",description:"Você tem alterações não salvas que serão perdidas.",confirm:"Descartar"},KK={title:"Alterar nome de usuário",placeholder:"nome de usuário",checking:"Verificando...",available:"DisponÃvel!",notAvailable:"Não disponÃvel",urlWarning:"Sua URL de perfil mudará para /@{{username}}. Links antigos deixarão de funcionar.",cancel:"Cancelar",claim:"Obter nome de usuário",tryInstead:"Tente:"},ZK={locationLabel:"Localização",locationPlaceholder:"ex. São Paulo, Brasil",showEmailLabel:"Exibir o email da sua conta"},JK={title:"Atualizar imagem de capa",description:"Escolha um dos nossos gradientes ou envie sua própria imagem",uploadFile:"Enviar imagem personalizada",orUseTemplate:"Ou use um modelo",cancel:"Cancelar",saveChanges:"Salvar alterações",updated:"Imagem de capa atualizada!",updateFailed:"Falha ao atualizar a imagem de capa",uploadFailed:"Falha ao enviar a imagem",dragToReposition:"Arraste para reposicionar",replaceImage:"Substituir imagem",reposition:"Reposicionar"},QK={title:"Atividade",mon:"Seg",wed:"Qua",fri:"Sex",less:"Menos",more:"Mais",messages_one:"{{count}} prompt",messages_other:"{{count}} prompts",founderMode:"Founder mode",noActivity:"Sem atividade",onDate:"em {{date}}",showOnProfile:"Mostrar no perfil"},XK={customize:"Personalize seu perfil",title:"Ainda sem apps públicos",description:"Seu perfil é o melhor lugar para compartilhar seu trabalho com a comunidade Base44. Selecione entre seus apps publicados para exibi-los aqui, ou comece um novo projeto para aumentar sua atividade.",anonDescription:"Este builder ainda não tornou nenhum de seus apps público. Volte mais tarde para ver a atividade mais recente, ou explore o que outros criadores estão construindo.",startCreating:"Começar a criar",chooseFromApps:"Escolher dos meus apps"},e5={page:qK,header:VK,bio:$K,pinnedApps:WK,social:GK,toast:HK,discardDialog:YK,usernameDialog:KK,details:ZK,coverImage:JK,activity:QK,emptyState:XK},t5=JSON.parse(`{"title":"Agentes IA","beta":"Beta","subtitle":"Integre agentes IA no seu aplicativo usando a infraestrutura de agentes IA do Base44","disabled":"Desabilitado","setupAgents":"Configurar agentes","enableAgents":"Habilitar agentes","turnOnToggle":"Ative o botão para permitir a criação de agentes","addFirstAgent":"Adicione seu primeiro agente","creditsUsed":"{{credits}} créditos utilizados","creditsUsedTooltip":"Créditos de integração mensais utilizados","askChatToCreate":"Peça ao chat para criar um agente para você. Descreva qual papel o agente deve ter e quais tarefas deve executar.","defineInConfig":"Defina seus agentes em arquivos de configuração locais e sincronize-os com seu aplicativo usando o CLI do Base44.","viewDocumentation":"Ver documentação","noAgentsYet":"Nenhum agente ainda","promptChatToCreate":"Peça ao chat para criar seu primeiro agente IA","agentsTab":"Agentes","conversationsTab":"Conversas","searchConversations":"Pesquisar conversas...","filterAll":"Todos","filterMine":"Minhas","filterUsers":"Usuários","noConversationsYet":"Nenhuma conversa ainda","noConversationsMatchSearch":"Nenhuma conversa corresponde à sua pesquisa","tryDifferentSearch":"Tente um termo de pesquisa diferente","goToAgentsTab":"Vá para a aba Agentes para iniciar uma conversa","conversationStarted":"Conversa iniciada","agentConfiguration":"Configuração do agente","guidelines":"Diretrizes","tools":"Ferramentas","whatsapp":"WhatsApp","toolsAndCapabilities":"Ferramentas e capacidades","descriptionLabel":"Descrição","systemPromptDesc":"Este é o prompt do sistema que define o comportamento do agente","briefDescription":"Breve descrição do que este agente faz...","instructions":"Instruções","instructionsDesc":"Diretrizes e regras especÃficas que o agente deve seguir","detailedInstructions":"Instruções detalhadas para o agente...","availableTools":"Ferramentas disponÃveis","configureTools":"Configure quais ferramentas e dados este agente pode acessar","add":"Adicionar","allEntitySlotsUsed":"Todos os slots de entidade usados","addEntityTool":"Adicionar ferramenta de entidade","entityToolDesc":"Operações de banco de dados e acesso CRUD","allFunctionSlotsUsed":"Todos os slots de função usados","addBackendFunction":"Adicionar função backend","backendFunctionDesc":"Lógica backend personalizada e integrações","noToolsConfigured":"Nenhuma ferramenta configurada","addToolsDesc":"Adicione ferramentas de entidade ou funções backend para dar capacidades ao agente","entityTool":"Ferramenta de entidade","selectEntity":"Selecionar entidade","allowedOperations":"Operações permitidas","deleteWarning":"Cuidado, dados excluÃdos pelo agente não podem ser restaurados","backendFunction":"Função backend","selectBackendFunction":"Selecionar função backend","functionDescription":"Descrição da função","describeFunction":"Descreva quando e como esta função deve ser usada...","whatsappIntegration":"Integração WhatsApp","whatsappDesc":"Conecte seu agente ao WhatsApp para comunicação perfeita","testChat":"Chat de teste","addWhatsapp":"Adicione WhatsApp ao seu aplicativo","whatsappEnableDesc":"Habilite o acesso WhatsApp para seus usuários com um único comando","addWhatsappButton":"Adicionar um botão WhatsApp para o {{agent}}","sendToChat":"Enviar ao chat","fullChatCapabilities":"Todas as capacidades do chat","fullChatDesc":"Todas as funcionalidades do chat web funcionam perfeitamente no WhatsApp, incluindo ferramentas e acesso a dados","voiceMediaSupport":"Suporte a voz e mÃdia","voiceMediaDesc":"Usuários podem enviar notas de voz e imagens para interação natural","customNumbers":"Números personalizados","customNumbersDesc":"Conecte seus próprios números WhatsApp Business","easyUiIntegration":"Integração UI fácil","easyUiDesc":"Adicione um botão WhatsApp ao seu aplicativo com um simples comando no chat","welcomeMessage":"Mensagem de boas-vindas","welcomeMessageDesc":"Crie uma saudação calorosa que apresente seu agente e defina expectativas","charCount":"{{count}}/500","editAgent":"Editar agente","edit":"Editar","startChat":"Iniciar chat","chat":"Chat","functionCount":"{{count}} função(ões)","noDescriptionProvided":"Nenhuma descrição fornecida","entities":"Entidades:","activeConversation":"Conversa ativa","readOnlyConversation":"Conversa somente leitura","startConversation":"Inicie sua conversa","typeMessageBelow":"Digite uma mensagem abaixo para começar","typeYourMessage":"Digite sua mensagem...","cancel":"Cancelar","saving":"Salvando...","save":"Salvar","commandAddedToChat":"Comando adicionado ao chat. Pressione Enter para enviar.","failedToSaveAgentConfiguration":"Falha ao salvar configuração do agente","promptAddedToChat":"Prompt adicionado ao chat","unableToLoadSuggestions":"Não foi possÃvel carregar as sugestões. Tente novamente mais tarde.","createAgent":"Criar agente","createAgentTitle":"Criar um agente","createAgentDescription":"Peça ao chat para criar um agente para você. Descreva qual função o agente deve ter e quais tarefas deve realizar.","manageAgentsAndConversations":"Gerenciar agentes e conversas","skills":"Habilidades","skillsEnabledLimit":"Você pode habilitar até {{count}} habilidades por agente.","appSkillsTitle":"Habilidades de Aplicativo","appSkillsDescription":"Habilidades de instrução reutilizáveis para agentes neste aplicativo.","addSkill":"Adicionar Habilidade","noAppSkillsYet":"Ainda não há habilidades de aplicativo. Crie uma para reutilizar entre agentes neste aplicativo.","workspaceSkillsTitle":"Habilidades de Espaço de Trabalho","workspaceSkillsDescription":"Habilidades compartilhadas deste espaço de trabalho. Ative-as para habilitá-las neste agente.","loadingWorkspaceSkills":"Carregando habilidades de espaço de trabalho...","noWorkspaceSkillsAvailable":"Não há habilidades compartilhadas de espaço de trabalho disponÃveis atualmente.","manageWorkspaceSkills":"Gerenciar habilidades de espaço de trabalho","workspaceSkillSource":"espaço de trabalho","appSkillSource":"aplicativo","unavailable":"indisponÃvel","addAppSkill":"Adicionar Habilidade de Aplicativo","editAppSkill":"Editar {{name}}","skillName":"Nome da habilidade","skillNameHint":"Use letras minúsculas, números e hÃfens.","skillNameInvalid":"O nome deve ser alfanumérico em minúsculas com hÃfens, sem hÃfens no inÃcio/final (ex. 'code-review', 'sql-expert').","skillDescription":"Descrição","skillInstructions":"Instruções","enableForCurrentAgent":"Habilitar para o agente atual","enableForCurrentAgentDescription":"Isso altera o estado atual do editor e é salvo com o agente.","createSkill":"Criar Habilidade","saveChanges":"Salvar Alterações","workspaceSkillUnavailableDescription":"Esta habilidade de espaço de trabalho não está mais habilitada ou disponÃvel.","appSkillUnavailableDescription":"Esta habilidade de aplicativo não existe mais na biblioteca de habilidades do aplicativo.","skillValidationRequired":"Nome, descrição e instruções são obrigatórios","skillCreated":"Habilidade criada","skillUpdated":"Habilidade atualizada","failedToSaveSkill":"Falha ao salvar habilidade","skillSavedButAssignmentsFailed":"A habilidade foi salva, mas falhou ao anexá-la ao agente","skillSavedButAssignmentsRefreshDelayed":"O editor não conseguiu atualizar automaticamente. Recarregue para verificar o estado mais recente.","skillSavedButSyncFailed":"A habilidade foi salva, mas falhou a sincronização do estado do agente","skillSavedButSyncRefreshDelayed":"A habilidade foi salva, mas o editor não conseguiu atualizar automaticamente. Recarregue para verificar o estado mais recente.","skillSavedStateRefreshed":"Habilidade salva. O editor foi atualizado para corresponder ao estado salvo mais recente.","skillSavedRefreshDelayed":"A habilidade foi salva, mas o editor não conseguiu atualizar automaticamente. Recarregue para verificar o estado mais recente.","skillDeleted":"Habilidade excluÃda","skillDeletedRefreshDelayed":"A habilidade foi excluÃda, mas o editor não conseguiu atualizar automaticamente. Recarregue para verificar o estado mais recente.","failedToDeleteSkill":"Falha ao excluir habilidade","skillLimitReached":"Este agente já atingiu o número máximo de habilidades habilitadas.","skillTemplatePickerTitle":"Escolha uma habilidade inicial","startFromScratch":"Começar do zero","startFromScratchDescription":"Crie uma habilidade personalizada com suas próprias instruções.","useTemplate":"Usar modelo","skillTemplates":{"refundPolicy":{"description":"Modelo para regras de reembolso, elegibilidade e quais detalhes o agente deve coletar antes de escalar."},"supportEscalation":{"description":"Modelo para quando encaminhar ao suporte humano e qual resumo o agente deve preparar."},"pricingAndPlans":{"description":"Modelo para explicar planos, ciclos de cobrança, upgrades e quando encaminhar pedidos enterprise."},"brandVoice":{"description":"Modelo para tom, estilo de escrita e regras de comunicação para que o agente soe alinhado à marca."}},"memory":"Memória","memoryTitle":"Memória do agente","memorySubtitle":"Ative a memória de longo prazo para que seu agente lembre informações entre conversas","enableMemory":"Ativar memória","enableMemoryDesc":"Quando ativado, o agente pode salvar e recuperar informações entre conversas","memoryScope":"Escopo da memória","memoryScopeDesc":"Escolha quais tipos de memórias o agente pode criar","memoryScopeGlobalAndUser":"Global e por usuário","memoryScopeGlobalAndUserDesc":"O agente pode salvar memórias compartilhadas e pessoais","memoryScopeGlobal":"Apenas global","memoryScopeGlobalDesc":"Memórias compartilhadas entre todos os usuários","memoryScopeUser":"Apenas por usuário","memoryScopeUserDesc":"Memórias especÃficas para cada usuário","memoryInstructions":"Instruções de memória","memoryInstructionsDesc":"Oriente o agente sobre quando salvar memórias e o que incluir","memoryInstructionsPlaceholder":"Ex., Salve memórias globais para atualizações de produtos, anúncios da empresa e conhecimento compartilhado. Salve memórias de usuário para preferências pessoais como estilo de comunicação, tom e interesses especÃficos.","savedMemories":"Memórias salvas","refresh":"Atualizar","noMemoriesYet":"Nenhuma memória salva ainda","noMemoriesDesc":"As memórias aparecerão aqui quando o agente salvá-las durante as conversas","memoryItemDeleted":"Item de memória excluÃdo","memoryDeleteFailed":"Falha ao excluir item de memória","defaultDescription":"Padrão: {{description}}"}`),a5={writing:"Escrevendo",wrote:"Escreveu",reading:"Lendo",read:"Leu",deleting:"Excluindo",deleted:"ExcluÃdo",editing:"Editando",edited:"Editado",creating:"Criando",created:"Criado",updating:"Atualizando",updated:"Atualizado",update:"Atualizar",delete:"Excluir",importing:"Importando",imported:"Importado",import:"Importar",searching:"Pesquisando",searched:"Pesquisado",searchingForBugs:"Pesquisando bugs...",searchedBugs:"Bugs pesquisados",install:"Instalar",installing:"Instalando",installed:"Instalado",analyzing:"Analisando",running:"Executando",failed:"Falhou",run:"Executar",settingSecrets:"Configurando segredos",setSecret:"Segredo configurado",setSecrets:"Segredos configurados",testing:"Testando",checking:"Verificando",tested:"Testado",checked:"Verificado",fetching:"Buscando",fetched:"Buscado",waitingForApproval:"Aguardando aprovação...",searchedDocsFor:"Documentação pesquisada para",searchingDocsFor:"Pesquisando documentação para",searchedFor:"Pesquisado por",searchingFor:"Pesquisando por",foundResult_one:"{{count}} resultado encontrado",foundResult_other:"{{count}} resultados encontrados",toggling:"Alternando",toggled:"Alternado",listing:"Listando",listed:"Listado",approvalRequired:"Aprovação necessária",approve:"Aprovar",approving:"Aprovando...",reject:"Rejeitar",rejected:"rejeitado",previousApproval:"Esta solicitação de aprovação é de uma mensagem anterior",query:"Consulta:",updateWith:"Atualizar com:",importComplete:"Importação concluÃda",importingData:"Importando dados...",percentComplete:"{{percent}}% concluÃdo",recordsProgress:"{{current}} / {{total}} registros",preparing:"Preparando...",otherToolsAfterApproval:"Outras ferramentas serão executadas após aprovação",countPackages:"{{num}} pacotes:",updateAllEntityRecords:"Atualizar todos os registros de <entity>{{entityName}}</entity>",updateEntityRecordsMatching:"Atualizar registros de <entity>{{entityName}}</entity> correspondentes a:",deleteAllEntityRecords:"Excluir todos os registros de <entity>{{entityName}}</entity>",deleteEntityRecordsMatching:"Excluir registros de <entity>{{entityName}}</entity> correspondentes a:",importDataFromInto:"Importar dados de <file>{{fileName}}</file> para <entity>{{entityName}}</entity>",importDataFromSheetInto:"Importar dados de <file>{{fileName}}</file> (planilha: <sheet>{{sheetName}}</sheet>) para <entity>{{entityName}}</entity>",countRecordsIntoEntity:"{{num}} registros em <entity>{{entityName}}</entity>",dataIntoEntity:"dados em <entity>{{entityName}}</entity>",countRecordsEntity:"{{num}} registros <entity>{{entityName}}</entity>",allEntityRecords:"todos os registros de <entity>{{entityName}}</entity>",entityRecords:"registros de <entity>{{entityName}}</entity>",grepSearching:'Pesquisando "{{pattern}}"...',grepSearchComplete:"Pesquisa concluÃda",grepFoundResults_one:"{{count}} resultado encontrado",grepFoundResults_other:"{{count}} resultados encontrados",grepInFiles_one:"em {{count}} arquivo",grepInFiles_other:"em {{count}} arquivos"},n5={agents:t5,tools:a5},i5={title:"Automações",subtitle:"Crie e gerencie automações no seu aplicativo.",newAutomation:"Nova automação",chooseAutomation:"Escolha uma automação",selectHowStarts:"Selecione como esta automação será iniciada.",scheduled:"Agendada",scheduledDescription:"Execute esta automação em um cronograma recorrente ou em um horário especÃfico.",dataEvent:"Evento de dados",dataEventDescription:"Execute esta automação quando um registro é criado, atualizado ou excluÃdo.",connector:"Conector",connectorDescription:"Execute esta automação quando uma integração conectada enviar um evento.",connectorBetaTooltip:"Este conector é gratuito durante o beta.",beta:"Beta",connectorNewAutomation:"Nova automação de conector",connectorIntegrationType:"Integração",connectorSelectIntegration:"Selecionar uma integração",connectorNoIntegrations:"Nenhuma integração conectada",connectorNoIntegrationsHint:"Para habilitar a automação, você precisa criar uma integração primeiro.",connectorCreateIntegration:"Criar integração",connectorCreateNewIntegration:"Criar nova integração",connectorEvents:"Eventos",connectorSelectEvents:"Selecionar eventos para escutar",connectorSelectEvent:"Selecionar um evento",connectorAvailableEvents:"Eventos disponÃveis ({{count}})",connectorType:"Conector",allEvents:"todos os eventos",deleteAutomation:"Excluir automação?",deleteAutomationDesc:'Isso excluirá permanentemente "{{name}}" e todo o seu histórico de execução. Esta ação não pode ser desfeita.',delete:"Excluir",deleting:"Excluindo...",cancel:"Cancelar",copyOutput:"Copiar saÃda",scheduledType:"Agendada",dataEventType:"Evento de dados",someRunsFailed:"Algumas execuções falharam",reviewLogsOrFix:"Revise os logs ou deixe a IA corrigir os erros.",fixing:"Corrigindo...",fixWithAI:"Corrigir com IA",failedToGetErrorContext:"Falha ao obter contexto do erro",logsTab:"Logs",noLogsYet:"Nenhum log ainda",back:"Voltar",close:"Fechar",saving:"Salvando...",save:"Salvar",active:"Ativo",archived:"Arquivado",archivedAutomations:"Automações arquivadas",nameAndDescription:"Nome e descrição",typeColumn:"Tipo",lastRun:"Última execução",failed:"Falhou",loading:"Carregando...",editAutomation:"Editar automação",runNow:"Executar agora",archive:"Arquivar",duplicate:"Duplicar",unlockAutomations:"Desbloquear automações",unlockAutomationsDesc:"Para executar automações no seu aplicativo, você precisa de funções backend habilitadas. Atualize para habilitar funções backend e começar a usar automações.",enableBackendFunctions:"Habilite funções backend para começar",enableBackendFunctionsDesc:"Automações executam funções backend em um cronograma ou quando os dados mudam. Ative funções backend em Configurações para usar automações.",openSettings:"Abrir configurações",createBackendFunction:"Crie uma função backend para adicionar automações",createBackendFunctionDesc:"Para criar uma automação, você precisa primeiro de uma função backend no seu código. Escreva uma função backend no seu código ou peça ajuda no chat.",noAutomationsYet:"Nenhuma automação ainda",noAutomationsDesc:"Crie uma automação para executar tarefas automaticamente no seu aplicativo.",noArchivedAutomations:"Nenhuma automação arquivada",noArchivedDesc:"Automações que você arquivar ou que atingirem sua data final aparecerão aqui.",runAutomation:"Executar automação",selectRecord:"Selecione um registro de <entity>{{entity}}</entity> para executar a automação.",searchRecords:"Pesquisar registros de {{entity}}...",noRecordsFound:"Nenhum registro de {{entity}} encontrado.",noRecordsMatch:'Nenhum registro corresponde a "{{query}}"',recordsCount:"{{filtered}} de {{total}} registros",totalRecords:"{{total}} registros",running:"Executando...",automationName:"Nome da automação",describeAutomation:"Descreva o que esta automação faz.",functionToRun:"Função a executar",selectFunction:"Selecione uma função backend do seu código. A função receberá os dados da entidade quando a automação disparar.",noBackendFunctions:"Nenhuma função backend disponÃvel",selectAFunction:"Selecionar uma função",runsWhen:"Executa quando",noItems:"Nenhum item",selectItem:"Selecionar item",is:"É",selectEvent:"Selecionar evento",automationNameRequired:"O nome da automação é obrigatório.",selectEntity:"Por favor, selecione uma entidade.",selectEventType:"Por favor, selecione pelo menos um tipo de evento.",selectFunctionRequired:"Por favor, selecione uma função para executar.",newDataAutomation:"Nova automação de dados",details:"Detalhes",logsWillAppearAfterFire:"Os logs aparecerão aqui após esta automação disparar.",selectFunctionFromCode:"Selecione uma função backend do seu código. Para adicionar ou editar uma função, atualize-a no seu código ou peça ajuda no chat.",recurring:"Recorrente",oneTime:"Uma vez",repeatsEvery:"Repete a cada",minute:"Minuto",hour:"Hora",day:"Dia",week:"Semana",month:"Mês",startAt:"InÃcio em",at:"Às",repeatsOn:"Repete em",repeatsOnDay:"Repete no dia",ends:"Termina",never:"Nunca",on:"Em",after:"Após",occurrences:"ocorrências",runOn:"Executar em",atTime:"No horário",oneTimeDateRequired:"Agendamentos únicos requerem uma data especificada.",oneTimeTimeRequired:"Agendamentos únicos requerem um horário especificado.",oneTimePastError:"A data e horário do agendamento único não podem estar no passado.",minMinutesInterval:"O intervalo mÃnimo para agendamentos baseados em minutos é de {{min}} minutos.",selectDayForWeekly:"Por favor, selecione pelo menos um dia para o agendamento semanal.",monthlyDayRequired:"Agendamentos mensais requerem a seleção de um dia do mês.",endDateRequired:"A data de término é obrigatória quando 'Termina' está definido como 'Em'.",endDatePast:"A data de término não pode estar no passado.",occurrenceCountMin:"O número de ocorrências deve ser pelo menos 1.",newScheduledAutomation:"Nova automação agendada",logsWillAppearAfterRun:"Os logs aparecerão aqui após esta automação ser executada.",description:"Descrição",nameField:"Nome",typeField:"Tipo",automationUpdated:"Automação atualizada com sucesso",automationCreated:"Automação criada com sucesso",failedToSave:"Falha ao salvar a automação",functionArgs:"Argumentos (JSON)",functionArgsPlaceholder:'{"key": "value"}',functionArgsTooltip:"Objeto JSON opcional passado para a função como argumentos adicionais.",functionArgsInvalidJson:"Os argumentos devem ser JSON válido.",advanced:"Avançado",triggerConditions:"Condições de acionamento",conditionsSetByAI:"As condições são configuradas pelo construtor de IA e não podem ser editadas manualmente.",conditionsSummaryError:"Não foi possÃvel carregar o resumo das condições.",connectorNoManualIntegrations:"Nenhuma integração disponÃvel para criação manual",connectorNoManualIntegrationsHint:"Algumas integrações requerem condições de acionamento e só podem ser criadas através do construtor de IA.",suggestedForYou:"Sugestões para você",basedOnYourContext:"Com base no contexto do seu app",createFromScratch:"Criar do zero"},r5={automations:i5},o5={title:"Integrações",myIntegrations:"Minhas integrações",browse:"Explorar",payments:"Pagamentos",failedToLoad:"Falha ao carregar conexões do aplicativo",successfullySwitched:"Conta alterada com sucesso para {{name}}",cancelled:"Cancelado",connectionCancelled:"A conexão do aplicativo foi cancelada",disconnected:"{{name}} foi desconectado",failedToDisconnect:"Falha ao desconectar conexão do aplicativo",stripeRemoved:"A integração Stripe foi removida",wixPaymentsDisconnected:"Wix Payments foi desconectado",integrationRemoved:"{{name}} foi removido",failedToRemove:"Falha ao remover integração",connectedAccountsWarning:"Contas conectadas podem expor dados sensÃveis a qualquer pessoa com acesso.",unlockFeature:"Desbloquear esta funcionalidade",unlockFeatureDesc:"Esta funcionalidade está disponÃvel apenas no plano Builder ou superior. Atualize para continuar trabalhando sem limites",upgradeToUseConnector:"Fazer upgrade para usar o recurso",access:"Acesso {{name}}",disconnectAccount:"Desconectar conta?",disconnectDesc:"O acesso de <bold>{{email}}</bold> em <bold>{{name}}</bold> será revogado.<br/>O registro da integração será preservado para reconexão futura.",disconnecting:"Desconectando...",disconnect:"Desconectar",removeIntegration:"Remover integração?",removeDesc:"<bold>{{name}}</bold> será permanentemente removido deste aplicativo.<br/>Para criar uma conexão novamente, você precisará configurá-la do zero.",removing:"Removendo...",remove:"Remover",cancel:"Cancelar",reject:"Rejeitar",new:"Novo",done:"ConcluÃdo",success:"Sucesso",error:"Erro",setupIntegrations:"Configurar integrações",setupIntegrationsDesc:"Vincule facilmente seu aplicativo a conectores como Google Calendar, Google Drive, Slack, Notion, Salesforce, HubSpot e mais.",setupIntegrationsChat:"Apenas descreva o que você quer conectar no chat, e ele configurará para você.",viewAccess:"Ver acesso",connecting:"Conectando...",switchAccount:"Trocar conta",reconnect:"Reconectar",disconnectAccount2:"Desconectar conta",use:"Usar",examplePrompts:"Exemplos de prompts",clickPromptToAdd:"Clique em um prompt para adicioná-lo ao seu chat.",unableToLoadSuggestions:"Não foi possÃvel carregar sugestões. Por favor, tente novamente mais tarde.",requiresBackendFunctions:"Esta integração requer funções backend, uma funcionalidade disponÃvel apenas no nÃvel Builder e superior. ",seePlans:"Ver planos",promptAddedToChat:"Prompt adicionado ao chat. Pressione Enter para enviar.",connectors:"Conectores",connectorsDesc:"Conecte seu aplicativo a serviços populares com conexões OAuth rápidas.",searchConnectors:"Pesquisar conectores",noSearchResults:"Sem resultados para sua pesquisa",noSearchResultsDesc:"Tente usar palavras-chave diferentes ou verifique a ortografia. Você também pode ordenar por nome ou adicionados recentemente.",sort:{title:"Ordenar",mostUsed:"Mais usados",recentlyAdded:"Adicionados recentemente",az:"A-Z",za:"Z-A"},revoked:"Revogado",connectionLost:"A conexão foi perdida — por favor, reconecte",configModal:{connectTo:"Conectar a {{name}}",configureConnection:"Configure sua conexão a {{name}}",loadingConfig:"Carregando configuração...",retryHint:"Você pode tentar novamente.",connect:"Conectar",connecting:"Conectando...",validationRequired:"{{name}} é obrigatório",validationInvalid:"{{name}} não é válido",fetchError:"Falha ao carregar a configuração.",retry:"Tentar novamente"},wixPayments:{title:"Wix Payments",live:"Ativo",disconnected:"Desconectado",acceptingPayments:"Aceitando pagamentos",integrationDisconnected:"Integração desconectada",openingWixPayments:"Abrindo o Wix Payments...",popupBlocked:"O Wix Payments foi bloqueado pelo seu navegador. Use o link abaixo para abrir manualmente o painel de pagamentos.",errors:{noUrl:"Falha ao obter a URL do Wix Payments. Tente novamente.",fetchFailed:"Falha ao abrir o Wix Payments. Tente novamente.",invalidRedirect:"Falha ao abrir o Wix Payments. Tente novamente."},openDashboard:"Abrir painel de pagamentos",managePayments:"Gerenciar pagamentos",disconnect:"Desconectar",disconnectIntegration:"Desconectar integração?",disconnectDesc:"<bold>Wix Payments</bold> será desconectado deste aplicativo.<br/>Você pode reconectá-lo mais tarde pelo chat.",disconnecting:"Desconectando...",disconnectButton:"Desconectar",enterNamePrompt:"Por favor, insira seu nome para continuar:",firstNamePlaceholder:"Nome",lastNamePlaceholder:"Sobrenome"},stripe:{unableToClaimSandbox:"Não foi possÃvel reivindicar o sandbox",sandboxExpired:"O sandbox pode ter expirado ou já foi reivindicado. Por favor, atualize a página.",failedGetClaimUrl:"Falha ao obter URL de reivindicação",pleaseTryAgain:"Por favor, tente novamente ou atualize a página.",pendingSetup:"Configuração pendente",completeSetupGuide:"Conclua o guia de configuração para aceitar pagamentos reais",live:"Ativo",stripe:"Stripe",loadingStripe:"Carregando...",acceptingPayments:"Aceitando pagamentos reais",accountDetails:"Detalhes da conta Stripe",hideGuide:"Ocultar guia",showGuide:"Mostrar guia",goToStripe:"Ir para o Stripe",aboutIntegration:"Sobre a integração",aboutStripeIntegration:"Sobre a integração Stripe",stripeDesc:"O Stripe permite aceitar pagamentos, enviar transferências e gerenciar seu negócio online. Esta integração permite:",acceptCards:"Aceitar cartões de crédito e outros métodos de pagamento",createProducts:"Criar produtos e assinaturas",manageCustomers:"Gerenciar clientes e faturamento",close:"Fechar",tryTestPayment:"Testar um pagamento de teste",claimSandbox:"Reivindique seu sandbox Stripe",addLiveKeys:"Adicione suas chaves de API live do Stripe",copiedCard:"Copiado!",testCardCopied:"Número do cartão de teste copiado para a área de transferência.",failedToCopy:"Falha ao copiar",copyManually:"Por favor, copie manualmente: 4242 4242 4242 4242",keysSaved:"Chaves de API salvas com sucesso.",failedSaveKeys:"Falha ao salvar chaves de API. Por favor, tente novamente.",movedOutOfTestMode:"Você saiu do modo de teste.",noNeedTestPayments:"Não é mais necessário realizar pagamentos de teste.",useTestCard:"Use este cartão de teste para simular uma compra:",testCardNumber:"4242 4242 4242 4242",anyFutureExpiry:", qualquer data de validade futura, qualquer CVC de 3 dÃgitos.",publishAndOpen:"Publique seu aplicativo e abra em uma nova aba para testar a experiência de checkout",copyCardNumber:"Copiar número do cartão",connectStripeDesc:"Conecte-se à sua conta Stripe existente ou crie uma nova para começar a aceitar pagamentos reais.",claimAndGoLive:"Reivindicar e ativar",copyLiveKeys:"Copie suas chaves Publishable e Secret live do seu <link>Painel Stripe</link> para concluir a configuração e habilitar pagamentos reais no seu aplicativo.",publishableKey:"Chave pública",secretKey:"Chave secreta",enterValue:"Digite o valor",savingKeys:"Salvando...",saveApiKeys:"Salvar chaves de API",completeStepInStripe:"Para concluir esta etapa, reivindique o sandbox e conclua a configuração no Stripe"}},s5={title:"Integrações do aplicativo",subtitle:"Conecte seu aplicativo a serviços de terceiros e estenda suas funcionalidades.",integrationCatalog:"Catálogo de integrações",payments:"Pagamentos",zapier:"Zapier",couldNotLoad:"Não foi possÃvel carregar detalhes da integração. Por favor, tente novamente.",loadingDetails:"Carregando detalhes...",backToCatalog:"Voltar ao catálogo",integrationAdded:"Integração adicionada (provisório)",wouldBeAdded:"{{name}} seria adicionado ao seu aplicativo. Valores secretos registrados.",requiresConfiguration:"Configuração necessária",requiresSecrets:"Esta integração requer {{count}} valor(es) secreto(s) a ser(em) configurado(s).",addToApp:"Adicionar ao aplicativo",paymentProcessing:"Processamento de pagamentos",paymentProcessingDesc:"Aceite pagamentos no seu aplicativo com processadores de pagamento populares. Em breve!",leadingPaymentPlatform:"Plataforma de pagamento lÃder",globallyRecognized:"Pagamentos globalmente reconhecidos",configurePayment:"Configure provedores de pagamento para habilitar assinaturas, compras únicas e mais no seu aplicativo.",zapierIntegration:"Integração Zapier",zapierDesc:"Conecte seu aplicativo a milhares de outros serviços através do Zapier.",automateWithZapier:"Automatize com Zapier",linkBase44:"Vincule o Base44 aos seus aplicativos favoritos como Slack, Google Sheets, Mailchimp e mais.",exploreOnZapier:"Explorar Base44 no Zapier",configureIntegration:"Configurar {{name}}",configureDesc:"Esta integração requer a configuração de alguns valores secretos. Eles são armazenados com segurança e criptografados.",saveAndAdd:"Salvar e adicionar integração"},l5={title:"Habilidades",description:"Adicione habilidades para moldar como a IA constrói seus apps.",manage:"Gerenciar"},c5=JSON.parse('{"title":"Conectores","connectorsForAppUsers":"Conectores para usuários do app","connectorsForAppUsersDesc":"Configure conectores para que os usuários do app possam vincular suas contas pessoais aos apps deste workspace.","connectorsForAppUsersDialogDesc":"Permita que os usuários do app conectem suas contas pessoais aos apps deste workspace.","addConnector":"Adicionar conector","browseConnectors":"Explorar conectores","noConnectorsYet":"Ainda não há conectores","noConnectorsYetDesc":"Adicione conectores para que os usuários do app possam vincular suas contas pessoais.","view":"Visualizar","edit":"Editar","connections":"Conexões","addConnection":"Adicionar conexão","viewConnector":"Visualizar conector","connectorName":"Nome do conector","connector":"Conector {{name}}","examplePrompts":"Prompts de exemplo","back":"Voltar","configureConnection":"Configure sua conexão","configureConnectionDesc":"Forneça seu ID do cliente, segredo e permissões.","connectorNameDesc":"Digite um nome curto para identificar este conector","clientId":"ID do cliente","clientSecret":"Segredo do cliente","clientSecrets":"Segredos do cliente","scopes":"Escopos","scopesDesc":"Digite os escopos que seu app precisa. Escreva cada escopo em uma linha separada.","scopesPlaceholder":"Digite escopos, um por linha","scopesPlaceholderExample":"ex.\\nhttps://www.googleapis.com/auth/calendar.readonly\\nemail","connectionConfig":"Configuração de conexão","cancel":"Cancelar","close":"Fechar","addingConnector":"Adicionando...","savingConnector":"Salvando...","saveChanges":"Salvar alterações","deleteConnector":"Excluir conector","deleteConfirm":"Excluir {{name}}? Esta ação não pode ser desfeita.","deleting":"Excluindo...","addConnectionTitle":"Adicionar conexão {{name}}","editConnectionTitle":"Editar conexão {{name}}","connectorReadOnly":"Conector {{name}}","readOnlyDesc":"Visualização somente leitura dos detalhes do conector","builtInConnectors":"Conectores integrados","promptExamples":"Exemplos de prompts para começar","adminOnlyTooltip":"Apenas administradores ou proprietários do workspace podem conectar integrações para usuários do app","settingUp":"Configurando conector...","configured":"Conector configurado","setUp":"Configurar conector de usuário do app {{type}}","setUpGeneric":"Configurar conector de usuário do app","connecting":"Conectando...","connect":"Conectar","reject":"Rejeitar","workspaceLevelNote":"Esta integração estará acessÃvel no nÃvel do workspace e será aplicada a todas as aplicações criadas dentro desse workspace.","previousMessage":"Esta configuração de conector é de uma mensagem anterior","toastErrorTitle":"Erro","toastCreated":"Conector criado","toastCreateFailed":"Falha ao criar o conector","toastDuplicateName":"Já existe um conector com este nome neste workspace","toastUpdated":"Conector atualizado","toastUpdateFailed":"Falha ao atualizar o conector","toastDeleted":"Conector excluÃdo","toastDeleteFailed":"Falha ao excluir o conector","configFetchFailed":"Falha ao carregar a configuração da conexão. Campos obrigatórios podem estar ausentes.","retry":"Tentar novamente","toastLoadFailed":"Falha ao carregar conectores OAuth","namePlaceholder":"ex. Marketing {{label}}","clientIdPlaceholder":"Digite o ID do cliente OAuth","clientSecretPlaceholderNew":"Digite o novo segredo do cliente","clientSecretPlaceholder":"Digite o segredo do cliente OAuth","extraDetails":{"googlecalendar":{"longDescription":"Conecte-se ao Google Calendar para permitir que os usuários do seu app visualizem, criem e gerenciem eventos de calendário. Sincronize agendas, automatize a criação de reuniões a partir de envios de formulários e crie fluxos de agendamento.","examplePrompt0":"Sincronizar reuniões futuras em um painel dentro do app.","examplePrompt1":"Criar eventos de calendário a partir de envios de formulários.","examplePrompt2":"Mostrar uma visualização da agenda diária para o usuário logado.","examplePrompt3":"Enviar lembretes antes de eventos próximos."},"slack":{"longDescription":"Conecte-se ao Slack para compartilhar mensagens e criar canvas diretamente, simplificando a colaboração e aumentando a produtividade. Pesquise e recupere mensagens, canais, threads, arquivos e usuários, dando ao Claude o contexto para otimizar seu trabalho.","examplePrompt0":"Sincronizar novos usuários do app em um canal do Slack.","examplePrompt1":"Enviar atualizações de status de build para #devops.","examplePrompt2":"Publicar erros do app no canal #alertas.","examplePrompt3":"Notificar a equipe sobre novos feedbacks de clientes."},"salesforce":{"longDescription":"Conecte-se ao Salesforce para acessar contatos, leads, oportunidades e objetos personalizados. Permita que os usuários do seu app visualizem e atualizem dados do CRM, acompanhem negócios e automatizem fluxos de vendas.","examplePrompt0":"Mostrar um painel de oportunidades abertas.","examplePrompt1":"Criar um novo lead a partir de um envio de formulário.","examplePrompt2":"Sincronizar atualizações de contatos de volta para o Salesforce.","examplePrompt3":"Notificar a equipe quando um negócio for fechado."},"hubspot":{"longDescription":"Conecte-se ao HubSpot para gerenciar contatos, empresas, negócios e campanhas de marketing. Permita que os usuários do seu app sincronizem dados do CRM, acompanhem o engajamento e automatizem fluxos de marketing.","examplePrompt0":"Exibir uma lista de negócios recentes no app.","examplePrompt1":"Adicionar novos contatos a partir de formulários de cadastro.","examplePrompt2":"Sincronizar resultados de campanhas de e-mail em um painel.","examplePrompt3":"Atualizar etapas de negócios a partir do app."},"notion":{"longDescription":"Conecte-se ao Notion para acessar páginas, bancos de dados e conteúdo do workspace. Permita que os usuários do seu app leiam e atualizem seu workspace do Notion, sincronizem dados estruturados e automatizem fluxos de conteúdo.","examplePrompt0":"Puxar listas de tarefas de um banco de dados do Notion.","examplePrompt1":"Criar novas páginas a partir de envios de formulários.","examplePrompt2":"Sincronizar atualizações de status do projeto para o Notion.","examplePrompt3":"Exibir conteúdo do Notion dentro do app."},"slackbot":{"longDescription":"Conecte um Bot do Slack para postar mensagens como um bot com nome e Ãcone personalizados. Responda a menções do app, use comandos de barra e automatize fluxos centrados em bot no seu workspace do Slack.","examplePrompt0":"Publicar resumos diários de standup em #geral.","examplePrompt1":"Responder a comandos de barra com dados do app.","examplePrompt2":"Enviar alertas automatizados quando tarefas estiverem atrasadas.","examplePrompt3":"Notificar canais quando novos pedidos chegarem."},"googledrive":{"longDescription":"Conecte-se ao Google Drive para fazer upload, organizar e gerenciar arquivos. Permita que os usuários do seu app salvem documentos gerados, façam backup de dados e acessem seus arquivos do Drive diretamente do seu app.","examplePrompt0":"Salvar relatórios gerados em uma pasta compartilhada do Drive.","examplePrompt1":"Fazer upload de arquivos enviados por usuários para o Google Drive.","examplePrompt2":"Listar arquivos recentes de uma pasta especÃfica.","examplePrompt3":"Fazer backup automático de exportações de dados do app no Drive."},"gmail":{"longDescription":"Conecte-se ao Gmail para enviar, ler e gerenciar e-mails programaticamente. Permita que os usuários do seu app automatizem fluxos de e-mail, leiam mensagens da caixa de entrada e enviem e-mails personalizados da própria conta.","examplePrompt0":"Enviar um e-mail de confirmação após envio de formulário.","examplePrompt1":"Exibir as mensagens mais recentes da caixa de entrada do usuário.","examplePrompt2":"Responder automaticamente a e-mails que atendam certos critérios.","examplePrompt3":"Redigir e enviar e-mails personalizados de prospecção."},"googlesheets":{"longDescription":"Conecte-se ao Google Sheets para ler, escrever e atualizar dados de planilhas. Permita que os usuários do seu app sincronizem registros, importem dados de planilhas e exportem dados do app para suas planilhas.","examplePrompt0":"Importar dados de produtos de uma planilha do Google.","examplePrompt1":"Exportar relatórios diários de vendas para uma planilha.","examplePrompt2":"Sincronizar envios de formulários em uma planilha de acompanhamento.","examplePrompt3":"Ler dados de preços de uma planilha compartilhada."},"googleslides":{"longDescription":"Conecte-se ao Google Slides para criar e editar apresentações. Permita que os usuários do seu app gerem apresentações a partir de modelos, adicionem conteúdo dinâmico e automatizem a criação de apresentações.","examplePrompt0":"Gerar uma apresentação de pitch a partir de dados de formulários.","examplePrompt1":"Adicionar um novo slide com métricas semanais.","examplePrompt2":"Criar apresentações a partir de modelos de relatório.","examplePrompt3":"Atualizar o conteúdo dos slides com os dados mais recentes."},"googledocs":{"longDescription":"Conecte-se ao Google Docs para criar, ler e editar documentos. Permita que os usuários do seu app gerem contratos, preencham modelos e gerenciem documentos diretamente do seu app.","examplePrompt0":"Gerar um contrato a partir de um modelo.","examplePrompt1":"Criar atas de reunião a partir de dados de formulário.","examplePrompt2":"Preencher um modelo de documento com dados do usuário.","examplePrompt3":"Adicionar novo conteúdo a um documento existente."},"googlebigquery":{"longDescription":"Conecte-se ao Google BigQuery para executar consultas SQL e analisar grandes conjuntos de dados. Permita que os usuários do seu app consultem seu data warehouse, criem painéis e extraiam análises para seu app.","examplePrompt0":"Consultar dados de vendas e exibir em um gráfico.","examplePrompt1":"Puxar análises de usuários de tabelas do BigQuery.","examplePrompt2":"Executar um relatório programado a partir dos dados do warehouse.","examplePrompt3":"Mostrar os produtos com melhor desempenho a partir dos resultados da consulta."},"linkedin":{"longDescription":"Conecte-se ao LinkedIn para acessar dados de perfil e compartilhar publicações. Permita que os usuários do seu app publiquem atualizações, recuperem perfis profissionais e automatizem fluxos de mÃdia social no LinkedIn.","examplePrompt0":"Publicar atualizações da empresa no LinkedIn automaticamente.","examplePrompt1":"Puxar detalhes do perfil do usuário logado.","examplePrompt2":"Compartilhar posts do blog no LinkedIn a partir do app.","examplePrompt3":"Exibir informações do perfil do LinkedIn em um painel."},"tiktok":{"longDescription":"Conecte-se ao TikTok para acessar informações de perfil, estatÃsticas de seguidores e dados de vÃdeos. Permita que os usuários do seu app acompanhem seu desempenho no TikTok e naveguem por seus vÃdeos publicados.","examplePrompt0":"Mostrar contagem de seguidores e estatÃsticas do perfil.","examplePrompt1":"Listar os vÃdeos mais recentes do usuário no TikTok.","examplePrompt2":"Exibir métricas de desempenho de vÃdeos em um painel.","examplePrompt3":"Acompanhar o crescimento de seguidores ao longo do tempo."},"discord":{"longDescription":"Conecte-se ao Discord para enviar mensagens, gerenciar servidores e interagir com guildas e canais. Permita que os usuários do seu app automatizem notificações, publiquem atualizações e integrem com sua comunidade do Discord.","examplePrompt0":"Enviar notificações de pedidos para um canal do Discord.","examplePrompt1":"Publicar alertas do app em um canal #notificações.","examplePrompt2":"Listar canais disponÃveis em um servidor do Discord.","examplePrompt3":"Notificar a equipe quando um novo usuário se cadastrar."},"wix":{"longDescription":"Conecte-se ao Wix para acessar dados do site, gerenciar conteúdo e interagir com soluções de negócios Wix como Stores, Bookings e CRM. Permita que os usuários do seu app sincronizem produtos, pedidos e dados de clientes.","examplePrompt0":"Sincronizar produtos da loja Wix para o app.","examplePrompt1":"Puxar pedidos recentes do Wix Stores.","examplePrompt2":"Exibir disponibilidade de agendamento do Wix Bookings.","examplePrompt3":"Gerenciar contatos do CRM Wix a partir do seu app."},"github":{"longDescription":"Conecte-se ao GitHub para acessar repositórios, gerenciar issues e pull requests e automatizar fluxos de desenvolvimento. Permita que os usuários do seu app acompanhem alterações de código, criem issues e otimizem seu processo de desenvolvimento.","examplePrompt0":"Listar issues abertas de um repositório.","examplePrompt1":"Criar uma nova issue a partir de um formulário de relatório de bug.","examplePrompt2":"Mostrar pull requests recentes em um painel.","examplePrompt3":"Acompanhar atividade de commits em repositórios."},"wrike":{"longDescription":"Conecte-se ao Wrike para gerenciar projetos, tarefas e colaboração em equipe. Permita que os usuários do seu app criem e atualizem tarefas, acompanhem o progresso de projetos e coordenem o trabalho entre equipes.","examplePrompt0":"Criar tarefas a partir de envios de formulários.","examplePrompt1":"Exibir cronogramas de projetos em um painel.","examplePrompt2":"Atualizar o status de tarefas de dentro do app.","examplePrompt3":"Mostrar a carga de trabalho da equipe e atribuições de tarefas."},"box":{"longDescription":"Conecte-se ao Box para fazer upload, gerenciar e compartilhar arquivos e pastas. Permita que os usuários do seu app armazenem documentos com segurança, organizem arquivos e colaborem em conteúdo no Box.","examplePrompt0":"Fazer upload de documentos gerados para uma pasta do Box.","examplePrompt1":"Listar arquivos em um diretório compartilhado do Box.","examplePrompt2":"Baixar arquivos do Box para o app.","examplePrompt3":"Compartilhar um link de arquivo do Box com membros da equipe."},"clickup":{"longDescription":"Conecte-se ao ClickUp para gerenciar tarefas, projetos e fluxos de trabalho da equipe. Permita que os usuários do seu app criem tarefas, atualizem status e acompanhem o progresso de projetos diretamente do seu app.","examplePrompt0":"Criar tarefas no ClickUp a partir de envios de formulários.","examplePrompt1":"Mostrar o status do quadro de tarefas em um painel.","examplePrompt2":"Atualizar prioridades de tarefas a partir do app.","examplePrompt3":"Listar tarefas atrasadas do sprint atual."},"google_analytics":{"longDescription":"Conecte-se ao Google Analytics para acessar dados de tráfego do site, comportamento de usuários e desempenho de marketing. Permita que os usuários do seu app visualizem relatórios de análise e acompanhem métricas-chave de dentro do app.","examplePrompt0":"Exibir visualizações de página e sessões em um painel.","examplePrompt1":"Mostrar as principais fontes de tráfego da última semana.","examplePrompt2":"Acompanhar taxas de conversão entre campanhas.","examplePrompt3":"Puxar dados demográficos e de comportamento dos usuários."},"outlook":{"longDescription":"Conecte-se ao Outlook para enviar e ler e-mails, gerenciar eventos de calendário e acessar o correio e calendário do Microsoft 365. Permita que os usuários do seu app automatizem fluxos de e-mail e sincronizem sua agenda.","examplePrompt0":"Enviar e-mails de acompanhamento a partir do app.","examplePrompt1":"Exibir próximos eventos do calendário.","examplePrompt2":"Criar eventos de calendário a partir de envios de formulários.","examplePrompt3":"Mostrar e-mails recentes em um painel."},"linear":{"longDescription":"Conecte-se ao Linear para criar e gerenciar issues, projetos e ciclos. Permita que os usuários do seu app acompanhem fluxos de trabalho da equipe, organizem sprints e fiquem por dentro do progresso de engenharia.","examplePrompt0":"Criar issues no Linear a partir de formulários de relatório de bug.","examplePrompt1":"Mostrar issues do sprint ativo em um painel.","examplePrompt2":"Atualizar o status de issues de dentro do app.","examplePrompt3":"Acompanhar o progresso do ciclo e a velocidade da equipe."},"dropbox":{"longDescription":"Conecte-se ao Dropbox para fazer upload, download e gerenciar arquivos e pastas. Permita que os usuários do seu app armazenem arquivos na nuvem, sincronizem dados e acessem o conteúdo do Dropbox a partir do seu app.","examplePrompt0":"Fazer upload de relatórios exportados para o Dropbox.","examplePrompt1":"Listar arquivos em uma pasta especÃfica do Dropbox.","examplePrompt2":"Baixar arquivos compartilhados para o app.","examplePrompt3":"Sincronizar backups de dados do app para o Dropbox."}},"builtIn":{"sendEmail":{"name":"Enviar e-mails","rowDescription":"Envie e-mails para pessoas no seu app Base44 com nomes de remetente personalizáveis e conteúdo HTML rico.","subtitle":"Envie e-mails automatizados aos seus usuários diretamente do seu app.","longDescription":"Envie e-mails automaticamente do seu app como parte de workflows ou automações. Esta integração pode ser acionada a partir de fluxos, funções backend ou agentes para enviar notificações como confirmações, alertas, resumos ou links de acesso aos usuários.","examplePrompt0":"Quando um ticket de suporte for atualizado para \\"resolvido\\", use SendEmail para notificar o solicitante com um resumo da resolução.","examplePrompt1":"Crie uma automação semanal que use SendEmail para enviar aos admins um resumo de novos pedidos e métricas-chave.","examplePrompt2":"Adicione um fluxo diário que use SendEmail para enviar aos admins um resumo de novos cadastros neste app.","examplePrompt3":"Crie uma automação que use SendEmail para lembrar os usuários 24 horas antes do compromisso agendado."},"uploadFile":{"name":"Upload de arquivo","rowDescription":"Permita que pessoas façam upload de arquivos no seu app. Use a URL do arquivo retornada em outras integrações ou workflows.","subtitle":"Permita que pessoas façam upload de arquivos no seu app. Use a URL do arquivo retornada em outras integrações ou workflows.","longDescription":"Permita que os usuários façam upload de arquivos no seu app e os anexem a registros. Esta integração alimenta componentes de upload para que você possa coletar documentos, imagens, recibos, contratos, capturas de tela, fotos de perfil, arquivos CSV ou planilhas, e armazenar apenas a URL segura do arquivo nos seus dados.","examplePrompt0":"Adicione um campo de upload de arquivo a este formulário usando Upload de arquivo e salve a URL do arquivo no registro relacionado.","examplePrompt1":"Crie uma página onde os usuários possam fazer upload de fotos de perfil com Upload de arquivo e armazenar a URL da imagem na entidade de usuário.","examplePrompt2":"Configure uma área de upload para arquivos CSV usando Upload de arquivo para que eu possa importar esses arquivos posteriormente nas minhas tabelas de dados."},"invokeLlm":{"name":"Invocar LLM","rowDescription":"Gere respostas de IA usando modelos de linguagem integrados, prompts, arquivos e saÃdas estruturadas.","subtitle":"Gere respostas de IA usando modelos de linguagem integrados, prompts, arquivos e saÃdas estruturadas.","longDescription":"Use um modelo de linguagem para gerar respostas a partir de prompts. Esta integração pode retornar saÃdas JSON estruturadas, analisar imagens, usar anexos de arquivo como contexto e realizar buscas na web quando necessário. Pode ser usada para alimentar agentes, workflows e outros recursos impulsionados por IA no seu app.","examplePrompt0":"Gere respostas de IA a partir da entrada do usuário usando Invocar LLM e mostre a resposta nesta página.","examplePrompt1":"Use Invocar LLM para resumir mensagens longas de feedback em três insights armazenados em cada registro de Feedback.","examplePrompt2":"Adicione um recurso \\"reescrever este texto\\" que envia o texto do usuário para Invocar LLM e retorna uma versão mais clara e amigável.","examplePrompt3":"Use Invocar LLM para classificar cada ticket de suporte como \\"bug\\", \\"solicitação de recurso\\" ou \\"pergunta\\" e salvar o rótulo no registro do ticket."},"generateImage":{"name":"Gerar imagem","rowDescription":"Crie imagens a partir de prompts de texto detalhados. Retorna uma URL para a imagem gerada.","subtitle":"Simplesmente forneça um prompt de texto descrevendo a imagem desejada, e ele retorna uma URL para a imagem gerada.","longDescription":"Gere imagens usando IA a partir de prompts de texto ou fluxos no seu app. Esta integração permite que seu app crie imagens de capa, miniaturas, avatares, placeholders de produto ou visuais de marketing simples sob demanda sem conectar a um provedor de imagens externo.","examplePrompt0":"Use Gerar imagem para criar uma imagem de produto padrão quando um novo produto é adicionado sem fotos.","examplePrompt1":"Adicione um recurso onde os usuários podem inserir uma descrição curta e Gerar imagem retorna uma URL de imagem de capa salva na publicação.","examplePrompt2":"Crie um fluxo que use Gerar imagem para gerar imagens de avatar para novos usuários com base na cor ou tema favorito."},"extractData":{"name":"Extrair dados de arquivos enviados","rowDescription":"Extraia dados estruturados de arquivos enviados (CSV, PNG, JPG, JPEG, PDF) usando esquemas JSON. Útil para importação de dados em massa.","subtitle":"Extraia dados estruturados de arquivos enviados (CSV, PNG, JPG, JPEG, PDF) usando esquemas JSON. Útil para importação de dados em massa.","longDescription":"Extraia automaticamente dados estruturados de arquivos enviados ao seu app e armazene-os nas suas entidades. Esta integração lê documentos e planilhas e transforma seu conteúdo em campos estruturados que você pode usar em registros, relatórios ou automações.","examplePrompt0":"Quando alguém fizer upload de uma fatura PDF, use Extrair dados para obter o fornecedor, valor total e data de vencimento em uma entidade de Faturas.","examplePrompt1":"Use Extrair dados para ler um CSV de contatos e criar um registro de contato por linha.","examplePrompt2":"Depois que um usuário fizer upload de uma imagem de recibo, use Extrair dados para extrair o comerciante, data e itens em um registro estruturado de Despesas."},"whatsapp":{"name":"WhatsApp","rowDescription":"Conecte seu agente ao WhatsApp para que as pessoas possam enviar mensagens ao agente do seu app diretamente do celular, sem abrir o app.","subtitle":"Conecte seu agente ao WhatsApp para que as pessoas possam enviar mensagens ao agente do seu app diretamente do celular, sem abrir o app.","longDescription":"Conecte seu agente ao WhatsApp para que as pessoas possam enviar mensagens ao agente do seu app diretamente do celular. Use esta integração para lidar com suporte, coletar dados ou enviar atualizações pelo WhatsApp enquanto o agente acessa os dados e workflows do seu app nos bastidores.","examplePrompt0":"Conecte meu agente de suporte ao WhatsApp para que os clientes possam fazer perguntas lá e o agente responda usando o conhecimento do meu app.","examplePrompt1":"Configure um fluxo do WhatsApp onde novas mensagens criem ou atualizem registros na minha entidade de Contatos e o agente confirme os detalhes.","examplePrompt2":"Quando o status de um pedido mudar para \\"enviado\\", faça o agente enviar uma mensagem no WhatsApp com o link de rastreamento e informações-chave do pedido."}}}'),d5={title:"Conectores para usuários do app",description:"Configure conectores para que os usuários do app possam vincular suas contas pessoais.",manage:"Gerenciar"},u5={connections:o5,integrations:s5,skillsBanner:l5,oauthConnectors:c5,oauthConnectorsBanner:d5},p5={importSuccessful:"Importação bem-sucedida",importSuccessfulMsg:"{{count}} registros de {{name}} importados com sucesso",importFailed:"Falha na importação",exportSuccessful:"Exportação bem-sucedida",exportSuccessfulMsg:"Entidades exportadas para CSV com sucesso",exportFailed:"Falha na exportação",moveAllToTrash:"Mover todos os registros para a lixeira",moveAllToTrashConfirm:"Tem certeza que deseja mover todos os registros para a lixeira? Você poderá restaurá-los depois da lixeira.",moveToTrash:"Mover para a lixeira",success:"Sucesso",allMovedToTrash:"Todos os registros foram movidos para a lixeira com sucesso",error:"Erro",add:"Adicionar",addItem:"Adicionar item",import:"Importar",export:"Exportar",schema:"Esquema",recentlyDeleted:"ExcluÃdos recentemente",deleteAll:"Excluir tudo",permissions:"Permissões",permissionsDesc:"Crie regras para controlar quem pode ler e gravar registros. Múltiplas regras são combinadas com lógica OU.",saveRules:"Salvar Regras",permissionsIssueDetected:"Problema de permissões detectado",learnMoreAboutPermissions:"<a>Saiba mais <icon/></a> sobre permissões e regras de segurança",customize:"Personalizar",apply:"Aplicar",checkingPermissions:"Verificando segurança de permissões",failedCheckPermissions:"Falha ao verificar permissões",permissionsCheckPassed:"Verificação de permissões aprovada",recommendedRules:"Regras recomendadas",editRecord:"Editar {{entity}}",addNewRecord:"Adicionar novo {{entity}}",test:"Teste",production:"Produção",filters:"Filtros",schemaEditor:"Editor de esquema",noRecordsFound:"Nenhum registro encontrado",getStartedAdding:"Comece adicionando seu primeiro registro.",loadingEntity:"Carregando {{entity}}..."},m5={production:"Produção",test:"Teste"},g5={back:"Voltar",trashTitle:"{{entity}}: Lixeira",test:"(Teste)",production:"(Produção)",trashDescription:`Visualize, restaure ou exclua permanentemente itens.
Itens são excluÃdos permanentemente após 30 dias.`,permanentlyDelete:"Excluir registro permanentemente",permanentlyDeleteConfirm:"Tem certeza que deseja excluir permanentemente este registro? Esta ação não pode ser desfeita.",deletePermanently:"Excluir permanentemente",restoreSelected:"Restaurar registros selecionados",restoreSelectedConfirm:"Tem certeza que deseja restaurar {{count}} registro(s) selecionado(s)?",restore:"Restaurar",restoreAll:"Restaurar todos os registros",restoreAllConfirm:"Tem certeza que deseja restaurar todos os registros da lixeira?",restoreAllBtn:"Restaurar tudo",deletedDate:"Data de exclusão",actions:"Ações",failedToLoad:"Falha ao carregar registros excluÃdos",tryAgain:"Tentar novamente",loadingDeleted:"Carregando registros excluÃdos...",noDeletedRecords:"Nenhum registro excluÃdo encontrado",restoreCount:"Restaurar {{count}} selecionado(s)",restoring:"Restaurando..."},h5={data:p5,toolbar:m5,trash:g5},f5=JSON.parse(`{"title":"DomÃnios","subtitle":"Compre, conecte e gerencie seus domÃnios.","learnMore":"Saiba mais","expired":"Expirou há {{days}} dias","expiresIn":"Expira em {{days}} dias","lastChecked":"Última verificação: {{time}}","domainLinked":"DomÃnio vinculado","domainLinkedMsg":"O domÃnio foi vinculado ao seu projeto","errorLinkingDomain":"Erro ao vincular domÃnio","linking":"Vinculando...","linkDomain":"Vincular domÃnio","checkStatus":"Verificar status","checking":"Verificando...","verifyDomain":"Verificar","verifying":"Verificando...","unlinkDomain":"Desvincular domÃnio","unlinking":"Desvinculando...","unlinked":"Desvinculado","domainActive":"DomÃnio ativo","waitingDns":"Aguardando propagação DNS","verified":"Verificado","error":"Erro","pending":"Pendente","domainUnlinked":"DomÃnio desvinculado","domainUnlinkedMsg":"O domÃnio foi desvinculado do seu projeto","errorUnlinkingDomain":"Erro ao desvincular domÃnio","domainDeleted":"DomÃnio excluÃdo","errorDeletingDomain":"Erro ao excluir domÃnio","errorCheckingStatus":"Erro ao verificar status","verificationInitiated":"Verificação iniciada","checkBackMinutes":"Por favor, verifique novamente em alguns minutos","errorVerifyingDomain":"Erro ao verificar domÃnio","deleteDomain":"Excluir domÃnio","deleteConfirm":"Tem certeza que deseja excluir?","deleting":"Excluindo...","unlinkDialogDescription":"Este domÃnio foi comprado através do Base44.\\n\\nEle permanecerá listado nos seus domÃnios, mas não estará mais conectado ao seu projeto.","wantToUseDomain":"Quer usar seu domÃnio?","customDomainsAvailable":"DomÃnios personalizados estão disponÃveis no plano Builder e superior.<br/>Atualize para conectar seu domÃnio a este aplicativo.","viewPlans":"Ver planos","getNewDomain":"Obter um novo domÃnio","getNewDomainDescription":"Dê ao seu aplicativo uma aparência profissional com um domÃnio único.","suggestedForApp":"Sugerido para seu aplicativo: <bold>{{domain}}</bold>","suggestedForApp_prefix":"Sugerido para seu aplicativo:","buyNewDomain":"Comprar novo domÃnio","buyAnother":"Comprar outro","buyThisDomain":"Comprar este domÃnio","orConnectExisting":"Ou conecte um domÃnio existente que você já possui","connectExistingDomain":"Conectar domÃnio existente","getYourCustomDomain":"Obtenha seu domÃnio personalizado","upgradeDescription":"DomÃnios personalizados estão disponÃveis no plano Builder e superior.","upgradeYourPlan":"Atualize seu plano","processing":"Processando...","loading":"Carregando...","domainLimitReached":"Limite de domÃnios atingido","domainLimitMsg":"Você atingiu o máximo de {{max}} domÃnios para este aplicativo ({{current}}/{{max}}).\\nPor favor, remova alguns domÃnios antes de adicionar novos.","noCustomDomainYet":"Você ainda não conectou um domÃnio personalizado","connectDescription":"Conecte seu aplicativo Base44 ao seu próprio domÃnio para destacar sua marca e facilitar a localização e o compartilhamento do seu aplicativo.","buyDomain":"Comprar domÃnio","neverExpires":"Nunca expira","editUrl":"Editar URL","domainPurchased":"DomÃnio comprado!","domainPurchasedMsg":"Seu domÃnio {{domain}} foi comprado com sucesso. Aguardando sua aparição nos seus domÃnios...","domainPurchaseFailed":"Falha na compra do domÃnio","purchaseFailedMsg":"Falha na compra de {{domain}}.","domainLimitReachedToast":"Limite de domÃnios atingido","domainLimitToastMsg":"Você pode ter até {{max}} domÃnios por aplicativo. Por favor, remova alguns domÃnios primeiro.","domainAddedSuccessfully":"DomÃnio adicionado com sucesso.","verifyToComplete":"Por favor, verifique seu domÃnio para concluir a configuração.","failedToConnect":"Falha ao conectar seu domÃnio","connectYourDomain":"Conectar","builtInDomain":"URL integrada","customDomains":"DomÃnios personalizados","adminCanAdd":"Admin: pode adicionar qualquer domÃnio","domainDisabled":"DomÃnio desativado","domainEnabled":"DomÃnio ativado","domainDisabledMsg":"O domÃnio foi desativado e não servirá mais tráfego.","domainEnabledMsg":"O domÃnio foi reativado e voltará a servir tráfego.","errorTogglingDomain":"Erro ao alternar o domÃnio","disabledBadge":"Desativado","enableDomain":"Ativar","disableDomain":"Desativar","enableDomainTitle":"Ativar domÃnio (admin)","disableDomainTitle":"Desativar domÃnio (admin)","errorFetchingDomains":"Erro ao buscar domÃnios","cancel":"Cancelar","cannotPurchase":"Não é possÃvel comprar domÃnio","domainPurchaseDisabled":"A compra de domÃnios está atualmente desativada","entriNotReady":"O Entri ainda não está pronto. Por favor, tente novamente em um momento.","errorPurchasingDomain":"Erro ao comprar domÃnio","loadingEntri":"Carregando Entri...","addNewDomain":"Adicionar novo domÃnio","enterDomainFormat":"Digite o nome do seu domÃnio abaixo. Certifique-se de que segue o formato: app.example.com","enterDomainPlaceholder":"Digite o domÃnio (ex.: app.example.com)","invalidDomain":"Isso não parece um domÃnio válido.\\nDigite um domÃnio válido, ex.: example.com ou app.example.com.","domainAlreadyConnected":"Este domÃnio já está conectado ao seu aplicativo.","configureDnsAtRegister":"Configurar DNS no registrador","addDomain":"Adicionar domÃnio","adding":"Adicionando...","domainConnectionNeeded":"Conexão de domÃnio necessária","retryFromEmailSettings":"Por favor, tente novamente nas configurações de domÃnio de e-mail.","emailDomainSubmitted":"DomÃnio de e-mail enviado.","addDnsRecords":"Por favor, adicione os registros DNS no seu provedor de domÃnio.","verificationMayTake48h":"A verificação pode levar até 48 horas.","senderDetailsUpdated":"Detalhes do remetente atualizados.","editSenderDetails":"Editar detalhes do remetente","setSenderDetails":"Defina seus detalhes de remetente","saveChanges":"Salvar alterações","connectDomain":"Conectar domÃnio","saving":"Salvando...","connecting":"Conectando...","usersWillGetEmails":"Seus usuários receberão e-mails com esses detalhes de remetente.","senderName":"Nome do remetente","customAddress":"Endereço personalizado","noReply":"no-reply","noReplyEmailAddress":"no-reply@base44-apps.com","domain":"DomÃnio","copyToClipboard":"Copiar para a área de transferência","addCnameRecord":"Adicionar registro CNAME: ","wwwToDomain":"www → base44.onrender.com","addAnameRecord":"Adicionar registro ANAME/ALIAS: ","emptyOrAtDomain":"vazio ou @ → base44.onrender.com","ifNoAnameSupport":"Se seu provedor DNS não suporta ANAME/ALIAS, use um registro A:","aRecordIp":"@ → 216.24.57.1","removeAaaaRecords":"Remova todos os registros AAAA do seu domÃnio durante a configuração DNS. Registros AAAA mapeiam para um endereço IPv6, e o Base44 usa IPv4. Esses registros podem causar comportamento inesperado no seu domÃnio personalizado.","dnsChangesNote":"Por favor, note que após adicionar registros DNS, pode levar algum tempo para as alterações se propagarem pela internet. Durante esse tempo, o domÃnio pode não funcionar corretamente.","addDnsRecordsFor":"1. Adicione estes registros DNS no seu provedor de domÃnio para ","type":"Tipo","nameColumn":"Nome","hostColumn":"Host","tabAnameAlias":"ANAME/ALIAS","tabARecord":"Registro A","addRecordsStepIntro":"Adicione estes registros no painel do seu provedor para concluir a configuração:","removeAaaaShort":"Remova os registros AAAA (IPv6), pois eles podem bloquear conexões.","customDomainStep2Verify":"Depois de atualizar todos os registros no painel do seu provedor, clique em «<bold>Verificar domÃnio</bold>». As alterações de DNS podem levar até 48–78 horas para propagar.","closeModal":"Fechar","verifyDomainButton":"Verificar domÃnio","dnsTargetFallback":"base44.onrender.com","value":"Valor","onceConfiguredVerify":"2. Uma vez configurado, clique em '<bold>Verificar</bold>' no cartão de domÃnio de e-mail para verificar a configuração. As alterações DNS podem levar até 48-78 horas para se propagar.","emailDnsChangesNote":"Por favor, note que após adicionar registros DNS, as alterações podem levar até 48 horas para se propagar. Durante esse tempo, os e-mails serão enviados do endereço de e-mail atual.","configureDnsForEmail":"Configurar DNS para domÃnio de e-mail","connectDomainDns":"Conecte seu domÃnio através do seu provedor DNS","followInstructions":"Siga as instruções abaixo para configurar os registros DNS.","addRecordsInProvider":"Adicione estes registros no painel do seu provedor para concluir a configuração.","done":"ConcluÃdo","needHelp":"Precisa de ajuda? Crie um chamado em ","supportSystem":"sistema de suporte","urlUpdated":"URL atualizada","customUrlRemoved":"URL personalizada removida. Seu aplicativo agora está disponÃvel em {{url}}","appAvailableAt":"Seu aplicativo agora está disponÃvel em {{url}}","urlAlreadyTaken":"Esta URL já está em uso. Experimente uma das sugestões abaixo ou insira outra URL.","urlAlreadyTakenNoSuggestions":"Esta URL já está em uso. Por favor, tente outra URL.","suggestedAlternatives":"Alternativas disponÃveis:","urlReserved":"Esta URL é reservada. Por favor, tente outra.","urlInvalid":"Esta URL é inválida. Por favor, tente outra.","slugInvalidClient":"Esta URL é inválida. Use apenas letras minúsculas, números e hÃfenes.","slugResetToDefault":"Slug redefinido para o padrão","errorResettingSlug":"Erro ao redefinir slug","failedResetSlug":"Falha ao redefinir para slug padrão","editUrlTitle":"Editar URL","builtInDomainLabel":"URL integrada Base44","resetToDefault":"Redefinir para padrão","urlEditingRequiresPlan":"A edição de URL requer um plano starter. ","upgradeToPremium":"Atualizar para Premium","changing":"Alterando...","change":"Alterar","emailDomain":"DomÃnio de e-mail","sendingFromDefault":"Enviar do domÃnio padrão custa 1 crédito de integração por e-mail. Usar um domÃnio personalizado custa 2 créditos de integração.","useCustomDomain":"Use seu domÃnio personalizado","sendingFrom":"Nome do remetente: {{name}}","connectDomainForCustom":"Conecte um domÃnio para usar um endereço de remetente personalizado.","buyADomain":"Comprar um domÃnio","dnsConfiguration":"Configuração DNS","pleaseWaitTryAgain":"Por favor, aguarde um momento e tente novamente.","dnsConfigFailed":"Falha na configuração DNS","dnsPleaseTryLater":"Por favor, tente novamente mais tarde.","verificationFailed":"Falha na verificação","dnsNotVerified":"Os registros DNS ainda não foram verificados. Por favor, verifique sua configuração DNS e tente novamente.","domainVerificationFailed":"Falha na verificação do domÃnio","couldntVerifyDns":"Não foi possÃvel verificar seus registros DNS. Por favor, verifique-os e tente novamente.","completeSetup":"Concluir configuração","opening":"Abrindo...","cancelling":"Cancelando...","connectionFailed":"Falha na conexão","retry":"Tentar novamente","retrying":"Tentando novamente...","couldntCompleteDns":"Não foi possÃvel concluir a configuração DNS. Por favor, tente novamente.","couldntConnectEmail":"Não foi possÃvel conectar o domÃnio ao provedor de e-mail. Por favor, tente novamente.","pendingVerification":"Verificação pendente","emailBeingVerified":"Seu endereço de e-mail está sendo verificado.","makeSureDnsCorrect":"Certifique-se de que os registros DNS foram adicionados corretamente ao seu provedor de domÃnio.","verify":"Verificar","notConfigured":"Não configurado","active":"Ativo","editSenderDetailsAction":"Editar detalhes do remetente","detachCustomDomain":"Desconectar domÃnio personalizado","suspended":"Suspenso","disabled":"Desativado","blocked":"Bloqueado","propagationBlocked":"Propagação bloqueada","propagationBlockedTooltip":"A propagação DNS pode demorar. Compare os seus registos DNS com as nossas instruções se algo ainda estiver incorreto.","pendingConnection":"Conexão pendente","completeSetupToSend":"Conclua a configuração para começar a enviar e-mails do seu domÃnio. Os e-mails são atualmente enviados de ","emailCurrentlySentFrom":"Seu endereço de e-mail está sendo verificado. Os e-mails são atualmente enviados de ","dnsNotVerifiedYet":"Os registros DNS ainda não foram verificados. Certifique-se de que estão configurados corretamente e clique em 'Verificar'.","couldntConnectMakeSure":"Não foi possÃvel conectar o domÃnio ao provedor de e-mail. Certifique-se de que os registros DNS foram adicionados corretamente ao seu provedor de domÃnio e tente novamente.","base44Domain":"DomÃnio Base44","maxDomainsReached":"Máximo de {{max}} domÃnios atingido para este aplicativo","viewDnsRecords":"Ver registros DNS","upgradeBannerText":"DomÃnios personalizados requerem um plano Builder ou superior. Atualize para ativá-los.","upgradeToUseDomain":"Atualize seu plano para usar este domÃnio.","emailDomainPurchasedOnly":"A configuração do domÃnio de e-mail está disponÃvel atualmente apenas para domÃnios adquiridos através do Base44.","save":"Salvar","urlHint":"Use apenas letras minúsculas, números e hÃfens","copyUrl":"Copiar URL","builtInUrlTooltip":"Seu aplicativo estará sempre disponÃvel nesta URL.","builderPlanRequired":"Este recurso está disponÃvel no plano Builder e superior.","somethingWentWrong":"Algo deu errado","failedToGetPurchaseConfig":"Falha ao obter configuração de compra","errorEnablingEmail":"Erro ao ativar e-mail","failedToEnableEmail":"Falha ao ativar e-mail","errorUpdatingSenderDetails":"Erro ao atualizar detalhes do remetente","failedToUpdateSenderDetails":"Falha ao atualizar detalhes do remetente","errorReplacingDomain":"Erro ao substituir domÃnio","failedToReplaceDomain":"Falha ao substituir domÃnio","failedToAddDomain":"Falha ao adicionar domÃnio","processingPurchase":"Processando compra...","subscriptionRequired":"Assinatura necessária"}`),v5={domains:f5},b5={title:"Explorador de logs",subtitle:"Monitore os logs do sistema no seu aplicativo.",refresh:"Atualizar",loadingLogs:"Carregando logs...",pleaseWait:"Por favor, aguarde enquanto buscamos seus logs",failedToLoad:"Falha ao carregar logs",errorFetching:"Ocorreu um erro ao buscar os logs. Por favor, tente novamente.",noLogsMatchFilters:"Nenhum log corresponde aos seus filtros",tryAdjusting:"Tente ajustar seus filtros",noLogsFound:"Nenhum log encontrado",logsWillAppear:"Os logs aparecerão aqui quando houver atividade",tryAgain:"Tentar novamente",resetFilters:"Redefinir filtros",details:"Detalhes",outputs:"SaÃdas",errorTab:"Erro",noAdditionalDetails:"Nenhum detalhe adicional disponÃvel.",clearFilters:"Limpar filtros",filterByEmail:"Filtrar por e-mail...",errorsOnly:"Apenas erros",allEvents:"Todos os eventos",typeColumn:"Tipo",userColumn:"Usuário",timestamp:"Data/hora"},y5={title:"Análises",publishToCollect:"Publique seu aplicativo para começar a coletar dados."},k5={title:"Documentação API",subtitle:"Referência completa da API do seu aplicativo. Use a especificação OpenAPI com qualquer cliente API ou ferramenta de documentação.",downloadSpec:"Baixar especificação OpenAPI",copyForLLM:"Copiar para IA",copyForLLMTooltip:"Copiar documentação Markdown amigável para IA para a área de transferência",copied:"Copiado!",codeExamplesIn:"Exemplos de código em:",authTitle:"Autenticação",authDescription:"Todas as requisições API requerem um cabeçalho api_key. Você pode encontrar sua chave API no seu perfil de usuário, ou recuperá-la programaticamente via User.me() no SDK do aplicativo.",sdkAuthDescription:"Instale o SDK Base44 e inicialize o cliente com o ID do seu app. O SDK gerencia a autenticação e fornece métodos tipados para todas as operações de entidades e funções backend.",entitiesTitle:"Endpoints de Entidades",schema:"Schema",endpoints:"Endpoints",copyAll:"Copiar tudo",copyEntity:"Copiar entidade",functionsTitle:"Funções Backend",functionsDescription:"Invoque suas funções backend implantadas via HTTP. Cada função aceita qualquer payload JSON e retorna a resposta da função.",agentTitle:"Agente do App",agentDescription:"Interaja com o agente de IA do seu app através de conversas. Crie uma conversa, envie mensagens e receba respostas do agente.",copy:"Copiar",parameters:"Parâmetros",loading:"Carregando documentação da API...",error:"Falha ao carregar a documentação da API. Tente novamente."},w5={logs:b5,analytics:y5,api:k5},A5={error:"Erro",appStillLoading:"O aplicativo ainda está carregando... nome não atualizado",appNameEmpty:"O nome do aplicativo não pode estar vazio",removedFromFavorites:"Removido dos favoritos",addedToFavorites:"Adicionado aos favoritos",removedDescription:"Aplicativo removido da sua lista de favoritos",addedDescription:"Aplicativo adicionado à sua lista de favoritos",descriptionUpdated:"Descrição atualizada",descriptionUpdatedMsg:"A descrição do seu aplicativo foi atualizada com sucesso",failedUpdateDescription:"Falha ao atualizar a descrição do aplicativo",openApp:"Abrir aplicativo",shareApp:"Compartilhar aplicativo",winFreeCredits:"ganhe créditos gratuitos!",appVisibility:"Visibilidade do aplicativo",controlAccess:"Controle quem pode acessar seu aplicativo",inviteUsers:"Convidar usuários",growUserBase:"Aumente sua base de usuários convidando outras pessoas",copyLink:"Copiar link",copied:"Copiado!",sendInvites:"Enviar convites",paymentsViaStripe:"Pagamentos via Stripe",pendingSetup:"Configuração pendente",completeSetupGuide:"Conclua o guia de configuração para aceitar pagamentos reais",live:"Ativo",testModeMessage:"Você ainda está no modo de teste. Conclua a configuração para começar a receber pagamentos.",readyForPayments:"Seu aplicativo está pronto para aceitar pagamentos via Stripe.",continueSetup:"Continuar configuração",payments:"Pagamentos",poweredByWix:"Desenvolvido por Wix",manage:"Gerenciar",openingWixPayments:"Abrindo o Wix Payments...",wixPaymentsErrors:{noUrl:"Falha ao obter a URL do Wix Payments. Tente novamente.",fetchFailed:"Falha ao abrir o Wix Payments. Tente novamente.",invalidRedirect:"Falha ao abrir o Wix Payments. Tente novamente."},disconnected:"Desconectado",wixPaymentsDashboardError:"Falha ao abrir painel do Wix Payments",platformBadge:"Selo da plataforma",badgeVisible:'O selo "Editar com Base44" está atualmente visÃvel no seu aplicativo.',hideBadge:"Ocultar selo",editAppNameAccessibilityLabel:"Editar tÃtulo",editAppDescription:"Editar descrição do aplicativo",descriptionPrompt:"Forneça uma breve descrição do propósito e funcionalidades do seu aplicativo.",describeYourApp:"Descreva seu aplicativo...",cancel:"Cancelar",save:"Salvar",created:"Criado {{time}}"},S5={overview:A5},C5={title:"Segurança do aplicativo",subtitle:"Configure polÃticas de segurança em nÃvel de linha para controlar quem pode acessar os dados do seu aplicativo",scanIssues:"Verificar problemas",scanTime:"A verificação geralmente leva alguns minutos",scanning:"Verificando",startSecurityCheck:"Iniciar verificação de segurança",scanResults:"Resultados da verificação",rlsRecommendations:"Recomendações RLS",rlsRecommendationsFound:"{{count}} recomendação(ões) RLS encontrada(s),",viewRecommendations:"Ver recomendações",noRlsRecommendations:"Nenhuma recomendação RLS encontrada",secrets:"Segredos",exposedSecretsFound:"{{count}} segredos expostos encontrados",noExposedSecrets:"Nenhum segredo exposto encontrado",backendFunctions:"Funções backend",unauthenticatedFunctions:"{{count}} funções backend não autenticadas encontradas",noUnauthenticatedFunctions:"Nenhuma função backend não autenticada encontrada",dataEntities:"Entidades de dados",entitiesCount:"{{count}} entidades",scanComplete:"Verificação de segurança concluÃda",reviewFindings:"Revise os resultados abaixo.",scanFailed:"Falha na verificação de segurança",ruleSaved:"Regra salva para {{entity}}",ruleSavedMsg:"A regra recomendada foi salva.",failedToSaveRule:"Falha ao salvar regra",createAccess:"Acesso de criação",readAccess:"Acesso de leitura",updateAccess:"Acesso de atualização",deleteAccess:"Acesso de exclusão",removeAllRules:"Remover todas as regras de segurança",removeAllRulesConfirm:"Isso removerá todas as regras de segurança desta entidade, permitindo que todos os usuários acessem todos os registros. Tem certeza que deseja continuar?",removeAllRulesBtn:"Remover todas as regras",securityRules:"Regras de segurança: {{entity}}",securityRulesTitle:"Regras de segurança",securityRulesDesc:"Crie regras para controlar quem pode ler e gravar registros. Múltiplas regras são combinadas com lógica OU.",publicAccess:"Acesso público",publicAccessDesc:"Atualmente todos os usuários podem acessar todos os registros desta entidade. Não há restrições de acesso.",createAccessRules:"Criar regras de acesso",create:"Criar",read:"Ler",update:"Atualizar",deleteAction:"Excluir",crudRules:"Regras de {{crud}}",addRule:"Adicionar regra",generatedRules:"Regras de {{crud}} geradas (JSON)",saveSecurityRules:"Salvar regras de segurança",crudAccessRules:"Regras de acesso de {{crud}}",configurePermissions:"Configurar permissões para cada ação",generatedJsonPreview:"JSON Gerado (Pré-visualização)",saveRules:"Salvar Regras",rlsRecommendation:"Recomendação RLS",dismiss:"Ignorar",applyFixes:"Aplicar correções",restricted:"Restrito",public:"Público",fullAccess:"Todos os usuários têm acesso completo",createLabel:"Criar:",readLabel:"Ler:",updateLabel:"Atualizar:",deleteLabel:"Excluir:",noRestrictions:"Sem restrições",allUsersCanAccess:"Todos os usuários podem acessar registros",creatorOnly:"Apenas criador",creatorOnlyDesc:"Usuários só podem acessar registros que criaram",entityUserComparison:"Comparação entidade-usuário",entityUserComparisonDesc:"Comparar um campo desta entidade com uma propriedade do usuário",entityField:"Campo da entidade",fieldInEntity:"Campo na entidade a comparar",userField:"Campo do usuário",fieldFromUser:"Campo do usuário a comparar",userPropertyCheck:"Verificação de propriedade do usuário",userPropertyCheckDesc:"Verificar se uma propriedade do usuário corresponde a um valor especÃfico",userProperty:"Propriedade do usuário",selectUserProperty:"Selecionar propriedade do usuário",userRole:"Função do usuário",userEmail:"E-mail do usuário",fullName:"Nome completo",requiredValue:"Valor necessário",selectRole:"Selecionar função",adminRole:"Administrador",userRoleOption:"Usuário",noRestrictionsLabel:"Sem restrições",creatorOnlyLabel:"Apenas criador",adminOnlyLabel:"Apenas administrador",filePath:"Arquivo: {{path}}",severityCritical:"CrÃtico",severityHigh:"Alto",securityScanLabel:"Verificação de Segurança",upToDate:"Atualizado",upToDateTooltip:"Nenhuma alteração que afete a segurança foi feita desde a última verificação",outOfDate:"Desatualizado",outOfDateTooltip:"Alterações que afetam a segurança foram feitas desde a última verificação. Execute uma nova verificação de segurança.",runSecurityScan:"Executar Verificação de Segurança",securityPageTitle:"Segurança",securityPageSubtitle:"Gerencie suas permissões e regras de segurança. <a>Saiba mais <icon/></a>",issuesDetails:"Detalhes dos problemas",rlsIssuesTitle_one:"{{count}} Problema de RLS",rlsIssuesTitle_other:"{{count}} Problemas de RLS",rlsIssuesSubtitle:"Ative a segurança em nÃvel de linha para proteger seus dados",exposedSecretsTitle_one:"{{count}} Segredo Exposto",exposedSecretsTitle_other:"{{count}} Segredos Expostos",exposedSecretsSubtitle:"Proteja e rotacione quaisquer segredos expostos para manter sua aplicação e dados seguros.",unauthBackendTitle_one:"{{count}} Função Backend Não Autenticada",unauthBackendTitle_other:"{{count}} Funções Backend Não Autenticadas",unauthBackendSubtitle:"Proteja endpoints de tarefas backend com autenticação.",noIssuesFound:"Nenhum problema encontrado. A segurança do seu app parece boa, mas continue verificando regularmente para manter-se protegido.",recommendedRulesLabel:"Regras recomendadas:",fix:"Corrigir",fixAll:"Corrigir Tudo",missingRlsRules:"{{entity}} não possui regras RLS",customizeSuggestion:"Personalizar sugestão",goToEntityPage:"Ir para a página da entidade",ruleColumnHeader:"Regra",allUsers:"Todos os usuários",fieldComparison:"Comparação de Campo",noScanTitle:"Verifique a segurança do seu app",noScanDescription:"Revise sua configuração, identifique riscos potenciais e aprenda como fortalecer a proteção do seu app",checkSecurity:"Verificar segurança",back:"Voltar",cancel:"Cancelar"},D5={title:"Segredos do aplicativo",secretDeleted:"Segredo excluÃdo",errorDeletingSecret:"Erro ao excluir segredo",secretUpdated:"Segredo atualizado",errorUpdatingSecret:"Erro ao atualizar segredo",newSecretValue:"Novo valor do segredo",save:"Salvar",cancel:"Cancelar",addSecret:"Adicionar segredo",addNewSecret:"Adicionar novo segredo",addNewSecretDescription:"Digite o nome e o valor do seu segredo abaixo. Os segredos são criptografados e armazenados com segurança.",secretName:"Nome do segredo",secretNamePlaceholder:"Digite o nome do segredo (ex.: API_KEY)",secretNameNoSpaces:"O nome do segredo não pode conter espaços. Use sublinhados (ex.: API_KEY).",secretValue:"Valor do segredo",secretValuePlaceholder:"Digite o valor do segredo",adding:"Adicionando...",aboutSecretsManagement:"Sobre o gerenciamento de segredos",secretsDescription:"Segredos são variáveis de ambiente que contêm informações sensÃveis como chaves de API, tokens e senhas. Eles são criptografados em repouso e injetados com segurança no seu aplicativo em tempo de execução.",secretsBullet1:"Os segredos são usados pelas suas funções backend para acessar serviços externos",secretsBullet2:"Todos os segredos são criptografados e armazenados com segurança",secretsBullet3:"Você pode adicionar, atualizar ou excluir segredos conforme necessário para seu aplicativo",needHelp:"Precisa de ajuda?",supportSystem:"Abra um chamado de suporte",configuredSecrets:"Segredos configurados",noSecretsYet:"Nenhum segredo configurado ainda. Adicione seu primeiro segredo para começar.",secretAddedSuccessfully:"Segredo adicionado com sucesso",errorCreatingSecret:"Erro ao criar segredo",errorFetchingSecrets:"Erro ao buscar segredos"},T5={security:C5,secrets:D5},E5={mainPage:"Página principal",mainPageDesc:"Defina a página inicial padrão do seu aplicativo",selectMainPage:"Selecionar página principal",appVisibility:"Visibilidade do aplicativo",controlAccess:"Controle quem pode acessar seu aplicativo",platformBadge:"Selo da plataforma",platformBadgeDesc:'Mostrar ou ocultar o selo "Editar com Base44" no seu aplicativo.',onlyForPaying:"DisponÃvel apenas para usuários pagos.",upgradeNow:"Atualizar agora",visible:"VisÃvel",hidden:"Oculto",hideEntityCreator:"Ocultar criador de entidade",hideEntityCreatorDesc:'Ocultar quem criou cada registro nas tabelas de dados do seu aplicativo. Quando habilitado, o campo "criado por" não será exibido aos usuários.',aiAgents:"Agentes IA",aiAgentsDesc:"Integre agentes IA no seu aplicativo usando a infraestrutura de agentes IA do Base44",aiAgentsEnabled:"Agentes IA habilitados",aiAgentsEnabledDesc:"Seu aplicativo agora tem acesso à infraestrutura de agentes IA do Base44. Você pode criar agentes inteligentes que podem ajudar os usuários com várias tarefas, responder perguntas e interagir com os dados do seu aplicativo. Use o chat para criar e configurar seus agentes.",testData:"Dados de teste",testDataDesc:"Use dados de teste para testar alterações com segurança sem afetar dados em produção.",onlyForBuilder:"DisponÃvel apenas para o plano Builder e superior.",testDataVersionNote:"Para usar isso, você precisará de uma versão mais recente do seu aplicativo. Apenas faça uma alteração — envie uma mensagem à IA, modifique o código ou use o editor visual — e está pronto.",cloneApp:"Clonar aplicativo",cloneAppDesc:"Criar uma cópia deste aplicativo",githubConnectionIssue:"Problema de conexão com GitHub. Por favor, reconecte para clonar este aplicativo.",cantCloneOldInfra:`Você não pode clonar um aplicativo na infraestrutura antiga.
Atualize a infraestrutura para clonar seu aplicativo.`,createCopy:"Criar cópia",backendFunctions:"Funções backend",backendFunctionsDesc:"Habilitar funcionalidade do lado do servidor • Recomendado para desenvolvedores",activating:"Ativando...",activated:"Ativado",activate:"Ativar",upgradePlan:"Atualizar plano",dangerZone:"Zona de perigo",dangerZoneDesc:"Ações irreversÃveis que afetam seu aplicativo",deleteApp:"Excluir aplicativo",deleteAppDesc:"Remover permanentemente este aplicativo e todos os seus dados",adminControls:"Controles de administrador",adminControlsDesc:"Gerenciar disponibilidade do aplicativo",unblockApp:"Desbloquear aplicativo",blockApp:"Bloquear aplicativo",appLogo:"Logo do aplicativo",editLogo:"Editar logo",appDescription:"Descrição do aplicativo",saveDescription:"Salvar descrição",describeYourApp:"Descreva seu aplicativo..."},P5={editAppLogo:"Editar logo do aplicativo",uploadLogo:"Enviar logo",generateLogo:"Gerar logo",dragAndDrop:"Arraste e solte ou clique para enviar",clickToUpload:"Clique para enviar ou arraste e solte",pngJpgLimit:"PNG, JPG até 5MB",upload:"Enviar",whatShouldLook:"Como deve ser a aparência do seu logo?",generating:"Gerando...",generateNew:"Gerar novo logo",cancel:"Cancelar",save:"Salvar",logoPrompt:"Prompt de geração do logo",describeLogo:"Descreva como você quer que seu logo pareça",uploading:"Enviando...",selectImage:"Selecionar imagem"},_5={removeListingConfirm:"Tem certeza que deseja remover esta listagem? Esta ação a removerá dos modelos de aplicativos.",listingRemoved:"Listagem removida do catálogo com sucesso",appTemplates:"Modelos de aplicativos",listedFor:"Listado por ${{price}} • {{sales}} vendas • {{status}}",manageTemplate:"Gerencie sua listagem de modelo",shareTemplate:"Compartilhe seu modelo com a comunidade para que outros possam descobri-lo e usá-lo.",manageListing:"Gerenciar listagem",publishToTemplates:"Publicar nos modelos de aplicativos",seeOnTemplates:"Ver nos modelos de aplicativos",removingListing:"Removendo...",removeFromTemplates:"Remover dos modelos de aplicativos",salesRevenue:"{{sales}} vendas • ${{revenue}} de receita",publishedToTemplates:"Publicado nos modelos de aplicativos",rejectedReason:"Motivo da rejeição: {{reason}}"},x5={public:"Público",private:"Privado",workspace:"Espaço de trabalho",requireLogin:"Requer login para acessar"},I5={notAvailableOnMobile:"O gerenciamento de {{feature}} não está disponÃvel no celular",loginFromDesktop:"Por favor, acesse de um navegador desktop",okay:"Ok",domains:"domÃnios",security:"segurança",code:"código",apiFeature:"API",templates:"modelos"},R5={settings:E5,logo:P5,catalog:_5,visibility:x5,desktop:I5},z5={title:"Usuários",subtitle:"Gerencie os usuários do aplicativo e suas funções",inviteUser:"Convidar usuário",schema:"Esquema",searchByEmailOrName:"Pesquisar por e-mail ou nome",pendingRequests:"Solicitações pendentes",userSchemaEditor:"Editor de esquema de usuário",editUser:"Editar usuário",loadingUsers:"Carregando usuários...",noUsersFound:"Nenhum usuário encontrado",noPendingRequests:"Nenhuma solicitação pendente",noPendingRequestsDesc:"Não há solicitações de acesso aguardando aprovação no momento",inviteYourFirstUser:"Convide seu primeiro usuário",getStartedByInviting:"Comece convidando seu primeiro usuário para o aplicativo.",tryAdjustingSearch:"Tente ajustar sua pesquisa ou filtros para encontrar o que procura.",moreActions:"Mais ações",resendInvitation:"Reenviar convite",cancelInvite:"Cancelar convite",editUserAction:"Editar usuário",changeOwner:"Alterar proprietário",makeAppOwner:"Tornar proprietário do aplicativo",resendOwnershipRequest:"Reenviar solicitação de propriedade",cancelOwnershipRequest:"Cancelar solicitação de propriedade",changeRole:"Alterar função",selectNewRole:"Selecione uma nova função para {{name}}:",back:"Voltar",manageInvitation:"Gerenciar convite",approve:"Aprovar",reject:"Rejeitar",unknown:"Desconhecido",admin:"Administrador",user:"Usuário",allRoles:"todas as funções",name:"Nome",owner:"Proprietário",pendingOwnership:"Propriedade pendente",role:"Função",email:"E-mail",hasntLoggedIn:"{{role}} ainda não entrou no aplicativo.",userRemovedSuccess:"Usuário removido com sucesso",failedCancelInvitation:"Falha ao cancelar convite",userLoggedInSinceRefresh:"Este usuário entrou desde sua última atualização. Atualize a página para ver o status atualizado antes de tentar novamente.",failedRemoveUser:"Falha ao remover usuário",subscriptionRequired:"Assinatura necessária",onlyPayingCanAdmin:"Apenas usuários pagos podem tornar outros usuários administradores.",upgradeSubscription:"Atualize sua assinatura",toContinue:"para continuar.",userUpdatedSuccess:"Usuário atualizado com sucesso",userApprovedSuccess:"Usuário aprovado com sucesso",failedApproveRequest:"Falha ao aprovar solicitação de acesso",invitationRejected:"Convite rejeitado",failedDenyRequest:"Falha ao negar solicitação de acesso",invitationResentSuccess:"Convite reenviado com sucesso",failedResendInvitation:"Falha ao reenviar convite",emailSent:"E-mail enviado",ownershipTransferResent:"O convite de transferência de propriedade foi reenviado.",transferCancelled:"Transferência cancelada",ownershipTransferCancelled:"A transferência de propriedade foi cancelada.",failedCancelTransfer:"Falha ao cancelar transferência",cancelInviteAction:"Cancelar convite",removeUser:"Remover usuário",failedApproveUser:"Falha ao aprovar usuário",success:"Sucesso",error:"Erro",save:"Salvar",deleteConfirm:"Tem certeza que deseja excluir este registro?",deleteFailed:"Falha na exclusão"},M5={users:z5},N5="Conteúdo social",F5="Crie um plano de promoção social com conteúdo pronto para publicar.",L5="Carregando conteúdo social",j5={title:"Algo deu errado",description:"Ocorreu um erro inesperado. Por favor, atualize a página.",tryAgain:"Tentar novamente"},O5={emptyTitle:"Promova seu app nas redes sociais",emptyDescription:"Vamos analisar seu app e criar posts prontos para publicar nas redes sociais.",getStarted:"Criar meu plano de conteúdo",learnMore:"Saiba mais",emptyCheck1:"Defina o que você quer alcançar",emptyCheck2:"Escolha os melhores canais para seu app",emptyCheck3:"Receba ideias de posts personalizadas prontas para compartilhar",analyzingBase:"Analisando seu app",analyzingDescription:"Conhecendo seu app: o que faz, para quem é e como promovê-lo.",combiningBase:"Criando sua estratégia de conteúdo",combiningDescription:"Estamos moldando sua mensagem e selecionando os canais certos para seu lançamento.",planStep1:"Aplicando sua estratégia",planStep2:"Adaptando conteúdo para cada plataforma",planStep3:"Escrevendo os textos dos posts",planStep4:"Criando visuais para seus posts",stepOf:"Passo {{current}} de {{total}}"},B5={letsGo:"Vamos lá",next:"Próximo",back:"Voltar",creatingPlan:"Criando seu conteúdo...",creatingPlanBase:"Criando seu conteúdo",strategyReady:"Estratégia sugerida"},U5={emptyTitle:"Pronto para promover seu app?",emptyDescription:"Responda à s perguntas para personalizar seu conteúdo.",generateNewPlan:"Gerar novo plano",downloadContent:"Baixar conteúdo",downloading:"Baixando...",startFresh:"Recomeçar"},q5={copy:"Copiar",copied:"Copiado",copiedToClipboard:"Copiado para a área de transferência",failedToCopy:"Falha ao copiar",cancel:"Cancelar",save:"Salvar",imageGenerationFailed:"Falha ao gerar a imagem",retryImage:"Tentar novamente",download:"Baixar imagem",expandImage:"Ver tamanho completo",close:"Fechar",regenerateImage:"Regenerar imagem",imageRefinePlaceholder:"O que você gostaria de mudar?",imageAlt:"Visual da publicação",share:"Compartilhar",editPostTitle:"Editar publicação",descriptionLabel:"Descrição",imageLabel:"Imagem",improveWithAI:"Melhorar com IA",refineInputPlaceholder:"O que você gostaria de mudar?",saveChanges:"Salvar alterações"},V5={handle:"seuperfil",displayName:"Seu Nome"},$5={reviewTitle:"Revise sua estratégia sugerida",goalLabel:"Seu objetivo",approachLabel:"Abordagem sugerida",strategyLabel:"A estratégia",showMore:"Ver mais",showLess:"Ver menos",platformsLabel:"Plataformas alvo",platformsDescription:"Pré-selecionamos as melhores plataformas para seu negócio.",editSelection:"Editar seleção",selectPlatforms:"Escolha suas plataformas",maxPlatforms:"Até 3 plataformas",toneLabel:"Combinar seu tom (opcional)",toneDescription:"Cole o link do seu perfil social e adaptaremos os posts ao seu tom.",generatePosts:"Gerar posts"},W5={resetTitle:"Gerar novo plano?",resetDescription:"Vamos gerar um plano completamente novo para você. Suas publicações e edições atuais serão substituÃdas e não poderão ser recuperadas.",cancel:"Cancelar",resetConfirm:"Gerar novo plano",upgradeTitle:"Créditos de integração insuficientes",upgradeDescription:"Você não tem créditos de integração suficientes para esta ação. Atualize seu plano para obter mais.",upgradeAction:"Atualizar plano"},G5={sendFailed:"Algo deu errado",sendFailedDescription:"Não foi possÃvel contatar a IA. Por favor, tente novamente.",postUpdated:"Publicação atualizada",postUpdateFailed:"Falha ao atualizar a publicação",postRefined:"Publicação refinada",refineFailed:"Não foi possÃvel refinar a publicação",refineFailedDescription:"A IA não conseguiu aplicar as alterações. Tente novamente.",imageGenerated:"Imagem gerada!",imageGenerateFailed:"Não foi possÃvel gerar a imagem",imageGenerateFailedDescription:"Algo deu errado com a geração. Tente novamente.",planReset:"Conteúdo redefinido – pronto para um novo começo",planResetFailed:"Falha ao redefinir",insufficientCredits:"Créditos de integração insuficientes",insufficientCreditsDescription:"Seus créditos de integração acabaram. Faça upgrade do seu plano para obter mais.",downloadPartial:"Não foi possÃvel baixar todo o conteúdo",downloadPartialDescription:"Algumas imagens não puderam ser baixadas. Por favor, tente novamente."},H5={pageTitle:N5,pageSubtitle:F5,loadingBase:L5,errorBoundary:j5,wizard:O5,steps:B5,toolbox:U5,post:q5,mock:V5,strategy:$5,dialog:W5,toast:G5},Y5={overview:"Visão geral",users:"Usuários",data:"Dados",analytics:"Análises",domains:"DomÃnios",integrations:"Integrações",security:"Segurança",code:"Código",agents:"Agentes",automations:"Automações",logs:"Logs",api:"API",settings:"Configurações",appSettings:"Configurações do aplicativo",authentication:"Autenticação",appTemplate:"Modelo de aplicativo",secrets:"Segredos",backToEditor:"Voltar ao editor",codeFiles:"Arquivos de código",search:"Pesquisar...",clearSearch:"Limpar pesquisa",virality:"Conteúdo social"},K5="Carregando dados do aplicativo...",Z5="Lixeira: {{entityName}}",J5={issuesFound:"Problemas encontrados",inComponent:"No componente {{componentName}}:",resolving:"Resolvendo...",resolveWithAI:"Resolver com IA",noCreditDeduction:"Esta ação não deduzirá créditos da sua conta."},Q5={loadingCheckpoint:"Carregando código do checkpoint...",errorFetchingFiles:"Erro ao buscar arquivos",backToPreview:"Voltar à pré-visualização"},X5={letsBuild:"Vamos construir seu aplicativo",tellMeCreate:"Diga-me o que você gostaria de criar usando o chat",loadingApp:"Carregando seu aplicativo",buildingPreview:"Construindo pré-visualização",previewPreparing:"A pré-visualização do seu aplicativo está sendo preparada.",mayTakeMoment:"Isso pode levar um momento.",previewUnavailable:"Pré-visualização indisponÃvel",previewCouldntLoad:"A pré-visualização desta versão não pôde ser carregada.",retryBuild:"Tentar novamente",buildingIdea:"Construindo sua ideia",didYouKnow:"Você sabia?",packagePending:"Instalação de pacote pendente",approvePackage:"Por favor, aprove a instalação do pacote npm no chat para continuar",loadingPreview:"Carregando pré-visualização…",refreshPreview:"Atualizar pré-visualização",capture:{verbDiscovering:"Descobrindo",verbDesigning:"Projetando",verbBuilding:"Construindo",verbPolishing:"Polindo",verbUnveiling:"Revelando",verbStudying:"Estudando",verbExtracting:"Extraindo",verbReimagining:"Reimaginando",verbRefining:"Refinando",stageAnalyzingDesign:"Analisando design",stageExtractingColorsAndFonts:"Extraindo cores e fontes",stageBuildingPages:"Construindo páginas",stageCreatingComponents:"Criando componentes",stageRefiningDetails:"Refinando detalhes",stageAlmostThere:"Quase lá",stageStudyingDesignLanguage:"Estudando a linguagem de design",stageExtractingColorsAndTypography:"Extraindo cores e tipografia",stageCraftingYourPages:"Criando suas páginas únicas",stageApplyingDesignInspiration:"Aplicando inspiração de design",stageRefiningLookAndFeel:"Refinando a aparência",yourSite:"seu site",aSiteInspiredBy:"um site inspirado em <site>{{siteName}}</site>",progress:"Progresso"},figma:{verbFetching:"Obtendo",verbExtracting:"Extraindo",verbProcessing:"Processando",verbTransforming:"Transformando",verbBuilding:"Construindo",stageReadingDesign:"Lendo seu design do Figma",stageProcessingStructure:"Processando estrutura do design",stageHandlingAssets:"Gerenciando recursos e gerando código",stageApplyingAI:"Aplicando transformação de layout por IA",stageCompiling:"Compilando e finalizando seu app",yourFigmaDesign:"seu design do Figma",defaultName:"Importar do Figma"}},e6={canvas:"Canvas",dashboard:"Painel",preview:"Pré-visualização",exitSplitScreen:"Saia do modo tela dividida para pré-visualizar",versionHistory:"Histórico de versões",moreOptions:"Mais opções",filesUsedInPage:"Arquivos usados nesta página",seeAllFiles:"Ver todos os arquivos",activityMonitor:"Monitor de atividade",exportAsZip:"Exportar projeto como ZIP",helpCenter:"Central de ajuda",actAsUser:"Agir como usuário",viewAppNewTab:"Pré-visualizar versão atual",refreshPreview:"Atualizar pré-visualização",refresh:"Atualizar",switchToDesktop:"Mudar para visualização desktop",switchToMobile:"Mudar para visualização mobile",showChatPanel:"Mostrar painel de chat",hideChatPanel:"Ocultar painel de chat",turnOffTestData:"Desativar dados de teste",turnOnTestData:"Ativar dados de teste",shareApp:"Compartilhar aplicativo",shareInviteUsers:"Compartilhar e convidar usuários",moreActions:"Mais ações",inviteCollaborators:"Convidar colaboradores",viewOnly:"Somente leitura",viewOnlyAccess:"Você tem acesso somente leitura a este aplicativo",upgradeInfraTooltip:"Seu aplicativo está pronto para uma atualização rápida<br/>para a nova infraestrutura.",appOverview:"Visão geral do aplicativo",myApp:"Meu aplicativo",production:"Produção",test:"Teste",gitHub:"GitHub",gitHubConnection:"Conexão GitHub",collaborators:"Colaboradores",collaboratorDisplayYou:"{{name}} (Você)",collaboratorUnknown:"Desconhecido",addCollaborator:"Adicionar colaborador",saving:"Salvando...",savedAgo:"Salvo há {{time}}",unsavedChanges_one:"{{count}} alteração não salva",unsavedChanges_other:"{{count}} alterações não salvas",theme:"Tema",themeTitle:"Tema",themeDescription:"Estas cores e fontes compõem o seu tema. As alterações são aplicadas em todos os lugares.",themeColors:"Cores",themeFonts:"Fontes",noThemeColors:"Nenhuma cor de tema encontrada",themeSaveChanges:"Salvar e Aplicar",themeCancel:"Cancelar",colorPickerCustom:"Personalizado",colorPickerPalette:"Paleta",fontPickerSearch:"Pesquisar fontes...",fontPickerBrandFonts:"Fontes da marca",fontPickerAllFonts:"Todas as fontes",fontPickerNoResults:"Nenhuma fonte encontrada",fontPickerSelectFont:"Selecionar fonte"},t6={desktop:"Desktop",tablet:"Tablet",mobile:"Celular",isAvailable:"está disponÃvel",getDomain:"Obter domÃnio",connectDomain:"Conectar um domÃnio personalizado",undo:"Desfazer",redo:"Refazer",fullscreen:"Tela cheia",breakpoints:"Pontos de interrupção",splitView:"Visualização dividida",exitSplitView:"Sair da visualização dividida",exitPreview:"Sair da pré-visualização"},a6={upgrade:"Atualizar",upgradePlan:"Atualizar plano",percentOff:"{{percent}}% de desconto",limitedTimeOffer:"Oferta de boas-vindas por tempo limitado",getDiscountOff:"Ganhe {{discount}} de desconto em planos anuais selecionados"},n6={viewingVersionHistory:"Visualizando histórico de versões",buildInProgress:"Construção em andamento...",retryBuildToEnable:"Tente novamente para habilitar esta visualização",viewApp:"Ver aplicativo",viewCode:"Ver código",restoring:"Restaurando...",restoreThisVersion:"Restaurar esta versão",publishing:"Publicando...",publishThisVersion:"Publicar esta versão",exit:"Sair",back:"Voltar",publish:"Publicar",restore:"Restaurar",latest:"Mais recente"},i6={actAs:"Agir como",actingAs:"Você está agindo como",searchUser:"Pesquisar um usuário especÃfico",anonymousGuest:"Visitante anônimo",you:"Você",warningChanges:"Qualquer alteração feita será refletida nos dados do usuário.",carefulChanges:"- cuidado, alterações aqui afetam este usuário",exitMode:"Sair do modo",noUsersYet:"Você ainda não tem nenhum usuário",addOrInvite:"Adicione ou convide usuários para ver como seu aplicativo funciona para eles",invite:"Convidar",usersCount:"Usuários ({{count}})",noMatchingUsers:"Nenhum usuário correspondente encontrado",trySearching:"Tente pesquisar por nome ou função"},r6={pressEnterNavigate:"Pressione Enter para navegar"},o6={publishApp:"Publicar aplicativo",publish:"Publicar",publishing:"Publicando...",disabledUntilUpdate:"A publicação está desativada até que você conclua a atualização de infraestrutura.",currentlyDisabled:"A publicação está atualmente desativada",codeNotGenerated:"A publicação será habilitada assim que seu aplicativo estiver pronto",visualEditsSaveWarning:"Algumas edições visuais não puderam ser salvas antes da publicação",republishApp:"Republicar aplicativo",lastPublished:"Última publicação {{time}}"},s6={whatToChange:"O que você gostaria de alterar?",whatToDiscuss:"Sobre o que você gostaria de discutir?",saveChangesBeforeTyping:"Salve as alterações antes de digitar",exitEditModeToContinue:"Saia do modo Edição antes de digitar",fetchingFromGitHub:"Buscando do GitHub...",viewOnlyAccess:"Você tem acesso somente leitura",zeroCreditsRemaining:"0 créditos restantes",visualEdit:"Editar",visualEditDisabledAgentRunning:"Edição visual indisponÃvel enquanto o agente está em execução",edit:"Editar",discuss:"Discutir",ask:"Editar elemento",editData:"Editar dados",discussMode:"Modo discussão",discussModeDescription:"Converse com a IA sobre qualquer coisa sem fazer alterações no código. Usa 0,3 créditos por solicitação.",thought:"Pensamento",thoughtWithDuration:"Pensou <duration>por {{duration}}</duration>",planningNextSteps:"Planejando próximos passos...",signUpToStartBuilding:"Cadastre-se para começar a construir...",suggestions:"Sugestões",latestMessages:"Mensagens recentes",aiModel:"Modelo IA",aiControls:"Controles IA",uploadFile:"Enviar do computador",uploadFileMobile:"Enviar do dispositivo",addFromGoogleDrive:"Enviar do Google Drive",connectorRequestFailed:"Falha ao enviar a solicitação do conector. Por favor, tente novamente.",designingYourWebsite:"criando seu site...",speechToText:"Fala para texto",processingAudio:"Processando áudio...",clickToStopRecording:"Clique para parar a gravação"},l6={dialogTitle:"Paleta de comandos do construtor",dialogDescription:"Pesquise páginas, arquivos, entidades, visualizações e ações rápidas no builder.",searchPlaceholder:"Pesquisar páginas, arquivos, entidades, visualizações e ações rápidas...",emptyTitle:"Nenhum comando encontrado",emptyDescription:"Tente o nome de uma página, o caminho de um arquivo, o nome de uma entidade, uma visualização do editor ou uma ação rápida como dados de teste.",homeSubtitle:"InÃcio",navigationSubtitle:"Painel",viewSubtitle:"Visualização do editor",entityDataSubtitle:"Dados",entityCodeSubtitle:"Código",integrationsSubtitle:"Integrações",domainSubtitle:"DomÃnio personalizado",collaboratorsSubtitle:"Colaboradores",helpSubtitle:"Central de ajuda",publishSubtitle:"Implantar e compartilhar",publishNowSubtitle:"Publicar alterações mais recentes",versionHistorySubtitle:"Histórico de versões",securitySubtitle:"Segurança",testDataSubtitle:"Mudar para dados de teste",productionDataSubtitle:"Mudar para dados de produção",backToWorkspace:"Voltar ao espaço de trabalho",switchToPreview:"Mudar para Prévia",switchToDashboard:"Mudar para Painel",switchToCode:"Mudar para Código",switchToCanvas:"Mudar para Canvas",openEntityData:"Abrir dados de {{entityName}}",openEntityCode:"Abrir código de {{entityName}}",addIntegration:"Adicionar integração",addDomain:"Adicionar domÃnio",inviteCollaborator:"Convidar colaborador",getHelp:"Obter ajuda",publishMyApp:"Publicar meu app",publishNow:"Publicar agora",versionHistory:"Ver histórico de versões",startSecurityCheck:"Iniciar verificação de segurança",turnOnTestData:"Ativar dados de teste",turnOffTestData:"Desativar dados de teste",groups:{navigate:"Navegar",views:"Visualizações",files:"Arquivos",entities:"Entidades",actions:"Ações"}},c6="Visualização desconhecida",d6="Editor de aplicativo",u6="Beta",p6={title:"Convidar colaboradores",subtitle:"Dê acesso a outras pessoas para editar este aplicativo.",emailPlaceholder:"Digite e-mails, separados por vÃrgulas",removeIneligible:"Remover usuários inelegÃveis",appCollaborators:"Colaboradores do aplicativo",you:"(Você)",owner:"Proprietário",moreActions:"Mais ações",makeAppOwner:"Tornar proprietário do aplicativo",removeCollaborator:"Remover colaborador",resendOwnershipRequest:"Reenviar solicitação de propriedade",getOwnershipLink:"Obter link de propriedade",cancelOwnershipRequest:"Cancelar solicitação de propriedade",ownershipTooltip:"O novo proprietário precisa aceitar a transferência pelo e-mail de convite. O convite expira em 7 dias. Você receberá um e-mail quando a transferência for concluÃda.",removeTitle:"Remover este colaborador do seu aplicativo?",removeDescription:"A remoção deste colaborador revogará imediatamente seu acesso ao editor e impedirá que faça alterações no aplicativo.",removeAccessOnly:"Remover apenas o acesso de colaborador",removeAccessOnlyDesc:"O usuário ainda aparecerá na lista de Usuários",removeEntirely:"Remover completamente do aplicativo",removeEntirelyDesc:"O usuário será removido da lista de Usuários também",cancel:"Cancelar",enterEmail:"Por favor, digite um endereço de e-mail",invalidEmail:"E-mail inválido",invalidEmails:"Um ou mais endereços de e-mail não são válidos. Por favor, verifique-os e tente novamente.",cannotInviteOwner:"Você não pode convidar o proprietário deste aplicativo",alreadyExists:"O colaborador já existe.",alreadyExist:"Os colaboradores já existem.",invitationSent:"Convite de colaboradores enviado com sucesso",invitationsSent:"{{count}} convites de colaboradores enviados com sucesso",removedFromApp:"Colaborador removido do aplicativo",accessRemoved:"Acesso do colaborador removido",ownershipResent:"Solicitação de propriedade reenviada com sucesso",ownershipLinkCopied:"Link de propriedade copiado para a área de transferência",ownershipCancelled:"Solicitação de propriedade cancelada",failedToSendInvitation:"Falha ao enviar convite",failedToRemoveCollaborator:"Falha ao remover colaborador",failedToResendOwnership:"Falha ao reenviar solicitação de propriedade",failedToGetOwnershipLink:"Falha ao obter link de propriedade",failedToCancelOwnership:"Falha ao cancelar solicitação de propriedade",creditsWarning:"Todos os colaboradores consomem créditos do espaço de trabalho.",notWorkspaceMember:"Não é membro do espaço de trabalho",notMemberDescription_one:"<bold>{{emails}}</bold> não é membro deste espaço de trabalho.",notMemberDescription_other:"<bold>{{emails}}</bold> não são membros deste espaço de trabalho.",addAsGuest:"Adicionar como convidado",addAsGuestDescription:"O usuário será adicionado como convidado com acesso apenas a este aplicativo.",addToWorkspace:"Adicionar ao espaço de trabalho",addToWorkspaceDescription:"Acesse as configurações do espaço de trabalho para adicionar como membro completo.",guestBadge:"Convidado",emailListOverflow:"{{first}} e mais {{count}}",pendingInvitationWarning_one:"Este usuário já tem um convite pendente como membro do espaço de trabalho. Adicioná-lo como convidado irá substituÃ-lo.",pendingInvitationWarning_other:"{{count}} destes usuários já têm convites pendentes como membros do espaço de trabalho. Adicioná-los como convidados irá substituÃ-los."},m6={title:"Seus créditos de integração acabaram",description:"Isso pode impedir que os usuários do seu aplicativo realizem certas ações.",upgradeLink:"Atualize o plano para obter mais créditos",dismiss:"Fechar banner"},g6={gathering:"Coletando",gathered:"Coletado",connectorsInformation:"informações de conectores",write:"Escrever",writing:"Escrevendo",wrote:"Escreveu",generatingImage:"Gerando imagem",generatedImage:"Imagem gerada",reading:"Lendo",read:"Leu",deleting:"Excluindo",deleted:"ExcluÃdo",editing:"Editando",edited:"Editado",edit:"Editar",creating:"Criando",created:"Criado",updating:"Atualizando",updated:"Atualizado",update:"Atualizar",delete:"Excluir",importing:"Importando",imported:"Importado",import:"Importar",searching:"Pesquisando",searched:"Pesquisado",searchingForBugs:"Pesquisando bugs...",searchedBugs:"Bugs pesquisados",install:"Instalar",installing:"Instalando",installed:"Instalado",analyzing:"Analisando",running:"Executando",failed:"Falhou",run:"Executar",settingSecrets:"Configurando segredos",setSecret:"Segredo configurado",setSecrets:"Segredos configurados",testing:"Testando",checking:"Verificando",tested:"Testado",checked:"Verificado",fetching:"Buscando",fetched:"Buscado",waitingForApproval:"Aguardando aprovação...",searchedDocsFor:"Documentação pesquisada para",searchingDocsFor:"Pesquisando documentação para",searchedFor:"Pesquisado por",searchingFor:"Pesquisando por",foundResult_one:"{{count}} resultado encontrado",foundResult_other:"{{count}} resultados encontrados",grepSearching:'Pesquisando "{{pattern}}"...',grepSearchComplete:"Pesquisa concluÃda",grepFoundResults_one:"{{count}} resultado encontrado",grepFoundResults_other:"{{count}} resultados encontrados",grepInFiles_one:"em {{count}} arquivo",grepInFiles_other:"em {{count}} arquivos",toggling:"Alternando",toggled:"Alternado",listing:"Listando",listed:"Listado",approvalRequired:"Aprovação necessária",changesPending_one:"{{count}} alteração pendente",changesPending_other:"{{count}} alterações pendentes",approve:"Aprovar",approving:"Aprovando...",reject:"Rejeitar",rejected:"rejeitado",rejecting:"Rejeitando...",approveCount:"Aprovar ({{count}})",rejectAll:"Rejeitar tudo",previousApproval:"Esta solicitação de aprovação é de uma mensagem anterior",query:"Consulta:",updateFallback:"Atualizar {{entityName}}",updateFallbackSingle:"Definir {{fieldName}} para {{fieldValue}} em {{entityName}}",updateFallbackMultiple:"Definir {{fieldName}} para {{fieldValue}} (+{{extraFields}} mais) em {{entityName}}",deleteFallback:"Excluir registros de {{entityName}}",updateWith:"Atualizar com:",importComplete:"Importação concluÃda",importingData:"Importando dados...",percentComplete:"{{percent}}% concluÃdo",recordsProgress:"{{current}} / {{total}} registros",preparing:"Preparando...",otherToolsAfterApproval:"Outras ferramentas serão executadas após aprovação",loadingConfig:"Carregando configuração...",fetchConfigError:"Falha ao carregar a configuração.",retry:"Tentar novamente",countPackages:"{{num}} pacotes:",updateAllEntityRecords:"Atualizar todos os registros de <entity>{{entityName}}</entity>",updateEntityRecordsMatching:"Atualizar registros de <entity>{{entityName}}</entity> correspondentes a:",deleteAllEntityRecords:"Excluir todos os registros de <entity>{{entityName}}</entity>",deleteEntityRecordsMatching:"Excluir registros de <entity>{{entityName}}</entity> correspondentes a:",importDataFromInto:"Importar dados de <file>{{fileName}}</file> para <entity>{{entityName}}</entity>",importDataFromSheetInto:"Importar dados de <file>{{fileName}}</file> (planilha: <sheet>{{sheetName}}</sheet>) para <entity>{{entityName}}</entity>",countRecordsIntoEntity:"{{num}} registros em <entity>{{entityName}}</entity>",dataIntoEntity:"dados em <entity>{{entityName}}</entity>",countRecordsEntity:"{{num}} registros <entity>{{entityName}}</entity>",allEntityRecords:"todos os registros de <entity>{{entityName}}</entity>",entityRecords:"registros de <entity>{{entityName}}</entity>"},h6={chatOnlyDescription:"Esta configuração agora só pode ser acessada via chat.",description:"Defina a página inicial padrão do seu app",chatHint:"Para alterar isso, escreva no chat:",prompt:"Alterar a página principal para {PageName}",placeholder:"Página principal",copiedToast:"Copiado para a área de transferência"},f6={confirmMessage:"Tem certeza de que deseja despublicar este aplicativo? Ele não ficará mais acessÃvel aos usuários até que você o publique novamente.",successTitle:"Sucesso",successDescription:"Aplicativo despublicado com sucesso",errorTitle:"Erro",errorDescription:"Falha ao despublicar aplicativo",description:"Coloque seu aplicativo offline. Você pode republicá-lo a qualquer momento.",unpublishing:"Despublicando...",button:"Despublicar"},v6={title:"Excluir app",description:"Esta ação <strong>não pode</strong> ser desfeita. O app <strong>{{appSlug}}</strong> e todos os seus dados serão excluÃdos permanentemente.",descriptionSimple:"<strong>{{displayName}}</strong> será excluÃdo permanentemente.<br/>Todos os dados, histórico, usuários, domÃnios e integrações do app serão apagados de forma irreversÃvel. <danger>Esta ação não pode ser desfeita.</danger>",confirmLabel:"Para confirmar, digite <strong>{{appSlug}}</strong> abaixo:",cancel:"Cancelar",deleteButton:"Excluir este app",deleting:"Excluindo...",successTitle:"Sucesso",successDescription:"App excluÃdo com sucesso",errorTitle:"Erro",errorDescription:"Falha ao excluir o app"},b6={using:"Usando habilidade {{name}}",failed:"Falha ao usar a habilidade {{name}}",used:"Habilidade {{name}} usada"},y6={thinkingIdeas:"{{agentName}} está pensando em ideias...",ideasFrom:"Ideias de {{agentName}}"},k6="Criando automação...",w6="Falha ao criar a automação",A6="Automação",S6=JSON.parse(`{"sidebar":{"chat":"Chat","continueOnWhatsApp":"Continuar no WhatsApp","continueOnTelegram":"Continuar no Telegram","continueOnLine":"Continuar no LINE","continueOnIMessage":"Continuar no iMessage","imessage":"iMessage","brain":"Cérebro","integrations":"Integrações","knowledge":"Conhecimento","memory":"Memória","payments":"Pagamentos","tasks":"Tarefas","artifacts":"Artefatos","settings":"Configurações","secretsAndKeys":"Segredos e chaves","security":"Segurança","credits":"Créditos","whatsapp":"WhatsApp","telegram":"Telegram","line":"LINE","files":"Arquivos","uploadFile":"Enviar arquivo","refreshFiles":"Atualizar arquivos","searchFiles":"Pesquisar arquivos...","filesFolders":"{{fileCount}} arquivos · {{folderCount}} pastas","toolsPermission":"Permissões de ferramentas","apiDocs":"API","channels":"Canais","feedback":"Deixar feedback","agentSettings":"Configurações do agente","dangerZone":"Zona de perigo"},"filePanel":{"source":"Código-fonte","preview":"Pré-visualização","save":"Salvar","saveAndRedeploy":"Salvar e reimplantar","fileSaved":"Arquivo salvo","functionRedeployed":"Função salva e reimplantada","failedToSaveFile":"Falha ao salvar o arquivo","failedToRedeploy":"Falha ao reimplantar a função","failedToReadFile":"Falha ao ler o arquivo"},"modelPicker":{"automatic":"Automático","automaticDescription":"O melhor modelo de IA é selecionado automaticamente para cada solicitação","manual":"Manual","manualDescription":"Selecione um modelo de IA especÃfico.","manualCreditNote":"O uso de créditos pode variar conforme o modelo","manualDisabledDescription":"Selecione um modelo de IA especÃfico ({{models}}). DisponÃvel no plano Builder e superiores.","builderPlus":"Builder+","upgradeToSelect":"Atualize para selecionar um modelo de IA"},"chat":{"loadingAgent":"Carregando agente...","agentNotFound":"Agente não encontrado","waitingForAuth":"Aguardando token de autenticação...","anErrorOccurred":"Ocorreu um erro","aiModelUpdated":"Modelo de IA atualizado","failedToUpdateModel":"Falha ao atualizar o modelo de IA","hideSidebar":"Ocultar barra lateral","showSidebar":"Mostrar barra lateral","darkMode":"Mudar para modo escuro","lightMode":"Mudar para modo claro","dropFileHere":"Solte o arquivo aqui","imagesDocsAndMore":"Imagens, documentos e mais","loadPreviousMessages":"Carregar mensagens anteriores","somethingWentWrong":"Algo deu errado","retry":"Tentar novamente","chatFromApp":"Converse comigo a partir de um app que você já usa","attachFile":"Anexar arquivos","typeMessage":"Digite uma mensagem...","toggleLiveBrowser":"Alternar navegador ao vivo","noActiveBrowser":"Nenhuma sessão de navegador ativa","stopGenerating":"Parar geração","suggestions":"Sugestões","liveBrowser":"Navegador ao vivo","fullScreen":"Tela cheia","exitFullScreen":"Sair da tela cheia","closeBrowser":"Fechar navegador","live":"Ao vivo","expandBrowser":"Expandir navegador","failedToStartConversation":"Falha ao iniciar a conversa — tente enviar uma mensagem manualmente.","failedToLoadConversation":"Falha ao carregar a conversa","failedToUploadFile":"Falha ao enviar o arquivo","tooManyFiles":"Você pode anexar até {{max}} arquivos por mensagem","failedToSendMessage":"Falha ao enviar a mensagem","failedToStopAgent":"Falha ao parar o agente","queued":"Na fila ({{count}})","queueFull":"A fila de mensagens está cheia. Aguarde o agente terminar.","failedToEditQueued":"Falha ao editar mensagem na fila","failedToDeleteQueued":"Falha ao remover mensagem da fila","deleteMessage":"Excluir mensagem","failedToDeleteMessage":"Falha ao excluir mensagem","today":"Hoje","yesterday":"Ontem","thinking":"Pensando...","you":"Você","failedToSubmitToolInput":"Falha ao enviar a entrada da ferramenta","whatsInImage":"O que há nesta imagem?","heresAFile":"Aqui está um arquivo: {{fileName}}","heresAFileAndMore":"Aqui está um arquivo: {{fileName}} (+{{count}} mais)","heresFiles":"Aqui estão {{count}} arquivos","whatsInTheseImages":"O que há nestas {{count}} imagens?","creditsRunningLow":"Seus créditos estão acabando.","purchaseMoreCredits":"Comprar mais créditos →","saleDiscount":"Obtenha {{discount}} de desconto em planos anuais selecionados","limitedTimeOffer":"Oferta por tempo limitado","upgradePlan":"Atualizar plano","reply":"Responder","copyMessage":"Copiar","copied":"Copiado"},"files":{"uploaded":"{{fileName}} enviado","failedToUpload":"Falha ao enviar {{fileName}}","failedToRead":"Falha ao ler {{fileName}}"},"dashboard":{"title":"Painel","subtitle":"Visão geral do seu agente.","created":"Criado em {{date}}","memories":"Memórias","filesLabel":"Arquivos","folders":"Pastas","agentMemory":"Memória do agente","noMemoriesYet":"Nenhuma memória ainda","noMemoriesDescription":"Seu agente armazenará informações aprendidas aqui conforme você conversa."},"creditsTab":{"title":"Créditos","description":"O uso de créditos e os detalhes de cobrança aparecerão aqui."},"settingsTab":{"settings":"Configurações","secrets":"Segredos","security":"Segurança","creditCard":"Cartão de crédito"},"agentSettingsTab":{"title":"Configurações do agente","subtitle":"Configure como seu agente opera.","cloneTitle":"Clonar agente","cloneDescription":"Crie uma cópia deste agente com todas as configurações, entidades e funções de backend.","cloneButton":"Clonar agente"},"clonePage":{"back":"Voltar","title":"Clonar agente","subtitle":"Escolha o que incluir no agente clonado.","optionChat":"Histórico de chat","optionChatDesc":"Copiar o histórico de conversas do construtor para o novo agente.","optionSkills":"Habilidades","optionSkillsDesc":"Copiar funções de backend, integrações e configurações de ferramentas.","optionTasks":"Tarefas","optionTasksDesc":"Copiar automações (agendadas, baseadas em entidades e conectores).","optionSecrets":"Chaves de API","optionSecretsDesc":"Copiar segredos e chaves de API armazenados para o novo agente.","cloneButton":"Clonar agente","cloning":"Clonando...","cloneError":"Falha ao clonar o agente"},"securityTab":{"title":"Segurança","subtitle":"Execute uma verificação de segurança para detectar vulnerabilidades potenciais.","scanning":"Verificando...","runScan":"Executar verificação de segurança","noIssues":"Nenhum problema encontrado","agentSecure":"Seu agente parece seguro.","severityCount":"Severidade {{severity}}","idleMessage":"Clique em \\"Executar verificação de segurança\\" para verificar seu agente em busca de vulnerabilidades.","scanFailed":"A verificação de segurança falhou"},"secretsTab":{"title":"Segredos","subtitle":"Variáveis de ambiente disponÃveis para as funções backend do seu agente.","noSecrets":"Nenhum segredo ainda","addSecret":"Adicionar um segredo","secretNamePlaceholder":"SECRET_NAME","valuePlaceholder":"valor","add":"Adicionar","secretSaved":"Segredo {{name}} salvo","failedToSave":"Falha ao salvar o segredo","secretDeleted":"Segredo {{name}} excluÃdo","failedToDelete":"Falha ao excluir o segredo","failedToLoad":"Falha ao carregar os segredos"},"billingTab":{"title":"Cartão de crédito do agente","subtitle":"Uso e cobrança do seu agente.","monthlyUsage":"Uso mensal","extraCredits":"+{{count}} créditos extras disponÃveis","pastDue":"Pagamento em atraso","pastDueDescription":"Atualize seu método de pagamento para evitar interrupção do serviço.","goodStanding":"Conta em dia","currentPeriod":"PerÃodo atual:","nextPeriod":"Próximo perÃodo começa em:","manageBilling":"Gerenciar cobrança","failedToLoad":"Falha ao carregar dados de uso","unableToLoad":"Não foi possÃvel carregar dados de cobrança"},"apiDocsTab":{"title":"Referência da API","subtitle":"Use a API REST para interagir com seu agente programaticamente. Crie conversas, envie mensagens e gerencie a memória a partir de qualquer aplicação.","baseUrl":"URL base","authentication":"Autenticação","authDescription":"Inclua sua chave de API no cabeçalho da solicitação:","authAlternative":"Como alternativa, passe-a como um parâmetro de consulta:","quickStart":"InÃcio rápido","quickStartDescription":"Siga estas etapas para começar a conversar com seu agente via API:","step1CreateConversation":"1. Criar uma conversa","step2SendMessage":"2. Enviar uma mensagem","step3ListConversations":"3. Listar conversas","endpoints":"Endpoints da API","requestBody":"Corpo da solicitação","listConversationsDesc":"Liste todas as conversas do usuário autenticado","listConversationsNote":"Retorna as conversas ordenadas por data de criação. Suporta paginação por parâmetros de consulta.","getConversationDesc":"Obtenha uma conversa especÃfica com todas as mensagens","createConversationDesc":"Crie uma nova conversa com o agente","sendMessageDesc":"Envie uma mensagem e receba a resposta do agente","sendMessageNote":"O agente processará a mensagem e retornará sua resposta. O tamanho máximo da mensagem é de 8000 caracteres.","deleteMessageDesc":"Exclua uma mensagem especÃfica de uma conversa","listMemoryDesc":"Liste os itens de memória do agente","deleteMemoryDesc":"Exclua um item de memória especÃfico","responseFormat":"Formato de resposta","responseFormatDescription":"As conversas são retornadas como objetos JSON contendo um array de mensagens:","rateLimits":"Limites de taxa","rateLimitsDescription":"As solicitações da API têm limite por usuário. Se você exceder o limite, receberá um código de status 429. Aguarde um pouco e tente novamente.","errorCodes":"Códigos de erro","error401":"Não autorizado - chave de API inválida ou ausente","error403":"Proibido - você não tem acesso a este recurso","error400":"Solicitação inválida - entrada inválida (ex.: mensagem muito longa)","error404":"Não encontrado - a conversa ou o recurso não existe","copy":"Copiar"},"toolsPermissionTab":{"title":"Permissões de ferramentas","subtitle":"Permitir que operações especÃficas sejam executadas sem exigir sua confirmação.","warning":"Quando ativado, o agente realizará essas ações por conta própria. Suas regras de segurança de dados continuam valendo.","updateData":"Atualizar dados","updateDataDescription":"Permitir que o agente atualize registros sem pedir primeiro.","deleteData":"Excluir dados","deleteDataDescription":"Permitir que o agente exclua registros sem pedir primeiro.","failedToSave":"Falha ao salvar as configurações","effectNote":"As configurações são aplicadas imediatamente. As respostas da IA nem sempre seguem as regras perfeitamente.","connectorRulesTitle":"Regras de conectores","connectorRulesSubtitle":"Defina o que o agente pode e não pode fazer com cada serviço.","connectorRulePlaceholder":"ex.: Apenas ler e-mails, nunca enviar ou excluir","loadingConnectors":"Carregando conectores...","saveRules":"Salvar","rulesSaved":"Regras de conectores salvas"},"knowledgeTab":{"noFiles":"Nenhum arquivo de conhecimento ainda","noFilesDescription":"Comece a conversar com seu agente para construir sua identidade e conhecimento","identity":"Identidade"},"memoryTab":{"title":"Memória","subtitle":"O que seu agente sabe sobre você e suas conversas.","emptyTitle":"Nada aqui ainda","emptyDescription":"Conforme você conversa, seu agente construirá memória automaticamente — contexto de mensagens recentes, resumos de sessões e fatos importantes.","addEntry":"Adicionar","saveEntry":"Salvar","cancelEdit":"Cancelar","titlePlaceholder":"O que o agente deve lembrar?","contentPlaceholder":"Adicionar mais detalhes (opcional)","saved":"Memória atualizada","failedToSave":"Falha ao atualizar","factsHeading":"Fatos salvos","factsDescription":"Fatos importantes que persistem em todas as conversas.","noMemories":"Sem fatos salvos","noMemoriesDescription":"Fatos importantes são extraÃdos automaticamente das conversas, ou você pode adicioná-los manualmente.","shortTermHeading":"Memória de curto prazo","shortTermDescription":"Contexto da conversa atual, atualizado a cada ~10 mensagens.","shortTermUpdated":"Atualizado","shortTermDeleted":"ExcluÃdo","deleteShortTermConfirm":"Remover este contexto? O agente perderá esta parte do histórico de conversas.","longTermHeading":"Sessões diárias","longTermDescription":"Um resumo das conversas de cada dia.","longTermDeleted":"ExcluÃdo","deleteLongTermConfirm":"Excluir a sessão deste dia? O agente perderá acesso a este histórico de conversas.","messages":"{{count}} mens.","emptyTranscript":"Transcrição vazia","noText":"(sem texto)","usedTools":"Usado: {{tools}}"},"telegramTab":{"title":"Telegram","connected":"Seu bot do Telegram está conectado e ativo.","notConnected":"Conecte um bot do Telegram para que os usuários conversem com seu agente.","verifyBanner":"Clique no botão abaixo para verificar sua identidade no Telegram. Isso garante que apenas você possa usar este bot.","verifyOnTelegram":"Verificar no Telegram","connectedBot":"Bot conectado","botName":"Nome do bot","username":"Nome de usuário","status":"Status","active":"Ativo","openTelegram":"Abrir no Telegram","scanQr":"Escaneie o código QR com seu celular para abrir o bot no Telegram.","disconnect":"Desconectar","disconnectConfirm":"Desconectar este bot do Telegram? Os usuários não receberão mais respostas.","disconnected":"Bot do Telegram desconectado","failedToDisconnect":"Falha ao desconectar","howItWorks":"Como funciona","step1":"Os usuários abrem seu bot no Telegram e enviam /start para começar.","step2":"Cada mensagem de texto é processada pelo seu agente.","step3":"A resposta do agente é enviada no chat do Telegram."},"telegramSetup":{"connectTitle":"Conectar Telegram","connectDescription":"Crie um bot do Telegram para seu agente com um clique. Ele será configurado e estará pronto para conversar automaticamente.","autoCreateButton":"Conectar bot do Telegram","autoWaitingTitle":"Aguardando a criação do bot...","autoWaitingDescription":"Confirme o bot no Telegram; em seguida configuramos tudo automaticamente.","autoTimeoutError":"Tempo esgotado ao criar o bot. Tente novamente ou use a configuração manual.","autoExpiredError":"Falha ao criar o bot. Tente novamente.","cancel":"Cancelar","alreadyHaveBot":"Já tenho um token de bot","pasteTokenTitle":"Conectar com token","manualInstructions":"Crie um bot pelo @BotFather no Telegram e cole o token aqui.","tokenPlaceholder":"Cole o token do bot...","tokenExtracted":"Token extraÃdo","tokenNotFound":"Nenhum token válido encontrado","connectBot":"Conectar","connecting":"Conectando...","successTitle":"Bot conectado!","openTelegram":"Abrir no Telegram","failedToConnect":"Falha ao conectar o bot"},"whatsappTab":{"title":"WhatsApp","subtitle":"Permita que os usuários conversem com seu agente pelo WhatsApp.","connectTitle":"Conectar WhatsApp","connectDescription":"Clique no botão abaixo para abrir o WhatsApp e ativar a conexão. Você receberá um código de ativação para enviar ao número do WhatsApp do agente.","openWhatsApp":"Abrir WhatsApp","scanQr":"Escaneie o código QR com seu celular para abrir a conversa no WhatsApp.","howItWorks":"Como funciona","step1":"Clique em \\"Abrir WhatsApp\\" — isso abre o WhatsApp com um código de ativação pré-preenchido.","step2":"Envie o código de ativação para iniciar a conexão.","step3":"Uma vez conectado, qualquer mensagem enviada no WhatsApp será processada pelo seu agente."},"lineTab":{"title":"LINE","subtitle":"Converse com seu agente no LINE.","connectTitle":"Conectar via LINE","connectDescription":"Gere um código de ativação, escaneie o QR no celular para adicionar o bot e envie o código.","generateCode":"Gerar código de ativação","scanQrLabel":"Escanear com LINE","scanQrHint":"Abra o LINE no celular e escaneie este QR code para adicionar o bot.","activationCodeLabel":"Código de ativação","sendCodeHint":"Após adicionar o bot, envie este código como mensagem para ativar.","generating":"Gerando...","regenerate":"Gerar um novo código","codeCopied":"Código copiado!","codeExpiry":"Expira em 30 minutos","failedToGenerate":"Falha ao conectar ao LINE","howItWorks":"Como funciona","step1":"Clique em \\"Gerar código de ativação\\" para obter seu código e QR.","step2":"Escaneie o QR code com o LINE no celular para adicionar o bot como amigo.","step3":"Envie o código de ativação como mensagem ao bot para conectar."},"imessageTab":{"title":"iMessage","subtitle":"Chat with your agent via iMessage.","connectTitle":"Connect via iMessage","connectDescription":"Click the button below and iMessage will open with the activation code ready to send.","connectButton":"Connect via iMessage","manualFallback":"Didn't open automatically? Send the code manually:","phoneNumberLabel":"Text this number","activationCodeLabel":"Activation code","codeCopied":"Code copied!","codeExpiry":"Expires in 30 minutes","failedToGenerate":"Failed to generate iMessage code","capacityTitle":"iMessage temporarily unavailable","capacityMessage":"iMessage is experiencing unusually high demand right now. Please check back in a few hours — we're working on expanding capacity.","howItWorks":"How it works","step1":"Click \\"Connect via iMessage\\" — your Messages app will open with the activation code pre-filled.","step2":"Send the message and your agent is connected. That's it!"},"pluginsTab":{"builtInServices":"Serviços integrados","builtInSubtitle":"Recursos da plataforma disponÃveis para seu agente por padrão.","base44Backend":"Base44 Backend","alwaysActive":"Sempre ativo","base44Description":"Banco de dados, funções, armazenamento de arquivos e automações","dataEntities":"Dados e entidades","dataEntitiesTool1":"Criar, ler, atualizar, excluir e filtrar registros de entidades","dataEntitiesTool2":"Segurança em nÃvel de linha","backendFunctions":"Funções backend","backendFunctionsTool1":"Implantar e chamar funções serverless Deno","backendFunctionsTool2":"Gerenciar segredos de ambiente","fileStorage":"Armazenamento de arquivos","fileStorageTool1":"Enviar arquivos públicos e privados","fileStorageTool2":"Criar URLs de download assinadas","automationsLabel":"Automações","automationsTool1":"Agendar tarefas CRON","automationsTool2":"Gatilhos de alteração de entidade","connectors":"Conectores","connectorsSubtitle":"Conecte seu agente aos apps e serviços que você já usa.","addConnector":"Adicionar conector","close":"Fechar","noConnectors":"Nenhum conector. Adicione um para dar ao seu agente acesso a serviços externos.","connected":"Conectado","available":"DisponÃveis ({{count}})","allConnected":"Todos os conectores já estão conectados.","revoked":"Revogado","disconnectedStatus":"Desconectado","active":"Ativo","switchAccount":"Trocar conta","reconnect":"Reconectar","disconnect":"Desconectar","remove":"Remover","connect":"Conectar","connectorConnected":"Conector conectado","connectionCancelled":"Conexão cancelada","connectorDisconnected":"Conector desconectado","failedToDisconnect":"Falha ao desconectar","connectorRemoved":"Conector removido","failedToRemove":"Falha ao remover","openAuthLinkManually":"Abrir link de autorização manualmente","connecting":"Conectando...","mcpPlugins":"Plugins MCP","mcpSubtitle":"Conexões MCP que ampliam as capacidades do seu agente.","cancel":"Cancelar","addPlugin":"Adicionar plugin","noPlugins":"Nenhum plugin conectado","noPluginsDescription":"Adicione um servidor MCP para dar novas ferramentas ao seu agente.","failedToLoad":"Falha ao carregar plugins","failedToToggle":"Falha ao alternar plugin","pluginDeleted":"Plugin excluÃdo","failedToDelete":"Falha ao excluir plugin","pluginAdded":"Plugin adicionado","pluginNamePlaceholder":"Nome do plugin","mcpUrlPlaceholder":"URL do servidor MCP (https://...)","foundTools":"{{count}} ferramentas encontradas","connectionTestFailed":"Teste de conexão falhou","connectedTools":"Conectado — {{count}} ferramentas disponÃveis","connectionFailed":"Conexão falhou","test":"Testar","save":"Salvar","failedToCreate":"Falha ao criar plugin","enabled":"Habilitado","disabled":"Desabilitado","toolsCount":"Ferramentas ({{count}})","noTools":"Nenhuma ferramenta disponÃvel","toolsFound":"{{count}} ferramentas encontradas","testFailed":"Teste falhou","connectedChatMessage":"Acabei de conectar {{name}} pelo painel de integrações. O que posso fazer com isso?","connectedReadOnlyChatMessage":"Acabei de conectar {{name}} em modo somente leitura pelo painel de integrações. Só pode ler dados, não criar ou modificar nada. O que posso fazer com isso?","accessModeChangedMessage":"Acabei de mudar {{name}} para o modo {{mode}}. Leve isso em conta nas próximas ações.","disconnectedChatMessage":"Acabei de desconectar {{name}} pelo painel de integrações.","readOnly":"Somente leitura","fullAccess":"Pode gerenciar","switchToReadOnly":"Mudar para somente leitura","switchToFullAccess":"Mudar para gerenciar","searchConnectors":"Pesquisar conectores...","noSearchResults":"Nenhum conector encontrado","noSearchResultsDesc":"Tente palavras-chave diferentes ou limpe a pesquisa.","noConnectorsYet":"Nenhum conector conectado ainda.","base44Official":"Base44 Official","setUp":"Configurar","loadMore":"Carregar mais {{count}}","showAll":"Mostrar todos ({{count}})","moreIcons":"+{{count}} mais","sort":{"title":"Ordenar","mostUsed":"Mais usados","recentlyAdded":"Adicionados recentemente","az":"A-Z","za":"Z-A"}},"paymentsTab":{"title":"Pagamentos","stripeName":"Stripe","description":"Aceite pagamentos dos seus clientes via Stripe.","notConnected":"Stripe não está conectado","connectedDescription":"Links de pagamento, produtos e processo de pagamento disponÃveis.","setupPrompt":"Peça ao seu agente no chat para configurar pagamentos Stripe. Ele vai guiá-lo.","askInChat":"Perguntar no chat","sandboxMode":"Sandbox","liveMode":"Produção","testCard":"Número do cartão de teste","claimAndGoLive":"Reivindicar e ir para produção","remove":"Remover integração","removeConfirm":"Tem certeza?","confirmRemove":"Sim, remover","cancel":"Cancelar","removed":"Integração Stripe removida","removeFailed":"Falha ao remover integração Stripe","loadFailed":"Falha ao carregar o status de pagamento","setupMessage":"Configure pagamentos Stripe para meu agente"},"integrationsTab":{"tabSkills":"Skills","tabConnectors":"Connectors","skillsTitle":"Skills","skillsSubtitle":"Reusable instructions that give your agent specialized abilities.","addSkill":"Add Skill","noSkills":"No skills yet","noSkillsHint":"Add a skill to teach your agent new capabilities.","installed":"Instalado"},"automationsTab":{"title":"Automações","subtitle":"Tarefas agendadas e webhooks.","noAutomations":"Nenhuma automação ainda","trySuggestions":"Experimente uma das ideias acima ou pergunte no chat.","askAgent":"Peça ao seu agente no chat para configurar uma.","scheduled":"Agendada","entityTriggered":"Por gatilho de entidade","webhooks":"Webhooks","active":"Ativa","paused":"Pausada","details":"Detalhes","runNow":"Executar agora","pause":"Pausar","activate":"Ativar","delete":"Excluir","trigger":"Gatilho","instructions":"Instruções","taskId":"ID da tarefa","parameters":"Parâmetros","runHistory":"Histórico de execução","totalRuns":"{{count}} no total","succeeded":"{{count}} bem-sucedidas","failedRuns":"{{count}} falharam","lastRun":"Última execução:","created":"Criado em {{date}}","runsStats":"{{total}} execuções · {{succeeded}} bem-sucedidas · {{failed}} falharam","failedToToggle":"Falha ao alternar automação","archive":"Arquivar","automationArchived":"Automação arquivada","failedToArchive":"Falha ao arquivar automação","automationDeleted":"Automação excluÃda","failedToDelete":"Falha ao excluir automação","automationTriggered":"Automação executada","failedToRun":"Falha ao executar automação","failedToLoad":"Falha ao carregar automações","consumesCredits":"Consome créditos de mensagens","agentRunsWhenTriggered":"O agente responde quando acionado","agentNameRunsWhenTriggered":"{{name}} responde quando acionado","creditsUsed":"{{credits}} créditos utilizados","totalCredits":"Total de créditos: {{credits}}","trackingSince":"desde {{date}}","executionLogs":"Registros de execução","noLogs":"Ainda não há registros","status":{"success":"sucesso","running":"em execução","failed":"falhado"},"archived":"Arquivadas","noArchivedAutomations":"Nenhuma automação arquivada","archivedDescription":"As automações que você arquivar aparecerão aqui.","restore":"Restaurar","automationRestored":"Automação restaurada","failedToRestore":"Falha ao restaurar automação"},"identity":{"updated":"Identidade atualizada","failedToSave":"Falha ao salvar a identidade","avatar":"Avatar","emoji":"Emoji","setEmoji":"Usar","uploadImage":"Carregar imagem","changeImage":"Alterar","removeImage":"Remover imagem","useEmoji":"Usar emoji","name":"Nome do agente","agentNamePlaceholder":"Nome do agente","userName":"Seu nome","userNameDisplay":"Seu nome: {{name}}","userNamePlaceholder":"Seu nome","userNameHint":"Como o agente se refere a você","description":"Descrição","descriptionPlaceholder":"O que este agente faz?","unnamedAgent":"Agente sem nome","cancel":"Cancelar","save":"Salvar","edit":"Editar","rawIdentity":"IDENTITY.md (texto bruto)","editInEditor":"Editar no editor","entry":"{{count}} entrada","entries":"{{count}} entradas"},"knowledgeEditor":{"fileUpdated":"O arquivo foi atualizado externamente","fileModified":"{{name}} foi modificado. Recarregue para ver as alterações.","reload":"Recarregar","saved":"{{label}} salvo","failedToSave":"Falha ao salvar","unsavedChanges":"Você tem alterações não salvas. Descartar?","rawText":"Texto bruto","readOnly":"Somente leitura","editAnyway":"Editar mesmo assim","edit":"Editar","save":"Salvar","startWriting":"Comece a escrever..."},"knowledgeFiles":{"title":"Arquivos de conhecimento","uploading":"Enviando {{count}} arquivo(s)...","new":"Novo","fileNamePlaceholder":"nome-do-arquivo","mdExtension":".md","enterFileName":"Digite um nome de arquivo","fileExists":"Já existe um arquivo com este nome","failedToCreate":"Falha ao criar arquivo","unsupportedType":"Tipo de arquivo não suportado","failedToUpload":"Falha ao enviar {{name}}","renamedTo":"Renomeado para {{name}}","failedToRename":"Falha ao renomear arquivo","failedToLoadFile":"Falha ao carregar arquivo","deleteConfirm":"Excluir \\"{{name}}\\"? Isso não pode ser desfeito.","failedToDelete":"Falha ao excluir arquivo","dropOrUpload":"Solte arquivos aqui ou clique para enviar","supportedTypes":"Documentos, imagens, CSVs, arquivos de código e mais","dropOrBrowse":"Solte arquivos ou","browse":"procurar"},"artifacts":{"description":"Pequenos mini apps para começar. Para aplicativos completos, construa no Base44.","buildFullApp":"Construir um aplicativo completo","title":"Artefatos","pageCount_one":"{{count}} página","pageCount_other":"{{count}} páginas","empty":"Nenhum artefato ainda","emptyDescription":"Peça ao seu agente para criar um mini app e ele aparecerá aqui."},"feedbackModal":{"thankYou":"Obrigado!","thankYouSubtitle":"Seu feedback nos ajuda a melhorar.","title":"Como está sua experiência?","subtitle":"Seu feedback molda o que construÃmos a seguir.","submitError":"Falha ao enviar feedback. Tente novamente.","placeholder":"Conte-nos o que está pensando...","sending":"Enviando...","sendFeedback":"Enviar feedback","ratingBad":"Ruim","ratingPoor":"Fraco","ratingOkay":"Regular","ratingGood":"Bom","ratingAmazing":"Adorei","openSupportTicket":"Abrir um ticket de suporte"},"dangerZoneTab":{"title":"Zona de perigo","subtitle":"Ações irreversÃveis para este agente.","deleteTitle":"Excluir este agente","deleteDescription":"Removerá permanentemente este agente e todos os seus dados, conversas, arquivos e integrações. Esta ação não pode ser desfeita.","deleteButton":"Excluir este agente","deleteSuccess":"Agente excluÃdo com sucesso","deleteFailed":"Falha ao excluir o agente"}}`),C6={live:"Live",offScreen:"Fora da tela",waiting:"Aguardando...",loading:"Carregando...",previewTitle:"Pré-visualização: {{pageName}}"},D6={main:"principal"},T6={title:"Excluir agente",description:"Isso excluirá permanentemente <strong>{{displayName}}</strong>.<br/>Todos os dados do agente, conversas, arquivos e integrações serão permanentemente apagados. <danger>Esta ação não pode ser desfeita.</danger>",cancel:"Cancelar",deleteButton:"Excluir este agente",deleting:"Excluindo..."},E6={title:"Compartilhar seu aplicativo",subtitle:"Compartilhe um link por e-mail ou nas redes sociais",sendInviteLabel:"Enviar convite",sendInvitation_one:"Enviar convite",sendInvitation_other:"Enviar convites",invalidEmailsError:"Um ou mais endereços de e-mail são inválidos. Verifique-os e tente novamente.",workspaceIneligibleError:"Tente convidar usuários do seu espaço de trabalho em vez disso.",nonWorkspaceIneligibleError:"Alguns endereços de e-mail não são elegÃveis para convite.",removeIneligibleUsers:"Remover usuários não elegÃveis",inviteSuccessToast:"Convite de usuário enviado com sucesso",inviteErrorToast:"Falha ao enviar convites",copyLink:"Copiar link",sendInvitationSection:"Enviar convite",inviteEmailPlaceholder:"Digite um endereço de e-mail",inviteButton:"Convidar",shareLiveAppLink:"Compartilhar link do aplicativo ao vivo",shareLiveAppLinkDesc:"Qualquer pessoa com o link pode ver seu aplicativo ao vivo, com base nas configurações de visibilidade do seu aplicativo.",linkCopied:"Link copiado",enterEmailError:"Por favor, insira um endereço de e-mail",cannotInviteOwner:"Você não pode convidar o proprietário deste aplicativo",inviteSuccess_one:"Convite enviado com sucesso",inviteSuccess_other:"{{count}} convites enviados com sucesso",inviteFailedToSend:"Falha ao enviar o convite",role_admin:"Admin",role_user:"Usuário"},P6={sidebar:Y5,loading:K5,trash:Z5,errors:J5,codeView:Q5,loader:X5,toolbar:e6,header:t6,upgrade:a6,checkpoints:n6,viewAs:i6,pages:r6,publish:o6,chat:s6,builderCommandPalette:l6,unknownView:c6,appEditor:d6,beta:u6,collaborators:p6,integrationsBanner:m6,tools:g6,mainPage:h6,unpublishApp:f6,deleteApp:v6,skillTool:b6,automations:y6,create_automation:k6,create_automation_error:w6,automation_fallback_name:A6,agentEditor:S6,canvasPage:C6,canvasToolbar:D6,deleteAgent:T6,new:"Novo",shareModal:E6},_6={title:"O que você vai construir em seguida?",titleMobile:`Olá, o que você
vai construir em seguida?`,subtitle:"Descreva sua ideia de aplicativo abaixo ou inspire-se em nossos",subtitleTemplatesLink:"modelos"},x6={title:"Aplicativos recentes"},I6={title:"Superagentes recentes"},R6={placeholder:"Descreva o aplicativo que você quer criar...",placeholderPlanMode:"Diga ao Base o que você quer",placeholderViewer:"Visualizadores não podem criar aplicativos",placeholderWithUrl:"Adicione uma descrição (opcional)...",captureFullMode:"Criar um site como este",captureDesignMode:"Criar um novo site inspirado neste design para...",uploadFile:"Enviar do computador",uploadFileMobile:"Enviar do dispositivo",captureFromUrlDescription:"Criar um ponto de partida 1:1",createFromUrl:"Iniciar a partir de URL",aiModel:"Modelo IA",selectAiModel:"Selecionar modelo de IA",addFromGoogleDrive:"Enviar do Google Drive",modelPicker:{automatic:"Automático",automaticDescription:"O melhor modelo de IA é selecionado para cada solicitação",new:"Novo",manual:"Manual",builderPlus:"Builder+",manualDescription:"Selecione um modelo de IA especÃfico ({{models}}). DisponÃvel no plano Builder ou superior.",upgradeToSelect:"Faça upgrade para selecionar um modelo de IA"},speechToText:"Fala para texto",processingAudio:"Processando áudio...",clickToStopRecording:"Clique para parar a gravação"},z6={exploreTemplates:"Explore modelos da comunidade",discoverDescription:"Descubra uma coleção de aplicativos criados pela nossa comunidade.",failedToLoadCatalog:"Falha ao carregar itens do catálogo",showingItems:"Mostrando {{displayed}} de {{total}} itens",searchApps:"Pesquisar aplicativos",viewAllTemplates:"Ver todos os modelos",allCategories:"Todos",priceAll:"Todos os modelos",priceFree:"Apenas gratuitos",pricePaid:"Apenas pagos",pageTitle:"Modelos de aplicativos",pageSubtitle:"Descubra uma coleção curada de aplicativos criados pela nossa comunidade.",tabs:{community:"Comunidade",workspace:"Espaço de trabalho",myTemplates:"Meus modelos"},categories:{marketingAndSales:"Marketing & Vendas",operations:"Operações",dataAndAnalytics:"Dados & Análises",contentGeneration:"Geração de conteúdo",hrAndLegal:"RH & JurÃdico",finance:"Finanças",education:"Educação",community:"Comunidade",lifestyleAndHobbies:"Estilo de vida & Hobbies",gamesAndEntertainment:"Jogos & Entretenimento","Marketing & Sales":"Marketing e vendas",Operations:"Operações","Data & Analytics":"Dados e análises","Content Generation":"Geração de conteúdo","HR & Legal":"RH e jurÃdico",Finance:"Finanças",Education:"Educação",Community:"Comunidade","Lifestyle & Hobbies":"Estilo de vida e hobbies","Games & Entertainment":"Jogos e entretenimento"},sort:{popular:"Popular",newest:"Mais recentes",oldest:"Mais antigos"},languagePlaceholder:"Idioma",pricePlaceholder:"Preço",noAppsFound:"Nenhum aplicativo encontrado",adjustSearchOrFilters:"Tente ajustar sua pesquisa ou filtros",templateNotFound:"Modelo não encontrado ou indisponÃvel.",viewAllCommunityTemplates:"Ver todos os modelos da comunidade",loadingMore:"Carregando mais itens...",viewDetails:"Ver detalhes",workspaceBadge:"Espaço de trabalho",purchasedBadge:"Comprado",free:"Grátis",unknownUser:"Usuário desconhecido",private:"Privado",howTo:{title:"Como compartilhar seu aplicativo com a comunidade",intro:"Siga estas etapas simples:",step1Title:"Abra o construtor do seu app",step1Desc:"Navegue até um aplicativo que você criou ou ao qual tem acesso de administrador",step2Title:"Vá para as configurações do catálogo",step2Path:"Espaço de trabalho → Configurações → Modelos de apps → Gerenciar listagem",step3Title:"Publique sua listagem",step3Desc:"Adicione uma descrição, capturas de tela e configure a visibilidade da sua listagem",tipFull:"<bold>Dica:</bold> Certifique-se de que seu aplicativo está implantado e tem uma descrição atraente para atrair mais usuários!"},modal:{close:"Fechar",prevScreenshot:"Captura anterior",nextScreenshot:"Próxima captura",screenshotAlt:"Captura {{index}}",goToScreenshot:"Ir para captura {{index}}",createdBy:"por {{creatorName}}",unknownCreator:"Desconhecido",usages_one:"{{count}} uso",usages_other:"{{count}} usos",private:"Privado",workspaceTemplate:"Modelo de workspace",clonePurchase:"Clonar compra",processing:"Processando...",purchaseFor:"Comprar por ${{price}}",useTemplate:"Usar modelo",viewApp:"Ver app",paymentInfo:"O pagamento vai inteiramente para o criador",backendFunctionsEnabled:"Funções backend habilitadas",usesIntegrations:"Usa integrações",aboutThisApp:"Sobre este app",noDescription:"Sem descrição disponÃvel",termsOfUse:"Termos de uso",success:"Sucesso",error:"Erro",purchaseFailed:"Falha na compra",failedToPurchase:"Não foi possÃvel iniciar a compra",listingApproved:"Listagem de app aprovada com sucesso",approveListingFailed:"Falha ao aprovar a listagem",listingDeclined:"Listagem de app recusada com sucesso",declineListingFailed:"Falha ao recusar a listagem",pendingUpdate:"Atualização pendente de revisão",codeChangesPending:"Alterações de código do app pendentes",metadataChanges:"Alterações nos metadados da listagem:",manageListing:"Gerenciar listagem",approveUpdate:"Aprovar atualização",declineUpdate:"Recusar atualização",approveListing:"Aprovar listagem",declineListing:"Recusar listagem",approving:"Aprovando...",declining:"Recusando...",cloneAsAdmin:"Clonar como admin"}},M6={subscriptionOverdue:"Pagamento de assinatura em atraso",overdueMessage:"O pagamento da sua assinatura está em atraso. O acesso a alguns recursos está atualmente limitado. Por favor, atualize seu método de pagamento para recuperar o acesso completo.",goToBilling:"Ir para faturamento",creditLimitReached:"Você atingiu o limite deste mês. Para continuar criando aplicativos",upgradePlan:"atualize seu plano"},N6={viewerAccess:"Você tem acesso de visualização e não pode criar aplicativos. Entre em contato com o administrador do seu espaço de trabalho para atualizar para Editor."},F6={fillApiKeys:"Por favor, preencha todas as chaves de API necessárias antes de enviar.",createAppFailed:"Falha ao criar o app. Por favor, tente novamente."},L6={title:"Iniciar a partir de URL",description:"Use qualquer site como ponto de partida para seu novo site.",urlLabel:"URL do site",urlPlaceholder:"ex., www.exemplo.com.br",errorEmpty:"Por favor, insira uma URL",errorInvalid:"Insira uma URL de site válida, como www.exemplo.com.br",errorTooLong:"A URL é muito longa. Por favor, use uma URL mais curta.",modeFull:"Conteúdo e design",modeFullDescription:"Criar um site similar.",modeDesign:"Apenas design",modeDesignDescription:"Criar um novo site no mesmo estilo.",modeContent:"Apenas conteúdo",legalNotice:"Use apenas URLs onde você tem direitos sobre o conteúdo.",cancel:"Cancelar",add:"Adicionar",learnMore:"Saiba mais sobre criar a partir de uma URL",capturedUrl:"URL capturada",appReady:"Seu app está pronto! Agora você pode personalizá-lo ou adicionar novos recursos.",banner:{headline:"Criando seu app",headlineDesign:"Criando seu app",subtitle:"Isso pode demorar um pouco mais do que o normal - estamos fazendo valer a pena.",activity:{msg1:"Conhecendo o site...",msg2:"Estudando o design e o estilo...",msg3:"Montando as peças...",msg4:"Criando algo especial...",msg5:"Trabalhando nisso...",msg6:"Deixando tudo perfeito...",msg7:"Aguarde, coisas incrÃveis chegando..."}}},j6={count:"Integrações: {{count}}",loading:"Carregando integração...",selectedIntegrations:"Integrações selecionadas:"},O6={menuItem:"Conectores",dialogTitle:"Conectores",dialogDescription:"Conecte ferramentas e fontes de dados para potencializar seu app",search:"Pesquisar",add:"Adicionar",added:"Adicionado",remove:"Remover",noResults:"Nenhum conector encontrado",suggestionCardTitle:"Ajude-me a entender sua solicitação de integração para:",choosePrompt:"Escolha uma opção para continuar.",somethingElse:"Algo mais",cancel:"Cancelar",send:"Enviar",connectTo:"Conectar a <name>{{name}}</name>",upgradeToConnect:"Atualize seu plano para conectar {{name}} ao seu aplicativo.",connecting:"Conectando {{names}}…",cancelled:"cancelado",subtitles:{stripe:"Venda produtos ou assinaturas e receba pagamentos online.",salesforce:"Automatize e sincronize registros de CRM.",slack:"Envie mensagens e gerencie o Slack como usuário.",slackbot:"Publique como bot de marca no seu workspace do Slack.",notion:"Organize e sincronize conhecimento ou dados de projetos.",googlecalendar:"Gerencie sua agenda e eventos do calendário.",googledrive:"Exporte e faça backup de arquivos gerados pelo app.",gmail:"Automatize o envio de e-mails e a gestão da caixa de entrada.",googlesheets:"Sincronize e gerencie dados de planilhas.",googleslides:"Crie e gerencie apresentações.",googledocs:"Gerencie e automatize a criação de documentos.",googlebigquery:"Consulte e sincronize dados de analytics.",hubspot:"Sincronize dados de CRM e automatize o marketing.",linkedin:"Compartilhe atualizações e acesse perfis profissionais.",tiktok:"Acompanhe estatÃsticas do perfil e explore seus vÃdeos.",discord:"Notifique canais e integre sua comunidade no Discord.",wix:"Acesse dados do seu site Wix e ferramentas de negócios.",github:"Gerencie repositórios, issues e pull requests.",gitlab:"Gerencie projetos, MRs e pipelines de CI/CD.",bamboohr:"Diretório de funcionários e gestão de RH.",wrike:"Planejamento de projetos e coordenação de equipes.",box:"Gerenciamento seguro de conteúdo na nuvem.",clickup:"Organize projetos e acompanhe o trabalho da equipe.",google_analytics:"Acompanhe o tráfego do site e insights de usuários.",outlook:"E-mail e calendário.",linear:"Gestão de issues e gerenciamento de projetos.",dropbox:"Armazene e sincronize arquivos na nuvem.",google_search_console:"SEO e análise de buscas.",google_classroom:"Educação e gerenciamento de cursos.",airtable:"Bancos de dados e planilhas flexÃveis.",splitwise:"Divisão de despesas e contas em grupo.",microsoft_teams:"Chat de equipe, canais e reuniões.",share_point:"Gestão de documentos e colaboração.",one_drive:"Armazenamento de arquivos na nuvem.",typeform:"Formulários, pesquisas e coleta de dados."}},B6={label:"Planejar",tooltip:"Ative o modo Plano para que a IA crie um plano detalhado antes de construir seu aplicativo."},U6="Ver tudo",q6="Erro",V6={menuLabel:"Importar do Figma",title:"Gerar a partir de um frame do Figma",description:"Cole o link do seu frame para gerar um app baseado no seu design.",labelUrl:"Link do frame do Figma",placeholderUrl:"ex., https://www.figma.com/frame-link",urlHelp:"Use um link para um frame, não para um arquivo ou página.",learnPrepare:"Saiba como preparar seu frame do Figma",connectTitle:"Conectar ao Figma",connectDescription:"Permita acesso à sua conta do Figma para importar seu design.",connectButton:"Conectar ao Figma",connectedToFigma:"Conectado ao Figma",errorMissingUrl:"Insira uma URL de um frame do Figma",errorNotFigmaUrl:"Insira uma URL de um frame do Figma",errorNotFrameUrl:"Insira uma URL de um frame, não de um arquivo ou página.",errorRateLimit:"A API do Figma está temporariamente ocupada. Por favor tente novamente em alguns minutos.",errorForbidden:"Conexão Figma inválida ou expirada. Por favor reconecte sua conta Figma.",errorNotFound:"Arquivo Figma não encontrado. Por favor verifique a URL e certifique-se de que você tem acesso.",errorGeneric:"Não foi possÃvel acessar este design do Figma. Por favor verifique a URL e tente novamente.",validating:"Verificando...",switchAccount:"Trocar conta Figma",cancel:"Cancelar",generate:"Gerar",viewerCannotGenerate:"Você tem acesso de somente leitura e não pode criar aplicativos. Contate o administrador do workspace para atualizar para Editor.",figmaFile:"Arquivo Figma",justNow:"Agora mesmo",importingMessage:"Gere um app baseado no seu design deste frame do Figma."},$6={connectFailed:"Falha ao conectar Figma. Por favor tente novamente.",popupBlocked:"Popup bloqueado. Por favor permita popups e tente novamente.",disconnected:"Figma desconectado",disconnectFailed:"Falha ao desconectar Figma. Por favor tente novamente."},W6={capturing:"Capturando...",figmaDescription:"Analisando o sistema de design do Figma. Extraindo layout, tipografia e tokens de cor para construir seu app."},G6={webApp:"Apps",aiAgent:"Superagentes",recentApps:"Apps recentes",templates:"Modelos",favoritesComingSoon:"Favoritos em breve"},H6={new:"Novo",message:"Diga olá para seu verdadeiro Agente Pessoal",cta:"Experimente agora"},Y6={greeting:"Olá {{name}},",greetingGeneric:"Olá,",title:"Crie seu próprio Agente Pessoal de IA",createTitle:"Crie seu próprio Superagente",newBadge:"Novo",subtitle:"Seu agente de IA que executa tarefas, conecta-se à s suas ferramentas e trabalha para você 24/7",cta:"Crie seu Superagente",creating:"Criando...",continueHero:{heading:"Continue de onde parou",continueBtn:"Continuar com {{name}}",or:"Ou",createNew:"Criar um novo superagente",activeAgo:"Ativo {{time}}",you:"Você"},features:{hassleFree:{title:"Sem complicações",desc:"Sem Docker, sem servidores, sem configuração. Apenas execute seu Superagente."},alwaysOn:{title:"Sempre ativo",desc:"Executa tarefas e automações para você, 24/7."},actions:{title:"Toma ações reais",desc:"Gerencia tarefas, envia atualizações e reage automaticamente."},remembers:{title:"Lembra de tudo",desc:"Acompanha seus objetivos, preferências e contexto."},everywhere:{title:"Vive onde você está",desc:"Funciona no WhatsApp, Telegram, Slack e no seu navegador."},secure:{title:"Seguro por padrão",desc:"Acesso apenas ao que você permite."}},untitled:"Agente sem tÃtulo",active:"Ativo",noDescription:"Nenhuma descrição disponÃvel",edited:"Editado {{time}}",updated:"Atualizado {{time}}",failedToCreate:"Falha ao criar o agente. Por favor, tente novamente.",errorPage:{title:"Ops, algo deu errado",descriptionLine1:"Houve um problema técnico do nosso lado.",descriptionLine2:"Volte à página de criação de agente e tente novamente",goToAgents:"Ir para Agentes →"}},K6={edited:"Editado {{time}}",updated:"Atualizado {{time}}",updatedRecently:"Atualizado recentemente"},Z6={emptyTitle:"Você ainda não criou nenhum aplicativo.",emptySubtitle:"Crie seu primeiro aplicativo usando o formulário acima!"},J6={dialogTitle:"Navegação rápida",dialogDescription:"Acesse rapidamente apps, templates, cobrança e configurações do espaço de trabalho pela página inicial.",searchPlaceholder:"Buscar apps, configurações, templates, cobrança...",searching:"Buscando apps do espaço de trabalho...",emptyTitle:"Nenhum destino correspondente",emptyDescription:"Tente o nome de um app, uma seção de configurações ou uma página como cobrança ou templates.",allApps:"Todos os apps",backToWorkspace:"Voltar ao espaço de trabalho",templates:"Templates",billing:"Cobrança",groups:{apps:"Apps",navigate:"Páginas",workspace:"Espaço de trabalho",account:"Conta"},subtitles:{favoriteApp:"App favorito",recentApp:"App recente",page:"Página"}},Q6={label:"O que você gostaria de criar?",more:"Mais",moreIdeas:"Mais ideias",categories:{CRM:"CRM","Dev productivity":"Produtividade Dev",Educational:"Educacional","Content Generation and Editing":"Geração e edição de conteúdo","Personal Finance":"Finanças pessoais","Health and Wellness":"Saúde e bem-estar",Productivity:"Produtividade","Travel Planning":"Planejamento de viagens",Entertainment:"Entretenimento",Environmental:"Ambiental","Home Management":"Gestão doméstica","Creative Tools":"Ferramentas criativas",Tasks:"Tarefas","CRM & Sales":"CRM e vendas",Portfolio:"Portfólio",Finance:"Finanças","Scheduling & Booking":"Agendamento e reservas",eCommerce:"eCommerce","Construction & Trade":"Construção e ofÃcios","Events & Community":"Eventos e comunidade",Wellness:"Bem-estar","Operations & Logistics":"Operações e logÃstica","Tasks & Workflows":"Tarefas e fluxos","Content & Sites":"Conteúdo e sites",Booking:"Reservas","E-commerce":"E-Commerce",Projects:"Projetos",Operations:"Operações"}},X6={hero:_6,recentApps:x6,recentAgents:I6,chat:R6,catalog:z6,billing:M6,permissions:N6,validation:F6,urlCapture:L6,integrations:j6,connectors:O6,planMode:B6,viewAll:U6,error:q6,figmaDialog:V6,figmaOAuth:$6,statusBanner:W6,tabs:G6,tryAgentBanner:H6,agent:Y6,appCard:K6,appsList:Z6,commandPalette:J6,ideas:Q6},eZ={title:"Integrações",subtitle:"Descubra integrações pré-construÃdas que permitem conectar APIs, serviços e ferramentas para expandir as capacidades do seu app."},tZ={placeholder:"Pesquisar integrações..."},aZ={title:"Nenhuma integração correspondente encontrada",description:"Tente ajustar sua pesquisa ou as configurações de filtro."},nZ={title:"Conectores",subtitle:"Conexões OAuth rápidas com serviços populares, suportadas pela Base44."},iZ={howToUse:"Como usar",dialog:{getStarted:"Começar",navigateInstruction:"Navegue até a aba de Integrações do seu app para conectar o {{name}} e obter prompts personalizados.",upgradeNotice:"Esta integração requer funções de backend, disponÃveis apenas no plano Builder e superior. <seePlansLink>Ver planos</seePlansLink>"}},rZ={stripe:"Venda produtos ou assinaturas e receba pagamentos online.",salesforce:"Automatize e sincronize registros de CRM.",slack:"Envie mensagens e gerencie o Slack como usuário.",slackbot:"Publique como um bot personalizado no seu workspace do Slack.",notion:"Organize e sincronize conhecimento e dados de projetos.",googlecalendar:"Gerencie sua agenda e eventos de calendário.",googledrive:"Exporte e faça backup de arquivos gerados pelo app.",gmail:"Automatize o envio de e-mails e o gerenciamento da caixa de entrada.",googlesheets:"Sincronize e gerencie dados de planilhas.",googleslides:"Crie e gerencie apresentações.",googledocs:"Gerencie e automatize a criação de documentos.",googlebigquery:"Consulte e sincronize dados analÃticos.",googletasks:"Gerencie listas de tarefas.",googlemeet:"Videoconferências e reuniões.",hubspot:"Sincronize dados de CRM e automatize o marketing.",linkedin:"Compartilhe atualizações e acesse perfis profissionais.",tiktok:"Acompanhe estatÃsticas do perfil e navegue pelos seus vÃdeos.",discord:"Notifique canais e integre com sua comunidade no Discord.",wix:"Acesse dados do site Wix e ferramentas de negócio.",github:"Gerencie repositórios, issues e pull requests.",gitlab:"Gerencie projetos, MRs e pipelines de CI/CD.",bamboohr:"Diretório de funcionários e gestão de RH.",wrike:"Planejamento de projetos e coordenação de equipes.",box:"Gerenciamento seguro de conteúdo na nuvem.",clickup:"Organize projetos e acompanhe o trabalho da equipe.",google_analytics:"Monitore tráfego do site e insights de usuários.",outlook:"E-mail e calendário.",linear:"Rastreamento de issues e gerenciamento de projetos.",dropbox:"Armazene e sincronize arquivos na nuvem.",google_search_console:"SEO e análise de pesquisa.",google_classroom:"Educação e gerenciamento de cursos.",airtable:"Bancos de dados e planilhas flexÃveis.",splitwise:"Divisão de despesas e contas em grupo.",microsoft_teams:"Chat de equipe, canais e reuniões.",share_point:"Gerenciamento de documentos e colaboração.",one_drive:"Armazenamento de arquivos na nuvem.",typeform:"Formulários, pesquisas e coleta de dados.",hugging_face:"Inferência de IA e repositórios de modelos.",calendly:"Agendamento automático de compromissos.",contentful:"CMS headless e gerenciamento de conteúdo.",supabase:"Explore esquemas, leia dados e veja o status do projeto (somente leitura)."},oZ={page:eZ,search:tZ,emptyState:aZ,connectors:nZ,connector:iZ,catalog:rZ},sZ={title:"Launchpad",subtitle:"Descubra e explore apps criados pela comunidade",shareApp:"Compartilhe seu app",allApps:"Todos os apps",noAppsFound:"Nenhum app encontrado",noAppsHint:"Tente limpar os filtros ou pesquisar por outra coisa.",noAppsEmpty:"Seja o primeiro a publicar um app no Launchpad!",clearFilters:"Limpar filtros",goToFirstPage:"Ir para a primeira página",retry:"Tentar novamente",publishedToast:"Seu app está no ar no Launchpad!"},lZ={placeholder:"Pesquisar apps no Launchpad..."},cZ={all:"Todos"},dZ={title:"Em alta agora"},uZ={title:"Apps em destaque",empty:"Ainda não há apps em destaque para este perÃodo.",thisWeek:"Esta semana",thisMonth:"Este mês",allTime:"Todo o perÃodo"},pZ={live:"Ao vivo",someone:"Alguém",sentences:{vote:"{{user}} acabou de votar em {{app}}",like:"{{user}} acabou de curtir {{app}}",publish:"{{user}} acabou de publicar {{app}}",default:"{{user}} acabou de interagir com {{app}}"}},mZ={signInPrompt:"Faça login para publicar seu app no Launchpad.",signIn:"Entrar",back:"Voltar",next:"Próximo",publish:"Publicar",publishing:"Publicando...",stepOf:"Passo {{current}} de {{total}}",successToast:"Seu app está no ar no Launchpad!",failedDefault:"Falha ao publicar. Por favor, tente novamente.",categoriesLoadFailed:"Falha ao carregar categorias. Feche e tente novamente.",categoriesRetry:"Tentar novamente",steps:{selectApp:"Selecionar app",details:"Detalhes",preview:"Pré-visualização"},appPicker:{chooseApp:"Escolha qual app você gostaria de publicar no Launchpad.",searchPlaceholder:"Pesquisar seus apps...",loadFailed:"Falha ao carregar seus apps.",tryAgain:"Tentar novamente",noApps:"Você ainda não tem nenhum app.",noAppsForQuery:'Nenhum app encontrado para "{{query}}"',loadMore:"Carregar mais"},preview:{caption:"Veja como seu app aparecerá na grade do Launchpad:",creatorFallback:"Você"},categoryPicker:{count:"{{current}}/{{max}} categorias selecionadas"},validation:{nameRequired:"O nome do app é obrigatório",descriptionRequired:"A descrição curta é obrigatória",descriptionTooLong:"Máx. {{max}} caracteres",categoriesRequired:"Selecione pelo menos 1 categoria",screenshotsRequired:"Envie pelo menos 1 captura de tela"}},gZ={uploadFailed:"Algumas capturas de tela falharam ao enviar. Por favor, tente novamente.",uploading:"Enviando...",addImage:"Adicionar imagem",count:"{{current}}/{{max}} capturas de tela. Arraste para reordenar."},hZ={previous:"Anterior",next:"Próximo",pageOf:"Página {{page}} de {{totalPages}}"},fZ={justNow:"agora mesmo",minutesAgo:"há {{count}} min",hoursAgo:"há {{count}} h",daysAgo:"há {{count}} d"},vZ={appName:"Nome do app",shortDescription:"Descrição breve",shortDescriptionPlaceholder:"Uma breve descrição do que seu app faz",longDescription:"Descrição detalhada",longDescriptionPlaceholder:"Conte mais sobre seu app...",optional:"Opcional",categories:"Categorias",screenshots:"Capturas de tela",generateWithAi:"Gerar com IA",aiComingSoon:"Geração com IA em breve"},bZ={tryApp:"Experimentar App",share:"Compartilhar",shareToast:"Link copiado para a área de transferência!",shareError:"Falha ao compartilhar",about:"Sobre",moreByCreator:"Mais de {{name}}",backToLaunchpad:"Voltar ao Launchpad",notFound:"App não encontrado",notFoundHint:"Este app pode ter sido removido ou despublicado.",loadFailed:"Falha ao carregar os detalhes do app.",unknownCreator:"este criador"},yZ={title:"Comentários",placeholder:"Escreva um comentário...",submit:"Publicar",submitting:"Publicando...",empty:"Ainda não há comentários. Seja o primeiro!",loadMore:"Carregar mais comentários",deleteFailed:"Falha ao excluir o comentário.",postFailed:"Falha ao publicar o comentário.",signInToComment:"Faça login para deixar um comentário",anonymous:"Anônimo"},kZ={likeFailed:"Falha ao atualizar a curtida.",voteFailed:"Falha ao atualizar o voto.",selfVoteError:"Você não pode votar no seu próprio app."},wZ={loadFailed:"Falha ao carregar os dados do Launchpad. Por favor, tente novamente.",browseFailed:"Falha ao carregar os apps. Por favor, tente novamente.",topAppsFailed:"Falha ao carregar os apps em destaque. Por favor, tente novamente.",categoriesFailed:"Falha ao carregar categorias.",refreshFailed:"Falha ao atualizar — por favor, recarregue a página."},AZ={page:sZ,search:lZ,categories:cZ,trending:dZ,topApps:uZ,liveActivity:pZ,publish:mZ,screenshots:gZ,pagination:hZ,relativeTime:fZ,fillDetails:vZ,detail:bZ,comments:yZ,engagement:kZ,errors:wZ},SZ={title:"Apps",allAgentsTitle:"Todos os agentes",createNewApp:"Criar novo app",createNewAgent:"Criar novo agente",tabRecents:"Recentes",tabFavorites:"Favoritos",tabAllApps:"Todos os apps",tabAllAgents:"Todos os agentes",searchPlaceholder:"Pesquisar apps",gridView:"Visualização em grade",listView:"Visualização em lista",appTypeLabel:"Tipo de app",appTypeApps:"Apps",appTypeAgents:"Agentes",tableHeaderName:"Nome",tableHeaderDescription:"Descrição",tableHeaderActions:"Ações",folderActionAddApps:"Adicionar apps",folderActionRename:"Renomear",folderActionDelete:"Excluir",filterOwnedByMe:"De minha propriedade",filterMyAppsPersonal:"Meus apps (espaço de trabalho pessoal)",filterAllPlatform:"Todos os apps (em toda a plataforma)",filterMyAppsWorkspace:"Meus apps no espaço de trabalho {{workspaceName}}",filterAllAppsWorkspace:"Todos os apps no espaço de trabalho {{workspaceName}}",addNewFolder:"Adicionar nova pasta",sortLastUpdated:"Última atualização",sortLastCreated:"Última criação",sortNameAsc:"Nome (A-Z)",sortNameDesc:"Nome (Z-A)",filterCreatedByMe:"Criado por mim",filterCreatedByAnyone:"Criado por todos",filterAllPlatformApps:"Todos os apps da plataforma",filterMyApps:"Meus apps em {{workspaceName}}",planModeDescription:"Este aplicativo está atualmente no modo de planejamento e ainda não foi criado.",noDescription:"Sem descrição",byCreator:"Por {{name}}",createdAgo:"Criado {{timeAgo}}",untitledPlan:"Plano sem tÃtulo",tableHeaderApp:"App",tableHeaderLastUpdated:"Última atualização",tableHeaderCreatedBy:"Criado por",emptyFolderTitle:"Nenhum app adicionado ainda",emptyFolderMessage:"Os apps aparecerão aqui quando você os adicionar",addExistingApps:"Adicionar apps existentes",emptyFavoritesTitle:"Nenhum app favorito ainda",emptyFavoritesMessage:"Marque um app com estrela para adicioná-lo aqui.",emptyRecentsTitle:"Nenhuma atividade recente",emptyRecentsMessage:"Os apps que você abrir aparecerão aqui.",emptySearchTitle:"Nenhum app encontrado",emptySearchMessage:"Nenhum app encontrado correspondendo aos seus critérios.",clearFilters:"Limpar filtros",previous:"Anterior",next:"Próximo",failedToUpdateStar:"Falha ao atualizar favorito",failedToUpdateFavorite:"Falha ao atualizar favorito",pleaseRetry:"Por favor, tente novamente",folderCreated:"Pasta criada",folderRenamed:"Pasta renomeada",folderDeleted:"Pasta excluÃda",folderUpdated:"Pasta atualizada",filter:"Filtrar"},CZ={showAll:"Ver tudo",appCount_one:"{{count}} app",appCount_other:"{{count}} apps",addApps:"Adicionar apps",rename:"Renomear",delete:"Excluir",cancel:"Cancelar",save:"Salvar",saving:"Salvando...",create:"Criar",deleting:"Excluindo...",createFirstFolder:"Criar sua primeira pasta",createNewFolder:"Criar nova pasta",renameFolder:"Renomear pasta",folderVisibilityDescription:"A organização das pastas é visÃvel para o seu espaço de trabalho.",folderNamePlaceholder:"Nome da pasta",visibility:"Visibilidade",scopeWorkspace:"Espaço de trabalho",scopePersonal:"Pessoal",personalScopeHint:"VisÃvel apenas para você",deleteFolder:"Excluir pasta",deleteFolderDescription:'Você está prestes a excluir "{{name}}"? Os apps nesta pasta não serão excluÃdos, apenas a pasta.',manageFolders:"Gerenciar pastas",manageFoldersDescription:"Adicionar ou remover este app de pastas.",searchFoldersPlaceholder:"Pesquisar pastas...",createNewFolderButton:"Criar nova pasta",noFoldersMatchSearch:"Nenhuma pasta corresponde à sua pesquisa",noFoldersYet:"Nenhuma pasta ainda",allFolders:"Todas as pastas",searchFolders:"Pesquisar pastas",scopeFilterAll:"Todas",sortNameAsc:"Nome A–Z",sortNameDesc:"Nome Z–A",sortMostApps:"Mais apps",sortFewestApps:"Menos apps",noFoldersFound:"Nenhuma pasta encontrada",noFoldersMatchCriteria:"Nenhuma pasta corresponde aos seus critérios de pesquisa.",clearSearch:"Limpar pesquisa",manageAppsInFolder:"Gerenciar apps na pasta",manageAppsDescription:'Adicionar ou remover apps em "{{name}}".',searchAppsPlaceholder:"Pesquisar apps...",noAppsMatchSearch:"Nenhum app corresponde à sua pesquisa",noAppsFound:"Nenhum app encontrado",loadMore:"Carregar mais",appUpdatedAgo:"Atualizado {{timeAgo}}",saveWithCount:"{{label}} ({{count}})",operationFailed:"Operação falhou. Por favor, tente novamente."},DZ={viewLiveApp:"Ver app ao vivo",share:"Compartilhar",rename:"Renomear",cloneApp:"Clonar app",appSettings:"Configurações do app",delete:"Excluir",appDeleted:"App excluÃdo",appDeletedDescription:'"{{name}}" foi excluÃdo',failedToDelete:"Falha ao excluir o app",failedToDeleteDescription:"Ocorreu um erro ao excluir o app",manageFolders:"Gerenciar pastas",removeFromFolder:"Remover da pasta",goToAppSettings:"Ir para as configurações do app",deleteApp:"Excluir app",deleteAppTitle:'Excluir "{{name}}"?',deleteAppDescription:"Isso excluirá permanentemente este app e todos os seus dados. Esta ação não pode ser desfeita.",appRemovedFromFolder:"App removido da pasta",failedToRemoveFromFolder:"Falha ao remover o app da pasta",addedToFolders_one:"App adicionado a {{count}} pasta",addedToFolders_other:"App adicionado a {{count}} pastas",removedFromFolders_one:"App removido de {{count}} pasta",removedFromFolders_other:"App removido de {{count}} pastas",failedToUpdateFolders:"Falha ao atualizar pastas",foldersUpdated:"{{added}} e {{removed}}",removeFromFavorites:"Remover dos favoritos",addToFavorites:"Adicionar aos favoritos"},TZ={title:"Renomear app",description:"O nome do app é visÃvel para você e seus usuários.",inputPlaceholder:"Digite o nome do app",urlUpdateNote:"Alterar o nome do app também atualizará a URL do app.",cancel:"Cancelar",save:"Salvar",saving:"Salvando...",nameRequired:"O nome do app é obrigatório",enterDifferentName:"Por favor, insira um nome diferente",successTitle:"App renomeado",successDescription:'App renomeado para "{{name}}"',successDescriptionUrlFailed:'App renomeado para "{{name}}", mas a URL não pôde ser atualizada.',failedTitle:"Falha ao renomear o app",failedDescription:"Ocorreu um erro ao renomear o app"},EZ="Carregando...",PZ="(Cópia)",_Z={cloningTitle:"Clonando {{appName}}",cloningDescription:"Isso pode levar alguns instantes. Você o encontrará na página Apps quando estiver pronto",goToApps:"Ir para Apps",confirmingPurchaseTitle:"Confirmando sua compra...",confirmingPurchaseSubtitle:"Isso geralmente leva apenas alguns segundos",errorTitle:"Erro",goBack:"Voltar",cloneNotAllowedTitle:"Clonagem não permitida",cloneNotAllowedDescription:"Este app requer funções de backend. Você precisa estar no plano Builder ou superior para cloná-lo.",configureSecrets:"Configurar segredos",cloneTitle:"Clonar {{name}}",cloneButton:"Clonar {{name}}",cloningButton:"Clonando {{name}}...",defaultAppName:"App",preparing:"Preparando...",errorCloningApp:"Ocorreu um erro ao clonar o app",errorFetchingRequirements:"Ocorreu um erro ao buscar os requisitos de clonagem",errorPurchaseTimeout:"A confirmação da sua compra está demorando mais do que o esperado. Verifique seu e-mail para confirmação, ou entre em contato com o suporte se o problema persistir.",errorVerifyPurchase:"Não foi possÃvel verificar a compra. Por favor, tente novamente."},xZ={userApps:SZ,folders:CZ,appActions:DZ,renameApp:TZ,loading:EZ,copySuffix:PZ,remixPage:_Z},IZ={title:"Base44 App Templates Marketplace - Termos de Serviço",lastUpdated:"Última atualização: 18 de novembro de 2025"},RZ={header:IZ},zZ={home:"InÃcio",allApps:"Todos os aplicativos",apps:"Aplicativos",integrations:"Integrações",appTemplates:"Modelos de aplicativos",hirePartner:"Contratar um parceiro",affiliates:"Afiliados",docsSupport:"Docs e suporte",admins:"Administradores",referFriends:"Indicar amigos",language:"Idioma",startBuilding:"Começar a criar"},MZ={title:"Criar um espaço de trabalho",subtitle:"Comece a colaborar com os membros do seu espaço de trabalho",back:"Voltar",formTitle:"Informações do espaço de trabalho",nameLabel:"Nome do espaço de trabalho",namePlaceholder:"Digite o nome do seu espaço de trabalho",nameHint:"Escolha um nome que represente seu espaço de trabalho",nameRequiredError:"O nome do espaço de trabalho é obrigatório",createFailedError:"Falha ao criar espaço de trabalho",limitReachedError:"Limite de espaços de trabalho atingido. Você pode criar no máximo 3 espaços de trabalho.",cancelButton:"Cancelar",createButton:"Criar espaço de trabalho",creatingButton:"Criando espaço de trabalho...",whatHappensNext:{title:"O que acontece a seguir?",ownerPermissions:"Você será o proprietário do espaço de trabalho com permissões de gerenciamento completas",inviteMembers:"Você pode convidar membros e gerenciar vagas",accessDashboard:"Acesse o painel do seu espaço de trabalho para começar"}},NZ={workspace:"Espaço de trabalho",backToWorkspace:"Voltar para {{workspaceName}}",settings:"Configurações",inviteMembers:"Convidar membros",myWorkspaces:"Meus espaços de trabalho",createWorkspace:"Criar um espaço de trabalho",noWorkspacesFound:"Nenhum espaço de trabalho encontrado",accountSettings:"Configurações da conta",apiKey:"Chave API",helpSupport:"Ajuda e suporte",becomeAffiliate:"Tornar-se afiliado",defaultUser:"Usuário",defaultUserInitial:"U",referFriend:"Indicar um amigo",giftCards:"Cartões Presente",sendGiftCard:"Enviar cartão presente",notifications:"Notificações",logOut:"Sair",aboutApp:"Sobre o aplicativo",upgradePlan:"Atualizar plano",winCredits:"Ganhe créditos gratuitos",pricingPlans:"Planos de preços",documentation:"Documentação",getHelp:"Obter ajuda",memberCount_one:"{{count}} membro",memberCount_other:"{{count}} membros",myProfile:"Meu perfil",viewProfile:"Ver perfil",failedToLoadProfile:"Falha ao carregar o perfil",user:"Usuário"},FZ={ariaLabel:"Menu do agente",agentFallback:"Agente"},LZ={integrationCredits:"Créditos de integrações",monthlyCredits:"Créditos mensais",messageCredits:"Créditos de mensagens",dailyCredits:"Créditos diários",giftCardCredits:"Créditos de Presente",renewsAt:"Renova em {{date}}",giftCardTooltip:"Os créditos de cartão presente são usados antes dos créditos do seu plano.",percentUsed:"{{percent}}% usado",messagesRemaining_one:"{{count}} mensagem restante",messagesRemaining_other:"{{count}} mensagens restantes",upgradeYourPlan:"Atualize seu plano",getMoreOutOfYourApps:"Aproveite mais dos seus apps",upgradeYourPlanToPro:"Atualize seu plano para Pro",redeemDescription:"Após o resgate, os créditos serão aplicados ao seu espaço de trabalho.",creditsRemaining_one:"{{count}} crédito restante",creditsRemaining_other:"{{count}} créditos restantes"},jZ={label:"Comunidade",appTemplates:"Modelos de aplicativos",appTemplatesDesc:"Comece mais rápido com modelos da comunidade.",hirePartner:"Contratar um parceiro",hirePartnerDesc:"Encontre parceiros e comece a colaborar.",spotlight:"Destaques",spotlightDesc:"Explore aplicativos em destaque.",affiliateProgram:"Programa de afiliados",affiliateProgramDesc:"Torne-se um afiliado Base44.",joinUsOn:"Junte-se a nós no"},OZ=JSON.parse(`{"title":"Configurações","lockedFeature":{"includedInPlan":"IncluÃdo no plano {{plan}} e acima","includedInPlanExact":"IncluÃdo no plano {{plan}}","viewPlans":"Ver planos","talkToSales":"Falar com vendas","authSecurity":{"title":"Controle o acesso ao espaço de trabalho","body":"Essencial para indústrias regulamentadas e organizações preocupadas com segurança","ssoAccess":"Use login único (SSO) para reduzir riscos de senha","domainVerification":"Controle quem pode entrar com verificação de domÃnio","ipWhitelisting":"Permita acesso apenas de endereços IP confiáveis"},"integrations":{"title":"Configure uma vez, use em todo o espaço de trabalho","body":"Para equipes padronizando APIs e ferramentas externas entre aplicativos.","configureOnce":"Configure integrações de API uma vez para todos os aplicativos e colegas","sharedAccess":"Permita que todos no seu espaço de trabalho usem ferramentas conectadas instantaneamente","consistentConnections":"Mantenha conexões externas consistentes em cada aplicativo"},"appsConfiguration":{"title":"Defina visibilidade de aplicativos e regras de SSO","body":"Para equipes gerenciando ferramentas internas e aplicativos sensÃveis.","publicAppControl":"Decida quem pode criar aplicativos públicos neste espaço de trabalho","defaultVisibility":"Defina a visibilidade inicial para novos aplicativos","enforceSso":"Aplique o SSO do espaço de trabalho em todos os aplicativos"},"analytics":{"title":"Veja como sua equipe usa o Base44","body":"Para proprietários e administradores de espaços de trabalho acompanhando uso e adoção.","creditTracking":"Acompanhe como os créditos estão sendo usados pela sua equipe","activeUsers":"Veja quais colegas estão usando ativamente o Base44","licenseUsage":"Entenda quantas licenças estão em uso atualmente"},"skills":{"title":"Dê à sua IA skills reutilizáveis","body":"Defina um comportamento de IA consistente que funcione em todos os seus aplicativos.","reusableInstructions":"Crie um conjunto de instruções personalizadas (um skill) que moldam como a IA desenvolve seus aplicativos","autoActivation":"Crie uma vez, reutilize em todos os seus aplicativos","teamConsistency":"Guie o tom, formatação, lógica ou qualquer comportamento que você queira padronizar"},"mcpConnections":{"title":"Conecte ferramentas externas com MCP","body":"Traga dados ao vivo de ferramentas externas diretamente para seus aplicativos.","externalTools":"Dê ao seu criador de IA acesso a contexto em tempo real enquanto trabalha","customServers":"Conecte servidores MCP personalizados para usar em todos os seus aplicativos","extendCapabilities":"Acesse ferramentas como Amplitude, Linear e mais enquanto desenvolve"}},"membersTitle":"Membros","inviteMembers":"Convidar membros","inviteByEmail":"Convidar por e-mail","bulkInviteCsv":"Convite em massa (CSV)","close":"Fechar","createInviteLink":"Criar link de convite","manageInviteLinks":"Gerenciar links de convite","backToMembers":"Voltar aos membros","backToMenu":"Voltar ao menu de configurações","inviteLinks":{"title":"Links de convite","breadcrumb":"Links de convite","description":"Crie e gerencie links de convite para este workspace.","createInviteLink":"Criar link de convite","noLinksYet":"Nenhum link de convite ainda","noLinksSubtitle":"Crie um link de convite para compartilhar facilmente o acesso a este workspace.","copyLink":"Copiar link","copyLinkLower":"Copiar link","deleteTooltip":"Excluir link de convite","deleteButton":"Excluir","deleteLinkButton":"Excluir link","deleteConfirmTitle":"Excluir link de convite?","deleteConfirmActive":"As pessoas não poderão mais entrar usando este link. Esta ação não pode ser desfeita.","deleteConfirmInactive":"Este link e seu histórico serão removidos deste workspace.","copiedToClipboard":"Link de convite copiado para a área de transferência.","columnName":"Nome","columnStatus":"Status","columnUsage":"Uso","columnRole":"Função","columnExpiration":"Data de expiração","columnDomains":"DomÃnios permitidos","statusActive":"Ativo","statusRevoked":"Revogado","statusExpired":"Expirado","statusLimitReached":"Limite atingido","usageUnlimited":"Ilimitado","dialogTitle":"Criar link de convite","dialogMobileTitle":"Criar link","linkName":"Nome do link (Opcional)","linkNamePlaceholder":"ex., Integração de novos funcionários","role":"Função","selectRole":"Selecionar função","roleViewer":"Visualizador","roleEditor":"Editor","roleMember":"Membro","expiration":"Expiração","selectExpiration":"Selecionar expiração","nDays_one":"{{count}} dia","nDays_other":"{{count}} dias","never":"Nunca","maximumUses":"Usos máximos","selectLimit":"Selecionar limite","unlimited":"Ilimitado","nUses_one":"{{count}} uso","nUses_other":"{{count}} usos","allowedDomains":"DomÃnios de e-mail permitidos (Opcional)","allowedDomainsPlaceholder":"ex., empresa.com, parceiro.org","domainsHelp":"Separe múltiplos domÃnios com vÃrgulas.","domainsError":"Entrada inválida. Use domÃnios separados por vÃrgulas (ex., empresa.com, parceiro.org)","securityWarning":"Qualquer pessoa com este link pode entrar no seu workspace e acessar seus dados. Compartilhe apenas com pessoas de confiança.","advancedOptions":"Opções avançadas","cancel":"Cancelar","creating":"Criando...","create":"Criar","linkCreatedAndCopied":"Link de convite criado e copiado.","manageInvitations":"Gerenciar convites"},"postPaymentInvite":{"title":"Tudo pronto!","description":"Seu plano está ativo. Convide seus amigos e colegas para começarem a construir juntos.","createInviteLink":"Criar link de convite","inviteByEmail":"Convidar por e-mail","maybeLater":"Talvez mais tarde","inviteLinkReady":"Link de convite pronto","subtitleNoDomain":"Qualquer pessoa com este link pode entrar como <bold>{{role}}</bold>","subtitleWithDomain":"Qualquer pessoa com um e-mail {{domains}} pode entrar como <bold>{{role}}</bold>","copied":"Copiado","manageInvitationsPrompt":"Você pode gerenciar todos os seus links de convite na página de configurações de <inviteLink>Links de convite</inviteLink>.","copyLink":"Copiar","close":"Fechar","expires":"Expira {{time}}","remainingUses_one":"{{count}} uso restante","remainingUses_other":"{{count}} usos restantes"},"sections":{"workspace":"Espaço de trabalho","integrations":"Integrações","account":"Conta"},"creditUsage":{"pageDescription":"Monitore o consumo de créditos e os padrões de uso.","currentPlan":"Você está atualmente no Plano {{planName}}","overLimit":"Acima do limite","updatePayment":"Atualizar pagamento","upgrade":"Fazer upgrade","paymentOverdue":"Pagamento em atraso","pastDueDescription":"O pagamento da sua assinatura está em atraso. Os créditos e limites exibidos são baseados no seu último plano pago ({{plan}}).","tryAgain":"Tentar novamente","trying":"Tentando...","monthlyMessages":"Mensagens mensais","workspaceTotal":"Total do workspace","workspaceUsage":"Uso do workspace","dailyMessages":"Mensagens diárias","loadError":"Falha ao carregar estatÃsticas de uso","portalError":"Não foi possÃvel abrir o gerenciamento de pagamentos. Tente novamente.","portalErrorTitle":"Erro","creditsRenewIn":"Créditos se renovam em {{timeLeft}}","expired":"Expirado","dailyUsageTitle":"Uso diário (Mensagens)","noUsageData":"Nenhum dado de uso disponÃvel","messagesLabel":"mensagens","timeDaysHours":"{{days}}d : {{hours}}h","timeHoursMinutes":"{{hours}}h : {{minutes}}m","timeMinutes":"{{minutes}}m"},"basicInformation":{"pageTitle":"Informações básicas","pageSubtitleEditable":"Gerencie os detalhes e as configurações do seu espaço de trabalho.","pageSubtitleReadOnly":"Visualize os detalhes do espaço de trabalho. Apenas proprietários e administradores podem editar.","loadingMessage":"Carregando informações do espaço de trabalho...","workspaceNameLabel":"Nome do espaço de trabalho","workspaceNamePlaceholder":"Insira o nome do espaço de trabalho","workspaceDescriptionLabel":"Descrição do espaço de trabalho","workspaceDescriptionPlaceholder":"Descreva seu espaço de trabalho...","workspaceNameEmptyErrorMessage":"O nome do espaço de trabalho não pode estar vazio","cancelButton":"Cancelar","saveButton":"Salvar alterações","savingButton":"Salvando...","saveSuccessMessage":"Configurações do espaço de trabalho atualizadas com sucesso!","saveErrorMessage":"Falha ao atualizar as configurações do espaço de trabalho: {{error}}","unknownError":"Erro desconhecido"},"leaveWorkspace":{"title":"Sair do espaço de trabalho","description":"Se você sair deste espaço de trabalho, perderá o acesso a todos os aplicativos associados. A propriedade dos seus aplicativos será transferida para o proprietário do espaço de trabalho.","button":"Sair do espaço de trabalho","soleOwnerNote":"Você não pode sair do espaço de trabalho porque é o único proprietário.","successMessage":"Você saiu do espaço de trabalho.","workspaceNameFallback":"espaço de trabalho","dialog":{"title":"Sair do {{name}}?","confirmQuestion":"Tem certeza de que deseja sair do <bold>{{name}}</bold>?","transferWarning":"Seus aplicativos neste espaço de trabalho serão transferidos para o proprietário do espaço de trabalho e você perderá o acesso.","cancelButton":"Cancelar","confirmButton":"Sair do espaço de trabalho"}},"menu":{"basicInformation":"Informações básicas","planAndBilling":"Plano e faturamento","creditUsage":"Uso de créditos","members":"Membros","seatsAndMembers":"Vagas e membros","authAndSecurity":"Autenticação e segurança","integrations":"Integrações","appsConfiguration":"Configuração de aplicativos","analytics":"Análises","accountSettings":"Configurações da conta","mcpConnections":"Conexões MCP","skills":"Habilidades","connectors":"Conectores","manageSubscription":"Gerenciar assinatura","secrets":"Segredos","dataResidency":"Residência de dados"},"guests":{"tabMembers":"Membros","tabGuests":"Convidados","title":"Convidados","infoBanner":"Convidados são usuários externos convidados para aplicativos especÃficos. Eles consomem créditos do pool compartilhado do espaço de trabalho.","searchPlaceholder":"Pesquisar por e-mail ou aplicativo...","columnGuest":"Convidados","columnApp":"Aplicativo","columnInvitedBy":"Convidado por","columnCreditsUsed":"Créditos usados","pending":"Pendente","promoteToEditor":"Promover a Editor","promoteToViewer":"Promover a Visualizador","removeFromWorkspace":"Remover do espaço de trabalho","emptyTitle":"Nenhum convidado ainda","emptySubtitle":"Convidados podem ser adicionados pelo fluxo de convite de colaboradores do aplicativo.","noResults":"Nenhum convidado encontrado","noResultsSubtitle":"Nenhum convidado corresponde a \\"{{searchTerm}}\\"","promoted":"{{email}} promovido a {{role}}","promoteFailed":"Falha ao atualizar a função","setCreditLimit":"Definir limite de créditos","upgradeForCreditLimit":"Atualize para o plano Enterprise para este recurso","viewAppAccess":"Ver acesso aos apps","removeMember":"Remover membro","guestRole":"Convidado","appAccessTitle":"Acesso aos apps de {{name}}","appAccessDescription":"Veja os apps que este convidado pode acessar no espaço de trabalho.","appAccessLoading":"Carregando...","appAccessEmpty":"Nenhum acesso a apps encontrado.","appAccessColumnApp":"Aplicativo","appAccessDone":"ConcluÃdo"},"members":{"pageTitle":"Membros","pageDescription":"Visualizar e gerenciar membros e funções deste espaço de trabalho.","tableTitle":"Membros ({{count}})","columnMembers":"Membros","columnCreditsUsed":"Créditos utilizados","columnCreditsUsedWithLimit":"Créditos utilizados (de {{limit}})","columnCreditLimit":"Limite de créditos","columnRole":"Função","roleOwner":"Proprietário","roleAdmin":"Admin","roleEditor":"Editor","roleViewer":"Visualizador","pending":"Pendente","expired":"Expirado","searchPlaceholder":"Pesquisar por nome ou e-mail...","searchPlaceholderMobile":"Pesquisar...","inviteMembers":"Convidar membros","inviteByEmail":"Convidar membros","bulkInvite":"Convite em massa","setCreditLimit":"Definir limite de créditos","removeMember":"Remover membro","upgradeTooltip":"Atualize para o plano Enterprise para desbloquear este recurso","default":"(padrão)","emptyTitle":"Nenhum membro ainda","emptyTitleNoResults":"Nenhum membro encontrado","emptySubtitlePersonal":"Espaços de trabalho pessoais contêm apenas você","emptySubtitleShared":"Comece convidando seu primeiro membro","emptySubtitleNoResults":"Nenhum membro corresponde a \\"{{searchTerm}}\\"","cantChangeOwnRole":"Você não pode alterar sua própria função. Peça a um proprietário do espaço de trabalho para atualizá-la.","creditLimitTooltip":"Limite quantos créditos cada membro pode usar do pool do espaço de trabalho. Defina limites individualmente ou distribua igualmente entre todos os membros.","tableTitleFiltered":"Membros ({{filteredCount}} de {{totalCount}})","clearSearch":"Limpar pesquisa"},"seatsAndMembers":{"pageTitle":"Vagas e membros","pageDescription":"Gerencie as vagas do espaço de trabalho e os membros da equipe.","emptyTitle":"Comece com as vagas do espaço de trabalho","emptyDescription":"Compre vagas para convidar membros do espaço de trabalho e começar a colaborar.","buyFirstSeats":"Compre suas primeiras vagas","planSeats":"Vagas {{planName}}","seatsUsage":"Uso de vagas","addSeats":"Adicionar vagas","removeSeats":"Remover vagas","seatsAvailable_one":"{{count}} vaga disponÃvel","seatsAvailable_other":"{{count}} vagas disponÃveis","buyMoreSeats":"Comprar mais vagas","expandWorkspace":"Expanda o tamanho do seu espaço de trabalho","searchPlaceholder":"Pesquisar por e-mail, função, status ou tipo de vaga (ex., starter, pro)...","searchTip":"Dica: Pesquise por tipos de vagas como \\"starter\\", \\"builder\\", \\"pro\\", \\"elite\\" ou \\"sem vaga\\""},"inviteDialog":{"title":"Convidar membros","emailAddress":"Endereço de e-mail","role":"Função","cancel":"Cancelar","invite":"Convidar","inviting":"Convidando...","roleViewer":"Visualizador","roleEditor":"Editor","roleAdmin":"Admin","roleMember":"Membro","errorNoEmail":"Por favor, insira pelo menos um endereço de e-mail","errorInvalidEmail":"Um ou mais endereços de e-mail são inválidos.","errorFallback":"Falha ao convidar usuários","toastSingle":"Convite enviado para {{email}}","toastMultiple":"{{count}} convites enviados com sucesso"},"dataResidency":{"title":"Residência de dados","tooltip":"Define a região de armazenamento de dados para aplicativos neste espaço de trabalho.","edit":"Editar","upgradeRequired":"Plano Elite ou superior necessário para configurar a residência de dados.","appliesToNewApps":"Aplica-se a aplicativos recém-criados. Aplicativos existentes mantêm sua região atual.","editModal":{"title":"Residência de dados do espaço de trabalho","description":"Escolha onde armazenar dados para aplicativos que você criar neste espaço de trabalho.","label":"Residência de dados","appliesToNewApps":"Aplica-se a aplicativos recém-criados. Aplicativos existentes mantêm sua região de dados atual.","viewAllApps":"Ver residência de dados para todos os aplicativos do espaço de trabalho","cancel":"Cancelar","save":"Salvar","saving":"Salvando...","updateSuccess":"Residência de dados atualizada com sucesso","updateError":"Falha ao atualizar residência de dados: {{detail}}","unknownError":"Erro desconhecido"},"appsModal":{"title":"Residência de dados do aplicativo","description":"Veja onde os dados estão armazenados para cada aplicativo neste espaço de trabalho.","appName":"Nome do aplicativo","dataRegion":"Região de dados","loading":"Carregando...","noApps":"Nenhum aplicativo neste espaço de trabalho.","migrationInfo":"Precisa mover um aplicativo para uma região diferente? <a>Solicitar uma migração.</a>","supportTitle":"Solicitação de migração de região de dados — {{name}}","supportContent":"Gostaria de migrar os dados do aplicativo para uma região diferente.\\n\\nEspaço de trabalho: {{name}} ({{id}})\\nRegião padrão atual: {{region}}\\nRegião de destino: \\nAplicativos a migrar: "}},"mcp":{"title":"Conexões MCP","addMcp":"Adicionar MCP","limitReached":"Você atingiu o limite de {{max}} servidores MCP. Remova um para adicionar uma nova conexão.","description":"Conecte servidores MCP personalizados para expandir as capacidades de construção do Base44 com ferramentas e dados externos.","descriptionWithLink":"Conecte servidores MCP personalizados para expandir as capacidades de construção do Base44 com ferramentas e dados externos. <a>Saiba mais sobre MCP<icon/></a>","learnMore":"Saiba mais sobre MCP","emptyTitle":"Nenhum servidor MCP conectado ainda","addCustomMcp":"Adicionar MCP personalizado","aria":{"enableConnection":"Ativar {{name}}","disableConnection":"Desativar {{name}}","actionsFor":"Ações para {{name}}"},"actions":{"editDetails":"Editar detalhes","removeMcp":"Remover MCP"},"deleteConfirm":{"title":"Remover conexão MCP","description":"Tem certeza de que deseja remover \\"{{name}}\\"? Esta ação não pode ser desfeita.","confirm":"Remover","cancel":"Cancelar"},"tools":{"availableTools_one":"{{count}} ferramenta disponÃvel","availableTools_other":"{{count}} ferramentas disponÃveis","more":"+{{count}} mais","showLess":"Mostrar menos","loadingTools":"Carregando ferramentas..."},"addDialog":{"title":"Adicionar servidor MCP personalizado","name":"Nome","namePlaceholder":"ex.: Meu servidor MCP","url":"URL","urlExists":"O servidor MCP já existe.","authentication":"Autenticação","authNone":"Não necessária","authNoneDescription":"Conectar sem credenciais","authOAuth":"OAuth","authOAuthDescription":"Autorizar na próxima etapa","customHeaders":"Headers personalizados","optional":"opcional","headersDescription":"Adicione headers que serão enviados com cada requisição (ex.: chaves API)","headerName":"Nome do header","headerValue":"Valor","addHeader":"Adicionar header","connectionFailed":"Conexão falhou","serverReady":"O servidor MCP está pronto para conectar.","serverReadyWithTools_one":"O servidor MCP está pronto para conectar. 1 ferramenta encontrada.","serverReadyWithTools_other":"O servidor MCP está pronto para conectar. {{count}} ferramentas encontradas.","toolsFound_one":"{{count}} ferramenta encontrada.","toolsFound_other":"{{count}} ferramentas encontradas.","oauthConfirmed":"Servidor confirmado. Clique em \\"Autorizar e adicionar\\" para completar a autenticação OAuth.","test":"Testar","testAndAdd":"Testar e adicionar","authorizeAndAdd":"Autorizar e adicionar","cancel":"Cancelar","urlRequired":"Por favor, insira uma URL do servidor.","fieldsRequired":"Por favor, preencha todos os campos obrigatórios.","authRequired":"A autenticação é necessária para este servidor. Selecione OAuth para continuar.","authNotRequired":"Este servidor não requer OAuth. Tente adicionar sem OAuth.","testFailed":"O teste de conexão falhou."},"editDialog":{"title":"Editar MCP conectado","enabled":"Ativado","nameRequired":"Por favor, insira um nome.","changeInfo":"Para alterar a URL ou método de autenticação, crie uma nova conexão MCP.","saveChanges":"Salvar alterações","removeMcp":"Remover MCP","cancel":"Cancelar"},"toast":{"added":"Conexão MCP adicionada","addedDescription":"Conectado com sucesso ao servidor MCP.","addedWithName":"Conexão \\"{{name}}\\" adicionada com sucesso.","saved":"Alterações salvas","savedDescription":"Conexão MCP atualizada com sucesso."}},"skills":{"title":"Habilidades","addSkill":"Adicionar habilidade","addSkillLower":"adicionar habilidade","editSkill":"Editar habilidade","viewSkill":"Ver habilidade","deleteSkill":"Excluir habilidade","limitReached":"Você atingiu o limite de {{max}} habilidades. Remova uma para adicionar uma nova.","description":"Crie conjuntos de instruções reutilizáveis que o construtor de IA pode ativar durante as conversas.","emptyDescription":"Habilidades são diretrizes salvas que moldam como a IA constrói seus aplicativos. Elas são ativadas quando necessário para seguir suas regras e melhores práticas automaticamente.","emptyDescriptionWithLink":"Habilidades são diretrizes salvas que moldam como a IA constrói seus aplicativos. Elas são ativadas quando necessário para seguir suas regras e melhores práticas automaticamente. <a>Saiba mais</a>","learnMore":"Saiba mais","getStartedWithTemplate":"Começar com um modelo","viewMore":"Ver mais","failedToLoadTemplates":"Falha ao carregar modelos de habilidades","templatesUnavailable":"Os modelos predefinidos podem estar indisponÃveis.","failedToLoadTemplate":"Falha ao carregar o modelo","form":{"skillName":"Nome da habilidade","namePlaceholder":"ex.: brand-guidelines","nameRequired":"O nome é obrigatório","nameMaxLength":"O nome deve ter no máximo {{max}} caracteres","namePattern":"Apenas letras minúsculas, números e hÃfens (ex.: code-review)","nameExists":"Já existe uma habilidade com este nome","description":"Descrição","descriptionHint":"Diga ao agente quando usar esta habilidade. Ele lê isso para decidir se deve ativá-la.","descriptionPlaceholder":"ex. Aplica cores da marca, tipografia e padrões de design em todas as páginas e componentes. Usar ao criar novas páginas, atualizar estilos ou quando o usuário mencionar a marca ou o sistema de design.","instructions":"Instruções","instructionsHint":"As regras passo a passo que seu agente segue quando esta habilidade é ativada. Escreva como se estivesse treinando um novo membro da equipe.","instructionsPlaceholder":"## Cores da Marca\\nPrimária: #1E40AF (navegação, botões)\\nDestaque: #F59E0B (realces, CTAs)\\nFundo: #F8FAFC, SuperfÃcie: branco\\n\\n## Tipografia\\nTÃtulos: negrito, slate escuro\\nCorpo: text-sm text-slate-600\\nEspaçamento consistente entre seções\\n\\n## Padrões de Componentes\\n- Usar Card com sombra sutil para seções de dados\\n- Sempre incluir estados de carregamento e vazios\\n- Formulários: usar diálogos Sheet para criar/editar\\n- Tabelas: linhas listradas, colunas ordenáveis","reviewHint":"Refinado pela IA. Sinta-se à vontade para ajustar antes de salvar."},"dialog":{"reviewTitle":"Revisar sua habilidade","reviewSubtitle":"Verifique a descrição e as instruções antes de salvar. Você pode editar a qualquer momento.","pickerTitle":"Adicionar habilidade ou começar do zero","startFromScratch":"Começar do zero","cancel":"Cancelar","backToOriginal":"Voltar ao original","saveSkill":"Salvar habilidade","saveChanges":"Salvar alterações","refineAndReview":"Refinar e revisar","refineShort":"Refinar","close":"Fechar","add":"Adicionar","enabled":"Ativado"},"toast":{"created":"Habilidade criada","createdDescription":"\\"{{name}}\\" foi adicionada.","failedToCreate":"Falha ao criar a habilidade","updated":"Habilidade atualizada","updatedDescription":"\\"{{name}}\\" foi salva.","failedToUpdate":"Falha ao atualizar a habilidade","refinedTooLong":"A habilidade refinada é muito longa","refinedTooLongDescription":"Tentamos condensar, mas o resultado ainda excede o limite de caracteres. Tente encurtar o conteúdo e refinar novamente.","failedToPolish":"Falha ao refinar a habilidade","failedToLoad":"Falha ao carregar a habilidade","failedToLoadList":"Falha ao carregar as habilidades","retryLater":"Por favor, tente novamente mais tarde.","retryAgain":"Por favor, tente novamente.","removed":"Habilidade removida","removedDescription":"A habilidade foi removida."},"deleteConfirm":{"description":"Tem certeza de que deseja excluir \\"{{name}}\\"? Esta ação não pode ser desfeita.","confirm":"Excluir","cancel":"Cancelar"},"aria":{"enableSkill":"Ativar {{name}}","disableSkill":"Desativar {{name}}","actionsFor":"Ações para {{name}}"}},"secrets":{"title":"Segredos","description":"Gerencie credenciais e tokens de acesso para acesso programático ao seu workspace.","apiKeys":{"title":"Chaves de API","description":"Crie e gerencie chaves de API para acesso programático ao seu workspace. Use essas chaves para transmitir logs de auditoria, conectar seu provedor de identidade via SCIM ou extrair dados do workspace para um sistema externo via a API de Monitoramento.","createButton":"Criar chave de API","limitReached":"Você atingiu o limite máximo de {{max}} chaves de API. Exclua uma chave existente para criar uma nova.","table":{"name":"Nome","key":"Chave","createdBy":"Criado por","created":"Criado","lastUsed":"Último uso","status":"Status","never":"Nunca"},"status":{"active":"Ativo","disabled":"Desativado"},"emptyState":{"title":"Nenhuma chave de API ainda","description":"As chaves de API do workspace fornecem acesso programático à s APIs do workspace (SIEM, SCIM, integrações personalizadas)."},"actions":{"edit":"Editar","disableKey":"Desativar chave","enableKey":"Ativar chave","deleteKey":"Excluir chave","actionsFor":"Ações para {{name}}"},"sheet":{"editButton":"Editar","disableButton":"Desativar","enableButton":"Ativar"},"disableConfirm":{"title":"Desativar chave de API?","description":"A chave de API <strong>\\"{{name}}\\"</strong> será desativada imediatamente. As integrações que usam esta chave pararão de funcionar.","note":"Você pode reativá-la mais tarde.","confirm":"Desativar chave","cancel":"Cancelar"},"enableConfirm":{"title":"Ativar chave de API?","description":"A chave de API <strong>\\"{{name}}\\"</strong> será reativada. As integrações que usam esta chave voltarão a funcionar.","confirm":"Ativar chave","cancel":"Cancelar"},"deleteConfirm":{"title":"Excluir chave de API?","description":"A chave de API <strong>\\"{{name}}\\"</strong> será excluÃda permanentemente. Esta ação não pode ser desfeita. As integrações que usam esta chave pararão de funcionar imediatamente.","confirm":"Excluir chave","cancel":"Cancelar"},"toast":{"loadError":"Falha ao carregar chaves de API","loadErrorDescription":"Por favor, tente novamente.","disabled":"Chave de API desativada","disabledDescription":"\\"{{name}}\\" foi desativada.","disableError":"Falha ao desativar chave de API","enabled":"Chave de API ativada","enabledDescription":"\\"{{name}}\\" foi reativada.","enableError":"Falha ao ativar chave de API","deleted":"Chave de API excluÃda","deletedDescription":"\\"{{name}}\\" foi excluÃda permanentemente.","deleteError":"Falha ao excluir chave de API","createError":"Falha ao criar chave de API","updateError":"Falha ao atualizar chave de API","copyError":"Falha ao copiar a chave de API","updated":"Chave de API atualizada","updatedDescription":"\\"{{name}}\\" foi salva."},"createDialog":{"title":"Criar chave de API","titleReveal":"Chave de API criada","namePlaceholder":"ex. Integração SIEM","descriptionPlaceholder":"Para que é usada esta chave?","cancelButton":"Cancelar","createButton":"Criar chave","creatingButton":"Criando...","warningMessage":"Copie esta chave agora – você não poderá vê-la novamente. Trate-a como uma senha: ela concede acesso aos dados do seu workspace via API.","yourApiKey":"Sua chave de API","doneButton":"ConcluÃdo","copyAria":"Copiar chave de API"},"editDialog":{"title":"Editar chave de API","cancelButton":"Cancelar","saveButton":"Salvar","savingButton":"Salvando..."},"formFields":{"name":"Nome","description":"Descrição","descriptionOptional":"(opcional)"}}},"authSecurity":{"title":"Autenticação e segurança","description":"Defina as configurações de autenticação e segurança do seu espaço de trabalho.","sso":{"title":"Configuração de Login Único","configureTooltip":"Configure o SSO para o seu espaço de trabalho","description":"Ative o SSO para simplificar a autenticação para os membros do seu espaço de trabalho.","settingUp":"Configurando...","setUp":"Configurar","setUpConfiguration":"Configurar SSO","enforcedTooltip":"Este SSO é aplicado a todos os aplicativos no espaço de trabalho, o que significa que eles o utilizam automaticamente para autenticação. Para atualizar as configurações de aplicação, acesse Configuração de Aplicativos.","enforcedBadge":"Aplicado nos aplicativos","setUpAction":"Configurar","configure":"Configurar","selectProvider":"Selecionar provedor SSO","cancelSetup":"Cancelar configuração","dismiss":"Fechar","saving":"Salvando...","enableSSO":"Ativar SSO","saveSSOSettings":"Salvar configurações SSO","notAvailableTitle":"Não disponÃvel","notAvailableDesc":"O Login Único (SSO) não está disponÃvel para espaços de trabalho pessoais.","limitedAccessTitle":"Acesso limitado","limitedAccessDesc":"Apenas administradores do espaço de trabalho podem configurar o SSO.","toast":{"error":"Erro","failedToLoadSettings":"Falha ao carregar configurações SSO","failedToLoadAppSettings":"Falha ao carregar configurações do aplicativo","ssoEnabled":"SSO ativado","ssoEnabledDesc":"O Login Único foi ativado para o seu espaço de trabalho","ssoDisabled":"SSO desativado","ssoDisabledDesc":"O Login Único foi desativado","failedToUpdateStatus":"Falha ao atualizar o status do SSO","success":"Sucesso","settingsUpdated":"Configurações SSO atualizadas com sucesso","failedToUpdate":"Falha ao atualizar configurações SSO"},"fields":{"client_id":"ID do cliente","client_secret":"Segredo do cliente","scope":"Escopo","discovery_url":"URL de descoberta","tenant_id":"ID do locatário","okta_domain":"DomÃnio Okta","auth_endpoint":"Endpoint de autorização","token_endpoint":"Endpoint de token","userinfo_endpoint":"Endpoint de informações do usuário","jwks_uri":"URI JWKS","name":"Nome do provedor"},"autoGenerated":"(Gerado automaticamente)","placeholders":{"client_id":"Digite o ID do cliente","client_secret":"Digite o segredo do cliente","scope":"Digite o escopo","discovery_url":"Digite a URL de descoberta","tenant_id":"Seu ID de locatário do Azure AD","okta_domain":"sua-empresa","auth_endpoint":"Digite o endpoint de autorização","token_endpoint":"Digite o endpoint de token","userinfo_endpoint":"Digite o endpoint de informações do usuário","jwks_uri":"Digite a URI JWKS","name":"Digite o nome do provedor"},"tooltips":{"clientId":"O ID de cliente OAuth fornecido pelo seu provedor de identidade","clientSecret":"O segredo de cliente OAuth fornecido pelo seu provedor de identidade (mantenha em sigilo)","scopeGeneral":"Escopos OAuth a solicitar (openid, email, profile são comumente usados)","scopeGithub":"Escopos OAuth a solicitar (user:email para GitHub)","discoveryUrlGoogle":"Endpoint de descoberta OIDC (pré-configurado para Google)","discoveryUrlMicrosoft":"Endpoint de descoberta OIDC gerado automaticamente a partir do seu ID de locatário","discoveryUrlOkta":"Endpoint de descoberta OIDC gerado automaticamente a partir do seu domÃnio Okta","discoveryUrlAdvanced":"URL do endpoint de descoberta OIDC (se suportado pelo seu provedor)","tenantId":"ID de locatário do Azure AD. No Portal Azure → Azure Active Directory → Visão geral","oktaDomain":"Seu nome de domÃnio Okta (ex.: 'sua-empresa' de sua-empresa.okta.com)","authEndpointGithub":"Endpoint de autorização OAuth do GitHub (pré-configurado)","authEndpointGeneral":"URL do endpoint de autorização OAuth","tokenEndpointGithub":"Endpoint de token OAuth do GitHub (pré-configurado)","tokenEndpointGeneral":"URL do endpoint de token OAuth","userinfoEndpointGithub":"Endpoint de usuário da API do GitHub (pré-configurado)","userinfoEndpointGeneral":"URL do endpoint de informações do usuário OAuth","jwksUri":"URI do conjunto de chaves web JSON para verificação de tokens","providerName":"Nome personalizado para o seu provedor SSO"},"providerFallback":"SSO {{name}}","providers":{"advanced":"Configuração avançada / manual"}},"domainVerification":{"title":"Verificação de domÃnio","label":"DomÃnio do espaço de trabalho","placeholder":"Adicione o seu domÃnio","hint":"O domÃnio vinculado ao seu espaço de trabalho","check":"Verificar","verified":"Verificado","checking":"Verificando","copyFailed":"Falha ao copiar para a área de transferência","dnsTimedOut":"A verificação DNS expirou. Verifique suas configurações DNS e tente novamente.","domainVerifiedSuccess":"DomÃnio verificado com sucesso!","enterDomainFirst":"Por favor, insira um domÃnio primeiro","domainSaved":"DomÃnio salvo. Adicione o registro DNS para verificar a propriedade.","configFailed":"Falha ao configurar a verificação de domÃnio","verificationReset":"A verificação de domÃnio foi redefinida","resetFailed":"Falha ao redefinir a verificação de domÃnio","addDnsRecords":"Adicionar registros DNS para {{domain}}","dnsInstructions":"Faça login no seu provedor de domÃnio, acesse as configurações DNS e adicione este registro TXT.","type":"Tipo","hostName":"Host / Nome","value":"Valor","dnsCheckNote":"A verificação DNS pode levar alguns minutos. Assim que tudo estiver atualizado, verificaremos automaticamente o seu domÃnio.","checkingDns":"Verificando seus registros DNS...","resetting":"Redefinindo...","reset":"Redefinir","copyLabel":"Copiar {{label}}"}}}`),BZ={earnBonusCredits:"Ganhe créditos bônus"},UZ={apps:"Apps",superagents:"Superagentes",newAgent:"Novo Agente",emptyAgents:"Crie seu primeiro agente e veja suas conversas aqui.",allAgents:"Todos os Agentes",settings:"Configurações",inviteMembers:"Convidar membros",allWorkspaces:"Todos os Espaços",org:"Organização",createNewWorkspace:"Criar novo espaço",recents:"Recentes",favorites:"Favoritos",noFavoritesYet:"Nenhum favorito ainda",addAppsForQuickAccess:"Adicione seus apps para acesso rápido",view_all:"Ver tudo"},qZ={pageTitle:"Comprar Cartão Presente Base44",pageSubtitle:"Dê o presente de construir. Envie um cartão presente para um amigo.",tabBuy:"Comprar Cartão Presente",tabPurchased:"Comprados",successTitle:"Cartão presente comprado com sucesso!",successDescription:"O destinatário receberá um e-mail com o código do cartão presente.",successDescriptionPdf:"Verifique seu e-mail para um cartão presente imprimÃvel para dar pessoalmente.",dismissSuccess:"Fechar mensagem de sucesso",amount:"Valor",customAmount:"$ Personalizado",customAmountPlaceholder:"{{symbol}} Valor personalizado",customAmountError:"O valor deve ser entre {{min}} e {{max}}",creditsInfo:"Este cartão presente inclui <strong>{{credits}} créditos de mensagens</strong> para criar apps",deliveryMethodTitle:"Escolha o método de entrega",deliveryEmail:"Enviar e-mail ao destinatário (imediatamente após a compra)",deliveryPdf:"Enviar e-mail para mim (PDF para imprimir)",recipientTitle:"Para",recipientName:"Nome",recipientNamePlaceholder:"Nome do destinatário",recipientEmail:"E-mail",recipientEmailPlaceholder:"E-mail do destinatário",messageLabel:"Mensagem do cartão presente (opcional)",messagePlaceholder:"Adicionar uma mensagem pessoal...",suggestMessage:"Sugerir uma mensagem",suggestFallbackName:"amigo",messageCharCount:"{{count}}/300 caracteres",senderTitle:"De",senderName:"Seu nome",senderNamePlaceholder:"Seu nome",submitButton:"Continuar para compra",submitting:"Processando...",errorGeneric:"Algo deu errado",historyEmpty:"Nenhum cartão presente ainda. Compre um para um amigo!",historyTo:"Para {{name}}",historyCodeLabel:"Código do cartão presente",historyCopy:"Copiar",historyCopied:"Copiado",historyRedeemed:"Este cartão presente foi resgatado",historyRedeemedOn:"Este cartão presente foi resgatado em {{date}}",historySentTo:"Enviado para {{email}}",statusSent:"Enviado",statusRedeemed:"Resgatado",statusExpired:"Expirado",statusProcessing:"Processando",statusPending:"Pendente",statusRevoked:"Revogado",designTitle:"Escolher um design",historyActions:"Ações",designClassic:"Clássico",designSunrise:"Nascer do Sol",designOcean:"Oceano",cardLabel:"Cartão Presente",cardCreditsLabel:"créditos de mensagens",cardFor:"Para {{name}}",cardDefaultName:"Seu Amigo",historyError:"Não foi possÃvel carregar os cartões presente. Tente novamente.",historyDateIssued:"Data de emissão",historyRecipient:"Destinatário",historyAmount:"Valor",historyStatus:"Status",historyCode:"Código",historySenderDetails:"Detalhes do remetente",historySentToYou:"Enviado para você",historyViewCode:"Ver código",historyHideCode:"Ocultar código",historyDownloadPdf:"Baixar PDF",historyResend:"Reenviar",historyResendSuccess:"E-mail do cartão presente reenviado com sucesso!",historyResendError:"Falha ao reenviar e-mail. Tente novamente.",historyDownloadError:"Falha no download. Tente novamente.",historyCredits:"créditos",emailInvalid:"Por favor, digite um endereço de e-mail válido",buyGiftCard:"Comprar Cartão Presente",giftAndReferrals:"Presentes & Indicações",redeemTitle:"Você recebeu um cartão presente!",redeemDescription:"Após o resgate, os créditos serão aplicados ao seu espaço de trabalho.",redeemSelectWorkspace:"Selecionar um espaço de trabalho",redeemBackToWorkspace:"Voltar ao espaço de trabalho",redeemCheckCreditUsage:"Verificar uso de créditos",redeemErrorDescription:"Este código já foi utilizado e não pode ser resgatado novamente. Se não tiver certeza do que aconteceu, verifique seus créditos ou entre em contato com o suporte.",redeemDefaultWorkspace:"este",error:"Erro",redeemSuccess:"Cartão presente resgatado!",redeemSuccessDescription:"{{credits}} créditos adicionados a {{workspace}}.",redeemButton:"Resgatar cartão presente",redeemNotNow:"Agora não",redeemDocsLink:"Saiba como os créditos de cartões presente funcionam em <docsLink>nossa documentação</docsLink>",redeemCouponDescription:"Resgate-o para obter {{amount}} de desconto na sua assinatura.",redeemCouponAppliedTitle:"Cartão presente aplicado!",redeemCouponReadyTitle:"Cartão presente pronto para usar!",redeemCouponNoWorkspace:"Nenhum espaço de trabalho selecionado",coupon:{title:"Resgatar um cupom ou cartão presente",description:"Digite seu código para adicionar créditos ao seu saldo.",placeholder:"Digite seu código",apply:"Aplicar",success:"Cupom aplicado com sucesso!",invalidCode:"O código é inválido. Tente novamente.",notFound:"Código de cupom não encontrado. Verifique o código e tente novamente.",giftCardNotFound:"Cartão presente não encontrado. Verifique o código e tente novamente.",redeemFailed:"Não foi possÃvel resgatar o cartão presente. Tente novamente."},errors:{invalidRecipientEmail:"Por favor, insira um endereço de e-mail válido",recipientEmailRequired:"O e-mail do destinatário é obrigatório",checkoutFailed:"Não foi possÃvel iniciar a compra. Tente novamente.",confirmPurchaseFailed:"Não foi possÃvel confirmar a compra. Tente novamente.",alreadyRedeemed:"Este cartão presente já foi resgatado",notAvailable:"Este cartão presente não está disponÃvel para resgate",expired:"Este cartão presente expirou",notWorkspaceMember:"Você não é membro do espaço de trabalho selecionado",networkError:"Erro de rede. Por favor, verifique sua conexão com a internet e tente novamente.",rateLimitExceeded:"Muitas tentativas. Tente novamente mais tarde.",permissionDenied:"Apenas proprietários do espaço de trabalho podem resgatar cartões presente. Peça a um proprietário para aplicar este código.",invalidPlanPrice:"Este plano não está disponÃvel para pagamento com cartão presente. Selecione outro plano."},creditBanner:"Você tem {{amount}} de crédito de cartão presente na sua conta. Será aplicado automaticamente na sua próxima fatura.",upgradeGiftCardWarning:"Seu plano atual foi adquirido com um cartão presente. O crédito do cartão presente não é transferido em atualizações — você será cobrado pelo preço proporcional."},VZ={back:"Voltar"},$Z="Carregando...",WZ={message:"Conectado como <strong>{{email}}</strong> — não corresponde à conta esperada.",switchAccount:"Trocar conta",dismiss:"Fechar banner"},GZ={topBar:zZ,createWorkspacePage:MZ,workspaceMenu:NZ,agentEditorMenu:FZ,credits:LZ,community:jZ,workspaceSettings:OZ,referralCta:BZ,sidebar:UZ,giftCards:qZ,common:VZ,loading:$Z,userMismatch:WZ},HZ={notifications:"Notificações",latestNews:"Últimas notÃcias"},YZ={loading:"Carregando...",loadingMore:"Carregando mais...",errorLoading:"Falha ao carregar notificações",noNotifications:"Sem notificações ainda",noMoreNotifications:"Sem mais notificações",noNews:"Sem notÃcias ainda"},KZ={markAllAsRead:"Marcar tudo como lido",readMore:"Leia mais",showLess:"Ver menos",upgrade:"Fazer upgrade",percentOff:"{{percent}}% de desconto"},ZZ={tabs:HZ,states:YZ,actions:KZ},JZ="Plano e faturamento",QZ="Gerenciar Assinatura",XZ={planAndBilling:"Plano e faturamento"},e8={details:"Detalhes da Assinatura",cancelPlan:"Cancelar Plano",cancelling:"Cancelando...",explorePlans:"Explorar Planos",reactivatePlan:"Reativar Plano",reactivating:"Reativando...",upgradePlan:"Fazer Upgrade",updatePayment:"Atualizar Pagamento",managePlan:"Gerenciar Plano",yourPlan:"Seu Plano",creditsPerMonth:"Créditos por mês",price:"Preço",nextBillingDate:"Próxima Data de Cobrança",highlights:"Destaques do plano",cancelChange:"Cancelar Alteração",cancelTooltip:"Para cancelar sua assinatura, primeiro cancele o downgrade agendado",currentlyUsing:"Você está usando o plano <bold>{{plan}}</bold>",subscriptionEndsOn:"Sua assinatura encerrará em {{date}}",subscriptionRenewsOn:"Sua assinatura renova em {{date}}",noActiveSubscription:"Sem assinatura ativa",keepSubscription:"Quer manter sua assinatura? Clique em <manageLink>Gerenciar Plano</manageLink> e cancele a alteração.",planChangeNotice:"Seu plano mudará para {{plan}} ao final do ciclo de cobrança atual.",cancelOnDate:"Seu plano será cancelado em {{date}}. Reative para manter seus créditos e recursos atuais.",cancelNoDate:"Sua assinatura está programada para ser cancelada. Reative para manter seus créditos e recursos atuais.",free:"Gratuito",monthly:"mensal",yearly:"anual",subscriptionCancelled:"Assinatura Cancelada",staysActiveUntil:"Tudo permanece ativo até {{date}}",creditsFormat:"{{messageCredits}} mensagem | {{integrationCredits}} integração",priceFormat:"{{amount}} {{symbol}}/{{period}}"},t8={privateApps:"Aplicativos privados",inAppCodeEditing:"Edição de código no app",unlimitedApps:"Aplicativos ilimitados",removeBase44Badge:"Remover badge Base44",connectDomain:"Conectar um domÃnio",backendFunctions:"Funções de backend",github2WaySync:"Sincronização bidirecional com Github",customOAuth:"OAuth personalizado do Google Console",aiModelSelection:"Seleção de modelo de IA",stripeIntegration:"Integração com Stripe",customEmailDomain:"DomÃnio de e-mail personalizado",appStoreFileDownloads:"Downloads de arquivos da loja de apps"},a8={title:"Pagamento em atraso",description:"O pagamento da sua assinatura está em atraso. Por favor, atualize seu método de pagamento para restaurar o acesso completo aos recursos do seu plano.",tryAgain:"Tentar novamente",trying:"Tentando..."},n8={title:"Método de Pagamento",manage:"Gerenciar",noPaymentMethod:"Nenhum método de pagamento cadastrado",default:"Padrão",expires:"Expira {{month}}/{{year}}"},i8={title:"Informações de Faturamento",manage:"Gerenciar",name:"Nome",email:"E-mail",billingAddress:"Endereço de Faturamento",noInformation:"Nenhuma informação de faturamento disponÃvel"},r8={title:"Histórico de Faturamento",noHistory:"Nenhum histórico de faturamento disponÃvel",loading:"Carregando histórico de faturamento...",loadError:"Falha ao carregar dados de faturamento",planDescription:"Plano {{plan}}",downloadInvoice:"Baixar Fatura"},o8={managingBillingFor:"Gerenciando faturamento para <bold>{{name}}</bold>",subscriptionRenewsOn:"A assinatura do espaço de trabalho renova em {{date}}",noActiveSubscription:"Sem assinatura ativa no espaço de trabalho",manage:"Gerenciar",defaultName:"espaço de trabalho",addSeats:"Adicionar Licenças",loadError:"Falha ao carregar histórico de faturamento do espaço de trabalho",workspaceSeats:"Licenças do Espaço de Trabalho",contactAdmin:{title:"Plano do espaço de trabalho",subtitle:"Gerenciado pelo seu espaço de trabalho",body:"Precisa de mais créditos? Entre em contato com o administrador do seu espaço de trabalho para fazer upgrade do plano da equipe."}},s8={portalError:"Falha ao abrir o portal de cobrança. Tente novamente mais tarde ou entre em contato com o suporte.",paymentPortalError:"Falha ao abrir o gerenciamento de pagamento. Por favor, tente novamente.",scheduleCancelSuccess:"Agendamento de assinatura cancelado com sucesso",scheduleCancelError:"Falha ao cancelar o agendamento de assinatura. Por favor, tente novamente mais tarde.",subscriptionCancelError:"Falha ao cancelar a assinatura. Por favor, tente novamente."},l8={title:JZ,manageSubscription:QZ,breadcrumb:XZ,subscription:e8,features:t8,pastDue:a8,paymentMethod:n8,billingInformation:i8,billingHistory:r8,workspace:o8,toasts:s8},c8={title:"Vamos conversar",subtitle:"Conecte-se com nossa equipe para ver como o Base44 pode ajudar sua organização.",form:{firstName:"Nome*",lastName:"Sobrenome*",workEmail:"E-mail corporativo*",companyWebsite:"Site da empresa*",role:"Cargo*",discussion:"O que você gostaria de discutir?",submit:"Enviar"},success:{title:"Agradecemos por entrar em contato!",description:"Recebemos sua mensagem e nossa equipe entrará em contato em até 24 horas. Estamos animados para ajudá-lo em sua jornada com o Base44!"}},d8={iso27001:{title:"ISO 27001",subtitle:"Gestão de segurança ISO"},soc2:{title:"SOC 2 Tipo II",subtitle:"SOC para organizações de serviços"},gdpr:{title:"RGPD",subtitle:"Regulamento de proteção de dados e privacidade"}},u8={fiveApps:"5 aplicativos",unlimitedCollaborators:"Colaboradores ilimitados",userAnalytics:"Análises de usuário",aiAgents:"Agentes de IA",limitedDb:"Banco de dados limitado a 512 MB",unlimitedApps:"Aplicativos ilimitados",unlimitedNumberOfApps:"Número ilimitado de aplicativos",connectDomain:"Conectar um domÃnio",connectorsIntegrations:"Conectores e integrações",backendFunctions:"Funções de backend",scaledUserAnalytics:"Análises de usuário escaláveis",privateApps:"Aplicativos privados",flexibleAiModelControl:"Controle flexÃvel do modelo de IA",removeBase44Branding:"Remover a marca Base44",inAppCodeEditing:"Edição de código no aplicativo",inAppCodeEdits:"Edição de código no aplicativo",freeDomainOneYear:"DomÃnio gratuito por 1 ano",creditsToShare:"25 créditos para compartilhar com um amigo",githubTwoWayIntegration:"Integração bidirecional com GitHub",githubIntegration:"Integração com GitHub",earlyAccessBeta:"Acesso antecipado a funcionalidades beta",premiumSupport:"Suporte Premium",sso:"SSO",prioritySupport:"Suporte prioritário",workspacePublishingControls:"Controles de publicação do espaço de trabalho",workspaceTemplates:"Modelos de espaço de trabalho",ipWhitelisting:"Lista de permissões de IP",workspaceUsageAnalytics:"Análises de uso do espaço de trabalho",userRolesPermissions:"Funções e permissões de usuário",dataTrainingOptOut:"Exclusão do treinamento de dados",scim:"SCIM",creditConsumptionControl:"Controle de consumo de créditos",dedicatedAccountManager:"Gerente de conta dedicado",dedicatedSolutionEngineer:"Engenheiro de soluções dedicado",enterpriseSupport:"Suporte empresarial",customSecurityCapabilities:"Capacidades de segurança personalizadas",customDatabaseStorage:"Armazenamento de banco de dados personalizado",customRateLimits:"Limites de taxa personalizados",tailoredOnboarding:"Onboarding e capacitação personalizados",workspaceMonitoringApi:"API de monitoramento do espaço de trabalho"},p8={unlimitedApps:"Apps ilimitados",unlimitedCollaboratorsSharedCredits:"Colaboradores ilimitados com créditos compartilhados",customDomain:"DomÃnio personalizado",removeBase44Branding:"Remover marca Base44",builtInIntegrations:"Integrações incluÃdas",automations:"Automações",chooseAiModel:"Escolha seu modelo de IA",inAppCodeEditing:"Edição de código no app",twoWayGithubSync:"Sincronização bidirecional com GitHub",privateTemplates:"Modelos privados",earlyAccessNewFeatures:"Acesso antecipado a novos recursos",prioritySupport:"Suporte prioritário"},m8={choosePlan:"Escolha o plano certo para você",usage:"Uso",back:"Voltar",chooseBillingCycleUpgrade:"Escolha seu ciclo de cobrança para fazer upgrade para {{planName}}",selectBillingCycle:"Escolha um ciclo de cobrança para o seu plano {{planName}}",viewBilling:"Ver cobrança",seePricing:"Ver preços"},g8={desktop:"Base44 faz parte do <wixLogo/> - Com a confiança de mais de 250 milhões de pessoas em todo o mundo",mobile:{line1:"Base44 faz parte do <wixLogo/>",line2:"Com a confiança de mais de 250 milhões de pessoas em todo o mundo"}},h8={badge:{recommended:"Recomendado",popular:"Popular",mostPopular:"Mais popular",currentPlan:"Plano atual",discountOff:"{{discount}} de desconto"},button:{processing:"Processando...",notAvailable:"Não disponÃvel",manageSubscription:"Gerenciar assinatura",managePlan:"Gerenciar plano",currentPlan:"Plano atual",upgradePlan:"Fazer upgrade do plano",upgradeTo:"Fazer upgrade para {{planName}}",downgradeTo:"Fazer downgrade para {{planName}}",downgradePlan:"Fazer downgrade do plano",switchPlan:"Trocar plano",subscribeTo:"Assinar {{planName}}",bookDemo:"Agendar demo",getPlan:"Obter {{planName}}"},credits:{monthly:"Créditos mensais",integration:"Créditos de integração",monthlyLower:"créditos mensais",integrationLower:"créditos de integração",messageCredits:"créditos de mensagens",perMonth:"/mês",sharedAcrossUsers:"Compartilhado entre usuários ilimitados",messageShort:"mensagens",integrationShort:"integração"},features:{highlights:"Destaques do plano:",allInBusinessPlus:"Tudo no Business mais:",allInBuilderPlus:"Tudo no Builder mais:",unlimitedAgents:"Número ilimitado de agentes"},free:{dailyCredits:"{{dailyCredits}} créditos diários (até {{monthlyMax}}/mês)",integrationCredits:"{{amount}} créditos de integração"},enterprise:{description:"Governança, escalabilidade e suporte empresarial, com um modelo de <bold>preço personalizado</bold> e uma quantidade de créditos personalizada."}},f8={offTiers:"Planos com 30% de desconto",currentPlan:"Plano atual",popular:"Popular",messageCredits:"créditos de mensagens",integrationCredits:"créditos de integração",perMonth:"/mês",placeholder:"Selecionar créditos",footer:{cantFind:"Não encontrou um plano adequado?",contactUs:"Fale conosco"}},v8={button:{cancel:"Cancelar",confirmUpgrade:"Confirmar upgrade",confirmDowngrade:"Confirmar downgrade",confirmSwitch:"Confirmar troca",processing:"Processando...",continue:"Continuar"},upgrade:{title:"Confirmar upgrade de assinatura",upgradeDescription:"Você está prestes a fazer upgrade para o plano {{planName}} por <price/>. Sua assinatura será atualizada imediatamente e você será cobrado proporcionalmente pelo restante do seu ciclo de faturamento.",upgradeDescriptionYearly:"Você está prestes a fazer upgrade para o plano anual {{planName}} por <price/>. Sua assinatura será atualizada imediatamente e você será cobrado proporcionalmente pelo restante do seu ciclo de faturamento.",upgradeDescriptionShort:"Você está prestes a fazer upgrade para o plano {{planName}} por <price/>. Sua assinatura será atualizada imediatamente e você será cobrado proporcionalmente."},downgrade:{title:"Confirmar downgrade de assinatura",description:"Você está prestes a fazer downgrade para o plano {{planName}} por {{price}}/mês. Esta alteração entrará em vigor no final do seu ciclo de faturamento atual."},switch:{title:"Trocar plano",switchDescription:"Ao trocar para o plano {{planName}}, seus recursos disponÃveis serão atualizados e seus limites mensais serão definidos para <bold>{{messageCredits}} créditos de mensagens e {{integrationCredits}} créditos de integração.</bold>",nextBillingDate:"Essas alterações entrarão em vigor em {{date}}, no inÃcio do seu próximo ciclo de faturamento.",nextBillingCycle:"Essas alterações entrarão em vigor no inÃcio do seu próximo ciclo de faturamento."},manageSubscription:{title:"Gerenciar sua assinatura",description:"Escolha como você gostaria de gerenciar sua assinatura {{planName}}.",upgradeToYearly:"Fazer upgrade para faturamento anual",upgradeToYearlySavings:"Economize e ganhe um domÃnio grátis + 25 créditos para compartilhar",upgradeToYearlySavingsStarter:"Economize e ganhe 25 créditos para compartilhar",managePayments:"Gerenciar pagamentos",managePaymentsDescription:"Atualizar método de pagamento, ver faturas e mais",managePaymentsDescriptionAlt:"Atualizar método de pagamento, ver faturas e mais"},upgradeToYearly:{titleV1:"Confirmar upgrade de assinatura",titleV2:"Fazer upgrade do plano",descriptionV2:"Após o upgrade, você será cobrado proporcionalmente pelo tempo restante do seu plano atual. A partir da sua próxima data de faturamento, você será cobrado pelo preço completo do plano de {{price}} × 12 meses.",benefitsTitle:"🎠BenefÃcios anuais",freeDomain:"DomÃnio grátis por um ano",shareCredits:"25 créditos para compartilhar com amigos",betterValue:"Melhor custo-benefÃcio com faturamento anual"}},b8={title:"Perguntas frequentes",whatIsBase44:{question:"O que é o Base44?",answer:{description:"O Base44 é uma plataforma alimentada por IA que permite criar aplicativos de software personalizados sem programação. Ele usa processamento de linguagem natural para entender seus requisitos e gerar software funcional com base em suas descrições.",accessibility:"Nossa plataforma foi projetada para ser fácil de usar e acessÃvel a usuários não técnicos, permitindo que você crie aplicativos poderosos por meio de conversas simples com nossa IA."}},freePlan:{question:"O que está incluÃdo no plano gratuito?",answer:{allowances:"O plano gratuito oferece uma cota diária de 5 mensagens e um limite mensal de 25 mensagens no total. Você também recebe 100 créditos de integração para experimentar várias integrações, como autenticação, banco de dados e análises.",coreAccess:"Com o plano gratuito, você tem acesso a todos os tipos de integração principais, permitindo criar aplicativos totalmente funcionais com autenticação de usuário, armazenamento de dados e muito mais – tudo sem custo."}},integrationCredits:{question:"O que são créditos de integração?",answer:{definition:"Os créditos de integração são usados para acessar as diversas integrações do Base44 dentro do seu aplicativo.",capabilities:"Essas integrações aprimoram a funcionalidade do seu app, incluindo LLMs, upload de arquivos, compreensão de imagens, geração de imagens, envio de e-mails, envio de SMS, consultas de banco de dados e muito mais. O número de créditos de integração em seu plano determina quantas dessas solicitações você pode fazer por mês.",expiration:"Os créditos não utilizados expiram no final do seu ciclo de faturamento mensal (na sua data de redefinição).",learnMore:"Saiba mais sobre como os créditos são usados na Base de Conhecimento."}},appTypes:{question:"Que tipos de aplicativos posso criar com o Base44?",answer:{examples:"O Base44 é versátil e pode ser usado para criar uma ampla variedade de aplicativos, incluindo, mas não se limitando a: produtos SaaS totalmente funcionais, ferramentas de back-office, aplicativos de produtividade pessoal, portais para clientes e ferramentas de automação de processos de negócios.",prototyping:"Você também pode usá-lo para prototipagem rápida e criação de MVPs, permitindo validar suas ideias rapidamente sem investir em recursos de desenvolvimento caros."}},ownership:{question:"Quem é o proprietário dos aplicativos criados com o Base44?",answer:{yourProperty:"Entre você e o Base44, todos os aplicativos e conteúdos gerados por meio de nossa plataforma serão considerados de sua propriedade. Não reivindicamos nenhum direito de propriedade sobre o que você cria usando o Base44.",intellectualProperty:"Sua propriedade intelectual é sua, e você é livre para usar, modificar, distribuir ou vender os aplicativos gerados conforme permitido por lei."}},deployment:{question:"Como os aplicativos Base44 são implantados?",answer:{instantAccess:"Com o Base44, a implantação é incrivelmente simples. Seus aplicativos ficam instantaneamente utilizáveis e compartilháveis assim que você os cria. Basta usar e compartilhar a URL do seu app com outras pessoas.",noHosting:"Não há necessidade de etapas separadas de hospedagem ou implantação, tornando incrivelmente fácil colocar seu aplicativo em funcionamento rapidamente."}},planLimits:{question:"O que acontece se eu atingir os limites do meu plano?",answer:{limitations:"Quando você atingir seu limite diário de mensagens, precisará aguardar até o dia seguinte para enviar mais mensagens. Se você atingir seu limite mensal, não poderá enviar mensagens adicionais ou fazer solicitações de integração até o inÃcio do seu próximo ciclo de faturamento.",upgradeOption:"Para evitar interrupções no desenvolvimento e uso do seu app, você pode atualizar para um plano de nÃvel superior com limites aumentados a qualquer momento no seu painel de faturamento."}}},y8={pendingChange:{title:"Alteração de assinatura pendente",message:"Você tem uma alteração de assinatura para o plano {{tierName}} programada para entrar em vigor no final do seu ciclo de faturamento atual.",subMessage:'Nota: Para cancelar sua assinatura, primeiro cancele esta alteração e depois use "gerenciar pagamentos" para cancelar.',cancelChange:"Cancelar alteração",cancelling:"Cancelando..."},cancellation:{title:"Cancelamento de assinatura programado",message:"Sua assinatura terminará em {{endDate}}. Até lá, você tem acesso completo a todos os recursos.",subMessage:"Quer manter sua assinatura? Você pode reativá-la com um clique.",managePayments:"Gerenciar pagamentos",processing:"Processando..."}},k8={currentPlan:"Seu plano atual é {{displayName}},",withCredits:"com {{messageCredits}} créditos de mensagens e {{integrationCredits}} créditos de integração."},w8={title:"BenefÃcios do Base44:",responsiveVisualEditor:"Editor visual responsivo",builtInBackend:"Backend integrado",userManagement:"Gerenciamento de usuários"},A8={title:"Pagamento de assinatura em atraso",tryAgain:"Tentar novamente",trying:"Tentando...",updatePaymentMethod:"Atualizar método de pagamento",description:"Seu último pagamento não foi processado. Tente novamente ou atualize seu método de pagamento para restaurar o acesso completo ao seu plano."},S8={error:"Erro",success:"Sucesso",checkoutError:"Falha ao criar sessão de checkout. Por favor, tente novamente mais tarde.",subscriptionUpdated:"Assinatura atualizada",downgradeScheduled:"Sua assinatura foi programada para redução no final do seu ciclo de faturamento.",upgradeSuccess:"Sua assinatura foi atualizada para um plano superior com sucesso. As alterações serão refletidas em breve.",updateError:"Falha ao atualizar a assinatura. Por favor, tente novamente mais tarde.",portalError:"Falha ao abrir o portal de faturamento. Por favor, tente novamente mais tarde.",scheduleCancelSuccess:"Programação de assinatura cancelada com sucesso",scheduleCancelError:"Falha ao cancelar a programação de assinatura. Por favor, tente novamente mais tarde.",paymentPortalError:"Falha ao abrir o gerenciamento de pagamentos. Por favor, tente novamente."},C8={loadError:"Falha ao carregar informações de faturamento do espaço de trabalho",loadErrorAlert:"Não foi possÃvel carregar as informações de faturamento do espaço de trabalho. Por favor, tente novamente mais tarde.",seatTypePlan:"Plano {{seatType}}",currentPlanContact:"Você está atualmente no plano {{seatType}}. Para fazer alterações, entre em contato com o {{adminType}} do seu espaço de trabalho.",workspaceOwner:"Proprietário do espaço de trabalho:",workspaceAdmin:"Administrador do espaço de trabalho:",viewerAccess:"Acesso de visualização",viewerAccessDescription:"Você atualmente tem acesso de visualização neste espaço de trabalho. Para obter um assento com acesso completo, entre em contato com o {{adminType}} do seu espaço de trabalho.",adminAccessMessage:"<strong>Acesso de administrador:</strong> Visite o <a>painel do espaço de trabalho</a> para gerenciar assentos, faturamento e membros da equipe.",adminTypes:{owner:"proprietário",administrator:"administrador"}},D8={loadError:"Não foi possÃvel carregar as informações do espaço de trabalho. Por favor, tente novamente mais tarde.",workspacePlan:"Plano do espaço de trabalho:",renews:"Renovação:",workspaceOwner:"Proprietário do espaço de trabalho",contactOwner:"Para alterações de faturamento ou dúvidas sobre a assinatura, entre em contato com o proprietário do seu espaço de trabalho.",ownerLabel:"Proprietário do espaço de trabalho:",adminAccessMessage:"<strong>Acesso de administrador:</strong> Visite a página de <a>membros do espaço de trabalho</a> para gerenciar membros.",billingManagedByOwner:"O faturamento é gerenciado pelo proprietário do seu espaço de trabalho. Entre em contato com o proprietário listado acima para qualquer dúvida relacionada ao faturamento.",roles:{owner:{title:"Proprietário",description:"Acesso completo ao faturamento, configurações e gerenciamento de membros do espaço de trabalho."},admin:{title:"Administrador",description:"Pode gerenciar configurações e membros do espaço de trabalho, mas não pode modificar o faturamento."},editor:{title:"Editor",description:"Pode criar e editar apps dentro deste espaço de trabalho."},viewer:{title:"Visualizador",description:"Pode visualizar apps neste espaço de trabalho com acesso somente leitura."},member:{title:"Membro",description:"Membro da equipe com acesso aos apps do espaço de trabalho."},guest:{title:"Convidado",description:"Colaborador externo com acesso a apps especÃficos neste espaço de trabalho."}}},T8={title:"Segurança e conformidade",iso:{title:"ISO/IEC 27001",subtitle:"Gestão de segurança ISO/IEC"},soc2:{title:"SOC 2 Type II",subtitle:"SOC para organizações de serviços"},gdpr:{title:"GDPR",subtitle:"Regulamento de proteção de dados e privacidade"}},E8={title:"Base44 para Empresas",subtitle:"Capacite grandes organizações a criar soluções que se encaixam perfeitamente em suas equipes, com segurança e em escala",contactUs:"Fale Conosco",features:{onboarding:{title:"Integração e Treinamento",description:"Planos de integração personalizados combinados com treinamentos ao vivo e recursos, projetados para ajudar administradores e usuários finais a adotarem rapidamente."},accountTeam:{title:"Equipe de Conta Dedicada",description:"Trabalhe com um gerente de contas e um engenheiro de soluções designados, fornecendo orientação direta, escalações e alinhamento de roadmap."},prioritySupport:{title:"Suporte prioritário, garantido",description:"Obtenha assistência prioritária garantida e tempos de resposta definidos por meio de um canal de suporte dedicado."},capabilities:{title:"Capacidades de NÃvel Empresarial",description:"Recursos de segurança, conformidade, gerenciamento e monitoramento — proporcionando o controle e a flexibilidade necessários em escala."}}},P8={yearly:"Anual",monthly:"Mensal",yearlyInline:"anual",monthlyInline:"mensal",monthlyCredits:"Créditos mensais",integrationCredits:"Créditos de integração",priceSuffixYearly:" × 12 meses",priceSuffixMonthly:" / por mês",off:"OFF",save:"ECONOMIZE",discountBadge:"{{discount}} OFF",saveBadge:"ECONOMIZE {{amount}}",planNotFound:"Preços do plano não disponÃveis. Por favor, volte e tente novamente.",upgradeDialogTitle:"Confirmar atualização de assinatura",upgradeDialogDescription:"Você está prestes a atualizar para o plano {{planName}} por <price/>/mês. Sua assinatura será atualizada imediatamente e você será cobrado um valor proporcional pelo restante do seu ciclo de cobrança.",noteMonthlyExcludes:"NOTA: A assinatura mensal não inclui:",whatsIncluded:"O que está incluÃdo no plano {{period}}",chooseYearly:"Escolha uma assinatura <yearlyLink>anual</yearlyLink> para aproveitar ao máximo seu plano premium",yearlyFeatures:{discount:"Aproveite um desconto especial e economize",freeDomain:"DomÃnio gratuito por 1 ano",shareCredits:"Receba 25 créditos para compartilhar com um amigo"},monthlyFeatures:{discount:"Desconto especial e economias",freeDomain:"DomÃnio gratuito por 1 ano",shareCredits:"25 créditos para compartilhar com um amigo"},planNotAvailable:"Preços do plano não disponÃveis. Por favor, tente novamente.",goBack:"Voltar",continueToCheckout:"Continuar para o pagamento",confirmSubscriptionUpgrade:"Confirmar upgrade de assinatura",upgradeDescription:"Você está prestes a fazer upgrade para o plano {{planName}} por <strikethrough>{{originalPrice}}</strikethrough>{{price}}/mês. Sua assinatura será atualizada imediatamente e será cobrado um valor proporcional pelo restante do seu ciclo de faturamento.",cancel:"Cancelar",confirmUpgrade:"Confirmar upgrade",processing:"Processando...",studentDiscountFootnote:"A oferta se aplica ao primeiro ano (12 meses) de um novo plano Starter. Uso único por usuário; o desconto não pode ser reativado após o cancelamento."},_8={bannerTitle:"Estudante ou professor? Até {{percent}}% de desconto no plano Starter",bannerSubtitle:"Verifique seu e-mail universitário para desbloquear preços com desconto",verifiedWith:"Verificado com {{email}} - até {{percent}}% de desconto",starterPlan:"Plano Starter",active:"Ativo",dialogTitle:"Desconto estudantil",surveyTitle:"Conte-nos sobre você",alreadyActiveDesc:"Seu desconto estudantil já está ativo.",emailStepDesc:"Verifique seu e-mail universitário para desbloquear preços estudantis.",codeStepDesc:"Enviamos um código de 6 dÃgitos para {{email}}",surveyStepDesc:"Apenas algumas perguntas rápidas para completar sua verificação.",benefitDiscount:"Até {{percent}}% de desconto",benefitDiscountDetail:"no plano Starter",benefitAccess:"Acesso completo",benefitAccessDetail:"a todos os recursos do Starter",benefitClaimOnce:"Resgate uma vez",benefitClaimOnceDetail:"use a qualquer momento no Starter",alreadyApplied:"Seu desconto estudantil já está aplicado",alreadyAppliedDesc:"Verificado com {{email}}. Os preços com desconto são exibidos nos planos elegÃveis acima.",gotIt:"Entendi",emailPlaceholder:"você@universidade.edu",emailHint:"Aceitamos .edu, .ac.uk, .ac.il e outros domÃnios universitários.",sending:"Enviando...",sendCode:"Enviar código de verificação",codePlaceholder:"Digite o código de 6 dÃgitos",verifying:"Verificando...",verifyCode:"Verificar código",changeEmail:"Alterar e-mail",resendCooldown:"Reenviar código ({{seconds}}s)",resendCode:"Reenviar código",role:"Função",student:"Estudante",teacher:"Professor",intendedUseLabel:"Para que você planeja usar o Base44?",intendedUsePlaceholder:"ex.: Projeto de aula, ferramenta de pesquisa, tese...",fieldOfStudy:"Qual é sua área de estudo?",fieldOfTeaching:"Qual é sua área de ensino?",selectField:"Selecione a área de estudo...",searchFields:"Pesquisar áreas...",other:"Outro",specifyField:"Por favor especifique...",graduationDate:"Data prevista de formatura",month:"Mês",year:"Ano",activating:"Ativando...",verifyingEmail:"Verificando e-mail...",activateDiscount:"Ativar desconto",errorNoEmail:"Por favor insira seu endereço de e-mail universitário.",errorInvalidEmail:"Por favor insira um endereço de e-mail válido.",errorSendFailed:"Falha ao enviar o código de verificação. Por favor tente novamente.",errorEmailAlreadyClaimed:"Este e-mail universitário já está vinculado a outra conta.",errorNoCode:"Por favor insira o código de 6 dÃgitos do seu e-mail.",errorInvalidCode:"Código inválido ou expirado. Por favor tente novamente.",errorNoIntendedUse:"Por favor nos diga para que você planeja usar o Base44.",errorNoField:"Por favor selecione sua área de estudo.",errorNoFieldOther:"Por favor especifique sua área de estudo.",errorNoGraduation:"Por favor selecione sua data prevista de formatura.",toastActivatedTitle:"Desconto estudantil ativado",toastActivatedDesc:"Seus preços estudantis agora estão aplicados aos planos elegÃveis. Role para cima para ver os preços atualizados.",errorActivateFailed:"Falha ao ativar o desconto. Por favor tente novamente.",toastResentTitle:"Código reenviado",toastResentDesc:"Um novo código de verificação foi enviado para seu e-mail.",errorResendFailed:"Falha ao reenviar o código. Por favor aguarde um momento e tente novamente."},x8="Seu plano atual foi adquirido com um cartão presente. O crédito do cartão presente não é transferido em atualizações — você será cobrado pelo preço proporcional.",I8={title:"Compra realizada com sucesso",redirecting:"Redirecionando para o app em {{seconds}}s...",button:"Voltar ao app"},R8={modal:c8,certificates:d8,features:u8,borderTag:p8,header:m8,messageLabel:g8,card:h8,dropdown:f8,dialog:v8,faq:b8,notices:y8,manageSubscription:k8,benefits:w8,overduePayment:A8,toasts:S8,workspaceBilling:C8,workspaceRoles:D8,security:T8,enterprise:E8,periodSelector:P8,studentDiscount:_8,upgradeGiftCardWarning:x8,returnToApp:I8},z8="Convide amigos e ganhe créditos",M8="Convide amigos e ganhe créditos",N8="Convide e ganhe créditos",F8="Compartilhe seu link e ganhe {{credits}} créditos quando seus amigos publicarem o primeiro app",L8={title:"IncrÃvel! Você atingiu o máximo de indicações",description:"Você pode indicar até {{maxReferrals}} amigos no total",extra:"({{extra}} adicionais não ganharão créditos)"},j8={tryAgain:"Tentar novamente",copied:"Copiado para a área de transferência!",copyButton:"Copiar",copiedButton:"Copiado"},O8={title:"Como funciona",shareLink:"Compartilhe seu link de indicação exclusivo com amigos",signupBonus:"Eles ganham <bold>{{credits}} créditos</bold> ao se cadastrarem",publishReward:"Você ganha <bold>{{credits}} créditos</bold> quando publicam o primeiro app"},B8="Suas indicações ({{current}}/{{max}})",U8={registered:"Registrado",earned:"Ganho"},q8={back:"Voltar",close:"Fechar",srTitle:"Programa de indicação",baseDayBadge:"Base44 Day",creditsCount:"{{credits}} créditos",earnCredits:"Ganhe {{credits}} créditos",termsAndConditions:"Termos e condições",termsDescription:"Termos e condições do programa de indicação"},V8={title:"Termos e condições",eligibility:{title:"Elegibilidade",newUsersOnly:"Somente novos usuários podem participar desta oferta de indicação. Contas existentes não estão incluÃdas.",shareResponsibly:"Pedimos que você compartilhe seu link de indicação com responsabilidade. Postá-lo em lugares irrelevantes ou de spam pode resultar na remoção do programa."},credits:{title:"Créditos de indicação",earnOnPublish:"Você ganha {{credits}} créditos quando um amigo indicado publica o seu primeiro app",bonusOnSignup:"Amigos indicados recebem {{credits}} créditos de bônus ao se cadastrarem",maxPerAccount:"Máximo de 5 indicações bem-sucedidas por conta",noCashValue:"Créditos não têm valor em dinheiro e não podem ser transferidos"},restrictions:{title:"Restrições",voidFraudulent:"A Base44 reserva-se o direito de anular indicações fraudulentas",nonTransferable:"Códigos de indicação não são transferÃveis"},footer:"A Base44 reserva-se o direito de modificar ou encerrar este programa de indicação a qualquer momento. As alterações serão comunicadas pela plataforma."},$8={title:z8,titleDesktop:M8,titleMobile:N8,subtitle:F8,maxReached:L8,link:j8,howItWorks:O8,yourReferrals:B8,status:U8,dialog:q8,terms:V8},W8={title:"Spotlight",subtitle:"Explore aplicações e sites excepcionais criados com Base44",loading:"Carregando Spotlight…",errorMessage:"Não foi possÃvel carregar o Spotlight. Tente novamente mais tarde.",empty:"Ainda não há apps no Spotlight."},G8={title:"Erro",description:"Falha ao carregar os apps do Spotlight."},H8={label:"Destaque do dia",byCreator:"por {{creator}}",screenshotAlt:"Captura de tela de {{appName}}",logoAlt:"Logo de {{appName}}"},Y8={"beautifully-designed":"Lindamente projetado","loved-by-the-community":"Amado pela comunidade",saas:"SaaS",education:"Educação","e-commerce":"E-commerce",websites:"Sites"},K8={screenshotAlt:"Captura de tela de {{appName}}",logoAlt:"Logo de {{appName}}",viewDetailsLabel:"Ver detalhes",viewDetailsAriaLabel:"Ver detalhes de {{appName}}"},Z8={backButton:"Spotlight",byCreator:"Por {{creator}}",iframeTitle:"Prévia de {{appName}}",previewNotAvailable:"Prévia não disponÃvel"},J8={ariaLabel:"Enviar seu app ao Spotlight",heading:"Quer que seu app apareça aqui?",description:"Mostre o que você construiu no Base44. Envie para o Spotlight e inspire a comunidade.",buttonText:"ENVIE SEU APP"},Q8={title:"Enviar seu app ao Spotlight",selectAppSubtitle:"Escolha o app que deseja nomear para a página Spotlight.",detailsSubtitle:"Conte-nos por que seu app deveria ser apresentado na página Spotlight.",back:"Voltar",cancel:"Cancelar",next:"Próximo",searchPlaceholder:"Buscar apps...",aboutLabel:"Sobre este app",aboutPlaceholder:"Conte-nos algo interessante sobre seu app – recursos especiais, truques inteligentes ou qualquer coisa que a comunidade adoraria descobrir",screenshotLabel:"Captura de tela <optional>(opcional)</optional>",screenshotHint:"PNG, JPG ou WebP — mÃn. 800×450 px, até 2 MB",submit:"Enviar",submitting:"Enviando…",submitError:"Falha ao enviar a solicitação do Spotlight.",successAlreadyInSpotlight:"Já está no Spotlight",successRequestReceived:"Solicitação recebida",successDescription:'Vamos analisar "{{appName}}" para o Spotlight. Em breve entraremos em contato.'},X8={viewApp:"Ver App",share:"Compartilhar",upvote:"Votar",alreadyUpvoted:"Já votou",thankYouForVote:"Obrigado pelo seu voto!",voteError:"Não foi possÃvel registrar o voto",voteErrorDescription:"Tente novamente mais tarde.",linkShared:"Link compartilhado",linkCopied:"Link copiado para a área de transferência",shareError:"Não foi possÃvel compartilhar"},e9={label:"Você sabia?"},t9={editedAgo:"editado {{timeAgo}}",editedRecently:"Editado recentemente",noAppsFound:"Nenhum app encontrado",noAppsAvailable:"Nenhum app disponÃvel",loadMore:"Carregar mais apps",loading:"Carregando…"},a9={page:W8,fetchError:G8,featured:H8,sections:Y8,card:K8,detailModal:Z8,submitBanner:J8,requestModal:Q8,actions:X8,didYouKnow:e9,appPicker:t9},n9={page:{title:"Ajuda & Suporte",subtitle:"Obtenha a ajuda necessária para criar aplicações incrÃveis com BASE44"},getStarted:"Começar",cards:{documentation:{title:"Documentação",description:"Explore guias abrangentes, tutoriais, FAQs e melhores práticas para desenvolver com Base44."},discord:{title:"Comunidade Discord",description:"Conecte-se com outros desenvolvedores e obtenha ajuda instantânea da nossa comunidade ativa."},supportTicket:{title:"Abrir Ticket de Suporte",description:"Envie um ticket de suporte detalhado e obtenha assistência personalizada."}},appContext:{title:"Suporte EspecÃfico do Aplicativo",description:"As solicitações de suporte serão associadas ao aplicativo <appId>{{appId}}</appId>"},quickActions:{title:"Ações Rápidas",subtitle:"Gerencie sua experiência de suporte",myTickets:{title:"Meus Tickets de Suporte",description:"Ver e gerenciar seus tickets de suporte existentes"},communityForum:{title:"Fórum da Comunidade",description:"Nossa nova comunidade do Reddit"}}},i9={fallbackTitle:"Conversa de suporte",appLink:"App"},r9={title:"Meus tickets de suporte",backToSupport:"Voltar ao suporte",showingTicketsForApp:"Exibindo tickets para o App: <app>{{appId}}</app>",filteredByApp:"Filtrado por App: <app>{{appId}}</app>"},o9={title:"Enviar ticket de suporte",titleResume:"Enviar um ticket de suporte"},s9={helpMessage:"Precisa de ajuda imediata? <normal>Confira nossa </normal><docsLink>documentação</docsLink><normal> ou participe da nossa </normal><discordLink>comunidade do Discord</discordLink>."},l9={heading:"Continuar com sua solicitação de suporte?",description:"Você começou a criar um ticket de suporte anteriormente.",chooseHowToProceed:"Escolha como deseja prosseguir:",continueWhereLeftOff:"Continuar de onde parou",continueWhereLeftOffDesc:"Restaure suas entradas anteriores e continue do último passo.",startNewTicket:"Iniciar um novo ticket",startNewTicketDesc:"Descarte o rascunho e inicie uma nova solicitação de suporte.",continue:"Continuar"},c9={tellUsAboutYourIssue:"Conte-nos sobre o seu problema",whatTypeOfIssue:"Que tipo de problema você está enfrentando?",selectApp:"Selecione o app relacionado ao seu problema"},d9={instruction:"Por favor, compartilhe o que estava fazendo, o que deu errado e como podemos reproduzir.",descriptionLabel:"Descrição",descriptionPlaceholder:`Exemplo:
• O que você estava tentando fazer
• O que aconteceu em vez disso
• Qualquer mensagem de erro
• Passos para reproduzir (se relevante)`,attachmentsLabel:"Anexos",viewApp:"Ver app",dragAndDropFiles:"Arraste e solte arquivos aqui",dropFilesHere:"Solte os arquivos aqui",browseFiles:"Procurar arquivos",uploading:"Enviando...",unsupportedFileType:'O tipo de arquivo "{{type}}" não é suportado. Tipos suportados: jpg, jpeg, png, pdf.',invalidFile:"Arquivo inválido",failedToUpload:"Falha ao enviar o arquivo"},u9={analyzingIssue:"Analisando seu problema...",categoryFullDescription:"Parece que seu problema se enquadra em uma dessas categorias.<br/>Selecione a que melhor se encaixa — isso nos ajuda a guiar você para a solução certa."},p9={authentication:"Autenticação",billing:"Faturamento",bug_report:"Relatório de bug",domain:"DomÃnio",integrations_and_backend_functions:"Integrações e Backend",chat_issues:"Problemas de chat",security:"Segurança",social_post_bonus_credits:"Créditos de bônus por publicação social",superagent:"Superagente",other:"Outro"},m9={searchPlaceholder:"Pesquisar apps...",addAppLink:"Adicionar link do app",addAppLinkPlaceholder:"p. ex., https://your-app-url.com ou https://yourapp.base44.app",invalidUrl:"Por favor, insira uma URL válida começando com http:// ou https://",noAppsFound:"Nenhum app encontrado",noAppsAvailable:"Nenhum app disponÃvel",loadingMore:"Carregando...",loadMore:"Carregar mais apps",edited:"editado {{time}}"},g9={loading:"Carregando conversa...",errorTitle:"Erro ao carregar conversa",noConversationTitle:"Conversa não encontrada",noConversationMessage:"Esta conversa não existe ou você não tem acesso a ela.",tryAgain:"Tentar novamente",ticketFallbackTitle:"Ticket de suporte",categoryFallback:"Geral",closeTicket:"Fechar ticket",closing:"Fechando...",aiAssistantInfo:"Assistente de IA · Pode cometer erros",talkToSpecialist:"Falar com um especialista de suporte",handledBySpecialist:"Atendido por um especialista de suporte",notifyWhenResponds:"Notificar quando o suporte responder",ticketResolvedTitle:"Este ticket foi resolvido",ticketResolvedMessage:"Por favor, crie um novo ticket para suporte adicional",conversationClosed:"Esta conversa está fechada",aiHandlingTicket:"O agente de IA está gerenciando este ticket. Clique em <bold>Assumir</bold> para responder manualmente.",typeResponse:"Digite sua resposta...",typeMessage:"Digite sua mensagem...",failedLoadConversation:"Falha ao carregar a conversa. Por favor, tente novamente.",ticketAlreadyResolved:"Este ticket foi resolvido. Por favor, crie um novo ticket para suporte adicional.",failedCloseTicket:"Falha ao fechar o ticket. Por favor, tente novamente.",failedEscalate:"Falha ao escalar o ticket. Por favor, tente novamente.",confirmCloseTicket:"Tem certeza de que deseja fechar este ticket? Ele será marcado como resolvido.",premiumSupportTier:"Suporte Premium",standardSupportTier:"Suporte Padrão",premiumSupportMessage:"Suporte offline, resposta prioritária em 48h",standardSupportMessage:"Suporte offline, resposta em 48h",templates:{label:"Modelos rápidos",less:"Menos"},draft:{title:"Resposta sugerida pela IA",collapse:"Recolher",viewAll:"Ver tudo",use:"Usar"},escalateModal:{title:"Solicitar suporte humano",description:"Seu ticket será transferido para nossa equipe de suporte para uma resposta personalizada.",cancel:"Cancelar",requesting:"Solicitando...",requestButton:"Solicitar suporte humano"}},h9={supportTeam:"Equipe de suporte",attachedFile:"Arquivo anexado",translatedFrom:"Traduzido de {{language}}",internalNote:"Nota interna",emptyTitle:"Inicie a conversa",emptyMessage:"Envie uma mensagem para começar sua conversa de suporte",translating:"Traduzindo...",showingTranslations:"Mostrando traduções",translateToEnglish:"Traduzir para inglês",confirmDeleteMessage:"Tem certeza de que deseja excluir esta mensagem?",failedDeleteMessage:"Falha ao excluir a mensagem. Por favor, tente novamente.",failedTranslate:"Falha ao traduzir as mensagens. Por favor, tente novamente.",attachedContent:"Conteúdo anexado",videoNotSupported:"Seu navegador não suporta reprodução de vÃdeo.",noteBy:"por {{name}}",adminFallback:"Admin",events:{unknownActor:"Alguém",statusChange:"{{actor}} alterou o status para {{status}}",unassigned:"{{actor}} removeu a atribuição do ticket",assigned:"{{actor}} atribuiu a {{assignee}}",reassigned:"{{actor}} reatribuiu para {{assignee}}",escalated:"{{actor}} escalonou o ticket",removedEscalation:"{{actor}} removeu o escalonamento",categoryChange:"{{actor}} alterou a categoria para {{category}}",labelChangeAdded:"{{actor}} adicionou {{labels}}",labelChangeRemoved:"{{actor}} removeu {{labels}}",labelChangeBoth:"{{actor}} adicionou {{added}} e removeu {{removed}}",updated:"{{actor}} atualizou o ticket",markedAbusive:"{{actor}} marcou o conteúdo como abusivo",clearedAbusive:"{{actor}} removeu a marcação de conteúdo abusivo"}},f9={uploading:"Enviando...",uploadFiles:"Enviar arquivos",fileTypeError:"Por favor, solicite suporte para tipos de arquivo adicionais em <link>feedback.base44.com</link>"},v9={open:"Aberto",closed:"Fechado",all:"Todos"},b9={open:"Aberto",resolved:"Resolvido"},y9={noOpenTickets:"Nenhum ticket aberto",noClosedTickets:"Nenhum ticket fechado",noTickets:"Nenhum ticket",descriptionOpen:"Você não tem nenhum ticket de suporte aberto no momento.",descriptionClosed:"Nenhum ticket fechado encontrado.",descriptionAll:"Você ainda não enviou nenhum ticket de suporte."},k9={appLabel:"App: {{appId}}",dateNotAvailable:"Não disponÃvel"},w9={loadingTitle:"Erro ao carregar tickets",loadingFailed:"Falha ao carregar os tickets de suporte. Por favor, tente novamente.",ticketLimitTitle:"Limite de tickets atingido",ticketLimitDescription:"Há mais tickets do que é possÃvel carregar. Apenas os 1000 tickets mais recentes foram carregados."},A9={free:"Grátis"},S9={cancel:"Cancelar",back:"Voltar",skip:"Pular",continue:"Continuar",submitting:"Enviando...",refresh:"Atualizar",newTicket:"Novo ticket",createNewTicket:"Criar novo ticket",tryAgain:"Tentar novamente",bannedAlert:"Seu acesso ao Suporte Base44 foi restrito devido a uma violação dos Termos de Uso do Suporte Base44. Consulte o e-mail que enviamos para mais detalhes."},C9={descriptionRequired:"Por favor, adicione uma descrição",descriptionTooShort:"Por favor, adicione mais detalhes. O mÃnimo é de 20 caracteres.",appRequired:"Escolha um dos seus apps ou adicione um link para que saibamos onde o problema está acontecendo.",submissionFailed:"Não foi possÃvel enviar seu ticket de suporte. Por favor, tente novamente."},D9={dailyLimitReached:"Limite diário atingido",somethingWentWrong:"Algo deu errado",dailyLimitMessage:"Limite diário de conversas de suporte excedido. Você pode criar até {{limit}} conversas por dia com sua assinatura atual.",tryAgain:"Tentar novamente",cancel:"Cancelar",close:"Fechar"},T9={help:n9,sidebar:i9,page:r9,modal:o9,footer:s9,resumeStep:l9,steps:c9,tellUsAboutYourIssue:d9,whatTypeOfIssue:u9,categories:p9,selectApp:m9,chat:g9,messages:h9,input:f9,tabs:v9,status:b9,emptyState:y9,ticketCard:k9,errors:w9,tiers:A9,actions:S9,validation:C9,submissionError:D9},he=e=>typeof e=="string",Hr=()=>{let e,a;const n=new Promise((t,i)=>{e=t,a=i});return n.resolve=e,n.reject=a,n},yf=e=>e==null?"":""+e,E9=(e,a,n)=>{e.forEach(t=>{a[t]&&(n[t]=a[t])})},P9=/###/g,kf=e=>e&&e.indexOf("###")>-1?e.replace(P9,"."):e,wf=e=>!e||he(e),ro=(e,a,n)=>{const t=he(a)?a.split("."):a;let i=0;for(;i<t.length-1;){if(wf(e))return{};const r=kf(t[i]);!e[r]&&n&&(e[r]=new n),Object.prototype.hasOwnProperty.call(e,r)?e=e[r]:e={},++i}return wf(e)?{}:{obj:e,k:kf(t[i])}},Af=(e,a,n)=>{const{obj:t,k:i}=ro(e,a,Object);if(t!==void 0||a.length===1){t[i]=n;return}let r=a[a.length-1],o=a.slice(0,a.length-1),s=ro(e,o,Object);for(;s.obj===void 0&&o.length;)r=`${o[o.length-1]}.${r}`,o=o.slice(0,o.length-1),s=ro(e,o,Object),s&&s.obj&&typeof s.obj[`${s.k}.${r}`]<"u"&&(s.obj=void 0);s.obj[`${s.k}.${r}`]=n},_9=(e,a,n,t)=>{const{obj:i,k:r}=ro(e,a,Object);i[r]=i[r]||[],i[r].push(n)},Ml=(e,a)=>{const{obj:n,k:t}=ro(e,a);if(n)return n[t]},x9=(e,a,n)=>{const t=Ml(e,n);return t!==void 0?t:Ml(a,n)},gy=(e,a,n)=>{for(const t in a)t!=="__proto__"&&t!=="constructor"&&(t in e?he(e[t])||e[t]instanceof String||he(a[t])||a[t]instanceof String?n&&(e[t]=a[t]):gy(e[t],a[t],n):e[t]=a[t]);return e},Vi=e=>e.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g,"\\$&");var I9={"&":"&","<":"<",">":">",'"':""","'":"'","/":"/"};const R9=e=>he(e)?e.replace(/[&<>"'\/]/g,a=>I9[a]):e;class z9{constructor(a){this.capacity=a,this.regExpMap=new Map,this.regExpQueue=[]}getRegExp(a){const n=this.regExpMap.get(a);if(n!==void 0)return n;const t=new RegExp(a);return this.regExpQueue.length===this.capacity&&this.regExpMap.delete(this.regExpQueue.shift()),this.regExpMap.set(a,t),this.regExpQueue.push(a),t}}const M9=[" ",",","?","!",";"],N9=new z9(20),F9=(e,a,n)=>{a=a||"",n=n||"";const t=M9.filter(o=>a.indexOf(o)<0&&n.indexOf(o)<0);if(t.length===0)return!0;const i=N9.getRegExp(`(${t.map(o=>o==="?"?"\\?":o).join("|")})`);let r=!i.test(e);if(!r){const o=e.indexOf(n);o>0&&!i.test(e.substring(0,o))&&(r=!0)}return r},ju=function(e,a){let n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:".";if(!e)return;if(e[a])return e[a];const t=a.split(n);let i=e;for(let r=0;r<t.length;){if(!i||typeof i!="object")return;let o,s="";for(let l=r;l<t.length;++l)if(l!==r&&(s+=n),s+=t[l],o=i[s],o!==void 0){if(["string","number","boolean"].indexOf(typeof o)>-1&&l<t.length-1)continue;r+=l-r+1;break}i=o}return i},Nl=e=>e&&e.replace("_","-"),L9={type:"logger",log(e){this.output("log",e)},warn(e){this.output("warn",e)},error(e){this.output("error",e)},output(e,a){console&&console[e]}};class Fl{constructor(a){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};this.init(a,n)}init(a){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};this.prefix=n.prefix||"i18next:",this.logger=a||L9,this.options=n,this.debug=n.debug}log(){for(var a=arguments.length,n=new Array(a),t=0;t<a;t++)n[t]=arguments[t];return this.forward(n,"log","",!0)}warn(){for(var a=arguments.length,n=new Array(a),t=0;t<a;t++)n[t]=arguments[t];return this.forward(n,"warn","",!0)}error(){for(var a=arguments.length,n=new Array(a),t=0;t<a;t++)n[t]=arguments[t];return this.forward(n,"error","")}deprecate(){for(var a=arguments.length,n=new Array(a),t=0;t<a;t++)n[t]=arguments[t];return this.forward(n,"warn","WARNING DEPRECATED: ",!0)}forward(a,n,t,i){return i&&!this.debug?null:(he(a[0])&&(a[0]=`${t}${this.prefix} ${a[0]}`),this.logger[n](a))}create(a){return new Fl(this.logger,{prefix:`${this.prefix}:${a}:`,...this.options})}clone(a){return a=a||this.options,a.prefix=a.prefix||this.prefix,new Fl(this.logger,a)}}var Wa=new Fl;class xc{constructor(){this.observers={}}on(a,n){return a.split(" ").forEach(t=>{this.observers[t]||(this.observers[t]=new Map);const i=this.observers[t].get(n)||0;this.observers[t].set(n,i+1)}),this}off(a,n){if(this.observers[a]){if(!n){delete this.observers[a];return}this.observers[a].delete(n)}}emit(a){for(var n=arguments.length,t=new Array(n>1?n-1:0),i=1;i<n;i++)t[i-1]=arguments[i];this.observers[a]&&Array.from(this.observers[a].entries()).forEach(o=>{let[s,l]=o;for(let d=0;d<l;d++)s(...t)}),this.observers["*"]&&Array.from(this.observers["*"].entries()).forEach(o=>{let[s,l]=o;for(let d=0;d<l;d++)s.apply(s,[a,...t])})}}class Sf extends xc{constructor(a){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{ns:["translation"],defaultNS:"translation"};super(),this.data=a||{},this.options=n,this.options.keySeparator===void 0&&(this.options.keySeparator="."),this.options.ignoreJSONStructure===void 0&&(this.options.ignoreJSONStructure=!0)}addNamespaces(a){this.options.ns.indexOf(a)<0&&this.options.ns.push(a)}removeNamespaces(a){const n=this.options.ns.indexOf(a);n>-1&&this.options.ns.splice(n,1)}getResource(a,n,t){let i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{};const r=i.keySeparator!==void 0?i.keySeparator:this.options.keySeparator,o=i.ignoreJSONStructure!==void 0?i.ignoreJSONStructure:this.options.ignoreJSONStructure;let s;a.indexOf(".")>-1?s=a.split("."):(s=[a,n],t&&(Array.isArray(t)?s.push(...t):he(t)&&r?s.push(...t.split(r)):s.push(t)));const l=Ml(this.data,s);return!l&&!n&&!t&&a.indexOf(".")>-1&&(a=s[0],n=s[1],t=s.slice(2).join(".")),l||!o||!he(t)?l:ju(this.data&&this.data[a]&&this.data[a][n],t,r)}addResource(a,n,t,i){let r=arguments.length>4&&arguments[4]!==void 0?arguments[4]:{silent:!1};const o=r.keySeparator!==void 0?r.keySeparator:this.options.keySeparator;let s=[a,n];t&&(s=s.concat(o?t.split(o):t)),a.indexOf(".")>-1&&(s=a.split("."),i=n,n=s[1]),this.addNamespaces(n),Af(this.data,s,i),r.silent||this.emit("added",a,n,t,i)}addResources(a,n,t){let i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{silent:!1};for(const r in t)(he(t[r])||Array.isArray(t[r]))&&this.addResource(a,n,r,t[r],{silent:!0});i.silent||this.emit("added",a,n,t)}addResourceBundle(a,n,t,i,r){let o=arguments.length>5&&arguments[5]!==void 0?arguments[5]:{silent:!1,skipCopy:!1},s=[a,n];a.indexOf(".")>-1&&(s=a.split("."),i=t,t=n,n=s[1]),this.addNamespaces(n);let l=Ml(this.data,s)||{};o.skipCopy||(t=JSON.parse(JSON.stringify(t))),i?gy(l,t,r):l={...l,...t},Af(this.data,s,l),o.silent||this.emit("added",a,n,t)}removeResourceBundle(a,n){this.hasResourceBundle(a,n)&&delete this.data[a][n],this.removeNamespaces(n),this.emit("removed",a,n)}hasResourceBundle(a,n){return this.getResource(a,n)!==void 0}getResourceBundle(a,n){return n||(n=this.options.defaultNS),this.options.compatibilityAPI==="v1"?{...this.getResource(a,n)}:this.getResource(a,n)}getDataByLanguage(a){return this.data[a]}hasLanguageSomeTranslations(a){const n=this.getDataByLanguage(a);return!!(n&&Object.keys(n)||[]).find(i=>n[i]&&Object.keys(n[i]).length>0)}toJSON(){return this.data}}var hy={processors:{},addPostProcessor(e){this.processors[e.name]=e},handle(e,a,n,t,i){return e.forEach(r=>{this.processors[r]&&(a=this.processors[r].process(a,n,t,i))}),a}};const Cf={};class Ll extends xc{constructor(a){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};super(),E9(["resourceStore","languageUtils","pluralResolver","interpolator","backendConnector","i18nFormat","utils"],a,this),this.options=n,this.options.keySeparator===void 0&&(this.options.keySeparator="."),this.logger=Wa.create("translator")}changeLanguage(a){a&&(this.language=a)}exists(a){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{interpolation:{}};if(a==null)return!1;const t=this.resolve(a,n);return t&&t.res!==void 0}extractFromKey(a,n){let t=n.nsSeparator!==void 0?n.nsSeparator:this.options.nsSeparator;t===void 0&&(t=":");const i=n.keySeparator!==void 0?n.keySeparator:this.options.keySeparator;let r=n.ns||this.options.defaultNS||[];const o=t&&a.indexOf(t)>-1,s=!this.options.userDefinedKeySeparator&&!n.keySeparator&&!this.options.userDefinedNsSeparator&&!n.nsSeparator&&!F9(a,t,i);if(o&&!s){const l=a.match(this.interpolator.nestingRegexp);if(l&&l.length>0)return{key:a,namespaces:he(r)?[r]:r};const d=a.split(t);(t!==i||t===i&&this.options.ns.indexOf(d[0])>-1)&&(r=d.shift()),a=d.join(i)}return{key:a,namespaces:he(r)?[r]:r}}translate(a,n,t){if(typeof n!="object"&&this.options.overloadTranslationOptionHandler&&(n=this.options.overloadTranslationOptionHandler(arguments)),typeof n=="object"&&(n={...n}),n||(n={}),a==null)return"";Array.isArray(a)||(a=[String(a)]);const i=n.returnDetails!==void 0?n.returnDetails:this.options.returnDetails,r=n.keySeparator!==void 0?n.keySeparator:this.options.keySeparator,{key:o,namespaces:s}=this.extractFromKey(a[a.length-1],n),l=s[s.length-1],d=n.lng||this.language,p=n.appendNamespaceToCIMode||this.options.appendNamespaceToCIMode;if(d&&d.toLowerCase()==="cimode"){if(p){const E=n.nsSeparator||this.options.nsSeparator;return i?{res:`${l}${E}${o}`,usedKey:o,exactUsedKey:o,usedLng:d,usedNS:l,usedParams:this.getUsedParamsDetails(n)}:`${l}${E}${o}`}return i?{res:o,usedKey:o,exactUsedKey:o,usedLng:d,usedNS:l,usedParams:this.getUsedParamsDetails(n)}:o}const u=this.resolve(a,n);let g=u&&u.res;const b=u&&u.usedKey||o,v=u&&u.exactUsedKey||o,A=Object.prototype.toString.apply(g),f=["[object Number]","[object Function]","[object RegExp]"],S=n.joinArrays!==void 0?n.joinArrays:this.options.joinArrays,C=!this.i18nFormat||this.i18nFormat.handleAsObject,T=!he(g)&&typeof g!="boolean"&&typeof g!="number";if(C&&g&&T&&f.indexOf(A)<0&&!(he(S)&&Array.isArray(g))){if(!n.returnObjects&&!this.options.returnObjects){this.options.returnedObjectHandler||this.logger.warn("accessing an object - but returnObjects options is not enabled!");const E=this.options.returnedObjectHandler?this.options.returnedObjectHandler(b,g,{...n,ns:s}):`key '${o} (${this.language})' returned an object instead of string.`;return i?(u.res=E,u.usedParams=this.getUsedParamsDetails(n),u):E}if(r){const E=Array.isArray(g),P=E?[]:{},I=E?v:b;for(const L in g)if(Object.prototype.hasOwnProperty.call(g,L)){const N=`${I}${r}${L}`;P[L]=this.translate(N,{...n,joinArrays:!1,ns:s}),P[L]===N&&(P[L]=g[L])}g=P}}else if(C&&he(S)&&Array.isArray(g))g=g.join(S),g&&(g=this.extendTranslation(g,a,n,t));else{let E=!1,P=!1;const I=n.count!==void 0&&!he(n.count),L=Ll.hasDefaultValue(n),N=I?this.pluralResolver.getSuffix(d,n.count,n):"",Z=n.ordinal&&I?this.pluralResolver.getSuffix(d,n.count,{ordinal:!1}):"",R=I&&!n.ordinal&&n.count===0&&this.pluralResolver.shouldUseIntlApi(),Y=R&&n[`defaultValue${this.options.pluralSeparator}zero`]||n[`defaultValue${N}`]||n[`defaultValue${Z}`]||n.defaultValue;!this.isValidLookup(g)&&L&&(E=!0,g=Y),this.isValidLookup(g)||(P=!0,g=o);const F=(n.missingKeyNoValueFallbackToKey||this.options.missingKeyNoValueFallbackToKey)&&P?void 0:g,j=L&&Y!==g&&this.options.updateMissing;if(P||E||j){if(this.logger.log(j?"updateKey":"missingKey",d,l,o,j?Y:g),r){const te=this.resolve(o,{...n,keySeparator:!1});te&&te.res&&this.logger.warn("Seems the loaded translations were in flat JSON format instead of nested. Either set keySeparator: false on init or make sure your translations are published in nested format.")}let H=[];const X=this.languageUtils.getFallbackCodes(this.options.fallbackLng,n.lng||this.language);if(this.options.saveMissingTo==="fallback"&&X&&X[0])for(let te=0;te<X.length;te++)H.push(X[te]);else this.options.saveMissingTo==="all"?H=this.languageUtils.toResolveHierarchy(n.lng||this.language):H.push(n.lng||this.language);const ie=(te,oe,ae)=>{const Me=L&&ae!==g?ae:F;this.options.missingKeyHandler?this.options.missingKeyHandler(te,l,oe,Me,j,n):this.backendConnector&&this.backendConnector.saveMissing&&this.backendConnector.saveMissing(te,l,oe,Me,j,n),this.emit("missingKey",te,l,oe,g)};this.options.saveMissing&&(this.options.saveMissingPlurals&&I?H.forEach(te=>{const oe=this.pluralResolver.getSuffixes(te,n);R&&n[`defaultValue${this.options.pluralSeparator}zero`]&&oe.indexOf(`${this.options.pluralSeparator}zero`)<0&&oe.push(`${this.options.pluralSeparator}zero`),oe.forEach(ae=>{ie([te],o+ae,n[`defaultValue${ae}`]||Y)})}):ie(H,o,Y))}g=this.extendTranslation(g,a,n,u,t),P&&g===o&&this.options.appendNamespaceToMissingKey&&(g=`${l}:${o}`),(P||E)&&this.options.parseMissingKeyHandler&&(this.options.compatibilityAPI!=="v1"?g=this.options.parseMissingKeyHandler(this.options.appendNamespaceToMissingKey?`${l}:${o}`:o,E?g:void 0):g=this.options.parseMissingKeyHandler(g))}return i?(u.res=g,u.usedParams=this.getUsedParamsDetails(n),u):g}extendTranslation(a,n,t,i,r){var o=this;if(this.i18nFormat&&this.i18nFormat.parse)a=this.i18nFormat.parse(a,{...this.options.interpolation.defaultVariables,...t},t.lng||this.language||i.usedLng,i.usedNS,i.usedKey,{resolved:i});else if(!t.skipInterpolation){t.interpolation&&this.interpolator.init({...t,interpolation:{...this.options.interpolation,...t.interpolation}});const d=he(a)&&(t&&t.interpolation&&t.interpolation.skipOnVariables!==void 0?t.interpolation.skipOnVariables:this.options.interpolation.skipOnVariables);let p;if(d){const g=a.match(this.interpolator.nestingRegexp);p=g&&g.length}let u=t.replace&&!he(t.replace)?t.replace:t;if(this.options.interpolation.defaultVariables&&(u={...this.options.interpolation.defaultVariables,...u}),a=this.interpolator.interpolate(a,u,t.lng||this.language||i.usedLng,t),d){const g=a.match(this.interpolator.nestingRegexp),b=g&&g.length;p<b&&(t.nest=!1)}!t.lng&&this.options.compatibilityAPI!=="v1"&&i&&i.res&&(t.lng=this.language||i.usedLng),t.nest!==!1&&(a=this.interpolator.nest(a,function(){for(var g=arguments.length,b=new Array(g),v=0;v<g;v++)b[v]=arguments[v];return r&&r[0]===b[0]&&!t.context?(o.logger.warn(`It seems you are nesting recursively key: ${b[0]} in key: ${n[0]}`),null):o.translate(...b,n)},t)),t.interpolation&&this.interpolator.reset()}const s=t.postProcess||this.options.postProcess,l=he(s)?[s]:s;return a!=null&&l&&l.length&&t.applyPostProcessor!==!1&&(a=hy.handle(l,a,n,this.options&&this.options.postProcessPassResolved?{i18nResolved:{...i,usedParams:this.getUsedParamsDetails(t)},...t}:t,this)),a}resolve(a){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},t,i,r,o,s;return he(a)&&(a=[a]),a.forEach(l=>{if(this.isValidLookup(t))return;const d=this.extractFromKey(l,n),p=d.key;i=p;let u=d.namespaces;this.options.fallbackNS&&(u=u.concat(this.options.fallbackNS));const g=n.count!==void 0&&!he(n.count),b=g&&!n.ordinal&&n.count===0&&this.pluralResolver.shouldUseIntlApi(),v=n.context!==void 0&&(he(n.context)||typeof n.context=="number")&&n.context!=="",A=n.lngs?n.lngs:this.languageUtils.toResolveHierarchy(n.lng||this.language,n.fallbackLng);u.forEach(f=>{this.isValidLookup(t)||(s=f,!Cf[`${A[0]}-${f}`]&&this.utils&&this.utils.hasLoadedNamespace&&!this.utils.hasLoadedNamespace(s)&&(Cf[`${A[0]}-${f}`]=!0,this.logger.warn(`key "${i}" for languages "${A.join(", ")}" won't get resolved as namespace "${s}" was not yet loaded`,"This means something IS WRONG in your setup. You access the t function before i18next.init / i18next.loadNamespace / i18next.changeLanguage was done. Wait for the callback or Promise to resolve before accessing it!!!")),A.forEach(S=>{if(this.isValidLookup(t))return;o=S;const C=[p];if(this.i18nFormat&&this.i18nFormat.addLookupKeys)this.i18nFormat.addLookupKeys(C,p,S,f,n);else{let E;g&&(E=this.pluralResolver.getSuffix(S,n.count,n));const P=`${this.options.pluralSeparator}zero`,I=`${this.options.pluralSeparator}ordinal${this.options.pluralSeparator}`;if(g&&(C.push(p+E),n.ordinal&&E.indexOf(I)===0&&C.push(p+E.replace(I,this.options.pluralSeparator)),b&&C.push(p+P)),v){const L=`${p}${this.options.contextSeparator}${n.context}`;C.push(L),g&&(C.push(L+E),n.ordinal&&E.indexOf(I)===0&&C.push(L+E.replace(I,this.options.pluralSeparator)),b&&C.push(L+P))}}let T;for(;T=C.pop();)this.isValidLookup(t)||(r=T,t=this.getResource(S,f,T,n))}))})}),{res:t,usedKey:i,exactUsedKey:r,usedLng:o,usedNS:s}}isValidLookup(a){return a!==void 0&&!(!this.options.returnNull&&a===null)&&!(!this.options.returnEmptyString&&a==="")}getResource(a,n,t){let i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{};return this.i18nFormat&&this.i18nFormat.getResource?this.i18nFormat.getResource(a,n,t,i):this.resourceStore.getResource(a,n,t,i)}getUsedParamsDetails(){let a=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};const n=["defaultValue","ordinal","context","replace","lng","lngs","fallbackLng","ns","keySeparator","nsSeparator","returnObjects","returnDetails","joinArrays","postProcess","interpolation"],t=a.replace&&!he(a.replace);let i=t?a.replace:a;if(t&&typeof a.count<"u"&&(i.count=a.count),this.options.interpolation.defaultVariables&&(i={...this.options.interpolation.defaultVariables,...i}),!t){i={...i};for(const r of n)delete i[r]}return i}static hasDefaultValue(a){const n="defaultValue";for(const t in a)if(Object.prototype.hasOwnProperty.call(a,t)&&n===t.substring(0,n.length)&&a[t]!==void 0)return!0;return!1}}const Od=e=>e.charAt(0).toUpperCase()+e.slice(1);class Df{constructor(a){this.options=a,this.supportedLngs=this.options.supportedLngs||!1,this.logger=Wa.create("languageUtils")}getScriptPartFromCode(a){if(a=Nl(a),!a||a.indexOf("-")<0)return null;const n=a.split("-");return n.length===2||(n.pop(),n[n.length-1].toLowerCase()==="x")?null:this.formatLanguageCode(n.join("-"))}getLanguagePartFromCode(a){if(a=Nl(a),!a||a.indexOf("-")<0)return a;const n=a.split("-");return this.formatLanguageCode(n[0])}formatLanguageCode(a){if(he(a)&&a.indexOf("-")>-1){if(typeof Intl<"u"&&typeof Intl.getCanonicalLocales<"u")try{let i=Intl.getCanonicalLocales(a)[0];if(i&&this.options.lowerCaseLng&&(i=i.toLowerCase()),i)return i}catch{}const n=["hans","hant","latn","cyrl","cans","mong","arab"];let t=a.split("-");return this.options.lowerCaseLng?t=t.map(i=>i.toLowerCase()):t.length===2?(t[0]=t[0].toLowerCase(),t[1]=t[1].toUpperCase(),n.indexOf(t[1].toLowerCase())>-1&&(t[1]=Od(t[1].toLowerCase()))):t.length===3&&(t[0]=t[0].toLowerCase(),t[1].length===2&&(t[1]=t[1].toUpperCase()),t[0]!=="sgn"&&t[2].length===2&&(t[2]=t[2].toUpperCase()),n.indexOf(t[1].toLowerCase())>-1&&(t[1]=Od(t[1].toLowerCase())),n.indexOf(t[2].toLowerCase())>-1&&(t[2]=Od(t[2].toLowerCase()))),t.join("-")}return this.options.cleanCode||this.options.lowerCaseLng?a.toLowerCase():a}isSupportedCode(a){return(this.options.load==="languageOnly"||this.options.nonExplicitSupportedLngs)&&(a=this.getLanguagePartFromCode(a)),!this.supportedLngs||!this.supportedLngs.length||this.supportedLngs.indexOf(a)>-1}getBestMatchFromCodes(a){if(!a)return null;let n;return a.forEach(t=>{if(n)return;const i=this.formatLanguageCode(t);(!this.options.supportedLngs||this.isSupportedCode(i))&&(n=i)}),!n&&this.options.supportedLngs&&a.forEach(t=>{if(n)return;const i=this.getLanguagePartFromCode(t);if(this.isSupportedCode(i))return n=i;n=this.options.supportedLngs.find(r=>{if(r===i)return r;if(!(r.indexOf("-")<0&&i.indexOf("-")<0)&&(r.indexOf("-")>0&&i.indexOf("-")<0&&r.substring(0,r.indexOf("-"))===i||r.indexOf(i)===0&&i.length>1))return r})}),n||(n=this.getFallbackCodes(this.options.fallbackLng)[0]),n}getFallbackCodes(a,n){if(!a)return[];if(typeof a=="function"&&(a=a(n)),he(a)&&(a=[a]),Array.isArray(a))return a;if(!n)return a.default||[];let t=a[n];return t||(t=a[this.getScriptPartFromCode(n)]),t||(t=a[this.formatLanguageCode(n)]),t||(t=a[this.getLanguagePartFromCode(n)]),t||(t=a.default),t||[]}toResolveHierarchy(a,n){const t=this.getFallbackCodes(n||this.options.fallbackLng||[],a),i=[],r=o=>{o&&(this.isSupportedCode(o)?i.push(o):this.logger.warn(`rejecting language code not found in supportedLngs: ${o}`))};return he(a)&&(a.indexOf("-")>-1||a.indexOf("_")>-1)?(this.options.load!=="languageOnly"&&r(this.formatLanguageCode(a)),this.options.load!=="languageOnly"&&this.options.load!=="currentOnly"&&r(this.getScriptPartFromCode(a)),this.options.load!=="currentOnly"&&r(this.getLanguagePartFromCode(a))):he(a)&&r(this.formatLanguageCode(a)),t.forEach(o=>{i.indexOf(o)<0&&r(this.formatLanguageCode(o))}),i}}let j9=[{lngs:["ach","ak","am","arn","br","fil","gun","ln","mfe","mg","mi","oc","pt","pt-BR","tg","tl","ti","tr","uz","wa"],nr:[1,2],fc:1},{lngs:["af","an","ast","az","bg","bn","ca","da","de","dev","el","en","eo","es","et","eu","fi","fo","fur","fy","gl","gu","ha","hi","hu","hy","ia","it","kk","kn","ku","lb","mai","ml","mn","mr","nah","nap","nb","ne","nl","nn","no","nso","pa","pap","pms","ps","pt-PT","rm","sco","se","si","so","son","sq","sv","sw","ta","te","tk","ur","yo"],nr:[1,2],fc:2},{lngs:["ay","bo","cgg","fa","ht","id","ja","jbo","ka","km","ko","ky","lo","ms","sah","su","th","tt","ug","vi","wo","zh"],nr:[1],fc:3},{lngs:["be","bs","cnr","dz","hr","ru","sr","uk"],nr:[1,2,5],fc:4},{lngs:["ar"],nr:[0,1,2,3,11,100],fc:5},{lngs:["cs","sk"],nr:[1,2,5],fc:6},{lngs:["csb","pl"],nr:[1,2,5],fc:7},{lngs:["cy"],nr:[1,2,3,8],fc:8},{lngs:["fr"],nr:[1,2],fc:9},{lngs:["ga"],nr:[1,2,3,7,11],fc:10},{lngs:["gd"],nr:[1,2,3,20],fc:11},{lngs:["is"],nr:[1,2],fc:12},{lngs:["jv"],nr:[0,1],fc:13},{lngs:["kw"],nr:[1,2,3,4],fc:14},{lngs:["lt"],nr:[1,2,10],fc:15},{lngs:["lv"],nr:[1,2,0],fc:16},{lngs:["mk"],nr:[1,2],fc:17},{lngs:["mnk"],nr:[0,1,2],fc:18},{lngs:["mt"],nr:[1,2,11,20],fc:19},{lngs:["or"],nr:[2,1],fc:2},{lngs:["ro"],nr:[1,2,20],fc:20},{lngs:["sl"],nr:[5,1,2,3],fc:21},{lngs:["he","iw"],nr:[1,2,20,21],fc:22}],O9={1:e=>+(e>1),2:e=>+(e!=1),3:e=>0,4:e=>e%10==1&&e%100!=11?0:e%10>=2&&e%10<=4&&(e%100<10||e%100>=20)?1:2,5:e=>e==0?0:e==1?1:e==2?2:e%100>=3&&e%100<=10?3:e%100>=11?4:5,6:e=>e==1?0:e>=2&&e<=4?1:2,7:e=>e==1?0:e%10>=2&&e%10<=4&&(e%100<10||e%100>=20)?1:2,8:e=>e==1?0:e==2?1:e!=8&&e!=11?2:3,9:e=>+(e>=2),10:e=>e==1?0:e==2?1:e<7?2:e<11?3:4,11:e=>e==1||e==11?0:e==2||e==12?1:e>2&&e<20?2:3,12:e=>+(e%10!=1||e%100==11),13:e=>+(e!==0),14:e=>e==1?0:e==2?1:e==3?2:3,15:e=>e%10==1&&e%100!=11?0:e%10>=2&&(e%100<10||e%100>=20)?1:2,16:e=>e%10==1&&e%100!=11?0:e!==0?1:2,17:e=>e==1||e%10==1&&e%100!=11?0:1,18:e=>e==0?0:e==1?1:2,19:e=>e==1?0:e==0||e%100>1&&e%100<11?1:e%100>10&&e%100<20?2:3,20:e=>e==1?0:e==0||e%100>0&&e%100<20?1:2,21:e=>e%100==1?1:e%100==2?2:e%100==3||e%100==4?3:0,22:e=>e==1?0:e==2?1:(e<0||e>10)&&e%10==0?2:3};const B9=["v1","v2","v3"],U9=["v4"],Tf={zero:0,one:1,two:2,few:3,many:4,other:5},q9=()=>{const e={};return j9.forEach(a=>{a.lngs.forEach(n=>{e[n]={numbers:a.nr,plurals:O9[a.fc]}})}),e};class V9{constructor(a){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};this.languageUtils=a,this.options=n,this.logger=Wa.create("pluralResolver"),(!this.options.compatibilityJSON||U9.includes(this.options.compatibilityJSON))&&(typeof Intl>"u"||!Intl.PluralRules)&&(this.options.compatibilityJSON="v3",this.logger.error("Your environment seems not to be Intl API compatible, use an Intl.PluralRules polyfill. Will fallback to the compatibilityJSON v3 format handling.")),this.rules=q9(),this.pluralRulesCache={}}addRule(a,n){this.rules[a]=n}clearCache(){this.pluralRulesCache={}}getRule(a){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(this.shouldUseIntlApi()){const t=Nl(a==="dev"?"en":a),i=n.ordinal?"ordinal":"cardinal",r=JSON.stringify({cleanedCode:t,type:i});if(r in this.pluralRulesCache)return this.pluralRulesCache[r];let o;try{o=new Intl.PluralRules(t,{type:i})}catch{if(!a.match(/-|_/))return;const l=this.languageUtils.getLanguagePartFromCode(a);o=this.getRule(l,n)}return this.pluralRulesCache[r]=o,o}return this.rules[a]||this.rules[this.languageUtils.getLanguagePartFromCode(a)]}needsPlural(a){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};const t=this.getRule(a,n);return this.shouldUseIntlApi()?t&&t.resolvedOptions().pluralCategories.length>1:t&&t.numbers.length>1}getPluralFormsOfKey(a,n){let t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};return this.getSuffixes(a,t).map(i=>`${n}${i}`)}getSuffixes(a){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};const t=this.getRule(a,n);return t?this.shouldUseIntlApi()?t.resolvedOptions().pluralCategories.sort((i,r)=>Tf[i]-Tf[r]).map(i=>`${this.options.prepend}${n.ordinal?`ordinal${this.options.prepend}`:""}${i}`):t.numbers.map(i=>this.getSuffix(a,i,n)):[]}getSuffix(a,n){let t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};const i=this.getRule(a,t);return i?this.shouldUseIntlApi()?`${this.options.prepend}${t.ordinal?`ordinal${this.options.prepend}`:""}${i.select(n)}`:this.getSuffixRetroCompatible(i,n):(this.logger.warn(`no plural rule found for: ${a}`),"")}getSuffixRetroCompatible(a,n){const t=a.noAbs?a.plurals(n):a.plurals(Math.abs(n));let i=a.numbers[t];this.options.simplifyPluralSuffix&&a.numbers.length===2&&a.numbers[0]===1&&(i===2?i="plural":i===1&&(i=""));const r=()=>this.options.prepend&&i.toString()?this.options.prepend+i.toString():i.toString();return this.options.compatibilityJSON==="v1"?i===1?"":typeof i=="number"?`_plural_${i.toString()}`:r():this.options.compatibilityJSON==="v2"||this.options.simplifyPluralSuffix&&a.numbers.length===2&&a.numbers[0]===1?r():this.options.prepend&&t.toString()?this.options.prepend+t.toString():t.toString()}shouldUseIntlApi(){return!B9.includes(this.options.compatibilityJSON)}}const Ef=function(e,a,n){let t=arguments.length>3&&arguments[3]!==void 0?arguments[3]:".",i=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!0,r=x9(e,a,n);return!r&&i&&he(n)&&(r=ju(e,n,t),r===void 0&&(r=ju(a,n,t))),r},Bd=e=>e.replace(/\$/g,"$$$$");class $9{constructor(){let a=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};this.logger=Wa.create("interpolator"),this.options=a,this.format=a.interpolation&&a.interpolation.format||(n=>n),this.init(a)}init(){let a=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};a.interpolation||(a.interpolation={escapeValue:!0});const{escape:n,escapeValue:t,useRawValueToEscape:i,prefix:r,prefixEscaped:o,suffix:s,suffixEscaped:l,formatSeparator:d,unescapeSuffix:p,unescapePrefix:u,nestingPrefix:g,nestingPrefixEscaped:b,nestingSuffix:v,nestingSuffixEscaped:A,nestingOptionsSeparator:f,maxReplaces:S,alwaysFormat:C}=a.interpolation;this.escape=n!==void 0?n:R9,this.escapeValue=t!==void 0?t:!0,this.useRawValueToEscape=i!==void 0?i:!1,this.prefix=r?Vi(r):o||"{{",this.suffix=s?Vi(s):l||"}}",this.formatSeparator=d||",",this.unescapePrefix=p?"":u||"-",this.unescapeSuffix=this.unescapePrefix?"":p||"",this.nestingPrefix=g?Vi(g):b||Vi("$t("),this.nestingSuffix=v?Vi(v):A||Vi(")"),this.nestingOptionsSeparator=f||",",this.maxReplaces=S||1e3,this.alwaysFormat=C!==void 0?C:!1,this.resetRegExp()}reset(){this.options&&this.init(this.options)}resetRegExp(){const a=(n,t)=>n&&n.source===t?(n.lastIndex=0,n):new RegExp(t,"g");this.regexp=a(this.regexp,`${this.prefix}(.+?)${this.suffix}`),this.regexpUnescape=a(this.regexpUnescape,`${this.prefix}${this.unescapePrefix}(.+?)${this.unescapeSuffix}${this.suffix}`),this.nestingRegexp=a(this.nestingRegexp,`${this.nestingPrefix}(.+?)${this.nestingSuffix}`)}interpolate(a,n,t,i){let r,o,s;const l=this.options&&this.options.interpolation&&this.options.interpolation.defaultVariables||{},d=b=>{if(b.indexOf(this.formatSeparator)<0){const S=Ef(n,l,b,this.options.keySeparator,this.options.ignoreJSONStructure);return this.alwaysFormat?this.format(S,void 0,t,{...i,...n,interpolationkey:b}):S}const v=b.split(this.formatSeparator),A=v.shift().trim(),f=v.join(this.formatSeparator).trim();return this.format(Ef(n,l,A,this.options.keySeparator,this.options.ignoreJSONStructure),f,t,{...i,...n,interpolationkey:A})};this.resetRegExp();const p=i&&i.missingInterpolationHandler||this.options.missingInterpolationHandler,u=i&&i.interpolation&&i.interpolation.skipOnVariables!==void 0?i.interpolation.skipOnVariables:this.options.interpolation.skipOnVariables;return[{regex:this.regexpUnescape,safeValue:b=>Bd(b)},{regex:this.regexp,safeValue:b=>this.escapeValue?Bd(this.escape(b)):Bd(b)}].forEach(b=>{for(s=0;r=b.regex.exec(a);){const v=r[1].trim();if(o=d(v),o===void 0)if(typeof p=="function"){const f=p(a,r,i);o=he(f)?f:""}else if(i&&Object.prototype.hasOwnProperty.call(i,v))o="";else if(u){o=r[0];continue}else this.logger.warn(`missed to pass in variable ${v} for interpolating ${a}`),o="";else!he(o)&&!this.useRawValueToEscape&&(o=yf(o));const A=b.safeValue(o);if(a=a.replace(r[0],A),u?(b.regex.lastIndex+=o.length,b.regex.lastIndex-=r[0].length):b.regex.lastIndex=0,s++,s>=this.maxReplaces)break}}),a}nest(a,n){let t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},i,r,o;const s=(l,d)=>{const p=this.nestingOptionsSeparator;if(l.indexOf(p)<0)return l;const u=l.split(new RegExp(`${p}[ ]*{`));let g=`{${u[1]}`;l=u[0],g=this.interpolate(g,o);const b=g.match(/'/g),v=g.match(/"/g);(b&&b.length%2===0&&!v||v.length%2!==0)&&(g=g.replace(/'/g,'"'));try{o=JSON.parse(g),d&&(o={...d,...o})}catch(A){return this.logger.warn(`failed parsing options string in nesting for key ${l}`,A),`${l}${p}${g}`}return o.defaultValue&&o.defaultValue.indexOf(this.prefix)>-1&&delete o.defaultValue,l};for(;i=this.nestingRegexp.exec(a);){let l=[];o={...t},o=o.replace&&!he(o.replace)?o.replace:o,o.applyPostProcessor=!1,delete o.defaultValue;let d=!1;if(i[0].indexOf(this.formatSeparator)!==-1&&!/{.*}/.test(i[1])){const p=i[1].split(this.formatSeparator).map(u=>u.trim());i[1]=p.shift(),l=p,d=!0}if(r=n(s.call(this,i[1].trim(),o),o),r&&i[0]===a&&!he(r))return r;he(r)||(r=yf(r)),r||(this.logger.warn(`missed to resolve ${i[1]} for nesting ${a}`),r=""),d&&(r=l.reduce((p,u)=>this.format(p,u,t.lng,{...t,interpolationkey:i[1].trim()}),r.trim())),a=a.replace(i[0],r),this.regexp.lastIndex=0}return a}}const W9=e=>{let a=e.toLowerCase().trim();const n={};if(e.indexOf("(")>-1){const t=e.split("(");a=t[0].toLowerCase().trim();const i=t[1].substring(0,t[1].length-1);a==="currency"&&i.indexOf(":")<0?n.currency||(n.currency=i.trim()):a==="relativetime"&&i.indexOf(":")<0?n.range||(n.range=i.trim()):i.split(";").forEach(o=>{if(o){const[s,...l]=o.split(":"),d=l.join(":").trim().replace(/^'+|'+$/g,""),p=s.trim();n[p]||(n[p]=d),d==="false"&&(n[p]=!1),d==="true"&&(n[p]=!0),isNaN(d)||(n[p]=parseInt(d,10))}})}return{formatName:a,formatOptions:n}},$i=e=>{const a={};return(n,t,i)=>{let r=i;i&&i.interpolationkey&&i.formatParams&&i.formatParams[i.interpolationkey]&&i[i.interpolationkey]&&(r={...r,[i.interpolationkey]:void 0});const o=t+JSON.stringify(r);let s=a[o];return s||(s=e(Nl(t),i),a[o]=s),s(n)}};class G9{constructor(){let a=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};this.logger=Wa.create("formatter"),this.options=a,this.formats={number:$i((n,t)=>{const i=new Intl.NumberFormat(n,{...t});return r=>i.format(r)}),currency:$i((n,t)=>{const i=new Intl.NumberFormat(n,{...t,style:"currency"});return r=>i.format(r)}),datetime:$i((n,t)=>{const i=new Intl.DateTimeFormat(n,{...t});return r=>i.format(r)}),relativetime:$i((n,t)=>{const i=new Intl.RelativeTimeFormat(n,{...t});return r=>i.format(r,t.range||"day")}),list:$i((n,t)=>{const i=new Intl.ListFormat(n,{...t});return r=>i.format(r)})},this.init(a)}init(a){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{interpolation:{}};this.formatSeparator=n.interpolation.formatSeparator||","}add(a,n){this.formats[a.toLowerCase().trim()]=n}addCached(a,n){this.formats[a.toLowerCase().trim()]=$i(n)}format(a,n,t){let i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{};const r=n.split(this.formatSeparator);if(r.length>1&&r[0].indexOf("(")>1&&r[0].indexOf(")")<0&&r.find(s=>s.indexOf(")")>-1)){const s=r.findIndex(l=>l.indexOf(")")>-1);r[0]=[r[0],...r.splice(1,s)].join(this.formatSeparator)}return r.reduce((s,l)=>{const{formatName:d,formatOptions:p}=W9(l);if(this.formats[d]){let u=s;try{const g=i&&i.formatParams&&i.formatParams[i.interpolationkey]||{},b=g.locale||g.lng||i.locale||i.lng||t;u=this.formats[d](s,b,{...p,...i,...g})}catch(g){this.logger.warn(g)}return u}else this.logger.warn(`there was no format function for ${d}`);return s},a)}}const H9=(e,a)=>{e.pending[a]!==void 0&&(delete e.pending[a],e.pendingCount--)};class Y9 extends xc{constructor(a,n,t){let i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{};super(),this.backend=a,this.store=n,this.services=t,this.languageUtils=t.languageUtils,this.options=i,this.logger=Wa.create("backendConnector"),this.waitingReads=[],this.maxParallelReads=i.maxParallelReads||10,this.readingCalls=0,this.maxRetries=i.maxRetries>=0?i.maxRetries:5,this.retryTimeout=i.retryTimeout>=1?i.retryTimeout:350,this.state={},this.queue=[],this.backend&&this.backend.init&&this.backend.init(t,i.backend,i)}queueLoad(a,n,t,i){const r={},o={},s={},l={};return a.forEach(d=>{let p=!0;n.forEach(u=>{const g=`${d}|${u}`;!t.reload&&this.store.hasResourceBundle(d,u)?this.state[g]=2:this.state[g]<0||(this.state[g]===1?o[g]===void 0&&(o[g]=!0):(this.state[g]=1,p=!1,o[g]===void 0&&(o[g]=!0),r[g]===void 0&&(r[g]=!0),l[u]===void 0&&(l[u]=!0)))}),p||(s[d]=!0)}),(Object.keys(r).length||Object.keys(o).length)&&this.queue.push({pending:o,pendingCount:Object.keys(o).length,loaded:{},errors:[],callback:i}),{toLoad:Object.keys(r),pending:Object.keys(o),toLoadLanguages:Object.keys(s),toLoadNamespaces:Object.keys(l)}}loaded(a,n,t){const i=a.split("|"),r=i[0],o=i[1];n&&this.emit("failedLoading",r,o,n),!n&&t&&this.store.addResourceBundle(r,o,t,void 0,void 0,{skipCopy:!0}),this.state[a]=n?-1:2,n&&t&&(this.state[a]=0);const s={};this.queue.forEach(l=>{_9(l.loaded,[r],o),H9(l,a),n&&l.errors.push(n),l.pendingCount===0&&!l.done&&(Object.keys(l.loaded).forEach(d=>{s[d]||(s[d]={});const p=l.loaded[d];p.length&&p.forEach(u=>{s[d][u]===void 0&&(s[d][u]=!0)})}),l.done=!0,l.errors.length?l.callback(l.errors):l.callback())}),this.emit("loaded",s),this.queue=this.queue.filter(l=>!l.done)}read(a,n,t){let i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0,r=arguments.length>4&&arguments[4]!==void 0?arguments[4]:this.retryTimeout,o=arguments.length>5?arguments[5]:void 0;if(!a.length)return o(null,{});if(this.readingCalls>=this.maxParallelReads){this.waitingReads.push({lng:a,ns:n,fcName:t,tried:i,wait:r,callback:o});return}this.readingCalls++;const s=(d,p)=>{if(this.readingCalls--,this.waitingReads.length>0){const u=this.waitingReads.shift();this.read(u.lng,u.ns,u.fcName,u.tried,u.wait,u.callback)}if(d&&p&&i<this.maxRetries){setTimeout(()=>{this.read.call(this,a,n,t,i+1,r*2,o)},r);return}o(d,p)},l=this.backend[t].bind(this.backend);if(l.length===2){try{const d=l(a,n);d&&typeof d.then=="function"?d.then(p=>s(null,p)).catch(s):s(null,d)}catch(d){s(d)}return}return l(a,n,s)}prepareLoading(a,n){let t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},i=arguments.length>3?arguments[3]:void 0;if(!this.backend)return this.logger.warn("No backend was added via i18next.use. Will not load resources."),i&&i();he(a)&&(a=this.languageUtils.toResolveHierarchy(a)),he(n)&&(n=[n]);const r=this.queueLoad(a,n,t,i);if(!r.toLoad.length)return r.pending.length||i(),null;r.toLoad.forEach(o=>{this.loadOne(o)})}load(a,n,t){this.prepareLoading(a,n,{},t)}reload(a,n,t){this.prepareLoading(a,n,{reload:!0},t)}loadOne(a){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"";const t=a.split("|"),i=t[0],r=t[1];this.read(i,r,"read",void 0,void 0,(o,s)=>{o&&this.logger.warn(`${n}loading namespace ${r} for language ${i} failed`,o),!o&&s&&this.logger.log(`${n}loaded namespace ${r} for language ${i}`,s),this.loaded(a,o,s)})}saveMissing(a,n,t,i,r){let o=arguments.length>5&&arguments[5]!==void 0?arguments[5]:{},s=arguments.length>6&&arguments[6]!==void 0?arguments[6]:()=>{};if(this.services.utils&&this.services.utils.hasLoadedNamespace&&!this.services.utils.hasLoadedNamespace(n)){this.logger.warn(`did not save key "${t}" as the namespace "${n}" was not yet loaded`,"This means something IS WRONG in your setup. You access the t function before i18next.init / i18next.loadNamespace / i18next.changeLanguage was done. Wait for the callback or Promise to resolve before accessing it!!!");return}if(!(t==null||t==="")){if(this.backend&&this.backend.create){const l={...o,isUpdate:r},d=this.backend.create.bind(this.backend);if(d.length<6)try{let p;d.length===5?p=d(a,n,t,i,l):p=d(a,n,t,i),p&&typeof p.then=="function"?p.then(u=>s(null,u)).catch(s):s(null,p)}catch(p){s(p)}else d(a,n,t,i,s,l)}!a||!a[0]||this.store.addResource(a[0],n,t,i)}}}const Pf=()=>({debug:!1,initImmediate:!0,ns:["translation"],defaultNS:["translation"],fallbackLng:["dev"],fallbackNS:!1,supportedLngs:!1,nonExplicitSupportedLngs:!1,load:"all",preload:!1,simplifyPluralSuffix:!0,keySeparator:".",nsSeparator:":",pluralSeparator:"_",contextSeparator:"_",partialBundledLanguages:!1,saveMissing:!1,updateMissing:!1,saveMissingTo:"fallback",saveMissingPlurals:!0,missingKeyHandler:!1,missingInterpolationHandler:!1,postProcess:!1,postProcessPassResolved:!1,returnNull:!1,returnEmptyString:!0,returnObjects:!1,joinArrays:!1,returnedObjectHandler:!1,parseMissingKeyHandler:!1,appendNamespaceToMissingKey:!1,appendNamespaceToCIMode:!1,overloadTranslationOptionHandler:e=>{let a={};if(typeof e[1]=="object"&&(a=e[1]),he(e[1])&&(a.defaultValue=e[1]),he(e[2])&&(a.tDescription=e[2]),typeof e[2]=="object"||typeof e[3]=="object"){const n=e[3]||e[2];Object.keys(n).forEach(t=>{a[t]=n[t]})}return a},interpolation:{escapeValue:!0,format:e=>e,prefix:"{{",suffix:"}}",formatSeparator:",",unescapePrefix:"-",nestingPrefix:"$t(",nestingSuffix:")",nestingOptionsSeparator:",",maxReplaces:1e3,skipOnVariables:!0}}),_f=e=>(he(e.ns)&&(e.ns=[e.ns]),he(e.fallbackLng)&&(e.fallbackLng=[e.fallbackLng]),he(e.fallbackNS)&&(e.fallbackNS=[e.fallbackNS]),e.supportedLngs&&e.supportedLngs.indexOf("cimode")<0&&(e.supportedLngs=e.supportedLngs.concat(["cimode"])),e),bs=()=>{},K9=e=>{Object.getOwnPropertyNames(Object.getPrototypeOf(e)).forEach(n=>{typeof e[n]=="function"&&(e[n]=e[n].bind(e))})};class fo extends xc{constructor(){let a=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},n=arguments.length>1?arguments[1]:void 0;if(super(),this.options=_f(a),this.services={},this.logger=Wa,this.modules={external:[]},K9(this),n&&!this.isInitialized&&!a.isClone){if(!this.options.initImmediate)return this.init(a,n),this;setTimeout(()=>{this.init(a,n)},0)}}init(){var a=this;let n=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=arguments.length>1?arguments[1]:void 0;this.isInitializing=!0,typeof n=="function"&&(t=n,n={}),!n.defaultNS&&n.defaultNS!==!1&&n.ns&&(he(n.ns)?n.defaultNS=n.ns:n.ns.indexOf("translation")<0&&(n.defaultNS=n.ns[0]));const i=Pf();this.options={...i,...this.options,..._f(n)},this.options.compatibilityAPI!=="v1"&&(this.options.interpolation={...i.interpolation,...this.options.interpolation}),n.keySeparator!==void 0&&(this.options.userDefinedKeySeparator=n.keySeparator),n.nsSeparator!==void 0&&(this.options.userDefinedNsSeparator=n.nsSeparator);const r=p=>p?typeof p=="function"?new p:p:null;if(!this.options.isClone){this.modules.logger?Wa.init(r(this.modules.logger),this.options):Wa.init(null,this.options);let p;this.modules.formatter?p=this.modules.formatter:typeof Intl<"u"&&(p=G9);const u=new Df(this.options);this.store=new Sf(this.options.resources,this.options);const g=this.services;g.logger=Wa,g.resourceStore=this.store,g.languageUtils=u,g.pluralResolver=new V9(u,{prepend:this.options.pluralSeparator,compatibilityJSON:this.options.compatibilityJSON,simplifyPluralSuffix:this.options.simplifyPluralSuffix}),p&&(!this.options.interpolation.format||this.options.interpolation.format===i.interpolation.format)&&(g.formatter=r(p),g.formatter.init(g,this.options),this.options.interpolation.format=g.formatter.format.bind(g.formatter)),g.interpolator=new $9(this.options),g.utils={hasLoadedNamespace:this.hasLoadedNamespace.bind(this)},g.backendConnector=new Y9(r(this.modules.backend),g.resourceStore,g,this.options),g.backendConnector.on("*",function(b){for(var v=arguments.length,A=new Array(v>1?v-1:0),f=1;f<v;f++)A[f-1]=arguments[f];a.emit(b,...A)}),this.modules.languageDetector&&(g.languageDetector=r(this.modules.languageDetector),g.languageDetector.init&&g.languageDetector.init(g,this.options.detection,this.options)),this.modules.i18nFormat&&(g.i18nFormat=r(this.modules.i18nFormat),g.i18nFormat.init&&g.i18nFormat.init(this)),this.translator=new Ll(this.services,this.options),this.translator.on("*",function(b){for(var v=arguments.length,A=new Array(v>1?v-1:0),f=1;f<v;f++)A[f-1]=arguments[f];a.emit(b,...A)}),this.modules.external.forEach(b=>{b.init&&b.init(this)})}if(this.format=this.options.interpolation.format,t||(t=bs),this.options.fallbackLng&&!this.services.languageDetector&&!this.options.lng){const p=this.services.languageUtils.getFallbackCodes(this.options.fallbackLng);p.length>0&&p[0]!=="dev"&&(this.options.lng=p[0])}!this.services.languageDetector&&!this.options.lng&&this.logger.warn("init: no languageDetector is used and no lng is defined"),["getResource","hasResourceBundle","getResourceBundle","getDataByLanguage"].forEach(p=>{this[p]=function(){return a.store[p](...arguments)}}),["addResource","addResources","addResourceBundle","removeResourceBundle"].forEach(p=>{this[p]=function(){return a.store[p](...arguments),a}});const l=Hr(),d=()=>{const p=(u,g)=>{this.isInitializing=!1,this.isInitialized&&!this.initializedStoreOnce&&this.logger.warn("init: i18next is already initialized. You should call init just once!"),this.isInitialized=!0,this.options.isClone||this.logger.log("initialized",this.options),this.emit("initialized",this.options),l.resolve(g),t(u,g)};if(this.languages&&this.options.compatibilityAPI!=="v1"&&!this.isInitialized)return p(null,this.t.bind(this));this.changeLanguage(this.options.lng,p)};return this.options.resources||!this.options.initImmediate?d():setTimeout(d,0),l}loadResources(a){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:bs;const i=he(a)?a:this.language;if(typeof a=="function"&&(t=a),!this.options.resources||this.options.partialBundledLanguages){if(i&&i.toLowerCase()==="cimode"&&(!this.options.preload||this.options.preload.length===0))return t();const r=[],o=s=>{if(!s||s==="cimode")return;this.services.languageUtils.toResolveHierarchy(s).forEach(d=>{d!=="cimode"&&r.indexOf(d)<0&&r.push(d)})};i?o(i):this.services.languageUtils.getFallbackCodes(this.options.fallbackLng).forEach(l=>o(l)),this.options.preload&&this.options.preload.forEach(s=>o(s)),this.services.backendConnector.load(r,this.options.ns,s=>{!s&&!this.resolvedLanguage&&this.language&&this.setResolvedLanguage(this.language),t(s)})}else t(null)}reloadResources(a,n,t){const i=Hr();return typeof a=="function"&&(t=a,a=void 0),typeof n=="function"&&(t=n,n=void 0),a||(a=this.languages),n||(n=this.options.ns),t||(t=bs),this.services.backendConnector.reload(a,n,r=>{i.resolve(),t(r)}),i}use(a){if(!a)throw new Error("You are passing an undefined module! Please check the object you are passing to i18next.use()");if(!a.type)throw new Error("You are passing a wrong module! Please check the object you are passing to i18next.use()");return a.type==="backend"&&(this.modules.backend=a),(a.type==="logger"||a.log&&a.warn&&a.error)&&(this.modules.logger=a),a.type==="languageDetector"&&(this.modules.languageDetector=a),a.type==="i18nFormat"&&(this.modules.i18nFormat=a),a.type==="postProcessor"&&hy.addPostProcessor(a),a.type==="formatter"&&(this.modules.formatter=a),a.type==="3rdParty"&&this.modules.external.push(a),this}setResolvedLanguage(a){if(!(!a||!this.languages)&&!(["cimode","dev"].indexOf(a)>-1))for(let n=0;n<this.languages.length;n++){const t=this.languages[n];if(!(["cimode","dev"].indexOf(t)>-1)&&this.store.hasLanguageSomeTranslations(t)){this.resolvedLanguage=t;break}}}changeLanguage(a,n){var t=this;this.isLanguageChangingTo=a;const i=Hr();this.emit("languageChanging",a);const r=l=>{this.language=l,this.languages=this.services.languageUtils.toResolveHierarchy(l),this.resolvedLanguage=void 0,this.setResolvedLanguage(l)},o=(l,d)=>{d?(r(d),this.translator.changeLanguage(d),this.isLanguageChangingTo=void 0,this.emit("languageChanged",d),this.logger.log("languageChanged",d)):this.isLanguageChangingTo=void 0,i.resolve(function(){return t.t(...arguments)}),n&&n(l,function(){return t.t(...arguments)})},s=l=>{!a&&!l&&this.services.languageDetector&&(l=[]);const d=he(l)?l:this.services.languageUtils.getBestMatchFromCodes(l);d&&(this.language||r(d),this.translator.language||this.translator.changeLanguage(d),this.services.languageDetector&&this.services.languageDetector.cacheUserLanguage&&this.services.languageDetector.cacheUserLanguage(d)),this.loadResources(d,p=>{o(p,d)})};return!a&&this.services.languageDetector&&!this.services.languageDetector.async?s(this.services.languageDetector.detect()):!a&&this.services.languageDetector&&this.services.languageDetector.async?this.services.languageDetector.detect.length===0?this.services.languageDetector.detect().then(s):this.services.languageDetector.detect(s):s(a),i}getFixedT(a,n,t){var i=this;const r=function(o,s){let l;if(typeof s!="object"){for(var d=arguments.length,p=new Array(d>2?d-2:0),u=2;u<d;u++)p[u-2]=arguments[u];l=i.options.overloadTranslationOptionHandler([o,s].concat(p))}else l={...s};l.lng=l.lng||r.lng,l.lngs=l.lngs||r.lngs,l.ns=l.ns||r.ns,l.keyPrefix!==""&&(l.keyPrefix=l.keyPrefix||t||r.keyPrefix);const g=i.options.keySeparator||".";let b;return l.keyPrefix&&Array.isArray(o)?b=o.map(v=>`${l.keyPrefix}${g}${v}`):b=l.keyPrefix?`${l.keyPrefix}${g}${o}`:o,i.t(b,l)};return he(a)?r.lng=a:r.lngs=a,r.ns=n,r.keyPrefix=t,r}t(){return this.translator&&this.translator.translate(...arguments)}exists(){return this.translator&&this.translator.exists(...arguments)}setDefaultNamespace(a){this.options.defaultNS=a}hasLoadedNamespace(a){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(!this.isInitialized)return this.logger.warn("hasLoadedNamespace: i18next was not initialized",this.languages),!1;if(!this.languages||!this.languages.length)return this.logger.warn("hasLoadedNamespace: i18n.languages were undefined or empty",this.languages),!1;const t=n.lng||this.resolvedLanguage||this.languages[0],i=this.options?this.options.fallbackLng:!1,r=this.languages[this.languages.length-1];if(t.toLowerCase()==="cimode")return!0;const o=(s,l)=>{const d=this.services.backendConnector.state[`${s}|${l}`];return d===-1||d===0||d===2};if(n.precheck){const s=n.precheck(this,o);if(s!==void 0)return s}return!!(this.hasResourceBundle(t,a)||!this.services.backendConnector.backend||this.options.resources&&!this.options.partialBundledLanguages||o(t,a)&&(!i||o(r,a)))}loadNamespaces(a,n){const t=Hr();return this.options.ns?(he(a)&&(a=[a]),a.forEach(i=>{this.options.ns.indexOf(i)<0&&this.options.ns.push(i)}),this.loadResources(i=>{t.resolve(),n&&n(i)}),t):(n&&n(),Promise.resolve())}loadLanguages(a,n){const t=Hr();he(a)&&(a=[a]);const i=this.options.preload||[],r=a.filter(o=>i.indexOf(o)<0&&this.services.languageUtils.isSupportedCode(o));return r.length?(this.options.preload=i.concat(r),this.loadResources(o=>{t.resolve(),n&&n(o)}),t):(n&&n(),Promise.resolve())}dir(a){if(a||(a=this.resolvedLanguage||(this.languages&&this.languages.length>0?this.languages[0]:this.language)),!a)return"rtl";const n=["ar","shu","sqr","ssh","xaa","yhd","yud","aao","abh","abv","acm","acq","acw","acx","acy","adf","ads","aeb","aec","afb","ajp","apc","apd","arb","arq","ars","ary","arz","auz","avl","ayh","ayl","ayn","ayp","bbz","pga","he","iw","ps","pbt","pbu","pst","prp","prd","ug","ur","ydd","yds","yih","ji","yi","hbo","men","xmn","fa","jpr","peo","pes","prs","dv","sam","ckb"],t=this.services&&this.services.languageUtils||new Df(Pf());return n.indexOf(t.getLanguagePartFromCode(a))>-1||a.toLowerCase().indexOf("-arab")>1?"rtl":"ltr"}static createInstance(){let a=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},n=arguments.length>1?arguments[1]:void 0;return new fo(a,n)}cloneInstance(){let a=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:bs;const t=a.forkResourceStore;t&&delete a.forkResourceStore;const i={...this.options,...a,isClone:!0},r=new fo(i);return(a.debug!==void 0||a.prefix!==void 0)&&(r.logger=r.logger.clone(a)),["store","services","language"].forEach(s=>{r[s]=this[s]}),r.services={...this.services},r.services.utils={hasLoadedNamespace:r.hasLoadedNamespace.bind(r)},t&&(r.store=new Sf(this.store.data,i),r.services.resourceStore=r.store),r.translator=new Ll(r.services,i),r.translator.on("*",function(s){for(var l=arguments.length,d=new Array(l>1?l-1:0),p=1;p<l;p++)d[p-1]=arguments[p];r.emit(s,...d)}),r.init(i,n),r.translator.options=i,r.translator.backendConnector.services.utils={hasLoadedNamespace:r.hasLoadedNamespace.bind(r)},r}toJSON(){return{options:this.options,store:this.store,language:this.language,languages:this.languages,resolvedLanguage:this.resolvedLanguage}}}const zt=fo.createInstance();zt.createInstance=fo.createInstance;zt.createInstance;zt.dir;zt.init;zt.loadResources;zt.reloadResources;zt.use;zt.changeLanguage;zt.getFixedT;zt.t;zt.exists;zt.setDefaultNamespace;zt.hasLoadedNamespace;zt.loadNamespaces;zt.loadLanguages;const Z9=/&(?:amp|#38|lt|#60|gt|#62|apos|#39|quot|#34|nbsp|#160|copy|#169|reg|#174|hellip|#8230|#x2F|#47);/g,J9={"&":"&","&":"&","<":"<","<":"<",">":">",">":">","'":"'","'":"'",""":'"',""":'"'," ":" "," ":" ","©":"©","©":"©","®":"®","®":"®","…":"…","…":"…","/":"/","/":"/"},Q9=e=>J9[e],X9=e=>e.replace(Z9,Q9);let Ou={bindI18n:"languageChanged",bindI18nStore:"",transEmptyNodeValue:"",transSupportBasicHtmlNodes:!0,transWrapTextNodes:"",transKeepBasicHtmlNodesFor:["br","strong","i","p"],useSuspense:!0,unescape:X9};const eJ=(e={})=>{Ou={...Ou,...e}},Gge=()=>Ou;let fy;const tJ=e=>{fy=e},Hge=()=>fy,aJ={type:"3rdParty",init(e){eJ(e.options.react),tJ(e)}},{slice:nJ,forEach:iJ}=[];function rJ(e){return iJ.call(nJ.call(arguments,1),a=>{if(a)for(const n in a)e[n]===void 0&&(e[n]=a[n])}),e}function oJ(e){return typeof e!="string"?!1:[/<\s*script.*?>/i,/<\s*\/\s*script\s*>/i,/<\s*img.*?on\w+\s*=/i,/<\s*\w+\s*on\w+\s*=.*?>/i,/javascript\s*:/i,/vbscript\s*:/i,/expression\s*\(/i,/eval\s*\(/i,/alert\s*\(/i,/document\.cookie/i,/document\.write\s*\(/i,/window\.location/i,/innerHTML/i].some(n=>n.test(e))}const xf=/^[\u0009\u0020-\u007e\u0080-\u00ff]+$/,sJ=function(e,a){const t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{path:"/"},i=encodeURIComponent(a);let r=`${e}=${i}`;if(t.maxAge>0){const o=t.maxAge-0;if(Number.isNaN(o))throw new Error("maxAge should be a Number");r+=`; Max-Age=${Math.floor(o)}`}if(t.domain){if(!xf.test(t.domain))throw new TypeError("option domain is invalid");r+=`; Domain=${t.domain}`}if(t.path){if(!xf.test(t.path))throw new TypeError("option path is invalid");r+=`; Path=${t.path}`}if(t.expires){if(typeof t.expires.toUTCString!="function")throw new TypeError("option expires is invalid");r+=`; Expires=${t.expires.toUTCString()}`}if(t.httpOnly&&(r+="; HttpOnly"),t.secure&&(r+="; Secure"),t.sameSite)switch(typeof t.sameSite=="string"?t.sameSite.toLowerCase():t.sameSite){case!0:r+="; SameSite=Strict";break;case"lax":r+="; SameSite=Lax";break;case"strict":r+="; SameSite=Strict";break;case"none":r+="; SameSite=None";break;default:throw new TypeError("option sameSite is invalid")}return t.partitioned&&(r+="; Partitioned"),r},If={create(e,a,n,t){let i=arguments.length>4&&arguments[4]!==void 0?arguments[4]:{path:"/",sameSite:"strict"};n&&(i.expires=new Date,i.expires.setTime(i.expires.getTime()+n*60*1e3)),t&&(i.domain=t),document.cookie=sJ(e,a,i)},read(e){const a=`${e}=`,n=document.cookie.split(";");for(let t=0;t<n.length;t++){let i=n[t];for(;i.charAt(0)===" ";)i=i.substring(1,i.length);if(i.indexOf(a)===0)return i.substring(a.length,i.length)}return null},remove(e,a){this.create(e,"",-1,a)}};var lJ={name:"cookie",lookup(e){let{lookupCookie:a}=e;if(a&&typeof document<"u")return If.read(a)||void 0},cacheUserLanguage(e,a){let{lookupCookie:n,cookieMinutes:t,cookieDomain:i,cookieOptions:r}=a;n&&typeof document<"u"&&If.create(n,e,t,i,r)}},cJ={name:"querystring",lookup(e){var t;let{lookupQuerystring:a}=e,n;if(typeof window<"u"){let{search:i}=window.location;!window.location.search&&((t=window.location.hash)==null?void 0:t.indexOf("?"))>-1&&(i=window.location.hash.substring(window.location.hash.indexOf("?")));const o=i.substring(1).split("&");for(let s=0;s<o.length;s++){const l=o[s].indexOf("=");l>0&&o[s].substring(0,l)===a&&(n=o[s].substring(l+1))}}return n}},dJ={name:"hash",lookup(e){var i;let{lookupHash:a,lookupFromHashIndex:n}=e,t;if(typeof window<"u"){const{hash:r}=window.location;if(r&&r.length>2){const o=r.substring(1);if(a){const s=o.split("&");for(let l=0;l<s.length;l++){const d=s[l].indexOf("=");d>0&&s[l].substring(0,d)===a&&(t=s[l].substring(d+1))}}if(t)return t;if(!t&&n>-1){const s=r.match(/\/([a-zA-Z-]*)/g);return Array.isArray(s)?(i=s[typeof n=="number"?n:0])==null?void 0:i.replace("/",""):void 0}}}return t}};let Wi=null;const Rf=()=>{if(Wi!==null)return Wi;try{if(Wi=typeof window<"u"&&window.localStorage!==null,!Wi)return!1;const e="i18next.translate.boo";window.localStorage.setItem(e,"foo"),window.localStorage.removeItem(e)}catch{Wi=!1}return Wi};var uJ={name:"localStorage",lookup(e){let{lookupLocalStorage:a}=e;if(a&&Rf())return window.localStorage.getItem(a)||void 0},cacheUserLanguage(e,a){let{lookupLocalStorage:n}=a;n&&Rf()&&window.localStorage.setItem(n,e)}};let Gi=null;const zf=()=>{if(Gi!==null)return Gi;try{if(Gi=typeof window<"u"&&window.sessionStorage!==null,!Gi)return!1;const e="i18next.translate.boo";window.sessionStorage.setItem(e,"foo"),window.sessionStorage.removeItem(e)}catch{Gi=!1}return Gi};var pJ={name:"sessionStorage",lookup(e){let{lookupSessionStorage:a}=e;if(a&&zf())return window.sessionStorage.getItem(a)||void 0},cacheUserLanguage(e,a){let{lookupSessionStorage:n}=a;n&&zf()&&window.sessionStorage.setItem(n,e)}},mJ={name:"navigator",lookup(e){const a=[];if(typeof navigator<"u"){const{languages:n,userLanguage:t,language:i}=navigator;if(n)for(let r=0;r<n.length;r++)a.push(n[r]);t&&a.push(t),i&&a.push(i)}return a.length>0?a:void 0}},gJ={name:"htmlTag",lookup(e){let{htmlTag:a}=e,n;const t=a||(typeof document<"u"?document.documentElement:null);return t&&typeof t.getAttribute=="function"&&(n=t.getAttribute("lang")),n}},hJ={name:"path",lookup(e){var i;let{lookupFromPathIndex:a}=e;if(typeof window>"u")return;const n=window.location.pathname.match(/\/([a-zA-Z-]*)/g);return Array.isArray(n)?(i=n[typeof a=="number"?a:0])==null?void 0:i.replace("/",""):void 0}},fJ={name:"subdomain",lookup(e){var i,r;let{lookupFromSubdomainIndex:a}=e;const n=typeof a=="number"?a+1:1,t=typeof window<"u"&&((r=(i=window.location)==null?void 0:i.hostname)==null?void 0:r.match(/^(\w{2,5})\.(([a-z0-9-]{1,63}\.[a-z]{2,6})|localhost)/i));if(t)return t[n]}};let vy=!1;try{document.cookie,vy=!0}catch{}const by=["querystring","cookie","localStorage","sessionStorage","navigator","htmlTag"];vy||by.splice(1,1);const vJ=()=>({order:by,lookupQuerystring:"lng",lookupCookie:"i18next",lookupLocalStorage:"i18nextLng",lookupSessionStorage:"i18nextLng",caches:["localStorage"],excludeCacheFor:["cimode"],convertDetectedLanguage:e=>e});class yy{constructor(a){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};this.type="languageDetector",this.detectors={},this.init(a,n)}init(){let a=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{languageUtils:{}},n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};this.services=a,this.options=rJ(n,this.options||{},vJ()),typeof this.options.convertDetectedLanguage=="string"&&this.options.convertDetectedLanguage.indexOf("15897")>-1&&(this.options.convertDetectedLanguage=i=>i.replace("-","_")),this.options.lookupFromUrlIndex&&(this.options.lookupFromPathIndex=this.options.lookupFromUrlIndex),this.i18nOptions=t,this.addDetector(lJ),this.addDetector(cJ),this.addDetector(uJ),this.addDetector(pJ),this.addDetector(mJ),this.addDetector(gJ),this.addDetector(hJ),this.addDetector(fJ),this.addDetector(dJ)}addDetector(a){return this.detectors[a.name]=a,this}detect(){let a=arguments.length>0&&arguments[0]!==void 0?arguments[0]:this.options.order,n=[];return a.forEach(t=>{if(this.detectors[t]){let i=this.detectors[t].lookup(this.options);i&&typeof i=="string"&&(i=[i]),i&&(n=n.concat(i))}}),n=n.filter(t=>t!=null&&!oJ(t)).map(t=>this.options.convertDetectedLanguage(t)),this.services&&this.services.languageUtils&&this.services.languageUtils.getBestMatchFromCodes?n:n.length>0?n[0]:null}cacheUserLanguage(a){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.options.caches;n&&(this.options.excludeCacheFor&&this.options.excludeCacheFor.indexOf(a)>-1||n.forEach(t=>{this.detectors[t]&&this.detectors[t].cacheUserLanguage(a,this.options)}))}}yy.type="languageDetector";//! moment.js
//! version : 2.30.1
//! authors : Tim Wood, Iskren Chernev, Moment.js contributors
//! license : MIT
//! momentjs.com
var ky;function K(){return ky.apply(null,arguments)}function bJ(e){ky=e}function Ia(e){return e instanceof Array||Object.prototype.toString.call(e)==="[object Array]"}function Si(e){return e!=null&&Object.prototype.toString.call(e)==="[object Object]"}function Ue(e,a){return Object.prototype.hasOwnProperty.call(e,a)}function Pm(e){if(Object.getOwnPropertyNames)return Object.getOwnPropertyNames(e).length===0;var a;for(a in e)if(Ue(e,a))return!1;return!0}function Xt(e){return e===void 0}function Pn(e){return typeof e=="number"||Object.prototype.toString.call(e)==="[object Number]"}function Ho(e){return e instanceof Date||Object.prototype.toString.call(e)==="[object Date]"}function wy(e,a){var n=[],t,i=e.length;for(t=0;t<i;++t)n.push(a(e[t],t));return n}function Gn(e,a){for(var n in a)Ue(a,n)&&(e[n]=a[n]);return Ue(a,"toString")&&(e.toString=a.toString),Ue(a,"valueOf")&&(e.valueOf=a.valueOf),e}function en(e,a,n,t){return $y(e,a,n,t,!0).utc()}function yJ(){return{empty:!1,unusedTokens:[],unusedInput:[],overflow:-2,charsLeftOver:0,nullInput:!1,invalidEra:null,invalidMonth:null,invalidFormat:!1,userInvalidated:!1,iso:!1,parsedDateParts:[],era:null,meridiem:null,rfc2822:!1,weekdayMismatch:!1}}function Ae(e){return e._pf==null&&(e._pf=yJ()),e._pf}var Bu;Array.prototype.some?Bu=Array.prototype.some:Bu=function(e){var a=Object(this),n=a.length>>>0,t;for(t=0;t<n;t++)if(t in a&&e.call(this,a[t],t,a))return!0;return!1};function _m(e){var a=null,n=!1,t=e._d&&!isNaN(e._d.getTime());if(t&&(a=Ae(e),n=Bu.call(a.parsedDateParts,function(i){return i!=null}),t=a.overflow<0&&!a.empty&&!a.invalidEra&&!a.invalidMonth&&!a.invalidWeekday&&!a.weekdayMismatch&&!a.nullInput&&!a.invalidFormat&&!a.userInvalidated&&(!a.meridiem||a.meridiem&&n),e._strict&&(t=t&&a.charsLeftOver===0&&a.unusedTokens.length===0&&a.bigHour===void 0)),Object.isFrozen==null||!Object.isFrozen(e))e._isValid=t;else return t;return e._isValid}function Ic(e){var a=en(NaN);return e!=null?Gn(Ae(a),e):Ae(a).userInvalidated=!0,a}var Mf=K.momentProperties=[],Ud=!1;function xm(e,a){var n,t,i,r=Mf.length;if(Xt(a._isAMomentObject)||(e._isAMomentObject=a._isAMomentObject),Xt(a._i)||(e._i=a._i),Xt(a._f)||(e._f=a._f),Xt(a._l)||(e._l=a._l),Xt(a._strict)||(e._strict=a._strict),Xt(a._tzm)||(e._tzm=a._tzm),Xt(a._isUTC)||(e._isUTC=a._isUTC),Xt(a._offset)||(e._offset=a._offset),Xt(a._pf)||(e._pf=Ae(a)),Xt(a._locale)||(e._locale=a._locale),r>0)for(n=0;n<r;n++)t=Mf[n],i=a[t],Xt(i)||(e[t]=i);return e}function Yo(e){xm(this,e),this._d=new Date(e._d!=null?e._d.getTime():NaN),this.isValid()||(this._d=new Date(NaN)),Ud===!1&&(Ud=!0,K.updateOffset(this),Ud=!1)}function Ra(e){return e instanceof Yo||e!=null&&e._isAMomentObject!=null}function Ay(e){K.suppressDeprecationWarnings===!1&&typeof console<"u"}function ga(e,a){var n=!0;return Gn(function(){if(K.deprecationHandler!=null&&K.deprecationHandler(null,e),n){var t=[],i,r,o,s=arguments.length;for(r=0;r<s;r++){if(i="",typeof arguments[r]=="object"){i+=`
[`+r+"] ";for(o in arguments[0])Ue(arguments[0],o)&&(i+=o+": "+arguments[0][o]+", ");i=i.slice(0,-2)}else i=arguments[r];t.push(i)}Ay(e+`
Arguments: `+Array.prototype.slice.call(t).join("")+`
`+new Error().stack),n=!1}return a.apply(this,arguments)},a)}var Nf={};function Sy(e,a){K.deprecationHandler!=null&&K.deprecationHandler(e,a),Nf[e]||(Ay(a),Nf[e]=!0)}K.suppressDeprecationWarnings=!1;K.deprecationHandler=null;function tn(e){return typeof Function<"u"&&e instanceof Function||Object.prototype.toString.call(e)==="[object Function]"}function kJ(e){var a,n;for(n in e)Ue(e,n)&&(a=e[n],tn(a)?this[n]=a:this["_"+n]=a);this._config=e,this._dayOfMonthOrdinalParseLenient=new RegExp((this._dayOfMonthOrdinalParse.source||this._ordinalParse.source)+"|"+/\d{1,2}/.source)}function Uu(e,a){var n=Gn({},e),t;for(t in a)Ue(a,t)&&(Si(e[t])&&Si(a[t])?(n[t]={},Gn(n[t],e[t]),Gn(n[t],a[t])):a[t]!=null?n[t]=a[t]:delete n[t]);for(t in e)Ue(e,t)&&!Ue(a,t)&&Si(e[t])&&(n[t]=Gn({},n[t]));return n}function Im(e){e!=null&&this.set(e)}var qu;Object.keys?qu=Object.keys:qu=function(e){var a,n=[];for(a in e)Ue(e,a)&&n.push(a);return n};var wJ={sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"};function AJ(e,a,n){var t=this._calendar[e]||this._calendar.sameElse;return tn(t)?t.call(a,n):t}function Qa(e,a,n){var t=""+Math.abs(e),i=a-t.length,r=e>=0;return(r?n?"+":"":"-")+Math.pow(10,Math.max(0,i)).toString().substr(1)+t}var Rm=/(\[[^\[]*\])|(\\)?([Hh]mm(ss)?|Mo|MM?M?M?|Do|DDDo|DD?D?D?|ddd?d?|do?|w[o|w]?|W[o|W]?|Qo?|N{1,5}|YYYYYY|YYYYY|YYYY|YY|y{2,4}|yo?|gg(ggg?)?|GG(GGG?)?|e|E|a|A|hh?|HH?|kk?|mm?|ss?|S{1,9}|x|X|zz?|ZZ?|.)/g,ys=/(\[[^\[]*\])|(\\)?(LTS|LT|LL?L?L?|l{1,4})/g,qd={},or={};function se(e,a,n,t){var i=t;typeof t=="string"&&(i=function(){return this[t]()}),e&&(or[e]=i),a&&(or[a[0]]=function(){return Qa(i.apply(this,arguments),a[1],a[2])}),n&&(or[n]=function(){return this.localeData().ordinal(i.apply(this,arguments),e)})}function SJ(e){return e.match(/\[[\s\S]/)?e.replace(/^\[|\]$/g,""):e.replace(/\\/g,"")}function CJ(e){var a=e.match(Rm),n,t;for(n=0,t=a.length;n<t;n++)or[a[n]]?a[n]=or[a[n]]:a[n]=SJ(a[n]);return function(i){var r="",o;for(o=0;o<t;o++)r+=tn(a[o])?a[o].call(i,e):a[o];return r}}function ll(e,a){return e.isValid()?(a=Cy(a,e.localeData()),qd[a]=qd[a]||CJ(a),qd[a](e)):e.localeData().invalidDate()}function Cy(e,a){var n=5;function t(i){return a.longDateFormat(i)||i}for(ys.lastIndex=0;n>=0&&ys.test(e);)e=e.replace(ys,t),ys.lastIndex=0,n-=1;return e}var DJ={LTS:"h:mm:ss A",LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"};function TJ(e){var a=this._longDateFormat[e],n=this._longDateFormat[e.toUpperCase()];return a||!n?a:(this._longDateFormat[e]=n.match(Rm).map(function(t){return t==="MMMM"||t==="MM"||t==="DD"||t==="dddd"?t.slice(1):t}).join(""),this._longDateFormat[e])}var EJ="Invalid date";function PJ(){return this._invalidDate}var _J="%d",xJ=/\d{1,2}/;function IJ(e){return this._ordinal.replace("%d",e)}var RJ={future:"in %s",past:"%s ago",s:"a few seconds",ss:"%d seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",w:"a week",ww:"%d weeks",M:"a month",MM:"%d months",y:"a year",yy:"%d years"};function zJ(e,a,n,t){var i=this._relativeTime[n];return tn(i)?i(e,a,n,t):i.replace(/%d/i,e)}function MJ(e,a){var n=this._relativeTime[e>0?"future":"past"];return tn(n)?n(a):n.replace(/%s/i,a)}var Ff={D:"date",dates:"date",date:"date",d:"day",days:"day",day:"day",e:"weekday",weekdays:"weekday",weekday:"weekday",E:"isoWeekday",isoweekdays:"isoWeekday",isoweekday:"isoWeekday",DDD:"dayOfYear",dayofyears:"dayOfYear",dayofyear:"dayOfYear",h:"hour",hours:"hour",hour:"hour",ms:"millisecond",milliseconds:"millisecond",millisecond:"millisecond",m:"minute",minutes:"minute",minute:"minute",M:"month",months:"month",month:"month",Q:"quarter",quarters:"quarter",quarter:"quarter",s:"second",seconds:"second",second:"second",gg:"weekYear",weekyears:"weekYear",weekyear:"weekYear",GG:"isoWeekYear",isoweekyears:"isoWeekYear",isoweekyear:"isoWeekYear",w:"week",weeks:"week",week:"week",W:"isoWeek",isoweeks:"isoWeek",isoweek:"isoWeek",y:"year",years:"year",year:"year"};function ha(e){return typeof e=="string"?Ff[e]||Ff[e.toLowerCase()]:void 0}function zm(e){var a={},n,t;for(t in e)Ue(e,t)&&(n=ha(t),n&&(a[n]=e[t]));return a}var NJ={date:9,day:11,weekday:11,isoWeekday:11,dayOfYear:4,hour:13,millisecond:16,minute:14,month:8,quarter:7,second:15,weekYear:1,isoWeekYear:1,week:5,isoWeek:5,year:1};function FJ(e){var a=[],n;for(n in e)Ue(e,n)&&a.push({unit:n,priority:NJ[n]});return a.sort(function(t,i){return t.priority-i.priority}),a}var Dy=/\d/,na=/\d\d/,Ty=/\d{3}/,Mm=/\d{4}/,Rc=/[+-]?\d{6}/,it=/\d\d?/,Ey=/\d\d\d\d?/,Py=/\d\d\d\d\d\d?/,zc=/\d{1,3}/,Nm=/\d{1,4}/,Mc=/[+-]?\d{1,6}/,Ir=/\d+/,Nc=/[+-]?\d+/,LJ=/Z|[+-]\d\d:?\d\d/gi,Fc=/Z|[+-]\d\d(?::?\d\d)?/gi,jJ=/[+-]?\d+(\.\d{1,3})?/,Ko=/[0-9]{0,256}['a-z\u00A0-\u05FF\u0700-\uD7FF\uF900-\uFDCF\uFDF0-\uFF07\uFF10-\uFFEF]{1,256}|[\u0600-\u06FF\/]{1,256}(\s*?[\u0600-\u06FF]{1,256}){1,2}/i,Rr=/^[1-9]\d?/,Fm=/^([1-9]\d|\d)/,jl;jl={};function ee(e,a,n){jl[e]=tn(a)?a:function(t,i){return t&&n?n:a}}function OJ(e,a){return Ue(jl,e)?jl[e](a._strict,a._locale):new RegExp(BJ(e))}function BJ(e){return Dn(e.replace("\\","").replace(/\\(\[)|\\(\])|\[([^\]\[]*)\]|\\(.)/g,function(a,n,t,i,r){return n||t||i||r}))}function Dn(e){return e.replace(/[-\/\\^$*+?.()|[\]{}]/g,"\\$&")}function da(e){return e<0?Math.ceil(e)||0:Math.floor(e)}function xe(e){var a=+e,n=0;return a!==0&&isFinite(a)&&(n=da(a)),n}var Vu={};function Ye(e,a){var n,t=a,i;for(typeof e=="string"&&(e=[e]),Pn(a)&&(t=function(r,o){o[a]=xe(r)}),i=e.length,n=0;n<i;n++)Vu[e[n]]=t}function Zo(e,a){Ye(e,function(n,t,i,r){i._w=i._w||{},a(n,i._w,i,r)})}function UJ(e,a,n){a!=null&&Ue(Vu,e)&&Vu[e](a,n._a,n,e)}function Lc(e){return e%4===0&&e%100!==0||e%400===0}var Vt=0,An=1,Va=2,Rt=3,xa=4,Sn=5,wi=6,qJ=7,VJ=8;se("Y",0,0,function(){var e=this.year();return e<=9999?Qa(e,4):"+"+e});se(0,["YY",2],0,function(){return this.year()%100});se(0,["YYYY",4],0,"year");se(0,["YYYYY",5],0,"year");se(0,["YYYYYY",6,!0],0,"year");ee("Y",Nc);ee("YY",it,na);ee("YYYY",Nm,Mm);ee("YYYYY",Mc,Rc);ee("YYYYYY",Mc,Rc);Ye(["YYYYY","YYYYYY"],Vt);Ye("YYYY",function(e,a){a[Vt]=e.length===2?K.parseTwoDigitYear(e):xe(e)});Ye("YY",function(e,a){a[Vt]=K.parseTwoDigitYear(e)});Ye("Y",function(e,a){a[Vt]=parseInt(e,10)});function oo(e){return Lc(e)?366:365}K.parseTwoDigitYear=function(e){return xe(e)+(xe(e)>68?1900:2e3)};var _y=zr("FullYear",!0);function $J(){return Lc(this.year())}function zr(e,a){return function(n){return n!=null?(xy(this,e,n),K.updateOffset(this,a),this):vo(this,e)}}function vo(e,a){if(!e.isValid())return NaN;var n=e._d,t=e._isUTC;switch(a){case"Milliseconds":return t?n.getUTCMilliseconds():n.getMilliseconds();case"Seconds":return t?n.getUTCSeconds():n.getSeconds();case"Minutes":return t?n.getUTCMinutes():n.getMinutes();case"Hours":return t?n.getUTCHours():n.getHours();case"Date":return t?n.getUTCDate():n.getDate();case"Day":return t?n.getUTCDay():n.getDay();case"Month":return t?n.getUTCMonth():n.getMonth();case"FullYear":return t?n.getUTCFullYear():n.getFullYear();default:return NaN}}function xy(e,a,n){var t,i,r,o,s;if(!(!e.isValid()||isNaN(n))){switch(t=e._d,i=e._isUTC,a){case"Milliseconds":return void(i?t.setUTCMilliseconds(n):t.setMilliseconds(n));case"Seconds":return void(i?t.setUTCSeconds(n):t.setSeconds(n));case"Minutes":return void(i?t.setUTCMinutes(n):t.setMinutes(n));case"Hours":return void(i?t.setUTCHours(n):t.setHours(n));case"Date":return void(i?t.setUTCDate(n):t.setDate(n));case"FullYear":break;default:return}r=n,o=e.month(),s=e.date(),s=s===29&&o===1&&!Lc(r)?28:s,i?t.setUTCFullYear(r,o,s):t.setFullYear(r,o,s)}}function WJ(e){return e=ha(e),tn(this[e])?this[e]():this}function GJ(e,a){if(typeof e=="object"){e=zm(e);var n=FJ(e),t,i=n.length;for(t=0;t<i;t++)this[n[t].unit](e[n[t].unit])}else if(e=ha(e),tn(this[e]))return this[e](a);return this}function HJ(e,a){return(e%a+a)%a}var ft;Array.prototype.indexOf?ft=Array.prototype.indexOf:ft=function(e){var a;for(a=0;a<this.length;++a)if(this[a]===e)return a;return-1};function Lm(e,a){if(isNaN(e)||isNaN(a))return NaN;var n=HJ(a,12);return e+=(a-n)/12,n===1?Lc(e)?29:28:31-n%7%2}se("M",["MM",2],"Mo",function(){return this.month()+1});se("MMM",0,0,function(e){return this.localeData().monthsShort(this,e)});se("MMMM",0,0,function(e){return this.localeData().months(this,e)});ee("M",it,Rr);ee("MM",it,na);ee("MMM",function(e,a){return a.monthsShortRegex(e)});ee("MMMM",function(e,a){return a.monthsRegex(e)});Ye(["M","MM"],function(e,a){a[An]=xe(e)-1});Ye(["MMM","MMMM"],function(e,a,n,t){var i=n._locale.monthsParse(e,t,n._strict);i!=null?a[An]=i:Ae(n).invalidMonth=e});var YJ="January_February_March_April_May_June_July_August_September_October_November_December".split("_"),Iy="Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),Ry=/D[oD]?(\[[^\[\]]*\]|\s)+MMMM?/,KJ=Ko,ZJ=Ko;function JJ(e,a){return e?Ia(this._months)?this._months[e.month()]:this._months[(this._months.isFormat||Ry).test(a)?"format":"standalone"][e.month()]:Ia(this._months)?this._months:this._months.standalone}function QJ(e,a){return e?Ia(this._monthsShort)?this._monthsShort[e.month()]:this._monthsShort[Ry.test(a)?"format":"standalone"][e.month()]:Ia(this._monthsShort)?this._monthsShort:this._monthsShort.standalone}function XJ(e,a,n){var t,i,r,o=e.toLocaleLowerCase();if(!this._monthsParse)for(this._monthsParse=[],this._longMonthsParse=[],this._shortMonthsParse=[],t=0;t<12;++t)r=en([2e3,t]),this._shortMonthsParse[t]=this.monthsShort(r,"").toLocaleLowerCase(),this._longMonthsParse[t]=this.months(r,"").toLocaleLowerCase();return n?a==="MMM"?(i=ft.call(this._shortMonthsParse,o),i!==-1?i:null):(i=ft.call(this._longMonthsParse,o),i!==-1?i:null):a==="MMM"?(i=ft.call(this._shortMonthsParse,o),i!==-1?i:(i=ft.call(this._longMonthsParse,o),i!==-1?i:null)):(i=ft.call(this._longMonthsParse,o),i!==-1?i:(i=ft.call(this._shortMonthsParse,o),i!==-1?i:null))}function e7(e,a,n){var t,i,r;if(this._monthsParseExact)return XJ.call(this,e,a,n);for(this._monthsParse||(this._monthsParse=[],this._longMonthsParse=[],this._shortMonthsParse=[]),t=0;t<12;t++){if(i=en([2e3,t]),n&&!this._longMonthsParse[t]&&(this._longMonthsParse[t]=new RegExp("^"+this.months(i,"").replace(".","")+"$","i"),this._shortMonthsParse[t]=new RegExp("^"+this.monthsShort(i,"").replace(".","")+"$","i")),!n&&!this._monthsParse[t]&&(r="^"+this.months(i,"")+"|^"+this.monthsShort(i,""),this._monthsParse[t]=new RegExp(r.replace(".",""),"i")),n&&a==="MMMM"&&this._longMonthsParse[t].test(e))return t;if(n&&a==="MMM"&&this._shortMonthsParse[t].test(e))return t;if(!n&&this._monthsParse[t].test(e))return t}}function zy(e,a){if(!e.isValid())return e;if(typeof a=="string"){if(/^\d+$/.test(a))a=xe(a);else if(a=e.localeData().monthsParse(a),!Pn(a))return e}var n=a,t=e.date();return t=t<29?t:Math.min(t,Lm(e.year(),n)),e._isUTC?e._d.setUTCMonth(n,t):e._d.setMonth(n,t),e}function My(e){return e!=null?(zy(this,e),K.updateOffset(this,!0),this):vo(this,"Month")}function t7(){return Lm(this.year(),this.month())}function a7(e){return this._monthsParseExact?(Ue(this,"_monthsRegex")||Ny.call(this),e?this._monthsShortStrictRegex:this._monthsShortRegex):(Ue(this,"_monthsShortRegex")||(this._monthsShortRegex=KJ),this._monthsShortStrictRegex&&e?this._monthsShortStrictRegex:this._monthsShortRegex)}function n7(e){return this._monthsParseExact?(Ue(this,"_monthsRegex")||Ny.call(this),e?this._monthsStrictRegex:this._monthsRegex):(Ue(this,"_monthsRegex")||(this._monthsRegex=ZJ),this._monthsStrictRegex&&e?this._monthsStrictRegex:this._monthsRegex)}function Ny(){function e(l,d){return d.length-l.length}var a=[],n=[],t=[],i,r,o,s;for(i=0;i<12;i++)r=en([2e3,i]),o=Dn(this.monthsShort(r,"")),s=Dn(this.months(r,"")),a.push(o),n.push(s),t.push(s),t.push(o);a.sort(e),n.sort(e),t.sort(e),this._monthsRegex=new RegExp("^("+t.join("|")+")","i"),this._monthsShortRegex=this._monthsRegex,this._monthsStrictRegex=new RegExp("^("+n.join("|")+")","i"),this._monthsShortStrictRegex=new RegExp("^("+a.join("|")+")","i")}function i7(e,a,n,t,i,r,o){var s;return e<100&&e>=0?(s=new Date(e+400,a,n,t,i,r,o),isFinite(s.getFullYear())&&s.setFullYear(e)):s=new Date(e,a,n,t,i,r,o),s}function bo(e){var a,n;return e<100&&e>=0?(n=Array.prototype.slice.call(arguments),n[0]=e+400,a=new Date(Date.UTC.apply(null,n)),isFinite(a.getUTCFullYear())&&a.setUTCFullYear(e)):a=new Date(Date.UTC.apply(null,arguments)),a}function Ol(e,a,n){var t=7+a-n,i=(7+bo(e,0,t).getUTCDay()-a)%7;return-i+t-1}function Fy(e,a,n,t,i){var r=(7+n-t)%7,o=Ol(e,t,i),s=1+7*(a-1)+r+o,l,d;return s<=0?(l=e-1,d=oo(l)+s):s>oo(e)?(l=e+1,d=s-oo(e)):(l=e,d=s),{year:l,dayOfYear:d}}function yo(e,a,n){var t=Ol(e.year(),a,n),i=Math.floor((e.dayOfYear()-t-1)/7)+1,r,o;return i<1?(o=e.year()-1,r=i+Tn(o,a,n)):i>Tn(e.year(),a,n)?(r=i-Tn(e.year(),a,n),o=e.year()+1):(o=e.year(),r=i),{week:r,year:o}}function Tn(e,a,n){var t=Ol(e,a,n),i=Ol(e+1,a,n);return(oo(e)-t+i)/7}se("w",["ww",2],"wo","week");se("W",["WW",2],"Wo","isoWeek");ee("w",it,Rr);ee("ww",it,na);ee("W",it,Rr);ee("WW",it,na);Zo(["w","ww","W","WW"],function(e,a,n,t){a[t.substr(0,1)]=xe(e)});function r7(e){return yo(e,this._week.dow,this._week.doy).week}var o7={dow:0,doy:6};function s7(){return this._week.dow}function l7(){return this._week.doy}function c7(e){var a=this.localeData().week(this);return e==null?a:this.add((e-a)*7,"d")}function d7(e){var a=yo(this,1,4).week;return e==null?a:this.add((e-a)*7,"d")}se("d",0,"do","day");se("dd",0,0,function(e){return this.localeData().weekdaysMin(this,e)});se("ddd",0,0,function(e){return this.localeData().weekdaysShort(this,e)});se("dddd",0,0,function(e){return this.localeData().weekdays(this,e)});se("e",0,0,"weekday");se("E",0,0,"isoWeekday");ee("d",it);ee("e",it);ee("E",it);ee("dd",function(e,a){return a.weekdaysMinRegex(e)});ee("ddd",function(e,a){return a.weekdaysShortRegex(e)});ee("dddd",function(e,a){return a.weekdaysRegex(e)});Zo(["dd","ddd","dddd"],function(e,a,n,t){var i=n._locale.weekdaysParse(e,t,n._strict);i!=null?a.d=i:Ae(n).invalidWeekday=e});Zo(["d","e","E"],function(e,a,n,t){a[t]=xe(e)});function u7(e,a){return typeof e!="string"?e:isNaN(e)?(e=a.weekdaysParse(e),typeof e=="number"?e:null):parseInt(e,10)}function p7(e,a){return typeof e=="string"?a.weekdaysParse(e)%7||7:isNaN(e)?null:e}function jm(e,a){return e.slice(a,7).concat(e.slice(0,a))}var m7="Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),Ly="Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),g7="Su_Mo_Tu_We_Th_Fr_Sa".split("_"),h7=Ko,f7=Ko,v7=Ko;function b7(e,a){var n=Ia(this._weekdays)?this._weekdays:this._weekdays[e&&e!==!0&&this._weekdays.isFormat.test(a)?"format":"standalone"];return e===!0?jm(n,this._week.dow):e?n[e.day()]:n}function y7(e){return e===!0?jm(this._weekdaysShort,this._week.dow):e?this._weekdaysShort[e.day()]:this._weekdaysShort}function k7(e){return e===!0?jm(this._weekdaysMin,this._week.dow):e?this._weekdaysMin[e.day()]:this._weekdaysMin}function w7(e,a,n){var t,i,r,o=e.toLocaleLowerCase();if(!this._weekdaysParse)for(this._weekdaysParse=[],this._shortWeekdaysParse=[],this._minWeekdaysParse=[],t=0;t<7;++t)r=en([2e3,1]).day(t),this._minWeekdaysParse[t]=this.weekdaysMin(r,"").toLocaleLowerCase(),this._shortWeekdaysParse[t]=this.weekdaysShort(r,"").toLocaleLowerCase(),this._weekdaysParse[t]=this.weekdays(r,"").toLocaleLowerCase();return n?a==="dddd"?(i=ft.call(this._weekdaysParse,o),i!==-1?i:null):a==="ddd"?(i=ft.call(this._shortWeekdaysParse,o),i!==-1?i:null):(i=ft.call(this._minWeekdaysParse,o),i!==-1?i:null):a==="dddd"?(i=ft.call(this._weekdaysParse,o),i!==-1||(i=ft.call(this._shortWeekdaysParse,o),i!==-1)?i:(i=ft.call(this._minWeekdaysParse,o),i!==-1?i:null)):a==="ddd"?(i=ft.call(this._shortWeekdaysParse,o),i!==-1||(i=ft.call(this._weekdaysParse,o),i!==-1)?i:(i=ft.call(this._minWeekdaysParse,o),i!==-1?i:null)):(i=ft.call(this._minWeekdaysParse,o),i!==-1||(i=ft.call(this._weekdaysParse,o),i!==-1)?i:(i=ft.call(this._shortWeekdaysParse,o),i!==-1?i:null))}function A7(e,a,n){var t,i,r;if(this._weekdaysParseExact)return w7.call(this,e,a,n);for(this._weekdaysParse||(this._weekdaysParse=[],this._minWeekdaysParse=[],this._shortWeekdaysParse=[],this._fullWeekdaysParse=[]),t=0;t<7;t++){if(i=en([2e3,1]).day(t),n&&!this._fullWeekdaysParse[t]&&(this._fullWeekdaysParse[t]=new RegExp("^"+this.weekdays(i,"").replace(".","\\.?")+"$","i"),this._shortWeekdaysParse[t]=new RegExp("^"+this.weekdaysShort(i,"").replace(".","\\.?")+"$","i"),this._minWeekdaysParse[t]=new RegExp("^"+this.weekdaysMin(i,"").replace(".","\\.?")+"$","i")),this._weekdaysParse[t]||(r="^"+this.weekdays(i,"")+"|^"+this.weekdaysShort(i,"")+"|^"+this.weekdaysMin(i,""),this._weekdaysParse[t]=new RegExp(r.replace(".",""),"i")),n&&a==="dddd"&&this._fullWeekdaysParse[t].test(e))return t;if(n&&a==="ddd"&&this._shortWeekdaysParse[t].test(e))return t;if(n&&a==="dd"&&this._minWeekdaysParse[t].test(e))return t;if(!n&&this._weekdaysParse[t].test(e))return t}}function S7(e){if(!this.isValid())return e!=null?this:NaN;var a=vo(this,"Day");return e!=null?(e=u7(e,this.localeData()),this.add(e-a,"d")):a}function C7(e){if(!this.isValid())return e!=null?this:NaN;var a=(this.day()+7-this.localeData()._week.dow)%7;return e==null?a:this.add(e-a,"d")}function D7(e){if(!this.isValid())return e!=null?this:NaN;if(e!=null){var a=p7(e,this.localeData());return this.day(this.day()%7?a:a-7)}else return this.day()||7}function T7(e){return this._weekdaysParseExact?(Ue(this,"_weekdaysRegex")||Om.call(this),e?this._weekdaysStrictRegex:this._weekdaysRegex):(Ue(this,"_weekdaysRegex")||(this._weekdaysRegex=h7),this._weekdaysStrictRegex&&e?this._weekdaysStrictRegex:this._weekdaysRegex)}function E7(e){return this._weekdaysParseExact?(Ue(this,"_weekdaysRegex")||Om.call(this),e?this._weekdaysShortStrictRegex:this._weekdaysShortRegex):(Ue(this,"_weekdaysShortRegex")||(this._weekdaysShortRegex=f7),this._weekdaysShortStrictRegex&&e?this._weekdaysShortStrictRegex:this._weekdaysShortRegex)}function P7(e){return this._weekdaysParseExact?(Ue(this,"_weekdaysRegex")||Om.call(this),e?this._weekdaysMinStrictRegex:this._weekdaysMinRegex):(Ue(this,"_weekdaysMinRegex")||(this._weekdaysMinRegex=v7),this._weekdaysMinStrictRegex&&e?this._weekdaysMinStrictRegex:this._weekdaysMinRegex)}function Om(){function e(p,u){return u.length-p.length}var a=[],n=[],t=[],i=[],r,o,s,l,d;for(r=0;r<7;r++)o=en([2e3,1]).day(r),s=Dn(this.weekdaysMin(o,"")),l=Dn(this.weekdaysShort(o,"")),d=Dn(this.weekdays(o,"")),a.push(s),n.push(l),t.push(d),i.push(s),i.push(l),i.push(d);a.sort(e),n.sort(e),t.sort(e),i.sort(e),this._weekdaysRegex=new RegExp("^("+i.join("|")+")","i"),this._weekdaysShortRegex=this._weekdaysRegex,this._weekdaysMinRegex=this._weekdaysRegex,this._weekdaysStrictRegex=new RegExp("^("+t.join("|")+")","i"),this._weekdaysShortStrictRegex=new RegExp("^("+n.join("|")+")","i"),this._weekdaysMinStrictRegex=new RegExp("^("+a.join("|")+")","i")}function Bm(){return this.hours()%12||12}function _7(){return this.hours()||24}se("H",["HH",2],0,"hour");se("h",["hh",2],0,Bm);se("k",["kk",2],0,_7);se("hmm",0,0,function(){return""+Bm.apply(this)+Qa(this.minutes(),2)});se("hmmss",0,0,function(){return""+Bm.apply(this)+Qa(this.minutes(),2)+Qa(this.seconds(),2)});se("Hmm",0,0,function(){return""+this.hours()+Qa(this.minutes(),2)});se("Hmmss",0,0,function(){return""+this.hours()+Qa(this.minutes(),2)+Qa(this.seconds(),2)});function jy(e,a){se(e,0,0,function(){return this.localeData().meridiem(this.hours(),this.minutes(),a)})}jy("a",!0);jy("A",!1);function Oy(e,a){return a._meridiemParse}ee("a",Oy);ee("A",Oy);ee("H",it,Fm);ee("h",it,Rr);ee("k",it,Rr);ee("HH",it,na);ee("hh",it,na);ee("kk",it,na);ee("hmm",Ey);ee("hmmss",Py);ee("Hmm",Ey);ee("Hmmss",Py);Ye(["H","HH"],Rt);Ye(["k","kk"],function(e,a,n){var t=xe(e);a[Rt]=t===24?0:t});Ye(["a","A"],function(e,a,n){n._isPm=n._locale.isPM(e),n._meridiem=e});Ye(["h","hh"],function(e,a,n){a[Rt]=xe(e),Ae(n).bigHour=!0});Ye("hmm",function(e,a,n){var t=e.length-2;a[Rt]=xe(e.substr(0,t)),a[xa]=xe(e.substr(t)),Ae(n).bigHour=!0});Ye("hmmss",function(e,a,n){var t=e.length-4,i=e.length-2;a[Rt]=xe(e.substr(0,t)),a[xa]=xe(e.substr(t,2)),a[Sn]=xe(e.substr(i)),Ae(n).bigHour=!0});Ye("Hmm",function(e,a,n){var t=e.length-2;a[Rt]=xe(e.substr(0,t)),a[xa]=xe(e.substr(t))});Ye("Hmmss",function(e,a,n){var t=e.length-4,i=e.length-2;a[Rt]=xe(e.substr(0,t)),a[xa]=xe(e.substr(t,2)),a[Sn]=xe(e.substr(i))});function x7(e){return(e+"").toLowerCase().charAt(0)==="p"}var I7=/[ap]\.?m?\.?/i,R7=zr("Hours",!0);function z7(e,a,n){return e>11?n?"pm":"PM":n?"am":"AM"}var By={calendar:wJ,longDateFormat:DJ,invalidDate:EJ,ordinal:_J,dayOfMonthOrdinalParse:xJ,relativeTime:RJ,months:YJ,monthsShort:Iy,week:o7,weekdays:m7,weekdaysMin:g7,weekdaysShort:Ly,meridiemParse:I7},st={},Yr={},ko;function M7(e,a){var n,t=Math.min(e.length,a.length);for(n=0;n<t;n+=1)if(e[n]!==a[n])return n;return t}function Lf(e){return e&&e.toLowerCase().replace("_","-")}function N7(e){for(var a=0,n,t,i,r;a<e.length;){for(r=Lf(e[a]).split("-"),n=r.length,t=Lf(e[a+1]),t=t?t.split("-"):null;n>0;){if(i=jc(r.slice(0,n).join("-")),i)return i;if(t&&t.length>=n&&M7(r,t)>=n-1)break;n--}a++}return ko}function F7(e){return!!(e&&e.match("^[^/\\\\]*$"))}function jc(e){var a=null,n;if(st[e]===void 0&&typeof module<"u"&&module&&module.exports&&F7(e))try{a=ko._abbr,n=require,n("./locale/"+e),Zn(a)}catch{st[e]=null}return st[e]}function Zn(e,a){var n;return e&&(Xt(a)?n=Mn(e):n=Um(e,a),n&&(ko=n)),ko._abbr}function Um(e,a){if(a!==null){var n,t=By;if(a.abbr=e,st[e]!=null)Sy("defineLocaleOverride","use moment.updateLocale(localeName, config) to change an existing locale. moment.defineLocale(localeName, config) should only be used for creating a new locale See http://momentjs.com/guides/#/warnings/define-locale/ for more info."),t=st[e]._config;else if(a.parentLocale!=null)if(st[a.parentLocale]!=null)t=st[a.parentLocale]._config;else if(n=jc(a.parentLocale),n!=null)t=n._config;else return Yr[a.parentLocale]||(Yr[a.parentLocale]=[]),Yr[a.parentLocale].push({name:e,config:a}),null;return st[e]=new Im(Uu(t,a)),Yr[e]&&Yr[e].forEach(function(i){Um(i.name,i.config)}),Zn(e),st[e]}else return delete st[e],null}function L7(e,a){if(a!=null){var n,t,i=By;st[e]!=null&&st[e].parentLocale!=null?st[e].set(Uu(st[e]._config,a)):(t=jc(e),t!=null&&(i=t._config),a=Uu(i,a),t==null&&(a.abbr=e),n=new Im(a),n.parentLocale=st[e],st[e]=n),Zn(e)}else st[e]!=null&&(st[e].parentLocale!=null?(st[e]=st[e].parentLocale,e===Zn()&&Zn(e)):st[e]!=null&&delete st[e]);return st[e]}function Mn(e){var a;if(e&&e._locale&&e._locale._abbr&&(e=e._locale._abbr),!e)return ko;if(!Ia(e)){if(a=jc(e),a)return a;e=[e]}return N7(e)}function j7(){return qu(st)}function qm(e){var a,n=e._a;return n&&Ae(e).overflow===-2&&(a=n[An]<0||n[An]>11?An:n[Va]<1||n[Va]>Lm(n[Vt],n[An])?Va:n[Rt]<0||n[Rt]>24||n[Rt]===24&&(n[xa]!==0||n[Sn]!==0||n[wi]!==0)?Rt:n[xa]<0||n[xa]>59?xa:n[Sn]<0||n[Sn]>59?Sn:n[wi]<0||n[wi]>999?wi:-1,Ae(e)._overflowDayOfYear&&(a<Vt||a>Va)&&(a=Va),Ae(e)._overflowWeeks&&a===-1&&(a=qJ),Ae(e)._overflowWeekday&&a===-1&&(a=VJ),Ae(e).overflow=a),e}var O7=/^\s*((?:[+-]\d{6}|\d{4})-(?:\d\d-\d\d|W\d\d-\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?::\d\d(?::\d\d(?:[.,]\d+)?)?)?)([+-]\d\d(?::?\d\d)?|\s*Z)?)?$/,B7=/^\s*((?:[+-]\d{6}|\d{4})(?:\d\d\d\d|W\d\d\d|W\d\d|\d\d\d|\d\d|))(?:(T| )(\d\d(?:\d\d(?:\d\d(?:[.,]\d+)?)?)?)([+-]\d\d(?::?\d\d)?|\s*Z)?)?$/,U7=/Z|[+-]\d\d(?::?\d\d)?/,ks=[["YYYYYY-MM-DD",/[+-]\d{6}-\d\d-\d\d/],["YYYY-MM-DD",/\d{4}-\d\d-\d\d/],["GGGG-[W]WW-E",/\d{4}-W\d\d-\d/],["GGGG-[W]WW",/\d{4}-W\d\d/,!1],["YYYY-DDD",/\d{4}-\d{3}/],["YYYY-MM",/\d{4}-\d\d/,!1],["YYYYYYMMDD",/[+-]\d{10}/],["YYYYMMDD",/\d{8}/],["GGGG[W]WWE",/\d{4}W\d{3}/],["GGGG[W]WW",/\d{4}W\d{2}/,!1],["YYYYDDD",/\d{7}/],["YYYYMM",/\d{6}/,!1],["YYYY",/\d{4}/,!1]],Vd=[["HH:mm:ss.SSSS",/\d\d:\d\d:\d\d\.\d+/],["HH:mm:ss,SSSS",/\d\d:\d\d:\d\d,\d+/],["HH:mm:ss",/\d\d:\d\d:\d\d/],["HH:mm",/\d\d:\d\d/],["HHmmss.SSSS",/\d\d\d\d\d\d\.\d+/],["HHmmss,SSSS",/\d\d\d\d\d\d,\d+/],["HHmmss",/\d\d\d\d\d\d/],["HHmm",/\d\d\d\d/],["HH",/\d\d/]],q7=/^\/?Date\((-?\d+)/i,V7=/^(?:(Mon|Tue|Wed|Thu|Fri|Sat|Sun),?\s)?(\d{1,2})\s(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\s(\d{2,4})\s(\d\d):(\d\d)(?::(\d\d))?\s(?:(UT|GMT|[ECMP][SD]T)|([Zz])|([+-]\d{4}))$/,$7={UT:0,GMT:0,EDT:-240,EST:-300,CDT:-300,CST:-360,MDT:-360,MST:-420,PDT:-420,PST:-480};function Uy(e){var a,n,t=e._i,i=O7.exec(t)||B7.exec(t),r,o,s,l,d=ks.length,p=Vd.length;if(i){for(Ae(e).iso=!0,a=0,n=d;a<n;a++)if(ks[a][1].exec(i[1])){o=ks[a][0],r=ks[a][2]!==!1;break}if(o==null){e._isValid=!1;return}if(i[3]){for(a=0,n=p;a<n;a++)if(Vd[a][1].exec(i[3])){s=(i[2]||" ")+Vd[a][0];break}if(s==null){e._isValid=!1;return}}if(!r&&s!=null){e._isValid=!1;return}if(i[4])if(U7.exec(i[4]))l="Z";else{e._isValid=!1;return}e._f=o+(s||"")+(l||""),$m(e)}else e._isValid=!1}function W7(e,a,n,t,i,r){var o=[G7(e),Iy.indexOf(a),parseInt(n,10),parseInt(t,10),parseInt(i,10)];return r&&o.push(parseInt(r,10)),o}function G7(e){var a=parseInt(e,10);return a<=49?2e3+a:a<=999?1900+a:a}function H7(e){return e.replace(/\([^()]*\)|[\n\t]/g," ").replace(/(\s\s+)/g," ").replace(/^\s\s*/,"").replace(/\s\s*$/,"")}function Y7(e,a,n){if(e){var t=Ly.indexOf(e),i=new Date(a[0],a[1],a[2]).getDay();if(t!==i)return Ae(n).weekdayMismatch=!0,n._isValid=!1,!1}return!0}function K7(e,a,n){if(e)return $7[e];if(a)return 0;var t=parseInt(n,10),i=t%100,r=(t-i)/100;return r*60+i}function qy(e){var a=V7.exec(H7(e._i)),n;if(a){if(n=W7(a[4],a[3],a[2],a[5],a[6],a[7]),!Y7(a[1],n,e))return;e._a=n,e._tzm=K7(a[8],a[9],a[10]),e._d=bo.apply(null,e._a),e._d.setUTCMinutes(e._d.getUTCMinutes()-e._tzm),Ae(e).rfc2822=!0}else e._isValid=!1}function Z7(e){var a=q7.exec(e._i);if(a!==null){e._d=new Date(+a[1]);return}if(Uy(e),e._isValid===!1)delete e._isValid;else return;if(qy(e),e._isValid===!1)delete e._isValid;else return;e._strict?e._isValid=!1:K.createFromInputFallback(e)}K.createFromInputFallback=ga("value provided is not in a recognized RFC2822 or ISO format. moment construction falls back to js Date(), which is not reliable across all browsers and versions. Non RFC2822/ISO date formats are discouraged. Please refer to http://momentjs.com/guides/#/warnings/js-date/ for more info.",function(e){e._d=new Date(e._i+(e._useUTC?" UTC":""))});function Ji(e,a,n){return e??a??n}function J7(e){var a=new Date(K.now());return e._useUTC?[a.getUTCFullYear(),a.getUTCMonth(),a.getUTCDate()]:[a.getFullYear(),a.getMonth(),a.getDate()]}function Vm(e){var a,n,t=[],i,r,o;if(!e._d){for(i=J7(e),e._w&&e._a[Va]==null&&e._a[An]==null&&Q7(e),e._dayOfYear!=null&&(o=Ji(e._a[Vt],i[Vt]),(e._dayOfYear>oo(o)||e._dayOfYear===0)&&(Ae(e)._overflowDayOfYear=!0),n=bo(o,0,e._dayOfYear),e._a[An]=n.getUTCMonth(),e._a[Va]=n.getUTCDate()),a=0;a<3&&e._a[a]==null;++a)e._a[a]=t[a]=i[a];for(;a<7;a++)e._a[a]=t[a]=e._a[a]==null?a===2?1:0:e._a[a];e._a[Rt]===24&&e._a[xa]===0&&e._a[Sn]===0&&e._a[wi]===0&&(e._nextDay=!0,e._a[Rt]=0),e._d=(e._useUTC?bo:i7).apply(null,t),r=e._useUTC?e._d.getUTCDay():e._d.getDay(),e._tzm!=null&&e._d.setUTCMinutes(e._d.getUTCMinutes()-e._tzm),e._nextDay&&(e._a[Rt]=24),e._w&&typeof e._w.d<"u"&&e._w.d!==r&&(Ae(e).weekdayMismatch=!0)}}function Q7(e){var a,n,t,i,r,o,s,l,d;a=e._w,a.GG!=null||a.W!=null||a.E!=null?(r=1,o=4,n=Ji(a.GG,e._a[Vt],yo(at(),1,4).year),t=Ji(a.W,1),i=Ji(a.E,1),(i<1||i>7)&&(l=!0)):(r=e._locale._week.dow,o=e._locale._week.doy,d=yo(at(),r,o),n=Ji(a.gg,e._a[Vt],d.year),t=Ji(a.w,d.week),a.d!=null?(i=a.d,(i<0||i>6)&&(l=!0)):a.e!=null?(i=a.e+r,(a.e<0||a.e>6)&&(l=!0)):i=r),t<1||t>Tn(n,r,o)?Ae(e)._overflowWeeks=!0:l!=null?Ae(e)._overflowWeekday=!0:(s=Fy(n,t,i,r,o),e._a[Vt]=s.year,e._dayOfYear=s.dayOfYear)}K.ISO_8601=function(){};K.RFC_2822=function(){};function $m(e){if(e._f===K.ISO_8601){Uy(e);return}if(e._f===K.RFC_2822){qy(e);return}e._a=[],Ae(e).empty=!0;var a=""+e._i,n,t,i,r,o,s=a.length,l=0,d,p;for(i=Cy(e._f,e._locale).match(Rm)||[],p=i.length,n=0;n<p;n++)r=i[n],t=(a.match(OJ(r,e))||[])[0],t&&(o=a.substr(0,a.indexOf(t)),o.length>0&&Ae(e).unusedInput.push(o),a=a.slice(a.indexOf(t)+t.length),l+=t.length),or[r]?(t?Ae(e).empty=!1:Ae(e).unusedTokens.push(r),UJ(r,t,e)):e._strict&&!t&&Ae(e).unusedTokens.push(r);Ae(e).charsLeftOver=s-l,a.length>0&&Ae(e).unusedInput.push(a),e._a[Rt]<=12&&Ae(e).bigHour===!0&&e._a[Rt]>0&&(Ae(e).bigHour=void 0),Ae(e).parsedDateParts=e._a.slice(0),Ae(e).meridiem=e._meridiem,e._a[Rt]=X7(e._locale,e._a[Rt],e._meridiem),d=Ae(e).era,d!==null&&(e._a[Vt]=e._locale.erasConvertYear(d,e._a[Vt])),Vm(e),qm(e)}function X7(e,a,n){var t;return n==null?a:e.meridiemHour!=null?e.meridiemHour(a,n):(e.isPM!=null&&(t=e.isPM(n),t&&a<12&&(a+=12),!t&&a===12&&(a=0)),a)}function eQ(e){var a,n,t,i,r,o,s=!1,l=e._f.length;if(l===0){Ae(e).invalidFormat=!0,e._d=new Date(NaN);return}for(i=0;i<l;i++)r=0,o=!1,a=xm({},e),e._useUTC!=null&&(a._useUTC=e._useUTC),a._f=e._f[i],$m(a),_m(a)&&(o=!0),r+=Ae(a).charsLeftOver,r+=Ae(a).unusedTokens.length*10,Ae(a).score=r,s?r<t&&(t=r,n=a):(t==null||r<t||o)&&(t=r,n=a,o&&(s=!0));Gn(e,n||a)}function tQ(e){if(!e._d){var a=zm(e._i),n=a.day===void 0?a.date:a.day;e._a=wy([a.year,a.month,n,a.hour,a.minute,a.second,a.millisecond],function(t){return t&&parseInt(t,10)}),Vm(e)}}function aQ(e){var a=new Yo(qm(Vy(e)));return a._nextDay&&(a.add(1,"d"),a._nextDay=void 0),a}function Vy(e){var a=e._i,n=e._f;return e._locale=e._locale||Mn(e._l),a===null||n===void 0&&a===""?Ic({nullInput:!0}):(typeof a=="string"&&(e._i=a=e._locale.preparse(a)),Ra(a)?new Yo(qm(a)):(Ho(a)?e._d=a:Ia(n)?eQ(e):n?$m(e):nQ(e),_m(e)||(e._d=null),e))}function nQ(e){var a=e._i;Xt(a)?e._d=new Date(K.now()):Ho(a)?e._d=new Date(a.valueOf()):typeof a=="string"?Z7(e):Ia(a)?(e._a=wy(a.slice(0),function(n){return parseInt(n,10)}),Vm(e)):Si(a)?tQ(e):Pn(a)?e._d=new Date(a):K.createFromInputFallback(e)}function $y(e,a,n,t,i){var r={};return(a===!0||a===!1)&&(t=a,a=void 0),(n===!0||n===!1)&&(t=n,n=void 0),(Si(e)&&Pm(e)||Ia(e)&&e.length===0)&&(e=void 0),r._isAMomentObject=!0,r._useUTC=r._isUTC=i,r._l=n,r._i=e,r._f=a,r._strict=t,aQ(r)}function at(e,a,n,t){return $y(e,a,n,t,!1)}var iQ=ga("moment().min is deprecated, use moment.max instead. http://momentjs.com/guides/#/warnings/min-max/",function(){var e=at.apply(null,arguments);return this.isValid()&&e.isValid()?e<this?this:e:Ic()}),rQ=ga("moment().max is deprecated, use moment.min instead. http://momentjs.com/guides/#/warnings/min-max/",function(){var e=at.apply(null,arguments);return this.isValid()&&e.isValid()?e>this?this:e:Ic()});function Wy(e,a){var n,t;if(a.length===1&&Ia(a[0])&&(a=a[0]),!a.length)return at();for(n=a[0],t=1;t<a.length;++t)(!a[t].isValid()||a[t][e](n))&&(n=a[t]);return n}function oQ(){var e=[].slice.call(arguments,0);return Wy("isBefore",e)}function sQ(){var e=[].slice.call(arguments,0);return Wy("isAfter",e)}var lQ=function(){return Date.now?Date.now():+new Date},Kr=["year","quarter","month","week","day","hour","minute","second","millisecond"];function cQ(e){var a,n=!1,t,i=Kr.length;for(a in e)if(Ue(e,a)&&!(ft.call(Kr,a)!==-1&&(e[a]==null||!isNaN(e[a]))))return!1;for(t=0;t<i;++t)if(e[Kr[t]]){if(n)return!1;parseFloat(e[Kr[t]])!==xe(e[Kr[t]])&&(n=!0)}return!0}function dQ(){return this._isValid}function uQ(){return za(NaN)}function Oc(e){var a=zm(e),n=a.year||0,t=a.quarter||0,i=a.month||0,r=a.week||a.isoWeek||0,o=a.day||0,s=a.hour||0,l=a.minute||0,d=a.second||0,p=a.millisecond||0;this._isValid=cQ(a),this._milliseconds=+p+d*1e3+l*6e4+s*1e3*60*60,this._days=+o+r*7,this._months=+i+t*3+n*12,this._data={},this._locale=Mn(),this._bubble()}function cl(e){return e instanceof Oc}function $u(e){return e<0?Math.round(-1*e)*-1:Math.round(e)}function pQ(e,a,n){var t=Math.min(e.length,a.length),i=Math.abs(e.length-a.length),r=0,o;for(o=0;o<t;o++)xe(e[o])!==xe(a[o])&&r++;return r+i}function Gy(e,a){se(e,0,0,function(){var n=this.utcOffset(),t="+";return n<0&&(n=-n,t="-"),t+Qa(~~(n/60),2)+a+Qa(~~n%60,2)})}Gy("Z",":");Gy("ZZ","");ee("Z",Fc);ee("ZZ",Fc);Ye(["Z","ZZ"],function(e,a,n){n._useUTC=!0,n._tzm=Wm(Fc,e)});var mQ=/([\+\-]|\d\d)/gi;function Wm(e,a){var n=(a||"").match(e),t,i,r;return n===null?null:(t=n[n.length-1]||[],i=(t+"").match(mQ)||["-",0,0],r=+(i[1]*60)+xe(i[2]),r===0?0:i[0]==="+"?r:-r)}function Gm(e,a){var n,t;return a._isUTC?(n=a.clone(),t=(Ra(e)||Ho(e)?e.valueOf():at(e).valueOf())-n.valueOf(),n._d.setTime(n._d.valueOf()+t),K.updateOffset(n,!1),n):at(e).local()}function Wu(e){return-Math.round(e._d.getTimezoneOffset())}K.updateOffset=function(){};function gQ(e,a,n){var t=this._offset||0,i;if(!this.isValid())return e!=null?this:NaN;if(e!=null){if(typeof e=="string"){if(e=Wm(Fc,e),e===null)return this}else Math.abs(e)<16&&!n&&(e=e*60);return!this._isUTC&&a&&(i=Wu(this)),this._offset=e,this._isUTC=!0,i!=null&&this.add(i,"m"),t!==e&&(!a||this._changeInProgress?Ky(this,za(e-t,"m"),1,!1):this._changeInProgress||(this._changeInProgress=!0,K.updateOffset(this,!0),this._changeInProgress=null)),this}else return this._isUTC?t:Wu(this)}function hQ(e,a){return e!=null?(typeof e!="string"&&(e=-e),this.utcOffset(e,a),this):-this.utcOffset()}function fQ(e){return this.utcOffset(0,e)}function vQ(e){return this._isUTC&&(this.utcOffset(0,e),this._isUTC=!1,e&&this.subtract(Wu(this),"m")),this}function bQ(){if(this._tzm!=null)this.utcOffset(this._tzm,!1,!0);else if(typeof this._i=="string"){var e=Wm(LJ,this._i);e!=null?this.utcOffset(e):this.utcOffset(0,!0)}return this}function yQ(e){return this.isValid()?(e=e?at(e).utcOffset():0,(this.utcOffset()-e)%60===0):!1}function kQ(){return this.utcOffset()>this.clone().month(0).utcOffset()||this.utcOffset()>this.clone().month(5).utcOffset()}function wQ(){if(!Xt(this._isDSTShifted))return this._isDSTShifted;var e={},a;return xm(e,this),e=Vy(e),e._a?(a=e._isUTC?en(e._a):at(e._a),this._isDSTShifted=this.isValid()&&pQ(e._a,a.toArray())>0):this._isDSTShifted=!1,this._isDSTShifted}function AQ(){return this.isValid()?!this._isUTC:!1}function SQ(){return this.isValid()?this._isUTC:!1}function Hy(){return this.isValid()?this._isUTC&&this._offset===0:!1}var CQ=/^(-|\+)?(?:(\d*)[. ])?(\d+):(\d+)(?::(\d+)(\.\d*)?)?$/,DQ=/^(-|\+)?P(?:([-+]?[0-9,.]*)Y)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)W)?(?:([-+]?[0-9,.]*)D)?(?:T(?:([-+]?[0-9,.]*)H)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)S)?)?$/;function za(e,a){var n=e,t=null,i,r,o;return cl(e)?n={ms:e._milliseconds,d:e._days,M:e._months}:Pn(e)||!isNaN(+e)?(n={},a?n[a]=+e:n.milliseconds=+e):(t=CQ.exec(e))?(i=t[1]==="-"?-1:1,n={y:0,d:xe(t[Va])*i,h:xe(t[Rt])*i,m:xe(t[xa])*i,s:xe(t[Sn])*i,ms:xe($u(t[wi]*1e3))*i}):(t=DQ.exec(e))?(i=t[1]==="-"?-1:1,n={y:yi(t[2],i),M:yi(t[3],i),w:yi(t[4],i),d:yi(t[5],i),h:yi(t[6],i),m:yi(t[7],i),s:yi(t[8],i)}):n==null?n={}:typeof n=="object"&&("from"in n||"to"in n)&&(o=TQ(at(n.from),at(n.to)),n={},n.ms=o.milliseconds,n.M=o.months),r=new Oc(n),cl(e)&&Ue(e,"_locale")&&(r._locale=e._locale),cl(e)&&Ue(e,"_isValid")&&(r._isValid=e._isValid),r}za.fn=Oc.prototype;za.invalid=uQ;function yi(e,a){var n=e&&parseFloat(e.replace(",","."));return(isNaN(n)?0:n)*a}function jf(e,a){var n={};return n.months=a.month()-e.month()+(a.year()-e.year())*12,e.clone().add(n.months,"M").isAfter(a)&&--n.months,n.milliseconds=+a-+e.clone().add(n.months,"M"),n}function TQ(e,a){var n;return e.isValid()&&a.isValid()?(a=Gm(a,e),e.isBefore(a)?n=jf(e,a):(n=jf(a,e),n.milliseconds=-n.milliseconds,n.months=-n.months),n):{milliseconds:0,months:0}}function Yy(e,a){return function(n,t){var i,r;return t!==null&&!isNaN(+t)&&(Sy(a,"moment()."+a+"(period, number) is deprecated. Please use moment()."+a+"(number, period). See http://momentjs.com/guides/#/warnings/add-inverted-param/ for more info."),r=n,n=t,t=r),i=za(n,t),Ky(this,i,e),this}}function Ky(e,a,n,t){var i=a._milliseconds,r=$u(a._days),o=$u(a._months);e.isValid()&&(t=t??!0,o&&zy(e,vo(e,"Month")+o*n),r&&xy(e,"Date",vo(e,"Date")+r*n),i&&e._d.setTime(e._d.valueOf()+i*n),t&&K.updateOffset(e,r||o))}var EQ=Yy(1,"add"),PQ=Yy(-1,"subtract");function Zy(e){return typeof e=="string"||e instanceof String}function _Q(e){return Ra(e)||Ho(e)||Zy(e)||Pn(e)||IQ(e)||xQ(e)||e===null||e===void 0}function xQ(e){var a=Si(e)&&!Pm(e),n=!1,t=["years","year","y","months","month","M","days","day","d","dates","date","D","hours","hour","h","minutes","minute","m","seconds","second","s","milliseconds","millisecond","ms"],i,r,o=t.length;for(i=0;i<o;i+=1)r=t[i],n=n||Ue(e,r);return a&&n}function IQ(e){var a=Ia(e),n=!1;return a&&(n=e.filter(function(t){return!Pn(t)&&Zy(e)}).length===0),a&&n}function RQ(e){var a=Si(e)&&!Pm(e),n=!1,t=["sameDay","nextDay","lastDay","nextWeek","lastWeek","sameElse"],i,r;for(i=0;i<t.length;i+=1)r=t[i],n=n||Ue(e,r);return a&&n}function zQ(e,a){var n=e.diff(a,"days",!0);return n<-6?"sameElse":n<-1?"lastWeek":n<0?"lastDay":n<1?"sameDay":n<2?"nextDay":n<7?"nextWeek":"sameElse"}function MQ(e,a){arguments.length===1&&(arguments[0]?_Q(arguments[0])?(e=arguments[0],a=void 0):RQ(arguments[0])&&(a=arguments[0],e=void 0):(e=void 0,a=void 0));var n=e||at(),t=Gm(n,this).startOf("day"),i=K.calendarFormat(this,t)||"sameElse",r=a&&(tn(a[i])?a[i].call(this,n):a[i]);return this.format(r||this.localeData().calendar(i,this,at(n)))}function NQ(){return new Yo(this)}function FQ(e,a){var n=Ra(e)?e:at(e);return this.isValid()&&n.isValid()?(a=ha(a)||"millisecond",a==="millisecond"?this.valueOf()>n.valueOf():n.valueOf()<this.clone().startOf(a).valueOf()):!1}function LQ(e,a){var n=Ra(e)?e:at(e);return this.isValid()&&n.isValid()?(a=ha(a)||"millisecond",a==="millisecond"?this.valueOf()<n.valueOf():this.clone().endOf(a).valueOf()<n.valueOf()):!1}function jQ(e,a,n,t){var i=Ra(e)?e:at(e),r=Ra(a)?a:at(a);return this.isValid()&&i.isValid()&&r.isValid()?(t=t||"()",(t[0]==="("?this.isAfter(i,n):!this.isBefore(i,n))&&(t[1]===")"?this.isBefore(r,n):!this.isAfter(r,n))):!1}function OQ(e,a){var n=Ra(e)?e:at(e),t;return this.isValid()&&n.isValid()?(a=ha(a)||"millisecond",a==="millisecond"?this.valueOf()===n.valueOf():(t=n.valueOf(),this.clone().startOf(a).valueOf()<=t&&t<=this.clone().endOf(a).valueOf())):!1}function BQ(e,a){return this.isSame(e,a)||this.isAfter(e,a)}function UQ(e,a){return this.isSame(e,a)||this.isBefore(e,a)}function qQ(e,a,n){var t,i,r;if(!this.isValid())return NaN;if(t=Gm(e,this),!t.isValid())return NaN;switch(i=(t.utcOffset()-this.utcOffset())*6e4,a=ha(a),a){case"year":r=dl(this,t)/12;break;case"month":r=dl(this,t);break;case"quarter":r=dl(this,t)/3;break;case"second":r=(this-t)/1e3;break;case"minute":r=(this-t)/6e4;break;case"hour":r=(this-t)/36e5;break;case"day":r=(this-t-i)/864e5;break;case"week":r=(this-t-i)/6048e5;break;default:r=this-t}return n?r:da(r)}function dl(e,a){if(e.date()<a.date())return-dl(a,e);var n=(a.year()-e.year())*12+(a.month()-e.month()),t=e.clone().add(n,"months"),i,r;return a-t<0?(i=e.clone().add(n-1,"months"),r=(a-t)/(t-i)):(i=e.clone().add(n+1,"months"),r=(a-t)/(i-t)),-(n+r)||0}K.defaultFormat="YYYY-MM-DDTHH:mm:ssZ";K.defaultFormatUtc="YYYY-MM-DDTHH:mm:ss[Z]";function VQ(){return this.clone().locale("en").format("ddd MMM DD YYYY HH:mm:ss [GMT]ZZ")}function $Q(e){if(!this.isValid())return null;var a=e!==!0,n=a?this.clone().utc():this;return n.year()<0||n.year()>9999?ll(n,a?"YYYYYY-MM-DD[T]HH:mm:ss.SSS[Z]":"YYYYYY-MM-DD[T]HH:mm:ss.SSSZ"):tn(Date.prototype.toISOString)?a?this.toDate().toISOString():new Date(this.valueOf()+this.utcOffset()*60*1e3).toISOString().replace("Z",ll(n,"Z")):ll(n,a?"YYYY-MM-DD[T]HH:mm:ss.SSS[Z]":"YYYY-MM-DD[T]HH:mm:ss.SSSZ")}function WQ(){if(!this.isValid())return"moment.invalid(/* "+this._i+" */)";var e="moment",a="",n,t,i,r;return this.isLocal()||(e=this.utcOffset()===0?"moment.utc":"moment.parseZone",a="Z"),n="["+e+'("]',t=0<=this.year()&&this.year()<=9999?"YYYY":"YYYYYY",i="-MM-DD[T]HH:mm:ss.SSS",r=a+'[")]',this.format(n+t+i+r)}function GQ(e){e||(e=this.isUtc()?K.defaultFormatUtc:K.defaultFormat);var a=ll(this,e);return this.localeData().postformat(a)}function HQ(e,a){return this.isValid()&&(Ra(e)&&e.isValid()||at(e).isValid())?za({to:this,from:e}).locale(this.locale()).humanize(!a):this.localeData().invalidDate()}function YQ(e){return this.from(at(),e)}function KQ(e,a){return this.isValid()&&(Ra(e)&&e.isValid()||at(e).isValid())?za({from:this,to:e}).locale(this.locale()).humanize(!a):this.localeData().invalidDate()}function ZQ(e){return this.to(at(),e)}function Jy(e){var a;return e===void 0?this._locale._abbr:(a=Mn(e),a!=null&&(this._locale=a),this)}var Qy=ga("moment().lang() is deprecated. Instead, use moment().localeData() to get the language configuration. Use moment().locale() to change languages.",function(e){return e===void 0?this.localeData():this.locale(e)});function Xy(){return this._locale}var Bl=1e3,sr=60*Bl,Ul=60*sr,ek=(365*400+97)*24*Ul;function lr(e,a){return(e%a+a)%a}function tk(e,a,n){return e<100&&e>=0?new Date(e+400,a,n)-ek:new Date(e,a,n).valueOf()}function ak(e,a,n){return e<100&&e>=0?Date.UTC(e+400,a,n)-ek:Date.UTC(e,a,n)}function JQ(e){var a,n;if(e=ha(e),e===void 0||e==="millisecond"||!this.isValid())return this;switch(n=this._isUTC?ak:tk,e){case"year":a=n(this.year(),0,1);break;case"quarter":a=n(this.year(),this.month()-this.month()%3,1);break;case"month":a=n(this.year(),this.month(),1);break;case"week":a=n(this.year(),this.month(),this.date()-this.weekday());break;case"isoWeek":a=n(this.year(),this.month(),this.date()-(this.isoWeekday()-1));break;case"day":case"date":a=n(this.year(),this.month(),this.date());break;case"hour":a=this._d.valueOf(),a-=lr(a+(this._isUTC?0:this.utcOffset()*sr),Ul);break;case"minute":a=this._d.valueOf(),a-=lr(a,sr);break;case"second":a=this._d.valueOf(),a-=lr(a,Bl);break}return this._d.setTime(a),K.updateOffset(this,!0),this}function QQ(e){var a,n;if(e=ha(e),e===void 0||e==="millisecond"||!this.isValid())return this;switch(n=this._isUTC?ak:tk,e){case"year":a=n(this.year()+1,0,1)-1;break;case"quarter":a=n(this.year(),this.month()-this.month()%3+3,1)-1;break;case"month":a=n(this.year(),this.month()+1,1)-1;break;case"week":a=n(this.year(),this.month(),this.date()-this.weekday()+7)-1;break;case"isoWeek":a=n(this.year(),this.month(),this.date()-(this.isoWeekday()-1)+7)-1;break;case"day":case"date":a=n(this.year(),this.month(),this.date()+1)-1;break;case"hour":a=this._d.valueOf(),a+=Ul-lr(a+(this._isUTC?0:this.utcOffset()*sr),Ul)-1;break;case"minute":a=this._d.valueOf(),a+=sr-lr(a,sr)-1;break;case"second":a=this._d.valueOf(),a+=Bl-lr(a,Bl)-1;break}return this._d.setTime(a),K.updateOffset(this,!0),this}function XQ(){return this._d.valueOf()-(this._offset||0)*6e4}function eX(){return Math.floor(this.valueOf()/1e3)}function tX(){return new Date(this.valueOf())}function aX(){var e=this;return[e.year(),e.month(),e.date(),e.hour(),e.minute(),e.second(),e.millisecond()]}function nX(){var e=this;return{years:e.year(),months:e.month(),date:e.date(),hours:e.hours(),minutes:e.minutes(),seconds:e.seconds(),milliseconds:e.milliseconds()}}function iX(){return this.isValid()?this.toISOString():null}function rX(){return _m(this)}function oX(){return Gn({},Ae(this))}function sX(){return Ae(this).overflow}function lX(){return{input:this._i,format:this._f,locale:this._locale,isUTC:this._isUTC,strict:this._strict}}se("N",0,0,"eraAbbr");se("NN",0,0,"eraAbbr");se("NNN",0,0,"eraAbbr");se("NNNN",0,0,"eraName");se("NNNNN",0,0,"eraNarrow");se("y",["y",1],"yo","eraYear");se("y",["yy",2],0,"eraYear");se("y",["yyy",3],0,"eraYear");se("y",["yyyy",4],0,"eraYear");ee("N",Hm);ee("NN",Hm);ee("NNN",Hm);ee("NNNN",yX);ee("NNNNN",kX);Ye(["N","NN","NNN","NNNN","NNNNN"],function(e,a,n,t){var i=n._locale.erasParse(e,t,n._strict);i?Ae(n).era=i:Ae(n).invalidEra=e});ee("y",Ir);ee("yy",Ir);ee("yyy",Ir);ee("yyyy",Ir);ee("yo",wX);Ye(["y","yy","yyy","yyyy"],Vt);Ye(["yo"],function(e,a,n,t){var i;n._locale._eraYearOrdinalRegex&&(i=e.match(n._locale._eraYearOrdinalRegex)),n._locale.eraYearOrdinalParse?a[Vt]=n._locale.eraYearOrdinalParse(e,i):a[Vt]=parseInt(e,10)});function cX(e,a){var n,t,i,r=this._eras||Mn("en")._eras;for(n=0,t=r.length;n<t;++n){switch(typeof r[n].since){case"string":i=K(r[n].since).startOf("day"),r[n].since=i.valueOf();break}switch(typeof r[n].until){case"undefined":r[n].until=1/0;break;case"string":i=K(r[n].until).startOf("day").valueOf(),r[n].until=i.valueOf();break}}return r}function dX(e,a,n){var t,i,r=this.eras(),o,s,l;for(e=e.toUpperCase(),t=0,i=r.length;t<i;++t)if(o=r[t].name.toUpperCase(),s=r[t].abbr.toUpperCase(),l=r[t].narrow.toUpperCase(),n)switch(a){case"N":case"NN":case"NNN":if(s===e)return r[t];break;case"NNNN":if(o===e)return r[t];break;case"NNNNN":if(l===e)return r[t];break}else if([o,s,l].indexOf(e)>=0)return r[t]}function uX(e,a){var n=e.since<=e.until?1:-1;return a===void 0?K(e.since).year():K(e.since).year()+(a-e.offset)*n}function pX(){var e,a,n,t=this.localeData().eras();for(e=0,a=t.length;e<a;++e)if(n=this.clone().startOf("day").valueOf(),t[e].since<=n&&n<=t[e].until||t[e].until<=n&&n<=t[e].since)return t[e].name;return""}function mX(){var e,a,n,t=this.localeData().eras();for(e=0,a=t.length;e<a;++e)if(n=this.clone().startOf("day").valueOf(),t[e].since<=n&&n<=t[e].until||t[e].until<=n&&n<=t[e].since)return t[e].narrow;return""}function gX(){var e,a,n,t=this.localeData().eras();for(e=0,a=t.length;e<a;++e)if(n=this.clone().startOf("day").valueOf(),t[e].since<=n&&n<=t[e].until||t[e].until<=n&&n<=t[e].since)return t[e].abbr;return""}function hX(){var e,a,n,t,i=this.localeData().eras();for(e=0,a=i.length;e<a;++e)if(n=i[e].since<=i[e].until?1:-1,t=this.clone().startOf("day").valueOf(),i[e].since<=t&&t<=i[e].until||i[e].until<=t&&t<=i[e].since)return(this.year()-K(i[e].since).year())*n+i[e].offset;return this.year()}function fX(e){return Ue(this,"_erasNameRegex")||Ym.call(this),e?this._erasNameRegex:this._erasRegex}function vX(e){return Ue(this,"_erasAbbrRegex")||Ym.call(this),e?this._erasAbbrRegex:this._erasRegex}function bX(e){return Ue(this,"_erasNarrowRegex")||Ym.call(this),e?this._erasNarrowRegex:this._erasRegex}function Hm(e,a){return a.erasAbbrRegex(e)}function yX(e,a){return a.erasNameRegex(e)}function kX(e,a){return a.erasNarrowRegex(e)}function wX(e,a){return a._eraYearOrdinalRegex||Ir}function Ym(){var e=[],a=[],n=[],t=[],i,r,o,s,l,d=this.eras();for(i=0,r=d.length;i<r;++i)o=Dn(d[i].name),s=Dn(d[i].abbr),l=Dn(d[i].narrow),a.push(o),e.push(s),n.push(l),t.push(o),t.push(s),t.push(l);this._erasRegex=new RegExp("^("+t.join("|")+")","i"),this._erasNameRegex=new RegExp("^("+a.join("|")+")","i"),this._erasAbbrRegex=new RegExp("^("+e.join("|")+")","i"),this._erasNarrowRegex=new RegExp("^("+n.join("|")+")","i")}se(0,["gg",2],0,function(){return this.weekYear()%100});se(0,["GG",2],0,function(){return this.isoWeekYear()%100});function Bc(e,a){se(0,[e,e.length],0,a)}Bc("gggg","weekYear");Bc("ggggg","weekYear");Bc("GGGG","isoWeekYear");Bc("GGGGG","isoWeekYear");ee("G",Nc);ee("g",Nc);ee("GG",it,na);ee("gg",it,na);ee("GGGG",Nm,Mm);ee("gggg",Nm,Mm);ee("GGGGG",Mc,Rc);ee("ggggg",Mc,Rc);Zo(["gggg","ggggg","GGGG","GGGGG"],function(e,a,n,t){a[t.substr(0,2)]=xe(e)});Zo(["gg","GG"],function(e,a,n,t){a[t]=K.parseTwoDigitYear(e)});function AX(e){return nk.call(this,e,this.week(),this.weekday()+this.localeData()._week.dow,this.localeData()._week.dow,this.localeData()._week.doy)}function SX(e){return nk.call(this,e,this.isoWeek(),this.isoWeekday(),1,4)}function CX(){return Tn(this.year(),1,4)}function DX(){return Tn(this.isoWeekYear(),1,4)}function TX(){var e=this.localeData()._week;return Tn(this.year(),e.dow,e.doy)}function EX(){var e=this.localeData()._week;return Tn(this.weekYear(),e.dow,e.doy)}function nk(e,a,n,t,i){var r;return e==null?yo(this,t,i).year:(r=Tn(e,t,i),a>r&&(a=r),PX.call(this,e,a,n,t,i))}function PX(e,a,n,t,i){var r=Fy(e,a,n,t,i),o=bo(r.year,0,r.dayOfYear);return this.year(o.getUTCFullYear()),this.month(o.getUTCMonth()),this.date(o.getUTCDate()),this}se("Q",0,"Qo","quarter");ee("Q",Dy);Ye("Q",function(e,a){a[An]=(xe(e)-1)*3});function _X(e){return e==null?Math.ceil((this.month()+1)/3):this.month((e-1)*3+this.month()%3)}se("D",["DD",2],"Do","date");ee("D",it,Rr);ee("DD",it,na);ee("Do",function(e,a){return e?a._dayOfMonthOrdinalParse||a._ordinalParse:a._dayOfMonthOrdinalParseLenient});Ye(["D","DD"],Va);Ye("Do",function(e,a){a[Va]=xe(e.match(it)[0])});var ik=zr("Date",!0);se("DDD",["DDDD",3],"DDDo","dayOfYear");ee("DDD",zc);ee("DDDD",Ty);Ye(["DDD","DDDD"],function(e,a,n){n._dayOfYear=xe(e)});function xX(e){var a=Math.round((this.clone().startOf("day")-this.clone().startOf("year"))/864e5)+1;return e==null?a:this.add(e-a,"d")}se("m",["mm",2],0,"minute");ee("m",it,Fm);ee("mm",it,na);Ye(["m","mm"],xa);var IX=zr("Minutes",!1);se("s",["ss",2],0,"second");ee("s",it,Fm);ee("ss",it,na);Ye(["s","ss"],Sn);var RX=zr("Seconds",!1);se("S",0,0,function(){return~~(this.millisecond()/100)});se(0,["SS",2],0,function(){return~~(this.millisecond()/10)});se(0,["SSS",3],0,"millisecond");se(0,["SSSS",4],0,function(){return this.millisecond()*10});se(0,["SSSSS",5],0,function(){return this.millisecond()*100});se(0,["SSSSSS",6],0,function(){return this.millisecond()*1e3});se(0,["SSSSSSS",7],0,function(){return this.millisecond()*1e4});se(0,["SSSSSSSS",8],0,function(){return this.millisecond()*1e5});se(0,["SSSSSSSSS",9],0,function(){return this.millisecond()*1e6});ee("S",zc,Dy);ee("SS",zc,na);ee("SSS",zc,Ty);var Hn,rk;for(Hn="SSSS";Hn.length<=9;Hn+="S")ee(Hn,Ir);function zX(e,a){a[wi]=xe(("0."+e)*1e3)}for(Hn="S";Hn.length<=9;Hn+="S")Ye(Hn,zX);rk=zr("Milliseconds",!1);se("z",0,0,"zoneAbbr");se("zz",0,0,"zoneName");function MX(){return this._isUTC?"UTC":""}function NX(){return this._isUTC?"Coordinated Universal Time":""}var U=Yo.prototype;U.add=EQ;U.calendar=MQ;U.clone=NQ;U.diff=qQ;U.endOf=QQ;U.format=GQ;U.from=HQ;U.fromNow=YQ;U.to=KQ;U.toNow=ZQ;U.get=WJ;U.invalidAt=sX;U.isAfter=FQ;U.isBefore=LQ;U.isBetween=jQ;U.isSame=OQ;U.isSameOrAfter=BQ;U.isSameOrBefore=UQ;U.isValid=rX;U.lang=Qy;U.locale=Jy;U.localeData=Xy;U.max=rQ;U.min=iQ;U.parsingFlags=oX;U.set=GJ;U.startOf=JQ;U.subtract=PQ;U.toArray=aX;U.toObject=nX;U.toDate=tX;U.toISOString=$Q;U.inspect=WQ;typeof Symbol<"u"&&Symbol.for!=null&&(U[Symbol.for("nodejs.util.inspect.custom")]=function(){return"Moment<"+this.format()+">"});U.toJSON=iX;U.toString=VQ;U.unix=eX;U.valueOf=XQ;U.creationData=lX;U.eraName=pX;U.eraNarrow=mX;U.eraAbbr=gX;U.eraYear=hX;U.year=_y;U.isLeapYear=$J;U.weekYear=AX;U.isoWeekYear=SX;U.quarter=U.quarters=_X;U.month=My;U.daysInMonth=t7;U.week=U.weeks=c7;U.isoWeek=U.isoWeeks=d7;U.weeksInYear=TX;U.weeksInWeekYear=EX;U.isoWeeksInYear=CX;U.isoWeeksInISOWeekYear=DX;U.date=ik;U.day=U.days=S7;U.weekday=C7;U.isoWeekday=D7;U.dayOfYear=xX;U.hour=U.hours=R7;U.minute=U.minutes=IX;U.second=U.seconds=RX;U.millisecond=U.milliseconds=rk;U.utcOffset=gQ;U.utc=fQ;U.local=vQ;U.parseZone=bQ;U.hasAlignedHourOffset=yQ;U.isDST=kQ;U.isLocal=AQ;U.isUtcOffset=SQ;U.isUtc=Hy;U.isUTC=Hy;U.zoneAbbr=MX;U.zoneName=NX;U.dates=ga("dates accessor is deprecated. Use date instead.",ik);U.months=ga("months accessor is deprecated. Use month instead",My);U.years=ga("years accessor is deprecated. Use year instead",_y);U.zone=ga("moment().zone is deprecated, use moment().utcOffset instead. http://momentjs.com/guides/#/warnings/zone/",hQ);U.isDSTShifted=ga("isDSTShifted is deprecated. See http://momentjs.com/guides/#/warnings/dst-shifted/ for more information",wQ);function FX(e){return at(e*1e3)}function LX(){return at.apply(null,arguments).parseZone()}function ok(e){return e}var qe=Im.prototype;qe.calendar=AJ;qe.longDateFormat=TJ;qe.invalidDate=PJ;qe.ordinal=IJ;qe.preparse=ok;qe.postformat=ok;qe.relativeTime=zJ;qe.pastFuture=MJ;qe.set=kJ;qe.eras=cX;qe.erasParse=dX;qe.erasConvertYear=uX;qe.erasAbbrRegex=vX;qe.erasNameRegex=fX;qe.erasNarrowRegex=bX;qe.months=JJ;qe.monthsShort=QJ;qe.monthsParse=e7;qe.monthsRegex=n7;qe.monthsShortRegex=a7;qe.week=r7;qe.firstDayOfYear=l7;qe.firstDayOfWeek=s7;qe.weekdays=b7;qe.weekdaysMin=k7;qe.weekdaysShort=y7;qe.weekdaysParse=A7;qe.weekdaysRegex=T7;qe.weekdaysShortRegex=E7;qe.weekdaysMinRegex=P7;qe.isPM=x7;qe.meridiem=z7;function ql(e,a,n,t){var i=Mn(),r=en().set(t,a);return i[n](r,e)}function sk(e,a,n){if(Pn(e)&&(a=e,e=void 0),e=e||"",a!=null)return ql(e,a,n,"month");var t,i=[];for(t=0;t<12;t++)i[t]=ql(e,t,n,"month");return i}function Km(e,a,n,t){typeof e=="boolean"?(Pn(a)&&(n=a,a=void 0),a=a||""):(a=e,n=a,e=!1,Pn(a)&&(n=a,a=void 0),a=a||"");var i=Mn(),r=e?i._week.dow:0,o,s=[];if(n!=null)return ql(a,(n+r)%7,t,"day");for(o=0;o<7;o++)s[o]=ql(a,(o+r)%7,t,"day");return s}function jX(e,a){return sk(e,a,"months")}function OX(e,a){return sk(e,a,"monthsShort")}function BX(e,a,n){return Km(e,a,n,"weekdays")}function UX(e,a,n){return Km(e,a,n,"weekdaysShort")}function qX(e,a,n){return Km(e,a,n,"weekdaysMin")}Zn("en",{eras:[{since:"0001-01-01",until:1/0,offset:1,name:"Anno Domini",narrow:"AD",abbr:"AD"},{since:"0000-12-31",until:-1/0,offset:1,name:"Before Christ",narrow:"BC",abbr:"BC"}],dayOfMonthOrdinalParse:/\d{1,2}(th|st|nd|rd)/,ordinal:function(e){var a=e%10,n=xe(e%100/10)===1?"th":a===1?"st":a===2?"nd":a===3?"rd":"th";return e+n}});K.lang=ga("moment.lang is deprecated. Use moment.locale instead.",Zn);K.langData=ga("moment.langData is deprecated. Use moment.localeData instead.",Mn);var bn=Math.abs;function VX(){var e=this._data;return this._milliseconds=bn(this._milliseconds),this._days=bn(this._days),this._months=bn(this._months),e.milliseconds=bn(e.milliseconds),e.seconds=bn(e.seconds),e.minutes=bn(e.minutes),e.hours=bn(e.hours),e.months=bn(e.months),e.years=bn(e.years),this}function lk(e,a,n,t){var i=za(a,n);return e._milliseconds+=t*i._milliseconds,e._days+=t*i._days,e._months+=t*i._months,e._bubble()}function $X(e,a){return lk(this,e,a,1)}function WX(e,a){return lk(this,e,a,-1)}function Of(e){return e<0?Math.floor(e):Math.ceil(e)}function GX(){var e=this._milliseconds,a=this._days,n=this._months,t=this._data,i,r,o,s,l;return e>=0&&a>=0&&n>=0||e<=0&&a<=0&&n<=0||(e+=Of(Gu(n)+a)*864e5,a=0,n=0),t.milliseconds=e%1e3,i=da(e/1e3),t.seconds=i%60,r=da(i/60),t.minutes=r%60,o=da(r/60),t.hours=o%24,a+=da(o/24),l=da(ck(a)),n+=l,a-=Of(Gu(l)),s=da(n/12),n%=12,t.days=a,t.months=n,t.years=s,this}function ck(e){return e*4800/146097}function Gu(e){return e*146097/4800}function HX(e){if(!this.isValid())return NaN;var a,n,t=this._milliseconds;if(e=ha(e),e==="month"||e==="quarter"||e==="year")switch(a=this._days+t/864e5,n=this._months+ck(a),e){case"month":return n;case"quarter":return n/3;case"year":return n/12}else switch(a=this._days+Math.round(Gu(this._months)),e){case"week":return a/7+t/6048e5;case"day":return a+t/864e5;case"hour":return a*24+t/36e5;case"minute":return a*1440+t/6e4;case"second":return a*86400+t/1e3;case"millisecond":return Math.floor(a*864e5)+t;default:throw new Error("Unknown unit "+e)}}function Nn(e){return function(){return this.as(e)}}var dk=Nn("ms"),YX=Nn("s"),KX=Nn("m"),ZX=Nn("h"),JX=Nn("d"),QX=Nn("w"),XX=Nn("M"),eee=Nn("Q"),tee=Nn("y"),aee=dk;function nee(){return za(this)}function iee(e){return e=ha(e),this.isValid()?this[e+"s"]():NaN}function xi(e){return function(){return this.isValid()?this._data[e]:NaN}}var ree=xi("milliseconds"),oee=xi("seconds"),see=xi("minutes"),lee=xi("hours"),cee=xi("days"),dee=xi("months"),uee=xi("years");function pee(){return da(this.days()/7)}var wn=Math.round,er={ss:44,s:45,m:45,h:22,d:26,w:null,M:11};function mee(e,a,n,t,i){return i.relativeTime(a||1,!!n,e,t)}function gee(e,a,n,t){var i=za(e).abs(),r=wn(i.as("s")),o=wn(i.as("m")),s=wn(i.as("h")),l=wn(i.as("d")),d=wn(i.as("M")),p=wn(i.as("w")),u=wn(i.as("y")),g=r<=n.ss&&["s",r]||r<n.s&&["ss",r]||o<=1&&["m"]||o<n.m&&["mm",o]||s<=1&&["h"]||s<n.h&&["hh",s]||l<=1&&["d"]||l<n.d&&["dd",l];return n.w!=null&&(g=g||p<=1&&["w"]||p<n.w&&["ww",p]),g=g||d<=1&&["M"]||d<n.M&&["MM",d]||u<=1&&["y"]||["yy",u],g[2]=a,g[3]=+e>0,g[4]=t,mee.apply(null,g)}function hee(e){return e===void 0?wn:typeof e=="function"?(wn=e,!0):!1}function fee(e,a){return er[e]===void 0?!1:a===void 0?er[e]:(er[e]=a,e==="s"&&(er.ss=a-1),!0)}function vee(e,a){if(!this.isValid())return this.localeData().invalidDate();var n=!1,t=er,i,r;return typeof e=="object"&&(a=e,e=!1),typeof e=="boolean"&&(n=e),typeof a=="object"&&(t=Object.assign({},er,a),a.s!=null&&a.ss==null&&(t.ss=a.s-1)),i=this.localeData(),r=gee(this,!n,t,i),n&&(r=i.pastFuture(+this,r)),i.postformat(r)}var $d=Math.abs;function Hi(e){return(e>0)-(e<0)||+e}function Uc(){if(!this.isValid())return this.localeData().invalidDate();var e=$d(this._milliseconds)/1e3,a=$d(this._days),n=$d(this._months),t,i,r,o,s=this.asSeconds(),l,d,p,u;return s?(t=da(e/60),i=da(t/60),e%=60,t%=60,r=da(n/12),n%=12,o=e?e.toFixed(3).replace(/\.?0+$/,""):"",l=s<0?"-":"",d=Hi(this._months)!==Hi(s)?"-":"",p=Hi(this._days)!==Hi(s)?"-":"",u=Hi(this._milliseconds)!==Hi(s)?"-":"",l+"P"+(r?d+r+"Y":"")+(n?d+n+"M":"")+(a?p+a+"D":"")+(i||t||e?"T":"")+(i?u+i+"H":"")+(t?u+t+"M":"")+(e?u+o+"S":"")):"P0D"}var je=Oc.prototype;je.isValid=dQ;je.abs=VX;je.add=$X;je.subtract=WX;je.as=HX;je.asMilliseconds=dk;je.asSeconds=YX;je.asMinutes=KX;je.asHours=ZX;je.asDays=JX;je.asWeeks=QX;je.asMonths=XX;je.asQuarters=eee;je.asYears=tee;je.valueOf=aee;je._bubble=GX;je.clone=nee;je.get=iee;je.milliseconds=ree;je.seconds=oee;je.minutes=see;je.hours=lee;je.days=cee;je.weeks=pee;je.months=dee;je.years=uee;je.humanize=vee;je.toISOString=Uc;je.toString=Uc;je.toJSON=Uc;je.locale=Jy;je.localeData=Xy;je.toIsoString=ga("toIsoString() is deprecated. Please use toISOString() instead (notice the capitals)",Uc);je.lang=Qy;se("X",0,0,"unix");se("x",0,0,"valueOf");ee("x",Nc);ee("X",jJ);Ye("X",function(e,a,n){n._d=new Date(parseFloat(e)*1e3)});Ye("x",function(e,a,n){n._d=new Date(xe(e))});//! moment.js
K.version="2.30.1";bJ(at);K.fn=U;K.min=oQ;K.max=sQ;K.now=lQ;K.utc=en;K.unix=FX;K.months=jX;K.isDate=Ho;K.locale=Zn;K.invalid=Ic;K.duration=za;K.isMoment=Ra;K.weekdays=BX;K.parseZone=LX;K.localeData=Mn;K.isDuration=cl;K.monthsShort=OX;K.weekdaysMin=qX;K.defineLocale=Um;K.updateLocale=L7;K.locales=j7;K.weekdaysShort=UX;K.normalizeUnits=ha;K.relativeTimeRounding=hee;K.relativeTimeThreshold=fee;K.calendarFormat=zQ;K.prototype=U;K.HTML5_FMT={DATETIME_LOCAL:"YYYY-MM-DDTHH:mm",DATETIME_LOCAL_SECONDS:"YYYY-MM-DDTHH:mm:ss",DATETIME_LOCAL_MS:"YYYY-MM-DDTHH:mm:ss.SSS",DATE:"YYYY-MM-DD",TIME:"HH:mm",TIME_SECONDS:"HH:mm:ss",TIME_MS:"HH:mm:ss.SSS",WEEK:"GGGG-[W]WW",MONTH:"YYYY-MM"};function Mr(e){throw new Error('Could not dynamically require "'+e+'". Please configure the dynamicRequireTargets or/and ignoreDynamicRequires option of @rollup/plugin-commonjs appropriately for this require call to work.')}var Hu={exports:{}},ul={exports:{}},bee=ul.exports,Bf;function Jo(){return Bf||(Bf=1,(function(e,a){(function(n,t){e.exports=t()})(bee,(function(){var n;function t(){return n.apply(null,arguments)}function i(c){n=c}function r(c){return c instanceof Array||Object.prototype.toString.call(c)==="[object Array]"}function o(c){return c!=null&&Object.prototype.toString.call(c)==="[object Object]"}function s(c,m){return Object.prototype.hasOwnProperty.call(c,m)}function l(c){if(Object.getOwnPropertyNames)return Object.getOwnPropertyNames(c).length===0;var m;for(m in c)if(s(c,m))return!1;return!0}function d(c){return c===void 0}function p(c){return typeof c=="number"||Object.prototype.toString.call(c)==="[object Number]"}function u(c){return c instanceof Date||Object.prototype.toString.call(c)==="[object Date]"}function g(c,m){var h=[],y,w=c.length;for(y=0;y<w;++y)h.push(m(c[y],y));return h}function b(c,m){for(var h in m)s(m,h)&&(c[h]=m[h]);return s(m,"toString")&&(c.toString=m.toString),s(m,"valueOf")&&(c.valueOf=m.valueOf),c}function v(c,m,h,y){return Yh(c,m,h,y,!0).utc()}function A(){return{empty:!1,unusedTokens:[],unusedInput:[],overflow:-2,charsLeftOver:0,nullInput:!1,invalidEra:null,invalidMonth:null,invalidFormat:!1,userInvalidated:!1,iso:!1,parsedDateParts:[],era:null,meridiem:null,rfc2822:!1,weekdayMismatch:!1}}function f(c){return c._pf==null&&(c._pf=A()),c._pf}var S;Array.prototype.some?S=Array.prototype.some:S=function(c){var m=Object(this),h=m.length>>>0,y;for(y=0;y<h;y++)if(y in m&&c.call(this,m[y],y,m))return!0;return!1};function C(c){var m=null,h=!1,y=c._d&&!isNaN(c._d.getTime());if(y&&(m=f(c),h=S.call(m.parsedDateParts,function(w){return w!=null}),y=m.overflow<0&&!m.empty&&!m.invalidEra&&!m.invalidMonth&&!m.invalidWeekday&&!m.weekdayMismatch&&!m.nullInput&&!m.invalidFormat&&!m.userInvalidated&&(!m.meridiem||m.meridiem&&h),c._strict&&(y=y&&m.charsLeftOver===0&&m.unusedTokens.length===0&&m.bigHour===void 0)),Object.isFrozen==null||!Object.isFrozen(c))c._isValid=y;else return y;return c._isValid}function T(c){var m=v(NaN);return c!=null?b(f(m),c):f(m).userInvalidated=!0,m}var E=t.momentProperties=[],P=!1;function I(c,m){var h,y,w,D=E.length;if(d(m._isAMomentObject)||(c._isAMomentObject=m._isAMomentObject),d(m._i)||(c._i=m._i),d(m._f)||(c._f=m._f),d(m._l)||(c._l=m._l),d(m._strict)||(c._strict=m._strict),d(m._tzm)||(c._tzm=m._tzm),d(m._isUTC)||(c._isUTC=m._isUTC),d(m._offset)||(c._offset=m._offset),d(m._pf)||(c._pf=f(m)),d(m._locale)||(c._locale=m._locale),D>0)for(h=0;h<D;h++)y=E[h],w=m[y],d(w)||(c[y]=w);return c}function L(c){I(this,c),this._d=new Date(c._d!=null?c._d.getTime():NaN),this.isValid()||(this._d=new Date(NaN)),P===!1&&(P=!0,t.updateOffset(this),P=!1)}function N(c){return c instanceof L||c!=null&&c._isAMomentObject!=null}function Z(c){t.suppressDeprecationWarnings===!1&&typeof console<"u"}function R(c,m){var h=!0;return b(function(){if(t.deprecationHandler!=null&&t.deprecationHandler(null,c),h){var y=[],w,D,x,Q=arguments.length;for(D=0;D<Q;D++){if(w="",typeof arguments[D]=="object"){w+=`
[`+D+"] ";for(x in arguments[0])s(arguments[0],x)&&(w+=x+": "+arguments[0][x]+", ");w=w.slice(0,-2)}else w=arguments[D];y.push(w)}Z(c+`
Arguments: `+Array.prototype.slice.call(y).join("")+`
`+new Error().stack),h=!1}return m.apply(this,arguments)},m)}var Y={};function $(c,m){t.deprecationHandler!=null&&t.deprecationHandler(c,m),Y[c]||(Z(m),Y[c]=!0)}t.suppressDeprecationWarnings=!1,t.deprecationHandler=null;function F(c){return typeof Function<"u"&&c instanceof Function||Object.prototype.toString.call(c)==="[object Function]"}function j(c){var m,h;for(h in c)s(c,h)&&(m=c[h],F(m)?this[h]=m:this["_"+h]=m);this._config=c,this._dayOfMonthOrdinalParseLenient=new RegExp((this._dayOfMonthOrdinalParse.source||this._ordinalParse.source)+"|"+/\d{1,2}/.source)}function H(c,m){var h=b({},c),y;for(y in m)s(m,y)&&(o(c[y])&&o(m[y])?(h[y]={},b(h[y],c[y]),b(h[y],m[y])):m[y]!=null?h[y]=m[y]:delete h[y]);for(y in c)s(c,y)&&!s(m,y)&&o(c[y])&&(h[y]=b({},h[y]));return h}function X(c){c!=null&&this.set(c)}var ie;Object.keys?ie=Object.keys:ie=function(c){var m,h=[];for(m in c)s(c,m)&&h.push(m);return h};var te={sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"};function oe(c,m,h){var y=this._calendar[c]||this._calendar.sameElse;return F(y)?y.call(m,h):y}function ae(c,m,h){var y=""+Math.abs(c),w=m-y.length,D=c>=0;return(D?h?"+":"":"-")+Math.pow(10,Math.max(0,w)).toString().substr(1)+y}var Me=/(\[[^\[]*\])|(\\)?([Hh]mm(ss)?|Mo|MM?M?M?|Do|DDDo|DD?D?D?|ddd?d?|do?|w[o|w]?|W[o|W]?|Qo?|N{1,5}|YYYYYY|YYYYY|YYYY|YY|y{2,4}|yo?|gg(ggg?)?|GG(GGG?)?|e|E|a|A|hh?|HH?|kk?|mm?|ss?|S{1,9}|x|X|zz?|ZZ?|.)/g,Ne=/(\[[^\[]*\])|(\\)?(LTS|LT|LL?L?L?|l{1,4})/g,re={},de={};function q(c,m,h,y){var w=y;typeof y=="string"&&(w=function(){return this[y]()}),c&&(de[c]=w),m&&(de[m[0]]=function(){return ae(w.apply(this,arguments),m[1],m[2])}),h&&(de[h]=function(){return this.localeData().ordinal(w.apply(this,arguments),c)})}function ge(c){return c.match(/\[[\s\S]/)?c.replace(/^\[|\]$/g,""):c.replace(/\\/g,"")}function Ot(c){var m=c.match(Me),h,y;for(h=0,y=m.length;h<y;h++)de[m[h]]?m[h]=de[m[h]]:m[h]=ge(m[h]);return function(w){var D="",x;for(x=0;x<y;x++)D+=F(m[x])?m[x].call(w,c):m[x];return D}}function Ee(c,m){return c.isValid()?(m=Bt(m,c.localeData()),re[m]=re[m]||Ot(m),re[m](c)):c.localeData().invalidDate()}function Bt(c,m){var h=5;function y(w){return m.longDateFormat(w)||w}for(Ne.lastIndex=0;h>=0&&Ne.test(c);)c=c.replace(Ne,y),Ne.lastIndex=0,h-=1;return c}var ia={LTS:"h:mm:ss A",LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"};function ra(c){var m=this._longDateFormat[c],h=this._longDateFormat[c.toUpperCase()];return m||!h?m:(this._longDateFormat[c]=h.match(Me).map(function(y){return y==="MMMM"||y==="MM"||y==="DD"||y==="dddd"?y.slice(1):y}).join(""),this._longDateFormat[c])}var oa="Invalid date";function jn(){return this._invalidDate}var Kt="%d",va=/\d{1,2}/;function ba(c){return this._ordinal.replace("%d",c)}var aa={future:"in %s",past:"%s ago",s:"a few seconds",ss:"%d seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",w:"a week",ww:"%d weeks",M:"a month",MM:"%d months",y:"a year",yy:"%d years"};function ya(c,m,h,y){var w=this._relativeTime[h];return F(w)?w(c,m,h,y):w.replace(/%d/i,c)}function Pt(c,m){var h=this._relativeTime[c>0?"future":"past"];return F(h)?h(m):h.replace(/%s/i,m)}var Zt={D:"date",dates:"date",date:"date",d:"day",days:"day",day:"day",e:"weekday",weekdays:"weekday",weekday:"weekday",E:"isoWeekday",isoweekdays:"isoWeekday",isoweekday:"isoWeekday",DDD:"dayOfYear",dayofyears:"dayOfYear",dayofyear:"dayOfYear",h:"hour",hours:"hour",hour:"hour",ms:"millisecond",milliseconds:"millisecond",millisecond:"millisecond",m:"minute",minutes:"minute",minute:"minute",M:"month",months:"month",month:"month",Q:"quarter",quarters:"quarter",quarter:"quarter",s:"second",seconds:"second",second:"second",gg:"weekYear",weekyears:"weekYear",weekyear:"weekYear",GG:"isoWeekYear",isoweekyears:"isoWeekYear",isoweekyear:"isoWeekYear",w:"week",weeks:"week",week:"week",W:"isoWeek",isoweeks:"isoWeek",isoweek:"isoWeek",y:"year",years:"year",year:"year"};function pt(c){return typeof c=="string"?Zt[c]||Zt[c.toLowerCase()]:void 0}function At(c){var m={},h,y;for(y in c)s(c,y)&&(h=pt(y),h&&(m[h]=c[y]));return m}var ka={date:9,day:11,weekday:11,isoWeekday:11,dayOfYear:4,hour:13,millisecond:16,minute:14,month:8,quarter:7,second:15,weekYear:1,isoWeekYear:1,week:5,isoWeek:5,year:1};function Or(c){var m=[],h;for(h in c)s(c,h)&&m.push({unit:h,priority:ka[h]});return m.sort(function(y,w){return y.priority-w.priority}),m}var sa=/\d/,He=/\d\d/,Ni=/\d{3}/,on=/\d{4}/,wa=/[+-]?\d{6}/,Pe=/\d\d?/,Na=/\d\d\d\d?/,Nt=/\d\d\d\d\d\d?/,sn=/\d{1,3}/,ln=/\d{1,4}/,De=/[+-]?\d{1,6}/,Je=/\d+/,ne=/[+-]?\d+/,Oe=/Z|[+-]\d\d:?\d\d/gi,_t=/Z|[+-]\d\d(?::?\d\d)?/gi,hi=/[+-]?\d+(\.\d{1,3})?/,cn=/[0-9]{0,256}['a-z\u00A0-\u05FF\u0700-\uD7FF\uF900-\uFDCF\uFDF0-\uFF07\uFF10-\uFFEF]{1,256}|[\u0600-\u06FF\/]{1,256}(\s*?[\u0600-\u06FF]{1,256}){1,2}/i,Aa=/^[1-9]\d?/,Fi=/^([1-9]\d|\d)/,pe;pe={};function V(c,m,h){pe[c]=F(m)?m:function(y,w){return y&&h?h:m}}function Mt(c,m){return s(pe,c)?pe[c](m._strict,m._locale):new RegExp($t(c))}function $t(c){return Jt(c.replace("\\","").replace(/\\(\[)|\\(\])|\[([^\]\[]*)\]|\\(.)/g,function(m,h,y,w,D){return h||y||w||D}))}function Jt(c){return c.replace(/[-\/\\^$*+?.()|[\]{}]/g,"\\$&")}function Ve(c){return c<0?Math.ceil(c)||0:Math.floor(c)}function ue(c){var m=+c,h=0;return m!==0&&isFinite(m)&&(h=Ve(m)),h}var On={};function Se(c,m){var h,y=m,w;for(typeof c=="string"&&(c=[c]),p(m)&&(y=function(D,x){x[m]=ue(D)}),w=c.length,h=0;h<w;h++)On[c[h]]=y}function Ft(c,m){Se(c,function(h,y,w,D){w._w=w._w||{},m(h,w._w,w,D)})}function rs(c,m,h){m!=null&&s(On,c)&&On[c](m,h._a,h,c)}function la(c){return c%4===0&&c%100!==0||c%400===0}var Lt=0,dn=1,Fa=2,xt=3,Sa=4,un=5,fi=6,aD=7,nD=8;q("Y",0,0,function(){var c=this.year();return c<=9999?ae(c,4):"+"+c}),q(0,["YY",2],0,function(){return this.year()%100}),q(0,["YYYY",4],0,"year"),q(0,["YYYYY",5],0,"year"),q(0,["YYYYYY",6,!0],0,"year"),V("Y",ne),V("YY",Pe,He),V("YYYY",ln,on),V("YYYYY",De,wa),V("YYYYYY",De,wa),Se(["YYYYY","YYYYYY"],Lt),Se("YYYY",function(c,m){m[Lt]=c.length===2?t.parseTwoDigitYear(c):ue(c)}),Se("YY",function(c,m){m[Lt]=t.parseTwoDigitYear(c)}),Se("Y",function(c,m){m[Lt]=parseInt(c,10)});function Br(c){return la(c)?366:365}t.parseTwoDigitYear=function(c){return ue(c)+(ue(c)>68?1900:2e3)};var Rh=Li("FullYear",!0);function iD(){return la(this.year())}function Li(c,m){return function(h){return h!=null?(zh(this,c,h),t.updateOffset(this,m),this):Ur(this,c)}}function Ur(c,m){if(!c.isValid())return NaN;var h=c._d,y=c._isUTC;switch(m){case"Milliseconds":return y?h.getUTCMilliseconds():h.getMilliseconds();case"Seconds":return y?h.getUTCSeconds():h.getSeconds();case"Minutes":return y?h.getUTCMinutes():h.getMinutes();case"Hours":return y?h.getUTCHours():h.getHours();case"Date":return y?h.getUTCDate():h.getDate();case"Day":return y?h.getUTCDay():h.getDay();case"Month":return y?h.getUTCMonth():h.getMonth();case"FullYear":return y?h.getUTCFullYear():h.getFullYear();default:return NaN}}function zh(c,m,h){var y,w,D,x,Q;if(!(!c.isValid()||isNaN(h))){switch(y=c._d,w=c._isUTC,m){case"Milliseconds":return void(w?y.setUTCMilliseconds(h):y.setMilliseconds(h));case"Seconds":return void(w?y.setUTCSeconds(h):y.setSeconds(h));case"Minutes":return void(w?y.setUTCMinutes(h):y.setMinutes(h));case"Hours":return void(w?y.setUTCHours(h):y.setHours(h));case"Date":return void(w?y.setUTCDate(h):y.setDate(h));case"FullYear":break;default:return}D=h,x=c.month(),Q=c.date(),Q=Q===29&&x===1&&!la(D)?28:Q,w?y.setUTCFullYear(D,x,Q):y.setFullYear(D,x,Q)}}function rD(c){return c=pt(c),F(this[c])?this[c]():this}function oD(c,m){if(typeof c=="object"){c=At(c);var h=Or(c),y,w=h.length;for(y=0;y<w;y++)this[h[y].unit](c[h[y].unit])}else if(c=pt(c),F(this[c]))return this[c](m);return this}function sD(c,m){return(c%m+m)%m}var ht;Array.prototype.indexOf?ht=Array.prototype.indexOf:ht=function(c){var m;for(m=0;m<this.length;++m)if(this[m]===c)return m;return-1};function wd(c,m){if(isNaN(c)||isNaN(m))return NaN;var h=sD(m,12);return c+=(m-h)/12,h===1?la(c)?29:28:31-h%7%2}q("M",["MM",2],"Mo",function(){return this.month()+1}),q("MMM",0,0,function(c){return this.localeData().monthsShort(this,c)}),q("MMMM",0,0,function(c){return this.localeData().months(this,c)}),V("M",Pe,Aa),V("MM",Pe,He),V("MMM",function(c,m){return m.monthsShortRegex(c)}),V("MMMM",function(c,m){return m.monthsRegex(c)}),Se(["M","MM"],function(c,m){m[dn]=ue(c)-1}),Se(["MMM","MMMM"],function(c,m,h,y){var w=h._locale.monthsParse(c,y,h._strict);w!=null?m[dn]=w:f(h).invalidMonth=c});var lD="January_February_March_April_May_June_July_August_September_October_November_December".split("_"),Mh="Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),Nh=/D[oD]?(\[[^\[\]]*\]|\s)+MMMM?/,cD=cn,dD=cn;function uD(c,m){return c?r(this._months)?this._months[c.month()]:this._months[(this._months.isFormat||Nh).test(m)?"format":"standalone"][c.month()]:r(this._months)?this._months:this._months.standalone}function pD(c,m){return c?r(this._monthsShort)?this._monthsShort[c.month()]:this._monthsShort[Nh.test(m)?"format":"standalone"][c.month()]:r(this._monthsShort)?this._monthsShort:this._monthsShort.standalone}function mD(c,m,h){var y,w,D,x=c.toLocaleLowerCase();if(!this._monthsParse)for(this._monthsParse=[],this._longMonthsParse=[],this._shortMonthsParse=[],y=0;y<12;++y)D=v([2e3,y]),this._shortMonthsParse[y]=this.monthsShort(D,"").toLocaleLowerCase(),this._longMonthsParse[y]=this.months(D,"").toLocaleLowerCase();return h?m==="MMM"?(w=ht.call(this._shortMonthsParse,x),w!==-1?w:null):(w=ht.call(this._longMonthsParse,x),w!==-1?w:null):m==="MMM"?(w=ht.call(this._shortMonthsParse,x),w!==-1?w:(w=ht.call(this._longMonthsParse,x),w!==-1?w:null)):(w=ht.call(this._longMonthsParse,x),w!==-1?w:(w=ht.call(this._shortMonthsParse,x),w!==-1?w:null))}function gD(c,m,h){var y,w,D;if(this._monthsParseExact)return mD.call(this,c,m,h);for(this._monthsParse||(this._monthsParse=[],this._longMonthsParse=[],this._shortMonthsParse=[]),y=0;y<12;y++){if(w=v([2e3,y]),h&&!this._longMonthsParse[y]&&(this._longMonthsParse[y]=new RegExp("^"+this.months(w,"").replace(".","")+"$","i"),this._shortMonthsParse[y]=new RegExp("^"+this.monthsShort(w,"").replace(".","")+"$","i")),!h&&!this._monthsParse[y]&&(D="^"+this.months(w,"")+"|^"+this.monthsShort(w,""),this._monthsParse[y]=new RegExp(D.replace(".",""),"i")),h&&m==="MMMM"&&this._longMonthsParse[y].test(c))return y;if(h&&m==="MMM"&&this._shortMonthsParse[y].test(c))return y;if(!h&&this._monthsParse[y].test(c))return y}}function Fh(c,m){if(!c.isValid())return c;if(typeof m=="string"){if(/^\d+$/.test(m))m=ue(m);else if(m=c.localeData().monthsParse(m),!p(m))return c}var h=m,y=c.date();return y=y<29?y:Math.min(y,wd(c.year(),h)),c._isUTC?c._d.setUTCMonth(h,y):c._d.setMonth(h,y),c}function Lh(c){return c!=null?(Fh(this,c),t.updateOffset(this,!0),this):Ur(this,"Month")}function hD(){return wd(this.year(),this.month())}function fD(c){return this._monthsParseExact?(s(this,"_monthsRegex")||jh.call(this),c?this._monthsShortStrictRegex:this._monthsShortRegex):(s(this,"_monthsShortRegex")||(this._monthsShortRegex=cD),this._monthsShortStrictRegex&&c?this._monthsShortStrictRegex:this._monthsShortRegex)}function vD(c){return this._monthsParseExact?(s(this,"_monthsRegex")||jh.call(this),c?this._monthsStrictRegex:this._monthsRegex):(s(this,"_monthsRegex")||(this._monthsRegex=dD),this._monthsStrictRegex&&c?this._monthsStrictRegex:this._monthsRegex)}function jh(){function c(me,Ie){return Ie.length-me.length}var m=[],h=[],y=[],w,D,x,Q;for(w=0;w<12;w++)D=v([2e3,w]),x=Jt(this.monthsShort(D,"")),Q=Jt(this.months(D,"")),m.push(x),h.push(Q),y.push(Q),y.push(x);m.sort(c),h.sort(c),y.sort(c),this._monthsRegex=new RegExp("^("+y.join("|")+")","i"),this._monthsShortRegex=this._monthsRegex,this._monthsStrictRegex=new RegExp("^("+h.join("|")+")","i"),this._monthsShortStrictRegex=new RegExp("^("+m.join("|")+")","i")}function bD(c,m,h,y,w,D,x){var Q;return c<100&&c>=0?(Q=new Date(c+400,m,h,y,w,D,x),isFinite(Q.getFullYear())&&Q.setFullYear(c)):Q=new Date(c,m,h,y,w,D,x),Q}function qr(c){var m,h;return c<100&&c>=0?(h=Array.prototype.slice.call(arguments),h[0]=c+400,m=new Date(Date.UTC.apply(null,h)),isFinite(m.getUTCFullYear())&&m.setUTCFullYear(c)):m=new Date(Date.UTC.apply(null,arguments)),m}function os(c,m,h){var y=7+m-h,w=(7+qr(c,0,y).getUTCDay()-m)%7;return-w+y-1}function Oh(c,m,h,y,w){var D=(7+h-y)%7,x=os(c,y,w),Q=1+7*(m-1)+D+x,me,Ie;return Q<=0?(me=c-1,Ie=Br(me)+Q):Q>Br(c)?(me=c+1,Ie=Q-Br(c)):(me=c,Ie=Q),{year:me,dayOfYear:Ie}}function Vr(c,m,h){var y=os(c.year(),m,h),w=Math.floor((c.dayOfYear()-y-1)/7)+1,D,x;return w<1?(x=c.year()-1,D=w+pn(x,m,h)):w>pn(c.year(),m,h)?(D=w-pn(c.year(),m,h),x=c.year()+1):(x=c.year(),D=w),{week:D,year:x}}function pn(c,m,h){var y=os(c,m,h),w=os(c+1,m,h);return(Br(c)-y+w)/7}q("w",["ww",2],"wo","week"),q("W",["WW",2],"Wo","isoWeek"),V("w",Pe,Aa),V("ww",Pe,He),V("W",Pe,Aa),V("WW",Pe,He),Ft(["w","ww","W","WW"],function(c,m,h,y){m[y.substr(0,1)]=ue(c)});function yD(c){return Vr(c,this._week.dow,this._week.doy).week}var kD={dow:0,doy:6};function wD(){return this._week.dow}function AD(){return this._week.doy}function SD(c){var m=this.localeData().week(this);return c==null?m:this.add((c-m)*7,"d")}function CD(c){var m=Vr(this,1,4).week;return c==null?m:this.add((c-m)*7,"d")}q("d",0,"do","day"),q("dd",0,0,function(c){return this.localeData().weekdaysMin(this,c)}),q("ddd",0,0,function(c){return this.localeData().weekdaysShort(this,c)}),q("dddd",0,0,function(c){return this.localeData().weekdays(this,c)}),q("e",0,0,"weekday"),q("E",0,0,"isoWeekday"),V("d",Pe),V("e",Pe),V("E",Pe),V("dd",function(c,m){return m.weekdaysMinRegex(c)}),V("ddd",function(c,m){return m.weekdaysShortRegex(c)}),V("dddd",function(c,m){return m.weekdaysRegex(c)}),Ft(["dd","ddd","dddd"],function(c,m,h,y){var w=h._locale.weekdaysParse(c,y,h._strict);w!=null?m.d=w:f(h).invalidWeekday=c}),Ft(["d","e","E"],function(c,m,h,y){m[y]=ue(c)});function DD(c,m){return typeof c!="string"?c:isNaN(c)?(c=m.weekdaysParse(c),typeof c=="number"?c:null):parseInt(c,10)}function TD(c,m){return typeof c=="string"?m.weekdaysParse(c)%7||7:isNaN(c)?null:c}function Ad(c,m){return c.slice(m,7).concat(c.slice(0,m))}var ED="Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),Bh="Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),PD="Su_Mo_Tu_We_Th_Fr_Sa".split("_"),_D=cn,xD=cn,ID=cn;function RD(c,m){var h=r(this._weekdays)?this._weekdays:this._weekdays[c&&c!==!0&&this._weekdays.isFormat.test(m)?"format":"standalone"];return c===!0?Ad(h,this._week.dow):c?h[c.day()]:h}function zD(c){return c===!0?Ad(this._weekdaysShort,this._week.dow):c?this._weekdaysShort[c.day()]:this._weekdaysShort}function MD(c){return c===!0?Ad(this._weekdaysMin,this._week.dow):c?this._weekdaysMin[c.day()]:this._weekdaysMin}function ND(c,m,h){var y,w,D,x=c.toLocaleLowerCase();if(!this._weekdaysParse)for(this._weekdaysParse=[],this._shortWeekdaysParse=[],this._minWeekdaysParse=[],y=0;y<7;++y)D=v([2e3,1]).day(y),this._minWeekdaysParse[y]=this.weekdaysMin(D,"").toLocaleLowerCase(),this._shortWeekdaysParse[y]=this.weekdaysShort(D,"").toLocaleLowerCase(),this._weekdaysParse[y]=this.weekdays(D,"").toLocaleLowerCase();return h?m==="dddd"?(w=ht.call(this._weekdaysParse,x),w!==-1?w:null):m==="ddd"?(w=ht.call(this._shortWeekdaysParse,x),w!==-1?w:null):(w=ht.call(this._minWeekdaysParse,x),w!==-1?w:null):m==="dddd"?(w=ht.call(this._weekdaysParse,x),w!==-1||(w=ht.call(this._shortWeekdaysParse,x),w!==-1)?w:(w=ht.call(this._minWeekdaysParse,x),w!==-1?w:null)):m==="ddd"?(w=ht.call(this._shortWeekdaysParse,x),w!==-1||(w=ht.call(this._weekdaysParse,x),w!==-1)?w:(w=ht.call(this._minWeekdaysParse,x),w!==-1?w:null)):(w=ht.call(this._minWeekdaysParse,x),w!==-1||(w=ht.call(this._weekdaysParse,x),w!==-1)?w:(w=ht.call(this._shortWeekdaysParse,x),w!==-1?w:null))}function FD(c,m,h){var y,w,D;if(this._weekdaysParseExact)return ND.call(this,c,m,h);for(this._weekdaysParse||(this._weekdaysParse=[],this._minWeekdaysParse=[],this._shortWeekdaysParse=[],this._fullWeekdaysParse=[]),y=0;y<7;y++){if(w=v([2e3,1]).day(y),h&&!this._fullWeekdaysParse[y]&&(this._fullWeekdaysParse[y]=new RegExp("^"+this.weekdays(w,"").replace(".","\\.?")+"$","i"),this._shortWeekdaysParse[y]=new RegExp("^"+this.weekdaysShort(w,"").replace(".","\\.?")+"$","i"),this._minWeekdaysParse[y]=new RegExp("^"+this.weekdaysMin(w,"").replace(".","\\.?")+"$","i")),this._weekdaysParse[y]||(D="^"+this.weekdays(w,"")+"|^"+this.weekdaysShort(w,"")+"|^"+this.weekdaysMin(w,""),this._weekdaysParse[y]=new RegExp(D.replace(".",""),"i")),h&&m==="dddd"&&this._fullWeekdaysParse[y].test(c))return y;if(h&&m==="ddd"&&this._shortWeekdaysParse[y].test(c))return y;if(h&&m==="dd"&&this._minWeekdaysParse[y].test(c))return y;if(!h&&this._weekdaysParse[y].test(c))return y}}function LD(c){if(!this.isValid())return c!=null?this:NaN;var m=Ur(this,"Day");return c!=null?(c=DD(c,this.localeData()),this.add(c-m,"d")):m}function jD(c){if(!this.isValid())return c!=null?this:NaN;var m=(this.day()+7-this.localeData()._week.dow)%7;return c==null?m:this.add(c-m,"d")}function OD(c){if(!this.isValid())return c!=null?this:NaN;if(c!=null){var m=TD(c,this.localeData());return this.day(this.day()%7?m:m-7)}else return this.day()||7}function BD(c){return this._weekdaysParseExact?(s(this,"_weekdaysRegex")||Sd.call(this),c?this._weekdaysStrictRegex:this._weekdaysRegex):(s(this,"_weekdaysRegex")||(this._weekdaysRegex=_D),this._weekdaysStrictRegex&&c?this._weekdaysStrictRegex:this._weekdaysRegex)}function UD(c){return this._weekdaysParseExact?(s(this,"_weekdaysRegex")||Sd.call(this),c?this._weekdaysShortStrictRegex:this._weekdaysShortRegex):(s(this,"_weekdaysShortRegex")||(this._weekdaysShortRegex=xD),this._weekdaysShortStrictRegex&&c?this._weekdaysShortStrictRegex:this._weekdaysShortRegex)}function qD(c){return this._weekdaysParseExact?(s(this,"_weekdaysRegex")||Sd.call(this),c?this._weekdaysMinStrictRegex:this._weekdaysMinRegex):(s(this,"_weekdaysMinRegex")||(this._weekdaysMinRegex=ID),this._weekdaysMinStrictRegex&&c?this._weekdaysMinStrictRegex:this._weekdaysMinRegex)}function Sd(){function c(Wt,vn){return vn.length-Wt.length}var m=[],h=[],y=[],w=[],D,x,Q,me,Ie;for(D=0;D<7;D++)x=v([2e3,1]).day(D),Q=Jt(this.weekdaysMin(x,"")),me=Jt(this.weekdaysShort(x,"")),Ie=Jt(this.weekdays(x,"")),m.push(Q),h.push(me),y.push(Ie),w.push(Q),w.push(me),w.push(Ie);m.sort(c),h.sort(c),y.sort(c),w.sort(c),this._weekdaysRegex=new RegExp("^("+w.join("|")+")","i"),this._weekdaysShortRegex=this._weekdaysRegex,this._weekdaysMinRegex=this._weekdaysRegex,this._weekdaysStrictRegex=new RegExp("^("+y.join("|")+")","i"),this._weekdaysShortStrictRegex=new RegExp("^("+h.join("|")+")","i"),this._weekdaysMinStrictRegex=new RegExp("^("+m.join("|")+")","i")}function Cd(){return this.hours()%12||12}function VD(){return this.hours()||24}q("H",["HH",2],0,"hour"),q("h",["hh",2],0,Cd),q("k",["kk",2],0,VD),q("hmm",0,0,function(){return""+Cd.apply(this)+ae(this.minutes(),2)}),q("hmmss",0,0,function(){return""+Cd.apply(this)+ae(this.minutes(),2)+ae(this.seconds(),2)}),q("Hmm",0,0,function(){return""+this.hours()+ae(this.minutes(),2)}),q("Hmmss",0,0,function(){return""+this.hours()+ae(this.minutes(),2)+ae(this.seconds(),2)});function Uh(c,m){q(c,0,0,function(){return this.localeData().meridiem(this.hours(),this.minutes(),m)})}Uh("a",!0),Uh("A",!1);function qh(c,m){return m._meridiemParse}V("a",qh),V("A",qh),V("H",Pe,Fi),V("h",Pe,Aa),V("k",Pe,Aa),V("HH",Pe,He),V("hh",Pe,He),V("kk",Pe,He),V("hmm",Na),V("hmmss",Nt),V("Hmm",Na),V("Hmmss",Nt),Se(["H","HH"],xt),Se(["k","kk"],function(c,m,h){var y=ue(c);m[xt]=y===24?0:y}),Se(["a","A"],function(c,m,h){h._isPm=h._locale.isPM(c),h._meridiem=c}),Se(["h","hh"],function(c,m,h){m[xt]=ue(c),f(h).bigHour=!0}),Se("hmm",function(c,m,h){var y=c.length-2;m[xt]=ue(c.substr(0,y)),m[Sa]=ue(c.substr(y)),f(h).bigHour=!0}),Se("hmmss",function(c,m,h){var y=c.length-4,w=c.length-2;m[xt]=ue(c.substr(0,y)),m[Sa]=ue(c.substr(y,2)),m[un]=ue(c.substr(w)),f(h).bigHour=!0}),Se("Hmm",function(c,m,h){var y=c.length-2;m[xt]=ue(c.substr(0,y)),m[Sa]=ue(c.substr(y))}),Se("Hmmss",function(c,m,h){var y=c.length-4,w=c.length-2;m[xt]=ue(c.substr(0,y)),m[Sa]=ue(c.substr(y,2)),m[un]=ue(c.substr(w))});function $D(c){return(c+"").toLowerCase().charAt(0)==="p"}var WD=/[ap]\.?m?\.?/i,GD=Li("Hours",!0);function HD(c,m,h){return c>11?h?"pm":"PM":h?"am":"AM"}var Vh={calendar:te,longDateFormat:ia,invalidDate:oa,ordinal:Kt,dayOfMonthOrdinalParse:va,relativeTime:aa,months:lD,monthsShort:Mh,week:kD,weekdays:ED,weekdaysMin:PD,weekdaysShort:Bh,meridiemParse:WD},ot={},$r={},Wr;function YD(c,m){var h,y=Math.min(c.length,m.length);for(h=0;h<y;h+=1)if(c[h]!==m[h])return h;return y}function $h(c){return c&&c.toLowerCase().replace("_","-")}function KD(c){for(var m=0,h,y,w,D;m<c.length;){for(D=$h(c[m]).split("-"),h=D.length,y=$h(c[m+1]),y=y?y.split("-"):null;h>0;){if(w=ss(D.slice(0,h).join("-")),w)return w;if(y&&y.length>=h&&YD(D,y)>=h-1)break;h--}m++}return Wr}function ZD(c){return!!(c&&c.match("^[^/\\\\]*$"))}function ss(c){var m=null,h;if(ot[c]===void 0&&e&&e.exports&&ZD(c))try{m=Wr._abbr,h=Mr,h("./locale/"+c),Bn(m)}catch{ot[c]=null}return ot[c]}function Bn(c,m){var h;return c&&(d(m)?h=mn(c):h=Dd(c,m),h&&(Wr=h)),Wr._abbr}function Dd(c,m){if(m!==null){var h,y=Vh;if(m.abbr=c,ot[c]!=null)$("defineLocaleOverride","use moment.updateLocale(localeName, config) to change an existing locale. moment.defineLocale(localeName, config) should only be used for creating a new locale See http://momentjs.com/guides/#/warnings/define-locale/ for more info."),y=ot[c]._config;else if(m.parentLocale!=null)if(ot[m.parentLocale]!=null)y=ot[m.parentLocale]._config;else if(h=ss(m.parentLocale),h!=null)y=h._config;else return $r[m.parentLocale]||($r[m.parentLocale]=[]),$r[m.parentLocale].push({name:c,config:m}),null;return ot[c]=new X(H(y,m)),$r[c]&&$r[c].forEach(function(w){Dd(w.name,w.config)}),Bn(c),ot[c]}else return delete ot[c],null}function JD(c,m){if(m!=null){var h,y,w=Vh;ot[c]!=null&&ot[c].parentLocale!=null?ot[c].set(H(ot[c]._config,m)):(y=ss(c),y!=null&&(w=y._config),m=H(w,m),y==null&&(m.abbr=c),h=new X(m),h.parentLocale=ot[c],ot[c]=h),Bn(c)}else ot[c]!=null&&(ot[c].parentLocale!=null?(ot[c]=ot[c].parentLocale,c===Bn()&&Bn(c)):ot[c]!=null&&delete ot[c]);return ot[c]}function mn(c){var m;if(c&&c._locale&&c._locale._abbr&&(c=c._locale._abbr),!c)return Wr;if(!r(c)){if(m=ss(c),m)return m;c=[c]}return KD(c)}function QD(){return ie(ot)}function Td(c){var m,h=c._a;return h&&f(c).overflow===-2&&(m=h[dn]<0||h[dn]>11?dn:h[Fa]<1||h[Fa]>wd(h[Lt],h[dn])?Fa:h[xt]<0||h[xt]>24||h[xt]===24&&(h[Sa]!==0||h[un]!==0||h[fi]!==0)?xt:h[Sa]<0||h[Sa]>59?Sa:h[un]<0||h[un]>59?un:h[fi]<0||h[fi]>999?fi:-1,f(c)._overflowDayOfYear&&(m<Lt||m>Fa)&&(m=Fa),f(c)._overflowWeeks&&m===-1&&(m=aD),f(c)._overflowWeekday&&m===-1&&(m=nD),f(c).overflow=m),c}var XD=/^\s*((?:[+-]\d{6}|\d{4})-(?:\d\d-\d\d|W\d\d-\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?::\d\d(?::\d\d(?:[.,]\d+)?)?)?)([+-]\d\d(?::?\d\d)?|\s*Z)?)?$/,eT=/^\s*((?:[+-]\d{6}|\d{4})(?:\d\d\d\d|W\d\d\d|W\d\d|\d\d\d|\d\d|))(?:(T| )(\d\d(?:\d\d(?:\d\d(?:[.,]\d+)?)?)?)([+-]\d\d(?::?\d\d)?|\s*Z)?)?$/,tT=/Z|[+-]\d\d(?::?\d\d)?/,ls=[["YYYYYY-MM-DD",/[+-]\d{6}-\d\d-\d\d/],["YYYY-MM-DD",/\d{4}-\d\d-\d\d/],["GGGG-[W]WW-E",/\d{4}-W\d\d-\d/],["GGGG-[W]WW",/\d{4}-W\d\d/,!1],["YYYY-DDD",/\d{4}-\d{3}/],["YYYY-MM",/\d{4}-\d\d/,!1],["YYYYYYMMDD",/[+-]\d{10}/],["YYYYMMDD",/\d{8}/],["GGGG[W]WWE",/\d{4}W\d{3}/],["GGGG[W]WW",/\d{4}W\d{2}/,!1],["YYYYDDD",/\d{7}/],["YYYYMM",/\d{6}/,!1],["YYYY",/\d{4}/,!1]],Ed=[["HH:mm:ss.SSSS",/\d\d:\d\d:\d\d\.\d+/],["HH:mm:ss,SSSS",/\d\d:\d\d:\d\d,\d+/],["HH:mm:ss",/\d\d:\d\d:\d\d/],["HH:mm",/\d\d:\d\d/],["HHmmss.SSSS",/\d\d\d\d\d\d\.\d+/],["HHmmss,SSSS",/\d\d\d\d\d\d,\d+/],["HHmmss",/\d\d\d\d\d\d/],["HHmm",/\d\d\d\d/],["HH",/\d\d/]],aT=/^\/?Date\((-?\d+)/i,nT=/^(?:(Mon|Tue|Wed|Thu|Fri|Sat|Sun),?\s)?(\d{1,2})\s(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\s(\d{2,4})\s(\d\d):(\d\d)(?::(\d\d))?\s(?:(UT|GMT|[ECMP][SD]T)|([Zz])|([+-]\d{4}))$/,iT={UT:0,GMT:0,EDT:-240,EST:-300,CDT:-300,CST:-360,MDT:-360,MST:-420,PDT:-420,PST:-480};function Wh(c){var m,h,y=c._i,w=XD.exec(y)||eT.exec(y),D,x,Q,me,Ie=ls.length,Wt=Ed.length;if(w){for(f(c).iso=!0,m=0,h=Ie;m<h;m++)if(ls[m][1].exec(w[1])){x=ls[m][0],D=ls[m][2]!==!1;break}if(x==null){c._isValid=!1;return}if(w[3]){for(m=0,h=Wt;m<h;m++)if(Ed[m][1].exec(w[3])){Q=(w[2]||" ")+Ed[m][0];break}if(Q==null){c._isValid=!1;return}}if(!D&&Q!=null){c._isValid=!1;return}if(w[4])if(tT.exec(w[4]))me="Z";else{c._isValid=!1;return}c._f=x+(Q||"")+(me||""),_d(c)}else c._isValid=!1}function rT(c,m,h,y,w,D){var x=[oT(c),Mh.indexOf(m),parseInt(h,10),parseInt(y,10),parseInt(w,10)];return D&&x.push(parseInt(D,10)),x}function oT(c){var m=parseInt(c,10);return m<=49?2e3+m:m<=999?1900+m:m}function sT(c){return c.replace(/\([^()]*\)|[\n\t]/g," ").replace(/(\s\s+)/g," ").replace(/^\s\s*/,"").replace(/\s\s*$/,"")}function lT(c,m,h){if(c){var y=Bh.indexOf(c),w=new Date(m[0],m[1],m[2]).getDay();if(y!==w)return f(h).weekdayMismatch=!0,h._isValid=!1,!1}return!0}function cT(c,m,h){if(c)return iT[c];if(m)return 0;var y=parseInt(h,10),w=y%100,D=(y-w)/100;return D*60+w}function Gh(c){var m=nT.exec(sT(c._i)),h;if(m){if(h=rT(m[4],m[3],m[2],m[5],m[6],m[7]),!lT(m[1],h,c))return;c._a=h,c._tzm=cT(m[8],m[9],m[10]),c._d=qr.apply(null,c._a),c._d.setUTCMinutes(c._d.getUTCMinutes()-c._tzm),f(c).rfc2822=!0}else c._isValid=!1}function dT(c){var m=aT.exec(c._i);if(m!==null){c._d=new Date(+m[1]);return}if(Wh(c),c._isValid===!1)delete c._isValid;else return;if(Gh(c),c._isValid===!1)delete c._isValid;else return;c._strict?c._isValid=!1:t.createFromInputFallback(c)}t.createFromInputFallback=R("value provided is not in a recognized RFC2822 or ISO format. moment construction falls back to js Date(), which is not reliable across all browsers and versions. Non RFC2822/ISO date formats are discouraged. Please refer to http://momentjs.com/guides/#/warnings/js-date/ for more info.",function(c){c._d=new Date(c._i+(c._useUTC?" UTC":""))});function ji(c,m,h){return c??m??h}function uT(c){var m=new Date(t.now());return c._useUTC?[m.getUTCFullYear(),m.getUTCMonth(),m.getUTCDate()]:[m.getFullYear(),m.getMonth(),m.getDate()]}function Pd(c){var m,h,y=[],w,D,x;if(!c._d){for(w=uT(c),c._w&&c._a[Fa]==null&&c._a[dn]==null&&pT(c),c._dayOfYear!=null&&(x=ji(c._a[Lt],w[Lt]),(c._dayOfYear>Br(x)||c._dayOfYear===0)&&(f(c)._overflowDayOfYear=!0),h=qr(x,0,c._dayOfYear),c._a[dn]=h.getUTCMonth(),c._a[Fa]=h.getUTCDate()),m=0;m<3&&c._a[m]==null;++m)c._a[m]=y[m]=w[m];for(;m<7;m++)c._a[m]=y[m]=c._a[m]==null?m===2?1:0:c._a[m];c._a[xt]===24&&c._a[Sa]===0&&c._a[un]===0&&c._a[fi]===0&&(c._nextDay=!0,c._a[xt]=0),c._d=(c._useUTC?qr:bD).apply(null,y),D=c._useUTC?c._d.getUTCDay():c._d.getDay(),c._tzm!=null&&c._d.setUTCMinutes(c._d.getUTCMinutes()-c._tzm),c._nextDay&&(c._a[xt]=24),c._w&&typeof c._w.d<"u"&&c._w.d!==D&&(f(c).weekdayMismatch=!0)}}function pT(c){var m,h,y,w,D,x,Q,me,Ie;m=c._w,m.GG!=null||m.W!=null||m.E!=null?(D=1,x=4,h=ji(m.GG,c._a[Lt],Vr(Qe(),1,4).year),y=ji(m.W,1),w=ji(m.E,1),(w<1||w>7)&&(me=!0)):(D=c._locale._week.dow,x=c._locale._week.doy,Ie=Vr(Qe(),D,x),h=ji(m.gg,c._a[Lt],Ie.year),y=ji(m.w,Ie.week),m.d!=null?(w=m.d,(w<0||w>6)&&(me=!0)):m.e!=null?(w=m.e+D,(m.e<0||m.e>6)&&(me=!0)):w=D),y<1||y>pn(h,D,x)?f(c)._overflowWeeks=!0:me!=null?f(c)._overflowWeekday=!0:(Q=Oh(h,y,w,D,x),c._a[Lt]=Q.year,c._dayOfYear=Q.dayOfYear)}t.ISO_8601=function(){},t.RFC_2822=function(){};function _d(c){if(c._f===t.ISO_8601){Wh(c);return}if(c._f===t.RFC_2822){Gh(c);return}c._a=[],f(c).empty=!0;var m=""+c._i,h,y,w,D,x,Q=m.length,me=0,Ie,Wt;for(w=Bt(c._f,c._locale).match(Me)||[],Wt=w.length,h=0;h<Wt;h++)D=w[h],y=(m.match(Mt(D,c))||[])[0],y&&(x=m.substr(0,m.indexOf(y)),x.length>0&&f(c).unusedInput.push(x),m=m.slice(m.indexOf(y)+y.length),me+=y.length),de[D]?(y?f(c).empty=!1:f(c).unusedTokens.push(D),rs(D,y,c)):c._strict&&!y&&f(c).unusedTokens.push(D);f(c).charsLeftOver=Q-me,m.length>0&&f(c).unusedInput.push(m),c._a[xt]<=12&&f(c).bigHour===!0&&c._a[xt]>0&&(f(c).bigHour=void 0),f(c).parsedDateParts=c._a.slice(0),f(c).meridiem=c._meridiem,c._a[xt]=mT(c._locale,c._a[xt],c._meridiem),Ie=f(c).era,Ie!==null&&(c._a[Lt]=c._locale.erasConvertYear(Ie,c._a[Lt])),Pd(c),Td(c)}function mT(c,m,h){var y;return h==null?m:c.meridiemHour!=null?c.meridiemHour(m,h):(c.isPM!=null&&(y=c.isPM(h),y&&m<12&&(m+=12),!y&&m===12&&(m=0)),m)}function gT(c){var m,h,y,w,D,x,Q=!1,me=c._f.length;if(me===0){f(c).invalidFormat=!0,c._d=new Date(NaN);return}for(w=0;w<me;w++)D=0,x=!1,m=I({},c),c._useUTC!=null&&(m._useUTC=c._useUTC),m._f=c._f[w],_d(m),C(m)&&(x=!0),D+=f(m).charsLeftOver,D+=f(m).unusedTokens.length*10,f(m).score=D,Q?D<y&&(y=D,h=m):(y==null||D<y||x)&&(y=D,h=m,x&&(Q=!0));b(c,h||m)}function hT(c){if(!c._d){var m=At(c._i),h=m.day===void 0?m.date:m.day;c._a=g([m.year,m.month,h,m.hour,m.minute,m.second,m.millisecond],function(y){return y&&parseInt(y,10)}),Pd(c)}}function fT(c){var m=new L(Td(Hh(c)));return m._nextDay&&(m.add(1,"d"),m._nextDay=void 0),m}function Hh(c){var m=c._i,h=c._f;return c._locale=c._locale||mn(c._l),m===null||h===void 0&&m===""?T({nullInput:!0}):(typeof m=="string"&&(c._i=m=c._locale.preparse(m)),N(m)?new L(Td(m)):(u(m)?c._d=m:r(h)?gT(c):h?_d(c):vT(c),C(c)||(c._d=null),c))}function vT(c){var m=c._i;d(m)?c._d=new Date(t.now()):u(m)?c._d=new Date(m.valueOf()):typeof m=="string"?dT(c):r(m)?(c._a=g(m.slice(0),function(h){return parseInt(h,10)}),Pd(c)):o(m)?hT(c):p(m)?c._d=new Date(m):t.createFromInputFallback(c)}function Yh(c,m,h,y,w){var D={};return(m===!0||m===!1)&&(y=m,m=void 0),(h===!0||h===!1)&&(y=h,h=void 0),(o(c)&&l(c)||r(c)&&c.length===0)&&(c=void 0),D._isAMomentObject=!0,D._useUTC=D._isUTC=w,D._l=h,D._i=c,D._f=m,D._strict=y,fT(D)}function Qe(c,m,h,y){return Yh(c,m,h,y,!1)}var bT=R("moment().min is deprecated, use moment.max instead. http://momentjs.com/guides/#/warnings/min-max/",function(){var c=Qe.apply(null,arguments);return this.isValid()&&c.isValid()?c<this?this:c:T()}),yT=R("moment().max is deprecated, use moment.min instead. http://momentjs.com/guides/#/warnings/min-max/",function(){var c=Qe.apply(null,arguments);return this.isValid()&&c.isValid()?c>this?this:c:T()});function Kh(c,m){var h,y;if(m.length===1&&r(m[0])&&(m=m[0]),!m.length)return Qe();for(h=m[0],y=1;y<m.length;++y)(!m[y].isValid()||m[y][c](h))&&(h=m[y]);return h}function kT(){var c=[].slice.call(arguments,0);return Kh("isBefore",c)}function wT(){var c=[].slice.call(arguments,0);return Kh("isAfter",c)}var AT=function(){return Date.now?Date.now():+new Date},Gr=["year","quarter","month","week","day","hour","minute","second","millisecond"];function ST(c){var m,h=!1,y,w=Gr.length;for(m in c)if(s(c,m)&&!(ht.call(Gr,m)!==-1&&(c[m]==null||!isNaN(c[m]))))return!1;for(y=0;y<w;++y)if(c[Gr[y]]){if(h)return!1;parseFloat(c[Gr[y]])!==ue(c[Gr[y]])&&(h=!0)}return!0}function CT(){return this._isValid}function DT(){return Ca(NaN)}function cs(c){var m=At(c),h=m.year||0,y=m.quarter||0,w=m.month||0,D=m.week||m.isoWeek||0,x=m.day||0,Q=m.hour||0,me=m.minute||0,Ie=m.second||0,Wt=m.millisecond||0;this._isValid=ST(m),this._milliseconds=+Wt+Ie*1e3+me*6e4+Q*1e3*60*60,this._days=+x+D*7,this._months=+w+y*3+h*12,this._data={},this._locale=mn(),this._bubble()}function ds(c){return c instanceof cs}function xd(c){return c<0?Math.round(-1*c)*-1:Math.round(c)}function TT(c,m,h){var y=Math.min(c.length,m.length),w=Math.abs(c.length-m.length),D=0,x;for(x=0;x<y;x++)ue(c[x])!==ue(m[x])&&D++;return D+w}function Zh(c,m){q(c,0,0,function(){var h=this.utcOffset(),y="+";return h<0&&(h=-h,y="-"),y+ae(~~(h/60),2)+m+ae(~~h%60,2)})}Zh("Z",":"),Zh("ZZ",""),V("Z",_t),V("ZZ",_t),Se(["Z","ZZ"],function(c,m,h){h._useUTC=!0,h._tzm=Id(_t,c)});var ET=/([\+\-]|\d\d)/gi;function Id(c,m){var h=(m||"").match(c),y,w,D;return h===null?null:(y=h[h.length-1]||[],w=(y+"").match(ET)||["-",0,0],D=+(w[1]*60)+ue(w[2]),D===0?0:w[0]==="+"?D:-D)}function Rd(c,m){var h,y;return m._isUTC?(h=m.clone(),y=(N(c)||u(c)?c.valueOf():Qe(c).valueOf())-h.valueOf(),h._d.setTime(h._d.valueOf()+y),t.updateOffset(h,!1),h):Qe(c).local()}function zd(c){return-Math.round(c._d.getTimezoneOffset())}t.updateOffset=function(){};function PT(c,m,h){var y=this._offset||0,w;if(!this.isValid())return c!=null?this:NaN;if(c!=null){if(typeof c=="string"){if(c=Id(_t,c),c===null)return this}else Math.abs(c)<16&&!h&&(c=c*60);return!this._isUTC&&m&&(w=zd(this)),this._offset=c,this._isUTC=!0,w!=null&&this.add(w,"m"),y!==c&&(!m||this._changeInProgress?ef(this,Ca(c-y,"m"),1,!1):this._changeInProgress||(this._changeInProgress=!0,t.updateOffset(this,!0),this._changeInProgress=null)),this}else return this._isUTC?y:zd(this)}function _T(c,m){return c!=null?(typeof c!="string"&&(c=-c),this.utcOffset(c,m),this):-this.utcOffset()}function xT(c){return this.utcOffset(0,c)}function IT(c){return this._isUTC&&(this.utcOffset(0,c),this._isUTC=!1,c&&this.subtract(zd(this),"m")),this}function RT(){if(this._tzm!=null)this.utcOffset(this._tzm,!1,!0);else if(typeof this._i=="string"){var c=Id(Oe,this._i);c!=null?this.utcOffset(c):this.utcOffset(0,!0)}return this}function zT(c){return this.isValid()?(c=c?Qe(c).utcOffset():0,(this.utcOffset()-c)%60===0):!1}function MT(){return this.utcOffset()>this.clone().month(0).utcOffset()||this.utcOffset()>this.clone().month(5).utcOffset()}function NT(){if(!d(this._isDSTShifted))return this._isDSTShifted;var c={},m;return I(c,this),c=Hh(c),c._a?(m=c._isUTC?v(c._a):Qe(c._a),this._isDSTShifted=this.isValid()&&TT(c._a,m.toArray())>0):this._isDSTShifted=!1,this._isDSTShifted}function FT(){return this.isValid()?!this._isUTC:!1}function LT(){return this.isValid()?this._isUTC:!1}function Jh(){return this.isValid()?this._isUTC&&this._offset===0:!1}var jT=/^(-|\+)?(?:(\d*)[. ])?(\d+):(\d+)(?::(\d+)(\.\d*)?)?$/,OT=/^(-|\+)?P(?:([-+]?[0-9,.]*)Y)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)W)?(?:([-+]?[0-9,.]*)D)?(?:T(?:([-+]?[0-9,.]*)H)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)S)?)?$/;function Ca(c,m){var h=c,y=null,w,D,x;return ds(c)?h={ms:c._milliseconds,d:c._days,M:c._months}:p(c)||!isNaN(+c)?(h={},m?h[m]=+c:h.milliseconds=+c):(y=jT.exec(c))?(w=y[1]==="-"?-1:1,h={y:0,d:ue(y[Fa])*w,h:ue(y[xt])*w,m:ue(y[Sa])*w,s:ue(y[un])*w,ms:ue(xd(y[fi]*1e3))*w}):(y=OT.exec(c))?(w=y[1]==="-"?-1:1,h={y:vi(y[2],w),M:vi(y[3],w),w:vi(y[4],w),d:vi(y[5],w),h:vi(y[6],w),m:vi(y[7],w),s:vi(y[8],w)}):h==null?h={}:typeof h=="object"&&("from"in h||"to"in h)&&(x=BT(Qe(h.from),Qe(h.to)),h={},h.ms=x.milliseconds,h.M=x.months),D=new cs(h),ds(c)&&s(c,"_locale")&&(D._locale=c._locale),ds(c)&&s(c,"_isValid")&&(D._isValid=c._isValid),D}Ca.fn=cs.prototype,Ca.invalid=DT;function vi(c,m){var h=c&&parseFloat(c.replace(",","."));return(isNaN(h)?0:h)*m}function Qh(c,m){var h={};return h.months=m.month()-c.month()+(m.year()-c.year())*12,c.clone().add(h.months,"M").isAfter(m)&&--h.months,h.milliseconds=+m-+c.clone().add(h.months,"M"),h}function BT(c,m){var h;return c.isValid()&&m.isValid()?(m=Rd(m,c),c.isBefore(m)?h=Qh(c,m):(h=Qh(m,c),h.milliseconds=-h.milliseconds,h.months=-h.months),h):{milliseconds:0,months:0}}function Xh(c,m){return function(h,y){var w,D;return y!==null&&!isNaN(+y)&&($(m,"moment()."+m+"(period, number) is deprecated. Please use moment()."+m+"(number, period). See http://momentjs.com/guides/#/warnings/add-inverted-param/ for more info."),D=h,h=y,y=D),w=Ca(h,y),ef(this,w,c),this}}function ef(c,m,h,y){var w=m._milliseconds,D=xd(m._days),x=xd(m._months);c.isValid()&&(y=y??!0,x&&Fh(c,Ur(c,"Month")+x*h),D&&zh(c,"Date",Ur(c,"Date")+D*h),w&&c._d.setTime(c._d.valueOf()+w*h),y&&t.updateOffset(c,D||x))}var UT=Xh(1,"add"),qT=Xh(-1,"subtract");function tf(c){return typeof c=="string"||c instanceof String}function VT(c){return N(c)||u(c)||tf(c)||p(c)||WT(c)||$T(c)||c===null||c===void 0}function $T(c){var m=o(c)&&!l(c),h=!1,y=["years","year","y","months","month","M","days","day","d","dates","date","D","hours","hour","h","minutes","minute","m","seconds","second","s","milliseconds","millisecond","ms"],w,D,x=y.length;for(w=0;w<x;w+=1)D=y[w],h=h||s(c,D);return m&&h}function WT(c){var m=r(c),h=!1;return m&&(h=c.filter(function(y){return!p(y)&&tf(c)}).length===0),m&&h}function GT(c){var m=o(c)&&!l(c),h=!1,y=["sameDay","nextDay","lastDay","nextWeek","lastWeek","sameElse"],w,D;for(w=0;w<y.length;w+=1)D=y[w],h=h||s(c,D);return m&&h}function HT(c,m){var h=c.diff(m,"days",!0);return h<-6?"sameElse":h<-1?"lastWeek":h<0?"lastDay":h<1?"sameDay":h<2?"nextDay":h<7?"nextWeek":"sameElse"}function YT(c,m){arguments.length===1&&(arguments[0]?VT(arguments[0])?(c=arguments[0],m=void 0):GT(arguments[0])&&(m=arguments[0],c=void 0):(c=void 0,m=void 0));var h=c||Qe(),y=Rd(h,this).startOf("day"),w=t.calendarFormat(this,y)||"sameElse",D=m&&(F(m[w])?m[w].call(this,h):m[w]);return this.format(D||this.localeData().calendar(w,this,Qe(h)))}function KT(){return new L(this)}function ZT(c,m){var h=N(c)?c:Qe(c);return this.isValid()&&h.isValid()?(m=pt(m)||"millisecond",m==="millisecond"?this.valueOf()>h.valueOf():h.valueOf()<this.clone().startOf(m).valueOf()):!1}function JT(c,m){var h=N(c)?c:Qe(c);return this.isValid()&&h.isValid()?(m=pt(m)||"millisecond",m==="millisecond"?this.valueOf()<h.valueOf():this.clone().endOf(m).valueOf()<h.valueOf()):!1}function QT(c,m,h,y){var w=N(c)?c:Qe(c),D=N(m)?m:Qe(m);return this.isValid()&&w.isValid()&&D.isValid()?(y=y||"()",(y[0]==="("?this.isAfter(w,h):!this.isBefore(w,h))&&(y[1]===")"?this.isBefore(D,h):!this.isAfter(D,h))):!1}function XT(c,m){var h=N(c)?c:Qe(c),y;return this.isValid()&&h.isValid()?(m=pt(m)||"millisecond",m==="millisecond"?this.valueOf()===h.valueOf():(y=h.valueOf(),this.clone().startOf(m).valueOf()<=y&&y<=this.clone().endOf(m).valueOf())):!1}function eE(c,m){return this.isSame(c,m)||this.isAfter(c,m)}function tE(c,m){return this.isSame(c,m)||this.isBefore(c,m)}function aE(c,m,h){var y,w,D;if(!this.isValid())return NaN;if(y=Rd(c,this),!y.isValid())return NaN;switch(w=(y.utcOffset()-this.utcOffset())*6e4,m=pt(m),m){case"year":D=us(this,y)/12;break;case"month":D=us(this,y);break;case"quarter":D=us(this,y)/3;break;case"second":D=(this-y)/1e3;break;case"minute":D=(this-y)/6e4;break;case"hour":D=(this-y)/36e5;break;case"day":D=(this-y-w)/864e5;break;case"week":D=(this-y-w)/6048e5;break;default:D=this-y}return h?D:Ve(D)}function us(c,m){if(c.date()<m.date())return-us(m,c);var h=(m.year()-c.year())*12+(m.month()-c.month()),y=c.clone().add(h,"months"),w,D;return m-y<0?(w=c.clone().add(h-1,"months"),D=(m-y)/(y-w)):(w=c.clone().add(h+1,"months"),D=(m-y)/(w-y)),-(h+D)||0}t.defaultFormat="YYYY-MM-DDTHH:mm:ssZ",t.defaultFormatUtc="YYYY-MM-DDTHH:mm:ss[Z]";function nE(){return this.clone().locale("en").format("ddd MMM DD YYYY HH:mm:ss [GMT]ZZ")}function iE(c){if(!this.isValid())return null;var m=c!==!0,h=m?this.clone().utc():this;return h.year()<0||h.year()>9999?Ee(h,m?"YYYYYY-MM-DD[T]HH:mm:ss.SSS[Z]":"YYYYYY-MM-DD[T]HH:mm:ss.SSSZ"):F(Date.prototype.toISOString)?m?this.toDate().toISOString():new Date(this.valueOf()+this.utcOffset()*60*1e3).toISOString().replace("Z",Ee(h,"Z")):Ee(h,m?"YYYY-MM-DD[T]HH:mm:ss.SSS[Z]":"YYYY-MM-DD[T]HH:mm:ss.SSSZ")}function rE(){if(!this.isValid())return"moment.invalid(/* "+this._i+" */)";var c="moment",m="",h,y,w,D;return this.isLocal()||(c=this.utcOffset()===0?"moment.utc":"moment.parseZone",m="Z"),h="["+c+'("]',y=0<=this.year()&&this.year()<=9999?"YYYY":"YYYYYY",w="-MM-DD[T]HH:mm:ss.SSS",D=m+'[")]',this.format(h+y+w+D)}function oE(c){c||(c=this.isUtc()?t.defaultFormatUtc:t.defaultFormat);var m=Ee(this,c);return this.localeData().postformat(m)}function sE(c,m){return this.isValid()&&(N(c)&&c.isValid()||Qe(c).isValid())?Ca({to:this,from:c}).locale(this.locale()).humanize(!m):this.localeData().invalidDate()}function lE(c){return this.from(Qe(),c)}function cE(c,m){return this.isValid()&&(N(c)&&c.isValid()||Qe(c).isValid())?Ca({from:this,to:c}).locale(this.locale()).humanize(!m):this.localeData().invalidDate()}function dE(c){return this.to(Qe(),c)}function af(c){var m;return c===void 0?this._locale._abbr:(m=mn(c),m!=null&&(this._locale=m),this)}var nf=R("moment().lang() is deprecated. Instead, use moment().localeData() to get the language configuration. Use moment().locale() to change languages.",function(c){return c===void 0?this.localeData():this.locale(c)});function rf(){return this._locale}var ps=1e3,Oi=60*ps,ms=60*Oi,of=(365*400+97)*24*ms;function Bi(c,m){return(c%m+m)%m}function sf(c,m,h){return c<100&&c>=0?new Date(c+400,m,h)-of:new Date(c,m,h).valueOf()}function lf(c,m,h){return c<100&&c>=0?Date.UTC(c+400,m,h)-of:Date.UTC(c,m,h)}function uE(c){var m,h;if(c=pt(c),c===void 0||c==="millisecond"||!this.isValid())return this;switch(h=this._isUTC?lf:sf,c){case"year":m=h(this.year(),0,1);break;case"quarter":m=h(this.year(),this.month()-this.month()%3,1);break;case"month":m=h(this.year(),this.month(),1);break;case"week":m=h(this.year(),this.month(),this.date()-this.weekday());break;case"isoWeek":m=h(this.year(),this.month(),this.date()-(this.isoWeekday()-1));break;case"day":case"date":m=h(this.year(),this.month(),this.date());break;case"hour":m=this._d.valueOf(),m-=Bi(m+(this._isUTC?0:this.utcOffset()*Oi),ms);break;case"minute":m=this._d.valueOf(),m-=Bi(m,Oi);break;case"second":m=this._d.valueOf(),m-=Bi(m,ps);break}return this._d.setTime(m),t.updateOffset(this,!0),this}function pE(c){var m,h;if(c=pt(c),c===void 0||c==="millisecond"||!this.isValid())return this;switch(h=this._isUTC?lf:sf,c){case"year":m=h(this.year()+1,0,1)-1;break;case"quarter":m=h(this.year(),this.month()-this.month()%3+3,1)-1;break;case"month":m=h(this.year(),this.month()+1,1)-1;break;case"week":m=h(this.year(),this.month(),this.date()-this.weekday()+7)-1;break;case"isoWeek":m=h(this.year(),this.month(),this.date()-(this.isoWeekday()-1)+7)-1;break;case"day":case"date":m=h(this.year(),this.month(),this.date()+1)-1;break;case"hour":m=this._d.valueOf(),m+=ms-Bi(m+(this._isUTC?0:this.utcOffset()*Oi),ms)-1;break;case"minute":m=this._d.valueOf(),m+=Oi-Bi(m,Oi)-1;break;case"second":m=this._d.valueOf(),m+=ps-Bi(m,ps)-1;break}return this._d.setTime(m),t.updateOffset(this,!0),this}function mE(){return this._d.valueOf()-(this._offset||0)*6e4}function gE(){return Math.floor(this.valueOf()/1e3)}function hE(){return new Date(this.valueOf())}function fE(){var c=this;return[c.year(),c.month(),c.date(),c.hour(),c.minute(),c.second(),c.millisecond()]}function vE(){var c=this;return{years:c.year(),months:c.month(),date:c.date(),hours:c.hours(),minutes:c.minutes(),seconds:c.seconds(),milliseconds:c.milliseconds()}}function bE(){return this.isValid()?this.toISOString():null}function yE(){return C(this)}function kE(){return b({},f(this))}function wE(){return f(this).overflow}function AE(){return{input:this._i,format:this._f,locale:this._locale,isUTC:this._isUTC,strict:this._strict}}q("N",0,0,"eraAbbr"),q("NN",0,0,"eraAbbr"),q("NNN",0,0,"eraAbbr"),q("NNNN",0,0,"eraName"),q("NNNNN",0,0,"eraNarrow"),q("y",["y",1],"yo","eraYear"),q("y",["yy",2],0,"eraYear"),q("y",["yyy",3],0,"eraYear"),q("y",["yyyy",4],0,"eraYear"),V("N",Md),V("NN",Md),V("NNN",Md),V("NNNN",zE),V("NNNNN",ME),Se(["N","NN","NNN","NNNN","NNNNN"],function(c,m,h,y){var w=h._locale.erasParse(c,y,h._strict);w?f(h).era=w:f(h).invalidEra=c}),V("y",Je),V("yy",Je),V("yyy",Je),V("yyyy",Je),V("yo",NE),Se(["y","yy","yyy","yyyy"],Lt),Se(["yo"],function(c,m,h,y){var w;h._locale._eraYearOrdinalRegex&&(w=c.match(h._locale._eraYearOrdinalRegex)),h._locale.eraYearOrdinalParse?m[Lt]=h._locale.eraYearOrdinalParse(c,w):m[Lt]=parseInt(c,10)});function SE(c,m){var h,y,w,D=this._eras||mn("en")._eras;for(h=0,y=D.length;h<y;++h){switch(typeof D[h].since){case"string":w=t(D[h].since).startOf("day"),D[h].since=w.valueOf();break}switch(typeof D[h].until){case"undefined":D[h].until=1/0;break;case"string":w=t(D[h].until).startOf("day").valueOf(),D[h].until=w.valueOf();break}}return D}function CE(c,m,h){var y,w,D=this.eras(),x,Q,me;for(c=c.toUpperCase(),y=0,w=D.length;y<w;++y)if(x=D[y].name.toUpperCase(),Q=D[y].abbr.toUpperCase(),me=D[y].narrow.toUpperCase(),h)switch(m){case"N":case"NN":case"NNN":if(Q===c)return D[y];break;case"NNNN":if(x===c)return D[y];break;case"NNNNN":if(me===c)return D[y];break}else if([x,Q,me].indexOf(c)>=0)return D[y]}function DE(c,m){var h=c.since<=c.until?1:-1;return m===void 0?t(c.since).year():t(c.since).year()+(m-c.offset)*h}function TE(){var c,m,h,y=this.localeData().eras();for(c=0,m=y.length;c<m;++c)if(h=this.clone().startOf("day").valueOf(),y[c].since<=h&&h<=y[c].until||y[c].until<=h&&h<=y[c].since)return y[c].name;return""}function EE(){var c,m,h,y=this.localeData().eras();for(c=0,m=y.length;c<m;++c)if(h=this.clone().startOf("day").valueOf(),y[c].since<=h&&h<=y[c].until||y[c].until<=h&&h<=y[c].since)return y[c].narrow;return""}function PE(){var c,m,h,y=this.localeData().eras();for(c=0,m=y.length;c<m;++c)if(h=this.clone().startOf("day").valueOf(),y[c].since<=h&&h<=y[c].until||y[c].until<=h&&h<=y[c].since)return y[c].abbr;return""}function _E(){var c,m,h,y,w=this.localeData().eras();for(c=0,m=w.length;c<m;++c)if(h=w[c].since<=w[c].until?1:-1,y=this.clone().startOf("day").valueOf(),w[c].since<=y&&y<=w[c].until||w[c].until<=y&&y<=w[c].since)return(this.year()-t(w[c].since).year())*h+w[c].offset;return this.year()}function xE(c){return s(this,"_erasNameRegex")||Nd.call(this),c?this._erasNameRegex:this._erasRegex}function IE(c){return s(this,"_erasAbbrRegex")||Nd.call(this),c?this._erasAbbrRegex:this._erasRegex}function RE(c){return s(this,"_erasNarrowRegex")||Nd.call(this),c?this._erasNarrowRegex:this._erasRegex}function Md(c,m){return m.erasAbbrRegex(c)}function zE(c,m){return m.erasNameRegex(c)}function ME(c,m){return m.erasNarrowRegex(c)}function NE(c,m){return m._eraYearOrdinalRegex||Je}function Nd(){var c=[],m=[],h=[],y=[],w,D,x,Q,me,Ie=this.eras();for(w=0,D=Ie.length;w<D;++w)x=Jt(Ie[w].name),Q=Jt(Ie[w].abbr),me=Jt(Ie[w].narrow),m.push(x),c.push(Q),h.push(me),y.push(x),y.push(Q),y.push(me);this._erasRegex=new RegExp("^("+y.join("|")+")","i"),this._erasNameRegex=new RegExp("^("+m.join("|")+")","i"),this._erasAbbrRegex=new RegExp("^("+c.join("|")+")","i"),this._erasNarrowRegex=new RegExp("^("+h.join("|")+")","i")}q(0,["gg",2],0,function(){return this.weekYear()%100}),q(0,["GG",2],0,function(){return this.isoWeekYear()%100});function gs(c,m){q(0,[c,c.length],0,m)}gs("gggg","weekYear"),gs("ggggg","weekYear"),gs("GGGG","isoWeekYear"),gs("GGGGG","isoWeekYear"),V("G",ne),V("g",ne),V("GG",Pe,He),V("gg",Pe,He),V("GGGG",ln,on),V("gggg",ln,on),V("GGGGG",De,wa),V("ggggg",De,wa),Ft(["gggg","ggggg","GGGG","GGGGG"],function(c,m,h,y){m[y.substr(0,2)]=ue(c)}),Ft(["gg","GG"],function(c,m,h,y){m[y]=t.parseTwoDigitYear(c)});function FE(c){return cf.call(this,c,this.week(),this.weekday()+this.localeData()._week.dow,this.localeData()._week.dow,this.localeData()._week.doy)}function LE(c){return cf.call(this,c,this.isoWeek(),this.isoWeekday(),1,4)}function jE(){return pn(this.year(),1,4)}function OE(){return pn(this.isoWeekYear(),1,4)}function BE(){var c=this.localeData()._week;return pn(this.year(),c.dow,c.doy)}function UE(){var c=this.localeData()._week;return pn(this.weekYear(),c.dow,c.doy)}function cf(c,m,h,y,w){var D;return c==null?Vr(this,y,w).year:(D=pn(c,y,w),m>D&&(m=D),qE.call(this,c,m,h,y,w))}function qE(c,m,h,y,w){var D=Oh(c,m,h,y,w),x=qr(D.year,0,D.dayOfYear);return this.year(x.getUTCFullYear()),this.month(x.getUTCMonth()),this.date(x.getUTCDate()),this}q("Q",0,"Qo","quarter"),V("Q",sa),Se("Q",function(c,m){m[dn]=(ue(c)-1)*3});function VE(c){return c==null?Math.ceil((this.month()+1)/3):this.month((c-1)*3+this.month()%3)}q("D",["DD",2],"Do","date"),V("D",Pe,Aa),V("DD",Pe,He),V("Do",function(c,m){return c?m._dayOfMonthOrdinalParse||m._ordinalParse:m._dayOfMonthOrdinalParseLenient}),Se(["D","DD"],Fa),Se("Do",function(c,m){m[Fa]=ue(c.match(Pe)[0])});var df=Li("Date",!0);q("DDD",["DDDD",3],"DDDo","dayOfYear"),V("DDD",sn),V("DDDD",Ni),Se(["DDD","DDDD"],function(c,m,h){h._dayOfYear=ue(c)});function $E(c){var m=Math.round((this.clone().startOf("day")-this.clone().startOf("year"))/864e5)+1;return c==null?m:this.add(c-m,"d")}q("m",["mm",2],0,"minute"),V("m",Pe,Fi),V("mm",Pe,He),Se(["m","mm"],Sa);var WE=Li("Minutes",!1);q("s",["ss",2],0,"second"),V("s",Pe,Fi),V("ss",Pe,He),Se(["s","ss"],un);var GE=Li("Seconds",!1);q("S",0,0,function(){return~~(this.millisecond()/100)}),q(0,["SS",2],0,function(){return~~(this.millisecond()/10)}),q(0,["SSS",3],0,"millisecond"),q(0,["SSSS",4],0,function(){return this.millisecond()*10}),q(0,["SSSSS",5],0,function(){return this.millisecond()*100}),q(0,["SSSSSS",6],0,function(){return this.millisecond()*1e3}),q(0,["SSSSSSS",7],0,function(){return this.millisecond()*1e4}),q(0,["SSSSSSSS",8],0,function(){return this.millisecond()*1e5}),q(0,["SSSSSSSSS",9],0,function(){return this.millisecond()*1e6}),V("S",sn,sa),V("SS",sn,He),V("SSS",sn,Ni);var Un,uf;for(Un="SSSS";Un.length<=9;Un+="S")V(Un,Je);function HE(c,m){m[fi]=ue(("0."+c)*1e3)}for(Un="S";Un.length<=9;Un+="S")Se(Un,HE);uf=Li("Milliseconds",!1),q("z",0,0,"zoneAbbr"),q("zz",0,0,"zoneName");function YE(){return this._isUTC?"UTC":""}function KE(){return this._isUTC?"Coordinated Universal Time":""}var O=L.prototype;O.add=UT,O.calendar=YT,O.clone=KT,O.diff=aE,O.endOf=pE,O.format=oE,O.from=sE,O.fromNow=lE,O.to=cE,O.toNow=dE,O.get=rD,O.invalidAt=wE,O.isAfter=ZT,O.isBefore=JT,O.isBetween=QT,O.isSame=XT,O.isSameOrAfter=eE,O.isSameOrBefore=tE,O.isValid=yE,O.lang=nf,O.locale=af,O.localeData=rf,O.max=yT,O.min=bT,O.parsingFlags=kE,O.set=oD,O.startOf=uE,O.subtract=qT,O.toArray=fE,O.toObject=vE,O.toDate=hE,O.toISOString=iE,O.inspect=rE,typeof Symbol<"u"&&Symbol.for!=null&&(O[Symbol.for("nodejs.util.inspect.custom")]=function(){return"Moment<"+this.format()+">"}),O.toJSON=bE,O.toString=nE,O.unix=gE,O.valueOf=mE,O.creationData=AE,O.eraName=TE,O.eraNarrow=EE,O.eraAbbr=PE,O.eraYear=_E,O.year=Rh,O.isLeapYear=iD,O.weekYear=FE,O.isoWeekYear=LE,O.quarter=O.quarters=VE,O.month=Lh,O.daysInMonth=hD,O.week=O.weeks=SD,O.isoWeek=O.isoWeeks=CD,O.weeksInYear=BE,O.weeksInWeekYear=UE,O.isoWeeksInYear=jE,O.isoWeeksInISOWeekYear=OE,O.date=df,O.day=O.days=LD,O.weekday=jD,O.isoWeekday=OD,O.dayOfYear=$E,O.hour=O.hours=GD,O.minute=O.minutes=WE,O.second=O.seconds=GE,O.millisecond=O.milliseconds=uf,O.utcOffset=PT,O.utc=xT,O.local=IT,O.parseZone=RT,O.hasAlignedHourOffset=zT,O.isDST=MT,O.isLocal=FT,O.isUtcOffset=LT,O.isUtc=Jh,O.isUTC=Jh,O.zoneAbbr=YE,O.zoneName=KE,O.dates=R("dates accessor is deprecated. Use date instead.",df),O.months=R("months accessor is deprecated. Use month instead",Lh),O.years=R("years accessor is deprecated. Use year instead",Rh),O.zone=R("moment().zone is deprecated, use moment().utcOffset instead. http://momentjs.com/guides/#/warnings/zone/",_T),O.isDSTShifted=R("isDSTShifted is deprecated. See http://momentjs.com/guides/#/warnings/dst-shifted/ for more information",NT);function ZE(c){return Qe(c*1e3)}function JE(){return Qe.apply(null,arguments).parseZone()}function pf(c){return c}var Be=X.prototype;Be.calendar=oe,Be.longDateFormat=ra,Be.invalidDate=jn,Be.ordinal=ba,Be.preparse=pf,Be.postformat=pf,Be.relativeTime=ya,Be.pastFuture=Pt,Be.set=j,Be.eras=SE,Be.erasParse=CE,Be.erasConvertYear=DE,Be.erasAbbrRegex=IE,Be.erasNameRegex=xE,Be.erasNarrowRegex=RE,Be.months=uD,Be.monthsShort=pD,Be.monthsParse=gD,Be.monthsRegex=vD,Be.monthsShortRegex=fD,Be.week=yD,Be.firstDayOfYear=AD,Be.firstDayOfWeek=wD,Be.weekdays=RD,Be.weekdaysMin=MD,Be.weekdaysShort=zD,Be.weekdaysParse=FD,Be.weekdaysRegex=BD,Be.weekdaysShortRegex=UD,Be.weekdaysMinRegex=qD,Be.isPM=$D,Be.meridiem=HD;function hs(c,m,h,y){var w=mn(),D=v().set(y,m);return w[h](D,c)}function mf(c,m,h){if(p(c)&&(m=c,c=void 0),c=c||"",m!=null)return hs(c,m,h,"month");var y,w=[];for(y=0;y<12;y++)w[y]=hs(c,y,h,"month");return w}function Fd(c,m,h,y){typeof c=="boolean"?(p(m)&&(h=m,m=void 0),m=m||""):(m=c,h=m,c=!1,p(m)&&(h=m,m=void 0),m=m||"");var w=mn(),D=c?w._week.dow:0,x,Q=[];if(h!=null)return hs(m,(h+D)%7,y,"day");for(x=0;x<7;x++)Q[x]=hs(m,(x+D)%7,y,"day");return Q}function QE(c,m){return mf(c,m,"months")}function XE(c,m){return mf(c,m,"monthsShort")}function eP(c,m,h){return Fd(c,m,h,"weekdays")}function tP(c,m,h){return Fd(c,m,h,"weekdaysShort")}function aP(c,m,h){return Fd(c,m,h,"weekdaysMin")}Bn("en",{eras:[{since:"0001-01-01",until:1/0,offset:1,name:"Anno Domini",narrow:"AD",abbr:"AD"},{since:"0000-12-31",until:-1/0,offset:1,name:"Before Christ",narrow:"BC",abbr:"BC"}],dayOfMonthOrdinalParse:/\d{1,2}(th|st|nd|rd)/,ordinal:function(c){var m=c%10,h=ue(c%100/10)===1?"th":m===1?"st":m===2?"nd":m===3?"rd":"th";return c+h}}),t.lang=R("moment.lang is deprecated. Use moment.locale instead.",Bn),t.langData=R("moment.langData is deprecated. Use moment.localeData instead.",mn);var gn=Math.abs;function nP(){var c=this._data;return this._milliseconds=gn(this._milliseconds),this._days=gn(this._days),this._months=gn(this._months),c.milliseconds=gn(c.milliseconds),c.seconds=gn(c.seconds),c.minutes=gn(c.minutes),c.hours=gn(c.hours),c.months=gn(c.months),c.years=gn(c.years),this}function gf(c,m,h,y){var w=Ca(m,h);return c._milliseconds+=y*w._milliseconds,c._days+=y*w._days,c._months+=y*w._months,c._bubble()}function iP(c,m){return gf(this,c,m,1)}function rP(c,m){return gf(this,c,m,-1)}function hf(c){return c<0?Math.floor(c):Math.ceil(c)}function oP(){var c=this._milliseconds,m=this._days,h=this._months,y=this._data,w,D,x,Q,me;return c>=0&&m>=0&&h>=0||c<=0&&m<=0&&h<=0||(c+=hf(Ld(h)+m)*864e5,m=0,h=0),y.milliseconds=c%1e3,w=Ve(c/1e3),y.seconds=w%60,D=Ve(w/60),y.minutes=D%60,x=Ve(D/60),y.hours=x%24,m+=Ve(x/24),me=Ve(ff(m)),h+=me,m-=hf(Ld(me)),Q=Ve(h/12),h%=12,y.days=m,y.months=h,y.years=Q,this}function ff(c){return c*4800/146097}function Ld(c){return c*146097/4800}function sP(c){if(!this.isValid())return NaN;var m,h,y=this._milliseconds;if(c=pt(c),c==="month"||c==="quarter"||c==="year")switch(m=this._days+y/864e5,h=this._months+ff(m),c){case"month":return h;case"quarter":return h/3;case"year":return h/12}else switch(m=this._days+Math.round(Ld(this._months)),c){case"week":return m/7+y/6048e5;case"day":return m+y/864e5;case"hour":return m*24+y/36e5;case"minute":return m*1440+y/6e4;case"second":return m*86400+y/1e3;case"millisecond":return Math.floor(m*864e5)+y;default:throw new Error("Unknown unit "+c)}}function hn(c){return function(){return this.as(c)}}var vf=hn("ms"),lP=hn("s"),cP=hn("m"),dP=hn("h"),uP=hn("d"),pP=hn("w"),mP=hn("M"),gP=hn("Q"),hP=hn("y"),fP=vf;function vP(){return Ca(this)}function bP(c){return c=pt(c),this.isValid()?this[c+"s"]():NaN}function bi(c){return function(){return this.isValid()?this._data[c]:NaN}}var yP=bi("milliseconds"),kP=bi("seconds"),wP=bi("minutes"),AP=bi("hours"),SP=bi("days"),CP=bi("months"),DP=bi("years");function TP(){return Ve(this.days()/7)}var fn=Math.round,Ui={ss:44,s:45,m:45,h:22,d:26,w:null,M:11};function EP(c,m,h,y,w){return w.relativeTime(m||1,!!h,c,y)}function PP(c,m,h,y){var w=Ca(c).abs(),D=fn(w.as("s")),x=fn(w.as("m")),Q=fn(w.as("h")),me=fn(w.as("d")),Ie=fn(w.as("M")),Wt=fn(w.as("w")),vn=fn(w.as("y")),qn=D<=h.ss&&["s",D]||D<h.s&&["ss",D]||x<=1&&["m"]||x<h.m&&["mm",x]||Q<=1&&["h"]||Q<h.h&&["hh",Q]||me<=1&&["d"]||me<h.d&&["dd",me];return h.w!=null&&(qn=qn||Wt<=1&&["w"]||Wt<h.w&&["ww",Wt]),qn=qn||Ie<=1&&["M"]||Ie<h.M&&["MM",Ie]||vn<=1&&["y"]||["yy",vn],qn[2]=m,qn[3]=+c>0,qn[4]=y,EP.apply(null,qn)}function _P(c){return c===void 0?fn:typeof c=="function"?(fn=c,!0):!1}function xP(c,m){return Ui[c]===void 0?!1:m===void 0?Ui[c]:(Ui[c]=m,c==="s"&&(Ui.ss=m-1),!0)}function IP(c,m){if(!this.isValid())return this.localeData().invalidDate();var h=!1,y=Ui,w,D;return typeof c=="object"&&(m=c,c=!1),typeof c=="boolean"&&(h=c),typeof m=="object"&&(y=Object.assign({},Ui,m),m.s!=null&&m.ss==null&&(y.ss=m.s-1)),w=this.localeData(),D=PP(this,!h,y,w),h&&(D=w.pastFuture(+this,D)),w.postformat(D)}var jd=Math.abs;function qi(c){return(c>0)-(c<0)||+c}function fs(){if(!this.isValid())return this.localeData().invalidDate();var c=jd(this._milliseconds)/1e3,m=jd(this._days),h=jd(this._months),y,w,D,x,Q=this.asSeconds(),me,Ie,Wt,vn;return Q?(y=Ve(c/60),w=Ve(y/60),c%=60,y%=60,D=Ve(h/12),h%=12,x=c?c.toFixed(3).replace(/\.?0+$/,""):"",me=Q<0?"-":"",Ie=qi(this._months)!==qi(Q)?"-":"",Wt=qi(this._days)!==qi(Q)?"-":"",vn=qi(this._milliseconds)!==qi(Q)?"-":"",me+"P"+(D?Ie+D+"Y":"")+(h?Ie+h+"M":"")+(m?Wt+m+"D":"")+(w||y||c?"T":"")+(w?vn+w+"H":"")+(y?vn+y+"M":"")+(c?vn+x+"S":"")):"P0D"}var Fe=cs.prototype;Fe.isValid=CT,Fe.abs=nP,Fe.add=iP,Fe.subtract=rP,Fe.as=sP,Fe.asMilliseconds=vf,Fe.asSeconds=lP,Fe.asMinutes=cP,Fe.asHours=dP,Fe.asDays=uP,Fe.asWeeks=pP,Fe.asMonths=mP,Fe.asQuarters=gP,Fe.asYears=hP,Fe.valueOf=fP,Fe._bubble=oP,Fe.clone=vP,Fe.get=bP,Fe.milliseconds=yP,Fe.seconds=kP,Fe.minutes=wP,Fe.hours=AP,Fe.days=SP,Fe.weeks=TP,Fe.months=CP,Fe.years=DP,Fe.humanize=IP,Fe.toISOString=fs,Fe.toString=fs,Fe.toJSON=fs,Fe.locale=af,Fe.localeData=rf,Fe.toIsoString=R("toIsoString() is deprecated. Please use toISOString() instead (notice the capitals)",fs),Fe.lang=nf,q("X",0,0,"unix"),q("x",0,0,"valueOf"),V("x",ne),V("X",hi),Se("X",function(c,m,h){h._d=new Date(parseFloat(c)*1e3)}),Se("x",function(c,m,h){h._d=new Date(ue(c))});//! moment.js
return t.version="2.30.1",i(Qe),t.fn=O,t.min=kT,t.max=wT,t.now=AT,t.utc=v,t.unix=ZE,t.months=QE,t.isDate=u,t.locale=Bn,t.invalid=T,t.duration=Ca,t.isMoment=N,t.weekdays=eP,t.parseZone=JE,t.localeData=mn,t.isDuration=ds,t.monthsShort=XE,t.weekdaysMin=aP,t.defineLocale=Dd,t.updateLocale=JD,t.locales=QD,t.weekdaysShort=tP,t.normalizeUnits=pt,t.relativeTimeRounding=_P,t.relativeTimeThreshold=xP,t.calendarFormat=HT,t.prototype=O,t.HTML5_FMT={DATETIME_LOCAL:"YYYY-MM-DDTHH:mm",DATETIME_LOCAL_SECONDS:"YYYY-MM-DDTHH:mm:ss",DATETIME_LOCAL_MS:"YYYY-MM-DDTHH:mm:ss.SSS",DATE:"YYYY-MM-DD",TIME:"HH:mm",TIME_SECONDS:"HH:mm:ss",TIME_MS:"HH:mm:ss.SSS",WEEK:"GGGG-[W]WW",MONTH:"YYYY-MM"},t}))})(ul)),ul.exports}var yee=Hu.exports,Uf;function kee(){return Uf||(Uf=1,(function(e,a){(function(n,t){t(typeof Mr=="function"?Jo():n.moment)})(yee,(function(n){//! moment.js locale configuration
var t=n.defineLocale("ja",{eras:[{since:"2019-05-01",offset:1,name:"令和",narrow:"ã‹¿",abbr:"R"},{since:"1989-01-08",until:"2019-04-30",offset:1,name:"å¹³æˆ",narrow:"ã»",abbr:"H"},{since:"1926-12-25",until:"1989-01-07",offset:1,name:"æ˜å’Œ",narrow:"ã¼",abbr:"S"},{since:"1912-07-30",until:"1926-12-24",offset:1,name:"大æ£",narrow:"ã½",abbr:"T"},{since:"1873-01-01",until:"1912-07-29",offset:6,name:"明治",narrow:"ã¾",abbr:"M"},{since:"0001-01-01",until:"1873-12-31",offset:1,name:"西暦",narrow:"AD",abbr:"AD"},{since:"0000-12-31",until:-1/0,offset:1,name:"紀元å‰",narrow:"BC",abbr:"BC"}],eraYearOrdinalRegex:/(å…ƒ|\d+)å¹´/,eraYearOrdinalParse:function(i,r){return r[1]==="å…ƒ"?1:parseInt(r[1]||i,10)},months:"1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月".split("_"),monthsShort:"1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月".split("_"),weekdays:"日曜日_月曜日_ç«æ›œæ—¥_水曜日_木曜日_金曜日_土曜日".split("_"),weekdaysShort:"æ—¥_月_ç«_æ°´_木_金_土".split("_"),weekdaysMin:"æ—¥_月_ç«_æ°´_木_金_土".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY/MM/DD",LL:"YYYYå¹´M月Dæ—¥",LLL:"YYYYå¹´M月Dæ—¥ HH:mm",LLLL:"YYYYå¹´M月Dæ—¥ dddd HH:mm",l:"YYYY/MM/DD",ll:"YYYYå¹´M月Dæ—¥",lll:"YYYYå¹´M月Dæ—¥ HH:mm",llll:"YYYYå¹´M月Dæ—¥(ddd) HH:mm"},meridiemParse:/åˆå‰|åˆå¾Œ/i,isPM:function(i){return i==="åˆå¾Œ"},meridiem:function(i,r,o){return i<12?"åˆå‰":"åˆå¾Œ"},calendar:{sameDay:"[今日] LT",nextDay:"[明日] LT",nextWeek:function(i){return i.week()!==this.week()?"[æ¥é€±]dddd LT":"dddd LT"},lastDay:"[昨日] LT",lastWeek:function(i){return this.week()!==i.week()?"[先週]dddd LT":"dddd LT"},sameElse:"L"},dayOfMonthOrdinalParse:/\d{1,2}æ—¥/,ordinal:function(i,r){switch(r){case"y":return i===1?"元年":i+"å¹´";case"d":case"D":case"DDD":return i+"æ—¥";default:return i}},relativeTime:{future:"%s後",past:"%så‰",s:"æ•°ç§’",ss:"%dç§’",m:"1分",mm:"%d分",h:"1時間",hh:"%d時間",d:"1æ—¥",dd:"%dæ—¥",M:"1ヶ月",MM:"%dヶ月",y:"1å¹´",yy:"%då¹´"}});return t}))})()),Hu.exports}kee();var Yu={exports:{}},wee=Yu.exports,qf;function Aee(){return qf||(qf=1,(function(e,a){(function(n,t){t(typeof Mr=="function"?Jo():n.moment)})(wee,(function(n){//! moment.js locale configuration
function t(r,o,s,l){var d={m:["eine Minute","einer Minute"],h:["eine Stunde","einer Stunde"],d:["ein Tag","einem Tag"],dd:[r+" Tage",r+" Tagen"],w:["eine Woche","einer Woche"],M:["ein Monat","einem Monat"],MM:[r+" Monate",r+" Monaten"],y:["ein Jahr","einem Jahr"],yy:[r+" Jahre",r+" Jahren"]};return o?d[s][0]:d[s][1]}var i=n.defineLocale("de",{months:"Januar_Februar_März_April_Mai_Juni_Juli_August_September_Oktober_November_Dezember".split("_"),monthsShort:"Jan._Feb._März_Apr._Mai_Juni_Juli_Aug._Sep._Okt._Nov._Dez.".split("_"),monthsParseExact:!0,weekdays:"Sonntag_Montag_Dienstag_Mittwoch_Donnerstag_Freitag_Samstag".split("_"),weekdaysShort:"So._Mo._Di._Mi._Do._Fr._Sa.".split("_"),weekdaysMin:"So_Mo_Di_Mi_Do_Fr_Sa".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY HH:mm",LLLL:"dddd, D. MMMM YYYY HH:mm"},calendar:{sameDay:"[heute um] LT [Uhr]",sameElse:"L",nextDay:"[morgen um] LT [Uhr]",nextWeek:"dddd [um] LT [Uhr]",lastDay:"[gestern um] LT [Uhr]",lastWeek:"[letzten] dddd [um] LT [Uhr]"},relativeTime:{future:"in %s",past:"vor %s",s:"ein paar Sekunden",ss:"%d Sekunden",m:t,mm:"%d Minuten",h:t,hh:"%d Stunden",d:t,dd:t,w:t,ww:"%d Wochen",M:t,MM:t,y:t,yy:t},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}});return i}))})()),Yu.exports}Aee();var Ku={exports:{}},See=Ku.exports,Vf;function Cee(){return Vf||(Vf=1,(function(e,a){(function(n,t){t(typeof Mr=="function"?Jo():n.moment)})(See,(function(n){//! moment.js locale configuration
var t="ene._feb._mar._abr._may._jun._jul._ago._sep._oct._nov._dic.".split("_"),i="ene_feb_mar_abr_may_jun_jul_ago_sep_oct_nov_dic".split("_"),r=[/^ene/i,/^feb/i,/^mar/i,/^abr/i,/^may/i,/^jun/i,/^jul/i,/^ago/i,/^sep/i,/^oct/i,/^nov/i,/^dic/i],o=/^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre|ene\.?|feb\.?|mar\.?|abr\.?|may\.?|jun\.?|jul\.?|ago\.?|sep\.?|oct\.?|nov\.?|dic\.?)/i,s=n.defineLocale("es",{months:"enero_febrero_marzo_abril_mayo_junio_julio_agosto_septiembre_octubre_noviembre_diciembre".split("_"),monthsShort:function(l,d){return l?/-MMM-/.test(d)?i[l.month()]:t[l.month()]:t},monthsRegex:o,monthsShortRegex:o,monthsStrictRegex:/^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre)/i,monthsShortStrictRegex:/^(ene\.?|feb\.?|mar\.?|abr\.?|may\.?|jun\.?|jul\.?|ago\.?|sep\.?|oct\.?|nov\.?|dic\.?)/i,monthsParse:r,longMonthsParse:r,shortMonthsParse:r,weekdays:"domingo_lunes_martes_miércoles_jueves_viernes_sábado".split("_"),weekdaysShort:"dom._lun._mar._mié._jue._vie._sáb.".split("_"),weekdaysMin:"do_lu_ma_mi_ju_vi_sá".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD/MM/YYYY",LL:"D [de] MMMM [de] YYYY",LLL:"D [de] MMMM [de] YYYY H:mm",LLLL:"dddd, D [de] MMMM [de] YYYY H:mm"},calendar:{sameDay:function(){return"[hoy a la"+(this.hours()!==1?"s":"")+"] LT"},nextDay:function(){return"[mañana a la"+(this.hours()!==1?"s":"")+"] LT"},nextWeek:function(){return"dddd [a la"+(this.hours()!==1?"s":"")+"] LT"},lastDay:function(){return"[ayer a la"+(this.hours()!==1?"s":"")+"] LT"},lastWeek:function(){return"[el] dddd [pasado a la"+(this.hours()!==1?"s":"")+"] LT"},sameElse:"L"},relativeTime:{future:"en %s",past:"hace %s",s:"unos segundos",ss:"%d segundos",m:"un minuto",mm:"%d minutos",h:"una hora",hh:"%d horas",d:"un dÃa",dd:"%d dÃas",w:"una semana",ww:"%d semanas",M:"un mes",MM:"%d meses",y:"un año",yy:"%d años"},dayOfMonthOrdinalParse:/\d{1,2}º/,ordinal:"%dº",week:{dow:1,doy:4},invalidDate:"Fecha inválida"});return s}))})()),Ku.exports}var uk=Cee();const Dee=Go(uk),Yge=_c({__proto__:null,default:Dee},[uk]);var Zu={exports:{}},Tee=Zu.exports,$f;function Eee(){return $f||($f=1,(function(e,a){(function(n,t){t(typeof Mr=="function"?Jo():n.moment)})(Tee,(function(n){//! moment.js locale configuration
var t=/^(janvier|février|mars|avril|mai|juin|juillet|août|septembre|octobre|novembre|décembre)/i,i=/(janv\.?|févr\.?|mars|avr\.?|mai|juin|juil\.?|août|sept\.?|oct\.?|nov\.?|déc\.?)/i,r=/(janv\.?|févr\.?|mars|avr\.?|mai|juin|juil\.?|août|sept\.?|oct\.?|nov\.?|déc\.?|janvier|février|mars|avril|mai|juin|juillet|août|septembre|octobre|novembre|décembre)/i,o=[/^janv/i,/^févr/i,/^mars/i,/^avr/i,/^mai/i,/^juin/i,/^juil/i,/^août/i,/^sept/i,/^oct/i,/^nov/i,/^déc/i],s=n.defineLocale("fr",{months:"janvier_février_mars_avril_mai_juin_juillet_août_septembre_octobre_novembre_décembre".split("_"),monthsShort:"janv._févr._mars_avr._mai_juin_juil._août_sept._oct._nov._déc.".split("_"),monthsRegex:r,monthsShortRegex:r,monthsStrictRegex:t,monthsShortStrictRegex:i,monthsParse:o,longMonthsParse:o,shortMonthsParse:o,weekdays:"dimanche_lundi_mardi_mercredi_jeudi_vendredi_samedi".split("_"),weekdaysShort:"dim._lun._mar._mer._jeu._ven._sam.".split("_"),weekdaysMin:"di_lu_ma_me_je_ve_sa".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[Aujourd’hui à ] LT",nextDay:"[Demain à ] LT",nextWeek:"dddd [à ] LT",lastDay:"[Hier à ] LT",lastWeek:"dddd [dernier à ] LT",sameElse:"L"},relativeTime:{future:"dans %s",past:"il y a %s",s:"quelques secondes",ss:"%d secondes",m:"une minute",mm:"%d minutes",h:"une heure",hh:"%d heures",d:"un jour",dd:"%d jours",w:"une semaine",ww:"%d semaines",M:"un mois",MM:"%d mois",y:"un an",yy:"%d ans"},dayOfMonthOrdinalParse:/\d{1,2}(er|)/,ordinal:function(l,d){switch(d){case"D":return l+(l===1?"er":"");default:case"M":case"Q":case"DDD":case"d":return l+(l===1?"er":"e");case"w":case"W":return l+(l===1?"re":"e")}},week:{dow:1,doy:4}});return s}))})()),Zu.exports}var pk=Eee();const Pee=Go(pk),Kge=_c({__proto__:null,default:Pee},[pk]);var Ju={exports:{}},_ee=Ju.exports,Wf;function xee(){return Wf||(Wf=1,(function(e,a){(function(n,t){t(typeof Mr=="function"?Jo():n.moment)})(_ee,(function(n){//! moment.js locale configuration
var t=n.defineLocale("pt",{months:"janeiro_fevereiro_março_abril_maio_junho_julho_agosto_setembro_outubro_novembro_dezembro".split("_"),monthsShort:"jan_fev_mar_abr_mai_jun_jul_ago_set_out_nov_dez".split("_"),weekdays:"Domingo_Segunda-feira_Terça-feira_Quarta-feira_Quinta-feira_Sexta-feira_Sábado".split("_"),weekdaysShort:"Dom_Seg_Ter_Qua_Qui_Sex_Sáb".split("_"),weekdaysMin:"Do_2ª_3ª_4ª_5ª_6ª_Sá".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D [de] MMMM [de] YYYY",LLL:"D [de] MMMM [de] YYYY HH:mm",LLLL:"dddd, D [de] MMMM [de] YYYY HH:mm"},calendar:{sameDay:"[Hoje à s] LT",nextDay:"[Amanhã à s] LT",nextWeek:"dddd [à s] LT",lastDay:"[Ontem à s] LT",lastWeek:function(){return this.day()===0||this.day()===6?"[Último] dddd [à s] LT":"[Última] dddd [à s] LT"},sameElse:"L"},relativeTime:{future:"em %s",past:"há %s",s:"segundos",ss:"%d segundos",m:"um minuto",mm:"%d minutos",h:"uma hora",hh:"%d horas",d:"um dia",dd:"%d dias",w:"uma semana",ww:"%d semanas",M:"um mês",MM:"%d meses",y:"um ano",yy:"%d anos"},dayOfMonthOrdinalParse:/\d{1,2}º/,ordinal:"%dº",week:{dow:1,doy:4}});return t}))})()),Ju.exports}xee();function pa(e){if(window.__APP_CONFIG__===void 0)return"";const a=window.__APP_CONFIG__[e];return a===void 0?"":a}function Gf(){return pa("APP_FLAVOR")==="backoffice"}function Zge(){return pa("BACKOFFICE_URL")||"https://backoffice.base44.com"}function Iee(e){const a=typeof window<"u"?window.location.hostname:"";return a==="localhost"||a==="127.0.0.1"?"development":a.endsWith(".velino.org")||a==="velino.org"?"staging":"production"}const mk={SUPERAGENT:"/superagent",CREATE_SUPERAGENT:"/create-superagent",CLONE_SUPERAGENT:"/clone-superagent"};function Ree(){const e=Zm();return new URL(e).host}function zee(){return pa("APPS_BASE_DOMAIN")||"base44.app"}function Zm(){return pa("PLATFORM_URL")||"app.base44.com"}function Mee(e){const a=Ree();return e===a}function Jge(e,a){const n=a==="user_agent"?mk.SUPERAGENT.slice(1):"apps";return`${Zm()}/${n}/${e}`}function Qge(e,a){return a==="user_agent"?`${mk.SUPERAGENT}/${e}`:`/apps/${e}/editor/preview`}function Xge(e){return qc(e.slug)}function ehe(e,a){return qc(`checkpoint--${e.id}--${a.id}`)}function the(e){return qc(`preview--${e.slug}`)}function ahe(e){const a=qc(`share--${e.slug}`);return e.main_page?`${a}/${e.main_page}`:a}function qc(e){const a=zee();return`${Nee(a)}://${e}.${a}`}function Nee(e){return e.includes("localhost")||e.includes("127.0.0.1")?"http":"https"}const Fee=()=>pa("BACKEND_URL")||Zm(),Lee=()=>pa("WS_BACKEND_URL");function Vc(){return"/api"}function nhe(){return Vc()}const ki={applicationId:pa("DATADOG_APPLICATION_ID")||"",clientToken:pa("DATADOG_CLIENT_TOKEN")||"",site:pa("DATADOG_SITE")||"datadoghq.com",service:pa("DATADOG_SERVICE")||"base44-frontend",version:pa("GIT_SHA")||"unknown"};function jee(){return!!(ki.applicationId&&ki.clientToken)}function Oee(){return Iee()}function Bee(e){let a;try{a=new URL(e).pathname}catch{a=e.split("?")[0].split("#")[0]}let n=a;return n=n.replace(/\/apps\/[^/]+/,"/apps/:appId"),n=n.replace(/(\/editor\/preview)\/.*$/,"$1"),n=n.replace(/\/entity-[^/?]+/,"/entity"),n=n.replace(/\/trash-entity-[^/?]+/,"/trash-entity"),n=n.replace(/^\/workspace\/[^/]+/,"/workspace/:workspaceId"),n=n.replace(/\/remix-app\/[^/]+/,"/remix-app/:appId"),n=n.replace(/\/app-templates\/manage-listing\/[^/]+/,"/app-templates/manage-listing/:appId"),n.length>1&&n.endsWith("/")&&(n=n.slice(0,-1)),n}const Vl=[],Uee=50;function gk(){const e=Jm();if(e)for(;Vl.length>0;){const a=Vl.shift();try{a.type==="error"?e.addError(a.error,a.context):e.addAction(a.name,a.context)}catch{}}}function hk(e){Vl.length<Uee&&Vl.push(e);const a=qee();a&&a.then(gk).catch(()=>{})}let $c=!1,tr=null,cr=null;function Jm(){return cr}function qee(){return tr}function ihe(e={}){if($c)return Promise.resolve();if(tr)return tr;if(!jee())return Promise.resolve();const a=Oee();return a==="development"&&pa("DATADOG_ENABLE_DEV")!=="true"?Promise.resolve():(tr=Vee(a,e),tr)}async function Vee(e,a){try{const{datadogRum:n}=await Pc(async()=>{const{datadogRum:t}=await import("./main-Da4duY4Y.js").then(i=>i.af);return{datadogRum:t}},__vite__mapDeps([0,1,2]));cr=n,n.init({applicationId:ki.applicationId,clientToken:ki.clientToken,site:ki.site,service:ki.service,env:e,version:ki.version,sessionSampleRate:100,sessionReplaySampleRate:10,defaultPrivacyLevel:"mask-user-input",trackUserInteractions:!0,trackResources:!0,trackLongTasks:!0,allowedTracingUrls:[{match:t=>t.startsWith(Fee()),propagatorTypes:["datadog"]}],traceSampleRate:100,enableExperimentalFeatures:["feature_operation_vital"],beforeSend:t=>{var i;return t.type==="view"&&(t.view.name=Bee(t.view.url)),!(t.type==="error"&&((i=t.error.message)!=null&&i.includes("Script error.")))}}),n.startSessionReplayRecording(),$c=!0,a.appContext&&n.setGlobalContextProperty("app_context",a.appContext),a.user&&$ee(a.user),gk()}catch{cr=null,tr=null}}function $ee(e){!$c||!cr||(e?cr.setUser({id:e.id,marketing_client_id:e.marketing_client_id}):cr.clearUser())}function fk(){return $c}var Wee=(e=>(e.CREATE_APP_STARTED="create_app_started",e.CREATE_APP_SUCCESS="create_app_success",e.APP_DELETED="app_deleted",e.APP_PUBLISHED="app_published",e.APP_DUPLICATED="app_duplicated",e.EDITOR_PROMPT_SENT="editor_prompt_sent",e.EDITOR_CODE_EDITED="editor_code_edited",e.EDITOR_PREVIEW_REFRESHED="editor_preview_refreshed",e.EDITOR_SIDEBAR_SEARCH="editor_sidebar_search",e.USER_SIGNED_UP="user_signed_up",e.USER_LOGGED_IN="user_logged_in",e.USER_LOGGED_OUT="user_logged_out",e.PLAN_UPGRADE_STARTED="plan_upgrade_started",e.PLAN_UPGRADE_COMPLETED="plan_upgrade_completed",e.WORKSPACE_CREATED="workspace_created",e.WORKSPACE_MEMBER_INVITED="workspace_member_invited",e.BUILDER_COMMAND_PALETTE_OPENED="builder_command_palette_opened",e.BUILDER_COMMAND_PALETTE_EXECUTED="builder_command_palette_executed",e.HOME_COMMAND_PALETTE_OPENED="home_command_palette_opened",e.HOME_COMMAND_PALETTE_EXECUTED="home_command_palette_executed",e))(Wee||{}),Gee=(e=>(e.CREATE_APP="create_app",e.CREATE_AGENT="create_agent",e))(Gee||{}),Wc=(e=>(e.API="api",e.BUSINESS="business",e.ASYNC="async",e.EVENT_HANDLER="event_handler",e.REACT="react",e.CUSTOM="custom",e))(Wc||{});function vk(e,a={}){var n;try{const{source:t=Wc.CUSTOM,context:i={},component:r}=a,o=Hee(e),s={error_source:t,component:r||"unknown",...i};if(!fk()){hk({type:"error",error:o,context:s});return}(n=Jm())==null||n.addError(o,s)}catch{}}function rhe(e,a){var i,r,o,s;const n=e,t={...a};n!=null&&n.config&&(t.url=t.url||n.config.url,t.method=t.method||n.config.method,t.request_id=(r=(i=n.response)==null?void 0:i.data)==null?void 0:r.request_id),n!=null&&n.response&&(t.statusCode=t.statusCode||n.response.status,t.responseData=((o=n.response.data)==null?void 0:o.message)||((s=n.response.data)==null?void 0:s.error)),vk(e,{source:Wc.API,component:"axiosClient",context:t})}function Hee(e){if(e instanceof Error)return e;if(typeof e=="string")return new Error(e);if(typeof e=="object"&&e!==null){const a=e,n=a.message||a.error||JSON.stringify(e),t=new Error(n);return a.stack&&(t.stack=a.stack),t}return new Error(String(e))}function bk(e,a){var n;if(!fk()){hk({type:"action",name:e,context:a});return}try{(n=Jm())==null||n.addAction(e,a)}catch{}}const Qm={en:{label:"English",nativeLabel:"English",locale:"en-US"},ja:{label:"Japanese",nativeLabel:"日本語",locale:"ja-JP"},de:{label:"German",nativeLabel:"Deutsch",locale:"de-DE"},es:{label:"Spanish",nativeLabel:"Español",locale:"es-ES"},fr:{label:"French",nativeLabel:"Français",locale:"fr-FR"},pt:{label:"Portuguese",nativeLabel:"Português",locale:"pt-BR"}};function Yee(e){const a=(e??"").split("-")[0];return a in Qm?a:"en"}const yk=["homepage","editor","navigation","dashboard-overview","dashboard-users","dashboard-data","dashboard-domains","dashboard-security","dashboard-automations","dashboard-connections","dashboard-agents","dashboard-virality","dashboard-settings","dashboard-logs","auth","account-settings","app-access","builder-profile","manage-apps","referrals","launchpad","plan-picker","plan-billing","support","notifications","spotlight","integrations-catalog","marketplace-terms"],Kee=Object.assign({"./locales/de/account-settings.json":a_,"./locales/de/app-access.json":r_,"./locales/de/auth.json":h_,"./locales/de/builder-profile.json":P_,"./locales/de/dashboard-agents.json":I_,"./locales/de/dashboard-automations.json":z_,"./locales/de/dashboard-connections.json":O_,"./locales/de/dashboard-data.json":V_,"./locales/de/dashboard-domains.json":W_,"./locales/de/dashboard-logs.json":K_,"./locales/de/dashboard-overview.json":J_,"./locales/de/dashboard-security.json":ex,"./locales/de/dashboard-settings.json":ox,"./locales/de/dashboard-users.json":lx,"./locales/de/dashboard-virality.json":wx,"./locales/de/editor.json":aI,"./locales/de/homepage.json":EI,"./locales/de/integrations-catalog.json":MI,"./locales/de/launchpad.json":ZI,"./locales/de/manage-apps.json":iR,"./locales/de/marketplace-terms.json":oR,"./locales/de/navigation.json":kR,"./locales/de/notifications.json":CR,"./locales/de/plan-billing.json":FR,"./locales/de/plan-picker.json":oz,"./locales/de/referrals.json":bz,"./locales/de/spotlight.json":xz,"./locales/de/support.json":eM,"./locales/en/account-settings.json":sM,"./locales/en/app-access.json":dM,"./locales/en/auth.json":kM,"./locales/en/builder-profile.json":zM,"./locales/en/dashboard-agents.json":FM,"./locales/en/dashboard-automations.json":jM,"./locales/en/dashboard-connections.json":$M,"./locales/en/dashboard-data.json":YM,"./locales/en/dashboard-domains.json":ZM,"./locales/en/dashboard-logs.json":eN,"./locales/en/dashboard-overview.json":aN,"./locales/en/dashboard-security.json":rN,"./locales/en/dashboard-settings.json":uN,"./locales/en/dashboard-users.json":mN,"./locales/en/dashboard-virality.json":TN,"./locales/en/editor.json":sF,"./locales/en/homepage.json":RF,"./locales/en/integrations-catalog.json":OF,"./locales/en/launchpad.json":tL,"./locales/en/manage-apps.json":cL,"./locales/en/marketplace-terms.json":pL,"./locales/en/navigation.json":TL,"./locales/en/notifications.json":xL,"./locales/en/plan-billing.json":qL,"./locales/en/plan-picker.json":p0,"./locales/en/referrals.json":C0,"./locales/en/spotlight.json":F0,"./locales/en/support.json":oj,"./locales/es/account-settings.json":mj,"./locales/es/app-access.json":fj,"./locales/es/auth.json":Tj,"./locales/es/builder-profile.json":Oj,"./locales/es/dashboard-agents.json":qj,"./locales/es/dashboard-automations.json":$j,"./locales/es/dashboard-connections.json":Zj,"./locales/es/dashboard-data.json":eO,"./locales/es/dashboard-domains.json":aO,"./locales/es/dashboard-logs.json":oO,"./locales/es/dashboard-overview.json":lO,"./locales/es/dashboard-security.json":uO,"./locales/es/dashboard-settings.json":vO,"./locales/es/dashboard-users.json":yO,"./locales/es/dashboard-virality.json":RO,"./locales/es/editor.json":m1,"./locales/es/homepage.json":j1,"./locales/es/integrations-catalog.json":W1,"./locales/es/launchpad.json":sB,"./locales/es/manage-apps.json":hB,"./locales/es/marketplace-terms.json":vB,"./locales/es/navigation.json":IB,"./locales/es/notifications.json":NB,"./locales/es/plan-billing.json":HB,"./locales/es/plan-picker.json":vU,"./locales/es/referrals.json":_U,"./locales/es/spotlight.json":UU,"./locales/es/support.json":uq,"./locales/fr/account-settings.json":bq,"./locales/fr/app-access.json":wq,"./locales/fr/auth.json":Iq,"./locales/fr/builder-profile.json":$q,"./locales/fr/dashboard-agents.json":Hq,"./locales/fr/dashboard-automations.json":Kq,"./locales/fr/dashboard-connections.json":t4,"./locales/fr/dashboard-data.json":r4,"./locales/fr/dashboard-domains.json":s4,"./locales/fr/dashboard-logs.json":u4,"./locales/fr/dashboard-overview.json":m4,"./locales/fr/dashboard-security.json":f4,"./locales/fr/dashboard-settings.json":A4,"./locales/fr/dashboard-users.json":C4,"./locales/fr/dashboard-virality.json":L4,"./locales/fr/editor.json":bV,"./locales/fr/homepage.json":VV,"./locales/fr/integrations-catalog.json":ZV,"./locales/fr/launchpad.json":p$,"./locales/fr/manage-apps.json":k$,"./locales/fr/marketplace-terms.json":A$,"./locales/fr/navigation.json":F$,"./locales/fr/notifications.json":B$,"./locales/fr/plan-billing.json":Q$,"./locales/fr/plan-picker.json":AW,"./locales/fr/referrals.json":MW,"./locales/fr/spotlight.json":GW,"./locales/fr/support.json":fG,"./locales/ja/account-settings.json":SG,"./locales/ja/app-access.json":TG,"./locales/ja/auth.json":FG,"./locales/ja/builder-profile.json":KG,"./locales/ja/dashboard-agents.json":QG,"./locales/ja/dashboard-automations.json":e3,"./locales/ja/dashboard-connections.json":o3,"./locales/ja/dashboard-data.json":d3,"./locales/ja/dashboard-domains.json":p3,"./locales/ja/dashboard-logs.json":f3,"./locales/ja/dashboard-overview.json":b3,"./locales/ja/dashboard-security.json":w3,"./locales/ja/dashboard-settings.json":E3,"./locales/ja/dashboard-users.json":_3,"./locales/ja/dashboard-virality.json":q3,"./locales/ja/editor.json":SH,"./locales/ja/homepage.json":YH,"./locales/ja/integrations-catalog.json":tY,"./locales/ja/launchpad.json":vY,"./locales/ja/manage-apps.json":DY,"./locales/ja/marketplace-terms.json":EY,"./locales/ja/navigation.json":UY,"./locales/ja/notifications.json":WY,"./locales/ja/plan-billing.json":n2,"./locales/ja/plan-picker.json":E2,"./locales/ja/referrals.json":O2,"./locales/ja/spotlight.json":J2,"./locales/ja/support.json":wK,"./locales/pt/account-settings.json":PK,"./locales/pt/app-access.json":IK,"./locales/pt/auth.json":UK,"./locales/pt/builder-profile.json":e5,"./locales/pt/dashboard-agents.json":n5,"./locales/pt/dashboard-automations.json":r5,"./locales/pt/dashboard-connections.json":u5,"./locales/pt/dashboard-data.json":h5,"./locales/pt/dashboard-domains.json":v5,"./locales/pt/dashboard-logs.json":w5,"./locales/pt/dashboard-overview.json":S5,"./locales/pt/dashboard-security.json":T5,"./locales/pt/dashboard-settings.json":R5,"./locales/pt/dashboard-users.json":M5,"./locales/pt/dashboard-virality.json":H5,"./locales/pt/editor.json":P6,"./locales/pt/homepage.json":X6,"./locales/pt/integrations-catalog.json":oZ,"./locales/pt/launchpad.json":AZ,"./locales/pt/manage-apps.json":xZ,"./locales/pt/marketplace-terms.json":RZ,"./locales/pt/navigation.json":GZ,"./locales/pt/notifications.json":ZZ,"./locales/pt/plan-billing.json":l8,"./locales/pt/plan-picker.json":R8,"./locales/pt/referrals.json":$8,"./locales/pt/spotlight.json":a9,"./locales/pt/support.json":T9}),Zee=Object.keys(Qm).reduce((e,a)=>{e[a]={};for(const n of yk){const t=`./locales/${a}/${n}.json`;e[a][n]=Kee[t]??{}}return e},{}),Jee=!1,Hf="base44.com",Qee=Object.keys(Qm),Xee={name:"referrer",lookup(){try{const e=document.referrer;if(!e)return;const a=new URL(e);if(a.hostname!==Hf&&!a.hostname.endsWith(`.${Hf}`))return;const n=a.pathname.split("/")[1];if(n&&Qee.includes(n))return n}catch{}}},kk=new yy;kk.addDetector(Xee);zt.use(kk).use(aJ).init({resources:Zee,fallbackLng:"en",ns:[...yk],interpolation:{escapeValue:!1},load:"languageOnly",detection:{order:["querystring","localStorage","referrer","navigator"],lookupQuerystring:"lng",lookupLocalStorage:"i18nextLng",caches:["localStorage"]},debug:Jee,saveMissing:!0,missingKeyHandler:(e,a,n)=>{bk("i18n_missing_key",{namespace:a,key:n,language:zt.language})}});const wk=e=>{const a=Yee(e);K.locale(a==="en"?"en":a)};wk(zt.language);zt.on("languageChanged",wk);let ete={data:""},tte=e=>{if(typeof window=="object"){let a=(e?e.querySelector("#_goober"):window._goober)||Object.assign(document.createElement("style"),{innerHTML:" ",id:"_goober"});return a.nonce=window.__nonce__,a.parentNode||(e||document.head).appendChild(a),a.firstChild}return e||ete},ate=/(?:([\u0080-\uFFFF\w-%@]+) *:? *([^{;]+?);|([^;}{]*?) *{)|(}\s*)/g,nte=/\/\*[^]*?\*\/| +/g,Yf=/\n+/g,Wn=(e,a)=>{let n="",t="",i="";for(let r in e){let o=e[r];r[0]=="@"?r[1]=="i"?n=r+" "+o+";":t+=r[1]=="f"?Wn(o,r):r+"{"+Wn(o,r[1]=="k"?"":a)+"}":typeof o=="object"?t+=Wn(o,a?a.replace(/([^,])+/g,s=>r.replace(/([^,]*:\S+\([^)]*\))|([^,])+/g,l=>/&/.test(l)?l.replace(/&/g,s):s?s+" "+l:l)):r):o!=null&&(r=/^--/.test(r)?r:r.replace(/[A-Z]/g,"-$&").toLowerCase(),i+=Wn.p?Wn.p(r,o):r+":"+o+";")}return n+(a&&i?a+"{"+i+"}":i)+t},yn={},Ak=e=>{if(typeof e=="object"){let a="";for(let n in e)a+=n+Ak(e[n]);return a}return e},ite=(e,a,n,t,i)=>{let r=Ak(e),o=yn[r]||(yn[r]=(l=>{let d=0,p=11;for(;d<l.length;)p=101*p+l.charCodeAt(d++)>>>0;return"go"+p})(r));if(!yn[o]){let l=r!==e?e:(d=>{let p,u,g=[{}];for(;p=ate.exec(d.replace(nte,""));)p[4]?g.shift():p[3]?(u=p[3].replace(Yf," ").trim(),g.unshift(g[0][u]=g[0][u]||{})):g[0][p[1]]=p[2].replace(Yf," ").trim();return g[0]})(e);yn[o]=Wn(i?{["@keyframes "+o]:l}:l,n?"":"."+o)}let s=n&&yn.g?yn.g:null;return n&&(yn.g=yn[o]),((l,d,p,u)=>{u?d.data=d.data.replace(u,l):d.data.indexOf(l)===-1&&(d.data=p?l+d.data:d.data+l)})(yn[o],a,t,s),o},rte=(e,a,n)=>e.reduce((t,i,r)=>{let o=a[r];if(o&&o.call){let s=o(n),l=s&&s.props&&s.props.className||/^go/.test(s)&&s;o=l?"."+l:s&&typeof s=="object"?s.props?"":Wn(s,""):s===!1?"":s}return t+i+(o??"")},"");function Gc(e){let a=this||{},n=e.call?e(a.p):e;return ite(n.unshift?n.raw?rte(n,[].slice.call(arguments,1),a.p):n.reduce((t,i)=>Object.assign(t,i&&i.call?i(a.p):i),{}):n,tte(a.target),a.g,a.o,a.k)}let Sk,Qu,Xu;Gc.bind({g:1});let _n=Gc.bind({k:1});function ote(e,a,n,t){Wn.p=a,Sk=e,Qu=n,Xu=t}function ai(e,a){let n=this||{};return function(){let t=arguments;function i(r,o){let s=Object.assign({},r),l=s.className||i.className;n.p=Object.assign({theme:Qu&&Qu()},s),n.o=/ *go\d+/.test(l),s.className=Gc.apply(n,t)+(l?" "+l:"");let d=e;return e[0]&&(d=s.as||e,delete s.as),Xu&&d[0]&&Xu(s),Sk(d,s)}return i}}var ste=e=>typeof e=="function",wo=(e,a)=>ste(e)?e(a):e,lte=(()=>{let e=0;return()=>(++e).toString()})(),Ck=(()=>{let e;return()=>{if(e===void 0&&typeof window<"u"){let a=matchMedia("(prefers-reduced-motion: reduce)");e=!a||a.matches}return e}})(),cte=20,Xm="default",Dk=(e,a)=>{let{toastLimit:n}=e.settings;switch(a.type){case 0:return{...e,toasts:[a.toast,...e.toasts].slice(0,n)};case 1:return{...e,toasts:e.toasts.map(o=>o.id===a.toast.id?{...o,...a.toast}:o)};case 2:let{toast:t}=a;return Dk(e,{type:e.toasts.find(o=>o.id===t.id)?1:0,toast:t});case 3:let{toastId:i}=a;return{...e,toasts:e.toasts.map(o=>o.id===i||i===void 0?{...o,dismissed:!0,visible:!1}:o)};case 4:return a.toastId===void 0?{...e,toasts:[]}:{...e,toasts:e.toasts.filter(o=>o.id!==a.toastId)};case 5:return{...e,pausedAt:a.time};case 6:let r=a.time-(e.pausedAt||0);return{...e,pausedAt:void 0,toasts:e.toasts.map(o=>({...o,pauseDuration:o.pauseDuration+r}))}}},pl=[],Tk={toasts:[],pausedAt:void 0,settings:{toastLimit:cte}},Ga={},Ek=(e,a=Xm)=>{Ga[a]=Dk(Ga[a]||Tk,e),pl.forEach(([n,t])=>{n===a&&t(Ga[a])})},Pk=e=>Object.keys(Ga).forEach(a=>Ek(e,a)),dte=e=>Object.keys(Ga).find(a=>Ga[a].toasts.some(n=>n.id===e)),Hc=(e=Xm)=>a=>{Ek(a,e)},ute={blank:4e3,error:4e3,success:2e3,loading:1/0,custom:4e3},_k=(e={},a=Xm)=>{let[n,t]=M.useState(Ga[a]||Tk),i=M.useRef(Ga[a]);M.useEffect(()=>(i.current!==Ga[a]&&t(Ga[a]),pl.push([a,t]),()=>{let o=pl.findIndex(([s])=>s===a);o>-1&&pl.splice(o,1)}),[a]);let r=n.toasts.map(o=>{var s,l,d;return{...e,...e[o.type],...o,removeDelay:o.removeDelay||((s=e[o.type])==null?void 0:s.removeDelay)||(e==null?void 0:e.removeDelay),duration:o.duration||((l=e[o.type])==null?void 0:l.duration)||(e==null?void 0:e.duration)||ute[o.type],style:{...e.style,...(d=e[o.type])==null?void 0:d.style,...o.style}}});return{...n,toasts:r}},pte=(e,a="blank",n)=>({createdAt:Date.now(),visible:!0,dismissed:!1,type:a,ariaProps:{role:"status","aria-live":"polite"},message:e,pauseDuration:0,...n,id:(n==null?void 0:n.id)||lte()}),Qo=e=>(a,n)=>{let t=pte(a,e,n);return Hc(t.toasterId||dte(t.id))({type:2,toast:t}),t.id},Dt=(e,a)=>Qo("blank")(e,a);Dt.error=Qo("error");Dt.success=Qo("success");Dt.loading=Qo("loading");Dt.custom=Qo("custom");Dt.dismiss=(e,a)=>{let n={type:3,toastId:e};a?Hc(a)(n):Pk(n)};Dt.dismissAll=e=>Dt.dismiss(void 0,e);Dt.remove=(e,a)=>{let n={type:4,toastId:e};a?Hc(a)(n):Pk(n)};Dt.removeAll=e=>Dt.remove(void 0,e);Dt.promise=(e,a,n)=>{let t=Dt.loading(a.loading,{...n,...n==null?void 0:n.loading});return typeof e=="function"&&(e=e()),e.then(i=>{let r=a.success?wo(a.success,i):void 0;return r?Dt.success(r,{id:t,...n,...n==null?void 0:n.success}):Dt.dismiss(t),i}).catch(i=>{let r=a.error?wo(a.error,i):void 0;r?Dt.error(r,{id:t,...n,...n==null?void 0:n.error}):Dt.dismiss(t)}),e};var mte=1e3,xk=(e,a="default")=>{let{toasts:n,pausedAt:t}=_k(e,a),i=M.useRef(new Map).current,r=M.useCallback((u,g=mte)=>{if(i.has(u))return;let b=setTimeout(()=>{i.delete(u),o({type:4,toastId:u})},g);i.set(u,b)},[]);M.useEffect(()=>{if(t)return;let u=Date.now(),g=n.map(b=>{if(b.duration===1/0)return;let v=(b.duration||0)+b.pauseDuration-(u-b.createdAt);if(v<0){b.visible&&Dt.dismiss(b.id);return}return setTimeout(()=>Dt.dismiss(b.id,a),v)});return()=>{g.forEach(b=>b&&clearTimeout(b))}},[n,t,a]);let o=M.useCallback(Hc(a),[a]),s=M.useCallback(()=>{o({type:5,time:Date.now()})},[o]),l=M.useCallback((u,g)=>{o({type:1,toast:{id:u,height:g}})},[o]),d=M.useCallback(()=>{t&&o({type:6,time:Date.now()})},[t,o]),p=M.useCallback((u,g)=>{let{reverseOrder:b=!1,gutter:v=8,defaultPosition:A}=g||{},f=n.filter(T=>(T.position||A)===(u.position||A)&&T.height),S=f.findIndex(T=>T.id===u.id),C=f.filter((T,E)=>E<S&&T.visible).length;return f.filter(T=>T.visible).slice(...b?[C+1]:[0,C]).reduce((T,E)=>T+(E.height||0)+v,0)},[n]);return M.useEffect(()=>{n.forEach(u=>{if(u.dismissed)r(u.id,u.removeDelay);else{let g=i.get(u.id);g&&(clearTimeout(g),i.delete(u.id))}})},[n,r]),{toasts:n,handlers:{updateHeight:l,startPause:s,endPause:d,calculateOffset:p}}},gte=_n`
from {
transform: scale(0) rotate(45deg);
opacity: 0;
}
to {
transform: scale(1) rotate(45deg);
opacity: 1;
}`,hte=_n`
from {
transform: scale(0);
opacity: 0;
}
to {
transform: scale(1);
opacity: 1;
}`,fte=_n`
from {
transform: scale(0) rotate(90deg);
opacity: 0;
}
to {
transform: scale(1) rotate(90deg);
opacity: 1;
}`,Ik=ai("div")`
width: 20px;
opacity: 0;
height: 20px;
border-radius: 10px;
background: ${e=>e.primary||"#ff4b4b"};
position: relative;
transform: rotate(45deg);
animation: ${gte} 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275)
forwards;
animation-delay: 100ms;
&:after,
&:before {
content: '';
animation: ${hte} 0.15s ease-out forwards;
animation-delay: 150ms;
position: absolute;
border-radius: 3px;
opacity: 0;
background: ${e=>e.secondary||"#fff"};
bottom: 9px;
left: 4px;
height: 2px;
width: 12px;
}
&:before {
animation: ${fte} 0.15s ease-out forwards;
animation-delay: 180ms;
transform: rotate(90deg);
}
`,vte=_n`
from {
transform: rotate(0deg);
}
to {
transform: rotate(360deg);
}
`,Rk=ai("div")`
width: 12px;
height: 12px;
box-sizing: border-box;
border: 2px solid;
border-radius: 100%;
border-color: ${e=>e.secondary||"#e0e0e0"};
border-right-color: ${e=>e.primary||"#616161"};
animation: ${vte} 1s linear infinite;
`,bte=_n`
from {
transform: scale(0) rotate(45deg);
opacity: 0;
}
to {
transform: scale(1) rotate(45deg);
opacity: 1;
}`,yte=_n`
0% {
height: 0;
width: 0;
opacity: 0;
}
40% {
height: 0;
width: 6px;
opacity: 1;
}
100% {
opacity: 1;
height: 10px;
}`,zk=ai("div")`
width: 20px;
opacity: 0;
height: 20px;
border-radius: 10px;
background: ${e=>e.primary||"#61d345"};
position: relative;
transform: rotate(45deg);
animation: ${bte} 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275)
forwards;
animation-delay: 100ms;
&:after {
content: '';
box-sizing: border-box;
animation: ${yte} 0.2s ease-out forwards;
opacity: 0;
animation-delay: 200ms;
position: absolute;
border-right: 2px solid;
border-bottom: 2px solid;
border-color: ${e=>e.secondary||"#fff"};
bottom: 6px;
left: 6px;
height: 10px;
width: 6px;
}
`,kte=ai("div")`
position: absolute;
`,wte=ai("div")`
position: relative;
display: flex;
justify-content: center;
align-items: center;
min-width: 20px;
min-height: 20px;
`,Ate=_n`
from {
transform: scale(0.6);
opacity: 0.4;
}
to {
transform: scale(1);
opacity: 1;
}`,Ste=ai("div")`
position: relative;
transform: scale(0.6);
opacity: 0.4;
min-width: 20px;
animation: ${Ate} 0.3s 0.12s cubic-bezier(0.175, 0.885, 0.32, 1.275)
forwards;
`,Mk=({toast:e})=>{let{icon:a,type:n,iconTheme:t}=e;return a!==void 0?typeof a=="string"?M.createElement(Ste,null,a):a:n==="blank"?null:M.createElement(wte,null,M.createElement(Rk,{...t}),n!=="loading"&&M.createElement(kte,null,n==="error"?M.createElement(Ik,{...t}):M.createElement(zk,{...t})))},Cte=e=>`
0% {transform: translate3d(0,${e*-200}%,0) scale(.6); opacity:.5;}
100% {transform: translate3d(0,0,0) scale(1); opacity:1;}
`,Dte=e=>`
0% {transform: translate3d(0,0,-1px) scale(1); opacity:1;}
100% {transform: translate3d(0,${e*-150}%,-1px) scale(.6); opacity:0;}
`,Tte="0%{opacity:0;} 100%{opacity:1;}",Ete="0%{opacity:1;} 100%{opacity:0;}",Pte=ai("div")`
display: flex;
align-items: center;
background: #fff;
color: #363636;
line-height: 1.3;
will-change: transform;
box-shadow: 0 3px 10px rgba(0, 0, 0, 0.1), 0 3px 3px rgba(0, 0, 0, 0.05);
max-width: 350px;
pointer-events: auto;
padding: 8px 10px;
border-radius: 8px;
`,_te=ai("div")`
display: flex;
justify-content: center;
margin: 4px 10px;
color: inherit;
flex: 1 1 auto;
white-space: pre-line;
`,xte=(e,a)=>{let n=e.includes("top")?1:-1,[t,i]=Ck()?[Tte,Ete]:[Cte(n),Dte(n)];return{animation:a?`${_n(t)} 0.35s cubic-bezier(.21,1.02,.73,1) forwards`:`${_n(i)} 0.4s forwards cubic-bezier(.06,.71,.55,1)`}},Nk=M.memo(({toast:e,position:a,style:n,children:t})=>{let i=e.height?xte(e.position||a||"top-center",e.visible):{opacity:0},r=M.createElement(Mk,{toast:e}),o=M.createElement(_te,{...e.ariaProps},wo(e.message,e));return M.createElement(Pte,{className:e.className,style:{...i,...n,...e.style}},typeof t=="function"?t({icon:r,message:o}):M.createElement(M.Fragment,null,r,o))});ote(M.createElement);var Ite=({id:e,className:a,style:n,onHeightUpdate:t,children:i})=>{let r=M.useCallback(o=>{if(o){let s=()=>{let l=o.getBoundingClientRect().height;t(e,l)};s(),new MutationObserver(s).observe(o,{subtree:!0,childList:!0,characterData:!0})}},[e,t]);return M.createElement("div",{ref:r,className:a,style:n},i)},Rte=(e,a)=>{let n=e.includes("top"),t=n?{top:0}:{bottom:0},i=e.includes("center")?{justifyContent:"center"}:e.includes("right")?{justifyContent:"flex-end"}:{};return{left:0,right:0,display:"flex",position:"absolute",transition:Ck()?void 0:"all 230ms cubic-bezier(.21,1.02,.73,1)",transform:`translateY(${a*(n?1:-1)}px)`,...t,...i}},zte=Gc`
z-index: 9999;
> * {
pointer-events: auto;
}
`,ws=16,Fk=({reverseOrder:e,position:a="top-center",toastOptions:n,gutter:t,children:i,toasterId:r,containerStyle:o,containerClassName:s})=>{let{toasts:l,handlers:d}=xk(n,r);return M.createElement("div",{"data-rht-toaster":r||"",style:{position:"fixed",zIndex:9999,top:ws,left:ws,right:ws,bottom:ws,pointerEvents:"none",...o},className:s,onMouseEnter:d.startPause,onMouseLeave:d.endPause},l.map(p=>{let u=p.position||a,g=d.calculateOffset(p,{reverseOrder:e,gutter:t,defaultPosition:a}),b=Rte(u,g);return M.createElement(Ite,{id:p.id,key:p.id,onHeightUpdate:d.updateHeight,className:p.visible?zte:"",style:b},p.type==="custom"?wo(p.message,p):i?i(p):M.createElement(Nk,{toast:p,position:u}))}))},Mte=Dt;const ohe=Object.freeze(Object.defineProperty({__proto__:null,CheckmarkIcon:zk,ErrorIcon:Ik,LoaderIcon:Rk,ToastBar:Nk,ToastIcon:Mk,Toaster:Fk,default:Mte,resolveValue:wo,toast:Dt,useToaster:xk,useToasterStore:_k},Symbol.toStringTag,{value:"Module"})),Nte=1,Fte=1e6;let Wd=0;function Lte(){return Wd=(Wd+1)%Number.MAX_SAFE_INTEGER,Wd.toString()}const Gd=new Map,Kf=e=>{if(Gd.has(e))return;const a=setTimeout(()=>{Gd.delete(e),so({type:"REMOVE_TOAST",toastId:e})},Fte);Gd.set(e,a)},Lk=(e,a)=>{switch(a.type){case"ADD_TOAST":return{...e,toasts:[a.toast,...e.toasts].slice(0,Nte)};case"UPDATE_TOAST":return{...e,toasts:e.toasts.map(n=>n.id===a.toast.id?{...n,...a.toast}:n)};case"DISMISS_TOAST":{const{toastId:n}=a;return n?Kf(n):e.toasts.forEach(t=>{Kf(t.id)}),{...e,toasts:e.toasts.map(t=>t.id===n||n===void 0?{...t,open:!1}:t)}}case"REMOVE_TOAST":return a.toastId===void 0?{...e,toasts:[]}:{...e,toasts:e.toasts.filter(n=>n.id!==a.toastId)}}},ml=[];let gl={toasts:[]};function so(e){gl=Lk(gl,e),ml.forEach(a=>{a(gl)})}function jk({...e}){const a=Lte(),n=i=>so({type:"UPDATE_TOAST",toast:{...i,id:a}}),t=()=>so({type:"DISMISS_TOAST",toastId:a});return so({type:"ADD_TOAST",toast:{...e,id:a,open:!0,onOpenChange:i=>{i||t()}}}),{id:a,dismiss:t,update:n}}function Ok(){const[e,a]=M.useState(gl);return M.useEffect(()=>(ml.push(a),()=>{const n=ml.indexOf(a);n>-1&&ml.splice(n,1)}),[e]),{...e,toast:jk,dismiss:n=>so({type:"DISMISS_TOAST",toastId:n})}}const she=Object.freeze(Object.defineProperty({__proto__:null,reducer:Lk,toast:jk,useToast:Ok},Symbol.toStringTag,{value:"Module"}));var Bk="ToastProvider",[eg,jte,Ote]=FP("Toast"),[Uk,Bte]=OP("Toast",[Ote]),[Ute,Yc]=Uk(Bk),tg=e=>{const{__scopeToast:a,label:n="Notification",duration:t=5e3,swipeDirection:i="right",swipeThreshold:r=50,children:o}=e,[s,l]=M.useState(null),[d,p]=M.useState(0),u=M.useRef(!1),g=M.useRef(!1);return n.trim(),J.jsx(eg.Provider,{scope:a,children:J.jsx(Ute,{scope:a,label:n,duration:t,swipeDirection:i,swipeThreshold:r,toastCount:d,viewport:s,onViewportChange:l,onToastAdd:M.useCallback(()=>p(b=>b+1),[]),onToastRemove:M.useCallback(()=>p(b=>b-1),[]),isFocusedToastEscapeKeyDownRef:u,isClosePausedRef:g,children:o})})};tg.displayName=Bk;var qk="ToastViewport",qte=["F8"],ep="toast.viewportPause",tp="toast.viewportResume",ag=M.forwardRef((e,a)=>{const{__scopeToast:n,hotkey:t=qte,label:i="Notifications ({hotkey})",...r}=e,o=Yc(qk,n),s=jte(n),l=M.useRef(null),d=M.useRef(null),p=M.useRef(null),u=M.useRef(null),g=sy(a,u,o.onViewportChange),b=t.join("+").replace(/Key/g,"").replace(/Digit/g,""),v=o.toastCount>0;M.useEffect(()=>{const f=S=>{var T;t.length!==0&&t.every(E=>S[E]||S.code===E)&&((T=u.current)==null||T.focus())};return document.addEventListener("keydown",f),()=>document.removeEventListener("keydown",f)},[t]),M.useEffect(()=>{const f=l.current,S=u.current;if(v&&f&&S){const C=()=>{if(!o.isClosePausedRef.current){const I=new CustomEvent(ep);S.dispatchEvent(I),o.isClosePausedRef.current=!0}},T=()=>{if(o.isClosePausedRef.current){const I=new CustomEvent(tp);S.dispatchEvent(I),o.isClosePausedRef.current=!1}},E=I=>{!f.contains(I.relatedTarget)&&T()},P=()=>{f.contains(document.activeElement)||T()};return f.addEventListener("focusin",C),f.addEventListener("focusout",E),f.addEventListener("pointermove",C),f.addEventListener("pointerleave",P),window.addEventListener("blur",C),window.addEventListener("focus",T),()=>{f.removeEventListener("focusin",C),f.removeEventListener("focusout",E),f.removeEventListener("pointermove",C),f.removeEventListener("pointerleave",P),window.removeEventListener("blur",C),window.removeEventListener("focus",T)}}},[v,o.isClosePausedRef]);const A=M.useCallback(({tabbingDirection:f})=>{const C=s().map(T=>{const E=T.ref.current,P=[E,...aae(E)];return f==="forwards"?P:P.reverse()});return(f==="forwards"?C.reverse():C).flat()},[s]);return M.useEffect(()=>{const f=u.current;if(f){const S=C=>{var P,I,L;const T=C.altKey||C.ctrlKey||C.metaKey;if(C.key==="Tab"&&!T){const N=document.activeElement,Z=C.shiftKey;if(C.target===f&&Z){(P=d.current)==null||P.focus();return}const $=A({tabbingDirection:Z?"backwards":"forwards"}),F=$.findIndex(j=>j===N);Hd($.slice(F+1))?C.preventDefault():Z?(I=d.current)==null||I.focus():(L=p.current)==null||L.focus()}};return f.addEventListener("keydown",S),()=>f.removeEventListener("keydown",S)}},[s,A]),J.jsxs(zP,{ref:l,role:"region","aria-label":i.replace("{hotkey}",b),tabIndex:-1,style:{pointerEvents:v?void 0:"none"},children:[v&&J.jsx(ap,{ref:d,onFocusFromOutsideViewport:()=>{const f=A({tabbingDirection:"forwards"});Hd(f)}}),J.jsx(eg.Slot,{scope:n,children:J.jsx(xr.ol,{tabIndex:-1,...r,ref:g})}),v&&J.jsx(ap,{ref:p,onFocusFromOutsideViewport:()=>{const f=A({tabbingDirection:"backwards"});Hd(f)}})]})});ag.displayName=qk;var Vk="ToastFocusProxy",ap=M.forwardRef((e,a)=>{const{__scopeToast:n,onFocusFromOutsideViewport:t,...i}=e,r=Yc(Vk,n);return J.jsx(ly,{tabIndex:0,...i,ref:a,style:{position:"fixed"},onFocus:o=>{var d;const s=o.relatedTarget;!((d=r.viewport)!=null&&d.contains(s))&&t()}})});ap.displayName=Vk;var Xo="Toast",Vte="toast.swipeStart",$te="toast.swipeMove",Wte="toast.swipeCancel",Gte="toast.swipeEnd",ng=M.forwardRef((e,a)=>{const{forceMount:n,open:t,defaultOpen:i,onOpenChange:r,...o}=e,[s,l]=MP({prop:t,defaultProp:i??!0,onChange:r,caller:Xo});return J.jsx(NP,{present:n||s,children:J.jsx(Kte,{open:s,...o,ref:a,onClose:()=>l(!1),onPause:zl(e.onPause),onResume:zl(e.onResume),onSwipeStart:qa(e.onSwipeStart,d=>{d.currentTarget.setAttribute("data-swipe","start")}),onSwipeMove:qa(e.onSwipeMove,d=>{const{x:p,y:u}=d.detail.delta;d.currentTarget.setAttribute("data-swipe","move"),d.currentTarget.style.setProperty("--radix-toast-swipe-move-x",`${p}px`),d.currentTarget.style.setProperty("--radix-toast-swipe-move-y",`${u}px`)}),onSwipeCancel:qa(e.onSwipeCancel,d=>{d.currentTarget.setAttribute("data-swipe","cancel"),d.currentTarget.style.removeProperty("--radix-toast-swipe-move-x"),d.currentTarget.style.removeProperty("--radix-toast-swipe-move-y"),d.currentTarget.style.removeProperty("--radix-toast-swipe-end-x"),d.currentTarget.style.removeProperty("--radix-toast-swipe-end-y")}),onSwipeEnd:qa(e.onSwipeEnd,d=>{const{x:p,y:u}=d.detail.delta;d.currentTarget.setAttribute("data-swipe","end"),d.currentTarget.style.removeProperty("--radix-toast-swipe-move-x"),d.currentTarget.style.removeProperty("--radix-toast-swipe-move-y"),d.currentTarget.style.setProperty("--radix-toast-swipe-end-x",`${p}px`),d.currentTarget.style.setProperty("--radix-toast-swipe-end-y",`${u}px`),l(!1)})})})});ng.displayName=Xo;var[Hte,Yte]=Uk(Xo,{onClose(){}}),Kte=M.forwardRef((e,a)=>{const{__scopeToast:n,type:t="foreground",duration:i,open:r,onClose:o,onEscapeKeyDown:s,onPause:l,onResume:d,onSwipeStart:p,onSwipeMove:u,onSwipeCancel:g,onSwipeEnd:b,...v}=e,A=Yc(Xo,n),[f,S]=M.useState(null),C=sy(a,j=>S(j)),T=M.useRef(null),E=M.useRef(null),P=i||A.duration,I=M.useRef(0),L=M.useRef(P),N=M.useRef(0),{onToastAdd:Z,onToastRemove:R}=A,Y=zl(()=>{var H;(f==null?void 0:f.contains(document.activeElement))&&((H=A.viewport)==null||H.focus()),o()}),$=M.useCallback(j=>{!j||j===1/0||(window.clearTimeout(N.current),I.current=new Date().getTime(),N.current=window.setTimeout(Y,j))},[Y]);M.useEffect(()=>{const j=A.viewport;if(j){const H=()=>{$(L.current),d==null||d()},X=()=>{const ie=new Date().getTime()-I.current;L.current=L.current-ie,window.clearTimeout(N.current),l==null||l()};return j.addEventListener(ep,X),j.addEventListener(tp,H),()=>{j.removeEventListener(ep,X),j.removeEventListener(tp,H)}}},[A.viewport,P,l,d,$]),M.useEffect(()=>{r&&!A.isClosePausedRef.current&&$(P)},[r,P,A.isClosePausedRef,$]),M.useEffect(()=>(Z(),()=>R()),[Z,R]);const F=M.useMemo(()=>f?Gk(f):null,[f]);return A.viewport?J.jsxs(J.Fragment,{children:[F&&J.jsx(Zte,{__scopeToast:n,role:"status","aria-live":t==="foreground"?"assertive":"polite",children:F}),J.jsx(Hte,{scope:n,onClose:Y,children:LP.createPortal(J.jsx(eg.ItemSlot,{scope:n,children:J.jsx(jP,{asChild:!0,onEscapeKeyDown:qa(s,()=>{A.isFocusedToastEscapeKeyDownRef.current||Y(),A.isFocusedToastEscapeKeyDownRef.current=!1}),children:J.jsx(xr.li,{tabIndex:0,"data-state":r?"open":"closed","data-swipe-direction":A.swipeDirection,...v,ref:C,style:{userSelect:"none",touchAction:"none",...e.style},onKeyDown:qa(e.onKeyDown,j=>{j.key==="Escape"&&(s==null||s(j.nativeEvent),j.nativeEvent.defaultPrevented||(A.isFocusedToastEscapeKeyDownRef.current=!0,Y()))}),onPointerDown:qa(e.onPointerDown,j=>{j.button===0&&(T.current={x:j.clientX,y:j.clientY})}),onPointerMove:qa(e.onPointerMove,j=>{if(!T.current)return;const H=j.clientX-T.current.x,X=j.clientY-T.current.y,ie=!!E.current,te=["left","right"].includes(A.swipeDirection),oe=["left","up"].includes(A.swipeDirection)?Math.min:Math.max,ae=te?oe(0,H):0,Me=te?0:oe(0,X),Ne=j.pointerType==="touch"?10:2,re={x:ae,y:Me},de={originalEvent:j,delta:re};ie?(E.current=re,As($te,u,de,{discrete:!1})):Zf(re,A.swipeDirection,Ne)?(E.current=re,As(Vte,p,de,{discrete:!1}),j.target.setPointerCapture(j.pointerId)):(Math.abs(H)>Ne||Math.abs(X)>Ne)&&(T.current=null)}),onPointerUp:qa(e.onPointerUp,j=>{const H=E.current,X=j.target;if(X.hasPointerCapture(j.pointerId)&&X.releasePointerCapture(j.pointerId),E.current=null,T.current=null,H){const ie=j.currentTarget,te={originalEvent:j,delta:H};Zf(H,A.swipeDirection,A.swipeThreshold)?As(Gte,b,te,{discrete:!0}):As(Wte,g,te,{discrete:!0}),ie.addEventListener("click",oe=>oe.preventDefault(),{once:!0})}})})})}),A.viewport)})]}):null}),Zte=e=>{const{__scopeToast:a,children:n,...t}=e,i=Yc(Xo,a),[r,o]=M.useState(!1),[s,l]=M.useState(!1);return eae(()=>o(!0)),M.useEffect(()=>{const d=window.setTimeout(()=>l(!0),1e3);return()=>window.clearTimeout(d)},[]),s?null:J.jsx(BP,{asChild:!0,children:J.jsx(ly,{...t,children:r&&J.jsxs(J.Fragment,{children:[i.label," ",n]})})})},Jte="ToastTitle",ig=M.forwardRef((e,a)=>{const{__scopeToast:n,...t}=e;return J.jsx(xr.div,{...t,ref:a})});ig.displayName=Jte;var Qte="ToastDescription",rg=M.forwardRef((e,a)=>{const{__scopeToast:n,...t}=e;return J.jsx(xr.div,{...t,ref:a})});rg.displayName=Qte;var Xte="ToastAction",og=M.forwardRef((e,a)=>{const{altText:n,...t}=e;return n.trim()?J.jsx(Wk,{altText:n,asChild:!0,children:J.jsx(Kc,{...t,ref:a})}):null});og.displayName=Xte;var $k="ToastClose",Kc=M.forwardRef((e,a)=>{const{__scopeToast:n,...t}=e,i=Yte($k,n);return J.jsx(Wk,{asChild:!0,children:J.jsx(xr.button,{type:"button",...t,ref:a,onClick:qa(e.onClick,i.onClose)})})});Kc.displayName=$k;var Wk=M.forwardRef((e,a)=>{const{__scopeToast:n,altText:t,...i}=e;return J.jsx(xr.div,{"data-radix-toast-announce-exclude":"","data-radix-toast-announce-alt":t||void 0,...i,ref:a})});function Gk(e){const a=[];return Array.from(e.childNodes).forEach(t=>{if(t.nodeType===t.TEXT_NODE&&t.textContent&&a.push(t.textContent),tae(t)){const i=t.ariaHidden||t.hidden||t.style.display==="none",r=t.dataset.radixToastAnnounceExclude==="";if(!i)if(r){const o=t.dataset.radixToastAnnounceAlt;o&&a.push(o)}else a.push(...Gk(t))}}),a}function As(e,a,n,{discrete:t}){const i=n.originalEvent.currentTarget,r=new CustomEvent(e,{bubbles:!0,cancelable:!0,detail:n});a&&i.addEventListener(e,a,{once:!0}),t?qP(i,r):i.dispatchEvent(r)}var Zf=(e,a,n=0)=>{const t=Math.abs(e.x),i=Math.abs(e.y),r=t>i;return a==="left"||a==="right"?r&&t>n:!r&&i>n};function eae(e=()=>{}){const a=zl(e);UP(()=>{let n=0,t=0;return n=window.requestAnimationFrame(()=>t=window.requestAnimationFrame(a)),()=>{window.cancelAnimationFrame(n),window.cancelAnimationFrame(t)}},[a])}function tae(e){return e.nodeType===e.ELEMENT_NODE}function aae(e){const a=[],n=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,{acceptNode:t=>{const i=t.tagName==="INPUT"&&t.type==="hidden";return t.disabled||t.hidden||i?NodeFilter.FILTER_SKIP:t.tabIndex>=0?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP}});for(;n.nextNode();)a.push(n.currentNode);return a}function Hd(e){const a=document.activeElement;return e.some(n=>n===a?!0:(n.focus(),document.activeElement!==a))}var Hk=tg,sg=ag,lg=ng,cg=ig,dg=rg,ug=og,pg=Kc;const lhe=Object.freeze(Object.defineProperty({__proto__:null,Action:ug,Close:pg,Description:dg,Provider:Hk,Root:lg,Title:cg,Toast:ng,ToastAction:og,ToastClose:Kc,ToastDescription:rg,ToastProvider:tg,ToastTitle:ig,ToastViewport:ag,Viewport:sg,createToastScope:Bte},Symbol.toStringTag,{value:"Module"})),Jf=e=>typeof e=="boolean"?`${e}`:e===0?"0":e,np=dy,mg=(e,a)=>n=>{var t;if((a==null?void 0:a.variants)==null)return np(e,n==null?void 0:n.class,n==null?void 0:n.className);const{variants:i,defaultVariants:r}=a,o=Object.keys(i).map(d=>{const p=n==null?void 0:n[d],u=r==null?void 0:r[d];if(p===null)return null;const g=Jf(p)||Jf(u);return i[d][g]}),s=n&&Object.entries(n).reduce((d,p)=>{let[u,g]=p;return g===void 0||(d[u]=g),d},{}),l=a==null||(t=a.compoundVariants)===null||t===void 0?void 0:t.reduce((d,p)=>{let{class:u,className:g,...b}=p;return Object.entries(b).every(v=>{let[A,f]=v;return Array.isArray(f)?f.includes({...r,...s}[A]):{...r,...s}[A]===f})?[...d,u,g]:d},[]);return np(e,o,l,n==null?void 0:n.class,n==null?void 0:n.className)},che=Object.freeze(Object.defineProperty({__proto__:null,cva:mg,cx:np},Symbol.toStringTag,{value:"Module"}));function ni(...e){return HP(dy(e))}const dhe=Object.freeze(Object.defineProperty({__proto__:null,cn:ni},Symbol.toStringTag,{value:"Module"})),Yk=Hk,gg=M.forwardRef(({className:e,...a},n)=>J.jsx(sg,{ref:n,className:ni("fixed bottom-0 z-[10003] flex max-h-screen w-full flex-col p-4 sm:right-0 md:max-w-[420px]",e),...a}));gg.displayName=sg.displayName;const nae=mg("group pointer-events-auto relative flex w-full items-center justify-between space-x-4 overflow-hidden rounded-md border p-6 pr-8 shadow-lg transition-all data-[swipe=cancel]:translate-x-0 data-[swipe=end]:translate-x-[var(--radix-toast-swipe-end-x)] data-[swipe=move]:translate-x-[var(--radix-toast-swipe-move-x)] data-[swipe=move]:transition-none data-[state=open]:animate-in data-[state=closed]:animate-out data-[swipe=end]:animate-out data-[state=closed]:fade-out-80 data-[state=closed]:slide-out-to-right-full data-[state=open]:slide-in-from-top-full data-[state=open]:sm:slide-in-from-bottom-full",{variants:{variant:{default:"border bg-background text-foreground",success:"border bg-white text-foreground",destructive:"destructive group border-destructive bg-destructive text-destructive-foreground"}},defaultVariants:{variant:"default"}}),hg=M.forwardRef(({className:e,variant:a,...n},t)=>J.jsx(lg,{ref:t,className:ni(nae({variant:a}),e),...n}));hg.displayName=lg.displayName;const Kk=M.forwardRef(({className:e,...a},n)=>J.jsx(ug,{ref:n,className:ni("inline-flex h-8 shrink-0 items-center justify-center rounded-md border bg-transparent px-3 text-sm font-medium ring-offset-background transition-colors hover:bg-secondary focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 group-[.destructive]:border-muted/40 group-[.destructive]:hover:border-destructive/30 group-[.destructive]:hover:bg-destructive group-[.destructive]:hover:text-destructive-foreground group-[.destructive]:focus:ring-destructive",e),...a}));Kk.displayName=ug.displayName;const fg=M.forwardRef(({className:e,...a},n)=>J.jsx(pg,{ref:n,className:ni("absolute right-2 top-2 rounded-md p-1 text-foreground/50 opacity-0 transition-opacity hover:text-foreground focus:opacity-100 focus:outline-none focus:ring-2 group-hover:opacity-100 group-[.destructive]:text-red-300 group-[.destructive]:hover:text-red-50 group-[.destructive]:focus:ring-red-400 group-[.destructive]:focus:ring-offset-red-600",e),"toast-close":"",...a,children:J.jsx(VP,{className:"h-4 w-4"})}));fg.displayName=pg.displayName;const vg=M.forwardRef(({className:e,...a},n)=>J.jsx(cg,{ref:n,className:ni("text-sm font-semibold",e),...a}));vg.displayName=cg.displayName;const bg=M.forwardRef(({className:e,...a},n)=>J.jsx(dg,{ref:n,className:ni("text-sm opacity-90",e),...a}));bg.displayName=dg.displayName;const uhe=Object.freeze(Object.defineProperty({__proto__:null,Toast:hg,ToastAction:Kk,ToastClose:fg,ToastDescription:bg,ToastProvider:Yk,ToastTitle:vg,ToastViewport:gg},Symbol.toStringTag,{value:"Module"}));function Zk(){const{toasts:e}=Ok();return J.jsxs(Yk,{children:[e.map(function({id:a,title:n,description:t,action:i,icon:r,...o}){return J.jsxs(hg,{...o,children:[J.jsxs("div",{className:"flex items-start gap-3",children:[r&&J.jsx("div",{className:"shrink-0 mt-0.5",children:r}),J.jsxs("div",{className:"grid gap-1",children:[n&&J.jsx(vg,{children:n}),t&&J.jsx(bg,{children:t})]})]}),i,J.jsx(fg,{})]},a)}),J.jsx(gg,{})]})}const phe=Object.freeze(Object.defineProperty({__proto__:null,Toaster:Zk},Symbol.toStringTag,{value:"Module"}));function iae(e){if(typeof document>"u")return;let a=document.head||document.getElementsByTagName("head")[0],n=document.createElement("style");n.type="text/css",a.appendChild(n),n.styleSheet?n.styleSheet.cssText=e:n.appendChild(document.createTextNode(e))}const rae=e=>{switch(e){case"success":return lae;case"info":return dae;case"warning":return cae;case"error":return uae;default:return null}},oae=Array(12).fill(0),sae=({visible:e,className:a})=>W.createElement("div",{className:["sonner-loading-wrapper",a].filter(Boolean).join(" "),"data-visible":e},W.createElement("div",{className:"sonner-spinner"},oae.map((n,t)=>W.createElement("div",{className:"sonner-loading-bar",key:`spinner-bar-${t}`})))),lae=W.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 20 20",fill:"currentColor",height:"20",width:"20"},W.createElement("path",{fillRule:"evenodd",d:"M10 18a8 8 0 100-16 8 8 0 000 16zm3.857-9.809a.75.75 0 00-1.214-.882l-3.483 4.79-1.88-1.88a.75.75 0 10-1.06 1.061l2.5 2.5a.75.75 0 001.137-.089l4-5.5z",clipRule:"evenodd"})),cae=W.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor",height:"20",width:"20"},W.createElement("path",{fillRule:"evenodd",d:"M9.401 3.003c1.155-2 4.043-2 5.197 0l7.355 12.748c1.154 2-.29 4.5-2.599 4.5H4.645c-2.309 0-3.752-2.5-2.598-4.5L9.4 3.003zM12 8.25a.75.75 0 01.75.75v3.75a.75.75 0 01-1.5 0V9a.75.75 0 01.75-.75zm0 8.25a.75.75 0 100-1.5.75.75 0 000 1.5z",clipRule:"evenodd"})),dae=W.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 20 20",fill:"currentColor",height:"20",width:"20"},W.createElement("path",{fillRule:"evenodd",d:"M18 10a8 8 0 11-16 0 8 8 0 0116 0zm-7-4a1 1 0 11-2 0 1 1 0 012 0zM9 9a.75.75 0 000 1.5h.253a.25.25 0 01.244.304l-.459 2.066A1.75 1.75 0 0010.747 15H11a.75.75 0 000-1.5h-.253a.25.25 0 01-.244-.304l.459-2.066A1.75 1.75 0 009.253 9H9z",clipRule:"evenodd"})),uae=W.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 20 20",fill:"currentColor",height:"20",width:"20"},W.createElement("path",{fillRule:"evenodd",d:"M18 10a8 8 0 11-16 0 8 8 0 0116 0zm-8-5a.75.75 0 01.75.75v4.5a.75.75 0 01-1.5 0v-4.5A.75.75 0 0110 5zm0 10a1 1 0 100-2 1 1 0 000 2z",clipRule:"evenodd"})),pae=W.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"},W.createElement("line",{x1:"18",y1:"6",x2:"6",y2:"18"}),W.createElement("line",{x1:"6",y1:"6",x2:"18",y2:"18"})),mae=()=>{const[e,a]=W.useState(document.hidden);return W.useEffect(()=>{const n=()=>{a(document.hidden)};return document.addEventListener("visibilitychange",n),()=>window.removeEventListener("visibilitychange",n)},[]),e};let ip=1;class gae{constructor(){this.subscribe=a=>(this.subscribers.push(a),()=>{const n=this.subscribers.indexOf(a);this.subscribers.splice(n,1)}),this.publish=a=>{this.subscribers.forEach(n=>n(a))},this.addToast=a=>{this.publish(a),this.toasts=[...this.toasts,a]},this.create=a=>{var n;const{message:t,...i}=a,r=typeof(a==null?void 0:a.id)=="number"||((n=a.id)==null?void 0:n.length)>0?a.id:ip++,o=this.toasts.find(l=>l.id===r),s=a.dismissible===void 0?!0:a.dismissible;return this.dismissedToasts.has(r)&&this.dismissedToasts.delete(r),o?this.toasts=this.toasts.map(l=>l.id===r?(this.publish({...l,...a,id:r,title:t}),{...l,...a,id:r,dismissible:s,title:t}):l):this.addToast({title:t,...i,dismissible:s,id:r}),r},this.dismiss=a=>(a?(this.dismissedToasts.add(a),requestAnimationFrame(()=>this.subscribers.forEach(n=>n({id:a,dismiss:!0})))):this.toasts.forEach(n=>{this.subscribers.forEach(t=>t({id:n.id,dismiss:!0}))}),a),this.message=(a,n)=>this.create({...n,message:a}),this.error=(a,n)=>this.create({...n,message:a,type:"error"}),this.success=(a,n)=>this.create({...n,type:"success",message:a}),this.info=(a,n)=>this.create({...n,type:"info",message:a}),this.warning=(a,n)=>this.create({...n,type:"warning",message:a}),this.loading=(a,n)=>this.create({...n,type:"loading",message:a}),this.promise=(a,n)=>{if(!n)return;let t;n.loading!==void 0&&(t=this.create({...n,promise:a,type:"loading",message:n.loading,description:typeof n.description!="function"?n.description:void 0}));const i=Promise.resolve(a instanceof Function?a():a);let r=t!==void 0,o;const s=i.then(async d=>{if(o=["resolve",d],W.isValidElement(d))r=!1,this.create({id:t,type:"default",message:d});else if(fae(d)&&!d.ok){r=!1;const u=typeof n.error=="function"?await n.error(`HTTP error! status: ${d.status}`):n.error,g=typeof n.description=="function"?await n.description(`HTTP error! status: ${d.status}`):n.description,v=typeof u=="object"&&!W.isValidElement(u)?u:{message:u};this.create({id:t,type:"error",description:g,...v})}else if(d instanceof Error){r=!1;const u=typeof n.error=="function"?await n.error(d):n.error,g=typeof n.description=="function"?await n.description(d):n.description,v=typeof u=="object"&&!W.isValidElement(u)?u:{message:u};this.create({id:t,type:"error",description:g,...v})}else if(n.success!==void 0){r=!1;const u=typeof n.success=="function"?await n.success(d):n.success,g=typeof n.description=="function"?await n.description(d):n.description,v=typeof u=="object"&&!W.isValidElement(u)?u:{message:u};this.create({id:t,type:"success",description:g,...v})}}).catch(async d=>{if(o=["reject",d],n.error!==void 0){r=!1;const p=typeof n.error=="function"?await n.error(d):n.error,u=typeof n.description=="function"?await n.description(d):n.description,b=typeof p=="object"&&!W.isValidElement(p)?p:{message:p};this.create({id:t,type:"error",description:u,...b})}}).finally(()=>{r&&(this.dismiss(t),t=void 0),n.finally==null||n.finally.call(n)}),l=()=>new Promise((d,p)=>s.then(()=>o[0]==="reject"?p(o[1]):d(o[1])).catch(p));return typeof t!="string"&&typeof t!="number"?{unwrap:l}:Object.assign(t,{unwrap:l})},this.custom=(a,n)=>{const t=(n==null?void 0:n.id)||ip++;return this.create({jsx:a(t),id:t,...n}),t},this.getActiveToasts=()=>this.toasts.filter(a=>!this.dismissedToasts.has(a.id)),this.subscribers=[],this.toasts=[],this.dismissedToasts=new Set}}const Gt=new gae,hae=(e,a)=>{const n=(a==null?void 0:a.id)||ip++;return Gt.addToast({title:e,...a,id:n}),n},fae=e=>e&&typeof e=="object"&&"ok"in e&&typeof e.ok=="boolean"&&"status"in e&&typeof e.status=="number",vae=hae,bae=()=>Gt.toasts,yae=()=>Gt.getActiveToasts(),kae=Object.assign(vae,{success:Gt.success,info:Gt.info,warning:Gt.warning,error:Gt.error,custom:Gt.custom,message:Gt.message,promise:Gt.promise,dismiss:Gt.dismiss,loading:Gt.loading},{getHistory:bae,getToasts:yae});iae("[data-sonner-toaster][dir=ltr],html[dir=ltr]{--toast-icon-margin-start:-3px;--toast-icon-margin-end:4px;--toast-svg-margin-start:-1px;--toast-svg-margin-end:0px;--toast-button-margin-start:auto;--toast-button-margin-end:0;--toast-close-button-start:0;--toast-close-button-end:unset;--toast-close-button-transform:translate(-35%, -35%)}[data-sonner-toaster][dir=rtl],html[dir=rtl]{--toast-icon-margin-start:4px;--toast-icon-margin-end:-3px;--toast-svg-margin-start:0px;--toast-svg-margin-end:-1px;--toast-button-margin-start:0;--toast-button-margin-end:auto;--toast-close-button-start:unset;--toast-close-button-end:0;--toast-close-button-transform:translate(35%, -35%)}[data-sonner-toaster]{position:fixed;width:var(--width);font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;--gray1:hsl(0, 0%, 99%);--gray2:hsl(0, 0%, 97.3%);--gray3:hsl(0, 0%, 95.1%);--gray4:hsl(0, 0%, 93%);--gray5:hsl(0, 0%, 90.9%);--gray6:hsl(0, 0%, 88.7%);--gray7:hsl(0, 0%, 85.8%);--gray8:hsl(0, 0%, 78%);--gray9:hsl(0, 0%, 56.1%);--gray10:hsl(0, 0%, 52.3%);--gray11:hsl(0, 0%, 43.5%);--gray12:hsl(0, 0%, 9%);--border-radius:8px;box-sizing:border-box;padding:0;margin:0;list-style:none;outline:0;z-index:999999999;transition:transform .4s ease}@media (hover:none) and (pointer:coarse){[data-sonner-toaster][data-lifted=true]{transform:none}}[data-sonner-toaster][data-x-position=right]{right:var(--offset-right)}[data-sonner-toaster][data-x-position=left]{left:var(--offset-left)}[data-sonner-toaster][data-x-position=center]{left:50%;transform:translateX(-50%)}[data-sonner-toaster][data-y-position=top]{top:var(--offset-top)}[data-sonner-toaster][data-y-position=bottom]{bottom:var(--offset-bottom)}[data-sonner-toast]{--y:translateY(100%);--lift-amount:calc(var(--lift) * var(--gap));z-index:var(--z-index);position:absolute;opacity:0;transform:var(--y);touch-action:none;transition:transform .4s,opacity .4s,height .4s,box-shadow .2s;box-sizing:border-box;outline:0;overflow-wrap:anywhere}[data-sonner-toast][data-styled=true]{padding:16px;background:var(--normal-bg);border:1px solid var(--normal-border);color:var(--normal-text);border-radius:var(--border-radius);box-shadow:0 4px 12px rgba(0,0,0,.1);width:var(--width);font-size:13px;display:flex;align-items:center;gap:6px}[data-sonner-toast]:focus-visible{box-shadow:0 4px 12px rgba(0,0,0,.1),0 0 0 2px rgba(0,0,0,.2)}[data-sonner-toast][data-y-position=top]{top:0;--y:translateY(-100%);--lift:1;--lift-amount:calc(1 * var(--gap))}[data-sonner-toast][data-y-position=bottom]{bottom:0;--y:translateY(100%);--lift:-1;--lift-amount:calc(var(--lift) * var(--gap))}[data-sonner-toast][data-styled=true] [data-description]{font-weight:400;line-height:1.4;color:#3f3f3f}[data-rich-colors=true][data-sonner-toast][data-styled=true] [data-description]{color:inherit}[data-sonner-toaster][data-sonner-theme=dark] [data-description]{color:#e8e8e8}[data-sonner-toast][data-styled=true] [data-title]{font-weight:500;line-height:1.5;color:inherit}[data-sonner-toast][data-styled=true] [data-icon]{display:flex;height:16px;width:16px;position:relative;justify-content:flex-start;align-items:center;flex-shrink:0;margin-left:var(--toast-icon-margin-start);margin-right:var(--toast-icon-margin-end)}[data-sonner-toast][data-promise=true] [data-icon]>svg{opacity:0;transform:scale(.8);transform-origin:center;animation:sonner-fade-in .3s ease forwards}[data-sonner-toast][data-styled=true] [data-icon]>*{flex-shrink:0}[data-sonner-toast][data-styled=true] [data-icon] svg{margin-left:var(--toast-svg-margin-start);margin-right:var(--toast-svg-margin-end)}[data-sonner-toast][data-styled=true] [data-content]{display:flex;flex-direction:column;gap:2px}[data-sonner-toast][data-styled=true] [data-button]{border-radius:4px;padding-left:8px;padding-right:8px;height:24px;font-size:12px;color:var(--normal-bg);background:var(--normal-text);margin-left:var(--toast-button-margin-start);margin-right:var(--toast-button-margin-end);border:none;font-weight:500;cursor:pointer;outline:0;display:flex;align-items:center;flex-shrink:0;transition:opacity .4s,box-shadow .2s}[data-sonner-toast][data-styled=true] [data-button]:focus-visible{box-shadow:0 0 0 2px rgba(0,0,0,.4)}[data-sonner-toast][data-styled=true] [data-button]:first-of-type{margin-left:var(--toast-button-margin-start);margin-right:var(--toast-button-margin-end)}[data-sonner-toast][data-styled=true] [data-cancel]{color:var(--normal-text);background:rgba(0,0,0,.08)}[data-sonner-toaster][data-sonner-theme=dark] [data-sonner-toast][data-styled=true] [data-cancel]{background:rgba(255,255,255,.3)}[data-sonner-toast][data-styled=true] [data-close-button]{position:absolute;left:var(--toast-close-button-start);right:var(--toast-close-button-end);top:0;height:20px;width:20px;display:flex;justify-content:center;align-items:center;padding:0;color:var(--gray12);background:var(--normal-bg);border:1px solid var(--gray4);transform:var(--toast-close-button-transform);border-radius:50%;cursor:pointer;z-index:1;transition:opacity .1s,background .2s,border-color .2s}[data-sonner-toast][data-styled=true] [data-close-button]:focus-visible{box-shadow:0 4px 12px rgba(0,0,0,.1),0 0 0 2px rgba(0,0,0,.2)}[data-sonner-toast][data-styled=true] [data-disabled=true]{cursor:not-allowed}[data-sonner-toast][data-styled=true]:hover [data-close-button]:hover{background:var(--gray2);border-color:var(--gray5)}[data-sonner-toast][data-swiping=true]::before{content:'';position:absolute;left:-100%;right:-100%;height:100%;z-index:-1}[data-sonner-toast][data-y-position=top][data-swiping=true]::before{bottom:50%;transform:scaleY(3) translateY(50%)}[data-sonner-toast][data-y-position=bottom][data-swiping=true]::before{top:50%;transform:scaleY(3) translateY(-50%)}[data-sonner-toast][data-swiping=false][data-removed=true]::before{content:'';position:absolute;inset:0;transform:scaleY(2)}[data-sonner-toast][data-expanded=true]::after{content:'';position:absolute;left:0;height:calc(var(--gap) + 1px);bottom:100%;width:100%}[data-sonner-toast][data-mounted=true]{--y:translateY(0);opacity:1}[data-sonner-toast][data-expanded=false][data-front=false]{--scale:var(--toasts-before) * 0.05 + 1;--y:translateY(calc(var(--lift-amount) * var(--toasts-before))) scale(calc(-1 * var(--scale)));height:var(--front-toast-height)}[data-sonner-toast]>*{transition:opacity .4s}[data-sonner-toast][data-x-position=right]{right:0}[data-sonner-toast][data-x-position=left]{left:0}[data-sonner-toast][data-expanded=false][data-front=false][data-styled=true]>*{opacity:0}[data-sonner-toast][data-visible=false]{opacity:0;pointer-events:none}[data-sonner-toast][data-mounted=true][data-expanded=true]{--y:translateY(calc(var(--lift) * var(--offset)));height:var(--initial-height)}[data-sonner-toast][data-removed=true][data-front=true][data-swipe-out=false]{--y:translateY(calc(var(--lift) * -100%));opacity:0}[data-sonner-toast][data-removed=true][data-front=false][data-swipe-out=false][data-expanded=true]{--y:translateY(calc(var(--lift) * var(--offset) + var(--lift) * -100%));opacity:0}[data-sonner-toast][data-removed=true][data-front=false][data-swipe-out=false][data-expanded=false]{--y:translateY(40%);opacity:0;transition:transform .5s,opacity .2s}[data-sonner-toast][data-removed=true][data-front=false]::before{height:calc(var(--initial-height) + 20%)}[data-sonner-toast][data-swiping=true]{transform:var(--y) translateY(var(--swipe-amount-y,0)) translateX(var(--swipe-amount-x,0));transition:none}[data-sonner-toast][data-swiped=true]{user-select:none}[data-sonner-toast][data-swipe-out=true][data-y-position=bottom],[data-sonner-toast][data-swipe-out=true][data-y-position=top]{animation-duration:.2s;animation-timing-function:ease-out;animation-fill-mode:forwards}[data-sonner-toast][data-swipe-out=true][data-swipe-direction=left]{animation-name:swipe-out-left}[data-sonner-toast][data-swipe-out=true][data-swipe-direction=right]{animation-name:swipe-out-right}[data-sonner-toast][data-swipe-out=true][data-swipe-direction=up]{animation-name:swipe-out-up}[data-sonner-toast][data-swipe-out=true][data-swipe-direction=down]{animation-name:swipe-out-down}@keyframes swipe-out-left{from{transform:var(--y) translateX(var(--swipe-amount-x));opacity:1}to{transform:var(--y) translateX(calc(var(--swipe-amount-x) - 100%));opacity:0}}@keyframes swipe-out-right{from{transform:var(--y) translateX(var(--swipe-amount-x));opacity:1}to{transform:var(--y) translateX(calc(var(--swipe-amount-x) + 100%));opacity:0}}@keyframes swipe-out-up{from{transform:var(--y) translateY(var(--swipe-amount-y));opacity:1}to{transform:var(--y) translateY(calc(var(--swipe-amount-y) - 100%));opacity:0}}@keyframes swipe-out-down{from{transform:var(--y) translateY(var(--swipe-amount-y));opacity:1}to{transform:var(--y) translateY(calc(var(--swipe-amount-y) + 100%));opacity:0}}@media (max-width:600px){[data-sonner-toaster]{position:fixed;right:var(--mobile-offset-right);left:var(--mobile-offset-left);width:100%}[data-sonner-toaster][dir=rtl]{left:calc(var(--mobile-offset-left) * -1)}[data-sonner-toaster] [data-sonner-toast]{left:0;right:0;width:calc(100% - var(--mobile-offset-left) * 2)}[data-sonner-toaster][data-x-position=left]{left:var(--mobile-offset-left)}[data-sonner-toaster][data-y-position=bottom]{bottom:var(--mobile-offset-bottom)}[data-sonner-toaster][data-y-position=top]{top:var(--mobile-offset-top)}[data-sonner-toaster][data-x-position=center]{left:var(--mobile-offset-left);right:var(--mobile-offset-right);transform:none}}[data-sonner-toaster][data-sonner-theme=light]{--normal-bg:#fff;--normal-border:var(--gray4);--normal-text:var(--gray12);--success-bg:hsl(143, 85%, 96%);--success-border:hsl(145, 92%, 87%);--success-text:hsl(140, 100%, 27%);--info-bg:hsl(208, 100%, 97%);--info-border:hsl(221, 91%, 93%);--info-text:hsl(210, 92%, 45%);--warning-bg:hsl(49, 100%, 97%);--warning-border:hsl(49, 91%, 84%);--warning-text:hsl(31, 92%, 45%);--error-bg:hsl(359, 100%, 97%);--error-border:hsl(359, 100%, 94%);--error-text:hsl(360, 100%, 45%)}[data-sonner-toaster][data-sonner-theme=light] [data-sonner-toast][data-invert=true]{--normal-bg:#000;--normal-border:hsl(0, 0%, 20%);--normal-text:var(--gray1)}[data-sonner-toaster][data-sonner-theme=dark] [data-sonner-toast][data-invert=true]{--normal-bg:#fff;--normal-border:var(--gray3);--normal-text:var(--gray12)}[data-sonner-toaster][data-sonner-theme=dark]{--normal-bg:#000;--normal-bg-hover:hsl(0, 0%, 12%);--normal-border:hsl(0, 0%, 20%);--normal-border-hover:hsl(0, 0%, 25%);--normal-text:var(--gray1);--success-bg:hsl(150, 100%, 6%);--success-border:hsl(147, 100%, 12%);--success-text:hsl(150, 86%, 65%);--info-bg:hsl(215, 100%, 6%);--info-border:hsl(223, 43%, 17%);--info-text:hsl(216, 87%, 65%);--warning-bg:hsl(64, 100%, 6%);--warning-border:hsl(60, 100%, 9%);--warning-text:hsl(46, 87%, 65%);--error-bg:hsl(358, 76%, 10%);--error-border:hsl(357, 89%, 16%);--error-text:hsl(358, 100%, 81%)}[data-sonner-toaster][data-sonner-theme=dark] [data-sonner-toast] [data-close-button]{background:var(--normal-bg);border-color:var(--normal-border);color:var(--normal-text)}[data-sonner-toaster][data-sonner-theme=dark] [data-sonner-toast] [data-close-button]:hover{background:var(--normal-bg-hover);border-color:var(--normal-border-hover)}[data-rich-colors=true][data-sonner-toast][data-type=success]{background:var(--success-bg);border-color:var(--success-border);color:var(--success-text)}[data-rich-colors=true][data-sonner-toast][data-type=success] [data-close-button]{background:var(--success-bg);border-color:var(--success-border);color:var(--success-text)}[data-rich-colors=true][data-sonner-toast][data-type=info]{background:var(--info-bg);border-color:var(--info-border);color:var(--info-text)}[data-rich-colors=true][data-sonner-toast][data-type=info] [data-close-button]{background:var(--info-bg);border-color:var(--info-border);color:var(--info-text)}[data-rich-colors=true][data-sonner-toast][data-type=warning]{background:var(--warning-bg);border-color:var(--warning-border);color:var(--warning-text)}[data-rich-colors=true][data-sonner-toast][data-type=warning] [data-close-button]{background:var(--warning-bg);border-color:var(--warning-border);color:var(--warning-text)}[data-rich-colors=true][data-sonner-toast][data-type=error]{background:var(--error-bg);border-color:var(--error-border);color:var(--error-text)}[data-rich-colors=true][data-sonner-toast][data-type=error] [data-close-button]{background:var(--error-bg);border-color:var(--error-border);color:var(--error-text)}.sonner-loading-wrapper{--size:16px;height:var(--size);width:var(--size);position:absolute;inset:0;z-index:10}.sonner-loading-wrapper[data-visible=false]{transform-origin:center;animation:sonner-fade-out .2s ease forwards}.sonner-spinner{position:relative;top:50%;left:50%;height:var(--size);width:var(--size)}.sonner-loading-bar{animation:sonner-spin 1.2s linear infinite;background:var(--gray11);border-radius:6px;height:8%;left:-10%;position:absolute;top:-3.9%;width:24%}.sonner-loading-bar:first-child{animation-delay:-1.2s;transform:rotate(.0001deg) translate(146%)}.sonner-loading-bar:nth-child(2){animation-delay:-1.1s;transform:rotate(30deg) translate(146%)}.sonner-loading-bar:nth-child(3){animation-delay:-1s;transform:rotate(60deg) translate(146%)}.sonner-loading-bar:nth-child(4){animation-delay:-.9s;transform:rotate(90deg) translate(146%)}.sonner-loading-bar:nth-child(5){animation-delay:-.8s;transform:rotate(120deg) translate(146%)}.sonner-loading-bar:nth-child(6){animation-delay:-.7s;transform:rotate(150deg) translate(146%)}.sonner-loading-bar:nth-child(7){animation-delay:-.6s;transform:rotate(180deg) translate(146%)}.sonner-loading-bar:nth-child(8){animation-delay:-.5s;transform:rotate(210deg) translate(146%)}.sonner-loading-bar:nth-child(9){animation-delay:-.4s;transform:rotate(240deg) translate(146%)}.sonner-loading-bar:nth-child(10){animation-delay:-.3s;transform:rotate(270deg) translate(146%)}.sonner-loading-bar:nth-child(11){animation-delay:-.2s;transform:rotate(300deg) translate(146%)}.sonner-loading-bar:nth-child(12){animation-delay:-.1s;transform:rotate(330deg) translate(146%)}@keyframes sonner-fade-in{0%{opacity:0;transform:scale(.8)}100%{opacity:1;transform:scale(1)}}@keyframes sonner-fade-out{0%{opacity:1;transform:scale(1)}100%{opacity:0;transform:scale(.8)}}@keyframes sonner-spin{0%{opacity:1}100%{opacity:.15}}@media (prefers-reduced-motion){.sonner-loading-bar,[data-sonner-toast],[data-sonner-toast]>*{transition:none!important;animation:none!important}}.sonner-loader{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);transform-origin:center;transition:opacity .2s,transform .2s}.sonner-loader[data-visible=false]{opacity:0;transform:scale(.8) translate(-50%,-50%)}");function Ss(e){return e.label!==void 0}const wae=3,Aae="24px",Sae="16px",Qf=4e3,Cae=356,Dae=14,Tae=45,Eae=200;function La(...e){return e.filter(Boolean).join(" ")}function Pae(e){const[a,n]=e.split("-"),t=[];return a&&t.push(a),n&&t.push(n),t}const _ae=e=>{var a,n,t,i,r,o,s,l,d;const{invert:p,toast:u,unstyled:g,interacting:b,setHeights:v,visibleToasts:A,heights:f,index:S,toasts:C,expanded:T,removeToast:E,defaultRichColors:P,closeButton:I,style:L,cancelButtonStyle:N,actionButtonStyle:Z,className:R="",descriptionClassName:Y="",duration:$,position:F,gap:j,expandByDefault:H,classNames:X,icons:ie,closeButtonAriaLabel:te="Close toast"}=e,[oe,ae]=W.useState(null),[Me,Ne]=W.useState(null),[re,de]=W.useState(!1),[q,ge]=W.useState(!1),[Ot,Ee]=W.useState(!1),[Bt,ia]=W.useState(!1),[ra,oa]=W.useState(!1),[jn,Kt]=W.useState(0),[va,ba]=W.useState(0),aa=W.useRef(u.duration||$||Qf),ya=W.useRef(null),Pt=W.useRef(null),Zt=S===0,pt=S+1<=A,At=u.type,ka=u.dismissible!==!1,Or=u.className||"",sa=u.descriptionClassName||"",He=W.useMemo(()=>f.findIndex(pe=>pe.toastId===u.id)||0,[f,u.id]),Ni=W.useMemo(()=>{var pe;return(pe=u.closeButton)!=null?pe:I},[u.closeButton,I]),on=W.useMemo(()=>u.duration||$||Qf,[u.duration,$]),wa=W.useRef(0),Pe=W.useRef(0),Na=W.useRef(0),Nt=W.useRef(null),[sn,ln]=F.split("-"),De=W.useMemo(()=>f.reduce((pe,V,Mt)=>Mt>=He?pe:pe+V.height,0),[f,He]),Je=mae(),ne=u.invert||p,Oe=At==="loading";Pe.current=W.useMemo(()=>He*j+De,[He,De]),W.useEffect(()=>{aa.current=on},[on]),W.useEffect(()=>{de(!0)},[]),W.useEffect(()=>{const pe=Pt.current;if(pe){const V=pe.getBoundingClientRect().height;return ba(V),v(Mt=>[{toastId:u.id,height:V,position:u.position},...Mt]),()=>v(Mt=>Mt.filter($t=>$t.toastId!==u.id))}},[v,u.id]),W.useLayoutEffect(()=>{if(!re)return;const pe=Pt.current,V=pe.style.height;pe.style.height="auto";const Mt=pe.getBoundingClientRect().height;pe.style.height=V,ba(Mt),v($t=>$t.find(Ve=>Ve.toastId===u.id)?$t.map(Ve=>Ve.toastId===u.id?{...Ve,height:Mt}:Ve):[{toastId:u.id,height:Mt,position:u.position},...$t])},[re,u.title,u.description,v,u.id,u.jsx,u.action,u.cancel]);const _t=W.useCallback(()=>{ge(!0),Kt(Pe.current),v(pe=>pe.filter(V=>V.toastId!==u.id)),setTimeout(()=>{E(u)},Eae)},[u,E,v,Pe]);W.useEffect(()=>{if(u.promise&&At==="loading"||u.duration===1/0||u.type==="loading")return;let pe;return T||b||Je?(()=>{if(Na.current<wa.current){const $t=new Date().getTime()-wa.current;aa.current=aa.current-$t}Na.current=new Date().getTime()})():(()=>{aa.current!==1/0&&(wa.current=new Date().getTime(),pe=setTimeout(()=>{u.onAutoClose==null||u.onAutoClose.call(u,u),_t()},aa.current))})(),()=>clearTimeout(pe)},[T,b,u,At,Je,_t]),W.useEffect(()=>{u.delete&&(_t(),u.onDismiss==null||u.onDismiss.call(u,u))},[_t,u.delete]);function hi(){var pe;if(ie!=null&&ie.loading){var V;return W.createElement("div",{className:La(X==null?void 0:X.loader,u==null||(V=u.classNames)==null?void 0:V.loader,"sonner-loader"),"data-visible":At==="loading"},ie.loading)}return W.createElement(sae,{className:La(X==null?void 0:X.loader,u==null||(pe=u.classNames)==null?void 0:pe.loader),visible:At==="loading"})}const cn=u.icon||(ie==null?void 0:ie[At])||rae(At);var Aa,Fi;return W.createElement("li",{tabIndex:0,ref:Pt,className:La(R,Or,X==null?void 0:X.toast,u==null||(a=u.classNames)==null?void 0:a.toast,X==null?void 0:X.default,X==null?void 0:X[At],u==null||(n=u.classNames)==null?void 0:n[At]),"data-sonner-toast":"","data-rich-colors":(Aa=u.richColors)!=null?Aa:P,"data-styled":!(u.jsx||u.unstyled||g),"data-mounted":re,"data-promise":!!u.promise,"data-swiped":ra,"data-removed":q,"data-visible":pt,"data-y-position":sn,"data-x-position":ln,"data-index":S,"data-front":Zt,"data-swiping":Ot,"data-dismissible":ka,"data-type":At,"data-invert":ne,"data-swipe-out":Bt,"data-swipe-direction":Me,"data-expanded":!!(T||H&&re),"data-testid":u.testId,style:{"--index":S,"--toasts-before":S,"--z-index":C.length-S,"--offset":`${q?jn:Pe.current}px`,"--initial-height":H?"auto":`${va}px`,...L,...u.style},onDragEnd:()=>{Ee(!1),ae(null),Nt.current=null},onPointerDown:pe=>{pe.button!==2&&(Oe||!ka||(ya.current=new Date,Kt(Pe.current),pe.target.setPointerCapture(pe.pointerId),pe.target.tagName!=="BUTTON"&&(Ee(!0),Nt.current={x:pe.clientX,y:pe.clientY})))},onPointerUp:()=>{var pe,V,Mt;if(Bt||!ka)return;Nt.current=null;const $t=Number(((pe=Pt.current)==null?void 0:pe.style.getPropertyValue("--swipe-amount-x").replace("px",""))||0),Jt=Number(((V=Pt.current)==null?void 0:V.style.getPropertyValue("--swipe-amount-y").replace("px",""))||0),Ve=new Date().getTime()-((Mt=ya.current)==null?void 0:Mt.getTime()),ue=oe==="x"?$t:Jt,On=Math.abs(ue)/Ve;if(Math.abs(ue)>=Tae||On>.11){Kt(Pe.current),u.onDismiss==null||u.onDismiss.call(u,u),Ne(oe==="x"?$t>0?"right":"left":Jt>0?"down":"up"),_t(),ia(!0);return}else{var Se,Ft;(Se=Pt.current)==null||Se.style.setProperty("--swipe-amount-x","0px"),(Ft=Pt.current)==null||Ft.style.setProperty("--swipe-amount-y","0px")}oa(!1),Ee(!1),ae(null)},onPointerMove:pe=>{var V,Mt,$t;if(!Nt.current||!ka||((V=window.getSelection())==null?void 0:V.toString().length)>0)return;const Ve=pe.clientY-Nt.current.y,ue=pe.clientX-Nt.current.x;var On;const Se=(On=e.swipeDirections)!=null?On:Pae(F);!oe&&(Math.abs(ue)>1||Math.abs(Ve)>1)&&ae(Math.abs(ue)>Math.abs(Ve)?"x":"y");let Ft={x:0,y:0};const rs=la=>1/(1.5+Math.abs(la)/20);if(oe==="y"){if(Se.includes("top")||Se.includes("bottom"))if(Se.includes("top")&&Ve<0||Se.includes("bottom")&&Ve>0)Ft.y=Ve;else{const la=Ve*rs(Ve);Ft.y=Math.abs(la)<Math.abs(Ve)?la:Ve}}else if(oe==="x"&&(Se.includes("left")||Se.includes("right")))if(Se.includes("left")&&ue<0||Se.includes("right")&&ue>0)Ft.x=ue;else{const la=ue*rs(ue);Ft.x=Math.abs(la)<Math.abs(ue)?la:ue}(Math.abs(Ft.x)>0||Math.abs(Ft.y)>0)&&oa(!0),(Mt=Pt.current)==null||Mt.style.setProperty("--swipe-amount-x",`${Ft.x}px`),($t=Pt.current)==null||$t.style.setProperty("--swipe-amount-y",`${Ft.y}px`)}},Ni&&!u.jsx&&At!=="loading"?W.createElement("button",{"aria-label":te,"data-disabled":Oe,"data-close-button":!0,onClick:Oe||!ka?()=>{}:()=>{_t(),u.onDismiss==null||u.onDismiss.call(u,u)},className:La(X==null?void 0:X.closeButton,u==null||(t=u.classNames)==null?void 0:t.closeButton)},(Fi=ie==null?void 0:ie.close)!=null?Fi:pae):null,(At||u.icon||u.promise)&&u.icon!==null&&((ie==null?void 0:ie[At])!==null||u.icon)?W.createElement("div",{"data-icon":"",className:La(X==null?void 0:X.icon,u==null||(i=u.classNames)==null?void 0:i.icon)},u.promise||u.type==="loading"&&!u.icon?u.icon||hi():null,u.type!=="loading"?cn:null):null,W.createElement("div",{"data-content":"",className:La(X==null?void 0:X.content,u==null||(r=u.classNames)==null?void 0:r.content)},W.createElement("div",{"data-title":"",className:La(X==null?void 0:X.title,u==null||(o=u.classNames)==null?void 0:o.title)},u.jsx?u.jsx:typeof u.title=="function"?u.title():u.title),u.description?W.createElement("div",{"data-description":"",className:La(Y,sa,X==null?void 0:X.description,u==null||(s=u.classNames)==null?void 0:s.description)},typeof u.description=="function"?u.description():u.description):null),W.isValidElement(u.cancel)?u.cancel:u.cancel&&Ss(u.cancel)?W.createElement("button",{"data-button":!0,"data-cancel":!0,style:u.cancelButtonStyle||N,onClick:pe=>{Ss(u.cancel)&&ka&&(u.cancel.onClick==null||u.cancel.onClick.call(u.cancel,pe),_t())},className:La(X==null?void 0:X.cancelButton,u==null||(l=u.classNames)==null?void 0:l.cancelButton)},u.cancel.label):null,W.isValidElement(u.action)?u.action:u.action&&Ss(u.action)?W.createElement("button",{"data-button":!0,"data-action":!0,style:u.actionButtonStyle||Z,onClick:pe=>{Ss(u.action)&&(u.action.onClick==null||u.action.onClick.call(u.action,pe),!pe.defaultPrevented&&_t())},className:La(X==null?void 0:X.actionButton,u==null||(d=u.classNames)==null?void 0:d.actionButton)},u.action.label):null)};function Xf(){if(typeof window>"u"||typeof document>"u")return"ltr";const e=document.documentElement.getAttribute("dir");return e==="auto"||!e?window.getComputedStyle(document.documentElement).direction:e}function xae(e,a){const n={};return[e,a].forEach((t,i)=>{const r=i===1,o=r?"--mobile-offset":"--offset",s=r?Sae:Aae;function l(d){["top","right","bottom","left"].forEach(p=>{n[`${o}-${p}`]=typeof d=="number"?`${d}px`:d})}typeof t=="number"||typeof t=="string"?l(t):typeof t=="object"?["top","right","bottom","left"].forEach(d=>{t[d]===void 0?n[`${o}-${d}`]=s:n[`${o}-${d}`]=typeof t[d]=="number"?`${t[d]}px`:t[d]}):l(s)}),n}function Iae(){const[e,a]=W.useState([]);return W.useEffect(()=>Gt.subscribe(n=>{if(n.dismiss){setTimeout(()=>{Lu.flushSync(()=>{a(t=>t.filter(i=>i.id!==n.id))})});return}setTimeout(()=>{Lu.flushSync(()=>{a(t=>{const i=t.findIndex(r=>r.id===n.id);return i!==-1?[...t.slice(0,i),{...t[i],...n},...t.slice(i+1)]:[n,...t]})})})}),[]),{toasts:e}}const Jk=W.forwardRef(function(a,n){const{id:t,invert:i,position:r="bottom-right",hotkey:o=["altKey","KeyT"],expand:s,closeButton:l,className:d,offset:p,mobileOffset:u,theme:g="light",richColors:b,duration:v,style:A,visibleToasts:f=wae,toastOptions:S,dir:C=Xf(),gap:T=Dae,icons:E,containerAriaLabel:P="Notifications"}=a,[I,L]=W.useState([]),N=W.useMemo(()=>t?I.filter(re=>re.toasterId===t):I.filter(re=>!re.toasterId),[I,t]),Z=W.useMemo(()=>Array.from(new Set([r].concat(N.filter(re=>re.position).map(re=>re.position)))),[N,r]),[R,Y]=W.useState([]),[$,F]=W.useState(!1),[j,H]=W.useState(!1),[X,ie]=W.useState(g!=="system"?g:typeof window<"u"&&window.matchMedia&&window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light"),te=W.useRef(null),oe=o.join("+").replace(/Key/g,"").replace(/Digit/g,""),ae=W.useRef(null),Me=W.useRef(!1),Ne=W.useCallback(re=>{L(de=>{var q;return(q=de.find(ge=>ge.id===re.id))!=null&&q.delete||Gt.dismiss(re.id),de.filter(({id:ge})=>ge!==re.id)})},[]);return W.useEffect(()=>Gt.subscribe(re=>{if(re.dismiss){requestAnimationFrame(()=>{L(de=>de.map(q=>q.id===re.id?{...q,delete:!0}:q))});return}setTimeout(()=>{Lu.flushSync(()=>{L(de=>{const q=de.findIndex(ge=>ge.id===re.id);return q!==-1?[...de.slice(0,q),{...de[q],...re},...de.slice(q+1)]:[re,...de]})})})}),[I]),W.useEffect(()=>{if(g!=="system"){ie(g);return}if(g==="system"&&(window.matchMedia&&window.matchMedia("(prefers-color-scheme: dark)").matches?ie("dark"):ie("light")),typeof window>"u")return;const re=window.matchMedia("(prefers-color-scheme: dark)");try{re.addEventListener("change",({matches:de})=>{ie(de?"dark":"light")})}catch{re.addListener(({matches:q})=>{try{ie(q?"dark":"light")}catch{}})}},[g]),W.useEffect(()=>{I.length<=1&&F(!1)},[I]),W.useEffect(()=>{const re=de=>{var q;if(o.every(Ee=>de[Ee]||de.code===Ee)){var Ot;F(!0),(Ot=te.current)==null||Ot.focus()}de.code==="Escape"&&(document.activeElement===te.current||(q=te.current)!=null&&q.contains(document.activeElement))&&F(!1)};return document.addEventListener("keydown",re),()=>document.removeEventListener("keydown",re)},[o]),W.useEffect(()=>{if(te.current)return()=>{ae.current&&(ae.current.focus({preventScroll:!0}),ae.current=null,Me.current=!1)}},[te.current]),W.createElement("section",{ref:n,"aria-label":`${P} ${oe}`,tabIndex:-1,"aria-live":"polite","aria-relevant":"additions text","aria-atomic":"false",suppressHydrationWarning:!0},Z.map((re,de)=>{var q;const[ge,Ot]=re.split("-");return N.length?W.createElement("ol",{key:re,dir:C==="auto"?Xf():C,tabIndex:-1,ref:te,className:d,"data-sonner-toaster":!0,"data-sonner-theme":X,"data-y-position":ge,"data-x-position":Ot,style:{"--front-toast-height":`${((q=R[0])==null?void 0:q.height)||0}px`,"--width":`${Cae}px`,"--gap":`${T}px`,...A,...xae(p,u)},onBlur:Ee=>{Me.current&&!Ee.currentTarget.contains(Ee.relatedTarget)&&(Me.current=!1,ae.current&&(ae.current.focus({preventScroll:!0}),ae.current=null))},onFocus:Ee=>{Ee.target instanceof HTMLElement&&Ee.target.dataset.dismissible==="false"||Me.current||(Me.current=!0,ae.current=Ee.relatedTarget)},onMouseEnter:()=>F(!0),onMouseMove:()=>F(!0),onMouseLeave:()=>{j||F(!1)},onDragEnd:()=>F(!1),onPointerDown:Ee=>{Ee.target instanceof HTMLElement&&Ee.target.dataset.dismissible==="false"||H(!0)},onPointerUp:()=>H(!1)},N.filter(Ee=>!Ee.position&&de===0||Ee.position===re).map((Ee,Bt)=>{var ia,ra;return W.createElement(_ae,{key:Ee.id,icons:E,index:Bt,toast:Ee,defaultRichColors:b,duration:(ia=S==null?void 0:S.duration)!=null?ia:v,className:S==null?void 0:S.className,descriptionClassName:S==null?void 0:S.descriptionClassName,invert:i,visibleToasts:f,closeButton:(ra=S==null?void 0:S.closeButton)!=null?ra:l,interacting:j,position:re,style:S==null?void 0:S.style,unstyled:S==null?void 0:S.unstyled,classNames:S==null?void 0:S.classNames,cancelButtonStyle:S==null?void 0:S.cancelButtonStyle,actionButtonStyle:S==null?void 0:S.actionButtonStyle,closeButtonAriaLabel:S==null?void 0:S.closeButtonAriaLabel,removeToast:Ne,toasts:N.filter(oa=>oa.position==Ee.position),heights:R.filter(oa=>oa.position==Ee.position),setHeights:Y,expandByDefault:s,gap:T,expanded:$,swipeDirections:a.swipeDirections})})):null}))}),mhe=Object.freeze(Object.defineProperty({__proto__:null,Toaster:Jk,toast:kae,useSonner:Iae},Symbol.toStringTag,{value:"Module"}));var Rae=(e,a,n,t,i,r,o,s)=>{let l=document.documentElement,d=["light","dark"];function p(b){(Array.isArray(e)?e:[e]).forEach(v=>{let A=v==="class",f=A&&r?i.map(S=>r[S]||S):i;A?(l.classList.remove(...f),l.classList.add(r&&r[b]?r[b]:b)):l.setAttribute(v,b)}),u(b)}function u(b){s&&d.includes(b)&&(l.style.colorScheme=b)}function g(){return window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light"}if(t)p(t);else try{let b=localStorage.getItem(a)||n,v=o&&b==="system"?g():b;p(v)}catch{}},zae=M.createContext(void 0),Mae={setTheme:e=>{},themes:[]},Nae=()=>{var e;return(e=M.useContext(zae))!=null?e:Mae};M.memo(({forcedTheme:e,storageKey:a,attribute:n,enableSystem:t,enableColorScheme:i,defaultTheme:r,value:o,themes:s,nonce:l,scriptProps:d})=>{let p=JSON.stringify([n,a,r,e,s,o,t,i]).slice(1,-1);return M.createElement("script",{...d,suppressHydrationWarning:!0,nonce:typeof window>"u"?l:"",dangerouslySetInnerHTML:{__html:`(${Rae.toString()})(${p})`}})});const yg=M.createContext({overrides:{},setOverrides:()=>{},resetOverrides:()=>{}});function Fae({children:e}){const[a,n]=M.useState({}),t=M.useCallback(r=>n(r),[]),i=M.useCallback(()=>n({}),[]);return J.jsx(yg.Provider,{value:{overrides:a,setOverrides:t,resetOverrides:i},children:e})}function ghe(e){const{setOverrides:a,resetOverrides:n}=M.useContext(yg);M.useEffect(()=>(a(e),()=>n()),[])}const Lae={toast:"group toast font-base44 group-[.toaster]:bg-background group-[.toaster]:text-foreground group-[.toaster]:border-border group-[.toaster]:shadow-lg",description:"group-[.toast]:text-muted-foreground",actionButton:"group-[.toast]:bg-primary group-[.toast]:text-primary-foreground",cancelButton:"group-[.toast]:bg-muted group-[.toast]:text-muted-foreground",success:"[&_[data-icon]]:text-green-500"};function jae(e){const{theme:a="system"}=Nae(),{overrides:n}=M.useContext(yg),{classNames:t,...i}=n.toastOptions??{};return J.jsx(Jk,{theme:a,className:"toaster group",toastOptions:{...i,classNames:{...Lae,...t}},...e,closeButton:n.closeButton??e.closeButton})}const Qk=$P,Oae=WP,Bae=GP,Xk=mg("z-50 overflow-hidden rounded-md border px-3 py-1.5 text-sm shadow-md animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 origin-[--radix-tooltip-content-transform-origin]",{variants:{variant:{default:"bg-popover text-popover-foreground",dark:"font-base44 border-gray-900 bg-gray-900 text-white",light:"border-gray-200 bg-white text-gray-900"}},defaultVariants:{variant:"default"}}),kg=M.forwardRef(({className:e,sideOffset:a=4,variant:n,...t},i)=>J.jsx(cy,{ref:i,sideOffset:a,className:ni(Xk({variant:n}),e),...t}));kg.displayName=cy.displayName;const ew=M.forwardRef(({className:e,...a},n)=>J.jsx(kg,{ref:n,variant:"dark",className:e,...a}));ew.displayName="DarkTooltipContent";const hhe=Object.freeze(Object.defineProperty({__proto__:null,DarkTooltipContent:ew,Tooltip:Oae,TooltipContent:kg,TooltipProvider:Qk,TooltipTrigger:Bae,tooltipContentVariants:Xk},Symbol.toStringTag,{value:"Module"})),Uae=!1;function wg(){return!!(window.wixMobileNativeBridge&&(typeof window.wixMobileNativeBridge=="function"||Uae)&&window.wixMobileNativeBridge.general.getHostName)}let $l=new Set,Ag=new Set,Ao=!1,Ai=null;function fhe(e){Ao||$l.add(e)}function vhe(e){Ao||(Ag.add(e),Ai&&cancelAnimationFrame(Ai),Ai=requestAnimationFrame(()=>{Ai=requestAnimationFrame(()=>{qae()})}))}function qae(){var a;Ao||$l.size===0||!Array.from($l).every(n=>Ag.has(n))||(Ao=!0,wg()&&(a=window.wixMobileNativeBridge)!=null&&a.base44.actions.onContentReady&&window.wixMobileNativeBridge.base44.actions.onContentReady().catch(n=>{}))}function bhe(){Ai&&(cancelAnimationFrame(Ai),Ai=null),$l=new Set,Ag=new Set,Ao=!1}function Vae(){return M.useMemo(()=>{const e=wg();return{isNativeMobile:e,general:{getHostName:async()=>{var a;if(e&&((a=window.wixMobileNativeBridge)!=null&&a.base44.general.getHostName))return await window.wixMobileNativeBridge.base44.general.getHostName()}},actions:{onContentReady:async()=>{var a;if(e&&((a=window.wixMobileNativeBridge)!=null&&a.base44.actions.onContentReady))return await window.wixMobileNativeBridge.base44.actions.onContentReady()},onError:async()=>{var a;if(e&&((a=window.wixMobileNativeBridge)!=null&&a.base44.actions.onError))return await window.wixMobileNativeBridge.base44.actions.onError()},onItemClicked:async({id:a,data:n})=>{var t;if(e&&((t=window.wixMobileNativeBridge)!=null&&t.base44.actions.onItemClicked))return await window.wixMobileNativeBridge.base44.actions.onItemClicked({id:a,data:n})},addAppProcess:async({appId:a,appName:n})=>{var t;if(e&&((t=window.wixMobileNativeBridge)!=null&&t.base44.actions.addAppProcess))return await window.wixMobileNativeBridge.base44.actions.addAppProcess({appId:a,appName:n})},handlePageNotFoundRetry:async()=>{var a;if(e&&((a=window.wixMobileNativeBridge)!=null&&a.base44.actions.handlePageNotFoundRetry))return await window.wixMobileNativeBridge.base44.actions.handlePageNotFoundRetry()},setBottomTabsVisible:async({visible:a})=>{var n;if(e&&((n=window.wixMobileNativeBridge)!=null&&n.base44.actions.setBottomTabsVisible))return await window.wixMobileNativeBridge.base44.actions.setBottomTabsVisible({visible:a})}},navigation:{openBottomSheet:async({uri:a,maxHeightPercentage:n})=>{var t;e&&((t=window.wixMobileNativeBridge)!=null&&t.base44.navigation.openBottomSheet)&&await window.wixMobileNativeBridge.base44.navigation.openBottomSheet({uri:a,maxHeightPercentage:n})},showModal:async({screenName:a,passProps:n})=>{var t;e&&((t=window.wixMobileNativeBridge)!=null&&t.base44.navigation.showModal)&&await window.wixMobileNativeBridge.base44.navigation.showModal({screenName:a,passProps:n})},showWebViewDialog:async({url:a,widthPercentage:n,heightPercentage:t})=>{var i;if(e&&((i=window.wixMobileNativeBridge)!=null&&i.base44.navigation.showWebViewDialog))return await window.wixMobileNativeBridge.base44.navigation.showWebViewDialog({url:a,widthPercentage:n,heightPercentage:t})},switchToTab:async({screenId:a})=>{var n;e&&((n=window.wixMobileNativeBridge)!=null&&n.base44.navigation.switchToTab)&&await window.wixMobileNativeBridge.base44.navigation.switchToTab({screenId:a})},dismissOverlay:async()=>{var a;e&&((a=window.wixMobileNativeBridge)!=null&&a.base44.navigation.dismissOverlay)&&await window.wixMobileNativeBridge.base44.navigation.dismissOverlay()},dismissModal:async()=>{var a;e&&((a=window.wixMobileNativeBridge)!=null&&a.base44.navigation.dismissModal)&&await window.wixMobileNativeBridge.base44.navigation.dismissModal()},dismissAllModals:async()=>{var a;e&&((a=window.wixMobileNativeBridge)!=null&&a.base44.navigation.dismissAllModals)&&await window.wixMobileNativeBridge.base44.navigation.dismissAllModals()},notifyWebOverlayVisibilityChanged:async({isVisible:a,color:n})=>{var t;e&&((t=window.wixMobileNativeBridge)!=null&&t.base44.navigation.notifyWebOverlayVisibilityChanged)&&await window.wixMobileNativeBridge.base44.navigation.notifyWebOverlayVisibilityChanged({isVisible:a,color:n})},push:async({screenName:a,passProps:n})=>{var t;e&&((t=window.wixMobileNativeBridge)!=null&&t.base44.navigation.push)&&await window.wixMobileNativeBridge.base44.navigation.push({screenName:a,passProps:n})},pop:async()=>{var a;e&&((a=window.wixMobileNativeBridge)!=null&&a.base44.navigation.pop)&&await window.wixMobileNativeBridge.base44.navigation.pop()},requestWebViewNavigation:async({url:a})=>{var n;if(e&&((n=window.wixMobileNativeBridge)!=null&&n.base44.navigation.requestWebViewNavigation))return await window.wixMobileNativeBridge.base44.navigation.requestWebViewNavigation({url:a})}},linking:{openUrl:async({url:a})=>{var n;if(e&&((n=window.wixMobileNativeBridge)!=null&&n.base44.linking.openUrl))return await window.wixMobileNativeBridge.base44.linking.openUrl({url:a})}},platform:{os:async()=>{var a;if(e&&((a=window.wixMobileNativeBridge)!=null&&a.base44.platform.os))return await window.wixMobileNativeBridge.base44.platform.os()},countryCode:async()=>{var a;if(e&&((a=window.wixMobileNativeBridge)!=null&&a.base44.platform.countryCode))return await window.wixMobileNativeBridge.base44.platform.countryCode()},setActiveWorkSpace:async({workspaceId:a})=>{var n;if(e&&((n=window.wixMobileNativeBridge)!=null&&n.base44.platform.setActiveWorkSpace))return await window.wixMobileNativeBridge.base44.platform.setActiveWorkSpace({workspaceId:a})},getLatestActiveWorkSpace:async()=>{var a;if(e&&((a=window.wixMobileNativeBridge)!=null&&a.base44.platform.getLatestActiveWorkSpace))return await window.wixMobileNativeBridge.base44.platform.getLatestActiveWorkSpace()}},auth:{logOut:async()=>{var a;if(e&&((a=window.wixMobileNativeBridge)!=null&&a.base44.auth.logOut))return await window.wixMobileNativeBridge.base44.auth.logOut()}},analytics:{logEvent:async({eventName:a,params:n})=>{var t;if(e&&((t=window.wixMobileNativeBridge)!=null&&t.base44.analytics.logEvent))return await window.wixMobileNativeBridge.base44.analytics.logEvent({eventName:a,params:n})}}}},[])}const tw=M.createContext(null);function yhe({children:e}){const{platform:a,isNativeMobile:n}=Vae(),[t,i]=M.useState(void 0);M.useEffect(()=>{n&&a.os().then(i)},[a,n]);const r=M.useMemo(()=>({platformOS:t,isIOS:t==="ios",isAndroid:t==="android",shouldHidePlanAndBilling:!1}),[t]);return J.jsx(tw.Provider,{value:r,children:e})}function khe(){const e=M.useContext(tw);return e||{platformOS:void 0,isIOS:!1,isAndroid:!1,shouldHidePlanAndBilling:!1}}var aw=YP();const Wl=Go(aw),whe=_c({__proto__:null,default:Wl},[aw]),jt=[];for(let e=0;e<256;++e)jt.push((e+256).toString(16).slice(1));function $ae(e,a=0){return(jt[e[a+0]]+jt[e[a+1]]+jt[e[a+2]]+jt[e[a+3]]+"-"+jt[e[a+4]]+jt[e[a+5]]+"-"+jt[e[a+6]]+jt[e[a+7]]+"-"+jt[e[a+8]]+jt[e[a+9]]+"-"+jt[e[a+10]]+jt[e[a+11]]+jt[e[a+12]]+jt[e[a+13]]+jt[e[a+14]]+jt[e[a+15]]).toLowerCase()}let Yd;const Wae=new Uint8Array(16);function Gae(){if(!Yd){if(typeof crypto>"u"||!crypto.getRandomValues)throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");Yd=crypto.getRandomValues.bind(crypto)}return Yd(Wae)}const Hae=typeof crypto<"u"&&crypto.randomUUID&&crypto.randomUUID.bind(crypto),ev={randomUUID:Hae};function Yae(e,a,n){var i;e=e||{};const t=e.random??((i=e.rng)==null?void 0:i.call(e))??Gae();if(t.length<16)throw new Error("Random bytes length must be >= 16");if(t[6]=t[6]&15|64,t[8]=t[8]&63|128,a){if(n=n||0,n<0||n+16>a.length)throw new RangeError(`UUID byte range ${n}:${n+15} is out of buffer bounds`);for(let r=0;r<16;++r)a[n+r]=t[r];return a}return $ae(t)}function Kae(e,a,n){return ev.randomUUID&&!a&&!e?ev.randomUUID():Yae(e,a,n)}let Sg={};function hl(e,a){Sg[e]=a}function fl(e){delete Sg[e]}function Zae(){return{...Sg}}const Xa=Object.create(null);Xa.open="0";Xa.close="1";Xa.ping="2";Xa.pong="3";Xa.message="4";Xa.upgrade="5";Xa.noop="6";const vl=Object.create(null);Object.keys(Xa).forEach(e=>{vl[Xa[e]]=e});const rp={type:"error",data:"parser error"},nw=typeof Blob=="function"||typeof Blob<"u"&&Object.prototype.toString.call(Blob)==="[object BlobConstructor]",iw=typeof ArrayBuffer=="function",rw=e=>typeof ArrayBuffer.isView=="function"?ArrayBuffer.isView(e):e&&e.buffer instanceof ArrayBuffer,Cg=({type:e,data:a},n,t)=>nw&&a instanceof Blob?n?t(a):tv(a,t):iw&&(a instanceof ArrayBuffer||rw(a))?n?t(a):tv(new Blob([a]),t):t(Xa[e]+(a||"")),tv=(e,a)=>{const n=new FileReader;return n.onload=function(){const t=n.result.split(",")[1];a("b"+(t||""))},n.readAsDataURL(e)};function av(e){return e instanceof Uint8Array?e:e instanceof ArrayBuffer?new Uint8Array(e):new Uint8Array(e.buffer,e.byteOffset,e.byteLength)}let Kd;function Jae(e,a){if(nw&&e.data instanceof Blob)return e.data.arrayBuffer().then(av).then(a);if(iw&&(e.data instanceof ArrayBuffer||rw(e.data)))return a(av(e.data));Cg(e,!1,n=>{Kd||(Kd=new TextEncoder),a(Kd.encode(n))})}const nv="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",no=typeof Uint8Array>"u"?[]:new Uint8Array(256);for(let e=0;e<nv.length;e++)no[nv.charCodeAt(e)]=e;const Qae=e=>{let a=e.length*.75,n=e.length,t,i=0,r,o,s,l;e[e.length-1]==="="&&(a--,e[e.length-2]==="="&&a--);const d=new ArrayBuffer(a),p=new Uint8Array(d);for(t=0;t<n;t+=4)r=no[e.charCodeAt(t)],o=no[e.charCodeAt(t+1)],s=no[e.charCodeAt(t+2)],l=no[e.charCodeAt(t+3)],p[i++]=r<<2|o>>4,p[i++]=(o&15)<<4|s>>2,p[i++]=(s&3)<<6|l&63;return d},Xae=typeof ArrayBuffer=="function",Dg=(e,a)=>{if(typeof e!="string")return{type:"message",data:ow(e,a)};const n=e.charAt(0);return n==="b"?{type:"message",data:ene(e.substring(1),a)}:vl[n]?e.length>1?{type:vl[n],data:e.substring(1)}:{type:vl[n]}:rp},ene=(e,a)=>{if(Xae){const n=Qae(e);return ow(n,a)}else return{base64:!0,data:e}},ow=(e,a)=>{switch(a){case"blob":return e instanceof Blob?e:new Blob([e]);case"arraybuffer":default:return e instanceof ArrayBuffer?e:e.buffer}},sw="",tne=(e,a)=>{const n=e.length,t=new Array(n);let i=0;e.forEach((r,o)=>{Cg(r,!1,s=>{t[o]=s,++i===n&&a(t.join(sw))})})},ane=(e,a)=>{const n=e.split(sw),t=[];for(let i=0;i<n.length;i++){const r=Dg(n[i],a);if(t.push(r),r.type==="error")break}return t};function nne(){return new TransformStream({transform(e,a){Jae(e,n=>{const t=n.length;let i;if(t<126)i=new Uint8Array(1),new DataView(i.buffer).setUint8(0,t);else if(t<65536){i=new Uint8Array(3);const r=new DataView(i.buffer);r.setUint8(0,126),r.setUint16(1,t)}else{i=new Uint8Array(9);const r=new DataView(i.buffer);r.setUint8(0,127),r.setBigUint64(1,BigInt(t))}e.data&&typeof e.data!="string"&&(i[0]|=128),a.enqueue(i),a.enqueue(n)})}})}let Zd;function Cs(e){return e.reduce((a,n)=>a+n.length,0)}function Ds(e,a){if(e[0].length===a)return e.shift();const n=new Uint8Array(a);let t=0;for(let i=0;i<a;i++)n[i]=e[0][t++],t===e[0].length&&(e.shift(),t=0);return e.length&&t<e[0].length&&(e[0]=e[0].slice(t)),n}function ine(e,a){Zd||(Zd=new TextDecoder);const n=[];let t=0,i=-1,r=!1;return new TransformStream({transform(o,s){for(n.push(o);;){if(t===0){if(Cs(n)<1)break;const l=Ds(n,1);r=(l[0]&128)===128,i=l[0]&127,i<126?t=3:i===126?t=1:t=2}else if(t===1){if(Cs(n)<2)break;const l=Ds(n,2);i=new DataView(l.buffer,l.byteOffset,l.length).getUint16(0),t=3}else if(t===2){if(Cs(n)<8)break;const l=Ds(n,8),d=new DataView(l.buffer,l.byteOffset,l.length),p=d.getUint32(0);if(p>Math.pow(2,21)-1){s.enqueue(rp);break}i=p*Math.pow(2,32)+d.getUint32(4),t=3}else{if(Cs(n)<i)break;const l=Ds(n,i);s.enqueue(Dg(r?l:Zd.decode(l),a)),t=0}if(i===0||i>e){s.enqueue(rp);break}}}})}const lw=4;function Tt(e){if(e)return rne(e)}function rne(e){for(var a in Tt.prototype)e[a]=Tt.prototype[a];return e}Tt.prototype.on=Tt.prototype.addEventListener=function(e,a){return this._callbacks=this._callbacks||{},(this._callbacks["$"+e]=this._callbacks["$"+e]||[]).push(a),this};Tt.prototype.once=function(e,a){function n(){this.off(e,n),a.apply(this,arguments)}return n.fn=a,this.on(e,n),this};Tt.prototype.off=Tt.prototype.removeListener=Tt.prototype.removeAllListeners=Tt.prototype.removeEventListener=function(e,a){if(this._callbacks=this._callbacks||{},arguments.length==0)return this._callbacks={},this;var n=this._callbacks["$"+e];if(!n)return this;if(arguments.length==1)return delete this._callbacks["$"+e],this;for(var t,i=0;i<n.length;i++)if(t=n[i],t===a||t.fn===a){n.splice(i,1);break}return n.length===0&&delete this._callbacks["$"+e],this};Tt.prototype.emit=function(e){this._callbacks=this._callbacks||{};for(var a=new Array(arguments.length-1),n=this._callbacks["$"+e],t=1;t<arguments.length;t++)a[t-1]=arguments[t];if(n){n=n.slice(0);for(var t=0,i=n.length;t<i;++t)n[t].apply(this,a)}return this};Tt.prototype.emitReserved=Tt.prototype.emit;Tt.prototype.listeners=function(e){return this._callbacks=this._callbacks||{},this._callbacks["$"+e]||[]};Tt.prototype.hasListeners=function(e){return!!this.listeners(e).length};const Zc=typeof Promise=="function"&&typeof Promise.resolve=="function"?a=>Promise.resolve().then(a):(a,n)=>n(a,0),ua=typeof self<"u"?self:typeof window<"u"?window:Function("return this")(),one="arraybuffer";function cw(e,...a){return a.reduce((n,t)=>(e.hasOwnProperty(t)&&(n[t]=e[t]),n),{})}const sne=ua.setTimeout,lne=ua.clearTimeout;function Jc(e,a){a.useNativeTimers?(e.setTimeoutFn=sne.bind(ua),e.clearTimeoutFn=lne.bind(ua)):(e.setTimeoutFn=ua.setTimeout.bind(ua),e.clearTimeoutFn=ua.clearTimeout.bind(ua))}const cne=1.33;function dne(e){return typeof e=="string"?une(e):Math.ceil((e.byteLength||e.size)*cne)}function une(e){let a=0,n=0;for(let t=0,i=e.length;t<i;t++)a=e.charCodeAt(t),a<128?n+=1:a<2048?n+=2:a<55296||a>=57344?n+=3:(t++,n+=4);return n}function dw(){return Date.now().toString(36).substring(3)+Math.random().toString(36).substring(2,5)}function pne(e){let a="";for(let n in e)e.hasOwnProperty(n)&&(a.length&&(a+="&"),a+=encodeURIComponent(n)+"="+encodeURIComponent(e[n]));return a}function mne(e){let a={},n=e.split("&");for(let t=0,i=n.length;t<i;t++){let r=n[t].split("=");a[decodeURIComponent(r[0])]=decodeURIComponent(r[1])}return a}class gne extends Error{constructor(a,n,t){super(a),this.description=n,this.context=t,this.type="TransportError"}}class Tg extends Tt{constructor(a){super(),this.writable=!1,Jc(this,a),this.opts=a,this.query=a.query,this.socket=a.socket,this.supportsBinary=!a.forceBase64}onError(a,n,t){return super.emitReserved("error",new gne(a,n,t)),this}open(){return this.readyState="opening",this.doOpen(),this}close(){return(this.readyState==="opening"||this.readyState==="open")&&(this.doClose(),this.onClose()),this}send(a){this.readyState==="open"&&this.write(a)}onOpen(){this.readyState="open",this.writable=!0,super.emitReserved("open")}onData(a){const n=Dg(a,this.socket.binaryType);this.onPacket(n)}onPacket(a){super.emitReserved("packet",a)}onClose(a){this.readyState="closed",super.emitReserved("close",a)}pause(a){}createUri(a,n={}){return a+"://"+this._hostname()+this._port()+this.opts.path+this._query(n)}_hostname(){const a=this.opts.hostname;return a.indexOf(":")===-1?a:"["+a+"]"}_port(){return this.opts.port&&(this.opts.secure&&Number(this.opts.port)!==443||!this.opts.secure&&Number(this.opts.port)!==80)?":"+this.opts.port:""}_query(a){const n=pne(a);return n.length?"?"+n:""}}class hne extends Tg{constructor(){super(...arguments),this._polling=!1}get name(){return"polling"}doOpen(){this._poll()}pause(a){this.readyState="pausing";const n=()=>{this.readyState="paused",a()};if(this._polling||!this.writable){let t=0;this._polling&&(t++,this.once("pollComplete",function(){--t||n()})),this.writable||(t++,this.once("drain",function(){--t||n()}))}else n()}_poll(){this._polling=!0,this.doPoll(),this.emitReserved("poll")}onData(a){const n=t=>{if(this.readyState==="opening"&&t.type==="open"&&this.onOpen(),t.type==="close")return this.onClose({description:"transport closed by the server"}),!1;this.onPacket(t)};ane(a,this.socket.binaryType).forEach(n),this.readyState!=="closed"&&(this._polling=!1,this.emitReserved("pollComplete"),this.readyState==="open"&&this._poll())}doClose(){const a=()=>{this.write([{type:"close"}])};this.readyState==="open"?a():this.once("open",a)}write(a){this.writable=!1,tne(a,n=>{this.doWrite(n,()=>{this.writable=!0,this.emitReserved("drain")})})}uri(){const a=this.opts.secure?"https":"http",n=this.query||{};return this.opts.timestampRequests!==!1&&(n[this.opts.timestampParam]=dw()),!this.supportsBinary&&!n.sid&&(n.b64=1),this.createUri(a,n)}}let uw=!1;try{uw=typeof XMLHttpRequest<"u"&&"withCredentials"in new XMLHttpRequest}catch{}const fne=uw;function vne(){}class bne extends hne{constructor(a){if(super(a),typeof location<"u"){const n=location.protocol==="https:";let t=location.port;t||(t=n?"443":"80"),this.xd=typeof location<"u"&&a.hostname!==location.hostname||t!==a.port}}doWrite(a,n){const t=this.request({method:"POST",data:a});t.on("success",n),t.on("error",(i,r)=>{this.onError("xhr post error",i,r)})}doPoll(){const a=this.request();a.on("data",this.onData.bind(this)),a.on("error",(n,t)=>{this.onError("xhr poll error",n,t)}),this.pollXhr=a}}let dr=class bl extends Tt{constructor(a,n,t){super(),this.createRequest=a,Jc(this,t),this._opts=t,this._method=t.method||"GET",this._uri=n,this._data=t.data!==void 0?t.data:null,this._create()}_create(){var a;const n=cw(this._opts,"agent","pfx","key","passphrase","cert","ca","ciphers","rejectUnauthorized","autoUnref");n.xdomain=!!this._opts.xd;const t=this._xhr=this.createRequest(n);try{t.open(this._method,this._uri,!0);try{if(this._opts.extraHeaders){t.setDisableHeaderCheck&&t.setDisableHeaderCheck(!0);for(let i in this._opts.extraHeaders)this._opts.extraHeaders.hasOwnProperty(i)&&t.setRequestHeader(i,this._opts.extraHeaders[i])}}catch{}if(this._method==="POST")try{t.setRequestHeader("Content-type","text/plain;charset=UTF-8")}catch{}try{t.setRequestHeader("Accept","*/*")}catch{}(a=this._opts.cookieJar)===null||a===void 0||a.addCookies(t),"withCredentials"in t&&(t.withCredentials=this._opts.withCredentials),this._opts.requestTimeout&&(t.timeout=this._opts.requestTimeout),t.onreadystatechange=()=>{var i;t.readyState===3&&((i=this._opts.cookieJar)===null||i===void 0||i.parseCookies(t.getResponseHeader("set-cookie"))),t.readyState===4&&(t.status===200||t.status===1223?this._onLoad():this.setTimeoutFn(()=>{this._onError(typeof t.status=="number"?t.status:0)},0))},t.send(this._data)}catch(i){this.setTimeoutFn(()=>{this._onError(i)},0);return}typeof document<"u"&&(this._index=bl.requestsCount++,bl.requests[this._index]=this)}_onError(a){this.emitReserved("error",a,this._xhr),this._cleanup(!0)}_cleanup(a){if(!(typeof this._xhr>"u"||this._xhr===null)){if(this._xhr.onreadystatechange=vne,a)try{this._xhr.abort()}catch{}typeof document<"u"&&delete bl.requests[this._index],this._xhr=null}}_onLoad(){const a=this._xhr.responseText;a!==null&&(this.emitReserved("data",a),this.emitReserved("success"),this._cleanup())}abort(){this._cleanup()}};dr.requestsCount=0;dr.requests={};if(typeof document<"u"){if(typeof attachEvent=="function")attachEvent("onunload",iv);else if(typeof addEventListener=="function"){const e="onpagehide"in ua?"pagehide":"unload";addEventListener(e,iv,!1)}}function iv(){for(let e in dr.requests)dr.requests.hasOwnProperty(e)&&dr.requests[e].abort()}const yne=(function(){const e=pw({xdomain:!1});return e&&e.responseType!==null})();class kne extends bne{constructor(a){super(a);const n=a&&a.forceBase64;this.supportsBinary=yne&&!n}request(a={}){return Object.assign(a,{xd:this.xd},this.opts),new dr(pw,this.uri(),a)}}function pw(e){const a=e.xdomain;try{if(typeof XMLHttpRequest<"u"&&(!a||fne))return new XMLHttpRequest}catch{}if(!a)try{return new ua[["Active"].concat("Object").join("X")]("Microsoft.XMLHTTP")}catch{}}const mw=typeof navigator<"u"&&typeof navigator.product=="string"&&navigator.product.toLowerCase()==="reactnative";class wne extends Tg{get name(){return"websocket"}doOpen(){const a=this.uri(),n=this.opts.protocols,t=mw?{}:cw(this.opts,"agent","perMessageDeflate","pfx","key","passphrase","cert","ca","ciphers","rejectUnauthorized","localAddress","protocolVersion","origin","maxPayload","family","checkServerIdentity");this.opts.extraHeaders&&(t.headers=this.opts.extraHeaders);try{this.ws=this.createSocket(a,n,t)}catch(i){return this.emitReserved("error",i)}this.ws.binaryType=this.socket.binaryType,this.addEventListeners()}addEventListeners(){this.ws.onopen=()=>{this.opts.autoUnref&&this.ws._socket.unref(),this.onOpen()},this.ws.onclose=a=>this.onClose({description:"websocket connection closed",context:a}),this.ws.onmessage=a=>this.onData(a.data),this.ws.onerror=a=>this.onError("websocket error",a)}write(a){this.writable=!1;for(let n=0;n<a.length;n++){const t=a[n],i=n===a.length-1;Cg(t,this.supportsBinary,r=>{try{this.doWrite(t,r)}catch{}i&&Zc(()=>{this.writable=!0,this.emitReserved("drain")},this.setTimeoutFn)})}}doClose(){typeof this.ws<"u"&&(this.ws.onerror=()=>{},this.ws.close(),this.ws=null)}uri(){const a=this.opts.secure?"wss":"ws",n=this.query||{};return this.opts.timestampRequests&&(n[this.opts.timestampParam]=dw()),this.supportsBinary||(n.b64=1),this.createUri(a,n)}}const Jd=ua.WebSocket||ua.MozWebSocket;class Ane extends wne{createSocket(a,n,t){return mw?new Jd(a,n,t):n?new Jd(a,n):new Jd(a)}doWrite(a,n){this.ws.send(n)}}class Sne extends Tg{get name(){return"webtransport"}doOpen(){try{this._transport=new WebTransport(this.createUri("https"),this.opts.transportOptions[this.name])}catch(a){return this.emitReserved("error",a)}this._transport.closed.then(()=>{this.onClose()}).catch(a=>{this.onError("webtransport error",a)}),this._transport.ready.then(()=>{this._transport.createBidirectionalStream().then(a=>{const n=ine(Number.MAX_SAFE_INTEGER,this.socket.binaryType),t=a.readable.pipeThrough(n).getReader(),i=nne();i.readable.pipeTo(a.writable),this._writer=i.writable.getWriter();const r=()=>{t.read().then(({done:s,value:l})=>{s||(this.onPacket(l),r())}).catch(s=>{})};r();const o={type:"open"};this.query.sid&&(o.data=`{"sid":"${this.query.sid}"}`),this._writer.write(o).then(()=>this.onOpen())})})}write(a){this.writable=!1;for(let n=0;n<a.length;n++){const t=a[n],i=n===a.length-1;this._writer.write(t).then(()=>{i&&Zc(()=>{this.writable=!0,this.emitReserved("drain")},this.setTimeoutFn)})}}doClose(){var a;(a=this._transport)===null||a===void 0||a.close()}}const Cne={websocket:Ane,webtransport:Sne,polling:kne},Dne=/^(?:(?![^:@\/?#]+:[^:@\/]*@)(http|https|ws|wss):\/\/)?((?:(([^:@\/?#]*)(?::([^:@\/?#]*))?)?@)?((?:[a-f0-9]{0,4}:){2,7}[a-f0-9]{0,4}|[^:\/?#]*)(?::(\d*))?)(((\/(?:[^?#](?![^?#\/]*\.[^?#\/.]+(?:[?#]|$)))*\/?)?([^?#\/]*))(?:\?([^#]*))?(?:#(.*))?)/,Tne=["source","protocol","authority","userInfo","user","password","host","port","relative","path","directory","file","query","anchor"];function op(e){if(e.length>8e3)throw"URI too long";const a=e,n=e.indexOf("["),t=e.indexOf("]");n!=-1&&t!=-1&&(e=e.substring(0,n)+e.substring(n,t).replace(/:/g,";")+e.substring(t,e.length));let i=Dne.exec(e||""),r={},o=14;for(;o--;)r[Tne[o]]=i[o]||"";return n!=-1&&t!=-1&&(r.source=a,r.host=r.host.substring(1,r.host.length-1).replace(/;/g,":"),r.authority=r.authority.replace("[","").replace("]","").replace(/;/g,":"),r.ipv6uri=!0),r.pathNames=Ene(r,r.path),r.queryKey=Pne(r,r.query),r}function Ene(e,a){const n=/\/{2,9}/g,t=a.replace(n,"/").split("/");return(a.slice(0,1)=="/"||a.length===0)&&t.splice(0,1),a.slice(-1)=="/"&&t.splice(t.length-1,1),t}function Pne(e,a){const n={};return a.replace(/(?:^|&)([^&=]*)=?([^&]*)/g,function(t,i,r){i&&(n[i]=r)}),n}const sp=typeof addEventListener=="function"&&typeof removeEventListener=="function",yl=[];sp&&addEventListener("offline",()=>{yl.forEach(e=>e())},!1);class Jn extends Tt{constructor(a,n){if(super(),this.binaryType=one,this.writeBuffer=[],this._prevBufferLen=0,this._pingInterval=-1,this._pingTimeout=-1,this._maxPayload=-1,this._pingTimeoutTime=1/0,a&&typeof a=="object"&&(n=a,a=null),a){const t=op(a);n.hostname=t.host,n.secure=t.protocol==="https"||t.protocol==="wss",n.port=t.port,t.query&&(n.query=t.query)}else n.host&&(n.hostname=op(n.host).host);Jc(this,n),this.secure=n.secure!=null?n.secure:typeof location<"u"&&location.protocol==="https:",n.hostname&&!n.port&&(n.port=this.secure?"443":"80"),this.hostname=n.hostname||(typeof location<"u"?location.hostname:"localhost"),this.port=n.port||(typeof location<"u"&&location.port?location.port:this.secure?"443":"80"),this.transports=[],this._transportsByName={},n.transports.forEach(t=>{const i=t.prototype.name;this.transports.push(i),this._transportsByName[i]=t}),this.opts=Object.assign({path:"/engine.io",agent:!1,withCredentials:!1,upgrade:!0,timestampParam:"t",rememberUpgrade:!1,addTrailingSlash:!0,rejectUnauthorized:!0,perMessageDeflate:{threshold:1024},transportOptions:{},closeOnBeforeunload:!1},n),this.opts.path=this.opts.path.replace(/\/$/,"")+(this.opts.addTrailingSlash?"/":""),typeof this.opts.query=="string"&&(this.opts.query=mne(this.opts.query)),sp&&(this.opts.closeOnBeforeunload&&(this._beforeunloadEventListener=()=>{this.transport&&(this.transport.removeAllListeners(),this.transport.close())},addEventListener("beforeunload",this._beforeunloadEventListener,!1)),this.hostname!=="localhost"&&(this._offlineEventListener=()=>{this._onClose("transport close",{description:"network connection lost"})},yl.push(this._offlineEventListener))),this.opts.withCredentials&&(this._cookieJar=void 0),this._open()}createTransport(a){const n=Object.assign({},this.opts.query);n.EIO=lw,n.transport=a,this.id&&(n.sid=this.id);const t=Object.assign({},this.opts,{query:n,socket:this,hostname:this.hostname,secure:this.secure,port:this.port},this.opts.transportOptions[a]);return new this._transportsByName[a](t)}_open(){if(this.transports.length===0){this.setTimeoutFn(()=>{this.emitReserved("error","No transports available")},0);return}const a=this.opts.rememberUpgrade&&Jn.priorWebsocketSuccess&&this.transports.indexOf("websocket")!==-1?"websocket":this.transports[0];this.readyState="opening";const n=this.createTransport(a);n.open(),this.setTransport(n)}setTransport(a){this.transport&&this.transport.removeAllListeners(),this.transport=a,a.on("drain",this._onDrain.bind(this)).on("packet",this._onPacket.bind(this)).on("error",this._onError.bind(this)).on("close",n=>this._onClose("transport close",n))}onOpen(){this.readyState="open",Jn.priorWebsocketSuccess=this.transport.name==="websocket",this.emitReserved("open"),this.flush()}_onPacket(a){if(this.readyState==="opening"||this.readyState==="open"||this.readyState==="closing")switch(this.emitReserved("packet",a),this.emitReserved("heartbeat"),a.type){case"open":this.onHandshake(JSON.parse(a.data));break;case"ping":this._sendPacket("pong"),this.emitReserved("ping"),this.emitReserved("pong"),this._resetPingTimeout();break;case"error":const n=new Error("server error");n.code=a.data,this._onError(n);break;case"message":this.emitReserved("data",a.data),this.emitReserved("message",a.data);break}}onHandshake(a){this.emitReserved("handshake",a),this.id=a.sid,this.transport.query.sid=a.sid,this._pingInterval=a.pingInterval,this._pingTimeout=a.pingTimeout,this._maxPayload=a.maxPayload,this.onOpen(),this.readyState!=="closed"&&this._resetPingTimeout()}_resetPingTimeout(){this.clearTimeoutFn(this._pingTimeoutTimer);const a=this._pingInterval+this._pingTimeout;this._pingTimeoutTime=Date.now()+a,this._pingTimeoutTimer=this.setTimeoutFn(()=>{this._onClose("ping timeout")},a),this.opts.autoUnref&&this._pingTimeoutTimer.unref()}_onDrain(){this.writeBuffer.splice(0,this._prevBufferLen),this._prevBufferLen=0,this.writeBuffer.length===0?this.emitReserved("drain"):this.flush()}flush(){if(this.readyState!=="closed"&&this.transport.writable&&!this.upgrading&&this.writeBuffer.length){const a=this._getWritablePackets();this.transport.send(a),this._prevBufferLen=a.length,this.emitReserved("flush")}}_getWritablePackets(){if(!(this._maxPayload&&this.transport.name==="polling"&&this.writeBuffer.length>1))return this.writeBuffer;let n=1;for(let t=0;t<this.writeBuffer.length;t++){const i=this.writeBuffer[t].data;if(i&&(n+=dne(i)),t>0&&n>this._maxPayload)return this.writeBuffer.slice(0,t);n+=2}return this.writeBuffer}_hasPingExpired(){if(!this._pingTimeoutTime)return!0;const a=Date.now()>this._pingTimeoutTime;return a&&(this._pingTimeoutTime=0,Zc(()=>{this._onClose("ping timeout")},this.setTimeoutFn)),a}write(a,n,t){return this._sendPacket("message",a,n,t),this}send(a,n,t){return this._sendPacket("message",a,n,t),this}_sendPacket(a,n,t,i){if(typeof n=="function"&&(i=n,n=void 0),typeof t=="function"&&(i=t,t=null),this.readyState==="closing"||this.readyState==="closed")return;t=t||{},t.compress=t.compress!==!1;const r={type:a,data:n,options:t};this.emitReserved("packetCreate",r),this.writeBuffer.push(r),i&&this.once("flush",i),this.flush()}close(){const a=()=>{this._onClose("forced close"),this.transport.close()},n=()=>{this.off("upgrade",n),this.off("upgradeError",n),a()},t=()=>{this.once("upgrade",n),this.once("upgradeError",n)};return(this.readyState==="opening"||this.readyState==="open")&&(this.readyState="closing",this.writeBuffer.length?this.once("drain",()=>{this.upgrading?t():a()}):this.upgrading?t():a()),this}_onError(a){if(Jn.priorWebsocketSuccess=!1,this.opts.tryAllTransports&&this.transports.length>1&&this.readyState==="opening")return this.transports.shift(),this._open();this.emitReserved("error",a),this._onClose("transport error",a)}_onClose(a,n){if(this.readyState==="opening"||this.readyState==="open"||this.readyState==="closing"){if(this.clearTimeoutFn(this._pingTimeoutTimer),this.transport.removeAllListeners("close"),this.transport.close(),this.transport.removeAllListeners(),sp&&(this._beforeunloadEventListener&&removeEventListener("beforeunload",this._beforeunloadEventListener,!1),this._offlineEventListener)){const t=yl.indexOf(this._offlineEventListener);t!==-1&&yl.splice(t,1)}this.readyState="closed",this.id=null,this.emitReserved("close",a,n),this.writeBuffer=[],this._prevBufferLen=0}}}Jn.protocol=lw;class _ne extends Jn{constructor(){super(...arguments),this._upgrades=[]}onOpen(){if(super.onOpen(),this.readyState==="open"&&this.opts.upgrade)for(let a=0;a<this._upgrades.length;a++)this._probe(this._upgrades[a])}_probe(a){let n=this.createTransport(a),t=!1;Jn.priorWebsocketSuccess=!1;const i=()=>{t||(n.send([{type:"ping",data:"probe"}]),n.once("packet",u=>{if(!t)if(u.type==="pong"&&u.data==="probe"){if(this.upgrading=!0,this.emitReserved("upgrading",n),!n)return;Jn.priorWebsocketSuccess=n.name==="websocket",this.transport.pause(()=>{t||this.readyState!=="closed"&&(p(),this.setTransport(n),n.send([{type:"upgrade"}]),this.emitReserved("upgrade",n),n=null,this.upgrading=!1,this.flush())})}else{const g=new Error("probe error");g.transport=n.name,this.emitReserved("upgradeError",g)}}))};function r(){t||(t=!0,p(),n.close(),n=null)}const o=u=>{const g=new Error("probe error: "+u);g.transport=n.name,r(),this.emitReserved("upgradeError",g)};function s(){o("transport closed")}function l(){o("socket closed")}function d(u){n&&u.name!==n.name&&r()}const p=()=>{n.removeListener("open",i),n.removeListener("error",o),n.removeListener("close",s),this.off("close",l),this.off("upgrading",d)};n.once("open",i),n.once("error",o),n.once("close",s),this.once("close",l),this.once("upgrading",d),this._upgrades.indexOf("webtransport")!==-1&&a!=="webtransport"?this.setTimeoutFn(()=>{t||n.open()},200):n.open()}onHandshake(a){this._upgrades=this._filterUpgrades(a.upgrades),super.onHandshake(a)}_filterUpgrades(a){const n=[];for(let t=0;t<a.length;t++)~this.transports.indexOf(a[t])&&n.push(a[t]);return n}}let xne=class extends _ne{constructor(a,n={}){const t=typeof a=="object"?a:n;(!t.transports||t.transports&&typeof t.transports[0]=="string")&&(t.transports=(t.transports||["polling","websocket","webtransport"]).map(i=>Cne[i]).filter(i=>!!i)),super(a,t)}};function Ine(e,a="",n){let t=e;n=n||typeof location<"u"&&location,e==null&&(e=n.protocol+"//"+n.host),typeof e=="string"&&(e.charAt(0)==="/"&&(e.charAt(1)==="/"?e=n.protocol+e:e=n.host+e),/^(https?|wss?):\/\//.test(e)||(typeof n<"u"?e=n.protocol+"//"+e:e="https://"+e),t=op(e)),t.port||(/^(http|ws)$/.test(t.protocol)?t.port="80":/^(http|ws)s$/.test(t.protocol)&&(t.port="443")),t.path=t.path||"/";const r=t.host.indexOf(":")!==-1?"["+t.host+"]":t.host;return t.id=t.protocol+"://"+r+":"+t.port+a,t.href=t.protocol+"://"+r+(n&&n.port===t.port?"":":"+t.port),t}const Rne=typeof ArrayBuffer=="function",zne=e=>typeof ArrayBuffer.isView=="function"?ArrayBuffer.isView(e):e.buffer instanceof ArrayBuffer,gw=Object.prototype.toString,Mne=typeof Blob=="function"||typeof Blob<"u"&&gw.call(Blob)==="[object BlobConstructor]",Nne=typeof File=="function"||typeof File<"u"&&gw.call(File)==="[object FileConstructor]";function Eg(e){return Rne&&(e instanceof ArrayBuffer||zne(e))||Mne&&e instanceof Blob||Nne&&e instanceof File}function kl(e,a){if(!e||typeof e!="object")return!1;if(Array.isArray(e)){for(let n=0,t=e.length;n<t;n++)if(kl(e[n]))return!0;return!1}if(Eg(e))return!0;if(e.toJSON&&typeof e.toJSON=="function"&&arguments.length===1)return kl(e.toJSON(),!0);for(const n in e)if(Object.prototype.hasOwnProperty.call(e,n)&&kl(e[n]))return!0;return!1}function Fne(e){const a=[],n=e.data,t=e;return t.data=lp(n,a),t.attachments=a.length,{packet:t,buffers:a}}function lp(e,a){if(!e)return e;if(Eg(e)){const n={_placeholder:!0,num:a.length};return a.push(e),n}else if(Array.isArray(e)){const n=new Array(e.length);for(let t=0;t<e.length;t++)n[t]=lp(e[t],a);return n}else if(typeof e=="object"&&!(e instanceof Date)){const n={};for(const t in e)Object.prototype.hasOwnProperty.call(e,t)&&(n[t]=lp(e[t],a));return n}return e}function Lne(e,a){return e.data=cp(e.data,a),delete e.attachments,e}function cp(e,a){if(!e)return e;if(e&&e._placeholder===!0){if(typeof e.num=="number"&&e.num>=0&&e.num<a.length)return a[e.num];throw new Error("illegal attachments")}else if(Array.isArray(e))for(let n=0;n<e.length;n++)e[n]=cp(e[n],a);else if(typeof e=="object")for(const n in e)Object.prototype.hasOwnProperty.call(e,n)&&(e[n]=cp(e[n],a));return e}const jne=["connect","connect_error","disconnect","disconnecting","newListener","removeListener"];var ze;(function(e){e[e.CONNECT=0]="CONNECT",e[e.DISCONNECT=1]="DISCONNECT",e[e.EVENT=2]="EVENT",e[e.ACK=3]="ACK",e[e.CONNECT_ERROR=4]="CONNECT_ERROR",e[e.BINARY_EVENT=5]="BINARY_EVENT",e[e.BINARY_ACK=6]="BINARY_ACK"})(ze||(ze={}));class One{constructor(a){this.replacer=a}encode(a){return(a.type===ze.EVENT||a.type===ze.ACK)&&kl(a)?this.encodeAsBinary({type:a.type===ze.EVENT?ze.BINARY_EVENT:ze.BINARY_ACK,nsp:a.nsp,data:a.data,id:a.id}):[this.encodeAsString(a)]}encodeAsString(a){let n=""+a.type;return(a.type===ze.BINARY_EVENT||a.type===ze.BINARY_ACK)&&(n+=a.attachments+"-"),a.nsp&&a.nsp!=="/"&&(n+=a.nsp+","),a.id!=null&&(n+=a.id),a.data!=null&&(n+=JSON.stringify(a.data,this.replacer)),n}encodeAsBinary(a){const n=Fne(a),t=this.encodeAsString(n.packet),i=n.buffers;return i.unshift(t),i}}class Pg extends Tt{constructor(a){super(),this.opts=Object.assign({reviver:void 0,maxAttachments:10},typeof a=="function"?{reviver:a}:a)}add(a){let n;if(typeof a=="string"){if(this.reconstructor)throw new Error("got plaintext data when reconstructing a packet");n=this.decodeString(a);const t=n.type===ze.BINARY_EVENT;t||n.type===ze.BINARY_ACK?(n.type=t?ze.EVENT:ze.ACK,this.reconstructor=new Bne(n),n.attachments===0&&super.emitReserved("decoded",n)):super.emitReserved("decoded",n)}else if(Eg(a)||a.base64)if(this.reconstructor)n=this.reconstructor.takeBinaryData(a),n&&(this.reconstructor=null,super.emitReserved("decoded",n));else throw new Error("got binary data when not reconstructing a packet");else throw new Error("Unknown type: "+a)}decodeString(a){let n=0;const t={type:Number(a.charAt(0))};if(ze[t.type]===void 0)throw new Error("unknown packet type "+t.type);if(t.type===ze.BINARY_EVENT||t.type===ze.BINARY_ACK){const r=n+1;for(;a.charAt(++n)!=="-"&&n!=a.length;);const o=a.substring(r,n);if(o!=Number(o)||a.charAt(n)!=="-")throw new Error("Illegal attachments");const s=Number(o);if(!Une(s)||s<0)throw new Error("Illegal attachments");if(s>this.opts.maxAttachments)throw new Error("too many attachments");t.attachments=s}if(a.charAt(n+1)==="/"){const r=n+1;for(;++n&&!(a.charAt(n)===","||n===a.length););t.nsp=a.substring(r,n)}else t.nsp="/";const i=a.charAt(n+1);if(i!==""&&Number(i)==i){const r=n+1;for(;++n;){const o=a.charAt(n);if(o==null||Number(o)!=o){--n;break}if(n===a.length)break}t.id=Number(a.substring(r,n+1))}if(a.charAt(++n)){const r=this.tryParse(a.substr(n));if(Pg.isPayloadValid(t.type,r))t.data=r;else throw new Error("invalid payload")}return t}tryParse(a){try{return JSON.parse(a,this.opts.reviver)}catch{return!1}}static isPayloadValid(a,n){switch(a){case ze.CONNECT:return rv(n);case ze.DISCONNECT:return n===void 0;case ze.CONNECT_ERROR:return typeof n=="string"||rv(n);case ze.EVENT:case ze.BINARY_EVENT:return Array.isArray(n)&&(typeof n[0]=="number"||typeof n[0]=="string"&&jne.indexOf(n[0])===-1);case ze.ACK:case ze.BINARY_ACK:return Array.isArray(n)}}destroy(){this.reconstructor&&(this.reconstructor.finishedReconstruction(),this.reconstructor=null)}}class Bne{constructor(a){this.packet=a,this.buffers=[],this.reconPack=a}takeBinaryData(a){if(this.buffers.push(a),this.buffers.length===this.reconPack.attachments){const n=Lne(this.reconPack,this.buffers);return this.finishedReconstruction(),n}return null}finishedReconstruction(){this.reconPack=null,this.buffers=[]}}const Une=Number.isInteger||function(e){return typeof e=="number"&&isFinite(e)&&Math.floor(e)===e};function rv(e){return Object.prototype.toString.call(e)==="[object Object]"}const qne=Object.freeze(Object.defineProperty({__proto__:null,Decoder:Pg,Encoder:One,get PacketType(){return ze}},Symbol.toStringTag,{value:"Module"}));function Ta(e,a,n){return e.on(a,n),function(){e.off(a,n)}}const Vne=Object.freeze({connect:1,connect_error:1,disconnect:1,disconnecting:1,newListener:1,removeListener:1});class hw extends Tt{constructor(a,n,t){super(),this.connected=!1,this.recovered=!1,this.receiveBuffer=[],this.sendBuffer=[],this._queue=[],this._queueSeq=0,this.ids=0,this.acks={},this.flags={},this.io=a,this.nsp=n,t&&t.auth&&(this.auth=t.auth),this._opts=Object.assign({},t),this.io._autoConnect&&this.open()}get disconnected(){return!this.connected}subEvents(){if(this.subs)return;const a=this.io;this.subs=[Ta(a,"open",this.onopen.bind(this)),Ta(a,"packet",this.onpacket.bind(this)),Ta(a,"error",this.onerror.bind(this)),Ta(a,"close",this.onclose.bind(this))]}get active(){return!!this.subs}connect(){return this.connected?this:(this.subEvents(),this.io._reconnecting||this.io.open(),this.io._readyState==="open"&&this.onopen(),this)}open(){return this.connect()}send(...a){return a.unshift("message"),this.emit.apply(this,a),this}emit(a,...n){var t,i,r;if(Vne.hasOwnProperty(a))throw new Error('"'+a.toString()+'" is a reserved event name');if(n.unshift(a),this._opts.retries&&!this.flags.fromQueue&&!this.flags.volatile)return this._addToQueue(n),this;const o={type:ze.EVENT,data:n};if(o.options={},o.options.compress=this.flags.compress!==!1,typeof n[n.length-1]=="function"){const p=this.ids++,u=n.pop();this._registerAckCallback(p,u),o.id=p}const s=(i=(t=this.io.engine)===null||t===void 0?void 0:t.transport)===null||i===void 0?void 0:i.writable,l=this.connected&&!(!((r=this.io.engine)===null||r===void 0)&&r._hasPingExpired());return this.flags.volatile&&!s||(l?(this.notifyOutgoingListeners(o),this.packet(o)):this.sendBuffer.push(o)),this.flags={},this}_registerAckCallback(a,n){var t;const i=(t=this.flags.timeout)!==null&&t!==void 0?t:this._opts.ackTimeout;if(i===void 0){this.acks[a]=n;return}const r=this.io.setTimeoutFn(()=>{delete this.acks[a];for(let s=0;s<this.sendBuffer.length;s++)this.sendBuffer[s].id===a&&this.sendBuffer.splice(s,1);n.call(this,new Error("operation has timed out"))},i),o=(...s)=>{this.io.clearTimeoutFn(r),n.apply(this,s)};o.withError=!0,this.acks[a]=o}emitWithAck(a,...n){return new Promise((t,i)=>{const r=(o,s)=>o?i(o):t(s);r.withError=!0,n.push(r),this.emit(a,...n)})}_addToQueue(a){let n;typeof a[a.length-1]=="function"&&(n=a.pop());const t={id:this._queueSeq++,tryCount:0,pending:!1,args:a,flags:Object.assign({fromQueue:!0},this.flags)};a.push((i,...r)=>(this._queue[0],i!==null?t.tryCount>this._opts.retries&&(this._queue.shift(),n&&n(i)):(this._queue.shift(),n&&n(null,...r)),t.pending=!1,this._drainQueue())),this._queue.push(t),this._drainQueue()}_drainQueue(a=!1){if(!this.connected||this._queue.length===0)return;const n=this._queue[0];n.pending&&!a||(n.pending=!0,n.tryCount++,this.flags=n.flags,this.emit.apply(this,n.args))}packet(a){a.nsp=this.nsp,this.io._packet(a)}onopen(){typeof this.auth=="function"?this.auth(a=>{this._sendConnectPacket(a)}):this._sendConnectPacket(this.auth)}_sendConnectPacket(a){this.packet({type:ze.CONNECT,data:this._pid?Object.assign({pid:this._pid,offset:this._lastOffset},a):a})}onerror(a){this.connected||this.emitReserved("connect_error",a)}onclose(a,n){this.connected=!1,delete this.id,this.emitReserved("disconnect",a,n),this._clearAcks()}_clearAcks(){Object.keys(this.acks).forEach(a=>{if(!this.sendBuffer.some(t=>String(t.id)===a)){const t=this.acks[a];delete this.acks[a],t.withError&&t.call(this,new Error("socket has been disconnected"))}})}onpacket(a){if(a.nsp===this.nsp)switch(a.type){case ze.CONNECT:a.data&&a.data.sid?this.onconnect(a.data.sid,a.data.pid):this.emitReserved("connect_error",new Error("It seems you are trying to reach a Socket.IO server in v2.x with a v3.x client, but they are not compatible (more information here: https://socket.io/docs/v3/migrating-from-2-x-to-3-0/)"));break;case ze.EVENT:case ze.BINARY_EVENT:this.onevent(a);break;case ze.ACK:case ze.BINARY_ACK:this.onack(a);break;case ze.DISCONNECT:this.ondisconnect();break;case ze.CONNECT_ERROR:this.destroy();const t=new Error(a.data.message);t.data=a.data.data,this.emitReserved("connect_error",t);break}}onevent(a){const n=a.data||[];a.id!=null&&n.push(this.ack(a.id)),this.connected?this.emitEvent(n):this.receiveBuffer.push(Object.freeze(n))}emitEvent(a){if(this._anyListeners&&this._anyListeners.length){const n=this._anyListeners.slice();for(const t of n)t.apply(this,a)}super.emit.apply(this,a),this._pid&&a.length&&typeof a[a.length-1]=="string"&&(this._lastOffset=a[a.length-1])}ack(a){const n=this;let t=!1;return function(...i){t||(t=!0,n.packet({type:ze.ACK,id:a,data:i}))}}onack(a){const n=this.acks[a.id];typeof n=="function"&&(delete this.acks[a.id],n.withError&&a.data.unshift(null),n.apply(this,a.data))}onconnect(a,n){this.id=a,this.recovered=n&&this._pid===n,this._pid=n,this.connected=!0,this.emitBuffered(),this._drainQueue(!0),this.emitReserved("connect")}emitBuffered(){this.receiveBuffer.forEach(a=>this.emitEvent(a)),this.receiveBuffer=[],this.sendBuffer.forEach(a=>{this.notifyOutgoingListeners(a),this.packet(a)}),this.sendBuffer=[]}ondisconnect(){this.destroy(),this.onclose("io server disconnect")}destroy(){this.subs&&(this.subs.forEach(a=>a()),this.subs=void 0),this.io._destroy(this)}disconnect(){return this.connected&&this.packet({type:ze.DISCONNECT}),this.destroy(),this.connected&&this.onclose("io client disconnect"),this}close(){return this.disconnect()}compress(a){return this.flags.compress=a,this}get volatile(){return this.flags.volatile=!0,this}timeout(a){return this.flags.timeout=a,this}onAny(a){return this._anyListeners=this._anyListeners||[],this._anyListeners.push(a),this}prependAny(a){return this._anyListeners=this._anyListeners||[],this._anyListeners.unshift(a),this}offAny(a){if(!this._anyListeners)return this;if(a){const n=this._anyListeners;for(let t=0;t<n.length;t++)if(a===n[t])return n.splice(t,1),this}else this._anyListeners=[];return this}listenersAny(){return this._anyListeners||[]}onAnyOutgoing(a){return this._anyOutgoingListeners=this._anyOutgoingListeners||[],this._anyOutgoingListeners.push(a),this}prependAnyOutgoing(a){return this._anyOutgoingListeners=this._anyOutgoingListeners||[],this._anyOutgoingListeners.unshift(a),this}offAnyOutgoing(a){if(!this._anyOutgoingListeners)return this;if(a){const n=this._anyOutgoingListeners;for(let t=0;t<n.length;t++)if(a===n[t])return n.splice(t,1),this}else this._anyOutgoingListeners=[];return this}listenersAnyOutgoing(){return this._anyOutgoingListeners||[]}notifyOutgoingListeners(a){if(this._anyOutgoingListeners&&this._anyOutgoingListeners.length){const n=this._anyOutgoingListeners.slice();for(const t of n)t.apply(this,a.data)}}}function Nr(e){e=e||{},this.ms=e.min||100,this.max=e.max||1e4,this.factor=e.factor||2,this.jitter=e.jitter>0&&e.jitter<=1?e.jitter:0,this.attempts=0}Nr.prototype.duration=function(){var e=this.ms*Math.pow(this.factor,this.attempts++);if(this.jitter){var a=Math.random(),n=Math.floor(a*this.jitter*e);e=(Math.floor(a*10)&1)==0?e-n:e+n}return Math.min(e,this.max)|0};Nr.prototype.reset=function(){this.attempts=0};Nr.prototype.setMin=function(e){this.ms=e};Nr.prototype.setMax=function(e){this.max=e};Nr.prototype.setJitter=function(e){this.jitter=e};class dp extends Tt{constructor(a,n){var t;super(),this.nsps={},this.subs=[],a&&typeof a=="object"&&(n=a,a=void 0),n=n||{},n.path=n.path||"/socket.io",this.opts=n,Jc(this,n),this.reconnection(n.reconnection!==!1),this.reconnectionAttempts(n.reconnectionAttempts||1/0),this.reconnectionDelay(n.reconnectionDelay||1e3),this.reconnectionDelayMax(n.reconnectionDelayMax||5e3),this.randomizationFactor((t=n.randomizationFactor)!==null&&t!==void 0?t:.5),this.backoff=new Nr({min:this.reconnectionDelay(),max:this.reconnectionDelayMax(),jitter:this.randomizationFactor()}),this.timeout(n.timeout==null?2e4:n.timeout),this._readyState="closed",this.uri=a;const i=n.parser||qne;this.encoder=new i.Encoder,this.decoder=new i.Decoder,this._autoConnect=n.autoConnect!==!1,this._autoConnect&&this.open()}reconnection(a){return arguments.length?(this._reconnection=!!a,a||(this.skipReconnect=!0),this):this._reconnection}reconnectionAttempts(a){return a===void 0?this._reconnectionAttempts:(this._reconnectionAttempts=a,this)}reconnectionDelay(a){var n;return a===void 0?this._reconnectionDelay:(this._reconnectionDelay=a,(n=this.backoff)===null||n===void 0||n.setMin(a),this)}randomizationFactor(a){var n;return a===void 0?this._randomizationFactor:(this._randomizationFactor=a,(n=this.backoff)===null||n===void 0||n.setJitter(a),this)}reconnectionDelayMax(a){var n;return a===void 0?this._reconnectionDelayMax:(this._reconnectionDelayMax=a,(n=this.backoff)===null||n===void 0||n.setMax(a),this)}timeout(a){return arguments.length?(this._timeout=a,this):this._timeout}maybeReconnectOnOpen(){!this._reconnecting&&this._reconnection&&this.backoff.attempts===0&&this.reconnect()}open(a){if(~this._readyState.indexOf("open"))return this;this.engine=new xne(this.uri,this.opts);const n=this.engine,t=this;this._readyState="opening",this.skipReconnect=!1;const i=Ta(n,"open",function(){t.onopen(),a&&a()}),r=s=>{this.cleanup(),this._readyState="closed",this.emitReserved("error",s),a?a(s):this.maybeReconnectOnOpen()},o=Ta(n,"error",r);if(this._timeout!==!1){const s=this._timeout,l=this.setTimeoutFn(()=>{i(),r(new Error("timeout")),n.close()},s);this.opts.autoUnref&&l.unref(),this.subs.push(()=>{this.clearTimeoutFn(l)})}return this.subs.push(i),this.subs.push(o),this}connect(a){return this.open(a)}onopen(){this.cleanup(),this._readyState="open",this.emitReserved("open");const a=this.engine;this.subs.push(Ta(a,"ping",this.onping.bind(this)),Ta(a,"data",this.ondata.bind(this)),Ta(a,"error",this.onerror.bind(this)),Ta(a,"close",this.onclose.bind(this)),Ta(this.decoder,"decoded",this.ondecoded.bind(this)))}onping(){this.emitReserved("ping")}ondata(a){try{this.decoder.add(a)}catch(n){this.onclose("parse error",n)}}ondecoded(a){Zc(()=>{this.emitReserved("packet",a)},this.setTimeoutFn)}onerror(a){this.emitReserved("error",a)}socket(a,n){let t=this.nsps[a];return t?this._autoConnect&&!t.active&&t.connect():(t=new hw(this,a,n),this.nsps[a]=t),t}_destroy(a){const n=Object.keys(this.nsps);for(const t of n)if(this.nsps[t].active)return;this._close()}_packet(a){const n=this.encoder.encode(a);for(let t=0;t<n.length;t++)this.engine.write(n[t],a.options)}cleanup(){this.subs.forEach(a=>a()),this.subs.length=0,this.decoder.destroy()}_close(){this.skipReconnect=!0,this._reconnecting=!1,this.onclose("forced close")}disconnect(){return this._close()}onclose(a,n){var t;this.cleanup(),(t=this.engine)===null||t===void 0||t.close(),this.backoff.reset(),this._readyState="closed",this.emitReserved("close",a,n),this._reconnection&&!this.skipReconnect&&this.reconnect()}reconnect(){if(this._reconnecting||this.skipReconnect)return this;const a=this;if(this.backoff.attempts>=this._reconnectionAttempts)this.backoff.reset(),this.emitReserved("reconnect_failed"),this._reconnecting=!1;else{const n=this.backoff.duration();this._reconnecting=!0;const t=this.setTimeoutFn(()=>{a.skipReconnect||(this.emitReserved("reconnect_attempt",a.backoff.attempts),!a.skipReconnect&&a.open(i=>{i?(a._reconnecting=!1,a.reconnect(),this.emitReserved("reconnect_error",i)):a.onreconnect()}))},n);this.opts.autoUnref&&t.unref(),this.subs.push(()=>{this.clearTimeoutFn(t)})}}onreconnect(){const a=this.backoff.attempts;this._reconnecting=!1,this.backoff.reset(),this.emitReserved("reconnect",a)}}const Zr={};function wl(e,a){typeof e=="object"&&(a=e,e=void 0),a=a||{};const n=Ine(e,a.path||"/socket.io"),t=n.source,i=n.id,r=n.path,o=Zr[i]&&r in Zr[i].nsps,s=a.forceNew||a["force new connection"]||a.multiplex===!1||o;let l;return s?l=new dp(t,a):(Zr[i]||(Zr[i]=new dp(t,a)),l=Zr[i]),n.query&&!a.query&&(a.query=n.queryKey),l.socket(n.path,a)}Object.assign(wl,{Manager:dp,Socket:hw,io:wl,connect:wl});function Qd(e){const a=new URLSearchParams(window.location.search);a.delete(e);const n=window.location.pathname+(a.toString()?"?"+a.toString():"");window.history.replaceState({},"",n)}function ov(e){const{or:a,and:n,...t}=e;return{...Gl(t),or:(...r)=>ov({$or:[t,...r]}),and:(...r)=>ov({$and:[t,...r]}),query:()=>Gl(t)??{}}}function Gl(e,a=49){if(a<=0)return e;if(typeof e!="function"){if(Array.isArray(e)){const n=e.map(t=>Gl(t,a-1)).filter(t=>t!=null);return n.length===0?void 0:n}else if(e!=null&&typeof e=="object"){const n={};for(const t in e){const i=Gl(e[t],a-1);i!=null&&(n[t]=i)}return Object.keys(n).length===0||Object.keys(n).length===1&&n.$options!=null?void 0:n}else if(e===null)return;return e}}var hr={},z;if(typeof window>"u"){var sv={hostname:""};z={crypto:{randomUUID:function(){throw Error("unsupported")}},navigator:{userAgent:"",onLine:!0},document:{createElement:function(){return{}},location:sv,referrer:""},screen:{width:0,height:0},location:sv,addEventListener:function(){},removeEventListener:function(){},dispatchEvent:function(){},CustomEvent:function(){}}}else z=window;var ea={DEBUG:!1,LIB_VERSION:"2.76.0"},Ea="__mp_targeting",up="__mp_recorder",$ne="__MP_RECORDER_FILENAME__",fw="__MP_TARGETING_FILENAME__";function lv(e,a){(a==null||a>e.length)&&(a=e.length);for(var n=0,t=new Array(a);n<a;n++)t[n]=e[n];return t}function cv(e,a,n,t,i,r,o){try{var s=e[r](o),l=s.value}catch(d){n(d);return}s.done?a(l):Promise.resolve(l).then(t,i)}function Qc(e){return function(){var a=this,n=arguments;return new Promise(function(t,i){var r=e.apply(a,n);function o(l){cv(r,t,i,o,s,"next",l)}function s(l){cv(r,t,i,o,s,"throw",l)}o(void 0)})}}function Al(e,a,n){return vw()?Al=Reflect.construct:Al=function(i,r,o){var s=[null];s.push.apply(s,r);var l=Function.bind.apply(i,s),d=new l;return o&&So(d,o.prototype),d},Al.apply(null,arguments)}function Wne(e,a){for(var n=0;n<a.length;n++){var t=a[n];t.enumerable=t.enumerable||!1,t.configurable=!0,"value"in t&&(t.writable=!0),Object.defineProperty(e,t.key,t)}}function rt(e,a,n){return a&&Wne(e.prototype,a),e}function Ce(){return Ce=Object.assign||function(e){for(var a=1;a<arguments.length;a++){var n=arguments[a];for(var t in n)Object.prototype.hasOwnProperty.call(n,t)&&(e[t]=n[t])}return e},Ce.apply(this,arguments)}function pp(e){return pp=Object.setPrototypeOf?Object.getPrototypeOf:function(n){return n.__proto__||Object.getPrototypeOf(n)},pp(e)}function lt(e,a){if(typeof a!="function"&&a!==null)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(a&&a.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),a&&So(e,a)}function le(e,a){return a!=null&&typeof Symbol<"u"&&a[Symbol.hasInstance]?!!a[Symbol.hasInstance](e):e instanceof a}function Gne(e){return Function.toString.call(e).indexOf("[native code]")!==-1}function Ci(e,a){if(e==null)return{};var n={},t=Object.keys(e),i,r;for(r=0;r<t.length;r++)i=t[r],!(a.indexOf(i)>=0)&&(n[i]=e[i]);return n}function So(e,a){return So=Object.setPrototypeOf||function(t,i){return t.__proto__=i,t},So(e,a)}function ce(e){"@swc/helpers - typeof";return e&&typeof Symbol<"u"&&e.constructor===Symbol?"symbol":typeof e}function Hne(e,a){if(e){if(typeof e=="string")return lv(e,a);var n=Object.prototype.toString.call(e).slice(8,-1);if(n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set")return Array.from(n);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return lv(e,a)}}function Co(e){var a=typeof Map=="function"?new Map:void 0;return Co=function(t){if(t===null||!Gne(t))return t;if(typeof t!="function")throw new TypeError("Super expression must either be null or a function");if(typeof a<"u"){if(a.has(t))return a.get(t);a.set(t,i)}function i(){return Al(t,arguments,pp(this).constructor)}return i.prototype=Object.create(t.prototype,{constructor:{value:i,enumerable:!1,writable:!0,configurable:!0}}),So(i,t)},Co(e)}function vw(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch{}return(vw=function(){return!!e})()}function B(e,a){var n=typeof Symbol<"u"&&e[Symbol.iterator]||e["@@iterator"];if(n)return(n=n.call(e)).next.bind(n);if(Array.isArray(e)||(n=Hne(e))||a){n&&(e=n);var t=0;return function(){return t>=e.length?{done:!0}:{done:!1,value:e[t++]}}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function Di(e,a){var n,t,i,r,o={label:0,sent:function(){if(i[0]&1)throw i[1];return i[1]},trys:[],ops:[]};return r={next:s(0),throw:s(1),return:s(2)},typeof Symbol=="function"&&(r[Symbol.iterator]=function(){return this}),r;function s(d){return function(p){return l([d,p])}}function l(d){if(n)throw new TypeError("Generator is already executing.");for(;o;)try{if(n=1,t&&(i=d[0]&2?t.return:d[0]?t.throw||((i=t.return)&&i.call(t),0):t.next)&&!(i=i.call(t,d[1])).done)return i;switch(t=0,i&&(d=[d[0]&2,i.value]),d[0]){case 0:case 1:i=d;break;case 4:return o.label++,{value:d[1],done:!1};case 5:o.label++,t=d[1],d=[0];continue;case 7:d=o.ops.pop(),o.trys.pop();continue;default:if(i=o.trys,!(i=i.length>0&&i[i.length-1])&&(d[0]===6||d[0]===2)){o=0;continue}if(d[0]===3&&(!i||d[1]>i[0]&&d[1]<i[3])){o.label=d[1];break}if(d[0]===6&&o.label<i[1]){o.label=i[1],i=d;break}if(i&&o.label<i[2]){o.label=i[2],o.ops.push(d);break}i[2]&&o.ops.pop(),o.trys.pop();continue}d=a.call(e,o)}catch(p){d=[6,p],t=0}finally{n=i=0}if(d[0]&5)throw d[1];return{value:d[0]?d[1]:void 0,done:!0}}}function _g(e){var a=typeof Symbol=="function"&&Symbol.iterator,n=a&&e[a],t=0;if(n)return n.call(e);if(e&&typeof e.length=="number")return{next:function(){return e&&t>=e.length&&(e=void 0),{value:e&&e[t++],done:!e}}};throw new TypeError(a?"Object is not iterable.":"Symbol.iterator is not defined.")}var Yne=Object.defineProperty,Kne=function(e,a,n){return a in e?Yne(e,a,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[a]=n},G=function(e,a,n){return Kne(e,(typeof a>"u"?"undefined":ce(a))!=="symbol"?a+"":a,n)},dv,Zne=Object.defineProperty,Jne=function(e,a,n){return a in e?Zne(e,a,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[a]=n},uv=function(e,a,n){return Jne(e,(typeof a>"u"?"undefined":ce(a))!=="symbol"?a+"":a,n)},It=(function(e){return e[e.Document=0]="Document",e[e.DocumentType=1]="DocumentType",e[e.Element=2]="Element",e[e.Text=3]="Text",e[e.CDATA=4]="CDATA",e[e.Comment=5]="Comment",e})(It||{}),pv={Node:["childNodes","parentNode","parentElement","textContent"],ShadowRoot:["host","styleSheets"],Element:["shadowRoot","querySelector","querySelectorAll"],MutationObserver:[]},mv={Node:["contains","getRootNode"],ShadowRoot:["getSelection"],Element:[],MutationObserver:["constructor"]},Ts={},Qne=function(){return!!globalThis.Zone};function xg(e){if(Ts[e])return Ts[e];var a=globalThis[e],n=a.prototype,t=e in pv?pv[e]:void 0,i=!!(t&&t.every(function(p){var u,g;return!!((g=(u=Object.getOwnPropertyDescriptor(n,p))==null?void 0:u.get)!=null&&g.toString().includes("[native code]"))})),r=e in mv?mv[e]:void 0,o=!!(r&&r.every(function(p){var u;return typeof n[p]=="function"&&((u=n[p])==null?void 0:u.toString().includes("[native code]"))}));if(i&&o&&!Qne())return Ts[e]=a.prototype,a.prototype;try{var s=document.createElement("iframe");document.body.appendChild(s);var l=s.contentWindow;if(!l)return a.prototype;var d=l[e].prototype;return document.body.removeChild(s),d?Ts[e]=d:n}catch{return n}}var Xd={};function ii(e,a,n){var t,i=e+"."+String(n);if(Xd[i])return Xd[i].call(a);var r=xg(e),o=(t=Object.getOwnPropertyDescriptor(r,n))==null?void 0:t.get;return o?(Xd[i]=o,o.call(a)):a[n]}var eu={};function bw(e,a,n){var t=e+"."+String(n);if(eu[t])return eu[t].bind(a);var i=xg(e),r=i[n];return typeof r!="function"?a[n]:(eu[t]=r,r.bind(a))}function Xne(e){return ii("Node",e,"childNodes")}function eie(e){return ii("Node",e,"parentNode")}function tie(e){return ii("Node",e,"parentElement")}function aie(e){return ii("Node",e,"textContent")}function nie(e,a){return bw("Node",e,"contains")(a)}function iie(e){return bw("Node",e,"getRootNode")()}function rie(e){return!e||!("host"in e)?null:ii("ShadowRoot",e,"host")}function oie(e){return e.styleSheets}function sie(e){return!e||!("shadowRoot"in e)?null:ii("Element",e,"shadowRoot")}function lie(e,a){return ii("Element",e,"querySelector")(a)}function cie(e,a){return ii("Element",e,"querySelectorAll")(a)}function die(){return xg("MutationObserver").constructor}function uie(e,a,n){try{if(!(a in e))return function(){};var t=e[a],i=n(t);return typeof i=="function"&&(i.prototype=i.prototype||{},Object.defineProperties(i,{__rrweb_original__:{enumerable:!1,value:t}})),e[a]=i,function(){e[a]=t}}catch{return function(){}}}var qt={childNodes:Xne,parentNode:eie,parentElement:tie,textContent:aie,contains:nie,getRootNode:iie,host:rie,styleSheets:oie,shadowRoot:sie,querySelector:lie,querySelectorAll:cie,mutationObserver:die,patch:uie};function yw(e){return e.nodeType===e.ELEMENT_NODE}function lo(e){var a=e&&"host"in e&&"mode"in e&&qt.host(e)||null;return!!(a&&"shadowRoot"in a&&qt.shadowRoot(a)===e)}function co(e){return Object.prototype.toString.call(e)==="[object ShadowRoot]"}function pie(e){return e.includes(" background-clip: text;")&&!e.includes(" -webkit-background-clip: text;")&&(e=e.replace(/\sbackground-clip:\s*text;/g," -webkit-background-clip: text; background-clip: text;")),e}function mie(e){var a=e.cssText;if(a.split('"').length<3)return a;var n=["@import","url("+JSON.stringify(e.href)+")"];return e.layerName===""?n.push("layer"):e.layerName&&n.push("layer("+e.layerName+")"),e.supportsText&&n.push("supports("+e.supportsText+")"),e.media.length&&n.push(e.media.mediaText),n.join(" ")+";"}function mp(e){try{var a=e.rules||e.cssRules;if(!a)return null;var n=e.href;!n&&e.ownerNode&&e.ownerNode.ownerDocument&&(n=e.ownerNode.ownerDocument.location.href);var t=Array.from(a,function(i){return kw(i,n)}).join("");return pie(t)}catch{return null}}function kw(e,a){if(hie(e)){var n;try{n=mp(e.styleSheet)||mie(e)}catch{n=e.cssText}return e.styleSheet.href?Kl(n,e.styleSheet.href):n}else{var t=e.cssText;return fie(e)&&e.selectorText.includes(":")&&(t=gie(t)),a?Kl(t,a):t}}function gie(e){var a=/(\[(?:[\w-]+)[^\\])(:(?:[\w-]+)\])/gm;return e.replace(a,"$1\\$2")}function hie(e){return"styleSheet"in e}function fie(e){return"selectorText"in e}var ww=(function(){function e(){uv(this,"idNodeMap",new Map),uv(this,"nodeMetaMap",new WeakMap)}var a=e.prototype;return a.getId=function(t){var i;if(!t)return-1;var r=(i=this.getMeta(t))==null?void 0:i.id;return r??-1},a.getNode=function(t){return this.idNodeMap.get(t)||null},a.getIds=function(){return Array.from(this.idNodeMap.keys())},a.getMeta=function(t){return this.nodeMetaMap.get(t)||null},a.removeNodeFromMap=function(t,i){var r=this;i===void 0&&(i=!1);var o=this.getId(t);this.idNodeMap.delete(o),i&&this.nodeMetaMap.delete(t),t.childNodes&&t.childNodes.forEach(function(s){return r.removeNodeFromMap(s,i)})},a.has=function(t){return this.idNodeMap.has(t)},a.hasNode=function(t){return this.nodeMetaMap.has(t)},a.add=function(t,i){var r=i.id;this.idNodeMap.set(r,t),this.nodeMetaMap.set(t,i)},a.replace=function(t,i){var r=this.getNode(t);if(r){var o=this.nodeMetaMap.get(r);o&&this.nodeMetaMap.set(i,o)}this.idNodeMap.set(t,i)},a.reset=function(){this.idNodeMap=new Map,this.nodeMetaMap=new WeakMap},e})();function vie(){return new ww}function Hl(e){var a=e.element,n=e.maskInputOptions,t=e.tagName,i=e.type,r=e.value,o=e.maskInputFn,s=r||"",l=i&&Ti(i);return(n[t.toLowerCase()]||l&&n[l])&&(o?s=o(s,a):s="*".repeat(s.length)),s}function Ti(e){return e.toLowerCase()}var gv="__rrweb_original__";function bie(e){var a=e.getContext("2d");if(!a)return!0;for(var n=50,t=0;t<e.width;t+=n)for(var i=0;i<e.height;i+=n){var r=a.getImageData,o=gv in r?r[gv]:r,s=new Uint32Array(o.call(a,t,i,Math.min(n,e.width-t),Math.min(n,e.height-i)).data.buffer);if(s.some(function(l){return l!==0}))return!1}return!0}function Yl(e){var a=e.type;return e.hasAttribute("data-rr-is-password")?"password":a?Ti(a):null}function Aw(e,a){var n;try{n=new URL(e,a??window.location.href)}catch{return null}var t=/\.([0-9a-z]+)(?:$)/i,i=n.pathname.match(t),r;return(r=i==null?void 0:i[1])!=null?r:null}function yie(e){var a="";return e.indexOf("//")>-1?a=e.split("/").slice(0,3).join("/"):a=e.split("/")[0],a=a.split("?")[0],a}var kie=/url\((?:(')([^']*)'|(")(.*?)"|([^)]*))\)/gm,wie=/^(?:[a-z+]+:)?\/\//i,Aie=/^www\..*/i,Sie=/^(data:)([^,]*),(.*)/i;function Kl(e,a){return(e||"").replace(kie,function(n,t,i,r,o,s){var l=i||o||s,d=t||r||"";if(!l)return n;if(wie.test(l)||Aie.test(l)||Sie.test(l))return"url("+d+l+d+")";if(l[0]==="/")return"url("+d+(yie(a)+l)+d+")";var p=a.split("/"),u=l.split("/");p.pop();for(var g=B(u),b;!(b=g()).done;){var v=b.value;v!=="."&&(v===".."?p.pop():p.push(v))}return"url("+d+p.join("/")+d+")"})}function Es(e,a){return a===void 0&&(a=!1),a?e.replace(/(\/\*[^*]*\*\/)|[\s;]/g,""):e.replace(/(\/\*[^*]*\*\/)|[\s;]/g,"").replace(/0px/g,"0")}function Cie(e,a,n){n===void 0&&(n=!1);var t=Array.from(a.childNodes),i=[],r=0;if(t.length>1&&e&&typeof e=="string"){for(var o=Es(e,n),s=o.length/e.length,l=1;l<t.length;l++)if(t[l].textContent&&typeof t[l].textContent=="string"){for(var d=Es(t[l].textContent,n),p=100,u=3;u<d.length&&(d[u].match(/[a-zA-Z0-9]/)||d.indexOf(d.substring(0,u),1)!==-1);u++);for(;u<d.length;u++){var g=d.substring(0,u),b=o.split(g),v=-1;if(b.length===2)v=b[0].length;else if(b.length>2&&b[0]===""&&t[l-1].textContent!=="")v=o.indexOf(g,1);else if(b.length===1){if(g=g.substring(0,g.length-1),b=o.split(g),b.length<=1)return i.push(e),i;u=p+1}else u===d.length-1&&(v=o.indexOf(g));if(b.length>=2&&u>p){var A=t[l-1].textContent;if(A&&typeof A=="string"){var f=Es(A).length;v=o.indexOf(g,f)}v===-1&&(v=b[0].length)}if(v!==-1){for(var S=Math.floor(v/s);S>0&&S<e.length;){if(r+=1,r>50*t.length)return i.push(e),i;var C=Es(e.substring(0,S),n);if(C.length===v){i.push(e.substring(0,S)),e=e.substring(S),o=o.substring(v);break}else C.length<v?S+=Math.max(1,Math.floor((v-C.length)/s)):S-=Math.max(1,Math.floor((C.length-v)*s))}break}}}}return i.push(e),i}function Die(e,a){return Cie(e,a).join("/* rr_split */")}var Tie=1,Eie=new RegExp("[^a-z0-9-_:]"),Do=-2;function Sw(){return Tie++}function Pie(e){if(le(e,HTMLFormElement))return"form";var a=Ti(e.tagName);return Eie.test(a)?"div":a}var Yi,hv,_ie=/^[^ \t\n\r\u000c]+/,xie=/^[, \t\n\r\u000c]+/;function Iie(e,a){if(a.trim()==="")return a;var n=0;function t(d){var p,u=d.exec(a.substring(n));return u?(p=u[0],n+=p.length,p):""}for(var i=[];t(xie),!(n>=a.length);){var r=t(_ie);if(r.slice(-1)===",")r=ar(e,r.substring(0,r.length-1)),i.push(r);else{var o="";r=ar(e,r);for(var s=!1;;){var l=a.charAt(n);if(l===""){i.push((r+o).trim());break}else if(s)l===")"&&(s=!1);else if(l===","){n+=1,i.push((r+o).trim());break}else l==="("&&(s=!0);o+=l,n+=1}}}return i.join(", ")}var fv=new WeakMap;function ar(e,a){return!a||a.trim()===""?a:Ig(e,a)}function Rie(e){return!!(e.tagName==="svg"||e.ownerSVGElement)}function Ig(e,a){var n=fv.get(e);if(n||(n=e.createElement("a"),fv.set(e,n)),!a)a="";else if(a.startsWith("blob:")||a.startsWith("data:"))return a;return n.setAttribute("href",a),n.href}function Cw(e,a,n,t){return t&&(n==="src"||n==="href"&&!(a==="use"&&t[0]==="#")||n==="xlink:href"&&t[0]!=="#"||n==="background"&&(a==="table"||a==="td"||a==="th")?ar(e,t):n==="srcset"?Iie(e,t):n==="style"?Kl(t,Ig(e)):a==="object"&&n==="data"?ar(e,t):t)}function Dw(e,a,n){return(e==="video"||e==="audio")&&a==="autoplay"}function zie(e,a,n){try{if(typeof a=="string"){if(e.classList.contains(a))return!0}else for(var t=e.classList.length;t--;){var i=e.classList[t];if(a.test(i))return!0}if(n)return e.matches(n)}catch{}return!1}function Zl(e,a,n){if(!e)return!1;if(e.nodeType!==e.ELEMENT_NODE)return n?Zl(qt.parentNode(e),a,n):!1;for(var t=e.classList.length;t--;){var i=e.classList[t];if(a.test(i))return!0}return n?Zl(qt.parentNode(e),a,n):!1}function Tw(e,a,n,t){var i;if(yw(e)){if(i=e,!qt.childNodes(i).length)return!1}else{if(qt.parentElement(e)===null)return!1;i=qt.parentElement(e)}try{if(typeof a=="string"){if(t){if(i.closest("."+a))return!0}else if(i.classList.contains(a))return!0}else if(Zl(i,a,t))return!0;if(n){if(t){if(i.closest(n))return!0}else if(i.matches(n))return!0}}catch{}return!1}function Mie(e,a,n){var t=e.contentWindow;if(t){var i=!1,r;try{r=t.document.readyState}catch{return}if(r!=="complete"){var o=setTimeout(function(){i||(a(),i=!0)},n);e.addEventListener("load",function(){clearTimeout(o),i=!0,a()});return}var s="about:blank";if(t.location.href!==s||e.src===s||e.src==="")return setTimeout(a,0),e.addEventListener("load",a);e.addEventListener("load",a)}}function Nie(e,a,n){var t=!1,i;try{i=e.sheet}catch{return}if(!i){var r=setTimeout(function(){t||(a(),t=!0)},n);e.addEventListener("load",function(){clearTimeout(r),t=!0,a()})}}function Fie(e,a){var n=a.doc,t=a.mirror,i=a.blockClass,r=a.blockSelector,o=a.needsMask,s=a.inlineStylesheet,l=a.maskInputOptions,d=l===void 0?{}:l,p=a.maskTextFn,u=a.maskInputFn,g=a.dataURLOptions,b=g===void 0?{}:g,v=a.inlineImages,A=a.recordCanvas,f=a.keepIframeSrcFn,S=a.newlyAddedElement,C=S===void 0?!1:S,T=a.cssCaptured,E=T===void 0?!1:T,P=Lie(n,t);switch(e.nodeType){case e.DOCUMENT_NODE:return e.compatMode!=="CSS1Compat"?{type:It.Document,childNodes:[],compatMode:e.compatMode}:{type:It.Document,childNodes:[]};case e.DOCUMENT_TYPE_NODE:return{type:It.DocumentType,name:e.name,publicId:e.publicId,systemId:e.systemId,rootId:P};case e.ELEMENT_NODE:return Oie(e,{doc:n,blockClass:i,blockSelector:r,inlineStylesheet:s,maskInputOptions:d,maskInputFn:u,dataURLOptions:b,inlineImages:v,recordCanvas:A,keepIframeSrcFn:f,newlyAddedElement:C,rootId:P});case e.TEXT_NODE:return jie(e,{doc:n,needsMask:o,maskTextFn:p,rootId:P,cssCaptured:E});case e.CDATA_SECTION_NODE:return{type:It.CDATA,textContent:"",rootId:P};case e.COMMENT_NODE:return{type:It.Comment,textContent:qt.textContent(e)||"",rootId:P};default:return!1}}function Lie(e,a){if(a.hasNode(e)){var n=a.getId(e);return n===1?void 0:n}}function jie(e,a){var n=a.needsMask,t=a.maskTextFn,i=a.rootId,r=a.cssCaptured,o=qt.parentNode(e),s=o&&o.tagName,l="",d=s==="STYLE"?!0:void 0,p=s==="SCRIPT"?!0:void 0;return p?l="SCRIPT_PLACEHOLDER":r||(l=qt.textContent(e),d&&l&&(l=Kl(l,Ig(a.doc)))),!d&&!p&&l&&n&&(l=t?t(l,qt.parentElement(e)):l.replace(/[\S]/g,"*")),{type:It.Text,textContent:l||"",rootId:i}}function Oie(e,a){for(var n=a.doc,t=a.blockClass,i=a.blockSelector,r=a.inlineStylesheet,o=a.maskInputOptions,s=o===void 0?{}:o,l=a.maskInputFn,d=a.dataURLOptions,p=d===void 0?{}:d,u=a.inlineImages,g=a.recordCanvas,b=a.keepIframeSrcFn,v=a.newlyAddedElement,A=v===void 0?!1:v,f=a.rootId,S=zie(e,t,i),C=Pie(e),T={},E=e.attributes.length,P=0;P<E;P++){var I=e.attributes[P];Dw(C,I.name,I.value)||(T[I.name]=Cw(n,C,Ti(I.name),I.value))}if(C==="link"&&r){var L=Array.from(n.styleSheets).find(function(de){return de.href===e.href}),N=null;L&&(N=mp(L)),N&&(delete T.rel,delete T.href,T._cssText=N)}if(C==="style"&&e.sheet){var Z=mp(e.sheet);Z&&(e.childNodes.length>1&&(Z=Die(Z,e)),T._cssText=Z)}if(C==="input"||C==="textarea"||C==="select"){var R=e.value,Y=e.checked;T.type!=="radio"&&T.type!=="checkbox"&&T.type!=="submit"&&T.type!=="button"&&R?T.value=Hl({element:e,type:Yl(e),tagName:C,value:R,maskInputOptions:s,maskInputFn:l}):Y&&(T.checked=Y)}if(C==="option"&&(e.selected&&!s.select?T.selected=!0:delete T.selected),C==="dialog"&&e.open&&(T.rr_open_mode=e.matches("dialog:modal")?"modal":"non-modal"),C==="canvas"&&g){if(e.__context==="2d")bie(e)||(T.rr_dataURL=e.toDataURL(p.type,p.quality));else if(!("__context"in e)){var $=e.toDataURL(p.type,p.quality),F=n.createElement("canvas");F.width=e.width,F.height=e.height;var j=F.toDataURL(p.type,p.quality);$!==j&&(T.rr_dataURL=$)}}if(C==="img"&&u){Yi||(Yi=n.createElement("canvas"),hv=Yi.getContext("2d"));var H=e,X=H.currentSrc||H.getAttribute("src")||"<unknown-src>",ie=H.crossOrigin,te=function(){H.removeEventListener("load",te);try{Yi.width=H.naturalWidth,Yi.height=H.naturalHeight,hv.drawImage(H,0,0),T.rr_dataURL=Yi.toDataURL(p.type,p.quality)}catch{if(H.crossOrigin!=="anonymous"){H.crossOrigin="anonymous",H.complete&&H.naturalWidth!==0?te():H.addEventListener("load",te);return}}H.crossOrigin==="anonymous"&&(ie?T.crossOrigin=ie:H.removeAttribute("crossorigin"))};H.complete&&H.naturalWidth!==0?te():H.addEventListener("load",te)}if(C==="audio"||C==="video"){var oe=T;oe.rr_mediaState=e.paused?"paused":"played",oe.rr_mediaCurrentTime=e.currentTime,oe.rr_mediaPlaybackRate=e.playbackRate,oe.rr_mediaMuted=e.muted,oe.rr_mediaLoop=e.loop,oe.rr_mediaVolume=e.volume}if(A||(e.scrollLeft&&(T.rr_scrollLeft=e.scrollLeft),e.scrollTop&&(T.rr_scrollTop=e.scrollTop)),S){var ae=e.getBoundingClientRect(),Me=ae.width,Ne=ae.height;T={class:T.class,rr_width:""+Me+"px",rr_height:""+Ne+"px"}}C==="iframe"&&!b(T.src)&&(e.contentDocument||(T.rr_src=T.src),delete T.src);var re;try{customElements.get(C)&&(re=!0)}catch{}return{type:It.Element,tagName:C,attributes:T,childNodes:[],isSVG:Rie(e)||void 0,needBlock:S,rootId:f,isCustom:re}}function Ke(e){return e==null?"":e.toLowerCase()}function Bie(e,a){if(a.comment&&e.type===It.Comment)return!0;if(e.type===It.Element){if(a.script&&(e.tagName==="script"||e.tagName==="link"&&(e.attributes.rel==="preload"&&e.attributes.as==="script"||e.attributes.rel==="modulepreload")||e.tagName==="link"&&e.attributes.rel==="prefetch"&&typeof e.attributes.href=="string"&&Aw(e.attributes.href)==="js"))return!0;if(a.headFavicon&&(e.tagName==="link"&&e.attributes.rel==="shortcut icon"||e.tagName==="meta"&&(Ke(e.attributes.name).match(/^msapplication-tile(image|color)$/)||Ke(e.attributes.name)==="application-name"||Ke(e.attributes.rel)==="icon"||Ke(e.attributes.rel)==="apple-touch-icon"||Ke(e.attributes.rel)==="shortcut icon")))return!0;if(e.tagName==="meta"){if(a.headMetaDescKeywords&&Ke(e.attributes.name).match(/^description|keywords$/))return!0;if(a.headMetaSocial&&(Ke(e.attributes.property).match(/^(og|twitter|fb):/)||Ke(e.attributes.name).match(/^(og|twitter):/)||Ke(e.attributes.name)==="pinterest"))return!0;if(a.headMetaRobots&&(Ke(e.attributes.name)==="robots"||Ke(e.attributes.name)==="googlebot"||Ke(e.attributes.name)==="bingbot"))return!0;if(a.headMetaHttpEquiv&&e.attributes["http-equiv"]!==void 0)return!0;if(a.headMetaAuthorship&&(Ke(e.attributes.name)==="author"||Ke(e.attributes.name)==="generator"||Ke(e.attributes.name)==="framework"||Ke(e.attributes.name)==="publisher"||Ke(e.attributes.name)==="progid"||Ke(e.attributes.property).match(/^article:/)||Ke(e.attributes.property).match(/^product:/)))return!0;if(a.headMetaVerification&&(Ke(e.attributes.name)==="google-site-verification"||Ke(e.attributes.name)==="yandex-verification"||Ke(e.attributes.name)==="csrf-token"||Ke(e.attributes.name)==="p:domain_verify"||Ke(e.attributes.name)==="verify-v1"||Ke(e.attributes.name)==="verification"||Ke(e.attributes.name)==="shopify-checkout-api-token"))return!0}}return!1}function nr(e,a){var n=a.doc,t=a.mirror,i=a.blockClass,r=a.blockSelector,o=a.maskTextClass,s=a.maskTextSelector,l=a.skipChild,d=l===void 0?!1:l,p=a.inlineStylesheet,u=p===void 0?!0:p,g=a.maskInputOptions,b=g===void 0?{}:g,v=a.maskTextFn,A=a.maskInputFn,f=a.slimDOMOptions,S=a.dataURLOptions,C=S===void 0?{}:S,T=a.inlineImages,E=T===void 0?!1:T,P=a.recordCanvas,I=P===void 0?!1:P,L=a.onSerialize,N=a.onIframeLoad,Z=a.iframeLoadTimeout,R=Z===void 0?5e3:Z,Y=a.onStylesheetLoad,$=a.stylesheetLoadTimeout,F=$===void 0?5e3:$,j=a.keepIframeSrcFn,H=j===void 0?function(){return!1}:j,X=a.newlyAddedElement,ie=X===void 0?!1:X,te=a.cssCaptured,oe=te===void 0?!1:te,ae=a.needsMask,Me=a.preserveWhiteSpace,Ne=Me===void 0?!0:Me;if(!ae){var re=ae===void 0;ae=Tw(e,o,s,re)}var de=Fie(e,{doc:n,mirror:t,blockClass:i,blockSelector:r,needsMask:ae,inlineStylesheet:u,maskInputOptions:b,maskTextFn:v,maskInputFn:A,dataURLOptions:C,inlineImages:E,recordCanvas:I,keepIframeSrcFn:H,newlyAddedElement:ie,cssCaptured:oe});if(!de)return null;var q;t.hasNode(e)?q=t.getId(e):Bie(de,f)||!Ne&&de.type===It.Text&&!de.textContent.replace(/^\s+|\s+$/gm,"").length?q=Do:q=Sw();var ge=Object.assign(de,{id:q});if(t.add(e,ge),q===Do)return null;L&&L(e);var Ot=!d;if(ge.type===It.Element){Ot=Ot&&!ge.needBlock,delete ge.needBlock;var Ee=qt.shadowRoot(e);Ee&&co(Ee)&&(ge.isShadowHost=!0)}if((ge.type===It.Document||ge.type===It.Element)&&Ot){f.headWhitespace&&ge.type===It.Element&&ge.tagName==="head"&&(Ne=!1);var Bt={doc:n,mirror:t,blockClass:i,blockSelector:r,needsMask:ae,maskTextClass:o,maskTextSelector:s,skipChild:d,inlineStylesheet:u,maskInputOptions:b,maskTextFn:v,maskInputFn:A,slimDOMOptions:f,dataURLOptions:C,inlineImages:E,recordCanvas:I,preserveWhiteSpace:Ne,onSerialize:L,onIframeLoad:N,iframeLoadTimeout:R,onStylesheetLoad:Y,stylesheetLoadTimeout:F,keepIframeSrcFn:H,cssCaptured:!1};if(!(ge.type===It.Element&&ge.tagName==="textarea"&&ge.attributes.value!==void 0)){ge.type===It.Element&&ge.attributes._cssText!==void 0&&typeof ge.attributes._cssText=="string"&&(Bt.cssCaptured=!0);for(var ia=B(Array.from(qt.childNodes(e))),ra;!(ra=ia()).done;){var oa=ra.value,jn=nr(oa,Bt);jn&&ge.childNodes.push(jn)}}var Kt=null;if(yw(e)&&(Kt=qt.shadowRoot(e)))for(var va=B(Array.from(qt.childNodes(Kt))),ba;!(ba=va()).done;){var aa=ba.value,ya=nr(aa,Bt);ya&&(co(Kt)&&(ya.isShadow=!0),ge.childNodes.push(ya))}}var Pt=qt.parentNode(e);return Pt&&lo(Pt)&&co(Pt)&&(ge.isShadow=!0),ge.type===It.Element&&ge.tagName==="iframe"&&Mie(e,function(){var Zt=e.contentDocument;if(Zt&&N){var pt=nr(Zt,{doc:Zt,mirror:t,blockClass:i,blockSelector:r,needsMask:ae,maskTextClass:o,maskTextSelector:s,skipChild:!1,inlineStylesheet:u,maskInputOptions:b,maskTextFn:v,maskInputFn:A,slimDOMOptions:f,dataURLOptions:C,inlineImages:E,recordCanvas:I,preserveWhiteSpace:Ne,onSerialize:L,onIframeLoad:N,iframeLoadTimeout:R,onStylesheetLoad:Y,stylesheetLoadTimeout:F,keepIframeSrcFn:H});pt&&N(e,pt)}},R),ge.type===It.Element&&ge.tagName==="link"&&typeof ge.attributes.rel=="string"&&(ge.attributes.rel==="stylesheet"||ge.attributes.rel==="preload"&&typeof ge.attributes.href=="string"&&Aw(ge.attributes.href)==="css")&&Nie(e,function(){if(Y){var Zt=nr(e,{doc:n,mirror:t,blockClass:i,blockSelector:r,needsMask:ae,maskTextClass:o,maskTextSelector:s,skipChild:!1,inlineStylesheet:u,maskInputOptions:b,maskTextFn:v,maskInputFn:A,slimDOMOptions:f,dataURLOptions:C,inlineImages:E,recordCanvas:I,preserveWhiteSpace:Ne,onSerialize:L,onIframeLoad:N,iframeLoadTimeout:R,onStylesheetLoad:Y,stylesheetLoadTimeout:F,keepIframeSrcFn:H});Zt&&Y(e,Zt)}},F),ge}function Uie(e,a){var n=a||{},t=n.mirror,i=t===void 0?new ww:t,r=n.blockClass,o=r===void 0?"rr-block":r,s=n.blockSelector,l=s===void 0?null:s,d=n.maskTextClass,p=d===void 0?"rr-mask":d,u=n.maskTextSelector,g=u===void 0?null:u,b=n.inlineStylesheet,v=b===void 0?!0:b,A=n.inlineImages,f=A===void 0?!1:A,S=n.recordCanvas,C=S===void 0?!1:S,T=n.maskAllInputs,E=T===void 0?!1:T,P=n.maskTextFn,I=n.maskInputFn,L=n.slimDOM,N=L===void 0?!1:L,Z=n.dataURLOptions,R=n.preserveWhiteSpace,Y=n.onSerialize,$=n.onIframeLoad,F=n.iframeLoadTimeout,j=n.onStylesheetLoad,H=n.stylesheetLoadTimeout,X=n.keepIframeSrcFn,ie=X===void 0?function(){return!1}:X,te=E===!0?{color:!0,date:!0,"datetime-local":!0,email:!0,month:!0,number:!0,range:!0,search:!0,tel:!0,text:!0,time:!0,url:!0,week:!0,textarea:!0,select:!0,password:!0,hidden:!0}:E===!1?{password:!0}:E,oe=N===!0||N==="all"?{script:!0,comment:!0,headFavicon:!0,headWhitespace:!0,headMetaDescKeywords:N==="all",headMetaSocial:!0,headMetaRobots:!0,headMetaHttpEquiv:!0,headMetaAuthorship:!0,headMetaVerification:!0}:N===!1?{}:N;return nr(e,{doc:e,mirror:i,blockClass:o,blockSelector:l,maskTextClass:p,maskTextSelector:g,skipChild:!1,inlineStylesheet:v,maskInputOptions:te,maskTextFn:P,maskInputFn:I,slimDOMOptions:oe,dataURLOptions:Z,inlineImages:f,recordCanvas:C,preserveWhiteSpace:R,onSerialize:Y,onIframeLoad:$,iframeLoadTimeout:F,onStylesheetLoad:j,stylesheetLoadTimeout:H,keepIframeSrcFn:ie,newlyAddedElement:!1})}function qie(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}function Vie(e){if(e.__esModule)return e;var a=e.default;if(typeof a=="function"){var n=function t(){return le(this,t)?Reflect.construct(a,arguments,this.constructor):a.apply(this,arguments)};n.prototype=a.prototype}else n={};return Object.defineProperty(n,"__esModule",{value:!0}),Object.keys(e).forEach(function(t){var i=Object.getOwnPropertyDescriptor(e,t);Object.defineProperty(n,t,i.get?i:{enumerable:!0,get:function(){return e[t]}})}),n}var Rg={exports:{}},Xe=String,Ew=function(){return{isColorSupported:!1,reset:Xe,bold:Xe,dim:Xe,italic:Xe,underline:Xe,inverse:Xe,hidden:Xe,strikethrough:Xe,black:Xe,red:Xe,green:Xe,yellow:Xe,blue:Xe,magenta:Xe,cyan:Xe,white:Xe,gray:Xe,bgBlack:Xe,bgRed:Xe,bgGreen:Xe,bgYellow:Xe,bgBlue:Xe,bgMagenta:Xe,bgCyan:Xe,bgWhite:Xe}};Rg.exports=Ew();Rg.exports.createColors=Ew;var $ie=Rg.exports,Wie={},Gie=Object.freeze(Object.defineProperty({__proto__:null,default:Wie},Symbol.toStringTag,{value:"Module"})),bt=Vie(Gie),vv=$ie,bv=bt,gp=(function(e){lt(a,e);function a(t,i,r,o,s,l){var d;return d=e.call(this,t)||this,d.name="CssSyntaxError",d.reason=t,s&&(d.file=s),o&&(d.source=o),l&&(d.plugin=l),typeof i<"u"&&typeof r<"u"&&(typeof i=="number"?(d.line=i,d.column=r):(d.line=i.line,d.column=i.column,d.endLine=r.line,d.endColumn=r.column)),d.setMessage(),Error.captureStackTrace&&Error.captureStackTrace(d,a),d}var n=a.prototype;return n.setMessage=function(){this.message=this.plugin?this.plugin+": ":"",this.message+=this.file?this.file:"<css input>",typeof this.line<"u"&&(this.message+=":"+this.line+":"+this.column),this.message+=": "+this.reason},n.showSourceCode=function(i){var r=this;if(!this.source)return"";var o=this.source;i==null&&(i=vv.isColorSupported),bv&&i&&(o=bv(o));var s=o.split(/\r?\n/),l=Math.max(this.line-3,0),d=Math.min(this.line+2,s.length),p=String(d).length,u,g;if(i){var b=vv.createColors(!0),v=b.bold,A=b.gray,f=b.red;u=function(S){return v(f(S))},g=function(S){return A(S)}}else u=g=function(S){return S};return s.slice(l,d).map(function(S,C){var T=l+1+C,E=" "+(" "+T).slice(-p)+" | ";if(T===r.line){var P=g(E.replace(/\d/g," "))+S.slice(0,r.column-1).replace(/[^\t]/g," ");return u(">")+g(E)+S+`
`+P+u("^")}return" "+g(E)+S}).join(`
`)},n.toString=function(){var i=this.showSourceCode();return i&&(i=`
`+i+`
`),this.name+": "+this.message+i},a})(Co(Error)),zg=gp;gp.default=gp;var ri={};ri.isClean=Symbol("isClean");ri.my=Symbol("my");var yv={after:`
`,beforeClose:`
`,beforeComment:`
`,beforeDecl:`
`,beforeOpen:" ",beforeRule:`
`,colon:": ",commentLeft:" ",commentRight:" ",emptyBody:"",indent:" ",semicolon:!1};function Hie(e){return e[0].toUpperCase()+e.slice(1)}var hp=(function(){function e(n){this.builder=n}var a=e.prototype;return a.atrule=function(t,i){var r="@"+t.name,o=t.params?this.rawValue(t,"params"):"";if(typeof t.raws.afterName<"u"?r+=t.raws.afterName:o&&(r+=" "),t.nodes)this.block(t,r+o);else{var s=(t.raws.between||"")+(i?";":"");this.builder(r+o+s,t)}},a.beforeAfter=function(t,i){var r;t.type==="decl"?r=this.raw(t,null,"beforeDecl"):t.type==="comment"?r=this.raw(t,null,"beforeComment"):i==="before"?r=this.raw(t,null,"beforeRule"):r=this.raw(t,null,"beforeClose");for(var o=t.parent,s=0;o&&o.type!=="root";)s+=1,o=o.parent;if(r.includes(`
`)){var l=this.raw(t,null,"indent");if(l.length)for(var d=0;d<s;d++)r+=l}return r},a.block=function(t,i){var r=this.raw(t,"between","beforeOpen");this.builder(i+r+"{",t,"start");var o;t.nodes&&t.nodes.length?(this.body(t),o=this.raw(t,"after")):o=this.raw(t,"after","emptyBody"),o&&this.builder(o),this.builder("}",t,"end")},a.body=function(t){for(var i=t.nodes.length-1;i>0&&t.nodes[i].type==="comment";)i-=1;for(var r=this.raw(t,"semicolon"),o=0;o<t.nodes.length;o++){var s=t.nodes[o],l=this.raw(s,"before");l&&this.builder(l),this.stringify(s,i!==o||r)}},a.comment=function(t){var i=this.raw(t,"left","commentLeft"),r=this.raw(t,"right","commentRight");this.builder("/*"+i+t.text+r+"*/",t)},a.decl=function(t,i){var r=this.raw(t,"between","colon"),o=t.prop+r+this.rawValue(t,"value");t.important&&(o+=t.raws.important||" !important"),i&&(o+=";"),this.builder(o,t)},a.document=function(t){this.body(t)},a.raw=function(t,i,r){var o;if(r||(r=i),i&&(o=t.raws[i],typeof o<"u"))return o;var s=t.parent;if(r==="before"&&(!s||s.type==="root"&&s.first===t||s&&s.type==="document"))return"";if(!s)return yv[r];var l=t.root();if(l.rawCache||(l.rawCache={}),typeof l.rawCache[r]<"u")return l.rawCache[r];if(r==="before"||r==="after")return this.beforeAfter(t,r);var d="raw"+Hie(r);return this[d]?o=this[d](l,t):l.walk(function(p){if(o=p.raws[i],typeof o<"u")return!1}),typeof o>"u"&&(o=yv[r]),l.rawCache[r]=o,o},a.rawBeforeClose=function(t){var i;return t.walk(function(r){if(r.nodes&&r.nodes.length>0&&typeof r.raws.after<"u")return i=r.raws.after,i.includes(`
`)&&(i=i.replace(/[^\n]+$/,"")),!1}),i&&(i=i.replace(/\S/g,"")),i},a.rawBeforeComment=function(t,i){var r;return t.walkComments(function(o){if(typeof o.raws.before<"u")return r=o.raws.before,r.includes(`
`)&&(r=r.replace(/[^\n]+$/,"")),!1}),typeof r>"u"?r=this.raw(i,null,"beforeDecl"):r&&(r=r.replace(/\S/g,"")),r},a.rawBeforeDecl=function(t,i){var r;return t.walkDecls(function(o){if(typeof o.raws.before<"u")return r=o.raws.before,r.includes(`
`)&&(r=r.replace(/[^\n]+$/,"")),!1}),typeof r>"u"?r=this.raw(i,null,"beforeRule"):r&&(r=r.replace(/\S/g,"")),r},a.rawBeforeOpen=function(t){var i;return t.walk(function(r){if(r.type!=="decl"&&(i=r.raws.between,typeof i<"u"))return!1}),i},a.rawBeforeRule=function(t){var i;return t.walk(function(r){if(r.nodes&&(r.parent!==t||t.first!==r)&&typeof r.raws.before<"u")return i=r.raws.before,i.includes(`
`)&&(i=i.replace(/[^\n]+$/,"")),!1}),i&&(i=i.replace(/\S/g,"")),i},a.rawColon=function(t){var i;return t.walkDecls(function(r){if(typeof r.raws.between<"u")return i=r.raws.between.replace(/[^\s:]/g,""),!1}),i},a.rawEmptyBody=function(t){var i;return t.walk(function(r){if(r.nodes&&r.nodes.length===0&&(i=r.raws.after,typeof i<"u"))return!1}),i},a.rawIndent=function(t){if(t.raws.indent)return t.raws.indent;var i;return t.walk(function(r){var o=r.parent;if(o&&o!==t&&o.parent&&o.parent===t&&typeof r.raws.before<"u"){var s=r.raws.before.split(`
`);return i=s[s.length-1],i=i.replace(/\S/g,""),!1}}),i},a.rawSemicolon=function(t){var i;return t.walk(function(r){if(r.nodes&&r.nodes.length&&r.last.type==="decl"&&(i=r.raws.semicolon,typeof i<"u"))return!1}),i},a.rawValue=function(t,i){var r=t[i],o=t.raws[i];return o&&o.value===r?o.raw:r},a.root=function(t){this.body(t),t.raws.after&&this.builder(t.raws.after)},a.rule=function(t){this.block(t,this.rawValue(t,"selector")),t.raws.ownSemicolon&&this.builder(t.raws.ownSemicolon,t,"end")},a.stringify=function(t,i){if(!this[t.type])throw new Error("Unknown AST node type "+t.type+". Maybe you need to change PostCSS stringifier.");this[t.type](t,i)},e})(),Pw=hp;hp.default=hp;var Yie=Pw;function fp(e,a){var n=new Yie(a);n.stringify(e)}var Xc=fp;fp.default=fp;var Ps=ri.isClean,Kie=ri.my,Zie=zg,Jie=Pw,Qie=Xc;function vp(e,a){var n=new e.constructor;for(var t in e)if(Object.prototype.hasOwnProperty.call(e,t)&&t!=="proxyCache"){var i=e[t],r=typeof i>"u"?"undefined":ce(i);t==="parent"&&r==="object"?a&&(n[t]=a):t==="source"?n[t]=i:Array.isArray(i)?n[t]=i.map(function(o){return vp(o,n)}):(r==="object"&&i!==null&&(i=vp(i)),n[t]=i)}return n}var bp=(function(){function e(n){n===void 0&&(n={}),this.raws={},this[Ps]=!1,this[Kie]=!0;for(var t in n)if(t==="nodes"){this.nodes=[];for(var i=B(n[t]),r;!(r=i()).done;){var o=r.value;typeof o.clone=="function"?this.append(o.clone()):this.append(o)}}else this[t]=n[t]}var a=e.prototype;return a.addToError=function(t){if(t.postcssNode=this,t.stack&&this.source&&/\n\s{4}at /.test(t.stack)){var i=this.source;t.stack=t.stack.replace(/\n\s{4}at /,"$&"+i.input.from+":"+i.start.line+":"+i.start.column+"$&")}return t},a.after=function(t){return this.parent.insertAfter(this,t),this},a.assign=function(t){t===void 0&&(t={});for(var i in t)this[i]=t[i];return this},a.before=function(t){return this.parent.insertBefore(this,t),this},a.cleanRaws=function(t){delete this.raws.before,delete this.raws.after,t||delete this.raws.between},a.clone=function(t){t===void 0&&(t={});var i=vp(this);for(var r in t)i[r]=t[r];return i},a.cloneAfter=function(t){t===void 0&&(t={});var i=this.clone(t);return this.parent.insertAfter(this,i),i},a.cloneBefore=function(t){t===void 0&&(t={});var i=this.clone(t);return this.parent.insertBefore(this,i),i},a.error=function(t,i){if(i===void 0&&(i={}),this.source){var r=this.rangeBy(i),o=r.end,s=r.start;return this.source.input.error(t,{column:s.column,line:s.line},{column:o.column,line:o.line},i)}return new Zie(t)},a.getProxyProcessor=function(){return{get:function(i,r){return r==="proxyOf"?i:r==="root"?function(){return i.root().toProxy()}:i[r]},set:function(i,r,o){return i[r]===o||(i[r]=o,(r==="prop"||r==="value"||r==="name"||r==="params"||r==="important"||r==="text")&&i.markDirty()),!0}}},a.markDirty=function(){if(this[Ps]){this[Ps]=!1;for(var t=this;t=t.parent;)t[Ps]=!1}},a.next=function(){if(this.parent){var t=this.parent.index(this);return this.parent.nodes[t+1]}},a.positionBy=function(t,i){var r=this.source.start;if(t.index)r=this.positionInside(t.index,i);else if(t.word){i=this.toString();var o=i.indexOf(t.word);o!==-1&&(r=this.positionInside(o,i))}return r},a.positionInside=function(t,i){for(var r=i||this.toString(),o=this.source.start.column,s=this.source.start.line,l=0;l<t;l++)r[l]===`
`?(o=1,s+=1):o+=1;return{column:o,line:s}},a.prev=function(){if(this.parent){var t=this.parent.index(this);return this.parent.nodes[t-1]}},a.rangeBy=function(t){var i={column:this.source.start.column,line:this.source.start.line},r=this.source.end?{column:this.source.end.column+1,line:this.source.end.line}:{column:i.column+1,line:i.line};if(t.word){var o=this.toString(),s=o.indexOf(t.word);s!==-1&&(i=this.positionInside(s,o),r=this.positionInside(s+t.word.length,o))}else t.start?i={column:t.start.column,line:t.start.line}:t.index&&(i=this.positionInside(t.index)),t.end?r={column:t.end.column,line:t.end.line}:typeof t.endIndex=="number"?r=this.positionInside(t.endIndex):t.index&&(r=this.positionInside(t.index+1));return(r.line<i.line||r.line===i.line&&r.column<=i.column)&&(r={column:i.column+1,line:i.line}),{end:r,start:i}},a.raw=function(t,i){var r=new Jie;return r.raw(this,t,i)},a.remove=function(){return this.parent&&this.parent.removeChild(this),this.parent=void 0,this},a.replaceWith=function(){for(var t=arguments.length,i=new Array(t),r=0;r<t;r++)i[r]=arguments[r];if(this.parent){for(var o=this,s=!1,l=B(i),d;!(d=l()).done;){var p=d.value;p===this?s=!0:s?(this.parent.insertAfter(o,p),o=p):this.parent.insertBefore(o,p)}s||this.remove()}return this},a.root=function(){for(var t=this;t.parent&&t.parent.type!=="document";)t=t.parent;return t},a.toJSON=function(t,i){var r={},o=i==null;i=i||new Map;var s=0;for(var l in this)if(Object.prototype.hasOwnProperty.call(this,l)&&!(l==="parent"||l==="proxyCache")){var d=this[l];if(Array.isArray(d))r[l]=d.map(function(u){return(typeof u>"u"?"undefined":ce(u))==="object"&&u.toJSON?u.toJSON(null,i):u});else if((typeof d>"u"?"undefined":ce(d))==="object"&&d.toJSON)r[l]=d.toJSON(null,i);else if(l==="source"){var p=i.get(d.input);p==null&&(p=s,i.set(d.input,s),s++),r[l]={end:d.end,inputId:p,start:d.start}}else r[l]=d}return o&&(r.inputs=[].concat(i.keys()).map(function(u){return u.toJSON()})),r},a.toProxy=function(){return this.proxyCache||(this.proxyCache=new Proxy(this,this.getProxyProcessor())),this.proxyCache},a.toString=function(t){t===void 0&&(t=Qie),t.stringify&&(t=t.stringify);var i="";return t(this,function(r){i+=r}),i},a.warn=function(t,i,r){var o={node:this};for(var s in r)o[s]=r[s];return t.warn(i,o)},rt(e,[{key:"proxyOf",get:function(){return this}}]),e})(),ed=bp;bp.default=bp;var Xie=ed,yp=(function(e){lt(a,e);function a(n){var t;return n&&typeof n.value<"u"&&typeof n.value!="string"&&(n=Ce({},n,{value:String(n.value)})),t=e.call(this,n)||this,t.type="decl",t}return rt(a,[{key:"variable",get:function(){return this.prop.startsWith("--")||this.prop[0]==="$"}}]),a})(Xie),td=yp;yp.default=yp;var ere="useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict",tre=function(e){e===void 0&&(e=21);for(var a="",n=e;n--;)a+=ere[Math.random()*64|0];return a},are={nanoid:tre},kv=bt.SourceMapConsumer,wv=bt.SourceMapGenerator,nre=bt.existsSync,ire=bt.readFileSync,tu=bt.dirname,rre=bt.join;function ore(e){return Buffer?Buffer.from(e,"base64").toString():window.atob(e)}var kp=(function(){function e(n,t){if(t.map!==!1){this.loadAnnotation(n),this.inline=this.startWith(this.annotation,"data:");var i=t.map?t.map.prev:void 0,r=this.loadMap(t.from,i);!this.mapFile&&t.from&&(this.mapFile=t.from),this.mapFile&&(this.root=tu(this.mapFile)),r&&(this.text=r)}}var a=e.prototype;return a.consumer=function(){return this.consumerCache||(this.consumerCache=new kv(this.text)),this.consumerCache},a.decodeInline=function(t){var i=/^data:application\/json;charset=utf-?8;base64,/,r=/^data:application\/json;base64,/,o=/^data:application\/json;charset=utf-?8,/,s=/^data:application\/json,/;if(o.test(t)||s.test(t))return decodeURIComponent(t.substr(RegExp.lastMatch.length));if(i.test(t)||r.test(t))return ore(t.substr(RegExp.lastMatch.length));var l=t.match(/data:application\/json;([^,]+),/)[1];throw new Error("Unsupported source map encoding "+l)},a.getAnnotationURL=function(t){return t.replace(/^\/\*\s*# sourceMappingURL=/,"").trim()},a.isMap=function(t){return(typeof t>"u"?"undefined":ce(t))!=="object"?!1:typeof t.mappings=="string"||typeof t._mappings=="string"||Array.isArray(t.sections)},a.loadAnnotation=function(t){var i=t.match(/\/\*\s*# sourceMappingURL=/gm);if(i){var r=t.lastIndexOf(i.pop()),o=t.indexOf("*/",r);r>-1&&o>-1&&(this.annotation=this.getAnnotationURL(t.substring(r,o)))}},a.loadFile=function(t){if(this.root=tu(t),nre(t))return this.mapFile=t,ire(t,"utf-8").toString().trim()},a.loadMap=function(t,i){if(i===!1)return!1;if(i){if(typeof i=="string")return i;if(typeof i=="function"){var r=i(t);if(r){var o=this.loadFile(r);if(!o)throw new Error("Unable to load previous source map: "+r.toString());return o}}else{if(le(i,kv))return wv.fromSourceMap(i).toString();if(le(i,wv))return i.toString();if(this.isMap(i))return JSON.stringify(i);throw new Error("Unsupported previous source map format: "+i.toString())}}else{if(this.inline)return this.decodeInline(this.annotation);if(this.annotation){var s=this.annotation;return t&&(s=rre(tu(t),s)),this.loadFile(s)}}},a.startWith=function(t,i){return t?t.substr(0,i.length)===i:!1},a.withContent=function(){return!!(this.consumer().sourcesContent&&this.consumer().sourcesContent.length>0)},e})(),_w=kp;kp.default=kp;var sre=bt.SourceMapConsumer,lre=bt.SourceMapGenerator,Av=bt.fileURLToPath,_s=bt.pathToFileURL,wp=bt.isAbsolute,Ap=bt.resolve,cre=are.nanoid,au=bt,Sv=zg,dre=_w,nu=Symbol("fromOffsetCache"),ure=!!(sre&&lre),Cv=!!(Ap&&wp),Jl=(function(){function e(n,t){if(t===void 0&&(t={}),n===null||typeof n>"u"||(typeof n>"u"?"undefined":ce(n))==="object"&&!n.toString)throw new Error("PostCSS received "+n+" instead of CSS string");if(this.css=n.toString(),this.css[0]==="\uFEFF"||this.css[0]==="￾"?(this.hasBOM=!0,this.css=this.css.slice(1)):this.hasBOM=!1,t.from&&(!Cv||/^\w+:\/\//.test(t.from)||wp(t.from)?this.file=t.from:this.file=Ap(t.from)),Cv&&ure){var i=new dre(this.css,t);if(i.text){this.map=i;var r=i.consumer().file;!this.file&&r&&(this.file=this.mapResolve(r))}}this.file||(this.id="<input css "+cre(6)+">"),this.map&&(this.map.file=this.from)}var a=e.prototype;return a.error=function(t,i,r,o){o===void 0&&(o={});var s,l,d;if(i&&(typeof i>"u"?"undefined":ce(i))==="object"){var p=i,u=r;if(typeof p.offset=="number"){var g=this.fromOffset(p.offset);i=g.line,r=g.col}else i=p.line,r=p.column;if(typeof u.offset=="number"){var b=this.fromOffset(u.offset);l=b.line,d=b.col}else l=u.line,d=u.column}else if(!r){var v=this.fromOffset(i);i=v.line,r=v.col}var A=this.origin(i,r,l,d);return A?s=new Sv(t,A.endLine===void 0?A.line:{column:A.column,line:A.line},A.endLine===void 0?A.column:{column:A.endColumn,line:A.endLine},A.source,A.file,o.plugin):s=new Sv(t,l===void 0?i:{column:r,line:i},l===void 0?r:{column:d,line:l},this.css,this.file,o.plugin),s.input={column:r,endColumn:d,endLine:l,line:i,source:this.css},this.file&&(_s&&(s.input.url=_s(this.file).toString()),s.input.file=this.file),s},a.fromOffset=function(t){var i,r;if(this[nu])r=this[nu];else{var o=this.css.split(`
`);r=new Array(o.length);for(var s=0,l=0,d=o.length;l<d;l++)r[l]=s,s+=o[l].length+1;this[nu]=r}i=r[r.length-1];var p=0;if(t>=i)p=r.length-1;else for(var u=r.length-2,g;p<u;)if(g=p+(u-p>>1),t<r[g])u=g-1;else if(t>=r[g+1])p=g+1;else{p=g;break}return{col:t-r[p]+1,line:p+1}},a.mapResolve=function(t){return/^\w+:\/\//.test(t)?t:Ap(this.map.consumer().sourceRoot||this.map.root||".",t)},a.origin=function(t,i,r,o){if(!this.map)return!1;var s=this.map.consumer(),l=s.originalPositionFor({column:i,line:t});if(!l.source)return!1;var d;typeof r=="number"&&(d=s.originalPositionFor({column:o,line:r}));var p;wp(l.source)?p=_s(l.source):p=new URL(l.source,this.map.consumer().sourceRoot||_s(this.map.mapFile));var u={column:l.column,endColumn:d&&d.column,endLine:d&&d.line,line:l.line,url:p.toString()};if(p.protocol==="file:")if(Av)u.file=Av(p);else throw new Error("file: protocol is not available in this PostCSS build");var g=s.sourceContentFor(l.source);return g&&(u.source=g),u},a.toJSON=function(){for(var t={},i=0,r=["hasBOM","css","file","id"];i<r.length;i++){var o=r[i];this[o]!=null&&(t[o]=this[o])}return this.map&&(t.map=Ce({},this.map),t.map.consumerCache&&(t.map.consumerCache=void 0)),t},rt(e,[{key:"from",get:function(){return this.file||this.id}}]),e})(),ad=Jl;Jl.default=Jl;au&&au.registerInput&&au.registerInput(Jl);var xw=bt.SourceMapConsumer,Sl=bt.SourceMapGenerator,Cl=bt.dirname,Iw=bt.relative,Rw=bt.resolve,zw=bt.sep,Dv=bt.pathToFileURL,pre=ad,mre=!!(xw&&Sl),gre=!!(Cl&&Rw&&Iw&&zw),hre=(function(){function e(n,t,i,r){this.stringify=n,this.mapOpts=i.map||{},this.root=t,this.opts=i,this.css=r,this.originalCSS=r,this.usesFileUrls=!this.mapOpts.from&&this.mapOpts.absolute,this.memoizedFileURLs=new Map,this.memoizedPaths=new Map,this.memoizedURLs=new Map}var a=e.prototype;return a.addAnnotation=function(){var t;this.isInline()?t="data:application/json;base64,"+this.toBase64(this.map.toString()):typeof this.mapOpts.annotation=="string"?t=this.mapOpts.annotation:typeof this.mapOpts.annotation=="function"?t=this.mapOpts.annotation(this.opts.to,this.root):t=this.outputFile()+".map";var i=`
`;this.css.includes(`\r
`)&&(i=`\r
`),this.css+=i+"/*# sourceMappingURL="+t+" */"},a.applyPrevMaps=function(){for(var t=B(this.previous()),i;!(i=t()).done;){var r=i.value,o=this.toUrl(this.path(r.file)),s=r.root||Cl(r.file),l=void 0;this.mapOpts.sourcesContent===!1?(l=new xw(r.text),l.sourcesContent&&(l.sourcesContent=null)):l=r.consumer(),this.map.applySourceMap(l,o,this.toUrl(this.path(s)))}},a.clearAnnotation=function(){if(this.mapOpts.annotation!==!1)if(this.root)for(var t,i=this.root.nodes.length-1;i>=0;i--)t=this.root.nodes[i],t.type==="comment"&&t.text.indexOf("# sourceMappingURL=")===0&&this.root.removeChild(i);else this.css&&(this.css=this.css.replace(/\n*?\/\*#[\S\s]*?\*\/$/gm,""))},a.generate=function(){if(this.clearAnnotation(),gre&&mre&&this.isMap())return this.generateMap();var t="";return this.stringify(this.root,function(i){t+=i}),[t]},a.generateMap=function(){if(this.root)this.generateString();else if(this.previous().length===1){var t=this.previous()[0].consumer();t.file=this.outputFile(),this.map=Sl.fromSourceMap(t,{ignoreInvalidMapping:!0})}else this.map=new Sl({file:this.outputFile(),ignoreInvalidMapping:!0}),this.map.addMapping({generated:{column:0,line:1},original:{column:0,line:1},source:this.opts.from?this.toUrl(this.path(this.opts.from)):"<no source>"});return this.isSourcesContent()&&this.setSourcesContent(),this.root&&this.previous().length>0&&this.applyPrevMaps(),this.isAnnotation()&&this.addAnnotation(),this.isInline()?[this.css]:[this.css,this.map]},a.generateString=function(){var t=this;this.css="",this.map=new Sl({file:this.outputFile(),ignoreInvalidMapping:!0});var i=1,r=1,o="<no source>",s={generated:{column:0,line:0},original:{column:0,line:0},source:""},l,d;this.stringify(this.root,function(p,u,g){if(t.css+=p,u&&g!=="end"&&(s.generated.line=i,s.generated.column=r-1,u.source&&u.source.start?(s.source=t.sourcePath(u),s.original.line=u.source.start.line,s.original.column=u.source.start.column-1,t.map.addMapping(s)):(s.source=o,s.original.line=1,s.original.column=0,t.map.addMapping(s))),l=p.match(/\n/g),l?(i+=l.length,d=p.lastIndexOf(`
`),r=p.length-d):r+=p.length,u&&g!=="start"){var b=u.parent||{raws:{}},v=u.type==="decl"||u.type==="atrule"&&!u.nodes;(!v||u!==b.last||b.raws.semicolon)&&(u.source&&u.source.end?(s.source=t.sourcePath(u),s.original.line=u.source.end.line,s.original.column=u.source.end.column-1,s.generated.line=i,s.generated.column=r-2,t.map.addMapping(s)):(s.source=o,s.original.line=1,s.original.column=0,s.generated.line=i,s.generated.column=r-1,t.map.addMapping(s)))}})},a.isAnnotation=function(){return this.isInline()?!0:typeof this.mapOpts.annotation<"u"?this.mapOpts.annotation:this.previous().length?this.previous().some(function(t){return t.annotation}):!0},a.isInline=function(){if(typeof this.mapOpts.inline<"u")return this.mapOpts.inline;var t=this.mapOpts.annotation;return typeof t<"u"&&t!==!0?!1:this.previous().length?this.previous().some(function(i){return i.inline}):!0},a.isMap=function(){return typeof this.opts.map<"u"?!!this.opts.map:this.previous().length>0},a.isSourcesContent=function(){return typeof this.mapOpts.sourcesContent<"u"?this.mapOpts.sourcesContent:this.previous().length?this.previous().some(function(t){return t.withContent()}):!0},a.outputFile=function(){return this.opts.to?this.path(this.opts.to):this.opts.from?this.path(this.opts.from):"to.css"},a.path=function(t){if(this.mapOpts.absolute||t.charCodeAt(0)===60||/^\w+:\/\//.test(t))return t;var i=this.memoizedPaths.get(t);if(i)return i;var r=this.opts.to?Cl(this.opts.to):".";typeof this.mapOpts.annotation=="string"&&(r=Cl(Rw(r,this.mapOpts.annotation)));var o=Iw(r,t);return this.memoizedPaths.set(t,o),o},a.previous=function(){var t=this;if(!this.previousMaps)if(this.previousMaps=[],this.root)this.root.walk(function(r){if(r.source&&r.source.input.map){var o=r.source.input.map;t.previousMaps.includes(o)||t.previousMaps.push(o)}});else{var i=new pre(this.originalCSS,this.opts);i.map&&this.previousMaps.push(i.map)}return this.previousMaps},a.setSourcesContent=function(){var t=this,i={};if(this.root)this.root.walk(function(o){if(o.source){var s=o.source.input.from;if(s&&!i[s]){i[s]=!0;var l=t.usesFileUrls?t.toFileUrl(s):t.toUrl(t.path(s));t.map.setSourceContent(l,o.source.input.css)}}});else if(this.css){var r=this.opts.from?this.toUrl(this.path(this.opts.from)):"<no source>";this.map.setSourceContent(r,this.css)}},a.sourcePath=function(t){return this.mapOpts.from?this.toUrl(this.mapOpts.from):this.usesFileUrls?this.toFileUrl(t.source.input.from):this.toUrl(this.path(t.source.input.from))},a.toBase64=function(t){return Buffer?Buffer.from(t).toString("base64"):window.btoa(unescape(encodeURIComponent(t)))},a.toFileUrl=function(t){var i=this.memoizedFileURLs.get(t);if(i)return i;if(Dv){var r=Dv(t).toString();return this.memoizedFileURLs.set(t,r),r}else throw new Error("`map.absolute` option is not available in this PostCSS build")},a.toUrl=function(t){var i=this.memoizedURLs.get(t);if(i)return i;zw==="\\"&&(t=t.replace(/\\/g,"/"));var r=encodeURI(t).replace(/[#?]/g,encodeURIComponent);return this.memoizedURLs.set(t,r),r},e})(),Mw=hre,fre=ed,Sp=(function(e){lt(a,e);function a(n){var t;return t=e.call(this,n)||this,t.type="comment",t}return a})(fre),nd=Sp;Sp.default=Sp;var Nw=ri.isClean,Fw=ri.my,Lw=td,jw=nd,vre=ed,Ow,Mg,Ng,Bw;function Uw(e){return e.map(function(a){return a.nodes&&(a.nodes=Uw(a.nodes)),delete a.source,a})}function qw(e){if(e[Nw]=!1,e.proxyOf.nodes)for(var a=B(e.proxyOf.nodes),n;!(n=a()).done;){var t=n.value;qw(t)}}var xn=(function(e){lt(a,e);function a(){return e.apply(this,arguments)||this}var n=a.prototype;return n.append=function(){for(var i=arguments.length,r=new Array(i),o=0;o<i;o++)r[o]=arguments[o];for(var s=B(r),l;!(l=s()).done;)for(var d=l.value,p=this.normalize(d,this.last),u=B(p),g;!(g=u()).done;){var b=g.value;this.proxyOf.nodes.push(b)}return this.markDirty(),this},n.cleanRaws=function(i){if(e.prototype.cleanRaws.call(this,i),this.nodes)for(var r=B(this.nodes),o;!(o=r()).done;){var s=o.value;s.cleanRaws(i)}},n.each=function(i){if(this.proxyOf.nodes){for(var r=this.getIterator(),o,s;this.indexes[r]<this.proxyOf.nodes.length&&(o=this.indexes[r],s=i(this.proxyOf.nodes[o],o),s!==!1);)this.indexes[r]+=1;return delete this.indexes[r],s}},n.every=function(i){return this.nodes.every(i)},n.getIterator=function(){this.lastEach||(this.lastEach=0),this.indexes||(this.indexes={}),this.lastEach+=1;var i=this.lastEach;return this.indexes[i]=0,i},n.getProxyProcessor=function(){return{get:function(r,o){return o==="proxyOf"?r:r[o]?o==="each"||typeof o=="string"&&o.startsWith("walk")?function(){for(var s=arguments.length,l=new Array(s),d=0;d<s;d++)l[d]=arguments[d];var p;return(p=r)[o].apply(p,[].concat(l.map(function(u){return typeof u=="function"?function(g,b){return u(g.toProxy(),b)}:u})))}:o==="every"||o==="some"?function(s){return r[o](function(l){for(var d=arguments.length,p=new Array(d>1?d-1:0),u=1;u<d;u++)p[u-1]=arguments[u];return s.apply(void 0,[].concat([l.toProxy()],p))})}:o==="root"?function(){return r.root().toProxy()}:o==="nodes"?r.nodes.map(function(s){return s.toProxy()}):o==="first"||o==="last"?r[o].toProxy():r[o]:r[o]},set:function(r,o,s){return r[o]===s||(r[o]=s,(o==="name"||o==="params"||o==="selector")&&r.markDirty()),!0}}},n.index=function(i){return typeof i=="number"?i:(i.proxyOf&&(i=i.proxyOf),this.proxyOf.nodes.indexOf(i))},n.insertAfter=function(i,r){var o=this.index(i),s=this.normalize(r,this.proxyOf.nodes[o]).reverse();o=this.index(i);for(var l=B(s),d;!(d=l()).done;){var p=d.value;this.proxyOf.nodes.splice(o+1,0,p)}var u;for(var g in this.indexes)u=this.indexes[g],o<u&&(this.indexes[g]=u+s.length);return this.markDirty(),this},n.insertBefore=function(i,r){var o=this.index(i),s=o===0?"prepend":!1,l=this.normalize(r,this.proxyOf.nodes[o],s).reverse();o=this.index(i);for(var d=B(l),p;!(p=d()).done;){var u=p.value;this.proxyOf.nodes.splice(o,0,u)}var g;for(var b in this.indexes)g=this.indexes[b],o<=g&&(this.indexes[b]=g+l.length);return this.markDirty(),this},n.normalize=function(i,r){var o=this;if(typeof i=="string")i=Uw(Ow(i).nodes);else if(typeof i>"u")i=[];else if(Array.isArray(i)){i=i.slice(0);for(var s=B(i),l;!(l=s()).done;){var d=l.value;d.parent&&d.parent.removeChild(d,"ignore")}}else if(i.type==="root"&&this.type!=="document"){i=i.nodes.slice(0);for(var p=B(i),u;!(u=p()).done;){var g=u.value;g.parent&&g.parent.removeChild(g,"ignore")}}else if(i.type)i=[i];else if(i.prop){if(typeof i.value>"u")throw new Error("Value field is missed in node creation");typeof i.value!="string"&&(i.value=String(i.value)),i=[new Lw(i)]}else if(i.selector)i=[new Mg(i)];else if(i.name)i=[new Ng(i)];else if(i.text)i=[new jw(i)];else throw new Error("Unknown node type in node creation");var b=i.map(function(v){return v[Fw]||a.rebuild(v),v=v.proxyOf,v.parent&&v.parent.removeChild(v),v[Nw]&&qw(v),typeof v.raws.before>"u"&&r&&typeof r.raws.before<"u"&&(v.raws.before=r.raws.before.replace(/\S/g,"")),v.parent=o.proxyOf,v});return b},n.prepend=function(){for(var i=arguments.length,r=new Array(i),o=0;o<i;o++)r[o]=arguments[o];r=r.reverse();for(var s=B(r),l;!(l=s()).done;){for(var d=l.value,p=this.normalize(d,this.first,"prepend").reverse(),u=B(p),g;!(g=u()).done;){var b=g.value;this.proxyOf.nodes.unshift(b)}for(var v in this.indexes)this.indexes[v]=this.indexes[v]+p.length}return this.markDirty(),this},n.push=function(i){return i.parent=this,this.proxyOf.nodes.push(i),this},n.removeAll=function(){for(var i=B(this.proxyOf.nodes),r;!(r=i()).done;){var o=r.value;o.parent=void 0}return this.proxyOf.nodes=[],this.markDirty(),this},n.removeChild=function(i){i=this.index(i),this.proxyOf.nodes[i].parent=void 0,this.proxyOf.nodes.splice(i,1);var r;for(var o in this.indexes)r=this.indexes[o],r>=i&&(this.indexes[o]=r-1);return this.markDirty(),this},n.replaceValues=function(i,r,o){return o||(o=r,r={}),this.walkDecls(function(s){r.props&&!r.props.includes(s.prop)||r.fast&&!s.value.includes(r.fast)||(s.value=s.value.replace(i,o))}),this.markDirty(),this},n.some=function(i){return this.nodes.some(i)},n.walk=function(i){return this.each(function(r,o){var s;try{s=i(r,o)}catch(l){throw r.addToError(l)}return s!==!1&&r.walk&&(s=r.walk(i)),s})},n.walkAtRules=function(i,r){return r?le(i,RegExp)?this.walk(function(o,s){if(o.type==="atrule"&&i.test(o.name))return r(o,s)}):this.walk(function(o,s){if(o.type==="atrule"&&o.name===i)return r(o,s)}):(r=i,this.walk(function(o,s){if(o.type==="atrule")return r(o,s)}))},n.walkComments=function(i){return this.walk(function(r,o){if(r.type==="comment")return i(r,o)})},n.walkDecls=function(i,r){return r?le(i,RegExp)?this.walk(function(o,s){if(o.type==="decl"&&i.test(o.prop))return r(o,s)}):this.walk(function(o,s){if(o.type==="decl"&&o.prop===i)return r(o,s)}):(r=i,this.walk(function(o,s){if(o.type==="decl")return r(o,s)}))},n.walkRules=function(i,r){return r?le(i,RegExp)?this.walk(function(o,s){if(o.type==="rule"&&i.test(o.selector))return r(o,s)}):this.walk(function(o,s){if(o.type==="rule"&&o.selector===i)return r(o,s)}):(r=i,this.walk(function(o,s){if(o.type==="rule")return r(o,s)}))},rt(a,[{key:"first",get:function(){if(this.proxyOf.nodes)return this.proxyOf.nodes[0]}},{key:"last",get:function(){if(this.proxyOf.nodes)return this.proxyOf.nodes[this.proxyOf.nodes.length-1]}}]),a})(vre);xn.registerParse=function(e){Ow=e};xn.registerRule=function(e){Mg=e};xn.registerAtRule=function(e){Ng=e};xn.registerRoot=function(e){Bw=e};var Ii=xn;xn.default=xn;xn.rebuild=function(e){e.type==="atrule"?Object.setPrototypeOf(e,Ng.prototype):e.type==="rule"?Object.setPrototypeOf(e,Mg.prototype):e.type==="decl"?Object.setPrototypeOf(e,Lw.prototype):e.type==="comment"?Object.setPrototypeOf(e,jw.prototype):e.type==="root"&&Object.setPrototypeOf(e,Bw.prototype),e[Fw]=!0,e.nodes&&e.nodes.forEach(function(a){xn.rebuild(a)})};var bre=Ii,Vw,$w,To=(function(e){lt(a,e);function a(t){var i;return i=e.call(this,Ce({type:"document"},t))||this,i.nodes||(i.nodes=[]),i}var n=a.prototype;return n.toResult=function(i){i===void 0&&(i={});var r=new Vw(new $w,this,i);return r.stringify()},a})(bre);To.registerLazyResult=function(e){Vw=e};To.registerProcessor=function(e){$w=e};var Fg=To;To.default=To;var Cp=(function(){function e(n,t){if(t===void 0&&(t={}),this.type="warning",this.text=n,t.node&&t.node.source){var i=t.node.rangeBy(t);this.line=i.start.line,this.column=i.start.column,this.endLine=i.end.line,this.endColumn=i.end.column}for(var r in t)this[r]=t[r]}var a=e.prototype;return a.toString=function(){return this.node?this.node.error(this.text,{index:this.index,plugin:this.plugin,word:this.word}).message:this.plugin?this.plugin+": "+this.text:this.text},e})(),Ww=Cp;Cp.default=Cp;var yre=Ww,Dp=(function(){function e(n,t,i){this.processor=n,this.messages=[],this.root=t,this.opts=i,this.css=void 0,this.map=void 0}var a=e.prototype;return a.toString=function(){return this.css},a.warn=function(t,i){i===void 0&&(i={}),i.plugin||this.lastPlugin&&this.lastPlugin.postcssPlugin&&(i.plugin=this.lastPlugin.postcssPlugin);var r=new yre(t,i);return this.messages.push(r),r},a.warnings=function(){return this.messages.filter(function(t){return t.type==="warning"})},rt(e,[{key:"content",get:function(){return this.css}}]),e})(),Lg=Dp;Dp.default=Dp;var iu=39,Tv=34,xs=92,Ev=47,Is=10,Jr=32,Rs=12,zs=9,Ms=13,kre=91,wre=93,Are=40,Sre=41,Cre=123,Dre=125,Tre=59,Ere=42,Pre=58,_re=64,Ns=/[\t\n\f\r "#'()/;[\\\]{}]/g,Fs=/[\t\n\f\r !"#'():;@[\\\]{}]|\/(?=\*)/g,xre=/.[\r\n"'(/\\]/,Pv=/[\da-f]/i,Ire=function(a,n){n===void 0&&(n={});var t=a.css.valueOf(),i=n.ignoreErrors,r,o,s,l,d,p,u,g,b,v,A=t.length,f=0,S=[],C=[];function T(){return f}function E(N){throw a.error("Unclosed "+N,f)}function P(){return C.length===0&&f>=A}function I(N){if(C.length)return C.pop();if(!(f>=A)){var Z=N?N.ignoreUnclosed:!1;switch(r=t.charCodeAt(f),r){case Is:case Jr:case zs:case Ms:case Rs:{o=f;do o+=1,r=t.charCodeAt(o);while(r===Jr||r===Is||r===zs||r===Ms||r===Rs);v=["space",t.slice(f,o)],f=o-1;break}case kre:case wre:case Cre:case Dre:case Pre:case Tre:case Sre:{var R=String.fromCharCode(r);v=[R,R,f];break}case Are:{if(g=S.length?S.pop()[1]:"",b=t.charCodeAt(f+1),g==="url"&&b!==iu&&b!==Tv&&b!==Jr&&b!==Is&&b!==zs&&b!==Rs&&b!==Ms){o=f;do{if(p=!1,o=t.indexOf(")",o+1),o===-1)if(i||Z){o=f;break}else E("bracket");for(u=o;t.charCodeAt(u-1)===xs;)u-=1,p=!p}while(p);v=["brackets",t.slice(f,o+1),f,o],f=o}else o=t.indexOf(")",f+1),l=t.slice(f,o+1),o===-1||xre.test(l)?v=["(","(",f]:(v=["brackets",l,f,o],f=o);break}case iu:case Tv:{s=r===iu?"'":'"',o=f;do{if(p=!1,o=t.indexOf(s,o+1),o===-1)if(i||Z){o=f+1;break}else E("string");for(u=o;t.charCodeAt(u-1)===xs;)u-=1,p=!p}while(p);v=["string",t.slice(f,o+1),f,o],f=o;break}case _re:{Ns.lastIndex=f+1,Ns.test(t),Ns.lastIndex===0?o=t.length-1:o=Ns.lastIndex-2,v=["at-word",t.slice(f,o+1),f,o],f=o;break}case xs:{for(o=f,d=!0;t.charCodeAt(o+1)===xs;)o+=1,d=!d;if(r=t.charCodeAt(o+1),d&&r!==Ev&&r!==Jr&&r!==Is&&r!==zs&&r!==Ms&&r!==Rs&&(o+=1,Pv.test(t.charAt(o)))){for(;Pv.test(t.charAt(o+1));)o+=1;t.charCodeAt(o+1)===Jr&&(o+=1)}v=["word",t.slice(f,o+1),f,o],f=o;break}default:{r===Ev&&t.charCodeAt(f+1)===Ere?(o=t.indexOf("*/",f+2)+1,o===0&&(i||Z?o=t.length:E("comment")),v=["comment",t.slice(f,o+1),f,o],f=o):(Fs.lastIndex=f+1,Fs.test(t),Fs.lastIndex===0?o=t.length-1:o=Fs.lastIndex-2,v=["word",t.slice(f,o+1),f,o],S.push(v),f=o);break}}return f++,v}}function L(N){C.push(N)}return{back:L,endOfFile:P,nextToken:I,position:T}},Gw=Ii,Ql=(function(e){lt(a,e);function a(t){var i;return i=e.call(this,t)||this,i.type="atrule",i}var n=a.prototype;return n.append=function(){for(var i=arguments.length,r=new Array(i),o=0;o<i;o++)r[o]=arguments[o];var s;return this.proxyOf.nodes||(this.nodes=[]),(s=e.prototype.append).call.apply(s,[].concat([this],r))},n.prepend=function(){for(var i=arguments.length,r=new Array(i),o=0;o<i;o++)r[o]=arguments[o];var s;return this.proxyOf.nodes||(this.nodes=[]),(s=e.prototype.prepend).call.apply(s,[].concat([this],r))},a})(Gw),jg=Ql;Ql.default=Ql;Gw.registerAtRule(Ql);var Hw=Ii,Yw,Kw,fr=(function(e){lt(a,e);function a(t){var i;return i=e.call(this,t)||this,i.type="root",i.nodes||(i.nodes=[]),i}var n=a.prototype;return n.normalize=function(i,r,o){var s=e.prototype.normalize.call(this,i);if(r){if(o==="prepend")this.nodes.length>1?r.raws.before=this.nodes[1].raws.before:delete r.raws.before;else if(this.first!==r)for(var l=B(s),d;!(d=l()).done;){var p=d.value;p.raws.before=r.raws.before}}return s},n.removeChild=function(i,r){var o=this.index(i);return!r&&o===0&&this.nodes.length>1&&(this.nodes[1].raws.before=this.nodes[o].raws.before),e.prototype.removeChild.call(this,i)},n.toResult=function(i){i===void 0&&(i={});var r=new Yw(new Kw,this,i);return r.stringify()},a})(Hw);fr.registerLazyResult=function(e){Yw=e};fr.registerProcessor=function(e){Kw=e};var es=fr;fr.default=fr;Hw.registerRoot(fr);var Eo={comma:function(a){return Eo.split(a,[","],!0)},space:function(a){var n=[" ",`
`," "];return Eo.split(a,n)},split:function(a,n,t){for(var i=[],r="",o=!1,s=0,l=!1,d="",p=!1,u=B(a),g;!(g=u()).done;){var b=g.value;p?p=!1:b==="\\"?p=!0:l?b===d&&(l=!1):b==='"'||b==="'"?(l=!0,d=b):b==="("?s+=1:b===")"?s>0&&(s-=1):s===0&&n.includes(b)&&(o=!0),o?(r!==""&&i.push(r.trim()),r="",o=!1):r+=b}return(t||r!=="")&&i.push(r.trim()),i}},Zw=Eo;Eo.default=Eo;var Jw=Ii,Rre=Zw,Xl=(function(e){lt(a,e);function a(n){var t;return t=e.call(this,n)||this,t.type="rule",t.nodes||(t.nodes=[]),t}return rt(a,[{key:"selectors",get:function(){return Rre.comma(this.selector)},set:function(t){var i=this.selector?this.selector.match(/,\s*/):null,r=i?i[0]:","+this.raw("between","beforeOpen");this.selector=t.join(r)}}]),a})(Jw),Og=Xl;Xl.default=Xl;Jw.registerRule(Xl);var zre=td,Mre=Ire,Nre=nd,Fre=jg,Lre=es,_v=Og,xv={empty:!0,space:!0};function jre(e){for(var a=e.length-1;a>=0;a--){var n=e[a],t=n[3]||n[2];if(t)return t}}var Ore=(function(){function e(n){this.input=n,this.root=new Lre,this.current=this.root,this.spaces="",this.semicolon=!1,this.createTokenizer(),this.root.source={input:n,start:{column:1,line:1,offset:0}}}var a=e.prototype;return a.atrule=function(t){var i=new Fre;i.name=t[1].slice(1),i.name===""&&this.unnamedAtrule(i,t),this.init(i,t[2]);for(var r,o,s,l=!1,d=!1,p=[],u=[];!this.tokenizer.endOfFile();){if(t=this.tokenizer.nextToken(),r=t[0],r==="("||r==="["?u.push(r==="("?")":"]"):r==="{"&&u.length>0?u.push("}"):r===u[u.length-1]&&u.pop(),u.length===0)if(r===";"){i.source.end=this.getPosition(t[2]),i.source.end.offset++,this.semicolon=!0;break}else if(r==="{"){d=!0;break}else if(r==="}"){if(p.length>0){for(s=p.length-1,o=p[s];o&&o[0]==="space";)o=p[--s];o&&(i.source.end=this.getPosition(o[3]||o[2]),i.source.end.offset++)}this.end(t);break}else p.push(t);else p.push(t);if(this.tokenizer.endOfFile()){l=!0;break}}i.raws.between=this.spacesAndCommentsFromEnd(p),p.length?(i.raws.afterName=this.spacesAndCommentsFromStart(p),this.raw(i,"params",p),l&&(t=p[p.length-1],i.source.end=this.getPosition(t[3]||t[2]),i.source.end.offset++,this.spaces=i.raws.between,i.raws.between="")):(i.raws.afterName="",i.params=""),d&&(i.nodes=[],this.current=i)},a.checkMissedSemicolon=function(t){var i=this.colon(t);if(i!==!1){for(var r=0,o,s=i-1;s>=0&&(o=t[s],!(o[0]!=="space"&&(r+=1,r===2)));s--);throw this.input.error("Missed semicolon",o[0]==="word"?o[3]+1:o[2])}},a.colon=function(t){for(var i=0,r,o,s,l=B(t.entries()),d;!(d=l()).done;){var p=d.value,u=p[0],g=p[1];if(r=g,o=r[0],o==="("&&(i+=1),o===")"&&(i-=1),i===0&&o===":")if(!s)this.doubleColon(r);else{if(s[0]==="word"&&s[1]==="progid")continue;return u}s=r}return!1},a.comment=function(t){var i=new Nre;this.init(i,t[2]),i.source.end=this.getPosition(t[3]||t[2]),i.source.end.offset++;var r=t[1].slice(2,-2);if(/^\s*$/.test(r))i.text="",i.raws.left=r,i.raws.right="";else{var o=r.match(/^(\s*)([^]*\S)(\s*)$/);i.text=o[2],i.raws.left=o[1],i.raws.right=o[3]}},a.createTokenizer=function(){this.tokenizer=Mre(this.input)},a.decl=function(t,i){var r=new zre;this.init(r,t[0][2]);var o=t[t.length-1];for(o[0]===";"&&(this.semicolon=!0,t.pop()),r.source.end=this.getPosition(o[3]||o[2]||jre(t)),r.source.end.offset++;t[0][0]!=="word";)t.length===1&&this.unknownWord(t),r.raws.before+=t.shift()[1];for(r.source.start=this.getPosition(t[0][2]),r.prop="";t.length;){var s=t[0][0];if(s===":"||s==="space"||s==="comment")break;r.prop+=t.shift()[1]}r.raws.between="";for(var l;t.length;)if(l=t.shift(),l[0]===":"){r.raws.between+=l[1];break}else l[0]==="word"&&/\w/.test(l[1])&&this.unknownWord([l]),r.raws.between+=l[1];(r.prop[0]==="_"||r.prop[0]==="*")&&(r.raws.before+=r.prop[0],r.prop=r.prop.slice(1));for(var d=[],p;t.length&&(p=t[0][0],!(p!=="space"&&p!=="comment"));)d.push(t.shift());this.precheckMissedSemicolon(t);for(var u=t.length-1;u>=0;u--){if(l=t[u],l[1].toLowerCase()==="!important"){r.important=!0;var g=this.stringFrom(t,u);g=this.spacesFromEnd(t)+g,g!==" !important"&&(r.raws.important=g);break}else if(l[1].toLowerCase()==="important"){for(var b=t.slice(0),v="",A=u;A>0;A--){var f=b[A][0];if(v.trim().indexOf("!")===0&&f!=="space")break;v=b.pop()[1]+v}v.trim().indexOf("!")===0&&(r.important=!0,r.raws.important=v,t=b)}if(l[0]!=="space"&&l[0]!=="comment")break}var S=t.some(function(C){return C[0]!=="space"&&C[0]!=="comment"});S&&(r.raws.between+=d.map(function(C){return C[1]}).join(""),d=[]),this.raw(r,"value",d.concat(t),i),r.value.includes(":")&&!i&&this.checkMissedSemicolon(t)},a.doubleColon=function(t){throw this.input.error("Double colon",{offset:t[2]},{offset:t[2]+t[1].length})},a.emptyRule=function(t){var i=new _v;this.init(i,t[2]),i.selector="",i.raws.between="",this.current=i},a.end=function(t){this.current.nodes&&this.current.nodes.length&&(this.current.raws.semicolon=this.semicolon),this.semicolon=!1,this.current.raws.after=(this.current.raws.after||"")+this.spaces,this.spaces="",this.current.parent?(this.current.source.end=this.getPosition(t[2]),this.current.source.end.offset++,this.current=this.current.parent):this.unexpectedClose(t)},a.endFile=function(){this.current.parent&&this.unclosedBlock(),this.current.nodes&&this.current.nodes.length&&(this.current.raws.semicolon=this.semicolon),this.current.raws.after=(this.current.raws.after||"")+this.spaces,this.root.source.end=this.getPosition(this.tokenizer.position())},a.freeSemicolon=function(t){if(this.spaces+=t[1],this.current.nodes){var i=this.current.nodes[this.current.nodes.length-1];i&&i.type==="rule"&&!i.raws.ownSemicolon&&(i.raws.ownSemicolon=this.spaces,this.spaces="")}},a.getPosition=function(t){var i=this.input.fromOffset(t);return{column:i.col,line:i.line,offset:t}},a.init=function(t,i){this.current.push(t),t.source={input:this.input,start:this.getPosition(i)},t.raws.before=this.spaces,this.spaces="",t.type!=="comment"&&(this.semicolon=!1)},a.other=function(t){for(var i=!1,r=null,o=!1,s=null,l=[],d=t[1].startsWith("--"),p=[],u=t;u;){if(r=u[0],p.push(u),r==="("||r==="[")s||(s=u),l.push(r==="("?")":"]");else if(d&&o&&r==="{")s||(s=u),l.push("}");else if(l.length===0)if(r===";")if(o){this.decl(p,d);return}else break;else if(r==="{"){this.rule(p);return}else if(r==="}"){this.tokenizer.back(p.pop()),i=!0;break}else r===":"&&(o=!0);else r===l[l.length-1]&&(l.pop(),l.length===0&&(s=null));u=this.tokenizer.nextToken()}if(this.tokenizer.endOfFile()&&(i=!0),l.length>0&&this.unclosedBracket(s),i&&o){if(!d)for(;p.length&&(u=p[p.length-1][0],!(u!=="space"&&u!=="comment"));)this.tokenizer.back(p.pop());this.decl(p,d)}else this.unknownWord(p)},a.parse=function(){for(var t;!this.tokenizer.endOfFile();)switch(t=this.tokenizer.nextToken(),t[0]){case"space":this.spaces+=t[1];break;case";":this.freeSemicolon(t);break;case"}":this.end(t);break;case"comment":this.comment(t);break;case"at-word":this.atrule(t);break;case"{":this.emptyRule(t);break;default:this.other(t);break}this.endFile()},a.precheckMissedSemicolon=function(){},a.raw=function(t,i,r,o){for(var s,l,d=r.length,p="",u=!0,g,b,v=0;v<d;v+=1)s=r[v],l=s[0],l==="space"&&v===d-1&&!o?u=!1:l==="comment"?(b=r[v-1]?r[v-1][0]:"empty",g=r[v+1]?r[v+1][0]:"empty",!xv[b]&&!xv[g]?p.slice(-1)===","?u=!1:p+=s[1]:u=!1):p+=s[1];if(!u){var A=r.reduce(function(f,S){return f+S[1]},"");t.raws[i]={raw:A,value:p}}t[i]=p},a.rule=function(t){t.pop();var i=new _v;this.init(i,t[0][2]),i.raws.between=this.spacesAndCommentsFromEnd(t),this.raw(i,"selector",t),this.current=i},a.spacesAndCommentsFromEnd=function(t){for(var i,r="";t.length&&(i=t[t.length-1][0],!(i!=="space"&&i!=="comment"));)r=t.pop()[1]+r;return r},a.spacesAndCommentsFromStart=function(t){for(var i,r="";t.length&&(i=t[0][0],!(i!=="space"&&i!=="comment"));)r+=t.shift()[1];return r},a.spacesFromEnd=function(t){for(var i,r="";t.length&&(i=t[t.length-1][0],i==="space");)r=t.pop()[1]+r;return r},a.stringFrom=function(t,i){for(var r="",o=i;o<t.length;o++)r+=t[o][1];return t.splice(i,t.length-i),r},a.unclosedBlock=function(){var t=this.current.source.start;throw this.input.error("Unclosed block",t.line,t.column)},a.unclosedBracket=function(t){throw this.input.error("Unclosed bracket",{offset:t[2]},{offset:t[2]+1})},a.unexpectedClose=function(t){throw this.input.error("Unexpected }",{offset:t[2]},{offset:t[2]+1})},a.unknownWord=function(t){throw this.input.error("Unknown word",{offset:t[0][2]},{offset:t[0][2]+t[0][1].length})},a.unnamedAtrule=function(t,i){throw this.input.error("At-rule without name",{offset:i[2]},{offset:i[2]+i[1].length})},e})(),Bre=Ore,Ure=Ii,qre=Bre,Vre=ad;function ec(e,a){var n=new Vre(e,a),t=new qre(n);try{t.parse()}catch(i){throw i}return t.root}var Bg=ec;ec.default=ec;Ure.registerParse(ec);var ja=ri.isClean,$re=ri.my,Wre=Mw,Gre=Xc,Hre=Ii,Yre=Fg,Iv=Lg,Kre=Bg,Zre=es,Jre={atrule:"AtRule",comment:"Comment",decl:"Declaration",document:"Document",root:"Root",rule:"Rule"},Qre={AtRule:!0,AtRuleExit:!0,Comment:!0,CommentExit:!0,Declaration:!0,DeclarationExit:!0,Document:!0,DocumentExit:!0,Once:!0,OnceExit:!0,postcssPlugin:!0,prepare:!0,Root:!0,RootExit:!0,Rule:!0,RuleExit:!0},Xre={Once:!0,postcssPlugin:!0,prepare:!0},vr=0;function Qr(e){return(typeof e>"u"?"undefined":ce(e))==="object"&&typeof e.then=="function"}function Qw(e){var a=!1,n=Jre[e.type];return e.type==="decl"?a=e.prop.toLowerCase():e.type==="atrule"&&(a=e.name.toLowerCase()),a&&e.append?[n,n+"-"+a,vr,n+"Exit",n+"Exit-"+a]:a?[n,n+"-"+a,n+"Exit",n+"Exit-"+a]:e.append?[n,vr,n+"Exit"]:[n,n+"Exit"]}function Rv(e){var a;return e.type==="document"?a=["Document",vr,"DocumentExit"]:e.type==="root"?a=["Root",vr,"RootExit"]:a=Qw(e),{eventIndex:0,events:a,iterator:0,node:e,visitorIndex:0,visitors:[]}}function Tp(e){return e[ja]=!1,e.nodes&&e.nodes.forEach(function(a){return Tp(a)}),e}var Ep={},br=(function(){function e(n,t,i){var r=this;this.stringified=!1,this.processed=!1;var o;if((typeof t>"u"?"undefined":ce(t))==="object"&&t!==null&&(t.type==="root"||t.type==="document"))o=Tp(t);else if(le(t,e)||le(t,Iv))o=Tp(t.root),t.map&&(typeof i.map>"u"&&(i.map={}),i.map.inline||(i.map.inline=!1),i.map.prev=t.map);else{var s=Kre;i.syntax&&(s=i.syntax.parse),i.parser&&(s=i.parser),s.parse&&(s=s.parse);try{o=s(t,i)}catch(l){this.processed=!0,this.error=l}o&&!o[$re]&&Hre.rebuild(o)}this.result=new Iv(n,o,i),this.helpers=Ce({},Ep,{postcss:Ep,result:this.result}),this.plugins=this.processor.plugins.map(function(l){return(typeof l>"u"?"undefined":ce(l))==="object"&&l.prepare?Ce({},l,l.prepare(r.result)):l})}var a=e.prototype;return a.async=function(){return this.error?Promise.reject(this.error):this.processed?Promise.resolve(this.result):(this.processing||(this.processing=this.runAsync()),this.processing)},a.catch=function(t){return this.async().catch(t)},a.finally=function(t){return this.async().then(t,t)},a.getAsyncError=function(){throw new Error("Use process(css).then(cb) to work with async plugins")},a.handleError=function(t,i){var r=this.result.lastPlugin;try{if(i&&i.addToError(t),this.error=t,t.name==="CssSyntaxError"&&!t.plugin)t.plugin=r.postcssPlugin,t.setMessage();else if(r.postcssVersion)var o,s,l,d,p}catch{}return t},a.prepareVisitors=function(){var t=this;this.listeners={};for(var i=function(p,u,g){t.listeners[u]||(t.listeners[u]=[]),t.listeners[u].push([p,g])},r=B(this.plugins),o;!(o=r()).done;){var s=o.value;if((typeof s>"u"?"undefined":ce(s))==="object")for(var l in s){if(!Qre[l]&&/^[A-Z]/.test(l))throw new Error("Unknown event "+l+" in "+s.postcssPlugin+". Try to update PostCSS ("+this.processor.version+" now).");if(!Xre[l])if(ce(s[l])==="object")for(var d in s[l])d==="*"?i(s,l,s[l][d]):i(s,l+"-"+d.toLowerCase(),s[l][d]);else typeof s[l]=="function"&&i(s,l,s[l])}}this.hasListener=Object.keys(this.listeners).length>0},a.runAsync=function(){var t=this;return Qc(function(){var i,r,o,s,l,d,p,u,g,b,v,A;return Di(this,function(f){switch(f.label){case 0:t.plugin=0,i=0,f.label=1;case 1:if(!(i<t.plugins.length))return[3,6];if(r=t.plugins[i],o=t.runOnRoot(r),!Qr(o))return[3,5];f.label=2;case 2:return f.trys.push([2,4,,5]),[4,o];case 3:return f.sent(),[3,5];case 4:throw s=f.sent(),t.handleError(s);case 5:return i++,[3,1];case 6:if(t.prepareVisitors(),!t.hasListener)return[3,18];l=t.result.root,f.label=7;case 7:if(l[ja])return[3,14];l[ja]=!0,d=[Rv(l)],f.label=8;case 8:if(!(d.length>0))return[3,13];if(p=t.visitTick(d),!Qr(p))return[3,12];f.label=9;case 9:return f.trys.push([9,11,,12]),[4,p];case 10:return f.sent(),[3,12];case 11:throw u=f.sent(),g=d[d.length-1].node,t.handleError(u,g);case 12:return[3,8];case 13:return[3,7];case 14:if(!t.listeners.OnceExit)return[3,18];b=function(){var S,C,T,E,P;return Di(this,function(I){switch(I.label){case 0:S=A.value,C=S[0],T=S[1],t.result.lastPlugin=C,I.label=1;case 1:return I.trys.push([1,6,,7]),l.type!=="document"?[3,3]:(E=l.nodes.map(function(L){return T(L,t.helpers)}),[4,Promise.all(E)]);case 2:return I.sent(),[3,5];case 3:return[4,T(l,t.helpers)];case 4:I.sent(),I.label=5;case 5:return[3,7];case 6:throw P=I.sent(),t.handleError(P);case 7:return[2]}})},v=B(t.listeners.OnceExit),f.label=15;case 15:return(A=v()).done?[3,18]:[5,_g(b())];case 16:f.sent(),f.label=17;case 17:return[3,15];case 18:return t.processed=!0,[2,t.stringify()]}})})()},a.runOnRoot=function(t){var i=this;this.result.lastPlugin=t;try{if((typeof t>"u"?"undefined":ce(t))==="object"&&t.Once){if(this.result.root.type==="document"){var r=this.result.root.nodes.map(function(o){return t.Once(o,i.helpers)});return Qr(r[0])?Promise.all(r):r}return t.Once(this.result.root,this.helpers)}else if(typeof t=="function")return t(this.result.root,this.result)}catch(o){throw this.handleError(o)}},a.stringify=function(){if(this.error)throw this.error;if(this.stringified)return this.result;this.stringified=!0,this.sync();var t=this.result.opts,i=Gre;t.syntax&&(i=t.syntax.stringify),t.stringifier&&(i=t.stringifier),i.stringify&&(i=i.stringify);var r=new Wre(i,this.result.root,this.result.opts),o=r.generate();return this.result.css=o[0],this.result.map=o[1],this.result},a.sync=function(){if(this.error)throw this.error;if(this.processed)return this.result;if(this.processed=!0,this.processing)throw this.getAsyncError();for(var t=B(this.plugins),i;!(i=t()).done;){var r=i.value,o=this.runOnRoot(r);if(Qr(o))throw this.getAsyncError()}if(this.prepareVisitors(),this.hasListener){for(var s=this.result.root;!s[ja];)s[ja]=!0,this.walkSync(s);if(this.listeners.OnceExit)if(s.type==="document")for(var l=B(s.nodes),d;!(d=l()).done;){var p=d.value;this.visitSync(this.listeners.OnceExit,p)}else this.visitSync(this.listeners.OnceExit,s)}return this.result},a.then=function(t,i){return this.async().then(t,i)},a.toString=function(){return this.css},a.visitSync=function(t,i){for(var r=B(t),o;!(o=r()).done;){var s=o.value,l=s[0],d=s[1];this.result.lastPlugin=l;var p=void 0;try{p=d(i,this.helpers)}catch(u){throw this.handleError(u,i.proxyOf)}if(i.type!=="root"&&i.type!=="document"&&!i.parent)return!0;if(Qr(p))throw this.getAsyncError()}},a.visitTick=function(t){var i=t[t.length-1],r=i.node,o=i.visitors;if(r.type!=="root"&&r.type!=="document"&&!r.parent){t.pop();return}if(o.length>0&&i.visitorIndex<o.length){var s=o[i.visitorIndex],l=s[0],d=s[1];i.visitorIndex+=1,i.visitorIndex===o.length&&(i.visitors=[],i.visitorIndex=0),this.result.lastPlugin=l;try{return d(r.toProxy(),this.helpers)}catch(v){throw this.handleError(v,r)}}if(i.iterator!==0){for(var p=i.iterator,u;u=r.nodes[r.indexes[p]];)if(r.indexes[p]+=1,!u[ja]){u[ja]=!0,t.push(Rv(u));return}i.iterator=0,delete r.indexes[p]}for(var g=i.events;i.eventIndex<g.length;){var b=g[i.eventIndex];if(i.eventIndex+=1,b===vr){r.nodes&&r.nodes.length&&(r[ja]=!0,i.iterator=r.getIterator());return}else if(this.listeners[b]){i.visitors=this.listeners[b];return}}t.pop()},a.walkSync=function(t){var i=this;t[ja]=!0;for(var r=Qw(t),o=B(r),s;!(s=o()).done;){var l=s.value;if(l===vr)t.nodes&&t.each(function(p){p[ja]||i.walkSync(p)});else{var d=this.listeners[l];if(d&&this.visitSync(d,t.toProxy()))return}}},a.warnings=function(){return this.sync().warnings()},rt(e,[{key:"content",get:function(){return this.stringify().content}},{key:"css",get:function(){return this.stringify().css}},{key:"map",get:function(){return this.stringify().map}},{key:"messages",get:function(){return this.sync().messages}},{key:"opts",get:function(){return this.result.opts}},{key:"processor",get:function(){return this.result.processor}},{key:"root",get:function(){return this.sync().root}},{key:Symbol.toStringTag,get:function(){return"LazyResult"}}]),e})();br.registerPostcss=function(e){Ep=e};var Xw=br;br.default=br;Zre.registerLazyResult(br);Yre.registerLazyResult(br);var eoe=Mw,toe=Xc,aoe=Bg,noe=Lg,Pp=(function(){function e(n,t,i){t=t.toString(),this.stringified=!1,this._processor=n,this._css=t,this._opts=i,this._map=void 0;var r,o=toe;this.result=new noe(this._processor,r,this._opts),this.result.css=t;var s=this;Object.defineProperty(this.result,"root",{get:function(){return s.root}});var l=new eoe(o,r,this._opts,t);if(l.isMap()){var d=l.generate(),p=d[0],u=d[1];p&&(this.result.css=p),u&&(this.result.map=u)}else l.clearAnnotation(),this.result.css=l.css}var a=e.prototype;return a.async=function(){return this.error?Promise.reject(this.error):Promise.resolve(this.result)},a.catch=function(t){return this.async().catch(t)},a.finally=function(t){return this.async().then(t,t)},a.sync=function(){if(this.error)throw this.error;return this.result},a.then=function(t,i){return this.async().then(t,i)},a.toString=function(){return this._css},a.warnings=function(){return[]},rt(e,[{key:"content",get:function(){return this.result.css}},{key:"css",get:function(){return this.result.css}},{key:"map",get:function(){return this.result.map}},{key:"messages",get:function(){return[]}},{key:"opts",get:function(){return this.result.opts}},{key:"processor",get:function(){return this.result.processor}},{key:"root",get:function(){if(this._root)return this._root;var t,i=aoe;try{t=i(this._css,this._opts)}catch(r){this.error=r}if(this.error)throw this.error;return this._root=t,t}},{key:Symbol.toStringTag,get:function(){return"NoWorkResult"}}]),e})(),ioe=Pp;Pp.default=Pp;var roe=ioe,ooe=Xw,soe=Fg,loe=es,Po=(function(){function e(n){n===void 0&&(n=[]),this.version="8.4.38",this.plugins=this.normalize(n)}var a=e.prototype;return a.normalize=function(t){for(var i=[],r=B(t),o;!(o=r()).done;){var s=o.value;if(s.postcss===!0?s=s():s.postcss&&(s=s.postcss),(typeof s>"u"?"undefined":ce(s))==="object"&&Array.isArray(s.plugins))i=i.concat(s.plugins);else if((typeof s>"u"?"undefined":ce(s))==="object"&&s.postcssPlugin)i.push(s);else if(typeof s=="function")i.push(s);else if(!((typeof s>"u"?"undefined":ce(s))==="object"&&(s.parse||s.stringify)))throw new Error(s+" is not a PostCSS plugin")}return i},a.process=function(t,i){return i===void 0&&(i={}),!this.plugins.length&&!i.parser&&!i.stringifier&&!i.syntax?new roe(this,t,i):new ooe(this,t,i)},a.use=function(t){return this.plugins=this.plugins.concat(this.normalize([t])),this},e})(),coe=Po;Po.default=Po;loe.registerProcessor(Po);soe.registerProcessor(Po);var doe=td,uoe=_w,poe=nd,moe=jg,goe=ad,hoe=es,foe=Og;function _o(e,a){if(Array.isArray(e))return e.map(function(u){return _o(u)});var n=e.inputs,t=Ci(e,["inputs"]);if(n){a=[];for(var i=B(n),r;!(r=i()).done;){var o=r.value,s=Ce({},o,{__proto__:goe.prototype});s.map&&(s.map=Ce({},s.map,{__proto__:uoe.prototype})),a.push(s)}}if(t.nodes&&(t.nodes=e.nodes.map(function(u){return _o(u,a)})),t.source){var l=t.source,d=l.inputId,p=Ci(l,["inputId"]);t.source=p,d!=null&&(t.source.input=a[d])}if(t.type==="root")return new hoe(t);if(t.type==="decl")return new doe(t);if(t.type==="rule")return new foe(t);if(t.type==="comment")return new poe(t);if(t.type==="atrule")return new moe(t);throw new Error("Unknown node type: "+e.type)}var voe=_o;_o.default=_o;var boe=zg,eA=td,yoe=Xw,koe=Ii,Ug=coe,woe=Xc,Aoe=voe,tA=Fg,Soe=Ww,aA=nd,nA=jg,Coe=Lg,Doe=ad,Toe=Bg,Eoe=Zw,iA=Og,rA=es,Poe=ed;function $e(){for(var e=arguments.length,a=new Array(e),n=0;n<e;n++)a[n]=arguments[n];return a.length===1&&Array.isArray(a[0])&&(a=a[0]),new Ug(a)}$e.plugin=function(a,n){var t=!1;function i(){for(var o=arguments.length,s=new Array(o),l=0;l<o;l++)s[l]=arguments[l];console&&console.warn&&!t&&(t=!0,hr.LANG&&hr.LANG.startsWith("cn"));var d=n.apply(void 0,[].concat(s));return d.postcssPlugin=a,d.postcssVersion=new Ug().version,d}var r;return Object.defineProperty(i,"postcss",{get:function(){return r||(r=i()),r}}),i.process=function(o,s,l){return $e([i(l)]).process(o,s)},i};$e.stringify=woe;$e.parse=Toe;$e.fromJSON=Aoe;$e.list=Eoe;$e.comment=function(e){return new aA(e)};$e.atRule=function(e){return new nA(e)};$e.decl=function(e){return new eA(e)};$e.rule=function(e){return new iA(e)};$e.root=function(e){return new rA(e)};$e.document=function(e){return new tA(e)};$e.CssSyntaxError=boe;$e.Declaration=eA;$e.Container=koe;$e.Processor=Ug;$e.Document=tA;$e.Comment=aA;$e.Warning=Soe;$e.AtRule=nA;$e.Result=Coe;$e.Input=Doe;$e.Rule=iA;$e.Root=rA;$e.Node=Poe;yoe.registerPostcss($e);var _oe=$e;$e.default=$e;var ct=qie(_oe);ct.stringify;ct.fromJSON;ct.plugin;ct.parse;ct.list;ct.document;ct.comment;ct.atRule;ct.rule;ct.decl;ct.root;ct.CssSyntaxError;ct.Declaration;ct.Container;ct.Processor;ct.Document;ct.Comment;ct.Warning;ct.AtRule;ct.Result;ct.Input;ct.Rule;ct.Root;ct.Node;var xoe=Object.defineProperty,Ioe=function(e,a,n){return a in e?xoe(e,a,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[a]=n},ca=function(e,a,n){return Ioe(e,(typeof a>"u"?"undefined":ce(a))!=="symbol"?a+"":a,n)};function Roe(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}function zoe(e){if(e.__esModule)return e;var a=e.default;if(typeof a=="function"){var n=function t(){return le(this,t)?Reflect.construct(a,arguments,this.constructor):a.apply(this,arguments)};n.prototype=a.prototype}else n={};return Object.defineProperty(n,"__esModule",{value:!0}),Object.keys(e).forEach(function(t){var i=Object.getOwnPropertyDescriptor(e,t);Object.defineProperty(n,t,i.get?i:{enumerable:!0,get:function(){return e[t]}})}),n}var qg={exports:{}},et=String,oA=function(){return{isColorSupported:!1,reset:et,bold:et,dim:et,italic:et,underline:et,inverse:et,hidden:et,strikethrough:et,black:et,red:et,green:et,yellow:et,blue:et,magenta:et,cyan:et,white:et,gray:et,bgBlack:et,bgRed:et,bgGreen:et,bgYellow:et,bgBlue:et,bgMagenta:et,bgCyan:et,bgWhite:et}};qg.exports=oA();qg.exports.createColors=oA;var Moe=qg.exports,Noe={},Foe=Object.freeze(Object.defineProperty({__proto__:null,default:Noe},Symbol.toStringTag,{value:"Module"})),yt=zoe(Foe),zv=Moe,Mv=yt,_p=(function(e){lt(a,e);function a(t,i,r,o,s,l){var d;return d=e.call(this,t)||this,d.name="CssSyntaxError",d.reason=t,s&&(d.file=s),o&&(d.source=o),l&&(d.plugin=l),typeof i<"u"&&typeof r<"u"&&(typeof i=="number"?(d.line=i,d.column=r):(d.line=i.line,d.column=i.column,d.endLine=r.line,d.endColumn=r.column)),d.setMessage(),Error.captureStackTrace&&Error.captureStackTrace(d,a),d}var n=a.prototype;return n.setMessage=function(){this.message=this.plugin?this.plugin+": ":"",this.message+=this.file?this.file:"<css input>",typeof this.line<"u"&&(this.message+=":"+this.line+":"+this.column),this.message+=": "+this.reason},n.showSourceCode=function(i){var r=this;if(!this.source)return"";var o=this.source;i==null&&(i=zv.isColorSupported),Mv&&i&&(o=Mv(o));var s=o.split(/\r?\n/),l=Math.max(this.line-3,0),d=Math.min(this.line+2,s.length),p=String(d).length,u,g;if(i){var b=zv.createColors(!0),v=b.bold,A=b.gray,f=b.red;u=function(S){return v(f(S))},g=function(S){return A(S)}}else u=g=function(S){return S};return s.slice(l,d).map(function(S,C){var T=l+1+C,E=" "+(" "+T).slice(-p)+" | ";if(T===r.line){var P=g(E.replace(/\d/g," "))+S.slice(0,r.column-1).replace(/[^\t]/g," ");return u(">")+g(E)+S+`
`+P+u("^")}return" "+g(E)+S}).join(`
`)},n.toString=function(){var i=this.showSourceCode();return i&&(i=`
`+i+`
`),this.name+": "+this.message+i},a})(Co(Error)),Vg=_p;_p.default=_p;var oi={};oi.isClean=Symbol("isClean");oi.my=Symbol("my");var Nv={after:`
`,beforeClose:`
`,beforeComment:`
`,beforeDecl:`
`,beforeOpen:" ",beforeRule:`
`,colon:": ",commentLeft:" ",commentRight:" ",emptyBody:"",indent:" ",semicolon:!1};function Loe(e){return e[0].toUpperCase()+e.slice(1)}var xp=(function(){function e(n){this.builder=n}var a=e.prototype;return a.atrule=function(t,i){var r="@"+t.name,o=t.params?this.rawValue(t,"params"):"";if(typeof t.raws.afterName<"u"?r+=t.raws.afterName:o&&(r+=" "),t.nodes)this.block(t,r+o);else{var s=(t.raws.between||"")+(i?";":"");this.builder(r+o+s,t)}},a.beforeAfter=function(t,i){var r;t.type==="decl"?r=this.raw(t,null,"beforeDecl"):t.type==="comment"?r=this.raw(t,null,"beforeComment"):i==="before"?r=this.raw(t,null,"beforeRule"):r=this.raw(t,null,"beforeClose");for(var o=t.parent,s=0;o&&o.type!=="root";)s+=1,o=o.parent;if(r.includes(`
`)){var l=this.raw(t,null,"indent");if(l.length)for(var d=0;d<s;d++)r+=l}return r},a.block=function(t,i){var r=this.raw(t,"between","beforeOpen");this.builder(i+r+"{",t,"start");var o;t.nodes&&t.nodes.length?(this.body(t),o=this.raw(t,"after")):o=this.raw(t,"after","emptyBody"),o&&this.builder(o),this.builder("}",t,"end")},a.body=function(t){for(var i=t.nodes.length-1;i>0&&t.nodes[i].type==="comment";)i-=1;for(var r=this.raw(t,"semicolon"),o=0;o<t.nodes.length;o++){var s=t.nodes[o],l=this.raw(s,"before");l&&this.builder(l),this.stringify(s,i!==o||r)}},a.comment=function(t){var i=this.raw(t,"left","commentLeft"),r=this.raw(t,"right","commentRight");this.builder("/*"+i+t.text+r+"*/",t)},a.decl=function(t,i){var r=this.raw(t,"between","colon"),o=t.prop+r+this.rawValue(t,"value");t.important&&(o+=t.raws.important||" !important"),i&&(o+=";"),this.builder(o,t)},a.document=function(t){this.body(t)},a.raw=function(t,i,r){var o;if(r||(r=i),i&&(o=t.raws[i],typeof o<"u"))return o;var s=t.parent;if(r==="before"&&(!s||s.type==="root"&&s.first===t||s&&s.type==="document"))return"";if(!s)return Nv[r];var l=t.root();if(l.rawCache||(l.rawCache={}),typeof l.rawCache[r]<"u")return l.rawCache[r];if(r==="before"||r==="after")return this.beforeAfter(t,r);var d="raw"+Loe(r);return this[d]?o=this[d](l,t):l.walk(function(p){if(o=p.raws[i],typeof o<"u")return!1}),typeof o>"u"&&(o=Nv[r]),l.rawCache[r]=o,o},a.rawBeforeClose=function(t){var i;return t.walk(function(r){if(r.nodes&&r.nodes.length>0&&typeof r.raws.after<"u")return i=r.raws.after,i.includes(`
`)&&(i=i.replace(/[^\n]+$/,"")),!1}),i&&(i=i.replace(/\S/g,"")),i},a.rawBeforeComment=function(t,i){var r;return t.walkComments(function(o){if(typeof o.raws.before<"u")return r=o.raws.before,r.includes(`
`)&&(r=r.replace(/[^\n]+$/,"")),!1}),typeof r>"u"?r=this.raw(i,null,"beforeDecl"):r&&(r=r.replace(/\S/g,"")),r},a.rawBeforeDecl=function(t,i){var r;return t.walkDecls(function(o){if(typeof o.raws.before<"u")return r=o.raws.before,r.includes(`
`)&&(r=r.replace(/[^\n]+$/,"")),!1}),typeof r>"u"?r=this.raw(i,null,"beforeRule"):r&&(r=r.replace(/\S/g,"")),r},a.rawBeforeOpen=function(t){var i;return t.walk(function(r){if(r.type!=="decl"&&(i=r.raws.between,typeof i<"u"))return!1}),i},a.rawBeforeRule=function(t){var i;return t.walk(function(r){if(r.nodes&&(r.parent!==t||t.first!==r)&&typeof r.raws.before<"u")return i=r.raws.before,i.includes(`
`)&&(i=i.replace(/[^\n]+$/,"")),!1}),i&&(i=i.replace(/\S/g,"")),i},a.rawColon=function(t){var i;return t.walkDecls(function(r){if(typeof r.raws.between<"u")return i=r.raws.between.replace(/[^\s:]/g,""),!1}),i},a.rawEmptyBody=function(t){var i;return t.walk(function(r){if(r.nodes&&r.nodes.length===0&&(i=r.raws.after,typeof i<"u"))return!1}),i},a.rawIndent=function(t){if(t.raws.indent)return t.raws.indent;var i;return t.walk(function(r){var o=r.parent;if(o&&o!==t&&o.parent&&o.parent===t&&typeof r.raws.before<"u"){var s=r.raws.before.split(`
`);return i=s[s.length-1],i=i.replace(/\S/g,""),!1}}),i},a.rawSemicolon=function(t){var i;return t.walk(function(r){if(r.nodes&&r.nodes.length&&r.last.type==="decl"&&(i=r.raws.semicolon,typeof i<"u"))return!1}),i},a.rawValue=function(t,i){var r=t[i],o=t.raws[i];return o&&o.value===r?o.raw:r},a.root=function(t){this.body(t),t.raws.after&&this.builder(t.raws.after)},a.rule=function(t){this.block(t,this.rawValue(t,"selector")),t.raws.ownSemicolon&&this.builder(t.raws.ownSemicolon,t,"end")},a.stringify=function(t,i){if(!this[t.type])throw new Error("Unknown AST node type "+t.type+". Maybe you need to change PostCSS stringifier.");this[t.type](t,i)},e})(),sA=xp;xp.default=xp;var joe=sA;function Ip(e,a){var n=new joe(a);n.stringify(e)}var id=Ip;Ip.default=Ip;var Ls=oi.isClean,Ooe=oi.my,Boe=Vg,Uoe=sA,qoe=id;function Rp(e,a){var n=new e.constructor;for(var t in e)if(Object.prototype.hasOwnProperty.call(e,t)&&t!=="proxyCache"){var i=e[t],r=typeof i>"u"?"undefined":ce(i);t==="parent"&&r==="object"?a&&(n[t]=a):t==="source"?n[t]=i:Array.isArray(i)?n[t]=i.map(function(o){return Rp(o,n)}):(r==="object"&&i!==null&&(i=Rp(i)),n[t]=i)}return n}var zp=(function(){function e(n){n===void 0&&(n={}),this.raws={},this[Ls]=!1,this[Ooe]=!0;for(var t in n)if(t==="nodes"){this.nodes=[];for(var i=B(n[t]),r;!(r=i()).done;){var o=r.value;typeof o.clone=="function"?this.append(o.clone()):this.append(o)}}else this[t]=n[t]}var a=e.prototype;return a.addToError=function(t){if(t.postcssNode=this,t.stack&&this.source&&/\n\s{4}at /.test(t.stack)){var i=this.source;t.stack=t.stack.replace(/\n\s{4}at /,"$&"+i.input.from+":"+i.start.line+":"+i.start.column+"$&")}return t},a.after=function(t){return this.parent.insertAfter(this,t),this},a.assign=function(t){t===void 0&&(t={});for(var i in t)this[i]=t[i];return this},a.before=function(t){return this.parent.insertBefore(this,t),this},a.cleanRaws=function(t){delete this.raws.before,delete this.raws.after,t||delete this.raws.between},a.clone=function(t){t===void 0&&(t={});var i=Rp(this);for(var r in t)i[r]=t[r];return i},a.cloneAfter=function(t){t===void 0&&(t={});var i=this.clone(t);return this.parent.insertAfter(this,i),i},a.cloneBefore=function(t){t===void 0&&(t={});var i=this.clone(t);return this.parent.insertBefore(this,i),i},a.error=function(t,i){if(i===void 0&&(i={}),this.source){var r=this.rangeBy(i),o=r.end,s=r.start;return this.source.input.error(t,{column:s.column,line:s.line},{column:o.column,line:o.line},i)}return new Boe(t)},a.getProxyProcessor=function(){return{get:function(i,r){return r==="proxyOf"?i:r==="root"?function(){return i.root().toProxy()}:i[r]},set:function(i,r,o){return i[r]===o||(i[r]=o,(r==="prop"||r==="value"||r==="name"||r==="params"||r==="important"||r==="text")&&i.markDirty()),!0}}},a.markDirty=function(){if(this[Ls]){this[Ls]=!1;for(var t=this;t=t.parent;)t[Ls]=!1}},a.next=function(){if(this.parent){var t=this.parent.index(this);return this.parent.nodes[t+1]}},a.positionBy=function(t,i){var r=this.source.start;if(t.index)r=this.positionInside(t.index,i);else if(t.word){i=this.toString();var o=i.indexOf(t.word);o!==-1&&(r=this.positionInside(o,i))}return r},a.positionInside=function(t,i){for(var r=i||this.toString(),o=this.source.start.column,s=this.source.start.line,l=0;l<t;l++)r[l]===`
`?(o=1,s+=1):o+=1;return{column:o,line:s}},a.prev=function(){if(this.parent){var t=this.parent.index(this);return this.parent.nodes[t-1]}},a.rangeBy=function(t){var i={column:this.source.start.column,line:this.source.start.line},r=this.source.end?{column:this.source.end.column+1,line:this.source.end.line}:{column:i.column+1,line:i.line};if(t.word){var o=this.toString(),s=o.indexOf(t.word);s!==-1&&(i=this.positionInside(s,o),r=this.positionInside(s+t.word.length,o))}else t.start?i={column:t.start.column,line:t.start.line}:t.index&&(i=this.positionInside(t.index)),t.end?r={column:t.end.column,line:t.end.line}:typeof t.endIndex=="number"?r=this.positionInside(t.endIndex):t.index&&(r=this.positionInside(t.index+1));return(r.line<i.line||r.line===i.line&&r.column<=i.column)&&(r={column:i.column+1,line:i.line}),{end:r,start:i}},a.raw=function(t,i){var r=new Uoe;return r.raw(this,t,i)},a.remove=function(){return this.parent&&this.parent.removeChild(this),this.parent=void 0,this},a.replaceWith=function(){for(var t=arguments.length,i=new Array(t),r=0;r<t;r++)i[r]=arguments[r];if(this.parent){for(var o=this,s=!1,l=B(i),d;!(d=l()).done;){var p=d.value;p===this?s=!0:s?(this.parent.insertAfter(o,p),o=p):this.parent.insertBefore(o,p)}s||this.remove()}return this},a.root=function(){for(var t=this;t.parent&&t.parent.type!=="document";)t=t.parent;return t},a.toJSON=function(t,i){var r={},o=i==null;i=i||new Map;var s=0;for(var l in this)if(Object.prototype.hasOwnProperty.call(this,l)&&!(l==="parent"||l==="proxyCache")){var d=this[l];if(Array.isArray(d))r[l]=d.map(function(u){return(typeof u>"u"?"undefined":ce(u))==="object"&&u.toJSON?u.toJSON(null,i):u});else if((typeof d>"u"?"undefined":ce(d))==="object"&&d.toJSON)r[l]=d.toJSON(null,i);else if(l==="source"){var p=i.get(d.input);p==null&&(p=s,i.set(d.input,s),s++),r[l]={end:d.end,inputId:p,start:d.start}}else r[l]=d}return o&&(r.inputs=[].concat(i.keys()).map(function(u){return u.toJSON()})),r},a.toProxy=function(){return this.proxyCache||(this.proxyCache=new Proxy(this,this.getProxyProcessor())),this.proxyCache},a.toString=function(t){t===void 0&&(t=qoe),t.stringify&&(t=t.stringify);var i="";return t(this,function(r){i+=r}),i},a.warn=function(t,i,r){var o={node:this};for(var s in r)o[s]=r[s];return t.warn(i,o)},rt(e,[{key:"proxyOf",get:function(){return this}}]),e})(),rd=zp;zp.default=zp;var Voe=rd,Mp=(function(e){lt(a,e);function a(n){var t;return n&&typeof n.value<"u"&&typeof n.value!="string"&&(n=Ce({},n,{value:String(n.value)})),t=e.call(this,n)||this,t.type="decl",t}return rt(a,[{key:"variable",get:function(){return this.prop.startsWith("--")||this.prop[0]==="$"}}]),a})(Voe),od=Mp;Mp.default=Mp;var $oe="useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict",Woe=function(e){e===void 0&&(e=21);for(var a="",n=e;n--;)a+=$oe[Math.random()*64|0];return a},Goe={nanoid:Woe},Fv=yt.SourceMapConsumer,Lv=yt.SourceMapGenerator,Hoe=yt.existsSync,Yoe=yt.readFileSync,ru=yt.dirname,Koe=yt.join;function Zoe(e){return Buffer?Buffer.from(e,"base64").toString():window.atob(e)}var Np=(function(){function e(n,t){if(t.map!==!1){this.loadAnnotation(n),this.inline=this.startWith(this.annotation,"data:");var i=t.map?t.map.prev:void 0,r=this.loadMap(t.from,i);!this.mapFile&&t.from&&(this.mapFile=t.from),this.mapFile&&(this.root=ru(this.mapFile)),r&&(this.text=r)}}var a=e.prototype;return a.consumer=function(){return this.consumerCache||(this.consumerCache=new Fv(this.text)),this.consumerCache},a.decodeInline=function(t){var i=/^data:application\/json;charset=utf-?8;base64,/,r=/^data:application\/json;base64,/,o=/^data:application\/json;charset=utf-?8,/,s=/^data:application\/json,/;if(o.test(t)||s.test(t))return decodeURIComponent(t.substr(RegExp.lastMatch.length));if(i.test(t)||r.test(t))return Zoe(t.substr(RegExp.lastMatch.length));var l=t.match(/data:application\/json;([^,]+),/)[1];throw new Error("Unsupported source map encoding "+l)},a.getAnnotationURL=function(t){return t.replace(/^\/\*\s*# sourceMappingURL=/,"").trim()},a.isMap=function(t){return(typeof t>"u"?"undefined":ce(t))!=="object"?!1:typeof t.mappings=="string"||typeof t._mappings=="string"||Array.isArray(t.sections)},a.loadAnnotation=function(t){var i=t.match(/\/\*\s*# sourceMappingURL=/gm);if(i){var r=t.lastIndexOf(i.pop()),o=t.indexOf("*/",r);r>-1&&o>-1&&(this.annotation=this.getAnnotationURL(t.substring(r,o)))}},a.loadFile=function(t){if(this.root=ru(t),Hoe(t))return this.mapFile=t,Yoe(t,"utf-8").toString().trim()},a.loadMap=function(t,i){if(i===!1)return!1;if(i){if(typeof i=="string")return i;if(typeof i=="function"){var r=i(t);if(r){var o=this.loadFile(r);if(!o)throw new Error("Unable to load previous source map: "+r.toString());return o}}else{if(le(i,Fv))return Lv.fromSourceMap(i).toString();if(le(i,Lv))return i.toString();if(this.isMap(i))return JSON.stringify(i);throw new Error("Unsupported previous source map format: "+i.toString())}}else{if(this.inline)return this.decodeInline(this.annotation);if(this.annotation){var s=this.annotation;return t&&(s=Koe(ru(t),s)),this.loadFile(s)}}},a.startWith=function(t,i){return t?t.substr(0,i.length)===i:!1},a.withContent=function(){return!!(this.consumer().sourcesContent&&this.consumer().sourcesContent.length>0)},e})(),lA=Np;Np.default=Np;var Joe=yt.SourceMapConsumer,Qoe=yt.SourceMapGenerator,jv=yt.fileURLToPath,js=yt.pathToFileURL,Fp=yt.isAbsolute,Lp=yt.resolve,Xoe=Goe.nanoid,ou=yt,Ov=Vg,ese=lA,su=Symbol("fromOffsetCache"),tse=!!(Joe&&Qoe),Bv=!!(Lp&&Fp),tc=(function(){function e(n,t){if(t===void 0&&(t={}),n===null||typeof n>"u"||(typeof n>"u"?"undefined":ce(n))==="object"&&!n.toString)throw new Error("PostCSS received "+n+" instead of CSS string");if(this.css=n.toString(),this.css[0]==="\uFEFF"||this.css[0]==="￾"?(this.hasBOM=!0,this.css=this.css.slice(1)):this.hasBOM=!1,t.from&&(!Bv||/^\w+:\/\//.test(t.from)||Fp(t.from)?this.file=t.from:this.file=Lp(t.from)),Bv&&tse){var i=new ese(this.css,t);if(i.text){this.map=i;var r=i.consumer().file;!this.file&&r&&(this.file=this.mapResolve(r))}}this.file||(this.id="<input css "+Xoe(6)+">"),this.map&&(this.map.file=this.from)}var a=e.prototype;return a.error=function(t,i,r,o){o===void 0&&(o={});var s,l,d;if(i&&(typeof i>"u"?"undefined":ce(i))==="object"){var p=i,u=r;if(typeof p.offset=="number"){var g=this.fromOffset(p.offset);i=g.line,r=g.col}else i=p.line,r=p.column;if(typeof u.offset=="number"){var b=this.fromOffset(u.offset);l=b.line,d=b.col}else l=u.line,d=u.column}else if(!r){var v=this.fromOffset(i);i=v.line,r=v.col}var A=this.origin(i,r,l,d);return A?s=new Ov(t,A.endLine===void 0?A.line:{column:A.column,line:A.line},A.endLine===void 0?A.column:{column:A.endColumn,line:A.endLine},A.source,A.file,o.plugin):s=new Ov(t,l===void 0?i:{column:r,line:i},l===void 0?r:{column:d,line:l},this.css,this.file,o.plugin),s.input={column:r,endColumn:d,endLine:l,line:i,source:this.css},this.file&&(js&&(s.input.url=js(this.file).toString()),s.input.file=this.file),s},a.fromOffset=function(t){var i,r;if(this[su])r=this[su];else{var o=this.css.split(`
`);r=new Array(o.length);for(var s=0,l=0,d=o.length;l<d;l++)r[l]=s,s+=o[l].length+1;this[su]=r}i=r[r.length-1];var p=0;if(t>=i)p=r.length-1;else for(var u=r.length-2,g;p<u;)if(g=p+(u-p>>1),t<r[g])u=g-1;else if(t>=r[g+1])p=g+1;else{p=g;break}return{col:t-r[p]+1,line:p+1}},a.mapResolve=function(t){return/^\w+:\/\//.test(t)?t:Lp(this.map.consumer().sourceRoot||this.map.root||".",t)},a.origin=function(t,i,r,o){if(!this.map)return!1;var s=this.map.consumer(),l=s.originalPositionFor({column:i,line:t});if(!l.source)return!1;var d;typeof r=="number"&&(d=s.originalPositionFor({column:o,line:r}));var p;Fp(l.source)?p=js(l.source):p=new URL(l.source,this.map.consumer().sourceRoot||js(this.map.mapFile));var u={column:l.column,endColumn:d&&d.column,endLine:d&&d.line,line:l.line,url:p.toString()};if(p.protocol==="file:")if(jv)u.file=jv(p);else throw new Error("file: protocol is not available in this PostCSS build");var g=s.sourceContentFor(l.source);return g&&(u.source=g),u},a.toJSON=function(){for(var t={},i=0,r=["hasBOM","css","file","id"];i<r.length;i++){var o=r[i];this[o]!=null&&(t[o]=this[o])}return this.map&&(t.map=Ce({},this.map),t.map.consumerCache&&(t.map.consumerCache=void 0)),t},rt(e,[{key:"from",get:function(){return this.file||this.id}}]),e})(),sd=tc;tc.default=tc;ou&&ou.registerInput&&ou.registerInput(tc);var cA=yt.SourceMapConsumer,Dl=yt.SourceMapGenerator,Tl=yt.dirname,dA=yt.relative,uA=yt.resolve,pA=yt.sep,Uv=yt.pathToFileURL,ase=sd,nse=!!(cA&&Dl),ise=!!(Tl&&uA&&dA&&pA),rse=(function(){function e(n,t,i,r){this.stringify=n,this.mapOpts=i.map||{},this.root=t,this.opts=i,this.css=r,this.originalCSS=r,this.usesFileUrls=!this.mapOpts.from&&this.mapOpts.absolute,this.memoizedFileURLs=new Map,this.memoizedPaths=new Map,this.memoizedURLs=new Map}var a=e.prototype;return a.addAnnotation=function(){var t;this.isInline()?t="data:application/json;base64,"+this.toBase64(this.map.toString()):typeof this.mapOpts.annotation=="string"?t=this.mapOpts.annotation:typeof this.mapOpts.annotation=="function"?t=this.mapOpts.annotation(this.opts.to,this.root):t=this.outputFile()+".map";var i=`
`;this.css.includes(`\r
`)&&(i=`\r
`),this.css+=i+"/*# sourceMappingURL="+t+" */"},a.applyPrevMaps=function(){for(var t=B(this.previous()),i;!(i=t()).done;){var r=i.value,o=this.toUrl(this.path(r.file)),s=r.root||Tl(r.file),l=void 0;this.mapOpts.sourcesContent===!1?(l=new cA(r.text),l.sourcesContent&&(l.sourcesContent=null)):l=r.consumer(),this.map.applySourceMap(l,o,this.toUrl(this.path(s)))}},a.clearAnnotation=function(){if(this.mapOpts.annotation!==!1)if(this.root)for(var t,i=this.root.nodes.length-1;i>=0;i--)t=this.root.nodes[i],t.type==="comment"&&t.text.indexOf("# sourceMappingURL=")===0&&this.root.removeChild(i);else this.css&&(this.css=this.css.replace(/\n*?\/\*#[\S\s]*?\*\/$/gm,""))},a.generate=function(){if(this.clearAnnotation(),ise&&nse&&this.isMap())return this.generateMap();var t="";return this.stringify(this.root,function(i){t+=i}),[t]},a.generateMap=function(){if(this.root)this.generateString();else if(this.previous().length===1){var t=this.previous()[0].consumer();t.file=this.outputFile(),this.map=Dl.fromSourceMap(t,{ignoreInvalidMapping:!0})}else this.map=new Dl({file:this.outputFile(),ignoreInvalidMapping:!0}),this.map.addMapping({generated:{column:0,line:1},original:{column:0,line:1},source:this.opts.from?this.toUrl(this.path(this.opts.from)):"<no source>"});return this.isSourcesContent()&&this.setSourcesContent(),this.root&&this.previous().length>0&&this.applyPrevMaps(),this.isAnnotation()&&this.addAnnotation(),this.isInline()?[this.css]:[this.css,this.map]},a.generateString=function(){var t=this;this.css="",this.map=new Dl({file:this.outputFile(),ignoreInvalidMapping:!0});var i=1,r=1,o="<no source>",s={generated:{column:0,line:0},original:{column:0,line:0},source:""},l,d;this.stringify(this.root,function(p,u,g){if(t.css+=p,u&&g!=="end"&&(s.generated.line=i,s.generated.column=r-1,u.source&&u.source.start?(s.source=t.sourcePath(u),s.original.line=u.source.start.line,s.original.column=u.source.start.column-1,t.map.addMapping(s)):(s.source=o,s.original.line=1,s.original.column=0,t.map.addMapping(s))),l=p.match(/\n/g),l?(i+=l.length,d=p.lastIndexOf(`
`),r=p.length-d):r+=p.length,u&&g!=="start"){var b=u.parent||{raws:{}},v=u.type==="decl"||u.type==="atrule"&&!u.nodes;(!v||u!==b.last||b.raws.semicolon)&&(u.source&&u.source.end?(s.source=t.sourcePath(u),s.original.line=u.source.end.line,s.original.column=u.source.end.column-1,s.generated.line=i,s.generated.column=r-2,t.map.addMapping(s)):(s.source=o,s.original.line=1,s.original.column=0,s.generated.line=i,s.generated.column=r-1,t.map.addMapping(s)))}})},a.isAnnotation=function(){return this.isInline()?!0:typeof this.mapOpts.annotation<"u"?this.mapOpts.annotation:this.previous().length?this.previous().some(function(t){return t.annotation}):!0},a.isInline=function(){if(typeof this.mapOpts.inline<"u")return this.mapOpts.inline;var t=this.mapOpts.annotation;return typeof t<"u"&&t!==!0?!1:this.previous().length?this.previous().some(function(i){return i.inline}):!0},a.isMap=function(){return typeof this.opts.map<"u"?!!this.opts.map:this.previous().length>0},a.isSourcesContent=function(){return typeof this.mapOpts.sourcesContent<"u"?this.mapOpts.sourcesContent:this.previous().length?this.previous().some(function(t){return t.withContent()}):!0},a.outputFile=function(){return this.opts.to?this.path(this.opts.to):this.opts.from?this.path(this.opts.from):"to.css"},a.path=function(t){if(this.mapOpts.absolute||t.charCodeAt(0)===60||/^\w+:\/\//.test(t))return t;var i=this.memoizedPaths.get(t);if(i)return i;var r=this.opts.to?Tl(this.opts.to):".";typeof this.mapOpts.annotation=="string"&&(r=Tl(uA(r,this.mapOpts.annotation)));var o=dA(r,t);return this.memoizedPaths.set(t,o),o},a.previous=function(){var t=this;if(!this.previousMaps)if(this.previousMaps=[],this.root)this.root.walk(function(r){if(r.source&&r.source.input.map){var o=r.source.input.map;t.previousMaps.includes(o)||t.previousMaps.push(o)}});else{var i=new ase(this.originalCSS,this.opts);i.map&&this.previousMaps.push(i.map)}return this.previousMaps},a.setSourcesContent=function(){var t=this,i={};if(this.root)this.root.walk(function(o){if(o.source){var s=o.source.input.from;if(s&&!i[s]){i[s]=!0;var l=t.usesFileUrls?t.toFileUrl(s):t.toUrl(t.path(s));t.map.setSourceContent(l,o.source.input.css)}}});else if(this.css){var r=this.opts.from?this.toUrl(this.path(this.opts.from)):"<no source>";this.map.setSourceContent(r,this.css)}},a.sourcePath=function(t){return this.mapOpts.from?this.toUrl(this.mapOpts.from):this.usesFileUrls?this.toFileUrl(t.source.input.from):this.toUrl(this.path(t.source.input.from))},a.toBase64=function(t){return Buffer?Buffer.from(t).toString("base64"):window.btoa(unescape(encodeURIComponent(t)))},a.toFileUrl=function(t){var i=this.memoizedFileURLs.get(t);if(i)return i;if(Uv){var r=Uv(t).toString();return this.memoizedFileURLs.set(t,r),r}else throw new Error("`map.absolute` option is not available in this PostCSS build")},a.toUrl=function(t){var i=this.memoizedURLs.get(t);if(i)return i;pA==="\\"&&(t=t.replace(/\\/g,"/"));var r=encodeURI(t).replace(/[#?]/g,encodeURIComponent);return this.memoizedURLs.set(t,r),r},e})(),mA=rse,ose=rd,jp=(function(e){lt(a,e);function a(n){var t;return t=e.call(this,n)||this,t.type="comment",t}return a})(ose),ld=jp;jp.default=jp;var gA=oi.isClean,hA=oi.my,fA=od,vA=ld,sse=rd,bA,$g,Wg,yA;function kA(e){return e.map(function(a){return a.nodes&&(a.nodes=kA(a.nodes)),delete a.source,a})}function wA(e){if(e[gA]=!1,e.proxyOf.nodes)for(var a=B(e.proxyOf.nodes),n;!(n=a()).done;){var t=n.value;wA(t)}}var In=(function(e){lt(a,e);function a(){return e.apply(this,arguments)||this}var n=a.prototype;return n.append=function(){for(var i=arguments.length,r=new Array(i),o=0;o<i;o++)r[o]=arguments[o];for(var s=B(r),l;!(l=s()).done;)for(var d=l.value,p=this.normalize(d,this.last),u=B(p),g;!(g=u()).done;){var b=g.value;this.proxyOf.nodes.push(b)}return this.markDirty(),this},n.cleanRaws=function(i){if(e.prototype.cleanRaws.call(this,i),this.nodes)for(var r=B(this.nodes),o;!(o=r()).done;){var s=o.value;s.cleanRaws(i)}},n.each=function(i){if(this.proxyOf.nodes){for(var r=this.getIterator(),o,s;this.indexes[r]<this.proxyOf.nodes.length&&(o=this.indexes[r],s=i(this.proxyOf.nodes[o],o),s!==!1);)this.indexes[r]+=1;return delete this.indexes[r],s}},n.every=function(i){return this.nodes.every(i)},n.getIterator=function(){this.lastEach||(this.lastEach=0),this.indexes||(this.indexes={}),this.lastEach+=1;var i=this.lastEach;return this.indexes[i]=0,i},n.getProxyProcessor=function(){return{get:function(r,o){return o==="proxyOf"?r:r[o]?o==="each"||typeof o=="string"&&o.startsWith("walk")?function(){for(var s=arguments.length,l=new Array(s),d=0;d<s;d++)l[d]=arguments[d];var p;return(p=r)[o].apply(p,[].concat(l.map(function(u){return typeof u=="function"?function(g,b){return u(g.toProxy(),b)}:u})))}:o==="every"||o==="some"?function(s){return r[o](function(l){for(var d=arguments.length,p=new Array(d>1?d-1:0),u=1;u<d;u++)p[u-1]=arguments[u];return s.apply(void 0,[].concat([l.toProxy()],p))})}:o==="root"?function(){return r.root().toProxy()}:o==="nodes"?r.nodes.map(function(s){return s.toProxy()}):o==="first"||o==="last"?r[o].toProxy():r[o]:r[o]},set:function(r,o,s){return r[o]===s||(r[o]=s,(o==="name"||o==="params"||o==="selector")&&r.markDirty()),!0}}},n.index=function(i){return typeof i=="number"?i:(i.proxyOf&&(i=i.proxyOf),this.proxyOf.nodes.indexOf(i))},n.insertAfter=function(i,r){var o=this.index(i),s=this.normalize(r,this.proxyOf.nodes[o]).reverse();o=this.index(i);for(var l=B(s),d;!(d=l()).done;){var p=d.value;this.proxyOf.nodes.splice(o+1,0,p)}var u;for(var g in this.indexes)u=this.indexes[g],o<u&&(this.indexes[g]=u+s.length);return this.markDirty(),this},n.insertBefore=function(i,r){var o=this.index(i),s=o===0?"prepend":!1,l=this.normalize(r,this.proxyOf.nodes[o],s).reverse();o=this.index(i);for(var d=B(l),p;!(p=d()).done;){var u=p.value;this.proxyOf.nodes.splice(o,0,u)}var g;for(var b in this.indexes)g=this.indexes[b],o<=g&&(this.indexes[b]=g+l.length);return this.markDirty(),this},n.normalize=function(i,r){var o=this;if(typeof i=="string")i=kA(bA(i).nodes);else if(typeof i>"u")i=[];else if(Array.isArray(i)){i=i.slice(0);for(var s=B(i),l;!(l=s()).done;){var d=l.value;d.parent&&d.parent.removeChild(d,"ignore")}}else if(i.type==="root"&&this.type!=="document"){i=i.nodes.slice(0);for(var p=B(i),u;!(u=p()).done;){var g=u.value;g.parent&&g.parent.removeChild(g,"ignore")}}else if(i.type)i=[i];else if(i.prop){if(typeof i.value>"u")throw new Error("Value field is missed in node creation");typeof i.value!="string"&&(i.value=String(i.value)),i=[new fA(i)]}else if(i.selector)i=[new $g(i)];else if(i.name)i=[new Wg(i)];else if(i.text)i=[new vA(i)];else throw new Error("Unknown node type in node creation");var b=i.map(function(v){return v[hA]||a.rebuild(v),v=v.proxyOf,v.parent&&v.parent.removeChild(v),v[gA]&&wA(v),typeof v.raws.before>"u"&&r&&typeof r.raws.before<"u"&&(v.raws.before=r.raws.before.replace(/\S/g,"")),v.parent=o.proxyOf,v});return b},n.prepend=function(){for(var i=arguments.length,r=new Array(i),o=0;o<i;o++)r[o]=arguments[o];r=r.reverse();for(var s=B(r),l;!(l=s()).done;){for(var d=l.value,p=this.normalize(d,this.first,"prepend").reverse(),u=B(p),g;!(g=u()).done;){var b=g.value;this.proxyOf.nodes.unshift(b)}for(var v in this.indexes)this.indexes[v]=this.indexes[v]+p.length}return this.markDirty(),this},n.push=function(i){return i.parent=this,this.proxyOf.nodes.push(i),this},n.removeAll=function(){for(var i=B(this.proxyOf.nodes),r;!(r=i()).done;){var o=r.value;o.parent=void 0}return this.proxyOf.nodes=[],this.markDirty(),this},n.removeChild=function(i){i=this.index(i),this.proxyOf.nodes[i].parent=void 0,this.proxyOf.nodes.splice(i,1);var r;for(var o in this.indexes)r=this.indexes[o],r>=i&&(this.indexes[o]=r-1);return this.markDirty(),this},n.replaceValues=function(i,r,o){return o||(o=r,r={}),this.walkDecls(function(s){r.props&&!r.props.includes(s.prop)||r.fast&&!s.value.includes(r.fast)||(s.value=s.value.replace(i,o))}),this.markDirty(),this},n.some=function(i){return this.nodes.some(i)},n.walk=function(i){return this.each(function(r,o){var s;try{s=i(r,o)}catch(l){throw r.addToError(l)}return s!==!1&&r.walk&&(s=r.walk(i)),s})},n.walkAtRules=function(i,r){return r?le(i,RegExp)?this.walk(function(o,s){if(o.type==="atrule"&&i.test(o.name))return r(o,s)}):this.walk(function(o,s){if(o.type==="atrule"&&o.name===i)return r(o,s)}):(r=i,this.walk(function(o,s){if(o.type==="atrule")return r(o,s)}))},n.walkComments=function(i){return this.walk(function(r,o){if(r.type==="comment")return i(r,o)})},n.walkDecls=function(i,r){return r?le(i,RegExp)?this.walk(function(o,s){if(o.type==="decl"&&i.test(o.prop))return r(o,s)}):this.walk(function(o,s){if(o.type==="decl"&&o.prop===i)return r(o,s)}):(r=i,this.walk(function(o,s){if(o.type==="decl")return r(o,s)}))},n.walkRules=function(i,r){return r?le(i,RegExp)?this.walk(function(o,s){if(o.type==="rule"&&i.test(o.selector))return r(o,s)}):this.walk(function(o,s){if(o.type==="rule"&&o.selector===i)return r(o,s)}):(r=i,this.walk(function(o,s){if(o.type==="rule")return r(o,s)}))},rt(a,[{key:"first",get:function(){if(this.proxyOf.nodes)return this.proxyOf.nodes[0]}},{key:"last",get:function(){if(this.proxyOf.nodes)return this.proxyOf.nodes[this.proxyOf.nodes.length-1]}}]),a})(sse);In.registerParse=function(e){bA=e};In.registerRule=function(e){$g=e};In.registerAtRule=function(e){Wg=e};In.registerRoot=function(e){yA=e};var Ri=In;In.default=In;In.rebuild=function(e){e.type==="atrule"?Object.setPrototypeOf(e,Wg.prototype):e.type==="rule"?Object.setPrototypeOf(e,$g.prototype):e.type==="decl"?Object.setPrototypeOf(e,fA.prototype):e.type==="comment"?Object.setPrototypeOf(e,vA.prototype):e.type==="root"&&Object.setPrototypeOf(e,yA.prototype),e[hA]=!0,e.nodes&&e.nodes.forEach(function(a){In.rebuild(a)})};var lse=Ri,AA,SA,xo=(function(e){lt(a,e);function a(t){var i;return i=e.call(this,Ce({type:"document"},t))||this,i.nodes||(i.nodes=[]),i}var n=a.prototype;return n.toResult=function(i){i===void 0&&(i={});var r=new AA(new SA,this,i);return r.stringify()},a})(lse);xo.registerLazyResult=function(e){AA=e};xo.registerProcessor=function(e){SA=e};var Gg=xo;xo.default=xo;var Op=(function(){function e(n,t){if(t===void 0&&(t={}),this.type="warning",this.text=n,t.node&&t.node.source){var i=t.node.rangeBy(t);this.line=i.start.line,this.column=i.start.column,this.endLine=i.end.line,this.endColumn=i.end.column}for(var r in t)this[r]=t[r]}var a=e.prototype;return a.toString=function(){return this.node?this.node.error(this.text,{index:this.index,plugin:this.plugin,word:this.word}).message:this.plugin?this.plugin+": "+this.text:this.text},e})(),CA=Op;Op.default=Op;var cse=CA,Bp=(function(){function e(n,t,i){this.processor=n,this.messages=[],this.root=t,this.opts=i,this.css=void 0,this.map=void 0}var a=e.prototype;return a.toString=function(){return this.css},a.warn=function(t,i){i===void 0&&(i={}),i.plugin||this.lastPlugin&&this.lastPlugin.postcssPlugin&&(i.plugin=this.lastPlugin.postcssPlugin);var r=new cse(t,i);return this.messages.push(r),r},a.warnings=function(){return this.messages.filter(function(t){return t.type==="warning"})},rt(e,[{key:"content",get:function(){return this.css}}]),e})(),Hg=Bp;Bp.default=Bp;var lu=39,qv=34,Os=92,Vv=47,Bs=10,Xr=32,Us=12,qs=9,Vs=13,dse=91,use=93,pse=40,mse=41,gse=123,hse=125,fse=59,vse=42,bse=58,yse=64,$s=/[\t\n\f\r "#'()/;[\\\]{}]/g,Ws=/[\t\n\f\r !"#'():;@[\\\]{}]|\/(?=\*)/g,kse=/.[\r\n"'(/\\]/,$v=/[\da-f]/i,wse=function(a,n){n===void 0&&(n={});var t=a.css.valueOf(),i=n.ignoreErrors,r,o,s,l,d,p,u,g,b,v,A=t.length,f=0,S=[],C=[];function T(){return f}function E(N){throw a.error("Unclosed "+N,f)}function P(){return C.length===0&&f>=A}function I(N){if(C.length)return C.pop();if(!(f>=A)){var Z=N?N.ignoreUnclosed:!1;switch(r=t.charCodeAt(f),r){case Bs:case Xr:case qs:case Vs:case Us:{o=f;do o+=1,r=t.charCodeAt(o);while(r===Xr||r===Bs||r===qs||r===Vs||r===Us);v=["space",t.slice(f,o)],f=o-1;break}case dse:case use:case gse:case hse:case bse:case fse:case mse:{var R=String.fromCharCode(r);v=[R,R,f];break}case pse:{if(g=S.length?S.pop()[1]:"",b=t.charCodeAt(f+1),g==="url"&&b!==lu&&b!==qv&&b!==Xr&&b!==Bs&&b!==qs&&b!==Us&&b!==Vs){o=f;do{if(p=!1,o=t.indexOf(")",o+1),o===-1)if(i||Z){o=f;break}else E("bracket");for(u=o;t.charCodeAt(u-1)===Os;)u-=1,p=!p}while(p);v=["brackets",t.slice(f,o+1),f,o],f=o}else o=t.indexOf(")",f+1),l=t.slice(f,o+1),o===-1||kse.test(l)?v=["(","(",f]:(v=["brackets",l,f,o],f=o);break}case lu:case qv:{s=r===lu?"'":'"',o=f;do{if(p=!1,o=t.indexOf(s,o+1),o===-1)if(i||Z){o=f+1;break}else E("string");for(u=o;t.charCodeAt(u-1)===Os;)u-=1,p=!p}while(p);v=["string",t.slice(f,o+1),f,o],f=o;break}case yse:{$s.lastIndex=f+1,$s.test(t),$s.lastIndex===0?o=t.length-1:o=$s.lastIndex-2,v=["at-word",t.slice(f,o+1),f,o],f=o;break}case Os:{for(o=f,d=!0;t.charCodeAt(o+1)===Os;)o+=1,d=!d;if(r=t.charCodeAt(o+1),d&&r!==Vv&&r!==Xr&&r!==Bs&&r!==qs&&r!==Vs&&r!==Us&&(o+=1,$v.test(t.charAt(o)))){for(;$v.test(t.charAt(o+1));)o+=1;t.charCodeAt(o+1)===Xr&&(o+=1)}v=["word",t.slice(f,o+1),f,o],f=o;break}default:{r===Vv&&t.charCodeAt(f+1)===vse?(o=t.indexOf("*/",f+2)+1,o===0&&(i||Z?o=t.length:E("comment")),v=["comment",t.slice(f,o+1),f,o],f=o):(Ws.lastIndex=f+1,Ws.test(t),Ws.lastIndex===0?o=t.length-1:o=Ws.lastIndex-2,v=["word",t.slice(f,o+1),f,o],S.push(v),f=o);break}}return f++,v}}function L(N){C.push(N)}return{back:L,endOfFile:P,nextToken:I,position:T}},DA=Ri,ac=(function(e){lt(a,e);function a(t){var i;return i=e.call(this,t)||this,i.type="atrule",i}var n=a.prototype;return n.append=function(){for(var i=arguments.length,r=new Array(i),o=0;o<i;o++)r[o]=arguments[o];var s;return this.proxyOf.nodes||(this.nodes=[]),(s=e.prototype.append).call.apply(s,[].concat([this],r))},n.prepend=function(){for(var i=arguments.length,r=new Array(i),o=0;o<i;o++)r[o]=arguments[o];var s;return this.proxyOf.nodes||(this.nodes=[]),(s=e.prototype.prepend).call.apply(s,[].concat([this],r))},a})(DA),Yg=ac;ac.default=ac;DA.registerAtRule(ac);var TA=Ri,EA,PA,yr=(function(e){lt(a,e);function a(t){var i;return i=e.call(this,t)||this,i.type="root",i.nodes||(i.nodes=[]),i}var n=a.prototype;return n.normalize=function(i,r,o){var s=e.prototype.normalize.call(this,i);if(r){if(o==="prepend")this.nodes.length>1?r.raws.before=this.nodes[1].raws.before:delete r.raws.before;else if(this.first!==r)for(var l=B(s),d;!(d=l()).done;){var p=d.value;p.raws.before=r.raws.before}}return s},n.removeChild=function(i,r){var o=this.index(i);return!r&&o===0&&this.nodes.length>1&&(this.nodes[1].raws.before=this.nodes[o].raws.before),e.prototype.removeChild.call(this,i)},n.toResult=function(i){i===void 0&&(i={});var r=new EA(new PA,this,i);return r.stringify()},a})(TA);yr.registerLazyResult=function(e){EA=e};yr.registerProcessor=function(e){PA=e};var ts=yr;yr.default=yr;TA.registerRoot(yr);var Io={comma:function(a){return Io.split(a,[","],!0)},space:function(a){var n=[" ",`
`," "];return Io.split(a,n)},split:function(a,n,t){for(var i=[],r="",o=!1,s=0,l=!1,d="",p=!1,u=B(a),g;!(g=u()).done;){var b=g.value;p?p=!1:b==="\\"?p=!0:l?b===d&&(l=!1):b==='"'||b==="'"?(l=!0,d=b):b==="("?s+=1:b===")"?s>0&&(s-=1):s===0&&n.includes(b)&&(o=!0),o?(r!==""&&i.push(r.trim()),r="",o=!1):r+=b}return(t||r!=="")&&i.push(r.trim()),i}},_A=Io;Io.default=Io;var xA=Ri,Ase=_A,nc=(function(e){lt(a,e);function a(n){var t;return t=e.call(this,n)||this,t.type="rule",t.nodes||(t.nodes=[]),t}return rt(a,[{key:"selectors",get:function(){return Ase.comma(this.selector)},set:function(t){var i=this.selector?this.selector.match(/,\s*/):null,r=i?i[0]:","+this.raw("between","beforeOpen");this.selector=t.join(r)}}]),a})(xA),Kg=nc;nc.default=nc;xA.registerRule(nc);var Sse=od,Cse=wse,Dse=ld,Tse=Yg,Ese=ts,Wv=Kg,Gv={empty:!0,space:!0};function Pse(e){for(var a=e.length-1;a>=0;a--){var n=e[a],t=n[3]||n[2];if(t)return t}}var _se=(function(){function e(n){this.input=n,this.root=new Ese,this.current=this.root,this.spaces="",this.semicolon=!1,this.createTokenizer(),this.root.source={input:n,start:{column:1,line:1,offset:0}}}var a=e.prototype;return a.atrule=function(t){var i=new Tse;i.name=t[1].slice(1),i.name===""&&this.unnamedAtrule(i,t),this.init(i,t[2]);for(var r,o,s,l=!1,d=!1,p=[],u=[];!this.tokenizer.endOfFile();){if(t=this.tokenizer.nextToken(),r=t[0],r==="("||r==="["?u.push(r==="("?")":"]"):r==="{"&&u.length>0?u.push("}"):r===u[u.length-1]&&u.pop(),u.length===0)if(r===";"){i.source.end=this.getPosition(t[2]),i.source.end.offset++,this.semicolon=!0;break}else if(r==="{"){d=!0;break}else if(r==="}"){if(p.length>0){for(s=p.length-1,o=p[s];o&&o[0]==="space";)o=p[--s];o&&(i.source.end=this.getPosition(o[3]||o[2]),i.source.end.offset++)}this.end(t);break}else p.push(t);else p.push(t);if(this.tokenizer.endOfFile()){l=!0;break}}i.raws.between=this.spacesAndCommentsFromEnd(p),p.length?(i.raws.afterName=this.spacesAndCommentsFromStart(p),this.raw(i,"params",p),l&&(t=p[p.length-1],i.source.end=this.getPosition(t[3]||t[2]),i.source.end.offset++,this.spaces=i.raws.between,i.raws.between="")):(i.raws.afterName="",i.params=""),d&&(i.nodes=[],this.current=i)},a.checkMissedSemicolon=function(t){var i=this.colon(t);if(i!==!1){for(var r=0,o,s=i-1;s>=0&&(o=t[s],!(o[0]!=="space"&&(r+=1,r===2)));s--);throw this.input.error("Missed semicolon",o[0]==="word"?o[3]+1:o[2])}},a.colon=function(t){for(var i=0,r,o,s,l=B(t.entries()),d;!(d=l()).done;){var p=d.value,u=p[0],g=p[1];if(r=g,o=r[0],o==="("&&(i+=1),o===")"&&(i-=1),i===0&&o===":")if(!s)this.doubleColon(r);else{if(s[0]==="word"&&s[1]==="progid")continue;return u}s=r}return!1},a.comment=function(t){var i=new Dse;this.init(i,t[2]),i.source.end=this.getPosition(t[3]||t[2]),i.source.end.offset++;var r=t[1].slice(2,-2);if(/^\s*$/.test(r))i.text="",i.raws.left=r,i.raws.right="";else{var o=r.match(/^(\s*)([^]*\S)(\s*)$/);i.text=o[2],i.raws.left=o[1],i.raws.right=o[3]}},a.createTokenizer=function(){this.tokenizer=Cse(this.input)},a.decl=function(t,i){var r=new Sse;this.init(r,t[0][2]);var o=t[t.length-1];for(o[0]===";"&&(this.semicolon=!0,t.pop()),r.source.end=this.getPosition(o[3]||o[2]||Pse(t)),r.source.end.offset++;t[0][0]!=="word";)t.length===1&&this.unknownWord(t),r.raws.before+=t.shift()[1];for(r.source.start=this.getPosition(t[0][2]),r.prop="";t.length;){var s=t[0][0];if(s===":"||s==="space"||s==="comment")break;r.prop+=t.shift()[1]}r.raws.between="";for(var l;t.length;)if(l=t.shift(),l[0]===":"){r.raws.between+=l[1];break}else l[0]==="word"&&/\w/.test(l[1])&&this.unknownWord([l]),r.raws.between+=l[1];(r.prop[0]==="_"||r.prop[0]==="*")&&(r.raws.before+=r.prop[0],r.prop=r.prop.slice(1));for(var d=[],p;t.length&&(p=t[0][0],!(p!=="space"&&p!=="comment"));)d.push(t.shift());this.precheckMissedSemicolon(t);for(var u=t.length-1;u>=0;u--){if(l=t[u],l[1].toLowerCase()==="!important"){r.important=!0;var g=this.stringFrom(t,u);g=this.spacesFromEnd(t)+g,g!==" !important"&&(r.raws.important=g);break}else if(l[1].toLowerCase()==="important"){for(var b=t.slice(0),v="",A=u;A>0;A--){var f=b[A][0];if(v.trim().indexOf("!")===0&&f!=="space")break;v=b.pop()[1]+v}v.trim().indexOf("!")===0&&(r.important=!0,r.raws.important=v,t=b)}if(l[0]!=="space"&&l[0]!=="comment")break}var S=t.some(function(C){return C[0]!=="space"&&C[0]!=="comment"});S&&(r.raws.between+=d.map(function(C){return C[1]}).join(""),d=[]),this.raw(r,"value",d.concat(t),i),r.value.includes(":")&&!i&&this.checkMissedSemicolon(t)},a.doubleColon=function(t){throw this.input.error("Double colon",{offset:t[2]},{offset:t[2]+t[1].length})},a.emptyRule=function(t){var i=new Wv;this.init(i,t[2]),i.selector="",i.raws.between="",this.current=i},a.end=function(t){this.current.nodes&&this.current.nodes.length&&(this.current.raws.semicolon=this.semicolon),this.semicolon=!1,this.current.raws.after=(this.current.raws.after||"")+this.spaces,this.spaces="",this.current.parent?(this.current.source.end=this.getPosition(t[2]),this.current.source.end.offset++,this.current=this.current.parent):this.unexpectedClose(t)},a.endFile=function(){this.current.parent&&this.unclosedBlock(),this.current.nodes&&this.current.nodes.length&&(this.current.raws.semicolon=this.semicolon),this.current.raws.after=(this.current.raws.after||"")+this.spaces,this.root.source.end=this.getPosition(this.tokenizer.position())},a.freeSemicolon=function(t){if(this.spaces+=t[1],this.current.nodes){var i=this.current.nodes[this.current.nodes.length-1];i&&i.type==="rule"&&!i.raws.ownSemicolon&&(i.raws.ownSemicolon=this.spaces,this.spaces="")}},a.getPosition=function(t){var i=this.input.fromOffset(t);return{column:i.col,line:i.line,offset:t}},a.init=function(t,i){this.current.push(t),t.source={input:this.input,start:this.getPosition(i)},t.raws.before=this.spaces,this.spaces="",t.type!=="comment"&&(this.semicolon=!1)},a.other=function(t){for(var i=!1,r=null,o=!1,s=null,l=[],d=t[1].startsWith("--"),p=[],u=t;u;){if(r=u[0],p.push(u),r==="("||r==="[")s||(s=u),l.push(r==="("?")":"]");else if(d&&o&&r==="{")s||(s=u),l.push("}");else if(l.length===0)if(r===";")if(o){this.decl(p,d);return}else break;else if(r==="{"){this.rule(p);return}else if(r==="}"){this.tokenizer.back(p.pop()),i=!0;break}else r===":"&&(o=!0);else r===l[l.length-1]&&(l.pop(),l.length===0&&(s=null));u=this.tokenizer.nextToken()}if(this.tokenizer.endOfFile()&&(i=!0),l.length>0&&this.unclosedBracket(s),i&&o){if(!d)for(;p.length&&(u=p[p.length-1][0],!(u!=="space"&&u!=="comment"));)this.tokenizer.back(p.pop());this.decl(p,d)}else this.unknownWord(p)},a.parse=function(){for(var t;!this.tokenizer.endOfFile();)switch(t=this.tokenizer.nextToken(),t[0]){case"space":this.spaces+=t[1];break;case";":this.freeSemicolon(t);break;case"}":this.end(t);break;case"comment":this.comment(t);break;case"at-word":this.atrule(t);break;case"{":this.emptyRule(t);break;default:this.other(t);break}this.endFile()},a.precheckMissedSemicolon=function(){},a.raw=function(t,i,r,o){for(var s,l,d=r.length,p="",u=!0,g,b,v=0;v<d;v+=1)s=r[v],l=s[0],l==="space"&&v===d-1&&!o?u=!1:l==="comment"?(b=r[v-1]?r[v-1][0]:"empty",g=r[v+1]?r[v+1][0]:"empty",!Gv[b]&&!Gv[g]?p.slice(-1)===","?u=!1:p+=s[1]:u=!1):p+=s[1];if(!u){var A=r.reduce(function(f,S){return f+S[1]},"");t.raws[i]={raw:A,value:p}}t[i]=p},a.rule=function(t){t.pop();var i=new Wv;this.init(i,t[0][2]),i.raws.between=this.spacesAndCommentsFromEnd(t),this.raw(i,"selector",t),this.current=i},a.spacesAndCommentsFromEnd=function(t){for(var i,r="";t.length&&(i=t[t.length-1][0],!(i!=="space"&&i!=="comment"));)r=t.pop()[1]+r;return r},a.spacesAndCommentsFromStart=function(t){for(var i,r="";t.length&&(i=t[0][0],!(i!=="space"&&i!=="comment"));)r+=t.shift()[1];return r},a.spacesFromEnd=function(t){for(var i,r="";t.length&&(i=t[t.length-1][0],i==="space");)r=t.pop()[1]+r;return r},a.stringFrom=function(t,i){for(var r="",o=i;o<t.length;o++)r+=t[o][1];return t.splice(i,t.length-i),r},a.unclosedBlock=function(){var t=this.current.source.start;throw this.input.error("Unclosed block",t.line,t.column)},a.unclosedBracket=function(t){throw this.input.error("Unclosed bracket",{offset:t[2]},{offset:t[2]+1})},a.unexpectedClose=function(t){throw this.input.error("Unexpected }",{offset:t[2]},{offset:t[2]+1})},a.unknownWord=function(t){throw this.input.error("Unknown word",{offset:t[0][2]},{offset:t[0][2]+t[0][1].length})},a.unnamedAtrule=function(t,i){throw this.input.error("At-rule without name",{offset:i[2]},{offset:i[2]+i[1].length})},e})(),xse=_se,Ise=Ri,Rse=xse,zse=sd;function ic(e,a){var n=new zse(e,a),t=new Rse(n);try{t.parse()}catch(i){throw i}return t.root}var Zg=ic;ic.default=ic;Ise.registerParse(ic);var Oa=oi.isClean,Mse=oi.my,Nse=mA,Fse=id,Lse=Ri,jse=Gg,Hv=Hg,Ose=Zg,Bse=ts,Use={atrule:"AtRule",comment:"Comment",decl:"Declaration",document:"Document",root:"Root",rule:"Rule"},qse={AtRule:!0,AtRuleExit:!0,Comment:!0,CommentExit:!0,Declaration:!0,DeclarationExit:!0,Document:!0,DocumentExit:!0,Once:!0,OnceExit:!0,postcssPlugin:!0,prepare:!0,Root:!0,RootExit:!0,Rule:!0,RuleExit:!0},Vse={Once:!0,postcssPlugin:!0,prepare:!0},kr=0;function eo(e){return(typeof e>"u"?"undefined":ce(e))==="object"&&typeof e.then=="function"}function IA(e){var a=!1,n=Use[e.type];return e.type==="decl"?a=e.prop.toLowerCase():e.type==="atrule"&&(a=e.name.toLowerCase()),a&&e.append?[n,n+"-"+a,kr,n+"Exit",n+"Exit-"+a]:a?[n,n+"-"+a,n+"Exit",n+"Exit-"+a]:e.append?[n,kr,n+"Exit"]:[n,n+"Exit"]}function Yv(e){var a;return e.type==="document"?a=["Document",kr,"DocumentExit"]:e.type==="root"?a=["Root",kr,"RootExit"]:a=IA(e),{eventIndex:0,events:a,iterator:0,node:e,visitorIndex:0,visitors:[]}}function Up(e){return e[Oa]=!1,e.nodes&&e.nodes.forEach(function(a){return Up(a)}),e}var qp={},wr=(function(){function e(n,t,i){var r=this;this.stringified=!1,this.processed=!1;var o;if((typeof t>"u"?"undefined":ce(t))==="object"&&t!==null&&(t.type==="root"||t.type==="document"))o=Up(t);else if(le(t,e)||le(t,Hv))o=Up(t.root),t.map&&(typeof i.map>"u"&&(i.map={}),i.map.inline||(i.map.inline=!1),i.map.prev=t.map);else{var s=Ose;i.syntax&&(s=i.syntax.parse),i.parser&&(s=i.parser),s.parse&&(s=s.parse);try{o=s(t,i)}catch(l){this.processed=!0,this.error=l}o&&!o[Mse]&&Lse.rebuild(o)}this.result=new Hv(n,o,i),this.helpers=Ce({},qp,{postcss:qp,result:this.result}),this.plugins=this.processor.plugins.map(function(l){return(typeof l>"u"?"undefined":ce(l))==="object"&&l.prepare?Ce({},l,l.prepare(r.result)):l})}var a=e.prototype;return a.async=function(){return this.error?Promise.reject(this.error):this.processed?Promise.resolve(this.result):(this.processing||(this.processing=this.runAsync()),this.processing)},a.catch=function(t){return this.async().catch(t)},a.finally=function(t){return this.async().then(t,t)},a.getAsyncError=function(){throw new Error("Use process(css).then(cb) to work with async plugins")},a.handleError=function(t,i){var r=this.result.lastPlugin;try{if(i&&i.addToError(t),this.error=t,t.name==="CssSyntaxError"&&!t.plugin)t.plugin=r.postcssPlugin,t.setMessage();else if(r.postcssVersion)var o,s,l,d,p}catch{}return t},a.prepareVisitors=function(){var t=this;this.listeners={};for(var i=function(p,u,g){t.listeners[u]||(t.listeners[u]=[]),t.listeners[u].push([p,g])},r=B(this.plugins),o;!(o=r()).done;){var s=o.value;if((typeof s>"u"?"undefined":ce(s))==="object")for(var l in s){if(!qse[l]&&/^[A-Z]/.test(l))throw new Error("Unknown event "+l+" in "+s.postcssPlugin+". Try to update PostCSS ("+this.processor.version+" now).");if(!Vse[l])if(ce(s[l])==="object")for(var d in s[l])d==="*"?i(s,l,s[l][d]):i(s,l+"-"+d.toLowerCase(),s[l][d]);else typeof s[l]=="function"&&i(s,l,s[l])}}this.hasListener=Object.keys(this.listeners).length>0},a.runAsync=function(){var t=this;return Qc(function(){var i,r,o,s,l,d,p,u,g,b,v,A;return Di(this,function(f){switch(f.label){case 0:t.plugin=0,i=0,f.label=1;case 1:if(!(i<t.plugins.length))return[3,6];if(r=t.plugins[i],o=t.runOnRoot(r),!eo(o))return[3,5];f.label=2;case 2:return f.trys.push([2,4,,5]),[4,o];case 3:return f.sent(),[3,5];case 4:throw s=f.sent(),t.handleError(s);case 5:return i++,[3,1];case 6:if(t.prepareVisitors(),!t.hasListener)return[3,18];l=t.result.root,f.label=7;case 7:if(l[Oa])return[3,14];l[Oa]=!0,d=[Yv(l)],f.label=8;case 8:if(!(d.length>0))return[3,13];if(p=t.visitTick(d),!eo(p))return[3,12];f.label=9;case 9:return f.trys.push([9,11,,12]),[4,p];case 10:return f.sent(),[3,12];case 11:throw u=f.sent(),g=d[d.length-1].node,t.handleError(u,g);case 12:return[3,8];case 13:return[3,7];case 14:if(!t.listeners.OnceExit)return[3,18];b=function(){var S,C,T,E,P;return Di(this,function(I){switch(I.label){case 0:S=A.value,C=S[0],T=S[1],t.result.lastPlugin=C,I.label=1;case 1:return I.trys.push([1,6,,7]),l.type!=="document"?[3,3]:(E=l.nodes.map(function(L){return T(L,t.helpers)}),[4,Promise.all(E)]);case 2:return I.sent(),[3,5];case 3:return[4,T(l,t.helpers)];case 4:I.sent(),I.label=5;case 5:return[3,7];case 6:throw P=I.sent(),t.handleError(P);case 7:return[2]}})},v=B(t.listeners.OnceExit),f.label=15;case 15:return(A=v()).done?[3,18]:[5,_g(b())];case 16:f.sent(),f.label=17;case 17:return[3,15];case 18:return t.processed=!0,[2,t.stringify()]}})})()},a.runOnRoot=function(t){var i=this;this.result.lastPlugin=t;try{if((typeof t>"u"?"undefined":ce(t))==="object"&&t.Once){if(this.result.root.type==="document"){var r=this.result.root.nodes.map(function(o){return t.Once(o,i.helpers)});return eo(r[0])?Promise.all(r):r}return t.Once(this.result.root,this.helpers)}else if(typeof t=="function")return t(this.result.root,this.result)}catch(o){throw this.handleError(o)}},a.stringify=function(){if(this.error)throw this.error;if(this.stringified)return this.result;this.stringified=!0,this.sync();var t=this.result.opts,i=Fse;t.syntax&&(i=t.syntax.stringify),t.stringifier&&(i=t.stringifier),i.stringify&&(i=i.stringify);var r=new Nse(i,this.result.root,this.result.opts),o=r.generate();return this.result.css=o[0],this.result.map=o[1],this.result},a.sync=function(){if(this.error)throw this.error;if(this.processed)return this.result;if(this.processed=!0,this.processing)throw this.getAsyncError();for(var t=B(this.plugins),i;!(i=t()).done;){var r=i.value,o=this.runOnRoot(r);if(eo(o))throw this.getAsyncError()}if(this.prepareVisitors(),this.hasListener){for(var s=this.result.root;!s[Oa];)s[Oa]=!0,this.walkSync(s);if(this.listeners.OnceExit)if(s.type==="document")for(var l=B(s.nodes),d;!(d=l()).done;){var p=d.value;this.visitSync(this.listeners.OnceExit,p)}else this.visitSync(this.listeners.OnceExit,s)}return this.result},a.then=function(t,i){return this.async().then(t,i)},a.toString=function(){return this.css},a.visitSync=function(t,i){for(var r=B(t),o;!(o=r()).done;){var s=o.value,l=s[0],d=s[1];this.result.lastPlugin=l;var p=void 0;try{p=d(i,this.helpers)}catch(u){throw this.handleError(u,i.proxyOf)}if(i.type!=="root"&&i.type!=="document"&&!i.parent)return!0;if(eo(p))throw this.getAsyncError()}},a.visitTick=function(t){var i=t[t.length-1],r=i.node,o=i.visitors;if(r.type!=="root"&&r.type!=="document"&&!r.parent){t.pop();return}if(o.length>0&&i.visitorIndex<o.length){var s=o[i.visitorIndex],l=s[0],d=s[1];i.visitorIndex+=1,i.visitorIndex===o.length&&(i.visitors=[],i.visitorIndex=0),this.result.lastPlugin=l;try{return d(r.toProxy(),this.helpers)}catch(v){throw this.handleError(v,r)}}if(i.iterator!==0){for(var p=i.iterator,u;u=r.nodes[r.indexes[p]];)if(r.indexes[p]+=1,!u[Oa]){u[Oa]=!0,t.push(Yv(u));return}i.iterator=0,delete r.indexes[p]}for(var g=i.events;i.eventIndex<g.length;){var b=g[i.eventIndex];if(i.eventIndex+=1,b===kr){r.nodes&&r.nodes.length&&(r[Oa]=!0,i.iterator=r.getIterator());return}else if(this.listeners[b]){i.visitors=this.listeners[b];return}}t.pop()},a.walkSync=function(t){var i=this;t[Oa]=!0;for(var r=IA(t),o=B(r),s;!(s=o()).done;){var l=s.value;if(l===kr)t.nodes&&t.each(function(p){p[Oa]||i.walkSync(p)});else{var d=this.listeners[l];if(d&&this.visitSync(d,t.toProxy()))return}}},a.warnings=function(){return this.sync().warnings()},rt(e,[{key:"content",get:function(){return this.stringify().content}},{key:"css",get:function(){return this.stringify().css}},{key:"map",get:function(){return this.stringify().map}},{key:"messages",get:function(){return this.sync().messages}},{key:"opts",get:function(){return this.result.opts}},{key:"processor",get:function(){return this.result.processor}},{key:"root",get:function(){return this.sync().root}},{key:Symbol.toStringTag,get:function(){return"LazyResult"}}]),e})();wr.registerPostcss=function(e){qp=e};var RA=wr;wr.default=wr;Bse.registerLazyResult(wr);jse.registerLazyResult(wr);var $se=mA,Wse=id,Gse=Zg,Hse=Hg,Vp=(function(){function e(n,t,i){t=t.toString(),this.stringified=!1,this._processor=n,this._css=t,this._opts=i,this._map=void 0;var r,o=Wse;this.result=new Hse(this._processor,r,this._opts),this.result.css=t;var s=this;Object.defineProperty(this.result,"root",{get:function(){return s.root}});var l=new $se(o,r,this._opts,t);if(l.isMap()){var d=l.generate(),p=d[0],u=d[1];p&&(this.result.css=p),u&&(this.result.map=u)}else l.clearAnnotation(),this.result.css=l.css}var a=e.prototype;return a.async=function(){return this.error?Promise.reject(this.error):Promise.resolve(this.result)},a.catch=function(t){return this.async().catch(t)},a.finally=function(t){return this.async().then(t,t)},a.sync=function(){if(this.error)throw this.error;return this.result},a.then=function(t,i){return this.async().then(t,i)},a.toString=function(){return this._css},a.warnings=function(){return[]},rt(e,[{key:"content",get:function(){return this.result.css}},{key:"css",get:function(){return this.result.css}},{key:"map",get:function(){return this.result.map}},{key:"messages",get:function(){return[]}},{key:"opts",get:function(){return this.result.opts}},{key:"processor",get:function(){return this.result.processor}},{key:"root",get:function(){if(this._root)return this._root;var t,i=Gse;try{t=i(this._css,this._opts)}catch(r){this.error=r}if(this.error)throw this.error;return this._root=t,t}},{key:Symbol.toStringTag,get:function(){return"NoWorkResult"}}]),e})(),Yse=Vp;Vp.default=Vp;var Kse=Yse,Zse=RA,Jse=Gg,Qse=ts,Ro=(function(){function e(n){n===void 0&&(n=[]),this.version="8.4.38",this.plugins=this.normalize(n)}var a=e.prototype;return a.normalize=function(t){for(var i=[],r=B(t),o;!(o=r()).done;){var s=o.value;if(s.postcss===!0?s=s():s.postcss&&(s=s.postcss),(typeof s>"u"?"undefined":ce(s))==="object"&&Array.isArray(s.plugins))i=i.concat(s.plugins);else if((typeof s>"u"?"undefined":ce(s))==="object"&&s.postcssPlugin)i.push(s);else if(typeof s=="function")i.push(s);else if(!((typeof s>"u"?"undefined":ce(s))==="object"&&(s.parse||s.stringify)))throw new Error(s+" is not a PostCSS plugin")}return i},a.process=function(t,i){return i===void 0&&(i={}),!this.plugins.length&&!i.parser&&!i.stringifier&&!i.syntax?new Kse(this,t,i):new Zse(this,t,i)},a.use=function(t){return this.plugins=this.plugins.concat(this.normalize([t])),this},e})(),Xse=Ro;Ro.default=Ro;Qse.registerProcessor(Ro);Jse.registerProcessor(Ro);var ele=od,tle=lA,ale=ld,nle=Yg,ile=sd,rle=ts,ole=Kg;function zo(e,a){if(Array.isArray(e))return e.map(function(u){return zo(u)});var n=e.inputs,t=Ci(e,["inputs"]);if(n){a=[];for(var i=B(n),r;!(r=i()).done;){var o=r.value,s=Ce({},o,{__proto__:ile.prototype});s.map&&(s.map=Ce({},s.map,{__proto__:tle.prototype})),a.push(s)}}if(t.nodes&&(t.nodes=e.nodes.map(function(u){return zo(u,a)})),t.source){var l=t.source,d=l.inputId,p=Ci(l,["inputId"]);t.source=p,d!=null&&(t.source.input=a[d])}if(t.type==="root")return new rle(t);if(t.type==="decl")return new ele(t);if(t.type==="rule")return new ole(t);if(t.type==="comment")return new ale(t);if(t.type==="atrule")return new nle(t);throw new Error("Unknown node type: "+e.type)}var sle=zo;zo.default=zo;var lle=Vg,zA=od,cle=RA,dle=Ri,Jg=Xse,ule=id,ple=sle,MA=Gg,mle=CA,NA=ld,FA=Yg,gle=Hg,hle=sd,fle=Zg,vle=_A,LA=Kg,jA=ts,ble=rd;function We(){for(var e=arguments.length,a=new Array(e),n=0;n<e;n++)a[n]=arguments[n];return a.length===1&&Array.isArray(a[0])&&(a=a[0]),new Jg(a)}We.plugin=function(a,n){var t=!1;function i(){for(var o=arguments.length,s=new Array(o),l=0;l<o;l++)s[l]=arguments[l];console&&console.warn&&!t&&(t=!0,hr.LANG&&hr.LANG.startsWith("cn"));var d=n.apply(void 0,[].concat(s));return d.postcssPlugin=a,d.postcssVersion=new Jg().version,d}var r;return Object.defineProperty(i,"postcss",{get:function(){return r||(r=i()),r}}),i.process=function(o,s,l){return We([i(l)]).process(o,s)},i};We.stringify=ule;We.parse=fle;We.fromJSON=ple;We.list=vle;We.comment=function(e){return new NA(e)};We.atRule=function(e){return new FA(e)};We.decl=function(e){return new zA(e)};We.rule=function(e){return new LA(e)};We.root=function(e){return new jA(e)};We.document=function(e){return new MA(e)};We.CssSyntaxError=lle;We.Declaration=zA;We.Container=dle;We.Processor=Jg;We.Document=MA;We.Comment=NA;We.Warning=mle;We.AtRule=FA;We.Result=gle;We.Input=hle;We.Rule=LA;We.Root=jA;We.Node=ble;cle.registerPostcss(We);var yle=We;We.default=We;var dt=Roe(yle);dt.stringify;dt.fromJSON;dt.plugin;dt.parse;dt.list;dt.document;dt.comment;dt.atRule;dt.rule;dt.decl;dt.root;dt.CssSyntaxError;dt.Declaration;dt.Container;dt.Processor;dt.Document;dt.Comment;dt.Warning;dt.AtRule;dt.Result;dt.Input;dt.Rule;dt.Root;dt.Node;var kle=(function(){function e(){for(var n=arguments.length,t=new Array(n),i=0;i<n;i++)t[i]=arguments[i];ca(this,"parentElement",null),ca(this,"parentNode",null),ca(this,"ownerDocument"),ca(this,"firstChild",null),ca(this,"lastChild",null),ca(this,"previousSibling",null),ca(this,"nextSibling",null),ca(this,"ELEMENT_NODE",1),ca(this,"TEXT_NODE",3),ca(this,"nodeType"),ca(this,"nodeName"),ca(this,"RRNodeType")}var a=e.prototype;return a.contains=function(t){if(le(t,e)){if(t.ownerDocument!==this.ownerDocument)return!1;if(t===this)return!0}else return!1;for(;t.parentNode;){if(t.parentNode===this)return!0;t=t.parentNode}return!1},a.appendChild=function(t){throw new Error("RRDomException: Failed to execute 'appendChild' on 'RRNode': This RRNode type does not support this method.")},a.insertBefore=function(t,i){throw new Error("RRDomException: Failed to execute 'insertBefore' on 'RRNode': This RRNode type does not support this method.")},a.removeChild=function(t){throw new Error("RRDomException: Failed to execute 'removeChild' on 'RRNode': This RRNode type does not support this method.")},a.toString=function(){return"RRNode"},rt(e,[{key:"childNodes",get:function(){for(var t=[],i=this.firstChild;i;)t.push(i),i=i.nextSibling;return t}}]),e})(),Kv={Node:["childNodes","parentNode","parentElement","textContent"],ShadowRoot:["host","styleSheets"],Element:["shadowRoot","querySelector","querySelectorAll"],MutationObserver:[]},Zv={Node:["contains","getRootNode"],ShadowRoot:["getSelection"],Element:[],MutationObserver:["constructor"]},Gs={},wle=function(){return!!globalThis.Zone};function Qg(e){if(Gs[e])return Gs[e];var a=globalThis[e],n=a.prototype,t=e in Kv?Kv[e]:void 0,i=!!(t&&t.every(function(p){var u,g;return!!((g=(u=Object.getOwnPropertyDescriptor(n,p))==null?void 0:u.get)!=null&&g.toString().includes("[native code]"))})),r=e in Zv?Zv[e]:void 0,o=!!(r&&r.every(function(p){var u;return typeof n[p]=="function"&&((u=n[p])==null?void 0:u.toString().includes("[native code]"))}));if(i&&o&&!wle())return Gs[e]=a.prototype,a.prototype;try{var s=document.createElement("iframe");document.body.appendChild(s);var l=s.contentWindow;if(!l)return a.prototype;var d=l[e].prototype;return document.body.removeChild(s),d?Gs[e]=d:n}catch{return n}}var cu={};function si(e,a,n){var t,i=e+"."+String(n);if(cu[i])return cu[i].call(a);var r=Qg(e),o=(t=Object.getOwnPropertyDescriptor(r,n))==null?void 0:t.get;return o?(cu[i]=o,o.call(a)):a[n]}var du={};function OA(e,a,n){var t=e+"."+String(n);if(du[t])return du[t].bind(a);var i=Qg(e),r=i[n];return typeof r!="function"?a[n]:(du[t]=r,r.bind(a))}function Ale(e){return si("Node",e,"childNodes")}function Sle(e){return si("Node",e,"parentNode")}function Cle(e){return si("Node",e,"parentElement")}function Dle(e){return si("Node",e,"textContent")}function Tle(e,a){return OA("Node",e,"contains")(a)}function Ele(e){return OA("Node",e,"getRootNode")()}function Ple(e){return!e||!("host"in e)?null:si("ShadowRoot",e,"host")}function _le(e){return e.styleSheets}function xle(e){return!e||!("shadowRoot"in e)?null:si("Element",e,"shadowRoot")}function Ile(e,a){return si("Element",e,"querySelector")(a)}function Rle(e,a){return si("Element",e,"querySelectorAll")(a)}function BA(){return Qg("MutationObserver").constructor}function zi(e,a,n){try{if(!(a in e))return function(){};var t=e[a],i=n(t);return typeof i=="function"&&(i.prototype=i.prototype||{},Object.defineProperties(i,{__rrweb_original__:{enumerable:!1,value:t}})),e[a]=i,function(){e[a]=t}}catch{return function(){}}}var _e={childNodes:Ale,parentNode:Sle,parentElement:Cle,textContent:Dle,contains:Tle,getRootNode:Ele,host:Ple,styleSheets:_le,shadowRoot:xle,querySelector:Ile,querySelectorAll:Rle,mutationObserver:BA,patch:zi};function Ht(e,a,n){n===void 0&&(n=document);var t={capture:!0,passive:!0};return n.addEventListener(e,a,t),function(){return n.removeEventListener(e,a,t)}}var Jv={map:{},getId:function(){return-1},getNode:function(){return null},removeNodeFromMap:function(){},has:function(){return!1},reset:function(){}};typeof window<"u"&&window.Proxy&&window.Reflect&&(Jv=new Proxy(Jv,{get:function(a,n,t){return Reflect.get(a,n,t)}}));function Mo(e,a,n){n===void 0&&(n={});var t=null,i=0;return function(){for(var r=arguments.length,o=new Array(r),s=0;s<r;s++)o[s]=arguments[s];var l=Date.now();!i&&n.leading===!1&&(i=l);var d=a-(l-i),p=this;d<=0||d>a?(t&&(clearTimeout(t),t=null),i=l,e.apply(p,o)):!t&&n.trailing!==!1&&(t=setTimeout(function(){i=n.leading===!1?0:Date.now(),t=null,e.apply(p,o)},d))}}function cd(e,a,n,t,i){i===void 0&&(i=window);var r=i.Object.getOwnPropertyDescriptor(e,a);return i.Object.defineProperty(e,a,t?n:{set:function(s){var l=this;setTimeout(function(){n.set.call(l,s)},0),r&&r.set&&r.set.call(this,s)}}),function(){return cd(e,a,r||{},!0)}}var rc=Date.now;/[1-9][0-9]{12}/.test(Date.now().toString())||(rc=function(){return new Date().getTime()});function UA(e){var a,n,t,i,r=e.document;return{left:r.scrollingElement?r.scrollingElement.scrollLeft:e.pageXOffset!==void 0?e.pageXOffset:r.documentElement.scrollLeft||(r==null?void 0:r.body)&&((a=_e.parentElement(r.body))==null?void 0:a.scrollLeft)||((n=r==null?void 0:r.body)==null?void 0:n.scrollLeft)||0,top:r.scrollingElement?r.scrollingElement.scrollTop:e.pageYOffset!==void 0?e.pageYOffset:(r==null?void 0:r.documentElement.scrollTop)||(r==null?void 0:r.body)&&((t=_e.parentElement(r.body))==null?void 0:t.scrollTop)||((i=r==null?void 0:r.body)==null?void 0:i.scrollTop)||0}}function qA(){return window.innerHeight||document.documentElement&&document.documentElement.clientHeight||document.body&&document.body.clientHeight}function VA(){return window.innerWidth||document.documentElement&&document.documentElement.clientWidth||document.body&&document.body.clientWidth}function $A(e){if(!e)return null;var a=e.nodeType===e.ELEMENT_NODE?e:_e.parentElement(e);return a}function Yt(e,a,n,t){if(!e)return!1;var i=$A(e);if(!i)return!1;try{if(typeof a=="string"){if(i.classList.contains(a)||t&&i.closest("."+a)!==null)return!0}else if(Zl(i,a,t))return!0}catch{}return!!(n&&(i.matches(n)||t&&i.closest(n)!==null))}function zle(e,a){return a.getId(e)!==-1}function uu(e,a,n){return e.tagName==="TITLE"&&n.headTitleMutations?!0:a.getId(e)===Do}function WA(e,a){if(lo(e))return!1;var n=a.getId(e);if(!a.has(n))return!0;var t=_e.parentNode(e);return t&&t.nodeType===e.DOCUMENT_NODE?!1:t?WA(t,a):!0}function $p(e){return!!e.changedTouches}function Mle(e){e===void 0&&(e=window),"NodeList"in e&&!e.NodeList.prototype.forEach&&(e.NodeList.prototype.forEach=Array.prototype.forEach),"DOMTokenList"in e&&!e.DOMTokenList.prototype.forEach&&(e.DOMTokenList.prototype.forEach=Array.prototype.forEach)}function GA(e,a){return!!(e.nodeName==="IFRAME"&&a.getMeta(e))}function HA(e,a){return!!(e.nodeName==="LINK"&&e.nodeType===e.ELEMENT_NODE&&e.getAttribute&&e.getAttribute("rel")==="stylesheet"&&a.getMeta(e))}function Wp(e){return e?le(e,kle)&&"shadowRoot"in e?!!e.shadowRoot:!!_e.shadowRoot(e):!1}var Nle=(function(){function e(){G(this,"id",1),G(this,"styleIDMap",new WeakMap),G(this,"idStyleMap",new Map)}var a=e.prototype;return a.getId=function(t){var i;return(i=this.styleIDMap.get(t))!=null?i:-1},a.has=function(t){return this.styleIDMap.has(t)},a.add=function(t,i){if(this.has(t))return this.getId(t);var r;return i===void 0?r=this.id++:r=i,this.styleIDMap.set(t,r),this.idStyleMap.set(r,t),r},a.getStyle=function(t){return this.idStyleMap.get(t)||null},a.reset=function(){this.styleIDMap=new WeakMap,this.idStyleMap=new Map,this.id=1},a.generateId=function(){return this.id++},a.remove=function(t){var i=this.styleIDMap.get(t);return i!==void 0?(this.styleIDMap.delete(t),this.idStyleMap.delete(i),!0):!1},e})();function YA(e){var a,n=null;return"getRootNode"in e&&((a=_e.getRootNode(e))==null?void 0:a.nodeType)===Node.DOCUMENT_FRAGMENT_NODE&&_e.host(_e.getRootNode(e))&&(n=_e.host(_e.getRootNode(e))),n}function Fle(e){for(var a=e,n;n=YA(a);)a=n;return a}function Lle(e){var a=e.ownerDocument;if(!a)return!1;var n=Fle(e);return _e.contains(a,n)}function KA(e){var a=e.ownerDocument;return a?_e.contains(a,e)||Lle(e):!1}var Re=(function(e){return e[e.DomContentLoaded=0]="DomContentLoaded",e[e.Load=1]="Load",e[e.FullSnapshot=2]="FullSnapshot",e[e.IncrementalSnapshot=3]="IncrementalSnapshot",e[e.Meta=4]="Meta",e[e.Custom=5]="Custom",e[e.Plugin=6]="Plugin",e})(Re||{}),ve=(function(e){return e[e.Mutation=0]="Mutation",e[e.MouseMove=1]="MouseMove",e[e.MouseInteraction=2]="MouseInteraction",e[e.Scroll=3]="Scroll",e[e.ViewportResize=4]="ViewportResize",e[e.Input=5]="Input",e[e.TouchMove=6]="TouchMove",e[e.MediaInteraction=7]="MediaInteraction",e[e.StyleSheetRule=8]="StyleSheetRule",e[e.CanvasMutation=9]="CanvasMutation",e[e.Font=10]="Font",e[e.Log=11]="Log",e[e.Drag=12]="Drag",e[e.StyleDeclaration=13]="StyleDeclaration",e[e.Selection=14]="Selection",e[e.AdoptedStyleSheet=15]="AdoptedStyleSheet",e[e.CustomElement=16]="CustomElement",e})(ve||{}),Qt=(function(e){return e[e.MouseUp=0]="MouseUp",e[e.MouseDown=1]="MouseDown",e[e.Click=2]="Click",e[e.ContextMenu=3]="ContextMenu",e[e.DblClick=4]="DblClick",e[e.Focus=5]="Focus",e[e.Blur=6]="Blur",e[e.TouchStart=7]="TouchStart",e[e.TouchMove_Departed=8]="TouchMove_Departed",e[e.TouchEnd=9]="TouchEnd",e[e.TouchCancel=10]="TouchCancel",e})(Qt||{}),kn=(function(e){return e[e.Mouse=0]="Mouse",e[e.Pen=1]="Pen",e[e.Touch=2]="Touch",e})(kn||{}),Ar=(function(e){return e[e["2D"]=0]="2D",e[e.WebGL=1]="WebGL",e[e.WebGL2=2]="WebGL2",e})(Ar||{}),Qi=(function(e){return e[e.Play=0]="Play",e[e.Pause=1]="Pause",e[e.Seeked=2]="Seeked",e[e.VolumeChange=3]="VolumeChange",e[e.RateChange=4]="RateChange",e})(Qi||{}),ZA=(function(e){return e[e.Document=0]="Document",e[e.DocumentType=1]="DocumentType",e[e.Element=2]="Element",e[e.Text=3]="Text",e[e.CDATA=4]="CDATA",e[e.Comment=5]="Comment",e})(ZA||{});function Qv(e){return"__ln"in e}var jle=(function(){function e(){G(this,"length",0),G(this,"head",null),G(this,"tail",null)}var a=e.prototype;return a.get=function(t){if(t>=this.length)throw new Error("Position outside of list range");for(var i=this.head,r=0;r<t;r++)i=(i==null?void 0:i.next)||null;return i},a.addNode=function(t){var i={value:t,previous:null,next:null};if(t.__ln=i,t.previousSibling&&Qv(t.previousSibling)){var r=t.previousSibling.__ln.next;i.next=r,i.previous=t.previousSibling.__ln,t.previousSibling.__ln.next=i,r&&(r.previous=i)}else if(t.nextSibling&&Qv(t.nextSibling)&&t.nextSibling.__ln.previous){var o=t.nextSibling.__ln.previous;i.previous=o,i.next=t.nextSibling.__ln,t.nextSibling.__ln.previous=i,o&&(o.next=i)}else this.head&&(this.head.previous=i),i.next=this.head,this.head=i;i.next===null&&(this.tail=i),this.length++},a.removeNode=function(t){var i=t.__ln;this.head&&(i.previous?(i.previous.next=i.next,i.next?i.next.previous=i.previous:this.tail=i.previous):(this.head=i.next,this.head?this.head.previous=null:this.tail=null),t.__ln&&delete t.__ln,this.length--)},e})(),Xv=function(e,a){return e+"@"+a},Ole=(function(){function e(){var n=this;G(this,"frozen",!1),G(this,"locked",!1),G(this,"texts",[]),G(this,"attributes",[]),G(this,"attributeMap",new WeakMap),G(this,"removes",[]),G(this,"mapRemoves",[]),G(this,"movedMap",{}),G(this,"addedSet",new Set),G(this,"movedSet",new Set),G(this,"droppedSet",new Set),G(this,"removesSubTreeCache",new Set),G(this,"mutationCb"),G(this,"blockClass"),G(this,"blockSelector"),G(this,"maskTextClass"),G(this,"maskTextSelector"),G(this,"inlineStylesheet"),G(this,"maskInputOptions"),G(this,"maskTextFn"),G(this,"maskInputFn"),G(this,"keepIframeSrcFn"),G(this,"recordCanvas"),G(this,"inlineImages"),G(this,"slimDOMOptions"),G(this,"dataURLOptions"),G(this,"doc"),G(this,"mirror"),G(this,"iframeManager"),G(this,"stylesheetManager"),G(this,"shadowDomManager"),G(this,"canvasManager"),G(this,"processedNodeManager"),G(this,"unattachedDoc"),G(this,"processMutations",function(t){t.forEach(n.processMutation),n.emit()}),G(this,"emit",function(){if(!(n.frozen||n.locked)){for(var t=[],i=new Set,r=new jle,o=function($){for(var F=$,j=Do;j===Do;)F=F&&F.nextSibling,j=F&&n.mirror.getId(F);return j},s=function($){var F=_e.parentNode($);if(!(!F||!KA($))){var j=!1;if($.nodeType===Node.TEXT_NODE){var H=F.tagName;if(H==="TEXTAREA")return;H==="STYLE"&&n.addedSet.has(F)&&(j=!0)}var X=lo(F)?n.mirror.getId(YA($)):n.mirror.getId(F),ie=o($);if(X===-1||ie===-1)return r.addNode($);var te=nr($,{doc:n.doc,mirror:n.mirror,blockClass:n.blockClass,blockSelector:n.blockSelector,maskTextClass:n.maskTextClass,maskTextSelector:n.maskTextSelector,skipChild:!0,newlyAddedElement:!0,inlineStylesheet:n.inlineStylesheet,maskInputOptions:n.maskInputOptions,maskTextFn:n.maskTextFn,maskInputFn:n.maskInputFn,slimDOMOptions:n.slimDOMOptions,dataURLOptions:n.dataURLOptions,recordCanvas:n.recordCanvas,inlineImages:n.inlineImages,onSerialize:function(oe){GA(oe,n.mirror)&&n.iframeManager.addIframe(oe),HA(oe,n.mirror)&&n.stylesheetManager.trackLinkElement(oe),Wp($)&&n.shadowDomManager.addShadowRoot(_e.shadowRoot($),n.doc)},onIframeLoad:function(oe,ae){n.iframeManager.attachIframe(oe,ae),n.shadowDomManager.observeAttachShadow(oe)},onStylesheetLoad:function(oe,ae){n.stylesheetManager.attachLinkElement(oe,ae)},cssCaptured:j});te&&(t.push({parentId:X,nextId:ie,node:te}),i.add(te.id))}};n.mapRemoves.length;){var l=n.mapRemoves.shift();if(l.nodeName==="IFRAME")try{n.iframeManager.removeIframe(l)}catch{}else n.stylesheetManager.cleanupStylesheetsForRemovedNode(l);n.mirror.removeNodeFromMap(l)}for(var d=B(n.movedSet),p;!(p=d()).done;){var u=p.value;eb(n.removesSubTreeCache,u,n.mirror)&&!n.movedSet.has(_e.parentNode(u))||s(u)}for(var g=B(n.addedSet),b;!(b=g()).done;){var v=b.value;!tb(n.droppedSet,v)&&!eb(n.removesSubTreeCache,v,n.mirror)||tb(n.movedSet,v)?s(v):n.droppedSet.add(v)}for(var A=null;r.length;){var f=null;if(A){var S=n.mirror.getId(_e.parentNode(A.value)),C=o(A.value);S!==-1&&C!==-1&&(f=A)}if(!f)for(var T=r.tail;T;){var E=T;if(T=T.previous,E){var P=n.mirror.getId(_e.parentNode(E.value)),I=o(E.value);if(I===-1)continue;if(P!==-1){f=E;break}else{var L=E.value,N=_e.parentNode(L);if(N&&N.nodeType===Node.DOCUMENT_FRAGMENT_NODE){var Z=_e.host(N),R=n.mirror.getId(Z);if(R!==-1){f=E;break}}}}}if(!f){for(;r.head;)r.removeNode(r.head.value);break}A=f.previous,r.removeNode(f.value),s(f.value)}var Y={texts:n.texts.map(function($){var F=$.node,j=_e.parentNode(F);return j&&j.tagName==="TEXTAREA"&&n.genTextAreaValueMutation(j),{id:n.mirror.getId(F),value:$.value}}).filter(function($){return!i.has($.id)}).filter(function($){return n.mirror.has($.id)}),attributes:n.attributes.map(function($){var F=$.attributes;if(typeof F.style=="string"){var j=JSON.stringify($.styleDiff),H=JSON.stringify($._unchangedStyles);j.length<F.style.length&&(j+H).split("var(").length===F.style.split("var(").length&&(F.style=$.styleDiff)}return{id:n.mirror.getId($.node),attributes:F}}).filter(function($){return!i.has($.id)}).filter(function($){return n.mirror.has($.id)}),removes:n.removes,adds:t};!Y.texts.length&&!Y.attributes.length&&!Y.removes.length&&!Y.adds.length||(n.texts=[],n.attributes=[],n.attributeMap=new WeakMap,n.removes=[],n.addedSet=new Set,n.movedSet=new Set,n.droppedSet=new Set,n.removesSubTreeCache=new Set,n.movedMap={},n.mutationCb(Y))}}),G(this,"genTextAreaValueMutation",function(t){var i=n.attributeMap.get(t);i||(i={node:t,attributes:{},styleDiff:{},_unchangedStyles:{}},n.attributes.push(i),n.attributeMap.set(t,i));var r=Array.from(_e.childNodes(t),function(o){return _e.textContent(o)||""}).join("");i.attributes.value=Hl({element:t,maskInputOptions:n.maskInputOptions,tagName:t.tagName,type:Yl(t),value:r,maskInputFn:n.maskInputFn})}),G(this,"processMutation",function(t){if(!uu(t.target,n.mirror,n.slimDOMOptions))switch(t.type){case"characterData":{var i=_e.textContent(t.target);!Yt(t.target,n.blockClass,n.blockSelector,!1)&&i!==t.oldValue&&n.texts.push({value:Tw(t.target,n.maskTextClass,n.maskTextSelector,!0)&&i?n.maskTextFn?n.maskTextFn(i,$A(t.target)):i.replace(/[\S]/g,"*"):i,node:t.target});break}case"attributes":{var r=t.target,o=t.attributeName,s=t.target.getAttribute(o);if(o==="value"){var l=Yl(r);s=Hl({element:r,maskInputOptions:n.maskInputOptions,tagName:r.tagName,type:l,value:s,maskInputFn:n.maskInputFn})}if(Yt(t.target,n.blockClass,n.blockSelector,!1)||s===t.oldValue)return;var d=n.attributeMap.get(t.target);if(r.tagName==="IFRAME"&&o==="src"&&!n.keepIframeSrcFn(s))if(!r.contentDocument)o="rr_src";else return;if(d||(d={node:t.target,attributes:{},styleDiff:{},_unchangedStyles:{}},n.attributes.push(d),n.attributeMap.set(t.target,d)),o==="type"&&r.tagName==="INPUT"&&(t.oldValue||"").toLowerCase()==="password"&&r.setAttribute("data-rr-is-password","true"),!Dw(r.tagName,o))if(d.attributes[o]=Cw(n.doc,Ti(r.tagName),Ti(o),s),o==="style"){if(!n.unattachedDoc)try{n.unattachedDoc=document.implementation.createHTMLDocument()}catch{n.unattachedDoc=n.doc}var p=n.unattachedDoc.createElement("span");t.oldValue&&p.setAttribute("style",t.oldValue);for(var u=B(Array.from(r.style)),g;!(g=u()).done;){var b=g.value,v=r.style.getPropertyValue(b),A=r.style.getPropertyPriority(b);v!==p.style.getPropertyValue(b)||A!==p.style.getPropertyPriority(b)?A===""?d.styleDiff[b]=v:d.styleDiff[b]=[v,A]:d._unchangedStyles[b]=[v,A]}for(var f=B(Array.from(p.style)),S;!(S=f()).done;){var C=S.value;r.style.getPropertyValue(C)===""&&(d.styleDiff[C]=!1)}}else o==="open"&&r.tagName==="DIALOG"&&(r.matches("dialog:modal")?d.attributes.rr_open_mode="modal":d.attributes.rr_open_mode="non-modal");break}case"childList":{if(Yt(t.target,n.blockClass,n.blockSelector,!0))return;if(t.target.tagName==="TEXTAREA"){n.genTextAreaValueMutation(t.target);return}t.addedNodes.forEach(function(T){return n.genAdds(T,t.target)}),t.removedNodes.forEach(function(T){var E=n.mirror.getId(T),P=lo(t.target)?n.mirror.getId(_e.host(t.target)):n.mirror.getId(t.target);Yt(t.target,n.blockClass,n.blockSelector,!1)||uu(T,n.mirror,n.slimDOMOptions)||!zle(T,n.mirror)||(n.addedSet.has(T)?(Gp(n.addedSet,T),n.droppedSet.add(T)):n.addedSet.has(t.target)&&E===-1||WA(t.target,n.mirror)||(n.movedSet.has(T)&&n.movedMap[Xv(E,P)]?Gp(n.movedSet,T):(n.removes.push({parentId:P,id:E,isShadow:lo(t.target)&&co(t.target)?!0:void 0}),Ble(T,n.removesSubTreeCache))),n.mapRemoves.push(T))});break}}}),G(this,"genAdds",function(t,i){if(!n.processedNodeManager.inOtherBuffer(t,n)&&!(n.addedSet.has(t)||n.movedSet.has(t))){if(n.mirror.hasNode(t)){if(uu(t,n.mirror,n.slimDOMOptions))return;n.movedSet.add(t);var r=null;i&&n.mirror.hasNode(i)&&(r=n.mirror.getId(i)),r&&r!==-1&&(n.movedMap[Xv(n.mirror.getId(t),r)]=!0)}else n.addedSet.add(t),n.droppedSet.delete(t);Yt(t,n.blockClass,n.blockSelector,!1)||(_e.childNodes(t).forEach(function(o){return n.genAdds(o)}),Wp(t)&&_e.childNodes(_e.shadowRoot(t)).forEach(function(o){n.processedNodeManager.add(o,n),n.genAdds(o,t)}))}})}var a=e.prototype;return a.init=function(t){var i=this;["mutationCb","blockClass","blockSelector","maskTextClass","maskTextSelector","inlineStylesheet","maskInputOptions","maskTextFn","maskInputFn","keepIframeSrcFn","recordCanvas","inlineImages","slimDOMOptions","dataURLOptions","doc","mirror","iframeManager","stylesheetManager","shadowDomManager","canvasManager","processedNodeManager"].forEach(function(r){i[r]=t[r]})},a.freeze=function(){this.frozen=!0,this.canvasManager.freeze()},a.unfreeze=function(){this.frozen=!1,this.canvasManager.unfreeze(),this.emit()},a.isFrozen=function(){return this.frozen},a.lock=function(){this.locked=!0,this.canvasManager.lock()},a.unlock=function(){this.locked=!1,this.canvasManager.unlock(),this.emit()},a.reset=function(){this.shadowDomManager.reset(),this.canvasManager.reset()},a.getDoc=function(){return this.doc},e})();function Gp(e,a){e.delete(a),_e.childNodes(a).forEach(function(n){return Gp(e,n)})}function Ble(e,a){for(var n=[e];n.length;){var t=n.pop();a.has(t)||(a.add(t),_e.childNodes(t).forEach(function(i){return n.push(i)}))}}function eb(e,a,n){return e.size===0?!1:Ule(e,a)}function Ule(e,a,n){var t=_e.parentNode(a);return t?e.has(t):!1}function tb(e,a){return e.size===0?!1:JA(e,a)}function JA(e,a){var n=_e.parentNode(a);return n?e.has(n)?!0:JA(e,n):!1}var uo;function qle(e){uo=e}function Vle(){uo=void 0}var Le=function(e){if(!uo)return e;var a=function(){for(var n=arguments.length,t=new Array(n),i=0;i<n;i++)t[i]=arguments[i];try{return e.apply(void 0,[].concat(t))}catch(r){if(uo&&uo(r)===!0)return;throw r}};return a},Ha=[];function as(e){try{if("composedPath"in e){var a=e.composedPath();if(a.length)return a[0]}else if("path"in e&&e.path.length)return e.path[0]}catch{}return e&&e.target}function QA(e,a){var n=new Ole;Ha.push(n),n.init(e);var t=new(BA())(Le(n.processMutations.bind(n)));return t.observe(a,{attributes:!0,attributeOldValue:!0,characterData:!0,characterDataOldValue:!0,childList:!0,subtree:!0}),t}function $le(e){for(var a=Ha.length-1;a>=0;a--){var n=Ha[a];n.getDoc()===e&&Ha.splice(a,1)}}function Wle(e){var a=e.mousemoveCb,n=e.sampling,t=e.doc,i=e.mirror;if(n.mousemove===!1)return function(){};var r=typeof n.mousemove=="number"?n.mousemove:50,o=typeof n.mousemoveCallback=="number"?n.mousemoveCallback:500,s=[],l,d=Mo(Le(function(g){var b=Date.now()-l;a(s.map(function(v){return v.timeOffset-=b,v}),g),s=[],l=null}),o),p=Le(Mo(Le(function(g){var b=as(g),v=$p(g)?g.changedTouches[0]:g,A=v.clientX,f=v.clientY;l||(l=rc()),s.push({x:A,y:f,id:i.getId(b),timeOffset:rc()-l}),d(typeof DragEvent<"u"&&le(g,DragEvent)?ve.Drag:le(g,MouseEvent)?ve.MouseMove:ve.TouchMove)}),r,{trailing:!1})),u=[Ht("mousemove",p,t),Ht("touchmove",p,t),Ht("drag",p,t)];return Le(function(){u.forEach(function(g){return g()})})}function Gle(e){var a=e.mouseInteractionCb,n=e.doc,t=e.mirror,i=e.blockClass,r=e.blockSelector,o=e.sampling;if(o.mouseInteraction===!1)return function(){};var s=o.mouseInteraction===!0||o.mouseInteraction===void 0?{}:o.mouseInteraction,l=[],d=null,p=function(u){return function(g){var b=as(g);if(!Yt(b,i,r,!0)){var v=null,A=u;if("pointerType"in g){switch(g.pointerType){case"mouse":v=kn.Mouse;break;case"touch":v=kn.Touch;break;case"pen":v=kn.Pen;break}v===kn.Touch?Qt[u]===Qt.MouseDown?A="TouchStart":Qt[u]===Qt.MouseUp&&(A="TouchEnd"):kn.Pen}else $p(g)&&(v=kn.Touch);v!==null?(d=v,(A.startsWith("Touch")&&v===kn.Touch||A.startsWith("Mouse")&&v===kn.Mouse)&&(v=null)):Qt[u]===Qt.Click&&(v=d,d=null);var f=$p(g)?g.changedTouches[0]:g;if(f){var S=t.getId(b),C=f.clientX,T=f.clientY;Le(a)(Ce({type:Qt[A],id:S,x:C,y:T},v!==null&&{pointerType:v}))}}}};return Object.keys(Qt).filter(function(u){return Number.isNaN(Number(u))&&!u.endsWith("_Departed")&&s[u]!==!1}).forEach(function(u){var g=Ti(u),b=p(u);if(window.PointerEvent)switch(Qt[u]){case Qt.MouseDown:case Qt.MouseUp:g=g.replace("mouse","pointer");break;case Qt.TouchStart:case Qt.TouchEnd:return}l.push(Ht(g,b,n))}),Le(function(){l.forEach(function(u){return u()})})}function XA(e){var a=e.scrollCb,n=e.doc,t=e.mirror,i=e.blockClass,r=e.blockSelector,o=e.sampling,s=Le(Mo(Le(function(l){var d=as(l);if(!(!d||Yt(d,i,r,!0))){var p=t.getId(d);if(d===n&&n.defaultView){var u=UA(n.defaultView);a({id:p,x:u.left,y:u.top})}else a({id:p,x:d.scrollLeft,y:d.scrollTop})}}),o.scroll||100));return Ht("scroll",s,n)}function Hle(e,a){var n=e.viewportResizeCb,t=a.win,i=-1,r=-1,o=Le(Mo(Le(function(){var s=qA(),l=VA();(i!==s||r!==l)&&(n({width:Number(l),height:Number(s)}),i=s,r=l)}),200));return Ht("resize",o,t)}var Yle=["INPUT","TEXTAREA","SELECT"],ab=new WeakMap;function Kle(e){var a=e.inputCb,n=e.doc,t=e.mirror,i=e.blockClass,r=e.blockSelector,o=e.ignoreClass,s=e.ignoreSelector,l=e.maskInputOptions,d=e.maskInputFn,p=e.sampling,u=e.userTriggeredOnInput;function g(E){var P=as(E),I=E.isTrusted,L=P&&P.tagName;if(P&&L==="OPTION"&&(P=_e.parentElement(P)),!(!P||!L||Yle.indexOf(L)<0||Yt(P,i,r,!0))&&!(P.classList.contains(o)||s&&P.matches(s))){var N=P.value,Z=!1,R=Yl(P)||"";R==="radio"||R==="checkbox"?Z=P.checked:(l[L.toLowerCase()]||l[R])&&(N=Hl({element:P,maskInputOptions:l,tagName:L,type:R,value:N,maskInputFn:d})),b(P,u?{text:N,isChecked:Z,userTriggered:I}:{text:N,isChecked:Z});var Y=P.name;R==="radio"&&Y&&Z&&n.querySelectorAll('input[type="radio"][name="'+Y+'"]').forEach(function($){if($!==P){var F=$.value;b($,u?{text:F,isChecked:!Z,userTriggered:!1}:{text:F,isChecked:!Z})}})}}function b(E,P){var I=ab.get(E);if(!I||I.text!==P.text||I.isChecked!==P.isChecked){ab.set(E,P);var L=t.getId(E);Le(a)(Ce({},P,{id:L}))}}var v=p.input==="last"?["change"]:["input","change"],A=v.map(function(E){return Ht(E,Le(g),n)}),f=n.defaultView;if(!f)return function(){A.forEach(function(E){return E()})};var S=f.Object.getOwnPropertyDescriptor(f.HTMLInputElement.prototype,"value"),C=[[f.HTMLInputElement.prototype,"value"],[f.HTMLInputElement.prototype,"checked"],[f.HTMLSelectElement.prototype,"value"],[f.HTMLTextAreaElement.prototype,"value"],[f.HTMLSelectElement.prototype,"selectedIndex"],[f.HTMLOptionElement.prototype,"selected"]];if(S&&S.set){var T;(T=A).push.apply(T,[].concat(C.map(function(E){return cd(E[0],E[1],{set:function(){Le(g)({target:this,isTrusted:!1})}},!1,f)})))}return Le(function(){A.forEach(function(E){return E()})})}function oc(e){var a=[];function n(t,i){if(Hs("CSSGroupingRule")&&le(t.parentRule,CSSGroupingRule)||Hs("CSSMediaRule")&&le(t.parentRule,CSSMediaRule)||Hs("CSSSupportsRule")&&le(t.parentRule,CSSSupportsRule)||Hs("CSSConditionRule")&&le(t.parentRule,CSSConditionRule)){var r=Array.from(t.parentRule.cssRules),o=r.indexOf(t);i.unshift(o)}else if(t.parentStyleSheet){var s=Array.from(t.parentStyleSheet.cssRules),l=s.indexOf(t);i.unshift(l)}return i}return n(e,a)}function Vn(e,a,n){var t,i;return e?(e.ownerNode?t=a.getId(e.ownerNode):i=n.getId(e),{styleId:i,id:t}):{}}function Zle(e,a){var n=e.styleSheetRuleCb,t=e.mirror,i=e.stylesheetManager,r=a.win;if(!r.CSSStyleSheet||!r.CSSStyleSheet.prototype)return function(){};var o=r.CSSStyleSheet.prototype.insertRule;r.CSSStyleSheet.prototype.insertRule=new Proxy(o,{apply:Le(function(g,b,v){var A=v[0],f=v[1],S=Vn(b,t,i.styleMirror),C=S.id,T=S.styleId;return(C&&C!==-1||T&&T!==-1)&&n({id:C,styleId:T,adds:[{rule:A,index:f}]}),g.apply(b,v)})}),r.CSSStyleSheet.prototype.addRule=function(g,b,v){v===void 0&&(v=this.cssRules.length);var A=g+" { "+b+" }";return r.CSSStyleSheet.prototype.insertRule.apply(this,[A,v])};var s=r.CSSStyleSheet.prototype.deleteRule;r.CSSStyleSheet.prototype.deleteRule=new Proxy(s,{apply:Le(function(g,b,v){var A=v[0],f=Vn(b,t,i.styleMirror),S=f.id,C=f.styleId;return(S&&S!==-1||C&&C!==-1)&&n({id:S,styleId:C,removes:[{index:A}]}),g.apply(b,v)})}),r.CSSStyleSheet.prototype.removeRule=function(g){return r.CSSStyleSheet.prototype.deleteRule.apply(this,[g])};var l;r.CSSStyleSheet.prototype.replace&&(l=r.CSSStyleSheet.prototype.replace,r.CSSStyleSheet.prototype.replace=new Proxy(l,{apply:Le(function(g,b,v){var A=v[0],f=Vn(b,t,i.styleMirror),S=f.id,C=f.styleId;return(S&&S!==-1||C&&C!==-1)&&n({id:S,styleId:C,replace:A}),g.apply(b,v)})}));var d;r.CSSStyleSheet.prototype.replaceSync&&(d=r.CSSStyleSheet.prototype.replaceSync,r.CSSStyleSheet.prototype.replaceSync=new Proxy(d,{apply:Le(function(g,b,v){var A=v[0],f=Vn(b,t,i.styleMirror),S=f.id,C=f.styleId;return(S&&S!==-1||C&&C!==-1)&&n({id:S,styleId:C,replaceSync:A}),g.apply(b,v)})}));var p={};Ys("CSSGroupingRule")?p.CSSGroupingRule=r.CSSGroupingRule:(Ys("CSSMediaRule")&&(p.CSSMediaRule=r.CSSMediaRule),Ys("CSSConditionRule")&&(p.CSSConditionRule=r.CSSConditionRule),Ys("CSSSupportsRule")&&(p.CSSSupportsRule=r.CSSSupportsRule));var u={};return Object.entries(p).forEach(function(g){var b=g[0],v=g[1];u[b]={insertRule:v.prototype.insertRule,deleteRule:v.prototype.deleteRule},v.prototype.insertRule=new Proxy(u[b].insertRule,{apply:Le(function(A,f,S){var C=S[0],T=S[1],E=Vn(f.parentStyleSheet,t,i.styleMirror),P=E.id,I=E.styleId;return(P&&P!==-1||I&&I!==-1)&&n({id:P,styleId:I,adds:[{rule:C,index:[].concat(oc(f),[T||0])}]}),A.apply(f,S)})}),v.prototype.deleteRule=new Proxy(u[b].deleteRule,{apply:Le(function(A,f,S){var C=S[0],T=Vn(f.parentStyleSheet,t,i.styleMirror),E=T.id,P=T.styleId;return(E&&E!==-1||P&&P!==-1)&&n({id:E,styleId:P,removes:[{index:[].concat(oc(f),[C])}]}),A.apply(f,S)})})}),Le(function(){r.CSSStyleSheet.prototype.insertRule=o,r.CSSStyleSheet.prototype.deleteRule=s,l&&(r.CSSStyleSheet.prototype.replace=l),d&&(r.CSSStyleSheet.prototype.replaceSync=d),Object.entries(p).forEach(function(g){var b=g[0],v=g[1];v.prototype.insertRule=u[b].insertRule,v.prototype.deleteRule=u[b].deleteRule})})}function eS(e,a){var n=e.mirror,t=e.stylesheetManager,i,r,o,s=null;a.nodeName==="#document"?s=n.getId(a):s=n.getId(_e.host(a));var l=a.nodeName==="#document"?(i=a.defaultView)==null?void 0:i.Document:(o=(r=a.ownerDocument)==null?void 0:r.defaultView)==null?void 0:o.ShadowRoot,d=l!=null&&l.prototype?Object.getOwnPropertyDescriptor(l==null?void 0:l.prototype,"adoptedStyleSheets"):void 0;return s===null||s===-1||!l||!d?function(){}:(Object.defineProperty(a,"adoptedStyleSheets",{configurable:d.configurable,enumerable:d.enumerable,get:function(){var u;return(u=d.get)==null?void 0:u.call(this)},set:function(u){var g,b=(g=d.set)==null?void 0:g.call(this,u);if(s!==null&&s!==-1)try{t.adoptStyleSheets(u,s)}catch{}return b}}),Le(function(){Object.defineProperty(a,"adoptedStyleSheets",{configurable:d.configurable,enumerable:d.enumerable,get:d.get,set:d.set})}))}function Jle(e,a){var n=e.styleDeclarationCb,t=e.mirror,i=e.ignoreCSSAttributes,r=e.stylesheetManager,o=a.win,s=o.CSSStyleDeclaration.prototype.setProperty;o.CSSStyleDeclaration.prototype.setProperty=new Proxy(s,{apply:Le(function(d,p,u){var g,b=u[0],v=u[1],A=u[2];if(i.has(b))return s.apply(p,[b,v,A]);var f=Vn((g=p.parentRule)==null?void 0:g.parentStyleSheet,t,r.styleMirror),S=f.id,C=f.styleId;return(S&&S!==-1||C&&C!==-1)&&n({id:S,styleId:C,set:{property:b,value:v,priority:A},index:oc(p.parentRule)}),d.apply(p,u)})});var l=o.CSSStyleDeclaration.prototype.removeProperty;return o.CSSStyleDeclaration.prototype.removeProperty=new Proxy(l,{apply:Le(function(d,p,u){var g,b=u[0];if(i.has(b))return l.apply(p,[b]);var v=Vn((g=p.parentRule)==null?void 0:g.parentStyleSheet,t,r.styleMirror),A=v.id,f=v.styleId;return(A&&A!==-1||f&&f!==-1)&&n({id:A,styleId:f,remove:{property:b},index:oc(p.parentRule)}),d.apply(p,u)})}),Le(function(){o.CSSStyleDeclaration.prototype.setProperty=s,o.CSSStyleDeclaration.prototype.removeProperty=l})}function Qle(e){var a=e.mediaInteractionCb,n=e.blockClass,t=e.blockSelector,i=e.mirror,r=e.sampling,o=e.doc,s=Le(function(d){return Mo(Le(function(p){var u=as(p);if(!(!u||Yt(u,n,t,!0))){var g=u.currentTime,b=u.volume,v=u.muted,A=u.playbackRate,f=u.loop;a({type:d,id:i.getId(u),currentTime:g,volume:b,muted:v,playbackRate:A,loop:f})}}),r.media||500)}),l=[Ht("play",s(Qi.Play),o),Ht("pause",s(Qi.Pause),o),Ht("seeked",s(Qi.Seeked),o),Ht("volumechange",s(Qi.VolumeChange),o),Ht("ratechange",s(Qi.RateChange),o)];return Le(function(){l.forEach(function(d){return d()})})}function Xle(e){var a=e.fontCb,n=e.doc,t=n.defaultView;if(!t)return function(){};var i=[],r=new WeakMap,o=t.FontFace;t.FontFace=function(d,p,u){var g=new o(d,p,u);return r.set(g,{family:d,buffer:typeof p!="string",descriptors:u,fontSource:typeof p=="string"?p:JSON.stringify(Array.from(new Uint8Array(p)))}),g};var s=zi(n.fonts,"add",function(l){return function(d){return setTimeout(Le(function(){var p=r.get(d);p&&(a(p),r.delete(d))}),0),l.apply(this,[d])}});return i.push(function(){t.FontFace=o}),i.push(s),Le(function(){i.forEach(function(l){return l()})})}function ece(e){var a=e.doc,n=e.mirror,t=e.blockClass,i=e.blockSelector,r=e.selectionCb,o=!0,s=Le(function(){var l=a.getSelection();if(!(!l||o&&(l!=null&&l.isCollapsed))){o=l.isCollapsed||!1;for(var d=[],p=l.rangeCount||0,u=0;u<p;u++){var g=l.getRangeAt(u),b=g.startContainer,v=g.startOffset,A=g.endContainer,f=g.endOffset,S=Yt(b,t,i,!0)||Yt(A,t,i,!0);S||d.push({start:n.getId(b),startOffset:v,end:n.getId(A),endOffset:f})}r({ranges:d})}});return s(),Ht("selectionchange",s)}function tce(e){var a=e.doc,n=e.customElementCb,t=a.defaultView;if(!t||!t.customElements)return function(){};var i=zi(t.customElements,"define",function(r){return function(o,s,l){try{n({define:{name:o}})}catch{}return r.apply(this,[o,s,l])}});return i}function ace(e,a){var n=e.mutationCb,t=e.mousemoveCb,i=e.mouseInteractionCb,r=e.scrollCb,o=e.viewportResizeCb,s=e.inputCb,l=e.mediaInteractionCb,d=e.styleSheetRuleCb,p=e.styleDeclarationCb,u=e.canvasMutationCb,g=e.fontCb,b=e.selectionCb,v=e.customElementCb;e.mutationCb=function(){for(var A=arguments.length,f=new Array(A),S=0;S<A;S++)f[S]=arguments[S];if(a.mutation){var C;(C=a).mutation.apply(C,[].concat(f))}n.apply(void 0,[].concat(f))},e.mousemoveCb=function(){for(var A=arguments.length,f=new Array(A),S=0;S<A;S++)f[S]=arguments[S];if(a.mousemove){var C;(C=a).mousemove.apply(C,[].concat(f))}t.apply(void 0,[].concat(f))},e.mouseInteractionCb=function(){for(var A=arguments.length,f=new Array(A),S=0;S<A;S++)f[S]=arguments[S];if(a.mouseInteraction){var C;(C=a).mouseInteraction.apply(C,[].concat(f))}i.apply(void 0,[].concat(f))},e.scrollCb=function(){for(var A=arguments.length,f=new Array(A),S=0;S<A;S++)f[S]=arguments[S];if(a.scroll){var C;(C=a).scroll.apply(C,[].concat(f))}r.apply(void 0,[].concat(f))},e.viewportResizeCb=function(){for(var A=arguments.length,f=new Array(A),S=0;S<A;S++)f[S]=arguments[S];if(a.viewportResize){var C;(C=a).viewportResize.apply(C,[].concat(f))}o.apply(void 0,[].concat(f))},e.inputCb=function(){for(var A=arguments.length,f=new Array(A),S=0;S<A;S++)f[S]=arguments[S];if(a.input){var C;(C=a).input.apply(C,[].concat(f))}s.apply(void 0,[].concat(f))},e.mediaInteractionCb=function(){for(var A=arguments.length,f=new Array(A),S=0;S<A;S++)f[S]=arguments[S];if(a.mediaInteaction){var C;(C=a).mediaInteaction.apply(C,[].concat(f))}l.apply(void 0,[].concat(f))},e.styleSheetRuleCb=function(){for(var A=arguments.length,f=new Array(A),S=0;S<A;S++)f[S]=arguments[S];if(a.styleSheetRule){var C;(C=a).styleSheetRule.apply(C,[].concat(f))}d.apply(void 0,[].concat(f))},e.styleDeclarationCb=function(){for(var A=arguments.length,f=new Array(A),S=0;S<A;S++)f[S]=arguments[S];if(a.styleDeclaration){var C;(C=a).styleDeclaration.apply(C,[].concat(f))}p.apply(void 0,[].concat(f))},e.canvasMutationCb=function(){for(var A=arguments.length,f=new Array(A),S=0;S<A;S++)f[S]=arguments[S];if(a.canvasMutation){var C;(C=a).canvasMutation.apply(C,[].concat(f))}u.apply(void 0,[].concat(f))},e.fontCb=function(){for(var A=arguments.length,f=new Array(A),S=0;S<A;S++)f[S]=arguments[S];if(a.font){var C;(C=a).font.apply(C,[].concat(f))}g.apply(void 0,[].concat(f))},e.selectionCb=function(){for(var A=arguments.length,f=new Array(A),S=0;S<A;S++)f[S]=arguments[S];if(a.selection){var C;(C=a).selection.apply(C,[].concat(f))}b.apply(void 0,[].concat(f))},e.customElementCb=function(){for(var A=arguments.length,f=new Array(A),S=0;S<A;S++)f[S]=arguments[S];if(a.customElement){var C;(C=a).customElement.apply(C,[].concat(f))}v.apply(void 0,[].concat(f))}}function nce(e,a){a===void 0&&(a={});var n=e.doc.defaultView;if(!n)return function(){};ace(e,a);var t;e.recordDOM&&(t=QA(e,e.doc));var i=Wle(e),r=Gle(e),o=XA(e),s=Hle(e,{win:n}),l=Kle(e),d=Qle(e),p=function(){},u=function(){},g=function(){},b=function(){};e.recordDOM&&(p=Zle(e,{win:n}),u=eS(e,e.doc),g=Jle(e,{win:n}),e.collectFonts&&(b=Xle(e)));for(var v=ece(e),A=tce(e),f=[],S=B(e.plugins),C;!(C=S()).done;){var T=C.value;f.push(T.observer(T.callback,n,T.options))}return Le(function(){Ha.forEach(function(E){return E.reset()}),t==null||t.disconnect(),i(),r(),o(),s(),l(),d(),p(),u(),g(),b(),v(),A(),f.forEach(function(E){return E()})})}function Hs(e){return typeof window[e]<"u"}function Ys(e){return!!(typeof window[e]<"u"&&window[e].prototype&&"insertRule"in window[e].prototype&&"deleteRule"in window[e].prototype)}var nb=(function(){function e(n){G(this,"iframeIdToRemoteIdMap",new WeakMap),G(this,"iframeRemoteIdToIdMap",new WeakMap),this.generateIdFn=n}var a=e.prototype;return a.getId=function(t,i,r,o){var s=r||this.getIdToRemoteIdMap(t),l=o||this.getRemoteIdToIdMap(t),d=s.get(i);return d||(d=this.generateIdFn(),s.set(i,d),l.set(d,i)),d},a.getIds=function(t,i){var r=this,o=this.getIdToRemoteIdMap(t),s=this.getRemoteIdToIdMap(t);return i.map(function(l){return r.getId(t,l,o,s)})},a.getRemoteId=function(t,i,r){var o=r||this.getRemoteIdToIdMap(t);if(typeof i!="number")return i;var s=o.get(i);return s||-1},a.getRemoteIds=function(t,i){var r=this,o=this.getRemoteIdToIdMap(t);return i.map(function(s){return r.getRemoteId(t,s,o)})},a.reset=function(t){if(!t){this.iframeIdToRemoteIdMap=new WeakMap,this.iframeRemoteIdToIdMap=new WeakMap;return}this.iframeIdToRemoteIdMap.delete(t),this.iframeRemoteIdToIdMap.delete(t)},a.getIdToRemoteIdMap=function(t){var i=this.iframeIdToRemoteIdMap.get(t);return i||(i=new Map,this.iframeIdToRemoteIdMap.set(t,i)),i},a.getRemoteIdToIdMap=function(t){var i=this.iframeRemoteIdToIdMap.get(t);return i||(i=new Map,this.iframeRemoteIdToIdMap.set(t,i)),i},e})(),ice=(function(){function e(n){G(this,"iframes",new WeakMap),G(this,"crossOriginIframeMap",new WeakMap),G(this,"crossOriginIframeMirror",new nb(Sw)),G(this,"crossOriginIframeStyleMirror"),G(this,"crossOriginIframeRootIdMap",new WeakMap),G(this,"iframeContentDocumentMap",new WeakMap),G(this,"iframeObserverCleanupMap",new WeakMap),G(this,"mirror"),G(this,"mutationCb"),G(this,"wrappedEmit"),G(this,"loadListener"),G(this,"stylesheetManager"),G(this,"recordCrossOriginIframes"),this.mutationCb=n.mutationCb,this.wrappedEmit=n.wrappedEmit,this.stylesheetManager=n.stylesheetManager,this.recordCrossOriginIframes=n.recordCrossOriginIframes,this.crossOriginIframeStyleMirror=new nb(this.stylesheetManager.styleMirror.generateId.bind(this.stylesheetManager.styleMirror)),this.mirror=n.mirror,this.recordCrossOriginIframes&&window.addEventListener("message",this.handleMessage.bind(this))}var a=e.prototype;return a.addIframe=function(t){this.iframes.set(t,!0),t.contentWindow&&this.crossOriginIframeMap.set(t.contentWindow,t)},a.getIframeContentDocument=function(t){return this.iframeContentDocumentMap.get(t)},a.setObserverCleanup=function(t,i){this.iframeObserverCleanupMap.set(t,i)},a.getObserverCleanup=function(t){return this.iframeObserverCleanupMap.get(t)},a.removeIframe=function(t){var i=this.iframeContentDocumentMap.get(t);i&&(this.stylesheetManager.cleanupStylesheetsForRemovedNode(i),this.mirror.removeNodeFromMap(i,!0)),this.iframes.delete(t),this.iframeContentDocumentMap.delete(t);var r=this.iframeObserverCleanupMap.get(t);if(r){try{r()}catch{}this.iframeObserverCleanupMap.delete(t)}},a.addLoadListener=function(t){this.loadListener=t},a.attachIframe=function(t,i){var r,o;this.mutationCb({adds:[{parentId:this.mirror.getId(t),nextId:null,node:i}],removes:[],texts:[],attributes:[],isAttachIframe:!0}),t.contentDocument&&this.iframeContentDocumentMap.set(t,t.contentDocument),this.recordCrossOriginIframes&&((r=t.contentWindow)==null||r.addEventListener("message",this.handleMessage.bind(this))),(o=this.loadListener)==null||o.call(this,t),t.contentDocument&&t.contentDocument.adoptedStyleSheets&&t.contentDocument.adoptedStyleSheets.length>0&&this.stylesheetManager.adoptStyleSheets(t.contentDocument.adoptedStyleSheets,this.mirror.getId(t.contentDocument))},a.handleMessage=function(t){var i=t;if(!(i.data.type!=="rrweb"||i.origin!==i.data.origin)){var r=t.source;if(r){var o=this.crossOriginIframeMap.get(t.source);if(o){var s=this.transformCrossOriginEvent(o,i.data.event);s&&this.wrappedEmit(s,i.data.isCheckout)}}}},a.transformCrossOriginEvent=function(t,i){var r=this,o;switch(i.type){case Re.FullSnapshot:{this.crossOriginIframeMirror.reset(t),this.crossOriginIframeStyleMirror.reset(t),this.replaceIdOnNode(i.data.node,t);var s=i.data.node.id;return this.crossOriginIframeRootIdMap.set(t,s),this.patchRootIdOnNode(i.data.node,s),{timestamp:i.timestamp,type:Re.IncrementalSnapshot,data:{source:ve.Mutation,adds:[{parentId:this.mirror.getId(t),nextId:null,node:i.data.node}],removes:[],texts:[],attributes:[],isAttachIframe:!0}}}case Re.Meta:case Re.Load:case Re.DomContentLoaded:return!1;case Re.Plugin:return i;case Re.Custom:return this.replaceIds(i.data.payload,t,["id","parentId","previousId","nextId"]),i;case Re.IncrementalSnapshot:switch(i.data.source){case ve.Mutation:return i.data.adds.forEach(function(l){r.replaceIds(l,t,["parentId","nextId","previousId"]),r.replaceIdOnNode(l.node,t);var d=r.crossOriginIframeRootIdMap.get(t);d&&r.patchRootIdOnNode(l.node,d)}),i.data.removes.forEach(function(l){r.replaceIds(l,t,["parentId","id"])}),i.data.attributes.forEach(function(l){r.replaceIds(l,t,["id"])}),i.data.texts.forEach(function(l){r.replaceIds(l,t,["id"])}),i;case ve.Drag:case ve.TouchMove:case ve.MouseMove:return i.data.positions.forEach(function(l){r.replaceIds(l,t,["id"])}),i;case ve.ViewportResize:return!1;case ve.MediaInteraction:case ve.MouseInteraction:case ve.Scroll:case ve.CanvasMutation:case ve.Input:return this.replaceIds(i.data,t,["id"]),i;case ve.StyleSheetRule:case ve.StyleDeclaration:return this.replaceIds(i.data,t,["id"]),this.replaceStyleIds(i.data,t,["styleId"]),i;case ve.Font:return i;case ve.Selection:return i.data.ranges.forEach(function(l){r.replaceIds(l,t,["start","end"])}),i;case ve.AdoptedStyleSheet:return this.replaceIds(i.data,t,["id"]),this.replaceStyleIds(i.data,t,["styleIds"]),(o=i.data.styles)==null||o.forEach(function(l){r.replaceStyleIds(l,t,["styleId"])}),i}}return!1},a.replace=function(t,i,r,o){for(var s=B(o),l;!(l=s()).done;){var d=l.value;!Array.isArray(i[d])&&typeof i[d]!="number"||(Array.isArray(i[d])?i[d]=t.getIds(r,i[d]):i[d]=t.getId(r,i[d]))}return i},a.replaceIds=function(t,i,r){return this.replace(this.crossOriginIframeMirror,t,i,r)},a.replaceStyleIds=function(t,i,r){return this.replace(this.crossOriginIframeStyleMirror,t,i,r)},a.replaceIdOnNode=function(t,i){var r=this;this.replaceIds(t,i,["id","rootId"]),"childNodes"in t&&t.childNodes.forEach(function(o){r.replaceIdOnNode(o,i)})},a.patchRootIdOnNode=function(t,i){var r=this;t.type!==ZA.Document&&!t.rootId&&(t.rootId=i),"childNodes"in t&&t.childNodes.forEach(function(o){r.patchRootIdOnNode(o,i)})},e})(),rce=(function(){function e(n){G(this,"shadowDoms",new WeakSet),G(this,"mutationCb"),G(this,"scrollCb"),G(this,"bypassOptions"),G(this,"mirror"),G(this,"restoreHandlers",[]),this.mutationCb=n.mutationCb,this.scrollCb=n.scrollCb,this.bypassOptions=n.bypassOptions,this.mirror=n.mirror,this.init()}var a=e.prototype;return a.init=function(){this.reset(),this.patchAttachShadow(Element,document)},a.addShadowRoot=function(t,i){var r=this;if(co(t)&&!this.shadowDoms.has(t)){this.shadowDoms.add(t);var o=QA(Ce({},this.bypassOptions,{doc:i,mutationCb:this.mutationCb,mirror:this.mirror,shadowDomManager:this}),t);this.restoreHandlers.push(function(){return o.disconnect()}),this.restoreHandlers.push(XA(Ce({},this.bypassOptions,{scrollCb:this.scrollCb,doc:t,mirror:this.mirror}))),setTimeout(function(){t.adoptedStyleSheets&&t.adoptedStyleSheets.length>0&&r.bypassOptions.stylesheetManager.adoptStyleSheets(t.adoptedStyleSheets,r.mirror.getId(_e.host(t))),r.restoreHandlers.push(eS({mirror:r.mirror,stylesheetManager:r.bypassOptions.stylesheetManager},t))},0)}},a.observeAttachShadow=function(t){!t.contentWindow||!t.contentDocument||this.patchAttachShadow(t.contentWindow.Element,t.contentDocument)},a.patchAttachShadow=function(t,i){var r=this;this.restoreHandlers.push(zi(t.prototype,"attachShadow",function(o){return function(s){var l=o.call(this,s),d=_e.shadowRoot(this);return d&&KA(this)&&r.addShadowRoot(d,i),l}}))},a.reset=function(){this.restoreHandlers.forEach(function(t){try{t()}catch{}}),this.restoreHandlers=[],this.shadowDoms=new WeakSet},e})(),ir="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",oce=typeof Uint8Array>"u"?[]:new Uint8Array(256);for(var Ks=0;Ks<ir.length;Ks++)oce[ir.charCodeAt(Ks)]=Ks;var sce=function(a){var n=new Uint8Array(a),t,i=n.length,r="";for(t=0;t<i;t+=3)r+=ir[n[t]>>2],r+=ir[(n[t]&3)<<4|n[t+1]>>4],r+=ir[(n[t+1]&15)<<2|n[t+2]>>6],r+=ir[n[t+2]&63];return i%3===2?r=r.substring(0,r.length-1)+"=":i%3===1&&(r=r.substring(0,r.length-2)+"=="),r},ib=new Map;function lce(e,a){var n=ib.get(e);return n||(n=new Map,ib.set(e,n)),n.has(a)||n.set(a,[]),n.get(a)}var tS=function(e,a,n){if(!(!e||!(nS(e,a)||(typeof e>"u"?"undefined":ce(e))==="object"))){var t=e.constructor.name,i=lce(n,t),r=i.indexOf(e);return r===-1&&(r=i.length,i.push(e)),r}};function El(e,a,n){if(le(e,Array))return e.map(function(v){return El(v,a,n)});if(e===null)return e;if(le(e,Float32Array)||le(e,Float64Array)||le(e,Int32Array)||le(e,Uint32Array)||le(e,Uint8Array)||le(e,Uint16Array)||le(e,Int16Array)||le(e,Int8Array)||le(e,Uint8ClampedArray)){var t=e.constructor.name;return{rr_type:t,args:[Object.values(e)]}}else if(le(e,ArrayBuffer)){var i=e.constructor.name,r=sce(e);return{rr_type:i,base64:r}}else if(le(e,DataView)){var o=e.constructor.name;return{rr_type:o,args:[El(e.buffer,a,n),e.byteOffset,e.byteLength]}}else if(le(e,HTMLImageElement)){var s=e.constructor.name,l=e.src;return{rr_type:s,src:l}}else if(le(e,HTMLCanvasElement)){var d="HTMLImageElement",p=e.toDataURL();return{rr_type:d,src:p}}else if(le(e,ImageData)){var u=e.constructor.name;return{rr_type:u,args:[El(e.data,a,n),e.width,e.height]}}else if(nS(e,a)||(typeof e>"u"?"undefined":ce(e))==="object"){var g=e.constructor.name,b=tS(e,a,n);return{rr_type:g,index:b}}return e}var aS=function(e,a,n){return e.map(function(t){return El(t,a,n)})},nS=function(e,a){var n=["WebGLActiveInfo","WebGLBuffer","WebGLFramebuffer","WebGLProgram","WebGLRenderbuffer","WebGLShader","WebGLShaderPrecisionFormat","WebGLTexture","WebGLUniformLocation","WebGLVertexArrayObject","WebGLVertexArrayObjectOES"],t=n.filter(function(i){return typeof a[i]=="function"});return!!t.find(function(i){return le(e,a[i])})};function cce(e,a,n,t){for(var i=function(){var d=l.value;try{if(typeof a.CanvasRenderingContext2D.prototype[d]!="function")return"continue";var p=zi(a.CanvasRenderingContext2D.prototype,d,function(g){return function(){for(var b=this,v=arguments.length,A=new Array(v),f=0;f<v;f++)A[f]=arguments[f];return Yt(this.canvas,n,t,!0)||setTimeout(function(){var S=aS(A,a,b);e(b.canvas,{type:Ar["2D"],property:d,args:S})},0),g.apply(this,A)}});r.push(p)}catch{var u=cd(a.CanvasRenderingContext2D.prototype,d,{set:function(v){e(this.canvas,{type:Ar["2D"],property:d,args:[v],setter:!0})}});r.push(u)}},r=[],o=Object.getOwnPropertyNames(a.CanvasRenderingContext2D.prototype),s=B(o),l;!(l=s()).done;)i();return function(){r.forEach(function(d){return d()})}}function dce(e){return e==="experimental-webgl"?"webgl":e}function rb(e,a,n,t){var i=[];try{var r=zi(e.HTMLCanvasElement.prototype,"getContext",function(o){return function(s){for(var l=arguments.length,d=new Array(l>1?l-1:0),p=1;p<l;p++)d[p-1]=arguments[p];if(!Yt(this,a,n,!0)){var u=dce(s);if("__context"in this||(this.__context=u),t&&["webgl","webgl2"].includes(u))if(d[0]&&ce(d[0])==="object"){var g=d[0];g.preserveDrawingBuffer||(g.preserveDrawingBuffer=!0)}else d.splice(0,1,{preserveDrawingBuffer:!0})}return o.apply(this,[].concat([s],d))}});i.push(r)}catch{}return function(){i.forEach(function(o){return o()})}}function ob(e,a,n,t,i,r){for(var o=function(){var u=p.value;if(["isContextLost","canvas","drawingBufferWidth","drawingBufferHeight"].includes(u))return"continue";try{if(typeof e[u]!="function")return"continue";var g=zi(e,u,function(v){return function(){for(var A=arguments.length,f=new Array(A),S=0;S<A;S++)f[S]=arguments[S];var C=v.apply(this,f);if(tS(C,r,this),"tagName"in this.canvas&&!Yt(this.canvas,t,i,!0)){var T=aS(f,r,this),E={type:a,property:u,args:T};n(this.canvas,E)}return C}});s.push(g)}catch{var b=cd(e,u,{set:function(f){n(this.canvas,{type:a,property:u,args:[f],setter:!0})}});s.push(b)}},s=[],l=Object.getOwnPropertyNames(e),d=B(l),p;!(p=d()).done;)o();return s}function uce(e,a,n,t){var i,r=[];if((i=r).push.apply(i,[].concat(ob(a.WebGLRenderingContext.prototype,Ar.WebGL,e,n,t,a))),typeof a.WebGL2RenderingContext<"u"){var o;(o=r).push.apply(o,[].concat(ob(a.WebGL2RenderingContext.prototype,Ar.WebGL2,e,n,t,a)))}return function(){r.forEach(function(s){return s()})}}var iS="KGZ1bmN0aW9uKCkgewogICJ1c2Ugc3RyaWN0IjsKICB2YXIgY2hhcnMgPSAiQUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVphYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ejAxMjM0NTY3ODkrLyI7CiAgdmFyIGxvb2t1cCA9IHR5cGVvZiBVaW50OEFycmF5ID09PSAidW5kZWZpbmVkIiA/IFtdIDogbmV3IFVpbnQ4QXJyYXkoMjU2KTsKICBmb3IgKHZhciBpID0gMDsgaSA8IGNoYXJzLmxlbmd0aDsgaSsrKSB7CiAgICBsb29rdXBbY2hhcnMuY2hhckNvZGVBdChpKV0gPSBpOwogIH0KICB2YXIgZW5jb2RlID0gZnVuY3Rpb24oYXJyYXlidWZmZXIpIHsKICAgIHZhciBieXRlcyA9IG5ldyBVaW50OEFycmF5KGFycmF5YnVmZmVyKSwgaTIsIGxlbiA9IGJ5dGVzLmxlbmd0aCwgYmFzZTY0ID0gIiI7CiAgICBmb3IgKGkyID0gMDsgaTIgPCBsZW47IGkyICs9IDMpIHsKICAgICAgYmFzZTY0ICs9IGNoYXJzW2J5dGVzW2kyXSA+PiAyXTsKICAgICAgYmFzZTY0ICs9IGNoYXJzWyhieXRlc1tpMl0gJiAzKSA8PCA0IHwgYnl0ZXNbaTIgKyAxXSA+PiA0XTsKICAgICAgYmFzZTY0ICs9IGNoYXJzWyhieXRlc1tpMiArIDFdICYgMTUpIDw8IDIgfCBieXRlc1tpMiArIDJdID4+IDZdOwogICAgICBiYXNlNjQgKz0gY2hhcnNbYnl0ZXNbaTIgKyAyXSAmIDYzXTsKICAgIH0KICAgIGlmIChsZW4gJSAzID09PSAyKSB7CiAgICAgIGJhc2U2NCA9IGJhc2U2NC5zdWJzdHJpbmcoMCwgYmFzZTY0Lmxlbmd0aCAtIDEpICsgIj0iOwogICAgfSBlbHNlIGlmIChsZW4gJSAzID09PSAxKSB7CiAgICAgIGJhc2U2NCA9IGJhc2U2NC5zdWJzdHJpbmcoMCwgYmFzZTY0Lmxlbmd0aCAtIDIpICsgIj09IjsKICAgIH0KICAgIHJldHVybiBiYXNlNjQ7CiAgfTsKICBjb25zdCBsYXN0QmxvYk1hcCA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgTWFwKCk7CiAgY29uc3QgdHJhbnNwYXJlbnRCbG9iTWFwID0gLyogQF9fUFVSRV9fICovIG5ldyBNYXAoKTsKICBhc3luYyBmdW5jdGlvbiBnZXRUcmFuc3BhcmVudEJsb2JGb3Iod2lkdGgsIGhlaWdodCwgZGF0YVVSTE9wdGlvbnMpIHsKICAgIGNvbnN0IGlkID0gYCR7d2lkdGh9LSR7aGVpZ2h0fWA7CiAgICBpZiAoIk9mZnNjcmVlbkNhbnZhcyIgaW4gZ2xvYmFsVGhpcykgewogICAgICBpZiAodHJhbnNwYXJlbnRCbG9iTWFwLmhhcyhpZCkpIHJldHVybiB0cmFuc3BhcmVudEJsb2JNYXAuZ2V0KGlkKTsKICAgICAgY29uc3Qgb2Zmc2NyZWVuID0gbmV3IE9mZnNjcmVlbkNhbnZhcyh3aWR0aCwgaGVpZ2h0KTsKICAgICAgb2Zmc2NyZWVuLmdldENvbnRleHQoIjJkIik7CiAgICAgIGNvbnN0IGJsb2IgPSBhd2FpdCBvZmZzY3JlZW4uY29udmVydFRvQmxvYihkYXRhVVJMT3B0aW9ucyk7CiAgICAgIGNvbnN0IGFycmF5QnVmZmVyID0gYXdhaXQgYmxvYi5hcnJheUJ1ZmZlcigpOwogICAgICBjb25zdCBiYXNlNjQgPSBlbmNvZGUoYXJyYXlCdWZmZXIpOwogICAgICB0cmFuc3BhcmVudEJsb2JNYXAuc2V0KGlkLCBiYXNlNjQpOwogICAgICByZXR1cm4gYmFzZTY0OwogICAgfSBlbHNlIHsKICAgICAgcmV0dXJuICIiOwogICAgfQogIH0KICBjb25zdCB3b3JrZXIgPSBzZWxmOwogIHdvcmtlci5vbm1lc3NhZ2UgPSBhc3luYyBmdW5jdGlvbihlKSB7CiAgICBpZiAoIk9mZnNjcmVlbkNhbnZhcyIgaW4gZ2xvYmFsVGhpcykgewogICAgICBjb25zdCB7IGlkLCBiaXRtYXAsIHdpZHRoLCBoZWlnaHQsIGRhdGFVUkxPcHRpb25zIH0gPSBlLmRhdGE7CiAgICAgIGNvbnN0IHRyYW5zcGFyZW50QmFzZTY0ID0gZ2V0VHJhbnNwYXJlbnRCbG9iRm9yKAogICAgICAgIHdpZHRoLAogICAgICAgIGhlaWdodCwKICAgICAgICBkYXRhVVJMT3B0aW9ucwogICAgICApOwogICAgICBjb25zdCBvZmZzY3JlZW4gPSBuZXcgT2Zmc2NyZWVuQ2FudmFzKHdpZHRoLCBoZWlnaHQpOwogICAgICBjb25zdCBjdHggPSBvZmZzY3JlZW4uZ2V0Q29udGV4dCgiMmQiKTsKICAgICAgY3R4LmRyYXdJbWFnZShiaXRtYXAsIDAsIDApOwogICAgICBiaXRtYXAuY2xvc2UoKTsKICAgICAgY29uc3QgYmxvYiA9IGF3YWl0IG9mZnNjcmVlbi5jb252ZXJ0VG9CbG9iKGRhdGFVUkxPcHRpb25zKTsKICAgICAgY29uc3QgdHlwZSA9IGJsb2IudHlwZTsKICAgICAgY29uc3QgYXJyYXlCdWZmZXIgPSBhd2FpdCBibG9iLmFycmF5QnVmZmVyKCk7CiAgICAgIGNvbnN0IGJhc2U2NCA9IGVuY29kZShhcnJheUJ1ZmZlcik7CiAgICAgIGlmICghbGFzdEJsb2JNYXAuaGFzKGlkKSAmJiBhd2FpdCB0cmFuc3BhcmVudEJhc2U2NCA9PT0gYmFzZTY0KSB7CiAgICAgICAgbGFzdEJsb2JNYXAuc2V0KGlkLCBiYXNlNjQpOwogICAgICAgIHJldHVybiB3b3JrZXIucG9zdE1lc3NhZ2UoeyBpZCB9KTsKICAgICAgfQogICAgICBpZiAobGFzdEJsb2JNYXAuZ2V0KGlkKSA9PT0gYmFzZTY0KSByZXR1cm4gd29ya2VyLnBvc3RNZXNzYWdlKHsgaWQgfSk7CiAgICAgIHdvcmtlci5wb3N0TWVzc2FnZSh7CiAgICAgICAgaWQsCiAgICAgICAgdHlwZSwKICAgICAgICBiYXNlNjQsCiAgICAgICAgd2lkdGgsCiAgICAgICAgaGVpZ2h0CiAgICAgIH0pOwogICAgICBsYXN0QmxvYk1hcC5zZXQoaWQsIGJhc2U2NCk7CiAgICB9IGVsc2UgewogICAgICByZXR1cm4gd29ya2VyLnBvc3RNZXNzYWdlKHsgaWQ6IGUuZGF0YS5pZCB9KTsKICAgIH0KICB9Owp9KSgpOwovLyMgc291cmNlTWFwcGluZ1VSTD1pbWFnZS1iaXRtYXAtZGF0YS11cmwtd29ya2VyLUlKcEM3Z19iLmpzLm1hcAo=",pce=function(e){return Uint8Array.from(atob(e),function(a){return a.charCodeAt(0)})},sb=typeof window<"u"&&window.Blob&&new Blob([pce(iS)],{type:"text/javascript;charset=utf-8"});function mce(e){var a;try{if(a=sb&&(window.URL||window.webkitURL).createObjectURL(sb),!a)throw"";var n=new Worker(a,{name:e==null?void 0:e.name});return n.addEventListener("error",function(){(window.URL||window.webkitURL).revokeObjectURL(a)}),n}catch{return new Worker("data:text/javascript;base64,"+iS,{name:e==null?void 0:e.name})}finally{a&&(window.URL||window.webkitURL).revokeObjectURL(a)}}var gce=(function(){function e(n){var t=this;G(this,"pendingCanvasMutations",new Map),G(this,"rafStamps",{latestId:0,invokeId:null}),G(this,"mirror"),G(this,"mutationCb"),G(this,"resetObservers"),G(this,"frozen",!1),G(this,"locked",!1),G(this,"processMutation",function(u,g){var b=t.rafStamps.invokeId&&t.rafStamps.latestId!==t.rafStamps.invokeId;(b||!t.rafStamps.invokeId)&&(t.rafStamps.invokeId=t.rafStamps.latestId),t.pendingCanvasMutations.has(u)||t.pendingCanvasMutations.set(u,[]),t.pendingCanvasMutations.get(u).push(g)});var i=n.sampling,r=i===void 0?"all":i,o=n.win,s=n.blockClass,l=n.blockSelector,d=n.recordCanvas,p=n.dataURLOptions;this.mutationCb=n.mutationCb,this.mirror=n.mirror,d&&r==="all"&&this.initCanvasMutationObserver(o,s,l),d&&typeof r=="number"&&this.initCanvasFPSObserver(r,o,s,l,{dataURLOptions:p})}var a=e.prototype;return a.reset=function(){this.pendingCanvasMutations.clear(),this.resetObservers&&this.resetObservers()},a.freeze=function(){this.frozen=!0},a.unfreeze=function(){this.frozen=!1},a.lock=function(){this.locked=!0},a.unlock=function(){this.locked=!1},a.initCanvasFPSObserver=function(t,i,r,o,s){var l=this,d=rb(i,r,o,!0),p=new Map,u=new mce;u.onmessage=function(S){var C=S.data.id;if(p.set(C,!1),"base64"in S.data){var T=S.data,E=T.base64,P=T.type,I=T.width,L=T.height;l.mutationCb({id:C,type:Ar["2D"],commands:[{property:"clearRect",args:[0,0,I,L]},{property:"drawImage",args:[{rr_type:"ImageBitmap",args:[{rr_type:"Blob",data:[{rr_type:"ArrayBuffer",base64:E}],type:P}]},0,0]}]})}};var g=1e3/t,b=0,v,A=function(){var S=[];return i.document.querySelectorAll("canvas").forEach(function(C){Yt(C,r,o,!0)||S.push(C)}),S},f=function(S){if(b&&S-b<g){v=requestAnimationFrame(f);return}b=S;var C=l;A().forEach(Qc(function(T){var E,P,I,L;return Di(this,function(N){switch(N.label){case 0:return P=C.mirror.getId(T),p.get(P)?[2]:T.width===0||T.height===0?[2]:(p.set(P,!0),["webgl","webgl2"].includes(T.__context)&&(I=T.getContext(T.__context),((E=I==null?void 0:I.getContextAttributes())==null?void 0:E.preserveDrawingBuffer)===!1&&I.clear(I.COLOR_BUFFER_BIT)),[4,createImageBitmap(T)]);case 1:return L=N.sent(),u.postMessage({id:P,bitmap:L,width:T.width,height:T.height,dataURLOptions:s.dataURLOptions},[L]),[2]}})})),v=requestAnimationFrame(f)};v=requestAnimationFrame(f),this.resetObservers=function(){d(),cancelAnimationFrame(v)}},a.initCanvasMutationObserver=function(t,i,r){this.startRAFTimestamping(),this.startPendingCanvasMutationFlusher();var o=rb(t,i,r,!1),s=cce(this.processMutation.bind(this),t,i,r),l=uce(this.processMutation.bind(this),t,i,r);this.resetObservers=function(){o(),s(),l()}},a.startPendingCanvasMutationFlusher=function(){var t=this;requestAnimationFrame(function(){return t.flushPendingCanvasMutations()})},a.startRAFTimestamping=function(){var t=this,i=function(r){t.rafStamps.latestId=r,requestAnimationFrame(i)};requestAnimationFrame(i)},a.flushPendingCanvasMutations=function(){var t=this;this.pendingCanvasMutations.forEach(function(i,r){var o=t.mirror.getId(r);t.flushPendingCanvasMutationFor(r,o)}),requestAnimationFrame(function(){return t.flushPendingCanvasMutations()})},a.flushPendingCanvasMutationFor=function(t,i){if(!(this.frozen||this.locked)){var r=this.pendingCanvasMutations.get(t);if(!(!r||i===-1)){var o=r.map(function(l){l.type;var d=Ci(l,["type"]);return d}),s=r[0].type;this.mutationCb({id:i,type:s,commands:o}),this.pendingCanvasMutations.delete(t)}}},e})(),hce=(function(){function e(n){G(this,"trackedLinkElements",new WeakSet),G(this,"mutationCb"),G(this,"adoptedStyleSheetCb"),G(this,"styleMirror",new Nle),this.mutationCb=n.mutationCb,this.adoptedStyleSheetCb=n.adoptedStyleSheetCb}var a=e.prototype;return a.attachLinkElement=function(t,i){"_cssText"in i.attributes&&this.mutationCb({adds:[],removes:[],texts:[],attributes:[{id:i.id,attributes:i.attributes}]}),this.trackLinkElement(t)},a.trackLinkElement=function(t){this.trackedLinkElements.has(t)||(this.trackedLinkElements.add(t),this.trackStylesheetInLinkElement(t))},a.adoptStyleSheets=function(t,i){var r,o=function(){var u=p.value,g=void 0;r.styleMirror.has(u)?g=r.styleMirror.getId(u):(g=r.styleMirror.add(u),l.push({styleId:g,rules:Array.from(u.rules||CSSRule,function(b,v){return{rule:kw(b,u.href),index:v}})})),s.styleIds.push(g)};if(t.length!==0){for(var s={id:i,styleIds:[]},l=[],d=B(t),p;!(p=d()).done;)r=this,o();l.length>0&&(s.styles=l),this.adoptedStyleSheetCb(s)}},a.reset=function(){this.styleMirror.reset(),this.trackedLinkElements=new WeakSet},a.cleanupStylesheetsForRemovedNode=function(t){var i=this;try{if(t.nodeType===Node.DOCUMENT_NODE){var r=t;if(r.adoptedStyleSheets)for(var o=B(r.adoptedStyleSheets),s;!(s=o()).done;){var l=s.value;this.styleMirror.remove(l)}}if(t.nodeName==="STYLE"){var d=t;d.sheet&&this.styleMirror.remove(d.sheet)}if(t.nodeName==="LINK"&&t.rel==="stylesheet"){var p=t;p.sheet&&this.styleMirror.remove(p.sheet)}t.childNodes&&t.childNodes.forEach(function(u){i.cleanupStylesheetsForRemovedNode(u)})}catch{}},a.trackStylesheetInLinkElement=function(t){},e})(),fce=(function(){function e(){G(this,"nodeMap",new WeakMap),G(this,"active",!1)}var a=e.prototype;return a.inOtherBuffer=function(t,i){var r=this.nodeMap.get(t);return r&&Array.from(r).some(function(o){return o!==i})},a.add=function(t,i){var r=this;this.active||(this.active=!0,requestAnimationFrame(function(){r.nodeMap=new WeakMap,r.active=!1})),this.nodeMap.set(t,(this.nodeMap.get(t)||new Set).add(i))},a.destroy=function(){},e})(),mt,Pl,pu,sc=!1;try{if(Array.from([1],function(e){return e*2})[0]!==2){var mu=document.createElement("iframe");document.body.appendChild(mu),Array.from=((dv=mu.contentWindow)==null?void 0:dv.Array.from)||Array.from,document.body.removeChild(mu)}}catch{}var Da=vie();function li(e){e===void 0&&(e={});var a=e.emit,n=e.checkoutEveryNms,t=e.checkoutEveryNth,i=e.blockClass,r=i===void 0?"rr-block":i,o=e.blockSelector,s=o===void 0?null:o,l=e.ignoreClass,d=l===void 0?"rr-ignore":l,p=e.ignoreSelector,u=p===void 0?null:p,g=e.maskTextClass,b=g===void 0?"rr-mask":g,v=e.maskTextSelector,A=v===void 0?null:v,f=e.inlineStylesheet,S=f===void 0?!0:f,C=e.maskAllInputs,T=e.maskInputOptions,E=e.slimDOMOptions,P=e.maskInputFn,I=e.maskTextFn,L=e.hooks,N=e.packFn,Z=e.sampling,R=Z===void 0?{}:Z,Y=e.dataURLOptions,$=Y===void 0?{}:Y,F=e.mousemoveWait,j=e.recordDOM,H=j===void 0?!0:j,X=e.recordCanvas,ie=X===void 0?!1:X,te=e.recordCrossOriginIframes,oe=te===void 0?!1:te,ae=e.recordAfter,Me=ae===void 0?e.recordAfter==="DOMContentLoaded"?e.recordAfter:"load":ae,Ne=e.userTriggeredOnInput,re=Ne===void 0?!1:Ne,de=e.collectFonts,q=de===void 0?!1:de,ge=e.inlineImages,Ot=ge===void 0?!1:ge,Ee=e.plugins,Bt=e.keepIframeSrcFn,ia=Bt===void 0?function(){return!1}:Bt,ra=e.ignoreCSSAttributes,oa=ra===void 0?new Set([]):ra,jn=e.errorHandler;qle(jn);var Kt=oe?window.parent===window:!0,va=!1;if(!Kt)try{window.parent.document&&(va=!1)}catch{va=!0}if(Kt&&!a)throw new Error("emit function is required");if(!Kt&&!va)return function(){};F!==void 0&&R.mousemove===void 0&&(R.mousemove=F),Da.reset();var ba=C===!0?{color:!0,date:!0,"datetime-local":!0,email:!0,month:!0,number:!0,range:!0,search:!0,tel:!0,text:!0,time:!0,url:!0,week:!0,textarea:!0,select:!0,password:!0,hidden:!0}:T!==void 0?T:{password:!0},aa=E===!0||E==="all"?{script:!0,comment:!0,headFavicon:!0,headWhitespace:!0,headMetaSocial:!0,headMetaRobots:!0,headMetaHttpEquiv:!0,headMetaVerification:!0,headMetaAuthorship:E==="all",headMetaDescKeywords:E==="all",headTitleMutations:E==="all"}:E||{};Mle();var ya,Pt=0,Zt=function(De){for(var Je=B(Ee||[]),ne;!(ne=Je()).done;){var Oe=ne.value;Oe.eventProcessor&&(De=Oe.eventProcessor(De))}return N&&!va&&(De=N(De)),De};mt=function(De,Je){var ne,Oe=De;if(Oe.timestamp=rc(),(ne=Ha[0])!=null&&ne.isFrozen()&&Oe.type!==Re.FullSnapshot&&!(Oe.type===Re.IncrementalSnapshot&&Oe.data.source===ve.Mutation)&&Ha.forEach(function(Aa){return Aa.unfreeze()}),Kt)a==null||a(Zt(Oe),Je);else if(va){var _t={type:"rrweb",event:Zt(Oe),origin:window.location.origin,isCheckout:Je};window.parent.postMessage(_t,"*")}if(Oe.type===Re.FullSnapshot)ya=Oe,Pt=0;else if(Oe.type===Re.IncrementalSnapshot){if(Oe.data.source===ve.Mutation&&Oe.data.isAttachIframe)return;Pt++;var hi=t&&Pt>=t,cn=n&&Oe.timestamp-ya.timestamp>n;(hi||cn)&&Pl(!0)}};for(var pt=function(De){mt({type:Re.IncrementalSnapshot,data:Ce({source:ve.Mutation},De)})},At=function(De){return mt({type:Re.IncrementalSnapshot,data:Ce({source:ve.Scroll},De)})},ka=function(De){return mt({type:Re.IncrementalSnapshot,data:Ce({source:ve.CanvasMutation},De)})},Or=function(De){return mt({type:Re.IncrementalSnapshot,data:Ce({source:ve.AdoptedStyleSheet},De)})},sa=new hce({mutationCb:pt,adoptedStyleSheetCb:Or}),He=new ice({mirror:Da,mutationCb:pt,stylesheetManager:sa,recordCrossOriginIframes:oe,wrappedEmit:mt}),Ni=B(Ee||[]),on;!(on=Ni()).done;){var wa=on.value;wa.getMirror&&wa.getMirror({nodeMirror:Da,crossOriginIframeMirror:He.crossOriginIframeMirror,crossOriginIframeStyleMirror:He.crossOriginIframeStyleMirror})}var Pe=new fce;pu=new gce({recordCanvas:ie,mutationCb:ka,win:window,blockClass:r,blockSelector:s,mirror:Da,sampling:R.canvas,dataURLOptions:$});var Na=new rce({mutationCb:pt,scrollCb:At,bypassOptions:{blockClass:r,blockSelector:s,maskTextClass:b,maskTextSelector:A,inlineStylesheet:S,maskInputOptions:ba,dataURLOptions:$,maskTextFn:I,maskInputFn:P,recordCanvas:ie,inlineImages:Ot,sampling:R,slimDOMOptions:aa,iframeManager:He,stylesheetManager:sa,canvasManager:pu,keepIframeSrcFn:ia,processedNodeManager:Pe},mirror:Da});Pl=function(De){if(De===void 0&&(De=!1),!!H){mt({type:Re.Meta,data:{href:window.location.href,width:VA(),height:qA()}},De),sa.reset(),Na.init(),Ha.forEach(function(ne){return ne.lock()});var Je=Uie(document,{mirror:Da,blockClass:r,blockSelector:s,maskTextClass:b,maskTextSelector:A,inlineStylesheet:S,maskAllInputs:ba,maskTextFn:I,maskInputFn:P,slimDOM:aa,dataURLOptions:$,recordCanvas:ie,inlineImages:Ot,onSerialize:function(ne){GA(ne,Da)&&He.addIframe(ne),HA(ne,Da)&&sa.trackLinkElement(ne),Wp(ne)&&Na.addShadowRoot(_e.shadowRoot(ne),document)},onIframeLoad:function(ne,Oe){He.attachIframe(ne,Oe),Na.observeAttachShadow(ne)},onStylesheetLoad:function(ne,Oe){sa.attachLinkElement(ne,Oe)},keepIframeSrcFn:ia});Je&&(mt({type:Re.FullSnapshot,data:{node:Je,initialOffset:UA(window)}},De),Ha.forEach(function(ne){return ne.unlock()}),document.adoptedStyleSheets&&document.adoptedStyleSheets.length>0&&sa.adoptStyleSheets(document.adoptedStyleSheets,Da.getId(document)))}};try{var Nt=[],sn=function(De){var Je;return Le(nce)({mutationCb:pt,mousemoveCb:function(ne,Oe){return mt({type:Re.IncrementalSnapshot,data:{source:Oe,positions:ne}})},mouseInteractionCb:function(ne){return mt({type:Re.IncrementalSnapshot,data:Ce({source:ve.MouseInteraction},ne)})},scrollCb:At,viewportResizeCb:function(ne){return mt({type:Re.IncrementalSnapshot,data:Ce({source:ve.ViewportResize},ne)})},inputCb:function(ne){return mt({type:Re.IncrementalSnapshot,data:Ce({source:ve.Input},ne)})},mediaInteractionCb:function(ne){return mt({type:Re.IncrementalSnapshot,data:Ce({source:ve.MediaInteraction},ne)})},styleSheetRuleCb:function(ne){return mt({type:Re.IncrementalSnapshot,data:Ce({source:ve.StyleSheetRule},ne)})},styleDeclarationCb:function(ne){return mt({type:Re.IncrementalSnapshot,data:Ce({source:ve.StyleDeclaration},ne)})},canvasMutationCb:ka,fontCb:function(ne){return mt({type:Re.IncrementalSnapshot,data:Ce({source:ve.Font},ne)})},selectionCb:function(ne){mt({type:Re.IncrementalSnapshot,data:Ce({source:ve.Selection},ne)})},customElementCb:function(ne){mt({type:Re.IncrementalSnapshot,data:Ce({source:ve.CustomElement},ne)})},blockClass:r,ignoreClass:d,ignoreSelector:u,maskTextClass:b,maskTextSelector:A,maskInputOptions:ba,inlineStylesheet:S,sampling:R,recordDOM:H,recordCanvas:ie,inlineImages:Ot,userTriggeredOnInput:re,collectFonts:q,doc:De,maskInputFn:P,maskTextFn:I,keepIframeSrcFn:ia,blockSelector:s,slimDOMOptions:aa,dataURLOptions:$,mirror:Da,iframeManager:He,stylesheetManager:sa,shadowDomManager:Na,processedNodeManager:Pe,canvasManager:pu,ignoreCSSAttributes:oa,plugins:((Je=Ee==null?void 0:Ee.filter(function(ne){return ne.observer}))==null?void 0:Je.map(function(ne){return{observer:ne.observer,options:ne.options,callback:function(Oe){return mt({type:Re.Plugin,data:{plugin:ne.name,payload:Oe}})}}}))||[]},L)};He.addLoadListener(function(De){try{var Je=De.contentDocument,ne=sn(Je);Nt.push(ne);var Oe=He.getObserverCleanup(De);He.setObserverCleanup(De,function(){if(Oe)try{Oe()}catch{}try{ne();var _t=Nt.indexOf(ne);_t!==-1&&Nt.splice(_t,1),$le(Je)}catch{}})}catch{}});var ln=function(){Pl(),Nt.push(sn(document)),sc=!0};return document.readyState==="interactive"||document.readyState==="complete"?ln():(Nt.push(Ht("DOMContentLoaded",function(){mt({type:Re.DomContentLoaded,data:{}}),Me==="DOMContentLoaded"&&ln()})),Nt.push(Ht("load",function(){mt({type:Re.Load,data:{}}),Me==="load"&&ln()},window))),function(){Nt.forEach(function(De){try{De()}catch(ne){var Je=String(ne).toLowerCase();Je.includes("cross-origin")}}),Pe.destroy(),sc=!1,Vle()}}catch{}}li.addCustomEvent=function(e,a){if(!sc)throw new Error("please add custom event after start recording");mt({type:Re.Custom,data:{tag:e,payload:a}})};li.freezePage=function(){Ha.forEach(function(e){return e.freeze()})};li.takeFullSnapshot=function(e){if(!sc)throw new Error("please take full snapshot after start recording");Pl(e)};li.mirror=Da;var lb;(function(e){e[e.NotStarted=0]="NotStarted",e[e.Running=1]="Running",e[e.Stopped=2]="Stopped"})(lb||(lb={}));li.addCustomEvent;li.freezePage;li.takeFullSnapshot;var cb={Node:["childNodes","parentNode","parentElement","textContent"],ShadowRoot:["host","styleSheets"],Element:["shadowRoot","querySelector","querySelectorAll"],MutationObserver:[]},db={Node:["contains","getRootNode"],ShadowRoot:["getSelection"],Element:[],MutationObserver:["constructor"]},Zs={},vce=function(){return!!globalThis.Zone};function Xg(e){if(Zs[e])return Zs[e];var a=globalThis[e],n=a.prototype,t=e in cb?cb[e]:void 0,i=!!(t&&t.every(function(p){var u,g;return!!((g=(u=Object.getOwnPropertyDescriptor(n,p))==null?void 0:u.get)!=null&&g.toString().includes("[native code]"))})),r=e in db?db[e]:void 0,o=!!(r&&r.every(function(p){var u;return typeof n[p]=="function"&&((u=n[p])==null?void 0:u.toString().includes("[native code]"))}));if(i&&o&&!vce())return Zs[e]=a.prototype,a.prototype;try{var s=document.createElement("iframe");document.body.appendChild(s);var l=s.contentWindow;if(!l)return a.prototype;var d=l[e].prototype;return document.body.removeChild(s),d?Zs[e]=d:n}catch{return n}}var gu={};function ci(e,a,n){var t,i=e+"."+String(n);if(gu[i])return gu[i].call(a);var r=Xg(e),o=(t=Object.getOwnPropertyDescriptor(r,n))==null?void 0:t.get;return o?(gu[i]=o,o.call(a)):a[n]}var hu={};function rS(e,a,n){var t=e+"."+String(n);if(hu[t])return hu[t].bind(a);var i=Xg(e),r=i[n];return typeof r!="function"?a[n]:(hu[t]=r,r.bind(a))}function bce(e){return ci("Node",e,"childNodes")}function yce(e){return ci("Node",e,"parentNode")}function kce(e){return ci("Node",e,"parentElement")}function wce(e){return ci("Node",e,"textContent")}function Ace(e,a){return rS("Node",e,"contains")(a)}function Sce(e){return rS("Node",e,"getRootNode")()}function Cce(e){return!e||!("host"in e)?null:ci("ShadowRoot",e,"host")}function Dce(e){return e.styleSheets}function Tce(e){return!e||!("shadowRoot"in e)?null:ci("Element",e,"shadowRoot")}function Ece(e,a){return ci("Element",e,"querySelector")(a)}function Pce(e,a){return ci("Element",e,"querySelectorAll")(a)}function _ce(){return Xg("MutationObserver").constructor}function xce(e,a,n){try{if(!(a in e))return function(){};var t=e[a],i=n(t);return typeof i=="function"&&(i.prototype=i.prototype||{},Object.defineProperties(i,{__rrweb_original__:{enumerable:!1,value:t}})),e[a]=i,function(){e[a]=t}}catch{return function(){}}}var ub={childNodes:bce,parentNode:yce,parentElement:kce,textContent:wce,contains:Ace,getRootNode:Sce,host:Cce,styleSheets:Dce,shadowRoot:Tce,querySelector:Ece,querySelectorAll:Pce,mutationObserver:_ce,patch:xce};function Hp(e,a,n){if(!e)return!1;if(e.nodeType!==e.ELEMENT_NODE)return Hp(ub.parentNode(e),a);for(var t=e.classList.length;t--;){var i=e.classList[t];if(a.test(i))return!0}return Hp(ub.parentNode(e),a)}function Ice(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}function Rce(e){if(e.__esModule)return e;var a=e.default;if(typeof a=="function"){var n=function t(){return le(this,t)?Reflect.construct(a,arguments,this.constructor):a.apply(this,arguments)};n.prototype=a.prototype}else n={};return Object.defineProperty(n,"__esModule",{value:!0}),Object.keys(e).forEach(function(t){var i=Object.getOwnPropertyDescriptor(e,t);Object.defineProperty(n,t,i.get?i:{enumerable:!0,get:function(){return e[t]}})}),n}var eh={exports:{}},tt=String,oS=function(){return{isColorSupported:!1,reset:tt,bold:tt,dim:tt,italic:tt,underline:tt,inverse:tt,hidden:tt,strikethrough:tt,black:tt,red:tt,green:tt,yellow:tt,blue:tt,magenta:tt,cyan:tt,white:tt,gray:tt,bgBlack:tt,bgRed:tt,bgGreen:tt,bgYellow:tt,bgBlue:tt,bgMagenta:tt,bgCyan:tt,bgWhite:tt}};eh.exports=oS();eh.exports.createColors=oS;var zce=eh.exports,Mce={},Nce=Object.freeze(Object.defineProperty({__proto__:null,default:Mce},Symbol.toStringTag,{value:"Module"})),kt=Rce(Nce),pb=zce,mb=kt,Yp=(function(e){lt(a,e);function a(t,i,r,o,s,l){var d;return d=e.call(this,t)||this,d.name="CssSyntaxError",d.reason=t,s&&(d.file=s),o&&(d.source=o),l&&(d.plugin=l),typeof i<"u"&&typeof r<"u"&&(typeof i=="number"?(d.line=i,d.column=r):(d.line=i.line,d.column=i.column,d.endLine=r.line,d.endColumn=r.column)),d.setMessage(),Error.captureStackTrace&&Error.captureStackTrace(d,a),d}var n=a.prototype;return n.setMessage=function(){this.message=this.plugin?this.plugin+": ":"",this.message+=this.file?this.file:"<css input>",typeof this.line<"u"&&(this.message+=":"+this.line+":"+this.column),this.message+=": "+this.reason},n.showSourceCode=function(i){var r=this;if(!this.source)return"";var o=this.source;i==null&&(i=pb.isColorSupported),mb&&i&&(o=mb(o));var s=o.split(/\r?\n/),l=Math.max(this.line-3,0),d=Math.min(this.line+2,s.length),p=String(d).length,u,g;if(i){var b=pb.createColors(!0),v=b.bold,A=b.gray,f=b.red;u=function(S){return v(f(S))},g=function(S){return A(S)}}else u=g=function(S){return S};return s.slice(l,d).map(function(S,C){var T=l+1+C,E=" "+(" "+T).slice(-p)+" | ";if(T===r.line){var P=g(E.replace(/\d/g," "))+S.slice(0,r.column-1).replace(/[^\t]/g," ");return u(">")+g(E)+S+`
`+P+u("^")}return" "+g(E)+S}).join(`
`)},n.toString=function(){var i=this.showSourceCode();return i&&(i=`
`+i+`
`),this.name+": "+this.message+i},a})(Co(Error)),th=Yp;Yp.default=Yp;var di={};di.isClean=Symbol("isClean");di.my=Symbol("my");var gb={after:`
`,beforeClose:`
`,beforeComment:`
`,beforeDecl:`
`,beforeOpen:" ",beforeRule:`
`,colon:": ",commentLeft:" ",commentRight:" ",emptyBody:"",indent:" ",semicolon:!1};function Fce(e){return e[0].toUpperCase()+e.slice(1)}var Kp=(function(){function e(n){this.builder=n}var a=e.prototype;return a.atrule=function(t,i){var r="@"+t.name,o=t.params?this.rawValue(t,"params"):"";if(typeof t.raws.afterName<"u"?r+=t.raws.afterName:o&&(r+=" "),t.nodes)this.block(t,r+o);else{var s=(t.raws.between||"")+(i?";":"");this.builder(r+o+s,t)}},a.beforeAfter=function(t,i){var r;t.type==="decl"?r=this.raw(t,null,"beforeDecl"):t.type==="comment"?r=this.raw(t,null,"beforeComment"):i==="before"?r=this.raw(t,null,"beforeRule"):r=this.raw(t,null,"beforeClose");for(var o=t.parent,s=0;o&&o.type!=="root";)s+=1,o=o.parent;if(r.includes(`
`)){var l=this.raw(t,null,"indent");if(l.length)for(var d=0;d<s;d++)r+=l}return r},a.block=function(t,i){var r=this.raw(t,"between","beforeOpen");this.builder(i+r+"{",t,"start");var o;t.nodes&&t.nodes.length?(this.body(t),o=this.raw(t,"after")):o=this.raw(t,"after","emptyBody"),o&&this.builder(o),this.builder("}",t,"end")},a.body=function(t){for(var i=t.nodes.length-1;i>0&&t.nodes[i].type==="comment";)i-=1;for(var r=this.raw(t,"semicolon"),o=0;o<t.nodes.length;o++){var s=t.nodes[o],l=this.raw(s,"before");l&&this.builder(l),this.stringify(s,i!==o||r)}},a.comment=function(t){var i=this.raw(t,"left","commentLeft"),r=this.raw(t,"right","commentRight");this.builder("/*"+i+t.text+r+"*/",t)},a.decl=function(t,i){var r=this.raw(t,"between","colon"),o=t.prop+r+this.rawValue(t,"value");t.important&&(o+=t.raws.important||" !important"),i&&(o+=";"),this.builder(o,t)},a.document=function(t){this.body(t)},a.raw=function(t,i,r){var o;if(r||(r=i),i&&(o=t.raws[i],typeof o<"u"))return o;var s=t.parent;if(r==="before"&&(!s||s.type==="root"&&s.first===t||s&&s.type==="document"))return"";if(!s)return gb[r];var l=t.root();if(l.rawCache||(l.rawCache={}),typeof l.rawCache[r]<"u")return l.rawCache[r];if(r==="before"||r==="after")return this.beforeAfter(t,r);var d="raw"+Fce(r);return this[d]?o=this[d](l,t):l.walk(function(p){if(o=p.raws[i],typeof o<"u")return!1}),typeof o>"u"&&(o=gb[r]),l.rawCache[r]=o,o},a.rawBeforeClose=function(t){var i;return t.walk(function(r){if(r.nodes&&r.nodes.length>0&&typeof r.raws.after<"u")return i=r.raws.after,i.includes(`
`)&&(i=i.replace(/[^\n]+$/,"")),!1}),i&&(i=i.replace(/\S/g,"")),i},a.rawBeforeComment=function(t,i){var r;return t.walkComments(function(o){if(typeof o.raws.before<"u")return r=o.raws.before,r.includes(`
`)&&(r=r.replace(/[^\n]+$/,"")),!1}),typeof r>"u"?r=this.raw(i,null,"beforeDecl"):r&&(r=r.replace(/\S/g,"")),r},a.rawBeforeDecl=function(t,i){var r;return t.walkDecls(function(o){if(typeof o.raws.before<"u")return r=o.raws.before,r.includes(`
`)&&(r=r.replace(/[^\n]+$/,"")),!1}),typeof r>"u"?r=this.raw(i,null,"beforeRule"):r&&(r=r.replace(/\S/g,"")),r},a.rawBeforeOpen=function(t){var i;return t.walk(function(r){if(r.type!=="decl"&&(i=r.raws.between,typeof i<"u"))return!1}),i},a.rawBeforeRule=function(t){var i;return t.walk(function(r){if(r.nodes&&(r.parent!==t||t.first!==r)&&typeof r.raws.before<"u")return i=r.raws.before,i.includes(`
`)&&(i=i.replace(/[^\n]+$/,"")),!1}),i&&(i=i.replace(/\S/g,"")),i},a.rawColon=function(t){var i;return t.walkDecls(function(r){if(typeof r.raws.between<"u")return i=r.raws.between.replace(/[^\s:]/g,""),!1}),i},a.rawEmptyBody=function(t){var i;return t.walk(function(r){if(r.nodes&&r.nodes.length===0&&(i=r.raws.after,typeof i<"u"))return!1}),i},a.rawIndent=function(t){if(t.raws.indent)return t.raws.indent;var i;return t.walk(function(r){var o=r.parent;if(o&&o!==t&&o.parent&&o.parent===t&&typeof r.raws.before<"u"){var s=r.raws.before.split(`
`);return i=s[s.length-1],i=i.replace(/\S/g,""),!1}}),i},a.rawSemicolon=function(t){var i;return t.walk(function(r){if(r.nodes&&r.nodes.length&&r.last.type==="decl"&&(i=r.raws.semicolon,typeof i<"u"))return!1}),i},a.rawValue=function(t,i){var r=t[i],o=t.raws[i];return o&&o.value===r?o.raw:r},a.root=function(t){this.body(t),t.raws.after&&this.builder(t.raws.after)},a.rule=function(t){this.block(t,this.rawValue(t,"selector")),t.raws.ownSemicolon&&this.builder(t.raws.ownSemicolon,t,"end")},a.stringify=function(t,i){if(!this[t.type])throw new Error("Unknown AST node type "+t.type+". Maybe you need to change PostCSS stringifier.");this[t.type](t,i)},e})(),sS=Kp;Kp.default=Kp;var Lce=sS;function Zp(e,a){var n=new Lce(a);n.stringify(e)}var dd=Zp;Zp.default=Zp;var Js=di.isClean,jce=di.my,Oce=th,Bce=sS,Uce=dd;function Jp(e,a){var n=new e.constructor;for(var t in e)if(Object.prototype.hasOwnProperty.call(e,t)&&t!=="proxyCache"){var i=e[t],r=typeof i>"u"?"undefined":ce(i);t==="parent"&&r==="object"?a&&(n[t]=a):t==="source"?n[t]=i:Array.isArray(i)?n[t]=i.map(function(o){return Jp(o,n)}):(r==="object"&&i!==null&&(i=Jp(i)),n[t]=i)}return n}var Qp=(function(){function e(n){n===void 0&&(n={}),this.raws={},this[Js]=!1,this[jce]=!0;for(var t in n)if(t==="nodes"){this.nodes=[];for(var i=B(n[t]),r;!(r=i()).done;){var o=r.value;typeof o.clone=="function"?this.append(o.clone()):this.append(o)}}else this[t]=n[t]}var a=e.prototype;return a.addToError=function(t){if(t.postcssNode=this,t.stack&&this.source&&/\n\s{4}at /.test(t.stack)){var i=this.source;t.stack=t.stack.replace(/\n\s{4}at /,"$&"+i.input.from+":"+i.start.line+":"+i.start.column+"$&")}return t},a.after=function(t){return this.parent.insertAfter(this,t),this},a.assign=function(t){t===void 0&&(t={});for(var i in t)this[i]=t[i];return this},a.before=function(t){return this.parent.insertBefore(this,t),this},a.cleanRaws=function(t){delete this.raws.before,delete this.raws.after,t||delete this.raws.between},a.clone=function(t){t===void 0&&(t={});var i=Jp(this);for(var r in t)i[r]=t[r];return i},a.cloneAfter=function(t){t===void 0&&(t={});var i=this.clone(t);return this.parent.insertAfter(this,i),i},a.cloneBefore=function(t){t===void 0&&(t={});var i=this.clone(t);return this.parent.insertBefore(this,i),i},a.error=function(t,i){if(i===void 0&&(i={}),this.source){var r=this.rangeBy(i),o=r.end,s=r.start;return this.source.input.error(t,{column:s.column,line:s.line},{column:o.column,line:o.line},i)}return new Oce(t)},a.getProxyProcessor=function(){return{get:function(i,r){return r==="proxyOf"?i:r==="root"?function(){return i.root().toProxy()}:i[r]},set:function(i,r,o){return i[r]===o||(i[r]=o,(r==="prop"||r==="value"||r==="name"||r==="params"||r==="important"||r==="text")&&i.markDirty()),!0}}},a.markDirty=function(){if(this[Js]){this[Js]=!1;for(var t=this;t=t.parent;)t[Js]=!1}},a.next=function(){if(this.parent){var t=this.parent.index(this);return this.parent.nodes[t+1]}},a.positionBy=function(t,i){var r=this.source.start;if(t.index)r=this.positionInside(t.index,i);else if(t.word){i=this.toString();var o=i.indexOf(t.word);o!==-1&&(r=this.positionInside(o,i))}return r},a.positionInside=function(t,i){for(var r=i||this.toString(),o=this.source.start.column,s=this.source.start.line,l=0;l<t;l++)r[l]===`
`?(o=1,s+=1):o+=1;return{column:o,line:s}},a.prev=function(){if(this.parent){var t=this.parent.index(this);return this.parent.nodes[t-1]}},a.rangeBy=function(t){var i={column:this.source.start.column,line:this.source.start.line},r=this.source.end?{column:this.source.end.column+1,line:this.source.end.line}:{column:i.column+1,line:i.line};if(t.word){var o=this.toString(),s=o.indexOf(t.word);s!==-1&&(i=this.positionInside(s,o),r=this.positionInside(s+t.word.length,o))}else t.start?i={column:t.start.column,line:t.start.line}:t.index&&(i=this.positionInside(t.index)),t.end?r={column:t.end.column,line:t.end.line}:typeof t.endIndex=="number"?r=this.positionInside(t.endIndex):t.index&&(r=this.positionInside(t.index+1));return(r.line<i.line||r.line===i.line&&r.column<=i.column)&&(r={column:i.column+1,line:i.line}),{end:r,start:i}},a.raw=function(t,i){var r=new Bce;return r.raw(this,t,i)},a.remove=function(){return this.parent&&this.parent.removeChild(this),this.parent=void 0,this},a.replaceWith=function(){for(var t=arguments.length,i=new Array(t),r=0;r<t;r++)i[r]=arguments[r];if(this.parent){for(var o=this,s=!1,l=B(i),d;!(d=l()).done;){var p=d.value;p===this?s=!0:s?(this.parent.insertAfter(o,p),o=p):this.parent.insertBefore(o,p)}s||this.remove()}return this},a.root=function(){for(var t=this;t.parent&&t.parent.type!=="document";)t=t.parent;return t},a.toJSON=function(t,i){var r={},o=i==null;i=i||new Map;var s=0;for(var l in this)if(Object.prototype.hasOwnProperty.call(this,l)&&!(l==="parent"||l==="proxyCache")){var d=this[l];if(Array.isArray(d))r[l]=d.map(function(u){return(typeof u>"u"?"undefined":ce(u))==="object"&&u.toJSON?u.toJSON(null,i):u});else if((typeof d>"u"?"undefined":ce(d))==="object"&&d.toJSON)r[l]=d.toJSON(null,i);else if(l==="source"){var p=i.get(d.input);p==null&&(p=s,i.set(d.input,s),s++),r[l]={end:d.end,inputId:p,start:d.start}}else r[l]=d}return o&&(r.inputs=[].concat(i.keys()).map(function(u){return u.toJSON()})),r},a.toProxy=function(){return this.proxyCache||(this.proxyCache=new Proxy(this,this.getProxyProcessor())),this.proxyCache},a.toString=function(t){t===void 0&&(t=Uce),t.stringify&&(t=t.stringify);var i="";return t(this,function(r){i+=r}),i},a.warn=function(t,i,r){var o={node:this};for(var s in r)o[s]=r[s];return t.warn(i,o)},rt(e,[{key:"proxyOf",get:function(){return this}}]),e})(),ud=Qp;Qp.default=Qp;var qce=ud,Xp=(function(e){lt(a,e);function a(n){var t;return n&&typeof n.value<"u"&&typeof n.value!="string"&&(n=Ce({},n,{value:String(n.value)})),t=e.call(this,n)||this,t.type="decl",t}return rt(a,[{key:"variable",get:function(){return this.prop.startsWith("--")||this.prop[0]==="$"}}]),a})(qce),pd=Xp;Xp.default=Xp;var Vce="useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict",$ce=function(e){e===void 0&&(e=21);for(var a="",n=e;n--;)a+=Vce[Math.random()*64|0];return a},Wce={nanoid:$ce},hb=kt.SourceMapConsumer,fb=kt.SourceMapGenerator,Gce=kt.existsSync,Hce=kt.readFileSync,fu=kt.dirname,Yce=kt.join;function Kce(e){return Buffer?Buffer.from(e,"base64").toString():window.atob(e)}var em=(function(){function e(n,t){if(t.map!==!1){this.loadAnnotation(n),this.inline=this.startWith(this.annotation,"data:");var i=t.map?t.map.prev:void 0,r=this.loadMap(t.from,i);!this.mapFile&&t.from&&(this.mapFile=t.from),this.mapFile&&(this.root=fu(this.mapFile)),r&&(this.text=r)}}var a=e.prototype;return a.consumer=function(){return this.consumerCache||(this.consumerCache=new hb(this.text)),this.consumerCache},a.decodeInline=function(t){var i=/^data:application\/json;charset=utf-?8;base64,/,r=/^data:application\/json;base64,/,o=/^data:application\/json;charset=utf-?8,/,s=/^data:application\/json,/;if(o.test(t)||s.test(t))return decodeURIComponent(t.substr(RegExp.lastMatch.length));if(i.test(t)||r.test(t))return Kce(t.substr(RegExp.lastMatch.length));var l=t.match(/data:application\/json;([^,]+),/)[1];throw new Error("Unsupported source map encoding "+l)},a.getAnnotationURL=function(t){return t.replace(/^\/\*\s*# sourceMappingURL=/,"").trim()},a.isMap=function(t){return(typeof t>"u"?"undefined":ce(t))!=="object"?!1:typeof t.mappings=="string"||typeof t._mappings=="string"||Array.isArray(t.sections)},a.loadAnnotation=function(t){var i=t.match(/\/\*\s*# sourceMappingURL=/gm);if(i){var r=t.lastIndexOf(i.pop()),o=t.indexOf("*/",r);r>-1&&o>-1&&(this.annotation=this.getAnnotationURL(t.substring(r,o)))}},a.loadFile=function(t){if(this.root=fu(t),Gce(t))return this.mapFile=t,Hce(t,"utf-8").toString().trim()},a.loadMap=function(t,i){if(i===!1)return!1;if(i){if(typeof i=="string")return i;if(typeof i=="function"){var r=i(t);if(r){var o=this.loadFile(r);if(!o)throw new Error("Unable to load previous source map: "+r.toString());return o}}else{if(le(i,hb))return fb.fromSourceMap(i).toString();if(le(i,fb))return i.toString();if(this.isMap(i))return JSON.stringify(i);throw new Error("Unsupported previous source map format: "+i.toString())}}else{if(this.inline)return this.decodeInline(this.annotation);if(this.annotation){var s=this.annotation;return t&&(s=Yce(fu(t),s)),this.loadFile(s)}}},a.startWith=function(t,i){return t?t.substr(0,i.length)===i:!1},a.withContent=function(){return!!(this.consumer().sourcesContent&&this.consumer().sourcesContent.length>0)},e})(),lS=em;em.default=em;var Zce=kt.SourceMapConsumer,Jce=kt.SourceMapGenerator,vb=kt.fileURLToPath,Qs=kt.pathToFileURL,tm=kt.isAbsolute,am=kt.resolve,Qce=Wce.nanoid,vu=kt,bb=th,Xce=lS,bu=Symbol("fromOffsetCache"),ede=!!(Zce&&Jce),yb=!!(am&&tm),lc=(function(){function e(n,t){if(t===void 0&&(t={}),n===null||typeof n>"u"||(typeof n>"u"?"undefined":ce(n))==="object"&&!n.toString)throw new Error("PostCSS received "+n+" instead of CSS string");if(this.css=n.toString(),this.css[0]==="\uFEFF"||this.css[0]==="￾"?(this.hasBOM=!0,this.css=this.css.slice(1)):this.hasBOM=!1,t.from&&(!yb||/^\w+:\/\//.test(t.from)||tm(t.from)?this.file=t.from:this.file=am(t.from)),yb&&ede){var i=new Xce(this.css,t);if(i.text){this.map=i;var r=i.consumer().file;!this.file&&r&&(this.file=this.mapResolve(r))}}this.file||(this.id="<input css "+Qce(6)+">"),this.map&&(this.map.file=this.from)}var a=e.prototype;return a.error=function(t,i,r,o){o===void 0&&(o={});var s,l,d;if(i&&(typeof i>"u"?"undefined":ce(i))==="object"){var p=i,u=r;if(typeof p.offset=="number"){var g=this.fromOffset(p.offset);i=g.line,r=g.col}else i=p.line,r=p.column;if(typeof u.offset=="number"){var b=this.fromOffset(u.offset);l=b.line,d=b.col}else l=u.line,d=u.column}else if(!r){var v=this.fromOffset(i);i=v.line,r=v.col}var A=this.origin(i,r,l,d);return A?s=new bb(t,A.endLine===void 0?A.line:{column:A.column,line:A.line},A.endLine===void 0?A.column:{column:A.endColumn,line:A.endLine},A.source,A.file,o.plugin):s=new bb(t,l===void 0?i:{column:r,line:i},l===void 0?r:{column:d,line:l},this.css,this.file,o.plugin),s.input={column:r,endColumn:d,endLine:l,line:i,source:this.css},this.file&&(Qs&&(s.input.url=Qs(this.file).toString()),s.input.file=this.file),s},a.fromOffset=function(t){var i,r;if(this[bu])r=this[bu];else{var o=this.css.split(`
`);r=new Array(o.length);for(var s=0,l=0,d=o.length;l<d;l++)r[l]=s,s+=o[l].length+1;this[bu]=r}i=r[r.length-1];var p=0;if(t>=i)p=r.length-1;else for(var u=r.length-2,g;p<u;)if(g=p+(u-p>>1),t<r[g])u=g-1;else if(t>=r[g+1])p=g+1;else{p=g;break}return{col:t-r[p]+1,line:p+1}},a.mapResolve=function(t){return/^\w+:\/\//.test(t)?t:am(this.map.consumer().sourceRoot||this.map.root||".",t)},a.origin=function(t,i,r,o){if(!this.map)return!1;var s=this.map.consumer(),l=s.originalPositionFor({column:i,line:t});if(!l.source)return!1;var d;typeof r=="number"&&(d=s.originalPositionFor({column:o,line:r}));var p;tm(l.source)?p=Qs(l.source):p=new URL(l.source,this.map.consumer().sourceRoot||Qs(this.map.mapFile));var u={column:l.column,endColumn:d&&d.column,endLine:d&&d.line,line:l.line,url:p.toString()};if(p.protocol==="file:")if(vb)u.file=vb(p);else throw new Error("file: protocol is not available in this PostCSS build");var g=s.sourceContentFor(l.source);return g&&(u.source=g),u},a.toJSON=function(){for(var t={},i=0,r=["hasBOM","css","file","id"];i<r.length;i++){var o=r[i];this[o]!=null&&(t[o]=this[o])}return this.map&&(t.map=Ce({},this.map),t.map.consumerCache&&(t.map.consumerCache=void 0)),t},rt(e,[{key:"from",get:function(){return this.file||this.id}}]),e})(),md=lc;lc.default=lc;vu&&vu.registerInput&&vu.registerInput(lc);var cS=kt.SourceMapConsumer,_l=kt.SourceMapGenerator,xl=kt.dirname,dS=kt.relative,uS=kt.resolve,pS=kt.sep,kb=kt.pathToFileURL,tde=md,ade=!!(cS&&_l),nde=!!(xl&&uS&&dS&&pS),ide=(function(){function e(n,t,i,r){this.stringify=n,this.mapOpts=i.map||{},this.root=t,this.opts=i,this.css=r,this.originalCSS=r,this.usesFileUrls=!this.mapOpts.from&&this.mapOpts.absolute,this.memoizedFileURLs=new Map,this.memoizedPaths=new Map,this.memoizedURLs=new Map}var a=e.prototype;return a.addAnnotation=function(){var t;this.isInline()?t="data:application/json;base64,"+this.toBase64(this.map.toString()):typeof this.mapOpts.annotation=="string"?t=this.mapOpts.annotation:typeof this.mapOpts.annotation=="function"?t=this.mapOpts.annotation(this.opts.to,this.root):t=this.outputFile()+".map";var i=`
`;this.css.includes(`\r
`)&&(i=`\r
`),this.css+=i+"/*# sourceMappingURL="+t+" */"},a.applyPrevMaps=function(){for(var t=B(this.previous()),i;!(i=t()).done;){var r=i.value,o=this.toUrl(this.path(r.file)),s=r.root||xl(r.file),l=void 0;this.mapOpts.sourcesContent===!1?(l=new cS(r.text),l.sourcesContent&&(l.sourcesContent=null)):l=r.consumer(),this.map.applySourceMap(l,o,this.toUrl(this.path(s)))}},a.clearAnnotation=function(){if(this.mapOpts.annotation!==!1)if(this.root)for(var t,i=this.root.nodes.length-1;i>=0;i--)t=this.root.nodes[i],t.type==="comment"&&t.text.indexOf("# sourceMappingURL=")===0&&this.root.removeChild(i);else this.css&&(this.css=this.css.replace(/\n*?\/\*#[\S\s]*?\*\/$/gm,""))},a.generate=function(){if(this.clearAnnotation(),nde&&ade&&this.isMap())return this.generateMap();var t="";return this.stringify(this.root,function(i){t+=i}),[t]},a.generateMap=function(){if(this.root)this.generateString();else if(this.previous().length===1){var t=this.previous()[0].consumer();t.file=this.outputFile(),this.map=_l.fromSourceMap(t,{ignoreInvalidMapping:!0})}else this.map=new _l({file:this.outputFile(),ignoreInvalidMapping:!0}),this.map.addMapping({generated:{column:0,line:1},original:{column:0,line:1},source:this.opts.from?this.toUrl(this.path(this.opts.from)):"<no source>"});return this.isSourcesContent()&&this.setSourcesContent(),this.root&&this.previous().length>0&&this.applyPrevMaps(),this.isAnnotation()&&this.addAnnotation(),this.isInline()?[this.css]:[this.css,this.map]},a.generateString=function(){var t=this;this.css="",this.map=new _l({file:this.outputFile(),ignoreInvalidMapping:!0});var i=1,r=1,o="<no source>",s={generated:{column:0,line:0},original:{column:0,line:0},source:""},l,d;this.stringify(this.root,function(p,u,g){if(t.css+=p,u&&g!=="end"&&(s.generated.line=i,s.generated.column=r-1,u.source&&u.source.start?(s.source=t.sourcePath(u),s.original.line=u.source.start.line,s.original.column=u.source.start.column-1,t.map.addMapping(s)):(s.source=o,s.original.line=1,s.original.column=0,t.map.addMapping(s))),l=p.match(/\n/g),l?(i+=l.length,d=p.lastIndexOf(`
`),r=p.length-d):r+=p.length,u&&g!=="start"){var b=u.parent||{raws:{}},v=u.type==="decl"||u.type==="atrule"&&!u.nodes;(!v||u!==b.last||b.raws.semicolon)&&(u.source&&u.source.end?(s.source=t.sourcePath(u),s.original.line=u.source.end.line,s.original.column=u.source.end.column-1,s.generated.line=i,s.generated.column=r-2,t.map.addMapping(s)):(s.source=o,s.original.line=1,s.original.column=0,s.generated.line=i,s.generated.column=r-1,t.map.addMapping(s)))}})},a.isAnnotation=function(){return this.isInline()?!0:typeof this.mapOpts.annotation<"u"?this.mapOpts.annotation:this.previous().length?this.previous().some(function(t){return t.annotation}):!0},a.isInline=function(){if(typeof this.mapOpts.inline<"u")return this.mapOpts.inline;var t=this.mapOpts.annotation;return typeof t<"u"&&t!==!0?!1:this.previous().length?this.previous().some(function(i){return i.inline}):!0},a.isMap=function(){return typeof this.opts.map<"u"?!!this.opts.map:this.previous().length>0},a.isSourcesContent=function(){return typeof this.mapOpts.sourcesContent<"u"?this.mapOpts.sourcesContent:this.previous().length?this.previous().some(function(t){return t.withContent()}):!0},a.outputFile=function(){return this.opts.to?this.path(this.opts.to):this.opts.from?this.path(this.opts.from):"to.css"},a.path=function(t){if(this.mapOpts.absolute||t.charCodeAt(0)===60||/^\w+:\/\//.test(t))return t;var i=this.memoizedPaths.get(t);if(i)return i;var r=this.opts.to?xl(this.opts.to):".";typeof this.mapOpts.annotation=="string"&&(r=xl(uS(r,this.mapOpts.annotation)));var o=dS(r,t);return this.memoizedPaths.set(t,o),o},a.previous=function(){var t=this;if(!this.previousMaps)if(this.previousMaps=[],this.root)this.root.walk(function(r){if(r.source&&r.source.input.map){var o=r.source.input.map;t.previousMaps.includes(o)||t.previousMaps.push(o)}});else{var i=new tde(this.originalCSS,this.opts);i.map&&this.previousMaps.push(i.map)}return this.previousMaps},a.setSourcesContent=function(){var t=this,i={};if(this.root)this.root.walk(function(o){if(o.source){var s=o.source.input.from;if(s&&!i[s]){i[s]=!0;var l=t.usesFileUrls?t.toFileUrl(s):t.toUrl(t.path(s));t.map.setSourceContent(l,o.source.input.css)}}});else if(this.css){var r=this.opts.from?this.toUrl(this.path(this.opts.from)):"<no source>";this.map.setSourceContent(r,this.css)}},a.sourcePath=function(t){return this.mapOpts.from?this.toUrl(this.mapOpts.from):this.usesFileUrls?this.toFileUrl(t.source.input.from):this.toUrl(this.path(t.source.input.from))},a.toBase64=function(t){return Buffer?Buffer.from(t).toString("base64"):window.btoa(unescape(encodeURIComponent(t)))},a.toFileUrl=function(t){var i=this.memoizedFileURLs.get(t);if(i)return i;if(kb){var r=kb(t).toString();return this.memoizedFileURLs.set(t,r),r}else throw new Error("`map.absolute` option is not available in this PostCSS build")},a.toUrl=function(t){var i=this.memoizedURLs.get(t);if(i)return i;pS==="\\"&&(t=t.replace(/\\/g,"/"));var r=encodeURI(t).replace(/[#?]/g,encodeURIComponent);return this.memoizedURLs.set(t,r),r},e})(),mS=ide,rde=ud,nm=(function(e){lt(a,e);function a(n){var t;return t=e.call(this,n)||this,t.type="comment",t}return a})(rde),gd=nm;nm.default=nm;var gS=di.isClean,hS=di.my,fS=pd,vS=gd,ode=ud,bS,ah,nh,yS;function kS(e){return e.map(function(a){return a.nodes&&(a.nodes=kS(a.nodes)),delete a.source,a})}function wS(e){if(e[gS]=!1,e.proxyOf.nodes)for(var a=B(e.proxyOf.nodes),n;!(n=a()).done;){var t=n.value;wS(t)}}var Rn=(function(e){lt(a,e);function a(){return e.apply(this,arguments)||this}var n=a.prototype;return n.append=function(){for(var i=arguments.length,r=new Array(i),o=0;o<i;o++)r[o]=arguments[o];for(var s=B(r),l;!(l=s()).done;)for(var d=l.value,p=this.normalize(d,this.last),u=B(p),g;!(g=u()).done;){var b=g.value;this.proxyOf.nodes.push(b)}return this.markDirty(),this},n.cleanRaws=function(i){if(e.prototype.cleanRaws.call(this,i),this.nodes)for(var r=B(this.nodes),o;!(o=r()).done;){var s=o.value;s.cleanRaws(i)}},n.each=function(i){if(this.proxyOf.nodes){for(var r=this.getIterator(),o,s;this.indexes[r]<this.proxyOf.nodes.length&&(o=this.indexes[r],s=i(this.proxyOf.nodes[o],o),s!==!1);)this.indexes[r]+=1;return delete this.indexes[r],s}},n.every=function(i){return this.nodes.every(i)},n.getIterator=function(){this.lastEach||(this.lastEach=0),this.indexes||(this.indexes={}),this.lastEach+=1;var i=this.lastEach;return this.indexes[i]=0,i},n.getProxyProcessor=function(){return{get:function(r,o){return o==="proxyOf"?r:r[o]?o==="each"||typeof o=="string"&&o.startsWith("walk")?function(){for(var s=arguments.length,l=new Array(s),d=0;d<s;d++)l[d]=arguments[d];var p;return(p=r)[o].apply(p,[].concat(l.map(function(u){return typeof u=="function"?function(g,b){return u(g.toProxy(),b)}:u})))}:o==="every"||o==="some"?function(s){return r[o](function(l){for(var d=arguments.length,p=new Array(d>1?d-1:0),u=1;u<d;u++)p[u-1]=arguments[u];return s.apply(void 0,[].concat([l.toProxy()],p))})}:o==="root"?function(){return r.root().toProxy()}:o==="nodes"?r.nodes.map(function(s){return s.toProxy()}):o==="first"||o==="last"?r[o].toProxy():r[o]:r[o]},set:function(r,o,s){return r[o]===s||(r[o]=s,(o==="name"||o==="params"||o==="selector")&&r.markDirty()),!0}}},n.index=function(i){return typeof i=="number"?i:(i.proxyOf&&(i=i.proxyOf),this.proxyOf.nodes.indexOf(i))},n.insertAfter=function(i,r){var o=this.index(i),s=this.normalize(r,this.proxyOf.nodes[o]).reverse();o=this.index(i);for(var l=B(s),d;!(d=l()).done;){var p=d.value;this.proxyOf.nodes.splice(o+1,0,p)}var u;for(var g in this.indexes)u=this.indexes[g],o<u&&(this.indexes[g]=u+s.length);return this.markDirty(),this},n.insertBefore=function(i,r){var o=this.index(i),s=o===0?"prepend":!1,l=this.normalize(r,this.proxyOf.nodes[o],s).reverse();o=this.index(i);for(var d=B(l),p;!(p=d()).done;){var u=p.value;this.proxyOf.nodes.splice(o,0,u)}var g;for(var b in this.indexes)g=this.indexes[b],o<=g&&(this.indexes[b]=g+l.length);return this.markDirty(),this},n.normalize=function(i,r){var o=this;if(typeof i=="string")i=kS(bS(i).nodes);else if(typeof i>"u")i=[];else if(Array.isArray(i)){i=i.slice(0);for(var s=B(i),l;!(l=s()).done;){var d=l.value;d.parent&&d.parent.removeChild(d,"ignore")}}else if(i.type==="root"&&this.type!=="document"){i=i.nodes.slice(0);for(var p=B(i),u;!(u=p()).done;){var g=u.value;g.parent&&g.parent.removeChild(g,"ignore")}}else if(i.type)i=[i];else if(i.prop){if(typeof i.value>"u")throw new Error("Value field is missed in node creation");typeof i.value!="string"&&(i.value=String(i.value)),i=[new fS(i)]}else if(i.selector)i=[new ah(i)];else if(i.name)i=[new nh(i)];else if(i.text)i=[new vS(i)];else throw new Error("Unknown node type in node creation");var b=i.map(function(v){return v[hS]||a.rebuild(v),v=v.proxyOf,v.parent&&v.parent.removeChild(v),v[gS]&&wS(v),typeof v.raws.before>"u"&&r&&typeof r.raws.before<"u"&&(v.raws.before=r.raws.before.replace(/\S/g,"")),v.parent=o.proxyOf,v});return b},n.prepend=function(){for(var i=arguments.length,r=new Array(i),o=0;o<i;o++)r[o]=arguments[o];r=r.reverse();for(var s=B(r),l;!(l=s()).done;){for(var d=l.value,p=this.normalize(d,this.first,"prepend").reverse(),u=B(p),g;!(g=u()).done;){var b=g.value;this.proxyOf.nodes.unshift(b)}for(var v in this.indexes)this.indexes[v]=this.indexes[v]+p.length}return this.markDirty(),this},n.push=function(i){return i.parent=this,this.proxyOf.nodes.push(i),this},n.removeAll=function(){for(var i=B(this.proxyOf.nodes),r;!(r=i()).done;){var o=r.value;o.parent=void 0}return this.proxyOf.nodes=[],this.markDirty(),this},n.removeChild=function(i){i=this.index(i),this.proxyOf.nodes[i].parent=void 0,this.proxyOf.nodes.splice(i,1);var r;for(var o in this.indexes)r=this.indexes[o],r>=i&&(this.indexes[o]=r-1);return this.markDirty(),this},n.replaceValues=function(i,r,o){return o||(o=r,r={}),this.walkDecls(function(s){r.props&&!r.props.includes(s.prop)||r.fast&&!s.value.includes(r.fast)||(s.value=s.value.replace(i,o))}),this.markDirty(),this},n.some=function(i){return this.nodes.some(i)},n.walk=function(i){return this.each(function(r,o){var s;try{s=i(r,o)}catch(l){throw r.addToError(l)}return s!==!1&&r.walk&&(s=r.walk(i)),s})},n.walkAtRules=function(i,r){return r?le(i,RegExp)?this.walk(function(o,s){if(o.type==="atrule"&&i.test(o.name))return r(o,s)}):this.walk(function(o,s){if(o.type==="atrule"&&o.name===i)return r(o,s)}):(r=i,this.walk(function(o,s){if(o.type==="atrule")return r(o,s)}))},n.walkComments=function(i){return this.walk(function(r,o){if(r.type==="comment")return i(r,o)})},n.walkDecls=function(i,r){return r?le(i,RegExp)?this.walk(function(o,s){if(o.type==="decl"&&i.test(o.prop))return r(o,s)}):this.walk(function(o,s){if(o.type==="decl"&&o.prop===i)return r(o,s)}):(r=i,this.walk(function(o,s){if(o.type==="decl")return r(o,s)}))},n.walkRules=function(i,r){return r?le(i,RegExp)?this.walk(function(o,s){if(o.type==="rule"&&i.test(o.selector))return r(o,s)}):this.walk(function(o,s){if(o.type==="rule"&&o.selector===i)return r(o,s)}):(r=i,this.walk(function(o,s){if(o.type==="rule")return r(o,s)}))},rt(a,[{key:"first",get:function(){if(this.proxyOf.nodes)return this.proxyOf.nodes[0]}},{key:"last",get:function(){if(this.proxyOf.nodes)return this.proxyOf.nodes[this.proxyOf.nodes.length-1]}}]),a})(ode);Rn.registerParse=function(e){bS=e};Rn.registerRule=function(e){ah=e};Rn.registerAtRule=function(e){nh=e};Rn.registerRoot=function(e){yS=e};var Mi=Rn;Rn.default=Rn;Rn.rebuild=function(e){e.type==="atrule"?Object.setPrototypeOf(e,nh.prototype):e.type==="rule"?Object.setPrototypeOf(e,ah.prototype):e.type==="decl"?Object.setPrototypeOf(e,fS.prototype):e.type==="comment"?Object.setPrototypeOf(e,vS.prototype):e.type==="root"&&Object.setPrototypeOf(e,yS.prototype),e[hS]=!0,e.nodes&&e.nodes.forEach(function(a){Rn.rebuild(a)})};var sde=Mi,AS,SS,No=(function(e){lt(a,e);function a(t){var i;return i=e.call(this,Ce({type:"document"},t))||this,i.nodes||(i.nodes=[]),i}var n=a.prototype;return n.toResult=function(i){i===void 0&&(i={});var r=new AS(new SS,this,i);return r.stringify()},a})(sde);No.registerLazyResult=function(e){AS=e};No.registerProcessor=function(e){SS=e};var ih=No;No.default=No;var im=(function(){function e(n,t){if(t===void 0&&(t={}),this.type="warning",this.text=n,t.node&&t.node.source){var i=t.node.rangeBy(t);this.line=i.start.line,this.column=i.start.column,this.endLine=i.end.line,this.endColumn=i.end.column}for(var r in t)this[r]=t[r]}var a=e.prototype;return a.toString=function(){return this.node?this.node.error(this.text,{index:this.index,plugin:this.plugin,word:this.word}).message:this.plugin?this.plugin+": "+this.text:this.text},e})(),CS=im;im.default=im;var lde=CS,rm=(function(){function e(n,t,i){this.processor=n,this.messages=[],this.root=t,this.opts=i,this.css=void 0,this.map=void 0}var a=e.prototype;return a.toString=function(){return this.css},a.warn=function(t,i){i===void 0&&(i={}),i.plugin||this.lastPlugin&&this.lastPlugin.postcssPlugin&&(i.plugin=this.lastPlugin.postcssPlugin);var r=new lde(t,i);return this.messages.push(r),r},a.warnings=function(){return this.messages.filter(function(t){return t.type==="warning"})},rt(e,[{key:"content",get:function(){return this.css}}]),e})(),rh=rm;rm.default=rm;var yu=39,wb=34,Xs=92,Ab=47,el=10,to=32,tl=12,al=9,nl=13,cde=91,dde=93,ude=40,pde=41,mde=123,gde=125,hde=59,fde=42,vde=58,bde=64,il=/[\t\n\f\r "#'()/;[\\\]{}]/g,rl=/[\t\n\f\r !"#'():;@[\\\]{}]|\/(?=\*)/g,yde=/.[\r\n"'(/\\]/,Sb=/[\da-f]/i,kde=function(a,n){n===void 0&&(n={});var t=a.css.valueOf(),i=n.ignoreErrors,r,o,s,l,d,p,u,g,b,v,A=t.length,f=0,S=[],C=[];function T(){return f}function E(N){throw a.error("Unclosed "+N,f)}function P(){return C.length===0&&f>=A}function I(N){if(C.length)return C.pop();if(!(f>=A)){var Z=N?N.ignoreUnclosed:!1;switch(r=t.charCodeAt(f),r){case el:case to:case al:case nl:case tl:{o=f;do o+=1,r=t.charCodeAt(o);while(r===to||r===el||r===al||r===nl||r===tl);v=["space",t.slice(f,o)],f=o-1;break}case cde:case dde:case mde:case gde:case vde:case hde:case pde:{var R=String.fromCharCode(r);v=[R,R,f];break}case ude:{if(g=S.length?S.pop()[1]:"",b=t.charCodeAt(f+1),g==="url"&&b!==yu&&b!==wb&&b!==to&&b!==el&&b!==al&&b!==tl&&b!==nl){o=f;do{if(p=!1,o=t.indexOf(")",o+1),o===-1)if(i||Z){o=f;break}else E("bracket");for(u=o;t.charCodeAt(u-1)===Xs;)u-=1,p=!p}while(p);v=["brackets",t.slice(f,o+1),f,o],f=o}else o=t.indexOf(")",f+1),l=t.slice(f,o+1),o===-1||yde.test(l)?v=["(","(",f]:(v=["brackets",l,f,o],f=o);break}case yu:case wb:{s=r===yu?"'":'"',o=f;do{if(p=!1,o=t.indexOf(s,o+1),o===-1)if(i||Z){o=f+1;break}else E("string");for(u=o;t.charCodeAt(u-1)===Xs;)u-=1,p=!p}while(p);v=["string",t.slice(f,o+1),f,o],f=o;break}case bde:{il.lastIndex=f+1,il.test(t),il.lastIndex===0?o=t.length-1:o=il.lastIndex-2,v=["at-word",t.slice(f,o+1),f,o],f=o;break}case Xs:{for(o=f,d=!0;t.charCodeAt(o+1)===Xs;)o+=1,d=!d;if(r=t.charCodeAt(o+1),d&&r!==Ab&&r!==to&&r!==el&&r!==al&&r!==nl&&r!==tl&&(o+=1,Sb.test(t.charAt(o)))){for(;Sb.test(t.charAt(o+1));)o+=1;t.charCodeAt(o+1)===to&&(o+=1)}v=["word",t.slice(f,o+1),f,o],f=o;break}default:{r===Ab&&t.charCodeAt(f+1)===fde?(o=t.indexOf("*/",f+2)+1,o===0&&(i||Z?o=t.length:E("comment")),v=["comment",t.slice(f,o+1),f,o],f=o):(rl.lastIndex=f+1,rl.test(t),rl.lastIndex===0?o=t.length-1:o=rl.lastIndex-2,v=["word",t.slice(f,o+1),f,o],S.push(v),f=o);break}}return f++,v}}function L(N){C.push(N)}return{back:L,endOfFile:P,nextToken:I,position:T}},DS=Mi,cc=(function(e){lt(a,e);function a(t){var i;return i=e.call(this,t)||this,i.type="atrule",i}var n=a.prototype;return n.append=function(){for(var i=arguments.length,r=new Array(i),o=0;o<i;o++)r[o]=arguments[o];var s;return this.proxyOf.nodes||(this.nodes=[]),(s=e.prototype.append).call.apply(s,[].concat([this],r))},n.prepend=function(){for(var i=arguments.length,r=new Array(i),o=0;o<i;o++)r[o]=arguments[o];var s;return this.proxyOf.nodes||(this.nodes=[]),(s=e.prototype.prepend).call.apply(s,[].concat([this],r))},a})(DS),oh=cc;cc.default=cc;DS.registerAtRule(cc);var TS=Mi,ES,PS,Sr=(function(e){lt(a,e);function a(t){var i;return i=e.call(this,t)||this,i.type="root",i.nodes||(i.nodes=[]),i}var n=a.prototype;return n.normalize=function(i,r,o){var s=e.prototype.normalize.call(this,i);if(r){if(o==="prepend")this.nodes.length>1?r.raws.before=this.nodes[1].raws.before:delete r.raws.before;else if(this.first!==r)for(var l=B(s),d;!(d=l()).done;){var p=d.value;p.raws.before=r.raws.before}}return s},n.removeChild=function(i,r){var o=this.index(i);return!r&&o===0&&this.nodes.length>1&&(this.nodes[1].raws.before=this.nodes[o].raws.before),e.prototype.removeChild.call(this,i)},n.toResult=function(i){i===void 0&&(i={});var r=new ES(new PS,this,i);return r.stringify()},a})(TS);Sr.registerLazyResult=function(e){ES=e};Sr.registerProcessor=function(e){PS=e};var ns=Sr;Sr.default=Sr;TS.registerRoot(Sr);var Fo={comma:function(a){return Fo.split(a,[","],!0)},space:function(a){var n=[" ",`
`," "];return Fo.split(a,n)},split:function(a,n,t){for(var i=[],r="",o=!1,s=0,l=!1,d="",p=!1,u=B(a),g;!(g=u()).done;){var b=g.value;p?p=!1:b==="\\"?p=!0:l?b===d&&(l=!1):b==='"'||b==="'"?(l=!0,d=b):b==="("?s+=1:b===")"?s>0&&(s-=1):s===0&&n.includes(b)&&(o=!0),o?(r!==""&&i.push(r.trim()),r="",o=!1):r+=b}return(t||r!=="")&&i.push(r.trim()),i}},_S=Fo;Fo.default=Fo;var xS=Mi,wde=_S,dc=(function(e){lt(a,e);function a(n){var t;return t=e.call(this,n)||this,t.type="rule",t.nodes||(t.nodes=[]),t}return rt(a,[{key:"selectors",get:function(){return wde.comma(this.selector)},set:function(t){var i=this.selector?this.selector.match(/,\s*/):null,r=i?i[0]:","+this.raw("between","beforeOpen");this.selector=t.join(r)}}]),a})(xS),sh=dc;dc.default=dc;xS.registerRule(dc);var Ade=pd,Sde=kde,Cde=gd,Dde=oh,Tde=ns,Cb=sh,Db={empty:!0,space:!0};function Ede(e){for(var a=e.length-1;a>=0;a--){var n=e[a],t=n[3]||n[2];if(t)return t}}var Pde=(function(){function e(n){this.input=n,this.root=new Tde,this.current=this.root,this.spaces="",this.semicolon=!1,this.createTokenizer(),this.root.source={input:n,start:{column:1,line:1,offset:0}}}var a=e.prototype;return a.atrule=function(t){var i=new Dde;i.name=t[1].slice(1),i.name===""&&this.unnamedAtrule(i,t),this.init(i,t[2]);for(var r,o,s,l=!1,d=!1,p=[],u=[];!this.tokenizer.endOfFile();){if(t=this.tokenizer.nextToken(),r=t[0],r==="("||r==="["?u.push(r==="("?")":"]"):r==="{"&&u.length>0?u.push("}"):r===u[u.length-1]&&u.pop(),u.length===0)if(r===";"){i.source.end=this.getPosition(t[2]),i.source.end.offset++,this.semicolon=!0;break}else if(r==="{"){d=!0;break}else if(r==="}"){if(p.length>0){for(s=p.length-1,o=p[s];o&&o[0]==="space";)o=p[--s];o&&(i.source.end=this.getPosition(o[3]||o[2]),i.source.end.offset++)}this.end(t);break}else p.push(t);else p.push(t);if(this.tokenizer.endOfFile()){l=!0;break}}i.raws.between=this.spacesAndCommentsFromEnd(p),p.length?(i.raws.afterName=this.spacesAndCommentsFromStart(p),this.raw(i,"params",p),l&&(t=p[p.length-1],i.source.end=this.getPosition(t[3]||t[2]),i.source.end.offset++,this.spaces=i.raws.between,i.raws.between="")):(i.raws.afterName="",i.params=""),d&&(i.nodes=[],this.current=i)},a.checkMissedSemicolon=function(t){var i=this.colon(t);if(i!==!1){for(var r=0,o,s=i-1;s>=0&&(o=t[s],!(o[0]!=="space"&&(r+=1,r===2)));s--);throw this.input.error("Missed semicolon",o[0]==="word"?o[3]+1:o[2])}},a.colon=function(t){for(var i=0,r,o,s,l=B(t.entries()),d;!(d=l()).done;){var p=d.value,u=p[0],g=p[1];if(r=g,o=r[0],o==="("&&(i+=1),o===")"&&(i-=1),i===0&&o===":")if(!s)this.doubleColon(r);else{if(s[0]==="word"&&s[1]==="progid")continue;return u}s=r}return!1},a.comment=function(t){var i=new Cde;this.init(i,t[2]),i.source.end=this.getPosition(t[3]||t[2]),i.source.end.offset++;var r=t[1].slice(2,-2);if(/^\s*$/.test(r))i.text="",i.raws.left=r,i.raws.right="";else{var o=r.match(/^(\s*)([^]*\S)(\s*)$/);i.text=o[2],i.raws.left=o[1],i.raws.right=o[3]}},a.createTokenizer=function(){this.tokenizer=Sde(this.input)},a.decl=function(t,i){var r=new Ade;this.init(r,t[0][2]);var o=t[t.length-1];for(o[0]===";"&&(this.semicolon=!0,t.pop()),r.source.end=this.getPosition(o[3]||o[2]||Ede(t)),r.source.end.offset++;t[0][0]!=="word";)t.length===1&&this.unknownWord(t),r.raws.before+=t.shift()[1];for(r.source.start=this.getPosition(t[0][2]),r.prop="";t.length;){var s=t[0][0];if(s===":"||s==="space"||s==="comment")break;r.prop+=t.shift()[1]}r.raws.between="";for(var l;t.length;)if(l=t.shift(),l[0]===":"){r.raws.between+=l[1];break}else l[0]==="word"&&/\w/.test(l[1])&&this.unknownWord([l]),r.raws.between+=l[1];(r.prop[0]==="_"||r.prop[0]==="*")&&(r.raws.before+=r.prop[0],r.prop=r.prop.slice(1));for(var d=[],p;t.length&&(p=t[0][0],!(p!=="space"&&p!=="comment"));)d.push(t.shift());this.precheckMissedSemicolon(t);for(var u=t.length-1;u>=0;u--){if(l=t[u],l[1].toLowerCase()==="!important"){r.important=!0;var g=this.stringFrom(t,u);g=this.spacesFromEnd(t)+g,g!==" !important"&&(r.raws.important=g);break}else if(l[1].toLowerCase()==="important"){for(var b=t.slice(0),v="",A=u;A>0;A--){var f=b[A][0];if(v.trim().indexOf("!")===0&&f!=="space")break;v=b.pop()[1]+v}v.trim().indexOf("!")===0&&(r.important=!0,r.raws.important=v,t=b)}if(l[0]!=="space"&&l[0]!=="comment")break}var S=t.some(function(C){return C[0]!=="space"&&C[0]!=="comment"});S&&(r.raws.between+=d.map(function(C){return C[1]}).join(""),d=[]),this.raw(r,"value",d.concat(t),i),r.value.includes(":")&&!i&&this.checkMissedSemicolon(t)},a.doubleColon=function(t){throw this.input.error("Double colon",{offset:t[2]},{offset:t[2]+t[1].length})},a.emptyRule=function(t){var i=new Cb;this.init(i,t[2]),i.selector="",i.raws.between="",this.current=i},a.end=function(t){this.current.nodes&&this.current.nodes.length&&(this.current.raws.semicolon=this.semicolon),this.semicolon=!1,this.current.raws.after=(this.current.raws.after||"")+this.spaces,this.spaces="",this.current.parent?(this.current.source.end=this.getPosition(t[2]),this.current.source.end.offset++,this.current=this.current.parent):this.unexpectedClose(t)},a.endFile=function(){this.current.parent&&this.unclosedBlock(),this.current.nodes&&this.current.nodes.length&&(this.current.raws.semicolon=this.semicolon),this.current.raws.after=(this.current.raws.after||"")+this.spaces,this.root.source.end=this.getPosition(this.tokenizer.position())},a.freeSemicolon=function(t){if(this.spaces+=t[1],this.current.nodes){var i=this.current.nodes[this.current.nodes.length-1];i&&i.type==="rule"&&!i.raws.ownSemicolon&&(i.raws.ownSemicolon=this.spaces,this.spaces="")}},a.getPosition=function(t){var i=this.input.fromOffset(t);return{column:i.col,line:i.line,offset:t}},a.init=function(t,i){this.current.push(t),t.source={input:this.input,start:this.getPosition(i)},t.raws.before=this.spaces,this.spaces="",t.type!=="comment"&&(this.semicolon=!1)},a.other=function(t){for(var i=!1,r=null,o=!1,s=null,l=[],d=t[1].startsWith("--"),p=[],u=t;u;){if(r=u[0],p.push(u),r==="("||r==="[")s||(s=u),l.push(r==="("?")":"]");else if(d&&o&&r==="{")s||(s=u),l.push("}");else if(l.length===0)if(r===";")if(o){this.decl(p,d);return}else break;else if(r==="{"){this.rule(p);return}else if(r==="}"){this.tokenizer.back(p.pop()),i=!0;break}else r===":"&&(o=!0);else r===l[l.length-1]&&(l.pop(),l.length===0&&(s=null));u=this.tokenizer.nextToken()}if(this.tokenizer.endOfFile()&&(i=!0),l.length>0&&this.unclosedBracket(s),i&&o){if(!d)for(;p.length&&(u=p[p.length-1][0],!(u!=="space"&&u!=="comment"));)this.tokenizer.back(p.pop());this.decl(p,d)}else this.unknownWord(p)},a.parse=function(){for(var t;!this.tokenizer.endOfFile();)switch(t=this.tokenizer.nextToken(),t[0]){case"space":this.spaces+=t[1];break;case";":this.freeSemicolon(t);break;case"}":this.end(t);break;case"comment":this.comment(t);break;case"at-word":this.atrule(t);break;case"{":this.emptyRule(t);break;default:this.other(t);break}this.endFile()},a.precheckMissedSemicolon=function(){},a.raw=function(t,i,r,o){for(var s,l,d=r.length,p="",u=!0,g,b,v=0;v<d;v+=1)s=r[v],l=s[0],l==="space"&&v===d-1&&!o?u=!1:l==="comment"?(b=r[v-1]?r[v-1][0]:"empty",g=r[v+1]?r[v+1][0]:"empty",!Db[b]&&!Db[g]?p.slice(-1)===","?u=!1:p+=s[1]:u=!1):p+=s[1];if(!u){var A=r.reduce(function(f,S){return f+S[1]},"");t.raws[i]={raw:A,value:p}}t[i]=p},a.rule=function(t){t.pop();var i=new Cb;this.init(i,t[0][2]),i.raws.between=this.spacesAndCommentsFromEnd(t),this.raw(i,"selector",t),this.current=i},a.spacesAndCommentsFromEnd=function(t){for(var i,r="";t.length&&(i=t[t.length-1][0],!(i!=="space"&&i!=="comment"));)r=t.pop()[1]+r;return r},a.spacesAndCommentsFromStart=function(t){for(var i,r="";t.length&&(i=t[0][0],!(i!=="space"&&i!=="comment"));)r+=t.shift()[1];return r},a.spacesFromEnd=function(t){for(var i,r="";t.length&&(i=t[t.length-1][0],i==="space");)r=t.pop()[1]+r;return r},a.stringFrom=function(t,i){for(var r="",o=i;o<t.length;o++)r+=t[o][1];return t.splice(i,t.length-i),r},a.unclosedBlock=function(){var t=this.current.source.start;throw this.input.error("Unclosed block",t.line,t.column)},a.unclosedBracket=function(t){throw this.input.error("Unclosed bracket",{offset:t[2]},{offset:t[2]+1})},a.unexpectedClose=function(t){throw this.input.error("Unexpected }",{offset:t[2]},{offset:t[2]+1})},a.unknownWord=function(t){throw this.input.error("Unknown word",{offset:t[0][2]},{offset:t[0][2]+t[0][1].length})},a.unnamedAtrule=function(t,i){throw this.input.error("At-rule without name",{offset:i[2]},{offset:i[2]+i[1].length})},e})(),_de=Pde,xde=Mi,Ide=_de,Rde=md;function uc(e,a){var n=new Rde(e,a),t=new Ide(n);try{t.parse()}catch(i){throw i}return t.root}var lh=uc;uc.default=uc;xde.registerParse(uc);var Ba=di.isClean,zde=di.my,Mde=mS,Nde=dd,Fde=Mi,Lde=ih,Tb=rh,jde=lh,Ode=ns,Bde={atrule:"AtRule",comment:"Comment",decl:"Declaration",document:"Document",root:"Root",rule:"Rule"},Ude={AtRule:!0,AtRuleExit:!0,Comment:!0,CommentExit:!0,Declaration:!0,DeclarationExit:!0,Document:!0,DocumentExit:!0,Once:!0,OnceExit:!0,postcssPlugin:!0,prepare:!0,Root:!0,RootExit:!0,Rule:!0,RuleExit:!0},qde={Once:!0,postcssPlugin:!0,prepare:!0},Cr=0;function ao(e){return(typeof e>"u"?"undefined":ce(e))==="object"&&typeof e.then=="function"}function IS(e){var a=!1,n=Bde[e.type];return e.type==="decl"?a=e.prop.toLowerCase():e.type==="atrule"&&(a=e.name.toLowerCase()),a&&e.append?[n,n+"-"+a,Cr,n+"Exit",n+"Exit-"+a]:a?[n,n+"-"+a,n+"Exit",n+"Exit-"+a]:e.append?[n,Cr,n+"Exit"]:[n,n+"Exit"]}function Eb(e){var a;return e.type==="document"?a=["Document",Cr,"DocumentExit"]:e.type==="root"?a=["Root",Cr,"RootExit"]:a=IS(e),{eventIndex:0,events:a,iterator:0,node:e,visitorIndex:0,visitors:[]}}function om(e){return e[Ba]=!1,e.nodes&&e.nodes.forEach(function(a){return om(a)}),e}var sm={},Dr=(function(){function e(n,t,i){var r=this;this.stringified=!1,this.processed=!1;var o;if((typeof t>"u"?"undefined":ce(t))==="object"&&t!==null&&(t.type==="root"||t.type==="document"))o=om(t);else if(le(t,e)||le(t,Tb))o=om(t.root),t.map&&(typeof i.map>"u"&&(i.map={}),i.map.inline||(i.map.inline=!1),i.map.prev=t.map);else{var s=jde;i.syntax&&(s=i.syntax.parse),i.parser&&(s=i.parser),s.parse&&(s=s.parse);try{o=s(t,i)}catch(l){this.processed=!0,this.error=l}o&&!o[zde]&&Fde.rebuild(o)}this.result=new Tb(n,o,i),this.helpers=Ce({},sm,{postcss:sm,result:this.result}),this.plugins=this.processor.plugins.map(function(l){return(typeof l>"u"?"undefined":ce(l))==="object"&&l.prepare?Ce({},l,l.prepare(r.result)):l})}var a=e.prototype;return a.async=function(){return this.error?Promise.reject(this.error):this.processed?Promise.resolve(this.result):(this.processing||(this.processing=this.runAsync()),this.processing)},a.catch=function(t){return this.async().catch(t)},a.finally=function(t){return this.async().then(t,t)},a.getAsyncError=function(){throw new Error("Use process(css).then(cb) to work with async plugins")},a.handleError=function(t,i){var r=this.result.lastPlugin;try{if(i&&i.addToError(t),this.error=t,t.name==="CssSyntaxError"&&!t.plugin)t.plugin=r.postcssPlugin,t.setMessage();else if(r.postcssVersion)var o,s,l,d,p}catch{}return t},a.prepareVisitors=function(){var t=this;this.listeners={};for(var i=function(p,u,g){t.listeners[u]||(t.listeners[u]=[]),t.listeners[u].push([p,g])},r=B(this.plugins),o;!(o=r()).done;){var s=o.value;if((typeof s>"u"?"undefined":ce(s))==="object")for(var l in s){if(!Ude[l]&&/^[A-Z]/.test(l))throw new Error("Unknown event "+l+" in "+s.postcssPlugin+". Try to update PostCSS ("+this.processor.version+" now).");if(!qde[l])if(ce(s[l])==="object")for(var d in s[l])d==="*"?i(s,l,s[l][d]):i(s,l+"-"+d.toLowerCase(),s[l][d]);else typeof s[l]=="function"&&i(s,l,s[l])}}this.hasListener=Object.keys(this.listeners).length>0},a.runAsync=function(){var t=this;return Qc(function(){var i,r,o,s,l,d,p,u,g,b,v,A;return Di(this,function(f){switch(f.label){case 0:t.plugin=0,i=0,f.label=1;case 1:if(!(i<t.plugins.length))return[3,6];if(r=t.plugins[i],o=t.runOnRoot(r),!ao(o))return[3,5];f.label=2;case 2:return f.trys.push([2,4,,5]),[4,o];case 3:return f.sent(),[3,5];case 4:throw s=f.sent(),t.handleError(s);case 5:return i++,[3,1];case 6:if(t.prepareVisitors(),!t.hasListener)return[3,18];l=t.result.root,f.label=7;case 7:if(l[Ba])return[3,14];l[Ba]=!0,d=[Eb(l)],f.label=8;case 8:if(!(d.length>0))return[3,13];if(p=t.visitTick(d),!ao(p))return[3,12];f.label=9;case 9:return f.trys.push([9,11,,12]),[4,p];case 10:return f.sent(),[3,12];case 11:throw u=f.sent(),g=d[d.length-1].node,t.handleError(u,g);case 12:return[3,8];case 13:return[3,7];case 14:if(!t.listeners.OnceExit)return[3,18];b=function(){var S,C,T,E,P;return Di(this,function(I){switch(I.label){case 0:S=A.value,C=S[0],T=S[1],t.result.lastPlugin=C,I.label=1;case 1:return I.trys.push([1,6,,7]),l.type!=="document"?[3,3]:(E=l.nodes.map(function(L){return T(L,t.helpers)}),[4,Promise.all(E)]);case 2:return I.sent(),[3,5];case 3:return[4,T(l,t.helpers)];case 4:I.sent(),I.label=5;case 5:return[3,7];case 6:throw P=I.sent(),t.handleError(P);case 7:return[2]}})},v=B(t.listeners.OnceExit),f.label=15;case 15:return(A=v()).done?[3,18]:[5,_g(b())];case 16:f.sent(),f.label=17;case 17:return[3,15];case 18:return t.processed=!0,[2,t.stringify()]}})})()},a.runOnRoot=function(t){var i=this;this.result.lastPlugin=t;try{if((typeof t>"u"?"undefined":ce(t))==="object"&&t.Once){if(this.result.root.type==="document"){var r=this.result.root.nodes.map(function(o){return t.Once(o,i.helpers)});return ao(r[0])?Promise.all(r):r}return t.Once(this.result.root,this.helpers)}else if(typeof t=="function")return t(this.result.root,this.result)}catch(o){throw this.handleError(o)}},a.stringify=function(){if(this.error)throw this.error;if(this.stringified)return this.result;this.stringified=!0,this.sync();var t=this.result.opts,i=Nde;t.syntax&&(i=t.syntax.stringify),t.stringifier&&(i=t.stringifier),i.stringify&&(i=i.stringify);var r=new Mde(i,this.result.root,this.result.opts),o=r.generate();return this.result.css=o[0],this.result.map=o[1],this.result},a.sync=function(){if(this.error)throw this.error;if(this.processed)return this.result;if(this.processed=!0,this.processing)throw this.getAsyncError();for(var t=B(this.plugins),i;!(i=t()).done;){var r=i.value,o=this.runOnRoot(r);if(ao(o))throw this.getAsyncError()}if(this.prepareVisitors(),this.hasListener){for(var s=this.result.root;!s[Ba];)s[Ba]=!0,this.walkSync(s);if(this.listeners.OnceExit)if(s.type==="document")for(var l=B(s.nodes),d;!(d=l()).done;){var p=d.value;this.visitSync(this.listeners.OnceExit,p)}else this.visitSync(this.listeners.OnceExit,s)}return this.result},a.then=function(t,i){return this.async().then(t,i)},a.toString=function(){return this.css},a.visitSync=function(t,i){for(var r=B(t),o;!(o=r()).done;){var s=o.value,l=s[0],d=s[1];this.result.lastPlugin=l;var p=void 0;try{p=d(i,this.helpers)}catch(u){throw this.handleError(u,i.proxyOf)}if(i.type!=="root"&&i.type!=="document"&&!i.parent)return!0;if(ao(p))throw this.getAsyncError()}},a.visitTick=function(t){var i=t[t.length-1],r=i.node,o=i.visitors;if(r.type!=="root"&&r.type!=="document"&&!r.parent){t.pop();return}if(o.length>0&&i.visitorIndex<o.length){var s=o[i.visitorIndex],l=s[0],d=s[1];i.visitorIndex+=1,i.visitorIndex===o.length&&(i.visitors=[],i.visitorIndex=0),this.result.lastPlugin=l;try{return d(r.toProxy(),this.helpers)}catch(v){throw this.handleError(v,r)}}if(i.iterator!==0){for(var p=i.iterator,u;u=r.nodes[r.indexes[p]];)if(r.indexes[p]+=1,!u[Ba]){u[Ba]=!0,t.push(Eb(u));return}i.iterator=0,delete r.indexes[p]}for(var g=i.events;i.eventIndex<g.length;){var b=g[i.eventIndex];if(i.eventIndex+=1,b===Cr){r.nodes&&r.nodes.length&&(r[Ba]=!0,i.iterator=r.getIterator());return}else if(this.listeners[b]){i.visitors=this.listeners[b];return}}t.pop()},a.walkSync=function(t){var i=this;t[Ba]=!0;for(var r=IS(t),o=B(r),s;!(s=o()).done;){var l=s.value;if(l===Cr)t.nodes&&t.each(function(p){p[Ba]||i.walkSync(p)});else{var d=this.listeners[l];if(d&&this.visitSync(d,t.toProxy()))return}}},a.warnings=function(){return this.sync().warnings()},rt(e,[{key:"content",get:function(){return this.stringify().content}},{key:"css",get:function(){return this.stringify().css}},{key:"map",get:function(){return this.stringify().map}},{key:"messages",get:function(){return this.sync().messages}},{key:"opts",get:function(){return this.result.opts}},{key:"processor",get:function(){return this.result.processor}},{key:"root",get:function(){return this.sync().root}},{key:Symbol.toStringTag,get:function(){return"LazyResult"}}]),e})();Dr.registerPostcss=function(e){sm=e};var RS=Dr;Dr.default=Dr;Ode.registerLazyResult(Dr);Lde.registerLazyResult(Dr);var Vde=mS,$de=dd,Wde=lh,Gde=rh,lm=(function(){function e(n,t,i){t=t.toString(),this.stringified=!1,this._processor=n,this._css=t,this._opts=i,this._map=void 0;var r,o=$de;this.result=new Gde(this._processor,r,this._opts),this.result.css=t;var s=this;Object.defineProperty(this.result,"root",{get:function(){return s.root}});var l=new Vde(o,r,this._opts,t);if(l.isMap()){var d=l.generate(),p=d[0],u=d[1];p&&(this.result.css=p),u&&(this.result.map=u)}else l.clearAnnotation(),this.result.css=l.css}var a=e.prototype;return a.async=function(){return this.error?Promise.reject(this.error):Promise.resolve(this.result)},a.catch=function(t){return this.async().catch(t)},a.finally=function(t){return this.async().then(t,t)},a.sync=function(){if(this.error)throw this.error;return this.result},a.then=function(t,i){return this.async().then(t,i)},a.toString=function(){return this._css},a.warnings=function(){return[]},rt(e,[{key:"content",get:function(){return this.result.css}},{key:"css",get:function(){return this.result.css}},{key:"map",get:function(){return this.result.map}},{key:"messages",get:function(){return[]}},{key:"opts",get:function(){return this.result.opts}},{key:"processor",get:function(){return this.result.processor}},{key:"root",get:function(){if(this._root)return this._root;var t,i=Wde;try{t=i(this._css,this._opts)}catch(r){this.error=r}if(this.error)throw this.error;return this._root=t,t}},{key:Symbol.toStringTag,get:function(){return"NoWorkResult"}}]),e})(),Hde=lm;lm.default=lm;var Yde=Hde,Kde=RS,Zde=ih,Jde=ns,Lo=(function(){function e(n){n===void 0&&(n=[]),this.version="8.4.38",this.plugins=this.normalize(n)}var a=e.prototype;return a.normalize=function(t){for(var i=[],r=B(t),o;!(o=r()).done;){var s=o.value;if(s.postcss===!0?s=s():s.postcss&&(s=s.postcss),(typeof s>"u"?"undefined":ce(s))==="object"&&Array.isArray(s.plugins))i=i.concat(s.plugins);else if((typeof s>"u"?"undefined":ce(s))==="object"&&s.postcssPlugin)i.push(s);else if(typeof s=="function")i.push(s);else if(!((typeof s>"u"?"undefined":ce(s))==="object"&&(s.parse||s.stringify)))throw new Error(s+" is not a PostCSS plugin")}return i},a.process=function(t,i){return i===void 0&&(i={}),!this.plugins.length&&!i.parser&&!i.stringifier&&!i.syntax?new Yde(this,t,i):new Kde(this,t,i)},a.use=function(t){return this.plugins=this.plugins.concat(this.normalize([t])),this},e})(),Qde=Lo;Lo.default=Lo;Jde.registerProcessor(Lo);Zde.registerProcessor(Lo);var Xde=pd,eue=lS,tue=gd,aue=oh,nue=md,iue=ns,rue=sh;function jo(e,a){if(Array.isArray(e))return e.map(function(u){return jo(u)});var n=e.inputs,t=Ci(e,["inputs"]);if(n){a=[];for(var i=B(n),r;!(r=i()).done;){var o=r.value,s=Ce({},o,{__proto__:nue.prototype});s.map&&(s.map=Ce({},s.map,{__proto__:eue.prototype})),a.push(s)}}if(t.nodes&&(t.nodes=e.nodes.map(function(u){return jo(u,a)})),t.source){var l=t.source,d=l.inputId,p=Ci(l,["inputId"]);t.source=p,d!=null&&(t.source.input=a[d])}if(t.type==="root")return new iue(t);if(t.type==="decl")return new Xde(t);if(t.type==="rule")return new rue(t);if(t.type==="comment")return new tue(t);if(t.type==="atrule")return new aue(t);throw new Error("Unknown node type: "+e.type)}var oue=jo;jo.default=jo;var sue=th,zS=pd,lue=RS,cue=Mi,ch=Qde,due=dd,uue=oue,MS=ih,pue=CS,NS=gd,FS=oh,mue=rh,gue=md,hue=lh,fue=_S,LS=sh,jS=ns,vue=ud;function Ge(){for(var e=arguments.length,a=new Array(e),n=0;n<e;n++)a[n]=arguments[n];return a.length===1&&Array.isArray(a[0])&&(a=a[0]),new ch(a)}Ge.plugin=function(a,n){var t=!1;function i(){for(var o=arguments.length,s=new Array(o),l=0;l<o;l++)s[l]=arguments[l];console&&console.warn&&!t&&(t=!0,hr.LANG&&hr.LANG.startsWith("cn"));var d=n.apply(void 0,[].concat(s));return d.postcssPlugin=a,d.postcssVersion=new ch().version,d}var r;return Object.defineProperty(i,"postcss",{get:function(){return r||(r=i()),r}}),i.process=function(o,s,l){return Ge([i(l)]).process(o,s)},i};Ge.stringify=due;Ge.parse=hue;Ge.fromJSON=uue;Ge.list=fue;Ge.comment=function(e){return new NS(e)};Ge.atRule=function(e){return new FS(e)};Ge.decl=function(e){return new zS(e)};Ge.rule=function(e){return new LS(e)};Ge.root=function(e){return new jS(e)};Ge.document=function(e){return new MS(e)};Ge.CssSyntaxError=sue;Ge.Declaration=zS;Ge.Container=cue;Ge.Processor=ch;Ge.Document=MS;Ge.Comment=NS;Ge.Warning=pue;Ge.AtRule=FS;Ge.Result=mue;Ge.Input=gue;Ge.Rule=LS;Ge.Root=jS;Ge.Node=vue;lue.registerPostcss(Ge);var bue=Ge;Ge.default=Ge;var ut=Ice(bue);ut.stringify;ut.fromJSON;ut.plugin;ut.parse;ut.list;ut.document;ut.comment;ut.atRule;ut.rule;ut.decl;ut.root;ut.CssSyntaxError;ut.Declaration;ut.Container;ut.Processor;ut.Document;ut.Comment;ut.Warning;ut.AtRule;ut.Result;ut.Input;ut.Rule;ut.Root;ut.Node;var yue=Object.defineProperty,kue=function(e,a,n){return a in e?yue(e,a,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[a]=n},ol=function(e,a,n){return kue(e,(typeof a>"u"?"undefined":ce(a))!=="symbol"?a+"":a,n)};function wue(e,a,n){try{if(!(a in e))return function(){};var t=e[a],i=n(t);return typeof i=="function"&&(i.prototype=i.prototype||{},Object.defineProperties(i,{__rrweb_original__:{enumerable:!1,value:t}})),e[a]=i,function(){e[a]=t}}catch{return function(){}}}var Ki=(function(){function e(n){ol(this,"fileName"),ol(this,"functionName"),ol(this,"lineNumber"),ol(this,"columnNumber"),this.fileName=n.fileName||"",this.functionName=n.functionName||"",this.lineNumber=n.lineNumber,this.columnNumber=n.columnNumber}var a=e.prototype;return a.toString=function(){var t=this.lineNumber||"",i=this.columnNumber||"";return this.functionName?this.functionName+" ("+this.fileName+":"+t+":"+i+")":this.fileName+":"+t+":"+i},e})(),Aue=/(^|@)\S+:\d+/,Pb=/^\s*at .*(\S+:\d+|\(native\))/m,Sue=/^(eval@)?(\[native code])?$/,ku={parse:function(a){return a?typeof a.stacktrace<"u"||typeof a["opera#sourceloc"]<"u"?this.parseOpera(a):a.stack&&a.stack.match(Pb)?this.parseV8OrIE(a):a.stack?this.parseFFOrSafari(a):[]:[]},extractLocation:function(a){if(a.indexOf(":")===-1)return[a];var n=/(.+?)(?::(\d+))?(?::(\d+))?$/,t=n.exec(a.replace(/[()]/g,""));if(!t)throw new Error("Cannot parse given url: "+a);return[t[1],t[2]||void 0,t[3]||void 0]},parseV8OrIE:function(a){var n=a.stack.split(`
`).filter(function(t){return!!t.match(Pb)},this);return n.map(function(t){t.indexOf("(eval ")>-1&&(t=t.replace(/eval code/g,"eval").replace(/(\(eval at [^()]*)|(\),.*$)/g,""));var i=t.replace(/^\s+/,"").replace(/\(eval code/g,"("),r=i.match(/ (\((.+):(\d+):(\d+)\)$)/);i=r?i.replace(r[0],""):i;var o=i.split(/\s+/).slice(1),s=this.extractLocation(r?r[1]:o.pop()),l=o.join(" ")||void 0,d=["eval","<anonymous>"].indexOf(s[0])>-1?void 0:s[0];return new Ki({functionName:l,fileName:d,lineNumber:s[1],columnNumber:s[2]})},this)},parseFFOrSafari:function(a){var n=a.stack.split(`
`).filter(function(t){return!t.match(Sue)},this);return n.map(function(t){if(t.indexOf(" > eval")>-1&&(t=t.replace(/ line (\d+)(?: > eval line \d+)* > eval:\d+:\d+/g,":$1")),t.indexOf("@")===-1&&t.indexOf(":")===-1)return new Ki({functionName:t});var i=/((.*".+"[^@]*)?[^@]*)(?:@)/,r=t.match(i),o=r&&r[1]?r[1]:void 0,s=this.extractLocation(t.replace(i,""));return new Ki({functionName:o,fileName:s[0],lineNumber:s[1],columnNumber:s[2]})},this)},parseOpera:function(a){return!a.stacktrace||a.message.indexOf(`
`)>-1&&a.message.split(`
`).length>a.stacktrace.split(`
`).length?this.parseOpera9(a):a.stack?this.parseOpera11(a):this.parseOpera10(a)},parseOpera9:function(a){for(var n=/Line (\d+).*script (?:in )?(\S+)/i,t=a.message.split(`
`),i=[],r=2,o=t.length;r<o;r+=2){var s=n.exec(t[r]);s&&i.push(new Ki({fileName:s[2],lineNumber:parseFloat(s[1])}))}return i},parseOpera10:function(a){for(var n=/Line (\d+).*script (?:in )?(\S+)(?:: In function (\S+))?$/i,t=a.stacktrace.split(`
`),i=[],r=0,o=t.length;r<o;r+=2){var s=n.exec(t[r]);s&&i.push(new Ki({functionName:s[3]||void 0,fileName:s[2],lineNumber:parseFloat(s[1])}))}return i},parseOpera11:function(a){var n=a.stack.split(`
`).filter(function(t){return!!t.match(Aue)&&!t.match(/^Error created at/)},this);return n.map(function(t){var i=t.split("@"),r=this.extractLocation(i.pop()),o=i.shift()||"",s=o.replace(/<anonymous function(: (\w+))?>/,"$2").replace(/\([^)]*\)/g,"")||void 0;return new Ki({functionName:s,fileName:r[0],lineNumber:r[1],columnNumber:r[2]})},this)}};function Cue(e){if(!e||!e.outerHTML)return"";for(var a="";e.parentElement;){var n=e.localName;if(!n)break;n=n.toLowerCase();var t=e.parentElement,i=[];if(t.children&&t.children.length>0)for(var r=0;r<t.children.length;r++){var o=t.children[r];o.localName&&o.localName.toLowerCase&&o.localName.toLowerCase()===n&&i.push(o)}i.length>1&&(n+=":eq("+i.indexOf(e)+")"),a=n+(a?">"+a:""),e=t}return a}function cm(e){return Object.prototype.toString.call(e)==="[object Object]"}function OS(e,a){if(a===0)return!0;for(var n=Object.keys(e),t=B(n),i;!(i=t()).done;){var r=i.value;if(cm(e[r])&&OS(e[r],a-1))return!0}return!1}function Zi(e,a){var n={numOfKeysLimit:50,depthOfLimit:4};Object.assign(n,a);var t=[],i=[];return JSON.stringify(e,function(s,l){if(t.length>0){var d=t.indexOf(this);~d?t.splice(d+1):t.push(this),~d?i.splice(d,1/0,s):i.push(s),~t.indexOf(l)&&(t[0]===l?l="[Circular ~]":l="[Circular ~."+i.slice(0,t.indexOf(l)).join(".")+"]")}else t.push(l);if(l===null)return l;if(l===void 0)return"undefined";if(r(l))return o(l);if((typeof l>"u"?"undefined":ce(l))==="bigint")return l.toString()+"n";if(le(l,Event)){var p={};for(var u in l){var g=l[u];Array.isArray(g)?p[u]=Cue(g.length?g[0]:null):p[u]=g}return p}else{if(le(l,Node))return le(l,HTMLElement)?l?l.outerHTML:"":l.nodeName;if(le(l,Error))return l.stack?l.stack+`
End of stack for Error object`:l.name+": "+l.message}return l});function r(s){return!!(cm(s)&&Object.keys(s).length>n.numOfKeysLimit||typeof s=="function"||cm(s)&&OS(s,n.depthOfLimit))}function o(s){var l=s.toString();return n.stringLengthLimit&&l.length>n.stringLengthLimit&&(l=""+l.slice(0,n.stringLengthLimit)+"..."),l}}var _b={level:["assert","clear","count","countReset","debug","dir","dirxml","error","group","groupCollapsed","groupEnd","info","log","table","time","timeEnd","timeLog","trace","warn"],lengthThreshold:1e3,logger:"console"};function Due(e,a,n){var t=n?Object.assign({},_b,n):_b,i=t.logger;if(!i)return function(){};var r;typeof i=="string"?r=a[i]:r=i;var o=0,s=!1,l=[];if(t.level.includes("error")){var d=function(A){var f=A.message,S=A.error,C=ku.parse(S).map(function(E){return E.toString()}),T=[Zi(f,t.stringifyOptions)];e({level:"error",trace:C,payload:T})};a.addEventListener("error",d),l.push(function(){a.removeEventListener("error",d)});var p=function(A){var f,S;le(A.reason,Error)?(f=A.reason,S=[Zi("Uncaught (in promise) "+f.name+": "+f.message,t.stringifyOptions)]):(f=new Error,S=[Zi("Uncaught (in promise)",t.stringifyOptions),Zi(A.reason,t.stringifyOptions)]);var C=ku.parse(f).map(function(T){return T.toString()});e({level:"error",trace:C,payload:S})};a.addEventListener("unhandledrejection",p),l.push(function(){a.removeEventListener("unhandledrejection",p)})}for(var u=B(t.level),g;!(g=u()).done;){var b=g.value;l.push(v(r,b))}return function(){l.forEach(function(A){return A()})};function v(A,f){var S=this;return A[f]?wue(A,f,function(C){var T=S;return function(){for(var E=arguments.length,P=new Array(E),I=0;I<E;I++)P[I]=arguments[I];if(C.apply(T,P),!(f==="assert"&&P[0])&&!s){s=!0;try{var L=ku.parse(new Error).map(function(R){return R.toString()}).splice(1),N=f==="assert"?P.slice(1):P,Z=N.map(function(R){return Zi(R,t.stringifyOptions)});o++,o<t.lengthThreshold?e({level:f,trace:L,payload:Z}):o===t.lengthThreshold&&e({level:"warn",trace:[],payload:[Zi("The number of log records reached the threshold.")]})}catch(R){C.apply(void 0,[].concat(["rrweb logger error:",R],P))}finally{s=!1}}}}):function(){}}}var Tue="rrweb/console@1",Eue=function(e){return{name:Tue,observer:Due,options:e}},xb=z.setImmediate,Xn,dm,um,BS=Object.prototype.toString,Pue=typeof xb<"u"?function(a){return xb(a)}:setTimeout;try{Object.defineProperty({},"x",{}),Xn=function(a,n,t,i){return Object.defineProperty(a,n,{value:t,writable:!0,configurable:i!==!1})}}catch{Xn=function(n,t,i){return n[t]=i,n}}um=(function(){var a,n,t;function i(r,o){this.fn=r,this.self=o,this.next=void 0}return{add:function(o,s){t=new i(o,s),n?n.next=t:a=t,n=t,t=void 0},drain:function(){var o=a;for(a=n=dm=void 0;o;)o.fn.call(o.self),o=o.next}}})();function pc(e,a){um.add(e,a),dm||(dm=Pue(um.drain))}function US(e){var a,n=typeof e;return e!==null&&(n==="object"||n==="function")&&(a=e.then),typeof a=="function"?a:!1}function dh(){for(var e=0;e<this.chain.length;e++)_ue(this,this.state===1?this.chain[e].success:this.chain[e].failure,this.chain[e]);this.chain.length=0}function _ue(e,a,n){var t,i;try{a===!1?n.reject(e.msg):(a===!0?t=e.msg:t=a.call(void 0,e.msg),t===n.promise?n.reject(TypeError("Promise-chain cycle")):(i=US(t))?i.call(t,n.resolve,n.reject):n.resolve(t))}catch(r){n.reject(r)}}function qS(e){var a,n=this;if(!n.triggered){n.triggered=!0,n.def&&(n=n.def);try{(a=US(e))?pc(function(){var t=new Ib(n);try{a.call(e,function(){qS.apply(t,arguments)},function(){po.apply(t,arguments)})}catch(i){po.call(t,i)}}):(n.msg=e,n.state=1,n.chain.length>0&&pc(dh,n))}catch(t){po.call(new Ib(n),t)}}}function po(e){var a=this;a.triggered||(a.triggered=!0,a.def&&(a=a.def),a.msg=e,a.state=2,a.chain.length>0&&pc(dh,a))}function VS(e,a,n,t){for(var i=0;i<a.length;i++)(function(o){e.resolve(a[o]).then(function(l){n(o,l)},t)})(i)}function Ib(e){this.def=e,this.triggered=!1}function xue(e){this.promise=e,this.state=0,this.triggered=!1,this.chain=[],this.msg=void 0}function ui(e){if(typeof e!="function")throw TypeError("Not a function");if(this.__NPO__!==0)throw TypeError("Not a promise");this.__NPO__=1;var a=new xue(this);this.then=function(t,i){var r={success:typeof t=="function"?t:!0,failure:typeof i=="function"?i:!1};return r.promise=new this.constructor(function(s,l){if(typeof s!="function"||typeof l!="function")throw TypeError("Not a function");r.resolve=s,r.reject=l}),a.chain.push(r),a.state!==0&&pc(dh,a),r.promise},this.catch=function(t){return this.then(void 0,t)};try{e.call(void 0,function(t){qS.call(a,t)},function(t){po.call(a,t)})}catch(n){po.call(a,n)}}var $S=Xn({},"constructor",ui,!1);ui.prototype=$S;Xn($S,"__NPO__",0,!1);Xn(ui,"resolve",function(a){var n=this;return a&&typeof a=="object"&&a.__NPO__===1?a:new n(function(i,r){if(typeof i!="function"||typeof r!="function")throw TypeError("Not a function");i(a)})});Xn(ui,"reject",function(a){return new this(function(t,i){if(typeof t!="function"||typeof i!="function")throw TypeError("Not a function");i(a)})});Xn(ui,"all",function(a){var n=this;return BS.call(a)!=="[object Array]"?n.reject(TypeError("Not an array")):a.length===0?n.resolve([]):new n(function(i,r){if(typeof i!="function"||typeof r!="function")throw TypeError("Not a function");var o=a.length,s=Array(o),l=0;VS(n,a,function(p,u){s[p]=u,++l===o&&i(s)},r)})});Xn(ui,"race",function(a){var n=this;return BS.call(a)!=="[object Array]"?n.reject(TypeError("Not an array")):new n(function(i,r){if(typeof i!="function"||typeof r!="function")throw TypeError("Not a function");VS(n,a,function(s,l){i(l)},r)})});var we;typeof Promise<"u"&&Promise.toString().indexOf("[native code]")!==-1?we=Promise:we=ui;var mo=1440*60*1e3,wu=8*1e3,hd=Array.prototype,Iue=Function.prototype,WS=Object.prototype,Yn=hd.slice,is=WS.toString,fd=WS.hasOwnProperty,St=z.console,Cn=z.navigator,be=z.document,io=z.opera,Rb=z.screen,Ua=Cn.userAgent,Au=Iue.bind,zb=hd.forEach,Mb=hd.indexOf,Nb=hd.map,Rue=Array.isArray,pm={},k={trim:function(e){return e.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"")}},ye={log:function(){if(ea.DEBUG&&!k.isUndefined(St)&&St)try{St.log.apply(St,arguments)}catch{k.each(arguments,function(a){St.log(a)})}},warn:function(){if(ea.DEBUG&&!k.isUndefined(St)&&St){var e=["Mixpanel warning:"].concat(k.toArray(arguments));try{St.warn.apply(St,e)}catch{k.each(e,function(n){St.warn(n)})}}},error:function(){if(ea.DEBUG&&!k.isUndefined(St)&&St){var e=["Mixpanel error:"].concat(k.toArray(arguments));try{St.error.apply(St,e)}catch{k.each(e,function(n){St.error(n)})}}},critical:function(){if(!k.isUndefined(St)&&St){var e=["Mixpanel error:"].concat(k.toArray(arguments));try{St.error.apply(St,e)}catch{k.each(e,function(n){St.error(n)})}}}},Su=function(e,a){return function(){return arguments[0]="["+a+"] "+arguments[0],e.apply(ye,arguments)}},pi=function(e){return{log:Su(ye.log,e),error:Su(ye.error,e),critical:Su(ye.critical,e)}},Tr=function(e){return function(){try{return e.apply(this,arguments)}catch(a){ye.critical("Implementation error. Please turn on debug and contact support@mixpanel.com."),ea.DEBUG&&ye.critical(a)}}},uh=function(e){var a=e.prototype;for(var n in a)typeof a[n]=="function"&&(a[n]=Tr(a[n]))};k.bind=function(e,a){var n,t;if(Au&&e.bind===Au)return Au.apply(e,Yn.call(arguments,1));if(!k.isFunction(e))throw new TypeError;return n=Yn.call(arguments,2),t=function(){if(!(this instanceof t))return e.apply(a,n.concat(Yn.call(arguments)));var i={};i.prototype=e.prototype;var r=new i;i.prototype=null;var o=e.apply(r,n.concat(Yn.call(arguments)));return Object(o)===o?o:r},t};k.each=function(e,a,n){if(e!=null){if(zb&&e.forEach===zb)e.forEach(a,n);else if(e.length===+e.length){for(var t=0,i=e.length;t<i;t++)if(t in e&&a.call(n,e[t],t,e)===pm)return}else for(var r in e)if(fd.call(e,r)&&a.call(n,e[r],r,e)===pm)return}};k.extend=function(e){return k.each(Yn.call(arguments,1),function(a){for(var n in a)a[n]!==void 0&&(e[n]=a[n])}),e};k.isArray=Rue||function(e){return is.call(e)==="[object Array]"};k.isFunction=function(e){return typeof e=="function"};k.isArguments=function(e){return!!(e&&fd.call(e,"callee"))};k.toArray=function(e){return e?e.toArray?e.toArray():k.isArray(e)||k.isArguments(e)?Yn.call(e):k.values(e):[]};k.map=function(e,a,n){if(Nb&&e.map===Nb)return e.map(a,n);var t=[];return k.each(e,function(i){t.push(a.call(n,i))}),t};k.keys=function(e){var a=[];return e===null||k.each(e,function(n,t){a[a.length]=t}),a};k.values=function(e){var a=[];return e===null||k.each(e,function(n){a[a.length]=n}),a};k.include=function(e,a){var n=!1;return e===null?n:Mb&&e.indexOf===Mb?e.indexOf(a)!=-1:(k.each(e,function(t){if(n||(n=t===a))return pm}),n)};k.includes=function(e,a){return e.indexOf(a)!==-1};k.inherit=function(e,a){return e.prototype=new a,e.prototype.constructor=e,e.superclass=a.prototype,e};k.isObject=function(e){return e===Object(e)&&!k.isArray(e)};k.isEmptyObject=function(e){if(k.isObject(e)){for(var a in e)if(fd.call(e,a))return!1;return!0}return!1};k.isUndefined=function(e){return e===void 0};k.isString=function(e){return is.call(e)=="[object String]"};k.isDate=function(e){return is.call(e)=="[object Date]"};k.isNumber=function(e){return is.call(e)=="[object Number]"};k.isElement=function(e){return!!(e&&e.nodeType===1)};k.encodeDates=function(e){return k.each(e,function(a,n){k.isDate(a)?e[n]=k.formatDate(a):k.isObject(a)&&(e[n]=k.encodeDates(a))}),e};k.timestamp=function(){return Date.now=Date.now||function(){return+new Date},Date.now()};k.formatDate=function(e){function a(n){return n<10?"0"+n:n}return e.getUTCFullYear()+"-"+a(e.getUTCMonth()+1)+"-"+a(e.getUTCDate())+"T"+a(e.getUTCHours())+":"+a(e.getUTCMinutes())+":"+a(e.getUTCSeconds())};k.strip_empty_properties=function(e){var a={};return k.each(e,function(n,t){k.isString(n)&&n.length>0&&(a[t]=n)}),a};k.truncate=function(e,a){var n;return typeof e=="string"?n=e.slice(0,a):k.isArray(e)?(n=[],k.each(e,function(t){n.push(k.truncate(t,a))})):k.isObject(e)?(n={},k.each(e,function(t,i){n[i]=k.truncate(t,a)})):n=e,n};k.JSONEncode=(function(){return function(e){var a=e,n=function(i){var r=/[\\"\x00-\x1f\x7f-\x9f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,o={"\b":"\\b"," ":"\\t","\n":"\\n","\f":"\\f","\r":"\\r",'"':'\\"',"\\":"\\\\"};return r.lastIndex=0,r.test(i)?'"'+i.replace(r,function(s){var l=o[s];return typeof l=="string"?l:"\\u"+("0000"+s.charCodeAt(0).toString(16)).slice(-4)})+'"':'"'+i+'"'},t=function(i,r){var o="",s=" ",l=0,d="",p="",u=0,g=o,b=[],v=r[i];switch(v&&typeof v=="object"&&typeof v.toJSON=="function"&&(v=v.toJSON(i)),typeof v){case"string":return n(v);case"number":return isFinite(v)?String(v):"null";case"boolean":case"null":return String(v);case"object":if(!v)return"null";if(o+=s,b=[],is.apply(v)==="[object Array]"){for(u=v.length,l=0;l<u;l+=1)b[l]=t(l,v)||"null";return p=b.length===0?"[]":o?`[
`+o+b.join(`,
`+o)+`
`+g+"]":"["+b.join(",")+"]",o=g,p}for(d in v)fd.call(v,d)&&(p=t(d,v),p&&b.push(n(d)+(o?": ":":")+p));return p=b.length===0?"{}":o?"{"+b.join(",")+g+"}":"{"+b.join(",")+"}",o=g,p}};return t("",{"":a})}})();k.JSONDecode=(function(){var e,a,n={'"':'"',"\\":"\\","/":"/",b:"\b",f:"\f",n:`
`,r:"\r",t:" "},t,i=function(b){var v=new SyntaxError(b);throw v.at=e,v.text=t,v},r=function(b){return b&&b!==a&&i("Expected '"+b+"' instead of '"+a+"'"),a=t.charAt(e),e+=1,a},o=function(){var b,v="";for(a==="-"&&(v="-",r("-"));a>="0"&&a<="9";)v+=a,r();if(a===".")for(v+=".";r()&&a>="0"&&a<="9";)v+=a;if(a==="e"||a==="E")for(v+=a,r(),(a==="-"||a==="+")&&(v+=a,r());a>="0"&&a<="9";)v+=a,r();if(b=+v,!isFinite(b))i("Bad number");else return b},s=function(){var b,v,A="",f;if(a==='"')for(;r();){if(a==='"')return r(),A;if(a==="\\")if(r(),a==="u"){for(f=0,v=0;v<4&&(b=parseInt(r(),16),!!isFinite(b));v+=1)f=f*16+b;A+=String.fromCharCode(f)}else if(typeof n[a]=="string")A+=n[a];else break;else A+=a}i("Bad string")},l=function(){for(;a&&a<=" ";)r()},d=function(){switch(a){case"t":return r("t"),r("r"),r("u"),r("e"),!0;case"f":return r("f"),r("a"),r("l"),r("s"),r("e"),!1;case"n":return r("n"),r("u"),r("l"),r("l"),null}i('Unexpected "'+a+'"')},p,u=function(){var b=[];if(a==="["){if(r("["),l(),a==="]")return r("]"),b;for(;a;){if(b.push(p()),l(),a==="]")return r("]"),b;r(","),l()}}i("Bad array")},g=function(){var b,v={};if(a==="{"){if(r("{"),l(),a==="}")return r("}"),v;for(;a;){if(b=s(),l(),r(":"),Object.hasOwnProperty.call(v,b)&&i('Duplicate key "'+b+'"'),v[b]=p(),l(),a==="}")return r("}"),v;r(","),l()}}i("Bad object")};return p=function(){switch(l(),a){case"{":return g();case"[":return u();case'"':return s();case"-":return o();default:return a>="0"&&a<="9"?o():d()}},function(b){var v;return t=b,e=0,a=" ",v=p(),l(),a&&i("Syntax error"),v}})();k.base64Encode=function(e){var a="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",n,t,i,r,o,s,l,d,p=0,u=0,g="",b=[];if(!e)return e;e=k.utf8Encode(e);do n=e.charCodeAt(p++),t=e.charCodeAt(p++),i=e.charCodeAt(p++),d=n<<16|t<<8|i,r=d>>18&63,o=d>>12&63,s=d>>6&63,l=d&63,b[u++]=a.charAt(r)+a.charAt(o)+a.charAt(s)+a.charAt(l);while(p<e.length);switch(g=b.join(""),e.length%3){case 1:g=g.slice(0,-2)+"==";break;case 2:g=g.slice(0,-1)+"=";break}return g};k.utf8Encode=function(e){e=(e+"").replace(/\r\n/g,`
`).replace(/\r/g,`
`);var a="",n,t,i=0,r;for(n=t=0,i=e.length,r=0;r<i;r++){var o=e.charCodeAt(r),s=null;o<128?t++:o>127&&o<2048?s=String.fromCharCode(o>>6|192,o&63|128):s=String.fromCharCode(o>>12|224,o>>6&63|128,o&63|128),s!==null&&(t>n&&(a+=e.substring(n,t)),a+=s,n=t=r+1)}return t>n&&(a+=e.substring(n,e.length)),a};k.UUID=function(){try{return z.crypto.randomUUID()}catch{for(var e=new Array(36),a=0;a<36;a++)e[a]=Math.floor(Math.random()*16);return e[14]=4,e[19]=e[19]&=-5,e[19]=e[19]|=8,e[8]=e[13]=e[18]=e[23]="-",k.map(e,function(t){return t.toString(16)}).join("")}};var Fb=["ahrefsbot","ahrefssiteaudit","amazonbot","baiduspider","bingbot","bingpreview","chrome-lighthouse","facebookexternal","petalbot","pinterest","screaming frog","yahoo! slurp","yandex","adsbot-google","apis-google","duplexweb-google","feedfetcher-google","google favicon","google web preview","google-read-aloud","googlebot","googleweblight","mediapartners-google","storebot-google"];k.isBlockedUA=function(e){var a;for(e=e.toLowerCase(),a=0;a<Fb.length;a++)if(e.indexOf(Fb[a])!==-1)return!0;return!1};k.HTTPBuildQuery=function(e,a){var n,t,i=[];return k.isUndefined(a)&&(a="&"),k.each(e,function(r,o){n=encodeURIComponent(r.toString()),t=encodeURIComponent(o),i[i.length]=t+"="+n}),i.join(a)};k.getQueryParam=function(e,a){a=a.replace(/[[]/g,"\\[").replace(/[\]]/g,"\\]");var n="[\\?&]"+a+"=([^&#]*)",t=new RegExp(n),i=t.exec(e);if(i===null||i&&typeof i[1]!="string"&&i[1].length)return"";var r=i[1];try{r=decodeURIComponent(r)}catch{ye.error("Skipping decoding for malformed query param: "+r)}return r.replace(/\+/g," ")};k.cookie={get:function(e){for(var a=e+"=",n=be.cookie.split(";"),t=0;t<n.length;t++){for(var i=n[t];i.charAt(0)==" ";)i=i.substring(1,i.length);if(i.indexOf(a)===0)return decodeURIComponent(i.substring(a.length,i.length))}return null},parse:function(e){var a;try{a=k.JSONDecode(k.cookie.get(e))||{}}catch{}return a},set_seconds:function(e,a,n,t,i,r,o){var s="",l="",d="";if(o)s="; domain="+o;else if(t){var p=Lb(be.location.hostname);s=p?"; domain=."+p:""}if(n){var u=new Date;u.setTime(u.getTime()+n*1e3),l="; expires="+u.toGMTString()}r&&(i=!0,d="; SameSite=None"),i&&(d+="; secure"),be.cookie=e+"="+encodeURIComponent(a)+l+"; path=/"+s+d},set:function(e,a,n,t,i,r,o){var s="",l="",d="";if(o)s="; domain="+o;else if(t){var p=Lb(be.location.hostname);s=p?"; domain=."+p:""}if(n){var u=new Date;u.setTime(u.getTime()+n*24*60*60*1e3),l="; expires="+u.toGMTString()}r&&(i=!0,d="; SameSite=None"),i&&(d+="; secure");var g=e+"="+encodeURIComponent(a)+l+"; path=/"+s+d;return be.cookie=g,g},remove:function(e,a,n){k.cookie.set(e,"",-1,a,!1,!1,n)}};var GS=function(e){var a=!0;try{var n="__mplss_"+ph(8),t="xyz";e.setItem(n,t),e.getItem(n)!==t&&(a=!1),e.removeItem(n)}catch{a=!1}return a},Cu=null,Oo=function(e,a){return Cu!==null&&!a?Cu:Cu=GS(e||z.localStorage)},Du=null,zue=function(e,a){return Du!==null&&!a?Du:Du=GS(e||z.sessionStorage)};function HS(e,a,n){var t=function(i){ye.error(a+" error: "+i)};return{is_supported:function(i){var r=n(e,i);return r||ye.error(a+" unsupported"),r},error:t,get:function(i){try{return e.getItem(i)}catch(r){t(r)}return null},parse:function(i){try{return k.JSONDecode(e.getItem(i))||{}}catch{}return null},set:function(i,r){try{e.setItem(i,r)}catch(o){t(o)}},remove:function(i){try{e.removeItem(i)}catch(r){t(r)}}}}var YS=null,KS=null;try{YS=z.localStorage,KS=z.sessionStorage}catch{}k.localStorage=HS(YS,"localStorage",Oo);k.sessionStorage=HS(KS,"sessionStorage",zue);k.register_event=(function(){var e=function(t,i,r,o,s){if(!t){ye.error("No valid element provided to register_event");return}if(t.addEventListener&&!o)t.addEventListener(i,r,!!s);else{var l="on"+i,d=t[l];t[l]=a(t,r,d)}};function a(t,i,r){var o=function(s){if(s=s||n(z.event),!!s){var l=!0,d,p;return k.isFunction(r)&&(d=r(s)),p=i.call(t,s),(d===!1||p===!1)&&(l=!1),l}};return o}function n(t){return t&&(t.preventDefault=n.preventDefault,t.stopPropagation=n.stopPropagation),t}return n.preventDefault=function(){this.returnValue=!1},n.stopPropagation=function(){this.cancelBubble=!0},e})();var Mue=new RegExp('^(\\w*)\\[(\\w+)([=~\\|\\^\\$\\*]?)=?"?([^\\]"]*)"?\\]$');k.dom_query=(function(){function e(i){return i.all?i.all:i.getElementsByTagName("*")}var a=/[\t\r\n]/g;function n(i,r){var o=" "+r+" ";return(" "+i.className+" ").replace(a," ").indexOf(o)>=0}function t(i){if(!be.getElementsByTagName)return[];var r=i.split(" "),o,s,l,d,p,u,g,b,v,A,f=[be];for(u=0;u<r.length;u++){if(o=r[u].replace(/^\s+/,"").replace(/\s+$/,""),o.indexOf("#")>-1){s=o.split("#"),l=s[0];var S=s[1],C=be.getElementById(S);if(!C||l&&C.nodeName.toLowerCase()!=l)return[];f=[C];continue}if(o.indexOf(".")>-1){s=o.split("."),l=s[0];var T=s[1];for(l||(l="*"),d=[],p=0,g=0;g<f.length;g++)for(l=="*"?v=e(f[g]):v=f[g].getElementsByTagName(l),b=0;b<v.length;b++)d[p++]=v[b];for(f=[],A=0,g=0;g<d.length;g++)d[g].className&&k.isString(d[g].className)&&n(d[g],T)&&(f[A++]=d[g]);continue}var E=o.match(Mue);if(E){l=E[1];var P=E[2],I=E[3],L=E[4];for(l||(l="*"),d=[],p=0,g=0;g<f.length;g++)for(l=="*"?v=e(f[g]):v=f[g].getElementsByTagName(l),b=0;b<v.length;b++)d[p++]=v[b];f=[],A=0;var N;switch(I){case"=":N=function(Z){return Z.getAttribute(P)==L};break;case"~":N=function(Z){return Z.getAttribute(P).match(new RegExp("\\b"+L+"\\b"))};break;case"|":N=function(Z){return Z.getAttribute(P).match(new RegExp("^"+L+"-?"))};break;case"^":N=function(Z){return Z.getAttribute(P).indexOf(L)===0};break;case"$":N=function(Z){return Z.getAttribute(P).lastIndexOf(L)==Z.getAttribute(P).length-L.length};break;case"*":N=function(Z){return Z.getAttribute(P).indexOf(L)>-1};break;default:N=function(Z){return Z.getAttribute(P)}}for(f=[],A=0,g=0;g<d.length;g++)N(d[g])&&(f[A++]=d[g]);continue}for(l=o,d=[],p=0,g=0;g<f.length;g++)for(v=f[g].getElementsByTagName(l),b=0;b<v.length;b++)d[p++]=v[b];f=d}return f}return function(i){return k.isElement(i)?[i]:k.isObject(i)&&!k.isUndefined(i.length)?i:t.call(this,i)}})();var Nue=["utm_source","utm_medium","utm_campaign","utm_content","utm_term","utm_id","utm_source_platform","utm_campaign_id","utm_creative_format","utm_marketing_tactic"],Fue=["dclid","fbclid","gclid","ko_click_id","li_fat_id","msclkid","sccid","ttclid","twclid","wbraid"];k.info={campaignParams:function(e){var a="",n={};return k.each(Nue,function(t){a=k.getQueryParam(be.URL,t),a.length?n[t]=a:e!==void 0&&(n[t]=e)}),n},clickParams:function(){var e="",a={};return k.each(Fue,function(n){e=k.getQueryParam(be.URL,n),e.length&&(a[n]=e)}),a},marketingParams:function(){return k.extend(k.info.campaignParams(),k.info.clickParams())},searchEngine:function(e){return e.search("https?://(.*)google.([^/?]*)")===0?"google":e.search("https?://(.*)bing.com")===0?"bing":e.search("https?://(.*)yahoo.com")===0?"yahoo":e.search("https?://(.*)duckduckgo.com")===0?"duckduckgo":null},searchInfo:function(e){var a=k.info.searchEngine(e),n=a!="yahoo"?"q":"p",t={};if(a!==null){t.$search_engine=a;var i=k.getQueryParam(e,n);i.length&&(t.mp_keyword=i)}return t},browser:function(e,a,n){return a=a||"",n||k.includes(e," OPR/")?k.includes(e,"Mini")?"Opera Mini":"Opera":/(BlackBerry|PlayBook|BB10)/i.test(e)?"BlackBerry":k.includes(e,"IEMobile")||k.includes(e,"WPDesktop")?"Internet Explorer Mobile":k.includes(e,"SamsungBrowser/")?"Samsung Internet":k.includes(e,"Edge")||k.includes(e,"Edg/")?"Microsoft Edge":k.includes(e,"FBIOS")?"Facebook Mobile":k.includes(e,"Whale/")?"Whale Browser":k.includes(e,"Chrome")?"Chrome":k.includes(e,"CriOS")?"Chrome iOS":k.includes(e,"UCWEB")||k.includes(e,"UCBrowser")?"UC Browser":k.includes(e,"FxiOS")?"Firefox iOS":k.includes(a,"Apple")?k.includes(e,"Mobile")?"Mobile Safari":"Safari":k.includes(e,"Android")?"Android Mobile":k.includes(e,"Konqueror")?"Konqueror":k.includes(e,"Firefox")?"Firefox":k.includes(e,"MSIE")||k.includes(e,"Trident/")?"Internet Explorer":k.includes(e,"Gecko")?"Mozilla":""},browserVersion:function(e,a,n){var t=k.info.browser(e,a,n),i={"Internet Explorer Mobile":/rv:(\d+(\.\d+)?)/,"Microsoft Edge":/Edge?\/(\d+(\.\d+)?)/,Chrome:/Chrome\/(\d+(\.\d+)?)/,"Chrome iOS":/CriOS\/(\d+(\.\d+)?)/,"UC Browser":/(UCBrowser|UCWEB)\/(\d+(\.\d+)?)/,Safari:/Version\/(\d+(\.\d+)?)/,"Mobile Safari":/Version\/(\d+(\.\d+)?)/,Opera:/(Opera|OPR)\/(\d+(\.\d+)?)/,Firefox:/Firefox\/(\d+(\.\d+)?)/,"Firefox iOS":/FxiOS\/(\d+(\.\d+)?)/,Konqueror:/Konqueror:(\d+(\.\d+)?)/,BlackBerry:/BlackBerry (\d+(\.\d+)?)/,"Android Mobile":/android\s(\d+(\.\d+)?)/,"Samsung Internet":/SamsungBrowser\/(\d+(\.\d+)?)/,"Internet Explorer":/(rv:|MSIE )(\d+(\.\d+)?)/,Mozilla:/rv:(\d+(\.\d+)?)/,"Whale Browser":/Whale\/(\d+(\.\d+)?)/},r=i[t];if(r===void 0)return null;var o=e.match(r);return o?parseFloat(o[o.length-2]):null},os:function(){var e=Ua;return/Windows/i.test(e)?/Phone/.test(e)||/WPDesktop/.test(e)?"Windows Phone":"Windows":/(iPhone|iPad|iPod)/.test(e)?"iOS":/Android/.test(e)?"Android":/(BlackBerry|PlayBook|BB10)/i.test(e)?"BlackBerry":/Mac/i.test(e)?"Mac OS X":/Linux/.test(e)?"Linux":/CrOS/.test(e)?"Chrome OS":""},device:function(e){return/Windows Phone/i.test(e)||/WPDesktop/.test(e)?"Windows Phone":/iPad/.test(e)?"iPad":/iPod/.test(e)?"iPod Touch":/iPhone/.test(e)?"iPhone":/(BlackBerry|PlayBook|BB10)/i.test(e)?"BlackBerry":/Android/.test(e)?"Android":""},referringDomain:function(e){var a=e.split("/");return a.length>=3?a[2]:""},currentUrl:function(){return z.location.href},properties:function(e){return typeof e!="object"&&(e={}),k.extend(k.strip_empty_properties({$os:k.info.os(),$browser:k.info.browser(Ua,Cn.vendor,io),$referrer:be.referrer,$referring_domain:k.info.referringDomain(be.referrer),$device:k.info.device(Ua)}),{$current_url:k.info.currentUrl(),$browser_version:k.info.browserVersion(Ua,Cn.vendor,io),$screen_height:Rb.height,$screen_width:Rb.width,mp_lib:"web",$lib_version:ea.LIB_VERSION,$insert_id:ph(),time:k.timestamp()/1e3},k.strip_empty_properties(e))},people_properties:function(){return k.extend(k.strip_empty_properties({$os:k.info.os(),$browser:k.info.browser(Ua,Cn.vendor,io)}),{$browser_version:k.info.browserVersion(Ua,Cn.vendor,io)})},mpPageViewProperties:function(){return k.strip_empty_properties({current_page_title:be.title,current_domain:z.location.hostname,current_url_path:z.location.pathname,current_url_protocol:z.location.protocol,current_url_search:z.location.search})}};var Lue=function(e,a){var n=null,t=[];return function(i){var r=this;return t.push(i),n||(n=new we(function(o){setTimeout(function(){var s=e.apply(r,[t]);n=null,t=[],o(s)},a)})),n}},ph=function(e){var a=Math.random().toString(36).substring(2,10)+Math.random().toString(36).substring(2,10);return e?a.substring(0,e):a},ZS=function(){var e=k.UUID().replace(/-/g,""),a=k.UUID().replace(/-/g,"").substring(0,16),n="01";return"00-"+e+"-"+a+"-"+n},jue=/[a-z0-9][a-z0-9-]*\.[a-z]+$/i,Oue=/[a-z0-9][a-z0-9-]+\.[a-z.]{2,6}$/i,Lb=function(e){var a=Oue,n=e.split("."),t=n[n.length-1];(t.length>4||t==="com"||t==="org")&&(a=jue);var i=e.match(a);return i?i[0]:""},Bue=function(){var e=z.navigator.onLine;return k.isUndefined(e)||e},Qn=function(){},mc=function(e,a){for(var n=!1,t=0;t<a.length;t++)if(e.match(a[t])){n=!0;break}return n},Er=null,gc=null;typeof JSON<"u"&&(Er=JSON.stringify,gc=JSON.parse);Er=Er||k.JSONEncode;gc=gc||k.JSONDecode;var Uue=function(e,a,n){if(!z.CompressionStream)return!1;var t=k.info.browser(e,a,n),i=k.info.browserVersion(e,a,n);return!((t==="Safari"||t==="Mobile Safari")&&i>=16.4&&i<16.6)};k.info=k.info;k.info.browser=k.info.browser;k.info.browserVersion=k.info.browserVersion;k.info.device=k.info.device;k.info.properties=k.info.properties;k.isBlockedUA=k.isBlockedUA;k.isEmptyObject=k.isEmptyObject;k.isObject=k.isObject;k.JSONDecode=k.JSONDecode;k.JSONEncode=k.JSONEncode;k.toArray=k.toArray;k.NPO=ui;var que="mixpanelBrowserDb",JS="mixpanelRecordingEvents",mh="mixpanelRecordingRegistry",Vue=1,$ue=[JS,mh],Ma=function(e){this.dbPromise=null,this.storeName=e};Ma.prototype._openDb=function(){return new we(function(e,a){var n=z.indexedDB.open(que,Vue);n.onerror=function(){a(n.error)},n.onsuccess=function(){e(n.result)},n.onupgradeneeded=function(t){var i=t.target.result;$ue.forEach(function(r){i.createObjectStore(r)})}})};Ma.prototype.init=function(){return z.indexedDB?(this.dbPromise||(this.dbPromise=this._openDb()),this.dbPromise.then(function(e){return e instanceof z.IDBDatabase?we.resolve():we.reject(e)})):we.reject("indexedDB is not supported in this browser")};Ma.prototype.isInitialized=function(){return!!this.dbPromise};Ma.prototype.makeTransaction=function(e,a){var n=this.storeName,t=function(i){return new we(function(r,o){var s=i.transaction(n,e);s.oncomplete=function(){r(s)},s.onabort=s.onerror=function(){o(s.error)},a(s.objectStore(n))})};return this.dbPromise.then(t).catch((function(i){return i&&i.name==="InvalidStateError"?(this.dbPromise=this._openDb(),this.dbPromise.then(t)):we.reject(i)}).bind(this))};Ma.prototype.setItem=function(e,a){return this.makeTransaction("readwrite",function(n){n.put(a,e)})};Ma.prototype.getItem=function(e){var a;return this.makeTransaction("readonly",function(n){a=n.get(e)}).then(function(){return a.result})};Ma.prototype.removeItem=function(e){return this.makeTransaction("readwrite",function(a){a.delete(e)})};Ma.prototype.getAll=function(){var e;return this.makeTransaction("readonly",function(a){e=a.getAll()}).then(function(){return e.result})};var Wue="__mp_opt_in_out_";function Gue(e,a){eC(!0,e,a)}function Hue(e,a){eC(!1,e,a)}function Yue(e,a){return XS(e,a)==="1"}function QS(e,a){if(Zue(a))return ye.warn('This browser has "Do Not Track" enabled. This will prevent the Mixpanel SDK from sending any data. To ignore the "Do Not Track" browser setting, initialize the Mixpanel instance with the config "ignore_dnt: true"'),!0;var n=XS(e,a)==="0";return n&&ye.warn("You are opted out of Mixpanel tracking. This will prevent the Mixpanel SDK from sending any data."),n}function mi(e){return fh(e,function(a){return this.get_config(a)})}function gi(e){return fh(e,function(a){return this._get_config(a)})}function Fr(e){return fh(e,function(a){return this._get_config(a)})}function Kue(e,a){a=a||{},gh(a).remove(hh(e,a),!!a.crossSubdomainCookie,a.cookieDomain)}function gh(e){return e=e||{},e.persistenceType==="localStorage"?k.localStorage:k.cookie}function hh(e,a){return a=a||{},(a.persistencePrefix||Wue)+e}function XS(e,a){return gh(a).get(hh(e,a))}function Zue(e){if(e&&e.ignoreDnt)return!1;var a=e&&e.window||z,n=a.navigator||{},t=!1;return k.each([n.doNotTrack,n.msDoNotTrack,a.doNotTrack],function(i){k.includes([!0,1,"1","yes"],i)&&(t=!0)}),t}function eC(e,a,n){if(!k.isString(a)||!a.length){ye.error("gdpr."+(e?"optIn":"optOut")+" called with an invalid token");return}n=n||{},gh(n).set(hh(a,n),e?1:0,k.isNumber(n.cookieExpiration)?n.cookieExpiration:null,!!n.crossSubdomainCookie,!!n.secureCookie,!!n.crossSiteCookie,n.cookieDomain),n.track&&e&&n.track(n.trackEventName||"$opt_in",n.trackProperties,{send_immediately:!0})}function fh(e,a){return function(){var n=!1;try{var t=a.call(this,"token"),i=a.call(this,"ignore_dnt"),r=a.call(this,"opt_out_tracking_persistence_type"),o=a.call(this,"opt_out_tracking_cookie_prefix"),s=a.call(this,"window");t&&(n=QS(t,{ignoreDnt:i,persistenceType:r,persistencePrefix:o,window:s}))}catch(d){ye.error("Unexpected error when checking tracking opt-out status: "+d)}if(!n)return e.apply(this,arguments);var l=arguments[arguments.length-1];typeof l=="function"&&l(0)}}var Jue=pi("lock"),tC=function(e,a){a=a||{},this.storageKey=e,this.storage=a.storage||z.localStorage,this.pollIntervalMS=a.pollIntervalMS||100,this.timeoutMS=a.timeoutMS||2e3,this.promiseImpl=a.promiseImpl||we};tC.prototype.withLock=function(e,a){var n=this.promiseImpl;return new n(k.bind(function(t,i){var r=a||new Date().getTime()+"|"+Math.random(),o=new Date().getTime(),s=this.storageKey,l=this.pollIntervalMS,d=this.timeoutMS,p=this.storage,u=s+":X",g=s+":Y",b=s+":Z",v=function(T){if(new Date().getTime()-o>d){Jue.error("Timeout waiting for mutex on "+s+"; clearing lock. ["+r+"]"),p.removeItem(b),p.removeItem(g),S();return}setTimeout(function(){try{T()}catch(E){i(E)}},l*(Math.random()+.1))},A=function(T,E){T()?E():v(function(){A(T,E)})},f=function(){var T=p.getItem(g);return T&&T!==r?!1:(p.setItem(g,r),p.getItem(g)===r?!0:(Oo(p,!0)||i(new Error("localStorage support dropped while acquiring lock")),!1))},S=function(){p.setItem(u,r),A(f,function(){if(p.getItem(u)===r){C();return}v(function(){if(p.getItem(g)!==r){S();return}A(function(){return!p.getItem(b)},C)})})},C=function(){p.setItem(b,"1");var T=function(){p.removeItem(b),p.getItem(g)===r&&p.removeItem(g),p.getItem(u)===r&&p.removeItem(u)};e().then(function(E){T(),t(E)}).catch(function(E){T(),i(E)})};try{if(Oo(p,!0))S();else throw new Error("localStorage support check failed")}catch(T){i(T)}},this))};var Lr=function(e){this.storage=e||z.localStorage};Lr.prototype.init=function(){return we.resolve()};Lr.prototype.isInitialized=function(){return!0};Lr.prototype.setItem=function(e,a){return new we(k.bind(function(n,t){try{this.storage.setItem(e,Er(a))}catch(i){t(i)}n()},this))};Lr.prototype.getItem=function(e){return new we(k.bind(function(a,n){var t;try{t=gc(this.storage.getItem(e))}catch(i){n(i)}a(t)},this))};Lr.prototype.removeItem=function(e){return new we(k.bind(function(a,n){try{this.storage.removeItem(e)}catch(t){n(t)}a()},this))};var jb=pi("batch"),an=function(e,a){a=a||{},this.storageKey=e,this.usePersistence=a.usePersistence,this.usePersistence&&(this.queueStorage=a.queueStorage||new Lr,this.lock=new tC(e,{storage:a.sharedLockStorage||z.localStorage,timeoutMS:a.sharedLockTimeoutMS})),this.reportError=a.errorReporter||k.bind(jb.error,jb),this.pid=a.pid||null,this.memQueue=[],this.initialized=!1,a.enqueueThrottleMs?this.enqueuePersisted=Lue(k.bind(this._enqueuePersisted,this),a.enqueueThrottleMs):this.enqueuePersisted=k.bind(function(n){return this._enqueuePersisted([n])},this)};an.prototype.ensureInit=function(){return this.initialized||!this.usePersistence?we.resolve():this.queueStorage.init().then(k.bind(function(){this.initialized=!0},this)).catch(k.bind(function(e){this.reportError("Error initializing queue persistence. Disabling persistence",e),this.initialized=!0,this.usePersistence=!1},this))};an.prototype.enqueue=function(e,a){var n={id:ph(),flushAfter:new Date().getTime()+a*2,payload:e};return this.usePersistence?this.enqueuePersisted(n):(this.memQueue.push(n),we.resolve(!0))};an.prototype._enqueuePersisted=function(e){var a=k.bind(function(){return this.ensureInit().then(k.bind(function(){return this.readFromStorage()},this)).then(k.bind(function(n){return this.saveToStorage(n.concat(e))},this)).then(k.bind(function(n){return n&&(this.memQueue=this.memQueue.concat(e)),n},this)).catch(k.bind(function(n){return this.reportError("Error enqueueing items",n,e),!1},this))},this);return this.lock.withLock(a,this.pid).catch(k.bind(function(n){return this.reportError("Error acquiring storage lock",n),!1},this))};an.prototype.fillBatch=function(e){var a=this.memQueue.slice(0,e);return this.usePersistence&&a.length<e?this.ensureInit().then(k.bind(function(){return this.readFromStorage()},this)).then(k.bind(function(n){if(n.length){var t={};k.each(a,function(o){t[o.id]=!0});for(var i=0;i<n.length;i++){var r=n[i];if(new Date().getTime()>r.flushAfter&&!t[r.id]&&(r.orphaned=!0,a.push(r),a.length>=e))break}}return a},this)):we.resolve(a)};var Ob=function(e,a){var n=[];return k.each(e,function(t){t.id&&!a[t.id]&&n.push(t)}),n};an.prototype.removeItemsByID=function(e){var a={};if(k.each(e,function(t){a[t]=!0}),this.memQueue=Ob(this.memQueue,a),this.usePersistence){var n=k.bind(function(){return this.ensureInit().then(k.bind(function(){return this.readFromStorage()},this)).then(k.bind(function(t){return t=Ob(t,a),this.saveToStorage(t)},this)).then(k.bind(function(){return this.readFromStorage()},this)).then(k.bind(function(t){for(var i=0;i<t.length;i++){var r=t[i];if(r.id&&a[r.id])throw new Error("Item not removed from storage")}return!0},this)).catch(k.bind(function(t){return this.reportError("Error removing items",t,e),!1},this))},this);return this.lock.withLock(n,this.pid).catch(k.bind(function(t){return this.reportError("Error acquiring storage lock",t),Oo(this.lock.storage,!0)?!1:n().then(k.bind(function(i){return i||this.queueStorage.removeItem(this.storageKey).then(function(){return i})},this)).catch(k.bind(function(i){return this.reportError("Error clearing queue",i),!1},this))},this))}else return we.resolve(!0)};var Bb=function(e,a){var n=[];return k.each(e,function(t){var i=t.id;if(i in a){var r=a[i];r!==null&&(t.payload=r,n.push(t))}else n.push(t)}),n};an.prototype.updatePayloads=function(e){return this.memQueue=Bb(this.memQueue,e),this.usePersistence?this.lock.withLock(k.bind(function(){return this.ensureInit().then(k.bind(function(){return this.readFromStorage()},this)).then(k.bind(function(n){return n=Bb(n,e),this.saveToStorage(n)},this)).catch(k.bind(function(n){return this.reportError("Error updating items",e,n),!1},this))},this),this.pid).catch(k.bind(function(a){return this.reportError("Error acquiring storage lock",a),!1},this)):we.resolve(!0)};an.prototype.readFromStorage=function(){return this.ensureInit().then(k.bind(function(){return this.queueStorage.getItem(this.storageKey)},this)).then(k.bind(function(e){return e&&(k.isArray(e)||(this.reportError("Invalid storage entry:",e),e=null)),e||[]},this)).catch(k.bind(function(e){return this.reportError("Error retrieving queue",e),[]},this))};an.prototype.saveToStorage=function(e){return this.ensureInit().then(k.bind(function(){return this.queueStorage.setItem(this.storageKey,e)},this)).then(function(){return!0}).catch(k.bind(function(a){return this.reportError("Error saving queue",a),!1},this))};an.prototype.clear=function(){return this.memQueue=[],this.usePersistence?this.ensureInit().then(k.bind(function(){return this.queueStorage.removeItem(this.storageKey)},this)):we.resolve()};var Que=600*1e3,go=pi("batch"),fa=function(e,a){this.errorReporter=a.errorReporter,this.queue=new an(e,{errorReporter:k.bind(this.reportError,this),queueStorage:a.queueStorage,sharedLockStorage:a.sharedLockStorage,sharedLockTimeoutMS:a.sharedLockTimeoutMS,usePersistence:a.usePersistence,enqueueThrottleMs:a.enqueueThrottleMs}),this.libConfig=a.libConfig,this.sendRequest=a.sendRequestFunc,this.beforeSendHook=a.beforeSendHook,this.stopAllBatching=a.stopAllBatchingFunc,this.batchSize=this.libConfig.batch_size,this.flushInterval=this.libConfig.batch_flush_interval_ms,this.stopped=!this.libConfig.batch_autostart,this.consecutiveRemovalFailures=0,this.itemIdsSentSuccessfully={},this.flushOnlyOnInterval=a.flushOnlyOnInterval||!1,this._flushPromise=null};fa.prototype.enqueue=function(e){return this.queue.enqueue(e,this.flushInterval)};fa.prototype.start=function(){return this.stopped=!1,this.consecutiveRemovalFailures=0,this.flush()};fa.prototype.stop=function(){this.stopped=!0,this.timeoutID&&(clearTimeout(this.timeoutID),this.timeoutID=null)};fa.prototype.clear=function(){return this.queue.clear()};fa.prototype.resetBatchSize=function(){this.batchSize=this.libConfig.batch_size};fa.prototype.resetFlush=function(){this.scheduleFlush(this.libConfig.batch_flush_interval_ms)};fa.prototype.scheduleFlush=function(e){this.flushInterval=e,this.stopped||(this.timeoutID=setTimeout(k.bind(function(){this.stopped||(this._flushPromise=this.flush())},this),this.flushInterval))};fa.prototype.sendRequestPromise=function(e,a){return new we(k.bind(function(n){this.sendRequest(e,a,n)},this))};fa.prototype.flush=function(e){if(this.requestInProgress)return go.log("Flush: Request already in progress"),we.resolve();this.requestInProgress=!0,e=e||{};var a=this.libConfig.batch_request_timeout_ms,n=new Date().getTime(),t=this.batchSize;return this.queue.fillBatch(t).then(k.bind(function(i){var r=i.length===t,o=[],s={};if(k.each(i,function(u){var g=u.payload;if(this.beforeSendHook&&!u.orphaned&&(g=this.beforeSendHook(g)),g){g.event&&g.properties&&(g.properties=k.extend({},g.properties,{mp_sent_by_lib_version:ea.LIB_VERSION}));var b=!0,v=u.id;v?(this.itemIdsSentSuccessfully[v]||0)>5&&(this.reportError("[dupe] item ID sent too many times, not sending",{item:u,batchSize:i.length,timesSent:this.itemIdsSentSuccessfully[v]}),b=!1):this.reportError("[dupe] found item with no ID",{item:u}),b&&o.push(g)}s[u.id]=g},this),o.length<1)return this.requestInProgress=!1,this.resetFlush(),we.resolve();var l=k.bind(function(){return this.queue.removeItemsByID(k.map(i,function(u){return u.id})).then(k.bind(function(u){return k.each(i,k.bind(function(g){var b=g.id;b?(this.itemIdsSentSuccessfully[b]=this.itemIdsSentSuccessfully[b]||0,this.itemIdsSentSuccessfully[b]++,this.itemIdsSentSuccessfully[b]>5&&this.reportError("[dupe] item ID sent too many times",{item:g,batchSize:i.length,timesSent:this.itemIdsSentSuccessfully[b]})):this.reportError("[dupe] found item with no ID while removing",{item:g})},this)),u?(this.consecutiveRemovalFailures=0,this.flushOnlyOnInterval&&!r?(this.resetFlush(),we.resolve()):this.flush()):(++this.consecutiveRemovalFailures>5?(this.reportError("Too many queue failures; disabling batching system."),this.stopAllBatching()):this.resetFlush(),we.resolve())},this))},this),d=k.bind(function(u){this.requestInProgress=!1;try{if(e.unloading)return this.queue.updatePayloads(s);if(k.isObject(u)&&u.error==="timeout"&&new Date().getTime()-n>=a)return this.reportError("Network timeout; retrying"),this.flush();if(k.isObject(u)&&(u.httpStatusCode>=500||u.httpStatusCode===429||u.httpStatusCode<=0&&!Bue()||u.error==="timeout")){var g=this.flushInterval*2;return u.retryAfter&&(g=parseInt(u.retryAfter,10)*1e3||g),g=Math.min(Que,g),this.reportError("Error; retry in "+g+" ms"),this.scheduleFlush(g),we.resolve()}else if(k.isObject(u)&&u.httpStatusCode===413)if(i.length>1){var b=Math.max(1,Math.floor(t/2));return this.batchSize=Math.min(this.batchSize,b,i.length-1),this.reportError("413 response; reducing batch size to "+this.batchSize),this.resetFlush(),we.resolve()}else return this.reportError("Single-event request too large; dropping",i),this.resetBatchSize(),l();else return l()}catch(v){this.reportError("Error handling API response",v),this.resetFlush()}},this),p={method:"POST",verbose:!0,ignore_json_errors:!0,timeout_ms:a};return e.unloading&&(p.transport="sendBeacon"),go.log("MIXPANEL REQUEST:",o),this.sendRequestPromise(o,p).then(d)},this)).catch(k.bind(function(i){this.reportError("Error flushing request queue",i),this.resetFlush()},this))};fa.prototype.reportError=function(e,a){if(go.error.apply(go.error,arguments),this.errorReporter)try{a instanceof Error||(a=new Error(e)),this.errorReporter(e,a)}catch(n){go.error(n)}};var vh=function(e){var a=Date.now();return!e||a>e.maxExpires||a>e.idleExpires},Xue=250,Bo="change",zn="click",mm="hashchange",epe="input",Ub="load",Kn="mp_locationchange",qb="popstate",vd="scrollend",bh="scroll",tpe="select",hc="submit",ape="toggle",Vb="visibilitychange",npe=["clientX","clientY","offsetX","offsetY","pageX","pageY","screenX","screenY","x","y"],$b=["mp-include"],gm=["mp-no-track"],Wb=gm.concat(["mp-sensitive"]),ipe=["aria-label","aria-labelledby","aria-describedby","href","name","role","title","type"],rpe={button:!0,checkbox:!0,combobox:!0,grid:!0,link:!0,listbox:!0,menu:!0,menubar:!0,menuitem:!0,menuitemcheckbox:!0,menuitemradio:!0,navigation:!0,option:!0,radio:!0,radiogroup:!0,searchbox:!0,slider:!0,spinbutton:!0,switch:!0,tab:!0,tablist:!0,textbox:!0,tree:!0,treegrid:!0,treeitem:!0},ope={base:!0,head:!0,html:!0,link:!0,meta:!0,script:!0,style:!0,title:!0,br:!0,hr:!0,wbr:!0,noscript:!0,picture:!0,source:!0,template:!0,track:!0},spe={article:!0,div:!0,h1:!0,h2:!0,h3:!0,h4:!0,h5:!0,h6:!0,p:!0,section:!0,span:!0},Gb=["onclick","onmousedown","onmouseup","onpointerdown","onpointerup","ontouchend","ontouchstart"],lpe=5,Ze=pi("autocapture");function hm(e){for(var a={},n=aC(e).split(" "),t=0;t<n.length;t++){var i=n[t];i&&(a[i]=!0)}return a}function aC(e){switch(typeof e.className){case"string":return e.className;case"object":return e.className.baseVal||e.getAttribute("class")||"";default:return""}}function cpe(e){if(e.previousElementSibling)return e.previousElementSibling;do e=e.previousSibling;while(e&&!nC(e));return e}function Hb(e,a,n,t,i,r){var o={$classes:aC(e).split(" "),$tag_name:e.tagName.toLowerCase()},s=e.id;s&&(o.$id=s),yh(e,a,i,r)&&k.each(ipe.concat(t),function(u){if(e.hasAttribute(u)&&!n[u]){var g=e.getAttribute(u);fc(g)&&(o["$attr-"+u]=g)}});for(var l=1,d=1,p=e;p=cpe(p);)l++,p.tagName===e.tagName&&d++;return o.$nth_child=l,o.$nth_of_type=d,o}function dpe(e,a){var n=a.allowElementCallback,t=a.allowSelectors||[],i=a.blockAttrs||[],r=a.blockElementCallback,o=a.blockSelectors||[],s=a.captureTextContent||!1,l=a.captureExtraAttrs||[],d=a.capturedForHeatMap||!1,p={};k.each(i,function(P){p[P]=!0});var u=null,g=typeof e.target>"u"?e.srcElement:e.target;if(iC(g)&&(g=g.parentNode),gpe(g,e)&&fm(g,e,n,t)&&!Tu(g,e,r,o)){for(var b=[g],v=g;v.parentNode&&!Ya(v,"body");)b.push(v.parentNode),v=v.parentNode;var A=[],f,S=!1;if(k.each(b,function(P){var I=yh(P,e,n,t);!p.href&&P.tagName.toLowerCase()==="a"&&(f=P.getAttribute("href"),f=I&&fc(f)&&f),Tu(P,e,r,o)&&(S=!0),A.push(Hb(P,e,p,l,n,t))},this),!S){var C=be.documentElement;if(u={$event_type:e.type,$host:z.location.host,$pathname:z.location.pathname,$elements:A,$el_attr__href:f,$viewportHeight:Math.max(C.clientHeight,z.innerHeight||0),$viewportWidth:Math.max(C.clientWidth,z.innerWidth||0),$pageHeight:be.body.offsetHeight||0,$pageWidth:be.body.offsetWidth||0},k.each(l,function(P){if(!p[P]&&g.hasAttribute(P)){var I=g.getAttribute(P);fc(I)&&(u["$el_attr__"+P]=I)}}),s&&(T=Yb(g,e,n,t),T&&T.length&&(u.$el_text=T)),e.type===zn&&(k.each(npe,function(P){P in e&&(u["$"+P]=e[P])}),d&&(u.$captured_for_heatmap=!0),g=upe(e)),s){var T=Yb(g,e,n,t);T&&T.length&&(u.$el_text=T)}if(g){if(!fm(g,e,n,t)||Tu(g,e,r,o))return null;var E=Hb(g,e,p,l,n,t);u.$target=E,u.$el_classes=E.$classes,k.extend(u,k.strip_empty_properties({$el_id:E.$id,$el_tag_name:E.$tag_name}))}}}return u}function Yb(e,a,n,t){var i="";return yh(e,a,n,t)&&e.childNodes&&e.childNodes.length&&k.each(e.childNodes,function(r){iC(r)&&r.textContent&&(i+=k.trim(r.textContent).split(/(\s+)/).filter(fc).join("").replace(/[\r\n]/g," ").replace(/[ ]+/g," ").substring(0,255))}),k.trim(i)}function upe(e){for(var a=e.target,n=e.composedPath(),t=0;t<n.length;t++){var i=n[t];if(Ya(i,"a")||Ya(i,"button")||Ya(i,"input")||Ya(i,"select")||i.getAttribute&&i.getAttribute("role")==="button"){a=i;break}if(i===a)break}return a}function fm(e,a,n,t){if(n)try{if(!n(e,a))return!1}catch(o){return Ze.critical("Error while checking element in allowElementCallback",o),!1}if(!t.length)return!0;for(var i=0;i<t.length;i++){var r=t[i];try{if(e.matches(r))return!0}catch(o){Ze.critical("Error while checking selector: "+r,o)}}return!1}function Tu(e,a,n,t){var i;if(n)try{if(n(e,a))return!0}catch(s){return Ze.critical("Error while checking element in blockElementCallback",s),!0}if(t&&t.length)for(i=0;i<t.length;i++){var r=t[i];try{if(e.matches(r))return!0}catch(s){Ze.critical("Error while checking selector: "+r,s)}}var o=hm(e);for(i=0;i<gm.length;i++)if(o[gm[i]])return!0;return!1}function nC(e){return e&&e.nodeType===1}function Ya(e,a){return e&&e.tagName&&e.tagName.toLowerCase()===a.toLowerCase()}function iC(e){return e&&e.nodeType===3}function ppe(){try{var e=be.createElement("div");return!!e.matches}catch{return!1}}function mpe(){return typeof WeakSet<"u"}function gpe(e,a){if(!e||Ya(e,"html")||!nC(e))return!1;var n=e.tagName.toLowerCase();switch(n){case"form":return a.type===hc;case"input":return["button","submit"].indexOf(e.getAttribute("type"))===-1?a.type===Bo:a.type===zn;case"select":case"textarea":return a.type===Bo;default:return a.type===zn}}function rC(e){var a=(e.name||e.id||"").toString().toLowerCase();if(typeof a=="string"){var n=/^cc|cardnum|ccnum|creditcard|csc|cvc|cvv|exp|pass|pwd|routing|seccode|securitycode|securitynum|socialsec|socsec|ssn/i;if(n.test(a.replace(/[^a-zA-Z0-9]/g,"")))return!0}return!1}function yh(e,a,n,t){var i;if(!fm(e,a,n,t))return!1;for(var r=e;r.parentNode&&!Ya(r,"body");r=r.parentNode){var o=hm(r);for(i=0;i<Wb.length;i++)if(o[Wb[i]])return!1}var s=hm(e);for(i=0;i<$b.length;i++)if(s[$b[i]])return!0;if(Ya(e,"input")||Ya(e,"select")||Ya(e,"textarea")||e.getAttribute("contenteditable")==="true")return!1;var l=e.type||"";if(typeof l=="string")switch(l.toLowerCase()){case"hidden":return!1;case"password":return!1}return!rC(e)}function fc(e){if(e===null||k.isUndefined(e))return!1;if(typeof e=="string"){e=k.trim(e);var a=/^(?:(4[0-9]{12}(?:[0-9]{3})?)|(5[1-5][0-9]{14})|(6(?:011|5[0-9]{2})[0-9]{12})|(3[47][0-9]{13})|(3(?:0[0-5]|[68][0-9])[0-9]{11})|((?:2131|1800|35[0-9]{3})[0-9]{11}))$/;if(a.test((e||"").replace(/[- ]/g,"")))return!1;var n=/(^\d{3}-?\d{2}-?\d{4}$)/;if(n.test(e))return!1}return!0}function oC(e){var a="onscrollend"in z,n=Tr(e),t=vd;if(!a){var i=null,r=100;n=Tr(function(){clearTimeout(i),i=setTimeout(e,r)}),t=bh}return{listener:n,eventType:t}}function hpe(e){for(var a=0;a<Gb.length;a++)if(e.hasAttribute(Gb[a]))return!0;return!1}function fpe(e){var a=e.getAttribute("role");if(!a)return!1;var n=a.trim().split(/\s+/)[0].toLowerCase();return rpe[n]}function Eu(e){var a=e.tagName.toLowerCase();return!!(a==="button"||a==="input"||a==="select"||a==="textarea"||a==="details"||a==="dialog"||e.isContentEditable||e.onclick||e.onmousedown||e.onmouseup||e.ontouchstart||e.ontouchend||hpe(e)||fpe(e)||a==="a"&&e.hasAttribute("href")||e.hasAttribute("tabindex"))}function sC(e){if(!e||!e.tagName)return!0;var a=e.tagName.toLowerCase();if(ope[a])return!0;if(Eu(e))return!1;for(var n=e.parentElement,t=0;n&&t<lpe;){if(Eu(n))return!1;if(n.getRootNode&&n.getRootNode()!==be){var i=n.getRootNode();if(i.host&&Eu(i.host))return!1}n=n.parentElement,t++}return!!spe[a]}function lC(e){return"composedPath"in e?e.composedPath():[]}function cC(e){var a=lC(e);return a&&a.length>0?a[0]:e.target||e.srcElement}var dC=".mp-mask, .fs-mask, .amp-mask, .rr-mask, .ph-mask",vpe="data-rr-is-password",bpe=["password","email","tel","hidden"];function sl(e){return e?Array.isArray(e)?e:[e]:[]}function ype(e){var a={input:{maskingSelector:"",unmaskingSelector:"",maskAll:!0},text:{maskingSelector:"",unmaskingSelector:"",maskAll:!0}},n=e.get_config("record_mask_input_selector"),t=e.get_config("record_unmask_input_selector"),i=e.get_config("record_mask_all_inputs");a.input.maskingSelector=sl(n).join(","),a.input.unmaskingSelector=sl(t).join(","),i!==void 0&&(a.input.maskAll=i);var r=e.get_config("record_mask_text_selector"),o=e.get_config("record_unmask_text_selector"),s=e.get_config("record_mask_all_text"),l=e.get_config("record_mask_text_class"),d=sl(r);if(l)if(l instanceof RegExp)a.text._legacyClassRegex=l;else{var p="."+l;d.indexOf(p)===-1&&d.push(p)}return a.text.maskingSelector=d.join(","),a.text.unmaskingSelector=sl(o).join(","),s===void 0&&r!==void 0?a.text.maskAll=!1:s!==void 0&&(a.text.maskAll=s),a}function ur(e,a){return a?!!e.closest(a):!1}function kpe(e,a){var n=(e.getAttribute("type")||"").toLowerCase();if(bpe.indexOf(n)!==-1)return!0;var t=(e.getAttribute("autocomplete")||"").toLowerCase();return t&&t!==""&&t!=="off"||e.hasAttribute(vpe)||rC(e)?!0:a.input.maskAll?!ur(e,a.input.unmaskingSelector):!!(ur(e,a.input.maskingSelector)||ur(e,dC))}function wpe(e,a){return e?a.text._legacyClassRegex&&Hp(e,a.text._legacyClassRegex)?!0:a.text.maskAll?!ur(e,a.text.unmaskingSelector):!!(ur(e,a.text.maskingSelector)||ur(e,dC)):!1}var Ei=pi("network-plugin");function vc(e){return Math.round(Date.now()-e.performance.now())}var Pu={initiatorTypes:["audio","beacon","body","css","early-hint","embed","fetch","frame","iframe","icon","image","img","input","link","navigation","object","ping","script","track","video","xmlhttprequest"],ignoreRequestFn:function(){return!1},recordHeaders:{request:[],response:[]},recordBodyUrls:{request:[],response:[]},recordInitialRequests:!1};function Ape(e){return e.entryType==="navigation"}function vm(e){return e.entryType==="resource"}function Spe(e,a){for(var n=e.length,t=n-1;t>=0;t-=1)if(a(e[t]))return e[t]}function uC(e,a,n){if(!(a in e)||typeof e[a]!="function")return function(){};var t=e[a],i=n(t);return e[a]=i,function(){e[a]=t}}var _u=1024*1024;function pC(e){return!e||typeof e!="string"?e:e.length>_u?(Ei.error("Body truncated from "+e.length+" to "+_u+" characters"),e.substring(0,_u)+"... [truncated]"):e}function Cpe(e,a,n){if(!a.PerformanceObserver)return Ei.error("PerformanceObserver not supported"),function(){};if(n.recordInitialRequests){var t=a.performance.getEntries().filter(function(r){return Ape(r)||vm(r)&&n.initiatorTypes.includes(r.initiatorType)});e({requests:t.map(function(r){return{url:r.name,initiatorType:r.initiatorType,status:"responseStatus"in r?r.responseStatus:void 0,startTime:Math.round(r.startTime),endTime:Math.round(r.responseEnd),timeOrigin:vc(a)}}),isInitial:!0})}var i=new a.PerformanceObserver(function(r){var o=r.getEntries().filter(function(s){return vm(s)&&n.initiatorTypes.includes(s.initiatorType)&&s.initiatorType!=="xmlhttprequest"&&s.initiatorType!=="fetch"});e({requests:o.map(function(s){return{url:s.name,initiatorType:s.initiatorType,status:"responseStatus"in s?s.responseStatus:void 0,startTime:Math.round(s.startTime),endTime:Math.round(s.responseEnd),timeOrigin:vc(a)}})})});return i.observe({entryTypes:["navigation","resource"]}),function(){i.disconnect()}}function bc(e,a,n){return!a[e]||a[e].length===0?!1:a[e].includes(n.toLowerCase())}function yc(e,a,n){return!a[e]||a[e].length===0?!1:mc(n,a[e])}function Kb(e){if(e==null)return null;var a;if(typeof e=="string")a=e;else if(e instanceof Document)a=e.textContent;else if(e instanceof FormData)a=k.HTTPBuildQuery(e);else if(k.isObject(e))try{a=JSON.stringify(e)}catch{return"Failed to stringify response object"}else return"Cannot read body of type "+typeof e;return pC(a)}function Zb(e){return new Promise(function(a){var n=setTimeout(function(){a("Timeout while trying to read body")},500);try{e.clone().text().then(function(t){clearTimeout(n),a(pC(t))},function(t){clearTimeout(n),a("Failed to read body: "+String(t))})}catch(t){clearTimeout(n),a("Failed to read body: "+String(t))}})}function kh(e,a,n,t,i,r){if(r===void 0&&(r=0),r>10)return Ei.error("Cannot find performance entry"),Promise.resolve(null);var o=e.performance.getEntriesByName(n),s=Spe(o,function(l){return vm(l)&&l.initiatorType===a&&(!t||l.startTime>=t)&&(!i||l.startTime<=i)});return s?Promise.resolve(s):new Promise(function(l){setTimeout(l,50*r)}).then(function(){return kh(e,a,n,t,i,r+1)})}function Dpe(e,a,n){if(!n.initiatorTypes.includes("xmlhttprequest"))return function(){};var t=uC(a.XMLHttpRequest.prototype,"open",function(i){return function(r,o,s,l,d){s===void 0&&(s=!0);var p=this,u=new Request(o,{method:r}),g={},b,v,A={},f=p.setRequestHeader.bind(p);p.setRequestHeader=function(C,T){return bc("request",n.recordHeaders,C)&&(A[C]=T),f(C,T)},g.requestHeaders=A;var S=p.send.bind(p);p.send=function(C){return yc("request",n.recordBodyUrls,u.url)&&(g.requestBody=Kb(C)),b=a.performance.now(),S(C)},p.addEventListener("readystatechange",function(){if(p.readyState===p.DONE){v=a.performance.now();var C={},T=p.getAllResponseHeaders();if(T){var E=T.trim().split(/[\r\n]+/);E.forEach(function(P){if(P){var I=P.indexOf(": ");if(I!==-1){var L=P.substring(0,I),N=P.substring(I+2);L&&bc("response",n.recordHeaders,L)&&(C[L]=N)}}})}g.responseHeaders=C,yc("response",n.recordBodyUrls,u.url)&&(g.responseBody=Kb(p.response)),kh(a,"xmlhttprequest",u.url,b,v).then(function(P){if(!P){Ei.error("Failed to get performance entry for XHR request to "+u.url);return}var I={url:P.name,method:u.method,initiatorType:P.initiatorType,status:p.status,startTime:Math.round(P.startTime),endTime:Math.round(P.responseEnd),timeOrigin:vc(a),requestHeaders:g.requestHeaders,requestBody:g.requestBody,responseHeaders:g.responseHeaders,responseBody:g.responseBody};e({requests:[I]})}).catch(function(P){Ei.error("Error recording XHR request to "+u.url+": "+String(P))})}}),i.call(p,r,o,s,l,d)}});return function(){t()}}function Tpe(e,a,n){if(!n.initiatorTypes.includes("fetch"))return function(){};var t=uC(a,"fetch",function(i){return function(){var r=new Request(arguments[0],arguments[1]),o,s={},l,d,p,u=Promise.resolve(void 0),g=Promise.resolve(void 0);try{var b={};r.headers.forEach(function(v,A){bc("request",n.recordHeaders,A)&&(b[A]=v)}),s.requestHeaders=b,yc("request",n.recordBodyUrls,r.url)&&(u=Zb(r).then(function(v){s.requestBody=v})),l=a.performance.now(),p=i.apply(a,arguments).then(function(v){o=v,d=a.performance.now();var A={};return o.headers.forEach(function(f,S){bc("response",n.recordHeaders,S)&&(A[S]=f)}),s.responseHeaders=A,yc("response",n.recordBodyUrls,r.url)&&(g=Zb(o).then(function(f){s.responseBody=f})),o})}catch(v){p=Promise.reject(v)}return Promise.all([u,g,p]).then(function(){return kh(a,"fetch",r.url,l,d)}).then(function(v){if(!v){Ei.error("Failed to get performance entry for fetch request to "+r.url);return}var A={url:v.name,method:r.method,initiatorType:v.initiatorType,status:o?o.status:void 0,startTime:Math.round(v.startTime),endTime:Math.round(v.responseEnd),timeOrigin:vc(a),requestHeaders:s.requestHeaders,requestBody:s.requestBody,responseHeaders:s.responseHeaders,responseBody:s.responseBody};e({requests:[A]})}).catch(function(v){Ei.error("Error recording fetch request to "+r.url+": "+String(v))}),p}});return function(){t()}}function Epe(e,a,n){if(!("performance"in a))return function(){};var t=Object.assign({},Pu.recordHeaders,n.recordHeaders||{}),i=Object.assign({},Pu.recordBodyUrls,n.recordBodyUrls||{});n=Object.assign({},n,{recordHeaders:t,recordBodyUrls:i});var r=Object.assign({},Pu,n),o=function(p){var u=p.requests.filter(function(g){var b=mc(g.url,r.ignoreRequestUrls||[]);return!b&&!r.ignoreRequestFn(g)});(u.length>0||p.isInitial)&&e(Object.assign({},p,{requests:u}))},s=Cpe(o,a,r),l=Dpe(o,a,r),d=Tpe(o,a,r);return function(){s(),l(),d()}}var Ppe="rrweb/network@1.mp",_pe=function(e){return{name:Ppe,observer:Epe,options:e}},pr=pi("recorder"),xpe=z.CompressionStream,Ipe={batch_size:1e3,batch_flush_interval_ms:10*1e3,batch_request_timeout_ms:90*1e3,batch_autostart:!0},Rpe=new Set([ve.MouseMove,ve.MouseInteraction,ve.Scroll,ve.ViewportResize,ve.Input,ve.TouchMove,ve.MediaInteraction,ve.Drag,ve.Selection]);function zpe(e){return e.type===Re.IncrementalSnapshot&&Rpe.has(e.data.source)}var vt=function(e){this._mixpanel=e.mixpanelInstance,this._onIdleTimeout=e.onIdleTimeout||Qn,this._onMaxLengthReached=e.onMaxLengthReached||Qn,this._onBatchSent=e.onBatchSent||Qn,this._rrwebRecord=e.rrwebRecord||null,this._stopRecording=null,this.replayId=e.replayId,this.batchStartUrl=e.batchStartUrl||null,this.replayStartUrl=e.replayStartUrl||null,this.idleExpires=e.idleExpires||null,this.maxExpires=e.maxExpires||null,this.replayStartTime=e.replayStartTime||null,this.lastEventTimestamp=e.lastEventTimestamp||null,this.seqNo=e.seqNo||0,this.idleTimeoutId=null,this.maxTimeoutId=null,this.recordMaxMs=mo,this.recordMinMs=0;var a=Oo(e.sharedLockStorage,!0)&&!this.getConfig("disable_persistence");this.batcherKey="__mprec_"+this.getConfig("name")+"_"+this.getConfig("token")+"_"+this.replayId,this.queueStorage=new Ma(JS),this.batcher=new fa(this.batcherKey,{errorReporter:this.reportError.bind(this),flushOnlyOnInterval:!0,libConfig:Ipe,sendRequestFunc:this.flushEventsWithOptOut.bind(this),queueStorage:this.queueStorage,sharedLockStorage:e.sharedLockStorage,usePersistence:a,stopAllBatchingFunc:this.stopRecording.bind(this),enqueueThrottleMs:Xue,sharedLockTimeoutMS:10*1e3})};vt.prototype.getUserIdInfo=function(){if(this.finalFlushUserIdInfo)return this.finalFlushUserIdInfo;var e={distinct_id:String(this._mixpanel.get_distinct_id())},a=this._mixpanel.get_property("$device_id");a&&(e.$device_id=a);var n=this._mixpanel.get_property("$user_id");return n&&(e.$user_id=n),e};vt.prototype.unloadPersistedData=function(){return this.batcher.stop(),this.queueStorage.init().catch((function(){this.reportError("Error initializing IndexedDB storage for unloading persisted data.")}).bind(this)).then((function(){return this.getDurationMs()<this._getRecordMinMs()?this.queueStorage.removeItem(this.batcherKey):this.batcher.flush().then((function(){return this.queueStorage.removeItem(this.batcherKey)}).bind(this))}).bind(this))};vt.prototype.getConfig=function(e){return this._mixpanel.get_config(e)};vt.prototype.get_config=function(e){return this.getConfig(e)};vt.prototype.startRecording=function(e){if(this._rrwebRecord===null){this.reportError("rrweb record function not provided. ");return}if(this._stopRecording!==null){pr.log("Recording already in progress, skipping startRecording.");return}this.recordMaxMs=this.getConfig("record_max_ms"),this.recordMaxMs>mo&&(this.recordMaxMs=mo,pr.critical("record_max_ms cannot be greater than "+mo+"ms. Capping value.")),this.maxExpires||(this.maxExpires=new Date().getTime()+this.recordMaxMs),this.recordMinMs=this._getRecordMinMs(),this.replayStartTime||(this.replayStartTime=new Date().getTime(),this.batchStartUrl=k.info.currentUrl(),this.replayStartUrl=k.info.currentUrl()),e||this.recordMinMs>0?this.batcher.stop():this.batcher.start();var a=(function(){clearTimeout(this.idleTimeoutId);var l=this.getConfig("record_idle_timeout_ms");this.idleTimeoutId=setTimeout(this._onIdleTimeout,l),this.idleExpires=new Date().getTime()+l}).bind(this);a();var n=this.getConfig("record_block_selector");(n===""||n===null)&&(n=void 0);var t=ype(this._mixpanel),i=[];if(this.getConfig("record_network")){var r=this.getConfig("record_network_options")||{},o=(r.ignoreRequestUrls||[]).slice();o.push(this._getApiRoute()),r.ignoreRequestUrls=o,i.push(_pe(r))}this.getConfig("record_console")&&i.push(Eue({stringifyOptions:{stringLengthLimit:1e3,numOfKeysLimit:50,depthOfLimit:2}}));try{this._stopRecording=this._rrwebRecord({emit:(function(l){if(this.idleExpires&&this.idleExpires<l.timestamp){this._onIdleTimeout();return}zpe(l)&&(this.batcher.stopped&&new Date().getTime()-this.replayStartTime>=this.recordMinMs&&this.batcher.start(),a()),this.__enqueuePromise=this.batcher.enqueue(l),(this.lastEventTimestamp===null||l.timestamp>this.lastEventTimestamp)&&(this.lastEventTimestamp=l.timestamp)}).bind(this),blockClass:this.getConfig("record_block_class"),blockSelector:n,collectFonts:this.getConfig("record_collect_fonts"),dataURLOptions:{type:"image/webp",quality:.6},maskAllInputs:!0,maskTextSelector:"*",maskInputFn:this._getMaskFn(kpe,t),maskTextFn:this._getMaskFn(wpe,t),recordCanvas:this.getConfig("record_canvas"),sampling:{canvas:15},plugins:i})}catch(l){this.reportError("Unexpected error when starting rrweb recording.",l)}if(typeof this._stopRecording!="function"){this.reportError("rrweb failed to start, skipping this recording."),this._stopRecording=null,this.stopRecording();return}var s=this.maxExpires-new Date().getTime();this.maxTimeoutId=setTimeout(this._onMaxLengthReached.bind(this),s)};vt.prototype.stopRecording=function(e){if(this.finalFlushUserIdInfo=this.getUserIdInfo(),!this.isRrwebStopped()){try{this._stopRecording()}catch(n){this.reportError("Error with rrweb stopRecording",n)}this._stopRecording=null}var a;return this.batcher.stopped?a=this.batcher.clear():e||(a=this.batcher.flush()),this.batcher.stop(),clearTimeout(this.idleTimeoutId),clearTimeout(this.maxTimeoutId),a};vt.prototype.isRrwebStopped=function(){return this._stopRecording===null};vt.prototype.flushEventsWithOptOut=function(e,a,n){var t=(function(i){i===0&&(this.stopRecording(),n({error:"Tracking has been opted out, stopping recording."}))}).bind(this);this._flushEvents(e,a,n,t)};vt.prototype.serialize=function(){var e;try{e=this._mixpanel.get_tab_id()}catch(a){this.reportError("Error getting tab ID for serialization ",a),e=null}return{replayId:this.replayId,seqNo:this.seqNo,replayStartTime:this.replayStartTime,batchStartUrl:this.batchStartUrl,replayStartUrl:this.replayStartUrl,lastEventTimestamp:this.lastEventTimestamp,idleExpires:this.idleExpires,maxExpires:this.maxExpires,tabId:e}};vt.deserialize=function(e,a){var n=new vt(k.extend({},a,{replayId:e.replayId,batchStartUrl:e.batchStartUrl,replayStartUrl:e.replayStartUrl,idleExpires:e.idleExpires,maxExpires:e.maxExpires,replayStartTime:e.replayStartTime,lastEventTimestamp:e.lastEventTimestamp,seqNo:e.seqNo,sharedLockStorage:a.sharedLockStorage}));return n};vt.prototype._getApiRoute=function(){return this.getConfig("api_routes").record};vt.prototype._sendRequest=function(e,a,n,t){var i=(function(o,s){o.status===200&&this.replayId===e&&(this.seqNo++,this.batchStartUrl=k.info.currentUrl()),this._onBatchSent(),t({status:0,httpStatusCode:o.status,responseBody:s,retryAfter:o.headers.get("Retry-After")})}).bind(this),r=this._mixpanel.get_api_host&&this._mixpanel.get_api_host("record")||this.getConfig("api_host");z.fetch(r+"/"+this._getApiRoute()+"?"+new URLSearchParams(a),{method:"POST",headers:{Authorization:"Basic "+btoa(this.getConfig("token")+":"),"Content-Type":"application/octet-stream"},body:n}).then(function(o){o.json().then(function(s){i(o,s)}).catch(function(s){t({error:s})})}).catch(function(o){t({error:o,httpStatusCode:0})})};vt.prototype._flushEvents=mi(function(e,a,n){var t=e.length;if(t>0){for(var i=this.replayId,r=1/0,o=-1/0,s=!1,l=0;l<t;l++)r=Math.min(r,e[l].timestamp),o=Math.max(o,e[l].timestamp),e[l].type===Re.FullSnapshot&&(s=!0);if(this.seqNo===0){if(!s){n({error:"First batch does not contain a full snapshot. Aborting recording."}),this.stopRecording(!0);return}this.replayStartTime=r}else this.replayStartTime||(this.reportError("Replay start time not set but seqNo is not 0. Using current batch start time as a fallback."),this.replayStartTime=r);var d=o-this.replayStartTime,p={$current_url:this.batchStartUrl,$lib_version:ea.LIB_VERSION,batch_start_time:r/1e3,mp_lib:"web",replay_id:i,replay_length_ms:d,replay_start_time:this.replayStartTime/1e3,replay_start_url:this.replayStartUrl,seq:this.seqNo},u=JSON.stringify(e);if(Object.assign(p,this.getUserIdInfo()),Uue(Ua,Cn.vendor,io)){var g=new Blob([u],{type:"application/json"}).stream(),b=g.pipeThrough(new xpe("gzip"));new Response(b).blob().then((function(v){p.format="gzip",this._sendRequest(i,p,v,n)}).bind(this))}else p.format="body",this._sendRequest(i,p,u,n)}});vt.prototype.reportError=function(e,a){pr.error.apply(pr.error,arguments);try{!a&&!(e instanceof Error)&&(e=new Error(e)),this.getConfig("error_reporter")(e,a)}catch(n){pr.error(n)}};vt.prototype.getDurationMs=function(){return this.replayStartTime===null?0:this.lastEventTimestamp===null?new Date().getTime()-this.replayStartTime:this.lastEventTimestamp-this.replayStartTime};vt.prototype._getRecordMinMs=function(){var e=this.getConfig("record_min_ms");return e>wu?(pr.critical("record_min_ms cannot be greater than "+wu+"ms. Capping value."),wu):e};vt.prototype._getMaskFn=function(e,a){return(function(n,t){if(!n.trim().length)return"";var i=!0;try{i=e(t,a)}catch(o){this.reportError("Error checking if text should be masked, defaulting to masked",o)}if(i){var r=Math.min(n.length,1e4);return"*".repeat(r)}else return n}).bind(this)};var Fn=function(e){this.idb=new Ma(mh),this.errorReporter=e.errorReporter,this.mixpanelInstance=e.mixpanelInstance,this.sharedLockStorage=e.sharedLockStorage};Fn.prototype.isPersistenceEnabled=function(){return!this.mixpanelInstance.get_config("disable_persistence")};Fn.prototype.handleError=function(e){this.errorReporter("IndexedDB error: ",e)};Fn.prototype.setActiveRecording=function(e){if(!this.isPersistenceEnabled())return we.resolve();var a=e.tabId;return a?this.idb.init().then((function(){return this.idb.setItem(a,e)}).bind(this)).catch(this.handleError.bind(this)):we.resolve()};Fn.prototype.getActiveRecording=function(){return this.isPersistenceEnabled()?this.idb.init().then((function(){return this.idb.getItem(this.mixpanelInstance.get_tab_id())}).bind(this)).then((function(e){return vh(e)?null:e}).bind(this)).catch(this.handleError.bind(this)):we.resolve(null)};Fn.prototype.clearActiveRecording=function(){return this.isPersistenceEnabled()?this.markActiveRecordingExpired():this.deleteActiveRecording()};Fn.prototype.markActiveRecordingExpired=function(){return this.getActiveRecording().then((function(e){if(e)return e.maxExpires=0,this.setActiveRecording(e)}).bind(this)).catch(this.handleError.bind(this))};Fn.prototype.deleteActiveRecording=function(){return this.idb.isInitialized()?this.idb.removeItem(this.mixpanelInstance.get_tab_id()).catch(this.handleError.bind(this)):we.resolve()};Fn.prototype.flushInactiveRecordings=function(){return this.isPersistenceEnabled()?this.idb.init().then((function(){return this.idb.getAll()}).bind(this)).then((function(e){var a=e.filter(function(n){return vh(n)}).map((function(n){var t=vt.deserialize(n,{mixpanelInstance:this.mixpanelInstance,sharedLockStorage:this.sharedLockStorage});return t.unloadPersistedData().then((function(){return this.idb.removeItem(n.tabId)}).bind(this)).catch(this.handleError.bind(this))}).bind(this));return we.all(a)}).bind(this)).catch(this.handleError.bind(this)):we.resolve([])};var ho=pi("recorder"),nn=function(e,a,n){this.mixpanelInstance=e,this.rrwebRecord=a||li,this.sharedLockStorage=n,this.recordingRegistry=new Fn({mixpanelInstance:this.mixpanelInstance,errorReporter:ho.error,sharedLockStorage:n}),this._flushInactivePromise=this.recordingRegistry.flushInactiveRecordings(),this.activeRecording=null,this.stopRecordingInProgress=!1};nn.prototype.startRecording=function(e){if(e=e||{},this.activeRecording&&!this.activeRecording.isRrwebStopped()){ho.log("Recording already in progress, skipping startRecording.");return}var a=(function(){ho.log("Idle timeout reached, restarting recording."),this.resetRecording()}).bind(this),n=(function(){ho.log("Max recording length reached, stopping recording."),this.resetRecording()}).bind(this),t=(function(){this.recordingRegistry.setActiveRecording(this.activeRecording.serialize()),this.__flushPromise=this.activeRecording.batcher._flushPromise}).bind(this),i={mixpanelInstance:this.mixpanelInstance,onBatchSent:t,onIdleTimeout:a,onMaxLengthReached:n,replayId:k.UUID(),rrwebRecord:this.rrwebRecord,sharedLockStorage:this.sharedLockStorage};return e.activeSerializedRecording?this.activeRecording=vt.deserialize(e.activeSerializedRecording,i):this.activeRecording=new vt(i),this.activeRecording.startRecording(e.shouldStopBatcher),this.recordingRegistry.setActiveRecording(this.activeRecording.serialize())};nn.prototype.stopRecording=function(){return this.stopRecordingInProgress=!0,this._stopCurrentRecording(!1,!0).then((function(){return this.recordingRegistry.clearActiveRecording()}).bind(this)).then((function(){this.stopRecordingInProgress=!1}).bind(this))};nn.prototype.pauseRecording=function(){return this._stopCurrentRecording(!1)};nn.prototype._stopCurrentRecording=function(e,a){if(this.activeRecording){var n=this.activeRecording.stopRecording(e);return a&&(this.activeRecording=null),n}return we.resolve()};nn.prototype.resumeRecording=function(e){return this.activeRecording&&this.activeRecording.isRrwebStopped()?(this.activeRecording.startRecording(!1),we.resolve(null)):this.recordingRegistry.getActiveRecording().then((function(a){return a&&!this.stopRecordingInProgress?this.startRecording({activeSerializedRecording:a}):e?this.startRecording({shouldStopBatcher:!1}):(ho.log("No resumable recording found."),null)}).bind(this))};nn.prototype.resetRecording=function(){this.stopRecording(),this.startRecording({shouldStopBatcher:!0})};nn.prototype.isRecording=function(){return this.activeRecording&&!this.activeRecording.isRrwebStopped()};nn.prototype.getActiveReplayId=function(){return this.isRecording()?this.activeRecording.replayId:null};Object.defineProperty(nn.prototype,"replayId",{get:function(){return this.getActiveReplayId()}});z[up]=nn;function Mpe(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var Il={exports:{}},Npe=Il.exports,Jb;function Fpe(){return Jb||(Jb=1,(function(e,a){(function(n,t){e.exports=t()})(Npe,function(){Array.isArray||(Array.isArray=function(r){return Object.prototype.toString.call(r)==="[object Array]"});function n(r){for(var o=[],s=0,l=r.length;s<l;s++)o.indexOf(r[s])===-1&&o.push(r[s]);return o}var t={},i={"==":function(r,o){return r==o},"===":function(r,o){return r===o},"!=":function(r,o){return r!=o},"!==":function(r,o){return r!==o},">":function(r,o){return r>o},">=":function(r,o){return r>=o},"<":function(r,o,s){return s===void 0?r<o:r<o&&o<s},"<=":function(r,o,s){return s===void 0?r<=o:r<=o&&o<=s},"!!":function(r){return t.truthy(r)},"!":function(r){return!t.truthy(r)},"%":function(r,o){return r%o},log:function(r){return r},in:function(r,o){return!o||typeof o.indexOf>"u"?!1:o.indexOf(r)!==-1},cat:function(){return Array.prototype.join.call(arguments,"")},substr:function(r,o,s){if(s<0){var l=String(r).substr(o);return l.substr(0,l.length+s)}return String(r).substr(o,s)},"+":function(){return Array.prototype.reduce.call(arguments,function(r,o){return parseFloat(r,10)+parseFloat(o,10)},0)},"*":function(){return Array.prototype.reduce.call(arguments,function(r,o){return parseFloat(r,10)*parseFloat(o,10)})},"-":function(r,o){return o===void 0?-r:r-o},"/":function(r,o){return r/o},min:function(){return Math.min.apply(this,arguments)},max:function(){return Math.max.apply(this,arguments)},merge:function(){return Array.prototype.reduce.call(arguments,function(r,o){return r.concat(o)},[])},var:function(r,o){var s=o===void 0?null:o,l=this;if(typeof r>"u"||r===""||r===null)return l;for(var d=String(r).split("."),p=0;p<d.length;p++)if(l==null||(l=l[d[p]],l===void 0))return s;return l},missing:function(){for(var r=[],o=Array.isArray(arguments[0])?arguments[0]:arguments,s=0;s<o.length;s++){var l=o[s],d=t.apply({var:l},this);(d===null||d==="")&&r.push(l)}return r},missing_some:function(r,o){var s=t.apply({missing:o},this);return o.length-s.length>=r?[]:s}};return t.is_logic=function(r){return typeof r=="object"&&r!==null&&!Array.isArray(r)&&Object.keys(r).length===1},t.truthy=function(r){return Array.isArray(r)&&r.length===0?!1:!!r},t.get_operator=function(r){return Object.keys(r)[0]},t.get_values=function(r){return r[t.get_operator(r)]},t.apply=function(r,o){if(Array.isArray(r))return r.map(function(f){return t.apply(f,o)});if(!t.is_logic(r))return r;var s=t.get_operator(r),l=r[s],d,p,u,g,b;if(Array.isArray(l)||(l=[l]),s==="if"||s=="?:"){for(d=0;d<l.length-1;d+=2)if(t.truthy(t.apply(l[d],o)))return t.apply(l[d+1],o);return l.length===d+1?t.apply(l[d],o):null}else if(s==="and"){for(d=0;d<l.length;d+=1)if(p=t.apply(l[d],o),!t.truthy(p))return p;return p}else if(s==="or"){for(d=0;d<l.length;d+=1)if(p=t.apply(l[d],o),t.truthy(p))return p;return p}else{if(s==="filter")return g=t.apply(l[0],o),u=l[1],Array.isArray(g)?g.filter(function(f){return t.truthy(t.apply(u,f))}):[];if(s==="map")return g=t.apply(l[0],o),u=l[1],Array.isArray(g)?g.map(function(f){return t.apply(u,f)}):[];if(s==="reduce")return g=t.apply(l[0],o),u=l[1],b=typeof l[2]<"u"?t.apply(l[2],o):null,Array.isArray(g)?g.reduce(function(f,S){return t.apply(u,{current:S,accumulator:f})},b):b;if(s==="all"){if(g=t.apply(l[0],o),u=l[1],!Array.isArray(g)||!g.length)return!1;for(d=0;d<g.length;d+=1)if(!t.truthy(t.apply(u,g[d])))return!1;return!0}else if(s==="none"){if(g=t.apply(l[0],o),u=l[1],!Array.isArray(g)||!g.length)return!0;for(d=0;d<g.length;d+=1)if(t.truthy(t.apply(u,g[d])))return!1;return!0}else if(s==="some"){if(g=t.apply(l[0],o),u=l[1],!Array.isArray(g)||!g.length)return!1;for(d=0;d<g.length;d+=1)if(t.truthy(t.apply(u,g[d])))return!0;return!1}}if(l=l.map(function(f){return t.apply(f,o)}),i.hasOwnProperty(s)&&typeof i[s]=="function")return i[s].apply(o,l);if(s.indexOf(".")>0){var v=String(s).split("."),A=i;for(d=0;d<v.length;d++){if(!A.hasOwnProperty(v[d]))throw new Error("Unrecognized operation "+s+" (failed at "+v.slice(0,d+1).join(".")+")");A=A[v[d]]}return A.apply(o,l)}throw new Error("Unrecognized operation "+s)},t.uses_data=function(r){var o=[];if(t.is_logic(r)){var s=t.get_operator(r),l=r[s];Array.isArray(l)||(l=[l]),s==="var"?o.push(l[0]):l.forEach(function(d){o.push.apply(o,t.uses_data(d))})}return n(o)},t.add_operation=function(r,o){i[r]=o},t.rm_operation=function(r){delete i[r]},t.rule_like=function(r,o){if(o===r||o==="@")return!0;if(o==="number")return typeof r=="number";if(o==="string")return typeof r=="string";if(o==="array")return Array.isArray(r)&&!t.is_logic(r);if(t.is_logic(o)){if(t.is_logic(r)){var s=t.get_operator(o),l=t.get_operator(r);if(s==="@"||s===l)return t.rule_like(t.get_values(r,!1),t.get_values(o,!1))}return!1}if(Array.isArray(o))if(Array.isArray(r)){if(o.length!==r.length)return!1;for(var d=0;d<o.length;d+=1)if(!t.rule_like(r[d],o[d]))return!1;return!0}else return!1;return!1},t})})(Il)),Il.exports}var Lpe=Fpe(),jpe=Mpe(Lpe),Ope=function(e,a,n){if(e!==n.event_name)return{matches:!1};var t=n.property_filters,i=!0;if(t&&!k.isEmptyObject(t))try{i=jpe.apply(t,a||{})}catch(r){return{matches:!1,error:r.toString()}}return{matches:i}},mC={};mC.eventMatchesCriteria=Ope;z[Ea]=Promise.resolve(mC);var Bpe=30,Upe=1e3,qpe=4,Vpe=!1;function gC(){this.clicks=[]}gC.prototype.isRageClick=function(e,a){a=a||{};var n=a.threshold_px||Bpe,t=a.timeout_ms||Upe,i=a.click_count||qpe,r=a.interactive_elements_only||Vpe;if(r){var o=cC(e);if(!o||sC(o))return!1}var s=Date.now(),l=e.pageX,d=e.pageY,p=this.clicks[this.clicks.length-1];if(p&&s-p.timestamp<t&&Math.sqrt(Math.pow(l-p.x,2)+Math.pow(d-p.y,2))<n){if(this.clicks.push({x:l,y:d,timestamp:s}),this.clicks.length>=i)return this.clicks=[],!0}else this.clicks=[{x:l,y:d,timestamp:s}];return!1};function jr(e,a){this.changeCallback=e||function(){},this.observerConfig=a,this.observedShadowRoots=null,this.shadowObservers=[]}jr.prototype.getEventTarget=function(e){if(this.observedShadowRoots)return cC(e)};jr.prototype.observeFromEvent=function(e){if(this.observedShadowRoots)for(var a=lC(e),n=0;n<a.length;n++){var t=a[n];t&&t.shadowRoot&&this.observeShadowRoot(t.shadowRoot)}};jr.prototype.observeShadowRoot=function(e){if(!(!this.observedShadowRoots||this.observedShadowRoots.has(e))){var a=this;try{this.observedShadowRoots.add(e);var n=new window.MutationObserver(function(){a.changeCallback()});n.observe(e,this.observerConfig),this.shadowObservers.push(n)}catch(t){Ze.critical("Error while observing shadow root",t)}}};jr.prototype.start=function(){if(!this.observedShadowRoots){if(!mpe()){Ze.critical("Shadow DOM observation unavailable: WeakSet not supported");return}this.observedShadowRoots=new WeakSet}};jr.prototype.stop=function(){if(this.observedShadowRoots){for(var e=0;e<this.shadowObservers.length;e++)try{this.shadowObservers[e].disconnect()}catch(a){Ze.critical("Error while disconnecting shadow DOM observer",a)}this.shadowObservers=[],this.observedShadowRoots=null}};var $pe=500,Wpe=[Bo,epe,hc,tpe,ape],Gpe=[vd],Hpe=[mm],Qb={characterData:!0,childList:!0,subtree:!0,attributes:!0,attributeFilter:["style","class","hidden","checked","selected","value","display","visibility"]};function rn(e){this.eventListeners=[],this.mutationObserver=null,this.shadowDOMObserver=null,this.isTracking=!1,this.lastChangeEventTimestamp=0,this.pendingClicks=[],this.onDeadClickCallback=e,this.processingActive=!1,this.processingTimeout=null}rn.prototype.addClick=function(e){var a=this.shadowDOMObserver&&this.shadowDOMObserver.getEventTarget(e);return a||(a=e.target||e.srcElement),!a||sC(a)?!1:(this.shadowDOMObserver&&this.shadowDOMObserver.observeFromEvent(e),this.pendingClicks.push({element:a,event:e,timestamp:Date.now()}),!0)};rn.prototype.trackClick=function(e,a){if(!this.isTracking)return!1;var n=this.addClick(e);return n&&this.triggerProcessing(a),n};rn.prototype.getDeadClicks=function(e){if(this.pendingClicks.length===0)return[];var a=e.timeout_ms,n=Date.now(),t=this.pendingClicks.slice();this.pendingClicks=[];for(var i=[],r=0;r<t.length;r++){var o=t[r];n-o.timestamp>=a?this.hasChangesAfter(o.timestamp)||i.push(o):this.pendingClicks.push(o)}return i};rn.prototype.hasChangesAfter=function(e){return this.lastChangeEventTimestamp>=e-100};rn.prototype.recordChangeEvent=function(){this.lastChangeEventTimestamp=Date.now()};rn.prototype.triggerProcessing=function(e){this.processingActive||(this.processingActive=!0,this.processRecursively(e))};rn.prototype.processRecursively=function(e){if(!this.isTracking||!this.onDeadClickCallback){this.processingActive=!1;return}var a=e.timeout_ms,n=this;this.processingTimeout=setTimeout(function(){if(n.processingActive){for(var t=n.getDeadClicks(e),i=0;i<t.length;i++)n.onDeadClickCallback(t[i].event);n.pendingClicks.length>0?n.processRecursively(e):n.processingActive=!1}},a)};rn.prototype.startTracking=function(){if(!this.isTracking){this.isTracking=!0;var e=this;Wpe.forEach(function(n){var t=function(){e.recordChangeEvent()};document.addEventListener(n,t,{capture:!0,passive:!0}),e.eventListeners.push({target:document,event:n,handler:t,options:{capture:!0,passive:!0}})}),Hpe.forEach(function(n){var t=function(){e.recordChangeEvent()};window.addEventListener(n,t),e.eventListeners.push({target:window,event:n,handler:t})}),Gpe.forEach(function(n){var t=function(){e.recordChangeEvent()};window.addEventListener(n,t,{passive:!0}),e.eventListeners.push({target:window,event:n,handler:t,options:{passive:!0}})});var a=function(){e.recordChangeEvent()};if(document.addEventListener("selectionchange",a),e.eventListeners.push({target:document,event:"selectionchange",handler:a}),window.MutationObserver)try{this.mutationObserver=new window.MutationObserver(function(){e.recordChangeEvent()}),this.mutationObserver.observe(document.body||document.documentElement,Qb)}catch(n){Ze.critical("Error while setting up mutation observer",n)}if(window.customElements)try{this.shadowDOMObserver=new jr(function(){e.recordChangeEvent()},Qb),this.shadowDOMObserver.start()}catch(n){Ze.critical("Error while setting up shadow DOM observer",n),this.shadowDOMObserver=null}}};rn.prototype.stopTracking=function(){if(this.isTracking){this.isTracking=!1,this.pendingClicks=[],this.lastChangeEventTimestamp=0,this.processingActive=!1,this.processingTimeout&&(clearTimeout(this.processingTimeout),this.processingTimeout=null);for(var e=0;e<this.eventListeners.length;e++){var a=this.eventListeners[e];try{a.target.removeEventListener(a.event,a.handler,a.options)}catch(n){Ze.critical("Error while removing event listener",n)}}if(this.eventListeners=[],this.mutationObserver){try{this.mutationObserver.disconnect()}catch(n){Ze.critical("Error while disconnecting mutation observer",n)}this.mutationObserver=null}if(this.shadowDOMObserver){try{this.shadowDOMObserver.stop()}catch(n){Ze.critical("Error while stopping shadow DOM observer",n)}this.shadowDOMObserver=null}}};var hC="autocapture",Ype="track_pageview",fC="full-url",Kpe="url-with-path-and-query-string",Zpe="url-with-path",Jpe="allow_element_callback",vC="allow_selectors",bC="allow_url_regexes",yC="block_attrs",kC="block_element_callback",wC="block_selectors",AC="block_url_regexes",SC="capture_extra_attrs",CC="capture_text_content",DC="scroll_capture_all",TC="scroll_depth_percent_checkpoints",kc="click",wc="dead_click",bm="input",EC="pageview",Ac="rage_click",ym="scroll",bd="page_leave",km="submit",Et={};Et[vC]=[];Et[bC]=[];Et[yC]=[];Et[kC]=null;Et[wC]=[];Et[AC]=[];Et[SC]=[];Et[CC]=!1;Et[DC]=!1;Et[TC]=[25,50,75,100];Et[kc]=!0;Et[wc]=!0;Et[bm]=!0;Et[EC]=fC;Et[Ac]=!0;Et[ym]=!0;Et[bd]=!1;Et[km]=!0;var Uo={$mp_autocapture:!0},PC="$mp_click",_C="$mp_dead_click",Qpe="$mp_input_change",xC="$mp_rage_click",Xpe="$mp_scroll",eme="$mp_submit",tme="$mp_page_leave",wt=function(e){this.mp=e,this.maxScrollViewDepth=0,this.hasTrackedScrollSession=!1,this.previousScrollHeight=0};wt.prototype.init=function(){if(!ppe()){Ze.critical("Autocapture unavailable: missing required DOM APIs");return}this.initPageListeners(),this.initPageviewTracking(),this.initClickTracking(),this.initDeadClickTracking(),this.initInputTracking(),this.initScrollTracking(),this.initSubmitTracking(),this.initRageClickTracking(),this.initPageLeaveTracking()};wt.prototype.getFullConfig=function(){var e=this.mp.get_config(hC);return e?k.isObject(e)?k.extend({},Et,e):Et:{}};wt.prototype.getConfig=function(e){return this.getFullConfig()[e]};wt.prototype.currentUrlBlocked=function(){var e=k.info.currentUrl(),a=this.getConfig(bC)||[];if(a.length)try{return!mc(e,a)}catch(t){return Ze.critical("Error while checking block URL regexes: ",t),!0}var n=this.getConfig(AC)||[];if(!n||!n.length)return!1;try{return mc(e,n)}catch(t){return Ze.critical("Error while checking block URL regexes: ",t),!0}};wt.prototype.pageviewTrackingConfig=function(){return this.mp.get_config(hC)?this.getConfig(EC):this.mp.get_config(Ype)};wt.prototype.trackDomEvent=function(e,a){if(!this.currentUrlBlocked()){var n=this.mp.is_recording_heatmap_data()&&(a===PC&&!this.getConfig(kc)||a===xC&&!this._getClickTrackingConfig(Ac)||a===_C&&!this._getClickTrackingConfig(wc)),t=dpe(e,{allowElementCallback:this.getConfig(Jpe),allowSelectors:this.getConfig(vC),blockAttrs:this.getConfig(yC),blockElementCallback:this.getConfig(kC),blockSelectors:this.getConfig(wC),captureExtraAttrs:this.getConfig(SC),captureTextContent:this.getConfig(CC),capturedForHeatMap:n});t&&(k.extend(t,Uo),this.mp.track(a,t))}};wt.prototype.initPageListeners=function(){if(z.removeEventListener(qb,this.listenerPopstate),z.removeEventListener(mm,this.listenerHashchange),!(!this.pageviewTrackingConfig()&&!this.getConfig(bd)&&!this.mp.get_config("record_heatmap_data"))){this.listenerPopstate=function(){z.dispatchEvent(new Event(Kn))},this.listenerHashchange=function(){z.dispatchEvent(new Event(Kn))},z.addEventListener(qb,this.listenerPopstate),z.addEventListener(mm,this.listenerHashchange);var e=z.history.pushState;typeof e=="function"&&(z.history.pushState=function(n,t,i){e.call(z.history,n,t,i),z.dispatchEvent(new Event(Kn))});var a=z.history.replaceState;typeof a=="function"&&(z.history.replaceState=function(n,t,i){a.call(z.history,n,t,i),z.dispatchEvent(new Event(Kn))})}};wt.prototype._getClickTrackingConfig=function(e){var a=this.getConfig(e);return a?a===!0?{}:typeof a=="object"?a:{}:null};wt.prototype._trackPageLeave=function(e,a,n){if(!this.hasTrackedScrollSession&&!(!this.getConfig(bd)&&!this.mp.is_recording_heatmap_data())){this.hasTrackedScrollSession=!0;var t=Math.max(be.documentElement.clientHeight,z.innerHeight||0),i=Math.round(Math.max(this.maxScrollViewDepth-t,0)/(n-t)*100),r=Math.round(t/n*100);n<=t&&(i=100,r=100);var o=k.extend({$max_scroll_view_depth:this.maxScrollViewDepth,$max_scroll_percentage:i,$fold_line_percentage:r,$scroll_height:n,$event_type:e.type,$current_url:a||k.info.currentUrl(),$viewportHeight:t,$viewportWidth:Math.max(be.documentElement.clientWidth,z.innerWidth||0),$captured_for_heatmap:this.mp.is_recording_heatmap_data()},Uo);this.mp.track(tme,o,{transport:"sendBeacon"})}};wt.prototype._initScrollDepthTracking=function(){if(z.removeEventListener(bh,this.listenerScrollDepth),z.removeEventListener(vd,this.listenerScrollDepth),!!this.mp.get_config("record_heatmap_data")){Ze.log("Initializing scroll depth tracking"),this.maxScrollViewDepth=Math.max(be.documentElement.clientHeight,z.innerHeight||0);var e=(function(){if(!this.currentUrlBlocked()){var n=Math.max(be.documentElement.clientHeight,z.innerHeight||0)+z.scrollY;n>this.maxScrollViewDepth&&(this.maxScrollViewDepth=n),this.previousScrollHeight=be.body.scrollHeight}}).bind(this),a=oC(e);this.listenerScrollDepth=a.listener,z.addEventListener(a.eventType,this.listenerScrollDepth)}};wt.prototype.initClickTracking=function(){z.removeEventListener(zn,this.listenerClick),!(!this.getConfig(kc)&&!this.mp.get_config("record_heatmap_data"))&&(Ze.log("Initializing click tracking"),this.listenerClick=(function(e){!this.getConfig(kc)&&!this.mp.is_recording_heatmap_data()||this.trackDomEvent(e,PC)}).bind(this),z.addEventListener(zn,this.listenerClick))};wt.prototype.initDeadClickTracking=function(){var e=this._getClickTrackingConfig(wc);if(!e&&!this.mp.get_config("record_heatmap_data")){this.stopDeadClickTracking();return}Ze.log("Initializing dead click tracking"),this._deadClickTracker||(this._deadClickTracker=new rn((function(a){this.trackDomEvent(a,_C)}).bind(this)),this._deadClickTracker.startTracking()),this.listenerDeadClick||(this.listenerDeadClick=(function(a){var n=this._getClickTrackingConfig(wc);if(!(!n&&!this.mp.is_recording_heatmap_data())&&!this.currentUrlBlocked()){var t=n||{};t.timeout_ms||(t.timeout_ms=$pe),this._deadClickTracker.trackClick(a,t)}}).bind(this),z.addEventListener(zn,this.listenerDeadClick))};wt.prototype.initInputTracking=function(){z.removeEventListener(Bo,this.listenerChange),this.getConfig(bm)&&(Ze.log("Initializing input tracking"),this.listenerChange=(function(e){this.getConfig(bm)&&this.trackDomEvent(e,Qpe)}).bind(this),z.addEventListener(Bo,this.listenerChange))};wt.prototype.initPageviewTracking=function(){if(z.removeEventListener(Kn,this.listenerLocationchange),!!this.pageviewTrackingConfig()){Ze.log("Initializing pageview tracking");var e="",a=!1;this.currentUrlBlocked()||(a=this.mp.track_pageview(Uo)),a&&(e=k.info.currentUrl()),this.listenerLocationchange=Tr((function(){if(!this.currentUrlBlocked()){var n=k.info.currentUrl(),t=!1,i=n.split("#")[0].split("?")[0]!==e.split("#")[0].split("?")[0],r=this.pageviewTrackingConfig();if(r===fC?t=n!==e:r===Kpe?t=n.split("#")[0]!==e.split("#")[0]:r===Zpe&&(t=i),t){var o=this.mp.track_pageview(Uo);o&&(e=n),i&&(this.lastScrollCheckpoint=0,Ze.log("Path change: re-initializing scroll depth checkpoints"))}}}).bind(this)),z.addEventListener(Kn,this.listenerLocationchange)}};wt.prototype.initRageClickTracking=function(){z.removeEventListener(zn,this.listenerRageClick);var e=this._getClickTrackingConfig(Ac);!e&&!this.mp.get_config("record_heatmap_data")||(Ze.log("Initializing rage click tracking"),this._rageClickTracker||(this._rageClickTracker=new gC),this.listenerRageClick=(function(a){var n=this._getClickTrackingConfig(Ac);!n&&!this.mp.is_recording_heatmap_data()||this.currentUrlBlocked()||this._rageClickTracker.isRageClick(a,n)&&this.trackDomEvent(a,xC)}).bind(this),z.addEventListener(zn,this.listenerRageClick))};wt.prototype.initScrollTracking=function(){if(z.removeEventListener(vd,this.listenerScroll),z.removeEventListener(bh,this.listenerScroll),!!this.getConfig(ym)){Ze.log("Initializing scroll tracking"),this.lastScrollCheckpoint=0;var e=(function(){if(this.getConfig(ym)&&!this.currentUrlBlocked()){var n=this.getConfig(DC),t=(this.getConfig(TC)||[]).slice().sort(function(p,u){return p-u}),i=z.scrollY,r=k.extend({$scroll_top:i},Uo);try{var o=be.body.scrollHeight,s=Math.round(i/(o-z.innerHeight)*100);if(r.$scroll_height=o,r.$scroll_percentage=s,s>this.lastScrollCheckpoint)for(var l=0;l<t.length;l++){var d=t[l];s>=d&&this.lastScrollCheckpoint<d&&(r.$scroll_checkpoint=d,this.lastScrollCheckpoint=d,n=!0)}}catch(p){Ze.critical("Error while calculating scroll percentage",p)}n&&this.mp.track(Xpe,r)}}).bind(this),a=oC(e);this.listenerScroll=a.listener,z.addEventListener(a.eventType,this.listenerScroll)}};wt.prototype.initSubmitTracking=function(){z.removeEventListener(hc,this.listenerSubmit),this.getConfig(km)&&(Ze.log("Initializing submit tracking"),this.listenerSubmit=(function(e){this.getConfig(km)&&this.trackDomEvent(e,eme)}).bind(this),z.addEventListener(hc,this.listenerSubmit))};wt.prototype.initPageLeaveTracking=function(){if(be.removeEventListener(Vb,this.listenerPageLeaveVisibilitychange),z.removeEventListener(Kn,this.listenerPageLeaveLocationchange),z.removeEventListener(Ub,this.listenerPageLoad),!(!this.getConfig(bd)&&!this.mp.get_config("record_heatmap_data"))){Ze.log("Initializing page visibility tracking."),this._initScrollDepthTracking();var e=k.info.currentUrl();this.listenerPageLoad=(function(){this.previousScrollHeight=be.body.scrollHeight}).bind(this),z.addEventListener(Ub,this.listenerPageLoad),this.listenerPageLeaveLocationchange=Tr((function(a){if(!this.currentUrlBlocked()){var n=k.info.currentUrl(),t=n!==e;t&&(this._trackPageLeave(a,e,this.previousScrollHeight),e=n,this.maxScrollViewDepth=Math.max(be.documentElement.clientHeight,z.innerHeight||0),this.previousScrollHeight=be.body.scrollHeight,this.hasTrackedScrollSession=!1)}}).bind(this)),z.addEventListener(Kn,this.listenerPageLeaveLocationchange),this.listenerPageLeaveVisibilitychange=(function(a){be.hidden&&this._trackPageLeave(a,e,this.previousScrollHeight)}).bind(this),be.addEventListener(Vb,this.listenerPageLeaveVisibilitychange)}};wt.prototype.stopDeadClickTracking=function(){this.listenerDeadClick&&(z.removeEventListener(zn,this.listenerDeadClick),this.listenerDeadClick=null),this._deadClickTracker&&(this._deadClickTracker.stopTracking(),this._deadClickTracker=null)};uh(wt);var IC=function(e,a){return z[Ea]&&typeof z[Ea].then=="function"||(z[Ea]=new Promise(function(n){e(a,n)}).then(function(){var n=z[Ea];if(n&&typeof n.then=="function")return n;throw new Error("targeting failed to load")}).catch(function(n){throw delete z[Ea],n})),z[Ea]},gt=pi("flags"),Sc="flags",Cc="context",wm={};wm[Cc]={};var ame=function(e,a){return e+":"+a},nme=function(e){return e.split(":")[0]},fe=function(e){this.fetch=z.fetch,this.getFullApiRoute=e.getFullApiRoute,this.getMpConfig=e.getConfigFunc,this.setMpConfig=e.setConfigFunc,this.getMpProperty=e.getPropertyFunc,this.track=e.trackingFunc,this.loadExtraBundle=e.loadExtraBundle||function(){},this.targetingSrc=e.targetingSrc||""};fe.prototype.init=function(){if(!this.minApisSupported()){gt.critical("Feature Flags unavailable: missing minimum required APIs");return}this.flags=null,this.fetchFlags(),this.trackedFeatures=new Set,this.pendingFirstTimeEvents={},this.activatedFirstTimeEvents={}};fe.prototype.getFullConfig=function(){var e=this.getMpConfig(Sc);return e?k.isObject(e)?k.extend({},wm,e):wm:{}};fe.prototype.getConfig=function(e){return this.getFullConfig()[e]};fe.prototype.isSystemEnabled=function(){return!!this.getMpConfig(Sc)};fe.prototype.updateContext=function(e,a){if(!this.isSystemEnabled())return gt.critical("Feature Flags not enabled, cannot update context"),Promise.resolve();var n=this.getMpConfig(Sc);k.isObject(n)||(n={});var t=a&&a.replace?{}:this.getConfig(Cc);return n[Cc]=k.extend({},t,e),this.setMpConfig(Sc,n),this.fetchFlags()};fe.prototype.areFlagsReady=function(){return this.isSystemEnabled()||gt.error("Feature Flags not enabled"),!!this.flags};fe.prototype.fetchFlags=function(){if(!this.isSystemEnabled())return Promise.resolve();var e=this.getMpProperty("distinct_id"),a=this.getMpProperty("$device_id"),n=ZS();gt.log("Fetching flags for distinct ID: "+e);var t=k.extend({distinct_id:e,device_id:a},this.getConfig(Cc)),i=new URLSearchParams;i.set("context",JSON.stringify(t)),i.set("token",this.getMpConfig("token")),i.set("mp_lib","web"),i.set("$lib_version",ea.LIB_VERSION);var r=this.getFullApiRoute()+"?"+i.toString();return this._fetchInProgressStartTime=Date.now(),this.fetchPromise=this.fetch.call(z,r,{method:"GET",headers:{Authorization:"Basic "+btoa(this.getMpConfig("token")+":"),traceparent:n}}).then((function(o){return this.markFetchComplete(),o.json().then((function(s){var l=s.flags;if(!l)throw new Error("No flags in API response");var d=new Map,p={};k.each(l,function(g,b){var v=!1,A=b+":";if(k.each(this.activatedFirstTimeEvents,function(S,C){C.startsWith(A)&&(v=!0)}),v){var f=this.flags&&this.flags.get(b);f&&d.set(b,f)}else d.set(b,{key:g.variant_key,value:g.variant_value,experiment_id:g.experiment_id,is_experiment_active:g.is_experiment_active,is_qa_tester:g.is_qa_tester})},this);var u=s.pending_first_time_events;u&&u.length>0&&k.each(u,function(g){var b=g.flag_key,v=ame(b,g.first_time_event_hash);this.activatedFirstTimeEvents[v]||(p[v]={flag_key:b,flag_id:g.flag_id,project_id:g.project_id,first_time_event_hash:g.first_time_event_hash,event_name:g.event_name,property_filters:g.property_filters,pending_variant:g.pending_variant})},this),this.activatedFirstTimeEvents&&k.each(this.activatedFirstTimeEvents,function(g,b){var v=nme(b);g&&!d.has(v)&&this.flags&&this.flags.has(v)&&d.set(v,this.flags.get(v))},this),this.flags=d,this.pendingFirstTimeEvents=p,this._traceparent=n,this._loadTargetingIfNeeded()}).bind(this)).catch((function(s){this.markFetchComplete(),gt.error(s)}).bind(this))}).bind(this)).catch((function(o){this.markFetchComplete(),gt.error(o)}).bind(this)),this.fetchPromise};fe.prototype.markFetchComplete=function(){if(!this._fetchInProgressStartTime){gt.error("Fetch in progress started time not set, cannot mark fetch complete");return}this._fetchStartTime=this._fetchInProgressStartTime,this._fetchCompleteTime=Date.now(),this._fetchLatency=this._fetchCompleteTime-this._fetchStartTime,this._fetchInProgressStartTime=null};fe.prototype._loadTargetingIfNeeded=function(){var e=!1;k.each(this.pendingFirstTimeEvents,function(a){a.property_filters&&!k.isEmptyObject(a.property_filters)&&(e=!0)}),e&&this.getTargeting().then(function(){gt.log("targeting loaded for property filter evaluation")})};fe.prototype.getTargeting=function(){return IC(this.loadExtraBundle.bind(this),this.targetingSrc).catch((function(e){gt.error("Failed to load targeting: "+e)}).bind(this))};fe.prototype.checkFirstTimeEvents=function(e,a){!this.pendingFirstTimeEvents||k.isEmptyObject(this.pendingFirstTimeEvents)||(z[Ea]&&k.isFunction(z[Ea].then)?z[Ea].then((function(n){this._processFirstTimeEventCheck(e,a,n)}).bind(this)).catch((function(){this._processFirstTimeEventCheck(e,a,null)}).bind(this)):this._processFirstTimeEventCheck(e,a,null))};fe.prototype._processFirstTimeEventCheck=function(e,a,n){k.each(this.pendingFirstTimeEvents,function(t,i){if(!this.activatedFirstTimeEvents[i]){var r=t.flag_key,o;if(!n&&t.property_filters&&!k.isEmptyObject(t.property_filters)){gt.warn('Skipping event check for "'+r+'" - property filters require targeting library');return}if(!n)o={matches:e===t.event_name,error:null};else{var s={event_name:t.event_name,property_filters:t.property_filters};o=n.eventMatchesCriteria(e,a,s)}if(o.error){gt.error('Error checking first-time event for flag "'+r+'": '+o.error);return}if(o.matches){gt.log('First-time event matched for flag "'+r+'": '+e);var l={key:t.pending_variant.variant_key,value:t.pending_variant.variant_value,experiment_id:t.pending_variant.experiment_id,is_experiment_active:t.pending_variant.is_experiment_active};this.flags.set(r,l),this.activatedFirstTimeEvents[i]=!0,this.recordFirstTimeEvent(t.flag_id,t.project_id,t.first_time_event_hash)}}},this)};fe.prototype.getFirstTimeEventApiRoute=function(e){return this.getFullApiRoute()+"/"+e+"/first-time-events"};fe.prototype.recordFirstTimeEvent=function(e,a,n){var t=this.getMpProperty("distinct_id"),i=ZS(),r=new URLSearchParams;r.set("mp_lib","web"),r.set("$lib_version",ea.LIB_VERSION);var o=this.getFirstTimeEventApiRoute(e)+"?"+r.toString(),s={distinct_id:t,project_id:a,first_time_event_hash:n};gt.log("Recording first-time event for flag: "+e),this.fetch.call(z,o,{method:"POST",headers:{"Content-Type":"application/json",Authorization:"Basic "+btoa(this.getMpConfig("token")+":"),traceparent:i},body:JSON.stringify(s)}).catch(function(l){gt.error("Failed to record first-time event for flag "+e+": "+l)})};fe.prototype.getVariant=function(e,a){return this.fetchPromise?this.fetchPromise.then((function(){return this.getVariantSync(e,a)}).bind(this)).catch(function(n){return gt.error(n),a}):new Promise(function(n){gt.critical("Feature Flags not initialized"),n(a)})};fe.prototype.getVariantSync=function(e,a){if(!this.areFlagsReady())return gt.log("Flags not loaded yet"),a;var n=this.flags.get(e);return n?(this.trackFeatureCheck(e,n),n):(gt.log('No flag found: "'+e+'"'),a)};fe.prototype.getVariantValue=function(e,a){return this.getVariant(e,{value:a}).then(function(n){return n.value}).catch(function(n){return gt.error(n),a})};fe.prototype.getFeatureData=function(e,a){return gt.critical("mixpanel.flags.get_feature_data() is deprecated and will be removed in a future release. Use mixpanel.flags.get_variant_value() instead."),this.getVariantValue(e,a)};fe.prototype.getVariantValueSync=function(e,a){return this.getVariantSync(e,{value:a}).value};fe.prototype.isEnabled=function(e,a){return this.getVariantValue(e).then((function(){return this.isEnabledSync(e,a)}).bind(this)).catch(function(n){return gt.error(n),a})};fe.prototype.isEnabledSync=function(e,a){a=a||!1;var n=this.getVariantValueSync(e,a);return n!==!0&&n!==!1&&(gt.error('Feature flag "'+e+'" value: '+n+" is not a boolean; returning fallback value: "+a),n=a),n};fe.prototype.trackFeatureCheck=function(e,a){if(!this.trackedFeatures.has(e)){this.trackedFeatures.add(e);var n={"Experiment name":e,"Variant name":a.key,$experiment_type:"feature_flag","Variant fetch start time":new Date(this._fetchStartTime).toISOString(),"Variant fetch complete time":new Date(this._fetchCompleteTime).toISOString(),"Variant fetch latency (ms)":this._fetchLatency,"Variant fetch traceparent":this._traceparent};a.experiment_id!=="undefined"&&(n.$experiment_id=a.experiment_id),a.is_experiment_active!=="undefined"&&(n.$is_experiment_active=a.is_experiment_active),a.is_qa_tester!=="undefined"&&(n.$is_qa_tester=a.is_qa_tester),this.track("$experiment_started",n)}};fe.prototype.minApisSupported=function(){return!!this.fetch&&typeof Promise<"u"&&typeof Map<"u"&&typeof Set<"u"};uh(fe);fe.prototype.are_flags_ready=fe.prototype.areFlagsReady;fe.prototype.get_variant=fe.prototype.getVariant;fe.prototype.get_variant_sync=fe.prototype.getVariantSync;fe.prototype.get_variant_value=fe.prototype.getVariantValue;fe.prototype.get_variant_value_sync=fe.prototype.getVariantValueSync;fe.prototype.is_enabled=fe.prototype.isEnabled;fe.prototype.is_enabled_sync=fe.prototype.isEnabledSync;fe.prototype.update_context=fe.prototype.updateContext;fe.prototype.get_feature_data=fe.prototype.getFeatureData;fe.prototype.getTargeting=fe.prototype.getTargeting;var ta=function(e){this.mixpanelInstance=e.mixpanelInstance,this.getMpConfig=e.getConfigFunc,this.getTabId=e.getTabIdFunc,this.reportError=e.reportErrorFunc,this.getDistinctId=e.getDistinctIdFunc,this.loadExtraBundle=e.loadExtraBundle,this.recorderSrc=e.recorderSrc,this.targetingSrc=e.targetingSrc,this.libBasePath=e.libBasePath,this._recorder=null};ta.prototype.shouldLoadRecorder=function(){if(this.getMpConfig("disable_persistence"))return ye.log("Load recorder check skipped due to disable_persistence config"),we.resolve(!1);var e=new Ma(mh),a=this.getTabId();return e.init().then(function(){return e.getAll()}).then(function(n){for(var t=0;t<n.length;t++)if(vh(n[t])||n[t].tabId===a)return!0;return!1}).catch(k.bind(function(n){return this.reportError("Error checking recording registry",n),!1},this))};ta.prototype.checkAndStartSessionRecording=function(e,a){if(!z.MutationObserver)return ye.critical("Browser does not support MutationObserver; skipping session recording"),we.resolve();var n=k.bind(function(r){return new we(k.bind(function(o){var s=Tr(k.bind(function(){this._recorder=this._recorder||new z[up](this.mixpanelInstance),this._recorder.resumeRecording(r),o()},this));if(k.isUndefined(z[up])){var l=this.recorderSrc||this.libBasePath+$ne;this.loadExtraBundle(l,s)}else s()},this))},this),t=k.isUndefined(a)?this.getMpConfig("record_sessions_percent"):a,i=t>0&&Math.random()*100<=t;return e||i?n(!0):this.shouldLoadRecorder().then(k.bind(function(r){return r?n(!1):we.resolve()},this))};ta.prototype.isRecording=function(){if(!this._recorder||!k.isFunction(this._recorder.isRecording))return!1;try{return this._recorder.isRecording()}catch(e){return this.reportError("Error checking if recording is active",e),!1}};ta.prototype.startRecordingOnEvent=function(e,a){var n=this.isRecording(),t=this.getMpConfig("recording_event_triggers");if(!n&&t){var i=t[e];if(i&&typeof i.percentage=="number"){var r=i.percentage,o=i.property_filters;if(o&&!k.isEmptyObject(o)){var s=this.targetingSrc||this.libBasePath+fw;IC(this.loadExtraBundle,s).then((function(l){try{var d=l.eventMatchesCriteria(e,a,{event_name:e,property_filters:o});d.matches&&this.checkAndStartSessionRecording(!1,r)}catch(p){ye.critical("Could not parse recording event trigger properties logic:",p)}}).bind(this)).catch(function(l){ye.critical("Failed to load targeting library:",l)})}else this.checkAndStartSessionRecording(!1,r)}}};ta.prototype.stopSessionRecording=function(){return this._recorder?this._recorder.stopRecording():we.resolve()};ta.prototype.pauseSessionRecording=function(){return this._recorder?this._recorder.pauseRecording():we.resolve()};ta.prototype.resumeSessionRecording=function(){return this._recorder?this._recorder.resumeRecording():we.resolve()};ta.prototype.isRecordingHeatmapData=function(){return this.getSessionReplayId()&&this.getMpConfig("record_heatmap_data")};ta.prototype.getSessionRecordingProperties=function(){var e={},a=this.getSessionReplayId();return a&&(e.$mp_replay_id=a),e};ta.prototype.getSessionReplayUrl=function(){var e=null,a=this.getSessionReplayId();if(a){var n=k.HTTPBuildQuery({replay_id:a,distinct_id:this.getDistinctId(),token:this.getMpConfig("token")});e="https://mixpanel.com/projects/replay-redirect?"+n}return e};ta.prototype.getSessionReplayId=function(){var e=null;return this._recorder&&(e=this._recorder.replayId),e||null};ta.prototype.getRecorder=function(){return this._recorder};uh(ta);var Ln=function(){};Ln.prototype.create_properties=function(){};Ln.prototype.event_handler=function(){};Ln.prototype.after_track_handler=function(){};Ln.prototype.init=function(e){return this.mp=e,this};Ln.prototype.track=function(e,a,n,t){var i=this,r=k.dom_query(e);if(r.length===0){ye.error("The DOM query ("+e+") returned 0 elements");return}return k.each(r,function(o){k.register_event(o,this.override_event,function(s){var l={},d=i.create_properties(n,this),p=i.mp.get_config("track_links_timeout");i.event_handler(s,this,l),window.setTimeout(i.track_callback(t,d,l,!0),p),i.mp.track(a,d,i.track_callback(t,d,l))})},this),!0};Ln.prototype.track_callback=function(e,a,n,t){t=t||!1;var i=this;return function(){n.callback_fired||(n.callback_fired=!0,!(e&&e(t,a)===!1)&&i.after_track_handler(a,n,t))}};Ln.prototype.create_properties=function(e,a){var n;return typeof e=="function"?n=e(a):n=k.extend({},e),n};var Pr=function(){this.override_event="click"};k.inherit(Pr,Ln);Pr.prototype.create_properties=function(e,a){var n=Pr.superclass.create_properties.apply(this,arguments);return a.href&&(n.url=a.href),n};Pr.prototype.event_handler=function(e,a,n){n.new_tab=e.which===2||e.metaKey||e.ctrlKey||a.target==="_blank",n.href=a.href,n.new_tab||e.preventDefault()};Pr.prototype.after_track_handler=function(e,a){a.new_tab||setTimeout(function(){window.location=a.href},0)};var yd=function(){this.override_event="submit"};k.inherit(yd,Ln);yd.prototype.event_handler=function(e,a,n){n.element=a,e.preventDefault()};yd.prototype.after_track_handler=function(e,a){setTimeout(function(){a.element.submit()},0)};var ei="$set",_r="$set_once",Pa="$unset",Pi="$add",Ja="$append",_i="$union",En="$remove",ime="$delete",RC={set_action:function(e,a){var n={},t={};return k.isObject(e)?k.each(e,function(i,r){this._is_reserved_property(r)||(t[r]=i)},this):t[e]=a,n[ei]=t,n},unset_action:function(e){var a={},n=[];return k.isArray(e)||(e=[e]),k.each(e,function(t){this._is_reserved_property(t)||n.push(t)},this),a[Pa]=n,a},set_once_action:function(e,a){var n={},t={};return k.isObject(e)?k.each(e,function(i,r){this._is_reserved_property(r)||(t[r]=i)},this):t[e]=a,n[_r]=t,n},union_action:function(e,a){var n={},t={};return k.isObject(e)?k.each(e,function(i,r){this._is_reserved_property(r)||(t[r]=k.isArray(i)?i:[i])},this):t[e]=k.isArray(a)?a:[a],n[_i]=t,n},append_action:function(e,a){var n={},t={};return k.isObject(e)?k.each(e,function(i,r){this._is_reserved_property(r)||(t[r]=i)},this):t[e]=a,n[Ja]=t,n},remove_action:function(e,a){var n={},t={};return k.isObject(e)?k.each(e,function(i,r){this._is_reserved_property(r)||(t[r]=i)},this):t[e]=a,n[En]=t,n},delete_action:function(){var e={};return e[ime]="",e}},nt=function(){};k.extend(nt.prototype,RC);nt.prototype._init=function(e,a,n){this._mixpanel=e,this._group_key=a,this._group_id=n};nt.prototype.set=Fr(function(e,a,n){var t=this.set_action(e,a);return k.isObject(e)&&(n=a),this._send_request(t,n)});nt.prototype.set_once=Fr(function(e,a,n){var t=this.set_once_action(e,a);return k.isObject(e)&&(n=a),this._send_request(t,n)});nt.prototype.unset=Fr(function(e,a){var n=this.unset_action(e);return this._send_request(n,a)});nt.prototype.union=Fr(function(e,a,n){k.isObject(e)&&(n=a);var t=this.union_action(e,a);return this._send_request(t,n)});nt.prototype.delete=Fr(function(e){var a=this.delete_action();return this._send_request(a,e)});nt.prototype.remove=Fr(function(e,a,n){var t=this.remove_action(e,a);return this._send_request(t,n)});nt.prototype._send_request=function(e,a){e.$group_key=this._group_key,e.$group_id=this._group_id,e.$token=this._get_config("token");var n=k.encodeDates(e);return this._mixpanel._track_or_batch({type:"groups",data:n,endpoint:this._mixpanel.get_api_host("groups")+"/"+this._get_config("api_routes").groups,batcher:this._mixpanel.request_batchers.groups},a)};nt.prototype._is_reserved_property=function(e){return e==="$group_key"||e==="$group_id"};nt.prototype._get_config=function(e){return this._mixpanel.get_config(e)};nt.prototype.toString=function(){return this._mixpanel.toString()+".group."+this._group_key+"."+this._group_id};nt.prototype.remove=nt.prototype.remove;nt.prototype.set=nt.prototype.set;nt.prototype.set_once=nt.prototype.set_once;nt.prototype.union=nt.prototype.union;nt.prototype.unset=nt.prototype.unset;nt.prototype.toString=nt.prototype.toString;var ke=function(){};k.extend(ke.prototype,RC);ke.prototype._init=function(e){this._mixpanel=e};ke.prototype.set=gi(function(e,a,n){var t=this.set_action(e,a);return k.isObject(e)&&(n=a),this._get_config("save_referrer")&&this._mixpanel.persistence.update_referrer_info(document.referrer),t[ei]=k.extend({},k.info.people_properties(),t[ei]),this._send_request(t,n)});ke.prototype.set_once=gi(function(e,a,n){var t=this.set_once_action(e,a);return k.isObject(e)&&(n=a),this._send_request(t,n)});ke.prototype.unset=gi(function(e,a){var n=this.unset_action(e);return this._send_request(n,a)});ke.prototype.increment=gi(function(e,a,n){var t={},i={};return k.isObject(e)?(k.each(e,function(r,o){if(!this._is_reserved_property(o))if(isNaN(parseFloat(r))){ye.error("Invalid increment value passed to mixpanel.people.increment - must be a number");return}else i[o]=r},this),n=a):(k.isUndefined(a)&&(a=1),i[e]=a),t[Pi]=i,this._send_request(t,n)});ke.prototype.append=gi(function(e,a,n){k.isObject(e)&&(n=a);var t=this.append_action(e,a);return this._send_request(t,n)});ke.prototype.remove=gi(function(e,a,n){k.isObject(e)&&(n=a);var t=this.remove_action(e,a);return this._send_request(t,n)});ke.prototype.union=gi(function(e,a,n){k.isObject(e)&&(n=a);var t=this.union_action(e,a);return this._send_request(t,n)});ke.prototype.track_charge=gi(function(){ye.error("mixpanel.people.track_charge() is deprecated and no longer has any effect.")});ke.prototype.clear_charges=function(e){return this.set("$transactions",[],e)};ke.prototype.delete_user=function(){if(!this._identify_called()){ye.error("mixpanel.people.delete_user() requires you to call identify() first");return}var e={$delete:this._mixpanel.get_distinct_id()};return this._send_request(e)};ke.prototype.toString=function(){return this._mixpanel.toString()+".people"};ke.prototype._send_request=function(e,a){e.$token=this._get_config("token"),e.$distinct_id=this._mixpanel.get_distinct_id();var n=this._mixpanel.get_property("$device_id"),t=this._mixpanel.get_property("$user_id"),i=this._mixpanel.get_property("$had_persisted_distinct_id");n&&(e.$device_id=n),t&&(e.$user_id=t),i&&(e.$had_persisted_distinct_id=i);var r=k.encodeDates(e);return this._identify_called()?this._mixpanel._track_or_batch({type:"people",data:r,endpoint:this._mixpanel.get_api_host("people")+"/"+this._get_config("api_routes").engage,batcher:this._mixpanel.request_batchers.people},a):(this._enqueue(e),k.isUndefined(a)||(this._get_config("verbose")?a({status:-1,error:null}):a(-1)),k.truncate(r,255))};ke.prototype._get_config=function(e){return this._mixpanel.get_config(e)};ke.prototype._identify_called=function(){return this._mixpanel._flags.identify_called===!0};ke.prototype._enqueue=function(e){ei in e?this._mixpanel.persistence._add_to_people_queue(ei,e):_r in e?this._mixpanel.persistence._add_to_people_queue(_r,e):Pa in e?this._mixpanel.persistence._add_to_people_queue(Pa,e):Pi in e?this._mixpanel.persistence._add_to_people_queue(Pi,e):Ja in e?this._mixpanel.persistence._add_to_people_queue(Ja,e):En in e?this._mixpanel.persistence._add_to_people_queue(En,e):_i in e?this._mixpanel.persistence._add_to_people_queue(_i,e):ye.error("Invalid call to _enqueue():",e)};ke.prototype._flush_one_queue=function(e,a,n,t){var i=this,r=k.extend({},this._mixpanel.persistence.load_queue(e)),o=r;!k.isUndefined(r)&&k.isObject(r)&&!k.isEmptyObject(r)&&(i._mixpanel.persistence._pop_from_people_queue(e,r),i._mixpanel.persistence.save(),t&&(o=t(r)),a.call(i,o,function(s,l){s===0&&i._mixpanel.persistence._add_to_people_queue(e,r),k.isUndefined(n)||n(s,l)}))};ke.prototype._flush=function(e,a,n,t,i,r,o){var s=this;this._flush_one_queue(ei,this.set,e),this._flush_one_queue(_r,this.set_once,t),this._flush_one_queue(Pa,this.unset,r,function(f){return k.keys(f)}),this._flush_one_queue(Pi,this.increment,a),this._flush_one_queue(_i,this.union,i);var l=this._mixpanel.persistence.load_queue(Ja);if(!k.isUndefined(l)&&k.isArray(l)&&l.length)for(var d,p=function(f,S){f===0&&s._mixpanel.persistence._add_to_people_queue(Ja,d),k.isUndefined(n)||n(f,S)},u=l.length-1;u>=0;u--)l=this._mixpanel.persistence.load_queue(Ja),d=l.pop(),s._mixpanel.persistence.save(),k.isEmptyObject(d)||s.append(d,p);var g=this._mixpanel.persistence.load_queue(En);if(!k.isUndefined(g)&&k.isArray(g)&&g.length)for(var b,v=function(f,S){f===0&&s._mixpanel.persistence._add_to_people_queue(En,b),k.isUndefined(o)||o(f,S)},A=g.length-1;A>=0;A--)g=this._mixpanel.persistence.load_queue(En),b=g.pop(),s._mixpanel.persistence.save(),k.isEmptyObject(b)||s.remove(b,v)};ke.prototype._is_reserved_property=function(e){return e==="$distinct_id"||e==="$token"||e==="$device_id"||e==="$user_id"||e==="$had_persisted_distinct_id"};ke.prototype.set=ke.prototype.set;ke.prototype.set_once=ke.prototype.set_once;ke.prototype.unset=ke.prototype.unset;ke.prototype.increment=ke.prototype.increment;ke.prototype.append=ke.prototype.append;ke.prototype.remove=ke.prototype.remove;ke.prototype.union=ke.prototype.union;ke.prototype.track_charge=ke.prototype.track_charge;ke.prototype.clear_charges=ke.prototype.clear_charges;ke.prototype.delete_user=ke.prototype.delete_user;ke.prototype.toString=ke.prototype.toString;var wh="__mps",Ah="__mpso",Sh="__mpus",Ch="__mpa",Dh="__mpap",Th="__mpr",Eh="__mpu",zC="$people_distinct_id",Dc="__alias",qo="__timers",rme=[wh,Ah,Sh,Ch,Dh,Th,Eh,zC,Dc,qo],Te=function(e){this.props={},this.campaign_params_saved=!1,e.persistence_name?this.name="mp_"+e.persistence_name:this.name="mp_"+e.token+"_mixpanel";var a=e.persistence;a!=="cookie"&&a!=="localStorage"&&(ye.critical("Unknown persistence type "+a+"; falling back to cookie"),a=e.persistence="cookie"),a==="localStorage"&&k.localStorage.is_supported()?this.storage=k.localStorage:this.storage=k.cookie,this.load(),this.update_config(e),this.upgrade(),this.save()};Te.prototype.properties=function(){var e={};return this.load(),k.each(this.props,function(a,n){k.include(rme,n)||(e[n]=a)}),e};Te.prototype.load=function(){if(!this.disabled){var e=this.storage.parse(this.name);e&&(this.props=k.extend({},e))}};Te.prototype.upgrade=function(){var e,a;this.storage===k.localStorage?(e=k.cookie.parse(this.name),k.cookie.remove(this.name),k.cookie.remove(this.name,!0),e&&this.register_once(e)):this.storage===k.cookie&&(a=k.localStorage.parse(this.name),k.localStorage.remove(this.name),a&&this.register_once(a))};Te.prototype.save=function(){this.disabled||this.storage.set(this.name,Er(this.props),this.expire_days,this.cross_subdomain,this.secure,this.cross_site,this.cookie_domain)};Te.prototype.load_prop=function(e){return this.load(),this.props[e]};Te.prototype.remove=function(){this.storage.remove(this.name,!1,this.cookie_domain),this.storage.remove(this.name,!0,this.cookie_domain)};Te.prototype.clear=function(){this.remove(),this.props={}};Te.prototype.register_once=function(e,a,n){return k.isObject(e)?(typeof a>"u"&&(a="None"),this.expire_days=typeof n>"u"?this.default_expiry:n,this.load(),k.each(e,function(t,i){(!this.props.hasOwnProperty(i)||this.props[i]===a)&&(this.props[i]=t)},this),this.save(),!0):!1};Te.prototype.register=function(e,a){return k.isObject(e)?(this.expire_days=typeof a>"u"?this.default_expiry:a,this.load(),k.extend(this.props,e),this.save(),!0):!1};Te.prototype.unregister=function(e){this.load(),e in this.props&&(delete this.props[e],this.save())};Te.prototype.update_search_keyword=function(e){this.register(k.info.searchInfo(e))};Te.prototype.update_referrer_info=function(e){this.register_once({$initial_referrer:e||"$direct",$initial_referring_domain:k.info.referringDomain(e)||"$direct"},"")};Te.prototype.get_referrer_info=function(){return k.strip_empty_properties({$initial_referrer:this.props.$initial_referrer,$initial_referring_domain:this.props.$initial_referring_domain})};Te.prototype.update_config=function(e){this.default_expiry=this.expire_days=e.cookie_expiration,this.set_disabled(e.disable_persistence),this.set_cookie_domain(e.cookie_domain),this.set_cross_site(e.cross_site_cookie),this.set_cross_subdomain(e.cross_subdomain_cookie),this.set_secure(e.secure_cookie)};Te.prototype.set_disabled=function(e){this.disabled=e,this.disabled?this.remove():this.save()};Te.prototype.set_cookie_domain=function(e){e!==this.cookie_domain&&(this.remove(),this.cookie_domain=e,this.save())};Te.prototype.set_cross_site=function(e){e!==this.cross_site&&(this.cross_site=e,this.remove(),this.save())};Te.prototype.set_cross_subdomain=function(e){e!==this.cross_subdomain&&(this.cross_subdomain=e,this.remove(),this.save())};Te.prototype.get_cross_subdomain=function(){return this.cross_subdomain};Te.prototype.set_secure=function(e){e!==this.secure&&(this.secure=!!e,this.remove(),this.save())};Te.prototype._add_to_people_queue=function(e,a){var n=this._get_queue_key(e),t=a[e],i=this._get_or_create_queue(ei),r=this._get_or_create_queue(_r),o=this._get_or_create_queue(Pa),s=this._get_or_create_queue(Pi),l=this._get_or_create_queue(_i),d=this._get_or_create_queue(En,[]),p=this._get_or_create_queue(Ja,[]);n===wh?(k.extend(i,t),this._pop_from_people_queue(Pi,t),this._pop_from_people_queue(_i,t),this._pop_from_people_queue(Pa,t)):n===Ah?(k.each(t,function(u,g){g in r||(r[g]=u)}),this._pop_from_people_queue(Pa,t)):n===Sh?k.each(t,function(u){k.each([i,r,s,l],function(g){u in g&&delete g[u]}),k.each(p,function(g){u in g&&delete g[u]}),o[u]=!0}):n===Ch?(k.each(t,function(u,g){g in i?i[g]+=u:(g in s||(s[g]=0),s[g]+=u)},this),this._pop_from_people_queue(Pa,t)):n===Eh?(k.each(t,function(u,g){k.isArray(u)&&(g in l||(l[g]=[]),k.each(u,function(b){k.include(l[g],b)||l[g].push(b)}))}),this._pop_from_people_queue(Pa,t)):n===Th?(d.push(t),this._pop_from_people_queue(Ja,t)):n===Dh&&(p.push(t),this._pop_from_people_queue(Pa,t)),ye.log("MIXPANEL PEOPLE REQUEST (QUEUED, PENDING IDENTIFY):"),ye.log(a),this.save()};Te.prototype._pop_from_people_queue=function(e,a){var n=this.props[this._get_queue_key(e)];k.isUndefined(n)||k.each(a,function(t,i){e===Ja||e===En?k.each(n,function(r){r[i]===t&&delete r[i]}):delete n[i]},this)};Te.prototype.load_queue=function(e){return this.load_prop(this._get_queue_key(e))};Te.prototype._get_queue_key=function(e){if(e===ei)return wh;if(e===_r)return Ah;if(e===Pa)return Sh;if(e===Pi)return Ch;if(e===Ja)return Dh;if(e===En)return Th;if(e===_i)return Eh;ye.error("Invalid queue:",e)};Te.prototype._get_or_create_queue=function(e,a){var n=this._get_queue_key(e);return a=k.isUndefined(a)?{}:a,this.props[n]||(this.props[n]=a)};Te.prototype.set_event_timer=function(e,a){var n=this.load_prop(qo)||{};n[e]=a,this.props[qo]=n,this.save()};Te.prototype.remove_event_timer=function(e){var a=this.load_prop(qo)||{},n=a[e];return k.isUndefined(n)||(delete this.props[qo][e],this.save()),n};var Tc,Am=function(e,a){throw new Error(e+" not available in this build.")},Ut,Sm=0,ome=1,ma="mixpanel",MC="base64",sme="json",Ph="$device:",lme="strict",cme="fallback",dme="disabled",mr=z.XMLHttpRequest&&"withCredentials"in new XMLHttpRequest,NC=!mr&&Ua.indexOf("MSIE")===-1&&Ua.indexOf("Mozilla")===-1,Ec=null;Cn.sendBeacon&&(Ec=function(){return Cn.sendBeacon.apply(Cn,arguments)});var FC={track:"track/",engage:"engage/",groups:"groups/",record:"record/",flags:"flags/",settings:"settings/"},Cm={api_host:"https://api-js.mixpanel.com",api_hosts:{},api_routes:FC,api_extra_query_params:{},api_method:"POST",api_transport:"XHR",api_payload_format:MC,app_host:"https://mixpanel.com",autocapture:!1,cdn:"https://cdn.mxpnl.com",cross_site_cookie:!1,cross_subdomain_cookie:!0,error_reporter:Qn,flags:!1,persistence:"cookie",persistence_name:"",cookie_domain:"",cookie_name:"",loaded:Qn,mp_loader:null,track_marketing:!0,track_pageview:!1,skip_first_touch_marketing:!1,store_google:!0,stop_utm_persistence:!1,save_referrer:!0,test:!1,verbose:!1,img:!1,debug:!1,track_links_timeout:300,cookie_expiration:365,upgrade:!1,disable_persistence:!1,disable_cookie:!1,secure_cookie:!1,ip:!0,opt_out_tracking_by_default:!1,opt_out_persistence_by_default:!1,opt_out_tracking_persistence_type:"localStorage",opt_out_tracking_cookie_prefix:null,property_blacklist:[],xhr_headers:{},ignore_dnt:!1,batch_requests:!0,batch_size:50,batch_flush_interval_ms:5e3,batch_request_timeout_ms:9e4,batch_autostart:!0,hooks:{},record_block_class:new RegExp("^(mp-block|fs-exclude|amp-block|rr-block|ph-no-capture)$"),record_block_selector:"img, video, audio",record_canvas:!1,record_collect_fonts:!1,record_console:!0,record_heatmap_data:!1,recording_event_triggers:{},record_idle_timeout_ms:1800*1e3,record_mask_inputs:!0,record_max_ms:mo,record_min_ms:0,record_network:!1,record_network_options:{},record_sessions_percent:0,recorder_src:null,targeting_src:null,lib_base_path:"https://cdn.mxpnl.com/libs/",remote_settings_mode:dme},LC=!1,_=function(){},Dm=function(e,a,n){var t,i=n===ma?Ut:Ut[n];if(i&&Tc===Sm)t=i;else{if(i&&!k.isArray(i)){ye.error("You have already initialized "+n);return}t=new _}if(t._cached_groups={},t._init(e,a,n),t.people=new ke,t.people._init(t),!t.get_config("skip_first_touch_marketing")){var r=k.info.campaignParams(null),o={},s=!1;k.each(r,function(d,p){o["initial_"+p]=d,d&&(s=!0)}),s&&t.people.set_once(o)}ea.DEBUG=ea.DEBUG||t.get_config("debug");var l=Tc===Sm?"module":"snippet";return z.dispatchEvent(new z.CustomEvent("$mp_sdk_to_extension_event",{detail:{instance:t,source:l,token:e,name:n,info:k.info}})),!k.isUndefined(i)&&k.isArray(i)&&(t._execute_array.call(t.people,i.people),t._execute_array(i)),t};_.prototype.init=function(e,a,n){if(k.isUndefined(n)){this.report_error("You must name your new library: init(token, config, name)");return}if(n===ma){this.report_error("You must initialize the main mixpanel object right after you include the Mixpanel js snippet");return}var t=Dm(e,a,n);return Ut[n]=t,t._loaded(),t};_.prototype._init=function(e,a,n){a=a||{},this.__loaded=!0,this.config={};var t={};if(!("api_payload_format"in a)){var i=a.api_host||Cm.api_host;i.match(/\.mixpanel\.com/)&&(t.api_payload_format=sme)}if(this.hooks={},this.set_config(k.extend({},Cm,t,a,{name:n,token:e,callback_fn:(n===ma?n:ma+"."+n)+"._jsc"})),this.recorderManager=new ta({mixpanelInstance:this,getConfigFunc:k.bind(this.get_config,this),setConfigFunc:k.bind(this.set_config,this),getTabIdFunc:k.bind(this.get_tab_id,this),reportErrorFunc:k.bind(this.report_error,this),getDistinctIdFunc:k.bind(this.get_distinct_id,this),recorderSrc:this.get_config("recorder_src"),targetingSrc:this.get_config("targeting_src"),libBasePath:this.get_config("lib_base_path"),loadExtraBundle:Am}),this._jsc=Qn,this.__dom_loaded_queue=[],this.__request_queue=[],this.__disabled_events=[],this._flags={disable_all_events:!1,identify_called:!1},this.request_batchers={},this._batch_requests=this.get_config("batch_requests"),this._batch_requests){if(!k.localStorage.is_supported(!0)||!mr)this._batch_requests=!1,ye.log("Turning off Mixpanel request-queueing; needs XHR and localStorage support"),k.each(this.get_batcher_configs(),function(l){ye.log("Clearing batch queue "+l.queue_key),k.localStorage.remove(l.queue_key)});else if(this.init_batchers(),Ec&&z.addEventListener){var r=k.bind(function(){this.request_batchers.events.stopped||this.request_batchers.events.flush({unloading:!0})},this);z.addEventListener("pagehide",function(l){l.persisted&&r()}),z.addEventListener("visibilitychange",function(){be.visibilityState==="hidden"&&r()})}}this.persistence=this.cookie=new Te(this.config),this.unpersisted_superprops={},this._gdpr_init();var o=k.UUID();this.get_distinct_id()||this.register_once({distinct_id:Ph+o,$device_id:o},""),this.flags=new fe({getFullApiRoute:k.bind(function(){return this.get_api_host("flags")+"/"+this.get_config("api_routes").flags},this),getConfigFunc:k.bind(this.get_config,this),setConfigFunc:k.bind(this.set_config,this),getPropertyFunc:k.bind(this.get_property,this),trackingFunc:k.bind(this.track,this),loadExtraBundle:Am,targetingSrc:this.get_config("targeting_src")||this.get_config("lib_base_path")+fw}),this.flags.init(),this.flags=this.flags,this.autocapture=new wt(this),this.autocapture.init(),this._init_tab_id();var s=this.get_config("remote_settings_mode");s===lme||s===cme?this.__session_recording_init_promise=this._fetch_remote_settings(s).then(k.bind(function(){return this._check_and_start_session_recording()},this)):this.__session_recording_init_promise=this._check_and_start_session_recording()};_.prototype._init_tab_id=function(){if(this.get_config("disable_persistence"))ye.log("Tab ID initialization skipped due to disable_persistence config");else if(k.sessionStorage.is_supported())try{var e=this.get_config("name")+"_"+this.get_config("token"),a="mp_tab_id_"+e,n="mp_gen_new_tab_id_"+e;(k.sessionStorage.get(n)||!k.sessionStorage.get(a))&&k.sessionStorage.set(a,"$tab-"+k.UUID()),k.sessionStorage.set(n,"1"),this.tab_id=k.sessionStorage.get(a),z.addEventListener("beforeunload",function(){k.sessionStorage.remove(n)})}catch(t){this.report_error("Error initializing tab id",t)}else this.report_error("Session storage is not supported, cannot keep track of unique tab ID.")};_.prototype.get_tab_id=function(){return this.tab_id||null};_.prototype._check_and_start_session_recording=mi(function(e){return this.recorderManager.checkAndStartSessionRecording(e)});_.prototype._start_recording_on_event=function(e,a){return this.recorderManager.startRecordingOnEvent(e,a)};_.prototype.start_session_recording=function(){return this._check_and_start_session_recording(!0)};_.prototype.stop_session_recording=function(){return this.recorderManager.stopSessionRecording()};_.prototype.pause_session_recording=function(){return this.recorderManager.pauseSessionRecording()};_.prototype.resume_session_recording=function(){return this.recorderManager.resumeSessionRecording()};_.prototype.is_recording_heatmap_data=function(){return this.recorderManager.isRecordingHeatmapData()};_.prototype.get_session_recording_properties=function(){return this.recorderManager.getSessionRecordingProperties()};_.prototype.get_session_replay_url=function(){return this.recorderManager.getSessionReplayUrl()};_.prototype.__get_recorder=function(){return this.recorderManager.getRecorder()};_.prototype.__get_recording_init_promise=function(){return this.__session_recording_init_promise};_.prototype._loaded=function(){if(this.get_config("loaded")(this),this._set_default_superprops(),this.people.set_once(this.persistence.get_referrer_info()),this.get_config("store_google")&&this.get_config("stop_utm_persistence")){var e=k.info.campaignParams(null);k.each(e,(function(a,n){this.unregister(n)}).bind(this))}};_.prototype._set_default_superprops=function(){this.persistence.update_search_keyword(be.referrer),this.get_config("store_google")&&!this.get_config("stop_utm_persistence")&&this.register(k.info.campaignParams()),this.get_config("save_referrer")&&this.persistence.update_referrer_info(be.referrer)};_.prototype._dom_loaded=function(){k.each(this.__dom_loaded_queue,function(e){this._track_dom.apply(this,e)},this),this.has_opted_out_tracking()||k.each(this.__request_queue,function(e){this._send_request.apply(this,e)},this),delete this.__dom_loaded_queue,delete this.__request_queue};_.prototype._track_dom=function(e,a){if(this.get_config("img"))return this.report_error("You can't use DOM tracking functions with img = true."),!1;if(!LC)return this.__dom_loaded_queue.push([e,a]),!1;var n=new e().init(this);return n.track.apply(n,a)};_.prototype._prepare_callback=function(e,a){if(k.isUndefined(e))return null;if(mr){var n=function(o){e(o,a)};return n}else{var t=this._jsc,i=""+Math.floor(Math.random()*1e8),r=this.get_config("callback_fn")+"["+i+"]";return t[i]=function(o){delete t[i],e(o,a)},r}};_.prototype._send_request=function(e,a,n,t){var i=!0;if(NC)return this.__request_queue.push(arguments),i;var r={method:this.get_config("api_method"),transport:this.get_config("api_transport"),verbose:this.get_config("verbose")},o=null;!t&&(k.isFunction(n)||typeof n=="string")&&(t=n,n=null),n=k.extend(r,n||{}),mr||(n.method="GET");var s=n.method==="POST",l=Ec&&s&&n.transport.toLowerCase()==="sendbeacon",d=n.verbose;a.verbose&&(d=!0),this.get_config("test")&&(a.test=1),d&&(a.verbose=1),this.get_config("img")&&(a.img=1),mr||(t?a.callback=t:(d||this.get_config("test"))&&(a.callback="(function(){})")),a.ip=this.get_config("ip")?1:0,a._=new Date().getTime().toString(),s&&(o="data="+encodeURIComponent(a.data),delete a.data),k.extend(a,this.get_config("api_extra_query_params")),e+="?"+k.HTTPBuildQuery(a);var p=this;if("img"in a){var u=be.createElement("img");u.src=e,be.body.appendChild(u)}else if(l){try{i=Ec(e,o)}catch(S){p.report_error(S),i=!1}try{t&&t(i?1:0)}catch(S){p.report_error(S)}}else if(mr)try{var g=new XMLHttpRequest;g.open(n.method,e,!0);var b=this.get_config("xhr_headers");if(s&&(b["Content-Type"]="application/x-www-form-urlencoded"),k.each(b,function(S,C){g.setRequestHeader(C,S)}),n.timeout_ms&&typeof g.timeout<"u"){g.timeout=n.timeout_ms;var v=new Date().getTime()}g.withCredentials=!0,g.onreadystatechange=function(){if(g.readyState===4)if(g.status===200){if(t)if(d){var S;try{S=k.JSONDecode(g.responseText)}catch(E){if(p.report_error(E),n.ignore_json_errors)S=g.responseText;else return}t(S)}else t(Number(g.responseText))}else{var C;if(g.timeout&&!g.status&&new Date().getTime()-v>=g.timeout?C="timeout":C="Bad HTTP status: "+g.status+" "+g.statusText,p.report_error(C),t)if(d){var T=g.responseHeaders||{};t({status:0,httpStatusCode:g.status,error:C,retryAfter:T["Retry-After"]})}else t(0)}},g.send(o)}catch(S){p.report_error(S),i=!1}else{var A=be.createElement("script");A.type="text/javascript",A.async=!0,A.defer=!0,A.src=e;var f=be.getElementsByTagName("script")[0];f.parentNode.insertBefore(A,f)}return i};_.prototype._fetch_remote_settings=function(e){var a=this,n=function(){e==="strict"&&a.set_config({record_sessions_percent:0})};if(!z.AbortController)return ye.critical("Remote settings unavailable: missing minimum required APIs"),n(),Promise.resolve();var t=this.get_api_host("settings")+"/"+this.get_config("api_routes").settings,i={$lib_version:ea.LIB_VERSION,mp_lib:"web",sdk_config:"1"},r=k.HTTPBuildQuery(i),o=t+"?"+r,s=new AbortController,l=setTimeout(function(){s.abort()},500),d={method:"GET",headers:{Authorization:"Basic "+btoa(a.get_config("token")+":")},signal:s.signal};return z.fetch(o,d).then(function(p){if(clearTimeout(l),!p.ok){ye.critical("Network response was not ok"),n();return}return p.json()}).then(function(p){if(p&&p.sdk_config&&p.sdk_config.config){var u=p.sdk_config.config,g={};k.each(u,function(b,v){Cm.hasOwnProperty(v)&&(g[v]=b)}),k.isEmptyObject(g)?(ye.critical("No valid config keys found in remote settings."),n()):a.set_config(g)}else n()}).catch(function(p){clearTimeout(l),ye.critical("Failed to fetch remote settings",p),n()})};_.prototype._execute_array=function(e){var a,n=[],t=[],i=[];k.each(e,function(o){o&&(a=o[0],k.isArray(a)?i.push(o):typeof o=="function"?o.call(this):k.isArray(o)&&a==="alias"?n.push(o):k.isArray(o)&&a.indexOf("track")!==-1&&typeof this[a]=="function"?i.push(o):t.push(o))},this);var r=function(o,s){k.each(o,function(l){if(k.isArray(l[0])){var d=s;k.each(l,function(p){d=d[p[0]].apply(d,p.slice(1))})}else this[l[0]].apply(this,l.slice(1))},s)};r(n,this),r(t,this),r(i,this)};_.prototype.are_batchers_initialized=function(){return!!this.request_batchers.events};_.prototype.get_batcher_configs=function(){var e="__mpq_"+this.get_config("token");return this._batcher_configs=this._batcher_configs||{events:{type:"events",api_name:"track",queue_key:e+"_ev"},people:{type:"people",api_name:"engage",queue_key:e+"_pp"},groups:{type:"groups",api_name:"groups",queue_key:e+"_gr"}},this._batcher_configs};_.prototype.init_batchers=function(){if(!this.are_batchers_initialized()){var e=k.bind(function(n){return new fa(n.queue_key,{libConfig:this.config,errorReporter:this.get_config("error_reporter"),sendRequestFunc:k.bind(function(t,i,r){var o=this.get_config("api_routes");this._send_request(this.get_api_host(n.api_name)+"/"+o[n.api_name],this._encode_data_for_request(t),i,this._prepare_callback(r,t))},this),beforeSendHook:k.bind(function(t){var i=this._run_hook("before_send_"+n.type,t);return i?i[0]:null},this),stopAllBatchingFunc:k.bind(this.stop_batch_senders,this),usePersistence:!0})},this),a=this.get_batcher_configs();this.request_batchers={events:e(a.events),people:e(a.people),groups:e(a.groups)}}this.get_config("batch_autostart")&&this.start_batch_senders()};_.prototype.start_batch_senders=function(){this._batchers_were_started=!0,this.are_batchers_initialized()&&(this._batch_requests=!0,k.each(this.request_batchers,function(e){e.start()}))};_.prototype.stop_batch_senders=function(){this._batch_requests=!1,k.each(this.request_batchers,function(e){e.stop(),e.clear()})};_.prototype.push=function(e){this._execute_array([e])};_.prototype.enable=function(e){var a,n,t,i;if(typeof e>"u")this._flags.disable_all_events=!1;else{for(a={},n=[],t=0;t<e.length;t++)a[e[t]]=!0;for(i=0;i<this.__disabled_events.length;i++)a[this.__disabled_events[i]]||n.push(this.__disabled_events[i]);this.__disabled_events=n}};_.prototype.disable=function(e){typeof e>"u"?this._flags.disable_all_events=!0:this.__disabled_events=this.__disabled_events.concat(e)};_.prototype._encode_data_for_request=function(e){var a=Er(e);return this.get_config("api_payload_format")===MC&&(a=k.base64Encode(a)),{data:a}};_.prototype._track_or_batch=function(e,a){var n=k.truncate(e.data,255),t=e.endpoint,i=e.batcher,r=e.should_send_immediately,o=e.send_request_options||{};a=a||Qn;var s=!0,l=k.bind(function(){return o.skip_hooks||(n=this._run_hook("before_send_"+e.type,n),n&&(n=n[0])),n?(ye.log("MIXPANEL REQUEST:"),ye.log(n),this._send_request(t,this._encode_data_for_request(n),o,this._prepare_callback(a,n))):null},this);return this._batch_requests&&!r?i.enqueue(n).then(function(d){d?a(1,n):l()}):s=l(),s&&n};_.prototype.track=mi(function(e,a,n,t){var i;if(!(n&&n.skip_hooks)){if(i=this._run_hook("before_track",e,a),i===null)return;e=i[0],a=i[1]}!t&&typeof n=="function"&&(t=n,n=null),n=n||{};var r=n.transport;r&&(n.transport=r);var o=n.send_immediately;if(typeof t!="function"&&(t=Qn),k.isUndefined(e)){this.report_error("No event name provided to mixpanel.track");return}if(this._event_is_disabled(e)){t(0);return}a=k.extend({},a),a.token=this.get_config("token");var s=this.persistence.remove_event_timer(e);if(!k.isUndefined(s)){var l=new Date().getTime()-s;a.$duration=parseFloat((l/1e3).toFixed(3))}this._set_default_superprops();var d=this.get_config("track_marketing")?k.info.marketingParams():{};a=k.extend({},k.info.properties({mp_loader:this.get_config("mp_loader")}),d,this.persistence.properties(),this.unpersisted_superprops,this.get_session_recording_properties(),a);var p=this.get_config("property_blacklist");k.isArray(p)?k.each(p,function(g){delete a[g]}):this.report_error("Invalid value for property_blacklist config: "+p),this._start_recording_on_event(e,a);var u={event:e,properties:a};return i=this._track_or_batch({type:"events",data:u,endpoint:this.get_api_host("events")+"/"+this.get_config("api_routes").track,batcher:this.request_batchers.events,should_send_immediately:o,send_request_options:n},t),this.flags&&this.flags.checkFirstTimeEvents&&this.flags.checkFirstTimeEvents(e,a),i});_.prototype.set_group=mi(function(e,a,n){k.isArray(a)||(a=[a]);var t={};return t[e]=a,this.register(t),this.people.set(e,a,n)});_.prototype.add_group=mi(function(e,a,n){var t=this.get_property(e),i={};return t===void 0?(i[e]=[a],this.register(i)):t.indexOf(a)===-1&&(t.push(a),i[e]=t,this.register(i)),this.people.union(e,a,n)});_.prototype.remove_group=mi(function(e,a,n){var t=this.get_property(e);if(t!==void 0){var i=t.indexOf(a);i>-1&&(t.splice(i,1),this.register({group_key:t})),t.length===0&&this.unregister(e)}return this.people.remove(e,a,n)});_.prototype.track_with_groups=mi(function(e,a,n,t){var i=k.extend({},a||{});return k.each(n,function(r,o){r!=null&&(i[o]=r)}),this.track(e,i,t)});_.prototype._create_map_key=function(e,a){return e+"_"+JSON.stringify(a)};_.prototype._remove_group_from_cache=function(e,a){delete this._cached_groups[this._create_map_key(e,a)]};_.prototype.get_group=function(e,a){var n=this._create_map_key(e,a),t=this._cached_groups[n];return(t===void 0||t._group_key!==e||t._group_id!==a)&&(t=new nt,t._init(this,e,a),this._cached_groups[n]=t),t};_.prototype.track_pageview=mi(function(e,a){typeof e!="object"&&(e={}),a=a||{};var n=a.event_name||"$mp_web_page_view",t=k.extend(k.info.mpPageViewProperties(),k.info.campaignParams(),k.info.clickParams()),i=k.extend({},t,e);return this.track(n,i)});_.prototype.track_links=function(){return this._track_dom.call(this,Pr,arguments)};_.prototype.track_forms=function(){return this._track_dom.call(this,yd,arguments)};_.prototype.time_event=function(e){if(k.isUndefined(e)){this.report_error("No event name provided to mixpanel.time_event");return}this._event_is_disabled(e)||this.persistence.set_event_timer(e,new Date().getTime())};var ume={persistent:!0},_h=function(e){var a;return k.isObject(e)?a=e:k.isUndefined(e)?a={}:a={days:e},k.extend({},ume,a)};_.prototype.register=function(e,a){var n=this._run_hook("before_register",e,a);if(n!==null){e=n[0],a=n[1];var t=_h(a);t.persistent?this.persistence.register(e,t.days):k.extend(this.unpersisted_superprops,e)}};_.prototype.register_once=function(e,a,n){var t=this._run_hook("before_register_once",e,a,n);if(t!==null){e=t[0],a=t[1],n=t[2];var i=_h(n);i.persistent?this.persistence.register_once(e,a,i.days):(typeof a>"u"&&(a="None"),k.each(e,function(r,o){(!this.unpersisted_superprops.hasOwnProperty(o)||this.unpersisted_superprops[o]===a)&&(this.unpersisted_superprops[o]=r)},this))}};_.prototype.unregister=function(e,a){var n=this._run_hook("before_unregister",e,a);n!==null&&(e=n[0],a=n[1],a=_h(a),a.persistent?this.persistence.unregister(e):delete this.unpersisted_superprops[e])};_.prototype._register_single=function(e,a){var n={};n[e]=a,this.register(n)};_.prototype.identify=function(e,a,n,t,i,r,o,s){var l=this._run_hook("before_identify",e);if(l===null)return-1;e=l[0];var d=this.get_distinct_id();if(e&&d!==e){if(typeof e=="string"&&e.indexOf(Ph)===0)return this.report_error("distinct_id cannot have $device: prefix"),-1;this.register({$user_id:e})}if(!this.get_property("$device_id")){var p=d;this.register_once({$had_persisted_distinct_id:!0,$device_id:p},"")}e!==d&&e!==this.get_property(Dc)&&(this.unregister(Dc),this.register({distinct_id:e})),this._flags.identify_called=!0,this.people._flush(a,n,t,i,r,o,s),e!==d&&this.track("$identify",{distinct_id:e,$anon_distinct_id:d},{skip_hooks:!0}),e!==d&&this.flags.fetchFlags()};_.prototype.reset=function(){this.stop_session_recording(),this.persistence.clear(),this._flags.identify_called=!1;var e=k.UUID();this.register_once({distinct_id:Ph+e,$device_id:e},""),this._check_and_start_session_recording()};_.prototype.get_distinct_id=function(){return this.get_property("distinct_id")};_.prototype.alias=function(e,a){if(e===this.get_property(zC))return this.report_error("Attempting to create alias for existing People user - aborting."),-2;var n=this;return k.isUndefined(a)&&(a=this.get_distinct_id()),e!==a?(this._register_single(Dc,e),this.track("$create_alias",{alias:e,distinct_id:a},{skip_hooks:!0},function(){n.identify(e)})):(this.report_error("alias matches current distinct_id - skipping api call."),this.identify(e),-1)};_.prototype.name_tag=function(e){this._register_single("mp_name_tag",e)};_.prototype.set_config=function(e){if(k.isObject(e)){k.extend(this.config,e);var a=e.batch_size;a&&k.each(this.request_batchers,function(n){n.resetBatchSize()}),this.get_config("persistence_name")||(this.config.persistence_name=this.config.cookie_name),this.get_config("disable_persistence")||(this.config.disable_persistence=this.config.disable_cookie),this.persistence&&this.persistence.update_config(this.config),ea.DEBUG=ea.DEBUG||this.get_config("debug"),("autocapture"in e||"record_heatmap_data"in e)&&this.autocapture&&this.autocapture.init(),k.isObject(e.hooks)&&(this.hooks={},k.each(e.hooks,function(n,t){if(k.isFunction(n))this.hooks[t]=[n];else if(k.isArray(n)){this.hooks[t]=[];for(var i=0;i<n.length;i++)k.isFunction(n[i])||ye.critical("Invalid hook added. Hook is not a function"),this.hooks[t].push(n[i])}else ye.critical("Invalid hooks added. Ensure that the hook values passed into config.hooks are functions or arrays of functions.")},this))}};_.prototype.get_config=function(e){return this.config[e]};_.prototype._run_hook=function(e){var a=Yn.call(arguments,1);return k.each(this.hooks[e],function(n){if(a===null)return null;var t=n.apply(this,a);typeof t>"u"?(this.report_error(e+" hook did not return a valid value"),a=null):(k.isArray(t)||(t=[t]),a.splice.apply(a,[0,t.length].concat(t)))},this),a};_.prototype.get_property=function(e){return this.persistence.load_prop([e])};_.prototype.get_api_host=function(e){return this.get_config("api_hosts")[e]||this.get_config("api_host")};_.prototype.toString=function(){var e=this.get_config("name");return e!==ma&&(e=ma+"."+e),e};_.prototype._event_is_disabled=function(e){return k.isBlockedUA(Ua)||this._flags.disable_all_events||k.include(this.__disabled_events,e)};_.prototype._gdpr_init=function(){var e=this.get_config("opt_out_tracking_persistence_type")==="localStorage";e&&k.localStorage.is_supported()&&(!this.has_opted_in_tracking()&&this.has_opted_in_tracking({persistence_type:"cookie"})&&this.opt_in_tracking({enable_persistence:!1}),!this.has_opted_out_tracking()&&this.has_opted_out_tracking({persistence_type:"cookie"})&&this.opt_out_tracking({clear_persistence:!1}),this.clear_opt_in_out_tracking({persistence_type:"cookie",enable_persistence:!1})),this.has_opted_out_tracking()?this._gdpr_update_persistence({clear_persistence:!0}):!this.has_opted_in_tracking()&&(this.get_config("opt_out_tracking_by_default")||k.cookie.get("mp_optout"))&&(k.cookie.remove("mp_optout"),this.opt_out_tracking({clear_persistence:this.get_config("opt_out_persistence_by_default")}))};_.prototype._gdpr_update_persistence=function(e){var a;if(e&&e.clear_persistence)a=!0;else if(e&&e.enable_persistence)a=!1;else return;!this.get_config("disable_persistence")&&this.persistence.disabled!==a&&this.persistence.set_disabled(a),a?(this.stop_batch_senders(),this.stop_session_recording()):this._batchers_were_started&&this.start_batch_senders()};_.prototype._gdpr_call_func=function(e,a){return a=k.extend({track:k.bind(this.track,this),persistence_type:this.get_config("opt_out_tracking_persistence_type"),cookie_prefix:this.get_config("opt_out_tracking_cookie_prefix"),cookie_expiration:this.get_config("cookie_expiration"),cross_site_cookie:this.get_config("cross_site_cookie"),cross_subdomain_cookie:this.get_config("cross_subdomain_cookie"),cookie_domain:this.get_config("cookie_domain"),secure_cookie:this.get_config("secure_cookie"),ignore_dnt:this.get_config("ignore_dnt")},a),k.localStorage.is_supported()||(a.persistence_type="cookie"),e(this.get_config("token"),{track:a.track,trackEventName:a.track_event_name,trackProperties:a.track_properties,persistenceType:a.persistence_type,persistencePrefix:a.cookie_prefix,cookieDomain:a.cookie_domain,cookieExpiration:a.cookie_expiration,crossSiteCookie:a.cross_site_cookie,crossSubdomainCookie:a.cross_subdomain_cookie,secureCookie:a.secure_cookie,ignoreDnt:a.ignore_dnt})};_.prototype.opt_in_tracking=function(e){e=k.extend({enable_persistence:!0},e),this._gdpr_call_func(Gue,e),this._gdpr_update_persistence(e)};_.prototype.opt_out_tracking=function(e){e=k.extend({clear_persistence:!0,delete_user:!0},e),e.delete_user&&this.people&&this.people._identify_called()&&(this.people.delete_user(),this.people.clear_charges()),this._gdpr_call_func(Hue,e),this._gdpr_update_persistence(e)};_.prototype.has_opted_in_tracking=function(e){return this._gdpr_call_func(Yue,e)};_.prototype.has_opted_out_tracking=function(e){return this._gdpr_call_func(QS,e)};_.prototype.clear_opt_in_out_tracking=function(e){e=k.extend({enable_persistence:!0},e),this._gdpr_call_func(Kue,e),this._gdpr_update_persistence(e)};_.prototype.report_error=function(e,a){ye.error.apply(ye.error,arguments);try{!a&&!(e instanceof Error)&&(e=new Error(e)),this.get_config("error_reporter")(e,a)}catch(n){ye.error(n)}};_.prototype.add_hook=function(e,a){this.hooks[e]||(this.hooks[e]=[]),this.hooks[e].push(a)};_.prototype.remove_hook=function(e,a){var n;this.hooks[e]&&(n=this.hooks[e].indexOf(a),n!==-1?this.hooks[e].splice(n,1):ye.log("remove_hook failed. Matching hook was not found"))};_.prototype.init=_.prototype.init;_.prototype.reset=_.prototype.reset;_.prototype.enable=_.prototype.enable;_.prototype.disable=_.prototype.disable;_.prototype.time_event=_.prototype.time_event;_.prototype.track=_.prototype.track;_.prototype.track_links=_.prototype.track_links;_.prototype.track_forms=_.prototype.track_forms;_.prototype.track_pageview=_.prototype.track_pageview;_.prototype.register=_.prototype.register;_.prototype.register_once=_.prototype.register_once;_.prototype.unregister=_.prototype.unregister;_.prototype.identify=_.prototype.identify;_.prototype.alias=_.prototype.alias;_.prototype.name_tag=_.prototype.name_tag;_.prototype.set_config=_.prototype.set_config;_.prototype.get_config=_.prototype.get_config;_.prototype.get_api_host=_.prototype.get_api_host;_.prototype.get_property=_.prototype.get_property;_.prototype.get_distinct_id=_.prototype.get_distinct_id;_.prototype.toString=_.prototype.toString;_.prototype.opt_out_tracking=_.prototype.opt_out_tracking;_.prototype.opt_in_tracking=_.prototype.opt_in_tracking;_.prototype.has_opted_out_tracking=_.prototype.has_opted_out_tracking;_.prototype.has_opted_in_tracking=_.prototype.has_opted_in_tracking;_.prototype.clear_opt_in_out_tracking=_.prototype.clear_opt_in_out_tracking;_.prototype.get_group=_.prototype.get_group;_.prototype.set_group=_.prototype.set_group;_.prototype.add_group=_.prototype.add_group;_.prototype.remove_group=_.prototype.remove_group;_.prototype.add_hook=_.prototype.add_hook;_.prototype.remove_hook=_.prototype.remove_hook;_.prototype.track_with_groups=_.prototype.track_with_groups;_.prototype.start_batch_senders=_.prototype.start_batch_senders;_.prototype.stop_batch_senders=_.prototype.stop_batch_senders;_.prototype.start_session_recording=_.prototype.start_session_recording;_.prototype.stop_session_recording=_.prototype.stop_session_recording;_.prototype.pause_session_recording=_.prototype.pause_session_recording;_.prototype.resume_session_recording=_.prototype.resume_session_recording;_.prototype.get_session_recording_properties=_.prototype.get_session_recording_properties;_.prototype.get_session_replay_url=_.prototype.get_session_replay_url;_.prototype.get_tab_id=_.prototype.get_tab_id;_.prototype.DEFAULT_API_ROUTES=FC;_.prototype.__get_recorder=_.prototype.__get_recorder;_.prototype.__get_recording_init_promise=_.prototype.__get_recording_init_promise;Te.prototype.properties=Te.prototype.properties;Te.prototype.update_search_keyword=Te.prototype.update_search_keyword;Te.prototype.update_referrer_info=Te.prototype.update_referrer_info;Te.prototype.get_cross_subdomain=Te.prototype.get_cross_subdomain;Te.prototype.clear=Te.prototype.clear;var rr={},pme=function(){k.each(rr,function(e,a){a!==ma&&(Ut[a]=e)}),Ut._=k},mme=function(){Ut.init=function(e,a,n){if(n)return Ut[n]||(Ut[n]=rr[n]=Dm(e,a,n),Ut[n]._loaded()),Ut[n];var t=Ut;rr[ma]?t=rr[ma]:e&&(t=Dm(e,a,ma),t._loaded(),rr[ma]=t),Ut=t,Tc===ome&&(z[ma]=Ut),pme()}},gme=function(){function e(){e.done||(e.done=!0,LC=!0,NC=!1,k.each(rr,function(t){t._dom_loaded()}))}function a(){try{be.documentElement.doScroll("left")}catch{setTimeout(a,1);return}e()}if(be.addEventListener)be.readyState==="complete"?e():be.addEventListener("DOMContentLoaded",e,!1);else if(be.attachEvent){be.attachEvent("onreadystatechange",e);var n=!1;try{n=z.frameElement===null}catch{}be.documentElement.doScroll&&n&&a()}k.register_event(z,"load",e,!0)};function hme(e){return Am=e,Tc=Sm,Ut=new _,mme(),Ut.init(),gme(),Ut}function fme(e,a){a()}var Ct=hme(fme);function vme(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var xu,Xb;function bme(){if(Xb)return xu;Xb=1;const e=2147483647,a=36,n=1,t=26,i=38,r=700,o=72,s=128,l="-",d=/^xn--/,p=/[^\0-\x7F]/,u=/[\x2E\u3002\uFF0E\uFF61]/g,g={overflow:"Overflow: input needs wider integers to process","not-basic":"Illegal input >= 0x80 (not a basic code point)","invalid-input":"Invalid input"},b=a-n,v=Math.floor,A=String.fromCharCode;function f(R){throw new RangeError(g[R])}function S(R,Y){const $=[];let F=R.length;for(;F--;)$[F]=Y(R[F]);return $}function C(R,Y){const $=R.split("@");let F="";$.length>1&&(F=$[0]+"@",R=$[1]),R=R.replace(u,".");const j=R.split("."),H=S(j,Y).join(".");return F+H}function T(R){const Y=[];let $=0;const F=R.length;for(;$<F;){const j=R.charCodeAt($++);if(j>=55296&&j<=56319&&$<F){const H=R.charCodeAt($++);(H&64512)==56320?Y.push(((j&1023)<<10)+(H&1023)+65536):(Y.push(j),$--)}else Y.push(j)}return Y}const E=R=>String.fromCodePoint(...R),P=function(R){return R>=48&&R<58?26+(R-48):R>=65&&R<91?R-65:R>=97&&R<123?R-97:a},I=function(R,Y){return R+22+75*(R<26)-((Y!=0)<<5)},L=function(R,Y,$){let F=0;for(R=$?v(R/r):R>>1,R+=v(R/Y);R>b*t>>1;F+=a)R=v(R/b);return v(F+(b+1)*R/(R+i))},N=function(R){const Y=[],$=R.length;let F=0,j=s,H=o,X=R.lastIndexOf(l);X<0&&(X=0);for(let ie=0;ie<X;++ie)R.charCodeAt(ie)>=128&&f("not-basic"),Y.push(R.charCodeAt(ie));for(let ie=X>0?X+1:0;ie<$;){const te=F;for(let ae=1,Me=a;;Me+=a){ie>=$&&f("invalid-input");const Ne=P(R.charCodeAt(ie++));Ne>=a&&f("invalid-input"),Ne>v((e-F)/ae)&&f("overflow"),F+=Ne*ae;const re=Me<=H?n:Me>=H+t?t:Me-H;if(Ne<re)break;const de=a-re;ae>v(e/de)&&f("overflow"),ae*=de}const oe=Y.length+1;H=L(F-te,oe,te==0),v(F/oe)>e-j&&f("overflow"),j+=v(F/oe),F%=oe,Y.splice(F++,0,j)}return String.fromCodePoint(...Y)},Z=function(R){const Y=[];R=T(R);const $=R.length;let F=s,j=0,H=o;for(const te of R)te<128&&Y.push(A(te));const X=Y.length;let ie=X;for(X&&Y.push(l);ie<$;){let te=e;for(const ae of R)ae>=F&&ae<te&&(te=ae);const oe=ie+1;te-F>v((e-j)/oe)&&f("overflow"),j+=(te-F)*oe,F=te;for(const ae of R)if(ae<F&&++j>e&&f("overflow"),ae===F){let Me=j;for(let Ne=a;;Ne+=a){const re=Ne<=H?n:Ne>=H+t?t:Ne-H;if(Me<re)break;const de=Me-re,q=a-re;Y.push(A(I(re+de%q,0))),Me=v(de/q)}Y.push(A(I(Me,0))),H=L(j,oe,ie===X),j=0,++ie}++j,++F}return Y.join("")};return xu={version:"2.3.1",ucs2:{decode:T,encode:E},decode:N,encode:Z,toASCII:function(R){return C(R,function(Y){return p.test(Y)?"xn--"+Z(Y):Y})},toUnicode:function(R){return C(R,function(Y){return d.test(Y)?N(Y.slice(4).toLowerCase()):Y})}},xu}var yme=bme();const Vo=vme(yme),kme=["ac","com.ac","edu.ac","gov.ac","mil.ac","net.ac","org.ac","ad","ae","ac.ae","co.ae","gov.ae","mil.ae","net.ae","org.ae","sch.ae","aero","airline.aero","airport.aero","accident-investigation.aero","accident-prevention.aero","aerobatic.aero","aeroclub.aero","aerodrome.aero","agents.aero","air-surveillance.aero","air-traffic-control.aero","aircraft.aero","airtraffic.aero","ambulance.aero","association.aero","author.aero","ballooning.aero","broker.aero","caa.aero","cargo.aero","catering.aero","certification.aero","championship.aero","charter.aero","civilaviation.aero","club.aero","conference.aero","consultant.aero","consulting.aero","control.aero","council.aero","crew.aero","design.aero","dgca.aero","educator.aero","emergency.aero","engine.aero","engineer.aero","entertainment.aero","equipment.aero","exchange.aero","express.aero","federation.aero","flight.aero","freight.aero","fuel.aero","gliding.aero","government.aero","groundhandling.aero","group.aero","hanggliding.aero","homebuilt.aero","insurance.aero","journal.aero","journalist.aero","leasing.aero","logistics.aero","magazine.aero","maintenance.aero","marketplace.aero","media.aero","microlight.aero","modelling.aero","navigation.aero","parachuting.aero","paragliding.aero","passenger-association.aero","pilot.aero","press.aero","production.aero","recreation.aero","repbody.aero","res.aero","research.aero","rotorcraft.aero","safety.aero","scientist.aero","services.aero","show.aero","skydiving.aero","software.aero","student.aero","taxi.aero","trader.aero","trading.aero","trainer.aero","union.aero","workinggroup.aero","works.aero","af","com.af","edu.af","gov.af","net.af","org.af","ag","co.ag","com.ag","net.ag","nom.ag","org.ag","ai","com.ai","net.ai","off.ai","org.ai","al","com.al","edu.al","gov.al","mil.al","net.al","org.al","am","co.am","com.am","commune.am","net.am","org.am","ao","co.ao","ed.ao","edu.ao","gov.ao","gv.ao","it.ao","og.ao","org.ao","pb.ao","aq","ar","bet.ar","com.ar","coop.ar","edu.ar","gob.ar","gov.ar","int.ar","mil.ar","musica.ar","mutual.ar","net.ar","org.ar","senasa.ar","tur.ar","arpa","e164.arpa","home.arpa","in-addr.arpa","ip6.arpa","iris.arpa","uri.arpa","urn.arpa","as","gov.as","asia","at","ac.at","sth.ac.at","co.at","gv.at","or.at","au","asn.au","com.au","edu.au","gov.au","id.au","net.au","org.au","conf.au","oz.au","act.au","nsw.au","nt.au","qld.au","sa.au","tas.au","vic.au","wa.au","act.edu.au","catholic.edu.au","nsw.edu.au","nt.edu.au","qld.edu.au","sa.edu.au","tas.edu.au","vic.edu.au","wa.edu.au","qld.gov.au","sa.gov.au","tas.gov.au","vic.gov.au","wa.gov.au","schools.nsw.edu.au","aw","com.aw","ax","az","biz.az","com.az","edu.az","gov.az","info.az","int.az","mil.az","name.az","net.az","org.az","pp.az","pro.az","ba","com.ba","edu.ba","gov.ba","mil.ba","net.ba","org.ba","bb","biz.bb","co.bb","com.bb","edu.bb","gov.bb","info.bb","net.bb","org.bb","store.bb","tv.bb","*.bd","be","ac.be","bf","gov.bf","bg","0.bg","1.bg","2.bg","3.bg","4.bg","5.bg","6.bg","7.bg","8.bg","9.bg","a.bg","b.bg","c.bg","d.bg","e.bg","f.bg","g.bg","h.bg","i.bg","j.bg","k.bg","l.bg","m.bg","n.bg","o.bg","p.bg","q.bg","r.bg","s.bg","t.bg","u.bg","v.bg","w.bg","x.bg","y.bg","z.bg","bh","com.bh","edu.bh","gov.bh","net.bh","org.bh","bi","co.bi","com.bi","edu.bi","or.bi","org.bi","biz","bj","africa.bj","agro.bj","architectes.bj","assur.bj","avocats.bj","co.bj","com.bj","eco.bj","econo.bj","edu.bj","info.bj","loisirs.bj","money.bj","net.bj","org.bj","ote.bj","restaurant.bj","resto.bj","tourism.bj","univ.bj","bm","com.bm","edu.bm","gov.bm","net.bm","org.bm","bn","com.bn","edu.bn","gov.bn","net.bn","org.bn","bo","com.bo","edu.bo","gob.bo","int.bo","mil.bo","net.bo","org.bo","tv.bo","web.bo","academia.bo","agro.bo","arte.bo","blog.bo","bolivia.bo","ciencia.bo","cooperativa.bo","democracia.bo","deporte.bo","ecologia.bo","economia.bo","empresa.bo","indigena.bo","industria.bo","info.bo","medicina.bo","movimiento.bo","musica.bo","natural.bo","nombre.bo","noticias.bo","patria.bo","plurinacional.bo","politica.bo","profesional.bo","pueblo.bo","revista.bo","salud.bo","tecnologia.bo","tksat.bo","transporte.bo","wiki.bo","br","9guacu.br","abc.br","adm.br","adv.br","agr.br","aju.br","am.br","anani.br","aparecida.br","app.br","arq.br","art.br","ato.br","b.br","barueri.br","belem.br","bet.br","bhz.br","bib.br","bio.br","blog.br","bmd.br","boavista.br","bsb.br","campinagrande.br","campinas.br","caxias.br","cim.br","cng.br","cnt.br","com.br","contagem.br","coop.br","coz.br","cri.br","cuiaba.br","curitiba.br","def.br","des.br","det.br","dev.br","ecn.br","eco.br","edu.br","emp.br","enf.br","eng.br","esp.br","etc.br","eti.br","far.br","feira.br","flog.br","floripa.br","fm.br","fnd.br","fortal.br","fot.br","foz.br","fst.br","g12.br","geo.br","ggf.br","goiania.br","gov.br","ac.gov.br","al.gov.br","am.gov.br","ap.gov.br","ba.gov.br","ce.gov.br","df.gov.br","es.gov.br","go.gov.br","ma.gov.br","mg.gov.br","ms.gov.br","mt.gov.br","pa.gov.br","pb.gov.br","pe.gov.br","pi.gov.br","pr.gov.br","rj.gov.br","rn.gov.br","ro.gov.br","rr.gov.br","rs.gov.br","sc.gov.br","se.gov.br","sp.gov.br","to.gov.br","gru.br","imb.br","ind.br","inf.br","jab.br","jampa.br","jdf.br","joinville.br","jor.br","jus.br","leg.br","leilao.br","lel.br","log.br","londrina.br","macapa.br","maceio.br","manaus.br","maringa.br","mat.br","med.br","mil.br","morena.br","mp.br","mus.br","natal.br","net.br","niteroi.br","*.nom.br","not.br","ntr.br","odo.br","ong.br","org.br","osasco.br","palmas.br","poa.br","ppg.br","pro.br","psc.br","psi.br","pvh.br","qsl.br","radio.br","rec.br","recife.br","rep.br","ribeirao.br","rio.br","riobranco.br","riopreto.br","salvador.br","sampa.br","santamaria.br","santoandre.br","saobernardo.br","saogonca.br","seg.br","sjc.br","slg.br","slz.br","sorocaba.br","srv.br","taxi.br","tc.br","tec.br","teo.br","the.br","tmp.br","trd.br","tur.br","tv.br","udi.br","vet.br","vix.br","vlog.br","wiki.br","zlg.br","bs","com.bs","edu.bs","gov.bs","net.bs","org.bs","bt","com.bt","edu.bt","gov.bt","net.bt","org.bt","bv","bw","co.bw","org.bw","by","gov.by","mil.by","com.by","of.by","bz","co.bz","com.bz","edu.bz","gov.bz","net.bz","org.bz","ca","ab.ca","bc.ca","mb.ca","nb.ca","nf.ca","nl.ca","ns.ca","nt.ca","nu.ca","on.ca","pe.ca","qc.ca","sk.ca","yk.ca","gc.ca","cat","cc","cd","gov.cd","cf","cg","ch","ci","ac.ci","aéroport.ci","asso.ci","co.ci","com.ci","ed.ci","edu.ci","go.ci","gouv.ci","int.ci","net.ci","or.ci","org.ci","*.ck","!www.ck","cl","co.cl","gob.cl","gov.cl","mil.cl","cm","co.cm","com.cm","gov.cm","net.cm","cn","ac.cn","com.cn","edu.cn","gov.cn","mil.cn","net.cn","org.cn","å…¬å¸.cn","網絡.cn","网络.cn","ah.cn","bj.cn","cq.cn","fj.cn","gd.cn","gs.cn","gx.cn","gz.cn","ha.cn","hb.cn","he.cn","hi.cn","hk.cn","hl.cn","hn.cn","jl.cn","js.cn","jx.cn","ln.cn","mo.cn","nm.cn","nx.cn","qh.cn","sc.cn","sd.cn","sh.cn","sn.cn","sx.cn","tj.cn","tw.cn","xj.cn","xz.cn","yn.cn","zj.cn","co","com.co","edu.co","gov.co","mil.co","net.co","nom.co","org.co","com","coop","cr","ac.cr","co.cr","ed.cr","fi.cr","go.cr","or.cr","sa.cr","cu","com.cu","edu.cu","gob.cu","inf.cu","nat.cu","net.cu","org.cu","cv","com.cv","edu.cv","id.cv","int.cv","net.cv","nome.cv","org.cv","publ.cv","cw","com.cw","edu.cw","net.cw","org.cw","cx","gov.cx","cy","ac.cy","biz.cy","com.cy","ekloges.cy","gov.cy","ltd.cy","mil.cy","net.cy","org.cy","press.cy","pro.cy","tm.cy","cz","de","dj","dk","dm","co.dm","com.dm","edu.dm","gov.dm","net.dm","org.dm","do","art.do","com.do","edu.do","gob.do","gov.do","mil.do","net.do","org.do","sld.do","web.do","dz","art.dz","asso.dz","com.dz","edu.dz","gov.dz","net.dz","org.dz","pol.dz","soc.dz","tm.dz","ec","com.ec","edu.ec","fin.ec","gob.ec","gov.ec","info.ec","k12.ec","med.ec","mil.ec","net.ec","org.ec","pro.ec","edu","ee","aip.ee","com.ee","edu.ee","fie.ee","gov.ee","lib.ee","med.ee","org.ee","pri.ee","riik.ee","eg","ac.eg","com.eg","edu.eg","eun.eg","gov.eg","info.eg","me.eg","mil.eg","name.eg","net.eg","org.eg","sci.eg","sport.eg","tv.eg","*.er","es","com.es","edu.es","gob.es","nom.es","org.es","et","biz.et","com.et","edu.et","gov.et","info.et","name.et","net.et","org.et","eu","fi","aland.fi","fj","ac.fj","biz.fj","com.fj","gov.fj","info.fj","mil.fj","name.fj","net.fj","org.fj","pro.fj","*.fk","fm","com.fm","edu.fm","net.fm","org.fm","fo","fr","asso.fr","com.fr","gouv.fr","nom.fr","prd.fr","tm.fr","avoues.fr","cci.fr","greta.fr","huissier-justice.fr","ga","gb","gd","edu.gd","gov.gd","ge","com.ge","edu.ge","gov.ge","net.ge","org.ge","pvt.ge","school.ge","gf","gg","co.gg","net.gg","org.gg","gh","com.gh","edu.gh","gov.gh","mil.gh","org.gh","gi","com.gi","edu.gi","gov.gi","ltd.gi","mod.gi","org.gi","gl","co.gl","com.gl","edu.gl","net.gl","org.gl","gm","gn","ac.gn","com.gn","edu.gn","gov.gn","net.gn","org.gn","gov","gp","asso.gp","com.gp","edu.gp","mobi.gp","net.gp","org.gp","gq","gr","com.gr","edu.gr","gov.gr","net.gr","org.gr","gs","gt","com.gt","edu.gt","gob.gt","ind.gt","mil.gt","net.gt","org.gt","gu","com.gu","edu.gu","gov.gu","guam.gu","info.gu","net.gu","org.gu","web.gu","gw","gy","co.gy","com.gy","edu.gy","gov.gy","net.gy","org.gy","hk","com.hk","edu.hk","gov.hk","idv.hk","net.hk","org.hk","个人.hk","個人.hk","å…¬å¸.hk","政府.hk","敎育.hk","教育.hk","箇人.hk","組織.hk","組织.hk","網絡.hk","網络.hk","组織.hk","组织.hk","网絡.hk","网络.hk","hm","hn","com.hn","edu.hn","gob.hn","mil.hn","net.hn","org.hn","hr","com.hr","from.hr","iz.hr","name.hr","ht","adult.ht","art.ht","asso.ht","com.ht","coop.ht","edu.ht","firm.ht","gouv.ht","info.ht","med.ht","net.ht","org.ht","perso.ht","pol.ht","pro.ht","rel.ht","shop.ht","hu","2000.hu","agrar.hu","bolt.hu","casino.hu","city.hu","co.hu","erotica.hu","erotika.hu","film.hu","forum.hu","games.hu","hotel.hu","info.hu","ingatlan.hu","jogasz.hu","konyvelo.hu","lakas.hu","media.hu","news.hu","org.hu","priv.hu","reklam.hu","sex.hu","shop.hu","sport.hu","suli.hu","szex.hu","tm.hu","tozsde.hu","utazas.hu","video.hu","id","ac.id","biz.id","co.id","desa.id","go.id","mil.id","my.id","net.id","or.id","ponpes.id","sch.id","web.id","ie","gov.ie","il","ac.il","co.il","gov.il","idf.il","k12.il","muni.il","net.il","org.il","ישר×ל","×קדמיה.ישר×ל","ישוב.ישר×ל","צהל.ישר×ל","ממשל.ישר×ל","im","ac.im","co.im","ltd.co.im","plc.co.im","com.im","net.im","org.im","tt.im","tv.im","in","5g.in","6g.in","ac.in","ai.in","am.in","bihar.in","biz.in","business.in","ca.in","cn.in","co.in","com.in","coop.in","cs.in","delhi.in","dr.in","edu.in","er.in","firm.in","gen.in","gov.in","gujarat.in","ind.in","info.in","int.in","internet.in","io.in","me.in","mil.in","net.in","nic.in","org.in","pg.in","post.in","pro.in","res.in","travel.in","tv.in","uk.in","up.in","us.in","info","int","eu.int","io","co.io","com.io","edu.io","gov.io","mil.io","net.io","nom.io","org.io","iq","com.iq","edu.iq","gov.iq","mil.iq","net.iq","org.iq","ir","ac.ir","co.ir","gov.ir","id.ir","net.ir","org.ir","sch.ir","ایران.ir","ايران.ir","is","it","edu.it","gov.it","abr.it","abruzzo.it","aosta-valley.it","aostavalley.it","bas.it","basilicata.it","cal.it","calabria.it","cam.it","campania.it","emilia-romagna.it","emiliaromagna.it","emr.it","friuli-v-giulia.it","friuli-ve-giulia.it","friuli-vegiulia.it","friuli-venezia-giulia.it","friuli-veneziagiulia.it","friuli-vgiulia.it","friuliv-giulia.it","friulive-giulia.it","friulivegiulia.it","friulivenezia-giulia.it","friuliveneziagiulia.it","friulivgiulia.it","fvg.it","laz.it","lazio.it","lig.it","liguria.it","lom.it","lombardia.it","lombardy.it","lucania.it","mar.it","marche.it","mol.it","molise.it","piedmont.it","piemonte.it","pmn.it","pug.it","puglia.it","sar.it","sardegna.it","sardinia.it","sic.it","sicilia.it","sicily.it","taa.it","tos.it","toscana.it","trentin-sud-tirol.it","trentin-süd-tirol.it","trentin-sudtirol.it","trentin-südtirol.it","trentin-sued-tirol.it","trentin-suedtirol.it","trentino.it","trentino-a-adige.it","trentino-aadige.it","trentino-alto-adige.it","trentino-altoadige.it","trentino-s-tirol.it","trentino-stirol.it","trentino-sud-tirol.it","trentino-süd-tirol.it","trentino-sudtirol.it","trentino-südtirol.it","trentino-sued-tirol.it","trentino-suedtirol.it","trentinoa-adige.it","trentinoaadige.it","trentinoalto-adige.it","trentinoaltoadige.it","trentinos-tirol.it","trentinostirol.it","trentinosud-tirol.it","trentinosüd-tirol.it","trentinosudtirol.it","trentinosüdtirol.it","trentinosued-tirol.it","trentinosuedtirol.it","trentinsud-tirol.it","trentinsüd-tirol.it","trentinsudtirol.it","trentinsüdtirol.it","trentinsued-tirol.it","trentinsuedtirol.it","tuscany.it","umb.it","umbria.it","val-d-aosta.it","val-daosta.it","vald-aosta.it","valdaosta.it","valle-aosta.it","valle-d-aosta.it","valle-daosta.it","valleaosta.it","valled-aosta.it","valledaosta.it","vallee-aoste.it","vallée-aoste.it","vallee-d-aoste.it","vallée-d-aoste.it","valleeaoste.it","valléeaoste.it","valleedaoste.it","valléedaoste.it","vao.it","vda.it","ven.it","veneto.it","ag.it","agrigento.it","al.it","alessandria.it","alto-adige.it","altoadige.it","an.it","ancona.it","andria-barletta-trani.it","andria-trani-barletta.it","andriabarlettatrani.it","andriatranibarletta.it","ao.it","aosta.it","aoste.it","ap.it","aq.it","aquila.it","ar.it","arezzo.it","ascoli-piceno.it","ascolipiceno.it","asti.it","at.it","av.it","avellino.it","ba.it","balsan.it","balsan-sudtirol.it","balsan-südtirol.it","balsan-suedtirol.it","bari.it","barletta-trani-andria.it","barlettatraniandria.it","belluno.it","benevento.it","bergamo.it","bg.it","bi.it","biella.it","bl.it","bn.it","bo.it","bologna.it","bolzano.it","bolzano-altoadige.it","bozen.it","bozen-sudtirol.it","bozen-südtirol.it","bozen-suedtirol.it","br.it","brescia.it","brindisi.it","bs.it","bt.it","bulsan.it","bulsan-sudtirol.it","bulsan-südtirol.it","bulsan-suedtirol.it","bz.it","ca.it","cagliari.it","caltanissetta.it","campidano-medio.it","campidanomedio.it","campobasso.it","carbonia-iglesias.it","carboniaiglesias.it","carrara-massa.it","carraramassa.it","caserta.it","catania.it","catanzaro.it","cb.it","ce.it","cesena-forli.it","cesena-forlì.it","cesenaforli.it","cesenaforlì.it","ch.it","chieti.it","ci.it","cl.it","cn.it","co.it","como.it","cosenza.it","cr.it","cremona.it","crotone.it","cs.it","ct.it","cuneo.it","cz.it","dell-ogliastra.it","dellogliastra.it","en.it","enna.it","fc.it","fe.it","fermo.it","ferrara.it","fg.it","fi.it","firenze.it","florence.it","fm.it","foggia.it","forli-cesena.it","forlì-cesena.it","forlicesena.it","forlìcesena.it","fr.it","frosinone.it","ge.it","genoa.it","genova.it","go.it","gorizia.it","gr.it","grosseto.it","iglesias-carbonia.it","iglesiascarbonia.it","im.it","imperia.it","is.it","isernia.it","kr.it","la-spezia.it","laquila.it","laspezia.it","latina.it","lc.it","le.it","lecce.it","lecco.it","li.it","livorno.it","lo.it","lodi.it","lt.it","lu.it","lucca.it","macerata.it","mantova.it","massa-carrara.it","massacarrara.it","matera.it","mb.it","mc.it","me.it","medio-campidano.it","mediocampidano.it","messina.it","mi.it","milan.it","milano.it","mn.it","mo.it","modena.it","monza.it","monza-brianza.it","monza-e-della-brianza.it","monzabrianza.it","monzaebrianza.it","monzaedellabrianza.it","ms.it","mt.it","na.it","naples.it","napoli.it","no.it","novara.it","nu.it","nuoro.it","og.it","ogliastra.it","olbia-tempio.it","olbiatempio.it","or.it","oristano.it","ot.it","pa.it","padova.it","padua.it","palermo.it","parma.it","pavia.it","pc.it","pd.it","pe.it","perugia.it","pesaro-urbino.it","pesarourbino.it","pescara.it","pg.it","pi.it","piacenza.it","pisa.it","pistoia.it","pn.it","po.it","pordenone.it","potenza.it","pr.it","prato.it","pt.it","pu.it","pv.it","pz.it","ra.it","ragusa.it","ravenna.it","rc.it","re.it","reggio-calabria.it","reggio-emilia.it","reggiocalabria.it","reggioemilia.it","rg.it","ri.it","rieti.it","rimini.it","rm.it","rn.it","ro.it","roma.it","rome.it","rovigo.it","sa.it","salerno.it","sassari.it","savona.it","si.it","siena.it","siracusa.it","so.it","sondrio.it","sp.it","sr.it","ss.it","südtirol.it","suedtirol.it","sv.it","ta.it","taranto.it","te.it","tempio-olbia.it","tempioolbia.it","teramo.it","terni.it","tn.it","to.it","torino.it","tp.it","tr.it","trani-andria-barletta.it","trani-barletta-andria.it","traniandriabarletta.it","tranibarlettaandria.it","trapani.it","trento.it","treviso.it","trieste.it","ts.it","turin.it","tv.it","ud.it","udine.it","urbino-pesaro.it","urbinopesaro.it","va.it","varese.it","vb.it","vc.it","ve.it","venezia.it","venice.it","verbania.it","vercelli.it","verona.it","vi.it","vibo-valentia.it","vibovalentia.it","vicenza.it","viterbo.it","vr.it","vs.it","vt.it","vv.it","je","co.je","net.je","org.je","*.jm","jo","agri.jo","ai.jo","com.jo","edu.jo","eng.jo","fm.jo","gov.jo","mil.jo","net.jo","org.jo","per.jo","phd.jo","sch.jo","tv.jo","jobs","jp","ac.jp","ad.jp","co.jp","ed.jp","go.jp","gr.jp","lg.jp","ne.jp","or.jp","aichi.jp","akita.jp","aomori.jp","chiba.jp","ehime.jp","fukui.jp","fukuoka.jp","fukushima.jp","gifu.jp","gunma.jp","hiroshima.jp","hokkaido.jp","hyogo.jp","ibaraki.jp","ishikawa.jp","iwate.jp","kagawa.jp","kagoshima.jp","kanagawa.jp","kochi.jp","kumamoto.jp","kyoto.jp","mie.jp","miyagi.jp","miyazaki.jp","nagano.jp","nagasaki.jp","nara.jp","niigata.jp","oita.jp","okayama.jp","okinawa.jp","osaka.jp","saga.jp","saitama.jp","shiga.jp","shimane.jp","shizuoka.jp","tochigi.jp","tokushima.jp","tokyo.jp","tottori.jp","toyama.jp","wakayama.jp","yamagata.jp","yamaguchi.jp","yamanashi.jp","三é‡.jp","京都.jp","ä½è³€.jp","兵庫.jp","北海é“.jp","åƒè‘‰.jp","å’ŒæŒå±±.jp","埼玉.jp","大分.jp","大阪.jp","奈良.jp","宮城.jp","宮崎.jp","富山.jp","å±±å£.jp","山形.jp","山梨.jp","å²é˜œ.jp","岡山.jp","岩手.jp","å³¶æ ¹.jp","広島.jp","徳島.jp","愛媛.jp","愛知.jp","新潟.jp","æ±äº¬.jp","æ ƒæœ¨.jp","沖縄.jp","滋賀.jp","熊本.jp","石å·.jp","神奈å·.jp","ç¦äº•.jp","ç¦å²¡.jp","ç¦å³¶.jp","ç§‹ç”°.jp","群馬.jp","茨城.jp","é•·å´Ž.jp","長野.jp","é’æ£®.jp","é™å²¡.jp","香å·.jp","高知.jp","é³¥å–.jp","鹿å…å³¶.jp","*.kawasaki.jp","!city.kawasaki.jp","*.kitakyushu.jp","!city.kitakyushu.jp","*.kobe.jp","!city.kobe.jp","*.nagoya.jp","!city.nagoya.jp","*.sapporo.jp","!city.sapporo.jp","*.sendai.jp","!city.sendai.jp","*.yokohama.jp","!city.yokohama.jp","aisai.aichi.jp","ama.aichi.jp","anjo.aichi.jp","asuke.aichi.jp","chiryu.aichi.jp","chita.aichi.jp","fuso.aichi.jp","gamagori.aichi.jp","handa.aichi.jp","hazu.aichi.jp","hekinan.aichi.jp","higashiura.aichi.jp","ichinomiya.aichi.jp","inazawa.aichi.jp","inuyama.aichi.jp","isshiki.aichi.jp","iwakura.aichi.jp","kanie.aichi.jp","kariya.aichi.jp","kasugai.aichi.jp","kira.aichi.jp","kiyosu.aichi.jp","komaki.aichi.jp","konan.aichi.jp","kota.aichi.jp","mihama.aichi.jp","miyoshi.aichi.jp","nishio.aichi.jp","nisshin.aichi.jp","obu.aichi.jp","oguchi.aichi.jp","oharu.aichi.jp","okazaki.aichi.jp","owariasahi.aichi.jp","seto.aichi.jp","shikatsu.aichi.jp","shinshiro.aichi.jp","shitara.aichi.jp","tahara.aichi.jp","takahama.aichi.jp","tobishima.aichi.jp","toei.aichi.jp","togo.aichi.jp","tokai.aichi.jp","tokoname.aichi.jp","toyoake.aichi.jp","toyohashi.aichi.jp","toyokawa.aichi.jp","toyone.aichi.jp","toyota.aichi.jp","tsushima.aichi.jp","yatomi.aichi.jp","akita.akita.jp","daisen.akita.jp","fujisato.akita.jp","gojome.akita.jp","hachirogata.akita.jp","happou.akita.jp","higashinaruse.akita.jp","honjo.akita.jp","honjyo.akita.jp","ikawa.akita.jp","kamikoani.akita.jp","kamioka.akita.jp","katagami.akita.jp","kazuno.akita.jp","kitaakita.akita.jp","kosaka.akita.jp","kyowa.akita.jp","misato.akita.jp","mitane.akita.jp","moriyoshi.akita.jp","nikaho.akita.jp","noshiro.akita.jp","odate.akita.jp","oga.akita.jp","ogata.akita.jp","semboku.akita.jp","yokote.akita.jp","yurihonjo.akita.jp","aomori.aomori.jp","gonohe.aomori.jp","hachinohe.aomori.jp","hashikami.aomori.jp","hiranai.aomori.jp","hirosaki.aomori.jp","itayanagi.aomori.jp","kuroishi.aomori.jp","misawa.aomori.jp","mutsu.aomori.jp","nakadomari.aomori.jp","noheji.aomori.jp","oirase.aomori.jp","owani.aomori.jp","rokunohe.aomori.jp","sannohe.aomori.jp","shichinohe.aomori.jp","shingo.aomori.jp","takko.aomori.jp","towada.aomori.jp","tsugaru.aomori.jp","tsuruta.aomori.jp","abiko.chiba.jp","asahi.chiba.jp","chonan.chiba.jp","chosei.chiba.jp","choshi.chiba.jp","chuo.chiba.jp","funabashi.chiba.jp","futtsu.chiba.jp","hanamigawa.chiba.jp","ichihara.chiba.jp","ichikawa.chiba.jp","ichinomiya.chiba.jp","inzai.chiba.jp","isumi.chiba.jp","kamagaya.chiba.jp","kamogawa.chiba.jp","kashiwa.chiba.jp","katori.chiba.jp","katsuura.chiba.jp","kimitsu.chiba.jp","kisarazu.chiba.jp","kozaki.chiba.jp","kujukuri.chiba.jp","kyonan.chiba.jp","matsudo.chiba.jp","midori.chiba.jp","mihama.chiba.jp","minamiboso.chiba.jp","mobara.chiba.jp","mutsuzawa.chiba.jp","nagara.chiba.jp","nagareyama.chiba.jp","narashino.chiba.jp","narita.chiba.jp","noda.chiba.jp","oamishirasato.chiba.jp","omigawa.chiba.jp","onjuku.chiba.jp","otaki.chiba.jp","sakae.chiba.jp","sakura.chiba.jp","shimofusa.chiba.jp","shirako.chiba.jp","shiroi.chiba.jp","shisui.chiba.jp","sodegaura.chiba.jp","sosa.chiba.jp","tako.chiba.jp","tateyama.chiba.jp","togane.chiba.jp","tohnosho.chiba.jp","tomisato.chiba.jp","urayasu.chiba.jp","yachimata.chiba.jp","yachiyo.chiba.jp","yokaichiba.chiba.jp","yokoshibahikari.chiba.jp","yotsukaido.chiba.jp","ainan.ehime.jp","honai.ehime.jp","ikata.ehime.jp","imabari.ehime.jp","iyo.ehime.jp","kamijima.ehime.jp","kihoku.ehime.jp","kumakogen.ehime.jp","masaki.ehime.jp","matsuno.ehime.jp","matsuyama.ehime.jp","namikata.ehime.jp","niihama.ehime.jp","ozu.ehime.jp","saijo.ehime.jp","seiyo.ehime.jp","shikokuchuo.ehime.jp","tobe.ehime.jp","toon.ehime.jp","uchiko.ehime.jp","uwajima.ehime.jp","yawatahama.ehime.jp","echizen.fukui.jp","eiheiji.fukui.jp","fukui.fukui.jp","ikeda.fukui.jp","katsuyama.fukui.jp","mihama.fukui.jp","minamiechizen.fukui.jp","obama.fukui.jp","ohi.fukui.jp","ono.fukui.jp","sabae.fukui.jp","sakai.fukui.jp","takahama.fukui.jp","tsuruga.fukui.jp","wakasa.fukui.jp","ashiya.fukuoka.jp","buzen.fukuoka.jp","chikugo.fukuoka.jp","chikuho.fukuoka.jp","chikujo.fukuoka.jp","chikushino.fukuoka.jp","chikuzen.fukuoka.jp","chuo.fukuoka.jp","dazaifu.fukuoka.jp","fukuchi.fukuoka.jp","hakata.fukuoka.jp","higashi.fukuoka.jp","hirokawa.fukuoka.jp","hisayama.fukuoka.jp","iizuka.fukuoka.jp","inatsuki.fukuoka.jp","kaho.fukuoka.jp","kasuga.fukuoka.jp","kasuya.fukuoka.jp","kawara.fukuoka.jp","keisen.fukuoka.jp","koga.fukuoka.jp","kurate.fukuoka.jp","kurogi.fukuoka.jp","kurume.fukuoka.jp","minami.fukuoka.jp","miyako.fukuoka.jp","miyama.fukuoka.jp","miyawaka.fukuoka.jp","mizumaki.fukuoka.jp","munakata.fukuoka.jp","nakagawa.fukuoka.jp","nakama.fukuoka.jp","nishi.fukuoka.jp","nogata.fukuoka.jp","ogori.fukuoka.jp","okagaki.fukuoka.jp","okawa.fukuoka.jp","oki.fukuoka.jp","omuta.fukuoka.jp","onga.fukuoka.jp","onojo.fukuoka.jp","oto.fukuoka.jp","saigawa.fukuoka.jp","sasaguri.fukuoka.jp","shingu.fukuoka.jp","shinyoshitomi.fukuoka.jp","shonai.fukuoka.jp","soeda.fukuoka.jp","sue.fukuoka.jp","tachiarai.fukuoka.jp","tagawa.fukuoka.jp","takata.fukuoka.jp","toho.fukuoka.jp","toyotsu.fukuoka.jp","tsuiki.fukuoka.jp","ukiha.fukuoka.jp","umi.fukuoka.jp","usui.fukuoka.jp","yamada.fukuoka.jp","yame.fukuoka.jp","yanagawa.fukuoka.jp","yukuhashi.fukuoka.jp","aizubange.fukushima.jp","aizumisato.fukushima.jp","aizuwakamatsu.fukushima.jp","asakawa.fukushima.jp","bandai.fukushima.jp","date.fukushima.jp","fukushima.fukushima.jp","furudono.fukushima.jp","futaba.fukushima.jp","hanawa.fukushima.jp","higashi.fukushima.jp","hirata.fukushima.jp","hirono.fukushima.jp","iitate.fukushima.jp","inawashiro.fukushima.jp","ishikawa.fukushima.jp","iwaki.fukushima.jp","izumizaki.fukushima.jp","kagamiishi.fukushima.jp","kaneyama.fukushima.jp","kawamata.fukushima.jp","kitakata.fukushima.jp","kitashiobara.fukushima.jp","koori.fukushima.jp","koriyama.fukushima.jp","kunimi.fukushima.jp","miharu.fukushima.jp","mishima.fukushima.jp","namie.fukushima.jp","nango.fukushima.jp","nishiaizu.fukushima.jp","nishigo.fukushima.jp","okuma.fukushima.jp","omotego.fukushima.jp","ono.fukushima.jp","otama.fukushima.jp","samegawa.fukushima.jp","shimogo.fukushima.jp","shirakawa.fukushima.jp","showa.fukushima.jp","soma.fukushima.jp","sukagawa.fukushima.jp","taishin.fukushima.jp","tamakawa.fukushima.jp","tanagura.fukushima.jp","tenei.fukushima.jp","yabuki.fukushima.jp","yamato.fukushima.jp","yamatsuri.fukushima.jp","yanaizu.fukushima.jp","yugawa.fukushima.jp","anpachi.gifu.jp","ena.gifu.jp","gifu.gifu.jp","ginan.gifu.jp","godo.gifu.jp","gujo.gifu.jp","hashima.gifu.jp","hichiso.gifu.jp","hida.gifu.jp","higashishirakawa.gifu.jp","ibigawa.gifu.jp","ikeda.gifu.jp","kakamigahara.gifu.jp","kani.gifu.jp","kasahara.gifu.jp","kasamatsu.gifu.jp","kawaue.gifu.jp","kitagata.gifu.jp","mino.gifu.jp","minokamo.gifu.jp","mitake.gifu.jp","mizunami.gifu.jp","motosu.gifu.jp","nakatsugawa.gifu.jp","ogaki.gifu.jp","sakahogi.gifu.jp","seki.gifu.jp","sekigahara.gifu.jp","shirakawa.gifu.jp","tajimi.gifu.jp","takayama.gifu.jp","tarui.gifu.jp","toki.gifu.jp","tomika.gifu.jp","wanouchi.gifu.jp","yamagata.gifu.jp","yaotsu.gifu.jp","yoro.gifu.jp","annaka.gunma.jp","chiyoda.gunma.jp","fujioka.gunma.jp","higashiagatsuma.gunma.jp","isesaki.gunma.jp","itakura.gunma.jp","kanna.gunma.jp","kanra.gunma.jp","katashina.gunma.jp","kawaba.gunma.jp","kiryu.gunma.jp","kusatsu.gunma.jp","maebashi.gunma.jp","meiwa.gunma.jp","midori.gunma.jp","minakami.gunma.jp","naganohara.gunma.jp","nakanojo.gunma.jp","nanmoku.gunma.jp","numata.gunma.jp","oizumi.gunma.jp","ora.gunma.jp","ota.gunma.jp","shibukawa.gunma.jp","shimonita.gunma.jp","shinto.gunma.jp","showa.gunma.jp","takasaki.gunma.jp","takayama.gunma.jp","tamamura.gunma.jp","tatebayashi.gunma.jp","tomioka.gunma.jp","tsukiyono.gunma.jp","tsumagoi.gunma.jp","ueno.gunma.jp","yoshioka.gunma.jp","asaminami.hiroshima.jp","daiwa.hiroshima.jp","etajima.hiroshima.jp","fuchu.hiroshima.jp","fukuyama.hiroshima.jp","hatsukaichi.hiroshima.jp","higashihiroshima.hiroshima.jp","hongo.hiroshima.jp","jinsekikogen.hiroshima.jp","kaita.hiroshima.jp","kui.hiroshima.jp","kumano.hiroshima.jp","kure.hiroshima.jp","mihara.hiroshima.jp","miyoshi.hiroshima.jp","naka.hiroshima.jp","onomichi.hiroshima.jp","osakikamijima.hiroshima.jp","otake.hiroshima.jp","saka.hiroshima.jp","sera.hiroshima.jp","seranishi.hiroshima.jp","shinichi.hiroshima.jp","shobara.hiroshima.jp","takehara.hiroshima.jp","abashiri.hokkaido.jp","abira.hokkaido.jp","aibetsu.hokkaido.jp","akabira.hokkaido.jp","akkeshi.hokkaido.jp","asahikawa.hokkaido.jp","ashibetsu.hokkaido.jp","ashoro.hokkaido.jp","assabu.hokkaido.jp","atsuma.hokkaido.jp","bibai.hokkaido.jp","biei.hokkaido.jp","bifuka.hokkaido.jp","bihoro.hokkaido.jp","biratori.hokkaido.jp","chippubetsu.hokkaido.jp","chitose.hokkaido.jp","date.hokkaido.jp","ebetsu.hokkaido.jp","embetsu.hokkaido.jp","eniwa.hokkaido.jp","erimo.hokkaido.jp","esan.hokkaido.jp","esashi.hokkaido.jp","fukagawa.hokkaido.jp","fukushima.hokkaido.jp","furano.hokkaido.jp","furubira.hokkaido.jp","haboro.hokkaido.jp","hakodate.hokkaido.jp","hamatonbetsu.hokkaido.jp","hidaka.hokkaido.jp","higashikagura.hokkaido.jp","higashikawa.hokkaido.jp","hiroo.hokkaido.jp","hokuryu.hokkaido.jp","hokuto.hokkaido.jp","honbetsu.hokkaido.jp","horokanai.hokkaido.jp","horonobe.hokkaido.jp","ikeda.hokkaido.jp","imakane.hokkaido.jp","ishikari.hokkaido.jp","iwamizawa.hokkaido.jp","iwanai.hokkaido.jp","kamifurano.hokkaido.jp","kamikawa.hokkaido.jp","kamishihoro.hokkaido.jp","kamisunagawa.hokkaido.jp","kamoenai.hokkaido.jp","kayabe.hokkaido.jp","kembuchi.hokkaido.jp","kikonai.hokkaido.jp","kimobetsu.hokkaido.jp","kitahiroshima.hokkaido.jp","kitami.hokkaido.jp","kiyosato.hokkaido.jp","koshimizu.hokkaido.jp","kunneppu.hokkaido.jp","kuriyama.hokkaido.jp","kuromatsunai.hokkaido.jp","kushiro.hokkaido.jp","kutchan.hokkaido.jp","kyowa.hokkaido.jp","mashike.hokkaido.jp","matsumae.hokkaido.jp","mikasa.hokkaido.jp","minamifurano.hokkaido.jp","mombetsu.hokkaido.jp","moseushi.hokkaido.jp","mukawa.hokkaido.jp","muroran.hokkaido.jp","naie.hokkaido.jp","nakagawa.hokkaido.jp","nakasatsunai.hokkaido.jp","nakatombetsu.hokkaido.jp","nanae.hokkaido.jp","nanporo.hokkaido.jp","nayoro.hokkaido.jp","nemuro.hokkaido.jp","niikappu.hokkaido.jp","niki.hokkaido.jp","nishiokoppe.hokkaido.jp","noboribetsu.hokkaido.jp","numata.hokkaido.jp","obihiro.hokkaido.jp","obira.hokkaido.jp","oketo.hokkaido.jp","okoppe.hokkaido.jp","otaru.hokkaido.jp","otobe.hokkaido.jp","otofuke.hokkaido.jp","otoineppu.hokkaido.jp","oumu.hokkaido.jp","ozora.hokkaido.jp","pippu.hokkaido.jp","rankoshi.hokkaido.jp","rebun.hokkaido.jp","rikubetsu.hokkaido.jp","rishiri.hokkaido.jp","rishirifuji.hokkaido.jp","saroma.hokkaido.jp","sarufutsu.hokkaido.jp","shakotan.hokkaido.jp","shari.hokkaido.jp","shibecha.hokkaido.jp","shibetsu.hokkaido.jp","shikabe.hokkaido.jp","shikaoi.hokkaido.jp","shimamaki.hokkaido.jp","shimizu.hokkaido.jp","shimokawa.hokkaido.jp","shinshinotsu.hokkaido.jp","shintoku.hokkaido.jp","shiranuka.hokkaido.jp","shiraoi.hokkaido.jp","shiriuchi.hokkaido.jp","sobetsu.hokkaido.jp","sunagawa.hokkaido.jp","taiki.hokkaido.jp","takasu.hokkaido.jp","takikawa.hokkaido.jp","takinoue.hokkaido.jp","teshikaga.hokkaido.jp","tobetsu.hokkaido.jp","tohma.hokkaido.jp","tomakomai.hokkaido.jp","tomari.hokkaido.jp","toya.hokkaido.jp","toyako.hokkaido.jp","toyotomi.hokkaido.jp","toyoura.hokkaido.jp","tsubetsu.hokkaido.jp","tsukigata.hokkaido.jp","urakawa.hokkaido.jp","urausu.hokkaido.jp","uryu.hokkaido.jp","utashinai.hokkaido.jp","wakkanai.hokkaido.jp","wassamu.hokkaido.jp","yakumo.hokkaido.jp","yoichi.hokkaido.jp","aioi.hyogo.jp","akashi.hyogo.jp","ako.hyogo.jp","amagasaki.hyogo.jp","aogaki.hyogo.jp","asago.hyogo.jp","ashiya.hyogo.jp","awaji.hyogo.jp","fukusaki.hyogo.jp","goshiki.hyogo.jp","harima.hyogo.jp","himeji.hyogo.jp","ichikawa.hyogo.jp","inagawa.hyogo.jp","itami.hyogo.jp","kakogawa.hyogo.jp","kamigori.hyogo.jp","kamikawa.hyogo.jp","kasai.hyogo.jp","kasuga.hyogo.jp","kawanishi.hyogo.jp","miki.hyogo.jp","minamiawaji.hyogo.jp","nishinomiya.hyogo.jp","nishiwaki.hyogo.jp","ono.hyogo.jp","sanda.hyogo.jp","sannan.hyogo.jp","sasayama.hyogo.jp","sayo.hyogo.jp","shingu.hyogo.jp","shinonsen.hyogo.jp","shiso.hyogo.jp","sumoto.hyogo.jp","taishi.hyogo.jp","taka.hyogo.jp","takarazuka.hyogo.jp","takasago.hyogo.jp","takino.hyogo.jp","tamba.hyogo.jp","tatsuno.hyogo.jp","toyooka.hyogo.jp","yabu.hyogo.jp","yashiro.hyogo.jp","yoka.hyogo.jp","yokawa.hyogo.jp","ami.ibaraki.jp","asahi.ibaraki.jp","bando.ibaraki.jp","chikusei.ibaraki.jp","daigo.ibaraki.jp","fujishiro.ibaraki.jp","hitachi.ibaraki.jp","hitachinaka.ibaraki.jp","hitachiomiya.ibaraki.jp","hitachiota.ibaraki.jp","ibaraki.ibaraki.jp","ina.ibaraki.jp","inashiki.ibaraki.jp","itako.ibaraki.jp","iwama.ibaraki.jp","joso.ibaraki.jp","kamisu.ibaraki.jp","kasama.ibaraki.jp","kashima.ibaraki.jp","kasumigaura.ibaraki.jp","koga.ibaraki.jp","miho.ibaraki.jp","mito.ibaraki.jp","moriya.ibaraki.jp","naka.ibaraki.jp","namegata.ibaraki.jp","oarai.ibaraki.jp","ogawa.ibaraki.jp","omitama.ibaraki.jp","ryugasaki.ibaraki.jp","sakai.ibaraki.jp","sakuragawa.ibaraki.jp","shimodate.ibaraki.jp","shimotsuma.ibaraki.jp","shirosato.ibaraki.jp","sowa.ibaraki.jp","suifu.ibaraki.jp","takahagi.ibaraki.jp","tamatsukuri.ibaraki.jp","tokai.ibaraki.jp","tomobe.ibaraki.jp","tone.ibaraki.jp","toride.ibaraki.jp","tsuchiura.ibaraki.jp","tsukuba.ibaraki.jp","uchihara.ibaraki.jp","ushiku.ibaraki.jp","yachiyo.ibaraki.jp","yamagata.ibaraki.jp","yawara.ibaraki.jp","yuki.ibaraki.jp","anamizu.ishikawa.jp","hakui.ishikawa.jp","hakusan.ishikawa.jp","kaga.ishikawa.jp","kahoku.ishikawa.jp","kanazawa.ishikawa.jp","kawakita.ishikawa.jp","komatsu.ishikawa.jp","nakanoto.ishikawa.jp","nanao.ishikawa.jp","nomi.ishikawa.jp","nonoichi.ishikawa.jp","noto.ishikawa.jp","shika.ishikawa.jp","suzu.ishikawa.jp","tsubata.ishikawa.jp","tsurugi.ishikawa.jp","uchinada.ishikawa.jp","wajima.ishikawa.jp","fudai.iwate.jp","fujisawa.iwate.jp","hanamaki.iwate.jp","hiraizumi.iwate.jp","hirono.iwate.jp","ichinohe.iwate.jp","ichinoseki.iwate.jp","iwaizumi.iwate.jp","iwate.iwate.jp","joboji.iwate.jp","kamaishi.iwate.jp","kanegasaki.iwate.jp","karumai.iwate.jp","kawai.iwate.jp","kitakami.iwate.jp","kuji.iwate.jp","kunohe.iwate.jp","kuzumaki.iwate.jp","miyako.iwate.jp","mizusawa.iwate.jp","morioka.iwate.jp","ninohe.iwate.jp","noda.iwate.jp","ofunato.iwate.jp","oshu.iwate.jp","otsuchi.iwate.jp","rikuzentakata.iwate.jp","shiwa.iwate.jp","shizukuishi.iwate.jp","sumita.iwate.jp","tanohata.iwate.jp","tono.iwate.jp","yahaba.iwate.jp","yamada.iwate.jp","ayagawa.kagawa.jp","higashikagawa.kagawa.jp","kanonji.kagawa.jp","kotohira.kagawa.jp","manno.kagawa.jp","marugame.kagawa.jp","mitoyo.kagawa.jp","naoshima.kagawa.jp","sanuki.kagawa.jp","tadotsu.kagawa.jp","takamatsu.kagawa.jp","tonosho.kagawa.jp","uchinomi.kagawa.jp","utazu.kagawa.jp","zentsuji.kagawa.jp","akune.kagoshima.jp","amami.kagoshima.jp","hioki.kagoshima.jp","isa.kagoshima.jp","isen.kagoshima.jp","izumi.kagoshima.jp","kagoshima.kagoshima.jp","kanoya.kagoshima.jp","kawanabe.kagoshima.jp","kinko.kagoshima.jp","kouyama.kagoshima.jp","makurazaki.kagoshima.jp","matsumoto.kagoshima.jp","minamitane.kagoshima.jp","nakatane.kagoshima.jp","nishinoomote.kagoshima.jp","satsumasendai.kagoshima.jp","soo.kagoshima.jp","tarumizu.kagoshima.jp","yusui.kagoshima.jp","aikawa.kanagawa.jp","atsugi.kanagawa.jp","ayase.kanagawa.jp","chigasaki.kanagawa.jp","ebina.kanagawa.jp","fujisawa.kanagawa.jp","hadano.kanagawa.jp","hakone.kanagawa.jp","hiratsuka.kanagawa.jp","isehara.kanagawa.jp","kaisei.kanagawa.jp","kamakura.kanagawa.jp","kiyokawa.kanagawa.jp","matsuda.kanagawa.jp","minamiashigara.kanagawa.jp","miura.kanagawa.jp","nakai.kanagawa.jp","ninomiya.kanagawa.jp","odawara.kanagawa.jp","oi.kanagawa.jp","oiso.kanagawa.jp","sagamihara.kanagawa.jp","samukawa.kanagawa.jp","tsukui.kanagawa.jp","yamakita.kanagawa.jp","yamato.kanagawa.jp","yokosuka.kanagawa.jp","yugawara.kanagawa.jp","zama.kanagawa.jp","zushi.kanagawa.jp","aki.kochi.jp","geisei.kochi.jp","hidaka.kochi.jp","higashitsuno.kochi.jp","ino.kochi.jp","kagami.kochi.jp","kami.kochi.jp","kitagawa.kochi.jp","kochi.kochi.jp","mihara.kochi.jp","motoyama.kochi.jp","muroto.kochi.jp","nahari.kochi.jp","nakamura.kochi.jp","nankoku.kochi.jp","nishitosa.kochi.jp","niyodogawa.kochi.jp","ochi.kochi.jp","okawa.kochi.jp","otoyo.kochi.jp","otsuki.kochi.jp","sakawa.kochi.jp","sukumo.kochi.jp","susaki.kochi.jp","tosa.kochi.jp","tosashimizu.kochi.jp","toyo.kochi.jp","tsuno.kochi.jp","umaji.kochi.jp","yasuda.kochi.jp","yusuhara.kochi.jp","amakusa.kumamoto.jp","arao.kumamoto.jp","aso.kumamoto.jp","choyo.kumamoto.jp","gyokuto.kumamoto.jp","kamiamakusa.kumamoto.jp","kikuchi.kumamoto.jp","kumamoto.kumamoto.jp","mashiki.kumamoto.jp","mifune.kumamoto.jp","minamata.kumamoto.jp","minamioguni.kumamoto.jp","nagasu.kumamoto.jp","nishihara.kumamoto.jp","oguni.kumamoto.jp","ozu.kumamoto.jp","sumoto.kumamoto.jp","takamori.kumamoto.jp","uki.kumamoto.jp","uto.kumamoto.jp","yamaga.kumamoto.jp","yamato.kumamoto.jp","yatsushiro.kumamoto.jp","ayabe.kyoto.jp","fukuchiyama.kyoto.jp","higashiyama.kyoto.jp","ide.kyoto.jp","ine.kyoto.jp","joyo.kyoto.jp","kameoka.kyoto.jp","kamo.kyoto.jp","kita.kyoto.jp","kizu.kyoto.jp","kumiyama.kyoto.jp","kyotamba.kyoto.jp","kyotanabe.kyoto.jp","kyotango.kyoto.jp","maizuru.kyoto.jp","minami.kyoto.jp","minamiyamashiro.kyoto.jp","miyazu.kyoto.jp","muko.kyoto.jp","nagaokakyo.kyoto.jp","nakagyo.kyoto.jp","nantan.kyoto.jp","oyamazaki.kyoto.jp","sakyo.kyoto.jp","seika.kyoto.jp","tanabe.kyoto.jp","uji.kyoto.jp","ujitawara.kyoto.jp","wazuka.kyoto.jp","yamashina.kyoto.jp","yawata.kyoto.jp","asahi.mie.jp","inabe.mie.jp","ise.mie.jp","kameyama.mie.jp","kawagoe.mie.jp","kiho.mie.jp","kisosaki.mie.jp","kiwa.mie.jp","komono.mie.jp","kumano.mie.jp","kuwana.mie.jp","matsusaka.mie.jp","meiwa.mie.jp","mihama.mie.jp","minamiise.mie.jp","misugi.mie.jp","miyama.mie.jp","nabari.mie.jp","shima.mie.jp","suzuka.mie.jp","tado.mie.jp","taiki.mie.jp","taki.mie.jp","tamaki.mie.jp","toba.mie.jp","tsu.mie.jp","udono.mie.jp","ureshino.mie.jp","watarai.mie.jp","yokkaichi.mie.jp","furukawa.miyagi.jp","higashimatsushima.miyagi.jp","ishinomaki.miyagi.jp","iwanuma.miyagi.jp","kakuda.miyagi.jp","kami.miyagi.jp","kawasaki.miyagi.jp","marumori.miyagi.jp","matsushima.miyagi.jp","minamisanriku.miyagi.jp","misato.miyagi.jp","murata.miyagi.jp","natori.miyagi.jp","ogawara.miyagi.jp","ohira.miyagi.jp","onagawa.miyagi.jp","osaki.miyagi.jp","rifu.miyagi.jp","semine.miyagi.jp","shibata.miyagi.jp","shichikashuku.miyagi.jp","shikama.miyagi.jp","shiogama.miyagi.jp","shiroishi.miyagi.jp","tagajo.miyagi.jp","taiwa.miyagi.jp","tome.miyagi.jp","tomiya.miyagi.jp","wakuya.miyagi.jp","watari.miyagi.jp","yamamoto.miyagi.jp","zao.miyagi.jp","aya.miyazaki.jp","ebino.miyazaki.jp","gokase.miyazaki.jp","hyuga.miyazaki.jp","kadogawa.miyazaki.jp","kawaminami.miyazaki.jp","kijo.miyazaki.jp","kitagawa.miyazaki.jp","kitakata.miyazaki.jp","kitaura.miyazaki.jp","kobayashi.miyazaki.jp","kunitomi.miyazaki.jp","kushima.miyazaki.jp","mimata.miyazaki.jp","miyakonojo.miyazaki.jp","miyazaki.miyazaki.jp","morotsuka.miyazaki.jp","nichinan.miyazaki.jp","nishimera.miyazaki.jp","nobeoka.miyazaki.jp","saito.miyazaki.jp","shiiba.miyazaki.jp","shintomi.miyazaki.jp","takaharu.miyazaki.jp","takanabe.miyazaki.jp","takazaki.miyazaki.jp","tsuno.miyazaki.jp","achi.nagano.jp","agematsu.nagano.jp","anan.nagano.jp","aoki.nagano.jp","asahi.nagano.jp","azumino.nagano.jp","chikuhoku.nagano.jp","chikuma.nagano.jp","chino.nagano.jp","fujimi.nagano.jp","hakuba.nagano.jp","hara.nagano.jp","hiraya.nagano.jp","iida.nagano.jp","iijima.nagano.jp","iiyama.nagano.jp","iizuna.nagano.jp","ikeda.nagano.jp","ikusaka.nagano.jp","ina.nagano.jp","karuizawa.nagano.jp","kawakami.nagano.jp","kiso.nagano.jp","kisofukushima.nagano.jp","kitaaiki.nagano.jp","komagane.nagano.jp","komoro.nagano.jp","matsukawa.nagano.jp","matsumoto.nagano.jp","miasa.nagano.jp","minamiaiki.nagano.jp","minamimaki.nagano.jp","minamiminowa.nagano.jp","minowa.nagano.jp","miyada.nagano.jp","miyota.nagano.jp","mochizuki.nagano.jp","nagano.nagano.jp","nagawa.nagano.jp","nagiso.nagano.jp","nakagawa.nagano.jp","nakano.nagano.jp","nozawaonsen.nagano.jp","obuse.nagano.jp","ogawa.nagano.jp","okaya.nagano.jp","omachi.nagano.jp","omi.nagano.jp","ookuwa.nagano.jp","ooshika.nagano.jp","otaki.nagano.jp","otari.nagano.jp","sakae.nagano.jp","sakaki.nagano.jp","saku.nagano.jp","sakuho.nagano.jp","shimosuwa.nagano.jp","shinanomachi.nagano.jp","shiojiri.nagano.jp","suwa.nagano.jp","suzaka.nagano.jp","takagi.nagano.jp","takamori.nagano.jp","takayama.nagano.jp","tateshina.nagano.jp","tatsuno.nagano.jp","togakushi.nagano.jp","togura.nagano.jp","tomi.nagano.jp","ueda.nagano.jp","wada.nagano.jp","yamagata.nagano.jp","yamanouchi.nagano.jp","yasaka.nagano.jp","yasuoka.nagano.jp","chijiwa.nagasaki.jp","futsu.nagasaki.jp","goto.nagasaki.jp","hasami.nagasaki.jp","hirado.nagasaki.jp","iki.nagasaki.jp","isahaya.nagasaki.jp","kawatana.nagasaki.jp","kuchinotsu.nagasaki.jp","matsuura.nagasaki.jp","nagasaki.nagasaki.jp","obama.nagasaki.jp","omura.nagasaki.jp","oseto.nagasaki.jp","saikai.nagasaki.jp","sasebo.nagasaki.jp","seihi.nagasaki.jp","shimabara.nagasaki.jp","shinkamigoto.nagasaki.jp","togitsu.nagasaki.jp","tsushima.nagasaki.jp","unzen.nagasaki.jp","ando.nara.jp","gose.nara.jp","heguri.nara.jp","higashiyoshino.nara.jp","ikaruga.nara.jp","ikoma.nara.jp","kamikitayama.nara.jp","kanmaki.nara.jp","kashiba.nara.jp","kashihara.nara.jp","katsuragi.nara.jp","kawai.nara.jp","kawakami.nara.jp","kawanishi.nara.jp","koryo.nara.jp","kurotaki.nara.jp","mitsue.nara.jp","miyake.nara.jp","nara.nara.jp","nosegawa.nara.jp","oji.nara.jp","ouda.nara.jp","oyodo.nara.jp","sakurai.nara.jp","sango.nara.jp","shimoichi.nara.jp","shimokitayama.nara.jp","shinjo.nara.jp","soni.nara.jp","takatori.nara.jp","tawaramoto.nara.jp","tenkawa.nara.jp","tenri.nara.jp","uda.nara.jp","yamatokoriyama.nara.jp","yamatotakada.nara.jp","yamazoe.nara.jp","yoshino.nara.jp","aga.niigata.jp","agano.niigata.jp","gosen.niigata.jp","itoigawa.niigata.jp","izumozaki.niigata.jp","joetsu.niigata.jp","kamo.niigata.jp","kariwa.niigata.jp","kashiwazaki.niigata.jp","minamiuonuma.niigata.jp","mitsuke.niigata.jp","muika.niigata.jp","murakami.niigata.jp","myoko.niigata.jp","nagaoka.niigata.jp","niigata.niigata.jp","ojiya.niigata.jp","omi.niigata.jp","sado.niigata.jp","sanjo.niigata.jp","seiro.niigata.jp","seirou.niigata.jp","sekikawa.niigata.jp","shibata.niigata.jp","tagami.niigata.jp","tainai.niigata.jp","tochio.niigata.jp","tokamachi.niigata.jp","tsubame.niigata.jp","tsunan.niigata.jp","uonuma.niigata.jp","yahiko.niigata.jp","yoita.niigata.jp","yuzawa.niigata.jp","beppu.oita.jp","bungoono.oita.jp","bungotakada.oita.jp","hasama.oita.jp","hiji.oita.jp","himeshima.oita.jp","hita.oita.jp","kamitsue.oita.jp","kokonoe.oita.jp","kuju.oita.jp","kunisaki.oita.jp","kusu.oita.jp","oita.oita.jp","saiki.oita.jp","taketa.oita.jp","tsukumi.oita.jp","usa.oita.jp","usuki.oita.jp","yufu.oita.jp","akaiwa.okayama.jp","asakuchi.okayama.jp","bizen.okayama.jp","hayashima.okayama.jp","ibara.okayama.jp","kagamino.okayama.jp","kasaoka.okayama.jp","kibichuo.okayama.jp","kumenan.okayama.jp","kurashiki.okayama.jp","maniwa.okayama.jp","misaki.okayama.jp","nagi.okayama.jp","niimi.okayama.jp","nishiawakura.okayama.jp","okayama.okayama.jp","satosho.okayama.jp","setouchi.okayama.jp","shinjo.okayama.jp","shoo.okayama.jp","soja.okayama.jp","takahashi.okayama.jp","tamano.okayama.jp","tsuyama.okayama.jp","wake.okayama.jp","yakage.okayama.jp","aguni.okinawa.jp","ginowan.okinawa.jp","ginoza.okinawa.jp","gushikami.okinawa.jp","haebaru.okinawa.jp","higashi.okinawa.jp","hirara.okinawa.jp","iheya.okinawa.jp","ishigaki.okinawa.jp","ishikawa.okinawa.jp","itoman.okinawa.jp","izena.okinawa.jp","kadena.okinawa.jp","kin.okinawa.jp","kitadaito.okinawa.jp","kitanakagusuku.okinawa.jp","kumejima.okinawa.jp","kunigami.okinawa.jp","minamidaito.okinawa.jp","motobu.okinawa.jp","nago.okinawa.jp","naha.okinawa.jp","nakagusuku.okinawa.jp","nakijin.okinawa.jp","nanjo.okinawa.jp","nishihara.okinawa.jp","ogimi.okinawa.jp","okinawa.okinawa.jp","onna.okinawa.jp","shimoji.okinawa.jp","taketomi.okinawa.jp","tarama.okinawa.jp","tokashiki.okinawa.jp","tomigusuku.okinawa.jp","tonaki.okinawa.jp","urasoe.okinawa.jp","uruma.okinawa.jp","yaese.okinawa.jp","yomitan.okinawa.jp","yonabaru.okinawa.jp","yonaguni.okinawa.jp","zamami.okinawa.jp","abeno.osaka.jp","chihayaakasaka.osaka.jp","chuo.osaka.jp","daito.osaka.jp","fujiidera.osaka.jp","habikino.osaka.jp","hannan.osaka.jp","higashiosaka.osaka.jp","higashisumiyoshi.osaka.jp","higashiyodogawa.osaka.jp","hirakata.osaka.jp","ibaraki.osaka.jp","ikeda.osaka.jp","izumi.osaka.jp","izumiotsu.osaka.jp","izumisano.osaka.jp","kadoma.osaka.jp","kaizuka.osaka.jp","kanan.osaka.jp","kashiwara.osaka.jp","katano.osaka.jp","kawachinagano.osaka.jp","kishiwada.osaka.jp","kita.osaka.jp","kumatori.osaka.jp","matsubara.osaka.jp","minato.osaka.jp","minoh.osaka.jp","misaki.osaka.jp","moriguchi.osaka.jp","neyagawa.osaka.jp","nishi.osaka.jp","nose.osaka.jp","osakasayama.osaka.jp","sakai.osaka.jp","sayama.osaka.jp","sennan.osaka.jp","settsu.osaka.jp","shijonawate.osaka.jp","shimamoto.osaka.jp","suita.osaka.jp","tadaoka.osaka.jp","taishi.osaka.jp","tajiri.osaka.jp","takaishi.osaka.jp","takatsuki.osaka.jp","tondabayashi.osaka.jp","toyonaka.osaka.jp","toyono.osaka.jp","yao.osaka.jp","ariake.saga.jp","arita.saga.jp","fukudomi.saga.jp","genkai.saga.jp","hamatama.saga.jp","hizen.saga.jp","imari.saga.jp","kamimine.saga.jp","kanzaki.saga.jp","karatsu.saga.jp","kashima.saga.jp","kitagata.saga.jp","kitahata.saga.jp","kiyama.saga.jp","kouhoku.saga.jp","kyuragi.saga.jp","nishiarita.saga.jp","ogi.saga.jp","omachi.saga.jp","ouchi.saga.jp","saga.saga.jp","shiroishi.saga.jp","taku.saga.jp","tara.saga.jp","tosu.saga.jp","yoshinogari.saga.jp","arakawa.saitama.jp","asaka.saitama.jp","chichibu.saitama.jp","fujimi.saitama.jp","fujimino.saitama.jp","fukaya.saitama.jp","hanno.saitama.jp","hanyu.saitama.jp","hasuda.saitama.jp","hatogaya.saitama.jp","hatoyama.saitama.jp","hidaka.saitama.jp","higashichichibu.saitama.jp","higashimatsuyama.saitama.jp","honjo.saitama.jp","ina.saitama.jp","iruma.saitama.jp","iwatsuki.saitama.jp","kamiizumi.saitama.jp","kamikawa.saitama.jp","kamisato.saitama.jp","kasukabe.saitama.jp","kawagoe.saitama.jp","kawaguchi.saitama.jp","kawajima.saitama.jp","kazo.saitama.jp","kitamoto.saitama.jp","koshigaya.saitama.jp","kounosu.saitama.jp","kuki.saitama.jp","kumagaya.saitama.jp","matsubushi.saitama.jp","minano.saitama.jp","misato.saitama.jp","miyashiro.saitama.jp","miyoshi.saitama.jp","moroyama.saitama.jp","nagatoro.saitama.jp","namegawa.saitama.jp","niiza.saitama.jp","ogano.saitama.jp","ogawa.saitama.jp","ogose.saitama.jp","okegawa.saitama.jp","omiya.saitama.jp","otaki.saitama.jp","ranzan.saitama.jp","ryokami.saitama.jp","saitama.saitama.jp","sakado.saitama.jp","satte.saitama.jp","sayama.saitama.jp","shiki.saitama.jp","shiraoka.saitama.jp","soka.saitama.jp","sugito.saitama.jp","toda.saitama.jp","tokigawa.saitama.jp","tokorozawa.saitama.jp","tsurugashima.saitama.jp","urawa.saitama.jp","warabi.saitama.jp","yashio.saitama.jp","yokoze.saitama.jp","yono.saitama.jp","yorii.saitama.jp","yoshida.saitama.jp","yoshikawa.saitama.jp","yoshimi.saitama.jp","aisho.shiga.jp","gamo.shiga.jp","higashiomi.shiga.jp","hikone.shiga.jp","koka.shiga.jp","konan.shiga.jp","kosei.shiga.jp","koto.shiga.jp","kusatsu.shiga.jp","maibara.shiga.jp","moriyama.shiga.jp","nagahama.shiga.jp","nishiazai.shiga.jp","notogawa.shiga.jp","omihachiman.shiga.jp","otsu.shiga.jp","ritto.shiga.jp","ryuoh.shiga.jp","takashima.shiga.jp","takatsuki.shiga.jp","torahime.shiga.jp","toyosato.shiga.jp","yasu.shiga.jp","akagi.shimane.jp","ama.shimane.jp","gotsu.shimane.jp","hamada.shimane.jp","higashiizumo.shimane.jp","hikawa.shimane.jp","hikimi.shimane.jp","izumo.shimane.jp","kakinoki.shimane.jp","masuda.shimane.jp","matsue.shimane.jp","misato.shimane.jp","nishinoshima.shimane.jp","ohda.shimane.jp","okinoshima.shimane.jp","okuizumo.shimane.jp","shimane.shimane.jp","tamayu.shimane.jp","tsuwano.shimane.jp","unnan.shimane.jp","yakumo.shimane.jp","yasugi.shimane.jp","yatsuka.shimane.jp","arai.shizuoka.jp","atami.shizuoka.jp","fuji.shizuoka.jp","fujieda.shizuoka.jp","fujikawa.shizuoka.jp","fujinomiya.shizuoka.jp","fukuroi.shizuoka.jp","gotemba.shizuoka.jp","haibara.shizuoka.jp","hamamatsu.shizuoka.jp","higashiizu.shizuoka.jp","ito.shizuoka.jp","iwata.shizuoka.jp","izu.shizuoka.jp","izunokuni.shizuoka.jp","kakegawa.shizuoka.jp","kannami.shizuoka.jp","kawanehon.shizuoka.jp","kawazu.shizuoka.jp","kikugawa.shizuoka.jp","kosai.shizuoka.jp","makinohara.shizuoka.jp","matsuzaki.shizuoka.jp","minamiizu.shizuoka.jp","mishima.shizuoka.jp","morimachi.shizuoka.jp","nishiizu.shizuoka.jp","numazu.shizuoka.jp","omaezaki.shizuoka.jp","shimada.shizuoka.jp","shimizu.shizuoka.jp","shimoda.shizuoka.jp","shizuoka.shizuoka.jp","susono.shizuoka.jp","yaizu.shizuoka.jp","yoshida.shizuoka.jp","ashikaga.tochigi.jp","bato.tochigi.jp","haga.tochigi.jp","ichikai.tochigi.jp","iwafune.tochigi.jp","kaminokawa.tochigi.jp","kanuma.tochigi.jp","karasuyama.tochigi.jp","kuroiso.tochigi.jp","mashiko.tochigi.jp","mibu.tochigi.jp","moka.tochigi.jp","motegi.tochigi.jp","nasu.tochigi.jp","nasushiobara.tochigi.jp","nikko.tochigi.jp","nishikata.tochigi.jp","nogi.tochigi.jp","ohira.tochigi.jp","ohtawara.tochigi.jp","oyama.tochigi.jp","sakura.tochigi.jp","sano.tochigi.jp","shimotsuke.tochigi.jp","shioya.tochigi.jp","takanezawa.tochigi.jp","tochigi.tochigi.jp","tsuga.tochigi.jp","ujiie.tochigi.jp","utsunomiya.tochigi.jp","yaita.tochigi.jp","aizumi.tokushima.jp","anan.tokushima.jp","ichiba.tokushima.jp","itano.tokushima.jp","kainan.tokushima.jp","komatsushima.tokushima.jp","matsushige.tokushima.jp","mima.tokushima.jp","minami.tokushima.jp","miyoshi.tokushima.jp","mugi.tokushima.jp","nakagawa.tokushima.jp","naruto.tokushima.jp","sanagochi.tokushima.jp","shishikui.tokushima.jp","tokushima.tokushima.jp","wajiki.tokushima.jp","adachi.tokyo.jp","akiruno.tokyo.jp","akishima.tokyo.jp","aogashima.tokyo.jp","arakawa.tokyo.jp","bunkyo.tokyo.jp","chiyoda.tokyo.jp","chofu.tokyo.jp","chuo.tokyo.jp","edogawa.tokyo.jp","fuchu.tokyo.jp","fussa.tokyo.jp","hachijo.tokyo.jp","hachioji.tokyo.jp","hamura.tokyo.jp","higashikurume.tokyo.jp","higashimurayama.tokyo.jp","higashiyamato.tokyo.jp","hino.tokyo.jp","hinode.tokyo.jp","hinohara.tokyo.jp","inagi.tokyo.jp","itabashi.tokyo.jp","katsushika.tokyo.jp","kita.tokyo.jp","kiyose.tokyo.jp","kodaira.tokyo.jp","koganei.tokyo.jp","kokubunji.tokyo.jp","komae.tokyo.jp","koto.tokyo.jp","kouzushima.tokyo.jp","kunitachi.tokyo.jp","machida.tokyo.jp","meguro.tokyo.jp","minato.tokyo.jp","mitaka.tokyo.jp","mizuho.tokyo.jp","musashimurayama.tokyo.jp","musashino.tokyo.jp","nakano.tokyo.jp","nerima.tokyo.jp","ogasawara.tokyo.jp","okutama.tokyo.jp","ome.tokyo.jp","oshima.tokyo.jp","ota.tokyo.jp","setagaya.tokyo.jp","shibuya.tokyo.jp","shinagawa.tokyo.jp","shinjuku.tokyo.jp","suginami.tokyo.jp","sumida.tokyo.jp","tachikawa.tokyo.jp","taito.tokyo.jp","tama.tokyo.jp","toshima.tokyo.jp","chizu.tottori.jp","hino.tottori.jp","kawahara.tottori.jp","koge.tottori.jp","kotoura.tottori.jp","misasa.tottori.jp","nanbu.tottori.jp","nichinan.tottori.jp","sakaiminato.tottori.jp","tottori.tottori.jp","wakasa.tottori.jp","yazu.tottori.jp","yonago.tottori.jp","asahi.toyama.jp","fuchu.toyama.jp","fukumitsu.toyama.jp","funahashi.toyama.jp","himi.toyama.jp","imizu.toyama.jp","inami.toyama.jp","johana.toyama.jp","kamiichi.toyama.jp","kurobe.toyama.jp","nakaniikawa.toyama.jp","namerikawa.toyama.jp","nanto.toyama.jp","nyuzen.toyama.jp","oyabe.toyama.jp","taira.toyama.jp","takaoka.toyama.jp","tateyama.toyama.jp","toga.toyama.jp","tonami.toyama.jp","toyama.toyama.jp","unazuki.toyama.jp","uozu.toyama.jp","yamada.toyama.jp","arida.wakayama.jp","aridagawa.wakayama.jp","gobo.wakayama.jp","hashimoto.wakayama.jp","hidaka.wakayama.jp","hirogawa.wakayama.jp","inami.wakayama.jp","iwade.wakayama.jp","kainan.wakayama.jp","kamitonda.wakayama.jp","katsuragi.wakayama.jp","kimino.wakayama.jp","kinokawa.wakayama.jp","kitayama.wakayama.jp","koya.wakayama.jp","koza.wakayama.jp","kozagawa.wakayama.jp","kudoyama.wakayama.jp","kushimoto.wakayama.jp","mihama.wakayama.jp","misato.wakayama.jp","nachikatsuura.wakayama.jp","shingu.wakayama.jp","shirahama.wakayama.jp","taiji.wakayama.jp","tanabe.wakayama.jp","wakayama.wakayama.jp","yuasa.wakayama.jp","yura.wakayama.jp","asahi.yamagata.jp","funagata.yamagata.jp","higashine.yamagata.jp","iide.yamagata.jp","kahoku.yamagata.jp","kaminoyama.yamagata.jp","kaneyama.yamagata.jp","kawanishi.yamagata.jp","mamurogawa.yamagata.jp","mikawa.yamagata.jp","murayama.yamagata.jp","nagai.yamagata.jp","nakayama.yamagata.jp","nanyo.yamagata.jp","nishikawa.yamagata.jp","obanazawa.yamagata.jp","oe.yamagata.jp","oguni.yamagata.jp","ohkura.yamagata.jp","oishida.yamagata.jp","sagae.yamagata.jp","sakata.yamagata.jp","sakegawa.yamagata.jp","shinjo.yamagata.jp","shirataka.yamagata.jp","shonai.yamagata.jp","takahata.yamagata.jp","tendo.yamagata.jp","tozawa.yamagata.jp","tsuruoka.yamagata.jp","yamagata.yamagata.jp","yamanobe.yamagata.jp","yonezawa.yamagata.jp","yuza.yamagata.jp","abu.yamaguchi.jp","hagi.yamaguchi.jp","hikari.yamaguchi.jp","hofu.yamaguchi.jp","iwakuni.yamaguchi.jp","kudamatsu.yamaguchi.jp","mitou.yamaguchi.jp","nagato.yamaguchi.jp","oshima.yamaguchi.jp","shimonoseki.yamaguchi.jp","shunan.yamaguchi.jp","tabuse.yamaguchi.jp","tokuyama.yamaguchi.jp","toyota.yamaguchi.jp","ube.yamaguchi.jp","yuu.yamaguchi.jp","chuo.yamanashi.jp","doshi.yamanashi.jp","fuefuki.yamanashi.jp","fujikawa.yamanashi.jp","fujikawaguchiko.yamanashi.jp","fujiyoshida.yamanashi.jp","hayakawa.yamanashi.jp","hokuto.yamanashi.jp","ichikawamisato.yamanashi.jp","kai.yamanashi.jp","kofu.yamanashi.jp","koshu.yamanashi.jp","kosuge.yamanashi.jp","minami-alps.yamanashi.jp","minobu.yamanashi.jp","nakamichi.yamanashi.jp","nanbu.yamanashi.jp","narusawa.yamanashi.jp","nirasaki.yamanashi.jp","nishikatsura.yamanashi.jp","oshino.yamanashi.jp","otsuki.yamanashi.jp","showa.yamanashi.jp","tabayama.yamanashi.jp","tsuru.yamanashi.jp","uenohara.yamanashi.jp","yamanakako.yamanashi.jp","yamanashi.yamanashi.jp","ke","ac.ke","co.ke","go.ke","info.ke","me.ke","mobi.ke","ne.ke","or.ke","sc.ke","kg","com.kg","edu.kg","gov.kg","mil.kg","net.kg","org.kg","*.kh","ki","biz.ki","com.ki","edu.ki","gov.ki","info.ki","net.ki","org.ki","km","ass.km","com.km","edu.km","gov.km","mil.km","nom.km","org.km","prd.km","tm.km","asso.km","coop.km","gouv.km","medecin.km","notaires.km","pharmaciens.km","presse.km","veterinaire.km","kn","edu.kn","gov.kn","net.kn","org.kn","kp","com.kp","edu.kp","gov.kp","org.kp","rep.kp","tra.kp","kr","ac.kr","co.kr","es.kr","go.kr","hs.kr","kg.kr","mil.kr","ms.kr","ne.kr","or.kr","pe.kr","re.kr","sc.kr","busan.kr","chungbuk.kr","chungnam.kr","daegu.kr","daejeon.kr","gangwon.kr","gwangju.kr","gyeongbuk.kr","gyeonggi.kr","gyeongnam.kr","incheon.kr","jeju.kr","jeonbuk.kr","jeonnam.kr","seoul.kr","ulsan.kr","kw","com.kw","edu.kw","emb.kw","gov.kw","ind.kw","net.kw","org.kw","ky","com.ky","edu.ky","net.ky","org.ky","kz","com.kz","edu.kz","gov.kz","mil.kz","net.kz","org.kz","la","com.la","edu.la","gov.la","info.la","int.la","net.la","org.la","per.la","lb","com.lb","edu.lb","gov.lb","net.lb","org.lb","lc","co.lc","com.lc","edu.lc","gov.lc","net.lc","org.lc","li","lk","ac.lk","assn.lk","com.lk","edu.lk","gov.lk","grp.lk","hotel.lk","int.lk","ltd.lk","net.lk","ngo.lk","org.lk","sch.lk","soc.lk","web.lk","lr","com.lr","edu.lr","gov.lr","net.lr","org.lr","ls","ac.ls","biz.ls","co.ls","edu.ls","gov.ls","info.ls","net.ls","org.ls","sc.ls","lt","gov.lt","lu","lv","asn.lv","com.lv","conf.lv","edu.lv","gov.lv","id.lv","mil.lv","net.lv","org.lv","ly","com.ly","edu.ly","gov.ly","id.ly","med.ly","net.ly","org.ly","plc.ly","sch.ly","ma","ac.ma","co.ma","gov.ma","net.ma","org.ma","press.ma","mc","asso.mc","tm.mc","md","me","ac.me","co.me","edu.me","gov.me","its.me","net.me","org.me","priv.me","mg","co.mg","com.mg","edu.mg","gov.mg","mil.mg","nom.mg","org.mg","prd.mg","mh","mil","mk","com.mk","edu.mk","gov.mk","inf.mk","name.mk","net.mk","org.mk","ml","com.ml","edu.ml","gouv.ml","gov.ml","net.ml","org.ml","presse.ml","*.mm","mn","edu.mn","gov.mn","org.mn","mo","com.mo","edu.mo","gov.mo","net.mo","org.mo","mobi","mp","mq","mr","gov.mr","ms","com.ms","edu.ms","gov.ms","net.ms","org.ms","mt","com.mt","edu.mt","net.mt","org.mt","mu","ac.mu","co.mu","com.mu","gov.mu","net.mu","or.mu","org.mu","museum","mv","aero.mv","biz.mv","com.mv","coop.mv","edu.mv","gov.mv","info.mv","int.mv","mil.mv","museum.mv","name.mv","net.mv","org.mv","pro.mv","mw","ac.mw","biz.mw","co.mw","com.mw","coop.mw","edu.mw","gov.mw","int.mw","net.mw","org.mw","mx","com.mx","edu.mx","gob.mx","net.mx","org.mx","my","biz.my","com.my","edu.my","gov.my","mil.my","name.my","net.my","org.my","mz","ac.mz","adv.mz","co.mz","edu.mz","gov.mz","mil.mz","net.mz","org.mz","na","alt.na","co.na","com.na","gov.na","net.na","org.na","name","nc","asso.nc","nom.nc","ne","net","nf","arts.nf","com.nf","firm.nf","info.nf","net.nf","other.nf","per.nf","rec.nf","store.nf","web.nf","ng","com.ng","edu.ng","gov.ng","i.ng","mil.ng","mobi.ng","name.ng","net.ng","org.ng","sch.ng","ni","ac.ni","biz.ni","co.ni","com.ni","edu.ni","gob.ni","in.ni","info.ni","int.ni","mil.ni","net.ni","nom.ni","org.ni","web.ni","nl","no","fhs.no","folkebibl.no","fylkesbibl.no","idrett.no","museum.no","priv.no","vgs.no","dep.no","herad.no","kommune.no","mil.no","stat.no","aa.no","ah.no","bu.no","fm.no","hl.no","hm.no","jan-mayen.no","mr.no","nl.no","nt.no","of.no","ol.no","oslo.no","rl.no","sf.no","st.no","svalbard.no","tm.no","tr.no","va.no","vf.no","gs.aa.no","gs.ah.no","gs.bu.no","gs.fm.no","gs.hl.no","gs.hm.no","gs.jan-mayen.no","gs.mr.no","gs.nl.no","gs.nt.no","gs.of.no","gs.ol.no","gs.oslo.no","gs.rl.no","gs.sf.no","gs.st.no","gs.svalbard.no","gs.tm.no","gs.tr.no","gs.va.no","gs.vf.no","akrehamn.no","Ã¥krehamn.no","algard.no","Ã¥lgÃ¥rd.no","arna.no","bronnoysund.no","brønnøysund.no","brumunddal.no","bryne.no","drobak.no","drøbak.no","egersund.no","fetsund.no","floro.no","florø.no","fredrikstad.no","hokksund.no","honefoss.no","hønefoss.no","jessheim.no","jorpeland.no","jørpeland.no","kirkenes.no","kopervik.no","krokstadelva.no","langevag.no","langevÃ¥g.no","leirvik.no","mjondalen.no","mjøndalen.no","mo-i-rana.no","mosjoen.no","mosjøen.no","nesoddtangen.no","orkanger.no","osoyro.no","osøyro.no","raholt.no","rÃ¥holt.no","sandnessjoen.no","sandnessjøen.no","skedsmokorset.no","slattum.no","spjelkavik.no","stathelle.no","stavern.no","stjordalshalsen.no","stjørdalshalsen.no","tananger.no","tranby.no","vossevangen.no","aarborte.no","aejrie.no","afjord.no","Ã¥fjord.no","agdenes.no","nes.akershus.no","aknoluokta.no","ákÅ‹oluokta.no","al.no","Ã¥l.no","alaheadju.no","álaheadju.no","alesund.no","Ã¥lesund.no","alstahaug.no","alta.no","áltá.no","alvdal.no","amli.no","Ã¥mli.no","amot.no","Ã¥mot.no","andasuolo.no","andebu.no","andoy.no","andøy.no","ardal.no","Ã¥rdal.no","aremark.no","arendal.no","Ã¥s.no","aseral.no","Ã¥seral.no","asker.no","askim.no","askoy.no","askøy.no","askvoll.no","asnes.no","Ã¥snes.no","audnedaln.no","aukra.no","aure.no","aurland.no","aurskog-holand.no","aurskog-høland.no","austevoll.no","austrheim.no","averoy.no","averøy.no","badaddja.no","bÃ¥dÃ¥ddjÃ¥.no","bærum.no","bahcavuotna.no","báhcavuotna.no","bahccavuotna.no","báhccavuotna.no","baidar.no","báidár.no","bajddar.no","bájddar.no","balat.no","bálát.no","balestrand.no","ballangen.no","balsfjord.no","bamble.no","bardu.no","barum.no","batsfjord.no","bÃ¥tsfjord.no","bearalvahki.no","bearalváhki.no","beardu.no","beiarn.no","berg.no","bergen.no","berlevag.no","berlevÃ¥g.no","bievat.no","bievát.no","bindal.no","birkenes.no","bjarkoy.no","bjarkøy.no","bjerkreim.no","bjugn.no","bodo.no","bodø.no","bokn.no","bomlo.no","bømlo.no","bremanger.no","bronnoy.no","brønnøy.no","budejju.no","nes.buskerud.no","bygland.no","bykle.no","cahcesuolo.no","Äáhcesuolo.no","davvenjarga.no","davvenjárga.no","davvesiida.no","deatnu.no","dielddanuorri.no","divtasvuodna.no","divttasvuotna.no","donna.no","dønna.no","dovre.no","drammen.no","drangedal.no","dyroy.no","dyrøy.no","eid.no","eidfjord.no","eidsberg.no","eidskog.no","eidsvoll.no","eigersund.no","elverum.no","enebakk.no","engerdal.no","etne.no","etnedal.no","evenassi.no","evenášši.no","evenes.no","evje-og-hornnes.no","farsund.no","fauske.no","fedje.no","fet.no","finnoy.no","finnøy.no","fitjar.no","fjaler.no","fjell.no","fla.no","flÃ¥.no","flakstad.no","flatanger.no","flekkefjord.no","flesberg.no","flora.no","folldal.no","forde.no","førde.no","forsand.no","fosnes.no","fræna.no","frana.no","frei.no","frogn.no","froland.no","frosta.no","froya.no","frøya.no","fuoisku.no","fuossko.no","fusa.no","fyresdal.no","gaivuotna.no","gáivuotna.no","galsa.no","gálsá.no","gamvik.no","gangaviika.no","gáŋgaviika.no","gaular.no","gausdal.no","giehtavuoatna.no","gildeskal.no","gildeskÃ¥l.no","giske.no","gjemnes.no","gjerdrum.no","gjerstad.no","gjesdal.no","gjovik.no","gjøvik.no","gloppen.no","gol.no","gran.no","grane.no","granvin.no","gratangen.no","grimstad.no","grong.no","grue.no","gulen.no","guovdageaidnu.no","ha.no","hÃ¥.no","habmer.no","hábmer.no","hadsel.no","hægebostad.no","hagebostad.no","halden.no","halsa.no","hamar.no","hamaroy.no","hammarfeasta.no","hámmárfeasta.no","hammerfest.no","hapmir.no","hápmir.no","haram.no","hareid.no","harstad.no","hasvik.no","hattfjelldal.no","haugesund.no","os.hedmark.no","valer.hedmark.no","vÃ¥ler.hedmark.no","hemne.no","hemnes.no","hemsedal.no","hitra.no","hjartdal.no","hjelmeland.no","hobol.no","hobøl.no","hof.no","hol.no","hole.no","holmestrand.no","holtalen.no","holtÃ¥len.no","os.hordaland.no","hornindal.no","horten.no","hoyanger.no","høyanger.no","hoylandet.no","høylandet.no","hurdal.no","hurum.no","hvaler.no","hyllestad.no","ibestad.no","inderoy.no","inderøy.no","iveland.no","ivgu.no","jevnaker.no","jolster.no","jølster.no","jondal.no","kafjord.no","kÃ¥fjord.no","karasjohka.no","kárášjohka.no","karasjok.no","karlsoy.no","karmoy.no","karmøy.no","kautokeino.no","klabu.no","klæbu.no","klepp.no","kongsberg.no","kongsvinger.no","kraanghke.no","krÃ¥anghke.no","kragero.no","kragerø.no","kristiansand.no","kristiansund.no","krodsherad.no","krødsherad.no","kvæfjord.no","kvænangen.no","kvafjord.no","kvalsund.no","kvam.no","kvanangen.no","kvinesdal.no","kvinnherad.no","kviteseid.no","kvitsoy.no","kvitsøy.no","laakesvuemie.no","lærdal.no","lahppi.no","láhppi.no","lardal.no","larvik.no","lavagis.no","lavangen.no","leangaviika.no","leaÅ‹gaviika.no","lebesby.no","leikanger.no","leirfjord.no","leka.no","leksvik.no","lenvik.no","lerdal.no","lesja.no","levanger.no","lier.no","lierne.no","lillehammer.no","lillesand.no","lindas.no","lindÃ¥s.no","lindesnes.no","loabat.no","loabát.no","lodingen.no","lødingen.no","lom.no","loppa.no","lorenskog.no","lørenskog.no","loten.no","løten.no","lund.no","lunner.no","luroy.no","lurøy.no","luster.no","lyngdal.no","lyngen.no","malatvuopmi.no","málatvuopmi.no","malselv.no","mÃ¥lselv.no","malvik.no","mandal.no","marker.no","marnardal.no","masfjorden.no","masoy.no","mÃ¥søy.no","matta-varjjat.no","mátta-várjjat.no","meland.no","meldal.no","melhus.no","meloy.no","meløy.no","meraker.no","merÃ¥ker.no","midsund.no","midtre-gauldal.no","moareke.no","moÃ¥reke.no","modalen.no","modum.no","molde.no","heroy.more-og-romsdal.no","sande.more-og-romsdal.no","herøy.møre-og-romsdal.no","sande.møre-og-romsdal.no","moskenes.no","moss.no","mosvik.no","muosat.no","muosát.no","naamesjevuemie.no","nååmesjevuemie.no","nærøy.no","namdalseid.no","namsos.no","namsskogan.no","nannestad.no","naroy.no","narviika.no","narvik.no","naustdal.no","navuotna.no","návuotna.no","nedre-eiker.no","nesna.no","nesodden.no","nesseby.no","nesset.no","nissedal.no","nittedal.no","nord-aurdal.no","nord-fron.no","nord-odal.no","norddal.no","nordkapp.no","bo.nordland.no","bø.nordland.no","heroy.nordland.no","herøy.nordland.no","nordre-land.no","nordreisa.no","nore-og-uvdal.no","notodden.no","notteroy.no","nøtterøy.no","odda.no","oksnes.no","øksnes.no","omasvuotna.no","oppdal.no","oppegard.no","oppegÃ¥rd.no","orkdal.no","orland.no","ørland.no","orskog.no","ørskog.no","orsta.no","ørsta.no","osen.no","osteroy.no","osterøy.no","valer.ostfold.no","vÃ¥ler.østfold.no","ostre-toten.no","østre-toten.no","overhalla.no","ovre-eiker.no","øvre-eiker.no","oyer.no","øyer.no","oygarden.no","øygarden.no","oystre-slidre.no","øystre-slidre.no","porsanger.no","porsangu.no","porsáŋgu.no","porsgrunn.no","rade.no","rÃ¥de.no","radoy.no","radøy.no","rælingen.no","rahkkeravju.no","ráhkkerávju.no","raisa.no","ráisa.no","rakkestad.no","ralingen.no","rana.no","randaberg.no","rauma.no","rendalen.no","rennebu.no","rennesoy.no","rennesøy.no","rindal.no","ringebu.no","ringerike.no","ringsaker.no","risor.no","risør.no","rissa.no","roan.no","rodoy.no","rødøy.no","rollag.no","romsa.no","romskog.no","rømskog.no","roros.no","røros.no","rost.no","røst.no","royken.no","røyken.no","royrvik.no","røyrvik.no","ruovat.no","rygge.no","salangen.no","salat.no","sálat.no","sálát.no","saltdal.no","samnanger.no","sandefjord.no","sandnes.no","sandoy.no","sandøy.no","sarpsborg.no","sauda.no","sauherad.no","sel.no","selbu.no","selje.no","seljord.no","siellak.no","sigdal.no","siljan.no","sirdal.no","skanit.no","skánit.no","skanland.no","skÃ¥nland.no","skaun.no","skedsmo.no","ski.no","skien.no","skierva.no","skiervá.no","skiptvet.no","skjak.no","skjÃ¥k.no","skjervoy.no","skjervøy.no","skodje.no","smola.no","smøla.no","snaase.no","snÃ¥ase.no","snasa.no","snÃ¥sa.no","snillfjord.no","snoasa.no","sogndal.no","sogne.no","søgne.no","sokndal.no","sola.no","solund.no","somna.no","sømna.no","sondre-land.no","søndre-land.no","songdalen.no","sor-aurdal.no","sør-aurdal.no","sor-fron.no","sør-fron.no","sor-odal.no","sør-odal.no","sor-varanger.no","sør-varanger.no","sorfold.no","sørfold.no","sorreisa.no","sørreisa.no","sortland.no","sorum.no","sørum.no","spydeberg.no","stange.no","stavanger.no","steigen.no","steinkjer.no","stjordal.no","stjørdal.no","stokke.no","stor-elvdal.no","stord.no","stordal.no","storfjord.no","strand.no","stranda.no","stryn.no","sula.no","suldal.no","sund.no","sunndal.no","surnadal.no","sveio.no","svelvik.no","sykkylven.no","tana.no","bo.telemark.no","bø.telemark.no","time.no","tingvoll.no","tinn.no","tjeldsund.no","tjome.no","tjøme.no","tokke.no","tolga.no","tonsberg.no","tønsberg.no","torsken.no","træna.no","trana.no","tranoy.no","tranøy.no","troandin.no","trogstad.no","trøgstad.no","tromsa.no","tromso.no","tromsø.no","trondheim.no","trysil.no","tvedestrand.no","tydal.no","tynset.no","tysfjord.no","tysnes.no","tysvær.no","tysvar.no","ullensaker.no","ullensvang.no","ulvik.no","unjarga.no","unjárga.no","utsira.no","vaapste.no","vadso.no","vadsø.no","værøy.no","vaga.no","vÃ¥gÃ¥.no","vagan.no","vÃ¥gan.no","vagsoy.no","vÃ¥gsøy.no","vaksdal.no","valle.no","vang.no","vanylven.no","vardo.no","vardø.no","varggat.no","várggát.no","varoy.no","vefsn.no","vega.no","vegarshei.no","vegÃ¥rshei.no","vennesla.no","verdal.no","verran.no","vestby.no","sande.vestfold.no","vestnes.no","vestre-slidre.no","vestre-toten.no","vestvagoy.no","vestvÃ¥gøy.no","vevelstad.no","vik.no","vikna.no","vindafjord.no","voagat.no","volda.no","voss.no","*.np","nr","biz.nr","com.nr","edu.nr","gov.nr","info.nr","net.nr","org.nr","nu","nz","ac.nz","co.nz","cri.nz","geek.nz","gen.nz","govt.nz","health.nz","iwi.nz","kiwi.nz","maori.nz","mÄori.nz","mil.nz","net.nz","org.nz","parliament.nz","school.nz","om","co.om","com.om","edu.om","gov.om","med.om","museum.om","net.om","org.om","pro.om","onion","org","pa","abo.pa","ac.pa","com.pa","edu.pa","gob.pa","ing.pa","med.pa","net.pa","nom.pa","org.pa","sld.pa","pe","com.pe","edu.pe","gob.pe","mil.pe","net.pe","nom.pe","org.pe","pf","com.pf","edu.pf","org.pf","*.pg","ph","com.ph","edu.ph","gov.ph","i.ph","mil.ph","net.ph","ngo.ph","org.ph","pk","ac.pk","biz.pk","com.pk","edu.pk","fam.pk","gkp.pk","gob.pk","gog.pk","gok.pk","gon.pk","gop.pk","gos.pk","gov.pk","net.pk","org.pk","web.pk","pl","com.pl","net.pl","org.pl","agro.pl","aid.pl","atm.pl","auto.pl","biz.pl","edu.pl","gmina.pl","gsm.pl","info.pl","mail.pl","media.pl","miasta.pl","mil.pl","nieruchomosci.pl","nom.pl","pc.pl","powiat.pl","priv.pl","realestate.pl","rel.pl","sex.pl","shop.pl","sklep.pl","sos.pl","szkola.pl","targi.pl","tm.pl","tourism.pl","travel.pl","turystyka.pl","gov.pl","ap.gov.pl","griw.gov.pl","ic.gov.pl","is.gov.pl","kmpsp.gov.pl","konsulat.gov.pl","kppsp.gov.pl","kwp.gov.pl","kwpsp.gov.pl","mup.gov.pl","mw.gov.pl","oia.gov.pl","oirm.gov.pl","oke.gov.pl","oow.gov.pl","oschr.gov.pl","oum.gov.pl","pa.gov.pl","pinb.gov.pl","piw.gov.pl","po.gov.pl","pr.gov.pl","psp.gov.pl","psse.gov.pl","pup.gov.pl","rzgw.gov.pl","sa.gov.pl","sdn.gov.pl","sko.gov.pl","so.gov.pl","sr.gov.pl","starostwo.gov.pl","ug.gov.pl","ugim.gov.pl","um.gov.pl","umig.gov.pl","upow.gov.pl","uppo.gov.pl","us.gov.pl","uw.gov.pl","uzs.gov.pl","wif.gov.pl","wiih.gov.pl","winb.gov.pl","wios.gov.pl","witd.gov.pl","wiw.gov.pl","wkz.gov.pl","wsa.gov.pl","wskr.gov.pl","wsse.gov.pl","wuoz.gov.pl","wzmiuw.gov.pl","zp.gov.pl","zpisdn.gov.pl","augustow.pl","babia-gora.pl","bedzin.pl","beskidy.pl","bialowieza.pl","bialystok.pl","bielawa.pl","bieszczady.pl","boleslawiec.pl","bydgoszcz.pl","bytom.pl","cieszyn.pl","czeladz.pl","czest.pl","dlugoleka.pl","elblag.pl","elk.pl","glogow.pl","gniezno.pl","gorlice.pl","grajewo.pl","ilawa.pl","jaworzno.pl","jelenia-gora.pl","jgora.pl","kalisz.pl","karpacz.pl","kartuzy.pl","kaszuby.pl","katowice.pl","kazimierz-dolny.pl","kepno.pl","ketrzyn.pl","klodzko.pl","kobierzyce.pl","kolobrzeg.pl","konin.pl","konskowola.pl","kutno.pl","lapy.pl","lebork.pl","legnica.pl","lezajsk.pl","limanowa.pl","lomza.pl","lowicz.pl","lubin.pl","lukow.pl","malbork.pl","malopolska.pl","mazowsze.pl","mazury.pl","mielec.pl","mielno.pl","mragowo.pl","naklo.pl","nowaruda.pl","nysa.pl","olawa.pl","olecko.pl","olkusz.pl","olsztyn.pl","opoczno.pl","opole.pl","ostroda.pl","ostroleka.pl","ostrowiec.pl","ostrowwlkp.pl","pila.pl","pisz.pl","podhale.pl","podlasie.pl","polkowice.pl","pomorskie.pl","pomorze.pl","prochowice.pl","pruszkow.pl","przeworsk.pl","pulawy.pl","radom.pl","rawa-maz.pl","rybnik.pl","rzeszow.pl","sanok.pl","sejny.pl","skoczow.pl","slask.pl","slupsk.pl","sosnowiec.pl","stalowa-wola.pl","starachowice.pl","stargard.pl","suwalki.pl","swidnica.pl","swiebodzin.pl","swinoujscie.pl","szczecin.pl","szczytno.pl","tarnobrzeg.pl","tgory.pl","turek.pl","tychy.pl","ustka.pl","walbrzych.pl","warmia.pl","warszawa.pl","waw.pl","wegrow.pl","wielun.pl","wlocl.pl","wloclawek.pl","wodzislaw.pl","wolomin.pl","wroclaw.pl","zachpomor.pl","zagan.pl","zarow.pl","zgora.pl","zgorzelec.pl","pm","pn","co.pn","edu.pn","gov.pn","net.pn","org.pn","post","pr","biz.pr","com.pr","edu.pr","gov.pr","info.pr","isla.pr","name.pr","net.pr","org.pr","pro.pr","ac.pr","est.pr","prof.pr","pro","aaa.pro","aca.pro","acct.pro","avocat.pro","bar.pro","cpa.pro","eng.pro","jur.pro","law.pro","med.pro","recht.pro","ps","com.ps","edu.ps","gov.ps","net.ps","org.ps","plo.ps","sec.ps","pt","com.pt","edu.pt","gov.pt","int.pt","net.pt","nome.pt","org.pt","publ.pt","pw","belau.pw","co.pw","ed.pw","go.pw","or.pw","py","com.py","coop.py","edu.py","gov.py","mil.py","net.py","org.py","qa","com.qa","edu.qa","gov.qa","mil.qa","name.qa","net.qa","org.qa","sch.qa","re","asso.re","com.re","ro","arts.ro","com.ro","firm.ro","info.ro","nom.ro","nt.ro","org.ro","rec.ro","store.ro","tm.ro","www.ro","rs","ac.rs","co.rs","edu.rs","gov.rs","in.rs","org.rs","ru","rw","ac.rw","co.rw","coop.rw","gov.rw","mil.rw","net.rw","org.rw","sa","com.sa","edu.sa","gov.sa","med.sa","net.sa","org.sa","pub.sa","sch.sa","sb","com.sb","edu.sb","gov.sb","net.sb","org.sb","sc","com.sc","edu.sc","gov.sc","net.sc","org.sc","sd","com.sd","edu.sd","gov.sd","info.sd","med.sd","net.sd","org.sd","tv.sd","se","a.se","ac.se","b.se","bd.se","brand.se","c.se","d.se","e.se","f.se","fh.se","fhsk.se","fhv.se","g.se","h.se","i.se","k.se","komforb.se","kommunalforbund.se","komvux.se","l.se","lanbib.se","m.se","n.se","naturbruksgymn.se","o.se","org.se","p.se","parti.se","pp.se","press.se","r.se","s.se","t.se","tm.se","u.se","w.se","x.se","y.se","z.se","sg","com.sg","edu.sg","gov.sg","net.sg","org.sg","sh","com.sh","gov.sh","mil.sh","net.sh","org.sh","si","sj","sk","sl","com.sl","edu.sl","gov.sl","net.sl","org.sl","sm","sn","art.sn","com.sn","edu.sn","gouv.sn","org.sn","perso.sn","univ.sn","so","com.so","edu.so","gov.so","me.so","net.so","org.so","sr","ss","biz.ss","co.ss","com.ss","edu.ss","gov.ss","me.ss","net.ss","org.ss","sch.ss","st","co.st","com.st","consulado.st","edu.st","embaixada.st","mil.st","net.st","org.st","principe.st","saotome.st","store.st","su","sv","com.sv","edu.sv","gob.sv","org.sv","red.sv","sx","gov.sx","sy","com.sy","edu.sy","gov.sy","mil.sy","net.sy","org.sy","sz","ac.sz","co.sz","org.sz","tc","td","tel","tf","tg","th","ac.th","co.th","go.th","in.th","mi.th","net.th","or.th","tj","ac.tj","biz.tj","co.tj","com.tj","edu.tj","go.tj","gov.tj","int.tj","mil.tj","name.tj","net.tj","nic.tj","org.tj","test.tj","web.tj","tk","tl","gov.tl","tm","co.tm","com.tm","edu.tm","gov.tm","mil.tm","net.tm","nom.tm","org.tm","tn","com.tn","ens.tn","fin.tn","gov.tn","ind.tn","info.tn","intl.tn","mincom.tn","nat.tn","net.tn","org.tn","perso.tn","tourism.tn","to","com.to","edu.to","gov.to","mil.to","net.to","org.to","tr","av.tr","bbs.tr","bel.tr","biz.tr","com.tr","dr.tr","edu.tr","gen.tr","gov.tr","info.tr","k12.tr","kep.tr","mil.tr","name.tr","net.tr","org.tr","pol.tr","tel.tr","tsk.tr","tv.tr","web.tr","nc.tr","gov.nc.tr","tt","biz.tt","co.tt","com.tt","edu.tt","gov.tt","info.tt","mil.tt","name.tt","net.tt","org.tt","pro.tt","tv","tw","club.tw","com.tw","ebiz.tw","edu.tw","game.tw","gov.tw","idv.tw","mil.tw","net.tw","org.tw","tz","ac.tz","co.tz","go.tz","hotel.tz","info.tz","me.tz","mil.tz","mobi.tz","ne.tz","or.tz","sc.tz","tv.tz","ua","com.ua","edu.ua","gov.ua","in.ua","net.ua","org.ua","cherkassy.ua","cherkasy.ua","chernigov.ua","chernihiv.ua","chernivtsi.ua","chernovtsy.ua","ck.ua","cn.ua","cr.ua","crimea.ua","cv.ua","dn.ua","dnepropetrovsk.ua","dnipropetrovsk.ua","donetsk.ua","dp.ua","if.ua","ivano-frankivsk.ua","kh.ua","kharkiv.ua","kharkov.ua","kherson.ua","khmelnitskiy.ua","khmelnytskyi.ua","kiev.ua","kirovograd.ua","km.ua","kr.ua","kropyvnytskyi.ua","krym.ua","ks.ua","kv.ua","kyiv.ua","lg.ua","lt.ua","lugansk.ua","luhansk.ua","lutsk.ua","lv.ua","lviv.ua","mk.ua","mykolaiv.ua","nikolaev.ua","od.ua","odesa.ua","odessa.ua","pl.ua","poltava.ua","rivne.ua","rovno.ua","rv.ua","sb.ua","sebastopol.ua","sevastopol.ua","sm.ua","sumy.ua","te.ua","ternopil.ua","uz.ua","uzhgorod.ua","uzhhorod.ua","vinnica.ua","vinnytsia.ua","vn.ua","volyn.ua","yalta.ua","zakarpattia.ua","zaporizhzhe.ua","zaporizhzhia.ua","zhitomir.ua","zhytomyr.ua","zp.ua","zt.ua","ug","ac.ug","co.ug","com.ug","go.ug","ne.ug","or.ug","org.ug","sc.ug","uk","ac.uk","co.uk","gov.uk","ltd.uk","me.uk","net.uk","nhs.uk","org.uk","plc.uk","police.uk","*.sch.uk","us","dni.us","fed.us","isa.us","kids.us","nsn.us","ak.us","al.us","ar.us","as.us","az.us","ca.us","co.us","ct.us","dc.us","de.us","fl.us","ga.us","gu.us","hi.us","ia.us","id.us","il.us","in.us","ks.us","ky.us","la.us","ma.us","md.us","me.us","mi.us","mn.us","mo.us","ms.us","mt.us","nc.us","nd.us","ne.us","nh.us","nj.us","nm.us","nv.us","ny.us","oh.us","ok.us","or.us","pa.us","pr.us","ri.us","sc.us","sd.us","tn.us","tx.us","ut.us","va.us","vi.us","vt.us","wa.us","wi.us","wv.us","wy.us","k12.ak.us","k12.al.us","k12.ar.us","k12.as.us","k12.az.us","k12.ca.us","k12.co.us","k12.ct.us","k12.dc.us","k12.fl.us","k12.ga.us","k12.gu.us","k12.ia.us","k12.id.us","k12.il.us","k12.in.us","k12.ks.us","k12.ky.us","k12.la.us","k12.ma.us","k12.md.us","k12.me.us","k12.mi.us","k12.mn.us","k12.mo.us","k12.ms.us","k12.mt.us","k12.nc.us","k12.ne.us","k12.nh.us","k12.nj.us","k12.nm.us","k12.nv.us","k12.ny.us","k12.oh.us","k12.ok.us","k12.or.us","k12.pa.us","k12.pr.us","k12.sc.us","k12.tn.us","k12.tx.us","k12.ut.us","k12.va.us","k12.vi.us","k12.vt.us","k12.wa.us","k12.wi.us","cc.ak.us","lib.ak.us","cc.al.us","lib.al.us","cc.ar.us","lib.ar.us","cc.as.us","lib.as.us","cc.az.us","lib.az.us","cc.ca.us","lib.ca.us","cc.co.us","lib.co.us","cc.ct.us","lib.ct.us","cc.dc.us","lib.dc.us","cc.de.us","cc.fl.us","cc.ga.us","cc.gu.us","cc.hi.us","cc.ia.us","cc.id.us","cc.il.us","cc.in.us","cc.ks.us","cc.ky.us","cc.la.us","cc.ma.us","cc.md.us","cc.me.us","cc.mi.us","cc.mn.us","cc.mo.us","cc.ms.us","cc.mt.us","cc.nc.us","cc.nd.us","cc.ne.us","cc.nh.us","cc.nj.us","cc.nm.us","cc.nv.us","cc.ny.us","cc.oh.us","cc.ok.us","cc.or.us","cc.pa.us","cc.pr.us","cc.ri.us","cc.sc.us","cc.sd.us","cc.tn.us","cc.tx.us","cc.ut.us","cc.va.us","cc.vi.us","cc.vt.us","cc.wa.us","cc.wi.us","cc.wv.us","cc.wy.us","k12.wy.us","lib.fl.us","lib.ga.us","lib.gu.us","lib.hi.us","lib.ia.us","lib.id.us","lib.il.us","lib.in.us","lib.ks.us","lib.ky.us","lib.la.us","lib.ma.us","lib.md.us","lib.me.us","lib.mi.us","lib.mn.us","lib.mo.us","lib.ms.us","lib.mt.us","lib.nc.us","lib.nd.us","lib.ne.us","lib.nh.us","lib.nj.us","lib.nm.us","lib.nv.us","lib.ny.us","lib.oh.us","lib.ok.us","lib.or.us","lib.pa.us","lib.pr.us","lib.ri.us","lib.sc.us","lib.sd.us","lib.tn.us","lib.tx.us","lib.ut.us","lib.va.us","lib.vi.us","lib.vt.us","lib.wa.us","lib.wi.us","lib.wy.us","chtr.k12.ma.us","paroch.k12.ma.us","pvt.k12.ma.us","ann-arbor.mi.us","cog.mi.us","dst.mi.us","eaton.mi.us","gen.mi.us","mus.mi.us","tec.mi.us","washtenaw.mi.us","uy","com.uy","edu.uy","gub.uy","mil.uy","net.uy","org.uy","uz","co.uz","com.uz","net.uz","org.uz","va","vc","com.vc","edu.vc","gov.vc","mil.vc","net.vc","org.vc","ve","arts.ve","bib.ve","co.ve","com.ve","e12.ve","edu.ve","firm.ve","gob.ve","gov.ve","info.ve","int.ve","mil.ve","net.ve","nom.ve","org.ve","rar.ve","rec.ve","store.ve","tec.ve","web.ve","vg","vi","co.vi","com.vi","k12.vi","net.vi","org.vi","vn","ac.vn","ai.vn","biz.vn","com.vn","edu.vn","gov.vn","health.vn","id.vn","info.vn","int.vn","io.vn","name.vn","net.vn","org.vn","pro.vn","angiang.vn","bacgiang.vn","backan.vn","baclieu.vn","bacninh.vn","baria-vungtau.vn","bentre.vn","binhdinh.vn","binhduong.vn","binhphuoc.vn","binhthuan.vn","camau.vn","cantho.vn","caobang.vn","daklak.vn","daknong.vn","danang.vn","dienbien.vn","dongnai.vn","dongthap.vn","gialai.vn","hagiang.vn","haiduong.vn","haiphong.vn","hanam.vn","hanoi.vn","hatinh.vn","haugiang.vn","hoabinh.vn","hungyen.vn","khanhhoa.vn","kiengiang.vn","kontum.vn","laichau.vn","lamdong.vn","langson.vn","laocai.vn","longan.vn","namdinh.vn","nghean.vn","ninhbinh.vn","ninhthuan.vn","phutho.vn","phuyen.vn","quangbinh.vn","quangnam.vn","quangngai.vn","quangninh.vn","quangtri.vn","soctrang.vn","sonla.vn","tayninh.vn","thaibinh.vn","thainguyen.vn","thanhhoa.vn","thanhphohochiminh.vn","thuathienhue.vn","tiengiang.vn","travinh.vn","tuyenquang.vn","vinhlong.vn","vinhphuc.vn","yenbai.vn","vu","com.vu","edu.vu","net.vu","org.vu","wf","ws","com.ws","edu.ws","gov.ws","net.ws","org.ws","yt","امارات","Õ°Õ¡Õµ","বাংলা","бг","Ø§Ù„Ø¨ØØ±ÙŠÙ†","бел","ä¸å›½","ä¸åœ‹","الجزائر","مصر","ею","ευ","موريتانيا","გე","ελ","香港","個人.香港","å…¬å¸.香港","政府.香港","教育.香港","組織.香港","網絡.香港","à²à²¾à²°à²¤","à¬à¬¾à¬°à¬¤","à¦à¦¾à§°à¦¤","à¤à¤¾à¤°à¤¤à¤®à¥","à¤à¤¾à¤°à¥‹à¤¤","ڀارت","à´à´¾à´°à´¤à´‚","à¤à¤¾à¤°à¤¤","بارت","بھارت","à°à°¾à°°à°¤à±","àªàª¾àª°àª¤","à¨à¨¾à¨°à¨¤","à¦à¦¾à¦°à¦¤","இநà¯à®¤à®¿à®¯à®¾","ایران","ايران","عراق","الاردن","한êµ","қаз","ລາວ","ලංකà·","இலஙà¯à®•ை","المغرب","мкд","мон","澳門","澳门","مليسيا","عمان","پاکستان","پاكستان","Ùلسطين","Ñрб","ак.Ñрб","обр.Ñрб","од.Ñрб","орг.Ñрб","пр.Ñрб","упр.Ñрб","рф","قطر","السعودية","السعودیة","السعودیۃ","السعوديه","سودان","æ–°åŠ å¡","சிஙà¯à®•பà¯à®ªà¯‚à®°à¯","سورية","سوريا","ไทย","ทหาร.ไทย","ธุรà¸à¸´à¸ˆ.ไทย","เน็ต.ไทย","รัà¸à¸šà¸²à¸¥.ไทย","ศึà¸à¸©à¸².ไทย","à¸à¸‡à¸„์à¸à¸£.ไทย","تونس","å°ç£","å°æ¹¾","臺ç£","укр","اليمن","xxx","ye","com.ye","edu.ye","gov.ye","mil.ye","net.ye","org.ye","ac.za","agric.za","alt.za","co.za","edu.za","gov.za","grondar.za","law.za","mil.za","net.za","ngo.za","nic.za","nis.za","nom.za","org.za","school.za","tm.za","web.za","zm","ac.zm","biz.zm","co.zm","com.zm","edu.zm","gov.zm","info.zm","mil.zm","net.zm","org.zm","sch.zm","zw","ac.zw","co.zw","gov.zw","mil.zw","org.zw","aaa","aarp","abb","abbott","abbvie","abc","able","abogado","abudhabi","academy","accenture","accountant","accountants","aco","actor","ads","adult","aeg","aetna","afl","africa","agakhan","agency","aig","airbus","airforce","airtel","akdn","alibaba","alipay","allfinanz","allstate","ally","alsace","alstom","amazon","americanexpress","americanfamily","amex","amfam","amica","amsterdam","analytics","android","anquan","anz","aol","apartments","app","apple","aquarelle","arab","aramco","archi","army","art","arte","asda","associates","athleta","attorney","auction","audi","audible","audio","auspost","author","auto","autos","aws","axa","azure","baby","baidu","banamex","band","bank","bar","barcelona","barclaycard","barclays","barefoot","bargains","baseball","basketball","bauhaus","bayern","bbc","bbt","bbva","bcg","bcn","beats","beauty","beer","bentley","berlin","best","bestbuy","bet","bharti","bible","bid","bike","bing","bingo","bio","black","blackfriday","blockbuster","blog","bloomberg","blue","bms","bmw","bnpparibas","boats","boehringer","bofa","bom","bond","boo","book","booking","bosch","bostik","boston","bot","boutique","box","bradesco","bridgestone","broadway","broker","brother","brussels","build","builders","business","buy","buzz","bzh","cab","cafe","cal","call","calvinklein","cam","camera","camp","canon","capetown","capital","capitalone","car","caravan","cards","care","career","careers","cars","casa","case","cash","casino","catering","catholic","cba","cbn","cbre","center","ceo","cern","cfa","cfd","chanel","channel","charity","chase","chat","cheap","chintai","christmas","chrome","church","cipriani","circle","cisco","citadel","citi","citic","city","claims","cleaning","click","clinic","clinique","clothing","cloud","club","clubmed","coach","codes","coffee","college","cologne","commbank","community","company","compare","computer","comsec","condos","construction","consulting","contact","contractors","cooking","cool","corsica","country","coupon","coupons","courses","cpa","credit","creditcard","creditunion","cricket","crown","crs","cruise","cruises","cuisinella","cymru","cyou","dad","dance","data","date","dating","datsun","day","dclk","dds","deal","dealer","deals","degree","delivery","dell","deloitte","delta","democrat","dental","dentist","desi","design","dev","dhl","diamonds","diet","digital","direct","directory","discount","discover","dish","diy","dnp","docs","doctor","dog","domains","dot","download","drive","dtv","dubai","dunlop","dupont","durban","dvag","dvr","earth","eat","eco","edeka","education","email","emerck","energy","engineer","engineering","enterprises","epson","equipment","ericsson","erni","esq","estate","eurovision","eus","events","exchange","expert","exposed","express","extraspace","fage","fail","fairwinds","faith","family","fan","fans","farm","farmers","fashion","fast","fedex","feedback","ferrari","ferrero","fidelity","fido","film","final","finance","financial","fire","firestone","firmdale","fish","fishing","fit","fitness","flickr","flights","flir","florist","flowers","fly","foo","food","football","ford","forex","forsale","forum","foundation","fox","free","fresenius","frl","frogans","frontier","ftr","fujitsu","fun","fund","furniture","futbol","fyi","gal","gallery","gallo","gallup","game","games","gap","garden","gay","gbiz","gdn","gea","gent","genting","george","ggee","gift","gifts","gives","giving","glass","gle","global","globo","gmail","gmbh","gmo","gmx","godaddy","gold","goldpoint","golf","goo","goodyear","goog","google","gop","got","grainger","graphics","gratis","green","gripe","grocery","group","gucci","guge","guide","guitars","guru","hair","hamburg","hangout","haus","hbo","hdfc","hdfcbank","health","healthcare","help","helsinki","here","hermes","hiphop","hisamitsu","hitachi","hiv","hkt","hockey","holdings","holiday","homedepot","homegoods","homes","homesense","honda","horse","hospital","host","hosting","hot","hotels","hotmail","house","how","hsbc","hughes","hyatt","hyundai","ibm","icbc","ice","icu","ieee","ifm","ikano","imamat","imdb","immo","immobilien","inc","industries","infiniti","ing","ink","institute","insurance","insure","international","intuit","investments","ipiranga","irish","ismaili","ist","istanbul","itau","itv","jaguar","java","jcb","jeep","jetzt","jewelry","jio","jll","jmp","jnj","joburg","jot","joy","jpmorgan","jprs","juegos","juniper","kaufen","kddi","kerryhotels","kerrylogistics","kerryproperties","kfh","kia","kids","kim","kindle","kitchen","kiwi","koeln","komatsu","kosher","kpmg","kpn","krd","kred","kuokgroup","kyoto","lacaixa","lamborghini","lamer","lancaster","land","landrover","lanxess","lasalle","lat","latino","latrobe","law","lawyer","lds","lease","leclerc","lefrak","legal","lego","lexus","lgbt","lidl","life","lifeinsurance","lifestyle","lighting","like","lilly","limited","limo","lincoln","link","lipsy","live","living","llc","llp","loan","loans","locker","locus","lol","london","lotte","lotto","love","lpl","lplfinancial","ltd","ltda","lundbeck","luxe","luxury","madrid","maif","maison","makeup","man","management","mango","map","market","marketing","markets","marriott","marshalls","mattel","mba","mckinsey","med","media","meet","melbourne","meme","memorial","men","menu","merck","merckmsd","miami","microsoft","mini","mint","mit","mitsubishi","mlb","mls","mma","mobile","moda","moe","moi","mom","monash","money","monster","mormon","mortgage","moscow","moto","motorcycles","mov","movie","msd","mtn","mtr","music","nab","nagoya","navy","nba","nec","netbank","netflix","network","neustar","new","news","next","nextdirect","nexus","nfl","ngo","nhk","nico","nike","nikon","ninja","nissan","nissay","nokia","norton","now","nowruz","nowtv","nra","nrw","ntt","nyc","obi","observer","office","okinawa","olayan","olayangroup","ollo","omega","one","ong","onl","online","ooo","open","oracle","orange","organic","origins","osaka","otsuka","ott","ovh","page","panasonic","paris","pars","partners","parts","party","pay","pccw","pet","pfizer","pharmacy","phd","philips","phone","photo","photography","photos","physio","pics","pictet","pictures","pid","pin","ping","pink","pioneer","pizza","place","play","playstation","plumbing","plus","pnc","pohl","poker","politie","porn","pramerica","praxi","press","prime","prod","productions","prof","progressive","promo","properties","property","protection","pru","prudential","pub","pwc","qpon","quebec","quest","racing","radio","read","realestate","realtor","realty","recipes","red","redstone","redumbrella","rehab","reise","reisen","reit","reliance","ren","rent","rentals","repair","report","republican","rest","restaurant","review","reviews","rexroth","rich","richardli","ricoh","ril","rio","rip","rocks","rodeo","rogers","room","rsvp","rugby","ruhr","run","rwe","ryukyu","saarland","safe","safety","sakura","sale","salon","samsclub","samsung","sandvik","sandvikcoromant","sanofi","sap","sarl","sas","save","saxo","sbi","sbs","scb","schaeffler","schmidt","scholarships","school","schule","schwarz","science","scot","search","seat","secure","security","seek","select","sener","services","seven","sew","sex","sexy","sfr","shangrila","sharp","shell","shia","shiksha","shoes","shop","shopping","shouji","show","silk","sina","singles","site","ski","skin","sky","skype","sling","smart","smile","sncf","soccer","social","softbank","software","sohu","solar","solutions","song","sony","soy","spa","space","sport","spot","srl","stada","staples","star","statebank","statefarm","stc","stcgroup","stockholm","storage","store","stream","studio","study","style","sucks","supplies","supply","support","surf","surgery","suzuki","swatch","swiss","sydney","systems","tab","taipei","talk","taobao","target","tatamotors","tatar","tattoo","tax","taxi","tci","tdk","team","tech","technology","temasek","tennis","teva","thd","theater","theatre","tiaa","tickets","tienda","tips","tires","tirol","tjmaxx","tjx","tkmaxx","tmall","today","tokyo","tools","top","toray","toshiba","total","tours","town","toyota","toys","trade","trading","training","travel","travelers","travelersinsurance","trust","trv","tube","tui","tunes","tushu","tvs","ubank","ubs","unicom","university","uno","uol","ups","vacations","vana","vanguard","vegas","ventures","verisign","versicherung","vet","viajes","video","vig","viking","villas","vin","vip","virgin","visa","vision","viva","vivo","vlaanderen","vodka","volvo","vote","voting","voto","voyage","wales","walmart","walter","wang","wanggou","watch","watches","weather","weatherchannel","webcam","weber","website","wed","wedding","weibo","weir","whoswho","wien","wiki","williamhill","win","windows","wine","winners","wme","wolterskluwer","woodside","work","works","world","wow","wtc","wtf","xbox","xerox","xihuan","xin","कॉम","セール","佛山","慈善","集团","在线","点看","คà¸à¸¡","å…«å¦","موقع","公益","å…¬å¸","é¦™æ ¼é‡Œæ‹‰","网站","移动","æˆ‘çˆ±ä½ ","моÑква","католик","онлайн","Ñайт","è”通","קו×","æ—¶å°š","å¾®åš","淡马锡","ファッション","орг","नेट","ストア","アマゾン","삼성","å•†æ ‡","商店","商城","дети","ãƒã‚¤ãƒ³ãƒˆ","æ–°é—»","å®¶é›»","كوم","䏿–‡ç½‘","ä¸ä¿¡","娱ä¹","è°·æŒ","電訊盈科","è´ç‰©","クラウド","通販","网店","संगठन","é¤åŽ…","网络","ком","亚马逊","食å“","飞利浦","手机","ارامكو","العليان","بازار","ابوظبي","كاثوليك","همراه","ë‹·ì»´","政府","شبكة","بيتك","عرب","机构","组织机构","å¥åº·","æ‹›è˜","руÑ","大拿","ã¿ã‚“ãª","グーグル","世界","書ç±","网å€","ë‹·ë„·","コム","天主教","游æˆ","vermögensberater","vermögensberatung","ä¼ä¸š","ä¿¡æ¯","嘉里大酒店","嘉里","广东","政务","xyz","yachts","yahoo","yamaxun","yandex","yodobashi","yoga","yokohama","you","youtube","yun","zappos","zara","zero","zip","zone","zuerich","co.krd","edu.krd","art.pl","gliwice.pl","krakow.pl","poznan.pl","wroc.pl","zakopane.pl","lib.de.us","12chars.dev","12chars.it","12chars.pro","cc.ua","inf.ua","ltd.ua","611.to","a2hosted.com","cpserver.com","aaa.vodka","*.on-acorn.io","activetrail.biz","adaptable.app","adobeaemcloud.com","*.dev.adobeaemcloud.com","aem.live","hlx.live","adobeaemcloud.net","aem.page","hlx.page","hlx3.page","adobeio-static.net","adobeioruntime.net","africa.com","beep.pl","airkitapps.com","airkitapps-au.com","airkitapps.eu","aivencloud.com","akadns.net","akamai.net","akamai-staging.net","akamaiedge.net","akamaiedge-staging.net","akamaihd.net","akamaihd-staging.net","akamaiorigin.net","akamaiorigin-staging.net","akamaized.net","akamaized-staging.net","edgekey.net","edgekey-staging.net","edgesuite.net","edgesuite-staging.net","barsy.ca","*.compute.estate","*.alces.network","kasserver.com","altervista.org","alwaysdata.net","myamaze.net","execute-api.cn-north-1.amazonaws.com.cn","execute-api.cn-northwest-1.amazonaws.com.cn","execute-api.af-south-1.amazonaws.com","execute-api.ap-east-1.amazonaws.com","execute-api.ap-northeast-1.amazonaws.com","execute-api.ap-northeast-2.amazonaws.com","execute-api.ap-northeast-3.amazonaws.com","execute-api.ap-south-1.amazonaws.com","execute-api.ap-south-2.amazonaws.com","execute-api.ap-southeast-1.amazonaws.com","execute-api.ap-southeast-2.amazonaws.com","execute-api.ap-southeast-3.amazonaws.com","execute-api.ap-southeast-4.amazonaws.com","execute-api.ap-southeast-5.amazonaws.com","execute-api.ca-central-1.amazonaws.com","execute-api.ca-west-1.amazonaws.com","execute-api.eu-central-1.amazonaws.com","execute-api.eu-central-2.amazonaws.com","execute-api.eu-north-1.amazonaws.com","execute-api.eu-south-1.amazonaws.com","execute-api.eu-south-2.amazonaws.com","execute-api.eu-west-1.amazonaws.com","execute-api.eu-west-2.amazonaws.com","execute-api.eu-west-3.amazonaws.com","execute-api.il-central-1.amazonaws.com","execute-api.me-central-1.amazonaws.com","execute-api.me-south-1.amazonaws.com","execute-api.sa-east-1.amazonaws.com","execute-api.us-east-1.amazonaws.com","execute-api.us-east-2.amazonaws.com","execute-api.us-gov-east-1.amazonaws.com","execute-api.us-gov-west-1.amazonaws.com","execute-api.us-west-1.amazonaws.com","execute-api.us-west-2.amazonaws.com","cloudfront.net","auth.af-south-1.amazoncognito.com","auth.ap-east-1.amazoncognito.com","auth.ap-northeast-1.amazoncognito.com","auth.ap-northeast-2.amazoncognito.com","auth.ap-northeast-3.amazoncognito.com","auth.ap-south-1.amazoncognito.com","auth.ap-south-2.amazoncognito.com","auth.ap-southeast-1.amazoncognito.com","auth.ap-southeast-2.amazoncognito.com","auth.ap-southeast-3.amazoncognito.com","auth.ap-southeast-4.amazoncognito.com","auth.ca-central-1.amazoncognito.com","auth.ca-west-1.amazoncognito.com","auth.eu-central-1.amazoncognito.com","auth.eu-central-2.amazoncognito.com","auth.eu-north-1.amazoncognito.com","auth.eu-south-1.amazoncognito.com","auth.eu-south-2.amazoncognito.com","auth.eu-west-1.amazoncognito.com","auth.eu-west-2.amazoncognito.com","auth.eu-west-3.amazoncognito.com","auth.il-central-1.amazoncognito.com","auth.me-central-1.amazoncognito.com","auth.me-south-1.amazoncognito.com","auth.sa-east-1.amazoncognito.com","auth.us-east-1.amazoncognito.com","auth-fips.us-east-1.amazoncognito.com","auth.us-east-2.amazoncognito.com","auth-fips.us-east-2.amazoncognito.com","auth-fips.us-gov-west-1.amazoncognito.com","auth.us-west-1.amazoncognito.com","auth-fips.us-west-1.amazoncognito.com","auth.us-west-2.amazoncognito.com","auth-fips.us-west-2.amazoncognito.com","*.compute.amazonaws.com.cn","*.compute.amazonaws.com","*.compute-1.amazonaws.com","us-east-1.amazonaws.com","emrappui-prod.cn-north-1.amazonaws.com.cn","emrnotebooks-prod.cn-north-1.amazonaws.com.cn","emrstudio-prod.cn-north-1.amazonaws.com.cn","emrappui-prod.cn-northwest-1.amazonaws.com.cn","emrnotebooks-prod.cn-northwest-1.amazonaws.com.cn","emrstudio-prod.cn-northwest-1.amazonaws.com.cn","emrappui-prod.af-south-1.amazonaws.com","emrnotebooks-prod.af-south-1.amazonaws.com","emrstudio-prod.af-south-1.amazonaws.com","emrappui-prod.ap-east-1.amazonaws.com","emrnotebooks-prod.ap-east-1.amazonaws.com","emrstudio-prod.ap-east-1.amazonaws.com","emrappui-prod.ap-northeast-1.amazonaws.com","emrnotebooks-prod.ap-northeast-1.amazonaws.com","emrstudio-prod.ap-northeast-1.amazonaws.com","emrappui-prod.ap-northeast-2.amazonaws.com","emrnotebooks-prod.ap-northeast-2.amazonaws.com","emrstudio-prod.ap-northeast-2.amazonaws.com","emrappui-prod.ap-northeast-3.amazonaws.com","emrnotebooks-prod.ap-northeast-3.amazonaws.com","emrstudio-prod.ap-northeast-3.amazonaws.com","emrappui-prod.ap-south-1.amazonaws.com","emrnotebooks-prod.ap-south-1.amazonaws.com","emrstudio-prod.ap-south-1.amazonaws.com","emrappui-prod.ap-south-2.amazonaws.com","emrnotebooks-prod.ap-south-2.amazonaws.com","emrstudio-prod.ap-south-2.amazonaws.com","emrappui-prod.ap-southeast-1.amazonaws.com","emrnotebooks-prod.ap-southeast-1.amazonaws.com","emrstudio-prod.ap-southeast-1.amazonaws.com","emrappui-prod.ap-southeast-2.amazonaws.com","emrnotebooks-prod.ap-southeast-2.amazonaws.com","emrstudio-prod.ap-southeast-2.amazonaws.com","emrappui-prod.ap-southeast-3.amazonaws.com","emrnotebooks-prod.ap-southeast-3.amazonaws.com","emrstudio-prod.ap-southeast-3.amazonaws.com","emrappui-prod.ap-southeast-4.amazonaws.com","emrnotebooks-prod.ap-southeast-4.amazonaws.com","emrstudio-prod.ap-southeast-4.amazonaws.com","emrappui-prod.ca-central-1.amazonaws.com","emrnotebooks-prod.ca-central-1.amazonaws.com","emrstudio-prod.ca-central-1.amazonaws.com","emrappui-prod.ca-west-1.amazonaws.com","emrnotebooks-prod.ca-west-1.amazonaws.com","emrstudio-prod.ca-west-1.amazonaws.com","emrappui-prod.eu-central-1.amazonaws.com","emrnotebooks-prod.eu-central-1.amazonaws.com","emrstudio-prod.eu-central-1.amazonaws.com","emrappui-prod.eu-central-2.amazonaws.com","emrnotebooks-prod.eu-central-2.amazonaws.com","emrstudio-prod.eu-central-2.amazonaws.com","emrappui-prod.eu-north-1.amazonaws.com","emrnotebooks-prod.eu-north-1.amazonaws.com","emrstudio-prod.eu-north-1.amazonaws.com","emrappui-prod.eu-south-1.amazonaws.com","emrnotebooks-prod.eu-south-1.amazonaws.com","emrstudio-prod.eu-south-1.amazonaws.com","emrappui-prod.eu-south-2.amazonaws.com","emrnotebooks-prod.eu-south-2.amazonaws.com","emrstudio-prod.eu-south-2.amazonaws.com","emrappui-prod.eu-west-1.amazonaws.com","emrnotebooks-prod.eu-west-1.amazonaws.com","emrstudio-prod.eu-west-1.amazonaws.com","emrappui-prod.eu-west-2.amazonaws.com","emrnotebooks-prod.eu-west-2.amazonaws.com","emrstudio-prod.eu-west-2.amazonaws.com","emrappui-prod.eu-west-3.amazonaws.com","emrnotebooks-prod.eu-west-3.amazonaws.com","emrstudio-prod.eu-west-3.amazonaws.com","emrappui-prod.il-central-1.amazonaws.com","emrnotebooks-prod.il-central-1.amazonaws.com","emrstudio-prod.il-central-1.amazonaws.com","emrappui-prod.me-central-1.amazonaws.com","emrnotebooks-prod.me-central-1.amazonaws.com","emrstudio-prod.me-central-1.amazonaws.com","emrappui-prod.me-south-1.amazonaws.com","emrnotebooks-prod.me-south-1.amazonaws.com","emrstudio-prod.me-south-1.amazonaws.com","emrappui-prod.sa-east-1.amazonaws.com","emrnotebooks-prod.sa-east-1.amazonaws.com","emrstudio-prod.sa-east-1.amazonaws.com","emrappui-prod.us-east-1.amazonaws.com","emrnotebooks-prod.us-east-1.amazonaws.com","emrstudio-prod.us-east-1.amazonaws.com","emrappui-prod.us-east-2.amazonaws.com","emrnotebooks-prod.us-east-2.amazonaws.com","emrstudio-prod.us-east-2.amazonaws.com","emrappui-prod.us-gov-east-1.amazonaws.com","emrnotebooks-prod.us-gov-east-1.amazonaws.com","emrstudio-prod.us-gov-east-1.amazonaws.com","emrappui-prod.us-gov-west-1.amazonaws.com","emrnotebooks-prod.us-gov-west-1.amazonaws.com","emrstudio-prod.us-gov-west-1.amazonaws.com","emrappui-prod.us-west-1.amazonaws.com","emrnotebooks-prod.us-west-1.amazonaws.com","emrstudio-prod.us-west-1.amazonaws.com","emrappui-prod.us-west-2.amazonaws.com","emrnotebooks-prod.us-west-2.amazonaws.com","emrstudio-prod.us-west-2.amazonaws.com","*.cn-north-1.airflow.amazonaws.com.cn","*.cn-northwest-1.airflow.amazonaws.com.cn","*.af-south-1.airflow.amazonaws.com","*.ap-east-1.airflow.amazonaws.com","*.ap-northeast-1.airflow.amazonaws.com","*.ap-northeast-2.airflow.amazonaws.com","*.ap-northeast-3.airflow.amazonaws.com","*.ap-south-1.airflow.amazonaws.com","*.ap-south-2.airflow.amazonaws.com","*.ap-southeast-1.airflow.amazonaws.com","*.ap-southeast-2.airflow.amazonaws.com","*.ap-southeast-3.airflow.amazonaws.com","*.ap-southeast-4.airflow.amazonaws.com","*.ca-central-1.airflow.amazonaws.com","*.ca-west-1.airflow.amazonaws.com","*.eu-central-1.airflow.amazonaws.com","*.eu-central-2.airflow.amazonaws.com","*.eu-north-1.airflow.amazonaws.com","*.eu-south-1.airflow.amazonaws.com","*.eu-south-2.airflow.amazonaws.com","*.eu-west-1.airflow.amazonaws.com","*.eu-west-2.airflow.amazonaws.com","*.eu-west-3.airflow.amazonaws.com","*.il-central-1.airflow.amazonaws.com","*.me-central-1.airflow.amazonaws.com","*.me-south-1.airflow.amazonaws.com","*.sa-east-1.airflow.amazonaws.com","*.us-east-1.airflow.amazonaws.com","*.us-east-2.airflow.amazonaws.com","*.us-west-1.airflow.amazonaws.com","*.us-west-2.airflow.amazonaws.com","s3.dualstack.cn-north-1.amazonaws.com.cn","s3-accesspoint.dualstack.cn-north-1.amazonaws.com.cn","s3-website.dualstack.cn-north-1.amazonaws.com.cn","s3.cn-north-1.amazonaws.com.cn","s3-accesspoint.cn-north-1.amazonaws.com.cn","s3-deprecated.cn-north-1.amazonaws.com.cn","s3-object-lambda.cn-north-1.amazonaws.com.cn","s3-website.cn-north-1.amazonaws.com.cn","s3.dualstack.cn-northwest-1.amazonaws.com.cn","s3-accesspoint.dualstack.cn-northwest-1.amazonaws.com.cn","s3.cn-northwest-1.amazonaws.com.cn","s3-accesspoint.cn-northwest-1.amazonaws.com.cn","s3-object-lambda.cn-northwest-1.amazonaws.com.cn","s3-website.cn-northwest-1.amazonaws.com.cn","s3.dualstack.af-south-1.amazonaws.com","s3-accesspoint.dualstack.af-south-1.amazonaws.com","s3-website.dualstack.af-south-1.amazonaws.com","s3.af-south-1.amazonaws.com","s3-accesspoint.af-south-1.amazonaws.com","s3-object-lambda.af-south-1.amazonaws.com","s3-website.af-south-1.amazonaws.com","s3.dualstack.ap-east-1.amazonaws.com","s3-accesspoint.dualstack.ap-east-1.amazonaws.com","s3.ap-east-1.amazonaws.com","s3-accesspoint.ap-east-1.amazonaws.com","s3-object-lambda.ap-east-1.amazonaws.com","s3-website.ap-east-1.amazonaws.com","s3.dualstack.ap-northeast-1.amazonaws.com","s3-accesspoint.dualstack.ap-northeast-1.amazonaws.com","s3-website.dualstack.ap-northeast-1.amazonaws.com","s3.ap-northeast-1.amazonaws.com","s3-accesspoint.ap-northeast-1.amazonaws.com","s3-object-lambda.ap-northeast-1.amazonaws.com","s3-website.ap-northeast-1.amazonaws.com","s3.dualstack.ap-northeast-2.amazonaws.com","s3-accesspoint.dualstack.ap-northeast-2.amazonaws.com","s3-website.dualstack.ap-northeast-2.amazonaws.com","s3.ap-northeast-2.amazonaws.com","s3-accesspoint.ap-northeast-2.amazonaws.com","s3-object-lambda.ap-northeast-2.amazonaws.com","s3-website.ap-northeast-2.amazonaws.com","s3.dualstack.ap-northeast-3.amazonaws.com","s3-accesspoint.dualstack.ap-northeast-3.amazonaws.com","s3-website.dualstack.ap-northeast-3.amazonaws.com","s3.ap-northeast-3.amazonaws.com","s3-accesspoint.ap-northeast-3.amazonaws.com","s3-object-lambda.ap-northeast-3.amazonaws.com","s3-website.ap-northeast-3.amazonaws.com","s3.dualstack.ap-south-1.amazonaws.com","s3-accesspoint.dualstack.ap-south-1.amazonaws.com","s3-website.dualstack.ap-south-1.amazonaws.com","s3.ap-south-1.amazonaws.com","s3-accesspoint.ap-south-1.amazonaws.com","s3-object-lambda.ap-south-1.amazonaws.com","s3-website.ap-south-1.amazonaws.com","s3.dualstack.ap-south-2.amazonaws.com","s3-accesspoint.dualstack.ap-south-2.amazonaws.com","s3-website.dualstack.ap-south-2.amazonaws.com","s3.ap-south-2.amazonaws.com","s3-accesspoint.ap-south-2.amazonaws.com","s3-object-lambda.ap-south-2.amazonaws.com","s3-website.ap-south-2.amazonaws.com","s3.dualstack.ap-southeast-1.amazonaws.com","s3-accesspoint.dualstack.ap-southeast-1.amazonaws.com","s3-website.dualstack.ap-southeast-1.amazonaws.com","s3.ap-southeast-1.amazonaws.com","s3-accesspoint.ap-southeast-1.amazonaws.com","s3-object-lambda.ap-southeast-1.amazonaws.com","s3-website.ap-southeast-1.amazonaws.com","s3.dualstack.ap-southeast-2.amazonaws.com","s3-accesspoint.dualstack.ap-southeast-2.amazonaws.com","s3-website.dualstack.ap-southeast-2.amazonaws.com","s3.ap-southeast-2.amazonaws.com","s3-accesspoint.ap-southeast-2.amazonaws.com","s3-object-lambda.ap-southeast-2.amazonaws.com","s3-website.ap-southeast-2.amazonaws.com","s3.dualstack.ap-southeast-3.amazonaws.com","s3-accesspoint.dualstack.ap-southeast-3.amazonaws.com","s3-website.dualstack.ap-southeast-3.amazonaws.com","s3.ap-southeast-3.amazonaws.com","s3-accesspoint.ap-southeast-3.amazonaws.com","s3-object-lambda.ap-southeast-3.amazonaws.com","s3-website.ap-southeast-3.amazonaws.com","s3.dualstack.ap-southeast-4.amazonaws.com","s3-accesspoint.dualstack.ap-southeast-4.amazonaws.com","s3-website.dualstack.ap-southeast-4.amazonaws.com","s3.ap-southeast-4.amazonaws.com","s3-accesspoint.ap-southeast-4.amazonaws.com","s3-object-lambda.ap-southeast-4.amazonaws.com","s3-website.ap-southeast-4.amazonaws.com","s3.dualstack.ap-southeast-5.amazonaws.com","s3-accesspoint.dualstack.ap-southeast-5.amazonaws.com","s3-website.dualstack.ap-southeast-5.amazonaws.com","s3.ap-southeast-5.amazonaws.com","s3-accesspoint.ap-southeast-5.amazonaws.com","s3-deprecated.ap-southeast-5.amazonaws.com","s3-object-lambda.ap-southeast-5.amazonaws.com","s3-website.ap-southeast-5.amazonaws.com","s3.dualstack.ca-central-1.amazonaws.com","s3-accesspoint.dualstack.ca-central-1.amazonaws.com","s3-accesspoint-fips.dualstack.ca-central-1.amazonaws.com","s3-fips.dualstack.ca-central-1.amazonaws.com","s3-website.dualstack.ca-central-1.amazonaws.com","s3.ca-central-1.amazonaws.com","s3-accesspoint.ca-central-1.amazonaws.com","s3-accesspoint-fips.ca-central-1.amazonaws.com","s3-fips.ca-central-1.amazonaws.com","s3-object-lambda.ca-central-1.amazonaws.com","s3-website.ca-central-1.amazonaws.com","s3.dualstack.ca-west-1.amazonaws.com","s3-accesspoint.dualstack.ca-west-1.amazonaws.com","s3-accesspoint-fips.dualstack.ca-west-1.amazonaws.com","s3-fips.dualstack.ca-west-1.amazonaws.com","s3-website.dualstack.ca-west-1.amazonaws.com","s3.ca-west-1.amazonaws.com","s3-accesspoint.ca-west-1.amazonaws.com","s3-accesspoint-fips.ca-west-1.amazonaws.com","s3-fips.ca-west-1.amazonaws.com","s3-object-lambda.ca-west-1.amazonaws.com","s3-website.ca-west-1.amazonaws.com","s3.dualstack.eu-central-1.amazonaws.com","s3-accesspoint.dualstack.eu-central-1.amazonaws.com","s3-website.dualstack.eu-central-1.amazonaws.com","s3.eu-central-1.amazonaws.com","s3-accesspoint.eu-central-1.amazonaws.com","s3-object-lambda.eu-central-1.amazonaws.com","s3-website.eu-central-1.amazonaws.com","s3.dualstack.eu-central-2.amazonaws.com","s3-accesspoint.dualstack.eu-central-2.amazonaws.com","s3-website.dualstack.eu-central-2.amazonaws.com","s3.eu-central-2.amazonaws.com","s3-accesspoint.eu-central-2.amazonaws.com","s3-object-lambda.eu-central-2.amazonaws.com","s3-website.eu-central-2.amazonaws.com","s3.dualstack.eu-north-1.amazonaws.com","s3-accesspoint.dualstack.eu-north-1.amazonaws.com","s3.eu-north-1.amazonaws.com","s3-accesspoint.eu-north-1.amazonaws.com","s3-object-lambda.eu-north-1.amazonaws.com","s3-website.eu-north-1.amazonaws.com","s3.dualstack.eu-south-1.amazonaws.com","s3-accesspoint.dualstack.eu-south-1.amazonaws.com","s3-website.dualstack.eu-south-1.amazonaws.com","s3.eu-south-1.amazonaws.com","s3-accesspoint.eu-south-1.amazonaws.com","s3-object-lambda.eu-south-1.amazonaws.com","s3-website.eu-south-1.amazonaws.com","s3.dualstack.eu-south-2.amazonaws.com","s3-accesspoint.dualstack.eu-south-2.amazonaws.com","s3-website.dualstack.eu-south-2.amazonaws.com","s3.eu-south-2.amazonaws.com","s3-accesspoint.eu-south-2.amazonaws.com","s3-object-lambda.eu-south-2.amazonaws.com","s3-website.eu-south-2.amazonaws.com","s3.dualstack.eu-west-1.amazonaws.com","s3-accesspoint.dualstack.eu-west-1.amazonaws.com","s3-website.dualstack.eu-west-1.amazonaws.com","s3.eu-west-1.amazonaws.com","s3-accesspoint.eu-west-1.amazonaws.com","s3-deprecated.eu-west-1.amazonaws.com","s3-object-lambda.eu-west-1.amazonaws.com","s3-website.eu-west-1.amazonaws.com","s3.dualstack.eu-west-2.amazonaws.com","s3-accesspoint.dualstack.eu-west-2.amazonaws.com","s3.eu-west-2.amazonaws.com","s3-accesspoint.eu-west-2.amazonaws.com","s3-object-lambda.eu-west-2.amazonaws.com","s3-website.eu-west-2.amazonaws.com","s3.dualstack.eu-west-3.amazonaws.com","s3-accesspoint.dualstack.eu-west-3.amazonaws.com","s3-website.dualstack.eu-west-3.amazonaws.com","s3.eu-west-3.amazonaws.com","s3-accesspoint.eu-west-3.amazonaws.com","s3-object-lambda.eu-west-3.amazonaws.com","s3-website.eu-west-3.amazonaws.com","s3.dualstack.il-central-1.amazonaws.com","s3-accesspoint.dualstack.il-central-1.amazonaws.com","s3-website.dualstack.il-central-1.amazonaws.com","s3.il-central-1.amazonaws.com","s3-accesspoint.il-central-1.amazonaws.com","s3-object-lambda.il-central-1.amazonaws.com","s3-website.il-central-1.amazonaws.com","s3.dualstack.me-central-1.amazonaws.com","s3-accesspoint.dualstack.me-central-1.amazonaws.com","s3-website.dualstack.me-central-1.amazonaws.com","s3.me-central-1.amazonaws.com","s3-accesspoint.me-central-1.amazonaws.com","s3-object-lambda.me-central-1.amazonaws.com","s3-website.me-central-1.amazonaws.com","s3.dualstack.me-south-1.amazonaws.com","s3-accesspoint.dualstack.me-south-1.amazonaws.com","s3.me-south-1.amazonaws.com","s3-accesspoint.me-south-1.amazonaws.com","s3-object-lambda.me-south-1.amazonaws.com","s3-website.me-south-1.amazonaws.com","s3.amazonaws.com","s3-1.amazonaws.com","s3-ap-east-1.amazonaws.com","s3-ap-northeast-1.amazonaws.com","s3-ap-northeast-2.amazonaws.com","s3-ap-northeast-3.amazonaws.com","s3-ap-south-1.amazonaws.com","s3-ap-southeast-1.amazonaws.com","s3-ap-southeast-2.amazonaws.com","s3-ca-central-1.amazonaws.com","s3-eu-central-1.amazonaws.com","s3-eu-north-1.amazonaws.com","s3-eu-west-1.amazonaws.com","s3-eu-west-2.amazonaws.com","s3-eu-west-3.amazonaws.com","s3-external-1.amazonaws.com","s3-fips-us-gov-east-1.amazonaws.com","s3-fips-us-gov-west-1.amazonaws.com","mrap.accesspoint.s3-global.amazonaws.com","s3-me-south-1.amazonaws.com","s3-sa-east-1.amazonaws.com","s3-us-east-2.amazonaws.com","s3-us-gov-east-1.amazonaws.com","s3-us-gov-west-1.amazonaws.com","s3-us-west-1.amazonaws.com","s3-us-west-2.amazonaws.com","s3-website-ap-northeast-1.amazonaws.com","s3-website-ap-southeast-1.amazonaws.com","s3-website-ap-southeast-2.amazonaws.com","s3-website-eu-west-1.amazonaws.com","s3-website-sa-east-1.amazonaws.com","s3-website-us-east-1.amazonaws.com","s3-website-us-gov-west-1.amazonaws.com","s3-website-us-west-1.amazonaws.com","s3-website-us-west-2.amazonaws.com","s3.dualstack.sa-east-1.amazonaws.com","s3-accesspoint.dualstack.sa-east-1.amazonaws.com","s3-website.dualstack.sa-east-1.amazonaws.com","s3.sa-east-1.amazonaws.com","s3-accesspoint.sa-east-1.amazonaws.com","s3-object-lambda.sa-east-1.amazonaws.com","s3-website.sa-east-1.amazonaws.com","s3.dualstack.us-east-1.amazonaws.com","s3-accesspoint.dualstack.us-east-1.amazonaws.com","s3-accesspoint-fips.dualstack.us-east-1.amazonaws.com","s3-fips.dualstack.us-east-1.amazonaws.com","s3-website.dualstack.us-east-1.amazonaws.com","s3.us-east-1.amazonaws.com","s3-accesspoint.us-east-1.amazonaws.com","s3-accesspoint-fips.us-east-1.amazonaws.com","s3-deprecated.us-east-1.amazonaws.com","s3-fips.us-east-1.amazonaws.com","s3-object-lambda.us-east-1.amazonaws.com","s3-website.us-east-1.amazonaws.com","s3.dualstack.us-east-2.amazonaws.com","s3-accesspoint.dualstack.us-east-2.amazonaws.com","s3-accesspoint-fips.dualstack.us-east-2.amazonaws.com","s3-fips.dualstack.us-east-2.amazonaws.com","s3-website.dualstack.us-east-2.amazonaws.com","s3.us-east-2.amazonaws.com","s3-accesspoint.us-east-2.amazonaws.com","s3-accesspoint-fips.us-east-2.amazonaws.com","s3-deprecated.us-east-2.amazonaws.com","s3-fips.us-east-2.amazonaws.com","s3-object-lambda.us-east-2.amazonaws.com","s3-website.us-east-2.amazonaws.com","s3.dualstack.us-gov-east-1.amazonaws.com","s3-accesspoint.dualstack.us-gov-east-1.amazonaws.com","s3-accesspoint-fips.dualstack.us-gov-east-1.amazonaws.com","s3-fips.dualstack.us-gov-east-1.amazonaws.com","s3.us-gov-east-1.amazonaws.com","s3-accesspoint.us-gov-east-1.amazonaws.com","s3-accesspoint-fips.us-gov-east-1.amazonaws.com","s3-fips.us-gov-east-1.amazonaws.com","s3-object-lambda.us-gov-east-1.amazonaws.com","s3-website.us-gov-east-1.amazonaws.com","s3.dualstack.us-gov-west-1.amazonaws.com","s3-accesspoint.dualstack.us-gov-west-1.amazonaws.com","s3-accesspoint-fips.dualstack.us-gov-west-1.amazonaws.com","s3-fips.dualstack.us-gov-west-1.amazonaws.com","s3.us-gov-west-1.amazonaws.com","s3-accesspoint.us-gov-west-1.amazonaws.com","s3-accesspoint-fips.us-gov-west-1.amazonaws.com","s3-fips.us-gov-west-1.amazonaws.com","s3-object-lambda.us-gov-west-1.amazonaws.com","s3-website.us-gov-west-1.amazonaws.com","s3.dualstack.us-west-1.amazonaws.com","s3-accesspoint.dualstack.us-west-1.amazonaws.com","s3-accesspoint-fips.dualstack.us-west-1.amazonaws.com","s3-fips.dualstack.us-west-1.amazonaws.com","s3-website.dualstack.us-west-1.amazonaws.com","s3.us-west-1.amazonaws.com","s3-accesspoint.us-west-1.amazonaws.com","s3-accesspoint-fips.us-west-1.amazonaws.com","s3-fips.us-west-1.amazonaws.com","s3-object-lambda.us-west-1.amazonaws.com","s3-website.us-west-1.amazonaws.com","s3.dualstack.us-west-2.amazonaws.com","s3-accesspoint.dualstack.us-west-2.amazonaws.com","s3-accesspoint-fips.dualstack.us-west-2.amazonaws.com","s3-fips.dualstack.us-west-2.amazonaws.com","s3-website.dualstack.us-west-2.amazonaws.com","s3.us-west-2.amazonaws.com","s3-accesspoint.us-west-2.amazonaws.com","s3-accesspoint-fips.us-west-2.amazonaws.com","s3-deprecated.us-west-2.amazonaws.com","s3-fips.us-west-2.amazonaws.com","s3-object-lambda.us-west-2.amazonaws.com","s3-website.us-west-2.amazonaws.com","labeling.ap-northeast-1.sagemaker.aws","labeling.ap-northeast-2.sagemaker.aws","labeling.ap-south-1.sagemaker.aws","labeling.ap-southeast-1.sagemaker.aws","labeling.ap-southeast-2.sagemaker.aws","labeling.ca-central-1.sagemaker.aws","labeling.eu-central-1.sagemaker.aws","labeling.eu-west-1.sagemaker.aws","labeling.eu-west-2.sagemaker.aws","labeling.us-east-1.sagemaker.aws","labeling.us-east-2.sagemaker.aws","labeling.us-west-2.sagemaker.aws","notebook.af-south-1.sagemaker.aws","notebook.ap-east-1.sagemaker.aws","notebook.ap-northeast-1.sagemaker.aws","notebook.ap-northeast-2.sagemaker.aws","notebook.ap-northeast-3.sagemaker.aws","notebook.ap-south-1.sagemaker.aws","notebook.ap-south-2.sagemaker.aws","notebook.ap-southeast-1.sagemaker.aws","notebook.ap-southeast-2.sagemaker.aws","notebook.ap-southeast-3.sagemaker.aws","notebook.ap-southeast-4.sagemaker.aws","notebook.ca-central-1.sagemaker.aws","notebook-fips.ca-central-1.sagemaker.aws","notebook.ca-west-1.sagemaker.aws","notebook-fips.ca-west-1.sagemaker.aws","notebook.eu-central-1.sagemaker.aws","notebook.eu-central-2.sagemaker.aws","notebook.eu-north-1.sagemaker.aws","notebook.eu-south-1.sagemaker.aws","notebook.eu-south-2.sagemaker.aws","notebook.eu-west-1.sagemaker.aws","notebook.eu-west-2.sagemaker.aws","notebook.eu-west-3.sagemaker.aws","notebook.il-central-1.sagemaker.aws","notebook.me-central-1.sagemaker.aws","notebook.me-south-1.sagemaker.aws","notebook.sa-east-1.sagemaker.aws","notebook.us-east-1.sagemaker.aws","notebook-fips.us-east-1.sagemaker.aws","notebook.us-east-2.sagemaker.aws","notebook-fips.us-east-2.sagemaker.aws","notebook.us-gov-east-1.sagemaker.aws","notebook-fips.us-gov-east-1.sagemaker.aws","notebook.us-gov-west-1.sagemaker.aws","notebook-fips.us-gov-west-1.sagemaker.aws","notebook.us-west-1.sagemaker.aws","notebook-fips.us-west-1.sagemaker.aws","notebook.us-west-2.sagemaker.aws","notebook-fips.us-west-2.sagemaker.aws","notebook.cn-north-1.sagemaker.com.cn","notebook.cn-northwest-1.sagemaker.com.cn","studio.af-south-1.sagemaker.aws","studio.ap-east-1.sagemaker.aws","studio.ap-northeast-1.sagemaker.aws","studio.ap-northeast-2.sagemaker.aws","studio.ap-northeast-3.sagemaker.aws","studio.ap-south-1.sagemaker.aws","studio.ap-southeast-1.sagemaker.aws","studio.ap-southeast-2.sagemaker.aws","studio.ap-southeast-3.sagemaker.aws","studio.ca-central-1.sagemaker.aws","studio.eu-central-1.sagemaker.aws","studio.eu-north-1.sagemaker.aws","studio.eu-south-1.sagemaker.aws","studio.eu-south-2.sagemaker.aws","studio.eu-west-1.sagemaker.aws","studio.eu-west-2.sagemaker.aws","studio.eu-west-3.sagemaker.aws","studio.il-central-1.sagemaker.aws","studio.me-central-1.sagemaker.aws","studio.me-south-1.sagemaker.aws","studio.sa-east-1.sagemaker.aws","studio.us-east-1.sagemaker.aws","studio.us-east-2.sagemaker.aws","studio.us-gov-east-1.sagemaker.aws","studio-fips.us-gov-east-1.sagemaker.aws","studio.us-gov-west-1.sagemaker.aws","studio-fips.us-gov-west-1.sagemaker.aws","studio.us-west-1.sagemaker.aws","studio.us-west-2.sagemaker.aws","studio.cn-north-1.sagemaker.com.cn","studio.cn-northwest-1.sagemaker.com.cn","*.experiments.sagemaker.aws","analytics-gateway.ap-northeast-1.amazonaws.com","analytics-gateway.ap-northeast-2.amazonaws.com","analytics-gateway.ap-south-1.amazonaws.com","analytics-gateway.ap-southeast-1.amazonaws.com","analytics-gateway.ap-southeast-2.amazonaws.com","analytics-gateway.eu-central-1.amazonaws.com","analytics-gateway.eu-west-1.amazonaws.com","analytics-gateway.us-east-1.amazonaws.com","analytics-gateway.us-east-2.amazonaws.com","analytics-gateway.us-west-2.amazonaws.com","amplifyapp.com","*.awsapprunner.com","webview-assets.aws-cloud9.af-south-1.amazonaws.com","vfs.cloud9.af-south-1.amazonaws.com","webview-assets.cloud9.af-south-1.amazonaws.com","webview-assets.aws-cloud9.ap-east-1.amazonaws.com","vfs.cloud9.ap-east-1.amazonaws.com","webview-assets.cloud9.ap-east-1.amazonaws.com","webview-assets.aws-cloud9.ap-northeast-1.amazonaws.com","vfs.cloud9.ap-northeast-1.amazonaws.com","webview-assets.cloud9.ap-northeast-1.amazonaws.com","webview-assets.aws-cloud9.ap-northeast-2.amazonaws.com","vfs.cloud9.ap-northeast-2.amazonaws.com","webview-assets.cloud9.ap-northeast-2.amazonaws.com","webview-assets.aws-cloud9.ap-northeast-3.amazonaws.com","vfs.cloud9.ap-northeast-3.amazonaws.com","webview-assets.cloud9.ap-northeast-3.amazonaws.com","webview-assets.aws-cloud9.ap-south-1.amazonaws.com","vfs.cloud9.ap-south-1.amazonaws.com","webview-assets.cloud9.ap-south-1.amazonaws.com","webview-assets.aws-cloud9.ap-southeast-1.amazonaws.com","vfs.cloud9.ap-southeast-1.amazonaws.com","webview-assets.cloud9.ap-southeast-1.amazonaws.com","webview-assets.aws-cloud9.ap-southeast-2.amazonaws.com","vfs.cloud9.ap-southeast-2.amazonaws.com","webview-assets.cloud9.ap-southeast-2.amazonaws.com","webview-assets.aws-cloud9.ca-central-1.amazonaws.com","vfs.cloud9.ca-central-1.amazonaws.com","webview-assets.cloud9.ca-central-1.amazonaws.com","webview-assets.aws-cloud9.eu-central-1.amazonaws.com","vfs.cloud9.eu-central-1.amazonaws.com","webview-assets.cloud9.eu-central-1.amazonaws.com","webview-assets.aws-cloud9.eu-north-1.amazonaws.com","vfs.cloud9.eu-north-1.amazonaws.com","webview-assets.cloud9.eu-north-1.amazonaws.com","webview-assets.aws-cloud9.eu-south-1.amazonaws.com","vfs.cloud9.eu-south-1.amazonaws.com","webview-assets.cloud9.eu-south-1.amazonaws.com","webview-assets.aws-cloud9.eu-west-1.amazonaws.com","vfs.cloud9.eu-west-1.amazonaws.com","webview-assets.cloud9.eu-west-1.amazonaws.com","webview-assets.aws-cloud9.eu-west-2.amazonaws.com","vfs.cloud9.eu-west-2.amazonaws.com","webview-assets.cloud9.eu-west-2.amazonaws.com","webview-assets.aws-cloud9.eu-west-3.amazonaws.com","vfs.cloud9.eu-west-3.amazonaws.com","webview-assets.cloud9.eu-west-3.amazonaws.com","webview-assets.aws-cloud9.il-central-1.amazonaws.com","vfs.cloud9.il-central-1.amazonaws.com","webview-assets.aws-cloud9.me-south-1.amazonaws.com","vfs.cloud9.me-south-1.amazonaws.com","webview-assets.cloud9.me-south-1.amazonaws.com","webview-assets.aws-cloud9.sa-east-1.amazonaws.com","vfs.cloud9.sa-east-1.amazonaws.com","webview-assets.cloud9.sa-east-1.amazonaws.com","webview-assets.aws-cloud9.us-east-1.amazonaws.com","vfs.cloud9.us-east-1.amazonaws.com","webview-assets.cloud9.us-east-1.amazonaws.com","webview-assets.aws-cloud9.us-east-2.amazonaws.com","vfs.cloud9.us-east-2.amazonaws.com","webview-assets.cloud9.us-east-2.amazonaws.com","webview-assets.aws-cloud9.us-west-1.amazonaws.com","vfs.cloud9.us-west-1.amazonaws.com","webview-assets.cloud9.us-west-1.amazonaws.com","webview-assets.aws-cloud9.us-west-2.amazonaws.com","vfs.cloud9.us-west-2.amazonaws.com","webview-assets.cloud9.us-west-2.amazonaws.com","awsapps.com","cn-north-1.eb.amazonaws.com.cn","cn-northwest-1.eb.amazonaws.com.cn","elasticbeanstalk.com","af-south-1.elasticbeanstalk.com","ap-east-1.elasticbeanstalk.com","ap-northeast-1.elasticbeanstalk.com","ap-northeast-2.elasticbeanstalk.com","ap-northeast-3.elasticbeanstalk.com","ap-south-1.elasticbeanstalk.com","ap-southeast-1.elasticbeanstalk.com","ap-southeast-2.elasticbeanstalk.com","ap-southeast-3.elasticbeanstalk.com","ca-central-1.elasticbeanstalk.com","eu-central-1.elasticbeanstalk.com","eu-north-1.elasticbeanstalk.com","eu-south-1.elasticbeanstalk.com","eu-west-1.elasticbeanstalk.com","eu-west-2.elasticbeanstalk.com","eu-west-3.elasticbeanstalk.com","il-central-1.elasticbeanstalk.com","me-south-1.elasticbeanstalk.com","sa-east-1.elasticbeanstalk.com","us-east-1.elasticbeanstalk.com","us-east-2.elasticbeanstalk.com","us-gov-east-1.elasticbeanstalk.com","us-gov-west-1.elasticbeanstalk.com","us-west-1.elasticbeanstalk.com","us-west-2.elasticbeanstalk.com","*.elb.amazonaws.com.cn","*.elb.amazonaws.com","awsglobalaccelerator.com","*.private.repost.aws","eero.online","eero-stage.online","apigee.io","panel.dev","siiites.com","appspacehosted.com","appspaceusercontent.com","appudo.net","on-aptible.com","f5.si","arvanedge.ir","user.aseinet.ne.jp","gv.vc","d.gv.vc","user.party.eus","pimienta.org","poivron.org","potager.org","sweetpepper.org","myasustor.com","cdn.prod.atlassian-dev.net","translated.page","myfritz.link","myfritz.net","onavstack.net","*.awdev.ca","*.advisor.ws","ecommerce-shop.pl","b-data.io","balena-devices.com","base.ec","official.ec","buyshop.jp","fashionstore.jp","handcrafted.jp","kawaiishop.jp","supersale.jp","theshop.jp","shopselect.net","base.shop","beagleboard.io","*.beget.app","pages.gay","bnr.la","bitbucket.io","blackbaudcdn.net","of.je","bluebite.io","boomla.net","boutir.com","boxfuse.io","square7.ch","bplaced.com","bplaced.de","square7.de","bplaced.net","square7.net","*.s.brave.io","shop.brendly.hr","shop.brendly.rs","browsersafetymark.io","radio.am","radio.fm","uk0.bigv.io","dh.bytemark.co.uk","vm.bytemark.co.uk","cafjs.com","canva-apps.cn","*.my.canvasite.cn","canva-apps.com","*.my.canva.site","drr.ac","uwu.ai","carrd.co","crd.co","ju.mp","api.gov.uk","cdn77-storage.com","rsc.contentproxy9.cz","r.cdn77.net","cdn77-ssl.net","c.cdn77.org","rsc.cdn77.org","ssl.origin.cdn77-secure.org","za.bz","br.com","cn.com","de.com","eu.com","jpn.com","mex.com","ru.com","sa.com","uk.com","us.com","za.com","com.de","gb.net","hu.net","jp.net","se.net","uk.net","ae.org","com.se","cx.ua","discourse.group","discourse.team","clerk.app","clerkstage.app","*.lcl.dev","*.lclstage.dev","*.stg.dev","*.stgstage.dev","cleverapps.cc","*.services.clever-cloud.com","cleverapps.io","cleverapps.tech","clickrising.net","cloudns.asia","cloudns.be","cloud-ip.biz","cloudns.biz","cloudns.cc","cloudns.ch","cloudns.cl","cloudns.club","dnsabr.com","ip-ddns.com","cloudns.cx","cloudns.eu","cloudns.in","cloudns.info","ddns-ip.net","dns-cloud.net","dns-dynamic.net","cloudns.nz","cloudns.org","ip-dynamic.org","cloudns.ph","cloudns.pro","cloudns.pw","cloudns.us","c66.me","cloud66.ws","cloud66.zone","jdevcloud.com","wpdevcloud.com","cloudaccess.host","freesite.host","cloudaccess.net","*.cloudera.site","cf-ipfs.com","cloudflare-ipfs.com","trycloudflare.com","pages.dev","r2.dev","workers.dev","cloudflare.net","cdn.cloudflare.net","cdn.cloudflareanycast.net","cdn.cloudflarecn.net","cdn.cloudflareglobal.net","cust.cloudscale.ch","objects.lpg.cloudscale.ch","objects.rma.cloudscale.ch","wnext.app","cnpy.gdn","*.otap.co","co.ca","co.com","codeberg.page","csb.app","preview.csb.app","co.nl","co.no","webhosting.be","hosting-cluster.nl","ctfcloud.net","convex.site","ac.ru","edu.ru","gov.ru","int.ru","mil.ru","test.ru","dyn.cosidns.de","dnsupdater.de","dynamisches-dns.de","internet-dns.de","l-o-g-i-n.de","dynamic-dns.info","feste-ip.net","knx-server.net","static-access.net","craft.me","realm.cz","on.crisp.email","*.cryptonomic.net","curv.dev","cfolks.pl","cyon.link","cyon.site","platform0.app","fnwk.site","folionetwork.site","biz.dk","co.dk","firm.dk","reg.dk","store.dk","dyndns.dappnode.io","builtwithdark.com","darklang.io","demo.datadetect.com","instance.datadetect.com","edgestack.me","dattolocal.com","dattorelay.com","dattoweb.com","mydatto.com","dattolocal.net","mydatto.net","ddnss.de","dyn.ddnss.de","dyndns.ddnss.de","dyn-ip24.de","dyndns1.de","home-webserver.de","dyn.home-webserver.de","myhome-server.de","ddnss.org","debian.net","definima.io","definima.net","deno.dev","deno-staging.dev","dedyn.io","deta.app","deta.dev","dfirma.pl","dkonto.pl","you2.pl","ondigitalocean.app","*.digitaloceanspaces.com","us.kg","rss.my.id","diher.solutions","discordsays.com","discordsez.com","jozi.biz","dnshome.de","online.th","shop.th","drayddns.com","shoparena.pl","dreamhosters.com","durumis.com","mydrobo.com","drud.io","drud.us","duckdns.org","dy.fi","tunk.org","dyndns.biz","for-better.biz","for-more.biz","for-some.biz","for-the.biz","selfip.biz","webhop.biz","ftpaccess.cc","game-server.cc","myphotos.cc","scrapping.cc","blogdns.com","cechire.com","dnsalias.com","dnsdojo.com","doesntexist.com","dontexist.com","doomdns.com","dyn-o-saur.com","dynalias.com","dyndns-at-home.com","dyndns-at-work.com","dyndns-blog.com","dyndns-free.com","dyndns-home.com","dyndns-ip.com","dyndns-mail.com","dyndns-office.com","dyndns-pics.com","dyndns-remote.com","dyndns-server.com","dyndns-web.com","dyndns-wiki.com","dyndns-work.com","est-a-la-maison.com","est-a-la-masion.com","est-le-patron.com","est-mon-blogueur.com","from-ak.com","from-al.com","from-ar.com","from-ca.com","from-ct.com","from-dc.com","from-de.com","from-fl.com","from-ga.com","from-hi.com","from-ia.com","from-id.com","from-il.com","from-in.com","from-ks.com","from-ky.com","from-ma.com","from-md.com","from-mi.com","from-mn.com","from-mo.com","from-ms.com","from-mt.com","from-nc.com","from-nd.com","from-ne.com","from-nh.com","from-nj.com","from-nm.com","from-nv.com","from-oh.com","from-ok.com","from-or.com","from-pa.com","from-pr.com","from-ri.com","from-sc.com","from-sd.com","from-tn.com","from-tx.com","from-ut.com","from-va.com","from-vt.com","from-wa.com","from-wi.com","from-wv.com","from-wy.com","getmyip.com","gotdns.com","hobby-site.com","homelinux.com","homeunix.com","iamallama.com","is-a-anarchist.com","is-a-blogger.com","is-a-bookkeeper.com","is-a-bulls-fan.com","is-a-caterer.com","is-a-chef.com","is-a-conservative.com","is-a-cpa.com","is-a-cubicle-slave.com","is-a-democrat.com","is-a-designer.com","is-a-doctor.com","is-a-financialadvisor.com","is-a-geek.com","is-a-green.com","is-a-guru.com","is-a-hard-worker.com","is-a-hunter.com","is-a-landscaper.com","is-a-lawyer.com","is-a-liberal.com","is-a-libertarian.com","is-a-llama.com","is-a-musician.com","is-a-nascarfan.com","is-a-nurse.com","is-a-painter.com","is-a-personaltrainer.com","is-a-photographer.com","is-a-player.com","is-a-republican.com","is-a-rockstar.com","is-a-socialist.com","is-a-student.com","is-a-teacher.com","is-a-techie.com","is-a-therapist.com","is-an-accountant.com","is-an-actor.com","is-an-actress.com","is-an-anarchist.com","is-an-artist.com","is-an-engineer.com","is-an-entertainer.com","is-certified.com","is-gone.com","is-into-anime.com","is-into-cars.com","is-into-cartoons.com","is-into-games.com","is-leet.com","is-not-certified.com","is-slick.com","is-uberleet.com","is-with-theband.com","isa-geek.com","isa-hockeynut.com","issmarterthanyou.com","likes-pie.com","likescandy.com","neat-url.com","saves-the-whales.com","selfip.com","sells-for-less.com","sells-for-u.com","servebbs.com","simple-url.com","space-to-rent.com","teaches-yoga.com","writesthisblog.com","ath.cx","fuettertdasnetz.de","isteingeek.de","istmein.de","lebtimnetz.de","leitungsen.de","traeumtgerade.de","barrel-of-knowledge.info","barrell-of-knowledge.info","dyndns.info","for-our.info","groks-the.info","groks-this.info","here-for-more.info","knowsitall.info","selfip.info","webhop.info","forgot.her.name","forgot.his.name","at-band-camp.net","blogdns.net","broke-it.net","buyshouses.net","dnsalias.net","dnsdojo.net","does-it.net","dontexist.net","dynalias.net","dynathome.net","endofinternet.net","from-az.net","from-co.net","from-la.net","from-ny.net","gets-it.net","ham-radio-op.net","homeftp.net","homeip.net","homelinux.net","homeunix.net","in-the-band.net","is-a-chef.net","is-a-geek.net","isa-geek.net","kicks-ass.net","office-on-the.net","podzone.net","scrapper-site.net","selfip.net","sells-it.net","servebbs.net","serveftp.net","thruhere.net","webhop.net","merseine.nu","mine.nu","shacknet.nu","blogdns.org","blogsite.org","boldlygoingnowhere.org","dnsalias.org","dnsdojo.org","doesntexist.org","dontexist.org","doomdns.org","dvrdns.org","dynalias.org","dyndns.org","go.dyndns.org","home.dyndns.org","endofinternet.org","endoftheinternet.org","from-me.org","game-host.org","gotdns.org","hobby-site.org","homedns.org","homeftp.org","homelinux.org","homeunix.org","is-a-bruinsfan.org","is-a-candidate.org","is-a-celticsfan.org","is-a-chef.org","is-a-geek.org","is-a-knight.org","is-a-linux-user.org","is-a-patsfan.org","is-a-soxfan.org","is-found.org","is-lost.org","is-saved.org","is-very-bad.org","is-very-evil.org","is-very-good.org","is-very-nice.org","is-very-sweet.org","isa-geek.org","kicks-ass.org","misconfused.org","podzone.org","readmyblog.org","selfip.org","sellsyourhome.org","servebbs.org","serveftp.org","servegame.org","stuff-4-sale.org","webhop.org","better-than.tv","dyndns.tv","on-the-web.tv","worse-than.tv","is-by.us","land-4-sale.us","stuff-4-sale.us","dyndns.ws","mypets.ws","ddnsfree.com","ddnsgeek.com","giize.com","gleeze.com","kozow.com","loseyourip.com","ooguy.com","theworkpc.com","casacam.net","dynu.net","accesscam.org","camdvr.org","freeddns.org","mywire.org","webredirect.org","myddns.rocks","dynv6.net","e4.cz","easypanel.app","easypanel.host","*.ewp.live","twmail.cc","twmail.net","twmail.org","mymailer.com.tw","url.tw","at.emf.camp","rt.ht","elementor.cloud","elementor.cool","en-root.fr","mytuleap.com","tuleap-partners.com","encr.app","encoreapi.com","eu.encoway.cloud","eu.org","al.eu.org","asso.eu.org","at.eu.org","au.eu.org","be.eu.org","bg.eu.org","ca.eu.org","cd.eu.org","ch.eu.org","cn.eu.org","cy.eu.org","cz.eu.org","de.eu.org","dk.eu.org","edu.eu.org","ee.eu.org","es.eu.org","fi.eu.org","fr.eu.org","gr.eu.org","hr.eu.org","hu.eu.org","ie.eu.org","il.eu.org","in.eu.org","int.eu.org","is.eu.org","it.eu.org","jp.eu.org","kr.eu.org","lt.eu.org","lu.eu.org","lv.eu.org","me.eu.org","mk.eu.org","mt.eu.org","my.eu.org","net.eu.org","ng.eu.org","nl.eu.org","no.eu.org","nz.eu.org","pl.eu.org","pt.eu.org","ro.eu.org","ru.eu.org","se.eu.org","si.eu.org","sk.eu.org","tr.eu.org","uk.eu.org","us.eu.org","eurodir.ru","eu-1.evennode.com","eu-2.evennode.com","eu-3.evennode.com","eu-4.evennode.com","us-1.evennode.com","us-2.evennode.com","us-3.evennode.com","us-4.evennode.com","relay.evervault.app","relay.evervault.dev","expo.app","staging.expo.app","onfabrica.com","ru.net","adygeya.ru","bashkiria.ru","bir.ru","cbg.ru","com.ru","dagestan.ru","grozny.ru","kalmykia.ru","kustanai.ru","marine.ru","mordovia.ru","msk.ru","mytis.ru","nalchik.ru","nov.ru","pyatigorsk.ru","spb.ru","vladikavkaz.ru","vladimir.ru","abkhazia.su","adygeya.su","aktyubinsk.su","arkhangelsk.su","armenia.su","ashgabad.su","azerbaijan.su","balashov.su","bashkiria.su","bryansk.su","bukhara.su","chimkent.su","dagestan.su","east-kazakhstan.su","exnet.su","georgia.su","grozny.su","ivanovo.su","jambyl.su","kalmykia.su","kaluga.su","karacol.su","karaganda.su","karelia.su","khakassia.su","krasnodar.su","kurgan.su","kustanai.su","lenug.su","mangyshlak.su","mordovia.su","msk.su","murmansk.su","nalchik.su","navoi.su","north-kazakhstan.su","nov.su","obninsk.su","penza.su","pokrovsk.su","sochi.su","spb.su","tashkent.su","termez.su","togliatti.su","troitsk.su","tselinograd.su","tula.su","tuva.su","vladikavkaz.su","vladimir.su","vologda.su","channelsdvr.net","u.channelsdvr.net","edgecompute.app","fastly-edge.com","fastly-terrarium.com","freetls.fastly.net","map.fastly.net","a.prod.fastly.net","global.prod.fastly.net","a.ssl.fastly.net","b.ssl.fastly.net","global.ssl.fastly.net","fastlylb.net","map.fastlylb.net","*.user.fm","fastvps-server.com","fastvps.host","myfast.host","fastvps.site","myfast.space","conn.uk","copro.uk","hosp.uk","fedorainfracloud.org","fedorapeople.org","cloud.fedoraproject.org","app.os.fedoraproject.org","app.os.stg.fedoraproject.org","mydobiss.com","fh-muenster.io","filegear.me","firebaseapp.com","fldrv.com","flutterflow.app","fly.dev","shw.io","edgeapp.net","forgeblocks.com","id.forgerock.io","framer.ai","framer.app","framercanvas.com","framer.media","framer.photos","framer.website","framer.wiki","0e.vc","freebox-os.com","freeboxos.com","fbx-os.fr","fbxos.fr","freebox-os.fr","freeboxos.fr","freedesktop.org","freemyip.com","*.frusky.de","wien.funkfeuer.at","daemon.asia","dix.asia","mydns.bz","0am.jp","0g0.jp","0j0.jp","0t0.jp","mydns.jp","pgw.jp","wjg.jp","keyword-on.net","live-on.net","server-on.net","mydns.tw","mydns.vc","*.futurecms.at","*.ex.futurecms.at","*.in.futurecms.at","futurehosting.at","futuremailing.at","*.ex.ortsinfo.at","*.kunden.ortsinfo.at","*.statics.cloud","aliases121.com","campaign.gov.uk","service.gov.uk","independent-commission.uk","independent-inquest.uk","independent-inquiry.uk","independent-panel.uk","independent-review.uk","public-inquiry.uk","royal-commission.uk","gehirn.ne.jp","usercontent.jp","gentapps.com","gentlentapis.com","lab.ms","cdn-edges.net","localcert.net","localhostcert.net","gsj.bz","githubusercontent.com","githubpreview.dev","github.io","gitlab.io","gitapp.si","gitpage.si","glitch.me","nog.community","co.ro","shop.ro","lolipop.io","angry.jp","babyblue.jp","babymilk.jp","backdrop.jp","bambina.jp","bitter.jp","blush.jp","boo.jp","boy.jp","boyfriend.jp","but.jp","candypop.jp","capoo.jp","catfood.jp","cheap.jp","chicappa.jp","chillout.jp","chips.jp","chowder.jp","chu.jp","ciao.jp","cocotte.jp","coolblog.jp","cranky.jp","cutegirl.jp","daa.jp","deca.jp","deci.jp","digick.jp","egoism.jp","fakefur.jp","fem.jp","flier.jp","floppy.jp","fool.jp","frenchkiss.jp","girlfriend.jp","girly.jp","gloomy.jp","gonna.jp","greater.jp","hacca.jp","heavy.jp","her.jp","hiho.jp","hippy.jp","holy.jp","hungry.jp","icurus.jp","itigo.jp","jellybean.jp","kikirara.jp","kill.jp","kilo.jp","kuron.jp","littlestar.jp","lolipopmc.jp","lolitapunk.jp","lomo.jp","lovepop.jp","lovesick.jp","main.jp","mods.jp","mond.jp","mongolian.jp","moo.jp","namaste.jp","nikita.jp","nobushi.jp","noor.jp","oops.jp","parallel.jp","parasite.jp","pecori.jp","peewee.jp","penne.jp","pepper.jp","perma.jp","pigboat.jp","pinoko.jp","punyu.jp","pupu.jp","pussycat.jp","pya.jp","raindrop.jp","readymade.jp","sadist.jp","schoolbus.jp","secret.jp","staba.jp","stripper.jp","sub.jp","sunnyday.jp","thick.jp","tonkotsu.jp","under.jp","upper.jp","velvet.jp","verse.jp","versus.jp","vivian.jp","watson.jp","weblike.jp","whitesnow.jp","zombie.jp","heteml.net","graphic.design","goip.de","blogspot.ae","blogspot.al","blogspot.am","*.hosted.app","*.run.app","web.app","blogspot.com.ar","blogspot.co.at","blogspot.com.au","blogspot.ba","blogspot.be","blogspot.bg","blogspot.bj","blogspot.com.br","blogspot.com.by","blogspot.ca","blogspot.cf","blogspot.ch","blogspot.cl","blogspot.com.co","*.0emm.com","appspot.com","*.r.appspot.com","blogspot.com","codespot.com","googleapis.com","googlecode.com","pagespeedmobilizer.com","withgoogle.com","withyoutube.com","blogspot.cv","blogspot.com.cy","blogspot.cz","blogspot.de","*.gateway.dev","blogspot.dk","blogspot.com.ee","blogspot.com.eg","blogspot.com.es","blogspot.fi","blogspot.fr","cloud.goog","translate.goog","*.usercontent.goog","blogspot.gr","blogspot.hk","blogspot.hr","blogspot.hu","blogspot.co.id","blogspot.ie","blogspot.co.il","blogspot.in","blogspot.is","blogspot.it","blogspot.jp","blogspot.co.ke","blogspot.kr","blogspot.li","blogspot.lt","blogspot.lu","blogspot.md","blogspot.mk","blogspot.com.mt","blogspot.mx","blogspot.my","cloudfunctions.net","blogspot.com.ng","blogspot.nl","blogspot.no","blogspot.co.nz","blogspot.pe","blogspot.pt","blogspot.qa","blogspot.re","blogspot.ro","blogspot.rs","blogspot.ru","blogspot.se","blogspot.sg","blogspot.si","blogspot.sk","blogspot.sn","blogspot.td","blogspot.com.tr","blogspot.tw","blogspot.ug","blogspot.co.uk","blogspot.com.uy","blogspot.vn","blogspot.co.za","goupile.fr","pymnt.uk","cloudapps.digital","london.cloudapps.digital","gov.nl","grafana-dev.net","grayjayleagues.com","günstigbestellen.de","günstigliefern.de","fin.ci","free.hr","caa.li","ua.rs","conf.se","häkkinen.fi","hrsn.dev","hashbang.sh","hasura.app","hasura-app.io","hatenablog.com","hatenadiary.com","hateblo.jp","hatenablog.jp","hatenadiary.jp","hatenadiary.org","pages.it.hs-heilbronn.de","pages-research.it.hs-heilbronn.de","heiyu.space","helioho.st","heliohost.us","hepforge.org","herokuapp.com","herokussl.com","heyflow.page","heyflow.site","ravendb.cloud","ravendb.community","development.run","ravendb.run","homesklep.pl","*.kin.one","*.id.pub","*.kin.pub","secaas.hk","hoplix.shop","orx.biz","biz.gl","biz.ng","co.biz.ng","dl.biz.ng","go.biz.ng","lg.biz.ng","on.biz.ng","col.ng","firm.ng","gen.ng","ltd.ng","ngo.ng","plc.ng","ie.ua","hostyhosting.io","hf.space","static.hf.space","hypernode.io","iobb.net","co.cz","*.moonscale.io","moonscale.net","gr.com","iki.fi","ibxos.it","iliadboxos.it","smushcdn.com","wphostedmail.com","wpmucdn.com","tempurl.host","wpmudev.host","dyn-berlin.de","in-berlin.de","in-brb.de","in-butter.de","in-dsl.de","in-vpn.de","in-dsl.net","in-vpn.net","in-dsl.org","in-vpn.org","biz.at","info.at","info.cx","ac.leg.br","al.leg.br","am.leg.br","ap.leg.br","ba.leg.br","ce.leg.br","df.leg.br","es.leg.br","go.leg.br","ma.leg.br","mg.leg.br","ms.leg.br","mt.leg.br","pa.leg.br","pb.leg.br","pe.leg.br","pi.leg.br","pr.leg.br","rj.leg.br","rn.leg.br","ro.leg.br","rr.leg.br","rs.leg.br","sc.leg.br","se.leg.br","sp.leg.br","to.leg.br","pixolino.com","na4u.ru","apps-1and1.com","live-website.com","apps-1and1.net","websitebuilder.online","app-ionos.space","iopsys.se","*.dweb.link","ipifony.net","ir.md","is-a-good.dev","is-a.dev","iservschule.de","mein-iserv.de","schulplattform.de","schulserver.de","test-iserv.de","iserv.dev","mel.cloudlets.com.au","cloud.interhostsolutions.be","alp1.ae.flow.ch","appengine.flow.ch","es-1.axarnet.cloud","diadem.cloud","vip.jelastic.cloud","jele.cloud","it1.eur.aruba.jenv-aruba.cloud","it1.jenv-aruba.cloud","keliweb.cloud","cs.keliweb.cloud","oxa.cloud","tn.oxa.cloud","uk.oxa.cloud","primetel.cloud","uk.primetel.cloud","ca.reclaim.cloud","uk.reclaim.cloud","us.reclaim.cloud","ch.trendhosting.cloud","de.trendhosting.cloud","jele.club","dopaas.com","paas.hosted-by-previder.com","rag-cloud.hosteur.com","rag-cloud-ch.hosteur.com","jcloud.ik-server.com","jcloud-ver-jpc.ik-server.com","demo.jelastic.com","paas.massivegrid.com","jed.wafaicloud.com","ryd.wafaicloud.com","j.scaleforce.com.cy","jelastic.dogado.eu","fi.cloudplatform.fi","demo.datacenter.fi","paas.datacenter.fi","jele.host","mircloud.host","paas.beebyte.io","sekd1.beebyteapp.io","jele.io","jc.neen.it","jcloud.kz","cloudjiffy.net","fra1-de.cloudjiffy.net","west1-us.cloudjiffy.net","jls-sto1.elastx.net","jls-sto2.elastx.net","jls-sto3.elastx.net","fr-1.paas.massivegrid.net","lon-1.paas.massivegrid.net","lon-2.paas.massivegrid.net","ny-1.paas.massivegrid.net","ny-2.paas.massivegrid.net","sg-1.paas.massivegrid.net","jelastic.saveincloud.net","nordeste-idc.saveincloud.net","j.scaleforce.net","sdscloud.pl","unicloud.pl","mircloud.ru","enscaled.sg","jele.site","jelastic.team","orangecloud.tn","j.layershift.co.uk","phx.enscaled.us","mircloud.us","myjino.ru","*.hosting.myjino.ru","*.landing.myjino.ru","*.spectrum.myjino.ru","*.vps.myjino.ru","jotelulu.cloud","webadorsite.com","jouwweb.site","*.cns.joyent.com","*.triton.zone","js.org","kaas.gg","khplay.nl","kapsi.fi","ezproxy.kuleuven.be","kuleuven.cloud","keymachine.de","kinghost.net","uni5.net","knightpoint.systems","koobin.events","webthings.io","krellian.net","oya.to","git-repos.de","lcube-server.de","svn-repos.de","leadpages.co","lpages.co","lpusercontent.com","lelux.site","libp2p.direct","runcontainers.dev","co.business","co.education","co.events","co.financial","co.network","co.place","co.technology","linkyard-cloud.ch","linkyard.cloud","members.linode.com","*.nodebalancer.linode.com","*.linodeobjects.com","ip.linodeusercontent.com","we.bs","filegear-sg.me","ggff.net","*.user.localcert.dev","lodz.pl","pabianice.pl","plock.pl","sieradz.pl","skierniewice.pl","zgierz.pl","loginline.app","loginline.dev","loginline.io","loginline.services","loginline.site","lohmus.me","servers.run","krasnik.pl","leczna.pl","lubartow.pl","lublin.pl","poniatowa.pl","swidnik.pl","glug.org.uk","lug.org.uk","lugs.org.uk","barsy.bg","barsy.club","barsycenter.com","barsyonline.com","barsy.de","barsy.dev","barsy.eu","barsy.gr","barsy.in","barsy.info","barsy.io","barsy.me","barsy.menu","barsyonline.menu","barsy.mobi","barsy.net","barsy.online","barsy.org","barsy.pro","barsy.pub","barsy.ro","barsy.rs","barsy.shop","barsyonline.shop","barsy.site","barsy.store","barsy.support","barsy.uk","barsy.co.uk","barsyonline.co.uk","*.magentosite.cloud","hb.cldmail.ru","matlab.cloud","modelscape.com","mwcloudnonprod.com","polyspace.com","mayfirst.info","mayfirst.org","mazeplay.com","mcdir.me","mcdir.ru","vps.mcdir.ru","mcpre.ru","mediatech.by","mediatech.dev","hra.health","medusajs.app","miniserver.com","memset.net","messerli.app","atmeta.com","apps.fbsbx.com","*.cloud.metacentrum.cz","custom.metacentrum.cz","flt.cloud.muni.cz","usr.cloud.muni.cz","meteorapp.com","eu.meteorapp.com","co.pl","*.azurecontainer.io","azure-api.net","azure-mobile.net","azureedge.net","azurefd.net","azurestaticapps.net","1.azurestaticapps.net","2.azurestaticapps.net","3.azurestaticapps.net","4.azurestaticapps.net","5.azurestaticapps.net","6.azurestaticapps.net","7.azurestaticapps.net","centralus.azurestaticapps.net","eastasia.azurestaticapps.net","eastus2.azurestaticapps.net","westeurope.azurestaticapps.net","westus2.azurestaticapps.net","azurewebsites.net","cloudapp.net","trafficmanager.net","blob.core.windows.net","servicebus.windows.net","routingthecloud.com","sn.mynetname.net","routingthecloud.net","routingthecloud.org","csx.cc","mydbserver.com","webspaceconfig.de","mittwald.info","mittwaldserver.info","typo3server.info","project.space","modx.dev","bmoattachments.org","net.ru","org.ru","pp.ru","hostedpi.com","caracal.mythic-beasts.com","customer.mythic-beasts.com","fentiger.mythic-beasts.com","lynx.mythic-beasts.com","ocelot.mythic-beasts.com","oncilla.mythic-beasts.com","onza.mythic-beasts.com","sphinx.mythic-beasts.com","vs.mythic-beasts.com","x.mythic-beasts.com","yali.mythic-beasts.com","cust.retrosnub.co.uk","ui.nabu.casa","cloud.nospamproxy.com","netfy.app","netlify.app","4u.com","nfshost.com","ipfs.nftstorage.link","ngo.us","ngrok.app","ngrok-free.app","ngrok.dev","ngrok-free.dev","ngrok.io","ap.ngrok.io","au.ngrok.io","eu.ngrok.io","in.ngrok.io","jp.ngrok.io","sa.ngrok.io","us.ngrok.io","ngrok.pizza","ngrok.pro","torun.pl","nh-serv.co.uk","nimsite.uk","mmafan.biz","myftp.biz","no-ip.biz","no-ip.ca","fantasyleague.cc","gotdns.ch","3utilities.com","blogsyte.com","ciscofreak.com","damnserver.com","ddnsking.com","ditchyourip.com","dnsiskinky.com","dynns.com","geekgalaxy.com","health-carereform.com","homesecuritymac.com","homesecuritypc.com","myactivedirectory.com","mysecuritycamera.com","myvnc.com","net-freaks.com","onthewifi.com","point2this.com","quicksytes.com","securitytactics.com","servebeer.com","servecounterstrike.com","serveexchange.com","serveftp.com","servegame.com","servehalflife.com","servehttp.com","servehumour.com","serveirc.com","servemp3.com","servep2p.com","servepics.com","servequake.com","servesarcasm.com","stufftoread.com","unusualperson.com","workisboring.com","dvrcam.info","ilovecollege.info","no-ip.info","brasilia.me","ddns.me","dnsfor.me","hopto.me","loginto.me","noip.me","webhop.me","bounceme.net","ddns.net","eating-organic.net","mydissent.net","myeffect.net","mymediapc.net","mypsx.net","mysecuritycamera.net","nhlfan.net","no-ip.net","pgafan.net","privatizehealthinsurance.net","redirectme.net","serveblog.net","serveminecraft.net","sytes.net","cable-modem.org","collegefan.org","couchpotatofries.org","hopto.org","mlbfan.org","myftp.org","mysecuritycamera.org","nflfan.org","no-ip.org","read-books.org","ufcfan.org","zapto.org","no-ip.co.uk","golffan.us","noip.us","pointto.us","stage.nodeart.io","*.developer.app","noop.app","*.northflank.app","*.build.run","*.code.run","*.database.run","*.migration.run","noticeable.news","notion.site","dnsking.ch","mypi.co","n4t.co","001www.com","myiphost.com","forumz.info","soundcast.me","tcp4.me","dnsup.net","hicam.net","now-dns.net","ownip.net","vpndns.net","dynserv.org","now-dns.org","x443.pw","now-dns.top","ntdll.top","freeddns.us","nsupdate.info","nerdpol.ovh","nyc.mn","prvcy.page","obl.ong","observablehq.cloud","static.observableusercontent.com","omg.lol","cloudycluster.net","omniwe.site","123webseite.at","123website.be","simplesite.com.br","123website.ch","simplesite.com","123webseite.de","123hjemmeside.dk","123miweb.es","123kotisivu.fi","123siteweb.fr","simplesite.gr","123homepage.it","123website.lu","123website.nl","123hjemmeside.no","service.one","simplesite.pl","123paginaweb.pt","123minsida.se","is-a-fullstack.dev","is-cool.dev","is-not-a.dev","localplayer.dev","is-local.org","opensocial.site","opencraft.hosting","16-b.it","32-b.it","64-b.it","orsites.com","operaunite.com","*.customer-oci.com","*.oci.customer-oci.com","*.ocp.customer-oci.com","*.ocs.customer-oci.com","*.oraclecloudapps.com","*.oraclegovcloudapps.com","*.oraclegovcloudapps.uk","tech.orange","can.re","authgear-staging.com","authgearapps.com","skygearapp.com","outsystemscloud.com","*.hosting.ovh.net","*.webpaas.ovh.net","ownprovider.com","own.pm","*.owo.codes","ox.rs","oy.lc","pgfog.com","pagexl.com","gotpantheon.com","pantheonsite.io","*.paywhirl.com","*.xmit.co","xmit.dev","madethis.site","srv.us","gh.srv.us","gl.srv.us","lk3.ru","mypep.link","perspecta.cloud","on-web.fr","*.upsun.app","upsunapp.com","ent.platform.sh","eu.platform.sh","us.platform.sh","*.platformsh.site","*.tst.site","platter-app.com","platter-app.dev","platterp.us","pley.games","onporter.run","co.bn","postman-echo.com","pstmn.io","mock.pstmn.io","httpbin.org","prequalifyme.today","xen.prgmr.com","priv.at","protonet.io","chirurgiens-dentistes-en-france.fr","byen.site","pubtls.org","pythonanywhere.com","eu.pythonanywhere.com","qa2.com","qcx.io","*.sys.qcx.io","myqnapcloud.cn","alpha-myqnapcloud.com","dev-myqnapcloud.com","mycloudnas.com","mynascloud.com","myqnapcloud.com","qoto.io","qualifioapp.com","ladesk.com","qbuser.com","*.quipelements.com","vapor.cloud","vaporcloud.io","rackmaze.com","rackmaze.net","cloudsite.builders","myradweb.net","servername.us","web.in","in.net","myrdbx.io","site.rb-hosting.io","*.on-rancher.cloud","*.on-k3s.io","*.on-rio.io","ravpage.co.il","readthedocs-hosted.com","readthedocs.io","rhcloud.com","instances.spawn.cc","onrender.com","app.render.com","replit.app","id.replit.app","firewalledreplit.co","id.firewalledreplit.co","repl.co","id.repl.co","replit.dev","archer.replit.dev","bones.replit.dev","canary.replit.dev","global.replit.dev","hacker.replit.dev","id.replit.dev","janeway.replit.dev","kim.replit.dev","kira.replit.dev","kirk.replit.dev","odo.replit.dev","paris.replit.dev","picard.replit.dev","pike.replit.dev","prerelease.replit.dev","reed.replit.dev","riker.replit.dev","sisko.replit.dev","spock.replit.dev","staging.replit.dev","sulu.replit.dev","tarpit.replit.dev","teams.replit.dev","tucker.replit.dev","wesley.replit.dev","worf.replit.dev","repl.run","resindevice.io","devices.resinstaging.io","hzc.io","adimo.co.uk","itcouldbewor.se","aus.basketball","nz.basketball","git-pages.rit.edu","rocky.page","rub.de","ruhr-uni-bochum.de","io.noc.ruhr-uni-bochum.de","биз.руÑ","ком.руÑ","крым.руÑ","мир.руÑ","мÑк.руÑ","орг.руÑ","Ñамара.руÑ","Ñочи.руÑ","Ñпб.руÑ","Ñ.руÑ","ras.ru","nyat.app","180r.com","dojin.com","sakuratan.com","sakuraweb.com","x0.com","2-d.jp","bona.jp","crap.jp","daynight.jp","eek.jp","flop.jp","halfmoon.jp","jeez.jp","matrix.jp","mimoza.jp","ivory.ne.jp","mail-box.ne.jp","mints.ne.jp","mokuren.ne.jp","opal.ne.jp","sakura.ne.jp","sumomo.ne.jp","topaz.ne.jp","netgamers.jp","nyanta.jp","o0o0.jp","rdy.jp","rgr.jp","rulez.jp","s3.isk01.sakurastorage.jp","s3.isk02.sakurastorage.jp","saloon.jp","sblo.jp","skr.jp","tank.jp","uh-oh.jp","undo.jp","rs.webaccel.jp","user.webaccel.jp","websozai.jp","xii.jp","squares.net","jpn.org","kirara.st","x0.to","from.tv","sakura.tv","*.builder.code.com","*.dev-builder.code.com","*.stg-builder.code.com","*.001.test.code-builder-stg.platform.salesforce.com","*.d.crm.dev","*.w.crm.dev","*.wa.crm.dev","*.wb.crm.dev","*.wc.crm.dev","*.wd.crm.dev","*.we.crm.dev","*.wf.crm.dev","sandcats.io","logoip.com","logoip.de","fr-par-1.baremetal.scw.cloud","fr-par-2.baremetal.scw.cloud","nl-ams-1.baremetal.scw.cloud","cockpit.fr-par.scw.cloud","fnc.fr-par.scw.cloud","functions.fnc.fr-par.scw.cloud","k8s.fr-par.scw.cloud","nodes.k8s.fr-par.scw.cloud","s3.fr-par.scw.cloud","s3-website.fr-par.scw.cloud","whm.fr-par.scw.cloud","priv.instances.scw.cloud","pub.instances.scw.cloud","k8s.scw.cloud","cockpit.nl-ams.scw.cloud","k8s.nl-ams.scw.cloud","nodes.k8s.nl-ams.scw.cloud","s3.nl-ams.scw.cloud","s3-website.nl-ams.scw.cloud","whm.nl-ams.scw.cloud","cockpit.pl-waw.scw.cloud","k8s.pl-waw.scw.cloud","nodes.k8s.pl-waw.scw.cloud","s3.pl-waw.scw.cloud","s3-website.pl-waw.scw.cloud","scalebook.scw.cloud","smartlabeling.scw.cloud","dedibox.fr","schokokeks.net","gov.scot","service.gov.scot","scrysec.com","client.scrypted.io","firewall-gateway.com","firewall-gateway.de","my-gateway.de","my-router.de","spdns.de","spdns.eu","firewall-gateway.net","my-firewall.org","myfirewall.org","spdns.org","seidat.net","sellfy.store","minisite.ms","senseering.net","servebolt.cloud","biz.ua","co.ua","pp.ua","as.sh.cn","sheezy.games","shiftedit.io","myshopblocks.com","myshopify.com","shopitsite.com","shopware.shop","shopware.store","mo-siemens.io","1kapp.com","appchizi.com","applinzi.com","sinaapp.com","vipsinaapp.com","siteleaf.net","small-web.org","aeroport.fr","avocat.fr","chambagri.fr","chirurgiens-dentistes.fr","experts-comptables.fr","medecin.fr","notaires.fr","pharmacien.fr","port.fr","veterinaire.fr","vp4.me","*.snowflake.app","*.privatelink.snowflake.app","streamlit.app","streamlitapp.com","try-snowplow.com","mafelo.net","playstation-cloud.com","srht.site","apps.lair.io","*.stolos.io","spacekit.io","ind.mom","customer.speedpartner.de","myspreadshop.at","myspreadshop.com.au","myspreadshop.be","myspreadshop.ca","myspreadshop.ch","myspreadshop.com","myspreadshop.de","myspreadshop.dk","myspreadshop.es","myspreadshop.fi","myspreadshop.fr","myspreadshop.ie","myspreadshop.it","myspreadshop.net","myspreadshop.nl","myspreadshop.no","myspreadshop.pl","myspreadshop.se","myspreadshop.co.uk","w-corp-staticblitz.com","w-credentialless-staticblitz.com","w-staticblitz.com","stackhero-network.com","runs.onstackit.cloud","stackit.gg","stackit.rocks","stackit.run","stackit.zone","musician.io","novecore.site","api.stdlib.com","feedback.ac","forms.ac","assessments.cx","calculators.cx","funnels.cx","paynow.cx","quizzes.cx","researched.cx","tests.cx","surveys.so","storebase.store","storipress.app","storj.farm","strapiapp.com","media.strapiapp.com","vps-host.net","atl.jelastic.vps-host.net","njs.jelastic.vps-host.net","ric.jelastic.vps-host.net","streak-link.com","streaklinks.com","streakusercontent.com","soc.srcf.net","user.srcf.net","utwente.io","temp-dns.com","supabase.co","supabase.in","supabase.net","syncloud.it","dscloud.biz","direct.quickconnect.cn","dsmynas.com","familyds.com","diskstation.me","dscloud.me","i234.me","myds.me","synology.me","dscloud.mobi","dsmynas.net","familyds.net","dsmynas.org","familyds.org","direct.quickconnect.to","vpnplus.to","mytabit.com","mytabit.co.il","tabitorder.co.il","taifun-dns.de","ts.net","*.c.ts.net","gda.pl","gdansk.pl","gdynia.pl","med.pl","sopot.pl","taveusercontent.com","p.tawk.email","p.tawkto.email","site.tb-hosting.com","edugit.io","s3.teckids.org","telebit.app","telebit.io","*.telebit.xyz","*.firenet.ch","*.svc.firenet.ch","reservd.com","thingdustdata.com","cust.dev.thingdust.io","reservd.dev.thingdust.io","cust.disrec.thingdust.io","reservd.disrec.thingdust.io","cust.prod.thingdust.io","cust.testing.thingdust.io","reservd.testing.thingdust.io","tickets.io","arvo.network","azimuth.network","tlon.network","torproject.net","pages.torproject.net","townnews-staging.com","12hp.at","2ix.at","4lima.at","lima-city.at","12hp.ch","2ix.ch","4lima.ch","lima-city.ch","trafficplex.cloud","de.cool","12hp.de","2ix.de","4lima.de","lima-city.de","1337.pictures","clan.rip","lima-city.rocks","webspace.rocks","lima.zone","*.transurl.be","*.transurl.eu","site.transip.me","*.transurl.nl","tuxfamily.org","dd-dns.de","dray-dns.de","draydns.de","dyn-vpn.de","dynvpn.de","mein-vigor.de","my-vigor.de","my-wan.de","syno-ds.de","synology-diskstation.de","synology-ds.de","diskstation.eu","diskstation.org","typedream.app","pro.typeform.com","*.uberspace.de","uber.space","hk.com","inc.hk","ltd.hk","hk.org","it.com","unison-services.cloud","virtual-user.de","virtualuser.de","name.pm","sch.tf","biz.wf","sch.wf","org.yt","rs.ba","bielsko.pl","upli.io","urown.cloud","dnsupdate.info","us.org","v.ua","express.val.run","web.val.run","vercel.app","v0.build","vercel.dev","vusercontent.net","now.sh","2038.io","router.management","v-info.info","voorloper.cloud","*.vultrobjects.com","wafflecell.com","webflow.io","webflowtest.io","*.webhare.dev","bookonline.app","hotelwithflight.com","reserve-online.com","reserve-online.net","cprapid.com","pleskns.com","wp2.host","pdns.page","plesk.page","wpsquared.site","*.wadl.top","remotewd.com","box.ca","pages.wiardweb.com","toolforge.org","wmcloud.org","wmflabs.org","wdh.app","panel.gg","daemon.panel.gg","wixsite.com","wixstudio.com","editorx.io","wixstudio.io","wix.run","messwithdns.com","woltlab-demo.com","myforum.community","community-pro.de","diskussionsbereich.de","community-pro.net","meinforum.net","affinitylottery.org.uk","raffleentry.org.uk","weeklylottery.org.uk","wpenginepowered.com","js.wpenginepowered.com","half.host","xnbay.com","u2.xnbay.com","u2-local.xnbay.com","cistron.nl","demon.nl","xs4all.space","yandexcloud.net","storage.yandexcloud.net","website.yandexcloud.net","official.academy","yolasite.com","yombo.me","ynh.fr","nohost.me","noho.st","za.net","za.org","zap.cloud","zeabur.app","bss.design","basicserver.io","virtualserver.io","enterprisecloud.nu"],wme=kme.reduce((e,a)=>{const n=a.replace(/^(\*\.|\!)/,""),t=Vo.toASCII(n),i=a.charAt(0);if(e.has(t))throw new Error(`Multiple rules found for ${a} (${t})`);return e.set(t,{rule:a,suffix:n,punySuffix:t,wildcard:i==="*",exception:i==="!"}),e},new Map),Ame=e=>{const a=Vo.toASCII(e).split(".");for(let n=0;n<a.length;n++){const t=a.slice(n).join("."),i=wme.get(t);if(i)return i}return null},Sme={DOMAIN_TOO_SHORT:"Domain name too short.",DOMAIN_TOO_LONG:"Domain name too long. It should be no more than 255 chars.",LABEL_STARTS_WITH_DASH:"Domain name label can not start with a dash.",LABEL_ENDS_WITH_DASH:"Domain name label can not end with a dash.",LABEL_TOO_LONG:"Domain name label should be at most 63 chars long.",LABEL_TOO_SHORT:"Domain name label should be at least 1 character long.",LABEL_INVALID_CHARS:"Domain name label can only contain alphanumeric characters or dashes."},Cme=e=>{const a=Vo.toASCII(e);if(a.length<1)return"DOMAIN_TOO_SHORT";if(a.length>255)return"DOMAIN_TOO_LONG";const n=a.split(".");let t;for(let i=0;i<n.length;++i){if(t=n[i],!t.length)return"LABEL_TOO_SHORT";if(t.length>63)return"LABEL_TOO_LONG";if(t.charAt(0)==="-")return"LABEL_STARTS_WITH_DASH";if(t.charAt(t.length-1)==="-")return"LABEL_ENDS_WITH_DASH";if(!/^[a-z0-9\-_]+$/.test(t))return"LABEL_INVALID_CHARS"}},jC=e=>{if(typeof e!="string")throw new TypeError("Domain name must be a string.");let a=e.slice(0).toLowerCase();a.charAt(a.length-1)==="."&&(a=a.slice(0,a.length-1));const n=Cme(a);if(n)return{input:e,error:{message:Sme[n],code:n}};const t={input:e,tld:null,sld:null,domain:null,subdomain:null,listed:!1},i=a.split(".");if(i[i.length-1]==="local")return t;const r=()=>(/xn--/.test(a)&&(t.domain&&(t.domain=Vo.toASCII(t.domain)),t.subdomain&&(t.subdomain=Vo.toASCII(t.subdomain))),t),o=Ame(a);if(!o)return i.length<2?t:(t.tld=i.pop(),t.sld=i.pop(),t.domain=[t.sld,t.tld].join("."),i.length&&(t.subdomain=i.pop()),r());t.listed=!0;const s=o.suffix.split("."),l=i.slice(0,i.length-s.length);return o.exception&&l.push(s.shift()),t.tld=s.join("."),!l.length||(o.wildcard&&(s.unshift(l.pop()),t.tld=s.join(".")),!l.length)||(t.sld=l.pop(),t.domain=[t.sld,t.tld].join("."),l.length&&(t.subdomain=l.join("."))),r()},Dme=e=>{const a=jC(e);return!!(a.domain&&a.listed)},gr=2147483647,Ka=36,xh=1,$o=26,Tme=38,Eme=700,OC=72,BC=128,UC="-",Pme=/^xn--/,_me=/[^\0-\x7F]/,xme=/[\x2E\u3002\uFF0E\uFF61]/g,Ime={overflow:"Overflow: input needs wider integers to process","not-basic":"Illegal input >= 0x80 (not a basic code point)","invalid-input":"Invalid input"},Iu=Ka-xh,Za=Math.floor,Ru=String.fromCharCode;function $n(e){throw new RangeError(Ime[e])}function Rme(e,a){const n=[];let t=e.length;for(;t--;)n[t]=a(e[t]);return n}function qC(e,a){const n=e.split("@");let t="";n.length>1&&(t=n[0]+"@",e=n[1]),e=e.replace(xme,".");const i=e.split("."),r=Rme(i,a).join(".");return t+r}function zme(e){const a=[];let n=0;const t=e.length;for(;n<t;){const i=e.charCodeAt(n++);if(i>=55296&&i<=56319&&n<t){const r=e.charCodeAt(n++);(r&64512)==56320?a.push(((i&1023)<<10)+(r&1023)+65536):(a.push(i),n--)}else a.push(i)}return a}const Mme=function(e){return e>=48&&e<58?26+(e-48):e>=65&&e<91?e-65:e>=97&&e<123?e-97:Ka},ey=function(e,a){return e+22+75*(e<26)-((a!=0)<<5)},VC=function(e,a,n){let t=0;for(e=n?Za(e/Eme):e>>1,e+=Za(e/a);e>Iu*$o>>1;t+=Ka)e=Za(e/Iu);return Za(t+(Iu+1)*e/(e+Tme))},Nme=function(e){const a=[],n=e.length;let t=0,i=BC,r=OC,o=e.lastIndexOf(UC);o<0&&(o=0);for(let s=0;s<o;++s)e.charCodeAt(s)>=128&&$n("not-basic"),a.push(e.charCodeAt(s));for(let s=o>0?o+1:0;s<n;){const l=t;for(let p=1,u=Ka;;u+=Ka){s>=n&&$n("invalid-input");const g=Mme(e.charCodeAt(s++));g>=Ka&&$n("invalid-input"),g>Za((gr-t)/p)&&$n("overflow"),t+=g*p;const b=u<=r?xh:u>=r+$o?$o:u-r;if(g<b)break;const v=Ka-b;p>Za(gr/v)&&$n("overflow"),p*=v}const d=a.length+1;r=VC(t-l,d,l==0),Za(t/d)>gr-i&&$n("overflow"),i+=Za(t/d),t%=d,a.splice(t++,0,i)}return String.fromCodePoint(...a)},Fme=function(e){const a=[];e=zme(e);const n=e.length;let t=BC,i=0,r=OC;for(const l of e)l<128&&a.push(Ru(l));const o=a.length;let s=o;for(o&&a.push(UC);s<n;){let l=gr;for(const p of e)p>=t&&p<l&&(l=p);const d=s+1;l-t>Za((gr-i)/d)&&$n("overflow"),i+=(l-t)*d,t=l;for(const p of e)if(p<t&&++i>gr&&$n("overflow"),p===t){let u=i;for(let g=Ka;;g+=Ka){const b=g<=r?xh:g>=r+$o?$o:g-r;if(u<b)break;const v=u-b,A=Ka-b;a.push(Ru(ey(b+v%A,0))),u=Za(v/A)}a.push(Ru(ey(u,0))),r=VC(i,d,s===o),i=0,++s}++i,++t}return a.join("")},$C=function(e){return qC(e,function(a){return Pme.test(a)?Nme(a.slice(4).toLowerCase()):a})},ty=function(e){return qC(e,function(a){return _me.test(a)?"xn--"+Fme(a):a})};var zu,ay;function Lme(){return ay||(ay=1,zu={aa:{name:"Afar",nativeName:"Afaraf"},ab:{name:"Abkhaz",nativeName:"аҧÑуа бызшәа"},ae:{name:"Avestan",nativeName:"avesta"},af:{name:"Afrikaans",nativeName:"Afrikaans"},ak:{name:"Akan",nativeName:"Akan"},am:{name:"Amharic",nativeName:"አማáˆáŠ›"},an:{name:"Aragonese",nativeName:"aragonés"},ar:{name:"Arabic",nativeName:"العربية"},as:{name:"Assamese",nativeName:"অসমীয়া"},av:{name:"Avaric",nativeName:"авар мацӀ"},ay:{name:"Aymara",nativeName:"aymar aru"},az:{name:"Azerbaijani",nativeName:"azÉ™rbaycan dili"},ba:{name:"Bashkir",nativeName:"башҡорт теле"},be:{name:"Belarusian",nativeName:"беларуÑÐºÐ°Ñ Ð¼Ð¾Ð²Ð°"},bg:{name:"Bulgarian",nativeName:"българÑки език"},bi:{name:"Bislama",nativeName:"Bislama"},bm:{name:"Bambara",nativeName:"bamanankan"},bn:{name:"Bengali",nativeName:"বাংলা"},bo:{name:"Tibetan",nativeName:"བོད་ཡིག"},br:{name:"Breton",nativeName:"brezhoneg"},bs:{name:"Bosnian",nativeName:"bosanski jezik"},ca:{name:"Catalan",nativeName:"Català "},ce:{name:"Chechen",nativeName:"нохчийн мотт"},ch:{name:"Chamorro",nativeName:"Chamoru"},co:{name:"Corsican",nativeName:"corsu"},cr:{name:"Cree",nativeName:"á“€á¦áƒá”ááá£"},cs:{name:"Czech",nativeName:"ÄŒeÅ¡tina"},cu:{name:"Old Church Slavonic",nativeName:"ѩзыкъ ÑловѣньÑкъ"},cv:{name:"Chuvash",nativeName:"чӑваш чӗлхи"},cy:{name:"Welsh",nativeName:"Cymraeg"},da:{name:"Danish",nativeName:"Dansk"},de:{name:"German",nativeName:"Deutsch"},dv:{name:"Divehi",nativeName:"Þ‹Þ¨ÞˆÞ¬Þ€Þ¨"},dz:{name:"Dzongkha",nativeName:"རྫོང་à½"},ee:{name:"Ewe",nativeName:"EÊ‹egbe"},el:{name:"Greek",nativeName:"Ελληνικά"},en:{name:"English",nativeName:"English"},eo:{name:"Esperanto",nativeName:"Esperanto"},es:{name:"Spanish",nativeName:"Español"},et:{name:"Estonian",nativeName:"eesti"},eu:{name:"Basque",nativeName:"euskara"},fa:{name:"Persian",nativeName:"ÙØ§Ø±Ø³ÛŒ"},ff:{name:"Fula",nativeName:"Fulfulde"},fi:{name:"Finnish",nativeName:"suomi"},fj:{name:"Fijian",nativeName:"vosa Vakaviti"},fo:{name:"Faroese",nativeName:"Føroyskt"},fr:{name:"French",nativeName:"Français"},fy:{name:"Western Frisian",nativeName:"Frysk"},ga:{name:"Irish",nativeName:"Gaeilge"},gd:{name:"Scottish Gaelic",nativeName:"Gà idhlig"},gl:{name:"Galician",nativeName:"galego"},gn:{name:"GuaranÃ",nativeName:"Avañe'ẽ"},gu:{name:"Gujarati",nativeName:"ગà«àªœàª°àª¾àª¤à«€"},gv:{name:"Manx",nativeName:"Gaelg"},ha:{name:"Hausa",nativeName:"Ù‡ÙŽÙˆÙØ³ÙŽ"},he:{name:"Hebrew",nativeName:"עברית"},hi:{name:"Hindi",nativeName:"हिनà¥à¤¦à¥€"},ho:{name:"Hiri Motu",nativeName:"Hiri Motu"},hr:{name:"Croatian",nativeName:"Hrvatski"},ht:{name:"Haitian",nativeName:"Kreyòl ayisyen"},hu:{name:"Hungarian",nativeName:"magyar"},hy:{name:"Armenian",nativeName:"Õ€Õ¡ÕµÕ¥Ö€Õ¥Õ¶"},hz:{name:"Herero",nativeName:"Otjiherero"},ia:{name:"Interlingua",nativeName:"Interlingua"},id:{name:"Indonesian",nativeName:"Bahasa Indonesia"},ie:{name:"Interlingue",nativeName:"Interlingue"},ig:{name:"Igbo",nativeName:"Asụsụ Igbo"},ii:{name:"Nuosu",nativeName:"ê†ˆêŒ ê’¿ Nuosuhxop"},ik:{name:"Inupiaq",nativeName:"Iñupiaq"},io:{name:"Ido",nativeName:"Ido"},is:{name:"Icelandic",nativeName:"Ãslenska"},it:{name:"Italian",nativeName:"Italiano"},iu:{name:"Inuktitut",nativeName:"áƒá“„ᒃᑎá‘ᑦ"},ja:{name:"Japanese",nativeName:"日本語"},jv:{name:"Javanese",nativeName:"basa Jawa"},ka:{name:"Georgian",nativeName:"ქáƒáƒ თული"},kg:{name:"Kongo",nativeName:"Kikongo"},ki:{name:"Kikuyu",nativeName:"GÄ©kÅ©yÅ©"},kj:{name:"Kwanyama",nativeName:"Kuanyama"},kk:{name:"Kazakh",nativeName:"қазақ тілі"},kl:{name:"Kalaallisut",nativeName:"kalaallisut"},km:{name:"Khmer",nativeName:"ážáŸáž˜ážšáž—ាសា"},kn:{name:"Kannada",nativeName:"ಕನà³à²¨à²¡"},ko:{name:"Korean",nativeName:"한êµì–´"},kr:{name:"Kanuri",nativeName:"Kanuri"},ks:{name:"Kashmiri",nativeName:"कशà¥à¤®à¥€à¤°à¥€"},ku:{name:"Kurdish",nativeName:"Kurdî"},kv:{name:"Komi",nativeName:"коми кыв"},kw:{name:"Cornish",nativeName:"Kernewek"},ky:{name:"Kyrgyz",nativeName:"Кыргызча"},la:{name:"Latin",nativeName:"latine"},lb:{name:"Luxembourgish",nativeName:"Lëtzebuergesch"},lg:{name:"Ganda",nativeName:"Luganda"},li:{name:"Limburgish",nativeName:"Limburgs"},ln:{name:"Lingala",nativeName:"Lingála"},lo:{name:"Lao",nativeName:"ພາສາລາວ"},lt:{name:"Lithuanian",nativeName:"lietuvių kalba"},lu:{name:"Luba-Katanga",nativeName:"Kiluba"},lv:{name:"Latvian",nativeName:"latvieÅ¡u valoda"},mg:{name:"Malagasy",nativeName:"fiteny malagasy"},mh:{name:"Marshallese",nativeName:"Kajin M̧ajeļ"},mi:{name:"MÄori",nativeName:"te reo MÄori"},mk:{name:"Macedonian",nativeName:"македонÑки јазик"},ml:{name:"Malayalam",nativeName:"മലയാളം"},mn:{name:"Mongolian",nativeName:"Монгол Ñ…Ñл"},mr:{name:"Marathi",nativeName:"मराठी"},ms:{name:"Malay",nativeName:"Bahasa Melayu"},mt:{name:"Maltese",nativeName:"Malti"},my:{name:"Burmese",nativeName:"ဗမာစာ"},na:{name:"Nauru",nativeName:"Dorerin Naoero"},nb:{name:"Norwegian BokmÃ¥l",nativeName:"Norsk bokmÃ¥l"},nd:{name:"Northern Ndebele",nativeName:"isiNdebele"},ne:{name:"Nepali",nativeName:"नेपाली"},ng:{name:"Ndonga",nativeName:"Owambo"},nl:{name:"Dutch",nativeName:"Nederlands"},nn:{name:"Norwegian Nynorsk",nativeName:"Norsk nynorsk"},no:{name:"Norwegian",nativeName:"Norsk"},nr:{name:"Southern Ndebele",nativeName:"isiNdebele"},nv:{name:"Navajo",nativeName:"Diné bizaad"},ny:{name:"Chichewa",nativeName:"chiCheŵa"},oc:{name:"Occitan",nativeName:"occitan"},oj:{name:"Ojibwe",nativeName:"áŠá“‚ᔑᓈá¯á’§áŽá“"},om:{name:"Oromo",nativeName:"Afaan Oromoo"},or:{name:"Oriya",nativeName:"ଓଡ଼ିଆ"},os:{name:"Ossetian",nativeName:"ирон æвзаг"},pa:{name:"Panjabi",nativeName:"ਪੰਜਾਬੀ"},pi:{name:"PÄli",nativeName:"पाऴि"},pl:{name:"Polish",nativeName:"Polski"},ps:{name:"Pashto",nativeName:"پښتو"},pt:{name:"Portuguese",nativeName:"Português"},qu:{name:"Quechua",nativeName:"Runa Simi"},rm:{name:"Romansh",nativeName:"rumantsch grischun"},rn:{name:"Kirundi",nativeName:"Ikirundi"},ro:{name:"Romanian",nativeName:"Română"},ru:{name:"Russian",nativeName:"РуÑÑкий"},rw:{name:"Kinyarwanda",nativeName:"Ikinyarwanda"},sa:{name:"Sanskrit",nativeName:"संसà¥à¤•ृतमà¥"},sc:{name:"Sardinian",nativeName:"sardu"},sd:{name:"Sindhi",nativeName:"सिनà¥à¤§à¥€"},se:{name:"Northern Sami",nativeName:"Davvisámegiella"},sg:{name:"Sango",nativeName:"yângâ tî sängö"},si:{name:"Sinhala",nativeName:"සිංහල"},sk:{name:"Slovak",nativeName:"SlovenÄina"},sl:{name:"Slovenian",nativeName:"slovenÅ¡Äina"},sm:{name:"Samoan",nativeName:"gagana fa'a Samoa"},sn:{name:"Shona",nativeName:"chiShona"},so:{name:"Somali",nativeName:"Soomaaliga"},sq:{name:"Albanian",nativeName:"Shqip"},sr:{name:"Serbian",nativeName:"ÑрпÑки језик"},ss:{name:"Swati",nativeName:"SiSwati"},st:{name:"Southern Sotho",nativeName:"Sesotho"},su:{name:"Sundanese",nativeName:"Basa Sunda"},sv:{name:"Swedish",nativeName:"Svenska"},sw:{name:"Swahili",nativeName:"Kiswahili"},ta:{name:"Tamil",nativeName:"தமிழà¯"},te:{name:"Telugu",nativeName:"తెలà±à°—à±"},tg:{name:"Tajik",nativeName:"тоҷикӣ"},th:{name:"Thai",nativeName:"ไทย"},ti:{name:"Tigrinya",nativeName:"ትáŒáˆáŠ›"},tk:{name:"Turkmen",nativeName:"Türkmençe"},tl:{name:"Tagalog",nativeName:"Wikang Tagalog"},tn:{name:"Tswana",nativeName:"Setswana"},to:{name:"Tonga",nativeName:"faka Tonga"},tr:{name:"Turkish",nativeName:"Türkçe"},ts:{name:"Tsonga",nativeName:"Xitsonga"},tt:{name:"Tatar",nativeName:"татар теле"},tw:{name:"Twi",nativeName:"Twi"},ty:{name:"Tahitian",nativeName:"Reo Tahiti"},ug:{name:"Uyghur",nativeName:"ئۇيغۇرچە‎"},uk:{name:"Ukrainian",nativeName:"УкраїнÑька"},ur:{name:"Urdu",nativeName:"اردو"},uz:{name:"Uzbek",nativeName:"Ўзбек"},ve:{name:"Venda",nativeName:"Tshivenḓa"},vi:{name:"Vietnamese",nativeName:"Tiếng Việt"},vo:{name:"Volapük",nativeName:"Volapük"},wa:{name:"Walloon",nativeName:"walon"},wo:{name:"Wolof",nativeName:"Wollof"},xh:{name:"Xhosa",nativeName:"isiXhosa"},yi:{name:"Yiddish",nativeName:"ייִדיש"},yo:{name:"Yoruba",nativeName:"Yorùbá"},za:{name:"Zhuang",nativeName:"Saɯ cueŋƅ"},zh:{name:"Chinese",nativeName:"䏿–‡"},zu:{name:"Zulu",nativeName:"isiZulu"}}),zu}var Mu,ny;function jme(){if(ny)return Mu;ny=1;const e=Lme(),a={},n={},t=[],i=[],r=[];for(const o in e){const{name:s,nativeName:l}=e[o];a[o]=n[s.toLowerCase()]=n[l.toLowerCase()]={code:o,name:s,nativeName:l},t.push(o),i.push(s),r.push(l)}return Mu=class Rl{static getLanguages(s=[]){return s.map(l=>Rl.validate(l)?Object.assign({},a[l]):{code:l,name:"",nativeName:""})}static getName(s){return Rl.validate(s)?e[s].name:""}static getAllNames(){return i.slice()}static getNativeName(s){return Rl.validate(s)?e[s].nativeName:""}static getAllNativeNames(){return r.slice()}static getCode(s){return s=s.toLowerCase(),n.hasOwnProperty(s)?n[s].code:""}static getAllCodes(){return t.slice()}static validate(s){return e.hasOwnProperty(s)}},Mu}var Ome=jme();const Bme=Go(Ome),Ume=["cu","kp","sy","xn--ogbpf8fl","سورية","ir","xn--mgba3a4f16a","ایران"],Tm=["ישר×ל","co.az","la.gov","hz.de","as","in.gov","ll.land","co.pt","ag.org"],qme=e=>e.indexOf("..")>=0,Vme=e=>Ume.indexOf(e.toLowerCase())>=0,$me=e=>!e||$C(e).length<1,Wme=e=>{if(!e)return{error:"DOMAIN_TOO_SHORT",input:e};if(e.input)return e;const a=e;if(qme(a))return{error:"TWO_CONSECUTIVE_DOTS",input:a};const n=WC(a);let t=jC(GC(a));if("error"in t)return{error:Gme[t.error.code],input:a};if(t.sld==null)return{error:"INVALID_DOMAIN_NAME",input:a};t=Kme(t);const{domain:i,tld:r,sld:o,subdomain:s,input:l}=t,d=r&&Vme(r),p=$me(o);return{input:l,main:i,tld:r,sld:o,subdomain:s||null,error:(()=>{switch(!0){case d:return"OFAC_TLD";case p:return"DOMAIN_TOO_SHORT";default:return null}})(),isValidTld:Yme(t),formattedInput:$C(n),asciiDomain:ty(i),fullAsciiDomain:ty(n)}},Gme={DOMAIN_TOO_SHORT:"DOMAIN_TOO_SHORT",DOMAIN_TOO_LONG:"DOMAIN_TOO_LONG",LABEL_STARTS_WITH_DASH:"INVALID_DASH_USAGE",LABEL_ENDS_WITH_DASH:"INVALID_DASH_USAGE",LABEL_TOO_LONG:"DOMAIN_TOO_LONG",LABEL_TOO_SHORT:"DOMAIN_TOO_SHORT",LABEL_INVALID_CHARS:"LABEL_INVALID_CHARS"},Hme=e=>{const a=e.split(".");return a.length===3?`${a[1]}.${a[2]}`:a[1]},WC=e=>{let a=e.trim();a.endsWith(".")&&(a=a.slice(0,-1));const n=Hme(a);return!n||n==="."?`${a}.com`.replace(/\.{2,}/,"."):a.startsWith("www.")&&a.split(".").length<=2?`${a}.com`:a},GC=e=>{const a=e.trimEnd().toLowerCase().replace(/^(www\.)/,"");return WC(a)},Yme=e=>{if(!e.tld)return!1;const a=Dme(e.input);return!a&&Tm.includes(e.tld)?!0:a};Bme.getAllCodes();const Kme=e=>{var r;const a=((r=GC(e.input))==null?void 0:r.split("."))??[];if(a.length<2)return e;let n=a.pop();n&&!Tm.includes(n)&&(n=`${a.pop()}.${n}`);const t=a.pop()??null,i=a.join(".");return n&&Tm.includes(n)&&t?{...e,tld:n,sld:t,domain:`${t}.${n}`,subdomain:i}:e};function HC(e){var t;const n=`; ${document.cookie}`.split(`; ${e}=`);return n.length===2&&((t=n.pop())==null?void 0:t.split(";").shift())||null}function Zme(e,a,n=30){if(document==null)return a();const t=document.cookie.split("; ").find(o=>o.startsWith(e+"="));if(t)return t.split("=")[1];const i=a(),r=new Date(Date.now()+n*60*1e3).toUTCString();return document.cookie=[`${e}=${i}`,"path=/",`expires=${r}`,"SameSite=Lax"].join("; "),i}function Jme(){return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,function(e){var a=Math.random()*16|0,n=e==="x"?a:a&3|8;return n.toString(16)})}function Qme(){return Zme("_base44_sessionId",()=>Jme(),30)}const YC=()=>{const e=window.location.hostname,a=Wme(e);return a.error||!a.main?e:"."+a.main},Xme=(e,a,n=90)=>{const t=YC(),i=new Date;i.setTime(i.getTime()+n*24*60*60*1e3),document.cookie=`${e}=${a}; expires=${i.toUTCString()}; domain=${t}; path=/; SameSite=None; Secure`},ege=e=>{const a=YC();document.cookie=`${e}=; expires=Thu, 01 Jan 1970 00:00:00 UTC; domain=${a}; path=/; SameSite=None; Secure`},KC="mixpanel_utm_params",ZC="mixpanel_utm_timestamp",tge=["utm_source","utm_medium","utm_campaign","utm_content","utm_term","utm_id","utm_campaign_id","utm_source_platform","utm_creative_format","utm_marketing_tactic"],age=["impact_click_id"],nge=[...tge,...age],She=()=>{try{const e=new URLSearchParams(window.location.search),a={};let n=!1;if(nge.forEach(t=>{const i=e.get(t);i&&(a[t]=i,n||(n=!0))}),n){const t=kd();return!t.params||Object.keys(t.params).length===0?(localStorage.setItem(KC,JSON.stringify(a)),localStorage.setItem(ZC,Date.now().toString()),a):t.params}return{}}catch{return{}}},kd=()=>{try{const e=localStorage.getItem(KC),a=localStorage.getItem(ZC);return{params:e?JSON.parse(e):{},timestamp:a?parseInt(a):null}}catch{return{params:{},timestamp:null}}},$a={feature_flags:[],tier:null,organization_id:null,user_role:null,platform:null},Wo=[],Nu=[];function ige(){return HC("_wixCIDX")||"no-cookie-found"}function iy(){for(;Wo.length>0;){const e=Wo.shift();e==null||e()}}function Che({onLoaded:e,platform:a}={}){if(a&&($a.platform=a),Ct.__loaded){$a.platform&&Ct.register({platform:$a.platform}),e==null||e(),iy();return}if(e&&Nu.push(e),Ct.__initializing)return;Ct.__initializing=!0,Ct.init("eff913a25a5a2642acc7794bb28dc621",{debug:!1,opt_out_tracking_by_default:!1,ignore_dnt:!0,loaded:()=>{Ct.__loaded=!0,Ct.__initializing=!1;const{params:t}=kd();for($a.platform&&Ct.register({platform:$a.platform}),Object.keys(t).length>0&&Ct.register(t);Nu.length>0;){const i=Nu.shift();i==null||i()}iy()}})}function ry(e,a,n){const t=ige(),i=Qme(),r={...a,feature_flags:a.feature_flags||$a.feature_flags,tier:a.tier||$a.tier,client_id:t,session_id:i,organization_id:a.organization_id||$a.organization_id,user_role:a.user_role||$a.user_role,platform:a.platform||$a.platform};n!=null&&n.transport?Ct.track(e,r,{transport:n.transport}):Ct.track(e,r)}const _a=(e,a={},n)=>{Ct.__loaded?ry(e,a,n):Wo.push(()=>ry(e,a,n))},Dhe=e=>{Ct.__loaded?Ct.identify(e):Wo.push(()=>Ct.identify(e))},The=(e,a)=>{Ct.__loaded?(Ct.identify(e),Ct.people.set(a)):Wo.push(()=>{Ct.identify(e),Ct.people.set(a)})},rge={signup:{src:189,evid:1204},login:{src:189,evid:1200}},JC=(e,a="signup",n={})=>{try{if(!e)return;const t=rge[a];if(!t)return;const i=HC("_wixCIDX")||"no-cookie-found",r=e||"no-user-id",o={dt:0,e:[{dt:0,f:{src:t.src,evid:t.evid}}],g:{uuid:r,client_id:i}};Object.keys(n).length>0&&(o.additional_data=n),fetch("https://frog.wix.com/base44",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(o),keepalive:!0}).then(s=>{if(!s.ok)throw new Error(`Frog service responded with status: ${s.status}`);return s.text()}).then(s=>{}).catch(s=>{})}catch{}},Ehe=e=>{const a={event_type:"signup",timestamp:new Date().toISOString()};JC(e,"signup",a)},oge=e=>{const a={event_type:"login",timestamp:new Date().toISOString()};JC(e,"login",a)},sge=(e,a)=>{const{params:n}=kd();_a("User Login",{auth_method:e,...n}),oge(a??null)},lge=()=>{const{params:e}=kd();_a("Auth: Register - page viewed",{page_path:typeof window<"u"?window.location.pathname:"",...e})},cge=()=>{_a("Auth: Signup - signup clicked",{auth_method:"google"},{transport:"sendBeacon"})},dge=()=>{_a("Auth: Login - login with google clicked",{auth_method:"google"},{transport:"sendBeacon"})},uge=e=>{_a("Auth: Register - page left",{reason:e,page_path:typeof window<"u"?window.location.pathname:""},{transport:"sendBeacon"})},Phe=()=>({reportGoogleOneTapEvent:(e,a,n)=>{_a(`Google One Tap ${e}: ${a}`,{...n})},reportVerifyEmailClick:()=>{_a("Auth: Verify Email - verify email clicked")},reportResendVerifyEmailClick:()=>{_a("Auth: Verify Email - resend email clicked")},reportSignupOnClick:()=>{_a("Auth: Signup - signup clicked",{auth_method:"email"})},reportRegisterEmailInputFocus:()=>{_a("Auth: Register - email input focused")},reportRegisterPasswordInputFocus:()=>{_a("Auth: Register - password input focused")},reportRegisterPageView:lge,reportGoogleSignupButtonClick:cge,reportGoogleLoginButtonClick:dge,reportRegisterPageLeave:uge});function pge(e){try{const a=e.split(".")[1],n=JSON.parse(atob(a.replace(/-/g,"+").replace(/_/g,"/")));return n.sub??n.user_id??null}catch{return null}}class mge{constructor(){this.listeners=new Set,this._refreshPromise=null,this._jwtRefreshEnabled=!1;const a=new URLSearchParams(window.location.search),n=a.get("access_token");this.oauthRedirectAuthMethod=n?a.get("auth_method"):null,this.oauthRedirectUserId=n?pge(n):null,setTimeout(()=>{this.processSSOTokensFromURL(),this.trackLoginFromRedirect()},0)}trackLoginFromRedirect(){this.oauthRedirectAuthMethod&&(sge(this.oauthRedirectAuthMethod,this.oauthRedirectUserId),Qd("auth_method"),this.oauthRedirectAuthMethod=null,this.oauthRedirectUserId=null)}getToken(){return this.fetchToken(!1)||localStorage.getItem("token")||localStorage.getItem("base44_access_token")}fetchToken(a=!0){const n=new URLSearchParams(window.location.search),t=n.get("access_token")||localStorage.getItem("token")||localStorage.getItem("base44_access_token");return a&&n.has("access_token")&&(Qd("access_token"),Qd("auth_method")),t}setToken(a){a?(localStorage.setItem("token",a),localStorage.setItem("base44_access_token",a),hl("Authorization",`Bearer ${a}`)):(localStorage.removeItem("token"),localStorage.removeItem("base44_access_token"),fl("Authorization")),this.notifyListeners("token_changed",{token:a})}addListener(a){return this.listeners.add(a),()=>this.listeners.delete(a)}notifyListeners(a,n={}){this.listeners.forEach(t=>{try{t(a,n)}catch{}})}async refreshAccessToken(){if(this._refreshPromise)return this._refreshPromise;this._refreshPromise=this._doRefresh();try{return await this._refreshPromise}finally{this._refreshPromise=null}}async _doRefresh(){const a=await fetch(`${Vc()}/auth/refresh`,{method:"POST",credentials:"include"});if(!a.ok)throw new Error("Refresh failed");const n=await a.json();return this.setToken(n.access_token),n.access_token}setJwtRefreshEnabled(a){this._jwtRefreshEnabled=a}isJwtRefreshEnabled(){return this._jwtRefreshEnabled}processSSOTokensFromURL(){const a=new URLSearchParams(window.location.search);if(a.get("sso_access_token")){const t={sso_access_token:a.get("sso_access_token"),sso_token_type:a.get("sso_token_type"),sso_expires_at:a.get("sso_expires_at"),sso_scope:a.get("sso_scope"),sso_provider:a.get("sso_provider"),sso_id_token:a.get("sso_id_token")};this.setSSOTokens(t),["sso_access_token","sso_token_type","sso_expires_at","sso_scope","sso_provider","sso_id_token"].forEach(o=>{a.delete(o)});const r=window.location.pathname+(a.toString()?"?"+a.toString():"");window.history.replaceState({},"",r),this.notifyListeners("sso_tokens_updated",{tokens:this.getSSOTokens()})}}setSSOTokens(a){const n={access_token:a.sso_access_token,token_type:a.sso_token_type,expires_at:a.sso_expires_at,scope:a.sso_scope,provider:a.sso_provider,id_token:a.sso_id_token,stored_at:Date.now()},t=Object.fromEntries(Object.entries(n).filter(([i,r])=>r!=null));if(localStorage.setItem("sso_tokens",JSON.stringify(t)),t.access_token)try{hl("SSO_AUTHORIZATION",`${t.token_type} ${t.access_token}`)}catch{setTimeout(()=>{try{hl("SSO_AUTHORIZATION",`${t.token_type} ${t.access_token}`)}catch{}},100)}}getSSOTokens(){try{const a=localStorage.getItem("sso_tokens");if(!a)return null;const n=JSON.parse(a);return n.expires_at&&new Date(Number(n.expires_at)*1e3)<=new Date?(this.clearSSOTokens(),null):n}catch{return this.clearSSOTokens(),null}}clearSSOTokens(){localStorage.removeItem("sso_tokens");try{fl("SSO_AUTHORIZATION")}catch{setTimeout(()=>{try{fl("SSO_AUTHORIZATION")}catch{}},100)}this.notifyListeners("sso_tokens_cleared")}}const ti=new mge;function gge(e=!0){return ti.fetchToken(e)}function _he(e){ti.setToken(e)}function xhe(){ti.setToken(null)}class hge{constructor(){this._cursorCallbacks={},this._selectionCallbacks={},this._layoutCallbacks={},this._socket=null}_wireEvent(a,n,t,i){a.on(n,({room:r,data:o})=>{r&&t[r]&&Object.values(t[r]).forEach(s=>{var l;return(l=s[i])==null?void 0:l.call(s,o)})})}_addListener(a,n,t){a[n]||(a[n]={});const i=Xi();return a[n][i]=t,()=>{var r;(r=a[n])==null||delete r[i],a[n]&&Object.keys(a[n]).length===0&&delete a[n]}}init(a){this._socket=a,this._wireEvent(a,"canvas:cursor_batch_update",this._cursorCallbacks,"onCursorBatch"),this._wireEvent(a,"canvas:cursor_left",this._cursorCallbacks,"onCursorLeft"),this._wireEvent(a,"canvas:broadcast_selection_updated",this._selectionCallbacks,"onSelectionUpdate"),this._wireEvent(a,"canvas:selections_snapshot",this._selectionCallbacks,"onSelectionsSnapshot"),this._wireEvent(a,"canvas:notify_node_updated",this._layoutCallbacks,"onNodeUpdated"),this._wireEvent(a,"canvas:notify_node_update_ended",this._layoutCallbacks,"onNodeUpdateEnded"),this._wireEvent(a,"canvas:layout_snapshot",this._layoutCallbacks,"onLayoutSnapshot")}emitCursorBatch(a,n){var t;(t=this._socket)==null||t.emit("canvas:cursor_batch",a,n)}emitCursorLeave(a){var n;(n=this._socket)==null||n.emit("canvas:notify_cursor_leave",a)}emitClaimActive(a){var n;(n=this._socket)==null||n.emit("canvas:claim_active",a)}addCursorListener(a,n){return this._addListener(this._cursorCallbacks,a,n)}emitSelectionUpdate(a,n){var t;(t=this._socket)==null||t.emit("canvas:broadcast_selection_update",a,n)}requestSelections(a){var n;(n=this._socket)==null||n.emit("canvas:send_selections_snapshot",a)}addSelectionListener(a,n){return this._addListener(this._selectionCallbacks,a,n)}reclaimActive(){new Set([...Object.keys(this._cursorCallbacks),...Object.keys(this._selectionCallbacks),...Object.keys(this._layoutCallbacks)]).forEach(n=>this.emitClaimActive(n))}notifyReconnect(){const a=n=>{Object.values(n).forEach(t=>Object.values(t).forEach(i=>{var r;return(r=i.onReconnect)==null?void 0:r.call(i)}))};a(this._cursorCallbacks),a(this._selectionCallbacks),a(this._layoutCallbacks)}emitNodeUpdate(a,n){var t;(t=this._socket)==null||t.emit("canvas:notify_node_update",a,n)}emitNodeUpdateEnd(a,n){var t;(t=this._socket)==null||t.emit("canvas:notify_node_update_end",a,n)}emitFullLayoutPush(a,n){var t;(t=this._socket)==null||t.emit("canvas:seed_layout",a,n)}requestLayout(a){var n;(n=this._socket)==null||n.emit("canvas:send_layout_snapshot",a)}addLayoutListener(a,n){return this._addListener(this._layoutCallbacks,a,n)}}function Xi(){return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,function(e){var a=Math.random()*16|0,n=e==="x"?a:a&3|8;return n.toString(16)})}class fge{constructor(){this.tokenUnsubscribe=null,this._connectionPromise=null,this._connectionResolver=null,this._roomToListeners={},this._notificationListeners={},this._directiveCallbacks={},this._statusBannerListeners={},this._collaboratorCallbacks={},this._canvasSocketMethods=new hge,this._oauthResultCallbacks={},this._roomMetadata={},this.historicalSocketIds=[],this.initializeSocket(),this.setupTokenListener()}waitForConnection(){var a;return(a=this.socket)!=null&&a.connected?Promise.resolve():(this._connectionPromise||(this._connectionPromise=new Promise(n=>{this._connectionResolver=n})),this._connectionPromise)}setupTokenListener(){this.tokenUnsubscribe=ti.addListener(a=>{a==="token_changed"&&this.reconnectWithAuth()})}getMountPath(){throw new Error("Not implemented")}getSocketQuery(){const a=ti.getToken();return a?{token:a}:{}}initializeSocket(){const a={path:this.getMountPath(),transports:["websocket"]};a.query=this.getSocketQuery(),this.socket=wl(Lee(),a),this.socket.on("connect",()=>{this.historicalSocketIds=Wl.uniq(this.historicalSocketIds.concat([this.socket.id])),this.reconnectAllRooms(),this._connectionResolver&&(this._connectionResolver(),this._connectionResolver=null,this._connectionPromise=null)}),this.socket.on("disconnect",()=>{}),this.socket.on("update_model",n=>this.onUpdateModel(n)),this.socket.on("agent_done",n=>this.onAgentDone(n)),this.socket.on("new_notification",n=>this.onNewNotification(n)),this.socket.on("github_changes",n=>this.onGitHubChanges(n)),this.socket.on("mobile_build_update",n=>{this.onMobileBuildUpdate(n)}),this.socket.on("directive",n=>this.onDirective(n)),this.socket.on("status_banner_update",n=>this.onStatusBannerUpdate(n)),this.socket.on("task_update",n=>{this.onTaskUpdate(n)}),this.socket.on("image_ready",n=>{this.onImageReady(n)}),this.socket.on("collaborators:list",n=>{const{room:t,data:i,total_active_users:r}=n;t&&this._collaboratorCallbacks[t]&&Object.values(this._collaboratorCallbacks[t]).forEach(o=>{var s;return(s=o.onList)==null?void 0:s.call(o,i,r)})}),this._canvasSocketMethods.init(this.socket),this.socket.on("oauth_connection_result",n=>{this.onOAuthConnectionResult(n)}),this.socket.on("error",n=>{n.message==="Authentication required to join rooms"||n.message==="Access denied to this room"||n.message}),this.socket.on("*",n=>{})}reconnectWithAuth(){this.socket&&this.socket.disconnect(),this.initializeSocket()}getSocketId(){return this.socket.id}reconnectAllRooms(){Object.keys(this._roomToListeners).forEach(a=>{this.joinRoom(a,this._roomMetadata[a]),Object.values(this._roomToListeners[a]).forEach(({reconnectCallback:n})=>{n&&n()})}),Object.keys(this._notificationListeners).forEach(a=>{this.joinRoom(a),Object.values(this._notificationListeners[a]).forEach(({reconnectCallback:n})=>{n&&n()})}),Object.values(this._collaboratorCallbacks).forEach(a=>{Object.values(a).forEach(n=>{var t;return(t=n.onReconnect)==null?void 0:t.call(n)})}),this._canvasSocketMethods.reclaimActive(),this._canvasSocketMethods.notifyReconnect()}hasListeners(a){return Object.keys(this._roomToListeners[a]||{}).length>0}joinRoom(a,n){n?this.socket.emit("join",a,n):this.socket.emit("join",a)}leaveRoom(a){this.socket.emit("leave",a)}addListener(a,n,t){const i=typeof t=="function"?{reconnectCallback:t}:t||{};this.hasListeners(a)||(i.roomMetadata&&(this._roomMetadata[a]=i.roomMetadata),this.joinRoom(a,i.roomMetadata),this._roomToListeners[a]={});const r=Xi();this._roomToListeners[a][r]={callback:n,reconnectCallback:i.reconnectCallback,onGitHubChanges:i.onGitHubChanges,onTaskUpdate:i.onTaskUpdate,onImageReady:i.onImageReady,onMobileBuildUpdate:i.onMobileBuildUpdate,onAgentDone:i.onAgentDone};const o=this;return()=>{o.removeListener(r)}}getListeners(a){return this._roomToListeners[a]}removeListener(a){Object.keys(this._roomToListeners).forEach(n=>{this._roomToListeners[n][a]&&(delete this._roomToListeners[n][a],Object.keys(this._roomToListeners[n]).length===0&&(this.leaveRoom(n),delete this._roomToListeners[n],delete this._roomMetadata[n]))})}hasNotificationListeners(a){return Object.keys(this._notificationListeners[a]||{}).length>0}addNotificationListener(a,n,t){this.hasNotificationListeners(a)||(this.joinRoom(a),this._notificationListeners[a]={});const i=Xi();this._notificationListeners[a][i]={callback:n,reconnectCallback:t};const r=this;return()=>{r.removeNotificationListener(i)}}removeNotificationListener(a){Object.keys(this._notificationListeners).forEach(n=>{this._notificationListeners[n][a]&&(delete this._notificationListeners[n][a],Object.keys(this._notificationListeners[n]).length===0&&(this.leaveRoom(n),delete this._notificationListeners[n]))})}onUpdateModel(a){const n=a.room,t=JSON.parse(a.data);this._roomToListeners[n]&&Object.values(this._roomToListeners[n]).forEach(({callback:i})=>{i(t)})}onAgentDone(a){const n=a.room;this._roomToListeners[n]&&Object.values(this._roomToListeners[n]).forEach(({onAgentDone:t})=>{t&&t(a)})}onTaskUpdate(a){try{const n=a.room,t=JSON.parse(a.data);this._roomToListeners[n]&&Object.values(this._roomToListeners[n]).forEach(({onTaskUpdate:i})=>{if(i)try{i(t)}catch{}})}catch{}}onImageReady(a){try{const n=a.room,t=JSON.parse(a.data);this._roomToListeners[n]&&Object.values(this._roomToListeners[n]).forEach(({onImageReady:i})=>{if(i)try{i(t)}catch{}})}catch{}}onNewNotification(a){const n=a.room,t=JSON.parse(a.data);this._notificationListeners[n]&&Object.values(this._notificationListeners[n]).forEach(({callback:i})=>{i(t)})}onGitHubChanges(a){const n=a.room,t=a.data;this._roomToListeners[n]&&Object.values(this._roomToListeners[n]).forEach(({onGitHubChanges:i})=>{i&&i(t)})}onMobileBuildUpdate(a){const n=a.room,t=a.data;this._roomToListeners[n]&&Object.values(this._roomToListeners[n]).forEach(({onMobileBuildUpdate:i})=>{i&&i(t)})}onDirective(a){var r;const{room:n,type:t}=a,i=(r=this._directiveCallbacks[n])==null?void 0:r[t];i&&i()}setDirectiveCallback(a,n,t){this._directiveCallbacks[a]||(this._directiveCallbacks[a]={}),this._directiveCallbacks[a][n]=t}removeDirectiveCallback(a,n){this._directiveCallbacks[a]&&(delete this._directiveCallbacks[a][n],Object.keys(this._directiveCallbacks[a]).length===0&&delete this._directiveCallbacks[a])}removeAllDirectiveCallbacks(a){delete this._directiveCallbacks[a]}onStatusBannerUpdate(a){Object.values(this._statusBannerListeners).forEach(n=>{try{n(a)}catch{}})}addStatusBannerListener(a){const n=Xi();return this._statusBannerListeners[n]=a,()=>{delete this._statusBannerListeners[n]}}addCollaboratorListener(a,n){this._collaboratorCallbacks[a]||(this._collaboratorCallbacks[a]={});const t=Xi();return this._collaboratorCallbacks[a][t]=n,()=>{this._collaboratorCallbacks[a]&&(delete this._collaboratorCallbacks[a][t],Object.keys(this._collaboratorCallbacks[a]).length===0&&delete this._collaboratorCallbacks[a])}}requestCollaboratorsList(a){this.socket.emit("collaborators:request_list",a)}sendCollaboratorHeartbeat(a){this.socket.emit("collaborators:heartbeat",a)}sendCollaboratorAway(a){this.socket.emit("collaborators:away",a)}sendCollaboratorBack(a){this.socket.emit("collaborators:back",a)}get canvas(){return this._canvasSocketMethods}onOAuthConnectionResult(a){const n=(a==null?void 0:a.data)||a;Object.values(this._oauthResultCallbacks).forEach(t=>{try{const i=t(n);i&&typeof i.catch=="function"&&i.catch(r=>{})}catch{}})}addOAuthResultListener(a,n){const t=Xi();return this._oauthResultCallbacks[t]=a,()=>{delete this._oauthResultCallbacks[t]}}cleanup(){this.tokenUnsubscribe&&(this.tokenUnsubscribe(),this.tokenUnsubscribe=null),this.socket&&this.socket.disconnect()}}class vge extends fge{getMountPath(){return"/ws/socket.io/"}}const Em=new vge,bge=(e,a)=>{try{const n=new URL(a??"",window.location.origin);return new URL(e,n).origin===n.origin}catch{return!1}};let QC=[];function yge(e){QC.push(e)}let XC=()=>null;function Ihe(e){XC=e}let eD=()=>null;function Rhe(e){eD=e}function kge(e,a={},n=!1,t=!0,i=!0){const r=uy.create();let o;return e.startsWith("/")?o=Vc()+e:o=e,r.defaults.baseURL=o,t&&(r.defaults.headers.common["Content-Type"]="application/json",r.defaults.headers.common.Accept="application/json"),Object.keys(a).forEach(s=>{r.defaults.headers.common[s]=a[s]}),r.interceptors.request.use(s=>{var u,g,b;s.headers=Wl.merge(Wl.cloneDeep(Zae()),s.headers),bge(s.url,s.baseURL)||(bk("cross_origin_request_detected",{url:s.url,baseURL:s.baseURL}),delete s.headers.Authorization,delete s.headers.SSO_AUTHORIZATION,(u=s.headers.common)==null||delete u.Authorization,(g=s.headers.common)==null||delete g.SSO_AUTHORIZATION),s.headers["X-Socket-Id"]=Em.getSocketId(),s.headers["X-Origin-URL"]=window.location.href;const l=((b=window.location.pathname.match(/^\/workspace\/([^/]+)/))==null?void 0:b[1])||XC();l&&(s.headers["X-Active-Workspace-Id"]=l);const d=eD();d&&(s.headers["X-Active-App-Id"]=d);const p=s.headers["X-Request-ID"]||Kae();if(s.requestId=p,s.headers["X-Request-ID"]=p,n)try{window.parent.postMessage({type:"api-request-start",requestId:p,data:{url:e+s.url,method:s.method,body:s.data instanceof FormData?"[FormData object]":s.data}},"*")}catch{}return s},s=>Promise.reject(s)),r.interceptors.response.use(s=>{if(n)try{window.parent.postMessage({type:"api-request-end",requestId:s.config.requestId,data:{statusCode:s.status,response:s.data}},"*")}catch{}return t?s.data:s},async s=>{var d,p,u,g,b,v,A,f,S,C,T;if(s.requestId=((p=(d=s.response)==null?void 0:d.data)==null?void 0:p.request_id)||((u=s.config)==null?void 0:u.requestId),(g=s.config)!=null&&g.requestId&&window.parent.postMessage({type:"api-request-end",requestId:s.config.requestId,data:{statusCode:((b=s.response)==null?void 0:b.status)||0,response:((v=s.response)==null?void 0:v.data)||{error:s.message}}},"*"),((A=s.response)==null?void 0:A.status)===401&&!((f=s.config)!=null&&f._retry)&&(ti.isJwtRefreshEnabled()||((S=s.config)==null?void 0:S.url)==="/me")){s.config._retry=!0;try{return await ti.refreshAccessToken(),s.config.headers&&delete s.config.headers.Authorization,r(s.config)}catch{}}if(i)for(const I of QC)I(s);return(T=(C=s.response)==null?void 0:C.data)!=null&&T.traceback,Promise.reject(s)}),r}class wge{constructor(){this.axios=this.getClient()}getBaseURL(){return"/"}getClient(){return kge(this.getBaseURL())}}class Age extends wge{parseInstance(a){return a}list(a,n,t,i){let r={};return a&&(r.sort=a),n&&(r.limit=n),t&&(r.skip=t),i&&(r.fields=i),this.axios.get("",{params:r}).then(o=>o.map(this.parseInstance))}filterParams(a,n,t,i,r){let o={q:JSON.stringify(a)};return n&&(o.sort=n),t&&(o.limit=t),i&&(o.skip=i),r&&(o.fields=r),o}filter(a,n,t,i,r){let o=this.filterParams(a,n,t,i,r);return this.axios.get("",{params:o}).then(s=>s.map(this.parseInstance))}get(a){return this.axios.get(`/${a}`).then(this.parseInstance)}subscribe(a,n,t,i={}){const r=this;t(this.parseInstance(n));const o=this.getBaseURL()+"/"+a;return Em.addListener(o,s=>{n={...n,...s},t(this.parseInstance(n),Object.keys(s))},{reconnectCallback:async()=>{const s=await r.get(a);t(this.parseInstance(s),Object.keys(s))},onGitHubChanges:i.onGitHubChanges,onTaskUpdate:i.onTaskUpdate,onImageReady:i.onImageReady,roomMetadata:n!=null&&n.owner_id?{owner_id:n.owner_id}:void 0})}async fetchAndSubscribe(a,n,t={}){let i=await this.get(a);return this.subscribe(a,i,n,t)}schema(){return this.axios.get("/schema")}create(a){return this.axios.post("",a).then(this.parseInstance)}update(a,n){return this.axios.put(`/${a}`,n).then(this.parseInstance).then(t=>{const i=Em.getListeners(this.getBaseURL()+"/"+a)||[];return Object.values(i).forEach(r=>r.callback(t,Object.keys(n))),t})}delete(a){return this.axios.delete(`/${a}`)}deleteMany(a){return this.axios.delete("",{data:a})}}class Sge extends Age{getBaseURL(){return"/auth"}getCurrentUser(){return this.axios.get("/me")}regenerateApiKey(){return this.axios.post("/regenerate_api_key")}regenerateBackofficeApiKey(){return this.axios.post("/regenerate_backoffice_api_key")}updateUser(a,n){return this.axios.post(`/${a}/update-user`,{...n})}listUsers(a){return this.axios.get("/list-users",{params:a})}searchUsers(a,n=100){return this.axios.get("/search-users",{params:{search:a,limit:n}})}async checkDomainSSO(a){try{return(await uy.get(`${Vc()}/workspace/public/sso/check-email-or-domain`,{params:{email_or_domain:a}})).data}catch{return{has_sso:!1}}}login(a,n,t=null){const i={email:a,password:n};return t&&(i.turnstile_token=t),this.axios.post("/login",i)}register(a,n,t=null,i=null,r=null){const o={email:a,password:n};return t&&(o.turnstile_token=t),i&&(o.referral_code=i),r&&(o.marketing_client_id=r),this.axios.post("/register",o)}verifyOtp(a,n){return this.axios.post("/verify-otp",{email:a,otp_code:n})}resendOtp(a){return this.axios.post("/resend-otp",{email:a})}resetPasswordRequest(a,n=null){const t={email:a};return n&&(t.turnstile_token=n),this.axios.post("/reset-password-request",t)}resetPassword(a,n,t=null){const i={reset_token:a,new_password:n};return t&&(i.turnstile_token=t),this.axios.post("/reset-password",i)}changePassword(a,n,t){return this.axios.post("/change-password",{user_id:a,current_password:n,new_password:t})}logout(){return this.axios.post("/logout")}getUserFeatureFlags(a){return this.axios.get(`/${a}/feature-flags`)}}const Fu=new Sge,Cge=()=>{try{Xme("logged_in","true")}catch{}},Dge=()=>{try{ege("logged_in")}catch{}},Tge={APP_AGENT_SKILLS:"app-agent-skills",GITHUB_ALLOW_DISCONNECT:"github-two-ways-integration-allow-disconnect",SUPERBOWL_US_USER_EXPOSURE:"superbowl-us-user-exposure",SUPERBOWL_BANNER_ENABLED:"superbowl-banner-enabled",BUILDER_TASK_MANAGEMENT:"builder-task-management",USER_AGENT_TASK_MANAGEMENT:"user-agent-task-management",EXPERT_CHAT_BANNER:"expert-chat-banner",FIGMA_IMPORT:"figma-import-feature",NEW_INLINE_EDIT:"new-inline-edit",EDITOR_NEW_SPLIT_MODE:"editor-new-split-mode",CANVAS_VIEW:"canvas-view",NEW_INLINE_EDIT_FOR_DYNAMIC_DATA:"new-inline-edit-for-dynamic-data",SHOW_PUBLISH_SECURITY_WARNING:"show-publish-security-warning",RLS_SUGGESTIONS_IN_ENTITY:"rls-suggestions-in-entity",UPGRADE_BUTTON_IN_TOPBAR:"upgrade-button-in-topbar",CUSTOM_LOGIN_FLOW:"custom-login-flow",STUDENT_DISCOUNT:"student-discount",NEW_SITE_THEME_COLOR:"new-site-theme-color",PERSONAL_AGENT_IMESSAGE:"personal-agent-imessage",ENABLE_JWT_REFRESH:"enable-jwt-refresh",ADD_CONNECTORS_TO_HOMEPAGE:"add-connectors-to-homepage",VIRALITY:"virality",ASSET_MANAGER:"asset-manager",AUTOMATION_TRIGGER_CONDITIONS:"automation-trigger-conditions",AGENTS_BILLING:"agents-billing",DYNAMIC_RECOMMENDED_PLAN:"dynamic-recommended-plan",HIDE_PREVIEW:"hide-preview",REAL_FILE_PATHS:"real-file-paths",ATOMIC_APP_CREATION:"atomic-app-creation",BASE_DAY_ENABLED:"base-day-enabled",GIFT_CARD:"gift-card",UOU_CONNECTORS:"uou-connectors",IDEAS_EXPERIMENT:"ideas-experiment",COLLAPSE_OLD_ASSISTANT_MESSAGES:"collapse-old-assistant-messages",URL_CAPTURE_V2:"url-capture-v2",SUPERAGENT_DARK_MODE:"superagent-dark-mode",ENABLE_EDITOR_STATIC_PREVIEW:"enable-editor-static-preview",APP_FOLDERS:"app-folders",POST_PAYMENT_WORKSPACE_INVITE:"post-payment-workspace-invite",SIDEBAR_REFERRAL_CTA:"sidebar-referral-cta",CANCEL_MODAL_CTA_COPY:"cancel-modal-cta-copy",SIDEBAR_APPS_FAVS:"sidebar-apps-favs",AGENT_INTEGRATIONS_TABS:"agent-integrations-tabs",OUT_OF_CREDITS_REFERRAL_CTA:"out-of-credits-referral-cta",NEW_DESKTOP_LAYOUT:"new-desktop-layout",BORDER_TAG_PACKAGE_PICKER_V2:"border-tag-package-picker-v2",SIDEBAR_UPGRADE_PAID_USERS:"sidebar-upgrade-paid-users",OPUS_47_MODEL_PICKER:"opus-47-model-picker",LAUNCHPAD_ENABLED:"launchpad-enabled"},tD=M.createContext(),Ege=e=>{var a;return((a=e.response)==null?void 0:a.status)===401},zhe=({children:e})=>{const[a,n]=M.useState(null),[t,i]=M.useState(!1),[r,o]=M.useState(!0),s=()=>{Dge(),localStorage.removeItem("token"),localStorage.removeItem("base44_access_token"),fl("Authorization"),n(null),i(!1),o(!1)};M.useEffect(()=>{const g=gge(!0);g?(localStorage.setItem("token",g),hl("Authorization",`Bearer ${g}`),p()):o(!1),yge(b=>{Ege(b)&&s()})},[]);const l=g=>{n(b=>({...b,...g}))},d=(g=!0)=>{if(Fu.logout().catch(()=>{}),s(),g){const b=encodeURIComponent(window.location.href);window.location.href="/login?from_url="+b}},p=async()=>{var g,b;try{o(!0);const v=await Fu.getCurrentUser();return n(v),i(!0),o(!1),ti.setJwtRefreshEnabled(((g=v==null?void 0:v.feature_flags)==null?void 0:g.includes(Tge.ENABLE_JWT_REFRESH))??!1),Cge(),v}catch(v){o(!1);const A=(b=v.response)==null?void 0:b.status;(A===401||A===403)&&s()}},u=M.useCallback(async()=>{const g=await Fu.getCurrentUser();g&&n(g)},[]);return J.jsx(tD.Provider,{value:{user:a,isAuthenticated:t,logout:d,isLoadingAuth:r,updateUser:l,reloadUser:u},children:e})},Mhe=()=>M.useContext(tD),Pge=3,_ge=100,xge=5e3;class Ige extends M.Component{constructor(a){super(a),this.retryTimer=null,this.resetTimer=null,this.retryCount=0,this.state={hasError:!1,error:null,retriesExhausted:!1}}static getDerivedStateFromError(a){return{hasError:!0,error:a,retriesExhausted:!1}}componentDidCatch(a,n){if(this.resetTimer&&(clearTimeout(this.resetTimer),this.resetTimer=null),this.retryCount<Pge){this.retryCount++,this.retryTimer=setTimeout(()=>{this.setState({hasError:!1,error:null})},_ge);return}this.setState({retriesExhausted:!0}),vk(a,{source:Wc.REACT,component:this.props.componentName||"ErrorBoundary",context:{errorType:"react_render_error",componentStack:n.componentStack,retryCount:this.retryCount}})}componentDidUpdate(a,n){n.hasError&&!this.state.hasError&&(this.resetTimer=setTimeout(()=>{this.retryCount=0},xge))}componentWillUnmount(){this.retryTimer&&clearTimeout(this.retryTimer),this.resetTimer&&clearTimeout(this.resetTimer)}render(){return this.state.hasError?this.state.retriesExhausted?this.props.fallback?this.props.fallback:J.jsx("div",{className:"min-h-screen"}):null:this.props.children}}class Rge extends M.Component{constructor(){super(...arguments),this.state={hasError:!1}}static getDerivedStateFromError(){return{hasError:!0}}componentDidCatch(a,n){}render(){return this.state.hasError?J.jsx("div",{className:"min-h-screen bg-white"}):this.props.children}}const zge="chunk-reload:",Mge=3e4;function oy(e){return e instanceof Error?e.name==="ChunkLoadError"||e.message.includes("Loading chunk")||e.message.includes("Loading CSS chunk")||e.message.includes("Failed to fetch dynamically imported module"):!1}function Nge(e){const a=zge+e,n=Number(sessionStorage.getItem(a)||0);if(Date.now()-n>Mge)return sessionStorage.setItem(a,String(Date.now())),window.location.reload(),new Promise(()=>{});throw new Error(`Chunk "${e}" failed to load after reload`)}const Ih=(e,a)=>M.lazy(()=>e().catch(n=>new Promise(t=>setTimeout(t,500)).then(()=>e()).catch(t=>{if(oy(t)||oy(n))return Nge(a);throw t}))),Fge=Ih(()=>Pc(()=>import("./UserAppMain-C6qQslSa.js").then(e=>e.U),__vite__mapDeps([3,4,5,6,7,8,9,10,11,1,2,12,13,14,15])),"user-app-main"),Lge=Ih(()=>Pc(()=>import("./WebApp-VzhvG0oC.js").then(e=>e.W),__vite__mapDeps([16,1,2,4,5,6,7,8,9,17,18,19,20,21])),"web-app"),jge=Ih(()=>Pc(()=>import("./NativeMobileApp-D4mAmUkY.js"),__vite__mapDeps([22,4,5,6,7,8,9,18,19,1,2,20,23])),"native-mobile-app"),Oge=()=>{M.useEffect(()=>{var n;if(Gf()){document.title="Base44 Backoffice";const t=document.querySelector('link[rel="icon"]');t&&(t.href="/favicon-backoffice.png");const i=document.querySelector('link[rel="apple-touch-icon"]');i&&(i.href="/favicon-backoffice.png"),(n=document.querySelector('meta[name="apple-mobile-web-app-title"]'))==null||n.setAttribute("content","Base44 Backoffice")}},[]);const e=window.location.host;if(!Mee(e)&&!Gf())return J.jsx(Rge,{children:J.jsx(M.Suspense,{fallback:null,children:J.jsx(Fge,{})})});const a=wg()?J.jsx(jge,{}):J.jsx(Lge,{});return J.jsx(Ige,{componentName:"App",children:J.jsx(Fae,{children:J.jsxs("div",{className:"font-sans",children:[J.jsx("div",{children:J.jsx(Zk,{})}),J.jsx("div",{children:J.jsx(jae,{})}),J.jsx("div",{children:J.jsx(Fk,{})}),J.jsx(Qk,{children:J.jsx(M.Suspense,{fallback:null,children:a})})]})})})};if(typeof Node<"u"){const e=Node.prototype.insertBefore;Node.prototype.insertBefore=function(n,t){return t&&t.parentNode!==this?e.call(this,n,null):e.call(this,n,t)};const a=Node.prototype.removeChild;Node.prototype.removeChild=function(n){return n.parentNode!==this?n:a.call(this,n)}}const Bge=my.createRoot(document.getElementById("root"));Bge.render(J.jsx(Oge,{}));export{Gf as $,Fu as A,wge as B,K as C,Vae as D,Dt as E,Tge as F,jk as G,kae as H,Xge as I,Ih as J,zhe as K,bhe as L,fhe as M,yhe as N,vhe as O,zt as P,khe as Q,mk as R,Oae as S,Qk as T,Bae as U,kg as V,Em as W,wg as X,Jge as Y,Zm as Z,Kae as _,Dhe as a,She as a0,Wl as a1,Mee as a2,Qge as a3,Ihe as a4,ghe as a5,gge as a6,ti as a7,xhe as a8,Mr as a9,Jm as aA,fk as aB,aw as aC,Qme as aD,bk as aE,ehe as aF,the as aG,Rhe as aH,Qm as aI,Gee as aJ,vk as aK,Wc as aL,Wee as aM,Wme as aN,Gl as aO,ov as aP,zee as aQ,ew as aR,Ige as aS,Kk as aT,Zk as aU,ahe as aV,Iee as aW,Jo as aa,Nae as ab,Jk as ac,wl as ad,hhe as ae,phe as af,she as ag,uhe as ah,dhe as ai,whe as aj,Wge as ak,che as al,lhe as am,mhe as an,Yge as ao,Kge as ap,ohe as aq,Fk as ar,Gge as as,Hge as at,fge as au,Yee as av,ihe as aw,yge as ax,$ee as ay,rhe as az,kge as b,$a as c,Fee as d,Age as e,Zge as f,kd as g,dge as h,Che as i,sge as j,_he as k,nhe as l,Ct as m,Phe as n,HC as o,Vc as p,pa as q,Qd as r,The as s,_a as t,Mhe as u,Ehe as v,ni as w,mg as x,Ok as y,Mte as z};