temporeest
Version:
50 lines (43 loc) • 1.16 kB
text/typescript
// SIGNED-SOURCE: <dca643d0608b821e5a8019b664f29647>
/**
* AUTO-GENERATED FILE
* Do not modify. Update your schema and re-generate for changes.
*/
import { Context } from "@aphro/runtime-ts";
import { decodeModelData } from "@aphro/runtime-ts";
import { encodeModelData } from "@aphro/runtime-ts";
import { SID_of } from "@aphro/runtime-ts";
import { NodeSpecWithCreate } from "@aphro/runtime-ts";
import Foo from "../Foo.js";
import { Data } from "./FooBase.js";
const fields = {
id: {
encoding: "none",
},
name: {
encoding: "none",
},
} as const;
const FooSpec: NodeSpecWithCreate<Foo, Data> = {
type: "node",
createFrom(ctx: Context, data: Data, raw: boolean = true) {
const existing = ctx.cache.get(data["id"], "example", "foo");
if (existing) {
return existing;
}
if (raw) data = decodeModelData(data, fields);
const result = new Foo(ctx, data);
ctx.cache.set(data["id"], result, "example", "foo");
return result;
},
primaryKey: "id",
storage: {
engine: "sqlite",
db: "example",
type: "sql",
tablish: "foo",
},
fields,
outboundEdges: {},
};
export default FooSpec;