57 lines
1.5 KiB
JavaScript
57 lines
1.5 KiB
JavaScript
![]() |
import freesewing from "freesewing";
|
||
|
import plugins from "@freesewing/plugin-bundle";
|
||
|
import buttons from "@freesewing/plugin-buttons";
|
||
|
import bust from "@freesewing/plugin-bust";
|
||
|
import Bent from "@freesewing/bent";
|
||
|
import Carlton from "@freesewing/carlton";
|
||
|
import config from "../config";
|
||
|
// Parts
|
||
|
import draftFront from "./front";
|
||
|
import draftSide from "./side";
|
||
|
|
||
|
// Create new design
|
||
|
const Carlita = new freesewing.Design(config, [plugins, buttons, bust]);
|
||
|
|
||
|
let fromBent = ["Base", "Front", "Back", "Sleeve", "TopSleeve", "UnderSleeve"];
|
||
|
|
||
|
// Attach draft methods from Bent to prototype
|
||
|
for (let m of fromBent) {
|
||
|
Carlita.prototype["draftBent" + m] = function(part) {
|
||
|
return new Bent(this.settings)["draft" + m](part);
|
||
|
};
|
||
|
}
|
||
|
|
||
|
// Attach draft methods from Carlton to prototype
|
||
|
for (let m of [
|
||
|
"draftBack",
|
||
|
"draftTail",
|
||
|
"draftTopSleeve",
|
||
|
"draftUnderSleeve",
|
||
|
"draftBelt",
|
||
|
"draftCollarStand",
|
||
|
"draftCollar",
|
||
|
"draftCuffFacing",
|
||
|
"draftPocket",
|
||
|
"draftPocketFlap",
|
||
|
"draftPocketLining",
|
||
|
"draftChestPocketWelt",
|
||
|
"draftChestPocketBag",
|
||
|
"draftInnerPocketWelt",
|
||
|
"draftInnerPocketBag",
|
||
|
"draftInnerPocketTab"
|
||
|
]) {
|
||
|
Carlita.prototype[m] = function(part) {
|
||
|
return new Carlton(this.settings)[m](part);
|
||
|
};
|
||
|
}
|
||
|
|
||
|
Carlita.prototype.draftCarltonFront = function(part) {
|
||
|
return new Carlton(this.settings).draftFront(part);
|
||
|
};
|
||
|
|
||
|
// Attach own draft methods to prototype
|
||
|
Carlita.prototype.draftFront = draftFront;
|
||
|
Carlita.prototype.draftSide = draftSide;
|
||
|
|
||
|
export default Carlita;
|