win-superpower / state.js
Ultronprime's picture
Create state.js
bc9010f verified
// state.js - Manages Application State
import { MATERIALS_CONFIG, RECIPES_CONFIG } from './config.js';
export let appState = {};
export function saveState() {
localStorage.setItem('antennaTrackerState', JSON.stringify(appState));
}
export function loadState() {
const savedState = localStorage.getItem('antennaTrackerState');
if (savedState) {
Object.assign(appState, JSON.parse(savedState));
appState.productRecipes = RECIPES_CONFIG; // Always use latest recipes from config
} else {
// First time load: create a deep copy from config
appState.materials = JSON.parse(JSON.stringify(MATERIALS_CONFIG));
appState.productRecipes = RECIPES_CONFIG;
appState.productionLog = [];
}
}