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,10 +1,5 @@
1
1
  import { executeAccess } from '../../auth/executeAccess.js';
2
2
  import { hasWhereAccessResult } from '../../auth/types.js';
3
- import { retryConcurrentShadowOperation } from '../../branching/createShadowRow.js';
4
- import { forkDocument } from '../../branching/forkDocument.js';
5
- import { assertBranchMergeValidationWriteAllowed } from '../../branching/mergeWriteGuard.js';
6
- import { refreshRequestDataLoader, resetBranchState, resolveBranch } from '../../branching/resolveBranch.js';
7
- import { branchField, MAIN_BRANCH } from '../../branching/types.js';
8
3
  import { combineQueries } from '../../database/combineQueries.js';
9
4
  import { APIError, Forbidden, NotFound } from '../../errors/index.js';
10
5
  import { deepCopyObjectSimple } from '../../index.js';
@@ -14,141 +9,31 @@ import { withLegacyCloudUploadFileData } from '../../uploads/fileVersioning/stor
14
9
  import { generateFileData } from '../../uploads/generateFileData.js';
15
10
  import { getLocalizedUploadProperties, getUploadDestination, mergeUploadDataWithDocument, sanitizeUploadData } from '../../uploads/sanitizeUploadData.js';
16
11
  import { unlinkTempFiles } from '../../uploads/unlinkTempFiles.js';
17
- import { cleanupUploadFileRollbacks, rollbackUploadFiles } from '../../uploads/uploadFileRollback.js';
18
12
  import { appendNonTrashedFilter } from '../../utilities/appendNonTrashedFilter.js';
19
13
  import { assertNoValidationWrite } from '../../utilities/assertNoValidationWrite.js';
20
- import { commitTransaction, shouldRollbackTransactionArtifacts } from '../../utilities/commitTransaction.js';
14
+ import { commitTransaction } from '../../utilities/commitTransaction.js';
21
15
  import { hasLocalizeStatusEnabled } from '../../utilities/getVersionsConfig.js';
22
16
  import { httpStatus } from '../../utilities/httpStatus.js';
23
17
  import { initTransaction } from '../../utilities/initTransaction.js';
24
18
  import { killTransaction } from '../../utilities/killTransaction.js';
25
19
  import { resolveSelect } from '../../utilities/resolveSelect.js';
26
20
  import { sanitizeSelect } from '../../utilities/sanitizeSelect.js';
27
- import { beginDeferredCleanupScope, clearDeferredCleanupScope, flushDeferredCleanupScopeAfterOperation, hasActiveDeferredCleanupScope } from '../../utilities/transactionCallbacks.js';
28
21
  import { getAllLocalesPublicationStatus, normalizeAllLocalesPublicationStatus, reconcileAllLocalesPublicationStatus, validateAllLocalesPublicationFlags } from '../../versions/allLocalesPublicationStatus.js';
29
22
  import { getLatestCollectionVersion } from '../../versions/getLatestCollectionVersion.js';
30
23
  import { buildAfterOperation } from './utilities/buildAfterOperation.js';
31
24
  import { buildBeforeOperation } from './utilities/buildBeforeOperation.js';
32
- import { commitOperationRetryRequestContext, createOperationRetryRequest, shouldRetryOperationRequest } from './utilities/createOperationRetryRequest.js';
33
25
  import { updateDocument } from './utilities/update.js';
34
- export const branchMergeUploadDataContextKey = Symbol('branchMergeUploadData');
35
- export const updateByIDOperation = (incomingArgs)=>updateByIDOperationWithLifecycle({
36
- incomingArgs,
37
- lifecycleOperation: 'update'
38
- });
39
- /**
40
- * Promotes a branch-created row while applying create access and lifecycle hooks.
41
- * This module is not a package export; external callers use `updateByIDOperation`.
42
- *
43
- * @internal
44
- */ export const updateByIDOperationForBranchMerge = (incomingArgs)=>updateByIDOperationWithLifecycle({
45
- incomingArgs,
46
- lifecycleOperation: 'create',
47
- trustedUploadData: incomingArgs.data
48
- });
49
- const updateByIDOperationWithLifecycle = async ({ incomingArgs, lifecycleOperation, trustedUploadData })=>{
50
- assertNoValidationWrite(incomingArgs.req);
51
- const reqContext = incomingArgs.req.context;
52
- const pendingBranchMergeUploadData = reqContext?.[branchMergeUploadDataContextKey];
53
- let branchMergeUploadDataToTrust = trustedUploadData === undefined ? undefined : {
54
- id: incomingArgs.id,
55
- collectionSlug: incomingArgs.collection.config.slug,
56
- data: trustedUploadData
57
- };
58
- if (pendingBranchMergeUploadData?.collectionSlug === incomingArgs.collection.config.slug && pendingBranchMergeUploadData.id === incomingArgs.id) {
59
- branchMergeUploadDataToTrust ??= pendingBranchMergeUploadData;
60
- delete reqContext[branchMergeUploadDataContextKey];
61
- }
62
- const hasCallerTransaction = Boolean(await incomingArgs.req.transactionID);
63
- const pristineData = deepCopyObjectSimple(incomingArgs.data);
64
- const shouldIsolateTempFile = Boolean(!hasCallerTransaction && incomingArgs.req.file?.tempFilePath && (incomingArgs.req.payload.config.upload?.useTempFiles || incomingArgs.req.file.uploadReference || incomingArgs.req.context?._payloadClientUploadTempFile));
65
- let didOwnAttemptTransaction = false;
66
- let didReachFinalCommit = false;
67
- let isRetrySafe = false;
68
- try {
69
- return await retryConcurrentShadowOperation({
70
- operation: async ()=>{
71
- didOwnAttemptTransaction = false;
72
- didReachFinalCommit = false;
73
- isRetrySafe = false;
74
- const shouldReuseParentRequest = incomingArgs.disableTransaction && hasActiveDeferredCleanupScope({
75
- req: incomingArgs.req
76
- });
77
- const retryRequest = hasCallerTransaction || shouldReuseParentRequest ? undefined : await createOperationRetryRequest({
78
- copyFileTempPath: shouldIsolateTempFile,
79
- req: incomingArgs.req
80
- });
81
- isRetrySafe = retryRequest?.isRetrySafe ?? false;
82
- const attemptArgs = retryRequest ? {
83
- ...incomingArgs,
84
- data: deepCopyObjectSimple(pristineData),
85
- req: retryRequest.req
86
- } : incomingArgs;
87
- const result = await updateByIDOperationWithLifecycleAttempt({
88
- branchMergeUploadDataToTrust,
89
- hasCallerTransaction,
90
- incomingArgs: attemptArgs,
91
- lifecycleOperation,
92
- reportFinalCommit: ()=>{
93
- didReachFinalCommit = true;
94
- },
95
- reportTransactionOwnership: ({ isOperationTransaction })=>{
96
- didOwnAttemptTransaction = isOperationTransaction;
97
- }
98
- });
99
- if (retryRequest?.isRetrySafe) {
100
- commitOperationRetryRequestContext({
101
- req: attemptArgs.req
102
- });
103
- }
104
- return result;
105
- },
106
- shouldRetry: ({ error })=>shouldRetryOperationRequest({
107
- didOwnAttemptTransaction,
108
- didReachFinalCommit,
109
- error,
110
- hasCallerTransaction,
111
- isRetrySafe
112
- })
113
- });
114
- } finally{
115
- if (shouldIsolateTempFile) {
116
- await unlinkTempFiles({
117
- collectionConfig: incomingArgs.collection.config,
118
- config: incomingArgs.req.payload.config,
119
- req: incomingArgs.req
120
- }).catch((unlinkError)=>{
121
- incomingArgs.req.payload.logger.error({
122
- err: unlinkError,
123
- msg: 'Failed to remove temp file'
124
- });
125
- });
126
- }
127
- }
128
- };
129
- const updateByIDOperationWithLifecycleAttempt = async ({ branchMergeUploadDataToTrust, hasCallerTransaction, incomingArgs, lifecycleOperation, reportFinalCommit, reportTransactionOwnership })=>{
26
+ export const updateByIDOperation = async (incomingArgs)=>{
130
27
  let args = incomingArgs;
131
- let cleanupScope = null;
132
- let didResolveBranchFork = false;
133
- let shouldCommit = false;
134
- const uploadFileRollbacks = new Map();
135
28
  const hasFileOperationScope = Boolean(args.collection.config.upload);
136
- assertBranchMergeValidationWriteAllowed({
137
- req: args.req
138
- });
139
29
  if (hasFileOperationScope) {
140
30
  beginFileOperationScope({
141
31
  req: args.req
142
32
  });
143
33
  }
34
+ assertNoValidationWrite(args.req);
144
35
  try {
145
- shouldCommit = !args.disableTransaction && await initTransaction(args.req);
146
- reportTransactionOwnership({
147
- isOperationTransaction: shouldCommit
148
- });
149
- cleanupScope = await beginDeferredCleanupScope({
150
- req: args.req
151
- });
36
+ const shouldCommit = !args.disableTransaction && await initTransaction(args.req);
152
37
  if (args.collection.config.upload && !args.overrideAccess) {
153
38
  const { objectKey, prefix } = getUploadDestination({
154
39
  data: args.data,
@@ -191,7 +76,7 @@ const updateByIDOperationWithLifecycleAttempt = async ({ branchMergeUploadDataTo
191
76
  operation: 'update',
192
77
  overrideAccess: args.overrideAccess
193
78
  });
194
- const { id, autosave = false, branchMergeStorageReq, collection: { config: collectionConfig }, collection, depth, draft: draftArg = false, overrideAccess, overrideLock, overwriteExistingFiles = false, populate, publishAllLocales: publishAllLocalesArg, req: { fallbackLocale, locale, payload: { config }, payload }, req, select: incomingSelect, showHiddenFields, trash = false, unpublishAllLocales: unpublishAllLocalesArg } = args;
79
+ const { id, autosave = false, collection: { config: collectionConfig }, collection, depth, draft: draftArg = false, overrideAccess, overrideLock, overwriteExistingFiles = false, populate, publishAllLocales: publishAllLocalesArg, req: { fallbackLocale, locale, payload: { config }, payload }, req, select: incomingSelect, showHiddenFields, trash = false, unpublishAllLocales: unpublishAllLocalesArg } = args;
195
80
  if (!id) {
196
81
  throw new APIError('Missing ID of document to update.', httpStatus.BAD_REQUEST);
197
82
  }
@@ -213,44 +98,63 @@ const updateByIDOperationWithLifecycleAttempt = async ({ branchMergeUploadDataTo
213
98
  const publicationIntentSurvivedBeforeOperation = !requestedAllLocalesPublicationStatus || Boolean(allLocalesPublicationStatus);
214
99
  const publishAllLocales = publicationIntentSurvivedBeforeOperation ? publishAllLocalesArg : false;
215
100
  const unpublishAllLocales = publicationIntentSurvivedBeforeOperation ? unpublishAllLocalesArg : false;
216
- const authorizedDocument = await readAuthorizedUpdateDocument({
101
+ // /////////////////////////////////////
102
+ // Access
103
+ // /////////////////////////////////////
104
+ const accessResults = !overrideAccess ? await executeAccess({
217
105
  id,
218
- collectionConfig,
106
+ slug: collectionConfig.slug,
219
107
  data,
220
- lifecycleOperation,
108
+ req
109
+ }, collectionConfig.access.update) : true;
110
+ const hasWherePolicy = hasWhereAccessResult(accessResults);
111
+ // /////////////////////////////////////
112
+ // Retrieve document
113
+ // /////////////////////////////////////
114
+ const where = {
115
+ id: {
116
+ equals: id
117
+ }
118
+ };
119
+ let fullWhere = combineQueries(where, accessResults);
120
+ const isTrashAttempt = collectionConfig.trash && typeof data === 'object' && data !== null && 'deletedAt' in data && data.deletedAt != null;
121
+ if (isTrashAttempt && !overrideAccess) {
122
+ // Pass data so access function can check data.deletedAt to know it's a trash attempt
123
+ const deleteAccessResult = await executeAccess({
124
+ id,
125
+ slug: collectionConfig.slug,
126
+ data,
127
+ req
128
+ }, collectionConfig.access.delete);
129
+ fullWhere = combineQueries(fullWhere, deleteAccessResult);
130
+ }
131
+ // Exclude trashed documents when trash: false
132
+ fullWhere = appendNonTrashedFilter({
133
+ enableTrash: collectionConfig.trash,
134
+ trash,
135
+ where: fullWhere
136
+ });
137
+ const findOneArgs = {
138
+ collection: collectionConfig.slug,
221
139
  locale: locale,
222
- overrideAccess: overrideAccess,
223
140
  req,
224
- storageReq: branchMergeStorageReq,
225
- trash
141
+ where: fullWhere
142
+ };
143
+ let docWithLocales = await getLatestCollectionVersion({
144
+ id,
145
+ config: collectionConfig,
146
+ payload,
147
+ query: findOneArgs,
148
+ req
226
149
  });
227
- let { docWithLocales } = authorizedDocument;
228
- const branch = resolveBranch(req);
229
- const isBranchingDocument = branch !== MAIN_BRANCH && req.payload.config.branching?.branchableCollections.has(collectionConfig.slug);
230
- if (isBranchingDocument) {
231
- const isExistingBranchDocument = docWithLocales[branchField] === branch;
232
- if (hasCallerTransaction && !isExistingBranchDocument) {
233
- throw new APIError('Cannot update an untouched branch document within an existing transaction.', httpStatus.CONFLICT);
234
- }
235
- await forkDocument({
236
- id,
237
- collectionSlug: collectionConfig.slug,
238
- req,
239
- // Without an operation-owned transaction, retain the isolated race-recovery path. An
240
- // adapter with transactions disabled or unavailable cannot roll back a later hook failure.
241
- useAmbientTransaction: shouldCommit
242
- });
243
- didResolveBranchFork = true;
244
- if (!isExistingBranchDocument) {
245
- docWithLocales = await readUpdateDocument({
246
- id,
247
- collectionConfig,
248
- hasWherePolicy: authorizedDocument.hasWherePolicy,
249
- locale: locale,
250
- req,
251
- where: authorizedDocument.where
252
- });
253
- }
150
+ if (!docWithLocales && !hasWherePolicy) {
151
+ throw new NotFound(req.t);
152
+ }
153
+ if (!docWithLocales && hasWherePolicy) {
154
+ throw new Forbidden(req.t);
155
+ }
156
+ if (!docWithLocales) {
157
+ throw new NotFound(req.t);
254
158
  }
255
159
  const storedDocWithLocales = docWithLocales;
256
160
  if (collectionConfig.upload.fileOperations) {
@@ -261,8 +165,7 @@ const updateByIDOperationWithLifecycleAttempt = async ({ branchMergeUploadDataTo
261
165
  });
262
166
  }
263
167
  if (collectionConfig.upload && !overrideAccess) {
264
- const trustedUploadDataForDocument = branchMergeUploadDataToTrust?.collectionSlug === collectionConfig.slug && branchMergeUploadDataToTrust.id === id ? branchMergeUploadDataToTrust.data : docWithLocales;
265
- data = mergeUploadDataWithDocument(data, trustedUploadDataForDocument, {
168
+ data = mergeUploadDataWithDocument(data, docWithLocales, {
266
169
  locale: locale === 'all' || !locale ? config.localization ? config.localization.defaultLocale : undefined : locale,
267
170
  localizedProperties: getLocalizedUploadProperties(collectionConfig.flattenedFields)
268
171
  });
@@ -298,14 +201,12 @@ const updateByIDOperationWithLifecycleAttempt = async ({ branchMergeUploadDataTo
298
201
  collectionConfig,
299
202
  config,
300
203
  data: deepCopyObjectSimple(newFileData),
301
- databaseReq: branchMergeStorageReq,
302
204
  depth: depth,
303
205
  docWithLocales,
304
206
  draftArg,
305
207
  fallbackLocale: fallbackLocale,
306
208
  filesToUpload,
307
209
  locale: locale,
308
- operation: lifecycleOperation,
309
210
  overrideAccess: overrideAccess,
310
211
  overrideLock: overrideLock,
311
212
  payload,
@@ -315,8 +216,7 @@ const updateByIDOperationWithLifecycleAttempt = async ({ branchMergeUploadDataTo
315
216
  select: select,
316
217
  shouldManageLocalFiles: true,
317
218
  showHiddenFields: showHiddenFields,
318
- unpublishAllLocales,
319
- uploadFileRollbacks: shouldCommit && collectionConfig.upload && !collectionConfig.upload.disableLocalStorage ? uploadFileRollbacks : undefined
219
+ unpublishAllLocales
320
220
  };
321
221
  const write = ()=>updateDocument(updateArgs);
322
222
  let result = collectionConfig.upload.fileOperations ? await runCloudFileUpdate({
@@ -360,26 +260,8 @@ const updateByIDOperationWithLifecycleAttempt = async ({ branchMergeUploadDataTo
360
260
  // /////////////////////////////////////
361
261
  // Return results
362
262
  // /////////////////////////////////////
363
- if (cleanupScope) {
364
- await flushDeferredCleanupScopeAfterOperation({
365
- req,
366
- scope: cleanupScope
367
- });
368
- }
369
263
  if (shouldCommit) {
370
- reportFinalCommit();
371
264
  await commitTransaction(req);
372
- await cleanupUploadFileRollbacks({
373
- rollbacks: uploadFileRollbacks
374
- }).catch((error)=>{
375
- args.req.payload.logger.error({
376
- err: error,
377
- msg: 'Failed to remove an upload rollback backup after committing its database write.'
378
- });
379
- });
380
- }
381
- if (isBranchingDocument) {
382
- refreshRequestDataLoader(req);
383
265
  }
384
266
  if (hasFileOperationScope) {
385
267
  await completeFileOperationScope({
@@ -388,15 +270,6 @@ const updateByIDOperationWithLifecycleAttempt = async ({ branchMergeUploadDataTo
388
270
  }
389
271
  return result;
390
272
  } catch (error) {
391
- const shouldRollbackArtifacts = shouldRollbackTransactionArtifacts({
392
- error
393
- });
394
- if (cleanupScope) {
395
- clearDeferredCleanupScope({
396
- req: args.req,
397
- scope: cleanupScope
398
- });
399
- }
400
273
  await unlinkTempFiles({
401
274
  collectionConfig: args.collection.config,
402
275
  config: args.req.payload.config,
@@ -407,17 +280,7 @@ const updateByIDOperationWithLifecycleAttempt = async ({ branchMergeUploadDataTo
407
280
  msg: 'Failed to remove temp file'
408
281
  });
409
282
  });
410
- if (shouldCommit) {
411
- await killTransaction(args.req);
412
- if (didResolveBranchFork) {
413
- resetBranchState(args.req);
414
- }
415
- if (shouldRollbackArtifacts) {
416
- await rollbackUploadFiles({
417
- rollbacks: uploadFileRollbacks
418
- });
419
- }
420
- }
283
+ await killTransaction(args.req);
421
284
  if (hasFileOperationScope) {
422
285
  await abortFileOperationScope({
423
286
  req: args.req
@@ -426,73 +289,5 @@ const updateByIDOperationWithLifecycleAttempt = async ({ branchMergeUploadDataTo
426
289
  throw error;
427
290
  }
428
291
  };
429
- const readAuthorizedUpdateDocument = async ({ id, collectionConfig, data, lifecycleOperation, locale, overrideAccess, req, storageReq, trash })=>{
430
- if (!id) {
431
- throw new APIError('Missing ID of document to update.', httpStatus.BAD_REQUEST);
432
- }
433
- const accessResults = !overrideAccess ? await executeAccess({
434
- id: lifecycleOperation === 'create' ? undefined : id,
435
- slug: collectionConfig.slug,
436
- data,
437
- req
438
- }, collectionConfig.access[lifecycleOperation]) : true;
439
- const hasWherePolicy = lifecycleOperation !== 'create' && hasWhereAccessResult(accessResults);
440
- const where = {
441
- id: {
442
- equals: id
443
- }
444
- };
445
- let fullWhere = hasWherePolicy ? combineQueries(where, accessResults) : where;
446
- const isTrashAttempt = collectionConfig.trash && typeof data === 'object' && data !== null && 'deletedAt' in data && data.deletedAt != null;
447
- if (isTrashAttempt && !overrideAccess) {
448
- const deleteAccessResult = await executeAccess({
449
- id,
450
- slug: collectionConfig.slug,
451
- data,
452
- req
453
- }, collectionConfig.access.delete);
454
- fullWhere = combineQueries(fullWhere, deleteAccessResult);
455
- }
456
- fullWhere = appendNonTrashedFilter({
457
- enableTrash: collectionConfig.trash,
458
- trash,
459
- where: fullWhere
460
- });
461
- const docWithLocales = await readUpdateDocument({
462
- id,
463
- collectionConfig,
464
- hasWherePolicy,
465
- locale,
466
- req: storageReq ?? req,
467
- where: fullWhere
468
- });
469
- return {
470
- docWithLocales,
471
- hasWherePolicy,
472
- where: fullWhere
473
- };
474
- };
475
- const readUpdateDocument = async ({ id, collectionConfig, hasWherePolicy, locale, req, where })=>{
476
- const findOneArgs = {
477
- collection: collectionConfig.slug,
478
- locale,
479
- req,
480
- where
481
- };
482
- const docWithLocales = await getLatestCollectionVersion({
483
- id,
484
- config: collectionConfig,
485
- payload: req.payload,
486
- query: findOneArgs,
487
- req
488
- });
489
- if (!docWithLocales) {
490
- if (hasWherePolicy) {
491
- throw new Forbidden(req.t);
492
- }
493
- throw new NotFound(req.t);
494
- }
495
- return docWithLocales;
496
- };
497
292
 
498
293
  //# sourceMappingURL=updateByID.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/collections/operations/updateByID.ts"],"sourcesContent":["import type { DeepPartial } from 'ts-essentials'\n\nimport type { FindOneArgs } from '../../database/types.js'\nimport type {\n PayloadRequest,\n PopulateType,\n SelectType,\n TransformCollectionWithSelect,\n Where,\n} from '../../types/index.js'\nimport type { UploadFileRollbacks } from '../../uploads/uploadFileRollback.js'\nimport type { DeferredCleanupScope } from '../../utilities/transactionCallbacks.js'\nimport type {\n Collection,\n RequiredDataFromCollectionSlug,\n SelectFromCollectionSlug,\n TypeWithID,\n} from '../config/types.js'\n\nimport { executeAccess } from '../../auth/executeAccess.js'\nimport { hasWhereAccessResult } from '../../auth/types.js'\nimport { retryConcurrentShadowOperation } from '../../branching/createShadowRow.js'\nimport { forkDocument } from '../../branching/forkDocument.js'\nimport { assertBranchMergeValidationWriteAllowed } from '../../branching/mergeWriteGuard.js'\nimport {\n refreshRequestDataLoader,\n resetBranchState,\n resolveBranch,\n} from '../../branching/resolveBranch.js'\nimport { branchField, MAIN_BRANCH } from '../../branching/types.js'\nimport { combineQueries } from '../../database/combineQueries.js'\nimport { APIError, Forbidden, NotFound } from '../../errors/index.js'\nimport { type CollectionSlug, deepCopyObjectSimple, type FindOptions } from '../../index.js'\nimport { runCloudFileUpdate } from '../../uploads/fileVersioning/cloudStorage.js'\nimport {\n abortFileOperationScope,\n beginFileOperationScope,\n completeFileOperationScope,\n} from '../../uploads/fileVersioning/fileOperationManager.js'\nimport { withLegacyCloudUploadFileData } from '../../uploads/fileVersioning/storedFiles.js'\nimport { generateFileData } from '../../uploads/generateFileData.js'\nimport {\n getLocalizedUploadProperties,\n getUploadDestination,\n mergeUploadDataWithDocument,\n sanitizeUploadData,\n} from '../../uploads/sanitizeUploadData.js'\nimport { unlinkTempFiles } from '../../uploads/unlinkTempFiles.js'\nimport {\n cleanupUploadFileRollbacks,\n rollbackUploadFiles,\n} from '../../uploads/uploadFileRollback.js'\nimport { appendNonTrashedFilter } from '../../utilities/appendNonTrashedFilter.js'\nimport { assertNoValidationWrite } from '../../utilities/assertNoValidationWrite.js'\nimport {\n commitTransaction,\n shouldRollbackTransactionArtifacts,\n} from '../../utilities/commitTransaction.js'\nimport { hasLocalizeStatusEnabled } from '../../utilities/getVersionsConfig.js'\nimport { httpStatus } from '../../utilities/httpStatus.js'\nimport { initTransaction } from '../../utilities/initTransaction.js'\nimport { killTransaction } from '../../utilities/killTransaction.js'\nimport { resolveSelect } from '../../utilities/resolveSelect.js'\nimport { sanitizeSelect } from '../../utilities/sanitizeSelect.js'\nimport {\n beginDeferredCleanupScope,\n clearDeferredCleanupScope,\n flushDeferredCleanupScopeAfterOperation,\n hasActiveDeferredCleanupScope,\n} from '../../utilities/transactionCallbacks.js'\nimport {\n getAllLocalesPublicationStatus,\n normalizeAllLocalesPublicationStatus,\n reconcileAllLocalesPublicationStatus,\n validateAllLocalesPublicationFlags,\n} from '../../versions/allLocalesPublicationStatus.js'\nimport { getLatestCollectionVersion } from '../../versions/getLatestCollectionVersion.js'\nimport { buildAfterOperation } from './utilities/buildAfterOperation.js'\nimport { buildBeforeOperation } from './utilities/buildBeforeOperation.js'\nimport {\n commitOperationRetryRequestContext,\n createOperationRetryRequest,\n shouldRetryOperationRequest,\n} from './utilities/createOperationRetryRequest.js'\nimport { updateDocument } from './utilities/update.js'\n\nexport const branchMergeUploadDataContextKey = Symbol('branchMergeUploadData')\n\nexport type BranchMergeUploadDataContext = {\n collectionSlug: string\n data: unknown\n id: number | string\n}\n\nexport type Arguments<TSlug extends CollectionSlug> = {\n autosave?: boolean\n /** @internal Storage request for an in-place branch-created row promotion. */\n branchMergeStorageReq?: PayloadRequest\n collection: Collection\n data: DeepPartial<RequiredDataFromCollectionSlug<TSlug>>\n depth?: number\n disableTransaction?: boolean\n disableVerificationEmail?: boolean\n draft?: boolean\n id: number | string\n overrideAccess?: boolean\n overrideLock?: boolean\n overwriteExistingFiles?: boolean\n populate?: PopulateType\n publishAllLocales?: boolean\n req: PayloadRequest\n showHiddenFields?: boolean\n trash?: boolean\n unpublishAllLocales?: boolean\n} & Pick<FindOptions<TSlug, SelectType>, 'select'>\n\nexport const updateByIDOperation = <\n TSlug extends CollectionSlug,\n TSelect extends SelectFromCollectionSlug<TSlug> = SelectType,\n>(\n incomingArgs: Arguments<TSlug>,\n): Promise<TransformCollectionWithSelect<TSlug, TSelect>> =>\n updateByIDOperationWithLifecycle<TSlug, TSelect>({\n incomingArgs,\n lifecycleOperation: 'update',\n })\n\n/**\n * Promotes a branch-created row while applying create access and lifecycle hooks.\n * This module is not a package export; external callers use `updateByIDOperation`.\n *\n * @internal\n */\nexport const updateByIDOperationForBranchMerge = <\n TSlug extends CollectionSlug,\n TSelect extends SelectFromCollectionSlug<TSlug> = SelectType,\n>(\n incomingArgs: Arguments<TSlug>,\n): Promise<TransformCollectionWithSelect<TSlug, TSelect>> =>\n updateByIDOperationWithLifecycle<TSlug, TSelect>({\n incomingArgs,\n lifecycleOperation: 'create',\n trustedUploadData: incomingArgs.data,\n })\n\nconst updateByIDOperationWithLifecycle = async <\n TSlug extends CollectionSlug,\n TSelect extends SelectFromCollectionSlug<TSlug> = SelectType,\n>({\n incomingArgs,\n lifecycleOperation,\n trustedUploadData,\n}: {\n incomingArgs: Arguments<TSlug>\n lifecycleOperation: 'create' | 'update'\n trustedUploadData?: unknown\n}): Promise<TransformCollectionWithSelect<TSlug, TSelect>> => {\n assertNoValidationWrite(incomingArgs.req)\n\n const reqContext = incomingArgs.req.context as Record<PropertyKey, unknown> | undefined\n const pendingBranchMergeUploadData = reqContext?.[branchMergeUploadDataContextKey] as\n | BranchMergeUploadDataContext\n | undefined\n let branchMergeUploadDataToTrust: BranchMergeUploadDataContext | undefined =\n trustedUploadData === undefined\n ? undefined\n : {\n id: incomingArgs.id,\n collectionSlug: incomingArgs.collection.config.slug,\n data: trustedUploadData,\n }\n\n if (\n pendingBranchMergeUploadData?.collectionSlug === incomingArgs.collection.config.slug &&\n pendingBranchMergeUploadData.id === incomingArgs.id\n ) {\n branchMergeUploadDataToTrust ??= pendingBranchMergeUploadData\n delete reqContext![branchMergeUploadDataContextKey]\n }\n\n const hasCallerTransaction = Boolean(await incomingArgs.req.transactionID)\n const pristineData = deepCopyObjectSimple(incomingArgs.data)\n const shouldIsolateTempFile = Boolean(\n !hasCallerTransaction &&\n incomingArgs.req.file?.tempFilePath &&\n (incomingArgs.req.payload.config.upload?.useTempFiles ||\n incomingArgs.req.file.uploadReference ||\n incomingArgs.req.context?._payloadClientUploadTempFile),\n )\n let didOwnAttemptTransaction = false\n let didReachFinalCommit = false\n let isRetrySafe = false\n\n try {\n return await retryConcurrentShadowOperation({\n operation: async () => {\n didOwnAttemptTransaction = false\n didReachFinalCommit = false\n isRetrySafe = false\n\n const shouldReuseParentRequest =\n incomingArgs.disableTransaction &&\n hasActiveDeferredCleanupScope({ req: incomingArgs.req })\n const retryRequest =\n hasCallerTransaction || shouldReuseParentRequest\n ? undefined\n : await createOperationRetryRequest({\n copyFileTempPath: shouldIsolateTempFile,\n req: incomingArgs.req,\n })\n\n isRetrySafe = retryRequest?.isRetrySafe ?? false\n const attemptArgs = retryRequest\n ? {\n ...incomingArgs,\n data: deepCopyObjectSimple(pristineData),\n req: retryRequest.req,\n }\n : incomingArgs\n\n const result = await updateByIDOperationWithLifecycleAttempt<TSlug, TSelect>({\n branchMergeUploadDataToTrust,\n hasCallerTransaction,\n incomingArgs: attemptArgs,\n lifecycleOperation,\n reportFinalCommit: () => {\n didReachFinalCommit = true\n },\n reportTransactionOwnership: ({ isOperationTransaction }) => {\n didOwnAttemptTransaction = isOperationTransaction\n },\n })\n\n if (retryRequest?.isRetrySafe) {\n commitOperationRetryRequestContext({ req: attemptArgs.req })\n }\n\n return result\n },\n shouldRetry: ({ error }) =>\n shouldRetryOperationRequest({\n didOwnAttemptTransaction,\n didReachFinalCommit,\n error,\n hasCallerTransaction,\n isRetrySafe,\n }),\n })\n } finally {\n if (shouldIsolateTempFile) {\n await unlinkTempFiles({\n collectionConfig: incomingArgs.collection.config,\n config: incomingArgs.req.payload.config,\n req: incomingArgs.req,\n }).catch((unlinkError) => {\n incomingArgs.req.payload.logger.error({\n err: unlinkError,\n msg: 'Failed to remove temp file',\n })\n })\n }\n }\n}\n\nconst updateByIDOperationWithLifecycleAttempt = async <\n TSlug extends CollectionSlug,\n TSelect extends SelectFromCollectionSlug<TSlug> = SelectType,\n>({\n branchMergeUploadDataToTrust,\n hasCallerTransaction,\n incomingArgs,\n lifecycleOperation,\n reportFinalCommit,\n reportTransactionOwnership,\n}: {\n branchMergeUploadDataToTrust?: BranchMergeUploadDataContext\n hasCallerTransaction: boolean\n incomingArgs: Arguments<TSlug>\n lifecycleOperation: 'create' | 'update'\n reportFinalCommit: () => void\n reportTransactionOwnership: (args: { isOperationTransaction: boolean }) => void\n}): Promise<TransformCollectionWithSelect<TSlug, TSelect>> => {\n let args = incomingArgs\n let cleanupScope: DeferredCleanupScope | null = null\n let didResolveBranchFork = false\n let shouldCommit = false\n const uploadFileRollbacks: UploadFileRollbacks = new Map()\n const hasFileOperationScope = Boolean(args.collection.config.upload)\n\n assertBranchMergeValidationWriteAllowed({ req: args.req })\n\n if (hasFileOperationScope) {\n beginFileOperationScope({ req: args.req })\n }\n\n try {\n shouldCommit = !args.disableTransaction && (await initTransaction(args.req))\n reportTransactionOwnership({ isOperationTransaction: shouldCommit })\n cleanupScope = await beginDeferredCleanupScope({ req: args.req })\n\n if (args.collection.config.upload && !args.overrideAccess) {\n const { objectKey, prefix } = getUploadDestination({ data: args.data, file: args.req.file })\n const data = sanitizeUploadData(args.data, 'update')\n\n args = {\n ...args,\n data:\n typeof data === 'object' && data !== null\n ? {\n ...data,\n ...(prefix !== undefined ? { prefix } : {}),\n ...(objectKey !== undefined ? { _objectKey: objectKey } : {}),\n }\n : data,\n }\n }\n\n validateAllLocalesPublicationFlags({\n publishAllLocales: args.publishAllLocales,\n unpublishAllLocales: args.unpublishAllLocales,\n })\n\n const initialCollectionConfig = args.collection.config\n const initialAllLocalesPublicationStatus = getAllLocalesPublicationStatus({\n hasLocalizedStatus: Boolean(\n args.req.payload.config.localization && hasLocalizeStatusEnabled(initialCollectionConfig),\n ),\n publishAllLocales:\n !args.draft &&\n (args.publishAllLocales ??\n (hasLocalizeStatusEnabled(initialCollectionConfig) && args.req.locale !== 'all'\n ? false\n : true)),\n unpublishAllLocales: Boolean(args.unpublishAllLocales),\n })\n\n const initialAllLocalesPublicationIntent = normalizeAllLocalesPublicationStatus({\n data: args.data,\n status: initialAllLocalesPublicationStatus,\n })\n // /////////////////////////////////////\n // beforeOperation - Collection\n // /////////////////////////////////////\n\n args = await buildBeforeOperation({\n args,\n collection: args.collection.config,\n operation: 'update',\n overrideAccess: args.overrideAccess!,\n })\n\n const {\n id,\n autosave = false,\n branchMergeStorageReq,\n collection: { config: collectionConfig },\n collection,\n depth,\n draft: draftArg = false,\n overrideAccess,\n overrideLock,\n overwriteExistingFiles = false,\n populate,\n publishAllLocales: publishAllLocalesArg,\n req: {\n fallbackLocale,\n locale,\n payload: { config },\n payload,\n },\n req,\n select: incomingSelect,\n showHiddenFields,\n trash = false,\n unpublishAllLocales: unpublishAllLocalesArg,\n } = args\n\n if (!id) {\n throw new APIError('Missing ID of document to update.', httpStatus.BAD_REQUEST)\n }\n\n let { data } = args\n\n validateAllLocalesPublicationFlags({\n publishAllLocales: publishAllLocalesArg,\n unpublishAllLocales: unpublishAllLocalesArg,\n })\n\n const requestedAllLocalesPublicationStatus = getAllLocalesPublicationStatus({\n hasLocalizedStatus: Boolean(\n config.localization && hasLocalizeStatusEnabled(collectionConfig),\n ),\n publishAllLocales:\n !draftArg &&\n (publishAllLocalesArg ?? !(hasLocalizeStatusEnabled(collectionConfig) && locale !== 'all')),\n unpublishAllLocales: Boolean(unpublishAllLocalesArg),\n })\n const allLocalesPublicationStatus = reconcileAllLocalesPublicationStatus({\n data,\n intent: initialAllLocalesPublicationIntent,\n status: requestedAllLocalesPublicationStatus,\n })\n const publicationIntentSurvivedBeforeOperation =\n !requestedAllLocalesPublicationStatus || Boolean(allLocalesPublicationStatus)\n const publishAllLocales = publicationIntentSurvivedBeforeOperation\n ? publishAllLocalesArg\n : false\n const unpublishAllLocales = publicationIntentSurvivedBeforeOperation\n ? unpublishAllLocalesArg\n : false\n\n const authorizedDocument = await readAuthorizedUpdateDocument<TSlug>({\n id,\n collectionConfig,\n data,\n lifecycleOperation,\n locale: locale!,\n overrideAccess: overrideAccess!,\n req,\n storageReq: branchMergeStorageReq,\n trash,\n })\n let { docWithLocales } = authorizedDocument\n const branch = resolveBranch(req)\n const isBranchingDocument =\n branch !== MAIN_BRANCH &&\n req.payload.config.branching?.branchableCollections.has(collectionConfig.slug)\n\n if (isBranchingDocument) {\n const isExistingBranchDocument = docWithLocales[branchField] === branch\n\n if (hasCallerTransaction && !isExistingBranchDocument) {\n throw new APIError(\n 'Cannot update an untouched branch document within an existing transaction.',\n httpStatus.CONFLICT,\n )\n }\n\n await forkDocument({\n id,\n collectionSlug: collectionConfig.slug,\n req,\n // Without an operation-owned transaction, retain the isolated race-recovery path. An\n // adapter with transactions disabled or unavailable cannot roll back a later hook failure.\n useAmbientTransaction: shouldCommit,\n })\n didResolveBranchFork = true\n\n if (!isExistingBranchDocument) {\n docWithLocales = await readUpdateDocument<TSlug>({\n id,\n collectionConfig,\n hasWherePolicy: authorizedDocument.hasWherePolicy,\n locale: locale!,\n req,\n where: authorizedDocument.where,\n })\n }\n }\n\n const storedDocWithLocales = docWithLocales\n if (collectionConfig.upload.fileOperations) {\n docWithLocales = await withLegacyCloudUploadFileData({\n collection: collectionConfig,\n doc: docWithLocales,\n req,\n })\n }\n\n if (collectionConfig.upload && !overrideAccess) {\n const trustedUploadDataForDocument =\n branchMergeUploadDataToTrust?.collectionSlug === collectionConfig.slug &&\n branchMergeUploadDataToTrust.id === id\n ? branchMergeUploadDataToTrust.data\n : docWithLocales\n\n data = mergeUploadDataWithDocument(data, trustedUploadDataForDocument, {\n locale:\n locale === 'all' || !locale\n ? config.localization\n ? config.localization.defaultLocale\n : undefined\n : locale,\n localizedProperties: getLocalizedUploadProperties(collectionConfig.flattenedFields),\n })\n }\n\n // /////////////////////////////////////\n // Generate data for all files and sizes\n // /////////////////////////////////////\n\n const { data: newFileData, files: filesToUpload } = await generateFileData({\n collection,\n config,\n data,\n operation: 'update',\n originalDoc: docWithLocales,\n overwriteExistingFiles,\n req,\n throwOnMissingFile: false,\n })\n\n const select = sanitizeSelect({\n fields: collectionConfig.flattenedFields,\n select: resolveSelect({\n config: collectionConfig.select,\n operation: 'update',\n req,\n select: incomingSelect,\n }),\n })\n\n // ///////////////////////////////////////////////\n // Update document, runs all document level hooks\n // ///////////////////////////////////////////////\n\n const updateArgs = {\n id,\n autosave,\n collectionConfig,\n config,\n data: deepCopyObjectSimple(newFileData),\n databaseReq: branchMergeStorageReq,\n depth: depth!,\n docWithLocales,\n draftArg,\n fallbackLocale: fallbackLocale!,\n filesToUpload,\n locale: locale!,\n operation: lifecycleOperation,\n overrideAccess: overrideAccess!,\n overrideLock: overrideLock!,\n payload,\n populate,\n publishAllLocales,\n req,\n select: select!,\n shouldManageLocalFiles: true,\n showHiddenFields: showHiddenFields!,\n unpublishAllLocales,\n uploadFileRollbacks:\n shouldCommit && collectionConfig.upload && !collectionConfig.upload.disableLocalStorage\n ? uploadFileRollbacks\n : undefined,\n } as const\n\n const write = () => updateDocument<TSlug, TSelect>(updateArgs)\n let result = collectionConfig.upload.fileOperations\n ? await runCloudFileUpdate({\n id,\n collection: collectionConfig,\n current: storedDocWithLocales,\n data: updateArgs.data,\n files: filesToUpload,\n req,\n write,\n })\n : await write()\n\n // /////////////////////////////////////\n // Add collection property for auth collections\n // /////////////////////////////////////\n\n if (collectionConfig.auth) {\n result = { ...result, collection: collectionConfig.slug }\n }\n\n await unlinkTempFiles({\n collectionConfig,\n config,\n req,\n }).catch((unlinkError) => {\n req.payload.logger.error({ err: unlinkError, msg: 'Failed to remove temp file' })\n })\n\n // /////////////////////////////////////\n // afterOperation - Collection\n // /////////////////////////////////////\n\n result = (await buildAfterOperation({\n args,\n collection: collectionConfig,\n operation: 'updateByID',\n overrideAccess,\n result,\n })) as TransformCollectionWithSelect<TSlug, TSelect>\n\n // /////////////////////////////////////\n // Return results\n // /////////////////////////////////////\n\n if (cleanupScope) {\n await flushDeferredCleanupScopeAfterOperation({ req, scope: cleanupScope })\n }\n if (shouldCommit) {\n reportFinalCommit()\n await commitTransaction(req)\n\n await cleanupUploadFileRollbacks({ rollbacks: uploadFileRollbacks }).catch((error) => {\n args.req.payload.logger.error({\n err: error,\n msg: 'Failed to remove an upload rollback backup after committing its database write.',\n })\n })\n }\n\n if (isBranchingDocument) {\n refreshRequestDataLoader(req)\n }\n\n if (hasFileOperationScope) {\n await completeFileOperationScope({ req })\n }\n\n return result\n } catch (error: unknown) {\n const shouldRollbackArtifacts = shouldRollbackTransactionArtifacts({ error })\n\n if (cleanupScope) {\n clearDeferredCleanupScope({ req: args.req, scope: cleanupScope })\n }\n\n await unlinkTempFiles({\n collectionConfig: args.collection.config,\n config: args.req.payload.config,\n req: args.req,\n }).catch((unlinkError) => {\n args.req.payload.logger.error({ err: unlinkError, msg: 'Failed to remove temp file' })\n })\n if (shouldCommit) {\n await killTransaction(args.req)\n if (didResolveBranchFork) {\n resetBranchState(args.req)\n }\n\n if (shouldRollbackArtifacts) {\n await rollbackUploadFiles({ rollbacks: uploadFileRollbacks })\n }\n }\n\n if (hasFileOperationScope) {\n await abortFileOperationScope({ req: args.req })\n }\n throw error\n }\n}\n\nconst readAuthorizedUpdateDocument = async <TSlug extends CollectionSlug>({\n id,\n collectionConfig,\n data,\n lifecycleOperation,\n locale,\n overrideAccess,\n req,\n storageReq,\n trash,\n}: {\n collectionConfig: Collection['config']\n data: DeepPartial<RequiredDataFromCollectionSlug<TSlug>>\n id: number | string\n lifecycleOperation: 'create' | 'update'\n locale: string\n overrideAccess: boolean\n req: PayloadRequest\n storageReq?: PayloadRequest\n trash: boolean\n}): Promise<{\n docWithLocales: RequiredDataFromCollectionSlug<TSlug> & TypeWithID\n hasWherePolicy: boolean\n where: Where\n}> => {\n if (!id) {\n throw new APIError('Missing ID of document to update.', httpStatus.BAD_REQUEST)\n }\n\n const accessResults = !overrideAccess\n ? await executeAccess(\n {\n id: lifecycleOperation === 'create' ? undefined : id,\n slug: collectionConfig.slug,\n data,\n req,\n },\n collectionConfig.access[lifecycleOperation],\n )\n : true\n const hasWherePolicy = lifecycleOperation !== 'create' && hasWhereAccessResult(accessResults)\n const where = { id: { equals: id } }\n let fullWhere = hasWherePolicy ? combineQueries(where, accessResults) : where\n const isTrashAttempt =\n collectionConfig.trash &&\n typeof data === 'object' &&\n data !== null &&\n 'deletedAt' in data &&\n data.deletedAt != null\n\n if (isTrashAttempt && !overrideAccess) {\n const deleteAccessResult = await executeAccess(\n { id, slug: collectionConfig.slug, data, req },\n collectionConfig.access.delete,\n )\n\n fullWhere = combineQueries(fullWhere, deleteAccessResult)\n }\n\n fullWhere = appendNonTrashedFilter({\n enableTrash: collectionConfig.trash,\n trash,\n where: fullWhere,\n })\n\n const docWithLocales = await readUpdateDocument<TSlug>({\n id,\n collectionConfig,\n hasWherePolicy,\n locale,\n req: storageReq ?? req,\n where: fullWhere,\n })\n\n return { docWithLocales, hasWherePolicy, where: fullWhere }\n}\n\nconst readUpdateDocument = async <TSlug extends CollectionSlug>({\n id,\n collectionConfig,\n hasWherePolicy,\n locale,\n req,\n where,\n}: {\n collectionConfig: Collection['config']\n hasWherePolicy: boolean\n id: number | string\n locale: string\n req: PayloadRequest\n where: Where\n}): Promise<RequiredDataFromCollectionSlug<TSlug> & TypeWithID> => {\n const findOneArgs: FindOneArgs = {\n collection: collectionConfig.slug,\n locale,\n req,\n where,\n }\n const docWithLocales = await getLatestCollectionVersion<\n RequiredDataFromCollectionSlug<TSlug> & TypeWithID\n >({\n id,\n config: collectionConfig,\n payload: req.payload,\n query: findOneArgs,\n req,\n })\n\n if (!docWithLocales) {\n if (hasWherePolicy) {\n throw new Forbidden(req.t)\n }\n\n throw new NotFound(req.t)\n }\n\n return docWithLocales\n}\n"],"names":["executeAccess","hasWhereAccessResult","retryConcurrentShadowOperation","forkDocument","assertBranchMergeValidationWriteAllowed","refreshRequestDataLoader","resetBranchState","resolveBranch","branchField","MAIN_BRANCH","combineQueries","APIError","Forbidden","NotFound","deepCopyObjectSimple","runCloudFileUpdate","abortFileOperationScope","beginFileOperationScope","completeFileOperationScope","withLegacyCloudUploadFileData","generateFileData","getLocalizedUploadProperties","getUploadDestination","mergeUploadDataWithDocument","sanitizeUploadData","unlinkTempFiles","cleanupUploadFileRollbacks","rollbackUploadFiles","appendNonTrashedFilter","assertNoValidationWrite","commitTransaction","shouldRollbackTransactionArtifacts","hasLocalizeStatusEnabled","httpStatus","initTransaction","killTransaction","resolveSelect","sanitizeSelect","beginDeferredCleanupScope","clearDeferredCleanupScope","flushDeferredCleanupScopeAfterOperation","hasActiveDeferredCleanupScope","getAllLocalesPublicationStatus","normalizeAllLocalesPublicationStatus","reconcileAllLocalesPublicationStatus","validateAllLocalesPublicationFlags","getLatestCollectionVersion","buildAfterOperation","buildBeforeOperation","commitOperationRetryRequestContext","createOperationRetryRequest","shouldRetryOperationRequest","updateDocument","branchMergeUploadDataContextKey","Symbol","updateByIDOperation","incomingArgs","updateByIDOperationWithLifecycle","lifecycleOperation","updateByIDOperationForBranchMerge","trustedUploadData","data","req","reqContext","context","pendingBranchMergeUploadData","branchMergeUploadDataToTrust","undefined","id","collectionSlug","collection","config","slug","hasCallerTransaction","Boolean","transactionID","pristineData","shouldIsolateTempFile","file","tempFilePath","payload","upload","useTempFiles","uploadReference","_payloadClientUploadTempFile","didOwnAttemptTransaction","didReachFinalCommit","isRetrySafe","operation","shouldReuseParentRequest","disableTransaction","retryRequest","copyFileTempPath","attemptArgs","result","updateByIDOperationWithLifecycleAttempt","reportFinalCommit","reportTransactionOwnership","isOperationTransaction","shouldRetry","error","collectionConfig","catch","unlinkError","logger","err","msg","args","cleanupScope","didResolveBranchFork","shouldCommit","uploadFileRollbacks","Map","hasFileOperationScope","overrideAccess","objectKey","prefix","_objectKey","publishAllLocales","unpublishAllLocales","initialCollectionConfig","initialAllLocalesPublicationStatus","hasLocalizedStatus","localization","draft","locale","initialAllLocalesPublicationIntent","status","autosave","branchMergeStorageReq","depth","draftArg","overrideLock","overwriteExistingFiles","populate","publishAllLocalesArg","fallbackLocale","select","incomingSelect","showHiddenFields","trash","unpublishAllLocalesArg","BAD_REQUEST","requestedAllLocalesPublicationStatus","allLocalesPublicationStatus","intent","publicationIntentSurvivedBeforeOperation","authorizedDocument","readAuthorizedUpdateDocument","storageReq","docWithLocales","branch","isBranchingDocument","branching","branchableCollections","has","isExistingBranchDocument","CONFLICT","useAmbientTransaction","readUpdateDocument","hasWherePolicy","where","storedDocWithLocales","fileOperations","doc","trustedUploadDataForDocument","defaultLocale","localizedProperties","flattenedFields","newFileData","files","filesToUpload","originalDoc","throwOnMissingFile","fields","updateArgs","databaseReq","shouldManageLocalFiles","disableLocalStorage","write","current","auth","scope","rollbacks","shouldRollbackArtifacts","accessResults","access","equals","fullWhere","isTrashAttempt","deletedAt","deleteAccessResult","delete","enableTrash","findOneArgs","query","t"],"mappings":"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"}
1
+ {"version":3,"sources":["../../../src/collections/operations/updateByID.ts"],"sourcesContent":["import type { DeepPartial } from 'ts-essentials'\n\nimport type { FindOneArgs } from '../../database/types.js'\nimport type {\n PayloadRequest,\n PopulateType,\n SelectType,\n TransformCollectionWithSelect,\n} from '../../types/index.js'\nimport type {\n Collection,\n RequiredDataFromCollectionSlug,\n SelectFromCollectionSlug,\n TypeWithID,\n} from '../config/types.js'\n\nimport { executeAccess } from '../../auth/executeAccess.js'\nimport { hasWhereAccessResult } from '../../auth/types.js'\nimport { combineQueries } from '../../database/combineQueries.js'\nimport { APIError, Forbidden, NotFound } from '../../errors/index.js'\nimport { type CollectionSlug, deepCopyObjectSimple, type FindOptions } from '../../index.js'\nimport { runCloudFileUpdate } from '../../uploads/fileVersioning/cloudStorage.js'\nimport {\n abortFileOperationScope,\n beginFileOperationScope,\n completeFileOperationScope,\n} from '../../uploads/fileVersioning/fileOperationManager.js'\nimport { withLegacyCloudUploadFileData } from '../../uploads/fileVersioning/storedFiles.js'\nimport { generateFileData } from '../../uploads/generateFileData.js'\nimport {\n getLocalizedUploadProperties,\n getUploadDestination,\n mergeUploadDataWithDocument,\n sanitizeUploadData,\n} from '../../uploads/sanitizeUploadData.js'\nimport { unlinkTempFiles } from '../../uploads/unlinkTempFiles.js'\nimport { appendNonTrashedFilter } from '../../utilities/appendNonTrashedFilter.js'\nimport { assertNoValidationWrite } from '../../utilities/assertNoValidationWrite.js'\nimport { commitTransaction } from '../../utilities/commitTransaction.js'\nimport { hasLocalizeStatusEnabled } from '../../utilities/getVersionsConfig.js'\nimport { httpStatus } from '../../utilities/httpStatus.js'\nimport { initTransaction } from '../../utilities/initTransaction.js'\nimport { killTransaction } from '../../utilities/killTransaction.js'\nimport { resolveSelect } from '../../utilities/resolveSelect.js'\nimport { sanitizeSelect } from '../../utilities/sanitizeSelect.js'\nimport {\n getAllLocalesPublicationStatus,\n normalizeAllLocalesPublicationStatus,\n reconcileAllLocalesPublicationStatus,\n validateAllLocalesPublicationFlags,\n} from '../../versions/allLocalesPublicationStatus.js'\nimport { getLatestCollectionVersion } from '../../versions/getLatestCollectionVersion.js'\nimport { buildAfterOperation } from './utilities/buildAfterOperation.js'\nimport { buildBeforeOperation } from './utilities/buildBeforeOperation.js'\nimport { updateDocument } from './utilities/update.js'\n\nexport type Arguments<TSlug extends CollectionSlug> = {\n autosave?: boolean\n collection: Collection\n data: DeepPartial<RequiredDataFromCollectionSlug<TSlug>>\n depth?: number\n disableTransaction?: boolean\n disableVerificationEmail?: boolean\n draft?: boolean\n id: number | string\n overrideAccess?: boolean\n overrideLock?: boolean\n overwriteExistingFiles?: boolean\n populate?: PopulateType\n publishAllLocales?: boolean\n req: PayloadRequest\n showHiddenFields?: boolean\n trash?: boolean\n unpublishAllLocales?: boolean\n} & Pick<FindOptions<TSlug, SelectType>, 'select'>\n\nexport const updateByIDOperation = async <\n TSlug extends CollectionSlug,\n TSelect extends SelectFromCollectionSlug<TSlug> = SelectType,\n>(\n incomingArgs: Arguments<TSlug>,\n): Promise<TransformCollectionWithSelect<TSlug, TSelect>> => {\n let args = incomingArgs\n const hasFileOperationScope = Boolean(args.collection.config.upload)\n\n if (hasFileOperationScope) {\n beginFileOperationScope({ req: args.req })\n }\n\n assertNoValidationWrite(args.req)\n\n try {\n const shouldCommit = !args.disableTransaction && (await initTransaction(args.req))\n\n if (args.collection.config.upload && !args.overrideAccess) {\n const { objectKey, prefix } = getUploadDestination({ data: args.data, file: args.req.file })\n const data = sanitizeUploadData(args.data, 'update')\n\n args = {\n ...args,\n data:\n typeof data === 'object' && data !== null\n ? {\n ...data,\n ...(prefix !== undefined ? { prefix } : {}),\n ...(objectKey !== undefined ? { _objectKey: objectKey } : {}),\n }\n : data,\n }\n }\n\n validateAllLocalesPublicationFlags({\n publishAllLocales: args.publishAllLocales,\n unpublishAllLocales: args.unpublishAllLocales,\n })\n\n const initialCollectionConfig = args.collection.config\n const initialAllLocalesPublicationStatus = getAllLocalesPublicationStatus({\n hasLocalizedStatus: Boolean(\n args.req.payload.config.localization && hasLocalizeStatusEnabled(initialCollectionConfig),\n ),\n publishAllLocales:\n !args.draft &&\n (args.publishAllLocales ??\n (hasLocalizeStatusEnabled(initialCollectionConfig) && args.req.locale !== 'all'\n ? false\n : true)),\n unpublishAllLocales: Boolean(args.unpublishAllLocales),\n })\n\n const initialAllLocalesPublicationIntent = normalizeAllLocalesPublicationStatus({\n data: args.data,\n status: initialAllLocalesPublicationStatus,\n })\n // /////////////////////////////////////\n // beforeOperation - Collection\n // /////////////////////////////////////\n\n args = await buildBeforeOperation({\n args,\n collection: args.collection.config,\n operation: 'update',\n overrideAccess: args.overrideAccess!,\n })\n\n const {\n id,\n autosave = false,\n collection: { config: collectionConfig },\n collection,\n depth,\n draft: draftArg = false,\n overrideAccess,\n overrideLock,\n overwriteExistingFiles = false,\n populate,\n publishAllLocales: publishAllLocalesArg,\n req: {\n fallbackLocale,\n locale,\n payload: { config },\n payload,\n },\n req,\n select: incomingSelect,\n showHiddenFields,\n trash = false,\n unpublishAllLocales: unpublishAllLocalesArg,\n } = args\n\n if (!id) {\n throw new APIError('Missing ID of document to update.', httpStatus.BAD_REQUEST)\n }\n\n let { data } = args\n\n validateAllLocalesPublicationFlags({\n publishAllLocales: publishAllLocalesArg,\n unpublishAllLocales: unpublishAllLocalesArg,\n })\n\n const requestedAllLocalesPublicationStatus = getAllLocalesPublicationStatus({\n hasLocalizedStatus: Boolean(\n config.localization && hasLocalizeStatusEnabled(collectionConfig),\n ),\n publishAllLocales:\n !draftArg &&\n (publishAllLocalesArg ?? !(hasLocalizeStatusEnabled(collectionConfig) && locale !== 'all')),\n unpublishAllLocales: Boolean(unpublishAllLocalesArg),\n })\n const allLocalesPublicationStatus = reconcileAllLocalesPublicationStatus({\n data,\n intent: initialAllLocalesPublicationIntent,\n status: requestedAllLocalesPublicationStatus,\n })\n const publicationIntentSurvivedBeforeOperation =\n !requestedAllLocalesPublicationStatus || Boolean(allLocalesPublicationStatus)\n const publishAllLocales = publicationIntentSurvivedBeforeOperation\n ? publishAllLocalesArg\n : false\n const unpublishAllLocales = publicationIntentSurvivedBeforeOperation\n ? unpublishAllLocalesArg\n : false\n\n // /////////////////////////////////////\n // Access\n // /////////////////////////////////////\n\n const accessResults = !overrideAccess\n ? await executeAccess(\n { id, slug: collectionConfig.slug, data, req },\n collectionConfig.access.update,\n )\n : true\n const hasWherePolicy = hasWhereAccessResult(accessResults)\n\n // /////////////////////////////////////\n // Retrieve document\n // /////////////////////////////////////\n\n const where = { id: { equals: id } }\n\n let fullWhere = combineQueries(where, accessResults)\n\n const isTrashAttempt =\n collectionConfig.trash &&\n typeof data === 'object' &&\n data !== null &&\n 'deletedAt' in data &&\n data.deletedAt != null\n\n if (isTrashAttempt && !overrideAccess) {\n // Pass data so access function can check data.deletedAt to know it's a trash attempt\n const deleteAccessResult = await executeAccess(\n { id, slug: collectionConfig.slug, data, req },\n collectionConfig.access.delete,\n )\n fullWhere = combineQueries(fullWhere, deleteAccessResult)\n }\n\n // Exclude trashed documents when trash: false\n fullWhere = appendNonTrashedFilter({\n enableTrash: collectionConfig.trash,\n trash,\n where: fullWhere,\n })\n\n const findOneArgs: FindOneArgs = {\n collection: collectionConfig.slug,\n locale: locale!,\n req,\n where: fullWhere,\n }\n\n let docWithLocales = await getLatestCollectionVersion<\n RequiredDataFromCollectionSlug<TSlug> & TypeWithID\n >({\n id,\n config: collectionConfig,\n payload,\n query: findOneArgs,\n req,\n })\n\n if (!docWithLocales && !hasWherePolicy) {\n throw new NotFound(req.t)\n }\n if (!docWithLocales && hasWherePolicy) {\n throw new Forbidden(req.t)\n }\n if (!docWithLocales) {\n throw new NotFound(req.t)\n }\n\n const storedDocWithLocales = docWithLocales\n if (collectionConfig.upload.fileOperations) {\n docWithLocales = await withLegacyCloudUploadFileData({\n collection: collectionConfig,\n doc: docWithLocales,\n req,\n })\n }\n\n if (collectionConfig.upload && !overrideAccess) {\n data = mergeUploadDataWithDocument(data, docWithLocales, {\n locale:\n locale === 'all' || !locale\n ? config.localization\n ? config.localization.defaultLocale\n : undefined\n : locale,\n localizedProperties: getLocalizedUploadProperties(collectionConfig.flattenedFields),\n })\n }\n\n // /////////////////////////////////////\n // Generate data for all files and sizes\n // /////////////////////////////////////\n\n const { data: newFileData, files: filesToUpload } = await generateFileData({\n collection,\n config,\n data,\n operation: 'update',\n originalDoc: docWithLocales,\n overwriteExistingFiles,\n req,\n throwOnMissingFile: false,\n })\n\n const select = sanitizeSelect({\n fields: collectionConfig.flattenedFields,\n select: resolveSelect({\n config: collectionConfig.select,\n operation: 'update',\n req,\n select: incomingSelect,\n }),\n })\n\n // ///////////////////////////////////////////////\n // Update document, runs all document level hooks\n // ///////////////////////////////////////////////\n\n const updateArgs = {\n id,\n autosave,\n collectionConfig,\n config,\n data: deepCopyObjectSimple(newFileData),\n depth: depth!,\n docWithLocales,\n draftArg,\n fallbackLocale: fallbackLocale!,\n filesToUpload,\n locale: locale!,\n overrideAccess: overrideAccess!,\n overrideLock: overrideLock!,\n payload,\n populate,\n publishAllLocales,\n req,\n select: select!,\n shouldManageLocalFiles: true,\n showHiddenFields: showHiddenFields!,\n unpublishAllLocales,\n } as const\n\n const write = () => updateDocument<TSlug, TSelect>(updateArgs)\n let result = collectionConfig.upload.fileOperations\n ? await runCloudFileUpdate({\n id,\n collection: collectionConfig,\n current: storedDocWithLocales,\n data: updateArgs.data,\n files: filesToUpload,\n req,\n write,\n })\n : await write()\n\n // /////////////////////////////////////\n // Add collection property for auth collections\n // /////////////////////////////////////\n\n if (collectionConfig.auth) {\n result = { ...result, collection: collectionConfig.slug }\n }\n\n await unlinkTempFiles({\n collectionConfig,\n config,\n req,\n }).catch((unlinkError) => {\n req.payload.logger.error({ err: unlinkError, msg: 'Failed to remove temp file' })\n })\n\n // /////////////////////////////////////\n // afterOperation - Collection\n // /////////////////////////////////////\n\n result = (await buildAfterOperation({\n args,\n collection: collectionConfig,\n operation: 'updateByID',\n overrideAccess,\n result,\n })) as TransformCollectionWithSelect<TSlug, TSelect>\n\n // /////////////////////////////////////\n // Return results\n // /////////////////////////////////////\n\n if (shouldCommit) {\n await commitTransaction(req)\n }\n\n if (hasFileOperationScope) {\n await completeFileOperationScope({ req })\n }\n\n return result\n } catch (error: unknown) {\n await unlinkTempFiles({\n collectionConfig: args.collection.config,\n config: args.req.payload.config,\n req: args.req,\n }).catch((unlinkError) => {\n args.req.payload.logger.error({ err: unlinkError, msg: 'Failed to remove temp file' })\n })\n await killTransaction(args.req)\n if (hasFileOperationScope) {\n await abortFileOperationScope({ req: args.req })\n }\n throw error\n }\n}\n"],"names":["executeAccess","hasWhereAccessResult","combineQueries","APIError","Forbidden","NotFound","deepCopyObjectSimple","runCloudFileUpdate","abortFileOperationScope","beginFileOperationScope","completeFileOperationScope","withLegacyCloudUploadFileData","generateFileData","getLocalizedUploadProperties","getUploadDestination","mergeUploadDataWithDocument","sanitizeUploadData","unlinkTempFiles","appendNonTrashedFilter","assertNoValidationWrite","commitTransaction","hasLocalizeStatusEnabled","httpStatus","initTransaction","killTransaction","resolveSelect","sanitizeSelect","getAllLocalesPublicationStatus","normalizeAllLocalesPublicationStatus","reconcileAllLocalesPublicationStatus","validateAllLocalesPublicationFlags","getLatestCollectionVersion","buildAfterOperation","buildBeforeOperation","updateDocument","updateByIDOperation","incomingArgs","args","hasFileOperationScope","Boolean","collection","config","upload","req","shouldCommit","disableTransaction","overrideAccess","objectKey","prefix","data","file","undefined","_objectKey","publishAllLocales","unpublishAllLocales","initialCollectionConfig","initialAllLocalesPublicationStatus","hasLocalizedStatus","payload","localization","draft","locale","initialAllLocalesPublicationIntent","status","operation","id","autosave","collectionConfig","depth","draftArg","overrideLock","overwriteExistingFiles","populate","publishAllLocalesArg","fallbackLocale","select","incomingSelect","showHiddenFields","trash","unpublishAllLocalesArg","BAD_REQUEST","requestedAllLocalesPublicationStatus","allLocalesPublicationStatus","intent","publicationIntentSurvivedBeforeOperation","accessResults","slug","access","update","hasWherePolicy","where","equals","fullWhere","isTrashAttempt","deletedAt","deleteAccessResult","delete","enableTrash","findOneArgs","docWithLocales","query","t","storedDocWithLocales","fileOperations","doc","defaultLocale","localizedProperties","flattenedFields","newFileData","files","filesToUpload","originalDoc","throwOnMissingFile","fields","updateArgs","shouldManageLocalFiles","write","result","current","auth","catch","unlinkError","logger","error","err","msg"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"buildBeforeOperation.d.ts","sourceRoot":"","sources":["../../../../src/collections/operations/utilities/buildBeforeOperation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAA;AACvD,OAAO,KAAK,EAAE,kBAAkB,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AAOjF;;;;;;GAMG;AAEH;;;;GAIG;AACH,wBAAsB,oBAAoB,CAAC,iBAAiB,SAAS,cAAc,EAAE,KAAK,EACxF,aAAa,EAAE;IACb,IAAI,EAAE,KAAK,CAAA;IACX,SAAS,EAAE,MAAM,CAAA;CAClB,GAAG,IAAI,CAAC,kBAAkB,CAAC,iBAAiB,CAAC,EAAE,MAAM,GAAG,SAAS,GAAG,WAAW,GAAG,KAAK,CAAC,GACxF,OAAO,CAAC,KAAK,CAAC,CAAA;AAEjB;;;;GAIG;AACH,wBAAsB,oBAAoB,CAAC,iBAAiB,SAAS,cAAc,EAAE,KAAK,EACxF,aAAa,EAAE;IACb,IAAI,EAAE,KAAK,CAAA;IACX,SAAS,EAAE,cAAc,CAAA;CAC1B,GAAG,IAAI,CAAC,kBAAkB,CAAC,iBAAiB,CAAC,EAAE,MAAM,GAAG,SAAS,GAAG,WAAW,GAAG,KAAK,CAAC,GACxF,OAAO,CAAC,KAAK,CAAC,CAAA;AAGjB,wBAAsB,oBAAoB,CAAC,iBAAiB,SAAS,cAAc,EAAE,KAAK,EACxF,aAAa,EAAE;IACb,IAAI,EAAE,KAAK,CAAA;IACX,SAAS,EAAE,QAAQ,CAAA;CACpB,GAAG,IAAI,CAAC,kBAAkB,CAAC,iBAAiB,CAAC,EAAE,MAAM,GAAG,SAAS,GAAG,WAAW,GAAG,KAAK,CAAC,GACxF,OAAO,CAAC,KAAK,CAAC,CAAA;AAGjB,wBAAsB,oBAAoB,CAAC,iBAAiB,SAAS,cAAc,EAAE,KAAK,EACxF,aAAa,EAAE;IACb,IAAI,EAAE,KAAK,CAAA;IACX,SAAS,EAAE,YAAY,CAAA;CACxB,GAAG,IAAI,CAAC,kBAAkB,CAAC,iBAAiB,CAAC,EAAE,MAAM,GAAG,SAAS,GAAG,WAAW,GAAG,KAAK,CAAC,GACxF,OAAO,CAAC,KAAK,CAAC,CAAA;AAEjB,wBAAsB,oBAAoB,CAAC,iBAAiB,SAAS,cAAc,EAAE,KAAK,EACxF,aAAa,EAAE;IACb,IAAI,EAAE,KAAK,CAAA;IACX,SAAS,EAAE,QAAQ,CAAA;CACpB,GAAG,IAAI,CAAC,kBAAkB,CAAC,iBAAiB,CAAC,EAAE,MAAM,GAAG,SAAS,GAAG,WAAW,GAAG,KAAK,CAAC,GACxF,OAAO,CAAC,KAAK,CAAC,CAAA;AAGjB,wBAAsB,oBAAoB,CAAC,iBAAiB,SAAS,cAAc,EAAE,KAAK,EACxF,aAAa,EAAE;IACb,IAAI,EAAE,KAAK,CAAA;IACX,SAAS,EAAE,YAAY,CAAA;CACxB,GAAG,IAAI,CAAC,kBAAkB,CAAC,iBAAiB,CAAC,EAAE,MAAM,GAAG,SAAS,GAAG,WAAW,GAAG,KAAK,CAAC,GACxF,OAAO,CAAC,KAAK,CAAC,CAAA;AAGjB,wBAAsB,oBAAoB,CACxC,iBAAiB,SAAS,cAAc,EACxC,CAAC,SAAS,MAAM,YAAY,CAAC,iBAAiB,CAAC,EAE/C,aAAa,EAAE;IAAE,SAAS,EAAE,CAAC,CAAA;CAAE,GAAG,IAAI,CAAC,kBAAkB,CAAC,iBAAiB,CAAC,EAAE,SAAS,GAAG,KAAK,CAAC,GAC/F,OAAO,CAAC,aAAa,CAAC,iBAAiB,EAAE,CAAC,CAAC,CAAC,CAAA"}
1
+ {"version":3,"file":"buildBeforeOperation.d.ts","sourceRoot":"","sources":["../../../../src/collections/operations/utilities/buildBeforeOperation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAA;AACvD,OAAO,KAAK,EAAE,kBAAkB,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AAMjF;;;;;;GAMG;AAEH;;;;GAIG;AACH,wBAAsB,oBAAoB,CAAC,iBAAiB,SAAS,cAAc,EAAE,KAAK,EACxF,aAAa,EAAE;IACb,IAAI,EAAE,KAAK,CAAA;IACX,SAAS,EAAE,MAAM,CAAA;CAClB,GAAG,IAAI,CAAC,kBAAkB,CAAC,iBAAiB,CAAC,EAAE,MAAM,GAAG,SAAS,GAAG,WAAW,GAAG,KAAK,CAAC,GACxF,OAAO,CAAC,KAAK,CAAC,CAAA;AAEjB;;;;GAIG;AACH,wBAAsB,oBAAoB,CAAC,iBAAiB,SAAS,cAAc,EAAE,KAAK,EACxF,aAAa,EAAE;IACb,IAAI,EAAE,KAAK,CAAA;IACX,SAAS,EAAE,cAAc,CAAA;CAC1B,GAAG,IAAI,CAAC,kBAAkB,CAAC,iBAAiB,CAAC,EAAE,MAAM,GAAG,SAAS,GAAG,WAAW,GAAG,KAAK,CAAC,GACxF,OAAO,CAAC,KAAK,CAAC,CAAA;AAGjB,wBAAsB,oBAAoB,CAAC,iBAAiB,SAAS,cAAc,EAAE,KAAK,EACxF,aAAa,EAAE;IACb,IAAI,EAAE,KAAK,CAAA;IACX,SAAS,EAAE,QAAQ,CAAA;CACpB,GAAG,IAAI,CAAC,kBAAkB,CAAC,iBAAiB,CAAC,EAAE,MAAM,GAAG,SAAS,GAAG,WAAW,GAAG,KAAK,CAAC,GACxF,OAAO,CAAC,KAAK,CAAC,CAAA;AAGjB,wBAAsB,oBAAoB,CAAC,iBAAiB,SAAS,cAAc,EAAE,KAAK,EACxF,aAAa,EAAE;IACb,IAAI,EAAE,KAAK,CAAA;IACX,SAAS,EAAE,YAAY,CAAA;CACxB,GAAG,IAAI,CAAC,kBAAkB,CAAC,iBAAiB,CAAC,EAAE,MAAM,GAAG,SAAS,GAAG,WAAW,GAAG,KAAK,CAAC,GACxF,OAAO,CAAC,KAAK,CAAC,CAAA;AAEjB,wBAAsB,oBAAoB,CAAC,iBAAiB,SAAS,cAAc,EAAE,KAAK,EACxF,aAAa,EAAE;IACb,IAAI,EAAE,KAAK,CAAA;IACX,SAAS,EAAE,QAAQ,CAAA;CACpB,GAAG,IAAI,CAAC,kBAAkB,CAAC,iBAAiB,CAAC,EAAE,MAAM,GAAG,SAAS,GAAG,WAAW,GAAG,KAAK,CAAC,GACxF,OAAO,CAAC,KAAK,CAAC,CAAA;AAGjB,wBAAsB,oBAAoB,CAAC,iBAAiB,SAAS,cAAc,EAAE,KAAK,EACxF,aAAa,EAAE;IACb,IAAI,EAAE,KAAK,CAAA;IACX,SAAS,EAAE,YAAY,CAAA;CACxB,GAAG,IAAI,CAAC,kBAAkB,CAAC,iBAAiB,CAAC,EAAE,MAAM,GAAG,SAAS,GAAG,WAAW,GAAG,KAAK,CAAC,GACxF,OAAO,CAAC,KAAK,CAAC,CAAA;AAGjB,wBAAsB,oBAAoB,CACxC,iBAAiB,SAAS,cAAc,EACxC,CAAC,SAAS,MAAM,YAAY,CAAC,iBAAiB,CAAC,EAE/C,aAAa,EAAE;IAAE,SAAS,EAAE,CAAC,CAAA;CAAE,GAAG,IAAI,CAAC,kBAAkB,CAAC,iBAAiB,CAAC,EAAE,SAAS,GAAG,KAAK,CAAC,GAC/F,OAAO,CAAC,aAAa,CAAC,iBAAiB,EAAE,CAAC,CAAC,CAAC,CAAA"}
@@ -1,15 +1,8 @@
1
- import { assertBranchReadable } from '../../../branching/assertBranchReadable.js';
2
1
  import { operationToHookOperation } from './types.js';
3
2
  // Implementation
4
3
  export async function buildBeforeOperation(operationArgs) {
5
4
  const { args, collection, operation, overrideAccess } = operationArgs;
6
5
  let newArgs = args;
7
- if (!overrideAccess) {
8
- await assertBranchReadable({
9
- collectionSlug: collection.slug,
10
- req: args.req
11
- });
12
- }
13
6
  if (args.collection.config.hooks?.beforeOperation?.length) {
14
7
  // TODO: v4 should not need this mapping
15
8
  // Map the operation to the hook operation type for backward compatibility