From 5e3bd26e2724521ba715dba1f23e11615bdce6e6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan=20B=C3=B6hmer?= Date: Wed, 12 Nov 2025 21:34:05 +0100 Subject: [PATCH 1/4] New Crowdin updates (#1105) * New translations validators.en.xlf (French) * New translations security.en.xlf (French) * New translations messages.en.xlf (French) * New translations messages.en.xlf (French) --- translations/messages.fr.xlf | 18466 +++++++++++++++---------------- translations/security.fr.xlf | 4 +- translations/validators.fr.xlf | 186 +- 3 files changed, 9409 insertions(+), 9247 deletions(-) diff --git a/translations/messages.fr.xlf b/translations/messages.fr.xlf index cb3936ef..8ed971b8 100644 --- a/translations/messages.fr.xlf +++ b/translations/messages.fr.xlf @@ -1,9233 +1,9233 @@ - - - - - - Part-DB1\templates\AdminPages\AttachmentTypeAdmin.html.twig:4 - Part-DB1\templates\AdminPages\AttachmentTypeAdmin.html.twig:4 - templates\AdminPages\AttachmentTypeAdmin.html.twig:4 - - - attachment_type.caption - Types pour fichiers joints - - - - - Part-DB1\templates\AdminPages\AttachmentTypeAdmin.html.twig:12 - new - - - attachment_type.edit - Modifier le type de pièce jointe - - - - - Part-DB1\templates\AdminPages\AttachmentTypeAdmin.html.twig:16 - new - - - attachment_type.new - Nouveau type de pièce jointe - - - - - Part-DB1\templates\AdminPages\CategoryAdmin.html.twig:4 - Part-DB1\templates\_sidebar.html.twig:22 - Part-DB1\templates\_sidebar.html.twig:7 - Part-DB1\templates\AdminPages\CategoryAdmin.html.twig:4 - Part-DB1\templates\_sidebar.html.twig:22 - Part-DB1\templates\_sidebar.html.twig:7 - templates\AdminPages\CategoryAdmin.html.twig:4 - templates\base.html.twig:163 - templates\base.html.twig:170 - templates\base.html.twig:197 - templates\base.html.twig:225 - - - category.labelp - Catégories - - - - - Part-DB1\templates\AdminPages\CategoryAdmin.html.twig:8 - Part-DB1\templates\AdminPages\StorelocationAdmin.html.twig:19 - Part-DB1\templates\AdminPages\CategoryAdmin.html.twig:8 - Part-DB1\templates\AdminPages\StorelocationAdmin.html.twig:11 - templates\AdminPages\CategoryAdmin.html.twig:8 - - - admin.options - Options - - - - - Part-DB1\templates\AdminPages\CategoryAdmin.html.twig:9 - Part-DB1\templates\AdminPages\CompanyAdminBase.html.twig:15 - Part-DB1\templates\AdminPages\CategoryAdmin.html.twig:9 - Part-DB1\templates\AdminPages\CompanyAdminBase.html.twig:15 - templates\AdminPages\CategoryAdmin.html.twig:9 - - - admin.advanced - Avancé - - - - - Part-DB1\templates\AdminPages\CategoryAdmin.html.twig:13 - new - - - category.edit - Éditer la catégorie - - - - - Part-DB1\templates\AdminPages\CategoryAdmin.html.twig:17 - new - - - category.new - Nouvelle catégorie - - - - - Part-DB1\templates\AdminPages\CurrencyAdmin.html.twig:4 - Part-DB1\templates\AdminPages\CurrencyAdmin.html.twig:4 - - - currency.caption - Devise - - - - - Part-DB1\templates\AdminPages\CurrencyAdmin.html.twig:12 - Part-DB1\templates\AdminPages\CurrencyAdmin.html.twig:12 - - - currency.iso_code.caption - Code ISO - - - - - Part-DB1\templates\AdminPages\CurrencyAdmin.html.twig:15 - Part-DB1\templates\AdminPages\CurrencyAdmin.html.twig:15 - - - currency.symbol.caption - Symbole de la devise - - - - - Part-DB1\templates\AdminPages\CurrencyAdmin.html.twig:29 - new - - - currency.edit - Editer la devise - - - - - Part-DB1\templates\AdminPages\CurrencyAdmin.html.twig:33 - new - - - currency.new - Nouvelle devise - - - - - Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:19 - Part-DB1\templates\_navbar_search.html.twig:67 - Part-DB1\templates\_sidebar.html.twig:27 - Part-DB1\templates\_sidebar.html.twig:43 - Part-DB1\templates\_sidebar.html.twig:63 - Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:19 - Part-DB1\templates\_navbar_search.html.twig:61 - Part-DB1\templates\_sidebar.html.twig:27 - Part-DB1\templates\_sidebar.html.twig:43 - Part-DB1\templates\_sidebar.html.twig:63 - templates\AdminPages\EntityAdminBase.html.twig:9 - templates\base.html.twig:80 - templates\base.html.twig:179 - templates\base.html.twig:206 - templates\base.html.twig:237 - - - search.placeholder - Recherche - - - - - Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:23 - Part-DB1\templates\_sidebar.html.twig:3 - Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:23 - Part-DB1\templates\_sidebar.html.twig:3 - templates\AdminPages\EntityAdminBase.html.twig:13 - templates\base.html.twig:166 - templates\base.html.twig:193 - templates\base.html.twig:221 - - - expandAll - Agrandir tout - - - - - Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:27 - Part-DB1\templates\_sidebar.html.twig:4 - Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:27 - Part-DB1\templates\_sidebar.html.twig:4 - templates\AdminPages\EntityAdminBase.html.twig:17 - templates\base.html.twig:167 - templates\base.html.twig:194 - templates\base.html.twig:222 - - - reduceAll - Réduire tout - - - - - Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:54 - Part-DB1\templates\Parts\info\_sidebar.html.twig:4 - Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:54 - Part-DB1\templates\Parts\info\_sidebar.html.twig:4 - - - part.info.timetravel_hint - C'est ainsi que le composant apparaissait avant le %timestamp%. <i>Veuillez noter que cette fonctionnalité est expérimentale, donc les infos ne sont peut-être pas correctes. </i> - - - - - Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:60 - Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:60 - templates\AdminPages\EntityAdminBase.html.twig:42 - - - standard.label - Propriétés - - - - - Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:61 - Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:61 - templates\AdminPages\EntityAdminBase.html.twig:43 - - - infos.label - Informations - - - - - Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:63 - Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:63 - new - - - history.label - Historique - - - - - Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:66 - Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:66 - templates\AdminPages\EntityAdminBase.html.twig:45 - - - export.label - Exporter - - - - - Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:68 - Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:68 - templates\AdminPages\EntityAdminBase.html.twig:47 - - - import_export.label - Importer exporter - - - - - Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:69 - Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:69 - - - mass_creation.label - Création multiple - - - - - Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:82 - Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:82 - templates\AdminPages\EntityAdminBase.html.twig:59 - - - admin.common - Commun - - - - - Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:86 - Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:86 - - - admin.attachments - Fichiers joints - - - - - Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:90 - - - admin.parameters - Paramètres - - - - - Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:179 - Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:167 - templates\AdminPages\EntityAdminBase.html.twig:142 - - - export_all.label - Exporter tous les éléments - - - - - Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:185 - Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:173 - - - mass_creation.help - Chaque ligne sera interprétée comme le nom d'un élément qui sera créé. - - - - - Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:45 - Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:45 - templates\AdminPages\EntityAdminBase.html.twig:35 - - - edit.caption - Éditer l'élément "%name" - - - - - Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:50 - Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:50 - templates\AdminPages\EntityAdminBase.html.twig:37 - - - new.caption - Nouvel élément - - - - - Part-DB1\templates\AdminPages\FootprintAdmin.html.twig:4 - Part-DB1\templates\_sidebar.html.twig:9 - Part-DB1\templates\AdminPages\FootprintAdmin.html.twig:4 - Part-DB1\templates\_sidebar.html.twig:9 - templates\base.html.twig:172 - templates\base.html.twig:199 - templates\base.html.twig:227 - - - footprint.labelp - Empreintes - - - - - Part-DB1\templates\AdminPages\FootprintAdmin.html.twig:13 - new - - - footprint.edit - Editer l'empreinte - - - - - Part-DB1\templates\AdminPages\FootprintAdmin.html.twig:17 - new - - - footprint.new - Nouvelle empreinte - - - - - Part-DB1\templates\AdminPages\GroupAdmin.html.twig:4 - Part-DB1\templates\AdminPages\GroupAdmin.html.twig:4 - - - group.edit.caption - Groupes - - - - - Part-DB1\templates\AdminPages\GroupAdmin.html.twig:9 - Part-DB1\templates\AdminPages\UserAdmin.html.twig:16 - Part-DB1\templates\AdminPages\GroupAdmin.html.twig:9 - Part-DB1\templates\AdminPages\UserAdmin.html.twig:16 - - - user.edit.permissions - Permissions - - - - - Part-DB1\templates\AdminPages\GroupAdmin.html.twig:24 - new - - - group.edit - Editer le groupe - - - - - Part-DB1\templates\AdminPages\GroupAdmin.html.twig:28 - new - - - group.new - Nouveau groupe - - - - - Part-DB1\templates\AdminPages\LabelProfileAdmin.html.twig:4 - - - label_profile.caption - Profil des étiquettes - - - - - Part-DB1\templates\AdminPages\LabelProfileAdmin.html.twig:8 - - - label_profile.advanced - Avancé - - - - - Part-DB1\templates\AdminPages\LabelProfileAdmin.html.twig:9 - - - label_profile.comment - Commentaire - - - - - Part-DB1\templates\AdminPages\LabelProfileAdmin.html.twig:55 - new - - - label_profile.edit - Editer profil d'étiquette - - - - - Part-DB1\templates\AdminPages\LabelProfileAdmin.html.twig:59 - new - - - label_profile.new - Nouveau profil d'étiquette - - - - - Part-DB1\templates\AdminPages\ManufacturerAdmin.html.twig:4 - Part-DB1\templates\AdminPages\ManufacturerAdmin.html.twig:4 - templates\AdminPages\ManufacturerAdmin.html.twig:4 - - - manufacturer.caption - Fabricants - - - - - Part-DB1\templates\AdminPages\ManufacturerAdmin.html.twig:8 - new - - - manufacturer.edit - Modifiez le fabricant - - - - - Part-DB1\templates\AdminPages\ManufacturerAdmin.html.twig:12 - new - - - manufacturer.new - Nouveau fabricant - - - - - Part-DB1\templates\AdminPages\MeasurementUnitAdmin.html.twig:4 - Part-DB1\templates\AdminPages\MeasurementUnitAdmin.html.twig:4 - - - measurement_unit.caption - Unité de mesure - - - - - part_custom_state.caption - État personnalisé du composant - - - - - Part-DB1\templates\AdminPages\StorelocationAdmin.html.twig:5 - Part-DB1\templates\_sidebar.html.twig:8 - Part-DB1\templates\AdminPages\StorelocationAdmin.html.twig:4 - Part-DB1\templates\_sidebar.html.twig:8 - templates\base.html.twig:171 - templates\base.html.twig:198 - templates\base.html.twig:226 - - - storelocation.labelp - Emplacement de stockage - - - - - Part-DB1\templates\AdminPages\StorelocationAdmin.html.twig:32 - new - - - storelocation.edit - Modifier l'emplacement de stockage - - - - - Part-DB1\templates\AdminPages\StorelocationAdmin.html.twig:36 - new - - - storelocation.new - Nouvel emplacement de stockage - - - - - Part-DB1\templates\AdminPages\SupplierAdmin.html.twig:4 - Part-DB1\templates\AdminPages\SupplierAdmin.html.twig:4 - templates\AdminPages\SupplierAdmin.html.twig:4 - - - supplier.caption - Fournisseurs - - - - - Part-DB1\templates\AdminPages\SupplierAdmin.html.twig:16 - new - - - supplier.edit - Modifier le fournisseur - - - - - Part-DB1\templates\AdminPages\SupplierAdmin.html.twig:20 - new - - - supplier.new - Nouveau fournisseur - - - - - Part-DB1\templates\AdminPages\UserAdmin.html.twig:8 - Part-DB1\templates\AdminPages\UserAdmin.html.twig:8 - - - user.edit.caption - Utilisateurs - - - - - Part-DB1\templates\AdminPages\UserAdmin.html.twig:14 - Part-DB1\templates\AdminPages\UserAdmin.html.twig:14 - - - user.edit.configuration - Configuration - - - - - Part-DB1\templates\AdminPages\UserAdmin.html.twig:15 - Part-DB1\templates\AdminPages\UserAdmin.html.twig:15 - - - user.edit.password - Mot de passe - - - - - Part-DB1\templates\AdminPages\UserAdmin.html.twig:45 - Part-DB1\templates\AdminPages\UserAdmin.html.twig:45 - - - user.edit.tfa.caption - Authentification à deux facteurs - - - - - Part-DB1\templates\AdminPages\UserAdmin.html.twig:47 - Part-DB1\templates\AdminPages\UserAdmin.html.twig:47 - - - user.edit.tfa.google_active - Application d'authentification active - - - - - Part-DB1\templates\AdminPages\UserAdmin.html.twig:48 - Part-DB1\templates\Users\backup_codes.html.twig:15 - Part-DB1\templates\Users\_2fa_settings.html.twig:95 - Part-DB1\templates\AdminPages\UserAdmin.html.twig:48 - Part-DB1\templates\Users\backup_codes.html.twig:15 - Part-DB1\templates\Users\_2fa_settings.html.twig:95 - - - tfa_backup.remaining_tokens - Nombre de codes de secours restant - - - - - Part-DB1\templates\AdminPages\UserAdmin.html.twig:49 - Part-DB1\templates\Users\backup_codes.html.twig:17 - Part-DB1\templates\Users\_2fa_settings.html.twig:96 - Part-DB1\templates\AdminPages\UserAdmin.html.twig:49 - Part-DB1\templates\Users\backup_codes.html.twig:17 - Part-DB1\templates\Users\_2fa_settings.html.twig:96 - - - tfa_backup.generation_date - Date de génération des codes de secours - - - - - Part-DB1\templates\AdminPages\UserAdmin.html.twig:53 - Part-DB1\templates\AdminPages\UserAdmin.html.twig:60 - Part-DB1\templates\AdminPages\UserAdmin.html.twig:53 - Part-DB1\templates\AdminPages\UserAdmin.html.twig:60 - - - user.edit.tfa.disabled - Méthode désactivée - - - - - Part-DB1\templates\AdminPages\UserAdmin.html.twig:56 - Part-DB1\templates\AdminPages\UserAdmin.html.twig:56 - - - user.edit.tfa.u2f_keys_count - Clés de sécurité actives - - - - - Part-DB1\templates\AdminPages\UserAdmin.html.twig:72 - Part-DB1\templates\AdminPages\UserAdmin.html.twig:72 - - - user.edit.tfa.disable_tfa_title - Voulez vous vraiment poursuivre ? - - - - - Part-DB1\templates\AdminPages\UserAdmin.html.twig:72 - Part-DB1\templates\AdminPages\UserAdmin.html.twig:72 - - - user.edit.tfa.disable_tfa_message - Cela désactivera <b> toutes les méthodes d'authentification à deux facteurs de l'utilisateur</b> et supprimera <b>les codes de secours</b>! -<br> -L'utilisateur devra configurer à nouveau toutes les méthodes d'authentification à deux facteurs et créer de nouveaux codes de secours!<br><br> -<b>Ne faites ceci qu'en étant sûr de l'identité de l'utilisateur (ayant besoin d'aide),autrement le compte pourrai être compromis!</b> - - - - - Part-DB1\templates\AdminPages\UserAdmin.html.twig:73 - Part-DB1\templates\AdminPages\UserAdmin.html.twig:73 - - - user.edit.tfa.disable_tfa.btn - Désactiver toutes les méthodes d'authentification à deux facteurs - - - - - Part-DB1\templates\AdminPages\UserAdmin.html.twig:85 - new - - - user.edit - Modifier l'utilisateur - - - - - Part-DB1\templates\AdminPages\UserAdmin.html.twig:89 - new - - - user.new - Nouvel utilisateur - - - - - Part-DB1\templates\AdminPages\_attachments.html.twig:4 - Part-DB1\templates\Parts\edit\_attachments.html.twig:4 - Part-DB1\templates\AdminPages\_attachments.html.twig:4 - Part-DB1\templates\Parts\edit\_attachments.html.twig:4 - Part-DB1\templates\Parts\info\_attachments_info.html.twig:63 - - - attachment.delete - Supprimer - - - - - Part-DB1\templates\AdminPages\_attachments.html.twig:41 - Part-DB1\templates\Parts\edit\_attachments.html.twig:38 - Part-DB1\templates\Parts\info\_attachments_info.html.twig:35 - Part-DB1\src\DataTables\AttachmentDataTable.php:159 - Part-DB1\templates\Parts\edit\_attachments.html.twig:38 - Part-DB1\src\DataTables\AttachmentDataTable.php:159 - - - attachment.external - Externe - - - - - Part-DB1\templates\AdminPages\_attachments.html.twig:49 - Part-DB1\templates\Parts\edit\_attachments.html.twig:47 - Part-DB1\templates\AdminPages\_attachments.html.twig:47 - Part-DB1\templates\Parts\edit\_attachments.html.twig:45 - - - attachment.preview.alt - Miniature du fichier joint - - - - - Part-DB1\templates\AdminPages\_attachments.html.twig:52 - Part-DB1\templates\Parts\edit\_attachments.html.twig:50 - Part-DB1\templates\Parts\info\_attachments_info.html.twig:62 - Part-DB1\templates\AdminPages\_attachments.html.twig:50 - Part-DB1\templates\Parts\edit\_attachments.html.twig:48 - Part-DB1\templates\Parts\info\_attachments_info.html.twig:45 - - - attachment.view - Afficher - - - - - Part-DB1\templates\AdminPages\_attachments.html.twig:58 - Part-DB1\templates\Parts\edit\_attachments.html.twig:56 - Part-DB1\templates\Parts\info\_attachments_info.html.twig:43 - Part-DB1\src\DataTables\AttachmentDataTable.php:166 - Part-DB1\templates\AdminPages\_attachments.html.twig:56 - Part-DB1\templates\Parts\edit\_attachments.html.twig:54 - Part-DB1\templates\Parts\info\_attachments_info.html.twig:38 - Part-DB1\src\DataTables\AttachmentDataTable.php:166 - - - attachment.file_not_found - Fichier introuvable - - - - - Part-DB1\templates\AdminPages\_attachments.html.twig:66 - Part-DB1\templates\Parts\edit\_attachments.html.twig:64 - Part-DB1\templates\Parts\info\_attachments_info.html.twig:48 - Part-DB1\templates\Parts\edit\_attachments.html.twig:62 - - - attachment.secure - Fichier joint privé - - - - - Part-DB1\templates\AdminPages\_attachments.html.twig:79 - Part-DB1\templates\Parts\edit\_attachments.html.twig:77 - Part-DB1\templates\AdminPages\_attachments.html.twig:77 - Part-DB1\templates\Parts\edit\_attachments.html.twig:75 - - - attachment.create - Ajouter un fichier joint - - - - - Part-DB1\templates\AdminPages\_attachments.html.twig:84 - Part-DB1\templates\Parts\edit\_attachments.html.twig:82 - Part-DB1\templates\Parts\edit\_lots.html.twig:33 - Part-DB1\templates\AdminPages\_attachments.html.twig:82 - Part-DB1\templates\Parts\edit\_attachments.html.twig:80 - Part-DB1\templates\Parts\edit\_lots.html.twig:33 - - - part_lot.edit.delete.confirm - Voulez vous vraiment supprimer ce stock ? Cette action ne pourra pas être annulée! - - - - - Part-DB1\templates\AdminPages\_delete_form.html.twig:2 - Part-DB1\templates\AdminPages\_delete_form.html.twig:2 - templates\AdminPages\_delete_form.html.twig:2 - - - entity.delete.confirm_title - Voulez vous vraiment supprimer %name%? - - - - - Part-DB1\templates\AdminPages\_delete_form.html.twig:3 - Part-DB1\templates\AdminPages\_delete_form.html.twig:3 - templates\AdminPages\_delete_form.html.twig:3 - - - entity.delete.message - Cette action ne pourra pas être annulée! -<br> -Les sous éléments seront déplacés vers le haut. - - - - - Part-DB1\templates\AdminPages\_delete_form.html.twig:11 - Part-DB1\templates\AdminPages\_delete_form.html.twig:11 - templates\AdminPages\_delete_form.html.twig:9 - - - entity.delete - Supprimer l'élément - - - - - Part-DB1\templates\AdminPages\_delete_form.html.twig:16 - Part-DB1\templates\Parts\info\_tools.html.twig:45 - Part-DB1\src\Form\Part\PartBaseType.php:286 - Part-DB1\templates\AdminPages\_delete_form.html.twig:16 - Part-DB1\templates\Parts\info\_tools.html.twig:43 - Part-DB1\src\Form\Part\PartBaseType.php:267 - new - - - edit.log_comment - Éditer le commentaire - - - - - Part-DB1\templates\AdminPages\_delete_form.html.twig:24 - Part-DB1\templates\AdminPages\_delete_form.html.twig:24 - templates\AdminPages\_delete_form.html.twig:12 - - - entity.delete.recursive - Suppression récursive (tous les sous éléments) - - - - - Part-DB1\templates\AdminPages\_duplicate.html.twig:3 - - - entity.duplicate - Dupliquer l’élément - - - - - Part-DB1\templates\AdminPages\_export_form.html.twig:4 - Part-DB1\src\Form\AdminPages\ImportType.php:76 - Part-DB1\templates\AdminPages\_export_form.html.twig:4 - Part-DB1\src\Form\AdminPages\ImportType.php:76 - templates\AdminPages\_export_form.html.twig:4 - src\Form\ImportType.php:67 - - - export.format - Format de fichier - - - - - Part-DB1\templates\AdminPages\_export_form.html.twig:16 - Part-DB1\templates\AdminPages\_export_form.html.twig:16 - templates\AdminPages\_export_form.html.twig:16 - - - export.level - Niveau de verbosité - - - - - Part-DB1\templates\AdminPages\_export_form.html.twig:19 - Part-DB1\templates\AdminPages\_export_form.html.twig:19 - templates\AdminPages\_export_form.html.twig:19 - - - export.level.simple - Simple - - - - - Part-DB1\templates\AdminPages\_export_form.html.twig:20 - Part-DB1\templates\AdminPages\_export_form.html.twig:20 - templates\AdminPages\_export_form.html.twig:20 - - - export.level.extended - Étendu - - - - - Part-DB1\templates\AdminPages\_export_form.html.twig:21 - Part-DB1\templates\AdminPages\_export_form.html.twig:21 - templates\AdminPages\_export_form.html.twig:21 - - - export.level.full - Complet - - - - - Part-DB1\templates\AdminPages\_export_form.html.twig:31 - Part-DB1\templates\AdminPages\_export_form.html.twig:31 - templates\AdminPages\_export_form.html.twig:31 - - - export.include_children - Exporter également les sous éléments - - - - - Part-DB1\templates\AdminPages\_export_form.html.twig:39 - Part-DB1\templates\AdminPages\_export_form.html.twig:39 - templates\AdminPages\_export_form.html.twig:39 - - - export.btn - Exporter - - - - - Part-DB1\templates\AdminPages\_info.html.twig:4 - Part-DB1\templates\Parts\edit\edit_part_info.html.twig:12 - Part-DB1\templates\Parts\info\show_part_info.html.twig:24 - Part-DB1\templates\Parts\info\_extended_infos.html.twig:36 - Part-DB1\templates\AdminPages\_info.html.twig:4 - Part-DB1\templates\Parts\edit\edit_part_info.html.twig:12 - Part-DB1\templates\Parts\info\show_part_info.html.twig:24 - Part-DB1\templates\Parts\info\_extended_infos.html.twig:36 - templates\AdminPages\EntityAdminBase.html.twig:94 - templates\Parts\edit_part_info.html.twig:12 - templates\Parts\show_part_info.html.twig:11 - - - id.label - ID - - - - - Part-DB1\templates\AdminPages\_info.html.twig:11 - Part-DB1\templates\Parts\info\_attachments_info.html.twig:76 - Part-DB1\templates\Parts\info\_attachments_info.html.twig:77 - Part-DB1\templates\Parts\info\_extended_infos.html.twig:6 - Part-DB1\templates\Parts\info\_order_infos.html.twig:69 - Part-DB1\templates\Parts\info\_sidebar.html.twig:12 - Part-DB1\templates\Parts\lists\_info_card.html.twig:77 - Part-DB1\templates\AdminPages\_info.html.twig:11 - Part-DB1\templates\Parts\info\_attachments_info.html.twig:59 - Part-DB1\templates\Parts\info\_attachments_info.html.twig:60 - Part-DB1\templates\Parts\info\_extended_infos.html.twig:6 - Part-DB1\templates\Parts\info\_order_infos.html.twig:69 - Part-DB1\templates\Parts\info\_sidebar.html.twig:12 - Part-DB1\templates\Parts\lists\_info_card.html.twig:53 - templates\AdminPages\EntityAdminBase.html.twig:101 - templates\Parts\show_part_info.html.twig:248 - - - createdAt - Créé le - - - - - Part-DB1\templates\AdminPages\_info.html.twig:25 - Part-DB1\templates\Parts\info\_extended_infos.html.twig:21 - Part-DB1\templates\Parts\info\_sidebar.html.twig:8 - Part-DB1\templates\Parts\lists\_info_card.html.twig:73 - Part-DB1\templates\AdminPages\_info.html.twig:25 - Part-DB1\templates\Parts\info\_extended_infos.html.twig:21 - Part-DB1\templates\Parts\info\_sidebar.html.twig:8 - Part-DB1\templates\Parts\lists\_info_card.html.twig:49 - templates\AdminPages\EntityAdminBase.html.twig:114 - templates\Parts\show_part_info.html.twig:263 - - - lastModified - Dernière modification - - - - - Part-DB1\templates\AdminPages\_info.html.twig:38 - Part-DB1\templates\AdminPages\_info.html.twig:38 - - - entity.info.parts_count - Nombre de composants avec cet élément - - - - - Part-DB1\templates\AdminPages\_parameters.html.twig:6 - Part-DB1\templates\helper.twig:125 - Part-DB1\templates\Parts\edit\_specifications.html.twig:6 - - - specifications.property - Paramètre - - - - - Part-DB1\templates\AdminPages\_parameters.html.twig:7 - Part-DB1\templates\Parts\edit\_specifications.html.twig:7 - - - specifications.symbol - Symbole - - - - - Part-DB1\templates\AdminPages\_parameters.html.twig:8 - Part-DB1\templates\Parts\edit\_specifications.html.twig:8 - - - specifications.value_min - Min. - - - - - Part-DB1\templates\AdminPages\_parameters.html.twig:9 - Part-DB1\templates\Parts\edit\_specifications.html.twig:9 - - - specifications.value_typ - Typ. - - - - - Part-DB1\templates\AdminPages\_parameters.html.twig:10 - Part-DB1\templates\Parts\edit\_specifications.html.twig:10 - - - specifications.value_max - Max. - - - - - Part-DB1\templates\AdminPages\_parameters.html.twig:11 - Part-DB1\templates\Parts\edit\_specifications.html.twig:11 - - - specifications.unit - Unité - - - - - Part-DB1\templates\AdminPages\_parameters.html.twig:12 - Part-DB1\templates\Parts\edit\_specifications.html.twig:12 - - - specifications.text - Texte - - - - - Part-DB1\templates\AdminPages\_parameters.html.twig:13 - Part-DB1\templates\Parts\edit\_specifications.html.twig:13 - - - specifications.group - Groupe - - - - - Part-DB1\templates\AdminPages\_parameters.html.twig:26 - Part-DB1\templates\Parts\edit\_specifications.html.twig:26 - - - specification.create - Nouveau paramètre - - - - - Part-DB1\templates\AdminPages\_parameters.html.twig:31 - Part-DB1\templates\Parts\edit\_specifications.html.twig:31 - - - parameter.delete.confirm - Souhaitez-vous vraiment supprimer ce paramètre ? - - - - - Part-DB1\templates\attachment_list.html.twig:3 - Part-DB1\templates\attachment_list.html.twig:3 - - - attachment.list.title - Liste des fichiers joints - - - - - Part-DB1\templates\attachment_list.html.twig:10 - Part-DB1\templates\LogSystem\_log_table.html.twig:8 - Part-DB1\templates\Parts\lists\_parts_list.html.twig:6 - Part-DB1\templates\attachment_list.html.twig:10 - Part-DB1\templates\LogSystem\_log_table.html.twig:8 - Part-DB1\templates\Parts\lists\_parts_list.html.twig:6 - - - part_list.loading.caption - Chargement - - - - - Part-DB1\templates\attachment_list.html.twig:11 - Part-DB1\templates\LogSystem\_log_table.html.twig:9 - Part-DB1\templates\Parts\lists\_parts_list.html.twig:7 - Part-DB1\templates\attachment_list.html.twig:11 - Part-DB1\templates\LogSystem\_log_table.html.twig:9 - Part-DB1\templates\Parts\lists\_parts_list.html.twig:7 - - - part_list.loading.message - Cela peut prendre un moment.Si ce message ne disparaît pas, essayez de recharger la page. - - - - - Part-DB1\templates\base.html.twig:68 - Part-DB1\templates\base.html.twig:68 - templates\base.html.twig:246 - - - vendor.base.javascript_hint - Activez Javascipt pour profiter de toutes les fonctionnalités! - - - - - Part-DB1\templates\base.html.twig:73 - Part-DB1\templates\base.html.twig:73 - - - sidebar.big.toggle - Afficher/Cacher le panneau latéral -Show/Hide sidebar - - - - - Part-DB1\templates\base.html.twig:95 - Part-DB1\templates\base.html.twig:95 - templates\base.html.twig:271 - - - loading.caption - Chargement: - - - - - Part-DB1\templates\base.html.twig:96 - Part-DB1\templates\base.html.twig:96 - templates\base.html.twig:272 - - - loading.message - Cela peut prendre un moment.Si ce message ne disparaît pas, essayez de recharger la page. - - - - - Part-DB1\templates\base.html.twig:101 - Part-DB1\templates\base.html.twig:101 - templates\base.html.twig:277 - - - loading.bar - Chargement... - - - - - Part-DB1\templates\base.html.twig:112 - Part-DB1\templates\base.html.twig:112 - templates\base.html.twig:288 - - - back_to_top - Retour en haut de page - - - - - Part-DB1\templates\Form\permissionLayout.html.twig:35 - Part-DB1\templates\Form\permissionLayout.html.twig:35 - - - permission.edit.permission - Permissions - - - - - Part-DB1\templates\Form\permissionLayout.html.twig:36 - Part-DB1\templates\Form\permissionLayout.html.twig:36 - - - permission.edit.value - Valeur - - - - - Part-DB1\templates\Form\permissionLayout.html.twig:53 - Part-DB1\templates\Form\permissionLayout.html.twig:53 - - - permission.legend.title - Explication des états: - - - - - Part-DB1\templates\Form\permissionLayout.html.twig:57 - Part-DB1\templates\Form\permissionLayout.html.twig:57 - - - permission.legend.disallow - Interdire - - - - - Part-DB1\templates\Form\permissionLayout.html.twig:61 - Part-DB1\templates\Form\permissionLayout.html.twig:61 - - - permission.legend.allow - Autoriser - - - - - Part-DB1\templates\Form\permissionLayout.html.twig:65 - Part-DB1\templates\Form\permissionLayout.html.twig:65 - - - permission.legend.inherit - Hériter du groupe (parent) - - - - - Part-DB1\templates\helper.twig:3 - Part-DB1\templates\helper.twig:3 - - - bool.true - Vrai - - - - - Part-DB1\templates\helper.twig:5 - Part-DB1\templates\helper.twig:5 - - - bool.false - Faux - - - - - Part-DB1\templates\helper.twig:92 - Part-DB1\templates\helper.twig:87 - - - Yes - Oui - - - - - Part-DB1\templates\helper.twig:94 - Part-DB1\templates\helper.twig:89 - - - No - Non - - - - - Part-DB1\templates\helper.twig:126 - - - specifications.value - Valeur - - - - - Part-DB1\templates\homepage.html.twig:7 - Part-DB1\templates\homepage.html.twig:7 - templates\homepage.html.twig:7 - - - version.caption - Version - - - - - Part-DB1\templates\homepage.html.twig:22 - Part-DB1\templates\homepage.html.twig:22 - templates\homepage.html.twig:19 - - - homepage.license - Information de license - - - - - Part-DB1\templates\homepage.html.twig:31 - Part-DB1\templates\homepage.html.twig:31 - templates\homepage.html.twig:28 - - - homepage.github.caption - Page du projet - - - - - Part-DB1\templates\homepage.html.twig:31 - Part-DB1\templates\homepage.html.twig:31 - templates\homepage.html.twig:28 - - - homepage.github.text - Retrouvez les téléchargements, report de bugs, to-do-list etc. sur <a href="%href%" class="link-external" target="_blank">la page du projet GitHub</a> - - - - - Part-DB1\templates\homepage.html.twig:32 - Part-DB1\templates\homepage.html.twig:32 - templates\homepage.html.twig:29 - - - homepage.help.caption - Aide - - - - - Part-DB1\templates\homepage.html.twig:32 - Part-DB1\templates\homepage.html.twig:32 - templates\homepage.html.twig:29 - - - homepage.help.text - De l'aide et des conseils sont disponibles sur le Wiki de la <a href="%href%" class="link-external" target="_blank">page GitHub</a> - - - - - Part-DB1\templates\homepage.html.twig:33 - Part-DB1\templates\homepage.html.twig:33 - templates\homepage.html.twig:30 - - - homepage.forum.caption - Forum - - - - - Part-DB1\templates\homepage.html.twig:45 - Part-DB1\templates\homepage.html.twig:45 - new - - - homepage.last_activity - Activité récente - - - - - Part-DB1\templates\LabelSystem\dialog.html.twig:3 - Part-DB1\templates\LabelSystem\dialog.html.twig:6 - - - label_generator.title - Générateur d'étiquettes - - - - - Part-DB1\templates\LabelSystem\dialog.html.twig:16 - - - label_generator.common - Commun - - - - - Part-DB1\templates\LabelSystem\dialog.html.twig:20 - - - label_generator.advanced - Avancé - - - - - Part-DB1\templates\LabelSystem\dialog.html.twig:24 - - - label_generator.profiles - Profils - - - - - Part-DB1\templates\LabelSystem\dialog.html.twig:58 - - - label_generator.selected_profile - Profil actuellement sélectionné - - - - - Part-DB1\templates\LabelSystem\dialog.html.twig:62 - - - label_generator.edit_profile - Modifier le profil - - - - - Part-DB1\templates\LabelSystem\dialog.html.twig:75 - - - label_generator.load_profile - Charger le profil - - - - - Part-DB1\templates\LabelSystem\dialog.html.twig:102 - - - label_generator.download - Télécharger - - - - - Part-DB1\templates\LabelSystem\dropdown_macro.html.twig:3 - Part-DB1\templates\LabelSystem\dropdown_macro.html.twig:5 - - - label_generator.label_btn - Générer une étiquette - - - - - Part-DB1\templates\LabelSystem\dropdown_macro.html.twig:20 - - - label_generator.label_empty - Nouvelle étiquette vide - - - - - Part-DB1\templates\LabelSystem\Scanner\dialog.html.twig:3 - - - label_scanner.title - Lecteur d'étiquettes - - - - - Part-DB1\templates\LabelSystem\Scanner\dialog.html.twig:7 - - - label_scanner.no_cam_found.title - Aucune webcam trouvée - - - - - Part-DB1\templates\LabelSystem\Scanner\dialog.html.twig:7 - - - label_scanner.no_cam_found.text - Vous devez disposer d'une webcam et donner l'autorisation d'utiliser la fonction de scanner. Vous pouvez entrer le code à barres manuellement ci-dessous. - - - - - Part-DB1\templates\LabelSystem\Scanner\dialog.html.twig:27 - - - label_scanner.source_select - Sélectionnez une source - - - - - Part-DB1\templates\LogSystem\log_list.html.twig:3 - Part-DB1\templates\LogSystem\log_list.html.twig:3 - - - log.list.title - Journal système - - - - - Part-DB1\templates\LogSystem\_log_table.html.twig:1 - Part-DB1\templates\LogSystem\_log_table.html.twig:1 - new - - - log.undo.confirm_title - Annuler le changement / revenir à une date antérieure ? - - - - - Part-DB1\templates\LogSystem\_log_table.html.twig:2 - Part-DB1\templates\LogSystem\_log_table.html.twig:2 - new - - - log.undo.confirm_message - Voulez-vous annuler la modification donnée / réinitialiser l'élément à une date donnée ? - - - - - Part-DB1\templates\mail\base.html.twig:24 - Part-DB1\templates\mail\base.html.twig:24 - - - mail.footer.email_sent_by - Cet email a été envoyé automatiquement par - - - - - Part-DB1\templates\mail\base.html.twig:24 - Part-DB1\templates\mail\base.html.twig:24 - - - mail.footer.dont_reply - Ne répondez pas à cet email. - - - - - Part-DB1\templates\mail\pw_reset.html.twig:6 - Part-DB1\templates\mail\pw_reset.html.twig:6 - - - email.hi %name% - Bonjour %name% - - - - - Part-DB1\templates\mail\pw_reset.html.twig:7 - Part-DB1\templates\mail\pw_reset.html.twig:7 - - - email.pw_reset.message - Quelqu’un (surement vous) a demandé une réinitialisation de votre mot de passe.Si ce n'est pas le cas, ignorez simplement cet email. - - - - - Part-DB1\templates\mail\pw_reset.html.twig:9 - Part-DB1\templates\mail\pw_reset.html.twig:9 - - - email.pw_reset.button - Cliquez ici pour réinitialiser votre mot de passe - - - - - Part-DB1\templates\mail\pw_reset.html.twig:11 - Part-DB1\templates\mail\pw_reset.html.twig:11 - - - email.pw_reset.fallback - Si cela ne fonctionne pas pour vous, allez à <a href="%url%">%url%</a> et entrez les informations suivantes - - - - - Part-DB1\templates\mail\pw_reset.html.twig:16 - Part-DB1\templates\mail\pw_reset.html.twig:16 - - - email.pw_reset.username - Nom d'utilisateur - - - - - Part-DB1\templates\mail\pw_reset.html.twig:19 - Part-DB1\templates\mail\pw_reset.html.twig:19 - - - email.pw_reset.token - Jeton - - - - - Part-DB1\templates\mail\pw_reset.html.twig:24 - Part-DB1\templates\mail\pw_reset.html.twig:24 - - - email.pw_reset.valid_unit %date% - Le jeton de réinitialisation sera valable jusqu'au <i>%date%</i>. - - - - - Part-DB1\templates\Parts\edit\edit_form_styles.html.twig:18 - Part-DB1\templates\Parts\edit\edit_form_styles.html.twig:58 - Part-DB1\templates\Parts\edit\edit_form_styles.html.twig:78 - Part-DB1\templates\Parts\edit\edit_form_styles.html.twig:58 - - - orderdetail.delete - Supprimer - - - - - Part-DB1\templates\Parts\edit\edit_form_styles.html.twig:39 - Part-DB1\templates\Parts\edit\edit_form_styles.html.twig:39 - - - pricedetails.edit.min_qty - Quantité minimale de commande - - - - - Part-DB1\templates\Parts\edit\edit_form_styles.html.twig:40 - Part-DB1\templates\Parts\edit\edit_form_styles.html.twig:40 - - - pricedetails.edit.price - Prix - - - - - Part-DB1\templates\Parts\edit\edit_form_styles.html.twig:41 - Part-DB1\templates\Parts\edit\edit_form_styles.html.twig:41 - - - pricedetails.edit.price_qty - Pour la quantité - - - - - Part-DB1\templates\Parts\edit\edit_form_styles.html.twig:54 - Part-DB1\templates\Parts\edit\edit_form_styles.html.twig:54 - - - pricedetail.create - Ajouter prix - - - - - Part-DB1\templates\Parts\edit\edit_part_info.html.twig:4 - Part-DB1\templates\Parts\edit\edit_part_info.html.twig:4 - templates\Parts\edit_part_info.html.twig:4 - - - part.edit.title - Éditer le composant - - - - - Part-DB1\templates\Parts\edit\edit_part_info.html.twig:9 - Part-DB1\templates\Parts\edit\edit_part_info.html.twig:9 - templates\Parts\edit_part_info.html.twig:9 - - - part.edit.card_title - Éditer le composant - - - - - Part-DB1\templates\Parts\edit\edit_part_info.html.twig:22 - Part-DB1\templates\Parts\edit\edit_part_info.html.twig:22 - - - part.edit.tab.common - Général - - - - - Part-DB1\templates\Parts\edit\edit_part_info.html.twig:28 - Part-DB1\templates\Parts\edit\edit_part_info.html.twig:28 - - - part.edit.tab.manufacturer - Fabricant - - - - - Part-DB1\templates\Parts\edit\edit_part_info.html.twig:34 - Part-DB1\templates\Parts\edit\edit_part_info.html.twig:34 - - - part.edit.tab.advanced - Avancé - - - - - part.edit.tab.advanced.ipn.commonSectionHeader - Suggestions sans incrément de partie - - - - - part.edit.tab.advanced.ipn.partIncrementHeader - Propositions avec incréments numériques de parties - - - - - part.edit.tab.advanced.ipn.prefix.description.current-increment - Spécification IPN actuelle pour la pièce - - - - - part.edit.tab.advanced.ipn.prefix.description.increment - Prochaine spécification IPN possible basée sur une description identique de la pièce - - - - - part.edit.tab.advanced.ipn.prefix_empty.direct_category - Le préfixe IPN de la catégorie directe est vide, veuillez le spécifier dans la catégorie "%name%" - - - - - part.edit.tab.advanced.ipn.prefix.direct_category - Préfixe IPN de la catégorie directe - - - - - part.edit.tab.advanced.ipn.prefix.direct_category.increment - Préfixe IPN de la catégorie directe et d'un incrément spécifique à la partie - - - - - part.edit.tab.advanced.ipn.prefix.hierarchical.no_increment - Préfixes IPN avec un ordre hiérarchique des catégories des préfixes parents - - - - - part.edit.tab.advanced.ipn.prefix.hierarchical.increment - Préfixes IPN avec un ordre hiérarchique des catégories des préfixes parents et un incrément spécifique à la pièce - - - - - part.edit.tab.advanced.ipn.prefix.not_saved - Créez d'abord une pièce et assignez-la à une catégorie : avec les catégories existantes et leurs propres préfixes IPN, l'identifiant IPN pour la pièce peut être proposé automatiquement - - - - - Part-DB1\templates\Parts\edit\edit_part_info.html.twig:40 - Part-DB1\templates\Parts\edit\edit_part_info.html.twig:40 - - - part.edit.tab.part_lots - Stocks - - - - - Part-DB1\templates\Parts\edit\edit_part_info.html.twig:46 - Part-DB1\templates\Parts\edit\edit_part_info.html.twig:46 - - - part.edit.tab.attachments - Fichiers joints - - - - - Part-DB1\templates\Parts\edit\edit_part_info.html.twig:52 - Part-DB1\templates\Parts\edit\edit_part_info.html.twig:52 - - - part.edit.tab.orderdetails - Informations pour la commande - - - - - Part-DB1\templates\Parts\edit\edit_part_info.html.twig:58 - - - part.edit.tab.specifications - Caractéristiques - - - - - Part-DB1\templates\Parts\edit\edit_part_info.html.twig:64 - Part-DB1\templates\Parts\edit\edit_part_info.html.twig:58 - - - part.edit.tab.comment - Commentaire - - - - - Part-DB1\templates\Parts\edit\new_part.html.twig:8 - Part-DB1\templates\Parts\edit\new_part.html.twig:8 - templates\Parts\new_part.html.twig:8 - - - part.new.card_title - Créer un nouveau composant - - - - - Part-DB1\templates\Parts\edit\_lots.html.twig:5 - Part-DB1\templates\Parts\edit\_lots.html.twig:5 - - - part_lot.delete - Supprimer - - - - - Part-DB1\templates\Parts\edit\_lots.html.twig:28 - Part-DB1\templates\Parts\edit\_lots.html.twig:28 - - - part_lot.create - Créer un inventaire - - - - - Part-DB1\templates\Parts\edit\_orderdetails.html.twig:13 - Part-DB1\templates\Parts\edit\_orderdetails.html.twig:13 - - - orderdetail.create - Ajouter un fournisseur - - - - - Part-DB1\templates\Parts\edit\_orderdetails.html.twig:18 - Part-DB1\templates\Parts\edit\_orderdetails.html.twig:18 - - - pricedetails.edit.delete.confirm - Voulez-vous vraiment supprimer ce prix ? Cela ne peut pas être défait ! - - - - - Part-DB1\templates\Parts\edit\_orderdetails.html.twig:62 - Part-DB1\templates\Parts\edit\_orderdetails.html.twig:61 - - - orderdetails.edit.delete.confirm - Voulez-vous vraiment supprimer ce fournisseur ? Cela ne peut pas être défait ! - - - - - Part-DB1\templates\Parts\info\show_part_info.html.twig:4 - Part-DB1\templates\Parts\info\show_part_info.html.twig:19 - Part-DB1\templates\Parts\info\show_part_info.html.twig:4 - Part-DB1\templates\Parts\info\show_part_info.html.twig:19 - templates\Parts\show_part_info.html.twig:4 - templates\Parts\show_part_info.html.twig:9 - - - part.info.title - Informations détaillées pour - - - - - Part-DB1\templates\Parts\info\show_part_info.html.twig:47 - Part-DB1\templates\Parts\info\show_part_info.html.twig:47 - - - part.part_lots.label - Stocks - - - - - Part-DB1\templates\Parts\info\show_part_info.html.twig:56 - Part-DB1\templates\Parts\lists\_info_card.html.twig:43 - Part-DB1\templates\_navbar_search.html.twig:31 - Part-DB1\templates\_navbar_search.html.twig:26 - templates\base.html.twig:62 - templates\Parts\show_part_info.html.twig:74 - src\Form\PartType.php:86 - - - comment.label - Commentaire - - - - - Part-DB1\templates\Parts\info\show_part_info.html.twig:64 - - - part.info.specifications - Caractéristiques - - - - - Part-DB1\templates\Parts\info\show_part_info.html.twig:74 - Part-DB1\templates\Parts\info\show_part_info.html.twig:64 - templates\Parts\show_part_info.html.twig:82 - - - attachment.labelp - Fichiers joints - - - - - Part-DB1\templates\Parts\info\show_part_info.html.twig:83 - Part-DB1\templates\Parts\info\show_part_info.html.twig:71 - templates\Parts\show_part_info.html.twig:88 - - - vendor.partinfo.shopping_infos - Informations de commande - - - - - Part-DB1\templates\Parts\info\show_part_info.html.twig:91 - Part-DB1\templates\Parts\info\show_part_info.html.twig:78 - templates\Parts\show_part_info.html.twig:94 - - - vendor.partinfo.history - Historique - - - - - Part-DB1\templates\Parts\info\show_part_info.html.twig:97 - Part-DB1\templates\_sidebar.html.twig:54 - Part-DB1\templates\_sidebar.html.twig:13 - Part-DB1\templates\Parts\info\show_part_info.html.twig:84 - Part-DB1\templates\_sidebar.html.twig:54 - Part-DB1\templates\_sidebar.html.twig:13 - templates\base.html.twig:176 - templates\base.html.twig:203 - templates\base.html.twig:217 - templates\base.html.twig:231 - templates\Parts\show_part_info.html.twig:100 - - - tools.label - Outils - - - - - Part-DB1\templates\Parts\info\show_part_info.html.twig:103 - Part-DB1\templates\Parts\info\show_part_info.html.twig:90 - - - extended_info.label - Informations complémentaires - - - - - Part-DB1\templates\Parts\info\_attachments_info.html.twig:7 - Part-DB1\templates\Parts\info\_attachments_info.html.twig:7 - - - attachment.name - Nom - - - - - Part-DB1\templates\Parts\info\_attachments_info.html.twig:8 - Part-DB1\templates\Parts\info\_attachments_info.html.twig:8 - - - attachment.attachment_type - Type de fichier joint - - - - - Part-DB1\templates\Parts\info\_attachments_info.html.twig:9 - Part-DB1\templates\Parts\info\_attachments_info.html.twig:9 - - - attachment.file_name - Nom du fichier - - - - - Part-DB1\templates\Parts\info\_attachments_info.html.twig:10 - Part-DB1\templates\Parts\info\_attachments_info.html.twig:10 - - - attachment.file_size - Taille du fichier - - - - - Part-DB1\templates\Parts\info\_attachments_info.html.twig:54 - - - attachment.preview - Aperçu de l'image - - - - - Part-DB1\templates\Parts\info\_attachments_info.html.twig:67 - Part-DB1\templates\Parts\info\_attachments_info.html.twig:50 - - - attachment.download - Téléchargement - - - - - Part-DB1\templates\Parts\info\_extended_infos.html.twig:11 - Part-DB1\templates\Parts\info\_extended_infos.html.twig:11 - new - - - user.creating_user - Utilisateur qui a créé ce composant - - - - - Part-DB1\templates\Parts\info\_extended_infos.html.twig:13 - Part-DB1\templates\Parts\info\_extended_infos.html.twig:28 - Part-DB1\templates\Parts\info\_extended_infos.html.twig:50 - Part-DB1\templates\Parts\info\_extended_infos.html.twig:13 - Part-DB1\templates\Parts\info\_extended_infos.html.twig:28 - Part-DB1\templates\Parts\info\_extended_infos.html.twig:50 - - - Unknown - Inconnu - - - - - Part-DB1\templates\Parts\info\_extended_infos.html.twig:15 - Part-DB1\templates\Parts\info\_extended_infos.html.twig:30 - Part-DB1\templates\Parts\info\_extended_infos.html.twig:15 - Part-DB1\templates\Parts\info\_extended_infos.html.twig:30 - new - - - accessDenied - Accès refusé - - - - - Part-DB1\templates\Parts\info\_extended_infos.html.twig:26 - Part-DB1\templates\Parts\info\_extended_infos.html.twig:26 - new - - - user.last_editing_user - Utilisateur qui a édité ce composant en dernier - - - - - Part-DB1\templates\Parts\info\_extended_infos.html.twig:41 - Part-DB1\templates\Parts\info\_extended_infos.html.twig:41 - - - part.isFavorite - Favoris - - - - - Part-DB1\templates\Parts\info\_extended_infos.html.twig:46 - Part-DB1\templates\Parts\info\_extended_infos.html.twig:46 - - - part.minOrderAmount - Quantité minimale de commande - - - - - Part-DB1\templates\Parts\info\_main_infos.html.twig:8 - Part-DB1\templates\_navbar_search.html.twig:46 - Part-DB1\src\Services\ElementTypeNameGenerator.php:84 - Part-DB1\templates\Parts\info\_main_infos.html.twig:8 - Part-DB1\templates\_navbar_search.html.twig:41 - Part-DB1\src\Services\ElementTypeNameGenerator.php:84 - templates\base.html.twig:70 - templates\Parts\show_part_info.html.twig:24 - src\Form\PartType.php:80 - - - manufacturer.label - Fabricant - - - - - Part-DB1\templates\Parts\info\_main_infos.html.twig:24 - Part-DB1\templates\_navbar_search.html.twig:11 - templates\base.html.twig:54 - src\Form\PartType.php:62 - - - name.label - Nom - - - - - Part-DB1\templates\Parts\info\_main_infos.html.twig:27 - Part-DB1\templates\Parts\info\_main_infos.html.twig:27 - new - - - part.back_to_info - Retour à la version actuelle - - - - - Part-DB1\templates\Parts\info\_main_infos.html.twig:32 - Part-DB1\templates\_navbar_search.html.twig:19 - Part-DB1\templates\Parts\info\_main_infos.html.twig:32 - Part-DB1\templates\_navbar_search.html.twig:18 - templates\base.html.twig:58 - templates\Parts\show_part_info.html.twig:31 - src\Form\PartType.php:65 - - - description.label - Description - - - - - Part-DB1\templates\Parts\info\_main_infos.html.twig:34 - Part-DB1\templates\_navbar_search.html.twig:15 - Part-DB1\src\Services\ElementTypeNameGenerator.php:80 - Part-DB1\templates\Parts\info\_main_infos.html.twig:34 - Part-DB1\templates\_navbar_search.html.twig:14 - Part-DB1\src\Services\ElementTypeNameGenerator.php:80 - templates\base.html.twig:56 - templates\Parts\show_part_info.html.twig:32 - src\Form\PartType.php:74 - - - category.label - Catégorie - - - - - Part-DB1\templates\Parts\info\_main_infos.html.twig:39 - Part-DB1\templates\Parts\info\_main_infos.html.twig:39 - templates\Parts\show_part_info.html.twig:42 - src\Form\PartType.php:69 - - - instock.label - En stock - - - - - Part-DB1\templates\Parts\info\_main_infos.html.twig:41 - Part-DB1\templates\Parts\info\_main_infos.html.twig:41 - templates\Parts\show_part_info.html.twig:44 - src\Form\PartType.php:72 - - - mininstock.label - Stock minimum - - - - - Part-DB1\templates\Parts\info\_main_infos.html.twig:45 - Part-DB1\templates\_navbar_search.html.twig:52 - Part-DB1\src\Services\ElementTypeNameGenerator.php:83 - Part-DB1\templates\Parts\info\_main_infos.html.twig:45 - Part-DB1\templates\_navbar_search.html.twig:47 - Part-DB1\src\Services\ElementTypeNameGenerator.php:83 - templates\base.html.twig:73 - templates\Parts\show_part_info.html.twig:47 - - - footprint.label - Empreinte - - - - - Part-DB1\templates\Parts\info\_main_infos.html.twig:56 - Part-DB1\templates\Parts\info\_main_infos.html.twig:59 - Part-DB1\templates\Parts\info\_main_infos.html.twig:57 - Part-DB1\templates\Parts\info\_main_infos.html.twig:60 - templates\Parts\show_part_info.html.twig:51 - - - part.avg_price.label - Prix moyen - - - - - Part-DB1\templates\Parts\info\_order_infos.html.twig:5 - Part-DB1\templates\Parts\info\_order_infos.html.twig:5 - - - part.supplier.name - Nom - - - - - Part-DB1\templates\Parts\info\_order_infos.html.twig:6 - Part-DB1\templates\Parts\info\_order_infos.html.twig:6 - - - part.supplier.partnr - Lien/Code cmd. - - - - - Part-DB1\templates\Parts\info\_order_infos.html.twig:28 - Part-DB1\templates\Parts\info\_order_infos.html.twig:28 - - - part.order.minamount - Nombre minimum - - - - - Part-DB1\templates\Parts\info\_order_infos.html.twig:29 - Part-DB1\templates\Parts\info\_order_infos.html.twig:29 - - - part.order.price - Prix - - - - - Part-DB1\templates\Parts\info\_order_infos.html.twig:31 - Part-DB1\templates\Parts\info\_order_infos.html.twig:31 - - - part.order.single_price - Prix unitaire - - - - - Part-DB1\templates\Parts\info\_order_infos.html.twig:71 - Part-DB1\templates\Parts\info\_order_infos.html.twig:71 - - - edit.caption_short - Éditer - - - - - Part-DB1\templates\Parts\info\_order_infos.html.twig:72 - Part-DB1\templates\Parts\info\_order_infos.html.twig:72 - - - delete.caption - Supprimer - - - - - Part-DB1\templates\Parts\info\_part_lots.html.twig:7 - Part-DB1\templates\Parts\info\_part_lots.html.twig:6 - - - part_lots.description - Description - - - - - Part-DB1\templates\Parts\info\_part_lots.html.twig:8 - Part-DB1\templates\Parts\info\_part_lots.html.twig:7 - - - part_lots.storage_location - Emplacement de stockage - - - - - Part-DB1\templates\Parts\info\_part_lots.html.twig:9 - Part-DB1\templates\Parts\info\_part_lots.html.twig:8 - - - part_lots.amount - Quantité - - - - - Part-DB1\templates\Parts\info\_part_lots.html.twig:24 - Part-DB1\templates\Parts\info\_part_lots.html.twig:22 - - - part_lots.location_unknown - Emplacement de stockage inconnu - - - - - Part-DB1\templates\Parts\info\_part_lots.html.twig:31 - Part-DB1\templates\Parts\info\_part_lots.html.twig:29 - - - part_lots.instock_unknown - Quantité inconnue - - - - - Part-DB1\templates\Parts\info\_part_lots.html.twig:40 - Part-DB1\templates\Parts\info\_part_lots.html.twig:38 - - - part_lots.expiration_date - Date d'expiration - - - - - Part-DB1\templates\Parts\info\_part_lots.html.twig:48 - Part-DB1\templates\Parts\info\_part_lots.html.twig:46 - - - part_lots.is_expired - Expiré - - - - - Part-DB1\templates\Parts\info\_part_lots.html.twig:55 - Part-DB1\templates\Parts\info\_part_lots.html.twig:53 - - - part_lots.need_refill - Doit être rempli à nouveau - - - - - Part-DB1\templates\Parts\info\_picture.html.twig:15 - Part-DB1\templates\Parts\info\_picture.html.twig:15 - - - part.info.prev_picture - Image précédente - - - - - Part-DB1\templates\Parts\info\_picture.html.twig:19 - Part-DB1\templates\Parts\info\_picture.html.twig:19 - - - part.info.next_picture - Image suivante - - - - - Part-DB1\templates\Parts\info\_sidebar.html.twig:21 - Part-DB1\templates\Parts\info\_sidebar.html.twig:21 - - - part.mass.tooltip - Poids - - - - - Part-DB1\templates\Parts\info\_sidebar.html.twig:30 - Part-DB1\templates\Parts\info\_sidebar.html.twig:30 - - - part.needs_review.badge - Révision nécessaire - - - - - Part-DB1\templates\Parts\info\_sidebar.html.twig:39 - Part-DB1\templates\Parts\info\_sidebar.html.twig:39 - - - part.favorite.badge - Favoris - - - - - Part-DB1\templates\Parts\info\_sidebar.html.twig:47 - Part-DB1\templates\Parts\info\_sidebar.html.twig:47 - - - part.obsolete.badge - N'est plus disponible - - - - - Part-DB1\templates\Parts\info\_specifications.html.twig:10 - - - parameters.extracted_from_description - Automatiquement extrait de la description - - - - - Part-DB1\templates\Parts\info\_specifications.html.twig:15 - - - parameters.auto_extracted_from_comment - Automatiquement extrait du commentaire - - - - - Part-DB1\templates\Parts\info\_tools.html.twig:6 - Part-DB1\templates\Parts\info\_tools.html.twig:4 - templates\Parts\show_part_info.html.twig:125 - - - part.edit.btn - Éditer - - - - - Part-DB1\templates\Parts\info\_tools.html.twig:16 - Part-DB1\templates\Parts\info\_tools.html.twig:14 - templates\Parts\show_part_info.html.twig:135 - - - part.clone.btn - Duplication - - - - - Part-DB1\templates\Parts\info\_tools.html.twig:24 - Part-DB1\templates\Parts\lists\_action_bar.html.twig:4 - templates\Parts\show_part_info.html.twig:143 - - - part.create.btn - Créer un nouveau composant - - - - - Part-DB1\templates\Parts\info\_tools.html.twig:31 - Part-DB1\templates\Parts\info\_tools.html.twig:29 - - - part.delete.confirm_title - Voulez-vous vraiment supprimer ce composant ? - - - - - Part-DB1\templates\Parts\info\_tools.html.twig:32 - Part-DB1\templates\Parts\info\_tools.html.twig:30 - - - part.delete.message - Le composant et toutes les informations associées (stocks, fichiers joints, etc.) sont supprimés. Cela ne pourra pas être annulé. - - - - - Part-DB1\templates\Parts\info\_tools.html.twig:39 - Part-DB1\templates\Parts\info\_tools.html.twig:37 - - - part.delete - Supprimer le composant - - - - - Part-DB1\templates\Parts\lists\all_list.html.twig:4 - Part-DB1\templates\Parts\lists\all_list.html.twig:4 - - - parts_list.all.title - Tous les composants - - - - - Part-DB1\templates\Parts\lists\category_list.html.twig:4 - Part-DB1\templates\Parts\lists\category_list.html.twig:4 - - - parts_list.category.title - Composants avec catégorie - - - - - Part-DB1\templates\Parts\lists\footprint_list.html.twig:4 - Part-DB1\templates\Parts\lists\footprint_list.html.twig:4 - - - parts_list.footprint.title - Composants avec empreinte - - - - - Part-DB1\templates\Parts\lists\manufacturer_list.html.twig:4 - Part-DB1\templates\Parts\lists\manufacturer_list.html.twig:4 - - - parts_list.manufacturer.title - Composants avec fabricant - - - - - Part-DB1\templates\Parts\lists\search_list.html.twig:4 - Part-DB1\templates\Parts\lists\search_list.html.twig:4 - - - parts_list.search.title - Recherche de composants - - - - - Part-DB1\templates\Parts\lists\store_location_list.html.twig:4 - Part-DB1\templates\Parts\lists\store_location_list.html.twig:4 - - - parts_list.storelocation.title - Composants avec lieu de stockage - - - - - Part-DB1\templates\Parts\lists\supplier_list.html.twig:4 - Part-DB1\templates\Parts\lists\supplier_list.html.twig:4 - - - parts_list.supplier.title - Composants avec fournisseur - - - - - Part-DB1\templates\Parts\lists\tags_list.html.twig:4 - Part-DB1\templates\Parts\lists\tags_list.html.twig:4 - - - parts_list.tags.title - Composants avec tag - - - - - Part-DB1\templates\Parts\lists\_info_card.html.twig:22 - Part-DB1\templates\Parts\lists\_info_card.html.twig:17 - - - entity.info.common.tab - Général - - - - - Part-DB1\templates\Parts\lists\_info_card.html.twig:26 - Part-DB1\templates\Parts\lists\_info_card.html.twig:20 - - - entity.info.statistics.tab - Statistiques - - - - - Part-DB1\templates\Parts\lists\_info_card.html.twig:31 - - - entity.info.attachments.tab - Pièces jointes - - - - - Part-DB1\templates\Parts\lists\_info_card.html.twig:37 - - - entity.info.parameters.tab - Caractéristiques - - - - - Part-DB1\templates\Parts\lists\_info_card.html.twig:54 - Part-DB1\templates\Parts\lists\_info_card.html.twig:30 - - - entity.info.name - Nom - - - - - Part-DB1\templates\Parts\lists\_info_card.html.twig:58 - Part-DB1\templates\Parts\lists\_info_card.html.twig:96 - Part-DB1\templates\Parts\lists\_info_card.html.twig:34 - Part-DB1\templates\Parts\lists\_info_card.html.twig:67 - - - entity.info.parent - Parent - - - - - Part-DB1\templates\Parts\lists\_info_card.html.twig:70 - Part-DB1\templates\Parts\lists\_info_card.html.twig:46 - - - entity.edit.btn - Éditer - - - - - Part-DB1\templates\Parts\lists\_info_card.html.twig:92 - Part-DB1\templates\Parts\lists\_info_card.html.twig:63 - - - entity.info.children_count - Nombre de sous-éléments - - - - - Part-DB1\templates\security\2fa_base_form.html.twig:3 - Part-DB1\templates\security\2fa_base_form.html.twig:5 - Part-DB1\templates\security\2fa_base_form.html.twig:3 - Part-DB1\templates\security\2fa_base_form.html.twig:5 - - - tfa.check.title - Authentification à deux facteurs requise - - - - - Part-DB1\templates\security\2fa_base_form.html.twig:39 - Part-DB1\templates\security\2fa_base_form.html.twig:39 - - - tfa.code.trusted_pc - Il s'agit d'un ordinateur de confiance (si cette fonction est activée, aucune autre requête à deux facteurs n'est effectuée sur cet ordinateur) - - - - - Part-DB1\templates\security\2fa_base_form.html.twig:52 - Part-DB1\templates\security\login.html.twig:58 - Part-DB1\templates\security\2fa_base_form.html.twig:52 - Part-DB1\templates\security\login.html.twig:58 - - - login.btn - Connexion - - - - - Part-DB1\templates\security\2fa_base_form.html.twig:53 - Part-DB1\templates\security\U2F\u2f_login.html.twig:13 - Part-DB1\templates\_navbar.html.twig:42 - Part-DB1\templates\security\2fa_base_form.html.twig:53 - Part-DB1\templates\security\U2F\u2f_login.html.twig:13 - Part-DB1\templates\_navbar.html.twig:40 - - - user.logout - Déconnexion - - - - - Part-DB1\templates\security\2fa_form.html.twig:6 - Part-DB1\templates\security\2fa_form.html.twig:6 - - - tfa.check.code.label - Code d'application de l'authentificateur - - - - - Part-DB1\templates\security\2fa_form.html.twig:10 - Part-DB1\templates\security\2fa_form.html.twig:10 - - - tfa.check.code.help - Entrez le code à 6 chiffres de votre application d'authentification ou l'un de vos codes de secours si l'authentificateur n'est pas disponible. - - - - - Part-DB1\templates\security\login.html.twig:3 - Part-DB1\templates\security\login.html.twig:3 - templates\security\login.html.twig:3 - - - login.title - Connexion - - - - - Part-DB1\templates\security\login.html.twig:7 - Part-DB1\templates\security\login.html.twig:7 - templates\security\login.html.twig:7 - - - login.card_title - Connexion - - - - - Part-DB1\templates\security\login.html.twig:31 - Part-DB1\templates\security\login.html.twig:31 - templates\security\login.html.twig:31 - - - login.username.label - Nom d'utilisateur - - - - - Part-DB1\templates\security\login.html.twig:34 - Part-DB1\templates\security\login.html.twig:34 - templates\security\login.html.twig:34 - - - login.username.placeholder - Nom d'utilisateur - - - - - Part-DB1\templates\security\login.html.twig:38 - Part-DB1\templates\security\login.html.twig:38 - templates\security\login.html.twig:38 - - - login.password.label - Mot de passe - - - - - Part-DB1\templates\security\login.html.twig:40 - Part-DB1\templates\security\login.html.twig:40 - templates\security\login.html.twig:40 - - - login.password.placeholder - Mot de passe - - - - - Part-DB1\templates\security\login.html.twig:50 - Part-DB1\templates\security\login.html.twig:50 - templates\security\login.html.twig:50 - - - login.rememberme - Rester connecté (non recommandé sur les ordinateurs publics) - - - - - Part-DB1\templates\security\login.html.twig:64 - Part-DB1\templates\security\login.html.twig:64 - - - pw_reset.password_forget - Nom d'utilisateur/mot de passe oublié ? - - - - - Part-DB1\templates\security\pw_reset_new_pw.html.twig:5 - Part-DB1\templates\security\pw_reset_new_pw.html.twig:5 - - - pw_reset.new_pw.header.title - Définir un nouveau mot de passe - - - - - Part-DB1\templates\security\pw_reset_request.html.twig:5 - Part-DB1\templates\security\pw_reset_request.html.twig:5 - - - pw_reset.request.header.title - Demander un nouveau mot de passe - - - - - Part-DB1\templates\security\U2F\u2f_login.html.twig:7 - Part-DB1\templates\security\U2F\u2f_register.html.twig:10 - Part-DB1\templates\security\U2F\u2f_login.html.twig:7 - Part-DB1\templates\security\U2F\u2f_register.html.twig:10 - - - tfa_u2f.http_warning - Vous accédez à cette page en utilisant la méthode HTTP non sécurisée, donc U2F ne fonctionnera probablement pas (message d'erreur "Bad Request"). Demandez à un administrateur de mettre en place la méthode HTTPS sécurisée si vous souhaitez utiliser des clés de sécurité. - - - - - Part-DB1\templates\security\U2F\u2f_login.html.twig:10 - Part-DB1\templates\security\U2F\u2f_register.html.twig:22 - Part-DB1\templates\security\U2F\u2f_login.html.twig:10 - Part-DB1\templates\security\U2F\u2f_register.html.twig:22 - - - r_u2f_two_factor.pressbutton - Veuillez insérer la clé de sécurité et appuyer sur le bouton ! - - - - - Part-DB1\templates\security\U2F\u2f_register.html.twig:3 - Part-DB1\templates\security\U2F\u2f_register.html.twig:3 - - - tfa_u2f.add_key.title - Ajouter une clé de sécurité - - - - - Part-DB1\templates\security\U2F\u2f_register.html.twig:6 - Part-DB1\templates\Users\_2fa_settings.html.twig:111 - Part-DB1\templates\security\U2F\u2f_register.html.twig:6 - Part-DB1\templates\Users\_2fa_settings.html.twig:111 - - - tfa_u2f.explanation - À l'aide d'une clé de sécurité compatible U2F/FIDO (par exemple YubiKey ou NitroKey), une authentification à deux facteurs sûre et pratique peut être obtenue. Les clés de sécurité peuvent être enregistrées ici, et si une vérification à deux facteurs est nécessaire, il suffit d'insérer la clé via USB ou de la taper sur le dispositif via NFC. - - - - - Part-DB1\templates\security\U2F\u2f_register.html.twig:7 - Part-DB1\templates\security\U2F\u2f_register.html.twig:7 - - - tfa_u2f.add_key.backup_hint - Pour garantir l'accès même en cas de perte de la clé, il est recommandé d'enregistrer une deuxième clé en guise de sauvegarde et de la conserver dans un endroit sûr ! - - - - - Part-DB1\templates\security\U2F\u2f_register.html.twig:16 - Part-DB1\templates\security\U2F\u2f_register.html.twig:16 - - - r_u2f_two_factor.name - Afficher le nom de la clé (par exemple, sauvegarde) - - - - - Part-DB1\templates\security\U2F\u2f_register.html.twig:19 - Part-DB1\templates\security\U2F\u2f_register.html.twig:19 - - - tfa_u2f.add_key.add_button - Ajouter une clé de sécurité - - - - - Part-DB1\templates\security\U2F\u2f_register.html.twig:27 - Part-DB1\templates\security\U2F\u2f_register.html.twig:27 - - - tfa_u2f.add_key.back_to_settings - Retour aux paramètres - - - - - Part-DB1\templates\Statistics\statistics.html.twig:5 - Part-DB1\templates\Statistics\statistics.html.twig:8 - Part-DB1\templates\Statistics\statistics.html.twig:5 - Part-DB1\templates\Statistics\statistics.html.twig:8 - new - - - statistics.title - Statistiques - - - - - Part-DB1\templates\Statistics\statistics.html.twig:14 - Part-DB1\templates\Statistics\statistics.html.twig:14 - new - - - statistics.parts - Composants - - - - - Part-DB1\templates\Statistics\statistics.html.twig:19 - Part-DB1\templates\Statistics\statistics.html.twig:19 - new - - - statistics.data_structures - Structures des données - - - - - Part-DB1\templates\Statistics\statistics.html.twig:24 - Part-DB1\templates\Statistics\statistics.html.twig:24 - new - - - statistics.attachments - Fichiers joints - - - - - Part-DB1\templates\Statistics\statistics.html.twig:34 - Part-DB1\templates\Statistics\statistics.html.twig:59 - Part-DB1\templates\Statistics\statistics.html.twig:104 - Part-DB1\templates\Statistics\statistics.html.twig:34 - Part-DB1\templates\Statistics\statistics.html.twig:59 - Part-DB1\templates\Statistics\statistics.html.twig:104 - new - - - statistics.property - Propriété - - - - - Part-DB1\templates\Statistics\statistics.html.twig:35 - Part-DB1\templates\Statistics\statistics.html.twig:60 - Part-DB1\templates\Statistics\statistics.html.twig:105 - Part-DB1\templates\Statistics\statistics.html.twig:35 - Part-DB1\templates\Statistics\statistics.html.twig:60 - Part-DB1\templates\Statistics\statistics.html.twig:105 - new - - - statistics.value - Valeur - - - - - Part-DB1\templates\Statistics\statistics.html.twig:40 - Part-DB1\templates\Statistics\statistics.html.twig:40 - new - - - statistics.distinct_parts_count - Nombre de composants distincts - - - - - Part-DB1\templates\Statistics\statistics.html.twig:44 - Part-DB1\templates\Statistics\statistics.html.twig:44 - new - - - statistics.parts_instock_sum - Somme de tout les composants en stock - - - - - Part-DB1\templates\Statistics\statistics.html.twig:48 - Part-DB1\templates\Statistics\statistics.html.twig:48 - new - - - statistics.parts_with_price - Nombre de composants avec information de prix - - - - - Part-DB1\templates\Statistics\statistics.html.twig:65 - Part-DB1\templates\Statistics\statistics.html.twig:65 - new - - - statistics.categories_count - Nombre de catégories - - - - - Part-DB1\templates\Statistics\statistics.html.twig:69 - Part-DB1\templates\Statistics\statistics.html.twig:69 - new - - - statistics.footprints_count - Nombre d'empreintes - - - - - Part-DB1\templates\Statistics\statistics.html.twig:73 - Part-DB1\templates\Statistics\statistics.html.twig:73 - new - - - statistics.manufacturers_count - Nombre de fabricants - - - - - Part-DB1\templates\Statistics\statistics.html.twig:77 - Part-DB1\templates\Statistics\statistics.html.twig:77 - new - - - statistics.storelocations_count - Nombre d'emplacements de stockage - - - - - Part-DB1\templates\Statistics\statistics.html.twig:81 - Part-DB1\templates\Statistics\statistics.html.twig:81 - new - - - statistics.suppliers_count - Nombre de fournisseurs - - - - - Part-DB1\templates\Statistics\statistics.html.twig:85 - Part-DB1\templates\Statistics\statistics.html.twig:85 - new - - - statistics.currencies_count - Nombre de devises - - - - - Part-DB1\templates\Statistics\statistics.html.twig:89 - Part-DB1\templates\Statistics\statistics.html.twig:89 - new - - - statistics.measurement_units_count - Nombre d'unités de mesure - - - - - Part-DB1\templates\Statistics\statistics.html.twig:93 - Part-DB1\templates\Statistics\statistics.html.twig:93 - new - - - statistics.devices_count - Nombre de projets - - - - - Part-DB1\templates\Statistics\statistics.html.twig:110 - Part-DB1\templates\Statistics\statistics.html.twig:110 - new - - - statistics.attachment_types_count - Nombre de types de fichiers joints - - - - - Part-DB1\templates\Statistics\statistics.html.twig:114 - Part-DB1\templates\Statistics\statistics.html.twig:114 - new - - - statistics.all_attachments_count - Total des pièces jointes - - - - - Part-DB1\templates\Statistics\statistics.html.twig:118 - Part-DB1\templates\Statistics\statistics.html.twig:118 - new - - - statistics.user_uploaded_attachments_count - Nombre de fichiers joints envoyées - - - - - Part-DB1\templates\Statistics\statistics.html.twig:122 - Part-DB1\templates\Statistics\statistics.html.twig:122 - new - - - statistics.private_attachments_count - Nombre de fichiers joints privés - - - - - Part-DB1\templates\Statistics\statistics.html.twig:126 - Part-DB1\templates\Statistics\statistics.html.twig:126 - new - - - statistics.external_attachments_count - Nombre de fichiers joints externes - - - - - Part-DB1\templates\Users\backup_codes.html.twig:3 - Part-DB1\templates\Users\backup_codes.html.twig:9 - Part-DB1\templates\Users\backup_codes.html.twig:3 - Part-DB1\templates\Users\backup_codes.html.twig:9 - - - tfa_backup.codes.title - Codes de secours - - - - - Part-DB1\templates\Users\backup_codes.html.twig:12 - Part-DB1\templates\Users\backup_codes.html.twig:12 - - - tfa_backup.codes.explanation - Imprimez ces codes et conservez-les dans un endroit sûr ! - - - - - Part-DB1\templates\Users\backup_codes.html.twig:13 - Part-DB1\templates\Users\backup_codes.html.twig:13 - - - tfa_backup.codes.help - Si vous n'avez plus accès à votre appareil avec l'application d'authentification (smartphone perdu, perte de données, etc.), vous pouvez utiliser un de ces codes pour accéder à votre compte et éventuellement configurer une nouvelle application d'authentification. Chacun de ces codes peut être utilisé une fois, il est recommandé de supprimer les codes utilisés. Toute personne ayant accès à ces codes peut potentiellement accéder à votre compte, alors gardez-les en lieu sûr. - - - - - Part-DB1\templates\Users\backup_codes.html.twig:16 - Part-DB1\templates\Users\backup_codes.html.twig:16 - - - tfa_backup.username - Nom d'utilisateur - - - - - Part-DB1\templates\Users\backup_codes.html.twig:29 - Part-DB1\templates\Users\backup_codes.html.twig:29 - - - tfa_backup.codes.page_generated_on - Page générée le %date% - - - - - Part-DB1\templates\Users\backup_codes.html.twig:32 - Part-DB1\templates\Users\backup_codes.html.twig:32 - - - tfa_backup.codes.print - Imprimer - - - - - Part-DB1\templates\Users\backup_codes.html.twig:35 - Part-DB1\templates\Users\backup_codes.html.twig:35 - - - tfa_backup.codes.copy_clipboard - Copier dans le presse-papier - - - - - Part-DB1\templates\Users\user_info.html.twig:3 - Part-DB1\templates\Users\user_info.html.twig:6 - Part-DB1\templates\_navbar.html.twig:40 - Part-DB1\templates\Users\user_info.html.twig:3 - Part-DB1\templates\Users\user_info.html.twig:6 - Part-DB1\templates\_navbar.html.twig:38 - templates\base.html.twig:99 - templates\Users\user_info.html.twig:3 - templates\Users\user_info.html.twig:6 - - - user.info.label - Informations sur l'utilisateur - - - - - Part-DB1\templates\Users\user_info.html.twig:18 - Part-DB1\src\Form\UserSettingsType.php:77 - Part-DB1\templates\Users\user_info.html.twig:18 - Part-DB1\src\Form\UserSettingsType.php:77 - templates\Users\user_info.html.twig:18 - src\Form\UserSettingsType.php:32 - - - user.firstName.label - Prénom - - - - - Part-DB1\templates\Users\user_info.html.twig:24 - Part-DB1\src\Form\UserSettingsType.php:82 - Part-DB1\templates\Users\user_info.html.twig:24 - Part-DB1\src\Form\UserSettingsType.php:82 - templates\Users\user_info.html.twig:24 - src\Form\UserSettingsType.php:35 - - - user.lastName.label - Nom - - - - - Part-DB1\templates\Users\user_info.html.twig:30 - Part-DB1\src\Form\UserSettingsType.php:92 - Part-DB1\templates\Users\user_info.html.twig:30 - Part-DB1\src\Form\UserSettingsType.php:92 - templates\Users\user_info.html.twig:30 - src\Form\UserSettingsType.php:41 - - - user.email.label - Email - - - - - Part-DB1\templates\Users\user_info.html.twig:37 - Part-DB1\src\Form\UserSettingsType.php:87 - Part-DB1\templates\Users\user_info.html.twig:37 - Part-DB1\src\Form\UserSettingsType.php:87 - templates\Users\user_info.html.twig:37 - src\Form\UserSettingsType.php:38 - - - user.department.label - Département - - - - - Part-DB1\templates\Users\user_info.html.twig:47 - Part-DB1\src\Form\UserSettingsType.php:73 - Part-DB1\templates\Users\user_info.html.twig:47 - Part-DB1\src\Form\UserSettingsType.php:73 - templates\Users\user_info.html.twig:47 - src\Form\UserSettingsType.php:30 - - - user.username.label - Nom d'utilisateur - - - - - Part-DB1\templates\Users\user_info.html.twig:53 - Part-DB1\src\Services\ElementTypeNameGenerator.php:93 - Part-DB1\templates\Users\user_info.html.twig:53 - Part-DB1\src\Services\ElementTypeNameGenerator.php:93 - templates\Users\user_info.html.twig:53 - - - group.label - Groupe - - - - - Part-DB1\templates\Users\user_info.html.twig:67 - Part-DB1\templates\Users\user_info.html.twig:67 - - - user.permissions - Autorisations - - - - - Part-DB1\templates\Users\user_settings.html.twig:3 - Part-DB1\templates\Users\user_settings.html.twig:6 - Part-DB1\templates\_navbar.html.twig:39 - Part-DB1\templates\Users\user_settings.html.twig:3 - Part-DB1\templates\Users\user_settings.html.twig:6 - Part-DB1\templates\_navbar.html.twig:37 - templates\base.html.twig:98 - templates\Users\user_settings.html.twig:3 - templates\Users\user_settings.html.twig:6 - - - user.settings.label - Paramètres utilisateur - - - - - Part-DB1\templates\Users\user_settings.html.twig:18 - Part-DB1\templates\Users\user_settings.html.twig:18 - templates\Users\user_settings.html.twig:14 - - - user_settings.data.label - Données personnelles - - - - - Part-DB1\templates\Users\user_settings.html.twig:22 - Part-DB1\templates\Users\user_settings.html.twig:22 - templates\Users\user_settings.html.twig:18 - - - user_settings.configuration.label - Configuration - - - - - Part-DB1\templates\Users\user_settings.html.twig:55 - Part-DB1\templates\Users\user_settings.html.twig:55 - templates\Users\user_settings.html.twig:48 - - - user.settings.change_pw - Changer de mot de passe - - - - - Part-DB1\templates\Users\_2fa_settings.html.twig:6 - Part-DB1\templates\Users\_2fa_settings.html.twig:6 - - - user.settings.2fa_settings - Authentification à deux facteurs - - - - - Part-DB1\templates\Users\_2fa_settings.html.twig:13 - Part-DB1\templates\Users\_2fa_settings.html.twig:13 - - - tfa.settings.google.tab - Application d'authentification - - - - - Part-DB1\templates\Users\_2fa_settings.html.twig:17 - Part-DB1\templates\Users\_2fa_settings.html.twig:17 - - - tfa.settings.bakup.tab - Codes de secours - - - - - Part-DB1\templates\Users\_2fa_settings.html.twig:21 - Part-DB1\templates\Users\_2fa_settings.html.twig:21 - - - tfa.settings.u2f.tab - Clés de sécurité (U2F) - - - - - Part-DB1\templates\Users\_2fa_settings.html.twig:25 - Part-DB1\templates\Users\_2fa_settings.html.twig:25 - - - tfa.settings.trustedDevices.tab - Appareils de confiance - - - - - Part-DB1\templates\Users\_2fa_settings.html.twig:33 - Part-DB1\templates\Users\_2fa_settings.html.twig:33 - - - tfa_google.disable.confirm_title - Voulez-vous vraiment désactiver l'application d'authentification ? - - - - - Part-DB1\templates\Users\_2fa_settings.html.twig:33 - Part-DB1\templates\Users\_2fa_settings.html.twig:33 - - - tfa_google.disable.confirm_message - Si vous désactivez l'application d'authentification, tous les codes de sauvegarde seront supprimés, vous devrez donc peut-être les réimprimer.<br> -Notez également que sans authentification à deux facteurs, votre compte n'est pas aussi bien protégé ! - - - - - Part-DB1\templates\Users\_2fa_settings.html.twig:39 - Part-DB1\templates\Users\_2fa_settings.html.twig:39 - - - tfa_google.disabled_message - Application d'authentification désactivée - - - - - Part-DB1\templates\Users\_2fa_settings.html.twig:48 - Part-DB1\templates\Users\_2fa_settings.html.twig:48 - - - tfa_google.step.download - Télécharger une application d'authentification (par exemple <a class="link-external" target="_blank" href="https://play.google.com/store/apps/details?id=com.google.android.apps.authenticator2">Authentificateur Google</a> ou <a class="link-external" target="_blank" href="https://play.google.com/store/apps/details?id=org.fedorahosted.freeotp">Authentificateur FreeOTP</a>) - - - - - Part-DB1\templates\Users\_2fa_settings.html.twig:49 - Part-DB1\templates\Users\_2fa_settings.html.twig:49 - - - tfa_google.step.scan - Scannez le QR code adjacent avec l'application ou saisissez les données manuellement - - - - - Part-DB1\templates\Users\_2fa_settings.html.twig:50 - Part-DB1\templates\Users\_2fa_settings.html.twig:50 - - - tfa_google.step.input_code - Entrez le code généré dans le champ ci-dessous et confirmez - - - - - Part-DB1\templates\Users\_2fa_settings.html.twig:51 - Part-DB1\templates\Users\_2fa_settings.html.twig:51 - - - tfa_google.step.download_backup - Imprimez vos codes de secours et conservez-les dans un endroit sûr - - - - - Part-DB1\templates\Users\_2fa_settings.html.twig:58 - Part-DB1\templates\Users\_2fa_settings.html.twig:58 - - - tfa_google.manual_setup - Configuration manuelle - - - - - Part-DB1\templates\Users\_2fa_settings.html.twig:62 - Part-DB1\templates\Users\_2fa_settings.html.twig:62 - - - tfa_google.manual_setup.type - Type - - - - - Part-DB1\templates\Users\_2fa_settings.html.twig:63 - Part-DB1\templates\Users\_2fa_settings.html.twig:63 - - - tfa_google.manual_setup.username - Nom d'utilisateur - - - - - Part-DB1\templates\Users\_2fa_settings.html.twig:64 - Part-DB1\templates\Users\_2fa_settings.html.twig:64 - - - tfa_google.manual_setup.secret - Secret - - - - - Part-DB1\templates\Users\_2fa_settings.html.twig:65 - Part-DB1\templates\Users\_2fa_settings.html.twig:65 - - - tfa_google.manual_setup.digit_count - Nombre de caractères - - - - - Part-DB1\templates\Users\_2fa_settings.html.twig:74 - Part-DB1\templates\Users\_2fa_settings.html.twig:74 - - - tfa_google.enabled_message - Application d'authentification activée - - - - - Part-DB1\templates\Users\_2fa_settings.html.twig:83 - Part-DB1\templates\Users\_2fa_settings.html.twig:83 - - - tfa_backup.disabled - Codes de secours désactivés. Configurez l'application d'authentification pour activer les codes de secours. - - - - - Part-DB1\templates\Users\_2fa_settings.html.twig:84 - Part-DB1\templates\Users\_2fa_settings.html.twig:92 - Part-DB1\templates\Users\_2fa_settings.html.twig:84 - Part-DB1\templates\Users\_2fa_settings.html.twig:92 - - - tfa_backup.explanation - Grâce à ces codes de secours, vous pouvez accéder à votre compte même si vous perdez l'appareil avec l'application d'authentification. Imprimez les codes et conservez-les dans un endroit sûr. - - - - - Part-DB1\templates\Users\_2fa_settings.html.twig:88 - Part-DB1\templates\Users\_2fa_settings.html.twig:88 - - - tfa_backup.reset_codes.confirm_title - Etes vous sûr de vouloir réinitialiser les codes ? - - - - - Part-DB1\templates\Users\_2fa_settings.html.twig:88 - Part-DB1\templates\Users\_2fa_settings.html.twig:88 - - - tfa_backup.reset_codes.confirm_message - Cela permettra de supprimer tous les codes précédents et de générer un ensemble de nouveaux codes. Cela ne peut pas être annulé. N'oubliez pas d'imprimer les nouveaux codes et de les conserver dans un endroit sûr ! - - - - - Part-DB1\templates\Users\_2fa_settings.html.twig:91 - Part-DB1\templates\Users\_2fa_settings.html.twig:91 - - - tfa_backup.enabled - Codes de secours activés - - - - - Part-DB1\templates\Users\_2fa_settings.html.twig:99 - Part-DB1\templates\Users\_2fa_settings.html.twig:99 - - - tfa_backup.show_codes - Afficher les codes de secours - - - - - Part-DB1\templates\Users\_2fa_settings.html.twig:114 - Part-DB1\templates\Users\_2fa_settings.html.twig:114 - - - tfa_u2f.table_caption - Clés de sécurité enregistrées - - - - - Part-DB1\templates\Users\_2fa_settings.html.twig:115 - Part-DB1\templates\Users\_2fa_settings.html.twig:115 - - - tfa_u2f.delete_u2f.confirm_title - Etes vous sûr de vouloir supprimer cette clé de sécurité ? - - - - - Part-DB1\templates\Users\_2fa_settings.html.twig:116 - Part-DB1\templates\Users\_2fa_settings.html.twig:116 - - - tfa_u2f.delete_u2f.confirm_message - Si vous supprimez cette clé, il ne sera plus possible de se connecter avec cette clé. S'il ne reste aucune clé de sécurité, l'authentification à deux facteurs sera désactivée. - - - - - Part-DB1\templates\Users\_2fa_settings.html.twig:123 - Part-DB1\templates\Users\_2fa_settings.html.twig:123 - - - tfa_u2f.keys.name - Nom de la clé - - - - - Part-DB1\templates\Users\_2fa_settings.html.twig:124 - Part-DB1\templates\Users\_2fa_settings.html.twig:124 - - - tfa_u2f.keys.added_date - Date d'enregistrement - - - - - Part-DB1\templates\Users\_2fa_settings.html.twig:134 - Part-DB1\templates\Users\_2fa_settings.html.twig:134 - - - tfa_u2f.key_delete - Supprimer la clé - - - - - Part-DB1\templates\Users\_2fa_settings.html.twig:141 - Part-DB1\templates\Users\_2fa_settings.html.twig:141 - - - tfa_u2f.no_keys_registered - Aucune clé de sécurité enregistrée - - - - - Part-DB1\templates\Users\_2fa_settings.html.twig:144 - Part-DB1\templates\Users\_2fa_settings.html.twig:144 - - - tfa_u2f.add_new_key - Enregistrer une nouvelle clé de sécurité - - - - - Part-DB1\templates\Users\_2fa_settings.html.twig:148 - Part-DB1\templates\Users\_2fa_settings.html.twig:148 - - - tfa_trustedDevices.explanation - Lors de la vérification du deuxième facteur, l'ordinateur actuel peut être marqué comme étant digne de confiance, de sorte qu'il n'est plus nécessaire de procéder à des vérifications à deux facteurs sur cet ordinateur. -Si vous avez fait cela de manière incorrecte ou si un ordinateur n'est plus fiable, vous pouvez réinitialiser le statut de <i>tous</i> les ordinateurs ici. - - - - - Part-DB1\templates\Users\_2fa_settings.html.twig:149 - Part-DB1\templates\Users\_2fa_settings.html.twig:149 - - - tfa_trustedDevices.invalidate.confirm_title - Etes vous sûr de vouloir supprimer tous les ordinateurs de confiance ? - - - - - Part-DB1\templates\Users\_2fa_settings.html.twig:150 - Part-DB1\templates\Users\_2fa_settings.html.twig:150 - - - tfa_trustedDevices.invalidate.confirm_message - Vous devrez à nouveau procéder à une authentification à deux facteurs sur tous les ordinateurs. Assurez-vous d'avoir votre appareil à deux facteurs à portée de main. - - - - - Part-DB1\templates\Users\_2fa_settings.html.twig:154 - Part-DB1\templates\Users\_2fa_settings.html.twig:154 - - - tfa_trustedDevices.invalidate.btn - Supprimer tous les dispositifs de confiance - - - - - Part-DB1\templates\_navbar.html.twig:4 - Part-DB1\templates\_navbar.html.twig:4 - templates\base.html.twig:29 - - - sidebar.toggle - Activer/désactiver la barre latérale - - - - - Part-DB1\templates\_navbar.html.twig:22 - - - navbar.scanner.link - Scanner - - - - - Part-DB1\templates\_navbar.html.twig:38 - Part-DB1\templates\_navbar.html.twig:36 - templates\base.html.twig:97 - - - user.loggedin.label - Connecté en tant que - - - - - Part-DB1\templates\_navbar.html.twig:44 - Part-DB1\templates\_navbar.html.twig:42 - templates\base.html.twig:103 - - - user.login - Connexion - - - - - Part-DB1\templates\_navbar.html.twig:50 - Part-DB1\templates\_navbar.html.twig:48 - - - ui.toggle_darkmode - Darkmode - - - - - Part-DB1\templates\_navbar.html.twig:54 - Part-DB1\src\Form\UserSettingsType.php:97 - Part-DB1\templates\_navbar.html.twig:52 - Part-DB1\src\Form\UserSettingsType.php:97 - templates\base.html.twig:106 - src\Form\UserSettingsType.php:44 - - - user.language_select - Langue - - - - - Part-DB1\templates\_navbar_search.html.twig:4 - Part-DB1\templates\_navbar_search.html.twig:4 - templates\base.html.twig:49 - - - search.options.label - Options de recherche - - - - - Part-DB1\templates\_navbar_search.html.twig:23 - - - tags.label - Tags - - - - - Part-DB1\templates\_navbar_search.html.twig:27 - Part-DB1\src\Form\LabelOptionsType.php:68 - Part-DB1\src\Services\ElementTypeNameGenerator.php:88 - Part-DB1\src\Services\ElementTypeNameGenerator.php:88 - templates\base.html.twig:60 - templates\Parts\show_part_info.html.twig:36 - src\Form\PartType.php:77 - - - storelocation.label - Emplacement de stockage - - - - - Part-DB1\templates\_navbar_search.html.twig:36 - Part-DB1\templates\_navbar_search.html.twig:31 - templates\base.html.twig:65 - - - ordernumber.label.short - Codecmd. - - - - - Part-DB1\templates\_navbar_search.html.twig:40 - Part-DB1\src\Services\ElementTypeNameGenerator.php:89 - Part-DB1\templates\_navbar_search.html.twig:35 - Part-DB1\src\Services\ElementTypeNameGenerator.php:89 - templates\base.html.twig:67 - - - supplier.label - Fournisseur - - - - - Part-DB1\templates\_navbar_search.html.twig:57 - Part-DB1\templates\_navbar_search.html.twig:52 - templates\base.html.twig:75 - - - search.deactivateBarcode - Désa. Code barres - - - - - Part-DB1\templates\_navbar_search.html.twig:61 - Part-DB1\templates\_navbar_search.html.twig:56 - templates\base.html.twig:77 - - - search.regexmatching - Reg.Ex. Correspondance - - - - - Part-DB1\templates\_navbar_search.html.twig:68 - Part-DB1\templates\_navbar_search.html.twig:62 - - - search.submit - Rechercher! - - - - - Part-DB1\templates\_sidebar.html.twig:2 - Part-DB1\templates\_sidebar.html.twig:2 - templates\base.html.twig:165 - templates\base.html.twig:192 - templates\base.html.twig:220 - - - actions - Actions - - - - - Part-DB1\templates\_sidebar.html.twig:6 - Part-DB1\templates\_sidebar.html.twig:6 - templates\base.html.twig:169 - templates\base.html.twig:196 - templates\base.html.twig:224 - - - datasource - Source de données - - - - - Part-DB1\templates\_sidebar.html.twig:10 - Part-DB1\templates\_sidebar.html.twig:10 - templates\base.html.twig:173 - templates\base.html.twig:200 - templates\base.html.twig:228 - - - manufacturer.labelp - Fabricants - - - - - Part-DB1\templates\_sidebar.html.twig:11 - Part-DB1\templates\_sidebar.html.twig:11 - templates\base.html.twig:174 - templates\base.html.twig:201 - templates\base.html.twig:229 - - - supplier.labelp - Fournisseurs - - - - - Part-DB1\src\Controller\AdminPages\BaseAdminController.php:213 - Part-DB1\src\Controller\AdminPages\BaseAdminController.php:293 - Part-DB1\src\Controller\PartController.php:173 - Part-DB1\src\Controller\PartController.php:293 - Part-DB1\src\Controller\AdminPages\BaseAdminController.php:181 - Part-DB1\src\Controller\AdminPages\BaseAdminController.php:243 - Part-DB1\src\Controller\PartController.php:173 - Part-DB1\src\Controller\PartController.php:268 - - - attachment.download_failed - Le téléchargement du fichier joint a échoué ! - - - - - Part-DB1\src\Controller\AdminPages\BaseAdminController.php:222 - Part-DB1\src\Controller\AdminPages\BaseAdminController.php:190 - - - entity.edit_flash - Changements sauvegardés avec succès. - - - - - Part-DB1\src\Controller\AdminPages\BaseAdminController.php:231 - Part-DB1\src\Controller\AdminPages\BaseAdminController.php:196 - - - entity.edit_flash.invalid - Les changements n'ont pas pu être sauvegardés ! Veuillez vérifier vos données ! - - - - - Part-DB1\src\Controller\AdminPages\BaseAdminController.php:302 - Part-DB1\src\Controller\AdminPages\BaseAdminController.php:252 - - - entity.created_flash - Élément créé avec succès ! - - - - - Part-DB1\src\Controller\AdminPages\BaseAdminController.php:308 - Part-DB1\src\Controller\AdminPages\BaseAdminController.php:258 - - - entity.created_flash.invalid - L'élément n'a pas pu être créé ! Vérifiez vos données ! - - - - - Part-DB1\src\Controller\AdminPages\BaseAdminController.php:399 - Part-DB1\src\Controller\AdminPages\BaseAdminController.php:352 - src\Controller\BaseAdminController.php:154 - - - attachment_type.deleted - Élément supprimé ! - - - - - Part-DB1\src\Controller\AdminPages\BaseAdminController.php:401 - Part-DB1\src\Controller\UserController.php:109 - Part-DB1\src\Controller\UserSettingsController.php:159 - Part-DB1\src\Controller\UserSettingsController.php:193 - Part-DB1\src\Controller\AdminPages\BaseAdminController.php:354 - Part-DB1\src\Controller\UserController.php:101 - Part-DB1\src\Controller\UserSettingsController.php:150 - Part-DB1\src\Controller\UserSettingsController.php:182 - - - csfr_invalid - Le jeton RFTS n'est pas valable ! Rechargez cette page ou contactez un administrateur si le problème persiste ! - - - - - Part-DB1\src\Controller\LabelController.php:125 - - - label_generator.no_entities_found - Aucune entité correspondant à la gamme trouvée. - - - - - Part-DB1\src\Controller\LogController.php:149 - Part-DB1\src\Controller\LogController.php:154 - new - - - log.undo.target_not_found - L'élément ciblé n'a pas pu être trouvé dans la base de données ! - - - - - Part-DB1\src\Controller\LogController.php:156 - Part-DB1\src\Controller\LogController.php:160 - new - - - log.undo.revert_success - Rétablissement réussi. - - - - - Part-DB1\src\Controller\LogController.php:176 - Part-DB1\src\Controller\LogController.php:180 - new - - - log.undo.element_undelete_success - Élément restauré avec succès. - - - - - Part-DB1\src\Controller\LogController.php:178 - Part-DB1\src\Controller\LogController.php:182 - new - - - log.undo.element_element_already_undeleted - L'élément a déjà été restauré ! - - - - - Part-DB1\src\Controller\LogController.php:185 - Part-DB1\src\Controller\LogController.php:189 - new - - - log.undo.element_delete_success - L'élément a été supprimé avec succès. - - - - - Part-DB1\src\Controller\LogController.php:187 - Part-DB1\src\Controller\LogController.php:191 - new - - - log.undo.element.element_already_delted - L'élément a déjà été supprimé ! - - - - - Part-DB1\src\Controller\LogController.php:194 - Part-DB1\src\Controller\LogController.php:198 - new - - - log.undo.element_change_undone - Annulation de la modification de l'élément - - - - - Part-DB1\src\Controller\LogController.php:196 - Part-DB1\src\Controller\LogController.php:200 - new - - - log.undo.do_undelete_before - Vous devez supprimer l'élément avant de pouvoir annuler ce changement ! - - - - - Part-DB1\src\Controller\LogController.php:199 - Part-DB1\src\Controller\LogController.php:203 - new - - - log.undo.log_type_invalid - Cette entrée de journal ne peut pas être annulée ! - - - - - Part-DB1\src\Controller\PartController.php:182 - Part-DB1\src\Controller\PartController.php:182 - src\Controller\PartController.php:80 - - - part.edited_flash - Changements sauvegardés ! - - - - - Part-DB1\src\Controller\PartController.php:186 - Part-DB1\src\Controller\PartController.php:186 - - - part.edited_flash.invalid - Erreur lors de l'enregistrement : Vérifiez vos données ! - - - - - Part-DB1\src\Controller\PartController.php:216 - Part-DB1\src\Controller\PartController.php:219 - - - part.deleted - Composant supprimé avec succès. - - - - - Part-DB1\src\Controller\PartController.php:302 - Part-DB1\src\Controller\PartController.php:277 - Part-DB1\src\Controller\PartController.php:317 - src\Controller\PartController.php:113 - src\Controller\PartController.php:142 - - - part.created_flash - Composants créés avec succès ! - - - - - Part-DB1\src\Controller\PartController.php:308 - Part-DB1\src\Controller\PartController.php:283 - - - part.created_flash.invalid - Erreur lors de la création : Vérifiez vos données ! - - - - - Part-DB1\src\Controller\ScanController.php:68 - Part-DB1\src\Controller\ScanController.php:90 - - - scan.qr_not_found - Aucun élément trouvé pour le code-barres donné. - - - - - Part-DB1\src\Controller\ScanController.php:71 - - - scan.format_unknown - Format inconnu ! - - - - - Part-DB1\src\Controller\ScanController.php:86 - - - scan.qr_success - Élément trouvé. - - - - - Part-DB1\src\Controller\SecurityController.php:114 - Part-DB1\src\Controller\SecurityController.php:109 - - - pw_reset.user_or_email - Nom d'utilisateur / Email - - - - - Part-DB1\src\Controller\SecurityController.php:131 - Part-DB1\src\Controller\SecurityController.php:126 - - - pw_reset.request.success - Demande de mot de passe réussie ! Consultez vos e-mails pour plus d'informations. - - - - - Part-DB1\src\Controller\SecurityController.php:162 - Part-DB1\src\Controller\SecurityController.php:160 - - - pw_reset.username - Nom d'utilisateur - - - - - Part-DB1\src\Controller\SecurityController.php:165 - Part-DB1\src\Controller\SecurityController.php:163 - - - pw_reset.token - Jeton - - - - - Part-DB1\src\Controller\SecurityController.php:194 - Part-DB1\src\Controller\SecurityController.php:192 - - - pw_reset.new_pw.error - Nom d'utilisateur ou jeton invalide ! Veuillez vérifier vos données. - - - - - Part-DB1\src\Controller\SecurityController.php:196 - Part-DB1\src\Controller\SecurityController.php:194 - - - pw_reset.new_pw.success - Le mot de passe a été réinitialisé avec succès. Vous pouvez maintenant vous connecter avec le nouveau mot de passe. - - - - - Part-DB1\src\Controller\UserController.php:107 - Part-DB1\src\Controller\UserController.php:99 - - - user.edit.reset_success - Toutes les méthodes d'authentification à deux facteurs ont été désactivées avec succès. - - - - - Part-DB1\src\Controller\UserSettingsController.php:101 - Part-DB1\src\Controller\UserSettingsController.php:92 - - - tfa_backup.no_codes_enabled - Aucun code de secours n'est activé ! - - - - - Part-DB1\src\Controller\UserSettingsController.php:138 - Part-DB1\src\Controller\UserSettingsController.php:132 - - - tfa_u2f.u2f_delete.not_existing - Il n'y a pas de clé de sécurité avec cet ID ! - - - - - Part-DB1\src\Controller\UserSettingsController.php:145 - Part-DB1\src\Controller\UserSettingsController.php:139 - - - tfa_u2f.u2f_delete.access_denied - Vous ne pouvez pas supprimer les clés de sécurité des autres utilisateurs ! - - - - - Part-DB1\src\Controller\UserSettingsController.php:153 - Part-DB1\src\Controller\UserSettingsController.php:147 - - - tfa.u2f.u2f_delete.success - Clé de sécurité retirée avec succès. - - - - - Part-DB1\src\Controller\UserSettingsController.php:188 - Part-DB1\src\Controller\UserSettingsController.php:180 - - - tfa_trustedDevice.invalidate.success - Les appareils de confiance ont été réinitialisés avec succès. - - - - - Part-DB1\src\Controller\UserSettingsController.php:235 - Part-DB1\src\Controller\UserSettingsController.php:226 - src\Controller\UserController.php:98 - - - user.settings.saved_flash - Paramètres sauvegardés ! - - - - - Part-DB1\src\Controller\UserSettingsController.php:297 - Part-DB1\src\Controller\UserSettingsController.php:288 - src\Controller\UserController.php:130 - - - user.settings.pw_changed_flash - Mot de passe changé ! - - - - - Part-DB1\src\Controller\UserSettingsController.php:317 - Part-DB1\src\Controller\UserSettingsController.php:306 - - - user.settings.2fa.google.activated - L'application d'authentification a été activée avec succès. - - - - - Part-DB1\src\Controller\UserSettingsController.php:328 - Part-DB1\src\Controller\UserSettingsController.php:315 - - - user.settings.2fa.google.disabled - L'application d'authentification a été désactivée avec succès. - - - - - Part-DB1\src\Controller\UserSettingsController.php:346 - Part-DB1\src\Controller\UserSettingsController.php:332 - - - user.settings.2fa.backup_codes.regenerated - De nouveaux codes de secours ont été générés avec succès. - - - - - Part-DB1\src\DataTables\AttachmentDataTable.php:148 - Part-DB1\src\DataTables\AttachmentDataTable.php:148 - - - attachment.table.filename - Nom du fichier - - - - - Part-DB1\src\DataTables\AttachmentDataTable.php:153 - Part-DB1\src\DataTables\AttachmentDataTable.php:153 - - - attachment.table.filesize - Taille du fichier - - - - - Part-DB1\src\DataTables\AttachmentDataTable.php:183 - Part-DB1\src\DataTables\AttachmentDataTable.php:191 - Part-DB1\src\DataTables\AttachmentDataTable.php:200 - Part-DB1\src\DataTables\AttachmentDataTable.php:209 - Part-DB1\src\DataTables\PartsDataTable.php:245 - Part-DB1\src\DataTables\PartsDataTable.php:252 - Part-DB1\src\DataTables\AttachmentDataTable.php:183 - Part-DB1\src\DataTables\AttachmentDataTable.php:191 - Part-DB1\src\DataTables\AttachmentDataTable.php:200 - Part-DB1\src\DataTables\AttachmentDataTable.php:209 - Part-DB1\src\DataTables\PartsDataTable.php:193 - Part-DB1\src\DataTables\PartsDataTable.php:200 - - - true - Vrai - - - - - Part-DB1\src\DataTables\AttachmentDataTable.php:184 - Part-DB1\src\DataTables\AttachmentDataTable.php:192 - Part-DB1\src\DataTables\AttachmentDataTable.php:201 - Part-DB1\src\DataTables\AttachmentDataTable.php:210 - Part-DB1\src\DataTables\PartsDataTable.php:246 - Part-DB1\src\DataTables\PartsDataTable.php:253 - Part-DB1\src\Form\Type\SIUnitType.php:139 - Part-DB1\src\DataTables\AttachmentDataTable.php:184 - Part-DB1\src\DataTables\AttachmentDataTable.php:192 - Part-DB1\src\DataTables\AttachmentDataTable.php:201 - Part-DB1\src\DataTables\AttachmentDataTable.php:210 - Part-DB1\src\DataTables\PartsDataTable.php:194 - Part-DB1\src\DataTables\PartsDataTable.php:201 - Part-DB1\src\Form\Type\SIUnitType.php:139 - - - false - Faux - - - - - Part-DB1\src\DataTables\Column\LogEntryTargetColumn.php:128 - Part-DB1\src\DataTables\Column\LogEntryTargetColumn.php:119 - - - log.target_deleted - Cible supprimée. - - - - - Part-DB1\src\DataTables\Column\RevertLogColumn.php:57 - Part-DB1\src\DataTables\Column\RevertLogColumn.php:60 - new - - - log.undo.undelete - Annuler la suppression - - - - - Part-DB1\src\DataTables\Column\RevertLogColumn.php:63 - Part-DB1\src\DataTables\Column\RevertLogColumn.php:66 - new - - - log.undo.undo - Annuler la modification - - - - - Part-DB1\src\DataTables\Column\RevertLogColumn.php:83 - Part-DB1\src\DataTables\Column\RevertLogColumn.php:86 - new - - - log.undo.revert - Restaurer à cette date - - - - - Part-DB1\src\DataTables\LogDataTable.php:173 - Part-DB1\src\DataTables\LogDataTable.php:161 - - - log.id - ID - - - - - Part-DB1\src\DataTables\LogDataTable.php:178 - Part-DB1\src\DataTables\LogDataTable.php:166 - - - log.timestamp - Horodatage - - - - - Part-DB1\src\DataTables\LogDataTable.php:183 - Part-DB1\src\DataTables\LogDataTable.php:171 - - - log.type - Type - - - - - Part-DB1\src\DataTables\LogDataTable.php:191 - Part-DB1\src\DataTables\LogDataTable.php:179 - - - log.level - Niveau - - - - - Part-DB1\src\DataTables\LogDataTable.php:200 - Part-DB1\src\DataTables\LogDataTable.php:188 - - - log.user - Utilisateur - - - - - Part-DB1\src\DataTables\LogDataTable.php:213 - Part-DB1\src\DataTables\LogDataTable.php:201 - - - log.target_type - Type de cible - - - - - Part-DB1\src\DataTables\LogDataTable.php:226 - Part-DB1\src\DataTables\LogDataTable.php:214 - - - log.target - Cible - - - - - Part-DB1\src\DataTables\LogDataTable.php:231 - Part-DB1\src\DataTables\LogDataTable.php:218 - new - - - log.extra - Extra - - - - - Part-DB1\src\DataTables\PartsDataTable.php:168 - Part-DB1\src\DataTables\PartsDataTable.php:116 - - - part.table.name - Nom - - - - - Part-DB1\src\DataTables\PartsDataTable.php:178 - Part-DB1\src\DataTables\PartsDataTable.php:126 - - - part.table.id - ID - - - - - Part-DB1\src\DataTables\PartsDataTable.php:182 - Part-DB1\src\DataTables\PartsDataTable.php:130 - - - part.table.description - Description - - - - - Part-DB1\src\DataTables\PartsDataTable.php:185 - Part-DB1\src\DataTables\PartsDataTable.php:133 - - - part.table.category - Catégorie - - - - - Part-DB1\src\DataTables\PartsDataTable.php:190 - Part-DB1\src\DataTables\PartsDataTable.php:138 - - - part.table.footprint - Empreinte - - - - - Part-DB1\src\DataTables\PartsDataTable.php:194 - Part-DB1\src\DataTables\PartsDataTable.php:142 - - - part.table.manufacturer - Fabricant - - - - - Part-DB1\src\DataTables\PartsDataTable.php:197 - Part-DB1\src\DataTables\PartsDataTable.php:145 - - - part.table.storeLocations - Emplacement de stockage - - - - - Part-DB1\src\DataTables\PartsDataTable.php:216 - Part-DB1\src\DataTables\PartsDataTable.php:164 - - - part.table.amount - Quantité - - - - - Part-DB1\src\DataTables\PartsDataTable.php:224 - Part-DB1\src\DataTables\PartsDataTable.php:172 - - - part.table.minamount - Quantité min. - - - - - Part-DB1\src\DataTables\PartsDataTable.php:232 - Part-DB1\src\DataTables\PartsDataTable.php:180 - - - part.table.partUnit - Unité de mesure - - - - - part.table.partCustomState - État personnalisé de la pièce - - - - - Part-DB1\src\DataTables\PartsDataTable.php:236 - Part-DB1\src\DataTables\PartsDataTable.php:184 - - - part.table.addedDate - Créé le - - - - - Part-DB1\src\DataTables\PartsDataTable.php:240 - Part-DB1\src\DataTables\PartsDataTable.php:188 - - - part.table.lastModified - Dernière modification - - - - - Part-DB1\src\DataTables\PartsDataTable.php:244 - Part-DB1\src\DataTables\PartsDataTable.php:192 - - - part.table.needsReview - Révision nécessaire - - - - - Part-DB1\src\DataTables\PartsDataTable.php:251 - Part-DB1\src\DataTables\PartsDataTable.php:199 - - - part.table.favorite - Favoris - - - - - Part-DB1\src\DataTables\PartsDataTable.php:258 - Part-DB1\src\DataTables\PartsDataTable.php:206 - - - part.table.manufacturingStatus - État - - - - - Part-DB1\src\DataTables\PartsDataTable.php:260 - Part-DB1\src\DataTables\PartsDataTable.php:262 - Part-DB1\src\Form\Part\PartBaseType.php:90 - Part-DB1\src\DataTables\PartsDataTable.php:208 - Part-DB1\src\DataTables\PartsDataTable.php:210 - Part-DB1\src\Form\Part\PartBaseType.php:88 - - - m_status.unknown - Inconnu - - - - - Part-DB1\src\DataTables\PartsDataTable.php:263 - Part-DB1\src\Form\Part\PartBaseType.php:90 - Part-DB1\src\DataTables\PartsDataTable.php:211 - Part-DB1\src\Form\Part\PartBaseType.php:88 - - - m_status.announced - Annoncé - - - - - Part-DB1\src\DataTables\PartsDataTable.php:264 - Part-DB1\src\Form\Part\PartBaseType.php:90 - Part-DB1\src\DataTables\PartsDataTable.php:212 - Part-DB1\src\Form\Part\PartBaseType.php:88 - - - m_status.active - Actif - - - - - Part-DB1\src\DataTables\PartsDataTable.php:265 - Part-DB1\src\Form\Part\PartBaseType.php:90 - Part-DB1\src\DataTables\PartsDataTable.php:213 - Part-DB1\src\Form\Part\PartBaseType.php:88 - - - m_status.nrfnd - Non recommandé pour les nouvelles conceptions - - - - - Part-DB1\src\DataTables\PartsDataTable.php:266 - Part-DB1\src\Form\Part\PartBaseType.php:90 - Part-DB1\src\DataTables\PartsDataTable.php:214 - Part-DB1\src\Form\Part\PartBaseType.php:88 - - - m_status.eol - Fin de vie - - - - - Part-DB1\src\DataTables\PartsDataTable.php:267 - Part-DB1\src\Form\Part\PartBaseType.php:90 - Part-DB1\src\DataTables\PartsDataTable.php:215 - Part-DB1\src\Form\Part\PartBaseType.php:88 - - - m_status.discontinued - Arrêtés - - - - - Part-DB1\src\DataTables\PartsDataTable.php:271 - Part-DB1\src\DataTables\PartsDataTable.php:219 - - - part.table.mpn - MPN - - - - - Part-DB1\src\DataTables\PartsDataTable.php:275 - Part-DB1\src\DataTables\PartsDataTable.php:223 - - - part.table.mass - Poids - - - - - Part-DB1\src\DataTables\PartsDataTable.php:279 - Part-DB1\src\DataTables\PartsDataTable.php:227 - - - part.table.tags - Tags - - - - - Part-DB1\src\DataTables\PartsDataTable.php:283 - Part-DB1\src\DataTables\PartsDataTable.php:231 - - - part.table.attachments - Fichiers joints - - - - - Part-DB1\src\EventSubscriber\UserSystem\LoginSuccessSubscriber.php:82 - Part-DB1\src\EventSubscriber\LoginSuccessListener.php:82 - - - flash.login_successful - Connexion réussie. - - - - - Part-DB1\src\Form\AdminPages\ImportType.php:77 - Part-DB1\src\Form\AdminPages\ImportType.php:77 - src\Form\ImportType.php:68 - - - JSON - JSON - - - - - Part-DB1\src\Form\AdminPages\ImportType.php:77 - Part-DB1\src\Form\AdminPages\ImportType.php:77 - src\Form\ImportType.php:68 - - - XML - XML - - - - - Part-DB1\src\Form\AdminPages\ImportType.php:77 - Part-DB1\src\Form\AdminPages\ImportType.php:77 - src\Form\ImportType.php:68 - - - CSV - CSV - - - - - Part-DB1\src\Form\AdminPages\ImportType.php:77 - Part-DB1\src\Form\AdminPages\ImportType.php:77 - src\Form\ImportType.php:68 - - - YAML - YAML - - - - - Part-DB1\src\Form\AdminPages\ImportType.php:124 - Part-DB1\src\Form\AdminPages\ImportType.php:124 - - - import.abort_on_validation.help - Si cette option est activée, l'ensemble du processus est interrompu si des données non valides sont détectées. Si cette option n'est pas active, les entrées non valides sont ignorées et une tentative est faite pour importer les autres entrées. - - - - - Part-DB1\src\Form\AdminPages\ImportType.php:86 - Part-DB1\src\Form\AdminPages\ImportType.php:86 - src\Form\ImportType.php:70 - - - import.csv_separator - Séparateur CSV - - - - - Part-DB1\src\Form\AdminPages\ImportType.php:93 - Part-DB1\src\Form\AdminPages\ImportType.php:93 - src\Form\ImportType.php:72 - - - parent.label - Élément parent - - - - - Part-DB1\src\Form\AdminPages\ImportType.php:101 - Part-DB1\src\Form\AdminPages\ImportType.php:101 - src\Form\ImportType.php:75 - - - import.file - Fichier - - - - - Part-DB1\src\Form\AdminPages\ImportType.php:111 - Part-DB1\src\Form\AdminPages\ImportType.php:111 - src\Form\ImportType.php:78 - - - import.preserve_children - Importer également des sous-éléments - - - - - Part-DB1\src\Form\AdminPages\ImportType.php:120 - Part-DB1\src\Form\AdminPages\ImportType.php:120 - src\Form\ImportType.php:80 - - - import.abort_on_validation - Interrompre sur donnée invalide - - - - - Part-DB1\src\Form\AdminPages\ImportType.php:132 - Part-DB1\src\Form\AdminPages\ImportType.php:132 - src\Form\ImportType.php:85 - - - import.btn - Importer - - - - - Part-DB1\src\Form\AttachmentFormType.php:113 - Part-DB1\src\Form\AttachmentFormType.php:109 - - - attachment.edit.secure_file.help - Un fichier joint marqué comme étant privé ne peut être consulté que par un utilisateur connecté qui a l'autorisation appropriée. Si cette option est activée, aucune miniature n'est générée et l'accès au fichier est plus lent. - - - - - Part-DB1\src\Form\AttachmentFormType.php:127 - Part-DB1\src\Form\AttachmentFormType.php:123 - - - attachment.edit.url.help - Il est possible de saisir ici soit l'URL d'un fichier externe, soit un mot clé pour rechercher les ressources intégrées (par exemple les empreintes). - - - - - Part-DB1\src\Form\AttachmentFormType.php:82 - Part-DB1\src\Form\AttachmentFormType.php:79 - - - attachment.edit.name - Nom - - - - - Part-DB1\src\Form\AttachmentFormType.php:85 - Part-DB1\src\Form\AttachmentFormType.php:82 - - - attachment.edit.attachment_type - Type de fichier joint - - - - - Part-DB1\src\Form\AttachmentFormType.php:94 - Part-DB1\src\Form\AttachmentFormType.php:91 - - - attachment.edit.show_in_table - Voir dans le tableau - - - - - Part-DB1\src\Form\AttachmentFormType.php:105 - Part-DB1\src\Form\AttachmentFormType.php:102 - - - attachment.edit.secure_file - Fichier joint privé - - - - - Part-DB1\src\Form\AttachmentFormType.php:119 - Part-DB1\src\Form\AttachmentFormType.php:115 - - - attachment.edit.url - URL - - - - - Part-DB1\src\Form\AttachmentFormType.php:133 - Part-DB1\src\Form\AttachmentFormType.php:129 - - - attachment.edit.download_url - Télécharger un fichier externe - - - - - Part-DB1\src\Form\AttachmentFormType.php:146 - Part-DB1\src\Form\AttachmentFormType.php:142 - - - attachment.edit.file - Télécharger le fichier - - - - - Part-DB1\src\Form\LabelOptionsType.php:68 - Part-DB1\src\Services\ElementTypeNameGenerator.php:86 - - - part.label - Composant - - - - - Part-DB1\src\Form\LabelOptionsType.php:68 - Part-DB1\src\Services\ElementTypeNameGenerator.php:87 - - - part_lot.label - Lot de composant - - - - - Part-DB1\src\Form\LabelOptionsType.php:78 - - - label_options.barcode_type.none - Aucun - - - - - Part-DB1\src\Form\LabelOptionsType.php:78 - - - label_options.barcode_type.qr - QR Code (recommandé) - - - - - Part-DB1\src\Form\LabelOptionsType.php:78 - - - label_options.barcode_type.code128 - Code 128 (recommandé) - - - - - Part-DB1\src\Form\LabelOptionsType.php:78 - - - label_options.barcode_type.code39 - Code 39 (recommandé) - - - - - Part-DB1\src\Form\LabelOptionsType.php:78 - - - label_options.barcode_type.code93 - Code 93 - - - - - Part-DB1\src\Form\LabelOptionsType.php:78 - - - label_options.barcode_type.datamatrix - Datamatrix - - - - - Part-DB1\src\Form\LabelOptionsType.php:122 - - - label_options.lines_mode.html - Placeholders - - - - - Part-DB1\src\Form\LabelOptionsType.php:122 - - - label.options.lines_mode.twig - Twig - - - - - Part-DB1\src\Form\LabelOptionsType.php:126 - - - label_options.lines_mode.help - Si vous sélectionnez Twig ici, le champ de contenu est interprété comme un modèle Twig. Voir <a href="https://twig.symfony.com/doc/3.x/templates.html">Documentation de Twig</a> et <a href="https://github.com/Part-DB/Part-DB-symfony/wiki/Labels#twig-mode">Wiki</a> pour plus d'informations. - - - - - Part-DB1\src\Form\LabelOptionsType.php:47 - - - label_options.page_size.label - Taille de l'étiquette - - - - - Part-DB1\src\Form\LabelOptionsType.php:66 - - - label_options.supported_elements.label - Type de cible - - - - - Part-DB1\src\Form\LabelOptionsType.php:75 - - - label_options.barcode_type.label - Code barre - - - - - Part-DB1\src\Form\LabelOptionsType.php:102 - - - label_profile.lines.label - Contenu - - - - - Part-DB1\src\Form\LabelOptionsType.php:111 - - - label_options.additional_css.label - Styles supplémentaires (CSS) - - - - - Part-DB1\src\Form\LabelOptionsType.php:120 - - - label_options.lines_mode.label - Parser mode - - - - - Part-DB1\src\Form\LabelOptionsType.php:51 - - - label_options.width.placeholder - Largeur - - - - - Part-DB1\src\Form\LabelOptionsType.php:60 - - - label_options.height.placeholder - Hauteur - - - - - Part-DB1\src\Form\LabelSystem\LabelDialogType.php:49 - - - label_generator.target_id.range_hint - Vous pouvez spécifier ici plusieurs ID (par exemple 1,2,3) et/ou une plage (1-3) pour générer des étiquettes pour plusieurs éléments à la fois. - - - - - Part-DB1\src\Form\LabelSystem\LabelDialogType.php:46 - - - label_generator.target_id.label - ID des cibles - - - - - Part-DB1\src\Form\LabelSystem\LabelDialogType.php:59 - - - label_generator.update - Actualisation - - - - - Part-DB1\src\Form\LabelSystem\ScanDialogType.php:36 - - - scan_dialog.input - Saisie - - - - - Part-DB1\src\Form\LabelSystem\ScanDialogType.php:44 - - - scan_dialog.submit - Soumettre - - - - - Part-DB1\src\Form\ParameterType.php:41 - - - parameters.name.placeholder - ex. Gain de courant DC - - - - - Part-DB1\src\Form\ParameterType.php:50 - - - parameters.symbol.placeholder - ex. h_{FE} - - - - - Part-DB1\src\Form\ParameterType.php:60 - - - parameters.text.placeholder - ex. Test conditions - - - - - Part-DB1\src\Form\ParameterType.php:71 - - - parameters.max.placeholder - ex. 350 - - - - - Part-DB1\src\Form\ParameterType.php:82 - - - parameters.min.placeholder - ex. 100 - - - - - Part-DB1\src\Form\ParameterType.php:93 - - - parameters.typical.placeholder - ex. 200 - - - - - Part-DB1\src\Form\ParameterType.php:103 - - - parameters.unit.placeholder - ex. V - - - - - Part-DB1\src\Form\ParameterType.php:114 - - - parameter.group.placeholder - ex. Spécifications techniques - - - - - Part-DB1\src\Form\Part\OrderdetailType.php:72 - Part-DB1\src\Form\Part\OrderdetailType.php:75 - - - orderdetails.edit.supplierpartnr - Numéro de commande - - - - - Part-DB1\src\Form\Part\OrderdetailType.php:81 - Part-DB1\src\Form\Part\OrderdetailType.php:84 - - - orderdetails.edit.supplier - Fournisseur - - - - - Part-DB1\src\Form\Part\OrderdetailType.php:87 - Part-DB1\src\Form\Part\OrderdetailType.php:90 - - - orderdetails.edit.url - Lien vers l'offre - - - - - Part-DB1\src\Form\Part\OrderdetailType.php:93 - Part-DB1\src\Form\Part\OrderdetailType.php:96 - - - orderdetails.edit.obsolete - Plus disponible - - - - - Part-DB1\src\Form\Part\OrderdetailType.php:75 - Part-DB1\src\Form\Part\OrderdetailType.php:78 - - - orderdetails.edit.supplierpartnr.placeholder - Ex. BC 547C - - - - - Part-DB1\src\Form\Part\PartBaseType.php:101 - Part-DB1\src\Form\Part\PartBaseType.php:99 - - - part.edit.name - Nom - - - - - Part-DB1\src\Form\Part\PartBaseType.php:109 - Part-DB1\src\Form\Part\PartBaseType.php:107 - - - part.edit.description - Description - - - - - Part-DB1\src\Form\Part\PartBaseType.php:120 - Part-DB1\src\Form\Part\PartBaseType.php:118 - - - part.edit.mininstock - Stock minimum - - - - - Part-DB1\src\Form\Part\PartBaseType.php:129 - Part-DB1\src\Form\Part\PartBaseType.php:127 - - - part.edit.category - Catégories - - - - - Part-DB1\src\Form\Part\PartBaseType.php:135 - Part-DB1\src\Form\Part\PartBaseType.php:133 - - - part.edit.footprint - Empreinte - - - - - Part-DB1\src\Form\Part\PartBaseType.php:142 - Part-DB1\src\Form\Part\PartBaseType.php:140 - - - part.edit.tags - Tags - - - - - Part-DB1\src\Form\Part\PartBaseType.php:154 - Part-DB1\src\Form\Part\PartBaseType.php:152 - - - part.edit.manufacturer.label - Fabricant - - - - - Part-DB1\src\Form\Part\PartBaseType.php:161 - Part-DB1\src\Form\Part\PartBaseType.php:159 - - - part.edit.manufacturer_url.label - Lien vers la page du produit - - - - - Part-DB1\src\Form\Part\PartBaseType.php:167 - Part-DB1\src\Form\Part\PartBaseType.php:165 - - - part.edit.mpn - Numéro de pièce du fabricant - - - - - Part-DB1\src\Form\Part\PartBaseType.php:173 - Part-DB1\src\Form\Part\PartBaseType.php:171 - - - part.edit.manufacturing_status - État de la fabrication - - - - - Part-DB1\src\Form\Part\PartBaseType.php:181 - Part-DB1\src\Form\Part\PartBaseType.php:179 - - - part.edit.needs_review - Révision nécessaire - - - - - Part-DB1\src\Form\Part\PartBaseType.php:189 - Part-DB1\src\Form\Part\PartBaseType.php:187 - - - part.edit.is_favorite - Favoris - - - - - Part-DB1\src\Form\Part\PartBaseType.php:197 - Part-DB1\src\Form\Part\PartBaseType.php:195 - - - part.edit.mass - Poids - - - - - Part-DB1\src\Form\Part\PartBaseType.php:203 - Part-DB1\src\Form\Part\PartBaseType.php:201 - - - part.edit.partUnit - Unité de mesure - - - - - part.edit.partCustomState - État personnalisé de la pièce - - - - - Part-DB1\src\Form\Part\PartBaseType.php:212 - Part-DB1\src\Form\Part\PartBaseType.php:210 - - - part.edit.comment - Commentaire - - - - - Part-DB1\src\Form\Part\PartBaseType.php:250 - Part-DB1\src\Form\Part\PartBaseType.php:246 - - - part.edit.master_attachment - Miniature - - - - - Part-DB1\src\Form\Part\PartBaseType.php:295 - Part-DB1\src\Form\Part\PartBaseType.php:276 - src\Form\PartType.php:91 - - - part.edit.save - Sauvegarder les modifications - - - - - Part-DB1\src\Form\Part\PartBaseType.php:296 - Part-DB1\src\Form\Part\PartBaseType.php:277 - src\Form\PartType.php:92 - - - part.edit.reset - rejeter les modifications - - - - - Part-DB1\src\Form\Part\PartBaseType.php:105 - Part-DB1\src\Form\Part\PartBaseType.php:103 - - - part.edit.name.placeholder - Ex. BC547 - - - - - Part-DB1\src\Form\Part\PartBaseType.php:115 - Part-DB1\src\Form\Part\PartBaseType.php:113 - - - part.edit.description.placeholder - Ex. NPN 45V, 0,1A, 0,5W - - - - - Part-DB1\src\Form\Part\PartBaseType.php:123 - Part-DB1\src\Form\Part\PartBaseType.php:121 - - - part.editmininstock.placeholder - Ex. 1 - - - - - Part-DB1\src\Form\Part\PartLotType.php:69 - Part-DB1\src\Form\Part\PartLotType.php:69 - - - part_lot.edit.description - Description - - - - - Part-DB1\src\Form\Part\PartLotType.php:78 - Part-DB1\src\Form\Part\PartLotType.php:78 - - - part_lot.edit.location - Emplacement de stockage - - - - - Part-DB1\src\Form\Part\PartLotType.php:89 - Part-DB1\src\Form\Part\PartLotType.php:89 - - - part_lot.edit.amount - Quantité - - - - - Part-DB1\src\Form\Part\PartLotType.php:98 - Part-DB1\src\Form\Part\PartLotType.php:97 - - - part_lot.edit.instock_unknown - Quantité inconnue - - - - - Part-DB1\src\Form\Part\PartLotType.php:109 - Part-DB1\src\Form\Part\PartLotType.php:108 - - - part_lot.edit.needs_refill - Doit être rempli - - - - - Part-DB1\src\Form\Part\PartLotType.php:120 - Part-DB1\src\Form\Part\PartLotType.php:119 - - - part_lot.edit.expiration_date - Date d'expiration - - - - - Part-DB1\src\Form\Part\PartLotType.php:128 - Part-DB1\src\Form\Part\PartLotType.php:125 - - - part_lot.edit.comment - Commentaire - - - - - Part-DB1\src\Form\Permissions\PermissionsType.php:99 - Part-DB1\src\Form\Permissions\PermissionsType.php:99 - - - perm.group.other - Divers - - - - - Part-DB1\src\Form\TFAGoogleSettingsType.php:97 - Part-DB1\src\Form\TFAGoogleSettingsType.php:97 - - - tfa_google.enable - Activer l'application d'authentification - - - - - Part-DB1\src\Form\TFAGoogleSettingsType.php:101 - Part-DB1\src\Form\TFAGoogleSettingsType.php:101 - - - tfa_google.disable - Désactiver l'application d'authentification - - - - - Part-DB1\src\Form\TFAGoogleSettingsType.php:74 - Part-DB1\src\Form\TFAGoogleSettingsType.php:74 - - - google_confirmation - Code de confirmation - - - - - Part-DB1\src\Form\UserSettingsType.php:108 - Part-DB1\src\Form\UserSettingsType.php:108 - src\Form\UserSettingsType.php:46 - - - user.timezone.label - Fuseau horaire - - - - - Part-DB1\src\Form\UserSettingsType.php:133 - Part-DB1\src\Form\UserSettingsType.php:132 - - - user.currency.label - Devise préférée - - - - - Part-DB1\src\Form\UserSettingsType.php:140 - Part-DB1\src\Form\UserSettingsType.php:139 - src\Form\UserSettingsType.php:53 - - - save - Appliquer les modifications - - - - - Part-DB1\src\Form\UserSettingsType.php:141 - Part-DB1\src\Form\UserSettingsType.php:140 - src\Form\UserSettingsType.php:54 - - - reset - Rejeter les modifications - - - - - Part-DB1\src\Form\UserSettingsType.php:104 - Part-DB1\src\Form\UserSettingsType.php:104 - src\Form\UserSettingsType.php:45 - - - user_settings.language.placeholder - Langue du serveur - - - - - Part-DB1\src\Form\UserSettingsType.php:115 - Part-DB1\src\Form\UserSettingsType.php:115 - src\Form\UserSettingsType.php:48 - - - user_settings.timezone.placeholder - Fuseau horaire du serveur - - - - - Part-DB1\src\Services\ElementTypeNameGenerator.php:79 - Part-DB1\src\Services\ElementTypeNameGenerator.php:79 - - - attachment.label - Fichier joint - - - - - Part-DB1\src\Services\ElementTypeNameGenerator.php:81 - Part-DB1\src\Services\ElementTypeNameGenerator.php:81 - - - attachment_type.label - Type de fichier joint - - - - - Part-DB1\src\Services\ElementTypeNameGenerator.php:85 - Part-DB1\src\Services\ElementTypeNameGenerator.php:85 - - - measurement_unit.label - Unité de mesure - - - - - part_custom_state.label - État personnalisé de la pièce - - - - - Part-DB1\src\Services\ElementTypeNameGenerator.php:90 - Part-DB1\src\Services\ElementTypeNameGenerator.php:90 - - - currency.label - Devise - - - - - Part-DB1\src\Services\ElementTypeNameGenerator.php:91 - Part-DB1\src\Services\ElementTypeNameGenerator.php:91 - - - orderdetail.label - Informations de commande - - - - - Part-DB1\src\Services\ElementTypeNameGenerator.php:92 - Part-DB1\src\Services\ElementTypeNameGenerator.php:92 - - - pricedetail.label - Informations sur les prix - - - - - Part-DB1\src\Services\ElementTypeNameGenerator.php:94 - Part-DB1\src\Services\ElementTypeNameGenerator.php:94 - - - user.label - Utilisateur - - - - - Part-DB1\src\Services\ElementTypeNameGenerator.php:95 - - - parameter.label - Caractéristique - - - - - Part-DB1\src\Services\ElementTypeNameGenerator.php:96 - - - label_profile.label - Profil d'étiquette - - - - - Part-DB1\src\Services\LogSystem\LogEntryExtraFormatter.php:176 - Part-DB1\src\Services\LogSystem\LogEntryExtraFormatter.php:161 - new - - - log.element_deleted.old_name.unknown - Inconnu - - - - - Part-DB1\src\Services\MarkdownParser.php:73 - Part-DB1\src\Services\MarkdownParser.php:73 - - - markdown.loading - Chargement de la remise. Si ce message ne disparaît pas, essayez de recharger la page. - - - - - Part-DB1\src\Services\PasswordResetManager.php:98 - Part-DB1\src\Services\PasswordResetManager.php:98 - - - pw_reset.email.subject - Réinitialisation du mot de passe de votre compte Part-DB - - - - - Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:108 - - - tree.tools.tools - Outils - - - - - Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:109 - Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:107 - src\Services\ToolsTreeBuilder.php:74 - - - tree.tools.edit - Éditer - - - - - Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:110 - Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:108 - src\Services\ToolsTreeBuilder.php:81 - - - tree.tools.show - Afficher - - - - - Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:111 - Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:109 - - - tree.tools.system - Système - - - - - Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:123 - - - tree.tools.tools.label_dialog - Générateur d'étiquettes - - - - - Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:130 - - - tree.tools.tools.label_scanner - Scanner - - - - - Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:149 - Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:126 - src\Services\ToolsTreeBuilder.php:62 - - - tree.tools.edit.attachment_types - Types de fichier joint - - - - - Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:155 - Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:132 - src\Services\ToolsTreeBuilder.php:64 - - - tree.tools.edit.categories - Catégories - - - - - Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:167 - Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:144 - src\Services\ToolsTreeBuilder.php:68 - - - tree.tools.edit.suppliers - Fournisseurs - - - - - Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:173 - Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:150 - src\Services\ToolsTreeBuilder.php:70 - - - tree.tools.edit.manufacturer - Fabricants - - - - - Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:179 - Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:156 - - - tree.tools.edit.storelocation - Emplacements de stockage - - - - - Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:185 - Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:162 - - - tree.tools.edit.footprint - Empreintes - - - - - Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:191 - Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:168 - - - tree.tools.edit.currency - Devises - - - - - Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:197 - Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:174 - - - tree.tools.edit.measurement_unit - Unité de mesure - - - - - tree.tools.edit.part_custom_state - État personnalisé de la pièce - - - - - Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:203 - - - tree.tools.edit.label_profile - Profils d'étiquettes - - - - - Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:209 - Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:180 - - - tree.tools.edit.part - Composant - - - - - Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:226 - Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:197 - src\Services\ToolsTreeBuilder.php:77 - - - tree.tools.show.all_parts - Voir tous les composants - - - - - Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:232 - Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:203 - - - tree.tools.show.all_attachments - Fichiers joints - - - - - Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:239 - Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:210 - new - - - tree.tools.show.statistics - Statistiques - - - - - Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:258 - Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:229 - - - tree.tools.system.users - Utilisateurs - - - - - Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:264 - Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:235 - - - tree.tools.system.groups - Groupes - - - - - Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:271 - Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:242 - new - - - tree.tools.system.event_log - Système d'événements - - - - - Part-DB1\src\Services\Trees\TreeViewGenerator.php:95 - Part-DB1\src\Services\Trees\TreeViewGenerator.php:95 - src\Services\TreeBuilder.php:124 - - - entity.tree.new - Nouvel élément - - - - - Part-DB1\templates\Parts\info\_attachments_info.html.twig:34 - obsolete - - - attachment.external_file - Fichier extérieur - - - - - Part-DB1\templates\Parts\info\_attachments_info.html.twig:62 - obsolete - - - attachment.edit - Éditer - - - - - Part-DB1\templates\_navbar.html.twig:27 - templates\base.html.twig:88 - obsolete - - - barcode.scan - Scanner un code-barres - - - - - Part-DB1\src\Form\UserSettingsType.php:119 - src\Form\UserSettingsType.php:49 - obsolete - - - user.theme.label - Thème - - - - - Part-DB1\src\Form\UserSettingsType.php:129 - src\Form\UserSettingsType.php:50 - obsolete - - - user_settings.theme.placeholder - Thème du serveur - - - - - Part-DB1\src\Services\LogSystem\LogEntryExtraFormatter.php:100 - new - obsolete - - - log.user_login.ip - IP - - - - - Part-DB1\src\Services\LogSystem\LogEntryExtraFormatter.php:128 - Part-DB1\src\Services\LogSystem\LogEntryExtraFormatter.php:150 - Part-DB1\src\Services\LogSystem\LogEntryExtraFormatter.php:169 - Part-DB1\src\Services\LogSystem\LogEntryExtraFormatter.php:207 - new - obsolete - - - log.undo_mode.undo - Modification annulée - - - - - Part-DB1\src\Services\LogSystem\LogEntryExtraFormatter.php:130 - Part-DB1\src\Services\LogSystem\LogEntryExtraFormatter.php:152 - Part-DB1\src\Services\LogSystem\LogEntryExtraFormatter.php:171 - Part-DB1\src\Services\LogSystem\LogEntryExtraFormatter.php:209 - new - obsolete - - - log.undo_mode.revert - Élément restauré - - - - - Part-DB1\src\Services\LogSystem\LogEntryExtraFormatter.php:139 - new - obsolete - - - log.element_created.original_instock - Ancien stock - - - - - Part-DB1\src\Services\LogSystem\LogEntryExtraFormatter.php:160 - new - obsolete - - - log.element_deleted.old_name - Ancien nom - - - - - Part-DB1\src\Services\LogSystem\LogEntryExtraFormatter.php:184 - new - obsolete - - - log.element_edited.changed_fields - Champs modifiés - - - - - Part-DB1\src\Services\LogSystem\LogEntryExtraFormatter.php:198 - new - obsolete - - - log.instock_changed.comment - Commentaire - - - - - Part-DB1\src\Services\LogSystem\LogEntryExtraFormatter.php:214 - new - obsolete - - - log.collection_deleted.deleted - Élément supprimé : - - - - - templates\base.html.twig:81 - obsolete - obsolete - - - go.exclamation - Allez! - - - - - templates\base.html.twig:109 - obsolete - obsolete - - - language.english - Anglais - - - - - templates\base.html.twig:112 - obsolete - obsolete - - - language.german - Allemand - - - - - obsolete - obsolete - - - flash.password_change_needed - Votre mot de passe doit être changé ! - - - - - obsolete - obsolete - - - attachment.table.type - Type de fichier joint - - - - - obsolete - obsolete - - - attachment.table.element - élément lié - - - - - obsolete - obsolete - - - attachment.edit.isPicture - Image? - - - - - obsolete - obsolete - - - attachment.edit.is3DModel - Modèle 3D? - - - - - obsolete - obsolete - - - attachment.edit.isBuiltin - Intégré? - - - - - obsolete - obsolete - - - category.edit.default_comment.placeholder - Ex. utilisé pour les alimentations à découpage - - - - - obsolete - obsolete - - - tfa_backup.regenerate_codes - Créer de nouveaux codes de secours - - - - - obsolete - obsolete - - - validator.noneofitschild.self - Un élément ne peut pas être son propre parent. - - - - - obsolete - obsolete - - - validator.noneofitschild.children - Le parent ne peut pas être un de ses propres enfants. - - - - - obsolete - obsolete - - - validator.part_lot.location_full.no_increasment - Le lieu de stockage utilisé a été marqué comme étant plein, le stock ne peut donc pas être augmenté. (Nouveau stock maximum {{old_amount}}) - - - - - obsolete - obsolete - - - validator.part_lot.location_full - L'emplacement de stockage est plein, c'est pourquoi aucun nouveau composant ne peut être ajouté. - - - - - obsolete - obsolete - - - validator.part_lot.only_existing - L'emplacement de stockage a été marqué comme "uniquement existant", donc aucun nouveau composant ne peut être ajouté. - - - - - obsolete - obsolete - - - validator.part_lot.single_part - L'emplacement de stockage a été marqué comme "Composant seul", par conséquent aucun nouveau composant ne peut être ajouté. - - - - - obsolete - obsolete - - - m_status.active.help - Le composant est actuellement en cours de production et sera produit dans un avenir proche. - - - - - obsolete - obsolete - - - m_status.announced.help - Le composant a été annoncé, mais n'est pas encore disponible. - - - - - obsolete - obsolete - - - m_status.discontinued.help - Le composant n'est plus fabriqué. - - - - - obsolete - obsolete - - - m_status.eol.help - La production de ce composant sera bientôt arrêtée. - - - - - obsolete - obsolete - - - m_status.nrfnd.help - Ce composant est actuellement en production mais n'est pas recommandé pour les nouvelles conceptions. - - - - - obsolete - obsolete - - - m_status.unknown.help - L'état de la production n'est pas connu. - - - - - obsolete - obsolete - - - flash.success - Succès - - - - - obsolete - obsolete - - - flash.error - Erreur - - - - - obsolete - obsolete - - - flash.warning - Attention - - - - - obsolete - obsolete - - - flash.notice - Remarque - - - - - obsolete - obsolete - - - flash.info - Info - - - - - obsolete - obsolete - - - validator.noLockout - Vous ne pouvez pas révoquer vous-même l'autorisation de "modifier les autorisations" pour éviter de vous verrouiller accidentellement ! - - - - - obsolete - obsolete - - - attachment_type.edit.filetype_filter - Types de fichiers autorisés - - - - - obsolete - obsolete - - - attachment_type.edit.filetype_filter.help - Vous pouvez spécifier ici une liste, séparée par des virgules, des extensions de fichiers ou des mimétapes qu'un fichier téléchargé avec ce type de pièce jointe doit avoir. Pour autoriser tous les fichiers d'images pris en charge, utilisez image/*. - - - - - obsolete - obsolete - - - attachment_type.edit.filetype_filter.placeholder - Ex. .txt, application/pdf, image/* - - - - - src\Form\PartType.php:63 - obsolete - obsolete - - - part.name.placeholder - Ex. BC547 - - - - - obsolete - obsolete - - - entity.edit.not_selectable - Non sélectionnable - - - - - obsolete - obsolete - - - entity.edit.not_selectable.help - Si cette option est activée, alors cet élément ne peut être attribué à aucun composant en tant que propriété. Utile, par exemple si cet élément doit être utilisé uniquement pour le tri. - - - - - obsolete - obsolete - - - bbcode.hint - Le BBCode peut être utilisé ici (par exemple [b]Bold[/b]) - - - - - obsolete - obsolete - - - entity.create - Créer un élément - - - - - obsolete - obsolete - - - entity.edit.save - Sauvegarder - - - - - obsolete - obsolete - - - category.edit.disable_footprints - Désactiver les empreintes - - - - - obsolete - obsolete - - - category.edit.disable_footprints.help - Si cette option est activée, la propriété Empreinte est désactivée pour tous les composants de cette catégorie. - - - - - obsolete - obsolete - - - category.edit.disable_manufacturers - Désactiver les fabricants - - - - - obsolete - obsolete - - - category.edit.disable_manufacturers.help - Si cette option est activée, la propriété fabricant est désactivée pour tous les composants de cette catégorie. - - - - - obsolete - obsolete - - - category.edit.disable_autodatasheets - Désactiver les liens automatiques des fiches techniques - - - - - obsolete - obsolete - - - category.edit.disable_autodatasheets.help - Si cette option est activée, aucun lien automatique avec la fiche technique n'est généré pour les pièces de cette catégorie. - - - - - obsolete - obsolete - - - category.edit.disable_properties - Désactiver les propriétés - - - - - obsolete - obsolete - - - category.edit.disable_properties.help - Si cette option est activée, les propriétés des composants pour tous les composants de cette catégorie sont désactivées. - - - - - obsolete - obsolete - - - category.edit.partname_hint - Indication du nom du composant - - - - - obsolete - obsolete - - - category.edit.partname_hint.placeholder - Ex. 100nF - - - - - obsolete - obsolete - - - category.edit.partname_regex - Filtre de nom - - - - - category.edit.part_ipn_prefix - Préfixe de pièce IPN - - - - - obsolete - obsolete - - - category.edit.default_description - Description par défaut - - - - - obsolete - obsolete - - - category.edit.default_description.placeholder - Ex. Condensateur, 10mmx10mm, CMS - - - - - obsolete - obsolete - - - category.edit.default_comment - Commentaire par défaut - - - - - obsolete - obsolete - - - company.edit.address - Adresse - - - - - obsolete - obsolete - - - company.edit.address.placeholder - Ex. 99 exemple de rue -exemple de ville - - - - - obsolete - obsolete - - - company.edit.phone_number - Numéro de téléphone - - - - - obsolete - obsolete - - - company.edit.phone_number.placeholder - +33 1 23 45 67 89 - - - - - obsolete - obsolete - - - company.edit.fax_number - Numéro de fax - - - - - obsolete - obsolete - - - company.edit.email - Email - - - - - obsolete - obsolete - - - company.edit.email.placeholder - Ex. contact@foo.bar - - - - - obsolete - obsolete - - - company.edit.website - Site internet - - - - - obsolete - obsolete - - - company.edit.website.placeholder - https://www.foo.bar - - - - - obsolete - obsolete - - - company.edit.auto_product_url - URL du produit - - - - - obsolete - obsolete - - - company.edit.auto_product_url.help - Si cette URL est définie, elle est utilisée pour générer l'URL d'un composant sur le site web du fabricant. Dans ce cas, %PARTNUMBER% sera remplacé par le numéro de commande. - - - - - obsolete - obsolete - - - company.edit.auto_product_url.placeholder - https://foo.bar/product/%PARTNUMBER% - - - - - obsolete - obsolete - - - currency.edit.iso_code - Code ISO - - - - - obsolete - obsolete - - - currency.edit.exchange_rate - Taux de change - - - - - obsolete - obsolete - - - footprint.edit.3d_model - Modèle 3D - - - - - obsolete - obsolete - - - mass_creation.lines - Saisie - - - - - obsolete - obsolete - - - mass_creation.lines.placeholder - Élément 1 -Élément 2 -Élément 3 - - - - - obsolete - obsolete - - - entity.mass_creation.btn - Créer - - - - - obsolete - obsolete - - - measurement_unit.edit.is_integer - Nombre entier - - - - - obsolete - obsolete - - - measurement_unit.edit.is_integer.help - Si cette option est activée, toutes les quantités dans cette unité sont arrondies à des nombres entiers. - - - - - obsolete - obsolete - - - measurement_unit.edit.use_si_prefix - Utiliser les préfixes SI - - - - - obsolete - obsolete - - - measurement_unit.edit.use_si_prefix.help - Si cette option est activée, les préfixes SI sont utilisés lors de la génération des nombres (par exemple 1,2 kg au lieu de 1200 g) - - - - - obsolete - obsolete - - - measurement_unit.edit.unit_symbol - Symbole de l'unité - - - - - obsolete - obsolete - - - measurement_unit.edit.unit_symbol.placeholder - Ex. m - - - - - obsolete - obsolete - - - storelocation.edit.is_full.label - Emplacement de stockage plein - - - - - obsolete - obsolete - - - storelocation.edit.is_full.help - Si cette option est activée, il n'est pas possible d'ajouter de nouveaux composants à ce lieu de stockage ni d'augmenter le nombre de composants existants. - - - - - obsolete - obsolete - - - storelocation.limit_to_existing.label - Limiter aux composants existants - - - - - obsolete - obsolete - - - storelocation.limit_to_existing.help - Si cette option est active, il n'est pas possible d'ajouter de nouveaux composants à ce lieu de stockage, mais il est possible d'augmenter le nombre de composants existants. - - - - - obsolete - obsolete - - - storelocation.only_single_part.label - Seulement un composant - - - - - obsolete - obsolete - - - storelocation.only_single_part.help - Si cette option est activée, cet emplacement de stockage ne peut contenir qu'un seul composant (mais une quantité quelconque). Utile pour les petits compartiments ou les distributeurs de CMS. - - - - - obsolete - obsolete - - - storelocation.storage_type.label - Type de stockage - - - - - obsolete - obsolete - - - storelocation.storage_type.help - Ici, vous pouvez sélectionner une unité de mesure qu'un composant doit avoir pour être stocké dans ce lieu de stockage. - - - - - obsolete - obsolete - - - supplier.edit.default_currency - Devise par défaut - - - - - obsolete - obsolete - - - supplier.shipping_costs.label - Frais de port - - - - - obsolete - obsolete - - - user.username.placeholder - Ex. j.doe - - - - - obsolete - obsolete - - - user.firstName.placeholder - Ex. John - - - - - obsolete - obsolete - - - user.lastName.placeholder - Ex. Doe - - - - - obsolete - obsolete - - - user.email.placeholder - j.doe@ecorp.com - - - - - obsolete - obsolete - - - user.department.placeholder - Ex. Development - - - - - obsolete - obsolete - - - user.settings.pw_new.label - Nouveau mot de passe - - - - - obsolete - obsolete - - - user.settings.pw_confirm.label - Confirmer le nouveau mot de passe - - - - - obsolete - obsolete - - - user.edit.needs_pw_change - L'utilisateur doit changer de mot de passe - - - - - obsolete - obsolete - - - user.edit.user_disabled - Utilisateur désactivé (connexion impossible) - - - - - obsolete - obsolete - - - user.create - Créer l'utilisateur - - - - - obsolete - obsolete - - - user.edit.save - Enregistrer - - - - - obsolete - obsolete - - - entity.edit.reset - Rejeter les modifications - - - - - templates\Parts\show_part_info.html.twig:166 - obsolete - obsolete - - - part.withdraw.btn - Retrait - - - - - templates\Parts\show_part_info.html.twig:171 - obsolete - obsolete - - - part.withdraw.comment: - Commentaire/objet - - - - - templates\Parts\show_part_info.html.twig:189 - obsolete - obsolete - - - part.add.caption - Ajouter composants - - - - - templates\Parts\show_part_info.html.twig:194 - obsolete - obsolete - - - part.add.btn - Ajouter - - - - - templates\Parts\show_part_info.html.twig:199 - obsolete - obsolete - - - part.add.comment - Commentaire/objet - - - - - templates\AdminPages\CompanyAdminBase.html.twig:15 - obsolete - obsolete - - - admin.comment - Commentaire - - - - - src\Form\PartType.php:83 - obsolete - obsolete - - - manufacturer_url.label - Lien vers le site du fabricant - - - - - src\Form\PartType.php:66 - obsolete - obsolete - - - part.description.placeholder - Ex. NPN 45V 0,1A 0,5W - - - - - src\Form\PartType.php:69 - obsolete - obsolete - - - part.instock.placeholder - Ex. 10 - - - - - src\Form\PartType.php:72 - obsolete - obsolete - - - part.mininstock.placeholder - Ex. 10 - - - - - obsolete - obsolete - - - part.order.price_per - Prix par - - - - - obsolete - obsolete - - - part.withdraw.caption - Retrait de composants - - - - - obsolete - obsolete - - - datatable.datatable.lengthMenu - _MENU_ - - - - - obsolete - obsolete - - - perm.group.parts - Composants - - - - - obsolete - obsolete - - - perm.group.structures - Structures des données - - - - - obsolete - obsolete - - - perm.group.system - Système - - - - - obsolete - obsolete - - - perm.parts - Général - - - - - obsolete - obsolete - - - perm.read - Afficher - - - - - obsolete - obsolete - - - perm.edit - Éditer - - - - - obsolete - obsolete - - - perm.create - Créer - - - - - obsolete - obsolete - - - perm.part.move - Changer de catégorie - - - - - obsolete - obsolete - - - perm.delete - Supprimer - - - - - obsolete - obsolete - - - perm.part.search - Rechercher - - - - - obsolete - obsolete - - - perm.part.all_parts - Liste de tous les composants - - - - - obsolete - obsolete - - - perm.part.no_price_parts - Liste des composants sans prix - - - - - obsolete - obsolete - - - perm.part.obsolete_parts - Liste des composants obsolètes - - - - - obsolete - obsolete - - - perm.part.unknown_instock_parts - Liste des composants dont le stock est inconnu - - - - - obsolete - obsolete - - - perm.part.change_favorite - Changer le statut de favori - - - - - obsolete - obsolete - - - perm.part.show_favorite - Afficher les favoris - - - - - obsolete - obsolete - - - perm.part.show_last_edit_parts - Afficher les derniers composants modifiés/ajoutés - - - - - obsolete - obsolete - - - perm.part.show_users - Afficher le dernier utilisateur ayant apporté des modifications - - - - - obsolete - obsolete - - - perm.part.show_history - Afficher l'historique - - - - - obsolete - obsolete - - - perm.part.name - Nom - - - - - obsolete - obsolete - - - perm.part.description - Description - - - - - obsolete - obsolete - - - perm.part.instock - En stock - - - - - obsolete - obsolete - - - perm.part.mininstock - Stock minimum - - - - - obsolete - obsolete - - - perm.part.comment - Commentaire - - - - - obsolete - obsolete - - - perm.part.storelocation - Emplacement de stockage - - - - - obsolete - obsolete - - - perm.part.manufacturer - Fabricant - - - - - obsolete - obsolete - - - perm.part.orderdetails - Informations pour la commande - - - - - obsolete - obsolete - - - perm.part.prices - Prix - - - - - obsolete - obsolete - - - perm.part.attachments - Fichiers joints - - - - - obsolete - obsolete - - - perm.part.order - Commandes - - - - - obsolete - obsolete - - - perm.storelocations - Emplacements de stockage - - - - - obsolete - obsolete - - - perm.move - Déplacer - - - - - obsolete - obsolete - - - perm.list_parts - Liste des composants - - - - - obsolete - obsolete - - - perm.part.footprints - Empreintes - - - - - obsolete - obsolete - - - perm.part.categories - Catégories - - - - - obsolete - obsolete - - - perm.part.supplier - Fournisseurs - - - - - obsolete - obsolete - - - perm.part.manufacturers - Fabricants - - - - - obsolete - obsolete - - - perm.part.attachment_types - Types de fichiers joints - - - - - obsolete - obsolete - - - perm.tools.import - Importer - - - - - obsolete - obsolete - - - perm.tools.labels - Étiquettes - - - - - obsolete - obsolete - - - perm.tools.calculator - Calculateur de résistance - - - - - obsolete - obsolete - - - perm.tools.footprints - Empreintes - - - - - obsolete - obsolete - - - perm.tools.ic_logos - Logos CI - - - - - obsolete - obsolete - - - perm.tools.statistics - Statistiques - - - - - obsolete - obsolete - - - perm.edit_permissions - Éditer les autorisations - - - - - obsolete - obsolete - - - perm.users.edit_user_name - Modifier le nom d'utilisateur - - - - - obsolete - obsolete - - - perm.users.edit_change_group - Modifier le groupe - - - - - obsolete - obsolete - - - perm.users.edit_infos - Editer les informations - - - - - obsolete - obsolete - - - perm.users.edit_permissions - Modifier les autorisations - - - - - obsolete - obsolete - - - perm.users.set_password - Définir le mot de passe - - - - - obsolete - obsolete - - - perm.users.change_user_settings - Changer les paramètres utilisateur - - - - - obsolete - obsolete - - - perm.database.see_status - Afficher l’état - - - - - obsolete - obsolete - - - perm.database.update_db - Actualiser la base de données - - - - - obsolete - obsolete - - - perm.database.read_db_settings - Lecture des paramètres de la base de donnée - - - - - obsolete - obsolete - - - perm.database.write_db_settings - Modifier les paramètres de la base de données - - - - - obsolete - obsolete - - - perm.config.read_config - Lecture de la configuration - - - - - obsolete - obsolete - - - perm.config.edit_config - Modifier la configuration - - - - - obsolete - obsolete - - - perm.config.server_info - Informations sur le serveur - - - - - obsolete - obsolete - - - perm.config.use_debug - Utiliser les outils de débogage - - - - - obsolete - obsolete - - - perm.show_logs - Afficher les logs - - - - - obsolete - obsolete - - - perm.delete_logs - Supprimer les logs - - - - - obsolete - obsolete - - - perm.self.edit_infos - Modifier les informations - - - - - obsolete - obsolete - - - perm.self.edit_username - Modifier le nom d'utilisateur - - - - - obsolete - obsolete - - - perm.self.show_permissions - Voir les autorisations - - - - - obsolete - obsolete - - - perm.self.show_logs - Afficher ses propres logs - - - - - obsolete - obsolete - - - perm.self.create_labels - Créer des étiquettes - - - - - obsolete - obsolete - - - perm.self.edit_options - Modifier les options - - - - - obsolete - obsolete - - - perm.self.delete_profiles - Supprimer les profils - - - - - obsolete - obsolete - - - perm.self.edit_profiles - Modifier les profils - - - - - obsolete - obsolete - - - perm.part.tools - Outils - - - - - obsolete - obsolete - - - perm.groups - Groupes - - - - - obsolete - obsolete - - - perm.users - Utilisateurs - - - - - obsolete - obsolete - - - perm.database - Base de données - - - - - obsolete - obsolete - - - perm.config - Configuration - - - - - obsolete - obsolete - - - perm.system - Système - - - - - obsolete - obsolete - - - perm.self - Propre utilisateur - - - - - obsolete - obsolete - - - perm.labels - Étiquettes - - - - - obsolete - obsolete - - - perm.part.category - Catégorie - - - - - obsolete - obsolete - - - perm.part.minamount - Quantité minimum - - - - - obsolete - obsolete - - - perm.part.footprint - Empreinte - - - - - obsolete - obsolete - - - perm.part.mpn - MPN - - - - - obsolete - obsolete - - - perm.part.status - État de la fabrication - - - - - obsolete - obsolete - - - perm.part.tags - Tags - - - - - obsolete - obsolete - - - perm.part.unit - Unité - - - - - obsolete - obsolete - - - perm.part.mass - Poids - - - - - obsolete - obsolete - - - perm.part.lots - Lots de composants - - - - - obsolete - obsolete - - - perm.show_users - Afficher le dernier utilisateur ayant apporté des modifications - - - - - obsolete - obsolete - - - perm.currencies - Devises - - - - - obsolete - obsolete - - - perm.measurement_units - Unités de mesure - - - - - perm.part_custom_states - État personnalisé du composant - - - - - obsolete - obsolete - - - user.settings.pw_old.label - Ancien mot de passe - - - - - obsolete - obsolete - - - pw_reset.submit - Réinitialiser le mot de passe - - - - - obsolete - obsolete - - - u2f_two_factor - Clé de sécurité (U2F) - - - - - obsolete - obsolete - - - google - google - - - - - obsolete - obsolete - - - tfa.provider.google - Application d'authentification - - - - - obsolete - obsolete - - - Login successful - Connexion réussie - - - - - obsolete - obsolete - - - log.type.exception - Exception - - - - - obsolete - obsolete - - - log.type.user_login - Connexion utilisateur - - - - - obsolete - obsolete - - - log.type.user_logout - Déconnexion de l’utilisateur - - - - - obsolete - obsolete - - - log.type.unknown - Inconnu - - - - - obsolete - obsolete - - - log.type.element_created - Élément créé - - - - - obsolete - obsolete - - - log.type.element_edited - Élément modifié - - - - - obsolete - obsolete - - - log.type.element_deleted - Élément supprimé - - - - - obsolete - obsolete - - - log.type.database_updated - Base de données mise à jour - - - - - obsolete - - - perm.revert_elements - Restaurer les éléments - - - - - obsolete - - - perm.show_history - Afficher l'historique - - - - - obsolete - - - perm.tools.lastActivity - Afficher l'activité récente - - - - - obsolete - - - perm.tools.timeTravel - Afficher les anciennes versions des éléments (Time travel) - - - - - obsolete - - - tfa_u2f.key_added_successful - Clé de sécurité ajoutée avec succès. - - - - - obsolete - - - Username - Nom d'utilisateur - - - - - obsolete - - - log.type.security.google_disabled - Application d'authentification désactivée - - - - - obsolete - - - log.type.security.u2f_removed - Clé de sécurité enlevée - - - - - obsolete - - - log.type.security.u2f_added - Clé de sécurité ajoutée - - - - - obsolete - - - log.type.security.backup_keys_reset - Clés de sauvegarde régénérées - - - - - obsolete - - - log.type.security.google_enabled - Application Authenticator activée - - - - - obsolete - - - log.type.security.password_changed - Mot de passe modifié - - - - - obsolete - - - log.type.security.trusted_device_reset - Appareils de confiance réinitialisés - - - - - obsolete - - - log.type.collection_element_deleted - Élément de collecte supprimé - - - - - obsolete - - - log.type.security.password_reset - Réinitialisation du mot de passe - - - - - obsolete - - - log.type.security.2fa_admin_reset - Réinitialisation à deux facteurs par l'administrateur - - - - - obsolete - - - log.type.user_not_allowed - Tentative d'accès non autorisé - - - - - obsolete - - - log.database_updated.success - Succès - - - - - obsolete - - - label_options.barcode_type.2D - 2D - - - - - obsolete - - - label_options.barcode_type.1D - 1D - - - - - obsolete - - - perm.part.parameters - Caractéristiques - - - - - obsolete - - - perm.attachment_show_private - Voir les pièces jointes privées - - - - - obsolete - - - perm.tools.label_scanner - Lecteur d'étiquettes - - - - - obsolete - - - perm.self.read_profiles - Lire les profils - - - - - obsolete - - - perm.self.create_profiles - Créer des profils - - - - - obsolete - - - perm.labels.use_twig - Utiliser le mode twig - - - - - label_profile.showInDropdown - Afficher en sélection rapide - - - - - group.edit.enforce_2fa - Imposer l'authentification à deux facteurs (2FA) - - - - - group.edit.enforce_2fa.help - Si cette option est activée, chaque membre direct de ce groupe doit configurer au moins un deuxième facteur d'authentification. Recommandé pour les groupes administratifs ayant beaucoup de permissions. - - - - - selectpicker.empty - Rien n'est sélectionné - - - - - selectpicker.nothing_selected - Rien n'est sélectionné - - - - - entity.delete.must_not_contain_parts - L'élement contient encore des parties ! Vous devez déplacer les parties pour pouvoir supprimer cet élément. - - - - - entity.delete.must_not_contain_attachments - Le type de pièce jointe contient toujours des pièces jointes. Changez leur type, pour pouvoir supprimer ce type de pièce jointe. - - - - - entity.delete.must_not_contain_prices - La devise contient encore des prix. Vous devez changer leur devise pour pouvoir supprimer cet élément. - - - - - entity.delete.must_not_contain_users - Des utilisateurs utilisent toujours ce groupe ! Changez les de groupe pour pouvoir supprimer ce groupe. - - - - - part.table.edit - Modifier - - - - - part.table.edit.title - Modifier composant - - - - - part_list.action.action.title - Sélectionnez une action - - - - - part_list.action.action.group.favorite - Statut favori - - - - - part_list.action.action.favorite - Favorable - - - - - part_list.action.action.unfavorite - Défavorable - - - - - part_list.action.action.group.change_field - Modifier le champ - - - - - part_list.action.action.change_category - Modifier la catégorie - - - - - part_list.action.action.change_footprint - Modifier l'empreinte - - - - - part_list.action.action.change_manufacturer - Modifier le fabricant - - - - - part_list.action.action.change_unit - Modifier l'unité - - - - - part_list.action.action.delete - Supprimer - - - - - part_list.action.submit - Soumettre - - - - - part_list.action.part_count - %count% composants sélectionnés - - - - - company.edit.quick.website - Ouvrir le site web - - - - - company.edit.quick.email - Envoyer un e-mail - - - - - company.edit.quick.phone - Téléphoner - - - - - company.edit.quick.fax - Envoyer une télécopie - - - - - company.fax_number.placeholder - ex. +33 12 34 56 78 90 - - - - - part.edit.save_and_clone - Sauvegarder et dupliquer - - - - - validator.file_ext_not_allowed - L'extension de fichier n'est pas autorisée pour ce type de pièce jointe. - - - - - tools.reel_calc.title - Calculateur de bobines CMS - - - - - tools.reel_calc.inner_dia - Diamètre intérieur - - - - - tools.reel_calc.outer_dia - Diamètre extérieur - - - - - tools.reel_calc.tape_thick - Épaisseur du ruban - - - - - tools.reel_calc.part_distance - Distance entre les composants - - - - - tools.reel_calc.update - Actualiser - - - - - tools.reel_calc.parts_per_meter - Composants par mètre - - - - - tools.reel_calc.result_length - Longueur de la bande - - - - - tools.reel_calc.result_amount - Nbre approximatif de composants - - - - - tools.reel_calc.outer_greater_inner_error - Erreur : Le diamètre extérieur doit être supérieur au diamètre intérieur ! - - - - - tools.reel_calc.missing_values.error - Veuillez remplir toutes les valeurs ! - - - - - tools.reel_calc.load_preset - Charger la présélection - - - - - tools.reel_calc.explanation - Ce calculateur vous donne une estimation du nombre de pièces qui restent sur une bobine de CMS. Mesurez les dimensions notées sur la bobine (ou utilisez certains des préréglages) et cliquez sur "Actualiser" pour obtenir un résultat. - - - - - perm.tools.reel_calculator - Calculateur de bobines CMS - - - - - tree.tools.tools.reel_calculator - Calculateur de bobines CMS - - - - - currency.edit.update_rate - Taux de rafraîchissement - - - - - currency.edit.exchange_rate_update.unsupported_currency - Devise non prise en charge - - - - - currency.edit.exchange_rate_update.generic_error - Erreur générique - - - - - currency.edit.exchange_rate_updated.success - Succès - - - - - homepage.forum.text - Si vous avez des questions à propos de Part-DB , rendez vous sur <a href="%href%" class="link-external" target="_blank">Github</a> - - - - - part_custom_state.new - Nouveau statut personnalisé du composant - - - - - part_custom_state.edit - Modifier le statut personnalisé du composant - - - - - log.element_edited.changed_fields.partCustomState - État personnalisé de la pièce - - - - - category.edit.part_ipn_prefix.placeholder - par ex. "B12A" - - - - - category.edit.part_ipn_prefix.help - Un préfixe suggéré lors de la saisie de l'IPN d'une pièce. - - - - + + + + + + Part-DB1\templates\AdminPages\AttachmentTypeAdmin.html.twig:4 + Part-DB1\templates\AdminPages\AttachmentTypeAdmin.html.twig:4 + templates\AdminPages\AttachmentTypeAdmin.html.twig:4 + + + attachment_type.caption + Types pour fichiers joints + + + + + Part-DB1\templates\AdminPages\AttachmentTypeAdmin.html.twig:12 + new + + + attachment_type.edit + Modifier le type de pièce jointe + + + + + Part-DB1\templates\AdminPages\AttachmentTypeAdmin.html.twig:16 + new + + + attachment_type.new + Nouveau type de pièce jointe + + + + + Part-DB1\templates\AdminPages\CategoryAdmin.html.twig:4 + Part-DB1\templates\_sidebar.html.twig:22 + Part-DB1\templates\_sidebar.html.twig:7 + Part-DB1\templates\AdminPages\CategoryAdmin.html.twig:4 + Part-DB1\templates\_sidebar.html.twig:22 + Part-DB1\templates\_sidebar.html.twig:7 + templates\AdminPages\CategoryAdmin.html.twig:4 + templates\base.html.twig:163 + templates\base.html.twig:170 + templates\base.html.twig:197 + templates\base.html.twig:225 + + + category.labelp + Catégories + + + + + Part-DB1\templates\AdminPages\CategoryAdmin.html.twig:8 + Part-DB1\templates\AdminPages\StorelocationAdmin.html.twig:19 + Part-DB1\templates\AdminPages\CategoryAdmin.html.twig:8 + Part-DB1\templates\AdminPages\StorelocationAdmin.html.twig:11 + templates\AdminPages\CategoryAdmin.html.twig:8 + + + admin.options + Options + + + + + Part-DB1\templates\AdminPages\CategoryAdmin.html.twig:9 + Part-DB1\templates\AdminPages\CompanyAdminBase.html.twig:15 + Part-DB1\templates\AdminPages\CategoryAdmin.html.twig:9 + Part-DB1\templates\AdminPages\CompanyAdminBase.html.twig:15 + templates\AdminPages\CategoryAdmin.html.twig:9 + + + admin.advanced + Avancé + + + + + Part-DB1\templates\AdminPages\CategoryAdmin.html.twig:13 + new + + + category.edit + Éditer la catégorie + + + + + Part-DB1\templates\AdminPages\CategoryAdmin.html.twig:17 + new + + + category.new + Nouvelle catégorie + + + + + Part-DB1\templates\AdminPages\CurrencyAdmin.html.twig:4 + Part-DB1\templates\AdminPages\CurrencyAdmin.html.twig:4 + + + currency.caption + Devise + + + + + Part-DB1\templates\AdminPages\CurrencyAdmin.html.twig:12 + Part-DB1\templates\AdminPages\CurrencyAdmin.html.twig:12 + + + currency.iso_code.caption + Code ISO + + + + + Part-DB1\templates\AdminPages\CurrencyAdmin.html.twig:15 + Part-DB1\templates\AdminPages\CurrencyAdmin.html.twig:15 + + + currency.symbol.caption + Symbole de la devise + + + + + Part-DB1\templates\AdminPages\CurrencyAdmin.html.twig:29 + new + + + currency.edit + Editer la devise + + + + + Part-DB1\templates\AdminPages\CurrencyAdmin.html.twig:33 + new + + + currency.new + Nouvelle devise + + + + + Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:19 + Part-DB1\templates\_navbar_search.html.twig:67 + Part-DB1\templates\_sidebar.html.twig:27 + Part-DB1\templates\_sidebar.html.twig:43 + Part-DB1\templates\_sidebar.html.twig:63 + Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:19 + Part-DB1\templates\_navbar_search.html.twig:61 + Part-DB1\templates\_sidebar.html.twig:27 + Part-DB1\templates\_sidebar.html.twig:43 + Part-DB1\templates\_sidebar.html.twig:63 + templates\AdminPages\EntityAdminBase.html.twig:9 + templates\base.html.twig:80 + templates\base.html.twig:179 + templates\base.html.twig:206 + templates\base.html.twig:237 + + + search.placeholder + Recherche + + + + + Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:23 + Part-DB1\templates\_sidebar.html.twig:3 + Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:23 + Part-DB1\templates\_sidebar.html.twig:3 + templates\AdminPages\EntityAdminBase.html.twig:13 + templates\base.html.twig:166 + templates\base.html.twig:193 + templates\base.html.twig:221 + + + expandAll + Agrandir tout + + + + + Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:27 + Part-DB1\templates\_sidebar.html.twig:4 + Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:27 + Part-DB1\templates\_sidebar.html.twig:4 + templates\AdminPages\EntityAdminBase.html.twig:17 + templates\base.html.twig:167 + templates\base.html.twig:194 + templates\base.html.twig:222 + + + reduceAll + Réduire tout + + + + + Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:54 + Part-DB1\templates\Parts\info\_sidebar.html.twig:4 + Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:54 + Part-DB1\templates\Parts\info\_sidebar.html.twig:4 + + + part.info.timetravel_hint + C'est ainsi que le composant apparaissait avant le %timestamp%. <i>Veuillez noter que cette fonctionnalité est expérimentale, donc les infos ne sont peut-être pas correctes. </i> + + + + + Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:60 + Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:60 + templates\AdminPages\EntityAdminBase.html.twig:42 + + + standard.label + Propriétés + + + + + Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:61 + Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:61 + templates\AdminPages\EntityAdminBase.html.twig:43 + + + infos.label + Informations + + + + + Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:63 + Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:63 + new + + + history.label + Historique + + + + + Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:66 + Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:66 + templates\AdminPages\EntityAdminBase.html.twig:45 + + + export.label + Exporter + + + + + Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:68 + Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:68 + templates\AdminPages\EntityAdminBase.html.twig:47 + + + import_export.label + Importer exporter + + + + + Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:69 + Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:69 + + + mass_creation.label + Création multiple + + + + + Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:82 + Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:82 + templates\AdminPages\EntityAdminBase.html.twig:59 + + + admin.common + Commun + + + + + Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:86 + Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:86 + + + admin.attachments + Fichiers joints + + + + + Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:90 + + + admin.parameters + Paramètres + + + + + Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:179 + Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:167 + templates\AdminPages\EntityAdminBase.html.twig:142 + + + export_all.label + Exporter tous les éléments + + + + + Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:185 + Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:173 + + + mass_creation.help + Chaque ligne sera interprétée comme le nom d'un élément qui sera créé. + + + + + Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:45 + Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:45 + templates\AdminPages\EntityAdminBase.html.twig:35 + + + edit.caption + Éditer l'élément "%name" + + + + + Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:50 + Part-DB1\templates\AdminPages\EntityAdminBase.html.twig:50 + templates\AdminPages\EntityAdminBase.html.twig:37 + + + new.caption + Nouvel élément + + + + + Part-DB1\templates\AdminPages\FootprintAdmin.html.twig:4 + Part-DB1\templates\_sidebar.html.twig:9 + Part-DB1\templates\AdminPages\FootprintAdmin.html.twig:4 + Part-DB1\templates\_sidebar.html.twig:9 + templates\base.html.twig:172 + templates\base.html.twig:199 + templates\base.html.twig:227 + + + footprint.labelp + Empreintes + + + + + Part-DB1\templates\AdminPages\FootprintAdmin.html.twig:13 + new + + + footprint.edit + Editer l'empreinte + + + + + Part-DB1\templates\AdminPages\FootprintAdmin.html.twig:17 + new + + + footprint.new + Nouvelle empreinte + + + + + Part-DB1\templates\AdminPages\GroupAdmin.html.twig:4 + Part-DB1\templates\AdminPages\GroupAdmin.html.twig:4 + + + group.edit.caption + Groupes + + + + + Part-DB1\templates\AdminPages\GroupAdmin.html.twig:9 + Part-DB1\templates\AdminPages\UserAdmin.html.twig:16 + Part-DB1\templates\AdminPages\GroupAdmin.html.twig:9 + Part-DB1\templates\AdminPages\UserAdmin.html.twig:16 + + + user.edit.permissions + Permissions + + + + + Part-DB1\templates\AdminPages\GroupAdmin.html.twig:24 + new + + + group.edit + Editer le groupe + + + + + Part-DB1\templates\AdminPages\GroupAdmin.html.twig:28 + new + + + group.new + Nouveau groupe + + + + + Part-DB1\templates\AdminPages\LabelProfileAdmin.html.twig:4 + + + label_profile.caption + Profil des étiquettes + + + + + Part-DB1\templates\AdminPages\LabelProfileAdmin.html.twig:8 + + + label_profile.advanced + Avancé + + + + + Part-DB1\templates\AdminPages\LabelProfileAdmin.html.twig:9 + + + label_profile.comment + Commentaire + + + + + Part-DB1\templates\AdminPages\LabelProfileAdmin.html.twig:55 + new + + + label_profile.edit + Editer profil d'étiquette + + + + + Part-DB1\templates\AdminPages\LabelProfileAdmin.html.twig:59 + new + + + label_profile.new + Nouveau profil d'étiquette + + + + + Part-DB1\templates\AdminPages\ManufacturerAdmin.html.twig:4 + Part-DB1\templates\AdminPages\ManufacturerAdmin.html.twig:4 + templates\AdminPages\ManufacturerAdmin.html.twig:4 + + + manufacturer.caption + Fabricants + + + + + Part-DB1\templates\AdminPages\ManufacturerAdmin.html.twig:8 + new + + + manufacturer.edit + Modifiez le fabricant + + + + + Part-DB1\templates\AdminPages\ManufacturerAdmin.html.twig:12 + new + + + manufacturer.new + Nouveau fabricant + + + + + Part-DB1\templates\AdminPages\MeasurementUnitAdmin.html.twig:4 + Part-DB1\templates\AdminPages\MeasurementUnitAdmin.html.twig:4 + + + measurement_unit.caption + Unité de mesure + + + + + part_custom_state.caption + État personnalisé du composant + + + + + Part-DB1\templates\AdminPages\StorelocationAdmin.html.twig:5 + Part-DB1\templates\_sidebar.html.twig:8 + Part-DB1\templates\AdminPages\StorelocationAdmin.html.twig:4 + Part-DB1\templates\_sidebar.html.twig:8 + templates\base.html.twig:171 + templates\base.html.twig:198 + templates\base.html.twig:226 + + + storelocation.labelp + Emplacement de stockage + + + + + Part-DB1\templates\AdminPages\StorelocationAdmin.html.twig:32 + new + + + storelocation.edit + Modifier l'emplacement de stockage + + + + + Part-DB1\templates\AdminPages\StorelocationAdmin.html.twig:36 + new + + + storelocation.new + Nouvel emplacement de stockage + + + + + Part-DB1\templates\AdminPages\SupplierAdmin.html.twig:4 + Part-DB1\templates\AdminPages\SupplierAdmin.html.twig:4 + templates\AdminPages\SupplierAdmin.html.twig:4 + + + supplier.caption + Fournisseurs + + + + + Part-DB1\templates\AdminPages\SupplierAdmin.html.twig:16 + new + + + supplier.edit + Modifier le fournisseur + + + + + Part-DB1\templates\AdminPages\SupplierAdmin.html.twig:20 + new + + + supplier.new + Nouveau fournisseur + + + + + Part-DB1\templates\AdminPages\UserAdmin.html.twig:8 + Part-DB1\templates\AdminPages\UserAdmin.html.twig:8 + + + user.edit.caption + Utilisateurs + + + + + Part-DB1\templates\AdminPages\UserAdmin.html.twig:14 + Part-DB1\templates\AdminPages\UserAdmin.html.twig:14 + + + user.edit.configuration + Configuration + + + + + Part-DB1\templates\AdminPages\UserAdmin.html.twig:15 + Part-DB1\templates\AdminPages\UserAdmin.html.twig:15 + + + user.edit.password + Mot de passe + + + + + Part-DB1\templates\AdminPages\UserAdmin.html.twig:45 + Part-DB1\templates\AdminPages\UserAdmin.html.twig:45 + + + user.edit.tfa.caption + Authentification à deux facteurs + + + + + Part-DB1\templates\AdminPages\UserAdmin.html.twig:47 + Part-DB1\templates\AdminPages\UserAdmin.html.twig:47 + + + user.edit.tfa.google_active + Application d'authentification active + + + + + Part-DB1\templates\AdminPages\UserAdmin.html.twig:48 + Part-DB1\templates\Users\backup_codes.html.twig:15 + Part-DB1\templates\Users\_2fa_settings.html.twig:95 + Part-DB1\templates\AdminPages\UserAdmin.html.twig:48 + Part-DB1\templates\Users\backup_codes.html.twig:15 + Part-DB1\templates\Users\_2fa_settings.html.twig:95 + + + tfa_backup.remaining_tokens + Nombre de codes de secours restant + + + + + Part-DB1\templates\AdminPages\UserAdmin.html.twig:49 + Part-DB1\templates\Users\backup_codes.html.twig:17 + Part-DB1\templates\Users\_2fa_settings.html.twig:96 + Part-DB1\templates\AdminPages\UserAdmin.html.twig:49 + Part-DB1\templates\Users\backup_codes.html.twig:17 + Part-DB1\templates\Users\_2fa_settings.html.twig:96 + + + tfa_backup.generation_date + Date de génération des codes de secours + + + + + Part-DB1\templates\AdminPages\UserAdmin.html.twig:53 + Part-DB1\templates\AdminPages\UserAdmin.html.twig:60 + Part-DB1\templates\AdminPages\UserAdmin.html.twig:53 + Part-DB1\templates\AdminPages\UserAdmin.html.twig:60 + + + user.edit.tfa.disabled + Méthode désactivée + + + + + Part-DB1\templates\AdminPages\UserAdmin.html.twig:56 + Part-DB1\templates\AdminPages\UserAdmin.html.twig:56 + + + user.edit.tfa.u2f_keys_count + Clés de sécurité actives + + + + + Part-DB1\templates\AdminPages\UserAdmin.html.twig:72 + Part-DB1\templates\AdminPages\UserAdmin.html.twig:72 + + + user.edit.tfa.disable_tfa_title + Voulez vous vraiment poursuivre ? + + + + + Part-DB1\templates\AdminPages\UserAdmin.html.twig:72 + Part-DB1\templates\AdminPages\UserAdmin.html.twig:72 + + + user.edit.tfa.disable_tfa_message + Cela désactivera <b> toutes les méthodes d'authentification à deux facteurs de l'utilisateur</b> et supprimera <b>les codes de secours</b>! +<br> +L'utilisateur devra configurer à nouveau toutes les méthodes d'authentification à deux facteurs et créer de nouveaux codes de secours!<br><br> +<b>Ne faites ceci qu'en étant sûr de l'identité de l'utilisateur (ayant besoin d'aide),autrement le compte pourrai être compromis!</b> + + + + + Part-DB1\templates\AdminPages\UserAdmin.html.twig:73 + Part-DB1\templates\AdminPages\UserAdmin.html.twig:73 + + + user.edit.tfa.disable_tfa.btn + Désactiver toutes les méthodes d'authentification à deux facteurs + + + + + Part-DB1\templates\AdminPages\UserAdmin.html.twig:85 + new + + + user.edit + Modifier l'utilisateur + + + + + Part-DB1\templates\AdminPages\UserAdmin.html.twig:89 + new + + + user.new + Nouvel utilisateur + + + + + Part-DB1\templates\AdminPages\_attachments.html.twig:4 + Part-DB1\templates\Parts\edit\_attachments.html.twig:4 + Part-DB1\templates\AdminPages\_attachments.html.twig:4 + Part-DB1\templates\Parts\edit\_attachments.html.twig:4 + Part-DB1\templates\Parts\info\_attachments_info.html.twig:63 + + + attachment.delete + Supprimer + + + + + Part-DB1\templates\AdminPages\_attachments.html.twig:41 + Part-DB1\templates\Parts\edit\_attachments.html.twig:38 + Part-DB1\templates\Parts\info\_attachments_info.html.twig:35 + Part-DB1\src\DataTables\AttachmentDataTable.php:159 + Part-DB1\templates\Parts\edit\_attachments.html.twig:38 + Part-DB1\src\DataTables\AttachmentDataTable.php:159 + + + attachment.external + Externe + + + + + Part-DB1\templates\AdminPages\_attachments.html.twig:49 + Part-DB1\templates\Parts\edit\_attachments.html.twig:47 + Part-DB1\templates\AdminPages\_attachments.html.twig:47 + Part-DB1\templates\Parts\edit\_attachments.html.twig:45 + + + attachment.preview.alt + Miniature du fichier joint + + + + + Part-DB1\templates\AdminPages\_attachments.html.twig:52 + Part-DB1\templates\Parts\edit\_attachments.html.twig:50 + Part-DB1\templates\Parts\info\_attachments_info.html.twig:62 + Part-DB1\templates\AdminPages\_attachments.html.twig:50 + Part-DB1\templates\Parts\edit\_attachments.html.twig:48 + Part-DB1\templates\Parts\info\_attachments_info.html.twig:45 + + + attachment.view + Afficher + + + + + Part-DB1\templates\AdminPages\_attachments.html.twig:58 + Part-DB1\templates\Parts\edit\_attachments.html.twig:56 + Part-DB1\templates\Parts\info\_attachments_info.html.twig:43 + Part-DB1\src\DataTables\AttachmentDataTable.php:166 + Part-DB1\templates\AdminPages\_attachments.html.twig:56 + Part-DB1\templates\Parts\edit\_attachments.html.twig:54 + Part-DB1\templates\Parts\info\_attachments_info.html.twig:38 + Part-DB1\src\DataTables\AttachmentDataTable.php:166 + + + attachment.file_not_found + Fichier introuvable + + + + + Part-DB1\templates\AdminPages\_attachments.html.twig:66 + Part-DB1\templates\Parts\edit\_attachments.html.twig:64 + Part-DB1\templates\Parts\info\_attachments_info.html.twig:48 + Part-DB1\templates\Parts\edit\_attachments.html.twig:62 + + + attachment.secure + Fichier joint privé + + + + + Part-DB1\templates\AdminPages\_attachments.html.twig:79 + Part-DB1\templates\Parts\edit\_attachments.html.twig:77 + Part-DB1\templates\AdminPages\_attachments.html.twig:77 + Part-DB1\templates\Parts\edit\_attachments.html.twig:75 + + + attachment.create + Ajouter un fichier joint + + + + + Part-DB1\templates\AdminPages\_attachments.html.twig:84 + Part-DB1\templates\Parts\edit\_attachments.html.twig:82 + Part-DB1\templates\Parts\edit\_lots.html.twig:33 + Part-DB1\templates\AdminPages\_attachments.html.twig:82 + Part-DB1\templates\Parts\edit\_attachments.html.twig:80 + Part-DB1\templates\Parts\edit\_lots.html.twig:33 + + + part_lot.edit.delete.confirm + Voulez vous vraiment supprimer ce stock ? Cette action ne pourra pas être annulée! + + + + + Part-DB1\templates\AdminPages\_delete_form.html.twig:2 + Part-DB1\templates\AdminPages\_delete_form.html.twig:2 + templates\AdminPages\_delete_form.html.twig:2 + + + entity.delete.confirm_title + Voulez vous vraiment supprimer %name%? + + + + + Part-DB1\templates\AdminPages\_delete_form.html.twig:3 + Part-DB1\templates\AdminPages\_delete_form.html.twig:3 + templates\AdminPages\_delete_form.html.twig:3 + + + entity.delete.message + Cette action ne pourra pas être annulée! +<br> +Les sous éléments seront déplacés vers le haut. + + + + + Part-DB1\templates\AdminPages\_delete_form.html.twig:11 + Part-DB1\templates\AdminPages\_delete_form.html.twig:11 + templates\AdminPages\_delete_form.html.twig:9 + + + entity.delete + Supprimer l'élément + + + + + Part-DB1\templates\AdminPages\_delete_form.html.twig:16 + Part-DB1\templates\Parts\info\_tools.html.twig:45 + Part-DB1\src\Form\Part\PartBaseType.php:286 + Part-DB1\templates\AdminPages\_delete_form.html.twig:16 + Part-DB1\templates\Parts\info\_tools.html.twig:43 + Part-DB1\src\Form\Part\PartBaseType.php:267 + new + + + edit.log_comment + Éditer le commentaire + + + + + Part-DB1\templates\AdminPages\_delete_form.html.twig:24 + Part-DB1\templates\AdminPages\_delete_form.html.twig:24 + templates\AdminPages\_delete_form.html.twig:12 + + + entity.delete.recursive + Suppression récursive (tous les sous éléments) + + + + + Part-DB1\templates\AdminPages\_duplicate.html.twig:3 + + + entity.duplicate + Dupliquer l’élément + + + + + Part-DB1\templates\AdminPages\_export_form.html.twig:4 + Part-DB1\src\Form\AdminPages\ImportType.php:76 + Part-DB1\templates\AdminPages\_export_form.html.twig:4 + Part-DB1\src\Form\AdminPages\ImportType.php:76 + templates\AdminPages\_export_form.html.twig:4 + src\Form\ImportType.php:67 + + + export.format + Format de fichier + + + + + Part-DB1\templates\AdminPages\_export_form.html.twig:16 + Part-DB1\templates\AdminPages\_export_form.html.twig:16 + templates\AdminPages\_export_form.html.twig:16 + + + export.level + Niveau de verbosité + + + + + Part-DB1\templates\AdminPages\_export_form.html.twig:19 + Part-DB1\templates\AdminPages\_export_form.html.twig:19 + templates\AdminPages\_export_form.html.twig:19 + + + export.level.simple + Simple + + + + + Part-DB1\templates\AdminPages\_export_form.html.twig:20 + Part-DB1\templates\AdminPages\_export_form.html.twig:20 + templates\AdminPages\_export_form.html.twig:20 + + + export.level.extended + Étendu + + + + + Part-DB1\templates\AdminPages\_export_form.html.twig:21 + Part-DB1\templates\AdminPages\_export_form.html.twig:21 + templates\AdminPages\_export_form.html.twig:21 + + + export.level.full + Complet + + + + + Part-DB1\templates\AdminPages\_export_form.html.twig:31 + Part-DB1\templates\AdminPages\_export_form.html.twig:31 + templates\AdminPages\_export_form.html.twig:31 + + + export.include_children + Exporter également les sous éléments + + + + + Part-DB1\templates\AdminPages\_export_form.html.twig:39 + Part-DB1\templates\AdminPages\_export_form.html.twig:39 + templates\AdminPages\_export_form.html.twig:39 + + + export.btn + Exporter + + + + + Part-DB1\templates\AdminPages\_info.html.twig:4 + Part-DB1\templates\Parts\edit\edit_part_info.html.twig:12 + Part-DB1\templates\Parts\info\show_part_info.html.twig:24 + Part-DB1\templates\Parts\info\_extended_infos.html.twig:36 + Part-DB1\templates\AdminPages\_info.html.twig:4 + Part-DB1\templates\Parts\edit\edit_part_info.html.twig:12 + Part-DB1\templates\Parts\info\show_part_info.html.twig:24 + Part-DB1\templates\Parts\info\_extended_infos.html.twig:36 + templates\AdminPages\EntityAdminBase.html.twig:94 + templates\Parts\edit_part_info.html.twig:12 + templates\Parts\show_part_info.html.twig:11 + + + id.label + ID + + + + + Part-DB1\templates\AdminPages\_info.html.twig:11 + Part-DB1\templates\Parts\info\_attachments_info.html.twig:76 + Part-DB1\templates\Parts\info\_attachments_info.html.twig:77 + Part-DB1\templates\Parts\info\_extended_infos.html.twig:6 + Part-DB1\templates\Parts\info\_order_infos.html.twig:69 + Part-DB1\templates\Parts\info\_sidebar.html.twig:12 + Part-DB1\templates\Parts\lists\_info_card.html.twig:77 + Part-DB1\templates\AdminPages\_info.html.twig:11 + Part-DB1\templates\Parts\info\_attachments_info.html.twig:59 + Part-DB1\templates\Parts\info\_attachments_info.html.twig:60 + Part-DB1\templates\Parts\info\_extended_infos.html.twig:6 + Part-DB1\templates\Parts\info\_order_infos.html.twig:69 + Part-DB1\templates\Parts\info\_sidebar.html.twig:12 + Part-DB1\templates\Parts\lists\_info_card.html.twig:53 + templates\AdminPages\EntityAdminBase.html.twig:101 + templates\Parts\show_part_info.html.twig:248 + + + createdAt + Créé le + + + + + Part-DB1\templates\AdminPages\_info.html.twig:25 + Part-DB1\templates\Parts\info\_extended_infos.html.twig:21 + Part-DB1\templates\Parts\info\_sidebar.html.twig:8 + Part-DB1\templates\Parts\lists\_info_card.html.twig:73 + Part-DB1\templates\AdminPages\_info.html.twig:25 + Part-DB1\templates\Parts\info\_extended_infos.html.twig:21 + Part-DB1\templates\Parts\info\_sidebar.html.twig:8 + Part-DB1\templates\Parts\lists\_info_card.html.twig:49 + templates\AdminPages\EntityAdminBase.html.twig:114 + templates\Parts\show_part_info.html.twig:263 + + + lastModified + Dernière modification + + + + + Part-DB1\templates\AdminPages\_info.html.twig:38 + Part-DB1\templates\AdminPages\_info.html.twig:38 + + + entity.info.parts_count + Nombre de composants avec cet élément + + + + + Part-DB1\templates\AdminPages\_parameters.html.twig:6 + Part-DB1\templates\helper.twig:125 + Part-DB1\templates\Parts\edit\_specifications.html.twig:6 + + + specifications.property + Paramètre + + + + + Part-DB1\templates\AdminPages\_parameters.html.twig:7 + Part-DB1\templates\Parts\edit\_specifications.html.twig:7 + + + specifications.symbol + Symbole + + + + + Part-DB1\templates\AdminPages\_parameters.html.twig:8 + Part-DB1\templates\Parts\edit\_specifications.html.twig:8 + + + specifications.value_min + Min. + + + + + Part-DB1\templates\AdminPages\_parameters.html.twig:9 + Part-DB1\templates\Parts\edit\_specifications.html.twig:9 + + + specifications.value_typ + Typ. + + + + + Part-DB1\templates\AdminPages\_parameters.html.twig:10 + Part-DB1\templates\Parts\edit\_specifications.html.twig:10 + + + specifications.value_max + Max. + + + + + Part-DB1\templates\AdminPages\_parameters.html.twig:11 + Part-DB1\templates\Parts\edit\_specifications.html.twig:11 + + + specifications.unit + Unité + + + + + Part-DB1\templates\AdminPages\_parameters.html.twig:12 + Part-DB1\templates\Parts\edit\_specifications.html.twig:12 + + + specifications.text + Texte + + + + + Part-DB1\templates\AdminPages\_parameters.html.twig:13 + Part-DB1\templates\Parts\edit\_specifications.html.twig:13 + + + specifications.group + Groupe + + + + + Part-DB1\templates\AdminPages\_parameters.html.twig:26 + Part-DB1\templates\Parts\edit\_specifications.html.twig:26 + + + specification.create + Nouveau paramètre + + + + + Part-DB1\templates\AdminPages\_parameters.html.twig:31 + Part-DB1\templates\Parts\edit\_specifications.html.twig:31 + + + parameter.delete.confirm + Souhaitez-vous vraiment supprimer ce paramètre ? + + + + + Part-DB1\templates\attachment_list.html.twig:3 + Part-DB1\templates\attachment_list.html.twig:3 + + + attachment.list.title + Liste des fichiers joints + + + + + Part-DB1\templates\attachment_list.html.twig:10 + Part-DB1\templates\LogSystem\_log_table.html.twig:8 + Part-DB1\templates\Parts\lists\_parts_list.html.twig:6 + Part-DB1\templates\attachment_list.html.twig:10 + Part-DB1\templates\LogSystem\_log_table.html.twig:8 + Part-DB1\templates\Parts\lists\_parts_list.html.twig:6 + + + part_list.loading.caption + Chargement + + + + + Part-DB1\templates\attachment_list.html.twig:11 + Part-DB1\templates\LogSystem\_log_table.html.twig:9 + Part-DB1\templates\Parts\lists\_parts_list.html.twig:7 + Part-DB1\templates\attachment_list.html.twig:11 + Part-DB1\templates\LogSystem\_log_table.html.twig:9 + Part-DB1\templates\Parts\lists\_parts_list.html.twig:7 + + + part_list.loading.message + Cela peut prendre un moment.Si ce message ne disparaît pas, essayez de recharger la page. + + + + + Part-DB1\templates\base.html.twig:68 + Part-DB1\templates\base.html.twig:68 + templates\base.html.twig:246 + + + vendor.base.javascript_hint + Activez Javascipt pour profiter de toutes les fonctionnalités! + + + + + Part-DB1\templates\base.html.twig:73 + Part-DB1\templates\base.html.twig:73 + + + sidebar.big.toggle + Afficher/Cacher le panneau latéral +Show/Hide sidebar + + + + + Part-DB1\templates\base.html.twig:95 + Part-DB1\templates\base.html.twig:95 + templates\base.html.twig:271 + + + loading.caption + Chargement: + + + + + Part-DB1\templates\base.html.twig:96 + Part-DB1\templates\base.html.twig:96 + templates\base.html.twig:272 + + + loading.message + Cela peut prendre un moment.Si ce message ne disparaît pas, essayez de recharger la page. + + + + + Part-DB1\templates\base.html.twig:101 + Part-DB1\templates\base.html.twig:101 + templates\base.html.twig:277 + + + loading.bar + Chargement... + + + + + Part-DB1\templates\base.html.twig:112 + Part-DB1\templates\base.html.twig:112 + templates\base.html.twig:288 + + + back_to_top + Retour en haut de page + + + + + Part-DB1\templates\Form\permissionLayout.html.twig:35 + Part-DB1\templates\Form\permissionLayout.html.twig:35 + + + permission.edit.permission + Permissions + + + + + Part-DB1\templates\Form\permissionLayout.html.twig:36 + Part-DB1\templates\Form\permissionLayout.html.twig:36 + + + permission.edit.value + Valeur + + + + + Part-DB1\templates\Form\permissionLayout.html.twig:53 + Part-DB1\templates\Form\permissionLayout.html.twig:53 + + + permission.legend.title + Explication des états: + + + + + Part-DB1\templates\Form\permissionLayout.html.twig:57 + Part-DB1\templates\Form\permissionLayout.html.twig:57 + + + permission.legend.disallow + Interdire + + + + + Part-DB1\templates\Form\permissionLayout.html.twig:61 + Part-DB1\templates\Form\permissionLayout.html.twig:61 + + + permission.legend.allow + Autoriser + + + + + Part-DB1\templates\Form\permissionLayout.html.twig:65 + Part-DB1\templates\Form\permissionLayout.html.twig:65 + + + permission.legend.inherit + Hériter du groupe (parent) + + + + + Part-DB1\templates\helper.twig:3 + Part-DB1\templates\helper.twig:3 + + + bool.true + Vrai + + + + + Part-DB1\templates\helper.twig:5 + Part-DB1\templates\helper.twig:5 + + + bool.false + Faux + + + + + Part-DB1\templates\helper.twig:92 + Part-DB1\templates\helper.twig:87 + + + Yes + Oui + + + + + Part-DB1\templates\helper.twig:94 + Part-DB1\templates\helper.twig:89 + + + No + Non + + + + + Part-DB1\templates\helper.twig:126 + + + specifications.value + Valeur + + + + + Part-DB1\templates\homepage.html.twig:7 + Part-DB1\templates\homepage.html.twig:7 + templates\homepage.html.twig:7 + + + version.caption + Version + + + + + Part-DB1\templates\homepage.html.twig:22 + Part-DB1\templates\homepage.html.twig:22 + templates\homepage.html.twig:19 + + + homepage.license + Information de license + + + + + Part-DB1\templates\homepage.html.twig:31 + Part-DB1\templates\homepage.html.twig:31 + templates\homepage.html.twig:28 + + + homepage.github.caption + Page du projet + + + + + Part-DB1\templates\homepage.html.twig:31 + Part-DB1\templates\homepage.html.twig:31 + templates\homepage.html.twig:28 + + + homepage.github.text + Retrouvez les téléchargements, report de bugs, to-do-list etc. sur <a href="%href%" class="link-external" target="_blank">la page du projet GitHub</a> + + + + + Part-DB1\templates\homepage.html.twig:32 + Part-DB1\templates\homepage.html.twig:32 + templates\homepage.html.twig:29 + + + homepage.help.caption + Aide + + + + + Part-DB1\templates\homepage.html.twig:32 + Part-DB1\templates\homepage.html.twig:32 + templates\homepage.html.twig:29 + + + homepage.help.text + De l'aide et des conseils sont disponibles sur le Wiki de la <a href="%href%" class="link-external" target="_blank">page GitHub</a> + + + + + Part-DB1\templates\homepage.html.twig:33 + Part-DB1\templates\homepage.html.twig:33 + templates\homepage.html.twig:30 + + + homepage.forum.caption + Forum + + + + + Part-DB1\templates\homepage.html.twig:45 + Part-DB1\templates\homepage.html.twig:45 + new + + + homepage.last_activity + Activité récente + + + + + Part-DB1\templates\LabelSystem\dialog.html.twig:3 + Part-DB1\templates\LabelSystem\dialog.html.twig:6 + + + label_generator.title + Générateur d'étiquettes + + + + + Part-DB1\templates\LabelSystem\dialog.html.twig:16 + + + label_generator.common + Commun + + + + + Part-DB1\templates\LabelSystem\dialog.html.twig:20 + + + label_generator.advanced + Avancé + + + + + Part-DB1\templates\LabelSystem\dialog.html.twig:24 + + + label_generator.profiles + Profils + + + + + Part-DB1\templates\LabelSystem\dialog.html.twig:58 + + + label_generator.selected_profile + Profil actuellement sélectionné + + + + + Part-DB1\templates\LabelSystem\dialog.html.twig:62 + + + label_generator.edit_profile + Modifier le profil + + + + + Part-DB1\templates\LabelSystem\dialog.html.twig:75 + + + label_generator.load_profile + Charger le profil + + + + + Part-DB1\templates\LabelSystem\dialog.html.twig:102 + + + label_generator.download + Télécharger + + + + + Part-DB1\templates\LabelSystem\dropdown_macro.html.twig:3 + Part-DB1\templates\LabelSystem\dropdown_macro.html.twig:5 + + + label_generator.label_btn + Générer une étiquette + + + + + Part-DB1\templates\LabelSystem\dropdown_macro.html.twig:20 + + + label_generator.label_empty + Nouvelle étiquette vide + + + + + Part-DB1\templates\LabelSystem\Scanner\dialog.html.twig:3 + + + label_scanner.title + Lecteur d'étiquettes + + + + + Part-DB1\templates\LabelSystem\Scanner\dialog.html.twig:7 + + + label_scanner.no_cam_found.title + Aucune webcam trouvée + + + + + Part-DB1\templates\LabelSystem\Scanner\dialog.html.twig:7 + + + label_scanner.no_cam_found.text + Vous devez disposer d'une webcam et donner l'autorisation d'utiliser la fonction de scanner. Vous pouvez entrer le code à barres manuellement ci-dessous. + + + + + Part-DB1\templates\LabelSystem\Scanner\dialog.html.twig:27 + + + label_scanner.source_select + Sélectionnez une source + + + + + Part-DB1\templates\LogSystem\log_list.html.twig:3 + Part-DB1\templates\LogSystem\log_list.html.twig:3 + + + log.list.title + Journal système + + + + + Part-DB1\templates\LogSystem\_log_table.html.twig:1 + Part-DB1\templates\LogSystem\_log_table.html.twig:1 + new + + + log.undo.confirm_title + Annuler le changement / revenir à une date antérieure ? + + + + + Part-DB1\templates\LogSystem\_log_table.html.twig:2 + Part-DB1\templates\LogSystem\_log_table.html.twig:2 + new + + + log.undo.confirm_message + Voulez-vous annuler la modification donnée / réinitialiser l'élément à une date donnée ? + + + + + Part-DB1\templates\mail\base.html.twig:24 + Part-DB1\templates\mail\base.html.twig:24 + + + mail.footer.email_sent_by + Cet email a été envoyé automatiquement par + + + + + Part-DB1\templates\mail\base.html.twig:24 + Part-DB1\templates\mail\base.html.twig:24 + + + mail.footer.dont_reply + Ne répondez pas à cet email. + + + + + Part-DB1\templates\mail\pw_reset.html.twig:6 + Part-DB1\templates\mail\pw_reset.html.twig:6 + + + email.hi %name% + Bonjour %name% + + + + + Part-DB1\templates\mail\pw_reset.html.twig:7 + Part-DB1\templates\mail\pw_reset.html.twig:7 + + + email.pw_reset.message + Quelqu’un (surement vous) a demandé une réinitialisation de votre mot de passe.Si ce n'est pas le cas, ignorez simplement cet email. + + + + + Part-DB1\templates\mail\pw_reset.html.twig:9 + Part-DB1\templates\mail\pw_reset.html.twig:9 + + + email.pw_reset.button + Cliquez ici pour réinitialiser votre mot de passe + + + + + Part-DB1\templates\mail\pw_reset.html.twig:11 + Part-DB1\templates\mail\pw_reset.html.twig:11 + + + email.pw_reset.fallback + Si cela ne fonctionne pas pour vous, allez à <a href="%url%">%url%</a> et entrez les informations suivantes + + + + + Part-DB1\templates\mail\pw_reset.html.twig:16 + Part-DB1\templates\mail\pw_reset.html.twig:16 + + + email.pw_reset.username + Nom d'utilisateur + + + + + Part-DB1\templates\mail\pw_reset.html.twig:19 + Part-DB1\templates\mail\pw_reset.html.twig:19 + + + email.pw_reset.token + Jeton + + + + + Part-DB1\templates\mail\pw_reset.html.twig:24 + Part-DB1\templates\mail\pw_reset.html.twig:24 + + + email.pw_reset.valid_unit %date% + Le jeton de réinitialisation sera valable jusqu'au <i>%date%</i>. + + + + + Part-DB1\templates\Parts\edit\edit_form_styles.html.twig:18 + Part-DB1\templates\Parts\edit\edit_form_styles.html.twig:58 + Part-DB1\templates\Parts\edit\edit_form_styles.html.twig:78 + Part-DB1\templates\Parts\edit\edit_form_styles.html.twig:58 + + + orderdetail.delete + Supprimer + + + + + Part-DB1\templates\Parts\edit\edit_form_styles.html.twig:39 + Part-DB1\templates\Parts\edit\edit_form_styles.html.twig:39 + + + pricedetails.edit.min_qty + Quantité minimale de commande + + + + + Part-DB1\templates\Parts\edit\edit_form_styles.html.twig:40 + Part-DB1\templates\Parts\edit\edit_form_styles.html.twig:40 + + + pricedetails.edit.price + Prix + + + + + Part-DB1\templates\Parts\edit\edit_form_styles.html.twig:41 + Part-DB1\templates\Parts\edit\edit_form_styles.html.twig:41 + + + pricedetails.edit.price_qty + Pour la quantité + + + + + Part-DB1\templates\Parts\edit\edit_form_styles.html.twig:54 + Part-DB1\templates\Parts\edit\edit_form_styles.html.twig:54 + + + pricedetail.create + Ajouter prix + + + + + Part-DB1\templates\Parts\edit\edit_part_info.html.twig:4 + Part-DB1\templates\Parts\edit\edit_part_info.html.twig:4 + templates\Parts\edit_part_info.html.twig:4 + + + part.edit.title + Éditer le composant + + + + + Part-DB1\templates\Parts\edit\edit_part_info.html.twig:9 + Part-DB1\templates\Parts\edit\edit_part_info.html.twig:9 + templates\Parts\edit_part_info.html.twig:9 + + + part.edit.card_title + Éditer le composant + + + + + Part-DB1\templates\Parts\edit\edit_part_info.html.twig:22 + Part-DB1\templates\Parts\edit\edit_part_info.html.twig:22 + + + part.edit.tab.common + Général + + + + + Part-DB1\templates\Parts\edit\edit_part_info.html.twig:28 + Part-DB1\templates\Parts\edit\edit_part_info.html.twig:28 + + + part.edit.tab.manufacturer + Fabricant + + + + + Part-DB1\templates\Parts\edit\edit_part_info.html.twig:34 + Part-DB1\templates\Parts\edit\edit_part_info.html.twig:34 + + + part.edit.tab.advanced + Avancé + + + + + part.edit.tab.advanced.ipn.commonSectionHeader + Suggestions sans incrément de partie + + + + + part.edit.tab.advanced.ipn.partIncrementHeader + Propositions avec incréments numériques de parties + + + + + part.edit.tab.advanced.ipn.prefix.description.current-increment + Spécification IPN actuelle pour la pièce + + + + + part.edit.tab.advanced.ipn.prefix.description.increment + Prochaine spécification IPN possible basée sur une description identique de la pièce + + + + + part.edit.tab.advanced.ipn.prefix_empty.direct_category + Le préfixe IPN de la catégorie directe est vide, veuillez le spécifier dans la catégorie "%name%" + + + + + part.edit.tab.advanced.ipn.prefix.direct_category + Préfixe IPN de la catégorie directe + + + + + part.edit.tab.advanced.ipn.prefix.direct_category.increment + Préfixe IPN de la catégorie directe et d'un incrément spécifique à la partie + + + + + part.edit.tab.advanced.ipn.prefix.hierarchical.no_increment + Préfixes IPN avec un ordre hiérarchique des catégories des préfixes parents + + + + + part.edit.tab.advanced.ipn.prefix.hierarchical.increment + Préfixes IPN avec un ordre hiérarchique des catégories des préfixes parents et un incrément spécifique à la pièce + + + + + part.edit.tab.advanced.ipn.prefix.not_saved + Créez d'abord une pièce et assignez-la à une catégorie : avec les catégories existantes et leurs propres préfixes IPN, l'identifiant IPN pour la pièce peut être proposé automatiquement + + + + + Part-DB1\templates\Parts\edit\edit_part_info.html.twig:40 + Part-DB1\templates\Parts\edit\edit_part_info.html.twig:40 + + + part.edit.tab.part_lots + Stocks + + + + + Part-DB1\templates\Parts\edit\edit_part_info.html.twig:46 + Part-DB1\templates\Parts\edit\edit_part_info.html.twig:46 + + + part.edit.tab.attachments + Fichiers joints + + + + + Part-DB1\templates\Parts\edit\edit_part_info.html.twig:52 + Part-DB1\templates\Parts\edit\edit_part_info.html.twig:52 + + + part.edit.tab.orderdetails + Informations pour la commande + + + + + Part-DB1\templates\Parts\edit\edit_part_info.html.twig:58 + + + part.edit.tab.specifications + Caractéristiques + + + + + Part-DB1\templates\Parts\edit\edit_part_info.html.twig:64 + Part-DB1\templates\Parts\edit\edit_part_info.html.twig:58 + + + part.edit.tab.comment + Commentaire + + + + + Part-DB1\templates\Parts\edit\new_part.html.twig:8 + Part-DB1\templates\Parts\edit\new_part.html.twig:8 + templates\Parts\new_part.html.twig:8 + + + part.new.card_title + Créer un nouveau composant + + + + + Part-DB1\templates\Parts\edit\_lots.html.twig:5 + Part-DB1\templates\Parts\edit\_lots.html.twig:5 + + + part_lot.delete + Supprimer + + + + + Part-DB1\templates\Parts\edit\_lots.html.twig:28 + Part-DB1\templates\Parts\edit\_lots.html.twig:28 + + + part_lot.create + Créer un inventaire + + + + + Part-DB1\templates\Parts\edit\_orderdetails.html.twig:13 + Part-DB1\templates\Parts\edit\_orderdetails.html.twig:13 + + + orderdetail.create + Ajouter un fournisseur + + + + + Part-DB1\templates\Parts\edit\_orderdetails.html.twig:18 + Part-DB1\templates\Parts\edit\_orderdetails.html.twig:18 + + + pricedetails.edit.delete.confirm + Voulez-vous vraiment supprimer ce prix ? Cela ne peut pas être défait ! + + + + + Part-DB1\templates\Parts\edit\_orderdetails.html.twig:62 + Part-DB1\templates\Parts\edit\_orderdetails.html.twig:61 + + + orderdetails.edit.delete.confirm + Voulez-vous vraiment supprimer ce fournisseur ? Cela ne peut pas être défait ! + + + + + Part-DB1\templates\Parts\info\show_part_info.html.twig:4 + Part-DB1\templates\Parts\info\show_part_info.html.twig:19 + Part-DB1\templates\Parts\info\show_part_info.html.twig:4 + Part-DB1\templates\Parts\info\show_part_info.html.twig:19 + templates\Parts\show_part_info.html.twig:4 + templates\Parts\show_part_info.html.twig:9 + + + part.info.title + Informations détaillées pour + + + + + Part-DB1\templates\Parts\info\show_part_info.html.twig:47 + Part-DB1\templates\Parts\info\show_part_info.html.twig:47 + + + part.part_lots.label + Stocks + + + + + Part-DB1\templates\Parts\info\show_part_info.html.twig:56 + Part-DB1\templates\Parts\lists\_info_card.html.twig:43 + Part-DB1\templates\_navbar_search.html.twig:31 + Part-DB1\templates\_navbar_search.html.twig:26 + templates\base.html.twig:62 + templates\Parts\show_part_info.html.twig:74 + src\Form\PartType.php:86 + + + comment.label + Commentaire + + + + + Part-DB1\templates\Parts\info\show_part_info.html.twig:64 + + + part.info.specifications + Caractéristiques + + + + + Part-DB1\templates\Parts\info\show_part_info.html.twig:74 + Part-DB1\templates\Parts\info\show_part_info.html.twig:64 + templates\Parts\show_part_info.html.twig:82 + + + attachment.labelp + Fichiers joints + + + + + Part-DB1\templates\Parts\info\show_part_info.html.twig:83 + Part-DB1\templates\Parts\info\show_part_info.html.twig:71 + templates\Parts\show_part_info.html.twig:88 + + + vendor.partinfo.shopping_infos + Informations de commande + + + + + Part-DB1\templates\Parts\info\show_part_info.html.twig:91 + Part-DB1\templates\Parts\info\show_part_info.html.twig:78 + templates\Parts\show_part_info.html.twig:94 + + + vendor.partinfo.history + Historique + + + + + Part-DB1\templates\Parts\info\show_part_info.html.twig:97 + Part-DB1\templates\_sidebar.html.twig:54 + Part-DB1\templates\_sidebar.html.twig:13 + Part-DB1\templates\Parts\info\show_part_info.html.twig:84 + Part-DB1\templates\_sidebar.html.twig:54 + Part-DB1\templates\_sidebar.html.twig:13 + templates\base.html.twig:176 + templates\base.html.twig:203 + templates\base.html.twig:217 + templates\base.html.twig:231 + templates\Parts\show_part_info.html.twig:100 + + + tools.label + Outils + + + + + Part-DB1\templates\Parts\info\show_part_info.html.twig:103 + Part-DB1\templates\Parts\info\show_part_info.html.twig:90 + + + extended_info.label + Informations complémentaires + + + + + Part-DB1\templates\Parts\info\_attachments_info.html.twig:7 + Part-DB1\templates\Parts\info\_attachments_info.html.twig:7 + + + attachment.name + Nom + + + + + Part-DB1\templates\Parts\info\_attachments_info.html.twig:8 + Part-DB1\templates\Parts\info\_attachments_info.html.twig:8 + + + attachment.attachment_type + Type de fichier joint + + + + + Part-DB1\templates\Parts\info\_attachments_info.html.twig:9 + Part-DB1\templates\Parts\info\_attachments_info.html.twig:9 + + + attachment.file_name + Nom du fichier + + + + + Part-DB1\templates\Parts\info\_attachments_info.html.twig:10 + Part-DB1\templates\Parts\info\_attachments_info.html.twig:10 + + + attachment.file_size + Taille du fichier + + + + + Part-DB1\templates\Parts\info\_attachments_info.html.twig:54 + + + attachment.preview + Aperçu de l'image + + + + + Part-DB1\templates\Parts\info\_attachments_info.html.twig:67 + Part-DB1\templates\Parts\info\_attachments_info.html.twig:50 + + + attachment.download + Téléchargement + + + + + Part-DB1\templates\Parts\info\_extended_infos.html.twig:11 + Part-DB1\templates\Parts\info\_extended_infos.html.twig:11 + new + + + user.creating_user + Utilisateur qui a créé ce composant + + + + + Part-DB1\templates\Parts\info\_extended_infos.html.twig:13 + Part-DB1\templates\Parts\info\_extended_infos.html.twig:28 + Part-DB1\templates\Parts\info\_extended_infos.html.twig:50 + Part-DB1\templates\Parts\info\_extended_infos.html.twig:13 + Part-DB1\templates\Parts\info\_extended_infos.html.twig:28 + Part-DB1\templates\Parts\info\_extended_infos.html.twig:50 + + + Unknown + Inconnu + + + + + Part-DB1\templates\Parts\info\_extended_infos.html.twig:15 + Part-DB1\templates\Parts\info\_extended_infos.html.twig:30 + Part-DB1\templates\Parts\info\_extended_infos.html.twig:15 + Part-DB1\templates\Parts\info\_extended_infos.html.twig:30 + new + + + accessDenied + Accès refusé + + + + + Part-DB1\templates\Parts\info\_extended_infos.html.twig:26 + Part-DB1\templates\Parts\info\_extended_infos.html.twig:26 + new + + + user.last_editing_user + Utilisateur qui a édité ce composant en dernier + + + + + Part-DB1\templates\Parts\info\_extended_infos.html.twig:41 + Part-DB1\templates\Parts\info\_extended_infos.html.twig:41 + + + part.isFavorite + Favoris + + + + + Part-DB1\templates\Parts\info\_extended_infos.html.twig:46 + Part-DB1\templates\Parts\info\_extended_infos.html.twig:46 + + + part.minOrderAmount + Quantité minimale de commande + + + + + Part-DB1\templates\Parts\info\_main_infos.html.twig:8 + Part-DB1\templates\_navbar_search.html.twig:46 + Part-DB1\src\Services\ElementTypeNameGenerator.php:84 + Part-DB1\templates\Parts\info\_main_infos.html.twig:8 + Part-DB1\templates\_navbar_search.html.twig:41 + Part-DB1\src\Services\ElementTypeNameGenerator.php:84 + templates\base.html.twig:70 + templates\Parts\show_part_info.html.twig:24 + src\Form\PartType.php:80 + + + manufacturer.label + Fabricant + + + + + Part-DB1\templates\Parts\info\_main_infos.html.twig:24 + Part-DB1\templates\_navbar_search.html.twig:11 + templates\base.html.twig:54 + src\Form\PartType.php:62 + + + name.label + Nom + + + + + Part-DB1\templates\Parts\info\_main_infos.html.twig:27 + Part-DB1\templates\Parts\info\_main_infos.html.twig:27 + new + + + part.back_to_info + Retour à la version actuelle + + + + + Part-DB1\templates\Parts\info\_main_infos.html.twig:32 + Part-DB1\templates\_navbar_search.html.twig:19 + Part-DB1\templates\Parts\info\_main_infos.html.twig:32 + Part-DB1\templates\_navbar_search.html.twig:18 + templates\base.html.twig:58 + templates\Parts\show_part_info.html.twig:31 + src\Form\PartType.php:65 + + + description.label + Description + + + + + Part-DB1\templates\Parts\info\_main_infos.html.twig:34 + Part-DB1\templates\_navbar_search.html.twig:15 + Part-DB1\src\Services\ElementTypeNameGenerator.php:80 + Part-DB1\templates\Parts\info\_main_infos.html.twig:34 + Part-DB1\templates\_navbar_search.html.twig:14 + Part-DB1\src\Services\ElementTypeNameGenerator.php:80 + templates\base.html.twig:56 + templates\Parts\show_part_info.html.twig:32 + src\Form\PartType.php:74 + + + category.label + Catégorie + + + + + Part-DB1\templates\Parts\info\_main_infos.html.twig:39 + Part-DB1\templates\Parts\info\_main_infos.html.twig:39 + templates\Parts\show_part_info.html.twig:42 + src\Form\PartType.php:69 + + + instock.label + En stock + + + + + Part-DB1\templates\Parts\info\_main_infos.html.twig:41 + Part-DB1\templates\Parts\info\_main_infos.html.twig:41 + templates\Parts\show_part_info.html.twig:44 + src\Form\PartType.php:72 + + + mininstock.label + Stock minimum + + + + + Part-DB1\templates\Parts\info\_main_infos.html.twig:45 + Part-DB1\templates\_navbar_search.html.twig:52 + Part-DB1\src\Services\ElementTypeNameGenerator.php:83 + Part-DB1\templates\Parts\info\_main_infos.html.twig:45 + Part-DB1\templates\_navbar_search.html.twig:47 + Part-DB1\src\Services\ElementTypeNameGenerator.php:83 + templates\base.html.twig:73 + templates\Parts\show_part_info.html.twig:47 + + + footprint.label + Empreinte + + + + + Part-DB1\templates\Parts\info\_main_infos.html.twig:56 + Part-DB1\templates\Parts\info\_main_infos.html.twig:59 + Part-DB1\templates\Parts\info\_main_infos.html.twig:57 + Part-DB1\templates\Parts\info\_main_infos.html.twig:60 + templates\Parts\show_part_info.html.twig:51 + + + part.avg_price.label + Prix moyen + + + + + Part-DB1\templates\Parts\info\_order_infos.html.twig:5 + Part-DB1\templates\Parts\info\_order_infos.html.twig:5 + + + part.supplier.name + Nom + + + + + Part-DB1\templates\Parts\info\_order_infos.html.twig:6 + Part-DB1\templates\Parts\info\_order_infos.html.twig:6 + + + part.supplier.partnr + Lien/Code cmd. + + + + + Part-DB1\templates\Parts\info\_order_infos.html.twig:28 + Part-DB1\templates\Parts\info\_order_infos.html.twig:28 + + + part.order.minamount + Nombre minimum + + + + + Part-DB1\templates\Parts\info\_order_infos.html.twig:29 + Part-DB1\templates\Parts\info\_order_infos.html.twig:29 + + + part.order.price + Prix + + + + + Part-DB1\templates\Parts\info\_order_infos.html.twig:31 + Part-DB1\templates\Parts\info\_order_infos.html.twig:31 + + + part.order.single_price + Prix unitaire + + + + + Part-DB1\templates\Parts\info\_order_infos.html.twig:71 + Part-DB1\templates\Parts\info\_order_infos.html.twig:71 + + + edit.caption_short + Éditer + + + + + Part-DB1\templates\Parts\info\_order_infos.html.twig:72 + Part-DB1\templates\Parts\info\_order_infos.html.twig:72 + + + delete.caption + Supprimer + + + + + Part-DB1\templates\Parts\info\_part_lots.html.twig:7 + Part-DB1\templates\Parts\info\_part_lots.html.twig:6 + + + part_lots.description + Description + + + + + Part-DB1\templates\Parts\info\_part_lots.html.twig:8 + Part-DB1\templates\Parts\info\_part_lots.html.twig:7 + + + part_lots.storage_location + Emplacement de stockage + + + + + Part-DB1\templates\Parts\info\_part_lots.html.twig:9 + Part-DB1\templates\Parts\info\_part_lots.html.twig:8 + + + part_lots.amount + Quantité + + + + + Part-DB1\templates\Parts\info\_part_lots.html.twig:24 + Part-DB1\templates\Parts\info\_part_lots.html.twig:22 + + + part_lots.location_unknown + Emplacement de stockage inconnu + + + + + Part-DB1\templates\Parts\info\_part_lots.html.twig:31 + Part-DB1\templates\Parts\info\_part_lots.html.twig:29 + + + part_lots.instock_unknown + Quantité inconnue + + + + + Part-DB1\templates\Parts\info\_part_lots.html.twig:40 + Part-DB1\templates\Parts\info\_part_lots.html.twig:38 + + + part_lots.expiration_date + Date d'expiration + + + + + Part-DB1\templates\Parts\info\_part_lots.html.twig:48 + Part-DB1\templates\Parts\info\_part_lots.html.twig:46 + + + part_lots.is_expired + Expiré + + + + + Part-DB1\templates\Parts\info\_part_lots.html.twig:55 + Part-DB1\templates\Parts\info\_part_lots.html.twig:53 + + + part_lots.need_refill + Doit être rempli à nouveau + + + + + Part-DB1\templates\Parts\info\_picture.html.twig:15 + Part-DB1\templates\Parts\info\_picture.html.twig:15 + + + part.info.prev_picture + Image précédente + + + + + Part-DB1\templates\Parts\info\_picture.html.twig:19 + Part-DB1\templates\Parts\info\_picture.html.twig:19 + + + part.info.next_picture + Image suivante + + + + + Part-DB1\templates\Parts\info\_sidebar.html.twig:21 + Part-DB1\templates\Parts\info\_sidebar.html.twig:21 + + + part.mass.tooltip + Poids + + + + + Part-DB1\templates\Parts\info\_sidebar.html.twig:30 + Part-DB1\templates\Parts\info\_sidebar.html.twig:30 + + + part.needs_review.badge + Révision nécessaire + + + + + Part-DB1\templates\Parts\info\_sidebar.html.twig:39 + Part-DB1\templates\Parts\info\_sidebar.html.twig:39 + + + part.favorite.badge + Favoris + + + + + Part-DB1\templates\Parts\info\_sidebar.html.twig:47 + Part-DB1\templates\Parts\info\_sidebar.html.twig:47 + + + part.obsolete.badge + N'est plus disponible + + + + + Part-DB1\templates\Parts\info\_specifications.html.twig:10 + + + parameters.extracted_from_description + Automatiquement extrait de la description + + + + + Part-DB1\templates\Parts\info\_specifications.html.twig:15 + + + parameters.auto_extracted_from_comment + Automatiquement extrait du commentaire + + + + + Part-DB1\templates\Parts\info\_tools.html.twig:6 + Part-DB1\templates\Parts\info\_tools.html.twig:4 + templates\Parts\show_part_info.html.twig:125 + + + part.edit.btn + Éditer + + + + + Part-DB1\templates\Parts\info\_tools.html.twig:16 + Part-DB1\templates\Parts\info\_tools.html.twig:14 + templates\Parts\show_part_info.html.twig:135 + + + part.clone.btn + Duplication + + + + + Part-DB1\templates\Parts\info\_tools.html.twig:24 + Part-DB1\templates\Parts\lists\_action_bar.html.twig:4 + templates\Parts\show_part_info.html.twig:143 + + + part.create.btn + Créer un nouveau composant + + + + + Part-DB1\templates\Parts\info\_tools.html.twig:31 + Part-DB1\templates\Parts\info\_tools.html.twig:29 + + + part.delete.confirm_title + Voulez-vous vraiment supprimer ce composant ? + + + + + Part-DB1\templates\Parts\info\_tools.html.twig:32 + Part-DB1\templates\Parts\info\_tools.html.twig:30 + + + part.delete.message + Le composant et toutes les informations associées (stocks, fichiers joints, etc.) sont supprimés. Cela ne pourra pas être annulé. + + + + + Part-DB1\templates\Parts\info\_tools.html.twig:39 + Part-DB1\templates\Parts\info\_tools.html.twig:37 + + + part.delete + Supprimer le composant + + + + + Part-DB1\templates\Parts\lists\all_list.html.twig:4 + Part-DB1\templates\Parts\lists\all_list.html.twig:4 + + + parts_list.all.title + Tous les composants + + + + + Part-DB1\templates\Parts\lists\category_list.html.twig:4 + Part-DB1\templates\Parts\lists\category_list.html.twig:4 + + + parts_list.category.title + Composants avec catégorie + + + + + Part-DB1\templates\Parts\lists\footprint_list.html.twig:4 + Part-DB1\templates\Parts\lists\footprint_list.html.twig:4 + + + parts_list.footprint.title + Composants avec empreinte + + + + + Part-DB1\templates\Parts\lists\manufacturer_list.html.twig:4 + Part-DB1\templates\Parts\lists\manufacturer_list.html.twig:4 + + + parts_list.manufacturer.title + Composants avec fabricant + + + + + Part-DB1\templates\Parts\lists\search_list.html.twig:4 + Part-DB1\templates\Parts\lists\search_list.html.twig:4 + + + parts_list.search.title + Recherche de composants + + + + + Part-DB1\templates\Parts\lists\store_location_list.html.twig:4 + Part-DB1\templates\Parts\lists\store_location_list.html.twig:4 + + + parts_list.storelocation.title + Composants avec lieu de stockage + + + + + Part-DB1\templates\Parts\lists\supplier_list.html.twig:4 + Part-DB1\templates\Parts\lists\supplier_list.html.twig:4 + + + parts_list.supplier.title + Composants avec fournisseur + + + + + Part-DB1\templates\Parts\lists\tags_list.html.twig:4 + Part-DB1\templates\Parts\lists\tags_list.html.twig:4 + + + parts_list.tags.title + Composants avec tag + + + + + Part-DB1\templates\Parts\lists\_info_card.html.twig:22 + Part-DB1\templates\Parts\lists\_info_card.html.twig:17 + + + entity.info.common.tab + Général + + + + + Part-DB1\templates\Parts\lists\_info_card.html.twig:26 + Part-DB1\templates\Parts\lists\_info_card.html.twig:20 + + + entity.info.statistics.tab + Statistiques + + + + + Part-DB1\templates\Parts\lists\_info_card.html.twig:31 + + + entity.info.attachments.tab + Pièces jointes + + + + + Part-DB1\templates\Parts\lists\_info_card.html.twig:37 + + + entity.info.parameters.tab + Caractéristiques + + + + + Part-DB1\templates\Parts\lists\_info_card.html.twig:54 + Part-DB1\templates\Parts\lists\_info_card.html.twig:30 + + + entity.info.name + Nom + + + + + Part-DB1\templates\Parts\lists\_info_card.html.twig:58 + Part-DB1\templates\Parts\lists\_info_card.html.twig:96 + Part-DB1\templates\Parts\lists\_info_card.html.twig:34 + Part-DB1\templates\Parts\lists\_info_card.html.twig:67 + + + entity.info.parent + Parent + + + + + Part-DB1\templates\Parts\lists\_info_card.html.twig:70 + Part-DB1\templates\Parts\lists\_info_card.html.twig:46 + + + entity.edit.btn + Éditer + + + + + Part-DB1\templates\Parts\lists\_info_card.html.twig:92 + Part-DB1\templates\Parts\lists\_info_card.html.twig:63 + + + entity.info.children_count + Nombre de sous-éléments + + + + + Part-DB1\templates\security\2fa_base_form.html.twig:3 + Part-DB1\templates\security\2fa_base_form.html.twig:5 + Part-DB1\templates\security\2fa_base_form.html.twig:3 + Part-DB1\templates\security\2fa_base_form.html.twig:5 + + + tfa.check.title + Authentification à deux facteurs requise + + + + + Part-DB1\templates\security\2fa_base_form.html.twig:39 + Part-DB1\templates\security\2fa_base_form.html.twig:39 + + + tfa.code.trusted_pc + Il s'agit d'un ordinateur de confiance (si cette fonction est activée, aucune autre requête à deux facteurs n'est effectuée sur cet ordinateur) + + + + + Part-DB1\templates\security\2fa_base_form.html.twig:52 + Part-DB1\templates\security\login.html.twig:58 + Part-DB1\templates\security\2fa_base_form.html.twig:52 + Part-DB1\templates\security\login.html.twig:58 + + + login.btn + Connexion + + + + + Part-DB1\templates\security\2fa_base_form.html.twig:53 + Part-DB1\templates\security\U2F\u2f_login.html.twig:13 + Part-DB1\templates\_navbar.html.twig:42 + Part-DB1\templates\security\2fa_base_form.html.twig:53 + Part-DB1\templates\security\U2F\u2f_login.html.twig:13 + Part-DB1\templates\_navbar.html.twig:40 + + + user.logout + Déconnexion + + + + + Part-DB1\templates\security\2fa_form.html.twig:6 + Part-DB1\templates\security\2fa_form.html.twig:6 + + + tfa.check.code.label + Code d'application de l'authentificateur + + + + + Part-DB1\templates\security\2fa_form.html.twig:10 + Part-DB1\templates\security\2fa_form.html.twig:10 + + + tfa.check.code.help + Entrez le code à 6 chiffres de votre application d'authentification ou l'un de vos codes de secours si l'authentificateur n'est pas disponible. + + + + + Part-DB1\templates\security\login.html.twig:3 + Part-DB1\templates\security\login.html.twig:3 + templates\security\login.html.twig:3 + + + login.title + Connexion + + + + + Part-DB1\templates\security\login.html.twig:7 + Part-DB1\templates\security\login.html.twig:7 + templates\security\login.html.twig:7 + + + login.card_title + Connexion + + + + + Part-DB1\templates\security\login.html.twig:31 + Part-DB1\templates\security\login.html.twig:31 + templates\security\login.html.twig:31 + + + login.username.label + Nom d'utilisateur + + + + + Part-DB1\templates\security\login.html.twig:34 + Part-DB1\templates\security\login.html.twig:34 + templates\security\login.html.twig:34 + + + login.username.placeholder + Nom d'utilisateur + + + + + Part-DB1\templates\security\login.html.twig:38 + Part-DB1\templates\security\login.html.twig:38 + templates\security\login.html.twig:38 + + + login.password.label + Mot de passe + + + + + Part-DB1\templates\security\login.html.twig:40 + Part-DB1\templates\security\login.html.twig:40 + templates\security\login.html.twig:40 + + + login.password.placeholder + Mot de passe + + + + + Part-DB1\templates\security\login.html.twig:50 + Part-DB1\templates\security\login.html.twig:50 + templates\security\login.html.twig:50 + + + login.rememberme + Rester connecté (non recommandé sur les ordinateurs publics) + + + + + Part-DB1\templates\security\login.html.twig:64 + Part-DB1\templates\security\login.html.twig:64 + + + pw_reset.password_forget + Nom d'utilisateur/mot de passe oublié ? + + + + + Part-DB1\templates\security\pw_reset_new_pw.html.twig:5 + Part-DB1\templates\security\pw_reset_new_pw.html.twig:5 + + + pw_reset.new_pw.header.title + Définir un nouveau mot de passe + + + + + Part-DB1\templates\security\pw_reset_request.html.twig:5 + Part-DB1\templates\security\pw_reset_request.html.twig:5 + + + pw_reset.request.header.title + Demander un nouveau mot de passe + + + + + Part-DB1\templates\security\U2F\u2f_login.html.twig:7 + Part-DB1\templates\security\U2F\u2f_register.html.twig:10 + Part-DB1\templates\security\U2F\u2f_login.html.twig:7 + Part-DB1\templates\security\U2F\u2f_register.html.twig:10 + + + tfa_u2f.http_warning + Vous accédez à cette page en utilisant la méthode HTTP non sécurisée, donc U2F ne fonctionnera probablement pas (message d'erreur "Bad Request"). Demandez à un administrateur de mettre en place la méthode HTTPS sécurisée si vous souhaitez utiliser des clés de sécurité. + + + + + Part-DB1\templates\security\U2F\u2f_login.html.twig:10 + Part-DB1\templates\security\U2F\u2f_register.html.twig:22 + Part-DB1\templates\security\U2F\u2f_login.html.twig:10 + Part-DB1\templates\security\U2F\u2f_register.html.twig:22 + + + r_u2f_two_factor.pressbutton + Veuillez insérer la clé de sécurité et appuyer sur le bouton ! + + + + + Part-DB1\templates\security\U2F\u2f_register.html.twig:3 + Part-DB1\templates\security\U2F\u2f_register.html.twig:3 + + + tfa_u2f.add_key.title + Ajouter une clé de sécurité + + + + + Part-DB1\templates\security\U2F\u2f_register.html.twig:6 + Part-DB1\templates\Users\_2fa_settings.html.twig:111 + Part-DB1\templates\security\U2F\u2f_register.html.twig:6 + Part-DB1\templates\Users\_2fa_settings.html.twig:111 + + + tfa_u2f.explanation + À l'aide d'une clé de sécurité compatible U2F/FIDO (par exemple YubiKey ou NitroKey), une authentification à deux facteurs sûre et pratique peut être obtenue. Les clés de sécurité peuvent être enregistrées ici, et si une vérification à deux facteurs est nécessaire, il suffit d'insérer la clé via USB ou de la taper sur le dispositif via NFC. + + + + + Part-DB1\templates\security\U2F\u2f_register.html.twig:7 + Part-DB1\templates\security\U2F\u2f_register.html.twig:7 + + + tfa_u2f.add_key.backup_hint + Pour garantir l'accès même en cas de perte de la clé, il est recommandé d'enregistrer une deuxième clé en guise de sauvegarde et de la conserver dans un endroit sûr ! + + + + + Part-DB1\templates\security\U2F\u2f_register.html.twig:16 + Part-DB1\templates\security\U2F\u2f_register.html.twig:16 + + + r_u2f_two_factor.name + Afficher le nom de la clé (par exemple, sauvegarde) + + + + + Part-DB1\templates\security\U2F\u2f_register.html.twig:19 + Part-DB1\templates\security\U2F\u2f_register.html.twig:19 + + + tfa_u2f.add_key.add_button + Ajouter une clé de sécurité + + + + + Part-DB1\templates\security\U2F\u2f_register.html.twig:27 + Part-DB1\templates\security\U2F\u2f_register.html.twig:27 + + + tfa_u2f.add_key.back_to_settings + Retour aux paramètres + + + + + Part-DB1\templates\Statistics\statistics.html.twig:5 + Part-DB1\templates\Statistics\statistics.html.twig:8 + Part-DB1\templates\Statistics\statistics.html.twig:5 + Part-DB1\templates\Statistics\statistics.html.twig:8 + new + + + statistics.title + Statistiques + + + + + Part-DB1\templates\Statistics\statistics.html.twig:14 + Part-DB1\templates\Statistics\statistics.html.twig:14 + new + + + statistics.parts + Composants + + + + + Part-DB1\templates\Statistics\statistics.html.twig:19 + Part-DB1\templates\Statistics\statistics.html.twig:19 + new + + + statistics.data_structures + Structures des données + + + + + Part-DB1\templates\Statistics\statistics.html.twig:24 + Part-DB1\templates\Statistics\statistics.html.twig:24 + new + + + statistics.attachments + Fichiers joints + + + + + Part-DB1\templates\Statistics\statistics.html.twig:34 + Part-DB1\templates\Statistics\statistics.html.twig:59 + Part-DB1\templates\Statistics\statistics.html.twig:104 + Part-DB1\templates\Statistics\statistics.html.twig:34 + Part-DB1\templates\Statistics\statistics.html.twig:59 + Part-DB1\templates\Statistics\statistics.html.twig:104 + new + + + statistics.property + Propriété + + + + + Part-DB1\templates\Statistics\statistics.html.twig:35 + Part-DB1\templates\Statistics\statistics.html.twig:60 + Part-DB1\templates\Statistics\statistics.html.twig:105 + Part-DB1\templates\Statistics\statistics.html.twig:35 + Part-DB1\templates\Statistics\statistics.html.twig:60 + Part-DB1\templates\Statistics\statistics.html.twig:105 + new + + + statistics.value + Valeur + + + + + Part-DB1\templates\Statistics\statistics.html.twig:40 + Part-DB1\templates\Statistics\statistics.html.twig:40 + new + + + statistics.distinct_parts_count + Nombre de composants distincts + + + + + Part-DB1\templates\Statistics\statistics.html.twig:44 + Part-DB1\templates\Statistics\statistics.html.twig:44 + new + + + statistics.parts_instock_sum + Somme de tout les composants en stock + + + + + Part-DB1\templates\Statistics\statistics.html.twig:48 + Part-DB1\templates\Statistics\statistics.html.twig:48 + new + + + statistics.parts_with_price + Nombre de composants avec information de prix + + + + + Part-DB1\templates\Statistics\statistics.html.twig:65 + Part-DB1\templates\Statistics\statistics.html.twig:65 + new + + + statistics.categories_count + Nombre de catégories + + + + + Part-DB1\templates\Statistics\statistics.html.twig:69 + Part-DB1\templates\Statistics\statistics.html.twig:69 + new + + + statistics.footprints_count + Nombre d'empreintes + + + + + Part-DB1\templates\Statistics\statistics.html.twig:73 + Part-DB1\templates\Statistics\statistics.html.twig:73 + new + + + statistics.manufacturers_count + Nombre de fabricants + + + + + Part-DB1\templates\Statistics\statistics.html.twig:77 + Part-DB1\templates\Statistics\statistics.html.twig:77 + new + + + statistics.storelocations_count + Nombre d'emplacements de stockage + + + + + Part-DB1\templates\Statistics\statistics.html.twig:81 + Part-DB1\templates\Statistics\statistics.html.twig:81 + new + + + statistics.suppliers_count + Nombre de fournisseurs + + + + + Part-DB1\templates\Statistics\statistics.html.twig:85 + Part-DB1\templates\Statistics\statistics.html.twig:85 + new + + + statistics.currencies_count + Nombre de devises + + + + + Part-DB1\templates\Statistics\statistics.html.twig:89 + Part-DB1\templates\Statistics\statistics.html.twig:89 + new + + + statistics.measurement_units_count + Nombre d'unités de mesure + + + + + Part-DB1\templates\Statistics\statistics.html.twig:93 + Part-DB1\templates\Statistics\statistics.html.twig:93 + new + + + statistics.devices_count + Nombre de projets + + + + + Part-DB1\templates\Statistics\statistics.html.twig:110 + Part-DB1\templates\Statistics\statistics.html.twig:110 + new + + + statistics.attachment_types_count + Nombre de types de fichiers joints + + + + + Part-DB1\templates\Statistics\statistics.html.twig:114 + Part-DB1\templates\Statistics\statistics.html.twig:114 + new + + + statistics.all_attachments_count + Total des pièces jointes + + + + + Part-DB1\templates\Statistics\statistics.html.twig:118 + Part-DB1\templates\Statistics\statistics.html.twig:118 + new + + + statistics.user_uploaded_attachments_count + Nombre de fichiers joints envoyées + + + + + Part-DB1\templates\Statistics\statistics.html.twig:122 + Part-DB1\templates\Statistics\statistics.html.twig:122 + new + + + statistics.private_attachments_count + Nombre de fichiers joints privés + + + + + Part-DB1\templates\Statistics\statistics.html.twig:126 + Part-DB1\templates\Statistics\statistics.html.twig:126 + new + + + statistics.external_attachments_count + Nombre de fichiers joints externes + + + + + Part-DB1\templates\Users\backup_codes.html.twig:3 + Part-DB1\templates\Users\backup_codes.html.twig:9 + Part-DB1\templates\Users\backup_codes.html.twig:3 + Part-DB1\templates\Users\backup_codes.html.twig:9 + + + tfa_backup.codes.title + Codes de secours + + + + + Part-DB1\templates\Users\backup_codes.html.twig:12 + Part-DB1\templates\Users\backup_codes.html.twig:12 + + + tfa_backup.codes.explanation + Imprimez ces codes et conservez-les dans un endroit sûr ! + + + + + Part-DB1\templates\Users\backup_codes.html.twig:13 + Part-DB1\templates\Users\backup_codes.html.twig:13 + + + tfa_backup.codes.help + Si vous n'avez plus accès à votre appareil avec l'application d'authentification (smartphone perdu, perte de données, etc.), vous pouvez utiliser un de ces codes pour accéder à votre compte et éventuellement configurer une nouvelle application d'authentification. Chacun de ces codes peut être utilisé une fois, il est recommandé de supprimer les codes utilisés. Toute personne ayant accès à ces codes peut potentiellement accéder à votre compte, alors gardez-les en lieu sûr. + + + + + Part-DB1\templates\Users\backup_codes.html.twig:16 + Part-DB1\templates\Users\backup_codes.html.twig:16 + + + tfa_backup.username + Nom d'utilisateur + + + + + Part-DB1\templates\Users\backup_codes.html.twig:29 + Part-DB1\templates\Users\backup_codes.html.twig:29 + + + tfa_backup.codes.page_generated_on + Page générée le %date% + + + + + Part-DB1\templates\Users\backup_codes.html.twig:32 + Part-DB1\templates\Users\backup_codes.html.twig:32 + + + tfa_backup.codes.print + Imprimer + + + + + Part-DB1\templates\Users\backup_codes.html.twig:35 + Part-DB1\templates\Users\backup_codes.html.twig:35 + + + tfa_backup.codes.copy_clipboard + Copier dans le presse-papier + + + + + Part-DB1\templates\Users\user_info.html.twig:3 + Part-DB1\templates\Users\user_info.html.twig:6 + Part-DB1\templates\_navbar.html.twig:40 + Part-DB1\templates\Users\user_info.html.twig:3 + Part-DB1\templates\Users\user_info.html.twig:6 + Part-DB1\templates\_navbar.html.twig:38 + templates\base.html.twig:99 + templates\Users\user_info.html.twig:3 + templates\Users\user_info.html.twig:6 + + + user.info.label + Informations sur l'utilisateur + + + + + Part-DB1\templates\Users\user_info.html.twig:18 + Part-DB1\src\Form\UserSettingsType.php:77 + Part-DB1\templates\Users\user_info.html.twig:18 + Part-DB1\src\Form\UserSettingsType.php:77 + templates\Users\user_info.html.twig:18 + src\Form\UserSettingsType.php:32 + + + user.firstName.label + Prénom + + + + + Part-DB1\templates\Users\user_info.html.twig:24 + Part-DB1\src\Form\UserSettingsType.php:82 + Part-DB1\templates\Users\user_info.html.twig:24 + Part-DB1\src\Form\UserSettingsType.php:82 + templates\Users\user_info.html.twig:24 + src\Form\UserSettingsType.php:35 + + + user.lastName.label + Nom + + + + + Part-DB1\templates\Users\user_info.html.twig:30 + Part-DB1\src\Form\UserSettingsType.php:92 + Part-DB1\templates\Users\user_info.html.twig:30 + Part-DB1\src\Form\UserSettingsType.php:92 + templates\Users\user_info.html.twig:30 + src\Form\UserSettingsType.php:41 + + + user.email.label + Email + + + + + Part-DB1\templates\Users\user_info.html.twig:37 + Part-DB1\src\Form\UserSettingsType.php:87 + Part-DB1\templates\Users\user_info.html.twig:37 + Part-DB1\src\Form\UserSettingsType.php:87 + templates\Users\user_info.html.twig:37 + src\Form\UserSettingsType.php:38 + + + user.department.label + Département + + + + + Part-DB1\templates\Users\user_info.html.twig:47 + Part-DB1\src\Form\UserSettingsType.php:73 + Part-DB1\templates\Users\user_info.html.twig:47 + Part-DB1\src\Form\UserSettingsType.php:73 + templates\Users\user_info.html.twig:47 + src\Form\UserSettingsType.php:30 + + + user.username.label + Nom d'utilisateur + + + + + Part-DB1\templates\Users\user_info.html.twig:53 + Part-DB1\src\Services\ElementTypeNameGenerator.php:93 + Part-DB1\templates\Users\user_info.html.twig:53 + Part-DB1\src\Services\ElementTypeNameGenerator.php:93 + templates\Users\user_info.html.twig:53 + + + group.label + Groupe + + + + + Part-DB1\templates\Users\user_info.html.twig:67 + Part-DB1\templates\Users\user_info.html.twig:67 + + + user.permissions + Autorisations + + + + + Part-DB1\templates\Users\user_settings.html.twig:3 + Part-DB1\templates\Users\user_settings.html.twig:6 + Part-DB1\templates\_navbar.html.twig:39 + Part-DB1\templates\Users\user_settings.html.twig:3 + Part-DB1\templates\Users\user_settings.html.twig:6 + Part-DB1\templates\_navbar.html.twig:37 + templates\base.html.twig:98 + templates\Users\user_settings.html.twig:3 + templates\Users\user_settings.html.twig:6 + + + user.settings.label + Paramètres utilisateur + + + + + Part-DB1\templates\Users\user_settings.html.twig:18 + Part-DB1\templates\Users\user_settings.html.twig:18 + templates\Users\user_settings.html.twig:14 + + + user_settings.data.label + Données personnelles + + + + + Part-DB1\templates\Users\user_settings.html.twig:22 + Part-DB1\templates\Users\user_settings.html.twig:22 + templates\Users\user_settings.html.twig:18 + + + user_settings.configuration.label + Configuration + + + + + Part-DB1\templates\Users\user_settings.html.twig:55 + Part-DB1\templates\Users\user_settings.html.twig:55 + templates\Users\user_settings.html.twig:48 + + + user.settings.change_pw + Changer de mot de passe + + + + + Part-DB1\templates\Users\_2fa_settings.html.twig:6 + Part-DB1\templates\Users\_2fa_settings.html.twig:6 + + + user.settings.2fa_settings + Authentification à deux facteurs + + + + + Part-DB1\templates\Users\_2fa_settings.html.twig:13 + Part-DB1\templates\Users\_2fa_settings.html.twig:13 + + + tfa.settings.google.tab + Application d'authentification + + + + + Part-DB1\templates\Users\_2fa_settings.html.twig:17 + Part-DB1\templates\Users\_2fa_settings.html.twig:17 + + + tfa.settings.bakup.tab + Codes de secours + + + + + Part-DB1\templates\Users\_2fa_settings.html.twig:21 + Part-DB1\templates\Users\_2fa_settings.html.twig:21 + + + tfa.settings.u2f.tab + Clés de sécurité (U2F) + + + + + Part-DB1\templates\Users\_2fa_settings.html.twig:25 + Part-DB1\templates\Users\_2fa_settings.html.twig:25 + + + tfa.settings.trustedDevices.tab + Appareils de confiance + + + + + Part-DB1\templates\Users\_2fa_settings.html.twig:33 + Part-DB1\templates\Users\_2fa_settings.html.twig:33 + + + tfa_google.disable.confirm_title + Voulez-vous vraiment désactiver l'application d'authentification ? + + + + + Part-DB1\templates\Users\_2fa_settings.html.twig:33 + Part-DB1\templates\Users\_2fa_settings.html.twig:33 + + + tfa_google.disable.confirm_message + Si vous désactivez l'application d'authentification, tous les codes de sauvegarde seront supprimés, vous devrez donc peut-être les réimprimer.<br> +Notez également que sans authentification à deux facteurs, votre compte n'est pas aussi bien protégé ! + + + + + Part-DB1\templates\Users\_2fa_settings.html.twig:39 + Part-DB1\templates\Users\_2fa_settings.html.twig:39 + + + tfa_google.disabled_message + Application d'authentification désactivée + + + + + Part-DB1\templates\Users\_2fa_settings.html.twig:48 + Part-DB1\templates\Users\_2fa_settings.html.twig:48 + + + tfa_google.step.download + Télécharger une application d'authentification (par exemple <a class="link-external" target="_blank" href="https://play.google.com/store/apps/details?id=com.google.android.apps.authenticator2">Authentificateur Google</a> ou <a class="link-external" target="_blank" href="https://play.google.com/store/apps/details?id=org.fedorahosted.freeotp">Authentificateur FreeOTP</a>) + + + + + Part-DB1\templates\Users\_2fa_settings.html.twig:49 + Part-DB1\templates\Users\_2fa_settings.html.twig:49 + + + tfa_google.step.scan + Scannez le QR code adjacent avec l'application ou saisissez les données manuellement + + + + + Part-DB1\templates\Users\_2fa_settings.html.twig:50 + Part-DB1\templates\Users\_2fa_settings.html.twig:50 + + + tfa_google.step.input_code + Entrez le code généré dans le champ ci-dessous et confirmez + + + + + Part-DB1\templates\Users\_2fa_settings.html.twig:51 + Part-DB1\templates\Users\_2fa_settings.html.twig:51 + + + tfa_google.step.download_backup + Imprimez vos codes de secours et conservez-les dans un endroit sûr + + + + + Part-DB1\templates\Users\_2fa_settings.html.twig:58 + Part-DB1\templates\Users\_2fa_settings.html.twig:58 + + + tfa_google.manual_setup + Configuration manuelle + + + + + Part-DB1\templates\Users\_2fa_settings.html.twig:62 + Part-DB1\templates\Users\_2fa_settings.html.twig:62 + + + tfa_google.manual_setup.type + Type + + + + + Part-DB1\templates\Users\_2fa_settings.html.twig:63 + Part-DB1\templates\Users\_2fa_settings.html.twig:63 + + + tfa_google.manual_setup.username + Nom d'utilisateur + + + + + Part-DB1\templates\Users\_2fa_settings.html.twig:64 + Part-DB1\templates\Users\_2fa_settings.html.twig:64 + + + tfa_google.manual_setup.secret + Secret + + + + + Part-DB1\templates\Users\_2fa_settings.html.twig:65 + Part-DB1\templates\Users\_2fa_settings.html.twig:65 + + + tfa_google.manual_setup.digit_count + Nombre de caractères + + + + + Part-DB1\templates\Users\_2fa_settings.html.twig:74 + Part-DB1\templates\Users\_2fa_settings.html.twig:74 + + + tfa_google.enabled_message + Application d'authentification activée + + + + + Part-DB1\templates\Users\_2fa_settings.html.twig:83 + Part-DB1\templates\Users\_2fa_settings.html.twig:83 + + + tfa_backup.disabled + Codes de secours désactivés. Configurez l'application d'authentification pour activer les codes de secours. + + + + + Part-DB1\templates\Users\_2fa_settings.html.twig:84 + Part-DB1\templates\Users\_2fa_settings.html.twig:92 + Part-DB1\templates\Users\_2fa_settings.html.twig:84 + Part-DB1\templates\Users\_2fa_settings.html.twig:92 + + + tfa_backup.explanation + Grâce à ces codes de secours, vous pouvez accéder à votre compte même si vous perdez l'appareil avec l'application d'authentification. Imprimez les codes et conservez-les dans un endroit sûr. + + + + + Part-DB1\templates\Users\_2fa_settings.html.twig:88 + Part-DB1\templates\Users\_2fa_settings.html.twig:88 + + + tfa_backup.reset_codes.confirm_title + Etes vous sûr de vouloir réinitialiser les codes ? + + + + + Part-DB1\templates\Users\_2fa_settings.html.twig:88 + Part-DB1\templates\Users\_2fa_settings.html.twig:88 + + + tfa_backup.reset_codes.confirm_message + Cela permettra de supprimer tous les codes précédents et de générer un ensemble de nouveaux codes. Cela ne peut pas être annulé. N'oubliez pas d'imprimer les nouveaux codes et de les conserver dans un endroit sûr ! + + + + + Part-DB1\templates\Users\_2fa_settings.html.twig:91 + Part-DB1\templates\Users\_2fa_settings.html.twig:91 + + + tfa_backup.enabled + Codes de secours activés + + + + + Part-DB1\templates\Users\_2fa_settings.html.twig:99 + Part-DB1\templates\Users\_2fa_settings.html.twig:99 + + + tfa_backup.show_codes + Afficher les codes de secours + + + + + Part-DB1\templates\Users\_2fa_settings.html.twig:114 + Part-DB1\templates\Users\_2fa_settings.html.twig:114 + + + tfa_u2f.table_caption + Clés de sécurité enregistrées + + + + + Part-DB1\templates\Users\_2fa_settings.html.twig:115 + Part-DB1\templates\Users\_2fa_settings.html.twig:115 + + + tfa_u2f.delete_u2f.confirm_title + Etes vous sûr de vouloir supprimer cette clé de sécurité ? + + + + + Part-DB1\templates\Users\_2fa_settings.html.twig:116 + Part-DB1\templates\Users\_2fa_settings.html.twig:116 + + + tfa_u2f.delete_u2f.confirm_message + Si vous supprimez cette clé, il ne sera plus possible de se connecter avec cette clé. S'il ne reste aucune clé de sécurité, l'authentification à deux facteurs sera désactivée. + + + + + Part-DB1\templates\Users\_2fa_settings.html.twig:123 + Part-DB1\templates\Users\_2fa_settings.html.twig:123 + + + tfa_u2f.keys.name + Nom de la clé + + + + + Part-DB1\templates\Users\_2fa_settings.html.twig:124 + Part-DB1\templates\Users\_2fa_settings.html.twig:124 + + + tfa_u2f.keys.added_date + Date d'enregistrement + + + + + Part-DB1\templates\Users\_2fa_settings.html.twig:134 + Part-DB1\templates\Users\_2fa_settings.html.twig:134 + + + tfa_u2f.key_delete + Supprimer la clé + + + + + Part-DB1\templates\Users\_2fa_settings.html.twig:141 + Part-DB1\templates\Users\_2fa_settings.html.twig:141 + + + tfa_u2f.no_keys_registered + Aucune clé de sécurité enregistrée + + + + + Part-DB1\templates\Users\_2fa_settings.html.twig:144 + Part-DB1\templates\Users\_2fa_settings.html.twig:144 + + + tfa_u2f.add_new_key + Enregistrer une nouvelle clé de sécurité + + + + + Part-DB1\templates\Users\_2fa_settings.html.twig:148 + Part-DB1\templates\Users\_2fa_settings.html.twig:148 + + + tfa_trustedDevices.explanation + Lors de la vérification du deuxième facteur, l'ordinateur actuel peut être marqué comme étant digne de confiance, de sorte qu'il n'est plus nécessaire de procéder à des vérifications à deux facteurs sur cet ordinateur. +Si vous avez fait cela de manière incorrecte ou si un ordinateur n'est plus fiable, vous pouvez réinitialiser le statut de <i>tous</i> les ordinateurs ici. + + + + + Part-DB1\templates\Users\_2fa_settings.html.twig:149 + Part-DB1\templates\Users\_2fa_settings.html.twig:149 + + + tfa_trustedDevices.invalidate.confirm_title + Etes vous sûr de vouloir supprimer tous les ordinateurs de confiance ? + + + + + Part-DB1\templates\Users\_2fa_settings.html.twig:150 + Part-DB1\templates\Users\_2fa_settings.html.twig:150 + + + tfa_trustedDevices.invalidate.confirm_message + Vous devrez à nouveau procéder à une authentification à deux facteurs sur tous les ordinateurs. Assurez-vous d'avoir votre appareil à deux facteurs à portée de main. + + + + + Part-DB1\templates\Users\_2fa_settings.html.twig:154 + Part-DB1\templates\Users\_2fa_settings.html.twig:154 + + + tfa_trustedDevices.invalidate.btn + Supprimer tous les dispositifs de confiance + + + + + Part-DB1\templates\_navbar.html.twig:4 + Part-DB1\templates\_navbar.html.twig:4 + templates\base.html.twig:29 + + + sidebar.toggle + Activer/désactiver la barre latérale + + + + + Part-DB1\templates\_navbar.html.twig:22 + + + navbar.scanner.link + Scanner + + + + + Part-DB1\templates\_navbar.html.twig:38 + Part-DB1\templates\_navbar.html.twig:36 + templates\base.html.twig:97 + + + user.loggedin.label + Connecté en tant que + + + + + Part-DB1\templates\_navbar.html.twig:44 + Part-DB1\templates\_navbar.html.twig:42 + templates\base.html.twig:103 + + + user.login + Connexion + + + + + Part-DB1\templates\_navbar.html.twig:50 + Part-DB1\templates\_navbar.html.twig:48 + + + ui.toggle_darkmode + Darkmode + + + + + Part-DB1\templates\_navbar.html.twig:54 + Part-DB1\src\Form\UserSettingsType.php:97 + Part-DB1\templates\_navbar.html.twig:52 + Part-DB1\src\Form\UserSettingsType.php:97 + templates\base.html.twig:106 + src\Form\UserSettingsType.php:44 + + + user.language_select + Langue + + + + + Part-DB1\templates\_navbar_search.html.twig:4 + Part-DB1\templates\_navbar_search.html.twig:4 + templates\base.html.twig:49 + + + search.options.label + Options de recherche + + + + + Part-DB1\templates\_navbar_search.html.twig:23 + + + tags.label + Tags + + + + + Part-DB1\templates\_navbar_search.html.twig:27 + Part-DB1\src\Form\LabelOptionsType.php:68 + Part-DB1\src\Services\ElementTypeNameGenerator.php:88 + Part-DB1\src\Services\ElementTypeNameGenerator.php:88 + templates\base.html.twig:60 + templates\Parts\show_part_info.html.twig:36 + src\Form\PartType.php:77 + + + storelocation.label + Emplacement de stockage + + + + + Part-DB1\templates\_navbar_search.html.twig:36 + Part-DB1\templates\_navbar_search.html.twig:31 + templates\base.html.twig:65 + + + ordernumber.label.short + Codecmd. + + + + + Part-DB1\templates\_navbar_search.html.twig:40 + Part-DB1\src\Services\ElementTypeNameGenerator.php:89 + Part-DB1\templates\_navbar_search.html.twig:35 + Part-DB1\src\Services\ElementTypeNameGenerator.php:89 + templates\base.html.twig:67 + + + supplier.label + Fournisseur + + + + + Part-DB1\templates\_navbar_search.html.twig:57 + Part-DB1\templates\_navbar_search.html.twig:52 + templates\base.html.twig:75 + + + search.deactivateBarcode + Désa. Code barres + + + + + Part-DB1\templates\_navbar_search.html.twig:61 + Part-DB1\templates\_navbar_search.html.twig:56 + templates\base.html.twig:77 + + + search.regexmatching + Reg.Ex. Correspondance + + + + + Part-DB1\templates\_navbar_search.html.twig:68 + Part-DB1\templates\_navbar_search.html.twig:62 + + + search.submit + Rechercher! + + + + + Part-DB1\templates\_sidebar.html.twig:2 + Part-DB1\templates\_sidebar.html.twig:2 + templates\base.html.twig:165 + templates\base.html.twig:192 + templates\base.html.twig:220 + + + actions + Actions + + + + + Part-DB1\templates\_sidebar.html.twig:6 + Part-DB1\templates\_sidebar.html.twig:6 + templates\base.html.twig:169 + templates\base.html.twig:196 + templates\base.html.twig:224 + + + datasource + Source de données + + + + + Part-DB1\templates\_sidebar.html.twig:10 + Part-DB1\templates\_sidebar.html.twig:10 + templates\base.html.twig:173 + templates\base.html.twig:200 + templates\base.html.twig:228 + + + manufacturer.labelp + Fabricants + + + + + Part-DB1\templates\_sidebar.html.twig:11 + Part-DB1\templates\_sidebar.html.twig:11 + templates\base.html.twig:174 + templates\base.html.twig:201 + templates\base.html.twig:229 + + + supplier.labelp + Fournisseurs + + + + + Part-DB1\src\Controller\AdminPages\BaseAdminController.php:213 + Part-DB1\src\Controller\AdminPages\BaseAdminController.php:293 + Part-DB1\src\Controller\PartController.php:173 + Part-DB1\src\Controller\PartController.php:293 + Part-DB1\src\Controller\AdminPages\BaseAdminController.php:181 + Part-DB1\src\Controller\AdminPages\BaseAdminController.php:243 + Part-DB1\src\Controller\PartController.php:173 + Part-DB1\src\Controller\PartController.php:268 + + + attachment.download_failed + Le téléchargement du fichier joint a échoué ! + + + + + Part-DB1\src\Controller\AdminPages\BaseAdminController.php:222 + Part-DB1\src\Controller\AdminPages\BaseAdminController.php:190 + + + entity.edit_flash + Changements sauvegardés avec succès. + + + + + Part-DB1\src\Controller\AdminPages\BaseAdminController.php:231 + Part-DB1\src\Controller\AdminPages\BaseAdminController.php:196 + + + entity.edit_flash.invalid + Les changements n'ont pas pu être sauvegardés ! Veuillez vérifier vos données ! + + + + + Part-DB1\src\Controller\AdminPages\BaseAdminController.php:302 + Part-DB1\src\Controller\AdminPages\BaseAdminController.php:252 + + + entity.created_flash + Élément créé avec succès ! + + + + + Part-DB1\src\Controller\AdminPages\BaseAdminController.php:308 + Part-DB1\src\Controller\AdminPages\BaseAdminController.php:258 + + + entity.created_flash.invalid + L'élément n'a pas pu être créé ! Vérifiez vos données ! + + + + + Part-DB1\src\Controller\AdminPages\BaseAdminController.php:399 + Part-DB1\src\Controller\AdminPages\BaseAdminController.php:352 + src\Controller\BaseAdminController.php:154 + + + attachment_type.deleted + Élément supprimé ! + + + + + Part-DB1\src\Controller\AdminPages\BaseAdminController.php:401 + Part-DB1\src\Controller\UserController.php:109 + Part-DB1\src\Controller\UserSettingsController.php:159 + Part-DB1\src\Controller\UserSettingsController.php:193 + Part-DB1\src\Controller\AdminPages\BaseAdminController.php:354 + Part-DB1\src\Controller\UserController.php:101 + Part-DB1\src\Controller\UserSettingsController.php:150 + Part-DB1\src\Controller\UserSettingsController.php:182 + + + csfr_invalid + Le jeton RFTS n'est pas valable ! Rechargez cette page ou contactez un administrateur si le problème persiste ! + + + + + Part-DB1\src\Controller\LabelController.php:125 + + + label_generator.no_entities_found + Aucune entité correspondant à la gamme trouvée. + + + + + Part-DB1\src\Controller\LogController.php:149 + Part-DB1\src\Controller\LogController.php:154 + new + + + log.undo.target_not_found + L'élément ciblé n'a pas pu être trouvé dans la base de données ! + + + + + Part-DB1\src\Controller\LogController.php:156 + Part-DB1\src\Controller\LogController.php:160 + new + + + log.undo.revert_success + Rétablissement réussi. + + + + + Part-DB1\src\Controller\LogController.php:176 + Part-DB1\src\Controller\LogController.php:180 + new + + + log.undo.element_undelete_success + Élément restauré avec succès. + + + + + Part-DB1\src\Controller\LogController.php:178 + Part-DB1\src\Controller\LogController.php:182 + new + + + log.undo.element_element_already_undeleted + L'élément a déjà été restauré ! + + + + + Part-DB1\src\Controller\LogController.php:185 + Part-DB1\src\Controller\LogController.php:189 + new + + + log.undo.element_delete_success + L'élément a été supprimé avec succès. + + + + + Part-DB1\src\Controller\LogController.php:187 + Part-DB1\src\Controller\LogController.php:191 + new + + + log.undo.element.element_already_delted + L'élément a déjà été supprimé ! + + + + + Part-DB1\src\Controller\LogController.php:194 + Part-DB1\src\Controller\LogController.php:198 + new + + + log.undo.element_change_undone + Annulation de la modification de l'élément + + + + + Part-DB1\src\Controller\LogController.php:196 + Part-DB1\src\Controller\LogController.php:200 + new + + + log.undo.do_undelete_before + Vous devez supprimer l'élément avant de pouvoir annuler ce changement ! + + + + + Part-DB1\src\Controller\LogController.php:199 + Part-DB1\src\Controller\LogController.php:203 + new + + + log.undo.log_type_invalid + Cette entrée de journal ne peut pas être annulée ! + + + + + Part-DB1\src\Controller\PartController.php:182 + Part-DB1\src\Controller\PartController.php:182 + src\Controller\PartController.php:80 + + + part.edited_flash + Changements sauvegardés ! + + + + + Part-DB1\src\Controller\PartController.php:186 + Part-DB1\src\Controller\PartController.php:186 + + + part.edited_flash.invalid + Erreur lors de l'enregistrement : Vérifiez vos données ! + + + + + Part-DB1\src\Controller\PartController.php:216 + Part-DB1\src\Controller\PartController.php:219 + + + part.deleted + Composant supprimé avec succès. + + + + + Part-DB1\src\Controller\PartController.php:302 + Part-DB1\src\Controller\PartController.php:277 + Part-DB1\src\Controller\PartController.php:317 + src\Controller\PartController.php:113 + src\Controller\PartController.php:142 + + + part.created_flash + Composants créés avec succès ! + + + + + Part-DB1\src\Controller\PartController.php:308 + Part-DB1\src\Controller\PartController.php:283 + + + part.created_flash.invalid + Erreur lors de la création : Vérifiez vos données ! + + + + + Part-DB1\src\Controller\ScanController.php:68 + Part-DB1\src\Controller\ScanController.php:90 + + + scan.qr_not_found + Aucun élément trouvé pour le code-barres donné. + + + + + Part-DB1\src\Controller\ScanController.php:71 + + + scan.format_unknown + Format inconnu ! + + + + + Part-DB1\src\Controller\ScanController.php:86 + + + scan.qr_success + Élément trouvé. + + + + + Part-DB1\src\Controller\SecurityController.php:114 + Part-DB1\src\Controller\SecurityController.php:109 + + + pw_reset.user_or_email + Nom d'utilisateur / Email + + + + + Part-DB1\src\Controller\SecurityController.php:131 + Part-DB1\src\Controller\SecurityController.php:126 + + + pw_reset.request.success + Demande de mot de passe réussie ! Consultez vos e-mails pour plus d'informations. + + + + + Part-DB1\src\Controller\SecurityController.php:162 + Part-DB1\src\Controller\SecurityController.php:160 + + + pw_reset.username + Nom d'utilisateur + + + + + Part-DB1\src\Controller\SecurityController.php:165 + Part-DB1\src\Controller\SecurityController.php:163 + + + pw_reset.token + Jeton + + + + + Part-DB1\src\Controller\SecurityController.php:194 + Part-DB1\src\Controller\SecurityController.php:192 + + + pw_reset.new_pw.error + Nom d'utilisateur ou jeton invalide ! Veuillez vérifier vos données. + + + + + Part-DB1\src\Controller\SecurityController.php:196 + Part-DB1\src\Controller\SecurityController.php:194 + + + pw_reset.new_pw.success + Le mot de passe a été réinitialisé avec succès. Vous pouvez maintenant vous connecter avec le nouveau mot de passe. + + + + + Part-DB1\src\Controller\UserController.php:107 + Part-DB1\src\Controller\UserController.php:99 + + + user.edit.reset_success + Toutes les méthodes d'authentification à deux facteurs ont été désactivées avec succès. + + + + + Part-DB1\src\Controller\UserSettingsController.php:101 + Part-DB1\src\Controller\UserSettingsController.php:92 + + + tfa_backup.no_codes_enabled + Aucun code de secours n'est activé ! + + + + + Part-DB1\src\Controller\UserSettingsController.php:138 + Part-DB1\src\Controller\UserSettingsController.php:132 + + + tfa_u2f.u2f_delete.not_existing + Il n'y a pas de clé de sécurité avec cet ID ! + + + + + Part-DB1\src\Controller\UserSettingsController.php:145 + Part-DB1\src\Controller\UserSettingsController.php:139 + + + tfa_u2f.u2f_delete.access_denied + Vous ne pouvez pas supprimer les clés de sécurité des autres utilisateurs ! + + + + + Part-DB1\src\Controller\UserSettingsController.php:153 + Part-DB1\src\Controller\UserSettingsController.php:147 + + + tfa.u2f.u2f_delete.success + Clé de sécurité retirée avec succès. + + + + + Part-DB1\src\Controller\UserSettingsController.php:188 + Part-DB1\src\Controller\UserSettingsController.php:180 + + + tfa_trustedDevice.invalidate.success + Les appareils de confiance ont été réinitialisés avec succès. + + + + + Part-DB1\src\Controller\UserSettingsController.php:235 + Part-DB1\src\Controller\UserSettingsController.php:226 + src\Controller\UserController.php:98 + + + user.settings.saved_flash + Paramètres sauvegardés ! + + + + + Part-DB1\src\Controller\UserSettingsController.php:297 + Part-DB1\src\Controller\UserSettingsController.php:288 + src\Controller\UserController.php:130 + + + user.settings.pw_changed_flash + Mot de passe changé ! + + + + + Part-DB1\src\Controller\UserSettingsController.php:317 + Part-DB1\src\Controller\UserSettingsController.php:306 + + + user.settings.2fa.google.activated + L'application d'authentification a été activée avec succès. + + + + + Part-DB1\src\Controller\UserSettingsController.php:328 + Part-DB1\src\Controller\UserSettingsController.php:315 + + + user.settings.2fa.google.disabled + L'application d'authentification a été désactivée avec succès. + + + + + Part-DB1\src\Controller\UserSettingsController.php:346 + Part-DB1\src\Controller\UserSettingsController.php:332 + + + user.settings.2fa.backup_codes.regenerated + De nouveaux codes de secours ont été générés avec succès. + + + + + Part-DB1\src\DataTables\AttachmentDataTable.php:148 + Part-DB1\src\DataTables\AttachmentDataTable.php:148 + + + attachment.table.filename + Nom du fichier + + + + + Part-DB1\src\DataTables\AttachmentDataTable.php:153 + Part-DB1\src\DataTables\AttachmentDataTable.php:153 + + + attachment.table.filesize + Taille du fichier + + + + + Part-DB1\src\DataTables\AttachmentDataTable.php:183 + Part-DB1\src\DataTables\AttachmentDataTable.php:191 + Part-DB1\src\DataTables\AttachmentDataTable.php:200 + Part-DB1\src\DataTables\AttachmentDataTable.php:209 + Part-DB1\src\DataTables\PartsDataTable.php:245 + Part-DB1\src\DataTables\PartsDataTable.php:252 + Part-DB1\src\DataTables\AttachmentDataTable.php:183 + Part-DB1\src\DataTables\AttachmentDataTable.php:191 + Part-DB1\src\DataTables\AttachmentDataTable.php:200 + Part-DB1\src\DataTables\AttachmentDataTable.php:209 + Part-DB1\src\DataTables\PartsDataTable.php:193 + Part-DB1\src\DataTables\PartsDataTable.php:200 + + + true + Vrai + + + + + Part-DB1\src\DataTables\AttachmentDataTable.php:184 + Part-DB1\src\DataTables\AttachmentDataTable.php:192 + Part-DB1\src\DataTables\AttachmentDataTable.php:201 + Part-DB1\src\DataTables\AttachmentDataTable.php:210 + Part-DB1\src\DataTables\PartsDataTable.php:246 + Part-DB1\src\DataTables\PartsDataTable.php:253 + Part-DB1\src\Form\Type\SIUnitType.php:139 + Part-DB1\src\DataTables\AttachmentDataTable.php:184 + Part-DB1\src\DataTables\AttachmentDataTable.php:192 + Part-DB1\src\DataTables\AttachmentDataTable.php:201 + Part-DB1\src\DataTables\AttachmentDataTable.php:210 + Part-DB1\src\DataTables\PartsDataTable.php:194 + Part-DB1\src\DataTables\PartsDataTable.php:201 + Part-DB1\src\Form\Type\SIUnitType.php:139 + + + false + Faux + + + + + Part-DB1\src\DataTables\Column\LogEntryTargetColumn.php:128 + Part-DB1\src\DataTables\Column\LogEntryTargetColumn.php:119 + + + log.target_deleted + Cible supprimée. + + + + + Part-DB1\src\DataTables\Column\RevertLogColumn.php:57 + Part-DB1\src\DataTables\Column\RevertLogColumn.php:60 + new + + + log.undo.undelete + Annuler la suppression + + + + + Part-DB1\src\DataTables\Column\RevertLogColumn.php:63 + Part-DB1\src\DataTables\Column\RevertLogColumn.php:66 + new + + + log.undo.undo + Annuler la modification + + + + + Part-DB1\src\DataTables\Column\RevertLogColumn.php:83 + Part-DB1\src\DataTables\Column\RevertLogColumn.php:86 + new + + + log.undo.revert + Restaurer à cette date + + + + + Part-DB1\src\DataTables\LogDataTable.php:173 + Part-DB1\src\DataTables\LogDataTable.php:161 + + + log.id + ID + + + + + Part-DB1\src\DataTables\LogDataTable.php:178 + Part-DB1\src\DataTables\LogDataTable.php:166 + + + log.timestamp + Horodatage + + + + + Part-DB1\src\DataTables\LogDataTable.php:183 + Part-DB1\src\DataTables\LogDataTable.php:171 + + + log.type + Type + + + + + Part-DB1\src\DataTables\LogDataTable.php:191 + Part-DB1\src\DataTables\LogDataTable.php:179 + + + log.level + Niveau + + + + + Part-DB1\src\DataTables\LogDataTable.php:200 + Part-DB1\src\DataTables\LogDataTable.php:188 + + + log.user + Utilisateur + + + + + Part-DB1\src\DataTables\LogDataTable.php:213 + Part-DB1\src\DataTables\LogDataTable.php:201 + + + log.target_type + Type de cible + + + + + Part-DB1\src\DataTables\LogDataTable.php:226 + Part-DB1\src\DataTables\LogDataTable.php:214 + + + log.target + Cible + + + + + Part-DB1\src\DataTables\LogDataTable.php:231 + Part-DB1\src\DataTables\LogDataTable.php:218 + new + + + log.extra + Extra + + + + + Part-DB1\src\DataTables\PartsDataTable.php:168 + Part-DB1\src\DataTables\PartsDataTable.php:116 + + + part.table.name + Nom + + + + + Part-DB1\src\DataTables\PartsDataTable.php:178 + Part-DB1\src\DataTables\PartsDataTable.php:126 + + + part.table.id + ID + + + + + Part-DB1\src\DataTables\PartsDataTable.php:182 + Part-DB1\src\DataTables\PartsDataTable.php:130 + + + part.table.description + Description + + + + + Part-DB1\src\DataTables\PartsDataTable.php:185 + Part-DB1\src\DataTables\PartsDataTable.php:133 + + + part.table.category + Catégorie + + + + + Part-DB1\src\DataTables\PartsDataTable.php:190 + Part-DB1\src\DataTables\PartsDataTable.php:138 + + + part.table.footprint + Empreinte + + + + + Part-DB1\src\DataTables\PartsDataTable.php:194 + Part-DB1\src\DataTables\PartsDataTable.php:142 + + + part.table.manufacturer + Fabricant + + + + + Part-DB1\src\DataTables\PartsDataTable.php:197 + Part-DB1\src\DataTables\PartsDataTable.php:145 + + + part.table.storeLocations + Emplacement de stockage + + + + + Part-DB1\src\DataTables\PartsDataTable.php:216 + Part-DB1\src\DataTables\PartsDataTable.php:164 + + + part.table.amount + Quantité + + + + + Part-DB1\src\DataTables\PartsDataTable.php:224 + Part-DB1\src\DataTables\PartsDataTable.php:172 + + + part.table.minamount + Quantité min. + + + + + Part-DB1\src\DataTables\PartsDataTable.php:232 + Part-DB1\src\DataTables\PartsDataTable.php:180 + + + part.table.partUnit + Unité de mesure + + + + + part.table.partCustomState + État personnalisé de la pièce + + + + + Part-DB1\src\DataTables\PartsDataTable.php:236 + Part-DB1\src\DataTables\PartsDataTable.php:184 + + + part.table.addedDate + Créé le + + + + + Part-DB1\src\DataTables\PartsDataTable.php:240 + Part-DB1\src\DataTables\PartsDataTable.php:188 + + + part.table.lastModified + Dernière modification + + + + + Part-DB1\src\DataTables\PartsDataTable.php:244 + Part-DB1\src\DataTables\PartsDataTable.php:192 + + + part.table.needsReview + Révision nécessaire + + + + + Part-DB1\src\DataTables\PartsDataTable.php:251 + Part-DB1\src\DataTables\PartsDataTable.php:199 + + + part.table.favorite + Favoris + + + + + Part-DB1\src\DataTables\PartsDataTable.php:258 + Part-DB1\src\DataTables\PartsDataTable.php:206 + + + part.table.manufacturingStatus + État + + + + + Part-DB1\src\DataTables\PartsDataTable.php:260 + Part-DB1\src\DataTables\PartsDataTable.php:262 + Part-DB1\src\Form\Part\PartBaseType.php:90 + Part-DB1\src\DataTables\PartsDataTable.php:208 + Part-DB1\src\DataTables\PartsDataTable.php:210 + Part-DB1\src\Form\Part\PartBaseType.php:88 + + + m_status.unknown + Inconnu + + + + + Part-DB1\src\DataTables\PartsDataTable.php:263 + Part-DB1\src\Form\Part\PartBaseType.php:90 + Part-DB1\src\DataTables\PartsDataTable.php:211 + Part-DB1\src\Form\Part\PartBaseType.php:88 + + + m_status.announced + Annoncé + + + + + Part-DB1\src\DataTables\PartsDataTable.php:264 + Part-DB1\src\Form\Part\PartBaseType.php:90 + Part-DB1\src\DataTables\PartsDataTable.php:212 + Part-DB1\src\Form\Part\PartBaseType.php:88 + + + m_status.active + Actif + + + + + Part-DB1\src\DataTables\PartsDataTable.php:265 + Part-DB1\src\Form\Part\PartBaseType.php:90 + Part-DB1\src\DataTables\PartsDataTable.php:213 + Part-DB1\src\Form\Part\PartBaseType.php:88 + + + m_status.nrfnd + Non recommandé pour les nouvelles conceptions + + + + + Part-DB1\src\DataTables\PartsDataTable.php:266 + Part-DB1\src\Form\Part\PartBaseType.php:90 + Part-DB1\src\DataTables\PartsDataTable.php:214 + Part-DB1\src\Form\Part\PartBaseType.php:88 + + + m_status.eol + Fin de vie + + + + + Part-DB1\src\DataTables\PartsDataTable.php:267 + Part-DB1\src\Form\Part\PartBaseType.php:90 + Part-DB1\src\DataTables\PartsDataTable.php:215 + Part-DB1\src\Form\Part\PartBaseType.php:88 + + + m_status.discontinued + Arrêtés + + + + + Part-DB1\src\DataTables\PartsDataTable.php:271 + Part-DB1\src\DataTables\PartsDataTable.php:219 + + + part.table.mpn + MPN + + + + + Part-DB1\src\DataTables\PartsDataTable.php:275 + Part-DB1\src\DataTables\PartsDataTable.php:223 + + + part.table.mass + Poids + + + + + Part-DB1\src\DataTables\PartsDataTable.php:279 + Part-DB1\src\DataTables\PartsDataTable.php:227 + + + part.table.tags + Tags + + + + + Part-DB1\src\DataTables\PartsDataTable.php:283 + Part-DB1\src\DataTables\PartsDataTable.php:231 + + + part.table.attachments + Fichiers joints + + + + + Part-DB1\src\EventSubscriber\UserSystem\LoginSuccessSubscriber.php:82 + Part-DB1\src\EventSubscriber\LoginSuccessListener.php:82 + + + flash.login_successful + Connexion réussie. + + + + + Part-DB1\src\Form\AdminPages\ImportType.php:77 + Part-DB1\src\Form\AdminPages\ImportType.php:77 + src\Form\ImportType.php:68 + + + JSON + JSON + + + + + Part-DB1\src\Form\AdminPages\ImportType.php:77 + Part-DB1\src\Form\AdminPages\ImportType.php:77 + src\Form\ImportType.php:68 + + + XML + XML + + + + + Part-DB1\src\Form\AdminPages\ImportType.php:77 + Part-DB1\src\Form\AdminPages\ImportType.php:77 + src\Form\ImportType.php:68 + + + CSV + CSV + + + + + Part-DB1\src\Form\AdminPages\ImportType.php:77 + Part-DB1\src\Form\AdminPages\ImportType.php:77 + src\Form\ImportType.php:68 + + + YAML + YAML + + + + + Part-DB1\src\Form\AdminPages\ImportType.php:124 + Part-DB1\src\Form\AdminPages\ImportType.php:124 + + + import.abort_on_validation.help + Si cette option est activée, l'ensemble du processus est interrompu si des données non valides sont détectées. Si cette option n'est pas active, les entrées non valides sont ignorées et une tentative est faite pour importer les autres entrées. + + + + + Part-DB1\src\Form\AdminPages\ImportType.php:86 + Part-DB1\src\Form\AdminPages\ImportType.php:86 + src\Form\ImportType.php:70 + + + import.csv_separator + Séparateur CSV + + + + + Part-DB1\src\Form\AdminPages\ImportType.php:93 + Part-DB1\src\Form\AdminPages\ImportType.php:93 + src\Form\ImportType.php:72 + + + parent.label + Élément parent + + + + + Part-DB1\src\Form\AdminPages\ImportType.php:101 + Part-DB1\src\Form\AdminPages\ImportType.php:101 + src\Form\ImportType.php:75 + + + import.file + Fichier + + + + + Part-DB1\src\Form\AdminPages\ImportType.php:111 + Part-DB1\src\Form\AdminPages\ImportType.php:111 + src\Form\ImportType.php:78 + + + import.preserve_children + Importer également des sous-éléments + + + + + Part-DB1\src\Form\AdminPages\ImportType.php:120 + Part-DB1\src\Form\AdminPages\ImportType.php:120 + src\Form\ImportType.php:80 + + + import.abort_on_validation + Interrompre sur donnée invalide + + + + + Part-DB1\src\Form\AdminPages\ImportType.php:132 + Part-DB1\src\Form\AdminPages\ImportType.php:132 + src\Form\ImportType.php:85 + + + import.btn + Importer + + + + + Part-DB1\src\Form\AttachmentFormType.php:113 + Part-DB1\src\Form\AttachmentFormType.php:109 + + + attachment.edit.secure_file.help + Un fichier joint marqué comme étant privé ne peut être consulté que par un utilisateur connecté qui a l'autorisation appropriée. Si cette option est activée, aucune miniature n'est générée et l'accès au fichier est plus lent. + + + + + Part-DB1\src\Form\AttachmentFormType.php:127 + Part-DB1\src\Form\AttachmentFormType.php:123 + + + attachment.edit.url.help + Il est possible de saisir ici soit l'URL d'un fichier externe, soit un mot clé pour rechercher les ressources intégrées (par exemple les empreintes). + + + + + Part-DB1\src\Form\AttachmentFormType.php:82 + Part-DB1\src\Form\AttachmentFormType.php:79 + + + attachment.edit.name + Nom + + + + + Part-DB1\src\Form\AttachmentFormType.php:85 + Part-DB1\src\Form\AttachmentFormType.php:82 + + + attachment.edit.attachment_type + Type de fichier joint + + + + + Part-DB1\src\Form\AttachmentFormType.php:94 + Part-DB1\src\Form\AttachmentFormType.php:91 + + + attachment.edit.show_in_table + Voir dans le tableau + + + + + Part-DB1\src\Form\AttachmentFormType.php:105 + Part-DB1\src\Form\AttachmentFormType.php:102 + + + attachment.edit.secure_file + Fichier joint privé + + + + + Part-DB1\src\Form\AttachmentFormType.php:119 + Part-DB1\src\Form\AttachmentFormType.php:115 + + + attachment.edit.url + URL + + + + + Part-DB1\src\Form\AttachmentFormType.php:133 + Part-DB1\src\Form\AttachmentFormType.php:129 + + + attachment.edit.download_url + Télécharger un fichier externe + + + + + Part-DB1\src\Form\AttachmentFormType.php:146 + Part-DB1\src\Form\AttachmentFormType.php:142 + + + attachment.edit.file + Télécharger le fichier + + + + + Part-DB1\src\Form\LabelOptionsType.php:68 + Part-DB1\src\Services\ElementTypeNameGenerator.php:86 + + + part.label + Composant + + + + + Part-DB1\src\Form\LabelOptionsType.php:68 + Part-DB1\src\Services\ElementTypeNameGenerator.php:87 + + + part_lot.label + Lot de composant + + + + + Part-DB1\src\Form\LabelOptionsType.php:78 + + + label_options.barcode_type.none + Aucun + + + + + Part-DB1\src\Form\LabelOptionsType.php:78 + + + label_options.barcode_type.qr + QR Code (recommandé) + + + + + Part-DB1\src\Form\LabelOptionsType.php:78 + + + label_options.barcode_type.code128 + Code 128 (recommandé) + + + + + Part-DB1\src\Form\LabelOptionsType.php:78 + + + label_options.barcode_type.code39 + Code 39 (recommandé) + + + + + Part-DB1\src\Form\LabelOptionsType.php:78 + + + label_options.barcode_type.code93 + Code 93 + + + + + Part-DB1\src\Form\LabelOptionsType.php:78 + + + label_options.barcode_type.datamatrix + Datamatrix + + + + + Part-DB1\src\Form\LabelOptionsType.php:122 + + + label_options.lines_mode.html + Placeholders + + + + + Part-DB1\src\Form\LabelOptionsType.php:122 + + + label.options.lines_mode.twig + Twig + + + + + Part-DB1\src\Form\LabelOptionsType.php:126 + + + label_options.lines_mode.help + Si vous sélectionnez Twig ici, le champ de contenu est interprété comme un modèle Twig. Voir <a href="https://twig.symfony.com/doc/3.x/templates.html">Documentation de Twig</a> et <a href="https://github.com/Part-DB/Part-DB-symfony/wiki/Labels#twig-mode">Wiki</a> pour plus d'informations. + + + + + Part-DB1\src\Form\LabelOptionsType.php:47 + + + label_options.page_size.label + Taille de l'étiquette + + + + + Part-DB1\src\Form\LabelOptionsType.php:66 + + + label_options.supported_elements.label + Type de cible + + + + + Part-DB1\src\Form\LabelOptionsType.php:75 + + + label_options.barcode_type.label + Code barre + + + + + Part-DB1\src\Form\LabelOptionsType.php:102 + + + label_profile.lines.label + Contenu + + + + + Part-DB1\src\Form\LabelOptionsType.php:111 + + + label_options.additional_css.label + Styles supplémentaires (CSS) + + + + + Part-DB1\src\Form\LabelOptionsType.php:120 + + + label_options.lines_mode.label + Parser mode + + + + + Part-DB1\src\Form\LabelOptionsType.php:51 + + + label_options.width.placeholder + Largeur + + + + + Part-DB1\src\Form\LabelOptionsType.php:60 + + + label_options.height.placeholder + Hauteur + + + + + Part-DB1\src\Form\LabelSystem\LabelDialogType.php:49 + + + label_generator.target_id.range_hint + Vous pouvez spécifier ici plusieurs ID (par exemple 1,2,3) et/ou une plage (1-3) pour générer des étiquettes pour plusieurs éléments à la fois. + + + + + Part-DB1\src\Form\LabelSystem\LabelDialogType.php:46 + + + label_generator.target_id.label + ID des cibles + + + + + Part-DB1\src\Form\LabelSystem\LabelDialogType.php:59 + + + label_generator.update + Actualisation + + + + + Part-DB1\src\Form\LabelSystem\ScanDialogType.php:36 + + + scan_dialog.input + Saisie + + + + + Part-DB1\src\Form\LabelSystem\ScanDialogType.php:44 + + + scan_dialog.submit + Soumettre + + + + + Part-DB1\src\Form\ParameterType.php:41 + + + parameters.name.placeholder + ex. Gain de courant DC + + + + + Part-DB1\src\Form\ParameterType.php:50 + + + parameters.symbol.placeholder + ex. h_{FE} + + + + + Part-DB1\src\Form\ParameterType.php:60 + + + parameters.text.placeholder + ex. Test conditions + + + + + Part-DB1\src\Form\ParameterType.php:71 + + + parameters.max.placeholder + ex. 350 + + + + + Part-DB1\src\Form\ParameterType.php:82 + + + parameters.min.placeholder + ex. 100 + + + + + Part-DB1\src\Form\ParameterType.php:93 + + + parameters.typical.placeholder + ex. 200 + + + + + Part-DB1\src\Form\ParameterType.php:103 + + + parameters.unit.placeholder + ex. V + + + + + Part-DB1\src\Form\ParameterType.php:114 + + + parameter.group.placeholder + ex. Spécifications techniques + + + + + Part-DB1\src\Form\Part\OrderdetailType.php:72 + Part-DB1\src\Form\Part\OrderdetailType.php:75 + + + orderdetails.edit.supplierpartnr + Numéro de commande + + + + + Part-DB1\src\Form\Part\OrderdetailType.php:81 + Part-DB1\src\Form\Part\OrderdetailType.php:84 + + + orderdetails.edit.supplier + Fournisseur + + + + + Part-DB1\src\Form\Part\OrderdetailType.php:87 + Part-DB1\src\Form\Part\OrderdetailType.php:90 + + + orderdetails.edit.url + Lien vers l'offre + + + + + Part-DB1\src\Form\Part\OrderdetailType.php:93 + Part-DB1\src\Form\Part\OrderdetailType.php:96 + + + orderdetails.edit.obsolete + Plus disponible + + + + + Part-DB1\src\Form\Part\OrderdetailType.php:75 + Part-DB1\src\Form\Part\OrderdetailType.php:78 + + + orderdetails.edit.supplierpartnr.placeholder + Ex. BC 547C + + + + + Part-DB1\src\Form\Part\PartBaseType.php:101 + Part-DB1\src\Form\Part\PartBaseType.php:99 + + + part.edit.name + Nom + + + + + Part-DB1\src\Form\Part\PartBaseType.php:109 + Part-DB1\src\Form\Part\PartBaseType.php:107 + + + part.edit.description + Description + + + + + Part-DB1\src\Form\Part\PartBaseType.php:120 + Part-DB1\src\Form\Part\PartBaseType.php:118 + + + part.edit.mininstock + Stock minimum + + + + + Part-DB1\src\Form\Part\PartBaseType.php:129 + Part-DB1\src\Form\Part\PartBaseType.php:127 + + + part.edit.category + Catégories + + + + + Part-DB1\src\Form\Part\PartBaseType.php:135 + Part-DB1\src\Form\Part\PartBaseType.php:133 + + + part.edit.footprint + Empreinte + + + + + Part-DB1\src\Form\Part\PartBaseType.php:142 + Part-DB1\src\Form\Part\PartBaseType.php:140 + + + part.edit.tags + Tags + + + + + Part-DB1\src\Form\Part\PartBaseType.php:154 + Part-DB1\src\Form\Part\PartBaseType.php:152 + + + part.edit.manufacturer.label + Fabricant + + + + + Part-DB1\src\Form\Part\PartBaseType.php:161 + Part-DB1\src\Form\Part\PartBaseType.php:159 + + + part.edit.manufacturer_url.label + Lien vers la page du produit + + + + + Part-DB1\src\Form\Part\PartBaseType.php:167 + Part-DB1\src\Form\Part\PartBaseType.php:165 + + + part.edit.mpn + Numéro de pièce du fabricant + + + + + Part-DB1\src\Form\Part\PartBaseType.php:173 + Part-DB1\src\Form\Part\PartBaseType.php:171 + + + part.edit.manufacturing_status + État de la fabrication + + + + + Part-DB1\src\Form\Part\PartBaseType.php:181 + Part-DB1\src\Form\Part\PartBaseType.php:179 + + + part.edit.needs_review + Révision nécessaire + + + + + Part-DB1\src\Form\Part\PartBaseType.php:189 + Part-DB1\src\Form\Part\PartBaseType.php:187 + + + part.edit.is_favorite + Favoris + + + + + Part-DB1\src\Form\Part\PartBaseType.php:197 + Part-DB1\src\Form\Part\PartBaseType.php:195 + + + part.edit.mass + Poids + + + + + Part-DB1\src\Form\Part\PartBaseType.php:203 + Part-DB1\src\Form\Part\PartBaseType.php:201 + + + part.edit.partUnit + Unité de mesure + + + + + part.edit.partCustomState + État personnalisé de la pièce + + + + + Part-DB1\src\Form\Part\PartBaseType.php:212 + Part-DB1\src\Form\Part\PartBaseType.php:210 + + + part.edit.comment + Commentaire + + + + + Part-DB1\src\Form\Part\PartBaseType.php:250 + Part-DB1\src\Form\Part\PartBaseType.php:246 + + + part.edit.master_attachment + Miniature + + + + + Part-DB1\src\Form\Part\PartBaseType.php:295 + Part-DB1\src\Form\Part\PartBaseType.php:276 + src\Form\PartType.php:91 + + + part.edit.save + Sauvegarder les modifications + + + + + Part-DB1\src\Form\Part\PartBaseType.php:296 + Part-DB1\src\Form\Part\PartBaseType.php:277 + src\Form\PartType.php:92 + + + part.edit.reset + rejeter les modifications + + + + + Part-DB1\src\Form\Part\PartBaseType.php:105 + Part-DB1\src\Form\Part\PartBaseType.php:103 + + + part.edit.name.placeholder + Ex. BC547 + + + + + Part-DB1\src\Form\Part\PartBaseType.php:115 + Part-DB1\src\Form\Part\PartBaseType.php:113 + + + part.edit.description.placeholder + Ex. NPN 45V, 0,1A, 0,5W + + + + + Part-DB1\src\Form\Part\PartBaseType.php:123 + Part-DB1\src\Form\Part\PartBaseType.php:121 + + + part.editmininstock.placeholder + Ex. 1 + + + + + Part-DB1\src\Form\Part\PartLotType.php:69 + Part-DB1\src\Form\Part\PartLotType.php:69 + + + part_lot.edit.description + Description + + + + + Part-DB1\src\Form\Part\PartLotType.php:78 + Part-DB1\src\Form\Part\PartLotType.php:78 + + + part_lot.edit.location + Emplacement de stockage + + + + + Part-DB1\src\Form\Part\PartLotType.php:89 + Part-DB1\src\Form\Part\PartLotType.php:89 + + + part_lot.edit.amount + Quantité + + + + + Part-DB1\src\Form\Part\PartLotType.php:98 + Part-DB1\src\Form\Part\PartLotType.php:97 + + + part_lot.edit.instock_unknown + Quantité inconnue + + + + + Part-DB1\src\Form\Part\PartLotType.php:109 + Part-DB1\src\Form\Part\PartLotType.php:108 + + + part_lot.edit.needs_refill + Doit être rempli + + + + + Part-DB1\src\Form\Part\PartLotType.php:120 + Part-DB1\src\Form\Part\PartLotType.php:119 + + + part_lot.edit.expiration_date + Date d'expiration + + + + + Part-DB1\src\Form\Part\PartLotType.php:128 + Part-DB1\src\Form\Part\PartLotType.php:125 + + + part_lot.edit.comment + Commentaire + + + + + Part-DB1\src\Form\Permissions\PermissionsType.php:99 + Part-DB1\src\Form\Permissions\PermissionsType.php:99 + + + perm.group.other + Divers + + + + + Part-DB1\src\Form\TFAGoogleSettingsType.php:97 + Part-DB1\src\Form\TFAGoogleSettingsType.php:97 + + + tfa_google.enable + Activer l'application d'authentification + + + + + Part-DB1\src\Form\TFAGoogleSettingsType.php:101 + Part-DB1\src\Form\TFAGoogleSettingsType.php:101 + + + tfa_google.disable + Désactiver l'application d'authentification + + + + + Part-DB1\src\Form\TFAGoogleSettingsType.php:74 + Part-DB1\src\Form\TFAGoogleSettingsType.php:74 + + + google_confirmation + Code de confirmation + + + + + Part-DB1\src\Form\UserSettingsType.php:108 + Part-DB1\src\Form\UserSettingsType.php:108 + src\Form\UserSettingsType.php:46 + + + user.timezone.label + Fuseau horaire + + + + + Part-DB1\src\Form\UserSettingsType.php:133 + Part-DB1\src\Form\UserSettingsType.php:132 + + + user.currency.label + Devise préférée + + + + + Part-DB1\src\Form\UserSettingsType.php:140 + Part-DB1\src\Form\UserSettingsType.php:139 + src\Form\UserSettingsType.php:53 + + + save + Appliquer les modifications + + + + + Part-DB1\src\Form\UserSettingsType.php:141 + Part-DB1\src\Form\UserSettingsType.php:140 + src\Form\UserSettingsType.php:54 + + + reset + Rejeter les modifications + + + + + Part-DB1\src\Form\UserSettingsType.php:104 + Part-DB1\src\Form\UserSettingsType.php:104 + src\Form\UserSettingsType.php:45 + + + user_settings.language.placeholder + Langue du serveur + + + + + Part-DB1\src\Form\UserSettingsType.php:115 + Part-DB1\src\Form\UserSettingsType.php:115 + src\Form\UserSettingsType.php:48 + + + user_settings.timezone.placeholder + Fuseau horaire du serveur + + + + + Part-DB1\src\Services\ElementTypeNameGenerator.php:79 + Part-DB1\src\Services\ElementTypeNameGenerator.php:79 + + + attachment.label + Fichier joint + + + + + Part-DB1\src\Services\ElementTypeNameGenerator.php:81 + Part-DB1\src\Services\ElementTypeNameGenerator.php:81 + + + attachment_type.label + Type de fichier joint + + + + + Part-DB1\src\Services\ElementTypeNameGenerator.php:85 + Part-DB1\src\Services\ElementTypeNameGenerator.php:85 + + + measurement_unit.label + Unité de mesure + + + + + part_custom_state.label + État personnalisé de la pièce + + + + + Part-DB1\src\Services\ElementTypeNameGenerator.php:90 + Part-DB1\src\Services\ElementTypeNameGenerator.php:90 + + + currency.label + Devise + + + + + Part-DB1\src\Services\ElementTypeNameGenerator.php:91 + Part-DB1\src\Services\ElementTypeNameGenerator.php:91 + + + orderdetail.label + Informations de commande + + + + + Part-DB1\src\Services\ElementTypeNameGenerator.php:92 + Part-DB1\src\Services\ElementTypeNameGenerator.php:92 + + + pricedetail.label + Informations sur les prix + + + + + Part-DB1\src\Services\ElementTypeNameGenerator.php:94 + Part-DB1\src\Services\ElementTypeNameGenerator.php:94 + + + user.label + Utilisateur + + + + + Part-DB1\src\Services\ElementTypeNameGenerator.php:95 + + + parameter.label + Caractéristique + + + + + Part-DB1\src\Services\ElementTypeNameGenerator.php:96 + + + label_profile.label + Profil d'étiquette + + + + + Part-DB1\src\Services\LogSystem\LogEntryExtraFormatter.php:176 + Part-DB1\src\Services\LogSystem\LogEntryExtraFormatter.php:161 + new + + + log.element_deleted.old_name.unknown + Inconnu + + + + + Part-DB1\src\Services\MarkdownParser.php:73 + Part-DB1\src\Services\MarkdownParser.php:73 + + + markdown.loading + Chargement de la remise. Si ce message ne disparaît pas, essayez de recharger la page. + + + + + Part-DB1\src\Services\PasswordResetManager.php:98 + Part-DB1\src\Services\PasswordResetManager.php:98 + + + pw_reset.email.subject + Réinitialisation du mot de passe de votre compte Part-DB + + + + + Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:108 + + + tree.tools.tools + Outils + + + + + Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:109 + Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:107 + src\Services\ToolsTreeBuilder.php:74 + + + tree.tools.edit + Éditer + + + + + Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:110 + Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:108 + src\Services\ToolsTreeBuilder.php:81 + + + tree.tools.show + Afficher + + + + + Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:111 + Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:109 + + + tree.tools.system + Système + + + + + Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:123 + + + tree.tools.tools.label_dialog + Générateur d'étiquettes + + + + + Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:130 + + + tree.tools.tools.label_scanner + Scanner + + + + + Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:149 + Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:126 + src\Services\ToolsTreeBuilder.php:62 + + + tree.tools.edit.attachment_types + Types de fichier joint + + + + + Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:155 + Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:132 + src\Services\ToolsTreeBuilder.php:64 + + + tree.tools.edit.categories + Catégories + + + + + Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:167 + Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:144 + src\Services\ToolsTreeBuilder.php:68 + + + tree.tools.edit.suppliers + Fournisseurs + + + + + Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:173 + Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:150 + src\Services\ToolsTreeBuilder.php:70 + + + tree.tools.edit.manufacturer + Fabricants + + + + + Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:179 + Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:156 + + + tree.tools.edit.storelocation + Emplacements de stockage + + + + + Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:185 + Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:162 + + + tree.tools.edit.footprint + Empreintes + + + + + Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:191 + Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:168 + + + tree.tools.edit.currency + Devises + + + + + Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:197 + Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:174 + + + tree.tools.edit.measurement_unit + Unité de mesure + + + + + tree.tools.edit.part_custom_state + État personnalisé de la pièce + + + + + Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:203 + + + tree.tools.edit.label_profile + Profils d'étiquettes + + + + + Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:209 + Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:180 + + + tree.tools.edit.part + Composant + + + + + Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:226 + Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:197 + src\Services\ToolsTreeBuilder.php:77 + + + tree.tools.show.all_parts + Voir tous les composants + + + + + Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:232 + Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:203 + + + tree.tools.show.all_attachments + Fichiers joints + + + + + Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:239 + Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:210 + new + + + tree.tools.show.statistics + Statistiques + + + + + Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:258 + Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:229 + + + tree.tools.system.users + Utilisateurs + + + + + Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:264 + Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:235 + + + tree.tools.system.groups + Groupes + + + + + Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:271 + Part-DB1\src\Services\Trees\ToolsTreeBuilder.php:242 + new + + + tree.tools.system.event_log + Système d'événements + + + + + Part-DB1\src\Services\Trees\TreeViewGenerator.php:95 + Part-DB1\src\Services\Trees\TreeViewGenerator.php:95 + src\Services\TreeBuilder.php:124 + + + entity.tree.new + Nouvel élément + + + + + Part-DB1\templates\Parts\info\_attachments_info.html.twig:34 + obsolete + + + attachment.external_file + Fichier extérieur + + + + + Part-DB1\templates\Parts\info\_attachments_info.html.twig:62 + obsolete + + + attachment.edit + Éditer + + + + + Part-DB1\templates\_navbar.html.twig:27 + templates\base.html.twig:88 + obsolete + + + barcode.scan + Scanner un code-barres + + + + + Part-DB1\src\Form\UserSettingsType.php:119 + src\Form\UserSettingsType.php:49 + obsolete + + + user.theme.label + Thème + + + + + Part-DB1\src\Form\UserSettingsType.php:129 + src\Form\UserSettingsType.php:50 + obsolete + + + user_settings.theme.placeholder + Thème du serveur + + + + + Part-DB1\src\Services\LogSystem\LogEntryExtraFormatter.php:100 + new + obsolete + + + log.user_login.ip + IP + + + + + Part-DB1\src\Services\LogSystem\LogEntryExtraFormatter.php:128 + Part-DB1\src\Services\LogSystem\LogEntryExtraFormatter.php:150 + Part-DB1\src\Services\LogSystem\LogEntryExtraFormatter.php:169 + Part-DB1\src\Services\LogSystem\LogEntryExtraFormatter.php:207 + new + obsolete + + + log.undo_mode.undo + Modification annulée + + + + + Part-DB1\src\Services\LogSystem\LogEntryExtraFormatter.php:130 + Part-DB1\src\Services\LogSystem\LogEntryExtraFormatter.php:152 + Part-DB1\src\Services\LogSystem\LogEntryExtraFormatter.php:171 + Part-DB1\src\Services\LogSystem\LogEntryExtraFormatter.php:209 + new + obsolete + + + log.undo_mode.revert + Élément restauré + + + + + Part-DB1\src\Services\LogSystem\LogEntryExtraFormatter.php:139 + new + obsolete + + + log.element_created.original_instock + Ancien stock + + + + + Part-DB1\src\Services\LogSystem\LogEntryExtraFormatter.php:160 + new + obsolete + + + log.element_deleted.old_name + Ancien nom + + + + + Part-DB1\src\Services\LogSystem\LogEntryExtraFormatter.php:184 + new + obsolete + + + log.element_edited.changed_fields + Champs modifiés + + + + + Part-DB1\src\Services\LogSystem\LogEntryExtraFormatter.php:198 + new + obsolete + + + log.instock_changed.comment + Commentaire + + + + + Part-DB1\src\Services\LogSystem\LogEntryExtraFormatter.php:214 + new + obsolete + + + log.collection_deleted.deleted + Élément supprimé : + + + + + templates\base.html.twig:81 + obsolete + obsolete + + + go.exclamation + Allez! + + + + + templates\base.html.twig:109 + obsolete + obsolete + + + language.english + Anglais + + + + + templates\base.html.twig:112 + obsolete + obsolete + + + language.german + Allemand + + + + + obsolete + obsolete + + + flash.password_change_needed + Votre mot de passe doit être changé ! + + + + + obsolete + obsolete + + + attachment.table.type + Type de fichier joint + + + + + obsolete + obsolete + + + attachment.table.element + élément lié + + + + + obsolete + obsolete + + + attachment.edit.isPicture + Image? + + + + + obsolete + obsolete + + + attachment.edit.is3DModel + Modèle 3D? + + + + + obsolete + obsolete + + + attachment.edit.isBuiltin + Intégré? + + + + + obsolete + obsolete + + + category.edit.default_comment.placeholder + Ex. utilisé pour les alimentations à découpage + + + + + obsolete + obsolete + + + tfa_backup.regenerate_codes + Créer de nouveaux codes de secours + + + + + obsolete + obsolete + + + validator.noneofitschild.self + Un élément ne peut pas être son propre parent. + + + + + obsolete + obsolete + + + validator.noneofitschild.children + Le parent ne peut pas être un de ses propres enfants. + + + + + obsolete + obsolete + + + validator.part_lot.location_full.no_increasment + Le lieu de stockage utilisé a été marqué comme étant plein, le stock ne peut donc pas être augmenté. (Nouveau stock maximum {{old_amount}}) + + + + + obsolete + obsolete + + + validator.part_lot.location_full + L'emplacement de stockage est plein, c'est pourquoi aucun nouveau composant ne peut être ajouté. + + + + + obsolete + obsolete + + + validator.part_lot.only_existing + L'emplacement de stockage a été marqué comme "uniquement existant", donc aucun nouveau composant ne peut être ajouté. + + + + + obsolete + obsolete + + + validator.part_lot.single_part + L'emplacement de stockage a été marqué comme "Composant seul", par conséquent aucun nouveau composant ne peut être ajouté. + + + + + obsolete + obsolete + + + m_status.active.help + Le composant est actuellement en cours de production et sera produit dans un avenir proche. + + + + + obsolete + obsolete + + + m_status.announced.help + Le composant a été annoncé, mais n'est pas encore disponible. + + + + + obsolete + obsolete + + + m_status.discontinued.help + Le composant n'est plus fabriqué. + + + + + obsolete + obsolete + + + m_status.eol.help + La production de ce composant sera bientôt arrêtée. + + + + + obsolete + obsolete + + + m_status.nrfnd.help + Ce composant est actuellement en production mais n'est pas recommandé pour les nouvelles conceptions. + + + + + obsolete + obsolete + + + m_status.unknown.help + L'état de la production n'est pas connu. + + + + + obsolete + obsolete + + + flash.success + Succès + + + + + obsolete + obsolete + + + flash.error + Erreur + + + + + obsolete + obsolete + + + flash.warning + Attention + + + + + obsolete + obsolete + + + flash.notice + Remarque + + + + + obsolete + obsolete + + + flash.info + Info + + + + + obsolete + obsolete + + + validator.noLockout + Vous ne pouvez pas révoquer vous-même l'autorisation de "modifier les autorisations" pour éviter de vous verrouiller accidentellement ! + + + + + obsolete + obsolete + + + attachment_type.edit.filetype_filter + Types de fichiers autorisés + + + + + obsolete + obsolete + + + attachment_type.edit.filetype_filter.help + Vous pouvez spécifier ici une liste, séparée par des virgules, des extensions de fichiers ou des mimétapes qu'un fichier téléchargé avec ce type de pièce jointe doit avoir. Pour autoriser tous les fichiers d'images pris en charge, utilisez image/*. + + + + + obsolete + obsolete + + + attachment_type.edit.filetype_filter.placeholder + Ex. .txt, application/pdf, image/* + + + + + src\Form\PartType.php:63 + obsolete + obsolete + + + part.name.placeholder + Ex. BC547 + + + + + obsolete + obsolete + + + entity.edit.not_selectable + Non sélectionnable + + + + + obsolete + obsolete + + + entity.edit.not_selectable.help + Si cette option est activée, alors cet élément ne peut être attribué à aucun composant en tant que propriété. Utile, par exemple si cet élément doit être utilisé uniquement pour le tri. + + + + + obsolete + obsolete + + + bbcode.hint + Le BBCode peut être utilisé ici (par exemple [b]Bold[/b]) + + + + + obsolete + obsolete + + + entity.create + Créer un élément + + + + + obsolete + obsolete + + + entity.edit.save + Sauvegarder + + + + + obsolete + obsolete + + + category.edit.disable_footprints + Désactiver les empreintes + + + + + obsolete + obsolete + + + category.edit.disable_footprints.help + Si cette option est activée, la propriété Empreinte est désactivée pour tous les composants de cette catégorie. + + + + + obsolete + obsolete + + + category.edit.disable_manufacturers + Désactiver les fabricants + + + + + obsolete + obsolete + + + category.edit.disable_manufacturers.help + Si cette option est activée, la propriété fabricant est désactivée pour tous les composants de cette catégorie. + + + + + obsolete + obsolete + + + category.edit.disable_autodatasheets + Désactiver les liens automatiques des fiches techniques + + + + + obsolete + obsolete + + + category.edit.disable_autodatasheets.help + Si cette option est activée, aucun lien automatique avec la fiche technique n'est généré pour les pièces de cette catégorie. + + + + + obsolete + obsolete + + + category.edit.disable_properties + Désactiver les propriétés + + + + + obsolete + obsolete + + + category.edit.disable_properties.help + Si cette option est activée, les propriétés des composants pour tous les composants de cette catégorie sont désactivées. + + + + + obsolete + obsolete + + + category.edit.partname_hint + Indication du nom du composant + + + + + obsolete + obsolete + + + category.edit.partname_hint.placeholder + Ex. 100nF + + + + + obsolete + obsolete + + + category.edit.partname_regex + Filtre de nom + + + + + category.edit.part_ipn_prefix + Préfixe de pièce IPN + + + + + obsolete + obsolete + + + category.edit.default_description + Description par défaut + + + + + obsolete + obsolete + + + category.edit.default_description.placeholder + Ex. Condensateur, 10mmx10mm, CMS + + + + + obsolete + obsolete + + + category.edit.default_comment + Commentaire par défaut + + + + + obsolete + obsolete + + + company.edit.address + Adresse + + + + + obsolete + obsolete + + + company.edit.address.placeholder + Ex. 99 exemple de rue +exemple de ville + + + + + obsolete + obsolete + + + company.edit.phone_number + Numéro de téléphone + + + + + obsolete + obsolete + + + company.edit.phone_number.placeholder + +33 1 23 45 67 89 + + + + + obsolete + obsolete + + + company.edit.fax_number + Numéro de fax + + + + + obsolete + obsolete + + + company.edit.email + Email + + + + + obsolete + obsolete + + + company.edit.email.placeholder + Ex. contact@foo.bar + + + + + obsolete + obsolete + + + company.edit.website + Site internet + + + + + obsolete + obsolete + + + company.edit.website.placeholder + https://www.foo.bar + + + + + obsolete + obsolete + + + company.edit.auto_product_url + URL du produit + + + + + obsolete + obsolete + + + company.edit.auto_product_url.help + Si cette URL est définie, elle est utilisée pour générer l'URL d'un composant sur le site web du fabricant. Dans ce cas, %PARTNUMBER% sera remplacé par le numéro de commande. + + + + + obsolete + obsolete + + + company.edit.auto_product_url.placeholder + https://foo.bar/product/%PARTNUMBER% + + + + + obsolete + obsolete + + + currency.edit.iso_code + Code ISO + + + + + obsolete + obsolete + + + currency.edit.exchange_rate + Taux de change + + + + + obsolete + obsolete + + + footprint.edit.3d_model + Modèle 3D + + + + + obsolete + obsolete + + + mass_creation.lines + Saisie + + + + + obsolete + obsolete + + + mass_creation.lines.placeholder + Élément 1 +Élément 2 +Élément 3 + + + + + obsolete + obsolete + + + entity.mass_creation.btn + Créer + + + + + obsolete + obsolete + + + measurement_unit.edit.is_integer + Nombre entier + + + + + obsolete + obsolete + + + measurement_unit.edit.is_integer.help + Si cette option est activée, toutes les quantités dans cette unité sont arrondies à des nombres entiers. + + + + + obsolete + obsolete + + + measurement_unit.edit.use_si_prefix + Utiliser les préfixes SI + + + + + obsolete + obsolete + + + measurement_unit.edit.use_si_prefix.help + Si cette option est activée, les préfixes SI sont utilisés lors de la génération des nombres (par exemple 1,2 kg au lieu de 1200 g) + + + + + obsolete + obsolete + + + measurement_unit.edit.unit_symbol + Symbole de l'unité + + + + + obsolete + obsolete + + + measurement_unit.edit.unit_symbol.placeholder + Ex. m + + + + + obsolete + obsolete + + + storelocation.edit.is_full.label + Emplacement de stockage plein + + + + + obsolete + obsolete + + + storelocation.edit.is_full.help + Si cette option est activée, il n'est pas possible d'ajouter de nouveaux composants à ce lieu de stockage ni d'augmenter le nombre de composants existants. + + + + + obsolete + obsolete + + + storelocation.limit_to_existing.label + Limiter aux composants existants + + + + + obsolete + obsolete + + + storelocation.limit_to_existing.help + Si cette option est active, il n'est pas possible d'ajouter de nouveaux composants à ce lieu de stockage, mais il est possible d'augmenter le nombre de composants existants. + + + + + obsolete + obsolete + + + storelocation.only_single_part.label + Seulement un composant + + + + + obsolete + obsolete + + + storelocation.only_single_part.help + Si cette option est activée, cet emplacement de stockage ne peut contenir qu'un seul composant (mais une quantité quelconque). Utile pour les petits compartiments ou les distributeurs de CMS. + + + + + obsolete + obsolete + + + storelocation.storage_type.label + Type de stockage + + + + + obsolete + obsolete + + + storelocation.storage_type.help + Ici, vous pouvez sélectionner une unité de mesure qu'un composant doit avoir pour être stocké dans ce lieu de stockage. + + + + + obsolete + obsolete + + + supplier.edit.default_currency + Devise par défaut + + + + + obsolete + obsolete + + + supplier.shipping_costs.label + Frais de port + + + + + obsolete + obsolete + + + user.username.placeholder + Ex. j.doe + + + + + obsolete + obsolete + + + user.firstName.placeholder + Ex. John + + + + + obsolete + obsolete + + + user.lastName.placeholder + Ex. Doe + + + + + obsolete + obsolete + + + user.email.placeholder + j.doe@ecorp.com + + + + + obsolete + obsolete + + + user.department.placeholder + Ex. Development + + + + + obsolete + obsolete + + + user.settings.pw_new.label + Nouveau mot de passe + + + + + obsolete + obsolete + + + user.settings.pw_confirm.label + Confirmer le nouveau mot de passe + + + + + obsolete + obsolete + + + user.edit.needs_pw_change + L'utilisateur doit changer de mot de passe + + + + + obsolete + obsolete + + + user.edit.user_disabled + Utilisateur désactivé (connexion impossible) + + + + + obsolete + obsolete + + + user.create + Créer l'utilisateur + + + + + obsolete + obsolete + + + user.edit.save + Enregistrer + + + + + obsolete + obsolete + + + entity.edit.reset + Rejeter les modifications + + + + + templates\Parts\show_part_info.html.twig:166 + obsolete + obsolete + + + part.withdraw.btn + Retrait + + + + + templates\Parts\show_part_info.html.twig:171 + obsolete + obsolete + + + part.withdraw.comment: + Commentaire/objet + + + + + templates\Parts\show_part_info.html.twig:189 + obsolete + obsolete + + + part.add.caption + Ajouter composants + + + + + templates\Parts\show_part_info.html.twig:194 + obsolete + obsolete + + + part.add.btn + Ajouter + + + + + templates\Parts\show_part_info.html.twig:199 + obsolete + obsolete + + + part.add.comment + Commentaire/objet + + + + + templates\AdminPages\CompanyAdminBase.html.twig:15 + obsolete + obsolete + + + admin.comment + Commentaire + + + + + src\Form\PartType.php:83 + obsolete + obsolete + + + manufacturer_url.label + Lien vers le site du fabricant + + + + + src\Form\PartType.php:66 + obsolete + obsolete + + + part.description.placeholder + Ex. NPN 45V 0,1A 0,5W + + + + + src\Form\PartType.php:69 + obsolete + obsolete + + + part.instock.placeholder + Ex. 10 + + + + + src\Form\PartType.php:72 + obsolete + obsolete + + + part.mininstock.placeholder + Ex. 10 + + + + + obsolete + obsolete + + + part.order.price_per + Prix par + + + + + obsolete + obsolete + + + part.withdraw.caption + Retrait de composants + + + + + obsolete + obsolete + + + datatable.datatable.lengthMenu + _MENU_ + + + + + obsolete + obsolete + + + perm.group.parts + Composants + + + + + obsolete + obsolete + + + perm.group.structures + Structures des données + + + + + obsolete + obsolete + + + perm.group.system + Système + + + + + obsolete + obsolete + + + perm.parts + Général + + + + + obsolete + obsolete + + + perm.read + Afficher + + + + + obsolete + obsolete + + + perm.edit + Éditer + + + + + obsolete + obsolete + + + perm.create + Créer + + + + + obsolete + obsolete + + + perm.part.move + Changer de catégorie + + + + + obsolete + obsolete + + + perm.delete + Supprimer + + + + + obsolete + obsolete + + + perm.part.search + Rechercher + + + + + obsolete + obsolete + + + perm.part.all_parts + Liste de tous les composants + + + + + obsolete + obsolete + + + perm.part.no_price_parts + Liste des composants sans prix + + + + + obsolete + obsolete + + + perm.part.obsolete_parts + Liste des composants obsolètes + + + + + obsolete + obsolete + + + perm.part.unknown_instock_parts + Liste des composants dont le stock est inconnu + + + + + obsolete + obsolete + + + perm.part.change_favorite + Changer le statut de favori + + + + + obsolete + obsolete + + + perm.part.show_favorite + Afficher les favoris + + + + + obsolete + obsolete + + + perm.part.show_last_edit_parts + Afficher les derniers composants modifiés/ajoutés + + + + + obsolete + obsolete + + + perm.part.show_users + Afficher le dernier utilisateur ayant apporté des modifications + + + + + obsolete + obsolete + + + perm.part.show_history + Afficher l'historique + + + + + obsolete + obsolete + + + perm.part.name + Nom + + + + + obsolete + obsolete + + + perm.part.description + Description + + + + + obsolete + obsolete + + + perm.part.instock + En stock + + + + + obsolete + obsolete + + + perm.part.mininstock + Stock minimum + + + + + obsolete + obsolete + + + perm.part.comment + Commentaire + + + + + obsolete + obsolete + + + perm.part.storelocation + Emplacement de stockage + + + + + obsolete + obsolete + + + perm.part.manufacturer + Fabricant + + + + + obsolete + obsolete + + + perm.part.orderdetails + Informations pour la commande + + + + + obsolete + obsolete + + + perm.part.prices + Prix + + + + + obsolete + obsolete + + + perm.part.attachments + Fichiers joints + + + + + obsolete + obsolete + + + perm.part.order + Commandes + + + + + obsolete + obsolete + + + perm.storelocations + Emplacements de stockage + + + + + obsolete + obsolete + + + perm.move + Déplacer + + + + + obsolete + obsolete + + + perm.list_parts + Liste des composants + + + + + obsolete + obsolete + + + perm.part.footprints + Empreintes + + + + + obsolete + obsolete + + + perm.part.categories + Catégories + + + + + obsolete + obsolete + + + perm.part.supplier + Fournisseurs + + + + + obsolete + obsolete + + + perm.part.manufacturers + Fabricants + + + + + obsolete + obsolete + + + perm.part.attachment_types + Types de fichiers joints + + + + + obsolete + obsolete + + + perm.tools.import + Importer + + + + + obsolete + obsolete + + + perm.tools.labels + Étiquettes + + + + + obsolete + obsolete + + + perm.tools.calculator + Calculateur de résistance + + + + + obsolete + obsolete + + + perm.tools.footprints + Empreintes + + + + + obsolete + obsolete + + + perm.tools.ic_logos + Logos CI + + + + + obsolete + obsolete + + + perm.tools.statistics + Statistiques + + + + + obsolete + obsolete + + + perm.edit_permissions + Éditer les autorisations + + + + + obsolete + obsolete + + + perm.users.edit_user_name + Modifier le nom d'utilisateur + + + + + obsolete + obsolete + + + perm.users.edit_change_group + Modifier le groupe + + + + + obsolete + obsolete + + + perm.users.edit_infos + Editer les informations + + + + + obsolete + obsolete + + + perm.users.edit_permissions + Modifier les autorisations + + + + + obsolete + obsolete + + + perm.users.set_password + Définir le mot de passe + + + + + obsolete + obsolete + + + perm.users.change_user_settings + Changer les paramètres utilisateur + + + + + obsolete + obsolete + + + perm.database.see_status + Afficher l’état + + + + + obsolete + obsolete + + + perm.database.update_db + Actualiser la base de données + + + + + obsolete + obsolete + + + perm.database.read_db_settings + Lecture des paramètres de la base de donnée + + + + + obsolete + obsolete + + + perm.database.write_db_settings + Modifier les paramètres de la base de données + + + + + obsolete + obsolete + + + perm.config.read_config + Lecture de la configuration + + + + + obsolete + obsolete + + + perm.config.edit_config + Modifier la configuration + + + + + obsolete + obsolete + + + perm.config.server_info + Informations sur le serveur + + + + + obsolete + obsolete + + + perm.config.use_debug + Utiliser les outils de débogage + + + + + obsolete + obsolete + + + perm.show_logs + Afficher les logs + + + + + obsolete + obsolete + + + perm.delete_logs + Supprimer les logs + + + + + obsolete + obsolete + + + perm.self.edit_infos + Modifier les informations + + + + + obsolete + obsolete + + + perm.self.edit_username + Modifier le nom d'utilisateur + + + + + obsolete + obsolete + + + perm.self.show_permissions + Voir les autorisations + + + + + obsolete + obsolete + + + perm.self.show_logs + Afficher ses propres logs + + + + + obsolete + obsolete + + + perm.self.create_labels + Créer des étiquettes + + + + + obsolete + obsolete + + + perm.self.edit_options + Modifier les options + + + + + obsolete + obsolete + + + perm.self.delete_profiles + Supprimer les profils + + + + + obsolete + obsolete + + + perm.self.edit_profiles + Modifier les profils + + + + + obsolete + obsolete + + + perm.part.tools + Outils + + + + + obsolete + obsolete + + + perm.groups + Groupes + + + + + obsolete + obsolete + + + perm.users + Utilisateurs + + + + + obsolete + obsolete + + + perm.database + Base de données + + + + + obsolete + obsolete + + + perm.config + Configuration + + + + + obsolete + obsolete + + + perm.system + Système + + + + + obsolete + obsolete + + + perm.self + Propre utilisateur + + + + + obsolete + obsolete + + + perm.labels + Étiquettes + + + + + obsolete + obsolete + + + perm.part.category + Catégorie + + + + + obsolete + obsolete + + + perm.part.minamount + Quantité minimum + + + + + obsolete + obsolete + + + perm.part.footprint + Empreinte + + + + + obsolete + obsolete + + + perm.part.mpn + MPN + + + + + obsolete + obsolete + + + perm.part.status + État de la fabrication + + + + + obsolete + obsolete + + + perm.part.tags + Tags + + + + + obsolete + obsolete + + + perm.part.unit + Unité + + + + + obsolete + obsolete + + + perm.part.mass + Poids + + + + + obsolete + obsolete + + + perm.part.lots + Lots de composants + + + + + obsolete + obsolete + + + perm.show_users + Afficher le dernier utilisateur ayant apporté des modifications + + + + + obsolete + obsolete + + + perm.currencies + Devises + + + + + obsolete + obsolete + + + perm.measurement_units + Unités de mesure + + + + + perm.part_custom_states + État personnalisé du composant + + + + + obsolete + obsolete + + + user.settings.pw_old.label + Ancien mot de passe + + + + + obsolete + obsolete + + + pw_reset.submit + Réinitialiser le mot de passe + + + + + obsolete + obsolete + + + u2f_two_factor + Clé de sécurité (U2F) + + + + + obsolete + obsolete + + + google + google + + + + + obsolete + obsolete + + + tfa.provider.google + Application d'authentification + + + + + obsolete + obsolete + + + Login successful + Connexion réussie + + + + + obsolete + obsolete + + + log.type.exception + Exception + + + + + obsolete + obsolete + + + log.type.user_login + Connexion utilisateur + + + + + obsolete + obsolete + + + log.type.user_logout + Déconnexion de l’utilisateur + + + + + obsolete + obsolete + + + log.type.unknown + Inconnu + + + + + obsolete + obsolete + + + log.type.element_created + Élément créé + + + + + obsolete + obsolete + + + log.type.element_edited + Élément modifié + + + + + obsolete + obsolete + + + log.type.element_deleted + Élément supprimé + + + + + obsolete + obsolete + + + log.type.database_updated + Base de données mise à jour + + + + + obsolete + + + perm.revert_elements + Restaurer les éléments + + + + + obsolete + + + perm.show_history + Afficher l'historique + + + + + obsolete + + + perm.tools.lastActivity + Afficher l'activité récente + + + + + obsolete + + + perm.tools.timeTravel + Afficher les anciennes versions des éléments (Time travel) + + + + + obsolete + + + tfa_u2f.key_added_successful + Clé de sécurité ajoutée avec succès. + + + + + obsolete + + + Username + Nom d'utilisateur + + + + + obsolete + + + log.type.security.google_disabled + Application d'authentification désactivée + + + + + obsolete + + + log.type.security.u2f_removed + Clé de sécurité enlevée + + + + + obsolete + + + log.type.security.u2f_added + Clé de sécurité ajoutée + + + + + obsolete + + + log.type.security.backup_keys_reset + Clés de sauvegarde régénérées + + + + + obsolete + + + log.type.security.google_enabled + Application Authenticator activée + + + + + obsolete + + + log.type.security.password_changed + Mot de passe modifié + + + + + obsolete + + + log.type.security.trusted_device_reset + Appareils de confiance réinitialisés + + + + + obsolete + + + log.type.collection_element_deleted + Élément de collecte supprimé + + + + + obsolete + + + log.type.security.password_reset + Réinitialisation du mot de passe + + + + + obsolete + + + log.type.security.2fa_admin_reset + Réinitialisation à deux facteurs par l'administrateur + + + + + obsolete + + + log.type.user_not_allowed + Tentative d'accès non autorisé + + + + + obsolete + + + log.database_updated.success + Succès + + + + + obsolete + + + label_options.barcode_type.2D + 2D + + + + + obsolete + + + label_options.barcode_type.1D + 1D + + + + + obsolete + + + perm.part.parameters + Caractéristiques + + + + + obsolete + + + perm.attachment_show_private + Voir les pièces jointes privées + + + + + obsolete + + + perm.tools.label_scanner + Lecteur d'étiquettes + + + + + obsolete + + + perm.self.read_profiles + Lire les profils + + + + + obsolete + + + perm.self.create_profiles + Créer des profils + + + + + obsolete + + + perm.labels.use_twig + Utiliser le mode twig + + + + + label_profile.showInDropdown + Afficher en sélection rapide + + + + + group.edit.enforce_2fa + Imposer l'authentification à deux facteurs (2FA) + + + + + group.edit.enforce_2fa.help + Si cette option est activée, chaque membre direct de ce groupe doit configurer au moins un deuxième facteur d'authentification. Recommandé pour les groupes administratifs ayant beaucoup de permissions. + + + + + selectpicker.empty + Rien n'est sélectionné + + + + + selectpicker.nothing_selected + Rien n'est sélectionné + + + + + entity.delete.must_not_contain_parts + L'élement contient encore des parties ! Vous devez déplacer les parties pour pouvoir supprimer cet élément. + + + + + entity.delete.must_not_contain_attachments + Le type de pièce jointe contient toujours des pièces jointes. Changez leur type, pour pouvoir supprimer ce type de pièce jointe. + + + + + entity.delete.must_not_contain_prices + La devise contient encore des prix. Vous devez changer leur devise pour pouvoir supprimer cet élément. + + + + + entity.delete.must_not_contain_users + Des utilisateurs utilisent toujours ce groupe ! Changez les de groupe pour pouvoir supprimer ce groupe. + + + + + part.table.edit + Modifier + + + + + part.table.edit.title + Modifier composant + + + + + part_list.action.action.title + Sélectionnez une action + + + + + part_list.action.action.group.favorite + Statut favori + + + + + part_list.action.action.favorite + Favorable + + + + + part_list.action.action.unfavorite + Défavorable + + + + + part_list.action.action.group.change_field + Modifier le champ + + + + + part_list.action.action.change_category + Modifier la catégorie + + + + + part_list.action.action.change_footprint + Modifier l'empreinte + + + + + part_list.action.action.change_manufacturer + Modifier le fabricant + + + + + part_list.action.action.change_unit + Modifier l'unité + + + + + part_list.action.action.delete + Supprimer + + + + + part_list.action.submit + Soumettre + + + + + part_list.action.part_count + %count% composants sélectionnés + + + + + company.edit.quick.website + Ouvrir le site web + + + + + company.edit.quick.email + Envoyer un e-mail + + + + + company.edit.quick.phone + Téléphoner + + + + + company.edit.quick.fax + Envoyer une télécopie + + + + + company.fax_number.placeholder + ex. +33 12 34 56 78 90 + + + + + part.edit.save_and_clone + Sauvegarder et dupliquer + + + + + validator.file_ext_not_allowed + L'extension de fichier n'est pas autorisée pour ce type de pièce jointe. + + + + + tools.reel_calc.title + Calculateur de bobines CMS + + + + + tools.reel_calc.inner_dia + Diamètre intérieur + + + + + tools.reel_calc.outer_dia + Diamètre extérieur + + + + + tools.reel_calc.tape_thick + Épaisseur du ruban + + + + + tools.reel_calc.part_distance + Distance entre les composants + + + + + tools.reel_calc.update + Actualiser + + + + + tools.reel_calc.parts_per_meter + Composants par mètre + + + + + tools.reel_calc.result_length + Longueur de la bande + + + + + tools.reel_calc.result_amount + Nbre approximatif de composants + + + + + tools.reel_calc.outer_greater_inner_error + Erreur : Le diamètre extérieur doit être supérieur au diamètre intérieur ! + + + + + tools.reel_calc.missing_values.error + Veuillez remplir toutes les valeurs ! + + + + + tools.reel_calc.load_preset + Charger la présélection + + + + + tools.reel_calc.explanation + Ce calculateur vous donne une estimation du nombre de pièces qui restent sur une bobine de CMS. Mesurez les dimensions notées sur la bobine (ou utilisez certains des préréglages) et cliquez sur "Actualiser" pour obtenir un résultat. + + + + + perm.tools.reel_calculator + Calculateur de bobines CMS + + + + + tree.tools.tools.reel_calculator + Calculateur de bobines CMS + + + + + currency.edit.update_rate + Taux de rafraîchissement + + + + + currency.edit.exchange_rate_update.unsupported_currency + Devise non prise en charge + + + + + currency.edit.exchange_rate_update.generic_error + Erreur générique + + + + + currency.edit.exchange_rate_updated.success + Succès + + + + + homepage.forum.text + Si vous avez des questions à propos de Part-DB , rendez vous sur <a href="%href%" class="link-external" target="_blank">Github</a> + + + + + part_custom_state.new + Nouveau statut personnalisé du composant + + + + + part_custom_state.edit + Modifier le statut personnalisé du composant + + + + + log.element_edited.changed_fields.partCustomState + État personnalisé de la pièce + + + + + category.edit.part_ipn_prefix.placeholder + par ex. "B12A" + + + + + category.edit.part_ipn_prefix.help + Un préfixe suggéré lors de la saisie de l'IPN d'une pièce. + + + + diff --git a/translations/security.fr.xlf b/translations/security.fr.xlf index 337509be..334f9c21 100644 --- a/translations/security.fr.xlf +++ b/translations/security.fr.xlf @@ -10,13 +10,13 @@ saml.error.cannot_login_local_user_per_saml - Impossible de se connecter via le SSO (Single Sign On) ! + Vous ne pouvez-pas vous connecter comme utilisateur local via le SSO ! Utilisez votre mot de passe local à la place. saml.error.cannot_login_saml_user_locally - Vous ne pouvez pas utiliser l'authentification par mot de passe ! Veuillez utiliser le SSO! + Vous ne pouvez pas utiliser la connexion locale pour vous connecter via un utilisateur SAML ! Utilisez le SSO à la place. diff --git a/translations/validators.fr.xlf b/translations/validators.fr.xlf index e86ab9cc..45c992c0 100644 --- a/translations/validators.fr.xlf +++ b/translations/validators.fr.xlf @@ -1,7 +1,7 @@ - + Part-DB1\src\Entity\Attachments\AttachmentContainingDBElement.php:0 Part-DB1\src\Entity\Attachments\AttachmentType.php:0 @@ -42,7 +42,7 @@ La pièce jointe de l'aperçu doit être une image valide ! - + Part-DB1\src\Entity\Attachments\AttachmentType.php:0 Part-DB1\src\Entity\Base\AbstractCompany.php:0 @@ -87,7 +87,7 @@ Un élément portant ce nom existe déjà à ce niveau ! - + Part-DB1\src\Entity\Parameters\AbstractParameter.php:0 Part-DB1\src\Entity\Parameters\AttachmentTypeParameter.php:0 @@ -107,7 +107,7 @@ La valeur doit être inférieure ou égale à la valeur type ({{ compared_value }}). - + Part-DB1\src\Entity\Parameters\AbstractParameter.php:0 Part-DB1\src\Entity\Parameters\AttachmentTypeParameter.php:0 @@ -127,7 +127,7 @@ La valeur doit être inférieure à la valeur maximale ({{ compared_value }}). - + Part-DB1\src\Entity\Parameters\AbstractParameter.php:0 Part-DB1\src\Entity\Parameters\AttachmentTypeParameter.php:0 @@ -147,7 +147,7 @@ La valeur doit être supérieure ou égale à la valeur type ({{ compared_value)}}. - + Part-DB1\src\Entity\UserSystem\User.php:0 Part-DB1\src\Entity\UserSystem\User.php:0 @@ -157,7 +157,7 @@ Un utilisateur portant ce nom existe déjà - + Part-DB1\src\Entity\UserSystem\User.php:0 Part-DB1\src\Entity\UserSystem\User.php:0 @@ -167,7 +167,7 @@ Le nom d'utilisateur ne doit contenir que des lettres, des chiffres, des traits de soulignement, des points, des plus ou des moins. - + obsolete @@ -176,7 +176,7 @@ Un élément ne peut pas être son propre parent. - + obsolete @@ -185,23 +185,185 @@ Le parent ne peut pas être un de ses propres enfants. - + + + validator.select_valid_category + Sélectionnez une catégorie valide ! + + + validator.part_lot.only_existing L'emplacement de stockage a été marqué comme "uniquement existant", donc aucun nouveau composant ne peut être ajouté. - + + + validator.part_lot.location_full.no_increase + Le lieu de stockage est complet, le stock ne peut donc pas être augmenté. (Nouveau stock maximum {{old_amount}}) + + + validator.part_lot.location_full L'emplacement de stockage est plein, c'est pourquoi aucun nouveau composant ne peut être ajouté. - + validator.part_lot.single_part L'emplacement de stockage a été marqué comme "Composant seul", par conséquent aucun nouveau composant ne peut être ajouté. + + + validator.attachment.must_not_be_null + La pièce jointe ne doit pas être vide ! + + + + + validator.orderdetail.supplier_must_not_be_null + Le fournisseur ne doit pas être nul ! + + + + + validator.measurement_unit.use_si_prefix_needs_unit + Pour activer les préfixes SI, il faut choisir un symbole unitaire ! + + + + + part.ipn.must_be_unique + Le numéro de pièce interne doit être unique.{{ value }} est déjà utilisé ! + + + + + validator.project.bom_entry.name_or_part_needed + Vous devez sélectionner un composant ou attribuer un nom à une entrée BOM qui n'indique pas de composant. + + + + + project.bom_entry.name_already_in_bom + Il y a déjà une entrée de BOM avec ce nom ! + + + + + project.bom_entry.part_already_in_bom + Ce composant existe déjà dans la BOM ! + + + + + project.bom_entry.mountnames_quantity_mismatch + Le nombre de noms de composants doit correspondre aux quantités de la BOM ! + + + + + project.bom_entry.can_not_add_own_builds_part + Vous ne pouvez pas ajouter un composant du projet lui-même a la BOM. + + + + + project.bom_has_to_include_all_subelement_parts + La BOM du projet dois inclure tous les composants des sous-projets. Composant %part_name% du projet %project_name% manquant ! + + + + + project.bom_entry.price_not_allowed_on_parts + Les prix ne sont pas autorisés dans les entrées de la BOM associés avec un composant. Définissez un prix sur le composant a la place. + + + + + validator.project_build.lot_bigger_than_needed + Vous avez sélectionné plus de quantités à retirer que nécessaire ! Enlevez les quantités non nécessaires. + + + + + validator.project_build.lot_smaller_than_needed + Vous avez sélectionné moins de quantités à retirer que nécessaire ! Ajoutez les quantités requises. + + + + + part.name.must_match_category_regex + Le nom du composant ne correspond pas à l'expression régulière dictée par la catégorie : %regex% + + + + + validator.attachment.name_not_blank + Rentrez une valeur ici, ou uploadez un fichier pour utiliser automatiquement le nom de fichier comme nom de pièce jointe. + + + + + validator.part_lot.owner_must_match_storage_location_owner + Le propriétaire de ce lot doit correspondre au propriétaire de l'emplacement de stockage (%owner_name%) ! + + + + + validator.part_lot.owner_must_not_be_anonymous + Un propriétaire de lot ne peut être l'utilisateur anonyme ! + + + + + validator.part_association.must_set_an_value_if_type_is_other + Si vous choisissez le type "autre", alors vous devez mettre une valeur de description pour celui-ci ! + + + + + validator.part_association.part_cannot_be_associated_with_itself + Un composant ne peut être associée à lui-même ! + + + + + validator.part_association.already_exists + L'association avec ce composant existe déjà ! + + + + + validator.part_lot.vendor_barcode_must_be_unique + Le code barre doit être unique + + + + + validator.year_2038_bug_on_32bit + Suite à des limitations techniques, il n'est pas possible de sélectionner une date après le 19-01-2038 sur les systèmes 32-bit ! + + + + + validator.fileSize.invalidFormat + Taille de fichier invalide. Utilisez un nombre avec le suffixe K, G, M pour Kilo, Mega ou Gigabytes. + + + + + validator.invalid_range + L'écart fournit est invalide ! + + + + + validator.google_code.wrong_code + Code invalide. Vérifiez que votre application d'authentification est paramétrée correctement que le serveur et périphérique d'authentification ont l'heure correcte. + + From 54f318ecac8811e021ecd36bc97c86329b4caa82 Mon Sep 17 00:00:00 2001 From: "web-devinition.de" <58172018+webdevinition@users.noreply.github.com> Date: Wed, 12 Nov 2025 21:35:02 +0100 Subject: [PATCH 2/4] Implemented the ability to set user-defined synonyms/labels for internal element types MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Implementiere bevorzugte Sprachauswahl und Datenquellen-Synonyme Die Spracheinstellungen/System-Settings wurden um die Möglichkeit ergänzt, bevorzugte Sprachen für die Dropdown-Menüs festzulegen. Zudem wurde ein Datenquellen-Synonymsystem implementiert, um benutzerfreundlichere Bezeichnungen anzuzeigen und zu personalisieren. * Anpassung aus Analyse * Entferne alten JSON-basierten Datenquellen-Synonym-Handler Die Verwaltung der Datenquellen-Synonyme wurde überarbeitet, um ein flexibleres und strukturiertes Konzept zu ermöglichen. Der bestehende JSON-basierte Ansatz wurde durch eine neue Service-basierte Architektur ersetzt, die eine bessere Handhabung und Erweiterbarkeit erlaubt. * Ermögliche Rückgabe aller möglichen Sprachoptionen in Verbindung mit den vom Nutzer freigeschalteten. * Removed unnecessary service definition The tag is applied via autoconfiguration * Use default translations for the NotBlank constraint * Started refactoring ElementTypeNameGenerator * Made ElementTypeNameGenerator class readonly * Modified form to work properly with new datastructure * Made the form more beautiful and space saving * Made synonym form even more space saving * Allow to define overrides for any element label there is * Use defined synonyms in ElementTypeNameGenerator * Use ElementTypeNameGenerator where possible * Register synonyms for element types as global translation parameters * Revert changes done to permission layout * Use new synonym system for admin page titles * Removed now unnecessary services * Reworked settings name and translation * Renamed all files to Synonyms * Removed unnecessary translations * Removed unnecessary translations * Fixed duplicate check * Renamed synoynms translations * Use our synonyms for permission translations * Fixed phpstan issue * Added tests --------- Co-authored-by: Marcel Diegelmann Co-authored-by: Jan Böhmer --- .../pages/synonyms_collection_controller.js | 68 ++++ config/packages/translation.yaml | 2 +- config/packages/twig.yaml | 4 +- config/permissions.yaml | 24 +- src/Controller/SettingsController.php | 2 +- ...ynonymsAsTranslationParametersListener.php | 93 ++++++ .../LanguageMenuEntriesType.php | 3 +- src/Form/Settings/TypeSynonymRowType.php | 142 ++++++++ .../Settings/TypeSynonymsCollectionType.php | 223 +++++++++++++ src/Form/Type/LocaleSelectType.php | 1 - src/Services/ElementTypeNameGenerator.php | 133 ++++---- src/Services/ElementTypes.php | 229 +++++++++++++ src/Services/Trees/ToolsTreeBuilder.php | 35 +- src/Services/Trees/TreeViewGenerator.php | 13 +- src/Settings/AppSettings.php | 6 + src/Settings/SynonymSettings.php | 116 +++++++ .../SystemSettings/LocalizationSettings.php | 2 +- .../SystemSettings/SystemSettings.php | 2 + src/Twig/EntityExtension.php | 2 + .../admin/attachment_type_admin.html.twig | 2 +- templates/admin/category_admin.html.twig | 4 +- templates/admin/currency_admin.html.twig | 4 +- templates/admin/footprint_admin.html.twig | 4 +- templates/admin/group_admin.html.twig | 4 +- templates/admin/label_profile_admin.html.twig | 4 +- templates/admin/manufacturer_admin.html.twig | 4 +- .../admin/measurement_unit_admin.html.twig | 2 +- .../admin/part_custom_state_admin.html.twig | 2 +- templates/admin/project_admin.html.twig | 4 +- templates/admin/storelocation_admin.html.twig | 4 +- templates/admin/supplier_admin.html.twig | 4 +- templates/admin/user_admin.html.twig | 4 +- templates/components/tree_macros.html.twig | 35 +- templates/form/synonyms_collection.html.twig | 59 ++++ .../form/vertical_bootstrap_layout.html.twig | 26 ++ templates/settings/settings.html.twig | 2 +- ...terSynonymsAsTranslationParametersTest.php | 49 +++ .../Services/ElementTypeNameGeneratorTest.php | 41 ++- tests/Services/ElementTypesTest.php | 79 +++++ tests/Settings/SynonymSettingsTest.php | 76 +++++ translations/messages.en.xlf | 312 +++++++----------- translations/messages.ru.xlf | 4 +- translations/validators.en.xlf | 10 +- 43 files changed, 1504 insertions(+), 335 deletions(-) create mode 100644 assets/controllers/pages/synonyms_collection_controller.js create mode 100644 src/EventListener/RegisterSynonymsAsTranslationParametersListener.php rename src/Form/{Type => Settings}/LanguageMenuEntriesType.php (95%) create mode 100644 src/Form/Settings/TypeSynonymRowType.php create mode 100644 src/Form/Settings/TypeSynonymsCollectionType.php create mode 100644 src/Services/ElementTypes.php create mode 100644 src/Settings/SynonymSettings.php create mode 100644 templates/form/synonyms_collection.html.twig create mode 100644 templates/form/vertical_bootstrap_layout.html.twig create mode 100644 tests/EventListener/RegisterSynonymsAsTranslationParametersTest.php create mode 100644 tests/Services/ElementTypesTest.php create mode 100644 tests/Settings/SynonymSettingsTest.php diff --git a/assets/controllers/pages/synonyms_collection_controller.js b/assets/controllers/pages/synonyms_collection_controller.js new file mode 100644 index 00000000..6b2f4811 --- /dev/null +++ b/assets/controllers/pages/synonyms_collection_controller.js @@ -0,0 +1,68 @@ +/* + * This file is part of Part-DB (https://github.com/Part-DB/Part-DB-symfony). + * + * Copyright (C) 2019 - 2022 Jan Böhmer (https://github.com/jbtronics) + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as published + * by the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see . + */ + +import { Controller } from '@hotwired/stimulus'; + +export default class extends Controller { + static targets = ['items']; + static values = { + prototype: String, + prototypeName: { type: String, default: '__name__' }, + index: { type: Number, default: 0 }, + }; + + connect() { + if (!this.hasIndexValue || Number.isNaN(this.indexValue)) { + this.indexValue = this.itemsTarget?.children.length || 0; + } + } + + add(event) { + event.preventDefault(); + + const encodedProto = this.prototypeValue || ''; + const placeholder = this.prototypeNameValue || '__name__'; + if (!encodedProto || !this.itemsTarget) return; + + const protoHtml = this._decodeHtmlAttribute(encodedProto); + + const idx = this.indexValue; + const html = protoHtml.replace(new RegExp(placeholder, 'g'), String(idx)); + + const wrapper = document.createElement('div'); + wrapper.innerHTML = html; + const newItem = wrapper.firstElementChild; + if (newItem) { + this.itemsTarget.appendChild(newItem); + this.indexValue = idx + 1; + } + } + + remove(event) { + event.preventDefault(); + const row = event.currentTarget.closest('.tc-item'); + if (row) row.remove(); + } + + _decodeHtmlAttribute(str) { + const tmp = document.createElement('textarea'); + tmp.innerHTML = str; + return tmp.value || tmp.textContent || ''; + } +} diff --git a/config/packages/translation.yaml b/config/packages/translation.yaml index cbc1cd7e..a3f529e3 100644 --- a/config/packages/translation.yaml +++ b/config/packages/translation.yaml @@ -1,7 +1,7 @@ framework: default_locale: 'en' # Just enable the locales we need for performance reasons. - enabled_locale: '%partdb.locale_menu%' + enabled_locale: ['en', 'de', 'it', 'fr', 'ru', 'ja', 'cs', 'da', 'zh', 'pl'] translator: default_path: '%kernel.project_dir%/translations' fallbacks: diff --git a/config/packages/twig.yaml b/config/packages/twig.yaml index 674aa317..95ae4f3b 100644 --- a/config/packages/twig.yaml +++ b/config/packages/twig.yaml @@ -1,6 +1,6 @@ twig: default_path: '%kernel.project_dir%/templates' - form_themes: ['bootstrap_5_horizontal_layout.html.twig', 'form/extended_bootstrap_layout.html.twig', 'form/permission_layout.html.twig', 'form/filter_types_layout.html.twig'] + form_themes: ['bootstrap_5_horizontal_layout.html.twig', 'form/extended_bootstrap_layout.html.twig', 'form/permission_layout.html.twig', 'form/filter_types_layout.html.twig', 'form/synonyms_collection.html.twig'] paths: '%kernel.project_dir%/assets/css': css @@ -20,4 +20,4 @@ twig: when@test: twig: - strict_variables: true \ No newline at end of file + strict_variables: true diff --git a/config/permissions.yaml b/config/permissions.yaml index 7acee7f0..5adfb79d 100644 --- a/config/permissions.yaml +++ b/config/permissions.yaml @@ -18,7 +18,7 @@ perms: # Here comes a list with all Permission names (they have a perm_[name] co parts: # e.g. this maps to perms_parts in User/Group database group: "data" - label: "perm.parts" + label: "{{part}}" operations: # Here are all possible operations are listed => the op name is mapped to bit value read: label: "perm.read" @@ -71,7 +71,7 @@ perms: # Here comes a list with all Permission names (they have a perm_[name] co storelocations: &PART_CONTAINING - label: "perm.storelocations" + label: "{{storage_location}}" group: "data" operations: read: @@ -103,39 +103,39 @@ perms: # Here comes a list with all Permission names (they have a perm_[name] co footprints: <<: *PART_CONTAINING - label: "perm.part.footprints" + label: "{{footprint}}" categories: <<: *PART_CONTAINING - label: "perm.part.categories" + label: "{{category}}" suppliers: <<: *PART_CONTAINING - label: "perm.part.supplier" + label: "{{supplier}}" manufacturers: <<: *PART_CONTAINING - label: "perm.part.manufacturers" + label: "{{manufacturer}}" projects: <<: *PART_CONTAINING - label: "perm.projects" + label: "{{project}}" attachment_types: <<: *PART_CONTAINING - label: "perm.part.attachment_types" + label: "{{attachment_type}}" currencies: <<: *PART_CONTAINING - label: "perm.currencies" + label: "{{currency}}" measurement_units: <<: *PART_CONTAINING - label: "perm.measurement_units" + label: "{{measurement_unit}}" part_custom_states: <<: *PART_CONTAINING - label: "perm.part_custom_states" + label: "{{part_custom_state}}" tools: label: "perm.part.tools" @@ -377,4 +377,4 @@ perms: # Here comes a list with all Permission names (they have a perm_[name] co manage_tokens: label: "perm.api.manage_tokens" alsoSet: ['access_api'] - apiTokenRole: ROLE_API_FULL \ No newline at end of file + apiTokenRole: ROLE_API_FULL diff --git a/src/Controller/SettingsController.php b/src/Controller/SettingsController.php index 3479cf84..15c945f6 100644 --- a/src/Controller/SettingsController.php +++ b/src/Controller/SettingsController.php @@ -64,7 +64,7 @@ class SettingsController extends AbstractController $this->settingsManager->save($settings); //It might be possible, that the tree settings have changed, so clear the cache - $cache->invalidateTags(['tree_treeview', 'sidebar_tree_update']); + $cache->invalidateTags(['tree_tools', 'tree_treeview', 'sidebar_tree_update', 'synonyms']); $this->addFlash('success', t('settings.flash.saved')); } diff --git a/src/EventListener/RegisterSynonymsAsTranslationParametersListener.php b/src/EventListener/RegisterSynonymsAsTranslationParametersListener.php new file mode 100644 index 00000000..b216aad4 --- /dev/null +++ b/src/EventListener/RegisterSynonymsAsTranslationParametersListener.php @@ -0,0 +1,93 @@ +. + */ + +declare(strict_types=1); + + +namespace App\EventListener; + +use App\Services\ElementTypeNameGenerator; +use App\Services\ElementTypes; +use Symfony\Component\DependencyInjection\Attribute\Autowire; +use Symfony\Component\EventDispatcher\Attribute\AsEventListener; +use Symfony\Component\HttpKernel\Event\RequestEvent; +use Symfony\Component\Translation\Translator; +use Symfony\Contracts\Cache\CacheInterface; +use Symfony\Contracts\Cache\ItemInterface; +use Symfony\Contracts\Cache\TagAwareCacheInterface; +use Symfony\Contracts\Translation\TranslatorInterface; + +#[AsEventListener] +readonly class RegisterSynonymsAsTranslationParametersListener +{ + private Translator $translator; + + public function __construct( + #[Autowire(service: 'translator.default')] TranslatorInterface $translator, + private TagAwareCacheInterface $cache, + private ElementTypeNameGenerator $typeNameGenerator) + { + if (!$translator instanceof Translator) { + throw new \RuntimeException('Translator must be an instance of Symfony\Component\Translation\Translator or this listener cannot be used.'); + } + $this->translator = $translator; + } + + public function getSynonymPlaceholders(): array + { + return $this->cache->get('partdb_synonym_placeholders', function (ItemInterface $item) { + $item->tag('synonyms'); + + + $placeholders = []; + + //Generate a placeholder for each element type + foreach (ElementTypes::cases() as $elementType) { + //We have a placeholder for singular + $placeholders['{' . $elementType->value . '}'] = $this->typeNameGenerator->typeLabel($elementType); + //We have a placeholder for plural + $placeholders['{{' . $elementType->value . '}}'] = $this->typeNameGenerator->typeLabelPlural($elementType); + + //And we have lowercase versions for both + $placeholders['[' . $elementType->value . ']'] = mb_strtolower($this->typeNameGenerator->typeLabel($elementType)); + $placeholders['[[' . $elementType->value . ']]'] = mb_strtolower($this->typeNameGenerator->typeLabelPlural($elementType)); + } + + return $placeholders; + }); + } + + public function __invoke(RequestEvent $event): void + { + //If we already added the parameters, skip adding them again + if (isset($this->translator->getGlobalParameters()['@@partdb_synonyms_registered@@'])) { + return; + } + + //Register all placeholders for synonyms + $placeholders = $this->getSynonymPlaceholders(); + foreach ($placeholders as $key => $value) { + $this->translator->addGlobalParameter($key, $value); + } + + //Register the marker parameter to avoid double registration + $this->translator->addGlobalParameter('@@partdb_synonyms_registered@@', 'registered'); + } +} diff --git a/src/Form/Type/LanguageMenuEntriesType.php b/src/Form/Settings/LanguageMenuEntriesType.php similarity index 95% rename from src/Form/Type/LanguageMenuEntriesType.php rename to src/Form/Settings/LanguageMenuEntriesType.php index a3bba77f..9bc2e850 100644 --- a/src/Form/Type/LanguageMenuEntriesType.php +++ b/src/Form/Settings/LanguageMenuEntriesType.php @@ -21,12 +21,11 @@ declare(strict_types=1); -namespace App\Form\Type; +namespace App\Form\Settings; use Symfony\Component\DependencyInjection\Attribute\Autowire; use Symfony\Component\Form\AbstractType; use Symfony\Component\Form\Extension\Core\Type\LanguageType; -use Symfony\Component\Form\Extension\Core\Type\LocaleType; use Symfony\Component\Intl\Languages; use Symfony\Component\OptionsResolver\OptionsResolver; diff --git a/src/Form/Settings/TypeSynonymRowType.php b/src/Form/Settings/TypeSynonymRowType.php new file mode 100644 index 00000000..332db907 --- /dev/null +++ b/src/Form/Settings/TypeSynonymRowType.php @@ -0,0 +1,142 @@ +. + */ + +declare(strict_types=1); + +namespace App\Form\Settings; + +use App\Services\ElementTypes; +use App\Settings\SystemSettings\LocalizationSettings; +use Symfony\Component\DependencyInjection\Attribute\Autowire; +use Symfony\Component\Form\AbstractType; +use Symfony\Component\Form\Extension\Core\Type\EnumType; +use Symfony\Component\Form\Extension\Core\Type\LocaleType; +use Symfony\Component\Form\Extension\Core\Type\TextType; +use Symfony\Component\Form\FormBuilderInterface; +use Symfony\Component\Intl\Locales; +use Symfony\Component\Validator\Constraints as Assert; + +/** + * A single translation row: data source + language + translations (singular/plural). + */ +class TypeSynonymRowType extends AbstractType +{ + + private const PREFERRED_TYPES = [ + ElementTypes::CATEGORY, + ElementTypes::STORAGE_LOCATION, + ElementTypes::FOOTPRINT, + ElementTypes::MANUFACTURER, + ElementTypes::SUPPLIER, + ElementTypes::PROJECT, + ]; + + public function __construct( + private readonly LocalizationSettings $localizationSettings, + #[Autowire(param: 'partdb.locale_menu')] private readonly array $preferredLanguagesParam, + ) { + } + + public function buildForm(FormBuilderInterface $builder, array $options): void + { + $builder + ->add('dataSource', EnumType::class, [ + 'class' => ElementTypes::class, + 'label' => false, + 'required' => true, + 'constraints' => [ + new Assert\NotBlank(), + ], + 'row_attr' => ['class' => 'mb-0'], + 'attr' => ['class' => 'form-select-sm'], + 'preferred_choices' => self::PREFERRED_TYPES + ]) + ->add('locale', LocaleType::class, [ + 'label' => false, + 'required' => true, + // Restrict to languages configured in the language menu: disable ChoiceLoader and provide explicit choices + 'choice_loader' => null, + 'choices' => $this->buildLocaleChoices(true), + 'preferred_choices' => $this->getPreferredLocales(), + 'constraints' => [ + new Assert\NotBlank(), + ], + 'row_attr' => ['class' => 'mb-0'], + 'attr' => ['class' => 'form-select-sm'] + ]) + ->add('translation_singular', TextType::class, [ + 'label' => false, + 'required' => true, + 'empty_data' => '', + 'constraints' => [ + new Assert\NotBlank(), + ], + 'row_attr' => ['class' => 'mb-0'], + 'attr' => ['class' => 'form-select-sm'] + ]) + ->add('translation_plural', TextType::class, [ + 'label' => false, + 'required' => true, + 'empty_data' => '', + 'constraints' => [ + new Assert\NotBlank(), + ], + 'row_attr' => ['class' => 'mb-0'], + 'attr' => ['class' => 'form-select-sm'] + ]); + } + + + /** + * Returns only locales configured in the language menu (settings) or falls back to the parameter. + * Format: ['German (DE)' => 'de', ...] + */ + private function buildLocaleChoices(bool $returnPossible = false): array + { + $locales = $this->getPreferredLocales(); + + if ($returnPossible) { + $locales = $this->getPossibleLocales(); + } + + $choices = []; + foreach ($locales as $code) { + $label = Locales::getName($code); + $choices[$label . ' (' . strtoupper($code) . ')'] = $code; + } + return $choices; + } + + /** + * Source of allowed locales: + * 1) LocalizationSettings->languageMenuEntries (if set) + * 2) Fallback: parameter partdb.locale_menu + */ + private function getPreferredLocales(): array + { + $fromSettings = $this->localizationSettings->languageMenuEntries ?? []; + return !empty($fromSettings) ? array_values($fromSettings) : array_values($this->preferredLanguagesParam); + } + + private function getPossibleLocales(): array + { + return array_values($this->preferredLanguagesParam); + } +} diff --git a/src/Form/Settings/TypeSynonymsCollectionType.php b/src/Form/Settings/TypeSynonymsCollectionType.php new file mode 100644 index 00000000..4756930a --- /dev/null +++ b/src/Form/Settings/TypeSynonymsCollectionType.php @@ -0,0 +1,223 @@ +. + */ + +declare(strict_types=1); + +namespace App\Form\Settings; + +use App\Services\ElementTypes; +use Symfony\Component\Form\AbstractType; +use Symfony\Component\Form\CallbackTransformer; +use Symfony\Component\Form\Extension\Core\Type\CollectionType; +use Symfony\Component\Form\FormBuilderInterface; +use Symfony\Component\Form\FormError; +use Symfony\Component\Form\FormEvent; +use Symfony\Component\Form\FormEvents; +use Symfony\Component\Intl\Locales; +use Symfony\Component\OptionsResolver\OptionsResolver; +use Symfony\Contracts\Translation\TranslatorInterface; + +/** + * Flat collection of translation rows. + * View data: list [{dataSource, locale, translation_singular, translation_plural}, ...] + * Model data: same structure (list). Optionally expands a nested map to a list. + */ +class TypeSynonymsCollectionType extends AbstractType +{ + public function __construct(private readonly TranslatorInterface $translator) + { + } + + private function flattenStructure(array $modelValue): array + { + //If the model is already flattened, return as is + if (array_is_list($modelValue)) { + return $modelValue; + } + + $out = []; + foreach ($modelValue as $dataSource => $locales) { + if (!is_array($locales)) { + continue; + } + foreach ($locales as $locale => $translations) { + if (!is_array($translations)) { + continue; + } + $out[] = [ + //Convert string to enum value + 'dataSource' => ElementTypes::from($dataSource), + 'locale' => $locale, + 'translation_singular' => $translations['singular'] ?? '', + 'translation_plural' => $translations['plural'] ?? '', + ]; + } + } + return $out; + } + + public function buildForm(FormBuilderInterface $builder, array $options): void + { + $builder->addEventListener(FormEvents::PRE_SET_DATA, function (FormEvent $event): void { + //Flatten the structure + $data = $event->getData(); + $event->setData($this->flattenStructure($data)); + }); + + $builder->addModelTransformer(new CallbackTransformer( + // Model -> View + $this->flattenStructure(...), + // View -> Model (keep list; let existing behavior unchanged) + function (array $viewValue) { + //Turn our flat list back into the structured array + + $out = []; + + foreach ($viewValue as $row) { + if (!is_array($row)) { + continue; + } + $dataSource = $row['dataSource'] ?? null; + $locale = $row['locale'] ?? null; + $translation_singular = $row['translation_singular'] ?? null; + $translation_plural = $row['translation_plural'] ?? null; + + if ($dataSource === null || + !is_string($locale) || $locale === '' + ) { + continue; + } + + $out[$dataSource->value][$locale] = [ + 'singular' => is_string($translation_singular) ? $translation_singular : '', + 'plural' => is_string($translation_plural) ? $translation_plural : '', + ]; + } + + return $out; + } + )); + + // Validation and normalization (duplicates + sorting) during SUBMIT + $builder->addEventListener(FormEvents::SUBMIT, function (FormEvent $event): void { + $form = $event->getForm(); + $rows = $event->getData(); + + if (!is_array($rows)) { + return; + } + + // Duplicate check: (dataSource, locale) must be unique + $seen = []; + $hasDuplicate = false; + + foreach ($rows as $idx => $row) { + if (!is_array($row)) { + continue; + } + $ds = $row['dataSource'] ?? null; + $loc = $row['locale'] ?? null; + + if ($ds !== null && is_string($loc) && $loc !== '') { + $key = $ds->value . '|' . $loc; + if (isset($seen[$key])) { + $hasDuplicate = true; + + if ($form->has((string)$idx)) { + $child = $form->get((string)$idx); + + if ($child->has('dataSource')) { + $child->get('dataSource')->addError( + new FormError($this->translator->trans( + 'settings.synonyms.type_synonyms.collection_type.duplicate', + [], 'validators' + )) + ); + } + if ($child->has('locale')) { + $child->get('locale')->addError( + new FormError($this->translator->trans( + 'settings.synonyms.type_synonyms.collection_type.duplicate', + [], 'validators' + )) + ); + } + } + } else { + $seen[$key] = true; + } + } + } + + if ($hasDuplicate) { + return; + } + + // Overall sort: first by dataSource key, then by localized language name + $sortable = $rows; + + usort($sortable, static function ($a, $b) { + $aDs = $a['dataSource']->value ?? ''; + $bDs = $b['dataSource']->value ?? ''; + + $cmpDs = strcasecmp($aDs, $bDs); + if ($cmpDs !== 0) { + return $cmpDs; + } + + $aLoc = (string)($a['locale'] ?? ''); + $bLoc = (string)($b['locale'] ?? ''); + + $aName = Locales::getName($aLoc); + $bName = Locales::getName($bLoc); + + return strcasecmp($aName, $bName); + }); + + $event->setData($sortable); + }); + } + + public function configureOptions(OptionsResolver $resolver): void + { + + // Defaults for the collection and entry type + $resolver->setDefaults([ + 'entry_type' => TypeSynonymRowType::class, + 'allow_add' => true, + 'allow_delete' => true, + 'by_reference' => false, + 'required' => false, + 'prototype' => true, + 'empty_data' => [], + 'entry_options' => ['label' => false], + ]); + } + + public function getParent(): ?string + { + return CollectionType::class; + } + + public function getBlockPrefix(): string + { + return 'type_synonyms_collection'; + } +} diff --git a/src/Form/Type/LocaleSelectType.php b/src/Form/Type/LocaleSelectType.php index d47fb57f..6dc6f9fc 100644 --- a/src/Form/Type/LocaleSelectType.php +++ b/src/Form/Type/LocaleSelectType.php @@ -30,7 +30,6 @@ use Symfony\Component\OptionsResolver\OptionsResolver; /** * A locale select field that uses the preferred languages from the configuration. - */ class LocaleSelectType extends AbstractType { diff --git a/src/Services/ElementTypeNameGenerator.php b/src/Services/ElementTypeNameGenerator.php index deb4cf30..19bb19f5 100644 --- a/src/Services/ElementTypeNameGenerator.php +++ b/src/Services/ElementTypeNameGenerator.php @@ -24,68 +24,31 @@ namespace App\Services; use App\Entity\Attachments\Attachment; use App\Entity\Attachments\AttachmentContainingDBElement; -use App\Entity\Attachments\AttachmentType; use App\Entity\Base\AbstractDBElement; use App\Entity\Contracts\NamedElementInterface; -use App\Entity\InfoProviderSystem\BulkInfoProviderImportJob; -use App\Entity\InfoProviderSystem\BulkInfoProviderImportJobPart; -use App\Entity\LabelSystem\LabelProfile; use App\Entity\Parameters\AbstractParameter; -use App\Entity\Parts\Category; -use App\Entity\Parts\Footprint; -use App\Entity\Parts\Manufacturer; -use App\Entity\Parts\MeasurementUnit; use App\Entity\Parts\Part; -use App\Entity\Parts\PartAssociation; -use App\Entity\Parts\PartCustomState; use App\Entity\Parts\PartLot; -use App\Entity\Parts\StorageLocation; -use App\Entity\Parts\Supplier; -use App\Entity\PriceInformations\Currency; use App\Entity\PriceInformations\Orderdetail; use App\Entity\PriceInformations\Pricedetail; use App\Entity\ProjectSystem\Project; use App\Entity\ProjectSystem\ProjectBOMEntry; -use App\Entity\UserSystem\Group; -use App\Entity\UserSystem\User; use App\Exceptions\EntityNotSupportedException; +use App\Settings\SynonymSettings; use Symfony\Contracts\Translation\TranslatorInterface; /** * @see \App\Tests\Services\ElementTypeNameGeneratorTest */ -class ElementTypeNameGenerator +final readonly class ElementTypeNameGenerator { - protected array $mapping; - public function __construct(protected TranslatorInterface $translator, private readonly EntityURLGenerator $entityURLGenerator) + public function __construct( + private TranslatorInterface $translator, + private EntityURLGenerator $entityURLGenerator, + private SynonymSettings $synonymsSettings, + ) { - //Child classes has to become before parent classes - $this->mapping = [ - Attachment::class => $this->translator->trans('attachment.label'), - Category::class => $this->translator->trans('category.label'), - AttachmentType::class => $this->translator->trans('attachment_type.label'), - Project::class => $this->translator->trans('project.label'), - ProjectBOMEntry::class => $this->translator->trans('project_bom_entry.label'), - Footprint::class => $this->translator->trans('footprint.label'), - Manufacturer::class => $this->translator->trans('manufacturer.label'), - MeasurementUnit::class => $this->translator->trans('measurement_unit.label'), - Part::class => $this->translator->trans('part.label'), - PartLot::class => $this->translator->trans('part_lot.label'), - StorageLocation::class => $this->translator->trans('storelocation.label'), - Supplier::class => $this->translator->trans('supplier.label'), - Currency::class => $this->translator->trans('currency.label'), - Orderdetail::class => $this->translator->trans('orderdetail.label'), - Pricedetail::class => $this->translator->trans('pricedetail.label'), - Group::class => $this->translator->trans('group.label'), - User::class => $this->translator->trans('user.label'), - AbstractParameter::class => $this->translator->trans('parameter.label'), - LabelProfile::class => $this->translator->trans('label_profile.label'), - PartAssociation::class => $this->translator->trans('part_association.label'), - BulkInfoProviderImportJob::class => $this->translator->trans('bulk_info_provider_import_job.label'), - BulkInfoProviderImportJobPart::class => $this->translator->trans('bulk_info_provider_import_job_part.label'), - PartCustomState::class => $this->translator->trans('part_custom_state.label'), - ]; } /** @@ -99,27 +62,69 @@ class ElementTypeNameGenerator * @return string the localized label for the entity type * * @throws EntityNotSupportedException when the passed entity is not supported + * @deprecated Use label() instead */ public function getLocalizedTypeLabel(object|string $entity): string { - $class = is_string($entity) ? $entity : $entity::class; - - //Check if we have a direct array entry for our entity class, then we can use it - if (isset($this->mapping[$class])) { - return $this->mapping[$class]; - } - - //Otherwise iterate over array and check for inheritance (needed when the proxy element from doctrine are passed) - foreach ($this->mapping as $class_to_check => $translation) { - if (is_a($entity, $class_to_check, true)) { - return $translation; - } - } - - //When nothing was found throw an exception - throw new EntityNotSupportedException(sprintf('No localized label for the element with type %s was found!', is_object($entity) ? $entity::class : (string) $entity)); + return $this->typeLabel($entity); } + private function resolveSynonymLabel(ElementTypes $type, ?string $locale, bool $plural): ?string + { + $locale ??= $this->translator->getLocale(); + + if ($this->synonymsSettings->isSynonymDefinedForType($type)) { + if ($plural) { + $syn = $this->synonymsSettings->getPluralSynonymForType($type, $locale); + } else { + $syn = $this->synonymsSettings->getSingularSynonymForType($type, $locale); + } + + if ($syn === null) { + //Try to fall back to english + if ($plural) { + $syn = $this->synonymsSettings->getPluralSynonymForType($type, 'en'); + } else { + $syn = $this->synonymsSettings->getSingularSynonymForType($type, 'en'); + } + } + + return $syn; + } + + return null; + } + + /** + * Gets a localized label for the type of the entity. If user defined synonyms are defined, + * these are used instead of the default labels. + * @param object|string $entity + * @param string|null $locale + * @return string + */ + public function typeLabel(object|string $entity, ?string $locale = null): string + { + $type = ElementTypes::fromValue($entity); + + return $this->resolveSynonymLabel($type, $locale, false) + ?? $this->translator->trans($type->getDefaultLabelKey(), locale: $locale); + } + + /** + * Similar to label(), but returns the plural version of the label. + * @param object|string $entity + * @param string|null $locale + * @return string + */ + public function typeLabelPlural(object|string $entity, ?string $locale = null): string + { + $type = ElementTypes::fromValue($entity); + + return $this->resolveSynonymLabel($type, $locale, true) + ?? $this->translator->trans($type->getDefaultPluralLabelKey(), locale: $locale); + } + + /** * Returns a string like in the format ElementType: ElementName. * For example this could be something like: "Part: BC547". @@ -134,7 +139,7 @@ class ElementTypeNameGenerator */ public function getTypeNameCombination(NamedElementInterface $entity, bool $use_html = false): string { - $type = $this->getLocalizedTypeLabel($entity); + $type = $this->typeLabel($entity); if ($use_html) { return '' . $type . ': ' . htmlspecialchars($entity->getName()); } @@ -144,7 +149,7 @@ class ElementTypeNameGenerator /** - * Returns a HTML formatted label for the given enitity in the format "Type: Name" (on elements with a name) and + * Returns a HTML formatted label for the given entity in the format "Type: Name" (on elements with a name) and * "Type: ID" (on elements without a name). If possible the value is given as a link to the element. * @param AbstractDBElement $entity The entity for which the label should be generated * @param bool $include_associated If set to true, the associated entity (like the part belonging to a part lot) is included in the label to give further information @@ -165,7 +170,7 @@ class ElementTypeNameGenerator } else { //Target does not have a name $tmp = sprintf( '%s: %s', - $this->getLocalizedTypeLabel($entity), + $this->typeLabel($entity), $entity->getID() ); } @@ -209,7 +214,7 @@ class ElementTypeNameGenerator { return sprintf( '%s: %s [%s]', - $this->getLocalizedTypeLabel($class), + $this->typeLabel($class), $id, $this->translator->trans('log.target_deleted') ); diff --git a/src/Services/ElementTypes.php b/src/Services/ElementTypes.php new file mode 100644 index 00000000..6ce8f851 --- /dev/null +++ b/src/Services/ElementTypes.php @@ -0,0 +1,229 @@ +. + */ + +declare(strict_types=1); + + +namespace App\Services; + +use App\Entity\Attachments\Attachment; +use App\Entity\Attachments\AttachmentType; +use App\Entity\InfoProviderSystem\BulkInfoProviderImportJob; +use App\Entity\InfoProviderSystem\BulkInfoProviderImportJobPart; +use App\Entity\LabelSystem\LabelProfile; +use App\Entity\Parameters\AbstractParameter; +use App\Entity\Parts\Category; +use App\Entity\Parts\Footprint; +use App\Entity\Parts\Manufacturer; +use App\Entity\Parts\MeasurementUnit; +use App\Entity\Parts\Part; +use App\Entity\Parts\PartAssociation; +use App\Entity\Parts\PartCustomState; +use App\Entity\Parts\PartLot; +use App\Entity\Parts\StorageLocation; +use App\Entity\Parts\Supplier; +use App\Entity\PriceInformations\Currency; +use App\Entity\PriceInformations\Orderdetail; +use App\Entity\PriceInformations\Pricedetail; +use App\Entity\ProjectSystem\Project; +use App\Entity\ProjectSystem\ProjectBOMEntry; +use App\Entity\UserSystem\Group; +use App\Entity\UserSystem\User; +use App\Exceptions\EntityNotSupportedException; +use Symfony\Contracts\Translation\TranslatableInterface; +use Symfony\Contracts\Translation\TranslatorInterface; + +enum ElementTypes: string implements TranslatableInterface +{ + case ATTACHMENT = "attachment"; + case CATEGORY = "category"; + case ATTACHMENT_TYPE = "attachment_type"; + case PROJECT = "project"; + case PROJECT_BOM_ENTRY = "project_bom_entry"; + case FOOTPRINT = "footprint"; + case MANUFACTURER = "manufacturer"; + case MEASUREMENT_UNIT = "measurement_unit"; + case PART = "part"; + case PART_LOT = "part_lot"; + case STORAGE_LOCATION = "storage_location"; + case SUPPLIER = "supplier"; + case CURRENCY = "currency"; + case ORDERDETAIL = "orderdetail"; + case PRICEDETAIL = "pricedetail"; + case GROUP = "group"; + case USER = "user"; + case PARAMETER = "parameter"; + case LABEL_PROFILE = "label_profile"; + case PART_ASSOCIATION = "part_association"; + case BULK_INFO_PROVIDER_IMPORT_JOB = "bulk_info_provider_import_job"; + case BULK_INFO_PROVIDER_IMPORT_JOB_PART = "bulk_info_provider_import_job_part"; + case PART_CUSTOM_STATE = "part_custom_state"; + + //Child classes has to become before parent classes + private const CLASS_MAPPING = [ + Attachment::class => self::ATTACHMENT, + Category::class => self::CATEGORY, + AttachmentType::class => self::ATTACHMENT_TYPE, + Project::class => self::PROJECT, + ProjectBOMEntry::class => self::PROJECT_BOM_ENTRY, + Footprint::class => self::FOOTPRINT, + Manufacturer::class => self::MANUFACTURER, + MeasurementUnit::class => self::MEASUREMENT_UNIT, + Part::class => self::PART, + PartLot::class => self::PART_LOT, + StorageLocation::class => self::STORAGE_LOCATION, + Supplier::class => self::SUPPLIER, + Currency::class => self::CURRENCY, + Orderdetail::class => self::ORDERDETAIL, + Pricedetail::class => self::PRICEDETAIL, + Group::class => self::GROUP, + User::class => self::USER, + AbstractParameter::class => self::PARAMETER, + LabelProfile::class => self::LABEL_PROFILE, + PartAssociation::class => self::PART_ASSOCIATION, + BulkInfoProviderImportJob::class => self::BULK_INFO_PROVIDER_IMPORT_JOB, + BulkInfoProviderImportJobPart::class => self::BULK_INFO_PROVIDER_IMPORT_JOB_PART, + PartCustomState::class => self::PART_CUSTOM_STATE, + ]; + + /** + * Gets the default translation key for the label of the element type (singular form). + */ + public function getDefaultLabelKey(): string + { + return match ($this) { + self::ATTACHMENT => 'attachment.label', + self::CATEGORY => 'category.label', + self::ATTACHMENT_TYPE => 'attachment_type.label', + self::PROJECT => 'project.label', + self::PROJECT_BOM_ENTRY => 'project_bom_entry.label', + self::FOOTPRINT => 'footprint.label', + self::MANUFACTURER => 'manufacturer.label', + self::MEASUREMENT_UNIT => 'measurement_unit.label', + self::PART => 'part.label', + self::PART_LOT => 'part_lot.label', + self::STORAGE_LOCATION => 'storelocation.label', + self::SUPPLIER => 'supplier.label', + self::CURRENCY => 'currency.label', + self::ORDERDETAIL => 'orderdetail.label', + self::PRICEDETAIL => 'pricedetail.label', + self::GROUP => 'group.label', + self::USER => 'user.label', + self::PARAMETER => 'parameter.label', + self::LABEL_PROFILE => 'label_profile.label', + self::PART_ASSOCIATION => 'part_association.label', + self::BULK_INFO_PROVIDER_IMPORT_JOB => 'bulk_info_provider_import_job.label', + self::BULK_INFO_PROVIDER_IMPORT_JOB_PART => 'bulk_info_provider_import_job_part.label', + self::PART_CUSTOM_STATE => 'part_custom_state.label', + }; + } + + public function getDefaultPluralLabelKey(): string + { + return match ($this) { + self::ATTACHMENT => 'attachment.labelp', + self::CATEGORY => 'category.labelp', + self::ATTACHMENT_TYPE => 'attachment_type.labelp', + self::PROJECT => 'project.labelp', + self::PROJECT_BOM_ENTRY => 'project_bom_entry.labelp', + self::FOOTPRINT => 'footprint.labelp', + self::MANUFACTURER => 'manufacturer.labelp', + self::MEASUREMENT_UNIT => 'measurement_unit.labelp', + self::PART => 'part.labelp', + self::PART_LOT => 'part_lot.labelp', + self::STORAGE_LOCATION => 'storelocation.labelp', + self::SUPPLIER => 'supplier.labelp', + self::CURRENCY => 'currency.labelp', + self::ORDERDETAIL => 'orderdetail.labelp', + self::PRICEDETAIL => 'pricedetail.labelp', + self::GROUP => 'group.labelp', + self::USER => 'user.labelp', + self::PARAMETER => 'parameter.labelp', + self::LABEL_PROFILE => 'label_profile.labelp', + self::PART_ASSOCIATION => 'part_association.labelp', + self::BULK_INFO_PROVIDER_IMPORT_JOB => 'bulk_info_provider_import_job.labelp', + self::BULK_INFO_PROVIDER_IMPORT_JOB_PART => 'bulk_info_provider_import_job_part.labelp', + self::PART_CUSTOM_STATE => 'part_custom_state.labelp', + }; + } + + /** + * Used to get a user-friendly representation of the object that can be translated. + * For this the singular default label key is used. + * @param TranslatorInterface $translator + * @param string|null $locale + * @return string + */ + public function trans(TranslatorInterface $translator, ?string $locale = null): string + { + return $translator->trans($this->getDefaultLabelKey(), locale: $locale); + } + + /** + * Determines the ElementType from a value, which can either be an enum value, an ElementTypes instance, a class name or an object instance. + * @param string|object $value + * @return self + */ + public static function fromValue(string|object $value): self + { + if ($value instanceof self) { + return $value; + } + if (is_object($value)) { + return self::fromClass($value); + } + + + //Otherwise try to parse it as enum value first + $enumValue = self::tryFrom($value); + + //Otherwise try to get it from class name + return $enumValue ?? self::fromClass($value); + } + + /** + * Determines the ElementType from a class name or object instance. + * @param string|object $class + * @throws EntityNotSupportedException if the class is not supported + * @return self + */ + public static function fromClass(string|object $class): self + { + if (is_object($class)) { + $className = get_class($class); + } else { + $className = $class; + } + + if (array_key_exists($className, self::CLASS_MAPPING)) { + return self::CLASS_MAPPING[$className]; + } + + //Otherwise we need to check for inheritance + foreach (self::CLASS_MAPPING as $entityClass => $elementType) { + if (is_a($className, $entityClass, true)) { + return $elementType; + } + } + + throw new EntityNotSupportedException(sprintf('No localized label for the element with type %s was found!', $className)); + } + +} diff --git a/src/Services/Trees/ToolsTreeBuilder.php b/src/Services/Trees/ToolsTreeBuilder.php index 56064ba4..37a09b09 100644 --- a/src/Services/Trees/ToolsTreeBuilder.php +++ b/src/Services/Trees/ToolsTreeBuilder.php @@ -38,6 +38,7 @@ use App\Entity\UserSystem\Group; use App\Entity\UserSystem\User; use App\Helpers\Trees\TreeViewNode; use App\Services\Cache\UserCacheKeyGenerator; +use App\Services\ElementTypeNameGenerator; use Symfony\Bundle\SecurityBundle\Security; use Symfony\Component\Routing\Generator\UrlGeneratorInterface; use Symfony\Contracts\Cache\ItemInterface; @@ -50,8 +51,14 @@ use Symfony\Contracts\Translation\TranslatorInterface; */ class ToolsTreeBuilder { - public function __construct(protected TranslatorInterface $translator, protected UrlGeneratorInterface $urlGenerator, protected TagAwareCacheInterface $cache, protected UserCacheKeyGenerator $keyGenerator, protected Security $security) - { + public function __construct( + protected TranslatorInterface $translator, + protected UrlGeneratorInterface $urlGenerator, + protected TagAwareCacheInterface $cache, + protected UserCacheKeyGenerator $keyGenerator, + protected Security $security, + private readonly ElementTypeNameGenerator $elementTypeNameGenerator, + ) { } /** @@ -139,7 +146,7 @@ class ToolsTreeBuilder $this->translator->trans('info_providers.search.title'), $this->urlGenerator->generate('info_providers_search') ))->setIcon('fa-treeview fa-fw fa-solid fa-cloud-arrow-down'); - + $nodes[] = (new TreeViewNode( $this->translator->trans('info_providers.bulk_import.manage_jobs'), $this->urlGenerator->generate('bulk_info_provider_manage') @@ -160,67 +167,67 @@ class ToolsTreeBuilder if ($this->security->isGranted('read', new AttachmentType())) { $nodes[] = (new TreeViewNode( - $this->translator->trans('tree.tools.edit.attachment_types'), + $this->elementTypeNameGenerator->typeLabelPlural(AttachmentType::class), $this->urlGenerator->generate('attachment_type_new') ))->setIcon('fa-fw fa-treeview fa-solid fa-file-alt'); } if ($this->security->isGranted('read', new Category())) { $nodes[] = (new TreeViewNode( - $this->translator->trans('tree.tools.edit.categories'), + $this->elementTypeNameGenerator->typeLabelPlural(Category::class), $this->urlGenerator->generate('category_new') ))->setIcon('fa-fw fa-treeview fa-solid fa-tags'); } if ($this->security->isGranted('read', new Project())) { $nodes[] = (new TreeViewNode( - $this->translator->trans('tree.tools.edit.projects'), + $this->elementTypeNameGenerator->typeLabelPlural(Project::class), $this->urlGenerator->generate('project_new') ))->setIcon('fa-fw fa-treeview fa-solid fa-archive'); } if ($this->security->isGranted('read', new Supplier())) { $nodes[] = (new TreeViewNode( - $this->translator->trans('tree.tools.edit.suppliers'), + $this->elementTypeNameGenerator->typeLabelPlural(Supplier::class), $this->urlGenerator->generate('supplier_new') ))->setIcon('fa-fw fa-treeview fa-solid fa-truck'); } if ($this->security->isGranted('read', new Manufacturer())) { $nodes[] = (new TreeViewNode( - $this->translator->trans('tree.tools.edit.manufacturer'), + $this->elementTypeNameGenerator->typeLabelPlural(Manufacturer::class), $this->urlGenerator->generate('manufacturer_new') ))->setIcon('fa-fw fa-treeview fa-solid fa-industry'); } if ($this->security->isGranted('read', new StorageLocation())) { $nodes[] = (new TreeViewNode( - $this->translator->trans('tree.tools.edit.storelocation'), + $this->elementTypeNameGenerator->typeLabelPlural(StorageLocation::class), $this->urlGenerator->generate('store_location_new') ))->setIcon('fa-fw fa-treeview fa-solid fa-cube'); } if ($this->security->isGranted('read', new Footprint())) { $nodes[] = (new TreeViewNode( - $this->translator->trans('tree.tools.edit.footprint'), + $this->elementTypeNameGenerator->typeLabelPlural(Footprint::class), $this->urlGenerator->generate('footprint_new') ))->setIcon('fa-fw fa-treeview fa-solid fa-microchip'); } if ($this->security->isGranted('read', new Currency())) { $nodes[] = (new TreeViewNode( - $this->translator->trans('tree.tools.edit.currency'), + $this->elementTypeNameGenerator->typeLabelPlural(Currency::class), $this->urlGenerator->generate('currency_new') ))->setIcon('fa-fw fa-treeview fa-solid fa-coins'); } if ($this->security->isGranted('read', new MeasurementUnit())) { $nodes[] = (new TreeViewNode( - $this->translator->trans('tree.tools.edit.measurement_unit'), + $this->elementTypeNameGenerator->typeLabelPlural(MeasurementUnit::class), $this->urlGenerator->generate('measurement_unit_new') ))->setIcon('fa-fw fa-treeview fa-solid fa-balance-scale'); } if ($this->security->isGranted('read', new LabelProfile())) { $nodes[] = (new TreeViewNode( - $this->translator->trans('tree.tools.edit.label_profile'), + $this->elementTypeNameGenerator->typeLabelPlural(LabelProfile::class), $this->urlGenerator->generate('label_profile_new') ))->setIcon('fa-fw fa-treeview fa-solid fa-qrcode'); } if ($this->security->isGranted('read', new PartCustomState())) { $nodes[] = (new TreeViewNode( - $this->translator->trans('tree.tools.edit.part_custom_state'), + $this->elementTypeNameGenerator->typeLabelPlural(PartCustomState::class), $this->urlGenerator->generate('part_custom_state_new') ))->setIcon('fa-fw fa-treeview fa-solid fa-tools'); } diff --git a/src/Services/Trees/TreeViewGenerator.php b/src/Services/Trees/TreeViewGenerator.php index 73ffa5ba..d55c87b7 100644 --- a/src/Services/Trees/TreeViewGenerator.php +++ b/src/Services/Trees/TreeViewGenerator.php @@ -34,9 +34,9 @@ use App\Entity\ProjectSystem\Project; use App\Helpers\Trees\TreeViewNode; use App\Helpers\Trees\TreeViewNodeIterator; use App\Repository\NamedDBElementRepository; -use App\Repository\StructuralDBElementRepository; use App\Services\Cache\ElementCacheTagGenerator; use App\Services\Cache\UserCacheKeyGenerator; +use App\Services\ElementTypeNameGenerator; use App\Services\EntityURLGenerator; use App\Settings\BehaviorSettings\SidebarSettings; use Doctrine\ORM\EntityManagerInterface; @@ -67,6 +67,7 @@ class TreeViewGenerator protected TranslatorInterface $translator, private readonly UrlGeneratorInterface $router, private readonly SidebarSettings $sidebarSettings, + private readonly ElementTypeNameGenerator $elementTypeNameGenerator ) { $this->rootNodeEnabled = $this->sidebarSettings->rootNodeEnabled; $this->rootNodeExpandedByDefault = $this->sidebarSettings->rootNodeExpanded; @@ -212,15 +213,7 @@ class TreeViewGenerator protected function entityClassToRootNodeString(string $class): string { - return match ($class) { - Category::class => $this->translator->trans('category.labelp'), - StorageLocation::class => $this->translator->trans('storelocation.labelp'), - Footprint::class => $this->translator->trans('footprint.labelp'), - Manufacturer::class => $this->translator->trans('manufacturer.labelp'), - Supplier::class => $this->translator->trans('supplier.labelp'), - Project::class => $this->translator->trans('project.labelp'), - default => $this->translator->trans('tree.root_node.text'), - }; + return $this->elementTypeNameGenerator->typeLabelPlural($class); } protected function entityClassToRootNodeIcon(string $class): ?string diff --git a/src/Settings/AppSettings.php b/src/Settings/AppSettings.php index 42831d08..14d9395e 100644 --- a/src/Settings/AppSettings.php +++ b/src/Settings/AppSettings.php @@ -47,6 +47,12 @@ class AppSettings #[EmbeddedSettings()] public ?InfoProviderSettings $infoProviders = null; + #[EmbeddedSettings] + public ?SynonymSettings $synonyms = null; + #[EmbeddedSettings()] public ?MiscSettings $miscSettings = null; + + + } diff --git a/src/Settings/SynonymSettings.php b/src/Settings/SynonymSettings.php new file mode 100644 index 00000000..25fc87e9 --- /dev/null +++ b/src/Settings/SynonymSettings.php @@ -0,0 +1,116 @@ +. + */ + +declare(strict_types=1); + +namespace App\Settings; + +use App\Form\Settings\TypeSynonymsCollectionType; +use App\Services\ElementTypes; +use Jbtronics\SettingsBundle\ParameterTypes\ArrayType; +use Jbtronics\SettingsBundle\ParameterTypes\SerializeType; +use Jbtronics\SettingsBundle\Settings\Settings; +use Jbtronics\SettingsBundle\Settings\SettingsParameter; +use Jbtronics\SettingsBundle\Settings\SettingsTrait; +use Symfony\Component\Translation\TranslatableMessage as TM; +use Symfony\Component\Validator\Constraints as Assert; + +#[Settings(label: new TM("settings.synonyms"), description: "settings.synonyms.help")] +#[SettingsIcon("fa-language")] +class SynonymSettings +{ + use SettingsTrait; + + #[SettingsParameter( + ArrayType::class, + label: new TM("settings.synonyms.type_synonyms"), + description: new TM("settings.synonyms.type_synonyms.help"), + options: ['type' => SerializeType::class], + formType: TypeSynonymsCollectionType::class, + formOptions: [ + 'required' => false, + ], + )] + #[Assert\Type('array')] + #[Assert\All([new Assert\Type('array')])] + /** + * @var array> $typeSynonyms + * An array of the form: [ + * 'category' => [ + * 'en' => ['singular' => 'Category', 'plural' => 'Categories'], + * 'de' => ['singular' => 'Kategorie', 'plural' => 'Kategorien'], + * ], + * 'manufacturer' => [ + * 'en' => ['singular' => 'Manufacturer', 'plural' =>'Manufacturers'], + * ], + * ] + */ + public array $typeSynonyms = []; + + /** + * Checks if there is any synonym defined for the given type (no matter which language). + * @param ElementTypes $type + * @return bool + */ + public function isSynonymDefinedForType(ElementTypes $type): bool + { + return isset($this->typeSynonyms[$type->value]) && count($this->typeSynonyms[$type->value]) > 0; + } + + /** + * Returns the singular synonym for the given type and locale, or null if none is defined. + * @param ElementTypes $type + * @param string $locale + * @return string|null + */ + public function getSingularSynonymForType(ElementTypes $type, string $locale): ?string + { + return $this->typeSynonyms[$type->value][$locale]['singular'] ?? null; + } + + /** + * Returns the plural synonym for the given type and locale, or null if none is defined. + * @param ElementTypes $type + * @param string|null $locale + * @return string|null + */ + public function getPluralSynonymForType(ElementTypes $type, ?string $locale): ?string + { + return $this->typeSynonyms[$type->value][$locale]['plural'] + ?? $this->typeSynonyms[$type->value][$locale]['singular'] + ?? null; + } + + /** + * Sets a synonym for the given type and locale. + * @param ElementTypes $type + * @param string $locale + * @param string $singular + * @param string $plural + * @return void + */ + public function setSynonymForType(ElementTypes $type, string $locale, string $singular, string $plural): void + { + $this->typeSynonyms[$type->value][$locale] = [ + 'singular' => $singular, + 'plural' => $plural, + ]; + } +} diff --git a/src/Settings/SystemSettings/LocalizationSettings.php b/src/Settings/SystemSettings/LocalizationSettings.php index 7c83d1ef..c6780c6c 100644 --- a/src/Settings/SystemSettings/LocalizationSettings.php +++ b/src/Settings/SystemSettings/LocalizationSettings.php @@ -23,7 +23,7 @@ declare(strict_types=1); namespace App\Settings\SystemSettings; -use App\Form\Type\LanguageMenuEntriesType; +use App\Form\Settings\LanguageMenuEntriesType; use App\Form\Type\LocaleSelectType; use App\Settings\SettingsIcon; use Jbtronics\SettingsBundle\Metadata\EnvVarMode; diff --git a/src/Settings/SystemSettings/SystemSettings.php b/src/Settings/SystemSettings/SystemSettings.php index 71dd963d..8cbeb560 100644 --- a/src/Settings/SystemSettings/SystemSettings.php +++ b/src/Settings/SystemSettings/SystemSettings.php @@ -33,6 +33,8 @@ class SystemSettings #[EmbeddedSettings()] public ?LocalizationSettings $localization = null; + + #[EmbeddedSettings()] public ?CustomizationSettings $customization = null; diff --git a/src/Twig/EntityExtension.php b/src/Twig/EntityExtension.php index b5e5c3ca..427a39b5 100644 --- a/src/Twig/EntityExtension.php +++ b/src/Twig/EntityExtension.php @@ -76,6 +76,8 @@ final class EntityExtension extends AbstractExtension /* Gets a human readable label for the type of the given entity */ new TwigFunction('entity_type_label', fn(object|string $entity): string => $this->nameGenerator->getLocalizedTypeLabel($entity)), + new TwigFunction('type_label', fn(object|string $entity): string => $this->nameGenerator->typeLabel($entity)), + new TwigFunction('type_label_p', fn(object|string $entity): string => $this->nameGenerator->typeLabelPlural($entity)), ]; } diff --git a/templates/admin/attachment_type_admin.html.twig b/templates/admin/attachment_type_admin.html.twig index 06a8c09d..87a053af 100644 --- a/templates/admin/attachment_type_admin.html.twig +++ b/templates/admin/attachment_type_admin.html.twig @@ -15,4 +15,4 @@ {% block new_title %} {% trans %}attachment_type.new{% endtrans %} -{% endblock %} \ No newline at end of file +{% endblock %} diff --git a/templates/admin/category_admin.html.twig b/templates/admin/category_admin.html.twig index d87cee7f..3ddc1472 100644 --- a/templates/admin/category_admin.html.twig +++ b/templates/admin/category_admin.html.twig @@ -1,7 +1,7 @@ {% extends "admin/base_admin.html.twig" %} {% block card_title %} - {% trans %}category.labelp{% endtrans %} + {{ type_label_p(entity) }} {% endblock %} {% block additional_pills %} @@ -61,4 +61,4 @@ {{ form_row(form.eda_info.kicad_symbol) }} -{% endblock %} \ No newline at end of file +{% endblock %} diff --git a/templates/admin/currency_admin.html.twig b/templates/admin/currency_admin.html.twig index fbd3822c..a5d59970 100644 --- a/templates/admin/currency_admin.html.twig +++ b/templates/admin/currency_admin.html.twig @@ -3,7 +3,7 @@ {% import "vars.macro.twig" as vars %} {% block card_title %} - {% trans %}currency.caption{% endtrans %} + {{ type_label_p(entity) }} {% endblock %} {% block additional_controls %} @@ -41,4 +41,4 @@ {% block new_title %} {% trans %}currency.new{% endtrans %} -{% endblock %} \ No newline at end of file +{% endblock %} diff --git a/templates/admin/footprint_admin.html.twig b/templates/admin/footprint_admin.html.twig index a2c3e4af..1ed39e9f 100644 --- a/templates/admin/footprint_admin.html.twig +++ b/templates/admin/footprint_admin.html.twig @@ -1,7 +1,7 @@ {% extends "admin/base_admin.html.twig" %} {% block card_title %} - {% trans %}footprint.labelp{% endtrans %} + {{ type_label_p(entity) }} {% endblock %} {% block master_picture_block %} @@ -34,4 +34,4 @@ {{ form_row(form.eda_info.kicad_footprint) }} -{% endblock %} \ No newline at end of file +{% endblock %} diff --git a/templates/admin/group_admin.html.twig b/templates/admin/group_admin.html.twig index 91975524..831c08d5 100644 --- a/templates/admin/group_admin.html.twig +++ b/templates/admin/group_admin.html.twig @@ -1,7 +1,7 @@ {% extends "admin/base_admin.html.twig" %} {% block card_title %} - {% trans %}group.edit.caption{% endtrans %} + {{ type_label_p(entity) }} {% endblock %} @@ -27,4 +27,4 @@ {% block new_title %} {% trans %}group.new{% endtrans %} -{% endblock %} \ No newline at end of file +{% endblock %} diff --git a/templates/admin/label_profile_admin.html.twig b/templates/admin/label_profile_admin.html.twig index 10c2320f..8702b18a 100644 --- a/templates/admin/label_profile_admin.html.twig +++ b/templates/admin/label_profile_admin.html.twig @@ -1,7 +1,7 @@ {% extends "admin/base_admin.html.twig" %} {% block card_title %} - {% trans %}label_profile.caption{% endtrans %} + {{ type_label_p(entity) }} {% endblock %} {% block additional_pills %} @@ -58,4 +58,4 @@ {% block new_title %} {% trans %}label_profile.new{% endtrans %} -{% endblock %} \ No newline at end of file +{% endblock %} diff --git a/templates/admin/manufacturer_admin.html.twig b/templates/admin/manufacturer_admin.html.twig index 5db892c0..4f8f1c2b 100644 --- a/templates/admin/manufacturer_admin.html.twig +++ b/templates/admin/manufacturer_admin.html.twig @@ -1,7 +1,7 @@ {% extends "admin/base_company_admin.html.twig" %} {% block card_title %} - {% trans %}manufacturer.caption{% endtrans %} + {{ type_label_p(entity) }} {% endblock %} {% block edit_title %} @@ -10,4 +10,4 @@ {% block new_title %} {% trans %}manufacturer.new{% endtrans %} -{% endblock %} \ No newline at end of file +{% endblock %} diff --git a/templates/admin/measurement_unit_admin.html.twig b/templates/admin/measurement_unit_admin.html.twig index 31748509..14df7364 100644 --- a/templates/admin/measurement_unit_admin.html.twig +++ b/templates/admin/measurement_unit_admin.html.twig @@ -1,7 +1,7 @@ {% extends "admin/base_admin.html.twig" %} {% block card_title %} - {% trans %}measurement_unit.caption{% endtrans %} + {{ type_label_p(entity) }} {% endblock %} {% block edit_title %} diff --git a/templates/admin/part_custom_state_admin.html.twig b/templates/admin/part_custom_state_admin.html.twig index 004ceb65..9d857646 100644 --- a/templates/admin/part_custom_state_admin.html.twig +++ b/templates/admin/part_custom_state_admin.html.twig @@ -1,7 +1,7 @@ {% extends "admin/base_admin.html.twig" %} {% block card_title %} - {% trans %}part_custom_state.caption{% endtrans %} + {{ type_label_p(entity) }} {% endblock %} {% block edit_title %} diff --git a/templates/admin/project_admin.html.twig b/templates/admin/project_admin.html.twig index 1a995069..d199b63c 100644 --- a/templates/admin/project_admin.html.twig +++ b/templates/admin/project_admin.html.twig @@ -3,7 +3,7 @@ {# @var entity App\Entity\ProjectSystem\Project #} {% block card_title %} - {% trans %}project.caption{% endtrans %} + {{ type_label_p(entity) }} {% endblock %} {% block edit_title %} @@ -59,4 +59,4 @@ {% endif %} -{% endblock %} \ No newline at end of file +{% endblock %} diff --git a/templates/admin/storelocation_admin.html.twig b/templates/admin/storelocation_admin.html.twig index c93339dc..b01ecc73 100644 --- a/templates/admin/storelocation_admin.html.twig +++ b/templates/admin/storelocation_admin.html.twig @@ -2,7 +2,7 @@ {% import "label_system/dropdown_macro.html.twig" as dropdown %} {% block card_title %} - {% trans %}storelocation.labelp{% endtrans %} + {{ type_label_p(entity) }} {% endblock %} {% block additional_controls %} @@ -38,4 +38,4 @@ {% block new_title %} {% trans %}storelocation.new{% endtrans %} -{% endblock %} \ No newline at end of file +{% endblock %} diff --git a/templates/admin/supplier_admin.html.twig b/templates/admin/supplier_admin.html.twig index ce38a5ca..d0ca85aa 100644 --- a/templates/admin/supplier_admin.html.twig +++ b/templates/admin/supplier_admin.html.twig @@ -1,7 +1,7 @@ {% extends "admin/base_company_admin.html.twig" %} {% block card_title %} - {% trans %}supplier.caption{% endtrans %} + {{ type_label_p(entity) }} {% endblock %} {% block additional_panes %} @@ -19,4 +19,4 @@ {% block new_title %} {% trans %}supplier.new{% endtrans %} -{% endblock %} \ No newline at end of file +{% endblock %} diff --git a/templates/admin/user_admin.html.twig b/templates/admin/user_admin.html.twig index 772b42d9..9b241e56 100644 --- a/templates/admin/user_admin.html.twig +++ b/templates/admin/user_admin.html.twig @@ -5,7 +5,7 @@ {# @var entity \App\Entity\UserSystem\User #} {% block card_title %} - {% trans %}user.edit.caption{% endtrans %} + {{ type_label_p(entity) }} {% endblock %} {% block comment %}{% endblock %} @@ -111,4 +111,4 @@ {% block preview_picture %} -{% endblock %} \ No newline at end of file +{% endblock %} diff --git a/templates/components/tree_macros.html.twig b/templates/components/tree_macros.html.twig index 366d42fe..aaa871ea 100644 --- a/templates/components/tree_macros.html.twig +++ b/templates/components/tree_macros.html.twig @@ -1,13 +1,15 @@ {% macro sidebar_dropdown() %} + {% set currentLocale = app.request.locale %} + {# Format is [mode, route, label, show_condition] #} {% set data_sources = [ - ['categories', path('tree_category_root'), 'category.labelp', is_granted('@categories.read') and is_granted('@parts.read')], - ['locations', path('tree_location_root'), 'storelocation.labelp', is_granted('@storelocations.read') and is_granted('@parts.read')], - ['footprints', path('tree_footprint_root'), 'footprint.labelp', is_granted('@footprints.read') and is_granted('@parts.read')], - ['manufacturers', path('tree_manufacturer_root'), 'manufacturer.labelp', is_granted('@manufacturers.read') and is_granted('@parts.read')], - ['suppliers', path('tree_supplier_root'), 'supplier.labelp', is_granted('@suppliers.read') and is_granted('@parts.read')], - ['projects', path('tree_device_root'), 'project.labelp', is_granted('@projects.read')], - ['tools', path('tree_tools'), 'tools.label', true], + ['categories', path('tree_category_root'), '@category@@', is_granted('@categories.read') and is_granted('@parts.read')], + ['locations', path('tree_location_root'), '@storage_location@@', is_granted('@storelocations.read') and is_granted('@parts.read'), ], + ['footprints', path('tree_footprint_root'), '@footprint@@', is_granted('@footprints.read') and is_granted('@parts.read')], + ['manufacturers', path('tree_manufacturer_root'), '@manufacturer@@', is_granted('@manufacturers.read') and is_granted('@parts.read'), 'manufacturer'], + ['suppliers', path('tree_supplier_root'), '@supplier@@', is_granted('@suppliers.read') and is_granted('@parts.read'), 'supplier'], + ['projects', path('tree_device_root'), '@project@@', is_granted('@projects.read'), 'project'], + ['tools', path('tree_tools'), 'tools.label', true, 'tool'], ] %} @@ -18,9 +20,20 @@ {% for source in data_sources %} {% if source[3] %} {# show_condition #} -
  • +
  • + {% if source[2] starts with '@' %} + {% set label = type_label_p(source[2]|replace({'@': ''})) %} + {% else %} + {% set label = source[2]|trans %} + {% endif %} + + +
  • {% endif %} {% endfor %} {% endmacro %} @@ -61,4 +74,4 @@
    -{% endmacro %} \ No newline at end of file +{% endmacro %} diff --git a/templates/form/synonyms_collection.html.twig b/templates/form/synonyms_collection.html.twig new file mode 100644 index 00000000..ee69dffc --- /dev/null +++ b/templates/form/synonyms_collection.html.twig @@ -0,0 +1,59 @@ +{% macro renderForm(child) %} +
    + {% form_theme child "form/vertical_bootstrap_layout.html.twig" %} +
    +
    {{ form_row(child.dataSource) }}
    +
    {{ form_row(child.locale) }}
    +
    {{ form_row(child.translation_singular) }}
    +
    {{ form_row(child.translation_plural) }}
    +
    + +
    +
    +
    +{% endmacro %} + +{% block type_synonyms_collection_widget %} + {% set _attrs = attr|default({}) %} + {% set _attrs = _attrs|merge({ + class: (_attrs.class|default('') ~ ' type_synonyms_collection-widget')|trim + }) %} + + {% set has_proto = prototype is defined %} + {% if has_proto %} + {% set __proto %} + {{- _self.renderForm(prototype) -}} + {% endset %} + {% set _proto_html = __proto|e('html_attr') %} + {% set _proto_name = form.vars.prototype_name|default('__name__') %} + {% set _index = form|length %} + {% endif %} + +
    +
    +
    {% trans%}settings.synonyms.type_synonym.type{% endtrans%}
    +
    {% trans%}settings.synonyms.type_synonym.language{% endtrans%}
    +
    {% trans%}settings.synonyms.type_synonym.translation_singular{% endtrans%}
    +
    {% trans%}settings.synonyms.type_synonym.translation_plural{% endtrans%}
    +
    +
    + +
    + {% for child in form %} + {{ _self.renderForm(child) }} + {% endfor %} +
    + +
    +{% endblock %} diff --git a/templates/form/vertical_bootstrap_layout.html.twig b/templates/form/vertical_bootstrap_layout.html.twig new file mode 100644 index 00000000..5f41d82e --- /dev/null +++ b/templates/form/vertical_bootstrap_layout.html.twig @@ -0,0 +1,26 @@ +{% extends 'bootstrap_5_layout.html.twig' %} + + +{%- block choice_widget_collapsed -%} + {# Only add the BS5 form-select class if we dont use bootstrap-selectpicker #} + {# {% if attr["data-controller"] is defined and attr["data-controller"] not in ["elements--selectpicker"] %} + {%- set attr = attr|merge({class: (attr.class|default('') ~ ' form-select')|trim}) -%} + {% else %} + {# If it is an selectpicker add form-control class to fill whole width + {%- set attr = attr|merge({class: (attr.class|default('') ~ ' form-control')|trim}) -%} + {% endif %} + #} + + {%- set attr = attr|merge({class: (attr.class|default('') ~ ' form-select')|trim}) -%} + + {# If no data-controller was explictly defined add data-controller=elements--select #} + {% if attr["data-controller"] is not defined %} + {%- set attr = attr|merge({"data-controller": "elements--select"}) -%} + + {% if attr["data-empty-message"] is not defined %} + {%- set attr = attr|merge({"data-empty-message": ("selectpicker.nothing_selected"|trans)}) -%} + {% endif %} + {% endif %} + + {{- block("choice_widget_collapsed", "bootstrap_base_layout.html.twig") -}} +{%- endblock choice_widget_collapsed -%} diff --git a/templates/settings/settings.html.twig b/templates/settings/settings.html.twig index 5ddbd900..96e0f209 100644 --- a/templates/settings/settings.html.twig +++ b/templates/settings/settings.html.twig @@ -36,7 +36,7 @@ {% for section_widget in tab_widget %} {% set settings_object = section_widget.vars.value %} - {% if section_widget.vars.compound ?? false %} + {% if section_widget.vars.embedded_settings_metadata is defined %} {# Check if we have nested embedded settings or not #}
    diff --git a/tests/EventListener/RegisterSynonymsAsTranslationParametersTest.php b/tests/EventListener/RegisterSynonymsAsTranslationParametersTest.php new file mode 100644 index 00000000..d08edecb --- /dev/null +++ b/tests/EventListener/RegisterSynonymsAsTranslationParametersTest.php @@ -0,0 +1,49 @@ +. + */ + +namespace App\Tests\EventListener; + +use App\EventListener\RegisterSynonymsAsTranslationParametersListener; +use PHPUnit\Framework\TestCase; +use Symfony\Bundle\FrameworkBundle\Test\KernelTestCase; + +class RegisterSynonymsAsTranslationParametersTest extends KernelTestCase +{ + + private RegisterSynonymsAsTranslationParametersListener $listener; + + public function setUp(): void + { + self::bootKernel(); + $this->listener = self::getContainer()->get(RegisterSynonymsAsTranslationParametersListener::class); + } + + public function testGetSynonymPlaceholders(): void + { + $placeholders = $this->listener->getSynonymPlaceholders(); + + $this->assertIsArray($placeholders); + $this->assertSame('Part', $placeholders['{part}']); + $this->assertSame('Parts', $placeholders['{{part}}']); + //Lowercase versions: + $this->assertSame('part', $placeholders['[part]']); + $this->assertSame('parts', $placeholders['[[part]]']); + } +} diff --git a/tests/Services/ElementTypeNameGeneratorTest.php b/tests/Services/ElementTypeNameGeneratorTest.php index f99b0676..8739dd06 100644 --- a/tests/Services/ElementTypeNameGeneratorTest.php +++ b/tests/Services/ElementTypeNameGeneratorTest.php @@ -30,20 +30,27 @@ use App\Entity\Parts\Category; use App\Entity\Parts\Part; use App\Exceptions\EntityNotSupportedException; use App\Services\ElementTypeNameGenerator; +use App\Services\ElementTypes; use App\Services\Formatters\AmountFormatter; +use App\Settings\SynonymSettings; use Symfony\Bundle\FrameworkBundle\Test\WebTestCase; class ElementTypeNameGeneratorTest extends WebTestCase { - /** - * @var AmountFormatter - */ - protected $service; + protected ElementTypeNameGenerator $service; + private SynonymSettings $synonymSettings; protected function setUp(): void { //Get an service instance. $this->service = self::getContainer()->get(ElementTypeNameGenerator::class); + $this->synonymSettings = self::getContainer()->get(SynonymSettings::class); + } + + protected function tearDown(): void + { + //Clean up synonym settings + $this->synonymSettings->typeSynonyms = []; } public function testGetLocalizedTypeNameCombination(): void @@ -84,4 +91,30 @@ class ElementTypeNameGeneratorTest extends WebTestCase } }); } + + public function testTypeLabel(): void + { + //If no synonym is defined, the default label should be used + $this->assertSame('Part', $this->service->typeLabel(Part::class)); + $this->assertSame('Part', $this->service->typeLabel(new Part())); + $this->assertSame('Part', $this->service->typeLabel(ElementTypes::PART)); + $this->assertSame('Part', $this->service->typeLabel('part')); + + //Define a synonym for parts in english + $this->synonymSettings->setSynonymForType(ElementTypes::PART, 'en', 'Singular', 'Plurals'); + $this->assertSame('Singular', $this->service->typeLabel(Part::class)); + } + + public function testTypeLabelPlural(): void + { + //If no synonym is defined, the default label should be used + $this->assertSame('Parts', $this->service->typeLabelPlural(Part::class)); + $this->assertSame('Parts', $this->service->typeLabelPlural(new Part())); + $this->assertSame('Parts', $this->service->typeLabelPlural(ElementTypes::PART)); + $this->assertSame('Parts', $this->service->typeLabelPlural('part')); + + //Define a synonym for parts in english + $this->synonymSettings->setSynonymForType(ElementTypes::PART, 'en', 'Singular', 'Plurals'); + $this->assertSame('Plurals', $this->service->typeLabelPlural(Part::class)); + } } diff --git a/tests/Services/ElementTypesTest.php b/tests/Services/ElementTypesTest.php new file mode 100644 index 00000000..d4fa77ff --- /dev/null +++ b/tests/Services/ElementTypesTest.php @@ -0,0 +1,79 @@ +. + */ + +namespace App\Tests\Services; + +use App\Entity\Parameters\CategoryParameter; +use App\Entity\Parts\Category; +use App\Exceptions\EntityNotSupportedException; +use App\Services\ElementTypes; +use PHPUnit\Framework\TestCase; + +class ElementTypesTest extends TestCase +{ + + public function testFromClass(): void + { + $this->assertSame(ElementTypes::CATEGORY, ElementTypes::fromClass(Category::class)); + $this->assertSame(ElementTypes::CATEGORY, ElementTypes::fromClass(new Category())); + + //Should also work with subclasses + $this->assertSame(ElementTypes::PARAMETER, ElementTypes::fromClass(CategoryParameter::class)); + $this->assertSame(ElementTypes::PARAMETER, ElementTypes::fromClass(new CategoryParameter())); + } + + public function testFromClassNotExisting(): void + { + $this->expectException(EntityNotSupportedException::class); + ElementTypes::fromClass(\LogicException::class); + } + + public function testFromValue(): void + { + //By enum value + $this->assertSame(ElementTypes::CATEGORY, ElementTypes::fromValue('category')); + $this->assertSame(ElementTypes::ATTACHMENT, ElementTypes::fromValue('attachment')); + + //From enum instance + $this->assertSame(ElementTypes::CATEGORY, ElementTypes::fromValue(ElementTypes::CATEGORY)); + + //From class string + $this->assertSame(ElementTypes::CATEGORY, ElementTypes::fromValue(Category::class)); + $this->assertSame(ElementTypes::PARAMETER, ElementTypes::fromValue(CategoryParameter::class)); + + //From class instance + $this->assertSame(ElementTypes::CATEGORY, ElementTypes::fromValue(new Category())); + $this->assertSame(ElementTypes::PARAMETER, ElementTypes::fromValue(new CategoryParameter())); + } + + public function testGetDefaultLabelKey(): void + { + $this->assertSame('category.label', ElementTypes::CATEGORY->getDefaultLabelKey()); + $this->assertSame('attachment.label', ElementTypes::ATTACHMENT->getDefaultLabelKey()); + } + + public function testGetDefaultPluralLabelKey(): void + { + $this->assertSame('category.labelp', ElementTypes::CATEGORY->getDefaultPluralLabelKey()); + $this->assertSame('attachment.labelp', ElementTypes::ATTACHMENT->getDefaultPluralLabelKey()); + } + + +} diff --git a/tests/Settings/SynonymSettingsTest.php b/tests/Settings/SynonymSettingsTest.php new file mode 100644 index 00000000..2d1407ac --- /dev/null +++ b/tests/Settings/SynonymSettingsTest.php @@ -0,0 +1,76 @@ +. + */ + +namespace App\Tests\Settings; + +use App\Services\ElementTypes; +use App\Settings\SynonymSettings; +use App\Tests\SettingsTestHelper; +use PHPUnit\Framework\TestCase; + +class SynonymSettingsTest extends TestCase +{ + + public function testGetSingularSynonymForType(): void + { + $settings = SettingsTestHelper::createSettingsDummy(SynonymSettings::class); + $settings->typeSynonyms['category'] = [ + 'en' => ['singular' => 'Category', 'plural' => 'Categories'], + 'de' => ['singular' => 'Kategorie', 'plural' => 'Kategorien'], + ]; + + $this->assertEquals('Category', $settings->getSingularSynonymForType(ElementTypes::CATEGORY, 'en')); + $this->assertEquals('Kategorie', $settings->getSingularSynonymForType(ElementTypes::CATEGORY, 'de')); + + //If no synonym is defined, it should return null + $this->assertNull($settings->getSingularSynonymForType(ElementTypes::MANUFACTURER, 'en')); + } + + public function testIsSynonymDefinedForType(): void + { + $settings = SettingsTestHelper::createSettingsDummy(SynonymSettings::class); + $settings->typeSynonyms['category'] = [ + 'en' => ['singular' => 'Category', 'plural' => 'Categories'], + 'de' => ['singular' => 'Kategorie', 'plural' => 'Kategorien'], + ]; + + $settings->typeSynonyms['supplier'] = []; + + $this->assertTrue($settings->isSynonymDefinedForType(ElementTypes::CATEGORY)); + $this->assertFalse($settings->isSynonymDefinedForType(ElementTypes::FOOTPRINT)); + $this->assertFalse($settings->isSynonymDefinedForType(ElementTypes::SUPPLIER)); + } + + public function testGetPluralSynonymForType(): void + { + $settings = SettingsTestHelper::createSettingsDummy(SynonymSettings::class); + $settings->typeSynonyms['category'] = [ + 'en' => ['singular' => 'Category', 'plural' => 'Categories'], + 'de' => ['singular' => 'Kategorie',], + ]; + + $this->assertEquals('Categories', $settings->getPluralSynonymForType(ElementTypes::CATEGORY, 'en')); + //Fallback to singular if no plural is defined + $this->assertEquals('Kategorie', $settings->getPluralSynonymForType(ElementTypes::CATEGORY, 'de')); + + //If no synonym is defined, it should return null + $this->assertNull($settings->getPluralSynonymForType(ElementTypes::MANUFACTURER, 'en')); + } +} diff --git a/translations/messages.en.xlf b/translations/messages.en.xlf index a5d86338..db4370f4 100644 --- a/translations/messages.en.xlf +++ b/translations/messages.en.xlf @@ -97,16 +97,6 @@ New category - - - Part-DB1\templates\AdminPages\CurrencyAdmin.html.twig:4 - Part-DB1\templates\AdminPages\CurrencyAdmin.html.twig:4 - - - currency.caption - Currency - - Part-DB1\templates\AdminPages\CurrencyAdmin.html.twig:12 @@ -418,16 +408,6 @@ New footprint - - - Part-DB1\templates\AdminPages\GroupAdmin.html.twig:4 - Part-DB1\templates\AdminPages\GroupAdmin.html.twig:4 - - - group.edit.caption - Groups - - Part-DB1\templates\AdminPages\GroupAdmin.html.twig:9 @@ -460,15 +440,6 @@ New group - - - Part-DB1\templates\AdminPages\LabelProfileAdmin.html.twig:4 - - - label_profile.caption - Label profiles - - Part-DB1\templates\AdminPages\LabelProfileAdmin.html.twig:8 @@ -507,17 +478,6 @@ New label profile - - - Part-DB1\templates\AdminPages\ManufacturerAdmin.html.twig:4 - Part-DB1\templates\AdminPages\ManufacturerAdmin.html.twig:4 - templates\AdminPages\ManufacturerAdmin.html.twig:4 - - - manufacturer.caption - Manufacturers - - Part-DB1\templates\AdminPages\ManufacturerAdmin.html.twig:8 @@ -538,22 +498,6 @@ New manufacturer - - - Part-DB1\templates\AdminPages\MeasurementUnitAdmin.html.twig:4 - Part-DB1\templates\AdminPages\MeasurementUnitAdmin.html.twig:4 - - - measurement_unit.caption - Measurement Unit - - - - - part_custom_state.caption - Custom part states - - Part-DB1\templates\AdminPages\StorelocationAdmin.html.twig:5 @@ -620,16 +564,6 @@ New supplier - - - Part-DB1\templates\AdminPages\UserAdmin.html.twig:8 - Part-DB1\templates\AdminPages\UserAdmin.html.twig:8 - - - user.edit.caption - Users - - Part-DB1\templates\AdminPages\UserAdmin.html.twig:14 @@ -4897,7 +4831,7 @@ If you have done this incorrectly or if a computer is no longer trusted, you can Measurement Unit - + part.table.partCustomState Custom part state @@ -5767,7 +5701,7 @@ If you have done this incorrectly or if a computer is no longer trusted, you can Measuring unit - + part.edit.partCustomState Custom part state @@ -6060,7 +5994,7 @@ If you have done this incorrectly or if a computer is no longer trusted, you can Measurement unit - + part_custom_state.label Custom part state @@ -6309,7 +6243,7 @@ If you have done this incorrectly or if a computer is no longer trusted, you can Measurement Unit - + tree.tools.edit.part_custom_state Custom part states @@ -7724,16 +7658,6 @@ Element 1 -> Element 1.2]]> System - - - obsolete - obsolete - - - perm.parts - Parts - - obsolete @@ -7994,16 +7918,6 @@ Element 1 -> Element 1.2]]> Orders - - - obsolete - obsolete - - - perm.storelocations - Storage locations - - obsolete @@ -8024,66 +7938,6 @@ Element 1 -> Element 1.2]]> List parts - - - obsolete - obsolete - - - perm.part.footprints - Footprints - - - - - obsolete - obsolete - - - perm.part.categories - Categories - - - - - obsolete - obsolete - - - perm.part.supplier - Suppliers - - - - - obsolete - obsolete - - - perm.part.manufacturers - Manufacturers - - - - - obsolete - obsolete - - - perm.projects - Projects - - - - - obsolete - obsolete - - - perm.part.attachment_types - Attachment types - - obsolete @@ -8594,12 +8448,6 @@ Element 1 -> Element 1.2]]> Measurement unit - - - perm.part_custom_states - Custom part state - - obsolete @@ -10995,7 +10843,7 @@ Element 1 -> Element 1.2]]> Measuring Unit - + log.element_edited.changed_fields.partCustomState Custom part state @@ -11265,13 +11113,13 @@ Element 1 -> Element 1.2]]> Edit Measurement Unit - + part_custom_state.new New custom part state - + part_custom_state.edit Edit custom part state @@ -14406,31 +14254,6 @@ Please note, that you can not impersonate a disabled user. If you try you will g - - - project.builds.no_bom_entries - Project has no BOM entries - - - - - settings.behavior.sidebar.data_structure_nodes_table_include_children - Tables should include children nodes by default - - - - - settings.behavior.sidebar.data_structure_nodes_table_include_children.help - If checked, the part tables for categories, footprints, etc. should include all parts of child categories. If not checked, only parts that strictly belong to the clicked node are shown. - - - - - info_providers.search.error.oauth_reconnect - You need to reconnect OAuth for following providers: %provider% -You can do this in the provider info list. - - project.builds.no_bom_entries @@ -14468,5 +14291,126 @@ You can do this in the provider info list. A PCRE-compatible regular expression every IPN has to fulfill. Leave empty to allow all everything as IPN. + + + user.labelp + Users + + + + + currency.labelp + Currencies + + + + + measurement_unit.labelp + Measurement units + + + + + attachment_type.labelp + Attachment types + + + + + label_profile.labelp + Label profiles + + + + + part_custom_state.labelp + Custom part states + + + + + group.labelp + Groups + + + + + settings.synonyms.type_synonym.type + Type + + + + + settings.synonyms.type_synonym.language + Language + + + + + settings.synonyms.type_synonym.translation_singular + Translation Singular + + + + + settings.synonyms.type_synonym.translation_plural + Translation Plural + + + + + settings.synonyms.type_synonym.add_entry + Add entry + + + + + settings.synonyms.type_synonym.remove_entry + Remove entry + + + + + settings.synonyms + Synonyms + + + + + settings.synonyms.help + The synonyms systems allow overriding how Part-DB call certain things. This can be useful, especially if Part-DB is used in a different context than electronics. +Please note that this system is currently experimental, and the synonyms defined here might not show up at all places. + + + + + settings.synonyms.type_synonyms + Type synonyms + + + + + settings.synonyms.type_synonyms.help + Type synonyms allow you to replace the labels of built-in data types. For example, you can rename "Footprint" to something else. + + + + + {{part}} + Parts + + + + + log.element_edited.changed_fields.part_ipn_prefix + IPN prefix + + + + + part.labelp + Parts + + diff --git a/translations/messages.ru.xlf b/translations/messages.ru.xlf index 9c91a4b1..0fbf7a42 100644 --- a/translations/messages.ru.xlf +++ b/translations/messages.ru.xlf @@ -737,7 +737,7 @@ user.edit.tfa.disable_tfa_message - Это выключит <b>все активные двухфакторной способы аутентификации пользователя</b>и удалит <b>резервные коды</b>! + Это выключит <b>все активные двухфакторной способы аутентификации пользователя</b>и удалит <b>резервные коды</b>! <br> Пользователь должен будет снова настроить все методы двухфакторной аутентификации и распечатать новые резервные коды! <br><br> <b>Делайте это только в том случае, если вы абсолютно уверены в личности пользователя (обращающегося за помощью), в противном случае учетная запись может быть взломана злоумышленником!</b> @@ -3806,7 +3806,7 @@ tfa_backup.reset_codes.confirm_message - Это удалит все предыдущие коды и создаст набор новых. Это не может быть отменено. + Это удалит все предыдущие коды и создаст набор новых. Это не может быть отменено. Не забудьте распечатать новы кода и хранить их в безопасном месте! diff --git a/translations/validators.en.xlf b/translations/validators.en.xlf index 6ad14460..86045227 100644 --- a/translations/validators.en.xlf +++ b/translations/validators.en.xlf @@ -347,13 +347,13 @@ Due to technical limitations, it is not possible to select dates after the 2038-01-19 on 32-bit systems! - + validator.fileSize.invalidFormat Invalid file size format. Use an integer number plus K, M, G as suffix for Kilo, Mega or Gigabytes. - + validator.invalid_range The given range is not valid! @@ -365,5 +365,11 @@ Invalid code. Check that your authenticator app is set up correctly and that both the server and authentication device has the time set correctly. + + + settings.synonyms.type_synonyms.collection_type.duplicate + There is already a translation defined for this type and language! + + From f184afc918957b364157001b8420753495256dd4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan=20B=C3=B6hmer?= Date: Wed, 12 Nov 2025 21:49:44 +0100 Subject: [PATCH 3/4] Updated dependencies --- composer.lock | 380 ++++++------- yarn.lock | 1404 ++++++++++++++++++++++++------------------------- 2 files changed, 892 insertions(+), 892 deletions(-) diff --git a/composer.lock b/composer.lock index 28b0e8ef..187c5155 100644 --- a/composer.lock +++ b/composer.lock @@ -2390,16 +2390,16 @@ }, { "name": "composer/ca-bundle", - "version": "1.5.8", + "version": "1.5.9", "source": { "type": "git", "url": "https://github.com/composer/ca-bundle.git", - "reference": "719026bb30813accb68271fee7e39552a58e9f65" + "reference": "1905981ee626e6f852448b7aaa978f8666c5bc54" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/composer/ca-bundle/zipball/719026bb30813accb68271fee7e39552a58e9f65", - "reference": "719026bb30813accb68271fee7e39552a58e9f65", + "url": "https://api.github.com/repos/composer/ca-bundle/zipball/1905981ee626e6f852448b7aaa978f8666c5bc54", + "reference": "1905981ee626e6f852448b7aaa978f8666c5bc54", "shasum": "" }, "require": { @@ -2446,7 +2446,7 @@ "support": { "irc": "irc://irc.freenode.org/composer", "issues": "https://github.com/composer/ca-bundle/issues", - "source": "https://github.com/composer/ca-bundle/tree/1.5.8" + "source": "https://github.com/composer/ca-bundle/tree/1.5.9" }, "funding": [ { @@ -2458,7 +2458,7 @@ "type": "github" } ], - "time": "2025-08-20T18:49:47+00:00" + "time": "2025-11-06T11:46:17+00:00" }, { "name": "composer/package-versions-deprecated", @@ -3147,16 +3147,16 @@ }, { "name": "doctrine/doctrine-bundle", - "version": "2.18.0", + "version": "2.18.1", "source": { "type": "git", "url": "https://github.com/doctrine/DoctrineBundle.git", - "reference": "cd5d4da6a5f7cf3d8708e17211234657b5eb4e95" + "reference": "b769877014de053da0e5cbbb63d0ea2f3b2fea76" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/doctrine/DoctrineBundle/zipball/cd5d4da6a5f7cf3d8708e17211234657b5eb4e95", - "reference": "cd5d4da6a5f7cf3d8708e17211234657b5eb4e95", + "url": "https://api.github.com/repos/doctrine/DoctrineBundle/zipball/b769877014de053da0e5cbbb63d0ea2f3b2fea76", + "reference": "b769877014de053da0e5cbbb63d0ea2f3b2fea76", "shasum": "" }, "require": { @@ -3248,7 +3248,7 @@ ], "support": { "issues": "https://github.com/doctrine/DoctrineBundle/issues", - "source": "https://github.com/doctrine/DoctrineBundle/tree/2.18.0" + "source": "https://github.com/doctrine/DoctrineBundle/tree/2.18.1" }, "funding": [ { @@ -3264,20 +3264,20 @@ "type": "tidelift" } ], - "time": "2025-10-11T04:43:27+00:00" + "time": "2025-11-05T14:42:10+00:00" }, { "name": "doctrine/doctrine-migrations-bundle", - "version": "3.5.0", + "version": "3.6.0", "source": { "type": "git", "url": "https://github.com/doctrine/DoctrineMigrationsBundle.git", - "reference": "71c81279ca0e907c3edc718418b93fd63074856c" + "reference": "49ecc564568d7da101779112579e78b677fbc94a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/doctrine/DoctrineMigrationsBundle/zipball/71c81279ca0e907c3edc718418b93fd63074856c", - "reference": "71c81279ca0e907c3edc718418b93fd63074856c", + "url": "https://api.github.com/repos/doctrine/DoctrineMigrationsBundle/zipball/49ecc564568d7da101779112579e78b677fbc94a", + "reference": "49ecc564568d7da101779112579e78b677fbc94a", "shasum": "" }, "require": { @@ -3285,7 +3285,7 @@ "doctrine/migrations": "^3.2", "php": "^7.2 || ^8.0", "symfony/deprecation-contracts": "^2.1 || ^3", - "symfony/framework-bundle": "^5.4 || ^6.0 || ^7.0" + "symfony/framework-bundle": "^5.4 || ^6.0 || ^7.0 || ^8.0" }, "require-dev": { "composer/semver": "^3.0", @@ -3297,8 +3297,8 @@ "phpstan/phpstan-strict-rules": "^1.1 || ^2", "phpstan/phpstan-symfony": "^1.3 || ^2", "phpunit/phpunit": "^8.5 || ^9.5", - "symfony/phpunit-bridge": "^6.3 || ^7", - "symfony/var-exporter": "^5.4 || ^6 || ^7" + "symfony/phpunit-bridge": "^6.3 || ^7 || ^8", + "symfony/var-exporter": "^5.4 || ^6 || ^7 || ^8" }, "type": "symfony-bundle", "autoload": { @@ -3333,7 +3333,7 @@ ], "support": { "issues": "https://github.com/doctrine/DoctrineMigrationsBundle/issues", - "source": "https://github.com/doctrine/DoctrineMigrationsBundle/tree/3.5.0" + "source": "https://github.com/doctrine/DoctrineMigrationsBundle/tree/3.6.0" }, "funding": [ { @@ -3349,7 +3349,7 @@ "type": "tidelift" } ], - "time": "2025-10-12T17:06:40+00:00" + "time": "2025-11-07T19:40:03+00:00" }, { "name": "doctrine/event-manager", @@ -3784,16 +3784,16 @@ }, { "name": "doctrine/orm", - "version": "3.5.3", + "version": "3.5.7", "source": { "type": "git", "url": "https://github.com/doctrine/orm.git", - "reference": "1220edf9535303feb6dbfcf171beeef842fc9e1c" + "reference": "f18de9d569f00ed6eb9dac4b33c7844d705d17da" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/doctrine/orm/zipball/1220edf9535303feb6dbfcf171beeef842fc9e1c", - "reference": "1220edf9535303feb6dbfcf171beeef842fc9e1c", + "url": "https://api.github.com/repos/doctrine/orm/zipball/f18de9d569f00ed6eb9dac4b33c7844d705d17da", + "reference": "f18de9d569f00ed6eb9dac4b33c7844d705d17da", "shasum": "" }, "require": { @@ -3817,7 +3817,7 @@ "phpbench/phpbench": "^1.0", "phpdocumentor/guides-cli": "^1.4", "phpstan/extension-installer": "^1.4", - "phpstan/phpstan": "2.1.22", + "phpstan/phpstan": "2.1.23", "phpstan/phpstan-deprecation-rules": "^2", "phpunit/phpunit": "^10.5.0 || ^11.5", "psr/log": "^1 || ^2 || ^3", @@ -3867,9 +3867,9 @@ ], "support": { "issues": "https://github.com/doctrine/orm/issues", - "source": "https://github.com/doctrine/orm/tree/3.5.3" + "source": "https://github.com/doctrine/orm/tree/3.5.7" }, - "time": "2025-10-27T22:06:52+00:00" + "time": "2025-11-11T18:27:40+00:00" }, { "name": "doctrine/persistence", @@ -9969,40 +9969,28 @@ }, { "name": "spomky-labs/cbor-php", - "version": "3.1.1", + "version": "3.2.0", "source": { "type": "git", "url": "https://github.com/Spomky-Labs/cbor-php.git", - "reference": "5404f3e21cbe72f5cf612aa23db2b922fd2f43bf" + "reference": "53b2adc63d126ddd062016969ce2bad5871fda6c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/Spomky-Labs/cbor-php/zipball/5404f3e21cbe72f5cf612aa23db2b922fd2f43bf", - "reference": "5404f3e21cbe72f5cf612aa23db2b922fd2f43bf", + "url": "https://api.github.com/repos/Spomky-Labs/cbor-php/zipball/53b2adc63d126ddd062016969ce2bad5871fda6c", + "reference": "53b2adc63d126ddd062016969ce2bad5871fda6c", "shasum": "" }, "require": { - "brick/math": "^0.9|^0.10|^0.11|^0.12|^0.13", + "brick/math": "^0.9|^0.10|^0.11|^0.12|^0.13|^0.14", "ext-mbstring": "*", "php": ">=8.0" }, "require-dev": { - "deptrac/deptrac": "^3.0", - "ekino/phpstan-banned-code": "^1.0|^2.0|^3.0", "ext-json": "*", - "infection/infection": "^0.29", - "php-parallel-lint/php-parallel-lint": "^1.3", - "phpstan/extension-installer": "^1.1", - "phpstan/phpstan": "^1.0|^2.0", - "phpstan/phpstan-beberlei-assert": "^1.0|^2.0", - "phpstan/phpstan-deprecation-rules": "^1.0|^2.0", - "phpstan/phpstan-phpunit": "^1.0|^2.0", - "phpstan/phpstan-strict-rules": "^1.0|^2.0", - "phpunit/phpunit": "^10.1|^11.0|^12.0", - "rector/rector": "^1.0|^2.0", "roave/security-advisories": "dev-latest", - "symfony/var-dumper": "^6.0|^7.0", - "symplify/easy-coding-standard": "^12.0" + "symfony/error-handler": "^6.4|^7.1|^8.0", + "symfony/var-dumper": "^6.4|^7.1|^8.0" }, "suggest": { "ext-bcmath": "GMP or BCMath extensions will drastically improve the library performance. BCMath extension needed to handle the Big Float and Decimal Fraction Tags", @@ -10036,7 +10024,7 @@ ], "support": { "issues": "https://github.com/Spomky-Labs/cbor-php/issues", - "source": "https://github.com/Spomky-Labs/cbor-php/tree/3.1.1" + "source": "https://github.com/Spomky-Labs/cbor-php/tree/3.2.0" }, "funding": [ { @@ -10048,7 +10036,7 @@ "type": "patreon" } ], - "time": "2025-06-13T11:57:55+00:00" + "time": "2025-11-07T09:45:05+00:00" }, { "name": "spomky-labs/otphp", @@ -10338,16 +10326,16 @@ }, { "name": "symfony/cache", - "version": "v7.3.5", + "version": "v7.3.6", "source": { "type": "git", "url": "https://github.com/symfony/cache.git", - "reference": "4a55feb59664f49042a0824c0f955e2f4c1412ad" + "reference": "1277a1ec61c8d93ea61b2a59738f1deb9bfb6701" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/cache/zipball/4a55feb59664f49042a0824c0f955e2f4c1412ad", - "reference": "4a55feb59664f49042a0824c0f955e2f4c1412ad", + "url": "https://api.github.com/repos/symfony/cache/zipball/1277a1ec61c8d93ea61b2a59738f1deb9bfb6701", + "reference": "1277a1ec61c8d93ea61b2a59738f1deb9bfb6701", "shasum": "" }, "require": { @@ -10416,7 +10404,7 @@ "psr6" ], "support": { - "source": "https://github.com/symfony/cache/tree/v7.3.5" + "source": "https://github.com/symfony/cache/tree/v7.3.6" }, "funding": [ { @@ -10436,7 +10424,7 @@ "type": "tidelift" } ], - "time": "2025-10-16T13:55:38+00:00" + "time": "2025-10-30T13:22:58+00:00" }, { "name": "symfony/cache-contracts", @@ -10590,16 +10578,16 @@ }, { "name": "symfony/config", - "version": "v7.3.4", + "version": "v7.3.6", "source": { "type": "git", "url": "https://github.com/symfony/config.git", - "reference": "8a09223170046d2cfda3d2e11af01df2c641e961" + "reference": "9d18eba95655a3152ae4c1d53c6cc34eb4d4a0b7" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/config/zipball/8a09223170046d2cfda3d2e11af01df2c641e961", - "reference": "8a09223170046d2cfda3d2e11af01df2c641e961", + "url": "https://api.github.com/repos/symfony/config/zipball/9d18eba95655a3152ae4c1d53c6cc34eb4d4a0b7", + "reference": "9d18eba95655a3152ae4c1d53c6cc34eb4d4a0b7", "shasum": "" }, "require": { @@ -10645,7 +10633,7 @@ "description": "Helps you find, load, combine, autofill and validate configuration values of any kind", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/config/tree/v7.3.4" + "source": "https://github.com/symfony/config/tree/v7.3.6" }, "funding": [ { @@ -10665,20 +10653,20 @@ "type": "tidelift" } ], - "time": "2025-09-22T12:46:16+00:00" + "time": "2025-11-02T08:04:43+00:00" }, { "name": "symfony/console", - "version": "v7.3.5", + "version": "v7.3.6", "source": { "type": "git", "url": "https://github.com/symfony/console.git", - "reference": "cdb80fa5869653c83cfe1a9084a673b6daf57ea7" + "reference": "c28ad91448f86c5f6d9d2c70f0cf68bf135f252a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/console/zipball/cdb80fa5869653c83cfe1a9084a673b6daf57ea7", - "reference": "cdb80fa5869653c83cfe1a9084a673b6daf57ea7", + "url": "https://api.github.com/repos/symfony/console/zipball/c28ad91448f86c5f6d9d2c70f0cf68bf135f252a", + "reference": "c28ad91448f86c5f6d9d2c70f0cf68bf135f252a", "shasum": "" }, "require": { @@ -10743,7 +10731,7 @@ "terminal" ], "support": { - "source": "https://github.com/symfony/console/tree/v7.3.5" + "source": "https://github.com/symfony/console/tree/v7.3.6" }, "funding": [ { @@ -10763,20 +10751,20 @@ "type": "tidelift" } ], - "time": "2025-10-14T15:46:26+00:00" + "time": "2025-11-04T01:21:42+00:00" }, { "name": "symfony/css-selector", - "version": "v7.3.0", + "version": "v7.3.6", "source": { "type": "git", "url": "https://github.com/symfony/css-selector.git", - "reference": "601a5ce9aaad7bf10797e3663faefce9e26c24e2" + "reference": "84321188c4754e64273b46b406081ad9b18e8614" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/css-selector/zipball/601a5ce9aaad7bf10797e3663faefce9e26c24e2", - "reference": "601a5ce9aaad7bf10797e3663faefce9e26c24e2", + "url": "https://api.github.com/repos/symfony/css-selector/zipball/84321188c4754e64273b46b406081ad9b18e8614", + "reference": "84321188c4754e64273b46b406081ad9b18e8614", "shasum": "" }, "require": { @@ -10812,7 +10800,7 @@ "description": "Converts CSS selectors to XPath expressions", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/css-selector/tree/v7.3.0" + "source": "https://github.com/symfony/css-selector/tree/v7.3.6" }, "funding": [ { @@ -10823,25 +10811,29 @@ "url": "https://github.com/fabpot", "type": "github" }, + { + "url": "https://github.com/nicolas-grekas", + "type": "github" + }, { "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", "type": "tidelift" } ], - "time": "2024-09-25T14:21:43+00:00" + "time": "2025-10-29T17:24:25+00:00" }, { "name": "symfony/dependency-injection", - "version": "v7.3.4", + "version": "v7.3.6", "source": { "type": "git", "url": "https://github.com/symfony/dependency-injection.git", - "reference": "82119812ab0bf3425c1234d413efd1b19bb92ae4" + "reference": "98af8bb46c56aedd9dd5a7f0414fc72bf2dcfe69" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/dependency-injection/zipball/82119812ab0bf3425c1234d413efd1b19bb92ae4", - "reference": "82119812ab0bf3425c1234d413efd1b19bb92ae4", + "url": "https://api.github.com/repos/symfony/dependency-injection/zipball/98af8bb46c56aedd9dd5a7f0414fc72bf2dcfe69", + "reference": "98af8bb46c56aedd9dd5a7f0414fc72bf2dcfe69", "shasum": "" }, "require": { @@ -10892,7 +10884,7 @@ "description": "Allows you to standardize and centralize the way objects are constructed in your application", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/dependency-injection/tree/v7.3.4" + "source": "https://github.com/symfony/dependency-injection/tree/v7.3.6" }, "funding": [ { @@ -10912,7 +10904,7 @@ "type": "tidelift" } ], - "time": "2025-09-11T10:12:26+00:00" + "time": "2025-10-31T10:11:11+00:00" }, { "name": "symfony/deprecation-contracts", @@ -11245,16 +11237,16 @@ }, { "name": "symfony/error-handler", - "version": "v7.3.4", + "version": "v7.3.6", "source": { "type": "git", "url": "https://github.com/symfony/error-handler.git", - "reference": "99f81bc944ab8e5dae4f21b4ca9972698bbad0e4" + "reference": "bbe40bfab84323d99dab491b716ff142410a92a8" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/error-handler/zipball/99f81bc944ab8e5dae4f21b4ca9972698bbad0e4", - "reference": "99f81bc944ab8e5dae4f21b4ca9972698bbad0e4", + "url": "https://api.github.com/repos/symfony/error-handler/zipball/bbe40bfab84323d99dab491b716ff142410a92a8", + "reference": "bbe40bfab84323d99dab491b716ff142410a92a8", "shasum": "" }, "require": { @@ -11302,7 +11294,7 @@ "description": "Provides tools to manage errors and ease debugging PHP code", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/error-handler/tree/v7.3.4" + "source": "https://github.com/symfony/error-handler/tree/v7.3.6" }, "funding": [ { @@ -11322,7 +11314,7 @@ "type": "tidelift" } ], - "time": "2025-09-11T10:12:26+00:00" + "time": "2025-10-31T19:12:50+00:00" }, { "name": "symfony/event-dispatcher", @@ -11554,16 +11546,16 @@ }, { "name": "symfony/filesystem", - "version": "v7.3.2", + "version": "v7.3.6", "source": { "type": "git", "url": "https://github.com/symfony/filesystem.git", - "reference": "edcbb768a186b5c3f25d0643159a787d3e63b7fd" + "reference": "e9bcfd7837928ab656276fe00464092cc9e1826a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/filesystem/zipball/edcbb768a186b5c3f25d0643159a787d3e63b7fd", - "reference": "edcbb768a186b5c3f25d0643159a787d3e63b7fd", + "url": "https://api.github.com/repos/symfony/filesystem/zipball/e9bcfd7837928ab656276fe00464092cc9e1826a", + "reference": "e9bcfd7837928ab656276fe00464092cc9e1826a", "shasum": "" }, "require": { @@ -11600,7 +11592,7 @@ "description": "Provides basic utilities for the filesystem", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/filesystem/tree/v7.3.2" + "source": "https://github.com/symfony/filesystem/tree/v7.3.6" }, "funding": [ { @@ -11620,7 +11612,7 @@ "type": "tidelift" } ], - "time": "2025-07-07T08:17:47+00:00" + "time": "2025-11-05T09:52:27+00:00" }, { "name": "symfony/finder", @@ -11764,16 +11756,16 @@ }, { "name": "symfony/form", - "version": "v7.3.5", + "version": "v7.3.6", "source": { "type": "git", "url": "https://github.com/symfony/form.git", - "reference": "c8032766d5b198865d00b7d4471fc787a0a7f5e4" + "reference": "a8f32aa19b322bf46cbaaafa89c132eb662ecfe5" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/form/zipball/c8032766d5b198865d00b7d4471fc787a0a7f5e4", - "reference": "c8032766d5b198865d00b7d4471fc787a0a7f5e4", + "url": "https://api.github.com/repos/symfony/form/zipball/a8f32aa19b322bf46cbaaafa89c132eb662ecfe5", + "reference": "a8f32aa19b322bf46cbaaafa89c132eb662ecfe5", "shasum": "" }, "require": { @@ -11841,7 +11833,7 @@ "description": "Allows to easily create, process and reuse HTML forms", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/form/tree/v7.3.5" + "source": "https://github.com/symfony/form/tree/v7.3.6" }, "funding": [ { @@ -11861,20 +11853,20 @@ "type": "tidelift" } ], - "time": "2025-10-10T11:54:12+00:00" + "time": "2025-10-31T09:25:04+00:00" }, { "name": "symfony/framework-bundle", - "version": "v7.3.5", + "version": "v7.3.6", "source": { "type": "git", "url": "https://github.com/symfony/framework-bundle.git", - "reference": "ebd42b1fc2652b96d33520195ea0f6e55c36f09d" + "reference": "cabfdfa82bc4f75d693a329fe263d96937636b77" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/framework-bundle/zipball/ebd42b1fc2652b96d33520195ea0f6e55c36f09d", - "reference": "ebd42b1fc2652b96d33520195ea0f6e55c36f09d", + "url": "https://api.github.com/repos/symfony/framework-bundle/zipball/cabfdfa82bc4f75d693a329fe263d96937636b77", + "reference": "cabfdfa82bc4f75d693a329fe263d96937636b77", "shasum": "" }, "require": { @@ -11999,7 +11991,7 @@ "description": "Provides a tight integration between Symfony components and the Symfony full-stack framework", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/framework-bundle/tree/v7.3.5" + "source": "https://github.com/symfony/framework-bundle/tree/v7.3.6" }, "funding": [ { @@ -12019,20 +12011,20 @@ "type": "tidelift" } ], - "time": "2025-10-16T16:16:53+00:00" + "time": "2025-10-30T09:42:24+00:00" }, { "name": "symfony/http-client", - "version": "v7.3.4", + "version": "v7.3.6", "source": { "type": "git", "url": "https://github.com/symfony/http-client.git", - "reference": "4b62871a01c49457cf2a8e560af7ee8a94b87a62" + "reference": "3c0a55a2c8e21e30a37022801c11c7ab5a6cb2de" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/http-client/zipball/4b62871a01c49457cf2a8e560af7ee8a94b87a62", - "reference": "4b62871a01c49457cf2a8e560af7ee8a94b87a62", + "url": "https://api.github.com/repos/symfony/http-client/zipball/3c0a55a2c8e21e30a37022801c11c7ab5a6cb2de", + "reference": "3c0a55a2c8e21e30a37022801c11c7ab5a6cb2de", "shasum": "" }, "require": { @@ -12099,7 +12091,7 @@ "http" ], "support": { - "source": "https://github.com/symfony/http-client/tree/v7.3.4" + "source": "https://github.com/symfony/http-client/tree/v7.3.6" }, "funding": [ { @@ -12119,7 +12111,7 @@ "type": "tidelift" } ], - "time": "2025-09-11T10:12:26+00:00" + "time": "2025-11-05T17:41:46+00:00" }, { "name": "symfony/http-client-contracts", @@ -12201,16 +12193,16 @@ }, { "name": "symfony/http-foundation", - "version": "v7.3.5", + "version": "v7.3.7", "source": { "type": "git", "url": "https://github.com/symfony/http-foundation.git", - "reference": "ce31218c7cac92eab280762c4375fb70a6f4f897" + "reference": "db488a62f98f7a81d5746f05eea63a74e55bb7c4" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/http-foundation/zipball/ce31218c7cac92eab280762c4375fb70a6f4f897", - "reference": "ce31218c7cac92eab280762c4375fb70a6f4f897", + "url": "https://api.github.com/repos/symfony/http-foundation/zipball/db488a62f98f7a81d5746f05eea63a74e55bb7c4", + "reference": "db488a62f98f7a81d5746f05eea63a74e55bb7c4", "shasum": "" }, "require": { @@ -12260,7 +12252,7 @@ "description": "Defines an object-oriented layer for the HTTP specification", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/http-foundation/tree/v7.3.5" + "source": "https://github.com/symfony/http-foundation/tree/v7.3.7" }, "funding": [ { @@ -12280,20 +12272,20 @@ "type": "tidelift" } ], - "time": "2025-10-24T21:42:11+00:00" + "time": "2025-11-08T16:41:12+00:00" }, { "name": "symfony/http-kernel", - "version": "v7.3.5", + "version": "v7.3.7", "source": { "type": "git", "url": "https://github.com/symfony/http-kernel.git", - "reference": "24fd3f123532e26025f49f1abefcc01a69ef15ab" + "reference": "10b8e9b748ea95fa4539c208e2487c435d3c87ce" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/http-kernel/zipball/24fd3f123532e26025f49f1abefcc01a69ef15ab", - "reference": "24fd3f123532e26025f49f1abefcc01a69ef15ab", + "url": "https://api.github.com/repos/symfony/http-kernel/zipball/10b8e9b748ea95fa4539c208e2487c435d3c87ce", + "reference": "10b8e9b748ea95fa4539c208e2487c435d3c87ce", "shasum": "" }, "require": { @@ -12378,7 +12370,7 @@ "description": "Provides a structured process for converting a Request into a Response", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/http-kernel/tree/v7.3.5" + "source": "https://github.com/symfony/http-kernel/tree/v7.3.7" }, "funding": [ { @@ -12398,7 +12390,7 @@ "type": "tidelift" } ], - "time": "2025-10-28T10:19:01+00:00" + "time": "2025-11-12T11:38:40+00:00" }, { "name": "symfony/intl", @@ -12664,16 +12656,16 @@ }, { "name": "symfony/monolog-bridge", - "version": "v7.3.5", + "version": "v7.3.6", "source": { "type": "git", "url": "https://github.com/symfony/monolog-bridge.git", - "reference": "c66a65049c75f3ddf03d73c8c9ed61405779ce47" + "reference": "48e8542ba35afd2293a8c8fd4bcf8abe46357ddf" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/monolog-bridge/zipball/c66a65049c75f3ddf03d73c8c9ed61405779ce47", - "reference": "c66a65049c75f3ddf03d73c8c9ed61405779ce47", + "url": "https://api.github.com/repos/symfony/monolog-bridge/zipball/48e8542ba35afd2293a8c8fd4bcf8abe46357ddf", + "reference": "48e8542ba35afd2293a8c8fd4bcf8abe46357ddf", "shasum": "" }, "require": { @@ -12722,7 +12714,7 @@ "description": "Provides integration for Monolog with various Symfony components", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/monolog-bridge/tree/v7.3.5" + "source": "https://github.com/symfony/monolog-bridge/tree/v7.3.6" }, "funding": [ { @@ -12742,7 +12734,7 @@ "type": "tidelift" } ], - "time": "2025-10-14T19:16:15+00:00" + "time": "2025-11-01T09:17:24+00:00" }, { "name": "symfony/monolog-bundle", @@ -14279,16 +14271,16 @@ }, { "name": "symfony/routing", - "version": "v7.3.4", + "version": "v7.3.6", "source": { "type": "git", "url": "https://github.com/symfony/routing.git", - "reference": "8dc648e159e9bac02b703b9fbd937f19ba13d07c" + "reference": "c97abe725f2a1a858deca629a6488c8fc20c3091" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/routing/zipball/8dc648e159e9bac02b703b9fbd937f19ba13d07c", - "reference": "8dc648e159e9bac02b703b9fbd937f19ba13d07c", + "url": "https://api.github.com/repos/symfony/routing/zipball/c97abe725f2a1a858deca629a6488c8fc20c3091", + "reference": "c97abe725f2a1a858deca629a6488c8fc20c3091", "shasum": "" }, "require": { @@ -14340,7 +14332,7 @@ "url" ], "support": { - "source": "https://github.com/symfony/routing/tree/v7.3.4" + "source": "https://github.com/symfony/routing/tree/v7.3.6" }, "funding": [ { @@ -14360,7 +14352,7 @@ "type": "tidelift" } ], - "time": "2025-09-11T10:12:26+00:00" + "time": "2025-11-05T07:57:47+00:00" }, { "name": "symfony/runtime", @@ -14913,16 +14905,16 @@ }, { "name": "symfony/service-contracts", - "version": "v3.6.0", + "version": "v3.6.1", "source": { "type": "git", "url": "https://github.com/symfony/service-contracts.git", - "reference": "f021b05a130d35510bd6b25fe9053c2a8a15d5d4" + "reference": "45112560a3ba2d715666a509a0bc9521d10b6c43" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/service-contracts/zipball/f021b05a130d35510bd6b25fe9053c2a8a15d5d4", - "reference": "f021b05a130d35510bd6b25fe9053c2a8a15d5d4", + "url": "https://api.github.com/repos/symfony/service-contracts/zipball/45112560a3ba2d715666a509a0bc9521d10b6c43", + "reference": "45112560a3ba2d715666a509a0bc9521d10b6c43", "shasum": "" }, "require": { @@ -14976,7 +14968,7 @@ "standards" ], "support": { - "source": "https://github.com/symfony/service-contracts/tree/v3.6.0" + "source": "https://github.com/symfony/service-contracts/tree/v3.6.1" }, "funding": [ { @@ -14987,12 +14979,16 @@ "url": "https://github.com/fabpot", "type": "github" }, + { + "url": "https://github.com/nicolas-grekas", + "type": "github" + }, { "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", "type": "tidelift" } ], - "time": "2025-04-25T09:37:31+00:00" + "time": "2025-07-15T11:30:57+00:00" }, { "name": "symfony/stimulus-bundle", @@ -15321,16 +15317,16 @@ }, { "name": "symfony/translation-contracts", - "version": "v3.6.0", + "version": "v3.6.1", "source": { "type": "git", "url": "https://github.com/symfony/translation-contracts.git", - "reference": "df210c7a2573f1913b2d17cc95f90f53a73d8f7d" + "reference": "65a8bc82080447fae78373aa10f8d13b38338977" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/translation-contracts/zipball/df210c7a2573f1913b2d17cc95f90f53a73d8f7d", - "reference": "df210c7a2573f1913b2d17cc95f90f53a73d8f7d", + "url": "https://api.github.com/repos/symfony/translation-contracts/zipball/65a8bc82080447fae78373aa10f8d13b38338977", + "reference": "65a8bc82080447fae78373aa10f8d13b38338977", "shasum": "" }, "require": { @@ -15379,7 +15375,7 @@ "standards" ], "support": { - "source": "https://github.com/symfony/translation-contracts/tree/v3.6.0" + "source": "https://github.com/symfony/translation-contracts/tree/v3.6.1" }, "funding": [ { @@ -15390,25 +15386,29 @@ "url": "https://github.com/fabpot", "type": "github" }, + { + "url": "https://github.com/nicolas-grekas", + "type": "github" + }, { "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", "type": "tidelift" } ], - "time": "2024-09-27T08:32:26+00:00" + "time": "2025-07-15T13:41:35+00:00" }, { "name": "symfony/twig-bridge", - "version": "v7.3.3", + "version": "v7.3.6", "source": { "type": "git", "url": "https://github.com/symfony/twig-bridge.git", - "reference": "33558f013b7f6ed72805527c8405cae0062e47c5" + "reference": "d1aaec8eee1f5591f56b9efe00194d73a8e38319" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/twig-bridge/zipball/33558f013b7f6ed72805527c8405cae0062e47c5", - "reference": "33558f013b7f6ed72805527c8405cae0062e47c5", + "url": "https://api.github.com/repos/symfony/twig-bridge/zipball/d1aaec8eee1f5591f56b9efe00194d73a8e38319", + "reference": "d1aaec8eee1f5591f56b9efe00194d73a8e38319", "shasum": "" }, "require": { @@ -15490,7 +15490,7 @@ "description": "Provides integration for Twig with various Symfony components", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/twig-bridge/tree/v7.3.3" + "source": "https://github.com/symfony/twig-bridge/tree/v7.3.6" }, "funding": [ { @@ -15510,7 +15510,7 @@ "type": "tidelift" } ], - "time": "2025-08-18T13:10:53+00:00" + "time": "2025-11-04T15:37:51+00:00" }, { "name": "symfony/twig-bundle", @@ -15943,16 +15943,16 @@ }, { "name": "symfony/validator", - "version": "v7.3.5", + "version": "v7.3.7", "source": { "type": "git", "url": "https://github.com/symfony/validator.git", - "reference": "724086992fb7c7882d05c9d2219d70401ab9fdda" + "reference": "8290a095497c3fe5046db21888d1f75b54ddf39d" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/validator/zipball/724086992fb7c7882d05c9d2219d70401ab9fdda", - "reference": "724086992fb7c7882d05c9d2219d70401ab9fdda", + "url": "https://api.github.com/repos/symfony/validator/zipball/8290a095497c3fe5046db21888d1f75b54ddf39d", + "reference": "8290a095497c3fe5046db21888d1f75b54ddf39d", "shasum": "" }, "require": { @@ -16021,7 +16021,7 @@ "description": "Provides tools to validate values", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/validator/tree/v7.3.5" + "source": "https://github.com/symfony/validator/tree/v7.3.7" }, "funding": [ { @@ -16041,7 +16041,7 @@ "type": "tidelift" } ], - "time": "2025-10-24T14:27:20+00:00" + "time": "2025-11-08T16:29:29+00:00" }, { "name": "symfony/var-dumper", @@ -18300,11 +18300,11 @@ }, { "name": "phpstan/phpstan", - "version": "2.1.31", + "version": "2.1.32", "dist": { "type": "zip", - "url": "https://api.github.com/repos/phpstan/phpstan/zipball/ead89849d879fe203ce9292c6ef5e7e76f867b96", - "reference": "ead89849d879fe203ce9292c6ef5e7e76f867b96", + "url": "https://api.github.com/repos/phpstan/phpstan/zipball/e126cad1e30a99b137b8ed75a85a676450ebb227", + "reference": "e126cad1e30a99b137b8ed75a85a676450ebb227", "shasum": "" }, "require": { @@ -18349,20 +18349,20 @@ "type": "github" } ], - "time": "2025-10-10T14:14:11+00:00" + "time": "2025-11-11T15:18:17+00:00" }, { "name": "phpstan/phpstan-doctrine", - "version": "2.0.10", + "version": "2.0.11", "source": { "type": "git", "url": "https://github.com/phpstan/phpstan-doctrine.git", - "reference": "5eaf37b87288474051469aee9f937fc9d862f330" + "reference": "368ad1c713a6d95763890bc2292694a603ece7c8" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/phpstan/phpstan-doctrine/zipball/5eaf37b87288474051469aee9f937fc9d862f330", - "reference": "5eaf37b87288474051469aee9f937fc9d862f330", + "url": "https://api.github.com/repos/phpstan/phpstan-doctrine/zipball/368ad1c713a6d95763890bc2292694a603ece7c8", + "reference": "368ad1c713a6d95763890bc2292694a603ece7c8", "shasum": "" }, "require": { @@ -18392,7 +18392,7 @@ "nesbot/carbon": "^2.49", "php-parallel-lint/php-parallel-lint": "^1.2", "phpstan/phpstan-deprecation-rules": "^2.0.2", - "phpstan/phpstan-phpunit": "^2.0", + "phpstan/phpstan-phpunit": "^2.0.8", "phpstan/phpstan-strict-rules": "^2.0", "phpunit/phpunit": "^9.6.20", "ramsey/uuid": "^4.2", @@ -18420,9 +18420,9 @@ "description": "Doctrine extensions for PHPStan", "support": { "issues": "https://github.com/phpstan/phpstan-doctrine/issues", - "source": "https://github.com/phpstan/phpstan-doctrine/tree/2.0.10" + "source": "https://github.com/phpstan/phpstan-doctrine/tree/2.0.11" }, - "time": "2025-10-06T10:01:02+00:00" + "time": "2025-11-04T09:55:35+00:00" }, { "name": "phpstan/phpstan-strict-rules", @@ -18989,21 +18989,21 @@ }, { "name": "rector/rector", - "version": "2.2.7", + "version": "2.2.8", "source": { "type": "git", "url": "https://github.com/rectorphp/rector.git", - "reference": "022038537838bc8a4e526af86c2d6e38eaeff7ef" + "reference": "303aa811649ccd1d32e51e62d5c85949d01b5f1b" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/rectorphp/rector/zipball/022038537838bc8a4e526af86c2d6e38eaeff7ef", - "reference": "022038537838bc8a4e526af86c2d6e38eaeff7ef", + "url": "https://api.github.com/repos/rectorphp/rector/zipball/303aa811649ccd1d32e51e62d5c85949d01b5f1b", + "reference": "303aa811649ccd1d32e51e62d5c85949d01b5f1b", "shasum": "" }, "require": { "php": "^7.4|^8.0", - "phpstan/phpstan": "^2.1.26" + "phpstan/phpstan": "^2.1.32" }, "conflict": { "rector/rector-doctrine": "*", @@ -19037,7 +19037,7 @@ ], "support": { "issues": "https://github.com/rectorphp/rector/issues", - "source": "https://github.com/rectorphp/rector/tree/2.2.7" + "source": "https://github.com/rectorphp/rector/tree/2.2.8" }, "funding": [ { @@ -19045,7 +19045,7 @@ "type": "github" } ], - "time": "2025-10-29T15:46:12+00:00" + "time": "2025-11-12T18:38:00+00:00" }, { "name": "roave/security-advisories", @@ -19053,12 +19053,12 @@ "source": { "type": "git", "url": "https://github.com/Roave/SecurityAdvisories.git", - "reference": "d2e1583e5f89f53f7882861c1639c14c9a154585" + "reference": "ccc4996aff4ff810b514472932f677753ee5d8a4" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/Roave/SecurityAdvisories/zipball/d2e1583e5f89f53f7882861c1639c14c9a154585", - "reference": "d2e1583e5f89f53f7882861c1639c14c9a154585", + "url": "https://api.github.com/repos/Roave/SecurityAdvisories/zipball/ccc4996aff4ff810b514472932f677753ee5d8a4", + "reference": "ccc4996aff4ff810b514472932f677753ee5d8a4", "shasum": "" }, "conflict": { @@ -19493,7 +19493,7 @@ "maikuolan/phpmussel": ">=1,<1.6", "mainwp/mainwp": "<=4.4.3.3", "manogi/nova-tiptap": "<=3.2.6", - "mantisbt/mantisbt": "<=2.26.3", + "mantisbt/mantisbt": "<2.27.2", "marcwillmann/turn": "<0.3.3", "marshmallow/nova-tiptap": "<5.7", "matomo/matomo": "<1.11", @@ -19581,7 +19581,7 @@ "open-web-analytics/open-web-analytics": "<1.8.1", "opencart/opencart": ">=0", "openid/php-openid": "<2.3", - "openmage/magento-lts": "<20.12.3", + "openmage/magento-lts": "<20.16", "opensolutions/vimbadmin": "<=3.0.15", "opensource-workshop/connect-cms": "<1.8.7|>=2,<2.4.7", "orchid/platform": ">=8,<14.43", @@ -19800,7 +19800,7 @@ "symfony/form": ">=2.3,<2.3.35|>=2.4,<2.6.12|>=2.7,<2.7.50|>=2.8,<2.8.49|>=3,<3.4.20|>=4,<4.0.15|>=4.1,<4.1.9|>=4.2,<4.2.1", "symfony/framework-bundle": ">=2,<2.3.18|>=2.4,<2.4.8|>=2.5,<2.5.2|>=2.7,<2.7.51|>=2.8,<2.8.50|>=3,<3.4.26|>=4,<4.1.12|>=4.2,<4.2.7|>=5.3.14,<5.3.15|>=5.4.3,<5.4.4|>=6.0.3,<6.0.4", "symfony/http-client": ">=4.3,<5.4.47|>=6,<6.4.15|>=7,<7.1.8", - "symfony/http-foundation": "<5.4.46|>=6,<6.4.14|>=7,<7.1.7", + "symfony/http-foundation": "<5.4.50|>=6,<6.4.29|>=7,<7.3.7", "symfony/http-kernel": ">=2,<4.4.50|>=5,<5.4.20|>=6,<6.0.20|>=6.1,<6.1.12|>=6.2,<6.2.6", "symfony/intl": ">=2.7,<2.7.38|>=2.8,<2.8.31|>=3,<3.2.14|>=3.3,<3.3.13", "symfony/maker-bundle": ">=1.27,<1.29.2|>=1.30,<1.31.1", @@ -19819,7 +19819,7 @@ "symfony/security-guard": ">=2.8,<3.4.48|>=4,<4.4.23|>=5,<5.2.8", "symfony/security-http": ">=2.3,<2.3.41|>=2.4,<2.7.51|>=2.8,<2.8.50|>=3,<3.4.26|>=4,<4.2.12|>=4.3,<4.3.8|>=4.4,<4.4.7|>=5,<5.0.7|>=5.1,<5.2.8|>=5.3,<5.4.47|>=6,<6.4.15|>=7,<7.1.8", "symfony/serializer": ">=2,<2.0.11|>=4.1,<4.4.35|>=5,<5.3.12", - "symfony/symfony": "<5.4.47|>=6,<6.4.15|>=7,<7.1.8", + "symfony/symfony": "<5.4.50|>=6,<6.4.29|>=7,<7.3.7", "symfony/translation": ">=2,<2.0.17", "symfony/twig-bridge": ">=2,<4.4.51|>=5,<5.4.31|>=6,<6.3.8", "symfony/ux-autocomplete": "<2.11.2", @@ -19854,7 +19854,7 @@ "topthink/framework": "<6.0.17|>=6.1,<=8.0.4", "topthink/think": "<=6.1.1", "topthink/thinkphp": "<=3.2.3|>=6.1.3,<=8.0.4", - "torrentpier/torrentpier": "<=2.4.3", + "torrentpier/torrentpier": "<=2.8.8", "tpwd/ke_search": "<4.0.3|>=4.1,<4.6.6|>=5,<5.0.2", "tribalsystems/zenario": "<=9.7.61188", "truckersmp/phpwhois": "<=4.3.1", @@ -20036,7 +20036,7 @@ "type": "tidelift" } ], - "time": "2025-10-30T18:07:16+00:00" + "time": "2025-11-12T14:06:11+00:00" }, { "name": "sebastian/cli-parser", @@ -21078,16 +21078,16 @@ }, { "name": "symfony/browser-kit", - "version": "v7.3.2", + "version": "v7.3.6", "source": { "type": "git", "url": "https://github.com/symfony/browser-kit.git", - "reference": "f0b889b73a845cddef1d25fe207b37fd04cb5419" + "reference": "e9a9fd604296b17bf90939c3647069f1f16ef04e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/browser-kit/zipball/f0b889b73a845cddef1d25fe207b37fd04cb5419", - "reference": "f0b889b73a845cddef1d25fe207b37fd04cb5419", + "url": "https://api.github.com/repos/symfony/browser-kit/zipball/e9a9fd604296b17bf90939c3647069f1f16ef04e", + "reference": "e9a9fd604296b17bf90939c3647069f1f16ef04e", "shasum": "" }, "require": { @@ -21126,7 +21126,7 @@ "description": "Simulates the behavior of a web browser, allowing you to make requests, click on links and submit forms programmatically", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/browser-kit/tree/v7.3.2" + "source": "https://github.com/symfony/browser-kit/tree/v7.3.6" }, "funding": [ { @@ -21146,7 +21146,7 @@ "type": "tidelift" } ], - "time": "2025-07-10T08:47:49+00:00" + "time": "2025-11-05T07:57:47+00:00" }, { "name": "symfony/debug-bundle", diff --git a/yarn.lock b/yarn.lock index 0896bc62..b3636d6c 100644 --- a/yarn.lock +++ b/yarn.lock @@ -837,159 +837,159 @@ "@babel/helper-string-parser" "^7.27.1" "@babel/helper-validator-identifier" "^7.28.5" -"@ckeditor/ckeditor5-adapter-ckfinder@47.1.0": - version "47.1.0" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-adapter-ckfinder/-/ckeditor5-adapter-ckfinder-47.1.0.tgz#95c3435d09ec58c6c90b2cfddec471f1414cf3ac" - integrity sha512-h/ClAZBbqz0q5332OPLCQXBOx5EH3GHykJrGAK2+Wtx3CuhzJV+RhgEj3KLMQ2SaAR4DaLKamzCAiR2jIH6Y6Q== +"@ckeditor/ckeditor5-adapter-ckfinder@47.2.0": + version "47.2.0" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-adapter-ckfinder/-/ckeditor5-adapter-ckfinder-47.2.0.tgz#10ced491bd112a4633ed9f543b96eaf41e1bd807" + integrity sha512-zzuINBzWuheU76Ans9m59VCVMiljESoKxzpMh0aYu+M3YB5IDctOPU8pdOpXPIdBwoYv64+ioZE/T5TyZDckSw== dependencies: - "@ckeditor/ckeditor5-core" "47.1.0" - "@ckeditor/ckeditor5-upload" "47.1.0" - ckeditor5 "47.1.0" + "@ckeditor/ckeditor5-core" "47.2.0" + "@ckeditor/ckeditor5-upload" "47.2.0" + ckeditor5 "47.2.0" -"@ckeditor/ckeditor5-alignment@47.1.0": - version "47.1.0" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-alignment/-/ckeditor5-alignment-47.1.0.tgz#109ed02f520b103e4ab8d978984857f39c894fbf" - integrity sha512-oE6PLT5MRBayw87jOv5DgR0p6TU7mX18MJkaGEz98vuLW3npo1GEdkBtw72+05FwkKr2QCCZUZpg12DTf9Mc/g== +"@ckeditor/ckeditor5-alignment@47.2.0": + version "47.2.0" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-alignment/-/ckeditor5-alignment-47.2.0.tgz#64f527d7571acd543a3a9e74ed528a7b4aca0639" + integrity sha512-lfcJAC8yJOQux3t33ikJrWRsZvywLr2zmU6mDR96SuCmeCyAN3UGXzCNa8kWPExpFGV01ZR61EZkjTah8LP2sQ== dependencies: - "@ckeditor/ckeditor5-core" "47.1.0" - "@ckeditor/ckeditor5-icons" "47.1.0" - "@ckeditor/ckeditor5-ui" "47.1.0" - "@ckeditor/ckeditor5-utils" "47.1.0" - ckeditor5 "47.1.0" + "@ckeditor/ckeditor5-core" "47.2.0" + "@ckeditor/ckeditor5-icons" "47.2.0" + "@ckeditor/ckeditor5-ui" "47.2.0" + "@ckeditor/ckeditor5-utils" "47.2.0" + ckeditor5 "47.2.0" -"@ckeditor/ckeditor5-autoformat@47.1.0": - version "47.1.0" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-autoformat/-/ckeditor5-autoformat-47.1.0.tgz#b6bb33cb40223c55543b0e6b2ddc8049a39b0ba5" - integrity sha512-vnP5CNEDriVgFwUVocXyQ++yGrJnkp8V5YCQZv76nZPSed02soL62MRm6M9A4GOAXpEJMe7d5NWom73ieRfcVA== +"@ckeditor/ckeditor5-autoformat@47.2.0": + version "47.2.0" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-autoformat/-/ckeditor5-autoformat-47.2.0.tgz#78887a9ba872d806805fc4cde229414426de4128" + integrity sha512-d9ZwAB8JwWlgLK2Um+u3ctiCtv5bkBHGk/rSdXB6D/V7QHCl31NyPFYByxTyCOY9SsoNn1l/8zbJfvp89LJm2w== dependencies: - "@ckeditor/ckeditor5-core" "47.1.0" - "@ckeditor/ckeditor5-engine" "47.1.0" - "@ckeditor/ckeditor5-heading" "47.1.0" - "@ckeditor/ckeditor5-typing" "47.1.0" - "@ckeditor/ckeditor5-utils" "47.1.0" - ckeditor5 "47.1.0" + "@ckeditor/ckeditor5-core" "47.2.0" + "@ckeditor/ckeditor5-engine" "47.2.0" + "@ckeditor/ckeditor5-heading" "47.2.0" + "@ckeditor/ckeditor5-typing" "47.2.0" + "@ckeditor/ckeditor5-utils" "47.2.0" + ckeditor5 "47.2.0" -"@ckeditor/ckeditor5-autosave@47.1.0": - version "47.1.0" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-autosave/-/ckeditor5-autosave-47.1.0.tgz#f3e16f63c7d3da92df51ea571aa6b20a98322ae6" - integrity sha512-3wjI/RNSgXZhG4RMTwl/LByaZyHLV+cixKN0hRqkjULj/i0H05A4Gu485v62FDwBlil1NhPTfKyrmiM/N/7n8g== +"@ckeditor/ckeditor5-autosave@47.2.0": + version "47.2.0" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-autosave/-/ckeditor5-autosave-47.2.0.tgz#4cbc1af19d358e991b5f57c9c1dbbfd30de9ebb9" + integrity sha512-44nGL/M0qLURA1BEFkqZg6JzpjtvGyWJEluv728vb29JNQUGx0iNykjHBgtPX5s1Ztblx5ZwqFiuNiLkpmHptg== dependencies: - "@ckeditor/ckeditor5-core" "47.1.0" - "@ckeditor/ckeditor5-utils" "47.1.0" - ckeditor5 "47.1.0" + "@ckeditor/ckeditor5-core" "47.2.0" + "@ckeditor/ckeditor5-utils" "47.2.0" + ckeditor5 "47.2.0" es-toolkit "1.39.5" -"@ckeditor/ckeditor5-basic-styles@47.1.0": - version "47.1.0" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-basic-styles/-/ckeditor5-basic-styles-47.1.0.tgz#3cfe4cc736d7833e3df82682990e8dcd9c191af7" - integrity sha512-WxiFFKUlisz8B3ymeBFijshDWmqX649TEA+1nxgjXHr0L0UONCJfBExanrRUJND6AwHIh1n2IIAXwXvYMdqZbw== +"@ckeditor/ckeditor5-basic-styles@47.2.0": + version "47.2.0" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-basic-styles/-/ckeditor5-basic-styles-47.2.0.tgz#ab1abe2306c6e6cec62393adc04b07997869351a" + integrity sha512-a8pPHq3CXmyxPPXPQZ8C92OOyBoCfpY8M30dS7et/dLXW3nuVo9VVLMw0vR1j+zcKXClp3+/odyw2/rxP+qntA== dependencies: - "@ckeditor/ckeditor5-core" "47.1.0" - "@ckeditor/ckeditor5-icons" "47.1.0" - "@ckeditor/ckeditor5-typing" "47.1.0" - "@ckeditor/ckeditor5-ui" "47.1.0" - "@ckeditor/ckeditor5-utils" "47.1.0" - ckeditor5 "47.1.0" + "@ckeditor/ckeditor5-core" "47.2.0" + "@ckeditor/ckeditor5-icons" "47.2.0" + "@ckeditor/ckeditor5-typing" "47.2.0" + "@ckeditor/ckeditor5-ui" "47.2.0" + "@ckeditor/ckeditor5-utils" "47.2.0" + ckeditor5 "47.2.0" -"@ckeditor/ckeditor5-block-quote@47.1.0": - version "47.1.0" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-block-quote/-/ckeditor5-block-quote-47.1.0.tgz#f2f2d20060b11bdb4ae966aa5a8aeeea6442f321" - integrity sha512-h+p/pFm0wNmozhFZcxxh6DmkGQCE3Jpukju0ovxiPnRO49PN+0cUsdbHuKYtJK6jxLfqwjfdHVOn1m+LyRRmkg== +"@ckeditor/ckeditor5-block-quote@47.2.0": + version "47.2.0" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-block-quote/-/ckeditor5-block-quote-47.2.0.tgz#39f9efd80f5a2b8cfa5ec438ee5bec25fd82f70f" + integrity sha512-BlFFfunyWpYcGhLsOmCR0yEz5VgrOmHREHQZIRcL6fKzXJwdpA/VFWPirotwF/QErJjguhhDZ5a3PBEnUAmW/A== dependencies: - "@ckeditor/ckeditor5-core" "47.1.0" - "@ckeditor/ckeditor5-enter" "47.1.0" - "@ckeditor/ckeditor5-icons" "47.1.0" - "@ckeditor/ckeditor5-typing" "47.1.0" - "@ckeditor/ckeditor5-ui" "47.1.0" - "@ckeditor/ckeditor5-utils" "47.1.0" - ckeditor5 "47.1.0" + "@ckeditor/ckeditor5-core" "47.2.0" + "@ckeditor/ckeditor5-enter" "47.2.0" + "@ckeditor/ckeditor5-icons" "47.2.0" + "@ckeditor/ckeditor5-typing" "47.2.0" + "@ckeditor/ckeditor5-ui" "47.2.0" + "@ckeditor/ckeditor5-utils" "47.2.0" + ckeditor5 "47.2.0" -"@ckeditor/ckeditor5-bookmark@47.1.0": - version "47.1.0" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-bookmark/-/ckeditor5-bookmark-47.1.0.tgz#666b88e660a839b171df25da804052752e249eca" - integrity sha512-B7Q0IzaN6iA80B3YkXihXo7gRad5TpKyhTI9x3XvbpCDzO+sBNyOEAy6d6CWmlhQsIZ6mn+hUn2q9N4nACybiw== +"@ckeditor/ckeditor5-bookmark@47.2.0": + version "47.2.0" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-bookmark/-/ckeditor5-bookmark-47.2.0.tgz#b370892c4cbb4570c2c526546ff14dd37cfb3df6" + integrity sha512-FDFDZXm8MqktIt3x0WVrYFuXy9sxcCH31Cpa0/mV19lW8CzoCZCAfvXNzPWsz2eFo8qOsna2c/e55ax8OM/Ncg== dependencies: - "@ckeditor/ckeditor5-core" "47.1.0" - "@ckeditor/ckeditor5-icons" "47.1.0" - "@ckeditor/ckeditor5-link" "47.1.0" - "@ckeditor/ckeditor5-ui" "47.1.0" - "@ckeditor/ckeditor5-utils" "47.1.0" - "@ckeditor/ckeditor5-widget" "47.1.0" - ckeditor5 "47.1.0" + "@ckeditor/ckeditor5-core" "47.2.0" + "@ckeditor/ckeditor5-icons" "47.2.0" + "@ckeditor/ckeditor5-link" "47.2.0" + "@ckeditor/ckeditor5-ui" "47.2.0" + "@ckeditor/ckeditor5-utils" "47.2.0" + "@ckeditor/ckeditor5-widget" "47.2.0" + ckeditor5 "47.2.0" -"@ckeditor/ckeditor5-ckbox@47.1.0": - version "47.1.0" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-ckbox/-/ckeditor5-ckbox-47.1.0.tgz#1650eaa59f94ce5b12e155055248befcf509d03c" - integrity sha512-DgTxePr5fE7yaQCjaSMlKNf5j38NGjywg9//l7XeVvxLmJJgQrN7G7xaX/vl55H2jGZF0LrM4IyS9mbyfUj1bQ== +"@ckeditor/ckeditor5-ckbox@47.2.0": + version "47.2.0" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-ckbox/-/ckeditor5-ckbox-47.2.0.tgz#98a3400167f62dfb080d83a8d753647debcb12a3" + integrity sha512-Cu+nJTXhcmdE8DWHoTY1nrrjxyG4pfxMrEcO/PNV28cojwtOQaWGt4EbWlXOfZZTEWlZO18JIw/YrxYXwx5mTA== dependencies: - "@ckeditor/ckeditor5-cloud-services" "47.1.0" - "@ckeditor/ckeditor5-core" "47.1.0" - "@ckeditor/ckeditor5-engine" "47.1.0" - "@ckeditor/ckeditor5-icons" "47.1.0" - "@ckeditor/ckeditor5-image" "47.1.0" - "@ckeditor/ckeditor5-ui" "47.1.0" - "@ckeditor/ckeditor5-upload" "47.1.0" - "@ckeditor/ckeditor5-utils" "47.1.0" + "@ckeditor/ckeditor5-cloud-services" "47.2.0" + "@ckeditor/ckeditor5-core" "47.2.0" + "@ckeditor/ckeditor5-engine" "47.2.0" + "@ckeditor/ckeditor5-icons" "47.2.0" + "@ckeditor/ckeditor5-image" "47.2.0" + "@ckeditor/ckeditor5-ui" "47.2.0" + "@ckeditor/ckeditor5-upload" "47.2.0" + "@ckeditor/ckeditor5-utils" "47.2.0" blurhash "2.0.5" - ckeditor5 "47.1.0" + ckeditor5 "47.2.0" es-toolkit "1.39.5" -"@ckeditor/ckeditor5-ckfinder@47.1.0": - version "47.1.0" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-ckfinder/-/ckeditor5-ckfinder-47.1.0.tgz#1a1fc4a34d9167c132c35aa1848b6f7d84b5d9e3" - integrity sha512-eQPgvW+cSA2p5EVyoJv0NIOYorS5DoAxKdcBcxrKc433yuC7fKsZ1awp5aWJOUOfRzGLAa1WYikR7OKvmTjzYg== +"@ckeditor/ckeditor5-ckfinder@47.2.0": + version "47.2.0" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-ckfinder/-/ckeditor5-ckfinder-47.2.0.tgz#2f3be378adfa40d718d8a05d91fd304068f22943" + integrity sha512-nsxn9weZNwdplW/BHfEJ/rvb+wZj0KECN2Av9zFRekTxE1mp0hTShQ9MNlKImRQ4X2UV6bGN6+DXwJJIU0smlQ== dependencies: - "@ckeditor/ckeditor5-core" "47.1.0" - "@ckeditor/ckeditor5-icons" "47.1.0" - "@ckeditor/ckeditor5-image" "47.1.0" - "@ckeditor/ckeditor5-ui" "47.1.0" - "@ckeditor/ckeditor5-utils" "47.1.0" - ckeditor5 "47.1.0" + "@ckeditor/ckeditor5-core" "47.2.0" + "@ckeditor/ckeditor5-icons" "47.2.0" + "@ckeditor/ckeditor5-image" "47.2.0" + "@ckeditor/ckeditor5-ui" "47.2.0" + "@ckeditor/ckeditor5-utils" "47.2.0" + ckeditor5 "47.2.0" -"@ckeditor/ckeditor5-clipboard@47.1.0": - version "47.1.0" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-clipboard/-/ckeditor5-clipboard-47.1.0.tgz#4b7eec58bc6956f6267025f6798050d53cf1171e" - integrity sha512-xxF9TuV6pWfos1okaS20CFTQN1CD3lOSyZXIJ/IodznpF7f9GYzhhvyOYXJO5fH6T8F0BbR5P94gon8QnAMivg== +"@ckeditor/ckeditor5-clipboard@47.2.0": + version "47.2.0" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-clipboard/-/ckeditor5-clipboard-47.2.0.tgz#668117643acceb343b764b07a26410ef70841ea7" + integrity sha512-x/ehXk+ga5tnumA8TenrZRU684DvpzzhTLfZScRxX3/3BJPYlFp7BWx60KJPQHKXYgb+I0qkQrgxuBXp83ed2g== dependencies: - "@ckeditor/ckeditor5-core" "47.1.0" - "@ckeditor/ckeditor5-engine" "47.1.0" - "@ckeditor/ckeditor5-ui" "47.1.0" - "@ckeditor/ckeditor5-utils" "47.1.0" - "@ckeditor/ckeditor5-widget" "47.1.0" + "@ckeditor/ckeditor5-core" "47.2.0" + "@ckeditor/ckeditor5-engine" "47.2.0" + "@ckeditor/ckeditor5-ui" "47.2.0" + "@ckeditor/ckeditor5-utils" "47.2.0" + "@ckeditor/ckeditor5-widget" "47.2.0" es-toolkit "1.39.5" -"@ckeditor/ckeditor5-cloud-services@47.1.0": - version "47.1.0" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-cloud-services/-/ckeditor5-cloud-services-47.1.0.tgz#91b43f3e1501df2c3e79913c509a47c62c94d6ed" - integrity sha512-yLH1eTxWMrzF16CFdu/RJAwzcGYaKKS+gQfX3aRjIphtkY9ebnS1SbelP12ZXUBp/vcTguSYjUrPUwnstoadew== +"@ckeditor/ckeditor5-cloud-services@47.2.0": + version "47.2.0" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-cloud-services/-/ckeditor5-cloud-services-47.2.0.tgz#119a004b2f7a72664c05351e6dd72dcc43d0d8fc" + integrity sha512-794mxJ8MFhz2SxSjlMSp4cZbyBBpVjinQ3GxOS5VqO7H4m/iT2hdSPJaWpML53soxpEoG/6ax4vVKe5d0+xoqA== dependencies: - "@ckeditor/ckeditor5-core" "47.1.0" - "@ckeditor/ckeditor5-utils" "47.1.0" - ckeditor5 "47.1.0" + "@ckeditor/ckeditor5-core" "47.2.0" + "@ckeditor/ckeditor5-utils" "47.2.0" + ckeditor5 "47.2.0" -"@ckeditor/ckeditor5-code-block@47.1.0": - version "47.1.0" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-code-block/-/ckeditor5-code-block-47.1.0.tgz#bac7fa799cee6d71e27da7d93ccd450fcc663a3b" - integrity sha512-FGQD/B5BXHesqgijjBV3wm4tBDNKMjGodsTPjW++NkezgBgzOWdBnl6svpMns+xjtEVFnhkjA9hQt6vbHevJmA== +"@ckeditor/ckeditor5-code-block@47.2.0": + version "47.2.0" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-code-block/-/ckeditor5-code-block-47.2.0.tgz#9fbeb02ff87a798d624d2c461a86ce7b9c5edc2d" + integrity sha512-8SH10L7i+wirkouDmg4MdBN4R3AZDyutsuSCwDPALoKSHQs7KlYB+8TJxcejt/dSBd0JWgrBi7rVu9Arkk3I1A== dependencies: - "@ckeditor/ckeditor5-clipboard" "47.1.0" - "@ckeditor/ckeditor5-core" "47.1.0" - "@ckeditor/ckeditor5-engine" "47.1.0" - "@ckeditor/ckeditor5-enter" "47.1.0" - "@ckeditor/ckeditor5-icons" "47.1.0" - "@ckeditor/ckeditor5-ui" "47.1.0" - "@ckeditor/ckeditor5-utils" "47.1.0" - ckeditor5 "47.1.0" + "@ckeditor/ckeditor5-clipboard" "47.2.0" + "@ckeditor/ckeditor5-core" "47.2.0" + "@ckeditor/ckeditor5-engine" "47.2.0" + "@ckeditor/ckeditor5-enter" "47.2.0" + "@ckeditor/ckeditor5-icons" "47.2.0" + "@ckeditor/ckeditor5-ui" "47.2.0" + "@ckeditor/ckeditor5-utils" "47.2.0" + ckeditor5 "47.2.0" -"@ckeditor/ckeditor5-core@47.1.0": - version "47.1.0" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-core/-/ckeditor5-core-47.1.0.tgz#7ee7fa6e5710f1f50f7893d03448c10286a31ab3" - integrity sha512-CKE/cxzyAECL9rXMCTiQfNtIwy8x24zSyjQgU44FB59H/eUksw9FYaDdRgNs/PvW/gdW7JdCPiaOI3m28wYmHg== +"@ckeditor/ckeditor5-core@47.2.0": + version "47.2.0" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-core/-/ckeditor5-core-47.2.0.tgz#90976e6e8b18008ead5c8a33fee690d8ddf297f0" + integrity sha512-NwUNa25g//ScxaVPASalcGfMDhUSv7nIpxC07oVv99zJjk64RTBr4TZHpjKLCVqN9gAn3phAtjtkxa2KOgOMtQ== dependencies: - "@ckeditor/ckeditor5-engine" "47.1.0" - "@ckeditor/ckeditor5-ui" "47.1.0" - "@ckeditor/ckeditor5-utils" "47.1.0" - "@ckeditor/ckeditor5-watchdog" "47.1.0" + "@ckeditor/ckeditor5-engine" "47.2.0" + "@ckeditor/ckeditor5-ui" "47.2.0" + "@ckeditor/ckeditor5-utils" "47.2.0" + "@ckeditor/ckeditor5-watchdog" "47.2.0" es-toolkit "1.39.5" "@ckeditor/ckeditor5-dev-translations@^43.0.1", "@ckeditor/ckeditor5-dev-translations@^43.1.0": @@ -1033,316 +1033,316 @@ terser-webpack-plugin "^4.2.3" through2 "^3.0.1" -"@ckeditor/ckeditor5-easy-image@47.1.0": - version "47.1.0" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-easy-image/-/ckeditor5-easy-image-47.1.0.tgz#261bc7b9e0a71547b7d6c28e9c305064a1785104" - integrity sha512-V/8nSXle8D/XzC6NSmNatcYoZzy7SXOsNFbLgXN+2gOFguhexmgVagBAiHgGCUpZTNTmkQRTI5VpiI5mfAHt+g== +"@ckeditor/ckeditor5-easy-image@47.2.0": + version "47.2.0" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-easy-image/-/ckeditor5-easy-image-47.2.0.tgz#03e8be382b9ab2a281dab18703bc66a1b4c9735f" + integrity sha512-lSnbiGDzYdu9GeOaYjVpowaZWDJbrb7NHCuUN5Af2474jXTDyYmG7qOm39fWEBlcxjMTzDR8fFzPcRNhOvSRRA== dependencies: - "@ckeditor/ckeditor5-cloud-services" "47.1.0" - "@ckeditor/ckeditor5-core" "47.1.0" - "@ckeditor/ckeditor5-upload" "47.1.0" - "@ckeditor/ckeditor5-utils" "47.1.0" - ckeditor5 "47.1.0" + "@ckeditor/ckeditor5-cloud-services" "47.2.0" + "@ckeditor/ckeditor5-core" "47.2.0" + "@ckeditor/ckeditor5-upload" "47.2.0" + "@ckeditor/ckeditor5-utils" "47.2.0" + ckeditor5 "47.2.0" -"@ckeditor/ckeditor5-editor-balloon@47.1.0": - version "47.1.0" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-editor-balloon/-/ckeditor5-editor-balloon-47.1.0.tgz#52a48193e0b4c3c984ba15703309904c3e614684" - integrity sha512-M/d8zWQgGbtQPKAyYOBZdEeDBaQXiXmwUIi1rMULL7IGxQDvfHAHB6T7mu3GU39oay0HkM+LGWnz5GZ8oG7HNw== +"@ckeditor/ckeditor5-editor-balloon@47.2.0": + version "47.2.0" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-editor-balloon/-/ckeditor5-editor-balloon-47.2.0.tgz#2207ec688750ad70dbbbd08f9a7f767be09c46fa" + integrity sha512-szIx59pnw6kgxYuAyqecMnSlwtwWu2q23XV4TpKF/V3NlHs9ZeIFusTX3icO8JLQR4ExsYa0bsYpabGdZdx2Ug== dependencies: - "@ckeditor/ckeditor5-core" "47.1.0" - "@ckeditor/ckeditor5-engine" "47.1.0" - "@ckeditor/ckeditor5-ui" "47.1.0" - "@ckeditor/ckeditor5-utils" "47.1.0" - ckeditor5 "47.1.0" + "@ckeditor/ckeditor5-core" "47.2.0" + "@ckeditor/ckeditor5-engine" "47.2.0" + "@ckeditor/ckeditor5-ui" "47.2.0" + "@ckeditor/ckeditor5-utils" "47.2.0" + ckeditor5 "47.2.0" es-toolkit "1.39.5" -"@ckeditor/ckeditor5-editor-classic@47.1.0": - version "47.1.0" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-editor-classic/-/ckeditor5-editor-classic-47.1.0.tgz#e8a043d479512601a13a403952594eddb72f5612" - integrity sha512-x4aegRral5LTV1kURmjnp/tLSE1nttH+MsVkrVLWJd0j2A0qj88BLSccmY71ybFgMcDKlwJD6kVT0ZNKsvRogw== +"@ckeditor/ckeditor5-editor-classic@47.2.0": + version "47.2.0" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-editor-classic/-/ckeditor5-editor-classic-47.2.0.tgz#13c8b376341475940e8d42a642f598a453a0bf24" + integrity sha512-fYy4RKmvM4kYvUgCRuBdUqVLE8ts1Kj4q1Caaq5VZyBudmaj/RZqQBSdiu5pZgKMdj1oMaIQ5Gextg96iJ3LTw== dependencies: - "@ckeditor/ckeditor5-core" "47.1.0" - "@ckeditor/ckeditor5-engine" "47.1.0" - "@ckeditor/ckeditor5-ui" "47.1.0" - "@ckeditor/ckeditor5-utils" "47.1.0" - ckeditor5 "47.1.0" + "@ckeditor/ckeditor5-core" "47.2.0" + "@ckeditor/ckeditor5-engine" "47.2.0" + "@ckeditor/ckeditor5-ui" "47.2.0" + "@ckeditor/ckeditor5-utils" "47.2.0" + ckeditor5 "47.2.0" es-toolkit "1.39.5" -"@ckeditor/ckeditor5-editor-decoupled@47.1.0": - version "47.1.0" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-editor-decoupled/-/ckeditor5-editor-decoupled-47.1.0.tgz#0a680fe62e0afc98dea137789bb6f02d57a4c5ee" - integrity sha512-rqTmzMot1rjCz3cqtQkVRou8RgVFItRXeCNY0Ljg3aLcAaNcbwYSYSeJtQpMoyhasSh3cCUqyG9PRnfNYpzTNQ== +"@ckeditor/ckeditor5-editor-decoupled@47.2.0": + version "47.2.0" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-editor-decoupled/-/ckeditor5-editor-decoupled-47.2.0.tgz#7ed46a30eff38893d88094d4863709b2a77a9239" + integrity sha512-h1Yw6/XHeEe5aW/4VV0njAGe5nsuIBkARCun039noA+b2bq+Qb9bAExzaSHULf7nZW4HHVJMcYvb2HwcX8MZ6g== dependencies: - "@ckeditor/ckeditor5-core" "47.1.0" - "@ckeditor/ckeditor5-engine" "47.1.0" - "@ckeditor/ckeditor5-ui" "47.1.0" - "@ckeditor/ckeditor5-utils" "47.1.0" - ckeditor5 "47.1.0" + "@ckeditor/ckeditor5-core" "47.2.0" + "@ckeditor/ckeditor5-engine" "47.2.0" + "@ckeditor/ckeditor5-ui" "47.2.0" + "@ckeditor/ckeditor5-utils" "47.2.0" + ckeditor5 "47.2.0" es-toolkit "1.39.5" -"@ckeditor/ckeditor5-editor-inline@47.1.0": - version "47.1.0" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-editor-inline/-/ckeditor5-editor-inline-47.1.0.tgz#8669730ba1e0ba15d39655fa970e269c31a2f17e" - integrity sha512-By4mi4p7oReWx8SAyUtq7cIhF1BH63DABJLbj7kaT3MsFlMXOp4FheZpGEMFJbOt8jKx9Du1EU/PFWlUeNoPLw== +"@ckeditor/ckeditor5-editor-inline@47.2.0": + version "47.2.0" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-editor-inline/-/ckeditor5-editor-inline-47.2.0.tgz#1c82e1713d7e03bb97904704fcc8c949aa0703f5" + integrity sha512-6kGG8Q4ggOim7KU/J3iMvmf5/faNjYL/ucg2RPMvzhH/eTqlZBlMdDid86b0YAW0fbKPvIIACifoOBHIGlcZyA== dependencies: - "@ckeditor/ckeditor5-core" "47.1.0" - "@ckeditor/ckeditor5-engine" "47.1.0" - "@ckeditor/ckeditor5-ui" "47.1.0" - "@ckeditor/ckeditor5-utils" "47.1.0" - ckeditor5 "47.1.0" + "@ckeditor/ckeditor5-core" "47.2.0" + "@ckeditor/ckeditor5-engine" "47.2.0" + "@ckeditor/ckeditor5-ui" "47.2.0" + "@ckeditor/ckeditor5-utils" "47.2.0" + ckeditor5 "47.2.0" es-toolkit "1.39.5" -"@ckeditor/ckeditor5-editor-multi-root@47.1.0": - version "47.1.0" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-editor-multi-root/-/ckeditor5-editor-multi-root-47.1.0.tgz#3abcbb1a155c7a0a2e9190fe44f9eae3d4a786f8" - integrity sha512-BjAOWtAOg8g1E8WJoRj73RoRpyTb1nLtHU2AgxLlaYubGcXfokVvyPz4VU2cDTUq3Zg6chjPeRw74ybLmI2LBg== +"@ckeditor/ckeditor5-editor-multi-root@47.2.0": + version "47.2.0" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-editor-multi-root/-/ckeditor5-editor-multi-root-47.2.0.tgz#03dcca7fad6e91851e1cd128168049587df5833a" + integrity sha512-bIkPzkpLGznNnDLAuSkVNP+LfICLbUj80IdkVLB9KeXnuZ1WKYkLqBGfDv6y70iJnANAiiP6Z8EaucBNzfjS7g== dependencies: - "@ckeditor/ckeditor5-core" "47.1.0" - "@ckeditor/ckeditor5-engine" "47.1.0" - "@ckeditor/ckeditor5-ui" "47.1.0" - "@ckeditor/ckeditor5-utils" "47.1.0" - ckeditor5 "47.1.0" + "@ckeditor/ckeditor5-core" "47.2.0" + "@ckeditor/ckeditor5-engine" "47.2.0" + "@ckeditor/ckeditor5-ui" "47.2.0" + "@ckeditor/ckeditor5-utils" "47.2.0" + ckeditor5 "47.2.0" es-toolkit "1.39.5" -"@ckeditor/ckeditor5-emoji@47.1.0": - version "47.1.0" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-emoji/-/ckeditor5-emoji-47.1.0.tgz#848a78183d6cfc1f2101d69a05a773e3e276b376" - integrity sha512-8Kicj1md0PfdGtlUxK0kTrLJncYnrhj7OzVqen42ygxiU3PrZrdSApDBg0a8DVb0Skvjb2GhOcBCN7UZptK7LQ== +"@ckeditor/ckeditor5-emoji@47.2.0": + version "47.2.0" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-emoji/-/ckeditor5-emoji-47.2.0.tgz#22b7809008dcf9fe0726b899d2f29edfe425a22f" + integrity sha512-pS1G0QVFOK2Z+BLrVmm6pVjFZRpkC95YgQeASuuIySLZBllYD3+tlys2lPt3el5PAd0IQB7s85XuTdbCXDFr6A== dependencies: - "@ckeditor/ckeditor5-core" "47.1.0" - "@ckeditor/ckeditor5-icons" "47.1.0" - "@ckeditor/ckeditor5-mention" "47.1.0" - "@ckeditor/ckeditor5-typing" "47.1.0" - "@ckeditor/ckeditor5-ui" "47.1.0" - "@ckeditor/ckeditor5-utils" "47.1.0" - ckeditor5 "47.1.0" + "@ckeditor/ckeditor5-core" "47.2.0" + "@ckeditor/ckeditor5-icons" "47.2.0" + "@ckeditor/ckeditor5-mention" "47.2.0" + "@ckeditor/ckeditor5-typing" "47.2.0" + "@ckeditor/ckeditor5-ui" "47.2.0" + "@ckeditor/ckeditor5-utils" "47.2.0" + ckeditor5 "47.2.0" es-toolkit "1.39.5" fuzzysort "3.1.0" -"@ckeditor/ckeditor5-engine@47.1.0": - version "47.1.0" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-engine/-/ckeditor5-engine-47.1.0.tgz#a1b258b5122caa105f0a32ab4998305a6faac440" - integrity sha512-uXlD+UKSb6wC5OBzQm5Sn0PYTYNpa4Jccdk61Z6U9h1lAZI4KV4SU12vRL5XG20bI0PIQvBo7Lhy7Va635kiqw== +"@ckeditor/ckeditor5-engine@47.2.0": + version "47.2.0" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-engine/-/ckeditor5-engine-47.2.0.tgz#578446d200a16d5f25de3a558085501f14a60f72" + integrity sha512-T3pFgycam60ytkbLOo2r99UPkbalLfzp4e6QrDVdZnloY7BO46zAbU5p3TqgfCdxODPhZh7srFGzANh6IsLMeg== dependencies: - "@ckeditor/ckeditor5-utils" "47.1.0" + "@ckeditor/ckeditor5-utils" "47.2.0" es-toolkit "1.39.5" -"@ckeditor/ckeditor5-enter@47.1.0": - version "47.1.0" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-enter/-/ckeditor5-enter-47.1.0.tgz#817bc9daba3ece88d1e00f82b6aca241db04bdd0" - integrity sha512-Vkm4rPCTrimJ3LcdPPXQZc86Wb920kish6ckXTSkoPPAe9Ef2fVlKZYggWrXBI4VZ6tegTepSFpZiMqa1/a00w== +"@ckeditor/ckeditor5-enter@47.2.0": + version "47.2.0" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-enter/-/ckeditor5-enter-47.2.0.tgz#775fc49e28c64c90d4286341f983982be3c2fda1" + integrity sha512-7ZHfrxDSs55IXgs5yAX6Nl8COY1dqefZ5HiWT/UM0cOP/4aMffp5I1yYYP7NVfBkTW9DlUoeAkHFTv2miTwclQ== dependencies: - "@ckeditor/ckeditor5-core" "47.1.0" - "@ckeditor/ckeditor5-engine" "47.1.0" - "@ckeditor/ckeditor5-utils" "47.1.0" + "@ckeditor/ckeditor5-core" "47.2.0" + "@ckeditor/ckeditor5-engine" "47.2.0" + "@ckeditor/ckeditor5-utils" "47.2.0" -"@ckeditor/ckeditor5-essentials@47.1.0": - version "47.1.0" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-essentials/-/ckeditor5-essentials-47.1.0.tgz#fcb712c32daa498239b4abe844c32ec32c5a5f47" - integrity sha512-lpXxfBQ7GocQ4klO2GTZYSxJFhymI2WwxaKklI+rh729dcxsIsjih1sXwSLM6kqwPbveF/9WgDBy3I6kqzRmqg== +"@ckeditor/ckeditor5-essentials@47.2.0": + version "47.2.0" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-essentials/-/ckeditor5-essentials-47.2.0.tgz#8b1850ddd0725709a4acf65d55bfe6ccbc39b227" + integrity sha512-d3hHtkuLhvI+RvsDU7cKFc/K9uD27Tvi4NVjALcN1Ybr0k8dkJFGU1nUwXuo6zcdqRnkIJMWxIR+cwteuMCGQg== dependencies: - "@ckeditor/ckeditor5-clipboard" "47.1.0" - "@ckeditor/ckeditor5-core" "47.1.0" - "@ckeditor/ckeditor5-enter" "47.1.0" - "@ckeditor/ckeditor5-select-all" "47.1.0" - "@ckeditor/ckeditor5-typing" "47.1.0" - "@ckeditor/ckeditor5-ui" "47.1.0" - "@ckeditor/ckeditor5-undo" "47.1.0" - ckeditor5 "47.1.0" + "@ckeditor/ckeditor5-clipboard" "47.2.0" + "@ckeditor/ckeditor5-core" "47.2.0" + "@ckeditor/ckeditor5-enter" "47.2.0" + "@ckeditor/ckeditor5-select-all" "47.2.0" + "@ckeditor/ckeditor5-typing" "47.2.0" + "@ckeditor/ckeditor5-ui" "47.2.0" + "@ckeditor/ckeditor5-undo" "47.2.0" + ckeditor5 "47.2.0" -"@ckeditor/ckeditor5-find-and-replace@47.1.0": - version "47.1.0" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-find-and-replace/-/ckeditor5-find-and-replace-47.1.0.tgz#cc5bc8ea00970000356f65e9641d305687fdc04a" - integrity sha512-H3c69XM7fLdlnt20gdNSU1fMwA+1yYfboFWQ07PlA8M/D9H7ZKUmBlI846flSssFp1kPLGhPDTryun6c7zERPg== +"@ckeditor/ckeditor5-find-and-replace@47.2.0": + version "47.2.0" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-find-and-replace/-/ckeditor5-find-and-replace-47.2.0.tgz#d2fcc24d6be08d56c1e195bd03625e4acc2911c1" + integrity sha512-34Uzpbxi+/eJx/0CR9/T92wDaw67KLaYcm39+RY4OUCxC9EywEFruIJEg/M/Xu4iTVjdVKbpQ3ovGBuciiL1vQ== dependencies: - "@ckeditor/ckeditor5-core" "47.1.0" - "@ckeditor/ckeditor5-icons" "47.1.0" - "@ckeditor/ckeditor5-ui" "47.1.0" - "@ckeditor/ckeditor5-utils" "47.1.0" - ckeditor5 "47.1.0" + "@ckeditor/ckeditor5-core" "47.2.0" + "@ckeditor/ckeditor5-icons" "47.2.0" + "@ckeditor/ckeditor5-ui" "47.2.0" + "@ckeditor/ckeditor5-utils" "47.2.0" + ckeditor5 "47.2.0" es-toolkit "1.39.5" -"@ckeditor/ckeditor5-font@47.1.0": - version "47.1.0" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-font/-/ckeditor5-font-47.1.0.tgz#702ad5d62999e685cd1e7a45ce3b67d9861ac31c" - integrity sha512-QiKlsqbcMAAlVAoxrBBxe062adBfTfTKHBLJ/VbBMBYszYaWNoG5VJKLQbXnKBVGWD07rE7rXa/vnenCvpT8hQ== +"@ckeditor/ckeditor5-font@47.2.0": + version "47.2.0" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-font/-/ckeditor5-font-47.2.0.tgz#19402eb3a8c397657e1f7767ddb807e63bc62009" + integrity sha512-X/AYeNHc3Hibd56OfPwOEdYRIGX3eWtGQ/qIAEVkS2xCEDPhM0fTHpLTEpDsMukw9NRAqmhnQHIp2amGaOwY8g== dependencies: - "@ckeditor/ckeditor5-core" "47.1.0" - "@ckeditor/ckeditor5-engine" "47.1.0" - "@ckeditor/ckeditor5-icons" "47.1.0" - "@ckeditor/ckeditor5-ui" "47.1.0" - "@ckeditor/ckeditor5-utils" "47.1.0" - ckeditor5 "47.1.0" + "@ckeditor/ckeditor5-core" "47.2.0" + "@ckeditor/ckeditor5-engine" "47.2.0" + "@ckeditor/ckeditor5-icons" "47.2.0" + "@ckeditor/ckeditor5-ui" "47.2.0" + "@ckeditor/ckeditor5-utils" "47.2.0" + ckeditor5 "47.2.0" -"@ckeditor/ckeditor5-fullscreen@47.1.0": - version "47.1.0" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-fullscreen/-/ckeditor5-fullscreen-47.1.0.tgz#65070903598e5f3640887bf1040f90b5135bcc81" - integrity sha512-LSC62HAW2cmThX2bJOPXcUrxy3sULGStj5G//PdTuxz1z6WbPbF4xst1ockHmaRJeoJUcdt89Qv7C0WFl3j4lw== +"@ckeditor/ckeditor5-fullscreen@47.2.0": + version "47.2.0" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-fullscreen/-/ckeditor5-fullscreen-47.2.0.tgz#7ac86bd80b3ff33ab600cc662cd35eb4b47936f5" + integrity sha512-Kf//0eQIuslGNVSbNkHXBELn/jZT+OsTIeo8PulZEbVI5do0vB/52w0F40rhgk8EudlGTxEmMOi0x/jrdR0MHg== dependencies: - "@ckeditor/ckeditor5-core" "47.1.0" - "@ckeditor/ckeditor5-editor-classic" "47.1.0" - "@ckeditor/ckeditor5-editor-decoupled" "47.1.0" - "@ckeditor/ckeditor5-icons" "47.1.0" - "@ckeditor/ckeditor5-ui" "47.1.0" - "@ckeditor/ckeditor5-utils" "47.1.0" - ckeditor5 "47.1.0" + "@ckeditor/ckeditor5-core" "47.2.0" + "@ckeditor/ckeditor5-editor-classic" "47.2.0" + "@ckeditor/ckeditor5-editor-decoupled" "47.2.0" + "@ckeditor/ckeditor5-icons" "47.2.0" + "@ckeditor/ckeditor5-ui" "47.2.0" + "@ckeditor/ckeditor5-utils" "47.2.0" + ckeditor5 "47.2.0" -"@ckeditor/ckeditor5-heading@47.1.0": - version "47.1.0" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-heading/-/ckeditor5-heading-47.1.0.tgz#de9465cfb770b28fa0b4210c3e727b0d38c183a6" - integrity sha512-HD+mWG5W5kk5fE2G9TFP/ktiU1CU8sA6mOyO6epd+0nsSwacTynKJkszgTVsd9HeY6wZopdqTHa1Dun/9wsxPA== +"@ckeditor/ckeditor5-heading@47.2.0": + version "47.2.0" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-heading/-/ckeditor5-heading-47.2.0.tgz#0487b8bb36936409d8cbf4da067ca18976b7f525" + integrity sha512-m1zSERVh7gdVXwLLYgcAsy7lkIOuadmA5YuwyPpR/g3oa0j1gcuNm5y/73MTOPflPUn0g0Y9DzocF2G1WY2NiQ== dependencies: - "@ckeditor/ckeditor5-core" "47.1.0" - "@ckeditor/ckeditor5-engine" "47.1.0" - "@ckeditor/ckeditor5-icons" "47.1.0" - "@ckeditor/ckeditor5-paragraph" "47.1.0" - "@ckeditor/ckeditor5-ui" "47.1.0" - "@ckeditor/ckeditor5-utils" "47.1.0" - ckeditor5 "47.1.0" + "@ckeditor/ckeditor5-core" "47.2.0" + "@ckeditor/ckeditor5-engine" "47.2.0" + "@ckeditor/ckeditor5-icons" "47.2.0" + "@ckeditor/ckeditor5-paragraph" "47.2.0" + "@ckeditor/ckeditor5-ui" "47.2.0" + "@ckeditor/ckeditor5-utils" "47.2.0" + ckeditor5 "47.2.0" -"@ckeditor/ckeditor5-highlight@47.1.0": - version "47.1.0" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-highlight/-/ckeditor5-highlight-47.1.0.tgz#05bf9f1f3c7efbcdde89d0873b9dbac2445405ff" - integrity sha512-K5sO/etY+Nh67r3dsXArPWI5UjOGKQdbS4k5AU30m0vCK9IfGO9BLCUzBnxo6JM91lfOhY96yCqg3zaOU/C0wg== +"@ckeditor/ckeditor5-highlight@47.2.0": + version "47.2.0" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-highlight/-/ckeditor5-highlight-47.2.0.tgz#1e9c0d4c13602ba76dea0f03e4fc5fb0cbf4a1d3" + integrity sha512-Fp59HRybXJpJl/DtliMTjiVrIA95jmm0SptvXtIucD0hdP9ZX6TOFPTzrRl29LZGITNuYDulPqvNTpFoechRmQ== dependencies: - "@ckeditor/ckeditor5-core" "47.1.0" - "@ckeditor/ckeditor5-icons" "47.1.0" - "@ckeditor/ckeditor5-ui" "47.1.0" - "@ckeditor/ckeditor5-utils" "47.1.0" - ckeditor5 "47.1.0" + "@ckeditor/ckeditor5-core" "47.2.0" + "@ckeditor/ckeditor5-icons" "47.2.0" + "@ckeditor/ckeditor5-ui" "47.2.0" + "@ckeditor/ckeditor5-utils" "47.2.0" + ckeditor5 "47.2.0" -"@ckeditor/ckeditor5-horizontal-line@47.1.0": - version "47.1.0" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-horizontal-line/-/ckeditor5-horizontal-line-47.1.0.tgz#aedc19c369dbc660ad84e1ef2f870abb3d761f60" - integrity sha512-ex+g4L0QvteKHtXGJXMu72wjCrMhQw+mEBWLZm20jLeaPf0eSkQ34ilTRFGwZTw/zfgqy69vMTbVV/SIDiYxvg== +"@ckeditor/ckeditor5-horizontal-line@47.2.0": + version "47.2.0" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-horizontal-line/-/ckeditor5-horizontal-line-47.2.0.tgz#b0a10cff4f2dddb78e0c9a130a4790e8efb27302" + integrity sha512-/DHVMhI9vNs/NI+NQBbUXdzsXHj9hGKihtNDmbV5UP3Hy7l32Gv8k9nJVnBlDbBbHI6Wpxjj6GUxAiLZ46mc1Q== dependencies: - "@ckeditor/ckeditor5-core" "47.1.0" - "@ckeditor/ckeditor5-icons" "47.1.0" - "@ckeditor/ckeditor5-ui" "47.1.0" - "@ckeditor/ckeditor5-utils" "47.1.0" - "@ckeditor/ckeditor5-widget" "47.1.0" - ckeditor5 "47.1.0" + "@ckeditor/ckeditor5-core" "47.2.0" + "@ckeditor/ckeditor5-icons" "47.2.0" + "@ckeditor/ckeditor5-ui" "47.2.0" + "@ckeditor/ckeditor5-utils" "47.2.0" + "@ckeditor/ckeditor5-widget" "47.2.0" + ckeditor5 "47.2.0" -"@ckeditor/ckeditor5-html-embed@47.1.0": - version "47.1.0" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-html-embed/-/ckeditor5-html-embed-47.1.0.tgz#74911d9914937c1a56b66ead4bf0b7ffccc33a80" - integrity sha512-HMfnHzSRrpKDealBWtq3cpvRGZuODBssw7f1paQxML2W/pRLd6eSb/Rc9a0O3DB2/NhXq8Bbl9aDv9ungz+SLg== +"@ckeditor/ckeditor5-html-embed@47.2.0": + version "47.2.0" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-html-embed/-/ckeditor5-html-embed-47.2.0.tgz#8dd20d32775aad62a21c1197d3209b5c438411cb" + integrity sha512-VhI789/KDKmQhz9nQqq64odOtLpwjJbPQ/Pf54J2d7AGDvbuNVkjAMVdj5xXXzb/nXdys6zM8lPQZfQGI/Ya8A== dependencies: - "@ckeditor/ckeditor5-core" "47.1.0" - "@ckeditor/ckeditor5-icons" "47.1.0" - "@ckeditor/ckeditor5-ui" "47.1.0" - "@ckeditor/ckeditor5-utils" "47.1.0" - "@ckeditor/ckeditor5-widget" "47.1.0" - ckeditor5 "47.1.0" + "@ckeditor/ckeditor5-core" "47.2.0" + "@ckeditor/ckeditor5-icons" "47.2.0" + "@ckeditor/ckeditor5-ui" "47.2.0" + "@ckeditor/ckeditor5-utils" "47.2.0" + "@ckeditor/ckeditor5-widget" "47.2.0" + ckeditor5 "47.2.0" -"@ckeditor/ckeditor5-html-support@47.1.0": - version "47.1.0" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-html-support/-/ckeditor5-html-support-47.1.0.tgz#c7a81d0d56e817ef834c4bb559330694154d4be3" - integrity sha512-TBnmlJ1JjMO973Q4A/e+UEv99CMhBezUAdLKqQ3+EztivTEeEb6YV+pmli8HPf7n0DI6UbkU0Kj/mdFUNiIzog== +"@ckeditor/ckeditor5-html-support@47.2.0": + version "47.2.0" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-html-support/-/ckeditor5-html-support-47.2.0.tgz#d9bef384af7e4535b570a4d52acc539a1745d13e" + integrity sha512-IwaFBdv0qQQXfnA1LHL2BVQoioNJa9T8NIKDq2OG3mXg02jJvhJl84QADJ0ro36igjKsyfttsl8lM1pf00XAhA== dependencies: - "@ckeditor/ckeditor5-core" "47.1.0" - "@ckeditor/ckeditor5-engine" "47.1.0" - "@ckeditor/ckeditor5-enter" "47.1.0" - "@ckeditor/ckeditor5-heading" "47.1.0" - "@ckeditor/ckeditor5-image" "47.1.0" - "@ckeditor/ckeditor5-list" "47.1.0" - "@ckeditor/ckeditor5-remove-format" "47.1.0" - "@ckeditor/ckeditor5-table" "47.1.0" - "@ckeditor/ckeditor5-utils" "47.1.0" - "@ckeditor/ckeditor5-widget" "47.1.0" - ckeditor5 "47.1.0" + "@ckeditor/ckeditor5-core" "47.2.0" + "@ckeditor/ckeditor5-engine" "47.2.0" + "@ckeditor/ckeditor5-enter" "47.2.0" + "@ckeditor/ckeditor5-heading" "47.2.0" + "@ckeditor/ckeditor5-image" "47.2.0" + "@ckeditor/ckeditor5-list" "47.2.0" + "@ckeditor/ckeditor5-remove-format" "47.2.0" + "@ckeditor/ckeditor5-table" "47.2.0" + "@ckeditor/ckeditor5-utils" "47.2.0" + "@ckeditor/ckeditor5-widget" "47.2.0" + ckeditor5 "47.2.0" es-toolkit "1.39.5" -"@ckeditor/ckeditor5-icons@47.1.0": - version "47.1.0" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-icons/-/ckeditor5-icons-47.1.0.tgz#ee6820a01e4b6222155e1b2bc64a22176c9e94ce" - integrity sha512-2tlGXuQrXiQFxb2U+67kzlkl4/4IlDEt6R+sPQnP+QR7wJNXQnK9zk4M2bc30r91/91iuCjx+AIzKerm0VwFJg== +"@ckeditor/ckeditor5-icons@47.2.0": + version "47.2.0" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-icons/-/ckeditor5-icons-47.2.0.tgz#0721f47f2ea7e8ae729f44e5a9815cc87e30571d" + integrity sha512-9rxAWNQEjZBHyMBQ8XXwfa+ubPBzQntd+nkWBAGTK6ddqHZIaQLsiLrUAdR5tyKKK9tnTkwyx1jycGRspZnoxw== -"@ckeditor/ckeditor5-image@47.1.0": - version "47.1.0" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-image/-/ckeditor5-image-47.1.0.tgz#2653db9c464d270b35c7e9d881b36b37b89d7487" - integrity sha512-BoVwiXD/l0yUxUsF9wLajo5p3b7TKamkKP7wAA/dkCUlWYzvzjQKwLwYoknNf3GgHLYuY5n6iRPvYQGvNsn6hg== +"@ckeditor/ckeditor5-image@47.2.0": + version "47.2.0" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-image/-/ckeditor5-image-47.2.0.tgz#4c7a50a05cebccc9e084269cbac1e22524e85203" + integrity sha512-XbXvRS++kFku0l7GABhsribmQTBC/SOAfimDNKjg5rayhAXCfovys7YmmU0eicydpo4//fAaa8zvDYc8uXWZGA== dependencies: - "@ckeditor/ckeditor5-clipboard" "47.1.0" - "@ckeditor/ckeditor5-core" "47.1.0" - "@ckeditor/ckeditor5-engine" "47.1.0" - "@ckeditor/ckeditor5-icons" "47.1.0" - "@ckeditor/ckeditor5-typing" "47.1.0" - "@ckeditor/ckeditor5-ui" "47.1.0" - "@ckeditor/ckeditor5-undo" "47.1.0" - "@ckeditor/ckeditor5-upload" "47.1.0" - "@ckeditor/ckeditor5-utils" "47.1.0" - "@ckeditor/ckeditor5-widget" "47.1.0" - ckeditor5 "47.1.0" + "@ckeditor/ckeditor5-clipboard" "47.2.0" + "@ckeditor/ckeditor5-core" "47.2.0" + "@ckeditor/ckeditor5-engine" "47.2.0" + "@ckeditor/ckeditor5-icons" "47.2.0" + "@ckeditor/ckeditor5-typing" "47.2.0" + "@ckeditor/ckeditor5-ui" "47.2.0" + "@ckeditor/ckeditor5-undo" "47.2.0" + "@ckeditor/ckeditor5-upload" "47.2.0" + "@ckeditor/ckeditor5-utils" "47.2.0" + "@ckeditor/ckeditor5-widget" "47.2.0" + ckeditor5 "47.2.0" es-toolkit "1.39.5" -"@ckeditor/ckeditor5-indent@47.1.0": - version "47.1.0" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-indent/-/ckeditor5-indent-47.1.0.tgz#de34853071ec0ccbacd4fb2a48efdd7a18e0975c" - integrity sha512-iqYlsdOGsTjuJ+xUx0ee8aAVh9sDPishKx1UHJbwetlPyM1kUADvVNONVBHV5YLgT0M7Bk5/MzGwlyQAuVipxg== +"@ckeditor/ckeditor5-indent@47.2.0": + version "47.2.0" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-indent/-/ckeditor5-indent-47.2.0.tgz#39fef07c6b789fbcdb122ee37317f212b57ee92d" + integrity sha512-Q85+b+o+nonhJ/I9K9wB9XeZ5W8rS9k66VvoDHxL3jJ6g6C+oyEAOomooTDCvJvBgDN6vGpcwzznKp0Q8baoCQ== dependencies: - "@ckeditor/ckeditor5-core" "47.1.0" - "@ckeditor/ckeditor5-engine" "47.1.0" - "@ckeditor/ckeditor5-heading" "47.1.0" - "@ckeditor/ckeditor5-icons" "47.1.0" - "@ckeditor/ckeditor5-list" "47.1.0" - "@ckeditor/ckeditor5-ui" "47.1.0" - "@ckeditor/ckeditor5-utils" "47.1.0" - ckeditor5 "47.1.0" + "@ckeditor/ckeditor5-core" "47.2.0" + "@ckeditor/ckeditor5-engine" "47.2.0" + "@ckeditor/ckeditor5-heading" "47.2.0" + "@ckeditor/ckeditor5-icons" "47.2.0" + "@ckeditor/ckeditor5-list" "47.2.0" + "@ckeditor/ckeditor5-ui" "47.2.0" + "@ckeditor/ckeditor5-utils" "47.2.0" + ckeditor5 "47.2.0" -"@ckeditor/ckeditor5-language@47.1.0": - version "47.1.0" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-language/-/ckeditor5-language-47.1.0.tgz#d3438e523c2d4bcba57e0d632e71afde2210f709" - integrity sha512-nZJlfefKtf0sWvyQdTB361mQMSGSlYj2WbHV3gpabkgkE/ZCbL/Tr5aCJ2ulQo2/ksL2s7nDHFIWu8UUEeVhbw== +"@ckeditor/ckeditor5-language@47.2.0": + version "47.2.0" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-language/-/ckeditor5-language-47.2.0.tgz#f31dfc03ef5f56985b6329875fca0e0200b86a6e" + integrity sha512-kc5MqQnvQtUPuvRJfdqXHQZNQyHVy/ZZv5laPY1AKrsKqc5SJO4y3v//4yHvdn45V4QKLwMOy4yC365Sdq0UpA== dependencies: - "@ckeditor/ckeditor5-core" "47.1.0" - "@ckeditor/ckeditor5-ui" "47.1.0" - "@ckeditor/ckeditor5-utils" "47.1.0" - ckeditor5 "47.1.0" + "@ckeditor/ckeditor5-core" "47.2.0" + "@ckeditor/ckeditor5-ui" "47.2.0" + "@ckeditor/ckeditor5-utils" "47.2.0" + ckeditor5 "47.2.0" -"@ckeditor/ckeditor5-link@47.1.0": - version "47.1.0" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-link/-/ckeditor5-link-47.1.0.tgz#cf6d02d4208968420dd7df7c82c4d4900cb3edf7" - integrity sha512-8XwnVPnp2GaNzcyXEahDYM8Qjh/qkU/R1VyjMh7EKSnlZOdget/jKXltNNwJpX0ofPMcY0CnvqGGF42gM3Tlcg== +"@ckeditor/ckeditor5-link@47.2.0": + version "47.2.0" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-link/-/ckeditor5-link-47.2.0.tgz#72c6ba684db256d4a2bb481689236335435f7bcc" + integrity sha512-ijaF1Ic23FH9qulW2ZuaxecmdT0JuK/4XNkdaoRntloHiVZ/tFAu+o/6st/pDXfutDBmnEXwrNGVtzO/JTPhrw== dependencies: - "@ckeditor/ckeditor5-clipboard" "47.1.0" - "@ckeditor/ckeditor5-core" "47.1.0" - "@ckeditor/ckeditor5-engine" "47.1.0" - "@ckeditor/ckeditor5-icons" "47.1.0" - "@ckeditor/ckeditor5-image" "47.1.0" - "@ckeditor/ckeditor5-typing" "47.1.0" - "@ckeditor/ckeditor5-ui" "47.1.0" - "@ckeditor/ckeditor5-utils" "47.1.0" - "@ckeditor/ckeditor5-widget" "47.1.0" - ckeditor5 "47.1.0" + "@ckeditor/ckeditor5-clipboard" "47.2.0" + "@ckeditor/ckeditor5-core" "47.2.0" + "@ckeditor/ckeditor5-engine" "47.2.0" + "@ckeditor/ckeditor5-icons" "47.2.0" + "@ckeditor/ckeditor5-image" "47.2.0" + "@ckeditor/ckeditor5-typing" "47.2.0" + "@ckeditor/ckeditor5-ui" "47.2.0" + "@ckeditor/ckeditor5-utils" "47.2.0" + "@ckeditor/ckeditor5-widget" "47.2.0" + ckeditor5 "47.2.0" es-toolkit "1.39.5" -"@ckeditor/ckeditor5-list@47.1.0": - version "47.1.0" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-list/-/ckeditor5-list-47.1.0.tgz#21dd745b3bfe37cc9e411eb62c1d1acddfd4224f" - integrity sha512-P18ZXzJcAGoA6+nIoXkZ27/Ny80HCcrH36ay1MwSxsuQKO8S894kEZb+QS/HvePsX2tso+bQsWw4WWBzbLfP2g== +"@ckeditor/ckeditor5-list@47.2.0": + version "47.2.0" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-list/-/ckeditor5-list-47.2.0.tgz#ec5940d8d8d941b9c9e7bb578ce72e64141e4fbe" + integrity sha512-PDjTQLn2CqrZ4XuAAJWY2vA5bkVu8UHKQZa1+ddfS4FbvfF2QR3eDX5axywpuaCb2Dm2ZQoqxpA5GQmt1fUehg== dependencies: - "@ckeditor/ckeditor5-clipboard" "47.1.0" - "@ckeditor/ckeditor5-core" "47.1.0" - "@ckeditor/ckeditor5-engine" "47.1.0" - "@ckeditor/ckeditor5-enter" "47.1.0" - "@ckeditor/ckeditor5-font" "47.1.0" - "@ckeditor/ckeditor5-icons" "47.1.0" - "@ckeditor/ckeditor5-typing" "47.1.0" - "@ckeditor/ckeditor5-ui" "47.1.0" - "@ckeditor/ckeditor5-utils" "47.1.0" - ckeditor5 "47.1.0" + "@ckeditor/ckeditor5-clipboard" "47.2.0" + "@ckeditor/ckeditor5-core" "47.2.0" + "@ckeditor/ckeditor5-engine" "47.2.0" + "@ckeditor/ckeditor5-enter" "47.2.0" + "@ckeditor/ckeditor5-font" "47.2.0" + "@ckeditor/ckeditor5-icons" "47.2.0" + "@ckeditor/ckeditor5-typing" "47.2.0" + "@ckeditor/ckeditor5-ui" "47.2.0" + "@ckeditor/ckeditor5-utils" "47.2.0" + ckeditor5 "47.2.0" -"@ckeditor/ckeditor5-markdown-gfm@47.1.0": - version "47.1.0" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-markdown-gfm/-/ckeditor5-markdown-gfm-47.1.0.tgz#93a2222358bbe7b6d38d76d18ff0f71ac588d0f0" - integrity sha512-oZh2sUX7VvI24ijosvilRqfrRkmUYdDaKdKxDfH8OBKiLnCPOccAhOMVy2LSBY1yvEEIUe2yq79nTC3i0uUkdg== +"@ckeditor/ckeditor5-markdown-gfm@47.2.0": + version "47.2.0" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-markdown-gfm/-/ckeditor5-markdown-gfm-47.2.0.tgz#2b88dc114bacf7fa03f9dbc0413a799657954343" + integrity sha512-mt47/GMxrsAL3u/aBjOuH5ETSLH0knoYJpchYb7sXzIuQlY7xPqvcONyD9700TAN30FV7qpOVKUqI7tRyLL5uA== dependencies: - "@ckeditor/ckeditor5-clipboard" "47.1.0" - "@ckeditor/ckeditor5-core" "47.1.0" - "@ckeditor/ckeditor5-engine" "47.1.0" + "@ckeditor/ckeditor5-clipboard" "47.2.0" + "@ckeditor/ckeditor5-core" "47.2.0" + "@ckeditor/ckeditor5-engine" "47.2.0" "@types/hast" "3.0.4" - ckeditor5 "47.1.0" + ckeditor5 "47.2.0" hast-util-from-dom "5.0.1" hast-util-to-html "9.0.5" hast-util-to-mdast "10.1.2" @@ -1358,271 +1358,271 @@ unified "11.0.5" unist-util-visit "5.0.0" -"@ckeditor/ckeditor5-media-embed@47.1.0": - version "47.1.0" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-media-embed/-/ckeditor5-media-embed-47.1.0.tgz#c162aeee05b03e260b224e93ce5ab5a94b13e067" - integrity sha512-ZbCYrJpEoKnXFLIwTeCqL6au/irByQq4UhElWFECMUchk3ZlJiSbTrVgrMxtzNdYxvlRGkNIizqPlukt4Xf5ig== +"@ckeditor/ckeditor5-media-embed@47.2.0": + version "47.2.0" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-media-embed/-/ckeditor5-media-embed-47.2.0.tgz#1bba0974808cd4c23a07a092030c136274b2873d" + integrity sha512-lATTMej9pBsZk4qm8cOqLXhmrCq/t+HpP/zg3DWnYbiD6zclO69PSJxD09l9NsyOo0YZb8SYAsVISoKNaIOr0A== dependencies: - "@ckeditor/ckeditor5-clipboard" "47.1.0" - "@ckeditor/ckeditor5-core" "47.1.0" - "@ckeditor/ckeditor5-engine" "47.1.0" - "@ckeditor/ckeditor5-icons" "47.1.0" - "@ckeditor/ckeditor5-typing" "47.1.0" - "@ckeditor/ckeditor5-ui" "47.1.0" - "@ckeditor/ckeditor5-undo" "47.1.0" - "@ckeditor/ckeditor5-utils" "47.1.0" - "@ckeditor/ckeditor5-widget" "47.1.0" - ckeditor5 "47.1.0" + "@ckeditor/ckeditor5-clipboard" "47.2.0" + "@ckeditor/ckeditor5-core" "47.2.0" + "@ckeditor/ckeditor5-engine" "47.2.0" + "@ckeditor/ckeditor5-icons" "47.2.0" + "@ckeditor/ckeditor5-typing" "47.2.0" + "@ckeditor/ckeditor5-ui" "47.2.0" + "@ckeditor/ckeditor5-undo" "47.2.0" + "@ckeditor/ckeditor5-utils" "47.2.0" + "@ckeditor/ckeditor5-widget" "47.2.0" + ckeditor5 "47.2.0" -"@ckeditor/ckeditor5-mention@47.1.0": - version "47.1.0" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-mention/-/ckeditor5-mention-47.1.0.tgz#afe28fedf85e94d8701593cd1289d85be02ebe18" - integrity sha512-5Bsf9224WU/ORVoOZnWWqaGA06DTs/+VLQvZhu5qmh17zL1o/JpSA0SrS9mQcf2StCW4HhX89MZhFSLb+2oOvQ== +"@ckeditor/ckeditor5-mention@47.2.0": + version "47.2.0" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-mention/-/ckeditor5-mention-47.2.0.tgz#db7a21e6b4189f197c03398f0c2cf28dd0717d77" + integrity sha512-ZPvVwEQxcCUI0SvJa28JUULww/SCXiiZpfnMtaneMxsIOqesAFxPqMXA9HkyLotikuK1sezu5XzgJ2S5gdqw3A== dependencies: - "@ckeditor/ckeditor5-core" "47.1.0" - "@ckeditor/ckeditor5-typing" "47.1.0" - "@ckeditor/ckeditor5-ui" "47.1.0" - "@ckeditor/ckeditor5-utils" "47.1.0" - ckeditor5 "47.1.0" + "@ckeditor/ckeditor5-core" "47.2.0" + "@ckeditor/ckeditor5-typing" "47.2.0" + "@ckeditor/ckeditor5-ui" "47.2.0" + "@ckeditor/ckeditor5-utils" "47.2.0" + ckeditor5 "47.2.0" es-toolkit "1.39.5" -"@ckeditor/ckeditor5-minimap@47.1.0": - version "47.1.0" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-minimap/-/ckeditor5-minimap-47.1.0.tgz#d3b360e516898fa582fee3dfe979453695ba23f0" - integrity sha512-fh3f0WTrULjd8rm/VWhVem/VYJgPjf+h+Zrnu8MeX0DHqRsNINdIUHNtYk2wUbIzQSgGtIVktK0LhLlN/XxRTA== +"@ckeditor/ckeditor5-minimap@47.2.0": + version "47.2.0" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-minimap/-/ckeditor5-minimap-47.2.0.tgz#a47b83ed042a528b25dc1e09c7e8830222640d7b" + integrity sha512-Th6HspywP3JeGBMRUmpAuIyFa8XtrpMiGdsjazlKcHaitT6bHBTzaTjaWVnOuVY3gBdFAKsalv2ZEk8vIPqkhg== dependencies: - "@ckeditor/ckeditor5-core" "47.1.0" - "@ckeditor/ckeditor5-engine" "47.1.0" - "@ckeditor/ckeditor5-ui" "47.1.0" - "@ckeditor/ckeditor5-utils" "47.1.0" - ckeditor5 "47.1.0" + "@ckeditor/ckeditor5-core" "47.2.0" + "@ckeditor/ckeditor5-engine" "47.2.0" + "@ckeditor/ckeditor5-ui" "47.2.0" + "@ckeditor/ckeditor5-utils" "47.2.0" + ckeditor5 "47.2.0" -"@ckeditor/ckeditor5-page-break@47.1.0": - version "47.1.0" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-page-break/-/ckeditor5-page-break-47.1.0.tgz#ded8470a7828e5a31574238c8453bcb9fb108a91" - integrity sha512-PrCugSPny2icLp/ZKx1r6mkgtP1jJmc+kB4w56Dsmgf1ZorWniI53wmemaTDhIgGwnNfO9CjYdSy8Vb4vyB1ZA== +"@ckeditor/ckeditor5-page-break@47.2.0": + version "47.2.0" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-page-break/-/ckeditor5-page-break-47.2.0.tgz#c08dfee03ffe14a0694a4f1bb14231c1eaeb8935" + integrity sha512-DosfUorg3wZ3a6yM/ymsJQ1E2Rbqi08RFOQ4oQLPPAi2VRdTLt0BiqQPFMKJmy2T2k5K4TLc7bs0s3E96aQyXg== dependencies: - "@ckeditor/ckeditor5-core" "47.1.0" - "@ckeditor/ckeditor5-icons" "47.1.0" - "@ckeditor/ckeditor5-ui" "47.1.0" - "@ckeditor/ckeditor5-utils" "47.1.0" - "@ckeditor/ckeditor5-widget" "47.1.0" - ckeditor5 "47.1.0" + "@ckeditor/ckeditor5-core" "47.2.0" + "@ckeditor/ckeditor5-icons" "47.2.0" + "@ckeditor/ckeditor5-ui" "47.2.0" + "@ckeditor/ckeditor5-utils" "47.2.0" + "@ckeditor/ckeditor5-widget" "47.2.0" + ckeditor5 "47.2.0" -"@ckeditor/ckeditor5-paragraph@47.1.0": - version "47.1.0" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-paragraph/-/ckeditor5-paragraph-47.1.0.tgz#ea0aa0b2393e14e7f797537a7c425d71edaab3ef" - integrity sha512-B1tY1+kEncLFrGoD3YkpJIMNFSQvB4t8SVSei6+upD3YGkyf/VhmtYlnqBLRK2znQTlg76EJJcWlGv9zCJ9edw== +"@ckeditor/ckeditor5-paragraph@47.2.0": + version "47.2.0" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-paragraph/-/ckeditor5-paragraph-47.2.0.tgz#7d5242d38b2986e9da627859ad4a744285801a44" + integrity sha512-x6nqRQjlAcOhirOE9umNdK8WckWcz7JPVU7IlPTzlrVAYCq+wiz6rgpuh4COUHnee4c31fF21On+OVyqgu7JvQ== dependencies: - "@ckeditor/ckeditor5-core" "47.1.0" - "@ckeditor/ckeditor5-engine" "47.1.0" - "@ckeditor/ckeditor5-icons" "47.1.0" - "@ckeditor/ckeditor5-ui" "47.1.0" - "@ckeditor/ckeditor5-utils" "47.1.0" + "@ckeditor/ckeditor5-core" "47.2.0" + "@ckeditor/ckeditor5-engine" "47.2.0" + "@ckeditor/ckeditor5-icons" "47.2.0" + "@ckeditor/ckeditor5-ui" "47.2.0" + "@ckeditor/ckeditor5-utils" "47.2.0" -"@ckeditor/ckeditor5-paste-from-office@47.1.0": - version "47.1.0" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-paste-from-office/-/ckeditor5-paste-from-office-47.1.0.tgz#2d0117bcae3ee83d06c396f51dc2facee2b96486" - integrity sha512-+96rw8TkId8o/im4zvq2EtdDzHHaP/+29PMcJ5ACmvq32tJgFsLCyo10asEWV+U/SiWUHNKBPgGLJeh/MdzlAw== +"@ckeditor/ckeditor5-paste-from-office@47.2.0": + version "47.2.0" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-paste-from-office/-/ckeditor5-paste-from-office-47.2.0.tgz#3b0dccca78353dc477d5658d5877c06e91bfc04d" + integrity sha512-DGGNGNhl25ub8dFBKJF4jfMBoSSbF5uKzFShMNIaAVAagV6kkDWR0HJWAir5CuFrElzWTkPd0ZC5RNL76yTbtg== dependencies: - "@ckeditor/ckeditor5-clipboard" "47.1.0" - "@ckeditor/ckeditor5-core" "47.1.0" - "@ckeditor/ckeditor5-engine" "47.1.0" - ckeditor5 "47.1.0" + "@ckeditor/ckeditor5-clipboard" "47.2.0" + "@ckeditor/ckeditor5-core" "47.2.0" + "@ckeditor/ckeditor5-engine" "47.2.0" + ckeditor5 "47.2.0" -"@ckeditor/ckeditor5-remove-format@47.1.0": - version "47.1.0" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-remove-format/-/ckeditor5-remove-format-47.1.0.tgz#37e2d3eba344988edd8a41ea74ec9263723dcb41" - integrity sha512-JShEW29roO0PyQKBCDUS6cACGuYWxnUhCRcBt+DFUhS5t51XPpDXasdYfGfeUJ9DeNL/0iPjKtQxcGUoMa5NtQ== +"@ckeditor/ckeditor5-remove-format@47.2.0": + version "47.2.0" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-remove-format/-/ckeditor5-remove-format-47.2.0.tgz#d1631b3b7ba7d8560522e5cc4aa0c123cbd21432" + integrity sha512-CRWs7Osok8k3Oi2N7RvA12ECxi47wIyrDTsJ3lJYo8zDIbZdOXlv5o+In+mbsZ7lzNKLhKMAgRcF/PrGWcAaUg== dependencies: - "@ckeditor/ckeditor5-core" "47.1.0" - "@ckeditor/ckeditor5-icons" "47.1.0" - "@ckeditor/ckeditor5-ui" "47.1.0" - "@ckeditor/ckeditor5-utils" "47.1.0" - ckeditor5 "47.1.0" + "@ckeditor/ckeditor5-core" "47.2.0" + "@ckeditor/ckeditor5-icons" "47.2.0" + "@ckeditor/ckeditor5-ui" "47.2.0" + "@ckeditor/ckeditor5-utils" "47.2.0" + ckeditor5 "47.2.0" -"@ckeditor/ckeditor5-restricted-editing@47.1.0": - version "47.1.0" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-restricted-editing/-/ckeditor5-restricted-editing-47.1.0.tgz#ddd3c7742ecfed8841d14315dacbccb5fada1bea" - integrity sha512-vEBZKc3vkvFKOVfPn56Wl76YPCn73QmkkUMLGN2tf2ntvSoVEmlk+HTWaXYRG8bsbj2JtdijgW3wckCvNRW8ow== +"@ckeditor/ckeditor5-restricted-editing@47.2.0": + version "47.2.0" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-restricted-editing/-/ckeditor5-restricted-editing-47.2.0.tgz#6d5513f535db2570ec626b29fed997f7461e2ce9" + integrity sha512-ziFgoZCHaHzzrLeQ6XIlrcEazoGF6IC2+qzxGnO1A1NKY/8WVLmokKFLmUgDMnPLrhvz5Qqldj0dSS2pKhj6QQ== dependencies: - "@ckeditor/ckeditor5-core" "47.1.0" - "@ckeditor/ckeditor5-engine" "47.1.0" - "@ckeditor/ckeditor5-icons" "47.1.0" - "@ckeditor/ckeditor5-ui" "47.1.0" - "@ckeditor/ckeditor5-utils" "47.1.0" - ckeditor5 "47.1.0" + "@ckeditor/ckeditor5-core" "47.2.0" + "@ckeditor/ckeditor5-engine" "47.2.0" + "@ckeditor/ckeditor5-icons" "47.2.0" + "@ckeditor/ckeditor5-ui" "47.2.0" + "@ckeditor/ckeditor5-utils" "47.2.0" + ckeditor5 "47.2.0" -"@ckeditor/ckeditor5-select-all@47.1.0": - version "47.1.0" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-select-all/-/ckeditor5-select-all-47.1.0.tgz#c40ad89efb7466ade836b28637171826c357694d" - integrity sha512-3k7TgWjcx7FFm0t6bS8Uc6YOhqehf815SsmtFN+JISoL9Ojm1yqLEUOOYuYPy0Voed70Mk2HBQvdEnuP9m6X1g== +"@ckeditor/ckeditor5-select-all@47.2.0": + version "47.2.0" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-select-all/-/ckeditor5-select-all-47.2.0.tgz#61d2bb5c0dd4f16403828f0ae7bb7ce90f557e37" + integrity sha512-4kswe9jmKp6y1hTwWfJBxF8XuX1pgZxraAlm+ugJLhjsus/vGBVXBFNN7kH+RoNxC6tf1ZXly69dGTG4P/nXrg== dependencies: - "@ckeditor/ckeditor5-core" "47.1.0" - "@ckeditor/ckeditor5-engine" "47.1.0" - "@ckeditor/ckeditor5-icons" "47.1.0" - "@ckeditor/ckeditor5-ui" "47.1.0" - "@ckeditor/ckeditor5-utils" "47.1.0" + "@ckeditor/ckeditor5-core" "47.2.0" + "@ckeditor/ckeditor5-engine" "47.2.0" + "@ckeditor/ckeditor5-icons" "47.2.0" + "@ckeditor/ckeditor5-ui" "47.2.0" + "@ckeditor/ckeditor5-utils" "47.2.0" -"@ckeditor/ckeditor5-show-blocks@47.1.0": - version "47.1.0" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-show-blocks/-/ckeditor5-show-blocks-47.1.0.tgz#2d8c3d22394ad982cbaf2519fc44365e0f7011f4" - integrity sha512-8ogD671z7j2DwlOa1W0KX7jcorTHbrLxqLYtiCeJljJv/sfHMtzfXc8PL81eiKDfSZwoNY2k5pwTWPyv30MRAg== +"@ckeditor/ckeditor5-show-blocks@47.2.0": + version "47.2.0" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-show-blocks/-/ckeditor5-show-blocks-47.2.0.tgz#4096372e2bb52e04cc1d2316f6c36e266b948c43" + integrity sha512-eIzvA5zQEWNGVXhkCTYVfw32tpsFEx4nTPAVpsFEv0hb1sAMaOv5fIoFmwcx/C8CmN9sBiZtuovXGM5i/pwoTQ== dependencies: - "@ckeditor/ckeditor5-core" "47.1.0" - "@ckeditor/ckeditor5-icons" "47.1.0" - "@ckeditor/ckeditor5-ui" "47.1.0" - "@ckeditor/ckeditor5-utils" "47.1.0" - ckeditor5 "47.1.0" + "@ckeditor/ckeditor5-core" "47.2.0" + "@ckeditor/ckeditor5-icons" "47.2.0" + "@ckeditor/ckeditor5-ui" "47.2.0" + "@ckeditor/ckeditor5-utils" "47.2.0" + ckeditor5 "47.2.0" -"@ckeditor/ckeditor5-source-editing@47.1.0": - version "47.1.0" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-source-editing/-/ckeditor5-source-editing-47.1.0.tgz#e9af36b59f8d3d08800096498a2b2c588b3a48d4" - integrity sha512-/UzbN04b3gK4FdY9nS6bdmh1KlkhHTOglCnvKDlx6XvC+E6qW2OzfU7D1b/k7sINSmVRGkt5L2NuZCHeAgX2/Q== +"@ckeditor/ckeditor5-source-editing@47.2.0": + version "47.2.0" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-source-editing/-/ckeditor5-source-editing-47.2.0.tgz#6d521c9abdb79e8232279410a54654d73dff2a77" + integrity sha512-B82fbUiTBWYR3XTfUk/30Hsk9PAmPkmraKNJKGDoch0NXduPz8ehpCwbnrJdIvm7pozbgB11RjWzq56VcBX2Qw== dependencies: - "@ckeditor/ckeditor5-core" "47.1.0" - "@ckeditor/ckeditor5-icons" "47.1.0" - "@ckeditor/ckeditor5-theme-lark" "47.1.0" - "@ckeditor/ckeditor5-ui" "47.1.0" - "@ckeditor/ckeditor5-utils" "47.1.0" - ckeditor5 "47.1.0" + "@ckeditor/ckeditor5-core" "47.2.0" + "@ckeditor/ckeditor5-icons" "47.2.0" + "@ckeditor/ckeditor5-theme-lark" "47.2.0" + "@ckeditor/ckeditor5-ui" "47.2.0" + "@ckeditor/ckeditor5-utils" "47.2.0" + ckeditor5 "47.2.0" -"@ckeditor/ckeditor5-special-characters@47.1.0": - version "47.1.0" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-special-characters/-/ckeditor5-special-characters-47.1.0.tgz#ee699082b9bb89175336f08ea2d572053364e379" - integrity sha512-r/FW9Xz589nLcr5pXOyhCPNLQp7XkjR17PgHTgJcQmJuEo396UTvoPz7eBfGkCDMjINmZj1cTNdJSL7/Xpqk5g== +"@ckeditor/ckeditor5-special-characters@47.2.0": + version "47.2.0" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-special-characters/-/ckeditor5-special-characters-47.2.0.tgz#08e4f476216d3a5fe9d359a38c1694c163ede818" + integrity sha512-aH1E1SEMRUF6gMdqPuFeDZvZRCUNJ/n8RWwXHFicsJArYDGOiATxVZQZbwk50duAsWcxxj0uTSHGwFXBL9evyQ== dependencies: - "@ckeditor/ckeditor5-core" "47.1.0" - "@ckeditor/ckeditor5-icons" "47.1.0" - "@ckeditor/ckeditor5-typing" "47.1.0" - "@ckeditor/ckeditor5-ui" "47.1.0" - "@ckeditor/ckeditor5-utils" "47.1.0" - ckeditor5 "47.1.0" + "@ckeditor/ckeditor5-core" "47.2.0" + "@ckeditor/ckeditor5-icons" "47.2.0" + "@ckeditor/ckeditor5-typing" "47.2.0" + "@ckeditor/ckeditor5-ui" "47.2.0" + "@ckeditor/ckeditor5-utils" "47.2.0" + ckeditor5 "47.2.0" -"@ckeditor/ckeditor5-style@47.1.0": - version "47.1.0" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-style/-/ckeditor5-style-47.1.0.tgz#cf694876f913b4ab272b4acfa453f2772f3bd90a" - integrity sha512-Mt40tqRfgebkbHVXq+8nD19gyIsNgnITiQoT+tFZynSlQieaifDo+9D3Aq70KdrxlHW4Muw5ryYe14Xy7Y+rwA== +"@ckeditor/ckeditor5-style@47.2.0": + version "47.2.0" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-style/-/ckeditor5-style-47.2.0.tgz#939b39f42db67dfa91c51ddde2efa9fc28dffc0d" + integrity sha512-XAIl8oNHpFxTRbGIE+2vpKLgrP3VnknUTyasvL/HeS3iUHKLDRlh9d3ghozhuUqQaF5rnkzUQEBv/fv+4u3Y7A== dependencies: - "@ckeditor/ckeditor5-core" "47.1.0" - "@ckeditor/ckeditor5-html-support" "47.1.0" - "@ckeditor/ckeditor5-list" "47.1.0" - "@ckeditor/ckeditor5-table" "47.1.0" - "@ckeditor/ckeditor5-typing" "47.1.0" - "@ckeditor/ckeditor5-ui" "47.1.0" - "@ckeditor/ckeditor5-utils" "47.1.0" - ckeditor5 "47.1.0" + "@ckeditor/ckeditor5-core" "47.2.0" + "@ckeditor/ckeditor5-html-support" "47.2.0" + "@ckeditor/ckeditor5-list" "47.2.0" + "@ckeditor/ckeditor5-table" "47.2.0" + "@ckeditor/ckeditor5-typing" "47.2.0" + "@ckeditor/ckeditor5-ui" "47.2.0" + "@ckeditor/ckeditor5-utils" "47.2.0" + ckeditor5 "47.2.0" es-toolkit "1.39.5" -"@ckeditor/ckeditor5-table@47.1.0": - version "47.1.0" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-table/-/ckeditor5-table-47.1.0.tgz#dd89a38b7950954d60e5c0fa93b5c8ef6de7766c" - integrity sha512-49g66He4BFzfh/8m23BBhfxk/0FnJnEZ07SiQBWdAMfZSFubTz0/tCm38imf79h4bawUcaLSGP+UJBc6x/gg4w== +"@ckeditor/ckeditor5-table@47.2.0": + version "47.2.0" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-table/-/ckeditor5-table-47.2.0.tgz#d08098760bc5dca1289a98fcb06a3a6bccd0c4d1" + integrity sha512-zxNHpl4L7HsOLCYiKrbyyHoM2dMGetgP4eTjYyWfn9gf+ydVs7o+LJVN5bsWt3J4ToamCj5G7VHZUmqUcPbN6A== dependencies: - "@ckeditor/ckeditor5-clipboard" "47.1.0" - "@ckeditor/ckeditor5-core" "47.1.0" - "@ckeditor/ckeditor5-engine" "47.1.0" - "@ckeditor/ckeditor5-icons" "47.1.0" - "@ckeditor/ckeditor5-ui" "47.1.0" - "@ckeditor/ckeditor5-utils" "47.1.0" - "@ckeditor/ckeditor5-widget" "47.1.0" - ckeditor5 "47.1.0" + "@ckeditor/ckeditor5-clipboard" "47.2.0" + "@ckeditor/ckeditor5-core" "47.2.0" + "@ckeditor/ckeditor5-engine" "47.2.0" + "@ckeditor/ckeditor5-icons" "47.2.0" + "@ckeditor/ckeditor5-ui" "47.2.0" + "@ckeditor/ckeditor5-utils" "47.2.0" + "@ckeditor/ckeditor5-widget" "47.2.0" + ckeditor5 "47.2.0" es-toolkit "1.39.5" -"@ckeditor/ckeditor5-theme-lark@47.1.0": - version "47.1.0" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-theme-lark/-/ckeditor5-theme-lark-47.1.0.tgz#9819ebf013f26d1500188c3882e71d5f3064bcb5" - integrity sha512-gUAPApFbsViLKGgwHtCLigBYziFUmXDBa9UFmZUNSTZPWpTz/uxOOhwjrQvGqwAH/0W9pKR5TsxWaE2sJZaJPQ== +"@ckeditor/ckeditor5-theme-lark@47.2.0": + version "47.2.0" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-theme-lark/-/ckeditor5-theme-lark-47.2.0.tgz#10260a70b0c12f668593506e51ebd8b7eaa76dba" + integrity sha512-5Guefuo+Nllq4FMaFnLJlU/fICy2IQYw3T+0PTYjFqd59xTx6suwjv2ou41HKPfJ1b6NCbmkbhuaC59lGIfBtQ== dependencies: - "@ckeditor/ckeditor5-ui" "47.1.0" + "@ckeditor/ckeditor5-ui" "47.2.0" -"@ckeditor/ckeditor5-typing@47.1.0": - version "47.1.0" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-typing/-/ckeditor5-typing-47.1.0.tgz#f18c0d1430177c677f7020c269b48d6331abc3e7" - integrity sha512-teg0UA6AWEMraXAsXYB8372ogIXfFaakOv6Vz8ppIsuKPZfHKJC5ixUd+oUzk03nv3QdtalQAALY8I8dnwl6dQ== +"@ckeditor/ckeditor5-typing@47.2.0": + version "47.2.0" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-typing/-/ckeditor5-typing-47.2.0.tgz#6f5ac014e3104cedc54cc79213d24ea871d24122" + integrity sha512-BDJLlaX9SHFUfZegOEW7ZeJ0o/TBgabINNxa3CwtGuGBLHUAQ3IAFJ0Cd6jHq12J2kRDwiXZzvvgMyCH7jeeUQ== dependencies: - "@ckeditor/ckeditor5-core" "47.1.0" - "@ckeditor/ckeditor5-engine" "47.1.0" - "@ckeditor/ckeditor5-utils" "47.1.0" + "@ckeditor/ckeditor5-core" "47.2.0" + "@ckeditor/ckeditor5-engine" "47.2.0" + "@ckeditor/ckeditor5-utils" "47.2.0" es-toolkit "1.39.5" -"@ckeditor/ckeditor5-ui@47.1.0": - version "47.1.0" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-ui/-/ckeditor5-ui-47.1.0.tgz#2c691666fd679736fc3ebf629f2c27d1c10fd6db" - integrity sha512-fV/9LPGZgnWBFQcHq29idZI34OZoO5ej72asf0X+A2rMgdCrHPlVeVwiy6THLRE5CFn9qdramYB27eESxOPi6A== +"@ckeditor/ckeditor5-ui@47.2.0": + version "47.2.0" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-ui/-/ckeditor5-ui-47.2.0.tgz#e3d7f5ab66a5426f79afa560c1e01bfd41abf88c" + integrity sha512-/yd1/JmIqJybqBRZvk/QGzeY6DZlJvPtyEqq9Ay+U4bUftr2DOrfOikM62okepYRCCtMQ4nQk3c2eFmacfym2A== dependencies: - "@ckeditor/ckeditor5-core" "47.1.0" - "@ckeditor/ckeditor5-editor-multi-root" "47.1.0" - "@ckeditor/ckeditor5-engine" "47.1.0" - "@ckeditor/ckeditor5-icons" "47.1.0" - "@ckeditor/ckeditor5-utils" "47.1.0" + "@ckeditor/ckeditor5-core" "47.2.0" + "@ckeditor/ckeditor5-editor-multi-root" "47.2.0" + "@ckeditor/ckeditor5-engine" "47.2.0" + "@ckeditor/ckeditor5-icons" "47.2.0" + "@ckeditor/ckeditor5-utils" "47.2.0" "@types/color-convert" "2.0.4" color-convert "3.1.0" color-parse "2.0.2" es-toolkit "1.39.5" vanilla-colorful "0.7.2" -"@ckeditor/ckeditor5-undo@47.1.0": - version "47.1.0" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-undo/-/ckeditor5-undo-47.1.0.tgz#e31a947a890af2c1f94ebd81643ef6f4eb146cc3" - integrity sha512-e+GyEZLlx2LhHbaegWri3p1zgX6fjvQH7fzmFG2NZ5h1bgbsCW/+vHv5/r9cwU2/SudJqOeoQRXGQ8PHBp6/ZA== +"@ckeditor/ckeditor5-undo@47.2.0": + version "47.2.0" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-undo/-/ckeditor5-undo-47.2.0.tgz#94af4ec59d65f88dbb3500316784fa5ba897417e" + integrity sha512-smq5O3GdqJXB+9o54BTn/LyB52OHiW9ekzacOuMNxtuA/KBwHpdsPFMcGFGH04W9O0qUtSdt3fYC0i+SJjYAww== dependencies: - "@ckeditor/ckeditor5-core" "47.1.0" - "@ckeditor/ckeditor5-engine" "47.1.0" - "@ckeditor/ckeditor5-icons" "47.1.0" - "@ckeditor/ckeditor5-ui" "47.1.0" - "@ckeditor/ckeditor5-utils" "47.1.0" + "@ckeditor/ckeditor5-core" "47.2.0" + "@ckeditor/ckeditor5-engine" "47.2.0" + "@ckeditor/ckeditor5-icons" "47.2.0" + "@ckeditor/ckeditor5-ui" "47.2.0" + "@ckeditor/ckeditor5-utils" "47.2.0" -"@ckeditor/ckeditor5-upload@47.1.0": - version "47.1.0" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-upload/-/ckeditor5-upload-47.1.0.tgz#37cd923c0e23070c9a0e61f4529d0c1d250a0272" - integrity sha512-JP6Ao5xbNPoxKv4zWgYbVBA6u8CmOSkvLYp+P3+i4MCcwva4NH/dKwJL+Wqk8XxZ8eavhXNgMGs22Oqq2v18/Q== +"@ckeditor/ckeditor5-upload@47.2.0": + version "47.2.0" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-upload/-/ckeditor5-upload-47.2.0.tgz#6c0caa82be97e1149c03a2d96da242d0a4a613ee" + integrity sha512-uE4FwVtmJ6UACDC9N+H6HHGhlpAF8Fk2QCF/iBboh4VqhlFbFjMbXCAbsWrDik6C/p9r4Iv+IEmbpjsRTD+9SQ== dependencies: - "@ckeditor/ckeditor5-core" "47.1.0" - "@ckeditor/ckeditor5-utils" "47.1.0" + "@ckeditor/ckeditor5-core" "47.2.0" + "@ckeditor/ckeditor5-utils" "47.2.0" -"@ckeditor/ckeditor5-utils@47.1.0": - version "47.1.0" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-utils/-/ckeditor5-utils-47.1.0.tgz#b0038703d874029ebf15636d6b7aa75c3634da4e" - integrity sha512-tx2AHkx8dqVp4YKieGbNmSZy88ekmsMIQyHMD04n6oMFz16a3mmqFCm9WJRpTaNvniGKh6TCxA48Kf2zwn7EmQ== +"@ckeditor/ckeditor5-utils@47.2.0": + version "47.2.0" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-utils/-/ckeditor5-utils-47.2.0.tgz#6d80dc08564d34db04b8799eff2897b9cc1d9e17" + integrity sha512-1b9SWtGuPZApm9065swh+fivxQMvuAsVXHuo26OGV2EnQK//w7kHsxKhVGJMzfHeuev5KvhJ2zdo8SUvePfBoA== dependencies: - "@ckeditor/ckeditor5-ui" "47.1.0" + "@ckeditor/ckeditor5-ui" "47.2.0" es-toolkit "1.39.5" -"@ckeditor/ckeditor5-watchdog@47.1.0": - version "47.1.0" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-watchdog/-/ckeditor5-watchdog-47.1.0.tgz#207a54f21b60fafdad9acbf33857eda82c0dc8cd" - integrity sha512-3cK0GKi8Et3dHln1E36Wmk30SzgLd2dgWDGaNUvfygQT9hBeKnWZ//cp/ZlBwbfEwJth/jAlcXUHsFR9T2Uwjw== +"@ckeditor/ckeditor5-watchdog@47.2.0": + version "47.2.0" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-watchdog/-/ckeditor5-watchdog-47.2.0.tgz#67fc6af5205f8da246752e97d8a4e907cc18373f" + integrity sha512-C1AT7OqLBkPCUm4pjJe4n64qj+5vvMdQb2+lLMSz0SMsBqmYFrVYMlZWW4LjpaYUAYEmvTPcyDoqukBKRWNrRQ== dependencies: - "@ckeditor/ckeditor5-core" "47.1.0" - "@ckeditor/ckeditor5-editor-multi-root" "47.1.0" - "@ckeditor/ckeditor5-engine" "47.1.0" - "@ckeditor/ckeditor5-utils" "47.1.0" + "@ckeditor/ckeditor5-core" "47.2.0" + "@ckeditor/ckeditor5-editor-multi-root" "47.2.0" + "@ckeditor/ckeditor5-engine" "47.2.0" + "@ckeditor/ckeditor5-utils" "47.2.0" es-toolkit "1.39.5" -"@ckeditor/ckeditor5-widget@47.1.0": - version "47.1.0" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-widget/-/ckeditor5-widget-47.1.0.tgz#d201efc67d812e0b3356d5de4a88116857bf4b7b" - integrity sha512-S04Ry1eVMyLV7yyc8bpmAY/7/bmD8FsrV5Gfk3ftL+voJi0+3B1WmptOcpkyiCC5PbbgjNX3f0NPYufEjjPNtQ== +"@ckeditor/ckeditor5-widget@47.2.0": + version "47.2.0" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-widget/-/ckeditor5-widget-47.2.0.tgz#3c38db32b0e4d2ec0e78a053fda04d68f2542bf5" + integrity sha512-1vhfdeVPNc6UtCPAC+aKDNIi0EDxpAJ7TudepJVLXnS752V5rnArjPrYBfH6dkpHYV920CuxxsoS1sSuVVMrkA== dependencies: - "@ckeditor/ckeditor5-core" "47.1.0" - "@ckeditor/ckeditor5-engine" "47.1.0" - "@ckeditor/ckeditor5-enter" "47.1.0" - "@ckeditor/ckeditor5-icons" "47.1.0" - "@ckeditor/ckeditor5-typing" "47.1.0" - "@ckeditor/ckeditor5-ui" "47.1.0" - "@ckeditor/ckeditor5-utils" "47.1.0" + "@ckeditor/ckeditor5-core" "47.2.0" + "@ckeditor/ckeditor5-engine" "47.2.0" + "@ckeditor/ckeditor5-enter" "47.2.0" + "@ckeditor/ckeditor5-icons" "47.2.0" + "@ckeditor/ckeditor5-typing" "47.2.0" + "@ckeditor/ckeditor5-ui" "47.2.0" + "@ckeditor/ckeditor5-utils" "47.2.0" es-toolkit "1.39.5" -"@ckeditor/ckeditor5-word-count@47.1.0": - version "47.1.0" - resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-word-count/-/ckeditor5-word-count-47.1.0.tgz#d09a3fa80e0fe07560148b8d62efe01c97016907" - integrity sha512-e9sx/EUONwbdZFGU6bcJmrLMw18Fugecs3LiMQVVoVrFpMEywPhzzeRZUN6XX70qPXWHkDRQRnNSQXqhJ2lpxg== +"@ckeditor/ckeditor5-word-count@47.2.0": + version "47.2.0" + resolved "https://registry.yarnpkg.com/@ckeditor/ckeditor5-word-count/-/ckeditor5-word-count-47.2.0.tgz#42577d55113f63c4953f7549f1eff8b7de653950" + integrity sha512-1ouy59G1Qxf6hTRnW9tSL7Xjsx8kGfTJvrH9mZWGIpmNo0pIM6Ts96U/qgr5RB0LbhYtqhbDq87F9QjMcfYUjQ== dependencies: - "@ckeditor/ckeditor5-core" "47.1.0" - "@ckeditor/ckeditor5-ui" "47.1.0" - "@ckeditor/ckeditor5-utils" "47.1.0" - ckeditor5 "47.1.0" + "@ckeditor/ckeditor5-core" "47.2.0" + "@ckeditor/ckeditor5-ui" "47.2.0" + "@ckeditor/ckeditor5-utils" "47.2.0" + ckeditor5 "47.2.0" es-toolkit "1.39.5" "@csstools/selector-resolve-nested@^3.1.0": @@ -2075,7 +2075,7 @@ dependencies: "@types/ms" "*" -"@types/emscripten@^1.41.2": +"@types/emscripten@^1.41.5": version "1.41.5" resolved "https://registry.yarnpkg.com/@types/emscripten/-/emscripten-1.41.5.tgz#5670e4b52b098691cb844b84ee48c9176699b68d" integrity sha512-cMQm7pxu6BxtHyqJ7mQZ2kXWV5SLmugybFdHCBbJ5eHzOo6VhBckEgAT3//rP5FwPHNPeEiq4SmQ5ucBwsOo4Q== @@ -2160,9 +2160,9 @@ integrity sha512-GsCCIZDE/p3i96vtEqx+7dBUGXrc7zeSK3wwPHIaRThS+9OhWIXRqzs4d6k1SVU8g91DrNRWxWUGhp5KXQb2VA== "@types/node@*": - version "24.9.2" - resolved "https://registry.yarnpkg.com/@types/node/-/node-24.9.2.tgz#90ded2422dbfcafcf72080f28975adc21366148d" - integrity sha512-uWN8YqxXxqFMX2RqGOrumsKeti4LlmIMIyV0lgut4jx7KQBcBiW6vkDtIBvHnHIquwNfJhk8v2OtmO8zXWHfPA== + version "24.10.1" + resolved "https://registry.yarnpkg.com/@types/node/-/node-24.10.1.tgz#91e92182c93db8bd6224fca031e2370cef9a8f01" + integrity sha512-GNWcUTRBgIRJD5zj+Tq0fKOJ5XZajIiBroOF0yvj2bSU1WvNdYS/dn9UxwsujGW4JX06dnHyjV2y9rRaybH0iQ== dependencies: undici-types "~7.16.0" @@ -2596,11 +2596,11 @@ balanced-match@^1.0.0: integrity sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw== barcode-detector@^3.0.0, barcode-detector@^3.0.5: - version "3.0.6" - resolved "https://registry.yarnpkg.com/barcode-detector/-/barcode-detector-3.0.6.tgz#87f8ef762acb56a7f761ac91cf6c8d64ad327fe7" - integrity sha512-v4xTr6B+FINl/p1RDl38qzIwF+Repfo+k/a/HlKTJKAJpNvACD6v7AH7LSPvfR4AdzXXuwai04huA4TWn02Znw== + version "3.0.7" + resolved "https://registry.yarnpkg.com/barcode-detector/-/barcode-detector-3.0.7.tgz#bc5784c2d8263df85c7722cd25c36fd9b3c23edc" + integrity sha512-91Pu2iuw1CS/P/Uqvbh7/tHGU2gbAr4+qRRegfKa87uonQZpVfVy7Q16HQCCqMhq7DURHdk8s3FVAkqoeBRZ3g== dependencies: - zxing-wasm "2.2.2" + zxing-wasm "2.2.3" base64-js@1.3.1: version "1.3.1" @@ -2612,10 +2612,10 @@ base64-js@^1.1.2, base64-js@^1.3.0: resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.5.1.tgz#1b1b440160a5bf7ad40b650f095963481903930a" integrity sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA== -baseline-browser-mapping@^2.8.19: - version "2.8.23" - resolved "https://registry.yarnpkg.com/baseline-browser-mapping/-/baseline-browser-mapping-2.8.23.tgz#cd43e17eff5cbfb67c92153e7fe856cf6d426421" - integrity sha512-616V5YX4bepJFzNyOfce5Fa8fDJMfoxzOIzDCZwaGL8MKVpFrXqfNUoIpRn9YMI5pXf/VKgzjB4htFMsFKKdiQ== +baseline-browser-mapping@^2.8.25: + version "2.8.27" + resolved "https://registry.yarnpkg.com/baseline-browser-mapping/-/baseline-browser-mapping-2.8.27.tgz#d15ab8face053137f8eb4c028455024787515d5d" + integrity sha512-2CXFpkjVnY2FT+B6GrSYxzYf65BJWEqz5tIRHCvNsZZ2F3CmsCB37h8SpYgKG7y9C4YAeTipIPWG7EmFmhAeXA== big.js@^5.2.2: version "5.2.2" @@ -2680,14 +2680,14 @@ browser-stdout@1.3.1: integrity sha512-qhAVI1+Av2X7qelOfAIYwXONood6XlZE/fXaBSmW/T5SzLAmCgzi+eiWE7fUvbHaeNBQH13UftjpXxsfLkMpgw== browserslist@^4.0.0, browserslist@^4.23.0, browserslist@^4.24.0, browserslist@^4.26.3, browserslist@^4.27.0: - version "4.27.0" - resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.27.0.tgz#755654744feae978fbb123718b2f139bc0fa6697" - integrity sha512-AXVQwdhot1eqLihwasPElhX2tAZiBjWdJ9i/Zcj2S6QYIjkx62OKSfnobkriB81C3l4w0rVy3Nt4jaTBltYEpw== + version "4.28.0" + resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.28.0.tgz#9cefece0a386a17a3cd3d22ebf67b9deca1b5929" + integrity sha512-tbydkR/CxfMwelN0vwdP/pLkDwyAASZ+VfWm4EOwlB6SWhx1sYnWLqo8N5j0rAzPfzfRaxt0mM/4wPU/Su84RQ== dependencies: - baseline-browser-mapping "^2.8.19" - caniuse-lite "^1.0.30001751" - electron-to-chromium "^1.5.238" - node-releases "^2.0.26" + baseline-browser-mapping "^2.8.25" + caniuse-lite "^1.0.30001754" + electron-to-chromium "^1.5.249" + node-releases "^2.0.27" update-browserslist-db "^1.1.4" bs-custom-file-input@^1.3.4: @@ -2775,10 +2775,10 @@ caniuse-api@^3.0.0: lodash.memoize "^4.1.2" lodash.uniq "^4.5.0" -caniuse-lite@^1.0.0, caniuse-lite@^1.0.30001751: - version "1.0.30001753" - resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001753.tgz#419f8fc9bab6f1a1d10d9574d0b3374f823c5b00" - integrity sha512-Bj5H35MD/ebaOV4iDLqPEtiliTN29qkGtEHCwawWn4cYm+bPJM2NsaP30vtZcnERClMzp52J4+aw2UNbK4o+zw== +caniuse-lite@^1.0.0, caniuse-lite@^1.0.30001754: + version "1.0.30001754" + resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001754.tgz#7758299d9a72cce4e6b038788a15b12b44002759" + integrity sha512-x6OeBXueoAceOmotzx3PO4Zpt4rzpeIFsSr6AAePTZxSkXiYDUmpypEl7e2+8NCd9bD7bXjqyef8CJYPC1jfxg== ccount@^2.0.0: version "2.0.1" @@ -2855,72 +2855,72 @@ ci-info@^3.2.0: resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-3.9.0.tgz#4279a62028a7b1f262f3473fc9605f5e218c59b4" integrity sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ== -ckeditor5@47.1.0, ckeditor5@^47.0.0: - version "47.1.0" - resolved "https://registry.yarnpkg.com/ckeditor5/-/ckeditor5-47.1.0.tgz#f050ccfaf46163dec914fd30410deae7866d869f" - integrity sha512-Vnmt6eKIpiM+EpJSwxzCjJC5/9ykUhegwqWS9znAuAz2ZgBiVUFt54Y+CBhVpMru3z4zQ+NncVgCqoiU3ocHGQ== +ckeditor5@47.2.0, ckeditor5@^47.0.0: + version "47.2.0" + resolved "https://registry.yarnpkg.com/ckeditor5/-/ckeditor5-47.2.0.tgz#8aeb6466c6dbb1d3b990f9a52c114fbe12fee498" + integrity sha512-mrG9UdpT4JC0I44vK1DV5UwfGhruEG/FMXIWwGv+LWYrKt4aLL/5NyNpW86UDO9YAFSaw6IdEcbJGC/WkMJJjA== dependencies: - "@ckeditor/ckeditor5-adapter-ckfinder" "47.1.0" - "@ckeditor/ckeditor5-alignment" "47.1.0" - "@ckeditor/ckeditor5-autoformat" "47.1.0" - "@ckeditor/ckeditor5-autosave" "47.1.0" - "@ckeditor/ckeditor5-basic-styles" "47.1.0" - "@ckeditor/ckeditor5-block-quote" "47.1.0" - "@ckeditor/ckeditor5-bookmark" "47.1.0" - "@ckeditor/ckeditor5-ckbox" "47.1.0" - "@ckeditor/ckeditor5-ckfinder" "47.1.0" - "@ckeditor/ckeditor5-clipboard" "47.1.0" - "@ckeditor/ckeditor5-cloud-services" "47.1.0" - "@ckeditor/ckeditor5-code-block" "47.1.0" - "@ckeditor/ckeditor5-core" "47.1.0" - "@ckeditor/ckeditor5-easy-image" "47.1.0" - "@ckeditor/ckeditor5-editor-balloon" "47.1.0" - "@ckeditor/ckeditor5-editor-classic" "47.1.0" - "@ckeditor/ckeditor5-editor-decoupled" "47.1.0" - "@ckeditor/ckeditor5-editor-inline" "47.1.0" - "@ckeditor/ckeditor5-editor-multi-root" "47.1.0" - "@ckeditor/ckeditor5-emoji" "47.1.0" - "@ckeditor/ckeditor5-engine" "47.1.0" - "@ckeditor/ckeditor5-enter" "47.1.0" - "@ckeditor/ckeditor5-essentials" "47.1.0" - "@ckeditor/ckeditor5-find-and-replace" "47.1.0" - "@ckeditor/ckeditor5-font" "47.1.0" - "@ckeditor/ckeditor5-fullscreen" "47.1.0" - "@ckeditor/ckeditor5-heading" "47.1.0" - "@ckeditor/ckeditor5-highlight" "47.1.0" - "@ckeditor/ckeditor5-horizontal-line" "47.1.0" - "@ckeditor/ckeditor5-html-embed" "47.1.0" - "@ckeditor/ckeditor5-html-support" "47.1.0" - "@ckeditor/ckeditor5-icons" "47.1.0" - "@ckeditor/ckeditor5-image" "47.1.0" - "@ckeditor/ckeditor5-indent" "47.1.0" - "@ckeditor/ckeditor5-language" "47.1.0" - "@ckeditor/ckeditor5-link" "47.1.0" - "@ckeditor/ckeditor5-list" "47.1.0" - "@ckeditor/ckeditor5-markdown-gfm" "47.1.0" - "@ckeditor/ckeditor5-media-embed" "47.1.0" - "@ckeditor/ckeditor5-mention" "47.1.0" - "@ckeditor/ckeditor5-minimap" "47.1.0" - "@ckeditor/ckeditor5-page-break" "47.1.0" - "@ckeditor/ckeditor5-paragraph" "47.1.0" - "@ckeditor/ckeditor5-paste-from-office" "47.1.0" - "@ckeditor/ckeditor5-remove-format" "47.1.0" - "@ckeditor/ckeditor5-restricted-editing" "47.1.0" - "@ckeditor/ckeditor5-select-all" "47.1.0" - "@ckeditor/ckeditor5-show-blocks" "47.1.0" - "@ckeditor/ckeditor5-source-editing" "47.1.0" - "@ckeditor/ckeditor5-special-characters" "47.1.0" - "@ckeditor/ckeditor5-style" "47.1.0" - "@ckeditor/ckeditor5-table" "47.1.0" - "@ckeditor/ckeditor5-theme-lark" "47.1.0" - "@ckeditor/ckeditor5-typing" "47.1.0" - "@ckeditor/ckeditor5-ui" "47.1.0" - "@ckeditor/ckeditor5-undo" "47.1.0" - "@ckeditor/ckeditor5-upload" "47.1.0" - "@ckeditor/ckeditor5-utils" "47.1.0" - "@ckeditor/ckeditor5-watchdog" "47.1.0" - "@ckeditor/ckeditor5-widget" "47.1.0" - "@ckeditor/ckeditor5-word-count" "47.1.0" + "@ckeditor/ckeditor5-adapter-ckfinder" "47.2.0" + "@ckeditor/ckeditor5-alignment" "47.2.0" + "@ckeditor/ckeditor5-autoformat" "47.2.0" + "@ckeditor/ckeditor5-autosave" "47.2.0" + "@ckeditor/ckeditor5-basic-styles" "47.2.0" + "@ckeditor/ckeditor5-block-quote" "47.2.0" + "@ckeditor/ckeditor5-bookmark" "47.2.0" + "@ckeditor/ckeditor5-ckbox" "47.2.0" + "@ckeditor/ckeditor5-ckfinder" "47.2.0" + "@ckeditor/ckeditor5-clipboard" "47.2.0" + "@ckeditor/ckeditor5-cloud-services" "47.2.0" + "@ckeditor/ckeditor5-code-block" "47.2.0" + "@ckeditor/ckeditor5-core" "47.2.0" + "@ckeditor/ckeditor5-easy-image" "47.2.0" + "@ckeditor/ckeditor5-editor-balloon" "47.2.0" + "@ckeditor/ckeditor5-editor-classic" "47.2.0" + "@ckeditor/ckeditor5-editor-decoupled" "47.2.0" + "@ckeditor/ckeditor5-editor-inline" "47.2.0" + "@ckeditor/ckeditor5-editor-multi-root" "47.2.0" + "@ckeditor/ckeditor5-emoji" "47.2.0" + "@ckeditor/ckeditor5-engine" "47.2.0" + "@ckeditor/ckeditor5-enter" "47.2.0" + "@ckeditor/ckeditor5-essentials" "47.2.0" + "@ckeditor/ckeditor5-find-and-replace" "47.2.0" + "@ckeditor/ckeditor5-font" "47.2.0" + "@ckeditor/ckeditor5-fullscreen" "47.2.0" + "@ckeditor/ckeditor5-heading" "47.2.0" + "@ckeditor/ckeditor5-highlight" "47.2.0" + "@ckeditor/ckeditor5-horizontal-line" "47.2.0" + "@ckeditor/ckeditor5-html-embed" "47.2.0" + "@ckeditor/ckeditor5-html-support" "47.2.0" + "@ckeditor/ckeditor5-icons" "47.2.0" + "@ckeditor/ckeditor5-image" "47.2.0" + "@ckeditor/ckeditor5-indent" "47.2.0" + "@ckeditor/ckeditor5-language" "47.2.0" + "@ckeditor/ckeditor5-link" "47.2.0" + "@ckeditor/ckeditor5-list" "47.2.0" + "@ckeditor/ckeditor5-markdown-gfm" "47.2.0" + "@ckeditor/ckeditor5-media-embed" "47.2.0" + "@ckeditor/ckeditor5-mention" "47.2.0" + "@ckeditor/ckeditor5-minimap" "47.2.0" + "@ckeditor/ckeditor5-page-break" "47.2.0" + "@ckeditor/ckeditor5-paragraph" "47.2.0" + "@ckeditor/ckeditor5-paste-from-office" "47.2.0" + "@ckeditor/ckeditor5-remove-format" "47.2.0" + "@ckeditor/ckeditor5-restricted-editing" "47.2.0" + "@ckeditor/ckeditor5-select-all" "47.2.0" + "@ckeditor/ckeditor5-show-blocks" "47.2.0" + "@ckeditor/ckeditor5-source-editing" "47.2.0" + "@ckeditor/ckeditor5-special-characters" "47.2.0" + "@ckeditor/ckeditor5-style" "47.2.0" + "@ckeditor/ckeditor5-table" "47.2.0" + "@ckeditor/ckeditor5-theme-lark" "47.2.0" + "@ckeditor/ckeditor5-typing" "47.2.0" + "@ckeditor/ckeditor5-ui" "47.2.0" + "@ckeditor/ckeditor5-undo" "47.2.0" + "@ckeditor/ckeditor5-upload" "47.2.0" + "@ckeditor/ckeditor5-utils" "47.2.0" + "@ckeditor/ckeditor5-watchdog" "47.2.0" + "@ckeditor/ckeditor5-widget" "47.2.0" + "@ckeditor/ckeditor5-word-count" "47.2.0" clean-stack@^2.0.0: version "2.2.0" @@ -2998,9 +2998,9 @@ color-name@1.1.3: integrity sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw== color-name@^2.0.0: - version "2.0.2" - resolved "https://registry.yarnpkg.com/color-name/-/color-name-2.0.2.tgz#85054825a23e6d6f81d3503f660c4c4a2a15f04f" - integrity sha512-9vEt7gE16EW7Eu7pvZnR0abW9z6ufzhXxGXZEVU9IqPdlsUiMwJeJfRtq0zePUmnbHGT9zajca7mX8zgoayo4A== + version "2.1.0" + resolved "https://registry.yarnpkg.com/color-name/-/color-name-2.1.0.tgz#0b677385c1c4b4edfdeaf77e38fa338e3a40b693" + integrity sha512-1bPaDNFm0axzE4MEAzKPuqKWeRaT43U/hyxKPBdqTfmPF+d6n7FSoTFxLVULUJOmiLp01KjhIPPH+HrXZJN4Rg== color-name@~1.1.4: version "1.1.4" @@ -3661,10 +3661,10 @@ duplexer@^0.1.2: resolved "https://registry.yarnpkg.com/duplexer/-/duplexer-0.1.2.tgz#3abe43aef3835f8ae077d136ddce0f276b0400e6" integrity sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg== -electron-to-chromium@^1.5.238: - version "1.5.244" - resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.5.244.tgz#b9b61e3d24ef4203489951468614f2a360763820" - integrity sha512-OszpBN7xZX4vWMPJwB9illkN/znA8M36GQqQxi6MNy9axWxhOfJyZZJtSLQCpEFLHP2xK33BiWx9aIuIEXVCcw== +electron-to-chromium@^1.5.249: + version "1.5.250" + resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.5.250.tgz#0b40436fa41ae7cbac3d2f60ef0411a698eb72a7" + integrity sha512-/5UMj9IiGDMOFBnN4i7/Ry5onJrAGSbOGo3s9FEKmwobGq6xw832ccET0CE3CkkMBZ8GJSlUIesZofpyurqDXw== emoji-regex@^7.0.1: version "7.0.3" @@ -5082,21 +5082,21 @@ markdown-table@^3.0.0: integrity sha512-wiYz4+JrLyb/DqW2hkFJxP7Vd7JuTDm77fvbM8VfEQdmSMqcImWeeRbHwZjBjIFki/VaMK2BhFi7oUUZeM5bqw== marked-gfm-heading-id@^4.1.1: - version "4.1.2" - resolved "https://registry.yarnpkg.com/marked-gfm-heading-id/-/marked-gfm-heading-id-4.1.2.tgz#65c5e28bce7581206a2073e4d2df8e02daceb2fb" - integrity sha512-EQ1WiEGHJh0C8viU+hbXbhHyWTDgEia2i96fiSemm2wdYER6YBw/9QI5TB6YFTqFfmMOxBFXPcPJtlgD0fVV2w== + version "4.1.3" + resolved "https://registry.yarnpkg.com/marked-gfm-heading-id/-/marked-gfm-heading-id-4.1.3.tgz#6b3e0bc2bc69d5124823e93ee00f05f5c6f90a5f" + integrity sha512-aR0i63LmFbuxU/gAgrgz1Ir+8HK6zAIFXMlckeKHpV+qKbYaOP95L4Ux5Gi+sKmCZU5qnN2rdKpvpb7PnUBIWg== dependencies: github-slugger "^2.0.0" marked-mangle@^1.0.1: - version "1.1.11" - resolved "https://registry.yarnpkg.com/marked-mangle/-/marked-mangle-1.1.11.tgz#d743093b5f48ce964e5594764915abdf05c364f6" - integrity sha512-BUZiRqPooKZZhC7e8aDlzqkZt4MKkbJ/VY22b8iqrI3fJdnWmSyc7/uujDkrMszZrKURrXsYVUfgdWG6gEspcA== + version "1.1.12" + resolved "https://registry.yarnpkg.com/marked-mangle/-/marked-mangle-1.1.12.tgz#7ecc1dab1e03695f3b8b9d606e8becfba8277496" + integrity sha512-bRrqNcfU9v3iRECb7YPvA+/xKZMjHojd9R92YwHbFjdPQ+Wc7vozkbGKAv4U8AUl798mNUuY3DTBQkedsV3TeQ== marked@^16.1.1: - version "16.4.1" - resolved "https://registry.yarnpkg.com/marked/-/marked-16.4.1.tgz#db37c878cfa28fa57b8dd471fe92a83282911052" - integrity sha512-ntROs7RaN3EvWfy3EZi14H4YxmT6A5YvywfhO+0pm+cH/dnSQRmdAmoFIc3B9aiwTehyk7pESH4ofyBY+V5hZg== + version "16.4.2" + resolved "https://registry.yarnpkg.com/marked/-/marked-16.4.2.tgz#4959a64be6c486f0db7467ead7ce288de54290a3" + integrity sha512-TI3V8YYWvkVf3KJe1dRkpnjs68JUPyEa5vjKrp1XEEJUAOaQc+Qj+L1qWbPd0SJuAdQkFU0h73sXXqwDYxsiDA== math-intrinsics@^1.1.0: version "1.1.0" @@ -5734,7 +5734,7 @@ node-notifier@^9.0.0: uuid "^8.3.0" which "^2.0.2" -node-releases@^2.0.26: +node-releases@^2.0.27: version "2.0.27" resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-2.0.27.tgz#eedca519205cf20f650f61d56b070db111231e4e" integrity sha512-nmh3lCkYZ3grZvqcCH+fjmQ7X+H0OeZgP40OierEaAptX4XofMh5kwNbWh7lBduUzCcV/8kZ+NDLCwm2iorIlA== @@ -6901,9 +6901,9 @@ safe-regex-test@^1.1.0: integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg== sax@^1.2.4, sax@^1.4.1: - version "1.4.1" - resolved "https://registry.yarnpkg.com/sax/-/sax-1.4.1.tgz#44cc8988377f126304d3b3fc1010c733b929ef0f" - integrity sha512-+aWOz7yVScEGoKNd4PA10LZ8sk0A/z5+nXQG5giUO5rprX9jgYsTdov9qCchZiPIZezbZH+jRut8nPodFAX4Jg== + version "1.4.3" + resolved "https://registry.yarnpkg.com/sax/-/sax-1.4.3.tgz#fcebae3b756cdc8428321805f4b70f16ec0ab5db" + integrity sha512-yqYn1JhPczigF94DMS+shiDMjDowYO6y9+wB/4WgO0Y19jWYk0lQ4tuG5KI7kj4FTp1wxPj5IFfcrz/s1c3jjQ== schema-utils@^3.0.0: version "3.3.0" @@ -7402,9 +7402,9 @@ terser-webpack-plugin@^5.3.0, terser-webpack-plugin@^5.3.11: terser "^5.31.1" terser@^5.3.4, terser@^5.31.1: - version "5.44.0" - resolved "https://registry.yarnpkg.com/terser/-/terser-5.44.0.tgz#ebefb8e5b8579d93111bfdfc39d2cf63879f4a82" - integrity sha512-nIVck8DK+GM/0Frwd+nIhZ84pR/BX7rmXMfYwyg+Sri5oGVE99/E3KvXqpC2xHFxyqXyGHTKBSioxxplrO4I4w== + version "5.44.1" + resolved "https://registry.yarnpkg.com/terser/-/terser-5.44.1.tgz#e391e92175c299b8c284ad6ded609e37303b0a9c" + integrity sha512-t/R3R/n0MSwnnazuPpPNVO60LX0SKL45pyl9YlvxIdkH0Of7D5qM2EVe+yASRIlY5pZ73nclYJfNANGWPwFDZw== dependencies: "@jridgewell/source-map" "^0.3.3" acorn "^8.15.0" @@ -7485,10 +7485,10 @@ tslib@^2.8.0: resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.8.1.tgz#612efe4ed235d567e8aba5f2a5fab70280ade83f" integrity sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w== -type-fest@^5.0.1: - version "5.1.0" - resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-5.1.0.tgz#30ba6dc2acde4f73732417031f8ac19a0afcb5b7" - integrity sha512-wQ531tuWvB6oK+pchHIu5lHe5f5wpSCqB8Kf4dWQRbOYc9HTge7JL0G4Qd44bh6QuJCccIzL3bugb8GI0MwHrg== +type-fest@^5.2.0: + version "5.2.0" + resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-5.2.0.tgz#7dd671273eb6bcba71af0babe303e8dbab60f795" + integrity sha512-xxCJm+Bckc6kQBknN7i9fnP/xobQRsRQxR01CztFkp/h++yfVxUUcmMgfR2HttJx/dpWjS9ubVuyspJv24Q9DA== dependencies: tagged-tag "^1.0.0" @@ -8030,10 +8030,10 @@ zwitch@^2.0.0, zwitch@^2.0.4: resolved "https://registry.yarnpkg.com/zwitch/-/zwitch-2.0.4.tgz#c827d4b0acb76fc3e685a4c6ec2902d51070e9d7" integrity sha512-bXE4cR/kVZhKZX/RjPEflHaKVhUVl85noU3v6b8apfQEc1x4A+zBxjZ4lN8LqGd6WZ3dl98pY4o717VFmoPp+A== -zxing-wasm@2.2.2: - version "2.2.2" - resolved "https://registry.yarnpkg.com/zxing-wasm/-/zxing-wasm-2.2.2.tgz#b2ad711f3f241757e822baebbc617bac5723898f" - integrity sha512-Q9/B9whEwAUABvr7ScHl36wVZTBWVHAaumx45uGQLl2GGRp5ZRtDtwbz5scOwl/xzL07fximIqoQqqmzf9eJJA== +zxing-wasm@2.2.3: + version "2.2.3" + resolved "https://registry.yarnpkg.com/zxing-wasm/-/zxing-wasm-2.2.3.tgz#365ff73d84a44bc2e81b10e622baed2b764caaf5" + integrity sha512-fz0WwsJi6sNZtfqmHb4cCNzih0Fvz+RIh7jL5wAwQEt+S+GCr6pV+PRDLNYKWgrAtR0y2hKQCLSbZDRk8hfehA== dependencies: - "@types/emscripten" "^1.41.2" - type-fest "^5.0.1" + "@types/emscripten" "^1.41.5" + type-fest "^5.2.0" From 95c5ab7b8b487be3d48c98ac442a3f9117949634 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan=20B=C3=B6hmer?= Date: Wed, 12 Nov 2025 21:54:41 +0100 Subject: [PATCH 4/4] Removed unnecessary polyfills --- composer.json | 7 ++ composer.lock | 251 +------------------------------------------------- symfony.lock | 6 -- 3 files changed, 8 insertions(+), 256 deletions(-) diff --git a/composer.json b/composer.json index f53130d4..1c6eafc7 100644 --- a/composer.json +++ b/composer.json @@ -118,6 +118,13 @@ "symfony/stopwatch": "7.3.*", "symfony/web-profiler-bundle": "7.3.*" }, + "replace": { + "symfony/polyfill-mbstring": "*", + "symfony/polyfill-php74": "*", + "symfony/polyfill-php80": "*", + "symfony/polyfill-php81": "*", + "symfony/polyfill-php82": "*" + }, "suggest": { "ext-bcmath": "Used to improve price calculation performance", "ext-gmp": "Used to improve price calculation performanice" diff --git a/composer.lock b/composer.lock index 187c5155..d0142b5f 100644 --- a/composer.lock +++ b/composer.lock @@ -4,7 +4,7 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "This file is @generated automatically" ], - "content-hash": "3b5a603cc4c289262a2e58b0f37ee42e", + "content-hash": "7e6a6a56cfdcc08fc186bb3894ae00e0", "packages": [ { "name": "amphp/amp", @@ -13385,255 +13385,6 @@ ], "time": "2024-09-09T11:45:10+00:00" }, - { - "name": "symfony/polyfill-mbstring", - "version": "v1.33.0", - "source": { - "type": "git", - "url": "https://github.com/symfony/polyfill-mbstring.git", - "reference": "6d857f4d76bd4b343eac26d6b539585d2bc56493" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/6d857f4d76bd4b343eac26d6b539585d2bc56493", - "reference": "6d857f4d76bd4b343eac26d6b539585d2bc56493", - "shasum": "" - }, - "require": { - "ext-iconv": "*", - "php": ">=7.2" - }, - "provide": { - "ext-mbstring": "*" - }, - "suggest": { - "ext-mbstring": "For best performance" - }, - "type": "library", - "extra": { - "thanks": { - "url": "https://github.com/symfony/polyfill", - "name": "symfony/polyfill" - } - }, - "autoload": { - "files": [ - "bootstrap.php" - ], - "psr-4": { - "Symfony\\Polyfill\\Mbstring\\": "" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Nicolas Grekas", - "email": "p@tchwork.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Symfony polyfill for the Mbstring extension", - "homepage": "https://symfony.com", - "keywords": [ - "compatibility", - "mbstring", - "polyfill", - "portable", - "shim" - ], - "support": { - "source": "https://github.com/symfony/polyfill-mbstring/tree/v1.33.0" - }, - "funding": [ - { - "url": "https://symfony.com/sponsor", - "type": "custom" - }, - { - "url": "https://github.com/fabpot", - "type": "github" - }, - { - "url": "https://github.com/nicolas-grekas", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", - "type": "tidelift" - } - ], - "time": "2024-12-23T08:48:59+00:00" - }, - { - "name": "symfony/polyfill-php80", - "version": "v1.33.0", - "source": { - "type": "git", - "url": "https://github.com/symfony/polyfill-php80.git", - "reference": "0cc9dd0f17f61d8131e7df6b84bd344899fe2608" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-php80/zipball/0cc9dd0f17f61d8131e7df6b84bd344899fe2608", - "reference": "0cc9dd0f17f61d8131e7df6b84bd344899fe2608", - "shasum": "" - }, - "require": { - "php": ">=7.2" - }, - "type": "library", - "extra": { - "thanks": { - "url": "https://github.com/symfony/polyfill", - "name": "symfony/polyfill" - } - }, - "autoload": { - "files": [ - "bootstrap.php" - ], - "psr-4": { - "Symfony\\Polyfill\\Php80\\": "" - }, - "classmap": [ - "Resources/stubs" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Ion Bazan", - "email": "ion.bazan@gmail.com" - }, - { - "name": "Nicolas Grekas", - "email": "p@tchwork.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Symfony polyfill backporting some PHP 8.0+ features to lower PHP versions", - "homepage": "https://symfony.com", - "keywords": [ - "compatibility", - "polyfill", - "portable", - "shim" - ], - "support": { - "source": "https://github.com/symfony/polyfill-php80/tree/v1.33.0" - }, - "funding": [ - { - "url": "https://symfony.com/sponsor", - "type": "custom" - }, - { - "url": "https://github.com/fabpot", - "type": "github" - }, - { - "url": "https://github.com/nicolas-grekas", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", - "type": "tidelift" - } - ], - "time": "2025-01-02T08:10:11+00:00" - }, - { - "name": "symfony/polyfill-php82", - "version": "v1.33.0", - "source": { - "type": "git", - "url": "https://github.com/symfony/polyfill-php82.git", - "reference": "5d2ed36f7734637dacc025f179698031951b1692" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-php82/zipball/5d2ed36f7734637dacc025f179698031951b1692", - "reference": "5d2ed36f7734637dacc025f179698031951b1692", - "shasum": "" - }, - "require": { - "php": ">=7.2" - }, - "type": "library", - "extra": { - "thanks": { - "url": "https://github.com/symfony/polyfill", - "name": "symfony/polyfill" - } - }, - "autoload": { - "files": [ - "bootstrap.php" - ], - "psr-4": { - "Symfony\\Polyfill\\Php82\\": "" - }, - "classmap": [ - "Resources/stubs" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Nicolas Grekas", - "email": "p@tchwork.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Symfony polyfill backporting some PHP 8.2+ features to lower PHP versions", - "homepage": "https://symfony.com", - "keywords": [ - "compatibility", - "polyfill", - "portable", - "shim" - ], - "support": { - "source": "https://github.com/symfony/polyfill-php82/tree/v1.33.0" - }, - "funding": [ - { - "url": "https://symfony.com/sponsor", - "type": "custom" - }, - { - "url": "https://github.com/fabpot", - "type": "github" - }, - { - "url": "https://github.com/nicolas-grekas", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", - "type": "tidelift" - } - ], - "time": "2024-09-09T11:45:10+00:00" - }, { "name": "symfony/polyfill-php83", "version": "v1.33.0", diff --git a/symfony.lock b/symfony.lock index 7c136b4b..2cff2c00 100644 --- a/symfony.lock +++ b/symfony.lock @@ -592,12 +592,6 @@ "symfony/polyfill-intl-normalizer": { "version": "v1.17.0" }, - "symfony/polyfill-mbstring": { - "version": "v1.10.0" - }, - "symfony/polyfill-php80": { - "version": "v1.17.0" - }, "symfony/process": { "version": "v4.2.3" },