Skip to content

Commit

Permalink
MOSIP-34966: Integration with Add FTM API (#739)
Browse files Browse the repository at this point in the history
Signed-off-by: Anil_Kumar_Majji <[email protected]>
  • Loading branch information
Anil-kumar-Majji authored Sep 5, 2024
1 parent fb8b1bf commit 453552a
Show file tree
Hide file tree
Showing 6 changed files with 190 additions and 62 deletions.
17 changes: 10 additions & 7 deletions pmp-reactjs-ui/public/i18n/ara.json
Original file line number Diff line number Diff line change
Expand Up @@ -433,7 +433,7 @@
"deactivateApprovedDevicesSingular": "{{devicesCount}} سيتم إلغاء تنشيط الجهاز المعتمد المرتبط بهذا SBI ",
"deactivatePendingDevicesPlural": " {{devicesCount}} سيتم رفض الأجهزة التي تنتظر الموافقة تلقائيًا",
"deactivatePendingDevicesSingular": "{{devicesCount}} سيتم رفض الجهاز المعلق للموافقة تلقائيًا"
},
},
"viewDeviceDetails": {
"viewDeviceDetails": "عرض تفاصيل الجهاز",
"sbiVersionGoesHere1": "نسخة SBI هنا 1",
Expand All @@ -443,7 +443,7 @@
"addDeviceBtn": "إضافة جهاز",
"ftmChipProviderServices": "خدمات مزودي شريحة FTM",
"addFtmBtn": "إضافة FTM",
"partnerId":"معرف الشريك",
"partnerId": "معرف الشريك",
"listOfFtm": "قائمة تفاصيل شريحة FTM",
"make": "يصنع",
"model": "نموذج",
Expand All @@ -455,7 +455,7 @@
"view": "منظر",
"manageCertificate": "إدارة الشهادة",
"deActivate": "إلغاء التنشيط",
"selectPartnerId":"حدد معرف الشريك",
"selectPartnerId": "حدد معرف الشريك",
"selectMakeName": "حدد إنشاء اسم",
"selectModelName": "حدد اسم النموذج",
"selectStatus": "حدد الحالة"
Expand All @@ -464,10 +464,13 @@
"addFtmChipDetails": "إضافة تفاصيل شريحة FTM",
"listOfFtmChipDetails": "قائمة تفاصيل شريحة FTM",
"infoPartnerId": "تتوفر فقط معرفات الشركاء لمزود شريحة FTM الذي تم تحميل شهادة الشريك الخاصة به في القائمة المنسدلة. إذا لم تجد معرف الشريك الخاص بك، فيرجى تحميل شهادة الشريك أولاً",
"makeBoxHelp": "أدخل العلامة التجارية",
"modelBoxHelp": "أدخل النموذج",
"enterMake": "أدخل العلامة التجارية",
"enterModel": "أدخل النموذج",
"uploadFtmCertificate": "تحميل شهادة شريحة FTM",
"certificateFormatMsg": "يُسمح فقط بتحميل تنسيقات الشهادات .cer أو .pem الموقعة من قبل هيئة الشهادات المعتمدة"
"certificateFormatMsg": "يُسمح فقط بتحميل تنسيقات الشهادات .cer أو .pem الموقعة من قبل هيئة الشهادات المعتمدة",
"errorInAddingFtm": "أثناء إضافة SBI، واجهنا خطأ",
"addFtmSuccessHeader": "تم إرسال تفاصيل شريحة FTM بنجاح",
"addFtmSuccessMsg": "تم إرسال طلب إنشاء شريحة FTM بنجاح وهو في انتظار موافقة المشرف"
},
"viewFtmChipDetails": {
"viewFtmChipDetails": "عرض تفاصيل جهاز شريحة FTM",
Expand Down Expand Up @@ -647,7 +650,7 @@
"PMS_CERTIFICATE_ERROR_005": "حالة الموافقة فارغة أو فارغة",
"PMS_CERTIFICATE_ERROR_006": "غير قادر على فك تشفير بيانات الشهادة",
"PMS_CERTIFICATE_ERROR_007": "معرف الشريك المحدد لا ينتمي إلى المستخدم. لذلك غير قادر على الحصول على شهادات الشريك الأصلية",
"PMS_CERTIFICATE_ERROR_008":"حدث خطأ أثناء جلب الشهادة.",
"PMS_CERTIFICATE_ERROR_008": "حدث خطأ أثناء جلب الشهادة.",
"PMS_POLICY_ERROR_001": "مجموعة السياسات غير موجودة.",
"PMS_POLICY_ERROR_002": "حدث خطأ أثناء جلب سياسات الشركاء.",
"PMS_POLICY_ERROR_003": "حدث خطأ أثناء جلب جميع معرفات الشركاء المعتمدين مع مجموعات السياسات.",
Expand Down
11 changes: 7 additions & 4 deletions pmp-reactjs-ui/public/i18n/eng.json
Original file line number Diff line number Diff line change
Expand Up @@ -459,10 +459,13 @@
"addFtmChipDetails": "Add FTM Chip Details",
"listOfFtmChipDetails": "List of FTM Chip details",
"infoPartnerId": "Only those partner IDs of FTM Chip Provider whose partner certificate is uploaded is available in the dropdown. If you don't find your partner ID, please upload partner certificate first",
"makeBoxHelp": "Enter Make",
"modelBoxHelp": "Enter Model",
"uploadFtmCertificate": "Upload FTM Chip Certificate",
"certificateFormatMsg": "Only .cer or .pem certificate formats signed by authorised Certificate Authority are allowed for upload"
"enterMake": "Enter Make",
"enterModel": "Enter Model",
"uploadFtmCertificate": "Upload FTM Certificate",
"certificateFormatMsg": "Only .cer or .pem certificate formats signed by authorised Certificate Authority are allowed for upload",
"errorInAddingFtm": "While adding SBI, we have encountered with an error.",
"addFtmSuccessHeader": "FTM Chip details submitted successfully!",
"addFtmSuccessMsg": "FTM Chip creation request has been successfully submitted and is pending with admin for approval."
},
"viewFtmChipDetails": {
"viewFtmChipDetails": "View FTM Chip Device Details",
Expand Down
33 changes: 18 additions & 15 deletions pmp-reactjs-ui/public/i18n/fra.json
Original file line number Diff line number Diff line change
Expand Up @@ -36,10 +36,10 @@
"policiesDesc": "Demandez et consultez vos polices",
"authenticationServices": "Services d'authentification",
"authenticationServicesDesc": "Demander la création d'un client OIDC / la génération de clés API pour les concepteurs et l'authentification basée sur les clés API",
"deviceProviderServices":"Services du fournisseur d'appareils",
"deviceProviderServices": "Services du fournisseur d'appareils",
"ftmChipProviderServices": "Services de fournisseur de puces FTM",
"ftmChipProviderServicesDesc": "Ajouter, désactiver FTM (Foundational Trust Module), télécharger, re-télécharger, télécharger le certificat de puce FTM",
"deviceProviderServicesDesc":"Ajouter, afficher, désactiver SBI (Secure Biometric Interface) et les appareils associés",
"deviceProviderServicesDesc": "Ajouter, afficher, désactiver SBI (Secure Biometric Interface) et les appareils associés",
"userRegistrationError": "Impossible d'enregistrer l'utilisateur. Essayez de vous connecter à nouveau !",
"verifyEmailError": "Erreur lors de la vérification de l'e-mail de l'utilisateur. Essayez de vous connecter à nouveau!"
},
Expand All @@ -54,7 +54,7 @@
"lastName": "Nom de famille",
"organisationName": "Nom de l'organisme",
"address": "Adresse",
"partnerType":"Type de partenaire",
"partnerType": "Type de partenaire",
"phoneNumber": "Numéro de téléphone",
"emailAddress": "Adresse e-mail",
"userName": "Nom d'utilisateur"
Expand Down Expand Up @@ -282,7 +282,7 @@
"policyName": "Nom de la politique",
"policyGroupDescription": "Description du groupe de stratégies",
"policyNameDescription": "Nom de la stratégie Description",
"clientName":"Nom du client",
"clientName": "Nom du client",
"publicKey": "Clé publique",
"logoUri": "URI du logo",
"redirectUri": "URI de redirection",
Expand Down Expand Up @@ -327,14 +327,14 @@
"selectedPolicyName": "Sélectionnez la stratégie pour laquelle la clé API est requise",
"name": "nom",
"enterNameForApiKey": "Entrez un nom pour la clé API",
"generateApiKeySuccessHeader":"Détails soumis avec succès !",
"generateApiKeySuccessHeader": "Détails soumis avec succès !",
"apiKeySuccessMsg": "Les détails de la clé API ont été soumis avec succès.",
"errorInGenerateApiKey": "Lors de la génération de la clé API, nous avons rencontré une erreur.",
"nameTooLong": "Le nom ne doit pas contenir plus de 36 caractères."
},
"deactivateApiKey": {
"apiKeyName": "Voulez-vous désactiver la clé API",
"description": "En cliquant sur Confirmer, vous ne pourrez plus utiliser la clé API pour l'authentification."
"apiKeyName": "Voulez-vous désactiver la clé API",
"description": "En cliquant sur Confirmer, vous ne pourrez plus utiliser la clé API pour l'authentification."
},
"deviceProviderServices": {
"listOfSbisAndDevices": "Liste des SBI et des appareilsBI - Device",
Expand All @@ -355,7 +355,7 @@
"selectDate": "Sélectionner une date",
"sbiExpiryDate": "Date d'expiration du SBI",
"dateFormatInfoKey": "Entrez la date au format MM/DD/YYYY",
"expiryDateInfoKey":"La date d'expiration du SBI doit être au moins un an supérieure à la date de création du SBI.",
"expiryDateInfoKey": "La date d'expiration du SBI doit être au moins un an supérieure à la date de création du SBI.",
"saveAndAddDevices": "Enregistrer et ajouter des appareils",
"errorInAddingSbi": "Lors de l'ajout de SBI, nous avons rencontré une erreur."
},
Expand Down Expand Up @@ -433,7 +433,7 @@
"deactivateApprovedDevicesSingular": "{{devicesCount}} l'appareil approuvé associé à ce SBI sera désactivé ",
"deactivatePendingDevicesPlural": " {{devicesCount}} les appareils en attente d'approbation seront automatiquement rejetés",
"deactivatePendingDevicesSingular": "{{devicesCount}} les appareils en attente d'approbation seront automatiquement rejetés"
},
},
"viewDeviceDetails": {
"viewDeviceDetails": "Afficher les détails de l'appareil",
"sbiVersionGoesHere1": "La version SBI va ici 1",
Expand All @@ -443,7 +443,7 @@
"addDeviceBtn": "Ajouter un appareil",
"ftmChipProviderServices": "Services de fournisseur de puces FTM",
"addFtmBtn": "Ajouter FTM",
"partnerId":"ID partenaire",
"partnerId": "ID partenaire",
"listOfFtm": "Liste des détails de la puce FTM",
"make": "Faire",
"model": "Modèle",
Expand All @@ -455,7 +455,7 @@
"view": "Voir",
"manageCertificate": "Gérer le certificat",
"deActivate": "Désactiver",
"selectPartnerId":"Sélectionnez l'ID du partenaire",
"selectPartnerId": "Sélectionnez l'ID du partenaire",
"selectMakeName": "Sélectionnez Créer un nom",
"selectModelName": "Sélectionnez le nom du modèle",
"selectStatus": "Sélectionnez le statut"
Expand All @@ -464,10 +464,13 @@
"addFtmChipDetails": "Ajouter les détails de la puce FTM",
"listOfFtmChipDetails": "Liste des détails de la puce FTM",
"infoPartnerId": "Seuls les identifiants de partenaire du fournisseur de puces FTM dont le certificat partenaire est téléchargé sont disponibles dans la liste déroulante. Si vous ne trouvez pas votre identifiant de partenaire, veuillez d'abord télécharger le certificat partenaire",
"makeBoxHelp": "Entrez la marque",
"modelBoxHelp": "Entrez le modèle",
"enterMake": "Entrez la marque",
"enterModel": "Entrez le modèle",
"uploadFtmCertificate": "Télécharger le certificat de la puce FTM.",
"certificateFormatMsg": "Seuls les formats de certificat .cer ou .pem signés par une autorité de certification autorisée sont autorisés pour le téléchargement."
"certificateFormatMsg": "Seuls les formats de certificat .cer ou .pem signés par une autorité de certification autorisée sont autorisés pour le téléchargement.",
"errorInAddingFtm": "Lors de l'ajout de SBI, nous avons rencontré une erreur.",
"addFtmSuccessHeader": "Détails de la puce FTM soumis avec succès!",
"addFtmSuccessMsg": "La demande de création de puce FTM a été soumise avec succès et est en attente d'approbation par l'administrateur."
},
"viewFtmChipDetails": {
"viewFtmChipDetails": "Afficher les détails de la puce FTM",
Expand Down Expand Up @@ -647,7 +650,7 @@
"PMS_CERTIFICATE_ERROR_005": "Le statut d'approbation est nul ou vide",
"PMS_CERTIFICATE_ERROR_006": "Impossible de décoder les données du certificat",
"PMS_CERTIFICATE_ERROR_007": "L'ID de partenaire donné n'appartient pas à l'utilisateur. Impossible donc d'obtenir les certificats de partenaire d'origine",
"PMS_CERTIFICATE_ERROR_008":"Erreur lors de la récupération du certificat.",
"PMS_CERTIFICATE_ERROR_008": "Erreur lors de la récupération du certificat.",
"PMS_POLICY_ERROR_001": "Le groupe de stratégies n existe pas.",
"PMS_POLICY_ERROR_002": "Erreur lors de la récupération des stratégies partenaires.",
"PMS_POLICY_ERROR_003": "Erreur lors de la récupération de tous les identifiants de partenaires approuvés avec les groupes de stratégies.",
Expand Down
4 changes: 4 additions & 0 deletions pmp-reactjs-ui/src/AppRoutes.js
Original file line number Diff line number Diff line change
Expand Up @@ -142,6 +142,10 @@ function AppRoutes() {
path: 'ftmChipProviderServices/manageFtmChipCertificate',
element: <GuardedRoute><MainLayout><ManageFtmChipCertificate/></MainLayout></GuardedRoute>
},
{
path: 'ftmChipProviderServices/addFtmConfirmation',
element: <GuardedRoute><MainLayout><Confirmation/></MainLayout></GuardedRoute>,
},
{
path: 'runtimeError',
element: <RuntimeError/>,
Expand Down
28 changes: 19 additions & 9 deletions pmp-reactjs-ui/src/pages/common/Confirmation.js
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ function Confirmation() {
<div className={`mt-5 w-[100%] ${isLoginLanguageRTL ? "mr-28 ml-5" : "ml-28 mr-5"} font-inter`}>
<div className="flex-col">
<div className={`flex items-start space-x-3`}>
<img src={backArrow} onClick={() => navigate(confirmationData.backUrl)} alt="" className={`cursor-pointer max-[450px]:h-3 ${isLoginLanguageRTL ? "ml-2 rotate-180" :""} mt-[1%] max-[450px]:mt-[3%]`} />
<img src={backArrow} onClick={() => navigate(confirmationData.backUrl)} alt="" className={`cursor-pointer max-[450px]:h-3 ${isLoginLanguageRTL ? "ml-2 rotate-180" : ""} mt-[1%] max-[450px]:mt-[3%]`} />
<div className="flex-col">
<h1 className="font-semibold text-xl text-dark-blue max-[450px]:text-sm">{t(confirmationData.title)}</h1>
<div className="flex space-x-1 max-[350px]:flex-col">
Expand All @@ -57,14 +57,24 @@ function Confirmation() {
<p className="text-[#666666] text-sm font-semibold max-[450px]:text-xs">
{t(confirmationData.description)}
</p>
<div className={`flex gap-x-3 mt-12 max-[450px]:flex-col max-[450px]:gap-x-0 justify-center`}>
<button onClick={() => navigate(confirmationData.backUrl)} type="button" className="text-white font-semibold bg-tory-blue rounded-md text-sm px-12 py-4 max-[450px]:text-xs max-[450px]:mx-6 max-[450px]:mb-2">
{t('commons.goBack')}
</button>
<button onClick={() => moveToHome(navigate)} type="button" className="text-[#1447b2] font-semibold bg-white border border-[#1447b2] rounded-md text-sm px-12 py-4 max-[450px]:text-xs max-[450px]:mx-6">
{t('commons.home')}
</button>
</div>
{!confirmationData.addFtmSuccess &&
<div className={`flex gap-x-3 mt-12 max-[450px]:flex-col max-[450px]:gap-x-0 justify-center`}>
<button onClick={() => navigate(confirmationData.backUrl)} type="button" className="text-white font-semibold bg-tory-blue rounded-md text-sm px-12 py-4 max-[450px]:text-xs max-[450px]:mx-6 max-[450px]:mb-2">
{t('commons.goBack')}
</button>
<button onClick={() => moveToHome(navigate)} type="button" className="text-[#1447b2] font-semibold bg-white border border-[#1447b2] rounded-md text-sm px-12 py-4 max-[450px]:text-xs max-[450px]:mx-6">
{t('commons.home')}
</button>
</div>
}

{confirmationData.addFtmSuccess &&
<div>
<button onClick={() => navigate(confirmationData.backUrl)} type="button" className="text-white font-semibold bg-tory-blue rounded-md text-sm px-12 py-4 max-[450px]:text-xs max-[450px]:mx-6 max-[450px]:mb-2">
{t(confirmationData.uploadFtm)}
</button>
</div>
}
</div>
</div>
</div>
Expand Down
Loading

0 comments on commit 453552a

Please sign in to comment.