18 lines
554 B
TypeScript
18 lines
554 B
TypeScript
import { Schema } from "effect"
|
|
import { zod } from "@/util/effect-zod"
|
|
import { NonNegativeInt } from "@/util/schema"
|
|
|
|
export class ConsoleState extends Schema.Class<ConsoleState>("ConsoleState")({
|
|
consoleManagedProviders: Schema.mutable(Schema.Array(Schema.String)),
|
|
activeOrgName: Schema.optional(Schema.String),
|
|
switchableOrgCount: NonNegativeInt,
|
|
}) {
|
|
static readonly zod = zod(this)
|
|
}
|
|
|
|
export const emptyConsoleState: ConsoleState = ConsoleState.make({
|
|
consoleManagedProviders: [],
|
|
activeOrgName: undefined,
|
|
switchableOrgCount: 0,
|
|
})
|