Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: tools on dashboard #715

Open
wants to merge 2 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions .talismanrc
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,8 @@ fileignoreconfig:
checksum: 9c740513497d70e871e4abcad3a9e509ef5b1a0da9db2d0d2d336c19854303b4
- filename: src/app/(private)/(dashboard)/community/communes.json
checksum: f69dbcbfe5e1e7c1bd9340c7bb3d9de9cbc9d4080363e80d8b4da190fb6ae045
- filename: src/app/(private)/(dashboard)/dashboard/DashboardPage.tsx
checksum: 1521b70f1a0bbeee2f889abc46a503e2256e0e675a6ad4ac5cb78671af9c1ae1
- filename: src/app/(private)/(dashboard)/incubators/[id]/info-form/page.tsx
checksum: 1ec9acf039a7d336e710ef7b47c385eb7080293ee2750c2cf99e9056cde7f129
- filename: src/app/(private)/(dashboard)/services/matomo/page.tsx
Expand Down
74 changes: 70 additions & 4 deletions src/app/(private)/(dashboard)/dashboard/DashboardPage.tsx
Original file line number Diff line number Diff line change
@@ -1,21 +1,67 @@
"use client";

"use client"; // due to linkRegistry
import { fr } from "@codegouvfr/react-dsfr";
import { Tile } from "@codegouvfr/react-dsfr/Tile";
import school from "@gouvfr/dsfr/dist/artwork/pictograms/buildings/school.svg";
import mailSend from "@gouvfr/dsfr/dist/artwork/pictograms/digital/mail-send.svg";
import document from "@gouvfr/dsfr/dist/artwork/pictograms/document/document.svg";
import community from "@gouvfr/dsfr/dist/artwork/pictograms/environment/human-cooperation.svg";
import locationFrance from "@gouvfr/dsfr/dist/artwork/pictograms/map/location-france.svg";
import internet from "@gouvfr/dsfr/dist/artwork/pictograms/digital/internet.svg";
import { StaticImageData } from "next/image";

import { SurveyBox } from "@/components/SurveyBox";
import { linkRegistry } from "@/utils/routes/registry";

export interface DashboardPageProps {
surveyCookieValue: string | null;
}

const tools = [
{
title: "Matomo",
description: "Analyse de traffic web",
href: "https://stats.beta.gouv.fr",
},
{
title: "GRIST",
description: "Spreadsheets on steroïds",
href: "https://grist.numerique.gouv.fr",
},
{
title: "VaultWarden",
description: "Gestionnaire de mots de passe",
href: "https://vaultwarden.incubateur.net",
},
{
title: "Visio",
description: "Visio-conférences",
href: "https://visio.numerique.gouv.fr",
},
{
title: "Pad",
description: "Pads partageables",
href: "https://pad.numerique.gouv.fr",
},
{
title: "France Transfert",
description: "Envoi de fichiers sécurisé",
href: "https://francetransfert.numerique.gouv.fr/upload",
},
{
title: "Sentry",
description: "Suivi des exceptions techniques",
href: "https://sentry.incubateur.net",
},
{
title: "UpDown.io",
description: "Monitoring de disponibilité",
href: "https://updown.io/p/8lotm",
},
{
title: "DashLord",
description: "Suivi des métriques techniques",
href: "https://dashlord.incubateur.net",
},
];

export function DashboardPage(props: DashboardPageProps) {
return (
<div className={fr.cx("fr-container", "fr-pb-6w")}>
Expand Down Expand Up @@ -112,6 +158,26 @@ export function DashboardPage(props: DashboardPageProps) {
/>
</div>
</div>
<h2 className={fr.cx("fr-pt-4w")}>Outils</h2>
<div className={fr.cx("fr-grid-row", "fr-grid-row--gutters")}>
{tools.map((tool) => (
<div
key={tool.title}
className={fr.cx("fr-col-12", "fr-col-lg-4")}
>
<Tile
className={fr.cx("fr-tile--sm")}
title={tool.title}
desc={tool.description}
orientation="horizontal"
imageUrl={(internet as StaticImageData).src}
linkProps={{
href: tool.href,
}}
/>
</div>
))}
</div>
</div>
);
}
Loading