You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
My team recently encountered a very edge case bug with this library after upgrading from the old Smart Tag SDK. If the value of a property is an instance of a class that lacks a no-param constructor (eg. PointerEvent), then the event will fail to fire. This is particularly problematic if using the async tagging as this will cause the PA SDK to wrongfully detect a tagging conflict, causing all subsequent events to not fire.
After some investigation, it appears the logic causing the issue is at src/utils/cloneobject.js:5 where it tries to call the constructor of the object.
We have managed to workaround this by ensuring that property values aren't instances of classes before passing them through to the SDK. I recognise that it would probably be highly unusual to have property values that trigger this issue, but perhaps it could be caught in a graceful manner that doesn't stop further events from being fired.
The text was updated successfully, but these errors were encountered:
My team recently encountered a very edge case bug with this library after upgrading from the old Smart Tag SDK. If the value of a property is an instance of a class that lacks a no-param constructor (eg.
PointerEvent
), then the event will fail to fire. This is particularly problematic if using the async tagging as this will cause the PA SDK to wrongfully detect a tagging conflict, causing all subsequent events to not fire.After some investigation, it appears the logic causing the issue is at src/utils/cloneobject.js:5 where it tries to call the constructor of the object.
We have managed to workaround this by ensuring that property values aren't instances of classes before passing them through to the SDK. I recognise that it would probably be highly unusual to have property values that trigger this issue, but perhaps it could be caught in a graceful manner that doesn't stop further events from being fired.
The text was updated successfully, but these errors were encountered: