1
0
Fork 0

🔧 Reconfigure packages

This commit is contained in:
Joost De Cock 2019-09-02 19:51:56 +02:00
parent 6d4dd125e3
commit e41915da6d
81 changed files with 1423 additions and 258 deletions

View file

@ -1,14 +1,40 @@
FIXME: This needs to be automated, but this is until then # Change log for: FreeSewing (global)
## Unreleased
## 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.
### 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.1 ## 2.0.0 (2019-08-25)
theo: Removed inherited notches from fly shield and side piece This is the **initial release**, and the start of this change log.
models: switched to neckstimate based data
utils: added measurementDiffers method
2.0.0 -> initial release (v1 was PHP) Prior to version 2, FreeSewing was not a JavaScript project.
As such, that history is out of scope for this change log.

View file

@ -273,7 +273,7 @@ Unreleased:
Security: Security:
2.0.1: 2.0.1:
date: 2008-09-01 date: 2019-09-01
Added: Added:
utils: utils:
- The `measurementDiffers` method is new. - The `measurementDiffers` method is new.
@ -285,4 +285,5 @@ Unreleased:
- The models data is now based on the data from the `neckstimate` method in the utils package. - The models data is now based on the data from the `neckstimate` method in the utils package.
Fixed: Fixed:
theo: theo:
- "[#78](https://github.com/freesewing/freesewing/issues/78): Removed inherited notches from fly shield and side piece." - "[#78](https://github.com/freesewing/freesewing/issues/78):
Removed inherited notches from fly shield and side piece."

View file

@ -1,18 +1,9 @@
<p align="center"> # Change log for: {{{fullname}}}
<a title="Go to freesewing.org" href="https://freesewing.org/">
<img src="https://freesewing.org/share/en.wide.jpg" align="center" width="200px" alt="FreeSewing.org"/>
</a>
<br>
<b><a href="https://freesewing.org/">FreeSewing</a></b>
<br>
An open source platform for made-to-measure sewing patterns
</p>
# {{{fullname}}} Change log
{{changelog}} {{{changelog}}}
## 2.0.0 ## 2.0.0 (2019-08-25)
This is the **initial release**, and the start of this change log. This is the **initial release**, and the start of this change log.

View file

@ -0,0 +1,21 @@
# Change log for: @freesewing/aaron
## Unreleased
**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.

View file

@ -43,9 +43,9 @@
"react-dom": "^16.8", "react-dom": "^16.8",
"@babel/plugin-proposal-class-properties": "^7.0.0", "@babel/plugin-proposal-class-properties": "^7.0.0",
"babel-eslint": "10.0.1", "babel-eslint": "10.0.1",
"eslint": "^6.3.0", "eslint": "^5.16.0",
"babel-jest": "24.7.1", "babel-jest": "24.7.1",
"jest": "24.9.0", "jest": "24.7.1",
"@freesewing/components": "^2.0.1", "@freesewing/components": "^2.0.1",
"@freesewing/css-theme": "^2.0.1", "@freesewing/css-theme": "^2.0.1",
"@freesewing/i18n": "^2.0.1", "@freesewing/i18n": "^2.0.1",

View file

@ -0,0 +1,21 @@
# Change log for: @freesewing/benjamin
## Unreleased
**Note:** Version bump only for package benjamin
## 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.

View file

@ -42,9 +42,9 @@
"react-dom": "^16.8", "react-dom": "^16.8",
"@babel/plugin-proposal-class-properties": "^7.0.0", "@babel/plugin-proposal-class-properties": "^7.0.0",
"babel-eslint": "10.0.1", "babel-eslint": "10.0.1",
"eslint": "^6.3.0", "eslint": "^5.16.0",
"babel-jest": "24.7.1", "babel-jest": "24.7.1",
"jest": "24.9.0", "jest": "24.7.1",
"@freesewing/components": "^2.0.1", "@freesewing/components": "^2.0.1",
"@freesewing/css-theme": "^2.0.1", "@freesewing/css-theme": "^2.0.1",
"@freesewing/i18n": "^2.0.1", "@freesewing/i18n": "^2.0.1",

View file

@ -0,0 +1,21 @@
# Change log for: @freesewing/bent
## Unreleased
**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.

View file

@ -43,9 +43,9 @@
"react-dom": "^16.8", "react-dom": "^16.8",
"@babel/plugin-proposal-class-properties": "^7.0.0", "@babel/plugin-proposal-class-properties": "^7.0.0",
"babel-eslint": "10.0.1", "babel-eslint": "10.0.1",
"eslint": "^6.3.0", "eslint": "^5.16.0",
"babel-jest": "24.7.1", "babel-jest": "24.7.1",
"jest": "24.9.0", "jest": "24.7.1",
"@freesewing/components": "^2.0.1", "@freesewing/components": "^2.0.1",
"@freesewing/css-theme": "^2.0.1", "@freesewing/css-theme": "^2.0.1",
"@freesewing/i18n": "^2.0.1", "@freesewing/i18n": "^2.0.1",

View file

@ -0,0 +1,21 @@
# Change log for: @freesewing/brian
## Unreleased
**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.

View file

@ -42,9 +42,9 @@
"react-dom": "^16.8", "react-dom": "^16.8",
"@babel/plugin-proposal-class-properties": "^7.0.0", "@babel/plugin-proposal-class-properties": "^7.0.0",
"babel-eslint": "10.0.1", "babel-eslint": "10.0.1",
"eslint": "^6.3.0", "eslint": "^5.16.0",
"babel-jest": "24.7.1", "babel-jest": "24.7.1",
"jest": "24.9.0", "jest": "24.7.1",
"@freesewing/components": "^2.0.1", "@freesewing/components": "^2.0.1",
"@freesewing/css-theme": "^2.0.1", "@freesewing/css-theme": "^2.0.1",
"@freesewing/i18n": "^2.0.1", "@freesewing/i18n": "^2.0.1",

View file

@ -0,0 +1,21 @@
# Change log for: @freesewing/bruce
## Unreleased
**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.

View file

@ -42,9 +42,9 @@
"react-dom": "^16.8", "react-dom": "^16.8",
"@babel/plugin-proposal-class-properties": "^7.0.0", "@babel/plugin-proposal-class-properties": "^7.0.0",
"babel-eslint": "10.0.1", "babel-eslint": "10.0.1",
"eslint": "^6.3.0", "eslint": "^5.16.0",
"babel-jest": "24.7.1", "babel-jest": "24.7.1",
"jest": "24.9.0", "jest": "24.7.1",
"@freesewing/components": "^2.0.1", "@freesewing/components": "^2.0.1",
"@freesewing/css-theme": "^2.0.1", "@freesewing/css-theme": "^2.0.1",
"@freesewing/i18n": "^2.0.1", "@freesewing/i18n": "^2.0.1",

View file

@ -0,0 +1,21 @@
# Change log for: @freesewing/carlita
## Unreleased
**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.

View file

@ -46,9 +46,9 @@
"react-dom": "^16.8", "react-dom": "^16.8",
"@babel/plugin-proposal-class-properties": "^7.0.0", "@babel/plugin-proposal-class-properties": "^7.0.0",
"babel-eslint": "10.0.1", "babel-eslint": "10.0.1",
"eslint": "^6.3.0", "eslint": "^5.16.0",
"babel-jest": "24.7.1", "babel-jest": "24.7.1",
"jest": "24.9.0", "jest": "24.7.1",
"@freesewing/components": "^2.0.1", "@freesewing/components": "^2.0.1",
"@freesewing/css-theme": "^2.0.1", "@freesewing/css-theme": "^2.0.1",
"@freesewing/i18n": "^2.0.1", "@freesewing/i18n": "^2.0.1",

View file

@ -0,0 +1,21 @@
# Change log for: @freesewing/carlton
## Unreleased
**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.

View file

@ -44,9 +44,9 @@
"react-dom": "^16.8", "react-dom": "^16.8",
"@babel/plugin-proposal-class-properties": "^7.0.0", "@babel/plugin-proposal-class-properties": "^7.0.0",
"babel-eslint": "10.0.1", "babel-eslint": "10.0.1",
"eslint": "^6.3.0", "eslint": "^5.16.0",
"babel-jest": "24.7.1", "babel-jest": "24.7.1",
"jest": "24.9.0", "jest": "24.7.1",
"@freesewing/components": "^2.0.1", "@freesewing/components": "^2.0.1",
"@freesewing/css-theme": "^2.0.1", "@freesewing/css-theme": "^2.0.1",
"@freesewing/i18n": "^2.0.1", "@freesewing/i18n": "^2.0.1",

View file

@ -0,0 +1,21 @@
# Change log for: @freesewing/cathrin
## Unreleased
**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.

View file

@ -42,9 +42,9 @@
"react-dom": "^16.8", "react-dom": "^16.8",
"@babel/plugin-proposal-class-properties": "^7.0.0", "@babel/plugin-proposal-class-properties": "^7.0.0",
"babel-eslint": "10.0.1", "babel-eslint": "10.0.1",
"eslint": "^6.3.0", "eslint": "^5.16.0",
"babel-jest": "24.7.1", "babel-jest": "24.7.1",
"jest": "24.9.0", "jest": "24.7.1",
"@freesewing/components": "^2.0.1", "@freesewing/components": "^2.0.1",
"@freesewing/css-theme": "^2.0.1", "@freesewing/css-theme": "^2.0.1",
"@freesewing/i18n": "^2.0.1", "@freesewing/i18n": "^2.0.1",

View file

@ -0,0 +1,21 @@
# Change log for: @freesewing/components
## Unreleased
**Note:** Version bump only for package components
## 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.

View file

@ -0,0 +1,21 @@
# Change log for: @freesewing/core
## Unreleased
**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.

View file

@ -0,0 +1,21 @@
# Change log for: create-freesewing-pattern
## Unreleased
**Note:** Version bump only for package create-freesewing-pattern
## 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.

View file

@ -27,15 +27,15 @@
"dependencies": { "dependencies": {
"chalk": "^2.4.2", "chalk": "^2.4.2",
"commander": "^2.19.0", "commander": "^2.19.0",
"conf": "^5.0.0", "conf": "^2.2.0",
"cp-file": "^6.0.0", "cp-file": "^6.0.0",
"execa": "^1.0.0", "execa": "^1.0.0",
"git-config-path": "^2.0.0", "git-config-path": "^2.0.0",
"github-username": "^5.0.1", "github-username": "^4.1.0",
"globby": "^10.0.1", "globby": "^9.0.0",
"handlebars": "^4.1.0", "handlebars": "^4.1.0",
"inquirer": "^6.2.2", "inquirer": "^6.2.2",
"make-dir": "^3.0.0", "make-dir": "^2.0.0",
"ora": "^3.1.0", "ora": "^3.1.0",
"p-each-series": "^1.0.0", "p-each-series": "^1.0.0",
"parse-git-config": "^3.0.0", "parse-git-config": "^3.0.0",

View file

@ -0,0 +1,21 @@
# Change log for: @freesewing/css-theme
## Unreleased
**Note:** Version bump only for package css-theme
## 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.

View file

@ -0,0 +1,21 @@
# Change log for: @freesewing/examples
## Unreleased
**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.

View file

@ -37,9 +37,9 @@
"react-dom": "^16.8", "react-dom": "^16.8",
"@babel/plugin-proposal-class-properties": "^7.0.0", "@babel/plugin-proposal-class-properties": "^7.0.0",
"babel-eslint": "10.0.1", "babel-eslint": "10.0.1",
"eslint": "^6.3.0", "eslint": "^5.16.0",
"babel-jest": "24.7.1", "babel-jest": "24.7.1",
"jest": "24.9.0", "jest": "24.7.1",
"@freesewing/components": "^2.0.1", "@freesewing/components": "^2.0.1",
"@freesewing/css-theme": "^2.0.1", "@freesewing/css-theme": "^2.0.1",
"@freesewing/i18n": "^2.0.1", "@freesewing/i18n": "^2.0.1",

View file

@ -0,0 +1,21 @@
# Change log for: @freesewing/florent
## Unreleased
**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.

View file

@ -42,9 +42,9 @@
"react-dom": "^16.8", "react-dom": "^16.8",
"@babel/plugin-proposal-class-properties": "^7.0.0", "@babel/plugin-proposal-class-properties": "^7.0.0",
"babel-eslint": "10.0.1", "babel-eslint": "10.0.1",
"eslint": "^6.3.0", "eslint": "^5.16.0",
"babel-jest": "24.7.1", "babel-jest": "24.7.1",
"jest": "24.9.0", "jest": "24.7.1",
"@freesewing/components": "^2.0.1", "@freesewing/components": "^2.0.1",
"@freesewing/css-theme": "^2.0.1", "@freesewing/css-theme": "^2.0.1",
"@freesewing/i18n": "^2.0.1", "@freesewing/i18n": "^2.0.1",

View file

@ -0,0 +1,21 @@
# Change log for: @freesewing/huey
## Unreleased
**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.

View file

@ -42,9 +42,9 @@
"react-dom": "^16.8", "react-dom": "^16.8",
"@babel/plugin-proposal-class-properties": "^7.0.0", "@babel/plugin-proposal-class-properties": "^7.0.0",
"babel-eslint": "10.0.1", "babel-eslint": "10.0.1",
"eslint": "^6.3.0", "eslint": "^5.16.0",
"babel-jest": "24.7.1", "babel-jest": "24.7.1",
"jest": "24.9.0", "jest": "24.7.1",
"@freesewing/components": "^2.0.1", "@freesewing/components": "^2.0.1",
"@freesewing/css-theme": "^2.0.1", "@freesewing/css-theme": "^2.0.1",
"@freesewing/i18n": "^2.0.1", "@freesewing/i18n": "^2.0.1",

View file

@ -0,0 +1,21 @@
# Change log for: @freesewing/hugo
## Unreleased
**Note:** Version bump only for package hugo
## 2.0.1 (2019-09-01)
**Note:** Version bump only for package hugo
## 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.

View file

@ -43,9 +43,9 @@
"react-dom": "^16.8", "react-dom": "^16.8",
"@babel/plugin-proposal-class-properties": "^7.0.0", "@babel/plugin-proposal-class-properties": "^7.0.0",
"babel-eslint": "10.0.1", "babel-eslint": "10.0.1",
"eslint": "^6.3.0", "eslint": "^5.16.0",
"babel-jest": "24.7.1", "babel-jest": "24.7.1",
"jest": "24.9.0", "jest": "24.7.1",
"@freesewing/components": "^2.0.1", "@freesewing/components": "^2.0.1",
"@freesewing/css-theme": "^2.0.1", "@freesewing/css-theme": "^2.0.1",
"@freesewing/i18n": "^2.0.1", "@freesewing/i18n": "^2.0.1",

View file

@ -0,0 +1,21 @@
# Change log for: @freesewing/i18n
## Unreleased
**Note:** Version bump only for package i18n
## 2.0.1 (2019-09-01)
**Note:** Version bump only for package i18n
## 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.

View file

@ -0,0 +1,21 @@
# Change log for: @freesewing/jaeger
## Unreleased
**Note:** Version bump only for package jaeger
## 2.0.1 (2019-09-01)
**Note:** Version bump only for package jaeger
## 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.

View file

@ -44,9 +44,9 @@
"react-dom": "^16.8", "react-dom": "^16.8",
"@babel/plugin-proposal-class-properties": "^7.0.0", "@babel/plugin-proposal-class-properties": "^7.0.0",
"babel-eslint": "10.0.1", "babel-eslint": "10.0.1",
"eslint": "^6.3.0", "eslint": "^5.16.0",
"babel-jest": "24.7.1", "babel-jest": "24.7.1",
"jest": "24.9.0", "jest": "24.7.1",
"@freesewing/components": "^2.0.1", "@freesewing/components": "^2.0.1",
"@freesewing/css-theme": "^2.0.1", "@freesewing/css-theme": "^2.0.1",
"@freesewing/i18n": "^2.0.1", "@freesewing/i18n": "^2.0.1",

View file

@ -0,0 +1,26 @@
# Change log for: @freesewing/models
## Unreleased
**Note:** Version bump only for package models
## 2.0.1 (2019-09-01)
### 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.
## 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.

View file

@ -0,0 +1,21 @@
# Change log for: @freesewing/mui-theme
## Unreleased
**Note:** Version bump only for package mui-theme
## 2.0.1 (2019-09-01)
**Note:** Version bump only for package mui-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.

View file

@ -0,0 +1,21 @@
# Change log for: @freesewing/pattern-info
## Unreleased
**Note:** Version bump only for package pattern-info
## 2.0.1 (2019-09-01)
**Note:** Version bump only for package pattern-info
## 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.

View file

@ -0,0 +1,21 @@
# Change log for: @freesewing/patterns
## Unreleased
**Note:** Version bump only for package patterns
## 2.0.1 (2019-09-01)
**Note:** Version bump only for package patterns
## 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.

View file

@ -0,0 +1,21 @@
# Change log for: @freesewing/plugin-banner
## Unreleased
**Note:** Version bump only for package plugin-banner
## 2.0.1 (2019-09-01)
**Note:** Version bump only for package plugin-banner
## 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.

View file

@ -0,0 +1,21 @@
# Change log for: @freesewing/plugin-bundle
## Unreleased
**Note:** Version bump only for package plugin-bundle
## 2.0.1 (2019-09-01)
**Note:** Version bump only for package plugin-bundle
## 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.

View file

@ -0,0 +1,21 @@
# Change log for: @freesewing/plugin-bust
## Unreleased
**Note:** Version bump only for package plugin-bust
## 2.0.1 (2019-09-01)
**Note:** Version bump only for package plugin-bust
## 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.

View file

@ -0,0 +1,21 @@
# Change log for: @freesewing/plugin-buttons
## Unreleased
**Note:** Version bump only for package plugin-buttons
## 2.0.1 (2019-09-01)
**Note:** Version bump only for package plugin-buttons
## 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.

View file

@ -0,0 +1,21 @@
# Change log for: @freesewing/plugin-cutonfold
## Unreleased
**Note:** Version bump only for package plugin-cutonfold
## 2.0.1 (2019-09-01)
**Note:** Version bump only for package plugin-cutonfold
## 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.

View file

@ -0,0 +1,21 @@
# Change log for: @freesewing/plugin-debug
## Unreleased
**Note:** Version bump only for package plugin-debug
## 2.0.1 (2019-09-01)
**Note:** Version bump only for package plugin-debug
## 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.

View file

@ -0,0 +1,21 @@
# Change log for: @freesewing/plugin-designer
## Unreleased
**Note:** Version bump only for package plugin-designer
## 2.0.1 (2019-09-01)
**Note:** Version bump only for package plugin-designer
## 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.

View file

@ -0,0 +1,21 @@
# Change log for: @freesewing/plugin-dimension
## Unreleased
**Note:** Version bump only for package plugin-dimension
## 2.0.1 (2019-09-01)
**Note:** Version bump only for package plugin-dimension
## 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.

View file

@ -0,0 +1,21 @@
# Change log for: @freesewing/plugin-flip
## Unreleased
**Note:** Version bump only for package plugin-flip
## 2.0.1 (2019-09-01)
**Note:** Version bump only for package plugin-flip
## 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.

View file

@ -0,0 +1,21 @@
# Change log for: @freesewing/plugin-grainline
## Unreleased
**Note:** Version bump only for package plugin-grainline
## 2.0.1 (2019-09-01)
**Note:** Version bump only for package plugin-grainline
## 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.

View file

@ -0,0 +1,21 @@
# Change log for: @freesewing/plugin-i18n
## Unreleased
**Note:** Version bump only for package plugin-i18n
## 2.0.1 (2019-09-01)
**Note:** Version bump only for package plugin-i18n
## 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.

View file

@ -0,0 +1,21 @@
# Change log for: @freesewing/plugin-logo
## Unreleased
**Note:** Version bump only for package plugin-logo
## 2.0.1 (2019-09-01)
**Note:** Version bump only for package plugin-logo
## 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.

View file

@ -0,0 +1,21 @@
# Change log for: @freesewing/plugin-round
## Unreleased
**Note:** Version bump only for package plugin-round
## 2.0.1 (2019-09-01)
**Note:** Version bump only for package plugin-round
## 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.

View file

@ -0,0 +1,21 @@
# Change log for: @freesewing/plugin-scalebox
## Unreleased
**Note:** Version bump only for package plugin-scalebox
## 2.0.1 (2019-09-01)
**Note:** Version bump only for package plugin-scalebox
## 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.

View file

@ -0,0 +1,21 @@
# Change log for: @freesewing/plugin-sprinkle
## Unreleased
**Note:** Version bump only for package plugin-sprinkle
## 2.0.1 (2019-09-01)
**Note:** Version bump only for package plugin-sprinkle
## 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.

View file

@ -0,0 +1,21 @@
# Change log for: @freesewing/plugin-svgattr
## Unreleased
**Note:** Version bump only for package plugin-svgattr
## 2.0.1 (2019-09-01)
**Note:** Version bump only for package plugin-svgattr
## 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.

View file

@ -0,0 +1,21 @@
# Change log for: @freesewing/plugin-theme
## Unreleased
**Note:** Version bump only for package plugin-theme
## 2.0.1 (2019-09-01)
**Note:** Version bump only for package plugin-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.

View file

@ -0,0 +1,21 @@
# Change log for: @freesewing/plugin-title
## Unreleased
**Note:** Version bump only for package plugin-title
## 2.0.1 (2019-09-01)
**Note:** Version bump only for package plugin-title
## 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.

View file

@ -0,0 +1,21 @@
# Change log for: @freesewing/plugin-validate
## Unreleased
**Note:** Version bump only for package plugin-validate
## 2.0.1 (2019-09-01)
**Note:** Version bump only for package plugin-validate
## 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.

View file

@ -0,0 +1,21 @@
# Change log for: @freesewing/prettier-config
## Unreleased
**Note:** Version bump only for package prettier-config
## 2.0.1 (2019-09-01)
**Note:** Version bump only for package prettier-config
## 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.

View file

@ -0,0 +1,21 @@
# Change log for: @freesewing/rendertest
## Unreleased
**Note:** Version bump only for package rendertest
## 2.0.1 (2019-09-01)
**Note:** Version bump only for package rendertest
## 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.

View file

@ -42,9 +42,9 @@
"react-dom": "^16.8", "react-dom": "^16.8",
"@babel/plugin-proposal-class-properties": "^7.0.0", "@babel/plugin-proposal-class-properties": "^7.0.0",
"babel-eslint": "10.0.1", "babel-eslint": "10.0.1",
"eslint": "^6.3.0", "eslint": "^5.16.0",
"babel-jest": "24.7.1", "babel-jest": "24.7.1",
"jest": "24.9.0", "jest": "24.7.1",
"@freesewing/components": "^2.0.1", "@freesewing/components": "^2.0.1",
"@freesewing/css-theme": "^2.0.1", "@freesewing/css-theme": "^2.0.1",
"@freesewing/i18n": "^2.0.1", "@freesewing/i18n": "^2.0.1",

View file

@ -0,0 +1,21 @@
# Change log for: @freesewing/sandy
## Unreleased
**Note:** Version bump only for package sandy
## 2.0.1 (2019-09-01)
**Note:** Version bump only for package sandy
## 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.

View file

@ -42,9 +42,9 @@
"react-dom": "^16.8", "react-dom": "^16.8",
"@babel/plugin-proposal-class-properties": "^7.0.0", "@babel/plugin-proposal-class-properties": "^7.0.0",
"babel-eslint": "10.0.1", "babel-eslint": "10.0.1",
"eslint": "^6.3.0", "eslint": "^5.16.0",
"babel-jest": "24.7.1", "babel-jest": "24.7.1",
"jest": "24.9.0", "jest": "24.7.1",
"@freesewing/components": "^2.0.1", "@freesewing/components": "^2.0.1",
"@freesewing/css-theme": "^2.0.1", "@freesewing/css-theme": "^2.0.1",
"@freesewing/i18n": "^2.0.1", "@freesewing/i18n": "^2.0.1",

View file

@ -0,0 +1,21 @@
# Change log for: @freesewing/shin
## Unreleased
**Note:** Version bump only for package shin
## 2.0.1 (2019-09-01)
**Note:** Version bump only for package shin
## 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.

View file

@ -42,9 +42,9 @@
"react-dom": "^16.8", "react-dom": "^16.8",
"@babel/plugin-proposal-class-properties": "^7.0.0", "@babel/plugin-proposal-class-properties": "^7.0.0",
"babel-eslint": "10.0.1", "babel-eslint": "10.0.1",
"eslint": "^6.3.0", "eslint": "^5.16.0",
"babel-jest": "24.7.1", "babel-jest": "24.7.1",
"jest": "24.9.0", "jest": "24.7.1",
"@freesewing/components": "^2.0.1", "@freesewing/components": "^2.0.1",
"@freesewing/css-theme": "^2.0.1", "@freesewing/css-theme": "^2.0.1",
"@freesewing/i18n": "^2.0.1", "@freesewing/i18n": "^2.0.1",

View file

@ -0,0 +1,21 @@
# Change log for: @freesewing/simon
## Unreleased
**Note:** Version bump only for package simon
## 2.0.1 (2019-09-01)
**Note:** Version bump only for package simon
## 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.

View file

@ -45,9 +45,9 @@
"react-dom": "^16.8", "react-dom": "^16.8",
"@babel/plugin-proposal-class-properties": "^7.0.0", "@babel/plugin-proposal-class-properties": "^7.0.0",
"babel-eslint": "10.0.1", "babel-eslint": "10.0.1",
"eslint": "^6.3.0", "eslint": "^5.16.0",
"babel-jest": "24.7.1", "babel-jest": "24.7.1",
"jest": "24.9.0", "jest": "24.7.1",
"@freesewing/components": "^2.0.1", "@freesewing/components": "^2.0.1",
"@freesewing/css-theme": "^2.0.1", "@freesewing/css-theme": "^2.0.1",
"@freesewing/i18n": "^2.0.1", "@freesewing/i18n": "^2.0.1",

View file

@ -0,0 +1,21 @@
# Change log for: @freesewing/sven
## Unreleased
**Note:** Version bump only for package sven
## 2.0.1 (2019-09-01)
**Note:** Version bump only for package sven
## 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.

View file

@ -42,9 +42,9 @@
"react-dom": "^16.8", "react-dom": "^16.8",
"@babel/plugin-proposal-class-properties": "^7.0.0", "@babel/plugin-proposal-class-properties": "^7.0.0",
"babel-eslint": "10.0.1", "babel-eslint": "10.0.1",
"eslint": "^6.3.0", "eslint": "^5.16.0",
"babel-jest": "24.7.1", "babel-jest": "24.7.1",
"jest": "24.9.0", "jest": "24.7.1",
"@freesewing/components": "^2.0.1", "@freesewing/components": "^2.0.1",
"@freesewing/css-theme": "^2.0.1", "@freesewing/css-theme": "^2.0.1",
"@freesewing/i18n": "^2.0.1", "@freesewing/i18n": "^2.0.1",

View file

@ -0,0 +1,21 @@
# Change log for: @freesewing/tamiko
## Unreleased
**Note:** Version bump only for package tamiko
## 2.0.1 (2019-09-01)
**Note:** Version bump only for package tamiko
## 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.

View file

@ -42,9 +42,9 @@
"react-dom": "^16.8", "react-dom": "^16.8",
"@babel/plugin-proposal-class-properties": "^7.0.0", "@babel/plugin-proposal-class-properties": "^7.0.0",
"babel-eslint": "10.0.1", "babel-eslint": "10.0.1",
"eslint": "^6.3.0", "eslint": "^5.16.0",
"babel-jest": "24.7.1", "babel-jest": "24.7.1",
"jest": "24.9.0", "jest": "24.7.1",
"@freesewing/components": "^2.0.1", "@freesewing/components": "^2.0.1",
"@freesewing/css-theme": "^2.0.1", "@freesewing/css-theme": "^2.0.1",
"@freesewing/i18n": "^2.0.1", "@freesewing/i18n": "^2.0.1",

View file

@ -0,0 +1,21 @@
# Change log for: @freesewing/theo
## Unreleased
**Note:** Version bump only for package theo
## 2.0.1 (2019-09-01)
### Fixed
- [#78](https://github.com/freesewing/freesewing/issues/78): Removed inherited notches from fly shield and side piece.
## 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.

View file

@ -42,9 +42,9 @@
"react-dom": "^16.8", "react-dom": "^16.8",
"@babel/plugin-proposal-class-properties": "^7.0.0", "@babel/plugin-proposal-class-properties": "^7.0.0",
"babel-eslint": "10.0.1", "babel-eslint": "10.0.1",
"eslint": "^6.3.0", "eslint": "^5.16.0",
"babel-jest": "24.7.1", "babel-jest": "24.7.1",
"jest": "24.9.0", "jest": "24.7.1",
"@freesewing/components": "^2.0.1", "@freesewing/components": "^2.0.1",
"@freesewing/css-theme": "^2.0.1", "@freesewing/css-theme": "^2.0.1",
"@freesewing/i18n": "^2.0.1", "@freesewing/i18n": "^2.0.1",

View file

@ -0,0 +1,21 @@
# Change log for: @freesewing/trayvon
## Unreleased
**Note:** Version bump only for package trayvon
## 2.0.1 (2019-09-01)
**Note:** Version bump only for package trayvon
## 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.

View file

@ -42,9 +42,9 @@
"react-dom": "^16.8", "react-dom": "^16.8",
"@babel/plugin-proposal-class-properties": "^7.0.0", "@babel/plugin-proposal-class-properties": "^7.0.0",
"babel-eslint": "10.0.1", "babel-eslint": "10.0.1",
"eslint": "^6.3.0", "eslint": "^5.16.0",
"babel-jest": "24.7.1", "babel-jest": "24.7.1",
"jest": "24.9.0", "jest": "24.7.1",
"@freesewing/components": "^2.0.1", "@freesewing/components": "^2.0.1",
"@freesewing/css-theme": "^2.0.1", "@freesewing/css-theme": "^2.0.1",
"@freesewing/i18n": "^2.0.1", "@freesewing/i18n": "^2.0.1",

View file

@ -0,0 +1,21 @@
# Change log for: @freesewing/tutorial
## Unreleased
**Note:** Version bump only for package tutorial
## 2.0.1 (2019-09-01)
**Note:** Version bump only for package tutorial
## 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.

View file

@ -42,9 +42,9 @@
"react-dom": "^16.8", "react-dom": "^16.8",
"@babel/plugin-proposal-class-properties": "^7.0.0", "@babel/plugin-proposal-class-properties": "^7.0.0",
"babel-eslint": "10.0.1", "babel-eslint": "10.0.1",
"eslint": "^6.3.0", "eslint": "^5.16.0",
"babel-jest": "24.7.1", "babel-jest": "24.7.1",
"jest": "24.9.0", "jest": "24.7.1",
"@freesewing/components": "^2.0.1", "@freesewing/components": "^2.0.1",
"@freesewing/css-theme": "^2.0.1", "@freesewing/css-theme": "^2.0.1",
"@freesewing/i18n": "^2.0.1", "@freesewing/i18n": "^2.0.1",

View file

@ -0,0 +1,21 @@
# Change log for: @freesewing/utils
## Unreleased
**Note:** Version bump only for package utils
## 2.0.1 (2019-09-01)
### 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.

View file

@ -0,0 +1,21 @@
# Change log for: @freesewing/wahid
## Unreleased
**Note:** Version bump only for package wahid
## 2.0.1 (2019-09-01)
**Note:** Version bump only for package wahid
## 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.

View file

@ -45,9 +45,9 @@
"react-dom": "^16.8", "react-dom": "^16.8",
"@babel/plugin-proposal-class-properties": "^7.0.0", "@babel/plugin-proposal-class-properties": "^7.0.0",
"babel-eslint": "10.0.1", "babel-eslint": "10.0.1",
"eslint": "^6.3.0", "eslint": "^5.16.0",
"babel-jest": "24.7.1", "babel-jest": "24.7.1",
"jest": "24.9.0", "jest": "24.7.1",
"@freesewing/components": "^2.0.1", "@freesewing/components": "^2.0.1",
"@freesewing/css-theme": "^2.0.1", "@freesewing/css-theme": "^2.0.1",
"@freesewing/i18n": "^2.0.1", "@freesewing/i18n": "^2.0.1",

View file

@ -1,51 +1,48 @@
/* eslint-disable no-console */ /* eslint-disable no-console */
const path = require("path"); const path = require('path')
const fs = require("fs"); const fs = require('fs')
const fse = require("fs-extra"); const fse = require('fs-extra')
const glob = require("glob"); const glob = require('glob')
const yaml = require("js-yaml"); const yaml = require('js-yaml')
const chalk = require("chalk"); const chalk = require('chalk')
const handlebars = require("handlebars"); const handlebars = require('handlebars')
const Mustache = require("mustache"); const Mustache = require('mustache')
const { version } = require("../lerna.json"); const { version } = require('../lerna.json')
const repoPath = process.cwd(); const repoPath = process.cwd()
const config = { const config = {
repoPath, repoPath,
defaults: readConfigFile("defaults.yaml"), defaults: readConfigFile('defaults.yaml'),
descriptions: readConfigFile("descriptions.yaml"), descriptions: readConfigFile('descriptions.yaml'),
keywords: readConfigFile("keywords.yaml"), keywords: readConfigFile('keywords.yaml'),
badges: readConfigFile("badges.yaml"), badges: readConfigFile('badges.yaml'),
scripts: readConfigFile("scripts.yaml"), scripts: readConfigFile('scripts.yaml'),
changelog: readConfigFile("changelog.yaml"), changelog: readConfigFile('changelog.yaml'),
changes: ["Added", "Changed", "Deprecated", "Removed", "Fixed", "Security"], changetypes: ['Added', 'Changed', 'Deprecated', 'Removed', 'Fixed', 'Security'],
dependencies: readConfigFile("dependencies.yaml", { version }), dependencies: readConfigFile('dependencies.yaml', { version }),
exceptions: readConfigFile("exceptions.yaml"), exceptions: readConfigFile('exceptions.yaml'),
templates: { templates: {
pkg: readTemplateFile("package.dflt.json"), pkg: readTemplateFile('package.dflt.json'),
rollup: readTemplateFile("rollup.config.dflt.js"), rollup: readTemplateFile('rollup.config.dflt.js'),
changelog: readTemplateFile("changelog.dflt.md"), changelog: readTemplateFile('changelog.dflt.md'),
readme: readTemplateFile("readme.dflt.md") readme: readTemplateFile('readme.dflt.md')
} }
}; }
const packages = glob.sync("*", { const packages = glob.sync('*', {
cwd: path.join(config.repoPath, "packages") cwd: path.join(config.repoPath, 'packages')
}); })
validate(packages, config); validate(packages, config)
reconfigure(packages, config); reconfigure(packages, config)
process.exit(); process.exit()
/** /**
* Reads a template file * Reads a template file
*/ */
function readTemplateFile(file) { function readTemplateFile(file) {
return fs.readFileSync( return fs.readFileSync(path.join(repoPath, 'config', 'templates', file), 'utf-8')
path.join(repoPath, "config", "templates", file),
"utf-8"
);
} }
/** /**
@ -56,25 +53,25 @@ function readExampleFile(file, subdir = false) {
subdir subdir
? path.join( ? path.join(
repoPath, repoPath,
"packages", 'packages',
"create-freesewing-pattern", 'create-freesewing-pattern',
"template", 'template',
"default", 'default',
"example", 'example',
file file
) )
: path.join( : path.join(
repoPath, repoPath,
"packages", 'packages',
"create-freesewing-pattern", 'create-freesewing-pattern',
"template", 'template',
"default", 'default',
"example", 'example',
subdir, subdir,
file file
), ),
"utf-8" 'utf-8'
); )
} }
/** /**
@ -83,14 +80,9 @@ function readExampleFile(file, subdir = false) {
function readConfigFile(file, replace = false) { function readConfigFile(file, replace = false) {
if (replace) if (replace)
return yaml.safeLoad( return yaml.safeLoad(
Mustache.render( Mustache.render(fs.readFileSync(path.join(repoPath, 'config', file), 'utf-8'), replace)
fs.readFileSync(path.join(repoPath, "config", file), "utf-8"), )
replace return yaml.safeLoad(fs.readFileSync(path.join(repoPath, 'config', file), 'utf-8'))
)
);
return yaml.safeLoad(
fs.readFileSync(path.join(repoPath, "config", file), "utf-8")
);
} }
/** /**
@ -98,17 +90,14 @@ function readConfigFile(file, replace = false) {
* Returns its contents if it exists, or an empty string if not * Returns its contents if it exists, or an empty string if not
*/ */
function readInfoFile(pkg) { function readInfoFile(pkg) {
let markup = ""; let markup = ''
try { try {
markup = fs.readFileSync( markup = fs.readFileSync(path.join(repoPath, 'packages', pkg, 'info.md'), 'utf-8')
path.join(repoPath, "packages", pkg, "info.md"),
"utf-8"
);
} catch { } catch {
return ""; return ''
} }
return markup; return markup
} }
/** /**
@ -119,25 +108,23 @@ function readInfoFile(pkg) {
* - other * - other
*/ */
function packageType(pkg, config) { function packageType(pkg, config) {
if (pkg.substring(0, 7) === "plugin-") return "plugin"; if (pkg.substring(0, 7) === 'plugin-') return 'plugin'
if (config.descriptions[pkg].substring(0, 21) === "A FreeSewing pattern ") if (config.descriptions[pkg].substring(0, 21) === 'A FreeSewing pattern ') return 'pattern'
return "pattern"; return 'other'
return "other";
} }
/** /**
* Returns an array of keywords for a package * Returns an array of keywords for a package
*/ */
function keywords(pkg, config, type) { function keywords(pkg, config, type) {
if (typeof config.keywords[pkg] !== "undefined") return config.keywords[pkg]; if (typeof config.keywords[pkg] !== 'undefined') return config.keywords[pkg]
if (typeof config.keywords[type] !== "undefined") if (typeof config.keywords[type] !== 'undefined') return config.keywords[type]
return config.keywords[type];
else { else {
console.log( console.log(
chalk.redBright.bold("Problem:"), chalk.redBright.bold('Problem:'),
chalk.redBright(`No keywords for package ${pkg} which is of type ${type}`) chalk.redBright(`No keywords for package ${pkg} which is of type ${type}`)
); )
process.exit(); process.exit()
} }
} }
@ -145,30 +132,30 @@ function keywords(pkg, config, type) {
* Returns an plain object of scripts for a package * Returns an plain object of scripts for a package
*/ */
function scripts(pkg, config, type) { function scripts(pkg, config, type) {
let runScripts = {}; let runScripts = {}
for (let key of Object.keys(config.scripts._)) { for (let key of Object.keys(config.scripts._)) {
runScripts[key] = Mustache.render(config.scripts._[key], { runScripts[key] = Mustache.render(config.scripts._[key], {
name: pkg name: pkg
}); })
} }
if (typeof config.scripts._types[type] !== "undefined") { if (typeof config.scripts._types[type] !== 'undefined') {
for (let key of Object.keys(config.scripts._types[type])) { for (let key of Object.keys(config.scripts._types[type])) {
runScripts[key] = Mustache.render(config.scripts._types[type][key], { runScripts[key] = Mustache.render(config.scripts._types[type][key], {
name: pkg name: pkg
}); })
} }
} }
if (typeof config.scripts[pkg] !== "undefined") { if (typeof config.scripts[pkg] !== 'undefined') {
for (let key of Object.keys(config.scripts[pkg])) { for (let key of Object.keys(config.scripts[pkg])) {
if (config.scripts[pkg][key] === "!") delete runScripts[key]; if (config.scripts[pkg][key] === '!') delete runScripts[key]
else else
runScripts[key] = Mustache.render(config.scripts[pkg][key], { runScripts[key] = Mustache.render(config.scripts[pkg][key], {
name: pkg name: pkg
}); })
} }
} }
return runScripts; return runScripts
} }
/** /**
@ -181,82 +168,78 @@ function scripts(pkg, config, type) {
* *
*/ */
function deps(section, pkg, config, type) { function deps(section, pkg, config, type) {
let dependencies = {}; let dependencies = {}
if ( if (
typeof config.dependencies._types[type] !== "undefined" && typeof config.dependencies._types[type] !== 'undefined' &&
typeof config.dependencies._types[type][section] !== "undefined" typeof config.dependencies._types[type][section] !== 'undefined'
) )
dependencies = config.dependencies._types[type][section]; dependencies = config.dependencies._types[type][section]
if (typeof config.dependencies[pkg] === "undefined") return dependencies; if (typeof config.dependencies[pkg] === 'undefined') return dependencies
if (typeof config.dependencies[pkg][section] !== "undefined") if (typeof config.dependencies[pkg][section] !== 'undefined')
return { ...dependencies, ...config.dependencies[pkg][section] }; return { ...dependencies, ...config.dependencies[pkg][section] }
return dependencies; return dependencies
} }
/** /**
* These merely call deps() for the relevant dependency section * These merely call deps() for the relevant dependency section
*/ */
function dependencies(pkg, config, type) { function dependencies(pkg, config, type) {
return deps("_", pkg, config, type); return deps('_', pkg, config, type)
} }
function devDependencies(pkg, config, type) { function devDependencies(pkg, config, type) {
return deps("dev", pkg, config, type); return deps('dev', pkg, config, type)
} }
function peerDependencies(pkg, config, type) { function peerDependencies(pkg, config, type) {
return deps("peer", pkg, config, type); return deps('peer', pkg, config, type)
} }
/** /**
* Creates a package.json file for a package * Creates a package.json file for a package
*/ */
function packageConfig(pkg, config) { function packageConfig(pkg, config) {
let type = packageType(pkg, config); let type = packageType(pkg, config)
let pkgConf = {}; let pkgConf = {}
// Let's keep these at the top // Let's keep these at the top
pkgConf.name = fullName(pkg, config); pkgConf.name = fullName(pkg, config)
pkgConf.version = version; pkgConf.version = version
pkgConf.description = config.descriptions[pkg]; pkgConf.description = config.descriptions[pkg]
pkgConf = { pkgConf = {
...pkgConf, ...pkgConf,
...JSON.parse(Mustache.render(config.templates.pkg, { name: pkg })) ...JSON.parse(Mustache.render(config.templates.pkg, { name: pkg }))
}; }
pkgConf.keywords = pkgConf.keywords.concat(keywords(pkg, config, type)); pkgConf.keywords = pkgConf.keywords.concat(keywords(pkg, config, type))
pkgConf.scripts = scripts(pkg, config, type); pkgConf.scripts = scripts(pkg, config, type)
pkgConf.dependencies = dependencies(pkg, config, type); pkgConf.dependencies = dependencies(pkg, config, type)
pkgConf.devDependencies = devDependencies(pkg, config, type); pkgConf.devDependencies = devDependencies(pkg, config, type)
pkgConf.peerDependencies = peerDependencies(pkg, config, type); pkgConf.peerDependencies = peerDependencies(pkg, config, type)
if (typeof config.exceptions.packageJson[pkg] !== "undefined") { if (typeof config.exceptions.packageJson[pkg] !== 'undefined') {
pkgConf = { pkgConf = {
...pkgConf, ...pkgConf,
...config.exceptions.packageJson[pkg] ...config.exceptions.packageJson[pkg]
}; }
for (let key of Object.keys(config.exceptions.packageJson[pkg])) { for (let key of Object.keys(config.exceptions.packageJson[pkg])) {
if (config.exceptions.packageJson[pkg][key] === "!") delete pkgConf[key]; if (config.exceptions.packageJson[pkg][key] === '!') delete pkgConf[key]
} }
} }
return pkgConf; return pkgConf
} }
/** /**
* Returns an string with the markup for badges in the readme file * Returns an string with the markup for badges in the readme file
*/ */
function badges(pkg, config) { function badges(pkg, config) {
let markup = ""; let markup = ''
for (let group of ["_all", "_social"]) { for (let group of ['_all', '_social']) {
markup += "<p align='center'>"; markup += "<p align='center'>"
for (let key of Object.keys(config.badges[group])) { for (let key of Object.keys(config.badges[group])) {
markup += formatBadge( markup += formatBadge(config.badges[group][key], pkg, fullName(pkg, config))
config.badges[group][key],
pkg,
fullName(pkg, config)
);
} }
markup += "</p>"; markup += '</p>'
} }
return markup; return markup
} }
/** /**
@ -268,14 +251,14 @@ function formatBadge(badge, name, fullname) {
title="${Mustache.render(badge.alt, { name, fullname })}" title="${Mustache.render(badge.alt, { name, fullname })}"
><img src="${Mustache.render(badge.img, { name, fullname })}" ><img src="${Mustache.render(badge.img, { name, fullname })}"
alt="${Mustache.render(badge.alt, { name, fullname })}"/> alt="${Mustache.render(badge.alt, { name, fullname })}"/>
</a>`; </a>`
} }
/** /**
* Returns the full (namespaced) name of a package * Returns the full (namespaced) name of a package
*/ */
function fullName(pkg, config) { function fullName(pkg, config) {
if (config.exceptions.noNamespace.indexOf(pkg) !== -1) return pkg; if (config.exceptions.noNamespace.indexOf(pkg) !== -1) return pkg
else return `@freesewing/${pkg}`; else return `@freesewing/${pkg}`
} }
/** /**
@ -287,9 +270,9 @@ function readme(pkg, config) {
description: config.descriptions[pkg], description: config.descriptions[pkg],
badges: badges(pkg, config), badges: badges(pkg, config),
info: readInfoFile(pkg) info: readInfoFile(pkg)
}); })
return markup; return markup
} }
/** /**
@ -297,44 +280,102 @@ function readme(pkg, config) {
*/ */
function changelog(pkg, config) { function changelog(pkg, config) {
let markup = Mustache.render(config.templates.changelog, { let markup = Mustache.render(config.templates.changelog, {
fullname: fullName(pkg, config), fullname: pkg === 'global' ? 'FreeSewing (global)' : fullName(pkg, config),
changelog: packageChangelog(pkg, config) changelog: pkg === 'global' ? globalChangelog(config) : packageChangelog(pkg, config)
}); })
return markup; return markup
}
/**
* Generates the global changelog data
*/
function globalChangelog(config) {
let markup = ''
for (let v in config.changelog) {
let changes = config.changelog[v]
markup += '\n## ' + v
if (v !== 'Unreleased') markup += ' (' + formatDate(changes.date) + ')'
markup += '\n\n'
for (let pkg of packages) {
let changed = false
for (let type of config.changetypes) {
if (
typeof changes[type] !== 'undefined' &&
changes[type] !== null &&
typeof changes[type][pkg] !== 'undefined' &&
changes[type][pkg] !== null
) {
if (!changed) changed = ''
changed += '\n#### ' + type + '\n\n'
for (let change of changes[type][pkg]) changed += ' - ' + change + '\n'
}
}
if (changed) markup += '### ' + pkg + '\n' + changed + '\n'
}
}
return markup
} }
/** /**
* Generates the changelog data for a package * Generates the changelog data for a package
*/ */
function packageChangelog(pkg, config) { function packageChangelog(pkg, config) {
let markup = ""; let markup = ''
if (pkg === "theo") { for (let v in config.changelog) {
for (let v in config.changelog) { let changes = config.changelog[v]
markup += "## " + v + "\n\n"; let changed = false
for (let type of config.changetypes) {
if (
typeof changes[type] !== 'undefined' &&
changes[type] !== null &&
typeof changes[type][pkg] !== 'undefined' &&
changes[type][pkg] !== null
) {
if (!changed) changed = ''
changed += '\n### ' + type + '\n\n'
for (let change of changes[type][pkg]) changed += ' - ' + change + '\n'
}
} }
markup += '## ' + v
if (v !== 'Unreleased') markup += ' (' + formatDate(changes.date) + ')'
markup += '\n'
markup += changed ? changed : `\n**Note:** Version bump only for package ${pkg}\n\n\n`
} }
return markup; return markup
}
function formatDate(date) {
let d = new Date(date),
month = '' + (d.getMonth() + 1),
day = '' + d.getDate(),
year = d.getFullYear()
if (month.length < 2) month = '0' + month
if (day.length < 2) day = '0' + day
return [year, month, day].join('-')
} }
/** /**
* Make sure we have (at least) a description for each package * Make sure we have (at least) a description for each package
*/ */
function validate(pkgs, config) { function validate(pkgs, config) {
console.log(chalk.blueBright("Validating package descriptions")); console.log(chalk.blueBright('Validating package descriptions'))
for (let pkg of pkgs) { for (let pkg of pkgs) {
if (typeof config.descriptions[pkg] !== "string") { if (typeof config.descriptions[pkg] !== 'string') {
console.log( console.log(
chalk.redBright.bold("Problem:"), chalk.redBright.bold('Problem:'),
chalk.redBright(`No description for package ${pkg}`) chalk.redBright(`No description for package ${pkg}`)
); )
process.exit(); process.exit()
} }
} }
console.log(chalk.yellowBright.bold("Looks good")); console.log(chalk.yellowBright.bold('Looks good'))
return true; return true
} }
/** /**
@ -345,50 +386,41 @@ function configurePatternExample(pkg, config) {
// Create example dir structure // Create example dir structure
let source = path.join( let source = path.join(
config.repoPath, config.repoPath,
"packages", 'packages',
"create-freesewing-pattern", 'create-freesewing-pattern',
"template", 'template',
"default", 'default',
"example" 'example'
); )
let dest = path.join(config.repoPath, "packages", pkg, "example"); let dest = path.join(config.repoPath, 'packages', pkg, 'example')
fse.ensureDirSync(path.join(dest, "src")); fse.ensureDirSync(path.join(dest, 'src'))
fse.ensureDirSync(path.join(dest, "public")); fse.ensureDirSync(path.join(dest, 'public'))
// Copy files // Copy files
for (let file of [".babelrc", ".env"]) for (let file of ['.babelrc', '.env'])
fs.copyFileSync(path.join(source, file), path.join(dest, file)); fs.copyFileSync(path.join(source, file), path.join(dest, file))
for (let file of ["index.js", "serviceWorker.js"]) for (let file of ['index.js', 'serviceWorker.js'])
fs.copyFileSync( fs.copyFileSync(path.join(source, 'src', file), path.join(dest, 'src', file))
path.join(source, "src", file),
path.join(dest, "src", file)
);
fs.copyFileSync( fs.copyFileSync(
path.join(source, "public", "favicon.ico"), path.join(source, 'public', 'favicon.ico'),
path.join(dest, "public", "favicon.ico") path.join(dest, 'public', 'favicon.ico')
); )
// Write templates // Write templates
let replace = { let replace = {
name: pkg, name: pkg,
author: "freesewing", author: 'freesewing',
yarn: true, yarn: true,
language: "en" language: 'en'
};
for (let file of ["package.json", "README.md"]) {
let template = handlebars.compile(
fs.readFileSync(path.join(source, file), "utf-8")
);
fs.writeFileSync(path.join(dest, file), template(replace));
} }
for (let file of ["index.html", "manifest.json"]) { for (let file of ['package.json', 'README.md']) {
let template = handlebars.compile( let template = handlebars.compile(fs.readFileSync(path.join(source, file), 'utf-8'))
fs.readFileSync(path.join(source, "public", file), "utf-8") fs.writeFileSync(path.join(dest, file), template(replace))
);
fs.writeFileSync(path.join(dest, "public", file), template(replace));
} }
let template = handlebars.compile( for (let file of ['index.html', 'manifest.json']) {
fs.readFileSync(path.join(source, "src", "App.js"), "utf-8") let template = handlebars.compile(fs.readFileSync(path.join(source, 'public', file), 'utf-8'))
); fs.writeFileSync(path.join(dest, 'public', file), template(replace))
fs.writeFileSync(path.join(dest, "src", "App.js"), template(replace)); }
let template = handlebars.compile(fs.readFileSync(path.join(source, 'src', 'App.js'), 'utf-8'))
fs.writeFileSync(path.join(dest, 'src', 'App.js'), template(replace))
} }
/** /**
@ -399,28 +431,25 @@ function configurePatternExample(pkg, config) {
*/ */
function reconfigure(pkgs, config) { function reconfigure(pkgs, config) {
for (let pkg of pkgs) { for (let pkg of pkgs) {
console.log(chalk.blueBright(`Reconfiguring ${pkg}`)); console.log(chalk.blueBright(`Reconfiguring ${pkg}`))
let pkgConfig = packageConfig(pkg, config); let pkgConfig = packageConfig(pkg, config)
fs.writeFileSync( fs.writeFileSync(
path.join(config.repoPath, "packages", pkg, "package.json"), path.join(config.repoPath, 'packages', pkg, 'package.json'),
JSON.stringify(pkgConfig, null, 2) + "\n" JSON.stringify(pkgConfig, null, 2) + '\n'
); )
if (config.exceptions.customRollup.indexOf(pkg) === -1) { if (config.exceptions.customRollup.indexOf(pkg) === -1) {
fs.writeFileSync( fs.writeFileSync(
path.join(config.repoPath, "packages", pkg, "rollup.config.js"), path.join(config.repoPath, 'packages', pkg, 'rollup.config.js'),
config.templates.rollup config.templates.rollup
); )
} }
fs.writeFileSync(path.join(config.repoPath, 'packages', pkg, 'README.md'), readme(pkg, config))
fs.writeFileSync( fs.writeFileSync(
path.join(config.repoPath, "packages", pkg, "README.md"), path.join(config.repoPath, 'packages', pkg, 'CHANGELOG.md'),
readme(pkg, config)
);
fs.writeFileSync(
path.join(config.repoPath, "packages", pkg, "CHANGELOG.md"),
changelog(pkg, config) changelog(pkg, config)
); )
if (packageType(pkg, config) === "pattern") if (packageType(pkg, config) === 'pattern') configurePatternExample(pkg, config)
configurePatternExample(pkg, config);
} }
console.log(chalk.yellowBright.bold("All done.")); fs.writeFileSync(path.join(config.repoPath, 'CHANGELOG.md'), changelog('global', config))
console.log(chalk.yellowBright.bold('All done.'))
} }