create a lily design
This commit is contained in:
parent
02a0328cb1
commit
c990c337cb
24 changed files with 502 additions and 50 deletions
|
@ -554,14 +554,25 @@
|
|||
"techniques": []
|
||||
},
|
||||
"naomiwu": {
|
||||
"description": "A FreeSewing pattern for Naomi Wu's signature cargo skirt",
|
||||
"code": "Joost De Cock",
|
||||
"design": ["Naomi Wu", "Joost De Cock"],
|
||||
"description": "A FreeSewing pattern for Naomi Wu's signature cargo skirt",
|
||||
"design": [
|
||||
"Naomi Wu",
|
||||
"Joost De Cock"
|
||||
],
|
||||
"difficulty": 3,
|
||||
"lab": false,
|
||||
"org": false,
|
||||
"tags": ["bottoms", "skirts"],
|
||||
"techniques": ["button", "hem", "pocket", "lining"]
|
||||
"tags": [
|
||||
"bottoms",
|
||||
"skirts"
|
||||
],
|
||||
"techniques": [
|
||||
"button",
|
||||
"hem",
|
||||
"pocket",
|
||||
"lining"
|
||||
]
|
||||
},
|
||||
"noble": {
|
||||
"code": "Wouter Van Wageningen",
|
||||
|
@ -976,5 +987,19 @@
|
|||
"hem",
|
||||
"button"
|
||||
]
|
||||
},
|
||||
"lily": {
|
||||
"code": "Coder name",
|
||||
"description": "A FreeSewing pattern that needs a description",
|
||||
"design": "Designer name",
|
||||
"difficulty": 1,
|
||||
"lab": true,
|
||||
"org": false,
|
||||
"tags": [
|
||||
"tagname"
|
||||
],
|
||||
"techniques": [
|
||||
"techname"
|
||||
]
|
||||
}
|
||||
}
|
17
designs/lily/CHANGELOG.md
Normal file
17
designs/lily/CHANGELOG.md
Normal file
|
@ -0,0 +1,17 @@
|
|||
# Change log for: @freesewing/lily
|
||||
|
||||
|
||||
## 3.0.0 (2023-09-30)
|
||||
|
||||
### Changed
|
||||
|
||||
- All FreeSewing pacakges are now ESM only.
|
||||
- All FreeSewing pacakges now use named exports.
|
||||
- Dropped support for NodeJS 14. NodeJS 18 (LTS/hydrogen) or more recent is now required.
|
||||
|
||||
|
||||
This is the **initial release**, and the start of this change log.
|
||||
|
||||
> Prior to version 2, FreeSewing was not a JavaScript project.
|
||||
> As such, that history is out of scope for this change log.
|
||||
|
162
designs/lily/README.md
Normal file
162
designs/lily/README.md
Normal file
|
@ -0,0 +1,162 @@
|
|||
<p align='center'><a
|
||||
href="https://www.npmjs.com/package/@freesewing/lily"
|
||||
title="@freesewing/lily on NPM"
|
||||
><img src="https://img.shields.io/npm/v/@freesewing/lily.svg"
|
||||
alt="@freesewing/lily on NPM"/>
|
||||
</a><a
|
||||
href="https://opensource.org/licenses/MIT"
|
||||
title="License: MIT"
|
||||
><img src="https://img.shields.io/npm/l/@freesewing/lily.svg?label=License"
|
||||
alt="License: MIT"/>
|
||||
</a><a
|
||||
href="https://deepscan.io/dashboard#view=project&tid=2114&pid=2993&bid=23256"
|
||||
title="Code quality on DeepScan"
|
||||
><img src="https://deepscan.io/api/teams/2114/projects/2993/branches/23256/badge/grade.svg"
|
||||
alt="Code quality on DeepScan"/>
|
||||
</a><a
|
||||
href="https://github.com/freesewing/freesewing/issues?q=is%3Aissue+is%3Aopen+label%3Apkg%3Alily"
|
||||
title="Open issues tagged pkg:lily"
|
||||
><img src="https://img.shields.io/github/issues/freesewing/freesewing/pkg:lily.svg?label=Issues"
|
||||
alt="Open issues tagged pkg:lily"/>
|
||||
</a><a
|
||||
href="#contributors-"
|
||||
title="All Contributors"
|
||||
><img src="https://img.shields.io/badge/all_contributors-124-pink.svg"
|
||||
alt="All Contributors"/>
|
||||
</a></p><p align='center'><a
|
||||
href="https://twitter.com/freesewing_org"
|
||||
title="Follow @freesewing_org on Twitter"
|
||||
><img src="https://img.shields.io/badge/%F3%A0%80%A0-Follow%20us-blue.svg?logo=twitter&logoColor=white&logoWidth=15"
|
||||
alt="Follow @freesewing_org on Twitter"/>
|
||||
</a><a
|
||||
href="https://chat.freesewing.org"
|
||||
title="Chat with us on Discord"
|
||||
><img src="https://img.shields.io/discord/698854858052075530?label=Chat%20on%20Discord"
|
||||
alt="Chat with us on Discord"/>
|
||||
</a><a
|
||||
href="https://freesewing.org/patrons/join"
|
||||
title="Become a FreeSewing Patron"
|
||||
><img src="https://img.shields.io/badge/%F3%A0%80%A0-Support%20us-blueviolet.svg?logo=cash-app&logoColor=white&logoWidth=15"
|
||||
alt="Become a FreeSewing Patron"/>
|
||||
</a><a
|
||||
href="https://instagram.com/freesewing_org"
|
||||
title="Follow @freesewing_org on Twitter"
|
||||
><img src="https://img.shields.io/badge/%F3%A0%80%A0-Follow%20us-E4405F.svg?logo=instagram&logoColor=white&logoWidth=15"
|
||||
alt="Follow @freesewing_org on Twitter"/>
|
||||
</a></p>
|
||||
|
||||
# @freesewing/lily
|
||||
|
||||
A FreeSewing pattern that needs a description
|
||||
|
||||
|
||||
|
||||
# FreeSewing
|
||||
|
||||
> [!TIP]
|
||||
>#### Support FreeSewing: Become a patron, or make a one-time donation 🥰
|
||||
>
|
||||
> FreeSewing is an open source project maintained by Joost De Cock and financially supported by the FreeSewing patrons.
|
||||
>
|
||||
> If you feel FreeSewing is worthwhile, and you can spend a few coins without
|
||||
hardship, then you should [join us and become a patron](https://freesewing.org/community/join).
|
||||
|
||||
## What am I looking at? 🤔
|
||||
|
||||
This repository is the FreeSewing *monorepo* holding all FreeSewing's websites, documentation, designs, plugins, and other NPM packages.
|
||||
|
||||
This folder holds: @freesewing/lily
|
||||
|
||||
If you're not entirely sure what to do or how to start, type this command:
|
||||
|
||||
```
|
||||
npm run tips
|
||||
```
|
||||
|
||||
> [!NOTE]
|
||||
> If you don't want to set up a dev environment, you can run it in your browser:
|
||||
>
|
||||
> [](https://gitpod.io/#https://github.com/freesewing/freesewing)
|
||||
>
|
||||
> We recommend that you fork our repository and then
|
||||
> put `gitpod.io/#<entire-url-of-your-fork` into a browser
|
||||
> to start up a browser-based dev environment of your own.
|
||||
|
||||
## About FreeSewing 💀
|
||||
|
||||
Where the world of makers and developers collide, that's where you'll find FreeSewing.
|
||||
|
||||
If you're a maker, checkout [freesewing.org](https://freesewing.org/) where you can generate
|
||||
sewing patterns adapted to your measurements.
|
||||
|
||||
If you're a developer, the FreeSewing documentation lives at [freesewing.dev](https://freesewing.dev/).
|
||||
The FreeSewing [core library](https://freesewing.dev/reference/api/) is a *batteries-included* toolbox
|
||||
for parametric design of sewing patterns. But FreeSewing also provides a range
|
||||
of [plugins](https://freesewing.dev/reference/plugins/) that further extend the
|
||||
functionality of the platform.
|
||||
|
||||
If you have NodeJS installed, you can try it right now by running:
|
||||
|
||||
```bash
|
||||
npx @freesewing/new-design
|
||||
```
|
||||
|
||||
Getting started guides are available for:
|
||||
- [Linux](https://freesewing.dev/tutorials/getting-started-linux/)
|
||||
- [MacOS](https://freesewing.dev/tutorials/getting-started-mac/)
|
||||
- [Windows](https://freesewing.dev/tutorials/getting-started-windows/)
|
||||
|
||||
The [pattern design tutorial](https://freesewing.dev/tutorials/pattern-design/) will
|
||||
show you how to create your first parametric design.
|
||||
|
||||
## Getting started ⚡
|
||||
|
||||
To get started with FreeSewing, you can spin up our development environment with:
|
||||
|
||||
```bash
|
||||
npx @freesewing/new-design
|
||||
```
|
||||
|
||||
To work with FreeSewing's monorepo, you'll need [NodeJS v18](https://nodejs.org), [lerna](https://lerna.js.org/) and [yarn](https://yarnpkg.com/) on your system.
|
||||
Once you have those, clone (or fork) this repo and run `yarn kickstart`:
|
||||
|
||||
```bash
|
||||
git clone git@github.com:freesewing/freesewing.git
|
||||
cd freesewing
|
||||
yarn kickstart
|
||||
```
|
||||
|
||||
## Links 👩💻
|
||||
|
||||
**Official channels**
|
||||
|
||||
- 💻 Makers website: [FreeSewing.org](https://freesewing.org)
|
||||
- 💻 Developers website: [FreeSewing.dev](https://freesewing.dev)
|
||||
- ✅ [Support](https://github.com/freesewing/freesewing/issues/new/choose),
|
||||
[Issues](https://github.com/freesewing/freesewing/issues) &
|
||||
[Discussions](https://github.com/freesewing/freesewing/discussions) on
|
||||
[GitHub](https://github.com/freesewing/freesewing)
|
||||
|
||||
**Social media**
|
||||
|
||||
- 🐦 Twitter: [@freesewing_org](https://twitter.com/freesewing_org)
|
||||
- 📷 Instagram: [@freesewing_org](https://instagram.com/freesewing_org)
|
||||
|
||||
**Places the FreeSewing community hangs out**
|
||||
|
||||
- 💬 [Discord](https://discord.freesewing.org/)
|
||||
- 💬 [Facebook](https://www.facebook.com/groups/627769821272714/)
|
||||
- 💬 [Reddit](https://www.reddit.com/r/freesewing/)
|
||||
|
||||
## License: MIT 🤓
|
||||
|
||||
© [Joost De Cock](https://github.com/joostdecock).
|
||||
See [the license file](https://github.com/freesewing/freesewing/blob/develop/LICENSE) for details.
|
||||
|
||||
## Where to get help 🤯
|
||||
|
||||
For [Support](https://github.com/freesewing/freesewing/issues/new/choose),
|
||||
please use the [Issues](https://github.com/freesewing/freesewing/issues) &
|
||||
[Discussions](https://github.com/freesewing/freesewing/discussions) on
|
||||
[GitHub](https://github.com/freesewing/freesewing).
|
||||
|
35
designs/lily/build.mjs
Normal file
35
designs/lily/build.mjs
Normal file
|
@ -0,0 +1,35 @@
|
|||
/* This script will build the package with esbuild */
|
||||
import esbuild from 'esbuild'
|
||||
import pkg from './package.json' assert { type: 'json' }
|
||||
|
||||
// Create banner based on package info
|
||||
const banner = `/**
|
||||
* ${pkg.name} | v${pkg.version}
|
||||
* ${pkg.description}
|
||||
* (c) ${new Date().getFullYear()} ${pkg.author}
|
||||
* @license ${pkg.license}
|
||||
*/`
|
||||
|
||||
// Shared esbuild options
|
||||
const options = {
|
||||
banner: { js: banner },
|
||||
bundle: true,
|
||||
entryPoints: ['src/index.mjs'],
|
||||
format: 'esm',
|
||||
outfile: 'dist/index.mjs',
|
||||
external: ['@freesewing'],
|
||||
metafile: process.env.VERBOSE ? true : false,
|
||||
minify: process.env.NO_MINIFY ? false : true,
|
||||
sourcemap: true,
|
||||
}
|
||||
|
||||
// Let esbuild generate the build
|
||||
const build = async () => {
|
||||
const result = await esbuild.build(options).catch(() => process.exit(1))
|
||||
|
||||
if (process.env.VERBOSE) {
|
||||
const info = await esbuild.analyzeMetafile(result.metafile)
|
||||
console.log(info)
|
||||
}
|
||||
}
|
||||
build()
|
4
designs/lily/data.mjs
Normal file
4
designs/lily/data.mjs
Normal file
|
@ -0,0 +1,4 @@
|
|||
// This file is auto-generated | All changes you make will be overwritten.
|
||||
export const name = '@freesewing/lily'
|
||||
export const version = '3.2.0'
|
||||
export const data = { name, version }
|
7
designs/lily/i18n/de.json
Normal file
7
designs/lily/i18n/de.json
Normal file
|
@ -0,0 +1,7 @@
|
|||
{
|
||||
"t": "Lily",
|
||||
"d": "A FreeSewing pattern that needs a description",
|
||||
"p": { },
|
||||
"s": { },
|
||||
"o": { }
|
||||
}
|
7
designs/lily/i18n/en.json
Normal file
7
designs/lily/i18n/en.json
Normal file
|
@ -0,0 +1,7 @@
|
|||
{
|
||||
"t": "Lily",
|
||||
"d": "A FreeSewing pattern that needs a description",
|
||||
"p": { },
|
||||
"s": { },
|
||||
"o": { }
|
||||
}
|
7
designs/lily/i18n/es.json
Normal file
7
designs/lily/i18n/es.json
Normal file
|
@ -0,0 +1,7 @@
|
|||
{
|
||||
"t": "Lily",
|
||||
"d": "A FreeSewing pattern that needs a description",
|
||||
"p": { },
|
||||
"s": { },
|
||||
"o": { }
|
||||
}
|
7
designs/lily/i18n/fr.json
Normal file
7
designs/lily/i18n/fr.json
Normal file
|
@ -0,0 +1,7 @@
|
|||
{
|
||||
"t": "Lily",
|
||||
"d": "A FreeSewing pattern that needs a description",
|
||||
"p": { },
|
||||
"s": { },
|
||||
"o": { }
|
||||
}
|
8
designs/lily/i18n/index.mjs
Normal file
8
designs/lily/i18n/index.mjs
Normal file
|
@ -0,0 +1,8 @@
|
|||
import en from './en.json' assert { type: 'json' }
|
||||
import de from './de.json' assert { type: 'json' }
|
||||
import es from './es.json' assert { type: 'json' }
|
||||
import fr from './fr.json' assert { type: 'json' }
|
||||
import nl from './nl.json' assert { type: 'json' }
|
||||
import uk from './uk.json' assert { type: 'json' }
|
||||
|
||||
export const i18n = { en, de, es, fr, nl, uk }
|
7
designs/lily/i18n/nl.json
Normal file
7
designs/lily/i18n/nl.json
Normal file
|
@ -0,0 +1,7 @@
|
|||
{
|
||||
"t": "Lily",
|
||||
"d": "A FreeSewing pattern that needs a description",
|
||||
"p": { },
|
||||
"s": { },
|
||||
"o": { }
|
||||
}
|
7
designs/lily/i18n/uk.json
Normal file
7
designs/lily/i18n/uk.json
Normal file
|
@ -0,0 +1,7 @@
|
|||
{
|
||||
"t": "Lily",
|
||||
"d": "A FreeSewing pattern that needs a description",
|
||||
"p": { },
|
||||
"s": { },
|
||||
"o": { }
|
||||
}
|
72
designs/lily/package.json
Normal file
72
designs/lily/package.json
Normal file
|
@ -0,0 +1,72 @@
|
|||
{
|
||||
"name": "@freesewing/lily",
|
||||
"version": "3.2.0",
|
||||
"description": "A FreeSewing pattern that needs a description",
|
||||
"author": "Joost De Cock <joost@joost.at> (https://github.com/joostdecock)",
|
||||
"homepage": "https://freesewing.org/",
|
||||
"repository": "github:freesewing/freesewing",
|
||||
"license": "MIT",
|
||||
"bugs": {
|
||||
"url": "https://github.com/freesewing/freesewing/issues"
|
||||
},
|
||||
"funding": {
|
||||
"type": "individual",
|
||||
"url": "https://freesewing.org/patrons/join"
|
||||
},
|
||||
"keywords": [
|
||||
"freesewing",
|
||||
"design",
|
||||
"diy",
|
||||
"fashion",
|
||||
"made to measure",
|
||||
"parametric design",
|
||||
"pattern",
|
||||
"sewing",
|
||||
"sewing pattern"
|
||||
],
|
||||
"type": "module",
|
||||
"module": "dist/index.mjs",
|
||||
"exports": {
|
||||
".": {
|
||||
"internal": "./src/index.mjs",
|
||||
"default": "./dist/index.mjs"
|
||||
}
|
||||
},
|
||||
"scripts": {
|
||||
"build": "node build.mjs",
|
||||
"build:all": "yarn build",
|
||||
"clean": "rimraf dist",
|
||||
"mbuild": "NO_MINIFY=1 node build.mjs",
|
||||
"symlink": "mkdir -p ./node_modules/@freesewing && cd ./node_modules/@freesewing && ln -s -f ../../../* . && cd -",
|
||||
"test": "npx mocha tests/*.test.mjs",
|
||||
"vbuild": "VERBOSE=1 node build.mjs",
|
||||
"lab": "cd ../../sites/lab && yarn start",
|
||||
"tips": "node ../../scripts/help.mjs",
|
||||
"lint": "npx eslint 'src/**' 'tests/*.mjs'",
|
||||
"prettier": "npx prettier --write 'src/*.mjs' 'tests/*.mjs'",
|
||||
"testci": "NODE_OPTIONS=\"--conditions=internal\" npx mocha tests/*.test.mjs --reporter ../../tests/reporters/terse.js",
|
||||
"wbuild": "node build.mjs",
|
||||
"wbuild:all": "yarn wbuild"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"@freesewing/core": "3.2.0"
|
||||
},
|
||||
"dependencies": {},
|
||||
"devDependencies": {
|
||||
"mocha": "10.2.0",
|
||||
"chai": "5.0.3",
|
||||
"@freesewing/models": "3.2.0",
|
||||
"@freesewing/plugin-timing": "3.2.0"
|
||||
},
|
||||
"files": [
|
||||
"dist/*",
|
||||
"README.md"
|
||||
],
|
||||
"publishConfig": {
|
||||
"access": "public",
|
||||
"tag": "latest"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">= 18.17.0 <22"
|
||||
}
|
||||
}
|
47
designs/lily/src/box.mjs
Normal file
47
designs/lily/src/box.mjs
Normal file
|
@ -0,0 +1,47 @@
|
|||
function draftBox({ options, Point, Path, points, paths, Snippet, snippets, sa, macro, part }) {
|
||||
const w = 500 * options.size
|
||||
points.topLeft = new Point(0, 0)
|
||||
points.topRight = new Point(w, 0)
|
||||
points.bottomLeft = new Point(0, w / 2)
|
||||
points.bottomRight = new Point(w, w / 2)
|
||||
|
||||
paths.seam = new Path()
|
||||
.move(points.topLeft)
|
||||
.line(points.bottomLeft)
|
||||
.line(points.bottomRight)
|
||||
.line(points.topRight)
|
||||
.line(points.topLeft)
|
||||
.close()
|
||||
.attr('class', 'fabric')
|
||||
|
||||
points.logo = points.topLeft.shiftFractionTowards(points.bottomRight, 0.5)
|
||||
snippets.logo = new Snippet('logo', points.logo)
|
||||
points.text = points.logo.shift(-90, w / 8).addText('hello', 'center')
|
||||
|
||||
if (sa) {
|
||||
paths.sa = paths.seam.offset(sa).addClass('fabric sa')
|
||||
}
|
||||
|
||||
macro('hd', {
|
||||
id: 'hWidth',
|
||||
from: points.bottomLeft,
|
||||
to: points.bottomRight,
|
||||
y: points.bottomLeft.y + sa + 15,
|
||||
})
|
||||
macro('vd', {
|
||||
id: 'vHeight',
|
||||
from: points.bottomRight,
|
||||
to: points.topRight,
|
||||
x: points.topRight.x + sa + 15,
|
||||
})
|
||||
|
||||
return part
|
||||
}
|
||||
|
||||
export const box = {
|
||||
name: 'box',
|
||||
options: {
|
||||
size: { pct: 50, min: 10, max: 100, menu: 'fit' },
|
||||
},
|
||||
draft: draftBox,
|
||||
}
|
16
designs/lily/src/index.mjs
Normal file
16
designs/lily/src/index.mjs
Normal file
|
@ -0,0 +1,16 @@
|
|||
//
|
||||
|
||||
import { Design } from '@freesewing/core'
|
||||
import { i18n } from '../i18n/index.mjs'
|
||||
import { data } from '../data.mjs'
|
||||
// Parts
|
||||
import { box } from './box.mjs'
|
||||
|
||||
// Create new design
|
||||
const Lily = new Design({
|
||||
data,
|
||||
parts: [box],
|
||||
})
|
||||
|
||||
// Named exports
|
||||
export { box, i18n, Lily }
|
20
designs/lily/tests/shared.test.mjs
Normal file
20
designs/lily/tests/shared.test.mjs
Normal file
|
@ -0,0 +1,20 @@
|
|||
// This file is auto-generated | Any changes you make will be overwritten.
|
||||
import { Lily, i18n } from '../src/index.mjs'
|
||||
|
||||
// Shared tests
|
||||
import { testPatternConfig } from '../../../tests/designs/config.mjs'
|
||||
import { testPatternI18n } from '../../../tests/designs/i18n.mjs'
|
||||
import { testPatternDrafting } from '../../../tests/designs/drafting.mjs'
|
||||
import { testPatternSampling } from '../../../tests/designs/sampling.mjs'
|
||||
|
||||
// Test config
|
||||
testPatternConfig(Lily)
|
||||
|
||||
// Test translation
|
||||
testPatternI18n(Lily, i18n)
|
||||
|
||||
// Test drafting - Change the second parameter to `true` to log errors
|
||||
testPatternDrafting(Lily, false)
|
||||
|
||||
// Test sampling - Change the second parameter to `true` to log errors
|
||||
testPatternSampling(Lily, false)
|
|
@ -28,12 +28,12 @@
|
|||
},
|
||||
"peerDependencies": {},
|
||||
"dependencies": {
|
||||
"@aws-sdk/client-sesv2": "3.525.0",
|
||||
"@prisma/client": "5.10.2",
|
||||
"@aws-sdk/client-sesv2": "3.504.0",
|
||||
"@prisma/client": "5.9.0",
|
||||
"bcryptjs": "2.4.3",
|
||||
"cors": "2.8.5",
|
||||
"dotenv": "16.4.5",
|
||||
"express": "4.18.3",
|
||||
"dotenv": "16.4.1",
|
||||
"express": "4.18.2",
|
||||
"js-yaml": "4.1.0",
|
||||
"lodash.get": "4.4.2",
|
||||
"mustache": "4.2.0",
|
||||
|
@ -41,19 +41,19 @@
|
|||
"passport": "0.7.0",
|
||||
"passport-http": "0.3.0",
|
||||
"passport-jwt": "4.0.1",
|
||||
"pino": "8.19.0",
|
||||
"pino": "8.17.2",
|
||||
"qrcode": "1.5.3",
|
||||
"swagger-ui-dist": "5.11.8",
|
||||
"swagger-ui-dist": "5.11.2",
|
||||
"swagger-ui-express": "5.0.0"
|
||||
},
|
||||
"devDependencies": {
|
||||
"chai": "5.1.0",
|
||||
"chai": "5.0.3",
|
||||
"chai-http": "4.4.0",
|
||||
"esbuild": "0.20.1",
|
||||
"mocha": "10.3.0",
|
||||
"esbuild": "0.20.0",
|
||||
"mocha": "10.2.0",
|
||||
"mocha-steps": "1.3.0",
|
||||
"nodemon": "3.1.0",
|
||||
"prisma": "5.10.2"
|
||||
"nodemon": "3.0.3",
|
||||
"prisma": "5.9.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">= 18.17.0 <22"
|
||||
|
|
|
@ -35,7 +35,7 @@
|
|||
"@next/bundle-analyzer": "14.1.0",
|
||||
"@tailwindcss/typography": "0.5.10",
|
||||
"algoliasearch": "4.22.1",
|
||||
"daisyui": "4.7.2",
|
||||
"daisyui": "4.6.1",
|
||||
"lodash.get": "4.4.2",
|
||||
"lodash.orderby": "4.6.0",
|
||||
"lodash.set": "4.3.2",
|
||||
|
@ -43,7 +43,7 @@
|
|||
"react": "18.2.0",
|
||||
"react-copy-to-clipboard": "5.1.0",
|
||||
"react-dom": "18.2.0",
|
||||
"react-hotkeys-hook": "4.5.0",
|
||||
"react-hotkeys-hook": "4.4.4",
|
||||
"react-instantsearch-dom": "6.40.4",
|
||||
"react-instantsearch-hooks-web": "6.47.3",
|
||||
"react-swipeable": "7.0.1",
|
||||
|
@ -61,11 +61,11 @@
|
|||
"devDependencies": {
|
||||
"autoprefixer": "10.4.17",
|
||||
"js-yaml": "4.1.0",
|
||||
"postcss": "8.4.35",
|
||||
"postcss": "8.4.33",
|
||||
"remark-extract-frontmatter": "3.2.0",
|
||||
"remark-mdx-frontmatter": "4.0.0",
|
||||
"tailwindcss": "3.4.1",
|
||||
"yaml-loader": "0.8.1"
|
||||
"yaml-loader": "0.8.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">= 18.17.0 <22"
|
||||
|
|
|
@ -58,6 +58,7 @@ import { Wahid as wahid } from '@freesewing/wahid'
|
|||
import { Walburga as walburga } from '@freesewing/walburga'
|
||||
import { Waralee as waralee } from '@freesewing/waralee'
|
||||
import { Yuri as yuri } from '@freesewing/yuri'
|
||||
import { Lily as lily } from '@freesewing/lily'
|
||||
|
||||
const designs = {
|
||||
aaron,
|
||||
|
@ -116,6 +117,7 @@ const designs = {
|
|||
walburga,
|
||||
waralee,
|
||||
yuri,
|
||||
lily,
|
||||
}
|
||||
|
||||
export const useDesign = (design) => (designs[design] ? designs[design] : false)
|
||||
|
|
|
@ -35,8 +35,8 @@
|
|||
"d3-dispatch": "3.0.1",
|
||||
"d3-drag": "3.0.0",
|
||||
"d3-selection": "3.0.0",
|
||||
"daisyui": "4.7.2",
|
||||
"i18next": "23.10.0",
|
||||
"daisyui": "4.6.1",
|
||||
"i18next": "23.8.1",
|
||||
"lodash.get": "4.4.2",
|
||||
"lodash.orderby": "4.6.0",
|
||||
"lodash.set": "4.3.2",
|
||||
|
@ -45,8 +45,8 @@
|
|||
"ora": "8.0.1",
|
||||
"react": "18.2.0",
|
||||
"react-copy-to-clipboard": "5.1.0",
|
||||
"react-hotkeys-hook": "4.5.0",
|
||||
"react-i18next": "14.0.5",
|
||||
"react-hotkeys-hook": "4.4.4",
|
||||
"react-i18next": "14.0.1",
|
||||
"react-instantsearch-dom": "6.40.4",
|
||||
"react-swipeable": "7.0.1",
|
||||
"react-timeago": "7.2.0",
|
||||
|
@ -62,11 +62,11 @@
|
|||
"devDependencies": {
|
||||
"autoprefixer": "10.4.17",
|
||||
"js-yaml": "4.1.0",
|
||||
"postcss": "8.4.35",
|
||||
"postcss": "8.4.33",
|
||||
"remark-extract-frontmatter": "3.2.0",
|
||||
"remark-mdx-frontmatter": "4.0.0",
|
||||
"tailwindcss": "3.4.1",
|
||||
"yaml-loader": "0.8.1"
|
||||
"yaml-loader": "0.8.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">= 18.17.0 <22"
|
||||
|
|
|
@ -28,7 +28,7 @@
|
|||
},
|
||||
"peerDependencies": {},
|
||||
"dependencies": {
|
||||
"@bugsnag/js": "7.22.4",
|
||||
"@bugsnag/js": "7.22.3",
|
||||
"@bugsnag/plugin-react": "7.19.0",
|
||||
"@mdx-js/mdx": "^3.0.0",
|
||||
"@mdx-js/react": "^3.0.0",
|
||||
|
@ -37,11 +37,11 @@
|
|||
"@tailwindcss/typography": "0.5.10",
|
||||
"algoliasearch": "4.22.1",
|
||||
"react-copy-to-clipboard": "5.1.0",
|
||||
"daisyui": "4.7.2",
|
||||
"echarts": "5.5.0",
|
||||
"daisyui": "4.6.1",
|
||||
"echarts": "5.4.3",
|
||||
"echarts-for-react": "3.0.2",
|
||||
"jotai": "2.7.0",
|
||||
"jotai-location": "0.5.4",
|
||||
"jotai": "2.6.4",
|
||||
"jotai-location": "0.5.2",
|
||||
"lodash.get": "4.4.2",
|
||||
"lodash.orderby": "4.6.0",
|
||||
"lodash.set": "4.3.2",
|
||||
|
@ -49,7 +49,7 @@
|
|||
"next": "14.1.0",
|
||||
"ora": "8.0.1",
|
||||
"react-dropzone": "14.2.3",
|
||||
"react-hotkeys-hook": "4.5.0",
|
||||
"react-hotkeys-hook": "4.4.4",
|
||||
"react-instantsearch-dom": "6.40.4",
|
||||
"react-swipeable": "7.0.1",
|
||||
"react-timeago": "7.2.0",
|
||||
|
@ -64,16 +64,16 @@
|
|||
"remark-mdx-frontmatter": "4.0.0",
|
||||
"strip-markdown": "6.0.0",
|
||||
"use-local-storage-state": "19.1.0",
|
||||
"yaml-loader": "0.8.1"
|
||||
"yaml-loader": "0.8.0"
|
||||
},
|
||||
"devDependencies": {
|
||||
"autoprefixer": "10.4.17",
|
||||
"js-yaml": "4.1.0",
|
||||
"postcss": "8.4.35",
|
||||
"postcss": "8.4.33",
|
||||
"remark-extract-frontmatter": "3.2.0",
|
||||
"remark-mdx-frontmatter": "4.0.0",
|
||||
"tailwindcss": "3.4.1",
|
||||
"yaml-loader": "0.8.1"
|
||||
"yaml-loader": "0.8.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">= 18.17.0 <22"
|
||||
|
|
|
@ -50,13 +50,13 @@
|
|||
"d3-dispatch": "3.0.1",
|
||||
"d3-drag": "3.0.0",
|
||||
"d3-selection": "3.0.0",
|
||||
"daisyui": "4.7.2",
|
||||
"echarts": "5.5.0",
|
||||
"daisyui": "4.6.1",
|
||||
"echarts": "5.4.3",
|
||||
"echarts-for-react": "3.0.2",
|
||||
"file-saver": "2.0.5",
|
||||
"i18next": "23.10.0",
|
||||
"jotai": "2.7.0",
|
||||
"jotai-location": "0.5.4",
|
||||
"i18next": "23.8.1",
|
||||
"jotai": "2.6.4",
|
||||
"jotai-location": "0.5.2",
|
||||
"js-yaml": "4.1.0",
|
||||
"lodash.debounce": "^4.0.8",
|
||||
"lodash.get": "4.4.2",
|
||||
|
@ -70,12 +70,12 @@
|
|||
"react": "18.2.0",
|
||||
"react-dom": "18.2.0",
|
||||
"react-copy-to-clipboard": "5.1.0",
|
||||
"react-hotkeys-hook": "4.5.0",
|
||||
"react-i18next": "14.0.5",
|
||||
"react-hotkeys-hook": "4.4.4",
|
||||
"react-i18next": "14.0.1",
|
||||
"react-dropzone": "14.2.3",
|
||||
"react-swipeable": "7.0.1",
|
||||
"react-timeago": "7.2.0",
|
||||
"react-zoom-pan-pinch": "3.4.3",
|
||||
"react-zoom-pan-pinch": "3.4.1",
|
||||
"remark-gfm": "4.0.0",
|
||||
"remark-frontmatter": "5.0.0",
|
||||
"remark-mdx-frontmatter": "4.0.0",
|
||||
|
@ -83,7 +83,7 @@
|
|||
"slugify": "^1.6.6",
|
||||
"svg-to-pdfkit": "https://git@github.com/eriese/SVG-to-PDFKit",
|
||||
"tailwindcss": "3.4.1",
|
||||
"tlds": "1.250.0",
|
||||
"tlds": "1.249.0",
|
||||
"use-local-storage-state": "19.1.0",
|
||||
"web-worker": "1.3.0"
|
||||
},
|
||||
|
|
|
@ -61,6 +61,7 @@ import { i18n as wahid } from '@freesewing/wahid'
|
|||
import { i18n as walburga } from '@freesewing/walburga'
|
||||
import { i18n as waralee } from '@freesewing/waralee'
|
||||
import { i18n as yuri } from '@freesewing/yuri'
|
||||
import { i18n as lily } from '@freesewing/lily'
|
||||
|
||||
export const designs = {
|
||||
aaron,
|
||||
|
@ -122,4 +123,5 @@ export const designs = {
|
|||
walburga,
|
||||
waralee,
|
||||
yuri,
|
||||
lily,
|
||||
}
|
||||
|
|
|
@ -23,28 +23,28 @@
|
|||
"d3-dispatch": "3.0.1",
|
||||
"d3-drag": "3.0.0",
|
||||
"d3-selection": "3.0.0",
|
||||
"daisyui": "4.7.2",
|
||||
"daisyui": "4.6.1",
|
||||
"feed": "4.2.2",
|
||||
"file-saver": "2.0.5",
|
||||
"front-matter": "4.0.2",
|
||||
"highlight.js": "11.9.0",
|
||||
"github-slugger": "2.0.0",
|
||||
"jotai": "2.7.0",
|
||||
"jotai-location": "0.5.4",
|
||||
"jotai": "2.6.4",
|
||||
"jotai-location": "0.5.2",
|
||||
"lodash.clonedeep": "4.5.0",
|
||||
"lodash.debounce": "^4.0.8",
|
||||
"lodash.orderby": "4.6.0",
|
||||
"lodash.unset": "4.5.2",
|
||||
"lodash.get": "4.4.2",
|
||||
"mdast-util-toc": "7.0.0",
|
||||
"mermaid": "10.8.0",
|
||||
"mermaid": "10.7.0",
|
||||
"ora": "8.0.1",
|
||||
"pdfkit": "0.14.0",
|
||||
"postcss-for": "2.1.1",
|
||||
"react": "18.2.0",
|
||||
"react-dom": "18.2.0",
|
||||
"react-timeago": "7.2.0",
|
||||
"react-zoom-pan-pinch": "3.4.3",
|
||||
"react-zoom-pan-pinch": "3.4.1",
|
||||
"rehype-autolink-headings": "7.1.0",
|
||||
"rehype-highlight": "7.0.0",
|
||||
"remark-frontmatter": "5.0.0",
|
||||
|
@ -52,7 +52,7 @@
|
|||
"remark-smartypants": "2.1.0",
|
||||
"slugify": "^1.6.6",
|
||||
"svg-to-pdfkit": "https://git@github.com/eriese/SVG-to-PDFKit",
|
||||
"tlds": "1.250.0",
|
||||
"tlds": "1.249.0",
|
||||
"to-vfile": "8.0.0",
|
||||
"unist-util-visit": "5.0.0",
|
||||
"use-local-storage-state": "19.1.0",
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue