diff --git a/package.json b/package.json index f3972c23b5..520f7b3677 100644 --- a/package.json +++ b/package.json @@ -18,18 +18,21 @@ "clean:css:shim:ts": "rimraf **/*.css.shim.ts", "clean:scss:shim:ts": "rimraf **/*.scss.shim.ts", "clean:prod": "npm run clean:ngc && npm run clean:json && npm run clean:css && npm run clean:css:ts && npm run clean:scss:ts && npm run clean:css:shim:ts && npm run clean:scss:shim:ts && npm run clean:dist", - "clean": "npm run clean:log && npm run clean:dist && npm run clean:prod && npm run clean:node", + "clean": "npm run clean:log && npm run clean:prod && npm run clean:node", "sass": "node-sass src -o src --include-path node_modules --output-style compressed -q", "sass:watch": "node-sass -w src -o src --include-path node_modules --output-style compressed -q", + "rollup": "rollup -c rollup-server.js && rollup -c rollup-client.js", "prebuild": "npm run clean:dist && npm run sass", "build": "webpack --progress", "build:prod": "webpack --config webpack.prod.config.ts", - "build:prod:ngc": "npm run clean:prod && npm run sass && npm run ngc && npm run clean:dist && npm run build:prod", - "build:prod:ngc:json": "npm run clean:prod && npm run sass && npm run ngc && npm run clean:dist && npm run build:prod:json", + "build:prod:rollup": "npm run build:prod && npm run rollup", + "build:prod:ngc": "npm run clean:prod && npm run sass && npm run ngc && npm run build:prod:rollup", + "build:prod:ngc:json": "npm run clean:prod && npm run sass && npm run ngc && npm run build:prod:json:rollup", "build:prod:json": "webpack --config webpack.prod.config.ts --json | webpack-bundle-size-analyzer", + "build:prod:json:rollup": "npm run build:prod:json && npm run rollup", "ngc": "ngc -p tsconfig.aot.json", "prestart": "npm run build:prod:ngc:json", - "server": "node dist/server/index.js", + "server": "node dist/server/build.js", "server:dev": "nodemon --debug dist/server/index.js", "start": "npm run server", "start:dev": "npm run clean:prod && npm run build && npm run server", @@ -44,24 +47,25 @@ "debug:start": "npm run build && npm run debug:server", "debug:build": "node-nightly --inspect --debug-brk node_modules/webpack/bin/webpack.js", "debug:build:prod": "node-nightly --inspect --debug-brk node_modules/webpack/bin/webpack.js --config webpack.prod.config.ts", + "docs": "typedoc --options typedoc.json ./src", "lint": "tslint \"src/**/*.ts\" || true", - "global": "npm install -g angular-cli nodemon npm-check-updates rimraf ts-node typedoc typescript webpack webpack-bundle-size-analyzer marked node-gyp" + "global": "npm install -g angular-cli nodemon npm-check-updates rimraf ts-node typedoc typescript webpack webpack-bundle-size-analyzer rollup marked node-gyp" }, "dependencies": { - "@angular/common": "2.2.4", - "@angular/compiler": "2.2.4", - "@angular/compiler-cli": "2.2.4", - "@angular/core": "2.2.4", - "@angular/forms": "2.2.4", - "@angular/http": "2.2.4", - "@angular/platform-browser": "2.2.4", - "@angular/platform-browser-dynamic": "2.2.4", - "@angular/platform-server": "2.2.4", - "@angular/router": "3.2.4", - "@angular/upgrade": "2.2.4", + "@angular/common": "2.2.3", + "@angular/compiler": "2.2.3", + "@angular/compiler-cli": "2.2.3", + "@angular/core": "2.2.3", + "@angular/forms": "2.2.3", + "@angular/http": "2.2.3", + "@angular/platform-browser": "2.2.3", + "@angular/platform-browser-dynamic": "2.2.3", + "@angular/platform-server": "2.2.3", + "@angular/router": "3.2.3", + "@angular/upgrade": "2.2.3", "@angularclass/bootloader": "1.0.1", "@angularclass/idle-preload": "1.0.4", - "@ng-bootstrap/ng-bootstrap": "1.0.0-alpha.14", + "@ng-bootstrap/ng-bootstrap": "1.0.0-alpha.15", "@ngrx/core": "^1.2.0", "@ngrx/effects": "^2.0.0", "@ngrx/router-store": "^1.2.5", @@ -86,7 +90,7 @@ "zone.js": "0.6.26" }, "devDependencies": { - "@ngtools/webpack": "1.1.7", + "@ngtools/webpack": "1.1.9", "@types/body-parser": "0.0.33", "@types/compression": "0.0.33", "@types/cookie-parser": "1.3.30", @@ -96,26 +100,31 @@ "@types/memory-cache": "0.0.29", "@types/mime": "0.0.29", "@types/morgan": "1.7.32", - "@types/node": "6.0.51", + "@types/node": "6.0.52", "@types/serve-static": "1.7.31", "@types/webfontloader": "1.6.27", "angular2-template-loader": "0.6.0", - "autoprefixer": "6.5.3", + "autoprefixer": "6.5.4", "awesome-typescript-loader": "2.2.4", - "codelyzer": "2.0.0-beta.1", + "codelyzer": "2.0.0-beta.3", "concurrently": "3.1.0", "cookie-parser": "1.4.3", "copy-webpack-plugin": "4.0.1", - "imports-loader": "0.6.5", + "imports-loader": "0.7.0", "json-loader": "0.5.4", - "node-sass": "3.13.0", + "node-sass": "4.0.0", "nodemon": "1.11.0", "raw-loader": "0.5.1", "reflect-metadata": "0.1.8", "rimraf": "2.5.4", + "rollup": "0.37.0", + "rollup-plugin-commonjs": "6.0.0", + "rollup-plugin-node-globals": "1.1.0", + "rollup-plugin-node-resolve": "2.0.0", + "rollup-plugin-uglify": "1.0.1", "string-replace-loader": "1.0.5", "ts-helpers": "1.1.2", - "ts-node": "1.7.0", + "ts-node": "1.7.2", "tslint": "4.0.2", "tslint-loader": "3.3.0", "typedoc": "0.5.1", @@ -123,8 +132,8 @@ "v8-lazy-parse-webpack-plugin": "0.3.0", "webpack": "2.1.0-beta.27", "webpack-bundle-analyzer": "1.4.1", - "webpack-dev-middleware": "1.8.4", + "webpack-dev-middleware": "1.9.0", "webpack-dev-server": "2.1.0-beta.11", - "webpack-merge": "1.0.2" + "webpack-merge": "1.1.1" } } diff --git a/rollup-client.js b/rollup-client.js new file mode 100644 index 0000000000..1e50d256aa --- /dev/null +++ b/rollup-client.js @@ -0,0 +1,18 @@ +import rollup from 'rollup' +import nodeResolve from 'rollup-plugin-node-resolve' +import commonjs from 'rollup-plugin-commonjs'; +import uglify from 'rollup-plugin-uglify' + +export default { + entry: 'dist/client/main.bundle.js', + dest: 'dist/client/build.js', + sourceMap: false, + format: 'iife', + plugins: [ + nodeResolve({jsnext: true, module: true}), + commonjs({ + include: 'node_modules/rxjs/**', + }), + uglify() + ] +} diff --git a/rollup-server.js b/rollup-server.js new file mode 100644 index 0000000000..a7e1ae3ce8 --- /dev/null +++ b/rollup-server.js @@ -0,0 +1,18 @@ +import rollup from 'rollup' +import nodeResolve from 'rollup-plugin-node-resolve' +import commonjs from 'rollup-plugin-commonjs'; +import uglify from 'rollup-plugin-uglify' + +export default { + entry: 'dist/server/index.js', + dest: 'dist/server/build.js', + sourceMap: false, + format: 'iife', + plugins: [ + nodeResolve({jsnext: true, module: true}), + commonjs({ + include: 'node_modules/rxjs/**', + }), + uglify() + ] +} diff --git a/src/index-aot.html b/src/index-aot.html new file mode 100644 index 0000000000..58d8ac39b3 --- /dev/null +++ b/src/index-aot.html @@ -0,0 +1,20 @@ + + + +
+ +