fix(web/default): guard playground messages against legacy classic shape (#4650)
fix(playground): handle legacy localStorage message shape Sanitizes old-format saved messages to prevent 500 on playground load.
This commit is contained in:
parent
2b89989f62
commit
fde2cac9d3
@ -88,8 +88,12 @@ export function loadMessages(): Message[] | null {
|
|||||||
try {
|
try {
|
||||||
const saved = localStorage.getItem(STORAGE_KEYS.MESSAGES)
|
const saved = localStorage.getItem(STORAGE_KEYS.MESSAGES)
|
||||||
if (saved) {
|
if (saved) {
|
||||||
const parsed: Message[] = JSON.parse(saved)
|
const parsed: unknown = JSON.parse(saved)
|
||||||
const sanitized = sanitizeMessagesOnLoad(parsed)
|
if (!Array.isArray(parsed)) {
|
||||||
|
localStorage.removeItem(STORAGE_KEYS.MESSAGES)
|
||||||
|
return null
|
||||||
|
}
|
||||||
|
const sanitized = sanitizeMessagesOnLoad(parsed as Message[])
|
||||||
// Persist sanitized result to avoid re-sanitizing on subsequent loads
|
// Persist sanitized result to avoid re-sanitizing on subsequent loads
|
||||||
if (sanitized !== parsed) {
|
if (sanitized !== parsed) {
|
||||||
saveMessages(sanitized)
|
saveMessages(sanitized)
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user