diff --git a/package-lock.json b/package-lock.json index 2c787de9f82..007953d4587 100644 --- a/package-lock.json +++ b/package-lock.json @@ -3990,6 +3990,15 @@ "yallist": "^2.1.2" } }, + "magic-string": { + "version": "0.22.5", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.22.5.tgz", + "integrity": "sha512-oreip9rJZkzvA8Qzk9HFs8fZGF/u7H/gtrE8EN6RjKJ9kh2HlC+yQ2QezifqTZfGyiuAV0dRv5a+y/8gBb1m9w==", + "dev": true, + "requires": { + "vlq": "^0.2.2" + } + }, "map-cache": { "version": "0.2.2", "resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz", @@ -4959,6 +4968,36 @@ "rollup-pluginutils": "^1.5.0" } }, + "rollup-plugin-commonjs": { + "version": "9.1.3", + "resolved": "https://registry.npmjs.org/rollup-plugin-commonjs/-/rollup-plugin-commonjs-9.1.3.tgz", + "integrity": "sha512-g91ZZKZwTW7F7vL6jMee38I8coj/Q9GBdTmXXeFL7ldgC1Ky5WJvHgbKlAiXXTh762qvohhExwUgeQGFh9suGg==", + "dev": true, + "requires": { + "estree-walker": "^0.5.1", + "magic-string": "^0.22.4", + "resolve": "^1.5.0", + "rollup-pluginutils": "^2.0.1" + }, + "dependencies": { + "estree-walker": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-0.5.2.tgz", + "integrity": "sha512-XpCnW/AE10ws/kDAs37cngSkvgIR8aN3G0MS85m7dUpuK2EREo9VJ00uvw6Dg/hXEpfsE1I1TvJOJr+Z+TL+ig==", + "dev": true + }, + "rollup-pluginutils": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/rollup-pluginutils/-/rollup-pluginutils-2.3.0.tgz", + "integrity": "sha512-xB6hsRsjdJdIYWEyYUJy/3ki5g69wrf0luHPGNK3ZSocV6HLNfio59l3dZ3TL4xUwEKgROhFi9jOCt6c5gfUWw==", + "dev": true, + "requires": { + "estree-walker": "^0.5.2", + "micromatch": "^2.3.11" + } + } + } + }, "rollup-plugin-filesize": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/rollup-plugin-filesize/-/rollup-plugin-filesize-4.0.1.tgz", @@ -4974,6 +5013,33 @@ "terser": "^3.8.0" } }, + "rollup-plugin-json": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/rollup-plugin-json/-/rollup-plugin-json-3.0.0.tgz", + "integrity": "sha512-WUAV9/I/uFWvHhyRTqFb+3SIapjISFJS7R1xN/cXxWESrfYo9I8ncHI7AxJHflKRXhBVSv7revBVJh2wvhWh5w==", + "dev": true, + "requires": { + "rollup-pluginutils": "^2.2.0" + }, + "dependencies": { + "estree-walker": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-0.5.2.tgz", + "integrity": "sha512-XpCnW/AE10ws/kDAs37cngSkvgIR8aN3G0MS85m7dUpuK2EREo9VJ00uvw6Dg/hXEpfsE1I1TvJOJr+Z+TL+ig==", + "dev": true + }, + "rollup-pluginutils": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/rollup-pluginutils/-/rollup-pluginutils-2.3.0.tgz", + "integrity": "sha512-xB6hsRsjdJdIYWEyYUJy/3ki5g69wrf0luHPGNK3ZSocV6HLNfio59l3dZ3TL4xUwEKgROhFi9jOCt6c5gfUWw==", + "dev": true, + "requires": { + "estree-walker": "^0.5.2", + "micromatch": "^2.3.11" + } + } + } + }, "rollup-plugin-node-resolve": { "version": "3.3.0", "resolved": "https://registry.npmjs.org/rollup-plugin-node-resolve/-/rollup-plugin-node-resolve-3.3.0.tgz", @@ -5841,6 +5907,12 @@ "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", "integrity": "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw=" }, + "vlq": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/vlq/-/vlq-0.2.3.tgz", + "integrity": "sha512-DRibZL6DsNhIgYQ+wNdWDL2SL3bKPlVrRiBqV5yuMm++op8W4kGFtaQfCs4KEJn0wBZcHVHJ3eoywX8983k1ow==", + "dev": true + }, "websocket-driver": { "version": "0.7.0", "resolved": "https://registry.npmjs.org/websocket-driver/-/websocket-driver-0.7.0.tgz", diff --git a/package.json b/package.json index a716ea475df..32201a5f680 100644 --- a/package.json +++ b/package.json @@ -2,7 +2,8 @@ "name": "freesewing", "version": "0.3.3", "description": "A library for creating made-to-measure sewing patterns", - "main": "src/index.js", + "main": "dist/module.js", + "unpkg": "dist/freesewing.min.js", "scripts": { "precommit": "npm run pretty && lint-staged", "test": "mocha -r ts-node/register tests/*.test.js", @@ -51,7 +52,9 @@ "prettier": "^1.13.7", "rimraf": "^2.6.2", "rollup-plugin-babel": "^3.0.7", + "rollup-plugin-commonjs": "^9.1.3", "rollup-plugin-filesize": "^4.0.1", + "rollup-plugin-json": "^3.0.0", "rollup-plugin-node-resolve": "^3.3.0", "rollup-plugin-terser": "^1.0.1" } diff --git a/rollup.browser.js b/rollup.browser.js index ab0d5c1db14..606cb3abe7f 100644 --- a/rollup.browser.js +++ b/rollup.browser.js @@ -1,21 +1,26 @@ import { terser } from "rollup-plugin-terser"; -import babel from 'rollup-plugin-babel'; -import resolve from 'rollup-plugin-node-resolve'; +import babel from "rollup-plugin-babel"; +import resolve from "rollup-plugin-node-resolve"; +import commonjs from "rollup-plugin-commonjs"; +import json from "rollup-plugin-json"; export default { - input: 'src/index.js' -, output: { - file: 'dist/_bundle.js' - , format: 'iife' - , name: 'freesewing' - } -, plugins: [ + input: "src/index.js", + output: { + file: "dist/freesewing.min.js", + format: "iife", + name: "freesewing", + banner: `/**\n * Freesewing\n * (c) ${new Date().getFullYear()} Joost De Cock\n * @license MIT\n */` + }, + plugins: [ resolve({ browser: true - }) - , babel({ - exclude: 'node_modules/**' - }) - , terser() + }), + json(), + commonjs(), + babel({ + exclude: "node_modules/**" + }), + terser() ] }; diff --git a/rollup.node.js b/rollup.node.js index 185f7f6263d..ddd0e495d68 100644 --- a/rollup.node.js +++ b/rollup.node.js @@ -1,22 +1,22 @@ -import filesize from 'rollup-plugin-filesize' -import { terser } from "rollup-plugin-terser"; -import babel from 'rollup-plugin-babel'; -import resolve from 'rollup-plugin-node-resolve'; +import filesize from "rollup-plugin-filesize"; +import babel from "rollup-plugin-babel"; +import resolve from "rollup-plugin-node-resolve"; +import json from "rollup-plugin-json"; export default { - input: 'src/index.js' -, output: { - file: 'dist/bundle.js' - , format: 'cjs' - } -, plugins: [ + input: "src/index.js", + output: { + file: "dist/module.js", + format: "cjs" + }, + plugins: [ resolve({ browser: false - }) - , babel({ - exclude: 'node_modules/**' - }) - , terser() - , filesize() + }), + json(), + babel({ + exclude: "node_modules/**" + }), + filesize() ] }; diff --git a/src/index.js b/src/index.js index 7deef5b5e7e..4148e115781 100644 --- a/src/index.js +++ b/src/index.js @@ -4,8 +4,10 @@ import path from "./path"; import snippet from "./snippet"; import * as utils from "./utils"; +import { version } from "../package.json"; + export default { - version: require("../package.json").version, + version: version, pattern, point, path,