commit
9fcdbe9398
426 changed files with 16269 additions and 9690 deletions
14
.gitignore
vendored
14
.gitignore
vendored
|
@ -9,7 +9,7 @@ packages/components/Emblem
|
|||
packages/components/Example
|
||||
packages/components/Footer
|
||||
packages/components/Icon
|
||||
packages/components/Linedrawing
|
||||
packages/components/LineDrawing
|
||||
packages/components/Logo
|
||||
packages/components/Navbar
|
||||
packages/components/Ogol
|
||||
|
@ -31,6 +31,9 @@ packages/utils/defaultGist
|
|||
packages/utils/defaultSa
|
||||
packages/utils/formatImperial
|
||||
packages/utils/formatMm
|
||||
packages/utils/measurementAsMm
|
||||
packages/utils/measurementDiffers
|
||||
packages/utils/neckstimate
|
||||
packages/utils/optionDefault
|
||||
packages/utils/optionType
|
||||
packages/utils/roundMm
|
||||
|
@ -40,10 +43,11 @@ packages/utils/sliderStep
|
|||
packages/utils/smallestImperialStep
|
||||
packages/utils/storage
|
||||
packages/utils/tiler
|
||||
packages/utils/measurementAsMm
|
||||
packages/utils/validateEmail
|
||||
packages/utils/validateTld
|
||||
|
||||
packages/*/example/yarn.lock
|
||||
|
||||
# dependencies
|
||||
node_modules
|
||||
|
||||
|
@ -67,3 +71,9 @@ yarn-debug.log*
|
|||
yarn-error.log*
|
||||
lerna-debug.log*
|
||||
packages/core/.nyc_output
|
||||
packages/i18n/sort.sh
|
||||
packages/create-freesewing-pattern/index.js
|
||||
packages/create-freesewing-pattern/lib/cli.js
|
||||
.gitignore
|
||||
scripts/taskrunner.sh
|
||||
scripts/verdaccio.sh
|
||||
|
|
212
CHANGELOG.md
Normal file
212
CHANGELOG.md
Normal file
|
@ -0,0 +1,212 @@
|
|||
# Change log for: FreeSewing (global)
|
||||
|
||||
|
||||
|
||||
## Unreleased
|
||||
|
||||
### components
|
||||
|
||||
#### Changed
|
||||
|
||||
- Added Penelope and Waralee linedrawings
|
||||
|
||||
#### Fixed
|
||||
|
||||
- Fixed display of nested option in SampleConfigurator
|
||||
- Fixed conflicting key values in React components
|
||||
|
||||
### core
|
||||
|
||||
#### Changed
|
||||
|
||||
- The pattern super constructor now sets a `config` property that holds the pattern configuration. This means that unlike before, there is no need to instantiate a pattern to access its config. You can just import the pattern, and it's config property will contain the pattern config.
|
||||
|
||||
### i18n
|
||||
|
||||
#### Added
|
||||
|
||||
- Added translations for Penelope, Waralee, and Simone
|
||||
|
||||
### penelope
|
||||
|
||||
#### Added
|
||||
|
||||
- Added the Penelope Pencil Skirt pattern by @woutervdub
|
||||
|
||||
### simon
|
||||
|
||||
#### Changed
|
||||
|
||||
- [#123](https://github.com/freesewing/freesewing/issues/123): Added a box pleat option to Simon
|
||||
- Added the `backDarts` option to control the inclusion of back darts
|
||||
- Added the `backDartsShaping` option to control the amount of shaping by the back darts
|
||||
- Changed the defaults to slightly reduce the ease and adapt the sleevecap
|
||||
|
||||
#### Fixed
|
||||
|
||||
- Fixed an issue where the store wasn't properly initialized causing hips and waist ease to be set incorrectly
|
||||
- Added a missing paperless dimension for the waist
|
||||
- Fixed an issue where the split yoke option was not taken into account correctly
|
||||
|
||||
### simone
|
||||
|
||||
#### Added
|
||||
|
||||
- Added the Simone shirt pattern
|
||||
|
||||
### utils
|
||||
|
||||
#### Added
|
||||
|
||||
- Added backend methods for administration
|
||||
|
||||
### waralee
|
||||
|
||||
#### Added
|
||||
|
||||
- Added the Waralee wrap Pants pattern by @woutervdub
|
||||
|
||||
|
||||
## 2.0.4 (2019-09-27)
|
||||
|
||||
### carlton
|
||||
|
||||
#### Fixed
|
||||
|
||||
- [#108](https://github.com/freesewing/freesewing/issues/108): Fixed incorrect width of the Carlton tail
|
||||
|
||||
### components
|
||||
|
||||
#### Added
|
||||
|
||||
- Advanced options and settings are now hidden by default in DraftConfigurator
|
||||
|
||||
#### Fixed
|
||||
|
||||
- [#104](https://github.com/freesewing/freesewing/issues/104): Fixed incorrect embed setting on Workbench pattern export
|
||||
|
||||
|
||||
## 2.0.3 (2019-09-15)
|
||||
|
||||
### bruce
|
||||
|
||||
#### Fixed
|
||||
|
||||
- [#106](https://github.com/freesewing/freesewing/issues/106): Fix incorrect hem allowance
|
||||
|
||||
### components
|
||||
|
||||
#### Changed
|
||||
|
||||
- Tweaked DraftConfigurator tags to match CSS rules after frontend upgrade to react-intl v3
|
||||
|
||||
### create-freesewing-pattern
|
||||
|
||||
#### Fixed
|
||||
|
||||
- Updated example package.json to use latest tag rather than beta
|
||||
|
||||
### utils
|
||||
|
||||
#### Fixed
|
||||
|
||||
- Fix measurementDiffers to pass breasts parameter to necstimate
|
||||
|
||||
|
||||
## 2.0.2 (2019-09-06)
|
||||
|
||||
### benjamin
|
||||
|
||||
#### Fixed
|
||||
|
||||
- Added bandLength option to fit optiongroup (it was missing)
|
||||
|
||||
### components
|
||||
|
||||
#### Fixed
|
||||
|
||||
- [#104](https://github.com/freesewing/freesewing.org/issues/104): Changed `onDragEnd` to `onChangeCommitted` in slider element (change in material-ui API when slider came out of beta)
|
||||
- Workbench now also lets you preload a `withBreasts` set of measurements
|
||||
- DraftConfigurator now properly styles pattern options 3 levels deep
|
||||
- [#105](https://github.com/freesewing/freesewing.org/issues/105): Moved state change in render loop to useEffect
|
||||
|
||||
### create-freesewing-pattern
|
||||
|
||||
#### Changed
|
||||
|
||||
- Updated dependencies
|
||||
|
||||
#### Fixed
|
||||
|
||||
- Added missing `file-saver` dependency
|
||||
|
||||
### css-theme
|
||||
|
||||
#### Fixed
|
||||
|
||||
- Updated styles for DraftConfigurator component for pattern options 3 levels deep
|
||||
|
||||
### i18n
|
||||
|
||||
#### Added
|
||||
|
||||
- [#90](https://github.com/freesewing/freesewing/issues/90): Added missing option translations for Benjamin, Florent, Sandy, Shin, and Theo
|
||||
|
||||
### jaeger
|
||||
|
||||
#### Fixed
|
||||
|
||||
- [#76](https://github.com/freesewing/freesewing.org/issues/76): Fixed a typo in Jaeger that was causing the side vent length to be wrong
|
||||
|
||||
### simon
|
||||
|
||||
#### Fixed
|
||||
|
||||
- [#100](https://github.com/freesewing/freesewing.org/issues/100): Updated simon with more sensible defaults for ease options
|
||||
- [#102](https://github.com/freesewing/freesewing.org/issues/102): Fixed 'Snippets not defined' error when drafting a seperate button placket
|
||||
- [#103](https://github.com/freesewing/freesewing.org/issues/103): Fixed 'hemSa not defined' when drafting paperless Simon without seam allowance
|
||||
|
||||
### utils
|
||||
|
||||
#### Fixed
|
||||
|
||||
- Removed lingering debug statement in formatImperial
|
||||
|
||||
|
||||
## 2.0.1 (2019-09-01)
|
||||
|
||||
### models
|
||||
|
||||
#### Added
|
||||
|
||||
- Expanded the size ranges available.
|
||||
- Added the `withBreasts` models which were missing in earlier releases.
|
||||
|
||||
#### Changed
|
||||
|
||||
- The models data is now based on the data from the `neckstimate` method in the utils package.
|
||||
|
||||
#### Fixed
|
||||
|
||||
- [#86](https://github.com/freesewing/freesewing/issues/86): The `seatCircumference` measurement was missing, thus making it unavailable on the website
|
||||
|
||||
### theo
|
||||
|
||||
#### Fixed
|
||||
|
||||
- [#78](https://github.com/freesewing/freesewing/issues/78): Removed inherited notches from fly shield and side piece.
|
||||
|
||||
### utils
|
||||
|
||||
#### Added
|
||||
|
||||
- The `measurementDiffers` method is new.
|
||||
|
||||
|
||||
|
||||
## 2.0.0 (2019-08-25)
|
||||
|
||||
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.
|
15
README.md
15
README.md
|
@ -1,8 +1,3 @@
|
|||
> **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/).
|
||||
|
||||
<p align="center">
|
||||
<a title="Visit freesewing.org" href="https://freesewing.org/">
|
||||
<img src="https://freesewing.org/img/logo/black.svg" align="center" width="150px" alt="Freesewing logo"/>
|
||||
|
@ -38,7 +33,7 @@
|
|||
><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://gitter.im/freesewing/freesewing"
|
||||
href="https://gitter.im/freesewing/chat"
|
||||
title="Chat with us on Gitter"
|
||||
><img src="https://img.shields.io/badge/%F3%A0%80%A0-Chat%20with%20us-CA0547.svg?logo=gitter&logoColor=white&logoWidth=15"
|
||||
alt="Chat with us on Gitter"/>
|
||||
|
@ -56,7 +51,7 @@
|
|||
|
||||
## About freesewing
|
||||
|
||||
FreeSewing is JavaScript library for made-to-measure sewing patterns.
|
||||
FreeSewing is on open source platform for made-to-measure sewing patterns.
|
||||
|
||||
## Links
|
||||
|
||||
|
@ -76,8 +71,6 @@ FreeSewing is JavaScript library for made-to-measure sewing patterns.
|
|||
- Renders to SVG
|
||||
- Run in the browser as well as on the server with Node.js
|
||||
|
||||
## Getting started
|
||||
## Documentation
|
||||
|
||||
This repository is a rewrite of [freesewing/core](https://github.com/freesewing/core) in JavaScript.
|
||||
|
||||
It is an ongoing project, and not ready for prime-time yet. Watch this space.
|
||||
Please go to [freesewing.dev](https://freesewing.dev) for our developer documentation.
|
||||
|
|
127
config/changelog.yaml
Normal file
127
config/changelog.yaml
Normal file
|
@ -0,0 +1,127 @@
|
|||
Unreleased:
|
||||
date:
|
||||
Added:
|
||||
i18n:
|
||||
- Added translations for Penelope, Waralee, and Simone
|
||||
simone:
|
||||
- Added the Simone shirt pattern
|
||||
penelope:
|
||||
- Added the Penelope Pencil Skirt pattern by @woutervdub
|
||||
utils:
|
||||
- Added backend methods for administration
|
||||
waralee:
|
||||
- Added the Waralee wrap Pants pattern by @woutervdub
|
||||
Changed:
|
||||
core:
|
||||
- The pattern super constructor now sets a `config` property that
|
||||
holds the pattern configuration. This means that unlike before, there
|
||||
is no need to instantiate a pattern to access its config. You can just
|
||||
import the pattern, and it's config property will contain the pattern config.
|
||||
components:
|
||||
- Added Penelope and Waralee linedrawings
|
||||
simon:
|
||||
- "[#123](https://github.com/freesewing/freesewing/issues/123):
|
||||
Added a box pleat option to Simon"
|
||||
- Added the `backDarts` option to control the inclusion of back darts
|
||||
- Added the `backDartsShaping` option to control the amount of shaping by the back darts
|
||||
- Changed the defaults to slightly reduce the ease and adapt the sleevecap
|
||||
|
||||
Deprecated:
|
||||
patterns:
|
||||
- The [@freesewing/patterns](https://www.npmjs.com/package/@freesewing/patterns)
|
||||
package has been deprecated. Please import our patterns individually.
|
||||
Removed:
|
||||
Fixed:
|
||||
components:
|
||||
- Fixed display of nested option in SampleConfigurator
|
||||
- Fixed conflicting key values in React components
|
||||
simon:
|
||||
- Fixed an issue where the store wasn't properly initialized causing hips and waist ease
|
||||
to be set incorrectly
|
||||
- Added a missing paperless dimension for the waist
|
||||
- Fixed an issue where the split yoke option was not taken into account correctly
|
||||
Security:
|
||||
|
||||
2.0.4:
|
||||
date: 2019-09-27
|
||||
Added:
|
||||
components:
|
||||
- Advanced options and settings are now hidden by default in DraftConfigurator
|
||||
Fixed:
|
||||
carlton:
|
||||
- "[#108](https://github.com/freesewing/freesewing/issues/108):
|
||||
Fixed incorrect width of the Carlton tail"
|
||||
components:
|
||||
- "[#104](https://github.com/freesewing/freesewing/issues/104):
|
||||
Fixed incorrect embed setting on Workbench pattern export"
|
||||
|
||||
2.0.3:
|
||||
date: 2019-09-15
|
||||
Changed:
|
||||
components:
|
||||
- Tweaked DraftConfigurator tags to match CSS rules after frontend upgrade to react-intl v3
|
||||
Fixed:
|
||||
bruce:
|
||||
- "[#106](https://github.com/freesewing/freesewing/issues/106):
|
||||
Fix incorrect hem allowance"
|
||||
create-freesewing-pattern:
|
||||
- Updated example package.json to use latest tag rather than beta
|
||||
utils:
|
||||
- Fix measurementDiffers to pass breasts parameter to necstimate
|
||||
|
||||
2.0.2:
|
||||
date: 2019-09-06
|
||||
Added:
|
||||
i18n:
|
||||
- "[#90](https://github.com/freesewing/freesewing/issues/90):
|
||||
Added missing option translations for Benjamin, Florent, Sandy, Shin, and Theo"
|
||||
Changed:
|
||||
create-freesewing-pattern:
|
||||
- Updated dependencies
|
||||
Fixed:
|
||||
benjamin:
|
||||
- Added bandLength option to fit optiongroup (it was missing)
|
||||
css-theme:
|
||||
- Updated styles for DraftConfigurator component for pattern options 3 levels deep
|
||||
components:
|
||||
- "[#104](https://github.com/freesewing/freesewing.org/issues/104):
|
||||
Changed `onDragEnd` to `onChangeCommitted` in slider element
|
||||
(change in material-ui API when slider came out of beta)"
|
||||
- Workbench now also lets you preload a `withBreasts` set of measurements
|
||||
- DraftConfigurator now properly styles pattern options 3 levels deep
|
||||
- "[#105](https://github.com/freesewing/freesewing.org/issues/105):
|
||||
Moved state change in render loop to useEffect"
|
||||
create-freesewing-pattern:
|
||||
- Added missing `file-saver` dependency
|
||||
jaeger:
|
||||
- "[#76](https://github.com/freesewing/freesewing.org/issues/76):
|
||||
Fixed a typo in Jaeger that was causing the side vent length to be wrong"
|
||||
simon:
|
||||
- "[#100](https://github.com/freesewing/freesewing.org/issues/100):
|
||||
Updated simon with more sensible defaults for ease options"
|
||||
- "[#102](https://github.com/freesewing/freesewing.org/issues/102):
|
||||
Fixed 'Snippets not defined' error when drafting a seperate button placket"
|
||||
- "[#103](https://github.com/freesewing/freesewing.org/issues/103):
|
||||
Fixed 'hemSa not defined' when drafting paperless Simon without seam allowance"
|
||||
utils:
|
||||
- Removed lingering debug statement in formatImperial
|
||||
|
||||
2.0.1:
|
||||
date: 2019-09-01
|
||||
Added:
|
||||
utils:
|
||||
- The `measurementDiffers` method is new.
|
||||
models:
|
||||
- Expanded the size ranges available.
|
||||
- Added the `withBreasts` models which were missing in earlier releases.
|
||||
Changed:
|
||||
models:
|
||||
- The models data is now based on the data from the `neckstimate` method in the utils package.
|
||||
Fixed:
|
||||
theo:
|
||||
- "[#78](https://github.com/freesewing/freesewing/issues/78):
|
||||
Removed inherited notches from fly shield and side piece."
|
||||
models:
|
||||
- "[#86](https://github.com/freesewing/freesewing/issues/86):
|
||||
The `seatCircumference` measurement was missing, thus making it unavailable on the website"
|
||||
|
|
@ -117,39 +117,14 @@ jaeger:
|
|||
peer:
|
||||
"@freesewing/bent": "^{{version}}"
|
||||
"@freesewing/plugin-buttons": "^{{version}}"
|
||||
models:
|
||||
peer:
|
||||
"@freesewing/utils": "^{{version}}"
|
||||
mui-theme:
|
||||
peer:
|
||||
"@material-ui/core": "^4.0.1"
|
||||
"react": "^16.8"
|
||||
"react-dom": "^16.8"
|
||||
pattern-info:
|
||||
peer:
|
||||
"@freesewing/core": "^{{version}}"
|
||||
"@freesewing/plugin-bundle": "^{{version}}"
|
||||
patterns:
|
||||
_:
|
||||
"@freesewing/aaron": "^{{version}}"
|
||||
"@freesewing/benjamin": "^{{version}}"
|
||||
"@freesewing/bent": "^{{version}}"
|
||||
"@freesewing/brian": "^{{version}}"
|
||||
"@freesewing/bruce": "^{{version}}"
|
||||
"@freesewing/carlita": "^{{version}}"
|
||||
"@freesewing/carlton": "^{{version}}"
|
||||
"@freesewing/cathrin": "^{{version}}"
|
||||
"@freesewing/florent": "^{{version}}"
|
||||
"@freesewing/huey": "^{{version}}"
|
||||
"@freesewing/hugo": "^{{version}}"
|
||||
"@freesewing/jaeger": "^{{version}}"
|
||||
"@freesewing/shin": "^{{version}}"
|
||||
"@freesewing/simon": "^{{version}}"
|
||||
"@freesewing/sven": "^{{version}}"
|
||||
"@freesewing/tamiko": "^{{version}}"
|
||||
"@freesewing/trayvon": "^{{version}}"
|
||||
"@freesewing/wahid": "^{{version}}"
|
||||
peer:
|
||||
"@freesewing/core": "^{{version}}"
|
||||
"@freesewing/plugin-bundle": "^{{version}}"
|
||||
"@freesewing/plugin-buttons": "^{{version}}"
|
||||
plugin-bundle:
|
||||
_:
|
||||
"@freesewing/plugin-cutonfold": "^{{version}}"
|
||||
|
@ -165,6 +140,13 @@ simon:
|
|||
"@freesewing/brian": "^{{version}}"
|
||||
"@freesewing/plugin-buttons": "^{{version}}"
|
||||
"@freesewing/plugin-flip": "^{{version}}"
|
||||
simone:
|
||||
peer:
|
||||
"@freesewing/brian": "^{{version}}"
|
||||
"@freesewing/simon": "^{{version}}"
|
||||
"@freesewing/plugin-buttons": "^{{version}}"
|
||||
"@freesewing/plugin-flip": "^{{version}}"
|
||||
"@freesewing/plugin-bust": "^{{version}}"
|
||||
utils:
|
||||
peer:
|
||||
"tlds": "^0.203.1"
|
||||
|
|
|
@ -18,8 +18,8 @@ i18n: "Translations for the FreeSewing project"
|
|||
jaeger: "A FreeSewing pattern for a sport coat style jacket"
|
||||
models: "Body measurements data for a range of default sizes"
|
||||
mui-theme: "A Material-UI theme for FreeSewing web UIs"
|
||||
patterns: "An umbrella package for all FreeSewing patterns"
|
||||
pattern-info: "Information about available freesewing patterns"
|
||||
penelope: "A FreeSewing pattern for a pencil skirt"
|
||||
plugin-banner: "A FreeSewing plugin to repeat text on a path"
|
||||
plugin-bundle: "An umbrella package of 8 essential FreeSewing build-time plugins"
|
||||
plugin-bust: "A FreeSewing plugin that helps with bust-adjusting menswear patterns"
|
||||
|
@ -44,6 +44,7 @@ rendertest: "A FreeSewing pattern to test (y)our render engine our CSS"
|
|||
sandy: "A FreeSewing pattern for a circle skirt"
|
||||
shin: "A FreeSewing pattern for swim trunks"
|
||||
simon: "A FreeSewing pattern for a button down shirt"
|
||||
simone: "A FreeSewing pattern for a button down shirt (Simone = Simon for people with breasts)"
|
||||
sven: "A FreeSewing pattern for a straightforward sweater"
|
||||
tamiko: "A FreeSewing pattern for a zero-waste top"
|
||||
theo: "A FreeSewing pattern for classic trousers"
|
||||
|
@ -51,3 +52,4 @@ trayvon: "A FreeSewing pattern for a tie"
|
|||
tutorial: "A FreeSewing pattern for a baby bib that's used in our tutorial"
|
||||
utils: "A collection of utilities shared across freesewing frontend projects"
|
||||
wahid: "A FreeSewing pattern for a classic fitted waistcoat"
|
||||
waralee: "A FreeSewing pattern for wrap pants"
|
||||
|
|
|
@ -70,6 +70,9 @@ packageJson:
|
|||
- "defaultSa/*"
|
||||
- "formatImperial/*"
|
||||
- "formatMm/*"
|
||||
- "measurementAsMm/*"
|
||||
- "measurementDiffers/*"
|
||||
- "neckstimate/*"
|
||||
- "optionDefault/*"
|
||||
- "optionType/*"
|
||||
- "roundMm/*"
|
||||
|
@ -79,7 +82,6 @@ packageJson:
|
|||
- "smallestImperialStep/*"
|
||||
- "storage/*"
|
||||
- "tiler/*"
|
||||
- "measurementAsMm/*"
|
||||
- "validateEmail/*"
|
||||
- "validateTld/*"
|
||||
|
||||
|
|
11
config/templates/changelog.dflt.md
Normal file
11
config/templates/changelog.dflt.md
Normal file
|
@ -0,0 +1,11 @@
|
|||
# Change log for: {{{fullname}}}
|
||||
|
||||
|
||||
{{{changelog}}}
|
||||
|
||||
## 2.0.0 (2019-08-25)
|
||||
|
||||
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.
|
|
@ -21,7 +21,7 @@
|
|||
"files": ["dist/*", "README.md", "package.json"],
|
||||
"publishConfig": {
|
||||
"access": "public",
|
||||
"tag": "beta"
|
||||
"tag": "next"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=8.0.0",
|
||||
|
|
|
@ -1,14 +1,9 @@
|
|||
> **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/chat).
|
||||
|
||||
<p align="center">
|
||||
<a title="Go to freesewing.org" href="https://freesewing.org/"><img src="https://freesewing.org/img/logo/black.svg" align="center" width="150px" alt="Freesewing logo"/></a>
|
||||
<br>
|
||||
<a href="https://freesewing.org/">FreeSewing v2</a>
|
||||
</p>
|
||||
<p align="center">A JavaScript library for made-to-measure sewing patterns</p>
|
||||
<p align="center">An open source platform for made-to-measure sewing patterns</p>
|
||||
{{{badges}}}
|
||||
|
||||
# {{{fullname}}}
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
{
|
||||
"version": "2.0.0-beta.43",
|
||||
"version": "2.1.0-alpha.0",
|
||||
"npmClient": "yarn",
|
||||
"command": {
|
||||
"publish": {
|
||||
|
|
23
package.json
23
package.json
|
@ -63,26 +63,26 @@
|
|||
"@storybook/addon-notes": "^5.0.10",
|
||||
"@storybook/react": "^5.0.10",
|
||||
"@svgr/rollup": "^4.3.2",
|
||||
"ava": "^1.2.1",
|
||||
"ava": "^2.3.0",
|
||||
"babel-loader": "^8.0.5",
|
||||
"chai": "^4.1.2",
|
||||
"chai-string": "^1.4.0",
|
||||
"chalk": "^2.4.2",
|
||||
"codecov": "^3.1.0",
|
||||
"cross-env": "^5.1.4",
|
||||
"eslint": "^5.0.1",
|
||||
"cross-env": "^6.0.0",
|
||||
"eslint": "^6.3.0",
|
||||
"eslint-config-prettier": "^6.1.0",
|
||||
"eslint-config-standard": "^11.0.0",
|
||||
"eslint-config-standard": "^14.1.0",
|
||||
"eslint-config-standard-react": "^6.0.0",
|
||||
"eslint-plugin-import": "^2.13.0",
|
||||
"eslint-plugin-node": "^7.0.1",
|
||||
"eslint-plugin-prettier": "^2.7.0",
|
||||
"eslint-plugin-node": "^10.0.0",
|
||||
"eslint-plugin-prettier": "^3.1.0",
|
||||
"eslint-plugin-promise": "^4.0.0",
|
||||
"eslint-plugin-react": "^7.10.0",
|
||||
"eslint-plugin-standard": "^3.1.0",
|
||||
"eslint-plugin-standard": "^4.0.1",
|
||||
"fs-extra": "^8.1.0",
|
||||
"gh-pages": "^1.2.0",
|
||||
"husky": "^1.3.1",
|
||||
"husky": "^3.0.5",
|
||||
"js-yaml": "^3.13.1",
|
||||
"jsonlint": "^1.6.3",
|
||||
"lerna": "^3.13.3",
|
||||
|
@ -98,13 +98,13 @@
|
|||
"react-dom": "^16.4.1",
|
||||
"react-intl": "^2.8.0",
|
||||
"react-scripts": "^3.0.0",
|
||||
"rimraf": "^2.6.3",
|
||||
"rimraf": "^3.0.0",
|
||||
"rmfr": "^2.0.0",
|
||||
"rollup": "1.17.0",
|
||||
"rollup-plugin-babel": "^4.3.2",
|
||||
"rollup-plugin-babel-minify": "^8.0.0",
|
||||
"rollup-plugin-commonjs": "10.0.1",
|
||||
"rollup-plugin-filesize": "^4.0.1",
|
||||
"rollup-plugin-filesize": "^6.2.0",
|
||||
"rollup-plugin-json": "^4.0.0",
|
||||
"rollup-plugin-node-resolve": "5.2.0",
|
||||
"rollup-plugin-peer-deps-external": "^2.2.0",
|
||||
|
@ -113,7 +113,7 @@
|
|||
"rollup-plugin-terser": "^4.0.4",
|
||||
"rollup-plugin-url": "^2.2.1",
|
||||
"rollup-plugin-yaml": "^1.1.0",
|
||||
"standard": "^12.0.1",
|
||||
"standard": "^14.0.2",
|
||||
"storybook-addon-material-ui": "^0.9.0-alpha.18",
|
||||
"uglifycss": "^0.0.29",
|
||||
"verdaccio": ">=3.12.0"
|
||||
|
@ -137,7 +137,6 @@
|
|||
"@freesewing/jaeger": "file:packages/jaeger",
|
||||
"@freesewing/models": "file:packages/models",
|
||||
"@freesewing/mui-theme": "file:packages/mui-theme",
|
||||
"@freesewing/patterns": "file:packages/patterns",
|
||||
"@freesewing/plugin-banner": "file:packages/plugin-banner",
|
||||
"@freesewing/plugin-bundle": "file:packages/plugin-bundle",
|
||||
"@freesewing/plugin-bust": "file:packages/plugin-bust",
|
||||
|
|
36
packages/aaron/CHANGELOG.md
Normal file
36
packages/aaron/CHANGELOG.md
Normal file
|
@ -0,0 +1,36 @@
|
|||
# Change log for: @freesewing/aaron
|
||||
|
||||
|
||||
## Unreleased
|
||||
|
||||
**Note:** Version bump only for package aaron
|
||||
|
||||
|
||||
## 2.0.4 (2019-09-27)
|
||||
|
||||
**Note:** Version bump only for package aaron
|
||||
|
||||
|
||||
## 2.0.3 (2019-09-15)
|
||||
|
||||
**Note:** Version bump only for package aaron
|
||||
|
||||
|
||||
## 2.0.2 (2019-09-06)
|
||||
|
||||
**Note:** Version bump only for package aaron
|
||||
|
||||
|
||||
## 2.0.1 (2019-09-01)
|
||||
|
||||
**Note:** Version bump only for package aaron
|
||||
|
||||
|
||||
|
||||
|
||||
## 2.0.0 (2019-08-25)
|
||||
|
||||
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.
|
|
@ -1,14 +1,9 @@
|
|||
> **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/chat).
|
||||
|
||||
<p align="center">
|
||||
<a title="Go to freesewing.org" href="https://freesewing.org/"><img src="https://freesewing.org/img/logo/black.svg" align="center" width="150px" alt="Freesewing logo"/></a>
|
||||
<br>
|
||||
<a href="https://freesewing.org/">FreeSewing v2</a>
|
||||
</p>
|
||||
<p align="center">A JavaScript library for made-to-measure sewing patterns</p>
|
||||
<p align="center">An open source platform for made-to-measure sewing patterns</p>
|
||||
<p align='center'><a
|
||||
href="https://www.npmjs.com/package/@freesewing/aaron"
|
||||
title="@freesewing/aaron on NPM"
|
||||
|
|
|
@ -4,26 +4,27 @@
|
|||
"version": "0.0.0",
|
||||
"private": true,
|
||||
"dependencies": {
|
||||
"@freesewing/components": "beta",
|
||||
"@freesewing/core": "beta",
|
||||
"@freesewing/css-theme": "beta",
|
||||
"@freesewing/i18n": "beta",
|
||||
"@freesewing/models": "beta",
|
||||
"@freesewing/mui-theme": "beta",
|
||||
"@freesewing/pattern-info": "beta",
|
||||
"@freesewing/plugin-bundle": "beta",
|
||||
"@freesewing/plugin-theme": "beta",
|
||||
"@freesewing/plugin-i18n": "beta",
|
||||
"@freesewing/plugin-svgattr": "beta",
|
||||
"@freesewing/utils": "beta",
|
||||
"@material-ui/core": "^4.0.1",
|
||||
"@material-ui/icons": "^4.0.1",
|
||||
"@material-ui/lab": "^v4.0.0-alpha.14",
|
||||
"@freesewing/components": "latest",
|
||||
"@freesewing/core": "latest",
|
||||
"@freesewing/css-theme": "latest",
|
||||
"@freesewing/i18n": "latest",
|
||||
"@freesewing/models": "latest",
|
||||
"@freesewing/mui-theme": "latest",
|
||||
"@freesewing/pattern-info": "latest",
|
||||
"@freesewing/plugin-bundle": "latest",
|
||||
"@freesewing/plugin-theme": "latest",
|
||||
"@freesewing/plugin-i18n": "latest",
|
||||
"@freesewing/plugin-svgattr": "latest",
|
||||
"@freesewing/utils": "latest",
|
||||
"@material-ui/core": "^4.4.0",
|
||||
"@material-ui/icons": "^4.2.1",
|
||||
"@material-ui/lab": "^v4.0.0-alpha.25",
|
||||
"pattern": "link:..",
|
||||
"prismjs": "1.16.0",
|
||||
"react": "^16.8",
|
||||
"react-dom": "^16.8",
|
||||
"react-scripts": "^3.0.0",
|
||||
"prismjs": "1.17.1",
|
||||
"react": "^16.9",
|
||||
"react-dom": "^16.9",
|
||||
"react-scripts": "^3.1.1",
|
||||
"file-saver": "^2.0.2",
|
||||
"typeface-roboto-condensed": "latest"
|
||||
},
|
||||
"scripts": {
|
||||
|
@ -42,6 +43,6 @@
|
|||
"not op_mini all"
|
||||
],
|
||||
"devDependencies": {
|
||||
"babel-plugin-prismjs": "1.0.2"
|
||||
"babel-plugin-prismjs": "1.1.1"
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1015,6 +1015,11 @@
|
|||
resolved "https://registry.yarnpkg.com/@freesewing/plugin-svgattr/-/plugin-svgattr-2.0.0-beta.12.tgz#b6fa094bc2189dd4492e52e3a70b63c2eacccbf6"
|
||||
integrity sha512-5AD6yj1oGKTO/xW43CtT9h0Wt9wtg1uI6YB1JsAm4IvnpAlqeHTye/NrbQg22GV+6ERrgNEZ5F3lUh97By5Csw==
|
||||
|
||||
"@freesewing/plugin-theme@beta":
|
||||
version "2.0.0"
|
||||
resolved "https://registry.yarnpkg.com/@freesewing/plugin-theme/-/plugin-theme-2.0.0.tgz#2186cd5a995b4e64953f1a979f138f5b2c5ed76f"
|
||||
integrity sha512-dKxJi8sz6/fs9Cx3qeOMECEwkqtsH0r4yKVxtZGCnq1jt54VlegwV7QaB1nxxGgmJuzjOKw6Fxj94ymkcZkkPg==
|
||||
|
||||
"@freesewing/plugin-title@^2.0.0-beta.12":
|
||||
version "2.0.0-beta.12"
|
||||
resolved "https://registry.yarnpkg.com/@freesewing/plugin-title/-/plugin-title-2.0.0-beta.12.tgz#2d6190914fb01cf3b3e2a05d37d1ebfc0440ac8b"
|
||||
|
@ -3875,14 +3880,16 @@ eslint-scope@^4.0.0, eslint-scope@^4.0.3:
|
|||
estraverse "^4.1.1"
|
||||
|
||||
eslint-utils@^1.3.1:
|
||||
version "1.3.1"
|
||||
resolved "https://registry.yarnpkg.com/eslint-utils/-/eslint-utils-1.3.1.tgz#9a851ba89ee7c460346f97cf8939c7298827e512"
|
||||
integrity sha512-Z7YjnIldX+2XMcjr7ZkgEsOj/bREONV60qYeB/bjMAqqqZ4zxKyWX+BOUkdmRmA9riiIPVvo5x86m5elviOk0Q==
|
||||
version "1.4.2"
|
||||
resolved "https://registry.yarnpkg.com/eslint-utils/-/eslint-utils-1.4.2.tgz#166a5180ef6ab7eb462f162fd0e6f2463d7309ab"
|
||||
integrity sha512-eAZS2sEUMlIeCjBeubdj45dmBHQwPHWyBcT1VSYB7o9x9WRRqKxyUoiXlRjyAwzN7YEzHJlYg0NmzDRWx6GP4Q==
|
||||
dependencies:
|
||||
eslint-visitor-keys "^1.0.0"
|
||||
|
||||
eslint-visitor-keys@^1.0.0:
|
||||
version "1.0.0"
|
||||
resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-1.0.0.tgz#3f3180fb2e291017716acb4c9d6d5b5c34a6a81d"
|
||||
integrity sha512-qzm/XxIbxm/FHyH341ZrbnMUpe+5Bocte9xkmFMzPMjRaZMcXww+MpBptFvtU+79L362nqiLhekCxCxDPaUMBQ==
|
||||
version "1.1.0"
|
||||
resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-1.1.0.tgz#e2a82cea84ff246ad6fb57f9bde5b46621459ec2"
|
||||
integrity sha512-8y9YjtM1JBJU/A9Kc+SbaOV4y29sSWckBwMHa+FGtVj5gN/sbnKDf6xJUl+8g7FAij9LVaP8C24DUiH/f/2Z9A==
|
||||
|
||||
eslint@^5.16.0:
|
||||
version "5.16.0"
|
||||
|
@ -7257,7 +7264,7 @@ path-type@^3.0.0:
|
|||
pify "^3.0.0"
|
||||
|
||||
"pattern@link:..":
|
||||
version "2.0.0-beta.29"
|
||||
version "2.0.0"
|
||||
|
||||
pbkdf2@^3.0.3:
|
||||
version "3.0.17"
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
{
|
||||
"name": "@freesewing/aaron",
|
||||
"version": "2.0.0-beta.43",
|
||||
"version": "2.1.0-alpha.0",
|
||||
"description": "A FreeSewing pattern for a A-shirt or tank top",
|
||||
"author": "Joost De Cock <joost@decock.org> (https://github.com/joostdecock)",
|
||||
"homepage": "https://freesewing.org/",
|
||||
|
@ -33,9 +33,9 @@
|
|||
"netlify": "echo \"Not configured yet\""
|
||||
},
|
||||
"peerDependencies": {
|
||||
"@freesewing/core": "^2.0.0-beta.43",
|
||||
"@freesewing/plugin-bundle": "^2.0.0-beta.43",
|
||||
"@freesewing/brian": "^2.0.0-beta.43"
|
||||
"@freesewing/core": "^2.1.0-alpha.0",
|
||||
"@freesewing/plugin-bundle": "^2.1.0-alpha.0",
|
||||
"@freesewing/brian": "^2.1.0-alpha.0"
|
||||
},
|
||||
"dependencies": {},
|
||||
"devDependencies": {
|
||||
|
@ -46,14 +46,14 @@
|
|||
"eslint": "^5.16.0",
|
||||
"babel-jest": "24.7.1",
|
||||
"jest": "24.7.1",
|
||||
"@freesewing/components": "^2.0.0-beta.43",
|
||||
"@freesewing/css-theme": "^2.0.0-beta.43",
|
||||
"@freesewing/i18n": "^2.0.0-beta.43",
|
||||
"@freesewing/mui-theme": "^2.0.0-beta.43",
|
||||
"@freesewing/plugin-bust": "^2.0.0-beta.43",
|
||||
"@freesewing/plugin-buttons": "^2.0.0-beta.43",
|
||||
"@freesewing/plugin-flip": "^2.0.0-beta.43",
|
||||
"@freesewing/utils": "^2.0.0-beta.43",
|
||||
"@freesewing/components": "^2.1.0-alpha.0",
|
||||
"@freesewing/css-theme": "^2.1.0-alpha.0",
|
||||
"@freesewing/i18n": "^2.1.0-alpha.0",
|
||||
"@freesewing/mui-theme": "^2.1.0-alpha.0",
|
||||
"@freesewing/plugin-bust": "^2.1.0-alpha.0",
|
||||
"@freesewing/plugin-buttons": "^2.1.0-alpha.0",
|
||||
"@freesewing/plugin-flip": "^2.1.0-alpha.0",
|
||||
"@freesewing/utils": "^2.1.0-alpha.0",
|
||||
"@svgr/rollup": "^2.4.1",
|
||||
"cross-env": "^5.1.4",
|
||||
"gh-pages": "^1.2.0",
|
||||
|
@ -81,7 +81,7 @@
|
|||
],
|
||||
"publishConfig": {
|
||||
"access": "public",
|
||||
"tag": "beta"
|
||||
"tag": "next"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=8.0.0",
|
||||
|
|
36
packages/benjamin/CHANGELOG.md
Normal file
36
packages/benjamin/CHANGELOG.md
Normal file
|
@ -0,0 +1,36 @@
|
|||
# Change log for: @freesewing/benjamin
|
||||
|
||||
|
||||
## Unreleased
|
||||
|
||||
**Note:** Version bump only for package benjamin
|
||||
|
||||
|
||||
## 2.0.4 (2019-09-27)
|
||||
|
||||
**Note:** Version bump only for package benjamin
|
||||
|
||||
|
||||
## 2.0.3 (2019-09-15)
|
||||
|
||||
**Note:** Version bump only for package benjamin
|
||||
|
||||
|
||||
## 2.0.2 (2019-09-06)
|
||||
|
||||
### Fixed
|
||||
|
||||
- Added bandLength option to fit optiongroup (it was missing)
|
||||
## 2.0.1 (2019-09-01)
|
||||
|
||||
**Note:** Version bump only for package benjamin
|
||||
|
||||
|
||||
|
||||
|
||||
## 2.0.0 (2019-08-25)
|
||||
|
||||
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.
|
|
@ -1,14 +1,9 @@
|
|||
> **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/chat).
|
||||
|
||||
<p align="center">
|
||||
<a title="Go to freesewing.org" href="https://freesewing.org/"><img src="https://freesewing.org/img/logo/black.svg" align="center" width="150px" alt="Freesewing logo"/></a>
|
||||
<br>
|
||||
<a href="https://freesewing.org/">FreeSewing v2</a>
|
||||
</p>
|
||||
<p align="center">A JavaScript library for made-to-measure sewing patterns</p>
|
||||
<p align="center">An open source platform for made-to-measure sewing patterns</p>
|
||||
<p align='center'><a
|
||||
href="https://www.npmjs.com/package/@freesewing/benjamin"
|
||||
title="@freesewing/benjamin on NPM"
|
||||
|
|
|
@ -1,27 +1,27 @@
|
|||
import { version } from "../package.json";
|
||||
import { version } from '../package.json'
|
||||
|
||||
export default {
|
||||
name: "benjamin",
|
||||
name: 'benjamin',
|
||||
version: version,
|
||||
design: "Wouter Van Wageningen",
|
||||
code: "Wouter Van Wageningen",
|
||||
department: "accessories",
|
||||
type: "pattern",
|
||||
design: 'Wouter Van Wageningen',
|
||||
code: 'Wouter Van Wageningen',
|
||||
department: 'accessories',
|
||||
type: 'pattern',
|
||||
difficulty: 3,
|
||||
tags: ["top", "basics"],
|
||||
tags: ['top', 'basics'],
|
||||
optionGroups: {
|
||||
fit: ["collarEase", "adjustmentRibbon"],
|
||||
style: ["tipWidth", "knotWidth", "bowLength", "bowStyle", "endStyle"]
|
||||
fit: ['collarEase', 'adjustmentRibbon', 'bandLength'],
|
||||
style: ['tipWidth', 'knotWidth', 'bowLength', 'bowStyle', 'endStyle']
|
||||
},
|
||||
measurements: ["neckCircumference"],
|
||||
measurements: ['neckCircumference'],
|
||||
dependencies: {},
|
||||
inject: {
|
||||
bow1: "base",
|
||||
bow2: "base",
|
||||
bow3: "base"
|
||||
bow1: 'base',
|
||||
bow2: 'base',
|
||||
bow3: 'base'
|
||||
},
|
||||
hide: ["base"],
|
||||
parts: ["ribbon"],
|
||||
hide: ['base'],
|
||||
parts: ['ribbon'],
|
||||
options: {
|
||||
transitionLength: 0.7, // 70% of bandLength
|
||||
bandLength: {
|
||||
|
@ -55,13 +55,13 @@ export default {
|
|||
max: 6
|
||||
},
|
||||
bowStyle: {
|
||||
dflt: "butterfly",
|
||||
list: ["diamond", "butterfly", "square", "widesquare"]
|
||||
dflt: 'butterfly',
|
||||
list: ['diamond', 'butterfly', 'square', 'widesquare']
|
||||
},
|
||||
endStyle: {
|
||||
dflt: "straight",
|
||||
list: ["straight", "pointed", "rounded"]
|
||||
dflt: 'straight',
|
||||
list: ['straight', 'pointed', 'rounded']
|
||||
},
|
||||
adjustmentRibbon: { bool: false }
|
||||
}
|
||||
};
|
||||
}
|
||||
|
|
|
@ -4,26 +4,27 @@
|
|||
"version": "0.0.0",
|
||||
"private": true,
|
||||
"dependencies": {
|
||||
"@freesewing/components": "beta",
|
||||
"@freesewing/core": "beta",
|
||||
"@freesewing/css-theme": "beta",
|
||||
"@freesewing/i18n": "beta",
|
||||
"@freesewing/models": "beta",
|
||||
"@freesewing/mui-theme": "beta",
|
||||
"@freesewing/pattern-info": "beta",
|
||||
"@freesewing/plugin-bundle": "beta",
|
||||
"@freesewing/plugin-theme": "beta",
|
||||
"@freesewing/plugin-i18n": "beta",
|
||||
"@freesewing/plugin-svgattr": "beta",
|
||||
"@freesewing/utils": "beta",
|
||||
"@material-ui/core": "^4.0.1",
|
||||
"@material-ui/icons": "^4.0.1",
|
||||
"@material-ui/lab": "^v4.0.0-alpha.14",
|
||||
"@freesewing/components": "latest",
|
||||
"@freesewing/core": "latest",
|
||||
"@freesewing/css-theme": "latest",
|
||||
"@freesewing/i18n": "latest",
|
||||
"@freesewing/models": "latest",
|
||||
"@freesewing/mui-theme": "latest",
|
||||
"@freesewing/pattern-info": "latest",
|
||||
"@freesewing/plugin-bundle": "latest",
|
||||
"@freesewing/plugin-theme": "latest",
|
||||
"@freesewing/plugin-i18n": "latest",
|
||||
"@freesewing/plugin-svgattr": "latest",
|
||||
"@freesewing/utils": "latest",
|
||||
"@material-ui/core": "^4.4.0",
|
||||
"@material-ui/icons": "^4.2.1",
|
||||
"@material-ui/lab": "^v4.0.0-alpha.25",
|
||||
"pattern": "link:..",
|
||||
"prismjs": "1.16.0",
|
||||
"react": "^16.8",
|
||||
"react-dom": "^16.8",
|
||||
"react-scripts": "^3.0.0",
|
||||
"prismjs": "1.17.1",
|
||||
"react": "^16.9",
|
||||
"react-dom": "^16.9",
|
||||
"react-scripts": "^3.1.1",
|
||||
"file-saver": "^2.0.2",
|
||||
"typeface-roboto-condensed": "latest"
|
||||
},
|
||||
"scripts": {
|
||||
|
@ -42,6 +43,6 @@
|
|||
"not op_mini all"
|
||||
],
|
||||
"devDependencies": {
|
||||
"babel-plugin-prismjs": "1.0.2"
|
||||
"babel-plugin-prismjs": "1.1.1"
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
{
|
||||
"name": "@freesewing/benjamin",
|
||||
"version": "2.0.0-beta.43",
|
||||
"version": "2.1.0-alpha.0",
|
||||
"description": "A FreeSewing pattern for a bow tie",
|
||||
"author": "Joost De Cock <joost@decock.org> (https://github.com/joostdecock)",
|
||||
"homepage": "https://freesewing.org/",
|
||||
|
@ -33,8 +33,8 @@
|
|||
"netlify": "echo \"Not configured yet\""
|
||||
},
|
||||
"peerDependencies": {
|
||||
"@freesewing/core": "^2.0.0-beta.43",
|
||||
"@freesewing/plugin-bundle": "^2.0.0-beta.43"
|
||||
"@freesewing/core": "^2.1.0-alpha.0",
|
||||
"@freesewing/plugin-bundle": "^2.1.0-alpha.0"
|
||||
},
|
||||
"dependencies": {},
|
||||
"devDependencies": {
|
||||
|
@ -45,14 +45,14 @@
|
|||
"eslint": "^5.16.0",
|
||||
"babel-jest": "24.7.1",
|
||||
"jest": "24.7.1",
|
||||
"@freesewing/components": "^2.0.0-beta.43",
|
||||
"@freesewing/css-theme": "^2.0.0-beta.43",
|
||||
"@freesewing/i18n": "^2.0.0-beta.43",
|
||||
"@freesewing/mui-theme": "^2.0.0-beta.43",
|
||||
"@freesewing/plugin-bust": "^2.0.0-beta.43",
|
||||
"@freesewing/plugin-buttons": "^2.0.0-beta.43",
|
||||
"@freesewing/plugin-flip": "^2.0.0-beta.43",
|
||||
"@freesewing/utils": "^2.0.0-beta.43",
|
||||
"@freesewing/components": "^2.1.0-alpha.0",
|
||||
"@freesewing/css-theme": "^2.1.0-alpha.0",
|
||||
"@freesewing/i18n": "^2.1.0-alpha.0",
|
||||
"@freesewing/mui-theme": "^2.1.0-alpha.0",
|
||||
"@freesewing/plugin-bust": "^2.1.0-alpha.0",
|
||||
"@freesewing/plugin-buttons": "^2.1.0-alpha.0",
|
||||
"@freesewing/plugin-flip": "^2.1.0-alpha.0",
|
||||
"@freesewing/utils": "^2.1.0-alpha.0",
|
||||
"@svgr/rollup": "^2.4.1",
|
||||
"cross-env": "^5.1.4",
|
||||
"gh-pages": "^1.2.0",
|
||||
|
@ -80,7 +80,7 @@
|
|||
],
|
||||
"publishConfig": {
|
||||
"access": "public",
|
||||
"tag": "beta"
|
||||
"tag": "next"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=8.0.0",
|
||||
|
|
36
packages/bent/CHANGELOG.md
Normal file
36
packages/bent/CHANGELOG.md
Normal file
|
@ -0,0 +1,36 @@
|
|||
# Change log for: @freesewing/bent
|
||||
|
||||
|
||||
## Unreleased
|
||||
|
||||
**Note:** Version bump only for package bent
|
||||
|
||||
|
||||
## 2.0.4 (2019-09-27)
|
||||
|
||||
**Note:** Version bump only for package bent
|
||||
|
||||
|
||||
## 2.0.3 (2019-09-15)
|
||||
|
||||
**Note:** Version bump only for package bent
|
||||
|
||||
|
||||
## 2.0.2 (2019-09-06)
|
||||
|
||||
**Note:** Version bump only for package bent
|
||||
|
||||
|
||||
## 2.0.1 (2019-09-01)
|
||||
|
||||
**Note:** Version bump only for package bent
|
||||
|
||||
|
||||
|
||||
|
||||
## 2.0.0 (2019-08-25)
|
||||
|
||||
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.
|
|
@ -1,14 +1,9 @@
|
|||
> **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/chat).
|
||||
|
||||
<p align="center">
|
||||
<a title="Go to freesewing.org" href="https://freesewing.org/"><img src="https://freesewing.org/img/logo/black.svg" align="center" width="150px" alt="Freesewing logo"/></a>
|
||||
<br>
|
||||
<a href="https://freesewing.org/">FreeSewing v2</a>
|
||||
</p>
|
||||
<p align="center">A JavaScript library for made-to-measure sewing patterns</p>
|
||||
<p align="center">An open source platform for made-to-measure sewing patterns</p>
|
||||
<p align='center'><a
|
||||
href="https://www.npmjs.com/package/@freesewing/bent"
|
||||
title="@freesewing/bent on NPM"
|
||||
|
|
|
@ -4,26 +4,27 @@
|
|||
"version": "0.0.0",
|
||||
"private": true,
|
||||
"dependencies": {
|
||||
"@freesewing/components": "beta",
|
||||
"@freesewing/core": "beta",
|
||||
"@freesewing/css-theme": "beta",
|
||||
"@freesewing/i18n": "beta",
|
||||
"@freesewing/models": "beta",
|
||||
"@freesewing/mui-theme": "beta",
|
||||
"@freesewing/pattern-info": "beta",
|
||||
"@freesewing/plugin-bundle": "beta",
|
||||
"@freesewing/plugin-theme": "beta",
|
||||
"@freesewing/plugin-i18n": "beta",
|
||||
"@freesewing/plugin-svgattr": "beta",
|
||||
"@freesewing/utils": "beta",
|
||||
"@material-ui/core": "^4.0.1",
|
||||
"@material-ui/icons": "^4.0.1",
|
||||
"@material-ui/lab": "^v4.0.0-alpha.14",
|
||||
"@freesewing/components": "latest",
|
||||
"@freesewing/core": "latest",
|
||||
"@freesewing/css-theme": "latest",
|
||||
"@freesewing/i18n": "latest",
|
||||
"@freesewing/models": "latest",
|
||||
"@freesewing/mui-theme": "latest",
|
||||
"@freesewing/pattern-info": "latest",
|
||||
"@freesewing/plugin-bundle": "latest",
|
||||
"@freesewing/plugin-theme": "latest",
|
||||
"@freesewing/plugin-i18n": "latest",
|
||||
"@freesewing/plugin-svgattr": "latest",
|
||||
"@freesewing/utils": "latest",
|
||||
"@material-ui/core": "^4.4.0",
|
||||
"@material-ui/icons": "^4.2.1",
|
||||
"@material-ui/lab": "^v4.0.0-alpha.25",
|
||||
"pattern": "link:..",
|
||||
"prismjs": "1.16.0",
|
||||
"react": "^16.8",
|
||||
"react-dom": "^16.8",
|
||||
"react-scripts": "^3.0.0",
|
||||
"prismjs": "1.17.1",
|
||||
"react": "^16.9",
|
||||
"react-dom": "^16.9",
|
||||
"react-scripts": "^3.1.1",
|
||||
"file-saver": "^2.0.2",
|
||||
"typeface-roboto-condensed": "latest"
|
||||
},
|
||||
"scripts": {
|
||||
|
@ -42,6 +43,6 @@
|
|||
"not op_mini all"
|
||||
],
|
||||
"devDependencies": {
|
||||
"babel-plugin-prismjs": "1.0.2"
|
||||
"babel-plugin-prismjs": "1.1.1"
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
{
|
||||
"name": "@freesewing/bent",
|
||||
"version": "2.0.0-beta.43",
|
||||
"version": "2.1.0-alpha.0",
|
||||
"description": "A FreeSewing pattern for a menswear body block with a two-part sleeve",
|
||||
"author": "Joost De Cock <joost@decock.org> (https://github.com/joostdecock)",
|
||||
"homepage": "https://freesewing.org/",
|
||||
|
@ -33,9 +33,9 @@
|
|||
"netlify": "echo \"Not configured yet\""
|
||||
},
|
||||
"peerDependencies": {
|
||||
"@freesewing/core": "^2.0.0-beta.43",
|
||||
"@freesewing/plugin-bundle": "^2.0.0-beta.43",
|
||||
"@freesewing/brian": "^2.0.0-beta.43"
|
||||
"@freesewing/core": "^2.1.0-alpha.0",
|
||||
"@freesewing/plugin-bundle": "^2.1.0-alpha.0",
|
||||
"@freesewing/brian": "^2.1.0-alpha.0"
|
||||
},
|
||||
"dependencies": {},
|
||||
"devDependencies": {
|
||||
|
@ -46,14 +46,14 @@
|
|||
"eslint": "^5.16.0",
|
||||
"babel-jest": "24.7.1",
|
||||
"jest": "24.7.1",
|
||||
"@freesewing/components": "^2.0.0-beta.43",
|
||||
"@freesewing/css-theme": "^2.0.0-beta.43",
|
||||
"@freesewing/i18n": "^2.0.0-beta.43",
|
||||
"@freesewing/mui-theme": "^2.0.0-beta.43",
|
||||
"@freesewing/plugin-bust": "^2.0.0-beta.43",
|
||||
"@freesewing/plugin-buttons": "^2.0.0-beta.43",
|
||||
"@freesewing/plugin-flip": "^2.0.0-beta.43",
|
||||
"@freesewing/utils": "^2.0.0-beta.43",
|
||||
"@freesewing/components": "^2.1.0-alpha.0",
|
||||
"@freesewing/css-theme": "^2.1.0-alpha.0",
|
||||
"@freesewing/i18n": "^2.1.0-alpha.0",
|
||||
"@freesewing/mui-theme": "^2.1.0-alpha.0",
|
||||
"@freesewing/plugin-bust": "^2.1.0-alpha.0",
|
||||
"@freesewing/plugin-buttons": "^2.1.0-alpha.0",
|
||||
"@freesewing/plugin-flip": "^2.1.0-alpha.0",
|
||||
"@freesewing/utils": "^2.1.0-alpha.0",
|
||||
"@svgr/rollup": "^2.4.1",
|
||||
"cross-env": "^5.1.4",
|
||||
"gh-pages": "^1.2.0",
|
||||
|
@ -81,7 +81,7 @@
|
|||
],
|
||||
"publishConfig": {
|
||||
"access": "public",
|
||||
"tag": "beta"
|
||||
"tag": "next"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=8.0.0",
|
||||
|
|
36
packages/brian/CHANGELOG.md
Normal file
36
packages/brian/CHANGELOG.md
Normal file
|
@ -0,0 +1,36 @@
|
|||
# Change log for: @freesewing/brian
|
||||
|
||||
|
||||
## Unreleased
|
||||
|
||||
**Note:** Version bump only for package brian
|
||||
|
||||
|
||||
## 2.0.4 (2019-09-27)
|
||||
|
||||
**Note:** Version bump only for package brian
|
||||
|
||||
|
||||
## 2.0.3 (2019-09-15)
|
||||
|
||||
**Note:** Version bump only for package brian
|
||||
|
||||
|
||||
## 2.0.2 (2019-09-06)
|
||||
|
||||
**Note:** Version bump only for package brian
|
||||
|
||||
|
||||
## 2.0.1 (2019-09-01)
|
||||
|
||||
**Note:** Version bump only for package brian
|
||||
|
||||
|
||||
|
||||
|
||||
## 2.0.0 (2019-08-25)
|
||||
|
||||
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.
|
|
@ -1,14 +1,9 @@
|
|||
> **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/chat).
|
||||
|
||||
<p align="center">
|
||||
<a title="Go to freesewing.org" href="https://freesewing.org/"><img src="https://freesewing.org/img/logo/black.svg" align="center" width="150px" alt="Freesewing logo"/></a>
|
||||
<br>
|
||||
<a href="https://freesewing.org/">FreeSewing v2</a>
|
||||
</p>
|
||||
<p align="center">A JavaScript library for made-to-measure sewing patterns</p>
|
||||
<p align="center">An open source platform for made-to-measure sewing patterns</p>
|
||||
<p align='center'><a
|
||||
href="https://www.npmjs.com/package/@freesewing/brian"
|
||||
title="@freesewing/brian on NPM"
|
||||
|
|
|
@ -4,26 +4,27 @@
|
|||
"version": "0.0.0",
|
||||
"private": true,
|
||||
"dependencies": {
|
||||
"@freesewing/components": "beta",
|
||||
"@freesewing/core": "beta",
|
||||
"@freesewing/css-theme": "beta",
|
||||
"@freesewing/i18n": "beta",
|
||||
"@freesewing/models": "beta",
|
||||
"@freesewing/mui-theme": "beta",
|
||||
"@freesewing/pattern-info": "beta",
|
||||
"@freesewing/plugin-bundle": "beta",
|
||||
"@freesewing/plugin-theme": "beta",
|
||||
"@freesewing/plugin-i18n": "beta",
|
||||
"@freesewing/plugin-svgattr": "beta",
|
||||
"@freesewing/utils": "beta",
|
||||
"@material-ui/core": "^4.0.1",
|
||||
"@material-ui/icons": "^4.0.1",
|
||||
"@material-ui/lab": "^v4.0.0-alpha.14",
|
||||
"@freesewing/components": "latest",
|
||||
"@freesewing/core": "latest",
|
||||
"@freesewing/css-theme": "latest",
|
||||
"@freesewing/i18n": "latest",
|
||||
"@freesewing/models": "latest",
|
||||
"@freesewing/mui-theme": "latest",
|
||||
"@freesewing/pattern-info": "latest",
|
||||
"@freesewing/plugin-bundle": "latest",
|
||||
"@freesewing/plugin-theme": "latest",
|
||||
"@freesewing/plugin-i18n": "latest",
|
||||
"@freesewing/plugin-svgattr": "latest",
|
||||
"@freesewing/utils": "latest",
|
||||
"@material-ui/core": "^4.4.0",
|
||||
"@material-ui/icons": "^4.2.1",
|
||||
"@material-ui/lab": "^v4.0.0-alpha.25",
|
||||
"pattern": "link:..",
|
||||
"prismjs": "1.16.0",
|
||||
"react": "^16.8",
|
||||
"react-dom": "^16.8",
|
||||
"react-scripts": "^3.0.0",
|
||||
"prismjs": "1.17.1",
|
||||
"react": "^16.9",
|
||||
"react-dom": "^16.9",
|
||||
"react-scripts": "^3.1.1",
|
||||
"file-saver": "^2.0.2",
|
||||
"typeface-roboto-condensed": "latest"
|
||||
},
|
||||
"scripts": {
|
||||
|
@ -42,6 +43,6 @@
|
|||
"not op_mini all"
|
||||
],
|
||||
"devDependencies": {
|
||||
"babel-plugin-prismjs": "1.0.2"
|
||||
"babel-plugin-prismjs": "1.1.1"
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
{
|
||||
"name": "@freesewing/brian",
|
||||
"version": "2.0.0-beta.43",
|
||||
"version": "2.1.0-alpha.0",
|
||||
"description": "A FreeSewing pattern for a basic body block for menswear",
|
||||
"author": "Joost De Cock <joost@decock.org> (https://github.com/joostdecock)",
|
||||
"homepage": "https://freesewing.org/",
|
||||
|
@ -33,8 +33,8 @@
|
|||
"netlify": "echo \"Not configured yet\""
|
||||
},
|
||||
"peerDependencies": {
|
||||
"@freesewing/core": "^2.0.0-beta.43",
|
||||
"@freesewing/plugin-bundle": "^2.0.0-beta.43"
|
||||
"@freesewing/core": "^2.1.0-alpha.0",
|
||||
"@freesewing/plugin-bundle": "^2.1.0-alpha.0"
|
||||
},
|
||||
"dependencies": {},
|
||||
"devDependencies": {
|
||||
|
@ -45,14 +45,14 @@
|
|||
"eslint": "^5.16.0",
|
||||
"babel-jest": "24.7.1",
|
||||
"jest": "24.7.1",
|
||||
"@freesewing/components": "^2.0.0-beta.43",
|
||||
"@freesewing/css-theme": "^2.0.0-beta.43",
|
||||
"@freesewing/i18n": "^2.0.0-beta.43",
|
||||
"@freesewing/mui-theme": "^2.0.0-beta.43",
|
||||
"@freesewing/plugin-bust": "^2.0.0-beta.43",
|
||||
"@freesewing/plugin-buttons": "^2.0.0-beta.43",
|
||||
"@freesewing/plugin-flip": "^2.0.0-beta.43",
|
||||
"@freesewing/utils": "^2.0.0-beta.43",
|
||||
"@freesewing/components": "^2.1.0-alpha.0",
|
||||
"@freesewing/css-theme": "^2.1.0-alpha.0",
|
||||
"@freesewing/i18n": "^2.1.0-alpha.0",
|
||||
"@freesewing/mui-theme": "^2.1.0-alpha.0",
|
||||
"@freesewing/plugin-bust": "^2.1.0-alpha.0",
|
||||
"@freesewing/plugin-buttons": "^2.1.0-alpha.0",
|
||||
"@freesewing/plugin-flip": "^2.1.0-alpha.0",
|
||||
"@freesewing/utils": "^2.1.0-alpha.0",
|
||||
"@svgr/rollup": "^2.4.1",
|
||||
"cross-env": "^5.1.4",
|
||||
"gh-pages": "^1.2.0",
|
||||
|
@ -80,7 +80,7 @@
|
|||
],
|
||||
"publishConfig": {
|
||||
"access": "public",
|
||||
"tag": "beta"
|
||||
"tag": "next"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=8.0.0",
|
||||
|
|
36
packages/bruce/CHANGELOG.md
Normal file
36
packages/bruce/CHANGELOG.md
Normal file
|
@ -0,0 +1,36 @@
|
|||
# Change log for: @freesewing/bruce
|
||||
|
||||
|
||||
## Unreleased
|
||||
|
||||
**Note:** Version bump only for package bruce
|
||||
|
||||
|
||||
## 2.0.4 (2019-09-27)
|
||||
|
||||
**Note:** Version bump only for package bruce
|
||||
|
||||
|
||||
## 2.0.3 (2019-09-15)
|
||||
|
||||
### Fixed
|
||||
|
||||
- [#106](https://github.com/freesewing/freesewing/issues/106): Fix incorrect hem allowance
|
||||
## 2.0.2 (2019-09-06)
|
||||
|
||||
**Note:** Version bump only for package bruce
|
||||
|
||||
|
||||
## 2.0.1 (2019-09-01)
|
||||
|
||||
**Note:** Version bump only for package bruce
|
||||
|
||||
|
||||
|
||||
|
||||
## 2.0.0 (2019-08-25)
|
||||
|
||||
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.
|
|
@ -1,14 +1,9 @@
|
|||
> **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/chat).
|
||||
|
||||
<p align="center">
|
||||
<a title="Go to freesewing.org" href="https://freesewing.org/"><img src="https://freesewing.org/img/logo/black.svg" align="center" width="150px" alt="Freesewing logo"/></a>
|
||||
<br>
|
||||
<a href="https://freesewing.org/">FreeSewing v2</a>
|
||||
</p>
|
||||
<p align="center">A JavaScript library for made-to-measure sewing patterns</p>
|
||||
<p align="center">An open source platform for made-to-measure sewing patterns</p>
|
||||
<p align='center'><a
|
||||
href="https://www.npmjs.com/package/@freesewing/bruce"
|
||||
title="@freesewing/bruce on NPM"
|
||||
|
|
|
@ -4,26 +4,27 @@
|
|||
"version": "0.0.0",
|
||||
"private": true,
|
||||
"dependencies": {
|
||||
"@freesewing/components": "beta",
|
||||
"@freesewing/core": "beta",
|
||||
"@freesewing/css-theme": "beta",
|
||||
"@freesewing/i18n": "beta",
|
||||
"@freesewing/models": "beta",
|
||||
"@freesewing/mui-theme": "beta",
|
||||
"@freesewing/pattern-info": "beta",
|
||||
"@freesewing/plugin-bundle": "beta",
|
||||
"@freesewing/plugin-theme": "beta",
|
||||
"@freesewing/plugin-i18n": "beta",
|
||||
"@freesewing/plugin-svgattr": "beta",
|
||||
"@freesewing/utils": "beta",
|
||||
"@material-ui/core": "^4.0.1",
|
||||
"@material-ui/icons": "^4.0.1",
|
||||
"@material-ui/lab": "^v4.0.0-alpha.14",
|
||||
"@freesewing/components": "latest",
|
||||
"@freesewing/core": "latest",
|
||||
"@freesewing/css-theme": "latest",
|
||||
"@freesewing/i18n": "latest",
|
||||
"@freesewing/models": "latest",
|
||||
"@freesewing/mui-theme": "latest",
|
||||
"@freesewing/pattern-info": "latest",
|
||||
"@freesewing/plugin-bundle": "latest",
|
||||
"@freesewing/plugin-theme": "latest",
|
||||
"@freesewing/plugin-i18n": "latest",
|
||||
"@freesewing/plugin-svgattr": "latest",
|
||||
"@freesewing/utils": "latest",
|
||||
"@material-ui/core": "^4.4.0",
|
||||
"@material-ui/icons": "^4.2.1",
|
||||
"@material-ui/lab": "^v4.0.0-alpha.25",
|
||||
"pattern": "link:..",
|
||||
"prismjs": "1.16.0",
|
||||
"react": "^16.8",
|
||||
"react-dom": "^16.8",
|
||||
"react-scripts": "^3.0.0",
|
||||
"prismjs": "1.17.1",
|
||||
"react": "^16.9",
|
||||
"react-dom": "^16.9",
|
||||
"react-scripts": "^3.1.1",
|
||||
"file-saver": "^2.0.2",
|
||||
"typeface-roboto-condensed": "latest"
|
||||
},
|
||||
"scripts": {
|
||||
|
@ -42,6 +43,6 @@
|
|||
"not op_mini all"
|
||||
],
|
||||
"devDependencies": {
|
||||
"babel-plugin-prismjs": "1.0.2"
|
||||
"babel-plugin-prismjs": "1.1.1"
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
{
|
||||
"name": "@freesewing/bruce",
|
||||
"version": "2.0.0-beta.43",
|
||||
"version": "2.1.0-alpha.0",
|
||||
"description": "A FreeSewing pattern for boxer briefs",
|
||||
"author": "Joost De Cock <joost@decock.org> (https://github.com/joostdecock)",
|
||||
"homepage": "https://freesewing.org/",
|
||||
|
@ -33,8 +33,8 @@
|
|||
"netlify": "echo \"Not configured yet\""
|
||||
},
|
||||
"peerDependencies": {
|
||||
"@freesewing/core": "^2.0.0-beta.43",
|
||||
"@freesewing/plugin-bundle": "^2.0.0-beta.43"
|
||||
"@freesewing/core": "^2.1.0-alpha.0",
|
||||
"@freesewing/plugin-bundle": "^2.1.0-alpha.0"
|
||||
},
|
||||
"dependencies": {},
|
||||
"devDependencies": {
|
||||
|
@ -45,14 +45,14 @@
|
|||
"eslint": "^5.16.0",
|
||||
"babel-jest": "24.7.1",
|
||||
"jest": "24.7.1",
|
||||
"@freesewing/components": "^2.0.0-beta.43",
|
||||
"@freesewing/css-theme": "^2.0.0-beta.43",
|
||||
"@freesewing/i18n": "^2.0.0-beta.43",
|
||||
"@freesewing/mui-theme": "^2.0.0-beta.43",
|
||||
"@freesewing/plugin-bust": "^2.0.0-beta.43",
|
||||
"@freesewing/plugin-buttons": "^2.0.0-beta.43",
|
||||
"@freesewing/plugin-flip": "^2.0.0-beta.43",
|
||||
"@freesewing/utils": "^2.0.0-beta.43",
|
||||
"@freesewing/components": "^2.1.0-alpha.0",
|
||||
"@freesewing/css-theme": "^2.1.0-alpha.0",
|
||||
"@freesewing/i18n": "^2.1.0-alpha.0",
|
||||
"@freesewing/mui-theme": "^2.1.0-alpha.0",
|
||||
"@freesewing/plugin-bust": "^2.1.0-alpha.0",
|
||||
"@freesewing/plugin-buttons": "^2.1.0-alpha.0",
|
||||
"@freesewing/plugin-flip": "^2.1.0-alpha.0",
|
||||
"@freesewing/utils": "^2.1.0-alpha.0",
|
||||
"@svgr/rollup": "^2.4.1",
|
||||
"cross-env": "^5.1.4",
|
||||
"gh-pages": "^1.2.0",
|
||||
|
@ -80,7 +80,7 @@
|
|||
],
|
||||
"publishConfig": {
|
||||
"access": "public",
|
||||
"tag": "beta"
|
||||
"tag": "next"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=8.0.0",
|
||||
|
|
|
@ -31,18 +31,28 @@ export default function(part) {
|
|||
)
|
||||
|
||||
// Path
|
||||
paths.seam = new Path()
|
||||
.move(points.topLeft)
|
||||
.line(points.bottomLeft)
|
||||
.line(points.bottomRight)
|
||||
paths.saBase = new Path()
|
||||
.move(points.bottomRight)
|
||||
.line(points.tip)
|
||||
.curve(points.tipCpBottom, points.tipCpTop, points.topLeft)
|
||||
.line(points.bottomLeft)
|
||||
paths.hemBase = new Path().move(points.bottomLeft).line(points.bottomRight)
|
||||
paths.saBase.render = false
|
||||
paths.hemBase.render = false
|
||||
paths.seam = paths.saBase
|
||||
.join(paths.hemBase)
|
||||
.close()
|
||||
.attr('class', 'fabric')
|
||||
|
||||
// Complete pattern?
|
||||
if (complete) {
|
||||
if (sa) paths.sa = paths.seam.offset(sa).attr('class', 'fabric sa')
|
||||
if (sa) {
|
||||
paths.sa = paths.saBase
|
||||
.offset(sa)
|
||||
.join(paths.hemBase.offset(sa * 2))
|
||||
.close()
|
||||
.attr('class', 'fabric sa')
|
||||
}
|
||||
points.title = points.topLeft.shiftFractionTowards(points.bottomRight, 0.5)
|
||||
macro('title', {
|
||||
at: points.title.shift(-90, 15),
|
||||
|
|
|
@ -44,12 +44,16 @@ export default function(part) {
|
|||
points.topRight = points.topRight.shift(90, store.get('frontRise'))
|
||||
|
||||
// Path
|
||||
paths.seam = new Path()
|
||||
.move(points.topLeft)
|
||||
paths.saBase = new Path()
|
||||
.move(points.bottomLeft)
|
||||
.line(points.topLeft)
|
||||
.line(points.topRight)
|
||||
.line(points.bottomRight)
|
||||
.line(points.bottomLeft)
|
||||
.line(points.topLeft)
|
||||
paths.hemBase = new Path().move(points.bottomRight).line(points.bottomLeft)
|
||||
paths.saBase.render = false
|
||||
paths.hemBase.render = false
|
||||
paths.seam = paths.saBase
|
||||
.join(paths.hemBase)
|
||||
.close()
|
||||
.attr('class', 'fabric')
|
||||
|
||||
|
@ -65,7 +69,11 @@ export default function(part) {
|
|||
title: 'side'
|
||||
})
|
||||
if (sa) {
|
||||
paths.sa = paths.seam.offset(sa * -1).attr('class', 'fabric sa')
|
||||
paths.sa = paths.saBase
|
||||
.offset(sa * -1)
|
||||
.join(paths.hemBase.offset(sa * -2))
|
||||
.close()
|
||||
.attr('class', 'fabric sa')
|
||||
}
|
||||
macro('grainline', {
|
||||
from: new Point(points.bottomRight.x / 2, points.bottomRight.y),
|
||||
|
|
36
packages/carlita/CHANGELOG.md
Normal file
36
packages/carlita/CHANGELOG.md
Normal file
|
@ -0,0 +1,36 @@
|
|||
# Change log for: @freesewing/carlita
|
||||
|
||||
|
||||
## Unreleased
|
||||
|
||||
**Note:** Version bump only for package carlita
|
||||
|
||||
|
||||
## 2.0.4 (2019-09-27)
|
||||
|
||||
**Note:** Version bump only for package carlita
|
||||
|
||||
|
||||
## 2.0.3 (2019-09-15)
|
||||
|
||||
**Note:** Version bump only for package carlita
|
||||
|
||||
|
||||
## 2.0.2 (2019-09-06)
|
||||
|
||||
**Note:** Version bump only for package carlita
|
||||
|
||||
|
||||
## 2.0.1 (2019-09-01)
|
||||
|
||||
**Note:** Version bump only for package carlita
|
||||
|
||||
|
||||
|
||||
|
||||
## 2.0.0 (2019-08-25)
|
||||
|
||||
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.
|
|
@ -1,14 +1,9 @@
|
|||
> **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/chat).
|
||||
|
||||
<p align="center">
|
||||
<a title="Go to freesewing.org" href="https://freesewing.org/"><img src="https://freesewing.org/img/logo/black.svg" align="center" width="150px" alt="Freesewing logo"/></a>
|
||||
<br>
|
||||
<a href="https://freesewing.org/">FreeSewing v2</a>
|
||||
</p>
|
||||
<p align="center">A JavaScript library for made-to-measure sewing patterns</p>
|
||||
<p align="center">An open source platform for made-to-measure sewing patterns</p>
|
||||
<p align='center'><a
|
||||
href="https://www.npmjs.com/package/@freesewing/carlita"
|
||||
title="@freesewing/carlita on NPM"
|
||||
|
|
|
@ -4,26 +4,27 @@
|
|||
"version": "0.0.0",
|
||||
"private": true,
|
||||
"dependencies": {
|
||||
"@freesewing/components": "beta",
|
||||
"@freesewing/core": "beta",
|
||||
"@freesewing/css-theme": "beta",
|
||||
"@freesewing/i18n": "beta",
|
||||
"@freesewing/models": "beta",
|
||||
"@freesewing/mui-theme": "beta",
|
||||
"@freesewing/pattern-info": "beta",
|
||||
"@freesewing/plugin-bundle": "beta",
|
||||
"@freesewing/plugin-theme": "beta",
|
||||
"@freesewing/plugin-i18n": "beta",
|
||||
"@freesewing/plugin-svgattr": "beta",
|
||||
"@freesewing/utils": "beta",
|
||||
"@material-ui/core": "^4.0.1",
|
||||
"@material-ui/icons": "^4.0.1",
|
||||
"@material-ui/lab": "^v4.0.0-alpha.14",
|
||||
"@freesewing/components": "latest",
|
||||
"@freesewing/core": "latest",
|
||||
"@freesewing/css-theme": "latest",
|
||||
"@freesewing/i18n": "latest",
|
||||
"@freesewing/models": "latest",
|
||||
"@freesewing/mui-theme": "latest",
|
||||
"@freesewing/pattern-info": "latest",
|
||||
"@freesewing/plugin-bundle": "latest",
|
||||
"@freesewing/plugin-theme": "latest",
|
||||
"@freesewing/plugin-i18n": "latest",
|
||||
"@freesewing/plugin-svgattr": "latest",
|
||||
"@freesewing/utils": "latest",
|
||||
"@material-ui/core": "^4.4.0",
|
||||
"@material-ui/icons": "^4.2.1",
|
||||
"@material-ui/lab": "^v4.0.0-alpha.25",
|
||||
"pattern": "link:..",
|
||||
"prismjs": "1.16.0",
|
||||
"react": "^16.8",
|
||||
"react-dom": "^16.8",
|
||||
"react-scripts": "^3.0.0",
|
||||
"prismjs": "1.17.1",
|
||||
"react": "^16.9",
|
||||
"react-dom": "^16.9",
|
||||
"react-scripts": "^3.1.1",
|
||||
"file-saver": "^2.0.2",
|
||||
"typeface-roboto-condensed": "latest"
|
||||
},
|
||||
"scripts": {
|
||||
|
@ -42,6 +43,6 @@
|
|||
"not op_mini all"
|
||||
],
|
||||
"devDependencies": {
|
||||
"babel-plugin-prismjs": "1.0.2"
|
||||
"babel-plugin-prismjs": "1.1.1"
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
{
|
||||
"name": "@freesewing/carlita",
|
||||
"version": "2.0.0-beta.43",
|
||||
"version": "2.1.0-alpha.0",
|
||||
"description": "A FreeSewing pattern for Sherlock Holmes cosplay; Or just a nice long coat",
|
||||
"author": "Joost De Cock <joost@decock.org> (https://github.com/joostdecock)",
|
||||
"homepage": "https://freesewing.org/",
|
||||
|
@ -33,12 +33,12 @@
|
|||
"netlify": "echo \"Not configured yet\""
|
||||
},
|
||||
"peerDependencies": {
|
||||
"@freesewing/core": "^2.0.0-beta.43",
|
||||
"@freesewing/plugin-bundle": "^2.0.0-beta.43",
|
||||
"@freesewing/bent": "^2.0.0-beta.43",
|
||||
"@freesewing/carlton": "^2.0.0-beta.43",
|
||||
"@freesewing/plugin-bust": "^2.0.0-beta.43",
|
||||
"@freesewing/plugin-buttons": "^2.0.0-beta.43"
|
||||
"@freesewing/core": "^2.1.0-alpha.0",
|
||||
"@freesewing/plugin-bundle": "^2.1.0-alpha.0",
|
||||
"@freesewing/bent": "^2.1.0-alpha.0",
|
||||
"@freesewing/carlton": "^2.1.0-alpha.0",
|
||||
"@freesewing/plugin-bust": "^2.1.0-alpha.0",
|
||||
"@freesewing/plugin-buttons": "^2.1.0-alpha.0"
|
||||
},
|
||||
"dependencies": {},
|
||||
"devDependencies": {
|
||||
|
@ -49,14 +49,14 @@
|
|||
"eslint": "^5.16.0",
|
||||
"babel-jest": "24.7.1",
|
||||
"jest": "24.7.1",
|
||||
"@freesewing/components": "^2.0.0-beta.43",
|
||||
"@freesewing/css-theme": "^2.0.0-beta.43",
|
||||
"@freesewing/i18n": "^2.0.0-beta.43",
|
||||
"@freesewing/mui-theme": "^2.0.0-beta.43",
|
||||
"@freesewing/plugin-bust": "^2.0.0-beta.43",
|
||||
"@freesewing/plugin-buttons": "^2.0.0-beta.43",
|
||||
"@freesewing/plugin-flip": "^2.0.0-beta.43",
|
||||
"@freesewing/utils": "^2.0.0-beta.43",
|
||||
"@freesewing/components": "^2.1.0-alpha.0",
|
||||
"@freesewing/css-theme": "^2.1.0-alpha.0",
|
||||
"@freesewing/i18n": "^2.1.0-alpha.0",
|
||||
"@freesewing/mui-theme": "^2.1.0-alpha.0",
|
||||
"@freesewing/plugin-bust": "^2.1.0-alpha.0",
|
||||
"@freesewing/plugin-buttons": "^2.1.0-alpha.0",
|
||||
"@freesewing/plugin-flip": "^2.1.0-alpha.0",
|
||||
"@freesewing/utils": "^2.1.0-alpha.0",
|
||||
"@svgr/rollup": "^2.4.1",
|
||||
"cross-env": "^5.1.4",
|
||||
"gh-pages": "^1.2.0",
|
||||
|
@ -84,7 +84,7 @@
|
|||
],
|
||||
"publishConfig": {
|
||||
"access": "public",
|
||||
"tag": "beta"
|
||||
"tag": "next"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=8.0.0",
|
||||
|
|
36
packages/carlton/CHANGELOG.md
Normal file
36
packages/carlton/CHANGELOG.md
Normal file
|
@ -0,0 +1,36 @@
|
|||
# Change log for: @freesewing/carlton
|
||||
|
||||
|
||||
## Unreleased
|
||||
|
||||
**Note:** Version bump only for package carlton
|
||||
|
||||
|
||||
## 2.0.4 (2019-09-27)
|
||||
|
||||
### Fixed
|
||||
|
||||
- [#108](https://github.com/freesewing/freesewing/issues/108): Fixed incorrect width of the Carlton tail
|
||||
## 2.0.3 (2019-09-15)
|
||||
|
||||
**Note:** Version bump only for package carlton
|
||||
|
||||
|
||||
## 2.0.2 (2019-09-06)
|
||||
|
||||
**Note:** Version bump only for package carlton
|
||||
|
||||
|
||||
## 2.0.1 (2019-09-01)
|
||||
|
||||
**Note:** Version bump only for package carlton
|
||||
|
||||
|
||||
|
||||
|
||||
## 2.0.0 (2019-08-25)
|
||||
|
||||
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.
|
|
@ -1,14 +1,9 @@
|
|||
> **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/chat).
|
||||
|
||||
<p align="center">
|
||||
<a title="Go to freesewing.org" href="https://freesewing.org/"><img src="https://freesewing.org/img/logo/black.svg" align="center" width="150px" alt="Freesewing logo"/></a>
|
||||
<br>
|
||||
<a href="https://freesewing.org/">FreeSewing v2</a>
|
||||
</p>
|
||||
<p align="center">A JavaScript library for made-to-measure sewing patterns</p>
|
||||
<p align="center">An open source platform for made-to-measure sewing patterns</p>
|
||||
<p align='center'><a
|
||||
href="https://www.npmjs.com/package/@freesewing/carlton"
|
||||
title="@freesewing/carlton on NPM"
|
||||
|
|
|
@ -4,26 +4,27 @@
|
|||
"version": "0.0.0",
|
||||
"private": true,
|
||||
"dependencies": {
|
||||
"@freesewing/components": "beta",
|
||||
"@freesewing/core": "beta",
|
||||
"@freesewing/css-theme": "beta",
|
||||
"@freesewing/i18n": "beta",
|
||||
"@freesewing/models": "beta",
|
||||
"@freesewing/mui-theme": "beta",
|
||||
"@freesewing/pattern-info": "beta",
|
||||
"@freesewing/plugin-bundle": "beta",
|
||||
"@freesewing/plugin-theme": "beta",
|
||||
"@freesewing/plugin-i18n": "beta",
|
||||
"@freesewing/plugin-svgattr": "beta",
|
||||
"@freesewing/utils": "beta",
|
||||
"@material-ui/core": "^4.0.1",
|
||||
"@material-ui/icons": "^4.0.1",
|
||||
"@material-ui/lab": "^v4.0.0-alpha.14",
|
||||
"@freesewing/components": "latest",
|
||||
"@freesewing/core": "latest",
|
||||
"@freesewing/css-theme": "latest",
|
||||
"@freesewing/i18n": "latest",
|
||||
"@freesewing/models": "latest",
|
||||
"@freesewing/mui-theme": "latest",
|
||||
"@freesewing/pattern-info": "latest",
|
||||
"@freesewing/plugin-bundle": "latest",
|
||||
"@freesewing/plugin-theme": "latest",
|
||||
"@freesewing/plugin-i18n": "latest",
|
||||
"@freesewing/plugin-svgattr": "latest",
|
||||
"@freesewing/utils": "latest",
|
||||
"@material-ui/core": "^4.4.0",
|
||||
"@material-ui/icons": "^4.2.1",
|
||||
"@material-ui/lab": "^v4.0.0-alpha.25",
|
||||
"pattern": "link:..",
|
||||
"prismjs": "1.16.0",
|
||||
"react": "^16.8",
|
||||
"react-dom": "^16.8",
|
||||
"react-scripts": "^3.0.0",
|
||||
"prismjs": "1.17.1",
|
||||
"react": "^16.9",
|
||||
"react-dom": "^16.9",
|
||||
"react-scripts": "^3.1.1",
|
||||
"file-saver": "^2.0.2",
|
||||
"typeface-roboto-condensed": "latest"
|
||||
},
|
||||
"scripts": {
|
||||
|
@ -42,6 +43,6 @@
|
|||
"not op_mini all"
|
||||
],
|
||||
"devDependencies": {
|
||||
"babel-plugin-prismjs": "1.0.2"
|
||||
"babel-plugin-prismjs": "1.1.1"
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
{
|
||||
"name": "@freesewing/carlton",
|
||||
"version": "2.0.0-beta.43",
|
||||
"version": "2.1.0-alpha.0",
|
||||
"description": "A FreeSewing pattern for Sherlock Holmes cosplay; Or just a nice long coat",
|
||||
"author": "Joost De Cock <joost@decock.org> (https://github.com/joostdecock)",
|
||||
"homepage": "https://freesewing.org/",
|
||||
|
@ -33,10 +33,10 @@
|
|||
"netlify": "echo \"Not configured yet\""
|
||||
},
|
||||
"peerDependencies": {
|
||||
"@freesewing/core": "^2.0.0-beta.43",
|
||||
"@freesewing/plugin-bundle": "^2.0.0-beta.43",
|
||||
"@freesewing/bent": "^2.0.0-beta.43",
|
||||
"@freesewing/plugin-buttons": "^2.0.0-beta.43"
|
||||
"@freesewing/core": "^2.1.0-alpha.0",
|
||||
"@freesewing/plugin-bundle": "^2.1.0-alpha.0",
|
||||
"@freesewing/bent": "^2.1.0-alpha.0",
|
||||
"@freesewing/plugin-buttons": "^2.1.0-alpha.0"
|
||||
},
|
||||
"dependencies": {},
|
||||
"devDependencies": {
|
||||
|
@ -47,14 +47,14 @@
|
|||
"eslint": "^5.16.0",
|
||||
"babel-jest": "24.7.1",
|
||||
"jest": "24.7.1",
|
||||
"@freesewing/components": "^2.0.0-beta.43",
|
||||
"@freesewing/css-theme": "^2.0.0-beta.43",
|
||||
"@freesewing/i18n": "^2.0.0-beta.43",
|
||||
"@freesewing/mui-theme": "^2.0.0-beta.43",
|
||||
"@freesewing/plugin-bust": "^2.0.0-beta.43",
|
||||
"@freesewing/plugin-buttons": "^2.0.0-beta.43",
|
||||
"@freesewing/plugin-flip": "^2.0.0-beta.43",
|
||||
"@freesewing/utils": "^2.0.0-beta.43",
|
||||
"@freesewing/components": "^2.1.0-alpha.0",
|
||||
"@freesewing/css-theme": "^2.1.0-alpha.0",
|
||||
"@freesewing/i18n": "^2.1.0-alpha.0",
|
||||
"@freesewing/mui-theme": "^2.1.0-alpha.0",
|
||||
"@freesewing/plugin-bust": "^2.1.0-alpha.0",
|
||||
"@freesewing/plugin-buttons": "^2.1.0-alpha.0",
|
||||
"@freesewing/plugin-flip": "^2.1.0-alpha.0",
|
||||
"@freesewing/utils": "^2.1.0-alpha.0",
|
||||
"@svgr/rollup": "^2.4.1",
|
||||
"cross-env": "^5.1.4",
|
||||
"gh-pages": "^1.2.0",
|
||||
|
@ -82,7 +82,7 @@
|
|||
],
|
||||
"publishConfig": {
|
||||
"access": "public",
|
||||
"tag": "beta"
|
||||
"tag": "next"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=8.0.0",
|
||||
|
|
|
@ -19,13 +19,14 @@ export default function(part) {
|
|||
points.fold2Top = points.cbTop.shift(0, store.get('cbToDart'))
|
||||
points.fold3Top = points.cbTop.shift(0, store.get('cbToDart') * 2)
|
||||
points.fold4Top = points.fold3Top.shift(0, store.get('cbToDart') / 2)
|
||||
points.waistTop = points.fold4Top.shift(0, store.get('dartToSide'))
|
||||
points.fold5Top = points.fold4Top.shift(0, store.get('cbToDart') / 2)
|
||||
points.waistTop = points.fold5Top.shift(0, store.get('dartToSide'))
|
||||
|
||||
// 12cm will do as we're just drawing a rectangle.
|
||||
// But check that lenght > 12cm because doll clothes.
|
||||
let drawnLength = length < 120 ? length : 120
|
||||
|
||||
for (let i of ['cb', 'fold1', 'fold2', 'fold3', 'fold4', 'waist']) {
|
||||
for (let i of ['cb', 'fold1', 'fold2', 'fold3', 'fold4', 'fold5', 'waist']) {
|
||||
points[i + 'Bottom'] = points[i + 'Top'].shift(-90, drawnLength)
|
||||
if (i === 'cb' || i === 'waist') {
|
||||
points[i + 'MidTop'] = points[i + 'Top'].shift(-90, drawnLength * 0.4)
|
||||
|
@ -61,6 +62,8 @@ export default function(part) {
|
|||
.line(points.cbMidBottom)
|
||||
.move(points.waistMidBottom)
|
||||
.line(points.waistMidTop)
|
||||
.move(points.fold5Top)
|
||||
.line(points.fold5Bottom)
|
||||
.attr('class', 'fabric dashed')
|
||||
|
||||
if (complete) {
|
||||
|
@ -110,6 +113,11 @@ export default function(part) {
|
|||
})
|
||||
macro('hd', {
|
||||
from: points.fold4Bottom,
|
||||
to: points.fold5Bottom,
|
||||
y: points.cbBottom.y + sa + 15
|
||||
})
|
||||
macro('hd', {
|
||||
from: points.fold5Bottom,
|
||||
to: points.waistBottom,
|
||||
y: points.cbBottom.y + sa + 15
|
||||
})
|
||||
|
|
36
packages/cathrin/CHANGELOG.md
Normal file
36
packages/cathrin/CHANGELOG.md
Normal file
|
@ -0,0 +1,36 @@
|
|||
# Change log for: @freesewing/cathrin
|
||||
|
||||
|
||||
## Unreleased
|
||||
|
||||
**Note:** Version bump only for package cathrin
|
||||
|
||||
|
||||
## 2.0.4 (2019-09-27)
|
||||
|
||||
**Note:** Version bump only for package cathrin
|
||||
|
||||
|
||||
## 2.0.3 (2019-09-15)
|
||||
|
||||
**Note:** Version bump only for package cathrin
|
||||
|
||||
|
||||
## 2.0.2 (2019-09-06)
|
||||
|
||||
**Note:** Version bump only for package cathrin
|
||||
|
||||
|
||||
## 2.0.1 (2019-09-01)
|
||||
|
||||
**Note:** Version bump only for package cathrin
|
||||
|
||||
|
||||
|
||||
|
||||
## 2.0.0 (2019-08-25)
|
||||
|
||||
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.
|
|
@ -1,14 +1,9 @@
|
|||
> **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/chat).
|
||||
|
||||
<p align="center">
|
||||
<a title="Go to freesewing.org" href="https://freesewing.org/"><img src="https://freesewing.org/img/logo/black.svg" align="center" width="150px" alt="Freesewing logo"/></a>
|
||||
<br>
|
||||
<a href="https://freesewing.org/">FreeSewing v2</a>
|
||||
</p>
|
||||
<p align="center">A JavaScript library for made-to-measure sewing patterns</p>
|
||||
<p align="center">An open source platform for made-to-measure sewing patterns</p>
|
||||
<p align='center'><a
|
||||
href="https://www.npmjs.com/package/@freesewing/cathrin"
|
||||
title="@freesewing/cathrin on NPM"
|
||||
|
|
|
@ -4,26 +4,27 @@
|
|||
"version": "0.0.0",
|
||||
"private": true,
|
||||
"dependencies": {
|
||||
"@freesewing/components": "beta",
|
||||
"@freesewing/core": "beta",
|
||||
"@freesewing/css-theme": "beta",
|
||||
"@freesewing/i18n": "beta",
|
||||
"@freesewing/models": "beta",
|
||||
"@freesewing/mui-theme": "beta",
|
||||
"@freesewing/pattern-info": "beta",
|
||||
"@freesewing/plugin-bundle": "beta",
|
||||
"@freesewing/plugin-theme": "beta",
|
||||
"@freesewing/plugin-i18n": "beta",
|
||||
"@freesewing/plugin-svgattr": "beta",
|
||||
"@freesewing/utils": "beta",
|
||||
"@material-ui/core": "^4.0.1",
|
||||
"@material-ui/icons": "^4.0.1",
|
||||
"@material-ui/lab": "^v4.0.0-alpha.14",
|
||||
"@freesewing/components": "latest",
|
||||
"@freesewing/core": "latest",
|
||||
"@freesewing/css-theme": "latest",
|
||||
"@freesewing/i18n": "latest",
|
||||
"@freesewing/models": "latest",
|
||||
"@freesewing/mui-theme": "latest",
|
||||
"@freesewing/pattern-info": "latest",
|
||||
"@freesewing/plugin-bundle": "latest",
|
||||
"@freesewing/plugin-theme": "latest",
|
||||
"@freesewing/plugin-i18n": "latest",
|
||||
"@freesewing/plugin-svgattr": "latest",
|
||||
"@freesewing/utils": "latest",
|
||||
"@material-ui/core": "^4.4.0",
|
||||
"@material-ui/icons": "^4.2.1",
|
||||
"@material-ui/lab": "^v4.0.0-alpha.25",
|
||||
"pattern": "link:..",
|
||||
"prismjs": "1.16.0",
|
||||
"react": "^16.8",
|
||||
"react-dom": "^16.8",
|
||||
"react-scripts": "^3.0.0",
|
||||
"prismjs": "1.17.1",
|
||||
"react": "^16.9",
|
||||
"react-dom": "^16.9",
|
||||
"react-scripts": "^3.1.1",
|
||||
"file-saver": "^2.0.2",
|
||||
"typeface-roboto-condensed": "latest"
|
||||
},
|
||||
"scripts": {
|
||||
|
@ -42,6 +43,6 @@
|
|||
"not op_mini all"
|
||||
],
|
||||
"devDependencies": {
|
||||
"babel-plugin-prismjs": "1.0.2"
|
||||
"babel-plugin-prismjs": "1.1.1"
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
{
|
||||
"name": "@freesewing/cathrin",
|
||||
"version": "2.0.0-beta.43",
|
||||
"version": "2.1.0-alpha.0",
|
||||
"description": "A FreeSewing pattern for a underbust corset / waist trainer",
|
||||
"author": "Joost De Cock <joost@decock.org> (https://github.com/joostdecock)",
|
||||
"homepage": "https://freesewing.org/",
|
||||
|
@ -33,8 +33,8 @@
|
|||
"netlify": "echo \"Not configured yet\""
|
||||
},
|
||||
"peerDependencies": {
|
||||
"@freesewing/core": "^2.0.0-beta.43",
|
||||
"@freesewing/plugin-bundle": "^2.0.0-beta.43"
|
||||
"@freesewing/core": "^2.1.0-alpha.0",
|
||||
"@freesewing/plugin-bundle": "^2.1.0-alpha.0"
|
||||
},
|
||||
"dependencies": {},
|
||||
"devDependencies": {
|
||||
|
@ -45,14 +45,14 @@
|
|||
"eslint": "^5.16.0",
|
||||
"babel-jest": "24.7.1",
|
||||
"jest": "24.7.1",
|
||||
"@freesewing/components": "^2.0.0-beta.43",
|
||||
"@freesewing/css-theme": "^2.0.0-beta.43",
|
||||
"@freesewing/i18n": "^2.0.0-beta.43",
|
||||
"@freesewing/mui-theme": "^2.0.0-beta.43",
|
||||
"@freesewing/plugin-bust": "^2.0.0-beta.43",
|
||||
"@freesewing/plugin-buttons": "^2.0.0-beta.43",
|
||||
"@freesewing/plugin-flip": "^2.0.0-beta.43",
|
||||
"@freesewing/utils": "^2.0.0-beta.43",
|
||||
"@freesewing/components": "^2.1.0-alpha.0",
|
||||
"@freesewing/css-theme": "^2.1.0-alpha.0",
|
||||
"@freesewing/i18n": "^2.1.0-alpha.0",
|
||||
"@freesewing/mui-theme": "^2.1.0-alpha.0",
|
||||
"@freesewing/plugin-bust": "^2.1.0-alpha.0",
|
||||
"@freesewing/plugin-buttons": "^2.1.0-alpha.0",
|
||||
"@freesewing/plugin-flip": "^2.1.0-alpha.0",
|
||||
"@freesewing/utils": "^2.1.0-alpha.0",
|
||||
"@svgr/rollup": "^2.4.1",
|
||||
"cross-env": "^5.1.4",
|
||||
"gh-pages": "^1.2.0",
|
||||
|
@ -80,7 +80,7 @@
|
|||
],
|
||||
"publishConfig": {
|
||||
"access": "public",
|
||||
"tag": "beta"
|
||||
"tag": "next"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=8.0.0",
|
||||
|
|
48
packages/components/CHANGELOG.md
Normal file
48
packages/components/CHANGELOG.md
Normal file
|
@ -0,0 +1,48 @@
|
|||
# Change log for: @freesewing/components
|
||||
|
||||
|
||||
## Unreleased
|
||||
|
||||
### Changed
|
||||
|
||||
- Added Penelope and Waralee linedrawings
|
||||
|
||||
### Fixed
|
||||
|
||||
- Fixed display of nested option in SampleConfigurator
|
||||
- Fixed conflicting key values in React components
|
||||
## 2.0.4 (2019-09-27)
|
||||
|
||||
### Added
|
||||
|
||||
- Advanced options and settings are now hidden by default in DraftConfigurator
|
||||
|
||||
### Fixed
|
||||
|
||||
- [#104](https://github.com/freesewing/freesewing/issues/104): Fixed incorrect embed setting on Workbench pattern export
|
||||
## 2.0.3 (2019-09-15)
|
||||
|
||||
### Changed
|
||||
|
||||
- Tweaked DraftConfigurator tags to match CSS rules after frontend upgrade to react-intl v3
|
||||
## 2.0.2 (2019-09-06)
|
||||
|
||||
### Fixed
|
||||
|
||||
- [#104](https://github.com/freesewing/freesewing.org/issues/104): Changed `onDragEnd` to `onChangeCommitted` in slider element (change in material-ui API when slider came out of beta)
|
||||
- Workbench now also lets you preload a `withBreasts` set of measurements
|
||||
- DraftConfigurator now properly styles pattern options 3 levels deep
|
||||
- [#105](https://github.com/freesewing/freesewing.org/issues/105): Moved state change in render loop to useEffect
|
||||
## 2.0.1 (2019-09-01)
|
||||
|
||||
**Note:** Version bump only for package components
|
||||
|
||||
|
||||
|
||||
|
||||
## 2.0.0 (2019-08-25)
|
||||
|
||||
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.
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
|
@ -1,14 +1,9 @@
|
|||
> **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/chat).
|
||||
|
||||
<p align="center">
|
||||
<a title="Go to freesewing.org" href="https://freesewing.org/"><img src="https://freesewing.org/img/logo/black.svg" align="center" width="150px" alt="Freesewing logo"/></a>
|
||||
<br>
|
||||
<a href="https://freesewing.org/">FreeSewing v2</a>
|
||||
</p>
|
||||
<p align="center">A JavaScript library for made-to-measure sewing patterns</p>
|
||||
<p align="center">An open source platform for made-to-measure sewing patterns</p>
|
||||
<p align='center'><a
|
||||
href="https://www.npmjs.com/package/@freesewing/components"
|
||||
title="@freesewing/components on NPM"
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
{
|
||||
"name": "@freesewing/components",
|
||||
"version": "2.0.0-beta.43",
|
||||
"version": "2.1.0-alpha.0",
|
||||
"description": "A collection of React components for FreeSewing web UIs",
|
||||
"author": "Joost De Cock <joost@decock.org> (https://github.com/joostdecock)",
|
||||
"homepage": "https://freesewing.org/",
|
||||
|
@ -28,18 +28,18 @@
|
|||
"peerDependencies": {
|
||||
"react": "^16.8",
|
||||
"prop-types": "15.7.2",
|
||||
"@freesewing/pattern-info": "^2.0.0-beta.43",
|
||||
"@freesewing/mui-theme": "^2.0.0-beta.43",
|
||||
"@freesewing/css-theme": "^2.0.0-beta.43",
|
||||
"@freesewing/plugin-theme": "^2.0.0-beta.43",
|
||||
"@freesewing/core": "^2.0.0-beta.43",
|
||||
"@freesewing/models": "^2.0.0-beta.43",
|
||||
"@freesewing/examples": "^2.0.0-beta.43",
|
||||
"@freesewing/rendertest": "^2.0.0-beta.43",
|
||||
"@freesewing/tutorial": "^2.0.0-beta.43",
|
||||
"@freesewing/pattern-info": "^2.1.0-alpha.0",
|
||||
"@freesewing/mui-theme": "^2.1.0-alpha.0",
|
||||
"@freesewing/css-theme": "^2.1.0-alpha.0",
|
||||
"@freesewing/plugin-theme": "^2.1.0-alpha.0",
|
||||
"@freesewing/core": "^2.1.0-alpha.0",
|
||||
"@freesewing/models": "^2.1.0-alpha.0",
|
||||
"@freesewing/examples": "^2.1.0-alpha.0",
|
||||
"@freesewing/rendertest": "^2.1.0-alpha.0",
|
||||
"@freesewing/tutorial": "^2.1.0-alpha.0",
|
||||
"typeface-roboto-condensed": "latest",
|
||||
"@freesewing/i18n": "^2.0.0-beta.43",
|
||||
"@freesewing/utils": "^2.0.0-beta.43",
|
||||
"@freesewing/i18n": "^2.1.0-alpha.0",
|
||||
"@freesewing/utils": "^2.1.0-alpha.0",
|
||||
"react-intl": "^2.8.0",
|
||||
"@material-ui/core": "^4.0.1",
|
||||
"@material-ui/icons": "^4.0.1",
|
||||
|
@ -71,7 +71,7 @@
|
|||
],
|
||||
"publishConfig": {
|
||||
"access": "public",
|
||||
"tag": "beta"
|
||||
"tag": "next"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=8.0.0",
|
||||
|
|
|
@ -1,48 +1,49 @@
|
|||
import React, { useState } from "react";
|
||||
import PropTypes from "prop-types";
|
||||
import Radio from "@material-ui/core/Radio";
|
||||
import RadioGroup from "@material-ui/core/RadioGroup";
|
||||
import FormControlLabel from "@material-ui/core/FormControlLabel";
|
||||
import React, { useState, useEffect } from 'react'
|
||||
import PropTypes from 'prop-types'
|
||||
import Radio from '@material-ui/core/Radio'
|
||||
import RadioGroup from '@material-ui/core/RadioGroup'
|
||||
import FormControlLabel from '@material-ui/core/FormControlLabel'
|
||||
|
||||
const Bool = props => {
|
||||
const [value, setValue] = useState(props.dflt);
|
||||
const [value, setValue] = useState(props.dflt)
|
||||
useEffect(() => {
|
||||
if (props.value !== value) setValue(props.value)
|
||||
}, [props.value])
|
||||
const toggle = () => {
|
||||
props.updateValue(props.name, !value);
|
||||
setValue(!value);
|
||||
};
|
||||
// Force state update when rerendering due to props change
|
||||
if (props.value !== value) setValue(props.value);
|
||||
props.updateValue(props.name, !value)
|
||||
setValue(!value)
|
||||
}
|
||||
|
||||
return (
|
||||
<RadioGroup onChange={toggle} value={JSON.stringify(value)}>
|
||||
<FormControlLabel
|
||||
control={<Radio color="primary" />}
|
||||
value="false"
|
||||
checked={value === "false" || value === false ? true : false}
|
||||
checked={value === 'false' || value === false ? true : false}
|
||||
label={props.labels[0]}
|
||||
className="po-list-item"
|
||||
/>
|
||||
<FormControlLabel
|
||||
control={<Radio color="primary" />}
|
||||
value="true"
|
||||
checked={value === "true" || value === true ? true : false}
|
||||
checked={value === 'true' || value === true ? true : false}
|
||||
label={props.labels[1]}
|
||||
className="po-list-item"
|
||||
/>
|
||||
</RadioGroup>
|
||||
);
|
||||
};
|
||||
)
|
||||
}
|
||||
|
||||
Bool.propTypes = {
|
||||
dflt: PropTypes.bool,
|
||||
labels: PropTypes.array,
|
||||
updateValue: PropTypes.func.isRequired,
|
||||
name: PropTypes.string.isRequired
|
||||
};
|
||||
}
|
||||
|
||||
Bool.defaultProps = {
|
||||
dflt: false,
|
||||
labels: ["false", "true"]
|
||||
};
|
||||
labels: ['false', 'true']
|
||||
}
|
||||
|
||||
export default Bool;
|
||||
export default Bool
|
||||
|
|
|
@ -1,17 +1,18 @@
|
|||
import React, { useState } from "react";
|
||||
import PropTypes from "prop-types";
|
||||
import Radio from "@material-ui/core/Radio";
|
||||
import RadioGroup from "@material-ui/core/RadioGroup";
|
||||
import FormControlLabel from "@material-ui/core/FormControlLabel";
|
||||
import React, { useState, useEffect } from 'react'
|
||||
import PropTypes from 'prop-types'
|
||||
import Radio from '@material-ui/core/Radio'
|
||||
import RadioGroup from '@material-ui/core/RadioGroup'
|
||||
import FormControlLabel from '@material-ui/core/FormControlLabel'
|
||||
|
||||
const FormFieldList = props => {
|
||||
const [value, setValue] = useState(props.dflt);
|
||||
const [value, setValue] = useState(props.dflt)
|
||||
useEffect(() => {
|
||||
if (props.value !== value) setValue(props.value)
|
||||
}, [props.value])
|
||||
const update = evt => {
|
||||
props.updateValue(props.name, evt.target.value);
|
||||
setValue(evt.target.value);
|
||||
};
|
||||
// Force state update when rerendering due to props change
|
||||
if (props.value !== value) setValue(props.value);
|
||||
props.updateValue(props.name, evt.target.value)
|
||||
setValue(evt.target.value)
|
||||
}
|
||||
|
||||
return (
|
||||
<RadioGroup onChange={update} value={value}>
|
||||
|
@ -26,8 +27,8 @@ const FormFieldList = props => {
|
|||
/>
|
||||
))}
|
||||
</RadioGroup>
|
||||
);
|
||||
};
|
||||
)
|
||||
}
|
||||
|
||||
FormFieldList.propTypes = {
|
||||
dflt: PropTypes.oneOfType([
|
||||
|
@ -38,6 +39,6 @@ FormFieldList.propTypes = {
|
|||
list: PropTypes.object,
|
||||
updateValue: PropTypes.func.isRequired,
|
||||
name: PropTypes.string.isRequired
|
||||
};
|
||||
}
|
||||
|
||||
export default FormFieldList;
|
||||
export default FormFieldList
|
||||
|
|
|
@ -1,26 +1,26 @@
|
|||
import React, { useState } from "react";
|
||||
import PropTypes from "prop-types";
|
||||
import Slider from "@material-ui/core/Slider";
|
||||
import { withStyles } from "@material-ui/core/styles";
|
||||
import React, { useState, useEffect } from 'react'
|
||||
import PropTypes from 'prop-types'
|
||||
import Slider from '@material-ui/core/Slider'
|
||||
import { withStyles } from '@material-ui/core/styles'
|
||||
|
||||
const PaddedSlider = withStyles({
|
||||
container: {
|
||||
padding: "25px 0"
|
||||
padding: '25px 0'
|
||||
},
|
||||
track: { height: "4px" },
|
||||
thumb: { width: "16px", height: "16px" }
|
||||
})(Slider);
|
||||
track: { height: '4px' },
|
||||
thumb: { width: '16px', height: '16px' }
|
||||
})(Slider)
|
||||
|
||||
const FormFieldSlider = props => {
|
||||
const [value, setValue] = useState(props.value);
|
||||
const [value, setValue] = useState(props.value)
|
||||
useEffect(() => {
|
||||
if (props.value !== value) setValue(props.value)
|
||||
}, [props.value])
|
||||
|
||||
const update = (evt, newValue) => {
|
||||
props.updateValue(props.name, newValue, evt);
|
||||
setValue(newValue);
|
||||
};
|
||||
|
||||
// Force state update when rerendering due to props change
|
||||
if (props.value !== value) setValue(props.value);
|
||||
props.updateValue(props.name, newValue, evt)
|
||||
setValue(newValue)
|
||||
}
|
||||
|
||||
return (
|
||||
<PaddedSlider
|
||||
|
@ -29,15 +29,15 @@ const FormFieldSlider = props => {
|
|||
max={props.max}
|
||||
step={props.step}
|
||||
onChange={update}
|
||||
onDragEnd={update}
|
||||
onChangeCommitted={update}
|
||||
classes={{
|
||||
track: "slider-track",
|
||||
thumb: "slider-thumb"
|
||||
track: 'slider-track',
|
||||
thumb: 'slider-thumb'
|
||||
}}
|
||||
aria-labelledby={props.label}
|
||||
/>
|
||||
);
|
||||
};
|
||||
)
|
||||
}
|
||||
|
||||
FormFieldSlider.propTypes = {
|
||||
min: PropTypes.number,
|
||||
|
@ -46,13 +46,13 @@ FormFieldSlider.propTypes = {
|
|||
updateValue: PropTypes.func.isRequired,
|
||||
name: PropTypes.string.isRequired,
|
||||
label: PropTypes.oneOfType([PropTypes.string, PropTypes.oneOf([false])])
|
||||
};
|
||||
}
|
||||
|
||||
FormFieldSlider.defaultProps = {
|
||||
min: 0,
|
||||
max: 100,
|
||||
step: 0.1,
|
||||
label: false
|
||||
};
|
||||
}
|
||||
|
||||
export default FormFieldSlider;
|
||||
export default FormFieldSlider
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
import React from "react";
|
||||
import logoPathString from "./logo-path";
|
||||
import React from 'react'
|
||||
import logoPathString from './logo-path'
|
||||
|
||||
const Snippets = props => {
|
||||
const fill = { fill: "currentColor", stroke: "none" };
|
||||
const stroke = { fill: "none", stroke: "currentColor" };
|
||||
const fill = { fill: 'currentColor', stroke: 'none' }
|
||||
const stroke = { fill: 'none', stroke: 'currentColor' }
|
||||
return [
|
||||
<g id="notch" className="snippet notch" key="notch">
|
||||
<circle cy="0" cx="0" r="1.4" {...fill} />
|
||||
|
@ -22,73 +22,32 @@ const Snippets = props => {
|
|||
</g>,
|
||||
<g id="buttonhole" className="snippet buttonhole" key="buttonhole">
|
||||
<path d="M -1,-5 L 1,-5 L 1,5 L -1,5 z" {...stroke} />
|
||||
<path
|
||||
d="M -1,-5 L 1,-5 L 1,-4 L -1,-4 z M -1,5 L 1,5 L 1,4 L -1,4 z"
|
||||
{...fill}
|
||||
/>
|
||||
<path d="M -1,-5 L 1,-5 L 1,-4 L -1,-4 z M -1,5 L 1,5 L 1,4 L -1,4 z" {...fill} />
|
||||
</g>,
|
||||
<radialGradient
|
||||
id="snap-male-grad"
|
||||
cx="50%"
|
||||
cy="50%"
|
||||
r="50%"
|
||||
fx="50%"
|
||||
fy="50%"
|
||||
>
|
||||
<stop
|
||||
offset="30%"
|
||||
style={{ stopColor: "rgb(235,235,235)", stopOpacity: 1 }}
|
||||
/>
|
||||
<stop
|
||||
offset="80%"
|
||||
style={{ stopColor: "rgb(100,100,100)", stopOpacity: 1 }}
|
||||
/>
|
||||
<radialGradient key="grad" id="snap-male-grad" cx="50%" cy="50%" r="50%" fx="50%" fy="50%">
|
||||
<stop offset="30%" style={{ stopColor: 'rgb(235,235,235)', stopOpacity: 1 }} />
|
||||
<stop offset="80%" style={{ stopColor: 'rgb(100,100,100)', stopOpacity: 1 }} />
|
||||
</radialGradient>,
|
||||
<g id="snap-male">
|
||||
<circle
|
||||
cx="0"
|
||||
cy="0"
|
||||
r="3.4"
|
||||
style={{ stroke: "#666", fill: "#dddddd", strokeWidth: 0.3 }}
|
||||
/>
|
||||
<circle
|
||||
cx="0"
|
||||
cy="0"
|
||||
r="1.8"
|
||||
style={{ stroke: "none", fill: "url(#snap-male-grad)" }}
|
||||
/>
|
||||
<g id="snap-male" key="snapmale">
|
||||
<circle cx="0" cy="0" r="3.4" style={{ stroke: '#666', fill: '#dddddd', strokeWidth: 0.3 }} />
|
||||
<circle cx="0" cy="0" r="1.8" style={{ stroke: 'none', fill: 'url(#snap-male-grad)' }} />
|
||||
<path
|
||||
style={{ fill: "none", stroke: "#666", strokeWidth: 0.2 }}
|
||||
style={{ fill: 'none', stroke: '#666', strokeWidth: 0.2 }}
|
||||
d="M -2,0 L -3,0 M 2,0 L 3,0 M 0,2 L 0,3 M 0,-2 L 0,-3 M 1.5,1.5 L 2.1,2.1 M -1.5,1.5 L -2.1,2.1 M -1.5,-1.5 L -2.1,-2.1 M 1.5,-1.5 L 2.1,-2.1"
|
||||
/>
|
||||
</g>,
|
||||
<g id="snap-female">
|
||||
<circle
|
||||
cx="0"
|
||||
cy="0"
|
||||
r="3.4"
|
||||
style={{ stroke: "#666", fill: "#bbbbbb", strokeWidth: 0.3 }}
|
||||
/>
|
||||
<circle
|
||||
cx="0"
|
||||
cy="0"
|
||||
r="2"
|
||||
style={{ stroke: "#666", fill: "#dddddd", strokeWidth: 0.4 }}
|
||||
/>
|
||||
<g id="snap-female" key="snapfemale">
|
||||
<circle cx="0" cy="0" r="3.4" style={{ stroke: '#666', fill: '#bbbbbb', strokeWidth: 0.3 }} />
|
||||
<circle cx="0" cy="0" r="2" style={{ stroke: '#666', fill: '#dddddd', strokeWidth: 0.4 }} />
|
||||
<path
|
||||
style={{ fill: "none", stroke: "#666", strokeWidth: 0.5 }}
|
||||
style={{ fill: 'none', stroke: '#666', strokeWidth: 0.5 }}
|
||||
d="M -1.7,-1 L -1.7,1 M 1.7,-1 L 1.7,1"
|
||||
/>
|
||||
</g>,
|
||||
<g
|
||||
id="logo"
|
||||
className="snippet logo"
|
||||
transform="translate(-23 -36)"
|
||||
key="logo"
|
||||
>
|
||||
<g id="logo" className="snippet logo" transform="translate(-23 -36)" key="logo">
|
||||
<path d={logoPathString} {...fill} />
|
||||
</g>
|
||||
];
|
||||
};
|
||||
]
|
||||
}
|
||||
|
||||
export default Snippets;
|
||||
export default Snippets
|
||||
|
|
|
@ -1,55 +1,56 @@
|
|||
import React from "react";
|
||||
import React from 'react'
|
||||
|
||||
const DesignPath = props => {
|
||||
let output = [];
|
||||
let i = 0;
|
||||
let from = null;
|
||||
let output = []
|
||||
let i = 0
|
||||
let from = null
|
||||
for (let op of props.path.ops) {
|
||||
if (op.type === "curve") {
|
||||
let key = props.part + props.name + i
|
||||
if (op.type === 'curve') {
|
||||
output.push(
|
||||
<path
|
||||
key={i}
|
||||
key={key + 'cp1'}
|
||||
d={`M ${from.x},${from.y} L ${op.cp1.x},${op.cp1.y}`}
|
||||
className="design path cp"
|
||||
/>
|
||||
);
|
||||
i++;
|
||||
)
|
||||
i++
|
||||
output.push(
|
||||
<path
|
||||
key={i}
|
||||
key={key + 'cp2'}
|
||||
d={`M ${op.to.x},${op.to.y} L ${op.cp2.x},${op.cp2.y}`}
|
||||
className="design path cp"
|
||||
/>
|
||||
);
|
||||
i++;
|
||||
)
|
||||
i++
|
||||
output.push(
|
||||
<circle
|
||||
key={i}
|
||||
key={key + 'cpcirc1'}
|
||||
cx={op.cp1.x}
|
||||
cy={op.cp1.y}
|
||||
r={3.5}
|
||||
className="design path cp"
|
||||
/>
|
||||
);
|
||||
i++;
|
||||
)
|
||||
i++
|
||||
output.push(
|
||||
<circle
|
||||
key={i}
|
||||
key={key + 'cpcirc2'}
|
||||
cx={op.cp2.x}
|
||||
cy={op.cp2.y}
|
||||
r={3.5}
|
||||
className="design path cp"
|
||||
/>
|
||||
);
|
||||
from = op.to;
|
||||
} else if (op.type !== "close") from = op.to;
|
||||
)
|
||||
from = op.to
|
||||
} else if (op.type !== 'close') from = op.to
|
||||
}
|
||||
output.push(
|
||||
<path
|
||||
key={"dpath-" + props.name}
|
||||
key={props.part + props.name + 'dpath'}
|
||||
d={props.path.asPathstring()}
|
||||
onClick={() =>
|
||||
props.raiseEvent("path", {
|
||||
props.raiseEvent('path', {
|
||||
path: props.path,
|
||||
name: props.name,
|
||||
part: props.part
|
||||
|
@ -57,8 +58,8 @@ const DesignPath = props => {
|
|||
}
|
||||
className="design hovertrap"
|
||||
/>
|
||||
);
|
||||
return output;
|
||||
};
|
||||
)
|
||||
return output
|
||||
}
|
||||
|
||||
export default DesignPath;
|
||||
export default DesignPath
|
||||
|
|
|
@ -0,0 +1,4 @@
|
|||
import React from 'react'
|
||||
import PatternOptionBool from '../PatternOptionBool'
|
||||
|
||||
export default props => <PatternOptionBool {...props} name="advanced" />
|
|
@ -0,0 +1,22 @@
|
|||
import React from 'react'
|
||||
import { storiesOf } from '@storybook/react'
|
||||
import Sa from '.'
|
||||
|
||||
const props = {
|
||||
raiseEvent: (type, data) => console.log(`Action of type ${type} triggered, data passed is`, data),
|
||||
updateValue: (name, value) => console.log(`Updated setting ${name}, value is now: ${value}`),
|
||||
name: 'sa',
|
||||
dflt: 'dflt',
|
||||
title: 'Seam allowance',
|
||||
desc:
|
||||
"This is the seam allowance description. I'm wrapped in a p tag. This component only sets the CSS class on a non-default value. It's up to you to supply the CSS to style it.",
|
||||
labels: {
|
||||
none: 'No seam allowance',
|
||||
dflt: 'Standard seam allowance',
|
||||
custom: 'Custom seam allowance'
|
||||
}
|
||||
}
|
||||
|
||||
storiesOf('Low level/DraftSettingSa', module)
|
||||
.add('Metric', () => <Sa {...props} units="metric" />)
|
||||
.add('Imperial', () => <Sa {...props} units="imperial" />)
|
|
@ -1,51 +1,50 @@
|
|||
import React, { useState } from "react";
|
||||
import PropTypes from "prop-types";
|
||||
import { FormattedMessage } from "react-intl";
|
||||
import DraftSettingSa from "../DraftSettingSa";
|
||||
import DraftSettingMargin from "../DraftSettingMargin";
|
||||
import DraftSettingComplete from "../DraftSettingComplete";
|
||||
import DraftSettingPaperless from "../DraftSettingPaperless";
|
||||
import DraftSettingUnits from "../DraftSettingUnits";
|
||||
import DraftSettingLanguage from "../DraftSettingLanguage";
|
||||
import DraftSettingOnly from "../DraftSettingOnly";
|
||||
import RightIcon from "@material-ui/icons/KeyboardArrowRight";
|
||||
import React, { useState } from 'react'
|
||||
import PropTypes from 'prop-types'
|
||||
import { FormattedMessage } from 'react-intl'
|
||||
import DraftSettingSa from '../DraftSettingSa'
|
||||
import DraftSettingMargin from '../DraftSettingMargin'
|
||||
import DraftSettingComplete from '../DraftSettingComplete'
|
||||
import DraftSettingPaperless from '../DraftSettingPaperless'
|
||||
import DraftSettingAdvanced from '../DraftSettingAdvanced'
|
||||
import DraftSettingUnits from '../DraftSettingUnits'
|
||||
import DraftSettingLanguage from '../DraftSettingLanguage'
|
||||
import DraftSettingOnly from '../DraftSettingOnly'
|
||||
import RightIcon from '@material-ui/icons/KeyboardArrowRight'
|
||||
|
||||
const DraftSettings = props => {
|
||||
const [expanded, setExpanded] = useState([]);
|
||||
const [expanded, setExpanded] = useState([])
|
||||
const toggleGroup = group => {
|
||||
let shown = expanded.slice(0);
|
||||
let index = shown.indexOf(group);
|
||||
if (index === -1) shown.push(group);
|
||||
else shown.splice(index, 1);
|
||||
setExpanded(shown);
|
||||
};
|
||||
let shown = expanded.slice(0)
|
||||
let index = shown.indexOf(group)
|
||||
if (index === -1) shown.push(group)
|
||||
else shown.splice(index, 1)
|
||||
setExpanded(shown)
|
||||
}
|
||||
const getDefault = setting => {
|
||||
if (props.recipe && typeof props.recipe.settings[setting] !== "undefined")
|
||||
return props.recipe.settings[setting];
|
||||
if (props.recipe && typeof props.recipe.settings[setting] !== 'undefined')
|
||||
return props.recipe.settings[setting]
|
||||
switch (setting) {
|
||||
case "sa":
|
||||
return 10;
|
||||
case "only":
|
||||
return "dflt";
|
||||
case "complete":
|
||||
return true;
|
||||
case "margin":
|
||||
return 2;
|
||||
case "units":
|
||||
return props.units;
|
||||
case 'sa':
|
||||
return 10
|
||||
case 'only':
|
||||
return 'dflt'
|
||||
case 'complete':
|
||||
return true
|
||||
case 'margin':
|
||||
return 2
|
||||
case 'units':
|
||||
return props.units
|
||||
default:
|
||||
return false;
|
||||
return false
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
let noyes = [
|
||||
<FormattedMessage id="app.no" />,
|
||||
<FormattedMessage id="app.yes" />
|
||||
];
|
||||
let noyes = [<FormattedMessage id="app.no" />, <FormattedMessage id="app.yes" />]
|
||||
let hideshow = [<FormattedMessage id="app.hide" />, <FormattedMessage id="app.show" />]
|
||||
let units = {
|
||||
metric: <FormattedMessage id="app.metricUnits" />,
|
||||
imperial: <FormattedMessage id="app.imperialUnits" />
|
||||
};
|
||||
}
|
||||
const addProps = setting => {
|
||||
const labels = {
|
||||
sa: {
|
||||
|
@ -58,8 +57,9 @@ const DraftSettings = props => {
|
|||
custom: <FormattedMessage id="app.custom" />
|
||||
},
|
||||
paperless: noyes,
|
||||
complete: noyes
|
||||
};
|
||||
advanced: hideshow,
|
||||
complete: hideshow
|
||||
}
|
||||
let childProps = {
|
||||
raiseEvent: props.raiseEvent,
|
||||
updateValue: props.updateValue,
|
||||
|
@ -69,80 +69,74 @@ const DraftSettings = props => {
|
|||
labels: labels[setting],
|
||||
noDocs: props.noDocs,
|
||||
dflt: getDefault(setting)
|
||||
};
|
||||
childProps.title = (
|
||||
<FormattedMessage id={"settings." + setting + ".title"} />
|
||||
);
|
||||
childProps.desc = (
|
||||
<FormattedMessage id={"settings." + setting + ".description"} />
|
||||
);
|
||||
if (setting === "only") {
|
||||
childProps.customDflt = [];
|
||||
childProps.parts = {};
|
||||
}
|
||||
childProps.title = <FormattedMessage id={'settings.' + setting + '.title'} />
|
||||
childProps.desc = <FormattedMessage id={'settings.' + setting + '.description'} />
|
||||
if (setting === 'only') {
|
||||
childProps.customDflt = []
|
||||
childProps.parts = {}
|
||||
if (props.config.draftOrder) {
|
||||
for (let part of props.config.draftOrder)
|
||||
childProps.parts[part] = <FormattedMessage id={"parts." + part} />;
|
||||
childProps.parts[part] = <FormattedMessage id={'parts.' + part} />
|
||||
}
|
||||
}
|
||||
if (
|
||||
typeof props.gist !== "undefined" &&
|
||||
typeof props.gist.settings !== "undefined" &&
|
||||
typeof props.gist.settings[setting] !== "undefined"
|
||||
typeof props.gist !== 'undefined' &&
|
||||
typeof props.gist.settings !== 'undefined' &&
|
||||
typeof props.gist.settings[setting] !== 'undefined'
|
||||
)
|
||||
childProps.value = props.gist.settings[setting];
|
||||
else childProps.value = null;
|
||||
childProps.value = props.gist.settings[setting]
|
||||
else childProps.value = null
|
||||
|
||||
return childProps;
|
||||
};
|
||||
return childProps
|
||||
}
|
||||
|
||||
let groups = {
|
||||
preferences: [
|
||||
<DraftSettingSa {...addProps("sa")} />,
|
||||
<DraftSettingPaperless {...addProps("paperless")} />,
|
||||
<DraftSettingComplete {...addProps("complete")} />
|
||||
],
|
||||
advanced: [
|
||||
<DraftSettingOnly {...addProps("only")} />,
|
||||
<DraftSettingMargin {...addProps("margin")} />,
|
||||
<DraftSettingUnits {...addProps("units")} list={units} />,
|
||||
<DraftSettingLanguage {...addProps("locale")} />
|
||||
<DraftSettingLanguage {...addProps('locale')} />,
|
||||
<DraftSettingUnits {...addProps('units')} list={units} />,
|
||||
<DraftSettingComplete {...addProps('complete')} />,
|
||||
<DraftSettingMargin {...addProps('margin')} />,
|
||||
<DraftSettingOnly {...addProps('only')} />
|
||||
]
|
||||
};
|
||||
}
|
||||
|
||||
return (
|
||||
<ul className="config l2">
|
||||
{Object.keys(groups).map(group => {
|
||||
let open = true;
|
||||
if (expanded.indexOf(group) === -1) open = false;
|
||||
let children = null;
|
||||
if (open) children = groups[group].map(component => component);
|
||||
return (
|
||||
<React.Fragment key={group}>
|
||||
<li
|
||||
className={open ? "expanded" : "collapsed"}
|
||||
key={group + "-ghead"}
|
||||
>
|
||||
<span onClick={() => toggleGroup(group)}>
|
||||
<RightIcon
|
||||
className={
|
||||
"icon-col-exp " + (open ? "expanded" : "collapsed")
|
||||
}
|
||||
/>
|
||||
<FormattedMessage id={"optiongroups." + group} />
|
||||
</span>
|
||||
</li>
|
||||
{children}
|
||||
</React.Fragment>
|
||||
);
|
||||
})}
|
||||
</ul>
|
||||
);
|
||||
};
|
||||
<React.Fragment>
|
||||
<ul className="config l2 nogroups">
|
||||
<DraftSettingSa {...addProps('sa')} />
|
||||
<DraftSettingPaperless {...addProps('paperless')} />
|
||||
<DraftSettingAdvanced {...addProps('advanced')} />
|
||||
</ul>
|
||||
{props.gist.settings.advanced ? (
|
||||
<ul className="config l2">
|
||||
{Object.keys(groups).map(group => {
|
||||
let open = true
|
||||
if (expanded.indexOf(group) === -1) open = false
|
||||
let children = null
|
||||
if (open) children = groups[group].map(component => component)
|
||||
return (
|
||||
<React.Fragment key={group}>
|
||||
<li className={open ? 'expanded' : 'collapsed'} key={group + '-ghead'}>
|
||||
<span onClick={() => toggleGroup(group)}>
|
||||
<RightIcon className={'icon-col-exp ' + (open ? 'expanded' : 'collapsed')} />
|
||||
<FormattedMessage id={'optiongroups.' + group} />
|
||||
</span>
|
||||
</li>
|
||||
{children}
|
||||
</React.Fragment>
|
||||
)
|
||||
})}
|
||||
</ul>
|
||||
) : null}
|
||||
</React.Fragment>
|
||||
)
|
||||
}
|
||||
|
||||
DraftSettings.propTypes = {
|
||||
config: PropTypes.object.isRequired
|
||||
};
|
||||
}
|
||||
|
||||
DraftSettings.defaultProps = {};
|
||||
DraftSettings.defaultProps = {}
|
||||
|
||||
export default DraftSettings;
|
||||
export default DraftSettings
|
||||
|
|
|
@ -1,104 +1,104 @@
|
|||
import React from "react";
|
||||
import PropTypes from "prop-types";
|
||||
import Pct from "../PatternOptionPercentage";
|
||||
import Deg from "../PatternOptionDegree";
|
||||
import Mm from "../PatternOptionMillimeter";
|
||||
import Bool from "../PatternOptionBool";
|
||||
import List from "../PatternOptionList";
|
||||
import Count from "../PatternOptionCount";
|
||||
import optionType from "@freesewing/utils/optionType";
|
||||
import optionDefault from "@freesewing/utils/optionDefault";
|
||||
import { FormattedMessage } from "react-intl";
|
||||
import { injectIntl } from "react-intl";
|
||||
import React from 'react'
|
||||
import PropTypes from 'prop-types'
|
||||
import Pct from '../PatternOptionPercentage'
|
||||
import Deg from '../PatternOptionDegree'
|
||||
import Mm from '../PatternOptionMillimeter'
|
||||
import Bool from '../PatternOptionBool'
|
||||
import List from '../PatternOptionList'
|
||||
import Count from '../PatternOptionCount'
|
||||
import optionType from '@freesewing/utils/optionType'
|
||||
import optionDefault from '@freesewing/utils/optionDefault'
|
||||
import { FormattedMessage } from 'react-intl'
|
||||
import { injectIntl } from 'react-intl'
|
||||
import RightIcon from '@material-ui/icons/KeyboardArrowRight'
|
||||
|
||||
const OptionGroup = props => {
|
||||
const renderOption = (name, sub = false) => {
|
||||
let option = props.config.options[name];
|
||||
let type = optionType(option);
|
||||
let stringKey = `options.${props.config.name}.${name}.`;
|
||||
let option = props.config.options[name]
|
||||
let type = optionType(option)
|
||||
let stringKey = `options.${props.config.name}.${name}.`
|
||||
let extraProps = {
|
||||
name,
|
||||
dflt: optionDefault(name, props.config.options[name], props.recipe),
|
||||
units: props.units,
|
||||
updateValue: props.updateValue,
|
||||
raiseEvent: props.raiseEvent,
|
||||
title: <FormattedMessage id={stringKey + "title"} />,
|
||||
desc: <FormattedMessage id={stringKey + "description"} />,
|
||||
title: <FormattedMessage id={stringKey + 'title'} />,
|
||||
desc: <FormattedMessage id={stringKey + 'description'} />,
|
||||
intl: props.intl,
|
||||
pattern: props.config.name,
|
||||
key: name,
|
||||
noDocs: props.noDocs
|
||||
};
|
||||
if (
|
||||
typeof props.gist !== "undefined" &&
|
||||
typeof props.gist.settings !== "undefined" &&
|
||||
typeof props.gist.settings.options !== "undefined" &&
|
||||
typeof props.gist.settings.options[name] !== "undefined"
|
||||
)
|
||||
extraProps.value = props.gist.settings.options[name];
|
||||
else extraProps.value = null;
|
||||
|
||||
let noyes = [
|
||||
<FormattedMessage id="app.no" />,
|
||||
<FormattedMessage id="app.yes" />
|
||||
];
|
||||
switch (type) {
|
||||
case "pct":
|
||||
return <Pct {...option} {...extraProps} />;
|
||||
break;
|
||||
case "deg":
|
||||
return <Deg {...option} {...extraProps} />;
|
||||
break;
|
||||
case "mm":
|
||||
return <Mm {...option} {...extraProps} units={props.units} />;
|
||||
break;
|
||||
case "bool":
|
||||
return <Bool {...option} {...extraProps} labels={noyes} />;
|
||||
break;
|
||||
case "list":
|
||||
return <List {...option} {...extraProps} />;
|
||||
break;
|
||||
case "count":
|
||||
return <Count {...option} {...extraProps} />;
|
||||
break;
|
||||
default:
|
||||
throw new Error("Unsupported option type: " + type);
|
||||
}
|
||||
};
|
||||
if (
|
||||
typeof props.gist !== 'undefined' &&
|
||||
typeof props.gist.settings !== 'undefined' &&
|
||||
typeof props.gist.settings.options !== 'undefined' &&
|
||||
typeof props.gist.settings.options[name] !== 'undefined'
|
||||
)
|
||||
extraProps.value = props.gist.settings.options[name]
|
||||
else extraProps.value = null
|
||||
|
||||
let noyes = [<FormattedMessage id="app.no" />, <FormattedMessage id="app.yes" />]
|
||||
switch (type) {
|
||||
case 'pct':
|
||||
return <Pct {...option} {...extraProps} />
|
||||
break
|
||||
case 'deg':
|
||||
return <Deg {...option} {...extraProps} />
|
||||
break
|
||||
case 'mm':
|
||||
return <Mm {...option} {...extraProps} units={props.units} />
|
||||
break
|
||||
case 'bool':
|
||||
return <Bool {...option} {...extraProps} labels={noyes} />
|
||||
break
|
||||
case 'list':
|
||||
return <List {...option} {...extraProps} />
|
||||
break
|
||||
case 'count':
|
||||
return <Count {...option} {...extraProps} />
|
||||
break
|
||||
default:
|
||||
throw new Error('Unsupported option type: ' + type)
|
||||
}
|
||||
}
|
||||
|
||||
return (
|
||||
<React.Fragment>
|
||||
{props.options.map(name => {
|
||||
//let key = name;
|
||||
let output = [];
|
||||
if (typeof name === "object") {
|
||||
let output = []
|
||||
if (typeof name === 'object') {
|
||||
//key = Object.keys(name).pop();
|
||||
// Subgroup
|
||||
for (let subGroup of Object.keys(name)) {
|
||||
let children = []
|
||||
for (let option of name[subGroup]) children.push(renderOption(option, true))
|
||||
output.push(
|
||||
<span key={subGroup + "-title"} className="subheading">
|
||||
<FormattedMessage id={"optiongroups." + subGroup} />
|
||||
</span>
|
||||
);
|
||||
let children = [];
|
||||
for (let option of name[subGroup])
|
||||
children.push(renderOption(option, true));
|
||||
output.push(<ul className="config l4">{children}</ul>);
|
||||
<li>
|
||||
<span key={subGroup + '-title'} className="subheading">
|
||||
<RightIcon className="icon-col-exp expanded" />
|
||||
<FormattedMessage id={'optiongroups.' + subGroup} />
|
||||
</span>
|
||||
<ul className="config l4">{children}</ul>
|
||||
</li>
|
||||
)
|
||||
}
|
||||
} else output.push(renderOption(name));
|
||||
} else output.push(renderOption(name))
|
||||
|
||||
return output;
|
||||
return output
|
||||
})}
|
||||
</React.Fragment>
|
||||
);
|
||||
};
|
||||
)
|
||||
}
|
||||
|
||||
OptionGroup.propTypes = {
|
||||
config: PropTypes.object.isRequired,
|
||||
options: PropTypes.array.isRequired,
|
||||
units: PropTypes.oneOf(["metric", "imperial"]).isRequired
|
||||
};
|
||||
units: PropTypes.oneOf(['metric', 'imperial']).isRequired
|
||||
}
|
||||
|
||||
OptionGroup.defaultProps = {};
|
||||
OptionGroup.defaultProps = {}
|
||||
|
||||
export default injectIntl(OptionGroup);
|
||||
export default injectIntl(OptionGroup)
|
||||
|
|
|
@ -1,30 +1,30 @@
|
|||
import React, { useState } from "react";
|
||||
import PropTypes from "prop-types";
|
||||
import OptionGroup from "../OptionGroup";
|
||||
import { FormattedMessage } from "react-intl";
|
||||
import RightIcon from "@material-ui/icons/KeyboardArrowRight";
|
||||
import React, { useState } from 'react'
|
||||
import PropTypes from 'prop-types'
|
||||
import OptionGroup from '../OptionGroup'
|
||||
import { FormattedMessage } from 'react-intl'
|
||||
import RightIcon from '@material-ui/icons/KeyboardArrowRight'
|
||||
|
||||
const PatternOptions = props => {
|
||||
const [expanded, setExpanded] = useState([]);
|
||||
const [expanded, setExpanded] = useState([])
|
||||
const toggleGroup = group => {
|
||||
let shown = expanded.slice(0);
|
||||
let index = shown.indexOf(group);
|
||||
if (index === -1) shown.push(group);
|
||||
else shown.splice(index, 1);
|
||||
setExpanded(shown);
|
||||
};
|
||||
let shown = expanded.slice(0)
|
||||
let index = shown.indexOf(group)
|
||||
if (index === -1) shown.push(group)
|
||||
else shown.splice(index, 1)
|
||||
setExpanded(shown)
|
||||
}
|
||||
|
||||
const renderGroup = group => {
|
||||
let open = true;
|
||||
if (expanded.indexOf(group) === -1) open = false;
|
||||
let output = [];
|
||||
let children = null;
|
||||
let open = true
|
||||
if (expanded.indexOf(group) === -1) open = false
|
||||
let output = []
|
||||
let children = null
|
||||
if (expanded.indexOf(group) !== -1)
|
||||
children = (
|
||||
<ul className="config l3">
|
||||
<OptionGroup
|
||||
noDocs={props.noDocs}
|
||||
key={group + "-group"}
|
||||
key={group + '-group'}
|
||||
units={props.units}
|
||||
config={props.config}
|
||||
gist={props.gist}
|
||||
|
@ -34,34 +34,35 @@ const PatternOptions = props => {
|
|||
raiseEvent={props.raiseEvent}
|
||||
/>
|
||||
</ul>
|
||||
);
|
||||
)
|
||||
output.push(
|
||||
<li className={open ? "expanded" : "collapsed"} key={group + "-ghead"}>
|
||||
<li className={open ? 'expanded' : 'collapsed'} key={group + '-ghead'}>
|
||||
<span onClick={() => toggleGroup(group)}>
|
||||
<RightIcon
|
||||
className={"icon-col-exp " + (open ? "expanded" : "collapsed")}
|
||||
/>
|
||||
<FormattedMessage id={"optiongroups." + group} />
|
||||
<RightIcon className={'icon-col-exp ' + (open ? 'expanded' : 'collapsed')} />
|
||||
<FormattedMessage id={'optiongroups.' + group} />
|
||||
</span>
|
||||
{children}
|
||||
</li>
|
||||
);
|
||||
)
|
||||
|
||||
return output;
|
||||
};
|
||||
return output
|
||||
}
|
||||
|
||||
return (
|
||||
<ul className="config l2">
|
||||
{Object.keys(props.config.optionGroups).map(group => renderGroup(group))}
|
||||
</ul>
|
||||
);
|
||||
};
|
||||
const children = []
|
||||
for (let group in props.config.optionGroups) {
|
||||
if (props.gist.settings.advanced || group !== 'advanced') {
|
||||
children.push(renderGroup(group))
|
||||
}
|
||||
}
|
||||
|
||||
return <ul className="config l2">{children}</ul>
|
||||
}
|
||||
|
||||
PatternOptions.propTypes = {
|
||||
config: PropTypes.object.isRequired,
|
||||
raiseEvent: PropTypes.func
|
||||
};
|
||||
}
|
||||
|
||||
PatternOptions.defaultProps = {};
|
||||
PatternOptions.defaultProps = {}
|
||||
|
||||
export default PatternOptions;
|
||||
export default PatternOptions
|
||||
|
|
|
@ -1,52 +1,52 @@
|
|||
import React, { useState } from "react";
|
||||
import PropTypes from "prop-types";
|
||||
import { FormattedMessage } from "react-intl";
|
||||
import PatternOptions from "./PatternOptions";
|
||||
import DraftSettings from "./DraftSettings";
|
||||
import React, { useState } from 'react'
|
||||
import PropTypes from 'prop-types'
|
||||
import { FormattedMessage } from 'react-intl'
|
||||
import PatternOptions from './PatternOptions'
|
||||
import DraftSettings from './DraftSettings'
|
||||
|
||||
const DraftConfigurator = props => {
|
||||
const [expanded, setExpanded] = useState([]);
|
||||
const [expanded, setExpanded] = useState([])
|
||||
|
||||
return (
|
||||
<ul className="config l1">
|
||||
<li>
|
||||
<FormattedMessage id="app.patternOptions" />
|
||||
<span>
|
||||
<FormattedMessage id="app.patternOptions" />
|
||||
</span>
|
||||
<PatternOptions
|
||||
noDocs={props.noDocs}
|
||||
config={props.config}
|
||||
gist={props.gist}
|
||||
recipe={props.recipe}
|
||||
updateValue={(name, value) =>
|
||||
props.updateGist(value, "settings", "options", name)
|
||||
}
|
||||
updateValue={(name, value) => props.updateGist(value, 'settings', 'options', name)}
|
||||
raiseEvent={props.raiseEvent}
|
||||
units={props.units}
|
||||
/>
|
||||
</li>
|
||||
<li>
|
||||
<FormattedMessage id="app.draftSettings" />
|
||||
<span>
|
||||
<FormattedMessage id="app.settings" />
|
||||
</span>
|
||||
<DraftSettings
|
||||
noDocs={props.noDocs}
|
||||
config={props.config}
|
||||
gist={props.gist}
|
||||
recipe={props.recipe}
|
||||
updateValue={(name, value) =>
|
||||
props.updateGist(value, "settings", name)
|
||||
}
|
||||
updateValue={(name, value) => props.updateGist(value, 'settings', name)}
|
||||
raiseEvent={props.raiseEvent}
|
||||
units={props.units}
|
||||
/>
|
||||
</li>
|
||||
</ul>
|
||||
);
|
||||
};
|
||||
)
|
||||
}
|
||||
|
||||
DraftConfigurator.propTypes = {
|
||||
units: PropTypes.oneOf(["metric", "imperial"]).isRequired
|
||||
};
|
||||
units: PropTypes.oneOf(['metric', 'imperial']).isRequired
|
||||
}
|
||||
|
||||
DraftConfigurator.defaultProps = {
|
||||
noDocs: false
|
||||
};
|
||||
}
|
||||
|
||||
export default DraftConfigurator;
|
||||
export default DraftConfigurator
|
||||
|
|
|
@ -18,7 +18,7 @@ const Footer = props => {
|
|||
left: {
|
||||
blog: 'https://' + props.language + '.freesewing.org/blog',
|
||||
aboutFreesewing: 'https://' + props.language + '.freesewing.org/docs/about',
|
||||
faq: 'https://' + props.language + '.freesewing.org/docs/faq'
|
||||
faq: 'https://' + props.language + '.freesewing.org/faq'
|
||||
},
|
||||
right: {
|
||||
becomeAPatron: 'https://' + props.language + '.freesewing.org/patrons/join',
|
||||
|
|
|
@ -3,32 +3,29 @@ import PropTypes from 'prop-types'
|
|||
import patterns from './patterns'
|
||||
|
||||
const LineDrawing = props => {
|
||||
return (
|
||||
<svg
|
||||
style={props.style}
|
||||
className={'fs linedrawing ' + props.className}
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
width={props.size}
|
||||
height={props.size}
|
||||
viewBox="0 0 270 270"
|
||||
>
|
||||
{patterns[props.pattern].map(el => el)}
|
||||
</svg>
|
||||
)
|
||||
const attr = {
|
||||
style: props.style,
|
||||
className: 'fs linedrawing ' + props.className,
|
||||
xmlns: 'http://www.w3.org/2000/svg',
|
||||
viewBox: '0 0 270 270'
|
||||
}
|
||||
if (props.size) {
|
||||
attr.width = props.size
|
||||
attr.height = props.size
|
||||
}
|
||||
return <svg {...attr}>{patterns[props.pattern].map(el => el)}</svg>
|
||||
}
|
||||
|
||||
LineDrawing.propTypes = {
|
||||
size: PropTypes.number,
|
||||
viewBox: PropTypes.string,
|
||||
pattern: PropTypes.string,
|
||||
style: PropTypes.object
|
||||
}
|
||||
|
||||
LineDrawing.defaultProps = {
|
||||
size: 64,
|
||||
size: false,
|
||||
className: '',
|
||||
pattern: 'aaron',
|
||||
color: false,
|
||||
style: {}
|
||||
}
|
||||
|
||||
|
|
|
@ -76,7 +76,7 @@ const svg = {
|
|||
/>
|
||||
],
|
||||
carlita: [
|
||||
<rect class="inside" width="36.455551" height="234.44821" x="46.884758" y="23.763041" />,
|
||||
<rect className="inside" width="36.455551" height="234.44821" x="46.884758" y="23.763041" />,
|
||||
<path
|
||||
className="primary"
|
||||
d="m 191.24517,25.745198 c 0,0.05771 5.3e-4,0.110241 0,0.167949 l -14.06322,0.377237 -18.26297,5.2002 c 2.14918,15.066533 1.41082,27.431452 -0.87592,38.353732 1.55852,17.188315 2.32116,35.218314 2.08153,54.038564 -0.25083,19.66574 -2.51608,39.79971 -3.22874,60.14051 -0.87138,24.86753 -0.1886,49.98843 -0.19482,74.1903 h 32.67655 5.69888 42.73279 c -0.006,-24.20187 0.6961,-49.32277 -0.17466,-74.1903 -0.71266,-20.3408 -2.99755,-40.47477 -3.24838,-60.14051 -0.23963,-18.82025 0.54212,-36.850249 2.10064,-54.038564 -2.28674,-10.92228 -3.04421,-23.287199 -0.89503,-38.353732 l -17.75809,-5.053438 -19.89801,-0.523999 c 0,-0.05637 5.3e-4,-0.111583 0,-0.167949 l -3.3259,0.08372 z m -142.955611,0.0036 -20.142441,5.751071 c 2.149189,15.066531 1.397392,27.422149 -0.889352,38.34443 1.55852,17.188312 2.32994,35.221411 2.090314,54.041661 -0.250833,19.66574 -2.522799,39.80127 -3.235462,60.14206 -0.871377,24.86753 -0.182395,49.98187 -0.188619,74.18307 H 64.294784 V 101.71782 C 58.908428,76.429557 48.445785,54.598209 48.289559,25.748815 Z m 36.384859,0 C 84.518192,54.598209 74.055549,76.429557 68.669193,101.71782 v 156.49329 h 38.370787 c -0.006,-24.2012 0.68276,-49.31554 -0.18862,-74.18307 -0.71266,-20.34079 -2.98515,-40.47632 -3.23598,-60.14206 -0.23963,-18.82025 0.53231,-36.853352 2.09083,-54.041664 -2.28674,-10.92228 -3.03854,-23.277899 -0.88935,-38.34443 z"
|
||||
|
@ -233,6 +233,16 @@ const svg = {
|
|||
d="M 55.660883,61.69981 41.816658,72.032238 C 50.94618,91.608351 56.060714,125.39448 66.132389,139.08288 62.710885,127.8475 62.418098,105.38728 59.952128,92.055499 58.122131,82.162347 55.957618,72.250301 55.660883,61.69981 Z m 24.451914,0 13.844225,10.332428 C 84.8275,91.608351 76.012816,125.30584 65.941141,138.99424 c 3.421505,-11.23538 7.414441,-33.60696 9.880411,-46.938741 1.829997,-9.893152 3.99451,-19.805198 4.291245,-30.355689 z M 196.18798,44.925968 c -5.61536,0 -9.48696,0.897064 -11.97937,2.200604 l -6.57602,6.014984 c 2.6739,0.873199 5.28444,1.303383 7.823,1.467069 0.008,5.48e-4 0.0164,-5.48e-4 0.0243,0 7.6775,-0.605919 15.33074,0.26376 23.00433,0 0.009,-5.48e-4 0.0164,5.48e-4 0.025,0 2.54091,-0.163295 5.14597,-0.592852 7.823,-1.467069 l -6.55177,-6.014984 c -2.49241,-1.30354 -6.36401,-2.200604 -11.97937,-2.200604 -0.26676,0 -0.539,0.01893 -0.80655,0.02441 -0.26755,-0.0055 -0.53979,-0.02441 -0.80655,-0.02441 z"
|
||||
/>
|
||||
],
|
||||
penelope: [
|
||||
<path
|
||||
className="primary"
|
||||
d="M 19.594116,33.914795 C 3.8686903,102.95337 23.42891,170.82044 25.345459,239.27399 h 92.359311 c 1.91655,-68.45355 21.47677,-136.32062 5.75135,-205.359195 z m 125.689084,0 c -15.72542,69.038575 3.8348,136.905645 5.75134,205.359195 h 92.35932 c 1.91655,-68.45355 21.47677,-136.32062 5.75134,-205.359195 z"
|
||||
/>,
|
||||
<path
|
||||
className="secondary"
|
||||
d="M 18.267517,41.643677 H 124.89807 Z m 125.804443,0 h 106.63055 z m 53.31116,144.533383 v 53.09693 z"
|
||||
/>
|
||||
],
|
||||
sandy: [
|
||||
<path
|
||||
className="primary"
|
||||
|
@ -280,6 +290,33 @@ const svg = {
|
|||
d="M 3.1756236,193.95004 H 16.903804 Z m 112.3124864,0 h 13.73619 z m 19.36418,0 h 13.72823 z m 112.31274,0 h 13.73619 z M 158.17531,85.431303 h 79.59289 m -15.05256,24.574867 v 59.78632 m -49.51627,-59.78632 v 59.78632 m -106.261495,8.66723 a 0.7398389,0.7398389 0 0 1 -0.739839,0.73984 0.7398389,0.7398389 0 0 1 -0.739839,-0.73984 0.7398389,0.7398389 0 0 1 0.739839,-0.73984 0.7398389,0.7398389 0 0 1 0.739839,0.73984 z m -1.114694,-0.37486 0.749713,0.74972 m -0.749713,0 0.749713,-0.74972 m 0.549941,0.37486 a 0.92479867,0.92479867 0 0 1 -0.924799,0.9248 0.92479867,0.92479867 0 0 1 -0.924798,-0.9248 0.92479867,0.92479867 0 0 1 0.924798,-0.9248 0.92479867,0.92479867 0 0 1 0.924799,0.9248 z m -0.18496,-14.2276 a 0.7398389,0.7398389 0 0 1 -0.739839,0.73984 0.7398389,0.7398389 0 0 1 -0.739839,-0.73984 0.7398389,0.7398389 0 0 1 0.739839,-0.73984 0.7398389,0.7398389 0 0 1 0.739839,0.73984 z m -1.114694,-0.37487 0.749713,0.74971 m -0.749713,0 0.749713,-0.74971 m 0.549941,0.37487 a 0.92479867,0.92479867 0 0 1 -0.924799,0.9248 0.92479867,0.92479867 0 0 1 -0.924798,-0.9248 0.92479867,0.92479867 0 0 1 0.924798,-0.9248 0.92479867,0.92479867 0 0 1 0.924799,0.9248 z m -0.18496,-14.20888 a 0.7398389,0.7398389 0 0 1 -0.739839,0.73984 0.7398389,0.7398389 0 0 1 -0.739839,-0.73984 0.7398389,0.7398389 0 0 1 0.739839,-0.73984 0.7398389,0.7398389 0 0 1 0.739839,0.73984 z m -1.114694,-0.37512 0.749713,0.74997 m -0.749713,0 0.749713,-0.74997 m 0.549941,0.37512 a 0.92479867,0.92479867 0 0 1 -0.924799,0.9248 0.92479867,0.92479867 0 0 1 -0.924798,-0.9248 0.92479867,0.92479867 0 0 1 0.924798,-0.9248 0.92479867,0.92479867 0 0 1 0.924799,0.9248 z m -0.18496,-14.20912 a 0.7398389,0.7398389 0 0 1 -0.739839,0.73984 0.7398389,0.7398389 0 0 1 -0.739839,-0.73984 0.7398389,0.7398389 0 0 1 0.739839,-0.73984 0.7398389,0.7398389 0 0 1 0.739839,0.73984 z m -1.114694,-0.37487 0.749713,0.74972 m -0.749713,0 0.749713,-0.74972 m 0.549941,0.37487 a 0.92479867,0.92479867 0 0 1 -0.924799,0.9248 0.92479867,0.92479867 0 0 1 -0.924798,-0.9248 0.92479867,0.92479867 0 0 1 0.924798,-0.9248 0.92479867,0.92479867 0 0 1 0.924799,0.9248 z m -0.18496,-14.20888 a 0.7398389,0.7398389 0 0 1 -0.739839,0.73984 0.7398389,0.7398389 0 0 1 -0.739839,-0.73984 0.7398389,0.7398389 0 0 1 0.739839,-0.73984 0.7398389,0.7398389 0 0 1 0.739839,0.73984 z m -1.114694,-0.37486 0.749713,0.74972 m -0.749713,0 0.749713,-0.74972 m 0.549941,0.37486 a 0.92479867,0.92479867 0 0 1 -0.924799,0.9248 0.92479867,0.92479867 0 0 1 -0.924798,-0.9248 0.92479867,0.92479867 0 0 1 0.924798,-0.9248 0.92479867,0.92479867 0 0 1 0.924799,0.9248 z m -0.18496,-14.22761 a 0.7398389,0.7398389 0 0 1 -0.739839,0.73984 0.7398389,0.7398389 0 0 1 -0.739839,-0.73984 0.7398389,0.7398389 0 0 1 0.739839,-0.73984 0.7398389,0.7398389 0 0 1 0.739839,0.73984 z m -1.114694,-0.37486 0.749713,0.74972 m -0.749713,0 0.749713,-0.74972 m 0.549941,0.37486 a 0.92479867,0.92479867 0 0 1 -0.924799,0.9248 0.92479867,0.92479867 0 0 1 -0.924798,-0.9248 0.92479867,0.92479867 0 0 1 0.924798,-0.9248 0.92479867,0.92479867 0 0 1 0.924799,0.9248 z m -0.18496,-14.209127 a 0.7398389,0.7398389 0 0 1 -0.739839,0.739839 0.7398389,0.7398389 0 0 1 -0.739839,-0.739839 0.7398389,0.7398389 0 0 1 0.739839,-0.739839 0.7398389,0.7398389 0 0 1 0.739839,0.739839 z m -1.114694,-0.374858 0.749713,0.74997 m -0.749713,0 0.749713,-0.74997 m 0.549941,0.374858 a 0.92479867,0.92479867 0 0 1 -0.924799,0.924798 0.92479867,0.92479867 0 0 1 -0.924798,-0.924798 0.92479867,0.92479867 0 0 1 0.924798,-0.924799 0.92479867,0.92479867 0 0 1 0.924799,0.924799 z m -0.18496,-15.389672 a 0.7398389,0.7398389 0 0 1 -0.739839,0.739839 0.7398389,0.7398389 0 0 1 -0.739839,-0.739839 0.7398389,0.7398389 0 0 1 0.739839,-0.739838 0.7398389,0.7398389 0 0 1 0.739839,0.739838 z m -1.114694,-0.375112 0.749713,0.749971 m -0.749713,0 0.749713,-0.749971 m 0.549941,0.375112 a 0.92479867,0.92479867 0 0 1 -0.924799,0.924799 0.92479867,0.92479867 0 0 1 -0.924798,-0.924799 0.92479867,0.92479867 0 0 1 0.924798,-0.924798 0.92479867,0.92479867 0 0 1 0.924799,0.924798 z m -0.18496,-15.389976 a 0.7398389,0.7398389 0 0 1 -0.739839,0.739839 0.7398389,0.7398389 0 0 1 -0.739839,-0.739839 0.7398389,0.7398389 0 0 1 0.739839,-0.739839 0.7398389,0.7398389 0 0 1 0.739839,0.739839 z m -1.114694,-0.374907 0.749713,0.749816 m -0.749713,0 0.749713,-0.749816 m 0.549941,0.374907 a 0.92479867,0.92479867 0 0 1 -0.924799,0.924799 0.92479867,0.92479867 0 0 1 -0.924798,-0.924799 0.92479867,0.92479867 0 0 1 0.924798,-0.924799 0.92479867,0.92479867 0 0 1 0.924799,0.924799 z M 65.448324,61.4141 h 1.687112"
|
||||
/>
|
||||
],
|
||||
simone: [
|
||||
<rect className="inside" y="51.853992" x="54.388508" height="14.533224" width="23.769028" />,
|
||||
<path
|
||||
className="primary"
|
||||
d="m 184.56241,54.646523 -27.17558,4.140113 c 0.18743,1.818287 -0.19256,12.804107 -0.19256,20.22717 0,7.385706 -0.55587,13.723097 -2.99269,17.659607 -1.31226,1.949512 3.37191,6.539197 1.6848,6.539197 0,5.69089 2.06222,21.79998 2.06222,44.56226 0,16.17764 -3.00322,29.31816 -3.37807,33.32964 -0.74972,6.636 0,19.6253 0,19.6253 h 8.44069 33.17714 10.87187 25.68309 8.80965 c 0,0 0.75022,-12.93307 0,-19.56907 -0.56203,-4.01148 -3.56217,-20.13725 -3.56217,-36.31438 0,-22.76253 1.87736,-34.94512 1.87736,-40.68685 1.312,0.31272 2.80938,-5.536585 1.68481,-7.486097 -2.43709,-3.93651 -3.18526,-10.273901 -3.18526,-17.659607 0,-7.423063 -0.37486,-18.408883 0,-20.22717 l -27.36814,-4.140113 c -10.09186,-3.699246 -14.3832,-3.196604 -26.43716,0 z M 66.198037,63.363612 h 3.749082 c 0.562285,0 1.312255,-0.05625 1.874541,-0.168711 0.562285,0.112457 1.124827,0.168711 1.87454,0.168711 h 1.687113 V 200.72904 H 31.331734 c -1.311999,0 -8.435151,0 -8.435151,0 0,0 -0.749816,-12.99033 0,-19.62632 0.374882,-4.01148 3.374045,-17.15176 3.374045,-33.32914 0,-22.76228 -2.061969,-38.86648 -2.061969,-44.55738 1.687061,0 -2.999265,-4.592762 -1.687087,-6.542274 2.436877,-3.93651 2.99924,-10.27236 2.99924,-17.658066 0,-7.423063 0.374908,-18.407805 0.187454,-20.226117 l 27.180558,-4.142707 c 0,3.692828 2.624511,8.716576 13.309213,8.716576 z"
|
||||
/>,
|
||||
<path
|
||||
className="primary"
|
||||
d="m 211.76803,48.873751 c -1.21135,-2.371258 -28.04853,-2.056094 -27.62079,0 v 5.826613 c 10.80666,1.151375 19.67408,-0.05382 27.62079,0 z M 64.510925,62.182659 V 200.72904 h 36.553415 c 1.31226,0 8.81016,0 8.81016,0 0,0 0.74997,-12.9341 0,-19.57009 -0.56228,-4.01149 -3.56139,-20.13238 -3.56139,-36.30951 0,-22.76253 1.87454,-34.95051 1.87454,-40.69224 1.312,0.31298 2.81168,-5.533762 1.68711,-7.483274 -2.43708,-3.93651 -3.1868,-10.27236 -3.1868,-17.658066 0,-7.423063 -0.37485,-18.407805 0,-20.226117 L 79.319822,54.647036 c 0,3.599113 -4.686223,6.560867 -14.621212,6.823293 -0.375113,0 0.187429,0.71233 -0.187685,0.71233 z"
|
||||
/>,
|
||||
<path
|
||||
className="primary"
|
||||
d="m 78.757537,49.885739 c 0,-4.480129 -25.681028,-3.20545 -25.681028,0 v 5.417399 c 11.059559,-4.798808 18.557722,-2.755582 25.681028,0 z"
|
||||
/>,
|
||||
<path
|
||||
className="primary"
|
||||
d="m 52.326539,55.659278 1.124827,-6.110962 c 0,3.917767 2.436826,7.666823 11.996958,11.865784 l -4.498795,7.3294 c -4.499052,-4.498872 -8.060705,-9.503852 -8.62299,-13.084222 z m 27.36814,0 -0.937142,-5.661082 c 0,2.305677 -2.249397,7.216943 -11.622101,11.415904 l 3.93651,7.3294 c 4.498795,-4.498872 8.060448,-9.503852 8.622733,-13.084222 z"
|
||||
/>,
|
||||
<path
|
||||
className="primary"
|
||||
d="m 157.61326,58.539359 c -3.60219,0 -8.87496,7.204363 -11.74626,17.41577 -7.98748,28.566911 -13.88672,112.983381 -11.01541,117.838541 0,3.75884 0.10441,8.71851 0.15662,12.16411 h 13.62567 c 0,-3.49798 0,-8.24865 0,-12.00749 2.14043,-5.11602 2.7669,-27.56455 5.95144,-61.44596 0.36546,-9.03148 0.62647,-28.13891 2.50589,-35.541559 1.83593,-7.934383 1.06978,-31.996235 0.52205,-38.423412 z m 80.52312,0 c 3.60222,0 8.87486,7.204363 11.74611,17.41577 7.98753,28.566911 13.83453,110.425371 11.0154,117.838541 0,3.75884 -0.10424,8.71851 -0.15662,12.16411 h -13.62553 c 0,-3.49798 0,-8.24865 0,-12.00749 -1.87942,-9.55345 -2.03604,-27.35556 -5.2729,-61.44596 -0.36536,-9.03148 -1.30507,-28.13891 -3.18448,-35.541559 -1.85529,-8.955739 -0.40978,-32.373582 -0.52198,-38.423412 z m -212.199785,0 c -3.602195,0 -8.874966,7.204363 -11.746267,17.41577 C 6.202849,104.52204 0.30361466,188.93851 3.1749253,193.79367 c 0,3.75884 0.1044104,8.71851 0.1566157,12.16411 h 13.625667 c 0,-3.49798 0,-8.24865 0,-12.00749 2.140432,-5.11602 2.766905,-27.56455 5.951442,-61.44596 0.36546,-9.03148 0.626473,-28.13891 2.505892,-35.541559 5.01163,-8.640192 2.036012,-32.210956 0.522053,-38.423412 z m 80.523115,0 c 3.60222,0 8.87486,7.204363 11.74611,17.41577 7.98753,28.566911 13.83453,110.425371 11.0154,117.838541 0,3.75884 -0.10424,8.71851 -0.15662,12.16411 h -13.62553 c 0,-3.49798 0,-8.24865 0,-12.00749 -1.87942,-9.55345 -2.03604,-27.35556 -5.2729,-61.44596 -0.36536,-9.03148 -1.30506,-28.13891 -3.18448,-35.541559 -5.01179,-8.640192 -2.03604,-32.210956 -0.52198,-38.423412 z"
|
||||
/>,
|
||||
<path
|
||||
className="secondary"
|
||||
d="M 3.1756236,193.95004 H 16.903804 Z m 112.3124864,0 h 13.73619 z m 19.36418,0 h 13.72823 z m 112.31274,0 h 13.73619 z M 158.17531,85.431303 h 79.59289 m -15.05256,24.574867 v 59.78632 m -49.51627,-59.78632 v 59.78632 m -106.261495,8.66723 a 0.7398389,0.7398389 0 0 1 -0.739839,0.73984 0.7398389,0.7398389 0 0 1 -0.739839,-0.73984 0.7398389,0.7398389 0 0 1 0.739839,-0.73984 0.7398389,0.7398389 0 0 1 0.739839,0.73984 z m -1.114694,-0.37486 0.749713,0.74972 m -0.749713,0 0.749713,-0.74972 m 0.549941,0.37486 a 0.92479867,0.92479867 0 0 1 -0.924799,0.9248 0.92479867,0.92479867 0 0 1 -0.924798,-0.9248 0.92479867,0.92479867 0 0 1 0.924798,-0.9248 0.92479867,0.92479867 0 0 1 0.924799,0.9248 z m -0.18496,-14.2276 a 0.7398389,0.7398389 0 0 1 -0.739839,0.73984 0.7398389,0.7398389 0 0 1 -0.739839,-0.73984 0.7398389,0.7398389 0 0 1 0.739839,-0.73984 0.7398389,0.7398389 0 0 1 0.739839,0.73984 z m -1.114694,-0.37487 0.749713,0.74971 m -0.749713,0 0.749713,-0.74971 m 0.549941,0.37487 a 0.92479867,0.92479867 0 0 1 -0.924799,0.9248 0.92479867,0.92479867 0 0 1 -0.924798,-0.9248 0.92479867,0.92479867 0 0 1 0.924798,-0.9248 0.92479867,0.92479867 0 0 1 0.924799,0.9248 z m -0.18496,-14.20888 a 0.7398389,0.7398389 0 0 1 -0.739839,0.73984 0.7398389,0.7398389 0 0 1 -0.739839,-0.73984 0.7398389,0.7398389 0 0 1 0.739839,-0.73984 0.7398389,0.7398389 0 0 1 0.739839,0.73984 z m -1.114694,-0.37512 0.749713,0.74997 m -0.749713,0 0.749713,-0.74997 m 0.549941,0.37512 a 0.92479867,0.92479867 0 0 1 -0.924799,0.9248 0.92479867,0.92479867 0 0 1 -0.924798,-0.9248 0.92479867,0.92479867 0 0 1 0.924798,-0.9248 0.92479867,0.92479867 0 0 1 0.924799,0.9248 z m -0.18496,-14.20912 a 0.7398389,0.7398389 0 0 1 -0.739839,0.73984 0.7398389,0.7398389 0 0 1 -0.739839,-0.73984 0.7398389,0.7398389 0 0 1 0.739839,-0.73984 0.7398389,0.7398389 0 0 1 0.739839,0.73984 z m -1.114694,-0.37487 0.749713,0.74972 m -0.749713,0 0.749713,-0.74972 m 0.549941,0.37487 a 0.92479867,0.92479867 0 0 1 -0.924799,0.9248 0.92479867,0.92479867 0 0 1 -0.924798,-0.9248 0.92479867,0.92479867 0 0 1 0.924798,-0.9248 0.92479867,0.92479867 0 0 1 0.924799,0.9248 z m -0.18496,-14.20888 a 0.7398389,0.7398389 0 0 1 -0.739839,0.73984 0.7398389,0.7398389 0 0 1 -0.739839,-0.73984 0.7398389,0.7398389 0 0 1 0.739839,-0.73984 0.7398389,0.7398389 0 0 1 0.739839,0.73984 z m -1.114694,-0.37486 0.749713,0.74972 m -0.749713,0 0.749713,-0.74972 m 0.549941,0.37486 a 0.92479867,0.92479867 0 0 1 -0.924799,0.9248 0.92479867,0.92479867 0 0 1 -0.924798,-0.9248 0.92479867,0.92479867 0 0 1 0.924798,-0.9248 0.92479867,0.92479867 0 0 1 0.924799,0.9248 z m -0.18496,-14.22761 a 0.7398389,0.7398389 0 0 1 -0.739839,0.73984 0.7398389,0.7398389 0 0 1 -0.739839,-0.73984 0.7398389,0.7398389 0 0 1 0.739839,-0.73984 0.7398389,0.7398389 0 0 1 0.739839,0.73984 z m -1.114694,-0.37486 0.749713,0.74972 m -0.749713,0 0.749713,-0.74972 m 0.549941,0.37486 a 0.92479867,0.92479867 0 0 1 -0.924799,0.9248 0.92479867,0.92479867 0 0 1 -0.924798,-0.9248 0.92479867,0.92479867 0 0 1 0.924798,-0.9248 0.92479867,0.92479867 0 0 1 0.924799,0.9248 z m -0.18496,-14.209127 a 0.7398389,0.7398389 0 0 1 -0.739839,0.739839 0.7398389,0.7398389 0 0 1 -0.739839,-0.739839 0.7398389,0.7398389 0 0 1 0.739839,-0.739839 0.7398389,0.7398389 0 0 1 0.739839,0.739839 z m -1.114694,-0.374858 0.749713,0.74997 m -0.749713,0 0.749713,-0.74997 m 0.549941,0.374858 a 0.92479867,0.92479867 0 0 1 -0.924799,0.924798 0.92479867,0.92479867 0 0 1 -0.924798,-0.924798 0.92479867,0.92479867 0 0 1 0.924798,-0.924799 0.92479867,0.92479867 0 0 1 0.924799,0.924799 z m -0.18496,-15.389672 a 0.7398389,0.7398389 0 0 1 -0.739839,0.739839 0.7398389,0.7398389 0 0 1 -0.739839,-0.739839 0.7398389,0.7398389 0 0 1 0.739839,-0.739838 0.7398389,0.7398389 0 0 1 0.739839,0.739838 z m -1.114694,-0.375112 0.749713,0.749971 m -0.749713,0 0.749713,-0.749971 m 0.549941,0.375112 a 0.92479867,0.92479867 0 0 1 -0.924799,0.924799 0.92479867,0.92479867 0 0 1 -0.924798,-0.924799 0.92479867,0.92479867 0 0 1 0.924798,-0.924798 0.92479867,0.92479867 0 0 1 0.924799,0.924798 z m -0.18496,-15.389976 a 0.7398389,0.7398389 0 0 1 -0.739839,0.739839 0.7398389,0.7398389 0 0 1 -0.739839,-0.739839 0.7398389,0.7398389 0 0 1 0.739839,-0.739839 0.7398389,0.7398389 0 0 1 0.739839,0.739839 z m -1.114694,-0.374907 0.749713,0.749816 m -0.749713,0 0.749713,-0.749816 m 0.549941,0.374907 a 0.92479867,0.92479867 0 0 1 -0.924799,0.924799 0.92479867,0.92479867 0 0 1 -0.924798,-0.924799 0.92479867,0.92479867 0 0 1 0.924798,-0.924799 0.92479867,0.92479867 0 0 1 0.924799,0.924799 z M 65.448324,61.4141 h 1.687112 M 25,120 l 20,-5 M 88,115 l 20,5"
|
||||
/>
|
||||
],
|
||||
sven: [
|
||||
<path
|
||||
className="inside"
|
||||
|
@ -354,6 +391,16 @@ const svg = {
|
|||
className="secondary"
|
||||
d="m 70.206477,127.701 a 1.6550701,1.6550701 0 1 1 -3.31014,0 1.6550701,1.6550701 0 1 1 3.31014,0 z m 0,19.57588 a 1.6550701,1.6550701 0 1 1 -3.31014,0 1.6550701,1.6550701 0 1 1 3.31014,0 z m 0,19.57507 a 1.6550701,1.6550701 0 1 1 -3.31014,0 1.6550701,1.6550701 0 1 1 3.31014,0 z m 0,19.57588 a 1.6550701,1.6550701 0 1 1 -3.31014,0 1.6550701,1.6550701 0 1 1 3.31014,0 z m 0,19.5756 a 1.6550701,1.6550701 0 1 1 -3.31014,0 1.6550701,1.6550701 0 1 1 3.31014,0 z m 0,-97.87831 a 1.6550701,1.6550701 0 1 1 -3.31014,0 1.6550701,1.6550701 0 1 1 3.31014,0 z m 17.184553,84.38069 23.64837,-1.95367 v 5.72541 l -23.64837,1.95367 z m -42.086103,0.006 -23.648373,-1.95368 v 5.7254 l 23.648373,1.95368 z M 198.62382,45.153672 V 221.35978 m -94.91487,-1.69743 c -0.81538,-7.48435 -1.61817,-14.98053 -2.34688,-22.55033 m -0.56709,-6.08481 C 98.745824,168.24245 97.507276,144.6505 98.727355,118.5954 m -69.696613,99.57247 c 0.762472,-6.99869 1.513933,-14.00773 2.204104,-21.07765 m 0.541219,-5.70369 c 2.148744,-23.35952 3.489469,-47.52322 2.236271,-74.28561"
|
||||
/>
|
||||
],
|
||||
waralee: [
|
||||
<path
|
||||
className="primary"
|
||||
d="M 189.14319,15.92567 H 150.9759 c -15.35189,60.51048 -13.76807,99.45391 -6.55908,135.54192 -2.49913,10.63694 -6.79601,38.57398 -6.70034,88.25724 4.65671,1.82459 9.33068,4.58768 14.4113,4.42764 8.98081,-0.2829 11.26884,3.47105 15.68925,2.68764 8.30995,-1.47274 9.83846,-2.11839 17.4606,-2.07415 -9.01112,-45.00259 -14.65367,-86.41202 1.13933,-153.992732 l 15.86174,151.677832 46.60389,-0.6196 c 0.84887,-18.22662 3.45404,-59.88162 -18.50535,-139.08709 -3.19487,-22.161187 0.23804,-43.095486 -2.73762,-56.356616 -2.33301,-10.39719 -5.88524,-20.225178 -9.49919,-30.462087 z m -112.655763,0 h 38.167293 c 15.35189,60.51048 13.76807,99.45391 6.55908,135.54192 2.49913,10.63694 6.79602,38.57398 6.70035,88.25724 -4.65671,1.82459 -9.33068,4.58768 -14.4113,4.42764 -8.98082,-0.2829 -11.26885,3.47105 -15.689255,2.68764 -8.309954,-1.47274 -16.430258,-1.45921 -24.052402,-1.41497 9.011123,-45.00259 21.245473,-87.0712 5.452469,-154.651912 L 63.351925,242.45106 6.5966601,241.83146 C 5.747789,223.60484 5.3838279,203.04359 35.253381,102.74437 38.448249,80.583183 35.015339,59.648884 37.990998,46.387754 c 2.333019,-10.39719 5.885239,-20.225178 9.49919,-30.462087 z"
|
||||
/>,
|
||||
<path
|
||||
className="secondary"
|
||||
d="m 45.129091,21.275025 h 71.018369 z m 104.348149,0 h 71.01837 z m 72.86407,220.578005 c 5.67948,-63.11796 13.07418,-70.24444 6.75659,-155.475773 M 165.56946,247.27478 c -2.85661,-46.48346 -11.23986,-64.23609 -20.94544,-95.93536 m -30.59667,92.91326 c 1.66081,-16.35626 4.4237,-18.83776 5.47261,-42.77267 M 100.05784,247.277 c 3.45938,-22.94648 10.82316,-42.87161 10.2251,-71.71981 M 14.155773,241.4597 C 40.595414,180.38672 42.25708,137.20982 56.37527,61.346422 58.727379,48.707464 63.822954,35.733181 68.308726,21.378141 M 96.86783,21.266677 c 17.64375,77.898164 10.93326,127.658633 -0.0576,155.878653 M 124.89263,68.305836 C 132.64187,134.59842 96.61132,160.76652 79.213663,221.01295 M 81.22777,16.167802 63.693865,86.447469 l 7.23678,5.79663 12.205338,-75.64425 -14.581591,80.108734 9.865075,4.896537 6.120668,-85.041275 m -0.389222,-0.630634 c 1.941443,10.78744 6.304453,13.441807 2.265333,14.949029 -4.039132,1.507222 -2.651999,-8.70505 -3.805211,-12.212135 -5.034816,5.143371 -7.002302,13.409618 -10.017797,9.590766 -3.015512,-3.818852 0.831958,-2.408976 8.634532,-12.093069 z"
|
||||
/>
|
||||
]
|
||||
}
|
||||
|
||||
|
|
|
@ -1,47 +1,54 @@
|
|||
import React from "react";
|
||||
import PropTypes from "prop-types";
|
||||
import { FormattedMessage } from "react-intl";
|
||||
import { injectIntl } from "react-intl";
|
||||
import React from 'react'
|
||||
import PropTypes from 'prop-types'
|
||||
import { FormattedMessage } from 'react-intl'
|
||||
import { injectIntl } from 'react-intl'
|
||||
|
||||
const OptionGroup = props => {
|
||||
return (
|
||||
<React.Fragment>
|
||||
{props.options.map(name => {
|
||||
let output = [];
|
||||
if (typeof name === "object") {
|
||||
let output = []
|
||||
if (typeof name === 'object') {
|
||||
// Subgroup
|
||||
for (let subGroup of Object.keys(name)) {
|
||||
output.push(
|
||||
<h5 key={subGroup + "-title"} className="subheading">
|
||||
<FormattedMessage id={"optiongroups." + subGroup} />
|
||||
<h5 key={subGroup + '-title'} className="subheading">
|
||||
<FormattedMessage id={'optiongroups.' + subGroup} />
|
||||
</h5>
|
||||
);
|
||||
let children = [];
|
||||
for (let option of name[subGroup]) children.push(<p>{option}</p>);
|
||||
output.push(<ul style={{ paddingLeft: "1rem" }}>{children}</ul>);
|
||||
)
|
||||
let children = []
|
||||
for (let option of name[subGroup])
|
||||
children.push(
|
||||
<li>
|
||||
<a href="#logo" onClick={() => props.sampleOption(option)}>
|
||||
<FormattedMessage
|
||||
id={'options.' + props.config.name + '.' + option + '.title'}
|
||||
/>
|
||||
</a>
|
||||
</li>
|
||||
)
|
||||
output.push(<ul style={{ paddingLeft: '1rem' }}>{children}</ul>)
|
||||
}
|
||||
} else
|
||||
output.push(
|
||||
<li>
|
||||
<a href="#logo" onClick={() => props.sampleOption(name)}>
|
||||
<FormattedMessage
|
||||
id={"options." + props.config.name + "." + name + ".title"}
|
||||
/>
|
||||
<FormattedMessage id={'options.' + props.config.name + '.' + name + '.title'} />
|
||||
</a>
|
||||
</li>
|
||||
);
|
||||
)
|
||||
|
||||
return output;
|
||||
return output
|
||||
})}
|
||||
</React.Fragment>
|
||||
);
|
||||
};
|
||||
)
|
||||
}
|
||||
|
||||
OptionGroup.propTypes = {
|
||||
config: PropTypes.object.isRequired,
|
||||
options: PropTypes.array.isRequired
|
||||
};
|
||||
}
|
||||
|
||||
OptionGroup.defaultProps = {};
|
||||
OptionGroup.defaultProps = {}
|
||||
|
||||
export default injectIntl(OptionGroup);
|
||||
export default injectIntl(OptionGroup)
|
||||
|
|
|
@ -1,48 +1,48 @@
|
|||
import React, { useState } from "react";
|
||||
import { FormattedMessage } from "react-intl";
|
||||
import PatternOptions from "./PatternOptions";
|
||||
import { withoutBreasts } from "@freesewing/models";
|
||||
import React, { useState } from 'react'
|
||||
import { FormattedMessage } from 'react-intl'
|
||||
import PatternOptions from './PatternOptions'
|
||||
import { withBreasts, withoutBreasts } from '@freesewing/models'
|
||||
|
||||
const SampleConfigurator = props => {
|
||||
const [expanded, setExpanded] = useState([]);
|
||||
const [expanded, setExpanded] = useState([])
|
||||
|
||||
const sampleOption = option => {
|
||||
props.updateGist(
|
||||
{
|
||||
type: "option",
|
||||
type: 'option',
|
||||
option
|
||||
},
|
||||
"settings",
|
||||
"sample"
|
||||
);
|
||||
};
|
||||
'settings',
|
||||
'sample'
|
||||
)
|
||||
}
|
||||
|
||||
const sampleMeasurement = measurement => {
|
||||
props.updateGist(
|
||||
{
|
||||
type: "measurement",
|
||||
type: 'measurement',
|
||||
measurement
|
||||
},
|
||||
"settings",
|
||||
"sample"
|
||||
);
|
||||
};
|
||||
'settings',
|
||||
'sample'
|
||||
)
|
||||
}
|
||||
|
||||
const sampleModels = models => {
|
||||
props.updateGist(
|
||||
{
|
||||
type: "models",
|
||||
type: 'models',
|
||||
models
|
||||
},
|
||||
"settings",
|
||||
"sample"
|
||||
);
|
||||
};
|
||||
'settings',
|
||||
'sample'
|
||||
)
|
||||
}
|
||||
let antMan = {
|
||||
ant: {},
|
||||
man: withoutBreasts.manSize42
|
||||
};
|
||||
for (let m in withoutBreasts.manSize42) antMan.ant[m] = antMan.man[m] / 10;
|
||||
}
|
||||
for (let m in withoutBreasts.manSize42) antMan.ant[m] = antMan.man[m] / 10
|
||||
|
||||
return (
|
||||
<ul className="links">
|
||||
|
@ -50,21 +50,17 @@ const SampleConfigurator = props => {
|
|||
<h4>
|
||||
<FormattedMessage id="app.patternOptions" />
|
||||
</h4>
|
||||
<PatternOptions
|
||||
config={props.config}
|
||||
gist={props.gist}
|
||||
sampleOption={sampleOption}
|
||||
/>
|
||||
<PatternOptions config={props.config} gist={props.gist} sampleOption={sampleOption} />
|
||||
</li>
|
||||
<li className="nodot">
|
||||
<h4>
|
||||
<FormattedMessage id="app.measurements" />
|
||||
</h4>
|
||||
<ul style={{ paddingLeft: "1rem" }}>
|
||||
<ul style={{ paddingLeft: '1rem' }}>
|
||||
{props.config.measurements.map(m => (
|
||||
<li key={m}>
|
||||
<a href="#logo" onClick={() => sampleMeasurement(m)}>
|
||||
<FormattedMessage id={"measurements." + m} />
|
||||
<FormattedMessage id={'measurements.' + m} />
|
||||
</a>
|
||||
</li>
|
||||
))}
|
||||
|
@ -74,7 +70,12 @@ const SampleConfigurator = props => {
|
|||
<h4>
|
||||
<FormattedMessage id="app.models" />
|
||||
</h4>
|
||||
<ul style={{ paddingLeft: "1rem" }}>
|
||||
<ul style={{ paddingLeft: '1rem' }}>
|
||||
<li>
|
||||
<a href="#logo" onClick={() => sampleModels(withBreasts)}>
|
||||
<FormattedMessage id="app.withBreasts" />
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="#logo" onClick={() => sampleModels(withoutBreasts)}>
|
||||
<FormattedMessage id="app.withoutBreasts" />
|
||||
|
@ -88,7 +89,7 @@ const SampleConfigurator = props => {
|
|||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
);
|
||||
};
|
||||
)
|
||||
}
|
||||
|
||||
export default SampleConfigurator;
|
||||
export default SampleConfigurator
|
||||
|
|
|
@ -41,7 +41,10 @@ const DraftPattern = props => {
|
|||
|
||||
if (props.svgExport) {
|
||||
svgToFile(
|
||||
new props.Pattern(props.gist.settings)
|
||||
new props.Pattern({
|
||||
...props.gist.settings,
|
||||
embed: false
|
||||
})
|
||||
.use(theme)
|
||||
.draft()
|
||||
.render()
|
||||
|
|
|
@ -3,7 +3,7 @@ import PropTypes from "prop-types";
|
|||
import Button from "@material-ui/core/Button";
|
||||
import { FormattedMessage, FormattedHTMLMessage } from "react-intl";
|
||||
import FormFieldMeasurement from "../../.form/FormFieldMeasurement";
|
||||
import { withoutBreasts } from "@freesewing/models";
|
||||
import { withBreasts, withoutBreasts } from "@freesewing/models";
|
||||
|
||||
const Measurements = props => {
|
||||
const styles = {
|
||||
|
@ -111,7 +111,17 @@ const Measurements = props => {
|
|||
<h4>
|
||||
<FormattedMessage id="app.withBreasts" />
|
||||
</h4>
|
||||
<p>FIXME</p>
|
||||
<ul>
|
||||
{Object.keys(withBreasts).map(m => (
|
||||
<li key={m}>
|
||||
<Button onClick={() => props.preloadMeasurements(withBreasts[m])}>
|
||||
<FormattedMessage id="cfp.size" />
|
||||
|
||||
{m.slice(-2)}
|
||||
</Button>
|
||||
</li>
|
||||
))}
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
);
|
||||
|
|
36
packages/core/CHANGELOG.md
Normal file
36
packages/core/CHANGELOG.md
Normal file
|
@ -0,0 +1,36 @@
|
|||
# Change log for: @freesewing/core
|
||||
|
||||
|
||||
## Unreleased
|
||||
|
||||
### Changed
|
||||
|
||||
- The pattern super constructor now sets a `config` property that holds the pattern configuration. This means that unlike before, there is no need to instantiate a pattern to access its config. You can just import the pattern, and it's config property will contain the pattern config.
|
||||
## 2.0.4 (2019-09-27)
|
||||
|
||||
**Note:** Version bump only for package core
|
||||
|
||||
|
||||
## 2.0.3 (2019-09-15)
|
||||
|
||||
**Note:** Version bump only for package core
|
||||
|
||||
|
||||
## 2.0.2 (2019-09-06)
|
||||
|
||||
**Note:** Version bump only for package core
|
||||
|
||||
|
||||
## 2.0.1 (2019-09-01)
|
||||
|
||||
**Note:** Version bump only for package core
|
||||
|
||||
|
||||
|
||||
|
||||
## 2.0.0 (2019-08-25)
|
||||
|
||||
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.
|
|
@ -1,14 +1,9 @@
|
|||
> **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/chat).
|
||||
|
||||
<p align="center">
|
||||
<a title="Go to freesewing.org" href="https://freesewing.org/"><img src="https://freesewing.org/img/logo/black.svg" align="center" width="150px" alt="Freesewing logo"/></a>
|
||||
<br>
|
||||
<a href="https://freesewing.org/">FreeSewing v2</a>
|
||||
</p>
|
||||
<p align="center">A JavaScript library for made-to-measure sewing patterns</p>
|
||||
<p align="center">An open source platform for made-to-measure sewing patterns</p>
|
||||
<p align='center'><a
|
||||
href="https://www.npmjs.com/package/@freesewing/core"
|
||||
title="@freesewing/core on NPM"
|
||||
|
|
8
packages/core/package-lock.json
generated
8
packages/core/package-lock.json
generated
|
@ -1,13 +1,13 @@
|
|||
{
|
||||
"name": "@freesewing/core",
|
||||
"version": "2.0.0-beta.33",
|
||||
"version": "2.1.0-alpha.0",
|
||||
"lockfileVersion": 1,
|
||||
"requires": true,
|
||||
"dependencies": {
|
||||
"bezier-js": {
|
||||
"version": "2.4.0",
|
||||
"resolved": "https://registry.npmjs.org/bezier-js/-/bezier-js-2.4.0.tgz",
|
||||
"integrity": "sha512-ttwqGL47RtYOoZy10oFJZ1VlEC6w1eJW1xMPBAvEx57cTWgmaJNr/c2ZLMr/O2RD50saR0OaLBIpgyZ7rkHLSw=="
|
||||
"version": "2.4.4",
|
||||
"resolved": "https://registry.npmjs.org/bezier-js/-/bezier-js-2.4.4.tgz",
|
||||
"integrity": "sha512-qYC9FBubdTK4VZe0m+lS7lEpf87w1fnm6g2m1FKsnlz+wfNnJy3gjQt4Y5nnI1NrjJrnQqnZt3S6Z5qjhloDNA=="
|
||||
},
|
||||
"bin-pack": {
|
||||
"version": "1.0.2",
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
{
|
||||
"name": "@freesewing/core",
|
||||
"version": "2.0.0-beta.43",
|
||||
"version": "2.1.0-alpha.0",
|
||||
"description": "A library for creating made-to-measure sewing patterns",
|
||||
"author": "Joost De Cock <joost@decock.org> (https://github.com/joostdecock)",
|
||||
"homepage": "https://freesewing.org/",
|
||||
|
@ -49,7 +49,7 @@
|
|||
],
|
||||
"publishConfig": {
|
||||
"access": "public",
|
||||
"tag": "beta"
|
||||
"tag": "next"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=8.0.0",
|
||||
|
|
|
@ -14,5 +14,8 @@ export default function Design(config, plugins = false) {
|
|||
pattern.prototype = Object.create(Pattern.prototype)
|
||||
pattern.prototype.constructor = pattern
|
||||
|
||||
// Make config available without need to instantiate pattern
|
||||
pattern.config = config
|
||||
|
||||
return pattern
|
||||
}
|
||||
|
|
40
packages/create-freesewing-pattern/CHANGELOG.md
Normal file
40
packages/create-freesewing-pattern/CHANGELOG.md
Normal file
|
@ -0,0 +1,40 @@
|
|||
# Change log for: create-freesewing-pattern
|
||||
|
||||
|
||||
## Unreleased
|
||||
|
||||
**Note:** Version bump only for package create-freesewing-pattern
|
||||
|
||||
|
||||
## 2.0.4 (2019-09-27)
|
||||
|
||||
**Note:** Version bump only for package create-freesewing-pattern
|
||||
|
||||
|
||||
## 2.0.3 (2019-09-15)
|
||||
|
||||
### Fixed
|
||||
|
||||
- Updated example package.json to use latest tag rather than beta
|
||||
## 2.0.2 (2019-09-06)
|
||||
|
||||
### Changed
|
||||
|
||||
- Updated dependencies
|
||||
|
||||
### Fixed
|
||||
|
||||
- Added missing `file-saver` dependency
|
||||
## 2.0.1 (2019-09-01)
|
||||
|
||||
**Note:** Version bump only for package create-freesewing-pattern
|
||||
|
||||
|
||||
|
||||
|
||||
## 2.0.0 (2019-08-25)
|
||||
|
||||
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.
|
|
@ -1,14 +1,9 @@
|
|||
> **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/chat).
|
||||
|
||||
<p align="center">
|
||||
<a title="Go to freesewing.org" href="https://freesewing.org/"><img src="https://freesewing.org/img/logo/black.svg" align="center" width="150px" alt="Freesewing logo"/></a>
|
||||
<br>
|
||||
<a href="https://freesewing.org/">FreeSewing v2</a>
|
||||
</p>
|
||||
<p align="center">A JavaScript library for made-to-measure sewing patterns</p>
|
||||
<p align="center">An open source platform for made-to-measure sewing patterns</p>
|
||||
<p align='center'><a
|
||||
href="https://www.npmjs.com/package/create-freesewing-pattern"
|
||||
title="create-freesewing-pattern on NPM"
|
||||
|
|
0
packages/create-freesewing-pattern/index.js
Executable file → Normal file
0
packages/create-freesewing-pattern/index.js
Executable file → Normal file
0
packages/create-freesewing-pattern/lib/cli.js
Executable file → Normal file
0
packages/create-freesewing-pattern/lib/cli.js
Executable file → Normal file
|
@ -1,6 +1,6 @@
|
|||
{
|
||||
"name": "create-freesewing-pattern",
|
||||
"version": "2.0.0-beta.43",
|
||||
"version": "2.1.0-alpha.0",
|
||||
"description": "Initializer package for FreeSewing patterns: npm init FreeSewing-pattern",
|
||||
"author": "Joost De Cock <joost@decock.org> (https://github.com/joostdecock)",
|
||||
"homepage": "https://freesewing.org/",
|
||||
|
@ -31,7 +31,7 @@
|
|||
"cp-file": "^6.0.0",
|
||||
"execa": "^1.0.0",
|
||||
"git-config-path": "^2.0.0",
|
||||
"github-username": "^5.0.1",
|
||||
"github-username": "^4.1.0",
|
||||
"globby": "^9.0.0",
|
||||
"handlebars": "^4.1.0",
|
||||
"inquirer": "^6.2.2",
|
||||
|
@ -41,8 +41,8 @@
|
|||
"parse-git-config": "^3.0.0",
|
||||
"validate-npm-package-name": "^3.0.0",
|
||||
"which": "^1.3.1",
|
||||
"@freesewing/i18n": "^2.0.0-beta.43",
|
||||
"@freesewing/pattern-info": "^2.0.0-beta.43"
|
||||
"@freesewing/i18n": "^2.1.0-alpha.0",
|
||||
"@freesewing/pattern-info": "^2.1.0-alpha.0"
|
||||
},
|
||||
"devDependencies": {},
|
||||
"files": [
|
||||
|
@ -55,7 +55,7 @@
|
|||
],
|
||||
"publishConfig": {
|
||||
"access": "public",
|
||||
"tag": "beta"
|
||||
"tag": "next"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=8.0.0",
|
||||
|
|
|
@ -4,26 +4,27 @@
|
|||
"version": "0.0.0",
|
||||
"private": true,
|
||||
"dependencies": {
|
||||
"@freesewing/components": "beta",
|
||||
"@freesewing/core": "beta",
|
||||
"@freesewing/css-theme": "beta",
|
||||
"@freesewing/i18n": "beta",
|
||||
"@freesewing/models": "beta",
|
||||
"@freesewing/mui-theme": "beta",
|
||||
"@freesewing/pattern-info": "beta",
|
||||
"@freesewing/plugin-bundle": "beta",
|
||||
"@freesewing/plugin-theme": "beta",
|
||||
"@freesewing/plugin-i18n": "beta",
|
||||
"@freesewing/plugin-svgattr": "beta",
|
||||
"@freesewing/utils": "beta",
|
||||
"@material-ui/core": "^4.0.1",
|
||||
"@material-ui/icons": "^4.0.1",
|
||||
"@material-ui/lab": "^v4.0.0-alpha.14",
|
||||
"@freesewing/components": "latest",
|
||||
"@freesewing/core": "latest",
|
||||
"@freesewing/css-theme": "latest",
|
||||
"@freesewing/i18n": "latest",
|
||||
"@freesewing/models": "latest",
|
||||
"@freesewing/mui-theme": "latest",
|
||||
"@freesewing/pattern-info": "latest",
|
||||
"@freesewing/plugin-bundle": "latest",
|
||||
"@freesewing/plugin-theme": "latest",
|
||||
"@freesewing/plugin-i18n": "latest",
|
||||
"@freesewing/plugin-svgattr": "latest",
|
||||
"@freesewing/utils": "latest",
|
||||
"@material-ui/core": "^4.4.0",
|
||||
"@material-ui/icons": "^4.2.1",
|
||||
"@material-ui/lab": "^v4.0.0-alpha.25",
|
||||
"pattern": "{{#if yarn}}link:..{{else}}file:..{{/if}}",
|
||||
"prismjs": "1.16.0",
|
||||
"react": "^16.8",
|
||||
"react-dom": "^16.8",
|
||||
"react-scripts": "^3.0.0",
|
||||
"prismjs": "1.17.1",
|
||||
"react": "^16.9",
|
||||
"react-dom": "^16.9",
|
||||
"react-scripts": "^3.1.1",
|
||||
"file-saver": "^2.0.2",
|
||||
"typeface-roboto-condensed": "latest"
|
||||
},
|
||||
"scripts": {
|
||||
|
@ -42,6 +43,6 @@
|
|||
"not op_mini all"
|
||||
],
|
||||
"devDependencies": {
|
||||
"babel-plugin-prismjs": "1.0.2"
|
||||
"babel-plugin-prismjs": "1.1.1"
|
||||
}
|
||||
}
|
||||
|
|
|
@ -29,19 +29,19 @@
|
|||
"eslint": "^5.16.0",
|
||||
"babel-jest": "24.7.1",
|
||||
"jest": "24.7.1",
|
||||
"@freesewing/core": "beta",
|
||||
"@freesewing/plugin-bundle": "beta",
|
||||
"@freesewing/components": "beta",
|
||||
"@freesewing/css-theme": "beta",
|
||||
"@freesewing/i18n": "beta",
|
||||
"@freesewing/mui-theme": "beta",
|
||||
"@freesewing/patterns": "beta",
|
||||
"@freesewing/plugin-bust": "beta",
|
||||
"@freesewing/plugin-buttons": "beta",
|
||||
"@freesewing/plugin-debug": "beta",
|
||||
"@freesewing/plugin-designer": "beta",
|
||||
"@freesewing/plugin-flip": "beta",
|
||||
"@freesewing/utils": "beta",
|
||||
"@freesewing/core": "latest",
|
||||
"@freesewing/plugin-bundle": "latest",
|
||||
"@freesewing/components": "latest",
|
||||
"@freesewing/css-theme": "latest",
|
||||
"@freesewing/i18n": "latest",
|
||||
"@freesewing/mui-theme": "latest",
|
||||
"@freesewing/patterns": "latest",
|
||||
"@freesewing/plugin-bust": "latest",
|
||||
"@freesewing/plugin-buttons": "latest",
|
||||
"@freesewing/plugin-debug": "latest",
|
||||
"@freesewing/plugin-designer": "latest",
|
||||
"@freesewing/plugin-flip": "latest",
|
||||
"@freesewing/utils": "latest",
|
||||
"@svgr/rollup": "^2.4.1",
|
||||
"cross-env": "^5.1.4",
|
||||
"gh-pages": "^1.2.0",
|
||||
|
|
36
packages/css-theme/CHANGELOG.md
Normal file
36
packages/css-theme/CHANGELOG.md
Normal file
|
@ -0,0 +1,36 @@
|
|||
# Change log for: @freesewing/css-theme
|
||||
|
||||
|
||||
## Unreleased
|
||||
|
||||
**Note:** Version bump only for package css-theme
|
||||
|
||||
|
||||
## 2.0.4 (2019-09-27)
|
||||
|
||||
**Note:** Version bump only for package css-theme
|
||||
|
||||
|
||||
## 2.0.3 (2019-09-15)
|
||||
|
||||
**Note:** Version bump only for package css-theme
|
||||
|
||||
|
||||
## 2.0.2 (2019-09-06)
|
||||
|
||||
### Fixed
|
||||
|
||||
- Updated styles for DraftConfigurator component for pattern options 3 levels deep
|
||||
## 2.0.1 (2019-09-01)
|
||||
|
||||
**Note:** Version bump only for package css-theme
|
||||
|
||||
|
||||
|
||||
|
||||
## 2.0.0 (2019-08-25)
|
||||
|
||||
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.
|
|
@ -1,14 +1,9 @@
|
|||
> **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/chat).
|
||||
|
||||
<p align="center">
|
||||
<a title="Go to freesewing.org" href="https://freesewing.org/"><img src="https://freesewing.org/img/logo/black.svg" align="center" width="150px" alt="Freesewing logo"/></a>
|
||||
<br>
|
||||
<a href="https://freesewing.org/">FreeSewing v2</a>
|
||||
</p>
|
||||
<p align="center">A JavaScript library for made-to-measure sewing patterns</p>
|
||||
<p align="center">An open source platform for made-to-measure sewing patterns</p>
|
||||
<p align='center'><a
|
||||
href="https://www.npmjs.com/package/@freesewing/css-theme"
|
||||
title="@freesewing/css-theme on NPM"
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
{
|
||||
"name": "@freesewing/css-theme",
|
||||
"version": "2.0.0-beta.43",
|
||||
"version": "2.1.0-alpha.0",
|
||||
"description": "A CSS theme for FreeSewing web UIs",
|
||||
"author": "Joost De Cock <joost@decock.org> (https://github.com/joostdecock)",
|
||||
"homepage": "https://freesewing.org/",
|
||||
|
@ -39,7 +39,7 @@
|
|||
],
|
||||
"publishConfig": {
|
||||
"access": "public",
|
||||
"tag": "beta"
|
||||
"tag": "next"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=8.0.0",
|
||||
|
|
|
@ -10,3 +10,4 @@
|
|||
@import "components/spinner";
|
||||
@import "components/box";
|
||||
@import "components/linedrawing";
|
||||
@import "components/modelgraph";
|
||||
|
|
|
@ -40,15 +40,18 @@ div.collapsed {
|
|||
display: none;
|
||||
}
|
||||
ul.config.l2 > li > div,
|
||||
ul.config.l3 > li > div {
|
||||
ul.config.l3 > li > div,
|
||||
ul.config.l4 > li > div {
|
||||
padding: 0.25rem 1.5rem 0.25rem 1.5rem;
|
||||
}
|
||||
ul.config.l3 > li > div.expanded {
|
||||
ul.config.l3 > li > div.expanded,
|
||||
ul.config.l4 > li > div.expanded {
|
||||
margin: 0 0 2rem 0;
|
||||
padding: 0.75 0.5rem 1.5rem;
|
||||
}
|
||||
ul.config.l2 > li > div:hover,
|
||||
ul.config.l3 > li > div:hover {
|
||||
ul.config.l3 > li > div:hover,
|
||||
ul.config.l4 > li > div:hover {
|
||||
cursor: pointer;
|
||||
background: $oc-gray-4;
|
||||
}
|
||||
|
@ -63,7 +66,15 @@ div.expanded div.MuiSlider-container {
|
|||
overflow: initial;
|
||||
}
|
||||
ul.config p { @include body-font;}
|
||||
ul.config.l4 li { padding-left: 0.75rem; }
|
||||
|
||||
/* level 4 */
|
||||
ul.config.l3 li span.subheading {
|
||||
padding-left: 2rem;
|
||||
font-weight: bold;
|
||||
}
|
||||
ul.config.l4 > li > div { padding-left: 2.5rem; }
|
||||
|
||||
|
||||
span.dflt,
|
||||
span.custom {
|
||||
padding: 2px 4px;
|
||||
|
|
134
packages/css-theme/src/components/_modelgraph.scss
Normal file
134
packages/css-theme/src/components/_modelgraph.scss
Normal file
|
@ -0,0 +1,134 @@
|
|||
svg.fs-model-graph {
|
||||
circle.size {
|
||||
fill: none;
|
||||
stroke-width: 2;
|
||||
stroke-dasharray: 10 10;
|
||||
}
|
||||
circle.sizebg {
|
||||
stroke: none;
|
||||
}
|
||||
rect {
|
||||
stroke-width: 5;
|
||||
}
|
||||
circle.shape,
|
||||
path.shape {
|
||||
stroke: none;
|
||||
stroke-width: 5;
|
||||
}
|
||||
circle.shape.center {
|
||||
stroke: none!important;
|
||||
}
|
||||
path.own {
|
||||
stroke-width: 3;
|
||||
stroke-dasharray: 20 30;
|
||||
fill: none;
|
||||
}
|
||||
path.estimate {
|
||||
stroke: none;
|
||||
}
|
||||
path.highlight {
|
||||
stroke-width: 15;
|
||||
stroke-linecap: round;
|
||||
stroke-dasharray: 20 30;
|
||||
}
|
||||
path.hide {
|
||||
stroke: none;
|
||||
}
|
||||
path.vdefault {
|
||||
fill: none;
|
||||
stroke-width: 5;
|
||||
stroke-dasharray: 20 30;
|
||||
}
|
||||
div.text {
|
||||
@include title-font;
|
||||
font-size: 80px;
|
||||
}
|
||||
path.hovertrap {
|
||||
fill: none;
|
||||
stroke: #fff0;
|
||||
stroke-width: 50;
|
||||
}
|
||||
text.size {
|
||||
@include title-font;
|
||||
font-size: 50px;
|
||||
text-anchor: middle;
|
||||
}
|
||||
}
|
||||
|
||||
.theme-wrapper.light svg.fs-model-graph {
|
||||
circle.size {
|
||||
stroke: $oc-gray-5;
|
||||
}
|
||||
circle.sizebg {
|
||||
fill: #fff3;
|
||||
}
|
||||
rect {
|
||||
stroke: $oc-blue-6;
|
||||
fill: $oc-blue-5;
|
||||
}
|
||||
rect.estimate {
|
||||
stroke: $oc-blue-6;
|
||||
fill: #fff0;
|
||||
}
|
||||
rect.highlight {
|
||||
fill: $oc-lime-7;
|
||||
stroke: $oc-lime-8;
|
||||
}
|
||||
circle.shape,
|
||||
path.shape {
|
||||
stroke: $oc-blue-8;
|
||||
fill: $oc-blue-7;
|
||||
}
|
||||
path.own {
|
||||
stroke: #fffb;
|
||||
}
|
||||
path.highlight {
|
||||
stroke: $oc-lime-7;
|
||||
troke: none;
|
||||
}
|
||||
path.vdefault {
|
||||
stroke: $oc-lime-7;
|
||||
}
|
||||
text.size {
|
||||
fill: $oc-lime-7;
|
||||
}
|
||||
}
|
||||
|
||||
.theme-wrapper.dark svg.fs-model-graph {
|
||||
circle.size {
|
||||
stroke: $oc-gray-5;
|
||||
}
|
||||
circle.sizebg {
|
||||
fill: #21252933;
|
||||
}
|
||||
rect {
|
||||
stroke: $oc-yellow-6;
|
||||
fill: $oc-yellow-5;
|
||||
}
|
||||
rect.estimate {
|
||||
stroke: $oc-yellow-6;
|
||||
fill: #fff0;
|
||||
}
|
||||
rect.highlight {
|
||||
fill: $oc-orange-7;
|
||||
stroke: $oc-orange-8;
|
||||
}
|
||||
circle.shape,
|
||||
path.shape {
|
||||
stroke: $oc-yellow-8;
|
||||
fill: $oc-yellow-7;
|
||||
}
|
||||
path.own {
|
||||
stroke: #fffb;
|
||||
}
|
||||
path.highlight {
|
||||
stroke: $oc-orange-7;
|
||||
troke: none;
|
||||
}
|
||||
path.vdefault {
|
||||
stroke: $oc-orange-7;
|
||||
}
|
||||
text.size {
|
||||
fill: $oc-orange-7;
|
||||
}
|
||||
}
|
36
packages/examples/CHANGELOG.md
Normal file
36
packages/examples/CHANGELOG.md
Normal file
|
@ -0,0 +1,36 @@
|
|||
# Change log for: @freesewing/examples
|
||||
|
||||
|
||||
## Unreleased
|
||||
|
||||
**Note:** Version bump only for package examples
|
||||
|
||||
|
||||
## 2.0.4 (2019-09-27)
|
||||
|
||||
**Note:** Version bump only for package examples
|
||||
|
||||
|
||||
## 2.0.3 (2019-09-15)
|
||||
|
||||
**Note:** Version bump only for package examples
|
||||
|
||||
|
||||
## 2.0.2 (2019-09-06)
|
||||
|
||||
**Note:** Version bump only for package examples
|
||||
|
||||
|
||||
## 2.0.1 (2019-09-01)
|
||||
|
||||
**Note:** Version bump only for package examples
|
||||
|
||||
|
||||
|
||||
|
||||
## 2.0.0 (2019-08-25)
|
||||
|
||||
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.
|
|
@ -1,14 +1,9 @@
|
|||
> **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/chat).
|
||||
|
||||
<p align="center">
|
||||
<a title="Go to freesewing.org" href="https://freesewing.org/"><img src="https://freesewing.org/img/logo/black.svg" align="center" width="150px" alt="Freesewing logo"/></a>
|
||||
<br>
|
||||
<a href="https://freesewing.org/">FreeSewing v2</a>
|
||||
</p>
|
||||
<p align="center">A JavaScript library for made-to-measure sewing patterns</p>
|
||||
<p align="center">An open source platform for made-to-measure sewing patterns</p>
|
||||
<p align='center'><a
|
||||
href="https://www.npmjs.com/package/@freesewing/examples"
|
||||
title="@freesewing/examples on NPM"
|
||||
|
|
|
@ -4,26 +4,27 @@
|
|||
"version": "0.0.0",
|
||||
"private": true,
|
||||
"dependencies": {
|
||||
"@freesewing/components": "beta",
|
||||
"@freesewing/core": "beta",
|
||||
"@freesewing/css-theme": "beta",
|
||||
"@freesewing/i18n": "beta",
|
||||
"@freesewing/models": "beta",
|
||||
"@freesewing/mui-theme": "beta",
|
||||
"@freesewing/pattern-info": "beta",
|
||||
"@freesewing/plugin-bundle": "beta",
|
||||
"@freesewing/plugin-theme": "beta",
|
||||
"@freesewing/plugin-i18n": "beta",
|
||||
"@freesewing/plugin-svgattr": "beta",
|
||||
"@freesewing/utils": "beta",
|
||||
"@material-ui/core": "^4.0.1",
|
||||
"@material-ui/icons": "^4.0.1",
|
||||
"@material-ui/lab": "^v4.0.0-alpha.14",
|
||||
"@freesewing/components": "latest",
|
||||
"@freesewing/core": "latest",
|
||||
"@freesewing/css-theme": "latest",
|
||||
"@freesewing/i18n": "latest",
|
||||
"@freesewing/models": "latest",
|
||||
"@freesewing/mui-theme": "latest",
|
||||
"@freesewing/pattern-info": "latest",
|
||||
"@freesewing/plugin-bundle": "latest",
|
||||
"@freesewing/plugin-theme": "latest",
|
||||
"@freesewing/plugin-i18n": "latest",
|
||||
"@freesewing/plugin-svgattr": "latest",
|
||||
"@freesewing/utils": "latest",
|
||||
"@material-ui/core": "^4.4.0",
|
||||
"@material-ui/icons": "^4.2.1",
|
||||
"@material-ui/lab": "^v4.0.0-alpha.25",
|
||||
"pattern": "link:..",
|
||||
"prismjs": "1.16.0",
|
||||
"react": "^16.8",
|
||||
"react-dom": "^16.8",
|
||||
"react-scripts": "^3.0.0",
|
||||
"prismjs": "1.17.1",
|
||||
"react": "^16.9",
|
||||
"react-dom": "^16.9",
|
||||
"react-scripts": "^3.1.1",
|
||||
"file-saver": "^2.0.2",
|
||||
"typeface-roboto-condensed": "latest"
|
||||
},
|
||||
"scripts": {
|
||||
|
@ -42,6 +43,6 @@
|
|||
"not op_mini all"
|
||||
],
|
||||
"devDependencies": {
|
||||
"babel-plugin-prismjs": "1.0.2"
|
||||
"babel-plugin-prismjs": "1.1.1"
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1022,6 +1022,11 @@
|
|||
resolved "https://registry.yarnpkg.com/@freesewing/plugin-svgattr/-/plugin-svgattr-2.0.0-beta.3.tgz#64a1d279957985f57976a673c5063924ec0a1851"
|
||||
integrity sha512-UpZMTp2BSX6zDgTqSASy16coJk1mQXcvqLUqb9en/bTCGf6P0JU4hg+/9SktPrYlstkaLCexGwTvUvO95XkomQ==
|
||||
|
||||
"@freesewing/plugin-theme@beta":
|
||||
version "2.0.1"
|
||||
resolved "https://registry.yarnpkg.com/@freesewing/plugin-theme/-/plugin-theme-2.0.1.tgz#3b9266a57bf440c2621ab4bfa232a01b0a17e6ef"
|
||||
integrity sha512-poC3tIzNlg6ZIKYx7Xh0FTJ6rCX76qzPnmJ4uwJXPKI7t91K7qTXD/GHPHRzoF0zhejWBsDSTJPqE6ZIcP6U9A==
|
||||
|
||||
"@freesewing/plugin-title@^2.0.0-beta.29":
|
||||
version "2.0.0-beta.29"
|
||||
resolved "https://registry.yarnpkg.com/@freesewing/plugin-title/-/plugin-title-2.0.0-beta.29.tgz#9f0bbc68bb7aaa2cd007ce744485230aabf4b369"
|
||||
|
@ -3871,14 +3876,16 @@ eslint-scope@^4.0.0, eslint-scope@^4.0.3:
|
|||
estraverse "^4.1.1"
|
||||
|
||||
eslint-utils@^1.3.1:
|
||||
version "1.3.1"
|
||||
resolved "https://registry.yarnpkg.com/eslint-utils/-/eslint-utils-1.3.1.tgz#9a851ba89ee7c460346f97cf8939c7298827e512"
|
||||
integrity sha512-Z7YjnIldX+2XMcjr7ZkgEsOj/bREONV60qYeB/bjMAqqqZ4zxKyWX+BOUkdmRmA9riiIPVvo5x86m5elviOk0Q==
|
||||
version "1.4.2"
|
||||
resolved "https://registry.yarnpkg.com/eslint-utils/-/eslint-utils-1.4.2.tgz#166a5180ef6ab7eb462f162fd0e6f2463d7309ab"
|
||||
integrity sha512-eAZS2sEUMlIeCjBeubdj45dmBHQwPHWyBcT1VSYB7o9x9WRRqKxyUoiXlRjyAwzN7YEzHJlYg0NmzDRWx6GP4Q==
|
||||
dependencies:
|
||||
eslint-visitor-keys "^1.0.0"
|
||||
|
||||
eslint-visitor-keys@^1.0.0:
|
||||
version "1.0.0"
|
||||
resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-1.0.0.tgz#3f3180fb2e291017716acb4c9d6d5b5c34a6a81d"
|
||||
integrity sha512-qzm/XxIbxm/FHyH341ZrbnMUpe+5Bocte9xkmFMzPMjRaZMcXww+MpBptFvtU+79L362nqiLhekCxCxDPaUMBQ==
|
||||
version "1.1.0"
|
||||
resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-1.1.0.tgz#e2a82cea84ff246ad6fb57f9bde5b46621459ec2"
|
||||
integrity sha512-8y9YjtM1JBJU/A9Kc+SbaOV4y29sSWckBwMHa+FGtVj5gN/sbnKDf6xJUl+8g7FAij9LVaP8C24DUiH/f/2Z9A==
|
||||
|
||||
eslint@^5.16.0:
|
||||
version "5.16.0"
|
||||
|
@ -7260,7 +7267,7 @@ path-type@^3.0.0:
|
|||
pify "^3.0.0"
|
||||
|
||||
"pattern@link:..":
|
||||
version "2.0.0-beta.29"
|
||||
version "2.0.1"
|
||||
|
||||
pbkdf2@^3.0.3:
|
||||
version "3.0.17"
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
{
|
||||
"name": "@freesewing/examples",
|
||||
"version": "2.0.0-beta.43",
|
||||
"version": "2.1.0-alpha.0",
|
||||
"description": "A FreeSewing pattern holding examples for our documentation",
|
||||
"author": "Joost De Cock <joost@decock.org> (https://github.com/joostdecock)",
|
||||
"homepage": "https://freesewing.org/",
|
||||
|
@ -28,8 +28,8 @@
|
|||
"netlify": "echo \"Not configured yet\""
|
||||
},
|
||||
"peerDependencies": {
|
||||
"@freesewing/core": "^2.0.0-beta.43",
|
||||
"@freesewing/plugin-bundle": "^2.0.0-beta.43"
|
||||
"@freesewing/core": "^2.1.0-alpha.0",
|
||||
"@freesewing/plugin-bundle": "^2.1.0-alpha.0"
|
||||
},
|
||||
"dependencies": {},
|
||||
"devDependencies": {
|
||||
|
@ -40,14 +40,14 @@
|
|||
"eslint": "^5.16.0",
|
||||
"babel-jest": "24.7.1",
|
||||
"jest": "24.7.1",
|
||||
"@freesewing/components": "^2.0.0-beta.43",
|
||||
"@freesewing/css-theme": "^2.0.0-beta.43",
|
||||
"@freesewing/i18n": "^2.0.0-beta.43",
|
||||
"@freesewing/mui-theme": "^2.0.0-beta.43",
|
||||
"@freesewing/plugin-bust": "^2.0.0-beta.43",
|
||||
"@freesewing/plugin-buttons": "^2.0.0-beta.43",
|
||||
"@freesewing/plugin-flip": "^2.0.0-beta.43",
|
||||
"@freesewing/utils": "^2.0.0-beta.43",
|
||||
"@freesewing/components": "^2.1.0-alpha.0",
|
||||
"@freesewing/css-theme": "^2.1.0-alpha.0",
|
||||
"@freesewing/i18n": "^2.1.0-alpha.0",
|
||||
"@freesewing/mui-theme": "^2.1.0-alpha.0",
|
||||
"@freesewing/plugin-bust": "^2.1.0-alpha.0",
|
||||
"@freesewing/plugin-buttons": "^2.1.0-alpha.0",
|
||||
"@freesewing/plugin-flip": "^2.1.0-alpha.0",
|
||||
"@freesewing/utils": "^2.1.0-alpha.0",
|
||||
"@svgr/rollup": "^2.4.1",
|
||||
"cross-env": "^5.1.4",
|
||||
"gh-pages": "^1.2.0",
|
||||
|
@ -75,7 +75,7 @@
|
|||
],
|
||||
"publishConfig": {
|
||||
"access": "public",
|
||||
"tag": "beta"
|
||||
"tag": "next"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=8.0.0",
|
||||
|
|
36
packages/florent/CHANGELOG.md
Normal file
36
packages/florent/CHANGELOG.md
Normal file
|
@ -0,0 +1,36 @@
|
|||
# Change log for: @freesewing/florent
|
||||
|
||||
|
||||
## Unreleased
|
||||
|
||||
**Note:** Version bump only for package florent
|
||||
|
||||
|
||||
## 2.0.4 (2019-09-27)
|
||||
|
||||
**Note:** Version bump only for package florent
|
||||
|
||||
|
||||
## 2.0.3 (2019-09-15)
|
||||
|
||||
**Note:** Version bump only for package florent
|
||||
|
||||
|
||||
## 2.0.2 (2019-09-06)
|
||||
|
||||
**Note:** Version bump only for package florent
|
||||
|
||||
|
||||
## 2.0.1 (2019-09-01)
|
||||
|
||||
**Note:** Version bump only for package florent
|
||||
|
||||
|
||||
|
||||
|
||||
## 2.0.0 (2019-08-25)
|
||||
|
||||
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.
|
|
@ -1,14 +1,9 @@
|
|||
> **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/chat).
|
||||
|
||||
<p align="center">
|
||||
<a title="Go to freesewing.org" href="https://freesewing.org/"><img src="https://freesewing.org/img/logo/black.svg" align="center" width="150px" alt="Freesewing logo"/></a>
|
||||
<br>
|
||||
<a href="https://freesewing.org/">FreeSewing v2</a>
|
||||
</p>
|
||||
<p align="center">A JavaScript library for made-to-measure sewing patterns</p>
|
||||
<p align="center">An open source platform for made-to-measure sewing patterns</p>
|
||||
<p align='center'><a
|
||||
href="https://www.npmjs.com/package/@freesewing/florent"
|
||||
title="@freesewing/florent on NPM"
|
||||
|
|
|
@ -4,26 +4,27 @@
|
|||
"version": "0.0.0",
|
||||
"private": true,
|
||||
"dependencies": {
|
||||
"@freesewing/components": "beta",
|
||||
"@freesewing/core": "beta",
|
||||
"@freesewing/css-theme": "beta",
|
||||
"@freesewing/i18n": "beta",
|
||||
"@freesewing/models": "beta",
|
||||
"@freesewing/mui-theme": "beta",
|
||||
"@freesewing/pattern-info": "beta",
|
||||
"@freesewing/plugin-bundle": "beta",
|
||||
"@freesewing/plugin-theme": "beta",
|
||||
"@freesewing/plugin-i18n": "beta",
|
||||
"@freesewing/plugin-svgattr": "beta",
|
||||
"@freesewing/utils": "beta",
|
||||
"@material-ui/core": "^4.0.1",
|
||||
"@material-ui/icons": "^4.0.1",
|
||||
"@material-ui/lab": "^v4.0.0-alpha.14",
|
||||
"@freesewing/components": "latest",
|
||||
"@freesewing/core": "latest",
|
||||
"@freesewing/css-theme": "latest",
|
||||
"@freesewing/i18n": "latest",
|
||||
"@freesewing/models": "latest",
|
||||
"@freesewing/mui-theme": "latest",
|
||||
"@freesewing/pattern-info": "latest",
|
||||
"@freesewing/plugin-bundle": "latest",
|
||||
"@freesewing/plugin-theme": "latest",
|
||||
"@freesewing/plugin-i18n": "latest",
|
||||
"@freesewing/plugin-svgattr": "latest",
|
||||
"@freesewing/utils": "latest",
|
||||
"@material-ui/core": "^4.4.0",
|
||||
"@material-ui/icons": "^4.2.1",
|
||||
"@material-ui/lab": "^v4.0.0-alpha.25",
|
||||
"pattern": "link:..",
|
||||
"prismjs": "1.16.0",
|
||||
"react": "^16.8",
|
||||
"react-dom": "^16.8",
|
||||
"react-scripts": "^3.0.0",
|
||||
"prismjs": "1.17.1",
|
||||
"react": "^16.9",
|
||||
"react-dom": "^16.9",
|
||||
"react-scripts": "^3.1.1",
|
||||
"file-saver": "^2.0.2",
|
||||
"typeface-roboto-condensed": "latest"
|
||||
},
|
||||
"scripts": {
|
||||
|
@ -42,6 +43,6 @@
|
|||
"not op_mini all"
|
||||
],
|
||||
"devDependencies": {
|
||||
"babel-plugin-prismjs": "1.0.2"
|
||||
"babel-plugin-prismjs": "1.1.1"
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
{
|
||||
"name": "@freesewing/florent",
|
||||
"version": "2.0.0-beta.43",
|
||||
"version": "2.1.0-alpha.0",
|
||||
"description": "A FreeSewing pattern for a flat cap",
|
||||
"author": "Joost De Cock <joost@decock.org> (https://github.com/joostdecock)",
|
||||
"homepage": "https://freesewing.org/",
|
||||
|
@ -33,8 +33,8 @@
|
|||
"netlify": "echo \"Not configured yet\""
|
||||
},
|
||||
"peerDependencies": {
|
||||
"@freesewing/core": "^2.0.0-beta.43",
|
||||
"@freesewing/plugin-bundle": "^2.0.0-beta.43"
|
||||
"@freesewing/core": "^2.1.0-alpha.0",
|
||||
"@freesewing/plugin-bundle": "^2.1.0-alpha.0"
|
||||
},
|
||||
"dependencies": {},
|
||||
"devDependencies": {
|
||||
|
@ -45,14 +45,14 @@
|
|||
"eslint": "^5.16.0",
|
||||
"babel-jest": "24.7.1",
|
||||
"jest": "24.7.1",
|
||||
"@freesewing/components": "^2.0.0-beta.43",
|
||||
"@freesewing/css-theme": "^2.0.0-beta.43",
|
||||
"@freesewing/i18n": "^2.0.0-beta.43",
|
||||
"@freesewing/mui-theme": "^2.0.0-beta.43",
|
||||
"@freesewing/plugin-bust": "^2.0.0-beta.43",
|
||||
"@freesewing/plugin-buttons": "^2.0.0-beta.43",
|
||||
"@freesewing/plugin-flip": "^2.0.0-beta.43",
|
||||
"@freesewing/utils": "^2.0.0-beta.43",
|
||||
"@freesewing/components": "^2.1.0-alpha.0",
|
||||
"@freesewing/css-theme": "^2.1.0-alpha.0",
|
||||
"@freesewing/i18n": "^2.1.0-alpha.0",
|
||||
"@freesewing/mui-theme": "^2.1.0-alpha.0",
|
||||
"@freesewing/plugin-bust": "^2.1.0-alpha.0",
|
||||
"@freesewing/plugin-buttons": "^2.1.0-alpha.0",
|
||||
"@freesewing/plugin-flip": "^2.1.0-alpha.0",
|
||||
"@freesewing/utils": "^2.1.0-alpha.0",
|
||||
"@svgr/rollup": "^2.4.1",
|
||||
"cross-env": "^5.1.4",
|
||||
"gh-pages": "^1.2.0",
|
||||
|
@ -80,7 +80,7 @@
|
|||
],
|
||||
"publishConfig": {
|
||||
"access": "public",
|
||||
"tag": "beta"
|
||||
"tag": "next"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=8.0.0",
|
||||
|
|
36
packages/huey/CHANGELOG.md
Normal file
36
packages/huey/CHANGELOG.md
Normal file
|
@ -0,0 +1,36 @@
|
|||
# Change log for: @freesewing/huey
|
||||
|
||||
|
||||
## Unreleased
|
||||
|
||||
**Note:** Version bump only for package huey
|
||||
|
||||
|
||||
## 2.0.4 (2019-09-27)
|
||||
|
||||
**Note:** Version bump only for package huey
|
||||
|
||||
|
||||
## 2.0.3 (2019-09-15)
|
||||
|
||||
**Note:** Version bump only for package huey
|
||||
|
||||
|
||||
## 2.0.2 (2019-09-06)
|
||||
|
||||
**Note:** Version bump only for package huey
|
||||
|
||||
|
||||
## 2.0.1 (2019-09-01)
|
||||
|
||||
**Note:** Version bump only for package huey
|
||||
|
||||
|
||||
|
||||
|
||||
## 2.0.0 (2019-08-25)
|
||||
|
||||
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.
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Add table
Add a link
Reference in a new issue