drizzle-zod 0.7.1 → 0.8.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/column.d.cts +3 -3
- package/column.d.mts +3 -3
- package/column.d.ts +3 -3
- package/column.types.d.cts +18 -17
- package/column.types.d.mts +18 -17
- package/column.types.d.ts +18 -17
- package/index.cjs +19 -15
- package/index.cjs.map +1 -1
- package/index.mjs +12 -8
- package/index.mjs.map +1 -1
- package/package.json +6 -6
- package/schema.d.cts +7 -7
- package/schema.d.mts +7 -7
- package/schema.d.ts +7 -7
- package/schema.types.d.cts +17 -15
- package/schema.types.d.mts +17 -15
- package/schema.types.d.ts +17 -15
- package/schema.types.internal.d.cts +13 -15
- package/schema.types.internal.d.mts +13 -15
- package/schema.types.internal.d.ts +13 -15
- package/utils.d.cts +5 -8
- package/utils.d.mts +5 -8
- package/utils.d.ts +5 -8
package/column.d.cts
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import type { Column } from 'drizzle-orm';
|
|
2
|
-
import { z } from 'zod';
|
|
2
|
+
import { z } from 'zod/v4';
|
|
3
3
|
import type { CreateSchemaFactoryOptions } from "./schema.types.cjs";
|
|
4
4
|
import type { Json } from "./utils.cjs";
|
|
5
|
-
export declare const literalSchema:
|
|
5
|
+
export declare const literalSchema: any;
|
|
6
6
|
export declare const jsonSchema: z.ZodType<Json>;
|
|
7
7
|
export declare const bufferSchema: z.ZodType<Buffer>;
|
|
8
|
-
export declare function columnToSchema(column: Column, factory: CreateSchemaFactoryOptions | undefined): z.
|
|
8
|
+
export declare function columnToSchema(column: Column, factory: CreateSchemaFactoryOptions<Partial<Record<'bigint' | 'boolean' | 'date' | 'number' | 'string', true>> | true | undefined> | undefined): z.ZodType;
|
package/column.d.mts
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import type { Column } from 'drizzle-orm';
|
|
2
|
-
import { z } from 'zod';
|
|
2
|
+
import { z } from 'zod/v4';
|
|
3
3
|
import type { CreateSchemaFactoryOptions } from "./schema.types.mjs";
|
|
4
4
|
import type { Json } from "./utils.mjs";
|
|
5
|
-
export declare const literalSchema:
|
|
5
|
+
export declare const literalSchema: any;
|
|
6
6
|
export declare const jsonSchema: z.ZodType<Json>;
|
|
7
7
|
export declare const bufferSchema: z.ZodType<Buffer>;
|
|
8
|
-
export declare function columnToSchema(column: Column, factory: CreateSchemaFactoryOptions | undefined): z.
|
|
8
|
+
export declare function columnToSchema(column: Column, factory: CreateSchemaFactoryOptions<Partial<Record<'bigint' | 'boolean' | 'date' | 'number' | 'string', true>> | true | undefined> | undefined): z.ZodType;
|
package/column.d.ts
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import type { Column } from 'drizzle-orm';
|
|
2
|
-
import { z } from 'zod';
|
|
2
|
+
import { z } from 'zod/v4';
|
|
3
3
|
import type { CreateSchemaFactoryOptions } from './schema.types.js';
|
|
4
4
|
import type { Json } from './utils.js';
|
|
5
|
-
export declare const literalSchema:
|
|
5
|
+
export declare const literalSchema: any;
|
|
6
6
|
export declare const jsonSchema: z.ZodType<Json>;
|
|
7
7
|
export declare const bufferSchema: z.ZodType<Buffer>;
|
|
8
|
-
export declare function columnToSchema(column: Column, factory: CreateSchemaFactoryOptions | undefined): z.
|
|
8
|
+
export declare function columnToSchema(column: Column, factory: CreateSchemaFactoryOptions<Partial<Record<'bigint' | 'boolean' | 'date' | 'number' | 'string', true>> | true | undefined> | undefined): z.ZodType;
|
package/column.types.d.cts
CHANGED
|
@@ -1,19 +1,20 @@
|
|
|
1
1
|
import type { Assume, Column } from 'drizzle-orm';
|
|
2
|
-
import type { z } from 'zod';
|
|
3
|
-
import type {
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
type
|
|
16
|
-
type
|
|
17
|
-
type
|
|
18
|
-
|
|
2
|
+
import type { z } from 'zod/v4';
|
|
3
|
+
import type { IsEnumDefined, IsNever, Json } from "./utils.cjs";
|
|
4
|
+
type HasBaseColumn<TColumn> = TColumn extends {
|
|
5
|
+
_: {
|
|
6
|
+
baseColumn: Column | undefined;
|
|
7
|
+
};
|
|
8
|
+
} ? IsNever<TColumn['_']['baseColumn']> extends false ? true : false : false;
|
|
9
|
+
export type GetZodType<TColumn extends Column, TCoerce extends Partial<Record<'bigint' | 'boolean' | 'date' | 'number' | 'string', true>> | true | undefined> = HasBaseColumn<TColumn> extends true ? z.ZodArray<GetZodType<Assume<TColumn['_']['baseColumn'], Column>, TCoerce>> : TColumn['_']['columnType'] extends 'PgUUID' ? z.ZodUUID : IsEnumDefined<TColumn['_']['enumValues']> extends true ? z.ZodEnum<{
|
|
10
|
+
[K in Assume<TColumn['_']['enumValues'], [string, ...string[]]>[number]]: K;
|
|
11
|
+
}> : TColumn['_']['columnType'] extends 'PgGeometry' | 'PgPointTuple' ? z.ZodTuple<[z.ZodNumber, z.ZodNumber], null> : TColumn['_']['columnType'] extends 'PgLine' ? z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber], null> : TColumn['_']['data'] extends Date ? CanCoerce<TCoerce, 'date'> extends true ? z.coerce.ZodCoercedDate : z.ZodDate : TColumn['_']['data'] extends Buffer ? z.ZodType<Buffer> : TColumn['_']['dataType'] extends 'array' ? z.ZodArray<GetZodPrimitiveType<Assume<TColumn['_']['data'], any[]>[number], '', TCoerce>> : TColumn['_']['data'] extends Record<string, any> ? TColumn['_']['columnType'] extends 'PgJson' | 'PgJsonb' | 'MySqlJson' | 'SingleStoreJson' | 'SQLiteTextJson' | 'SQLiteBlobJson' ? z.ZodType<TColumn['_']['data'], TColumn['_']['data']> : z.ZodObject<{
|
|
12
|
+
[K in keyof TColumn['_']['data']]: GetZodPrimitiveType<TColumn['_']['data'][K], '', TCoerce>;
|
|
13
|
+
}, {}, {}> : TColumn['_']['dataType'] extends 'json' ? z.ZodType<Json> : GetZodPrimitiveType<TColumn['_']['data'], TColumn['_']['columnType'], TCoerce>;
|
|
14
|
+
type CanCoerce<TCoerce extends Partial<Record<'bigint' | 'boolean' | 'date' | 'number' | 'string', true>> | true | undefined, TTo extends 'bigint' | 'boolean' | 'date' | 'number' | 'string'> = TCoerce extends true ? true : TCoerce extends Record<string, any> ? TCoerce[TTo] extends true ? true : false : false;
|
|
15
|
+
type GetZodPrimitiveType<TData, TColumnType, TCoerce extends Partial<Record<'bigint' | 'boolean' | 'date' | 'number' | 'string', true>> | true | undefined> = TColumnType extends 'MySqlTinyInt' | 'SingleStoreTinyInt' | 'PgSmallInt' | 'PgSmallSerial' | 'MySqlSmallInt' | 'MySqlMediumInt' | 'SingleStoreSmallInt' | 'SingleStoreMediumInt' | 'PgInteger' | 'PgSerial' | 'MySqlInt' | 'SingleStoreInt' | 'PgBigInt53' | 'PgBigSerial53' | 'MySqlBigInt53' | 'MySqlSerial' | 'SingleStoreBigInt53' | 'SingleStoreSerial' | 'SQLiteInteger' | 'MySqlYear' | 'SingleStoreYear' ? CanCoerce<TCoerce, 'number'> extends true ? z.coerce.ZodCoercedNumber : z.ZodInt : TData extends number ? CanCoerce<TCoerce, 'number'> extends true ? z.coerce.ZodCoercedNumber : z.ZodNumber : TData extends bigint ? CanCoerce<TCoerce, 'bigint'> extends true ? z.coerce.ZodCoercedBigInt : z.ZodBigInt : TData extends boolean ? CanCoerce<TCoerce, 'boolean'> extends true ? z.coerce.ZodCoercedBoolean : z.ZodBoolean : TData extends string ? CanCoerce<TCoerce, 'string'> extends true ? z.coerce.ZodCoercedString : z.ZodString : z.ZodType;
|
|
16
|
+
type HandleSelectColumn<TSchema extends z.ZodType, TColumn extends Column> = TColumn['_']['notNull'] extends true ? TSchema : z.ZodNullable<TSchema>;
|
|
17
|
+
type HandleInsertColumn<TSchema extends z.ZodType, TColumn extends Column> = TColumn['_']['notNull'] extends true ? TColumn['_']['hasDefault'] extends true ? z.ZodOptional<TSchema> : TSchema : z.ZodOptional<z.ZodNullable<TSchema>>;
|
|
18
|
+
type HandleUpdateColumn<TSchema extends z.ZodType, TColumn extends Column> = TColumn['_']['notNull'] extends true ? z.ZodOptional<TSchema> : z.ZodOptional<z.ZodNullable<TSchema>>;
|
|
19
|
+
export type HandleColumn<TType extends 'select' | 'insert' | 'update', TColumn extends Column, TCoerce extends Partial<Record<'bigint' | 'boolean' | 'date' | 'number' | 'string', true>> | true | undefined> = TType extends 'select' ? HandleSelectColumn<GetZodType<TColumn, TCoerce>, TColumn> : TType extends 'insert' ? HandleInsertColumn<GetZodType<TColumn, TCoerce>, TColumn> : TType extends 'update' ? HandleUpdateColumn<GetZodType<TColumn, TCoerce>, TColumn> : GetZodType<TColumn, TCoerce>;
|
|
19
20
|
export {};
|
package/column.types.d.mts
CHANGED
|
@@ -1,19 +1,20 @@
|
|
|
1
1
|
import type { Assume, Column } from 'drizzle-orm';
|
|
2
|
-
import type { z } from 'zod';
|
|
3
|
-
import type {
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
type
|
|
16
|
-
type
|
|
17
|
-
type
|
|
18
|
-
|
|
2
|
+
import type { z } from 'zod/v4';
|
|
3
|
+
import type { IsEnumDefined, IsNever, Json } from "./utils.mjs";
|
|
4
|
+
type HasBaseColumn<TColumn> = TColumn extends {
|
|
5
|
+
_: {
|
|
6
|
+
baseColumn: Column | undefined;
|
|
7
|
+
};
|
|
8
|
+
} ? IsNever<TColumn['_']['baseColumn']> extends false ? true : false : false;
|
|
9
|
+
export type GetZodType<TColumn extends Column, TCoerce extends Partial<Record<'bigint' | 'boolean' | 'date' | 'number' | 'string', true>> | true | undefined> = HasBaseColumn<TColumn> extends true ? z.ZodArray<GetZodType<Assume<TColumn['_']['baseColumn'], Column>, TCoerce>> : TColumn['_']['columnType'] extends 'PgUUID' ? z.ZodUUID : IsEnumDefined<TColumn['_']['enumValues']> extends true ? z.ZodEnum<{
|
|
10
|
+
[K in Assume<TColumn['_']['enumValues'], [string, ...string[]]>[number]]: K;
|
|
11
|
+
}> : TColumn['_']['columnType'] extends 'PgGeometry' | 'PgPointTuple' ? z.ZodTuple<[z.ZodNumber, z.ZodNumber], null> : TColumn['_']['columnType'] extends 'PgLine' ? z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber], null> : TColumn['_']['data'] extends Date ? CanCoerce<TCoerce, 'date'> extends true ? z.coerce.ZodCoercedDate : z.ZodDate : TColumn['_']['data'] extends Buffer ? z.ZodType<Buffer> : TColumn['_']['dataType'] extends 'array' ? z.ZodArray<GetZodPrimitiveType<Assume<TColumn['_']['data'], any[]>[number], '', TCoerce>> : TColumn['_']['data'] extends Record<string, any> ? TColumn['_']['columnType'] extends 'PgJson' | 'PgJsonb' | 'MySqlJson' | 'SingleStoreJson' | 'SQLiteTextJson' | 'SQLiteBlobJson' ? z.ZodType<TColumn['_']['data'], TColumn['_']['data']> : z.ZodObject<{
|
|
12
|
+
[K in keyof TColumn['_']['data']]: GetZodPrimitiveType<TColumn['_']['data'][K], '', TCoerce>;
|
|
13
|
+
}, {}, {}> : TColumn['_']['dataType'] extends 'json' ? z.ZodType<Json> : GetZodPrimitiveType<TColumn['_']['data'], TColumn['_']['columnType'], TCoerce>;
|
|
14
|
+
type CanCoerce<TCoerce extends Partial<Record<'bigint' | 'boolean' | 'date' | 'number' | 'string', true>> | true | undefined, TTo extends 'bigint' | 'boolean' | 'date' | 'number' | 'string'> = TCoerce extends true ? true : TCoerce extends Record<string, any> ? TCoerce[TTo] extends true ? true : false : false;
|
|
15
|
+
type GetZodPrimitiveType<TData, TColumnType, TCoerce extends Partial<Record<'bigint' | 'boolean' | 'date' | 'number' | 'string', true>> | true | undefined> = TColumnType extends 'MySqlTinyInt' | 'SingleStoreTinyInt' | 'PgSmallInt' | 'PgSmallSerial' | 'MySqlSmallInt' | 'MySqlMediumInt' | 'SingleStoreSmallInt' | 'SingleStoreMediumInt' | 'PgInteger' | 'PgSerial' | 'MySqlInt' | 'SingleStoreInt' | 'PgBigInt53' | 'PgBigSerial53' | 'MySqlBigInt53' | 'MySqlSerial' | 'SingleStoreBigInt53' | 'SingleStoreSerial' | 'SQLiteInteger' | 'MySqlYear' | 'SingleStoreYear' ? CanCoerce<TCoerce, 'number'> extends true ? z.coerce.ZodCoercedNumber : z.ZodInt : TData extends number ? CanCoerce<TCoerce, 'number'> extends true ? z.coerce.ZodCoercedNumber : z.ZodNumber : TData extends bigint ? CanCoerce<TCoerce, 'bigint'> extends true ? z.coerce.ZodCoercedBigInt : z.ZodBigInt : TData extends boolean ? CanCoerce<TCoerce, 'boolean'> extends true ? z.coerce.ZodCoercedBoolean : z.ZodBoolean : TData extends string ? CanCoerce<TCoerce, 'string'> extends true ? z.coerce.ZodCoercedString : z.ZodString : z.ZodType;
|
|
16
|
+
type HandleSelectColumn<TSchema extends z.ZodType, TColumn extends Column> = TColumn['_']['notNull'] extends true ? TSchema : z.ZodNullable<TSchema>;
|
|
17
|
+
type HandleInsertColumn<TSchema extends z.ZodType, TColumn extends Column> = TColumn['_']['notNull'] extends true ? TColumn['_']['hasDefault'] extends true ? z.ZodOptional<TSchema> : TSchema : z.ZodOptional<z.ZodNullable<TSchema>>;
|
|
18
|
+
type HandleUpdateColumn<TSchema extends z.ZodType, TColumn extends Column> = TColumn['_']['notNull'] extends true ? z.ZodOptional<TSchema> : z.ZodOptional<z.ZodNullable<TSchema>>;
|
|
19
|
+
export type HandleColumn<TType extends 'select' | 'insert' | 'update', TColumn extends Column, TCoerce extends Partial<Record<'bigint' | 'boolean' | 'date' | 'number' | 'string', true>> | true | undefined> = TType extends 'select' ? HandleSelectColumn<GetZodType<TColumn, TCoerce>, TColumn> : TType extends 'insert' ? HandleInsertColumn<GetZodType<TColumn, TCoerce>, TColumn> : TType extends 'update' ? HandleUpdateColumn<GetZodType<TColumn, TCoerce>, TColumn> : GetZodType<TColumn, TCoerce>;
|
|
19
20
|
export {};
|
package/column.types.d.ts
CHANGED
|
@@ -1,19 +1,20 @@
|
|
|
1
1
|
import type { Assume, Column } from 'drizzle-orm';
|
|
2
|
-
import type { z } from 'zod';
|
|
3
|
-
import type {
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
type
|
|
16
|
-
type
|
|
17
|
-
type
|
|
18
|
-
|
|
2
|
+
import type { z } from 'zod/v4';
|
|
3
|
+
import type { IsEnumDefined, IsNever, Json } from './utils.js';
|
|
4
|
+
type HasBaseColumn<TColumn> = TColumn extends {
|
|
5
|
+
_: {
|
|
6
|
+
baseColumn: Column | undefined;
|
|
7
|
+
};
|
|
8
|
+
} ? IsNever<TColumn['_']['baseColumn']> extends false ? true : false : false;
|
|
9
|
+
export type GetZodType<TColumn extends Column, TCoerce extends Partial<Record<'bigint' | 'boolean' | 'date' | 'number' | 'string', true>> | true | undefined> = HasBaseColumn<TColumn> extends true ? z.ZodArray<GetZodType<Assume<TColumn['_']['baseColumn'], Column>, TCoerce>> : TColumn['_']['columnType'] extends 'PgUUID' ? z.ZodUUID : IsEnumDefined<TColumn['_']['enumValues']> extends true ? z.ZodEnum<{
|
|
10
|
+
[K in Assume<TColumn['_']['enumValues'], [string, ...string[]]>[number]]: K;
|
|
11
|
+
}> : TColumn['_']['columnType'] extends 'PgGeometry' | 'PgPointTuple' ? z.ZodTuple<[z.ZodNumber, z.ZodNumber], null> : TColumn['_']['columnType'] extends 'PgLine' ? z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber], null> : TColumn['_']['data'] extends Date ? CanCoerce<TCoerce, 'date'> extends true ? z.coerce.ZodCoercedDate : z.ZodDate : TColumn['_']['data'] extends Buffer ? z.ZodType<Buffer> : TColumn['_']['dataType'] extends 'array' ? z.ZodArray<GetZodPrimitiveType<Assume<TColumn['_']['data'], any[]>[number], '', TCoerce>> : TColumn['_']['data'] extends Record<string, any> ? TColumn['_']['columnType'] extends 'PgJson' | 'PgJsonb' | 'MySqlJson' | 'SingleStoreJson' | 'SQLiteTextJson' | 'SQLiteBlobJson' ? z.ZodType<TColumn['_']['data'], TColumn['_']['data']> : z.ZodObject<{
|
|
12
|
+
[K in keyof TColumn['_']['data']]: GetZodPrimitiveType<TColumn['_']['data'][K], '', TCoerce>;
|
|
13
|
+
}, {}, {}> : TColumn['_']['dataType'] extends 'json' ? z.ZodType<Json> : GetZodPrimitiveType<TColumn['_']['data'], TColumn['_']['columnType'], TCoerce>;
|
|
14
|
+
type CanCoerce<TCoerce extends Partial<Record<'bigint' | 'boolean' | 'date' | 'number' | 'string', true>> | true | undefined, TTo extends 'bigint' | 'boolean' | 'date' | 'number' | 'string'> = TCoerce extends true ? true : TCoerce extends Record<string, any> ? TCoerce[TTo] extends true ? true : false : false;
|
|
15
|
+
type GetZodPrimitiveType<TData, TColumnType, TCoerce extends Partial<Record<'bigint' | 'boolean' | 'date' | 'number' | 'string', true>> | true | undefined> = TColumnType extends 'MySqlTinyInt' | 'SingleStoreTinyInt' | 'PgSmallInt' | 'PgSmallSerial' | 'MySqlSmallInt' | 'MySqlMediumInt' | 'SingleStoreSmallInt' | 'SingleStoreMediumInt' | 'PgInteger' | 'PgSerial' | 'MySqlInt' | 'SingleStoreInt' | 'PgBigInt53' | 'PgBigSerial53' | 'MySqlBigInt53' | 'MySqlSerial' | 'SingleStoreBigInt53' | 'SingleStoreSerial' | 'SQLiteInteger' | 'MySqlYear' | 'SingleStoreYear' ? CanCoerce<TCoerce, 'number'> extends true ? z.coerce.ZodCoercedNumber : z.ZodInt : TData extends number ? CanCoerce<TCoerce, 'number'> extends true ? z.coerce.ZodCoercedNumber : z.ZodNumber : TData extends bigint ? CanCoerce<TCoerce, 'bigint'> extends true ? z.coerce.ZodCoercedBigInt : z.ZodBigInt : TData extends boolean ? CanCoerce<TCoerce, 'boolean'> extends true ? z.coerce.ZodCoercedBoolean : z.ZodBoolean : TData extends string ? CanCoerce<TCoerce, 'string'> extends true ? z.coerce.ZodCoercedString : z.ZodString : z.ZodType;
|
|
16
|
+
type HandleSelectColumn<TSchema extends z.ZodType, TColumn extends Column> = TColumn['_']['notNull'] extends true ? TSchema : z.ZodNullable<TSchema>;
|
|
17
|
+
type HandleInsertColumn<TSchema extends z.ZodType, TColumn extends Column> = TColumn['_']['notNull'] extends true ? TColumn['_']['hasDefault'] extends true ? z.ZodOptional<TSchema> : TSchema : z.ZodOptional<z.ZodNullable<TSchema>>;
|
|
18
|
+
type HandleUpdateColumn<TSchema extends z.ZodType, TColumn extends Column> = TColumn['_']['notNull'] extends true ? z.ZodOptional<TSchema> : z.ZodOptional<z.ZodNullable<TSchema>>;
|
|
19
|
+
export type HandleColumn<TType extends 'select' | 'insert' | 'update', TColumn extends Column, TCoerce extends Partial<Record<'bigint' | 'boolean' | 'date' | 'number' | 'string', true>> | true | undefined> = TType extends 'select' ? HandleSelectColumn<GetZodType<TColumn, TCoerce>, TColumn> : TType extends 'insert' ? HandleInsertColumn<GetZodType<TColumn, TCoerce>, TColumn> : TType extends 'update' ? HandleUpdateColumn<GetZodType<TColumn, TCoerce>, TColumn> : GetZodType<TColumn, TCoerce>;
|
|
19
20
|
export {};
|
package/index.cjs
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var
|
|
3
|
+
var v4 = require('zod/v4');
|
|
4
4
|
var drizzleOrm = require('drizzle-orm');
|
|
5
5
|
|
|
6
6
|
const CONSTANTS = {
|
|
@@ -32,11 +32,11 @@ function isWithEnum(column) {
|
|
|
32
32
|
}
|
|
33
33
|
const isPgEnum = isWithEnum;
|
|
34
34
|
|
|
35
|
-
const literalSchema =
|
|
36
|
-
const jsonSchema =
|
|
37
|
-
const bufferSchema =
|
|
35
|
+
const literalSchema = v4.z.union([v4.z.string(), v4.z.number(), v4.z.boolean(), v4.z.null()]);
|
|
36
|
+
const jsonSchema = v4.z.union([literalSchema, v4.z.record(v4.z.string(), v4.z.any()), v4.z.array(v4.z.any())]);
|
|
37
|
+
const bufferSchema = v4.z.custom((v) => v instanceof Buffer); // eslint-disable-line no-instanceof/no-instanceof
|
|
38
38
|
function columnToSchema(column, factory) {
|
|
39
|
-
const z = factory?.zodInstance ??
|
|
39
|
+
const z = factory?.zodInstance ?? v4.z;
|
|
40
40
|
const coerce = factory?.coerce ?? {};
|
|
41
41
|
let schema;
|
|
42
42
|
if (isWithEnum(column)) {
|
|
@@ -65,7 +65,7 @@ function columnToSchema(column, factory) {
|
|
|
65
65
|
});
|
|
66
66
|
} // Handle other types
|
|
67
67
|
else if (isColumnType(column, ['PgArray'])) {
|
|
68
|
-
schema = z.array(columnToSchema(column.baseColumn,
|
|
68
|
+
schema = z.array(columnToSchema(column.baseColumn, factory));
|
|
69
69
|
schema = column.size ? schema.length(column.size) : schema;
|
|
70
70
|
}
|
|
71
71
|
else if (column.dataType === 'array') {
|
|
@@ -176,20 +176,24 @@ function numberColumnToSchema(column, z, coerce) {
|
|
|
176
176
|
min = Number.MIN_SAFE_INTEGER;
|
|
177
177
|
max = Number.MAX_SAFE_INTEGER;
|
|
178
178
|
}
|
|
179
|
-
let schema = coerce === true || coerce?.number
|
|
180
|
-
|
|
181
|
-
|
|
179
|
+
let schema = coerce === true || coerce?.number
|
|
180
|
+
? integer ? z.coerce.number() : z.coerce.number().int()
|
|
181
|
+
: integer
|
|
182
|
+
? z.int()
|
|
183
|
+
: z.number();
|
|
184
|
+
schema = schema.gte(min).lte(max);
|
|
185
|
+
return schema;
|
|
182
186
|
}
|
|
183
187
|
function bigintColumnToSchema(column, z, coerce) {
|
|
184
188
|
const unsigned = column.getSQLType().includes('unsigned');
|
|
185
189
|
const min = unsigned ? 0n : CONSTANTS.INT64_MIN;
|
|
186
190
|
const max = unsigned ? CONSTANTS.INT64_UNSIGNED_MAX : CONSTANTS.INT64_MAX;
|
|
187
191
|
const schema = coerce === true || coerce?.bigint ? z.coerce.bigint() : z.bigint();
|
|
188
|
-
return schema.
|
|
192
|
+
return schema.gte(min).lte(max);
|
|
189
193
|
}
|
|
190
194
|
function stringColumnToSchema(column, z, coerce) {
|
|
191
195
|
if (isColumnType(column, ['PgUUID'])) {
|
|
192
|
-
return z.
|
|
196
|
+
return z.uuid();
|
|
193
197
|
}
|
|
194
198
|
let max;
|
|
195
199
|
let regex;
|
|
@@ -248,7 +252,7 @@ function handleColumns(columns, refinements, conditions, factory) {
|
|
|
248
252
|
continue;
|
|
249
253
|
}
|
|
250
254
|
const column = drizzleOrm.is(selected, drizzleOrm.Column) ? selected : undefined;
|
|
251
|
-
const schema = column ? columnToSchema(column, factory) :
|
|
255
|
+
const schema = column ? columnToSchema(column, factory) : v4.z.any();
|
|
252
256
|
const refined = typeof refinement === 'function' ? refinement(schema) : schema;
|
|
253
257
|
if (conditions.never(column)) {
|
|
254
258
|
continue;
|
|
@@ -265,11 +269,11 @@ function handleColumns(columns, refinements, conditions, factory) {
|
|
|
265
269
|
}
|
|
266
270
|
}
|
|
267
271
|
}
|
|
268
|
-
return
|
|
272
|
+
return v4.z.object(columnSchemas);
|
|
269
273
|
}
|
|
270
274
|
function handleEnum(enum_, factory) {
|
|
271
|
-
const zod
|
|
272
|
-
return zod
|
|
275
|
+
const zod = factory?.zodInstance ?? v4.z;
|
|
276
|
+
return zod.enum(enum_.enumValues);
|
|
273
277
|
}
|
|
274
278
|
const selectConditions = {
|
|
275
279
|
never: () => false,
|
package/index.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.cjs","sources":["../src/constants.ts","../src/utils.ts","../src/column.ts","../src/schema.ts"],"sourcesContent":[null,null,null,null],"names":["z","zod","isTable","getTableColumns","getViewSelectedFields","is","Column","SQL","isView"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.cjs","sources":["../src/constants.ts","../src/utils.ts","../src/column.ts","../src/schema.ts"],"sourcesContent":[null,null,null,null],"names":["z","zod","isTable","getTableColumns","getViewSelectedFields","is","Column","SQL","isView"],"mappings":"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"}
|
package/index.mjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { z } from 'zod';
|
|
1
|
+
import { z } from 'zod/v4';
|
|
2
2
|
import { isTable, getTableColumns, getViewSelectedFields, is, Column, SQL, isView } from 'drizzle-orm';
|
|
3
3
|
|
|
4
4
|
const CONSTANTS = {
|
|
@@ -31,7 +31,7 @@ function isWithEnum(column) {
|
|
|
31
31
|
const isPgEnum = isWithEnum;
|
|
32
32
|
|
|
33
33
|
const literalSchema = z.union([z.string(), z.number(), z.boolean(), z.null()]);
|
|
34
|
-
const jsonSchema = z.union([literalSchema, z.record(z.any()), z.array(z.any())]);
|
|
34
|
+
const jsonSchema = z.union([literalSchema, z.record(z.string(), z.any()), z.array(z.any())]);
|
|
35
35
|
const bufferSchema = z.custom((v) => v instanceof Buffer); // eslint-disable-line no-instanceof/no-instanceof
|
|
36
36
|
function columnToSchema(column, factory) {
|
|
37
37
|
const z$1 = factory?.zodInstance ?? z;
|
|
@@ -63,7 +63,7 @@ function columnToSchema(column, factory) {
|
|
|
63
63
|
});
|
|
64
64
|
} // Handle other types
|
|
65
65
|
else if (isColumnType(column, ['PgArray'])) {
|
|
66
|
-
schema = z$1.array(columnToSchema(column.baseColumn,
|
|
66
|
+
schema = z$1.array(columnToSchema(column.baseColumn, factory));
|
|
67
67
|
schema = column.size ? schema.length(column.size) : schema;
|
|
68
68
|
}
|
|
69
69
|
else if (column.dataType === 'array') {
|
|
@@ -174,20 +174,24 @@ function numberColumnToSchema(column, z, coerce) {
|
|
|
174
174
|
min = Number.MIN_SAFE_INTEGER;
|
|
175
175
|
max = Number.MAX_SAFE_INTEGER;
|
|
176
176
|
}
|
|
177
|
-
let schema = coerce === true || coerce?.number
|
|
178
|
-
|
|
179
|
-
|
|
177
|
+
let schema = coerce === true || coerce?.number
|
|
178
|
+
? integer ? z.coerce.number() : z.coerce.number().int()
|
|
179
|
+
: integer
|
|
180
|
+
? z.int()
|
|
181
|
+
: z.number();
|
|
182
|
+
schema = schema.gte(min).lte(max);
|
|
183
|
+
return schema;
|
|
180
184
|
}
|
|
181
185
|
function bigintColumnToSchema(column, z, coerce) {
|
|
182
186
|
const unsigned = column.getSQLType().includes('unsigned');
|
|
183
187
|
const min = unsigned ? 0n : CONSTANTS.INT64_MIN;
|
|
184
188
|
const max = unsigned ? CONSTANTS.INT64_UNSIGNED_MAX : CONSTANTS.INT64_MAX;
|
|
185
189
|
const schema = coerce === true || coerce?.bigint ? z.coerce.bigint() : z.bigint();
|
|
186
|
-
return schema.
|
|
190
|
+
return schema.gte(min).lte(max);
|
|
187
191
|
}
|
|
188
192
|
function stringColumnToSchema(column, z, coerce) {
|
|
189
193
|
if (isColumnType(column, ['PgUUID'])) {
|
|
190
|
-
return z.
|
|
194
|
+
return z.uuid();
|
|
191
195
|
}
|
|
192
196
|
let max;
|
|
193
197
|
let regex;
|
package/index.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.mjs","sources":["../src/constants.ts","../src/utils.ts","../src/column.ts","../src/schema.ts"],"sourcesContent":[null,null,null,null],"names":["z","zod"],"mappings":";;;AAAO,MAAM,SAAS,GAAG;IACxB,QAAQ,EAAE,CAAC,GAAG;AACd,IAAA,QAAQ,EAAE,GAAG;AACb,IAAA,iBAAiB,EAAE,GAAG;IACtB,SAAS,EAAE,CAAC,KAAK;AACjB,IAAA,SAAS,EAAE,KAAK;AAChB,IAAA,kBAAkB,EAAE,KAAK;IACzB,SAAS,EAAE,CAAC,OAAO;AACnB,IAAA,SAAS,EAAE,OAAO;AAClB,IAAA,kBAAkB,EAAE,QAAQ;IAC5B,SAAS,EAAE,CAAC,UAAU;AACtB,IAAA,SAAS,EAAE,UAAU;AACrB,IAAA,kBAAkB,EAAE,UAAU;IAC9B,SAAS,EAAE,CAAC,eAAe;AAC3B,IAAA,SAAS,EAAE,eAAe;AAC1B,IAAA,kBAAkB,EAAE,eAAe;IACnC,SAAS,EAAE,CAAC,oBAAoB;AAChC,IAAA,SAAS,EAAE,oBAAoB;AAC/B,IAAA,kBAAkB,EAAE,qBAAqB;CACzC;;ACde,SAAA,YAAY,CAAmB,MAAc,EAAE,WAAqB,EAAA;IACnF,OAAO,WAAW,CAAC,QAAQ,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;AAChD,CAAC;AAEK,SAAU,UAAU,CAAC,MAAc,EAAA;IACxC,OAAO,YAAY,IAAI,MAAM,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,MAAM,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC;AACnG,CAAC;AAEM,MAAM,QAAQ,GAA6D;;ACiD3E,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE;AAC/E,MAAM,UAAU,GAAoB,CAAC,CAAC,KAAK,CAAC,CAAC,aAAa,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE;AAC5F,MAAA,YAAY,GAAsB,CAAC,CAAC,MAAM,CAAS,CAAC,CAAC,KAAK,CAAC,YAAY,MAAM,EAAE;AAE5E,SAAA,cAAc,CAAC,MAAc,EAAE,OAA+C,EAAA;AAC7F,IAAA,MAAMA,GAAC,GAAG,OAAO,EAAE,WAAW,IAAIC,CAAG,CAAC;AACtC,IAAA,MAAM,MAAM,GAAG,OAAO,EAAE,MAAM,IAAI,EAAE,CAAC;AACrC,IAAA,IAAI,MAAqB,CAAC;AAE1B,IAAA,IAAI,UAAU,CAAC,MAAM,CAAC,EAAE;QACvB,MAAM,GAAG,MAAM,CAAC,UAAU,CAAC,MAAM,GAAGD,GAAC,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,GAAGA,GAAC,CAAC,MAAM,EAAE,CAAC;KAC3E;IAED,IAAI,CAAC,MAAM,EAAE;;QAEZ,IAAI,YAAY,CAAsC,MAAM,EAAE,CAAC,YAAY,EAAE,cAAc,CAAC,CAAC,EAAE;AAC9F,YAAA,MAAM,GAAGA,GAAC,CAAC,KAAK,CAAC,CAACA,GAAC,CAAC,MAAM,EAAE,EAAEA,GAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;SAC3C;aAAM,IACN,YAAY,CAA6C,MAAM,EAAE,CAAC,kBAAkB,EAAE,eAAe,CAAC,CAAC,EACtG;YACD,MAAM,GAAGA,GAAC,CAAC,MAAM,CAAC,EAAE,CAAC,EAAEA,GAAC,CAAC,MAAM,EAAE,EAAE,CAAC,EAAEA,GAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;SACpD;aAAM,IAAI,YAAY,CAAoC,MAAM,EAAE,CAAC,cAAc,EAAE,UAAU,CAAC,CAAC,EAAE;YACjG,MAAM,GAAGA,GAAC,CAAC,KAAK,CAACA,GAAC,CAAC,MAAM,EAAE,CAAC,CAAC;AAC7B,YAAA,MAAM,GAAG,MAAM,CAAC,UAAU,GAAI,MAA0B,CAAC,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,GAAG,MAAM,CAAC;SAC5F;aAAM,IAAI,YAAY,CAAmB,MAAM,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE;YAC9D,MAAM,GAAGA,GAAC,CAAC,KAAK,CAAC,CAACA,GAAC,CAAC,MAAM,EAAE,EAAEA,GAAC,CAAC,MAAM,EAAE,EAAEA,GAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;SACvD;aAAM,IAAI,YAAY,CAAiB,MAAM,EAAE,CAAC,WAAW,CAAC,CAAC,EAAE;AAC/D,YAAA,MAAM,GAAGA,GAAC,CAAC,MAAM,CAAC;AACjB,gBAAA,CAAC,EAAEA,GAAC,CAAC,MAAM,EAAE;AACb,gBAAA,CAAC,EAAEA,GAAC,CAAC,MAAM,EAAE;AACb,gBAAA,CAAC,EAAEA,GAAC,CAAC,MAAM,EAAE;AACb,aAAA,CAAC,CAAC;AACJ,SAAC;aACI,IAAI,YAAY,CAAoB,MAAM,EAAE,CAAC,SAAS,CAAC,CAAC,EAAE;AAC9D,YAAA,MAAM,GAAGA,GAAC,CAAC,KAAK,CAAC,cAAc,CAAC,MAAM,CAAC,UAAU,EAAEA,GAAC,CAAC,CAAC,CAAC;AACvD,YAAA,MAAM,GAAG,MAAM,CAAC,IAAI,GAAI,MAA0B,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;SAChF;AAAM,aAAA,IAAI,MAAM,CAAC,QAAQ,KAAK,OAAO,EAAE;YACvC,MAAM,GAAGA,GAAC,CAAC,KAAK,CAACA,GAAC,CAAC,GAAG,EAAE,CAAC,CAAC;SAC1B;AAAM,aAAA,IAAI,MAAM,CAAC,QAAQ,KAAK,QAAQ,EAAE;YACxC,MAAM,GAAG,oBAAoB,CAAC,MAAM,EAAEA,GAAC,EAAE,MAAM,CAAC,CAAC;SACjD;AAAM,aAAA,IAAI,MAAM,CAAC,QAAQ,KAAK,QAAQ,EAAE;YACxC,MAAM,GAAG,oBAAoB,CAAC,MAAM,EAAEA,GAAC,EAAE,MAAM,CAAC,CAAC;SACjD;AAAM,aAAA,IAAI,MAAM,CAAC,QAAQ,KAAK,SAAS,EAAE;YACzC,MAAM,GAAG,MAAM,KAAK,IAAI,IAAI,MAAM,CAAC,OAAO,GAAGA,GAAC,CAAC,MAAM,CAAC,OAAO,EAAE,GAAGA,GAAC,CAAC,OAAO,EAAE,CAAC;SAC9E;AAAM,aAAA,IAAI,MAAM,CAAC,QAAQ,KAAK,MAAM,EAAE;YACtC,MAAM,GAAG,MAAM,KAAK,IAAI,IAAI,MAAM,CAAC,IAAI,GAAGA,GAAC,CAAC,MAAM,CAAC,IAAI,EAAE,GAAGA,GAAC,CAAC,IAAI,EAAE,CAAC;SACrE;AAAM,aAAA,IAAI,MAAM,CAAC,QAAQ,KAAK,QAAQ,EAAE;YACxC,MAAM,GAAG,oBAAoB,CAAC,MAAM,EAAEA,GAAC,EAAE,MAAM,CAAC,CAAC;SACjD;AAAM,aAAA,IAAI,MAAM,CAAC,QAAQ,KAAK,MAAM,EAAE;YACtC,MAAM,GAAG,UAAU,CAAC;SACpB;AAAM,aAAA,IAAI,MAAM,CAAC,QAAQ,KAAK,QAAQ,EAAE;AACxC,YAAA,MAAM,GAAGA,GAAC,CAAC,GAAG,EAAE,CAAC;SACjB;AAAM,aAAA,IAAI,MAAM,CAAC,QAAQ,KAAK,QAAQ,EAAE;YACxC,MAAM,GAAG,YAAY,CAAC;SACtB;KACD;IAED,IAAI,CAAC,MAAM,EAAE;AACZ,QAAA,MAAM,GAAGA,GAAC,CAAC,GAAG,EAAE,CAAC;KACjB;AAED,IAAA,OAAO,MAAM,CAAC;AACf,CAAC;AAED,SAAS,oBAAoB,CAC5B,MAAc,EACd,CAAa,EACb,MAA4C,EAAA;IAE5C,IAAI,QAAQ,GAAG,MAAM,CAAC,UAAU,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;AACxD,IAAA,IAAI,GAAY,CAAC;AACjB,IAAA,IAAI,GAAY,CAAC;IACjB,IAAI,OAAO,GAAG,KAAK,CAAC;IAEpB,IAAI,YAAY,CAA8C,MAAM,EAAE,CAAC,cAAc,EAAE,oBAAoB,CAAC,CAAC,EAAE;AAC9G,QAAA,GAAG,GAAG,QAAQ,GAAG,CAAC,GAAG,SAAS,CAAC,QAAQ,CAAC;AACxC,QAAA,GAAG,GAAG,QAAQ,GAAG,SAAS,CAAC,iBAAiB,GAAG,SAAS,CAAC,QAAQ,CAAC;QAClE,OAAO,GAAG,IAAI,CAAC;KACf;SAAM,IACN,YAAY,CAAuF,MAAM,EAAE;QAC1G,YAAY;QACZ,eAAe;QACf,eAAe;QACf,qBAAqB;AACrB,KAAA,CAAC,EACD;AACD,QAAA,GAAG,GAAG,QAAQ,GAAG,CAAC,GAAG,SAAS,CAAC,SAAS,CAAC;AACzC,QAAA,GAAG,GAAG,QAAQ,GAAG,SAAS,CAAC,kBAAkB,GAAG,SAAS,CAAC,SAAS,CAAC;QACpE,OAAO,GAAG,IAAI,CAAC;KACf;SAAM,IACN,YAAY,CAEV,MAAM,EAAE;QACT,QAAQ;QACR,YAAY;QACZ,gBAAgB;QAChB,sBAAsB;QACtB,kBAAkB;AAClB,KAAA,CAAC,EACD;AACD,QAAA,GAAG,GAAG,QAAQ,GAAG,CAAC,GAAG,SAAS,CAAC,SAAS,CAAC;AACzC,QAAA,GAAG,GAAG,QAAQ,GAAG,SAAS,CAAC,kBAAkB,GAAG,SAAS,CAAC,SAAS,CAAC;QACpE,OAAO,GAAG,YAAY,CAAC,MAAM,EAAE,CAAC,gBAAgB,EAAE,sBAAsB,CAAC,CAAC,CAAC;KAC3E;SAAM,IACN,YAAY,CAAuE,MAAM,EAAE;QAC1F,WAAW;QACX,UAAU;QACV,UAAU;QACV,gBAAgB;AAChB,KAAA,CAAC,EACD;AACD,QAAA,GAAG,GAAG,QAAQ,GAAG,CAAC,GAAG,SAAS,CAAC,SAAS,CAAC;AACzC,QAAA,GAAG,GAAG,QAAQ,GAAG,SAAS,CAAC,kBAAkB,GAAG,SAAS,CAAC,SAAS,CAAC;QACpE,OAAO,GAAG,IAAI,CAAC;KACf;SAAM,IACN,YAAY,CAOV,MAAM,EAAE;QACT,mBAAmB;QACnB,WAAW;QACX,aAAa;QACb,iBAAiB;QACjB,mBAAmB;QACnB,YAAY;AACZ,KAAA,CAAC,EACD;AACD,QAAA,GAAG,GAAG,QAAQ,GAAG,CAAC,GAAG,SAAS,CAAC,SAAS,CAAC;AACzC,QAAA,GAAG,GAAG,QAAQ,GAAG,SAAS,CAAC,kBAAkB,GAAG,SAAS,CAAC,SAAS,CAAC;KACpE;SAAM,IACN,YAAY,CASX,MAAM,EACN;QACC,YAAY;QACZ,eAAe;QACf,eAAe;QACf,aAAa;QACb,qBAAqB;QACrB,mBAAmB;QACnB,eAAe;AACf,KAAA,CACD,EACA;AACD,QAAA,QAAQ,GAAG,QAAQ,IAAI,YAAY,CAAC,MAAM,EAAE,CAAC,aAAa,EAAE,mBAAmB,CAAC,CAAC,CAAC;AAClF,QAAA,GAAG,GAAG,QAAQ,GAAG,CAAC,GAAG,MAAM,CAAC,gBAAgB,CAAC;AAC7C,QAAA,GAAG,GAAG,MAAM,CAAC,gBAAgB,CAAC;QAC9B,OAAO,GAAG,IAAI,CAAC;KACf;SAAM,IAAI,YAAY,CAAwC,MAAM,EAAE,CAAC,WAAW,EAAE,iBAAiB,CAAC,CAAC,EAAE;QACzG,GAAG,GAAG,IAAI,CAAC;QACX,GAAG,GAAG,IAAI,CAAC;QACX,OAAO,GAAG,IAAI,CAAC;KACf;SAAM;AACN,QAAA,GAAG,GAAG,MAAM,CAAC,gBAAgB,CAAC;AAC9B,QAAA,GAAG,GAAG,MAAM,CAAC,gBAAgB,CAAC;KAC9B;IAED,IAAI,MAAM,GAAG,MAAM,KAAK,IAAI,IAAI,MAAM,EAAE,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC;AAChF,IAAA,MAAM,GAAG,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;AAClC,IAAA,OAAO,OAAO,GAAG,MAAM,CAAC,GAAG,EAAE,GAAG,MAAM,CAAC;AACxC,CAAC;AAED,SAAS,oBAAoB,CAC5B,MAAc,EACd,CAAa,EACb,MAA4C,EAAA;IAE5C,MAAM,QAAQ,GAAG,MAAM,CAAC,UAAU,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;AAC1D,IAAA,MAAM,GAAG,GAAG,QAAQ,GAAG,EAAE,GAAG,SAAS,CAAC,SAAS,CAAC;AAChD,IAAA,MAAM,GAAG,GAAG,QAAQ,GAAG,SAAS,CAAC,kBAAkB,GAAG,SAAS,CAAC,SAAS,CAAC;IAE1E,MAAM,MAAM,GAAG,MAAM,KAAK,IAAI,IAAI,MAAM,EAAE,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC;IAClF,OAAO,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;AACjC,CAAC;AAED,SAAS,oBAAoB,CAC5B,MAAc,EACd,CAAa,EACb,MAA4C,EAAA;IAE5C,IAAI,YAAY,CAA+C,MAAM,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE;AACnF,QAAA,OAAO,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC;KACzB;AAED,IAAA,IAAI,GAAuB,CAAC;AAC5B,IAAA,IAAI,KAAyB,CAAC;IAC9B,IAAI,KAAK,GAAG,KAAK,CAAC;IAElB,IAAI,YAAY,CAAmC,MAAM,EAAE,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC,EAAE;AACxF,QAAA,GAAG,GAAG,MAAM,CAAC,MAAM,CAAC;KACpB;SAAM,IACN,YAAY,CAA8C,MAAM,EAAE,CAAC,cAAc,EAAE,oBAAoB,CAAC,CAAC,EACxG;QACD,GAAG,GAAG,MAAM,CAAC,MAAM,IAAI,SAAS,CAAC,kBAAkB,CAAC;KACpD;SAAM,IAAI,YAAY,CAAwC,MAAM,EAAE,CAAC,WAAW,EAAE,iBAAiB,CAAC,CAAC,EAAE;AACzG,QAAA,IAAI,MAAM,CAAC,QAAQ,KAAK,UAAU,EAAE;AACnC,YAAA,GAAG,GAAG,SAAS,CAAC,kBAAkB,CAAC;SACnC;AAAM,aAAA,IAAI,MAAM,CAAC,QAAQ,KAAK,YAAY,EAAE;AAC5C,YAAA,GAAG,GAAG,SAAS,CAAC,kBAAkB,CAAC;SACnC;AAAM,aAAA,IAAI,MAAM,CAAC,QAAQ,KAAK,MAAM,EAAE;AACtC,YAAA,GAAG,GAAG,SAAS,CAAC,kBAAkB,CAAC;SACnC;aAAM;AACN,YAAA,GAAG,GAAG,SAAS,CAAC,iBAAiB,CAAC;SAClC;KACD;IAED,IACC,YAAY,CAAsD,MAAM,EAAE;QACzE,QAAQ;QACR,WAAW;QACX,iBAAiB;AACjB,KAAA,CAAC,EACD;AACD,QAAA,GAAG,GAAG,MAAM,CAAC,MAAM,CAAC;QACpB,KAAK,GAAG,IAAI,CAAC;KACb;IAED,IAAI,YAAY,CAAsB,MAAM,EAAE,CAAC,gBAAgB,CAAC,CAAC,EAAE;QAClE,KAAK,GAAG,SAAS,CAAC;AAClB,QAAA,GAAG,GAAG,MAAM,CAAC,UAAU,CAAC;KACxB;IAED,IAAI,MAAM,GAAG,MAAM,KAAK,IAAI,IAAI,MAAM,EAAE,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC;AAChF,IAAA,MAAM,GAAG,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC;AAC9C,IAAA,OAAO,GAAG,IAAI,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,GAAG,GAAG,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC;AAC3E;;AC5RA,SAAS,UAAU,CAAC,SAAuB,EAAA;AAC1C,IAAA,OAAO,OAAO,CAAC,SAAS,CAAC,GAAG,eAAe,CAAC,SAAS,CAAC,GAAG,qBAAqB,CAAC,SAAS,CAAC,CAAC;AAC3F,CAAC;AAED,SAAS,aAAa,CACrB,OAA4B,EAC5B,WAAgC,EAChC,UAAsB,EACtB,OAAoC,EAAA;IAEpC,MAAM,aAAa,GAAiC,EAAE,CAAC;AAEvD,IAAA,KAAK,MAAM,CAAC,GAAG,EAAE,QAAQ,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE;AACtD,QAAA,IAAI,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,QAAQ,EAAE,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,QAAQ,EAAE,GAAG,CAAC,OAAO,CAAC,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE;YAC9G,MAAM,OAAO,GAAG,OAAO,CAAC,QAAQ,CAAC,IAAI,MAAM,CAAC,QAAQ,CAAC,GAAG,UAAU,CAAC,QAAQ,CAAC,GAAG,QAAQ,CAAC;AACxF,YAAA,aAAa,CAAC,GAAG,CAAC,GAAG,aAAa,CAAC,OAAO,EAAE,WAAW,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC;YACzF,SAAS;SACT;AAED,QAAA,MAAM,UAAU,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC;QACpC,IAAI,UAAU,KAAK,SAAS,IAAI,OAAO,UAAU,KAAK,UAAU,EAAE;AACjE,YAAA,aAAa,CAAC,GAAG,CAAC,GAAG,UAAU,CAAC;YAChC,SAAS;SACT;AAED,QAAA,MAAM,MAAM,GAAG,EAAE,CAAC,QAAQ,EAAE,MAAM,CAAC,GAAG,QAAQ,GAAG,SAAS,CAAC;AAC3D,QAAA,MAAM,MAAM,GAAG,MAAM,GAAG,cAAc,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC;AAClE,QAAA,MAAM,OAAO,GAAG,OAAO,UAAU,KAAK,UAAU,GAAG,UAAU,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC;AAE/E,QAAA,IAAI,UAAU,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE;YAC7B,SAAS;SACT;aAAM;AACN,YAAA,aAAa,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC;SAC7B;QAED,IAAI,MAAM,EAAE;AACX,YAAA,IAAI,UAAU,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE;gBAChC,aAAa,CAAC,GAAG,CAAC,GAAG,aAAa,CAAC,GAAG,CAAE,CAAC,QAAQ,EAAE,CAAC;aACpD;AAED,YAAA,IAAI,UAAU,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE;gBAChC,aAAa,CAAC,GAAG,CAAC,GAAG,aAAa,CAAC,GAAG,CAAE,CAAC,QAAQ,EAAE,CAAC;aACpD;SACD;KACD;AAED,IAAA,OAAO,CAAC,CAAC,MAAM,CAAC,aAAa,CAAQ,CAAC;AACvC,CAAC;AAED,SAAS,UAAU,CAAC,KAAkB,EAAE,OAAoC,EAAA;AAC3E,IAAA,MAAM,GAAG,GAAa,OAAO,EAAE,WAAW,IAAI,CAAC,CAAC;IAChD,OAAO,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;AACnC,CAAC;AAED,MAAM,gBAAgB,GAAe;AACpC,IAAA,KAAK,EAAE,MAAM,KAAK;AAClB,IAAA,QAAQ,EAAE,MAAM,KAAK;IACrB,QAAQ,EAAE,CAAC,MAAM,KAAK,CAAC,MAAM,CAAC,OAAO;CACrC,CAAC;AAEF,MAAM,gBAAgB,GAAe;IACpC,KAAK,EAAE,CAAC,MAAM,KAAK,MAAM,EAAE,SAAS,EAAE,IAAI,KAAK,QAAQ,IAAI,MAAM,EAAE,iBAAiB,EAAE,IAAI,KAAK,QAAQ;AACvG,IAAA,QAAQ,EAAE,CAAC,MAAM,KAAK,CAAC,MAAM,CAAC,OAAO,KAAK,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,UAAU,CAAC;IAC9E,QAAQ,EAAE,CAAC,MAAM,KAAK,CAAC,MAAM,CAAC,OAAO;CACrC,CAAC;AAEF,MAAM,gBAAgB,GAAe;IACpC,KAAK,EAAE,CAAC,MAAM,KAAK,MAAM,EAAE,SAAS,EAAE,IAAI,KAAK,QAAQ,IAAI,MAAM,EAAE,iBAAiB,EAAE,IAAI,KAAK,QAAQ;AACvG,IAAA,QAAQ,EAAE,MAAM,IAAI;IACpB,QAAQ,EAAE,CAAC,MAAM,KAAK,CAAC,MAAM,CAAC,OAAO;CACrC,CAAC;MAEW,kBAAkB,GAAuB,CACrD,MAAoD,EACpD,MAA4B,KACzB;AACH,IAAA,IAAI,QAAQ,CAAC,MAAM,CAAC,EAAE;AACrB,QAAA,OAAO,UAAU,CAAC,MAAM,CAAC,CAAC;KAC1B;AACD,IAAA,MAAM,OAAO,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC;IACnC,OAAO,aAAa,CAAC,OAAO,EAAE,MAAM,IAAI,EAAE,EAAE,gBAAgB,CAAQ,CAAC;AACtE,EAAE;MAEW,kBAAkB,GAAuB,CACrD,MAAa,EACb,MAA4B,KACzB;AACH,IAAA,MAAM,OAAO,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC;IACnC,OAAO,aAAa,CAAC,OAAO,EAAE,MAAM,IAAI,EAAE,EAAE,gBAAgB,CAAQ,CAAC;AACtE,EAAE;MAEW,kBAAkB,GAAuB,CACrD,MAAa,EACb,MAA4B,KACzB;AACH,IAAA,MAAM,OAAO,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC;IACnC,OAAO,aAAa,CAAC,OAAO,EAAE,MAAM,IAAI,EAAE,EAAE,gBAAgB,CAAQ,CAAC;AACtE,EAAE;AAEI,SAAU,mBAAmB,CAAC,OAAoC,EAAA;AACvE,IAAA,MAAM,kBAAkB,GAAuB,CAC9C,MAAoD,EACpD,MAA4B,KACzB;AACH,QAAA,IAAI,QAAQ,CAAC,MAAM,CAAC,EAAE;AACrB,YAAA,OAAO,UAAU,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;SACnC;AACD,QAAA,MAAM,OAAO,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC;AACnC,QAAA,OAAO,aAAa,CAAC,OAAO,EAAE,MAAM,IAAI,EAAE,EAAE,gBAAgB,EAAE,OAAO,CAAQ,CAAC;AAC/E,KAAC,CAAC;AAEF,IAAA,MAAM,kBAAkB,GAAuB,CAC9C,MAAa,EACb,MAA4B,KACzB;AACH,QAAA,MAAM,OAAO,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC;AACnC,QAAA,OAAO,aAAa,CAAC,OAAO,EAAE,MAAM,IAAI,EAAE,EAAE,gBAAgB,EAAE,OAAO,CAAQ,CAAC;AAC/E,KAAC,CAAC;AAEF,IAAA,MAAM,kBAAkB,GAAuB,CAC9C,MAAa,EACb,MAA4B,KACzB;AACH,QAAA,MAAM,OAAO,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC;AACnC,QAAA,OAAO,aAAa,CAAC,OAAO,EAAE,MAAM,IAAI,EAAE,EAAE,gBAAgB,EAAE,OAAO,CAAQ,CAAC;AAC/E,KAAC,CAAC;AAEF,IAAA,OAAO,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,CAAC;AACvE;;;;"}
|
|
1
|
+
{"version":3,"file":"index.mjs","sources":["../src/constants.ts","../src/utils.ts","../src/column.ts","../src/schema.ts"],"sourcesContent":[null,null,null,null],"names":["z","zod"],"mappings":";;;AAAO,MAAM,SAAS,GAAG;IACxB,QAAQ,EAAE,CAAC,GAAG;AACd,IAAA,QAAQ,EAAE,GAAG;AACb,IAAA,iBAAiB,EAAE,GAAG;IACtB,SAAS,EAAE,CAAC,KAAK;AACjB,IAAA,SAAS,EAAE,KAAK;AAChB,IAAA,kBAAkB,EAAE,KAAK;IACzB,SAAS,EAAE,CAAC,OAAO;AACnB,IAAA,SAAS,EAAE,OAAO;AAClB,IAAA,kBAAkB,EAAE,QAAQ;IAC5B,SAAS,EAAE,CAAC,UAAU;AACtB,IAAA,SAAS,EAAE,UAAU;AACrB,IAAA,kBAAkB,EAAE,UAAU;IAC9B,SAAS,EAAE,CAAC,eAAe;AAC3B,IAAA,SAAS,EAAE,eAAe;AAC1B,IAAA,kBAAkB,EAAE,eAAe;IACnC,SAAS,EAAE,CAAC,oBAAoB;AAChC,IAAA,SAAS,EAAE,oBAAoB;AAC/B,IAAA,kBAAkB,EAAE,qBAAqB;CACzC;;ACde,SAAA,YAAY,CAAmB,MAAc,EAAE,WAAqB,EAAA;IACnF,OAAO,WAAW,CAAC,QAAQ,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;AAChD,CAAC;AAEK,SAAU,UAAU,CAAC,MAAc,EAAA;IACxC,OAAO,YAAY,IAAI,MAAM,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,MAAM,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC;AACnG,CAAC;AAEM,MAAM,QAAQ,GAA6D;;ACiD3E,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE;AACzE,MAAA,UAAU,GAAoB,CAAC,CAAC,KAAK,CAAC,CAAC,aAAa,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE;AACxG,MAAA,YAAY,GAAsB,CAAC,CAAC,MAAM,CAAS,CAAC,CAAC,KAAK,CAAC,YAAY,MAAM,EAAE;AAE5E,SAAA,cAAc,CAC7B,MAAc,EACd,OAIY,EAAA;AAEZ,IAAA,MAAMA,GAAC,GAAe,OAAO,EAAE,WAAW,IAAIC,CAAG,CAAC;AAClD,IAAA,MAAM,MAAM,GAAG,OAAO,EAAE,MAAM,IAAI,EAAE,CAAC;AACrC,IAAA,IAAI,MAAkB,CAAC;AAEvB,IAAA,IAAI,UAAU,CAAC,MAAM,CAAC,EAAE;QACvB,MAAM,GAAG,MAAM,CAAC,UAAU,CAAC,MAAM,GAAGD,GAAC,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,GAAGA,GAAC,CAAC,MAAM,EAAE,CAAC;KAC3E;IAED,IAAI,CAAC,MAAM,EAAE;;QAEZ,IAAI,YAAY,CAAsC,MAAM,EAAE,CAAC,YAAY,EAAE,cAAc,CAAC,CAAC,EAAE;AAC9F,YAAA,MAAM,GAAGA,GAAC,CAAC,KAAK,CAAC,CAACA,GAAC,CAAC,MAAM,EAAE,EAAEA,GAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;SAC3C;aAAM,IACN,YAAY,CAA6C,MAAM,EAAE,CAAC,kBAAkB,EAAE,eAAe,CAAC,CAAC,EACtG;YACD,MAAM,GAAGA,GAAC,CAAC,MAAM,CAAC,EAAE,CAAC,EAAEA,GAAC,CAAC,MAAM,EAAE,EAAE,CAAC,EAAEA,GAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;SACpD;aAAM,IAAI,YAAY,CAAoC,MAAM,EAAE,CAAC,cAAc,EAAE,UAAU,CAAC,CAAC,EAAE;YACjG,MAAM,GAAGA,GAAC,CAAC,KAAK,CAACA,GAAC,CAAC,MAAM,EAAE,CAAC,CAAC;AAC7B,YAAA,MAAM,GAAG,MAAM,CAAC,UAAU,GAAI,MAA0B,CAAC,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,GAAG,MAAM,CAAC;SAC5F;aAAM,IAAI,YAAY,CAAmB,MAAM,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE;YAC9D,MAAM,GAAGA,GAAC,CAAC,KAAK,CAAC,CAACA,GAAC,CAAC,MAAM,EAAE,EAAEA,GAAC,CAAC,MAAM,EAAE,EAAEA,GAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;SACvD;aAAM,IAAI,YAAY,CAAiB,MAAM,EAAE,CAAC,WAAW,CAAC,CAAC,EAAE;AAC/D,YAAA,MAAM,GAAGA,GAAC,CAAC,MAAM,CAAC;AACjB,gBAAA,CAAC,EAAEA,GAAC,CAAC,MAAM,EAAE;AACb,gBAAA,CAAC,EAAEA,GAAC,CAAC,MAAM,EAAE;AACb,gBAAA,CAAC,EAAEA,GAAC,CAAC,MAAM,EAAE;AACb,aAAA,CAAC,CAAC;AACJ,SAAC;aACI,IAAI,YAAY,CAAoB,MAAM,EAAE,CAAC,SAAS,CAAC,CAAC,EAAE;AAC9D,YAAA,MAAM,GAAGA,GAAC,CAAC,KAAK,CAAC,cAAc,CAAC,MAAM,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC,CAAC;AAC7D,YAAA,MAAM,GAAG,MAAM,CAAC,IAAI,GAAI,MAA0B,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;SAChF;AAAM,aAAA,IAAI,MAAM,CAAC,QAAQ,KAAK,OAAO,EAAE;YACvC,MAAM,GAAGA,GAAC,CAAC,KAAK,CAACA,GAAC,CAAC,GAAG,EAAE,CAAC,CAAC;SAC1B;AAAM,aAAA,IAAI,MAAM,CAAC,QAAQ,KAAK,QAAQ,EAAE;YACxC,MAAM,GAAG,oBAAoB,CAAC,MAAM,EAAEA,GAAC,EAAE,MAAM,CAAC,CAAC;SACjD;AAAM,aAAA,IAAI,MAAM,CAAC,QAAQ,KAAK,QAAQ,EAAE;YACxC,MAAM,GAAG,oBAAoB,CAAC,MAAM,EAAEA,GAAC,EAAE,MAAM,CAAC,CAAC;SACjD;AAAM,aAAA,IAAI,MAAM,CAAC,QAAQ,KAAK,SAAS,EAAE;YACzC,MAAM,GAAG,MAAM,KAAK,IAAI,IAAI,MAAM,CAAC,OAAO,GAAGA,GAAC,CAAC,MAAM,CAAC,OAAO,EAAE,GAAGA,GAAC,CAAC,OAAO,EAAE,CAAC;SAC9E;AAAM,aAAA,IAAI,MAAM,CAAC,QAAQ,KAAK,MAAM,EAAE;YACtC,MAAM,GAAG,MAAM,KAAK,IAAI,IAAI,MAAM,CAAC,IAAI,GAAGA,GAAC,CAAC,MAAM,CAAC,IAAI,EAAE,GAAGA,GAAC,CAAC,IAAI,EAAE,CAAC;SACrE;AAAM,aAAA,IAAI,MAAM,CAAC,QAAQ,KAAK,QAAQ,EAAE;YACxC,MAAM,GAAG,oBAAoB,CAAC,MAAM,EAAEA,GAAC,EAAE,MAAM,CAAC,CAAC;SACjD;AAAM,aAAA,IAAI,MAAM,CAAC,QAAQ,KAAK,MAAM,EAAE;YACtC,MAAM,GAAG,UAAU,CAAC;SACpB;AAAM,aAAA,IAAI,MAAM,CAAC,QAAQ,KAAK,QAAQ,EAAE;AACxC,YAAA,MAAM,GAAGA,GAAC,CAAC,GAAG,EAAE,CAAC;SACjB;AAAM,aAAA,IAAI,MAAM,CAAC,QAAQ,KAAK,QAAQ,EAAE;YACxC,MAAM,GAAG,YAAY,CAAC;SACtB;KACD;IAED,IAAI,CAAC,MAAM,EAAE;AACZ,QAAA,MAAM,GAAGA,GAAC,CAAC,GAAG,EAAE,CAAC;KACjB;AAED,IAAA,OAAO,MAAM,CAAC;AACf,CAAC;AAED,SAAS,oBAAoB,CAC5B,MAAc,EACd,CAAa,EACb,MAEW,EAAA;IAEX,IAAI,QAAQ,GAAG,MAAM,CAAC,UAAU,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;AACxD,IAAA,IAAI,GAAY,CAAC;AACjB,IAAA,IAAI,GAAY,CAAC;IACjB,IAAI,OAAO,GAAG,KAAK,CAAC;IAEpB,IAAI,YAAY,CAA8C,MAAM,EAAE,CAAC,cAAc,EAAE,oBAAoB,CAAC,CAAC,EAAE;AAC9G,QAAA,GAAG,GAAG,QAAQ,GAAG,CAAC,GAAG,SAAS,CAAC,QAAQ,CAAC;AACxC,QAAA,GAAG,GAAG,QAAQ,GAAG,SAAS,CAAC,iBAAiB,GAAG,SAAS,CAAC,QAAQ,CAAC;QAClE,OAAO,GAAG,IAAI,CAAC;KACf;SAAM,IACN,YAAY,CAAuF,MAAM,EAAE;QAC1G,YAAY;QACZ,eAAe;QACf,eAAe;QACf,qBAAqB;AACrB,KAAA,CAAC,EACD;AACD,QAAA,GAAG,GAAG,QAAQ,GAAG,CAAC,GAAG,SAAS,CAAC,SAAS,CAAC;AACzC,QAAA,GAAG,GAAG,QAAQ,GAAG,SAAS,CAAC,kBAAkB,GAAG,SAAS,CAAC,SAAS,CAAC;QACpE,OAAO,GAAG,IAAI,CAAC;KACf;SAAM,IACN,YAAY,CAEV,MAAM,EAAE;QACT,QAAQ;QACR,YAAY;QACZ,gBAAgB;QAChB,sBAAsB;QACtB,kBAAkB;AAClB,KAAA,CAAC,EACD;AACD,QAAA,GAAG,GAAG,QAAQ,GAAG,CAAC,GAAG,SAAS,CAAC,SAAS,CAAC;AACzC,QAAA,GAAG,GAAG,QAAQ,GAAG,SAAS,CAAC,kBAAkB,GAAG,SAAS,CAAC,SAAS,CAAC;QACpE,OAAO,GAAG,YAAY,CAAC,MAAM,EAAE,CAAC,gBAAgB,EAAE,sBAAsB,CAAC,CAAC,CAAC;KAC3E;SAAM,IACN,YAAY,CAAuE,MAAM,EAAE;QAC1F,WAAW;QACX,UAAU;QACV,UAAU;QACV,gBAAgB;AAChB,KAAA,CAAC,EACD;AACD,QAAA,GAAG,GAAG,QAAQ,GAAG,CAAC,GAAG,SAAS,CAAC,SAAS,CAAC;AACzC,QAAA,GAAG,GAAG,QAAQ,GAAG,SAAS,CAAC,kBAAkB,GAAG,SAAS,CAAC,SAAS,CAAC;QACpE,OAAO,GAAG,IAAI,CAAC;KACf;SAAM,IACN,YAAY,CAOV,MAAM,EAAE;QACT,mBAAmB;QACnB,WAAW;QACX,aAAa;QACb,iBAAiB;QACjB,mBAAmB;QACnB,YAAY;AACZ,KAAA,CAAC,EACD;AACD,QAAA,GAAG,GAAG,QAAQ,GAAG,CAAC,GAAG,SAAS,CAAC,SAAS,CAAC;AACzC,QAAA,GAAG,GAAG,QAAQ,GAAG,SAAS,CAAC,kBAAkB,GAAG,SAAS,CAAC,SAAS,CAAC;KACpE;SAAM,IACN,YAAY,CASX,MAAM,EACN;QACC,YAAY;QACZ,eAAe;QACf,eAAe;QACf,aAAa;QACb,qBAAqB;QACrB,mBAAmB;QACnB,eAAe;AACf,KAAA,CACD,EACA;AACD,QAAA,QAAQ,GAAG,QAAQ,IAAI,YAAY,CAAC,MAAM,EAAE,CAAC,aAAa,EAAE,mBAAmB,CAAC,CAAC,CAAC;AAClF,QAAA,GAAG,GAAG,QAAQ,GAAG,CAAC,GAAG,MAAM,CAAC,gBAAgB,CAAC;AAC7C,QAAA,GAAG,GAAG,MAAM,CAAC,gBAAgB,CAAC;QAC9B,OAAO,GAAG,IAAI,CAAC;KACf;SAAM,IAAI,YAAY,CAAwC,MAAM,EAAE,CAAC,WAAW,EAAE,iBAAiB,CAAC,CAAC,EAAE;QACzG,GAAG,GAAG,IAAI,CAAC;QACX,GAAG,GAAG,IAAI,CAAC;QACX,OAAO,GAAG,IAAI,CAAC;KACf;SAAM;AACN,QAAA,GAAG,GAAG,MAAM,CAAC,gBAAgB,CAAC;AAC9B,QAAA,GAAG,GAAG,MAAM,CAAC,gBAAgB,CAAC;KAC9B;IAED,IAAI,MAAM,GAAG,MAAM,KAAK,IAAI,IAAI,MAAM,EAAE,MAAM;UAC3C,OAAO,GAAG,CAAC,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE;AACvD,UAAE,OAAO;AACT,cAAE,CAAC,CAAC,GAAG,EAAE;AACT,cAAE,CAAC,CAAC,MAAM,EAAE,CAAC;AACd,IAAA,MAAM,GAAG,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;AAClC,IAAA,OAAO,MAAM,CAAC;AACf,CAAC;AAED,SAAS,oBAAoB,CAC5B,MAAc,EACd,CAAa,EACb,MAEW,EAAA;IAEX,MAAM,QAAQ,GAAG,MAAM,CAAC,UAAU,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;AAC1D,IAAA,MAAM,GAAG,GAAG,QAAQ,GAAG,EAAE,GAAG,SAAS,CAAC,SAAS,CAAC;AAChD,IAAA,MAAM,GAAG,GAAG,QAAQ,GAAG,SAAS,CAAC,kBAAkB,GAAG,SAAS,CAAC,SAAS,CAAC;IAE1E,MAAM,MAAM,GAAG,MAAM,KAAK,IAAI,IAAI,MAAM,EAAE,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC;IAClF,OAAO,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;AACjC,CAAC;AAED,SAAS,oBAAoB,CAC5B,MAAc,EACd,CAAa,EACb,MAEW,EAAA;IAEX,IAAI,YAAY,CAA+C,MAAM,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE;AACnF,QAAA,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC;KAChB;AAED,IAAA,IAAI,GAAuB,CAAC;AAC5B,IAAA,IAAI,KAAyB,CAAC;IAC9B,IAAI,KAAK,GAAG,KAAK,CAAC;IAElB,IAAI,YAAY,CAAmC,MAAM,EAAE,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC,EAAE;AACxF,QAAA,GAAG,GAAG,MAAM,CAAC,MAAM,CAAC;KACpB;SAAM,IACN,YAAY,CAA8C,MAAM,EAAE,CAAC,cAAc,EAAE,oBAAoB,CAAC,CAAC,EACxG;QACD,GAAG,GAAG,MAAM,CAAC,MAAM,IAAI,SAAS,CAAC,kBAAkB,CAAC;KACpD;SAAM,IAAI,YAAY,CAAwC,MAAM,EAAE,CAAC,WAAW,EAAE,iBAAiB,CAAC,CAAC,EAAE;AACzG,QAAA,IAAI,MAAM,CAAC,QAAQ,KAAK,UAAU,EAAE;AACnC,YAAA,GAAG,GAAG,SAAS,CAAC,kBAAkB,CAAC;SACnC;AAAM,aAAA,IAAI,MAAM,CAAC,QAAQ,KAAK,YAAY,EAAE;AAC5C,YAAA,GAAG,GAAG,SAAS,CAAC,kBAAkB,CAAC;SACnC;AAAM,aAAA,IAAI,MAAM,CAAC,QAAQ,KAAK,MAAM,EAAE;AACtC,YAAA,GAAG,GAAG,SAAS,CAAC,kBAAkB,CAAC;SACnC;aAAM;AACN,YAAA,GAAG,GAAG,SAAS,CAAC,iBAAiB,CAAC;SAClC;KACD;IAED,IACC,YAAY,CAAsD,MAAM,EAAE;QACzE,QAAQ;QACR,WAAW;QACX,iBAAiB;AACjB,KAAA,CAAC,EACD;AACD,QAAA,GAAG,GAAG,MAAM,CAAC,MAAM,CAAC;QACpB,KAAK,GAAG,IAAI,CAAC;KACb;IAED,IAAI,YAAY,CAAsB,MAAM,EAAE,CAAC,gBAAgB,CAAC,CAAC,EAAE;QAClE,KAAK,GAAG,SAAS,CAAC;AAClB,QAAA,GAAG,GAAG,MAAM,CAAC,UAAU,CAAC;KACxB;IAED,IAAI,MAAM,GAAG,MAAM,KAAK,IAAI,IAAI,MAAM,EAAE,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC;AAChF,IAAA,MAAM,GAAG,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC;AAC9C,IAAA,OAAO,GAAG,IAAI,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,GAAG,GAAG,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC;AAC3E;;AC7SA,SAAS,UAAU,CAAC,SAAuB,EAAA;AAC1C,IAAA,OAAO,OAAO,CAAC,SAAS,CAAC,GAAG,eAAe,CAAC,SAAS,CAAC,GAAG,qBAAqB,CAAC,SAAS,CAAC,CAAC;AAC3F,CAAC;AAED,SAAS,aAAa,CACrB,OAA4B,EAC5B,WAAgC,EAChC,UAAsB,EACtB,OAEC,EAAA;IAED,MAAM,aAAa,GAA8B,EAAE,CAAC;AAEpD,IAAA,KAAK,MAAM,CAAC,GAAG,EAAE,QAAQ,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE;AACtD,QAAA,IAAI,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,QAAQ,EAAE,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,QAAQ,EAAE,GAAG,CAAC,OAAO,CAAC,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE;YAC9G,MAAM,OAAO,GAAG,OAAO,CAAC,QAAQ,CAAC,IAAI,MAAM,CAAC,QAAQ,CAAC,GAAG,UAAU,CAAC,QAAQ,CAAC,GAAG,QAAQ,CAAC;AACxF,YAAA,aAAa,CAAC,GAAG,CAAC,GAAG,aAAa,CAAC,OAAO,EAAE,WAAW,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC;YACzF,SAAS;SACT;AAED,QAAA,MAAM,UAAU,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC;QACpC,IAAI,UAAU,KAAK,SAAS,IAAI,OAAO,UAAU,KAAK,UAAU,EAAE;AACjE,YAAA,aAAa,CAAC,GAAG,CAAC,GAAG,UAAU,CAAC;YAChC,SAAS;SACT;AAED,QAAA,MAAM,MAAM,GAAG,EAAE,CAAC,QAAQ,EAAE,MAAM,CAAC,GAAG,QAAQ,GAAG,SAAS,CAAC;AAC3D,QAAA,MAAM,MAAM,GAAG,MAAM,GAAG,cAAc,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC;AAClE,QAAA,MAAM,OAAO,GAAG,OAAO,UAAU,KAAK,UAAU,GAAG,UAAU,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC;AAE/E,QAAA,IAAI,UAAU,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE;YAC7B,SAAS;SACT;aAAM;AACN,YAAA,aAAa,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC;SAC7B;QAED,IAAI,MAAM,EAAE;AACX,YAAA,IAAI,UAAU,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE;gBAChC,aAAa,CAAC,GAAG,CAAC,GAAG,aAAa,CAAC,GAAG,CAAE,CAAC,QAAQ,EAAE,CAAC;aACpD;AAED,YAAA,IAAI,UAAU,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE;gBAChC,aAAa,CAAC,GAAG,CAAC,GAAG,aAAa,CAAC,GAAG,CAAE,CAAC,QAAQ,EAAE,CAAC;aACpD;SACD;KACD;AAED,IAAA,OAAO,CAAC,CAAC,MAAM,CAAC,aAAa,CAAQ,CAAC;AACvC,CAAC;AAED,SAAS,UAAU,CAClB,KAAkB,EAClB,OAEC,EAAA;AAED,IAAA,MAAM,GAAG,GAAa,OAAO,EAAE,WAAW,IAAI,CAAC,CAAC;IAChD,OAAO,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;AACnC,CAAC;AAED,MAAM,gBAAgB,GAAe;AACpC,IAAA,KAAK,EAAE,MAAM,KAAK;AAClB,IAAA,QAAQ,EAAE,MAAM,KAAK;IACrB,QAAQ,EAAE,CAAC,MAAM,KAAK,CAAC,MAAM,CAAC,OAAO;CACrC,CAAC;AAEF,MAAM,gBAAgB,GAAe;IACpC,KAAK,EAAE,CAAC,MAAM,KAAK,MAAM,EAAE,SAAS,EAAE,IAAI,KAAK,QAAQ,IAAI,MAAM,EAAE,iBAAiB,EAAE,IAAI,KAAK,QAAQ;AACvG,IAAA,QAAQ,EAAE,CAAC,MAAM,KAAK,CAAC,MAAM,CAAC,OAAO,KAAK,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,UAAU,CAAC;IAC9E,QAAQ,EAAE,CAAC,MAAM,KAAK,CAAC,MAAM,CAAC,OAAO;CACrC,CAAC;AAEF,MAAM,gBAAgB,GAAe;IACpC,KAAK,EAAE,CAAC,MAAM,KAAK,MAAM,EAAE,SAAS,EAAE,IAAI,KAAK,QAAQ,IAAI,MAAM,EAAE,iBAAiB,EAAE,IAAI,KAAK,QAAQ;AACvG,IAAA,QAAQ,EAAE,MAAM,IAAI;IACpB,QAAQ,EAAE,CAAC,MAAM,KAAK,CAAC,MAAM,CAAC,OAAO;CACrC,CAAC;MAEW,kBAAkB,GAAkC,CAChE,MAAoD,EACpD,MAA4B,KACzB;AACH,IAAA,IAAI,QAAQ,CAAC,MAAM,CAAC,EAAE;AACrB,QAAA,OAAO,UAAU,CAAC,MAAM,CAAC,CAAC;KAC1B;AACD,IAAA,MAAM,OAAO,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC;IACnC,OAAO,aAAa,CAAC,OAAO,EAAE,MAAM,IAAI,EAAE,EAAE,gBAAgB,CAAQ,CAAC;AACtE,EAAE;MAEW,kBAAkB,GAAkC,CAChE,MAAa,EACb,MAA4B,KACzB;AACH,IAAA,MAAM,OAAO,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC;IACnC,OAAO,aAAa,CAAC,OAAO,EAAE,MAAM,IAAI,EAAE,EAAE,gBAAgB,CAAQ,CAAC;AACtE,EAAE;MAEW,kBAAkB,GAAkC,CAChE,MAAa,EACb,MAA4B,KACzB;AACH,IAAA,MAAM,OAAO,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC;IACnC,OAAO,aAAa,CAAC,OAAO,EAAE,MAAM,IAAI,EAAE,EAAE,gBAAgB,CAAQ,CAAC;AACtE,EAAE;AAEI,SAAU,mBAAmB,CAEjC,OAA6C,EAAA;AAC9C,IAAA,MAAM,kBAAkB,GAAgC,CACvD,MAAoD,EACpD,MAA4B,KACzB;AACH,QAAA,IAAI,QAAQ,CAAC,MAAM,CAAC,EAAE;AACrB,YAAA,OAAO,UAAU,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;SACnC;AACD,QAAA,MAAM,OAAO,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC;AACnC,QAAA,OAAO,aAAa,CAAC,OAAO,EAAE,MAAM,IAAI,EAAE,EAAE,gBAAgB,EAAE,OAAO,CAAQ,CAAC;AAC/E,KAAC,CAAC;AAEF,IAAA,MAAM,kBAAkB,GAAgC,CACvD,MAAa,EACb,MAA4B,KACzB;AACH,QAAA,MAAM,OAAO,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC;AACnC,QAAA,OAAO,aAAa,CAAC,OAAO,EAAE,MAAM,IAAI,EAAE,EAAE,gBAAgB,EAAE,OAAO,CAAQ,CAAC;AAC/E,KAAC,CAAC;AAEF,IAAA,MAAM,kBAAkB,GAAgC,CACvD,MAAa,EACb,MAA4B,KACzB;AACH,QAAA,MAAM,OAAO,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC;AACnC,QAAA,OAAO,aAAa,CAAC,OAAO,EAAE,MAAM,IAAI,EAAE,EAAE,gBAAgB,EAAE,OAAO,CAAQ,CAAC;AAC/E,KAAC,CAAC;AAEF,IAAA,OAAO,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,CAAC;AACvE;;;;"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "drizzle-zod",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.8.0",
|
|
4
4
|
"description": "Generate Zod schemas from Drizzle ORM schemas",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"scripts": {
|
|
@@ -65,19 +65,19 @@
|
|
|
65
65
|
"license": "Apache-2.0",
|
|
66
66
|
"peerDependencies": {
|
|
67
67
|
"drizzle-orm": ">=0.36.0",
|
|
68
|
-
"zod": "
|
|
68
|
+
"zod": "^3.25.0"
|
|
69
69
|
},
|
|
70
70
|
"devDependencies": {
|
|
71
71
|
"@rollup/plugin-typescript": "^11.1.0",
|
|
72
72
|
"@types/node": "^18.15.10",
|
|
73
73
|
"cpy": "^10.1.0",
|
|
74
74
|
"drizzle-orm": "link:../drizzle-orm/dist",
|
|
75
|
-
"json-rules-engine": "^7.3.
|
|
75
|
+
"json-rules-engine": "^7.3.1",
|
|
76
76
|
"rimraf": "^5.0.0",
|
|
77
|
-
"rollup": "^3.
|
|
77
|
+
"rollup": "^3.29.5",
|
|
78
78
|
"vite-tsconfig-paths": "^4.3.2",
|
|
79
|
-
"vitest": "^1.
|
|
80
|
-
"zod": "
|
|
79
|
+
"vitest": "^3.1.3",
|
|
80
|
+
"zod": "3.25.0-beta.20250516T044623",
|
|
81
81
|
"zx": "^7.2.2"
|
|
82
82
|
}
|
|
83
83
|
}
|
package/schema.d.cts
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import type { CreateInsertSchema, CreateSchemaFactoryOptions, CreateSelectSchema, CreateUpdateSchema } from "./schema.types.cjs";
|
|
2
|
-
export declare const createSelectSchema: CreateSelectSchema
|
|
3
|
-
export declare const createInsertSchema: CreateInsertSchema
|
|
4
|
-
export declare const createUpdateSchema: CreateUpdateSchema
|
|
5
|
-
export declare function createSchemaFactory(options?: CreateSchemaFactoryOptions): {
|
|
6
|
-
createSelectSchema: CreateSelectSchema
|
|
7
|
-
createInsertSchema: CreateInsertSchema
|
|
8
|
-
createUpdateSchema: CreateUpdateSchema
|
|
2
|
+
export declare const createSelectSchema: CreateSelectSchema<undefined>;
|
|
3
|
+
export declare const createInsertSchema: CreateInsertSchema<undefined>;
|
|
4
|
+
export declare const createUpdateSchema: CreateUpdateSchema<undefined>;
|
|
5
|
+
export declare function createSchemaFactory<TCoerce extends Partial<Record<'bigint' | 'boolean' | 'date' | 'number' | 'string', true>> | true | undefined>(options?: CreateSchemaFactoryOptions<TCoerce>): {
|
|
6
|
+
createSelectSchema: CreateSelectSchema<TCoerce>;
|
|
7
|
+
createInsertSchema: CreateInsertSchema<TCoerce>;
|
|
8
|
+
createUpdateSchema: CreateUpdateSchema<TCoerce>;
|
|
9
9
|
};
|
package/schema.d.mts
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import type { CreateInsertSchema, CreateSchemaFactoryOptions, CreateSelectSchema, CreateUpdateSchema } from "./schema.types.mjs";
|
|
2
|
-
export declare const createSelectSchema: CreateSelectSchema
|
|
3
|
-
export declare const createInsertSchema: CreateInsertSchema
|
|
4
|
-
export declare const createUpdateSchema: CreateUpdateSchema
|
|
5
|
-
export declare function createSchemaFactory(options?: CreateSchemaFactoryOptions): {
|
|
6
|
-
createSelectSchema: CreateSelectSchema
|
|
7
|
-
createInsertSchema: CreateInsertSchema
|
|
8
|
-
createUpdateSchema: CreateUpdateSchema
|
|
2
|
+
export declare const createSelectSchema: CreateSelectSchema<undefined>;
|
|
3
|
+
export declare const createInsertSchema: CreateInsertSchema<undefined>;
|
|
4
|
+
export declare const createUpdateSchema: CreateUpdateSchema<undefined>;
|
|
5
|
+
export declare function createSchemaFactory<TCoerce extends Partial<Record<'bigint' | 'boolean' | 'date' | 'number' | 'string', true>> | true | undefined>(options?: CreateSchemaFactoryOptions<TCoerce>): {
|
|
6
|
+
createSelectSchema: CreateSelectSchema<TCoerce>;
|
|
7
|
+
createInsertSchema: CreateInsertSchema<TCoerce>;
|
|
8
|
+
createUpdateSchema: CreateUpdateSchema<TCoerce>;
|
|
9
9
|
};
|
package/schema.d.ts
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import type { CreateInsertSchema, CreateSchemaFactoryOptions, CreateSelectSchema, CreateUpdateSchema } from './schema.types.js';
|
|
2
|
-
export declare const createSelectSchema: CreateSelectSchema
|
|
3
|
-
export declare const createInsertSchema: CreateInsertSchema
|
|
4
|
-
export declare const createUpdateSchema: CreateUpdateSchema
|
|
5
|
-
export declare function createSchemaFactory(options?: CreateSchemaFactoryOptions): {
|
|
6
|
-
createSelectSchema: CreateSelectSchema
|
|
7
|
-
createInsertSchema: CreateInsertSchema
|
|
8
|
-
createUpdateSchema: CreateUpdateSchema
|
|
2
|
+
export declare const createSelectSchema: CreateSelectSchema<undefined>;
|
|
3
|
+
export declare const createInsertSchema: CreateInsertSchema<undefined>;
|
|
4
|
+
export declare const createUpdateSchema: CreateUpdateSchema<undefined>;
|
|
5
|
+
export declare function createSchemaFactory<TCoerce extends Partial<Record<'bigint' | 'boolean' | 'date' | 'number' | 'string', true>> | true | undefined>(options?: CreateSchemaFactoryOptions<TCoerce>): {
|
|
6
|
+
createSelectSchema: CreateSelectSchema<TCoerce>;
|
|
7
|
+
createInsertSchema: CreateInsertSchema<TCoerce>;
|
|
8
|
+
createUpdateSchema: CreateUpdateSchema<TCoerce>;
|
|
9
9
|
};
|
package/schema.types.d.cts
CHANGED
|
@@ -1,23 +1,25 @@
|
|
|
1
1
|
import type { Table, View } from 'drizzle-orm';
|
|
2
2
|
import type { PgEnum } from 'drizzle-orm/pg-core';
|
|
3
|
-
import type { z } from 'zod';
|
|
3
|
+
import type { z } from 'zod/v4';
|
|
4
4
|
import type { BuildRefine, BuildSchema, NoUnknownKeys } from "./schema.types.internal.cjs";
|
|
5
|
-
export interface CreateSelectSchema {
|
|
6
|
-
<TTable extends Table>(table: TTable): BuildSchema<'select', TTable['_']['columns'], undefined>;
|
|
7
|
-
<TTable extends Table, TRefine extends BuildRefine<TTable['_']['columns']>>(table: TTable, refine?: NoUnknownKeys<TRefine, TTable['$inferSelect']>): BuildSchema<'select', TTable['_']['columns'], TRefine>;
|
|
8
|
-
<TView extends View>(view: TView): BuildSchema<'select', TView['_']['selectedFields'], undefined>;
|
|
9
|
-
<TView extends View, TRefine extends BuildRefine<TView['_']['selectedFields']>>(view: TView, refine: NoUnknownKeys<TRefine, TView['$inferSelect']>): BuildSchema<'select', TView['_']['selectedFields'], TRefine>;
|
|
10
|
-
<TEnum extends PgEnum<any>>(enum_: TEnum): z.ZodEnum<
|
|
5
|
+
export interface CreateSelectSchema<TCoerce extends Partial<Record<'bigint' | 'boolean' | 'date' | 'number' | 'string', true>> | true | undefined> {
|
|
6
|
+
<TTable extends Table>(table: TTable): BuildSchema<'select', TTable['_']['columns'], undefined, TCoerce>;
|
|
7
|
+
<TTable extends Table, TRefine extends BuildRefine<TTable['_']['columns'], TCoerce>>(table: TTable, refine?: NoUnknownKeys<TRefine, TTable['$inferSelect']>): BuildSchema<'select', TTable['_']['columns'], TRefine, TCoerce>;
|
|
8
|
+
<TView extends View>(view: TView): BuildSchema<'select', TView['_']['selectedFields'], undefined, TCoerce>;
|
|
9
|
+
<TView extends View, TRefine extends BuildRefine<TView['_']['selectedFields'], TCoerce>>(view: TView, refine: NoUnknownKeys<TRefine, TView['$inferSelect']>): BuildSchema<'select', TView['_']['selectedFields'], TRefine, TCoerce>;
|
|
10
|
+
<TEnum extends PgEnum<any>>(enum_: TEnum): z.ZodEnum<{
|
|
11
|
+
[K in TEnum['enumValues'][number]]: K;
|
|
12
|
+
}>;
|
|
11
13
|
}
|
|
12
|
-
export interface CreateInsertSchema {
|
|
13
|
-
<TTable extends Table>(table: TTable): BuildSchema<'insert', TTable['_']['columns'], undefined>;
|
|
14
|
-
<TTable extends Table, TRefine extends BuildRefine<Pick<TTable['_']['columns'], keyof TTable['$inferInsert']
|
|
14
|
+
export interface CreateInsertSchema<TCoerce extends Partial<Record<'bigint' | 'boolean' | 'date' | 'number' | 'string', true>> | true | undefined> {
|
|
15
|
+
<TTable extends Table>(table: TTable): BuildSchema<'insert', TTable['_']['columns'], undefined, TCoerce>;
|
|
16
|
+
<TTable extends Table, TRefine extends BuildRefine<Pick<TTable['_']['columns'], keyof TTable['$inferInsert']>, TCoerce>>(table: TTable, refine?: NoUnknownKeys<TRefine, TTable['$inferInsert']>): BuildSchema<'insert', TTable['_']['columns'], TRefine, TCoerce>;
|
|
15
17
|
}
|
|
16
|
-
export interface CreateUpdateSchema {
|
|
17
|
-
<TTable extends Table>(table: TTable): BuildSchema<'update', TTable['_']['columns'], undefined>;
|
|
18
|
-
<TTable extends Table, TRefine extends BuildRefine<Pick<TTable['_']['columns'], keyof TTable['$inferInsert']
|
|
18
|
+
export interface CreateUpdateSchema<TCoerce extends Partial<Record<'bigint' | 'boolean' | 'date' | 'number' | 'string', true>> | true | undefined> {
|
|
19
|
+
<TTable extends Table>(table: TTable): BuildSchema<'update', TTable['_']['columns'], undefined, TCoerce>;
|
|
20
|
+
<TTable extends Table, TRefine extends BuildRefine<Pick<TTable['_']['columns'], keyof TTable['$inferInsert']>, TCoerce>>(table: TTable, refine?: TRefine): BuildSchema<'update', TTable['_']['columns'], TRefine, TCoerce>;
|
|
19
21
|
}
|
|
20
|
-
export interface CreateSchemaFactoryOptions {
|
|
22
|
+
export interface CreateSchemaFactoryOptions<TCoerce extends Partial<Record<'bigint' | 'boolean' | 'date' | 'number' | 'string', true>> | true | undefined> {
|
|
21
23
|
zodInstance?: any;
|
|
22
|
-
coerce?:
|
|
24
|
+
coerce?: TCoerce;
|
|
23
25
|
}
|
package/schema.types.d.mts
CHANGED
|
@@ -1,23 +1,25 @@
|
|
|
1
1
|
import type { Table, View } from 'drizzle-orm';
|
|
2
2
|
import type { PgEnum } from 'drizzle-orm/pg-core';
|
|
3
|
-
import type { z } from 'zod';
|
|
3
|
+
import type { z } from 'zod/v4';
|
|
4
4
|
import type { BuildRefine, BuildSchema, NoUnknownKeys } from "./schema.types.internal.mjs";
|
|
5
|
-
export interface CreateSelectSchema {
|
|
6
|
-
<TTable extends Table>(table: TTable): BuildSchema<'select', TTable['_']['columns'], undefined>;
|
|
7
|
-
<TTable extends Table, TRefine extends BuildRefine<TTable['_']['columns']>>(table: TTable, refine?: NoUnknownKeys<TRefine, TTable['$inferSelect']>): BuildSchema<'select', TTable['_']['columns'], TRefine>;
|
|
8
|
-
<TView extends View>(view: TView): BuildSchema<'select', TView['_']['selectedFields'], undefined>;
|
|
9
|
-
<TView extends View, TRefine extends BuildRefine<TView['_']['selectedFields']>>(view: TView, refine: NoUnknownKeys<TRefine, TView['$inferSelect']>): BuildSchema<'select', TView['_']['selectedFields'], TRefine>;
|
|
10
|
-
<TEnum extends PgEnum<any>>(enum_: TEnum): z.ZodEnum<
|
|
5
|
+
export interface CreateSelectSchema<TCoerce extends Partial<Record<'bigint' | 'boolean' | 'date' | 'number' | 'string', true>> | true | undefined> {
|
|
6
|
+
<TTable extends Table>(table: TTable): BuildSchema<'select', TTable['_']['columns'], undefined, TCoerce>;
|
|
7
|
+
<TTable extends Table, TRefine extends BuildRefine<TTable['_']['columns'], TCoerce>>(table: TTable, refine?: NoUnknownKeys<TRefine, TTable['$inferSelect']>): BuildSchema<'select', TTable['_']['columns'], TRefine, TCoerce>;
|
|
8
|
+
<TView extends View>(view: TView): BuildSchema<'select', TView['_']['selectedFields'], undefined, TCoerce>;
|
|
9
|
+
<TView extends View, TRefine extends BuildRefine<TView['_']['selectedFields'], TCoerce>>(view: TView, refine: NoUnknownKeys<TRefine, TView['$inferSelect']>): BuildSchema<'select', TView['_']['selectedFields'], TRefine, TCoerce>;
|
|
10
|
+
<TEnum extends PgEnum<any>>(enum_: TEnum): z.ZodEnum<{
|
|
11
|
+
[K in TEnum['enumValues'][number]]: K;
|
|
12
|
+
}>;
|
|
11
13
|
}
|
|
12
|
-
export interface CreateInsertSchema {
|
|
13
|
-
<TTable extends Table>(table: TTable): BuildSchema<'insert', TTable['_']['columns'], undefined>;
|
|
14
|
-
<TTable extends Table, TRefine extends BuildRefine<Pick<TTable['_']['columns'], keyof TTable['$inferInsert']
|
|
14
|
+
export interface CreateInsertSchema<TCoerce extends Partial<Record<'bigint' | 'boolean' | 'date' | 'number' | 'string', true>> | true | undefined> {
|
|
15
|
+
<TTable extends Table>(table: TTable): BuildSchema<'insert', TTable['_']['columns'], undefined, TCoerce>;
|
|
16
|
+
<TTable extends Table, TRefine extends BuildRefine<Pick<TTable['_']['columns'], keyof TTable['$inferInsert']>, TCoerce>>(table: TTable, refine?: NoUnknownKeys<TRefine, TTable['$inferInsert']>): BuildSchema<'insert', TTable['_']['columns'], TRefine, TCoerce>;
|
|
15
17
|
}
|
|
16
|
-
export interface CreateUpdateSchema {
|
|
17
|
-
<TTable extends Table>(table: TTable): BuildSchema<'update', TTable['_']['columns'], undefined>;
|
|
18
|
-
<TTable extends Table, TRefine extends BuildRefine<Pick<TTable['_']['columns'], keyof TTable['$inferInsert']
|
|
18
|
+
export interface CreateUpdateSchema<TCoerce extends Partial<Record<'bigint' | 'boolean' | 'date' | 'number' | 'string', true>> | true | undefined> {
|
|
19
|
+
<TTable extends Table>(table: TTable): BuildSchema<'update', TTable['_']['columns'], undefined, TCoerce>;
|
|
20
|
+
<TTable extends Table, TRefine extends BuildRefine<Pick<TTable['_']['columns'], keyof TTable['$inferInsert']>, TCoerce>>(table: TTable, refine?: TRefine): BuildSchema<'update', TTable['_']['columns'], TRefine, TCoerce>;
|
|
19
21
|
}
|
|
20
|
-
export interface CreateSchemaFactoryOptions {
|
|
22
|
+
export interface CreateSchemaFactoryOptions<TCoerce extends Partial<Record<'bigint' | 'boolean' | 'date' | 'number' | 'string', true>> | true | undefined> {
|
|
21
23
|
zodInstance?: any;
|
|
22
|
-
coerce?:
|
|
24
|
+
coerce?: TCoerce;
|
|
23
25
|
}
|
package/schema.types.d.ts
CHANGED
|
@@ -1,23 +1,25 @@
|
|
|
1
1
|
import type { Table, View } from 'drizzle-orm';
|
|
2
2
|
import type { PgEnum } from 'drizzle-orm/pg-core';
|
|
3
|
-
import type { z } from 'zod';
|
|
3
|
+
import type { z } from 'zod/v4';
|
|
4
4
|
import type { BuildRefine, BuildSchema, NoUnknownKeys } from './schema.types.internal.js';
|
|
5
|
-
export interface CreateSelectSchema {
|
|
6
|
-
<TTable extends Table>(table: TTable): BuildSchema<'select', TTable['_']['columns'], undefined>;
|
|
7
|
-
<TTable extends Table, TRefine extends BuildRefine<TTable['_']['columns']>>(table: TTable, refine?: NoUnknownKeys<TRefine, TTable['$inferSelect']>): BuildSchema<'select', TTable['_']['columns'], TRefine>;
|
|
8
|
-
<TView extends View>(view: TView): BuildSchema<'select', TView['_']['selectedFields'], undefined>;
|
|
9
|
-
<TView extends View, TRefine extends BuildRefine<TView['_']['selectedFields']>>(view: TView, refine: NoUnknownKeys<TRefine, TView['$inferSelect']>): BuildSchema<'select', TView['_']['selectedFields'], TRefine>;
|
|
10
|
-
<TEnum extends PgEnum<any>>(enum_: TEnum): z.ZodEnum<
|
|
5
|
+
export interface CreateSelectSchema<TCoerce extends Partial<Record<'bigint' | 'boolean' | 'date' | 'number' | 'string', true>> | true | undefined> {
|
|
6
|
+
<TTable extends Table>(table: TTable): BuildSchema<'select', TTable['_']['columns'], undefined, TCoerce>;
|
|
7
|
+
<TTable extends Table, TRefine extends BuildRefine<TTable['_']['columns'], TCoerce>>(table: TTable, refine?: NoUnknownKeys<TRefine, TTable['$inferSelect']>): BuildSchema<'select', TTable['_']['columns'], TRefine, TCoerce>;
|
|
8
|
+
<TView extends View>(view: TView): BuildSchema<'select', TView['_']['selectedFields'], undefined, TCoerce>;
|
|
9
|
+
<TView extends View, TRefine extends BuildRefine<TView['_']['selectedFields'], TCoerce>>(view: TView, refine: NoUnknownKeys<TRefine, TView['$inferSelect']>): BuildSchema<'select', TView['_']['selectedFields'], TRefine, TCoerce>;
|
|
10
|
+
<TEnum extends PgEnum<any>>(enum_: TEnum): z.ZodEnum<{
|
|
11
|
+
[K in TEnum['enumValues'][number]]: K;
|
|
12
|
+
}>;
|
|
11
13
|
}
|
|
12
|
-
export interface CreateInsertSchema {
|
|
13
|
-
<TTable extends Table>(table: TTable): BuildSchema<'insert', TTable['_']['columns'], undefined>;
|
|
14
|
-
<TTable extends Table, TRefine extends BuildRefine<Pick<TTable['_']['columns'], keyof TTable['$inferInsert']
|
|
14
|
+
export interface CreateInsertSchema<TCoerce extends Partial<Record<'bigint' | 'boolean' | 'date' | 'number' | 'string', true>> | true | undefined> {
|
|
15
|
+
<TTable extends Table>(table: TTable): BuildSchema<'insert', TTable['_']['columns'], undefined, TCoerce>;
|
|
16
|
+
<TTable extends Table, TRefine extends BuildRefine<Pick<TTable['_']['columns'], keyof TTable['$inferInsert']>, TCoerce>>(table: TTable, refine?: NoUnknownKeys<TRefine, TTable['$inferInsert']>): BuildSchema<'insert', TTable['_']['columns'], TRefine, TCoerce>;
|
|
15
17
|
}
|
|
16
|
-
export interface CreateUpdateSchema {
|
|
17
|
-
<TTable extends Table>(table: TTable): BuildSchema<'update', TTable['_']['columns'], undefined>;
|
|
18
|
-
<TTable extends Table, TRefine extends BuildRefine<Pick<TTable['_']['columns'], keyof TTable['$inferInsert']
|
|
18
|
+
export interface CreateUpdateSchema<TCoerce extends Partial<Record<'bigint' | 'boolean' | 'date' | 'number' | 'string', true>> | true | undefined> {
|
|
19
|
+
<TTable extends Table>(table: TTable): BuildSchema<'update', TTable['_']['columns'], undefined, TCoerce>;
|
|
20
|
+
<TTable extends Table, TRefine extends BuildRefine<Pick<TTable['_']['columns'], keyof TTable['$inferInsert']>, TCoerce>>(table: TTable, refine?: TRefine): BuildSchema<'update', TTable['_']['columns'], TRefine, TCoerce>;
|
|
19
21
|
}
|
|
20
|
-
export interface CreateSchemaFactoryOptions {
|
|
22
|
+
export interface CreateSchemaFactoryOptions<TCoerce extends Partial<Record<'bigint' | 'boolean' | 'date' | 'number' | 'string', true>> | true | undefined> {
|
|
21
23
|
zodInstance?: any;
|
|
22
|
-
coerce?:
|
|
24
|
+
coerce?: TCoerce;
|
|
23
25
|
}
|
|
@@ -1,24 +1,22 @@
|
|
|
1
1
|
import type { Assume, Column, DrizzleTypeError, SelectedFieldsFlat, Simplify, Table, View } from 'drizzle-orm';
|
|
2
|
-
import type { z } from 'zod';
|
|
3
|
-
import type {
|
|
4
|
-
import type {
|
|
2
|
+
import type { z } from 'zod/v4';
|
|
3
|
+
import type { GetZodType, HandleColumn } from "./column.types.cjs";
|
|
4
|
+
import type { ColumnIsGeneratedAlwaysAs, GetSelection } from "./utils.cjs";
|
|
5
5
|
export interface Conditions {
|
|
6
6
|
never: (column?: Column) => boolean;
|
|
7
7
|
optional: (column: Column) => boolean;
|
|
8
8
|
nullable: (column: Column) => boolean;
|
|
9
9
|
}
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
type
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
[K in keyof TColumns]: TColumns[K] extends infer TColumn extends Column ? TRefinements extends object ? IsRefinementDefined<TRefinements, Assume<K, string>> extends true ? HandleRefinement<TType, TRefinements[Assume<K, keyof TRefinements>], TColumn> : HandleColumn<TType, TColumn> : HandleColumn<TType, TColumn> : TColumns[K] extends infer TObject extends SelectedFieldsFlat<Column> | Table | View ? BuildSchema<TType, GetSelection<TObject>, TRefinements extends object ? TRefinements[Assume<K, keyof TRefinements>] extends infer TNestedRefinements extends object ? TNestedRefinements : undefined : undefined> : z.ZodAny;
|
|
20
|
-
}>>, 'strip'>;
|
|
10
|
+
type BuildRefineField<T> = T extends z.ZodType ? ((schema: T) => z.ZodType) | z.ZodType : never;
|
|
11
|
+
export type BuildRefine<TColumns extends Record<string, any>, TCoerce extends Partial<Record<'bigint' | 'boolean' | 'date' | 'number' | 'string', true>> | true | undefined> = {
|
|
12
|
+
[K in keyof TColumns as TColumns[K] extends Column | SelectedFieldsFlat<Column> | Table | View ? K : never]?: TColumns[K] extends Column ? BuildRefineField<GetZodType<TColumns[K], TCoerce>> : BuildRefine<GetSelection<TColumns[K]>, TCoerce>;
|
|
13
|
+
};
|
|
14
|
+
type HandleRefinement<TType extends 'select' | 'insert' | 'update', TRefinement, TColumn extends Column> = TRefinement extends (schema: any) => z.ZodType ? (TColumn['_']['notNull'] extends true ? ReturnType<TRefinement> : z.ZodNullable<ReturnType<TRefinement>>) extends infer TSchema extends z.ZodType ? TType extends 'update' ? z.ZodOptional<TSchema> : TSchema : z.ZodType : TRefinement;
|
|
15
|
+
type IsRefinementDefined<TRefinements extends Record<string | symbol | number, any> | undefined, TKey extends string | symbol | number> = TRefinements extends object ? TRefinements[TKey] extends z.ZodType | ((schema: any) => any) ? true : false : false;
|
|
16
|
+
export type BuildSchema<TType extends 'select' | 'insert' | 'update', TColumns extends Record<string, any>, TRefinements extends Record<string, any> | undefined, TCoerce extends Partial<Record<'bigint' | 'boolean' | 'date' | 'number' | 'string', true>> | true | undefined> = z.ZodObject<Simplify<{
|
|
17
|
+
[K in keyof TColumns as ColumnIsGeneratedAlwaysAs<TColumns[K]> extends true ? never : K]: TColumns[K] extends infer TColumn extends Column ? IsRefinementDefined<TRefinements, K> extends true ? Assume<HandleRefinement<TType, TRefinements[K & keyof TRefinements], TColumn>, z.ZodType> : HandleColumn<TType, TColumn, TCoerce> : TColumns[K] extends infer TObject extends SelectedFieldsFlat<Column> | Table | View ? BuildSchema<TType, GetSelection<TObject>, TRefinements extends object ? TRefinements[K & keyof TRefinements] : undefined, TCoerce> : z.ZodAny;
|
|
18
|
+
}>, {}, {}>;
|
|
21
19
|
export type NoUnknownKeys<TRefinement extends Record<string, any>, TCompare extends Record<string, any>> = {
|
|
22
|
-
[K in keyof TRefinement]: K extends keyof TCompare ? TRefinement[K] extends Record<string, z.
|
|
20
|
+
[K in keyof TRefinement]: K extends keyof TCompare ? TRefinement[K] extends Record<string, z.ZodType> ? NoUnknownKeys<TRefinement[K], TCompare[K]> : TRefinement[K] : DrizzleTypeError<`Found unknown key in refinement: "${K & string}"`>;
|
|
23
21
|
};
|
|
24
22
|
export {};
|
|
@@ -1,24 +1,22 @@
|
|
|
1
1
|
import type { Assume, Column, DrizzleTypeError, SelectedFieldsFlat, Simplify, Table, View } from 'drizzle-orm';
|
|
2
|
-
import type { z } from 'zod';
|
|
3
|
-
import type {
|
|
4
|
-
import type {
|
|
2
|
+
import type { z } from 'zod/v4';
|
|
3
|
+
import type { GetZodType, HandleColumn } from "./column.types.mjs";
|
|
4
|
+
import type { ColumnIsGeneratedAlwaysAs, GetSelection } from "./utils.mjs";
|
|
5
5
|
export interface Conditions {
|
|
6
6
|
never: (column?: Column) => boolean;
|
|
7
7
|
optional: (column: Column) => boolean;
|
|
8
8
|
nullable: (column: Column) => boolean;
|
|
9
9
|
}
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
type
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
[K in keyof TColumns]: TColumns[K] extends infer TColumn extends Column ? TRefinements extends object ? IsRefinementDefined<TRefinements, Assume<K, string>> extends true ? HandleRefinement<TType, TRefinements[Assume<K, keyof TRefinements>], TColumn> : HandleColumn<TType, TColumn> : HandleColumn<TType, TColumn> : TColumns[K] extends infer TObject extends SelectedFieldsFlat<Column> | Table | View ? BuildSchema<TType, GetSelection<TObject>, TRefinements extends object ? TRefinements[Assume<K, keyof TRefinements>] extends infer TNestedRefinements extends object ? TNestedRefinements : undefined : undefined> : z.ZodAny;
|
|
20
|
-
}>>, 'strip'>;
|
|
10
|
+
type BuildRefineField<T> = T extends z.ZodType ? ((schema: T) => z.ZodType) | z.ZodType : never;
|
|
11
|
+
export type BuildRefine<TColumns extends Record<string, any>, TCoerce extends Partial<Record<'bigint' | 'boolean' | 'date' | 'number' | 'string', true>> | true | undefined> = {
|
|
12
|
+
[K in keyof TColumns as TColumns[K] extends Column | SelectedFieldsFlat<Column> | Table | View ? K : never]?: TColumns[K] extends Column ? BuildRefineField<GetZodType<TColumns[K], TCoerce>> : BuildRefine<GetSelection<TColumns[K]>, TCoerce>;
|
|
13
|
+
};
|
|
14
|
+
type HandleRefinement<TType extends 'select' | 'insert' | 'update', TRefinement, TColumn extends Column> = TRefinement extends (schema: any) => z.ZodType ? (TColumn['_']['notNull'] extends true ? ReturnType<TRefinement> : z.ZodNullable<ReturnType<TRefinement>>) extends infer TSchema extends z.ZodType ? TType extends 'update' ? z.ZodOptional<TSchema> : TSchema : z.ZodType : TRefinement;
|
|
15
|
+
type IsRefinementDefined<TRefinements extends Record<string | symbol | number, any> | undefined, TKey extends string | symbol | number> = TRefinements extends object ? TRefinements[TKey] extends z.ZodType | ((schema: any) => any) ? true : false : false;
|
|
16
|
+
export type BuildSchema<TType extends 'select' | 'insert' | 'update', TColumns extends Record<string, any>, TRefinements extends Record<string, any> | undefined, TCoerce extends Partial<Record<'bigint' | 'boolean' | 'date' | 'number' | 'string', true>> | true | undefined> = z.ZodObject<Simplify<{
|
|
17
|
+
[K in keyof TColumns as ColumnIsGeneratedAlwaysAs<TColumns[K]> extends true ? never : K]: TColumns[K] extends infer TColumn extends Column ? IsRefinementDefined<TRefinements, K> extends true ? Assume<HandleRefinement<TType, TRefinements[K & keyof TRefinements], TColumn>, z.ZodType> : HandleColumn<TType, TColumn, TCoerce> : TColumns[K] extends infer TObject extends SelectedFieldsFlat<Column> | Table | View ? BuildSchema<TType, GetSelection<TObject>, TRefinements extends object ? TRefinements[K & keyof TRefinements] : undefined, TCoerce> : z.ZodAny;
|
|
18
|
+
}>, {}, {}>;
|
|
21
19
|
export type NoUnknownKeys<TRefinement extends Record<string, any>, TCompare extends Record<string, any>> = {
|
|
22
|
-
[K in keyof TRefinement]: K extends keyof TCompare ? TRefinement[K] extends Record<string, z.
|
|
20
|
+
[K in keyof TRefinement]: K extends keyof TCompare ? TRefinement[K] extends Record<string, z.ZodType> ? NoUnknownKeys<TRefinement[K], TCompare[K]> : TRefinement[K] : DrizzleTypeError<`Found unknown key in refinement: "${K & string}"`>;
|
|
23
21
|
};
|
|
24
22
|
export {};
|
|
@@ -1,24 +1,22 @@
|
|
|
1
1
|
import type { Assume, Column, DrizzleTypeError, SelectedFieldsFlat, Simplify, Table, View } from 'drizzle-orm';
|
|
2
|
-
import type { z } from 'zod';
|
|
3
|
-
import type {
|
|
4
|
-
import type {
|
|
2
|
+
import type { z } from 'zod/v4';
|
|
3
|
+
import type { GetZodType, HandleColumn } from './column.types.js';
|
|
4
|
+
import type { ColumnIsGeneratedAlwaysAs, GetSelection } from './utils.js';
|
|
5
5
|
export interface Conditions {
|
|
6
6
|
never: (column?: Column) => boolean;
|
|
7
7
|
optional: (column: Column) => boolean;
|
|
8
8
|
nullable: (column: Column) => boolean;
|
|
9
9
|
}
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
type
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
[K in keyof TColumns]: TColumns[K] extends infer TColumn extends Column ? TRefinements extends object ? IsRefinementDefined<TRefinements, Assume<K, string>> extends true ? HandleRefinement<TType, TRefinements[Assume<K, keyof TRefinements>], TColumn> : HandleColumn<TType, TColumn> : HandleColumn<TType, TColumn> : TColumns[K] extends infer TObject extends SelectedFieldsFlat<Column> | Table | View ? BuildSchema<TType, GetSelection<TObject>, TRefinements extends object ? TRefinements[Assume<K, keyof TRefinements>] extends infer TNestedRefinements extends object ? TNestedRefinements : undefined : undefined> : z.ZodAny;
|
|
20
|
-
}>>, 'strip'>;
|
|
10
|
+
type BuildRefineField<T> = T extends z.ZodType ? ((schema: T) => z.ZodType) | z.ZodType : never;
|
|
11
|
+
export type BuildRefine<TColumns extends Record<string, any>, TCoerce extends Partial<Record<'bigint' | 'boolean' | 'date' | 'number' | 'string', true>> | true | undefined> = {
|
|
12
|
+
[K in keyof TColumns as TColumns[K] extends Column | SelectedFieldsFlat<Column> | Table | View ? K : never]?: TColumns[K] extends Column ? BuildRefineField<GetZodType<TColumns[K], TCoerce>> : BuildRefine<GetSelection<TColumns[K]>, TCoerce>;
|
|
13
|
+
};
|
|
14
|
+
type HandleRefinement<TType extends 'select' | 'insert' | 'update', TRefinement, TColumn extends Column> = TRefinement extends (schema: any) => z.ZodType ? (TColumn['_']['notNull'] extends true ? ReturnType<TRefinement> : z.ZodNullable<ReturnType<TRefinement>>) extends infer TSchema extends z.ZodType ? TType extends 'update' ? z.ZodOptional<TSchema> : TSchema : z.ZodType : TRefinement;
|
|
15
|
+
type IsRefinementDefined<TRefinements extends Record<string | symbol | number, any> | undefined, TKey extends string | symbol | number> = TRefinements extends object ? TRefinements[TKey] extends z.ZodType | ((schema: any) => any) ? true : false : false;
|
|
16
|
+
export type BuildSchema<TType extends 'select' | 'insert' | 'update', TColumns extends Record<string, any>, TRefinements extends Record<string, any> | undefined, TCoerce extends Partial<Record<'bigint' | 'boolean' | 'date' | 'number' | 'string', true>> | true | undefined> = z.ZodObject<Simplify<{
|
|
17
|
+
[K in keyof TColumns as ColumnIsGeneratedAlwaysAs<TColumns[K]> extends true ? never : K]: TColumns[K] extends infer TColumn extends Column ? IsRefinementDefined<TRefinements, K> extends true ? Assume<HandleRefinement<TType, TRefinements[K & keyof TRefinements], TColumn>, z.ZodType> : HandleColumn<TType, TColumn, TCoerce> : TColumns[K] extends infer TObject extends SelectedFieldsFlat<Column> | Table | View ? BuildSchema<TType, GetSelection<TObject>, TRefinements extends object ? TRefinements[K & keyof TRefinements] : undefined, TCoerce> : z.ZodAny;
|
|
18
|
+
}>, {}, {}>;
|
|
21
19
|
export type NoUnknownKeys<TRefinement extends Record<string, any>, TCompare extends Record<string, any>> = {
|
|
22
|
-
[K in keyof TRefinement]: K extends keyof TCompare ? TRefinement[K] extends Record<string, z.
|
|
20
|
+
[K in keyof TRefinement]: K extends keyof TCompare ? TRefinement[K] extends Record<string, z.ZodType> ? NoUnknownKeys<TRefinement[K], TCompare[K]> : TRefinement[K] : DrizzleTypeError<`Found unknown key in refinement: "${K & string}"`>;
|
|
23
21
|
};
|
|
24
22
|
export {};
|
package/utils.d.cts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { Column, SelectedFieldsFlat, Table, View } from 'drizzle-orm';
|
|
2
2
|
import type { PgEnum } from 'drizzle-orm/pg-core';
|
|
3
|
-
import type { z } from 'zod';
|
|
3
|
+
import type { z } from 'zod/v4';
|
|
4
4
|
import type { literalSchema } from "./column.cjs";
|
|
5
5
|
export declare function isColumnType<T extends Column>(column: Column, columnTypes: string[]): column is T;
|
|
6
6
|
export declare function isWithEnum(column: Column): column is typeof column & {
|
|
@@ -12,12 +12,9 @@ export type Json = Literal | {
|
|
|
12
12
|
[key: string]: any;
|
|
13
13
|
} | any[];
|
|
14
14
|
export type IsNever<T> = [T] extends [never] ? true : false;
|
|
15
|
-
export type
|
|
16
|
-
export type ColumnIsGeneratedAlwaysAs<TColumn extends Column
|
|
17
|
-
type:
|
|
18
|
-
}
|
|
19
|
-
export type RemoveNever<T> = {
|
|
20
|
-
[K in keyof T as T[K] extends never ? never : K]: T[K];
|
|
21
|
-
};
|
|
15
|
+
export type IsEnumDefined<TEnum extends string[] | undefined> = [string, ...string[]] extends TEnum ? false : undefined extends TEnum ? false : true;
|
|
16
|
+
export type ColumnIsGeneratedAlwaysAs<TColumn> = TColumn extends Column ? TColumn['_']['identity'] extends 'always' ? true : TColumn['_']['generated'] extends {
|
|
17
|
+
type: 'byDefault';
|
|
18
|
+
} | undefined ? false : true : false;
|
|
22
19
|
export type GetSelection<T extends SelectedFieldsFlat<Column> | Table | View> = T extends Table ? T['_']['columns'] : T extends View ? T['_']['selectedFields'] : T;
|
|
23
20
|
export {};
|
package/utils.d.mts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { Column, SelectedFieldsFlat, Table, View } from 'drizzle-orm';
|
|
2
2
|
import type { PgEnum } from 'drizzle-orm/pg-core';
|
|
3
|
-
import type { z } from 'zod';
|
|
3
|
+
import type { z } from 'zod/v4';
|
|
4
4
|
import type { literalSchema } from "./column.mjs";
|
|
5
5
|
export declare function isColumnType<T extends Column>(column: Column, columnTypes: string[]): column is T;
|
|
6
6
|
export declare function isWithEnum(column: Column): column is typeof column & {
|
|
@@ -12,12 +12,9 @@ export type Json = Literal | {
|
|
|
12
12
|
[key: string]: any;
|
|
13
13
|
} | any[];
|
|
14
14
|
export type IsNever<T> = [T] extends [never] ? true : false;
|
|
15
|
-
export type
|
|
16
|
-
export type ColumnIsGeneratedAlwaysAs<TColumn extends Column
|
|
17
|
-
type:
|
|
18
|
-
}
|
|
19
|
-
export type RemoveNever<T> = {
|
|
20
|
-
[K in keyof T as T[K] extends never ? never : K]: T[K];
|
|
21
|
-
};
|
|
15
|
+
export type IsEnumDefined<TEnum extends string[] | undefined> = [string, ...string[]] extends TEnum ? false : undefined extends TEnum ? false : true;
|
|
16
|
+
export type ColumnIsGeneratedAlwaysAs<TColumn> = TColumn extends Column ? TColumn['_']['identity'] extends 'always' ? true : TColumn['_']['generated'] extends {
|
|
17
|
+
type: 'byDefault';
|
|
18
|
+
} | undefined ? false : true : false;
|
|
22
19
|
export type GetSelection<T extends SelectedFieldsFlat<Column> | Table | View> = T extends Table ? T['_']['columns'] : T extends View ? T['_']['selectedFields'] : T;
|
|
23
20
|
export {};
|
package/utils.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { Column, SelectedFieldsFlat, Table, View } from 'drizzle-orm';
|
|
2
2
|
import type { PgEnum } from 'drizzle-orm/pg-core';
|
|
3
|
-
import type { z } from 'zod';
|
|
3
|
+
import type { z } from 'zod/v4';
|
|
4
4
|
import type { literalSchema } from './column.js';
|
|
5
5
|
export declare function isColumnType<T extends Column>(column: Column, columnTypes: string[]): column is T;
|
|
6
6
|
export declare function isWithEnum(column: Column): column is typeof column & {
|
|
@@ -12,12 +12,9 @@ export type Json = Literal | {
|
|
|
12
12
|
[key: string]: any;
|
|
13
13
|
} | any[];
|
|
14
14
|
export type IsNever<T> = [T] extends [never] ? true : false;
|
|
15
|
-
export type
|
|
16
|
-
export type ColumnIsGeneratedAlwaysAs<TColumn extends Column
|
|
17
|
-
type:
|
|
18
|
-
}
|
|
19
|
-
export type RemoveNever<T> = {
|
|
20
|
-
[K in keyof T as T[K] extends never ? never : K]: T[K];
|
|
21
|
-
};
|
|
15
|
+
export type IsEnumDefined<TEnum extends string[] | undefined> = [string, ...string[]] extends TEnum ? false : undefined extends TEnum ? false : true;
|
|
16
|
+
export type ColumnIsGeneratedAlwaysAs<TColumn> = TColumn extends Column ? TColumn['_']['identity'] extends 'always' ? true : TColumn['_']['generated'] extends {
|
|
17
|
+
type: 'byDefault';
|
|
18
|
+
} | undefined ? false : true : false;
|
|
22
19
|
export type GetSelection<T extends SelectedFieldsFlat<Column> | Table | View> = T extends Table ? T['_']['columns'] : T extends View ? T['_']['selectedFields'] : T;
|
|
23
20
|
export {};
|