ui: Last translations

This commit is contained in:
nemunaire 2023-01-09 11:39:52 +01:00
parent feebf1dca9
commit 70b252ec95
9 changed files with 143 additions and 129 deletions

View File

@ -8,11 +8,11 @@
const dispatch = createEventDispatcher();
export let flush = false;
export let selectedGroup: string|null = null;
export let selectedGroup: string | null = null;
function selectGroup(event: CustomEvent<string>) {
if (selectedGroup && selectedGroup == event.detail) {
selectedGroup = "";
if (selectedGroup != null && selectedGroup == event.detail) {
selectedGroup = null;
} else {
selectedGroup = event.detail;
dispatch("click", selectedGroup);
@ -28,7 +28,7 @@
on:click={selectGroup}
let:item={item}
>
{#if item === 'undefined'}
{#if item === '' || item === 'undefined'}
{$t('domaingroups.no-group')}
{:else}
{item}

View File

@ -22,25 +22,25 @@
import type { Domain } from '$lib/model/domain';
import type { Provider } from '$lib/model/provider';
import { domains, refreshDomains } from '$lib/stores/domains';
import { providers, refreshProviders, refreshProvidersSpecs } from '$lib/stores/providers';
import { providers, providersSpecs, refreshProviders, refreshProvidersSpecs } from '$lib/stores/providers';
import { t } from '$lib/translations';
refreshDomains();
if (!$domains) refreshDomains();
refreshProviders();
refreshProvidersSpecs();
if (!$providersSpecs) refreshProvidersSpecs();
let noDomainsList = false;
let filteredDomains: Array<Domain> = [];
let filteredProvider: Provider | null = null;
let filteredGroup = '';
export let filteredProvider: Provider | null = null;
let filteredGroup: string | null = null;
let isGroupModalOpen = false;
$: {
if ($domains) {
filteredDomains = $domains.filter(
(d) => (!filteredProvider || d.id_provider === filteredProvider._id) &&
(filteredGroup === '' || d.group === filteredGroup || (filteredGroup === 'undefined' && d.group === undefined))
(filteredGroup === null || d.group === filteredGroup || ((filteredGroup === '' || filteredGroup === 'undefined') && (d.group === '' || d.group === undefined)))
)
}
}
@ -52,9 +52,7 @@
<Container class="flex-fill pt-4 pb-5">
<h1 class="text-center mb-4">
{$t('common.welcome.start')}
<Logo height="40" />
{$t('common.welcome.end')}
{$t('common.welcome.start')}<Logo height="40" />{$t('common.welcome.end')}
</h1>
<Row>
@ -93,6 +91,7 @@
<div class="card-header d-flex justify-content-between">
{$t("provider.title")}
<Button
type="button"
size="sm"
color="light"
on:click={() => goto('/providers/new')}
@ -110,32 +109,34 @@
items={$providers}
noLabel
bind:selectedProvider={filteredProvider}
on:new-provider={() => goto('/providers/new')}
/>
{/if}
</Card>
<Card
v-if="$refs.zlist && !$refs.zlist.isLoading"
no-body
class="mb-3"
>
<div class="card-header d-flex justify-content-between">
{$t("domaingroups.title")}
<Button
size="sm"
color="light"
title={$t('domaingroups.manage')}
on:click={() => isGroupModalOpen = true}
>
<Icon name="grid-fill" />
</Button>
</div>
<DomainGroupList
flush
bind:selectedGroup={filteredGroup}
/>
<DomainGroupModal bind:isOpen={isGroupModalOpen} />
</Card>
{#if $domains && $domains.length}
<Card
class="mb-3"
>
<div class="card-header d-flex justify-content-between">
{$t("domaingroups.title")}
<Button
type="button"
size="sm"
color="light"
title={$t('domaingroups.manage')}
on:click={() => isGroupModalOpen = true}
>
<Icon name="grid-fill" />
</Button>
</div>
<DomainGroupList
flush
bind:selectedGroup={filteredGroup}
/>
<DomainGroupModal bind:isOpen={isGroupModalOpen} />
</Card>
{/if}
</Col>
</Row>
</Container>

View File

@ -62,7 +62,7 @@
on:click={() => dispatch("delete-service")}
>
{#if deleteServiceInProgress}
<Spinner label="Spinning" size="sm" />
<Spinner size="sm" />
{/if}
{$t('service.delete')}
</Button>

View File

@ -73,7 +73,7 @@
{#if !items || $providersSpecs == null}
<div class="d-flex gap-2 align-items-center justify-content-center my-3">
<Spinner color="primary" label="Spinning" class="mr-3" /> Retrieving your providers...
<Spinner color="primary" label="Spinning" class="mr-3" /> {$t("wait.retrieving-providers")}
</div>
{:else}
<HListGroup
@ -85,8 +85,10 @@
on:click={selectProvider}
let:item={item}
>
<div slot="empty" class="d-flex justify-content-center align-items-center gap-1">
You have no provider defined currently. Try <button class="btn btn-link p-0" on:click|preventDefault={() => dispatch('new-provider')}>adding one</button>!
<div slot="empty">
<form on:submit|preventDefault={() => dispatch('new-provider')}>
{@html $t('provider.empty', {"action": `<button type="submit" class="btn btn-link p-0">${$t('provider.empty-action')}</button>`})}
</form>
</div>
<div class="d-flex flex-fill justify-content-between" style="max-width: 100%">
<div class="d-flex" style="min-width: 0">
@ -98,7 +100,7 @@
{item._comment}
</div>
{:else}
<em>No name</em>
<em>{$t('provider.no-name')}</em>
{/if}
</div>
{#if !(noLabel && noDropdown)}
@ -109,7 +111,7 @@
class="mx-1"
color={domain_in_providers[item._id] > 0 ? 'success' : 'danger'}
>
{domain_in_providers[item._id]} domain{#if domain_in_providers[item._id] > 1}s{/if} associated
{$t('provider.associations', {"count": domain_in_providers[item._id]})}
</Badge>
{#if $providersSpecs[item._srctype]}
<Badge

View File

@ -6,6 +6,7 @@
import MapEntry from '$lib/components/resources/mapentry.svelte';
import type { Field } from '$lib/model/custom_form';
import { t } from '$lib/translations';
const re = /^map\[(.*)\]\*?(.*)$/;
@ -61,7 +62,7 @@
{/each}
{:else}
<div class="my-2 text-center">
No {specs.label}
{$t('common.no-thing', {"thing": specs.label})}
</div>
{/if}
{#if !("" in value)}
@ -71,7 +72,7 @@
on:click={() => value[""] = { }}
>
<Icon name="plus" />
Add {specs.label}
{$t('common.add-new-thing', {"thing": specs.label})}
</Button>
{/if}
{/if}

View File

@ -9,6 +9,7 @@
import { getServiceSpec } from '$lib/api/service_specs';
import ResourceInput from '$lib/components/ResourceInput.svelte';
import type { Field } from '$lib/model/custom_form';
import { t } from '$lib/translations';
export let edit = false;
export let index: string;
@ -114,7 +115,7 @@
{:else}
<tr>
<td colspan={(linespecs?linespecs.length:1)+(edit?1:0)} class="fst-italic text-center">
No content
{$t('common.no-content')}
</td>
</tr>
{/if}
@ -131,7 +132,7 @@
on:click={addLine}
>
<Icon name="plus" />
New row
{$t('common.new-row')}
</Button>
</td>
</tr>

View File

@ -33,11 +33,15 @@
"continue": "Continue",
"create-thing": "Create {{thing}}",
"delete": "Delete",
"delete-thing": "Delete {{thing}}",
"domain": "Domain or subdomain",
"edit": "Edit",
"field": "Field",
"go": "Go!",
"name": "Name",
"no-content": "No content",
"no-thing": "No {{thing}}",
"new-row": "New row",
"password": "Password",
"rename": "Rename",
"resolver": "Resolver",
@ -108,9 +112,6 @@
"provider": "Zone hosted on",
"title": "View zone"
},
"views": {
"provider-parameters": "Hosting parameters"
},
"alias-creation": "Add an alias pointing to {{domain}}:",
"alias-creation-sample": "This will create the alias:",
"placeholder-new": "my.new.domain.",
@ -223,15 +224,19 @@
"add": "Add service",
"all": "All",
"already": "Already managed",
"delete": "Delete the service",
"update": "Update the service",
"delete": "Delete this service",
"update": "Update this service",
"form-new": "Add a new service to {{domain}}"
},
"provider": {
"associations": "{{count:eq; 0:no domain associated; 1:{{count}} domain associated; default:{{count}} domains associated}}",
"check-config": "Check your provider configuration",
"delete": "Delete this domain provider",
"empty": "You have no provider defined currently. Try {{action}}!",
"empty-action": "adding one",
"find": "Can't find your domain provider here?",
"name-your": "Name your domain's provider",
"no-name": "No name",
"provider": "Domains living on {{provider}}",
"kind": "domain's provider",
"select-provider": "First, you need to select the provider hosting your domain:",
@ -260,7 +265,8 @@
"validating": "Validating domain …",
"wait": "Please wait",
"retrieving-domains": "Retrieving your domains...",
"retrieving-provider": "Retrieving hosting provider information..."
"retrieving-provider": "Retrieving hosting provider information...",
"retrieving-providers": "Retrieving your providers..."
},
"settings": {
"fieldhint": {

View File

@ -1,29 +1,29 @@
{
"account": {
"ask-have": "Vous n'avez pas encore de compte sur notre sympathique plateforme ?",
"ask-have": "Vous n'avez pas encore de compte sur notre sympathique plateforme?",
"delete": {
"delete": "Supprimer mon compte",
"deleted": "Compte supprimé",
"confirm": "Si vous souhaitez supprimer votre compte et toutes les données qui y sont associées, appuyez sur le bouton ci-dessous :",
"confirm": "Si vous souhaitez supprimer votre compte et toutes les données qui y sont associées, appuyez sur le bouton ci-dessous:",
"confirm-twice": "En confirmant la suppression, vous supprimerez définitivement et irrévocablement votre compte de notre base de données et perdrez votre accès à notre interface de gestion facile de vos domaines.",
"confirm-password": "Pour vous assurer qu'il s'agit bien de vous, veuillez entrer votre mot de passe :",
"confirm-password": "Pour vous assurer qu'il s'agit bien de vous, veuillez entrer votre mot de passe:",
"consequence": "Vos domaines détenus sur d'autres plateformes ne seront pas affectés par la suppression, ils continueront à répondre avec l'ensemble des données actuelles.",
"remain-data": "Pour des raisons techniques, votre compte sera supprimé juste après votre validation, mais certaines données de votre compte persisteront jusqu'au prochain nettoyage de la base de données.",
"success": "Votre compte a été supprimé avec succès. Nous espérons vous revoir bientôt."
},
"join": "Inscrivez-vous maintenant !",
"ready-login": "Prêt à entrer !",
"join": "Inscrivez-vous maintenant!",
"ready-login": "Prêt à entrer!",
"signup": {
"already": "Déjà inscrit ?",
"join-call": "Rejoignez notre sympathique service en moins de deux minutes !",
"already": "Déjà inscrit?",
"join-call": "Rejoignez notre sympathique service en moins de deux minutes!",
"address-why": "Nous utiliserons votre adresse pour vous {{identify}} et pour vous contacter en cas d'{{security-operations}}.",
"identify": "identifier",
"security-operations": "événements liés à la sécurité",
"receive-update": "Tenez-moi informé des futures améliorations",
"signup": "Je m'inscris !",
"success": "Votre compte a été créé avec succès !"
"signup": "Je m'inscris!",
"success": "Votre compte a été créé avec succès!"
},
"see-again": "Ravi de vous revoir !"
"see-again": "Ravi de vous revoir!"
},
"common": {
"add": "Ajouter",
@ -33,26 +33,29 @@
"continue": "Continuer",
"create-thing": "Créer {{thing}}",
"delete": "Supprimer",
"delete-thing": "Supprimer {{thing}}",
"domain": "Domaine ou sous-domaine",
"edit": "Modifier",
"field": "Champ",
"go": "C'est parti !",
"go": "C'est parti!",
"name": "Nom",
"no-content": "Pas de contenu",
"no-thing": "Aucun {{thing}}",
"password": "Mot de passe",
"rename": "Renommer",
"resolver": "Résolveur",
"run": "Lancer l'opération !",
"run": "Lancer l'opération!",
"spinning": "Chargement",
"welcome": {
"start": "Bienvenue sur ",
"end": "!"
},
"help": "Besoin d'aide ?",
"help": "Besoin d'aide?",
"records": "{{n:eq; 0:aucun enregistrement {{type}}; 1:enregistrement {{type}}; default:enregistrements {{type}}}}",
"survey": "Une remarque ? un commentaire à partager ? N'hésitez pas à nous écrire !"
"survey": "Une remarque? un commentaire à partager? N'hésitez pas à nous écrire!"
},
"domains": {
"kind": "domaine",
"kind": "un domaine",
"actions": {
"reimport": "Importer à nouveau",
"view": "Voir ma zone",
@ -60,9 +63,9 @@
"rollback": "Revenir à cette version"
},
"alert": {
"remove": "Cette action retirera définitivement le domaine {{domain}} de votre liste. L'historique et les zones abstraites seront supprimés. Cela ne supprimera ni n'affectera votre domaine auprès de votre fournisseur, ni ne modifiera ce qui est actuellement diffusé. Cela ne concerne seulement que ce que vous voyez dans happyDomain. Êtes-vous certain de vouloir continuer ?",
"remove": "Cette action retirera définitivement le domaine {{domain}} de votre liste. L'historique et les zones abstraites seront supprimés. Cela ne supprimera ni n'affectera votre domaine auprès de votre fournisseur, ni ne modifiera ce qui est actuellement diffusé. Cela ne concerne seulement que ce que vous voyez dans happyDomain. Êtes-vous certain de vouloir continuer?",
"unable-retrieve": {
"description": "Malheureusement, nous ne parvenons pas à obtenir les informations du domaine {{domain}} :",
"description": "Malheureusement, nous ne parvenons pas à obtenir les informations du domaine {{domain}}:",
"title": "Impossible de récupérer les informations du domaine"
}
},
@ -70,17 +73,17 @@
"add-a-service": "Ajouter un service",
"add-alias": "Ajout d'alias",
"add-an-alias": "Ajouter un alias",
"add-now": "Ajouter maintenant !",
"added-success": "Bravo ! {{domain}} a été ajouté. Vous pouvez désormais le gérer.",
"add-now": "Ajouter maintenant!",
"added-success": "Bravo! {{domain}} a été ajouté. Vous pouvez désormais le gérer.",
"apply": {
"additions": "{{count:eq; 0:pas d'ajout; 1:{{count}} ajout; default:{{count}} ajouts}}",
"button": "Appliquer les modifications",
"deletions": "{{count:eq; 0:pas de suppression; 1:{{count}} suppression; default:{{count}} suppressions}}",
"done": {
"title": "Zone propagée avec succès !",
"title": "Zone propagée avec succès!",
"description": "!"
},
"nochange": "Il n'y a pas de changement à faire ! Cette zone est synchronisée avec le serveur."
"nochange": "Il n'y a pas de changement à faire! Cette zone est synchronisée avec le serveur."
},
"attached-new": "Nouveau domaine lié à happyDomain!\n",
"create-new-key": "Créer une nouvelle clé {{id}}.",
@ -91,7 +94,7 @@
"history": "Historique",
"list": "Liste des domaines importables",
"n-aliases": "{{n:lt; 2:{{n}} alias; default:{{n}} alias}}",
"please-fill-fields": "Veuillez remplir les champs suivants :",
"please-fill-fields": "Veuillez remplir les champs suivants:",
"removal": "Confirmer la suppression du domaine",
"save-modifications": "Enregistrer ces modifications",
"stop": "Arrêter de gérer ce domaine",
@ -102,29 +105,19 @@
"live": "Enregistrements actifs",
"monitoring": "Suivi",
"summary": "Résumé",
"source": "Zone hébergée par",
"provider": "Zone hébergée par",
"title": "Voir la zone"
},
"views": {
"grid": {
"title": "Vue en grille (la plus lisible)",
"label": "Grille"
},
"list": {
"title": "Vue en liste (la plus rapide)",
"label": "Liste"
},
"source-parameters": "Paramètres d'hébergement",
"records": {
"title": "Liste avec les enregistrements (avancés)",
"label": "Enregistrements"
},
"as": "Voir comme :"
},
"alias-creation": "Ajouter un alias pointant sur {{domain}} :",
"alias-creation-sample": "Cela va créer cet alias :",
"alias-creation": "Ajouter un alias pointant sur {{domain}}:",
"alias-creation-sample": "Cela va créer cet alias:",
"placeholder-new": "mon.nouveau.domaine.",
"form-new-subdomain": "Ajout d'un sous-domaine sous {{domain}} :"
"form-new-subdomain": "Ajout d'un sous-domaine sous {{domain}}:"
},
"domaingroups": {
"manage": "Vos groupes de domaines",
"new": "Nouveau groupe",
"no-group": "Divers",
"title": "Vos groupes"
},
"email": {
"address": "Adresse électronique",
@ -132,12 +125,12 @@
"check-inbox": "Veuillez vérifier votre boîte de réception afin de valider votre adresse électronique.",
"new-confirmation": "Si vous avez besoin d'un nouveau courriel de confirmation, il vous suffit d'entrer votre adresse dans le formulaire ci-dessous.",
"validate-address": "Afin de valider votre adresse électronique, veuillez vérifier votre boîte de réception et suivre le lien contenu dans le message.",
"validated": "Votre nouvelle adresse e-mail est maintenant validée !"
"validated": "Votre nouvelle adresse e-mail est maintenant validée!"
},
"send-again": "Renvoyer le courriel de confirmation",
"send-recover": "Envoyez-moi un e-mail pour récupérer mon compte",
"sent": "Courriel de confirmation envoyé !",
"sent-recovery": "Envoi d'un courriel de récupération de mot de passe !",
"sent": "Courriel de confirmation envoyé!",
"sent-recovery": "Envoi d'un courriel de récupération de mot de passe!",
"recover": "Afin de récupérer votre compte, nous vous enverrons un courriel contenant un lien qui vous permettra de redéfinir votre mot de passe"
},
"errors": {
@ -155,20 +148,20 @@
"error": "Erreur",
"login": "Erreur de connexion",
"logout": "Erreur de déconnexion",
"occurs": "Une erreur se produit lorsque {{when}} !",
"occurs": "Une erreur se produit lorsque {{when}}!",
"password": "Le mot de passe est obligatoire",
"password-change": "Impossible de modifier votre mot de passe",
"password-match": "Le mot de passe et sa confirmation ne correspondent pas.",
"password-weak": "Le mot de passe doit être plus robuste : au moins 8 caractères incluant des chiffres, des minuscules et majuscules.",
"password-weak": "Le mot de passe doit être plus robuste: au moins 8 caractères incluant des chiffres, des minuscules et majuscules.",
"recovery": "Problème de récupération du mot de passe",
"resolve": "Une erreur s'est produite en essayant de résoudre le domaine.",
"registration": "Problème d'inscription",
"rr-add": "Une erreur se produit en ajoutant RR à la zone :",
"rr-delete": "Une erreur se produit en supprimant RR dans la zone :",
"source-delete": "Une erreur s'est produite lors de la suppression de la source",
"rr-add": "Une erreur se produit en ajoutant RR à la zone:",
"rr-delete": "Une erreur se produit en supprimant RR dans la zone:",
"provider-delete": "Une erreur s'est produite lors de la suppression de la référence au fournisseur d'hébergement",
"session": {
"title": "Délai d'authentification",
"content": "Session invalide, vous avez été déconnecté : {{err}}. Veuillez vous connecter à nouveau."
"content": "Session invalide, vous avez été déconnecté: {{err}}. Veuillez vous connecter à nouveau."
},
"settings-change": "Impossible de changer vos paramètres",
"account-no-auth": "Vous utilisez happyDomain sans authentification. Vous ne pouvez pas changer d'autre paramètre de votre compte.",
@ -176,7 +169,7 @@
},
"menu": {
"my-domains": "Mes domaines",
"my-sources": "Les hébergeurs de mes domaines",
"my-providers": "Les hébergeurs de mes domaines",
"dns-resolver": "Résolveur DNS",
"my-account": "Mon compte",
"logout": "Se déconnecter",
@ -187,7 +180,7 @@
"onboarding": {
"add-one": "ajouter un domaine",
"choose-configured": "choisir entre les fournisseurs déjà configurés ou {{action}}:",
"suggest-source": "choisir votre fournisseur",
"suggest-provider": "choisir votre fournisseur",
"use": "Utilisez {{happyDomain}} comme interface de remplacement de votre fournisseur de noms de domaine habituel. Il continuera à s'appuyer sur l'infrastructure de votre fournisseur, vous n'aurez qu'à profiter de notre interface simple. Dans un premier temps, {{first-step}}",
"no-sale": {
"title": "Je ne possède aucun domaine",
@ -214,10 +207,10 @@
"enter": "Entrez votre mot de passe actuel",
"enter-new": "Entrez votre nouveau mot de passe",
"fill": "Afin de récupérer votre compte, veuillez remplir le formulaire suivant, avec un nouveau mot de passe.",
"forgotten": "Mot de passe oublié ?",
"forgotten": "Mot de passe oublié?",
"new": "Nouveau mot de passe",
"redefine": "Redéfinir mon mot de passe",
"redefined": "Mot de passe redéfini avec succès !",
"redefined": "Mot de passe redéfini avec succès!",
"success": "Vous pouvez maintenant vous connecter avec votre nouveau mot de passe.",
"success-change": "Le mot de passe de votre compte a été modifié avec succès."
},
@ -226,18 +219,23 @@
"all": "Tous",
"already": "Déjà géré",
"delete": "Supprimer ce service",
"update": "Mettre à jour le service",
"update": "Mettre à jour ce service",
"form-new": "Ajout d'un service sur {{domain}}"
},
"source": {
"provider": {
"associations": "{{count:eq; 0:aucun domaine associé; 1:{{count}} domaine associé; default:{{count}} domaines associés}}",
"check-config": "Vérifiez la configuration de l'hébergeur",
"delete": "Supprimer cet hébergeur de domaines",
"find": "Vous ne trouvez pas votre hébergeur de domaines ici ?",
"empty": "Vous n'avez pas d'hébergeur enregistré pour le moment. Essayez d'en {{action}}!",
"empty-action": "ajouter un",
"find": "Vous ne trouvez pas votre hébergeur de domaines ici?",
"name-your": "Nommer cet hébergeur de domaines",
"source": "Domaines existant sur {{provider}}",
"kind": "L'hébergeur du domaine",
"select-provider": "Sélectionnez d'abord l'hébergeur de votre domaine :",
"source-name": "Nom de l'hébergeur",
"source-type": "Type d'hébergement",
"no-name": "Sans nom",
"provider": "Domaines existant sur {{provider}}",
"kind": "un hébergeur de domaines",
"select-provider": "Sélectionnez d'abord l'hébergeur de votre domaine:",
"provider-name": "Nom de l'hébergeur",
"provider-type": "Type d'hébergement",
"title": "Les hébergeurs de vos domaines",
"available-types": "Types de ressources disponibles",
"import-domains": "Importer tous les domaines",
@ -245,23 +243,24 @@
"update": "Mettre à jour l'hébergeur de domaines"
},
"upgrade": {
"title": "Une mise à jour est disponible !",
"title": "Une mise à jour est disponible!",
"content": "Une nouvelle version d'happyDomain est disponible. Pour l'activer, vous pouvez cliquer ici pour rafraîchir la page."
},
"wait": {
"asking-domains": "Demande en cours chez l'hébergeur des domaines existants ...",
"exporting": "Veuillez patienter pendant l'export de votre domaine ... ",
"formating": "Veuillez patienter pendant le formattage de votre zone ...",
"importing": "Veuillez patienter pendant l'import de votre domaine ...",
"asking-domains": "Demande en cours chez l'hébergeur des domaines existants...",
"exporting": "Veuillez patienter pendant l'export de votre domaine... ",
"formating": "Veuillez patienter pendant le formattage de votre zone...",
"importing": "Veuillez patienter pendant l'import de votre domaine...",
"loading": "Chargement du domaine",
"loading-account": "Chargement de votre compte",
"loading-record": "Chargement des enregistrements",
"retrieving-setting": "Récupération du formulaire de paramètrage de l'hôte ...",
"retrieving-setting": "Récupération du formulaire de paramètrage de l'hôte...",
"updating": "Mise à jour de l'hôte de votre domaine",
"validating": "Validation du domaine ...",
"wait": "Attendez",
"validating": "Validation du domaine...",
"wait": "Veuillez patienter",
"retrieving-domains": "Récupération de vos domaines...",
"retrieving-source": "Récupération des informations sur l'hébergement..."
"retrieving-provider": "Récupération des informations sur l'hébergeur...",
"retrieving-providers": "Récupération de vos hébergeurs..."
},
"settings": {
"fieldhint": {
@ -280,7 +279,7 @@
"grid": "Grille (la plus lisible)",
"list": "Liste (la plus rapide)",
"records": "Liste avec les enregistrements (avancés)",
"title": "Voir comme :"
"title": "Voir comme:"
}
},
"record": {
@ -301,11 +300,11 @@
"Weight": "Poids"
},
"resolver": {
"advanced": "Besoin de paramètres personnalisés ?",
"advanced": "Besoin de paramètres personnalisés?",
"custom": "Résolveur spécifique",
"custom-description": "Indiquez l'adresse (un nom de domaine ou une IP) du résolveur que vous souhaitez utiliser.",
"domain-description": "Indiquez le domaine dont vous souhaitez consulter les enregistrements. Par exemple, vous pouvez essayer {{domain}}.",
"field-description": "Quel type d'enregistrement DNS vous souhaitez voir. Par exemple : A est utilisé pour les IPv4, AAAA pour les IPv6, ....",
"field-description": "Quel type d'enregistrement DNS vous souhaitez voir. Par exemple: A est utilisé pour les IPv4, AAAA pour les IPv6,....",
"field-description-more-info": "Plus d'information ici",
"resolver-description": "Il s'agit du serveur à qui nous allons demander les informations.",
"ttl": "Temps de cache restant",

View File

@ -3,12 +3,16 @@ import type { Config } from 'sveltekit-i18n';
const { MODE } = import.meta.env;
interface Params {
action?: string;
id?: string;
domain?: string;
type?: string;
thing?: any;
identify?: any;
'security-operations'?: any;
happyDomain?: string;
thing?: string;
identify?: string;
provider?: string;
'security-operations'?: string;
'first-step'?: string;
n?: number;
count?: number;
// add more parameters that are used here