diff --git a/packages/manager-components/src/components/templates/onboarding/onboarding.component.tsx b/packages/manager-components/src/components/templates/onboarding/onboarding.component.tsx index ce4db779c898..95d4aafe76de 100644 --- a/packages/manager-components/src/components/templates/onboarding/onboarding.component.tsx +++ b/packages/manager-components/src/components/templates/onboarding/onboarding.component.tsx @@ -1,12 +1,11 @@ import React, { PropsWithChildren } from 'react'; -import { - OsdsButton, - OsdsDivider, - OsdsText, -} from '@ovhcloud/ods-components/react'; +import { OsdsButton, OsdsIcon, OsdsText, OsdsDivider, } from '@ovhcloud/ods-components/react'; +import { OdsHTMLAnchorElementTarget } from '@ovhcloud/ods-common-core'; import { ODS_BUTTON_SIZE, ODS_BUTTON_VARIANT, + ODS_ICON_NAME, + ODS_ICON_SIZE, ODS_DIVIDER_SIZE, ODS_TEXT_COLOR_INTENT, ODS_TEXT_LEVEL, @@ -24,7 +23,8 @@ export type OnboardingLayoutProps = PropsWithChildren<{ title: string; orderButtonLabel: string; orderHref?: string; - description?: React.ReactNode; + description?: string; + additionalDescriptions?: string[]; moreInfoHref?: string; moreInfoButtonLabel?: string; onOrderButtonClick?: () => void; @@ -40,6 +40,7 @@ export const OnboardingLayout: React.FC = ({ hideHeadingSection, title, description, + additionalDescriptions, orderHref, orderButtonLabel, moreInfoHref, @@ -72,37 +73,58 @@ export const OnboardingLayout: React.FC = ({ {title} - - {description} - -
-
+ {description && ( + + {description} + + )}{' '} + {additionalDescriptions?.map((desc) => ( + + {desc} + + ))} +
+ + {orderButtonLabel} + + + {moreInfoButtonLabel && moreInfoHref && ( - {orderButtonLabel} + {moreInfoButtonLabel} + + + -
- {moreInfoButtonLabel && moreInfoHref && ( -
- - {moreInfoButtonLabel} - -
)}
diff --git a/packages/manager/apps/key-management-service/src/pages/onboarding/index.tsx b/packages/manager/apps/key-management-service/src/pages/onboarding/index.tsx index af10bd6b1030..61fb78bf1460 100644 --- a/packages/manager/apps/key-management-service/src/pages/onboarding/index.tsx +++ b/packages/manager/apps/key-management-service/src/pages/onboarding/index.tsx @@ -1,59 +1,26 @@ import React from 'react'; import { useTranslation } from 'react-i18next'; -import { Card, OnboardingLayout } from '@ovhcloud/manager-components'; +import { useNavigate } from 'react-router-dom'; +import { OnboardingLayout } from '@ovhcloud/manager-components'; import onboardingImgSrc from './onboarding-img.png'; +import { ROUTES_URLS } from '@/routes/routes.constants'; export default function Onboarding() { const { t } = useTranslation('key-management-service/onboarding'); - - const tileList = [ - { - id: 1, - texts: { - title: t('guide1Title'), - description: t('guide1Description'), - category: t('guideCategory'), - }, - href: 'https://ovh/com/link/1', - }, - { - id: 2, - texts: { - title: t('guide2Title'), - description: t('guide2Description'), - category: t('guideCategory'), - }, - href: 'https://ovh/com/link/2', - }, - { - id: 3, - texts: { - title: t('guide3Title'), - description: t('guide3Description'), - category: t('guideCategory'), - }, - href: 'https://ovh/com/link/3', - }, - ]; - - const title: string = t('title'); - const description: string = t('description'); + const navigate = useNavigate(); return ( + navigate(ROUTES_URLS.createKeyManagementService) + } moreInfoButtonLabel={t('moreInfoButtonLabel')} moreInfoHref={t('moreInfoButtonLink')} - > - - + > ); } diff --git a/packages/manager/apps/key-management-service/src/pages/onboarding/onboarding-img.png b/packages/manager/apps/key-management-service/src/pages/onboarding/onboarding-img.png index 1ac8d6473c95..68a48f1197ed 100644 Binary files a/packages/manager/apps/key-management-service/src/pages/onboarding/onboarding-img.png and b/packages/manager/apps/key-management-service/src/pages/onboarding/onboarding-img.png differ diff --git a/packages/manager/apps/key-management-service/src/public/translations/key-management-service/onboarding/Messages_fr_FR.json b/packages/manager/apps/key-management-service/src/public/translations/key-management-service/onboarding/Messages_fr_FR.json index 69e16837eca0..0038f6b933d7 100644 --- a/packages/manager/apps/key-management-service/src/public/translations/key-management-service/onboarding/Messages_fr_FR.json +++ b/packages/manager/apps/key-management-service/src/public/translations/key-management-service/onboarding/Messages_fr_FR.json @@ -1,18 +1,8 @@ { - "title": "key-management-service", - "description": "Découvrez des services de stockage managés qui s’appuient sur le système de fichiers OpenZFS. Bénéficiez en quelques clics d’espaces de stockage centralisés pour entreposer ou sauvegarder vos données et fichiers.", - "orderButtonLabel": "Commander un key-management-service", - "orderButtonLink": "/#/dedicated/key-management-service/order", - "moreInfoButtonLabel": "En savoir plus sur key-management-service", - "moreInfoButtonLink": "/#/dedicated/key-management-service/info", - "guideCategory": "Tutoriel", - "guide1Title": "Premiers pas avec un key-management-service", - "guide1Description": "Découvrez comment gérer un NAS-HA depuis l'espace-client OVHcloud", - "guide1Link": "https://help.ovhcloud.com/csm/fr-public-cloud-storage-nas-get-started?id=kb_article_view&sysparm_article=KB0046704", - "guide2Title": "Monter votre NAS via un partage NFS", - "guide2Description": "Découvrez comment monter un NAS via un partage NFS", - "guide2Link": "https://help.ovhcloud.com/csm/fr-public-cloud-storage-nas-nfs?id=kb_article_view&sysparm_article=KB0046742", - "guide3Title": "Monter votre NAS sur Windows Server via CIFS", - "guide3Description": "Découvrez comment monter un NAS sur Windows Server via le protocole CIFS", - "guide3Link": "https://help.ovhcloud.com/csm/fr-public-cloud-storage-nas-cifs?id=kb_article_view&sysparm_article=KB0046672" + "title": "OVHcloud Key Management Service", + "description": "Gardez le contrôle du chiffrement de vos données sensibles.", + "description_secondary": "OVHcloud KMS est le service centralisé de chiffrement entièrement managé pour sécuriser vos données dans vos applications et vos services OVHcloud", + "orderButtonLabel": "Commander un KMS", + "moreInfoButtonLabel": "En savoir plus", + "moreInfoButtonLink": "https://help.ovhcloud.com/csm/fr-documentation-manage-operate?id=kb_browse_cat&kb_id=3d4a8129a884a950f07829d7d5c75243" }