Hi,
The widget SDK throws whenever I identify a user whose name has a character above U+00FF:
Error writing localStorage key "uj_userId": InvalidCharacterError: The string contains invalid characters.
Repro:
window.uj.identify({ id: 'usr_0001', email: 'anna@example.com', firstName: 'Anna', lastName: 'Łukasiewicz' })
Swap in an ASCII surname and it's fine. The cutoff is U+00FF rather than "has an accent", which makes it look random — btoa('Márquez') is fine, btoa('Łukasiewicz') is not. So it hits Polish, Czech, Turkish, Hungarian names and anything non-Latin.
Looks like your localStorage helper does:
const s = JSON.stringify(n), l = btoa(s); localStorage.setItem(r, l)
No UTF-8 step before btoa. Your encodeClientToken in the same bundle already handles this properly with TextEncoder — same treatment here should do it.
Not urgent for us: it's caught, and identification still works since the client token uses the correct encoding path. Just console noise and a cache that never fills.
One other thing while I'm here — the widget iframe throws "Permission policy 'Fullscreen' check failed" for minto.userjot.com. Seems harmless, but flagging in case something's meant to go fullscreen and can't.
Thanks, David