Skip to content

Commit de3ef4d

Browse files
translation improvements
1 parent 29a8068 commit de3ef4d

File tree

11 files changed

+75
-70
lines changed

11 files changed

+75
-70
lines changed

packages/app-builder/src/components/Scenario/Sanction/FieldSkipIfUnder.tsx

Lines changed: 15 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
import { useState } from 'react';
2-
import { useTranslation } from 'react-i18next';
2+
import { Trans, useTranslation } from 'react-i18next';
33
import { Input, Switch } from 'ui-design-system';
44

55
import { scenarioI18n } from '../scenario-i18n';
@@ -36,19 +36,21 @@ export const FieldSkipIfUnder = ({
3636
onBlur={onBlur}
3737
disabled={editor === 'view'}
3838
/>
39-
<span className="text-s">{t('scenarios:edit_sanction.ignore_check_if_under')}</span>
40-
<Input
41-
type="number"
42-
name={name}
43-
className="z-0 h-6 w-14 py-0"
44-
value={inputValue}
45-
min={0}
46-
onChange={handleInputChange}
47-
disabled={editor === 'view' || value === null}
39+
<Trans
40+
t={t}
41+
i18nKey="scenarios:edit_sanction.ignore_check_if_under"
42+
components={{
43+
NbNumbers: <Input
44+
type="number"
45+
name={name}
46+
className="z-0 h-6 w-14 py-0"
47+
value={inputValue}
48+
min={0}
49+
onChange={handleInputChange}
50+
disabled={editor === 'view' || value === null}
51+
/>
52+
}}
4853
/>
49-
<span className="text-s">
50-
{t('scenarios:edit_sanction.ignore_check_if_under.characters')}
51-
</span>
5254
</div>
5355
);
5456
};

packages/app-builder/src/components/Scenario/Sanction/FieldBlackListId.tsx renamed to packages/app-builder/src/components/Scenario/Sanction/ScreeningTermIgnoreList.tsx

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,27 +4,28 @@ import { Button, MenuCommand, Switch } from 'ui-design-system';
44
import { Icon } from 'ui-icons';
55

66
import { scenarioI18n } from '../scenario-i18n';
7+
import { FieldToolTip } from './FieldToolTip';
78

89
interface CustomList {
910
id: string;
1011
name: string;
1112
}
1213

13-
interface FieldBlackListIdProps {
14+
interface ScreeningTermIgnoreListProps {
1415
value?: string | null;
1516
onBlur: () => void;
1617
onChange: (value: string | null) => void;
1718
editor: 'view' | 'edit';
1819
customLists: CustomList[];
1920
}
2021

21-
export const FieldBlackListId = ({
22+
export const ScreeningTermIgnoreList = ({
2223
value,
2324
onBlur,
2425
onChange,
2526
editor,
2627
customLists,
27-
}: FieldBlackListIdProps) => {
28+
}: ScreeningTermIgnoreListProps) => {
2829
const { t } = useTranslation(scenarioI18n);
2930
const [selectedListId, setSelectedListId] = useState<string | null>(value ?? null);
3031
const [open, setOpen] = useState(false);
@@ -46,6 +47,9 @@ export const FieldBlackListId = ({
4647
disabled={editor === 'view'}
4748
/>
4849
<span className="text-s">{t('scenarios:edit_sanction.remove_terms_from_list')}</span>
50+
<FieldToolTip>
51+
{t('scenarios:edit_sanction.remove_terms_from_list.tooltip')}
52+
</FieldToolTip>
4953
</div>
5054
{value ? (
5155
<div className="flex flex-col gap-1">

packages/app-builder/src/locales/ar/scenarios.json

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -214,10 +214,9 @@
214214
"edit_sanction.entity_type.tooltip": "يستخدم هذا لتحديد نوع الكيان الذي تقوم بفحصه.",
215215
"edit_sanction.entity_type.vehicle": "عربة",
216216
"edit_sanction.global_settings": "الإعدادات العالمية",
217-
"edit_sanction.ignore_check_if_under": "تجاهل التحقق مما إذا كانت السلسلة الناتجة",
218-
"edit_sanction.ignore_check_if_under.characters": "الشخصيات",
219-
"edit_sanction.ignore_numbers": "تجاهل الأرقام",
220-
"edit_sanction.ignore_numbers.tooltip": "عند التمكين ، ستتم إزالة جميع الأحرف الرقمية من النص قبل المطابقة. \nيمكن أن يساعد ذلك في تقليل الإيجابيات الخاطئة الناجمة عن الأرقام في الأسماء أو العناوين أو المعرفات.",
217+
"edit_sanction.ignore_check_if_under": "لا تقوم بفحص إذا كان النص يحتوي على أقل من <NbNumbers /> أحرف:",
218+
"edit_sanction.exclude_numbers": "تجاهل الأرقام",
219+
"edit_sanction.exclude_numbers.tooltip": "عند التمكين ، ستتم إزالة جميع الأحرف الرقمية من النص قبل المطابقة. \nيمكن أن يساعد ذلك في تقليل الإيجابيات الخاطئة الناجمة عن الأرقام في الأسماء أو العناوين أو المعرفات.",
221220
"edit_sanction.nationality": "الجنسية",
222221
"edit_sanction.nationality_placeholder": "رمز الدولة",
223222
"edit_sanction.passport_number": "رقم جواز السفر",

packages/app-builder/src/locales/en/scenarios.json

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,7 @@
5454
"decision.score_based.title": "Score based decision",
5555
"delete_rule.content": "You are about to delete this rule. This action is irreversible, do you want to proceed ?",
5656
"delete_rule.title": "Delete this rule",
57-
"delete_sanction.content": "You are about to delete this screening. This action is irreversible, do you want to proceed ?",
57+
"delete_sanction.content": "You are about to delete this screening rule. This action is irreversible, do you want to proceed ?",
5858
"delete_sanction.title": "Delete this screening",
5959
"deployment_modal_success.activate.description": "The new version has been successfully activated and is now running on live data.",
6060
"deployment_modal_success.activate.title": "Version activated",
@@ -205,26 +205,26 @@
205205
"edit_sanction.country": "Country",
206206
"edit_sanction.country_placeholder": "Country code",
207207
"edit_sanction.default_value": "% (default to <Style>{{threshold}}%</Style> if left empty).",
208-
"edit_sanction.enable_entity_recognition": "Enable named entity recognition",
209-
"edit_sanction.enable_entity_recognition.tooltip": "Try to extract person or company names from a free form text field before using them for screening. If none are found, falls back to using the full text received. This is an experimental feature and may significantly increase the response time when requesting decisions.",
208+
"edit_sanction.enable_entity_recognition": "Enable AI name recognition",
209+
"edit_sanction.enable_entity_recognition.tooltip": "Use AI to extract person or company names from free-form text and use it for a more precise screening. This is an experimental feature and may significantly increase the response time when requesting decisions.",
210210
"edit_sanction.entity_type.heading": "What kind of entity are you screening for?",
211211
"edit_sanction.entity_type.organization": "Organization",
212212
"edit_sanction.entity_type.person": "Person",
213213
"edit_sanction.entity_type.thing": "Any type",
214214
"edit_sanction.entity_type.tooltip": "Screening against a specific type of entity will allow you to use more precise search terms, and will result in fewer false positives.",
215215
"edit_sanction.entity_type.vehicle": "Vehicle",
216216
"edit_sanction.global_settings": "Global Settings",
217-
"edit_sanction.ignore_check_if_under": "Ignore check if the resulting string is",
218-
"edit_sanction.ignore_check_if_under.characters": "characters or less",
219-
"edit_sanction.ignore_numbers": "Ignore numbers",
220-
"edit_sanction.ignore_numbers.tooltip": "When enabled, all numeric characters will be removed from the text before matching. This can help reduce false positives caused by numbers in names, addresses, or identifiers.",
217+
"edit_sanction.ignore_check_if_under": "Do not screen if the text contains less than <NbNumbers/> characters",
218+
"edit_sanction.exclude_numbers": "Exclude numbers",
219+
"edit_sanction.exclude_numbers.tooltip": "When enabled, all numeric characters will be removed from the text before matching. This can help reduce false positives caused by numbers in names, addresses, or identifiers.",
221220
"edit_sanction.nationality": "Nationality",
222221
"edit_sanction.nationality_placeholder": "Country code",
223222
"edit_sanction.passport_number": "Passport number",
224223
"edit_sanction.passport_number_placeholder": "Passport number",
225224
"edit_sanction.registrationnumber": "Registration number",
226225
"edit_sanction.registrationnumber_placeholder": "Registration number",
227-
"edit_sanction.remove_terms_from_list": "Ignore any terms from a list",
226+
"edit_sanction.remove_terms_from_list": "Exclude terms listed in a custom list",
227+
"edit_sanction.remove_terms_from_list.tooltip": "Enabling this will exclude of the screening any terms from the selected list. You need to create a custom list first, in the Lists section.",
228228
"edit_sanction.required_fields_disclaimer": "For effective screening, it is recommended to fill in at least the name or registration number for an organization/vehicle, or the name or ID number for a person.",
229229
"edit_sanction.select_list": "Select a list",
230230
"edit_sanction.similarity_score": "Minimum similarity score (%)",
@@ -347,7 +347,7 @@
347347
"sanction.match_settings.callout": "Choose information that should be checked.",
348348
"sanction.match_settings.no_empty": "You need to select at least one name or label",
349349
"sanction.match_settings.title": "Matching settings",
350-
"sanction.nudge": "Improve your rules with a screening based on OpenSanction API",
350+
"sanction.nudge": "Improve your detection with a screening rule based on OpenSanction data",
351351
"sanction.trigger_object.callout": "Determines whether the screening is relevant for each trigger object (<DocLink>learn more</DocLink>)",
352352
"scenarios.description": "A scenario is used to detect a certain type of risk, following specific business rules, for a specific triggering event.",
353353
"scheduled": "This scenario is scheduled and will run <ScheduleLocale>{{schedule}}</ScheduleLocale>.",

packages/app-builder/src/locales/fr/scenarios.json

Lines changed: 13 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -21,9 +21,9 @@
2121
"create_rule.draft_already_exist_2": "Vous pouvez conserver le brouillon existant et l'éditer",
2222
"create_rule.draft_already_exist_possibility": "Vous pouvez conserver le brouillon existant et l'éditer ou bien le remplacer par un nouveau brouillon basé sur la version sélectionnée",
2323
"create_rule.title": "Nouvelle règle",
24-
"create_sanction.default_name": "Chèque de sanction",
25-
"create_sanction.description": "Ajoutez un chèque de sanction au scénario",
26-
"create_sanction.title": "Ajouter un chèque de sanction",
24+
"create_sanction.default_name": "Filtrage des listes",
25+
"create_sanction.description": "Ajoutez une règle de filtrage au scénario",
26+
"create_sanction.title": "Ajouter un filtrage de listes",
2727
"create_scenario.callout": "Un scénario identifie un certain type de risque, déclenché par un événement spécifique (<DocLink>en savoir plus</DocLink>)",
2828
"create_scenario.description": "Description",
2929
"create_scenario.description_placeholder": "Ajouter une description",
@@ -54,8 +54,8 @@
5454
"decision.score_based.title": "Décision basée sur le score",
5555
"delete_rule.content": "Vous allez supprimer cette règle, cette action n'est pas réversible, voulez-vous continuer ?",
5656
"delete_rule.title": "Supprimer cette règle",
57-
"delete_sanction.content": "Vous êtes sur le point de supprimer ce chèque de sanction. \nCette action est irréversible, voulez-vous continuer?",
58-
"delete_sanction.title": "Supprimer ce chèque de sanction",
57+
"delete_sanction.content": "Vous êtes sur le point de supprimer cette règle de filtrage. Cette action est irréversible, voulez-vous continuer?",
58+
"delete_sanction.title": "Supprimer cette règle de filtrage",
5959
"deployment_modal_success.activate.description": "La nouvelle version a été activée avec succès et fonctionne maintenant sur des données en direct.",
6060
"deployment_modal_success.activate.title": "Version activée",
6161
"deployment_modal_success.deactivate.description": "La version active a été désactivée avec succès, le scénario a cessé de fonctionner",
@@ -205,27 +205,26 @@
205205
"edit_sanction.country": "Pays",
206206
"edit_sanction.country_placeholder": "Code pays",
207207
"edit_sanction.default_value": "% (<Style>{{threshold}}%</Style> si laissé vide).",
208-
"edit_sanction.enable_entity_recognition": "Activer la reconnaissance d'entités nommées",
209-
"edit_sanction.enable_entity_recognition.tooltip": "Détecter les entités nommées (noms de personnes, organisations, véhicules, etc.) dans le texte libre reçu. Si aucune n'est trouvée, le texte brut initial est utilisé par défaut. Cette fonctionnalité est expérimentale, et peut augmenter sensiblement le temps de réponse.",
208+
"edit_sanction.enable_entity_recognition": "Activer la détection de noms par IA",
209+
"edit_sanction.enable_entity_recognition.tooltip": "Détecter les noms (de personne, d'entreprises etc) par IA dans les textes libres. Cette fonctionnalité est en cours d'expérimentation et peut augmenter sensiblement le temps de réponse.",
210210
"edit_sanction.entity_type.heading": "Quel type d'entité cherchez-vous ?",
211211
"edit_sanction.entity_type.organization": "Organisation",
212212
"edit_sanction.entity_type.person": "Personne",
213213
"edit_sanction.entity_type.thing": "Toutes",
214214
"edit_sanction.entity_type.tooltip": "Choisir un type d'entité autre que 'Toutes' vous permet d'utiliser des filtres de recherche plus détaillés, et réduit les faux positifs.",
215215
"edit_sanction.entity_type.vehicle": "Véhicule",
216216
"edit_sanction.global_settings": "Paramètres globaux",
217-
"edit_sanction.ignore_check_if_under": "Ignorer le filtrage si le texte reçu est plus court que",
218-
"edit_sanction.ignore_check_if_under.characters": "lettres",
219-
"edit_sanction.ignore_numbers": "Ignorer les nombres",
220-
"edit_sanction.ignore_numbers.tooltip": "Tous les nombres seront supprimés du texte reçu avant de faire la recherche. Cela peut aider à réduire les faux positifs lors du filtrage, causés par des nombres dans les noms, les adresses ou les identifiants.",
217+
"edit_sanction.ignore_check_if_under": "Ne pas lancer le filtrage si le texte reçu contient moins de <NbNumbers /> lettres",
218+
"edit_sanction.exclude_numbers": "Exclure les nombres",
219+
"edit_sanction.exclude_numbers.tooltip": "Tous les nombres seront supprimés du texte reçu avant de faire la recherche. Cela peut aider à réduire les faux positifs lors du filtrage, causés par des nombres dans les noms, les adresses ou les identifiants.",
221220
"edit_sanction.nationality": "Nationalité",
222221
"edit_sanction.nationality_placeholder": "Code pays",
223222
"edit_sanction.passport_number": "Numéro de passeport",
224223
"edit_sanction.passport_number_placeholder": "Numéro de passeport",
225224
"edit_sanction.registrationnumber": "Numéro d'enregistrement",
226225
"edit_sanction.registrationnumber_placeholder": "Numéro d'enregistrement",
227-
"edit_sanction.remove_terms_from_list": "Ignorer les termes dans une liste",
228-
"edit_sanction.remove_terms_from_list.tooltip": "Supprimer les termes de la liste",
226+
"edit_sanction.remove_terms_from_list": "Exclure les termes listés dans une liste custom",
227+
"edit_sanction.remove_terms_from_list.tooltip": "Activer ceci va exclure du filtrage tout terme présent dans la liste sélectionnée. Vous devez d'abord créer une liste, dans la section Listes",
229228
"edit_sanction.required_fields_disclaimer": "Pour un filtrage efficace, il est recommandé de remplir au moins le nom ou le numéro d'enregistrement pour une organisation/véhicule, et au moins le nom ou le numéro d'identité pour une personne.",
230229
"edit_sanction.select_list": "Sélectionnez une liste",
231230
"edit_sanction.similarity_score": "Score de similitude minimum (%)",
@@ -348,7 +347,7 @@
348347
"sanction.match_settings.callout": "Choisissez des informations qui doivent être vérifiées.",
349348
"sanction.match_settings.no_empty": "Vous devez sélectionner au moins un nom ou un étiquette",
350349
"sanction.match_settings.title": "Paramètres correspondants",
351-
"sanction.nudge": "Améliorez vos règles avec un chèque de sanction basé sur l'OpenSanction API",
350+
"sanction.nudge": "Améliorez votre détection avec une règle de filtrage basée sur les données de OpenSanctions",
352351
"sanction.trigger_object.callout": "Détermine si la vérification des sanctions est pertinente pour chaque objet déclencheur (<DocLink> en savoir plus </DocLink>)",
353352
"scenarios.description": "Un scénario permet de détecter un certain type de risque, selon des règles métier spécifiques, pour un événement déclencheur spécifique.",
354353
"scheduled": "Ce scénario est planifié et sera exécuté <ScheduleLocale>{{schedule}}</ScheduleLocale>.",

packages/app-builder/src/routes/_builder+/scenarios+/$scenarioId+/i+/$iterationId+/sanctions.$sanctionId.tsx

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ import { FormErrorOrDescription } from '@app-builder/components/Form/Tanstack/Fo
1010
import { FormInput } from '@app-builder/components/Form/Tanstack/FormInput';
1111
import { setToastMessage } from '@app-builder/components/MarbleToaster';
1212
import { FieldAstFormula } from '@app-builder/components/Scenario/Sanction/FieldAstFormula';
13-
import { FieldBlackListId } from '@app-builder/components/Scenario/Sanction/FieldBlackListId';
13+
import { ScreeningTermIgnoreList } from '@app-builder/components/Scenario/Sanction/ScreeningTermIgnoreList';
1414
import { FieldDataset } from '@app-builder/components/Scenario/Sanction/FieldDataset';
1515
import { FieldEntityType } from '@app-builder/components/Scenario/Sanction/FieldEntityType';
1616
import { FieldNode } from '@app-builder/components/Scenario/Sanction/FieldNode';
@@ -219,9 +219,9 @@ export default function SanctionDetail() {
219219
const { submit, data } = useFetcher<typeof action>();
220220
const lastData = data as
221221
| {
222-
status: 'error' | 'success';
223-
errors?: z.typeToFlattenedError<EditSanctionForm>;
224-
}
222+
status: 'error' | 'success';
223+
errors?: z.typeToFlattenedError<EditSanctionForm>;
224+
}
225225
| undefined;
226226
const scenario = useCurrentScenario();
227227
const ruleGroups = useRuleGroups();
@@ -586,7 +586,7 @@ export default function SanctionDetail() {
586586
</form.Field>
587587
<form.Field name="preprocessing.blacklistListId">
588588
{(field) => (
589-
<FieldBlackListId
589+
<ScreeningTermIgnoreList
590590
value={field.state.value ?? null}
591591
onBlur={field.handleBlur}
592592
onChange={field.handleChange}
@@ -605,10 +605,10 @@ export default function SanctionDetail() {
605605
disabled={editor === 'view'}
606606
/>
607607
<span className="text-s">
608-
{t('scenarios:edit_sanction.ignore_numbers')}
608+
{t('scenarios:edit_sanction.exclude_numbers')}
609609
</span>
610610
<FieldToolTip>
611-
{t('scenarios:edit_sanction.ignore_numbers.tooltip')}
611+
{t('scenarios:edit_sanction.exclude_numbers.tooltip')}
612612
</FieldToolTip>
613613
</div>
614614
)}

packages/app-builder/src/routes/ressources+/scenarios+/$scenarioId+/$iterationId+/rules+/create.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -74,10 +74,10 @@ export function CreateRule({
7474
>
7575
<Icon icon="plus" className="text-grey-00 size-5" />
7676
<div className="flex w-full flex-col items-start">
77-
<span className="text-grey-00 text-s font-normal">
77+
<span className="text-grey-00 font-normal">
7878
{t('scenarios:create_rule.title')}
7979
</span>
80-
<span className="text-grey-50 font-normal">{t('scenarios:create_rule.description')}</span>
80+
<span className="text-s text-grey-50 font-normal">{t('scenarios:create_rule.description')}</span>
8181
</div>
8282
</Button>
8383
</fetcher.Form>

0 commit comments

Comments
 (0)