@payloadcms/drizzle 3.32.0-internal.f2e77bd → 3.32.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/deleteOne.js +2 -9
- package/dist/deleteOne.js.map +1 -1
- package/dist/exports/types-deprecated.d.ts +150 -0
- package/dist/exports/types-deprecated.d.ts.map +1 -0
- package/dist/exports/types-deprecated.js +5 -0
- package/dist/exports/types-deprecated.js.map +1 -0
- package/dist/find/chainMethods.d.ts +5 -0
- package/dist/find/chainMethods.d.ts.map +1 -1
- package/dist/find/chainMethods.js +4 -0
- package/dist/find/chainMethods.js.map +1 -1
- package/dist/find/findMany.d.ts.map +1 -1
- package/dist/find/findMany.js +6 -22
- package/dist/find/findMany.js.map +1 -1
- package/dist/find/traverseFields.d.ts.map +1 -1
- package/dist/find/traverseFields.js +14 -35
- package/dist/find/traverseFields.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js.map +1 -1
- package/dist/postgres/countDistinct.d.ts.map +1 -1
- package/dist/postgres/countDistinct.js +5 -15
- package/dist/postgres/countDistinct.js.map +1 -1
- package/dist/queries/selectDistinct.d.ts +5 -3
- package/dist/queries/selectDistinct.d.ts.map +1 -1
- package/dist/queries/selectDistinct.js +10 -23
- package/dist/queries/selectDistinct.js.map +1 -1
- package/dist/types.d.ts +4 -2
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js +3 -1
- package/dist/types.js.map +1 -1
- package/dist/updateJobs.d.ts.map +1 -1
- package/dist/updateJobs.js +3 -0
- package/dist/updateJobs.js.map +1 -1
- package/dist/updateMany.d.ts.map +1 -1
- package/dist/updateMany.js +6 -28
- package/dist/updateMany.js.map +1 -1
- package/dist/updateOne.js +1 -8
- package/dist/updateOne.js.map +1 -1
- package/package.json +6 -6
package/dist/deleteOne.js
CHANGED
|
@@ -5,7 +5,7 @@ import buildQuery from './queries/buildQuery.js';
|
|
|
5
5
|
import { selectDistinct } from './queries/selectDistinct.js';
|
|
6
6
|
import { transform } from './transform/read/index.js';
|
|
7
7
|
import { getTransaction } from './utilities/getTransaction.js';
|
|
8
|
-
export const deleteOne = async function deleteOne({ collection: collectionSlug, req, select, where: whereArg
|
|
8
|
+
export const deleteOne = async function deleteOne({ collection: collectionSlug, req, returning, select, where: whereArg }) {
|
|
9
9
|
const db = await getTransaction(this, req);
|
|
10
10
|
const collection = this.payload.collections[collectionSlug].config;
|
|
11
11
|
const tableName = this.tableNameMap.get(toSnakeCase(collection.slug));
|
|
@@ -19,16 +19,9 @@ export const deleteOne = async function deleteOne({ collection: collectionSlug,
|
|
|
19
19
|
});
|
|
20
20
|
const selectDistinctResult = await selectDistinct({
|
|
21
21
|
adapter: this,
|
|
22
|
-
chainedMethods: [
|
|
23
|
-
{
|
|
24
|
-
args: [
|
|
25
|
-
1
|
|
26
|
-
],
|
|
27
|
-
method: 'limit'
|
|
28
|
-
}
|
|
29
|
-
],
|
|
30
22
|
db,
|
|
31
23
|
joins,
|
|
24
|
+
query: ({ query })=>query.limit(1),
|
|
32
25
|
selectFields,
|
|
33
26
|
tableName,
|
|
34
27
|
where
|
package/dist/deleteOne.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/deleteOne.ts"],"sourcesContent":["import type { DeleteOne } from 'payload'\n\nimport { eq } from 'drizzle-orm'\nimport toSnakeCase from 'to-snake-case'\n\nimport type { DrizzleAdapter } from './types.js'\n\nimport { buildFindManyArgs } from './find/buildFindManyArgs.js'\nimport buildQuery from './queries/buildQuery.js'\nimport { selectDistinct } from './queries/selectDistinct.js'\nimport { transform } from './transform/read/index.js'\nimport { getTransaction } from './utilities/getTransaction.js'\n\nexport const deleteOne: DeleteOne = async function deleteOne(\n this: DrizzleAdapter,\n { collection: collectionSlug, req, select, where: whereArg
|
|
1
|
+
{"version":3,"sources":["../src/deleteOne.ts"],"sourcesContent":["import type { DeleteOne } from 'payload'\n\nimport { eq } from 'drizzle-orm'\nimport toSnakeCase from 'to-snake-case'\n\nimport type { DrizzleAdapter } from './types.js'\n\nimport { buildFindManyArgs } from './find/buildFindManyArgs.js'\nimport buildQuery from './queries/buildQuery.js'\nimport { selectDistinct } from './queries/selectDistinct.js'\nimport { transform } from './transform/read/index.js'\nimport { getTransaction } from './utilities/getTransaction.js'\n\nexport const deleteOne: DeleteOne = async function deleteOne(\n this: DrizzleAdapter,\n { collection: collectionSlug, req, returning, select, where: whereArg },\n) {\n const db = await getTransaction(this, req)\n const collection = this.payload.collections[collectionSlug].config\n\n const tableName = this.tableNameMap.get(toSnakeCase(collection.slug))\n\n let docToDelete: Record<string, unknown>\n\n const { joins, selectFields, where } = buildQuery({\n adapter: this,\n fields: collection.flattenedFields,\n locale: req?.locale,\n tableName,\n where: whereArg,\n })\n\n const selectDistinctResult = await selectDistinct({\n adapter: this,\n db,\n joins,\n query: ({ query }) => query.limit(1),\n selectFields,\n tableName,\n where,\n })\n\n if (selectDistinctResult?.[0]?.id) {\n docToDelete = await db.query[tableName].findFirst({\n where: eq(this.tables[tableName].id, selectDistinctResult[0].id),\n })\n } else {\n const findManyArgs = buildFindManyArgs({\n adapter: this,\n depth: 0,\n fields: collection.flattenedFields,\n joinQuery: false,\n select,\n tableName,\n })\n\n findManyArgs.where = where\n\n docToDelete = await db.query[tableName].findFirst(findManyArgs)\n }\n\n const result =\n returning === false\n ? null\n : transform({\n adapter: this,\n config: this.payload.config,\n data: docToDelete,\n fields: collection.flattenedFields,\n joinQuery: false,\n })\n\n await this.deleteWhere({\n db,\n tableName,\n where: eq(this.tables[tableName].id, docToDelete.id),\n })\n\n return result\n}\n"],"names":["eq","toSnakeCase","buildFindManyArgs","buildQuery","selectDistinct","transform","getTransaction","deleteOne","collection","collectionSlug","req","returning","select","where","whereArg","db","payload","collections","config","tableName","tableNameMap","get","slug","docToDelete","joins","selectFields","adapter","fields","flattenedFields","locale","selectDistinctResult","query","limit","id","findFirst","tables","findManyArgs","depth","joinQuery","result","data","deleteWhere"],"mappings":"AAEA,SAASA,EAAE,QAAQ,cAAa;AAChC,OAAOC,iBAAiB,gBAAe;AAIvC,SAASC,iBAAiB,QAAQ,8BAA6B;AAC/D,OAAOC,gBAAgB,0BAAyB;AAChD,SAASC,cAAc,QAAQ,8BAA6B;AAC5D,SAASC,SAAS,QAAQ,4BAA2B;AACrD,SAASC,cAAc,QAAQ,gCAA+B;AAE9D,OAAO,MAAMC,YAAuB,eAAeA,UAEjD,EAAEC,YAAYC,cAAc,EAAEC,GAAG,EAAEC,SAAS,EAAEC,MAAM,EAAEC,OAAOC,QAAQ,EAAE;IAEvE,MAAMC,KAAK,MAAMT,eAAe,IAAI,EAAEI;IACtC,MAAMF,aAAa,IAAI,CAACQ,OAAO,CAACC,WAAW,CAACR,eAAe,CAACS,MAAM;IAElE,MAAMC,YAAY,IAAI,CAACC,YAAY,CAACC,GAAG,CAACpB,YAAYO,WAAWc,IAAI;IAEnE,IAAIC;IAEJ,MAAM,EAAEC,KAAK,EAAEC,YAAY,EAAEZ,KAAK,EAAE,GAAGV,WAAW;QAChDuB,SAAS,IAAI;QACbC,QAAQnB,WAAWoB,eAAe;QAClCC,QAAQnB,KAAKmB;QACbV;QACAN,OAAOC;IACT;IAEA,MAAMgB,uBAAuB,MAAM1B,eAAe;QAChDsB,SAAS,IAAI;QACbX;QACAS;QACAO,OAAO,CAAC,EAAEA,KAAK,EAAE,GAAKA,MAAMC,KAAK,CAAC;QAClCP;QACAN;QACAN;IACF;IAEA,IAAIiB,sBAAsB,CAAC,EAAE,EAAEG,IAAI;QACjCV,cAAc,MAAMR,GAAGgB,KAAK,CAACZ,UAAU,CAACe,SAAS,CAAC;YAChDrB,OAAOb,GAAG,IAAI,CAACmC,MAAM,CAAChB,UAAU,CAACc,EAAE,EAAEH,oBAAoB,CAAC,EAAE,CAACG,EAAE;QACjE;IACF,OAAO;QACL,MAAMG,eAAelC,kBAAkB;YACrCwB,SAAS,IAAI;YACbW,OAAO;YACPV,QAAQnB,WAAWoB,eAAe;YAClCU,WAAW;YACX1B;YACAO;QACF;QAEAiB,aAAavB,KAAK,GAAGA;QAErBU,cAAc,MAAMR,GAAGgB,KAAK,CAACZ,UAAU,CAACe,SAAS,CAACE;IACpD;IAEA,MAAMG,SACJ5B,cAAc,QACV,OACAN,UAAU;QACRqB,SAAS,IAAI;QACbR,QAAQ,IAAI,CAACF,OAAO,CAACE,MAAM;QAC3BsB,MAAMjB;QACNI,QAAQnB,WAAWoB,eAAe;QAClCU,WAAW;IACb;IAEN,MAAM,IAAI,CAACG,WAAW,CAAC;QACrB1B;QACAI;QACAN,OAAOb,GAAG,IAAI,CAACmC,MAAM,CAAChB,UAAU,CAACc,EAAE,EAAEV,YAAYU,EAAE;IACrD;IAEA,OAAOM;AACT,EAAC"}
|
|
@@ -0,0 +1,150 @@
|
|
|
1
|
+
import type { BaseRawColumn as _BaseRawColumn, BuildDrizzleTable as _BuildDrizzleTable, BuildQueryJoinAliases as _BuildQueryJoinAliases, ChainedMethods as _ChainedMethods, ColumnToCodeConverter as _ColumnToCodeConverter, CountDistinct as _CountDistinct, CreateJSONQueryArgs as _CreateJSONQueryArgs, DeleteWhere as _DeleteWhere, DrizzleAdapter as _DrizzleAdapter, DrizzleTransaction as _DrizzleTransaction, DropDatabase as _DropDatabase, EnumRawColumn as _EnumRawColumn, Execute as _Execute, GenericColumn as _GenericColumn, GenericColumns as _GenericColumns, GenericPgColumn as _GenericPgColumn, GenericRelation as _GenericRelation, GenericTable as _GenericTable, IDType as _IDType, Insert as _Insert, IntegerRawColumn as _IntegerRawColumn, Migration as _Migration, PostgresDB as _PostgresDB, RawColumn as _RawColumn, RawForeignKey as _RawForeignKey, RawIndex as _RawIndex, RawRelation as _RawRelation, RawTable as _RawTable, RelationMap as _RelationMap, RequireDrizzleKit as _RequireDrizzleKit, SetColumnID as _SetColumnID, SQLiteDB as _SQLiteDB, TimestampRawColumn as _TimestampRawColumn, TransactionPg as _TransactionPg, TransactionSQLite as _TransactionSQLite, UUIDRawColumn as _UUIDRawColumn, VectorRawColumn as _VectorRawColumn } from '../types.js';
|
|
2
|
+
/**
|
|
3
|
+
* @deprecated - import from `@payloadcms/drizzle` instead
|
|
4
|
+
*/
|
|
5
|
+
export type BaseRawColumn = _BaseRawColumn;
|
|
6
|
+
/**
|
|
7
|
+
* @deprecated - import from `@payloadcms/drizzle` instead
|
|
8
|
+
*/
|
|
9
|
+
export type BuildDrizzleTable = _BuildDrizzleTable;
|
|
10
|
+
/**
|
|
11
|
+
* @deprecated - import from `@payloadcms/drizzle` instead
|
|
12
|
+
*/
|
|
13
|
+
export type BuildQueryJoinAliases = _BuildQueryJoinAliases;
|
|
14
|
+
/**
|
|
15
|
+
* @deprecated - import from `@payloadcms/drizzle` instead
|
|
16
|
+
*/
|
|
17
|
+
export type ChainedMethods = _ChainedMethods;
|
|
18
|
+
/**
|
|
19
|
+
* @deprecated - import from `@payloadcms/drizzle` instead
|
|
20
|
+
*/
|
|
21
|
+
export type ColumnToCodeConverter = _ColumnToCodeConverter;
|
|
22
|
+
/**
|
|
23
|
+
* @deprecated - import from `@payloadcms/drizzle` instead
|
|
24
|
+
*/
|
|
25
|
+
export type CountDistinct = _CountDistinct;
|
|
26
|
+
/**
|
|
27
|
+
* @deprecated - import from `@payloadcms/drizzle` instead
|
|
28
|
+
*/
|
|
29
|
+
export type CreateJSONQueryArgs = _CreateJSONQueryArgs;
|
|
30
|
+
/**
|
|
31
|
+
* @deprecated - import from `@payloadcms/drizzle` instead
|
|
32
|
+
*/
|
|
33
|
+
export type DeleteWhere = _DeleteWhere;
|
|
34
|
+
/**
|
|
35
|
+
* @deprecated - import from `@payloadcms/drizzle` instead
|
|
36
|
+
*/
|
|
37
|
+
export type DrizzleAdapter = _DrizzleAdapter;
|
|
38
|
+
/**
|
|
39
|
+
* @deprecated - import from `@payloadcms/drizzle` instead
|
|
40
|
+
*/
|
|
41
|
+
export type DrizzleTransaction = _DrizzleTransaction;
|
|
42
|
+
/**
|
|
43
|
+
* @deprecated - import from `@payloadcms/drizzle` instead
|
|
44
|
+
*/
|
|
45
|
+
export type DropDatabase = _DropDatabase;
|
|
46
|
+
/**
|
|
47
|
+
* @deprecated - import from `@payloadcms/drizzle` instead
|
|
48
|
+
*/
|
|
49
|
+
export type EnumRawColumn = _EnumRawColumn;
|
|
50
|
+
/**
|
|
51
|
+
* @deprecated - import from `@payloadcms/drizzle` instead
|
|
52
|
+
*/
|
|
53
|
+
export type Execute<T> = _Execute<T>;
|
|
54
|
+
/**
|
|
55
|
+
* @deprecated - import from `@payloadcms/drizzle` instead
|
|
56
|
+
*/
|
|
57
|
+
export type GenericColumn = _GenericColumn;
|
|
58
|
+
/**
|
|
59
|
+
* @deprecated - import from `@payloadcms/drizzle` instead
|
|
60
|
+
*/
|
|
61
|
+
export type GenericColumns<T> = _GenericColumns<T>;
|
|
62
|
+
/**
|
|
63
|
+
* @deprecated - import from `@payloadcms/drizzle` instead
|
|
64
|
+
*/
|
|
65
|
+
export type GenericPgColumn = _GenericPgColumn;
|
|
66
|
+
/**
|
|
67
|
+
* @deprecated - import from `@payloadcms/drizzle` instead
|
|
68
|
+
*/
|
|
69
|
+
export type GenericRelation = _GenericRelation;
|
|
70
|
+
/**
|
|
71
|
+
* @deprecated - import from `@payloadcms/drizzle` instead
|
|
72
|
+
*/
|
|
73
|
+
export type GenericTable = _GenericTable;
|
|
74
|
+
/**
|
|
75
|
+
* @deprecated - import from `@payloadcms/drizzle` instead
|
|
76
|
+
*/
|
|
77
|
+
export type IDType = _IDType;
|
|
78
|
+
/**
|
|
79
|
+
* @deprecated - import from `@payloadcms/drizzle` instead
|
|
80
|
+
*/
|
|
81
|
+
export type Insert = _Insert;
|
|
82
|
+
/**
|
|
83
|
+
* @deprecated - import from `@payloadcms/drizzle` instead
|
|
84
|
+
*/
|
|
85
|
+
export type IntegerRawColumn = _IntegerRawColumn;
|
|
86
|
+
/**
|
|
87
|
+
* @deprecated - import from `@payloadcms/drizzle` instead
|
|
88
|
+
*/
|
|
89
|
+
export type Migration = _Migration;
|
|
90
|
+
/**
|
|
91
|
+
* @deprecated - import from `@payloadcms/drizzle` instead
|
|
92
|
+
*/
|
|
93
|
+
export type PostgresDB = _PostgresDB;
|
|
94
|
+
/**
|
|
95
|
+
* @deprecated - import from `@payloadcms/drizzle` instead
|
|
96
|
+
*/
|
|
97
|
+
export type RawColumn = _RawColumn;
|
|
98
|
+
/**
|
|
99
|
+
* @deprecated - import from `@payloadcms/drizzle` instead
|
|
100
|
+
*/
|
|
101
|
+
export type RawForeignKey = _RawForeignKey;
|
|
102
|
+
/**
|
|
103
|
+
* @deprecated - import from `@payloadcms/drizzle` instead
|
|
104
|
+
*/
|
|
105
|
+
export type RawIndex = _RawIndex;
|
|
106
|
+
/**
|
|
107
|
+
* @deprecated - import from `@payloadcms/drizzle` instead
|
|
108
|
+
*/
|
|
109
|
+
export type RawRelation = _RawRelation;
|
|
110
|
+
/**
|
|
111
|
+
* @deprecated - import from `@payloadcms/drizzle` instead
|
|
112
|
+
*/
|
|
113
|
+
export type RawTable = _RawTable;
|
|
114
|
+
/**
|
|
115
|
+
* @deprecated - import from `@payloadcms/drizzle` instead
|
|
116
|
+
*/
|
|
117
|
+
export type RelationMap = _RelationMap;
|
|
118
|
+
/**
|
|
119
|
+
* @deprecated - import from `@payloadcms/drizzle` instead
|
|
120
|
+
*/
|
|
121
|
+
export type RequireDrizzleKit = _RequireDrizzleKit;
|
|
122
|
+
/**
|
|
123
|
+
* @deprecated - import from `@payloadcms/drizzle` instead
|
|
124
|
+
*/
|
|
125
|
+
export type SetColumnID = _SetColumnID;
|
|
126
|
+
/**
|
|
127
|
+
* @deprecated - import from `@payloadcms/drizzle` instead
|
|
128
|
+
*/
|
|
129
|
+
export type SQLiteDB = _SQLiteDB;
|
|
130
|
+
/**
|
|
131
|
+
* @deprecated - import from `@payloadcms/drizzle` instead
|
|
132
|
+
*/
|
|
133
|
+
export type TimestampRawColumn = _TimestampRawColumn;
|
|
134
|
+
/**
|
|
135
|
+
* @deprecated - import from `@payloadcms/drizzle` instead
|
|
136
|
+
*/
|
|
137
|
+
export type TransactionPg = _TransactionPg;
|
|
138
|
+
/**
|
|
139
|
+
* @deprecated - import from `@payloadcms/drizzle` instead
|
|
140
|
+
*/
|
|
141
|
+
export type TransactionSQLite = _TransactionSQLite;
|
|
142
|
+
/**
|
|
143
|
+
* @deprecated - import from `@payloadcms/drizzle` instead
|
|
144
|
+
*/
|
|
145
|
+
export type UUIDRawColumn = _UUIDRawColumn;
|
|
146
|
+
/**
|
|
147
|
+
* @deprecated - import from `@payloadcms/drizzle` instead
|
|
148
|
+
*/
|
|
149
|
+
export type VectorRawColumn = _VectorRawColumn;
|
|
150
|
+
//# sourceMappingURL=types-deprecated.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types-deprecated.d.ts","sourceRoot":"","sources":["../../src/exports/types-deprecated.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/exports/types-deprecated.ts"],"sourcesContent":["import type {\n BaseRawColumn as _BaseRawColumn,\n BuildDrizzleTable as _BuildDrizzleTable,\n BuildQueryJoinAliases as _BuildQueryJoinAliases,\n ChainedMethods as _ChainedMethods,\n ColumnToCodeConverter as _ColumnToCodeConverter,\n CountDistinct as _CountDistinct,\n CreateJSONQueryArgs as _CreateJSONQueryArgs,\n DeleteWhere as _DeleteWhere,\n DrizzleAdapter as _DrizzleAdapter,\n DrizzleTransaction as _DrizzleTransaction,\n DropDatabase as _DropDatabase,\n EnumRawColumn as _EnumRawColumn,\n Execute as _Execute,\n GenericColumn as _GenericColumn,\n GenericColumns as _GenericColumns,\n GenericPgColumn as _GenericPgColumn,\n GenericRelation as _GenericRelation,\n GenericTable as _GenericTable,\n IDType as _IDType,\n Insert as _Insert,\n IntegerRawColumn as _IntegerRawColumn,\n Migration as _Migration,\n PostgresDB as _PostgresDB,\n RawColumn as _RawColumn,\n RawForeignKey as _RawForeignKey,\n RawIndex as _RawIndex,\n RawRelation as _RawRelation,\n RawTable as _RawTable,\n RelationMap as _RelationMap,\n RequireDrizzleKit as _RequireDrizzleKit,\n SetColumnID as _SetColumnID,\n SQLiteDB as _SQLiteDB,\n TimestampRawColumn as _TimestampRawColumn,\n TransactionPg as _TransactionPg,\n TransactionSQLite as _TransactionSQLite,\n UUIDRawColumn as _UUIDRawColumn,\n VectorRawColumn as _VectorRawColumn,\n} from '../types.js'\n\n/**\n * @deprecated - import from `@payloadcms/drizzle` instead\n */\nexport type BaseRawColumn = _BaseRawColumn\n/**\n * @deprecated - import from `@payloadcms/drizzle` instead\n */\nexport type BuildDrizzleTable = _BuildDrizzleTable\n/**\n * @deprecated - import from `@payloadcms/drizzle` instead\n */\nexport type BuildQueryJoinAliases = _BuildQueryJoinAliases\n/**\n * @deprecated - import from `@payloadcms/drizzle` instead\n */\nexport type ChainedMethods = _ChainedMethods\n/**\n * @deprecated - import from `@payloadcms/drizzle` instead\n */\nexport type ColumnToCodeConverter = _ColumnToCodeConverter\n/**\n * @deprecated - import from `@payloadcms/drizzle` instead\n */\nexport type CountDistinct = _CountDistinct\n/**\n * @deprecated - import from `@payloadcms/drizzle` instead\n */\nexport type CreateJSONQueryArgs = _CreateJSONQueryArgs\n/**\n * @deprecated - import from `@payloadcms/drizzle` instead\n */\nexport type DeleteWhere = _DeleteWhere\n/**\n * @deprecated - import from `@payloadcms/drizzle` instead\n */\nexport type DrizzleAdapter = _DrizzleAdapter\n/**\n * @deprecated - import from `@payloadcms/drizzle` instead\n */\nexport type DrizzleTransaction = _DrizzleTransaction\n/**\n * @deprecated - import from `@payloadcms/drizzle` instead\n */\nexport type DropDatabase = _DropDatabase\n/**\n * @deprecated - import from `@payloadcms/drizzle` instead\n */\nexport type EnumRawColumn = _EnumRawColumn\n/**\n * @deprecated - import from `@payloadcms/drizzle` instead\n */\nexport type Execute<T> = _Execute<T>\n/**\n * @deprecated - import from `@payloadcms/drizzle` instead\n */\nexport type GenericColumn = _GenericColumn\n/**\n * @deprecated - import from `@payloadcms/drizzle` instead\n */\nexport type GenericColumns<T> = _GenericColumns<T>\n/**\n * @deprecated - import from `@payloadcms/drizzle` instead\n */\nexport type GenericPgColumn = _GenericPgColumn\n/**\n * @deprecated - import from `@payloadcms/drizzle` instead\n */\nexport type GenericRelation = _GenericRelation\n/**\n * @deprecated - import from `@payloadcms/drizzle` instead\n */\nexport type GenericTable = _GenericTable\n/**\n * @deprecated - import from `@payloadcms/drizzle` instead\n */\nexport type IDType = _IDType\n/**\n * @deprecated - import from `@payloadcms/drizzle` instead\n */\nexport type Insert = _Insert\n/**\n * @deprecated - import from `@payloadcms/drizzle` instead\n */\nexport type IntegerRawColumn = _IntegerRawColumn\n/**\n * @deprecated - import from `@payloadcms/drizzle` instead\n */\nexport type Migration = _Migration\n/**\n * @deprecated - import from `@payloadcms/drizzle` instead\n */\nexport type PostgresDB = _PostgresDB\n/**\n * @deprecated - import from `@payloadcms/drizzle` instead\n */\nexport type RawColumn = _RawColumn\n/**\n * @deprecated - import from `@payloadcms/drizzle` instead\n */\nexport type RawForeignKey = _RawForeignKey\n/**\n * @deprecated - import from `@payloadcms/drizzle` instead\n */\nexport type RawIndex = _RawIndex\n/**\n * @deprecated - import from `@payloadcms/drizzle` instead\n */\nexport type RawRelation = _RawRelation\n/**\n * @deprecated - import from `@payloadcms/drizzle` instead\n */\nexport type RawTable = _RawTable\n/**\n * @deprecated - import from `@payloadcms/drizzle` instead\n */\nexport type RelationMap = _RelationMap\n/**\n * @deprecated - import from `@payloadcms/drizzle` instead\n */\nexport type RequireDrizzleKit = _RequireDrizzleKit\n/**\n * @deprecated - import from `@payloadcms/drizzle` instead\n */\nexport type SetColumnID = _SetColumnID\n/**\n * @deprecated - import from `@payloadcms/drizzle` instead\n */\nexport type SQLiteDB = _SQLiteDB\n/**\n * @deprecated - import from `@payloadcms/drizzle` instead\n */\nexport type TimestampRawColumn = _TimestampRawColumn\n/**\n * @deprecated - import from `@payloadcms/drizzle` instead\n */\nexport type TransactionPg = _TransactionPg\n/**\n * @deprecated - import from `@payloadcms/drizzle` instead\n */\nexport type TransactionSQLite = _TransactionSQLite\n/**\n * @deprecated - import from `@payloadcms/drizzle` instead\n */\nexport type UUIDRawColumn = _UUIDRawColumn\n/**\n * @deprecated - import from `@payloadcms/drizzle` instead\n */\nexport type VectorRawColumn = _VectorRawColumn\n"],"names":[],"mappings":"AAwLA;;CAEC,GACD,WAA8C"}
|
|
@@ -1,3 +1,6 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @deprecated - will be removed in 4.0. Use query + $dynamic() instead: https://orm.drizzle.team/docs/dynamic-query-building
|
|
3
|
+
*/
|
|
1
4
|
export type ChainedMethods = {
|
|
2
5
|
args: unknown[];
|
|
3
6
|
method: string;
|
|
@@ -6,6 +9,8 @@ export type ChainedMethods = {
|
|
|
6
9
|
* Call and returning methods that would normally be chained together but cannot be because of control logic
|
|
7
10
|
* @param methods
|
|
8
11
|
* @param query
|
|
12
|
+
*
|
|
13
|
+
* @deprecated - will be removed in 4.0. Use query + $dynamic() instead: https://orm.drizzle.team/docs/dynamic-query-building
|
|
9
14
|
*/
|
|
10
15
|
declare const chainMethods: <T>({ methods, query }: {
|
|
11
16
|
methods: ChainedMethods;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chainMethods.d.ts","sourceRoot":"","sources":["../../src/find/chainMethods.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,cAAc,GAAG;IAC3B,IAAI,EAAE,OAAO,EAAE,CAAA;IACf,MAAM,EAAE,MAAM,CAAA;CACf,EAAE,CAAA;AAEH
|
|
1
|
+
{"version":3,"file":"chainMethods.d.ts","sourceRoot":"","sources":["../../src/find/chainMethods.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,MAAM,cAAc,GAAG;IAC3B,IAAI,EAAE,OAAO,EAAE,CAAA;IACf,MAAM,EAAE,MAAM,CAAA;CACf,EAAE,CAAA;AAEH;;;;;;GAMG;AACH,QAAA,MAAM,YAAY,GAAI,CAAC,sBAAsB;IAAE,OAAO,EAAE,cAAc,CAAC;IAAC,KAAK,EAAE,CAAC,CAAA;CAAE,KAAG,CAIpF,CAAA;AAED,OAAO,EAAE,YAAY,EAAE,CAAA"}
|
|
@@ -1,7 +1,11 @@
|
|
|
1
1
|
/**
|
|
2
|
+
* @deprecated - will be removed in 4.0. Use query + $dynamic() instead: https://orm.drizzle.team/docs/dynamic-query-building
|
|
3
|
+
*/ /**
|
|
2
4
|
* Call and returning methods that would normally be chained together but cannot be because of control logic
|
|
3
5
|
* @param methods
|
|
4
6
|
* @param query
|
|
7
|
+
*
|
|
8
|
+
* @deprecated - will be removed in 4.0. Use query + $dynamic() instead: https://orm.drizzle.team/docs/dynamic-query-building
|
|
5
9
|
*/ const chainMethods = ({ methods, query })=>{
|
|
6
10
|
return methods.reduce((query, { args, method })=>{
|
|
7
11
|
return query[method](...args);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/find/chainMethods.ts"],"sourcesContent":["
|
|
1
|
+
{"version":3,"sources":["../../src/find/chainMethods.ts"],"sourcesContent":["/**\n * @deprecated - will be removed in 4.0. Use query + $dynamic() instead: https://orm.drizzle.team/docs/dynamic-query-building\n */\nexport type ChainedMethods = {\n args: unknown[]\n method: string\n}[]\n\n/**\n * Call and returning methods that would normally be chained together but cannot be because of control logic\n * @param methods\n * @param query\n *\n * @deprecated - will be removed in 4.0. Use query + $dynamic() instead: https://orm.drizzle.team/docs/dynamic-query-building\n */\nconst chainMethods = <T>({ methods, query }: { methods: ChainedMethods; query: T }): T => {\n return methods.reduce((query, { args, method }) => {\n return query[method](...args)\n }, query)\n}\n\nexport { chainMethods }\n"],"names":["chainMethods","methods","query","reduce","args","method"],"mappings":"AAAA;;CAEC,GAMD;;;;;;CAMC,GACD,MAAMA,eAAe,CAAI,EAAEC,OAAO,EAAEC,KAAK,EAAyC;IAChF,OAAOD,QAAQE,MAAM,CAAC,CAACD,OAAO,EAAEE,IAAI,EAAEC,MAAM,EAAE;QAC5C,OAAOH,KAAK,CAACG,OAAO,IAAID;IAC1B,GAAGF;AACL;AAEA,SAASF,YAAY,GAAE"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"findMany.d.ts","sourceRoot":"","sources":["../../src/find/findMany.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,cAAc,EAAc,MAAM,SAAS,CAAA;AAInE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAA;
|
|
1
|
+
{"version":3,"file":"findMany.d.ts","sourceRoot":"","sources":["../../src/find/findMany.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,cAAc,EAAc,MAAM,SAAS,CAAA;AAInE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAA;AAQjD,KAAK,IAAI,GAAG;IACV,OAAO,EAAE,cAAc,CAAA;IACvB,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,MAAM,EAAE,cAAc,EAAE,CAAA;IACxB,SAAS,EAAE,MAAM,CAAA;IACjB,QAAQ,CAAC,EAAE,OAAO,CAAA;CACnB,GAAG,IAAI,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAA;AAEhC,eAAO,MAAM,QAAQ,oLAiBlB,IAAI;;;;;;;;;;;EA0IN,CAAA"}
|
package/dist/find/findMany.js
CHANGED
|
@@ -26,15 +26,6 @@ export const findMany = async function find({ adapter, collectionSlug, draftsEna
|
|
|
26
26
|
});
|
|
27
27
|
const orderedIDMap = {};
|
|
28
28
|
let orderedIDs;
|
|
29
|
-
const selectDistinctMethods = [];
|
|
30
|
-
if (orderBy) {
|
|
31
|
-
selectDistinctMethods.push({
|
|
32
|
-
args: [
|
|
33
|
-
()=>orderBy.map(({ column, order })=>order(column))
|
|
34
|
-
],
|
|
35
|
-
method: 'orderBy'
|
|
36
|
-
});
|
|
37
|
-
}
|
|
38
29
|
const findManyArgs = buildFindManyArgs({
|
|
39
30
|
adapter,
|
|
40
31
|
collectionSlug,
|
|
@@ -48,23 +39,16 @@ export const findMany = async function find({ adapter, collectionSlug, draftsEna
|
|
|
48
39
|
tableName,
|
|
49
40
|
versions
|
|
50
41
|
});
|
|
51
|
-
selectDistinctMethods.push({
|
|
52
|
-
args: [
|
|
53
|
-
offset
|
|
54
|
-
],
|
|
55
|
-
method: 'offset'
|
|
56
|
-
});
|
|
57
|
-
selectDistinctMethods.push({
|
|
58
|
-
args: [
|
|
59
|
-
limit
|
|
60
|
-
],
|
|
61
|
-
method: 'limit'
|
|
62
|
-
});
|
|
63
42
|
const selectDistinctResult = await selectDistinct({
|
|
64
43
|
adapter,
|
|
65
|
-
chainedMethods: selectDistinctMethods,
|
|
66
44
|
db,
|
|
67
45
|
joins,
|
|
46
|
+
query: ({ query })=>{
|
|
47
|
+
if (orderBy) {
|
|
48
|
+
query = query.orderBy(()=>orderBy.map(({ column, order })=>order(column)));
|
|
49
|
+
}
|
|
50
|
+
return query.offset(offset).limit(limit);
|
|
51
|
+
},
|
|
68
52
|
selectFields,
|
|
69
53
|
tableName,
|
|
70
54
|
where
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/find/findMany.ts"],"sourcesContent":["import type { FindArgs, FlattenedField, TypeWithID } from 'payload'\n\nimport { inArray } from 'drizzle-orm'\n\nimport type { DrizzleAdapter } from '../types.js'\
|
|
1
|
+
{"version":3,"sources":["../../src/find/findMany.ts"],"sourcesContent":["import type { FindArgs, FlattenedField, TypeWithID } from 'payload'\n\nimport { inArray } from 'drizzle-orm'\n\nimport type { DrizzleAdapter } from '../types.js'\n\nimport buildQuery from '../queries/buildQuery.js'\nimport { selectDistinct } from '../queries/selectDistinct.js'\nimport { transform } from '../transform/read/index.js'\nimport { getTransaction } from '../utilities/getTransaction.js'\nimport { buildFindManyArgs } from './buildFindManyArgs.js'\n\ntype Args = {\n adapter: DrizzleAdapter\n collectionSlug?: string\n fields: FlattenedField[]\n tableName: string\n versions?: boolean\n} & Omit<FindArgs, 'collection'>\n\nexport const findMany = async function find({\n adapter,\n collectionSlug,\n draftsEnabled,\n fields,\n joins: joinQuery,\n limit: limitArg,\n locale,\n page = 1,\n pagination,\n req,\n select,\n skip,\n sort,\n tableName,\n versions,\n where: whereArg,\n}: Args) {\n const db = await getTransaction(adapter, req)\n let limit = limitArg\n let totalDocs: number\n let totalPages: number\n let hasPrevPage: boolean\n let hasNextPage: boolean\n let pagingCounter: number\n const offset = skip || (page - 1) * limit\n\n if (limit === 0) {\n limit = undefined\n }\n\n const { joins, orderBy, selectFields, where } = buildQuery({\n adapter,\n fields,\n locale,\n sort,\n tableName,\n where: whereArg,\n })\n\n const orderedIDMap: Record<number | string, number> = {}\n let orderedIDs: (number | string)[]\n\n const findManyArgs = buildFindManyArgs({\n adapter,\n collectionSlug,\n depth: 0,\n draftsEnabled,\n fields,\n joinQuery,\n joins,\n locale,\n select,\n tableName,\n versions,\n })\n const selectDistinctResult = await selectDistinct({\n adapter,\n db,\n joins,\n query: ({ query }) => {\n if (orderBy) {\n query = query.orderBy(() => orderBy.map(({ column, order }) => order(column)))\n }\n return query.offset(offset).limit(limit)\n },\n selectFields,\n tableName,\n where,\n })\n\n if (selectDistinctResult) {\n if (selectDistinctResult.length === 0) {\n return {\n docs: [],\n hasNextPage: false,\n hasPrevPage: false,\n limit,\n nextPage: null,\n page: 1,\n pagingCounter: 0,\n prevPage: null,\n totalDocs: 0,\n totalPages: 0,\n }\n } else {\n // set the id in an object for sorting later\n selectDistinctResult.forEach(({ id }, i) => {\n orderedIDMap[id] = i\n })\n orderedIDs = Object.keys(orderedIDMap)\n findManyArgs.where = inArray(adapter.tables[tableName].id, orderedIDs)\n }\n } else {\n findManyArgs.limit = limit\n findManyArgs.offset = offset\n findManyArgs.orderBy = () => orderBy.map(({ column, order }) => order(column))\n\n if (where) {\n findManyArgs.where = where\n }\n }\n\n const findPromise = db.query[tableName].findMany(findManyArgs)\n\n if (pagination !== false && (orderedIDs ? orderedIDs?.length <= limit : true)) {\n totalDocs = await adapter.countDistinct({\n db,\n joins,\n tableName,\n where,\n })\n\n totalPages = typeof limit === 'number' && limit !== 0 ? Math.ceil(totalDocs / limit) : 1\n hasPrevPage = page > 1\n hasNextPage = totalPages > page\n pagingCounter = (page - 1) * limit + 1\n }\n\n const rawDocs = await findPromise\n // sort rawDocs from selectQuery\n if (Object.keys(orderedIDMap).length > 0) {\n rawDocs.sort((a, b) => orderedIDMap[a.id] - orderedIDMap[b.id])\n }\n\n if (pagination === false || !totalDocs) {\n totalDocs = rawDocs.length\n totalPages = 1\n pagingCounter = 1\n hasPrevPage = false\n hasNextPage = false\n }\n\n const docs = rawDocs.map((data: TypeWithID) => {\n return transform({\n adapter,\n config: adapter.payload.config,\n data,\n fields,\n joinQuery,\n })\n })\n\n return {\n docs,\n hasNextPage,\n hasPrevPage,\n limit: limitArg,\n nextPage: hasNextPage ? page + 1 : null,\n page,\n pagingCounter,\n prevPage: hasPrevPage ? page - 1 : null,\n totalDocs,\n totalPages,\n }\n}\n"],"names":["inArray","buildQuery","selectDistinct","transform","getTransaction","buildFindManyArgs","findMany","find","adapter","collectionSlug","draftsEnabled","fields","joins","joinQuery","limit","limitArg","locale","page","pagination","req","select","skip","sort","tableName","versions","where","whereArg","db","totalDocs","totalPages","hasPrevPage","hasNextPage","pagingCounter","offset","undefined","orderBy","selectFields","orderedIDMap","orderedIDs","findManyArgs","depth","selectDistinctResult","query","map","column","order","length","docs","nextPage","prevPage","forEach","id","i","Object","keys","tables","findPromise","countDistinct","Math","ceil","rawDocs","a","b","data","config","payload"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"traverseFields.d.ts","sourceRoot":"","sources":["../../src/find/traverseFields.ts"],"names":[],"mappings":"AAIA,OAAO,EAIL,KAAK,cAAc,EAEnB,KAAK,SAAS,EACd,KAAK,UAAU,EACf,KAAK,UAAU,EAEhB,MAAM,SAAS,CAAA;AAIhB,OAAO,KAAK,EAAE,qBAAqB,
|
|
1
|
+
{"version":3,"file":"traverseFields.d.ts","sourceRoot":"","sources":["../../src/find/traverseFields.ts"],"names":[],"mappings":"AAIA,OAAO,EAIL,KAAK,cAAc,EAEnB,KAAK,SAAS,EACd,KAAK,UAAU,EACf,KAAK,UAAU,EAEhB,MAAM,SAAS,CAAA;AAIhB,OAAO,KAAK,EAAE,qBAAqB,EAAE,cAAc,EAAE,MAAM,aAAa,CAAA;AACxE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAA;AA8CpD,KAAK,iBAAiB,GAAG;IACvB,QAAQ,EAAE,MAAM,CAAA;IAChB,OAAO,EAAE,cAAc,CAAA;IACvB,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,WAAW,EAAE,MAAM,CAAA;IACnB,gBAAgB,EAAE,MAAM,CAAA;IACxB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,MAAM,EAAE,cAAc,EAAE,CAAA;IACxB,SAAS,EAAE,SAAS,CAAA;IACpB,KAAK,CAAC,EAAE,qBAAqB,CAAA;IAC7B,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,iBAAiB,CAAC,EAAE,OAAO,CAAA;IAC3B,IAAI,EAAE,MAAM,CAAA;IACZ,MAAM,CAAC,EAAE,UAAU,CAAA;IACnB,uBAAuB,CAAC,EAAE,OAAO,CAAA;IACjC,UAAU,CAAC,EAAE,UAAU,CAAA;IACvB,SAAS,EAAE,MAAM,CAAA;IACjB,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IACrC,iBAAiB,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,gBAAgB,EAAE;QAChB,OAAO,CAAC,EAAE,OAAO,CAAA;QACjB,IAAI,CAAC,EAAE,OAAO,CAAA;QACd,KAAK,CAAC,EAAE,OAAO,CAAA;KAChB,CAAA;CACF,CAAA;AAED,eAAO,MAAM,cAAc,gRAsBxB,iBAAiB,4BA2qBnB,CAAA"}
|
|
@@ -8,7 +8,6 @@ import { operatorMap } from '../queries/operatorMap.js';
|
|
|
8
8
|
import { getNameFromDrizzleTable } from '../utilities/getNameFromDrizzleTable.js';
|
|
9
9
|
import { jsonAggBuildObject } from '../utilities/json.js';
|
|
10
10
|
import { rawConstraint } from '../utilities/rawConstraint.js';
|
|
11
|
-
import { chainMethods } from './chainMethods.js';
|
|
12
11
|
const flattenAllWherePaths = (where, paths)=>{
|
|
13
12
|
for(const k in where){
|
|
14
13
|
if ([
|
|
@@ -403,36 +402,6 @@ export const traverseFields = ({ _locales, adapter, collectionSlug, currentArgs,
|
|
|
403
402
|
tableName: joinCollectionTableName,
|
|
404
403
|
where: joinQueryWhere
|
|
405
404
|
});
|
|
406
|
-
const chainedMethods = [];
|
|
407
|
-
joins.forEach(({ type, condition, table })=>{
|
|
408
|
-
chainedMethods.push({
|
|
409
|
-
args: [
|
|
410
|
-
table,
|
|
411
|
-
condition
|
|
412
|
-
],
|
|
413
|
-
method: type ?? 'leftJoin'
|
|
414
|
-
});
|
|
415
|
-
});
|
|
416
|
-
if (page && limit !== 0) {
|
|
417
|
-
const offset = (page - 1) * limit - 1;
|
|
418
|
-
if (offset > 0) {
|
|
419
|
-
chainedMethods.push({
|
|
420
|
-
args: [
|
|
421
|
-
offset
|
|
422
|
-
],
|
|
423
|
-
method: 'offset'
|
|
424
|
-
});
|
|
425
|
-
}
|
|
426
|
-
}
|
|
427
|
-
if (limit !== 0) {
|
|
428
|
-
chainedMethods.push({
|
|
429
|
-
args: [
|
|
430
|
-
limit
|
|
431
|
-
],
|
|
432
|
-
method: 'limit'
|
|
433
|
-
});
|
|
434
|
-
}
|
|
435
|
-
const db = adapter.drizzle;
|
|
436
405
|
for(let key in selectFields){
|
|
437
406
|
const val = selectFields[key];
|
|
438
407
|
if (val.table && getNameFromDrizzleTable(val.table) === joinCollectionTableName) {
|
|
@@ -444,10 +413,20 @@ export const traverseFields = ({ _locales, adapter, collectionSlug, currentArgs,
|
|
|
444
413
|
if (useDrafts) {
|
|
445
414
|
selectFields.parent = newAliasTable.parent;
|
|
446
415
|
}
|
|
447
|
-
|
|
448
|
-
|
|
449
|
-
query
|
|
450
|
-
})
|
|
416
|
+
let query = db.select(selectFields).from(newAliasTable).where(subQueryWhere).orderBy(()=>orderBy.map(({ column, order })=>order(column))).$dynamic();
|
|
417
|
+
joins.forEach(({ type, condition, table })=>{
|
|
418
|
+
query = query[type ?? 'leftJoin'](table, condition);
|
|
419
|
+
});
|
|
420
|
+
if (page && limit !== 0) {
|
|
421
|
+
const offset = (page - 1) * limit - 1;
|
|
422
|
+
if (offset > 0) {
|
|
423
|
+
query = query.offset(offset);
|
|
424
|
+
}
|
|
425
|
+
}
|
|
426
|
+
if (limit !== 0) {
|
|
427
|
+
query = query.limit(limit);
|
|
428
|
+
}
|
|
429
|
+
const subQuery = query.as(subQueryAlias);
|
|
451
430
|
if (shouldCount) {
|
|
452
431
|
currentArgs.extras[`${columnName}_count`] = sql`${db.select({
|
|
453
432
|
count: count()
|