From 16c83a507a9d7e5af511b65f542cf2a218ed4796 Mon Sep 17 00:00:00 2001 From: Joost De Cock Date: Fri, 3 May 2019 20:13:27 +0200 Subject: [PATCH] :sparkles: Trying my hand at plugin-react --- config/dependencies.yaml | 1 + config/descriptions.yaml | 1 + packages/aaron/package.json | 6 +- packages/bent/package.json | 6 +- packages/brian/package.json | 6 +- packages/bruce/package.json | 6 +- packages/carlita/package.json | 12 +-- packages/carlton/package.json | 8 +- packages/cathrin/package.json | 6 +- packages/components/package.json | 25 ++--- .../src/Workbench/DraftPattern/index.js | 5 +- .../create-freesewing-pattern/package.json | 6 +- .../template/default/example/package.json | 1 + packages/examples/package.json | 6 +- packages/florent/package.json | 6 +- packages/huey/package.json | 6 +- packages/hugo/package.json | 6 +- packages/i18n/package.json | 2 +- packages/jaeger/package.json | 6 +- packages/models/package.json | 3 + packages/pattern-info/package.json | 3 + packages/patterns/package.json | 4 +- packages/plugin-banner/package.json | 4 +- packages/plugin-bundle/package.json | 4 +- packages/plugin-bust/package.json | 4 +- packages/plugin-buttons/package.json | 4 +- packages/plugin-cutonfold/package.json | 4 +- packages/plugin-debug/package.json | 4 +- packages/plugin-designer/package.json | 4 +- packages/plugin-dimension/package.json | 4 +- packages/plugin-flip/package.json | 4 +- packages/plugin-grainline/package.json | 4 +- packages/plugin-i18n/package.json | 4 +- packages/plugin-logo/package.json | 4 +- packages/plugin-react/.babelrc | 10 ++ packages/plugin-react/.travis.yml | 9 ++ packages/plugin-react/README.md | 98 +++++++++++++++++++ packages/plugin-react/package.json | 53 ++++++++++ packages/plugin-react/rollup.config.js | 48 +++++++++ packages/plugin-react/src/index.js | 11 +++ packages/plugin-react/tests/designer.test.js | 73 ++++++++++++++ packages/plugin-round/package.json | 4 +- packages/plugin-scalebox/package.json | 4 +- packages/plugin-sprinkle/package.json | 4 +- packages/plugin-svgattr/package.json | 4 +- packages/plugin-theme/package.json | 4 +- packages/plugin-title/package.json | 4 +- packages/plugin-validate/package.json | 4 +- packages/shin/package.json | 6 +- packages/simon/package.json | 10 +- packages/sven/package.json | 6 +- packages/tamiko/package.json | 6 +- packages/trayvon/package.json | 6 +- packages/utils/package.json | 3 + packages/wahid/package.json | 10 +- 55 files changed, 466 insertions(+), 90 deletions(-) create mode 100644 packages/plugin-react/.babelrc create mode 100644 packages/plugin-react/.travis.yml create mode 100644 packages/plugin-react/README.md create mode 100644 packages/plugin-react/package.json create mode 100644 packages/plugin-react/rollup.config.js create mode 100644 packages/plugin-react/src/index.js create mode 100644 packages/plugin-react/tests/designer.test.js diff --git a/config/dependencies.yaml b/config/dependencies.yaml index 8c667a9c070..121cbbaab63 100644 --- a/config/dependencies.yaml +++ b/config/dependencies.yaml @@ -32,6 +32,7 @@ components: "@freesewing/pattern-info": "^{{version}}" "@freesewing/mui-theme": "^{{version}}" "@freesewing/css-theme": "^{{version}}" + "@freesewing/plugin-react": "^{{version}}" "typeface-roboto-condensed": "latest" "@freesewing/i18n": "^{{version}}" "@freesewing/utils": "^{{version}}" diff --git a/config/descriptions.yaml b/config/descriptions.yaml index 4a015f28a06..01cff028e2c 100644 --- a/config/descriptions.yaml +++ b/config/descriptions.yaml @@ -31,6 +31,7 @@ plugin-flip: "A FreeSewing plugin to flip parts horizontally" plugin-grainline: "A FreeSewing plugin to add grainline indicators on your patterns" plugin-i18n: "A FreeSewing plugin for pattern translation" plugin-logo: "A FreeSewing plugin to add our logo to your patterns" +plugin-react: "A FreeSewing plugin to turn your pattern into a React component" plugin-round: "A FreeSewing plugin to round corners" plugin-scalebox: "A FreeSewing plugin to add a scalebox to your pattern" plugin-sprinkle: "A FreeSewing plugin to bulk-add snippets to your pattern" diff --git a/packages/aaron/package.json b/packages/aaron/package.json index 9a614f08b82..4bf13bbd4d8 100644 --- a/packages/aaron/package.json +++ b/packages/aaron/package.json @@ -33,9 +33,9 @@ "symlink": "mkdir -p ./node_modules/@freesewing && cd ./node_modules/@freesewing && ln -s -f ../../../* . && cd -" }, "peerDependencies": { - "@freesewing/brian": "^2.0.0-alpha.17", - "@freesewing/core": "^2.0.0-alpha.17", - "@freesewing/plugin-bundle": "^2.0.0-alpha.17" + "@freesewing/core": "^2.0.0-alpha.18", + "@freesewing/plugin-bundle": "^2.0.0-alpha.18", + "@freesewing/brian": "^2.0.0-alpha.18" }, "files": [ "dist/*", diff --git a/packages/bent/package.json b/packages/bent/package.json index 3ecbef111f4..8cd98297245 100644 --- a/packages/bent/package.json +++ b/packages/bent/package.json @@ -33,9 +33,9 @@ "symlink": "mkdir -p ./node_modules/@freesewing && cd ./node_modules/@freesewing && ln -s -f ../../../* . && cd -" }, "peerDependencies": { - "@freesewing/brian": "^2.0.0-alpha.17", - "@freesewing/core": "^2.0.0-alpha.17", - "@freesewing/plugin-bundle": "^2.0.0-alpha.17" + "@freesewing/core": "^2.0.0-alpha.18", + "@freesewing/plugin-bundle": "^2.0.0-alpha.18", + "@freesewing/brian": "^2.0.0-alpha.18" }, "files": [ "dist/*", diff --git a/packages/brian/package.json b/packages/brian/package.json index 36e0327d6a1..133d2f00455 100644 --- a/packages/brian/package.json +++ b/packages/brian/package.json @@ -33,9 +33,11 @@ "symlink": "mkdir -p ./node_modules/@freesewing && cd ./node_modules/@freesewing && ln -s -f ../../../* . && cd -" }, "peerDependencies": { - "@freesewing/core": "^2.0.0-alpha.17", - "@freesewing/plugin-bundle": "^2.0.0-alpha.17" + "@freesewing/core": "^2.0.0-alpha.18", + "@freesewing/plugin-bundle": "^2.0.0-alpha.18" }, + "dependencies": {}, + "devDependencies": {}, "files": [ "dist/*", "README.md", diff --git a/packages/bruce/package.json b/packages/bruce/package.json index 36caca6dcff..8558de175c7 100644 --- a/packages/bruce/package.json +++ b/packages/bruce/package.json @@ -33,9 +33,11 @@ "symlink": "mkdir -p ./node_modules/@freesewing && cd ./node_modules/@freesewing && ln -s -f ../../../* . && cd -" }, "peerDependencies": { - "@freesewing/core": "^2.0.0-alpha.17", - "@freesewing/plugin-bundle": "^2.0.0-alpha.17" + "@freesewing/core": "^2.0.0-alpha.18", + "@freesewing/plugin-bundle": "^2.0.0-alpha.18" }, + "dependencies": {}, + "devDependencies": {}, "files": [ "dist/*", "README.md", diff --git a/packages/carlita/package.json b/packages/carlita/package.json index e130595a011..e5e9d802ce0 100644 --- a/packages/carlita/package.json +++ b/packages/carlita/package.json @@ -33,12 +33,12 @@ "symlink": "mkdir -p ./node_modules/@freesewing && cd ./node_modules/@freesewing && ln -s -f ../../../* . && cd -" }, "peerDependencies": { - "@freesewing/bent": "^2.0.0-alpha.17", - "@freesewing/carlton": "^2.0.0-alpha.17", - "@freesewing/core": "^2.0.0-alpha.17", - "@freesewing/plugin-bundle": "^2.0.0-alpha.17", - "@freesewing/plugin-bust": "^2.0.0-alpha.17", - "@freesewing/plugin-buttons": "^2.0.0-alpha.17" + "@freesewing/core": "^2.0.0-alpha.18", + "@freesewing/plugin-bundle": "^2.0.0-alpha.18", + "@freesewing/bent": "^2.0.0-alpha.18", + "@freesewing/carlton": "^2.0.0-alpha.18", + "@freesewing/plugin-bust": "^2.0.0-alpha.18", + "@freesewing/plugin-buttons": "^2.0.0-alpha.18" }, "files": [ "dist/*", diff --git a/packages/carlton/package.json b/packages/carlton/package.json index 311e3a5a5cf..c28feaf942b 100644 --- a/packages/carlton/package.json +++ b/packages/carlton/package.json @@ -33,10 +33,10 @@ "symlink": "mkdir -p ./node_modules/@freesewing && cd ./node_modules/@freesewing && ln -s -f ../../../* . && cd -" }, "peerDependencies": { - "@freesewing/bent": "^2.0.0-alpha.17", - "@freesewing/core": "^2.0.0-alpha.17", - "@freesewing/plugin-bundle": "^2.0.0-alpha.17", - "@freesewing/plugin-buttons": "^2.0.0-alpha.17" + "@freesewing/core": "^2.0.0-alpha.18", + "@freesewing/plugin-bundle": "^2.0.0-alpha.18", + "@freesewing/bent": "^2.0.0-alpha.18", + "@freesewing/plugin-buttons": "^2.0.0-alpha.18" }, "files": [ "dist/*", diff --git a/packages/cathrin/package.json b/packages/cathrin/package.json index f27bfcdcbd1..1e99d934cda 100644 --- a/packages/cathrin/package.json +++ b/packages/cathrin/package.json @@ -33,9 +33,11 @@ "symlink": "mkdir -p ./node_modules/@freesewing && cd ./node_modules/@freesewing && ln -s -f ../../../* . && cd -" }, "peerDependencies": { - "@freesewing/core": "^2.0.0-alpha.17", - "@freesewing/plugin-bundle": "^2.0.0-alpha.17" + "@freesewing/core": "^2.0.0-alpha.18", + "@freesewing/plugin-bundle": "^2.0.0-alpha.18" }, + "dependencies": {}, + "devDependencies": {}, "files": [ "dist/*", "README.md", diff --git a/packages/components/package.json b/packages/components/package.json index 0fac1ef1b8f..b9a9ca2b447 100644 --- a/packages/components/package.json +++ b/packages/components/package.json @@ -16,28 +16,29 @@ "main": "dist/index.js", "scripts": { "clean": "rimraf dist", - "watch": "BABEL_ENV=production rollup -c -w -o dist/index.js -f cjs", "nodebuild": "BABEL_ENV=production rollup -c -o dist/index.js -f cjs", "build": "npm run clean && npm run nodebuild", "test": "echo \"components: No tests configured. Perhaps you'd like to do this?\" && exit 0", "pubtest": "npm publish --registry http://localhost:6662", "pubforce": "npm publish", "symlink": "mkdir -p ./node_modules/@freesewing && cd ./node_modules/@freesewing && ln -s -f ../../../* . && cd -", - "storybook": "start-storybook -p 6663" + "storybook": "start-storybook -p 6663", + "watch": "BABEL_ENV=production rollup -c -w -o dist/index.js -f cjs" }, "peerDependencies": { - "@freesewing/css-theme": "^2.0.0-alpha.17", - "@freesewing/i18n": "^2.0.0-alpha.17", - "@freesewing/mui-theme": "^2.0.0-alpha.17", - "@freesewing/pattern-info": "^2.0.0-alpha.17", - "@freesewing/utils": "^2.0.0-alpha.17", + "react": "^16.8", + "prop-types": "15.7.2", + "@freesewing/pattern-info": "^2.0.0-alpha.18", + "@freesewing/mui-theme": "^2.0.0-alpha.18", + "@freesewing/css-theme": "^2.0.0-alpha.18", + "@freesewing/plugin-react": "^2.0.0-alpha.18", + "typeface-roboto-condensed": "latest", + "@freesewing/i18n": "^2.0.0-alpha.18", + "@freesewing/utils": "^2.0.0-alpha.18", + "react-intl": "^2.8.0", "@material-ui/core": "^3.9.3", "@material-ui/icons": "^3.0.2", - "@material-ui/lab": "^3.0.0-alpha.30", - "prop-types": "15.7.2", - "react": "^16.8", - "react-intl": "^2.8.0", - "typeface-roboto-condensed": "latest" + "@material-ui/lab": "^3.0.0-alpha.30" }, "files": [ "dist/*", diff --git a/packages/components/src/Workbench/DraftPattern/index.js b/packages/components/src/Workbench/DraftPattern/index.js index d4fed3c059d..69b2014ba0a 100644 --- a/packages/components/src/Workbench/DraftPattern/index.js +++ b/packages/components/src/Workbench/DraftPattern/index.js @@ -6,7 +6,7 @@ import themePlugin from "@freesewing/plugin-theme"; import svgattrPlugin from "@freesewing/plugin-svgattr"; import i18nPlugin from "@freesewing/plugin-i18n"; import validatePlugin from "@freesewing/plugin-validate"; -import designerPlugin from "@freesewing/plugin-designer"; +import reactPlugin from "@freesewing/plugin-react"; import { strings } from "@freesewing/i18n"; import { FormattedMessage } from "react-intl"; @@ -16,9 +16,8 @@ const DraftPattern = props => { .use(svgattrPlugin, { class: "freesewing draft" }) .use(i18nPlugin, { strings: strings }) .use(validatePlugin) - .use(designerPlugin, props.raiseEvent); + .use(reactPlugin); pattern.draft(); - console.dir({ pattern }); return (
diff --git a/packages/create-freesewing-pattern/package.json b/packages/create-freesewing-pattern/package.json index 923b5c19585..39f951e3bfe 100644 --- a/packages/create-freesewing-pattern/package.json +++ b/packages/create-freesewing-pattern/package.json @@ -23,8 +23,6 @@ "symlink": "mkdir -p ./node_modules/@freesewing && cd ./node_modules/@freesewing && ln -s -f ../../../* . && cd -" }, "dependencies": { - "@freesewing/i18n": "^2.0.0-alpha.18", - "@freesewing/pattern-info": "^2.0.0-alpha.18", "chalk": "^2.4.2", "commander": "^2.19.0", "conf": "^2.2.0", @@ -40,7 +38,9 @@ "p-each-series": "^1.0.0", "parse-git-config": "^3.0.0", "validate-npm-package-name": "^3.0.0", - "which": "^1.3.1" + "which": "^1.3.1", + "@freesewing/i18n": "^2.0.0-alpha.18", + "@freesewing/pattern-info": "^2.0.0-alpha.18" }, "files": [ "lib", diff --git a/packages/create-freesewing-pattern/template/default/example/package.json b/packages/create-freesewing-pattern/template/default/example/package.json index 7271117228b..d91893a64c1 100644 --- a/packages/create-freesewing-pattern/template/default/example/package.json +++ b/packages/create-freesewing-pattern/template/default/example/package.json @@ -14,6 +14,7 @@ "@freesewing/plugin-svgattr": "alpha", "@freesewing/plugin-i18n": "alpha", "@freesewing/plugin-validate": "alpha", + "@freesewing/plugin-react": "alpha", "@freesewing/i18n": "alpha", "@freesewing/components": "alpha", "@freesewing/css-theme": "alpha", diff --git a/packages/examples/package.json b/packages/examples/package.json index 588648340a0..a4786d96101 100644 --- a/packages/examples/package.json +++ b/packages/examples/package.json @@ -28,9 +28,11 @@ "symlink": "mkdir -p ./node_modules/@freesewing && cd ./node_modules/@freesewing && ln -s -f ../../../* . && cd -" }, "peerDependencies": { - "@freesewing/core": "^2.0.0-alpha.17", - "@freesewing/plugin-bundle": "^2.0.0-alpha.17" + "@freesewing/core": "^2.0.0-alpha.18", + "@freesewing/plugin-bundle": "^2.0.0-alpha.18" }, + "dependencies": {}, + "devDependencies": {}, "files": [ "dist/*", "README.md", diff --git a/packages/florent/package.json b/packages/florent/package.json index 06fcbcf24d7..a22d4fcef36 100644 --- a/packages/florent/package.json +++ b/packages/florent/package.json @@ -33,9 +33,11 @@ "symlink": "mkdir -p ./node_modules/@freesewing && cd ./node_modules/@freesewing && ln -s -f ../../../* . && cd -" }, "peerDependencies": { - "@freesewing/core": "^2.0.0-alpha.17", - "@freesewing/plugin-bundle": "^2.0.0-alpha.17" + "@freesewing/core": "^2.0.0-alpha.18", + "@freesewing/plugin-bundle": "^2.0.0-alpha.18" }, + "dependencies": {}, + "devDependencies": {}, "files": [ "dist/*", "README.md", diff --git a/packages/huey/package.json b/packages/huey/package.json index 7fb628586c6..a1a80a0f419 100644 --- a/packages/huey/package.json +++ b/packages/huey/package.json @@ -33,9 +33,11 @@ "symlink": "mkdir -p ./node_modules/@freesewing && cd ./node_modules/@freesewing && ln -s -f ../../../* . && cd -" }, "peerDependencies": { - "@freesewing/core": "^2.0.0-alpha.17", - "@freesewing/plugin-bundle": "^2.0.0-alpha.17" + "@freesewing/core": "^2.0.0-alpha.18", + "@freesewing/plugin-bundle": "^2.0.0-alpha.18" }, + "dependencies": {}, + "devDependencies": {}, "files": [ "dist/*", "README.md", diff --git a/packages/hugo/package.json b/packages/hugo/package.json index bdb11dd8825..881377efc16 100644 --- a/packages/hugo/package.json +++ b/packages/hugo/package.json @@ -33,9 +33,11 @@ "symlink": "mkdir -p ./node_modules/@freesewing && cd ./node_modules/@freesewing && ln -s -f ../../../* . && cd -" }, "peerDependencies": { - "@freesewing/core": "^2.0.0-alpha.17", - "@freesewing/plugin-bundle": "^2.0.0-alpha.17" + "@freesewing/core": "^2.0.0-alpha.18", + "@freesewing/plugin-bundle": "^2.0.0-alpha.18" }, + "dependencies": {}, + "devDependencies": {}, "files": [ "dist/*", "README.md", diff --git a/packages/i18n/package.json b/packages/i18n/package.json index ed3588d72b1..96af6cde8d0 100644 --- a/packages/i18n/package.json +++ b/packages/i18n/package.json @@ -28,7 +28,7 @@ "symlink": "mkdir -p ./node_modules/@freesewing && cd ./node_modules/@freesewing && ln -s -f ../../../* . && cd -" }, "peerDependencies": { - "@freesewing/pattern-info": "^2.0.0-alpha.17" + "@freesewing/pattern-info": "^2.0.0-alpha.18" }, "files": [ "dist/*", diff --git a/packages/jaeger/package.json b/packages/jaeger/package.json index ed7676a3448..0935565f553 100644 --- a/packages/jaeger/package.json +++ b/packages/jaeger/package.json @@ -33,9 +33,11 @@ "symlink": "mkdir -p ./node_modules/@freesewing && cd ./node_modules/@freesewing && ln -s -f ../../../* . && cd -" }, "peerDependencies": { - "@freesewing/core": "^2.0.0-alpha.17", - "@freesewing/plugin-bundle": "^2.0.0-alpha.17" + "@freesewing/core": "^2.0.0-alpha.18", + "@freesewing/plugin-bundle": "^2.0.0-alpha.18" }, + "dependencies": {}, + "devDependencies": {}, "files": [ "dist/*", "README.md", diff --git a/packages/models/package.json b/packages/models/package.json index 1a25423f506..89745392af3 100644 --- a/packages/models/package.json +++ b/packages/models/package.json @@ -29,6 +29,9 @@ "pubforce": "npm publish", "symlink": "mkdir -p ./node_modules/@freesewing && cd ./node_modules/@freesewing && ln -s -f ../../../* . && cd -" }, + "peerDependencies": {}, + "dependencies": {}, + "devDependencies": {}, "files": [ "dist/*", "README.md", diff --git a/packages/pattern-info/package.json b/packages/pattern-info/package.json index e30a3838655..2de11c616c4 100644 --- a/packages/pattern-info/package.json +++ b/packages/pattern-info/package.json @@ -31,6 +31,9 @@ "symlink": "mkdir -p ./node_modules/@freesewing && cd ./node_modules/@freesewing && ln -s -f ../../../* . && cd -", "prebuild": "node src/prebuild.js" }, + "peerDependencies": {}, + "dependencies": {}, + "devDependencies": {}, "files": [ "dist/*", "README.md", diff --git a/packages/patterns/package.json b/packages/patterns/package.json index 54717f70951..cd082295181 100644 --- a/packages/patterns/package.json +++ b/packages/patterns/package.json @@ -33,8 +33,8 @@ "symlink": "mkdir -p ./node_modules/@freesewing && cd ./node_modules/@freesewing && ln -s -f ../../../* . && cd -" }, "peerDependencies": { - "@freesewing/core": "^2.0.0-alpha.17", - "@freesewing/plugin-bundle": "^2.0.0-alpha.17" + "@freesewing/core": "^2.0.0-alpha.18", + "@freesewing/plugin-bundle": "^2.0.0-alpha.18" }, "dependencies": { "@freesewing/aaron": "^2.0.0-alpha.18", diff --git a/packages/plugin-banner/package.json b/packages/plugin-banner/package.json index a12239830be..8080bac2e85 100644 --- a/packages/plugin-banner/package.json +++ b/packages/plugin-banner/package.json @@ -33,8 +33,10 @@ "symlink": "mkdir -p ./node_modules/@freesewing && cd ./node_modules/@freesewing && ln -s -f ../../../* . && cd -" }, "peerDependencies": { - "@freesewing/core": "^2.0.0-alpha.17" + "@freesewing/core": "^2.0.0-alpha.18" }, + "dependencies": {}, + "devDependencies": {}, "files": [ "dist/*", "README.md", diff --git a/packages/plugin-bundle/package.json b/packages/plugin-bundle/package.json index a212b5d61f3..d1757a95eae 100644 --- a/packages/plugin-bundle/package.json +++ b/packages/plugin-bundle/package.json @@ -34,8 +34,10 @@ "symlink": "mkdir -p ./node_modules/@freesewing && cd ./node_modules/@freesewing && ln -s -f ../../../* . && cd -" }, "peerDependencies": { - "@freesewing/core": "^2.0.0-alpha.17" + "@freesewing/core": "^2.0.0-alpha.18" }, + "dependencies": {}, + "devDependencies": {}, "files": [ "dist/*", "README.md", diff --git a/packages/plugin-bust/package.json b/packages/plugin-bust/package.json index 1e6778a06e5..685e68d4cc7 100644 --- a/packages/plugin-bust/package.json +++ b/packages/plugin-bust/package.json @@ -33,8 +33,10 @@ "symlink": "mkdir -p ./node_modules/@freesewing && cd ./node_modules/@freesewing && ln -s -f ../../../* . && cd -" }, "peerDependencies": { - "@freesewing/core": "^2.0.0-alpha.17" + "@freesewing/core": "^2.0.0-alpha.18" }, + "dependencies": {}, + "devDependencies": {}, "files": [ "dist/*", "README.md", diff --git a/packages/plugin-buttons/package.json b/packages/plugin-buttons/package.json index 47fdf69220f..124b7fc3793 100644 --- a/packages/plugin-buttons/package.json +++ b/packages/plugin-buttons/package.json @@ -33,8 +33,10 @@ "symlink": "mkdir -p ./node_modules/@freesewing && cd ./node_modules/@freesewing && ln -s -f ../../../* . && cd -" }, "peerDependencies": { - "@freesewing/core": "^2.0.0-alpha.17" + "@freesewing/core": "^2.0.0-alpha.18" }, + "dependencies": {}, + "devDependencies": {}, "files": [ "dist/*", "README.md", diff --git a/packages/plugin-cutonfold/package.json b/packages/plugin-cutonfold/package.json index c31cc3bde6f..7c4ea7250a0 100644 --- a/packages/plugin-cutonfold/package.json +++ b/packages/plugin-cutonfold/package.json @@ -33,8 +33,10 @@ "symlink": "mkdir -p ./node_modules/@freesewing && cd ./node_modules/@freesewing && ln -s -f ../../../* . && cd -" }, "peerDependencies": { - "@freesewing/core": "^2.0.0-alpha.17" + "@freesewing/core": "^2.0.0-alpha.18" }, + "dependencies": {}, + "devDependencies": {}, "files": [ "dist/*", "README.md", diff --git a/packages/plugin-debug/package.json b/packages/plugin-debug/package.json index 4b8c31e3273..9c8372064dd 100644 --- a/packages/plugin-debug/package.json +++ b/packages/plugin-debug/package.json @@ -33,8 +33,10 @@ "symlink": "mkdir -p ./node_modules/@freesewing && cd ./node_modules/@freesewing && ln -s -f ../../../* . && cd -" }, "peerDependencies": { - "@freesewing/core": "^2.0.0-alpha.17" + "@freesewing/core": "^2.0.0-alpha.18" }, + "dependencies": {}, + "devDependencies": {}, "files": [ "dist/*", "README.md", diff --git a/packages/plugin-designer/package.json b/packages/plugin-designer/package.json index 35c69fdbbd5..0612ee735ca 100644 --- a/packages/plugin-designer/package.json +++ b/packages/plugin-designer/package.json @@ -33,8 +33,10 @@ "symlink": "mkdir -p ./node_modules/@freesewing && cd ./node_modules/@freesewing && ln -s -f ../../../* . && cd -" }, "peerDependencies": { - "@freesewing/core": "^2.0.0-alpha.17" + "@freesewing/core": "^2.0.0-alpha.18" }, + "dependencies": {}, + "devDependencies": {}, "files": [ "dist/*", "README.md", diff --git a/packages/plugin-dimension/package.json b/packages/plugin-dimension/package.json index 0e1370a89bc..154f7e25827 100644 --- a/packages/plugin-dimension/package.json +++ b/packages/plugin-dimension/package.json @@ -33,8 +33,10 @@ "symlink": "mkdir -p ./node_modules/@freesewing && cd ./node_modules/@freesewing && ln -s -f ../../../* . && cd -" }, "peerDependencies": { - "@freesewing/core": "^2.0.0-alpha.17" + "@freesewing/core": "^2.0.0-alpha.18" }, + "dependencies": {}, + "devDependencies": {}, "files": [ "dist/*", "README.md", diff --git a/packages/plugin-flip/package.json b/packages/plugin-flip/package.json index 9c764dc1786..6b93c6a599e 100644 --- a/packages/plugin-flip/package.json +++ b/packages/plugin-flip/package.json @@ -33,8 +33,10 @@ "symlink": "mkdir -p ./node_modules/@freesewing && cd ./node_modules/@freesewing && ln -s -f ../../../* . && cd -" }, "peerDependencies": { - "@freesewing/core": "^2.0.0-alpha.17" + "@freesewing/core": "^2.0.0-alpha.18" }, + "dependencies": {}, + "devDependencies": {}, "files": [ "dist/*", "README.md", diff --git a/packages/plugin-grainline/package.json b/packages/plugin-grainline/package.json index b8e4dba094e..747cfda095d 100644 --- a/packages/plugin-grainline/package.json +++ b/packages/plugin-grainline/package.json @@ -33,8 +33,10 @@ "symlink": "mkdir -p ./node_modules/@freesewing && cd ./node_modules/@freesewing && ln -s -f ../../../* . && cd -" }, "peerDependencies": { - "@freesewing/core": "^2.0.0-alpha.17" + "@freesewing/core": "^2.0.0-alpha.18" }, + "dependencies": {}, + "devDependencies": {}, "files": [ "dist/*", "README.md", diff --git a/packages/plugin-i18n/package.json b/packages/plugin-i18n/package.json index 48695615521..62c9f3b4daf 100644 --- a/packages/plugin-i18n/package.json +++ b/packages/plugin-i18n/package.json @@ -33,8 +33,10 @@ "symlink": "mkdir -p ./node_modules/@freesewing && cd ./node_modules/@freesewing && ln -s -f ../../../* . && cd -" }, "peerDependencies": { - "@freesewing/core": "^2.0.0-alpha.17" + "@freesewing/core": "^2.0.0-alpha.18" }, + "dependencies": {}, + "devDependencies": {}, "files": [ "dist/*", "README.md", diff --git a/packages/plugin-logo/package.json b/packages/plugin-logo/package.json index 700c3b8cea0..5ea4b144256 100644 --- a/packages/plugin-logo/package.json +++ b/packages/plugin-logo/package.json @@ -33,8 +33,10 @@ "symlink": "mkdir -p ./node_modules/@freesewing && cd ./node_modules/@freesewing && ln -s -f ../../../* . && cd -" }, "peerDependencies": { - "@freesewing/core": "^2.0.0-alpha.17" + "@freesewing/core": "^2.0.0-alpha.18" }, + "dependencies": {}, + "devDependencies": {}, "files": [ "dist/*", "README.md", diff --git a/packages/plugin-react/.babelrc b/packages/plugin-react/.babelrc new file mode 100644 index 00000000000..957cae3e64d --- /dev/null +++ b/packages/plugin-react/.babelrc @@ -0,0 +1,10 @@ +{ + "presets": [ + [ + "@babel/preset-env", + { + "useBuiltIns": "entry" + } + ] + ] +} diff --git a/packages/plugin-react/.travis.yml b/packages/plugin-react/.travis.yml new file mode 100644 index 00000000000..121b29f66a4 --- /dev/null +++ b/packages/plugin-react/.travis.yml @@ -0,0 +1,9 @@ +language: node_js +node_js: + - "node" +install: + - npm install + - npm run build +script: + - npm run test + - npm run coverage diff --git a/packages/plugin-react/README.md b/packages/plugin-react/README.md new file mode 100644 index 00000000000..983cc3c67c0 --- /dev/null +++ b/packages/plugin-react/README.md @@ -0,0 +1,98 @@ +> **Note**: This is part of version 2 of FreeSewing. +> It is a work in progress, and not ready for prime-time yet +> +> For all questions, please come say hello in [our chatroom on Gitter](https://gitter.im/). + +

Freesewing logo

+

FreeSewing is a free and open source library for made-to-measure sewing patterns

+

@freesewing/plugin-react on NPM + License: MIT + Open issues tagged pkg:plugin-react +

Follow @freesewing_org on Twitter + Chat with us on Gitter + Become a FreeSewing Patron + Follow @freesewing_org on Twitter +

+ +# @freesewing/plugin-react + +A FreeSewing plugin to turn your pattern into a React component + + + +## About FreeSewing 🤔 + +Where the world of makers and developers collide, that's where you'll find FreeSewing. + +Our [core library](https://freesewing.dev/en/freesewing) is a *batteries-included* toolbox +for parametric design of sewing patterns. It's a modular system (check our list +of [plugins](https://freesewing.dev/en/plugins) and getting started is as simple as: + +```bash +npm init freesewing-pattern +``` + +The [getting started] section on [freesewing.dev](https://freesewing.dev/) is a good +entrypoint to our documentation, but you'll find a lot more there, including +our [API documentation](https://freesewing.dev/en/freesewing/api), +as well as [examples](https://freesewing.dev/en/freesewing/examples), +and [best practices](https://freesewing.dev/en/do). + +If you're a maker, checkout [freesewing.org](https://freesewing/) where you can generate +our sewing patterns adapted to your measurements. + +## Support FreeSewing: Become a patron 🥰 + +FreeSewing is an open source project run by a community, +and financially supported by our patrons. + +If you feel what we do is worthwhile, you too +should [become a patron](https://freesewing.org/patrons/join). + +## Links 👩‍💻 + + - 💻 Makers website: [freesewing.org](https://freesewing.org) + - 💻 Developers website: [freesewing.dev](https://freesewing.org) + - 💬 Chat: [gitter.im/freesewing](https://gitter.im/freesewing/freesewing) + - 🐦 Twitter: [@freesewing_org](https://twitter.com/freesewing_org) + - 📷 Instagram: [@freesewing_org](https://instagram.com/freesewing_org) + +## 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 🤯 + +Our [chatroom on Gitter](https://gitter.im) is the best place to ask questions, +share your feedback, or just hang out. + +If you want to report a problem, please [create an issue](https://github.com/freesewing/freesewing/issues/new). diff --git a/packages/plugin-react/package.json b/packages/plugin-react/package.json new file mode 100644 index 00000000000..d85de270574 --- /dev/null +++ b/packages/plugin-react/package.json @@ -0,0 +1,53 @@ +{ + "name": "@freesewing/plugin-react", + "version": "2.0.0-alpha.18", + "description": "A FreeSewing plugin to turn your pattern into a React component", + "author": "Joost De Cock (https://github.com/joostdecock)", + "homepage": "https://freesewing.org/", + "repository": "github:freesewing/freesewing", + "license": "MIT", + "bugs": { + "url": "https://github.com/freesewing/freesewing/issues" + }, + "keywords": [ + "freesewing", + "plugin", + "sewing pattern", + "sewing", + "design", + "parametric design", + "made to measure", + "diy", + "fashion" + ], + "main": "dist/index.js", + "module": "dist/index.mjs", + "scripts": { + "clean": "rimraf dist", + "nodebuild": "BABEL_ENV=production rollup -c -o dist/index.js -f cjs", + "modulebuild": "BABEL_ENV=production rollup -c -o dist/index.mjs -f es", + "build": "npm run clean && npm run nodebuild && npm run modulebuild", + "test": "echo \"plugin-react: No tests configured. Perhaps you'd like to do this?\" && exit 0", + "pubtest": "npm publish --registry http://localhost:6662", + "pubforce": "npm publish", + "symlink": "mkdir -p ./node_modules/@freesewing && cd ./node_modules/@freesewing && ln -s -f ../../../* . && cd -" + }, + "peerDependencies": { + "@freesewing/core": "^2.0.0-alpha.18" + }, + "dependencies": {}, + "devDependencies": {}, + "files": [ + "dist/*", + "README.md", + "package.json" + ], + "publishConfig": { + "access": "public", + "tag": "alpha" + }, + "engines": { + "node": ">=8.0.0", + "npm": ">=5" + } +} diff --git a/packages/plugin-react/rollup.config.js b/packages/plugin-react/rollup.config.js new file mode 100644 index 00000000000..dbee92ea2c2 --- /dev/null +++ b/packages/plugin-react/rollup.config.js @@ -0,0 +1,48 @@ +import babel from "rollup-plugin-babel"; +import resolve from "rollup-plugin-node-resolve"; +import commonjs from "rollup-plugin-commonjs"; +import json from "rollup-plugin-json"; +import minify from "rollup-plugin-babel-minify"; +import yaml from "rollup-plugin-yaml"; +import url from "rollup-plugin-url"; +import postcss from "rollup-plugin-postcss"; +import svgr from "@svgr/rollup"; +import peerDepsExternal from "rollup-plugin-peer-deps-external"; +import { name, version, description, author, license } from "./package.json"; + +export default { + input: "src/index.js", + output: [ + { + file: "dist/index.js", + format: "cjs", + sourcemap: true + }, + { + file: "dist/index.mjs", + format: "es", + sourcemap: true + } + ], + plugins: [ + peerDepsExternal(), + resolve({ modulesOnly: true }), + url(), + commonjs(), + json(), + yaml(), + svgr(), + postcss({ + modules: true + }), + babel({ + exclude: "node_modules/**", + plugins: ["@babel/plugin-proposal-object-rest-spread"] + }), + minify({ + comments: false, + sourceMap: true, + banner: `/**\n * ${name} | v${version}\n * ${description}\n * (c) ${new Date().getFullYear()} ${author}\n * @license ${license}\n */` + }) + ] +}; diff --git a/packages/plugin-react/src/index.js b/packages/plugin-react/src/index.js new file mode 100644 index 00000000000..01b0e82445e --- /dev/null +++ b/packages/plugin-react/src/index.js @@ -0,0 +1,11 @@ +import { version, name } from "../package.json"; + +export default { + name: name, + version: version, + hooks: { + postDraft: function(pattern, props) { + console.log("postDraft hook in react plugin"); + } + } +}; diff --git a/packages/plugin-react/tests/designer.test.js b/packages/plugin-react/tests/designer.test.js new file mode 100644 index 00000000000..e63d1531305 --- /dev/null +++ b/packages/plugin-react/tests/designer.test.js @@ -0,0 +1,73 @@ +import script from "../src/lib/script.js"; +import defs from "../src/lib/snippets.js"; +import freesewing from "freesewing"; +import { version } from "../package.json"; + +let expect = require("chai").expect; +let designerPlugin = require("../dist/index.js"); + +let pattern = new freesewing.Pattern().with(designerPlugin); +pattern.render(); + +it("Should load script", () => { + expect(pattern.svg.script).to.equal(script); +}); + +it("Should set load defs", () => { + expect(pattern.svg.defs).to.equal(defs); +}); + +it("Should set the plugin name:version attribute", () => { + expect(pattern.svg.attributes.get("freesewing:plugin-designer")).to.equal( + version + ); +}); + +it("Should decorate a point", () => { + pattern.parts.testPart = new pattern.Part(); + pattern.parts.testPart.points.testPoint = new freesewing.Point(10, 20); + let a = pattern.parts.testPart.points.testPoint.attributes; + pattern.render(); + expect(a.get("id")).to.equal("1"); + expect(a.get("data-point")).to.equal("testPoint"); + expect(a.get("data-part")).to.equal("testPart"); + let snippet = pattern.parts.testPart.snippets["snippet-testPoint"]; + expect(snippet.def).to.equal("point"); + expect(snippet.anchor).to.equal(pattern.parts.testPart.points.testPoint); + let b = snippet.attributes; + expect(b.get("onmouseover")).to.equal("pointHover(evt)"); + expect(b.get("id")).to.equal("snippet-testPoint"); + expect(b.get("data-point")).to.equal("testPoint"); + expect(b.get("data-part")).to.equal("testPart"); +}); + +it("Should decorate a hidden point", () => { + pattern.parts.testPart.points._hidden = new freesewing.Point(30, 40); + let a = pattern.parts.testPart.points._hidden.attributes; + pattern.render(); + expect(a.get("id")).to.equal("2"); + expect(a.get("data-point")).to.equal("_hidden"); + expect(a.get("data-part")).to.equal("testPart"); +}); + +it("Should decorate a path point", () => { + pattern.parts.testPart.points.from = new freesewing.Point(5, 60); + pattern.parts.testPart.points.cp1 = new freesewing.Point(50, 60); + pattern.parts.testPart.points.cp2 = new freesewing.Point(90, 10); + pattern.parts.testPart.points.to = new freesewing.Point(10, 10); + pattern.parts.testPart.paths.testPath = new freesewing.Path() + .move(pattern.parts.testPart.points.from) + .line(pattern.parts.testPart.points.testPoint) + .curve( + pattern.parts.testPart.points.cp1, + pattern.parts.testPart.points.cp2, + pattern.parts.testPart.points.to + ); + pattern.render(); + let snippet = pattern.parts.testPart.snippets[7]; + expect(snippet.def).to.equal("path-move-point"); + expect(snippet.anchor).to.equal(pattern.parts.testPart.points.from); + let b = snippet.attributes; + expect(b.get("data-path")).to.equal("testPath"); + expect(b.get("data-part")).to.equal("testPart"); +}); diff --git a/packages/plugin-round/package.json b/packages/plugin-round/package.json index 77e885071f0..299b83ca6f1 100644 --- a/packages/plugin-round/package.json +++ b/packages/plugin-round/package.json @@ -33,8 +33,10 @@ "symlink": "mkdir -p ./node_modules/@freesewing && cd ./node_modules/@freesewing && ln -s -f ../../../* . && cd -" }, "peerDependencies": { - "@freesewing/core": "^2.0.0-alpha.17" + "@freesewing/core": "^2.0.0-alpha.18" }, + "dependencies": {}, + "devDependencies": {}, "files": [ "dist/*", "README.md", diff --git a/packages/plugin-scalebox/package.json b/packages/plugin-scalebox/package.json index 13490c6a050..f6c1a148c1c 100644 --- a/packages/plugin-scalebox/package.json +++ b/packages/plugin-scalebox/package.json @@ -33,8 +33,10 @@ "symlink": "mkdir -p ./node_modules/@freesewing && cd ./node_modules/@freesewing && ln -s -f ../../../* . && cd -" }, "peerDependencies": { - "@freesewing/core": "^2.0.0-alpha.17" + "@freesewing/core": "^2.0.0-alpha.18" }, + "dependencies": {}, + "devDependencies": {}, "files": [ "dist/*", "README.md", diff --git a/packages/plugin-sprinkle/package.json b/packages/plugin-sprinkle/package.json index 0656d602554..3005d0589e2 100644 --- a/packages/plugin-sprinkle/package.json +++ b/packages/plugin-sprinkle/package.json @@ -33,8 +33,10 @@ "symlink": "mkdir -p ./node_modules/@freesewing && cd ./node_modules/@freesewing && ln -s -f ../../../* . && cd -" }, "peerDependencies": { - "@freesewing/core": "^2.0.0-alpha.17" + "@freesewing/core": "^2.0.0-alpha.18" }, + "dependencies": {}, + "devDependencies": {}, "files": [ "dist/*", "README.md", diff --git a/packages/plugin-svgattr/package.json b/packages/plugin-svgattr/package.json index 2486dce2646..9fc1fc255ad 100644 --- a/packages/plugin-svgattr/package.json +++ b/packages/plugin-svgattr/package.json @@ -33,8 +33,10 @@ "symlink": "mkdir -p ./node_modules/@freesewing && cd ./node_modules/@freesewing && ln -s -f ../../../* . && cd -" }, "peerDependencies": { - "@freesewing/core": "^2.0.0-alpha.17" + "@freesewing/core": "^2.0.0-alpha.18" }, + "dependencies": {}, + "devDependencies": {}, "files": [ "dist/*", "README.md", diff --git a/packages/plugin-theme/package.json b/packages/plugin-theme/package.json index ea300bfb7a1..9c34c52859a 100644 --- a/packages/plugin-theme/package.json +++ b/packages/plugin-theme/package.json @@ -33,8 +33,10 @@ "symlink": "mkdir -p ./node_modules/@freesewing && cd ./node_modules/@freesewing && ln -s -f ../../../* . && cd -" }, "peerDependencies": { - "@freesewing/core": "^2.0.0-alpha.17" + "@freesewing/core": "^2.0.0-alpha.18" }, + "dependencies": {}, + "devDependencies": {}, "files": [ "dist/*", "README.md", diff --git a/packages/plugin-title/package.json b/packages/plugin-title/package.json index b84108a66a9..20fc85d9746 100644 --- a/packages/plugin-title/package.json +++ b/packages/plugin-title/package.json @@ -33,8 +33,10 @@ "symlink": "mkdir -p ./node_modules/@freesewing && cd ./node_modules/@freesewing && ln -s -f ../../../* . && cd -" }, "peerDependencies": { - "@freesewing/core": "^2.0.0-alpha.17" + "@freesewing/core": "^2.0.0-alpha.18" }, + "dependencies": {}, + "devDependencies": {}, "files": [ "dist/*", "README.md", diff --git a/packages/plugin-validate/package.json b/packages/plugin-validate/package.json index 3f60b54bc27..36ed760a9fd 100644 --- a/packages/plugin-validate/package.json +++ b/packages/plugin-validate/package.json @@ -33,8 +33,10 @@ "symlink": "mkdir -p ./node_modules/@freesewing && cd ./node_modules/@freesewing && ln -s -f ../../../* . && cd -" }, "peerDependencies": { - "@freesewing/core": "^2.0.0-alpha.17" + "@freesewing/core": "^2.0.0-alpha.18" }, + "dependencies": {}, + "devDependencies": {}, "files": [ "dist/*", "README.md", diff --git a/packages/shin/package.json b/packages/shin/package.json index 5d6fd515913..c4452e66894 100644 --- a/packages/shin/package.json +++ b/packages/shin/package.json @@ -33,9 +33,11 @@ "symlink": "mkdir -p ./node_modules/@freesewing && cd ./node_modules/@freesewing && ln -s -f ../../../* . && cd -" }, "peerDependencies": { - "@freesewing/core": "^2.0.0-alpha.17", - "@freesewing/plugin-bundle": "^2.0.0-alpha.17" + "@freesewing/core": "^2.0.0-alpha.18", + "@freesewing/plugin-bundle": "^2.0.0-alpha.18" }, + "dependencies": {}, + "devDependencies": {}, "files": [ "dist/*", "README.md", diff --git a/packages/simon/package.json b/packages/simon/package.json index 89faf045498..c4683a386e2 100644 --- a/packages/simon/package.json +++ b/packages/simon/package.json @@ -33,11 +33,11 @@ "symlink": "mkdir -p ./node_modules/@freesewing && cd ./node_modules/@freesewing && ln -s -f ../../../* . && cd -" }, "peerDependencies": { - "@freesewing/brian": "^2.0.0-alpha.17", - "@freesewing/core": "^2.0.0-alpha.17", - "@freesewing/plugin-bundle": "^2.0.0-alpha.17", - "@freesewing/plugin-buttons": "^2.0.0-alpha.17", - "@freesewing/plugin-flip": "^2.0.0-alpha.17" + "@freesewing/core": "^2.0.0-alpha.18", + "@freesewing/plugin-bundle": "^2.0.0-alpha.18", + "@freesewing/brian": "^2.0.0-alpha.18", + "@freesewing/plugin-buttons": "^2.0.0-alpha.18", + "@freesewing/plugin-flip": "^2.0.0-alpha.18" }, "files": [ "dist/*", diff --git a/packages/sven/package.json b/packages/sven/package.json index c2192615560..0077f193dcb 100644 --- a/packages/sven/package.json +++ b/packages/sven/package.json @@ -33,9 +33,11 @@ "symlink": "mkdir -p ./node_modules/@freesewing && cd ./node_modules/@freesewing && ln -s -f ../../../* . && cd -" }, "peerDependencies": { - "@freesewing/core": "^2.0.0-alpha.17", - "@freesewing/plugin-bundle": "^2.0.0-alpha.17" + "@freesewing/core": "^2.0.0-alpha.18", + "@freesewing/plugin-bundle": "^2.0.0-alpha.18" }, + "dependencies": {}, + "devDependencies": {}, "files": [ "dist/*", "README.md", diff --git a/packages/tamiko/package.json b/packages/tamiko/package.json index e31fdee7a4f..992292555cb 100644 --- a/packages/tamiko/package.json +++ b/packages/tamiko/package.json @@ -33,9 +33,11 @@ "symlink": "mkdir -p ./node_modules/@freesewing && cd ./node_modules/@freesewing && ln -s -f ../../../* . && cd -" }, "peerDependencies": { - "@freesewing/core": "^2.0.0-alpha.17", - "@freesewing/plugin-bundle": "^2.0.0-alpha.17" + "@freesewing/core": "^2.0.0-alpha.18", + "@freesewing/plugin-bundle": "^2.0.0-alpha.18" }, + "dependencies": {}, + "devDependencies": {}, "files": [ "dist/*", "README.md", diff --git a/packages/trayvon/package.json b/packages/trayvon/package.json index 9edae1dfecc..2c9353f8549 100644 --- a/packages/trayvon/package.json +++ b/packages/trayvon/package.json @@ -33,9 +33,11 @@ "symlink": "mkdir -p ./node_modules/@freesewing && cd ./node_modules/@freesewing && ln -s -f ../../../* . && cd -" }, "peerDependencies": { - "@freesewing/core": "^2.0.0-alpha.17", - "@freesewing/plugin-bundle": "^2.0.0-alpha.17" + "@freesewing/core": "^2.0.0-alpha.18", + "@freesewing/plugin-bundle": "^2.0.0-alpha.18" }, + "dependencies": {}, + "devDependencies": {}, "files": [ "dist/*", "README.md", diff --git a/packages/utils/package.json b/packages/utils/package.json index 5ef2a6b92a2..b5824689392 100644 --- a/packages/utils/package.json +++ b/packages/utils/package.json @@ -28,6 +28,9 @@ "pubforce": "npm publish", "symlink": "mkdir -p ./node_modules/@freesewing && cd ./node_modules/@freesewing && ln -s -f ../../../* . && cd -" }, + "peerDependencies": {}, + "dependencies": {}, + "devDependencies": {}, "files": [ "dist/*", "README.md", diff --git a/packages/wahid/package.json b/packages/wahid/package.json index fa7c4c970a3..6e1e77e46d4 100644 --- a/packages/wahid/package.json +++ b/packages/wahid/package.json @@ -33,11 +33,11 @@ "symlink": "mkdir -p ./node_modules/@freesewing && cd ./node_modules/@freesewing && ln -s -f ../../../* . && cd -" }, "peerDependencies": { - "@freesewing/brian": "^2.0.0-alpha.17", - "@freesewing/core": "^2.0.0-alpha.17", - "@freesewing/plugin-bundle": "^2.0.0-alpha.17", - "@freesewing/plugin-buttons": "^2.0.0-alpha.17", - "@freesewing/plugin-round": "^2.0.0-alpha.17" + "@freesewing/core": "^2.0.0-alpha.18", + "@freesewing/plugin-bundle": "^2.0.0-alpha.18", + "@freesewing/brian": "^2.0.0-alpha.18", + "@freesewing/plugin-buttons": "^2.0.0-alpha.18", + "@freesewing/plugin-round": "^2.0.0-alpha.18" }, "files": [ "dist/*",