From b083163f60acaea29d191537b55f90436a03609d Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 7 Aug 2024 08:59:43 +0200 Subject: [PATCH 01/14] Bump postcss from 8.4.40 to 8.4.41 (#10387) Bumps [postcss](https://github.com/postcss/postcss) from 8.4.40 to 8.4.41. - [Release notes](https://github.com/postcss/postcss/releases) - [Changelog](https://github.com/postcss/postcss/blob/main/CHANGELOG.md) - [Commits](https://github.com/postcss/postcss/compare/8.4.40...8.4.41) --- updated-dependencies: - dependency-name: postcss dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package-lock.json | 14 +++++++------- package.json | 2 +- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/package-lock.json b/package-lock.json index 7ff3c40e28..a992b7be36 100644 --- a/package-lock.json +++ b/package-lock.json @@ -77,7 +77,7 @@ "name-suggestion-index": "~6.0", "npm-run-all": "^4.0.0", "osm-community-index": "~5.8.0", - "postcss": "^8.4.40", + "postcss": "^8.4.41", "postcss-selector-prepend": "^0.5.0", "shelljs": "^0.8.0", "shx": "^0.3.0", @@ -7189,9 +7189,9 @@ } }, "node_modules/postcss": { - "version": "8.4.40", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.40.tgz", - "integrity": "sha512-YF2kKIUzAofPMpfH6hOi2cGnv/HrUlfucspc7pDyvv7kGdqXrfj8SCl/t8owkEgKEuu8ZcRjSOxFxVLqwChZ2Q==", + "version": "8.4.41", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.41.tgz", + "integrity": "sha512-TesUflQ0WKZqAvg52PWL6kHgLKP6xB6heTOdoYM0Wt2UHyxNa4K25EZZMgKns3BH1RLVbZCREPpLY0rhnNoHVQ==", "dev": true, "funding": [ { @@ -14169,9 +14169,9 @@ "integrity": "sha512-d7Uw+eZoloe0EHDIYoe+bQ5WXnGMOpmiZFTuMWCwpjzzkL2nTjcKiAk4hh8TjnGye2TwWOk3UXucZ+3rbmBa8Q==" }, "postcss": { - "version": "8.4.40", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.40.tgz", - "integrity": "sha512-YF2kKIUzAofPMpfH6hOi2cGnv/HrUlfucspc7pDyvv7kGdqXrfj8SCl/t8owkEgKEuu8ZcRjSOxFxVLqwChZ2Q==", + "version": "8.4.41", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.41.tgz", + "integrity": "sha512-TesUflQ0WKZqAvg52PWL6kHgLKP6xB6heTOdoYM0Wt2UHyxNa4K25EZZMgKns3BH1RLVbZCREPpLY0rhnNoHVQ==", "dev": true, "requires": { "nanoid": "^3.3.7", diff --git a/package.json b/package.json index 2fa8ffb5ef..e52bc2f29f 100644 --- a/package.json +++ b/package.json @@ -112,7 +112,7 @@ "name-suggestion-index": "~6.0", "npm-run-all": "^4.0.0", "osm-community-index": "~5.8.0", - "postcss": "^8.4.40", + "postcss": "^8.4.41", "postcss-selector-prepend": "^0.5.0", "shelljs": "^0.8.0", "shx": "^0.3.0", From 67842297a1fbc8165474e71059078faf6dcdb68e Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 7 Aug 2024 09:00:29 +0200 Subject: [PATCH 02/14] Bump autoprefixer from 10.4.19 to 10.4.20 (#10384) Bumps [autoprefixer](https://github.com/postcss/autoprefixer) from 10.4.19 to 10.4.20. - [Release notes](https://github.com/postcss/autoprefixer/releases) - [Changelog](https://github.com/postcss/autoprefixer/blob/main/CHANGELOG.md) - [Commits](https://github.com/postcss/autoprefixer/compare/10.4.19...10.4.20) --- updated-dependencies: - dependency-name: autoprefixer dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package-lock.json | 26 +++++++++++++------------- package.json | 2 +- 2 files changed, 14 insertions(+), 14 deletions(-) diff --git a/package-lock.json b/package-lock.json index a992b7be36..f267dc9d55 100644 --- a/package-lock.json +++ b/package-lock.json @@ -46,7 +46,7 @@ "@rapideditor/mapillary_sprite_source": "^1.8.0", "@rapideditor/temaki": "^5.9.0", "@transifex/api": "^7.1.2", - "autoprefixer": "^10.4.19", + "autoprefixer": "^10.4.20", "browserslist": "^4.23.3", "browserslist-to-esbuild": "^2.1.1", "chai": "^4.5.0", @@ -2030,9 +2030,9 @@ "dev": true }, "node_modules/autoprefixer": { - "version": "10.4.19", - "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.19.tgz", - "integrity": "sha512-BaENR2+zBZ8xXhM4pUaKUxlVdxZ0EZhjvbopwnXmxRUfqDmwSpC2lAi/QXvx7NRdPCo1WKEcEF6mV64si1z4Ew==", + "version": "10.4.20", + "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.20.tgz", + "integrity": "sha512-XY25y5xSv/wEoqzDyXXME4AFfkZI0P23z6Fs3YgymDnKJkCGOnkL0iTxCa85UTqaSgfcqyf3UA6+c7wUvx/16g==", "dev": true, "funding": [ { @@ -2049,11 +2049,11 @@ } ], "dependencies": { - "browserslist": "^4.23.0", - "caniuse-lite": "^1.0.30001599", + "browserslist": "^4.23.3", + "caniuse-lite": "^1.0.30001646", "fraction.js": "^4.3.7", "normalize-range": "^0.1.2", - "picocolors": "^1.0.0", + "picocolors": "^1.0.1", "postcss-value-parser": "^4.2.0" }, "bin": { @@ -10681,16 +10681,16 @@ "dev": true }, "autoprefixer": { - "version": "10.4.19", - "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.19.tgz", - "integrity": "sha512-BaENR2+zBZ8xXhM4pUaKUxlVdxZ0EZhjvbopwnXmxRUfqDmwSpC2lAi/QXvx7NRdPCo1WKEcEF6mV64si1z4Ew==", + "version": "10.4.20", + "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.20.tgz", + "integrity": "sha512-XY25y5xSv/wEoqzDyXXME4AFfkZI0P23z6Fs3YgymDnKJkCGOnkL0iTxCa85UTqaSgfcqyf3UA6+c7wUvx/16g==", "dev": true, "requires": { - "browserslist": "^4.23.0", - "caniuse-lite": "^1.0.30001599", + "browserslist": "^4.23.3", + "caniuse-lite": "^1.0.30001646", "fraction.js": "^4.3.7", "normalize-range": "^0.1.2", - "picocolors": "^1.0.0", + "picocolors": "^1.0.1", "postcss-value-parser": "^4.2.0" } }, diff --git a/package.json b/package.json index e52bc2f29f..5bf85c9692 100644 --- a/package.json +++ b/package.json @@ -81,7 +81,7 @@ "@rapideditor/mapillary_sprite_source": "^1.8.0", "@rapideditor/temaki": "^5.9.0", "@transifex/api": "^7.1.2", - "autoprefixer": "^10.4.19", + "autoprefixer": "^10.4.20", "browserslist": "^4.23.3", "browserslist-to-esbuild": "^2.1.1", "chai": "^4.5.0", From 93e9565f9e084fac1554ea0256faf93bea00f289 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 7 Aug 2024 09:00:44 +0200 Subject: [PATCH 03/14] Bump core-js-bundle from 3.37.1 to 3.38.0 (#10383) Bumps [core-js-bundle](https://github.com/zloirock/core-js/tree/HEAD/packages/core-js-bundle) from 3.37.1 to 3.38.0. - [Release notes](https://github.com/zloirock/core-js/releases) - [Changelog](https://github.com/zloirock/core-js/blob/master/CHANGELOG.md) - [Commits](https://github.com/zloirock/core-js/commits/v3.38.0/packages/core-js-bundle) --- updated-dependencies: - dependency-name: core-js-bundle dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package-lock.json | 14 +++++++------- package.json | 2 +- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/package-lock.json b/package-lock.json index f267dc9d55..deabc370fd 100644 --- a/package-lock.json +++ b/package-lock.json @@ -20,7 +20,7 @@ "abortcontroller-polyfill": "^1.7.5", "aes-js": "^3.1.2", "alif-toolkit": "^1.3.0", - "core-js-bundle": "^3.37.1", + "core-js-bundle": "^3.38.0", "diacritics": "1.3.0", "exifr": "^7.1.3", "fast-deep-equal": "~3.1.1", @@ -2648,9 +2648,9 @@ } }, "node_modules/core-js-bundle": { - "version": "3.37.1", - "resolved": "https://registry.npmjs.org/core-js-bundle/-/core-js-bundle-3.37.1.tgz", - "integrity": "sha512-Bt9sorQku7bA6xoaY2NYdeaEnitLg9peHJ+eAijrARCQ5FhkoUW1eF4oI35XfP9kyeyljw71uCud4ju8tjGhsg==", + "version": "3.38.0", + "resolved": "https://registry.npmjs.org/core-js-bundle/-/core-js-bundle-3.38.0.tgz", + "integrity": "sha512-YjlkIsq3je9JSpsD+jBF5gI4rwnvJjTbLPSuZWcmbt0jS6bbGkU/aLk/sXkLHo5+CMd29JVRarHADlbRAymX0g==", "hasInstallScript": true, "funding": { "type": "opencollective", @@ -11098,9 +11098,9 @@ "dev": true }, "core-js-bundle": { - "version": "3.37.1", - "resolved": "https://registry.npmjs.org/core-js-bundle/-/core-js-bundle-3.37.1.tgz", - "integrity": "sha512-Bt9sorQku7bA6xoaY2NYdeaEnitLg9peHJ+eAijrARCQ5FhkoUW1eF4oI35XfP9kyeyljw71uCud4ju8tjGhsg==" + "version": "3.38.0", + "resolved": "https://registry.npmjs.org/core-js-bundle/-/core-js-bundle-3.38.0.tgz", + "integrity": "sha512-YjlkIsq3je9JSpsD+jBF5gI4rwnvJjTbLPSuZWcmbt0jS6bbGkU/aLk/sXkLHo5+CMd29JVRarHADlbRAymX0g==" }, "core-util-is": { "version": "1.0.3", diff --git a/package.json b/package.json index 5bf85c9692..4d99682ff9 100644 --- a/package.json +++ b/package.json @@ -55,7 +55,7 @@ "abortcontroller-polyfill": "^1.7.5", "aes-js": "^3.1.2", "alif-toolkit": "^1.3.0", - "core-js-bundle": "^3.37.1", + "core-js-bundle": "^3.38.0", "diacritics": "1.3.0", "exifr": "^7.1.3", "fast-deep-equal": "~3.1.1", From 309735c25e7a43c157218d638312fd36067deb3d Mon Sep 17 00:00:00 2001 From: Mattia Pezzotti <45800507+mattiapezzotti@users.noreply.github.com> Date: Wed, 7 Aug 2024 09:03:20 +0200 Subject: [PATCH 04/14] Fix panoramax blur when switching imagery (#10385) fixes #10362 --- modules/services/pannellum_photo.js | 2 ++ modules/svg/panoramax_images.js | 1 + 2 files changed, 3 insertions(+) diff --git a/modules/services/pannellum_photo.js b/modules/services/pannellum_photo.js index 99222d4d2c..262ee660b2 100644 --- a/modules/services/pannellum_photo.js +++ b/modules/services/pannellum_photo.js @@ -147,6 +147,8 @@ export default { _pannellumViewer.removeScene(old_key); } + _pannellumViewer.resize(); + return this; }, diff --git a/modules/svg/panoramax_images.js b/modules/svg/panoramax_images.js index 7ef8762102..17f8ac1587 100644 --- a/modules/svg/panoramax_images.js +++ b/modules/svg/panoramax_images.js @@ -295,6 +295,7 @@ export function svgPanoramaxImages(projection, context, dispatch) { if (!service) return; const frame = service.photoFrame(); + if (!frame) return; // update viewfield rotation _viewerYaw = frame.getYaw(); From 9f643aaae1a2a1cb10afd2373506498894dc41ab Mon Sep 17 00:00:00 2001 From: Mattia Pezzotti <45800507+mattiapezzotti@users.noreply.github.com> Date: Wed, 7 Aug 2024 09:08:54 +0200 Subject: [PATCH 05/14] hide panoramax markers in low zoom overview (#10386) fixes #10377 --- modules/svg/panoramax_images.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/modules/svg/panoramax_images.js b/modules/svg/panoramax_images.js index 17f8ac1587..9eb355e9ba 100644 --- a/modules/svg/panoramax_images.js +++ b/modules/svg/panoramax_images.js @@ -211,7 +211,7 @@ export function svgPanoramaxImages(projection, context, dispatch) { const service = getService(); let sequences = (service ? service.sequences(projection, zoom) : []); - let images = (service ? service.images(projection) : []); + let images = (service && zoom >= imageMinZoom ? service.images(projection) : []); images = await filterImages(images); sequences = await filterSequences(sequences, service); From 7e111944dbd06b07365320f5984baeacb6d07c73 Mon Sep 17 00:00:00 2001 From: Martin Raifer Date: Wed, 7 Aug 2024 09:30:46 +0200 Subject: [PATCH 06/14] try to equally space to be rendered markers in mid zoom levels closes #10378 --- modules/services/panoramax.js | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/modules/services/panoramax.js b/modules/services/panoramax.js index b4457d7fa6..8e079fea2f 100644 --- a/modules/services/panoramax.js +++ b/modules/services/panoramax.js @@ -65,7 +65,10 @@ function searchLimited(limit, projection, rtree) { return partitionViewport(projection) .reduce(function(result, extent) { - const found = rtree.search(extent.bbox()) + let found = rtree.search(extent.bbox()); + const spacing = Math.max(1, Math.floor(found.length / limit)); + found = found + .filter((_, idx) => idx % spacing === 0) .slice(0, limit) .map(function(d) { return d.data; }); From 136308821a09e97b926c255b28b889d2dc60550c Mon Sep 17 00:00:00 2001 From: Martin Raifer Date: Wed, 7 Aug 2024 09:54:54 +0200 Subject: [PATCH 07/14] make sure the active image is rendered above other photo markers --- modules/services/panoramax.js | 8 +++++++- modules/svg/panoramax_images.js | 3 +++ 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/modules/services/panoramax.js b/modules/services/panoramax.js index 8e079fea2f..021cc4ee52 100644 --- a/modules/services/panoramax.js +++ b/modules/services/panoramax.js @@ -68,7 +68,13 @@ function searchLimited(limit, projection, rtree) { let found = rtree.search(extent.bbox()); const spacing = Math.max(1, Math.floor(found.length / limit)); found = found - .filter((_, idx) => idx % spacing === 0) + .filter((d, idx) => idx % spacing === 0 || + d.data.id === _activeImage?.id) + .sort((a, b) => { + if (a.data.id === _activeImage?.id) return -1; + if (b.data.id === _activeImage?.id) return 1; + return 0; + }) .slice(0, limit) .map(function(d) { return d.data; }); diff --git a/modules/svg/panoramax_images.js b/modules/svg/panoramax_images.js index 9eb355e9ba..e4374e3764 100644 --- a/modules/svg/panoramax_images.js +++ b/modules/svg/panoramax_images.js @@ -249,10 +249,13 @@ export function svgPanoramaxImages(projection, context, dispatch) { .append('g') .attr('class', 'viewfield-scale'); + const activeImageId = service.getActiveImage()?.id; // update const markers = groups .merge(groupsEnter) .sort(function(a, b) { + if (a.id === activeImageId) return 1; + if (b.id === activeImageId) return -1; return b.loc[1] - a.loc[1]; // sort Y }) .attr('transform', transform) From a8e438c58dfaebab50d04e14711a5e8eb6417024 Mon Sep 17 00:00:00 2001 From: Martin Raifer Date: Wed, 7 Aug 2024 10:00:59 +0200 Subject: [PATCH 08/14] sort markers by date (newest on top) --- modules/services/panoramax.js | 3 ++- modules/svg/panoramax_images.js | 4 +++- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/modules/services/panoramax.js b/modules/services/panoramax.js index 021cc4ee52..1e0efb2c62 100644 --- a/modules/services/panoramax.js +++ b/modules/services/panoramax.js @@ -76,7 +76,7 @@ function searchLimited(limit, projection, rtree) { return 0; }) .slice(0, limit) - .map(function(d) { return d.data; }); + .map(d => d.data); return (found.length ? result.concat(found) : result); }, []); @@ -158,6 +158,7 @@ function loadTileDataToCache(data, tile, zoom) { d = { loc: loc, capture_time: feature.properties.ts, + capture_time_parsed: new Date(feature.properties.ts), id: feature.properties.id, account_id: feature.properties.account_id, sequence_id: feature.properties.sequences.split('\"')[1], diff --git a/modules/svg/panoramax_images.js b/modules/svg/panoramax_images.js index e4374e3764..439564f42a 100644 --- a/modules/svg/panoramax_images.js +++ b/modules/svg/panoramax_images.js @@ -254,9 +254,11 @@ export function svgPanoramaxImages(projection, context, dispatch) { const markers = groups .merge(groupsEnter) .sort(function(a, b) { + // active image on top if (a.id === activeImageId) return 1; if (b.id === activeImageId) return -1; - return b.loc[1] - a.loc[1]; // sort Y + // else: sort by capture time (newest on top) + return a.capture_time_parsed - b.capture_time_parsed; }) .attr('transform', transform) .select('.viewfield-scale'); From 64ac9dd711acffa35b20ded8af14f1ee36afff67 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 8 Aug 2024 12:50:25 +0200 Subject: [PATCH 09/14] Bump marked from 13.0.3 to 14.0.0 (#10389) Bumps [marked](https://github.com/markedjs/marked) from 13.0.3 to 14.0.0. - [Release notes](https://github.com/markedjs/marked/releases) - [Changelog](https://github.com/markedjs/marked/blob/master/.releaserc.json) - [Commits](https://github.com/markedjs/marked/compare/v13.0.3...v14.0.0) --- updated-dependencies: - dependency-name: marked dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package-lock.json | 14 +++++++------- package.json | 2 +- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/package-lock.json b/package-lock.json index deabc370fd..99f7b897c0 100644 --- a/package-lock.json +++ b/package-lock.json @@ -26,7 +26,7 @@ "fast-deep-equal": "~3.1.1", "fast-json-stable-stringify": "2.1.0", "lodash-es": "~4.17.15", - "marked": "~13.0.3", + "marked": "~14.0.0", "node-diff3": "~3.1.0", "osm-auth": "~2.5.0", "pannellum": "2.5.6", @@ -6120,9 +6120,9 @@ } }, "node_modules/marked": { - "version": "13.0.3", - "resolved": "https://registry.npmjs.org/marked/-/marked-13.0.3.tgz", - "integrity": "sha512-rqRix3/TWzE9rIoFGIn8JmsVfhiuC8VIQ8IdX5TfzmeBucdY05/0UlzKaw0eVtpcN/OdVFpBk7CjKGo9iHJ/zA==", + "version": "14.0.0", + "resolved": "https://registry.npmjs.org/marked/-/marked-14.0.0.tgz", + "integrity": "sha512-uIj4+faQ+MgHgwUW1l2PsPglZLOLOT1uErt06dAPtx2kjteLAkbsd/0FiYg/MGS+i7ZKLb7w2WClxHkzOOuryQ==", "bin": { "marked": "bin/marked.js" }, @@ -13436,9 +13436,9 @@ } }, "marked": { - "version": "13.0.3", - "resolved": "https://registry.npmjs.org/marked/-/marked-13.0.3.tgz", - "integrity": "sha512-rqRix3/TWzE9rIoFGIn8JmsVfhiuC8VIQ8IdX5TfzmeBucdY05/0UlzKaw0eVtpcN/OdVFpBk7CjKGo9iHJ/zA==" + "version": "14.0.0", + "resolved": "https://registry.npmjs.org/marked/-/marked-14.0.0.tgz", + "integrity": "sha512-uIj4+faQ+MgHgwUW1l2PsPglZLOLOT1uErt06dAPtx2kjteLAkbsd/0FiYg/MGS+i7ZKLb7w2WClxHkzOOuryQ==" }, "martinez-polygon-clipping": { "version": "0.7.3", diff --git a/package.json b/package.json index 4d99682ff9..df6a33c4bd 100644 --- a/package.json +++ b/package.json @@ -61,7 +61,7 @@ "fast-deep-equal": "~3.1.1", "fast-json-stable-stringify": "2.1.0", "lodash-es": "~4.17.15", - "marked": "~13.0.3", + "marked": "~14.0.0", "node-diff3": "~3.1.0", "osm-auth": "~2.5.0", "pannellum": "2.5.6", From f570d9bfa301e52391d15e3d0ea3a1163f19dad6 Mon Sep 17 00:00:00 2001 From: Martin Raifer Date: Thu, 8 Aug 2024 13:06:44 +0200 Subject: [PATCH 10/14] increase max zoom for panellum viewer, closes #10391 --- modules/services/pannellum_photo.js | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/modules/services/pannellum_photo.js b/modules/services/pannellum_photo.js index 262ee660b2..566358edde 100644 --- a/modules/services/pannellum_photo.js +++ b/modules/services/pannellum_photo.js @@ -27,7 +27,8 @@ export default { const options = { 'default': { firstScene: '' }, - scenes: {} + scenes: {}, + minHfov: 20 }; _pannellumViewer = window.pannellum.viewer('ideditor-pannellum-viewer', options); From 43dab66b3adc08502a2952e55e49e12084790535 Mon Sep 17 00:00:00 2001 From: Martin Raifer Date: Thu, 8 Aug 2024 13:58:12 +0200 Subject: [PATCH 11/14] only rotate selected image's cone to viewer yaw, fixes #10390 --- modules/svg/panoramax_images.js | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/modules/svg/panoramax_images.js b/modules/svg/panoramax_images.js index 439564f42a..e4857ece3c 100644 --- a/modules/svg/panoramax_images.js +++ b/modules/svg/panoramax_images.js @@ -153,9 +153,12 @@ export function svgPanoramaxImages(projection, context, dispatch) { .on('end', editOff); } - function transform(d) { + function transform(d, selectedImageId) { let t = svgPointTransform(projection)(d); - var rot = d.heading + _viewerYaw; + let rot = d.heading; + if (d.id === selectedImageId) { + rot += _viewerYaw; + } if (rot) { t += ' rotate(' + Math.floor(rot) + ',0,0)'; } @@ -260,7 +263,7 @@ export function svgPanoramaxImages(projection, context, dispatch) { // else: sort by capture time (newest on top) return a.capture_time_parsed - b.capture_time_parsed; }) - .attr('transform', transform) + .attr('transform', d => transform(d, activeImageId)) .select('.viewfield-scale'); @@ -310,7 +313,7 @@ export function svgPanoramaxImages(projection, context, dispatch) { if (context.map().isTransformed()) return; layer.selectAll('.viewfield-group.currentView') - .attr('transform', transform); + .attr('transform', d => transform(d, d.id)); } From 9e239df5690ae2c708db12d0fa824b574fbf991f Mon Sep 17 00:00:00 2001 From: Martin Raifer Date: Thu, 8 Aug 2024 14:44:50 +0200 Subject: [PATCH 12/14] fix intermittent issues with Bing Streetside API sometimes the API returns data in a format not matching the documented format (see https://learn.microsoft.com/en-us/bingmaps/articles/getting-streetside-tiles-from-imagery-metadata). see https://github.com/openstreetmap/iD/issues/10341#issuecomment-2275724738 closes #10341 --- CHANGELOG.md | 1 + modules/services/streetside.js | 8 ++++++-- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index cc8bf7ea03..efa3e95ebc 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -46,6 +46,7 @@ _Breaking developer changes, which may affect downstream projects or sites that #### :scissors: Operations #### :camera: Street-Level * Add Panoramax as new street level imagery provider ([#9941], thanks [@mattiapezzotti]) +* Fix intermittent issues with Bing Streetside sometimes returning API results in a undocumented format ([#10341]) #### :white_check_mark: Validation * Drop deprecated validation service _ImproveOSM_ ([#10302], thanks [@arch0345]) #### :bug: Bugfixes diff --git a/modules/services/streetside.js b/modules/services/streetside.js index def9bc0e3d..7f4893948a 100644 --- a/modules/services/streetside.js +++ b/modules/services/streetside.js @@ -114,14 +114,18 @@ function loadNextTilePage(which, url, tile) { const bubbleId = bubble.imageUrl; if (cache.points[bubbleId]) return null; // skip duplicates - const loc = [bubble.lon, bubble.lat]; + // workaround for https://github.com/openstreetmap/iD/issues/10341#issuecomment-2275724738 + const loc = [ + bubble.lon || bubble.longitude, + bubble.lat || bubble.latitude + ]; const d = { loc: loc, key: bubbleId, imageUrl: bubble.imageUrl.replace('{subdomain}', bubble.imageUrlSubdomains[0] ), - ca: bubble.he, + ca: bubble.he || bubble.heading, captured_at: bubble.vintageEnd, captured_by: 'microsoft', pano: true, From b0e47ca93cb1dfee956fe03172115883efd4c6f9 Mon Sep 17 00:00:00 2001 From: Martin Raifer Date: Thu, 8 Aug 2024 14:55:46 +0200 Subject: [PATCH 13/14] make sure viewer is visible before selecting photo otherwise the newly selected photo is not displayed correctly when switching between regular and 360 photos see #10362 --- modules/services/panoramax.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/modules/services/panoramax.js b/modules/services/panoramax.js index 1e0efb2c62..14fb109151 100644 --- a/modules/services/panoramax.js +++ b/modules/services/panoramax.js @@ -501,8 +501,8 @@ export default { _currentFrame = d.isPano ? _pannellumFrame : _planeFrame; _currentFrame - .selectPhoto(d, true) - .showPhotoFrame(wrap); + .showPhotoFrame(wrap) + .selectPhoto(d, true); }); function localeDateString(s) { From ba8d52e3c9ce7bf674693ef5144f7cf4a3c9bff1 Mon Sep 17 00:00:00 2001 From: Martin Raifer Date: Thu, 8 Aug 2024 17:21:48 +0200 Subject: [PATCH 14/14] update interim source for presets see https://github.com/openstreetmap/id-tagging-schema/pull/1307 --- scripts/build_data.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/build_data.js b/scripts/build_data.js index a5dcd2a79b..f89b841c4a 100644 --- a/scripts/build_data.js +++ b/scripts/build_data.js @@ -121,7 +121,7 @@ function buildData() { }); }).then(() => // also fetch the bleeding edge data too to make sure we're always hosting the latest icons - fetch('https://github.com/raw/openstreetmap/id-tagging-schema/main/interim/icons.json') + fetch('https://github.com/raw/openstreetmap/id-tagging-schema/interim/icons.json') ).then(response => response.json()).then(cuttingEdgeIcons => { cuttingEdgeIcons .filter(icon => /^fa[srb]-/.test(icon))