UNPKG

@benev/slate

Version:
25 lines 942 B
import { ob } from "../../../tools/ob.js"; export function history_actualize({ tree, blueprint, save_snapshot, proceed, }) { let action_count = 1; function recurse(specs, purpose) { return ob(specs).map((spec, name) => ((typeof spec === "function") ? (...params) => { const action = { id: action_count++, purpose: [...purpose, name], params, time: Date.now(), }; tree.transmute(state => { save_snapshot(); const setState = (newState) => { state = newState; }; spec(state, setState)(...params); return state; }); proceed(action); } : recurse(spec, [...purpose, name]))); } return recurse(blueprint, []); } //# sourceMappingURL=actualize.js.map