File size: 750 Bytes
bc9010f
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
// 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 = [];
    }
}