This commit is contained in:
20
src/tests.ts
20
src/tests.ts
@@ -1,5 +1,9 @@
|
|||||||
|
import { expression } from "@thilawyn/traitify-ts"
|
||||||
|
import { AbstractClass } from "type-fest"
|
||||||
import { z } from "zod"
|
import { z } from "zod"
|
||||||
import { ZodSchemaClass } from "./ZodSchemaClass"
|
import { ZodSchemaClass } from "./ZodSchemaClass"
|
||||||
|
import { ExtendableZodSchemaObject } from "./lib"
|
||||||
|
import { InstantiableZodSchemaObject } from "./traits/InstantiableZodSchemaObject"
|
||||||
|
|
||||||
|
|
||||||
class Test extends ZodSchemaClass({
|
class Test extends ZodSchemaClass({
|
||||||
@@ -41,3 +45,19 @@ console.log(subInst)
|
|||||||
// class ChildTest extends Test {}
|
// class ChildTest extends Test {}
|
||||||
|
|
||||||
// ChildTest.instantiate({ name: "" })
|
// ChildTest.instantiate({ name: "" })
|
||||||
|
|
||||||
|
|
||||||
|
class Gneugneu {
|
||||||
|
}
|
||||||
|
|
||||||
|
export function getExpression<C extends AbstractClass<object>>(class_: C) {
|
||||||
|
return expression
|
||||||
|
.extends(class_)
|
||||||
|
.expresses(
|
||||||
|
InstantiableZodSchemaObject,
|
||||||
|
ExtendableZodSchemaObject,
|
||||||
|
)
|
||||||
|
.build()
|
||||||
|
}
|
||||||
|
|
||||||
|
const exp = getExpression(Gneugneu)
|
||||||
|
|||||||
Reference in New Issue
Block a user