drizzle-valibot 1.0.0-beta.6-ea4d663 → 1.0.0-beta.6-b046b02

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/index.mjs.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../src/constants.ts","../src/column.ts","../src/utils.ts","../src/schema.ts"],"sourcesContent":[null,null,null,null],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.mjs","names":["jsonSchema: v.GenericSchema<Json>","bufferSchema: v.GenericSchema<Buffer>","v","schema!: v.GenericSchema","min!: number","max!: number","actions: any[]","min!: bigint | undefined","max!: bigint | undefined","baseSchema: v.GenericSchema","schema: v.GenericSchema","regex: RegExp | undefined","isPgEnum: (entity: any) => entity is PgEnum<[string, ...string[]]>","columnSchemas: Record<string, v.GenericSchema>","createSelectSchema: CreateSelectSchema","createInsertSchema: CreateInsertSchema","createUpdateSchema: CreateUpdateSchema"],"sources":["../src/constants.ts","../src/column.ts","../src/utils.ts","../src/schema.ts"],"sourcesContent":["export const CONSTANTS = {\n\tINT8_MIN: -128,\n\tINT8_MAX: 127,\n\tINT8_UNSIGNED_MAX: 255,\n\tINT16_MIN: -32768,\n\tINT16_MAX: 32767,\n\tINT16_UNSIGNED_MAX: 65535,\n\tINT24_MIN: -8388608,\n\tINT24_MAX: 8388607,\n\tINT24_UNSIGNED_MAX: 16777215,\n\tINT32_MIN: -2147483648,\n\tINT32_MAX: 2147483647,\n\tINT32_UNSIGNED_MAX: 4294967295,\n\tINT48_MIN: -140737488355328,\n\tINT48_MAX: 140737488355327,\n\tINT48_UNSIGNED_MAX: 281474976710655,\n\tINT64_MIN: -9223372036854775808n,\n\tINT64_MAX: 9223372036854775807n,\n\tINT64_UNSIGNED_MAX: 18446744073709551615n,\n};\n","import {\n\ttype Column,\n\ttype ColumnDataArrayConstraint,\n\ttype ColumnDataBigIntConstraint,\n\ttype ColumnDataNumberConstraint,\n\ttype ColumnDataObjectConstraint,\n\ttype ColumnDataStringConstraint,\n\textractExtendedColumnType,\n\tgetColumnTable,\n\tgetTableName,\n} from 'drizzle-orm';\nimport * as v from 'valibot';\nimport { CONSTANTS } from './constants.ts';\nimport type { Json } from './utils.ts';\n\nexport const literalSchema = v.union([v.string(), v.number(), v.boolean(), v.null()]);\nexport const jsonSchema: v.GenericSchema<Json> = v.union([\n\tliteralSchema,\n\tv.array(v.any()),\n\tv.record(v.string(), v.any()),\n]);\nexport const bufferSchema: v.GenericSchema<Buffer> = v.custom<Buffer>((v) => v instanceof Buffer);\n\nexport function mapEnumValues(values: string[]) {\n\treturn Object.fromEntries(values.map((value) => [value, value]));\n}\n\nexport function columnToSchema(column: Column): v.GenericSchema {\n\tlet schema!: v.GenericSchema;\n\n\t// Check for PG array columns (have dimensions property instead of changing dataType)\n\tconst dimensions = (<{ dimensions?: number }> column).dimensions;\n\tif (typeof dimensions === 'number' && dimensions > 0) {\n\t\treturn pgArrayColumnToSchema(column, dimensions);\n\t}\n\n\tconst { type, constraint } = extractExtendedColumnType(column);\n\n\tswitch (type) {\n\t\tcase 'array': {\n\t\t\tschema = arrayColumnToSchema(column, constraint);\n\t\t\tbreak;\n\t\t}\n\t\tcase 'object': {\n\t\t\tschema = objectColumnToSchema(column, constraint);\n\t\t\tbreak;\n\t\t}\n\t\tcase 'number': {\n\t\t\tschema = numberColumnToSchema(column, constraint);\n\t\t\tbreak;\n\t\t}\n\t\tcase 'bigint': {\n\t\t\tschema = bigintColumnToSchema(column, constraint);\n\t\t\tbreak;\n\t\t}\n\t\tcase 'boolean': {\n\t\t\tschema = v.boolean();\n\t\t\tbreak;\n\t\t}\n\t\tcase 'string': {\n\t\t\tschema = stringColumnToSchema(column, constraint);\n\t\t\tbreak;\n\t\t}\n\t\tcase 'custom': {\n\t\t\tschema = v.any();\n\t\t\tbreak;\n\t\t}\n\t\tdefault: {\n\t\t\tschema = v.any();\n\t\t}\n\t}\n\n\treturn schema;\n}\n\nfunction numberColumnToSchema(column: Column, constraint: ColumnDataNumberConstraint | undefined): v.GenericSchema {\n\tlet min!: number;\n\tlet max!: number;\n\tlet integer = false;\n\n\tswitch (constraint) {\n\t\tcase 'int8': {\n\t\t\tmin = CONSTANTS.INT8_MIN;\n\t\t\tmax = CONSTANTS.INT8_MAX;\n\t\t\tinteger = true;\n\t\t\tbreak;\n\t\t}\n\t\tcase 'uint8': {\n\t\t\tmin = 0;\n\t\t\tmax = CONSTANTS.INT8_UNSIGNED_MAX;\n\t\t\tinteger = true;\n\t\t\tbreak;\n\t\t}\n\t\tcase 'int16': {\n\t\t\tmin = CONSTANTS.INT16_MIN;\n\t\t\tmax = CONSTANTS.INT16_MAX;\n\t\t\tinteger = true;\n\t\t\tbreak;\n\t\t}\n\t\tcase 'uint16': {\n\t\t\tmin = 0;\n\t\t\tmax = CONSTANTS.INT16_UNSIGNED_MAX;\n\t\t\tinteger = true;\n\t\t\tbreak;\n\t\t}\n\t\tcase 'int24': {\n\t\t\tmin = CONSTANTS.INT24_MIN;\n\t\t\tmax = CONSTANTS.INT24_MAX;\n\t\t\tinteger = true;\n\t\t\tbreak;\n\t\t}\n\t\tcase 'uint24': {\n\t\t\tmin = 0;\n\t\t\tmax = CONSTANTS.INT24_UNSIGNED_MAX;\n\t\t\tinteger = true;\n\t\t\tbreak;\n\t\t}\n\t\tcase 'int32': {\n\t\t\tmin = CONSTANTS.INT32_MIN;\n\t\t\tmax = CONSTANTS.INT32_MAX;\n\t\t\tinteger = true;\n\t\t\tbreak;\n\t\t}\n\t\tcase 'uint32': {\n\t\t\tmin = 0;\n\t\t\tmax = CONSTANTS.INT32_UNSIGNED_MAX;\n\t\t\tinteger = true;\n\t\t\tbreak;\n\t\t}\n\t\tcase 'int53': {\n\t\t\tmin = Number.MIN_SAFE_INTEGER;\n\t\t\tmax = Number.MAX_SAFE_INTEGER;\n\t\t\tinteger = true;\n\t\t\tbreak;\n\t\t}\n\t\tcase 'uint53': {\n\t\t\tmin = 0;\n\t\t\tmax = Number.MAX_SAFE_INTEGER;\n\t\t\tinteger = true;\n\t\t\tbreak;\n\t\t}\n\t\tcase 'float': {\n\t\t\tmin = CONSTANTS.INT24_MIN;\n\t\t\tmax = CONSTANTS.INT24_MAX;\n\t\t\tbreak;\n\t\t}\n\t\tcase 'ufloat': {\n\t\t\tmin = 0;\n\t\t\tmax = CONSTANTS.INT24_UNSIGNED_MAX;\n\t\t\tbreak;\n\t\t}\n\t\tcase 'double': {\n\t\t\tmin = CONSTANTS.INT48_MIN;\n\t\t\tmax = CONSTANTS.INT48_MAX;\n\t\t\tbreak;\n\t\t}\n\t\tcase 'udouble': {\n\t\t\tmin = 0;\n\t\t\tmax = CONSTANTS.INT48_UNSIGNED_MAX;\n\t\t\tbreak;\n\t\t}\n\t\tcase 'year': {\n\t\t\tmin = 1901;\n\t\t\tmax = 2155;\n\t\t\tinteger = true;\n\t\t\tbreak;\n\t\t}\n\t\tcase 'unsigned': {\n\t\t\tmin = 0;\n\t\t\tmax = Number.MAX_SAFE_INTEGER;\n\t\t\tbreak;\n\t\t}\n\t\tdefault: {\n\t\t\tmin = Number.MIN_SAFE_INTEGER;\n\t\t\tmax = Number.MAX_SAFE_INTEGER;\n\t\t\tbreak;\n\t\t}\n\t}\n\n\tconst actions: any[] = [v.minValue(min), v.maxValue(max)];\n\tif (integer) {\n\t\tactions.push(v.integer());\n\t}\n\treturn v.pipe(v.number(), ...actions);\n}\n\n/** @internal */\nexport const bigintStringModeSchema = v.pipe(\n\tv.string(),\n\tv.regex(/^-?\\d+$/),\n\t// eslint-disable-next-line unicorn/prefer-native-coercion-functions\n\tv.transform((v) => BigInt(v)),\n\tv.minValue(CONSTANTS.INT64_MIN),\n\tv.maxValue(CONSTANTS.INT64_MAX),\n\tv.transform((v) => v.toString()),\n);\n\n/** @internal */\nexport const unsignedBigintStringModeSchema = v.pipe(\n\tv.string(),\n\tv.regex(/^\\d+$/),\n\t// eslint-disable-next-line unicorn/prefer-native-coercion-functions\n\tv.transform((v) => BigInt(v)),\n\tv.minValue(0n),\n\tv.maxValue(CONSTANTS.INT64_MAX),\n\tv.transform((v) => v.toString()),\n);\n\nfunction bigintColumnToSchema(column: Column, constraint: ColumnDataBigIntConstraint | undefined): v.GenericSchema {\n\tlet min!: bigint | undefined;\n\tlet max!: bigint | undefined;\n\n\tswitch (constraint) {\n\t\tcase 'int64': {\n\t\t\tmin = CONSTANTS.INT64_MIN;\n\t\t\tmax = CONSTANTS.INT64_MAX;\n\t\t\tbreak;\n\t\t}\n\t\tcase 'uint64': {\n\t\t\tmin = 0n;\n\t\t\tmax = CONSTANTS.INT64_UNSIGNED_MAX;\n\t\t\tbreak;\n\t\t}\n\t}\n\n\tconst actions: any[] = [];\n\tif (min !== undefined) actions.push(v.minValue(min));\n\tif (max !== undefined) actions.push(v.maxValue(max));\n\n\treturn actions.length > 0 ? v.pipe(v.bigint(), ...actions) : v.bigint();\n}\n\nfunction pgArrayColumnToSchema(\n\tcolumn: Column,\n\tdimensions: number,\n): v.GenericSchema {\n\t// PG style: the column IS the base type, with dimensions indicating array depth\n\t// Get the base schema from the column's own dataType\n\tconst [baseType, baseConstraint] = column.dataType.split(' ');\n\tlet baseSchema: v.GenericSchema;\n\n\tswitch (baseType) {\n\t\tcase 'number':\n\t\t\tbaseSchema = numberColumnToSchema(column, baseConstraint as ColumnDataNumberConstraint);\n\t\t\tbreak;\n\t\tcase 'bigint':\n\t\t\tbaseSchema = bigintColumnToSchema(column, baseConstraint as ColumnDataBigIntConstraint);\n\t\t\tbreak;\n\t\tcase 'boolean':\n\t\t\tbaseSchema = v.boolean();\n\t\t\tbreak;\n\t\tcase 'string':\n\t\t\tbaseSchema = stringColumnToSchema(column, baseConstraint as ColumnDataStringConstraint);\n\t\t\tbreak;\n\t\tcase 'object':\n\t\t\tbaseSchema = objectColumnToSchema(column, baseConstraint as ColumnDataObjectConstraint);\n\t\t\tbreak;\n\t\tcase 'array':\n\t\t\t// Handle array types like point, line, etc.\n\t\t\tbaseSchema = arrayColumnToSchema(column, baseConstraint as ColumnDataArrayConstraint);\n\t\t\tbreak;\n\t\tdefault:\n\t\t\tbaseSchema = v.any();\n\t}\n\n\t// Wrap in arrays based on dimensions\n\t// Note: For PG arrays, column.length is the base type's length (e.g., varchar(10)), not array size\n\tlet schema: v.GenericSchema = v.array(baseSchema);\n\tfor (let i = 1; i < dimensions; i++) {\n\t\tschema = v.array(schema);\n\t}\n\treturn schema;\n}\n\nfunction arrayColumnToSchema(column: Column, constraint: ColumnDataArrayConstraint | undefined): v.GenericSchema {\n\tswitch (constraint) {\n\t\tcase 'geometry':\n\t\tcase 'point': {\n\t\t\treturn v.tuple([v.number(), v.number()]);\n\t\t}\n\t\tcase 'line': {\n\t\t\treturn v.tuple([v.number(), v.number(), v.number()]);\n\t\t}\n\t\tcase 'vector':\n\t\tcase 'halfvector': {\n\t\t\tconst { length } = column;\n\t\t\treturn length\n\t\t\t\t? v.pipe(v.array(v.number()), v.length(length))\n\t\t\t\t: v.array(v.number());\n\t\t}\n\t\tcase 'int64vector': {\n\t\t\tconst length = column.length;\n\t\t\treturn length\n\t\t\t\t? v.pipe(\n\t\t\t\t\tv.array(v.pipe(v.bigint(), v.minValue(CONSTANTS.INT64_MIN), v.maxValue(CONSTANTS.INT64_MAX))),\n\t\t\t\t\tv.length(length),\n\t\t\t\t)\n\t\t\t\t: v.array(v.pipe(v.bigint(), v.minValue(CONSTANTS.INT64_MIN), v.maxValue(CONSTANTS.INT64_MAX)));\n\t\t}\n\t\tcase 'basecolumn': {\n\t\t\t// CockroachDB/GEL style: has a separate baseColumn\n\t\t\tconst baseColumn = (<{ baseColumn?: Column }> column).baseColumn;\n\t\t\tif (baseColumn) {\n\t\t\t\tconst { length } = column;\n\t\t\t\tconst schema = v.array(columnToSchema(baseColumn));\n\t\t\t\tif (length) return v.pipe(schema, v.length(length));\n\t\t\t\treturn schema;\n\t\t\t}\n\t\t\treturn v.array(v.any());\n\t\t}\n\t\tdefault: {\n\t\t\treturn v.array(v.any());\n\t\t}\n\t}\n}\n\nfunction objectColumnToSchema(column: Column, constraint: ColumnDataObjectConstraint | undefined): v.GenericSchema {\n\tswitch (constraint) {\n\t\tcase 'buffer': {\n\t\t\treturn bufferSchema;\n\t\t}\n\t\tcase 'date': {\n\t\t\treturn v.date();\n\t\t}\n\t\tcase 'geometry':\n\t\tcase 'point': {\n\t\t\treturn v.object({\n\t\t\t\tx: v.number(),\n\t\t\t\ty: v.number(),\n\t\t\t});\n\t\t}\n\t\tcase 'json': {\n\t\t\treturn jsonSchema;\n\t\t}\n\t\tcase 'line': {\n\t\t\treturn v.object({\n\t\t\t\ta: v.number(),\n\t\t\t\tb: v.number(),\n\t\t\t\tc: v.number(),\n\t\t\t});\n\t\t}\n\t\tdefault: {\n\t\t\treturn v.looseObject({});\n\t\t}\n\t}\n}\n\nfunction stringColumnToSchema(column: Column, constraint: ColumnDataStringConstraint | undefined): v.GenericSchema {\n\tconst { name: columnName, length, isLengthExact } = column;\n\tlet regex: RegExp | undefined;\n\n\tif (constraint === 'binary') {\n\t\tregex = /^[01]*$/;\n\t}\n\tif (constraint === 'uuid') return v.pipe(v.string(), v.uuid());\n\tif (constraint === 'enum') {\n\t\tconst enumValues = column.enumValues;\n\t\tif (!enumValues) {\n\t\t\tthrow new Error(\n\t\t\t\t`Column \"${getTableName(getColumnTable(column))}\".\"${columnName}\" is of 'enum' type, but lacks enum values`,\n\t\t\t);\n\t\t}\n\t\treturn v.enum(mapEnumValues(enumValues));\n\t}\n\tif (constraint === 'int64') {\n\t\treturn bigintStringModeSchema;\n\t}\n\tif (constraint === 'uint64') {\n\t\treturn unsignedBigintStringModeSchema;\n\t}\n\n\tconst actions: any[] = [];\n\tif (regex) {\n\t\tactions.push(v.regex(regex));\n\t}\n\tif (length && isLengthExact) {\n\t\tactions.push(v.length(length));\n\t} else if (length) {\n\t\tactions.push(v.maxLength(length));\n\t}\n\treturn actions.length > 0 ? v.pipe(v.string(), ...actions) : v.string();\n}\n","import type { Column, SelectedFieldsFlat, Table, View } from 'drizzle-orm';\nimport type { PgEnum } from 'drizzle-orm/pg-core';\nimport type * as v from 'valibot';\nimport type { literalSchema } from './column.ts';\n\nexport function isColumnType<T extends Column>(column: Column, columnTypes: string[]): column is T {\n\treturn columnTypes.includes(column.columnType);\n}\n\nexport function isWithEnum(column: Column): column is typeof column & { enumValues: [string, ...string[]] } {\n\treturn 'enumValues' in column && Array.isArray(column.enumValues) && column.enumValues.length > 0;\n}\n\nexport const isPgEnum: (entity: any) => entity is PgEnum<[string, ...string[]]> = isWithEnum as any;\n\ntype Literal = v.InferOutput<typeof literalSchema>;\nexport type Json = Literal | { [key: string]: any } | any[];\n\nexport type IsNever<T> = [T] extends [never] ? true : false;\n\nexport type IsEnumDefined<TEnum extends string[] | undefined> = [string, ...string[]] extends TEnum ? false\n\t: undefined extends TEnum ? false\n\t: true;\n\nexport type ColumnIsGeneratedAlwaysAs<TColumn> = TColumn extends Column\n\t? TColumn['_']['identity'] extends 'always' ? true\n\t: TColumn['_'] extends { generated: undefined } ? false\n\t: TColumn['_'] extends { generated: { type: 'byDefault' } } ? false\n\t: true\n\t: false;\n\nexport type RemoveNever<T> = {\n\t[K in keyof T as T[K] extends never ? never : K]: T[K];\n};\n\nexport type RemoveNeverElements<T extends any[]> = T extends [infer First, ...infer Rest]\n\t? IsNever<First> extends true ? RemoveNeverElements<Rest>\n\t: [First, ...RemoveNeverElements<Rest>]\n\t: [];\n\nexport type GetSelection<T extends SelectedFieldsFlat<Column> | Table | View> = T extends Table ? T['_']['columns']\n\t: T extends View ? T['_']['selectedFields']\n\t: T;\n","import { Column, getTableColumns, getViewSelectedFields, is, isTable, isView, SQL } from 'drizzle-orm';\nimport type { Table, View } from 'drizzle-orm';\nimport type { PgEnum } from 'drizzle-orm/pg-core';\nimport * as v from 'valibot';\nimport { columnToSchema, mapEnumValues } from './column.ts';\nimport type { Conditions } from './schema.types.internal.ts';\nimport type { CreateInsertSchema, CreateSelectSchema, CreateUpdateSchema } from './schema.types.ts';\nimport { isPgEnum } from './utils.ts';\n\nfunction getColumns(tableLike: Table | View) {\n\treturn isTable(tableLike) ? getTableColumns(tableLike) : getViewSelectedFields(tableLike);\n}\n\nfunction handleColumns(\n\tcolumns: Record<string, any>,\n\trefinements: Record<string, any>,\n\tconditions: Conditions,\n): v.GenericSchema {\n\tconst columnSchemas: Record<string, v.GenericSchema> = {};\n\n\tfor (const [key, selected] of Object.entries(columns)) {\n\t\tif (!is(selected, Column) && !is(selected, SQL) && !is(selected, SQL.Aliased) && typeof selected === 'object') {\n\t\t\tconst columns = isTable(selected) || isView(selected) ? getColumns(selected) : selected;\n\t\t\tcolumnSchemas[key] = handleColumns(columns, refinements[key] ?? {}, conditions);\n\t\t\tcontinue;\n\t\t}\n\n\t\tconst refinement = refinements[key];\n\t\tif (refinement !== undefined && typeof refinement !== 'function') {\n\t\t\tcolumnSchemas[key] = refinement;\n\t\t\tcontinue;\n\t\t}\n\n\t\tconst column = is(selected, Column) ? selected : undefined;\n\t\tconst schema = column ? columnToSchema(column) : v.any();\n\t\tconst refined = typeof refinement === 'function' ? refinement(schema) : schema;\n\n\t\tif (conditions.never(column)) {\n\t\t\tcontinue;\n\t\t} else {\n\t\t\tcolumnSchemas[key] = refined;\n\t\t}\n\n\t\tif (column) {\n\t\t\tif (conditions.nullable(column)) {\n\t\t\t\tcolumnSchemas[key] = v.nullable(columnSchemas[key]!);\n\t\t\t}\n\n\t\t\tif (conditions.optional(column)) {\n\t\t\t\tcolumnSchemas[key] = v.optional(columnSchemas[key]!);\n\t\t\t}\n\t\t}\n\t}\n\n\treturn v.object(columnSchemas) as any;\n}\n\nexport const createSelectSchema: CreateSelectSchema = (\n\tentity: Table | View | PgEnum<[string, ...string[]]>,\n\trefine?: Record<string, any>,\n) => {\n\tif (isPgEnum(entity)) {\n\t\treturn v.enum(mapEnumValues(entity.enumValues));\n\t}\n\tconst columns = getColumns(entity);\n\treturn handleColumns(columns, refine ?? {}, {\n\t\tnever: () => false,\n\t\toptional: () => false,\n\t\tnullable: (column) => !column.notNull,\n\t}) as any;\n};\n\nexport const createInsertSchema: CreateInsertSchema = (\n\tentity: Table,\n\trefine?: Record<string, any>,\n) => {\n\tconst columns = getColumns(entity);\n\treturn handleColumns(columns, refine ?? {}, {\n\t\tnever: (column) =>\n\t\t\tcolumn?.generated?.type === 'always' || column?.generatedIdentity?.type === 'always'\n\t\t\t|| ('identity' in (column ?? {}) && typeof (column as any)?.identity !== 'undefined'),\n\t\toptional: (column) => !column.notNull || (column.notNull && column.hasDefault),\n\t\tnullable: (column) => !column.notNull,\n\t}) as any;\n};\n\nexport const createUpdateSchema: CreateUpdateSchema = (\n\tentity: Table,\n\trefine?: Record<string, any>,\n) => {\n\tconst columns = getColumns(entity);\n\treturn handleColumns(columns, refine ?? {}, {\n\t\tnever: (column) =>\n\t\t\tcolumn?.generated?.type === 'always' || column?.generatedIdentity?.type === 'always'\n\t\t\t|| ('identity' in (column ?? {}) && typeof (column as any)?.identity !== 'undefined'),\n\t\toptional: () => true,\n\t\tnullable: (column) => !column.notNull,\n\t}) as any;\n};\n"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "drizzle-valibot",
3
- "version": "1.0.0-beta.6-ea4d663",
3
+ "version": "1.0.0-beta.6-b046b02",
4
4
  "description": "Generate valibot schemas from Drizzle ORM schemas",
5
5
  "type": "module",
6
6
  "scripts": {
@@ -61,13 +61,12 @@
61
61
  "valibot": ">=1.0.0-beta.7"
62
62
  },
63
63
  "devDependencies": {
64
- "@rollup/plugin-typescript": "^11.1.0",
65
64
  "@types/node": "^18.15.10",
66
65
  "cpy": "^10.1.0",
67
66
  "drizzle-orm": "link:../drizzle-orm/dist",
68
67
  "json-rules-engine": "^7.3.1",
69
68
  "rimraf": "^5.0.0",
70
- "rollup": "^3.29.5",
69
+ "tsdown": "^0.18.3",
71
70
  "valibot": "1.0.0-beta.7",
72
71
  "zx": "^7.2.2"
73
72
  }
package/column.d.cts DELETED
@@ -1,10 +0,0 @@
1
- import { type Column } from 'drizzle-orm';
2
- import * as v from 'valibot';
3
- import type { Json } from "./utils.cjs";
4
- export declare const literalSchema: v.UnionSchema<[v.StringSchema<undefined>, v.NumberSchema<undefined>, v.BooleanSchema<undefined>, v.NullSchema<undefined>], undefined>;
5
- export declare const jsonSchema: v.GenericSchema<Json>;
6
- export declare const bufferSchema: v.GenericSchema<Buffer>;
7
- export declare function mapEnumValues(values: string[]): {
8
- [k: string]: string;
9
- };
10
- export declare function columnToSchema(column: Column): v.GenericSchema;
package/column.d.mts DELETED
@@ -1,10 +0,0 @@
1
- import { type Column } from 'drizzle-orm';
2
- import * as v from 'valibot';
3
- import type { Json } from "./utils.mjs";
4
- export declare const literalSchema: v.UnionSchema<[v.StringSchema<undefined>, v.NumberSchema<undefined>, v.BooleanSchema<undefined>, v.NullSchema<undefined>], undefined>;
5
- export declare const jsonSchema: v.GenericSchema<Json>;
6
- export declare const bufferSchema: v.GenericSchema<Buffer>;
7
- export declare function mapEnumValues(values: string[]): {
8
- [k: string]: string;
9
- };
10
- export declare function columnToSchema(column: Column): v.GenericSchema;
package/column.d.ts DELETED
@@ -1,10 +0,0 @@
1
- import { type Column } from 'drizzle-orm';
2
- import * as v from 'valibot';
3
- import type { Json } from './utils.js';
4
- export declare const literalSchema: v.UnionSchema<[v.StringSchema<undefined>, v.NumberSchema<undefined>, v.BooleanSchema<undefined>, v.NullSchema<undefined>], undefined>;
5
- export declare const jsonSchema: v.GenericSchema<Json>;
6
- export declare const bufferSchema: v.GenericSchema<Buffer>;
7
- export declare function mapEnumValues(values: string[]): {
8
- [k: string]: string;
9
- };
10
- export declare function columnToSchema(column: Column): v.GenericSchema;
@@ -1,57 +0,0 @@
1
- import type { Assume, Column, ColumnDataConstraint, ColumnDataType, ColumnTypeData, ExtractColumnTypeData } from 'drizzle-orm';
2
- import type * as v from 'valibot';
3
- import type { bigintStringModeSchema, unsignedBigintStringModeSchema } from "./column.cjs";
4
- import type { IsNever, Json, RemoveNeverElements } from "./utils.cjs";
5
- export type HasBaseColumn<TColumn> = TColumn extends {
6
- _: {
7
- baseColumn: Column | undefined;
8
- };
9
- } ? IsNever<TColumn['_']['baseColumn']> extends false ? true : false : false;
10
- export type EnumValuesToEnum<TEnumValues extends [string, ...string[]]> = {
11
- readonly [K in TEnumValues[number]]: K;
12
- };
13
- export type ExtractAdditionalProperties<TColumn extends Column> = {
14
- max: TColumn['length'];
15
- fixedLength: TColumn['isLengthExact'] extends true ? true : false;
16
- };
17
- type GetLengthAction<T extends Record<string, any>, TType extends string | ArrayLike<unknown>> = T['fixedLength'] extends true ? v.LengthAction<TType, number, undefined> : v.MaxLengthAction<TType, number, undefined>;
18
- type GetArraySchema<TColumn extends Column, TType extends ColumnTypeData = ExtractColumnTypeData<TColumn['_']['dataType']>> = GetValibotType<TColumn['_']['data'], TType['type'], TType['constraint'], TColumn['_']['enumValues'], HasBaseColumn<TColumn> extends true ? Assume<TColumn['_'], {
19
- baseColumn: Column;
20
- }>['baseColumn'] : undefined, ExtractAdditionalProperties<TColumn>>;
21
- export type GetValibotType<TData, TColumnType extends ColumnDataType, TConstraint extends ColumnDataConstraint | undefined, TEnum extends string[] | undefined, TBaseColumn extends Column | undefined, TAdditionalProperties extends Record<string, any>> = TColumnType extends 'array' ? TConstraint extends 'vector' | 'halfvector' ? TAdditionalProperties['max'] extends number ? v.SchemaWithPipe<[
22
- v.ArraySchema<v.NumberSchema<undefined>, undefined>,
23
- GetLengthAction<TAdditionalProperties, number[]>
24
- ]> : v.ArraySchema<v.NumberSchema<undefined>, undefined> : TConstraint extends 'int64vector' ? v.ArraySchema<v.BigintSchema<undefined>, undefined> : TConstraint extends 'geometry' | 'point' ? v.TupleSchema<[v.NumberSchema<undefined>, v.NumberSchema<undefined>], undefined> : TConstraint extends 'line' ? v.TupleSchema<[v.NumberSchema<undefined>, v.NumberSchema<undefined>, v.NumberSchema<undefined>], undefined> : TConstraint extends 'basecolumn' ? TBaseColumn extends Column ? (GetArraySchema<TBaseColumn> extends infer ArrInternals extends v.BaseSchema<any, any, v.BaseIssue<any>> ? TAdditionalProperties['max'] extends number ? v.SchemaWithPipe<[
25
- v.ArraySchema<ArrInternals, undefined>,
26
- GetLengthAction<TAdditionalProperties, Assume<TData, string | ArrayLike<unknown>>>
27
- ]> : v.ArraySchema<ArrInternals, undefined> : v.AnySchema) : v.ArraySchema<v.AnySchema, undefined> : v.ArraySchema<v.AnySchema, undefined> : TColumnType extends 'object' ? TConstraint extends 'geometry' | 'point' ? v.ObjectSchema<{
28
- readonly x: v.NumberSchema<undefined>;
29
- readonly y: v.NumberSchema<undefined>;
30
- }, undefined> : TConstraint extends 'line' ? v.ObjectSchema<{
31
- readonly a: v.NumberSchema<undefined>;
32
- readonly b: v.NumberSchema<undefined>;
33
- readonly c: v.NumberSchema<undefined>;
34
- }, undefined> : TConstraint extends 'date' ? v.DateSchema<undefined> : TConstraint extends 'buffer' ? v.GenericSchema<Buffer> : TConstraint extends 'json' ? v.GenericSchema<TData extends Record<string, any> ? TData : Json> : v.LooseObjectSchema<{}, undefined> : TColumnType extends 'custom' ? v.AnySchema : TColumnType extends 'number' ? v.SchemaWithPipe<RemoveNeverElements<[
35
- v.NumberSchema<undefined>,
36
- v.MinValueAction<number, number, undefined>,
37
- v.MaxValueAction<number, number, undefined>,
38
- TConstraint extends 'int8' | 'int16' | 'int24' | 'int32' | 'int53' | 'uint8' | 'uint16' | 'uint24' | 'uint32' | 'uint53' | 'year' ? v.IntegerAction<number, undefined> : never
39
- ]>> : TColumnType extends 'bigint' ? TConstraint extends 'int64' | 'uint64' ? v.SchemaWithPipe<[
40
- v.BigintSchema<undefined>,
41
- v.MinValueAction<bigint, bigint, undefined>,
42
- v.MaxValueAction<bigint, bigint, undefined>
43
- ]> : v.BigintSchema<undefined> : TColumnType extends 'boolean' ? v.BooleanSchema<undefined> : TColumnType extends 'string' ? TConstraint extends 'uuid' ? v.SchemaWithPipe<[v.StringSchema<undefined>, v.UuidAction<string, undefined>]> : TConstraint extends 'enum' ? v.EnumSchema<{
44
- readonly [K in Assume<TEnum, string[]>[number]]: K;
45
- }, undefined> : TConstraint extends 'int64' ? typeof bigintStringModeSchema : TConstraint extends 'uint64' ? typeof unsignedBigintStringModeSchema : TConstraint extends 'binary' ? v.SchemaWithPipe<RemoveNeverElements<[
46
- v.StringSchema<undefined>,
47
- v.RegexAction<string, undefined>,
48
- TAdditionalProperties['max'] extends number ? GetLengthAction<TAdditionalProperties, string> : never
49
- ]>> : TAdditionalProperties['max'] extends number ? v.SchemaWithPipe<[v.StringSchema<undefined>, GetLengthAction<TAdditionalProperties, string>]> : v.StringSchema<undefined> : v.AnySchema;
50
- export type GetValibotTypeFromColumn<TColumn extends Column, TDataType extends ColumnTypeData = ExtractColumnTypeData<TColumn['_']['dataType']>> = GetValibotType<TColumn['_']['data'], TDataType['type'], TDataType['constraint'], TColumn['_']['enumValues'], HasBaseColumn<TColumn> extends true ? Assume<TColumn['_'], {
51
- baseColumn: Column;
52
- }>['baseColumn'] : undefined, ExtractAdditionalProperties<TColumn>>;
53
- type HandleSelectColumn<TSchema extends v.GenericSchema, TColumn extends Column> = TColumn['_']['notNull'] extends true ? TSchema : v.NullableSchema<TSchema, undefined>;
54
- type HandleInsertColumn<TSchema extends v.GenericSchema, TColumn extends Column> = TColumn['_']['notNull'] extends true ? TColumn['_']['hasDefault'] extends true ? v.OptionalSchema<TSchema, undefined> : TSchema : v.OptionalSchema<v.NullableSchema<TSchema, undefined>, undefined>;
55
- type HandleUpdateColumn<TSchema extends v.GenericSchema, TColumn extends Column> = TColumn['_']['notNull'] extends true ? v.OptionalSchema<TSchema, undefined> : v.OptionalSchema<v.NullableSchema<TSchema, undefined>, undefined>;
56
- export type HandleColumn<TType extends 'select' | 'insert' | 'update', TColumn extends Column> = GetValibotTypeFromColumn<TColumn> extends infer TSchema extends v.GenericSchema ? TSchema extends v.AnySchema ? v.AnySchema : TType extends 'select' ? HandleSelectColumn<TSchema, TColumn> : TType extends 'insert' ? HandleInsertColumn<TSchema, TColumn> : TType extends 'update' ? HandleUpdateColumn<TSchema, TColumn> : TSchema : v.AnySchema;
57
- export {};
@@ -1,57 +0,0 @@
1
- import type { Assume, Column, ColumnDataConstraint, ColumnDataType, ColumnTypeData, ExtractColumnTypeData } from 'drizzle-orm';
2
- import type * as v from 'valibot';
3
- import type { bigintStringModeSchema, unsignedBigintStringModeSchema } from "./column.mjs";
4
- import type { IsNever, Json, RemoveNeverElements } from "./utils.mjs";
5
- export type HasBaseColumn<TColumn> = TColumn extends {
6
- _: {
7
- baseColumn: Column | undefined;
8
- };
9
- } ? IsNever<TColumn['_']['baseColumn']> extends false ? true : false : false;
10
- export type EnumValuesToEnum<TEnumValues extends [string, ...string[]]> = {
11
- readonly [K in TEnumValues[number]]: K;
12
- };
13
- export type ExtractAdditionalProperties<TColumn extends Column> = {
14
- max: TColumn['length'];
15
- fixedLength: TColumn['isLengthExact'] extends true ? true : false;
16
- };
17
- type GetLengthAction<T extends Record<string, any>, TType extends string | ArrayLike<unknown>> = T['fixedLength'] extends true ? v.LengthAction<TType, number, undefined> : v.MaxLengthAction<TType, number, undefined>;
18
- type GetArraySchema<TColumn extends Column, TType extends ColumnTypeData = ExtractColumnTypeData<TColumn['_']['dataType']>> = GetValibotType<TColumn['_']['data'], TType['type'], TType['constraint'], TColumn['_']['enumValues'], HasBaseColumn<TColumn> extends true ? Assume<TColumn['_'], {
19
- baseColumn: Column;
20
- }>['baseColumn'] : undefined, ExtractAdditionalProperties<TColumn>>;
21
- export type GetValibotType<TData, TColumnType extends ColumnDataType, TConstraint extends ColumnDataConstraint | undefined, TEnum extends string[] | undefined, TBaseColumn extends Column | undefined, TAdditionalProperties extends Record<string, any>> = TColumnType extends 'array' ? TConstraint extends 'vector' | 'halfvector' ? TAdditionalProperties['max'] extends number ? v.SchemaWithPipe<[
22
- v.ArraySchema<v.NumberSchema<undefined>, undefined>,
23
- GetLengthAction<TAdditionalProperties, number[]>
24
- ]> : v.ArraySchema<v.NumberSchema<undefined>, undefined> : TConstraint extends 'int64vector' ? v.ArraySchema<v.BigintSchema<undefined>, undefined> : TConstraint extends 'geometry' | 'point' ? v.TupleSchema<[v.NumberSchema<undefined>, v.NumberSchema<undefined>], undefined> : TConstraint extends 'line' ? v.TupleSchema<[v.NumberSchema<undefined>, v.NumberSchema<undefined>, v.NumberSchema<undefined>], undefined> : TConstraint extends 'basecolumn' ? TBaseColumn extends Column ? (GetArraySchema<TBaseColumn> extends infer ArrInternals extends v.BaseSchema<any, any, v.BaseIssue<any>> ? TAdditionalProperties['max'] extends number ? v.SchemaWithPipe<[
25
- v.ArraySchema<ArrInternals, undefined>,
26
- GetLengthAction<TAdditionalProperties, Assume<TData, string | ArrayLike<unknown>>>
27
- ]> : v.ArraySchema<ArrInternals, undefined> : v.AnySchema) : v.ArraySchema<v.AnySchema, undefined> : v.ArraySchema<v.AnySchema, undefined> : TColumnType extends 'object' ? TConstraint extends 'geometry' | 'point' ? v.ObjectSchema<{
28
- readonly x: v.NumberSchema<undefined>;
29
- readonly y: v.NumberSchema<undefined>;
30
- }, undefined> : TConstraint extends 'line' ? v.ObjectSchema<{
31
- readonly a: v.NumberSchema<undefined>;
32
- readonly b: v.NumberSchema<undefined>;
33
- readonly c: v.NumberSchema<undefined>;
34
- }, undefined> : TConstraint extends 'date' ? v.DateSchema<undefined> : TConstraint extends 'buffer' ? v.GenericSchema<Buffer> : TConstraint extends 'json' ? v.GenericSchema<TData extends Record<string, any> ? TData : Json> : v.LooseObjectSchema<{}, undefined> : TColumnType extends 'custom' ? v.AnySchema : TColumnType extends 'number' ? v.SchemaWithPipe<RemoveNeverElements<[
35
- v.NumberSchema<undefined>,
36
- v.MinValueAction<number, number, undefined>,
37
- v.MaxValueAction<number, number, undefined>,
38
- TConstraint extends 'int8' | 'int16' | 'int24' | 'int32' | 'int53' | 'uint8' | 'uint16' | 'uint24' | 'uint32' | 'uint53' | 'year' ? v.IntegerAction<number, undefined> : never
39
- ]>> : TColumnType extends 'bigint' ? TConstraint extends 'int64' | 'uint64' ? v.SchemaWithPipe<[
40
- v.BigintSchema<undefined>,
41
- v.MinValueAction<bigint, bigint, undefined>,
42
- v.MaxValueAction<bigint, bigint, undefined>
43
- ]> : v.BigintSchema<undefined> : TColumnType extends 'boolean' ? v.BooleanSchema<undefined> : TColumnType extends 'string' ? TConstraint extends 'uuid' ? v.SchemaWithPipe<[v.StringSchema<undefined>, v.UuidAction<string, undefined>]> : TConstraint extends 'enum' ? v.EnumSchema<{
44
- readonly [K in Assume<TEnum, string[]>[number]]: K;
45
- }, undefined> : TConstraint extends 'int64' ? typeof bigintStringModeSchema : TConstraint extends 'uint64' ? typeof unsignedBigintStringModeSchema : TConstraint extends 'binary' ? v.SchemaWithPipe<RemoveNeverElements<[
46
- v.StringSchema<undefined>,
47
- v.RegexAction<string, undefined>,
48
- TAdditionalProperties['max'] extends number ? GetLengthAction<TAdditionalProperties, string> : never
49
- ]>> : TAdditionalProperties['max'] extends number ? v.SchemaWithPipe<[v.StringSchema<undefined>, GetLengthAction<TAdditionalProperties, string>]> : v.StringSchema<undefined> : v.AnySchema;
50
- export type GetValibotTypeFromColumn<TColumn extends Column, TDataType extends ColumnTypeData = ExtractColumnTypeData<TColumn['_']['dataType']>> = GetValibotType<TColumn['_']['data'], TDataType['type'], TDataType['constraint'], TColumn['_']['enumValues'], HasBaseColumn<TColumn> extends true ? Assume<TColumn['_'], {
51
- baseColumn: Column;
52
- }>['baseColumn'] : undefined, ExtractAdditionalProperties<TColumn>>;
53
- type HandleSelectColumn<TSchema extends v.GenericSchema, TColumn extends Column> = TColumn['_']['notNull'] extends true ? TSchema : v.NullableSchema<TSchema, undefined>;
54
- type HandleInsertColumn<TSchema extends v.GenericSchema, TColumn extends Column> = TColumn['_']['notNull'] extends true ? TColumn['_']['hasDefault'] extends true ? v.OptionalSchema<TSchema, undefined> : TSchema : v.OptionalSchema<v.NullableSchema<TSchema, undefined>, undefined>;
55
- type HandleUpdateColumn<TSchema extends v.GenericSchema, TColumn extends Column> = TColumn['_']['notNull'] extends true ? v.OptionalSchema<TSchema, undefined> : v.OptionalSchema<v.NullableSchema<TSchema, undefined>, undefined>;
56
- export type HandleColumn<TType extends 'select' | 'insert' | 'update', TColumn extends Column> = GetValibotTypeFromColumn<TColumn> extends infer TSchema extends v.GenericSchema ? TSchema extends v.AnySchema ? v.AnySchema : TType extends 'select' ? HandleSelectColumn<TSchema, TColumn> : TType extends 'insert' ? HandleInsertColumn<TSchema, TColumn> : TType extends 'update' ? HandleUpdateColumn<TSchema, TColumn> : TSchema : v.AnySchema;
57
- export {};
package/column.types.d.ts DELETED
@@ -1,57 +0,0 @@
1
- import type { Assume, Column, ColumnDataConstraint, ColumnDataType, ColumnTypeData, ExtractColumnTypeData } from 'drizzle-orm';
2
- import type * as v from 'valibot';
3
- import type { bigintStringModeSchema, unsignedBigintStringModeSchema } from './column.js';
4
- import type { IsNever, Json, RemoveNeverElements } from './utils.js';
5
- export type HasBaseColumn<TColumn> = TColumn extends {
6
- _: {
7
- baseColumn: Column | undefined;
8
- };
9
- } ? IsNever<TColumn['_']['baseColumn']> extends false ? true : false : false;
10
- export type EnumValuesToEnum<TEnumValues extends [string, ...string[]]> = {
11
- readonly [K in TEnumValues[number]]: K;
12
- };
13
- export type ExtractAdditionalProperties<TColumn extends Column> = {
14
- max: TColumn['length'];
15
- fixedLength: TColumn['isLengthExact'] extends true ? true : false;
16
- };
17
- type GetLengthAction<T extends Record<string, any>, TType extends string | ArrayLike<unknown>> = T['fixedLength'] extends true ? v.LengthAction<TType, number, undefined> : v.MaxLengthAction<TType, number, undefined>;
18
- type GetArraySchema<TColumn extends Column, TType extends ColumnTypeData = ExtractColumnTypeData<TColumn['_']['dataType']>> = GetValibotType<TColumn['_']['data'], TType['type'], TType['constraint'], TColumn['_']['enumValues'], HasBaseColumn<TColumn> extends true ? Assume<TColumn['_'], {
19
- baseColumn: Column;
20
- }>['baseColumn'] : undefined, ExtractAdditionalProperties<TColumn>>;
21
- export type GetValibotType<TData, TColumnType extends ColumnDataType, TConstraint extends ColumnDataConstraint | undefined, TEnum extends string[] | undefined, TBaseColumn extends Column | undefined, TAdditionalProperties extends Record<string, any>> = TColumnType extends 'array' ? TConstraint extends 'vector' | 'halfvector' ? TAdditionalProperties['max'] extends number ? v.SchemaWithPipe<[
22
- v.ArraySchema<v.NumberSchema<undefined>, undefined>,
23
- GetLengthAction<TAdditionalProperties, number[]>
24
- ]> : v.ArraySchema<v.NumberSchema<undefined>, undefined> : TConstraint extends 'int64vector' ? v.ArraySchema<v.BigintSchema<undefined>, undefined> : TConstraint extends 'geometry' | 'point' ? v.TupleSchema<[v.NumberSchema<undefined>, v.NumberSchema<undefined>], undefined> : TConstraint extends 'line' ? v.TupleSchema<[v.NumberSchema<undefined>, v.NumberSchema<undefined>, v.NumberSchema<undefined>], undefined> : TConstraint extends 'basecolumn' ? TBaseColumn extends Column ? (GetArraySchema<TBaseColumn> extends infer ArrInternals extends v.BaseSchema<any, any, v.BaseIssue<any>> ? TAdditionalProperties['max'] extends number ? v.SchemaWithPipe<[
25
- v.ArraySchema<ArrInternals, undefined>,
26
- GetLengthAction<TAdditionalProperties, Assume<TData, string | ArrayLike<unknown>>>
27
- ]> : v.ArraySchema<ArrInternals, undefined> : v.AnySchema) : v.ArraySchema<v.AnySchema, undefined> : v.ArraySchema<v.AnySchema, undefined> : TColumnType extends 'object' ? TConstraint extends 'geometry' | 'point' ? v.ObjectSchema<{
28
- readonly x: v.NumberSchema<undefined>;
29
- readonly y: v.NumberSchema<undefined>;
30
- }, undefined> : TConstraint extends 'line' ? v.ObjectSchema<{
31
- readonly a: v.NumberSchema<undefined>;
32
- readonly b: v.NumberSchema<undefined>;
33
- readonly c: v.NumberSchema<undefined>;
34
- }, undefined> : TConstraint extends 'date' ? v.DateSchema<undefined> : TConstraint extends 'buffer' ? v.GenericSchema<Buffer> : TConstraint extends 'json' ? v.GenericSchema<TData extends Record<string, any> ? TData : Json> : v.LooseObjectSchema<{}, undefined> : TColumnType extends 'custom' ? v.AnySchema : TColumnType extends 'number' ? v.SchemaWithPipe<RemoveNeverElements<[
35
- v.NumberSchema<undefined>,
36
- v.MinValueAction<number, number, undefined>,
37
- v.MaxValueAction<number, number, undefined>,
38
- TConstraint extends 'int8' | 'int16' | 'int24' | 'int32' | 'int53' | 'uint8' | 'uint16' | 'uint24' | 'uint32' | 'uint53' | 'year' ? v.IntegerAction<number, undefined> : never
39
- ]>> : TColumnType extends 'bigint' ? TConstraint extends 'int64' | 'uint64' ? v.SchemaWithPipe<[
40
- v.BigintSchema<undefined>,
41
- v.MinValueAction<bigint, bigint, undefined>,
42
- v.MaxValueAction<bigint, bigint, undefined>
43
- ]> : v.BigintSchema<undefined> : TColumnType extends 'boolean' ? v.BooleanSchema<undefined> : TColumnType extends 'string' ? TConstraint extends 'uuid' ? v.SchemaWithPipe<[v.StringSchema<undefined>, v.UuidAction<string, undefined>]> : TConstraint extends 'enum' ? v.EnumSchema<{
44
- readonly [K in Assume<TEnum, string[]>[number]]: K;
45
- }, undefined> : TConstraint extends 'int64' ? typeof bigintStringModeSchema : TConstraint extends 'uint64' ? typeof unsignedBigintStringModeSchema : TConstraint extends 'binary' ? v.SchemaWithPipe<RemoveNeverElements<[
46
- v.StringSchema<undefined>,
47
- v.RegexAction<string, undefined>,
48
- TAdditionalProperties['max'] extends number ? GetLengthAction<TAdditionalProperties, string> : never
49
- ]>> : TAdditionalProperties['max'] extends number ? v.SchemaWithPipe<[v.StringSchema<undefined>, GetLengthAction<TAdditionalProperties, string>]> : v.StringSchema<undefined> : v.AnySchema;
50
- export type GetValibotTypeFromColumn<TColumn extends Column, TDataType extends ColumnTypeData = ExtractColumnTypeData<TColumn['_']['dataType']>> = GetValibotType<TColumn['_']['data'], TDataType['type'], TDataType['constraint'], TColumn['_']['enumValues'], HasBaseColumn<TColumn> extends true ? Assume<TColumn['_'], {
51
- baseColumn: Column;
52
- }>['baseColumn'] : undefined, ExtractAdditionalProperties<TColumn>>;
53
- type HandleSelectColumn<TSchema extends v.GenericSchema, TColumn extends Column> = TColumn['_']['notNull'] extends true ? TSchema : v.NullableSchema<TSchema, undefined>;
54
- type HandleInsertColumn<TSchema extends v.GenericSchema, TColumn extends Column> = TColumn['_']['notNull'] extends true ? TColumn['_']['hasDefault'] extends true ? v.OptionalSchema<TSchema, undefined> : TSchema : v.OptionalSchema<v.NullableSchema<TSchema, undefined>, undefined>;
55
- type HandleUpdateColumn<TSchema extends v.GenericSchema, TColumn extends Column> = TColumn['_']['notNull'] extends true ? v.OptionalSchema<TSchema, undefined> : v.OptionalSchema<v.NullableSchema<TSchema, undefined>, undefined>;
56
- export type HandleColumn<TType extends 'select' | 'insert' | 'update', TColumn extends Column> = GetValibotTypeFromColumn<TColumn> extends infer TSchema extends v.GenericSchema ? TSchema extends v.AnySchema ? v.AnySchema : TType extends 'select' ? HandleSelectColumn<TSchema, TColumn> : TType extends 'insert' ? HandleInsertColumn<TSchema, TColumn> : TType extends 'update' ? HandleUpdateColumn<TSchema, TColumn> : TSchema : v.AnySchema;
57
- export {};
package/constants.d.cts DELETED
@@ -1,20 +0,0 @@
1
- export declare const CONSTANTS: {
2
- INT8_MIN: number;
3
- INT8_MAX: number;
4
- INT8_UNSIGNED_MAX: number;
5
- INT16_MIN: number;
6
- INT16_MAX: number;
7
- INT16_UNSIGNED_MAX: number;
8
- INT24_MIN: number;
9
- INT24_MAX: number;
10
- INT24_UNSIGNED_MAX: number;
11
- INT32_MIN: number;
12
- INT32_MAX: number;
13
- INT32_UNSIGNED_MAX: number;
14
- INT48_MIN: number;
15
- INT48_MAX: number;
16
- INT48_UNSIGNED_MAX: number;
17
- INT64_MIN: bigint;
18
- INT64_MAX: bigint;
19
- INT64_UNSIGNED_MAX: bigint;
20
- };
package/constants.d.mts DELETED
@@ -1,20 +0,0 @@
1
- export declare const CONSTANTS: {
2
- INT8_MIN: number;
3
- INT8_MAX: number;
4
- INT8_UNSIGNED_MAX: number;
5
- INT16_MIN: number;
6
- INT16_MAX: number;
7
- INT16_UNSIGNED_MAX: number;
8
- INT24_MIN: number;
9
- INT24_MAX: number;
10
- INT24_UNSIGNED_MAX: number;
11
- INT32_MIN: number;
12
- INT32_MAX: number;
13
- INT32_UNSIGNED_MAX: number;
14
- INT48_MIN: number;
15
- INT48_MAX: number;
16
- INT48_UNSIGNED_MAX: number;
17
- INT64_MIN: bigint;
18
- INT64_MAX: bigint;
19
- INT64_UNSIGNED_MAX: bigint;
20
- };
package/constants.d.ts DELETED
@@ -1,20 +0,0 @@
1
- export declare const CONSTANTS: {
2
- INT8_MIN: number;
3
- INT8_MAX: number;
4
- INT8_UNSIGNED_MAX: number;
5
- INT16_MIN: number;
6
- INT16_MAX: number;
7
- INT16_UNSIGNED_MAX: number;
8
- INT24_MIN: number;
9
- INT24_MAX: number;
10
- INT24_UNSIGNED_MAX: number;
11
- INT32_MIN: number;
12
- INT32_MAX: number;
13
- INT32_UNSIGNED_MAX: number;
14
- INT48_MIN: number;
15
- INT48_MAX: number;
16
- INT48_UNSIGNED_MAX: number;
17
- INT64_MIN: bigint;
18
- INT64_MAX: bigint;
19
- INT64_UNSIGNED_MAX: bigint;
20
- };
package/schema.d.cts DELETED
@@ -1,4 +0,0 @@
1
- import type { CreateInsertSchema, CreateSelectSchema, CreateUpdateSchema } from "./schema.types.cjs";
2
- export declare const createSelectSchema: CreateSelectSchema;
3
- export declare const createInsertSchema: CreateInsertSchema;
4
- export declare const createUpdateSchema: CreateUpdateSchema;
package/schema.d.mts DELETED
@@ -1,4 +0,0 @@
1
- import type { CreateInsertSchema, CreateSelectSchema, CreateUpdateSchema } from "./schema.types.mjs";
2
- export declare const createSelectSchema: CreateSelectSchema;
3
- export declare const createInsertSchema: CreateInsertSchema;
4
- export declare const createUpdateSchema: CreateUpdateSchema;
package/schema.d.ts DELETED
@@ -1,4 +0,0 @@
1
- import type { CreateInsertSchema, CreateSelectSchema, CreateUpdateSchema } from './schema.types.js';
2
- export declare const createSelectSchema: CreateSelectSchema;
3
- export declare const createInsertSchema: CreateInsertSchema;
4
- export declare const createUpdateSchema: CreateUpdateSchema;
@@ -1,21 +0,0 @@
1
- import type { InferInsertModel, InferSelectModel, Table, View } from 'drizzle-orm';
2
- import type { CockroachEnum } from 'drizzle-orm/cockroach-core';
3
- import type { PgEnum } from 'drizzle-orm/pg-core';
4
- import type * as v from 'valibot';
5
- import type { EnumValuesToEnum } from "./column.types.cjs";
6
- import type { BuildRefine, BuildSchema, NoUnknownKeys } from "./schema.types.internal.cjs";
7
- export interface CreateSelectSchema {
8
- <TTable extends Table>(table: TTable): BuildSchema<'select', TTable['_']['columns'], undefined>;
9
- <TTable extends Table, TRefine extends BuildRefine<TTable['_']['columns']>>(table: TTable, refine?: NoUnknownKeys<TRefine, InferSelectModel<TTable>>): BuildSchema<'select', TTable['_']['columns'], TRefine>;
10
- <TView extends View>(view: TView): BuildSchema<'select', TView['_']['selectedFields'], undefined>;
11
- <TView extends View, TRefine extends BuildRefine<TView['_']['selectedFields']>>(view: TView, refine: NoUnknownKeys<TRefine, TView['$inferSelect']>): BuildSchema<'select', TView['_']['selectedFields'], TRefine>;
12
- <TEnum extends PgEnum<any> | CockroachEnum<any>>(enum_: TEnum): v.EnumSchema<EnumValuesToEnum<TEnum['enumValues']>, undefined>;
13
- }
14
- export interface CreateInsertSchema {
15
- <TTable extends Table>(table: TTable): BuildSchema<'insert', TTable['_']['columns'], undefined>;
16
- <TTable extends Table, TRefine extends BuildRefine<Pick<TTable['_']['columns'], keyof InferInsertModel<TTable>>>>(table: TTable, refine?: NoUnknownKeys<TRefine, InferInsertModel<TTable>>): BuildSchema<'insert', TTable['_']['columns'], TRefine>;
17
- }
18
- export interface CreateUpdateSchema {
19
- <TTable extends Table>(table: TTable): BuildSchema<'update', TTable['_']['columns'], undefined>;
20
- <TTable extends Table, TRefine extends BuildRefine<Pick<TTable['_']['columns'], keyof InferInsertModel<TTable>>>>(table: TTable, refine?: TRefine): BuildSchema<'update', TTable['_']['columns'], TRefine>;
21
- }
@@ -1,21 +0,0 @@
1
- import type { InferInsertModel, InferSelectModel, Table, View } from 'drizzle-orm';
2
- import type { CockroachEnum } from 'drizzle-orm/cockroach-core';
3
- import type { PgEnum } from 'drizzle-orm/pg-core';
4
- import type * as v from 'valibot';
5
- import type { EnumValuesToEnum } from "./column.types.mjs";
6
- import type { BuildRefine, BuildSchema, NoUnknownKeys } from "./schema.types.internal.mjs";
7
- export interface CreateSelectSchema {
8
- <TTable extends Table>(table: TTable): BuildSchema<'select', TTable['_']['columns'], undefined>;
9
- <TTable extends Table, TRefine extends BuildRefine<TTable['_']['columns']>>(table: TTable, refine?: NoUnknownKeys<TRefine, InferSelectModel<TTable>>): BuildSchema<'select', TTable['_']['columns'], TRefine>;
10
- <TView extends View>(view: TView): BuildSchema<'select', TView['_']['selectedFields'], undefined>;
11
- <TView extends View, TRefine extends BuildRefine<TView['_']['selectedFields']>>(view: TView, refine: NoUnknownKeys<TRefine, TView['$inferSelect']>): BuildSchema<'select', TView['_']['selectedFields'], TRefine>;
12
- <TEnum extends PgEnum<any> | CockroachEnum<any>>(enum_: TEnum): v.EnumSchema<EnumValuesToEnum<TEnum['enumValues']>, undefined>;
13
- }
14
- export interface CreateInsertSchema {
15
- <TTable extends Table>(table: TTable): BuildSchema<'insert', TTable['_']['columns'], undefined>;
16
- <TTable extends Table, TRefine extends BuildRefine<Pick<TTable['_']['columns'], keyof InferInsertModel<TTable>>>>(table: TTable, refine?: NoUnknownKeys<TRefine, InferInsertModel<TTable>>): BuildSchema<'insert', TTable['_']['columns'], TRefine>;
17
- }
18
- export interface CreateUpdateSchema {
19
- <TTable extends Table>(table: TTable): BuildSchema<'update', TTable['_']['columns'], undefined>;
20
- <TTable extends Table, TRefine extends BuildRefine<Pick<TTable['_']['columns'], keyof InferInsertModel<TTable>>>>(table: TTable, refine?: TRefine): BuildSchema<'update', TTable['_']['columns'], TRefine>;
21
- }
package/schema.types.d.ts DELETED
@@ -1,21 +0,0 @@
1
- import type { InferInsertModel, InferSelectModel, Table, View } from 'drizzle-orm';
2
- import type { CockroachEnum } from 'drizzle-orm/cockroach-core';
3
- import type { PgEnum } from 'drizzle-orm/pg-core';
4
- import type * as v from 'valibot';
5
- import type { EnumValuesToEnum } from './column.types.js';
6
- import type { BuildRefine, BuildSchema, NoUnknownKeys } from './schema.types.internal.js';
7
- export interface CreateSelectSchema {
8
- <TTable extends Table>(table: TTable): BuildSchema<'select', TTable['_']['columns'], undefined>;
9
- <TTable extends Table, TRefine extends BuildRefine<TTable['_']['columns']>>(table: TTable, refine?: NoUnknownKeys<TRefine, InferSelectModel<TTable>>): BuildSchema<'select', TTable['_']['columns'], TRefine>;
10
- <TView extends View>(view: TView): BuildSchema<'select', TView['_']['selectedFields'], undefined>;
11
- <TView extends View, TRefine extends BuildRefine<TView['_']['selectedFields']>>(view: TView, refine: NoUnknownKeys<TRefine, TView['$inferSelect']>): BuildSchema<'select', TView['_']['selectedFields'], TRefine>;
12
- <TEnum extends PgEnum<any> | CockroachEnum<any>>(enum_: TEnum): v.EnumSchema<EnumValuesToEnum<TEnum['enumValues']>, undefined>;
13
- }
14
- export interface CreateInsertSchema {
15
- <TTable extends Table>(table: TTable): BuildSchema<'insert', TTable['_']['columns'], undefined>;
16
- <TTable extends Table, TRefine extends BuildRefine<Pick<TTable['_']['columns'], keyof InferInsertModel<TTable>>>>(table: TTable, refine?: NoUnknownKeys<TRefine, InferInsertModel<TTable>>): BuildSchema<'insert', TTable['_']['columns'], TRefine>;
17
- }
18
- export interface CreateUpdateSchema {
19
- <TTable extends Table>(table: TTable): BuildSchema<'update', TTable['_']['columns'], undefined>;
20
- <TTable extends Table, TRefine extends BuildRefine<Pick<TTable['_']['columns'], keyof InferInsertModel<TTable>>>>(table: TTable, refine?: TRefine): BuildSchema<'update', TTable['_']['columns'], TRefine>;
21
- }
@@ -1,22 +0,0 @@
1
- import type { Assume, Column, DrizzleTypeError, SelectedFieldsFlat, Simplify, Table, View } from 'drizzle-orm';
2
- import type * as v from 'valibot';
3
- import type { GetValibotTypeFromColumn, HandleColumn } from "./column.types.cjs";
4
- import type { ColumnIsGeneratedAlwaysAs, GetSelection } from "./utils.cjs";
5
- export interface Conditions {
6
- never: (column?: Column) => boolean;
7
- optional: (column: Column) => boolean;
8
- nullable: (column: Column) => boolean;
9
- }
10
- type BuildRefineField<T> = T extends v.GenericSchema ? ((schema: T) => v.GenericSchema) | v.GenericSchema : never;
11
- export type BuildRefine<TColumns extends Record<string, any>> = {
12
- [K in keyof TColumns as TColumns[K] extends Column | SelectedFieldsFlat<Column> | Table | View ? K : never]?: TColumns[K] extends Column ? BuildRefineField<GetValibotTypeFromColumn<TColumns[K]>> : BuildRefine<GetSelection<TColumns[K]>>;
13
- };
14
- type HandleRefinement<TType extends 'select' | 'insert' | 'update', TRefinement, TColumn extends Column> = TRefinement extends (schema: any) => v.GenericSchema ? (TColumn['_']['notNull'] extends true ? ReturnType<TRefinement> : v.NullableSchema<ReturnType<TRefinement>, undefined>) extends infer TSchema ? TType extends 'update' ? v.OptionalSchema<Assume<TSchema, v.GenericSchema>, undefined> : TSchema : v.AnySchema : TRefinement;
15
- type IsRefinementDefined<TRefinements extends Record<string | symbol | number, any> | undefined, TKey extends string | symbol | number> = TRefinements extends object ? TRefinements[TKey] extends v.GenericSchema | ((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> = v.ObjectSchema<Simplify<{
17
- readonly [K in keyof TColumns as ColumnIsGeneratedAlwaysAs<TColumns[K]> extends true ? TType extends 'select' ? K : never : K]: TColumns[K] extends infer TColumn extends Column ? IsRefinementDefined<TRefinements, Assume<K, string>> extends true ? Assume<HandleRefinement<TType, TRefinements[K & keyof TRefinements], TColumn>, v.GenericSchema> : HandleColumn<TType, TColumn> : TColumns[K] extends infer TObject extends SelectedFieldsFlat<Column> | Table | View ? BuildSchema<TType, GetSelection<TObject>, TRefinements extends object ? TRefinements[K & keyof TRefinements] : undefined> : v.AnySchema;
18
- }>, undefined>;
19
- export type NoUnknownKeys<TRefinement extends Record<string, any>, TCompare extends Record<string, any>> = {
20
- [K in keyof TRefinement]: K extends keyof TCompare ? TRefinement[K] extends Record<string, v.GenericSchema> ? NoUnknownKeys<TRefinement[K], TCompare[K]> : TRefinement[K] : DrizzleTypeError<`Found unknown key in refinement: "${K & string}"`>;
21
- };
22
- export {};
@@ -1,22 +0,0 @@
1
- import type { Assume, Column, DrizzleTypeError, SelectedFieldsFlat, Simplify, Table, View } from 'drizzle-orm';
2
- import type * as v from 'valibot';
3
- import type { GetValibotTypeFromColumn, HandleColumn } from "./column.types.mjs";
4
- import type { ColumnIsGeneratedAlwaysAs, GetSelection } from "./utils.mjs";
5
- export interface Conditions {
6
- never: (column?: Column) => boolean;
7
- optional: (column: Column) => boolean;
8
- nullable: (column: Column) => boolean;
9
- }
10
- type BuildRefineField<T> = T extends v.GenericSchema ? ((schema: T) => v.GenericSchema) | v.GenericSchema : never;
11
- export type BuildRefine<TColumns extends Record<string, any>> = {
12
- [K in keyof TColumns as TColumns[K] extends Column | SelectedFieldsFlat<Column> | Table | View ? K : never]?: TColumns[K] extends Column ? BuildRefineField<GetValibotTypeFromColumn<TColumns[K]>> : BuildRefine<GetSelection<TColumns[K]>>;
13
- };
14
- type HandleRefinement<TType extends 'select' | 'insert' | 'update', TRefinement, TColumn extends Column> = TRefinement extends (schema: any) => v.GenericSchema ? (TColumn['_']['notNull'] extends true ? ReturnType<TRefinement> : v.NullableSchema<ReturnType<TRefinement>, undefined>) extends infer TSchema ? TType extends 'update' ? v.OptionalSchema<Assume<TSchema, v.GenericSchema>, undefined> : TSchema : v.AnySchema : TRefinement;
15
- type IsRefinementDefined<TRefinements extends Record<string | symbol | number, any> | undefined, TKey extends string | symbol | number> = TRefinements extends object ? TRefinements[TKey] extends v.GenericSchema | ((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> = v.ObjectSchema<Simplify<{
17
- readonly [K in keyof TColumns as ColumnIsGeneratedAlwaysAs<TColumns[K]> extends true ? TType extends 'select' ? K : never : K]: TColumns[K] extends infer TColumn extends Column ? IsRefinementDefined<TRefinements, Assume<K, string>> extends true ? Assume<HandleRefinement<TType, TRefinements[K & keyof TRefinements], TColumn>, v.GenericSchema> : HandleColumn<TType, TColumn> : TColumns[K] extends infer TObject extends SelectedFieldsFlat<Column> | Table | View ? BuildSchema<TType, GetSelection<TObject>, TRefinements extends object ? TRefinements[K & keyof TRefinements] : undefined> : v.AnySchema;
18
- }>, undefined>;
19
- export type NoUnknownKeys<TRefinement extends Record<string, any>, TCompare extends Record<string, any>> = {
20
- [K in keyof TRefinement]: K extends keyof TCompare ? TRefinement[K] extends Record<string, v.GenericSchema> ? NoUnknownKeys<TRefinement[K], TCompare[K]> : TRefinement[K] : DrizzleTypeError<`Found unknown key in refinement: "${K & string}"`>;
21
- };
22
- export {};
@@ -1,22 +0,0 @@
1
- import type { Assume, Column, DrizzleTypeError, SelectedFieldsFlat, Simplify, Table, View } from 'drizzle-orm';
2
- import type * as v from 'valibot';
3
- import type { GetValibotTypeFromColumn, HandleColumn } from './column.types.js';
4
- import type { ColumnIsGeneratedAlwaysAs, GetSelection } from './utils.js';
5
- export interface Conditions {
6
- never: (column?: Column) => boolean;
7
- optional: (column: Column) => boolean;
8
- nullable: (column: Column) => boolean;
9
- }
10
- type BuildRefineField<T> = T extends v.GenericSchema ? ((schema: T) => v.GenericSchema) | v.GenericSchema : never;
11
- export type BuildRefine<TColumns extends Record<string, any>> = {
12
- [K in keyof TColumns as TColumns[K] extends Column | SelectedFieldsFlat<Column> | Table | View ? K : never]?: TColumns[K] extends Column ? BuildRefineField<GetValibotTypeFromColumn<TColumns[K]>> : BuildRefine<GetSelection<TColumns[K]>>;
13
- };
14
- type HandleRefinement<TType extends 'select' | 'insert' | 'update', TRefinement, TColumn extends Column> = TRefinement extends (schema: any) => v.GenericSchema ? (TColumn['_']['notNull'] extends true ? ReturnType<TRefinement> : v.NullableSchema<ReturnType<TRefinement>, undefined>) extends infer TSchema ? TType extends 'update' ? v.OptionalSchema<Assume<TSchema, v.GenericSchema>, undefined> : TSchema : v.AnySchema : TRefinement;
15
- type IsRefinementDefined<TRefinements extends Record<string | symbol | number, any> | undefined, TKey extends string | symbol | number> = TRefinements extends object ? TRefinements[TKey] extends v.GenericSchema | ((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> = v.ObjectSchema<Simplify<{
17
- readonly [K in keyof TColumns as ColumnIsGeneratedAlwaysAs<TColumns[K]> extends true ? TType extends 'select' ? K : never : K]: TColumns[K] extends infer TColumn extends Column ? IsRefinementDefined<TRefinements, Assume<K, string>> extends true ? Assume<HandleRefinement<TType, TRefinements[K & keyof TRefinements], TColumn>, v.GenericSchema> : HandleColumn<TType, TColumn> : TColumns[K] extends infer TObject extends SelectedFieldsFlat<Column> | Table | View ? BuildSchema<TType, GetSelection<TObject>, TRefinements extends object ? TRefinements[K & keyof TRefinements] : undefined> : v.AnySchema;
18
- }>, undefined>;
19
- export type NoUnknownKeys<TRefinement extends Record<string, any>, TCompare extends Record<string, any>> = {
20
- [K in keyof TRefinement]: K extends keyof TCompare ? TRefinement[K] extends Record<string, v.GenericSchema> ? NoUnknownKeys<TRefinement[K], TCompare[K]> : TRefinement[K] : DrizzleTypeError<`Found unknown key in refinement: "${K & string}"`>;
21
- };
22
- export {};
package/utils.d.cts DELETED
@@ -1,28 +0,0 @@
1
- import type { Column, SelectedFieldsFlat, Table, View } from 'drizzle-orm';
2
- import type { PgEnum } from 'drizzle-orm/pg-core';
3
- import type * as v from 'valibot';
4
- import type { literalSchema } from "./column.cjs";
5
- export declare function isColumnType<T extends Column>(column: Column, columnTypes: string[]): column is T;
6
- export declare function isWithEnum(column: Column): column is typeof column & {
7
- enumValues: [string, ...string[]];
8
- };
9
- export declare const isPgEnum: (entity: any) => entity is PgEnum<[string, ...string[]]>;
10
- type Literal = v.InferOutput<typeof literalSchema>;
11
- export type Json = Literal | {
12
- [key: string]: any;
13
- } | any[];
14
- export type IsNever<T> = [T] extends [never] ? true : false;
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['_'] extends {
17
- generated: undefined;
18
- } ? false : TColumn['_'] extends {
19
- generated: {
20
- type: 'byDefault';
21
- };
22
- } ? false : true : false;
23
- export type RemoveNever<T> = {
24
- [K in keyof T as T[K] extends never ? never : K]: T[K];
25
- };
26
- export type RemoveNeverElements<T extends any[]> = T extends [infer First, ...infer Rest] ? IsNever<First> extends true ? RemoveNeverElements<Rest> : [First, ...RemoveNeverElements<Rest>] : [];
27
- export type GetSelection<T extends SelectedFieldsFlat<Column> | Table | View> = T extends Table ? T['_']['columns'] : T extends View ? T['_']['selectedFields'] : T;
28
- export {};