1
0
Fork 0
freesewing/sites/shared/components/designs/design-picker.mjs

26 lines
714 B
JavaScript
Raw Normal View History

2023-05-01 18:27:06 +02:00
import { useState } from 'react'
import { designs } from 'shared/config/designs.mjs'
import { Design, ns as designNs } from 'shared/components/designs/design.mjs'
2023-05-05 19:56:51 +02:00
import { useTranslation } from 'next-i18next'
2023-05-01 18:27:06 +02:00
export const ns = designNs
export const DesignPicker = () => {
2023-05-05 19:56:51 +02:00
const { t } = useTranslation('designs')
2023-05-01 18:27:06 +02:00
const [list, setList] = useState(Object.keys(designs))
2023-05-05 19:56:51 +02:00
// Need to sort designs by their translated title
const translated = {}
for (const d of list) translated[t(`${d}.t`)] = d
return (
<div className="flex flex-row flex-wrap gap-2">
{Object.keys(translated)
.sort()
.map((d) => (
2023-05-19 16:31:28 +02:00
<Design name={translated[d]} key={d} />
2023-05-05 19:56:51 +02:00
))}
</div>
)
2023-05-01 18:27:06 +02:00
}