From d20dc77d29ffae31c6c5b0a45b1b26224b80fc31 Mon Sep 17 00:00:00 2001 From: Mathieu Baudier Date: Thu, 14 Sep 2023 07:55:48 +0200 Subject: [PATCH] Refactor JavaScript components --- Makefile | 15 +++-------- .../npm run build.launch | 6 ++--- {org.argeo.app.geo.js => js}/.gitignore | 0 js/.project | 19 ++++++++++++++ .../org.eclipse.core.resources.prefs | 0 .../.settings/org.eclipse.pde.core.prefs | 0 js/Makefile | 26 +++++++++++++++++++ js/org.argeo.app.geo.js/.gitignore | 1 + .../org.argeo.app.geo.js}/.project | 10 ------- .../org.argeo.app.geo.js}/bnd.bnd | 0 .../org.argeo.app.geo.js}/build.properties | 0 .../package-lock.json | 0 {org.argeo.app.geo.js => js}/package.json | 0 .../src/org.argeo.app.geo.js/MapPart.js | 0 .../OpenLayerTileSources.js | 0 .../org.argeo.app.geo.js/OpenLayersMapPart.js | 2 -- .../org.argeo.app.geo.js/export-package.js | 0 .../src/org.argeo.app.geo.js/index.html | 0 .../src/org.argeo.app.geo.js/index.js | 0 .../webpack.common.js | 18 +++++++------ {org.argeo.app.geo.js => js}/webpack.dev.js | 0 {org.argeo.app.geo.js => js}/webpack.prod.js | 0 org.argeo.app.geo.js/Makefile | 2 -- sdk/argeo-build | 2 +- 24 files changed, 64 insertions(+), 37 deletions(-) rename {org.argeo.app.geo.js => js}/.externalToolBuilders/npm run build.launch (84%) rename {org.argeo.app.geo.js => js}/.gitignore (100%) create mode 100644 js/.project rename {org.argeo.app.geo.js => js}/.settings/org.eclipse.core.resources.prefs (100%) rename {org.argeo.app.geo.js => js}/.settings/org.eclipse.pde.core.prefs (100%) create mode 100644 js/Makefile create mode 100644 js/org.argeo.app.geo.js/.gitignore rename {org.argeo.app.geo.js => js/org.argeo.app.geo.js}/.project (59%) rename {org.argeo.app.geo.js => js/org.argeo.app.geo.js}/bnd.bnd (100%) rename {org.argeo.app.geo.js => js/org.argeo.app.geo.js}/build.properties (100%) rename {org.argeo.app.geo.js => js}/package-lock.json (100%) rename {org.argeo.app.geo.js => js}/package.json (100%) rename {org.argeo.app.geo.js => js}/src/org.argeo.app.geo.js/MapPart.js (100%) rename {org.argeo.app.geo.js => js}/src/org.argeo.app.geo.js/OpenLayerTileSources.js (100%) rename {org.argeo.app.geo.js => js}/src/org.argeo.app.geo.js/OpenLayersMapPart.js (99%) rename {org.argeo.app.geo.js => js}/src/org.argeo.app.geo.js/export-package.js (100%) rename {org.argeo.app.geo.js => js}/src/org.argeo.app.geo.js/index.html (100%) rename {org.argeo.app.geo.js => js}/src/org.argeo.app.geo.js/index.js (100%) rename {org.argeo.app.geo.js => js}/webpack.common.js (67%) rename {org.argeo.app.geo.js => js}/webpack.dev.js (100%) rename {org.argeo.app.geo.js => js}/webpack.prod.js (100%) delete mode 100644 org.argeo.app.geo.js/Makefile diff --git a/Makefile b/Makefile index c41b17e..a2dbe27 100644 --- a/Makefile +++ b/Makefile @@ -1,5 +1,5 @@ include sdk.mk -.PHONY: clean all osgi +.PHONY: clean all osgi web all: web osgi @@ -45,17 +45,10 @@ swt/rap/org.argeo.cms \ clean: rm -rf $(BUILD_BASE) + make -C js clean ## WEB web: - cd org.argeo.app.geo.js && npm run build + make -C js all -npm-install: - cd org.argeo.app.geo.js && npm install - -jsdoc: - org.argeo.app.geo.js/node_modules/.bin/jsdoc -r org.argeo.app.geo.js/src/org.argeo.app.geo.js \ - -d $(SDK_BUILD_BASE)/jsdoc/org.argeo.app.geo.js - - -include $(SDK_SRC_BASE)/sdk/argeo-build/osgi.mk \ No newline at end of file +include $(SDK_SRC_BASE)/sdk/argeo-build/osgi.mk diff --git a/org.argeo.app.geo.js/.externalToolBuilders/npm run build.launch b/js/.externalToolBuilders/npm run build.launch similarity index 84% rename from org.argeo.app.geo.js/.externalToolBuilders/npm run build.launch rename to js/.externalToolBuilders/npm run build.launch index 18227db..75fcedb 100644 --- a/org.argeo.app.geo.js/.externalToolBuilders/npm run build.launch +++ b/js/.externalToolBuilders/npm run build.launch @@ -1,11 +1,11 @@ - + - + - + diff --git a/org.argeo.app.geo.js/.gitignore b/js/.gitignore similarity index 100% rename from org.argeo.app.geo.js/.gitignore rename to js/.gitignore diff --git a/js/.project b/js/.project new file mode 100644 index 0000000..07e0c1b --- /dev/null +++ b/js/.project @@ -0,0 +1,19 @@ + + + argeo-suite-js + + + + + + org.eclipse.ui.externaltools.ExternalToolBuilder + auto,full,incremental, + + + LaunchConfigHandle + <project>/.externalToolBuilders/npm run build.launch + + + + + diff --git a/org.argeo.app.geo.js/.settings/org.eclipse.core.resources.prefs b/js/.settings/org.eclipse.core.resources.prefs similarity index 100% rename from org.argeo.app.geo.js/.settings/org.eclipse.core.resources.prefs rename to js/.settings/org.eclipse.core.resources.prefs diff --git a/org.argeo.app.geo.js/.settings/org.eclipse.pde.core.prefs b/js/.settings/org.eclipse.pde.core.prefs similarity index 100% rename from org.argeo.app.geo.js/.settings/org.eclipse.pde.core.prefs rename to js/.settings/org.eclipse.pde.core.prefs diff --git a/js/Makefile b/js/Makefile new file mode 100644 index 0000000..1e8cd43 --- /dev/null +++ b/js/Makefile @@ -0,0 +1,26 @@ +include ../sdk.mk + +A2_CATEGORY = org.argeo.suite + +BUNDLES = \ +org.argeo.app.geo.js \ + +all: webpack osgi + +webpack: + npm run build-prod + +webpack-dev: + npm run build + +clean: + $(foreach bundle, $(BUNDLES), rm -rf $(bundle)/org) + +npm-install: + cd org.argeo.app.geo.js && npm install + +jsdoc: + org.argeo.app.geo.js/node_modules/.bin/jsdoc -r org.argeo.app.geo.js/src/org.argeo.app.geo.js \ + -d $(SDK_BUILD_BASE)/jsdoc/org.argeo.app.geo.js + +include $(SDK_SRC_BASE)/sdk/argeo-build/osgi.mk diff --git a/js/org.argeo.app.geo.js/.gitignore b/js/org.argeo.app.geo.js/.gitignore new file mode 100644 index 0000000..cf1db2e --- /dev/null +++ b/js/org.argeo.app.geo.js/.gitignore @@ -0,0 +1 @@ +/org/ diff --git a/org.argeo.app.geo.js/.project b/js/org.argeo.app.geo.js/.project similarity index 59% rename from org.argeo.app.geo.js/.project rename to js/org.argeo.app.geo.js/.project index f3db5e6..b4b7877 100644 --- a/org.argeo.app.geo.js/.project +++ b/js/org.argeo.app.geo.js/.project @@ -15,16 +15,6 @@ - - org.eclipse.ui.externaltools.ExternalToolBuilder - auto,full,incremental, - - - LaunchConfigHandle - <project>/.externalToolBuilders/npm run build.launch - - - org.eclipse.pde.PluginNature diff --git a/org.argeo.app.geo.js/bnd.bnd b/js/org.argeo.app.geo.js/bnd.bnd similarity index 100% rename from org.argeo.app.geo.js/bnd.bnd rename to js/org.argeo.app.geo.js/bnd.bnd diff --git a/org.argeo.app.geo.js/build.properties b/js/org.argeo.app.geo.js/build.properties similarity index 100% rename from org.argeo.app.geo.js/build.properties rename to js/org.argeo.app.geo.js/build.properties diff --git a/org.argeo.app.geo.js/package-lock.json b/js/package-lock.json similarity index 100% rename from org.argeo.app.geo.js/package-lock.json rename to js/package-lock.json diff --git a/org.argeo.app.geo.js/package.json b/js/package.json similarity index 100% rename from org.argeo.app.geo.js/package.json rename to js/package.json diff --git a/org.argeo.app.geo.js/src/org.argeo.app.geo.js/MapPart.js b/js/src/org.argeo.app.geo.js/MapPart.js similarity index 100% rename from org.argeo.app.geo.js/src/org.argeo.app.geo.js/MapPart.js rename to js/src/org.argeo.app.geo.js/MapPart.js diff --git a/org.argeo.app.geo.js/src/org.argeo.app.geo.js/OpenLayerTileSources.js b/js/src/org.argeo.app.geo.js/OpenLayerTileSources.js similarity index 100% rename from org.argeo.app.geo.js/src/org.argeo.app.geo.js/OpenLayerTileSources.js rename to js/src/org.argeo.app.geo.js/OpenLayerTileSources.js diff --git a/org.argeo.app.geo.js/src/org.argeo.app.geo.js/OpenLayersMapPart.js b/js/src/org.argeo.app.geo.js/OpenLayersMapPart.js similarity index 99% rename from org.argeo.app.geo.js/src/org.argeo.app.geo.js/OpenLayersMapPart.js rename to js/src/org.argeo.app.geo.js/OpenLayersMapPart.js index 11cf498..f671b02 100644 --- a/org.argeo.app.geo.js/src/org.argeo.app.geo.js/OpenLayersMapPart.js +++ b/js/src/org.argeo.app.geo.js/OpenLayersMapPart.js @@ -220,6 +220,4 @@ export default class OpenLayersMapPart extends MapPart { }); vectorLayer.setStyle(olStyleFunction); } - - } diff --git a/org.argeo.app.geo.js/src/org.argeo.app.geo.js/export-package.js b/js/src/org.argeo.app.geo.js/export-package.js similarity index 100% rename from org.argeo.app.geo.js/src/org.argeo.app.geo.js/export-package.js rename to js/src/org.argeo.app.geo.js/export-package.js diff --git a/org.argeo.app.geo.js/src/org.argeo.app.geo.js/index.html b/js/src/org.argeo.app.geo.js/index.html similarity index 100% rename from org.argeo.app.geo.js/src/org.argeo.app.geo.js/index.html rename to js/src/org.argeo.app.geo.js/index.html diff --git a/org.argeo.app.geo.js/src/org.argeo.app.geo.js/index.js b/js/src/org.argeo.app.geo.js/index.js similarity index 100% rename from org.argeo.app.geo.js/src/org.argeo.app.geo.js/index.js rename to js/src/org.argeo.app.geo.js/index.js diff --git a/org.argeo.app.geo.js/webpack.common.js b/js/webpack.common.js similarity index 67% rename from org.argeo.app.geo.js/webpack.common.js rename to js/webpack.common.js index f57ff66..88b22bc 100644 --- a/org.argeo.app.geo.js/webpack.common.js +++ b/js/webpack.common.js @@ -5,11 +5,13 @@ const path = require('path'); module.exports = { entry: { - index: './src/org.argeo.app.geo.js/index.js' + "org.argeo.app.geo.js": { + import: './src/org.argeo.app.geo.js/index.js', + } }, output: { filename: '[name].[contenthash].js', - path: path.resolve(__dirname, 'org/argeo/app/geo/js'), + path: path.resolve(__dirname, 'org.argeo.app.geo.js/org/argeo/app/geo/js'), clean: true, }, optimization: { @@ -19,11 +21,11 @@ module.exports = { splitChunks: { chunks: 'all', }, -// minimizer: [ -// // For webpack@5 you can use the `...` syntax to extend existing minimizers (i.e. `terser-webpack-plugin`), uncomment the next line -// `...`, -// new CssMinimizerPlugin(), -// ], + // minimizer: [ + // // For webpack@5 you can use the `...` syntax to extend existing minimizers (i.e. `terser-webpack-plugin`), uncomment the next line + // `...`, + // new CssMinimizerPlugin(), + // ], }, module: { rules: [ @@ -37,7 +39,7 @@ module.exports = { ], }, plugins: [ -// // deal with CSS + // deal with CSS new MiniCssExtractPlugin(), // deal with HTML generation new HtmlWebpackPlugin({ diff --git a/org.argeo.app.geo.js/webpack.dev.js b/js/webpack.dev.js similarity index 100% rename from org.argeo.app.geo.js/webpack.dev.js rename to js/webpack.dev.js diff --git a/org.argeo.app.geo.js/webpack.prod.js b/js/webpack.prod.js similarity index 100% rename from org.argeo.app.geo.js/webpack.prod.js rename to js/webpack.prod.js diff --git a/org.argeo.app.geo.js/Makefile b/org.argeo.app.geo.js/Makefile deleted file mode 100644 index 14e2e79..0000000 --- a/org.argeo.app.geo.js/Makefile +++ /dev/null @@ -1,2 +0,0 @@ -all: - npm run build \ No newline at end of file diff --git a/sdk/argeo-build b/sdk/argeo-build index 4d2955f..a3c6bb2 160000 --- a/sdk/argeo-build +++ b/sdk/argeo-build @@ -1 +1 @@ -Subproject commit 4d2955f554f19e8f77eae527b5831d533eb8d27f +Subproject commit a3c6bb281ff83a0536d36c51cd8ea18cd5d8f091 -- 2.30.2