Skip to content

Commit

Permalink
fix datatables, use webpack for modern stuff
Browse files Browse the repository at this point in the history
  • Loading branch information
marudor committed Dec 25, 2017
1 parent fda58d8 commit fed4fab
Show file tree
Hide file tree
Showing 7 changed files with 2,334 additions and 458 deletions.
18 changes: 18 additions & 0 deletions .babelrc
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
{
"presets": [["env", {
"targets": {
"chrome": 45,
"firefox": 42,
"safari": 9,
"opera": 32,
"edge": 12,
"iOS": 9
},
"loose": true,
"useBuiltIns": true
}],
],
"plugins": [
"transform-object-rest-spread"
]
}
2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -13,3 +13,5 @@ translations/**/*.mo
.cache
venv/
.well-known
yarn-error.log
npm-shrinkwrap.json
9 changes: 9 additions & 0 deletions js/index.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
require('./areas');
require('./create_dp');
require('./dp_modals');
require('./drop_points');
require('./gettext');
require('./list');
require('./main');
require('./map');
require('./stats');
3 changes: 3 additions & 0 deletions js/list.js
Original file line number Diff line number Diff line change
@@ -1,4 +1,7 @@
const $ = require('jquery');

// eslint-disable-next-line
require('imports-loader?define=>false!datatables.net')(window, $);
const offset = $("meta[name='time']").attr('content') - Date.now() / 1000;

require('datatables-bootstrap3-plugin');
Expand Down
36 changes: 25 additions & 11 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -5,10 +5,10 @@
"scripts": {
"refresh:babel": "venv/bin/pybabel extract -F translations/babel.cfg -k lazy_gettext -w 80 -o translations/messages.pot . && venv/bin/pybabel update -i translations/messages.pot -w 80 -d translations/",
"prebuild": "mkdir -p static/lib/js/ static/lib/css/ static/lib/fonts/",
"prebuild:js": "npm run prebuild && jshint js/**.js",
"build:js": "browserify js/**.js | uglifyjs -m > static/lib/js/lib.js",
"build:js:watch": "watchify js/**.js -o static/lib/js/lib.js",
"build:js:debug": "browserify js/**.js > static/lib/js/lib.js",
"prebuild:js": "npm run prebuild && eslint js/**.js",
"build:js": "NODE_ENV=production webpack",
"build:js:watch": "webpack --watch",
"build:js:debug": "webpack",
"prebuild:css": "npm run prebuild",
"build:css": "cp node_modules/bootstrap/dist/css/* node_modules/datatables-bootstrap3-plugin/media/css/*.css node_modules/leaflet/dist/leaflet.css static/lib/css/",
"prebuild:fonts": "npm run prebuild",
Expand All @@ -24,23 +24,37 @@
"url": "https://github.com/c3bottles/c3bottles/issues"
},
"dependencies": {
"babel-polyfill": "^6.26.0",
"bootstrap": "^3.3.5",
"browserify": "latest",
"chart.js": "^2.4.0",
"datatables": "1.10.13",
"datatables-bootstrap3-plugin": "0.5.0",
"datatables.net": "^1.10.16",
"jquery": "^2.1.4",
"jshint": "^2.9.1-rc1",
"leaflet": "^1.2.0",
"npm-run-all": "^1.2.13",
"uglify-js": "latest"
"leaflet": "^1.2.0"
},
"jshintConfig": {
"curly": true,
"latedef": "nofunc",
"unused": true
},
"devDependencies": {
"watchify": "^3.9.0"
"babel-cli": "^6.26.0",
"babel-core": "^6.26.0",
"babel-eslint": "^8.1.1",
"babel-loader": "^7.1.2",
"babel-plugin-transform-object-rest-spread": "^6.26.0",
"babel-preset-env": "^1.6.1",
"eslint": "^4.14.0",
"eslint-config-joblift": "^1.1.6",
"eslint-plugin-flowtype": "^2.40.1",
"eslint-plugin-import": "^2.8.0",
"eslint-plugin-jest": "^21.5.0",
"eslint-plugin-prettier": "^2.4.0",
"eslint-plugin-react": "^7.5.1",
"eslint-plugin-sort-imports-es6-autofix": "^0.1.1",
"imports-loader": "^0.7.1",
"npm-run-all": "^1.2.13",
"prettier": "^1.9.2",
"webpack": "^3.10.0"
}
}
57 changes: 57 additions & 0 deletions webpack.config.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
const path = require('path');
const webpack = require('webpack');
const nodeEnv = (process.env.NODE_ENV || 'development').trim();

// eslint-disable-next-line
const __DEV__ = nodeEnv !== 'production';

const devtool = __DEV__ ? '#source-map' : '';

const plugins = [
new webpack.DefinePlugin({
'process.env': {
NODE_ENV: JSON.stringify(nodeEnv),
},
}),
];

if (!__DEV__) {
plugins.push(
new webpack.optimize.UglifyJsPlugin({
compress: {
warnings: false,
},
output: {
comments: false,
},
screwIe8: true,
sourceMap: false,
})
);
}

module.exports = {
context: __dirname,
resolve: {
// Extension die wir weglassen können
extensions: ['.js', '.jsx'],
modules: ['node_modules'],
},
entry: ['babel-polyfill', './js/index.js'],
output: {
path: path.resolve('static/lib/js'),
filename: 'lib.js',
publicPath: '/',
},
module: {
rules: [
{
test: /\.jsx?$/,
exclude: /(node_modules)/,
loader: 'babel-loader',
},
],
},
plugins,
devtool,
};
Loading

0 comments on commit fed4fab

Please sign in to comment.