Linux websever 5.15.0-153-generic #163-Ubuntu SMP Thu Aug 7 16:37:18 UTC 2025 x86_64
Apache/2.4.52 (Ubuntu)
: 192.168.3.70 | : 192.168.1.99
Cant Read [ /etc/named.conf ]
8.1.2-1ubuntu2.23
urlab
www.github.com/MadExploits
Terminal
AUTO ROOT
Adminer
Backdoor Destroyer
Linux Exploit
Lock Shell
Lock File
Create User
CREATE RDP
PHP Mailer
BACKCONNECT
UNLOCK SHELL
HASH IDENTIFIER
CPANEL RESET
CREATE WP USER
README
+ Create Folder
+ Create File
/
var /
www /
html /
cqt /
node_modules /
zod /
src /
v3 /
tests /
[ HOME SHELL ]
Name
Size
Permission
Action
Mocker.ts
1.31
KB
-rw-r--r--
all-errors.test.ts
4.64
KB
-rw-r--r--
anyunknown.test.ts
673
B
-rw-r--r--
array.test.ts
1.89
KB
-rw-r--r--
async-parsing.test.ts
12.34
KB
-rw-r--r--
async-refinements.test.ts
1.57
KB
-rw-r--r--
base.test.ts
782
B
-rw-r--r--
bigint.test.ts
1.93
KB
-rw-r--r--
branded.test.ts
1.69
KB
-rw-r--r--
catch.test.ts
6.4
KB
-rw-r--r--
coerce.test.ts
6.49
KB
-rw-r--r--
complex.test.ts
1.87
KB
-rw-r--r--
custom.test.ts
950
B
-rw-r--r--
date.test.ts
983
B
-rw-r--r--
deepmasking.test.ts
5.09
KB
-rw-r--r--
default.test.ts
3.44
KB
-rw-r--r--
description.test.ts
1.29
KB
-rw-r--r--
discriminated-unions.test.ts
8.34
KB
-rw-r--r--
enum.test.ts
2.67
KB
-rw-r--r--
error.test.ts
16.42
KB
-rw-r--r--
firstparty.test.ts
2.33
KB
-rw-r--r--
firstpartyschematypes.test.ts
788
B
-rw-r--r--
function.test.ts
6.42
KB
-rw-r--r--
generics.test.ts
1.49
KB
-rw-r--r--
instanceof.test.ts
1.13
KB
-rw-r--r--
intersection.test.ts
3.02
KB
-rw-r--r--
language-server.source.ts
1.25
KB
-rw-r--r--
language-server.test.ts
8.12
KB
-rw-r--r--
literal.test.ts
1.04
KB
-rw-r--r--
map.test.ts
3.46
KB
-rw-r--r--
masking.test.ts
85
B
-rw-r--r--
mocker.test.ts
389
B
-rw-r--r--
nan.test.ts
587
B
-rw-r--r--
nativeEnum.test.ts
2.29
KB
-rw-r--r--
nullable.test.ts
1.14
KB
-rw-r--r--
number.test.ts
6.22
KB
-rw-r--r--
object-augmentation.test.ts
569
B
-rw-r--r--
object-in-es5-env.test.ts
778
B
-rw-r--r--
object.test.ts
11.5
KB
-rw-r--r--
optional.test.ts
1.19
KB
-rw-r--r--
parseUtil.test.ts
869
B
-rw-r--r--
parser.test.ts
1.1
KB
-rw-r--r--
partials.test.ts
6.83
KB
-rw-r--r--
pickomit.test.ts
3.54
KB
-rw-r--r--
pipeline.test.ts
823
B
-rw-r--r--
preprocess.test.ts
4.42
KB
-rw-r--r--
primitive.test.ts
11.93
KB
-rw-r--r--
promise.test.ts
2.43
KB
-rw-r--r--
readonly.test.ts
7.17
KB
-rw-r--r--
record.test.ts
3.65
KB
-rw-r--r--
recursive.test.ts
3.85
KB
-rw-r--r--
refine.test.ts
7.98
KB
-rw-r--r--
safeparse.test.ts
628
B
-rw-r--r--
set.test.ts
4.68
KB
-rw-r--r--
standard-schema.test.ts
2.53
KB
-rw-r--r--
string.test.ts
64.08
KB
-rw-r--r--
transformer.test.ts
5.55
KB
-rw-r--r--
tuple.test.ts
2.63
KB
-rw-r--r--
unions.test.ts
1.5
KB
-rw-r--r--
validations.test.ts
3.74
KB
-rw-r--r--
void.test.ts
349
B
-rw-r--r--
Delete
Unzip
Zip
${this.title}
Close
Code Editor : recursive.test.ts
// @ts-ignore TS6133 import { test } from "vitest"; import { z } from "zod/v3"; interface Category { name: string; subcategories: Category[]; } const testCategory: Category = { name: "I", subcategories: [ { name: "A", subcategories: [ { name: "1", subcategories: [ { name: "a", subcategories: [], }, ], }, ], }, ], }; test("recursion with z.late.object", () => { const Category: z.ZodType<Category> = z.late.object(() => ({ name: z.string(), subcategories: z.array(Category), })); Category.parse(testCategory); }); test("recursion with z.lazy", () => { const Category: z.ZodType<Category> = z.lazy(() => z.object({ name: z.string(), subcategories: z.array(Category), }) ); Category.parse(testCategory); }); test("schema getter", () => { z.lazy(() => z.string()).schema.parse("asdf"); }); type LinkedList = null | { value: number; next: LinkedList }; const linkedListExample = { value: 1, next: { value: 2, next: { value: 3, next: { value: 4, next: null, }, }, }, }; test("recursion involving union type", () => { const LinkedListSchema: z.ZodType<LinkedList> = z.lazy(() => z.union([ z.null(), z.object({ value: z.number(), next: LinkedListSchema, }), ]) ); LinkedListSchema.parse(linkedListExample); }); // interface A { // val: number; // b: B; // } // interface B { // val: number; // a: A; // } // const A: z.ZodType<A> = z.late.object(() => ({ // val: z.number(), // b: B, // })); // const B: z.ZodType<B> = z.late.object(() => ({ // val: z.number(), // a: A, // })); // const Alazy: z.ZodType<A> = z.lazy(() => z.object({ // val: z.number(), // b: B, // })); // const Blazy: z.ZodType<B> = z.lazy(() => z.object({ // val: z.number(), // a: A, // })); // const a: any = { val: 1 }; // const b: any = { val: 2 }; // a.b = b; // b.a = a; // test('valid check', () => { // A.parse(a); // B.parse(b); // }); // test("valid check lazy", () => { // A.parse({val:1, b:}); // B.parse(b); // }); // test('masking check', () => { // const FragmentOnA = z // .object({ // val: z.number(), // b: z // .object({ // val: z.number(), // a: z // .object({ // val: z.number(), // }) // .nonstrict(), // }) // .nonstrict(), // }) // .nonstrict(); // const fragment = FragmentOnA.parse(a); // fragment; // }); // test('invalid check', () => { // expect(() => A.parse({} as any)).toThrow(); // }); // test('schema getter', () => { // (A as z.ZodLazy<any>).schema; // }); // test("self recursion with cyclical data", () => { // interface Category { // name: string; // subcategories: Category[]; // } // const Category: z.ZodType<Category> = z.late.object(() => ({ // name: z.string(), // subcategories: z.array(Category), // })); // const untypedCategory: any = { // name: "Category A", // }; // // creating a cycle // untypedCategory.subcategories = [untypedCategory]; // Category.parse(untypedCategory); // }); // test("self recursion with base type", () => { // const BaseCategory = z.object({ // name: z.string(), // }); // type BaseCategory = z.infer<typeof BaseCategory>; // type Category = BaseCategory & { subcategories: Category[] }; // const Category: z.ZodType<Category> = z.late // .object(() => ({ // subcategories: z.array(Category), // })) // .extend({ // name: z.string(), // }); // const untypedCategory: any = { // name: "Category A", // }; // // creating a cycle // untypedCategory.subcategories = [untypedCategory]; // Category.parse(untypedCategory); // parses successfully // });
Close