Files
SnowLuma/.pnpm-store/v11/files/f8/3814de1996d56601234abe8f59db97f4b177bf040939867bad3017d15756b4d155de0471a5023e9c6c03ac8f8496f20ef8264dc6d7bd854287ed11727a5553
TanTan 2a69b23b47
Dev Build / cleanup (push) Canceled after 0s
Dev Build / typecheck (push) Canceled after 0s
Dev Build / build (linux-arm64, ubuntu-24.04-arm, linux-arm64) (push) Canceled after 0s
Dev Build / build (linux-x64, ubuntu-latest, linux-x64) (push) Canceled after 0s
Dev Build / build (win-x64, windows-latest, win32-x64) (push) Canceled after 0s
Dev Build / dispatch-dev-docker (push) Skipped
docs: 仓库链接指向本镜像仓库
2026-11-13 09:27:07 +08:00

49 lines
1.0 KiB
Plaintext

"use strict";
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
const atom = require("./atom.cjs");
class Store {
constructor(valueOrFn) {
this.atom = atom.createAtom(
valueOrFn
);
}
setState(updater) {
this.atom.set(updater);
}
get state() {
return this.atom.get();
}
get() {
return this.state;
}
subscribe(observerOrFn) {
return this.atom.subscribe(atom.toObserver(observerOrFn));
}
}
class ReadonlyStore {
constructor(valueOrFn) {
this.atom = atom.createAtom(
valueOrFn
);
}
get state() {
return this.atom.get();
}
get() {
return this.state;
}
subscribe(observerOrFn) {
return this.atom.subscribe(atom.toObserver(observerOrFn));
}
}
function createStore(valueOrFn) {
if (typeof valueOrFn === "function") {
return new ReadonlyStore(valueOrFn);
}
return new Store(valueOrFn);
}
exports.ReadonlyStore = ReadonlyStore;
exports.Store = Store;
exports.createStore = createStore;
//# sourceMappingURL=store.cjs.map