@payloadcms/drizzle 4.0.0-internal.f05c47f → 4.0.0-internal.f15737c

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.
Files changed (205) hide show
  1. package/dist/count.d.ts.map +1 -1
  2. package/dist/count.js +2 -8
  3. package/dist/count.js.map +1 -1
  4. package/dist/createGlobalVersion.d.ts.map +1 -1
  5. package/dist/createGlobalVersion.js +2 -15
  6. package/dist/createGlobalVersion.js.map +1 -1
  7. package/dist/createVersion.d.ts.map +1 -1
  8. package/dist/createVersion.js +1 -12
  9. package/dist/createVersion.js.map +1 -1
  10. package/dist/deleteOne.d.ts.map +1 -1
  11. package/dist/deleteOne.js +1 -18
  12. package/dist/deleteOne.js.map +1 -1
  13. package/dist/exports/postgres.d.ts +3 -0
  14. package/dist/exports/postgres.d.ts.map +1 -1
  15. package/dist/exports/postgres.js +3 -0
  16. package/dist/exports/postgres.js.map +1 -1
  17. package/dist/exports/sqlite.d.ts +1 -0
  18. package/dist/exports/sqlite.d.ts.map +1 -1
  19. package/dist/exports/sqlite.js +1 -0
  20. package/dist/exports/sqlite.js.map +1 -1
  21. package/dist/find/buildFindManyArgs.d.ts +2 -3
  22. package/dist/find/buildFindManyArgs.d.ts.map +1 -1
  23. package/dist/find/buildFindManyArgs.js +1 -2
  24. package/dist/find/buildFindManyArgs.js.map +1 -1
  25. package/dist/find/buildPolymorphicJoinQuery.d.ts +38 -0
  26. package/dist/find/buildPolymorphicJoinQuery.d.ts.map +1 -0
  27. package/dist/find/buildPolymorphicJoinQuery.js +135 -0
  28. package/dist/find/buildPolymorphicJoinQuery.js.map +1 -0
  29. package/dist/find/buildPolymorphicJoinWhere.d.ts +20 -0
  30. package/dist/find/buildPolymorphicJoinWhere.d.ts.map +1 -0
  31. package/dist/find/buildPolymorphicJoinWhere.js +301 -0
  32. package/dist/find/buildPolymorphicJoinWhere.js.map +1 -0
  33. package/dist/find/createPolymorphicJoinWherePlan.d.ts +37 -0
  34. package/dist/find/createPolymorphicJoinWherePlan.d.ts.map +1 -0
  35. package/dist/find/createPolymorphicJoinWherePlan.js +191 -0
  36. package/dist/find/createPolymorphicJoinWherePlan.js.map +1 -0
  37. package/dist/find/findMany.d.ts.map +1 -1
  38. package/dist/find/findMany.js +0 -1
  39. package/dist/find/findMany.js.map +1 -1
  40. package/dist/find/traverseFields.d.ts +2 -3
  41. package/dist/find/traverseFields.d.ts.map +1 -1
  42. package/dist/find/traverseFields.js +20 -215
  43. package/dist/find/traverseFields.js.map +1 -1
  44. package/dist/find.d.ts.map +1 -1
  45. package/dist/find.js +3 -17
  46. package/dist/find.js.map +1 -1
  47. package/dist/findGlobal.d.ts.map +1 -1
  48. package/dist/findGlobal.js +4 -16
  49. package/dist/findGlobal.js.map +1 -1
  50. package/dist/findGlobalVersions.js +3 -8
  51. package/dist/findGlobalVersions.js.map +1 -1
  52. package/dist/findOne.d.ts +1 -1
  53. package/dist/findOne.d.ts.map +1 -1
  54. package/dist/findOne.js +2 -15
  55. package/dist/findOne.js.map +1 -1
  56. package/dist/index.d.ts +4 -2
  57. package/dist/index.d.ts.map +1 -1
  58. package/dist/index.js +2 -0
  59. package/dist/index.js.map +1 -1
  60. package/dist/migrate.d.ts.map +1 -1
  61. package/dist/migrate.js +41 -15
  62. package/dist/migrate.js.map +1 -1
  63. package/dist/migrateDown.d.ts +2 -1
  64. package/dist/migrateDown.d.ts.map +1 -1
  65. package/dist/migrateDown.js +17 -4
  66. package/dist/migrateDown.js.map +1 -1
  67. package/dist/migrateFresh.d.ts +4 -2
  68. package/dist/migrateFresh.d.ts.map +1 -1
  69. package/dist/migrateFresh.js +26 -9
  70. package/dist/migrateFresh.js.map +1 -1
  71. package/dist/migrateRefresh.d.ts +2 -1
  72. package/dist/migrateRefresh.d.ts.map +1 -1
  73. package/dist/migrateRefresh.js +20 -5
  74. package/dist/migrateRefresh.js.map +1 -1
  75. package/dist/migrateReset.d.ts +2 -1
  76. package/dist/migrateReset.d.ts.map +1 -1
  77. package/dist/migrateReset.js +18 -4
  78. package/dist/migrateReset.js.map +1 -1
  79. package/dist/migrateStatus.d.ts +2 -1
  80. package/dist/migrateStatus.d.ts.map +1 -1
  81. package/dist/migrateStatus.js +11 -6
  82. package/dist/migrateStatus.js.map +1 -1
  83. package/dist/postgres/createJSONQuery/index.js +3 -3
  84. package/dist/postgres/createJSONQuery/index.js.map +1 -1
  85. package/dist/postgres/init.d.ts.map +1 -1
  86. package/dist/postgres/init.js +6 -0
  87. package/dist/postgres/init.js.map +1 -1
  88. package/dist/postgres/predefinedMigrations/sizes-to-variants/index.d.ts +35 -0
  89. package/dist/postgres/predefinedMigrations/sizes-to-variants/index.d.ts.map +1 -0
  90. package/dist/postgres/predefinedMigrations/sizes-to-variants/index.js +185 -0
  91. package/dist/postgres/predefinedMigrations/sizes-to-variants/index.js.map +1 -0
  92. package/dist/postgres/predefinedMigrations/v2-v3/fetchAndResave/index.d.ts.map +1 -1
  93. package/dist/postgres/predefinedMigrations/v2-v3/fetchAndResave/index.js +8 -4
  94. package/dist/postgres/predefinedMigrations/v2-v3/fetchAndResave/index.js.map +1 -1
  95. package/dist/postgres/predefinedMigrations/v2-v3/index.js +1 -1
  96. package/dist/postgres/predefinedMigrations/v2-v3/index.js.map +1 -1
  97. package/dist/postgres/query/assertOperatorHandlerExtensionsInstalled.d.ts +15 -0
  98. package/dist/postgres/query/assertOperatorHandlerExtensionsInstalled.d.ts.map +1 -0
  99. package/dist/postgres/query/assertOperatorHandlerExtensionsInstalled.js +25 -0
  100. package/dist/postgres/query/assertOperatorHandlerExtensionsInstalled.js.map +1 -0
  101. package/dist/postgres/query/postgresUnaccent.d.ts +13 -0
  102. package/dist/postgres/query/postgresUnaccent.d.ts.map +1 -0
  103. package/dist/postgres/query/postgresUnaccent.js +40 -0
  104. package/dist/postgres/query/postgresUnaccent.js.map +1 -0
  105. package/dist/postgres/types.d.ts +13 -2
  106. package/dist/postgres/types.d.ts.map +1 -1
  107. package/dist/postgres/types.js.map +1 -1
  108. package/dist/queries/buildOperatorConstraint.d.ts +22 -0
  109. package/dist/queries/buildOperatorConstraint.d.ts.map +1 -0
  110. package/dist/queries/buildOperatorConstraint.js +63 -0
  111. package/dist/queries/buildOperatorConstraint.js.map +1 -0
  112. package/dist/queries/getTableColumnFromPath.d.ts +12 -3
  113. package/dist/queries/getTableColumnFromPath.d.ts.map +1 -1
  114. package/dist/queries/getTableColumnFromPath.js +59 -27
  115. package/dist/queries/getTableColumnFromPath.js.map +1 -1
  116. package/dist/queries/operatorMap.d.ts +7 -3
  117. package/dist/queries/operatorMap.d.ts.map +1 -1
  118. package/dist/queries/operatorMap.js.map +1 -1
  119. package/dist/queries/parseParams.d.ts.map +1 -1
  120. package/dist/queries/parseParams.js +262 -10
  121. package/dist/queries/parseParams.js.map +1 -1
  122. package/dist/queries/resolveRelationshipPath.d.ts +36 -0
  123. package/dist/queries/resolveRelationshipPath.d.ts.map +1 -0
  124. package/dist/queries/resolveRelationshipPath.js +66 -0
  125. package/dist/queries/resolveRelationshipPath.js.map +1 -0
  126. package/dist/queries/validateOperatorHandlers.d.ts +8 -0
  127. package/dist/queries/validateOperatorHandlers.d.ts.map +1 -0
  128. package/dist/queries/validateOperatorHandlers.js +30 -0
  129. package/dist/queries/validateOperatorHandlers.js.map +1 -0
  130. package/dist/queryDrafts.d.ts.map +1 -1
  131. package/dist/queryDrafts.js +3 -10
  132. package/dist/queryDrafts.js.map +1 -1
  133. package/dist/schema/build.d.ts.map +1 -1
  134. package/dist/schema/build.js +4 -5
  135. package/dist/schema/build.js.map +1 -1
  136. package/dist/sqlite/createJSONQuery/convertPathToJSONTraversal.js +3 -2
  137. package/dist/sqlite/createJSONQuery/convertPathToJSONTraversal.js.map +1 -1
  138. package/dist/sqlite/createJSONQuery/index.d.ts.map +1 -1
  139. package/dist/sqlite/createJSONQuery/index.js +6 -5
  140. package/dist/sqlite/createJSONQuery/index.js.map +1 -1
  141. package/dist/sqlite/insert.d.ts.map +1 -1
  142. package/dist/sqlite/insert.js +4 -1
  143. package/dist/sqlite/insert.js.map +1 -1
  144. package/dist/sqlite/predefinedMigrations/sizes-to-variants/index.d.ts +15 -0
  145. package/dist/sqlite/predefinedMigrations/sizes-to-variants/index.d.ts.map +1 -0
  146. package/dist/sqlite/predefinedMigrations/sizes-to-variants/index.js +114 -0
  147. package/dist/sqlite/predefinedMigrations/sizes-to-variants/index.js.map +1 -0
  148. package/dist/transform/write/traverseFields.d.ts.map +1 -1
  149. package/dist/transform/write/traverseFields.js +8 -14
  150. package/dist/transform/write/traverseFields.js.map +1 -1
  151. package/dist/types.d.ts +50 -2
  152. package/dist/types.d.ts.map +1 -1
  153. package/dist/types.js.map +1 -1
  154. package/dist/updateGlobal.d.ts +1 -1
  155. package/dist/updateGlobal.d.ts.map +1 -1
  156. package/dist/updateGlobal.js +3 -30
  157. package/dist/updateGlobal.js.map +1 -1
  158. package/dist/updateOne.d.ts.map +1 -1
  159. package/dist/updateOne.js +43 -9
  160. package/dist/updateOne.js.map +1 -1
  161. package/dist/upsertRow/index.d.ts +1 -1
  162. package/dist/upsertRow/index.d.ts.map +1 -1
  163. package/dist/upsertRow/index.js +25 -5
  164. package/dist/upsertRow/index.js.map +1 -1
  165. package/dist/utilities/buildCreateMigration.d.ts.map +1 -1
  166. package/dist/utilities/buildCreateMigration.js +12 -8
  167. package/dist/utilities/buildCreateMigration.js.map +1 -1
  168. package/dist/utilities/buildDynamicPredefinedSizesToVariantsMigration.d.ts +15 -0
  169. package/dist/utilities/buildDynamicPredefinedSizesToVariantsMigration.d.ts.map +1 -0
  170. package/dist/utilities/buildDynamicPredefinedSizesToVariantsMigration.js +110 -0
  171. package/dist/utilities/buildDynamicPredefinedSizesToVariantsMigration.js.map +1 -0
  172. package/dist/utilities/buildForeignKeyName.d.ts.map +1 -1
  173. package/dist/utilities/buildForeignKeyName.js +3 -2
  174. package/dist/utilities/buildForeignKeyName.js.map +1 -1
  175. package/dist/utilities/buildIndexName.d.ts.map +1 -1
  176. package/dist/utilities/buildIndexName.js +3 -2
  177. package/dist/utilities/buildIndexName.js.map +1 -1
  178. package/dist/utilities/checkTruncatedIdentifiers.d.ts +13 -0
  179. package/dist/utilities/checkTruncatedIdentifiers.d.ts.map +1 -0
  180. package/dist/utilities/checkTruncatedIdentifiers.js +56 -0
  181. package/dist/utilities/checkTruncatedIdentifiers.js.map +1 -0
  182. package/dist/utilities/createSchemaGenerator.d.ts.map +1 -1
  183. package/dist/utilities/createSchemaGenerator.js +3 -0
  184. package/dist/utilities/createSchemaGenerator.js.map +1 -1
  185. package/dist/utilities/getSizesToVariantsRenames.d.ts +54 -0
  186. package/dist/utilities/getSizesToVariantsRenames.d.ts.map +1 -0
  187. package/dist/utilities/getSizesToVariantsRenames.js +249 -0
  188. package/dist/utilities/getSizesToVariantsRenames.js.map +1 -0
  189. package/dist/utilities/parseJSONPathSegment.d.ts +9 -0
  190. package/dist/utilities/parseJSONPathSegment.d.ts.map +1 -0
  191. package/dist/utilities/parseJSONPathSegment.js +17 -0
  192. package/dist/utilities/parseJSONPathSegment.js.map +1 -0
  193. package/dist/utilities/validateIdentifierLength.d.ts +5 -0
  194. package/dist/utilities/validateIdentifierLength.d.ts.map +1 -1
  195. package/dist/utilities/validateIdentifierLength.js +4 -0
  196. package/dist/utilities/validateIdentifierLength.js.map +1 -1
  197. package/package.json +3 -3
  198. package/dist/schema/buildRawSchema.spec.js +0 -230
  199. package/dist/schema/buildRawSchema.spec.js.map +0 -1
  200. package/dist/upsertRow/handleUpsertError.spec.js +0 -42
  201. package/dist/upsertRow/handleUpsertError.spec.js.map +0 -1
  202. package/dist/utilities/isValidStringID.spec.js +0 -15
  203. package/dist/utilities/isValidStringID.spec.js.map +0 -1
  204. package/dist/utilities/validateIdentifierLength.spec.js +0 -19
  205. package/dist/utilities/validateIdentifierLength.spec.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"count.d.ts","sourceRoot":"","sources":["../src/count.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAA6B,MAAM,SAAS,CAAA;AAU/D,eAAO,MAAM,KAAK,EAAE,KA+BnB,CAAA"}
1
+ {"version":3,"file":"count.d.ts","sourceRoot":"","sources":["../src/count.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAA6B,MAAM,SAAS,CAAA;AAS/D,eAAO,MAAM,KAAK,EAAE,KA0BnB,CAAA"}
package/dist/count.js CHANGED
@@ -1,8 +1,7 @@
1
- import { resolveBranchQuery } from 'payload';
2
1
  import toSnakeCase from 'to-snake-case';
3
2
  import { buildQuery } from './queries/buildQuery.js';
4
3
  import { getTransaction } from './utilities/getTransaction.js';
5
- export const count = async function count({ branch, collection, locale, req, where: whereArg }) {
4
+ export const count = async function count({ collection, locale, req, where: whereArg }) {
6
5
  const collectionConfig = this.payload.collections[collection].config;
7
6
  const tableName = this.tableNameMap.get(toSnakeCase(collectionConfig.slug));
8
7
  const { joins, where } = buildQuery({
@@ -10,12 +9,7 @@ export const count = async function count({ branch, collection, locale, req, whe
10
9
  fields: collectionConfig.flattenedFields,
11
10
  locale,
12
11
  tableName,
13
- where: await resolveBranchQuery({
14
- branch,
15
- collectionSlug: collectionConfig.slug,
16
- req,
17
- where: whereArg
18
- })
12
+ where: whereArg
19
13
  });
20
14
  const db = await getTransaction(this, req);
21
15
  const countResult = await this.countDistinct({
package/dist/count.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/count.ts"],"sourcesContent":["import type { Count, SanitizedCollectionConfig } from 'payload'\n\nimport { resolveBranchQuery } from 'payload'\nimport toSnakeCase from 'to-snake-case'\n\nimport type { DrizzleAdapter } from './types.js'\n\nimport { buildQuery } from './queries/buildQuery.js'\nimport { getTransaction } from './utilities/getTransaction.js'\n\nexport const count: Count = async function count(\n this: DrizzleAdapter,\n { branch, collection, locale, req, where: whereArg },\n) {\n const collectionConfig: SanitizedCollectionConfig = this.payload.collections[collection].config\n\n const tableName = this.tableNameMap.get(toSnakeCase(collectionConfig.slug))\n\n const { joins, where } = buildQuery({\n adapter: this,\n fields: collectionConfig.flattenedFields,\n locale,\n tableName,\n where: await resolveBranchQuery({\n branch,\n collectionSlug: collectionConfig.slug,\n req,\n where: whereArg,\n }),\n })\n\n const db = await getTransaction(this, req)\n\n const countResult = await this.countDistinct({\n db,\n joins,\n tableName,\n where,\n })\n\n return { totalDocs: countResult }\n}\n"],"names":["resolveBranchQuery","toSnakeCase","buildQuery","getTransaction","count","branch","collection","locale","req","where","whereArg","collectionConfig","payload","collections","config","tableName","tableNameMap","get","slug","joins","adapter","fields","flattenedFields","collectionSlug","db","countResult","countDistinct","totalDocs"],"mappings":"AAEA,SAASA,kBAAkB,QAAQ,UAAS;AAC5C,OAAOC,iBAAiB,gBAAe;AAIvC,SAASC,UAAU,QAAQ,0BAAyB;AACpD,SAASC,cAAc,QAAQ,gCAA+B;AAE9D,OAAO,MAAMC,QAAe,eAAeA,MAEzC,EAAEC,MAAM,EAAEC,UAAU,EAAEC,MAAM,EAAEC,GAAG,EAAEC,OAAOC,QAAQ,EAAE;IAEpD,MAAMC,mBAA8C,IAAI,CAACC,OAAO,CAACC,WAAW,CAACP,WAAW,CAACQ,MAAM;IAE/F,MAAMC,YAAY,IAAI,CAACC,YAAY,CAACC,GAAG,CAAChB,YAAYU,iBAAiBO,IAAI;IAEzE,MAAM,EAAEC,KAAK,EAAEV,KAAK,EAAE,GAAGP,WAAW;QAClCkB,SAAS,IAAI;QACbC,QAAQV,iBAAiBW,eAAe;QACxCf;QACAQ;QACAN,OAAO,MAAMT,mBAAmB;YAC9BK;YACAkB,gBAAgBZ,iBAAiBO,IAAI;YACrCV;YACAC,OAAOC;QACT;IACF;IAEA,MAAMc,KAAK,MAAMrB,eAAe,IAAI,EAAEK;IAEtC,MAAMiB,cAAc,MAAM,IAAI,CAACC,aAAa,CAAC;QAC3CF;QACAL;QACAJ;QACAN;IACF;IAEA,OAAO;QAAEkB,WAAWF;IAAY;AAClC,EAAC"}
1
+ {"version":3,"sources":["../src/count.ts"],"sourcesContent":["import type { Count, SanitizedCollectionConfig } from 'payload'\n\nimport toSnakeCase from 'to-snake-case'\n\nimport type { DrizzleAdapter } from './types.js'\n\nimport { buildQuery } from './queries/buildQuery.js'\nimport { getTransaction } from './utilities/getTransaction.js'\n\nexport const count: Count = async function count(\n this: DrizzleAdapter,\n { collection, locale, req, where: whereArg },\n) {\n const collectionConfig: SanitizedCollectionConfig = this.payload.collections[collection].config\n\n const tableName = this.tableNameMap.get(toSnakeCase(collectionConfig.slug))\n\n const { joins, where } = buildQuery({\n adapter: this,\n fields: collectionConfig.flattenedFields,\n locale,\n tableName,\n where: whereArg,\n })\n\n const db = await getTransaction(this, req)\n\n const countResult = await this.countDistinct({\n db,\n joins,\n tableName,\n where,\n })\n\n return { totalDocs: countResult }\n}\n"],"names":["toSnakeCase","buildQuery","getTransaction","count","collection","locale","req","where","whereArg","collectionConfig","payload","collections","config","tableName","tableNameMap","get","slug","joins","adapter","fields","flattenedFields","db","countResult","countDistinct","totalDocs"],"mappings":"AAEA,OAAOA,iBAAiB,gBAAe;AAIvC,SAASC,UAAU,QAAQ,0BAAyB;AACpD,SAASC,cAAc,QAAQ,gCAA+B;AAE9D,OAAO,MAAMC,QAAe,eAAeA,MAEzC,EAAEC,UAAU,EAAEC,MAAM,EAAEC,GAAG,EAAEC,OAAOC,QAAQ,EAAE;IAE5C,MAAMC,mBAA8C,IAAI,CAACC,OAAO,CAACC,WAAW,CAACP,WAAW,CAACQ,MAAM;IAE/F,MAAMC,YAAY,IAAI,CAACC,YAAY,CAACC,GAAG,CAACf,YAAYS,iBAAiBO,IAAI;IAEzE,MAAM,EAAEC,KAAK,EAAEV,KAAK,EAAE,GAAGN,WAAW;QAClCiB,SAAS,IAAI;QACbC,QAAQV,iBAAiBW,eAAe;QACxCf;QACAQ;QACAN,OAAOC;IACT;IAEA,MAAMa,KAAK,MAAMnB,eAAe,IAAI,EAAEI;IAEtC,MAAMgB,cAAc,MAAM,IAAI,CAACC,aAAa,CAAC;QAC3CF;QACAJ;QACAJ;QACAN;IACF;IAEA,OAAO;QAAEiB,WAAWF;IAAY;AAClC,EAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"createGlobalVersion.d.ts","sourceRoot":"","sources":["../src/createGlobalVersion.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,uBAAuB,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAOnF,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAA;AAMhD,wBAAsB,mBAAmB,CAAC,CAAC,SAAS,UAAU,GAAG,UAAU,EACzE,IAAI,EAAE,cAAc,EACpB,EACE,QAAQ,EACR,SAAS,EACT,UAAU,EACV,eAAe,EACf,GAAG,EACH,SAAS,EACT,MAAM,EACN,QAAQ,EACR,SAAS,EACT,WAAW,GACZ,EAAE,uBAAuB,GACzB,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CA2D7B"}
1
+ {"version":3,"file":"createGlobalVersion.d.ts","sourceRoot":"","sources":["../src/createGlobalVersion.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,uBAAuB,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAOnF,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAA;AAMhD,wBAAsB,mBAAmB,CAAC,CAAC,SAAS,UAAU,GAAG,UAAU,EACzE,IAAI,EAAE,cAAc,EACpB,EACE,QAAQ,EACR,SAAS,EACT,UAAU,EACV,eAAe,EACf,GAAG,EACH,SAAS,EACT,MAAM,EACN,QAAQ,EACR,SAAS,EACT,WAAW,GACZ,EAAE,uBAAuB,GACzB,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CA6C7B"}
@@ -1,5 +1,5 @@
1
1
  import { sql } from 'drizzle-orm';
2
- import { buildVersionGlobalFields, MAIN_BRANCH, resolveBranch } from 'payload';
2
+ import { buildVersionGlobalFields } from 'payload';
3
3
  import { hasDraftsEnabled } from 'payload/shared';
4
4
  import toSnakeCase from 'to-snake-case';
5
5
  import { upsertRow } from './upsertRow/index.js';
@@ -9,17 +9,12 @@ export async function createGlobalVersion({ autosave, createdAt, globalSlug, pub
9
9
  const global = this.payload.globals.config.find(({ slug })=>slug === globalSlug);
10
10
  const tableName = this.tableNameMap.get(`_${toSnakeCase(global.slug)}${this.versionsSuffix}`);
11
11
  const db = getPrimaryDb(this, await getTransaction(this, req));
12
- const isBranchable = Boolean(req?.payload?.config?.branching?.branchableGlobals?.has(globalSlug));
13
- const versionBranch = isBranchable ? resolveBranch(req) : MAIN_BRANCH;
14
12
  const result = await upsertRow({
15
13
  adapter: this,
16
14
  data: {
17
15
  autosave,
18
16
  createdAt,
19
17
  latest: true,
20
- ...isBranchable ? {
21
- _branch: versionBranch
22
- } : {},
23
18
  publishedLocale,
24
19
  snapshot,
25
20
  updatedAt,
@@ -36,17 +31,9 @@ export async function createGlobalVersion({ autosave, createdAt, globalSlug, pub
36
31
  });
37
32
  const table = this.tables[tableName];
38
33
  if (hasDraftsEnabled(global)) {
39
- // Scoped by `_branch` when the global is branchable. Global versions have no
40
- // `parent` to separate streams by — every version of a global shares one —
41
- // so an unscoped clear would wipe main's latest flag from a branch.
42
34
  await this.execute({
43
35
  db,
44
- sql: isBranchable ? sql`
45
- UPDATE ${table}
46
- SET latest = false
47
- WHERE ${table.id} != ${result.id}
48
- AND ${table._branch} = ${versionBranch};
49
- ` : sql`
36
+ sql: sql`
50
37
  UPDATE ${table}
51
38
  SET latest = false
52
39
  WHERE ${table.id} != ${result.id};
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/createGlobalVersion.ts"],"sourcesContent":["import type { CreateGlobalVersionArgs, JsonObject, TypeWithVersion } from 'payload'\n\nimport { sql } from 'drizzle-orm'\nimport { buildVersionGlobalFields, MAIN_BRANCH, resolveBranch } from 'payload'\nimport { hasDraftsEnabled } from 'payload/shared'\nimport toSnakeCase from 'to-snake-case'\n\nimport type { DrizzleAdapter } from './types.js'\n\nimport { upsertRow } from './upsertRow/index.js'\nimport { getPrimaryDb } from './utilities/getPrimaryDb.js'\nimport { getTransaction } from './utilities/getTransaction.js'\n\nexport async function createGlobalVersion<T extends JsonObject = JsonObject>(\n this: DrizzleAdapter,\n {\n autosave,\n createdAt,\n globalSlug,\n publishedLocale,\n req,\n returning,\n select,\n snapshot,\n updatedAt,\n versionData,\n }: CreateGlobalVersionArgs,\n): Promise<TypeWithVersion<T>> {\n const global = this.payload.globals.config.find(({ slug }) => slug === globalSlug)\n\n const tableName = this.tableNameMap.get(`_${toSnakeCase(global.slug)}${this.versionsSuffix}`)\n\n const db = getPrimaryDb(this, await getTransaction(this, req))\n\n const isBranchable = Boolean(req?.payload?.config?.branching?.branchableGlobals?.has(globalSlug))\n const versionBranch = isBranchable ? resolveBranch(req as never) : MAIN_BRANCH\n\n const result = await upsertRow<TypeWithVersion<T>>({\n adapter: this,\n data: {\n autosave,\n createdAt,\n latest: true,\n ...(isBranchable ? { _branch: versionBranch } : {}),\n publishedLocale,\n snapshot,\n updatedAt,\n version: versionData,\n },\n db,\n fields: buildVersionGlobalFields(this.payload.config, global, true),\n globalSlug,\n ignoreResult: returning === false ? 'idOnly' : false,\n operation: 'create',\n req,\n select,\n tableName,\n })\n\n const table = this.tables[tableName]\n if (hasDraftsEnabled(global)) {\n // Scoped by `_branch` when the global is branchable. Global versions have no\n // `parent` to separate streams by — every version of a global shares one —\n // so an unscoped clear would wipe main's latest flag from a branch.\n await this.execute({\n db,\n sql: isBranchable\n ? sql`\n UPDATE ${table}\n SET latest = false\n WHERE ${table.id} != ${result.id}\n AND ${table._branch} = ${versionBranch};\n `\n : sql`\n UPDATE ${table}\n SET latest = false\n WHERE ${table.id} != ${result.id};\n `,\n })\n }\n\n if (returning === false) {\n return null\n }\n\n return result\n}\n"],"names":["sql","buildVersionGlobalFields","MAIN_BRANCH","resolveBranch","hasDraftsEnabled","toSnakeCase","upsertRow","getPrimaryDb","getTransaction","createGlobalVersion","autosave","createdAt","globalSlug","publishedLocale","req","returning","select","snapshot","updatedAt","versionData","global","payload","globals","config","find","slug","tableName","tableNameMap","get","versionsSuffix","db","isBranchable","Boolean","branching","branchableGlobals","has","versionBranch","result","adapter","data","latest","_branch","version","fields","ignoreResult","operation","table","tables","execute","id"],"mappings":"AAEA,SAASA,GAAG,QAAQ,cAAa;AACjC,SAASC,wBAAwB,EAAEC,WAAW,EAAEC,aAAa,QAAQ,UAAS;AAC9E,SAASC,gBAAgB,QAAQ,iBAAgB;AACjD,OAAOC,iBAAiB,gBAAe;AAIvC,SAASC,SAAS,QAAQ,uBAAsB;AAChD,SAASC,YAAY,QAAQ,8BAA6B;AAC1D,SAASC,cAAc,QAAQ,gCAA+B;AAE9D,OAAO,eAAeC,oBAEpB,EACEC,QAAQ,EACRC,SAAS,EACTC,UAAU,EACVC,eAAe,EACfC,GAAG,EACHC,SAAS,EACTC,MAAM,EACNC,QAAQ,EACRC,SAAS,EACTC,WAAW,EACa;IAE1B,MAAMC,SAAS,IAAI,CAACC,OAAO,CAACC,OAAO,CAACC,MAAM,CAACC,IAAI,CAAC,CAAC,EAAEC,IAAI,EAAE,GAAKA,SAASb;IAEvE,MAAMc,YAAY,IAAI,CAACC,YAAY,CAACC,GAAG,CAAC,CAAC,CAAC,EAAEvB,YAAYe,OAAOK,IAAI,IAAI,IAAI,CAACI,cAAc,EAAE;IAE5F,MAAMC,KAAKvB,aAAa,IAAI,EAAE,MAAMC,eAAe,IAAI,EAAEM;IAEzD,MAAMiB,eAAeC,QAAQlB,KAAKO,SAASE,QAAQU,WAAWC,mBAAmBC,IAAIvB;IACrF,MAAMwB,gBAAgBL,eAAe5B,cAAcW,OAAgBZ;IAEnE,MAAMmC,SAAS,MAAM/B,UAA8B;QACjDgC,SAAS,IAAI;QACbC,MAAM;YACJ7B;YACAC;YACA6B,QAAQ;YACR,GAAIT,eAAe;gBAAEU,SAASL;YAAc,IAAI,CAAC,CAAC;YAClDvB;YACAI;YACAC;YACAwB,SAASvB;QACX;QACAW;QACAa,QAAQ1C,yBAAyB,IAAI,CAACoB,OAAO,CAACE,MAAM,EAAEH,QAAQ;QAC9DR;QACAgC,cAAc7B,cAAc,QAAQ,WAAW;QAC/C8B,WAAW;QACX/B;QACAE;QACAU;IACF;IAEA,MAAMoB,QAAQ,IAAI,CAACC,MAAM,CAACrB,UAAU;IACpC,IAAItB,iBAAiBgB,SAAS;QAC5B,6EAA6E;QAC7E,2EAA2E;QAC3E,oEAAoE;QACpE,MAAM,IAAI,CAAC4B,OAAO,CAAC;YACjBlB;YACA9B,KAAK+B,eACD/B,GAAG,CAAC;iBACG,EAAE8C,MAAM;;gBAET,EAAEA,MAAMG,EAAE,CAAC,IAAI,EAAEZ,OAAOY,EAAE,CAAC;gBAC3B,EAAEH,MAAML,OAAO,CAAC,GAAG,EAAEL,cAAc;QAC3C,CAAC,GACCpC,GAAG,CAAC;iBACG,EAAE8C,MAAM;;gBAET,EAAEA,MAAMG,EAAE,CAAC,IAAI,EAAEZ,OAAOY,EAAE,CAAC;QACnC,CAAC;QACL;IACF;IAEA,IAAIlC,cAAc,OAAO;QACvB,OAAO;IACT;IAEA,OAAOsB;AACT"}
1
+ {"version":3,"sources":["../src/createGlobalVersion.ts"],"sourcesContent":["import type { CreateGlobalVersionArgs, JsonObject, TypeWithVersion } from 'payload'\n\nimport { sql } from 'drizzle-orm'\nimport { buildVersionGlobalFields } from 'payload'\nimport { hasDraftsEnabled } from 'payload/shared'\nimport toSnakeCase from 'to-snake-case'\n\nimport type { DrizzleAdapter } from './types.js'\n\nimport { upsertRow } from './upsertRow/index.js'\nimport { getPrimaryDb } from './utilities/getPrimaryDb.js'\nimport { getTransaction } from './utilities/getTransaction.js'\n\nexport async function createGlobalVersion<T extends JsonObject = JsonObject>(\n this: DrizzleAdapter,\n {\n autosave,\n createdAt,\n globalSlug,\n publishedLocale,\n req,\n returning,\n select,\n snapshot,\n updatedAt,\n versionData,\n }: CreateGlobalVersionArgs,\n): Promise<TypeWithVersion<T>> {\n const global = this.payload.globals.config.find(({ slug }) => slug === globalSlug)\n\n const tableName = this.tableNameMap.get(`_${toSnakeCase(global.slug)}${this.versionsSuffix}`)\n\n const db = getPrimaryDb(this, await getTransaction(this, req))\n\n const result = await upsertRow<TypeWithVersion<T>>({\n adapter: this,\n data: {\n autosave,\n createdAt,\n latest: true,\n publishedLocale,\n snapshot,\n updatedAt,\n version: versionData,\n },\n db,\n fields: buildVersionGlobalFields(this.payload.config, global, true),\n globalSlug,\n ignoreResult: returning === false ? 'idOnly' : false,\n operation: 'create',\n req,\n select,\n tableName,\n })\n\n const table = this.tables[tableName]\n if (hasDraftsEnabled(global)) {\n await this.execute({\n db,\n sql: sql`\n UPDATE ${table}\n SET latest = false\n WHERE ${table.id} != ${result.id};\n `,\n })\n }\n\n if (returning === false) {\n return null\n }\n\n return result\n}\n"],"names":["sql","buildVersionGlobalFields","hasDraftsEnabled","toSnakeCase","upsertRow","getPrimaryDb","getTransaction","createGlobalVersion","autosave","createdAt","globalSlug","publishedLocale","req","returning","select","snapshot","updatedAt","versionData","global","payload","globals","config","find","slug","tableName","tableNameMap","get","versionsSuffix","db","result","adapter","data","latest","version","fields","ignoreResult","operation","table","tables","execute","id"],"mappings":"AAEA,SAASA,GAAG,QAAQ,cAAa;AACjC,SAASC,wBAAwB,QAAQ,UAAS;AAClD,SAASC,gBAAgB,QAAQ,iBAAgB;AACjD,OAAOC,iBAAiB,gBAAe;AAIvC,SAASC,SAAS,QAAQ,uBAAsB;AAChD,SAASC,YAAY,QAAQ,8BAA6B;AAC1D,SAASC,cAAc,QAAQ,gCAA+B;AAE9D,OAAO,eAAeC,oBAEpB,EACEC,QAAQ,EACRC,SAAS,EACTC,UAAU,EACVC,eAAe,EACfC,GAAG,EACHC,SAAS,EACTC,MAAM,EACNC,QAAQ,EACRC,SAAS,EACTC,WAAW,EACa;IAE1B,MAAMC,SAAS,IAAI,CAACC,OAAO,CAACC,OAAO,CAACC,MAAM,CAACC,IAAI,CAAC,CAAC,EAAEC,IAAI,EAAE,GAAKA,SAASb;IAEvE,MAAMc,YAAY,IAAI,CAACC,YAAY,CAACC,GAAG,CAAC,CAAC,CAAC,EAAEvB,YAAYe,OAAOK,IAAI,IAAI,IAAI,CAACI,cAAc,EAAE;IAE5F,MAAMC,KAAKvB,aAAa,IAAI,EAAE,MAAMC,eAAe,IAAI,EAAEM;IAEzD,MAAMiB,SAAS,MAAMzB,UAA8B;QACjD0B,SAAS,IAAI;QACbC,MAAM;YACJvB;YACAC;YACAuB,QAAQ;YACRrB;YACAI;YACAC;YACAiB,SAAShB;QACX;QACAW;QACAM,QAAQjC,yBAAyB,IAAI,CAACkB,OAAO,CAACE,MAAM,EAAEH,QAAQ;QAC9DR;QACAyB,cAActB,cAAc,QAAQ,WAAW;QAC/CuB,WAAW;QACXxB;QACAE;QACAU;IACF;IAEA,MAAMa,QAAQ,IAAI,CAACC,MAAM,CAACd,UAAU;IACpC,IAAItB,iBAAiBgB,SAAS;QAC5B,MAAM,IAAI,CAACqB,OAAO,CAAC;YACjBX;YACA5B,KAAKA,GAAG,CAAC;iBACE,EAAEqC,MAAM;;gBAET,EAAEA,MAAMG,EAAE,CAAC,IAAI,EAAEX,OAAOW,EAAE,CAAC;QACnC,CAAC;QACL;IACF;IAEA,IAAI3B,cAAc,OAAO;QACvB,OAAO;IACT;IAEA,OAAOgB;AACT"}
@@ -1 +1 @@
1
- {"version":3,"file":"createVersion.d.ts","sourceRoot":"","sources":["../src/createVersion.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAO7E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAA;AAMhD,wBAAsB,aAAa,CAAC,CAAC,SAAS,UAAU,GAAG,UAAU,EACnE,IAAI,EAAE,cAAc,EACpB,EACE,QAAQ,EACR,cAAc,EACd,SAAS,EACT,MAAM,EACN,eAAe,EACf,GAAG,EACH,SAAS,EACT,MAAM,EACN,QAAQ,EACR,SAAS,EACT,WAAW,GACZ,EAAE,iBAAiB,CAAC,CAAC,CAAC,GACtB,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CA6E7B"}
1
+ {"version":3,"file":"createVersion.d.ts","sourceRoot":"","sources":["../src/createVersion.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAO7E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAA;AAMhD,wBAAsB,aAAa,CAAC,CAAC,SAAS,UAAU,GAAG,UAAU,EACnE,IAAI,EAAE,cAAc,EACpB,EACE,QAAQ,EACR,cAAc,EACd,SAAS,EACT,MAAM,EACN,eAAe,EACf,GAAG,EACH,SAAS,EACT,MAAM,EACN,QAAQ,EACR,SAAS,EACT,WAAW,GACZ,EAAE,iBAAiB,CAAC,CAAC,CAAC,GACtB,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CA8D7B"}
@@ -1,5 +1,5 @@
1
1
  import { sql } from 'drizzle-orm';
2
- import { buildVersionCollectionFields, resolveBranchVersionParent } from 'payload';
2
+ import { buildVersionCollectionFields } from 'payload';
3
3
  import { hasDraftsEnabled } from 'payload/shared';
4
4
  import toSnakeCase from 'to-snake-case';
5
5
  import { upsertRow } from './upsertRow/index.js';
@@ -14,13 +14,6 @@ export async function createVersion({ autosave, collectionSlug, createdAt, paren
14
14
  }
15
15
  const defaultTableName = toSnakeCase(collection.slug);
16
16
  const tableName = this.tableNameMap.get(`_${defaultTableName}${this.versionsSuffix}`);
17
- const branched = await resolveBranchVersionParent({
18
- collectionSlug,
19
- parent,
20
- req,
21
- versionData: versionData
22
- });
23
- parent = branched.parent;
24
17
  const version = {
25
18
  ...versionData
26
19
  };
@@ -32,10 +25,6 @@ export async function createVersion({ autosave, collectionSlug, createdAt, paren
32
25
  createdAt,
33
26
  latest: true,
34
27
  parent,
35
- ...branched.versionData._branch ? {
36
- _branch: branched.versionData._branch,
37
- _branchParent: branched.versionData._branchParent
38
- } : {},
39
28
  publishedLocale,
40
29
  snapshot,
41
30
  updatedAt,
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/createVersion.ts"],"sourcesContent":["import type { CreateVersionArgs, JsonObject, TypeWithVersion } from 'payload'\n\nimport { sql } from 'drizzle-orm'\nimport { buildVersionCollectionFields, resolveBranchVersionParent } from 'payload'\nimport { hasDraftsEnabled } from 'payload/shared'\nimport toSnakeCase from 'to-snake-case'\n\nimport type { DrizzleAdapter } from './types.js'\n\nimport { upsertRow } from './upsertRow/index.js'\nimport { getPrimaryDb } from './utilities/getPrimaryDb.js'\nimport { getTransaction } from './utilities/getTransaction.js'\n\nexport async function createVersion<T extends JsonObject = JsonObject>(\n this: DrizzleAdapter,\n {\n autosave,\n collectionSlug,\n createdAt,\n parent,\n publishedLocale,\n req,\n returning,\n select,\n snapshot,\n updatedAt,\n versionData,\n }: CreateVersionArgs<T>,\n): Promise<TypeWithVersion<T>> {\n const collection = this.payload.collections[collectionSlug].config\n if (collection.versions.drafts) {\n if (typeof select === 'object') {\n select.updatedAt = true\n }\n }\n\n const defaultTableName = toSnakeCase(collection.slug)\n const tableName = this.tableNameMap.get(`_${defaultTableName}${this.versionsSuffix}`)\n\n const branched = await resolveBranchVersionParent({\n collectionSlug,\n parent,\n req,\n versionData: versionData as Record<string, unknown>,\n })\n\n parent = branched.parent\n\n const version = { ...versionData }\n if (version.id) {\n delete version.id\n }\n\n const data: Record<string, unknown> = {\n autosave,\n createdAt,\n latest: true,\n parent,\n ...(branched.versionData._branch\n ? {\n _branch: branched.versionData._branch,\n _branchParent: branched.versionData._branchParent,\n }\n : {}),\n publishedLocale,\n snapshot,\n updatedAt,\n version,\n }\n\n const db = getPrimaryDb(this, await getTransaction(this, req))\n\n const result = await upsertRow<TypeWithVersion<T>>({\n adapter: this,\n collectionSlug,\n data,\n db,\n fields: buildVersionCollectionFields(this.payload.config, collection, true),\n ignoreResult: returning === false ? 'idOnly' : undefined,\n operation: 'create',\n req,\n select,\n tableName,\n })\n\n const table = this.tables[tableName]\n\n if (hasDraftsEnabled(collection)) {\n await this.execute({\n db,\n sql: sql`\n UPDATE ${table}\n SET latest = false\n WHERE ${table.id} != ${result.id}\n AND ${table.parent} = ${parent}\n AND ${table.updatedAt} < ${result.updatedAt || updatedAt}\n `,\n })\n }\n\n if (returning === false) {\n return null\n }\n\n return result\n}\n"],"names":["sql","buildVersionCollectionFields","resolveBranchVersionParent","hasDraftsEnabled","toSnakeCase","upsertRow","getPrimaryDb","getTransaction","createVersion","autosave","collectionSlug","createdAt","parent","publishedLocale","req","returning","select","snapshot","updatedAt","versionData","collection","payload","collections","config","versions","drafts","defaultTableName","slug","tableName","tableNameMap","get","versionsSuffix","branched","version","id","data","latest","_branch","_branchParent","db","result","adapter","fields","ignoreResult","undefined","operation","table","tables","execute"],"mappings":"AAEA,SAASA,GAAG,QAAQ,cAAa;AACjC,SAASC,4BAA4B,EAAEC,0BAA0B,QAAQ,UAAS;AAClF,SAASC,gBAAgB,QAAQ,iBAAgB;AACjD,OAAOC,iBAAiB,gBAAe;AAIvC,SAASC,SAAS,QAAQ,uBAAsB;AAChD,SAASC,YAAY,QAAQ,8BAA6B;AAC1D,SAASC,cAAc,QAAQ,gCAA+B;AAE9D,OAAO,eAAeC,cAEpB,EACEC,QAAQ,EACRC,cAAc,EACdC,SAAS,EACTC,MAAM,EACNC,eAAe,EACfC,GAAG,EACHC,SAAS,EACTC,MAAM,EACNC,QAAQ,EACRC,SAAS,EACTC,WAAW,EACU;IAEvB,MAAMC,aAAa,IAAI,CAACC,OAAO,CAACC,WAAW,CAACZ,eAAe,CAACa,MAAM;IAClE,IAAIH,WAAWI,QAAQ,CAACC,MAAM,EAAE;QAC9B,IAAI,OAAOT,WAAW,UAAU;YAC9BA,OAAOE,SAAS,GAAG;QACrB;IACF;IAEA,MAAMQ,mBAAmBtB,YAAYgB,WAAWO,IAAI;IACpD,MAAMC,YAAY,IAAI,CAACC,YAAY,CAACC,GAAG,CAAC,CAAC,CAAC,EAAEJ,mBAAmB,IAAI,CAACK,cAAc,EAAE;IAEpF,MAAMC,WAAW,MAAM9B,2BAA2B;QAChDQ;QACAE;QACAE;QACAK,aAAaA;IACf;IAEAP,SAASoB,SAASpB,MAAM;IAExB,MAAMqB,UAAU;QAAE,GAAGd,WAAW;IAAC;IACjC,IAAIc,QAAQC,EAAE,EAAE;QACd,OAAOD,QAAQC,EAAE;IACnB;IAEA,MAAMC,OAAgC;QACpC1B;QACAE;QACAyB,QAAQ;QACRxB;QACA,GAAIoB,SAASb,WAAW,CAACkB,OAAO,GAC5B;YACEA,SAASL,SAASb,WAAW,CAACkB,OAAO;YACrCC,eAAeN,SAASb,WAAW,CAACmB,aAAa;QACnD,IACA,CAAC,CAAC;QACNzB;QACAI;QACAC;QACAe;IACF;IAEA,MAAMM,KAAKjC,aAAa,IAAI,EAAE,MAAMC,eAAe,IAAI,EAAEO;IAEzD,MAAM0B,SAAS,MAAMnC,UAA8B;QACjDoC,SAAS,IAAI;QACb/B;QACAyB;QACAI;QACAG,QAAQzC,6BAA6B,IAAI,CAACoB,OAAO,CAACE,MAAM,EAAEH,YAAY;QACtEuB,cAAc5B,cAAc,QAAQ,WAAW6B;QAC/CC,WAAW;QACX/B;QACAE;QACAY;IACF;IAEA,MAAMkB,QAAQ,IAAI,CAACC,MAAM,CAACnB,UAAU;IAEpC,IAAIzB,iBAAiBiB,aAAa;QAChC,MAAM,IAAI,CAAC4B,OAAO,CAAC;YACjBT;YACAvC,KAAKA,GAAG,CAAC;eACA,EAAE8C,MAAM;;cAET,EAAEA,MAAMZ,EAAE,CAAC,IAAI,EAAEM,OAAON,EAAE,CAAC;cAC3B,EAAEY,MAAMlC,MAAM,CAAC,GAAG,EAAEA,OAAO;cAC3B,EAAEkC,MAAM5B,SAAS,CAAC,GAAG,EAAEsB,OAAOtB,SAAS,IAAIA,UAAU;MAC7D,CAAC;QACH;IACF;IAEA,IAAIH,cAAc,OAAO;QACvB,OAAO;IACT;IAEA,OAAOyB;AACT"}
1
+ {"version":3,"sources":["../src/createVersion.ts"],"sourcesContent":["import type { CreateVersionArgs, JsonObject, TypeWithVersion } from 'payload'\n\nimport { sql } from 'drizzle-orm'\nimport { buildVersionCollectionFields } from 'payload'\nimport { hasDraftsEnabled } from 'payload/shared'\nimport toSnakeCase from 'to-snake-case'\n\nimport type { DrizzleAdapter } from './types.js'\n\nimport { upsertRow } from './upsertRow/index.js'\nimport { getPrimaryDb } from './utilities/getPrimaryDb.js'\nimport { getTransaction } from './utilities/getTransaction.js'\n\nexport async function createVersion<T extends JsonObject = JsonObject>(\n this: DrizzleAdapter,\n {\n autosave,\n collectionSlug,\n createdAt,\n parent,\n publishedLocale,\n req,\n returning,\n select,\n snapshot,\n updatedAt,\n versionData,\n }: CreateVersionArgs<T>,\n): Promise<TypeWithVersion<T>> {\n const collection = this.payload.collections[collectionSlug].config\n if (collection.versions.drafts) {\n if (typeof select === 'object') {\n select.updatedAt = true\n }\n }\n\n const defaultTableName = toSnakeCase(collection.slug)\n const tableName = this.tableNameMap.get(`_${defaultTableName}${this.versionsSuffix}`)\n\n const version = { ...versionData }\n if (version.id) {\n delete version.id\n }\n\n const data: Record<string, unknown> = {\n autosave,\n createdAt,\n latest: true,\n parent,\n publishedLocale,\n snapshot,\n updatedAt,\n version,\n }\n\n const db = getPrimaryDb(this, await getTransaction(this, req))\n\n const result = await upsertRow<TypeWithVersion<T>>({\n adapter: this,\n collectionSlug,\n data,\n db,\n fields: buildVersionCollectionFields(this.payload.config, collection, true),\n ignoreResult: returning === false ? 'idOnly' : undefined,\n operation: 'create',\n req,\n select,\n tableName,\n })\n\n const table = this.tables[tableName]\n\n if (hasDraftsEnabled(collection)) {\n await this.execute({\n db,\n sql: sql`\n UPDATE ${table}\n SET latest = false\n WHERE ${table.id} != ${result.id}\n AND ${table.parent} = ${parent}\n AND ${table.updatedAt} < ${result.updatedAt || updatedAt}\n `,\n })\n }\n\n if (returning === false) {\n return null\n }\n\n return result\n}\n"],"names":["sql","buildVersionCollectionFields","hasDraftsEnabled","toSnakeCase","upsertRow","getPrimaryDb","getTransaction","createVersion","autosave","collectionSlug","createdAt","parent","publishedLocale","req","returning","select","snapshot","updatedAt","versionData","collection","payload","collections","config","versions","drafts","defaultTableName","slug","tableName","tableNameMap","get","versionsSuffix","version","id","data","latest","db","result","adapter","fields","ignoreResult","undefined","operation","table","tables","execute"],"mappings":"AAEA,SAASA,GAAG,QAAQ,cAAa;AACjC,SAASC,4BAA4B,QAAQ,UAAS;AACtD,SAASC,gBAAgB,QAAQ,iBAAgB;AACjD,OAAOC,iBAAiB,gBAAe;AAIvC,SAASC,SAAS,QAAQ,uBAAsB;AAChD,SAASC,YAAY,QAAQ,8BAA6B;AAC1D,SAASC,cAAc,QAAQ,gCAA+B;AAE9D,OAAO,eAAeC,cAEpB,EACEC,QAAQ,EACRC,cAAc,EACdC,SAAS,EACTC,MAAM,EACNC,eAAe,EACfC,GAAG,EACHC,SAAS,EACTC,MAAM,EACNC,QAAQ,EACRC,SAAS,EACTC,WAAW,EACU;IAEvB,MAAMC,aAAa,IAAI,CAACC,OAAO,CAACC,WAAW,CAACZ,eAAe,CAACa,MAAM;IAClE,IAAIH,WAAWI,QAAQ,CAACC,MAAM,EAAE;QAC9B,IAAI,OAAOT,WAAW,UAAU;YAC9BA,OAAOE,SAAS,GAAG;QACrB;IACF;IAEA,MAAMQ,mBAAmBtB,YAAYgB,WAAWO,IAAI;IACpD,MAAMC,YAAY,IAAI,CAACC,YAAY,CAACC,GAAG,CAAC,CAAC,CAAC,EAAEJ,mBAAmB,IAAI,CAACK,cAAc,EAAE;IAEpF,MAAMC,UAAU;QAAE,GAAGb,WAAW;IAAC;IACjC,IAAIa,QAAQC,EAAE,EAAE;QACd,OAAOD,QAAQC,EAAE;IACnB;IAEA,MAAMC,OAAgC;QACpCzB;QACAE;QACAwB,QAAQ;QACRvB;QACAC;QACAI;QACAC;QACAc;IACF;IAEA,MAAMI,KAAK9B,aAAa,IAAI,EAAE,MAAMC,eAAe,IAAI,EAAEO;IAEzD,MAAMuB,SAAS,MAAMhC,UAA8B;QACjDiC,SAAS,IAAI;QACb5B;QACAwB;QACAE;QACAG,QAAQrC,6BAA6B,IAAI,CAACmB,OAAO,CAACE,MAAM,EAAEH,YAAY;QACtEoB,cAAczB,cAAc,QAAQ,WAAW0B;QAC/CC,WAAW;QACX5B;QACAE;QACAY;IACF;IAEA,MAAMe,QAAQ,IAAI,CAACC,MAAM,CAAChB,UAAU;IAEpC,IAAIzB,iBAAiBiB,aAAa;QAChC,MAAM,IAAI,CAACyB,OAAO,CAAC;YACjBT;YACAnC,KAAKA,GAAG,CAAC;eACA,EAAE0C,MAAM;;cAET,EAAEA,MAAMV,EAAE,CAAC,IAAI,EAAEI,OAAOJ,EAAE,CAAC;cAC3B,EAAEU,MAAM/B,MAAM,CAAC,GAAG,EAAEA,OAAO;cAC3B,EAAE+B,MAAMzB,SAAS,CAAC,GAAG,EAAEmB,OAAOnB,SAAS,IAAIA,UAAU;MAC7D,CAAC;QACH;IACF;IAEA,IAAIH,cAAc,OAAO;QACvB,OAAO;IACT;IAEA,OAAOsB;AACT"}
@@ -1 +1 @@
1
- {"version":3,"file":"deleteOne.d.ts","sourceRoot":"","sources":["../src/deleteOne.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,SAAS,CAAA;AAgBxC,eAAO,MAAM,SAAS,EAAE,SAyFvB,CAAA"}
1
+ {"version":3,"file":"deleteOne.d.ts","sourceRoot":"","sources":["../src/deleteOne.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,SAAS,CAAA;AAexC,eAAO,MAAM,SAAS,EAAE,SA0EvB,CAAA"}
package/dist/deleteOne.js CHANGED
@@ -1,5 +1,4 @@
1
1
  import { eq } from 'drizzle-orm';
2
- import { resolveBranchDelete } from 'payload';
3
2
  import toSnakeCase from 'to-snake-case';
4
3
  import { buildFindManyArgs } from './find/buildFindManyArgs.js';
5
4
  import { buildQuery } from './queries/buildQuery.js';
@@ -8,25 +7,9 @@ import { transform } from './transform/read/index.js';
8
7
  import { getPrimaryDb } from './utilities/getPrimaryDb.js';
9
8
  import { getTransaction } from './utilities/getTransaction.js';
10
9
  import { markWrite } from './utilities/readAfterWrite.js';
11
- export const deleteOne = async function deleteOne({ branch, collection: collectionSlug, req, returning, select, where: whereArg }) {
10
+ export const deleteOne = async function deleteOne({ collection: collectionSlug, req, returning, select, where: whereArg }) {
12
11
  const collection = this.payload.collections[collectionSlug].config;
13
12
  const tableName = this.tableNameMap.get(toSnakeCase(collection.slug));
14
- const branchDelete = await resolveBranchDelete({
15
- branch,
16
- collectionSlug,
17
- req,
18
- where: whereArg
19
- });
20
- if (branchDelete.tombstoned) {
21
- return returning === false ? null : branchDelete.doc;
22
- }
23
- if (branchDelete.deleteRowID !== undefined) {
24
- whereArg = {
25
- id: {
26
- equals: branchDelete.deleteRowID
27
- }
28
- };
29
- }
30
13
  let docToDelete;
31
14
  const { joins, selectFields, where } = buildQuery({
32
15
  adapter: this,
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/deleteOne.ts"],"sourcesContent":["import type { DeleteOne } from 'payload'\n\nimport { eq } from 'drizzle-orm'\nimport { resolveBranchDelete } from 'payload'\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 { getPrimaryDb } from './utilities/getPrimaryDb.js'\nimport { getTransaction } from './utilities/getTransaction.js'\nimport { markWrite } from './utilities/readAfterWrite.js'\n\nexport const deleteOne: DeleteOne = async function deleteOne(\n this: DrizzleAdapter,\n { branch, collection: collectionSlug, req, returning, select, where: whereArg },\n) {\n const collection = this.payload.collections[collectionSlug].config\n\n const tableName = this.tableNameMap.get(toSnakeCase(collection.slug))\n\n const branchDelete = await resolveBranchDelete({\n branch,\n collectionSlug,\n req,\n where: whereArg,\n })\n\n if (branchDelete.tombstoned) {\n return returning === false ? null : (branchDelete.doc as any)\n }\n\n if (branchDelete.deleteRowID !== undefined) {\n whereArg = { id: { equals: branchDelete.deleteRowID } }\n }\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 db = getPrimaryDb(this, await getTransaction(this, req))\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 if (!docToDelete) {\n return null\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 tableName,\n })\n\n await this.deleteWhere({\n db,\n tableName,\n where: eq(this.tables[tableName].id, docToDelete.id),\n })\n\n markWrite(this)\n\n return result\n}\n"],"names":["eq","resolveBranchDelete","toSnakeCase","buildFindManyArgs","buildQuery","selectDistinct","transform","getPrimaryDb","getTransaction","markWrite","deleteOne","branch","collection","collectionSlug","req","returning","select","where","whereArg","payload","collections","config","tableName","tableNameMap","get","slug","branchDelete","tombstoned","doc","deleteRowID","undefined","id","equals","docToDelete","joins","selectFields","adapter","fields","flattenedFields","locale","db","selectDistinctResult","query","limit","findFirst","tables","findManyArgs","depth","joinQuery","result","data","deleteWhere"],"mappings":"AAEA,SAASA,EAAE,QAAQ,cAAa;AAChC,SAASC,mBAAmB,QAAQ,UAAS;AAC7C,OAAOC,iBAAiB,gBAAe;AAIvC,SAASC,iBAAiB,QAAQ,8BAA6B;AAC/D,SAASC,UAAU,QAAQ,0BAAyB;AACpD,SAASC,cAAc,QAAQ,8BAA6B;AAC5D,SAASC,SAAS,QAAQ,4BAA2B;AACrD,SAASC,YAAY,QAAQ,8BAA6B;AAC1D,SAASC,cAAc,QAAQ,gCAA+B;AAC9D,SAASC,SAAS,QAAQ,gCAA+B;AAEzD,OAAO,MAAMC,YAAuB,eAAeA,UAEjD,EAAEC,MAAM,EAAEC,YAAYC,cAAc,EAAEC,GAAG,EAAEC,SAAS,EAAEC,MAAM,EAAEC,OAAOC,QAAQ,EAAE;IAE/E,MAAMN,aAAa,IAAI,CAACO,OAAO,CAACC,WAAW,CAACP,eAAe,CAACQ,MAAM;IAElE,MAAMC,YAAY,IAAI,CAACC,YAAY,CAACC,GAAG,CAACtB,YAAYU,WAAWa,IAAI;IAEnE,MAAMC,eAAe,MAAMzB,oBAAoB;QAC7CU;QACAE;QACAC;QACAG,OAAOC;IACT;IAEA,IAAIQ,aAAaC,UAAU,EAAE;QAC3B,OAAOZ,cAAc,QAAQ,OAAQW,aAAaE,GAAG;IACvD;IAEA,IAAIF,aAAaG,WAAW,KAAKC,WAAW;QAC1CZ,WAAW;YAAEa,IAAI;gBAAEC,QAAQN,aAAaG,WAAW;YAAC;QAAE;IACxD;IAEA,IAAII;IAEJ,MAAM,EAAEC,KAAK,EAAEC,YAAY,EAAElB,KAAK,EAAE,GAAGb,WAAW;QAChDgC,SAAS,IAAI;QACbC,QAAQzB,WAAW0B,eAAe;QAClCC,QAAQzB,KAAKyB;QACbjB;QACAL,OAAOC;IACT;IAEA,MAAMsB,KAAKjC,aAAa,IAAI,EAAE,MAAMC,eAAe,IAAI,EAAEM;IAEzD,MAAM2B,uBAAuB,MAAMpC,eAAe;QAChD+B,SAAS,IAAI;QACbI;QACAN;QACAQ,OAAO,CAAC,EAAEA,KAAK,EAAE,GAAKA,MAAMC,KAAK,CAAC;QAClCR;QACAb;QACAL;IACF;IAEA,IAAIwB,sBAAsB,CAAC,EAAE,EAAEV,IAAI;QACjCE,cAAc,MAAMO,GAAGE,KAAK,CAACpB,UAAU,CAACsB,SAAS,CAAC;YAChD3B,OAAOjB,GAAG,IAAI,CAAC6C,MAAM,CAACvB,UAAU,CAACS,EAAE,EAAEU,oBAAoB,CAAC,EAAE,CAACV,EAAE;QACjE;IACF,OAAO;QACL,MAAMe,eAAe3C,kBAAkB;YACrCiC,SAAS,IAAI;YACbW,OAAO;YACPV,QAAQzB,WAAW0B,eAAe;YAClCU,WAAW;YACXhC;YACAM;QACF;QAEAwB,aAAa7B,KAAK,GAAGA;QAErBgB,cAAc,MAAMO,GAAGE,KAAK,CAACpB,UAAU,CAACsB,SAAS,CAACE;IACpD;IAEA,IAAI,CAACb,aAAa;QAChB,OAAO;IACT;IAEA,MAAMgB,SACJlC,cAAc,QACV,OACAT,UAAU;QACR8B,SAAS,IAAI;QACbf,QAAQ,IAAI,CAACF,OAAO,CAACE,MAAM;QAC3B6B,MAAMjB;QACNI,QAAQzB,WAAW0B,eAAe;QAClCU,WAAW;QACX1B;IACF;IAEN,MAAM,IAAI,CAAC6B,WAAW,CAAC;QACrBX;QACAlB;QACAL,OAAOjB,GAAG,IAAI,CAAC6C,MAAM,CAACvB,UAAU,CAACS,EAAE,EAAEE,YAAYF,EAAE;IACrD;IAEAtB,UAAU,IAAI;IAEd,OAAOwC;AACT,EAAC"}
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 { getPrimaryDb } from './utilities/getPrimaryDb.js'\nimport { getTransaction } from './utilities/getTransaction.js'\nimport { markWrite } from './utilities/readAfterWrite.js'\n\nexport const deleteOne: DeleteOne = async function deleteOne(\n this: DrizzleAdapter,\n { collection: collectionSlug, req, returning, select, where: whereArg },\n) {\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 db = getPrimaryDb(this, await getTransaction(this, req))\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 if (!docToDelete) {\n return null\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 tableName,\n })\n\n await this.deleteWhere({\n db,\n tableName,\n where: eq(this.tables[tableName].id, docToDelete.id),\n })\n\n markWrite(this)\n\n return result\n}\n"],"names":["eq","toSnakeCase","buildFindManyArgs","buildQuery","selectDistinct","transform","getPrimaryDb","getTransaction","markWrite","deleteOne","collection","collectionSlug","req","returning","select","where","whereArg","payload","collections","config","tableName","tableNameMap","get","slug","docToDelete","joins","selectFields","adapter","fields","flattenedFields","locale","db","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,SAASC,UAAU,QAAQ,0BAAyB;AACpD,SAASC,cAAc,QAAQ,8BAA6B;AAC5D,SAASC,SAAS,QAAQ,4BAA2B;AACrD,SAASC,YAAY,QAAQ,8BAA6B;AAC1D,SAASC,cAAc,QAAQ,gCAA+B;AAC9D,SAASC,SAAS,QAAQ,gCAA+B;AAEzD,OAAO,MAAMC,YAAuB,eAAeA,UAEjD,EAAEC,YAAYC,cAAc,EAAEC,GAAG,EAAEC,SAAS,EAAEC,MAAM,EAAEC,OAAOC,QAAQ,EAAE;IAEvE,MAAMN,aAAa,IAAI,CAACO,OAAO,CAACC,WAAW,CAACP,eAAe,CAACQ,MAAM;IAElE,MAAMC,YAAY,IAAI,CAACC,YAAY,CAACC,GAAG,CAACrB,YAAYS,WAAWa,IAAI;IAEnE,IAAIC;IAEJ,MAAM,EAAEC,KAAK,EAAEC,YAAY,EAAEX,KAAK,EAAE,GAAGZ,WAAW;QAChDwB,SAAS,IAAI;QACbC,QAAQlB,WAAWmB,eAAe;QAClCC,QAAQlB,KAAKkB;QACbV;QACAL,OAAOC;IACT;IAEA,MAAMe,KAAKzB,aAAa,IAAI,EAAE,MAAMC,eAAe,IAAI,EAAEK;IAEzD,MAAMoB,uBAAuB,MAAM5B,eAAe;QAChDuB,SAAS,IAAI;QACbI;QACAN;QACAQ,OAAO,CAAC,EAAEA,KAAK,EAAE,GAAKA,MAAMC,KAAK,CAAC;QAClCR;QACAN;QACAL;IACF;IAEA,IAAIiB,sBAAsB,CAAC,EAAE,EAAEG,IAAI;QACjCX,cAAc,MAAMO,GAAGE,KAAK,CAACb,UAAU,CAACgB,SAAS,CAAC;YAChDrB,OAAOf,GAAG,IAAI,CAACqC,MAAM,CAACjB,UAAU,CAACe,EAAE,EAAEH,oBAAoB,CAAC,EAAE,CAACG,EAAE;QACjE;IACF,OAAO;QACL,MAAMG,eAAepC,kBAAkB;YACrCyB,SAAS,IAAI;YACbY,OAAO;YACPX,QAAQlB,WAAWmB,eAAe;YAClCW,WAAW;YACX1B;YACAM;QACF;QAEAkB,aAAavB,KAAK,GAAGA;QAErBS,cAAc,MAAMO,GAAGE,KAAK,CAACb,UAAU,CAACgB,SAAS,CAACE;IACpD;IAEA,IAAI,CAACd,aAAa;QAChB,OAAO;IACT;IAEA,MAAMiB,SACJ5B,cAAc,QACV,OACAR,UAAU;QACRsB,SAAS,IAAI;QACbR,QAAQ,IAAI,CAACF,OAAO,CAACE,MAAM;QAC3BuB,MAAMlB;QACNI,QAAQlB,WAAWmB,eAAe;QAClCW,WAAW;QACXpB;IACF;IAEN,MAAM,IAAI,CAACuB,WAAW,CAAC;QACrBZ;QACAX;QACAL,OAAOf,GAAG,IAAI,CAACqC,MAAM,CAACjB,UAAU,CAACe,EAAE,EAAEX,YAAYW,EAAE;IACrD;IAEA3B,UAAU,IAAI;IAEd,OAAOiC;AACT,EAAC"}
@@ -10,7 +10,10 @@ export { execute } from '../postgres/execute.js';
10
10
  export { init } from '../postgres/init.js';
11
11
  export { insert } from '../postgres/insert.js';
12
12
  export { migratePostgresLocalizeStatus } from '../postgres/predefinedMigrations/localize-status/index.js';
13
+ export { migratePostgresSizesToVariants } from '../postgres/predefinedMigrations/sizes-to-variants/index.js';
13
14
  export { migratePostgresV2toV3 } from '../postgres/predefinedMigrations/v2-v3/index.js';
15
+ export { assertOperatorHandlerExtensionsInstalled } from '../postgres/query/assertOperatorHandlerExtensionsInstalled.js';
16
+ export { postgresUnaccent } from '../postgres/query/postgresUnaccent.js';
14
17
  export { requireDrizzleKit } from '../postgres/requireDrizzleKit.js';
15
18
  export { geometryColumn } from '../postgres/schema/geometryColumn.js';
16
19
  export * from '../postgres/types.js';
@@ -1 +1 @@
1
- {"version":3,"file":"postgres.d.ts","sourceRoot":"","sources":["../../src/exports/postgres.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,sCAAsC,CAAA;AAC5E,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAA;AAC5D,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAA;AAC9D,OAAO,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAA;AAClE,OAAO,EAAE,eAAe,EAAE,MAAM,sCAAsC,CAAA;AACtE,OAAO,EAAE,sBAAsB,EAAE,MAAM,gCAAgC,CAAA;AACvE,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAA;AACxD,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAA;AAC1D,OAAO,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAA;AAChD,OAAO,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAA;AAC1C,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAA;AAC9C,OAAO,EAAE,6BAA6B,EAAE,MAAM,2DAA2D,CAAA;AACzG,OAAO,EAAE,qBAAqB,EAAE,MAAM,iDAAiD,CAAA;AACvF,OAAO,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAA;AACpE,OAAO,EAAE,cAAc,EAAE,MAAM,sCAAsC,CAAA;AACrE,cAAc,sBAAsB,CAAA"}
1
+ {"version":3,"file":"postgres.d.ts","sourceRoot":"","sources":["../../src/exports/postgres.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,sCAAsC,CAAA;AAC5E,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAA;AAC5D,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAA;AAC9D,OAAO,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAA;AAClE,OAAO,EAAE,eAAe,EAAE,MAAM,sCAAsC,CAAA;AACtE,OAAO,EAAE,sBAAsB,EAAE,MAAM,gCAAgC,CAAA;AACvE,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAA;AACxD,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAA;AAC1D,OAAO,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAA;AAChD,OAAO,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAA;AAC1C,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAA;AAC9C,OAAO,EAAE,6BAA6B,EAAE,MAAM,2DAA2D,CAAA;AACzG,OAAO,EAAE,8BAA8B,EAAE,MAAM,6DAA6D,CAAA;AAC5G,OAAO,EAAE,qBAAqB,EAAE,MAAM,iDAAiD,CAAA;AACvF,OAAO,EAAE,wCAAwC,EAAE,MAAM,+DAA+D,CAAA;AACxH,OAAO,EAAE,gBAAgB,EAAE,MAAM,uCAAuC,CAAA;AACxE,OAAO,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAA;AACpE,OAAO,EAAE,cAAc,EAAE,MAAM,sCAAsC,CAAA;AACrE,cAAc,sBAAsB,CAAA"}
@@ -10,7 +10,10 @@ export { execute } from '../postgres/execute.js';
10
10
  export { init } from '../postgres/init.js';
11
11
  export { insert } from '../postgres/insert.js';
12
12
  export { migratePostgresLocalizeStatus } from '../postgres/predefinedMigrations/localize-status/index.js';
13
+ export { migratePostgresSizesToVariants } from '../postgres/predefinedMigrations/sizes-to-variants/index.js';
13
14
  export { migratePostgresV2toV3 } from '../postgres/predefinedMigrations/v2-v3/index.js';
15
+ export { assertOperatorHandlerExtensionsInstalled } from '../postgres/query/assertOperatorHandlerExtensionsInstalled.js';
16
+ export { postgresUnaccent } from '../postgres/query/postgresUnaccent.js';
14
17
  export { requireDrizzleKit } from '../postgres/requireDrizzleKit.js';
15
18
  export { geometryColumn } from '../postgres/schema/geometryColumn.js';
16
19
  export * from '../postgres/types.js';
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/exports/postgres.ts"],"sourcesContent":["export { columnToCodeConverter } from '../postgres/columnToCodeConverter.js'\nexport { countDistinct } from '../postgres/countDistinct.js'\nexport { createDatabase } from '../postgres/createDatabase.js'\nexport { createExtensions } from '../postgres/createExtensions.js'\nexport { createJSONQuery } from '../postgres/createJSONQuery/index.js'\nexport { defaultDrizzleSnapshot } from '../postgres/defaultSnapshot.js'\nexport { deleteWhere } from '../postgres/deleteWhere.js'\nexport { dropDatabase } from '../postgres/dropDatabase.js'\nexport { execute } from '../postgres/execute.js'\nexport { init } from '../postgres/init.js'\nexport { insert } from '../postgres/insert.js'\nexport { migratePostgresLocalizeStatus } from '../postgres/predefinedMigrations/localize-status/index.js'\nexport { migratePostgresV2toV3 } from '../postgres/predefinedMigrations/v2-v3/index.js'\nexport { requireDrizzleKit } from '../postgres/requireDrizzleKit.js'\nexport { geometryColumn } from '../postgres/schema/geometryColumn.js'\nexport * from '../postgres/types.js'\n"],"names":["columnToCodeConverter","countDistinct","createDatabase","createExtensions","createJSONQuery","defaultDrizzleSnapshot","deleteWhere","dropDatabase","execute","init","insert","migratePostgresLocalizeStatus","migratePostgresV2toV3","requireDrizzleKit","geometryColumn"],"mappings":"AAAA,SAASA,qBAAqB,QAAQ,uCAAsC;AAC5E,SAASC,aAAa,QAAQ,+BAA8B;AAC5D,SAASC,cAAc,QAAQ,gCAA+B;AAC9D,SAASC,gBAAgB,QAAQ,kCAAiC;AAClE,SAASC,eAAe,QAAQ,uCAAsC;AACtE,SAASC,sBAAsB,QAAQ,iCAAgC;AACvE,SAASC,WAAW,QAAQ,6BAA4B;AACxD,SAASC,YAAY,QAAQ,8BAA6B;AAC1D,SAASC,OAAO,QAAQ,yBAAwB;AAChD,SAASC,IAAI,QAAQ,sBAAqB;AAC1C,SAASC,MAAM,QAAQ,wBAAuB;AAC9C,SAASC,6BAA6B,QAAQ,4DAA2D;AACzG,SAASC,qBAAqB,QAAQ,kDAAiD;AACvF,SAASC,iBAAiB,QAAQ,mCAAkC;AACpE,SAASC,cAAc,QAAQ,uCAAsC;AACrE,cAAc,uBAAsB"}
1
+ {"version":3,"sources":["../../src/exports/postgres.ts"],"sourcesContent":["export { columnToCodeConverter } from '../postgres/columnToCodeConverter.js'\nexport { countDistinct } from '../postgres/countDistinct.js'\nexport { createDatabase } from '../postgres/createDatabase.js'\nexport { createExtensions } from '../postgres/createExtensions.js'\nexport { createJSONQuery } from '../postgres/createJSONQuery/index.js'\nexport { defaultDrizzleSnapshot } from '../postgres/defaultSnapshot.js'\nexport { deleteWhere } from '../postgres/deleteWhere.js'\nexport { dropDatabase } from '../postgres/dropDatabase.js'\nexport { execute } from '../postgres/execute.js'\nexport { init } from '../postgres/init.js'\nexport { insert } from '../postgres/insert.js'\nexport { migratePostgresLocalizeStatus } from '../postgres/predefinedMigrations/localize-status/index.js'\nexport { migratePostgresSizesToVariants } from '../postgres/predefinedMigrations/sizes-to-variants/index.js'\nexport { migratePostgresV2toV3 } from '../postgres/predefinedMigrations/v2-v3/index.js'\nexport { assertOperatorHandlerExtensionsInstalled } from '../postgres/query/assertOperatorHandlerExtensionsInstalled.js'\nexport { postgresUnaccent } from '../postgres/query/postgresUnaccent.js'\nexport { requireDrizzleKit } from '../postgres/requireDrizzleKit.js'\nexport { geometryColumn } from '../postgres/schema/geometryColumn.js'\nexport * from '../postgres/types.js'\n"],"names":["columnToCodeConverter","countDistinct","createDatabase","createExtensions","createJSONQuery","defaultDrizzleSnapshot","deleteWhere","dropDatabase","execute","init","insert","migratePostgresLocalizeStatus","migratePostgresSizesToVariants","migratePostgresV2toV3","assertOperatorHandlerExtensionsInstalled","postgresUnaccent","requireDrizzleKit","geometryColumn"],"mappings":"AAAA,SAASA,qBAAqB,QAAQ,uCAAsC;AAC5E,SAASC,aAAa,QAAQ,+BAA8B;AAC5D,SAASC,cAAc,QAAQ,gCAA+B;AAC9D,SAASC,gBAAgB,QAAQ,kCAAiC;AAClE,SAASC,eAAe,QAAQ,uCAAsC;AACtE,SAASC,sBAAsB,QAAQ,iCAAgC;AACvE,SAASC,WAAW,QAAQ,6BAA4B;AACxD,SAASC,YAAY,QAAQ,8BAA6B;AAC1D,SAASC,OAAO,QAAQ,yBAAwB;AAChD,SAASC,IAAI,QAAQ,sBAAqB;AAC1C,SAASC,MAAM,QAAQ,wBAAuB;AAC9C,SAASC,6BAA6B,QAAQ,4DAA2D;AACzG,SAASC,8BAA8B,QAAQ,8DAA6D;AAC5G,SAASC,qBAAqB,QAAQ,kDAAiD;AACvF,SAASC,wCAAwC,QAAQ,gEAA+D;AACxH,SAASC,gBAAgB,QAAQ,wCAAuC;AACxE,SAASC,iBAAiB,QAAQ,mCAAkC;AACpE,SAASC,cAAc,QAAQ,uCAAsC;AACrE,cAAc,uBAAsB"}
@@ -9,6 +9,7 @@ export { execute } from '../sqlite/execute.js';
9
9
  export { init } from '../sqlite/init.js';
10
10
  export { insert } from '../sqlite/insert.js';
11
11
  export { migrateSqliteLocalizeStatus } from '../sqlite/predefinedMigrations/localize-status/index.js';
12
+ export { migrateSqliteSizesToVariants } from '../sqlite/predefinedMigrations/sizes-to-variants/index.js';
12
13
  export { requireDrizzleKit } from '../sqlite/requireDrizzleKit.js';
13
14
  export * from '../sqlite/types.js';
14
15
  //# sourceMappingURL=sqlite.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"sqlite.d.ts","sourceRoot":"","sources":["../../src/exports/sqlite.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,oCAAoC,CAAA;AAC1E,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAC1D,OAAO,EAAE,0BAA0B,EAAE,MAAM,yDAAyD,CAAA;AACpG,OAAO,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAA;AACpE,OAAO,EAAE,sBAAsB,EAAE,MAAM,8BAA8B,CAAA;AACrE,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAA;AACtD,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAA;AACxD,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAA;AAC9C,OAAO,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAA;AACxC,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAA;AAC5C,OAAO,EAAE,2BAA2B,EAAE,MAAM,yDAAyD,CAAA;AACrG,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAA;AAClE,cAAc,oBAAoB,CAAA"}
1
+ {"version":3,"file":"sqlite.d.ts","sourceRoot":"","sources":["../../src/exports/sqlite.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,oCAAoC,CAAA;AAC1E,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAC1D,OAAO,EAAE,0BAA0B,EAAE,MAAM,yDAAyD,CAAA;AACpG,OAAO,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAA;AACpE,OAAO,EAAE,sBAAsB,EAAE,MAAM,8BAA8B,CAAA;AACrE,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAA;AACtD,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAA;AACxD,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAA;AAC9C,OAAO,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAA;AACxC,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAA;AAC5C,OAAO,EAAE,2BAA2B,EAAE,MAAM,yDAAyD,CAAA;AACrG,OAAO,EAAE,4BAA4B,EAAE,MAAM,2DAA2D,CAAA;AACxG,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAA;AAClE,cAAc,oBAAoB,CAAA"}
@@ -9,6 +9,7 @@ export { execute } from '../sqlite/execute.js';
9
9
  export { init } from '../sqlite/init.js';
10
10
  export { insert } from '../sqlite/insert.js';
11
11
  export { migrateSqliteLocalizeStatus } from '../sqlite/predefinedMigrations/localize-status/index.js';
12
+ export { migrateSqliteSizesToVariants } from '../sqlite/predefinedMigrations/sizes-to-variants/index.js';
12
13
  export { requireDrizzleKit } from '../sqlite/requireDrizzleKit.js';
13
14
  export * from '../sqlite/types.js';
14
15
 
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/exports/sqlite.ts"],"sourcesContent":["export { columnToCodeConverter } from '../sqlite/columnToCodeConverter.js'\nexport { countDistinct } from '../sqlite/countDistinct.js'\nexport { convertPathToJSONTraversal } from '../sqlite/createJSONQuery/convertPathToJSONTraversal.js'\nexport { createJSONQuery } from '../sqlite/createJSONQuery/index.js'\nexport { defaultDrizzleSnapshot } from '../sqlite/defaultSnapshot.js'\nexport { deleteWhere } from '../sqlite/deleteWhere.js'\nexport { dropDatabase } from '../sqlite/dropDatabase.js'\nexport { execute } from '../sqlite/execute.js'\nexport { init } from '../sqlite/init.js'\nexport { insert } from '../sqlite/insert.js'\nexport { migrateSqliteLocalizeStatus } from '../sqlite/predefinedMigrations/localize-status/index.js'\nexport { requireDrizzleKit } from '../sqlite/requireDrizzleKit.js'\nexport * from '../sqlite/types.js'\n"],"names":["columnToCodeConverter","countDistinct","convertPathToJSONTraversal","createJSONQuery","defaultDrizzleSnapshot","deleteWhere","dropDatabase","execute","init","insert","migrateSqliteLocalizeStatus","requireDrizzleKit"],"mappings":"AAAA,SAASA,qBAAqB,QAAQ,qCAAoC;AAC1E,SAASC,aAAa,QAAQ,6BAA4B;AAC1D,SAASC,0BAA0B,QAAQ,0DAAyD;AACpG,SAASC,eAAe,QAAQ,qCAAoC;AACpE,SAASC,sBAAsB,QAAQ,+BAA8B;AACrE,SAASC,WAAW,QAAQ,2BAA0B;AACtD,SAASC,YAAY,QAAQ,4BAA2B;AACxD,SAASC,OAAO,QAAQ,uBAAsB;AAC9C,SAASC,IAAI,QAAQ,oBAAmB;AACxC,SAASC,MAAM,QAAQ,sBAAqB;AAC5C,SAASC,2BAA2B,QAAQ,0DAAyD;AACrG,SAASC,iBAAiB,QAAQ,iCAAgC;AAClE,cAAc,qBAAoB"}
1
+ {"version":3,"sources":["../../src/exports/sqlite.ts"],"sourcesContent":["export { columnToCodeConverter } from '../sqlite/columnToCodeConverter.js'\nexport { countDistinct } from '../sqlite/countDistinct.js'\nexport { convertPathToJSONTraversal } from '../sqlite/createJSONQuery/convertPathToJSONTraversal.js'\nexport { createJSONQuery } from '../sqlite/createJSONQuery/index.js'\nexport { defaultDrizzleSnapshot } from '../sqlite/defaultSnapshot.js'\nexport { deleteWhere } from '../sqlite/deleteWhere.js'\nexport { dropDatabase } from '../sqlite/dropDatabase.js'\nexport { execute } from '../sqlite/execute.js'\nexport { init } from '../sqlite/init.js'\nexport { insert } from '../sqlite/insert.js'\nexport { migrateSqliteLocalizeStatus } from '../sqlite/predefinedMigrations/localize-status/index.js'\nexport { migrateSqliteSizesToVariants } from '../sqlite/predefinedMigrations/sizes-to-variants/index.js'\nexport { requireDrizzleKit } from '../sqlite/requireDrizzleKit.js'\nexport * from '../sqlite/types.js'\n"],"names":["columnToCodeConverter","countDistinct","convertPathToJSONTraversal","createJSONQuery","defaultDrizzleSnapshot","deleteWhere","dropDatabase","execute","init","insert","migrateSqliteLocalizeStatus","migrateSqliteSizesToVariants","requireDrizzleKit"],"mappings":"AAAA,SAASA,qBAAqB,QAAQ,qCAAoC;AAC1E,SAASC,aAAa,QAAQ,6BAA4B;AAC1D,SAASC,0BAA0B,QAAQ,0DAAyD;AACpG,SAASC,eAAe,QAAQ,qCAAoC;AACpE,SAASC,sBAAsB,QAAQ,+BAA8B;AACrE,SAASC,WAAW,QAAQ,2BAA0B;AACtD,SAASC,YAAY,QAAQ,4BAA2B;AACxD,SAASC,OAAO,QAAQ,uBAAsB;AAC9C,SAASC,IAAI,QAAQ,oBAAmB;AACxC,SAASC,MAAM,QAAQ,sBAAqB;AAC5C,SAASC,2BAA2B,QAAQ,0DAAyD;AACrG,SAASC,4BAA4B,QAAQ,4DAA2D;AACxG,SAASC,iBAAiB,QAAQ,iCAAgC;AAClE,cAAc,qBAAoB"}
@@ -1,5 +1,5 @@
1
1
  import type { DBQueryConfig } from 'drizzle-orm';
2
- import type { FlattenedField, JoinQuery, PayloadRequest, SelectType } from 'payload';
2
+ import type { FlattenedField, JoinQuery, SelectType } from 'payload';
3
3
  import type { BuildQueryJoinAliases, DrizzleAdapter } from '../types.js';
4
4
  type BuildFindQueryArgs = {
5
5
  adapter: DrizzleAdapter;
@@ -13,7 +13,6 @@ type BuildFindQueryArgs = {
13
13
  */
14
14
  joins?: BuildQueryJoinAliases;
15
15
  locale?: string;
16
- req?: Partial<PayloadRequest>;
17
16
  select?: SelectType;
18
17
  tableName: string;
19
18
  versions?: boolean;
@@ -23,6 +22,6 @@ export type Result = {
23
22
  _locales?: DBQueryConfig<'many', true, any, any>;
24
23
  } & DBQueryConfig<'many', true, any, any>;
25
24
  } & DBQueryConfig<'many', true, any, any>;
26
- export declare const buildFindManyArgs: ({ adapter, collectionSlug, depth, draftsEnabled, fields, joinQuery, joins, locale, req, select, tableName, versions, }: BuildFindQueryArgs) => Result;
25
+ export declare const buildFindManyArgs: ({ adapter, collectionSlug, depth, draftsEnabled, fields, joinQuery, joins, locale, select, tableName, versions, }: BuildFindQueryArgs) => Result;
27
26
  export {};
28
27
  //# sourceMappingURL=buildFindManyArgs.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"buildFindManyArgs.d.ts","sourceRoot":"","sources":["../../src/find/buildFindManyArgs.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAChD,OAAO,KAAK,EAAE,cAAc,EAAE,SAAS,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,SAAS,CAAA;AAIpF,OAAO,KAAK,EAAE,qBAAqB,EAAE,cAAc,EAAE,MAAM,aAAa,CAAA;AAIxE,KAAK,kBAAkB,GAAG;IACxB,OAAO,EAAE,cAAc,CAAA;IACvB,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,KAAK,EAAE,MAAM,CAAA;IACb,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,MAAM,EAAE,cAAc,EAAE,CAAA;IACxB,SAAS,CAAC,EAAE,SAAS,CAAA;IACrB;;OAEG;IACH,KAAK,CAAC,EAAE,qBAAqB,CAAA;IAC7B,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,GAAG,CAAC,EAAE,OAAO,CAAC,cAAc,CAAC,CAAA;IAC7B,MAAM,CAAC,EAAE,UAAU,CAAA;IACnB,SAAS,EAAE,MAAM,CAAA;IACjB,QAAQ,CAAC,EAAE,OAAO,CAAA;CACnB,CAAA;AAED,MAAM,MAAM,MAAM,GAAG;IACnB,IAAI,CAAC,EAAE;QACL,QAAQ,CAAC,EAAE,aAAa,CAAC,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,CAAC,CAAA;KACjD,GAAG,aAAa,CAAC,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,CAAC,CAAA;CAC1C,GAAG,aAAa,CAAC,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,CAAC,CAAA;AAIzC,eAAO,MAAM,iBAAiB,2HAa3B,kBAAkB,KAAG,MAmGvB,CAAA"}
1
+ {"version":3,"file":"buildFindManyArgs.d.ts","sourceRoot":"","sources":["../../src/find/buildFindManyArgs.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAChD,OAAO,KAAK,EAAE,cAAc,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,SAAS,CAAA;AAIpE,OAAO,KAAK,EAAE,qBAAqB,EAAE,cAAc,EAAE,MAAM,aAAa,CAAA;AAIxE,KAAK,kBAAkB,GAAG;IACxB,OAAO,EAAE,cAAc,CAAA;IACvB,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,KAAK,EAAE,MAAM,CAAA;IACb,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,MAAM,EAAE,cAAc,EAAE,CAAA;IACxB,SAAS,CAAC,EAAE,SAAS,CAAA;IACrB;;OAEG;IACH,KAAK,CAAC,EAAE,qBAAqB,CAAA;IAC7B,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,MAAM,CAAC,EAAE,UAAU,CAAA;IACnB,SAAS,EAAE,MAAM,CAAA;IACjB,QAAQ,CAAC,EAAE,OAAO,CAAA;CACnB,CAAA;AAED,MAAM,MAAM,MAAM,GAAG;IACnB,IAAI,CAAC,EAAE;QACL,QAAQ,CAAC,EAAE,aAAa,CAAC,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,CAAC,CAAA;KACjD,GAAG,aAAa,CAAC,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,CAAC,CAAA;CAC1C,GAAG,aAAa,CAAC,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,CAAC,CAAA;AAIzC,eAAO,MAAM,iBAAiB,sHAY3B,kBAAkB,KAAG,MAkGvB,CAAA"}
@@ -2,7 +2,7 @@ import { getSelectMode } from 'payload/shared';
2
2
  import { traverseFields } from './traverseFields.js';
3
3
  // Generate the Drizzle query for findMany based on
4
4
  // a collection field structure
5
- export const buildFindManyArgs = ({ adapter, collectionSlug, depth, draftsEnabled, fields, joinQuery, joins = [], locale, req, select, tableName, versions })=>{
5
+ export const buildFindManyArgs = ({ adapter, collectionSlug, depth, draftsEnabled, fields, joinQuery, joins = [], locale, select, tableName, versions })=>{
6
6
  const result = {
7
7
  extras: {},
8
8
  with: {}
@@ -40,7 +40,6 @@ export const buildFindManyArgs = ({ adapter, collectionSlug, depth, draftsEnable
40
40
  joins,
41
41
  locale,
42
42
  path: '',
43
- req,
44
43
  select,
45
44
  selectMode: select ? getSelectMode(select) : undefined,
46
45
  tablePath: '',
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/find/buildFindManyArgs.ts"],"sourcesContent":["import type { DBQueryConfig } from 'drizzle-orm'\nimport type { FlattenedField, JoinQuery, PayloadRequest, SelectType } from 'payload'\n\nimport { getSelectMode } from 'payload/shared'\n\nimport type { BuildQueryJoinAliases, DrizzleAdapter } from '../types.js'\n\nimport { traverseFields } from './traverseFields.js'\n\ntype BuildFindQueryArgs = {\n adapter: DrizzleAdapter\n collectionSlug?: string\n depth: number\n draftsEnabled?: boolean\n fields: FlattenedField[]\n joinQuery?: JoinQuery\n /**\n * The joins array will be mutated by pushing any joins needed for the where queries of join field joins\n */\n joins?: BuildQueryJoinAliases\n locale?: string\n req?: Partial<PayloadRequest>\n select?: SelectType\n tableName: string\n versions?: boolean\n}\n\nexport type Result = {\n with?: {\n _locales?: DBQueryConfig<'many', true, any, any>\n } & DBQueryConfig<'many', true, any, any>\n} & DBQueryConfig<'many', true, any, any>\n\n// Generate the Drizzle query for findMany based on\n// a collection field structure\nexport const buildFindManyArgs = ({\n adapter,\n collectionSlug,\n depth,\n draftsEnabled,\n fields,\n joinQuery,\n joins = [],\n locale,\n req,\n select,\n tableName,\n versions,\n}: BuildFindQueryArgs): Result => {\n const result: Result = {\n extras: {},\n with: {},\n }\n\n if (select) {\n result.columns = {\n id: true,\n }\n }\n\n const _locales: Result = {\n columns: select\n ? { _locale: true }\n : {\n id: false,\n _parentID: false,\n },\n extras: {},\n with: {},\n }\n\n const withTabledFields = select\n ? {}\n : {\n numbers: true,\n rels: true,\n texts: true,\n }\n\n traverseFields({\n _locales,\n adapter,\n collectionSlug,\n currentArgs: result,\n currentTableName: tableName,\n depth,\n draftsEnabled,\n fields,\n joinQuery,\n joins,\n locale,\n path: '',\n req,\n select,\n selectMode: select ? getSelectMode(select) : undefined,\n tablePath: '',\n topLevelArgs: result,\n topLevelTableName: tableName,\n versions,\n withTabledFields,\n })\n\n if (adapter.tables[`${tableName}_texts`] && withTabledFields.texts) {\n result.with._texts = {\n columns: {\n id: false,\n parent: false,\n },\n orderBy: ({ order }, { asc: ASC }) => [ASC(order)],\n }\n }\n\n if (adapter.tables[`${tableName}_numbers`] && withTabledFields.numbers) {\n result.with._numbers = {\n columns: {\n id: false,\n parent: false,\n },\n orderBy: ({ order }, { asc: ASC }) => [ASC(order)],\n }\n }\n\n if (adapter.tables[`${tableName}${adapter.relationshipsSuffix}`] && withTabledFields.rels) {\n result.with._rels = {\n columns: {\n id: false,\n parent: false,\n },\n orderBy: ({ order }, { asc: ASC }) => [ASC(order)],\n }\n }\n\n if (\n adapter.tables[`${tableName}${adapter.localesSuffix}`] &&\n (!select || Object.keys(_locales.columns).length > 1)\n ) {\n result.with._locales = _locales\n }\n\n // Delete properties that are empty\n for (const key of Object.keys(result)) {\n if (!Object.keys(result[key]).length) {\n delete result[key]\n }\n }\n\n return result\n}\n"],"names":["getSelectMode","traverseFields","buildFindManyArgs","adapter","collectionSlug","depth","draftsEnabled","fields","joinQuery","joins","locale","req","select","tableName","versions","result","extras","with","columns","id","_locales","_locale","_parentID","withTabledFields","numbers","rels","texts","currentArgs","currentTableName","path","selectMode","undefined","tablePath","topLevelArgs","topLevelTableName","tables","_texts","parent","orderBy","order","asc","ASC","_numbers","relationshipsSuffix","_rels","localesSuffix","Object","keys","length","key"],"mappings":"AAGA,SAASA,aAAa,QAAQ,iBAAgB;AAI9C,SAASC,cAAc,QAAQ,sBAAqB;AA0BpD,mDAAmD;AACnD,+BAA+B;AAC/B,OAAO,MAAMC,oBAAoB,CAAC,EAChCC,OAAO,EACPC,cAAc,EACdC,KAAK,EACLC,aAAa,EACbC,MAAM,EACNC,SAAS,EACTC,QAAQ,EAAE,EACVC,MAAM,EACNC,GAAG,EACHC,MAAM,EACNC,SAAS,EACTC,QAAQ,EACW;IACnB,MAAMC,SAAiB;QACrBC,QAAQ,CAAC;QACTC,MAAM,CAAC;IACT;IAEA,IAAIL,QAAQ;QACVG,OAAOG,OAAO,GAAG;YACfC,IAAI;QACN;IACF;IAEA,MAAMC,WAAmB;QACvBF,SAASN,SACL;YAAES,SAAS;QAAK,IAChB;YACEF,IAAI;YACJG,WAAW;QACb;QACJN,QAAQ,CAAC;QACTC,MAAM,CAAC;IACT;IAEA,MAAMM,mBAAmBX,SACrB,CAAC,IACD;QACEY,SAAS;QACTC,MAAM;QACNC,OAAO;IACT;IAEJzB,eAAe;QACbmB;QACAjB;QACAC;QACAuB,aAAaZ;QACba,kBAAkBf;QAClBR;QACAC;QACAC;QACAC;QACAC;QACAC;QACAmB,MAAM;QACNlB;QACAC;QACAkB,YAAYlB,SAASZ,cAAcY,UAAUmB;QAC7CC,WAAW;QACXC,cAAclB;QACdmB,mBAAmBrB;QACnBC;QACAS;IACF;IAEA,IAAIpB,QAAQgC,MAAM,CAAC,GAAGtB,UAAU,MAAM,CAAC,CAAC,IAAIU,iBAAiBG,KAAK,EAAE;QAClEX,OAAOE,IAAI,CAACmB,MAAM,GAAG;YACnBlB,SAAS;gBACPC,IAAI;gBACJkB,QAAQ;YACV;YACAC,SAAS,CAAC,EAAEC,KAAK,EAAE,EAAE,EAAEC,KAAKC,GAAG,EAAE,GAAK;oBAACA,IAAIF;iBAAO;QACpD;IACF;IAEA,IAAIpC,QAAQgC,MAAM,CAAC,GAAGtB,UAAU,QAAQ,CAAC,CAAC,IAAIU,iBAAiBC,OAAO,EAAE;QACtET,OAAOE,IAAI,CAACyB,QAAQ,GAAG;YACrBxB,SAAS;gBACPC,IAAI;gBACJkB,QAAQ;YACV;YACAC,SAAS,CAAC,EAAEC,KAAK,EAAE,EAAE,EAAEC,KAAKC,GAAG,EAAE,GAAK;oBAACA,IAAIF;iBAAO;QACpD;IACF;IAEA,IAAIpC,QAAQgC,MAAM,CAAC,GAAGtB,YAAYV,QAAQwC,mBAAmB,EAAE,CAAC,IAAIpB,iBAAiBE,IAAI,EAAE;QACzFV,OAAOE,IAAI,CAAC2B,KAAK,GAAG;YAClB1B,SAAS;gBACPC,IAAI;gBACJkB,QAAQ;YACV;YACAC,SAAS,CAAC,EAAEC,KAAK,EAAE,EAAE,EAAEC,KAAKC,GAAG,EAAE,GAAK;oBAACA,IAAIF;iBAAO;QACpD;IACF;IAEA,IACEpC,QAAQgC,MAAM,CAAC,GAAGtB,YAAYV,QAAQ0C,aAAa,EAAE,CAAC,IACrD,CAAA,CAACjC,UAAUkC,OAAOC,IAAI,CAAC3B,SAASF,OAAO,EAAE8B,MAAM,GAAG,CAAA,GACnD;QACAjC,OAAOE,IAAI,CAACG,QAAQ,GAAGA;IACzB;IAEA,mCAAmC;IACnC,KAAK,MAAM6B,OAAOH,OAAOC,IAAI,CAAChC,QAAS;QACrC,IAAI,CAAC+B,OAAOC,IAAI,CAAChC,MAAM,CAACkC,IAAI,EAAED,MAAM,EAAE;YACpC,OAAOjC,MAAM,CAACkC,IAAI;QACpB;IACF;IAEA,OAAOlC;AACT,EAAC"}
1
+ {"version":3,"sources":["../../src/find/buildFindManyArgs.ts"],"sourcesContent":["import type { DBQueryConfig } from 'drizzle-orm'\nimport type { FlattenedField, JoinQuery, SelectType } from 'payload'\n\nimport { getSelectMode } from 'payload/shared'\n\nimport type { BuildQueryJoinAliases, DrizzleAdapter } from '../types.js'\n\nimport { traverseFields } from './traverseFields.js'\n\ntype BuildFindQueryArgs = {\n adapter: DrizzleAdapter\n collectionSlug?: string\n depth: number\n draftsEnabled?: boolean\n fields: FlattenedField[]\n joinQuery?: JoinQuery\n /**\n * The joins array will be mutated by pushing any joins needed for the where queries of join field joins\n */\n joins?: BuildQueryJoinAliases\n locale?: string\n select?: SelectType\n tableName: string\n versions?: boolean\n}\n\nexport type Result = {\n with?: {\n _locales?: DBQueryConfig<'many', true, any, any>\n } & DBQueryConfig<'many', true, any, any>\n} & DBQueryConfig<'many', true, any, any>\n\n// Generate the Drizzle query for findMany based on\n// a collection field structure\nexport const buildFindManyArgs = ({\n adapter,\n collectionSlug,\n depth,\n draftsEnabled,\n fields,\n joinQuery,\n joins = [],\n locale,\n select,\n tableName,\n versions,\n}: BuildFindQueryArgs): Result => {\n const result: Result = {\n extras: {},\n with: {},\n }\n\n if (select) {\n result.columns = {\n id: true,\n }\n }\n\n const _locales: Result = {\n columns: select\n ? { _locale: true }\n : {\n id: false,\n _parentID: false,\n },\n extras: {},\n with: {},\n }\n\n const withTabledFields = select\n ? {}\n : {\n numbers: true,\n rels: true,\n texts: true,\n }\n\n traverseFields({\n _locales,\n adapter,\n collectionSlug,\n currentArgs: result,\n currentTableName: tableName,\n depth,\n draftsEnabled,\n fields,\n joinQuery,\n joins,\n locale,\n path: '',\n select,\n selectMode: select ? getSelectMode(select) : undefined,\n tablePath: '',\n topLevelArgs: result,\n topLevelTableName: tableName,\n versions,\n withTabledFields,\n })\n\n if (adapter.tables[`${tableName}_texts`] && withTabledFields.texts) {\n result.with._texts = {\n columns: {\n id: false,\n parent: false,\n },\n orderBy: ({ order }, { asc: ASC }) => [ASC(order)],\n }\n }\n\n if (adapter.tables[`${tableName}_numbers`] && withTabledFields.numbers) {\n result.with._numbers = {\n columns: {\n id: false,\n parent: false,\n },\n orderBy: ({ order }, { asc: ASC }) => [ASC(order)],\n }\n }\n\n if (adapter.tables[`${tableName}${adapter.relationshipsSuffix}`] && withTabledFields.rels) {\n result.with._rels = {\n columns: {\n id: false,\n parent: false,\n },\n orderBy: ({ order }, { asc: ASC }) => [ASC(order)],\n }\n }\n\n if (\n adapter.tables[`${tableName}${adapter.localesSuffix}`] &&\n (!select || Object.keys(_locales.columns).length > 1)\n ) {\n result.with._locales = _locales\n }\n\n // Delete properties that are empty\n for (const key of Object.keys(result)) {\n if (!Object.keys(result[key]).length) {\n delete result[key]\n }\n }\n\n return result\n}\n"],"names":["getSelectMode","traverseFields","buildFindManyArgs","adapter","collectionSlug","depth","draftsEnabled","fields","joinQuery","joins","locale","select","tableName","versions","result","extras","with","columns","id","_locales","_locale","_parentID","withTabledFields","numbers","rels","texts","currentArgs","currentTableName","path","selectMode","undefined","tablePath","topLevelArgs","topLevelTableName","tables","_texts","parent","orderBy","order","asc","ASC","_numbers","relationshipsSuffix","_rels","localesSuffix","Object","keys","length","key"],"mappings":"AAGA,SAASA,aAAa,QAAQ,iBAAgB;AAI9C,SAASC,cAAc,QAAQ,sBAAqB;AAyBpD,mDAAmD;AACnD,+BAA+B;AAC/B,OAAO,MAAMC,oBAAoB,CAAC,EAChCC,OAAO,EACPC,cAAc,EACdC,KAAK,EACLC,aAAa,EACbC,MAAM,EACNC,SAAS,EACTC,QAAQ,EAAE,EACVC,MAAM,EACNC,MAAM,EACNC,SAAS,EACTC,QAAQ,EACW;IACnB,MAAMC,SAAiB;QACrBC,QAAQ,CAAC;QACTC,MAAM,CAAC;IACT;IAEA,IAAIL,QAAQ;QACVG,OAAOG,OAAO,GAAG;YACfC,IAAI;QACN;IACF;IAEA,MAAMC,WAAmB;QACvBF,SAASN,SACL;YAAES,SAAS;QAAK,IAChB;YACEF,IAAI;YACJG,WAAW;QACb;QACJN,QAAQ,CAAC;QACTC,MAAM,CAAC;IACT;IAEA,MAAMM,mBAAmBX,SACrB,CAAC,IACD;QACEY,SAAS;QACTC,MAAM;QACNC,OAAO;IACT;IAEJxB,eAAe;QACbkB;QACAhB;QACAC;QACAsB,aAAaZ;QACba,kBAAkBf;QAClBP;QACAC;QACAC;QACAC;QACAC;QACAC;QACAkB,MAAM;QACNjB;QACAkB,YAAYlB,SAASX,cAAcW,UAAUmB;QAC7CC,WAAW;QACXC,cAAclB;QACdmB,mBAAmBrB;QACnBC;QACAS;IACF;IAEA,IAAInB,QAAQ+B,MAAM,CAAC,GAAGtB,UAAU,MAAM,CAAC,CAAC,IAAIU,iBAAiBG,KAAK,EAAE;QAClEX,OAAOE,IAAI,CAACmB,MAAM,GAAG;YACnBlB,SAAS;gBACPC,IAAI;gBACJkB,QAAQ;YACV;YACAC,SAAS,CAAC,EAAEC,KAAK,EAAE,EAAE,EAAEC,KAAKC,GAAG,EAAE,GAAK;oBAACA,IAAIF;iBAAO;QACpD;IACF;IAEA,IAAInC,QAAQ+B,MAAM,CAAC,GAAGtB,UAAU,QAAQ,CAAC,CAAC,IAAIU,iBAAiBC,OAAO,EAAE;QACtET,OAAOE,IAAI,CAACyB,QAAQ,GAAG;YACrBxB,SAAS;gBACPC,IAAI;gBACJkB,QAAQ;YACV;YACAC,SAAS,CAAC,EAAEC,KAAK,EAAE,EAAE,EAAEC,KAAKC,GAAG,EAAE,GAAK;oBAACA,IAAIF;iBAAO;QACpD;IACF;IAEA,IAAInC,QAAQ+B,MAAM,CAAC,GAAGtB,YAAYT,QAAQuC,mBAAmB,EAAE,CAAC,IAAIpB,iBAAiBE,IAAI,EAAE;QACzFV,OAAOE,IAAI,CAAC2B,KAAK,GAAG;YAClB1B,SAAS;gBACPC,IAAI;gBACJkB,QAAQ;YACV;YACAC,SAAS,CAAC,EAAEC,KAAK,EAAE,EAAE,EAAEC,KAAKC,GAAG,EAAE,GAAK;oBAACA,IAAIF;iBAAO;QACpD;IACF;IAEA,IACEnC,QAAQ+B,MAAM,CAAC,GAAGtB,YAAYT,QAAQyC,aAAa,EAAE,CAAC,IACrD,CAAA,CAACjC,UAAUkC,OAAOC,IAAI,CAAC3B,SAASF,OAAO,EAAE8B,MAAM,GAAG,CAAA,GACnD;QACAjC,OAAOE,IAAI,CAACG,QAAQ,GAAGA;IACzB;IAEA,mCAAmC;IACnC,KAAK,MAAM6B,OAAOH,OAAOC,IAAI,CAAChC,QAAS;QACrC,IAAI,CAAC+B,OAAOC,IAAI,CAAChC,MAAM,CAACkC,IAAI,EAAED,MAAM,EAAE;YACpC,OAAOjC,MAAM,CAACkC,IAAI;QACpB;IACF;IAEA,OAAOlC;AACT,EAAC"}
@@ -0,0 +1,38 @@
1
+ import type { SQL } from 'drizzle-orm';
2
+ import { type FlattenedJoinField, type Where } from 'payload';
3
+ import type { DrizzleAdapter } from '../types.js';
4
+ type BuildPolymorphicJoinQueryArgs = {
5
+ adapter: DrizzleAdapter;
6
+ currentTableName: string;
7
+ field: FlattenedJoinField;
8
+ limit: number;
9
+ locale?: string;
10
+ page?: number;
11
+ path: string;
12
+ shouldCount: boolean;
13
+ sort?: string | string[];
14
+ where?: Where;
15
+ };
16
+ type PolymorphicJoinQuery = {
17
+ columnName: string;
18
+ count?: SQL.Aliased;
19
+ documents: SQL.Aliased;
20
+ };
21
+ /**
22
+ * Builds the correlated document and optional count projections for a join that targets multiple
23
+ * collections. Every collection branch exposes the same `id`, parent, `relationTo`, and sort
24
+ * columns before the branches are combined. A missing sort field resolves to SQL NULL so targets
25
+ * with different schemas can still share one ordered union.
26
+ *
27
+ * `field.collection` must contain at least one configured collection. Each mapped table must have
28
+ * an `id` column and the column named by `field.on`. The supplied `limit` is used as-is; callers can
29
+ * include an extra look-ahead row when they calculate pagination.
30
+ *
31
+ * @returns The stable projection name, the document projection, and the count projection when
32
+ * `shouldCount` is true.
33
+ * @throws If the join definition, target collection, mapped table, required columns, or sort shape
34
+ * cannot be represented by the polymorphic query.
35
+ */
36
+ export declare const buildPolymorphicJoinQuery: ({ adapter, currentTableName, field, limit, locale, page, path, shouldCount, sort, where, }: BuildPolymorphicJoinQueryArgs) => PolymorphicJoinQuery;
37
+ export {};
38
+ //# sourceMappingURL=buildPolymorphicJoinQuery.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"buildPolymorphicJoinQuery.d.ts","sourceRoot":"","sources":["../../src/find/buildPolymorphicJoinQuery.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,aAAa,CAAA;AAKtC,OAAO,EAAE,KAAK,kBAAkB,EAAE,KAAK,KAAK,EAAE,MAAM,SAAS,CAAA;AAG7D,OAAO,KAAK,EAAE,cAAc,EAAgB,MAAM,aAAa,CAAA;AAO/D,KAAK,6BAA6B,GAAG;IACnC,OAAO,EAAE,cAAc,CAAA;IACvB,gBAAgB,EAAE,MAAM,CAAA;IACxB,KAAK,EAAE,kBAAkB,CAAA;IACzB,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,MAAM,CAAA;IACZ,WAAW,EAAE,OAAO,CAAA;IACpB,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAA;IACxB,KAAK,CAAC,EAAE,KAAK,CAAA;CACd,CAAA;AAED,KAAK,oBAAoB,GAAG;IAC1B,UAAU,EAAE,MAAM,CAAA;IAClB,KAAK,CAAC,EAAE,GAAG,CAAC,OAAO,CAAA;IACnB,SAAS,EAAE,GAAG,CAAC,OAAO,CAAA;CACvB,CAAA;AAED;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,yBAAyB,+FAWnC,6BAA6B,KAAG,oBA6HlC,CAAA"}
@@ -0,0 +1,135 @@
1
+ import { asc, count, desc, eq, sql } from 'drizzle-orm';
2
+ import toSnakeCase from 'to-snake-case';
3
+ import { jsonAggBuildObject } from '../utilities/json.js';
4
+ import { buildPolymorphicJoinWhere } from './buildPolymorphicJoinWhere.js';
5
+ import { createPolymorphicJoinWherePlan } from './createPolymorphicJoinWherePlan.js';
6
+ /**
7
+ * Builds the correlated document and optional count projections for a join that targets multiple
8
+ * collections. Every collection branch exposes the same `id`, parent, `relationTo`, and sort
9
+ * columns before the branches are combined. A missing sort field resolves to SQL NULL so targets
10
+ * with different schemas can still share one ordered union.
11
+ *
12
+ * `field.collection` must contain at least one configured collection. Each mapped table must have
13
+ * an `id` column and the column named by `field.on`. The supplied `limit` is used as-is; callers can
14
+ * include an extra look-ahead row when they calculate pagination.
15
+ *
16
+ * @returns The stable projection name, the document projection, and the count projection when
17
+ * `shouldCount` is true.
18
+ * @throws If the join definition, target collection, mapped table, required columns, or sort shape
19
+ * cannot be represented by the polymorphic query.
20
+ */ export const buildPolymorphicJoinQuery = ({ adapter, currentTableName, field, limit, locale, page, path, shouldCount, sort, where })=>{
21
+ if (!Array.isArray(field.collection)) {
22
+ throw new Error('A polymorphic join requires a collection array');
23
+ }
24
+ if (field.collection.length === 0) {
25
+ throw new Error('A polymorphic join requires at least one collection');
26
+ }
27
+ if (Array.isArray(sort)) {
28
+ throw new Error('Polymorphic joins do not support multiple sort fields');
29
+ }
30
+ const collections = field.collection;
31
+ const columnName = `${path.replaceAll('.', '_')}${field.name}`;
32
+ const db = adapter.drizzle;
33
+ const onPath = field.on.split('.').join('_');
34
+ const collectionTables = collections.map((collection)=>{
35
+ if (!adapter.payload.collections[collection]) {
36
+ throw new Error(`Unknown polymorphic join collection "${collection}"`);
37
+ }
38
+ const tableName = adapter.tableNameMap.get(toSnakeCase(collection));
39
+ const table = tableName ? adapter.tables[tableName] : undefined;
40
+ if (!table) {
41
+ throw new Error(`Polymorphic join collection "${collection}" has no database table`);
42
+ }
43
+ if (!table['id']) {
44
+ throw new Error(`Polymorphic join collection "${collection}" has no "id" column`);
45
+ }
46
+ if (!table[onPath]) {
47
+ throw new Error(`Polymorphic join collection "${collection}" has no "${onPath}" column`);
48
+ }
49
+ return {
50
+ collection,
51
+ table
52
+ };
53
+ });
54
+ const sortField = getSortField({
55
+ adapter,
56
+ collections,
57
+ sort
58
+ });
59
+ const sortOrder = sortField.startsWith('-') ? desc : asc;
60
+ const sortPath = sortField.replace('-', '').split('.').join('_');
61
+ const wherePlan = where ? createPolymorphicJoinWherePlan({
62
+ adapter,
63
+ collections,
64
+ where
65
+ }) : new Map();
66
+ let unionQuery = null;
67
+ for (const { collection, table } of collectionTables){
68
+ const sortColumn = table[sortPath];
69
+ const selectFields = {
70
+ id: table['id'],
71
+ parent: sql`${table[onPath]}`.as(onPath),
72
+ relationTo: sql`${collection}`.as('relationTo'),
73
+ sortPath: sql`${sortColumn ?? null}`.as('sortPath')
74
+ };
75
+ const collectionWhere = where && Object.keys(where).length > 0 ? buildPolymorphicJoinWhere({
76
+ adapter,
77
+ collection,
78
+ locale,
79
+ table,
80
+ where,
81
+ wherePlan
82
+ }) : undefined;
83
+ let collectionQuery = db.select(selectFields).from(table).$dynamic();
84
+ if (collectionWhere) {
85
+ collectionQuery = collectionQuery.where(collectionWhere);
86
+ }
87
+ if (unionQuery === null) {
88
+ unionQuery = collectionQuery;
89
+ } else {
90
+ unionQuery = unionQuery.unionAll(collectionQuery);
91
+ }
92
+ }
93
+ const subQueryAlias = `${columnName}_subquery`;
94
+ const parentConstraint = eq(sql.raw(`"${currentTableName}"."id"`), sql.raw(`"${subQueryAlias}"."${onPath}"`));
95
+ const countExpression = shouldCount ? sql`${db.select({
96
+ count: count()
97
+ }).from(sql`${unionQuery.as(subQueryAlias)}`).where(parentConstraint)}`.as(`${columnName}_count`) : undefined;
98
+ unionQuery = unionQuery.orderBy(sortOrder(sql`"sortPath"`));
99
+ const sortedUnionAlias = `${columnName}_sorted`;
100
+ let limitOffsetSQL = sql.empty();
101
+ if (limit) {
102
+ limitOffsetSQL = sql` LIMIT ${limit}`;
103
+ }
104
+ if (page && limit !== 0) {
105
+ const offset = (page - 1) * limit;
106
+ if (offset > 0) {
107
+ limitOffsetSQL = sql`${limitOffsetSQL} OFFSET ${offset}`;
108
+ }
109
+ }
110
+ const parentWhere = sql.raw(`"${sortedUnionAlias}"."${onPath}" = "${currentTableName}"."id"`);
111
+ const documents = sql`(
112
+ SELECT ${jsonAggBuildObject(adapter, {
113
+ id: sql.raw(`"${subQueryAlias}"."id"`),
114
+ relationTo: sql.raw(`"${subQueryAlias}"."relationTo"`)
115
+ })}
116
+ FROM (
117
+ SELECT * FROM ${sql`${unionQuery.as(sortedUnionAlias)}`}
118
+ WHERE ${parentWhere}${limitOffsetSQL}
119
+ ) AS ${sql.raw(`"${subQueryAlias}"`)}
120
+ )`.as(columnName);
121
+ return {
122
+ columnName,
123
+ count: countExpression,
124
+ documents
125
+ };
126
+ };
127
+ const getSortField = ({ adapter, collections, sort })=>{
128
+ if (sort) {
129
+ return sort;
130
+ }
131
+ const hasCreatedAt = collections.some((collection)=>adapter.payload.collections[collection].config.fields.some((field)=>field.type === 'date' && field.name === 'createdAt'));
132
+ return hasCreatedAt ? '-createdAt' : 'id';
133
+ };
134
+
135
+ //# sourceMappingURL=buildPolymorphicJoinQuery.js.map