diff --git a/src/app/(static)/film/animate/page.tsx b/src/app/(static)/film/animate/page.tsx index ef241f3f..c98d4beb 100644 --- a/src/app/(static)/film/animate/page.tsx +++ b/src/app/(static)/film/animate/page.tsx @@ -22,13 +22,14 @@ export default function FilmPage() { contentMain={
-
+
Film Simulation:
diff --git a/src/app/layout.tsx b/src/app/layout.tsx index 129dd900..68a1d36d 100644 --- a/src/app/layout.tsx +++ b/src/app/layout.tsx @@ -13,7 +13,7 @@ import '../site/globals.css'; const ibmPlexMono = IBM_Plex_Mono({ subsets: ['latin'], - weight: ['400', '700'], + weight: ['400', '500', '700'], variable: '--font-ibm-plex-mono', }); diff --git a/src/components/AdminChildPage.tsx b/src/components/AdminChildPage.tsx index 57ee3a85..2b01af33 100644 --- a/src/components/AdminChildPage.tsx +++ b/src/components/AdminChildPage.tsx @@ -3,6 +3,7 @@ import Link from 'next/link'; import { FiArrowLeft } from 'react-icons/fi'; import SiteGrid from './SiteGrid'; import { cc } from '@/utility/css'; +import Badge from './Badge'; function AdminChildPage({ backPath, @@ -41,12 +42,9 @@ function AdminChildPage({ {breadcrumb && <> / - + {breadcrumb} - + }
{accessory && diff --git a/src/components/Badge.tsx b/src/components/Badge.tsx new file mode 100644 index 00000000..ead474f3 --- /dev/null +++ b/src/components/Badge.tsx @@ -0,0 +1,34 @@ +import { cc } from '@/utility/css'; + +export default function Badge({ + children, + type = 'primary', + uppercase, +}: { + children: React.ReactNode + type?: 'primary' | 'secondary' | 'text-only' + uppercase?: boolean +}) { + const baseStyles = () => { + switch (type) { + case 'primary': return cc( + 'px-2 py-0.5 rounded-md bg-gray-100 dark:bg-gray-900', + 'border border-gray-200 dark:border-gray-800' + ); + case 'secondary': return cc( + 'px-1 py-1 leading-none rounded-md', + 'bg-gray-100 dark:bg-gray-800/75', + 'text-medium', + 'font-medium text-[0.7rem]', + ); + } + }; + return ( + + {children} + + ); +} diff --git a/src/photo/PhotoEditPageClient.tsx b/src/photo/PhotoEditPageClient.tsx index 225c4da8..636f620b 100644 --- a/src/photo/PhotoEditPageClient.tsx +++ b/src/photo/PhotoEditPageClient.tsx @@ -39,7 +39,9 @@ export default function PhotoEditPageClient({
} + icon={} > EXIF diff --git a/src/photo/PhotoLarge.tsx b/src/photo/PhotoLarge.tsx index 146bc435..93676ca9 100644 --- a/src/photo/PhotoLarge.tsx +++ b/src/photo/PhotoLarge.tsx @@ -75,21 +75,23 @@ export default function PhotoLarge({ }
{showCamera && photoHasCameraData(photo) && +
} + /> + {photo.filmSimulation && +
+ +
} +
} )} {renderMiniGrid(<> {photoHasExifData(photo) &&
    - {photo.filmSimulation && -
  • - -
  • }
  • {photo.focalLengthFormatted} {photo.focalLengthIn35MmFormatFormatted && diff --git a/src/vendors/fujifilm/PhotoFujifilmSimulation.tsx b/src/vendors/fujifilm/PhotoFujifilmSimulation.tsx index 8f12a517..6d713cf0 100644 --- a/src/vendors/fujifilm/PhotoFujifilmSimulation.tsx +++ b/src/vendors/fujifilm/PhotoFujifilmSimulation.tsx @@ -1,39 +1,39 @@ -/* eslint-disable max-len */ import { cc } from '@/utility/css'; import { FujifilmSimulation, getLabelForFilmSimulation, } from '@/vendors/fujifilm'; import PhotoFujifilmSimulationIcon from './PhotoFujifilmSimulationIcon'; +import Badge from '@/components/Badge'; export default function PhotoFujifilmSimulation({ simulation, showIconFirst, + badged = true, }: { simulation: FujifilmSimulation showIconFirst?: boolean + badged?: boolean }) { const { small, medium, large } = getLabelForFilmSimulation(simulation); + + const renderContent = () => <> + + {small} + + + {medium} + + ; + return ( - - {small} - - - {medium} - + {badged + ? {renderContent()} + : {renderContent()}}