diff --git a/generators/app/templates/index.html_vm b/generators/app/templates/index.html_vm index 0b2cd33..7111ba3 100644 --- a/generators/app/templates/index.html_vm +++ b/generators/app/templates/index.html_vm @@ -4,10 +4,20 @@ <% if (answers.pushState) { %><% } %> + + +
Loading...
+ diff --git a/generators/app/templates/js/fw/ext/polyfill.js b/generators/app/templates/js/fw/ext/polyfill.js new file mode 100644 index 0000000..c742bba --- /dev/null +++ b/generators/app/templates/js/fw/ext/polyfill.js @@ -0,0 +1,8 @@ + +if (!Array.prototype.includes) { + require('core-js/fn/array/includes'); +} + +if (typeof Promise === 'undefined') { + require('core-js/fn/promise'); +} diff --git a/generators/app/templates/js/index.js b/generators/app/templates/js/index.js deleted file mode 100644 index 1e0da48..0000000 --- a/generators/app/templates/js/index.js +++ /dev/null @@ -1,18 +0,0 @@ -/** - * index.js launch the application. - * - * @author <%= answers.username %> - * @date <%= answers.date %> - * - */ -require.ensure(['splash-screen/dist/splash.min.css', 'splash-screen'], function(require) { - - require('splash-screen/dist/splash.min.css').use(); - require('splash-screen').Splash.enable('circular'); -}); - -require.ensure(['splash-screen', './main'], function(require) { - - var App = require('./main').default; - (new App()).run(); -}); diff --git a/generators/app/templates/js/main.js b/generators/app/templates/js/main.js index d1a47c2..43fd601 100644 --- a/generators/app/templates/js/main.js +++ b/generators/app/templates/js/main.js @@ -5,6 +5,7 @@ * @date <%= answers.date %> * */ +import './fw/ext/polyfill'; import angular from 'angular'; import {pluck} from './fw/helper/object'; import {declareFeatures, declareValues, declareDirectives, declareComponents, declareRunners, declareFilters} from './fw/helper/ngDeclare'; @@ -13,9 +14,8 @@ import Configurators from './fw/config/main'; import Values from './fw/value/main'; import Things from './features/main'; import Application from './application'; -import {Splash} from 'splash-screen'; -export default class { +class App { constructor() { this.appName = '<%= answers.name %>'; @@ -61,13 +61,8 @@ export default class { } destroySplash() { - Splash.destroy(); - require('splash-screen/dist/splash.min.css').unuse(); - setTimeout(() => { - if (Splash.isRunning()) { - this.destroySplash(); - } - }, 100); + document.head.removeChild(document.querySelector('#style-spinner')); + document.body.removeChild(document.querySelector('#spinner-loader')); } launch() { @@ -84,3 +79,5 @@ export default class { this.launch(); } } + +new App().run(); diff --git a/generators/app/templates/package.json_vm b/generators/app/templates/package.json_vm index 1199b9e..e1cdf9a 100644 --- a/generators/app/templates/package.json_vm +++ b/generators/app/templates/package.json_vm @@ -4,7 +4,7 @@ "description": "<%= answers.description %>", "scripts": { "release": "rm -rf build; webpack --config webpack.config.prod.js", - "start": "webpack-dev-server --hot --inline --host 0.0.0.0" + "start": "webpack-dev-server --hot --inline" }, "files": [ "etc", @@ -18,23 +18,22 @@ "author": "<%= answers.username %> <% if(answers.email){ %><<%= answers.email %>><% } %>", "license": "MIT", "dependencies":{ - "angular": "^1.6.2", - "angular-route": "^1.6.2", - "splash-screen": "^3.0.1" + "angular": "^1.6.3", + "angular-route": "^1.6.3" }, "devDependencies": { - "autoprefixer": "^6.7.4", - "babel-core": "^6.23.1", - "babel-loader": "^6.3.2", + "autoprefixer": "^6.7.7", + "babel-core": "^6.24.0", + "babel-loader": "^6.4.1", "babel-plugin-angularjs-annotate": "^0.7.0", - "babel-preset-es2015": "^6.22.0", - "css-loader": "^0.26.1", - "file-loader": "^0.10.0", + "babel-preset-es2015": "^6.24.0", + "css-loader": "^0.27.3", + "file-loader": "^0.10.1", "html-webpack-plugin": "^2.28.0", - "postcss-loader": "^1.3.1", - "html-loader": "^0.4.4", - "style-loader": "^0.13.1", + "postcss-loader": "^1.3.3", + "html-loader": "^0.4.5", + "style-loader": "^0.14.1", "webpack": "^2.2.1", - "webpack-dev-server": "^2.4.1" + "webpack-dev-server": "^2.4.2" } } diff --git a/generators/app/templates/webpack.config.js b/generators/app/templates/webpack.config.js index 5d40d87..14e35e5 100644 --- a/generators/app/templates/webpack.config.js +++ b/generators/app/templates/webpack.config.js @@ -4,7 +4,7 @@ const HtmlWebpackPlugin = require('html-webpack-plugin'); module.exports = { entry: { - index: './js/index.js' + index: './js/main.js' }, output: { path: path.resolve(__dirname, 'build'), @@ -15,14 +15,12 @@ module.exports = { devtool: 'source-map', devServer: { contentBase: path.resolve(__dirname, 'build'), - historyApiFallback: true + historyApiFallback: true, + port: 8080, + host: '0.0.0.0' }, module: { rules: [ - { - test: /splash\.min\.css$/, - use: ['style-loader/useable'] - }, { test: /(?!min)\.css$/, use: ['style-loader', 'css-loader', 'postcss-loader'] diff --git a/generators/app/templates/webpack.config.prod.js b/generators/app/templates/webpack.config.prod.js index 4d1cc23..74c8246 100644 --- a/generators/app/templates/webpack.config.prod.js +++ b/generators/app/templates/webpack.config.prod.js @@ -4,7 +4,7 @@ const HtmlWebpackPlugin = require('html-webpack-plugin'); module.exports = { entry: { - index: './js/index.js' + index: './js/main.js' }, output: { path: path.resolve(__dirname, 'build'), @@ -14,10 +14,6 @@ module.exports = { }, module: { rules: [ - { - test: /splash\.min\.css$/, - use: ['style-loader/useable'] - }, { test: /(?!min)\.css$/, use: ['style-loader', 'css-loader', 'postcss-loader'] diff --git a/package.json b/package.json index db43157..958eccc 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "generator-es6-angular", - "version": "5.0.3", + "version": "5.0.4", "description": "generator-es6-angular", "repository": { "type": "git", @@ -27,6 +27,6 @@ "dependencies": { "date-util": "^1.2.1", "lodash": "^4.17.4", - "yeoman-generator": "^1.1.0" + "yeoman-generator": "^1.1.1" } }