Skip to content

Commit

Permalink
Use rollup to bundle helmet into a single file
Browse files Browse the repository at this point in the history
  • Loading branch information
realityking committed Aug 25, 2018
1 parent c102586 commit 32df8fd
Show file tree
Hide file tree
Showing 7 changed files with 909 additions and 808 deletions.
42 changes: 2 additions & 40 deletions .babelrc
@@ -1,55 +1,17 @@
{
"env": {
"commonjs": {
"presets": [
["env", {
"targets": {
"browsers": ["last 1 versions", "ie >= 10"]
},
"modules": "commonjs",
"loose": true,
"useBuiltIns": true
}]
],
"plugins": [
"transform-export-extensions",
"transform-class-properties",
"transform-object-rest-spread",
"transform-remove-strict-mode"
]
},
"test": {
"plugins": [
["istanbul", {
"exclude": [
"**/node_modules/**",
"**/packages/**",
"**/test/**",
"**/Test*"
]
}],
"transform-export-extensions",
"transform-class-properties",
"transform-object-rest-spread",
"transform-remove-strict-mode"
]
}
},
"presets": [
["env", {
"targets": {
"browsers": ["last 1 versions", "ie >= 10"]
},
"modules": false,
"loose": true,
"useBuiltIns": true
"loose": true
}],
"react"
],
"plugins": [
"transform-export-extensions",
"transform-class-properties",
"transform-object-rest-spread",
"transform-remove-strict-mode"
"external-helpers"
]
}
1 change: 1 addition & 0 deletions .npmignore
Expand Up @@ -12,3 +12,4 @@ lib/test
node_modules
src
travis.yml
rollup.config.js
46 changes: 27 additions & 19 deletions karma.config.js
Expand Up @@ -22,11 +22,10 @@ module.exports = function(config) {
// frameworks to use
frameworks: ["chai-sinon", "mocha"],

files: ["./test/test.js"],
files: ["./test/*.js"],

preprocessors: {
// add webpack as preprocessor
"./test/test.js": ["webpack", "sourcemap"]
"./test/*.js": ["rollup", "sourcemap"]
},

coverageReporter: {
Expand All @@ -40,23 +39,32 @@ module.exports = function(config) {
]
},

webpack: {
devtool: "inline-source-map",
module: {
rules: [
{
test: /\.js$/,
// exclude this dirs from coverage
exclude: [/node_modules/],
loader: "babel-loader"
}
]
rollupPreprocessor: {
output: {
format: "iife",
name: "helmet",
sourcemap: "inline"
},
watch: true
},

webpackServer: {
noInfo: true
plugins: [
require("rollup-plugin-replace")({
"process.env.NODE_ENV": "'development'"
}),
require("rollup-plugin-babel")({
exclude: "node_modules/**",
plugins: [
[
"istanbul",
{
exclude: ["**/node_modules/**", "**/test/**"]
}
]
]
}),
require("rollup-plugin-node-resolve")({
browser: true
}),
require("rollup-plugin-commonjs")()
]
},

// test results reporter to use
Expand Down
29 changes: 13 additions & 16 deletions package.json
Expand Up @@ -32,26 +32,21 @@
"dependencies": {
"deep-equal": "^1.0.1",
"object-assign": "^4.1.1",
"react-side-effect": "^1.1.0",
"prop-types": "^15.5.4"
"prop-types": "^15.5.4",
"react-side-effect": "^1.1.0"
},
"devDependencies": {
"babel-cli": "^6.24.0",
"babel-core": "^6.24.0",
"babel-eslint": "^7.1.1",
"babel-loader": "^6.4.1",
"babel-plugin-add-module-exports": "^0.2.1",
"babel-plugin-external-helpers": "^6.22.0",
"babel-plugin-istanbul": "^4.0.0",
"babel-plugin-transform-class-properties": "^6.23.0",
"babel-plugin-transform-export-extensions": "^6.22.0",
"babel-plugin-transform-object-rest-spread": "^6.23.0",
"babel-plugin-transform-remove-strict-mode": "^0.0.2",
"babel-preset-env": "^1.2.2",
"babel-preset-react": "^6.23.0",
"chai": "^3.5.0",
"codecov": "^2.1.0",
"conventional-changelog-cli": "^1.3.1",
"cross-env": "^3.2.4",
"cz-conventional-changelog": "^2.0.0",
"eslint": "^3.18.0",
"eslint-config-nfl": "^11.1.0",
Expand All @@ -72,32 +67,34 @@
"karma-mocha": "^1.3.0",
"karma-phantomjs-launcher": "^1.0.4",
"karma-phantomjs-shim": "^1.4.0",
"karma-rollup-preprocessor": "^6.0.1",
"karma-sourcemap-loader": "^0.3.7",
"karma-spec-reporter": "^0.0.30",
"karma-tap-reporter": "^0.0.6",
"karma-webpack": "^2.0.3",
"mocha": "^3.2.0",
"phantomjs-prebuilt": "^2.1.14",
"prettier": "^1.4.4",
"react": "^15.x",
"react-dom": "^15.x",
"rimraf": "^2.6.1",
"rollup": "^0.64.1",
"rollup-plugin-babel": "^3.0.3",
"rollup-plugin-commonjs": "^9.1.5",
"rollup-plugin-node-resolve": "^3.3.0",
"rollup-plugin-replace": "^2.0.0",
"sinon": "^2.1.0",
"sinon-chai": "^2.8.0",
"webpack": "^2.2.1"
"sinon-chai": "^2.8.0"
},
"scripts": {
"changelog": "conventional-changelog -p angular -i CHANGELOG.md -s",
"clean": "rimraf lib coverage es",
"lint": "eslint --ignore-path .gitignore --fix -- .",
"test": "cross-env BABEL_ENV=test karma start karma.config.js",
"test": "karma start karma.config.js",
"posttest": "istanbul report lcov text",
"pretest": "npm run clean && npm run lint",
"commit": "git-cz",
"compile": "npm run compile:commonjs && npm run compile:es",
"compile:commonjs": "cross-env BABEL_ENV=commonjs babel src --out-dir lib",
"compile:es": "cross-env BABEL_ENV=es babel src --out-dir es --ignore test.js",
"prepublish": "npm run compile"
"build": "rollup -c",
"prepublish": "npm run build"
},
"config": {
"commitizen": {
Expand Down
37 changes: 37 additions & 0 deletions rollup.config.js
@@ -0,0 +1,37 @@
import babel from "rollup-plugin-babel";

import pkg from "./package.json";

const baseConfig = {
input: "src/Helmet.js",
plugins: [
babel({
exclude: "node_modules/**"
})
],
external: [
...Object.keys(pkg.dependencies),
...Object.keys(pkg.peerDependencies)
]
};

export default [
Object.assign(
{
output: {
file: pkg.main,
format: "cjs"
}
},
baseConfig
),
Object.assign(
{
output: {
file: "es/Helmet.js",
format: "esm"
}
},
baseConfig
)
];
2 changes: 0 additions & 2 deletions test/test.js

This file was deleted.

0 comments on commit 32df8fd

Please sign in to comment.