about summary refs log tree commit diff
path: root/assets/src/stores/data.ts
blob: d59183cf7d1776a3eae312aeac5c3c8d47fbf43f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
import { writable } from "svelte/store";

const createDataStore = () => {
    const { subscribe, update } = writable({ locked: false, data: null });

    return {
        subscribe,
        set: data => {
            update(state => {
                if (!state.locked) {
                    return { locked: true, data };
                } else {
                    console.error("Tried setting data after locking.");
                    return state;
                }
            });
        },
    };
};

export default createDataStore();