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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (703) hide show
  1. package/dist/admin/adapters/router.d.ts +1 -1
  2. package/dist/admin/adapters/router.d.ts.map +1 -1
  3. package/dist/admin/adapters/router.js.map +1 -1
  4. package/dist/admin/forms/Diff.d.ts +0 -4
  5. package/dist/admin/forms/Diff.d.ts.map +1 -1
  6. package/dist/admin/forms/Diff.js.map +1 -1
  7. package/dist/admin/forms/Form.d.ts +0 -2
  8. package/dist/admin/forms/Form.d.ts.map +1 -1
  9. package/dist/admin/forms/Form.js.map +1 -1
  10. package/dist/admin/initAdminContext.d.ts.map +1 -1
  11. package/dist/admin/initAdminContext.js +0 -10
  12. package/dist/admin/initAdminContext.js.map +1 -1
  13. package/dist/auth/createAuthToken.d.ts +26 -0
  14. package/dist/auth/createAuthToken.d.ts.map +1 -0
  15. package/dist/auth/createAuthToken.js +39 -0
  16. package/dist/auth/createAuthToken.js.map +1 -0
  17. package/dist/auth/endpoints/refresh.d.ts.map +1 -1
  18. package/dist/auth/endpoints/refresh.js +2 -1
  19. package/dist/auth/endpoints/refresh.js.map +1 -1
  20. package/dist/auth/getFieldsToSign.js.map +1 -1
  21. package/dist/auth/loginWithCookie.d.ts.map +1 -1
  22. package/dist/auth/loginWithCookie.js +1 -0
  23. package/dist/auth/loginWithCookie.js.map +1 -1
  24. package/dist/auth/operations/local/login.d.ts.map +1 -1
  25. package/dist/auth/operations/local/login.js +1 -0
  26. package/dist/auth/operations/local/login.js.map +1 -1
  27. package/dist/auth/operations/login.d.ts +2 -0
  28. package/dist/auth/operations/login.d.ts.map +1 -1
  29. package/dist/auth/operations/login.js +6 -19
  30. package/dist/auth/operations/login.js.map +1 -1
  31. package/dist/auth/operations/refresh.d.ts +8 -0
  32. package/dist/auth/operations/refresh.d.ts.map +1 -1
  33. package/dist/auth/operations/refresh.js +50 -19
  34. package/dist/auth/operations/refresh.js.map +1 -1
  35. package/dist/auth/operations/resetPassword.d.ts.map +1 -1
  36. package/dist/auth/operations/resetPassword.js +54 -20
  37. package/dist/auth/operations/resetPassword.js.map +1 -1
  38. package/dist/auth/refreshAuthToken.d.ts +32 -0
  39. package/dist/auth/refreshAuthToken.d.ts.map +1 -0
  40. package/dist/auth/refreshAuthToken.js +113 -0
  41. package/dist/auth/refreshAuthToken.js.map +1 -0
  42. package/dist/auth/serverFunctions/cookies.js.map +1 -1
  43. package/dist/auth/serverFunctions/login.js.map +1 -1
  44. package/dist/auth/sessions.d.ts +9 -2
  45. package/dist/auth/sessions.d.ts.map +1 -1
  46. package/dist/auth/sessions.js +6 -5
  47. package/dist/auth/sessions.js.map +1 -1
  48. package/dist/auth/types.d.ts +25 -1
  49. package/dist/auth/types.d.ts.map +1 -1
  50. package/dist/auth/types.js.map +1 -1
  51. package/dist/cli/commands/data/utilities.d.ts +1 -1
  52. package/dist/cli/commands/data/utilities.d.ts.map +1 -1
  53. package/dist/cli/commands/data/utilities.js.map +1 -1
  54. package/dist/cli/defineCLICommand.js +1 -1
  55. package/dist/cli/defineCLICommand.js.map +1 -1
  56. package/dist/collections/config/client.d.ts +1 -1
  57. package/dist/collections/config/client.d.ts.map +1 -1
  58. package/dist/collections/config/client.js +0 -1
  59. package/dist/collections/config/client.js.map +1 -1
  60. package/dist/collections/config/defaults.d.ts +2 -0
  61. package/dist/collections/config/defaults.d.ts.map +1 -1
  62. package/dist/collections/config/defaults.js +4 -0
  63. package/dist/collections/config/defaults.js.map +1 -1
  64. package/dist/collections/config/sanitize.d.ts.map +1 -1
  65. package/dist/collections/config/sanitize.js +3 -0
  66. package/dist/collections/config/sanitize.js.map +1 -1
  67. package/dist/collections/config/sanitizeCompoundIndexes.d.ts.map +1 -1
  68. package/dist/collections/config/sanitizeCompoundIndexes.js +0 -9
  69. package/dist/collections/config/sanitizeCompoundIndexes.js.map +1 -1
  70. package/dist/collections/config/types.d.ts +4 -21
  71. package/dist/collections/config/types.d.ts.map +1 -1
  72. package/dist/collections/config/types.js.map +1 -1
  73. package/dist/collections/dataloader.d.ts +1 -10
  74. package/dist/collections/dataloader.d.ts.map +1 -1
  75. package/dist/collections/dataloader.js +6 -14
  76. package/dist/collections/dataloader.js.map +1 -1
  77. package/dist/collections/operations/create.d.ts.map +1 -1
  78. package/dist/collections/operations/create.js +0 -13
  79. package/dist/collections/operations/create.js.map +1 -1
  80. package/dist/collections/operations/delete.d.ts.map +1 -1
  81. package/dist/collections/operations/delete.js +121 -638
  82. package/dist/collections/operations/delete.js.map +1 -1
  83. package/dist/collections/operations/deleteByID.d.ts.map +1 -1
  84. package/dist/collections/operations/deleteByID.js +32 -238
  85. package/dist/collections/operations/deleteByID.js.map +1 -1
  86. package/dist/collections/operations/findByID.d.ts.map +1 -1
  87. package/dist/collections/operations/findByID.js +0 -6
  88. package/dist/collections/operations/findByID.js.map +1 -1
  89. package/dist/collections/operations/findDistinct.d.ts.map +1 -1
  90. package/dist/collections/operations/findDistinct.js +6 -7
  91. package/dist/collections/operations/findDistinct.js.map +1 -1
  92. package/dist/collections/operations/findVersionByID.d.ts.map +1 -1
  93. package/dist/collections/operations/findVersionByID.js +7 -0
  94. package/dist/collections/operations/findVersionByID.js.map +1 -1
  95. package/dist/collections/operations/findVersions.d.ts.map +1 -1
  96. package/dist/collections/operations/findVersions.js +5 -0
  97. package/dist/collections/operations/findVersions.js.map +1 -1
  98. package/dist/collections/operations/local/count.d.ts +4 -9
  99. package/dist/collections/operations/local/count.d.ts.map +1 -1
  100. package/dist/collections/operations/local/count.js.map +1 -1
  101. package/dist/collections/operations/local/countVersions.d.ts +0 -4
  102. package/dist/collections/operations/local/countVersions.d.ts.map +1 -1
  103. package/dist/collections/operations/local/countVersions.js.map +1 -1
  104. package/dist/collections/operations/local/create.d.ts +4 -9
  105. package/dist/collections/operations/local/create.d.ts.map +1 -1
  106. package/dist/collections/operations/local/create.js.map +1 -1
  107. package/dist/collections/operations/local/delete.d.ts +4 -9
  108. package/dist/collections/operations/local/delete.d.ts.map +1 -1
  109. package/dist/collections/operations/local/delete.js.map +1 -1
  110. package/dist/collections/operations/local/duplicate.d.ts +0 -5
  111. package/dist/collections/operations/local/duplicate.d.ts.map +1 -1
  112. package/dist/collections/operations/local/duplicate.js.map +1 -1
  113. package/dist/collections/operations/local/find.d.ts +4 -9
  114. package/dist/collections/operations/local/find.d.ts.map +1 -1
  115. package/dist/collections/operations/local/find.js.map +1 -1
  116. package/dist/collections/operations/local/findByID.d.ts +4 -9
  117. package/dist/collections/operations/local/findByID.d.ts.map +1 -1
  118. package/dist/collections/operations/local/findByID.js.map +1 -1
  119. package/dist/collections/operations/local/findDistinct.d.ts +0 -5
  120. package/dist/collections/operations/local/findDistinct.d.ts.map +1 -1
  121. package/dist/collections/operations/local/findDistinct.js.map +1 -1
  122. package/dist/collections/operations/local/findVersionByID.d.ts +0 -5
  123. package/dist/collections/operations/local/findVersionByID.d.ts.map +1 -1
  124. package/dist/collections/operations/local/findVersionByID.js.map +1 -1
  125. package/dist/collections/operations/local/findVersions.d.ts +0 -5
  126. package/dist/collections/operations/local/findVersions.d.ts.map +1 -1
  127. package/dist/collections/operations/local/findVersions.js.map +1 -1
  128. package/dist/collections/operations/local/restoreVersion.d.ts +0 -5
  129. package/dist/collections/operations/local/restoreVersion.d.ts.map +1 -1
  130. package/dist/collections/operations/local/restoreVersion.js.map +1 -1
  131. package/dist/collections/operations/local/update.d.ts +4 -9
  132. package/dist/collections/operations/local/update.d.ts.map +1 -1
  133. package/dist/collections/operations/local/update.js.map +1 -1
  134. package/dist/collections/operations/renameFile.js +1 -1
  135. package/dist/collections/operations/renameFile.js.map +1 -1
  136. package/dist/collections/operations/restoreVersion.d.ts.map +1 -1
  137. package/dist/collections/operations/restoreVersion.js +76 -157
  138. package/dist/collections/operations/restoreVersion.js.map +1 -1
  139. package/dist/collections/operations/update.d.ts.map +1 -1
  140. package/dist/collections/operations/update.js +171 -357
  141. package/dist/collections/operations/update.js.map +1 -1
  142. package/dist/collections/operations/updateByID.d.ts +0 -15
  143. package/dist/collections/operations/updateByID.d.ts.map +1 -1
  144. package/dist/collections/operations/updateByID.js +60 -265
  145. package/dist/collections/operations/updateByID.js.map +1 -1
  146. package/dist/collections/operations/utilities/buildBeforeOperation.d.ts.map +1 -1
  147. package/dist/collections/operations/utilities/buildBeforeOperation.js +0 -7
  148. package/dist/collections/operations/utilities/buildBeforeOperation.js.map +1 -1
  149. package/dist/collections/operations/utilities/update.d.ts +1 -14
  150. package/dist/collections/operations/utilities/update.d.ts.map +1 -1
  151. package/dist/collections/operations/utilities/update.js +20 -92
  152. package/dist/collections/operations/utilities/update.js.map +1 -1
  153. package/dist/collections/operations/validate.js +4 -4
  154. package/dist/collections/operations/validate.js.map +1 -1
  155. package/dist/config/client.d.ts +1 -3
  156. package/dist/config/client.d.ts.map +1 -1
  157. package/dist/config/client.js +1 -9
  158. package/dist/config/client.js.map +1 -1
  159. package/dist/config/defaults.d.ts.map +1 -1
  160. package/dist/config/defaults.js +1 -0
  161. package/dist/config/defaults.js.map +1 -1
  162. package/dist/config/definePlugin.js.map +1 -1
  163. package/dist/config/sanitize.d.ts.map +1 -1
  164. package/dist/config/sanitize.js +2 -40
  165. package/dist/config/sanitize.js.map +1 -1
  166. package/dist/config/types.d.ts +13 -21
  167. package/dist/config/types.d.ts.map +1 -1
  168. package/dist/config/types.js.map +1 -1
  169. package/dist/database/defaultCopy.d.ts.map +1 -1
  170. package/dist/database/defaultCopy.js +0 -1
  171. package/dist/database/defaultCopy.js.map +1 -1
  172. package/dist/database/types.d.ts +4 -75
  173. package/dist/database/types.d.ts.map +1 -1
  174. package/dist/database/types.js.map +1 -1
  175. package/dist/exports/build-config.d.ts +9 -0
  176. package/dist/exports/build-config.d.ts.map +1 -0
  177. package/dist/exports/build-config.js +38 -0
  178. package/dist/exports/build-config.js.map +1 -0
  179. package/dist/exports/shared.d.ts +0 -2
  180. package/dist/exports/shared.d.ts.map +1 -1
  181. package/dist/exports/shared.js +0 -2
  182. package/dist/exports/shared.js.map +1 -1
  183. package/dist/fields/baseFields/authorship/index.d.ts +1 -2
  184. package/dist/fields/baseFields/authorship/index.d.ts.map +1 -1
  185. package/dist/fields/baseFields/authorship/index.js +0 -12
  186. package/dist/fields/baseFields/authorship/index.js.map +1 -1
  187. package/dist/fields/config/client.js.map +1 -1
  188. package/dist/fields/config/reservedFieldNames.d.ts.map +1 -1
  189. package/dist/fields/config/reservedFieldNames.js.map +1 -1
  190. package/dist/fields/config/types.d.ts.map +1 -1
  191. package/dist/fields/config/types.js.map +1 -1
  192. package/dist/fields/hooks/afterChange/promise.js.map +1 -1
  193. package/dist/fields/hooks/afterRead/index.d.ts +0 -8
  194. package/dist/fields/hooks/afterRead/index.d.ts.map +1 -1
  195. package/dist/fields/hooks/afterRead/index.js +2 -6
  196. package/dist/fields/hooks/afterRead/index.js.map +1 -1
  197. package/dist/fields/hooks/afterRead/promise.d.ts +1 -3
  198. package/dist/fields/hooks/afterRead/promise.d.ts.map +1 -1
  199. package/dist/fields/hooks/afterRead/promise.js +17 -41
  200. package/dist/fields/hooks/afterRead/promise.js.map +1 -1
  201. package/dist/fields/hooks/afterRead/relationshipPopulationPromise.d.ts.map +1 -1
  202. package/dist/fields/hooks/afterRead/relationshipPopulationPromise.js +0 -2
  203. package/dist/fields/hooks/afterRead/relationshipPopulationPromise.js.map +1 -1
  204. package/dist/fields/hooks/afterRead/traverseFields.d.ts +1 -3
  205. package/dist/fields/hooks/afterRead/traverseFields.d.ts.map +1 -1
  206. package/dist/fields/hooks/afterRead/traverseFields.js +2 -4
  207. package/dist/fields/hooks/afterRead/traverseFields.js.map +1 -1
  208. package/dist/fields/hooks/afterRead/virtualFieldPopulationPromise.d.ts.map +1 -1
  209. package/dist/fields/hooks/afterRead/virtualFieldPopulationPromise.js +0 -3
  210. package/dist/fields/hooks/afterRead/virtualFieldPopulationPromise.js.map +1 -1
  211. package/dist/fields/hooks/beforeChange/flattenValidationData.d.ts +14 -0
  212. package/dist/fields/hooks/beforeChange/flattenValidationData.d.ts.map +1 -0
  213. package/dist/fields/hooks/beforeChange/flattenValidationData.js +36 -0
  214. package/dist/fields/hooks/beforeChange/flattenValidationData.js.map +1 -0
  215. package/dist/fields/hooks/beforeChange/promise.d.ts +2 -1
  216. package/dist/fields/hooks/beforeChange/promise.d.ts.map +1 -1
  217. package/dist/fields/hooks/beforeChange/promise.js +96 -22
  218. package/dist/fields/hooks/beforeChange/promise.js.map +1 -1
  219. package/dist/fields/hooks/beforeChange/traverseFields.d.ts +2 -1
  220. package/dist/fields/hooks/beforeChange/traverseFields.d.ts.map +1 -1
  221. package/dist/fields/hooks/beforeChange/traverseFields.js +2 -1
  222. package/dist/fields/hooks/beforeChange/traverseFields.js.map +1 -1
  223. package/dist/fields/hooks/beforeValidate/promise.d.ts.map +1 -1
  224. package/dist/fields/hooks/beforeValidate/promise.js +0 -8
  225. package/dist/fields/hooks/beforeValidate/promise.js.map +1 -1
  226. package/dist/fields/validations.d.ts.map +1 -1
  227. package/dist/fields/validations.js +4 -1
  228. package/dist/fields/validations.js.map +1 -1
  229. package/dist/globals/config/types.d.ts +2 -6
  230. package/dist/globals/config/types.d.ts.map +1 -1
  231. package/dist/globals/config/types.js.map +1 -1
  232. package/dist/globals/operations/countGlobalVersions.d.ts.map +1 -1
  233. package/dist/globals/operations/countGlobalVersions.js +0 -7
  234. package/dist/globals/operations/countGlobalVersions.js.map +1 -1
  235. package/dist/globals/operations/findOne.d.ts.map +1 -1
  236. package/dist/globals/operations/findOne.js +0 -7
  237. package/dist/globals/operations/findOne.js.map +1 -1
  238. package/dist/globals/operations/findVersionByID.d.ts.map +1 -1
  239. package/dist/globals/operations/findVersionByID.js +6 -6
  240. package/dist/globals/operations/findVersionByID.js.map +1 -1
  241. package/dist/globals/operations/findVersions.d.ts.map +1 -1
  242. package/dist/globals/operations/findVersions.js +4 -6
  243. package/dist/globals/operations/findVersions.js.map +1 -1
  244. package/dist/globals/operations/local/countVersions.d.ts +0 -5
  245. package/dist/globals/operations/local/countVersions.d.ts.map +1 -1
  246. package/dist/globals/operations/local/countVersions.js.map +1 -1
  247. package/dist/globals/operations/local/findOne.d.ts +0 -5
  248. package/dist/globals/operations/local/findOne.d.ts.map +1 -1
  249. package/dist/globals/operations/local/findOne.js.map +1 -1
  250. package/dist/globals/operations/local/findVersionByID.d.ts +0 -5
  251. package/dist/globals/operations/local/findVersionByID.d.ts.map +1 -1
  252. package/dist/globals/operations/local/findVersionByID.js.map +1 -1
  253. package/dist/globals/operations/local/findVersions.d.ts +0 -5
  254. package/dist/globals/operations/local/findVersions.d.ts.map +1 -1
  255. package/dist/globals/operations/local/findVersions.js.map +1 -1
  256. package/dist/globals/operations/local/restoreVersion.d.ts +0 -5
  257. package/dist/globals/operations/local/restoreVersion.d.ts.map +1 -1
  258. package/dist/globals/operations/local/restoreVersion.js.map +1 -1
  259. package/dist/globals/operations/local/update.d.ts +0 -5
  260. package/dist/globals/operations/local/update.d.ts.map +1 -1
  261. package/dist/globals/operations/local/update.js +18 -61
  262. package/dist/globals/operations/local/update.js.map +1 -1
  263. package/dist/globals/operations/restoreVersion.d.ts +2 -3
  264. package/dist/globals/operations/restoreVersion.d.ts.map +1 -1
  265. package/dist/globals/operations/restoreVersion.js +24 -61
  266. package/dist/globals/operations/restoreVersion.js.map +1 -1
  267. package/dist/globals/operations/update.d.ts.map +1 -1
  268. package/dist/globals/operations/update.js +8 -86
  269. package/dist/globals/operations/update.js.map +1 -1
  270. package/dist/globals/operations/validate.js +1 -1
  271. package/dist/globals/operations/validate.js.map +1 -1
  272. package/dist/hierarchy/addHierarchyToCollection.d.ts.map +1 -1
  273. package/dist/hierarchy/addHierarchyToCollection.js +32 -21
  274. package/dist/hierarchy/addHierarchyToCollection.js.map +1 -1
  275. package/dist/hierarchy/createFolderField.js.map +1 -1
  276. package/dist/hierarchy/getInitialTreeData.d.ts +1 -3
  277. package/dist/hierarchy/getInitialTreeData.d.ts.map +1 -1
  278. package/dist/hierarchy/getInitialTreeData.js +1 -4
  279. package/dist/hierarchy/getInitialTreeData.js.map +1 -1
  280. package/dist/hierarchy/resolveHierarchyCollections.js +9 -3
  281. package/dist/hierarchy/resolveHierarchyCollections.js.map +1 -1
  282. package/dist/hierarchy/utils/computePaths.d.ts.map +1 -1
  283. package/dist/hierarchy/utils/computePaths.js.map +1 -1
  284. package/dist/index.bundled.d.ts +4336 -5501
  285. package/dist/index.d.ts +27 -51
  286. package/dist/index.d.ts.map +1 -1
  287. package/dist/index.js +14 -37
  288. package/dist/index.js.map +1 -1
  289. package/dist/llm-instructions/getInstructionsCollection.d.ts.map +1 -1
  290. package/dist/llm-instructions/getInstructionsCollection.js +2 -0
  291. package/dist/llm-instructions/getInstructionsCollection.js.map +1 -1
  292. package/dist/preferences/keys.d.ts +4 -11
  293. package/dist/preferences/keys.d.ts.map +1 -1
  294. package/dist/preferences/keys.js +3 -10
  295. package/dist/preferences/keys.js.map +1 -1
  296. package/dist/preferences/types.d.ts +0 -19
  297. package/dist/preferences/types.d.ts.map +1 -1
  298. package/dist/preferences/types.js.map +1 -1
  299. package/dist/queues/operations/runJobs/runJob/getRunTaskFunction.js +1 -1
  300. package/dist/queues/operations/runJobs/runJob/getRunTaskFunction.js.map +1 -1
  301. package/dist/types/index.d.ts +0 -13
  302. package/dist/types/index.d.ts.map +1 -1
  303. package/dist/types/index.js.map +1 -1
  304. package/dist/uploads/deleteAssociatedFiles.d.ts.map +1 -1
  305. package/dist/uploads/deleteAssociatedFiles.js +29 -108
  306. package/dist/uploads/deleteAssociatedFiles.js.map +1 -1
  307. package/dist/uploads/endpoints/getFile.d.ts.map +1 -1
  308. package/dist/uploads/endpoints/getFile.js +0 -5
  309. package/dist/uploads/endpoints/getFile.js.map +1 -1
  310. package/dist/uploads/fileExists.d.ts.map +1 -1
  311. package/dist/uploads/fileExists.js +2 -5
  312. package/dist/uploads/fileExists.js.map +1 -1
  313. package/dist/uploads/fileVersioning/archive.d.ts.map +1 -1
  314. package/dist/uploads/fileVersioning/archive.js +1 -15
  315. package/dist/uploads/fileVersioning/archive.js.map +1 -1
  316. package/dist/uploads/fileVersioning/cleanup.d.ts +0 -7
  317. package/dist/uploads/fileVersioning/cleanup.d.ts.map +1 -1
  318. package/dist/uploads/fileVersioning/cleanup.js +0 -12
  319. package/dist/uploads/fileVersioning/cleanup.js.map +1 -1
  320. package/dist/uploads/fileVersioning/cloudStorage.d.ts.map +1 -1
  321. package/dist/uploads/fileVersioning/cloudStorage.js +1 -16
  322. package/dist/uploads/fileVersioning/cloudStorage.js.map +1 -1
  323. package/dist/uploads/fileVersioning/resolveHistoricalFile.js.map +1 -1
  324. package/dist/uploads/formatFilesize.js +1 -1
  325. package/dist/uploads/formatFilesize.js.map +1 -1
  326. package/dist/uploads/generateFileData.d.ts +0 -5
  327. package/dist/uploads/generateFileData.d.ts.map +1 -1
  328. package/dist/uploads/generateFileData.js +2 -74
  329. package/dist/uploads/generateFileData.js.map +1 -1
  330. package/dist/uploads/getBaseFields.d.ts.map +1 -1
  331. package/dist/uploads/getBaseFields.js +29 -46
  332. package/dist/uploads/getBaseFields.js.map +1 -1
  333. package/dist/uploads/getFileContentRequirement.js.map +1 -1
  334. package/dist/uploads/getFileFromUploadInstructions.js.map +1 -1
  335. package/dist/uploads/getSafeFilename.d.ts.map +1 -1
  336. package/dist/uploads/getSafeFilename.js +3 -5
  337. package/dist/uploads/getSafeFilename.js.map +1 -1
  338. package/dist/uploads/safeFetch.js.map +1 -1
  339. package/dist/uploads/stagedUpload.js.map +1 -1
  340. package/dist/uploads/transformers/handleDynamicFileRequest.js +11 -2
  341. package/dist/uploads/transformers/handleDynamicFileRequest.js.map +1 -1
  342. package/dist/uploads/types.d.ts +0 -11
  343. package/dist/uploads/types.d.ts.map +1 -1
  344. package/dist/uploads/types.js.map +1 -1
  345. package/dist/uploads/uploadFiles.d.ts +1 -4
  346. package/dist/uploads/uploadFiles.d.ts.map +1 -1
  347. package/dist/uploads/uploadFiles.js +5 -29
  348. package/dist/uploads/uploadFiles.js.map +1 -1
  349. package/dist/utilities/addSelectGenericsToGeneretedTypes.d.ts.map +1 -1
  350. package/dist/utilities/addSelectGenericsToGeneretedTypes.js +0 -1
  351. package/dist/utilities/addSelectGenericsToGeneretedTypes.js.map +1 -1
  352. package/dist/utilities/appendDateTimezoneSelectFields.js.map +1 -1
  353. package/dist/utilities/assertNoValidationWrite.d.ts.map +1 -1
  354. package/dist/utilities/assertNoValidationWrite.js +0 -4
  355. package/dist/utilities/assertNoValidationWrite.js.map +1 -1
  356. package/dist/utilities/checkDocumentLockStatus.d.ts +6 -15
  357. package/dist/utilities/checkDocumentLockStatus.d.ts.map +1 -1
  358. package/dist/utilities/checkDocumentLockStatus.js +11 -44
  359. package/dist/utilities/checkDocumentLockStatus.js.map +1 -1
  360. package/dist/utilities/cloneValidationRequest.js.map +1 -1
  361. package/dist/utilities/commitTransaction.d.ts +0 -4
  362. package/dist/utilities/commitTransaction.d.ts.map +1 -1
  363. package/dist/utilities/commitTransaction.js +1 -41
  364. package/dist/utilities/commitTransaction.js.map +1 -1
  365. package/dist/utilities/configToJSONSchema.d.ts.map +1 -1
  366. package/dist/utilities/configToJSONSchema.js +2 -18
  367. package/dist/utilities/configToJSONSchema.js.map +1 -1
  368. package/dist/utilities/createPayloadRequest.d.ts +0 -5
  369. package/dist/utilities/createPayloadRequest.d.ts.map +1 -1
  370. package/dist/utilities/createPayloadRequest.js +3 -50
  371. package/dist/utilities/createPayloadRequest.js.map +1 -1
  372. package/dist/utilities/createPayloadRequestFromWebRequest.d.ts +12 -1
  373. package/dist/utilities/createPayloadRequestFromWebRequest.d.ts.map +1 -1
  374. package/dist/utilities/createPayloadRequestFromWebRequest.js +9 -5
  375. package/dist/utilities/createPayloadRequestFromWebRequest.js.map +1 -1
  376. package/dist/utilities/deepCopyObject.js.map +1 -1
  377. package/dist/utilities/documentMatchingWhereExists.js +1 -1
  378. package/dist/utilities/documentMatchingWhereExists.js.map +1 -1
  379. package/dist/utilities/entityInputSchema/validateEntityData.d.ts.map +1 -1
  380. package/dist/utilities/entityInputSchema/validateEntityData.js.map +1 -1
  381. package/dist/utilities/filterDataToSelectedLocales.js.map +1 -1
  382. package/dist/utilities/getEntityPermissions/getEntityPermissions.d.ts.map +1 -1
  383. package/dist/utilities/getEntityPermissions/getEntityPermissions.js +1 -0
  384. package/dist/utilities/getEntityPermissions/getEntityPermissions.js.map +1 -1
  385. package/dist/utilities/getEntityPermissions/populateFieldPermissions.js.map +1 -1
  386. package/dist/utilities/getVersionsConfig.d.ts +4 -0
  387. package/dist/utilities/getVersionsConfig.d.ts.map +1 -1
  388. package/dist/utilities/getVersionsConfig.js +5 -0
  389. package/dist/utilities/getVersionsConfig.js.map +1 -1
  390. package/dist/utilities/handleEndpoints.d.ts.map +1 -1
  391. package/dist/utilities/handleEndpoints.js +10 -9
  392. package/dist/utilities/handleEndpoints.js.map +1 -1
  393. package/dist/utilities/httpStatus.d.ts +0 -2
  394. package/dist/utilities/httpStatus.d.ts.map +1 -1
  395. package/dist/utilities/httpStatus.js +1 -3
  396. package/dist/utilities/httpStatus.js.map +1 -1
  397. package/dist/utilities/initTransaction.d.ts.map +1 -1
  398. package/dist/utilities/initTransaction.js +7 -35
  399. package/dist/utilities/initTransaction.js.map +1 -1
  400. package/dist/utilities/killTransaction.d.ts.map +1 -1
  401. package/dist/utilities/killTransaction.js +0 -27
  402. package/dist/utilities/killTransaction.js.map +1 -1
  403. package/dist/utilities/parseParams/index.js.map +1 -1
  404. package/dist/utilities/parseValidationLocale.js.map +1 -1
  405. package/dist/utilities/sanitizePopulateParam.js.map +1 -1
  406. package/dist/utilities/telemetry/conf/index.d.ts +4 -1
  407. package/dist/utilities/telemetry/conf/index.d.ts.map +1 -1
  408. package/dist/utilities/telemetry/conf/index.js.map +1 -1
  409. package/dist/utilities/telemetry/featureInfo/getFeatureInfo.js.map +1 -1
  410. package/dist/versions/allLocalesPublicationStatus.js.map +1 -1
  411. package/dist/versions/buildCollectionFields.d.ts.map +1 -1
  412. package/dist/versions/buildCollectionFields.js +0 -23
  413. package/dist/versions/buildCollectionFields.js.map +1 -1
  414. package/dist/versions/buildGlobalFields.d.ts.map +1 -1
  415. package/dist/versions/buildGlobalFields.js +0 -14
  416. package/dist/versions/buildGlobalFields.js.map +1 -1
  417. package/dist/versions/buildVersionCompoundIndexes.d.ts.map +1 -1
  418. package/dist/versions/buildVersionCompoundIndexes.js +2 -8
  419. package/dist/versions/buildVersionCompoundIndexes.js.map +1 -1
  420. package/dist/versions/deleteCollectionVersions.d.ts +1 -2
  421. package/dist/versions/deleteCollectionVersions.d.ts.map +1 -1
  422. package/dist/versions/deleteCollectionVersions.js +8 -37
  423. package/dist/versions/deleteCollectionVersions.js.map +1 -1
  424. package/dist/versions/deleteScheduledPublishJobs.d.ts.map +1 -1
  425. package/dist/versions/deleteScheduledPublishJobs.js +0 -4
  426. package/dist/versions/deleteScheduledPublishJobs.js.map +1 -1
  427. package/dist/versions/drafts/appendVersionToQueryKey.d.ts.map +1 -1
  428. package/dist/versions/drafts/appendVersionToQueryKey.js +1 -9
  429. package/dist/versions/drafts/appendVersionToQueryKey.js.map +1 -1
  430. package/dist/versions/drafts/replaceWithDraftIfAvailable.d.ts.map +1 -1
  431. package/dist/versions/drafts/replaceWithDraftIfAvailable.js +1 -8
  432. package/dist/versions/drafts/replaceWithDraftIfAvailable.js.map +1 -1
  433. package/dist/versions/enforceMaxVersions.d.ts +0 -1
  434. package/dist/versions/enforceMaxVersions.d.ts.map +1 -1
  435. package/dist/versions/enforceMaxVersions.js +6 -22
  436. package/dist/versions/enforceMaxVersions.js.map +1 -1
  437. package/dist/versions/getLatestCollectionVersion.d.ts.map +1 -1
  438. package/dist/versions/getLatestCollectionVersion.js +2 -10
  439. package/dist/versions/getLatestCollectionVersion.js.map +1 -1
  440. package/dist/versions/getLatestGlobalVersion.d.ts +2 -6
  441. package/dist/versions/getLatestGlobalVersion.d.ts.map +1 -1
  442. package/dist/versions/getLatestGlobalVersion.js +21 -65
  443. package/dist/versions/getLatestGlobalVersion.js.map +1 -1
  444. package/dist/versions/isInheritedReadVersionsAccess.js.map +1 -1
  445. package/dist/versions/saveVersion.d.ts +0 -7
  446. package/dist/versions/saveVersion.d.ts.map +1 -1
  447. package/dist/versions/saveVersion.js +4 -27
  448. package/dist/versions/saveVersion.js.map +1 -1
  449. package/dist/versions/updateLatestVersion.d.ts +0 -1
  450. package/dist/versions/updateLatestVersion.d.ts.map +1 -1
  451. package/dist/versions/updateLatestVersion.js +7 -24
  452. package/dist/versions/updateLatestVersion.js.map +1 -1
  453. package/package.json +30 -28
  454. package/skills/payload/reference/ENDPOINTS.md +3 -9
  455. package/skills/payload/reference/PLUGIN-DEVELOPMENT.md +4 -4
  456. package/dist/admin/getAdminPreferences.d.ts +0 -10
  457. package/dist/admin/getAdminPreferences.d.ts.map +0 -1
  458. package/dist/admin/getAdminPreferences.js +0 -53
  459. package/dist/admin/getAdminPreferences.js.map +0 -1
  460. package/dist/admin/getRequestBranch.d.ts +0 -6
  461. package/dist/admin/getRequestBranch.d.ts.map +0 -1
  462. package/dist/admin/getRequestBranch.js +0 -17
  463. package/dist/admin/getRequestBranch.js.map +0 -1
  464. package/dist/branching/appendBranchFilter.d.ts +0 -30
  465. package/dist/branching/appendBranchFilter.d.ts.map +0 -1
  466. package/dist/branching/appendBranchFilter.js +0 -105
  467. package/dist/branching/appendBranchFilter.js.map +0 -1
  468. package/dist/branching/assertBranchAccess.d.ts +0 -10
  469. package/dist/branching/assertBranchAccess.d.ts.map +0 -1
  470. package/dist/branching/assertBranchAccess.js +0 -36
  471. package/dist/branching/assertBranchAccess.js.map +0 -1
  472. package/dist/branching/assertBranchActionAccess.d.ts +0 -10
  473. package/dist/branching/assertBranchActionAccess.d.ts.map +0 -1
  474. package/dist/branching/assertBranchActionAccess.js +0 -15
  475. package/dist/branching/assertBranchActionAccess.js.map +0 -1
  476. package/dist/branching/assertBranchCreatedDocumentsUnreferenced.d.ts +0 -53
  477. package/dist/branching/assertBranchCreatedDocumentsUnreferenced.d.ts.map +0 -1
  478. package/dist/branching/assertBranchCreatedDocumentsUnreferenced.js +0 -833
  479. package/dist/branching/assertBranchCreatedDocumentsUnreferenced.js.map +0 -1
  480. package/dist/branching/assertBranchReadable.d.ts +0 -36
  481. package/dist/branching/assertBranchReadable.d.ts.map +0 -1
  482. package/dist/branching/assertBranchReadable.js +0 -83
  483. package/dist/branching/assertBranchReadable.js.map +0 -1
  484. package/dist/branching/assertBranchUpdateAccess.d.ts +0 -8
  485. package/dist/branching/assertBranchUpdateAccess.d.ts.map +0 -1
  486. package/dist/branching/assertBranchUpdateAccess.js +0 -12
  487. package/dist/branching/assertBranchUpdateAccess.js.map +0 -1
  488. package/dist/branching/assertBranchWritable.d.ts +0 -18
  489. package/dist/branching/assertBranchWritable.d.ts.map +0 -1
  490. package/dist/branching/assertBranchWritable.js +0 -46
  491. package/dist/branching/assertBranchWritable.js.map +0 -1
  492. package/dist/branching/branchIDs.d.ts +0 -38
  493. package/dist/branching/branchIDs.d.ts.map +0 -1
  494. package/dist/branching/branchIDs.js +0 -113
  495. package/dist/branching/branchIDs.js.map +0 -1
  496. package/dist/branching/branchSelect.d.ts +0 -42
  497. package/dist/branching/branchSelect.d.ts.map +0 -1
  498. package/dist/branching/branchSelect.js +0 -97
  499. package/dist/branching/branchSelect.js.map +0 -1
  500. package/dist/branching/checkFieldAccess.d.ts +0 -21
  501. package/dist/branching/checkFieldAccess.d.ts.map +0 -1
  502. package/dist/branching/checkFieldAccess.js +0 -238
  503. package/dist/branching/checkFieldAccess.js.map +0 -1
  504. package/dist/branching/collections.d.ts +0 -14
  505. package/dist/branching/collections.d.ts.map +0 -1
  506. package/dist/branching/collections.js +0 -713
  507. package/dist/branching/collections.js.map +0 -1
  508. package/dist/branching/combineBranchAccess.d.ts +0 -6
  509. package/dist/branching/combineBranchAccess.d.ts.map +0 -1
  510. package/dist/branching/combineBranchAccess.js +0 -22
  511. package/dist/branching/combineBranchAccess.js.map +0 -1
  512. package/dist/branching/copyUploadFilesToBranch.d.ts +0 -9
  513. package/dist/branching/copyUploadFilesToBranch.d.ts.map +0 -1
  514. package/dist/branching/copyUploadFilesToBranch.js +0 -126
  515. package/dist/branching/copyUploadFilesToBranch.js.map +0 -1
  516. package/dist/branching/createShadowRow.d.ts +0 -70
  517. package/dist/branching/createShadowRow.d.ts.map +0 -1
  518. package/dist/branching/createShadowRow.js +0 -296
  519. package/dist/branching/createShadowRow.js.map +0 -1
  520. package/dist/branching/discard.d.ts +0 -52
  521. package/dist/branching/discard.d.ts.map +0 -1
  522. package/dist/branching/discard.js +0 -428
  523. package/dist/branching/discard.js.map +0 -1
  524. package/dist/branching/effectiveOperations.d.ts +0 -55
  525. package/dist/branching/effectiveOperations.d.ts.map +0 -1
  526. package/dist/branching/effectiveOperations.js +0 -472
  527. package/dist/branching/effectiveOperations.js.map +0 -1
  528. package/dist/branching/endpoints/discard.d.ts +0 -15
  529. package/dist/branching/endpoints/discard.d.ts.map +0 -1
  530. package/dist/branching/endpoints/discard.js +0 -55
  531. package/dist/branching/endpoints/discard.js.map +0 -1
  532. package/dist/branching/endpoints/merge.d.ts +0 -34
  533. package/dist/branching/endpoints/merge.d.ts.map +0 -1
  534. package/dist/branching/endpoints/merge.js +0 -119
  535. package/dist/branching/endpoints/merge.js.map +0 -1
  536. package/dist/branching/forkDocument.d.ts +0 -20
  537. package/dist/branching/forkDocument.d.ts.map +0 -1
  538. package/dist/branching/forkDocument.js +0 -169
  539. package/dist/branching/forkDocument.js.map +0 -1
  540. package/dist/branching/globalMergeWrites.d.ts +0 -21
  541. package/dist/branching/globalMergeWrites.d.ts.map +0 -1
  542. package/dist/branching/globalMergeWrites.js +0 -146
  543. package/dist/branching/globalMergeWrites.js.map +0 -1
  544. package/dist/branching/globals.d.ts +0 -49
  545. package/dist/branching/globals.d.ts.map +0 -1
  546. package/dist/branching/globals.js +0 -197
  547. package/dist/branching/globals.js.map +0 -1
  548. package/dist/branching/hooks.d.ts +0 -24
  549. package/dist/branching/hooks.d.ts.map +0 -1
  550. package/dist/branching/hooks.js +0 -92
  551. package/dist/branching/hooks.js.map +0 -1
  552. package/dist/branching/injectBranchFields.d.ts +0 -40
  553. package/dist/branching/injectBranchFields.d.ts.map +0 -1
  554. package/dist/branching/injectBranchFields.js +0 -229
  555. package/dist/branching/injectBranchFields.js.map +0 -1
  556. package/dist/branching/merge/applyMergeChange.d.ts +0 -27
  557. package/dist/branching/merge/applyMergeChange.d.ts.map +0 -1
  558. package/dist/branching/merge/applyMergeChange.js +0 -853
  559. package/dist/branching/merge/applyMergeChange.js.map +0 -1
  560. package/dist/branching/merge/branchMergeStatus.d.ts +0 -12
  561. package/dist/branching/merge/branchMergeStatus.d.ts.map +0 -1
  562. package/dist/branching/merge/branchMergeStatus.js +0 -74
  563. package/dist/branching/merge/branchMergeStatus.js.map +0 -1
  564. package/dist/branching/merge/executeMerge.d.ts +0 -22
  565. package/dist/branching/merge/executeMerge.d.ts.map +0 -1
  566. package/dist/branching/merge/executeMerge.js +0 -600
  567. package/dist/branching/merge/executeMerge.js.map +0 -1
  568. package/dist/branching/merge/finalizeMerge.d.ts +0 -40
  569. package/dist/branching/merge/finalizeMerge.d.ts.map +0 -1
  570. package/dist/branching/merge/finalizeMerge.js +0 -237
  571. package/dist/branching/merge/finalizeMerge.js.map +0 -1
  572. package/dist/branching/merge/mergeLedger.d.ts +0 -40
  573. package/dist/branching/merge/mergeLedger.d.ts.map +0 -1
  574. package/dist/branching/merge/mergeLedger.js +0 -130
  575. package/dist/branching/merge/mergeLedger.js.map +0 -1
  576. package/dist/branching/merge/prepareMerge.d.ts +0 -41
  577. package/dist/branching/merge/prepareMerge.d.ts.map +0 -1
  578. package/dist/branching/merge/prepareMerge.js +0 -234
  579. package/dist/branching/merge/prepareMerge.js.map +0 -1
  580. package/dist/branching/merge/recoverMerge.d.ts +0 -16
  581. package/dist/branching/merge/recoverMerge.d.ts.map +0 -1
  582. package/dist/branching/merge/recoverMerge.js +0 -199
  583. package/dist/branching/merge/recoverMerge.js.map +0 -1
  584. package/dist/branching/merge/retryFailedCleanups.d.ts +0 -36
  585. package/dist/branching/merge/retryFailedCleanups.d.ts.map +0 -1
  586. package/dist/branching/merge/retryFailedCleanups.js +0 -335
  587. package/dist/branching/merge/retryFailedCleanups.js.map +0 -1
  588. package/dist/branching/merge/utilities.d.ts +0 -35
  589. package/dist/branching/merge/utilities.d.ts.map +0 -1
  590. package/dist/branching/merge/utilities.js +0 -54
  591. package/dist/branching/merge/utilities.js.map +0 -1
  592. package/dist/branching/merge.d.ts +0 -88
  593. package/dist/branching/merge.d.ts.map +0 -1
  594. package/dist/branching/merge.js +0 -163
  595. package/dist/branching/merge.js.map +0 -1
  596. package/dist/branching/mergeWriteGuard.d.ts +0 -20
  597. package/dist/branching/mergeWriteGuard.d.ts.map +0 -1
  598. package/dist/branching/mergeWriteGuard.js +0 -27
  599. package/dist/branching/mergeWriteGuard.js.map +0 -1
  600. package/dist/branching/preflight.d.ts +0 -71
  601. package/dist/branching/preflight.d.ts.map +0 -1
  602. package/dist/branching/preflight.js +0 -757
  603. package/dist/branching/preflight.js.map +0 -1
  604. package/dist/branching/readLocalizedBranchWrite.d.ts +0 -14
  605. package/dist/branching/readLocalizedBranchWrite.d.ts.map +0 -1
  606. package/dist/branching/readLocalizedBranchWrite.js +0 -90
  607. package/dist/branching/readLocalizedBranchWrite.js.map +0 -1
  608. package/dist/branching/readMergeSnapshot.d.ts +0 -18
  609. package/dist/branching/readMergeSnapshot.d.ts.map +0 -1
  610. package/dist/branching/readMergeSnapshot.js +0 -99
  611. package/dist/branching/readMergeSnapshot.js.map +0 -1
  612. package/dist/branching/resolveBranch.d.ts +0 -153
  613. package/dist/branching/resolveBranch.d.ts.map +0 -1
  614. package/dist/branching/resolveBranch.js +0 -363
  615. package/dist/branching/resolveBranch.js.map +0 -1
  616. package/dist/branching/resolveBranchActionAccess.d.ts +0 -8
  617. package/dist/branching/resolveBranchActionAccess.d.ts.map +0 -1
  618. package/dist/branching/resolveBranchActionAccess.js +0 -9
  619. package/dist/branching/resolveBranchActionAccess.js.map +0 -1
  620. package/dist/branching/resolveBranchQuery.d.ts +0 -48
  621. package/dist/branching/resolveBranchQuery.d.ts.map +0 -1
  622. package/dist/branching/resolveBranchQuery.js +0 -115
  623. package/dist/branching/resolveBranchQuery.js.map +0 -1
  624. package/dist/branching/resolveBranchRowID.d.ts +0 -22
  625. package/dist/branching/resolveBranchRowID.d.ts.map +0 -1
  626. package/dist/branching/resolveBranchRowID.js +0 -70
  627. package/dist/branching/resolveBranchRowID.js.map +0 -1
  628. package/dist/branching/sanitizeBranchingConfig.d.ts +0 -31
  629. package/dist/branching/sanitizeBranchingConfig.d.ts.map +0 -1
  630. package/dist/branching/sanitizeBranchingConfig.js +0 -110
  631. package/dist/branching/sanitizeBranchingConfig.js.map +0 -1
  632. package/dist/branching/schedule/job.d.ts +0 -51
  633. package/dist/branching/schedule/job.d.ts.map +0 -1
  634. package/dist/branching/schedule/job.js +0 -151
  635. package/dist/branching/schedule/job.js.map +0 -1
  636. package/dist/branching/selectBranchChanges.d.ts +0 -8
  637. package/dist/branching/selectBranchChanges.d.ts.map +0 -1
  638. package/dist/branching/selectBranchChanges.js +0 -9
  639. package/dist/branching/selectBranchChanges.js.map +0 -1
  640. package/dist/branching/stripBranchMergeData.d.ts +0 -11
  641. package/dist/branching/stripBranchMergeData.d.ts.map +0 -1
  642. package/dist/branching/stripBranchMergeData.js +0 -20
  643. package/dist/branching/stripBranchMergeData.js.map +0 -1
  644. package/dist/branching/tombstone.d.ts +0 -91
  645. package/dist/branching/tombstone.d.ts.map +0 -1
  646. package/dist/branching/tombstone.js +0 -546
  647. package/dist/branching/tombstone.js.map +0 -1
  648. package/dist/branching/types.d.ts +0 -158
  649. package/dist/branching/types.d.ts.map +0 -1
  650. package/dist/branching/types.js +0 -54
  651. package/dist/branching/types.js.map +0 -1
  652. package/dist/branching/validation.d.ts +0 -47
  653. package/dist/branching/validation.d.ts.map +0 -1
  654. package/dist/branching/validation.js +0 -272
  655. package/dist/branching/validation.js.map +0 -1
  656. package/dist/branching/versions.d.ts +0 -131
  657. package/dist/branching/versions.d.ts.map +0 -1
  658. package/dist/branching/versions.js +0 -572
  659. package/dist/branching/versions.js.map +0 -1
  660. package/dist/collections/operations/utilities/createOperationRetryRequest.d.ts +0 -23
  661. package/dist/collections/operations/utilities/createOperationRetryRequest.d.ts.map +0 -1
  662. package/dist/collections/operations/utilities/createOperationRetryRequest.js +0 -683
  663. package/dist/collections/operations/utilities/createOperationRetryRequest.js.map +0 -1
  664. package/dist/fields/hooks/beforeValidate/throwOnAccessDenied.d.ts +0 -3
  665. package/dist/fields/hooks/beforeValidate/throwOnAccessDenied.d.ts.map +0 -1
  666. package/dist/fields/hooks/beforeValidate/throwOnAccessDenied.js +0 -3
  667. package/dist/fields/hooks/beforeValidate/throwOnAccessDenied.js.map +0 -1
  668. package/dist/uploads/appendBranchToFileURL.d.ts +0 -6
  669. package/dist/uploads/appendBranchToFileURL.d.ts.map +0 -1
  670. package/dist/uploads/appendBranchToFileURL.js +0 -24
  671. package/dist/uploads/appendBranchToFileURL.js.map +0 -1
  672. package/dist/uploads/deleteUploadFilesExclusiveToDocument.d.ts +0 -15
  673. package/dist/uploads/deleteUploadFilesExclusiveToDocument.d.ts.map +0 -1
  674. package/dist/uploads/deleteUploadFilesExclusiveToDocument.js +0 -62
  675. package/dist/uploads/deleteUploadFilesExclusiveToDocument.js.map +0 -1
  676. package/dist/uploads/fileIdentity.d.ts +0 -24
  677. package/dist/uploads/fileIdentity.d.ts.map +0 -1
  678. package/dist/uploads/fileIdentity.js +0 -36
  679. package/dist/uploads/fileIdentity.js.map +0 -1
  680. package/dist/uploads/fileQuarantine.d.ts +0 -17
  681. package/dist/uploads/fileQuarantine.d.ts.map +0 -1
  682. package/dist/uploads/fileQuarantine.js +0 -52
  683. package/dist/uploads/fileQuarantine.js.map +0 -1
  684. package/dist/uploads/linkFileWithoutOverwrite.d.ts +0 -13
  685. package/dist/uploads/linkFileWithoutOverwrite.d.ts.map +0 -1
  686. package/dist/uploads/linkFileWithoutOverwrite.js +0 -13
  687. package/dist/uploads/linkFileWithoutOverwrite.js.map +0 -1
  688. package/dist/uploads/uploadFileRollback.d.ts +0 -31
  689. package/dist/uploads/uploadFileRollback.d.ts.map +0 -1
  690. package/dist/uploads/uploadFileRollback.js +0 -269
  691. package/dist/uploads/uploadFileRollback.js.map +0 -1
  692. package/dist/utilities/extractRelationshipID.d.ts +0 -4
  693. package/dist/utilities/extractRelationshipID.d.ts.map +0 -1
  694. package/dist/utilities/extractRelationshipID.js +0 -14
  695. package/dist/utilities/extractRelationshipID.js.map +0 -1
  696. package/dist/utilities/transactionCallbacks.d.ts +0 -77
  697. package/dist/utilities/transactionCallbacks.d.ts.map +0 -1
  698. package/dist/utilities/transactionCallbacks.js +0 -299
  699. package/dist/utilities/transactionCallbacks.js.map +0 -1
  700. package/dist/utilities/transactionMutationTracker.d.ts +0 -21
  701. package/dist/utilities/transactionMutationTracker.d.ts.map +0 -1
  702. package/dist/utilities/transactionMutationTracker.js +0 -71
  703. package/dist/utilities/transactionMutationTracker.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../../src/collections/operations/utilities/createOperationRetryRequest.ts"],"sourcesContent":["import { randomUUID } from 'node:crypto'\nimport { constants } from 'node:fs'\nimport fs from 'node:fs/promises'\nimport path from 'node:path'\n\nimport type { PayloadRequest } from '../../../types/index.js'\n\nimport { isConcurrentShadowOperationError } from '../../../branching/createShadowRow.js'\nimport { refreshBranchState, resetBranchState } from '../../../branching/resolveBranch.js'\nimport { createPayloadRequest } from '../../../utilities/createPayloadRequest.js'\nimport { isolateObjectProperty } from '../../../utilities/isolateObjectProperty.js'\nimport {\n createIsolatedDeferredCleanupContext,\n deferredCleanupScopeContextKey,\n} from '../../../utilities/transactionCallbacks.js'\n\ntype RetryCloneGraph = {\n clonesByOriginal: WeakMap<object, object>\n isRetrySafe: boolean\n originalsByClone: WeakMap<object, object>\n}\n\ntype OperationRetryRequest = {\n isRetrySafe: boolean\n req: PayloadRequest\n}\n\ntype RetryRequestState = {\n originalReq: PayloadRequest\n originalsByClone: WeakMap<object, object>\n}\n\nconst createRetryCloneGraph = (): RetryCloneGraph => ({\n clonesByOriginal: new WeakMap(),\n isRetrySafe: true,\n originalsByClone: new WeakMap(),\n})\n\nconst recordRetryClone = ({\n clone,\n graph,\n original,\n}: {\n clone: object\n graph: RetryCloneGraph\n original: object\n}): void => {\n graph.clonesByOriginal.set(original, clone)\n graph.originalsByClone.set(clone, original)\n}\n\nconst typedArrayPrototype = Object.getPrototypeOf(Uint8Array.prototype) as object\nconst maximumRetrySafeIndexedPropertyCount = 65_536\n\nconst markValueAsRetryUnsafe = ({\n graph,\n value,\n}: {\n graph: RetryCloneGraph\n value: object\n}): void => {\n graph.isRetrySafe = false\n recordRetryClone({ clone: value, graph, original: value })\n}\n\nconst isArrayIndexProperty = (key: PropertyKey): boolean => {\n if (typeof key !== 'string' || key === '') {\n return false\n }\n\n const index = Number(key)\n\n return Number.isInteger(index) && index >= 0 && index < 4_294_967_295 && String(index) === key\n}\n\nconst isSupportedArrayBufferViewPrototype = ({ value }: { value: ArrayBufferView }): boolean => {\n const prototype = Object.getPrototypeOf(value) as object\n\n if (Buffer.isBuffer(value)) {\n return prototype === Buffer.prototype\n }\n\n if (value instanceof DataView) {\n return prototype === DataView.prototype\n }\n\n return Object.getPrototypeOf(prototype) === typedArrayPrototype\n}\n\nconst markUnsupportedSpecialObjectAsRetryUnsafe = ({\n expectedPrototype,\n graph,\n isAllowedOwnProperty = () => false,\n value,\n}: {\n expectedPrototype?: object\n graph: RetryCloneGraph\n isAllowedOwnProperty?: (args: { descriptor: PropertyDescriptor; key: PropertyKey }) => boolean\n value: object\n}): boolean => {\n const hasSupportedPrototype = expectedPrototype\n ? Object.getPrototypeOf(value) === expectedPrototype\n : isSupportedArrayBufferViewPrototype({ value: value as ArrayBufferView })\n\n if (!hasSupportedPrototype) {\n markValueAsRetryUnsafe({ graph, value })\n\n return true\n }\n\n const hasUnsupportedOwnProperty = Reflect.ownKeys(value).some((key) => {\n const descriptor = Object.getOwnPropertyDescriptor(value, key)\n\n return !descriptor || !isAllowedOwnProperty({ descriptor, key })\n })\n\n if (!hasUnsupportedOwnProperty) {\n return false\n }\n\n markValueAsRetryUnsafe({ graph, value })\n\n return true\n}\n\nconst cloneRetrySafeValue = <Value>(\n value: Value,\n graph: RetryCloneGraph = createRetryCloneGraph(),\n): Value => {\n if (typeof value === 'function') {\n graph.isRetrySafe = false\n\n return value\n }\n\n if (!value || typeof value !== 'object') {\n return value\n }\n\n const existingClone = graph.clonesByOriginal.get(value)\n\n if (existingClone) {\n return existingClone as Value\n }\n\n if (value instanceof Date) {\n if (\n markUnsupportedSpecialObjectAsRetryUnsafe({\n expectedPrototype: Date.prototype,\n graph,\n value,\n })\n ) {\n return value\n }\n\n const clone = new Date(value)\n\n recordRetryClone({ clone, graph, original: value })\n\n return clone as Value\n }\n\n if (value instanceof RegExp) {\n if (\n markUnsupportedSpecialObjectAsRetryUnsafe({\n expectedPrototype: RegExp.prototype,\n graph,\n isAllowedOwnProperty: ({ descriptor, key }) => key === 'lastIndex' && 'value' in descriptor,\n value,\n })\n ) {\n return value\n }\n\n const clone = new RegExp(value.source, value.flags)\n\n clone.lastIndex = value.lastIndex\n recordRetryClone({ clone, graph, original: value })\n\n return clone as Value\n }\n\n if (value instanceof Headers) {\n if (\n markUnsupportedSpecialObjectAsRetryUnsafe({\n expectedPrototype: Headers.prototype,\n graph,\n value,\n })\n ) {\n return value\n }\n\n const clone = new Headers(value)\n\n recordRetryClone({ clone, graph, original: value })\n\n return clone as Value\n }\n\n if (value instanceof URL) {\n if (\n markUnsupportedSpecialObjectAsRetryUnsafe({\n expectedPrototype: URL.prototype,\n graph,\n value,\n })\n ) {\n return value\n }\n\n const clone = new URL(value)\n\n recordRetryClone({ clone, graph, original: value })\n\n return clone as Value\n }\n\n if (value instanceof URLSearchParams) {\n if (\n markUnsupportedSpecialObjectAsRetryUnsafe({\n expectedPrototype: URLSearchParams.prototype,\n graph,\n value,\n })\n ) {\n return value\n }\n\n const clone = new URLSearchParams(value)\n\n recordRetryClone({ clone, graph, original: value })\n\n return clone as Value\n }\n\n if (isSharedArrayBuffer(value)) {\n graph.isRetrySafe = false\n recordRetryClone({ clone: value, graph, original: value })\n\n return value\n }\n\n if (value instanceof ArrayBuffer) {\n if (\n markUnsupportedSpecialObjectAsRetryUnsafe({\n expectedPrototype: ArrayBuffer.prototype,\n graph,\n value,\n })\n ) {\n return value\n }\n\n const clone = structuredClone(value)\n\n recordRetryClone({ clone, graph, original: value })\n\n return clone as Value\n }\n\n if (ArrayBuffer.isView(value)) {\n if (isSharedArrayBuffer(value.buffer)) {\n graph.isRetrySafe = false\n recordRetryClone({ clone: value, graph, original: value })\n\n return value\n }\n\n if (!isSupportedArrayBufferViewPrototype({ value })) {\n markValueAsRetryUnsafe({ graph, value })\n\n return value\n }\n\n const indexedPropertyCount =\n 'length' in value && typeof value.length === 'number' ? value.length : 0\n\n if (indexedPropertyCount > maximumRetrySafeIndexedPropertyCount) {\n markValueAsRetryUnsafe({ graph, value })\n\n return value\n }\n\n if (\n markUnsupportedSpecialObjectAsRetryUnsafe({\n graph,\n isAllowedOwnProperty: ({ descriptor, key }) =>\n isArrayIndexProperty(key) && 'value' in descriptor,\n value,\n })\n ) {\n return value\n }\n\n const clonedBuffer = cloneRetrySafeValue(value.buffer, graph)\n const clone = createArrayBufferView({ buffer: clonedBuffer, source: value })\n\n recordRetryClone({ clone, graph, original: value })\n\n return clone as Value\n }\n\n if (Array.isArray(value)) {\n if (value.length > maximumRetrySafeIndexedPropertyCount) {\n markValueAsRetryUnsafe({ graph, value })\n\n return value\n }\n\n if (\n markUnsupportedSpecialObjectAsRetryUnsafe({\n expectedPrototype: Array.prototype,\n graph,\n isAllowedOwnProperty: ({ descriptor, key }) =>\n (key === 'length' || isArrayIndexProperty(key)) && 'value' in descriptor,\n value,\n })\n ) {\n return value\n }\n\n const clone: unknown[] = []\n\n recordRetryClone({ clone, graph, original: value })\n\n for (const entry of value) {\n clone.push(cloneRetrySafeValue(entry, graph))\n }\n\n mirrorObjectIntegrity({ source: value, target: clone })\n\n return clone as Value\n }\n\n if (value instanceof Map) {\n if (\n markUnsupportedSpecialObjectAsRetryUnsafe({\n expectedPrototype: Map.prototype,\n graph,\n value,\n })\n ) {\n return value\n }\n\n const clone = new Map()\n\n recordRetryClone({ clone, graph, original: value })\n\n for (const [key, entry] of value) {\n clone.set(cloneRetrySafeValue(key, graph), cloneRetrySafeValue(entry, graph))\n }\n\n return clone as Value\n }\n\n if (value instanceof Set) {\n if (\n markUnsupportedSpecialObjectAsRetryUnsafe({\n expectedPrototype: Set.prototype,\n graph,\n value,\n })\n ) {\n return value\n }\n\n const clone = new Set()\n\n recordRetryClone({ clone, graph, original: value })\n\n for (const entry of value) {\n clone.add(cloneRetrySafeValue(entry, graph))\n }\n\n return clone as Value\n }\n\n if (hasUncloneableInternalState({ value })) {\n graph.isRetrySafe = false\n recordRetryClone({ clone: value, graph, original: value })\n\n return value\n }\n\n const clone = Object.create(Object.getPrototypeOf(value)) as Record<PropertyKey, unknown>\n\n recordRetryClone({ clone, graph, original: value })\n\n for (const key of Reflect.ownKeys(value)) {\n const descriptor = Object.getOwnPropertyDescriptor(value, key)\n\n if (!descriptor) {\n continue\n }\n\n if (!('value' in descriptor)) {\n graph.isRetrySafe = false\n } else {\n descriptor.value = cloneRetrySafeValue(descriptor.value, graph)\n }\n\n Object.defineProperty(clone, key, descriptor)\n }\n\n mirrorObjectIntegrity({ source: value, target: clone })\n\n return clone as Value\n}\n\nconst isSharedArrayBuffer = (value: unknown): value is SharedArrayBuffer =>\n typeof SharedArrayBuffer !== 'undefined' && value instanceof SharedArrayBuffer\n\nconst hasUncloneableInternalState = ({ value }: { value: object }): boolean => {\n let prototype = Object.getPrototypeOf(value)\n\n while (prototype && prototype !== Object.prototype) {\n const constructor = prototype.constructor\n const constructorSource =\n typeof constructor === 'function' ? Function.prototype.toString.call(constructor) : ''\n\n const hasPrototypeMethods = Reflect.ownKeys(prototype).some((key) => key !== 'constructor')\n\n if (\n constructorSource.includes('[native code]') ||\n /#[a-z_$]/i.test(constructorSource) ||\n hasPrototypeMethods\n ) {\n return true\n }\n\n prototype = Object.getPrototypeOf(prototype)\n }\n\n return false\n}\n\nconst createArrayBufferView = ({\n buffer,\n source,\n}: {\n buffer: ArrayBuffer\n source: ArrayBufferView\n}): ArrayBufferView => {\n if (Buffer.isBuffer(source)) {\n return Buffer.from(buffer, source.byteOffset, source.byteLength)\n }\n\n if (source instanceof DataView) {\n return new DataView(buffer, source.byteOffset, source.byteLength)\n }\n\n const TypedArray = source.constructor as new (\n buffer: ArrayBuffer,\n byteOffset: number,\n length: number,\n ) => ArrayBufferView\n\n return new TypedArray(buffer, source.byteOffset, (source as Uint8Array).length)\n}\n\nconst mirrorObjectIntegrity = ({ source, target }: { source: object; target: object }): void => {\n if (Object.isFrozen(source)) {\n Object.freeze(target)\n } else if (Object.isSealed(source)) {\n Object.seal(target)\n } else if (!Object.isExtensible(source)) {\n Object.preventExtensions(target)\n }\n}\n\nconst synchronizeRetrySafeValue = <Value>({\n allowUnprovenTargetReuse = false,\n deleteMissingProperties = true,\n originalsByClone,\n preservedMissingTargetKeys,\n source,\n synchronizedTargets = new WeakMap<object, object>(),\n target,\n}: {\n allowUnprovenTargetReuse?: boolean\n deleteMissingProperties?: boolean\n originalsByClone: WeakMap<object, object>\n preservedMissingTargetKeys?: ReadonlySet<PropertyKey>\n source: Value\n synchronizedTargets?: WeakMap<object, object>\n target: Value\n}): Value => {\n if (!source || typeof source !== 'object') {\n return source\n }\n\n const synchronizedTarget = synchronizedTargets.get(source)\n const originalValue = originalsByClone.get(source)\n const targetValue = (originalValue ?? (allowUnprovenTargetReuse ? target : undefined)) as Value\n\n if (source instanceof ArrayBuffer) {\n const synchronizedBuffer =\n synchronizedTarget instanceof ArrayBuffer &&\n synchronizedTarget.byteLength === source.byteLength\n ? synchronizedTarget\n : targetValue instanceof ArrayBuffer && targetValue.byteLength === source.byteLength\n ? targetValue\n : new ArrayBuffer(source.byteLength)\n\n synchronizedTargets.set(source, synchronizedBuffer)\n new Uint8Array(synchronizedBuffer).set(new Uint8Array(source))\n\n return synchronizedBuffer as Value\n }\n\n if (synchronizedTarget) {\n return synchronizedTarget as Value\n }\n\n if (Object.is(source, targetValue)) {\n synchronizedTargets.set(source, targetValue as object)\n\n return targetValue\n }\n\n if (source instanceof Date) {\n const synchronizedDate = targetValue instanceof Date ? targetValue : new Date(source)\n\n synchronizedTargets.set(source, synchronizedDate)\n synchronizedDate.setTime(source.getTime())\n\n return synchronizedDate as Value\n }\n\n if (source instanceof RegExp) {\n const synchronizedRegExp =\n targetValue instanceof RegExp &&\n targetValue.source === source.source &&\n targetValue.flags === source.flags\n ? targetValue\n : new RegExp(source.source, source.flags)\n\n synchronizedTargets.set(source, synchronizedRegExp)\n synchronizedRegExp.lastIndex = source.lastIndex\n\n return synchronizedRegExp as Value\n }\n\n if (source instanceof Headers) {\n const synchronizedHeaders = targetValue instanceof Headers ? targetValue : new Headers()\n\n synchronizedTargets.set(source, synchronizedHeaders)\n for (const key of [...synchronizedHeaders.keys()]) {\n synchronizedHeaders.delete(key)\n }\n for (const [key, value] of source) {\n synchronizedHeaders.append(key, value)\n }\n\n return synchronizedHeaders as Value\n }\n\n if (source instanceof URL) {\n const synchronizedURL = targetValue instanceof URL ? targetValue : new URL(source)\n\n synchronizedTargets.set(source, synchronizedURL)\n synchronizedURL.href = source.href\n\n return synchronizedURL as Value\n }\n\n if (source instanceof URLSearchParams) {\n const synchronizedSearchParams =\n targetValue instanceof URLSearchParams ? targetValue : new URLSearchParams()\n\n synchronizedTargets.set(source, synchronizedSearchParams)\n for (const key of [...synchronizedSearchParams.keys()]) {\n synchronizedSearchParams.delete(key)\n }\n for (const [key, value] of source) {\n synchronizedSearchParams.append(key, value)\n }\n\n return synchronizedSearchParams as Value\n }\n\n if (ArrayBuffer.isView(source)) {\n const sourceBuffer = source.buffer as ArrayBuffer\n const synchronizedBufferFromGraph = synchronizedTargets.get(sourceBuffer)\n const originalBuffer = originalsByClone.get(sourceBuffer)\n const synchronizedBuffer =\n synchronizedBufferFromGraph instanceof ArrayBuffer\n ? synchronizedBufferFromGraph\n : ArrayBuffer.isView(targetValue) && targetValue.buffer instanceof ArrayBuffer\n ? targetValue.buffer\n : originalBuffer instanceof ArrayBuffer\n ? originalBuffer\n : new ArrayBuffer(sourceBuffer.byteLength)\n\n synchronizedTargets.set(sourceBuffer, synchronizedBuffer)\n const synchronizedView =\n ArrayBuffer.isView(targetValue) &&\n targetValue.constructor === source.constructor &&\n targetValue.byteLength === source.byteLength &&\n targetValue.byteOffset === source.byteOffset\n ? targetValue\n : createArrayBufferView({ buffer: synchronizedBuffer, source })\n\n synchronizedTargets.set(source, synchronizedView)\n new Uint8Array(\n synchronizedView.buffer,\n synchronizedView.byteOffset,\n synchronizedView.byteLength,\n ).set(new Uint8Array(source.buffer, source.byteOffset, source.byteLength))\n\n return synchronizedView as Value\n }\n\n if (Array.isArray(source)) {\n const synchronizedArray = Array.isArray(targetValue) ? targetValue : []\n\n synchronizedTargets.set(source, synchronizedArray)\n\n for (let index = 0; index < source.length; index++) {\n const synchronizedEntry = synchronizeRetrySafeValue({\n originalsByClone,\n source: source[index],\n synchronizedTargets,\n target: synchronizedArray[index],\n })\n\n setSynchronizedProperty({ key: index, target: synchronizedArray, value: synchronizedEntry })\n }\n setSynchronizedProperty({ key: 'length', target: synchronizedArray, value: source.length })\n mirrorObjectIntegrity({ source, target: synchronizedArray })\n\n return synchronizedArray as Value\n }\n\n if (source instanceof Map) {\n const synchronizedMap = targetValue instanceof Map ? targetValue : new Map()\n\n synchronizedTargets.set(source, synchronizedMap)\n const synchronizedEntries: [unknown, unknown][] = []\n for (const [key, entry] of source) {\n const synchronizedKey = synchronizeRetrySafeValue({\n originalsByClone,\n source: key,\n synchronizedTargets,\n target: undefined,\n })\n const synchronizedEntry = synchronizeRetrySafeValue({\n originalsByClone,\n source: entry,\n synchronizedTargets,\n target: synchronizedMap.get(synchronizedKey),\n })\n\n synchronizedEntries.push([synchronizedKey, synchronizedEntry])\n }\n\n synchronizedMap.clear()\n for (const [key, entry] of synchronizedEntries) {\n synchronizedMap.set(key, entry)\n }\n\n return synchronizedMap as Value\n }\n\n if (source instanceof Set) {\n const synchronizedSet = targetValue instanceof Set ? targetValue : new Set()\n\n synchronizedTargets.set(source, synchronizedSet)\n const synchronizedEntries: unknown[] = []\n for (const entry of source) {\n synchronizedEntries.push(\n synchronizeRetrySafeValue({\n originalsByClone,\n source: entry,\n synchronizedTargets,\n target: undefined,\n }),\n )\n }\n\n synchronizedSet.clear()\n for (const entry of synchronizedEntries) {\n synchronizedSet.add(entry)\n }\n\n return synchronizedSet as Value\n }\n\n if (hasUncloneableInternalState({ value: source })) {\n synchronizedTargets.set(source, source)\n\n return source\n }\n\n const synchronizedObject =\n targetValue &&\n typeof targetValue === 'object' &&\n Object.getPrototypeOf(source) === Object.getPrototypeOf(targetValue)\n ? targetValue\n : Object.create(Object.getPrototypeOf(source))\n\n synchronizedTargets.set(source, synchronizedObject)\n\n const sourceRecord = source as Record<PropertyKey, unknown>\n const targetRecord = synchronizedObject as Record<PropertyKey, unknown>\n\n if (deleteMissingProperties) {\n for (const key of Reflect.ownKeys(targetRecord)) {\n if (!Object.hasOwn(sourceRecord, key) && !preservedMissingTargetKeys?.has(key)) {\n const descriptor = Object.getOwnPropertyDescriptor(targetRecord, key)\n\n if (descriptor?.configurable !== false) {\n delete targetRecord[key]\n }\n }\n }\n }\n\n for (const key of Reflect.ownKeys(sourceRecord)) {\n const synchronizedValue = synchronizeRetrySafeValue({\n originalsByClone,\n source: sourceRecord[key],\n synchronizedTargets,\n target: targetRecord[key],\n })\n\n setSynchronizedProperty({ key, target: targetRecord, value: synchronizedValue })\n }\n\n mirrorObjectIntegrity({ source, target: synchronizedObject })\n\n return synchronizedObject\n}\n\nconst setSynchronizedProperty = ({\n key,\n target,\n value,\n}: {\n key: PropertyKey\n target: object\n value: unknown\n}): void => {\n const descriptor = Object.getOwnPropertyDescriptor(target, key)\n const currentValue = Reflect.get(target, key)\n\n if (Object.is(currentValue, value)) {\n return\n }\n\n if (\n !descriptor ||\n ('value' in descriptor ? descriptor.writable !== false : descriptor.set !== undefined)\n ) {\n Reflect.set(target, key, value)\n }\n}\n\nconst retryRequestStateByRequest = new WeakMap<PayloadRequest, RetryRequestState>()\n\nexport const shouldRetryOperationRequest = ({\n didOwnAttemptTransaction,\n didReachFinalCommit,\n error,\n hasCallerTransaction,\n isRetrySafe,\n}: {\n didOwnAttemptTransaction: boolean\n didReachFinalCommit: boolean\n error: unknown\n hasCallerTransaction: boolean\n isRetrySafe: boolean\n}): boolean =>\n isRetrySafe &&\n !hasCallerTransaction &&\n didOwnAttemptTransaction &&\n (didReachFinalCommit || isConcurrentShadowOperationError(error))\n\n/** Applies mutable request changes from an attempt only after its database work succeeds. */\nexport const commitOperationRetryRequestContext = ({ req }: { req: PayloadRequest }): void => {\n const retryRequestState = retryRequestStateByRequest.get(req)\n\n if (!retryRequestState) {\n return\n }\n\n const { originalReq, originalsByClone } = retryRequestState\n\n try {\n const synchronizedTargets = new WeakMap<object, object>()\n\n originalReq.context = synchronizeRetrySafeValue({\n allowUnprovenTargetReuse: true,\n originalsByClone,\n preservedMissingTargetKeys: new Set([deferredCleanupScopeContextKey]),\n source: createIsolatedDeferredCleanupContext({ req }),\n synchronizedTargets,\n target: originalReq.context,\n })\n\n if (req.responseHeaders) {\n originalReq.responseHeaders = synchronizeRetrySafeValue({\n originalsByClone,\n source: req.responseHeaders,\n synchronizedTargets,\n target: originalReq.responseHeaders,\n })\n } else {\n delete originalReq.responseHeaders\n }\n } catch (err) {\n originalReq.payload.logger.error({\n err,\n msg: 'Failed to apply request state changes after committing an operation retry.',\n })\n } finally {\n refreshBranchState(originalReq)\n retryRequestStateByRequest.delete(req)\n }\n}\n\n/** Creates a request whose mutable operation state cannot leak into another transaction attempt. */\nexport const createOperationRetryRequest = async ({\n copyFileTempPath = false,\n req,\n}: {\n copyFileTempPath?: boolean\n req: PayloadRequest\n}): Promise<OperationRetryRequest> => {\n req.context ??= {}\n const cloneGraph = createRetryCloneGraph()\n const retryReq = isolateObjectProperty(req, [\n 'branch',\n 'context',\n 'data',\n 'fallbackLocale',\n 'file',\n 'files',\n 'headers',\n 'locale',\n 'payloadDataLoader',\n 'payloadUploadSizes',\n 'query',\n 'responseHeaders',\n 'routeParams',\n 'searchParams',\n 'transactionID',\n 'user',\n ])\n\n retryReq.context = cloneRetrySafeValue(createIsolatedDeferredCleanupContext({ req }), cloneGraph)\n retryReq.data = cloneRetrySafeValue(req.data, cloneGraph)\n retryReq.file = cloneRetrySafeValue(req.file, cloneGraph)\n retryReq.files = cloneRetrySafeValue(req.files, cloneGraph)\n retryReq.headers = cloneRetrySafeValue(req.headers, cloneGraph)\n retryReq.query = cloneRetrySafeValue(req.query, cloneGraph)\n retryReq.responseHeaders = cloneRetrySafeValue(req.responseHeaders, cloneGraph)\n retryReq.routeParams = cloneRetrySafeValue(req.routeParams, cloneGraph)\n Reflect.set(retryReq, 'searchParams', cloneRetrySafeValue(req.searchParams, cloneGraph))\n retryReq.user = cloneRetrySafeValue(req.user, cloneGraph)\n\n if (!cloneGraph.isRetrySafe) {\n return { isRetrySafe: false, req }\n }\n\n delete (retryReq as Partial<PayloadRequest>).payloadDataLoader\n delete retryReq.payloadUploadSizes\n delete retryReq.transactionID\n resetBranchState(retryReq)\n\n const fallbackLocale =\n req.fallbackLocale === false || typeof req.fallbackLocale === 'string'\n ? req.fallbackLocale\n : undefined\n const preparedReq = await createPayloadRequest({\n fallbackLocale,\n payload: req.payload,\n req: retryReq,\n })\n const sourceTempFilePath = preparedReq.file?.tempFilePath\n\n if (copyFileTempPath && sourceTempFilePath) {\n const extension = path.extname(sourceTempFilePath)\n const attemptTempFilePath = path.join(\n path.dirname(sourceTempFilePath),\n `${path.basename(sourceTempFilePath, extension)}-${randomUUID()}${extension}`,\n )\n\n await fs.copyFile(sourceTempFilePath, attemptTempFilePath, constants.COPYFILE_EXCL)\n preparedReq.file!.tempFilePath = attemptTempFilePath\n }\n\n retryRequestStateByRequest.set(preparedReq, {\n originalReq: req,\n originalsByClone: cloneGraph.originalsByClone,\n })\n\n return { isRetrySafe: true, req: preparedReq }\n}\n"],"names":["randomUUID","constants","fs","path","isConcurrentShadowOperationError","refreshBranchState","resetBranchState","createPayloadRequest","isolateObjectProperty","createIsolatedDeferredCleanupContext","deferredCleanupScopeContextKey","createRetryCloneGraph","clonesByOriginal","WeakMap","isRetrySafe","originalsByClone","recordRetryClone","clone","graph","original","set","typedArrayPrototype","Object","getPrototypeOf","Uint8Array","prototype","maximumRetrySafeIndexedPropertyCount","markValueAsRetryUnsafe","value","isArrayIndexProperty","key","index","Number","isInteger","String","isSupportedArrayBufferViewPrototype","Buffer","isBuffer","DataView","markUnsupportedSpecialObjectAsRetryUnsafe","expectedPrototype","isAllowedOwnProperty","hasSupportedPrototype","hasUnsupportedOwnProperty","Reflect","ownKeys","some","descriptor","getOwnPropertyDescriptor","cloneRetrySafeValue","existingClone","get","Date","RegExp","source","flags","lastIndex","Headers","URL","URLSearchParams","isSharedArrayBuffer","ArrayBuffer","structuredClone","isView","buffer","indexedPropertyCount","length","clonedBuffer","createArrayBufferView","Array","isArray","entry","push","mirrorObjectIntegrity","target","Map","Set","add","hasUncloneableInternalState","create","defineProperty","SharedArrayBuffer","constructor","constructorSource","Function","toString","call","hasPrototypeMethods","includes","test","from","byteOffset","byteLength","TypedArray","isFrozen","freeze","isSealed","seal","isExtensible","preventExtensions","synchronizeRetrySafeValue","allowUnprovenTargetReuse","deleteMissingProperties","preservedMissingTargetKeys","synchronizedTargets","synchronizedTarget","originalValue","targetValue","undefined","synchronizedBuffer","is","synchronizedDate","setTime","getTime","synchronizedRegExp","synchronizedHeaders","keys","delete","append","synchronizedURL","href","synchronizedSearchParams","sourceBuffer","synchronizedBufferFromGraph","originalBuffer","synchronizedView","synchronizedArray","synchronizedEntry","setSynchronizedProperty","synchronizedMap","synchronizedEntries","synchronizedKey","clear","synchronizedSet","synchronizedObject","sourceRecord","targetRecord","hasOwn","has","configurable","synchronizedValue","currentValue","writable","retryRequestStateByRequest","shouldRetryOperationRequest","didOwnAttemptTransaction","didReachFinalCommit","error","hasCallerTransaction","commitOperationRetryRequestContext","req","retryRequestState","originalReq","context","responseHeaders","err","payload","logger","msg","createOperationRetryRequest","copyFileTempPath","cloneGraph","retryReq","data","file","files","headers","query","routeParams","searchParams","user","payloadDataLoader","payloadUploadSizes","transactionID","fallbackLocale","preparedReq","sourceTempFilePath","tempFilePath","extension","extname","attemptTempFilePath","join","dirname","basename","copyFile","COPYFILE_EXCL"],"mappings":"AAAA,SAASA,UAAU,QAAQ,cAAa;AACxC,SAASC,SAAS,QAAQ,UAAS;AACnC,OAAOC,QAAQ,mBAAkB;AACjC,OAAOC,UAAU,YAAW;AAI5B,SAASC,gCAAgC,QAAQ,wCAAuC;AACxF,SAASC,kBAAkB,EAAEC,gBAAgB,QAAQ,sCAAqC;AAC1F,SAASC,oBAAoB,QAAQ,6CAA4C;AACjF,SAASC,qBAAqB,QAAQ,8CAA6C;AACnF,SACEC,oCAAoC,EACpCC,8BAA8B,QACzB,6CAA4C;AAkBnD,MAAMC,wBAAwB,IAAwB,CAAA;QACpDC,kBAAkB,IAAIC;QACtBC,aAAa;QACbC,kBAAkB,IAAIF;IACxB,CAAA;AAEA,MAAMG,mBAAmB,CAAC,EACxBC,KAAK,EACLC,KAAK,EACLC,QAAQ,EAKT;IACCD,MAAMN,gBAAgB,CAACQ,GAAG,CAACD,UAAUF;IACrCC,MAAMH,gBAAgB,CAACK,GAAG,CAACH,OAAOE;AACpC;AAEA,MAAME,sBAAsBC,OAAOC,cAAc,CAACC,WAAWC,SAAS;AACtE,MAAMC,uCAAuC;AAE7C,MAAMC,yBAAyB,CAAC,EAC9BT,KAAK,EACLU,KAAK,EAIN;IACCV,MAAMJ,WAAW,GAAG;IACpBE,iBAAiB;QAAEC,OAAOW;QAAOV;QAAOC,UAAUS;IAAM;AAC1D;AAEA,MAAMC,uBAAuB,CAACC;IAC5B,IAAI,OAAOA,QAAQ,YAAYA,QAAQ,IAAI;QACzC,OAAO;IACT;IAEA,MAAMC,QAAQC,OAAOF;IAErB,OAAOE,OAAOC,SAAS,CAACF,UAAUA,SAAS,KAAKA,QAAQ,iBAAiBG,OAAOH,WAAWD;AAC7F;AAEA,MAAMK,sCAAsC,CAAC,EAAEP,KAAK,EAA8B;IAChF,MAAMH,YAAYH,OAAOC,cAAc,CAACK;IAExC,IAAIQ,OAAOC,QAAQ,CAACT,QAAQ;QAC1B,OAAOH,cAAcW,OAAOX,SAAS;IACvC;IAEA,IAAIG,iBAAiBU,UAAU;QAC7B,OAAOb,cAAca,SAASb,SAAS;IACzC;IAEA,OAAOH,OAAOC,cAAc,CAACE,eAAeJ;AAC9C;AAEA,MAAMkB,4CAA4C,CAAC,EACjDC,iBAAiB,EACjBtB,KAAK,EACLuB,uBAAuB,IAAM,KAAK,EAClCb,KAAK,EAMN;IACC,MAAMc,wBAAwBF,oBAC1BlB,OAAOC,cAAc,CAACK,WAAWY,oBACjCL,oCAAoC;QAAEP,OAAOA;IAAyB;IAE1E,IAAI,CAACc,uBAAuB;QAC1Bf,uBAAuB;YAAET;YAAOU;QAAM;QAEtC,OAAO;IACT;IAEA,MAAMe,4BAA4BC,QAAQC,OAAO,CAACjB,OAAOkB,IAAI,CAAC,CAAChB;QAC7D,MAAMiB,aAAazB,OAAO0B,wBAAwB,CAACpB,OAAOE;QAE1D,OAAO,CAACiB,cAAc,CAACN,qBAAqB;YAAEM;YAAYjB;QAAI;IAChE;IAEA,IAAI,CAACa,2BAA2B;QAC9B,OAAO;IACT;IAEAhB,uBAAuB;QAAET;QAAOU;IAAM;IAEtC,OAAO;AACT;AAEA,MAAMqB,sBAAsB,CAC1BrB,OACAV,QAAyBP,uBAAuB;IAEhD,IAAI,OAAOiB,UAAU,YAAY;QAC/BV,MAAMJ,WAAW,GAAG;QAEpB,OAAOc;IACT;IAEA,IAAI,CAACA,SAAS,OAAOA,UAAU,UAAU;QACvC,OAAOA;IACT;IAEA,MAAMsB,gBAAgBhC,MAAMN,gBAAgB,CAACuC,GAAG,CAACvB;IAEjD,IAAIsB,eAAe;QACjB,OAAOA;IACT;IAEA,IAAItB,iBAAiBwB,MAAM;QACzB,IACEb,0CAA0C;YACxCC,mBAAmBY,KAAK3B,SAAS;YACjCP;YACAU;QACF,IACA;YACA,OAAOA;QACT;QAEA,MAAMX,QAAQ,IAAImC,KAAKxB;QAEvBZ,iBAAiB;YAAEC;YAAOC;YAAOC,UAAUS;QAAM;QAEjD,OAAOX;IACT;IAEA,IAAIW,iBAAiByB,QAAQ;QAC3B,IACEd,0CAA0C;YACxCC,mBAAmBa,OAAO5B,SAAS;YACnCP;YACAuB,sBAAsB,CAAC,EAAEM,UAAU,EAAEjB,GAAG,EAAE,GAAKA,QAAQ,eAAe,WAAWiB;YACjFnB;QACF,IACA;YACA,OAAOA;QACT;QAEA,MAAMX,QAAQ,IAAIoC,OAAOzB,MAAM0B,MAAM,EAAE1B,MAAM2B,KAAK;QAElDtC,MAAMuC,SAAS,GAAG5B,MAAM4B,SAAS;QACjCxC,iBAAiB;YAAEC;YAAOC;YAAOC,UAAUS;QAAM;QAEjD,OAAOX;IACT;IAEA,IAAIW,iBAAiB6B,SAAS;QAC5B,IACElB,0CAA0C;YACxCC,mBAAmBiB,QAAQhC,SAAS;YACpCP;YACAU;QACF,IACA;YACA,OAAOA;QACT;QAEA,MAAMX,QAAQ,IAAIwC,QAAQ7B;QAE1BZ,iBAAiB;YAAEC;YAAOC;YAAOC,UAAUS;QAAM;QAEjD,OAAOX;IACT;IAEA,IAAIW,iBAAiB8B,KAAK;QACxB,IACEnB,0CAA0C;YACxCC,mBAAmBkB,IAAIjC,SAAS;YAChCP;YACAU;QACF,IACA;YACA,OAAOA;QACT;QAEA,MAAMX,QAAQ,IAAIyC,IAAI9B;QAEtBZ,iBAAiB;YAAEC;YAAOC;YAAOC,UAAUS;QAAM;QAEjD,OAAOX;IACT;IAEA,IAAIW,iBAAiB+B,iBAAiB;QACpC,IACEpB,0CAA0C;YACxCC,mBAAmBmB,gBAAgBlC,SAAS;YAC5CP;YACAU;QACF,IACA;YACA,OAAOA;QACT;QAEA,MAAMX,QAAQ,IAAI0C,gBAAgB/B;QAElCZ,iBAAiB;YAAEC;YAAOC;YAAOC,UAAUS;QAAM;QAEjD,OAAOX;IACT;IAEA,IAAI2C,oBAAoBhC,QAAQ;QAC9BV,MAAMJ,WAAW,GAAG;QACpBE,iBAAiB;YAAEC,OAAOW;YAAOV;YAAOC,UAAUS;QAAM;QAExD,OAAOA;IACT;IAEA,IAAIA,iBAAiBiC,aAAa;QAChC,IACEtB,0CAA0C;YACxCC,mBAAmBqB,YAAYpC,SAAS;YACxCP;YACAU;QACF,IACA;YACA,OAAOA;QACT;QAEA,MAAMX,QAAQ6C,gBAAgBlC;QAE9BZ,iBAAiB;YAAEC;YAAOC;YAAOC,UAAUS;QAAM;QAEjD,OAAOX;IACT;IAEA,IAAI4C,YAAYE,MAAM,CAACnC,QAAQ;QAC7B,IAAIgC,oBAAoBhC,MAAMoC,MAAM,GAAG;YACrC9C,MAAMJ,WAAW,GAAG;YACpBE,iBAAiB;gBAAEC,OAAOW;gBAAOV;gBAAOC,UAAUS;YAAM;YAExD,OAAOA;QACT;QAEA,IAAI,CAACO,oCAAoC;YAAEP;QAAM,IAAI;YACnDD,uBAAuB;gBAAET;gBAAOU;YAAM;YAEtC,OAAOA;QACT;QAEA,MAAMqC,uBACJ,YAAYrC,SAAS,OAAOA,MAAMsC,MAAM,KAAK,WAAWtC,MAAMsC,MAAM,GAAG;QAEzE,IAAID,uBAAuBvC,sCAAsC;YAC/DC,uBAAuB;gBAAET;gBAAOU;YAAM;YAEtC,OAAOA;QACT;QAEA,IACEW,0CAA0C;YACxCrB;YACAuB,sBAAsB,CAAC,EAAEM,UAAU,EAAEjB,GAAG,EAAE,GACxCD,qBAAqBC,QAAQ,WAAWiB;YAC1CnB;QACF,IACA;YACA,OAAOA;QACT;QAEA,MAAMuC,eAAelB,oBAAoBrB,MAAMoC,MAAM,EAAE9C;QACvD,MAAMD,QAAQmD,sBAAsB;YAAEJ,QAAQG;YAAcb,QAAQ1B;QAAM;QAE1EZ,iBAAiB;YAAEC;YAAOC;YAAOC,UAAUS;QAAM;QAEjD,OAAOX;IACT;IAEA,IAAIoD,MAAMC,OAAO,CAAC1C,QAAQ;QACxB,IAAIA,MAAMsC,MAAM,GAAGxC,sCAAsC;YACvDC,uBAAuB;gBAAET;gBAAOU;YAAM;YAEtC,OAAOA;QACT;QAEA,IACEW,0CAA0C;YACxCC,mBAAmB6B,MAAM5C,SAAS;YAClCP;YACAuB,sBAAsB,CAAC,EAAEM,UAAU,EAAEjB,GAAG,EAAE,GACxC,AAACA,CAAAA,QAAQ,YAAYD,qBAAqBC,IAAG,KAAM,WAAWiB;YAChEnB;QACF,IACA;YACA,OAAOA;QACT;QAEA,MAAMX,QAAmB,EAAE;QAE3BD,iBAAiB;YAAEC;YAAOC;YAAOC,UAAUS;QAAM;QAEjD,KAAK,MAAM2C,SAAS3C,MAAO;YACzBX,MAAMuD,IAAI,CAACvB,oBAAoBsB,OAAOrD;QACxC;QAEAuD,sBAAsB;YAAEnB,QAAQ1B;YAAO8C,QAAQzD;QAAM;QAErD,OAAOA;IACT;IAEA,IAAIW,iBAAiB+C,KAAK;QACxB,IACEpC,0CAA0C;YACxCC,mBAAmBmC,IAAIlD,SAAS;YAChCP;YACAU;QACF,IACA;YACA,OAAOA;QACT;QAEA,MAAMX,QAAQ,IAAI0D;QAElB3D,iBAAiB;YAAEC;YAAOC;YAAOC,UAAUS;QAAM;QAEjD,KAAK,MAAM,CAACE,KAAKyC,MAAM,IAAI3C,MAAO;YAChCX,MAAMG,GAAG,CAAC6B,oBAAoBnB,KAAKZ,QAAQ+B,oBAAoBsB,OAAOrD;QACxE;QAEA,OAAOD;IACT;IAEA,IAAIW,iBAAiBgD,KAAK;QACxB,IACErC,0CAA0C;YACxCC,mBAAmBoC,IAAInD,SAAS;YAChCP;YACAU;QACF,IACA;YACA,OAAOA;QACT;QAEA,MAAMX,QAAQ,IAAI2D;QAElB5D,iBAAiB;YAAEC;YAAOC;YAAOC,UAAUS;QAAM;QAEjD,KAAK,MAAM2C,SAAS3C,MAAO;YACzBX,MAAM4D,GAAG,CAAC5B,oBAAoBsB,OAAOrD;QACvC;QAEA,OAAOD;IACT;IAEA,IAAI6D,4BAA4B;QAAElD;IAAM,IAAI;QAC1CV,MAAMJ,WAAW,GAAG;QACpBE,iBAAiB;YAAEC,OAAOW;YAAOV;YAAOC,UAAUS;QAAM;QAExD,OAAOA;IACT;IAEA,MAAMX,QAAQK,OAAOyD,MAAM,CAACzD,OAAOC,cAAc,CAACK;IAElDZ,iBAAiB;QAAEC;QAAOC;QAAOC,UAAUS;IAAM;IAEjD,KAAK,MAAME,OAAOc,QAAQC,OAAO,CAACjB,OAAQ;QACxC,MAAMmB,aAAazB,OAAO0B,wBAAwB,CAACpB,OAAOE;QAE1D,IAAI,CAACiB,YAAY;YACf;QACF;QAEA,IAAI,CAAE,CAAA,WAAWA,UAAS,GAAI;YAC5B7B,MAAMJ,WAAW,GAAG;QACtB,OAAO;YACLiC,WAAWnB,KAAK,GAAGqB,oBAAoBF,WAAWnB,KAAK,EAAEV;QAC3D;QAEAI,OAAO0D,cAAc,CAAC/D,OAAOa,KAAKiB;IACpC;IAEA0B,sBAAsB;QAAEnB,QAAQ1B;QAAO8C,QAAQzD;IAAM;IAErD,OAAOA;AACT;AAEA,MAAM2C,sBAAsB,CAAChC,QAC3B,OAAOqD,sBAAsB,eAAerD,iBAAiBqD;AAE/D,MAAMH,8BAA8B,CAAC,EAAElD,KAAK,EAAqB;IAC/D,IAAIH,YAAYH,OAAOC,cAAc,CAACK;IAEtC,MAAOH,aAAaA,cAAcH,OAAOG,SAAS,CAAE;QAClD,MAAMyD,cAAczD,UAAU,WAAW;QACzC,MAAM0D,oBACJ,OAAOD,gBAAgB,aAAaE,SAAS3D,SAAS,CAAC4D,QAAQ,CAACC,IAAI,CAACJ,eAAe;QAEtF,MAAMK,sBAAsB3C,QAAQC,OAAO,CAACpB,WAAWqB,IAAI,CAAC,CAAChB,MAAQA,QAAQ;QAE7E,IACEqD,kBAAkBK,QAAQ,CAAC,oBAC3B,YAAYC,IAAI,CAACN,sBACjBI,qBACA;YACA,OAAO;QACT;QAEA9D,YAAYH,OAAOC,cAAc,CAACE;IACpC;IAEA,OAAO;AACT;AAEA,MAAM2C,wBAAwB,CAAC,EAC7BJ,MAAM,EACNV,MAAM,EAIP;IACC,IAAIlB,OAAOC,QAAQ,CAACiB,SAAS;QAC3B,OAAOlB,OAAOsD,IAAI,CAAC1B,QAAQV,OAAOqC,UAAU,EAAErC,OAAOsC,UAAU;IACjE;IAEA,IAAItC,kBAAkBhB,UAAU;QAC9B,OAAO,IAAIA,SAAS0B,QAAQV,OAAOqC,UAAU,EAAErC,OAAOsC,UAAU;IAClE;IAEA,MAAMC,aAAavC,OAAO,WAAW;IAMrC,OAAO,IAAIuC,WAAW7B,QAAQV,OAAOqC,UAAU,EAAE,AAACrC,OAAsBY,MAAM;AAChF;AAEA,MAAMO,wBAAwB,CAAC,EAAEnB,MAAM,EAAEoB,MAAM,EAAsC;IACnF,IAAIpD,OAAOwE,QAAQ,CAACxC,SAAS;QAC3BhC,OAAOyE,MAAM,CAACrB;IAChB,OAAO,IAAIpD,OAAO0E,QAAQ,CAAC1C,SAAS;QAClChC,OAAO2E,IAAI,CAACvB;IACd,OAAO,IAAI,CAACpD,OAAO4E,YAAY,CAAC5C,SAAS;QACvChC,OAAO6E,iBAAiB,CAACzB;IAC3B;AACF;AAEA,MAAM0B,4BAA4B,CAAQ,EACxCC,2BAA2B,KAAK,EAChCC,0BAA0B,IAAI,EAC9BvF,gBAAgB,EAChBwF,0BAA0B,EAC1BjD,MAAM,EACNkD,sBAAsB,IAAI3F,SAAyB,EACnD6D,MAAM,EASP;IACC,IAAI,CAACpB,UAAU,OAAOA,WAAW,UAAU;QACzC,OAAOA;IACT;IAEA,MAAMmD,qBAAqBD,oBAAoBrD,GAAG,CAACG;IACnD,MAAMoD,gBAAgB3F,iBAAiBoC,GAAG,CAACG;IAC3C,MAAMqD,cAAeD,iBAAkBL,CAAAA,2BAA2B3B,SAASkC,SAAQ;IAEnF,IAAItD,kBAAkBO,aAAa;QACjC,MAAMgD,qBACJJ,8BAA8B5C,eAC9B4C,mBAAmBb,UAAU,KAAKtC,OAAOsC,UAAU,GAC/Ca,qBACAE,uBAAuB9C,eAAe8C,YAAYf,UAAU,KAAKtC,OAAOsC,UAAU,GAChFe,cACA,IAAI9C,YAAYP,OAAOsC,UAAU;QAEzCY,oBAAoBpF,GAAG,CAACkC,QAAQuD;QAChC,IAAIrF,WAAWqF,oBAAoBzF,GAAG,CAAC,IAAII,WAAW8B;QAEtD,OAAOuD;IACT;IAEA,IAAIJ,oBAAoB;QACtB,OAAOA;IACT;IAEA,IAAInF,OAAOwF,EAAE,CAACxD,QAAQqD,cAAc;QAClCH,oBAAoBpF,GAAG,CAACkC,QAAQqD;QAEhC,OAAOA;IACT;IAEA,IAAIrD,kBAAkBF,MAAM;QAC1B,MAAM2D,mBAAmBJ,uBAAuBvD,OAAOuD,cAAc,IAAIvD,KAAKE;QAE9EkD,oBAAoBpF,GAAG,CAACkC,QAAQyD;QAChCA,iBAAiBC,OAAO,CAAC1D,OAAO2D,OAAO;QAEvC,OAAOF;IACT;IAEA,IAAIzD,kBAAkBD,QAAQ;QAC5B,MAAM6D,qBACJP,uBAAuBtD,UACvBsD,YAAYrD,MAAM,KAAKA,OAAOA,MAAM,IACpCqD,YAAYpD,KAAK,KAAKD,OAAOC,KAAK,GAC9BoD,cACA,IAAItD,OAAOC,OAAOA,MAAM,EAAEA,OAAOC,KAAK;QAE5CiD,oBAAoBpF,GAAG,CAACkC,QAAQ4D;QAChCA,mBAAmB1D,SAAS,GAAGF,OAAOE,SAAS;QAE/C,OAAO0D;IACT;IAEA,IAAI5D,kBAAkBG,SAAS;QAC7B,MAAM0D,sBAAsBR,uBAAuBlD,UAAUkD,cAAc,IAAIlD;QAE/E+C,oBAAoBpF,GAAG,CAACkC,QAAQ6D;QAChC,KAAK,MAAMrF,OAAO;eAAIqF,oBAAoBC,IAAI;SAAG,CAAE;YACjDD,oBAAoBE,MAAM,CAACvF;QAC7B;QACA,KAAK,MAAM,CAACA,KAAKF,MAAM,IAAI0B,OAAQ;YACjC6D,oBAAoBG,MAAM,CAACxF,KAAKF;QAClC;QAEA,OAAOuF;IACT;IAEA,IAAI7D,kBAAkBI,KAAK;QACzB,MAAM6D,kBAAkBZ,uBAAuBjD,MAAMiD,cAAc,IAAIjD,IAAIJ;QAE3EkD,oBAAoBpF,GAAG,CAACkC,QAAQiE;QAChCA,gBAAgBC,IAAI,GAAGlE,OAAOkE,IAAI;QAElC,OAAOD;IACT;IAEA,IAAIjE,kBAAkBK,iBAAiB;QACrC,MAAM8D,2BACJd,uBAAuBhD,kBAAkBgD,cAAc,IAAIhD;QAE7D6C,oBAAoBpF,GAAG,CAACkC,QAAQmE;QAChC,KAAK,MAAM3F,OAAO;eAAI2F,yBAAyBL,IAAI;SAAG,CAAE;YACtDK,yBAAyBJ,MAAM,CAACvF;QAClC;QACA,KAAK,MAAM,CAACA,KAAKF,MAAM,IAAI0B,OAAQ;YACjCmE,yBAAyBH,MAAM,CAACxF,KAAKF;QACvC;QAEA,OAAO6F;IACT;IAEA,IAAI5D,YAAYE,MAAM,CAACT,SAAS;QAC9B,MAAMoE,eAAepE,OAAOU,MAAM;QAClC,MAAM2D,8BAA8BnB,oBAAoBrD,GAAG,CAACuE;QAC5D,MAAME,iBAAiB7G,iBAAiBoC,GAAG,CAACuE;QAC5C,MAAMb,qBACJc,uCAAuC9D,cACnC8D,8BACA9D,YAAYE,MAAM,CAAC4C,gBAAgBA,YAAY3C,MAAM,YAAYH,cAC/D8C,YAAY3C,MAAM,GAClB4D,0BAA0B/D,cACxB+D,iBACA,IAAI/D,YAAY6D,aAAa9B,UAAU;QAEjDY,oBAAoBpF,GAAG,CAACsG,cAAcb;QACtC,MAAMgB,mBACJhE,YAAYE,MAAM,CAAC4C,gBACnBA,YAAY,WAAW,KAAKrD,OAAO,WAAW,IAC9CqD,YAAYf,UAAU,KAAKtC,OAAOsC,UAAU,IAC5Ce,YAAYhB,UAAU,KAAKrC,OAAOqC,UAAU,GACxCgB,cACAvC,sBAAsB;YAAEJ,QAAQ6C;YAAoBvD;QAAO;QAEjEkD,oBAAoBpF,GAAG,CAACkC,QAAQuE;QAChC,IAAIrG,WACFqG,iBAAiB7D,MAAM,EACvB6D,iBAAiBlC,UAAU,EAC3BkC,iBAAiBjC,UAAU,EAC3BxE,GAAG,CAAC,IAAII,WAAW8B,OAAOU,MAAM,EAAEV,OAAOqC,UAAU,EAAErC,OAAOsC,UAAU;QAExE,OAAOiC;IACT;IAEA,IAAIxD,MAAMC,OAAO,CAAChB,SAAS;QACzB,MAAMwE,oBAAoBzD,MAAMC,OAAO,CAACqC,eAAeA,cAAc,EAAE;QAEvEH,oBAAoBpF,GAAG,CAACkC,QAAQwE;QAEhC,IAAK,IAAI/F,QAAQ,GAAGA,QAAQuB,OAAOY,MAAM,EAAEnC,QAAS;YAClD,MAAMgG,oBAAoB3B,0BAA0B;gBAClDrF;gBACAuC,QAAQA,MAAM,CAACvB,MAAM;gBACrByE;gBACA9B,QAAQoD,iBAAiB,CAAC/F,MAAM;YAClC;YAEAiG,wBAAwB;gBAAElG,KAAKC;gBAAO2C,QAAQoD;gBAAmBlG,OAAOmG;YAAkB;QAC5F;QACAC,wBAAwB;YAAElG,KAAK;YAAU4C,QAAQoD;YAAmBlG,OAAO0B,OAAOY,MAAM;QAAC;QACzFO,sBAAsB;YAAEnB;YAAQoB,QAAQoD;QAAkB;QAE1D,OAAOA;IACT;IAEA,IAAIxE,kBAAkBqB,KAAK;QACzB,MAAMsD,kBAAkBtB,uBAAuBhC,MAAMgC,cAAc,IAAIhC;QAEvE6B,oBAAoBpF,GAAG,CAACkC,QAAQ2E;QAChC,MAAMC,sBAA4C,EAAE;QACpD,KAAK,MAAM,CAACpG,KAAKyC,MAAM,IAAIjB,OAAQ;YACjC,MAAM6E,kBAAkB/B,0BAA0B;gBAChDrF;gBACAuC,QAAQxB;gBACR0E;gBACA9B,QAAQkC;YACV;YACA,MAAMmB,oBAAoB3B,0BAA0B;gBAClDrF;gBACAuC,QAAQiB;gBACRiC;gBACA9B,QAAQuD,gBAAgB9E,GAAG,CAACgF;YAC9B;YAEAD,oBAAoB1D,IAAI,CAAC;gBAAC2D;gBAAiBJ;aAAkB;QAC/D;QAEAE,gBAAgBG,KAAK;QACrB,KAAK,MAAM,CAACtG,KAAKyC,MAAM,IAAI2D,oBAAqB;YAC9CD,gBAAgB7G,GAAG,CAACU,KAAKyC;QAC3B;QAEA,OAAO0D;IACT;IAEA,IAAI3E,kBAAkBsB,KAAK;QACzB,MAAMyD,kBAAkB1B,uBAAuB/B,MAAM+B,cAAc,IAAI/B;QAEvE4B,oBAAoBpF,GAAG,CAACkC,QAAQ+E;QAChC,MAAMH,sBAAiC,EAAE;QACzC,KAAK,MAAM3D,SAASjB,OAAQ;YAC1B4E,oBAAoB1D,IAAI,CACtB4B,0BAA0B;gBACxBrF;gBACAuC,QAAQiB;gBACRiC;gBACA9B,QAAQkC;YACV;QAEJ;QAEAyB,gBAAgBD,KAAK;QACrB,KAAK,MAAM7D,SAAS2D,oBAAqB;YACvCG,gBAAgBxD,GAAG,CAACN;QACtB;QAEA,OAAO8D;IACT;IAEA,IAAIvD,4BAA4B;QAAElD,OAAO0B;IAAO,IAAI;QAClDkD,oBAAoBpF,GAAG,CAACkC,QAAQA;QAEhC,OAAOA;IACT;IAEA,MAAMgF,qBACJ3B,eACA,OAAOA,gBAAgB,YACvBrF,OAAOC,cAAc,CAAC+B,YAAYhC,OAAOC,cAAc,CAACoF,eACpDA,cACArF,OAAOyD,MAAM,CAACzD,OAAOC,cAAc,CAAC+B;IAE1CkD,oBAAoBpF,GAAG,CAACkC,QAAQgF;IAEhC,MAAMC,eAAejF;IACrB,MAAMkF,eAAeF;IAErB,IAAIhC,yBAAyB;QAC3B,KAAK,MAAMxE,OAAOc,QAAQC,OAAO,CAAC2F,cAAe;YAC/C,IAAI,CAAClH,OAAOmH,MAAM,CAACF,cAAczG,QAAQ,CAACyE,4BAA4BmC,IAAI5G,MAAM;gBAC9E,MAAMiB,aAAazB,OAAO0B,wBAAwB,CAACwF,cAAc1G;gBAEjE,IAAIiB,YAAY4F,iBAAiB,OAAO;oBACtC,OAAOH,YAAY,CAAC1G,IAAI;gBAC1B;YACF;QACF;IACF;IAEA,KAAK,MAAMA,OAAOc,QAAQC,OAAO,CAAC0F,cAAe;QAC/C,MAAMK,oBAAoBxC,0BAA0B;YAClDrF;YACAuC,QAAQiF,YAAY,CAACzG,IAAI;YACzB0E;YACA9B,QAAQ8D,YAAY,CAAC1G,IAAI;QAC3B;QAEAkG,wBAAwB;YAAElG;YAAK4C,QAAQ8D;YAAc5G,OAAOgH;QAAkB;IAChF;IAEAnE,sBAAsB;QAAEnB;QAAQoB,QAAQ4D;IAAmB;IAE3D,OAAOA;AACT;AAEA,MAAMN,0BAA0B,CAAC,EAC/BlG,GAAG,EACH4C,MAAM,EACN9C,KAAK,EAKN;IACC,MAAMmB,aAAazB,OAAO0B,wBAAwB,CAAC0B,QAAQ5C;IAC3D,MAAM+G,eAAejG,QAAQO,GAAG,CAACuB,QAAQ5C;IAEzC,IAAIR,OAAOwF,EAAE,CAAC+B,cAAcjH,QAAQ;QAClC;IACF;IAEA,IACE,CAACmB,cACA,CAAA,WAAWA,aAAaA,WAAW+F,QAAQ,KAAK,QAAQ/F,WAAW3B,GAAG,KAAKwF,SAAQ,GACpF;QACAhE,QAAQxB,GAAG,CAACsD,QAAQ5C,KAAKF;IAC3B;AACF;AAEA,MAAMmH,6BAA6B,IAAIlI;AAEvC,OAAO,MAAMmI,8BAA8B,CAAC,EAC1CC,wBAAwB,EACxBC,mBAAmB,EACnBC,KAAK,EACLC,oBAAoB,EACpBtI,WAAW,EAOZ,GACCA,eACA,CAACsI,wBACDH,4BACCC,CAAAA,uBAAuB9I,iCAAiC+I,MAAK,EAAE;AAElE,2FAA2F,GAC3F,OAAO,MAAME,qCAAqC,CAAC,EAAEC,GAAG,EAA2B;IACjF,MAAMC,oBAAoBR,2BAA2B5F,GAAG,CAACmG;IAEzD,IAAI,CAACC,mBAAmB;QACtB;IACF;IAEA,MAAM,EAAEC,WAAW,EAAEzI,gBAAgB,EAAE,GAAGwI;IAE1C,IAAI;QACF,MAAM/C,sBAAsB,IAAI3F;QAEhC2I,YAAYC,OAAO,GAAGrD,0BAA0B;YAC9CC,0BAA0B;YAC1BtF;YACAwF,4BAA4B,IAAI3B,IAAI;gBAAClE;aAA+B;YACpE4C,QAAQ7C,qCAAqC;gBAAE6I;YAAI;YACnD9C;YACA9B,QAAQ8E,YAAYC,OAAO;QAC7B;QAEA,IAAIH,IAAII,eAAe,EAAE;YACvBF,YAAYE,eAAe,GAAGtD,0BAA0B;gBACtDrF;gBACAuC,QAAQgG,IAAII,eAAe;gBAC3BlD;gBACA9B,QAAQ8E,YAAYE,eAAe;YACrC;QACF,OAAO;YACL,OAAOF,YAAYE,eAAe;QACpC;IACF,EAAE,OAAOC,KAAK;QACZH,YAAYI,OAAO,CAACC,MAAM,CAACV,KAAK,CAAC;YAC/BQ;YACAG,KAAK;QACP;IACF,SAAU;QACRzJ,mBAAmBmJ;QACnBT,2BAA2B1B,MAAM,CAACiC;IACpC;AACF,EAAC;AAED,kGAAkG,GAClG,OAAO,MAAMS,8BAA8B,OAAO,EAChDC,mBAAmB,KAAK,EACxBV,GAAG,EAIJ;IACCA,IAAIG,OAAO,KAAK,CAAC;IACjB,MAAMQ,aAAatJ;IACnB,MAAMuJ,WAAW1J,sBAAsB8I,KAAK;QAC1C;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;KACD;IAEDY,SAAST,OAAO,GAAGxG,oBAAoBxC,qCAAqC;QAAE6I;IAAI,IAAIW;IACtFC,SAASC,IAAI,GAAGlH,oBAAoBqG,IAAIa,IAAI,EAAEF;IAC9CC,SAASE,IAAI,GAAGnH,oBAAoBqG,IAAIc,IAAI,EAAEH;IAC9CC,SAASG,KAAK,GAAGpH,oBAAoBqG,IAAIe,KAAK,EAAEJ;IAChDC,SAASI,OAAO,GAAGrH,oBAAoBqG,IAAIgB,OAAO,EAAEL;IACpDC,SAASK,KAAK,GAAGtH,oBAAoBqG,IAAIiB,KAAK,EAAEN;IAChDC,SAASR,eAAe,GAAGzG,oBAAoBqG,IAAII,eAAe,EAAEO;IACpEC,SAASM,WAAW,GAAGvH,oBAAoBqG,IAAIkB,WAAW,EAAEP;IAC5DrH,QAAQxB,GAAG,CAAC8I,UAAU,gBAAgBjH,oBAAoBqG,IAAImB,YAAY,EAAER;IAC5EC,SAASQ,IAAI,GAAGzH,oBAAoBqG,IAAIoB,IAAI,EAAET;IAE9C,IAAI,CAACA,WAAWnJ,WAAW,EAAE;QAC3B,OAAO;YAAEA,aAAa;YAAOwI;QAAI;IACnC;IAEA,OAAO,AAACY,SAAqCS,iBAAiB;IAC9D,OAAOT,SAASU,kBAAkB;IAClC,OAAOV,SAASW,aAAa;IAC7BvK,iBAAiB4J;IAEjB,MAAMY,iBACJxB,IAAIwB,cAAc,KAAK,SAAS,OAAOxB,IAAIwB,cAAc,KAAK,WAC1DxB,IAAIwB,cAAc,GAClBlE;IACN,MAAMmE,cAAc,MAAMxK,qBAAqB;QAC7CuK;QACAlB,SAASN,IAAIM,OAAO;QACpBN,KAAKY;IACP;IACA,MAAMc,qBAAqBD,YAAYX,IAAI,EAAEa;IAE7C,IAAIjB,oBAAoBgB,oBAAoB;QAC1C,MAAME,YAAY/K,KAAKgL,OAAO,CAACH;QAC/B,MAAMI,sBAAsBjL,KAAKkL,IAAI,CACnClL,KAAKmL,OAAO,CAACN,qBACb,GAAG7K,KAAKoL,QAAQ,CAACP,oBAAoBE,WAAW,CAAC,EAAElL,eAAekL,WAAW;QAG/E,MAAMhL,GAAGsL,QAAQ,CAACR,oBAAoBI,qBAAqBnL,UAAUwL,aAAa;QAClFV,YAAYX,IAAI,CAAEa,YAAY,GAAGG;IACnC;IAEArC,2BAA2B3H,GAAG,CAAC2J,aAAa;QAC1CvB,aAAaF;QACbvI,kBAAkBkJ,WAAWlJ,gBAAgB;IAC/C;IAEA,OAAO;QAAED,aAAa;QAAMwI,KAAKyB;IAAY;AAC/C,EAAC"}
@@ -1,3 +0,0 @@
1
- /** @internal Makes a write fail instead of removing a changed field when access is denied. */
2
- export declare const throwOnFieldAccessDeniedContextKey = "_throwOnFieldAccessDenied";
3
- //# sourceMappingURL=throwOnAccessDenied.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"throwOnAccessDenied.d.ts","sourceRoot":"","sources":["../../../../src/fields/hooks/beforeValidate/throwOnAccessDenied.ts"],"names":[],"mappings":"AAAA,8FAA8F;AAC9F,eAAO,MAAM,kCAAkC,8BAA8B,CAAA"}
@@ -1,3 +0,0 @@
1
- /** @internal Makes a write fail instead of removing a changed field when access is denied. */ export const throwOnFieldAccessDeniedContextKey = '_throwOnFieldAccessDenied';
2
-
3
- //# sourceMappingURL=throwOnAccessDenied.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../../src/fields/hooks/beforeValidate/throwOnAccessDenied.ts"],"sourcesContent":["/** @internal Makes a write fail instead of removing a changed field when access is denied. */\nexport const throwOnFieldAccessDeniedContextKey = '_throwOnFieldAccessDenied'\n"],"names":["throwOnFieldAccessDeniedContextKey"],"mappings":"AAAA,4FAA4F,GAC5F,OAAO,MAAMA,qCAAqC,4BAA2B"}
@@ -1,6 +0,0 @@
1
- import type { PayloadRequest } from '../types/index.js';
2
- export declare const appendBranchToFileURL: ({ req, url, }: {
3
- req: PayloadRequest;
4
- url: null | string;
5
- }) => null | string;
6
- //# sourceMappingURL=appendBranchToFileURL.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"appendBranchToFileURL.d.ts","sourceRoot":"","sources":["../../src/uploads/appendBranchToFileURL.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAA;AAKvD,eAAO,MAAM,qBAAqB,kBAG/B;IACD,GAAG,EAAE,cAAc,CAAA;IACnB,GAAG,EAAE,IAAI,GAAG,MAAM,CAAA;CACnB,KAAG,IAAI,GAAG,MA2BV,CAAA"}
@@ -1,24 +0,0 @@
1
- import { resolveBranch } from '../branching/resolveBranch.js';
2
- import { MAIN_BRANCH } from '../branching/types.js';
3
- export const appendBranchToFileURL = ({ req, url })=>{
4
- const branch = resolveBranch(req);
5
- if (!url || branch === MAIN_BRANCH) {
6
- return url;
7
- }
8
- const serverURL = req.payload.config.serverURL;
9
- const isRelativeURL = url.startsWith('/') && !url.startsWith('//');
10
- try {
11
- const parsedURL = new URL(url, serverURL || 'http://payload.local');
12
- if (!isRelativeURL) {
13
- if (!serverURL || parsedURL.origin !== new URL(serverURL).origin) {
14
- return url;
15
- }
16
- }
17
- parsedURL.searchParams.set('branch', branch);
18
- return isRelativeURL ? `${parsedURL.pathname}${parsedURL.search}${parsedURL.hash}` : parsedURL.toString();
19
- } catch {
20
- return url;
21
- }
22
- };
23
-
24
- //# sourceMappingURL=appendBranchToFileURL.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/uploads/appendBranchToFileURL.ts"],"sourcesContent":["import type { PayloadRequest } from '../types/index.js'\n\nimport { resolveBranch } from '../branching/resolveBranch.js'\nimport { MAIN_BRANCH } from '../branching/types.js'\n\nexport const appendBranchToFileURL = ({\n req,\n url,\n}: {\n req: PayloadRequest\n url: null | string\n}): null | string => {\n const branch = resolveBranch(req)\n\n if (!url || branch === MAIN_BRANCH) {\n return url\n }\n\n const serverURL = req.payload.config.serverURL\n const isRelativeURL = url.startsWith('/') && !url.startsWith('//')\n\n try {\n const parsedURL = new URL(url, serverURL || 'http://payload.local')\n\n if (!isRelativeURL) {\n if (!serverURL || parsedURL.origin !== new URL(serverURL).origin) {\n return url\n }\n }\n\n parsedURL.searchParams.set('branch', branch)\n\n return isRelativeURL\n ? `${parsedURL.pathname}${parsedURL.search}${parsedURL.hash}`\n : parsedURL.toString()\n } catch {\n return url\n }\n}\n"],"names":["resolveBranch","MAIN_BRANCH","appendBranchToFileURL","req","url","branch","serverURL","payload","config","isRelativeURL","startsWith","parsedURL","URL","origin","searchParams","set","pathname","search","hash","toString"],"mappings":"AAEA,SAASA,aAAa,QAAQ,gCAA+B;AAC7D,SAASC,WAAW,QAAQ,wBAAuB;AAEnD,OAAO,MAAMC,wBAAwB,CAAC,EACpCC,GAAG,EACHC,GAAG,EAIJ;IACC,MAAMC,SAASL,cAAcG;IAE7B,IAAI,CAACC,OAAOC,WAAWJ,aAAa;QAClC,OAAOG;IACT;IAEA,MAAME,YAAYH,IAAII,OAAO,CAACC,MAAM,CAACF,SAAS;IAC9C,MAAMG,gBAAgBL,IAAIM,UAAU,CAAC,QAAQ,CAACN,IAAIM,UAAU,CAAC;IAE7D,IAAI;QACF,MAAMC,YAAY,IAAIC,IAAIR,KAAKE,aAAa;QAE5C,IAAI,CAACG,eAAe;YAClB,IAAI,CAACH,aAAaK,UAAUE,MAAM,KAAK,IAAID,IAAIN,WAAWO,MAAM,EAAE;gBAChE,OAAOT;YACT;QACF;QAEAO,UAAUG,YAAY,CAACC,GAAG,CAAC,UAAUV;QAErC,OAAOI,gBACH,GAAGE,UAAUK,QAAQ,GAAGL,UAAUM,MAAM,GAAGN,UAAUO,IAAI,EAAE,GAC3DP,UAAUQ,QAAQ;IACxB,EAAE,OAAM;QACN,OAAOf;IACT;AACF,EAAC"}
@@ -1,15 +0,0 @@
1
- import type { SanitizedCollectionConfig } from '../collections/config/types.js';
2
- import type { SanitizedConfig } from '../config/types.js';
3
- import type { PayloadRequest } from '../types/index.js';
4
- type Args = {
5
- collectionConfig: SanitizedCollectionConfig;
6
- config: SanitizedConfig;
7
- deleteFromAdapter?: boolean;
8
- req: PayloadRequest;
9
- retainedDoc?: null | Record<string, unknown>;
10
- sourceDoc: Record<string, unknown>;
11
- };
12
- /** Deletes upload files referenced by `sourceDoc` only when `retainedDoc` does not use them. */
13
- export declare const deleteUploadFilesExclusiveToDocument: ({ collectionConfig, config, deleteFromAdapter, req, retainedDoc, sourceDoc, }: Args) => Promise<void>;
14
- export {};
15
- //# sourceMappingURL=deleteUploadFilesExclusiveToDocument.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"deleteUploadFilesExclusiveToDocument.d.ts","sourceRoot":"","sources":["../../src/uploads/deleteUploadFilesExclusiveToDocument.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAA;AAC/E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAA;AACzD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAA;AAIvD,KAAK,IAAI,GAAG;IACV,gBAAgB,EAAE,yBAAyB,CAAA;IAC3C,MAAM,EAAE,eAAe,CAAA;IACvB,iBAAiB,CAAC,EAAE,OAAO,CAAA;IAC3B,GAAG,EAAE,cAAc,CAAA;IACnB,WAAW,CAAC,EAAE,IAAI,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAC5C,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CACnC,CAAA;AAED,gGAAgG;AAChG,eAAO,MAAM,oCAAoC,kFAO9C,IAAI,KAAG,OAAO,CAAC,IAAI,CAqBrB,CAAA"}
@@ -1,62 +0,0 @@
1
- import { deleteAssociatedFiles } from './deleteAssociatedFiles.js';
2
- /** Deletes upload files referenced by `sourceDoc` only when `retainedDoc` does not use them. */ export const deleteUploadFilesExclusiveToDocument = async ({ collectionConfig, config, deleteFromAdapter = true, req, retainedDoc, sourceDoc })=>{
3
- if (!collectionConfig.upload) {
4
- return;
5
- }
6
- const retainedFilenames = getUploadFilenames(retainedDoc);
7
- const doc = filterDocumentFiles({
8
- retainedFilenames,
9
- sourceDoc
10
- });
11
- if (getUploadFilenames(doc).size > 0) {
12
- await deleteAssociatedFiles({
13
- collectionConfig,
14
- config,
15
- doc,
16
- overrideDelete: true,
17
- req
18
- });
19
- }
20
- if (deleteFromAdapter) {
21
- await collectionConfig.upload.deleteFiles?.({
22
- req,
23
- retainedDoc,
24
- sourceDoc
25
- });
26
- }
27
- };
28
- const filterDocumentFiles = ({ retainedFilenames, sourceDoc })=>{
29
- const sourceFilename = typeof sourceDoc.filename === 'string' && !retainedFilenames.has(sourceDoc.filename) ? sourceDoc.filename : undefined;
30
- const sourceVariants = isRecord(sourceDoc.variants) ? sourceDoc.variants : {};
31
- const variants = Object.fromEntries(Object.entries(sourceVariants).filter(([, variant])=>{
32
- if (!isRecord(variant) || typeof variant.filename !== 'string') {
33
- return false;
34
- }
35
- return !retainedFilenames.has(variant.filename);
36
- }));
37
- return {
38
- ...sourceDoc,
39
- filename: sourceFilename,
40
- variants
41
- };
42
- };
43
- const getUploadFilenames = (doc)=>{
44
- const filenames = new Set();
45
- if (!doc) {
46
- return filenames;
47
- }
48
- if (typeof doc.filename === 'string') {
49
- filenames.add(doc.filename);
50
- }
51
- if (isRecord(doc.variants)) {
52
- for (const variant of Object.values(doc.variants)){
53
- if (isRecord(variant) && typeof variant.filename === 'string') {
54
- filenames.add(variant.filename);
55
- }
56
- }
57
- }
58
- return filenames;
59
- };
60
- const isRecord = (value)=>Boolean(value) && typeof value === 'object' && !Array.isArray(value);
61
-
62
- //# sourceMappingURL=deleteUploadFilesExclusiveToDocument.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/uploads/deleteUploadFilesExclusiveToDocument.ts"],"sourcesContent":["import type { SanitizedCollectionConfig } from '../collections/config/types.js'\nimport type { SanitizedConfig } from '../config/types.js'\nimport type { PayloadRequest } from '../types/index.js'\n\nimport { deleteAssociatedFiles } from './deleteAssociatedFiles.js'\n\ntype Args = {\n collectionConfig: SanitizedCollectionConfig\n config: SanitizedConfig\n deleteFromAdapter?: boolean\n req: PayloadRequest\n retainedDoc?: null | Record<string, unknown>\n sourceDoc: Record<string, unknown>\n}\n\n/** Deletes upload files referenced by `sourceDoc` only when `retainedDoc` does not use them. */\nexport const deleteUploadFilesExclusiveToDocument = async ({\n collectionConfig,\n config,\n deleteFromAdapter = true,\n req,\n retainedDoc,\n sourceDoc,\n}: Args): Promise<void> => {\n if (!collectionConfig.upload) {\n return\n }\n\n const retainedFilenames = getUploadFilenames(retainedDoc)\n const doc = filterDocumentFiles({ retainedFilenames, sourceDoc })\n\n if (getUploadFilenames(doc).size > 0) {\n await deleteAssociatedFiles({\n collectionConfig,\n config,\n doc,\n overrideDelete: true,\n req,\n })\n }\n\n if (deleteFromAdapter) {\n await collectionConfig.upload.deleteFiles?.({ req, retainedDoc, sourceDoc })\n }\n}\n\nconst filterDocumentFiles = ({\n retainedFilenames,\n sourceDoc,\n}: {\n retainedFilenames: Set<string>\n sourceDoc: Record<string, unknown>\n}): Record<string, unknown> => {\n const sourceFilename =\n typeof sourceDoc.filename === 'string' && !retainedFilenames.has(sourceDoc.filename)\n ? sourceDoc.filename\n : undefined\n const sourceVariants = isRecord(sourceDoc.variants) ? sourceDoc.variants : {}\n const variants = Object.fromEntries(\n Object.entries(sourceVariants).filter(([, variant]) => {\n if (!isRecord(variant) || typeof variant.filename !== 'string') {\n return false\n }\n\n return !retainedFilenames.has(variant.filename)\n }),\n )\n\n return {\n ...sourceDoc,\n filename: sourceFilename,\n variants,\n }\n}\n\nconst getUploadFilenames = (doc?: null | Record<string, unknown>): Set<string> => {\n const filenames = new Set<string>()\n\n if (!doc) {\n return filenames\n }\n\n if (typeof doc.filename === 'string') {\n filenames.add(doc.filename)\n }\n\n if (isRecord(doc.variants)) {\n for (const variant of Object.values(doc.variants)) {\n if (isRecord(variant) && typeof variant.filename === 'string') {\n filenames.add(variant.filename)\n }\n }\n }\n\n return filenames\n}\n\nconst isRecord = (value: unknown): value is Record<string, unknown> =>\n Boolean(value) && typeof value === 'object' && !Array.isArray(value)\n"],"names":["deleteAssociatedFiles","deleteUploadFilesExclusiveToDocument","collectionConfig","config","deleteFromAdapter","req","retainedDoc","sourceDoc","upload","retainedFilenames","getUploadFilenames","doc","filterDocumentFiles","size","overrideDelete","deleteFiles","sourceFilename","filename","has","undefined","sourceVariants","isRecord","variants","Object","fromEntries","entries","filter","variant","filenames","Set","add","values","value","Boolean","Array","isArray"],"mappings":"AAIA,SAASA,qBAAqB,QAAQ,6BAA4B;AAWlE,8FAA8F,GAC9F,OAAO,MAAMC,uCAAuC,OAAO,EACzDC,gBAAgB,EAChBC,MAAM,EACNC,oBAAoB,IAAI,EACxBC,GAAG,EACHC,WAAW,EACXC,SAAS,EACJ;IACL,IAAI,CAACL,iBAAiBM,MAAM,EAAE;QAC5B;IACF;IAEA,MAAMC,oBAAoBC,mBAAmBJ;IAC7C,MAAMK,MAAMC,oBAAoB;QAAEH;QAAmBF;IAAU;IAE/D,IAAIG,mBAAmBC,KAAKE,IAAI,GAAG,GAAG;QACpC,MAAMb,sBAAsB;YAC1BE;YACAC;YACAQ;YACAG,gBAAgB;YAChBT;QACF;IACF;IAEA,IAAID,mBAAmB;QACrB,MAAMF,iBAAiBM,MAAM,CAACO,WAAW,GAAG;YAAEV;YAAKC;YAAaC;QAAU;IAC5E;AACF,EAAC;AAED,MAAMK,sBAAsB,CAAC,EAC3BH,iBAAiB,EACjBF,SAAS,EAIV;IACC,MAAMS,iBACJ,OAAOT,UAAUU,QAAQ,KAAK,YAAY,CAACR,kBAAkBS,GAAG,CAACX,UAAUU,QAAQ,IAC/EV,UAAUU,QAAQ,GAClBE;IACN,MAAMC,iBAAiBC,SAASd,UAAUe,QAAQ,IAAIf,UAAUe,QAAQ,GAAG,CAAC;IAC5E,MAAMA,WAAWC,OAAOC,WAAW,CACjCD,OAAOE,OAAO,CAACL,gBAAgBM,MAAM,CAAC,CAAC,GAAGC,QAAQ;QAChD,IAAI,CAACN,SAASM,YAAY,OAAOA,QAAQV,QAAQ,KAAK,UAAU;YAC9D,OAAO;QACT;QAEA,OAAO,CAACR,kBAAkBS,GAAG,CAACS,QAAQV,QAAQ;IAChD;IAGF,OAAO;QACL,GAAGV,SAAS;QACZU,UAAUD;QACVM;IACF;AACF;AAEA,MAAMZ,qBAAqB,CAACC;IAC1B,MAAMiB,YAAY,IAAIC;IAEtB,IAAI,CAAClB,KAAK;QACR,OAAOiB;IACT;IAEA,IAAI,OAAOjB,IAAIM,QAAQ,KAAK,UAAU;QACpCW,UAAUE,GAAG,CAACnB,IAAIM,QAAQ;IAC5B;IAEA,IAAII,SAASV,IAAIW,QAAQ,GAAG;QAC1B,KAAK,MAAMK,WAAWJ,OAAOQ,MAAM,CAACpB,IAAIW,QAAQ,EAAG;YACjD,IAAID,SAASM,YAAY,OAAOA,QAAQV,QAAQ,KAAK,UAAU;gBAC7DW,UAAUE,GAAG,CAACH,QAAQV,QAAQ;YAChC;QACF;IACF;IAEA,OAAOW;AACT;AAEA,MAAMP,WAAW,CAACW,QAChBC,QAAQD,UAAU,OAAOA,UAAU,YAAY,CAACE,MAAMC,OAAO,CAACH"}
@@ -1,24 +0,0 @@
1
- import type { FileHandle } from 'node:fs/promises';
2
- export type FileIdentity = {
3
- changeTimeNanoseconds: bigint;
4
- device: bigint;
5
- inode: bigint;
6
- isRegularFile: boolean;
7
- modificationTimeNanoseconds: bigint;
8
- size: bigint;
9
- };
10
- export declare const getFileIdentity: ({ filePath, }: {
11
- filePath: string;
12
- }) => Promise<FileIdentity | undefined>;
13
- export declare const getFileHandleIdentity: ({ fileHandle, }: {
14
- fileHandle: FileHandle;
15
- }) => Promise<FileIdentity>;
16
- export declare const hasFileIdentity: ({ actual, expected, }: {
17
- actual: FileIdentity | undefined;
18
- expected: FileIdentity;
19
- }) => boolean;
20
- export declare const hasRenameStableFileIdentity: ({ actual, expected, }: {
21
- actual: FileIdentity | undefined;
22
- expected: FileIdentity;
23
- }) => boolean;
24
- //# sourceMappingURL=fileIdentity.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"fileIdentity.d.ts","sourceRoot":"","sources":["../../src/uploads/fileIdentity.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAIlD,MAAM,MAAM,YAAY,GAAG;IACzB,qBAAqB,EAAE,MAAM,CAAA;IAC7B,MAAM,EAAE,MAAM,CAAA;IACd,KAAK,EAAE,MAAM,CAAA;IACb,aAAa,EAAE,OAAO,CAAA;IACtB,2BAA2B,EAAE,MAAM,CAAA;IACnC,IAAI,EAAE,MAAM,CAAA;CACb,CAAA;AAED,eAAO,MAAM,eAAe,kBAEzB;IACD,QAAQ,EAAE,MAAM,CAAA;CACjB,KAAG,OAAO,CAAC,YAAY,GAAG,SAAS,CAYnC,CAAA;AAED,eAAO,MAAM,qBAAqB,oBAE/B;IACD,UAAU,EAAE,UAAU,CAAA;CACvB,KAAG,OAAO,CAAC,YAAY,CAIvB,CAAA;AAED,eAAO,MAAM,eAAe,0BAGzB;IACD,MAAM,EAAE,YAAY,GAAG,SAAS,CAAA;IAChC,QAAQ,EAAE,YAAY,CAAA;CACvB,KAAG,OAO2B,CAAA;AAE/B,eAAO,MAAM,2BAA2B,0BAGrC;IACD,MAAM,EAAE,YAAY,GAAG,SAAS,CAAA;IAChC,QAAQ,EAAE,YAAY,CAAA;CACvB,KAAG,OAM2B,CAAA"}
@@ -1,36 +0,0 @@
1
- import fs from 'node:fs/promises';
2
- export const getFileIdentity = async ({ filePath })=>{
3
- try {
4
- const stats = await fs.lstat(filePath, {
5
- bigint: true
6
- });
7
- return createFileIdentity({
8
- stats
9
- });
10
- } catch (error) {
11
- if (error.code === 'ENOENT') {
12
- return undefined;
13
- }
14
- throw error;
15
- }
16
- };
17
- export const getFileHandleIdentity = async ({ fileHandle })=>{
18
- const stats = await fileHandle.stat({
19
- bigint: true
20
- });
21
- return createFileIdentity({
22
- stats
23
- });
24
- };
25
- export const hasFileIdentity = ({ actual, expected })=>actual !== undefined && actual.changeTimeNanoseconds === expected.changeTimeNanoseconds && actual.device === expected.device && actual.inode === expected.inode && actual.isRegularFile === expected.isRegularFile && actual.modificationTimeNanoseconds === expected.modificationTimeNanoseconds && actual.size === expected.size;
26
- export const hasRenameStableFileIdentity = ({ actual, expected })=>actual !== undefined && actual.device === expected.device && actual.inode === expected.inode && actual.isRegularFile === expected.isRegularFile && actual.modificationTimeNanoseconds === expected.modificationTimeNanoseconds && actual.size === expected.size;
27
- const createFileIdentity = ({ stats })=>({
28
- changeTimeNanoseconds: stats.ctimeNs,
29
- device: stats.dev,
30
- inode: stats.ino,
31
- isRegularFile: stats.isFile(),
32
- modificationTimeNanoseconds: stats.mtimeNs,
33
- size: stats.size
34
- });
35
-
36
- //# sourceMappingURL=fileIdentity.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/uploads/fileIdentity.ts"],"sourcesContent":["import type { BigIntStats } from 'node:fs'\nimport type { FileHandle } from 'node:fs/promises'\n\nimport fs from 'node:fs/promises'\n\nexport type FileIdentity = {\n changeTimeNanoseconds: bigint\n device: bigint\n inode: bigint\n isRegularFile: boolean\n modificationTimeNanoseconds: bigint\n size: bigint\n}\n\nexport const getFileIdentity = async ({\n filePath,\n}: {\n filePath: string\n}): Promise<FileIdentity | undefined> => {\n try {\n const stats = await fs.lstat(filePath, { bigint: true })\n\n return createFileIdentity({ stats })\n } catch (error) {\n if ((error as NodeJS.ErrnoException).code === 'ENOENT') {\n return undefined\n }\n\n throw error\n }\n}\n\nexport const getFileHandleIdentity = async ({\n fileHandle,\n}: {\n fileHandle: FileHandle\n}): Promise<FileIdentity> => {\n const stats = await fileHandle.stat({ bigint: true })\n\n return createFileIdentity({ stats })\n}\n\nexport const hasFileIdentity = ({\n actual,\n expected,\n}: {\n actual: FileIdentity | undefined\n expected: FileIdentity\n}): boolean =>\n actual !== undefined &&\n actual.changeTimeNanoseconds === expected.changeTimeNanoseconds &&\n actual.device === expected.device &&\n actual.inode === expected.inode &&\n actual.isRegularFile === expected.isRegularFile &&\n actual.modificationTimeNanoseconds === expected.modificationTimeNanoseconds &&\n actual.size === expected.size\n\nexport const hasRenameStableFileIdentity = ({\n actual,\n expected,\n}: {\n actual: FileIdentity | undefined\n expected: FileIdentity\n}): boolean =>\n actual !== undefined &&\n actual.device === expected.device &&\n actual.inode === expected.inode &&\n actual.isRegularFile === expected.isRegularFile &&\n actual.modificationTimeNanoseconds === expected.modificationTimeNanoseconds &&\n actual.size === expected.size\n\nconst createFileIdentity = ({ stats }: { stats: BigIntStats }): FileIdentity => ({\n changeTimeNanoseconds: stats.ctimeNs,\n device: stats.dev,\n inode: stats.ino,\n isRegularFile: stats.isFile(),\n modificationTimeNanoseconds: stats.mtimeNs,\n size: stats.size,\n})\n"],"names":["fs","getFileIdentity","filePath","stats","lstat","bigint","createFileIdentity","error","code","undefined","getFileHandleIdentity","fileHandle","stat","hasFileIdentity","actual","expected","changeTimeNanoseconds","device","inode","isRegularFile","modificationTimeNanoseconds","size","hasRenameStableFileIdentity","ctimeNs","dev","ino","isFile","mtimeNs"],"mappings":"AAGA,OAAOA,QAAQ,mBAAkB;AAWjC,OAAO,MAAMC,kBAAkB,OAAO,EACpCC,QAAQ,EAGT;IACC,IAAI;QACF,MAAMC,QAAQ,MAAMH,GAAGI,KAAK,CAACF,UAAU;YAAEG,QAAQ;QAAK;QAEtD,OAAOC,mBAAmB;YAAEH;QAAM;IACpC,EAAE,OAAOI,OAAO;QACd,IAAI,AAACA,MAAgCC,IAAI,KAAK,UAAU;YACtD,OAAOC;QACT;QAEA,MAAMF;IACR;AACF,EAAC;AAED,OAAO,MAAMG,wBAAwB,OAAO,EAC1CC,UAAU,EAGX;IACC,MAAMR,QAAQ,MAAMQ,WAAWC,IAAI,CAAC;QAAEP,QAAQ;IAAK;IAEnD,OAAOC,mBAAmB;QAAEH;IAAM;AACpC,EAAC;AAED,OAAO,MAAMU,kBAAkB,CAAC,EAC9BC,MAAM,EACNC,QAAQ,EAIT,GACCD,WAAWL,aACXK,OAAOE,qBAAqB,KAAKD,SAASC,qBAAqB,IAC/DF,OAAOG,MAAM,KAAKF,SAASE,MAAM,IACjCH,OAAOI,KAAK,KAAKH,SAASG,KAAK,IAC/BJ,OAAOK,aAAa,KAAKJ,SAASI,aAAa,IAC/CL,OAAOM,2BAA2B,KAAKL,SAASK,2BAA2B,IAC3EN,OAAOO,IAAI,KAAKN,SAASM,IAAI,CAAA;AAE/B,OAAO,MAAMC,8BAA8B,CAAC,EAC1CR,MAAM,EACNC,QAAQ,EAIT,GACCD,WAAWL,aACXK,OAAOG,MAAM,KAAKF,SAASE,MAAM,IACjCH,OAAOI,KAAK,KAAKH,SAASG,KAAK,IAC/BJ,OAAOK,aAAa,KAAKJ,SAASI,aAAa,IAC/CL,OAAOM,2BAA2B,KAAKL,SAASK,2BAA2B,IAC3EN,OAAOO,IAAI,KAAKN,SAASM,IAAI,CAAA;AAE/B,MAAMf,qBAAqB,CAAC,EAAEH,KAAK,EAA0B,GAAoB,CAAA;QAC/Ea,uBAAuBb,MAAMoB,OAAO;QACpCN,QAAQd,MAAMqB,GAAG;QACjBN,OAAOf,MAAMsB,GAAG;QAChBN,eAAehB,MAAMuB,MAAM;QAC3BN,6BAA6BjB,MAAMwB,OAAO;QAC1CN,MAAMlB,MAAMkB,IAAI;IAClB,CAAA"}
@@ -1,17 +0,0 @@
1
- import type { FileIdentity } from './fileIdentity.js';
2
- export type QuarantinedFile = {
3
- directoryPath: string;
4
- fileIdentity: FileIdentity;
5
- filePath: string;
6
- };
7
- export declare const quarantineFile: ({ filePath, }: {
8
- filePath: string;
9
- }) => Promise<QuarantinedFile | undefined>;
10
- export declare const discardQuarantinedFile: ({ quarantinedFile, }: {
11
- quarantinedFile: QuarantinedFile;
12
- }) => Promise<void>;
13
- export declare const restoreQuarantinedFile: ({ quarantinedFile, targetFilePath, }: {
14
- quarantinedFile: QuarantinedFile;
15
- targetFilePath: string;
16
- }) => Promise<void>;
17
- //# sourceMappingURL=fileQuarantine.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"fileQuarantine.d.ts","sourceRoot":"","sources":["../../src/uploads/fileQuarantine.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAKrD,MAAM,MAAM,eAAe,GAAG;IAC5B,aAAa,EAAE,MAAM,CAAA;IACrB,YAAY,EAAE,YAAY,CAAA;IAC1B,QAAQ,EAAE,MAAM,CAAA;CACjB,CAAA;AAED,eAAO,MAAM,cAAc,kBAExB;IACD,QAAQ,EAAE,MAAM,CAAA;CACjB,KAAG,OAAO,CAAC,eAAe,GAAG,SAAS,CAgCtC,CAAA;AAED,eAAO,MAAM,sBAAsB,yBAEhC;IACD,eAAe,EAAE,eAAe,CAAA;CACjC,KAAG,OAAO,CAAC,IAAI,CAEf,CAAA;AAED,eAAO,MAAM,sBAAsB,yCAGhC;IACD,eAAe,EAAE,eAAe,CAAA;IAChC,cAAc,EAAE,MAAM,CAAA;CACvB,KAAG,OAAO,CAAC,IAAI,CAMf,CAAA"}
@@ -1,52 +0,0 @@
1
- import { randomUUID } from 'node:crypto';
2
- import fs from 'node:fs/promises';
3
- import path from 'node:path';
4
- import { getFileIdentity } from './fileIdentity.js';
5
- import { linkFileWithoutOverwrite } from './linkFileWithoutOverwrite.js';
6
- export const quarantineFile = async ({ filePath })=>{
7
- const directoryPath = path.join(path.dirname(filePath), `.payload-file-quarantine-${randomUUID()}`);
8
- await fs.mkdir(directoryPath, {
9
- mode: 0o700
10
- });
11
- const quarantinedFilePath = path.join(directoryPath, 'file');
12
- try {
13
- await fs.rename(filePath, quarantinedFilePath);
14
- } catch (error) {
15
- await fs.rm(directoryPath, {
16
- force: true,
17
- recursive: true
18
- }).catch(()=>undefined);
19
- if (error.code === 'ENOENT') {
20
- return undefined;
21
- }
22
- throw error;
23
- }
24
- const fileIdentity = await getFileIdentity({
25
- filePath: quarantinedFilePath
26
- });
27
- if (!fileIdentity) {
28
- throw new Error('The quarantined file was not present after it was moved.');
29
- }
30
- return {
31
- directoryPath,
32
- fileIdentity,
33
- filePath: quarantinedFilePath
34
- };
35
- };
36
- export const discardQuarantinedFile = async ({ quarantinedFile })=>{
37
- await fs.rm(quarantinedFile.directoryPath, {
38
- force: true,
39
- recursive: true
40
- });
41
- };
42
- export const restoreQuarantinedFile = async ({ quarantinedFile, targetFilePath })=>{
43
- await linkFileWithoutOverwrite({
44
- sourceFilePath: quarantinedFile.filePath,
45
- targetFilePath
46
- });
47
- await discardQuarantinedFile({
48
- quarantinedFile
49
- });
50
- };
51
-
52
- //# sourceMappingURL=fileQuarantine.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/uploads/fileQuarantine.ts"],"sourcesContent":["import { randomUUID } from 'node:crypto'\nimport fs from 'node:fs/promises'\nimport path from 'node:path'\n\nimport type { FileIdentity } from './fileIdentity.js'\n\nimport { getFileIdentity } from './fileIdentity.js'\nimport { linkFileWithoutOverwrite } from './linkFileWithoutOverwrite.js'\n\nexport type QuarantinedFile = {\n directoryPath: string\n fileIdentity: FileIdentity\n filePath: string\n}\n\nexport const quarantineFile = async ({\n filePath,\n}: {\n filePath: string\n}): Promise<QuarantinedFile | undefined> => {\n const directoryPath = path.join(\n path.dirname(filePath),\n `.payload-file-quarantine-${randomUUID()}`,\n )\n\n await fs.mkdir(directoryPath, { mode: 0o700 })\n const quarantinedFilePath = path.join(directoryPath, 'file')\n\n try {\n await fs.rename(filePath, quarantinedFilePath)\n } catch (error) {\n await fs.rm(directoryPath, { force: true, recursive: true }).catch(() => undefined)\n\n if ((error as NodeJS.ErrnoException).code === 'ENOENT') {\n return undefined\n }\n\n throw error\n }\n\n const fileIdentity = await getFileIdentity({ filePath: quarantinedFilePath })\n\n if (!fileIdentity) {\n throw new Error('The quarantined file was not present after it was moved.')\n }\n\n return {\n directoryPath,\n fileIdentity,\n filePath: quarantinedFilePath,\n }\n}\n\nexport const discardQuarantinedFile = async ({\n quarantinedFile,\n}: {\n quarantinedFile: QuarantinedFile\n}): Promise<void> => {\n await fs.rm(quarantinedFile.directoryPath, { force: true, recursive: true })\n}\n\nexport const restoreQuarantinedFile = async ({\n quarantinedFile,\n targetFilePath,\n}: {\n quarantinedFile: QuarantinedFile\n targetFilePath: string\n}): Promise<void> => {\n await linkFileWithoutOverwrite({\n sourceFilePath: quarantinedFile.filePath,\n targetFilePath,\n })\n await discardQuarantinedFile({ quarantinedFile })\n}\n"],"names":["randomUUID","fs","path","getFileIdentity","linkFileWithoutOverwrite","quarantineFile","filePath","directoryPath","join","dirname","mkdir","mode","quarantinedFilePath","rename","error","rm","force","recursive","catch","undefined","code","fileIdentity","Error","discardQuarantinedFile","quarantinedFile","restoreQuarantinedFile","targetFilePath","sourceFilePath"],"mappings":"AAAA,SAASA,UAAU,QAAQ,cAAa;AACxC,OAAOC,QAAQ,mBAAkB;AACjC,OAAOC,UAAU,YAAW;AAI5B,SAASC,eAAe,QAAQ,oBAAmB;AACnD,SAASC,wBAAwB,QAAQ,gCAA+B;AAQxE,OAAO,MAAMC,iBAAiB,OAAO,EACnCC,QAAQ,EAGT;IACC,MAAMC,gBAAgBL,KAAKM,IAAI,CAC7BN,KAAKO,OAAO,CAACH,WACb,CAAC,yBAAyB,EAAEN,cAAc;IAG5C,MAAMC,GAAGS,KAAK,CAACH,eAAe;QAAEI,MAAM;IAAM;IAC5C,MAAMC,sBAAsBV,KAAKM,IAAI,CAACD,eAAe;IAErD,IAAI;QACF,MAAMN,GAAGY,MAAM,CAACP,UAAUM;IAC5B,EAAE,OAAOE,OAAO;QACd,MAAMb,GAAGc,EAAE,CAACR,eAAe;YAAES,OAAO;YAAMC,WAAW;QAAK,GAAGC,KAAK,CAAC,IAAMC;QAEzE,IAAI,AAACL,MAAgCM,IAAI,KAAK,UAAU;YACtD,OAAOD;QACT;QAEA,MAAML;IACR;IAEA,MAAMO,eAAe,MAAMlB,gBAAgB;QAAEG,UAAUM;IAAoB;IAE3E,IAAI,CAACS,cAAc;QACjB,MAAM,IAAIC,MAAM;IAClB;IAEA,OAAO;QACLf;QACAc;QACAf,UAAUM;IACZ;AACF,EAAC;AAED,OAAO,MAAMW,yBAAyB,OAAO,EAC3CC,eAAe,EAGhB;IACC,MAAMvB,GAAGc,EAAE,CAACS,gBAAgBjB,aAAa,EAAE;QAAES,OAAO;QAAMC,WAAW;IAAK;AAC5E,EAAC;AAED,OAAO,MAAMQ,yBAAyB,OAAO,EAC3CD,eAAe,EACfE,cAAc,EAIf;IACC,MAAMtB,yBAAyB;QAC7BuB,gBAAgBH,gBAAgBlB,QAAQ;QACxCoB;IACF;IACA,MAAMH,uBAAuB;QAAEC;IAAgB;AACjD,EAAC"}
@@ -1,13 +0,0 @@
1
- /**
2
- * Atomically installs a same-filesystem file only when the target path is absent.
3
- *
4
- * Hard links provide this guarantee on supported Windows and POSIX filesystems. If the
5
- * filesystem does not support them, the caller keeps its private backup or quarantine.
6
- * A copy fallback is intentionally unsafe here: a failed copy can leave a partial target
7
- * that cannot then be removed without risking a concurrent replacement.
8
- */
9
- export declare const linkFileWithoutOverwrite: ({ sourceFilePath, targetFilePath, }: {
10
- sourceFilePath: string;
11
- targetFilePath: string;
12
- }) => Promise<void>;
13
- //# sourceMappingURL=linkFileWithoutOverwrite.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"linkFileWithoutOverwrite.d.ts","sourceRoot":"","sources":["../../src/uploads/linkFileWithoutOverwrite.ts"],"names":[],"mappings":"AAEA;;;;;;;GAOG;AACH,eAAO,MAAM,wBAAwB,wCAGlC;IACD,cAAc,EAAE,MAAM,CAAA;IACtB,cAAc,EAAE,MAAM,CAAA;CACvB,KAAG,OAAO,CAAC,IAAI,CAEf,CAAA"}
@@ -1,13 +0,0 @@
1
- import fs from 'node:fs/promises';
2
- /**
3
- * Atomically installs a same-filesystem file only when the target path is absent.
4
- *
5
- * Hard links provide this guarantee on supported Windows and POSIX filesystems. If the
6
- * filesystem does not support them, the caller keeps its private backup or quarantine.
7
- * A copy fallback is intentionally unsafe here: a failed copy can leave a partial target
8
- * that cannot then be removed without risking a concurrent replacement.
9
- */ export const linkFileWithoutOverwrite = async ({ sourceFilePath, targetFilePath })=>{
10
- await fs.link(sourceFilePath, targetFilePath);
11
- };
12
-
13
- //# sourceMappingURL=linkFileWithoutOverwrite.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/uploads/linkFileWithoutOverwrite.ts"],"sourcesContent":["import fs from 'node:fs/promises'\n\n/**\n * Atomically installs a same-filesystem file only when the target path is absent.\n *\n * Hard links provide this guarantee on supported Windows and POSIX filesystems. If the\n * filesystem does not support them, the caller keeps its private backup or quarantine.\n * A copy fallback is intentionally unsafe here: a failed copy can leave a partial target\n * that cannot then be removed without risking a concurrent replacement.\n */\nexport const linkFileWithoutOverwrite = async ({\n sourceFilePath,\n targetFilePath,\n}: {\n sourceFilePath: string\n targetFilePath: string\n}): Promise<void> => {\n await fs.link(sourceFilePath, targetFilePath)\n}\n"],"names":["fs","linkFileWithoutOverwrite","sourceFilePath","targetFilePath","link"],"mappings":"AAAA,OAAOA,QAAQ,mBAAkB;AAEjC;;;;;;;CAOC,GACD,OAAO,MAAMC,2BAA2B,OAAO,EAC7CC,cAAc,EACdC,cAAc,EAIf;IACC,MAAMH,GAAGI,IAAI,CAACF,gBAAgBC;AAChC,EAAC"}
@@ -1,31 +0,0 @@
1
- import type { FileIdentity } from './fileIdentity.js';
2
- import type { FileToSave } from './types.js';
3
- type UploadFileRollback = {
4
- backupFileIdentity?: FileIdentity;
5
- backupFilePath?: string;
6
- directoryPath: string;
7
- expectedDestinationFileIdentity?: FileIdentity;
8
- filePath: string;
9
- publicationState: 'failed' | 'indeterminate' | 'not-published' | 'owned';
10
- publishQueue: Promise<void>;
11
- stagedFilePaths: Set<string>;
12
- uploadedFileIdentity?: FileIdentity;
13
- };
14
- export type UploadFileRollbacks = Map<string, UploadFileRollback>;
15
- export declare const stageUploadFileRollback: ({ file, rollbacks, }: {
16
- file: FileToSave;
17
- rollbacks: UploadFileRollbacks;
18
- }) => Promise<FileToSave>;
19
- export declare const publishUploadedFile: ({ file, rollbacks, stagedFile, }: {
20
- file: FileToSave;
21
- rollbacks: UploadFileRollbacks;
22
- stagedFile: FileToSave;
23
- }) => Promise<void>;
24
- export declare const cleanupUploadFileRollbacks: ({ rollbacks, }: {
25
- rollbacks: UploadFileRollbacks;
26
- }) => Promise<void>;
27
- export declare const rollbackUploadFiles: ({ rollbacks, }: {
28
- rollbacks: UploadFileRollbacks;
29
- }) => Promise<void>;
30
- export {};
31
- //# sourceMappingURL=uploadFileRollback.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"uploadFileRollback.d.ts","sourceRoot":"","sources":["../../src/uploads/uploadFileRollback.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AACrD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAA;AAU5C,KAAK,kBAAkB,GAAG;IACxB,kBAAkB,CAAC,EAAE,YAAY,CAAA;IACjC,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,aAAa,EAAE,MAAM,CAAA;IACrB,+BAA+B,CAAC,EAAE,YAAY,CAAA;IAC9C,QAAQ,EAAE,MAAM,CAAA;IAChB,gBAAgB,EAAE,QAAQ,GAAG,eAAe,GAAG,eAAe,GAAG,OAAO,CAAA;IACxE,YAAY,EAAE,OAAO,CAAC,IAAI,CAAC,CAAA;IAC3B,eAAe,EAAE,GAAG,CAAC,MAAM,CAAC,CAAA;IAC5B,oBAAoB,CAAC,EAAE,YAAY,CAAA;CACpC,CAAA;AAED,MAAM,MAAM,mBAAmB,GAAG,GAAG,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAA;AAEjE,eAAO,MAAM,uBAAuB,yBAGjC;IACD,IAAI,EAAE,UAAU,CAAA;IAChB,SAAS,EAAE,mBAAmB,CAAA;CAC/B,KAAG,OAAO,CAAC,UAAU,CAarB,CAAA;AAED,eAAO,MAAM,mBAAmB,qCAI7B;IACD,IAAI,EAAE,UAAU,CAAA;IAChB,SAAS,EAAE,mBAAmB,CAAA;IAC9B,UAAU,EAAE,UAAU,CAAA;CACvB,KAAG,OAAO,CAAC,IAAI,CAwEf,CAAA;AAED,eAAO,MAAM,0BAA0B,mBAEpC;IACD,SAAS,EAAE,mBAAmB,CAAA;CAC/B,KAAG,OAAO,CAAC,IAAI,CAaf,CAAA;AAED,eAAO,MAAM,mBAAmB,mBAE7B;IACD,SAAS,EAAE,mBAAmB,CAAA;CAC/B,KAAG,OAAO,CAAC,IAAI,CAcf,CAAA"}