diff --git a/.vscode/tasks.json b/.vscode/tasks.json index 30fd3c8..d1643d5 100644 --- a/.vscode/tasks.json +++ b/.vscode/tasks.json @@ -43,6 +43,14 @@ "type": "shell", "command": "mvn clean", "group": "build" + }, + { + "label": "Watch types", + "detail": "Start TypeScript compiler in watch mode", + "type": "npm", + "script": "watch-types", + "group": "build", + "problemMatcher": [], } ] } diff --git a/gulpfile.js b/gulpfile.js index 111634b..fd996cb 100644 --- a/gulpfile.js +++ b/gulpfile.js @@ -64,15 +64,13 @@ mapapps.registerTasks({ }, /* a list of themes inside this project */ - themes: [/*"sample-theme"*/], + themes: [], /* state that the custom theme will be dependant from map.apps everlasting theme that provides the base styles */ hasBaseThemes: true, /* state that we want to support vuetify components and therefore need the vuetify core styles*/ hasVuetify: true, themeChangeTargets: { - "vuetify": [ - // "sample_theme" - ] + "vuetify": [] }, /* A list oft target browser versions. This should be streamlined with Esri JS API requirements. */ transpileTargets: { @@ -139,7 +137,6 @@ gulp.task("lint", gulp.task("preview", gulp.series( "build", - "lint", gulp.parallel( "watch", "browser-sync" diff --git a/package.json b/package.json index 899af04..6430ec8 100644 --- a/package.json +++ b/package.json @@ -4,22 +4,32 @@ "version": "0.0.1", "license": "CC0-1.0", "scripts": { - "check-licenses": "node ./src/support/js/check-licenses.js" + "check-licenses": "tsx ./src/support/js/check-licenses.ts", + "check-types": "tsc --noEmit", + "watch-types": "tsc -w --noEmit" }, "devDependencies": { - "@conterra/ct-mapapps-typings": "4.15.1", - "@conterra/mapapps-mocha-runner": "^1.1.1", - "@types/arcgis-js-api": "4.26.0", - "chai": "^4.3.7", - "ct-mapapps-browser-sync": "0.0.30", - "ct-mapapps-gulp-js": "0.9.4", - "eslint-config-ct-prodeng": "1.3.0-next-2", - "license-checker": "^25.0.1", - "mocha": "^10.2.0", - "puppeteer": "^19.11.1", - "vue-template-compiler": "2.7.8", - "stylelint-config-ct-prodeng": "1.0.4", - "stylelint-config-recommended": "5.0.0", - "stylelint": "^13.13.1" + "@conterra/ct-mapapps-typings": "~4.17.0", + "@conterra/mapapps-mocha-runner": "1.1.1", + "@types/arcgis-js-api": "4.28.0", + "@types/chai": "4.3.10", + "@types/license-checker": "^25.0.6", + "@types/mocha": "10.0.4", + "chai": "4.3.10", + "ct-mapapps-browser-sync": "0.0.35", + "ct-mapapps-gulp-js": "0.10.2", + "eslint-config-ct-prodeng": "1.4.0", + "license-checker": "25.0.1", + "mocha": "10.2.0", + "puppeteer": "21.5.2", + "stylelint": "15.11.0", + "stylelint-config-ct-prodeng": "2.0.0", + "stylelint-config-recommended": "13.0.0", + "stylelint-config-recommended-less": "2.0.0", + "ts-node": "^10.9.1", + "tsx": "^4.6.0", + "typescript": "5.2.2", + "vue": "2.7.15", + "vue-template-compiler": "2.7.15" } } diff --git a/pom.xml b/pom.xml index 9c4ebff..1af1793 100644 --- a/pom.xml +++ b/pom.xml @@ -46,11 +46,6 @@ pom import - - de.conterra.mapapps - ct-mapapps-js - ${mapapps.version} - @@ -97,6 +92,11 @@ + + de.conterra.mapapps + mapapps-maven-plugin + ${mapapps.version} + de.conterra.jsregistry ct-jsregistry-maven-plugin @@ -149,10 +149,9 @@ com.github.eirslett frontend-maven-plugin - 1.12.1 + 1.14.2 - v18.13.0 - 8.19.3 + v20.9.0 @@ -178,11 +177,6 @@ setproperties-maven-plugin 1.0.2 - - de.conterra.jsrt - ct-jsrt-test-maven-plugin - ${ct.jsrt-test.version} - src/main/js @@ -220,9 +214,7 @@ - - . @@ -230,7 +222,7 @@ org.apache.maven.plugins maven-compiler-plugin - 3.8.0 + 3.11.0 true @@ -238,7 +230,7 @@ org.apache.maven.plugins maven-javadoc-plugin - 3.1.0 + 3.5.0 true @@ -246,6 +238,7 @@ org.apache.maven.plugins maven-dependency-plugin + 3.5.0 unpack-themes-src @@ -348,6 +341,9 @@ **/gulpfile.js **/pom.xml + + src/main/js/**/*.min.js + XML_STYLE @@ -414,6 +410,12 @@ de.conterra.mapapps mapapps-maven-plugin + + + true + ${js.build.outputPath}/apps + ${project.build.directory} + @@ -441,13 +443,6 @@ - - - true - false - ${js.build.outputPath}/apps - ${project.build.directory} - maven-assembly-plugin @@ -501,11 +496,12 @@ ${project.build.directory}/webapp ${root.build.outputPath}/js - 4.15.1 + 4.17.0 + 1.5.28 ${mapapps.version} - 1.5.10 + 2.0.1 2.0.2 @@ -568,6 +564,11 @@ ags-js-api4 test + + com.esri + terraformer-js + test + moment-js moment-js @@ -670,12 +671,6 @@ - - maven-deploy-plugin - - true - - de.conterra.jsregistry ct-jsregistry-maven-plugin @@ -718,8 +713,6 @@ ${skip.apps.upload} true - ${project.artifactId} - ${project.artifactId}-${project.version} PUBLISHED ${mapapps.remote.base}/resources ${mapapps.user} diff --git a/src/support/js/check-licenses.js b/src/support/js/check-licenses.ts similarity index 84% rename from src/support/js/check-licenses.js rename to src/support/js/check-licenses.ts index 8ce6054..9eda7f4 100644 --- a/src/support/js/check-licenses.js +++ b/src/support/js/check-licenses.ts @@ -3,7 +3,7 @@ Fails with exit code != 0 and an error message if a disallowed license is encountered. The script should be executed from the project root directory after dependencies have been installed: - $ ./node/node ./src/support/js/check-licenses.js + $ tsx ./src/support/js/check-licenses.ts To run checks yourself (e.g. to update the allow list or to get details), install license-checker yourself and run it from the project root directory: @@ -15,8 +15,8 @@ See also https://www.npmjs.com/package/license-checker */ -const checker = require("license-checker"); -const process = require("process"); +import { init as initChecker } from "license-checker"; +import { cwd, exit} from "node:process"; // Licenses known to be OK. const ACCEPTED_LICENSES = [ @@ -41,17 +41,19 @@ const SKIP_PACKAGES = [ "taffydb@2.6.2" // BSD-1-Clause License in source code ]; -checker.init( +initChecker( { - start: process.cwd(), + start: cwd(), onlyAllow: ACCEPTED_LICENSES.join(";"), excludePackages: SKIP_PACKAGES.join(";") }, (error, packages) => { + void packages; // currently unused + if (error) { console.error("Error: ", error); - process.exit(1); + exit(1); } - process.exit(0); + exit(0); } ); diff --git a/src/test/webapp/WEB-INF/web.xml b/src/test/webapp/WEB-INF/web.xml index 47a22e5..fc35e73 100644 --- a/src/test/webapp/WEB-INF/web.xml +++ b/src/test/webapp/WEB-INF/web.xml @@ -5,7 +5,7 @@ version="3.0"> map.apps sample - + @@ -18,7 +18,7 @@ ProxyServlet /proxy - +