From 1a34a6d54047705f095bfe38e56f211e35fded46 Mon Sep 17 00:00:00 2001 From: Friedjoff Trautwein Date: Fri, 5 May 2023 10:07:33 +0200 Subject: [PATCH 01/10] feat!: set NPM package type to module and publish only build artifacts BREAKING CHANGE: changes import paths for downstream dependencies --- .lintstagedrc.json | 3 --- package.json | 7 +++---- tasks/prepare-package.mjs | 1 + 3 files changed, 4 insertions(+), 7 deletions(-) diff --git a/.lintstagedrc.json b/.lintstagedrc.json index 30ff165e..3d618bd6 100644 --- a/.lintstagedrc.json +++ b/.lintstagedrc.json @@ -1,7 +1,4 @@ { "(src|__mocks__)/**/*.js": ["eslint --fix", "prettier --write"], - "package.json": [ - "fixpack --sortToTop name --sortToTop license --sortToTop description --sortToTop version --sortToTop author --sortToTop main --sortToTop module --sortToTop files --sortToTop proxy --sortToTop dependencies --sortToTop peerDependencies --sortToTop devDependencies --sortToTop resolutions --sortToTop scripts" - ], "src/**/*.{css,scss}": ["stylelint --fix"] } diff --git a/package.json b/package.json index 9bd7bb90..2d2d98bb 100644 --- a/package.json +++ b/package.json @@ -3,7 +3,6 @@ "license": "BSD-2-Clause", "description": "OpenLayers Editor", "version": "2.2.0", - "main": "build/index.js", "dependencies": {}, "peerDependencies": { "jsts": "^2", @@ -37,7 +36,7 @@ "typescript": "5.0.4" }, "scripts": { - "build": "shx rm -rf build && tsc --project config/tsconfig-build.json && esbuild build/index.js --bundle --global-name=ole --loader:.svg=dataurl --minify --outfile=build/bundle.js", + "build": "shx rm -rf build && tsc --project config/tsconfig-build.json && esbuild build/index.js --bundle --global-name=ole --loader:.svg=dataurl --minify --outfile=build/bundle.js && node tasks/prepare-package.mjs", "cy:open": "cypress open", "cy:run": "cypress run --headless", "cy:test": "start-server-and-test start http://127.0.0.1:8000 cy:run", @@ -45,9 +44,9 @@ "format": "prettier --write 'cypress/integration/*.js' 'src/**/*.js' && eslint 'src/**/*.js' --fix && stylelint 'style/**/*.css' 'src/**/*.css' 'src/**/*.scss' --fix", "lint": "eslint 'cypress/e2e/**/*.js' 'src/**/*.js' && stylelint 'style/**/*.css' 'src/**/*.css' 'src/**/*.scss'", "prepare": "is-ci || husky install", - "publish:beta": "yarn release -- --prerelease beta --skip.changelog && yarn build && git push origin HEAD && git push --tags && yarn publish --tag beta", + "publish:beta": "yarn release -- --prerelease beta --skip.changelog && yarn build && git push origin HEAD && git push --tags && cd build && yarn publish --tag beta", "publish:beta:dryrun": "yarn release -- --prerelease beta --dry-run --skip.changelog", - "publish:public": "yarn release && yarn build && git push origin HEAD && git push --tags && yarn publish", + "publish:public": "yarn release && yarn build && git push origin HEAD && git push --tags && cd build && yarn publish", "publish:public:dryrun": "yarn release --dry-run", "release": "standard-version", "start": "esbuild src/index.js --bundle --global-name=ole --loader:.svg=dataurl --minify --outfile=index.js --serve=localhost:8000 --servedir=. --sourcemap --watch=forever" diff --git a/tasks/prepare-package.mjs b/tasks/prepare-package.mjs index 110e72fb..a00104d6 100644 --- a/tasks/prepare-package.mjs +++ b/tasks/prepare-package.mjs @@ -9,6 +9,7 @@ function main() { // write out simplified package.json pkg.main = 'index.js'; + pkg.type = 'module'; delete pkg.devDependencies; delete pkg.scripts; const data = JSON.stringify(pkg, null, 2); From e4d7ac4c175ed3fad97d1a868794459463b7e4e5 Mon Sep 17 00:00:00 2001 From: Friedjoff Trautwein Date: Fri, 5 May 2023 10:37:18 +0200 Subject: [PATCH 02/10] chore(release): 3.0.0-beta.0 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 2d2d98bb..ea7399e0 100644 --- a/package.json +++ b/package.json @@ -2,7 +2,7 @@ "name": "ole", "license": "BSD-2-Clause", "description": "OpenLayers Editor", - "version": "2.2.0", + "version": "3.0.0-beta.0", "dependencies": {}, "peerDependencies": { "jsts": "^2", From 1a63b51229ea17b29d9ec2b1a022eb5116d3048c Mon Sep 17 00:00:00 2001 From: Friedjoff Trautwein Date: Fri, 5 May 2023 12:55:55 +0200 Subject: [PATCH 03/10] chore: move SVG files to src directory --- package.json | 2 +- src/control/buffer.js | 2 +- src/control/cad.js | 3 ++- src/control/control.js | 5 ++--- src/control/difference.js | 2 +- src/control/draw.js | 6 +++--- src/control/intersection.js | 2 +- src/control/modify.js | 2 +- src/control/rotate.js | 4 ++-- src/control/topology.js | 2 +- src/control/union.js | 2 +- {img => src/img}/buffer.svg | 0 {img => src/img}/cad.svg | 0 {img => src/img}/difference.svg | 0 {img => src/img}/draw_line.svg | 0 {img => src/img}/draw_point.svg | 0 {img => src/img}/draw_polygon.svg | 0 {img => src/img}/intersection.svg | 0 {img => src/img}/modify_geometry.svg | 0 {img => src/img}/modify_geometry2.svg | 0 {img => src/img}/rotate.svg | 0 {img => src/img}/rotate_map.svg | 0 {img => src/img}/union.svg | 0 23 files changed, 16 insertions(+), 16 deletions(-) rename {img => src/img}/buffer.svg (100%) rename {img => src/img}/cad.svg (100%) rename {img => src/img}/difference.svg (100%) rename {img => src/img}/draw_line.svg (100%) rename {img => src/img}/draw_point.svg (100%) rename {img => src/img}/draw_polygon.svg (100%) rename {img => src/img}/intersection.svg (100%) rename {img => src/img}/modify_geometry.svg (100%) rename {img => src/img}/modify_geometry2.svg (100%) rename {img => src/img}/rotate.svg (100%) rename {img => src/img}/rotate_map.svg (100%) rename {img => src/img}/union.svg (100%) diff --git a/package.json b/package.json index ea7399e0..41d44ab9 100644 --- a/package.json +++ b/package.json @@ -36,7 +36,7 @@ "typescript": "5.0.4" }, "scripts": { - "build": "shx rm -rf build && tsc --project config/tsconfig-build.json && esbuild build/index.js --bundle --global-name=ole --loader:.svg=dataurl --minify --outfile=build/bundle.js && node tasks/prepare-package.mjs", + "build": "shx rm -rf build && tsc --project config/tsconfig-build.json && shx cp -r src/img build/img && esbuild build/index.js --bundle --global-name=ole --loader:.svg=dataurl --minify --outfile=build/bundle.js && node tasks/prepare-package.mjs", "cy:open": "cypress open", "cy:run": "cypress run --headless", "cy:test": "start-server-and-test start http://127.0.0.1:8000 cy:run", diff --git a/src/control/buffer.js b/src/control/buffer.js index c18e56a2..e9736bf2 100644 --- a/src/control/buffer.js +++ b/src/control/buffer.js @@ -11,7 +11,7 @@ import { } from 'ol/geom'; import Select from 'ol/interaction/Select'; import Control from './control'; -import bufferSVG from '../../img/buffer.svg'; +import bufferSVG from '../img/buffer.svg'; /** * Control for creating buffers. diff --git a/src/control/cad.js b/src/control/cad.js index be2992c8..e177ca2d 100644 --- a/src/control/cad.js +++ b/src/control/cad.js @@ -6,7 +6,7 @@ import VectorSource from 'ol/source/Vector'; import { Pointer, Snap } from 'ol/interaction'; import { OverlayOp } from 'jsts/org/locationtech/jts/operation/overlay'; import Control from './control'; -import cadSVG from '../../img/cad.svg'; +import cadSVG from '../img/cad.svg'; import { SnapEvent, SnapEventType } from '../event'; import { parser, @@ -50,6 +50,7 @@ class CadControl extends Control { * must be an array containing the following values 'ortho', 'segment', 'vh'. Default is ['ortho', 'segment', 'vh', 'custom']. * @param {Number} [options.snapPointDist] Distance of the * snap points (default is 30). + * @param {ol.source.Vector} [options.source] Vector source holding edit features. * @param {Boolean} [options.useMapUnits] Whether to use map units * as measurement for point snapping. Default is false (pixel are used). * @param {ol.style.Style.StyleLike} [options.snapStyle] Style used for the snap layer. diff --git a/src/control/control.js b/src/control/control.js index 80ae120d..26201797 100644 --- a/src/control/control.js +++ b/src/control/control.js @@ -15,10 +15,9 @@ class Control extends OLControl { * @param {Image} options.image Control toolbar image. * @param {HTMLElement} [options.dialogTarget] Specify a target if you want * the dialog div used by the control to be rendered outside of the map's viewport. Set tio null if you don't want to display the dialog of a control. - * @param {ol.source.Vector} [options.source] Vector source holding - * edit features. If undefined, options.features must be passed. + * @param {ol.source.Vector} [options.source] Vector source holding edit features. * @param {ol.Collection} [options.features] Collection of - * edit features. If undefined, options.source must be set. + * edit features. Requires options.source to be set. * @param {function} [options.layerFilter] Filter editable layer. */ constructor(options) { diff --git a/src/control/difference.js b/src/control/difference.js index fa4ae283..f11ade61 100644 --- a/src/control/difference.js +++ b/src/control/difference.js @@ -10,7 +10,7 @@ import { MultiPolygon, } from 'ol/geom'; import TopologyControl from './topology'; -import diffSVG from '../../img/difference.svg'; +import diffSVG from '../img/difference.svg'; /** * Control for creating a difference of geometries. diff --git a/src/control/draw.js b/src/control/draw.js index 8ad209bb..40110243 100644 --- a/src/control/draw.js +++ b/src/control/draw.js @@ -1,8 +1,8 @@ import { Draw } from 'ol/interaction'; import Control from './control'; -import drawPointSVG from '../../img/draw_point.svg'; -import drawPolygonSVG from '../../img/draw_polygon.svg'; -import drawLineSVG from '../../img/draw_line.svg'; +import drawPointSVG from '../img/draw_point.svg'; +import drawPolygonSVG from '../img/draw_polygon.svg'; +import drawLineSVG from '../img/draw_line.svg'; /** * Control for drawing features. diff --git a/src/control/intersection.js b/src/control/intersection.js index be5c14c8..e6ee2267 100644 --- a/src/control/intersection.js +++ b/src/control/intersection.js @@ -10,7 +10,7 @@ import { MultiPolygon, } from 'ol/geom'; import TopologyControl from './topology'; -import intersectionSVG from '../../img/intersection.svg'; +import intersectionSVG from '../img/intersection.svg'; /** * Control for intersection geometries. diff --git a/src/control/modify.js b/src/control/modify.js index cfbc14aa..a1251ced 100644 --- a/src/control/modify.js +++ b/src/control/modify.js @@ -1,7 +1,7 @@ import { Modify, Interaction } from 'ol/interaction'; import { singleClick } from 'ol/events/condition'; import Control from './control'; -import image from '../../img/modify_geometry2.svg'; +import image from '../img/modify_geometry2.svg'; import SelectMove from '../interaction/selectmove'; import SelectModify from '../interaction/selectmodify'; import Move from '../interaction/move'; diff --git a/src/control/rotate.js b/src/control/rotate.js index af3c8e53..742c61fa 100644 --- a/src/control/rotate.js +++ b/src/control/rotate.js @@ -4,8 +4,8 @@ import Vector from 'ol/layer/Vector'; import VectorSource from 'ol/source/Vector'; import Pointer from 'ol/interaction/Pointer'; import Control from './control'; -import rotateSVG from '../../img/rotate.svg'; -import rotateMapSVG from '../../img/rotate_map.svg'; +import rotateSVG from '../img/rotate.svg'; +import rotateMapSVG from '../img/rotate_map.svg'; /** * Tool with for rotating geometries. diff --git a/src/control/topology.js b/src/control/topology.js index 8cf29b8c..829d44ab 100644 --- a/src/control/topology.js +++ b/src/control/topology.js @@ -1,6 +1,6 @@ import Select from 'ol/interaction/Select'; import Control from './control'; -import delSVG from '../../img/buffer.svg'; +import delSVG from '../img/buffer.svg'; /** * Control for deleting geometries. diff --git a/src/control/union.js b/src/control/union.js index e3ab4490..f7b5380c 100644 --- a/src/control/union.js +++ b/src/control/union.js @@ -10,7 +10,7 @@ import { MultiPolygon, } from 'ol/geom'; import TopologyControl from './topology'; -import unionSVG from '../../img/union.svg'; +import unionSVG from '../img/union.svg'; /** * Control for creating a union of geometries. diff --git a/img/buffer.svg b/src/img/buffer.svg similarity index 100% rename from img/buffer.svg rename to src/img/buffer.svg diff --git a/img/cad.svg b/src/img/cad.svg similarity index 100% rename from img/cad.svg rename to src/img/cad.svg diff --git a/img/difference.svg b/src/img/difference.svg similarity index 100% rename from img/difference.svg rename to src/img/difference.svg diff --git a/img/draw_line.svg b/src/img/draw_line.svg similarity index 100% rename from img/draw_line.svg rename to src/img/draw_line.svg diff --git a/img/draw_point.svg b/src/img/draw_point.svg similarity index 100% rename from img/draw_point.svg rename to src/img/draw_point.svg diff --git a/img/draw_polygon.svg b/src/img/draw_polygon.svg similarity index 100% rename from img/draw_polygon.svg rename to src/img/draw_polygon.svg diff --git a/img/intersection.svg b/src/img/intersection.svg similarity index 100% rename from img/intersection.svg rename to src/img/intersection.svg diff --git a/img/modify_geometry.svg b/src/img/modify_geometry.svg similarity index 100% rename from img/modify_geometry.svg rename to src/img/modify_geometry.svg diff --git a/img/modify_geometry2.svg b/src/img/modify_geometry2.svg similarity index 100% rename from img/modify_geometry2.svg rename to src/img/modify_geometry2.svg diff --git a/img/rotate.svg b/src/img/rotate.svg similarity index 100% rename from img/rotate.svg rename to src/img/rotate.svg diff --git a/img/rotate_map.svg b/src/img/rotate_map.svg similarity index 100% rename from img/rotate_map.svg rename to src/img/rotate_map.svg diff --git a/img/union.svg b/src/img/union.svg similarity index 100% rename from img/union.svg rename to src/img/union.svg From b27978a22a4170e38022676a5730ceb29b919cd1 Mon Sep 17 00:00:00 2001 From: Friedjoff Trautwein Date: Fri, 5 May 2023 12:56:08 +0200 Subject: [PATCH 04/10] chore(release): 3.0.0-beta.1 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 41d44ab9..e54b63de 100644 --- a/package.json +++ b/package.json @@ -2,7 +2,7 @@ "name": "ole", "license": "BSD-2-Clause", "description": "OpenLayers Editor", - "version": "3.0.0-beta.0", + "version": "3.0.0-beta.1", "dependencies": {}, "peerDependencies": { "jsts": "^2", From d245db0158585d1adfa8d0663cd98ec593d7a47f Mon Sep 17 00:00:00 2001 From: Olivier Terral Date: Fri, 2 Aug 2024 15:18:59 +0200 Subject: [PATCH 05/10] chore(release): 3.0.0-beta.0 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index feaed503..70e90a24 100644 --- a/package.json +++ b/package.json @@ -2,7 +2,7 @@ "name": "ole", "license": "BSD-2-Clause", "description": "OpenLayers Editor", - "version": "2.4.3", + "version": "3.0.0-beta.0", "main": "build/index.js", "dependencies": {}, "peerDependencies": { From e1b4b5cc57c896e5582be2c93e5a097dd5f9cf6c Mon Sep 17 00:00:00 2001 From: Olivier Terral Date: Fri, 2 Aug 2024 15:19:07 +0200 Subject: [PATCH 06/10] chore(release): 3.0.0-beta.1 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 70e90a24..5d3b18e9 100644 --- a/package.json +++ b/package.json @@ -2,7 +2,7 @@ "name": "ole", "license": "BSD-2-Clause", "description": "OpenLayers Editor", - "version": "3.0.0-beta.0", + "version": "3.0.0-beta.1", "main": "build/index.js", "dependencies": {}, "peerDependencies": { From f1c128a0956d92a3f7ea36334dfe477a7e0720b1 Mon Sep 17 00:00:00 2001 From: Olivier Terral Date: Fri, 2 Aug 2024 15:19:25 +0200 Subject: [PATCH 07/10] chore(release): 3.0.0-beta.2 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 5d3b18e9..8f3f4a4f 100644 --- a/package.json +++ b/package.json @@ -2,7 +2,7 @@ "name": "ole", "license": "BSD-2-Clause", "description": "OpenLayers Editor", - "version": "3.0.0-beta.1", + "version": "3.0.0-beta.2", "main": "build/index.js", "dependencies": {}, "peerDependencies": { From b41b666ebed92ee4bcc765d1d377111a1bd46377 Mon Sep 17 00:00:00 2001 From: Olivier Terral Date: Tue, 20 Aug 2024 15:27:27 +0200 Subject: [PATCH 08/10] chore(release): 3.0.0-beta.3 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 4476c598..7f36e170 100644 --- a/package.json +++ b/package.json @@ -2,7 +2,7 @@ "name": "ole", "license": "BSD-2-Clause", "description": "OpenLayers Editor", - "version": "3.0.0-beta.2", + "version": "3.0.0-beta.3", "main": "build/index.js", "dependencies": {}, "peerDependencies": { From 8cd09d5b927e944883141c6e21981d5823fe6fe4 Mon Sep 17 00:00:00 2001 From: Olivier Terral Date: Tue, 20 Aug 2024 16:44:57 +0200 Subject: [PATCH 09/10] chore(release): 3.0.0-beta.4 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 7f36e170..c8ee1760 100644 --- a/package.json +++ b/package.json @@ -2,7 +2,7 @@ "name": "ole", "license": "BSD-2-Clause", "description": "OpenLayers Editor", - "version": "3.0.0-beta.3", + "version": "3.0.0-beta.4", "main": "build/index.js", "dependencies": {}, "peerDependencies": { From b9476e56679cbfe03cc42989549a5e8489d388ac Mon Sep 17 00:00:00 2001 From: Olivier Terral Date: Thu, 22 Aug 2024 11:01:20 +0200 Subject: [PATCH 10/10] chore(release): 3.0.0-beta.5 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index c8ee1760..4a9a2fde 100644 --- a/package.json +++ b/package.json @@ -2,7 +2,7 @@ "name": "ole", "license": "BSD-2-Clause", "description": "OpenLayers Editor", - "version": "3.0.0-beta.4", + "version": "3.0.0-beta.5", "main": "build/index.js", "dependencies": {}, "peerDependencies": {