Compare commits

...

3 Commits

Author SHA1 Message Date
Matthias Nannt
fe15f6b7bd fix(backport): github release action fix 2025-08-15 13:21:14 +02:00
Dhruwang Jariwala
1091b40bd1 fix(backport): cross button hover (#6416) 2025-08-14 14:30:05 +02:00
Anshuman Pandey
87a2d727ed fix: disables tabs when single use is enabled [Backport] (#6412) 2025-08-14 04:07:35 -07:00
12 changed files with 53 additions and 101 deletions

View File

@@ -37,7 +37,7 @@ on:
permissions: permissions:
id-token: write id-token: write
contents: write contents: read
jobs: jobs:
helmfile-deploy: helmfile-deploy:

View File

@@ -7,12 +7,13 @@ on:
permissions: permissions:
contents: read contents: read
env:
ENVIRONMENT: ${{ github.event.release.prerelease && 'staging' || 'production' }}
jobs: jobs:
docker-build: docker-build:
name: Build & release docker image name: Build & release docker image
permissions:
contents: read
packages: write
id-token: write
uses: ./.github/workflows/release-docker-github.yml uses: ./.github/workflows/release-docker-github.yml
secrets: inherit secrets: inherit
with: with:
@@ -20,6 +21,9 @@ jobs:
helm-chart-release: helm-chart-release:
name: Release Helm Chart name: Release Helm Chart
permissions:
contents: read
packages: write
uses: ./.github/workflows/release-helm-chart.yml uses: ./.github/workflows/release-helm-chart.yml
secrets: inherit secrets: inherit
needs: needs:
@@ -29,6 +33,9 @@ jobs:
deploy-formbricks-cloud: deploy-formbricks-cloud:
name: Deploy Helm Chart to Formbricks Cloud name: Deploy Helm Chart to Formbricks Cloud
permissions:
contents: read
id-token: write
secrets: inherit secrets: inherit
uses: ./.github/workflows/deploy-formbricks-cloud.yml uses: ./.github/workflows/deploy-formbricks-cloud.yml
needs: needs:
@@ -36,7 +43,7 @@ jobs:
- helm-chart-release - helm-chart-release
with: with:
VERSION: v${{ needs.docker-build.outputs.VERSION }} VERSION: v${{ needs.docker-build.outputs.VERSION }}
ENVIRONMENT: ${{ env.ENVIRONMENT }} ENVIRONMENT: ${{ github.event.release.prerelease && 'staging' || 'production' }}
upload-sentry-sourcemaps: upload-sentry-sourcemaps:
name: Upload Sentry Sourcemaps name: Upload Sentry Sourcemaps
@@ -64,4 +71,4 @@ jobs:
docker_image: ghcr.io/formbricks/formbricks:v${{ needs.docker-build.outputs.VERSION }} docker_image: ghcr.io/formbricks/formbricks:v${{ needs.docker-build.outputs.VERSION }}
release_version: v${{ needs.docker-build.outputs.VERSION }} release_version: v${{ needs.docker-build.outputs.VERSION }}
sentry_auth_token: ${{ secrets.SENTRY_AUTH_TOKEN }} sentry_auth_token: ${{ secrets.SENTRY_AUTH_TOKEN }}
environment: ${{ env.ENVIRONMENT }} environment: ${{ github.event.release.prerelease && 'staging' || 'production' }}

View File

@@ -29,7 +29,7 @@ import {
SquareStack, SquareStack,
UserIcon, UserIcon,
} from "lucide-react"; } from "lucide-react";
import { useEffect, useMemo, useState } from "react"; import { useCallback, useEffect, useMemo, useState } from "react";
import { TSegment } from "@formbricks/types/segment"; import { TSegment } from "@formbricks/types/segment";
import { TSurvey } from "@formbricks/types/surveys/types"; import { TSurvey } from "@formbricks/types/surveys/types";
import { TUser } from "@formbricks/types/user"; import { TUser } from "@formbricks/types/user";
@@ -77,6 +77,7 @@ export const ShareSurveyModal = ({
description: string; description: string;
componentType: React.ComponentType<unknown>; componentType: React.ComponentType<unknown>;
componentProps: unknown; componentProps: unknown;
disabled?: boolean;
}[] = useMemo( }[] = useMemo(
() => [ () => [
{ {
@@ -111,6 +112,7 @@ export const ShareSurveyModal = ({
isContactsEnabled, isContactsEnabled,
isFormbricksCloud, isFormbricksCloud,
}, },
disabled: survey.singleUse?.enabled,
}, },
{ {
id: ShareViaType.WEBSITE_EMBED, id: ShareViaType.WEBSITE_EMBED,
@@ -121,6 +123,7 @@ export const ShareSurveyModal = ({
description: t("environments.surveys.share.embed_on_website.description"), description: t("environments.surveys.share.embed_on_website.description"),
componentType: WebsiteEmbedTab, componentType: WebsiteEmbedTab,
componentProps: { surveyUrl }, componentProps: { surveyUrl },
disabled: survey.singleUse?.enabled,
}, },
{ {
id: ShareViaType.EMAIL, id: ShareViaType.EMAIL,
@@ -131,6 +134,7 @@ export const ShareSurveyModal = ({
description: t("environments.surveys.share.send_email.description"), description: t("environments.surveys.share.send_email.description"),
componentType: EmailTab, componentType: EmailTab,
componentProps: { surveyId: survey.id, email }, componentProps: { surveyId: survey.id, email },
disabled: survey.singleUse?.enabled,
}, },
{ {
id: ShareViaType.SOCIAL_MEDIA, id: ShareViaType.SOCIAL_MEDIA,
@@ -141,6 +145,7 @@ export const ShareSurveyModal = ({
description: t("environments.surveys.share.social_media.description"), description: t("environments.surveys.share.social_media.description"),
componentType: SocialMediaTab, componentType: SocialMediaTab,
componentProps: { surveyUrl, surveyTitle: survey.name }, componentProps: { surveyUrl, surveyTitle: survey.name },
disabled: survey.singleUse?.enabled,
}, },
{ {
id: ShareViaType.QR_CODE, id: ShareViaType.QR_CODE,
@@ -151,6 +156,7 @@ export const ShareSurveyModal = ({
description: t("environments.surveys.summary.qr_code_description"), description: t("environments.surveys.summary.qr_code_description"),
componentType: QRCodeTab, componentType: QRCodeTab,
componentProps: { surveyUrl }, componentProps: { surveyUrl },
disabled: survey.singleUse?.enabled,
}, },
{ {
id: ShareViaType.DYNAMIC_POPUP, id: ShareViaType.DYNAMIC_POPUP,
@@ -177,9 +183,9 @@ export const ShareSurveyModal = ({
t, t,
survey, survey,
publicDomain, publicDomain,
setSurveyUrl,
user.locale, user.locale,
surveyUrl, surveyUrl,
isReadOnly,
environmentId, environmentId,
segments, segments,
isContactsEnabled, isContactsEnabled,
@@ -188,9 +194,14 @@ export const ShareSurveyModal = ({
] ]
); );
const [activeId, setActiveId] = useState<ShareViaType | ShareSettingsType>( const getDefaultActiveId = useCallback(() => {
survey.type === "link" ? ShareViaType.ANON_LINKS : ShareViaType.APP if (survey.type !== "link") {
); return ShareViaType.APP;
}
return ShareViaType.ANON_LINKS;
}, [survey.type]);
const [activeId, setActiveId] = useState<ShareViaType | ShareSettingsType>(getDefaultActiveId());
useEffect(() => { useEffect(() => {
if (open) { if (open) {
@@ -198,11 +209,19 @@ export const ShareSurveyModal = ({
} }
}, [open, modalView]); }, [open, modalView]);
// Ensure active tab is not disabled - if it is, switch to default
useEffect(() => {
const activeTab = linkTabs.find((tab) => tab.id === activeId);
if (activeTab?.disabled) {
setActiveId(getDefaultActiveId());
}
}, [activeId, linkTabs, getDefaultActiveId]);
const handleOpenChange = (open: boolean) => { const handleOpenChange = (open: boolean) => {
setOpen(open); setOpen(open);
if (!open) { if (!open) {
setShowView("start"); setShowView("start");
setActiveId(ShareViaType.ANON_LINKS); setActiveId(getDefaultActiveId());
} }
}; };

View File

@@ -34,6 +34,7 @@ interface ShareViewProps {
componentProps: any; componentProps: any;
title: string; title: string;
description?: string; description?: string;
disabled?: boolean;
}>; }>;
activeId: ShareViaType | ShareSettingsType; activeId: ShareViaType | ShareSettingsType;
setActiveId: React.Dispatch<React.SetStateAction<ShareViaType | ShareSettingsType>>; setActiveId: React.Dispatch<React.SetStateAction<ShareViaType | ShareSettingsType>>;
@@ -109,12 +110,13 @@ export const ShareView = ({ tabs, activeId, setActiveId }: ShareViewProps) => {
onClick={() => setActiveId(tab.id)} onClick={() => setActiveId(tab.id)}
className={cn( className={cn(
"flex w-full justify-start rounded-md p-2 text-slate-600 hover:bg-slate-100 hover:text-slate-900", "flex w-full justify-start rounded-md p-2 text-slate-600 hover:bg-slate-100 hover:text-slate-900",
tab.id === activeId tab.id === activeId && !tab.disabled
? "bg-slate-100 font-medium text-slate-900" ? "bg-slate-100 font-medium text-slate-900"
: "text-slate-700" : "text-slate-700"
)} )}
tooltip={tab.label} tooltip={tab.label}
isActive={tab.id === activeId}> isActive={tab.id === activeId}
disabled={tab.disabled}>
<tab.icon className="h-4 w-4 text-slate-700" /> <tab.icon className="h-4 w-4 text-slate-700" />
<span>{tab.label}</span> <span>{tab.label}</span>
</SidebarMenuButton> </SidebarMenuButton>
@@ -136,9 +138,10 @@ export const ShareView = ({ tabs, activeId, setActiveId }: ShareViewProps) => {
<Button <Button
variant="ghost" variant="ghost"
onClick={() => setActiveId(tab.id)} onClick={() => setActiveId(tab.id)}
disabled={tab.disabled}
className={cn( className={cn(
"rounded-md px-4 py-2", "rounded-md px-4 py-2",
tab.id === activeId tab.id === activeId && !tab.disabled
? "bg-white text-slate-900 shadow-sm hover:bg-white" ? "bg-white text-slate-900 shadow-sm hover:bg-white"
: "border-transparent text-slate-700 hover:text-slate-900" : "border-transparent text-slate-700 hover:text-slate-900"
)}> )}>

View File

@@ -141,7 +141,6 @@
"apply_filters": "Filter anwenden", "apply_filters": "Filter anwenden",
"are_you_sure": "Bist Du sicher?", "are_you_sure": "Bist Du sicher?",
"attributes": "Attribute", "attributes": "Attribute",
"avatar": "Avatar",
"back": "Zurück", "back": "Zurück",
"billing": "Abrechnung", "billing": "Abrechnung",
"booked": "Gebucht", "booked": "Gebucht",
@@ -1111,9 +1110,7 @@
}, },
"profile": { "profile": {
"account_deletion_consequences_warning": "Was passiert, wenn Du das Konto löschst", "account_deletion_consequences_warning": "Was passiert, wenn Du das Konto löschst",
"avatar_update_failed": "Aktualisierung des Avatars fehlgeschlagen. Bitte versuche es erneut.",
"backup_code": "Backup-Code", "backup_code": "Backup-Code",
"change_image": "Bild ändern",
"confirm_delete_account": "Lösche dein Konto mit all deinen persönlichen Informationen und Daten", "confirm_delete_account": "Lösche dein Konto mit all deinen persönlichen Informationen und Daten",
"confirm_delete_my_account": "Konto löschen", "confirm_delete_my_account": "Konto löschen",
"confirm_your_current_password_to_get_started": "Bestätige dein aktuelles Passwort, um loszulegen.", "confirm_your_current_password_to_get_started": "Bestätige dein aktuelles Passwort, um loszulegen.",
@@ -1124,17 +1121,13 @@
"email_change_initiated": "Deine Anfrage zur Änderung der E-Mail wurde eingeleitet.", "email_change_initiated": "Deine Anfrage zur Änderung der E-Mail wurde eingeleitet.",
"enable_two_factor_authentication": "Zwei-Faktor-Authentifizierung aktivieren", "enable_two_factor_authentication": "Zwei-Faktor-Authentifizierung aktivieren",
"enter_the_code_from_your_authenticator_app_below": "Gib den Code aus deiner Authentifizierungs-App unten ein.", "enter_the_code_from_your_authenticator_app_below": "Gib den Code aus deiner Authentifizierungs-App unten ein.",
"file_size_must_be_less_than_10mb": "Dateigröße muss weniger als 10MB sein.",
"invalid_file_type": "Ungültiger Dateityp. Nur JPEG-, PNG- und WEBP-Dateien sind erlaubt.",
"lost_access": "Zugriff verloren", "lost_access": "Zugriff verloren",
"or_enter_the_following_code_manually": "Oder gib den folgenden Code manuell ein:", "or_enter_the_following_code_manually": "Oder gib den folgenden Code manuell ein:",
"organization_identification": "Hilf deiner Organisation, Dich auf Formbricks zu identifizieren",
"organizations_delete_message": "Du bist der einzige Besitzer dieser Organisationen, also werden sie <b>auch gelöscht.</b>", "organizations_delete_message": "Du bist der einzige Besitzer dieser Organisationen, also werden sie <b>auch gelöscht.</b>",
"permanent_removal_of_all_of_your_personal_information_and_data": "Dauerhafte Entfernung all deiner persönlichen Informationen und Daten", "permanent_removal_of_all_of_your_personal_information_and_data": "Dauerhafte Entfernung all deiner persönlichen Informationen und Daten",
"personal_information": "Persönliche Informationen", "personal_information": "Persönliche Informationen",
"please_enter_email_to_confirm_account_deletion": "Bitte gib {email} in das folgende Feld ein, um die endgültige Löschung deines Kontos zu bestätigen:", "please_enter_email_to_confirm_account_deletion": "Bitte gib {email} in das folgende Feld ein, um die endgültige Löschung deines Kontos zu bestätigen:",
"profile_updated_successfully": "Dein Profil wurde erfolgreich aktualisiert", "profile_updated_successfully": "Dein Profil wurde erfolgreich aktualisiert",
"remove_image": "Bild entfernen",
"save_the_following_backup_codes_in_a_safe_place": "Speichere die folgenden Backup-Codes an einem sicheren Ort.", "save_the_following_backup_codes_in_a_safe_place": "Speichere die folgenden Backup-Codes an einem sicheren Ort.",
"scan_the_qr_code_below_with_your_authenticator_app": "Scanne den QR-Code unten mit deiner Authentifizierungs-App.", "scan_the_qr_code_below_with_your_authenticator_app": "Scanne den QR-Code unten mit deiner Authentifizierungs-App.",
"security_description": "Verwalte dein Passwort und andere Sicherheitseinstellungen wie Zwei-Faktor-Authentifizierung (2FA).", "security_description": "Verwalte dein Passwort und andere Sicherheitseinstellungen wie Zwei-Faktor-Authentifizierung (2FA).",
@@ -1144,10 +1137,8 @@
"two_factor_code": "Zwei-Faktor-Code", "two_factor_code": "Zwei-Faktor-Code",
"unlock_two_factor_authentication": "Zwei-Faktor-Authentifizierung mit einem höheren Plan freischalten", "unlock_two_factor_authentication": "Zwei-Faktor-Authentifizierung mit einem höheren Plan freischalten",
"update_personal_info": "Persönliche Daten aktualisieren", "update_personal_info": "Persönliche Daten aktualisieren",
"upload_image": "Bild hochladen",
"warning_cannot_delete_account": "Du bist der einzige Besitzer dieser Organisation. Bitte übertrage das Eigentum zuerst an ein anderes Mitglied.", "warning_cannot_delete_account": "Du bist der einzige Besitzer dieser Organisation. Bitte übertrage das Eigentum zuerst an ein anderes Mitglied.",
"warning_cannot_undo": "Das kann nicht rückgängig gemacht werden", "warning_cannot_undo": "Das kann nicht rückgängig gemacht werden"
"you_must_select_a_file": "Du musst eine Datei auswählen."
}, },
"teams": { "teams": {
"add_members_description": "Füge Mitglieder zum Team hinzu und bestimme ihre Rolle.", "add_members_description": "Füge Mitglieder zum Team hinzu und bestimme ihre Rolle.",
@@ -1715,10 +1706,8 @@
"language_help_text": "Die Meta-Daten werden basierend auf dem `lang` Wert in der URL geladen.", "language_help_text": "Die Meta-Daten werden basierend auf dem `lang` Wert in der URL geladen.",
"link_description": "Linkbeschreibung", "link_description": "Linkbeschreibung",
"link_description_description": "Beschreibung mit 55-200 Zeichen funktionieren am besten.", "link_description_description": "Beschreibung mit 55-200 Zeichen funktionieren am besten.",
"link_description_placeholder": "Hilf uns, indem du deine Gedanken teilst.",
"link_title": "Linktitel", "link_title": "Linktitel",
"link_title_description": "Kurze Titel funktionieren am besten als Meta-Titel.", "link_title_description": "Kurze Titel funktionieren am besten als Meta-Titel.",
"link_title_placeholder": "Kundenfeedback-Umfrage",
"preview_image": "Vorschaubild", "preview_image": "Vorschaubild",
"preview_image_description": "Querformatige Bilder mit kleiner Dateigröße (<4MB) funktionieren am besten.", "preview_image_description": "Querformatige Bilder mit kleiner Dateigröße (<4MB) funktionieren am besten.",
"title": "Link-Einstellungen" "title": "Link-Einstellungen"

View File

@@ -141,7 +141,6 @@
"apply_filters": "Apply filters", "apply_filters": "Apply filters",
"are_you_sure": "Are you sure?", "are_you_sure": "Are you sure?",
"attributes": "Attributes", "attributes": "Attributes",
"avatar": "Avatar",
"back": "Back", "back": "Back",
"billing": "Billing", "billing": "Billing",
"booked": "Booked", "booked": "Booked",
@@ -1111,9 +1110,7 @@
}, },
"profile": { "profile": {
"account_deletion_consequences_warning": "Account deletion consequences", "account_deletion_consequences_warning": "Account deletion consequences",
"avatar_update_failed": "Avatar update failed. Please try again.",
"backup_code": "Backup Code", "backup_code": "Backup Code",
"change_image": "Change image",
"confirm_delete_account": "Delete your account with all of your personal information and data", "confirm_delete_account": "Delete your account with all of your personal information and data",
"confirm_delete_my_account": "Delete My Account", "confirm_delete_my_account": "Delete My Account",
"confirm_your_current_password_to_get_started": "Confirm your current password to get started.", "confirm_your_current_password_to_get_started": "Confirm your current password to get started.",
@@ -1124,17 +1121,13 @@
"email_change_initiated": "Your email change request has been initiated.", "email_change_initiated": "Your email change request has been initiated.",
"enable_two_factor_authentication": "Enable two factor authentication", "enable_two_factor_authentication": "Enable two factor authentication",
"enter_the_code_from_your_authenticator_app_below": "Enter the code from your authenticator app below.", "enter_the_code_from_your_authenticator_app_below": "Enter the code from your authenticator app below.",
"file_size_must_be_less_than_10mb": "File size must be less than 10MB.",
"invalid_file_type": "Invalid file type. Only JPEG, PNG, and WEBP files are allowed.",
"lost_access": "Lost access", "lost_access": "Lost access",
"or_enter_the_following_code_manually": "Or enter the following code manually:", "or_enter_the_following_code_manually": "Or enter the following code manually:",
"organization_identification": "Assist your organization in identifying you on Formbricks",
"organizations_delete_message": "You are the only owner of these organizations, so they <b>will be deleted as well.</b>", "organizations_delete_message": "You are the only owner of these organizations, so they <b>will be deleted as well.</b>",
"permanent_removal_of_all_of_your_personal_information_and_data": "Permanent removal of all of your personal information and data", "permanent_removal_of_all_of_your_personal_information_and_data": "Permanent removal of all of your personal information and data",
"personal_information": "Personal information", "personal_information": "Personal information",
"please_enter_email_to_confirm_account_deletion": "Please enter {email} in the following field to confirm the definitive deletion of your account:", "please_enter_email_to_confirm_account_deletion": "Please enter {email} in the following field to confirm the definitive deletion of your account:",
"profile_updated_successfully": "Your profile was updated successfully", "profile_updated_successfully": "Your profile was updated successfully",
"remove_image": "Remove image",
"save_the_following_backup_codes_in_a_safe_place": "Save the following backup codes in a safe place.", "save_the_following_backup_codes_in_a_safe_place": "Save the following backup codes in a safe place.",
"scan_the_qr_code_below_with_your_authenticator_app": "Scan the QR code below with your authenticator app.", "scan_the_qr_code_below_with_your_authenticator_app": "Scan the QR code below with your authenticator app.",
"security_description": "Manage your password and other security settings like two-factor authentication (2FA).", "security_description": "Manage your password and other security settings like two-factor authentication (2FA).",
@@ -1144,10 +1137,8 @@
"two_factor_code": "Two-Factor Code", "two_factor_code": "Two-Factor Code",
"unlock_two_factor_authentication": "Unlock two-factor authentication with a higher plan", "unlock_two_factor_authentication": "Unlock two-factor authentication with a higher plan",
"update_personal_info": "Update your personal information", "update_personal_info": "Update your personal information",
"upload_image": "Upload image",
"warning_cannot_delete_account": "You are the only owner of this organization. Please transfer ownership to another member first.", "warning_cannot_delete_account": "You are the only owner of this organization. Please transfer ownership to another member first.",
"warning_cannot_undo": "This cannot be undone", "warning_cannot_undo": "This cannot be undone"
"you_must_select_a_file": "You must select a file."
}, },
"teams": { "teams": {
"add_members_description": "Add members to the team and determine their role.", "add_members_description": "Add members to the team and determine their role.",
@@ -1715,10 +1706,8 @@
"language_help_text": "The meta data is loaded based on the `lang` value in the URL.", "language_help_text": "The meta data is loaded based on the `lang` value in the URL.",
"link_description": "Link description", "link_description": "Link description",
"link_description_description": "Descriptions between 55-200 characters perform best.", "link_description_description": "Descriptions between 55-200 characters perform best.",
"link_description_placeholder": "Help us improve by sharing your thoughts.",
"link_title": "Link title", "link_title": "Link title",
"link_title_description": "Short titles perform best as Meta Titles.", "link_title_description": "Short titles perform best as Meta Titles.",
"link_title_placeholder": "Customer Feedback Survey",
"preview_image": "Preview image", "preview_image": "Preview image",
"preview_image_description": "Landscape images with small file sizes (<4MB) perform best.", "preview_image_description": "Landscape images with small file sizes (<4MB) perform best.",
"title": "Link settings" "title": "Link settings"

View File

@@ -141,7 +141,6 @@
"apply_filters": "Appliquer des filtres", "apply_filters": "Appliquer des filtres",
"are_you_sure": "Es-tu sûr ?", "are_you_sure": "Es-tu sûr ?",
"attributes": "Attributs", "attributes": "Attributs",
"avatar": "Avatar",
"back": "Retour", "back": "Retour",
"billing": "Facturation", "billing": "Facturation",
"booked": "Réservé", "booked": "Réservé",
@@ -1111,9 +1110,7 @@
}, },
"profile": { "profile": {
"account_deletion_consequences_warning": "Conséquences de la suppression de compte", "account_deletion_consequences_warning": "Conséquences de la suppression de compte",
"avatar_update_failed": "La mise à jour de l'avatar a échoué. Veuillez réessayer.",
"backup_code": "Code de sauvegarde", "backup_code": "Code de sauvegarde",
"change_image": "Changer l'image",
"confirm_delete_account": "Supprimez votre compte avec toutes vos informations personnelles et données.", "confirm_delete_account": "Supprimez votre compte avec toutes vos informations personnelles et données.",
"confirm_delete_my_account": "Supprimer mon compte", "confirm_delete_my_account": "Supprimer mon compte",
"confirm_your_current_password_to_get_started": "Confirmez votre mot de passe actuel pour commencer.", "confirm_your_current_password_to_get_started": "Confirmez votre mot de passe actuel pour commencer.",
@@ -1124,17 +1121,13 @@
"email_change_initiated": "Votre demande de changement d'email a été initiée.", "email_change_initiated": "Votre demande de changement d'email a été initiée.",
"enable_two_factor_authentication": "Activer l'authentification à deux facteurs", "enable_two_factor_authentication": "Activer l'authentification à deux facteurs",
"enter_the_code_from_your_authenticator_app_below": "Entrez le code de votre application d'authentification ci-dessous.", "enter_the_code_from_your_authenticator_app_below": "Entrez le code de votre application d'authentification ci-dessous.",
"file_size_must_be_less_than_10mb": "La taille du fichier doit être inférieure à 10 Mo.",
"invalid_file_type": "Type de fichier invalide. Seuls les fichiers JPEG, PNG et WEBP sont autorisés.",
"lost_access": "Accès perdu", "lost_access": "Accès perdu",
"or_enter_the_following_code_manually": "Ou entrez le code suivant manuellement :", "or_enter_the_following_code_manually": "Ou entrez le code suivant manuellement :",
"organization_identification": "Aidez votre organisation à vous identifier sur Formbricks",
"organizations_delete_message": "Tu es le seul propriétaire de ces organisations, elles <b>seront aussi supprimées.</b>", "organizations_delete_message": "Tu es le seul propriétaire de ces organisations, elles <b>seront aussi supprimées.</b>",
"permanent_removal_of_all_of_your_personal_information_and_data": "Suppression permanente de toutes vos informations et données personnelles.", "permanent_removal_of_all_of_your_personal_information_and_data": "Suppression permanente de toutes vos informations et données personnelles.",
"personal_information": "Informations personnelles", "personal_information": "Informations personnelles",
"please_enter_email_to_confirm_account_deletion": "Veuillez entrer {email} dans le champ suivant pour confirmer la suppression définitive de votre compte :", "please_enter_email_to_confirm_account_deletion": "Veuillez entrer {email} dans le champ suivant pour confirmer la suppression définitive de votre compte :",
"profile_updated_successfully": "Votre profil a été mis à jour avec succès.", "profile_updated_successfully": "Votre profil a été mis à jour avec succès.",
"remove_image": "Supprimer l'image",
"save_the_following_backup_codes_in_a_safe_place": "Enregistrez les codes de sauvegarde suivants dans un endroit sûr.", "save_the_following_backup_codes_in_a_safe_place": "Enregistrez les codes de sauvegarde suivants dans un endroit sûr.",
"scan_the_qr_code_below_with_your_authenticator_app": "Scannez le code QR ci-dessous avec votre application d'authentification.", "scan_the_qr_code_below_with_your_authenticator_app": "Scannez le code QR ci-dessous avec votre application d'authentification.",
"security_description": "Gérez votre mot de passe et d'autres paramètres de sécurité comme l'authentification à deux facteurs (2FA).", "security_description": "Gérez votre mot de passe et d'autres paramètres de sécurité comme l'authentification à deux facteurs (2FA).",
@@ -1144,10 +1137,8 @@
"two_factor_code": "Code à deux facteurs", "two_factor_code": "Code à deux facteurs",
"unlock_two_factor_authentication": "Débloquez l'authentification à deux facteurs avec une offre supérieure", "unlock_two_factor_authentication": "Débloquez l'authentification à deux facteurs avec une offre supérieure",
"update_personal_info": "Mettez à jour vos informations personnelles", "update_personal_info": "Mettez à jour vos informations personnelles",
"upload_image": "Télécharger l'image",
"warning_cannot_delete_account": "Tu es le seul propriétaire de cette organisation. Transfère la propriété à un autre membre d'abord.", "warning_cannot_delete_account": "Tu es le seul propriétaire de cette organisation. Transfère la propriété à un autre membre d'abord.",
"warning_cannot_undo": "Ceci ne peut pas être annulé", "warning_cannot_undo": "Ceci ne peut pas être annulé"
"you_must_select_a_file": "Vous devez sélectionner un fichier."
}, },
"teams": { "teams": {
"add_members_description": "Ajoutez des membres à l'équipe et déterminez leur rôle.", "add_members_description": "Ajoutez des membres à l'équipe et déterminez leur rôle.",
@@ -1715,10 +1706,8 @@
"language_help_text": "Les métadonnées sont chargées en fonction de la valeur « lang » dans l'URL.", "language_help_text": "Les métadonnées sont chargées en fonction de la valeur « lang » dans l'URL.",
"link_description": "Description du lien", "link_description": "Description du lien",
"link_description_description": "« Les descriptions entre 55 et 200 caractères donnent les meilleurs résultats. »", "link_description_description": "« Les descriptions entre 55 et 200 caractères donnent les meilleurs résultats. »",
"link_description_placeholder": "Aidez-nous à nous améliorer en partageant vos pensées.",
"link_title": "Titre du lien", "link_title": "Titre du lien",
"link_title_description": "Les titres courts fonctionnent mieux comme titres méta.", "link_title_description": "Les titres courts fonctionnent mieux comme titres méta.",
"link_title_placeholder": "Sondage de Retour Clients",
"preview_image": "Aperçu de l'image", "preview_image": "Aperçu de l'image",
"preview_image_description": "Les images en paysage avec de petites tailles de fichier (<4MB) fonctionnent le mieux.", "preview_image_description": "Les images en paysage avec de petites tailles de fichier (<4MB) fonctionnent le mieux.",
"title": "Paramètres de lien" "title": "Paramètres de lien"

View File

@@ -141,7 +141,6 @@
"apply_filters": "Aplicar filtros", "apply_filters": "Aplicar filtros",
"are_you_sure": "Certeza?", "are_you_sure": "Certeza?",
"attributes": "atributos", "attributes": "atributos",
"avatar": "Avatar",
"back": "Voltar", "back": "Voltar",
"billing": "Faturamento", "billing": "Faturamento",
"booked": "Reservado", "booked": "Reservado",
@@ -1111,9 +1110,7 @@
}, },
"profile": { "profile": {
"account_deletion_consequences_warning": "Consequências da exclusão da conta", "account_deletion_consequences_warning": "Consequências da exclusão da conta",
"avatar_update_failed": "Falha ao atualizar o avatar. Por favor, tente novamente.",
"backup_code": "Código de Backup", "backup_code": "Código de Backup",
"change_image": "Mudar imagem",
"confirm_delete_account": "Apague sua conta com todas as suas informações pessoais e dados", "confirm_delete_account": "Apague sua conta com todas as suas informações pessoais e dados",
"confirm_delete_my_account": "Excluir Minha Conta", "confirm_delete_my_account": "Excluir Minha Conta",
"confirm_your_current_password_to_get_started": "Confirme sua senha atual para começar.", "confirm_your_current_password_to_get_started": "Confirme sua senha atual para começar.",
@@ -1124,17 +1121,13 @@
"email_change_initiated": "Sua solicitação de alteração de e-mail foi iniciada.", "email_change_initiated": "Sua solicitação de alteração de e-mail foi iniciada.",
"enable_two_factor_authentication": "Ativar autenticação de dois fatores", "enable_two_factor_authentication": "Ativar autenticação de dois fatores",
"enter_the_code_from_your_authenticator_app_below": "Digite o código do seu app autenticador abaixo.", "enter_the_code_from_your_authenticator_app_below": "Digite o código do seu app autenticador abaixo.",
"file_size_must_be_less_than_10mb": "O tamanho do arquivo deve ser menor que 10MB.",
"invalid_file_type": "Tipo de arquivo inválido. Só são permitidos arquivos JPEG, PNG e WEBP.",
"lost_access": "Perdi o acesso", "lost_access": "Perdi o acesso",
"or_enter_the_following_code_manually": "Ou insira o seguinte código manualmente:", "or_enter_the_following_code_manually": "Ou insira o seguinte código manualmente:",
"organization_identification": "Ajude sua organização a te identificar no Formbricks",
"organizations_delete_message": "Você é o único dono dessas organizações, então elas <b>também serão apagadas.</b>", "organizations_delete_message": "Você é o único dono dessas organizações, então elas <b>também serão apagadas.</b>",
"permanent_removal_of_all_of_your_personal_information_and_data": "Remoção permanente de todas as suas informações e dados pessoais", "permanent_removal_of_all_of_your_personal_information_and_data": "Remoção permanente de todas as suas informações e dados pessoais",
"personal_information": "Informações pessoais", "personal_information": "Informações pessoais",
"please_enter_email_to_confirm_account_deletion": "Por favor, insira {email} no campo abaixo para confirmar a exclusão definitiva da sua conta:", "please_enter_email_to_confirm_account_deletion": "Por favor, insira {email} no campo abaixo para confirmar a exclusão definitiva da sua conta:",
"profile_updated_successfully": "Seu perfil foi atualizado com sucesso", "profile_updated_successfully": "Seu perfil foi atualizado com sucesso",
"remove_image": "Remover imagem",
"save_the_following_backup_codes_in_a_safe_place": "Guarde os seguintes códigos de backup em um lugar seguro.", "save_the_following_backup_codes_in_a_safe_place": "Guarde os seguintes códigos de backup em um lugar seguro.",
"scan_the_qr_code_below_with_your_authenticator_app": "Escaneie o código QR abaixo com seu app autenticador.", "scan_the_qr_code_below_with_your_authenticator_app": "Escaneie o código QR abaixo com seu app autenticador.",
"security_description": "Gerencie sua senha e outras configurações de segurança como a autenticação de dois fatores (2FA).", "security_description": "Gerencie sua senha e outras configurações de segurança como a autenticação de dois fatores (2FA).",
@@ -1144,10 +1137,8 @@
"two_factor_code": "Código de Dois Fatores", "two_factor_code": "Código de Dois Fatores",
"unlock_two_factor_authentication": "Desbloqueia a autenticação de dois fatores com um plano melhor", "unlock_two_factor_authentication": "Desbloqueia a autenticação de dois fatores com um plano melhor",
"update_personal_info": "Atualize suas informações pessoais", "update_personal_info": "Atualize suas informações pessoais",
"upload_image": "Enviar imagem",
"warning_cannot_delete_account": "Você é o único dono desta organização. Transfere a propriedade para outra pessoa primeiro.", "warning_cannot_delete_account": "Você é o único dono desta organização. Transfere a propriedade para outra pessoa primeiro.",
"warning_cannot_undo": "Isso não pode ser desfeito", "warning_cannot_undo": "Isso não pode ser desfeito"
"you_must_select_a_file": "Você tem que selecionar um arquivo."
}, },
"teams": { "teams": {
"add_members_description": "Adicione membros à equipe e determine sua função.", "add_members_description": "Adicione membros à equipe e determine sua função.",
@@ -1715,10 +1706,8 @@
"language_help_text": "Os metadados são carregados com base no valor `lang` na URL.", "language_help_text": "Os metadados são carregados com base no valor `lang` na URL.",
"link_description": "Descrição do link", "link_description": "Descrição do link",
"link_description_description": "\"Descrições entre 55-200 caracteres têm um melhor desempenho.\"", "link_description_description": "\"Descrições entre 55-200 caracteres têm um melhor desempenho.\"",
"link_description_placeholder": "Ajude-nos a melhorar compartilhando suas opiniões.",
"link_title": "Título do link", "link_title": "Título do link",
"link_title_description": "Títulos curtos têm melhor desempenho como Meta Títulos.", "link_title_description": "Títulos curtos têm melhor desempenho como Meta Títulos.",
"link_title_placeholder": "Pesquisa de Feedback do Cliente",
"preview_image": "Imagem de prévia", "preview_image": "Imagem de prévia",
"preview_image_description": "Imagens em paisagem com tamanhos de arquivo pequenos (<4MB) têm o melhor desempenho.", "preview_image_description": "Imagens em paisagem com tamanhos de arquivo pequenos (<4MB) têm o melhor desempenho.",
"title": "Configurações de link" "title": "Configurações de link"

View File

@@ -141,7 +141,6 @@
"apply_filters": "Aplicar filtros", "apply_filters": "Aplicar filtros",
"are_you_sure": "Tem a certeza?", "are_you_sure": "Tem a certeza?",
"attributes": "Atributos", "attributes": "Atributos",
"avatar": "Avatar",
"back": "Voltar", "back": "Voltar",
"billing": "Faturação", "billing": "Faturação",
"booked": "Reservado", "booked": "Reservado",
@@ -1111,9 +1110,7 @@
}, },
"profile": { "profile": {
"account_deletion_consequences_warning": "Consequências da eliminação da conta", "account_deletion_consequences_warning": "Consequências da eliminação da conta",
"avatar_update_failed": "Falha na atualização do avatar. Por favor, tente novamente.",
"backup_code": "Código de Backup", "backup_code": "Código de Backup",
"change_image": "Alterar imagem",
"confirm_delete_account": "Eliminar a sua conta com todas as suas informações e dados pessoais", "confirm_delete_account": "Eliminar a sua conta com todas as suas informações e dados pessoais",
"confirm_delete_my_account": "Eliminar a Minha Conta", "confirm_delete_my_account": "Eliminar a Minha Conta",
"confirm_your_current_password_to_get_started": "Confirme a sua palavra-passe atual para começar.", "confirm_your_current_password_to_get_started": "Confirme a sua palavra-passe atual para começar.",
@@ -1124,17 +1121,13 @@
"email_change_initiated": "O seu pedido de alteração de email foi iniciado.", "email_change_initiated": "O seu pedido de alteração de email foi iniciado.",
"enable_two_factor_authentication": "Ativar autenticação de dois fatores", "enable_two_factor_authentication": "Ativar autenticação de dois fatores",
"enter_the_code_from_your_authenticator_app_below": "Introduza o código da sua aplicação de autenticação abaixo.", "enter_the_code_from_your_authenticator_app_below": "Introduza o código da sua aplicação de autenticação abaixo.",
"file_size_must_be_less_than_10mb": "O tamanho do ficheiro deve ser inferior a 10MB.",
"invalid_file_type": "Tipo de ficheiro inválido. Apenas são permitidos ficheiros JPEG, PNG e WEBP.",
"lost_access": "Perdeu o acesso", "lost_access": "Perdeu o acesso",
"or_enter_the_following_code_manually": "Ou insira o seguinte código manualmente:", "or_enter_the_following_code_manually": "Ou insira o seguinte código manualmente:",
"organization_identification": "Ajude a sua organização a identificá-lo no Formbricks",
"organizations_delete_message": "É o único proprietário destas organizações, por isso <b>também serão eliminadas.</b>", "organizations_delete_message": "É o único proprietário destas organizações, por isso <b>também serão eliminadas.</b>",
"permanent_removal_of_all_of_your_personal_information_and_data": "Remoção permanente de todas as suas informações e dados pessoais", "permanent_removal_of_all_of_your_personal_information_and_data": "Remoção permanente de todas as suas informações e dados pessoais",
"personal_information": "Informações pessoais", "personal_information": "Informações pessoais",
"please_enter_email_to_confirm_account_deletion": "Por favor, insira {email} no campo seguinte para confirmar a eliminação definitiva da sua conta:", "please_enter_email_to_confirm_account_deletion": "Por favor, insira {email} no campo seguinte para confirmar a eliminação definitiva da sua conta:",
"profile_updated_successfully": "O seu perfil foi atualizado com sucesso", "profile_updated_successfully": "O seu perfil foi atualizado com sucesso",
"remove_image": "Remover imagem",
"save_the_following_backup_codes_in_a_safe_place": "Guarde os seguintes códigos de backup num local seguro.", "save_the_following_backup_codes_in_a_safe_place": "Guarde os seguintes códigos de backup num local seguro.",
"scan_the_qr_code_below_with_your_authenticator_app": "Digitalize o código QR abaixo com a sua aplicação de autenticação.", "scan_the_qr_code_below_with_your_authenticator_app": "Digitalize o código QR abaixo com a sua aplicação de autenticação.",
"security_description": "Gerir a sua palavra-passe e outras definições de segurança, como a autenticação de dois fatores (2FA).", "security_description": "Gerir a sua palavra-passe e outras definições de segurança, como a autenticação de dois fatores (2FA).",
@@ -1144,10 +1137,8 @@
"two_factor_code": "Código de Dois Fatores", "two_factor_code": "Código de Dois Fatores",
"unlock_two_factor_authentication": "Desbloqueie a autenticação de dois fatores com um plano superior", "unlock_two_factor_authentication": "Desbloqueie a autenticação de dois fatores com um plano superior",
"update_personal_info": "Atualize as suas informações pessoais", "update_personal_info": "Atualize as suas informações pessoais",
"upload_image": "Carregar imagem",
"warning_cannot_delete_account": "É o único proprietário desta organização. Transfira a propriedade para outro membro primeiro.", "warning_cannot_delete_account": "É o único proprietário desta organização. Transfira a propriedade para outro membro primeiro.",
"warning_cannot_undo": "Isto não pode ser desfeito", "warning_cannot_undo": "Isto não pode ser desfeito"
"you_must_select_a_file": "Deve selecionar um ficheiro."
}, },
"teams": { "teams": {
"add_members_description": "Adicionar membros à equipa e determinar o seu papel.", "add_members_description": "Adicionar membros à equipa e determinar o seu papel.",
@@ -1715,10 +1706,8 @@
"language_help_text": "Os metadados são carregados com base no valor `lang` no URL.", "language_help_text": "Os metadados são carregados com base no valor `lang` no URL.",
"link_description": "Descrição do link", "link_description": "Descrição do link",
"link_description_description": "Descrições entre 55 a 200 caracteres têm melhor desempenho.", "link_description_description": "Descrições entre 55 a 200 caracteres têm melhor desempenho.",
"link_description_placeholder": "Ajude-nos a melhorar compartilhando suas opiniões.",
"link_title": "Título do Link", "link_title": "Título do Link",
"link_title_description": "Títulos curtos têm melhor desempenho como Meta Titles.", "link_title_description": "Títulos curtos têm melhor desempenho como Meta Titles.",
"link_title_placeholder": "Inquérito de Feedback do Cliente",
"preview_image": "Pré-visualização da imagem", "preview_image": "Pré-visualização da imagem",
"preview_image_description": "Imagens de paisagem com tamanhos pequenos (<4MB) apresentam melhor desempenho.", "preview_image_description": "Imagens de paisagem com tamanhos pequenos (<4MB) apresentam melhor desempenho.",
"title": "Definições de ligação" "title": "Definições de ligação"

View File

@@ -141,7 +141,6 @@
"apply_filters": "Aplică filtre", "apply_filters": "Aplică filtre",
"are_you_sure": "Ești sigur?", "are_you_sure": "Ești sigur?",
"attributes": "Atribute", "attributes": "Atribute",
"avatar": "Avatar",
"back": "Înapoi", "back": "Înapoi",
"billing": "Facturare", "billing": "Facturare",
"booked": "Rezervat", "booked": "Rezervat",
@@ -1111,9 +1110,7 @@
}, },
"profile": { "profile": {
"account_deletion_consequences_warning": "Consecințele ștergerii contului", "account_deletion_consequences_warning": "Consecințele ștergerii contului",
"avatar_update_failed": "Actualizarea avatarului a eșuat. Vă rugăm să încercați din nou.",
"backup_code": "Cod de rezervă", "backup_code": "Cod de rezervă",
"change_image": "Schimbă imaginea",
"confirm_delete_account": "Șterge contul tău cu toate informațiile personale și datele tale", "confirm_delete_account": "Șterge contul tău cu toate informațiile personale și datele tale",
"confirm_delete_my_account": "Șterge Contul Meu", "confirm_delete_my_account": "Șterge Contul Meu",
"confirm_your_current_password_to_get_started": "Confirmaţi parola curentă pentru a începe.", "confirm_your_current_password_to_get_started": "Confirmaţi parola curentă pentru a începe.",
@@ -1124,17 +1121,13 @@
"email_change_initiated": "Cererea dvs. de schimbare a e-mailului a fost inițiată.", "email_change_initiated": "Cererea dvs. de schimbare a e-mailului a fost inițiată.",
"enable_two_factor_authentication": "Activează autentificarea în doi pași", "enable_two_factor_authentication": "Activează autentificarea în doi pași",
"enter_the_code_from_your_authenticator_app_below": "Introduceți codul din aplicația dvs. de autentificare mai jos.", "enter_the_code_from_your_authenticator_app_below": "Introduceți codul din aplicația dvs. de autentificare mai jos.",
"file_size_must_be_less_than_10mb": "Dimensiunea fișierului trebuie să fie mai mică de 10MB.",
"invalid_file_type": "Tip de fișier invalid. Sunt permise numai fișiere JPEG, PNG și WEBP.",
"lost_access": "Acces pierdut", "lost_access": "Acces pierdut",
"or_enter_the_following_code_manually": "Sau introduceți manual următorul cod:", "or_enter_the_following_code_manually": "Sau introduceți manual următorul cod:",
"organization_identification": "Ajutați organizația să vă identifice pe Formbricks",
"organizations_delete_message": "Ești singurul proprietar al acestor organizații, deci ele <b>vor fi șterse și ele.</b>", "organizations_delete_message": "Ești singurul proprietar al acestor organizații, deci ele <b>vor fi șterse și ele.</b>",
"permanent_removal_of_all_of_your_personal_information_and_data": "Ștergerea permanentă a tuturor informațiilor și datelor tale personale", "permanent_removal_of_all_of_your_personal_information_and_data": "Ștergerea permanentă a tuturor informațiilor și datelor tale personale",
"personal_information": "Informații personale", "personal_information": "Informații personale",
"please_enter_email_to_confirm_account_deletion": "Vă rugăm să introduceți {email} în câmpul următor pentru a confirma ștergerea definitivă a contului dumneavoastră:", "please_enter_email_to_confirm_account_deletion": "Vă rugăm să introduceți {email} în câmpul următor pentru a confirma ștergerea definitivă a contului dumneavoastră:",
"profile_updated_successfully": "Profilul dvs. a fost actualizat cu succes", "profile_updated_successfully": "Profilul dvs. a fost actualizat cu succes",
"remove_image": "Șterge imaginea",
"save_the_following_backup_codes_in_a_safe_place": "Salvează următoarele coduri de rezervă într-un loc sigur.", "save_the_following_backup_codes_in_a_safe_place": "Salvează următoarele coduri de rezervă într-un loc sigur.",
"scan_the_qr_code_below_with_your_authenticator_app": "Scanați codul QR de mai jos cu aplicația dvs. de autentificare.", "scan_the_qr_code_below_with_your_authenticator_app": "Scanați codul QR de mai jos cu aplicația dvs. de autentificare.",
"security_description": "Gestionează parola și alte setări de securitate, precum autentificarea în doi pași (2FA).", "security_description": "Gestionează parola și alte setări de securitate, precum autentificarea în doi pași (2FA).",
@@ -1144,10 +1137,8 @@
"two_factor_code": "Codul cu doi factori", "two_factor_code": "Codul cu doi factori",
"unlock_two_factor_authentication": "Deblocați autentificarea în doi pași cu un plan superior", "unlock_two_factor_authentication": "Deblocați autentificarea în doi pași cu un plan superior",
"update_personal_info": "Actualizează informațiile tale personale", "update_personal_info": "Actualizează informațiile tale personale",
"upload_image": "Încărcați imagine",
"warning_cannot_delete_account": "Ești singurul proprietar al acestei organizații. Te rugăm să transferi proprietatea către un alt membru mai întâi.", "warning_cannot_delete_account": "Ești singurul proprietar al acestei organizații. Te rugăm să transferi proprietatea către un alt membru mai întâi.",
"warning_cannot_undo": "Aceasta nu poate fi anulată", "warning_cannot_undo": "Aceasta nu poate fi anulată"
"you_must_select_a_file": "Trebuie să selectați un fișier."
}, },
"teams": { "teams": {
"add_members_description": "Adaugă membri în echipă și stabilește rolul lor.", "add_members_description": "Adaugă membri în echipă și stabilește rolul lor.",
@@ -1715,10 +1706,8 @@
"language_help_text": "Meta datele sunt încărcate pe baza valorii `lang` din URL.", "language_help_text": "Meta datele sunt încărcate pe baza valorii `lang` din URL.",
"link_description": "Descriere legătură", "link_description": "Descriere legătură",
"link_description_description": "Descrierile între 55-200 de caractere au cele mai bune performanțe.", "link_description_description": "Descrierile între 55-200 de caractere au cele mai bune performanțe.",
"link_description_placeholder": "Ajutați-ne să ne îmbunătățim împărtășindu-vă gândurile.",
"link_title": "Titlu link", "link_title": "Titlu link",
"link_title_description": "Titlurile scurte funcționează cel mai bine ca Meta Title-uri.", "link_title_description": "Titlurile scurte funcționează cel mai bine ca Meta Title-uri.",
"link_title_placeholder": "Chestionar de feedback al clienților",
"preview_image": "Previzualizare imagine", "preview_image": "Previzualizare imagine",
"preview_image_description": "Imaginile panoramice cu dimensiuni de fișier mici (<4MB) au cel mai bun randament.", "preview_image_description": "Imaginile panoramice cu dimensiuni de fișier mici (<4MB) au cel mai bun randament.",
"title": "Setări link" "title": "Setări link"

View File

@@ -141,7 +141,6 @@
"apply_filters": "套用篩選器", "apply_filters": "套用篩選器",
"are_you_sure": "您確定嗎?", "are_you_sure": "您確定嗎?",
"attributes": "屬性", "attributes": "屬性",
"avatar": "頭像",
"back": "返回", "back": "返回",
"billing": "帳單", "billing": "帳單",
"booked": "已預訂", "booked": "已預訂",
@@ -1111,9 +1110,7 @@
}, },
"profile": { "profile": {
"account_deletion_consequences_warning": "帳戶刪除後果", "account_deletion_consequences_warning": "帳戶刪除後果",
"avatar_update_failed": "頭像更新失敗。請再試一次。",
"backup_code": "備份碼", "backup_code": "備份碼",
"change_image": "變更圖片",
"confirm_delete_account": "刪除您的帳戶以及您的所有個人資訊和資料", "confirm_delete_account": "刪除您的帳戶以及您的所有個人資訊和資料",
"confirm_delete_my_account": "刪除我的帳戶", "confirm_delete_my_account": "刪除我的帳戶",
"confirm_your_current_password_to_get_started": "確認您目前的密碼以開始使用。", "confirm_your_current_password_to_get_started": "確認您目前的密碼以開始使用。",
@@ -1124,17 +1121,13 @@
"email_change_initiated": "您的 email 更改請求已啟動。", "email_change_initiated": "您的 email 更改請求已啟動。",
"enable_two_factor_authentication": "啟用雙重驗證", "enable_two_factor_authentication": "啟用雙重驗證",
"enter_the_code_from_your_authenticator_app_below": "在下方輸入您驗證器應用程式中的程式碼。", "enter_the_code_from_your_authenticator_app_below": "在下方輸入您驗證器應用程式中的程式碼。",
"file_size_must_be_less_than_10mb": "檔案大小必須小於 10MB。",
"invalid_file_type": "無效的檔案類型。僅允許 JPEG、PNG 和 WEBP 檔案。",
"lost_access": "無法存取", "lost_access": "無法存取",
"or_enter_the_following_code_manually": "或手動輸入下列程式碼:", "or_enter_the_following_code_manually": "或手動輸入下列程式碼:",
"organization_identification": "協助您的組織在 Formbricks 上識別您",
"organizations_delete_message": "您是這些組織的唯一擁有者,因此它們也 <b>將被刪除。</b>", "organizations_delete_message": "您是這些組織的唯一擁有者,因此它們也 <b>將被刪除。</b>",
"permanent_removal_of_all_of_your_personal_information_and_data": "永久移除您的所有個人資訊和資料", "permanent_removal_of_all_of_your_personal_information_and_data": "永久移除您的所有個人資訊和資料",
"personal_information": "個人資訊", "personal_information": "個人資訊",
"please_enter_email_to_confirm_account_deletion": "請在以下欄位中輸入 '{'email'}' 以確認永久刪除您的帳戶:", "please_enter_email_to_confirm_account_deletion": "請在以下欄位中輸入 '{'email'}' 以確認永久刪除您的帳戶:",
"profile_updated_successfully": "您的個人資料已成功更新", "profile_updated_successfully": "您的個人資料已成功更新",
"remove_image": "移除圖片",
"save_the_following_backup_codes_in_a_safe_place": "將下列備份碼儲存在安全的地方。", "save_the_following_backup_codes_in_a_safe_place": "將下列備份碼儲存在安全的地方。",
"scan_the_qr_code_below_with_your_authenticator_app": "使用您的驗證器應用程式掃描下方的 QR 碼。", "scan_the_qr_code_below_with_your_authenticator_app": "使用您的驗證器應用程式掃描下方的 QR 碼。",
"security_description": "管理您的密碼和其他安全性設定,例如雙重驗證 (2FA)。", "security_description": "管理您的密碼和其他安全性設定,例如雙重驗證 (2FA)。",
@@ -1144,10 +1137,8 @@
"two_factor_code": "雙重驗證碼", "two_factor_code": "雙重驗證碼",
"unlock_two_factor_authentication": "使用更高等級的方案解鎖雙重驗證", "unlock_two_factor_authentication": "使用更高等級的方案解鎖雙重驗證",
"update_personal_info": "更新您的個人資訊", "update_personal_info": "更新您的個人資訊",
"upload_image": "上傳圖片",
"warning_cannot_delete_account": "您是此組織的唯一擁有者。請先將所有權轉讓給其他成員。", "warning_cannot_delete_account": "您是此組織的唯一擁有者。請先將所有權轉讓給其他成員。",
"warning_cannot_undo": "此操作無法復原", "warning_cannot_undo": "此操作無法復原"
"you_must_select_a_file": "您必須選取檔案。"
}, },
"teams": { "teams": {
"add_members_description": "將成員新增至團隊並確定其角色。", "add_members_description": "將成員新增至團隊並確定其角色。",
@@ -1715,10 +1706,8 @@
"language_help_text": "中 繼資料 會 根據 URL 中 的 `lang` 值 載入。", "language_help_text": "中 繼資料 會 根據 URL 中 的 `lang` 值 載入。",
"link_description": "連結描述", "link_description": "連結描述",
"link_description_description": "描述在 55 - 200 個字符之間的表現最好。", "link_description_description": "描述在 55 - 200 個字符之間的表現最好。",
"link_description_placeholder": "幫助 我們 改善 , 分享 您 的 想法 。",
"link_title": "連結標題", "link_title": "連結標題",
"link_title_description": "短 標題 在 Meta Titles 中表現最佳。", "link_title_description": "短 標題 在 Meta Titles 中表現最佳。",
"link_title_placeholder": "顧客 回饋 調查",
"preview_image": "預覽 圖片", "preview_image": "預覽 圖片",
"preview_image_description": "景觀 圖片 檔案 大小 小於 4MB 效果 最佳。", "preview_image_description": "景觀 圖片 檔案 大小 小於 4MB 效果 最佳。",
"title": "連結 設定" "title": "連結 設定"

View File

@@ -765,7 +765,7 @@ export function Survey({
<LanguageSwitch <LanguageSwitch
surveyLanguages={localSurvey.languages} surveyLanguages={localSurvey.languages}
setSelectedLanguageCode={setselectedLanguage} setSelectedLanguageCode={setselectedLanguage}
hoverColor={styling.inputColor?.light ?? "#000000"} hoverColor={styling.inputColor?.light ?? "#f8fafc"}
borderRadius={styling.roundness ?? 8} borderRadius={styling.roundness ?? 8}
/> />
)} )}
@@ -776,7 +776,7 @@ export function Survey({
{isCloseButtonVisible && ( {isCloseButtonVisible && (
<SurveyCloseButton <SurveyCloseButton
onClose={onClose} onClose={onClose}
hoverColor={styling.inputColor?.light ?? "#000000"} hoverColor={styling.inputColor?.light ?? "#f8fafc"}
borderRadius={styling.roundness ?? 8} borderRadius={styling.roundness ?? 8}
/> />
)} )}