diff --git a/packages/freesewing.org/components/design.js b/packages/freesewing.org/components/design.js index 5be64724a40..836a313fca0 100644 --- a/packages/freesewing.org/components/design.js +++ b/packages/freesewing.org/components/design.js @@ -29,13 +29,6 @@ const Design = ({ design }) => { code="Anonymous", difficulty=3, } = configs[design] - const designer = configs[design].design || "Anonymous" - const people = new Set() - for (const contrib of ['design', 'code']) { - if (Array.isArray(configs[design][contrib])) { - for (const person of configs[design][contrib]) people.add(person) - } else people.add(configs[design][contrib]) - } const [examples, setExamples] = useState([]) @@ -45,7 +38,7 @@ const Design = ({ design }) => { `&_where[_or][0][design1_eq]=${design}` + `&_where[_or][1][design2_eq]=${design}` + `&_where[_or][2][design3_eq]=${design}` + - `&_limit=6` + `&_limit=5` await fetch(url) .then(response => response.json()) .then(data => setExamples(data.map(post => ({ @@ -59,8 +52,7 @@ const Design = ({ design }) => { return (
{ text-center overflow-clip relative - `} style={{ - backgroundImage: `url('/img/designs/${design}.png')`, - backgroundSize: 'contain', - backgroundPosition: '50% 50%', - backgroundRepeat: 'no-repeat', - }}> + `} + > {/* Link over the entire card */} @@ -86,21 +74,20 @@ const Design = ({ design }) => {
- {/* People who did the Design/Code */} -
- - {[...people].map(person => person).join(' / ')} - -
-
-
{design} +
-

{t(`${design}.t`)}

-
{t(`${design}.d`)}
-
+
+

{t(`${design}.t`)}

+
{t(`${design}.d`)}
+
+
diff --git a/packages/freesewing.org/pages/designs/index.js b/packages/freesewing.org/pages/designs/index.js index 3f12fcbe48f..d6b554ac815 100644 --- a/packages/freesewing.org/pages/designs/index.js +++ b/packages/freesewing.org/pages/designs/index.js @@ -2,6 +2,7 @@ import Page from 'site/components/wrappers/page.js' import useApp from 'site/hooks/useApp.js' import Popout from 'shared/components/popout.js' import Link from 'next/link' +import PageLink from 'shared/components/page-link' import { serverSideTranslations } from 'next-i18next/serverSideTranslations' import { useTranslation } from 'next-i18next' import designs from 'shared/config/designs.json' @@ -18,11 +19,20 @@ const DesignsPage = (props) => { ...designs.accessories, ...designs.blocks, ...designs.garments, - ] + ].sort() return ( -
+
+
    + {allDesigns.map(design => ( +
  • + +
  • + ))} +
+
+
{allDesigns.map(design => )}
diff --git a/packages/freesewing.org/pages/showcase/index.js b/packages/freesewing.org/pages/showcase/index.js index 438eae381cf..9bbd15f5c90 100644 --- a/packages/freesewing.org/pages/showcase/index.js +++ b/packages/freesewing.org/pages/showcase/index.js @@ -13,7 +13,7 @@ export const PreviewTile = ({ img, slug, title }) => ( style={{ backgroundImage: `url(${img})`, backgroundSize: 'cover' }} className={` rounded-full inline-block border-base-100 shrink-0 - w-42 h-42 -ml-8 border-8 + w-40 h-40 -ml-8 border-8 md:w-56 md:h-56 md:-ml-12 theme-gradient `} @@ -30,9 +30,11 @@ export const PreviewTile = ({ img, slug, title }) => ( const DesignPosts = ({ design, posts }) => { const { t } = useTranslation(['patterns']) return ( -
-

- +
+

+ + {t(`${design}.t`)} +

{ return ( +
+
    + {Object.keys(designs).sort().map(design => ( +
  • + +
  • + ))} +
+
svg(color, "M0,0 L0,2 L 5,7 L 10,2 L10,0 z", 1) const bottomSvg = (color) => svg(color, "M0,8 L0,6 L 5,1 L 10,6 L10,8 z", -1) const style = { backgroundRepeat: 'repeat-x' } -const PinkedRibbon = ({ top='base', bottom='dark', loading=false, theme }) => { +const PinkedRibbon = ({ top='base', bottom='dark', loading=false, theme='light' }) => { if (top === 'base') top = themes[theme].base else if (top === 'dark') top = themes[theme].dark