diff --git a/frontend/src/components/CardsContainer.tsx b/frontend/src/components/CardsContainer.tsx index 79f45fb..e2a9dbd 100644 --- a/frontend/src/components/CardsContainer.tsx +++ b/frontend/src/components/CardsContainer.tsx @@ -1,4 +1,4 @@ -import FeilCard from "./FeilCard"; +import { FeilKort } from "./FeilCard"; import { Feilmelding } from "../interface.ts"; interface ICardsContainer { @@ -10,19 +10,19 @@ interface ICardsContainer { * @returns grid med feilmeldinger */ const CardsContainer = (props: ICardsContainer) => { + return ( -
-
+
{props.feilmeldinger.map((feilMelding) => ( - - ))} + + )) + }
-
); }; diff --git a/frontend/src/components/FeilCard.tsx b/frontend/src/components/FeilCard.tsx index 45552a1..d71eded 100644 --- a/frontend/src/components/FeilCard.tsx +++ b/frontend/src/components/FeilCard.tsx @@ -1,12 +1,79 @@ import "@navikt/ds-css"; -import { ExpansionCard, Tag } from "@navikt/ds-react"; +import { Heading, Modal, Tag } from "@navikt/ds-react"; import { IFeilmelding } from "../interface"; +import FeilModal from "./FeilModal"; +import { useEffect, useState } from "react"; + +/** + * En konteiner som inneholder all informasjon og funksjonalitet for å vise og interagere med en feilmelding. + * @param tittel + * @param beskrivelse + * @param dato + * @returns JSX komponent som beskriver innholdet i feilmeldinger. + */ +interface IFeilKort extends IFeilmelding { + key: number +} +export const FeilKort = (props: IFeilKort) => { + const [visModal, setVisModal] = useState(false) + + useEffect(() => { + Modal.setAppElement(document.getElementById('root')); + }, []); + + return( + <> +
setVisModal(true)} + > + +
+ + +
+ {/* TODO: HER KOMMER CONTENT */} +
+ + ) +} + +/** + * FeilkortHeader er komponent som beskriver ikke-sensitiv informasjon om feilmeldingen og vises for alle på forsiden. + * FeilkortHeaderen er en del av FeilKort-komponenten og FullvisningsKort-komponenten. + * Midlertidig implementerer komponentet @requires IFeilmelding for props, men dette må endres når IFeilmelding utvides i fremtiden for støtte av flere typer feilmeldinger. + * @param tittel + * @param beskrivelse + * @param haster + * @param dato + * @returns JSX komponent som skal vise nødvendig informasjon for å forstå en feil. + */ +export const FeilkortHeader = (props: IFeilmelding) => { + return( +
+
+ {props.tittel} +

{props.dato.toDateString()}

+

{props.beskrivelse}

+
+ +
+ ) +} + interface TagBarInterface { haster: boolean } - -//typen på status er veldig wack heheheh, må fjerne any etterhvert men String fungerer ikke +/** + * Komponentet er en bar (vanrett linje) som inneholder to statusflagg: "arbeidsstatus" og "Haster". + * Komponentet er en del av FeilKortHeader + * @param haster + */ const TagBar = (props: TagBarInterface) => { return (
@@ -16,21 +83,5 @@ const TagBar = (props: TagBarInterface) => { ) } -const FeilCard = (props: IFeilmelding) => { - return ( - - - {props.tittel} - - {props.beskrivelse} - - - - - Hællæ - - - ) -} -export default FeilCard; + diff --git a/frontend/src/components/FeilModal.tsx b/frontend/src/components/FeilModal.tsx new file mode 100644 index 0000000..9901257 --- /dev/null +++ b/frontend/src/components/FeilModal.tsx @@ -0,0 +1,26 @@ +import { Modal } from "@navikt/ds-react" +import { Dispatch, SetStateAction } from "react" + + +interface modalInterface { + open: boolean + setOpen: Dispatch> + children: React.ReactNode +} + +const FeilModal = (props: modalInterface) => { + return( + props.setOpen(false)} + aria-labelledby="modal-heading" + > + + {props.children} + + + ) +} +export default FeilModal; \ No newline at end of file