Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ignore: Move off of Spellbook for now and add pkg.module. #95

Merged
merged 1 commit into from
May 15, 2017
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions .babelrc
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
{
"presets": ["es3", ["es2015", {"loose": true}]],
"plugins": ["transform-object-assign"]
}
4 changes: 3 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -30,4 +30,6 @@ node_modules/

# Build-related directories
dist/

docs/api/
es5/
test/dist/
1 change: 1 addition & 0 deletions .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@ node_js:
- 'node'
- 'lts/argon'
before_script:

# Check if the current version is equal to the major version for the env.
- 'export IS_INSTALLED="$(npm list video.js | grep "video.js@$VJS")"'

Expand Down
118 changes: 97 additions & 21 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -17,44 +17,120 @@
"url": "https://github.com/brightcove/videojs-errors.git"
},
"scripts": {
"build": "sb-build",
"clean": "sb-clean",
"lint": "sb-lint",
"start": "sb-start",
"test": "sb-test",
"prebuild": "npm run clean",
"build": "npm-run-all -p build:*",
"build:css": "npm-run-all build:css:sass build:css:bannerize",
"build:css:bannerize": "bannerize dist/videojs-errors.css --banner=scripts/banner.ejs",
"build:css:sass": "node-sass --output-style=compressed --linefeed=lf src/plugin.scss -o dist && mv dist/plugin.css dist/videojs-errors.css",
"build:js": "npm-run-all build:js:babel build:js:rollup build:js:bannerize build:js:uglify",
"build:js:babel": "babel src -d es5",
"build:js:bannerize": "bannerize dist/videojs-errors.js --banner=scripts/banner.ejs",
"build:js:rollup": "rollup -c scripts/rollup.config.js",
"build:js:uglify": "uglifyjs dist/videojs-errors.js --comments --mangle --compress -o dist/videojs-errors.min.js",
"build:test": "babel-node --presets es2015 scripts/build-test.js",
"change": "chg add",
"clean": "rimraf dist test/dist es5 && mkdirp dist test/dist es5",
"docs": "npm-run-all docs:*",
"docs:api": "jsdoc src -r -c jsdoc.json -d docs/api",
"docs:toc": "doctoc README.md",
"lint": "vjsstandard",
"start": "babel-node --presets es2015 scripts/server.js",
"pretest": "npm-run-all lint build",
"test": "karma start test/karma.conf.js",
"test:chrome": "npm run pretest && karma start test/karma.conf.js --browsers Chrome",
"test:firefox": "npm run pretest && karma start test/karma.conf.js --browsers Firefox",
"test:ie": "npm run pretest && karma start test/karma.conf.js --browsers IE",
"test:safari": "npm run pretest && karma start test/karma.conf.js --browsers Safari",
"preversion": "npm test",
"postversion": "sb-release",
"prepush": "npm run lint"
"version": "babel-node --presets es2015 scripts/version.js",
"postversion": "babel-node --presets es2015 scripts/postversion.js",
"prepush": "npm run lint",
"prepublish": "npm run build"
},
"dependencies": {
"global": "^4.3.0",
"global": "^4.3.2",
"video.js": "^5.16.0"
},
"devDependencies": {
"babel-cli": "^6.24.1",
"babel-plugin-external-helpers": "^6.22.0",
"babel-plugin-transform-object-assign": "^6.8.0",
"babel-preset-es2015": "^6.14.0",
"babel-preset-es3": "^1.0.1",
"babelify": "^7.3.0",
"bannerize": "^1.0.2",
"bluebird": "^3.2.2",
"browserify": "^12.0.2",
"browserify-shim": "^3.8.12",
"budo": "^8.0.4",
"chg": "^0.3.2",
"doctoc": "^0.15.0",
"glob": "^6.0.3",
"husky": "^0.13.1",
"videojs-spellbook": "^3.1.3"
"jsdoc": "^3.4.0",
"karma": "~1.3.0",
"karma-browserstack-launcher": "^1.2.0",
"karma-chrome-launcher": "^2.1.1",
"karma-detect-browsers": "^2.2.5",
"karma-firefox-launcher": "^1.0.1",
"karma-ie-launcher": "^1.0.0",
"karma-qunit": "^1.2.1",
"karma-safari-launcher": "^1.0.0",
"karma-teamcity-reporter": "^1.0.0",
"lodash": "^4.15.0",
"mkdirp": "^0.5.1",
"node-sass": "^4.5.2",
"npm-run-all": "^1.5.1",
"qunitjs": "^1.21.0",
"rimraf": "^2.5.1",
"rollup": "^0.41.6",
"rollup-plugin-babel": "^2.7.1",
"rollup-plugin-commonjs": "^8.0.2",
"rollup-plugin-node-builtins": "^2.1.2",
"rollup-plugin-node-resolve": "^3.0.0",
"rollup-plugin-replace": "^1.1.1",
"semver": "^5.3.0",
"sinon": "~1.14.0",
"tsmlj": "^1.0.0",
"uglify-js": "^2.6.1",
"videojs-standard": "^6.0.0"
},
"main": "dist/es5/index.js",
"module": "src/js/index.js",
"files": [
"CHANGELOG.md",
"CONTRIBUTING.md",
"README.md",
"dist/browser",
"dist/docs",
"dist/es5",
"dist/lang",
"dist/",
"docs/",
"es5/",
"index.html",
"src/"
"scripts/",
"src/",
"test/"
],
"jsnext:main": "src/js/index.js",
"engines": {
"node": ">=4.4.0"
},
"generator-videojs-plugin": {
"version": "3.2.0"
"version": "2.3.0"
},
"spellbook": {
"ie8": true
"browserify-shim": {
"qunit": "global:QUnit",
"sinon": "global:sinon",
"video.js": "global:videojs"
},
"style": "dist/videojs-bc-analytics.css",
"videojs-plugin": {
"style": "dist/videojs-bc-analytics.css",
"script": "dist/videojs-bc-analytics.min.js"
},
"vjsstandard": {
"ignore": [
"dist",
"docs",
"es5",
"scripts",
"test/dist",
"test/karma.conf.js"
]
}
}
}
6 changes: 6 additions & 0 deletions scripts/banner.ejs
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
/**
* <%- pkg.name %>
* @version <%- pkg.version %>
* @copyright <%- date.getFullYear() %> <%- pkg.author %>
* @license <%- pkg.license %>
*/
19 changes: 19 additions & 0 deletions scripts/build-test.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
import browserify from 'browserify';
import fs from 'fs';
import glob from 'glob';

/* eslint no-console: 0 */

glob('test/**/*.test.js', (err, files) => {
if (err) {
throw err;
}
browserify(files)
.transform('babelify', {
presets: ['es3', ['es2015', {loose: true}]],
plugins: ['transform-object-assign']
})
.transform('browserify-shim', {global: true})
.bundle()
.pipe(fs.createWriteStream('test/dist/bundle.js'));
});
33 changes: 33 additions & 0 deletions scripts/postversion.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
import {exec} from 'child_process';
import fs from 'fs';
import path from 'path';

/* eslint no-console: 0 */

/**
* Determines whether or not the project has the Bower setup by checking for
* the presence of a bower.json file.
*
* @return {Boolean}
*/
const hasBower = () => {
try {
fs.statSync(path.join(__dirname, '../bower.json'));
return true;
} catch (x) {
return false;
}
};

// If the project supports Bower, roll HEAD back one commit to avoid having
// the tagged commit - with `dist/` - in the main history.
if (hasBower()) {
exec('git reset --hard HEAD~1', (err, stdout, stderr) => {
if (err) {
process.stdout.write(err.stack);
process.exit(err.status || 1);
} else {
process.stdout.write(stdout);
}
});
}
48 changes: 48 additions & 0 deletions scripts/rollup.config.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
import babel from 'rollup-plugin-babel';
import builtins from 'rollup-plugin-node-builtins';
import commonjs from 'rollup-plugin-commonjs';
import replace from 'rollup-plugin-replace';
import resolve from 'rollup-plugin-node-resolve';
import path from 'path';

const pkg = require(path.resolve(__dirname, '../package.json'));

export default {
moduleName: 'videojsErrors',
entry: 'src/plugin.js',
dest: 'dist/videojs-errors.js',
format: 'umd',
external: ['video.js'],
globals: {
'video.js': 'videojs'
},
legacy: true,
plugins: [
builtins(),
replace({
delimiters: ['__', '__'],
include: 'src/plugin.js',
VERSION: pkg.version
}),
resolve({
browser: true,
main: true,
jsnext: true
}),
commonjs({
sourceMap: false
}),
babel({
babelrc: false,
exclude: 'node_modules/**',
presets: [
'es3',
['es2015', {
loose: true,
modules: false
}]
],
plugins: ['external-helpers']
})
]
};
Loading