Plandex / patch_app_safe_set.py
AUXteam's picture
Upload folder using huggingface_hub
c59bca4 verified
import re
with open("App.tsx", "r") as f:
content = f.read()
safe_set_code = """
// Safely set localStorage by catching quota errors and pruning older data
const safeSetItem = (key: string, value: any, pruneFn?: (data: any) => any) => {
try {
localStorage.setItem(key, JSON.stringify(value));
} catch (e) {
console.warn(`Quota exceeded for ${key}. Pruning and retrying...`);
if (pruneFn) {
try {
const pruned = pruneFn(value);
localStorage.setItem(key, JSON.stringify(pruned));
console.log(`Successfully pruned and saved ${key}.`);
} catch (pruneErr) {
console.error(`Failed to save ${key} even after pruning:`, pruneErr);
if (key === STORAGE_KEYS.SESSIONS_CACHE) localStorage.removeItem(key);
}
} else {
if (key === STORAGE_KEYS.SESSIONS_CACHE) localStorage.removeItem(key);
}
}
};
const App: React.FC = () => {
"""
content = content.replace("const App: React.FC = () => {", safe_set_code)
with open("App.tsx", "w") as f:
f.write(content)