drizzle-arktype 0.1.2 → 0.1.3-03a5cdc

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/column.d.cts CHANGED
@@ -1,6 +1,6 @@
1
1
  import { type Type } from 'arktype';
2
- import type { Column } from 'drizzle-orm';
3
- export declare const literalSchema: import("arktype/internal/methods/base.ts").BaseType<string | number | boolean | null, {}>;
4
- export declare const jsonSchema: import("arktype/internal/methods/base.ts").BaseType<string | number | boolean | any[] | Record<string, any> | null, {}>;
5
- export declare const bufferSchema: import("arktype/internal/methods/object.ts").ObjectType<Buffer, {}>;
2
+ import { type Column } from 'drizzle-orm';
3
+ export declare const literalSchema: import("arktype").BaseType<string | number | boolean | null, {}>;
4
+ export declare const jsonSchema: import("arktype").BaseType<string | number | boolean | any[] | Record<string, any> | null, {}>;
5
+ export declare const bufferSchema: import("arktype/internal/methods/object.ts").ObjectType<Buffer<ArrayBufferLike>, {}>;
6
6
  export declare function columnToSchema(column: Column): Type;
package/column.d.mts CHANGED
@@ -1,6 +1,6 @@
1
1
  import { type Type } from 'arktype';
2
- import type { Column } from 'drizzle-orm';
3
- export declare const literalSchema: import("arktype/internal/methods/base.ts").BaseType<string | number | boolean | null, {}>;
4
- export declare const jsonSchema: import("arktype/internal/methods/base.ts").BaseType<string | number | boolean | any[] | Record<string, any> | null, {}>;
5
- export declare const bufferSchema: import("arktype/internal/methods/object.ts").ObjectType<Buffer, {}>;
2
+ import { type Column } from 'drizzle-orm';
3
+ export declare const literalSchema: import("arktype").BaseType<string | number | boolean | null, {}>;
4
+ export declare const jsonSchema: import("arktype").BaseType<string | number | boolean | any[] | Record<string, any> | null, {}>;
5
+ export declare const bufferSchema: import("arktype/internal/methods/object.ts").ObjectType<Buffer<ArrayBufferLike>, {}>;
6
6
  export declare function columnToSchema(column: Column): Type;
package/column.d.ts CHANGED
@@ -1,6 +1,6 @@
1
1
  import { type Type } from 'arktype';
2
- import type { Column } from 'drizzle-orm';
3
- export declare const literalSchema: import("arktype/internal/methods/base.ts").BaseType<string | number | boolean | null, {}>;
4
- export declare const jsonSchema: import("arktype/internal/methods/base.ts").BaseType<string | number | boolean | any[] | Record<string, any> | null, {}>;
5
- export declare const bufferSchema: import("arktype/internal/methods/object.ts").ObjectType<Buffer, {}>;
2
+ import { type Column } from 'drizzle-orm';
3
+ export declare const literalSchema: import("arktype").BaseType<string | number | boolean | null, {}>;
4
+ export declare const jsonSchema: import("arktype").BaseType<string | number | boolean | any[] | Record<string, any> | null, {}>;
5
+ export declare const bufferSchema: import("arktype/internal/methods/object.ts").ObjectType<Buffer<ArrayBufferLike>, {}>;
6
6
  export declare function columnToSchema(column: Column): Type;
@@ -1,14 +1,11 @@
1
- import { Type, type } from 'arktype';
2
- import type { Assume, Column } from 'drizzle-orm';
3
- import type { ColumnIsGeneratedAlwaysAs, IsEnumDefined, IsUnknown, Json } from "./utils.cjs";
4
- export type ArktypeNullable<TSchema> = Type<type.infer<TSchema> | null, {}>;
5
- export type ArktypeOptional<TSchema> = [Type<type.infer<TSchema>, {}>, '?'];
6
- export type GetEnumValuesFromColumn<TColumn extends Column> = TColumn['_'] extends {
7
- enumValues: [string, ...string[]];
8
- } ? TColumn['_']['enumValues'] : undefined;
9
- export type GetArktypeType<TData, TColumnType extends string, TEnumValues extends [string, ...string[]] | undefined> = IsEnumDefined<TEnumValues> extends true ? Type<Assume<TEnumValues, any[]>[number]> : TColumnType extends 'PgJson' | 'PgJsonb' | 'MySqlJson' | 'SingleStoreJson' | 'SQLiteTextJson' | 'SQLiteBlobJson' ? IsUnknown<TData> extends true ? Type<Json> : Type<TData> : Type<TData>;
1
+ import type { Type, type } from 'arktype';
2
+ import type { Column, ColumnTypeData, ExtractColumnTypeData } from 'drizzle-orm';
3
+ import type { Json } from "./utils.cjs";
4
+ export type ArktypeNullable<TSchema> = Type<type.infer<TSchema> | null>;
5
+ export type ArktypeOptional<TSchema> = [Type<type.infer<TSchema>>, '?'];
6
+ export type GetArktypeType<TColumn extends Column, TType extends ColumnTypeData = ExtractColumnTypeData<TColumn['_']['dataType']>> = TType['constraint'] extends 'json' ? unknown extends TColumn['_']['data'] ? Type<Json> : Type<TColumn['_']['data']> : TType['type'] extends 'custom' ? Type<any> : Type<TColumn['_']['data']>;
10
7
  type HandleSelectColumn<TSchema, TColumn extends Column> = TColumn['_']['notNull'] extends true ? TSchema : ArktypeNullable<TSchema>;
11
- type HandleInsertColumn<TSchema, TColumn extends Column> = ColumnIsGeneratedAlwaysAs<TColumn> extends true ? never : TColumn['_']['notNull'] extends true ? TColumn['_']['hasDefault'] extends true ? ArktypeOptional<TSchema> : TSchema : ArktypeOptional<ArktypeNullable<TSchema>>;
12
- type HandleUpdateColumn<TSchema, TColumn extends Column> = ColumnIsGeneratedAlwaysAs<TColumn> extends true ? never : TColumn['_']['notNull'] extends true ? ArktypeOptional<TSchema> : ArktypeOptional<ArktypeNullable<TSchema>>;
13
- export type HandleColumn<TType extends 'select' | 'insert' | 'update', TColumn extends Column> = GetArktypeType<TColumn['_']['data'], TColumn['_']['columnType'], GetEnumValuesFromColumn<TColumn>> extends infer TSchema ? TType extends 'select' ? HandleSelectColumn<TSchema, TColumn> : TType extends 'insert' ? HandleInsertColumn<TSchema, TColumn> : TType extends 'update' ? HandleUpdateColumn<TSchema, TColumn> : TSchema : Type;
8
+ type HandleInsertColumn<TSchema, TColumn extends Column> = TColumn['_']['notNull'] extends true ? TColumn['_']['hasDefault'] extends true ? ArktypeOptional<TSchema> : TSchema : ArktypeOptional<ArktypeNullable<TSchema>>;
9
+ type HandleUpdateColumn<TSchema, TColumn extends Column> = TColumn['_']['notNull'] extends true ? ArktypeOptional<TSchema> : ArktypeOptional<ArktypeNullable<TSchema>>;
10
+ export type HandleColumn<TType extends 'select' | 'insert' | 'update', TColumn extends Column> = TType extends 'select' ? HandleSelectColumn<GetArktypeType<TColumn>, TColumn> : TType extends 'insert' ? HandleInsertColumn<GetArktypeType<TColumn>, TColumn> : TType extends 'update' ? HandleUpdateColumn<GetArktypeType<TColumn>, TColumn> : GetArktypeType<TColumn>;
14
11
  export {};
@@ -1,14 +1,11 @@
1
- import { Type, type } from 'arktype';
2
- import type { Assume, Column } from 'drizzle-orm';
3
- import type { ColumnIsGeneratedAlwaysAs, IsEnumDefined, IsUnknown, Json } from "./utils.mjs";
4
- export type ArktypeNullable<TSchema> = Type<type.infer<TSchema> | null, {}>;
5
- export type ArktypeOptional<TSchema> = [Type<type.infer<TSchema>, {}>, '?'];
6
- export type GetEnumValuesFromColumn<TColumn extends Column> = TColumn['_'] extends {
7
- enumValues: [string, ...string[]];
8
- } ? TColumn['_']['enumValues'] : undefined;
9
- export type GetArktypeType<TData, TColumnType extends string, TEnumValues extends [string, ...string[]] | undefined> = IsEnumDefined<TEnumValues> extends true ? Type<Assume<TEnumValues, any[]>[number]> : TColumnType extends 'PgJson' | 'PgJsonb' | 'MySqlJson' | 'SingleStoreJson' | 'SQLiteTextJson' | 'SQLiteBlobJson' ? IsUnknown<TData> extends true ? Type<Json> : Type<TData> : Type<TData>;
1
+ import type { Type, type } from 'arktype';
2
+ import type { Column, ColumnTypeData, ExtractColumnTypeData } from 'drizzle-orm';
3
+ import type { Json } from "./utils.mjs";
4
+ export type ArktypeNullable<TSchema> = Type<type.infer<TSchema> | null>;
5
+ export type ArktypeOptional<TSchema> = [Type<type.infer<TSchema>>, '?'];
6
+ export type GetArktypeType<TColumn extends Column, TType extends ColumnTypeData = ExtractColumnTypeData<TColumn['_']['dataType']>> = TType['constraint'] extends 'json' ? unknown extends TColumn['_']['data'] ? Type<Json> : Type<TColumn['_']['data']> : TType['type'] extends 'custom' ? Type<any> : Type<TColumn['_']['data']>;
10
7
  type HandleSelectColumn<TSchema, TColumn extends Column> = TColumn['_']['notNull'] extends true ? TSchema : ArktypeNullable<TSchema>;
11
- type HandleInsertColumn<TSchema, TColumn extends Column> = ColumnIsGeneratedAlwaysAs<TColumn> extends true ? never : TColumn['_']['notNull'] extends true ? TColumn['_']['hasDefault'] extends true ? ArktypeOptional<TSchema> : TSchema : ArktypeOptional<ArktypeNullable<TSchema>>;
12
- type HandleUpdateColumn<TSchema, TColumn extends Column> = ColumnIsGeneratedAlwaysAs<TColumn> extends true ? never : TColumn['_']['notNull'] extends true ? ArktypeOptional<TSchema> : ArktypeOptional<ArktypeNullable<TSchema>>;
13
- export type HandleColumn<TType extends 'select' | 'insert' | 'update', TColumn extends Column> = GetArktypeType<TColumn['_']['data'], TColumn['_']['columnType'], GetEnumValuesFromColumn<TColumn>> extends infer TSchema ? TType extends 'select' ? HandleSelectColumn<TSchema, TColumn> : TType extends 'insert' ? HandleInsertColumn<TSchema, TColumn> : TType extends 'update' ? HandleUpdateColumn<TSchema, TColumn> : TSchema : Type;
8
+ type HandleInsertColumn<TSchema, TColumn extends Column> = TColumn['_']['notNull'] extends true ? TColumn['_']['hasDefault'] extends true ? ArktypeOptional<TSchema> : TSchema : ArktypeOptional<ArktypeNullable<TSchema>>;
9
+ type HandleUpdateColumn<TSchema, TColumn extends Column> = TColumn['_']['notNull'] extends true ? ArktypeOptional<TSchema> : ArktypeOptional<ArktypeNullable<TSchema>>;
10
+ export type HandleColumn<TType extends 'select' | 'insert' | 'update', TColumn extends Column> = TType extends 'select' ? HandleSelectColumn<GetArktypeType<TColumn>, TColumn> : TType extends 'insert' ? HandleInsertColumn<GetArktypeType<TColumn>, TColumn> : TType extends 'update' ? HandleUpdateColumn<GetArktypeType<TColumn>, TColumn> : GetArktypeType<TColumn>;
14
11
  export {};
package/column.types.d.ts CHANGED
@@ -1,14 +1,11 @@
1
- import { Type, type } from 'arktype';
2
- import type { Assume, Column } from 'drizzle-orm';
3
- import type { ColumnIsGeneratedAlwaysAs, IsEnumDefined, IsUnknown, Json } from './utils.js';
4
- export type ArktypeNullable<TSchema> = Type<type.infer<TSchema> | null, {}>;
5
- export type ArktypeOptional<TSchema> = [Type<type.infer<TSchema>, {}>, '?'];
6
- export type GetEnumValuesFromColumn<TColumn extends Column> = TColumn['_'] extends {
7
- enumValues: [string, ...string[]];
8
- } ? TColumn['_']['enumValues'] : undefined;
9
- export type GetArktypeType<TData, TColumnType extends string, TEnumValues extends [string, ...string[]] | undefined> = IsEnumDefined<TEnumValues> extends true ? Type<Assume<TEnumValues, any[]>[number]> : TColumnType extends 'PgJson' | 'PgJsonb' | 'MySqlJson' | 'SingleStoreJson' | 'SQLiteTextJson' | 'SQLiteBlobJson' ? IsUnknown<TData> extends true ? Type<Json> : Type<TData> : Type<TData>;
1
+ import type { Type, type } from 'arktype';
2
+ import type { Column, ColumnTypeData, ExtractColumnTypeData } from 'drizzle-orm';
3
+ import type { Json } from './utils.js';
4
+ export type ArktypeNullable<TSchema> = Type<type.infer<TSchema> | null>;
5
+ export type ArktypeOptional<TSchema> = [Type<type.infer<TSchema>>, '?'];
6
+ export type GetArktypeType<TColumn extends Column, TType extends ColumnTypeData = ExtractColumnTypeData<TColumn['_']['dataType']>> = TType['constraint'] extends 'json' ? unknown extends TColumn['_']['data'] ? Type<Json> : Type<TColumn['_']['data']> : TType['type'] extends 'custom' ? Type<any> : Type<TColumn['_']['data']>;
10
7
  type HandleSelectColumn<TSchema, TColumn extends Column> = TColumn['_']['notNull'] extends true ? TSchema : ArktypeNullable<TSchema>;
11
- type HandleInsertColumn<TSchema, TColumn extends Column> = ColumnIsGeneratedAlwaysAs<TColumn> extends true ? never : TColumn['_']['notNull'] extends true ? TColumn['_']['hasDefault'] extends true ? ArktypeOptional<TSchema> : TSchema : ArktypeOptional<ArktypeNullable<TSchema>>;
12
- type HandleUpdateColumn<TSchema, TColumn extends Column> = ColumnIsGeneratedAlwaysAs<TColumn> extends true ? never : TColumn['_']['notNull'] extends true ? ArktypeOptional<TSchema> : ArktypeOptional<ArktypeNullable<TSchema>>;
13
- export type HandleColumn<TType extends 'select' | 'insert' | 'update', TColumn extends Column> = GetArktypeType<TColumn['_']['data'], TColumn['_']['columnType'], GetEnumValuesFromColumn<TColumn>> extends infer TSchema ? TType extends 'select' ? HandleSelectColumn<TSchema, TColumn> : TType extends 'insert' ? HandleInsertColumn<TSchema, TColumn> : TType extends 'update' ? HandleUpdateColumn<TSchema, TColumn> : TSchema : Type;
8
+ type HandleInsertColumn<TSchema, TColumn extends Column> = TColumn['_']['notNull'] extends true ? TColumn['_']['hasDefault'] extends true ? ArktypeOptional<TSchema> : TSchema : ArktypeOptional<ArktypeNullable<TSchema>>;
9
+ type HandleUpdateColumn<TSchema, TColumn extends Column> = TColumn['_']['notNull'] extends true ? ArktypeOptional<TSchema> : ArktypeOptional<ArktypeNullable<TSchema>>;
10
+ export type HandleColumn<TType extends 'select' | 'insert' | 'update', TColumn extends Column> = TType extends 'select' ? HandleSelectColumn<GetArktypeType<TColumn>, TColumn> : TType extends 'insert' ? HandleInsertColumn<GetArktypeType<TColumn>, TColumn> : TType extends 'update' ? HandleUpdateColumn<GetArktypeType<TColumn>, TColumn> : GetArktypeType<TColumn>;
14
11
  export {};
package/index.cjs CHANGED
@@ -24,210 +24,250 @@ const CONSTANTS = {
24
24
  INT64_UNSIGNED_MAX: 18446744073709551615n,
25
25
  };
26
26
 
27
- function isColumnType(column, columnTypes) {
28
- return columnTypes.includes(column.columnType);
29
- }
30
- function isWithEnum(column) {
31
- return 'enumValues' in column && Array.isArray(column.enumValues) && column.enumValues.length > 0;
32
- }
33
- const isPgEnum = isWithEnum;
34
-
35
27
  const literalSchema = arktype.type.string.or(arktype.type.number).or(arktype.type.boolean).or(arktype.type.null);
36
28
  const jsonSchema = literalSchema.or(arktype.type.unknown.as().array()).or(arktype.type.object.as());
37
- const bufferSchema = arktype.type.instanceOf(Buffer); // eslint-disable-line no-instanceof/no-instanceof
29
+ const bufferSchema = arktype.type.unknown.narrow((value) => value instanceof Buffer).as().describe(// eslint-disable-line no-instanceof/no-instanceof
30
+ 'a Buffer instance');
38
31
  function columnToSchema(column) {
39
32
  let schema;
40
- if (isWithEnum(column)) {
41
- schema = column.enumValues.length ? arktype.type.enumerated(...column.enumValues) : arktype.type.string;
42
- }
43
- if (!schema) {
44
- // Handle specific types
45
- if (isColumnType(column, ['PgGeometry', 'PgPointTuple'])) {
46
- schema = arktype.type([arktype.type.number, arktype.type.number]);
33
+ const { type: columnType, constraint } = drizzleOrm.extractExtendedColumnType(column);
34
+ switch (columnType) {
35
+ case 'array': {
36
+ schema = arrayColumnToSchema(column, constraint);
37
+ break;
47
38
  }
48
- else if (isColumnType(column, ['PgGeometryObject', 'PgPointObject'])) {
49
- schema = arktype.type({
50
- x: arktype.type.number,
51
- y: arktype.type.number,
52
- });
39
+ case 'object': {
40
+ schema = objectColumnToSchema(column, constraint);
41
+ break;
53
42
  }
54
- else if (isColumnType(column, ['PgHalfVector', 'PgVector'])) {
55
- schema = column.dimensions
56
- ? arktype.type.number.array().exactlyLength(column.dimensions)
57
- : arktype.type.number.array();
43
+ case 'number': {
44
+ schema = numberColumnToSchema(column, constraint);
45
+ break;
58
46
  }
59
- else if (isColumnType(column, ['PgLine'])) {
60
- schema = arktype.type([arktype.type.number, arktype.type.number, arktype.type.number]);
47
+ case 'bigint': {
48
+ schema = bigintColumnToSchema(column, constraint);
49
+ break;
61
50
  }
62
- else if (isColumnType(column, ['PgLineABC'])) {
63
- schema = arktype.type({
64
- a: arktype.type.number,
65
- b: arktype.type.number,
66
- c: arktype.type.number,
67
- });
68
- } // Handle other types
69
- else if (isColumnType(column, ['PgArray'])) {
70
- const arraySchema = columnToSchema(column.baseColumn).array();
71
- schema = column.size ? arraySchema.exactlyLength(column.size) : arraySchema;
72
- }
73
- else if (column.dataType === 'array') {
74
- schema = arktype.type.unknown.array();
75
- }
76
- else if (column.dataType === 'number') {
77
- schema = numberColumnToSchema(column);
78
- }
79
- else if (column.dataType === 'bigint') {
80
- schema = bigintColumnToSchema(column);
81
- }
82
- else if (column.dataType === 'boolean') {
51
+ case 'boolean': {
83
52
  schema = arktype.type.boolean;
53
+ break;
84
54
  }
85
- else if (column.dataType === 'date') {
86
- schema = arktype.type.Date;
87
- }
88
- else if (column.dataType === 'string') {
89
- schema = stringColumnToSchema(column);
90
- }
91
- else if (column.dataType === 'json') {
92
- schema = jsonSchema;
55
+ case 'string': {
56
+ schema = stringColumnToSchema(column, constraint);
57
+ break;
93
58
  }
94
- else if (column.dataType === 'custom') {
59
+ case 'custom': {
95
60
  schema = arktype.type.unknown;
61
+ break;
96
62
  }
97
- else if (column.dataType === 'buffer') {
98
- schema = bufferSchema;
63
+ default: {
64
+ schema = arktype.type.unknown;
99
65
  }
100
66
  }
101
- if (!schema) {
102
- schema = arktype.type.unknown;
103
- }
104
67
  return schema;
105
68
  }
106
- function numberColumnToSchema(column) {
107
- let unsigned = column.getSQLType().includes('unsigned');
69
+ function numberColumnToSchema(column, constraint) {
108
70
  let min;
109
71
  let max;
110
72
  let integer = false;
111
- if (isColumnType(column, ['MySqlTinyInt', 'SingleStoreTinyInt'])) {
112
- min = unsigned ? 0 : CONSTANTS.INT8_MIN;
113
- max = unsigned ? CONSTANTS.INT8_UNSIGNED_MAX : CONSTANTS.INT8_MAX;
114
- integer = true;
115
- }
116
- else if (isColumnType(column, [
117
- 'PgSmallInt',
118
- 'PgSmallSerial',
119
- 'MySqlSmallInt',
120
- 'SingleStoreSmallInt',
121
- ])) {
122
- min = unsigned ? 0 : CONSTANTS.INT16_MIN;
123
- max = unsigned ? CONSTANTS.INT16_UNSIGNED_MAX : CONSTANTS.INT16_MAX;
124
- integer = true;
125
- }
126
- else if (isColumnType(column, [
127
- 'PgReal',
128
- 'MySqlFloat',
129
- 'MySqlMediumInt',
130
- 'SingleStoreFloat',
131
- 'SingleStoreMediumInt',
132
- ])) {
133
- min = unsigned ? 0 : CONSTANTS.INT24_MIN;
134
- max = unsigned ? CONSTANTS.INT24_UNSIGNED_MAX : CONSTANTS.INT24_MAX;
135
- integer = isColumnType(column, ['MySqlMediumInt', 'SingleStoreMediumInt']);
136
- }
137
- else if (isColumnType(column, [
138
- 'PgInteger',
139
- 'PgSerial',
140
- 'MySqlInt',
141
- 'SingleStoreInt',
142
- ])) {
143
- min = unsigned ? 0 : CONSTANTS.INT32_MIN;
144
- max = unsigned ? CONSTANTS.INT32_UNSIGNED_MAX : CONSTANTS.INT32_MAX;
145
- integer = true;
146
- }
147
- else if (isColumnType(column, [
148
- 'PgDoublePrecision',
149
- 'MySqlReal',
150
- 'MySqlDouble',
151
- 'SingleStoreReal',
152
- 'SingleStoreDouble',
153
- 'SQLiteReal',
154
- ])) {
155
- min = unsigned ? 0 : CONSTANTS.INT48_MIN;
156
- max = unsigned ? CONSTANTS.INT48_UNSIGNED_MAX : CONSTANTS.INT48_MAX;
157
- }
158
- else if (isColumnType(column, [
159
- 'PgBigInt53',
160
- 'PgBigSerial53',
161
- 'MySqlBigInt53',
162
- 'MySqlSerial',
163
- 'SingleStoreBigInt53',
164
- 'SingleStoreSerial',
165
- 'SQLiteInteger',
166
- ])) {
167
- unsigned = unsigned || isColumnType(column, ['MySqlSerial', 'SingleStoreSerial']);
168
- min = unsigned ? 0 : Number.MIN_SAFE_INTEGER;
169
- max = Number.MAX_SAFE_INTEGER;
170
- integer = true;
73
+ switch (constraint) {
74
+ case 'int8': {
75
+ min = CONSTANTS.INT8_MIN;
76
+ max = CONSTANTS.INT8_MAX;
77
+ integer = true;
78
+ break;
79
+ }
80
+ case 'uint8': {
81
+ min = 0;
82
+ max = CONSTANTS.INT8_UNSIGNED_MAX;
83
+ integer = true;
84
+ break;
85
+ }
86
+ case 'int16': {
87
+ min = CONSTANTS.INT16_MIN;
88
+ max = CONSTANTS.INT16_MAX;
89
+ integer = true;
90
+ break;
91
+ }
92
+ case 'uint16': {
93
+ min = 0;
94
+ max = CONSTANTS.INT16_UNSIGNED_MAX;
95
+ integer = true;
96
+ break;
97
+ }
98
+ case 'int24': {
99
+ min = CONSTANTS.INT24_MIN;
100
+ max = CONSTANTS.INT24_MAX;
101
+ integer = true;
102
+ break;
103
+ }
104
+ case 'uint24': {
105
+ min = 0;
106
+ max = CONSTANTS.INT24_UNSIGNED_MAX;
107
+ integer = true;
108
+ break;
109
+ }
110
+ case 'int32': {
111
+ min = CONSTANTS.INT32_MIN;
112
+ max = CONSTANTS.INT32_MAX;
113
+ integer = true;
114
+ break;
115
+ }
116
+ case 'uint32': {
117
+ min = 0;
118
+ max = CONSTANTS.INT32_UNSIGNED_MAX;
119
+ integer = true;
120
+ break;
121
+ }
122
+ case 'int53': {
123
+ min = Number.MIN_SAFE_INTEGER;
124
+ max = Number.MAX_SAFE_INTEGER;
125
+ integer = true;
126
+ break;
127
+ }
128
+ case 'uint53': {
129
+ min = 0;
130
+ max = Number.MAX_SAFE_INTEGER;
131
+ integer = true;
132
+ break;
133
+ }
134
+ case 'float': {
135
+ min = CONSTANTS.INT24_MIN;
136
+ max = CONSTANTS.INT24_MAX;
137
+ break;
138
+ }
139
+ case 'ufloat': {
140
+ min = 0;
141
+ max = CONSTANTS.INT24_UNSIGNED_MAX;
142
+ break;
143
+ }
144
+ case 'double': {
145
+ min = CONSTANTS.INT48_MIN;
146
+ max = CONSTANTS.INT48_MAX;
147
+ break;
148
+ }
149
+ case 'udouble': {
150
+ min = 0;
151
+ max = CONSTANTS.INT48_UNSIGNED_MAX;
152
+ break;
153
+ }
154
+ case 'year': {
155
+ min = 1901;
156
+ max = 2155;
157
+ integer = true;
158
+ break;
159
+ }
160
+ default: {
161
+ min = Number.MIN_SAFE_INTEGER;
162
+ max = Number.MAX_SAFE_INTEGER;
163
+ break;
164
+ }
171
165
  }
172
- else if (isColumnType(column, ['MySqlYear', 'SingleStoreYear'])) {
173
- min = 1901;
174
- max = 2155;
175
- integer = true;
166
+ return (integer ? arktype.type.keywords.number.integer : arktype.type.number).atLeast(min).atMost(max);
167
+ }
168
+ function arrayColumnToSchema(column, constraint) {
169
+ switch (constraint) {
170
+ case 'geometry':
171
+ case 'point': {
172
+ return arktype.type([arktype.type.number, arktype.type.number]);
173
+ }
174
+ case 'line': {
175
+ return arktype.type([arktype.type.number, arktype.type.number, arktype.type.number]);
176
+ }
177
+ case 'vector':
178
+ case 'halfvector': {
179
+ const length = column.length;
180
+ return length ? arktype.type.number.array().exactlyLength(length) : arktype.type.number.array();
181
+ }
182
+ case 'basecolumn': {
183
+ const length = column.length;
184
+ const schema = column.baseColumn
185
+ ? columnToSchema(column.baseColumn).array()
186
+ : arktype.type.unknown.array();
187
+ if (length)
188
+ return schema.exactlyLength(length);
189
+ return schema;
190
+ }
191
+ default: {
192
+ return arktype.type.unknown.array();
193
+ }
176
194
  }
177
- else {
178
- min = Number.MIN_SAFE_INTEGER;
179
- max = Number.MAX_SAFE_INTEGER;
195
+ }
196
+ function objectColumnToSchema(column, constraint) {
197
+ switch (constraint) {
198
+ case 'buffer': {
199
+ return bufferSchema;
200
+ }
201
+ case 'date': {
202
+ return arktype.type.Date;
203
+ }
204
+ case 'geometry':
205
+ case 'point': {
206
+ return arktype.type({
207
+ x: arktype.type.number,
208
+ y: arktype.type.number,
209
+ });
210
+ }
211
+ case 'json': {
212
+ return jsonSchema;
213
+ }
214
+ case 'line': {
215
+ return arktype.type({
216
+ a: arktype.type.number,
217
+ b: arktype.type.number,
218
+ c: arktype.type.number,
219
+ });
220
+ }
221
+ default: {
222
+ return arktype.type({});
223
+ }
180
224
  }
181
- return (integer ? arktype.type.keywords.number.integer : arktype.type.number).atLeast(min).atMost(max);
182
225
  }
183
226
  /** @internal */
184
227
  const unsignedBigintNarrow = (v, ctx) => v < 0n ? ctx.mustBe('greater than') : v > CONSTANTS.INT64_UNSIGNED_MAX ? ctx.mustBe('less than') : true;
185
228
  /** @internal */
186
229
  const bigintNarrow = (v, ctx) => v < CONSTANTS.INT64_MIN ? ctx.mustBe('greater than') : v > CONSTANTS.INT64_MAX ? ctx.mustBe('less than') : true;
187
- function bigintColumnToSchema(column) {
188
- const unsigned = column.getSQLType().includes('unsigned');
189
- return arktype.type.bigint.narrow(unsigned ? unsignedBigintNarrow : bigintNarrow);
190
- }
191
- function stringColumnToSchema(column) {
192
- if (isColumnType(column, ['PgUUID'])) {
193
- return arktype.type(/^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$/iu).describe('a RFC-4122-compliant UUID');
194
- }
195
- if (isColumnType(column, ['PgBinaryVector'])) {
196
- return arktype.type(`/^[01]{${column.dimensions}}$/`)
197
- .describe(`a string containing ones or zeros while being ${column.dimensions} characters long`);
230
+ function bigintColumnToSchema(column, constraint) {
231
+ switch (constraint) {
232
+ case 'int64': {
233
+ return arktype.type.bigint.narrow(bigintNarrow);
234
+ }
235
+ case 'uint64': {
236
+ return arktype.type.bigint.narrow(unsignedBigintNarrow);
237
+ }
198
238
  }
199
- let max;
200
- let fixed = false;
201
- if (isColumnType(column, ['PgVarchar', 'SQLiteText'])) {
202
- max = column.length;
239
+ return arktype.type.bigint;
240
+ }
241
+ function stringColumnToSchema(column, constraint) {
242
+ const { name: columnName, length, isLengthExact } = column;
243
+ if (constraint === 'binary') {
244
+ return arktype.type(`/^[01]${length ? `{${isLengthExact ? length : `0,${length}`}}` : '*'}$/`)
245
+ .describe(`a string containing ones or zeros${length ? ` while being ${isLengthExact ? '' : 'up to '}${length} characters long` : ''}`);
203
246
  }
204
- else if (isColumnType(column, ['MySqlVarChar', 'SingleStoreVarChar'])) {
205
- max = column.length ?? CONSTANTS.INT16_UNSIGNED_MAX;
247
+ if (constraint === 'uuid') {
248
+ return arktype.type(/^[\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}$/iu).describe('a RFC-4122-compliant UUID');
206
249
  }
207
- else if (isColumnType(column, ['MySqlText', 'SingleStoreText'])) {
208
- if (column.textType === 'longtext') {
209
- max = CONSTANTS.INT32_UNSIGNED_MAX;
210
- }
211
- else if (column.textType === 'mediumtext') {
212
- max = CONSTANTS.INT24_UNSIGNED_MAX;
213
- }
214
- else if (column.textType === 'text') {
215
- max = CONSTANTS.INT16_UNSIGNED_MAX;
216
- }
217
- else {
218
- max = CONSTANTS.INT8_UNSIGNED_MAX;
250
+ if (constraint === 'enum') {
251
+ const enumValues = column.enumValues;
252
+ if (!enumValues) {
253
+ throw new Error(`Column "${drizzleOrm.getTableName(drizzleOrm.getColumnTable(column))}"."${columnName}" is of 'enum' type, but lacks enum values`);
219
254
  }
255
+ return arktype.type.enumerated(...enumValues);
220
256
  }
221
- if (isColumnType(column, [
222
- 'PgChar',
223
- 'MySqlChar',
224
- 'SingleStoreChar',
225
- ])) {
226
- max = column.length;
227
- fixed = true;
228
- }
229
- return max && fixed ? arktype.type.string.exactlyLength(max) : max ? arktype.type.string.atMostLength(max) : arktype.type.string;
257
+ return length && isLengthExact
258
+ ? arktype.type.string.exactlyLength(length)
259
+ : length
260
+ ? arktype.type.string.atMostLength(length)
261
+ : arktype.type.string;
262
+ }
263
+
264
+ function isColumnType(column, columnTypes) {
265
+ return columnTypes.includes(column.columnType);
266
+ }
267
+ function isWithEnum(column) {
268
+ return 'enumValues' in column && Array.isArray(column.enumValues) && column.enumValues.length > 0;
230
269
  }
270
+ const isPgEnum = isWithEnum;
231
271
 
232
272
  function getColumns(tableLike) {
233
273
  return drizzleOrm.isTable(tableLike) ? drizzleOrm.getTableColumns(tableLike) : drizzleOrm.getViewSelectedFields(tableLike);
package/index.cjs.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs","sources":["../src/constants.ts","../src/utils.ts","../src/column.ts","../src/schema.ts"],"sourcesContent":[null,null,null,null],"names":["type","isTable","getTableColumns","getViewSelectedFields","is","Column","SQL","isView"],"mappings":"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"}
1
+ {"version":3,"file":"index.cjs","sources":["../src/constants.ts","../src/column.ts","../src/utils.ts","../src/schema.ts"],"sourcesContent":[null,null,null,null],"names":["type","extractExtendedColumnType","getTableName","getColumnTable","isTable","getTableColumns","getViewSelectedFields","is","Column","SQL","isView"],"mappings":"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"}
package/index.d.cts CHANGED
@@ -1,7 +1,6 @@
1
1
  export { bufferSchema, jsonSchema, literalSchema } from "./column.cjs";
2
2
  export * from "./column.types.cjs";
3
3
  export * from "./schema.cjs";
4
- export type { BuildSchema } from "./schema.types.internal.cjs";
5
4
  export * from "./schema.types.internal.cjs";
6
5
  export * from "./schema.types.cjs";
7
6
  export * from "./utils.cjs";
package/index.d.mts CHANGED
@@ -1,7 +1,6 @@
1
1
  export { bufferSchema, jsonSchema, literalSchema } from "./column.mjs";
2
2
  export * from "./column.types.mjs";
3
3
  export * from "./schema.mjs";
4
- export type { BuildSchema } from "./schema.types.internal.mjs";
5
4
  export * from "./schema.types.internal.mjs";
6
5
  export * from "./schema.types.mjs";
7
6
  export * from "./utils.mjs";
package/index.d.ts CHANGED
@@ -1,7 +1,6 @@
1
1
  export { bufferSchema, jsonSchema, literalSchema } from './column.js';
2
2
  export * from './column.types.js';
3
3
  export * from './schema.js';
4
- export type { BuildSchema } from './schema.types.internal.js';
5
4
  export * from './schema.types.internal.js';
6
5
  export * from './schema.types.js';
7
6
  export * from './utils.js';