chore(core): Migrated core from rollup to esbuild
This commit is contained in:
parent
87939f331f
commit
ac7b1de00e
17 changed files with 198 additions and 34 deletions
|
@ -14,10 +14,8 @@
|
|||
"main": "dist/index.js",
|
||||
"module": "dist/index.mjs",
|
||||
"scripts": {
|
||||
"watch": "rollup -c -w",
|
||||
"start": "rollup -c -w",
|
||||
"cibuild_step1": "rollup -c",
|
||||
"build": "rollup -c",
|
||||
"cibuild_step1": "node build.js",
|
||||
"build": "node build.js",
|
||||
"testonly": "BABEL_ENV=production ../../node_modules/.bin/_mocha tests/*.test.js --require @babel/register",
|
||||
"publish": "npm run build && npm publish --access public"
|
||||
},
|
||||
|
@ -30,10 +28,7 @@
|
|||
"tag": "latest"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=12.0.0",
|
||||
"node": ">=14.0.0",
|
||||
"npm": ">=6"
|
||||
},
|
||||
"rollup": {
|
||||
"exports": "default"
|
||||
}
|
||||
}
|
||||
|
|
33
packages/core/build.js
Normal file
33
packages/core/build.js
Normal file
|
@ -0,0 +1,33 @@
|
|||
/* This script will build the package with esbuild */
|
||||
const esbuild = require('esbuild')
|
||||
const pkg = require('./package.json')
|
||||
|
||||
// Create banner based on package info
|
||||
const banner = `/**
|
||||
* ${pkg.name} | v${pkg.version}
|
||||
* ${pkg.description}
|
||||
* (c) ${new Date().getFullYear()} ${pkg.author}
|
||||
* @license ${pkg.license}
|
||||
*/`
|
||||
|
||||
// Shared esbuild options
|
||||
const options = {
|
||||
banner: { js: banner },
|
||||
bundle: true,
|
||||
entryPoints: ['src/index.js'],
|
||||
//minify: true,
|
||||
sourcemap: true,
|
||||
}
|
||||
|
||||
// Different formats
|
||||
const formats = {
|
||||
esm: "dist/index.mjs",
|
||||
cjs: "dist/index.js"
|
||||
}
|
||||
|
||||
// Let esbuild generate different formats
|
||||
for (const [format, outfile] of Object.entries(formats)) esbuild
|
||||
.build({ ...options, outfile, format })
|
||||
.catch(() => process.exit(1))
|
||||
|
||||
|
|
@ -29,8 +29,8 @@
|
|||
"module": "dist/index.mjs",
|
||||
"scripts": {
|
||||
"clean": "rimraf dist",
|
||||
"build": "rollup -c",
|
||||
"cibuild_step1": "rollup -c",
|
||||
"build": "node build.js",
|
||||
"cibuild_step1": "node build.js",
|
||||
"test": "BABEL_ENV=production nyc -x node_modules -x tests/fixtures -x bin-pack npx mocha tests/*.test.js",
|
||||
"pubtest": "npm publish --registry http://localhost:6662",
|
||||
"pubforce": "npm publish",
|
||||
|
@ -48,6 +48,7 @@
|
|||
"hooks": "^0.3.2"
|
||||
},
|
||||
"devDependencies": {
|
||||
"esbuild": "^0.14.43",
|
||||
"nyc": "^15.1.0"
|
||||
},
|
||||
"files": [
|
||||
|
|
|
@ -4,23 +4,32 @@ import Point from './point'
|
|||
import Path from './path'
|
||||
import Snippet from './snippet'
|
||||
import * as utils from './utils'
|
||||
import pkg from '../package.json'
|
||||
import { version } from '../package.json'
|
||||
|
||||
export default {
|
||||
version: pkg.version,
|
||||
/*
|
||||
* Named exports will become the default in FreeSewing v3
|
||||
*/
|
||||
export {
|
||||
version,
|
||||
Design,
|
||||
Pattern,
|
||||
Point,
|
||||
Path,
|
||||
Snippet,
|
||||
utils,
|
||||
}
|
||||
// This is a helper for configuration files
|
||||
export const pctBasedOn = utils.pctBasedOn
|
||||
|
||||
/*
|
||||
* Default exports will be removed in FreeSewing v3
|
||||
*/
|
||||
export default {
|
||||
version,
|
||||
Design,
|
||||
Pattern,
|
||||
Point,
|
||||
Path,
|
||||
Snippet,
|
||||
utils,
|
||||
patterns: {},
|
||||
plugins: {},
|
||||
/**
|
||||
* This pctBasedOn() method makes it easy to add the optional
|
||||
* toAbs() and fromAbs() methods to percentage options config
|
||||
*
|
||||
* It was backported from the v3 roadmap into v2.
|
||||
**/
|
||||
pctBasedOn: utils.pctBasedOn,
|
||||
}
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
const expect = require("chai").expect;
|
||||
const Point = require("./dist").Point;
|
||||
const Point = require("../dist/index.js").Point;
|
||||
|
||||
const newAttr = () => new Point(0, 0).attributes;
|
||||
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
let expect = require("chai").expect;
|
||||
let freesewing = require("./dist");
|
||||
let freesewing = require("../dist/index.js");
|
||||
|
||||
it("Design constructor should return pattern constructor", () => {
|
||||
let design = new freesewing.Design({
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
let expect = require("chai").expect;
|
||||
let freesewing = require("./dist");
|
||||
let freesewing = require("../dist/index.js");
|
||||
|
||||
it("Should contain all hooks", () => {
|
||||
let pattern = new freesewing.Pattern();
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
let expect = require("chai").expect;
|
||||
let freesewing = require("./dist");
|
||||
let freesewing = require("../dist/index.js");
|
||||
|
||||
it("Svg constructor should initialize object", () => {
|
||||
let pattern = new freesewing.Pattern();
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
const expect = require("chai").expect;
|
||||
const freesewing = require("./dist");
|
||||
const freesewing = require("../dist/index.js");
|
||||
const round = freesewing.utils.round;
|
||||
|
||||
it("Should offset a line", () => {
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
let expect = require("chai").expect;
|
||||
let freesewing = require("./dist");
|
||||
let freesewing = require("../dist/index.js");
|
||||
|
||||
it("Pattern constructor should initialize object", () => {
|
||||
let pattern = new freesewing.Pattern({
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
const expect = require("chai").expect;
|
||||
const freesewing = require("./dist");
|
||||
const freesewing = require("../dist/index.js");
|
||||
const Point = freesewing.Point;
|
||||
const round = freesewing.utils.round;
|
||||
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
const expect = require("chai").expect;
|
||||
const freesewing = require("./dist");
|
||||
const freesewing = require("../dist/index.js");
|
||||
|
||||
const measurements = { head: 400 }
|
||||
const toAbs = (val, { measurements }) => measurements.head * val
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
let expect = require("chai").expect;
|
||||
let freesewing = require("./dist");
|
||||
let freesewing = require("../dist/index.js");
|
||||
|
||||
it("Should create a snippet", () => {
|
||||
let snip1 = new freesewing.Snippet("test", new freesewing.Point(12, 34));
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
let expect = require("chai").expect;
|
||||
let freesewing = require("./dist");
|
||||
let freesewing = require("../dist/index.js");
|
||||
|
||||
let pattern = new freesewing.Pattern();
|
||||
let store = pattern.store;
|
||||
|
|
|
@ -3,7 +3,7 @@ const render = require("./fixtures/render.js");
|
|||
const expect = require("chai").expect;
|
||||
const chai = require("chai");
|
||||
chai.use(require("chai-string"));
|
||||
const freesewing = require("./dist");
|
||||
const freesewing = require("../dist/index.js");
|
||||
const round = freesewing.utils.round;
|
||||
|
||||
it("Svg constructor should initialize object", () => {
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
const expect = require("chai").expect;
|
||||
const freesewing = require("./dist");
|
||||
const freesewing = require("../dist/index.js");
|
||||
const utils = freesewing.utils;
|
||||
const round = utils.round;
|
||||
|
||||
|
|
126
yarn.lock
126
yarn.lock
|
@ -11243,6 +11243,132 @@ es6-weak-map@^2.0.1:
|
|||
es6-iterator "^2.0.3"
|
||||
es6-symbol "^3.1.1"
|
||||
|
||||
esbuild-android-64@0.14.43:
|
||||
version "0.14.43"
|
||||
resolved "https://registry.yarnpkg.com/esbuild-android-64/-/esbuild-android-64-0.14.43.tgz#59bf3edad6863c27aa92bbb5c1d83a9a5c981495"
|
||||
integrity sha512-kqFXAS72K6cNrB6RiM7YJ5lNvmWRDSlpi7ZuRZ1hu1S3w0zlwcoCxWAyM23LQUyZSs1PbjHgdbbfYAN8IGh6xg==
|
||||
|
||||
esbuild-android-arm64@0.14.43:
|
||||
version "0.14.43"
|
||||
resolved "https://registry.yarnpkg.com/esbuild-android-arm64/-/esbuild-android-arm64-0.14.43.tgz#0258704edf92ce2463af6d2900b844b5423bed63"
|
||||
integrity sha512-bKS2BBFh+7XZY9rpjiHGRNA7LvWYbZWP87pLehggTG7tTaCDvj8qQGOU/OZSjCSKDYbgY7Q+oDw8RlYQ2Jt2BA==
|
||||
|
||||
esbuild-darwin-64@0.14.43:
|
||||
version "0.14.43"
|
||||
resolved "https://registry.yarnpkg.com/esbuild-darwin-64/-/esbuild-darwin-64-0.14.43.tgz#72a47295678d4aa0656979baa8cf6d5c8c92656f"
|
||||
integrity sha512-/3PSilx011ttoieRGkSZ0XV8zjBf2C9enV4ScMMbCT4dpx0mFhMOpFnCHkOK0pWGB8LklykFyHrWk2z6DENVUg==
|
||||
|
||||
esbuild-darwin-arm64@0.14.43:
|
||||
version "0.14.43"
|
||||
resolved "https://registry.yarnpkg.com/esbuild-darwin-arm64/-/esbuild-darwin-arm64-0.14.43.tgz#5f5823170b8d85b888957f0794e186caac447aca"
|
||||
integrity sha512-1HyFUKs8DMCBOvw1Qxpr5Vv/ThNcVIFb5xgXWK3pyT40WPvgYIiRTwJCvNs4l8i5qWF8/CK5bQxJVDjQvtv0Yw==
|
||||
|
||||
esbuild-freebsd-64@0.14.43:
|
||||
version "0.14.43"
|
||||
resolved "https://registry.yarnpkg.com/esbuild-freebsd-64/-/esbuild-freebsd-64-0.14.43.tgz#e4a48b08181053837e6cd9bda19ae0af94d493b0"
|
||||
integrity sha512-FNWc05TPHYgaXjbPZO5/rJKSBslfG6BeMSs8GhwnqAKP56eEhvmzwnIz1QcC9cRVyO+IKqWNfmHFkCa1WJTULA==
|
||||
|
||||
esbuild-freebsd-arm64@0.14.43:
|
||||
version "0.14.43"
|
||||
resolved "https://registry.yarnpkg.com/esbuild-freebsd-arm64/-/esbuild-freebsd-arm64-0.14.43.tgz#386e780d36c1dedf3a1cdab79e0bbacd873274e6"
|
||||
integrity sha512-amrYopclz3VohqisOPR6hA3GOWA3LZC1WDLnp21RhNmoERmJ/vLnOpnrG2P/Zao+/erKTCUqmrCIPVtj58DRoA==
|
||||
|
||||
esbuild-linux-32@0.14.43:
|
||||
version "0.14.43"
|
||||
resolved "https://registry.yarnpkg.com/esbuild-linux-32/-/esbuild-linux-32-0.14.43.tgz#040ed6b9ebf06d73acdf2acce7f1cd0c12fbc6a5"
|
||||
integrity sha512-KoxoEra+9O3AKVvgDFvDkiuddCds6q71owSQEYwjtqRV7RwbPzKxJa6+uyzUulHcyGVq0g15K0oKG5CFBcvYDw==
|
||||
|
||||
esbuild-linux-64@0.14.43:
|
||||
version "0.14.43"
|
||||
resolved "https://registry.yarnpkg.com/esbuild-linux-64/-/esbuild-linux-64-0.14.43.tgz#8abbb7594ab6a008f2aae72d95d8a4fdc59d9000"
|
||||
integrity sha512-EwINwGMyiJMgBby5/SbMqKcUhS5AYAZ2CpEBzSowsJPNBJEdhkCTtEjk757TN/wxgbu3QklqDM6KghY660QCUw==
|
||||
|
||||
esbuild-linux-arm64@0.14.43:
|
||||
version "0.14.43"
|
||||
resolved "https://registry.yarnpkg.com/esbuild-linux-arm64/-/esbuild-linux-arm64-0.14.43.tgz#4e8e9ce77cbf7efec65e79e512b3d2fbd2da398f"
|
||||
integrity sha512-UlSpjMWllAc70zYbHxWuDS3FJytyuR/gHJYBr8BICcTNb/TSOYVBg6U7b3jZ3mILTrgzwJUHwhEwK18FZDouUQ==
|
||||
|
||||
esbuild-linux-arm@0.14.43:
|
||||
version "0.14.43"
|
||||
resolved "https://registry.yarnpkg.com/esbuild-linux-arm/-/esbuild-linux-arm-0.14.43.tgz#9e41ee5e099c0ffdfd150da154330c2c0226cc96"
|
||||
integrity sha512-e6YzQUoDxxtyamuF12eVzzRC7bbEFSZohJ6igQB9tBqnNmIQY3fI6Cns3z2wxtbZ3f2o6idkD2fQnlvs2902Dg==
|
||||
|
||||
esbuild-linux-mips64le@0.14.43:
|
||||
version "0.14.43"
|
||||
resolved "https://registry.yarnpkg.com/esbuild-linux-mips64le/-/esbuild-linux-mips64le-0.14.43.tgz#4b41f465a787f91cc4fe7dffa0dcabf655935a1a"
|
||||
integrity sha512-f+v8cInPEL1/SDP//CfSYzcDNgE4CY3xgDV81DWm3KAPWzhvxARrKxB1Pstf5mB56yAslJDxu7ryBUPX207EZA==
|
||||
|
||||
esbuild-linux-ppc64le@0.14.43:
|
||||
version "0.14.43"
|
||||
resolved "https://registry.yarnpkg.com/esbuild-linux-ppc64le/-/esbuild-linux-ppc64le-0.14.43.tgz#ca15934f5b46728dd9ac05270e783e7feaca9eaf"
|
||||
integrity sha512-5wZYMDGAL/K2pqkdIsW+I4IR41kyfHr/QshJcNpUfK3RjB3VQcPWOaZmc+74rm4ZjVirYrtz+jWw0SgxtxRanA==
|
||||
|
||||
esbuild-linux-riscv64@0.14.43:
|
||||
version "0.14.43"
|
||||
resolved "https://registry.yarnpkg.com/esbuild-linux-riscv64/-/esbuild-linux-riscv64-0.14.43.tgz#70fce2b5a0605a67e58b5a357b0e00be1029836d"
|
||||
integrity sha512-lYcAOUxp85hC7lSjycJUVSmj4/9oEfSyXjb/ua9bNl8afonaduuqtw7hvKMoKuYnVwOCDw4RSfKpcnIRDWq+Bw==
|
||||
|
||||
esbuild-linux-s390x@0.14.43:
|
||||
version "0.14.43"
|
||||
resolved "https://registry.yarnpkg.com/esbuild-linux-s390x/-/esbuild-linux-s390x-0.14.43.tgz#318d03b4f4ccc7fa44ac7562121cf4a4529e477a"
|
||||
integrity sha512-27e43ZhHvhFE4nM7HqtUbMRu37I/4eNSUbb8FGZWszV+uLzMIsHDwLoBiJmw7G9N+hrehNPeQ4F5Ujad0DrUKQ==
|
||||
|
||||
esbuild-netbsd-64@0.14.43:
|
||||
version "0.14.43"
|
||||
resolved "https://registry.yarnpkg.com/esbuild-netbsd-64/-/esbuild-netbsd-64-0.14.43.tgz#86130ce204ef0162a96e863b55851efecc92f423"
|
||||
integrity sha512-2mH4QF6hHBn5zzAfxEI/2eBC0mspVsZ6UVo821LpAJKMvLJPBk3XJO5xwg7paDqSqpl7p6IRrAenW999AEfJhQ==
|
||||
|
||||
esbuild-openbsd-64@0.14.43:
|
||||
version "0.14.43"
|
||||
resolved "https://registry.yarnpkg.com/esbuild-openbsd-64/-/esbuild-openbsd-64-0.14.43.tgz#0229dc2db2ded97b03bb93bba7646b30ffdf5d0d"
|
||||
integrity sha512-ZhQpiZjvqCqO8jKdGp9+8k9E/EHSA+zIWOg+grwZasI9RoblqJ1QiZqqi7jfd6ZrrG1UFBNGe4m0NFxCFbMVbg==
|
||||
|
||||
esbuild-sunos-64@0.14.43:
|
||||
version "0.14.43"
|
||||
resolved "https://registry.yarnpkg.com/esbuild-sunos-64/-/esbuild-sunos-64-0.14.43.tgz#17e316216eb9f1de25d52a9000356ae5b869e736"
|
||||
integrity sha512-DgxSi9DaHReL9gYuul2rrQCAapgnCJkh3LSHPKsY26zytYppG0HgkgVF80zjIlvEsUbGBP/GHQzBtrezj/Zq1Q==
|
||||
|
||||
esbuild-windows-32@0.14.43:
|
||||
version "0.14.43"
|
||||
resolved "https://registry.yarnpkg.com/esbuild-windows-32/-/esbuild-windows-32-0.14.43.tgz#a173757bc6dfd0f2656ff40b64f7f9290745778e"
|
||||
integrity sha512-Ih3+2O5oExiqm0mY6YYE5dR0o8+AspccQ3vIAtRodwFvhuyGLjb0Hbmzun/F3Lw19nuhPMu3sW2fqIJ5xBxByw==
|
||||
|
||||
esbuild-windows-64@0.14.43:
|
||||
version "0.14.43"
|
||||
resolved "https://registry.yarnpkg.com/esbuild-windows-64/-/esbuild-windows-64-0.14.43.tgz#c447b23126aad158c4fe6a394342cafd97926ed1"
|
||||
integrity sha512-8NsuNfI8xwFuJbrCuI+aBqNTYkrWErejFO5aYM+yHqyHuL8mmepLS9EPzAzk8rvfaJrhN0+RvKWAcymViHOKEw==
|
||||
|
||||
esbuild-windows-arm64@0.14.43:
|
||||
version "0.14.43"
|
||||
resolved "https://registry.yarnpkg.com/esbuild-windows-arm64/-/esbuild-windows-arm64-0.14.43.tgz#3caed1b430d394d7a7836407b9d36c4750246e76"
|
||||
integrity sha512-7ZlD7bo++kVRblJEoG+cepljkfP8bfuTPz5fIXzptwnPaFwGS6ahvfoYzY7WCf5v/1nX2X02HDraVItTgbHnKw==
|
||||
|
||||
esbuild@^0.14.43:
|
||||
version "0.14.43"
|
||||
resolved "https://registry.yarnpkg.com/esbuild/-/esbuild-0.14.43.tgz#c227d585c512d3e0f23b88f50b8e16501147f647"
|
||||
integrity sha512-Uf94+kQmy/5jsFwKWiQB4hfo/RkM9Dh7b79p8yqd1tshULdr25G2szLz631NoH3s2ujnKEKVD16RmOxvCNKRFA==
|
||||
optionalDependencies:
|
||||
esbuild-android-64 "0.14.43"
|
||||
esbuild-android-arm64 "0.14.43"
|
||||
esbuild-darwin-64 "0.14.43"
|
||||
esbuild-darwin-arm64 "0.14.43"
|
||||
esbuild-freebsd-64 "0.14.43"
|
||||
esbuild-freebsd-arm64 "0.14.43"
|
||||
esbuild-linux-32 "0.14.43"
|
||||
esbuild-linux-64 "0.14.43"
|
||||
esbuild-linux-arm "0.14.43"
|
||||
esbuild-linux-arm64 "0.14.43"
|
||||
esbuild-linux-mips64le "0.14.43"
|
||||
esbuild-linux-ppc64le "0.14.43"
|
||||
esbuild-linux-riscv64 "0.14.43"
|
||||
esbuild-linux-s390x "0.14.43"
|
||||
esbuild-netbsd-64 "0.14.43"
|
||||
esbuild-openbsd-64 "0.14.43"
|
||||
esbuild-sunos-64 "0.14.43"
|
||||
esbuild-windows-32 "0.14.43"
|
||||
esbuild-windows-64 "0.14.43"
|
||||
esbuild-windows-arm64 "0.14.43"
|
||||
|
||||
escalade@^3.1.1:
|
||||
version "3.1.1"
|
||||
resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.1.1.tgz#d8cfdc7000965c5a0174b4a82eaa5c0552742e40"
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue