@pothos/plugin-drizzle 0.19.0 → 0.19.1

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.
@@ -79,13 +79,31 @@ function formatIDChunk(value) {
79
79
  throw new _core.PothosValidationError(`Unsupported ID type ${typeof value}`);
80
80
  }
81
81
  }
82
+ function formatCompoundIDValue(value) {
83
+ if (typeof value === 'bigint') {
84
+ return value.toString();
85
+ }
86
+ if (value instanceof Date) {
87
+ return Number(value);
88
+ }
89
+ return value;
90
+ }
91
+ function parseCompoundIDValue(value, field) {
92
+ if (field.dataType.startsWith('bigint') && (typeof value === 'string' || typeof value === 'number')) {
93
+ return BigInt(value);
94
+ }
95
+ if (field.dataType === 'object date' && typeof value === 'number') {
96
+ return new Date(value);
97
+ }
98
+ return value;
99
+ }
82
100
  function getIDSerializer(fields, config) {
83
101
  if (fields.length === 0) {
84
102
  throw new _core.PothosValidationError('Column serializer must have at least one field');
85
103
  }
86
104
  return (value)=>{
87
105
  if (fields.length > 1) {
88
- return `${JSON.stringify(fields.map((col)=>value[config.columnToTsName(col)]))}`;
106
+ return `${JSON.stringify(fields.map((col)=>formatCompoundIDValue(value[config.columnToTsName(col)])))}`;
89
107
  }
90
108
  return `${formatIDChunk(value[config.columnToTsName(fields[0])])}`;
91
109
  };
@@ -147,7 +165,7 @@ function parseSerializedIDColumn(id, field) {
147
165
  }
148
166
  try {
149
167
  if (field.dataType.startsWith('number')) {
150
- return Number.parseInt(id, 10);
168
+ return Number(id);
151
169
  }
152
170
  if (field.dataType.startsWith('bigint')) {
153
171
  return BigInt(id);
@@ -188,7 +206,7 @@ function getIDParser(fields, config) {
188
206
  }
189
207
  const record = {};
190
208
  fields.forEach((field, i)=>{
191
- record[config.columnToTsName(field)] = parsed[i];
209
+ record[config.columnToTsName(field)] = parseCompoundIDValue(parsed[i], field);
192
210
  });
193
211
  return record;
194
212
  } catch (error) {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/utils/cursors.ts"],"names":["cursorFieldKey","drizzleCursorConnectionQuery","formatCursorChunk","formatDrizzleCursor","formatIDChunk","getColumnParser","getColumnSerializer","getCursorFormatter","getCursorParser","getIDParser","getIDSerializer","parseDrizzleCursor","parseSerializedDrizzleColumn","parseSerializedIDColumn","resolveDrizzleCursorConnection","wrapConnectionResult","encodeCursorChunk","record","fields","config","value","Date","String","Number","PothosValidationError","length","JSON","stringify","map","col","columnToTsName","field","encodeCursorTuple","serializer","encodeBase64","cursor","decoded","decodeBase64","startsWith","slice","decodeCursorChunk","id","dataType","parseInt","BigInt","error","parsed","parse","Array","isArray","forEach","i","name","keys","values","resolveExpression","expression","table","sql","orderTarget","entry","column","key","flipDirection","direction","ordersBy","entries","some","orderIsUnique","getUniqueConstraints","columns","every","notNull","appendTieBreaker","tieBreaker","findTieBreaker","push","parseOrderBy","orderBy","invert","extras","normalized","columnEntry","tableColumns","getColumns","Object","directionFor","flatMap","cursorFields","t","asc","desc","fromEntries","compareTo","operator","isNullish","undefined","isNull","RAW","operators","gt","lt","eq","keysetFilter","paging","parsedCursor","covered","filter","parts","index","ascending","compare","AND","previous","OR","args","ctx","maxSize","defaultSize","where","before","after","first","last","validateConnectionArguments","maxSizeForConnection","defaultSizeForConnection","limit","getConnectionPageSize","inverted","parsedOrderBy","whereClauses","omitUndefinedKeys","results","resolveNode","parent","totalCount","edges","gotFullResults","Math","abs","backward","hasNextPage","hasPreviousPage","nodes","connection","pageInfo","startCursor","endCursor","node","reverse","tableName","plan","options","resolve","relations","query","formatter","q","connectionQuery","getPrimaryKey","queryFromPlan"],"mappings":"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"}
1
+ {"version":3,"sources":["../../src/utils/cursors.ts"],"names":["cursorFieldKey","drizzleCursorConnectionQuery","formatCursorChunk","formatDrizzleCursor","formatIDChunk","getColumnParser","getColumnSerializer","getCursorFormatter","getCursorParser","getIDParser","getIDSerializer","parseDrizzleCursor","parseSerializedDrizzleColumn","parseSerializedIDColumn","resolveDrizzleCursorConnection","wrapConnectionResult","encodeCursorChunk","record","fields","config","value","Date","String","Number","PothosValidationError","formatCompoundIDValue","toString","parseCompoundIDValue","field","dataType","startsWith","BigInt","length","JSON","stringify","map","col","columnToTsName","encodeCursorTuple","serializer","encodeBase64","cursor","decoded","decodeBase64","slice","decodeCursorChunk","id","error","parsed","parse","Array","isArray","forEach","i","name","keys","values","resolveExpression","expression","table","sql","orderTarget","entry","column","key","flipDirection","direction","ordersBy","entries","some","orderIsUnique","getUniqueConstraints","columns","every","notNull","appendTieBreaker","tieBreaker","findTieBreaker","push","parseOrderBy","orderBy","invert","extras","normalized","columnEntry","tableColumns","getColumns","Object","directionFor","flatMap","cursorFields","t","asc","desc","fromEntries","compareTo","operator","isNullish","undefined","isNull","RAW","operators","gt","lt","eq","keysetFilter","paging","parsedCursor","covered","filter","parts","index","ascending","compare","AND","previous","OR","args","ctx","maxSize","defaultSize","where","before","after","first","last","validateConnectionArguments","maxSizeForConnection","defaultSizeForConnection","limit","getConnectionPageSize","inverted","parsedOrderBy","whereClauses","omitUndefinedKeys","results","resolveNode","parent","totalCount","edges","gotFullResults","Math","abs","backward","hasNextPage","hasPreviousPage","nodes","connection","pageInfo","startCursor","endCursor","node","reverse","tableName","plan","options","resolve","relations","query","formatter","q","connectionQuery","getPrimaryKey","queryFromPlan"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pothos/plugin-drizzle",
3
- "version": "0.19.0",
3
+ "version": "0.19.1",
4
4
  "description": "A Pothos plugin for drizzle",
5
5
  "main": "./lib/index.js",
6
6
  "types": "./dts/index.d.ts",
@@ -48,11 +48,11 @@
48
48
  "graphql-scalars": "^1.25.0",
49
49
  "graphql-tag": "^2.12.6",
50
50
  "postgres": "^3.4.9",
51
- "@pothos/core": "4.14.0",
52
- "@pothos/plugin-add-graphql": "4.3.1",
53
- "@pothos/plugin-errors": "4.9.1",
54
- "@pothos/plugin-relay": "4.7.2",
55
- "@pothos/plugin-scope-auth": "4.1.7",
51
+ "@pothos/core": "4.15.0",
52
+ "@pothos/plugin-add-graphql": "4.3.2",
53
+ "@pothos/plugin-errors": "4.9.2",
54
+ "@pothos/plugin-relay": "4.8.0",
55
+ "@pothos/plugin-scope-auth": "4.2.0",
56
56
  "@pothos/plugin-with-input": "4.1.5",
57
57
  "@pothos/test-utils": "2.2.1"
58
58
  },
@@ -182,7 +182,7 @@ export function drizzleConnectionHelpers<
182
182
  defaultSize: typeof defaultSize === 'function' ? defaultSize(args, ctx) : defaultSize,
183
183
  args,
184
184
  orderBy:
185
- (typeof orderBy === 'function' ? orderBy(table) : orderBy) ??
185
+ (typeof orderBy === 'function' ? orderBy(table.table) : orderBy) ??
186
186
  getSchemaConfig(builder).getPrimaryKey(tableName),
187
187
  extras: (fieldQuery as { extras?: DrizzleCursorConnectionQueryOptions['extras'] }).extras,
188
188
  where,
package/src/types.ts CHANGED
@@ -64,7 +64,10 @@ export interface PathInfo {
64
64
  segments: FieldPathInfo[];
65
65
  }
66
66
 
67
- export type DrizzleClient<TCountSource = Table | SQL | SQLWrapper> = {
67
+ export type DrizzleClient<
68
+ TCountSource = Table | SQL | SQLWrapper,
69
+ TTable = Extract<TCountSource, Table>,
70
+ > = {
68
71
  readonly _: {
69
72
  readonly relations: AnyRelations;
70
73
  };
@@ -78,11 +81,8 @@ export type DrizzleClient<TCountSource = Table | SQL | SQLWrapper> = {
78
81
  $count: (source: TCountSource, filter?: SQL) => SQL<number>;
79
82
  /** Core SQL construction used for relation predicates and counts; it does not execute a query. */
80
83
  select: (fields: Record<string, SQL>) => {
81
- from(table: Extract<TCountSource, Table>): {
82
- innerJoin(
83
- table: Extract<TCountSource, Table>,
84
- on: SQL,
85
- ): { where: (filter?: SQL) => SQLWrapper };
84
+ from(table: TTable): {
85
+ innerJoin(table: TTable, on: SQL): { where: (filter?: SQL) => SQLWrapper };
86
86
  where: (filter?: SQL) => SQLWrapper;
87
87
  };
88
88
  };
@@ -102,7 +102,8 @@ type AnyRelationTable<Types extends SchemaTypes> =
102
102
  Types['DrizzleRelations'][keyof Types['DrizzleRelations']]['table'];
103
103
 
104
104
  type DrizzleClientForTypes<Types extends SchemaTypes> = DrizzleClient<
105
- AnyRelationTable<Types> | SQL | SQLWrapper
105
+ AnyRelationTable<Types> | SQL | SQLWrapper,
106
+ Table extends AnyRelationTable<Types> ? Table : never
106
107
  >;
107
108
 
108
109
  type DrizzlePluginBaseOptions = {
@@ -60,6 +60,33 @@ export function formatIDChunk(value: unknown) {
60
60
  }
61
61
  }
62
62
 
63
+ function formatCompoundIDValue(value: unknown) {
64
+ if (typeof value === 'bigint') {
65
+ return value.toString();
66
+ }
67
+
68
+ if (value instanceof Date) {
69
+ return Number(value);
70
+ }
71
+
72
+ return value;
73
+ }
74
+
75
+ function parseCompoundIDValue(value: unknown, field: Column) {
76
+ if (
77
+ field.dataType.startsWith('bigint') &&
78
+ (typeof value === 'string' || typeof value === 'number')
79
+ ) {
80
+ return BigInt(value);
81
+ }
82
+
83
+ if (field.dataType === 'object date' && typeof value === 'number') {
84
+ return new Date(value);
85
+ }
86
+
87
+ return value;
88
+ }
89
+
63
90
  export function getIDSerializer(fields: Column[], config: PothosDrizzleSchemaConfig) {
64
91
  if (fields.length === 0) {
65
92
  throw new PothosValidationError('Column serializer must have at least one field');
@@ -67,7 +94,9 @@ export function getIDSerializer(fields: Column[], config: PothosDrizzleSchemaCon
67
94
 
68
95
  return (value: Record<string, unknown>) => {
69
96
  if (fields.length > 1) {
70
- return `${JSON.stringify(fields.map((col) => value[config.columnToTsName(col)]))}`;
97
+ return `${JSON.stringify(
98
+ fields.map((col) => formatCompoundIDValue(value[config.columnToTsName(col)])),
99
+ )}`;
71
100
  }
72
101
 
73
102
  return `${formatIDChunk(value[config.columnToTsName(fields[0])])}`;
@@ -155,7 +184,7 @@ export function parseSerializedIDColumn(id: string, field: Column): unknown {
155
184
 
156
185
  try {
157
186
  if (field.dataType.startsWith('number')) {
158
- return Number.parseInt(id, 10);
187
+ return Number(id);
159
188
  }
160
189
 
161
190
  if (field.dataType.startsWith('bigint')) {
@@ -212,7 +241,7 @@ export function getIDParser(fields: readonly Column[], config: PothosDrizzleSche
212
241
  const record: Record<string, unknown> = {};
213
242
 
214
243
  fields.forEach((field, i) => {
215
- record[config.columnToTsName(field)] = parsed[i];
244
+ record[config.columnToTsName(field)] = parseCompoundIDValue(parsed[i], field);
216
245
  });
217
246
 
218
247
  return record;