i.selectedIDs is not a function error when switching between street level imagery sequences
URL
No response
How to reproduce the issue?
Error found in console while editing. Not sure how to reproduce, only happened once so far, but likely small error in the code.
id-316f4f96984fe6c0b21f27749e1fbd4cc99fcfe00db1c03f2f26c6f225823141.js:30 Uncaught TypeError: i.selectedIDs is not a function
at o (id-316f4f96984fe6c0b21f27749e1fbd4cc99fcfe00db1c03f2f26c6f225823141.js:30:961)
at id-316f4f96984fe6c0b21f27749e1fbd4cc99fcfe00db1c03f2f26c6f225823141.js:2:15186
Chrome 128.0.6613.85 on Windows 10
Screenshot(s) or anything else?
No response
Which deployed environments do you see the issue in?
Released version at openstreetmap.org/edit
What version numbers does this issue effect?
2.30.2
Which browsers are you seeing this problem on?
Chrome
if you encounter this again, it would be great if you could post the steps to reproduce. :pray:
But from the error message, this must be the following location where this happens: https://github.com/openstreetmap/iD/blob/v2.30.2/modules/behavior/hash.js#L158
Went to look at specifically Panoramax imagery again today. The error has yet again slipped past while looking around here https://www.openstreetmap.org/edit#map=19/48.882411/2.370316 Data on, notes off, only Panoramax enabled, both single images and 360 enabled. Just clicking some images manually and then clicking through inside the viewer, sometimes going back and forth inside the sequence and between different sequences. I suppose street level imagery is a type of mode.
id-316f4f96984fe6c0b21f27749e1fbd4cc99fcfe00db1c03f2f26c6f225823141.js:30 Uncaught TypeError: i.selectedIDs is not a function
at o (id-316f4f96984fe6c0b21f27749e1fbd4cc99fcfe00db1c03f2f26c6f225823141.js:30:961)
at id-316f4f96984fe6c0b21f27749e1fbd4cc99fcfe00db1c03f2f26c6f225823141.js:2:15186
o @ id-316f4f96984fe6c0b21f27749e1fbd4cc99fcfe00db1c03f2f26c6f225823141.js:30
(anonymous) @ id-316f4f96984fe6c0b21f27749e1fbd4cc99fcfe00db1c03f2f26c6f225823141.js:2
hashchange
updateUrlImage @ id-316f4f96984fe6c0b21f27749e1fbd4cc99fcfe00db1c03f2f26c6f225823141.js:66
selectImage @ id-316f4f96984fe6c0b21f27749e1fbd4cc99fcfe00db1c03f2f26c6f225823141.js:66
(anonymous) @ id-316f4f96984fe6c0b21f27749e1fbd4cc99fcfe00db1c03f2f26c6f225823141.js:14
Promise.then
p @ id-316f4f96984fe6c0b21f27749e1fbd4cc99fcfe00db1c03f2f26c6f225823141.js:14
(anonymous) @ id-316f4f96984fe6c0b21f27749e1fbd4cc99fcfe00db1c03f2f26c6f225823141.js:2
iD 2.30.2, Chrome 128.0.6613.113 on Windows 10
May be caused by switching between 360 and single images. Managed to get the exact same error twice more. Last one on switching to this image from one of the images in the nearby sequence https://api.panoramax.xyz/#pic=897b61bb-9834-4450-9634-777f10ed85c9&focus=pic Again on switching to https://api.panoramax.xyz/#pic=dcbf05ea-fd7d-460e-b4e2-1e59ca2fd7a0&focus=pic Again on switching from https://api.panoramax.xyz/#pic=9966b942-0647-45ec-a053-4d9ce6837be4&focus=pic to https://api.panoramax.xyz/#pic=1129e19b-bab3-4ddb-b7b6-77f52f825b23&focus=pic
The error seems to be inconsistent and not reoccur on the same images, similar to another issue which had to do with caching. May or may not only occur if selecting a (newly loaded) image while the map is being centered and new data is still loading. This error seems not to exist on the Panoramax website.
@tyrasd It might be similar to #10367.
I tried to reproduce this bug today again, but with no luck. It could be something intermittent with the panoramax API?! Let's close this for now and reopen if we find a way to reproduce it reliably.
Was editing here https://www.openstreetmap.org/edit#map=21/52.6610386/-7.2323863
Here it seemed to happen if I switch between a Panoramax image and itself / an object (new empty area) enough times / quickly enough. might only happen while object is (re)selected.
id-f18d202adeeec2ac2fb8525b5b69c4cc857f5e8e81de808886002075ec0e36e0.js:84151 Uncaught TypeError: mode.selectedIDs is not a function
at hashchange (id-f18d202adeeec2ac2fb8525b5b69c4cc857f5e8e81de808886002075ec0e36e0.js:84151:49)
at id-f18d202adeeec2ac2fb8525b5b69c4cc857f5e8e81de808886002075ec0e36e0.js:17522:16
 | hashchange | @ | id-f18d202adeeec2ac2…75ec0e36e0.js:84151
-- | -- | -- | --
 | (anonymous) | @ | id-f18d202adeeec2ac2…75ec0e36e0.js:17522
 | hashchange |  | Â
 | updateUrlImage | @ | id-f18d202adeeec2ac2…75ec0e36e0.js:82048
 | selectImage | @ | id-f18d202adeeec2ac2…75ec0e36e0.js:82055
 | (anonymous) | @ | id-f18d202adeeec2ac2…75ec0e36e0.js:54946
 | Promise.then |  | Â
 | click | @ | id-f18d202adeeec2ac2…75ec0e36e0.js:54945
 | (anonymous) | @ | id-f18d202adeeec2ac2…75ec0e36e0.js:17522
so hitting API buffer inconsistently?