This commit is contained in:
@@ -1,5 +1,6 @@
|
||||
import { Schema as S } from "@effect/schema"
|
||||
import { reaction, runInAction } from "mobx"
|
||||
import { Jsonifiable } from "./Jsonifiable"
|
||||
import { MobXObservable, MutableTaggedClass } from "./class"
|
||||
|
||||
|
||||
@@ -10,6 +11,19 @@ class User extends MutableTaggedClass<User>()("User", {
|
||||
MobXObservable
|
||||
) {}
|
||||
|
||||
const JsonifiableUser = User.pipe(
|
||||
Jsonifiable(S.Struct({
|
||||
...User.fields,
|
||||
id: S.BigInt,
|
||||
}))
|
||||
)
|
||||
|
||||
const JsonifiableUser2 = Jsonifiable(User)(S.Struct({
|
||||
...User.fields,
|
||||
id: S.BigInt,
|
||||
}))
|
||||
|
||||
|
||||
const user1 = new User({ id: -1n, role: "BasicUser" })
|
||||
reaction(() => user1.id, id => console.log(`user1 id changed: ${ id }`))
|
||||
|
||||
|
||||
Reference in New Issue
Block a user