payload 4.0.0-internal.ea6e8f8 → 4.0.0-internal.ee5d8bd

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 (703) hide show
  1. package/dist/admin/adapters/router.d.ts +1 -1
  2. package/dist/admin/adapters/router.d.ts.map +1 -1
  3. package/dist/admin/adapters/router.js.map +1 -1
  4. package/dist/admin/forms/Diff.d.ts +0 -4
  5. package/dist/admin/forms/Diff.d.ts.map +1 -1
  6. package/dist/admin/forms/Diff.js.map +1 -1
  7. package/dist/admin/forms/Form.d.ts +0 -2
  8. package/dist/admin/forms/Form.d.ts.map +1 -1
  9. package/dist/admin/forms/Form.js.map +1 -1
  10. package/dist/admin/initAdminContext.d.ts.map +1 -1
  11. package/dist/admin/initAdminContext.js +0 -10
  12. package/dist/admin/initAdminContext.js.map +1 -1
  13. package/dist/auth/createAuthToken.d.ts +26 -0
  14. package/dist/auth/createAuthToken.d.ts.map +1 -0
  15. package/dist/auth/createAuthToken.js +39 -0
  16. package/dist/auth/createAuthToken.js.map +1 -0
  17. package/dist/auth/endpoints/refresh.d.ts.map +1 -1
  18. package/dist/auth/endpoints/refresh.js +2 -1
  19. package/dist/auth/endpoints/refresh.js.map +1 -1
  20. package/dist/auth/getFieldsToSign.js.map +1 -1
  21. package/dist/auth/loginWithCookie.d.ts.map +1 -1
  22. package/dist/auth/loginWithCookie.js +1 -0
  23. package/dist/auth/loginWithCookie.js.map +1 -1
  24. package/dist/auth/operations/local/login.d.ts.map +1 -1
  25. package/dist/auth/operations/local/login.js +1 -0
  26. package/dist/auth/operations/local/login.js.map +1 -1
  27. package/dist/auth/operations/login.d.ts +2 -0
  28. package/dist/auth/operations/login.d.ts.map +1 -1
  29. package/dist/auth/operations/login.js +6 -19
  30. package/dist/auth/operations/login.js.map +1 -1
  31. package/dist/auth/operations/refresh.d.ts +8 -0
  32. package/dist/auth/operations/refresh.d.ts.map +1 -1
  33. package/dist/auth/operations/refresh.js +50 -19
  34. package/dist/auth/operations/refresh.js.map +1 -1
  35. package/dist/auth/operations/resetPassword.d.ts.map +1 -1
  36. package/dist/auth/operations/resetPassword.js +54 -20
  37. package/dist/auth/operations/resetPassword.js.map +1 -1
  38. package/dist/auth/refreshAuthToken.d.ts +32 -0
  39. package/dist/auth/refreshAuthToken.d.ts.map +1 -0
  40. package/dist/auth/refreshAuthToken.js +113 -0
  41. package/dist/auth/refreshAuthToken.js.map +1 -0
  42. package/dist/auth/serverFunctions/cookies.js.map +1 -1
  43. package/dist/auth/serverFunctions/login.js.map +1 -1
  44. package/dist/auth/sessions.d.ts +9 -2
  45. package/dist/auth/sessions.d.ts.map +1 -1
  46. package/dist/auth/sessions.js +6 -5
  47. package/dist/auth/sessions.js.map +1 -1
  48. package/dist/auth/types.d.ts +25 -1
  49. package/dist/auth/types.d.ts.map +1 -1
  50. package/dist/auth/types.js.map +1 -1
  51. package/dist/cli/commands/data/utilities.d.ts +1 -1
  52. package/dist/cli/commands/data/utilities.d.ts.map +1 -1
  53. package/dist/cli/commands/data/utilities.js.map +1 -1
  54. package/dist/cli/defineCLICommand.js +1 -1
  55. package/dist/cli/defineCLICommand.js.map +1 -1
  56. package/dist/collections/config/client.d.ts +1 -1
  57. package/dist/collections/config/client.d.ts.map +1 -1
  58. package/dist/collections/config/client.js +0 -1
  59. package/dist/collections/config/client.js.map +1 -1
  60. package/dist/collections/config/defaults.d.ts +2 -0
  61. package/dist/collections/config/defaults.d.ts.map +1 -1
  62. package/dist/collections/config/defaults.js +4 -0
  63. package/dist/collections/config/defaults.js.map +1 -1
  64. package/dist/collections/config/sanitize.d.ts.map +1 -1
  65. package/dist/collections/config/sanitize.js +3 -0
  66. package/dist/collections/config/sanitize.js.map +1 -1
  67. package/dist/collections/config/sanitizeCompoundIndexes.d.ts.map +1 -1
  68. package/dist/collections/config/sanitizeCompoundIndexes.js +0 -9
  69. package/dist/collections/config/sanitizeCompoundIndexes.js.map +1 -1
  70. package/dist/collections/config/types.d.ts +4 -21
  71. package/dist/collections/config/types.d.ts.map +1 -1
  72. package/dist/collections/config/types.js.map +1 -1
  73. package/dist/collections/dataloader.d.ts +1 -10
  74. package/dist/collections/dataloader.d.ts.map +1 -1
  75. package/dist/collections/dataloader.js +6 -14
  76. package/dist/collections/dataloader.js.map +1 -1
  77. package/dist/collections/operations/create.d.ts.map +1 -1
  78. package/dist/collections/operations/create.js +0 -13
  79. package/dist/collections/operations/create.js.map +1 -1
  80. package/dist/collections/operations/delete.d.ts.map +1 -1
  81. package/dist/collections/operations/delete.js +121 -638
  82. package/dist/collections/operations/delete.js.map +1 -1
  83. package/dist/collections/operations/deleteByID.d.ts.map +1 -1
  84. package/dist/collections/operations/deleteByID.js +32 -238
  85. package/dist/collections/operations/deleteByID.js.map +1 -1
  86. package/dist/collections/operations/findByID.d.ts.map +1 -1
  87. package/dist/collections/operations/findByID.js +0 -6
  88. package/dist/collections/operations/findByID.js.map +1 -1
  89. package/dist/collections/operations/findDistinct.d.ts.map +1 -1
  90. package/dist/collections/operations/findDistinct.js +6 -7
  91. package/dist/collections/operations/findDistinct.js.map +1 -1
  92. package/dist/collections/operations/findVersionByID.d.ts.map +1 -1
  93. package/dist/collections/operations/findVersionByID.js +7 -0
  94. package/dist/collections/operations/findVersionByID.js.map +1 -1
  95. package/dist/collections/operations/findVersions.d.ts.map +1 -1
  96. package/dist/collections/operations/findVersions.js +5 -0
  97. package/dist/collections/operations/findVersions.js.map +1 -1
  98. package/dist/collections/operations/local/count.d.ts +4 -9
  99. package/dist/collections/operations/local/count.d.ts.map +1 -1
  100. package/dist/collections/operations/local/count.js.map +1 -1
  101. package/dist/collections/operations/local/countVersions.d.ts +0 -4
  102. package/dist/collections/operations/local/countVersions.d.ts.map +1 -1
  103. package/dist/collections/operations/local/countVersions.js.map +1 -1
  104. package/dist/collections/operations/local/create.d.ts +4 -9
  105. package/dist/collections/operations/local/create.d.ts.map +1 -1
  106. package/dist/collections/operations/local/create.js.map +1 -1
  107. package/dist/collections/operations/local/delete.d.ts +4 -9
  108. package/dist/collections/operations/local/delete.d.ts.map +1 -1
  109. package/dist/collections/operations/local/delete.js.map +1 -1
  110. package/dist/collections/operations/local/duplicate.d.ts +0 -5
  111. package/dist/collections/operations/local/duplicate.d.ts.map +1 -1
  112. package/dist/collections/operations/local/duplicate.js.map +1 -1
  113. package/dist/collections/operations/local/find.d.ts +4 -9
  114. package/dist/collections/operations/local/find.d.ts.map +1 -1
  115. package/dist/collections/operations/local/find.js.map +1 -1
  116. package/dist/collections/operations/local/findByID.d.ts +4 -9
  117. package/dist/collections/operations/local/findByID.d.ts.map +1 -1
  118. package/dist/collections/operations/local/findByID.js.map +1 -1
  119. package/dist/collections/operations/local/findDistinct.d.ts +0 -5
  120. package/dist/collections/operations/local/findDistinct.d.ts.map +1 -1
  121. package/dist/collections/operations/local/findDistinct.js.map +1 -1
  122. package/dist/collections/operations/local/findVersionByID.d.ts +0 -5
  123. package/dist/collections/operations/local/findVersionByID.d.ts.map +1 -1
  124. package/dist/collections/operations/local/findVersionByID.js.map +1 -1
  125. package/dist/collections/operations/local/findVersions.d.ts +0 -5
  126. package/dist/collections/operations/local/findVersions.d.ts.map +1 -1
  127. package/dist/collections/operations/local/findVersions.js.map +1 -1
  128. package/dist/collections/operations/local/restoreVersion.d.ts +0 -5
  129. package/dist/collections/operations/local/restoreVersion.d.ts.map +1 -1
  130. package/dist/collections/operations/local/restoreVersion.js.map +1 -1
  131. package/dist/collections/operations/local/update.d.ts +4 -9
  132. package/dist/collections/operations/local/update.d.ts.map +1 -1
  133. package/dist/collections/operations/local/update.js.map +1 -1
  134. package/dist/collections/operations/renameFile.js +1 -1
  135. package/dist/collections/operations/renameFile.js.map +1 -1
  136. package/dist/collections/operations/restoreVersion.d.ts.map +1 -1
  137. package/dist/collections/operations/restoreVersion.js +76 -157
  138. package/dist/collections/operations/restoreVersion.js.map +1 -1
  139. package/dist/collections/operations/update.d.ts.map +1 -1
  140. package/dist/collections/operations/update.js +171 -357
  141. package/dist/collections/operations/update.js.map +1 -1
  142. package/dist/collections/operations/updateByID.d.ts +0 -15
  143. package/dist/collections/operations/updateByID.d.ts.map +1 -1
  144. package/dist/collections/operations/updateByID.js +60 -265
  145. package/dist/collections/operations/updateByID.js.map +1 -1
  146. package/dist/collections/operations/utilities/buildBeforeOperation.d.ts.map +1 -1
  147. package/dist/collections/operations/utilities/buildBeforeOperation.js +0 -7
  148. package/dist/collections/operations/utilities/buildBeforeOperation.js.map +1 -1
  149. package/dist/collections/operations/utilities/update.d.ts +1 -14
  150. package/dist/collections/operations/utilities/update.d.ts.map +1 -1
  151. package/dist/collections/operations/utilities/update.js +20 -92
  152. package/dist/collections/operations/utilities/update.js.map +1 -1
  153. package/dist/collections/operations/validate.js +4 -4
  154. package/dist/collections/operations/validate.js.map +1 -1
  155. package/dist/config/client.d.ts +1 -3
  156. package/dist/config/client.d.ts.map +1 -1
  157. package/dist/config/client.js +1 -9
  158. package/dist/config/client.js.map +1 -1
  159. package/dist/config/defaults.d.ts.map +1 -1
  160. package/dist/config/defaults.js +1 -0
  161. package/dist/config/defaults.js.map +1 -1
  162. package/dist/config/definePlugin.js.map +1 -1
  163. package/dist/config/sanitize.d.ts.map +1 -1
  164. package/dist/config/sanitize.js +2 -40
  165. package/dist/config/sanitize.js.map +1 -1
  166. package/dist/config/types.d.ts +13 -21
  167. package/dist/config/types.d.ts.map +1 -1
  168. package/dist/config/types.js.map +1 -1
  169. package/dist/database/defaultCopy.d.ts.map +1 -1
  170. package/dist/database/defaultCopy.js +0 -1
  171. package/dist/database/defaultCopy.js.map +1 -1
  172. package/dist/database/types.d.ts +4 -75
  173. package/dist/database/types.d.ts.map +1 -1
  174. package/dist/database/types.js.map +1 -1
  175. package/dist/exports/build-config.d.ts +9 -0
  176. package/dist/exports/build-config.d.ts.map +1 -0
  177. package/dist/exports/build-config.js +38 -0
  178. package/dist/exports/build-config.js.map +1 -0
  179. package/dist/exports/shared.d.ts +0 -2
  180. package/dist/exports/shared.d.ts.map +1 -1
  181. package/dist/exports/shared.js +0 -2
  182. package/dist/exports/shared.js.map +1 -1
  183. package/dist/fields/baseFields/authorship/index.d.ts +1 -2
  184. package/dist/fields/baseFields/authorship/index.d.ts.map +1 -1
  185. package/dist/fields/baseFields/authorship/index.js +0 -12
  186. package/dist/fields/baseFields/authorship/index.js.map +1 -1
  187. package/dist/fields/config/client.js.map +1 -1
  188. package/dist/fields/config/reservedFieldNames.d.ts.map +1 -1
  189. package/dist/fields/config/reservedFieldNames.js.map +1 -1
  190. package/dist/fields/config/types.d.ts.map +1 -1
  191. package/dist/fields/config/types.js.map +1 -1
  192. package/dist/fields/hooks/afterChange/promise.js.map +1 -1
  193. package/dist/fields/hooks/afterRead/index.d.ts +0 -8
  194. package/dist/fields/hooks/afterRead/index.d.ts.map +1 -1
  195. package/dist/fields/hooks/afterRead/index.js +2 -6
  196. package/dist/fields/hooks/afterRead/index.js.map +1 -1
  197. package/dist/fields/hooks/afterRead/promise.d.ts +1 -3
  198. package/dist/fields/hooks/afterRead/promise.d.ts.map +1 -1
  199. package/dist/fields/hooks/afterRead/promise.js +17 -41
  200. package/dist/fields/hooks/afterRead/promise.js.map +1 -1
  201. package/dist/fields/hooks/afterRead/relationshipPopulationPromise.d.ts.map +1 -1
  202. package/dist/fields/hooks/afterRead/relationshipPopulationPromise.js +0 -2
  203. package/dist/fields/hooks/afterRead/relationshipPopulationPromise.js.map +1 -1
  204. package/dist/fields/hooks/afterRead/traverseFields.d.ts +1 -3
  205. package/dist/fields/hooks/afterRead/traverseFields.d.ts.map +1 -1
  206. package/dist/fields/hooks/afterRead/traverseFields.js +2 -4
  207. package/dist/fields/hooks/afterRead/traverseFields.js.map +1 -1
  208. package/dist/fields/hooks/afterRead/virtualFieldPopulationPromise.d.ts.map +1 -1
  209. package/dist/fields/hooks/afterRead/virtualFieldPopulationPromise.js +0 -3
  210. package/dist/fields/hooks/afterRead/virtualFieldPopulationPromise.js.map +1 -1
  211. package/dist/fields/hooks/beforeChange/flattenValidationData.d.ts +14 -0
  212. package/dist/fields/hooks/beforeChange/flattenValidationData.d.ts.map +1 -0
  213. package/dist/fields/hooks/beforeChange/flattenValidationData.js +36 -0
  214. package/dist/fields/hooks/beforeChange/flattenValidationData.js.map +1 -0
  215. package/dist/fields/hooks/beforeChange/promise.d.ts +2 -1
  216. package/dist/fields/hooks/beforeChange/promise.d.ts.map +1 -1
  217. package/dist/fields/hooks/beforeChange/promise.js +96 -22
  218. package/dist/fields/hooks/beforeChange/promise.js.map +1 -1
  219. package/dist/fields/hooks/beforeChange/traverseFields.d.ts +2 -1
  220. package/dist/fields/hooks/beforeChange/traverseFields.d.ts.map +1 -1
  221. package/dist/fields/hooks/beforeChange/traverseFields.js +2 -1
  222. package/dist/fields/hooks/beforeChange/traverseFields.js.map +1 -1
  223. package/dist/fields/hooks/beforeValidate/promise.d.ts.map +1 -1
  224. package/dist/fields/hooks/beforeValidate/promise.js +0 -8
  225. package/dist/fields/hooks/beforeValidate/promise.js.map +1 -1
  226. package/dist/fields/validations.d.ts.map +1 -1
  227. package/dist/fields/validations.js +4 -1
  228. package/dist/fields/validations.js.map +1 -1
  229. package/dist/globals/config/types.d.ts +2 -6
  230. package/dist/globals/config/types.d.ts.map +1 -1
  231. package/dist/globals/config/types.js.map +1 -1
  232. package/dist/globals/operations/countGlobalVersions.d.ts.map +1 -1
  233. package/dist/globals/operations/countGlobalVersions.js +0 -7
  234. package/dist/globals/operations/countGlobalVersions.js.map +1 -1
  235. package/dist/globals/operations/findOne.d.ts.map +1 -1
  236. package/dist/globals/operations/findOne.js +0 -7
  237. package/dist/globals/operations/findOne.js.map +1 -1
  238. package/dist/globals/operations/findVersionByID.d.ts.map +1 -1
  239. package/dist/globals/operations/findVersionByID.js +6 -6
  240. package/dist/globals/operations/findVersionByID.js.map +1 -1
  241. package/dist/globals/operations/findVersions.d.ts.map +1 -1
  242. package/dist/globals/operations/findVersions.js +4 -6
  243. package/dist/globals/operations/findVersions.js.map +1 -1
  244. package/dist/globals/operations/local/countVersions.d.ts +0 -5
  245. package/dist/globals/operations/local/countVersions.d.ts.map +1 -1
  246. package/dist/globals/operations/local/countVersions.js.map +1 -1
  247. package/dist/globals/operations/local/findOne.d.ts +0 -5
  248. package/dist/globals/operations/local/findOne.d.ts.map +1 -1
  249. package/dist/globals/operations/local/findOne.js.map +1 -1
  250. package/dist/globals/operations/local/findVersionByID.d.ts +0 -5
  251. package/dist/globals/operations/local/findVersionByID.d.ts.map +1 -1
  252. package/dist/globals/operations/local/findVersionByID.js.map +1 -1
  253. package/dist/globals/operations/local/findVersions.d.ts +0 -5
  254. package/dist/globals/operations/local/findVersions.d.ts.map +1 -1
  255. package/dist/globals/operations/local/findVersions.js.map +1 -1
  256. package/dist/globals/operations/local/restoreVersion.d.ts +0 -5
  257. package/dist/globals/operations/local/restoreVersion.d.ts.map +1 -1
  258. package/dist/globals/operations/local/restoreVersion.js.map +1 -1
  259. package/dist/globals/operations/local/update.d.ts +0 -5
  260. package/dist/globals/operations/local/update.d.ts.map +1 -1
  261. package/dist/globals/operations/local/update.js +18 -61
  262. package/dist/globals/operations/local/update.js.map +1 -1
  263. package/dist/globals/operations/restoreVersion.d.ts +2 -3
  264. package/dist/globals/operations/restoreVersion.d.ts.map +1 -1
  265. package/dist/globals/operations/restoreVersion.js +24 -61
  266. package/dist/globals/operations/restoreVersion.js.map +1 -1
  267. package/dist/globals/operations/update.d.ts.map +1 -1
  268. package/dist/globals/operations/update.js +8 -86
  269. package/dist/globals/operations/update.js.map +1 -1
  270. package/dist/globals/operations/validate.js +1 -1
  271. package/dist/globals/operations/validate.js.map +1 -1
  272. package/dist/hierarchy/addHierarchyToCollection.d.ts.map +1 -1
  273. package/dist/hierarchy/addHierarchyToCollection.js +32 -21
  274. package/dist/hierarchy/addHierarchyToCollection.js.map +1 -1
  275. package/dist/hierarchy/createFolderField.js.map +1 -1
  276. package/dist/hierarchy/getInitialTreeData.d.ts +1 -3
  277. package/dist/hierarchy/getInitialTreeData.d.ts.map +1 -1
  278. package/dist/hierarchy/getInitialTreeData.js +1 -4
  279. package/dist/hierarchy/getInitialTreeData.js.map +1 -1
  280. package/dist/hierarchy/resolveHierarchyCollections.js +9 -3
  281. package/dist/hierarchy/resolveHierarchyCollections.js.map +1 -1
  282. package/dist/hierarchy/utils/computePaths.d.ts.map +1 -1
  283. package/dist/hierarchy/utils/computePaths.js.map +1 -1
  284. package/dist/index.bundled.d.ts +4336 -5501
  285. package/dist/index.d.ts +27 -51
  286. package/dist/index.d.ts.map +1 -1
  287. package/dist/index.js +14 -37
  288. package/dist/index.js.map +1 -1
  289. package/dist/llm-instructions/getInstructionsCollection.d.ts.map +1 -1
  290. package/dist/llm-instructions/getInstructionsCollection.js +2 -0
  291. package/dist/llm-instructions/getInstructionsCollection.js.map +1 -1
  292. package/dist/preferences/keys.d.ts +4 -11
  293. package/dist/preferences/keys.d.ts.map +1 -1
  294. package/dist/preferences/keys.js +3 -10
  295. package/dist/preferences/keys.js.map +1 -1
  296. package/dist/preferences/types.d.ts +0 -19
  297. package/dist/preferences/types.d.ts.map +1 -1
  298. package/dist/preferences/types.js.map +1 -1
  299. package/dist/queues/operations/runJobs/runJob/getRunTaskFunction.js +1 -1
  300. package/dist/queues/operations/runJobs/runJob/getRunTaskFunction.js.map +1 -1
  301. package/dist/types/index.d.ts +0 -13
  302. package/dist/types/index.d.ts.map +1 -1
  303. package/dist/types/index.js.map +1 -1
  304. package/dist/uploads/deleteAssociatedFiles.d.ts.map +1 -1
  305. package/dist/uploads/deleteAssociatedFiles.js +29 -108
  306. package/dist/uploads/deleteAssociatedFiles.js.map +1 -1
  307. package/dist/uploads/endpoints/getFile.d.ts.map +1 -1
  308. package/dist/uploads/endpoints/getFile.js +0 -5
  309. package/dist/uploads/endpoints/getFile.js.map +1 -1
  310. package/dist/uploads/fileExists.d.ts.map +1 -1
  311. package/dist/uploads/fileExists.js +2 -5
  312. package/dist/uploads/fileExists.js.map +1 -1
  313. package/dist/uploads/fileVersioning/archive.d.ts.map +1 -1
  314. package/dist/uploads/fileVersioning/archive.js +1 -15
  315. package/dist/uploads/fileVersioning/archive.js.map +1 -1
  316. package/dist/uploads/fileVersioning/cleanup.d.ts +0 -7
  317. package/dist/uploads/fileVersioning/cleanup.d.ts.map +1 -1
  318. package/dist/uploads/fileVersioning/cleanup.js +0 -12
  319. package/dist/uploads/fileVersioning/cleanup.js.map +1 -1
  320. package/dist/uploads/fileVersioning/cloudStorage.d.ts.map +1 -1
  321. package/dist/uploads/fileVersioning/cloudStorage.js +1 -16
  322. package/dist/uploads/fileVersioning/cloudStorage.js.map +1 -1
  323. package/dist/uploads/fileVersioning/resolveHistoricalFile.js.map +1 -1
  324. package/dist/uploads/formatFilesize.js +1 -1
  325. package/dist/uploads/formatFilesize.js.map +1 -1
  326. package/dist/uploads/generateFileData.d.ts +0 -5
  327. package/dist/uploads/generateFileData.d.ts.map +1 -1
  328. package/dist/uploads/generateFileData.js +2 -74
  329. package/dist/uploads/generateFileData.js.map +1 -1
  330. package/dist/uploads/getBaseFields.d.ts.map +1 -1
  331. package/dist/uploads/getBaseFields.js +29 -46
  332. package/dist/uploads/getBaseFields.js.map +1 -1
  333. package/dist/uploads/getFileContentRequirement.js.map +1 -1
  334. package/dist/uploads/getFileFromUploadInstructions.js.map +1 -1
  335. package/dist/uploads/getSafeFilename.d.ts.map +1 -1
  336. package/dist/uploads/getSafeFilename.js +3 -5
  337. package/dist/uploads/getSafeFilename.js.map +1 -1
  338. package/dist/uploads/safeFetch.js.map +1 -1
  339. package/dist/uploads/stagedUpload.js.map +1 -1
  340. package/dist/uploads/transformers/handleDynamicFileRequest.js +11 -2
  341. package/dist/uploads/transformers/handleDynamicFileRequest.js.map +1 -1
  342. package/dist/uploads/types.d.ts +0 -11
  343. package/dist/uploads/types.d.ts.map +1 -1
  344. package/dist/uploads/types.js.map +1 -1
  345. package/dist/uploads/uploadFiles.d.ts +1 -4
  346. package/dist/uploads/uploadFiles.d.ts.map +1 -1
  347. package/dist/uploads/uploadFiles.js +5 -29
  348. package/dist/uploads/uploadFiles.js.map +1 -1
  349. package/dist/utilities/addSelectGenericsToGeneretedTypes.d.ts.map +1 -1
  350. package/dist/utilities/addSelectGenericsToGeneretedTypes.js +0 -1
  351. package/dist/utilities/addSelectGenericsToGeneretedTypes.js.map +1 -1
  352. package/dist/utilities/appendDateTimezoneSelectFields.js.map +1 -1
  353. package/dist/utilities/assertNoValidationWrite.d.ts.map +1 -1
  354. package/dist/utilities/assertNoValidationWrite.js +0 -4
  355. package/dist/utilities/assertNoValidationWrite.js.map +1 -1
  356. package/dist/utilities/checkDocumentLockStatus.d.ts +6 -15
  357. package/dist/utilities/checkDocumentLockStatus.d.ts.map +1 -1
  358. package/dist/utilities/checkDocumentLockStatus.js +11 -44
  359. package/dist/utilities/checkDocumentLockStatus.js.map +1 -1
  360. package/dist/utilities/cloneValidationRequest.js.map +1 -1
  361. package/dist/utilities/commitTransaction.d.ts +0 -4
  362. package/dist/utilities/commitTransaction.d.ts.map +1 -1
  363. package/dist/utilities/commitTransaction.js +1 -41
  364. package/dist/utilities/commitTransaction.js.map +1 -1
  365. package/dist/utilities/configToJSONSchema.d.ts.map +1 -1
  366. package/dist/utilities/configToJSONSchema.js +2 -18
  367. package/dist/utilities/configToJSONSchema.js.map +1 -1
  368. package/dist/utilities/createPayloadRequest.d.ts +0 -5
  369. package/dist/utilities/createPayloadRequest.d.ts.map +1 -1
  370. package/dist/utilities/createPayloadRequest.js +3 -50
  371. package/dist/utilities/createPayloadRequest.js.map +1 -1
  372. package/dist/utilities/createPayloadRequestFromWebRequest.d.ts +12 -1
  373. package/dist/utilities/createPayloadRequestFromWebRequest.d.ts.map +1 -1
  374. package/dist/utilities/createPayloadRequestFromWebRequest.js +9 -5
  375. package/dist/utilities/createPayloadRequestFromWebRequest.js.map +1 -1
  376. package/dist/utilities/deepCopyObject.js.map +1 -1
  377. package/dist/utilities/documentMatchingWhereExists.js +1 -1
  378. package/dist/utilities/documentMatchingWhereExists.js.map +1 -1
  379. package/dist/utilities/entityInputSchema/validateEntityData.d.ts.map +1 -1
  380. package/dist/utilities/entityInputSchema/validateEntityData.js.map +1 -1
  381. package/dist/utilities/filterDataToSelectedLocales.js.map +1 -1
  382. package/dist/utilities/getEntityPermissions/getEntityPermissions.d.ts.map +1 -1
  383. package/dist/utilities/getEntityPermissions/getEntityPermissions.js +1 -0
  384. package/dist/utilities/getEntityPermissions/getEntityPermissions.js.map +1 -1
  385. package/dist/utilities/getEntityPermissions/populateFieldPermissions.js.map +1 -1
  386. package/dist/utilities/getVersionsConfig.d.ts +4 -0
  387. package/dist/utilities/getVersionsConfig.d.ts.map +1 -1
  388. package/dist/utilities/getVersionsConfig.js +5 -0
  389. package/dist/utilities/getVersionsConfig.js.map +1 -1
  390. package/dist/utilities/handleEndpoints.d.ts.map +1 -1
  391. package/dist/utilities/handleEndpoints.js +10 -9
  392. package/dist/utilities/handleEndpoints.js.map +1 -1
  393. package/dist/utilities/httpStatus.d.ts +0 -2
  394. package/dist/utilities/httpStatus.d.ts.map +1 -1
  395. package/dist/utilities/httpStatus.js +1 -3
  396. package/dist/utilities/httpStatus.js.map +1 -1
  397. package/dist/utilities/initTransaction.d.ts.map +1 -1
  398. package/dist/utilities/initTransaction.js +7 -35
  399. package/dist/utilities/initTransaction.js.map +1 -1
  400. package/dist/utilities/killTransaction.d.ts.map +1 -1
  401. package/dist/utilities/killTransaction.js +0 -27
  402. package/dist/utilities/killTransaction.js.map +1 -1
  403. package/dist/utilities/parseParams/index.js.map +1 -1
  404. package/dist/utilities/parseValidationLocale.js.map +1 -1
  405. package/dist/utilities/sanitizePopulateParam.js.map +1 -1
  406. package/dist/utilities/telemetry/conf/index.d.ts +4 -1
  407. package/dist/utilities/telemetry/conf/index.d.ts.map +1 -1
  408. package/dist/utilities/telemetry/conf/index.js.map +1 -1
  409. package/dist/utilities/telemetry/featureInfo/getFeatureInfo.js.map +1 -1
  410. package/dist/versions/allLocalesPublicationStatus.js.map +1 -1
  411. package/dist/versions/buildCollectionFields.d.ts.map +1 -1
  412. package/dist/versions/buildCollectionFields.js +0 -23
  413. package/dist/versions/buildCollectionFields.js.map +1 -1
  414. package/dist/versions/buildGlobalFields.d.ts.map +1 -1
  415. package/dist/versions/buildGlobalFields.js +0 -14
  416. package/dist/versions/buildGlobalFields.js.map +1 -1
  417. package/dist/versions/buildVersionCompoundIndexes.d.ts.map +1 -1
  418. package/dist/versions/buildVersionCompoundIndexes.js +2 -8
  419. package/dist/versions/buildVersionCompoundIndexes.js.map +1 -1
  420. package/dist/versions/deleteCollectionVersions.d.ts +1 -2
  421. package/dist/versions/deleteCollectionVersions.d.ts.map +1 -1
  422. package/dist/versions/deleteCollectionVersions.js +8 -37
  423. package/dist/versions/deleteCollectionVersions.js.map +1 -1
  424. package/dist/versions/deleteScheduledPublishJobs.d.ts.map +1 -1
  425. package/dist/versions/deleteScheduledPublishJobs.js +0 -4
  426. package/dist/versions/deleteScheduledPublishJobs.js.map +1 -1
  427. package/dist/versions/drafts/appendVersionToQueryKey.d.ts.map +1 -1
  428. package/dist/versions/drafts/appendVersionToQueryKey.js +1 -9
  429. package/dist/versions/drafts/appendVersionToQueryKey.js.map +1 -1
  430. package/dist/versions/drafts/replaceWithDraftIfAvailable.d.ts.map +1 -1
  431. package/dist/versions/drafts/replaceWithDraftIfAvailable.js +1 -8
  432. package/dist/versions/drafts/replaceWithDraftIfAvailable.js.map +1 -1
  433. package/dist/versions/enforceMaxVersions.d.ts +0 -1
  434. package/dist/versions/enforceMaxVersions.d.ts.map +1 -1
  435. package/dist/versions/enforceMaxVersions.js +6 -22
  436. package/dist/versions/enforceMaxVersions.js.map +1 -1
  437. package/dist/versions/getLatestCollectionVersion.d.ts.map +1 -1
  438. package/dist/versions/getLatestCollectionVersion.js +2 -10
  439. package/dist/versions/getLatestCollectionVersion.js.map +1 -1
  440. package/dist/versions/getLatestGlobalVersion.d.ts +2 -6
  441. package/dist/versions/getLatestGlobalVersion.d.ts.map +1 -1
  442. package/dist/versions/getLatestGlobalVersion.js +21 -65
  443. package/dist/versions/getLatestGlobalVersion.js.map +1 -1
  444. package/dist/versions/isInheritedReadVersionsAccess.js.map +1 -1
  445. package/dist/versions/saveVersion.d.ts +0 -7
  446. package/dist/versions/saveVersion.d.ts.map +1 -1
  447. package/dist/versions/saveVersion.js +4 -27
  448. package/dist/versions/saveVersion.js.map +1 -1
  449. package/dist/versions/updateLatestVersion.d.ts +0 -1
  450. package/dist/versions/updateLatestVersion.d.ts.map +1 -1
  451. package/dist/versions/updateLatestVersion.js +7 -24
  452. package/dist/versions/updateLatestVersion.js.map +1 -1
  453. package/package.json +30 -28
  454. package/skills/payload/reference/ENDPOINTS.md +3 -9
  455. package/skills/payload/reference/PLUGIN-DEVELOPMENT.md +4 -4
  456. package/dist/admin/getAdminPreferences.d.ts +0 -10
  457. package/dist/admin/getAdminPreferences.d.ts.map +0 -1
  458. package/dist/admin/getAdminPreferences.js +0 -53
  459. package/dist/admin/getAdminPreferences.js.map +0 -1
  460. package/dist/admin/getRequestBranch.d.ts +0 -6
  461. package/dist/admin/getRequestBranch.d.ts.map +0 -1
  462. package/dist/admin/getRequestBranch.js +0 -17
  463. package/dist/admin/getRequestBranch.js.map +0 -1
  464. package/dist/branching/appendBranchFilter.d.ts +0 -30
  465. package/dist/branching/appendBranchFilter.d.ts.map +0 -1
  466. package/dist/branching/appendBranchFilter.js +0 -105
  467. package/dist/branching/appendBranchFilter.js.map +0 -1
  468. package/dist/branching/assertBranchAccess.d.ts +0 -10
  469. package/dist/branching/assertBranchAccess.d.ts.map +0 -1
  470. package/dist/branching/assertBranchAccess.js +0 -36
  471. package/dist/branching/assertBranchAccess.js.map +0 -1
  472. package/dist/branching/assertBranchActionAccess.d.ts +0 -10
  473. package/dist/branching/assertBranchActionAccess.d.ts.map +0 -1
  474. package/dist/branching/assertBranchActionAccess.js +0 -15
  475. package/dist/branching/assertBranchActionAccess.js.map +0 -1
  476. package/dist/branching/assertBranchCreatedDocumentsUnreferenced.d.ts +0 -53
  477. package/dist/branching/assertBranchCreatedDocumentsUnreferenced.d.ts.map +0 -1
  478. package/dist/branching/assertBranchCreatedDocumentsUnreferenced.js +0 -833
  479. package/dist/branching/assertBranchCreatedDocumentsUnreferenced.js.map +0 -1
  480. package/dist/branching/assertBranchReadable.d.ts +0 -36
  481. package/dist/branching/assertBranchReadable.d.ts.map +0 -1
  482. package/dist/branching/assertBranchReadable.js +0 -83
  483. package/dist/branching/assertBranchReadable.js.map +0 -1
  484. package/dist/branching/assertBranchUpdateAccess.d.ts +0 -8
  485. package/dist/branching/assertBranchUpdateAccess.d.ts.map +0 -1
  486. package/dist/branching/assertBranchUpdateAccess.js +0 -12
  487. package/dist/branching/assertBranchUpdateAccess.js.map +0 -1
  488. package/dist/branching/assertBranchWritable.d.ts +0 -18
  489. package/dist/branching/assertBranchWritable.d.ts.map +0 -1
  490. package/dist/branching/assertBranchWritable.js +0 -46
  491. package/dist/branching/assertBranchWritable.js.map +0 -1
  492. package/dist/branching/branchIDs.d.ts +0 -38
  493. package/dist/branching/branchIDs.d.ts.map +0 -1
  494. package/dist/branching/branchIDs.js +0 -113
  495. package/dist/branching/branchIDs.js.map +0 -1
  496. package/dist/branching/branchSelect.d.ts +0 -42
  497. package/dist/branching/branchSelect.d.ts.map +0 -1
  498. package/dist/branching/branchSelect.js +0 -97
  499. package/dist/branching/branchSelect.js.map +0 -1
  500. package/dist/branching/checkFieldAccess.d.ts +0 -21
  501. package/dist/branching/checkFieldAccess.d.ts.map +0 -1
  502. package/dist/branching/checkFieldAccess.js +0 -238
  503. package/dist/branching/checkFieldAccess.js.map +0 -1
  504. package/dist/branching/collections.d.ts +0 -14
  505. package/dist/branching/collections.d.ts.map +0 -1
  506. package/dist/branching/collections.js +0 -713
  507. package/dist/branching/collections.js.map +0 -1
  508. package/dist/branching/combineBranchAccess.d.ts +0 -6
  509. package/dist/branching/combineBranchAccess.d.ts.map +0 -1
  510. package/dist/branching/combineBranchAccess.js +0 -22
  511. package/dist/branching/combineBranchAccess.js.map +0 -1
  512. package/dist/branching/copyUploadFilesToBranch.d.ts +0 -9
  513. package/dist/branching/copyUploadFilesToBranch.d.ts.map +0 -1
  514. package/dist/branching/copyUploadFilesToBranch.js +0 -126
  515. package/dist/branching/copyUploadFilesToBranch.js.map +0 -1
  516. package/dist/branching/createShadowRow.d.ts +0 -70
  517. package/dist/branching/createShadowRow.d.ts.map +0 -1
  518. package/dist/branching/createShadowRow.js +0 -296
  519. package/dist/branching/createShadowRow.js.map +0 -1
  520. package/dist/branching/discard.d.ts +0 -52
  521. package/dist/branching/discard.d.ts.map +0 -1
  522. package/dist/branching/discard.js +0 -428
  523. package/dist/branching/discard.js.map +0 -1
  524. package/dist/branching/effectiveOperations.d.ts +0 -55
  525. package/dist/branching/effectiveOperations.d.ts.map +0 -1
  526. package/dist/branching/effectiveOperations.js +0 -472
  527. package/dist/branching/effectiveOperations.js.map +0 -1
  528. package/dist/branching/endpoints/discard.d.ts +0 -15
  529. package/dist/branching/endpoints/discard.d.ts.map +0 -1
  530. package/dist/branching/endpoints/discard.js +0 -55
  531. package/dist/branching/endpoints/discard.js.map +0 -1
  532. package/dist/branching/endpoints/merge.d.ts +0 -34
  533. package/dist/branching/endpoints/merge.d.ts.map +0 -1
  534. package/dist/branching/endpoints/merge.js +0 -119
  535. package/dist/branching/endpoints/merge.js.map +0 -1
  536. package/dist/branching/forkDocument.d.ts +0 -20
  537. package/dist/branching/forkDocument.d.ts.map +0 -1
  538. package/dist/branching/forkDocument.js +0 -169
  539. package/dist/branching/forkDocument.js.map +0 -1
  540. package/dist/branching/globalMergeWrites.d.ts +0 -21
  541. package/dist/branching/globalMergeWrites.d.ts.map +0 -1
  542. package/dist/branching/globalMergeWrites.js +0 -146
  543. package/dist/branching/globalMergeWrites.js.map +0 -1
  544. package/dist/branching/globals.d.ts +0 -49
  545. package/dist/branching/globals.d.ts.map +0 -1
  546. package/dist/branching/globals.js +0 -197
  547. package/dist/branching/globals.js.map +0 -1
  548. package/dist/branching/hooks.d.ts +0 -24
  549. package/dist/branching/hooks.d.ts.map +0 -1
  550. package/dist/branching/hooks.js +0 -92
  551. package/dist/branching/hooks.js.map +0 -1
  552. package/dist/branching/injectBranchFields.d.ts +0 -40
  553. package/dist/branching/injectBranchFields.d.ts.map +0 -1
  554. package/dist/branching/injectBranchFields.js +0 -229
  555. package/dist/branching/injectBranchFields.js.map +0 -1
  556. package/dist/branching/merge/applyMergeChange.d.ts +0 -27
  557. package/dist/branching/merge/applyMergeChange.d.ts.map +0 -1
  558. package/dist/branching/merge/applyMergeChange.js +0 -853
  559. package/dist/branching/merge/applyMergeChange.js.map +0 -1
  560. package/dist/branching/merge/branchMergeStatus.d.ts +0 -12
  561. package/dist/branching/merge/branchMergeStatus.d.ts.map +0 -1
  562. package/dist/branching/merge/branchMergeStatus.js +0 -74
  563. package/dist/branching/merge/branchMergeStatus.js.map +0 -1
  564. package/dist/branching/merge/executeMerge.d.ts +0 -22
  565. package/dist/branching/merge/executeMerge.d.ts.map +0 -1
  566. package/dist/branching/merge/executeMerge.js +0 -600
  567. package/dist/branching/merge/executeMerge.js.map +0 -1
  568. package/dist/branching/merge/finalizeMerge.d.ts +0 -40
  569. package/dist/branching/merge/finalizeMerge.d.ts.map +0 -1
  570. package/dist/branching/merge/finalizeMerge.js +0 -237
  571. package/dist/branching/merge/finalizeMerge.js.map +0 -1
  572. package/dist/branching/merge/mergeLedger.d.ts +0 -40
  573. package/dist/branching/merge/mergeLedger.d.ts.map +0 -1
  574. package/dist/branching/merge/mergeLedger.js +0 -130
  575. package/dist/branching/merge/mergeLedger.js.map +0 -1
  576. package/dist/branching/merge/prepareMerge.d.ts +0 -41
  577. package/dist/branching/merge/prepareMerge.d.ts.map +0 -1
  578. package/dist/branching/merge/prepareMerge.js +0 -234
  579. package/dist/branching/merge/prepareMerge.js.map +0 -1
  580. package/dist/branching/merge/recoverMerge.d.ts +0 -16
  581. package/dist/branching/merge/recoverMerge.d.ts.map +0 -1
  582. package/dist/branching/merge/recoverMerge.js +0 -199
  583. package/dist/branching/merge/recoverMerge.js.map +0 -1
  584. package/dist/branching/merge/retryFailedCleanups.d.ts +0 -36
  585. package/dist/branching/merge/retryFailedCleanups.d.ts.map +0 -1
  586. package/dist/branching/merge/retryFailedCleanups.js +0 -335
  587. package/dist/branching/merge/retryFailedCleanups.js.map +0 -1
  588. package/dist/branching/merge/utilities.d.ts +0 -35
  589. package/dist/branching/merge/utilities.d.ts.map +0 -1
  590. package/dist/branching/merge/utilities.js +0 -54
  591. package/dist/branching/merge/utilities.js.map +0 -1
  592. package/dist/branching/merge.d.ts +0 -88
  593. package/dist/branching/merge.d.ts.map +0 -1
  594. package/dist/branching/merge.js +0 -163
  595. package/dist/branching/merge.js.map +0 -1
  596. package/dist/branching/mergeWriteGuard.d.ts +0 -20
  597. package/dist/branching/mergeWriteGuard.d.ts.map +0 -1
  598. package/dist/branching/mergeWriteGuard.js +0 -27
  599. package/dist/branching/mergeWriteGuard.js.map +0 -1
  600. package/dist/branching/preflight.d.ts +0 -71
  601. package/dist/branching/preflight.d.ts.map +0 -1
  602. package/dist/branching/preflight.js +0 -757
  603. package/dist/branching/preflight.js.map +0 -1
  604. package/dist/branching/readLocalizedBranchWrite.d.ts +0 -14
  605. package/dist/branching/readLocalizedBranchWrite.d.ts.map +0 -1
  606. package/dist/branching/readLocalizedBranchWrite.js +0 -90
  607. package/dist/branching/readLocalizedBranchWrite.js.map +0 -1
  608. package/dist/branching/readMergeSnapshot.d.ts +0 -18
  609. package/dist/branching/readMergeSnapshot.d.ts.map +0 -1
  610. package/dist/branching/readMergeSnapshot.js +0 -99
  611. package/dist/branching/readMergeSnapshot.js.map +0 -1
  612. package/dist/branching/resolveBranch.d.ts +0 -153
  613. package/dist/branching/resolveBranch.d.ts.map +0 -1
  614. package/dist/branching/resolveBranch.js +0 -363
  615. package/dist/branching/resolveBranch.js.map +0 -1
  616. package/dist/branching/resolveBranchActionAccess.d.ts +0 -8
  617. package/dist/branching/resolveBranchActionAccess.d.ts.map +0 -1
  618. package/dist/branching/resolveBranchActionAccess.js +0 -9
  619. package/dist/branching/resolveBranchActionAccess.js.map +0 -1
  620. package/dist/branching/resolveBranchQuery.d.ts +0 -48
  621. package/dist/branching/resolveBranchQuery.d.ts.map +0 -1
  622. package/dist/branching/resolveBranchQuery.js +0 -115
  623. package/dist/branching/resolveBranchQuery.js.map +0 -1
  624. package/dist/branching/resolveBranchRowID.d.ts +0 -22
  625. package/dist/branching/resolveBranchRowID.d.ts.map +0 -1
  626. package/dist/branching/resolveBranchRowID.js +0 -70
  627. package/dist/branching/resolveBranchRowID.js.map +0 -1
  628. package/dist/branching/sanitizeBranchingConfig.d.ts +0 -31
  629. package/dist/branching/sanitizeBranchingConfig.d.ts.map +0 -1
  630. package/dist/branching/sanitizeBranchingConfig.js +0 -110
  631. package/dist/branching/sanitizeBranchingConfig.js.map +0 -1
  632. package/dist/branching/schedule/job.d.ts +0 -51
  633. package/dist/branching/schedule/job.d.ts.map +0 -1
  634. package/dist/branching/schedule/job.js +0 -151
  635. package/dist/branching/schedule/job.js.map +0 -1
  636. package/dist/branching/selectBranchChanges.d.ts +0 -8
  637. package/dist/branching/selectBranchChanges.d.ts.map +0 -1
  638. package/dist/branching/selectBranchChanges.js +0 -9
  639. package/dist/branching/selectBranchChanges.js.map +0 -1
  640. package/dist/branching/stripBranchMergeData.d.ts +0 -11
  641. package/dist/branching/stripBranchMergeData.d.ts.map +0 -1
  642. package/dist/branching/stripBranchMergeData.js +0 -20
  643. package/dist/branching/stripBranchMergeData.js.map +0 -1
  644. package/dist/branching/tombstone.d.ts +0 -91
  645. package/dist/branching/tombstone.d.ts.map +0 -1
  646. package/dist/branching/tombstone.js +0 -546
  647. package/dist/branching/tombstone.js.map +0 -1
  648. package/dist/branching/types.d.ts +0 -158
  649. package/dist/branching/types.d.ts.map +0 -1
  650. package/dist/branching/types.js +0 -54
  651. package/dist/branching/types.js.map +0 -1
  652. package/dist/branching/validation.d.ts +0 -47
  653. package/dist/branching/validation.d.ts.map +0 -1
  654. package/dist/branching/validation.js +0 -272
  655. package/dist/branching/validation.js.map +0 -1
  656. package/dist/branching/versions.d.ts +0 -131
  657. package/dist/branching/versions.d.ts.map +0 -1
  658. package/dist/branching/versions.js +0 -572
  659. package/dist/branching/versions.js.map +0 -1
  660. package/dist/collections/operations/utilities/createOperationRetryRequest.d.ts +0 -23
  661. package/dist/collections/operations/utilities/createOperationRetryRequest.d.ts.map +0 -1
  662. package/dist/collections/operations/utilities/createOperationRetryRequest.js +0 -683
  663. package/dist/collections/operations/utilities/createOperationRetryRequest.js.map +0 -1
  664. package/dist/fields/hooks/beforeValidate/throwOnAccessDenied.d.ts +0 -3
  665. package/dist/fields/hooks/beforeValidate/throwOnAccessDenied.d.ts.map +0 -1
  666. package/dist/fields/hooks/beforeValidate/throwOnAccessDenied.js +0 -3
  667. package/dist/fields/hooks/beforeValidate/throwOnAccessDenied.js.map +0 -1
  668. package/dist/uploads/appendBranchToFileURL.d.ts +0 -6
  669. package/dist/uploads/appendBranchToFileURL.d.ts.map +0 -1
  670. package/dist/uploads/appendBranchToFileURL.js +0 -24
  671. package/dist/uploads/appendBranchToFileURL.js.map +0 -1
  672. package/dist/uploads/deleteUploadFilesExclusiveToDocument.d.ts +0 -15
  673. package/dist/uploads/deleteUploadFilesExclusiveToDocument.d.ts.map +0 -1
  674. package/dist/uploads/deleteUploadFilesExclusiveToDocument.js +0 -62
  675. package/dist/uploads/deleteUploadFilesExclusiveToDocument.js.map +0 -1
  676. package/dist/uploads/fileIdentity.d.ts +0 -24
  677. package/dist/uploads/fileIdentity.d.ts.map +0 -1
  678. package/dist/uploads/fileIdentity.js +0 -36
  679. package/dist/uploads/fileIdentity.js.map +0 -1
  680. package/dist/uploads/fileQuarantine.d.ts +0 -17
  681. package/dist/uploads/fileQuarantine.d.ts.map +0 -1
  682. package/dist/uploads/fileQuarantine.js +0 -52
  683. package/dist/uploads/fileQuarantine.js.map +0 -1
  684. package/dist/uploads/linkFileWithoutOverwrite.d.ts +0 -13
  685. package/dist/uploads/linkFileWithoutOverwrite.d.ts.map +0 -1
  686. package/dist/uploads/linkFileWithoutOverwrite.js +0 -13
  687. package/dist/uploads/linkFileWithoutOverwrite.js.map +0 -1
  688. package/dist/uploads/uploadFileRollback.d.ts +0 -31
  689. package/dist/uploads/uploadFileRollback.d.ts.map +0 -1
  690. package/dist/uploads/uploadFileRollback.js +0 -269
  691. package/dist/uploads/uploadFileRollback.js.map +0 -1
  692. package/dist/utilities/extractRelationshipID.d.ts +0 -4
  693. package/dist/utilities/extractRelationshipID.d.ts.map +0 -1
  694. package/dist/utilities/extractRelationshipID.js +0 -14
  695. package/dist/utilities/extractRelationshipID.js.map +0 -1
  696. package/dist/utilities/transactionCallbacks.d.ts +0 -77
  697. package/dist/utilities/transactionCallbacks.d.ts.map +0 -1
  698. package/dist/utilities/transactionCallbacks.js +0 -299
  699. package/dist/utilities/transactionCallbacks.js.map +0 -1
  700. package/dist/utilities/transactionMutationTracker.d.ts +0 -21
  701. package/dist/utilities/transactionMutationTracker.d.ts.map +0 -1
  702. package/dist/utilities/transactionMutationTracker.js +0 -71
  703. package/dist/utilities/transactionMutationTracker.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/branching/preflight.ts"],"sourcesContent":["import type { Payload, PayloadRequest } from '../types/index.js'\nimport type { EffectiveOperation, EffectiveWrite, ResolvedChange } from './effectiveOperations.js'\n\nimport { executeAccess } from '../auth/executeAccess.js'\nimport { hasWhereAccessResult } from '../auth/types.js'\nimport { traverseForLocalizedFields } from '../utilities/traverseForLocalizedFields.js'\nimport { getLatestCollectionVersion } from '../versions/getLatestCollectionVersion.js'\nimport { getLatestGlobalVersion } from '../versions/getLatestGlobalVersion.js'\nimport {\n type BranchCreatedTarget,\n getPossibleRelationshipCollectionSlugs,\n hasBranchCreatedDocumentReference,\n hasConfiguredRelationshipValue,\n} from './assertBranchCreatedDocumentsUnreferenced.js'\nimport { checkFieldAccess } from './checkFieldAccess.js'\nimport {\n getGlobalMergeLocales,\n readBranchGlobalWrite,\n resolveGlobalMergeWrites,\n} from './globalMergeWrites.js'\nimport { readLocalizedBranchWrite } from './readLocalizedBranchWrite.js'\nimport { isolateBranchState } from './resolveBranch.js'\nimport { stripBranchMergeData, stripBranchMergeGlobalData } from './stripBranchMergeData.js'\nimport { branchChangesCollectionSlug, branchDocIDField, branchField, MAIN_BRANCH } from './types.js'\n\nexport type { EffectiveOperation }\n\nexport type BlockedChange = {\n changeID: number | string\n /** Absent for a global. */\n collectionSlug?: string\n /** Absent for a global. */\n docID?: number | string\n docTitle: string\n globalSlug?: string\n message: string\n operation: EffectiveOperation\n reason: 'access' | 'dependency'\n}\n\n/** One `(collection, operation)` pair to check, and the change that needs it. */\ntype PendingOperation = {\n collectionSlug: string\n operation: EffectiveOperation\n previousWrite?: EffectiveWrite\n resolved: ResolvedChange\n write: EffectiveWrite\n}\n\ntype ProposedWrite = {\n data?: Record<string, unknown>\n dataShape: 'flattened' | 'withLocales'\n locale?: string\n previousData?: Record<string, unknown>\n req: PayloadRequest\n}\n\ntype BranchCreateChange = {\n changeID: number | string\n} & BranchCreatedTarget\n\ntype DependencyCandidate = {\n blockedChange: BlockedChange\n dependencyChangeIDs: Set<string>\n}\n\ntype MergeDependencyPreflightResult = {\n blocked: BlockedChange[]\n dependencyChangeIDsByChangeID: Map<string, Set<string>>\n}\n\ntype RunMergeDependencyPreflightArgs = {\n availableChangeIDs?: Set<string>\n initiallyBlocked: BlockedChange[]\n payload: Payload\n pending: ResolvedChange[]\n pendingGlobals: Record<string, unknown>[]\n req: PayloadRequest\n}\n\n/**\n * Flattens resolved changes into the operations each one performs.\n *\n * A content change has one latest source-state operation. A separate Trash\n * transition can add another permission check for the same change.\n */\nconst toPendingOperations = (pending: ResolvedChange[]): PendingOperation[] =>\n pending.flatMap((resolved) =>\n resolved.writes.map((write, index) => ({\n collectionSlug: resolved.collectionSlug,\n operation: write.operation,\n previousWrite: resolved.writes[index - 1],\n resolved,\n write,\n })),\n )\n\n/**\n * Checks the merging user's production permission for every change.\n *\n * A branch is a proposal; nothing on it is real until merge, which is what\n * makes permissive branch writes safe. This is therefore the enforcement\n * boundary, not a second check layered on top of one.\n *\n * Access functions receive the exact data each effective write proposes. A\n * data-dependent result cannot be shared between documents, so each write is\n * evaluated separately.\n */\nexport const runMergePreflight = async ({\n payload,\n pending,\n req,\n}: {\n payload: Payload\n pending: ResolvedChange[]\n req: PayloadRequest\n}): Promise<BlockedChange[]> => {\n const blocked: BlockedChange[] = []\n const blockedChangeIDs = new Set<string>()\n\n for (const item of toPendingOperations(pending)) {\n const { collectionSlug, operation, resolved } = item\n const changeID = String(resolved.change.id)\n const collectionConfig = payload.collections[collectionSlug]?.config\n\n if (!collectionConfig || blockedChangeIDs.has(changeID)) {\n continue\n }\n\n // Publishing is not a distinct access type in Payload — it is `update`\n // evaluated against published data, which is how the admin UI derives\n // whether the publish button is available.\n const accessType = operation === 'publish' ? 'update' : operation\n const accessFn = collectionConfig.access?.[accessType]\n\n const deny = () => {\n if (blockedChangeIDs.has(changeID)) {\n return\n }\n\n blockedChangeIDs.add(changeID)\n blocked.push({\n changeID: resolved.change.id,\n collectionSlug,\n docID: resolved.docID,\n docTitle: String(resolved.docID),\n message: `You don't have permission to ${operation} \"${collectionSlug}\" document ${resolved.docID}.`,\n operation,\n reason: 'access',\n })\n }\n\n const proposedWrites = await getProposedWrites({\n collectionSlug,\n item,\n payload,\n req,\n })\n\n for (const proposed of proposedWrites) {\n const result = accessFn\n ? await executeAccess(\n {\n id: operation === 'create' ? undefined : resolved.docID,\n slug: collectionSlug,\n data: proposed.data,\n disableErrors: true,\n req: proposed.req,\n },\n accessFn,\n )\n : true\n\n if (!result) {\n deny()\n break\n }\n\n let currentDoc: Record<string, unknown> = {}\n\n if (operation !== 'create') {\n const where = {\n and: [\n ...(hasWhereAccessResult(result) ? [result] : []),\n { [branchField]: { equals: MAIN_BRANCH } },\n { id: { equals: resolved.docID } },\n ],\n }\n\n if (proposed.previousData) {\n currentDoc = proposed.previousData\n\n if (hasWhereAccessResult(result)) {\n if (whereReferencesBranchMetadata(result)) {\n deny()\n break\n }\n\n const precedingRowID = item.previousWrite?.data.id\n const permittedPreviousState =\n precedingRowID === undefined\n ? null\n : await payload.db.findOne({\n branch: false,\n collection: collectionSlug,\n locale: proposed.locale,\n req: proposed.req,\n where: {\n and: [\n result,\n { [branchField]: { equals: resolved.change.branch } },\n { id: { equals: precedingRowID } },\n ],\n },\n })\n\n if (!permittedPreviousState) {\n deny()\n break\n }\n }\n } else {\n const mainDoc =\n operation === 'delete'\n ? await payload.db.findOne({\n branch: false,\n collection: collectionSlug,\n locale: proposed.locale,\n req: proposed.req,\n where,\n })\n : await getLatestCollectionVersion({\n id: resolved.docID,\n config: collectionConfig,\n payload,\n query: {\n branch: false,\n collection: collectionSlug,\n locale: proposed.locale,\n where,\n },\n req: proposed.req,\n })\n\n currentDoc = mainDoc ?? {}\n\n if (hasWhereAccessResult(result) && !mainDoc) {\n deny()\n break\n }\n }\n }\n\n if (\n proposed.data &&\n operation !== 'delete' &&\n !(await checkFieldAccess({\n id: operation === 'create' ? undefined : resolved.docID,\n collection: collectionConfig,\n data: proposed.data,\n doc: currentDoc,\n global: null,\n operation: operation === 'create' ? 'create' : 'update',\n req: proposed.req,\n }))\n ) {\n deny()\n break\n }\n }\n }\n\n return blocked\n}\n\n/**\n * Returns the same logical data shapes that merge submits for one write.\n *\n * Localized updates are applied once per locale, so their access checks must\n * receive those per-locale values instead of the adapter's raw all-locale row.\n */\nconst getProposedWrites = async ({\n collectionSlug,\n item,\n payload,\n req,\n}: {\n collectionSlug: string\n item: PendingOperation\n payload: Payload\n req: PayloadRequest\n}): Promise<ProposedWrite[]> => {\n if (item.operation === 'delete') {\n return [{ dataShape: 'flattened', req }]\n }\n\n const fields = payload.collections[collectionSlug]!.config.fields\n const localeCodes = payload.config.localization\n ? traverseForLocalizedFields(fields)\n ? payload.config.localization.localeCodes\n : undefined\n : undefined\n if (!localeCodes?.length) {\n return [\n {\n data: stripBranchMergeData({ data: item.write.data, fields }),\n dataShape: 'withLocales',\n previousData: item.previousWrite\n ? stripBranchMergeData({ data: item.previousWrite.data, fields })\n : undefined,\n req,\n },\n ]\n }\n\n const proposedWrites: ProposedWrite[] = []\n\n for (const locale of localeCodes) {\n const localeReq = withLocale({ locale, req })\n const data = await readLocalizedBranchWrite({\n branch: item.resolved.change.branch as string,\n collectionSlug,\n docID: item.resolved.docID,\n draft: item.write.draft,\n locale,\n payload,\n req: localeReq,\n })\n\n if (!data) {\n continue\n }\n\n const previousData = item.previousWrite\n ? await readLocalizedBranchWrite({\n branch: item.resolved.change.branch as string,\n collectionSlug,\n docID: item.resolved.docID,\n draft: item.previousWrite.draft,\n locale,\n payload,\n req: localeReq,\n })\n : undefined\n\n proposedWrites.push({\n data: stripBranchMergeData({ data, fields }),\n dataShape: 'flattened',\n locale,\n previousData: previousData ? stripBranchMergeData({ data: previousData, fields }) : undefined,\n req: localeReq,\n })\n }\n\n return proposedWrites\n}\n\nconst withLocale = ({ locale, req }: { locale: string; req: PayloadRequest }): PayloadRequest => {\n const isolated = isolateBranchState(req)\n\n isolated.locale = locale\n\n return isolated\n}\n\n/**\n * The same enforcement boundary for globals.\n *\n * The branch copy is the exact data the merge will submit. A `Where` result is\n * applied to the current main global in the same way as an ordinary global update.\n */\nexport const runGlobalMergePreflight = async ({\n payload,\n pending,\n req,\n}: {\n payload: Payload\n pending: Record<string, unknown>[]\n req: PayloadRequest\n}): Promise<BlockedChange[]> => {\n const blocked: BlockedChange[] = []\n\n for (const change of pending) {\n const branch = change.branch as string\n const globalSlug = change.globalSlug as string\n const globalConfig = payload.globals?.config?.find((each) => each.slug === globalSlug)\n\n if (!globalConfig) {\n continue\n }\n\n const writes = await resolveGlobalMergeWrites({ branch, globalSlug, payload, req })\n const locales = getGlobalMergeLocales({ globalSlug, payload, req })\n const previousDataByLocale = new Map<string, Record<string, unknown>>()\n let hasAccess = writes.length > 0\n\n for (const write of writes) {\n for (const locale of locales) {\n const localeReq = withLocale({ locale, req })\n const storedData = await readBranchGlobalWrite({\n branch,\n draft: write.draft,\n globalSlug,\n locale,\n payload,\n req: localeReq,\n })\n\n if (!storedData) {\n hasAccess = false\n break\n }\n\n const data = stripBranchMergeGlobalData({ data: storedData, fields: globalConfig.fields })\n const result = await executeAccess(\n { slug: globalSlug, data, disableErrors: true, req: localeReq },\n globalConfig.access.update,\n )\n\n if (!result) {\n hasAccess = false\n break\n }\n\n const previousData = previousDataByLocale.get(locale)\n let currentGlobal: Record<string, unknown>\n\n if (previousData) {\n currentGlobal = previousData\n\n if (hasWhereAccessResult(result)) {\n if (whereReferencesBranchMetadata(result)) {\n hasAccess = false\n break\n }\n\n const permittedPreviousState = await payload.db.findGlobal({\n slug: globalSlug,\n branch: false,\n locale,\n req: localeReq,\n where: {\n and: [result, { [branchField]: { equals: branch } }],\n },\n })\n\n if (!permittedPreviousState || Object.keys(permittedPreviousState).length === 0) {\n hasAccess = false\n break\n }\n }\n } else {\n const { global, globalExists } = await getLatestGlobalVersion({\n slug: globalSlug,\n config: globalConfig,\n locale,\n payload,\n published: !write.draft,\n req: localeReq,\n storageWhere: { [branchField]: { equals: MAIN_BRANCH } },\n where: hasWhereAccessResult(result) ? result : undefined!,\n })\n\n currentGlobal = (global as null | Record<string, unknown>) ?? {}\n\n if (\n hasWhereAccessResult(result) &&\n globalExists &&\n Object.keys(currentGlobal).length === 0\n ) {\n hasAccess = false\n break\n }\n }\n\n if (\n !(await checkFieldAccess({\n collection: null,\n data,\n doc: currentGlobal,\n global: globalConfig,\n operation: 'update',\n req: localeReq,\n }))\n ) {\n hasAccess = false\n break\n }\n\n previousDataByLocale.set(locale, data)\n }\n\n if (!hasAccess) {\n break\n }\n }\n\n if (!hasAccess) {\n const label = typeof globalConfig.label === 'string' ? globalConfig.label : globalConfig.slug\n\n blocked.push({\n changeID: change.id as number | string,\n docTitle: label,\n globalSlug,\n message: `You do not have permission to update ${label}.`,\n operation: 'update',\n reason: 'access',\n })\n }\n }\n\n return blocked\n}\n\n/**\n * Blocks selected changes that would make main refer to content which only exists on a branch.\n *\n * Dependencies are resolved as a group. This also handles chains: if one selected create is\n * blocked, every selected change which depends on that create becomes blocked in turn.\n */\nexport const runMergeDependencyPreflight = async ({\n availableChangeIDs,\n initiallyBlocked,\n payload,\n pending,\n pendingGlobals,\n req,\n}: RunMergeDependencyPreflightArgs): Promise<BlockedChange[]> =>\n (\n await resolveMergeDependencies({\n availableChangeIDs,\n initiallyBlocked,\n payload,\n pending,\n pendingGlobals,\n req,\n })\n ).blocked\n\nexport const hasUnavailableBranchCreatedDependency = async ({\n availableChangeIDs,\n collectionSlug,\n data,\n globalSlug,\n payload,\n req,\n}: {\n availableChangeIDs?: Set<string>\n collectionSlug?: string\n data: Record<string, unknown>\n globalSlug?: string\n payload: Payload\n req: PayloadRequest\n}): Promise<boolean> => {\n const fields = collectionSlug\n ? payload.collections[collectionSlug]?.config.flattenedFields\n : payload.globals.config.find(({ slug }) => slug === globalSlug)?.flattenedFields\n\n if (!fields) {\n return false\n }\n\n if (\n !hasConfiguredRelationshipValue({\n data,\n dataShape: 'withLocales',\n fields,\n payloadBlocks: payload.blocks,\n })\n ) {\n return false\n }\n\n const collectionSlugs = getPossibleRelationshipCollectionSlugs({\n fields,\n payloadBlocks: payload.blocks,\n })\n const branchCreates = await findPendingBranchCreates({ collectionSlugs, payload, req })\n\n return branchCreates.some(\n (target) =>\n !availableChangeIDs?.has(String(target.changeID)) &&\n hasBranchCreatedDocumentReference({\n data,\n dataShape: 'withLocales',\n fields,\n payloadBlocks: payload.blocks,\n req,\n target,\n }),\n )\n}\n\nexport const resolveMergeDependencies = async ({\n availableChangeIDs,\n initiallyBlocked,\n payload,\n pending,\n pendingGlobals,\n req,\n}: RunMergeDependencyPreflightArgs): Promise<MergeDependencyPreflightResult> => {\n if (!hasPendingRelationshipValues({ payload, pending, pendingGlobals })) {\n return { blocked: [], dependencyChangeIDsByChangeID: new Map() }\n }\n\n // Deliberately spans every branch. A stored relationship can name a document\n // created on another branch, and that target is unavailable on main too.\n const collectionSlugs = getDependencyCollectionSlugs({ payload, pending, pendingGlobals })\n const branchCreates = await findPendingBranchCreates({ collectionSlugs, payload, req })\n\n if (!branchCreates.length) {\n return { blocked: [], dependencyChangeIDsByChangeID: new Map() }\n }\n\n const blockedChangeIDs = new Set(initiallyBlocked.map(({ changeID }) => String(changeID)))\n const selectedChangeIDs = new Set([\n ...(availableChangeIDs ?? []),\n ...pending.map(({ change }) => String(change.id)),\n ...pendingGlobals.map(({ id }) => String(id)),\n ])\n const candidates: DependencyCandidate[] = []\n\n for (const resolved of pending) {\n if (blockedChangeIDs.has(String(resolved.change.id))) {\n continue\n }\n\n const collectionConfig = payload.collections[resolved.collectionSlug]?.config\n\n if (!collectionConfig) {\n continue\n }\n\n const dependencyChangeIDs = new Set<string>()\n\n for (const item of toPendingOperations([resolved])) {\n if (item.operation === 'delete') {\n continue\n }\n\n const proposedWrites = await getProposedWrites({\n collectionSlug: resolved.collectionSlug,\n item,\n payload,\n req,\n })\n\n for (const proposed of proposedWrites) {\n if (!proposed.data) {\n continue\n }\n\n addReferencedBranchCreates({\n branchCreates,\n data: proposed.data,\n dataShape: proposed.dataShape,\n dependencyChangeIDs,\n fields: collectionConfig.flattenedFields,\n payload,\n req: proposed.req,\n })\n }\n }\n\n if (dependencyChangeIDs.size) {\n candidates.push({\n blockedChange: {\n changeID: resolved.change.id,\n collectionSlug: resolved.collectionSlug,\n docID: resolved.docID,\n docTitle: String(resolved.docID),\n message:\n 'This change refers to branch-created content that will not be available on main.',\n operation:\n resolved.writes.find((write) => !write.trashState)?.operation ??\n resolved.writes[0]?.operation ??\n 'update',\n reason: 'dependency',\n },\n dependencyChangeIDs,\n })\n }\n }\n\n for (const change of pendingGlobals) {\n if (blockedChangeIDs.has(String(change.id))) {\n continue\n }\n\n const branch = change.branch as string\n const globalSlug = change.globalSlug as string\n const globalConfig = payload.globals.config.find(({ slug }) => slug === globalSlug)\n\n if (!globalConfig) {\n continue\n }\n\n const dependencyChangeIDs = new Set<string>()\n const writes = await resolveGlobalMergeWrites({ branch, globalSlug, payload, req })\n const locales = getGlobalMergeLocales({ globalSlug, payload, req })\n\n for (const write of writes) {\n for (const locale of locales) {\n const localeReq = withLocale({ locale, req })\n const storedData = await readBranchGlobalWrite({\n branch,\n draft: write.draft,\n globalSlug,\n locale,\n payload,\n req: localeReq,\n })\n\n if (!storedData) {\n continue\n }\n\n addReferencedBranchCreates({\n branchCreates,\n data: stripBranchMergeGlobalData({ data: storedData, fields: globalConfig.fields }),\n dataShape: 'flattened',\n dependencyChangeIDs,\n fields: globalConfig.flattenedFields,\n payload,\n req: localeReq,\n })\n }\n }\n\n if (dependencyChangeIDs.size) {\n candidates.push({\n blockedChange: {\n changeID: change.id as number | string,\n docTitle: globalSlug,\n globalSlug,\n message:\n 'This change refers to branch-created content that will not be available on main.',\n operation: 'update',\n reason: 'dependency',\n },\n dependencyChangeIDs,\n })\n }\n }\n\n const dependencyBlocked: BlockedChange[] = []\n const dependencyChangeIDsByChangeID = new Map(\n candidates.map(({ blockedChange, dependencyChangeIDs }) => [\n String(blockedChange.changeID),\n dependencyChangeIDs,\n ]),\n )\n let hasNewlyBlockedChange = true\n\n while (hasNewlyBlockedChange) {\n hasNewlyBlockedChange = false\n\n for (const candidate of candidates) {\n const changeID = String(candidate.blockedChange.changeID)\n\n if (blockedChangeIDs.has(changeID)) {\n continue\n }\n\n const hasUnavailableDependency = [...candidate.dependencyChangeIDs].some(\n (dependencyChangeID) =>\n !selectedChangeIDs.has(dependencyChangeID) || blockedChangeIDs.has(dependencyChangeID),\n )\n\n if (hasUnavailableDependency) {\n blockedChangeIDs.add(changeID)\n dependencyBlocked.push(candidate.blockedChange)\n hasNewlyBlockedChange = true\n }\n }\n }\n\n return { blocked: dependencyBlocked, dependencyChangeIDsByChangeID }\n}\n\nconst hasPendingRelationshipValues = ({\n payload,\n pending,\n pendingGlobals,\n}: {\n payload: Payload\n pending: ResolvedChange[]\n pendingGlobals: Record<string, unknown>[]\n}): boolean => {\n if (pendingGlobals.length) {\n return true\n }\n\n return pending.some((resolved) => {\n const fields = payload.collections[resolved.collectionSlug]?.config.flattenedFields\n\n if (!fields) {\n return false\n }\n\n return resolved.writes.some(\n (write) =>\n write.operation !== 'delete' &&\n hasConfiguredRelationshipValue({\n data: write.data,\n dataShape: 'withLocales',\n fields,\n payloadBlocks: payload.blocks,\n }),\n )\n })\n}\n\nconst findPendingBranchCreates = async ({\n collectionSlugs,\n payload,\n req,\n}: {\n collectionSlugs?: Set<string>\n payload: Payload\n req: PayloadRequest\n}): Promise<BranchCreateChange[]> => {\n if (collectionSlugs?.size === 0) {\n return []\n }\n\n const pendingBranchCreates = await payload.find({\n collection: branchChangesCollectionSlug,\n depth: 0,\n limit: 0,\n overrideAccess: true,\n pagination: false,\n req,\n where: {\n and: [\n { entityType: { equals: 'collection' } },\n { operation: { equals: 'create' } },\n ...(collectionSlugs ? [{ collectionSlug: { in: [...collectionSlugs] } }] : []),\n ],\n },\n })\n\n return getBranchCreateChanges({\n changes: pendingBranchCreates.docs as Record<string, unknown>[],\n })\n}\n\nconst getDependencyCollectionSlugs = ({\n payload,\n pending,\n pendingGlobals,\n}: {\n payload: Payload\n pending: ResolvedChange[]\n pendingGlobals: Record<string, unknown>[]\n}): Set<string> | undefined => {\n const collectionSlugs = new Set<string>()\n const fieldTrees = [\n ...pending.map(\n ({ collectionSlug }) => payload.collections[collectionSlug]?.config.flattenedFields,\n ),\n ...pendingGlobals.map(\n (change) =>\n payload.globals.config.find(({ slug }) => slug === change.globalSlug)?.flattenedFields,\n ),\n ]\n\n for (const fields of fieldTrees) {\n if (!fields) {\n continue\n }\n\n const possibleCollectionSlugs = getPossibleRelationshipCollectionSlugs({\n fields,\n payloadBlocks: payload.blocks,\n })\n\n if (!possibleCollectionSlugs) {\n return undefined\n }\n\n for (const collectionSlug of possibleCollectionSlugs) {\n collectionSlugs.add(collectionSlug)\n }\n }\n\n return collectionSlugs\n}\n\nconst getBranchCreateChanges = ({\n changes,\n}: {\n changes: Record<string, unknown>[]\n}): BranchCreateChange[] =>\n changes.flatMap((change) => {\n if (change.entityType === 'global' || change.operation !== 'create') {\n return []\n }\n\n const collectionSlug = change.collectionSlug\n const docID = getChangeDocumentID({ change })\n\n if (\n typeof collectionSlug !== 'string' ||\n (typeof docID !== 'number' && typeof docID !== 'string') ||\n (typeof change.id !== 'number' && typeof change.id !== 'string')\n ) {\n return []\n }\n\n return [{ changeID: change.id, collectionSlug, docID }]\n })\n\nconst getChangeDocumentID = ({ change }: { change: Record<string, unknown> }): unknown => {\n const doc = change.doc\n\n if (doc && typeof doc === 'object' && 'value' in doc) {\n return (doc as { value: unknown }).value\n }\n\n return doc\n}\n\nconst addReferencedBranchCreates = ({\n branchCreates,\n data,\n dataShape,\n dependencyChangeIDs,\n fields,\n payload,\n req,\n}: {\n branchCreates: BranchCreateChange[]\n data: Record<string, unknown>\n dataShape: ProposedWrite['dataShape']\n dependencyChangeIDs: Set<string>\n fields: Parameters<typeof hasBranchCreatedDocumentReference>[0]['fields']\n payload: Payload\n req: PayloadRequest\n}): void => {\n for (const target of branchCreates) {\n if (\n hasBranchCreatedDocumentReference({\n data,\n dataShape,\n fields,\n payloadBlocks: payload.blocks,\n req,\n target,\n })\n ) {\n dependencyChangeIDs.add(String(target.changeID))\n }\n }\n}\n\nconst whereReferencesBranchMetadata = (value: unknown): boolean => {\n if (Array.isArray(value)) {\n return value.some(whereReferencesBranchMetadata)\n }\n\n if (!value || typeof value !== 'object') {\n return false\n }\n\n return Object.entries(value).some(\n ([key, nestedValue]) =>\n [branchDocIDField, branchField].includes(key.split('.')[0]!) ||\n whereReferencesBranchMetadata(nestedValue),\n )\n}\n"],"names":["executeAccess","hasWhereAccessResult","traverseForLocalizedFields","getLatestCollectionVersion","getLatestGlobalVersion","getPossibleRelationshipCollectionSlugs","hasBranchCreatedDocumentReference","hasConfiguredRelationshipValue","checkFieldAccess","getGlobalMergeLocales","readBranchGlobalWrite","resolveGlobalMergeWrites","readLocalizedBranchWrite","isolateBranchState","stripBranchMergeData","stripBranchMergeGlobalData","branchChangesCollectionSlug","branchDocIDField","branchField","MAIN_BRANCH","toPendingOperations","pending","flatMap","resolved","writes","map","write","index","collectionSlug","operation","previousWrite","runMergePreflight","payload","req","blocked","blockedChangeIDs","Set","item","changeID","String","change","id","collectionConfig","collections","config","has","accessType","accessFn","access","deny","add","push","docID","docTitle","message","reason","proposedWrites","getProposedWrites","proposed","result","undefined","slug","data","disableErrors","currentDoc","where","and","equals","previousData","whereReferencesBranchMetadata","precedingRowID","permittedPreviousState","db","findOne","branch","collection","locale","mainDoc","query","doc","global","dataShape","fields","localeCodes","localization","length","localeReq","withLocale","draft","isolated","runGlobalMergePreflight","globalSlug","globalConfig","globals","find","each","locales","previousDataByLocale","Map","hasAccess","storedData","update","get","currentGlobal","findGlobal","Object","keys","globalExists","published","storageWhere","set","label","runMergeDependencyPreflight","availableChangeIDs","initiallyBlocked","pendingGlobals","resolveMergeDependencies","hasUnavailableBranchCreatedDependency","flattenedFields","payloadBlocks","blocks","collectionSlugs","branchCreates","findPendingBranchCreates","some","target","hasPendingRelationshipValues","dependencyChangeIDsByChangeID","getDependencyCollectionSlugs","selectedChangeIDs","candidates","dependencyChangeIDs","addReferencedBranchCreates","size","blockedChange","trashState","dependencyBlocked","hasNewlyBlockedChange","candidate","hasUnavailableDependency","dependencyChangeID","pendingBranchCreates","depth","limit","overrideAccess","pagination","entityType","in","getBranchCreateChanges","changes","docs","fieldTrees","possibleCollectionSlugs","getChangeDocumentID","value","Array","isArray","entries","key","nestedValue","includes","split"],"mappings":"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"}
@@ -1,14 +0,0 @@
1
- import type { Payload, PayloadRequest } from '../types/index.js';
2
- type Args = {
3
- branch: string;
4
- collectionSlug: string;
5
- docID: number | string;
6
- draft: boolean;
7
- locale: string;
8
- payload: Payload;
9
- req: PayloadRequest;
10
- };
11
- /** Reads the complete stored branch state without entity read hooks or configured projections. */
12
- export declare const readLocalizedBranchWrite: ({ branch, collectionSlug, docID, draft, locale, payload, req, }: Args) => Promise<null | Record<string, unknown>>;
13
- export {};
14
- //# sourceMappingURL=readLocalizedBranchWrite.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"readLocalizedBranchWrite.d.ts","sourceRoot":"","sources":["../../src/branching/readLocalizedBranchWrite.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAA;AAQhE,KAAK,IAAI,GAAG;IACV,MAAM,EAAE,MAAM,CAAA;IACd,cAAc,EAAE,MAAM,CAAA;IACtB,KAAK,EAAE,MAAM,GAAG,MAAM,CAAA;IACtB,KAAK,EAAE,OAAO,CAAA;IACd,MAAM,EAAE,MAAM,CAAA;IACd,OAAO,EAAE,OAAO,CAAA;IAChB,GAAG,EAAE,cAAc,CAAA;CACpB,CAAA;AAED,kGAAkG;AAClG,eAAO,MAAM,wBAAwB,oEAQlC,IAAI,KAAG,OAAO,CAAC,IAAI,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAsE/C,CAAA"}
@@ -1,90 +0,0 @@
1
- import { afterRead } from '../fields/hooks/afterRead/index.js';
2
- import { hasDraftsEnabled } from '../utilities/getVersionsConfig.js';
3
- import { isolateBranchState, withoutBranch } from './resolveBranch.js';
4
- import { resolveBranchRowID } from './resolveBranchRowID.js';
5
- import { branchField } from './types.js';
6
- /** Reads the complete stored branch state without entity read hooks or configured projections. */ export const readLocalizedBranchWrite = async ({ branch, collectionSlug, docID, draft, locale, payload, req })=>{
7
- const branchReq = isolateBranchState(req);
8
- branchReq.branch = branch;
9
- branchReq.locale = locale;
10
- branchReq.context._branchBypass = false;
11
- const collectionConfig = payload.collections[collectionSlug].config;
12
- const where = {
13
- id: {
14
- equals: docID
15
- }
16
- };
17
- let storedDocument = null;
18
- if (hasDraftsEnabled(collectionConfig)) {
19
- const branchRowID = await resolveBranchRowID({
20
- id: docID,
21
- branch,
22
- collectionSlug,
23
- req: branchReq
24
- });
25
- const { docs } = await payload.db.findVersions({
26
- branch: false,
27
- collection: collectionSlug,
28
- limit: 1,
29
- locale,
30
- pagination: false,
31
- req: withoutBranch(branchReq),
32
- sort: '-updatedAt',
33
- where: {
34
- and: [
35
- {
36
- parent: {
37
- equals: branchRowID
38
- }
39
- },
40
- {
41
- [branchField]: {
42
- equals: branch
43
- }
44
- },
45
- draft ? {
46
- latest: {
47
- equals: true
48
- }
49
- } : {
50
- 'version._status': {
51
- equals: 'published'
52
- }
53
- }
54
- ]
55
- }
56
- });
57
- const storedVersion = docs[0];
58
- storedDocument = storedVersion?.version ?? null;
59
- }
60
- storedDocument ??= await payload.db.findOne({
61
- branch,
62
- collection: collectionSlug,
63
- draftsEnabled: draft,
64
- locale,
65
- req: branchReq,
66
- where
67
- });
68
- if (!storedDocument) {
69
- return null;
70
- }
71
- return afterRead({
72
- collection: collectionConfig,
73
- context: branchReq.context,
74
- depth: 0,
75
- doc: storedDocument,
76
- draft,
77
- fallbackLocale: null,
78
- global: null,
79
- locale,
80
- overrideAccess: true,
81
- req: branchReq,
82
- showHiddenFields: true,
83
- triggerAccessControl: false,
84
- triggerDefaultValue: false,
85
- triggerHooks: false,
86
- triggerPopulation: false
87
- });
88
- };
89
-
90
- //# sourceMappingURL=readLocalizedBranchWrite.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/branching/readLocalizedBranchWrite.ts"],"sourcesContent":["import type { Payload, PayloadRequest } from '../types/index.js'\n\nimport { afterRead } from '../fields/hooks/afterRead/index.js'\nimport { hasDraftsEnabled } from '../utilities/getVersionsConfig.js'\nimport { isolateBranchState, withoutBranch } from './resolveBranch.js'\nimport { resolveBranchRowID } from './resolveBranchRowID.js'\nimport { branchField } from './types.js'\n\ntype Args = {\n branch: string\n collectionSlug: string\n docID: number | string\n draft: boolean\n locale: string\n payload: Payload\n req: PayloadRequest\n}\n\n/** Reads the complete stored branch state without entity read hooks or configured projections. */\nexport const readLocalizedBranchWrite = async ({\n branch,\n collectionSlug,\n docID,\n draft,\n locale,\n payload,\n req,\n}: Args): Promise<null | Record<string, unknown>> => {\n const branchReq = isolateBranchState(req)\n\n branchReq.branch = branch\n branchReq.locale = locale\n ;(branchReq.context as Record<string, unknown>)._branchBypass = false\n\n const collectionConfig = payload.collections[collectionSlug]!.config\n const where = { id: { equals: docID } }\n\n let storedDocument: null | Record<string, unknown> = null\n\n if (hasDraftsEnabled(collectionConfig)) {\n const branchRowID = await resolveBranchRowID({\n id: docID,\n branch,\n collectionSlug,\n req: branchReq,\n })\n const { docs } = await payload.db.findVersions({\n branch: false,\n collection: collectionSlug,\n limit: 1,\n locale,\n pagination: false,\n req: withoutBranch(branchReq),\n sort: '-updatedAt',\n where: {\n and: [\n { parent: { equals: branchRowID } },\n { [branchField]: { equals: branch } },\n draft ? { latest: { equals: true } } : { 'version._status': { equals: 'published' } },\n ],\n },\n })\n const storedVersion = docs[0] as { version?: Record<string, unknown> } | undefined\n\n storedDocument = storedVersion?.version ?? null\n }\n\n storedDocument ??= (await payload.db.findOne({\n branch,\n collection: collectionSlug,\n draftsEnabled: draft,\n locale,\n req: branchReq,\n where,\n })) as null | Record<string, unknown>\n\n if (!storedDocument) {\n return null\n }\n\n return afterRead({\n collection: collectionConfig,\n context: branchReq.context,\n depth: 0,\n doc: storedDocument,\n draft,\n fallbackLocale: null,\n global: null,\n locale,\n overrideAccess: true,\n req: branchReq,\n showHiddenFields: true,\n triggerAccessControl: false,\n triggerDefaultValue: false,\n triggerHooks: false,\n triggerPopulation: false,\n })\n}\n"],"names":["afterRead","hasDraftsEnabled","isolateBranchState","withoutBranch","resolveBranchRowID","branchField","readLocalizedBranchWrite","branch","collectionSlug","docID","draft","locale","payload","req","branchReq","context","_branchBypass","collectionConfig","collections","config","where","id","equals","storedDocument","branchRowID","docs","db","findVersions","collection","limit","pagination","sort","and","parent","latest","storedVersion","version","findOne","draftsEnabled","depth","doc","fallbackLocale","global","overrideAccess","showHiddenFields","triggerAccessControl","triggerDefaultValue","triggerHooks","triggerPopulation"],"mappings":"AAEA,SAASA,SAAS,QAAQ,qCAAoC;AAC9D,SAASC,gBAAgB,QAAQ,oCAAmC;AACpE,SAASC,kBAAkB,EAAEC,aAAa,QAAQ,qBAAoB;AACtE,SAASC,kBAAkB,QAAQ,0BAAyB;AAC5D,SAASC,WAAW,QAAQ,aAAY;AAYxC,gGAAgG,GAChG,OAAO,MAAMC,2BAA2B,OAAO,EAC7CC,MAAM,EACNC,cAAc,EACdC,KAAK,EACLC,KAAK,EACLC,MAAM,EACNC,OAAO,EACPC,GAAG,EACE;IACL,MAAMC,YAAYZ,mBAAmBW;IAErCC,UAAUP,MAAM,GAAGA;IACnBO,UAAUH,MAAM,GAAGA;IACjBG,UAAUC,OAAO,CAA6BC,aAAa,GAAG;IAEhE,MAAMC,mBAAmBL,QAAQM,WAAW,CAACV,eAAe,CAAEW,MAAM;IACpE,MAAMC,QAAQ;QAAEC,IAAI;YAAEC,QAAQb;QAAM;IAAE;IAEtC,IAAIc,iBAAiD;IAErD,IAAItB,iBAAiBgB,mBAAmB;QACtC,MAAMO,cAAc,MAAMpB,mBAAmB;YAC3CiB,IAAIZ;YACJF;YACAC;YACAK,KAAKC;QACP;QACA,MAAM,EAAEW,IAAI,EAAE,GAAG,MAAMb,QAAQc,EAAE,CAACC,YAAY,CAAC;YAC7CpB,QAAQ;YACRqB,YAAYpB;YACZqB,OAAO;YACPlB;YACAmB,YAAY;YACZjB,KAAKV,cAAcW;YACnBiB,MAAM;YACNX,OAAO;gBACLY,KAAK;oBACH;wBAAEC,QAAQ;4BAAEX,QAAQE;wBAAY;oBAAE;oBAClC;wBAAE,CAACnB,YAAY,EAAE;4BAAEiB,QAAQf;wBAAO;oBAAE;oBACpCG,QAAQ;wBAAEwB,QAAQ;4BAAEZ,QAAQ;wBAAK;oBAAE,IAAI;wBAAE,mBAAmB;4BAAEA,QAAQ;wBAAY;oBAAE;iBACrF;YACH;QACF;QACA,MAAMa,gBAAgBV,IAAI,CAAC,EAAE;QAE7BF,iBAAiBY,eAAeC,WAAW;IAC7C;IAEAb,mBAAoB,MAAMX,QAAQc,EAAE,CAACW,OAAO,CAAC;QAC3C9B;QACAqB,YAAYpB;QACZ8B,eAAe5B;QACfC;QACAE,KAAKC;QACLM;IACF;IAEA,IAAI,CAACG,gBAAgB;QACnB,OAAO;IACT;IAEA,OAAOvB,UAAU;QACf4B,YAAYX;QACZF,SAASD,UAAUC,OAAO;QAC1BwB,OAAO;QACPC,KAAKjB;QACLb;QACA+B,gBAAgB;QAChBC,QAAQ;QACR/B;QACAgC,gBAAgB;QAChB9B,KAAKC;QACL8B,kBAAkB;QAClBC,sBAAsB;QACtBC,qBAAqB;QACrBC,cAAc;QACdC,mBAAmB;IACrB;AACF,EAAC"}
@@ -1,18 +0,0 @@
1
- import type { Payload, PayloadRequest } from '../types/index.js';
2
- type ReadCollectionMergeSnapshotArgs = {
3
- collectionSlug: string;
4
- docID: number | string;
5
- payload: Payload;
6
- req: PayloadRequest;
7
- };
8
- type ReadGlobalMergeSnapshotArgs = {
9
- globalSlug: string;
10
- payload: Payload;
11
- req: PayloadRequest;
12
- };
13
- /** Reads a main document for the merge ledger without invoking user read hooks or population. */
14
- export declare const readCollectionMergeSnapshot: ({ collectionSlug, docID, payload, req, }: ReadCollectionMergeSnapshotArgs) => Promise<null | Record<string, unknown>>;
15
- /** Reads a main global for the merge ledger without invoking user read hooks or population. */
16
- export declare const readGlobalMergeSnapshot: ({ globalSlug, payload, req, }: ReadGlobalMergeSnapshotArgs) => Promise<null | Record<string, unknown>>;
17
- export {};
18
- //# sourceMappingURL=readMergeSnapshot.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"readMergeSnapshot.d.ts","sourceRoot":"","sources":["../../src/branching/readMergeSnapshot.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAc,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAA;AAO5E,KAAK,+BAA+B,GAAG;IACrC,cAAc,EAAE,MAAM,CAAA;IACtB,KAAK,EAAE,MAAM,GAAG,MAAM,CAAA;IACtB,OAAO,EAAE,OAAO,CAAA;IAChB,GAAG,EAAE,cAAc,CAAA;CACpB,CAAA;AAED,KAAK,2BAA2B,GAAG;IACjC,UAAU,EAAE,MAAM,CAAA;IAClB,OAAO,EAAE,OAAO,CAAA;IAChB,GAAG,EAAE,cAAc,CAAA;CACpB,CAAA;AAED,iGAAiG;AACjG,eAAO,MAAM,2BAA2B,6CAKrC,+BAA+B,KAAG,OAAO,CAAC,IAAI,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAmC1E,CAAA;AAED,+FAA+F;AAC/F,eAAO,MAAM,uBAAuB,kCAIjC,2BAA2B,KAAG,OAAO,CAAC,IAAI,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAkCtE,CAAA"}
@@ -1,99 +0,0 @@
1
- import { executeAccess } from '../auth/executeAccess.js';
2
- import { combineQueries } from '../database/combineQueries.js';
3
- import { afterRead } from '../fields/hooks/afterRead/index.js';
4
- import { branchField, MAIN_BRANCH } from './types.js';
5
- /** Reads a main document for the merge ledger without invoking user read hooks or population. */ export const readCollectionMergeSnapshot = async ({ collectionSlug, docID, payload, req })=>{
6
- const collectionConfig = payload.collections[collectionSlug].config;
7
- const accessResult = await executeAccess({
8
- id: docID,
9
- slug: collectionSlug,
10
- disableErrors: true,
11
- req
12
- }, collectionConfig.access.read);
13
- if (!accessResult) {
14
- return null;
15
- }
16
- const storedDocument = await payload.db.findOne({
17
- branch: false,
18
- collection: collectionSlug,
19
- draftsEnabled: false,
20
- locale: req.locale,
21
- req,
22
- where: combineQueries({
23
- and: [
24
- {
25
- [branchField]: {
26
- equals: MAIN_BRANCH
27
- }
28
- },
29
- {
30
- id: {
31
- equals: docID
32
- }
33
- }
34
- ]
35
- }, accessResult)
36
- });
37
- if (!storedDocument) {
38
- return null;
39
- }
40
- return sanitizeMergeSnapshot({
41
- collection: collectionConfig,
42
- doc: storedDocument,
43
- global: null,
44
- req
45
- });
46
- };
47
- /** Reads a main global for the merge ledger without invoking user read hooks or population. */ export const readGlobalMergeSnapshot = async ({ globalSlug, payload, req })=>{
48
- const globalConfig = payload.globals?.config.find((config)=>config.slug === globalSlug);
49
- if (!globalConfig) {
50
- return null;
51
- }
52
- const accessResult = await executeAccess({
53
- slug: globalSlug,
54
- disableErrors: true,
55
- req
56
- }, globalConfig.access.read);
57
- if (!accessResult) {
58
- return null;
59
- }
60
- const storedGlobal = await payload.db.findGlobal({
61
- slug: globalSlug,
62
- branch: false,
63
- locale: req.locale,
64
- req,
65
- where: combineQueries({
66
- [branchField]: {
67
- equals: MAIN_BRANCH
68
- }
69
- }, accessResult)
70
- });
71
- if (!storedGlobal || Object.keys(storedGlobal).length === 0) {
72
- return null;
73
- }
74
- return sanitizeMergeSnapshot({
75
- collection: null,
76
- doc: storedGlobal,
77
- global: globalConfig,
78
- req
79
- });
80
- };
81
- const sanitizeMergeSnapshot = async ({ collection, doc, global, req })=>afterRead({
82
- collection,
83
- context: req.context,
84
- depth: 0,
85
- doc: doc,
86
- draft: false,
87
- fallbackLocale: req.fallbackLocale,
88
- global,
89
- locale: req.locale,
90
- overrideAccess: false,
91
- req,
92
- showHiddenFields: false,
93
- triggerAccessControl: true,
94
- triggerDefaultValue: false,
95
- triggerHooks: false,
96
- triggerPopulation: false
97
- });
98
-
99
- //# sourceMappingURL=readMergeSnapshot.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/branching/readMergeSnapshot.ts"],"sourcesContent":["import type { SanitizedCollectionConfig } from '../collections/config/types.js'\nimport type { SanitizedGlobalConfig } from '../globals/config/types.js'\nimport type { JsonObject, Payload, PayloadRequest } from '../types/index.js'\n\nimport { executeAccess } from '../auth/executeAccess.js'\nimport { combineQueries } from '../database/combineQueries.js'\nimport { afterRead } from '../fields/hooks/afterRead/index.js'\nimport { branchField, MAIN_BRANCH } from './types.js'\n\ntype ReadCollectionMergeSnapshotArgs = {\n collectionSlug: string\n docID: number | string\n payload: Payload\n req: PayloadRequest\n}\n\ntype ReadGlobalMergeSnapshotArgs = {\n globalSlug: string\n payload: Payload\n req: PayloadRequest\n}\n\n/** Reads a main document for the merge ledger without invoking user read hooks or population. */\nexport const readCollectionMergeSnapshot = async ({\n collectionSlug,\n docID,\n payload,\n req,\n}: ReadCollectionMergeSnapshotArgs): Promise<null | Record<string, unknown>> => {\n const collectionConfig = payload.collections[collectionSlug]!.config\n const accessResult = await executeAccess(\n { id: docID, slug: collectionSlug, disableErrors: true, req },\n collectionConfig.access.read,\n )\n\n if (!accessResult) {\n return null\n }\n\n const storedDocument = (await payload.db.findOne({\n branch: false,\n collection: collectionSlug,\n draftsEnabled: false,\n locale: req.locale!,\n req,\n where: combineQueries(\n {\n and: [{ [branchField]: { equals: MAIN_BRANCH } }, { id: { equals: docID } }],\n },\n accessResult,\n ),\n })) as null | Record<string, unknown>\n\n if (!storedDocument) {\n return null\n }\n\n return sanitizeMergeSnapshot({\n collection: collectionConfig,\n doc: storedDocument,\n global: null,\n req,\n })\n}\n\n/** Reads a main global for the merge ledger without invoking user read hooks or population. */\nexport const readGlobalMergeSnapshot = async ({\n globalSlug,\n payload,\n req,\n}: ReadGlobalMergeSnapshotArgs): Promise<null | Record<string, unknown>> => {\n const globalConfig = payload.globals?.config.find((config) => config.slug === globalSlug)\n\n if (!globalConfig) {\n return null\n }\n\n const accessResult = await executeAccess(\n { slug: globalSlug, disableErrors: true, req },\n globalConfig.access.read,\n )\n\n if (!accessResult) {\n return null\n }\n\n const storedGlobal = (await payload.db.findGlobal({\n slug: globalSlug,\n branch: false,\n locale: req.locale!,\n req,\n where: combineQueries({ [branchField]: { equals: MAIN_BRANCH } }, accessResult),\n })) as null | Record<string, unknown>\n\n if (!storedGlobal || Object.keys(storedGlobal).length === 0) {\n return null\n }\n\n return sanitizeMergeSnapshot({\n collection: null,\n doc: storedGlobal,\n global: globalConfig,\n req,\n })\n}\n\nconst sanitizeMergeSnapshot = async ({\n collection,\n doc,\n global,\n req,\n}: {\n collection: null | SanitizedCollectionConfig\n doc: Record<string, unknown>\n global: null | SanitizedGlobalConfig\n req: PayloadRequest\n}): Promise<Record<string, unknown>> =>\n afterRead({\n collection,\n context: req.context,\n depth: 0,\n doc: doc as JsonObject,\n draft: false,\n fallbackLocale: req.fallbackLocale!,\n global,\n locale: req.locale!,\n overrideAccess: false,\n req,\n showHiddenFields: false,\n triggerAccessControl: true,\n triggerDefaultValue: false,\n triggerHooks: false,\n triggerPopulation: false,\n })\n"],"names":["executeAccess","combineQueries","afterRead","branchField","MAIN_BRANCH","readCollectionMergeSnapshot","collectionSlug","docID","payload","req","collectionConfig","collections","config","accessResult","id","slug","disableErrors","access","read","storedDocument","db","findOne","branch","collection","draftsEnabled","locale","where","and","equals","sanitizeMergeSnapshot","doc","global","readGlobalMergeSnapshot","globalSlug","globalConfig","globals","find","storedGlobal","findGlobal","Object","keys","length","context","depth","draft","fallbackLocale","overrideAccess","showHiddenFields","triggerAccessControl","triggerDefaultValue","triggerHooks","triggerPopulation"],"mappings":"AAIA,SAASA,aAAa,QAAQ,2BAA0B;AACxD,SAASC,cAAc,QAAQ,gCAA+B;AAC9D,SAASC,SAAS,QAAQ,qCAAoC;AAC9D,SAASC,WAAW,EAAEC,WAAW,QAAQ,aAAY;AAerD,+FAA+F,GAC/F,OAAO,MAAMC,8BAA8B,OAAO,EAChDC,cAAc,EACdC,KAAK,EACLC,OAAO,EACPC,GAAG,EAC6B;IAChC,MAAMC,mBAAmBF,QAAQG,WAAW,CAACL,eAAe,CAAEM,MAAM;IACpE,MAAMC,eAAe,MAAMb,cACzB;QAAEc,IAAIP;QAAOQ,MAAMT;QAAgBU,eAAe;QAAMP;IAAI,GAC5DC,iBAAiBO,MAAM,CAACC,IAAI;IAG9B,IAAI,CAACL,cAAc;QACjB,OAAO;IACT;IAEA,MAAMM,iBAAkB,MAAMX,QAAQY,EAAE,CAACC,OAAO,CAAC;QAC/CC,QAAQ;QACRC,YAAYjB;QACZkB,eAAe;QACfC,QAAQhB,IAAIgB,MAAM;QAClBhB;QACAiB,OAAOzB,eACL;YACE0B,KAAK;gBAAC;oBAAE,CAACxB,YAAY,EAAE;wBAAEyB,QAAQxB;oBAAY;gBAAE;gBAAG;oBAAEU,IAAI;wBAAEc,QAAQrB;oBAAM;gBAAE;aAAE;QAC9E,GACAM;IAEJ;IAEA,IAAI,CAACM,gBAAgB;QACnB,OAAO;IACT;IAEA,OAAOU,sBAAsB;QAC3BN,YAAYb;QACZoB,KAAKX;QACLY,QAAQ;QACRtB;IACF;AACF,EAAC;AAED,6FAA6F,GAC7F,OAAO,MAAMuB,0BAA0B,OAAO,EAC5CC,UAAU,EACVzB,OAAO,EACPC,GAAG,EACyB;IAC5B,MAAMyB,eAAe1B,QAAQ2B,OAAO,EAAEvB,OAAOwB,KAAK,CAACxB,SAAWA,OAAOG,IAAI,KAAKkB;IAE9E,IAAI,CAACC,cAAc;QACjB,OAAO;IACT;IAEA,MAAMrB,eAAe,MAAMb,cACzB;QAAEe,MAAMkB;QAAYjB,eAAe;QAAMP;IAAI,GAC7CyB,aAAajB,MAAM,CAACC,IAAI;IAG1B,IAAI,CAACL,cAAc;QACjB,OAAO;IACT;IAEA,MAAMwB,eAAgB,MAAM7B,QAAQY,EAAE,CAACkB,UAAU,CAAC;QAChDvB,MAAMkB;QACNX,QAAQ;QACRG,QAAQhB,IAAIgB,MAAM;QAClBhB;QACAiB,OAAOzB,eAAe;YAAE,CAACE,YAAY,EAAE;gBAAEyB,QAAQxB;YAAY;QAAE,GAAGS;IACpE;IAEA,IAAI,CAACwB,gBAAgBE,OAAOC,IAAI,CAACH,cAAcI,MAAM,KAAK,GAAG;QAC3D,OAAO;IACT;IAEA,OAAOZ,sBAAsB;QAC3BN,YAAY;QACZO,KAAKO;QACLN,QAAQG;QACRzB;IACF;AACF,EAAC;AAED,MAAMoB,wBAAwB,OAAO,EACnCN,UAAU,EACVO,GAAG,EACHC,MAAM,EACNtB,GAAG,EAMJ,GACCP,UAAU;QACRqB;QACAmB,SAASjC,IAAIiC,OAAO;QACpBC,OAAO;QACPb,KAAKA;QACLc,OAAO;QACPC,gBAAgBpC,IAAIoC,cAAc;QAClCd;QACAN,QAAQhB,IAAIgB,MAAM;QAClBqB,gBAAgB;QAChBrC;QACAsC,kBAAkB;QAClBC,sBAAsB;QACtBC,qBAAqB;QACrBC,cAAc;QACdC,mBAAmB;IACrB"}
@@ -1,153 +0,0 @@
1
- import type { PayloadRequest } from '../types/index.js';
2
- import type { BranchOperation } from './types.js';
3
- /**
4
- * Resolves the active branch for a request.
5
- *
6
- * The branch is an argument, exactly like `locale` and `depth`: it is whatever
7
- * the caller passed, and `main` when they passed nothing. Nothing is read from
8
- * storage here — no preference lookup, no cookie — so an unbranched request
9
- * costs nothing beyond this function.
10
- *
11
- * Where the admin UI's persisted selection turns into that argument is the
12
- * admin UI's business (`initAdminContext`), the same division `locale` already uses.
13
- *
14
- * Precedence, highest first:
15
- * 1. explicit Local API argument (`req.branch`, set by the caller)
16
- * 2. `branch` query param
17
- * 3. `main`
18
- */
19
- export declare const resolveBranch: (req: PayloadRequest) => string;
20
- /**
21
- * Loads every change the active branch has made, in one query, and groups it
22
- * by collection in memory.
23
- *
24
- * One query per request rather than per collection: a request touching a dozen
25
- * collections still issues a single manifest read. Bounded by branch size, not
26
- * table size.
27
- */
28
- export declare const loadBranchManifest: (req: PayloadRequest) => Promise<Map<string, (number | string)[]>>;
29
- /**
30
- * Canonical IDs the active branch has tombstoned, keyed by collection slug.
31
- *
32
- * Version and collection queries both exclude these documents by canonical
33
- * identity from the authoritative change manifest.
34
- *
35
- * Loaded from the same manifest query, so asking for this costs nothing beyond
36
- * the read the request already made.
37
- */
38
- export declare const loadBranchDeletions: (req: PayloadRequest) => Promise<Map<string, (number | string)[]>>;
39
- export declare const loadBranchOperation: ({ collectionSlug, docID, req, }: {
40
- collectionSlug: string;
41
- docID: number | string;
42
- req: PayloadRequest;
43
- }) => Promise<BranchOperation | undefined>;
44
- /**
45
- * A copy of the request that can resolve a branch of its own.
46
- *
47
- * The resolved branch and its manifest are memoized on `req.context`, so one
48
- * request reads one branch — an explicit `branch` argument passed alongside a
49
- * request that has already resolved a different one is otherwise accepted and
50
- * ignored. Reading the same document on two branches, as a diff does, therefore
51
- * needs a request per branch.
52
- *
53
- * The copy carries the transaction, the user and the locale, so it is the same
54
- * request in every respect but the branch. Its dataloader is its own, because
55
- * the dataloader's cache key does not include the branch and would otherwise
56
- * serve one branch's document to the other.
57
- */
58
- export declare const isolateBranchState: (req: PayloadRequest) => PayloadRequest;
59
- /**
60
- * The branch's own row, read once per request.
61
- *
62
- * Three separate checks want it — whether the branch is closed, whether a merged branch
63
- * should reopen, and whether the caller may see it at all — and each used to read it
64
- * again. This is the trusted read (`overrideAccess: true`), so it deliberately does *not*
65
- * serve the access-checked visibility gate: a row fetched without access control must
66
- * never stand in for one fetched with it.
67
- */
68
- export declare const loadBranchRow: ({ branch, req, }: {
69
- branch: string;
70
- req: PayloadRequest;
71
- }) => Promise<null | Record<string, unknown>>;
72
- /** Replaces the memoized branch row after something changed it. */
73
- export declare const setBranchRow: ({ branch, req, row, }: {
74
- branch: string;
75
- req: PayloadRequest;
76
- row: null | Record<string, unknown>;
77
- }) => void;
78
- /**
79
- * Records a newly forked document in the memoized manifest.
80
- *
81
- * Cheaper than dropping the manifest and reloading it, which is what a fork used to do:
82
- * the manifest needs to know the branch now shadows this document, and that is one ID —
83
- * not a reason to re-read every change row on the branch. Reads later in the same request
84
- * then exclude main's copy without a second query.
85
- */
86
- export declare const addToBranchManifest: ({ collectionSlug, docID, operation, req, }: {
87
- collectionSlug: string;
88
- docID: number | string;
89
- operation: BranchOperation;
90
- req: PayloadRequest;
91
- }) => void;
92
- /** The shadow row ID this request has already resolved for a canonical ID, if any. */
93
- export declare const peekBranchRowID: ({ collectionSlug, docID, req, }: {
94
- collectionSlug: string;
95
- docID: number | string;
96
- req?: Partial<PayloadRequest>;
97
- }) => number | string | undefined;
98
- /** Remembers a canonical ID's shadow row, so the next write does not look it up again. */
99
- export declare const rememberBranchRowID: ({ collectionSlug, docID, req, rowID, }: {
100
- collectionSlug: string;
101
- docID: number | string;
102
- req?: Partial<PayloadRequest>;
103
- rowID: number | string;
104
- }) => void;
105
- /**
106
- * The same request with branch resolution switched off.
107
- *
108
- * For the engines that write to `main` on a branch's behalf — merge and discard. They
109
- * address shadow rows by their real primary keys and write production, so every write
110
- * they make must bypass branch resolution. Passing `branch: false` per call is one
111
- * omission away from a silent no-op: the merge-create promotion goes through
112
- * `updateByIDOperation`, which takes no `branch` argument at all and reads the request,
113
- * so a merge triggered over HTTP with `?branch=` resolved that write against the branch
114
- * it was merging.
115
- *
116
- * Isolated rather than mutated, because the caller's request keeps its own branch — the
117
- * HTTP handler still has a response to render on it.
118
- */
119
- export declare const withoutBranch: (req: PayloadRequest) => PayloadRequest;
120
- /**
121
- * The branch this request has already resolved, or `undefined` if it has not.
122
- *
123
- * Deliberately does not resolve: callers use this to find out whether they are about to
124
- * *change* the branch, and resolving here would create the state they are checking for.
125
- */
126
- export declare const peekResolvedBranch: (req?: Partial<PayloadRequest>) => string | undefined;
127
- /** Clears memoized branch state, for tests and for cross-branch reads. */
128
- export declare const resetBranchState: (req: PayloadRequest) => void;
129
- /** Clears memoized branch and document state after a write changes what this request can read. */
130
- export declare const refreshBranchState: (req: PayloadRequest) => void;
131
- /** Clears documents cached while populating relationships on this request. */
132
- export declare const refreshRequestDataLoader: (req: PayloadRequest) => void;
133
- /**
134
- * The manifest already loaded for this request, without loading it.
135
- *
136
- * For synchronous callers such as join query builders, which run after the
137
- * top-level read has resolved the branch and populated the manifest.
138
- */
139
- export declare const peekBranchManifest: (req: PayloadRequest) => Map<string, (number | string)[]>;
140
- /**
141
- * The branch deletions already loaded for this request, without loading them.
142
- *
143
- * Version join builders are synchronous. They run after the top-level branch query has loaded the
144
- * manifest, which also records deletions, so they can reuse that state without another query.
145
- */
146
- export declare const peekBranchDeletions: (req: PayloadRequest) => Map<string, (number | string)[]>;
147
- /** The authoritative operation for one collection document in the loaded change manifest. */
148
- export declare const peekBranchOperation: ({ collectionSlug, docID, req, }: {
149
- collectionSlug: string;
150
- docID: number | string;
151
- req?: Partial<PayloadRequest>;
152
- }) => BranchOperation | undefined;
153
- //# sourceMappingURL=resolveBranch.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"resolveBranch.d.ts","sourceRoot":"","sources":["../../src/branching/resolveBranch.ts"],"names":[],"mappings":"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"}