@payloadcms/drizzle 4.0.0-internal.a6582c6 → 4.0.0-internal.a9d2e4e

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 (305) hide show
  1. package/dist/count.d.ts.map +1 -1
  2. package/dist/count.js +25 -3
  3. package/dist/count.js.map +1 -1
  4. package/dist/countGlobalVersions.js +8 -3
  5. package/dist/countGlobalVersions.js.map +1 -1
  6. package/dist/countVersions.d.ts.map +1 -1
  7. package/dist/countVersions.js +29 -4
  8. package/dist/countVersions.js.map +1 -1
  9. package/dist/createGlobalVersion.d.ts.map +1 -1
  10. package/dist/createGlobalVersion.js +17 -2
  11. package/dist/createGlobalVersion.js.map +1 -1
  12. package/dist/createTableName.d.ts.map +1 -1
  13. package/dist/createTableName.js +2 -7
  14. package/dist/createTableName.js.map +1 -1
  15. package/dist/createVersion.d.ts.map +1 -1
  16. package/dist/createVersion.js +12 -1
  17. package/dist/createVersion.js.map +1 -1
  18. package/dist/deleteBranchGlobal.d.ts +10 -0
  19. package/dist/deleteBranchGlobal.d.ts.map +1 -0
  20. package/dist/deleteBranchGlobal.js +27 -0
  21. package/dist/deleteBranchGlobal.js.map +1 -0
  22. package/dist/deleteOne.d.ts.map +1 -1
  23. package/dist/deleteOne.js +25 -1
  24. package/dist/deleteOne.js.map +1 -1
  25. package/dist/exports/postgres.d.ts +4 -1
  26. package/dist/exports/postgres.d.ts.map +1 -1
  27. package/dist/exports/postgres.js +4 -1
  28. package/dist/exports/postgres.js.map +1 -1
  29. package/dist/exports/sqlite.d.ts +2 -1
  30. package/dist/exports/sqlite.d.ts.map +1 -1
  31. package/dist/exports/sqlite.js +2 -1
  32. package/dist/exports/sqlite.js.map +1 -1
  33. package/dist/find/buildFindManyArgs.d.ts +3 -2
  34. package/dist/find/buildFindManyArgs.d.ts.map +1 -1
  35. package/dist/find/buildFindManyArgs.js +2 -1
  36. package/dist/find/buildFindManyArgs.js.map +1 -1
  37. package/dist/find/buildPolymorphicJoinQuery.d.ts +40 -0
  38. package/dist/find/buildPolymorphicJoinQuery.d.ts.map +1 -0
  39. package/dist/find/buildPolymorphicJoinQuery.js +163 -0
  40. package/dist/find/buildPolymorphicJoinQuery.js.map +1 -0
  41. package/dist/find/buildPolymorphicJoinWhere.d.ts +20 -0
  42. package/dist/find/buildPolymorphicJoinWhere.d.ts.map +1 -0
  43. package/dist/find/buildPolymorphicJoinWhere.js +301 -0
  44. package/dist/find/buildPolymorphicJoinWhere.js.map +1 -0
  45. package/dist/find/createPolymorphicJoinWherePlan.d.ts +38 -0
  46. package/dist/find/createPolymorphicJoinWherePlan.d.ts.map +1 -0
  47. package/dist/find/createPolymorphicJoinWherePlan.js +200 -0
  48. package/dist/find/createPolymorphicJoinWherePlan.js.map +1 -0
  49. package/dist/find/findMany.d.ts +6 -1
  50. package/dist/find/findMany.d.ts.map +1 -1
  51. package/dist/find/findMany.js +16 -3
  52. package/dist/find/findMany.js.map +1 -1
  53. package/dist/find/traverseFields.d.ts +3 -2
  54. package/dist/find/traverseFields.d.ts.map +1 -1
  55. package/dist/find/traverseFields.js +82 -198
  56. package/dist/find/traverseFields.js.map +1 -1
  57. package/dist/find.d.ts.map +1 -1
  58. package/dist/find.js +32 -4
  59. package/dist/find.js.map +1 -1
  60. package/dist/findDistinct.d.ts.map +1 -1
  61. package/dist/findDistinct.js +104 -8
  62. package/dist/findDistinct.js.map +1 -1
  63. package/dist/findGlobal.d.ts.map +1 -1
  64. package/dist/findGlobal.js +24 -5
  65. package/dist/findGlobal.js.map +1 -1
  66. package/dist/findGlobalVersions.js +8 -3
  67. package/dist/findGlobalVersions.js.map +1 -1
  68. package/dist/findOne.d.ts +1 -1
  69. package/dist/findOne.d.ts.map +1 -1
  70. package/dist/findOne.js +30 -3
  71. package/dist/findOne.js.map +1 -1
  72. package/dist/findVersions.d.ts.map +1 -1
  73. package/dist/findVersions.js +32 -5
  74. package/dist/findVersions.js.map +1 -1
  75. package/dist/index.d.ts +6 -10
  76. package/dist/index.d.ts.map +1 -1
  77. package/dist/index.js +4 -8
  78. package/dist/index.js.map +1 -1
  79. package/dist/migrate.d.ts.map +1 -1
  80. package/dist/migrate.js +41 -15
  81. package/dist/migrate.js.map +1 -1
  82. package/dist/migrateDown.d.ts +2 -1
  83. package/dist/migrateDown.d.ts.map +1 -1
  84. package/dist/migrateDown.js +17 -4
  85. package/dist/migrateDown.js.map +1 -1
  86. package/dist/migrateFresh.d.ts +4 -2
  87. package/dist/migrateFresh.d.ts.map +1 -1
  88. package/dist/migrateFresh.js +26 -9
  89. package/dist/migrateFresh.js.map +1 -1
  90. package/dist/migrateRefresh.d.ts +2 -1
  91. package/dist/migrateRefresh.d.ts.map +1 -1
  92. package/dist/migrateRefresh.js +20 -5
  93. package/dist/migrateRefresh.js.map +1 -1
  94. package/dist/migrateReset.d.ts +2 -1
  95. package/dist/migrateReset.d.ts.map +1 -1
  96. package/dist/migrateReset.js +18 -4
  97. package/dist/migrateReset.js.map +1 -1
  98. package/dist/migrateStatus.d.ts +2 -1
  99. package/dist/migrateStatus.d.ts.map +1 -1
  100. package/dist/migrateStatus.js +11 -6
  101. package/dist/migrateStatus.js.map +1 -1
  102. package/dist/postgres/createJSONQuery/index.js +3 -3
  103. package/dist/postgres/createJSONQuery/index.js.map +1 -1
  104. package/dist/postgres/init.d.ts.map +1 -1
  105. package/dist/postgres/init.js +6 -0
  106. package/dist/postgres/init.js.map +1 -1
  107. package/dist/postgres/insert.d.ts.map +1 -1
  108. package/dist/postgres/insert.js +4 -2
  109. package/dist/postgres/insert.js.map +1 -1
  110. package/dist/postgres/predefinedMigrations/sizes-to-variants/index.d.ts +35 -0
  111. package/dist/postgres/predefinedMigrations/sizes-to-variants/index.d.ts.map +1 -0
  112. package/dist/postgres/predefinedMigrations/sizes-to-variants/index.js +185 -0
  113. package/dist/postgres/predefinedMigrations/sizes-to-variants/index.js.map +1 -0
  114. package/dist/postgres/predefinedMigrations/v2-v3/fetchAndResave/index.d.ts.map +1 -1
  115. package/dist/postgres/predefinedMigrations/v2-v3/fetchAndResave/index.js +8 -4
  116. package/dist/postgres/predefinedMigrations/v2-v3/fetchAndResave/index.js.map +1 -1
  117. package/dist/postgres/predefinedMigrations/v2-v3/index.js +2 -2
  118. package/dist/postgres/predefinedMigrations/v2-v3/index.js.map +1 -1
  119. package/dist/postgres/query/assertOperatorHandlerExtensionsInstalled.d.ts +15 -0
  120. package/dist/postgres/query/assertOperatorHandlerExtensionsInstalled.d.ts.map +1 -0
  121. package/dist/postgres/query/assertOperatorHandlerExtensionsInstalled.js +25 -0
  122. package/dist/postgres/query/assertOperatorHandlerExtensionsInstalled.js.map +1 -0
  123. package/dist/postgres/query/postgresUnaccent.d.ts +13 -0
  124. package/dist/postgres/query/postgresUnaccent.d.ts.map +1 -0
  125. package/dist/postgres/query/postgresUnaccent.js +40 -0
  126. package/dist/postgres/query/postgresUnaccent.js.map +1 -0
  127. package/dist/postgres/requireDrizzleKit.d.ts +4 -0
  128. package/dist/postgres/requireDrizzleKit.d.ts.map +1 -1
  129. package/dist/postgres/requireDrizzleKit.js +16 -10
  130. package/dist/postgres/requireDrizzleKit.js.map +1 -1
  131. package/dist/postgres/types.d.ts +17 -2
  132. package/dist/postgres/types.d.ts.map +1 -1
  133. package/dist/postgres/types.js.map +1 -1
  134. package/dist/queries/buildAndOrConditions.d.ts +3 -2
  135. package/dist/queries/buildAndOrConditions.d.ts.map +1 -1
  136. package/dist/queries/buildAndOrConditions.js +2 -1
  137. package/dist/queries/buildAndOrConditions.js.map +1 -1
  138. package/dist/queries/buildBranchVisibility.d.ts +11 -0
  139. package/dist/queries/buildBranchVisibility.d.ts.map +1 -0
  140. package/dist/queries/buildBranchVisibility.js +48 -0
  141. package/dist/queries/buildBranchVisibility.js.map +1 -0
  142. package/dist/queries/buildOperatorConstraint.d.ts +22 -0
  143. package/dist/queries/buildOperatorConstraint.d.ts.map +1 -0
  144. package/dist/queries/buildOperatorConstraint.js +63 -0
  145. package/dist/queries/buildOperatorConstraint.js.map +1 -0
  146. package/dist/queries/buildOrderBy.d.ts +3 -2
  147. package/dist/queries/buildOrderBy.d.ts.map +1 -1
  148. package/dist/queries/buildOrderBy.js +2 -1
  149. package/dist/queries/buildOrderBy.js.map +1 -1
  150. package/dist/queries/buildQuery.d.ts +3 -2
  151. package/dist/queries/buildQuery.d.ts.map +1 -1
  152. package/dist/queries/buildQuery.js +4 -2
  153. package/dist/queries/buildQuery.js.map +1 -1
  154. package/dist/queries/getTableColumnFromPath.d.ts +15 -5
  155. package/dist/queries/getTableColumnFromPath.d.ts.map +1 -1
  156. package/dist/queries/getTableColumnFromPath.js +226 -56
  157. package/dist/queries/getTableColumnFromPath.js.map +1 -1
  158. package/dist/queries/operatorMap.d.ts +7 -3
  159. package/dist/queries/operatorMap.d.ts.map +1 -1
  160. package/dist/queries/operatorMap.js.map +1 -1
  161. package/dist/queries/parseParams.d.ts +3 -2
  162. package/dist/queries/parseParams.d.ts.map +1 -1
  163. package/dist/queries/parseParams.js +266 -11
  164. package/dist/queries/parseParams.js.map +1 -1
  165. package/dist/queries/resolveRelationshipPath.d.ts +36 -0
  166. package/dist/queries/resolveRelationshipPath.d.ts.map +1 -0
  167. package/dist/queries/resolveRelationshipPath.js +66 -0
  168. package/dist/queries/resolveRelationshipPath.js.map +1 -0
  169. package/dist/queries/validateOperatorHandlers.d.ts +8 -0
  170. package/dist/queries/validateOperatorHandlers.d.ts.map +1 -0
  171. package/dist/queries/validateOperatorHandlers.js +30 -0
  172. package/dist/queries/validateOperatorHandlers.js.map +1 -0
  173. package/dist/queryDrafts.d.ts.map +1 -1
  174. package/dist/queryDrafts.js +27 -5
  175. package/dist/queryDrafts.js.map +1 -1
  176. package/dist/schema/build.d.ts.map +1 -1
  177. package/dist/schema/build.js +28 -20
  178. package/dist/schema/build.js.map +1 -1
  179. package/dist/schema/traverseFields.js +5 -5
  180. package/dist/schema/traverseFields.js.map +1 -1
  181. package/dist/sqlite/createJSONQuery/convertPathToJSONTraversal.js +3 -2
  182. package/dist/sqlite/createJSONQuery/convertPathToJSONTraversal.js.map +1 -1
  183. package/dist/sqlite/createJSONQuery/index.d.ts.map +1 -1
  184. package/dist/sqlite/createJSONQuery/index.js +6 -5
  185. package/dist/sqlite/createJSONQuery/index.js.map +1 -1
  186. package/dist/sqlite/createRequireDrizzleKit.d.ts +6 -0
  187. package/dist/sqlite/createRequireDrizzleKit.d.ts.map +1 -0
  188. package/dist/sqlite/createRequireDrizzleKit.js +15 -0
  189. package/dist/sqlite/createRequireDrizzleKit.js.map +1 -0
  190. package/dist/sqlite/execute.js.map +1 -1
  191. package/dist/sqlite/insert.d.ts.map +1 -1
  192. package/dist/sqlite/insert.js +9 -4
  193. package/dist/sqlite/insert.js.map +1 -1
  194. package/dist/sqlite/predefinedMigrations/sizes-to-variants/index.d.ts +15 -0
  195. package/dist/sqlite/predefinedMigrations/sizes-to-variants/index.d.ts.map +1 -0
  196. package/dist/sqlite/predefinedMigrations/sizes-to-variants/index.js +114 -0
  197. package/dist/sqlite/predefinedMigrations/sizes-to-variants/index.js.map +1 -0
  198. package/dist/sqlite/types.d.ts +4 -0
  199. package/dist/sqlite/types.d.ts.map +1 -1
  200. package/dist/sqlite/types.js.map +1 -1
  201. package/dist/transactions/beginTransaction.d.ts.map +1 -1
  202. package/dist/transactions/beginTransaction.js +13 -5
  203. package/dist/transactions/beginTransaction.js.map +1 -1
  204. package/dist/transactions/commitTransaction.d.ts.map +1 -1
  205. package/dist/transactions/commitTransaction.js +1 -5
  206. package/dist/transactions/commitTransaction.js.map +1 -1
  207. package/dist/transform/read/traverseFields.js.map +1 -1
  208. package/dist/transform/write/array.d.ts +3 -2
  209. package/dist/transform/write/array.d.ts.map +1 -1
  210. package/dist/transform/write/array.js +2 -1
  211. package/dist/transform/write/array.js.map +1 -1
  212. package/dist/transform/write/blocks.d.ts +3 -2
  213. package/dist/transform/write/blocks.d.ts.map +1 -1
  214. package/dist/transform/write/blocks.js +2 -1
  215. package/dist/transform/write/blocks.js.map +1 -1
  216. package/dist/transform/write/index.d.ts.map +1 -1
  217. package/dist/transform/write/index.js +2 -0
  218. package/dist/transform/write/index.js.map +1 -1
  219. package/dist/transform/write/traverseFields.d.ts +2 -1
  220. package/dist/transform/write/traverseFields.d.ts.map +1 -1
  221. package/dist/transform/write/traverseFields.js +51 -21
  222. package/dist/transform/write/traverseFields.js.map +1 -1
  223. package/dist/transform/write/types.d.ts +7 -0
  224. package/dist/transform/write/types.d.ts.map +1 -1
  225. package/dist/transform/write/types.js.map +1 -1
  226. package/dist/types.d.ts +53 -4
  227. package/dist/types.d.ts.map +1 -1
  228. package/dist/types.js.map +1 -1
  229. package/dist/updateGlobal.d.ts +5 -1
  230. package/dist/updateGlobal.d.ts.map +1 -1
  231. package/dist/updateGlobal.js +96 -4
  232. package/dist/updateGlobal.js.map +1 -1
  233. package/dist/updateOne.d.ts.map +1 -1
  234. package/dist/updateOne.js +93 -4
  235. package/dist/updateOne.js.map +1 -1
  236. package/dist/upsertBranchGlobalChange.d.ts +3 -0
  237. package/dist/upsertBranchGlobalChange.d.ts.map +1 -0
  238. package/dist/upsertBranchGlobalChange.js +35 -0
  239. package/dist/upsertBranchGlobalChange.js.map +1 -0
  240. package/dist/upsertRow/deleteExistingRowsByPath.d.ts.map +1 -1
  241. package/dist/upsertRow/deleteExistingRowsByPath.js +17 -12
  242. package/dist/upsertRow/deleteExistingRowsByPath.js.map +1 -1
  243. package/dist/upsertRow/index.d.ts +1 -1
  244. package/dist/upsertRow/index.d.ts.map +1 -1
  245. package/dist/upsertRow/index.js +156 -46
  246. package/dist/upsertRow/index.js.map +1 -1
  247. package/dist/upsertRow/types.d.ts +3 -0
  248. package/dist/upsertRow/types.d.ts.map +1 -1
  249. package/dist/upsertRow/types.js.map +1 -1
  250. package/dist/utilities/blocksToJsonMigrator.d.ts.map +1 -1
  251. package/dist/utilities/blocksToJsonMigrator.js +7 -18
  252. package/dist/utilities/blocksToJsonMigrator.js.map +1 -1
  253. package/dist/utilities/buildCreateMigration.d.ts.map +1 -1
  254. package/dist/utilities/buildCreateMigration.js +13 -9
  255. package/dist/utilities/buildCreateMigration.js.map +1 -1
  256. package/dist/utilities/buildDynamicPredefinedSizesToVariantsMigration.d.ts +15 -0
  257. package/dist/utilities/buildDynamicPredefinedSizesToVariantsMigration.d.ts.map +1 -0
  258. package/dist/utilities/buildDynamicPredefinedSizesToVariantsMigration.js +110 -0
  259. package/dist/utilities/buildDynamicPredefinedSizesToVariantsMigration.js.map +1 -0
  260. package/dist/utilities/buildForeignKeyName.d.ts.map +1 -1
  261. package/dist/utilities/buildForeignKeyName.js +3 -2
  262. package/dist/utilities/buildForeignKeyName.js.map +1 -1
  263. package/dist/utilities/buildIndexName.d.ts.map +1 -1
  264. package/dist/utilities/buildIndexName.js +3 -2
  265. package/dist/utilities/buildIndexName.js.map +1 -1
  266. package/dist/utilities/checkTruncatedIdentifiers.d.ts +13 -0
  267. package/dist/utilities/checkTruncatedIdentifiers.d.ts.map +1 -0
  268. package/dist/utilities/checkTruncatedIdentifiers.js +56 -0
  269. package/dist/utilities/checkTruncatedIdentifiers.js.map +1 -0
  270. package/dist/utilities/createSchemaGenerator.d.ts.map +1 -1
  271. package/dist/utilities/createSchemaGenerator.js +10 -12
  272. package/dist/utilities/createSchemaGenerator.js.map +1 -1
  273. package/dist/utilities/executeSchemaHooks.js +1 -1
  274. package/dist/utilities/executeSchemaHooks.js.map +1 -1
  275. package/dist/utilities/formatGeneratedFile.d.ts +10 -0
  276. package/dist/utilities/formatGeneratedFile.d.ts.map +1 -0
  277. package/dist/utilities/formatGeneratedFile.js +58 -0
  278. package/dist/utilities/formatGeneratedFile.js.map +1 -0
  279. package/dist/utilities/getSizesToVariantsRenames.d.ts +54 -0
  280. package/dist/utilities/getSizesToVariantsRenames.d.ts.map +1 -0
  281. package/dist/utilities/getSizesToVariantsRenames.js +251 -0
  282. package/dist/utilities/getSizesToVariantsRenames.js.map +1 -0
  283. package/dist/utilities/getTransaction.js.map +1 -1
  284. package/dist/utilities/parseJSONPathSegment.d.ts +9 -0
  285. package/dist/utilities/parseJSONPathSegment.d.ts.map +1 -0
  286. package/dist/utilities/parseJSONPathSegment.js +17 -0
  287. package/dist/utilities/parseJSONPathSegment.js.map +1 -0
  288. package/dist/utilities/pushDevSchema.js +1 -1
  289. package/dist/utilities/pushDevSchema.js.map +1 -1
  290. package/dist/utilities/validateExistingBlockIsIdentical.d.ts +1 -5
  291. package/dist/utilities/validateExistingBlockIsIdentical.d.ts.map +1 -1
  292. package/dist/utilities/validateExistingBlockIsIdentical.js.map +1 -1
  293. package/dist/utilities/validateIdentifierLength.d.ts +12 -0
  294. package/dist/utilities/validateIdentifierLength.d.ts.map +1 -0
  295. package/dist/utilities/validateIdentifierLength.js +18 -0
  296. package/dist/utilities/validateIdentifierLength.js.map +1 -0
  297. package/package.json +17 -19
  298. package/dist/sqlite/requireDrizzleKit.d.ts +0 -3
  299. package/dist/sqlite/requireDrizzleKit.d.ts.map +0 -1
  300. package/dist/sqlite/requireDrizzleKit.js +0 -12
  301. package/dist/sqlite/requireDrizzleKit.js.map +0 -1
  302. package/dist/upsertRow/handleUpsertError.spec.js +0 -42
  303. package/dist/upsertRow/handleUpsertError.spec.js.map +0 -1
  304. package/dist/utilities/isValidStringID.spec.js +0 -15
  305. package/dist/utilities/isValidStringID.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;AAS/D,eAAO,MAAM,KAAK,EAAE,KA0BnB,CAAA"}
1
+ {"version":3,"file":"count.d.ts","sourceRoot":"","sources":["../src/count.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAA6B,MAAM,SAAS,CAAA;AAY/D,eAAO,MAAM,KAAK,EAAE,KAiDnB,CAAA"}
package/dist/count.js CHANGED
@@ -1,16 +1,38 @@
1
+ import { and } from 'drizzle-orm';
2
+ import { resolveBranchQuery, resolveBranchReadState, rewriteBranchIDs } from 'payload';
1
3
  import toSnakeCase from 'to-snake-case';
4
+ import { buildBranchVisibility } from './queries/buildBranchVisibility.js';
2
5
  import { buildQuery } from './queries/buildQuery.js';
3
6
  import { getTransaction } from './utilities/getTransaction.js';
4
- export const count = async function count({ collection, locale, req, where: whereArg }) {
7
+ export const count = async function count({ branch, collection, locale, req, where: whereArg }) {
5
8
  const collectionConfig = this.payload.collections[collection].config;
6
9
  const tableName = this.tableNameMap.get(toSnakeCase(collectionConfig.slug));
7
- const { joins, where } = buildQuery({
10
+ const branchReadState = resolveBranchReadState({
11
+ branch,
12
+ collectionSlug: collectionConfig.slug,
13
+ req
14
+ });
15
+ const branchedWhere = branchReadState.useBranching ? rewriteBranchIDs(whereArg) : await resolveBranchQuery({
16
+ branch,
17
+ collectionSlug: collectionConfig.slug,
18
+ req,
19
+ where: whereArg
20
+ });
21
+ const { joins, where: queryWhere } = buildQuery({
8
22
  adapter: this,
9
23
  fields: collectionConfig.flattenedFields,
10
24
  locale,
25
+ req,
11
26
  tableName,
12
- where: whereArg
27
+ where: branchedWhere
13
28
  });
29
+ const branchVisibilityWhere = branchReadState.useBranching ? buildBranchVisibility({
30
+ adapter: this,
31
+ branch: branchReadState.branch,
32
+ collectionSlug: collectionConfig.slug,
33
+ table: this.tables[tableName]
34
+ }) : undefined;
35
+ const where = branchVisibilityWhere ? and(queryWhere, branchVisibilityWhere) : queryWhere;
14
36
  const db = await getTransaction(this, req);
15
37
  const countResult = await this.countDistinct({
16
38
  db,
package/dist/count.js.map CHANGED
@@ -1 +1 @@
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
+ {"version":3,"sources":["../src/count.ts"],"sourcesContent":["import type { Count, SanitizedCollectionConfig } from 'payload'\n\nimport { and } from 'drizzle-orm'\nimport { resolveBranchQuery, resolveBranchReadState, rewriteBranchIDs } from 'payload'\nimport toSnakeCase from 'to-snake-case'\n\nimport type { DrizzleAdapter } from './types.js'\n\nimport { buildBranchVisibility } from './queries/buildBranchVisibility.js'\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 const branchReadState = resolveBranchReadState({\n branch,\n collectionSlug: collectionConfig.slug,\n req,\n })\n const branchedWhere = branchReadState.useBranching\n ? rewriteBranchIDs(whereArg)\n : await resolveBranchQuery({\n branch,\n collectionSlug: collectionConfig.slug,\n req,\n where: whereArg,\n })\n\n const { joins, where: queryWhere } = buildQuery({\n adapter: this,\n fields: collectionConfig.flattenedFields,\n locale,\n req,\n tableName,\n where: branchedWhere,\n })\n const branchVisibilityWhere = branchReadState.useBranching\n ? buildBranchVisibility({\n adapter: this,\n branch: branchReadState.branch,\n collectionSlug: collectionConfig.slug,\n table: this.tables[tableName],\n })\n : undefined\n const where = branchVisibilityWhere ? and(queryWhere, branchVisibilityWhere) : queryWhere\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":["and","resolveBranchQuery","resolveBranchReadState","rewriteBranchIDs","toSnakeCase","buildBranchVisibility","buildQuery","getTransaction","count","branch","collection","locale","req","where","whereArg","collectionConfig","payload","collections","config","tableName","tableNameMap","get","slug","branchReadState","collectionSlug","branchedWhere","useBranching","joins","queryWhere","adapter","fields","flattenedFields","branchVisibilityWhere","table","tables","undefined","db","countResult","countDistinct","totalDocs"],"mappings":"AAEA,SAASA,GAAG,QAAQ,cAAa;AACjC,SAASC,kBAAkB,EAAEC,sBAAsB,EAAEC,gBAAgB,QAAQ,UAAS;AACtF,OAAOC,iBAAiB,gBAAe;AAIvC,SAASC,qBAAqB,QAAQ,qCAAoC;AAC1E,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,CAACjB,YAAYW,iBAAiBO,IAAI;IACzE,MAAMC,kBAAkBrB,uBAAuB;QAC7CO;QACAe,gBAAgBT,iBAAiBO,IAAI;QACrCV;IACF;IACA,MAAMa,gBAAgBF,gBAAgBG,YAAY,GAC9CvB,iBAAiBW,YACjB,MAAMb,mBAAmB;QACvBQ;QACAe,gBAAgBT,iBAAiBO,IAAI;QACrCV;QACAC,OAAOC;IACT;IAEJ,MAAM,EAAEa,KAAK,EAAEd,OAAOe,UAAU,EAAE,GAAGtB,WAAW;QAC9CuB,SAAS,IAAI;QACbC,QAAQf,iBAAiBgB,eAAe;QACxCpB;QACAC;QACAO;QACAN,OAAOY;IACT;IACA,MAAMO,wBAAwBT,gBAAgBG,YAAY,GACtDrB,sBAAsB;QACpBwB,SAAS,IAAI;QACbpB,QAAQc,gBAAgBd,MAAM;QAC9Be,gBAAgBT,iBAAiBO,IAAI;QACrCW,OAAO,IAAI,CAACC,MAAM,CAACf,UAAU;IAC/B,KACAgB;IACJ,MAAMtB,QAAQmB,wBAAwBhC,IAAI4B,YAAYI,yBAAyBJ;IAE/E,MAAMQ,KAAK,MAAM7B,eAAe,IAAI,EAAEK;IAEtC,MAAMyB,cAAc,MAAM,IAAI,CAACC,aAAa,CAAC;QAC3CF;QACAT;QACAR;QACAN;IACF;IAEA,OAAO;QAAE0B,WAAWF;IAAY;AAClC,EAAC"}
@@ -1,8 +1,8 @@
1
- import { buildVersionGlobalFields } from 'payload';
1
+ import { buildVersionGlobalFields, resolveBranchGlobalVersionQuery } from 'payload';
2
2
  import toSnakeCase from 'to-snake-case';
3
3
  import { buildQuery } from './queries/buildQuery.js';
4
4
  import { getTransaction } from './utilities/getTransaction.js';
5
- export const countGlobalVersions = async function countGlobalVersions({ global, locale, req, where: whereArg }) {
5
+ export const countGlobalVersions = async function countGlobalVersions({ branch, global, locale, req, where: whereArg }) {
6
6
  const globalConfig = this.payload.globals.config.find(({ slug })=>slug === global);
7
7
  const tableName = this.tableNameMap.get(`_${toSnakeCase(globalConfig.slug)}${this.versionsSuffix}`);
8
8
  const fields = buildVersionGlobalFields(this.payload.config, globalConfig, true);
@@ -11,7 +11,12 @@ export const countGlobalVersions = async function countGlobalVersions({ global,
11
11
  fields,
12
12
  locale,
13
13
  tableName,
14
- where: whereArg
14
+ where: resolveBranchGlobalVersionQuery({
15
+ branch,
16
+ globalSlug: global,
17
+ req,
18
+ where: whereArg
19
+ })
15
20
  });
16
21
  const db = await getTransaction(this, req);
17
22
  const countResult = await this.countDistinct({
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/countGlobalVersions.ts"],"sourcesContent":["import type { CountGlobalVersions, SanitizedGlobalConfig } from 'payload'\n\nimport { buildVersionGlobalFields } 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 countGlobalVersions: CountGlobalVersions = async function countGlobalVersions(\n this: DrizzleAdapter,\n { global, locale, req, where: whereArg },\n) {\n const globalConfig: SanitizedGlobalConfig = this.payload.globals.config.find(\n ({ slug }) => slug === global,\n )\n\n const tableName = this.tableNameMap.get(\n `_${toSnakeCase(globalConfig.slug)}${this.versionsSuffix}`,\n )\n\n const fields = buildVersionGlobalFields(this.payload.config, globalConfig, true)\n\n const { joins, where } = buildQuery({\n adapter: this,\n fields,\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":["buildVersionGlobalFields","toSnakeCase","buildQuery","getTransaction","countGlobalVersions","global","locale","req","where","whereArg","globalConfig","payload","globals","config","find","slug","tableName","tableNameMap","get","versionsSuffix","fields","joins","adapter","db","countResult","countDistinct","totalDocs"],"mappings":"AAEA,SAASA,wBAAwB,QAAQ,UAAS;AAClD,OAAOC,iBAAiB,gBAAe;AAIvC,SAASC,UAAU,QAAQ,0BAAyB;AACpD,SAASC,cAAc,QAAQ,gCAA+B;AAE9D,OAAO,MAAMC,sBAA2C,eAAeA,oBAErE,EAAEC,MAAM,EAAEC,MAAM,EAAEC,GAAG,EAAEC,OAAOC,QAAQ,EAAE;IAExC,MAAMC,eAAsC,IAAI,CAACC,OAAO,CAACC,OAAO,CAACC,MAAM,CAACC,IAAI,CAC1E,CAAC,EAAEC,IAAI,EAAE,GAAKA,SAASV;IAGzB,MAAMW,YAAY,IAAI,CAACC,YAAY,CAACC,GAAG,CACrC,CAAC,CAAC,EAAEjB,YAAYS,aAAaK,IAAI,IAAI,IAAI,CAACI,cAAc,EAAE;IAG5D,MAAMC,SAASpB,yBAAyB,IAAI,CAACW,OAAO,CAACE,MAAM,EAAEH,cAAc;IAE3E,MAAM,EAAEW,KAAK,EAAEb,KAAK,EAAE,GAAGN,WAAW;QAClCoB,SAAS,IAAI;QACbF;QACAd;QACAU;QACAR,OAAOC;IACT;IAEA,MAAMc,KAAK,MAAMpB,eAAe,IAAI,EAAEI;IAEtC,MAAMiB,cAAc,MAAM,IAAI,CAACC,aAAa,CAAC;QAC3CF;QACAF;QACAL;QACAR;IACF;IAEA,OAAO;QAAEkB,WAAWF;IAAY;AAClC,EAAC"}
1
+ {"version":3,"sources":["../src/countGlobalVersions.ts"],"sourcesContent":["import type { CountGlobalVersions, SanitizedGlobalConfig } from 'payload'\n\nimport { buildVersionGlobalFields, resolveBranchGlobalVersionQuery } 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 countGlobalVersions: CountGlobalVersions = async function countGlobalVersions(\n this: DrizzleAdapter,\n { branch, global, locale, req, where: whereArg },\n) {\n const globalConfig: SanitizedGlobalConfig = this.payload.globals.config.find(\n ({ slug }) => slug === global,\n )\n\n const tableName = this.tableNameMap.get(\n `_${toSnakeCase(globalConfig.slug)}${this.versionsSuffix}`,\n )\n\n const fields = buildVersionGlobalFields(this.payload.config, globalConfig, true)\n\n const { joins, where } = buildQuery({\n adapter: this,\n fields,\n locale,\n tableName,\n where: resolveBranchGlobalVersionQuery({ branch, globalSlug: global, req, 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":["buildVersionGlobalFields","resolveBranchGlobalVersionQuery","toSnakeCase","buildQuery","getTransaction","countGlobalVersions","branch","global","locale","req","where","whereArg","globalConfig","payload","globals","config","find","slug","tableName","tableNameMap","get","versionsSuffix","fields","joins","adapter","globalSlug","db","countResult","countDistinct","totalDocs"],"mappings":"AAEA,SAASA,wBAAwB,EAAEC,+BAA+B,QAAQ,UAAS;AACnF,OAAOC,iBAAiB,gBAAe;AAIvC,SAASC,UAAU,QAAQ,0BAAyB;AACpD,SAASC,cAAc,QAAQ,gCAA+B;AAE9D,OAAO,MAAMC,sBAA2C,eAAeA,oBAErE,EAAEC,MAAM,EAAEC,MAAM,EAAEC,MAAM,EAAEC,GAAG,EAAEC,OAAOC,QAAQ,EAAE;IAEhD,MAAMC,eAAsC,IAAI,CAACC,OAAO,CAACC,OAAO,CAACC,MAAM,CAACC,IAAI,CAC1E,CAAC,EAAEC,IAAI,EAAE,GAAKA,SAASV;IAGzB,MAAMW,YAAY,IAAI,CAACC,YAAY,CAACC,GAAG,CACrC,CAAC,CAAC,EAAElB,YAAYU,aAAaK,IAAI,IAAI,IAAI,CAACI,cAAc,EAAE;IAG5D,MAAMC,SAAStB,yBAAyB,IAAI,CAACa,OAAO,CAACE,MAAM,EAAEH,cAAc;IAE3E,MAAM,EAAEW,KAAK,EAAEb,KAAK,EAAE,GAAGP,WAAW;QAClCqB,SAAS,IAAI;QACbF;QACAd;QACAU;QACAR,OAAOT,gCAAgC;YAAEK;YAAQmB,YAAYlB;YAAQE;YAAKC,OAAOC;QAAS;IAC5F;IAEA,MAAMe,KAAK,MAAMtB,eAAe,IAAI,EAAEK;IAEtC,MAAMkB,cAAc,MAAM,IAAI,CAACC,aAAa,CAAC;QAC3CF;QACAH;QACAL;QACAR;IACF;IAEA,OAAO;QAAEmB,WAAWF;IAAY;AAClC,EAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"countVersions.d.ts","sourceRoot":"","sources":["../src/countVersions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAA6B,MAAM,SAAS,CAAA;AAUvE,eAAO,MAAM,aAAa,EAAE,aA8B3B,CAAA"}
1
+ {"version":3,"file":"countVersions.d.ts","sourceRoot":"","sources":["../src/countVersions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAA6B,MAAM,SAAS,CAAA;AAiBvE,eAAO,MAAM,aAAa,EAAE,aAsD3B,CAAA"}
@@ -1,18 +1,43 @@
1
- import { buildVersionCollectionFields } from 'payload';
1
+ import { and } from 'drizzle-orm';
2
+ import { buildVersionCollectionFields, resolveBranchReadState, resolveBranchVersionHistoryQuery, rewriteBranchVersionParents } from 'payload';
2
3
  import toSnakeCase from 'to-snake-case';
4
+ import { buildBranchVisibility } from './queries/buildBranchVisibility.js';
3
5
  import { buildQuery } from './queries/buildQuery.js';
4
6
  import { getTransaction } from './utilities/getTransaction.js';
5
- export const countVersions = async function countVersions({ collection, locale, req, where: whereArg }) {
7
+ export const countVersions = async function countVersions({ branch, collection, locale, req, where: whereArg }) {
6
8
  const collectionConfig = this.payload.collections[collection].config;
7
9
  const tableName = this.tableNameMap.get(`_${toSnakeCase(collectionConfig.slug)}${this.versionsSuffix}`);
8
10
  const fields = buildVersionCollectionFields(this.payload.config, collectionConfig, true);
9
- const { joins, where } = buildQuery({
11
+ const branchReadState = resolveBranchReadState({
12
+ branch,
13
+ collectionSlug: collection,
14
+ req
15
+ });
16
+ // Shares the list's predicate so the count in the Versions tab can never
17
+ // disagree with the rows the Versions view actually renders.
18
+ const branchedWhere = branchReadState.useBranching ? rewriteBranchVersionParents(whereArg) : await resolveBranchVersionHistoryQuery({
19
+ branch,
20
+ collectionSlug: collection,
21
+ req,
22
+ where: whereArg
23
+ });
24
+ const { joins, where: queryWhere } = buildQuery({
10
25
  adapter: this,
11
26
  fields,
12
27
  locale,
28
+ req,
13
29
  tableName,
14
- where: whereArg
30
+ where: branchedWhere
15
31
  });
32
+ const branchVisibilityWhere = branchReadState.useBranching ? buildBranchVisibility({
33
+ adapter: this,
34
+ branch: branchReadState.branch,
35
+ canonicalIDExpression: undefined,
36
+ collectionSlug: collection,
37
+ mode: 'history',
38
+ table: this.tables[tableName]
39
+ }) : undefined;
40
+ const where = branchVisibilityWhere ? and(queryWhere, branchVisibilityWhere) : queryWhere;
16
41
  const db = await getTransaction(this, req);
17
42
  const countResult = await this.countDistinct({
18
43
  db,
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/countVersions.ts"],"sourcesContent":["import type { CountVersions, SanitizedCollectionConfig } from 'payload'\n\nimport { buildVersionCollectionFields } 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 countVersions: CountVersions = async function countVersions(\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(\n `_${toSnakeCase(collectionConfig.slug)}${this.versionsSuffix}`,\n )\n\n const fields = buildVersionCollectionFields(this.payload.config, collectionConfig, true)\n\n const { joins, where } = buildQuery({\n adapter: this,\n fields,\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":["buildVersionCollectionFields","toSnakeCase","buildQuery","getTransaction","countVersions","collection","locale","req","where","whereArg","collectionConfig","payload","collections","config","tableName","tableNameMap","get","slug","versionsSuffix","fields","joins","adapter","db","countResult","countDistinct","totalDocs"],"mappings":"AAEA,SAASA,4BAA4B,QAAQ,UAAS;AACtD,OAAOC,iBAAiB,gBAAe;AAIvC,SAASC,UAAU,QAAQ,0BAAyB;AACpD,SAASC,cAAc,QAAQ,gCAA+B;AAE9D,OAAO,MAAMC,gBAA+B,eAAeA,cAEzD,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,CACrC,CAAC,CAAC,EAAEf,YAAYS,iBAAiBO,IAAI,IAAI,IAAI,CAACC,cAAc,EAAE;IAGhE,MAAMC,SAASnB,6BAA6B,IAAI,CAACW,OAAO,CAACE,MAAM,EAAEH,kBAAkB;IAEnF,MAAM,EAAEU,KAAK,EAAEZ,KAAK,EAAE,GAAGN,WAAW;QAClCmB,SAAS,IAAI;QACbF;QACAb;QACAQ;QACAN,OAAOC;IACT;IAEA,MAAMa,KAAK,MAAMnB,eAAe,IAAI,EAAEI;IAEtC,MAAMgB,cAAc,MAAM,IAAI,CAACC,aAAa,CAAC;QAC3CF;QACAF;QACAN;QACAN;IACF;IAEA,OAAO;QAAEiB,WAAWF;IAAY;AAClC,EAAC"}
1
+ {"version":3,"sources":["../src/countVersions.ts"],"sourcesContent":["import type { CountVersions, SanitizedCollectionConfig } from 'payload'\n\nimport { and } from 'drizzle-orm'\nimport {\n buildVersionCollectionFields,\n resolveBranchReadState,\n resolveBranchVersionHistoryQuery,\n rewriteBranchVersionParents,\n} from 'payload'\nimport toSnakeCase from 'to-snake-case'\n\nimport type { DrizzleAdapter } from './types.js'\n\nimport { buildBranchVisibility } from './queries/buildBranchVisibility.js'\nimport { buildQuery } from './queries/buildQuery.js'\nimport { getTransaction } from './utilities/getTransaction.js'\n\nexport const countVersions: CountVersions = async function countVersions(\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(\n `_${toSnakeCase(collectionConfig.slug)}${this.versionsSuffix}`,\n )\n\n const fields = buildVersionCollectionFields(this.payload.config, collectionConfig, true)\n const branchReadState = resolveBranchReadState({ branch, collectionSlug: collection, req })\n\n // Shares the list's predicate so the count in the Versions tab can never\n // disagree with the rows the Versions view actually renders.\n const branchedWhere = branchReadState.useBranching\n ? rewriteBranchVersionParents(whereArg)\n : await resolveBranchVersionHistoryQuery({\n branch,\n collectionSlug: collection,\n req,\n where: whereArg,\n })\n\n const { joins, where: queryWhere } = buildQuery({\n adapter: this,\n fields,\n locale,\n req,\n tableName,\n where: branchedWhere,\n })\n const branchVisibilityWhere = branchReadState.useBranching\n ? buildBranchVisibility({\n adapter: this,\n branch: branchReadState.branch,\n canonicalIDExpression: undefined,\n collectionSlug: collection,\n mode: 'history',\n table: this.tables[tableName],\n })\n : undefined\n const where = branchVisibilityWhere ? and(queryWhere, branchVisibilityWhere) : queryWhere\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":["and","buildVersionCollectionFields","resolveBranchReadState","resolveBranchVersionHistoryQuery","rewriteBranchVersionParents","toSnakeCase","buildBranchVisibility","buildQuery","getTransaction","countVersions","branch","collection","locale","req","where","whereArg","collectionConfig","payload","collections","config","tableName","tableNameMap","get","slug","versionsSuffix","fields","branchReadState","collectionSlug","branchedWhere","useBranching","joins","queryWhere","adapter","branchVisibilityWhere","canonicalIDExpression","undefined","mode","table","tables","db","countResult","countDistinct","totalDocs"],"mappings":"AAEA,SAASA,GAAG,QAAQ,cAAa;AACjC,SACEC,4BAA4B,EAC5BC,sBAAsB,EACtBC,gCAAgC,EAChCC,2BAA2B,QACtB,UAAS;AAChB,OAAOC,iBAAiB,gBAAe;AAIvC,SAASC,qBAAqB,QAAQ,qCAAoC;AAC1E,SAASC,UAAU,QAAQ,0BAAyB;AACpD,SAASC,cAAc,QAAQ,gCAA+B;AAE9D,OAAO,MAAMC,gBAA+B,eAAeA,cAEzD,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,CACrC,CAAC,CAAC,EAAEjB,YAAYW,iBAAiBO,IAAI,IAAI,IAAI,CAACC,cAAc,EAAE;IAGhE,MAAMC,SAASxB,6BAA6B,IAAI,CAACgB,OAAO,CAACE,MAAM,EAAEH,kBAAkB;IACnF,MAAMU,kBAAkBxB,uBAAuB;QAAEQ;QAAQiB,gBAAgBhB;QAAYE;IAAI;IAEzF,yEAAyE;IACzE,6DAA6D;IAC7D,MAAMe,gBAAgBF,gBAAgBG,YAAY,GAC9CzB,4BAA4BW,YAC5B,MAAMZ,iCAAiC;QACrCO;QACAiB,gBAAgBhB;QAChBE;QACAC,OAAOC;IACT;IAEJ,MAAM,EAAEe,KAAK,EAAEhB,OAAOiB,UAAU,EAAE,GAAGxB,WAAW;QAC9CyB,SAAS,IAAI;QACbP;QACAb;QACAC;QACAO;QACAN,OAAOc;IACT;IACA,MAAMK,wBAAwBP,gBAAgBG,YAAY,GACtDvB,sBAAsB;QACpB0B,SAAS,IAAI;QACbtB,QAAQgB,gBAAgBhB,MAAM;QAC9BwB,uBAAuBC;QACvBR,gBAAgBhB;QAChByB,MAAM;QACNC,OAAO,IAAI,CAACC,MAAM,CAAClB,UAAU;IAC/B,KACAe;IACJ,MAAMrB,QAAQmB,wBAAwBjC,IAAI+B,YAAYE,yBAAyBF;IAE/E,MAAMQ,KAAK,MAAM/B,eAAe,IAAI,EAAEK;IAEtC,MAAM2B,cAAc,MAAM,IAAI,CAACC,aAAa,CAAC;QAC3CF;QACAT;QACAV;QACAN;IACF;IAEA,OAAO;QAAE4B,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,CA6C7B"}
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,5 +1,5 @@
1
1
  import { sql } from 'drizzle-orm';
2
- import { buildVersionGlobalFields } from 'payload';
2
+ import { buildVersionGlobalFields, MAIN_BRANCH, resolveBranch } 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,12 +9,19 @@ 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({
14
+ req: req
15
+ }) : MAIN_BRANCH;
12
16
  const result = await upsertRow({
13
17
  adapter: this,
14
18
  data: {
15
19
  autosave,
16
20
  createdAt,
17
21
  latest: true,
22
+ ...isBranchable ? {
23
+ _branch: versionBranch
24
+ } : {},
18
25
  publishedLocale,
19
26
  snapshot,
20
27
  updatedAt,
@@ -31,9 +38,17 @@ export async function createGlobalVersion({ autosave, createdAt, globalSlug, pub
31
38
  });
32
39
  const table = this.tables[tableName];
33
40
  if (hasDraftsEnabled(global)) {
41
+ // Scoped by `_branch` when the global is branchable. Global versions have no
42
+ // `parent` to separate streams by — every version of a global shares one —
43
+ // so an unscoped clear would wipe main's latest flag from a branch.
34
44
  await this.execute({
35
45
  db,
36
- sql: sql`
46
+ sql: isBranchable ? sql`
47
+ UPDATE ${table}
48
+ SET latest = false
49
+ WHERE ${table.id} != ${result.id}
50
+ AND ${table._branch} = ${versionBranch};
51
+ ` : sql`
37
52
  UPDATE ${table}
38
53
  SET latest = false
39
54
  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 } 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
+ {"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: 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,cAAc;QAAEW,KAAKA;IAAa,KAAKZ;IAE5E,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 +1 @@
1
- {"version":3,"file":"createTableName.d.ts","sourceRoot":"","sources":["../src/createTableName.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAA;AAK/C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAA;AAEhD,KAAK,IAAI,GAAG;IACV,OAAO,EAAE,IAAI,CAAC,cAAc,EAAE,cAAc,GAAG,gBAAgB,CAAC,CAAA;IAChE,8CAA8C;IAC9C,MAAM,EAAE;QACN,MAAM,CAAC,EAAE,gBAAgB,CAAA;QACzB,QAAQ,CAAC,EAAE,gBAAgB,CAAA;QAC3B,IAAI,CAAC,EAAE,MAAM,CAAA;QACb,IAAI,CAAC,EAAE,MAAM,CAAA;KACd,CAAA;IACD,mGAAmG;IACnG,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,mFAAmF;IACnF,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,uHAAuH;IACvH,MAAM,CAAC,EAAE,QAAQ,GAAG,UAAU,CAAA;IAC9B,uFAAuF;IACvF,oBAAoB,CAAC,EAAE,OAAO,CAAA;IAC9B,mIAAmI;IACnI,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,mHAAmH;IACnH,kBAAkB,CAAC,EAAE,OAAO,CAAA;CAC7B,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,eAAe,sIAUzB,IAAI,KAAG,MA2CT,CAAA"}
1
+ {"version":3,"file":"createTableName.d.ts","sourceRoot":"","sources":["../src/createTableName.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAA;AAI/C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAA;AAIhD,KAAK,IAAI,GAAG;IACV,OAAO,EAAE,IAAI,CAAC,cAAc,EAAE,cAAc,GAAG,gBAAgB,CAAC,CAAA;IAChE,8CAA8C;IAC9C,MAAM,EAAE;QACN,MAAM,CAAC,EAAE,gBAAgB,CAAA;QACzB,QAAQ,CAAC,EAAE,gBAAgB,CAAA;QAC3B,IAAI,CAAC,EAAE,MAAM,CAAA;QACb,IAAI,CAAC,EAAE,MAAM,CAAA;KACd,CAAA;IACD,mGAAmG;IACnG,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,mFAAmF;IACnF,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,uHAAuH;IACvH,MAAM,CAAC,EAAE,QAAQ,GAAG,UAAU,CAAA;IAC9B,uFAAuF;IACvF,oBAAoB,CAAC,EAAE,OAAO,CAAA;IAC9B,mIAAmI;IACnI,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,mHAAmH;IACnH,kBAAkB,CAAC,EAAE,OAAO,CAAA;CAC7B,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,eAAe,sIAUzB,IAAI,KAAG,MAmCT,CAAA"}
@@ -1,5 +1,5 @@
1
- import { APIError } from 'payload';
2
1
  import toSnakeCase from 'to-snake-case';
2
+ import { validateIdentifierLength } from './utilities/validateIdentifierLength.js';
3
3
  /**
4
4
  * Used to name database enums and tables
5
5
  * Returns the table or enum name for a given entity
@@ -26,12 +26,7 @@ import toSnakeCase from 'to-snake-case';
26
26
  if (!throwValidationError) {
27
27
  return result;
28
28
  }
29
- if (result.length > 63) {
30
- throw new APIError(`Exceeded max identifier length for table or enum name of 63 characters. Invalid name: ${result}.
31
- Tip: You can use the dbName property to reduce the table name length.
32
- `);
33
- }
34
- return result;
29
+ return validateIdentifierLength(result);
35
30
  };
36
31
 
37
32
  //# sourceMappingURL=createTableName.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/createTableName.ts"],"sourcesContent":["import type { DBIdentifierName } from 'payload'\n\nimport { APIError } from 'payload'\nimport toSnakeCase from 'to-snake-case'\n\nimport type { DrizzleAdapter } from './types.js'\n\ntype Args = {\n adapter: Pick<DrizzleAdapter, 'tableNameMap' | 'versionsSuffix'>\n /** The collection, global or field config **/\n config: {\n dbName?: DBIdentifierName\n enumName?: DBIdentifierName\n name?: string\n slug?: string\n }\n /** For nested tables passed for the user custom dbName functions to handle their own iterations */\n parentTableName?: string\n /** For sub tables (array for example) this needs to include the parentTableName */\n prefix?: string\n /** For tables based on fields that could have both enumName and dbName (ie: select with hasMany), default: 'dbName' */\n target?: 'dbName' | 'enumName'\n /** Throws error if true for postgres when table and enum names exceed 63 characters */\n throwValidationError?: boolean\n /** Adds the versions suffix to the default table name - should only be used on the base collection to avoid duplicate suffixing */\n versions?: boolean\n /** Adds the versions suffix to custom dbName only - this is used while creating blocks / selects / arrays / etc */\n versionsCustomName?: boolean\n}\n\n/**\n * Used to name database enums and tables\n * Returns the table or enum name for a given entity\n */\nexport const createTableName = ({\n adapter,\n config: { name, slug },\n config,\n parentTableName,\n prefix = '',\n target = 'dbName',\n throwValidationError = false,\n versions = false,\n versionsCustomName = false,\n}: Args): string => {\n let customNameDefinition = config[target]\n\n let defaultTableName = `${prefix}${toSnakeCase(name ?? slug)}`\n\n if (versions) {\n defaultTableName = `_${defaultTableName}${adapter.versionsSuffix}`\n }\n\n let customTableNameResult: string\n\n if (!customNameDefinition && target === 'enumName') {\n customNameDefinition = config['dbName']\n }\n\n if (customNameDefinition) {\n customTableNameResult =\n typeof customNameDefinition === 'function'\n ? customNameDefinition({ tableName: parentTableName })\n : customNameDefinition\n\n if (versionsCustomName) {\n customTableNameResult = `_${customTableNameResult}${adapter.versionsSuffix}`\n }\n }\n\n const result = customTableNameResult || defaultTableName\n\n adapter.tableNameMap.set(defaultTableName, result)\n\n if (!throwValidationError) {\n return result\n }\n\n if (result.length > 63) {\n throw new APIError(\n `Exceeded max identifier length for table or enum name of 63 characters. Invalid name: ${result}.\nTip: You can use the dbName property to reduce the table name length.\n `,\n )\n }\n\n return result\n}\n"],"names":["APIError","toSnakeCase","createTableName","adapter","config","name","slug","parentTableName","prefix","target","throwValidationError","versions","versionsCustomName","customNameDefinition","defaultTableName","versionsSuffix","customTableNameResult","tableName","result","tableNameMap","set","length"],"mappings":"AAEA,SAASA,QAAQ,QAAQ,UAAS;AAClC,OAAOC,iBAAiB,gBAAe;AA2BvC;;;CAGC,GACD,OAAO,MAAMC,kBAAkB,CAAC,EAC9BC,OAAO,EACPC,QAAQ,EAAEC,IAAI,EAAEC,IAAI,EAAE,EACtBF,MAAM,EACNG,eAAe,EACfC,SAAS,EAAE,EACXC,SAAS,QAAQ,EACjBC,uBAAuB,KAAK,EAC5BC,WAAW,KAAK,EAChBC,qBAAqB,KAAK,EACrB;IACL,IAAIC,uBAAuBT,MAAM,CAACK,OAAO;IAEzC,IAAIK,mBAAmB,GAAGN,SAASP,YAAYI,QAAQC,OAAO;IAE9D,IAAIK,UAAU;QACZG,mBAAmB,CAAC,CAAC,EAAEA,mBAAmBX,QAAQY,cAAc,EAAE;IACpE;IAEA,IAAIC;IAEJ,IAAI,CAACH,wBAAwBJ,WAAW,YAAY;QAClDI,uBAAuBT,MAAM,CAAC,SAAS;IACzC;IAEA,IAAIS,sBAAsB;QACxBG,wBACE,OAAOH,yBAAyB,aAC5BA,qBAAqB;YAAEI,WAAWV;QAAgB,KAClDM;QAEN,IAAID,oBAAoB;YACtBI,wBAAwB,CAAC,CAAC,EAAEA,wBAAwBb,QAAQY,cAAc,EAAE;QAC9E;IACF;IAEA,MAAMG,SAASF,yBAAyBF;IAExCX,QAAQgB,YAAY,CAACC,GAAG,CAACN,kBAAkBI;IAE3C,IAAI,CAACR,sBAAsB;QACzB,OAAOQ;IACT;IAEA,IAAIA,OAAOG,MAAM,GAAG,IAAI;QACtB,MAAM,IAAIrB,SACR,CAAC,sFAAsF,EAAEkB,OAAO;;MAEhG,CAAC;IAEL;IAEA,OAAOA;AACT,EAAC"}
1
+ {"version":3,"sources":["../src/createTableName.ts"],"sourcesContent":["import type { DBIdentifierName } from 'payload'\n\nimport toSnakeCase from 'to-snake-case'\n\nimport type { DrizzleAdapter } from './types.js'\n\nimport { validateIdentifierLength } from './utilities/validateIdentifierLength.js'\n\ntype Args = {\n adapter: Pick<DrizzleAdapter, 'tableNameMap' | 'versionsSuffix'>\n /** The collection, global or field config **/\n config: {\n dbName?: DBIdentifierName\n enumName?: DBIdentifierName\n name?: string\n slug?: string\n }\n /** For nested tables passed for the user custom dbName functions to handle their own iterations */\n parentTableName?: string\n /** For sub tables (array for example) this needs to include the parentTableName */\n prefix?: string\n /** For tables based on fields that could have both enumName and dbName (ie: select with hasMany), default: 'dbName' */\n target?: 'dbName' | 'enumName'\n /** Throws error if true for postgres when table and enum names exceed 63 characters */\n throwValidationError?: boolean\n /** Adds the versions suffix to the default table name - should only be used on the base collection to avoid duplicate suffixing */\n versions?: boolean\n /** Adds the versions suffix to custom dbName only - this is used while creating blocks / selects / arrays / etc */\n versionsCustomName?: boolean\n}\n\n/**\n * Used to name database enums and tables\n * Returns the table or enum name for a given entity\n */\nexport const createTableName = ({\n adapter,\n config: { name, slug },\n config,\n parentTableName,\n prefix = '',\n target = 'dbName',\n throwValidationError = false,\n versions = false,\n versionsCustomName = false,\n}: Args): string => {\n let customNameDefinition = config[target]\n\n let defaultTableName = `${prefix}${toSnakeCase(name ?? slug)}`\n\n if (versions) {\n defaultTableName = `_${defaultTableName}${adapter.versionsSuffix}`\n }\n\n let customTableNameResult: string\n\n if (!customNameDefinition && target === 'enumName') {\n customNameDefinition = config['dbName']\n }\n\n if (customNameDefinition) {\n customTableNameResult =\n typeof customNameDefinition === 'function'\n ? customNameDefinition({ tableName: parentTableName })\n : customNameDefinition\n\n if (versionsCustomName) {\n customTableNameResult = `_${customTableNameResult}${adapter.versionsSuffix}`\n }\n }\n\n const result = customTableNameResult || defaultTableName\n\n adapter.tableNameMap.set(defaultTableName, result)\n\n if (!throwValidationError) {\n return result\n }\n\n return validateIdentifierLength(result)\n}\n"],"names":["toSnakeCase","validateIdentifierLength","createTableName","adapter","config","name","slug","parentTableName","prefix","target","throwValidationError","versions","versionsCustomName","customNameDefinition","defaultTableName","versionsSuffix","customTableNameResult","tableName","result","tableNameMap","set"],"mappings":"AAEA,OAAOA,iBAAiB,gBAAe;AAIvC,SAASC,wBAAwB,QAAQ,0CAAyC;AAyBlF;;;CAGC,GACD,OAAO,MAAMC,kBAAkB,CAAC,EAC9BC,OAAO,EACPC,QAAQ,EAAEC,IAAI,EAAEC,IAAI,EAAE,EACtBF,MAAM,EACNG,eAAe,EACfC,SAAS,EAAE,EACXC,SAAS,QAAQ,EACjBC,uBAAuB,KAAK,EAC5BC,WAAW,KAAK,EAChBC,qBAAqB,KAAK,EACrB;IACL,IAAIC,uBAAuBT,MAAM,CAACK,OAAO;IAEzC,IAAIK,mBAAmB,GAAGN,SAASR,YAAYK,QAAQC,OAAO;IAE9D,IAAIK,UAAU;QACZG,mBAAmB,CAAC,CAAC,EAAEA,mBAAmBX,QAAQY,cAAc,EAAE;IACpE;IAEA,IAAIC;IAEJ,IAAI,CAACH,wBAAwBJ,WAAW,YAAY;QAClDI,uBAAuBT,MAAM,CAAC,SAAS;IACzC;IAEA,IAAIS,sBAAsB;QACxBG,wBACE,OAAOH,yBAAyB,aAC5BA,qBAAqB;YAAEI,WAAWV;QAAgB,KAClDM;QAEN,IAAID,oBAAoB;YACtBI,wBAAwB,CAAC,CAAC,EAAEA,wBAAwBb,QAAQY,cAAc,EAAE;QAC9E;IACF;IAEA,MAAMG,SAASF,yBAAyBF;IAExCX,QAAQgB,YAAY,CAACC,GAAG,CAACN,kBAAkBI;IAE3C,IAAI,CAACR,sBAAsB;QACzB,OAAOQ;IACT;IAEA,OAAOjB,yBAAyBiB;AAClC,EAAC"}
@@ -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,CA8D7B"}
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,5 +1,5 @@
1
1
  import { sql } from 'drizzle-orm';
2
- import { buildVersionCollectionFields } from 'payload';
2
+ import { buildVersionCollectionFields, resolveBranchVersionParent } 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,6 +14,13 @@ 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;
17
24
  const version = {
18
25
  ...versionData
19
26
  };
@@ -25,6 +32,10 @@ export async function createVersion({ autosave, collectionSlug, createdAt, paren
25
32
  createdAt,
26
33
  latest: true,
27
34
  parent,
35
+ ...branched.versionData._branch ? {
36
+ _branch: branched.versionData._branch,
37
+ _branchParent: branched.versionData._branchParent
38
+ } : {},
28
39
  publishedLocale,
29
40
  snapshot,
30
41
  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 } 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
+ {"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"}
@@ -0,0 +1,10 @@
1
+ import type { DeleteBranchGlobal } from 'payload';
2
+ /**
3
+ * Drops a branch's copy of a global.
4
+ *
5
+ * Each global has its own table holding one row per branch, so this deletes by the branch
6
+ * column. Main's row uses the `main` sentinel, and `branch` is always a real non-main
7
+ * branch by the time this is called, so main's row can never match.
8
+ */
9
+ export declare const deleteBranchGlobal: DeleteBranchGlobal;
10
+ //# sourceMappingURL=deleteBranchGlobal.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"deleteBranchGlobal.d.ts","sourceRoot":"","sources":["../src/deleteBranchGlobal.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAA;AAUjD;;;;;;GAMG;AACH,eAAO,MAAM,kBAAkB,EAAE,kBAqBhC,CAAA"}
@@ -0,0 +1,27 @@
1
+ import { eq } from 'drizzle-orm';
2
+ import toSnakeCase from 'to-snake-case';
3
+ import { getTransaction } from './utilities/getTransaction.js';
4
+ import { markWrite } from './utilities/readAfterWrite.js';
5
+ /**
6
+ * Drops a branch's copy of a global.
7
+ *
8
+ * Each global has its own table holding one row per branch, so this deletes by the branch
9
+ * column. Main's row uses the `main` sentinel, and `branch` is always a real non-main
10
+ * branch by the time this is called, so main's row can never match.
11
+ */ export const deleteBranchGlobal = async function deleteBranchGlobal({ branch, globalSlug, req }) {
12
+ const tableName = this.tableNameMap.get(toSnakeCase(globalSlug));
13
+ const table = this.tables[tableName];
14
+ // Absent when branching is off for this global, in which case there is no copy to drop.
15
+ if (!table?._branch) {
16
+ return;
17
+ }
18
+ const db = await getTransaction(this, req);
19
+ await this.deleteWhere({
20
+ db,
21
+ tableName,
22
+ where: eq(table._branch, branch)
23
+ });
24
+ markWrite(this);
25
+ };
26
+
27
+ //# sourceMappingURL=deleteBranchGlobal.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/deleteBranchGlobal.ts"],"sourcesContent":["import type { DeleteBranchGlobal } from 'payload'\n\nimport { eq } from 'drizzle-orm'\nimport toSnakeCase from 'to-snake-case'\n\nimport type { DrizzleAdapter } from './types.js'\n\nimport { getTransaction } from './utilities/getTransaction.js'\nimport { markWrite } from './utilities/readAfterWrite.js'\n\n/**\n * Drops a branch's copy of a global.\n *\n * Each global has its own table holding one row per branch, so this deletes by the branch\n * column. Main's row uses the `main` sentinel, and `branch` is always a real non-main\n * branch by the time this is called, so main's row can never match.\n */\nexport const deleteBranchGlobal: DeleteBranchGlobal = async function deleteBranchGlobal(\n this: DrizzleAdapter,\n { branch, globalSlug, req },\n) {\n const tableName = this.tableNameMap.get(toSnakeCase(globalSlug))\n const table = this.tables[tableName]\n\n // Absent when branching is off for this global, in which case there is no copy to drop.\n if (!table?._branch) {\n return\n }\n\n const db = await getTransaction(this, req)\n\n await this.deleteWhere({\n db,\n tableName,\n where: eq(table._branch, branch),\n })\n\n markWrite(this)\n}\n"],"names":["eq","toSnakeCase","getTransaction","markWrite","deleteBranchGlobal","branch","globalSlug","req","tableName","tableNameMap","get","table","tables","_branch","db","deleteWhere","where"],"mappings":"AAEA,SAASA,EAAE,QAAQ,cAAa;AAChC,OAAOC,iBAAiB,gBAAe;AAIvC,SAASC,cAAc,QAAQ,gCAA+B;AAC9D,SAASC,SAAS,QAAQ,gCAA+B;AAEzD;;;;;;CAMC,GACD,OAAO,MAAMC,qBAAyC,eAAeA,mBAEnE,EAAEC,MAAM,EAAEC,UAAU,EAAEC,GAAG,EAAE;IAE3B,MAAMC,YAAY,IAAI,CAACC,YAAY,CAACC,GAAG,CAACT,YAAYK;IACpD,MAAMK,QAAQ,IAAI,CAACC,MAAM,CAACJ,UAAU;IAEpC,wFAAwF;IACxF,IAAI,CAACG,OAAOE,SAAS;QACnB;IACF;IAEA,MAAMC,KAAK,MAAMZ,eAAe,IAAI,EAAEK;IAEtC,MAAM,IAAI,CAACQ,WAAW,CAAC;QACrBD;QACAN;QACAQ,OAAOhB,GAAGW,MAAME,OAAO,EAAER;IAC3B;IAEAF,UAAU,IAAI;AAChB,EAAC"}
@@ -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;AAexC,eAAO,MAAM,SAAS,EAAE,SA0EvB,CAAA"}
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,SA4FvB,CAAA"}
package/dist/deleteOne.js CHANGED
@@ -1,4 +1,5 @@
1
1
  import { eq } from 'drizzle-orm';
2
+ import { resolveBranchDelete, resolveBranchQuery } from 'payload';
2
3
  import toSnakeCase from 'to-snake-case';
3
4
  import { buildFindManyArgs } from './find/buildFindManyArgs.js';
4
5
  import { buildQuery } from './queries/buildQuery.js';
@@ -7,14 +8,37 @@ import { transform } from './transform/read/index.js';
7
8
  import { getPrimaryDb } from './utilities/getPrimaryDb.js';
8
9
  import { getTransaction } from './utilities/getTransaction.js';
9
10
  import { markWrite } from './utilities/readAfterWrite.js';
10
- export const deleteOne = async function deleteOne({ collection: collectionSlug, req, returning, select, where: whereArg }) {
11
+ export const deleteOne = async function deleteOne({ branch, collection: collectionSlug, req, returning, select, where: whereArg }) {
11
12
  const collection = this.payload.collections[collectionSlug].config;
12
13
  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
+ whereArg = await resolveBranchQuery({
31
+ branch,
32
+ collectionSlug,
33
+ req,
34
+ where: whereArg
35
+ });
13
36
  let docToDelete;
14
37
  const { joins, selectFields, where } = buildQuery({
15
38
  adapter: this,
16
39
  fields: collection.flattenedFields,
17
40
  locale: req?.locale,
41
+ req,
18
42
  tableName,
19
43
  where: whereArg
20
44
  });
@@ -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 { 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"}
1
+ {"version":3,"sources":["../src/deleteOne.ts"],"sourcesContent":["import type { DeleteOne } from 'payload'\n\nimport { eq } from 'drizzle-orm'\nimport { resolveBranchDelete, resolveBranchQuery } 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 Awaited<ReturnType<DeleteOne>>)\n }\n\n if (branchDelete.deleteRowID !== undefined) {\n whereArg = { id: { equals: branchDelete.deleteRowID } }\n }\n\n whereArg = await resolveBranchQuery({ branch, collectionSlug, req, where: whereArg })\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 req,\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","resolveBranchQuery","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,EAAEC,kBAAkB,QAAQ,UAAS;AACjE,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,MAAM1B,oBAAoB;QAC7CW;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;IAEAX,WAAW,MAAMjB,mBAAmB;QAAEU;QAAQE;QAAgBC;QAAKG,OAAOC;IAAS;IAEnF,IAAIe;IAEJ,MAAM,EAAEC,KAAK,EAAEC,YAAY,EAAElB,KAAK,EAAE,GAAGb,WAAW;QAChDgC,SAAS,IAAI;QACbC,QAAQzB,WAAW0B,eAAe;QAClCC,QAAQzB,KAAKyB;QACbzB;QACAQ;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,OAAOlB,GAAG,IAAI,CAAC8C,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,OAAOlB,GAAG,IAAI,CAAC8C,MAAM,CAACvB,UAAU,CAACS,EAAE,EAAEE,YAAYF,EAAE;IACrD;IAEAtB,UAAU,IAAI;IAEd,OAAOwC;AACT,EAAC"}
@@ -10,8 +10,11 @@ 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';
14
- export { requireDrizzleKit } from '../postgres/requireDrizzleKit.js';
15
+ export { assertOperatorHandlerExtensionsInstalled } from '../postgres/query/assertOperatorHandlerExtensionsInstalled.js';
16
+ export { postgresUnaccent } from '../postgres/query/postgresUnaccent.js';
17
+ export { createRequireDrizzleKit, requireDrizzleKit } from '../postgres/requireDrizzleKit.js';
15
18
  export { geometryColumn } from '../postgres/schema/geometryColumn.js';
16
19
  export * from '../postgres/types.js';
17
20
  //# sourceMappingURL=postgres.d.ts.map
@@ -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,uBAAuB,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAA;AAC7F,OAAO,EAAE,cAAc,EAAE,MAAM,sCAAsC,CAAA;AACrE,cAAc,sBAAsB,CAAA"}
@@ -10,8 +10,11 @@ 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';
14
- export { requireDrizzleKit } from '../postgres/requireDrizzleKit.js';
15
+ export { assertOperatorHandlerExtensionsInstalled } from '../postgres/query/assertOperatorHandlerExtensionsInstalled.js';
16
+ export { postgresUnaccent } from '../postgres/query/postgresUnaccent.js';
17
+ export { createRequireDrizzleKit, requireDrizzleKit } from '../postgres/requireDrizzleKit.js';
15
18
  export { geometryColumn } from '../postgres/schema/geometryColumn.js';
16
19
  export * from '../postgres/types.js';
17
20
 
@@ -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 { createRequireDrizzleKit, 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","createRequireDrizzleKit","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,uBAAuB,EAAEC,iBAAiB,QAAQ,mCAAkC;AAC7F,SAASC,cAAc,QAAQ,uCAAsC;AACrE,cAAc,uBAAsB"}
@@ -2,6 +2,7 @@ export { columnToCodeConverter } from '../sqlite/columnToCodeConverter.js';
2
2
  export { countDistinct } from '../sqlite/countDistinct.js';
3
3
  export { convertPathToJSONTraversal } from '../sqlite/createJSONQuery/convertPathToJSONTraversal.js';
4
4
  export { createJSONQuery } from '../sqlite/createJSONQuery/index.js';
5
+ export { createRequireDrizzleKit } from '../sqlite/createRequireDrizzleKit.js';
5
6
  export { defaultDrizzleSnapshot } from '../sqlite/defaultSnapshot.js';
6
7
  export { deleteWhere } from '../sqlite/deleteWhere.js';
7
8
  export { dropDatabase } from '../sqlite/dropDatabase.js';
@@ -9,6 +10,6 @@ export { execute } from '../sqlite/execute.js';
9
10
  export { init } from '../sqlite/init.js';
10
11
  export { insert } from '../sqlite/insert.js';
11
12
  export { migrateSqliteLocalizeStatus } from '../sqlite/predefinedMigrations/localize-status/index.js';
12
- export { requireDrizzleKit } from '../sqlite/requireDrizzleKit.js';
13
+ export { migrateSqliteSizesToVariants } from '../sqlite/predefinedMigrations/sizes-to-variants/index.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,uBAAuB,EAAE,MAAM,sCAAsC,CAAA;AAC9E,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,cAAc,oBAAoB,CAAA"}