From b3b14cc08fb2e96a4aa901febfa854c191a3e591 Mon Sep 17 00:00:00 2001 From: Austin McGee <947888+amcgee@users.noreply.github.com> Date: Wed, 17 Apr 2019 10:43:58 +0200 Subject: [PATCH 1/4] feat: place all static assets in public dir, use new favicon, cleanup scripts and webpack-dev-server --- index.html | 35 +++++++++--------- package.json | 10 ++--- public/favicon.ico | Bin 0 -> 15086 bytes icon.png => public/icon.png | Bin {images => public/images}/boundaries.png | Bin {images => public/images}/cluster.png | Bin {images => public/images}/elevation.png | Bin {images => public/images}/events.png | Bin {images => public/images}/facilities.png | Bin {images => public/images}/googlehybrid.jpeg | Bin {images => public/images}/googlestreets.png | Bin {images => public/images}/labels.png | Bin {images => public/images}/landcover.png | Bin {images => public/images}/mapsapp-128.png | Bin {images => public/images}/mapsapp-16.png | Bin {images => public/images}/mapsapp-48.png | Bin {images => public/images}/marker-icon-2x.png | Bin {images => public/images}/marker-icon.png | Bin {images => public/images}/marker-shadow.png | Bin {images => public/images}/nighttime.png | Bin {images => public/images}/nocluster.png | Bin {images => public/images}/osm.png | Bin {images => public/images}/osmdark.png | Bin {images => public/images}/osmlight.png | Bin {images => public/images}/population.png | Bin {images => public/images}/precipitation.png | Bin {images => public/images}/temperature.png | Bin {images => public/images}/terrain.png | Bin {images => public/images}/thematic.png | Bin {images => public/images}/trackedentities.png | Bin webpack.config.js | 10 +---- 31 files changed, 24 insertions(+), 31 deletions(-) create mode 100644 public/favicon.ico rename icon.png => public/icon.png (100%) rename {images => public/images}/boundaries.png (100%) rename {images => public/images}/cluster.png (100%) rename {images => public/images}/elevation.png (100%) rename {images => public/images}/events.png (100%) rename {images => public/images}/facilities.png (100%) rename {images => public/images}/googlehybrid.jpeg (100%) rename {images => public/images}/googlestreets.png (100%) rename {images => public/images}/labels.png (100%) rename {images => public/images}/landcover.png (100%) rename {images => public/images}/mapsapp-128.png (100%) rename {images => public/images}/mapsapp-16.png (100%) rename {images => public/images}/mapsapp-48.png (100%) rename {images => public/images}/marker-icon-2x.png (100%) rename {images => public/images}/marker-icon.png (100%) rename {images => public/images}/marker-shadow.png (100%) rename {images => public/images}/nighttime.png (100%) rename {images => public/images}/nocluster.png (100%) rename {images => public/images}/osm.png (100%) rename {images => public/images}/osmdark.png (100%) rename {images => public/images}/osmlight.png (100%) rename {images => public/images}/population.png (100%) rename {images => public/images}/precipitation.png (100%) rename {images => public/images}/temperature.png (100%) rename {images => public/images}/terrain.png (100%) rename {images => public/images}/thematic.png (100%) rename {images => public/images}/trackedentities.png (100%) diff --git a/index.html b/index.html index 8a2dc3638..06270b1fb 100644 --- a/index.html +++ b/index.html @@ -1,21 +1,22 @@ + + + DHIS2 Maps + + + + + - - - DHIS2 Maps - - - - - + +
+
- -
-
- - <%= htmlWebpackPlugin.options.vendorScripts %> - <%= htmlWebpackPlugin.options.serviceWorkerScript %> - - - \ No newline at end of file + <%= htmlWebpackPlugin.options.vendorScripts %> <%= + htmlWebpackPlugin.options.serviceWorkerScript %> + + diff --git a/package.json b/package.json index d6d3f6700..05fdc53cb 100644 --- a/package.json +++ b/package.json @@ -20,7 +20,7 @@ "lint" ], "scripts": { - "prestart": "yarn localize && d2-manifest package.json manifest.webapp", + "prestart": "yarn localize && yarn manifest", "start": "webpack-dev-server", "coverage": "yarn test --coverage", "test": "jest", @@ -32,10 +32,10 @@ "cy:e2e:run": "CYPRESS_E2E=true cypress run", "cy:e2e:update": "CYPRESS_GEN_FIXTURES=true cypress run --config video=false", "cy:e2e:open:update": "CYPRESS_GEN_FIXTURES=true cypress open", - "prebuild": "yarn test", - "build": "yarn localize && rm -rf build && NODE_ENV=production webpack --progress && yarn manifest && cp -r i18n build && cp -r i18n_old build", - "postbuild": "cp icon.png ./build/ && cp -r images ./build", - "manifest": "d2-manifest package.json build/manifest.webapp", + "prebuild": "yarn test && yarn localize && yarn manifest", + "build": "rm -rf build && NODE_ENV=production webpack --progress", + "postbuild": "cp -r i18n_old public/* ./build", + "manifest": "d2-manifest package.json public/manifest.webapp", "lint": "eslint ./src", "validate": "npm ls --depth 0 || yarn list", "profile": "yarn start --profile", diff --git a/public/favicon.ico b/public/favicon.ico new file mode 100644 index 0000000000000000000000000000000000000000..ab6e2ef70dba94143d2dabc5d7153a828ba143c2 GIT binary patch literal 15086 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 Date: Wed, 17 Apr 2019 10:50:34 +0200 Subject: [PATCH 2/4] fix: move i18n_old into public so it works in devserver --- package.json | 2 +- {i18n_old => public/i18n_old}/i18n_module_en.properties | 0 2 files changed, 1 insertion(+), 1 deletion(-) rename {i18n_old => public/i18n_old}/i18n_module_en.properties (100%) diff --git a/package.json b/package.json index 05fdc53cb..db5991a52 100644 --- a/package.json +++ b/package.json @@ -34,7 +34,7 @@ "cy:e2e:open:update": "CYPRESS_GEN_FIXTURES=true cypress open", "prebuild": "yarn test && yarn localize && yarn manifest", "build": "rm -rf build && NODE_ENV=production webpack --progress", - "postbuild": "cp -r i18n_old public/* ./build", + "postbuild": "cp -r public/* ./build", "manifest": "d2-manifest package.json public/manifest.webapp", "lint": "eslint ./src", "validate": "npm ls --depth 0 || yarn list", diff --git a/i18n_old/i18n_module_en.properties b/public/i18n_old/i18n_module_en.properties similarity index 100% rename from i18n_old/i18n_module_en.properties rename to public/i18n_old/i18n_module_en.properties From dc647e4d9601c4daf27c7acf8ce54fdc6123c347 Mon Sep 17 00:00:00 2001 From: Austin McGee <947888+amcgee@users.noreply.github.com> Date: Wed, 17 Apr 2019 11:33:18 +0200 Subject: [PATCH 3/4] fix: include plugin.html and correctly copy to build dir --- extractor.js | 44 -------- favorites.html | 161 ------------------------------ layout.html | 60 ----------- package.json | 5 +- index.html => public/index.html | 3 +- plugin.html => public/plugin.html | 0 webpack.config.js | 2 +- 7 files changed, 4 insertions(+), 271 deletions(-) delete mode 100644 extractor.js delete mode 100644 favorites.html delete mode 100644 layout.html rename index.html => public/index.html (82%) rename plugin.html => public/plugin.html (100%) diff --git a/extractor.js b/extractor.js deleted file mode 100644 index c1a07fa3b..000000000 --- a/extractor.js +++ /dev/null @@ -1,44 +0,0 @@ -const { existsSync, mkdirSync, readFileSync, writeFileSync } = require('fs'); -const { i18nextToPot } = require('i18next-conv'); -const recursive = require("recursive-readdir"); - -const argv = require('minimist')(process.argv.slice(2)); -const filename = argv['o'] || 'en.pot'; - -const JS_FUNCTION_REGEX = new RegExp("i18next.t\\('(.*)'\\)", 'g'); - -const getFileExtension = (filename) => { - return filename.split('.').pop(); -}; - -// save file to disk -const save = (target) => { - return result => { - writeFileSync(target, result); - }; -}; - -let translations = {}; -const addKeysFromFileContent = (fileContent, functionRegex) => { - let matches; - while (( matches = functionRegex.exec(fileContent))) { - if (matches[1]) { - translations[matches[1]] = ''; - } - } -}; - -recursive('src', function (err, files) { - for (let file of files) { - const fileExtension = getFileExtension(file); - if (fileExtension === 'js') { - addKeysFromFileContent(readFileSync(file, 'utf-8'), JS_FUNCTION_REGEX); - } - } - - if (!existsSync('i18n/')){ - mkdirSync('i18n/'); - } - - i18nextToPot('en', JSON.stringify(translations)).then(save('i18n/' + filename)); -}); \ No newline at end of file diff --git a/favorites.html b/favorites.html deleted file mode 100644 index f91efba60..000000000 --- a/favorites.html +++ /dev/null @@ -1,161 +0,0 @@ - - - DHIS2 Maps Plugin - - - - - - - - - - -
- - - - - - - diff --git a/layout.html b/layout.html deleted file mode 100644 index 397ae0e5f..000000000 --- a/layout.html +++ /dev/null @@ -1,60 +0,0 @@ - - - - DHIS2 Maps Plugin - - - - -
-
-

Column A

-
-
Image
-
Image
-
-
-
-

Column B

-
Select
-
-
- - - \ No newline at end of file diff --git a/package.json b/package.json index db5991a52..44fa9f904 100644 --- a/package.json +++ b/package.json @@ -32,9 +32,8 @@ "cy:e2e:run": "CYPRESS_E2E=true cypress run", "cy:e2e:update": "CYPRESS_GEN_FIXTURES=true cypress run --config video=false", "cy:e2e:open:update": "CYPRESS_GEN_FIXTURES=true cypress open", - "prebuild": "yarn test && yarn localize && yarn manifest", - "build": "rm -rf build && NODE_ENV=production webpack --progress", - "postbuild": "cp -r public/* ./build", + "prebuild": "yarn test && yarn localize && yarn manifest && rm -rf build && mkdir build && cp -r public/* ./build/", + "build": "NODE_ENV=production webpack --progress", "manifest": "d2-manifest package.json public/manifest.webapp", "lint": "eslint ./src", "validate": "npm ls --depth 0 || yarn list", diff --git a/index.html b/public/index.html similarity index 82% rename from index.html rename to public/index.html index 06270b1fb..699c23229 100644 --- a/index.html +++ b/public/index.html @@ -16,7 +16,6 @@
- <%= htmlWebpackPlugin.options.vendorScripts %> <%= - htmlWebpackPlugin.options.serviceWorkerScript %> + <%= htmlWebpackPlugin.options.vendorScripts %> diff --git a/plugin.html b/public/plugin.html similarity index 100% rename from plugin.html rename to public/plugin.html diff --git a/webpack.config.js b/webpack.config.js index 3d2d1f30b..d8938cc82 100644 --- a/webpack.config.js +++ b/webpack.config.js @@ -112,7 +112,7 @@ const webpackConfig = { }, plugins: [ new HTMLWebpackPlugin({ - template: 'index.html', + template: 'public/index.html', chunks: ['app'], }), ], From 17e0ff7ff52a473dc184a534078e8cc7a5afce25 Mon Sep 17 00:00:00 2001 From: Austin McGee <947888+amcgee@users.noreply.github.com> Date: Wed, 17 Apr 2019 11:55:59 +0200 Subject: [PATCH 4/4] fix: unbreak netlify --- netlify.toml | 2 +- package.json | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/netlify.toml b/netlify.toml index a245df681..bfe5da591 100644 --- a/netlify.toml +++ b/netlify.toml @@ -13,7 +13,7 @@ ID = "79053cdd-851c-479d-b6cd-1c6d77f679a3" publish = "build" # Default build command. - command = "yarn install && yarn build && yarn run manifest package.json build/manifest.webapp --manifest.activities.dhis.href=\"https://play.dhis2.org/dev\"" + command = "yarn install && yarn build:netlify" # /dhis-web-core-resource/react/16.2.0/umd/react.production.min.js https://unpkg.com/react@16.5/umd/react.production.min.js # /dhis-web-core-resource/react-dom/16.2.0/umd/react-dom.production.min.js https://unpkg.com/react-dom@16.5/umd/react-dom.production.min.js diff --git a/package.json b/package.json index 44fa9f904..8098f54e6 100644 --- a/package.json +++ b/package.json @@ -34,6 +34,7 @@ "cy:e2e:open:update": "CYPRESS_GEN_FIXTURES=true cypress open", "prebuild": "yarn test && yarn localize && yarn manifest && rm -rf build && mkdir build && cp -r public/* ./build/", "build": "NODE_ENV=production webpack --progress", + "build:netlify": "yarn build && d2-manifest package.json build/manifest.webapp --manifest.activities.dhis.href=\"https://play.dhis2.org/dev\"", "manifest": "d2-manifest package.json public/manifest.webapp", "lint": "eslint ./src", "validate": "npm ls --depth 0 || yarn list",