drizzle-typebox 1.0.0-beta.6-7a73126 → 1.0.0-beta.6-a679d20

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":["t"],"mappings":"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"}
1
+ {"version":3,"file":"index.mjs","names":["t","jsonSchema: JsonSchema","bufferSchema: BufferSchema","schema!: TSchema","min!: number","max!: number","bigintStringModeSchema: BigIntStringModeSchema","unsignedBigintStringModeSchema: BigIntStringModeSchema","baseSchema: TSchema","schema: TSchema","min!: bigint | undefined","max!: bigint | undefined","options: Partial<BigIntOptions>","regex: RegExp | undefined","options: Partial<StringOptions>","isPgEnum: (entity: any) => entity is PgEnum<[string, ...string[]]>","columnSchemas: Record<string, TSchema>","t","selectConditions: Conditions","insertConditions: Conditions","updateConditions: Conditions","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 { Kind, Type as t, TypeRegistry } from '@sinclair/typebox';\nimport type { BigIntOptions, StringOptions, TSchema, Type as typebox } from '@sinclair/typebox';\nimport {\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 { CONSTANTS } from './constants.ts';\nimport type { BigIntStringModeSchema, BufferSchema, JsonSchema } from './utils.ts';\n\nexport const literalSchema = t.Union([t.String(), t.Number(), t.Boolean(), t.Null()]);\nexport const jsonSchema: JsonSchema = t.Union([literalSchema, t.Array(t.Any()), t.Record(t.String(), t.Any())]) as any;\nTypeRegistry.Set('Buffer', (_, value) => value instanceof Buffer);\nexport const bufferSchema: BufferSchema = { [Kind]: 'Buffer', type: 'buffer' } as any;\n\nexport function mapEnumValues(values: string[]) {\n\treturn Object.fromEntries(values.map((value) => [value, value]));\n}\n\nexport function columnToSchema(column: Column, t: typeof typebox): TSchema {\n\tlet schema!: TSchema;\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, t);\n\t}\n\n\tconst { type, constraint } = extractExtendedColumnType(column);\n\n\tswitch (type) {\n\t\tcase 'array': {\n\t\t\tschema = arrayColumnToSchema(column, constraint, t);\n\t\t\tbreak;\n\t\t}\n\t\tcase 'object': {\n\t\t\tschema = objectColumnToSchema(column, constraint, t);\n\t\t\tbreak;\n\t\t}\n\t\tcase 'number': {\n\t\t\tschema = numberColumnToSchema(column, constraint, t);\n\t\t\tbreak;\n\t\t}\n\t\tcase 'bigint': {\n\t\t\tschema = bigintColumnToSchema(column, constraint, t);\n\t\t\tbreak;\n\t\t}\n\t\tcase 'boolean': {\n\t\t\tschema = t.Boolean();\n\t\t\tbreak;\n\t\t}\n\t\tcase 'string': {\n\t\t\tschema = stringColumnToSchema(column, constraint, t);\n\t\t\tbreak;\n\t\t}\n\t\tcase 'custom': {\n\t\t\tschema = t.Any();\n\t\t\tbreak;\n\t\t}\n\t\tdefault: {\n\t\t\tschema = t.Any();\n\t\t}\n\t}\n\n\treturn schema;\n}\n\nfunction numberColumnToSchema(\n\tcolumn: Column,\n\tconstraint: ColumnDataNumberConstraint | undefined,\n\tt: typeof typebox,\n): TSchema {\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 key = integer ? 'Integer' : 'Number';\n\treturn t[key]({\n\t\tminimum: min,\n\t\tmaximum: max,\n\t});\n}\n\nTypeRegistry.Set('BigIntStringMode', (_, value) => {\n\tif (typeof value !== 'string' || !(/^-?\\d+$/.test(value))) {\n\t\treturn false;\n\t}\n\n\tconst bigint = BigInt(value);\n\tif (bigint < CONSTANTS.INT64_MIN || bigint > CONSTANTS.INT64_MAX) {\n\t\treturn false;\n\t}\n\n\treturn true;\n});\n\nTypeRegistry.Set('UnsignedBigIntStringMode', (_, value) => {\n\tif (typeof value !== 'string' || !(/^\\d+$/.test(value))) {\n\t\treturn false;\n\t}\n\n\tconst bigint = BigInt(value);\n\tif (bigint < 0 || bigint > CONSTANTS.INT64_MAX) {\n\t\treturn false;\n\t}\n\n\treturn true;\n});\n/** @internal */\nexport const bigintStringModeSchema: BigIntStringModeSchema = {\n\t[Kind]: 'BigIntStringMode',\n\ttype: 'string',\n} as any;\n\n/** @internal */\nexport const unsignedBigintStringModeSchema: BigIntStringModeSchema = {\n\t[Kind]: 'UnsignedBigIntStringMode',\n\ttype: 'string',\n} as any;\n\nfunction pgArrayColumnToSchema(\n\tcolumn: Column,\n\tdimensions: number,\n\tt: typeof typebox,\n): TSchema {\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: TSchema;\n\n\tswitch (baseType) {\n\t\tcase 'number':\n\t\t\tbaseSchema = numberColumnToSchema(column, baseConstraint as ColumnDataNumberConstraint, t);\n\t\t\tbreak;\n\t\tcase 'bigint':\n\t\t\tbaseSchema = bigintColumnToSchema(column, baseConstraint as ColumnDataBigIntConstraint, t);\n\t\t\tbreak;\n\t\tcase 'boolean':\n\t\t\tbaseSchema = t.Boolean();\n\t\t\tbreak;\n\t\tcase 'string':\n\t\t\tbaseSchema = stringColumnToSchema(column, baseConstraint as ColumnDataStringConstraint, t);\n\t\t\tbreak;\n\t\tcase 'object':\n\t\t\tbaseSchema = objectColumnToSchema(column, baseConstraint as ColumnDataObjectConstraint, t);\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, t);\n\t\t\tbreak;\n\t\tdefault:\n\t\t\tbaseSchema = t.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: TSchema = t.Array(baseSchema);\n\tfor (let i = 1; i < dimensions; i++) {\n\t\tschema = t.Array(schema);\n\t}\n\treturn schema;\n}\n\nfunction arrayColumnToSchema(\n\tcolumn: Column,\n\tconstraint: ColumnDataArrayConstraint | undefined,\n\tt: typeof typebox,\n): TSchema {\n\tswitch (constraint) {\n\t\tcase 'geometry':\n\t\tcase 'point': {\n\t\t\treturn t.Tuple([t.Number(), t.Number()]);\n\t\t}\n\t\tcase 'line': {\n\t\t\treturn t.Tuple([t.Number(), t.Number(), t.Number()]);\n\t\t}\n\t\tcase 'vector':\n\t\tcase 'halfvector': {\n\t\t\tconst length = column.length;\n\t\t\tconst sizeParam = length\n\t\t\t\t? {\n\t\t\t\t\tminItems: length,\n\t\t\t\t\tmaxItems: length,\n\t\t\t\t}\n\t\t\t\t: undefined;\n\t\t\treturn t.Array(t.Number(), sizeParam);\n\t\t}\n\t\tcase 'int64vector': {\n\t\t\tconst length = column.length;\n\t\t\tconst sizeParam = length\n\t\t\t\t? {\n\t\t\t\t\tminItems: length,\n\t\t\t\t\tmaxItems: length,\n\t\t\t\t}\n\t\t\t\t: undefined;\n\t\t\treturn t.Array(\n\t\t\t\tt.BigInt({\n\t\t\t\t\tminimum: CONSTANTS.INT64_MIN,\n\t\t\t\t\tmaximum: CONSTANTS.INT64_MAX,\n\t\t\t\t}),\n\t\t\t\tsizeParam,\n\t\t\t);\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 size = column.length;\n\t\t\t\tconst sizeParam = size\n\t\t\t\t\t? {\n\t\t\t\t\t\tminItems: size,\n\t\t\t\t\t\tmaxItems: size,\n\t\t\t\t\t}\n\t\t\t\t\t: undefined;\n\t\t\t\treturn t.Array(columnToSchema(baseColumn, t), sizeParam);\n\t\t\t}\n\t\t\treturn t.Array(t.Any());\n\t\t}\n\t\tdefault: {\n\t\t\treturn t.Array(t.Any());\n\t\t}\n\t}\n}\n\nfunction objectColumnToSchema(\n\tcolumn: Column,\n\tconstraint: ColumnDataObjectConstraint | undefined,\n\tt: typeof typebox,\n): TSchema {\n\tswitch (constraint) {\n\t\tcase 'buffer': {\n\t\t\treturn bufferSchema;\n\t\t}\n\t\tcase 'date': {\n\t\t\treturn t.Date();\n\t\t}\n\t\tcase 'geometry':\n\t\tcase 'point': {\n\t\t\treturn t.Object({\n\t\t\t\tx: t.Number(),\n\t\t\t\ty: t.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 t.Object({\n\t\t\t\ta: t.Number(),\n\t\t\t\tb: t.Number(),\n\t\t\t\tc: t.Number(),\n\t\t\t});\n\t\t}\n\t\tdefault: {\n\t\t\treturn t.Object({});\n\t\t}\n\t}\n}\n\nfunction bigintColumnToSchema(\n\tcolumn: Column,\n\tconstraint: ColumnDataBigIntConstraint | undefined,\n\tt: typeof typebox,\n): TSchema {\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 options: Partial<BigIntOptions> = {};\n\n\tif (min !== undefined) {\n\t\toptions.minimum = min;\n\t}\n\tif (max !== undefined) {\n\t\toptions.maximum = max;\n\t}\n\n\treturn t.BigInt(Object.keys(options).length > 0 ? options : undefined);\n}\n\nfunction stringColumnToSchema(\n\tcolumn: Column,\n\tconstraint: ColumnDataStringConstraint | undefined,\n\tt: typeof typebox,\n): TSchema {\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') {\n\t\treturn t.String({\n\t\t\tformat: 'uuid',\n\t\t});\n\t}\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 t.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 options: Partial<StringOptions> = {};\n\n\tif (length !== undefined && isLengthExact) {\n\t\toptions.minLength = length;\n\t\toptions.maxLength = length;\n\t} else if (length !== undefined) {\n\t\toptions.maxLength = length;\n\t}\n\n\treturn regex\n\t\t? t.RegExp(regex, Object.keys(options).length > 0 ? options : undefined)\n\t\t: t.String(Object.keys(options).length > 0 ? options : undefined);\n}\n","import type { Kind, Static, TSchema } from '@sinclair/typebox';\nimport type { Column, SelectedFieldsFlat, Table, View } from 'drizzle-orm';\nimport type { PgEnum } from 'drizzle-orm/pg-core';\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 = Static<typeof literalSchema>;\nexport type Json = Literal | { [key: string]: any } | any[];\nexport interface JsonSchema extends TSchema {\n\t[Kind]: 'Union';\n\tstatic: Json;\n\tanyOf: Json;\n}\nexport interface BufferSchema extends TSchema {\n\t[Kind]: 'Buffer';\n\tstatic: Buffer;\n\ttype: 'buffer';\n}\nexport interface BigIntStringModeSchema extends TSchema {\n\t[Kind]: 'BigIntStringMode';\n\tstatic: string;\n\ttype: 'string';\n}\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 GetSelection<T extends SelectedFieldsFlat<Column> | Table | View> = T extends Table ? T['_']['columns']\n\t: T extends View ? T['_']['selectedFields']\n\t: T;\n","import { Type as t } from '@sinclair/typebox';\nimport type { TSchema } from '@sinclair/typebox';\nimport { 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 { columnToSchema, mapEnumValues } from './column.ts';\nimport type { Conditions } from './schema.types.internal.ts';\nimport type {\n\tCreateInsertSchema,\n\tCreateSchemaFactoryOptions,\n\tCreateSelectSchema,\n\tCreateUpdateSchema,\n} from './schema.types.ts';\nimport { isPgEnum } from './utils.ts';\n\nexport function getColumns(tableLike: Table | View) {\n\treturn isTable(tableLike) ? getTableColumns(tableLike) : getViewSelectedFields(tableLike);\n}\n\nexport function handleColumns(\n\tcolumns: Record<string, any>,\n\trefinements: Record<string, any>,\n\tconditions: Conditions,\n\tfactory?: CreateSchemaFactoryOptions,\n): TSchema {\n\tconst columnSchemas: Record<string, TSchema> = {};\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, factory);\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, factory?.typeboxInstance ?? t) : t.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] = t.Union([columnSchemas[key]!, t.Null()]);\n\t\t\t}\n\n\t\t\tif (conditions.optional(column)) {\n\t\t\t\tcolumnSchemas[key] = t.Optional(columnSchemas[key]!);\n\t\t\t}\n\t\t}\n\t}\n\n\treturn t.Object(columnSchemas) as any;\n}\n\nexport function handleEnum(enum_: PgEnum<any>, factory?: CreateSchemaFactoryOptions) {\n\tconst typebox: typeof t = factory?.typeboxInstance ?? t;\n\treturn typebox.Enum(mapEnumValues(enum_.enumValues));\n}\n\nconst selectConditions: Conditions = {\n\tnever: () => false,\n\toptional: () => false,\n\tnullable: (column) => !column.notNull,\n};\n\nconst insertConditions: Conditions = {\n\tnever: (column) =>\n\t\tcolumn?.generated?.type === 'always' || column?.generatedIdentity?.type === 'always'\n\t\t|| ('identity' in (column ?? {}) && typeof (column as any)?.identity !== 'undefined'),\n\toptional: (column) => !column.notNull || (column.notNull && column.hasDefault),\n\tnullable: (column) => !column.notNull,\n};\n\nconst updateConditions: Conditions = {\n\tnever: (column) =>\n\t\tcolumn?.generated?.type === 'always' || column?.generatedIdentity?.type === 'always'\n\t\t|| ('identity' in (column ?? {}) && typeof (column as any)?.identity !== 'undefined'),\n\toptional: () => true,\n\tnullable: (column) => !column.notNull,\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 handleEnum(entity);\n\t}\n\tconst columns = getColumns(entity);\n\treturn handleColumns(columns, refine ?? {}, selectConditions) 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 ?? {}, insertConditions) 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 ?? {}, updateConditions) as any;\n};\n\nexport function createSchemaFactory(options?: CreateSchemaFactoryOptions) {\n\tconst createSelectSchema: CreateSelectSchema = (\n\t\tentity: Table | View | PgEnum<[string, ...string[]]>,\n\t\trefine?: Record<string, any>,\n\t) => {\n\t\tif (isPgEnum(entity)) {\n\t\t\treturn handleEnum(entity, options);\n\t\t}\n\t\tconst columns = getColumns(entity);\n\t\treturn handleColumns(columns, refine ?? {}, selectConditions, options) as any;\n\t};\n\n\tconst createInsertSchema: CreateInsertSchema = (\n\t\tentity: Table,\n\t\trefine?: Record<string, any>,\n\t) => {\n\t\tconst columns = getColumns(entity);\n\t\treturn handleColumns(columns, refine ?? {}, insertConditions, options) as any;\n\t};\n\n\tconst createUpdateSchema: CreateUpdateSchema = (\n\t\tentity: Table,\n\t\trefine?: Record<string, any>,\n\t) => {\n\t\tconst columns = getColumns(entity);\n\t\treturn handleColumns(columns, refine ?? {}, updateConditions, options) as any;\n\t};\n\n\treturn { createSelectSchema, createInsertSchema, createUpdateSchema };\n}\n"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "drizzle-typebox",
3
- "version": "1.0.0-beta.6-7a73126",
3
+ "version": "1.0.0-beta.6-a679d20",
4
4
  "description": "Generate Typebox schemas from Drizzle ORM schemas",
5
5
  "type": "module",
6
6
  "scripts": {
@@ -61,14 +61,13 @@
61
61
  "drizzle-orm": ">=1.0.0-beta.2"
62
62
  },
63
63
  "devDependencies": {
64
- "@rollup/plugin-typescript": "^11.1.0",
65
64
  "@sinclair/typebox": "^0.34.8",
66
65
  "@types/node": "^18.15.10",
67
66
  "cpy": "^10.1.0",
68
67
  "drizzle-orm": "link:../drizzle-orm/dist",
69
68
  "json-rules-engine": "^7.3.1",
70
69
  "rimraf": "^5.0.0",
71
- "rollup": "^3.29.5",
70
+ "tsdown": "^0.18.3",
72
71
  "zx": "^7.2.2"
73
72
  }
74
73
  }
package/column.d.cts DELETED
@@ -1,10 +0,0 @@
1
- import type { TSchema, Type as typebox } from '@sinclair/typebox';
2
- import { type Column } from 'drizzle-orm';
3
- import type { BufferSchema, JsonSchema } from "./utils.cjs";
4
- export declare const literalSchema: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TNumber, import("@sinclair/typebox").TBoolean, import("@sinclair/typebox").TNull]>;
5
- export declare const jsonSchema: JsonSchema;
6
- export declare const bufferSchema: BufferSchema;
7
- export declare function mapEnumValues(values: string[]): {
8
- [k: string]: string;
9
- };
10
- export declare function columnToSchema(column: Column, t: typeof typebox): TSchema;
package/column.d.mts DELETED
@@ -1,10 +0,0 @@
1
- import type { TSchema, Type as typebox } from '@sinclair/typebox';
2
- import { type Column } from 'drizzle-orm';
3
- import type { BufferSchema, JsonSchema } from "./utils.mjs";
4
- export declare const literalSchema: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TNumber, import("@sinclair/typebox").TBoolean, import("@sinclair/typebox").TNull]>;
5
- export declare const jsonSchema: JsonSchema;
6
- export declare const bufferSchema: BufferSchema;
7
- export declare function mapEnumValues(values: string[]): {
8
- [k: string]: string;
9
- };
10
- export declare function columnToSchema(column: Column, t: typeof typebox): TSchema;
package/column.d.ts DELETED
@@ -1,10 +0,0 @@
1
- import type { TSchema, Type as typebox } from '@sinclair/typebox';
2
- import { type Column } from 'drizzle-orm';
3
- import type { BufferSchema, JsonSchema } from './utils.js';
4
- export declare const literalSchema: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TNumber, import("@sinclair/typebox").TBoolean, import("@sinclair/typebox").TNull]>;
5
- export declare const jsonSchema: JsonSchema;
6
- export declare const bufferSchema: BufferSchema;
7
- export declare function mapEnumValues(values: string[]): {
8
- [k: string]: string;
9
- };
10
- export declare function columnToSchema(column: Column, t: typeof typebox): TSchema;
@@ -1,31 +0,0 @@
1
- import type * as t from '@sinclair/typebox';
2
- import type { Assume, Column, ColumnTypeData, ExtractColumnTypeData } from 'drizzle-orm';
3
- import type { bigintStringModeSchema, unsignedBigintStringModeSchema } from "./column.cjs";
4
- import type { BufferSchema, JsonSchema } from "./utils.cjs";
5
- export type EnumValuesToEnum<TEnumValues extends [string, ...string[]]> = {
6
- [K in TEnumValues[number]]: K;
7
- };
8
- export interface GenericSchema<T> extends t.TSchema {
9
- static: T;
10
- }
11
- type GetArrayDepth<T, Depth extends number = 0> = Depth extends 5 ? 5 : T extends readonly (infer U)[] ? GetArrayDepth<U, [1, 2, 3, 4, 5][Depth]> : Depth;
12
- type WrapInTArray<TSchema extends t.TSchema, TDepth extends number> = TDepth extends 0 ? TSchema : TDepth extends 1 ? t.TArray<TSchema> : TDepth extends 2 ? t.TArray<t.TArray<TSchema>> : TDepth extends 3 ? t.TArray<t.TArray<t.TArray<TSchema>>> : TDepth extends 4 ? t.TArray<t.TArray<t.TArray<t.TArray<TSchema>>>> : TDepth extends 5 ? t.TArray<t.TArray<t.TArray<t.TArray<t.TArray<TSchema>>>>> : t.TArray<t.TAny>;
13
- type IsPgArrayColumn<TColumn extends Column, TType extends ColumnTypeData> = TType['type'] extends 'array' ? false : GetArrayDepth<TColumn['_']['data']> extends 0 ? false : true;
14
- export type GetTypeboxType<TColumn extends Column, TType extends ColumnTypeData = ExtractColumnTypeData<TColumn['_']['dataType']>> = IsPgArrayColumn<TColumn, TType> extends true ? WrapInTArray<GetBaseTypeboxType<TColumn, TType>, GetArrayDepth<TColumn['_']['data']>> : GetBaseTypeboxType<TColumn, TType>;
15
- type GetBaseTypeboxType<TColumn extends Column, TType extends ColumnTypeData = ExtractColumnTypeData<TColumn['_']['dataType']>> = TType['type'] extends 'array' ? TType['constraint'] extends 'basecolumn' ? t.TArray<GetTypeboxType<Assume<TColumn['_'], {
16
- baseColumn: Column;
17
- }>['baseColumn']>> : TType['constraint'] extends 'geometry' | 'point' ? t.TTuple<[t.TNumber, t.TNumber]> : TType['constraint'] extends 'line' ? t.TTuple<[t.TNumber, t.TNumber, t.TNumber]> : TType['constraint'] extends 'vector' | 'halfvector' ? t.TArray<t.TNumber> : TType['constraint'] extends 'int64vector' ? t.TArray<t.TBigInt> : t.TArray<t.TAny> : TType['type'] extends 'object' ? TType['constraint'] extends 'geometry' | 'point' ? t.TObject<{
18
- x: t.TNumber;
19
- y: t.TNumber;
20
- }> : TType['constraint'] extends 'line' ? t.TObject<{
21
- a: t.TNumber;
22
- b: t.TNumber;
23
- c: t.TNumber;
24
- }> : TType['constraint'] extends 'date' ? t.TDate : TType['constraint'] extends 'buffer' ? BufferSchema : TType['constraint'] extends 'json' ? TColumn['_']['data'] extends Record<string, any> ? GenericSchema<TColumn['_']['data']> : JsonSchema : t.TObject : TType['type'] extends 'custom' ? t.TAny : TType['type'] extends 'number' ? TType['constraint'] extends 'int8' | 'int16' | 'int24' | 'int32' | 'int53' | 'uint8' | 'uint16' | 'uint24' | 'uint32' | 'uint53' | 'year' ? t.TInteger : t.TNumber : TType['type'] extends 'bigint' ? t.TBigInt : TType['type'] extends 'boolean' ? t.TBoolean : TType['type'] extends 'string' ? TType['constraint'] extends 'binary' | 'varbinary' ? t.TRegExp : TType['constraint'] extends 'int64' ? typeof bigintStringModeSchema : TType['constraint'] extends 'uint64' ? typeof unsignedBigintStringModeSchema : TType['constraint'] extends 'enum' ? t.TEnum<{
25
- [K in Assume<TColumn['_']['enumValues'], string[]>[number]]: K;
26
- }> : t.TString : t.TAny;
27
- type HandleSelectColumn<TSchema extends t.TSchema, TColumn extends Column> = TColumn['_']['notNull'] extends true ? TSchema : t.Union<[TSchema, t.TNull]>;
28
- type HandleInsertColumn<TSchema extends t.TSchema, TColumn extends Column> = TColumn['_']['notNull'] extends true ? TColumn['_']['hasDefault'] extends true ? t.TOptional<TSchema> : TSchema : t.TOptional<t.Union<[TSchema, t.TNull]>>;
29
- type HandleUpdateColumn<TSchema extends t.TSchema, TColumn extends Column> = TColumn['_']['notNull'] extends true ? t.TOptional<TSchema> : t.TOptional<t.Union<[TSchema, t.TNull]>>;
30
- export type HandleColumn<TType extends 'select' | 'insert' | 'update', TColumn extends Column> = TType extends 'select' ? HandleSelectColumn<GetTypeboxType<TColumn>, TColumn> : TType extends 'insert' ? HandleInsertColumn<GetTypeboxType<TColumn>, TColumn> : TType extends 'update' ? HandleUpdateColumn<GetTypeboxType<TColumn>, TColumn> : GetTypeboxType<TColumn>;
31
- export {};
@@ -1,31 +0,0 @@
1
- import type * as t from '@sinclair/typebox';
2
- import type { Assume, Column, ColumnTypeData, ExtractColumnTypeData } from 'drizzle-orm';
3
- import type { bigintStringModeSchema, unsignedBigintStringModeSchema } from "./column.mjs";
4
- import type { BufferSchema, JsonSchema } from "./utils.mjs";
5
- export type EnumValuesToEnum<TEnumValues extends [string, ...string[]]> = {
6
- [K in TEnumValues[number]]: K;
7
- };
8
- export interface GenericSchema<T> extends t.TSchema {
9
- static: T;
10
- }
11
- type GetArrayDepth<T, Depth extends number = 0> = Depth extends 5 ? 5 : T extends readonly (infer U)[] ? GetArrayDepth<U, [1, 2, 3, 4, 5][Depth]> : Depth;
12
- type WrapInTArray<TSchema extends t.TSchema, TDepth extends number> = TDepth extends 0 ? TSchema : TDepth extends 1 ? t.TArray<TSchema> : TDepth extends 2 ? t.TArray<t.TArray<TSchema>> : TDepth extends 3 ? t.TArray<t.TArray<t.TArray<TSchema>>> : TDepth extends 4 ? t.TArray<t.TArray<t.TArray<t.TArray<TSchema>>>> : TDepth extends 5 ? t.TArray<t.TArray<t.TArray<t.TArray<t.TArray<TSchema>>>>> : t.TArray<t.TAny>;
13
- type IsPgArrayColumn<TColumn extends Column, TType extends ColumnTypeData> = TType['type'] extends 'array' ? false : GetArrayDepth<TColumn['_']['data']> extends 0 ? false : true;
14
- export type GetTypeboxType<TColumn extends Column, TType extends ColumnTypeData = ExtractColumnTypeData<TColumn['_']['dataType']>> = IsPgArrayColumn<TColumn, TType> extends true ? WrapInTArray<GetBaseTypeboxType<TColumn, TType>, GetArrayDepth<TColumn['_']['data']>> : GetBaseTypeboxType<TColumn, TType>;
15
- type GetBaseTypeboxType<TColumn extends Column, TType extends ColumnTypeData = ExtractColumnTypeData<TColumn['_']['dataType']>> = TType['type'] extends 'array' ? TType['constraint'] extends 'basecolumn' ? t.TArray<GetTypeboxType<Assume<TColumn['_'], {
16
- baseColumn: Column;
17
- }>['baseColumn']>> : TType['constraint'] extends 'geometry' | 'point' ? t.TTuple<[t.TNumber, t.TNumber]> : TType['constraint'] extends 'line' ? t.TTuple<[t.TNumber, t.TNumber, t.TNumber]> : TType['constraint'] extends 'vector' | 'halfvector' ? t.TArray<t.TNumber> : TType['constraint'] extends 'int64vector' ? t.TArray<t.TBigInt> : t.TArray<t.TAny> : TType['type'] extends 'object' ? TType['constraint'] extends 'geometry' | 'point' ? t.TObject<{
18
- x: t.TNumber;
19
- y: t.TNumber;
20
- }> : TType['constraint'] extends 'line' ? t.TObject<{
21
- a: t.TNumber;
22
- b: t.TNumber;
23
- c: t.TNumber;
24
- }> : TType['constraint'] extends 'date' ? t.TDate : TType['constraint'] extends 'buffer' ? BufferSchema : TType['constraint'] extends 'json' ? TColumn['_']['data'] extends Record<string, any> ? GenericSchema<TColumn['_']['data']> : JsonSchema : t.TObject : TType['type'] extends 'custom' ? t.TAny : TType['type'] extends 'number' ? TType['constraint'] extends 'int8' | 'int16' | 'int24' | 'int32' | 'int53' | 'uint8' | 'uint16' | 'uint24' | 'uint32' | 'uint53' | 'year' ? t.TInteger : t.TNumber : TType['type'] extends 'bigint' ? t.TBigInt : TType['type'] extends 'boolean' ? t.TBoolean : TType['type'] extends 'string' ? TType['constraint'] extends 'binary' | 'varbinary' ? t.TRegExp : TType['constraint'] extends 'int64' ? typeof bigintStringModeSchema : TType['constraint'] extends 'uint64' ? typeof unsignedBigintStringModeSchema : TType['constraint'] extends 'enum' ? t.TEnum<{
25
- [K in Assume<TColumn['_']['enumValues'], string[]>[number]]: K;
26
- }> : t.TString : t.TAny;
27
- type HandleSelectColumn<TSchema extends t.TSchema, TColumn extends Column> = TColumn['_']['notNull'] extends true ? TSchema : t.Union<[TSchema, t.TNull]>;
28
- type HandleInsertColumn<TSchema extends t.TSchema, TColumn extends Column> = TColumn['_']['notNull'] extends true ? TColumn['_']['hasDefault'] extends true ? t.TOptional<TSchema> : TSchema : t.TOptional<t.Union<[TSchema, t.TNull]>>;
29
- type HandleUpdateColumn<TSchema extends t.TSchema, TColumn extends Column> = TColumn['_']['notNull'] extends true ? t.TOptional<TSchema> : t.TOptional<t.Union<[TSchema, t.TNull]>>;
30
- export type HandleColumn<TType extends 'select' | 'insert' | 'update', TColumn extends Column> = TType extends 'select' ? HandleSelectColumn<GetTypeboxType<TColumn>, TColumn> : TType extends 'insert' ? HandleInsertColumn<GetTypeboxType<TColumn>, TColumn> : TType extends 'update' ? HandleUpdateColumn<GetTypeboxType<TColumn>, TColumn> : GetTypeboxType<TColumn>;
31
- export {};
package/column.types.d.ts DELETED
@@ -1,31 +0,0 @@
1
- import type * as t from '@sinclair/typebox';
2
- import type { Assume, Column, ColumnTypeData, ExtractColumnTypeData } from 'drizzle-orm';
3
- import type { bigintStringModeSchema, unsignedBigintStringModeSchema } from './column.js';
4
- import type { BufferSchema, JsonSchema } from './utils.js';
5
- export type EnumValuesToEnum<TEnumValues extends [string, ...string[]]> = {
6
- [K in TEnumValues[number]]: K;
7
- };
8
- export interface GenericSchema<T> extends t.TSchema {
9
- static: T;
10
- }
11
- type GetArrayDepth<T, Depth extends number = 0> = Depth extends 5 ? 5 : T extends readonly (infer U)[] ? GetArrayDepth<U, [1, 2, 3, 4, 5][Depth]> : Depth;
12
- type WrapInTArray<TSchema extends t.TSchema, TDepth extends number> = TDepth extends 0 ? TSchema : TDepth extends 1 ? t.TArray<TSchema> : TDepth extends 2 ? t.TArray<t.TArray<TSchema>> : TDepth extends 3 ? t.TArray<t.TArray<t.TArray<TSchema>>> : TDepth extends 4 ? t.TArray<t.TArray<t.TArray<t.TArray<TSchema>>>> : TDepth extends 5 ? t.TArray<t.TArray<t.TArray<t.TArray<t.TArray<TSchema>>>>> : t.TArray<t.TAny>;
13
- type IsPgArrayColumn<TColumn extends Column, TType extends ColumnTypeData> = TType['type'] extends 'array' ? false : GetArrayDepth<TColumn['_']['data']> extends 0 ? false : true;
14
- export type GetTypeboxType<TColumn extends Column, TType extends ColumnTypeData = ExtractColumnTypeData<TColumn['_']['dataType']>> = IsPgArrayColumn<TColumn, TType> extends true ? WrapInTArray<GetBaseTypeboxType<TColumn, TType>, GetArrayDepth<TColumn['_']['data']>> : GetBaseTypeboxType<TColumn, TType>;
15
- type GetBaseTypeboxType<TColumn extends Column, TType extends ColumnTypeData = ExtractColumnTypeData<TColumn['_']['dataType']>> = TType['type'] extends 'array' ? TType['constraint'] extends 'basecolumn' ? t.TArray<GetTypeboxType<Assume<TColumn['_'], {
16
- baseColumn: Column;
17
- }>['baseColumn']>> : TType['constraint'] extends 'geometry' | 'point' ? t.TTuple<[t.TNumber, t.TNumber]> : TType['constraint'] extends 'line' ? t.TTuple<[t.TNumber, t.TNumber, t.TNumber]> : TType['constraint'] extends 'vector' | 'halfvector' ? t.TArray<t.TNumber> : TType['constraint'] extends 'int64vector' ? t.TArray<t.TBigInt> : t.TArray<t.TAny> : TType['type'] extends 'object' ? TType['constraint'] extends 'geometry' | 'point' ? t.TObject<{
18
- x: t.TNumber;
19
- y: t.TNumber;
20
- }> : TType['constraint'] extends 'line' ? t.TObject<{
21
- a: t.TNumber;
22
- b: t.TNumber;
23
- c: t.TNumber;
24
- }> : TType['constraint'] extends 'date' ? t.TDate : TType['constraint'] extends 'buffer' ? BufferSchema : TType['constraint'] extends 'json' ? TColumn['_']['data'] extends Record<string, any> ? GenericSchema<TColumn['_']['data']> : JsonSchema : t.TObject : TType['type'] extends 'custom' ? t.TAny : TType['type'] extends 'number' ? TType['constraint'] extends 'int8' | 'int16' | 'int24' | 'int32' | 'int53' | 'uint8' | 'uint16' | 'uint24' | 'uint32' | 'uint53' | 'year' ? t.TInteger : t.TNumber : TType['type'] extends 'bigint' ? t.TBigInt : TType['type'] extends 'boolean' ? t.TBoolean : TType['type'] extends 'string' ? TType['constraint'] extends 'binary' | 'varbinary' ? t.TRegExp : TType['constraint'] extends 'int64' ? typeof bigintStringModeSchema : TType['constraint'] extends 'uint64' ? typeof unsignedBigintStringModeSchema : TType['constraint'] extends 'enum' ? t.TEnum<{
25
- [K in Assume<TColumn['_']['enumValues'], string[]>[number]]: K;
26
- }> : t.TString : t.TAny;
27
- type HandleSelectColumn<TSchema extends t.TSchema, TColumn extends Column> = TColumn['_']['notNull'] extends true ? TSchema : t.Union<[TSchema, t.TNull]>;
28
- type HandleInsertColumn<TSchema extends t.TSchema, TColumn extends Column> = TColumn['_']['notNull'] extends true ? TColumn['_']['hasDefault'] extends true ? t.TOptional<TSchema> : TSchema : t.TOptional<t.Union<[TSchema, t.TNull]>>;
29
- type HandleUpdateColumn<TSchema extends t.TSchema, TColumn extends Column> = TColumn['_']['notNull'] extends true ? t.TOptional<TSchema> : t.TOptional<t.Union<[TSchema, t.TNull]>>;
30
- export type HandleColumn<TType extends 'select' | 'insert' | 'update', TColumn extends Column> = TType extends 'select' ? HandleSelectColumn<GetTypeboxType<TColumn>, TColumn> : TType extends 'insert' ? HandleInsertColumn<GetTypeboxType<TColumn>, TColumn> : TType extends 'update' ? HandleUpdateColumn<GetTypeboxType<TColumn>, TColumn> : GetTypeboxType<TColumn>;
31
- 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,18 +0,0 @@
1
- import type { TSchema } from '@sinclair/typebox';
2
- import type { Table, View } from 'drizzle-orm';
3
- import type { PgEnum } from 'drizzle-orm/pg-core';
4
- import type { Conditions } from "./schema.types.internal.cjs";
5
- import type { CreateInsertSchema, CreateSchemaFactoryOptions, CreateSelectSchema, CreateUpdateSchema } from "./schema.types.cjs";
6
- export declare function getColumns(tableLike: Table | View): import("drizzle-orm").ColumnsSelection;
7
- export declare function handleColumns(columns: Record<string, any>, refinements: Record<string, any>, conditions: Conditions, factory?: CreateSchemaFactoryOptions): TSchema;
8
- export declare function handleEnum(enum_: PgEnum<any>, factory?: CreateSchemaFactoryOptions): import("@sinclair/typebox").TEnum<{
9
- [k: string]: string;
10
- }>;
11
- export declare const createSelectSchema: CreateSelectSchema;
12
- export declare const createInsertSchema: CreateInsertSchema;
13
- export declare const createUpdateSchema: CreateUpdateSchema;
14
- export declare function createSchemaFactory(options?: CreateSchemaFactoryOptions): {
15
- createSelectSchema: CreateSelectSchema;
16
- createInsertSchema: CreateInsertSchema;
17
- createUpdateSchema: CreateUpdateSchema;
18
- };
package/schema.d.mts DELETED
@@ -1,18 +0,0 @@
1
- import type { TSchema } from '@sinclair/typebox';
2
- import type { Table, View } from 'drizzle-orm';
3
- import type { PgEnum } from 'drizzle-orm/pg-core';
4
- import type { Conditions } from "./schema.types.internal.mjs";
5
- import type { CreateInsertSchema, CreateSchemaFactoryOptions, CreateSelectSchema, CreateUpdateSchema } from "./schema.types.mjs";
6
- export declare function getColumns(tableLike: Table | View): import("drizzle-orm").ColumnsSelection;
7
- export declare function handleColumns(columns: Record<string, any>, refinements: Record<string, any>, conditions: Conditions, factory?: CreateSchemaFactoryOptions): TSchema;
8
- export declare function handleEnum(enum_: PgEnum<any>, factory?: CreateSchemaFactoryOptions): import("@sinclair/typebox").TEnum<{
9
- [k: string]: string;
10
- }>;
11
- export declare const createSelectSchema: CreateSelectSchema;
12
- export declare const createInsertSchema: CreateInsertSchema;
13
- export declare const createUpdateSchema: CreateUpdateSchema;
14
- export declare function createSchemaFactory(options?: CreateSchemaFactoryOptions): {
15
- createSelectSchema: CreateSelectSchema;
16
- createInsertSchema: CreateInsertSchema;
17
- createUpdateSchema: CreateUpdateSchema;
18
- };
package/schema.d.ts DELETED
@@ -1,18 +0,0 @@
1
- import type { TSchema } from '@sinclair/typebox';
2
- import type { Table, View } from 'drizzle-orm';
3
- import type { PgEnum } from 'drizzle-orm/pg-core';
4
- import type { Conditions } from './schema.types.internal.js';
5
- import type { CreateInsertSchema, CreateSchemaFactoryOptions, CreateSelectSchema, CreateUpdateSchema } from './schema.types.js';
6
- export declare function getColumns(tableLike: Table | View): import("drizzle-orm").ColumnsSelection;
7
- export declare function handleColumns(columns: Record<string, any>, refinements: Record<string, any>, conditions: Conditions, factory?: CreateSchemaFactoryOptions): TSchema;
8
- export declare function handleEnum(enum_: PgEnum<any>, factory?: CreateSchemaFactoryOptions): import("@sinclair/typebox").TEnum<{
9
- [k: string]: string;
10
- }>;
11
- export declare const createSelectSchema: CreateSelectSchema;
12
- export declare const createInsertSchema: CreateInsertSchema;
13
- export declare const createUpdateSchema: CreateUpdateSchema;
14
- export declare function createSchemaFactory(options?: CreateSchemaFactoryOptions): {
15
- createSelectSchema: CreateSelectSchema;
16
- createInsertSchema: CreateInsertSchema;
17
- createUpdateSchema: CreateUpdateSchema;
18
- };
@@ -1,24 +0,0 @@
1
- import type * as t from '@sinclair/typebox';
2
- import type { InferInsertModel, InferSelectModel, Table, View } from 'drizzle-orm';
3
- import type { CockroachEnum } from 'drizzle-orm/cockroach-core';
4
- import type { PgEnum } from 'drizzle-orm/pg-core';
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): t.TEnum<EnumValuesToEnum<TEnum['enumValues']>>;
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
- }
22
- export interface CreateSchemaFactoryOptions {
23
- typeboxInstance?: any;
24
- }
@@ -1,24 +0,0 @@
1
- import type * as t from '@sinclair/typebox';
2
- import type { InferInsertModel, InferSelectModel, Table, View } from 'drizzle-orm';
3
- import type { CockroachEnum } from 'drizzle-orm/cockroach-core';
4
- import type { PgEnum } from 'drizzle-orm/pg-core';
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): t.TEnum<EnumValuesToEnum<TEnum['enumValues']>>;
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
- }
22
- export interface CreateSchemaFactoryOptions {
23
- typeboxInstance?: any;
24
- }
package/schema.types.d.ts DELETED
@@ -1,24 +0,0 @@
1
- import type * as t from '@sinclair/typebox';
2
- import type { InferInsertModel, InferSelectModel, Table, View } from 'drizzle-orm';
3
- import type { CockroachEnum } from 'drizzle-orm/cockroach-core';
4
- import type { PgEnum } from 'drizzle-orm/pg-core';
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): t.TEnum<EnumValuesToEnum<TEnum['enumValues']>>;
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
- }
22
- export interface CreateSchemaFactoryOptions {
23
- typeboxInstance?: any;
24
- }
@@ -1,22 +0,0 @@
1
- import type * as t from '@sinclair/typebox';
2
- import type { Assume, Column, DrizzleTypeError, SelectedFieldsFlat, Simplify, Table, View } from 'drizzle-orm';
3
- import type { GetTypeboxType, 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 t.TSchema ? ((schema: T) => t.TSchema) | t.TSchema : 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<GetTypeboxType<TColumns[K]>> : BuildRefine<GetSelection<TColumns[K]>>;
13
- };
14
- type HandleRefinement<TType extends 'select' | 'insert' | 'update', TRefinement, TColumn extends Column> = TRefinement extends (schema: any) => t.TSchema ? (TColumn['_']['notNull'] extends true ? ReturnType<TRefinement> : t.TUnion<[ReturnType<TRefinement>, t.TNull]>) extends infer TSchema ? TType extends 'update' ? t.TOptional<Assume<TSchema, t.TSchema>> : TSchema : t.TSchema : TRefinement;
15
- type IsRefinementDefined<TRefinements extends Record<string | symbol | number, any> | undefined, TKey extends string | symbol | number> = TRefinements extends object ? TRefinements[TKey] extends t.TSchema | ((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> = t.TObject<Simplify<{
17
- [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, K> extends true ? Assume<HandleRefinement<TType, TRefinements[K & keyof TRefinements], TColumn>, t.TSchema> : 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> : t.TAny;
18
- }>>;
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 t.TSchema ? TRefinement[K] : TRefinement[K] extends Record<string, t.TSchema> ? 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 * as t from '@sinclair/typebox';
2
- import type { Assume, Column, DrizzleTypeError, SelectedFieldsFlat, Simplify, Table, View } from 'drizzle-orm';
3
- import type { GetTypeboxType, 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 t.TSchema ? ((schema: T) => t.TSchema) | t.TSchema : 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<GetTypeboxType<TColumns[K]>> : BuildRefine<GetSelection<TColumns[K]>>;
13
- };
14
- type HandleRefinement<TType extends 'select' | 'insert' | 'update', TRefinement, TColumn extends Column> = TRefinement extends (schema: any) => t.TSchema ? (TColumn['_']['notNull'] extends true ? ReturnType<TRefinement> : t.TUnion<[ReturnType<TRefinement>, t.TNull]>) extends infer TSchema ? TType extends 'update' ? t.TOptional<Assume<TSchema, t.TSchema>> : TSchema : t.TSchema : TRefinement;
15
- type IsRefinementDefined<TRefinements extends Record<string | symbol | number, any> | undefined, TKey extends string | symbol | number> = TRefinements extends object ? TRefinements[TKey] extends t.TSchema | ((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> = t.TObject<Simplify<{
17
- [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, K> extends true ? Assume<HandleRefinement<TType, TRefinements[K & keyof TRefinements], TColumn>, t.TSchema> : 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> : t.TAny;
18
- }>>;
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 t.TSchema ? TRefinement[K] : TRefinement[K] extends Record<string, t.TSchema> ? 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 * as t from '@sinclair/typebox';
2
- import type { Assume, Column, DrizzleTypeError, SelectedFieldsFlat, Simplify, Table, View } from 'drizzle-orm';
3
- import type { GetTypeboxType, 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 t.TSchema ? ((schema: T) => t.TSchema) | t.TSchema : 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<GetTypeboxType<TColumns[K]>> : BuildRefine<GetSelection<TColumns[K]>>;
13
- };
14
- type HandleRefinement<TType extends 'select' | 'insert' | 'update', TRefinement, TColumn extends Column> = TRefinement extends (schema: any) => t.TSchema ? (TColumn['_']['notNull'] extends true ? ReturnType<TRefinement> : t.TUnion<[ReturnType<TRefinement>, t.TNull]>) extends infer TSchema ? TType extends 'update' ? t.TOptional<Assume<TSchema, t.TSchema>> : TSchema : t.TSchema : TRefinement;
15
- type IsRefinementDefined<TRefinements extends Record<string | symbol | number, any> | undefined, TKey extends string | symbol | number> = TRefinements extends object ? TRefinements[TKey] extends t.TSchema | ((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> = t.TObject<Simplify<{
17
- [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, K> extends true ? Assume<HandleRefinement<TType, TRefinements[K & keyof TRefinements], TColumn>, t.TSchema> : 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> : t.TAny;
18
- }>>;
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 t.TSchema ? TRefinement[K] : TRefinement[K] extends Record<string, t.TSchema> ? NoUnknownKeys<TRefinement[K], TCompare[K]> : TRefinement[K] : DrizzleTypeError<`Found unknown key in refinement: "${K & string}"`>;
21
- };
22
- export {};
package/utils.d.cts DELETED
@@ -1,39 +0,0 @@
1
- import type { Kind, Static, TSchema } from '@sinclair/typebox';
2
- import type { Column, SelectedFieldsFlat, Table, View } from 'drizzle-orm';
3
- import type { PgEnum } from 'drizzle-orm/pg-core';
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 = Static<typeof literalSchema>;
11
- export type Json = Literal | {
12
- [key: string]: any;
13
- } | any[];
14
- export interface JsonSchema extends TSchema {
15
- [Kind]: 'Union';
16
- static: Json;
17
- anyOf: Json;
18
- }
19
- export interface BufferSchema extends TSchema {
20
- [Kind]: 'Buffer';
21
- static: Buffer;
22
- type: 'buffer';
23
- }
24
- export interface BigIntStringModeSchema extends TSchema {
25
- [Kind]: 'BigIntStringMode';
26
- static: string;
27
- type: 'string';
28
- }
29
- export type IsNever<T> = [T] extends [never] ? true : false;
30
- export type IsEnumDefined<TEnum extends string[] | undefined> = [string, ...string[]] extends TEnum ? false : undefined extends TEnum ? false : true;
31
- export type ColumnIsGeneratedAlwaysAs<TColumn> = TColumn extends Column ? TColumn['_']['identity'] extends 'always' ? true : TColumn['_'] extends {
32
- generated: undefined;
33
- } ? false : TColumn['_'] extends {
34
- generated: {
35
- type: 'byDefault';
36
- };
37
- } ? false : true : false;
38
- export type GetSelection<T extends SelectedFieldsFlat<Column> | Table | View> = T extends Table ? T['_']['columns'] : T extends View ? T['_']['selectedFields'] : T;
39
- export {};