diff --git a/.babelrc b/.babelrc
index b9318605..5b6c8767 100644
--- a/.babelrc
+++ b/.babelrc
@@ -1,10 +1,10 @@
{
- "presets": ["es2015", "react"],
+ "presets": ["@babel/preset-env", "@babel/preset-react"],
"env": {
"test": {
- "plugins": ["syntax-class-properties",
- "transform-class-properties"]
+ "plugins": ["@babel/syntax-class-properties",
+ "@babel/proposal-class-properties"]
}
}
}
diff --git a/Dockerfile b/Dockerfile
index cab4dd12..054eb59d 100644
--- a/Dockerfile
+++ b/Dockerfile
@@ -36,7 +36,7 @@ WORKDIR /webodm/nodeodm/external/node-OpenDroneMap
RUN npm install --quiet
WORKDIR /webodm
-RUN npm install --quiet -g webpack@3.11.0 && npm install --quiet && webpack
+RUN npm install --quiet -g webpack webpack-cli && npm install --quiet && webpack
RUN python manage.py collectstatic --noinput
RUN rm /webodm/webodm/secret_key.py
diff --git a/README.md b/README.md
index c2b6704a..8b349e92 100644
--- a/README.md
+++ b/README.md
@@ -355,7 +355,7 @@ Then:
```bash
pip install -r requirements.txt
-sudo npm install -g webpack@3.11.0
+sudo npm install -g webpack webpack-cli
npm install
webpack
python manage.py collectstatic --noinput
diff --git a/app/templates/app/logged_in_base.html b/app/templates/app/logged_in_base.html
index 3636379f..950320e8 100644
--- a/app/templates/app/logged_in_base.html
+++ b/app/templates/app/logged_in_base.html
@@ -276,9 +276,6 @@
{% trans 'API' %}
-
- {% trans 'Documentation' %}
-
{% if user.is_staff %}
diff --git a/package.json b/package.json
index 470f0e4e..bd1112c7 100644
--- a/package.json
+++ b/package.json
@@ -21,29 +21,31 @@
},
"homepage": "https://github.com/OpenDroneMap/WebODM#readme",
"dependencies": {
+ "@babel/core": "^7.0.0-beta.54",
+ "@babel/plugin-proposal-class-properties": "^7.0.0-beta.54",
+ "@babel/plugin-syntax-class-properties": "^7.0.0-beta.54",
+ "@babel/preset-env": "^7.0.0-beta.54",
+ "@babel/preset-react": "^7.0.0-beta.54",
"async": "^2.1.2",
- "babel-core": "^6.17.0",
- "babel-jest": "^21.0.0",
- "babel-loader": "^6.2.5",
- "babel-plugin-syntax-class-properties": "^6.13.0",
- "babel-plugin-transform-class-properties": "^6.18.0",
- "babel-preset-es2015": "^6.24.1",
- "babel-preset-react": "^6.24.1",
+ "babel-core": "^7.0.0-bridge.0",
+ "babel-jest": "^23.4.0",
+ "babel-loader": "^8.0.0-beta.4",
+ "canvas": "^1.6.11",
"clipboard": "^1.7.1",
"css-loader": "^0.25.0",
"d3": "^3.5.5",
"enzyme": "^3.3.0",
"enzyme-adapter-react-16": "^1.1.1",
- "extract-text-webpack-plugin": "^3.0.0",
+ "extract-text-webpack-plugin": "^4.0.0-beta.0",
"fbemitter": "^2.1.1",
"file-loader": "^0.9.0",
"gl-matrix": "^2.3.2",
"history": "^4.7.2",
"immutability-helper": "^2.0.0",
- "jest": "^21.0.1",
+ "jest": "^23.4.1",
"json-loader": "^0.5.4",
"leaflet": "^1.3.1",
- "node-sass": "^3.10.1",
+ "node-sass": "^4.9.2",
"object.values": "^1.0.3",
"proj4": "^2.4.3",
"qrcode.react": "^0.7.2",
@@ -54,13 +56,14 @@
"react-router-dom": "^4.1.1",
"react-test-renderer": "^15.6.1",
"regenerator-runtime": "^0.11.0",
- "sass-loader": "^4.0.2",
+ "sass-loader": "^7.0.3",
"sinon": "^4.0.0",
"statuses": "^1.3.1",
"style-loader": "^0.13.1",
"tween.js": "^16.6.0",
+ "uglifyjs-webpack-plugin": "^1.2.7",
"url-loader": "^0.5.7",
- "webpack": "^3.3.0",
+ "webpack": "^4.16.2",
"webpack-bundle-tracker": "0.0.93",
"webpack-livereload-plugin": "^0.9.0"
}
diff --git a/plugins/openaerialmap/plugin.py b/plugins/openaerialmap/plugin.py
index 096a1359..c815f502 100644
--- a/plugins/openaerialmap/plugin.py
+++ b/plugins/openaerialmap/plugin.py
@@ -32,7 +32,7 @@ class Plugin(PluginBase):
form = TokenForm(request.POST)
if form.is_valid():
ds.set_string('token', form.cleaned_data['token'])
- messages.success(request, 'Token updated. Tasks can now be shared to OpenAerialMap.')
+ messages.success(request, 'Token updated.')
form = TokenForm(initial={'token': ds.get_string('token', default="")})
diff --git a/plugins/openaerialmap/templates/app.html b/plugins/openaerialmap/templates/app.html
index 14e7abb3..0e39cb94 100644
--- a/plugins/openaerialmap/templates/app.html
+++ b/plugins/openaerialmap/templates/app.html
@@ -3,9 +3,11 @@
{% block content %}
OpenAerialMap
- OpenAerialMap (OAM) is a set of tools for searching, sharing, and using openly licensed satellite and unmanned aerial vehicle (UAV) imagery.
- {% if not form.token.value %}
+
+
+{% if not form.token.value %}
+ OpenAerialMap (OAM) is a set of tools for searching, sharing, and using openly licensed satellite and unmanned aerial vehicle (UAV) imagery.
To share your results with OAM:
- Sign-in from map.openaerialmap.org.
@@ -13,6 +15,8 @@
- Copy and paste the token in the form below.
{% else %}
+ You are all set! To share a task, select it from the dashboard and press the Share to OAM button.
+ Your submissions can be managed from your OAM profile page.
Go To OpenAerialMap
{% endif %}
diff --git a/webpack.config.js b/webpack.config.js
index c729b948..7e58e8b4 100644
--- a/webpack.config.js
+++ b/webpack.config.js
@@ -1,10 +1,10 @@
let path = require("path");
-let webpack = require('webpack');
let BundleTracker = require('webpack-bundle-tracker');
let ExtractTextPlugin = require('extract-text-webpack-plugin');
let LiveReloadPlugin = require('webpack-livereload-plugin');
module.exports = {
+ mode: 'production',
context: __dirname,
entry: {
@@ -37,11 +37,14 @@ module.exports = {
{
loader: 'babel-loader',
query: {
- "plugins": [
- 'syntax-class-properties',
- 'transform-class-properties'
+ plugins: [
+ '@babel/syntax-class-properties',
+ '@babel/proposal-class-properties'
],
- presets: ['es2015', 'react']
+ presets: [
+ '@babel/preset-env',
+ '@babel/preset-react'
+ ]
}
}
],