chore(pattern-info): Migrated to esbuild & removed legacy devenv
This commit is contained in:
parent
5fdcc7ae89
commit
ad4e168964
4 changed files with 49 additions and 38 deletions
43
packages/pattern-info/build.js
Normal file
43
packages/pattern-info/build.js
Normal file
|
@ -0,0 +1,43 @@
|
||||||
|
/* 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'],
|
||||||
|
external: ["@freesewing"],
|
||||||
|
metafile: process.env.VERBOSE ? true : false,
|
||||||
|
minify: process.env.NO_MINIFY ? false : true,
|
||||||
|
sourcemap: true,
|
||||||
|
}
|
||||||
|
|
||||||
|
// Different formats
|
||||||
|
const formats = {
|
||||||
|
cjs: "dist/index.js",
|
||||||
|
esm: "dist/index.mjs",
|
||||||
|
}
|
||||||
|
|
||||||
|
// Let esbuild generate different formats
|
||||||
|
let result
|
||||||
|
(async () => {
|
||||||
|
for (const [format, outfile] of Object.entries(formats)) {
|
||||||
|
result = await esbuild
|
||||||
|
.build({ ...options, outfile, format })
|
||||||
|
.catch(() => process.exit(1))
|
||||||
|
}
|
||||||
|
|
||||||
|
if (process.env.VERBOSE) {
|
||||||
|
const info = await esbuild.analyzeMetafile(result.metafile)
|
||||||
|
console.log(info)
|
||||||
|
}
|
||||||
|
})()
|
|
@ -26,13 +26,12 @@
|
||||||
"module": "dist/index.mjs",
|
"module": "dist/index.mjs",
|
||||||
"scripts": {
|
"scripts": {
|
||||||
"clean": "rimraf dist",
|
"clean": "rimraf dist",
|
||||||
"build": "rollup -c",
|
"build": "node build.js",
|
||||||
|
"mbuild": "NO_MINIFY=1 node build.js",
|
||||||
|
"vbuild": "VERBOSE=1 node build.js",
|
||||||
"test": "echo \"pattern-info: No tests configured. Perhaps you'd like to do this?\" && exit 0",
|
"test": "echo \"pattern-info: No tests configured. Perhaps you'd like to do this?\" && exit 0",
|
||||||
"pubtest": "npm publish --registry http://localhost:6662",
|
|
||||||
"pubforce": "npm publish",
|
|
||||||
"symlink": "mkdir -p ./node_modules/@freesewing && cd ./node_modules/@freesewing && ln -s -f ../../../* . && cd -",
|
"symlink": "mkdir -p ./node_modules/@freesewing && cd ./node_modules/@freesewing && ln -s -f ../../../* . && cd -",
|
||||||
"start": "rollup -c -w",
|
"cibuild_step2": "node build.js",
|
||||||
"cibuild_step2": "node src/prebuild.js && rollup -c",
|
|
||||||
"prebuild": "node src/prebuild.js"
|
"prebuild": "node src/prebuild.js"
|
||||||
},
|
},
|
||||||
"peerDependencies": {},
|
"peerDependencies": {},
|
||||||
|
@ -48,10 +47,7 @@
|
||||||
"tag": "latest"
|
"tag": "latest"
|
||||||
},
|
},
|
||||||
"engines": {
|
"engines": {
|
||||||
"node": ">=12.0.0",
|
"node": ">=14.0.0",
|
||||||
"npm": ">=6"
|
"npm": ">=6"
|
||||||
},
|
|
||||||
"rollup": {
|
|
||||||
"exports": "named"
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,29 +0,0 @@
|
||||||
import resolve from '@rollup/plugin-node-resolve'
|
|
||||||
import commonjs from '@rollup/plugin-commonjs'
|
|
||||||
import json from '@rollup/plugin-json'
|
|
||||||
import peerDepsExternal from 'rollup-plugin-peer-deps-external'
|
|
||||||
import { name, version, description, author, license, main, module, rollup } from './package.json'
|
|
||||||
|
|
||||||
const banner = `/**\n * ${name} | v${version}\n * ${description}\n * (c) ${new Date().getFullYear()} ${author}\n * @license ${license}\n */`
|
|
||||||
const output = [
|
|
||||||
{
|
|
||||||
banner,
|
|
||||||
file: main,
|
|
||||||
format: 'cjs',
|
|
||||||
sourcemap: true,
|
|
||||||
exports: rollup.exports,
|
|
||||||
},
|
|
||||||
]
|
|
||||||
if (typeof module !== 'undefined')
|
|
||||||
output.push({
|
|
||||||
banner,
|
|
||||||
file: module,
|
|
||||||
format: 'es',
|
|
||||||
sourcemap: true,
|
|
||||||
})
|
|
||||||
|
|
||||||
export default {
|
|
||||||
input: 'src/index.js',
|
|
||||||
output,
|
|
||||||
plugins: [peerDepsExternal(), resolve({ modulesOnly: true }), commonjs(), json()],
|
|
||||||
}
|
|
|
@ -138,6 +138,7 @@ const optionalMeasurements = {}
|
||||||
const versions = {}
|
const versions = {}
|
||||||
const info = {}
|
const info = {}
|
||||||
for (let pattern of Object.keys(patterns)) {
|
for (let pattern of Object.keys(patterns)) {
|
||||||
|
if (typeof patterns[pattern] === 'undefined') console.log({pattern})
|
||||||
options[pattern] = patternOptions(patterns[pattern])
|
options[pattern] = patternOptions(patterns[pattern])
|
||||||
optionGroups[pattern] = patterns[pattern].optionGroups
|
optionGroups[pattern] = patterns[pattern].optionGroups
|
||||||
parts[pattern] = patternParts(patterns[pattern])
|
parts[pattern] = patternParts(patterns[pattern])
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue