Skip to content

Commit

Permalink
dumili: Add some translations, include web translations
Browse files Browse the repository at this point in the history
  • Loading branch information
bperel committed Nov 8, 2024
1 parent 3e1b36e commit 7cf1665
Show file tree
Hide file tree
Showing 11 changed files with 66 additions and 34 deletions.
8 changes: 7 additions & 1 deletion apps/dumili/eslint.config.mjs
Original file line number Diff line number Diff line change
Expand Up @@ -70,12 +70,18 @@ export default [
],

"@intlify/vue-i18n/no-deprecated-i18n-component": "off",
"@intlify/vue-i18n/no-raw-text": [
"warn",
{
ignoreText: ["DuMILi", "DucksManager", "OK", "11zon.com"],
},
],
},

settings: {
"vue-i18n": {
localeDir: {
pattern: "./translations/*.json",
pattern: ["./translations/*.json", "../web/translations/*.json"],
localeKey: "file",
},
},
Expand Down
2 changes: 1 addition & 1 deletion apps/dumili/src/App.vue
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
<template>
<b-container fluid class="p-2 border-bottom">
<h2>DuMILi</h2>
<h3>DucksManager Inducks Little helper</h3>
<h3>{{ $t("DucksManager Inducks Little helper") }}</h3>
</b-container>

<b-container
Expand Down
14 changes: 7 additions & 7 deletions apps/dumili/src/components/Entry.vue
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@
:on-click-rerun="() => runKumiko(entry.id)"
@click="showAiDetectionsOn = entry.id"
>
<b>{{ $t("Types d'histoire déduits") }}</b>
<b>{{ $t("Types d'entrées déduits pour les pages") }}</b>
<table-results
:data="
pagesWithInferredKinds.map(({ page, ...inferredData }) => ({
Expand All @@ -33,7 +33,7 @@
}))
"
/><br />
<b>{{ $t("Type d'histoire déduit") }}</b>
<b>{{ $t("Type d'entrée déduit") }}</b>
{{
storyKinds.find(({ code }) => code === storyKindAiSuggestion?.kind)
?.label
Expand All @@ -48,7 +48,7 @@
@click="showAiDetectionsOn = entry.id"
>
<template v-if="storyAiSuggestions.length">
${{ $t("Résultats OCR:") }}
{{ $t("Résultats OCR:") }}
<table-results :data="pages[0].aiOcrResults" />
{{ $t("Histoires potentielles:") }}
<table-results
Expand All @@ -58,9 +58,9 @@
title: storyDetails[storycode].title,
}))
" /></template
><template v-else
>${{ $t("Pas de résultats OCR") }}</template
></ai-tooltip
><template v-else>{{
$t("Pas de résultats OCR")
}}</template></ai-tooltip
>
</b-col>
<b-col col cols="5" class="flex-column">
Expand Down Expand Up @@ -126,7 +126,7 @@ const entry = defineModel<FullEntry>({ required: true });
const pagesWithInferredKinds = computed(() =>
getEntryPages(indexation.value!, entry.value.id).map((page) => ({
page,
"inferred page story kind": storyKinds.find(
[$t("Type d'entrée déduit pour la page")]: storyKinds.find(
({ code }) => code === page.aiKumikoInferredStoryKind,
)?.label,
})),
Expand Down
2 changes: 1 addition & 1 deletion apps/dumili/src/components/Gallery.vue
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@
</div>
</b-col>
</b-row>
<b-container v-else>{{ $t("Loading...") }}</b-container>
<b-container v-else>{{ $t("Chargement...") }}</b-container>
</b-container>
</template>
<script lang="ts" setup>
Expand Down
2 changes: 1 addition & 1 deletion apps/dumili/src/components/Issue.vue
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
<slot name="title-suffix" />
<slot />
</div>
<div v-else>Numéro inconnu</div>
<div v-else>{{ $t("Numéro inconnu") }}</div>
</template>

<script setup lang="ts">
Expand Down
9 changes: 5 additions & 4 deletions apps/dumili/src/components/IssueSelect.vue
Original file line number Diff line number Diff line change
Expand Up @@ -20,13 +20,14 @@
<template v-if="currentCountrycode && currentPublicationcode">
<b-form-input
v-model="currentIssuenumber"
placeholder="Entrez le numéro"
:placeholder="$t('Entrez le numéro')"
:state="isValid"
/>
<div class="invalid-feedback">
<template v-if="['', undefined].includes(currentIssuenumber)"
>Veuillez entrer le numéro</template
><template v-else> Ce numéro est déjà référencé !</template>
<template v-if="['', undefined].includes(currentIssuenumber)">{{
$t("Veuillez entrer le numéro")
}}</template
><template v-else>{{ $t("Ce numéro est déjà référencé !") }}</template>
</div>
</template>
<b-button
Expand Down
10 changes: 6 additions & 4 deletions apps/dumili/src/components/IssueSuggestionModal.vue
Original file line number Diff line number Diff line change
Expand Up @@ -11,9 +11,11 @@
@cancel.prevent="rejectAllIssueSuggestions"
>
<div class="m-3">
Dumili a trouvé des couvertures existantes ressemblant à la vôtre.
Sélectionnez la couverture qui ressemble le plus à la vôtre.<br />Si
aucune ne ressemble,cliquez sur "Annuler".
{{
$t(
"Dumili a trouvé des couvertures existantes ressemblant à la vôtre. Sélectionnez la couverture qui ressemble le plus à la vôtre.",
)
}}<br />{{ $t('Si aucune ne ressemble,cliquez sur "Annuler".') }}
</div>
<Gallery
v-slot="{ issuecode }"
Expand Down Expand Up @@ -94,7 +96,7 @@ const acceptIssueSuggestion = async (issuecode: string) => {
issuecode,
publicationcode,
issuenumber,
source: "ai",
isChosenByAi: true,
});
await indexationSocket.value!.services.acceptIssueSuggestion(suggestionId);
selectedExistingCoverIssuecode.value = null;
Expand Down
2 changes: 1 addition & 1 deletion apps/dumili/src/components/TableOfContents.vue
Original file line number Diff line number Diff line change
Expand Up @@ -54,7 +54,7 @@
}))
"
/>
<b>{{ $t("Inferred page story kind") }}</b>
<b>{{ $t("Type d'entrée déduit pour la page") }}</b>
{{
storyKinds.find(
({ code }) => code === aiKumikoInferredStoryKind,
Expand Down
2 changes: 1 addition & 1 deletion apps/dumili/src/composables/useHint.ts
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ export default () => {
await Promise.all(
results.covers.map(({ issuecode }) =>
indexationSocket.value!.services.createIssueSuggestion({
source: "ai",
isChosenByAi: true,
...issuecodeDetails.value[issuecode]!,
}),
),
Expand Down
35 changes: 22 additions & 13 deletions apps/dumili/src/pages/index.vue
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
<template>
<b-container>
<h4 class="sticky-top">Indexations en cours</h4>
<h4 class="sticky-top">{{ $t("Indexations en cours") }}</h4>
<template v-if="currentIndexations">
<b-row align-h="center">
<b-col
Expand All @@ -15,19 +15,21 @@
class="d-flex flex-column align-items-center border"
>
<b-img :src="pages[0]?.url" fluid thumbnail />
Numéro inconnu
{{ $t("Numéro inconnu") }}
</router-link>
</b-col>
</b-row>
<h4 v-if="!currentIndexations.length" fluid>
Aucune indexation en cours
{{ $t("Aucune indexation en cours") }}
</h4></template
>
<template v-else>Loading...</template></b-container
<template v-else>{{ $t("Chargement...") }}</template></b-container
>
<b-container fluid class="position-absolute bottom-0 start-0">
<div>
<b-button @click="modal = !modal">Nouvelle indexation</b-button>
<b-button @click="modal = !modal">{{
$t("Nouvelle indexation")
}}</b-button>
</div>
<b-modal
v-if="stepNumber === 0"
Expand All @@ -40,17 +42,24 @@
@ok.prevent="uploadType = 'all'"
@cancel.prevent="uploadType = 'some'"
>
De quelles pages du numéro que vous souhaitez indexer possédez vous des
scans ?
{{
$t(
"De quelles pages du numéro que vous souhaitez indexer possédez vous des scans ?",
)
}}
<b-alert variant="info" model-value :dismissible="false" class="mt-3"
>Si vous posséedez les pages du magazine avec le format PDF,
><i18n-t
keypath="Si vous possédez les pages du magazine avec le format PDF,
assurez-vous que celui-ci ait une taille de fichier de 10 MB au maximum.
Si ce n'est pas le cas, vous pouvez utiliser un outil tel que
<a href="https://bigpdf.11zon.com/en/compress-pdf/compress-pdf-to-10mb"
>11zon.com</a
Si ce n'est pas le cas, vous pouvez utiliser un outil tel que {link} pour compresser votre fichier de telle sorte qu'il fasse moins de 10 MB."
>
pour compresser votre fichier de telle sorte qu'il fasse moins de 10
MB.</b-alert
<template #link
><a
href="https://bigpdf.11zon.com/en/compress-pdf/compress-pdf-to-10mb"
>11zon.com</a
></template
>
</i18n-t></b-alert
>
</b-modal>
<upload-widget
Expand Down
14 changes: 14 additions & 0 deletions apps/dumili/translations/messages.en.json
Original file line number Diff line number Diff line change
@@ -1,19 +1,33 @@
{
"Ajouter une entrée": "Add an entry",
"Aucun résultat.": "No result.",
"Aucune indexation en cours": "No ongoing indexation",
"Cases détectées": "Detected panels",
"Contenu inconnu": "Unknown content",
"Détections AI": "AI detections",
"Editeur de texte": "Text editor",
"Envoyer des images de pages": "Upload page files",
"Galerie des pages": "Gallery",
"Histoires potentielles:": "Potential stories:",
"Indexations en cours": "Ongoing indexations",
"Livre": "Book",
"Nouvelle indexation": "New indexation",
"Numéro inconnu": "Unknown issue",
"Page": "Page",
"Personnaliser...": "Customize...",
"Pas de résultats OCR": "No OCR results",
"Rechercher...": "Search...",
"Résultats OCR:": "OCR results:",
"Sans titre": "Untitled.",
"Sélectionner...": "Select...",
"Sélectionnez un pays": "Select a country",
"Titre de l'histoire": "Story title",
"Type d'entrée déduit": "Inferred story kind",
"Type d'entrée déduit pour la page": "Inferred page story kind",
"Types d'entrées déduits pour les pages": "Inferred page story kinds",
"Type inconnu": "Unknown type",
"Vous devez spécifier une publication et un numéro pour continuer": "You must specify a publication and an issue number to continue",
"partie": "part",
"{numberOfPanels} cases trouvées": "{numberOfPanels} detected panels",
"{numberOfStories} histoires trouvées avec ces mots-clés": "{numberOfStories} stories found with these keywords",
"{textNumber} textes trouvés": "{textNumber} detected texts"
Expand Down

0 comments on commit 7cf1665

Please sign in to comment.