diff --git a/packages/frontend/web/src/components/arrow-left.tsx b/packages/frontend/web/src/components/arrow-left.tsx index ef88fae..6ed528b 100644 --- a/packages/frontend/web/src/components/arrow-left.tsx +++ b/packages/frontend/web/src/components/arrow-left.tsx @@ -3,20 +3,18 @@ import { useNavigate } from 'react-router-dom'; export function ArrowLeft() { const navigate = useNavigate(); return ( -
- -
+ ); } diff --git a/packages/frontend/web/src/components/logo-section.tsx b/packages/frontend/web/src/components/logo-section.tsx index f98c6c9..e0cf1b9 100644 --- a/packages/frontend/web/src/components/logo-section.tsx +++ b/packages/frontend/web/src/components/logo-section.tsx @@ -1,17 +1,22 @@ +import { useNavigate } from 'react-router-dom'; + import { useLabel } from '@/contexts/label-context'; import Logo from '../../public/assets/logo.png'; export default function LogoSection() { const { label } = useLabel(); - + const navigate = useNavigate(); return (
Label's logo { + await navigate('/main-menu'); + }} />

{label?.name}

diff --git a/packages/frontend/web/src/pages/artist-hire-profile-page.tsx b/packages/frontend/web/src/pages/artist-hire-profile-page.tsx index 6c51e17..7d89070 100644 --- a/packages/frontend/web/src/pages/artist-hire-profile-page.tsx +++ b/packages/frontend/web/src/pages/artist-hire-profile-page.tsx @@ -1,6 +1,7 @@ import { useCallback, useEffect, useState } from 'react'; import { useParams } from 'react-router-dom'; +import { ArrowLeft } from '@/components/arrow-left'; import ArtistProfileCard from '@/components/artist-profile-card'; import type { ArtistHired } from '../../../../backend/api/src/artists-hired/artists-hired'; @@ -64,17 +65,24 @@ export default function ArtistHirePage() { const isDisabledPrice = price?.price == null || budget < price.price; return ( -
- {artistsHired.map((artist) => ( - - ))} +
+
+ +
+
+
+ {artistsHired.map((artist) => ( + + ))} +
+
); } diff --git a/packages/frontend/web/src/pages/artist-profile-page.tsx b/packages/frontend/web/src/pages/artist-profile-page.tsx index 91ea38c..54d0c58 100644 --- a/packages/frontend/web/src/pages/artist-profile-page.tsx +++ b/packages/frontend/web/src/pages/artist-profile-page.tsx @@ -1,6 +1,7 @@ import { useEffect, useState } from 'react'; import { useParams } from 'react-router-dom'; +import { ArrowLeft } from '@/components/arrow-left'; import ArtistProfileCard from '@/components/artist-profile-card'; import type { Artist } from '../../../../backend/api/src/artists/artists'; @@ -27,10 +28,15 @@ export default function ArtistPage() { }, [id]); return ( -
- {artists.map((artist) => ( - - ))} +
+
+ +
+
+ {artists.map((artist) => ( + + ))} +
); } diff --git a/packages/frontend/web/src/pages/create-album.tsx b/packages/frontend/web/src/pages/create-album.tsx index decd609..2289bc1 100644 --- a/packages/frontend/web/src/pages/create-album.tsx +++ b/packages/frontend/web/src/pages/create-album.tsx @@ -176,77 +176,78 @@ export default function CreateAlbum() { price?.price === null || budget < (price?.price ?? Infinity); return ( -
{ - void handleSubmit(event); - }} - > -
-
-
- -
-

- {'RECORDING A NEW ALBUM'} -

-
-
- -
- {artistsHired.length > 0 ? ( - artistsHired.map((artist) => ( - - )) - ) : ( -

- {'No artist selected'} -

- )} - { - setSelectedArtistId(id); - }} - /> -
-
- + <> +
+
+
+

+ {'RECORDING A NEW ALBUM'} +

+
+
+ { + void handleSubmit(event); + }} + > +
+ +
+ {artistsHired.length > 0 ? ( + artistsHired.map((artist) => ( + + )) + ) : ( +

+ {'No artist selected'} +

+ )} + { + setSelectedArtistId(id); + }} + /> +
+
+ +
-
- {chosenSingles.length > 0 ? ( - chosenSingles.map((single) => ( - { - setSelectedSinglesId((prevIds) => - prevIds.filter((prevId) => prevId !== id), - ); - }} - /> - )) - ) : ( -

- {'No single selected'} -

- )} - { - setSelectedSinglesId((prev) => - prev.includes(id) ? prev : [...prev, id].slice(0, 3), - ); - }} - artistId={selectedArtistId} - /> -
- {/*
+
+ {chosenSingles.length > 0 ? ( + chosenSingles.map((single) => ( + { + setSelectedSinglesId((prevIds) => + prevIds.filter((prevId) => prevId !== id), + ); + }} + /> + )) + ) : ( +

+ {'No single selected'} +

+ )} + { + setSelectedSinglesId((prev) => + prev.includes(id) ? prev : [...prev, id].slice(0, 3), + ); + }} + artistId={selectedArtistId} + /> +
+ {/*
{marketing.length > 0 ? ( marketing.map((campaign) => ( @@ -262,41 +263,42 @@ export default function CreateAlbum() { }} />
*/} - {messageError ? ( -

- {messageError} -

- ) : ( - '' - )} + {messageError ? ( +

+ {messageError} +

+ ) : ( + '' + )} -
- { - await navigate(-1); - }} - > - {'Cancel'} - -
+
{ + await navigate(-1); + }} > - {'Confirm'} + {'Cancel'} - {price ? `${price.price} $` : ''} +
+ + {'Confirm'} + + {price ? `${price.price} $` : ''} +
-
- + + ); } diff --git a/packages/frontend/web/src/pages/create-single.tsx b/packages/frontend/web/src/pages/create-single.tsx index 2843ef1..a884bdf 100644 --- a/packages/frontend/web/src/pages/create-single.tsx +++ b/packages/frontend/web/src/pages/create-single.tsx @@ -146,112 +146,112 @@ export default function CreateSingle() { price?.price === null || budget < (price?.price ?? Infinity); return ( -
-
- {/* Header */} -
-
- -
-

- {' RECORDING A NEW SINGLE'} -

-
+ <> +
+
+
+

+ {' RECORDING A NEW SINGLE'} +

+
+
+ +
+ {/* Header */} - {/* Image */} - note - - {/* Artist */} -
- {artistsHired.length > 0 ? ( - artistsHired.map((artist) => ( - - )) - ) : ( -

- {'No artist selected'} -

- )} - { - setSelectedArtistId(id); - }} + {/* Image */} + note -
- {/* Single name */} -
- -
+ {/* Artist */} +
+ {artistsHired.length > 0 ? ( + artistsHired.map((artist) => ( + + )) + ) : ( +

+ {'No artist selected'} +

+ )} + { + setSelectedArtistId(id); + }} + /> +
+ {/* Single name */} +
+ +
+ {/* Marketing */} +
+ {marketing.length > 0 ? ( + marketing.map((campaign) => ( + + )) + ) : ( +

+ {'No Marketing Campaign selected'} +

+ )} + { + setSelectedMarketingId(id); + }} + /> +
- {/* Marketing */} -
- {marketing.length > 0 ? ( - marketing.map((campaign) => ( - - )) - ) : ( -

- {'No Marketing Campaign selected'} + {messageError ? ( +

+ {messageError}

+ ) : ( + '' )} - { - setSelectedMarketingId(id); - }} - /> -
- {messageError ? ( -

- {messageError} -

- ) : ( - '' - )} - - {/* Buttons */} -
- { - await navigate(-1); - }} - > - {'Cancel'} - -
+ {/* Buttons */} +
{ + await navigate(-1); + }} > - {'Confirm'} + {'Cancel'} - {price ? `${price.price} $` : ''} +
+ + {'Confirm'} + + {price ? `${price.price} $` : ''} +
-
- + + ); }