1
0
Fork 0

sparkles: Added simon

This commit is contained in:
Joost De Cock 2018-12-28 17:45:57 +01:00
parent 0127e773f6
commit 6f07ab7f0a
6 changed files with 258 additions and 101 deletions

View file

@ -23,6 +23,7 @@ Blocks or slopers are basic patterns shapes that you can extend into fully detai
- [aaron](https://github.com/freesewing/aaron) : A tank top or A-shirt - [aaron](https://github.com/freesewing/aaron) : A tank top or A-shirt
- [bruce](https://github.com/freesewing/bruce) : Boxer briefs - [bruce](https://github.com/freesewing/bruce) : Boxer briefs
- [hugo](https://github.com/freesewing/hugo) : A hooded sweatshirt with raglan sleeves - [hugo](https://github.com/freesewing/hugo) : A hooded sweatshirt with raglan sleeves
- [simon](https://github.com/freesewing/simon) : A versatile button-down shirt
### Womenswear ### Womenswear

View file

@ -697,125 +697,82 @@
} }
}, },
"@freesewing/aaron": { "@freesewing/aaron": {
"version": "0.7.1", "version": "0.10.1",
"resolved": "https://registry.npmjs.org/@freesewing/aaron/-/aaron-0.7.1.tgz", "resolved": "https://registry.npmjs.org/@freesewing/aaron/-/aaron-0.10.1.tgz",
"integrity": "sha512-X7OM9XI000J0EP6qJCzUQZIYJ0AeXbgbWEtFT6luVN0aYxGu2Lrc7YujF9b2E30RaNbC19NPHgXyPYS85JEnAA==", "integrity": "sha512-pexeVYlJMINsH0tr0b6jbY6DbVWC0VnrKp3c76p8BHK46c6dye/EvNiw+MAOe7pyRhX18tBVKs5nHVZ/KY/VsQ==",
"requires": { "requires": {
"@freesewing/brian": "^0.19" "@freesewing/brian": "^0.22.1"
},
"dependencies": {
"@freesewing/brian": {
"version": "0.19.0",
"resolved": "https://registry.npmjs.org/@freesewing/brian/-/brian-0.19.0.tgz",
"integrity": "sha512-Acl5RsIgKXtp/jw5gwTLo0ZM8OSi0ScKuvZiw66l4SN5meZwp9+VZ9ytnR+lbPUkpUKYhdyW3i9khvSMBkzALg==",
"requires": {
"@freesewing/plugin-bundle": "0.5.1",
"freesewing": "^0.23.2"
}
},
"freesewing": {
"version": "0.23.2",
"resolved": "https://registry.npmjs.org/freesewing/-/freesewing-0.23.2.tgz",
"integrity": "sha512-6EWJnr/X6lsyCkN4NJK1KAP6TTI4YF7NIaAP0eATOebAU87FENqBaHLH8x+PoY/0BcekprGIen/hhQelUOLc5g==",
"requires": {
"bezier-js": "^2.2.15",
"bin-pack": "1.0.2"
}
}
} }
}, },
"@freesewing/brian": { "@freesewing/brian": {
"version": "0.18.1", "version": "0.22.1",
"resolved": "https://registry.npmjs.org/@freesewing/brian/-/brian-0.18.1.tgz", "resolved": "https://registry.npmjs.org/@freesewing/brian/-/brian-0.22.1.tgz",
"integrity": "sha512-9zFz9uhYkoUo4RJY7/iIjA8zd5WlfDZ7RVRLykqFJXuxTUeobd1g2ZQ/5nHumjvXYBcN7VWUqzFG+zrTdX8WdQ==", "integrity": "sha512-sud2S0mJExsqQT0raJeWnWSAHa4bSTYp9BHBivSuh5RjtgXMtFBnhOvZLBgAbulHeKt4P3UI8jSTLWZdRIWkzQ==",
"requires": { "requires": {
"@freesewing/plugin-bundle": "0.5.1", "@freesewing/plugin-bundle": "0.7.1",
"freesewing": "^0.23.1" "freesewing": "^0.26.1"
} }
}, },
"@freesewing/bruce": { "@freesewing/bruce": {
"version": "0.4.0", "version": "0.5.1",
"resolved": "https://registry.npmjs.org/@freesewing/bruce/-/bruce-0.4.0.tgz", "resolved": "https://registry.npmjs.org/@freesewing/bruce/-/bruce-0.5.1.tgz",
"integrity": "sha512-Wy4ngZyrHhvMU9PiFxcWk5b36voZHtuGWGXv3yzQVDVO31BQmAq5Wt+zhDL6t3bjdMA/BBBQAgS4Mb3ybnXDfA==", "integrity": "sha512-1LAwRs9WM66qV3hbfwIP44a1JFh7ztF/1oOEo6mEop7JhPjPePBofC9iVwIjcUBkSbK31zuHtfZ40hVWBaR/Vg==",
"requires": { "requires": {
"@freesewing/plugin-bundle": "^0.5.1", "@freesewing/plugin-bundle": "^0.7.1",
"freesewing": "^0.23.2" "freesewing": "^0.26.1"
},
"dependencies": {
"freesewing": {
"version": "0.23.2",
"resolved": "https://registry.npmjs.org/freesewing/-/freesewing-0.23.2.tgz",
"integrity": "sha512-6EWJnr/X6lsyCkN4NJK1KAP6TTI4YF7NIaAP0eATOebAU87FENqBaHLH8x+PoY/0BcekprGIen/hhQelUOLc5g==",
"requires": {
"bezier-js": "^2.2.15",
"bin-pack": "1.0.2"
}
}
} }
}, },
"@freesewing/cathrin": { "@freesewing/cathrin": {
"version": "0.3.0", "version": "0.4.1",
"resolved": "https://registry.npmjs.org/@freesewing/cathrin/-/cathrin-0.3.0.tgz", "resolved": "https://registry.npmjs.org/@freesewing/cathrin/-/cathrin-0.4.1.tgz",
"integrity": "sha512-4Lc4jw1m5kkkYNPEEiLzcPtANJbzt3XfLT7mAijyENsCyJhNziP8/YOdImQSOVJbTxerkfBi7R8/eFTfjwd83g==", "integrity": "sha512-5VaK7/Vf9bEOq2gA8kqzaNAO+N36v4NZWbzXKmh+9pr/NqchGRgijg6bFrorha2MhQqr/gwx39LCuf2dFfoy+Q==",
"requires": { "requires": {
"@freesewing/plugin-bundle": "^0.5.1", "@freesewing/plugin-bundle": "^0.7.1",
"freesewing": "^0.23.2" "freesewing": "^0.26.1"
},
"dependencies": {
"freesewing": {
"version": "0.23.2",
"resolved": "https://registry.npmjs.org/freesewing/-/freesewing-0.23.2.tgz",
"integrity": "sha512-6EWJnr/X6lsyCkN4NJK1KAP6TTI4YF7NIaAP0eATOebAU87FENqBaHLH8x+PoY/0BcekprGIen/hhQelUOLc5g==",
"requires": {
"bezier-js": "^2.2.15",
"bin-pack": "1.0.2"
}
}
} }
}, },
"@freesewing/hugo": { "@freesewing/hugo": {
"version": "0.2.2", "version": "0.4.1",
"resolved": "https://registry.npmjs.org/@freesewing/hugo/-/hugo-0.2.2.tgz", "resolved": "https://registry.npmjs.org/@freesewing/hugo/-/hugo-0.4.1.tgz",
"integrity": "sha512-XIJFZOaQexdsVsG03WInogHUBhUK+bBJglT7rUyTOv56uxTzR0+EiD/bxDpz0EWB0QEeCc6a9T+Urdo7Ded4mA==", "integrity": "sha512-dJ8SGClO8JQXr1c8zoy4oqXwuwUa+tQRQANqs0Pc/bCiZkozI5Z/Y3QbJ9H3EY4gTbcTJgnsHh9z98R9MXdkfA==",
"requires": { "requires": {
"@freesewing/brian": "^0.19", "@freesewing/brian": "^0.22.1",
"@freesewing/plugin-bundle": "^0.5.1", "@freesewing/plugin-bundle": "^0.7.1",
"freesewing": "^0.23.2" "freesewing": "^0.26.1"
},
"dependencies": {
"@freesewing/brian": {
"version": "0.19.0",
"resolved": "https://registry.npmjs.org/@freesewing/brian/-/brian-0.19.0.tgz",
"integrity": "sha512-Acl5RsIgKXtp/jw5gwTLo0ZM8OSi0ScKuvZiw66l4SN5meZwp9+VZ9ytnR+lbPUkpUKYhdyW3i9khvSMBkzALg==",
"requires": {
"@freesewing/plugin-bundle": "0.5.1",
"freesewing": "^0.23.2"
}
},
"freesewing": {
"version": "0.23.3",
"resolved": "https://registry.npmjs.org/freesewing/-/freesewing-0.23.3.tgz",
"integrity": "sha512-u3Cq2N8dAnuLFftDsPg5tmKaQQeUo0EY545/caB0cdZ0+nyzMBzJU+7oHzZSM3sSdnTlTNmKHiYHr88M1txsGw==",
"requires": {
"bezier-js": "^2.2.15",
"bin-pack": "1.0.2"
}
}
} }
}, },
"@freesewing/plugin-banner": {
"version": "0.2.0",
"resolved": "https://registry.npmjs.org/@freesewing/plugin-banner/-/plugin-banner-0.2.0.tgz",
"integrity": "sha512-URf6rpXtq9woxu8/NRlTsCDU/CxAY2wm92lBqVkqvMIzQRx1BDPnowXe/F5QnT6hfh/HIKUaAyA9AYlyia8nTA=="
},
"@freesewing/plugin-bundle": { "@freesewing/plugin-bundle": {
"version": "0.5.1", "version": "0.7.1",
"resolved": "https://registry.npmjs.org/@freesewing/plugin-bundle/-/plugin-bundle-0.5.1.tgz", "resolved": "https://registry.npmjs.org/@freesewing/plugin-bundle/-/plugin-bundle-0.7.1.tgz",
"integrity": "sha512-43dF2OkLE6ZxFwK5aLElX/6ejQl4tgLhMFlYO7igqLRjaEufC3Q9mAIR+AyuzyUzDkDdgGdefqTdmOjTdO4PTg==", "integrity": "sha512-XrcZzQFbvWNtulJxSgYIw/ZXDq6bCKasO/COUoIs1LEmYkU/igd/lCfW4TN8WZRrtQronKpDIbePYiPmbuFjyQ==",
"requires": { "requires": {
"@freesewing/plugin-cutonfold": "0.10.2", "@freesewing/plugin-cutonfold": "0.10.2",
"@freesewing/plugin-dimension": "0.7.3", "@freesewing/plugin-dimension": "0.7.3",
"@freesewing/plugin-grainline": "0.2.2", "@freesewing/plugin-grainline": "0.2.2",
"@freesewing/plugin-logo": "0.5.2", "@freesewing/plugin-logo": "0.5.2",
"@freesewing/plugin-round": "0.2.0",
"@freesewing/plugin-scalebox": "0.3.1", "@freesewing/plugin-scalebox": "0.3.1",
"@freesewing/plugin-title": "0.9.1" "@freesewing/plugin-sprinkle": "0.1.0",
"@freesewing/plugin-title": "0.10.0"
},
"dependencies": {
"@freesewing/plugin-title": {
"version": "0.10.0",
"resolved": "https://registry.npmjs.org/@freesewing/plugin-title/-/plugin-title-0.10.0.tgz",
"integrity": "sha512-UZYge58Cofpgjx7ODhdszTKYRURjVtP2YIkOsUR3/kzicVpAw/wuoFX9n85y9IGG+k9ImIX7/7F4AtqlhNItnQ=="
}
} }
}, },
"@freesewing/plugin-buttons": {
"version": "0.1.0",
"resolved": "https://registry.npmjs.org/@freesewing/plugin-buttons/-/plugin-buttons-0.1.0.tgz",
"integrity": "sha512-X3C4duwnx0CT9Q6zUfPeErlz4A1nJMdTLJ/smhtkfjOK9G81hsKkyRO8JIGb7vHcz9McMD5yq3xbsBxVAvGyLw=="
},
"@freesewing/plugin-cutonfold": { "@freesewing/plugin-cutonfold": {
"version": "0.10.2", "version": "0.10.2",
"resolved": "https://registry.npmjs.org/@freesewing/plugin-cutonfold/-/plugin-cutonfold-0.10.2.tgz", "resolved": "https://registry.npmjs.org/@freesewing/plugin-cutonfold/-/plugin-cutonfold-0.10.2.tgz",
@ -826,6 +783,11 @@
"resolved": "https://registry.npmjs.org/@freesewing/plugin-dimension/-/plugin-dimension-0.7.3.tgz", "resolved": "https://registry.npmjs.org/@freesewing/plugin-dimension/-/plugin-dimension-0.7.3.tgz",
"integrity": "sha512-F0x+zARVNd2l3IX/sK0UmH2+Y/Mw2rKwZD8eLKWBfq0zCaC3WGHmd4TzlnE0oxQpiDejAYbsliFGm0vLPQyVMg==" "integrity": "sha512-F0x+zARVNd2l3IX/sK0UmH2+Y/Mw2rKwZD8eLKWBfq0zCaC3WGHmd4TzlnE0oxQpiDejAYbsliFGm0vLPQyVMg=="
}, },
"@freesewing/plugin-flip": {
"version": "0.1.1",
"resolved": "https://registry.npmjs.org/@freesewing/plugin-flip/-/plugin-flip-0.1.1.tgz",
"integrity": "sha512-0LmoacN7SYQOiAI/D5PG/HQP2mAZaXVgET9+n7wRNCMLLwKQOK5OP87K9vppPmSurfly5Pcnhs0sXj/sLNMTxQ=="
},
"@freesewing/plugin-grainline": { "@freesewing/plugin-grainline": {
"version": "0.2.2", "version": "0.2.2",
"resolved": "https://registry.npmjs.org/@freesewing/plugin-grainline/-/plugin-grainline-0.2.2.tgz", "resolved": "https://registry.npmjs.org/@freesewing/plugin-grainline/-/plugin-grainline-0.2.2.tgz",
@ -836,16 +798,97 @@
"resolved": "https://registry.npmjs.org/@freesewing/plugin-logo/-/plugin-logo-0.5.2.tgz", "resolved": "https://registry.npmjs.org/@freesewing/plugin-logo/-/plugin-logo-0.5.2.tgz",
"integrity": "sha512-g+lk/nBYxnzs7hQYUdQ/YDPJCUmUeZcNdk0+xUWoADdoZY95NwrXVxfNz/O2wI9kRCgFpFojgT0dD2HKtkv0/w==" "integrity": "sha512-g+lk/nBYxnzs7hQYUdQ/YDPJCUmUeZcNdk0+xUWoADdoZY95NwrXVxfNz/O2wI9kRCgFpFojgT0dD2HKtkv0/w=="
}, },
"@freesewing/plugin-round": {
"version": "0.2.0",
"resolved": "https://registry.npmjs.org/@freesewing/plugin-round/-/plugin-round-0.2.0.tgz",
"integrity": "sha512-uzAxICxNHQ0rtS4W07mhQQ0qcm4nHWNUzkInK/322k7BCYYb/v8tsC2EW9PISCvHZqUEhlDBR+vXPsusNSRNhA=="
},
"@freesewing/plugin-scalebox": { "@freesewing/plugin-scalebox": {
"version": "0.3.1", "version": "0.3.1",
"resolved": "https://registry.npmjs.org/@freesewing/plugin-scalebox/-/plugin-scalebox-0.3.1.tgz", "resolved": "https://registry.npmjs.org/@freesewing/plugin-scalebox/-/plugin-scalebox-0.3.1.tgz",
"integrity": "sha512-iZwWVQdLGs/cPVZl4ZyBMzNrIUzDRWyhScBg9D62UGuBIPdGFmA1fDEgZ+5hDJ9UuxR65/Ue1emJlOlP2ZwOtw==" "integrity": "sha512-iZwWVQdLGs/cPVZl4ZyBMzNrIUzDRWyhScBg9D62UGuBIPdGFmA1fDEgZ+5hDJ9UuxR65/Ue1emJlOlP2ZwOtw=="
}, },
"@freesewing/plugin-sprinkle": {
"version": "0.1.0",
"resolved": "https://registry.npmjs.org/@freesewing/plugin-sprinkle/-/plugin-sprinkle-0.1.0.tgz",
"integrity": "sha512-u/tm8sgW5h2RlvGPhyCG4KUb1GhTMwuTkOotgdsevZr9fx3aApDUmZhe2mfmJhvKvgQGaa6IOQJ69OJ402oOCg=="
},
"@freesewing/plugin-title": { "@freesewing/plugin-title": {
"version": "0.9.1", "version": "0.9.1",
"resolved": "https://registry.npmjs.org/@freesewing/plugin-title/-/plugin-title-0.9.1.tgz", "resolved": "https://registry.npmjs.org/@freesewing/plugin-title/-/plugin-title-0.9.1.tgz",
"integrity": "sha512-zsWJ3pXb/7bcgQqEEzSht5+jqZzzN80m1myRFKANqdxwi80ts81GWLhMgY9FlSHCVSvtwbLP4DAXz2bPDFoxKQ==" "integrity": "sha512-zsWJ3pXb/7bcgQqEEzSht5+jqZzzN80m1myRFKANqdxwi80ts81GWLhMgY9FlSHCVSvtwbLP4DAXz2bPDFoxKQ=="
}, },
"@freesewing/simon": {
"version": "0.1.0",
"resolved": "https://registry.npmjs.org/@freesewing/simon/-/simon-0.1.0.tgz",
"integrity": "sha512-ksLCLdWNv6A0HoPpcEmgGvwLJ2vv/TsORgWq7Ecsfs+pyc7yaMFuBUBKIc5Tzsg8eEnRE3bd00ayTQRs6xihxA==",
"requires": {
"@freesewing/brian": "^0.22.0",
"@freesewing/plugin-banner": "0.2.0",
"@freesewing/plugin-bundle": "^0.7.1",
"@freesewing/plugin-buttons": "0.1.0",
"@freesewing/plugin-flip": "0.1.1",
"freesewing": "^0.26.1"
},
"dependencies": {
"@freesewing/brian": {
"version": "0.22.0",
"resolved": "https://registry.npmjs.org/@freesewing/brian/-/brian-0.22.0.tgz",
"integrity": "sha512-HUTZop9uFRITLgLks0mShnn2DLonAMc7EcIqg0SpYCxbOAndS9WemIx3mOqg1+OixzqE6TDe+k4HJifmd+K3/Q==",
"requires": {
"@freesewing/plugin-bundle": "0.6.0",
"freesewing": "^0.26.1"
},
"dependencies": {
"@freesewing/plugin-bundle": {
"version": "0.6.0",
"resolved": "https://registry.npmjs.org/@freesewing/plugin-bundle/-/plugin-bundle-0.6.0.tgz",
"integrity": "sha512-gytm7G6CQtgi7wAxXe2ib8vwqak8DpMhR7v++fX418EgR16WBgxTVdglqLVQ8j/qF+W7QRbcS+jomCfU7FLxXQ==",
"requires": {
"@freesewing/plugin-cutonfold": "0.10.2",
"@freesewing/plugin-dimension": "0.7.3",
"@freesewing/plugin-grainline": "0.2.2",
"@freesewing/plugin-logo": "0.5.2",
"@freesewing/plugin-round": "0.2.0",
"@freesewing/plugin-scalebox": "0.3.1",
"@freesewing/plugin-title": "0.9.1"
}
}
}
},
"@freesewing/plugin-bundle": {
"version": "0.7.1",
"resolved": "https://registry.npmjs.org/@freesewing/plugin-bundle/-/plugin-bundle-0.7.1.tgz",
"integrity": "sha512-XrcZzQFbvWNtulJxSgYIw/ZXDq6bCKasO/COUoIs1LEmYkU/igd/lCfW4TN8WZRrtQronKpDIbePYiPmbuFjyQ==",
"requires": {
"@freesewing/plugin-cutonfold": "0.10.2",
"@freesewing/plugin-dimension": "0.7.3",
"@freesewing/plugin-grainline": "0.2.2",
"@freesewing/plugin-logo": "0.5.2",
"@freesewing/plugin-round": "0.2.0",
"@freesewing/plugin-scalebox": "0.3.1",
"@freesewing/plugin-sprinkle": "0.1.0",
"@freesewing/plugin-title": "0.10.0"
},
"dependencies": {
"@freesewing/plugin-title": {
"version": "0.10.0",
"resolved": "https://registry.npmjs.org/@freesewing/plugin-title/-/plugin-title-0.10.0.tgz",
"integrity": "sha512-UZYge58Cofpgjx7ODhdszTKYRURjVtP2YIkOsUR3/kzicVpAw/wuoFX9n85y9IGG+k9ImIX7/7F4AtqlhNItnQ=="
}
}
},
"freesewing": {
"version": "0.26.1",
"resolved": "https://registry.npmjs.org/freesewing/-/freesewing-0.26.1.tgz",
"integrity": "sha512-j6y7JuM+n3vyKwBPkEYOjpXc4QoU0cBcHDQTaWBi/YXITrIvi2zYcbTW6xwGnQcohBjNDb3feqZSgGhf4dB/xw==",
"requires": {
"bezier-js": "^2.2.15",
"bin-pack": "1.0.2"
}
}
}
},
"@samverschueren/stream-to-observable": { "@samverschueren/stream-to-observable": {
"version": "0.3.0", "version": "0.3.0",
"resolved": "https://registry.npmjs.org/@samverschueren/stream-to-observable/-/stream-to-observable-0.3.0.tgz", "resolved": "https://registry.npmjs.org/@samverschueren/stream-to-observable/-/stream-to-observable-0.3.0.tgz",
@ -2606,9 +2649,9 @@
} }
}, },
"freesewing": { "freesewing": {
"version": "0.23.1", "version": "0.26.1",
"resolved": "https://registry.npmjs.org/freesewing/-/freesewing-0.23.1.tgz", "resolved": "https://registry.npmjs.org/freesewing/-/freesewing-0.26.1.tgz",
"integrity": "sha512-LRqcat01NXkxs069liPPMv6CD+wgE781oosDB6sUjR6e/LuFfLRzuY/w+LGORvqrD/mVDjGY2iClfYRov03lww==", "integrity": "sha512-j6y7JuM+n3vyKwBPkEYOjpXc4QoU0cBcHDQTaWBi/YXITrIvi2zYcbTW6xwGnQcohBjNDb3feqZSgGhf4dB/xw==",
"requires": { "requires": {
"bezier-js": "^2.2.15", "bezier-js": "^2.2.15",
"bin-pack": "1.0.2" "bin-pack": "1.0.2"

View file

@ -45,11 +45,12 @@
] ]
}, },
"dependencies": { "dependencies": {
"@freesewing/aaron": "0.7.1", "@freesewing/aaron": "0.10.1",
"@freesewing/brian": "^0.18.1", "@freesewing/brian": "^0.22.1",
"@freesewing/bruce": "0.4.0", "@freesewing/bruce": "0.5.1",
"@freesewing/cathrin": "0.3.0", "@freesewing/cathrin": "0.4.1",
"@freesewing/hugo": "0.2.2" "@freesewing/hugo": "0.4.1",
"@freesewing/simon": "0.1.0"
}, },
"devDependencies": { "devDependencies": {
"@babel/core": "7.0.0-beta.56", "@babel/core": "7.0.0-beta.56",

View file

@ -3,6 +3,7 @@ import Brian from "@freesewing/brian";
import Bruce from "@freesewing/bruce"; import Bruce from "@freesewing/bruce";
import Cathrin from "@freesewing/cathrin"; import Cathrin from "@freesewing/cathrin";
import Hugo from "@freesewing/hugo"; import Hugo from "@freesewing/hugo";
import Simon from "@freesewing/simon";
import info from "./info"; import info from "./info";
const capitalize = string => string.charAt(0).toUpperCase() + string.slice(1); const capitalize = string => string.charAt(0).toUpperCase() + string.slice(1);
@ -13,7 +14,8 @@ export const patterns = {
Brian, Brian,
Bruce, Bruce,
Cathrin, Cathrin,
Hugo Hugo,
Simon
}; };
export const patternList = Object.keys(patterns).map(p => uncapitalize(p)); export const patternList = Object.keys(patterns).map(p => uncapitalize(p));

View file

@ -3,11 +3,13 @@ import brian from "./brian";
import bruce from "./bruce"; import bruce from "./bruce";
import cathrin from "./cathrin"; import cathrin from "./cathrin";
import hugo from "./hugo"; import hugo from "./hugo";
import simon from "./hugo";
export default { export default {
aaron, aaron,
brian, brian,
bruce, bruce,
cathrin, cathrin,
hugo hugo,
simon
}; };

View file

@ -0,0 +1,108 @@
export default {
name: "simon",
design: "Joost De Cock",
code: "Joost De Cock",
department: "menswear",
type: "block",
difficulty: 4,
tags: ["top", "shirt"],
parts: [
"cuff",
"sleevePlacketOverlap",
"sleevePlacketUnderlap",
"collar",
"collarStand",
"frontRight",
"frontLeft",
"buttonPlacket",
"butonholePlacket",
"yoke",
"sleeve"
],
optionGroups: {
fit: [
"chestEase",
"collarEase",
"bicepsEase",
"cuffEase",
"shoulderEase",
"lengthBonus",
"sleeveLengthBonus",
"waistEase",
"hipsEase",
"collarEase",
"yokeDart"
],
style: [
"splitYoke",
"hemStyle",
"hemCurve",
{
closure: [
"extraTopButton",
"buttons",
"buttonPlacketType",
"buttonPlacketStyle",
"buttonholePlacketType",
"buttonholePlacketStyle",
"buttonPlacketWidth",
"buttonholePlacketWidth",
"buttonholePlacketFoldWidth",
"buttonFreeLength"
]
},
{
cuffs: [
"cuffStyle",
"barrelcuffNarrowButton",
"cuffButtonRows",
"sleevePlacketWidth",
"sleevePlacketLength",
"cuffDrape",
"cuffLength"
]
},
{
collar: [
"collarAngle",
"collarStandBend",
"collarStandCurve",
"collarFlare",
"collarStandWidth",
"collarBend",
"collarGap",
"collarRoll"
]
}
],
advanced: [
"acrossBackFactor",
"armholeDepthFactor",
"backNeckCutout",
"frontArmholeDeeper",
"shoulderSlopeReduction",
"sleeveWidthGuarantee",
{
sleevecap: [
"sleevecapEase",
"sleevecapBackFactorX",
"sleevecapBackFactorY",
"sleevecapFrontFactorX",
"sleevecapFrontFactorY",
"sleevecapQ1Offset",
"sleevecapQ2Offset",
"sleevecapQ3Offset",
"sleevecapQ4Offset",
"sleevecapQ1Spread1",
"sleevecapQ1Spread2",
"sleevecapQ2Spread1",
"sleevecapQ2Spread2",
"sleevecapQ3Spread1",
"sleevecapQ3Spread2",
"sleevecapQ4Spread1",
"sleevecapQ4Spread2"
]
}
]
}
};