payload 3.0.0-beta.53 → 3.0.0-beta.55

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 (561) hide show
  1. package/dist/admin/LanguageOptions.js.map +1 -1
  2. package/dist/admin/RichText.js.map +1 -1
  3. package/dist/admin/elements/Cell.d.ts +0 -1
  4. package/dist/admin/elements/Cell.d.ts.map +1 -1
  5. package/dist/admin/elements/Cell.js.map +1 -1
  6. package/dist/admin/elements/DatePicker.js.map +1 -1
  7. package/dist/admin/elements/PreviewButton.js.map +1 -1
  8. package/dist/admin/elements/PublishButton.js.map +1 -1
  9. package/dist/admin/elements/SaveButton.js.map +1 -1
  10. package/dist/admin/elements/SaveDraftButton.js.map +1 -1
  11. package/dist/admin/elements/Tab.d.ts +0 -1
  12. package/dist/admin/elements/Tab.d.ts.map +1 -1
  13. package/dist/admin/elements/Tab.js.map +1 -1
  14. package/dist/admin/elements/Upload.d.ts +3 -0
  15. package/dist/admin/elements/Upload.d.ts.map +1 -0
  16. package/dist/admin/elements/Upload.js +3 -0
  17. package/dist/admin/elements/Upload.js.map +1 -0
  18. package/dist/admin/elements/WithServerSideProps.js.map +1 -1
  19. package/dist/admin/forms/Error.d.ts +0 -1
  20. package/dist/admin/forms/Error.d.ts.map +1 -1
  21. package/dist/admin/forms/Error.js.map +1 -1
  22. package/dist/admin/forms/FieldDescription.js.map +1 -1
  23. package/dist/admin/forms/FieldTypes.d.ts +0 -1
  24. package/dist/admin/forms/FieldTypes.d.ts.map +1 -1
  25. package/dist/admin/forms/FieldTypes.js.map +1 -1
  26. package/dist/admin/forms/Form.js.map +1 -1
  27. package/dist/admin/forms/Label.d.ts +0 -1
  28. package/dist/admin/forms/Label.d.ts.map +1 -1
  29. package/dist/admin/forms/Label.js.map +1 -1
  30. package/dist/admin/forms/RowLabel.js.map +1 -1
  31. package/dist/admin/types.d.ts +1 -0
  32. package/dist/admin/types.d.ts.map +1 -1
  33. package/dist/admin/types.js.map +1 -1
  34. package/dist/admin/views/types.d.ts +0 -1
  35. package/dist/admin/views/types.d.ts.map +1 -1
  36. package/dist/admin/views/types.js.map +1 -1
  37. package/dist/assets/assets.d.js.map +1 -1
  38. package/dist/auth/baseFields/accountLock.d.ts.map +1 -1
  39. package/dist/auth/baseFields/accountLock.js.map +1 -1
  40. package/dist/auth/baseFields/apiKey.d.ts.map +1 -1
  41. package/dist/auth/baseFields/apiKey.js.map +1 -1
  42. package/dist/auth/baseFields/auth.js.map +1 -1
  43. package/dist/auth/baseFields/verification.d.ts.map +1 -1
  44. package/dist/auth/baseFields/verification.js.map +1 -1
  45. package/dist/auth/cookies.d.ts +3 -3
  46. package/dist/auth/cookies.d.ts.map +1 -1
  47. package/dist/auth/cookies.js.map +1 -1
  48. package/dist/auth/crypto.js.map +1 -1
  49. package/dist/auth/defaultAccess.js.map +1 -1
  50. package/dist/auth/defaultUser.js.map +1 -1
  51. package/dist/auth/executeAccess.d.ts.map +1 -1
  52. package/dist/auth/executeAccess.js.map +1 -1
  53. package/dist/auth/executeAuthStrategies.d.ts +2 -2
  54. package/dist/auth/executeAuthStrategies.d.ts.map +1 -1
  55. package/dist/auth/executeAuthStrategies.js.map +1 -1
  56. package/dist/auth/extractJWT.d.ts +1 -1
  57. package/dist/auth/extractJWT.d.ts.map +1 -1
  58. package/dist/auth/extractJWT.js.map +1 -1
  59. package/dist/auth/getAccessResults.js.map +1 -1
  60. package/dist/auth/getFieldsToSign.d.ts +1 -1
  61. package/dist/auth/getFieldsToSign.d.ts.map +1 -1
  62. package/dist/auth/getFieldsToSign.js.map +1 -1
  63. package/dist/auth/index.js.map +1 -1
  64. package/dist/auth/isLocked.js.map +1 -1
  65. package/dist/auth/operations/access.d.ts.map +1 -1
  66. package/dist/auth/operations/access.js.map +1 -1
  67. package/dist/auth/operations/auth.d.ts +2 -3
  68. package/dist/auth/operations/auth.d.ts.map +1 -1
  69. package/dist/auth/operations/auth.js +0 -4
  70. package/dist/auth/operations/auth.js.map +1 -1
  71. package/dist/auth/operations/forgotPassword.d.ts.map +1 -1
  72. package/dist/auth/operations/forgotPassword.js.map +1 -1
  73. package/dist/auth/operations/init.d.ts.map +1 -1
  74. package/dist/auth/operations/init.js.map +1 -1
  75. package/dist/auth/operations/local/auth.d.ts.map +1 -1
  76. package/dist/auth/operations/local/auth.js.map +1 -1
  77. package/dist/auth/operations/local/forgotPassword.d.ts +3 -3
  78. package/dist/auth/operations/local/forgotPassword.d.ts.map +1 -1
  79. package/dist/auth/operations/local/forgotPassword.js.map +1 -1
  80. package/dist/auth/operations/local/index.js.map +1 -1
  81. package/dist/auth/operations/local/login.d.ts +4 -4
  82. package/dist/auth/operations/local/login.d.ts.map +1 -1
  83. package/dist/auth/operations/local/login.js.map +1 -1
  84. package/dist/auth/operations/local/resetPassword.d.ts +3 -3
  85. package/dist/auth/operations/local/resetPassword.d.ts.map +1 -1
  86. package/dist/auth/operations/local/resetPassword.js.map +1 -1
  87. package/dist/auth/operations/local/unlock.d.ts +3 -3
  88. package/dist/auth/operations/local/unlock.d.ts.map +1 -1
  89. package/dist/auth/operations/local/unlock.js.map +1 -1
  90. package/dist/auth/operations/local/verifyEmail.d.ts +3 -3
  91. package/dist/auth/operations/local/verifyEmail.d.ts.map +1 -1
  92. package/dist/auth/operations/local/verifyEmail.js.map +1 -1
  93. package/dist/auth/operations/login.d.ts +4 -4
  94. package/dist/auth/operations/login.d.ts.map +1 -1
  95. package/dist/auth/operations/login.js.map +1 -1
  96. package/dist/auth/operations/logout.d.ts.map +1 -1
  97. package/dist/auth/operations/logout.js.map +1 -1
  98. package/dist/auth/operations/me.d.ts +1 -0
  99. package/dist/auth/operations/me.d.ts.map +1 -1
  100. package/dist/auth/operations/me.js +1 -0
  101. package/dist/auth/operations/me.js.map +1 -1
  102. package/dist/auth/operations/refresh.d.ts +1 -0
  103. package/dist/auth/operations/refresh.d.ts.map +1 -1
  104. package/dist/auth/operations/refresh.js +1 -0
  105. package/dist/auth/operations/refresh.js.map +1 -1
  106. package/dist/auth/operations/registerFirstUser.d.ts +7 -10
  107. package/dist/auth/operations/registerFirstUser.d.ts.map +1 -1
  108. package/dist/auth/operations/registerFirstUser.js.map +1 -1
  109. package/dist/auth/operations/resetPassword.d.ts.map +1 -1
  110. package/dist/auth/operations/resetPassword.js.map +1 -1
  111. package/dist/auth/operations/unlock.d.ts.map +1 -1
  112. package/dist/auth/operations/unlock.js.map +1 -1
  113. package/dist/auth/operations/verifyEmail.d.ts.map +1 -1
  114. package/dist/auth/operations/verifyEmail.js.map +1 -1
  115. package/dist/auth/sendVerificationEmail.js.map +1 -1
  116. package/dist/auth/strategies/apiKey.js.map +1 -1
  117. package/dist/auth/strategies/jwt.js.map +1 -1
  118. package/dist/auth/strategies/local/authenticate.d.ts.map +1 -1
  119. package/dist/auth/strategies/local/authenticate.js.map +1 -1
  120. package/dist/auth/strategies/local/generatePasswordSaltHash.d.ts.map +1 -1
  121. package/dist/auth/strategies/local/generatePasswordSaltHash.js.map +1 -1
  122. package/dist/auth/strategies/local/incrementLoginAttempts.d.ts.map +1 -1
  123. package/dist/auth/strategies/local/incrementLoginAttempts.js.map +1 -1
  124. package/dist/auth/strategies/local/register.d.ts.map +1 -1
  125. package/dist/auth/strategies/local/register.js.map +1 -1
  126. package/dist/auth/strategies/local/resetLoginAttempts.d.ts.map +1 -1
  127. package/dist/auth/strategies/local/resetLoginAttempts.js.map +1 -1
  128. package/dist/auth/types.d.ts +1 -2
  129. package/dist/auth/types.d.ts.map +1 -1
  130. package/dist/auth/types.js.map +1 -1
  131. package/dist/bin/generateTypes.js.map +1 -1
  132. package/dist/bin/index.js.map +1 -1
  133. package/dist/bin/loadEnv.js.map +1 -1
  134. package/dist/bin/loader/clientExtensions.js.map +1 -1
  135. package/dist/bin/loader/compile.js.map +1 -1
  136. package/dist/bin/loader/ignores.js.map +1 -1
  137. package/dist/bin/loader/index.js.map +1 -1
  138. package/dist/bin/loader/read-default-tsconfig.js.map +1 -1
  139. package/dist/bin/loader/resolveOriginalPath.js.map +1 -1
  140. package/dist/bin/migrate.d.ts.map +1 -1
  141. package/dist/bin/migrate.js.map +1 -1
  142. package/dist/collections/config/build.js.map +1 -1
  143. package/dist/collections/config/client.d.ts +79 -109
  144. package/dist/collections/config/client.d.ts.map +1 -1
  145. package/dist/collections/config/client.js.map +1 -1
  146. package/dist/collections/config/defaults.js.map +1 -1
  147. package/dist/collections/config/sanitize.d.ts.map +1 -1
  148. package/dist/collections/config/sanitize.js.map +1 -1
  149. package/dist/collections/config/schema.d.ts.map +1 -1
  150. package/dist/collections/config/schema.js +3 -5
  151. package/dist/collections/config/schema.js.map +1 -1
  152. package/dist/collections/config/types.d.ts +17 -10
  153. package/dist/collections/config/types.d.ts.map +1 -1
  154. package/dist/collections/config/types.js.map +1 -1
  155. package/dist/collections/dataloader.js.map +1 -1
  156. package/dist/collections/operations/count.d.ts +3 -2
  157. package/dist/collections/operations/count.d.ts.map +1 -1
  158. package/dist/collections/operations/count.js.map +1 -1
  159. package/dist/collections/operations/create.d.ts +5 -9
  160. package/dist/collections/operations/create.d.ts.map +1 -1
  161. package/dist/collections/operations/create.js.map +1 -1
  162. package/dist/collections/operations/delete.d.ts +5 -5
  163. package/dist/collections/operations/delete.d.ts.map +1 -1
  164. package/dist/collections/operations/delete.js.map +1 -1
  165. package/dist/collections/operations/deleteByID.d.ts +4 -3
  166. package/dist/collections/operations/deleteByID.d.ts.map +1 -1
  167. package/dist/collections/operations/deleteByID.js.map +1 -1
  168. package/dist/collections/operations/docAccess.js.map +1 -1
  169. package/dist/collections/operations/duplicate.d.ts +3 -3
  170. package/dist/collections/operations/duplicate.d.ts.map +1 -1
  171. package/dist/collections/operations/duplicate.js.map +1 -1
  172. package/dist/collections/operations/find.d.ts +3 -2
  173. package/dist/collections/operations/find.d.ts.map +1 -1
  174. package/dist/collections/operations/find.js.map +1 -1
  175. package/dist/collections/operations/findByID.d.ts +3 -2
  176. package/dist/collections/operations/findByID.d.ts.map +1 -1
  177. package/dist/collections/operations/findByID.js +2 -3
  178. package/dist/collections/operations/findByID.js.map +1 -1
  179. package/dist/collections/operations/findVersionByID.d.ts +1 -1
  180. package/dist/collections/operations/findVersionByID.d.ts.map +1 -1
  181. package/dist/collections/operations/findVersionByID.js.map +1 -1
  182. package/dist/collections/operations/findVersions.d.ts +1 -1
  183. package/dist/collections/operations/findVersions.d.ts.map +1 -1
  184. package/dist/collections/operations/findVersions.js.map +1 -1
  185. package/dist/collections/operations/local/count.d.ts +5 -5
  186. package/dist/collections/operations/local/count.d.ts.map +1 -1
  187. package/dist/collections/operations/local/count.js.map +1 -1
  188. package/dist/collections/operations/local/create.d.ts +7 -7
  189. package/dist/collections/operations/local/create.d.ts.map +1 -1
  190. package/dist/collections/operations/local/create.js.map +1 -1
  191. package/dist/collections/operations/local/delete.d.ts +12 -12
  192. package/dist/collections/operations/local/delete.d.ts.map +1 -1
  193. package/dist/collections/operations/local/delete.js.map +1 -1
  194. package/dist/collections/operations/local/duplicate.d.ts +6 -5
  195. package/dist/collections/operations/local/duplicate.d.ts.map +1 -1
  196. package/dist/collections/operations/local/duplicate.js.map +1 -1
  197. package/dist/collections/operations/local/find.d.ts +7 -6
  198. package/dist/collections/operations/local/find.d.ts.map +1 -1
  199. package/dist/collections/operations/local/find.js +1 -1
  200. package/dist/collections/operations/local/find.js.map +1 -1
  201. package/dist/collections/operations/local/findByID.d.ts +7 -6
  202. package/dist/collections/operations/local/findByID.d.ts.map +1 -1
  203. package/dist/collections/operations/local/findByID.js.map +1 -1
  204. package/dist/collections/operations/local/findVersionByID.d.ts +7 -6
  205. package/dist/collections/operations/local/findVersionByID.d.ts.map +1 -1
  206. package/dist/collections/operations/local/findVersionByID.js.map +1 -1
  207. package/dist/collections/operations/local/findVersions.d.ts +7 -6
  208. package/dist/collections/operations/local/findVersions.d.ts.map +1 -1
  209. package/dist/collections/operations/local/findVersions.js.map +1 -1
  210. package/dist/collections/operations/local/index.d.ts +2 -2
  211. package/dist/collections/operations/local/index.d.ts.map +1 -1
  212. package/dist/collections/operations/local/index.js +2 -2
  213. package/dist/collections/operations/local/index.js.map +1 -1
  214. package/dist/collections/operations/local/restoreVersion.d.ts +7 -6
  215. package/dist/collections/operations/local/restoreVersion.d.ts.map +1 -1
  216. package/dist/collections/operations/local/restoreVersion.js.map +1 -1
  217. package/dist/collections/operations/local/update.d.ts +12 -12
  218. package/dist/collections/operations/local/update.d.ts.map +1 -1
  219. package/dist/collections/operations/local/update.js.map +1 -1
  220. package/dist/collections/operations/restoreVersion.d.ts +1 -1
  221. package/dist/collections/operations/restoreVersion.d.ts.map +1 -1
  222. package/dist/collections/operations/restoreVersion.js.map +1 -1
  223. package/dist/collections/operations/update.d.ts +5 -6
  224. package/dist/collections/operations/update.d.ts.map +1 -1
  225. package/dist/collections/operations/update.js.map +1 -1
  226. package/dist/collections/operations/updateByID.d.ts +5 -7
  227. package/dist/collections/operations/updateByID.d.ts.map +1 -1
  228. package/dist/collections/operations/updateByID.js.map +1 -1
  229. package/dist/collections/operations/utils.d.ts +39 -36
  230. package/dist/collections/operations/utils.d.ts.map +1 -1
  231. package/dist/collections/operations/utils.js +0 -1
  232. package/dist/collections/operations/utils.js.map +1 -1
  233. package/dist/config/build.js.map +1 -1
  234. package/dist/config/client.d.ts.map +1 -1
  235. package/dist/config/client.js.map +1 -1
  236. package/dist/config/defaults.js.map +1 -1
  237. package/dist/config/find.js.map +1 -1
  238. package/dist/config/sanitize.d.ts.map +1 -1
  239. package/dist/config/sanitize.js.map +1 -1
  240. package/dist/config/schema.js.map +1 -1
  241. package/dist/config/shared/adminViewSchema.js.map +1 -1
  242. package/dist/config/shared/componentSchema.js.map +1 -1
  243. package/dist/config/shared/openGraphSchema.js.map +1 -1
  244. package/dist/config/types.d.ts +2 -3
  245. package/dist/config/types.d.ts.map +1 -1
  246. package/dist/config/types.js.map +1 -1
  247. package/dist/config/validate.js.map +1 -1
  248. package/dist/database/combineQueries.js.map +1 -1
  249. package/dist/database/createDatabaseAdapter.js.map +1 -1
  250. package/dist/database/flattenWhereToOperators.js.map +1 -1
  251. package/dist/database/getLocalizedPaths.js.map +1 -1
  252. package/dist/database/migrations/createMigration.js.map +1 -1
  253. package/dist/database/migrations/getMigrations.js.map +1 -1
  254. package/dist/database/migrations/getPredefinedMigration.d.ts.map +1 -1
  255. package/dist/database/migrations/getPredefinedMigration.js.map +1 -1
  256. package/dist/database/migrations/migrate.js.map +1 -1
  257. package/dist/database/migrations/migrateDown.js.map +1 -1
  258. package/dist/database/migrations/migrateRefresh.js.map +1 -1
  259. package/dist/database/migrations/migrateReset.js.map +1 -1
  260. package/dist/database/migrations/migrateStatus.js.map +1 -1
  261. package/dist/database/migrations/migrationTemplate.js.map +1 -1
  262. package/dist/database/migrations/migrationsCollection.js.map +1 -1
  263. package/dist/database/migrations/readMigrationFiles.d.ts.map +1 -1
  264. package/dist/database/migrations/readMigrationFiles.js.map +1 -1
  265. package/dist/database/queryValidation/types.js.map +1 -1
  266. package/dist/database/queryValidation/validateQueryPaths.js.map +1 -1
  267. package/dist/database/queryValidation/validateSearchParams.js.map +1 -1
  268. package/dist/database/types.d.ts +5 -6
  269. package/dist/database/types.d.ts.map +1 -1
  270. package/dist/database/types.js.map +1 -1
  271. package/dist/email/consoleEmailAdapter.js.map +1 -1
  272. package/dist/email/defaults.js.map +1 -1
  273. package/dist/email/getStringifiedToAddress.js.map +1 -1
  274. package/dist/email/sendEmail.js.map +1 -1
  275. package/dist/email/types.js.map +1 -1
  276. package/dist/errors/APIError.js.map +1 -1
  277. package/dist/errors/AuthenticationError.js.map +1 -1
  278. package/dist/errors/DuplicateCollection.js.map +1 -1
  279. package/dist/errors/DuplicateFieldName.js.map +1 -1
  280. package/dist/errors/DuplicateGlobal.js.map +1 -1
  281. package/dist/errors/ErrorDeletingFile.js.map +1 -1
  282. package/dist/errors/FileRetrievalError.js.map +1 -1
  283. package/dist/errors/FileUploadError.js.map +1 -1
  284. package/dist/errors/Forbidden.js.map +1 -1
  285. package/dist/errors/InvalidConfiguration.js.map +1 -1
  286. package/dist/errors/InvalidFieldName.js.map +1 -1
  287. package/dist/errors/InvalidFieldRelationship.js.map +1 -1
  288. package/dist/errors/InvalidSchema.js.map +1 -1
  289. package/dist/errors/LockedAuth.js.map +1 -1
  290. package/dist/errors/MissingCollectionLabel.js.map +1 -1
  291. package/dist/errors/MissingEditorProp.js.map +1 -1
  292. package/dist/errors/MissingFieldInputOptions.js.map +1 -1
  293. package/dist/errors/MissingFieldType.js.map +1 -1
  294. package/dist/errors/MissingFile.js.map +1 -1
  295. package/dist/errors/NotFound.js.map +1 -1
  296. package/dist/errors/QueryError.js.map +1 -1
  297. package/dist/errors/TimestampsRequired.js.map +1 -1
  298. package/dist/errors/UnathorizedError.js.map +1 -1
  299. package/dist/errors/ValidationError.js.map +1 -1
  300. package/dist/errors/index.js.map +1 -1
  301. package/dist/errors/types.js.map +1 -1
  302. package/dist/exports/i18n/ar.js.map +1 -1
  303. package/dist/exports/i18n/az.js.map +1 -1
  304. package/dist/exports/i18n/bg.js.map +1 -1
  305. package/dist/exports/i18n/cs.js.map +1 -1
  306. package/dist/exports/i18n/de.js.map +1 -1
  307. package/dist/exports/i18n/en.js.map +1 -1
  308. package/dist/exports/i18n/es.js.map +1 -1
  309. package/dist/exports/i18n/fa.js.map +1 -1
  310. package/dist/exports/i18n/fr.js.map +1 -1
  311. package/dist/exports/i18n/he.js.map +1 -1
  312. package/dist/exports/i18n/hr.js.map +1 -1
  313. package/dist/exports/i18n/hu.js.map +1 -1
  314. package/dist/exports/i18n/it.js.map +1 -1
  315. package/dist/exports/i18n/ja.js.map +1 -1
  316. package/dist/exports/i18n/ko.js.map +1 -1
  317. package/dist/exports/i18n/my.js.map +1 -1
  318. package/dist/exports/i18n/nb.js.map +1 -1
  319. package/dist/exports/i18n/nl.js.map +1 -1
  320. package/dist/exports/i18n/pl.js.map +1 -1
  321. package/dist/exports/i18n/pt.js.map +1 -1
  322. package/dist/exports/i18n/ro.js.map +1 -1
  323. package/dist/exports/i18n/rs.js.map +1 -1
  324. package/dist/exports/i18n/rsLatin.js.map +1 -1
  325. package/dist/exports/i18n/ru.js.map +1 -1
  326. package/dist/exports/i18n/sv.js.map +1 -1
  327. package/dist/exports/i18n/th.js.map +1 -1
  328. package/dist/exports/i18n/tr.js.map +1 -1
  329. package/dist/exports/i18n/uk.js.map +1 -1
  330. package/dist/exports/i18n/vi.js.map +1 -1
  331. package/dist/exports/i18n/zh.js.map +1 -1
  332. package/dist/exports/i18n/zhTw.js.map +1 -1
  333. package/dist/exports/node.js.map +1 -1
  334. package/dist/exports/shared.js.map +1 -1
  335. package/dist/fields/baseFields/baseBlockFields.js.map +1 -1
  336. package/dist/fields/baseFields/baseIDField.js.map +1 -1
  337. package/dist/fields/config/client.d.ts +333 -334
  338. package/dist/fields/config/client.d.ts.map +1 -1
  339. package/dist/fields/config/client.js.map +1 -1
  340. package/dist/fields/config/sanitize.d.ts.map +1 -1
  341. package/dist/fields/config/sanitize.js.map +1 -1
  342. package/dist/fields/config/sanitize.spec.js.map +1 -1
  343. package/dist/fields/config/schema.js +1 -1
  344. package/dist/fields/config/schema.js.map +1 -1
  345. package/dist/fields/config/types.d.ts +7 -6
  346. package/dist/fields/config/types.d.ts.map +1 -1
  347. package/dist/fields/config/types.js.map +1 -1
  348. package/dist/fields/getDefaultValue.js.map +1 -1
  349. package/dist/fields/getFieldPaths.js.map +1 -1
  350. package/dist/fields/hooks/afterChange/index.d.ts.map +1 -1
  351. package/dist/fields/hooks/afterChange/index.js.map +1 -1
  352. package/dist/fields/hooks/afterChange/promise.d.ts.map +1 -1
  353. package/dist/fields/hooks/afterChange/promise.js.map +1 -1
  354. package/dist/fields/hooks/afterChange/traverseFields.d.ts.map +1 -1
  355. package/dist/fields/hooks/afterChange/traverseFields.js.map +1 -1
  356. package/dist/fields/hooks/afterRead/index.js.map +1 -1
  357. package/dist/fields/hooks/afterRead/promise.d.ts.map +1 -1
  358. package/dist/fields/hooks/afterRead/promise.js.map +1 -1
  359. package/dist/fields/hooks/afterRead/relationshipPopulationPromise.d.ts.map +1 -1
  360. package/dist/fields/hooks/afterRead/relationshipPopulationPromise.js.map +1 -1
  361. package/dist/fields/hooks/afterRead/traverseFields.js.map +1 -1
  362. package/dist/fields/hooks/beforeChange/beforeDuplicate.js.map +1 -1
  363. package/dist/fields/hooks/beforeChange/cloneDataFromOriginalDoc.js.map +1 -1
  364. package/dist/fields/hooks/beforeChange/getExistingRowDoc.d.ts.map +1 -1
  365. package/dist/fields/hooks/beforeChange/getExistingRowDoc.js.map +1 -1
  366. package/dist/fields/hooks/beforeChange/index.d.ts.map +1 -1
  367. package/dist/fields/hooks/beforeChange/index.js.map +1 -1
  368. package/dist/fields/hooks/beforeChange/promise.d.ts.map +1 -1
  369. package/dist/fields/hooks/beforeChange/promise.js.map +1 -1
  370. package/dist/fields/hooks/beforeChange/traverseFields.d.ts.map +1 -1
  371. package/dist/fields/hooks/beforeChange/traverseFields.js.map +1 -1
  372. package/dist/fields/hooks/beforeValidate/index.d.ts.map +1 -1
  373. package/dist/fields/hooks/beforeValidate/index.js.map +1 -1
  374. package/dist/fields/hooks/beforeValidate/promise.d.ts.map +1 -1
  375. package/dist/fields/hooks/beforeValidate/promise.js.map +1 -1
  376. package/dist/fields/hooks/beforeValidate/traverseFields.d.ts.map +1 -1
  377. package/dist/fields/hooks/beforeValidate/traverseFields.js.map +1 -1
  378. package/dist/fields/mergeBaseFields.js.map +1 -1
  379. package/dist/fields/setDefaultBeforeDuplicate.js.map +1 -1
  380. package/dist/fields/sortableFieldTypes.js.map +1 -1
  381. package/dist/fields/validations.d.ts +6 -7
  382. package/dist/fields/validations.d.ts.map +1 -1
  383. package/dist/fields/validations.js +1 -1
  384. package/dist/fields/validations.js.map +1 -1
  385. package/dist/fields/validations.spec.js.map +1 -1
  386. package/dist/globals/config/client.d.ts +2 -2
  387. package/dist/globals/config/client.js.map +1 -1
  388. package/dist/globals/config/sanitize.d.ts.map +1 -1
  389. package/dist/globals/config/sanitize.js.map +1 -1
  390. package/dist/globals/config/schema.js.map +1 -1
  391. package/dist/globals/config/types.d.ts +2 -3
  392. package/dist/globals/config/types.d.ts.map +1 -1
  393. package/dist/globals/config/types.js.map +1 -1
  394. package/dist/globals/operations/docAccess.d.ts.map +1 -1
  395. package/dist/globals/operations/docAccess.js.map +1 -1
  396. package/dist/globals/operations/findOne.d.ts.map +1 -1
  397. package/dist/globals/operations/findOne.js.map +1 -1
  398. package/dist/globals/operations/findVersionByID.d.ts.map +1 -1
  399. package/dist/globals/operations/findVersionByID.js.map +1 -1
  400. package/dist/globals/operations/findVersions.d.ts.map +1 -1
  401. package/dist/globals/operations/findVersions.js.map +1 -1
  402. package/dist/globals/operations/local/findOne.d.ts +7 -6
  403. package/dist/globals/operations/local/findOne.d.ts.map +1 -1
  404. package/dist/globals/operations/local/findOne.js.map +1 -1
  405. package/dist/globals/operations/local/findVersionByID.d.ts +7 -6
  406. package/dist/globals/operations/local/findVersionByID.d.ts.map +1 -1
  407. package/dist/globals/operations/local/findVersionByID.js.map +1 -1
  408. package/dist/globals/operations/local/findVersions.d.ts +7 -6
  409. package/dist/globals/operations/local/findVersions.d.ts.map +1 -1
  410. package/dist/globals/operations/local/findVersions.js.map +1 -1
  411. package/dist/globals/operations/local/index.js.map +1 -1
  412. package/dist/globals/operations/local/restoreVersion.d.ts +7 -6
  413. package/dist/globals/operations/local/restoreVersion.d.ts.map +1 -1
  414. package/dist/globals/operations/local/restoreVersion.js.map +1 -1
  415. package/dist/globals/operations/local/update.d.ts +7 -6
  416. package/dist/globals/operations/local/update.d.ts.map +1 -1
  417. package/dist/globals/operations/local/update.js.map +1 -1
  418. package/dist/globals/operations/restoreVersion.d.ts.map +1 -1
  419. package/dist/globals/operations/restoreVersion.js.map +1 -1
  420. package/dist/globals/operations/update.d.ts +5 -7
  421. package/dist/globals/operations/update.d.ts.map +1 -1
  422. package/dist/globals/operations/update.js.map +1 -1
  423. package/dist/index.d.ts +55 -44
  424. package/dist/index.d.ts.map +1 -1
  425. package/dist/index.js +2 -3
  426. package/dist/index.js.map +1 -1
  427. package/dist/preferences/deleteUserPreferences.js.map +1 -1
  428. package/dist/preferences/operations/delete.js.map +1 -1
  429. package/dist/preferences/operations/findOne.d.ts +2 -2
  430. package/dist/preferences/operations/findOne.d.ts.map +1 -1
  431. package/dist/preferences/operations/findOne.js.map +1 -1
  432. package/dist/preferences/operations/update.js.map +1 -1
  433. package/dist/preferences/preferencesCollection.js.map +1 -1
  434. package/dist/preferences/requestHandlers/delete.js.map +1 -1
  435. package/dist/preferences/requestHandlers/findOne.js.map +1 -1
  436. package/dist/preferences/requestHandlers/update.js.map +1 -1
  437. package/dist/preferences/types.js.map +1 -1
  438. package/dist/translations/getLocalI18n.js.map +1 -1
  439. package/dist/types/constants.js.map +1 -1
  440. package/dist/types/index.d.ts +3 -4
  441. package/dist/types/index.d.ts.map +1 -1
  442. package/dist/types/index.js.map +1 -1
  443. package/dist/uploads/canResizeImage.js.map +1 -1
  444. package/dist/uploads/cropImage.js +3 -3
  445. package/dist/uploads/cropImage.js.map +1 -1
  446. package/dist/uploads/deleteAssociatedFiles.js.map +1 -1
  447. package/dist/uploads/docWithFilenameExists.d.ts.map +1 -1
  448. package/dist/uploads/docWithFilenameExists.js.map +1 -1
  449. package/dist/uploads/fileExists.d.ts.map +1 -1
  450. package/dist/uploads/fileExists.js.map +1 -1
  451. package/dist/uploads/formatFilesize.js.map +1 -1
  452. package/dist/uploads/generateFileData.d.ts.map +1 -1
  453. package/dist/uploads/generateFileData.js.map +1 -1
  454. package/dist/uploads/getBaseFields.js.map +1 -1
  455. package/dist/uploads/getExternalFile.d.ts.map +1 -1
  456. package/dist/uploads/getExternalFile.js.map +1 -1
  457. package/dist/uploads/getFileByPath.d.ts +1 -1
  458. package/dist/uploads/getFileByPath.d.ts.map +1 -1
  459. package/dist/uploads/getFileByPath.js.map +1 -1
  460. package/dist/uploads/getImageSize.js.map +1 -1
  461. package/dist/uploads/getSafeFilename.js.map +1 -1
  462. package/dist/uploads/imageResizer.js.map +1 -1
  463. package/dist/uploads/isImage.js.map +1 -1
  464. package/dist/uploads/mimeTypeValidator.js.map +1 -1
  465. package/dist/uploads/mimeTypeValidator.spec.js.map +1 -1
  466. package/dist/uploads/saveBufferToFile.d.ts +0 -1
  467. package/dist/uploads/saveBufferToFile.d.ts.map +1 -1
  468. package/dist/uploads/saveBufferToFile.js.map +1 -1
  469. package/dist/uploads/tempFile.js.map +1 -1
  470. package/dist/uploads/types.d.ts +74 -7
  471. package/dist/uploads/types.d.ts.map +1 -1
  472. package/dist/uploads/types.js.map +1 -1
  473. package/dist/uploads/unlinkTempFiles.js.map +1 -1
  474. package/dist/uploads/uploadFiles.d.ts.map +1 -1
  475. package/dist/uploads/uploadFiles.js.map +1 -1
  476. package/dist/utilities/checkDuplicateCollections.js.map +1 -1
  477. package/dist/utilities/combineMerge.js.map +1 -1
  478. package/dist/utilities/commitTransaction.js.map +1 -1
  479. package/dist/utilities/configToJSONSchema.js.map +1 -1
  480. package/dist/utilities/configToJSONSchema.spec.js.map +1 -1
  481. package/dist/utilities/convertData.js.map +1 -1
  482. package/dist/utilities/createArrayFromCommaDelineated.js.map +1 -1
  483. package/dist/utilities/createLocalReq.js.map +1 -1
  484. package/dist/utilities/deepCopyObject.js.map +1 -1
  485. package/dist/utilities/deepMerge.js.map +1 -1
  486. package/dist/utilities/dependencies/getDependencies.d.ts.map +1 -1
  487. package/dist/utilities/dependencies/getDependencies.js +21 -4
  488. package/dist/utilities/dependencies/getDependencies.js.map +1 -1
  489. package/dist/utilities/dependencies/isError.js.map +1 -1
  490. package/dist/utilities/dependencies/realPath.d.ts +0 -1
  491. package/dist/utilities/dependencies/realPath.d.ts.map +1 -1
  492. package/dist/utilities/dependencies/realPath.js.map +1 -1
  493. package/dist/utilities/dependencies/resolveFrom.js.map +1 -1
  494. package/dist/utilities/fieldSchemaToJSON.d.ts.map +1 -1
  495. package/dist/utilities/fieldSchemaToJSON.js.map +1 -1
  496. package/dist/utilities/flattenTopLevelFields.js.map +1 -1
  497. package/dist/utilities/formatLabels.js.map +1 -1
  498. package/dist/utilities/formatLabels.spec.js.map +1 -1
  499. package/dist/utilities/getCSSVariable.js.map +1 -1
  500. package/dist/utilities/getCollectionIDFieldTypes.js.map +1 -1
  501. package/dist/utilities/getEntityPolicies.js.map +1 -1
  502. package/dist/utilities/getObjectDotNotation.d.ts.map +1 -1
  503. package/dist/utilities/getObjectDotNotation.js.map +1 -1
  504. package/dist/utilities/getUniqueListBy.js.map +1 -1
  505. package/dist/utilities/importWithoutClientFiles.d.ts.map +1 -1
  506. package/dist/utilities/importWithoutClientFiles.js.map +1 -1
  507. package/dist/utilities/initTransaction.js.map +1 -1
  508. package/dist/utilities/isEntityHidden.d.ts +2 -2
  509. package/dist/utilities/isEntityHidden.js.map +1 -1
  510. package/dist/utilities/isNumber.js.map +1 -1
  511. package/dist/utilities/isPlainObject.js.map +1 -1
  512. package/dist/utilities/isReactComponent.js.map +1 -1
  513. package/dist/utilities/isValidID.d.ts +1 -1
  514. package/dist/utilities/isValidID.js.map +1 -1
  515. package/dist/utilities/isolateObjectProperty.js.map +1 -1
  516. package/dist/utilities/killTransaction.js.map +1 -1
  517. package/dist/utilities/logger.d.ts.map +1 -1
  518. package/dist/utilities/logger.js.map +1 -1
  519. package/dist/utilities/mapAsync.js.map +1 -1
  520. package/dist/utilities/mergeListSearchAndWhere.js.map +1 -1
  521. package/dist/utilities/overwriteMerge.js.map +1 -1
  522. package/dist/utilities/parseCookies.d.ts +1 -1
  523. package/dist/utilities/parseCookies.d.ts.map +1 -1
  524. package/dist/utilities/parseCookies.js.map +1 -1
  525. package/dist/utilities/sanitizeInternalFields.d.ts.map +1 -1
  526. package/dist/utilities/sanitizeInternalFields.js.map +1 -1
  527. package/dist/utilities/setsAreEqual.d.ts.map +1 -1
  528. package/dist/utilities/setsAreEqual.js.map +1 -1
  529. package/dist/utilities/telemetry/events/adminInit.js.map +1 -1
  530. package/dist/utilities/telemetry/events/serverInit.d.ts.map +1 -1
  531. package/dist/utilities/telemetry/events/serverInit.js.map +1 -1
  532. package/dist/utilities/telemetry/index.d.ts +1 -1
  533. package/dist/utilities/telemetry/index.d.ts.map +1 -1
  534. package/dist/utilities/telemetry/index.js.map +1 -1
  535. package/dist/utilities/telemetry/oneWayHash.d.ts +0 -1
  536. package/dist/utilities/telemetry/oneWayHash.d.ts.map +1 -1
  537. package/dist/utilities/telemetry/oneWayHash.js.map +1 -1
  538. package/dist/utilities/timestamp.js.map +1 -1
  539. package/dist/utilities/toKebabCase.js.map +1 -1
  540. package/dist/utilities/wait.js.map +1 -1
  541. package/dist/utilities/wordBoundariesRegex.js.map +1 -1
  542. package/dist/versions/baseFields.js.map +1 -1
  543. package/dist/versions/buildCollectionFields.js.map +1 -1
  544. package/dist/versions/buildGlobalFields.js.map +1 -1
  545. package/dist/versions/defaults.js.map +1 -1
  546. package/dist/versions/deleteCollectionVersions.d.ts.map +1 -1
  547. package/dist/versions/deleteCollectionVersions.js.map +1 -1
  548. package/dist/versions/drafts/appendVersionToQueryKey.js.map +1 -1
  549. package/dist/versions/drafts/getQueryDraftsSort.js.map +1 -1
  550. package/dist/versions/drafts/replaceWithDraftIfAvailable.d.ts.map +1 -1
  551. package/dist/versions/drafts/replaceWithDraftIfAvailable.js.map +1 -1
  552. package/dist/versions/enforceMaxVersions.d.ts.map +1 -1
  553. package/dist/versions/enforceMaxVersions.js.map +1 -1
  554. package/dist/versions/getLatestCollectionVersion.d.ts.map +1 -1
  555. package/dist/versions/getLatestCollectionVersion.js.map +1 -1
  556. package/dist/versions/getLatestGlobalVersion.d.ts.map +1 -1
  557. package/dist/versions/getLatestGlobalVersion.js.map +1 -1
  558. package/dist/versions/saveVersion.d.ts.map +1 -1
  559. package/dist/versions/saveVersion.js.map +1 -1
  560. package/dist/versions/types.js.map +1 -1
  561. package/package.json +2 -2
@@ -1,5 +1,6 @@
1
- import type { Document, PayloadRequestWithData } from '../../types/index.js';
2
- import type { Collection } from '../config/types.js';
1
+ import type { CollectionSlug } from '../../index.js';
2
+ import type { PayloadRequestWithData } from '../../types/index.js';
3
+ import type { Collection, DataFromCollectionSlug } from '../config/types.js';
3
4
  export type Arguments = {
4
5
  collection: Collection;
5
6
  depth?: number;
@@ -8,5 +9,5 @@ export type Arguments = {
8
9
  req: PayloadRequestWithData;
9
10
  showHiddenFields?: boolean;
10
11
  };
11
- export declare const deleteByIDOperation: <TSlug extends string | number | symbol>(incomingArgs: Arguments) => Promise<Document>;
12
+ export declare const deleteByIDOperation: <TSlug extends CollectionSlug>(incomingArgs: Arguments) => Promise<DataFromCollectionSlug<TSlug>>;
12
13
  //# sourceMappingURL=deleteByID.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"deleteByID.d.ts","sourceRoot":"","sources":["../../../src/collections/operations/deleteByID.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,QAAQ,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAA;AAC5E,OAAO,KAAK,EAAuB,UAAU,EAAE,MAAM,oBAAoB,CAAA;AAezE,MAAM,MAAM,SAAS,GAAG;IACtB,UAAU,EAAE,UAAU,CAAA;IACtB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,EAAE,EAAE,MAAM,GAAG,MAAM,CAAA;IACnB,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,GAAG,EAAE,sBAAsB,CAAA;IAC3B,gBAAgB,CAAC,EAAE,OAAO,CAAA;CAC3B,CAAA;AAED,eAAO,MAAM,mBAAmB,yDAChB,SAAS,KACtB,QAAQ,QAAQ,CAkMlB,CAAA"}
1
+ {"version":3,"file":"deleteByID.d.ts","sourceRoot":"","sources":["../../../src/collections/operations/deleteByID.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AACpD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAA;AAClE,OAAO,KAAK,EAAuB,UAAU,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAA;AAejG,MAAM,MAAM,SAAS,GAAG;IACtB,UAAU,EAAE,UAAU,CAAA;IACtB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,EAAE,EAAE,MAAM,GAAG,MAAM,CAAA;IACnB,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,GAAG,EAAE,sBAAsB,CAAA;IAC3B,gBAAgB,CAAC,EAAE,OAAO,CAAA;CAC3B,CAAA;AAED,eAAO,MAAM,mBAAmB,GAAU,KAAK,SAAS,cAAc,gBACtD,SAAS,KACtB,OAAO,CAAC,sBAAsB,CAAC,KAAK,CAAC,CAkMvC,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/collections/operations/deleteByID.ts"],"sourcesContent":["import type { GeneratedTypes } from '../../index.js'\nimport type { Document, PayloadRequestWithData } from '../../types/index.js'\nimport type { BeforeOperationHook, Collection } from '../config/types.js'\n\nimport executeAccess from '../../auth/executeAccess.js'\nimport { hasWhereAccessResult } from '../../auth/types.js'\nimport { combineQueries } from '../../database/combineQueries.js'\nimport { Forbidden, NotFound } from '../../errors/index.js'\nimport { afterRead } from '../../fields/hooks/afterRead/index.js'\nimport { deleteUserPreferences } from '../../preferences/deleteUserPreferences.js'\nimport { deleteAssociatedFiles } from '../../uploads/deleteAssociatedFiles.js'\nimport { commitTransaction } from '../../utilities/commitTransaction.js'\nimport { initTransaction } from '../../utilities/initTransaction.js'\nimport { killTransaction } from '../../utilities/killTransaction.js'\nimport { deleteCollectionVersions } from '../../versions/deleteCollectionVersions.js'\nimport { buildAfterOperation } from './utils.js'\n\nexport type Arguments = {\n collection: Collection\n depth?: number\n id: number | string\n overrideAccess?: boolean\n req: PayloadRequestWithData\n showHiddenFields?: boolean\n}\n\nexport const deleteByIDOperation = async <TSlug extends keyof GeneratedTypes['collections']>(\n incomingArgs: Arguments,\n): Promise<Document> => {\n let args = incomingArgs\n\n try {\n const shouldCommit = await initTransaction(args.req)\n\n // /////////////////////////////////////\n // beforeOperation - Collection\n // /////////////////////////////////////\n\n await args.collection.config.hooks.beforeOperation.reduce(\n async (priorHook: BeforeOperationHook | Promise<void>, hook: BeforeOperationHook) => {\n await priorHook\n\n args =\n (await hook({\n args,\n collection: args.collection.config,\n context: args.req.context,\n operation: 'delete',\n req: args.req,\n })) || args\n },\n Promise.resolve(),\n )\n\n const {\n id,\n collection: { config: collectionConfig },\n depth,\n overrideAccess,\n req: {\n fallbackLocale,\n locale,\n payload: { config },\n payload,\n },\n req,\n showHiddenFields,\n } = args\n\n // /////////////////////////////////////\n // Access\n // /////////////////////////////////////\n\n const accessResults = !overrideAccess\n ? await executeAccess({ id, req }, collectionConfig.access.delete)\n : true\n const hasWhereAccess = hasWhereAccessResult(accessResults)\n\n // /////////////////////////////////////\n // beforeDelete - Collection\n // /////////////////////////////////////\n\n await collectionConfig.hooks.beforeDelete.reduce(async (priorHook, hook) => {\n await priorHook\n\n return hook({\n id,\n collection: collectionConfig,\n context: req.context,\n req,\n })\n }, Promise.resolve())\n\n // /////////////////////////////////////\n // Retrieve document\n // /////////////////////////////////////\n\n const docToDelete = await req.payload.db.findOne({\n collection: collectionConfig.slug,\n locale: req.locale,\n req,\n where: combineQueries({ id: { equals: id } }, accessResults),\n })\n\n if (!docToDelete && !hasWhereAccess) throw new NotFound(req.t)\n if (!docToDelete && hasWhereAccess) throw new Forbidden(req.t)\n\n await deleteAssociatedFiles({\n collectionConfig,\n config,\n doc: docToDelete,\n overrideDelete: true,\n req,\n })\n\n // /////////////////////////////////////\n // Delete versions\n // /////////////////////////////////////\n\n if (collectionConfig.versions) {\n await deleteCollectionVersions({\n id,\n slug: collectionConfig.slug,\n payload,\n req,\n })\n }\n\n // /////////////////////////////////////\n // Delete document\n // /////////////////////////////////////\n\n let result = await req.payload.db.deleteOne({\n collection: collectionConfig.slug,\n req,\n where: { id: { equals: id } },\n })\n\n // /////////////////////////////////////\n // Delete Preferences\n // /////////////////////////////////////\n\n await deleteUserPreferences({\n collectionConfig,\n ids: [id],\n payload,\n req,\n })\n\n // /////////////////////////////////////\n // afterRead - Fields\n // /////////////////////////////////////\n\n result = await afterRead({\n collection: collectionConfig,\n context: req.context,\n depth,\n doc: result,\n draft: undefined,\n fallbackLocale,\n global: null,\n locale,\n overrideAccess,\n req,\n showHiddenFields,\n })\n\n // /////////////////////////////////////\n // afterRead - Collection\n // /////////////////////////////////////\n\n await collectionConfig.hooks.afterRead.reduce(async (priorHook, hook) => {\n await priorHook\n\n result =\n (await hook({\n collection: collectionConfig,\n context: req.context,\n doc: result,\n req,\n })) || result\n }, Promise.resolve())\n\n // /////////////////////////////////////\n // afterDelete - Collection\n // /////////////////////////////////////\n\n await collectionConfig.hooks.afterDelete.reduce(async (priorHook, hook) => {\n await priorHook\n\n result =\n (await hook({\n id,\n collection: collectionConfig,\n context: req.context,\n doc: result,\n req,\n })) || result\n }, Promise.resolve())\n\n // /////////////////////////////////////\n // afterOperation - Collection\n // /////////////////////////////////////\n\n result = await buildAfterOperation<GeneratedTypes['collections'][TSlug]>({\n args,\n collection: collectionConfig,\n operation: 'deleteByID',\n result,\n })\n\n // /////////////////////////////////////\n // 8. Return results\n // /////////////////////////////////////\n\n if (shouldCommit) await commitTransaction(req)\n\n return result\n } catch (error: unknown) {\n await killTransaction(args.req)\n throw error\n }\n}\n"],"names":["executeAccess","hasWhereAccessResult","combineQueries","Forbidden","NotFound","afterRead","deleteUserPreferences","deleteAssociatedFiles","commitTransaction","initTransaction","killTransaction","deleteCollectionVersions","buildAfterOperation","deleteByIDOperation","incomingArgs","args","shouldCommit","req","collection","config","hooks","beforeOperation","reduce","priorHook","hook","context","operation","Promise","resolve","id","collectionConfig","depth","overrideAccess","fallbackLocale","locale","payload","showHiddenFields","accessResults","access","delete","hasWhereAccess","beforeDelete","docToDelete","db","findOne","slug","where","equals","t","doc","overrideDelete","versions","result","deleteOne","ids","draft","undefined","global","afterDelete","error"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"AAIA,OAAOA,mBAAmB,8BAA6B;AACvD,SAASC,oBAAoB,QAAQ,sBAAqB;AAC1D,SAASC,cAAc,QAAQ,mCAAkC;AACjE,SAASC,SAAS,EAAEC,QAAQ,QAAQ,wBAAuB;AAC3D,SAASC,SAAS,QAAQ,wCAAuC;AACjE,SAASC,qBAAqB,QAAQ,6CAA4C;AAClF,SAASC,qBAAqB,QAAQ,yCAAwC;AAC9E,SAASC,iBAAiB,QAAQ,uCAAsC;AACxE,SAASC,eAAe,QAAQ,qCAAoC;AACpE,SAASC,eAAe,QAAQ,qCAAoC;AACpE,SAASC,wBAAwB,QAAQ,6CAA4C;AACrF,SAASC,mBAAmB,QAAQ,aAAY;AAWhD,OAAO,MAAMC,sBAAsB,OACjCC;IAEA,IAAIC,OAAOD;IAEX,IAAI;QACF,MAAME,eAAe,MAAMP,gBAAgBM,KAAKE,GAAG;QAEnD,wCAAwC;QACxC,+BAA+B;QAC/B,wCAAwC;QAExC,MAAMF,KAAKG,UAAU,CAACC,MAAM,CAACC,KAAK,CAACC,eAAe,CAACC,MAAM,CACvD,OAAOC,WAAgDC;YACrD,MAAMD;YAENR,OACE,AAAC,MAAMS,KAAK;gBACVT;gBACAG,YAAYH,KAAKG,UAAU,CAACC,MAAM;gBAClCM,SAASV,KAAKE,GAAG,CAACQ,OAAO;gBACzBC,WAAW;gBACXT,KAAKF,KAAKE,GAAG;YACf,MAAOF;QACX,GACAY,QAAQC,OAAO;QAGjB,MAAM,EACJC,EAAE,EACFX,YAAY,EAAEC,QAAQW,gBAAgB,EAAE,EACxCC,KAAK,EACLC,cAAc,EACdf,KAAK,EACHgB,cAAc,EACdC,MAAM,EACNC,SAAS,EAAEhB,MAAM,EAAE,EACnBgB,OAAO,EACR,EACDlB,GAAG,EACHmB,gBAAgB,EACjB,GAAGrB;QAEJ,wCAAwC;QACxC,SAAS;QACT,wCAAwC;QAExC,MAAMsB,gBAAgB,CAACL,iBACnB,MAAMhC,cAAc;YAAE6B;YAAIZ;QAAI,GAAGa,iBAAiBQ,MAAM,CAACC,MAAM,IAC/D;QACJ,MAAMC,iBAAiBvC,qBAAqBoC;QAE5C,wCAAwC;QACxC,4BAA4B;QAC5B,wCAAwC;QAExC,MAAMP,iBAAiBV,KAAK,CAACqB,YAAY,CAACnB,MAAM,CAAC,OAAOC,WAAWC;YACjE,MAAMD;YAEN,OAAOC,KAAK;gBACVK;gBACAX,YAAYY;gBACZL,SAASR,IAAIQ,OAAO;gBACpBR;YACF;QACF,GAAGU,QAAQC,OAAO;QAElB,wCAAwC;QACxC,oBAAoB;QACpB,wCAAwC;QAExC,MAAMc,cAAc,MAAMzB,IAAIkB,OAAO,CAACQ,EAAE,CAACC,OAAO,CAAC;YAC/C1B,YAAYY,iBAAiBe,IAAI;YACjCX,QAAQjB,IAAIiB,MAAM;YAClBjB;YACA6B,OAAO5C,eAAe;gBAAE2B,IAAI;oBAAEkB,QAAQlB;gBAAG;YAAE,GAAGQ;QAChD;QAEA,IAAI,CAACK,eAAe,CAACF,gBAAgB,MAAM,IAAIpC,SAASa,IAAI+B,CAAC;QAC7D,IAAI,CAACN,eAAeF,gBAAgB,MAAM,IAAIrC,UAAUc,IAAI+B,CAAC;QAE7D,MAAMzC,sBAAsB;YAC1BuB;YACAX;YACA8B,KAAKP;YACLQ,gBAAgB;YAChBjC;QACF;QAEA,wCAAwC;QACxC,kBAAkB;QAClB,wCAAwC;QAExC,IAAIa,iBAAiBqB,QAAQ,EAAE;YAC7B,MAAMxC,yBAAyB;gBAC7BkB;gBACAgB,MAAMf,iBAAiBe,IAAI;gBAC3BV;gBACAlB;YACF;QACF;QAEA,wCAAwC;QACxC,kBAAkB;QAClB,wCAAwC;QAExC,IAAImC,SAAS,MAAMnC,IAAIkB,OAAO,CAACQ,EAAE,CAACU,SAAS,CAAC;YAC1CnC,YAAYY,iBAAiBe,IAAI;YACjC5B;YACA6B,OAAO;gBAAEjB,IAAI;oBAAEkB,QAAQlB;gBAAG;YAAE;QAC9B;QAEA,wCAAwC;QACxC,qBAAqB;QACrB,wCAAwC;QAExC,MAAMvB,sBAAsB;YAC1BwB;YACAwB,KAAK;gBAACzB;aAAG;YACTM;YACAlB;QACF;QAEA,wCAAwC;QACxC,qBAAqB;QACrB,wCAAwC;QAExCmC,SAAS,MAAM/C,UAAU;YACvBa,YAAYY;YACZL,SAASR,IAAIQ,OAAO;YACpBM;YACAkB,KAAKG;YACLG,OAAOC;YACPvB;YACAwB,QAAQ;YACRvB;YACAF;YACAf;YACAmB;QACF;QAEA,wCAAwC;QACxC,yBAAyB;QACzB,wCAAwC;QAExC,MAAMN,iBAAiBV,KAAK,CAACf,SAAS,CAACiB,MAAM,CAAC,OAAOC,WAAWC;YAC9D,MAAMD;YAEN6B,SACE,AAAC,MAAM5B,KAAK;gBACVN,YAAYY;gBACZL,SAASR,IAAIQ,OAAO;gBACpBwB,KAAKG;gBACLnC;YACF,MAAOmC;QACX,GAAGzB,QAAQC,OAAO;QAElB,wCAAwC;QACxC,2BAA2B;QAC3B,wCAAwC;QAExC,MAAME,iBAAiBV,KAAK,CAACsC,WAAW,CAACpC,MAAM,CAAC,OAAOC,WAAWC;YAChE,MAAMD;YAEN6B,SACE,AAAC,MAAM5B,KAAK;gBACVK;gBACAX,YAAYY;gBACZL,SAASR,IAAIQ,OAAO;gBACpBwB,KAAKG;gBACLnC;YACF,MAAOmC;QACX,GAAGzB,QAAQC,OAAO;QAElB,wCAAwC;QACxC,8BAA8B;QAC9B,wCAAwC;QAExCwB,SAAS,MAAMxC,oBAA0D;YACvEG;YACAG,YAAYY;YACZJ,WAAW;YACX0B;QACF;QAEA,wCAAwC;QACxC,oBAAoB;QACpB,wCAAwC;QAExC,IAAIpC,cAAc,MAAMR,kBAAkBS;QAE1C,OAAOmC;IACT,EAAE,OAAOO,OAAgB;QACvB,MAAMjD,gBAAgBK,KAAKE,GAAG;QAC9B,MAAM0C;IACR;AACF,EAAC"}
1
+ {"version":3,"sources":["../../../src/collections/operations/deleteByID.ts"],"sourcesContent":["import type { CollectionSlug } from '../../index.js'\nimport type { PayloadRequestWithData } from '../../types/index.js'\nimport type { BeforeOperationHook, Collection, DataFromCollectionSlug } from '../config/types.js'\n\nimport executeAccess from '../../auth/executeAccess.js'\nimport { hasWhereAccessResult } from '../../auth/types.js'\nimport { combineQueries } from '../../database/combineQueries.js'\nimport { Forbidden, NotFound } from '../../errors/index.js'\nimport { afterRead } from '../../fields/hooks/afterRead/index.js'\nimport { deleteUserPreferences } from '../../preferences/deleteUserPreferences.js'\nimport { deleteAssociatedFiles } from '../../uploads/deleteAssociatedFiles.js'\nimport { commitTransaction } from '../../utilities/commitTransaction.js'\nimport { initTransaction } from '../../utilities/initTransaction.js'\nimport { killTransaction } from '../../utilities/killTransaction.js'\nimport { deleteCollectionVersions } from '../../versions/deleteCollectionVersions.js'\nimport { buildAfterOperation } from './utils.js'\n\nexport type Arguments = {\n collection: Collection\n depth?: number\n id: number | string\n overrideAccess?: boolean\n req: PayloadRequestWithData\n showHiddenFields?: boolean\n}\n\nexport const deleteByIDOperation = async <TSlug extends CollectionSlug>(\n incomingArgs: Arguments,\n): Promise<DataFromCollectionSlug<TSlug>> => {\n let args = incomingArgs\n\n try {\n const shouldCommit = await initTransaction(args.req)\n\n // /////////////////////////////////////\n // beforeOperation - Collection\n // /////////////////////////////////////\n\n await args.collection.config.hooks.beforeOperation.reduce(\n async (priorHook: BeforeOperationHook | Promise<void>, hook: BeforeOperationHook) => {\n await priorHook\n\n args =\n (await hook({\n args,\n collection: args.collection.config,\n context: args.req.context,\n operation: 'delete',\n req: args.req,\n })) || args\n },\n Promise.resolve(),\n )\n\n const {\n id,\n collection: { config: collectionConfig },\n depth,\n overrideAccess,\n req: {\n fallbackLocale,\n locale,\n payload: { config },\n payload,\n },\n req,\n showHiddenFields,\n } = args\n\n // /////////////////////////////////////\n // Access\n // /////////////////////////////////////\n\n const accessResults = !overrideAccess\n ? await executeAccess({ id, req }, collectionConfig.access.delete)\n : true\n const hasWhereAccess = hasWhereAccessResult(accessResults)\n\n // /////////////////////////////////////\n // beforeDelete - Collection\n // /////////////////////////////////////\n\n await collectionConfig.hooks.beforeDelete.reduce(async (priorHook, hook) => {\n await priorHook\n\n return hook({\n id,\n collection: collectionConfig,\n context: req.context,\n req,\n })\n }, Promise.resolve())\n\n // /////////////////////////////////////\n // Retrieve document\n // /////////////////////////////////////\n\n const docToDelete = await req.payload.db.findOne({\n collection: collectionConfig.slug,\n locale: req.locale,\n req,\n where: combineQueries({ id: { equals: id } }, accessResults),\n })\n\n if (!docToDelete && !hasWhereAccess) throw new NotFound(req.t)\n if (!docToDelete && hasWhereAccess) throw new Forbidden(req.t)\n\n await deleteAssociatedFiles({\n collectionConfig,\n config,\n doc: docToDelete,\n overrideDelete: true,\n req,\n })\n\n // /////////////////////////////////////\n // Delete versions\n // /////////////////////////////////////\n\n if (collectionConfig.versions) {\n await deleteCollectionVersions({\n id,\n slug: collectionConfig.slug,\n payload,\n req,\n })\n }\n\n // /////////////////////////////////////\n // Delete document\n // /////////////////////////////////////\n\n let result: DataFromCollectionSlug<TSlug> = await req.payload.db.deleteOne({\n collection: collectionConfig.slug,\n req,\n where: { id: { equals: id } },\n })\n\n // /////////////////////////////////////\n // Delete Preferences\n // /////////////////////////////////////\n\n await deleteUserPreferences({\n collectionConfig,\n ids: [id],\n payload,\n req,\n })\n\n // /////////////////////////////////////\n // afterRead - Fields\n // /////////////////////////////////////\n\n result = await afterRead({\n collection: collectionConfig,\n context: req.context,\n depth,\n doc: result,\n draft: undefined,\n fallbackLocale,\n global: null,\n locale,\n overrideAccess,\n req,\n showHiddenFields,\n })\n\n // /////////////////////////////////////\n // afterRead - Collection\n // /////////////////////////////////////\n\n await collectionConfig.hooks.afterRead.reduce(async (priorHook, hook) => {\n await priorHook\n\n result =\n (await hook({\n collection: collectionConfig,\n context: req.context,\n doc: result,\n req,\n })) || result\n }, Promise.resolve())\n\n // /////////////////////////////////////\n // afterDelete - Collection\n // /////////////////////////////////////\n\n await collectionConfig.hooks.afterDelete.reduce(async (priorHook, hook) => {\n await priorHook\n\n result =\n (await hook({\n id,\n collection: collectionConfig,\n context: req.context,\n doc: result,\n req,\n })) || result\n }, Promise.resolve())\n\n // /////////////////////////////////////\n // afterOperation - Collection\n // /////////////////////////////////////\n\n result = await buildAfterOperation({\n args,\n collection: collectionConfig,\n operation: 'deleteByID',\n result,\n })\n\n // /////////////////////////////////////\n // 8. Return results\n // /////////////////////////////////////\n\n if (shouldCommit) await commitTransaction(req)\n\n return result\n } catch (error: unknown) {\n await killTransaction(args.req)\n throw error\n }\n}\n"],"names":["executeAccess","hasWhereAccessResult","combineQueries","Forbidden","NotFound","afterRead","deleteUserPreferences","deleteAssociatedFiles","commitTransaction","initTransaction","killTransaction","deleteCollectionVersions","buildAfterOperation","deleteByIDOperation","incomingArgs","args","shouldCommit","req","collection","config","hooks","beforeOperation","reduce","priorHook","hook","context","operation","Promise","resolve","id","collectionConfig","depth","overrideAccess","fallbackLocale","locale","payload","showHiddenFields","accessResults","access","delete","hasWhereAccess","beforeDelete","docToDelete","db","findOne","slug","where","equals","t","doc","overrideDelete","versions","result","deleteOne","ids","draft","undefined","global","afterDelete","error"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/collections/operations/docAccess.ts"],"sourcesContent":["import type { CollectionPermission } from '../../auth/index.js'\nimport type { AllOperations, PayloadRequestWithData } from '../../types/index.js'\nimport type { Collection } from '../config/types.js'\n\nimport { commitTransaction } from '../../utilities/commitTransaction.js'\nimport { getEntityPolicies } from '../../utilities/getEntityPolicies.js'\nimport { initTransaction } from '../../utilities/initTransaction.js'\nimport { killTransaction } from '../../utilities/killTransaction.js'\n\nconst allOperations: AllOperations[] = ['create', 'read', 'update', 'delete']\n\ntype Arguments = {\n collection: Collection\n id: string\n req: PayloadRequestWithData\n}\n\nexport async function docAccessOperation(args: Arguments): Promise<CollectionPermission> {\n const {\n id,\n collection: { config },\n req,\n } = args\n\n const collectionOperations = [...allOperations]\n\n if (\n config.auth &&\n typeof config.auth.maxLoginAttempts !== 'undefined' &&\n config.auth.maxLoginAttempts !== 0\n ) {\n collectionOperations.push('unlock')\n }\n\n if (config.versions) {\n collectionOperations.push('readVersions')\n }\n\n try {\n const shouldCommit = await initTransaction(req)\n\n const result = await getEntityPolicies({\n id,\n type: 'collection',\n entity: config,\n operations: collectionOperations,\n req,\n })\n\n if (shouldCommit) await commitTransaction(req)\n\n return result\n } catch (e: unknown) {\n await killTransaction(req)\n throw e\n }\n}\n"],"names":["commitTransaction","getEntityPolicies","initTransaction","killTransaction","allOperations","docAccessOperation","args","id","collection","config","req","collectionOperations","auth","maxLoginAttempts","push","versions","shouldCommit","result","type","entity","operations","e"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"AAIA,SAASA,iBAAiB,QAAQ,uCAAsC;AACxE,SAASC,iBAAiB,QAAQ,uCAAsC;AACxE,SAASC,eAAe,QAAQ,qCAAoC;AACpE,SAASC,eAAe,QAAQ,qCAAoC;AAEpE,MAAMC,gBAAiC;IAAC;IAAU;IAAQ;IAAU;CAAS;AAQ7E,OAAO,eAAeC,mBAAmBC,IAAe;IACtD,MAAM,EACJC,EAAE,EACFC,YAAY,EAAEC,MAAM,EAAE,EACtBC,GAAG,EACJ,GAAGJ;IAEJ,MAAMK,uBAAuB;WAAIP;KAAc;IAE/C,IACEK,OAAOG,IAAI,IACX,OAAOH,OAAOG,IAAI,CAACC,gBAAgB,KAAK,eACxCJ,OAAOG,IAAI,CAACC,gBAAgB,KAAK,GACjC;QACAF,qBAAqBG,IAAI,CAAC;IAC5B;IAEA,IAAIL,OAAOM,QAAQ,EAAE;QACnBJ,qBAAqBG,IAAI,CAAC;IAC5B;IAEA,IAAI;QACF,MAAME,eAAe,MAAMd,gBAAgBQ;QAE3C,MAAMO,SAAS,MAAMhB,kBAAkB;YACrCM;YACAW,MAAM;YACNC,QAAQV;YACRW,YAAYT;YACZD;QACF;QAEA,IAAIM,cAAc,MAAMhB,kBAAkBU;QAE1C,OAAOO;IACT,EAAE,OAAOI,GAAY;QACnB,MAAMlB,gBAAgBO;QACtB,MAAMW;IACR;AACF"}
1
+ {"version":3,"sources":["../../../src/collections/operations/docAccess.ts"],"sourcesContent":["import type { CollectionPermission } from '../../auth/index.js'\nimport type { AllOperations, PayloadRequestWithData } from '../../types/index.js'\nimport type { Collection } from '../config/types.js'\n\nimport { commitTransaction } from '../../utilities/commitTransaction.js'\nimport { getEntityPolicies } from '../../utilities/getEntityPolicies.js'\nimport { initTransaction } from '../../utilities/initTransaction.js'\nimport { killTransaction } from '../../utilities/killTransaction.js'\n\nconst allOperations: AllOperations[] = ['create', 'read', 'update', 'delete']\n\ntype Arguments = {\n collection: Collection\n id: string\n req: PayloadRequestWithData\n}\n\nexport async function docAccessOperation(args: Arguments): Promise<CollectionPermission> {\n const {\n id,\n collection: { config },\n req,\n } = args\n\n const collectionOperations = [...allOperations]\n\n if (\n config.auth &&\n typeof config.auth.maxLoginAttempts !== 'undefined' &&\n config.auth.maxLoginAttempts !== 0\n ) {\n collectionOperations.push('unlock')\n }\n\n if (config.versions) {\n collectionOperations.push('readVersions')\n }\n\n try {\n const shouldCommit = await initTransaction(req)\n\n const result = await getEntityPolicies({\n id,\n type: 'collection',\n entity: config,\n operations: collectionOperations,\n req,\n })\n\n if (shouldCommit) await commitTransaction(req)\n\n return result\n } catch (e: unknown) {\n await killTransaction(req)\n throw e\n }\n}\n"],"names":["commitTransaction","getEntityPolicies","initTransaction","killTransaction","allOperations","docAccessOperation","args","id","collection","config","req","collectionOperations","auth","maxLoginAttempts","push","versions","shouldCommit","result","type","entity","operations","e"],"mappings":"AAIA,SAASA,iBAAiB,QAAQ,uCAAsC;AACxE,SAASC,iBAAiB,QAAQ,uCAAsC;AACxE,SAASC,eAAe,QAAQ,qCAAoC;AACpE,SAASC,eAAe,QAAQ,qCAAoC;AAEpE,MAAMC,gBAAiC;IAAC;IAAU;IAAQ;IAAU;CAAS;AAQ7E,OAAO,eAAeC,mBAAmBC,IAAe;IACtD,MAAM,EACJC,EAAE,EACFC,YAAY,EAAEC,MAAM,EAAE,EACtBC,GAAG,EACJ,GAAGJ;IAEJ,MAAMK,uBAAuB;WAAIP;KAAc;IAE/C,IACEK,OAAOG,IAAI,IACX,OAAOH,OAAOG,IAAI,CAACC,gBAAgB,KAAK,eACxCJ,OAAOG,IAAI,CAACC,gBAAgB,KAAK,GACjC;QACAF,qBAAqBG,IAAI,CAAC;IAC5B;IAEA,IAAIL,OAAOM,QAAQ,EAAE;QACnBJ,qBAAqBG,IAAI,CAAC;IAC5B;IAEA,IAAI;QACF,MAAME,eAAe,MAAMd,gBAAgBQ;QAE3C,MAAMO,SAAS,MAAMhB,kBAAkB;YACrCM;YACAW,MAAM;YACNC,QAAQV;YACRW,YAAYT;YACZD;QACF;QAEA,IAAIM,cAAc,MAAMhB,kBAAkBU;QAE1C,OAAOO;IACT,EAAE,OAAOI,GAAY;QACnB,MAAMlB,gBAAgBO;QACtB,MAAMW;IACR;AACF"}
@@ -1,6 +1,6 @@
1
- import type { GeneratedTypes } from '../../index.js';
1
+ import type { CollectionSlug } from '../../index.js';
2
2
  import type { PayloadRequestWithData } from '../../types/index.js';
3
- import type { Collection } from '../config/types.js';
3
+ import type { Collection, DataFromCollectionSlug } from '../config/types.js';
4
4
  export type Arguments = {
5
5
  collection: Collection;
6
6
  depth?: number;
@@ -10,5 +10,5 @@ export type Arguments = {
10
10
  req: PayloadRequestWithData;
11
11
  showHiddenFields?: boolean;
12
12
  };
13
- export declare const duplicateOperation: <TSlug extends string | number | symbol>(incomingArgs: Arguments) => Promise<GeneratedTypes['collections'][TSlug]>;
13
+ export declare const duplicateOperation: <TSlug extends CollectionSlug>(incomingArgs: Arguments) => Promise<DataFromCollectionSlug<TSlug>>;
14
14
  //# sourceMappingURL=duplicate.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"duplicate.d.ts","sourceRoot":"","sources":["../../../src/collections/operations/duplicate.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AACpD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAA;AAClE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAA;AAiBpD,MAAM,MAAM,SAAS,GAAG;IACtB,UAAU,EAAE,UAAU,CAAA;IACtB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,EAAE,EAAE,MAAM,GAAG,MAAM,CAAA;IACnB,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,GAAG,EAAE,sBAAsB,CAAA;IAC3B,gBAAgB,CAAC,EAAE,OAAO,CAAA;CAC3B,CAAA;AAED,eAAO,MAAM,kBAAkB,yDACf,SAAS,KACtB,QAAQ,cAAc,CAAC,aAAa,CAAC,CAAC,KAAK,CAAC,CAyS9C,CAAA"}
1
+ {"version":3,"file":"duplicate.d.ts","sourceRoot":"","sources":["../../../src/collections/operations/duplicate.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AACpD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAA;AAClE,OAAO,KAAK,EAAE,UAAU,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAA;AAiB5E,MAAM,MAAM,SAAS,GAAG;IACtB,UAAU,EAAE,UAAU,CAAA;IACtB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,EAAE,EAAE,MAAM,GAAG,MAAM,CAAA;IACnB,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,GAAG,EAAE,sBAAsB,CAAA;IAC3B,gBAAgB,CAAC,EAAE,OAAO,CAAA;CAC3B,CAAA;AAED,eAAO,MAAM,kBAAkB,GAAU,KAAK,SAAS,cAAc,gBACrD,SAAS,KACtB,OAAO,CAAC,sBAAsB,CAAC,KAAK,CAAC,CAySvC,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/collections/operations/duplicate.ts"],"sourcesContent":["import type { DeepPartial } from 'ts-essentials'\n\nimport httpStatus from 'http-status'\n\nimport type { FindOneArgs } from '../../database/types.js'\nimport type { GeneratedTypes } from '../../index.js'\nimport type { PayloadRequestWithData } from '../../types/index.js'\nimport type { Collection } from '../config/types.js'\n\nimport executeAccess from '../../auth/executeAccess.js'\nimport { hasWhereAccessResult } from '../../auth/types.js'\nimport { combineQueries } from '../../database/combineQueries.js'\nimport { APIError, Forbidden, NotFound } from '../../errors/index.js'\nimport { afterChange } from '../../fields/hooks/afterChange/index.js'\nimport { afterRead } from '../../fields/hooks/afterRead/index.js'\nimport { beforeChange } from '../../fields/hooks/beforeChange/index.js'\nimport { beforeValidate } from '../../fields/hooks/beforeValidate/index.js'\nimport { commitTransaction } from '../../utilities/commitTransaction.js'\nimport { initTransaction } from '../../utilities/initTransaction.js'\nimport { killTransaction } from '../../utilities/killTransaction.js'\nimport { getLatestCollectionVersion } from '../../versions/getLatestCollectionVersion.js'\nimport { saveVersion } from '../../versions/saveVersion.js'\nimport { buildAfterOperation } from './utils.js'\n\nexport type Arguments = {\n collection: Collection\n depth?: number\n draft?: boolean\n id: number | string\n overrideAccess?: boolean\n req: PayloadRequestWithData\n showHiddenFields?: boolean\n}\n\nexport const duplicateOperation = async <TSlug extends keyof GeneratedTypes['collections']>(\n incomingArgs: Arguments,\n): Promise<GeneratedTypes['collections'][TSlug]> => {\n let args = incomingArgs\n const operation = 'create'\n\n try {\n const shouldCommit = await initTransaction(args.req)\n\n // /////////////////////////////////////\n // beforeOperation - Collection\n // /////////////////////////////////////\n\n await args.collection.config.hooks.beforeOperation.reduce(async (priorHook, hook) => {\n await priorHook\n\n args =\n (await hook({\n args,\n collection: args.collection.config,\n context: args.req.context,\n operation,\n req: args.req,\n })) || args\n }, Promise.resolve())\n\n const {\n id,\n collection: { config: collectionConfig },\n depth,\n draft: draftArg = true,\n overrideAccess,\n req: { fallbackLocale, locale: localeArg, payload },\n req,\n showHiddenFields,\n } = args\n\n if (!id) {\n throw new APIError('Missing ID of document to duplicate.', httpStatus.BAD_REQUEST)\n }\n const shouldSaveDraft = Boolean(draftArg && collectionConfig.versions.drafts)\n\n // /////////////////////////////////////\n // Read Access\n // /////////////////////////////////////\n\n const accessResults = !overrideAccess\n ? await executeAccess({ id, req }, collectionConfig.access.read)\n : true\n const hasWherePolicy = hasWhereAccessResult(accessResults)\n\n // /////////////////////////////////////\n // Retrieve document\n // /////////////////////////////////////\n const findOneArgs: FindOneArgs = {\n collection: collectionConfig.slug,\n locale: req.locale,\n req,\n where: combineQueries({ id: { equals: id } }, accessResults),\n }\n\n const docWithLocales = await getLatestCollectionVersion({\n id,\n config: collectionConfig,\n payload,\n query: findOneArgs,\n req,\n })\n\n if (!docWithLocales && !hasWherePolicy) throw new NotFound(req.t)\n if (!docWithLocales && hasWherePolicy) throw new Forbidden(req.t)\n\n // remove the createdAt timestamp and id to rely on the db to set the default it\n delete docWithLocales.createdAt\n delete docWithLocales.id\n\n // for version enabled collections, override the current status with draft, unless draft is explicitly set to false\n if (shouldSaveDraft) {\n docWithLocales._status = 'draft'\n }\n\n let result\n\n const originalDoc = await afterRead({\n collection: collectionConfig,\n context: req.context,\n depth: 0,\n doc: docWithLocales,\n draft: draftArg,\n fallbackLocale: null,\n global: null,\n locale: req.locale,\n overrideAccess: true,\n req,\n showHiddenFields: true,\n })\n\n // /////////////////////////////////////\n // Create Access\n // /////////////////////////////////////\n\n if (!overrideAccess) {\n await executeAccess({ data: originalDoc, req }, collectionConfig.access.create)\n }\n\n // /////////////////////////////////////\n // beforeValidate - Fields\n // /////////////////////////////////////\n\n let data = await beforeValidate<DeepPartial<GeneratedTypes['collections'][TSlug]>>({\n id,\n collection: collectionConfig,\n context: req.context,\n data: originalDoc,\n doc: originalDoc,\n duplicate: true,\n global: null,\n operation,\n overrideAccess,\n req,\n })\n\n // /////////////////////////////////////\n // beforeValidate - Collection\n // /////////////////////////////////////\n\n await collectionConfig.hooks.beforeValidate.reduce(async (priorHook, hook) => {\n await priorHook\n\n data =\n (await hook({\n collection: collectionConfig,\n context: req.context,\n data,\n operation,\n originalDoc,\n req,\n })) || result\n }, Promise.resolve())\n\n // /////////////////////////////////////\n // beforeChange - Collection\n // /////////////////////////////////////\n\n await collectionConfig.hooks.beforeChange.reduce(async (priorHook, hook) => {\n await priorHook\n\n data =\n (await hook({\n collection: collectionConfig,\n context: req.context,\n data,\n operation,\n originalDoc: result,\n req,\n })) || result\n }, Promise.resolve())\n\n // /////////////////////////////////////\n // beforeChange - Fields\n // /////////////////////////////////////\n\n result = await beforeChange<GeneratedTypes['collections'][TSlug]>({\n id,\n collection: collectionConfig,\n context: req.context,\n data,\n doc: originalDoc,\n docWithLocales,\n duplicate: true,\n global: null,\n operation,\n req,\n skipValidation:\n shouldSaveDraft &&\n collectionConfig.versions.drafts &&\n !collectionConfig.versions.drafts.validate,\n })\n\n // set req.locale back to the original locale\n req.locale = localeArg\n\n // /////////////////////////////////////\n // Create / Update\n // /////////////////////////////////////\n\n const versionDoc = await payload.db.create({\n collection: collectionConfig.slug,\n data: result,\n req,\n })\n\n // /////////////////////////////////////\n // Create version\n // /////////////////////////////////////\n\n if (collectionConfig.versions) {\n result = await saveVersion({\n id: versionDoc.id,\n collection: collectionConfig,\n docWithLocales: {\n ...versionDoc,\n createdAt: result.createdAt,\n },\n draft: shouldSaveDraft,\n payload,\n req,\n })\n }\n\n // /////////////////////////////////////\n // afterRead - Fields\n // /////////////////////////////////////\n\n result = await afterRead({\n collection: collectionConfig,\n context: req.context,\n depth,\n doc: versionDoc,\n draft: draftArg,\n fallbackLocale,\n global: null,\n locale: localeArg,\n overrideAccess,\n req,\n showHiddenFields,\n })\n\n // /////////////////////////////////////\n // afterRead - Collection\n // /////////////////////////////////////\n\n await collectionConfig.hooks.afterRead.reduce(async (priorHook, hook) => {\n await priorHook\n\n result =\n (await hook({\n collection: collectionConfig,\n context: req.context,\n doc: result,\n req,\n })) || result\n }, Promise.resolve())\n\n // /////////////////////////////////////\n // afterChange - Fields\n // /////////////////////////////////////\n\n result = await afterChange<GeneratedTypes['collections'][TSlug]>({\n collection: collectionConfig,\n context: req.context,\n data: versionDoc,\n doc: result,\n global: null,\n operation,\n previousDoc: {},\n req,\n })\n\n // /////////////////////////////////////\n // afterChange - Collection\n // /////////////////////////////////////\n\n await collectionConfig.hooks.afterChange.reduce(async (priorHook, hook) => {\n await priorHook\n\n result =\n (await hook({\n collection: collectionConfig,\n context: req.context,\n doc: result,\n operation,\n previousDoc: {},\n req,\n })) || result\n }, Promise.resolve())\n\n // /////////////////////////////////////\n // afterOperation - Collection\n // /////////////////////////////////////\n\n result = await buildAfterOperation<GeneratedTypes['collections'][TSlug]>({\n args,\n collection: collectionConfig,\n operation,\n result,\n })\n\n // /////////////////////////////////////\n // Return results\n // /////////////////////////////////////\n\n if (shouldCommit) await commitTransaction(req)\n\n return result\n } catch (error: unknown) {\n await killTransaction(args.req)\n throw error\n }\n}\n"],"names":["httpStatus","executeAccess","hasWhereAccessResult","combineQueries","APIError","Forbidden","NotFound","afterChange","afterRead","beforeChange","beforeValidate","commitTransaction","initTransaction","killTransaction","getLatestCollectionVersion","saveVersion","buildAfterOperation","duplicateOperation","incomingArgs","args","operation","shouldCommit","req","collection","config","hooks","beforeOperation","reduce","priorHook","hook","context","Promise","resolve","id","collectionConfig","depth","draft","draftArg","overrideAccess","fallbackLocale","locale","localeArg","payload","showHiddenFields","BAD_REQUEST","shouldSaveDraft","Boolean","versions","drafts","accessResults","access","read","hasWherePolicy","findOneArgs","slug","where","equals","docWithLocales","query","t","createdAt","_status","result","originalDoc","doc","global","data","create","duplicate","skipValidation","validate","versionDoc","db","previousDoc","error"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"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"}
1
+ {"version":3,"sources":["../../../src/collections/operations/duplicate.ts"],"sourcesContent":["import type { DeepPartial } from 'ts-essentials'\n\nimport httpStatus from 'http-status'\n\nimport type { FindOneArgs } from '../../database/types.js'\nimport type { CollectionSlug } from '../../index.js'\nimport type { PayloadRequestWithData } from '../../types/index.js'\nimport type { Collection, DataFromCollectionSlug } from '../config/types.js'\n\nimport executeAccess from '../../auth/executeAccess.js'\nimport { hasWhereAccessResult } from '../../auth/types.js'\nimport { combineQueries } from '../../database/combineQueries.js'\nimport { APIError, Forbidden, NotFound } from '../../errors/index.js'\nimport { afterChange } from '../../fields/hooks/afterChange/index.js'\nimport { afterRead } from '../../fields/hooks/afterRead/index.js'\nimport { beforeChange } from '../../fields/hooks/beforeChange/index.js'\nimport { beforeValidate } from '../../fields/hooks/beforeValidate/index.js'\nimport { commitTransaction } from '../../utilities/commitTransaction.js'\nimport { initTransaction } from '../../utilities/initTransaction.js'\nimport { killTransaction } from '../../utilities/killTransaction.js'\nimport { getLatestCollectionVersion } from '../../versions/getLatestCollectionVersion.js'\nimport { saveVersion } from '../../versions/saveVersion.js'\nimport { buildAfterOperation } from './utils.js'\n\nexport type Arguments = {\n collection: Collection\n depth?: number\n draft?: boolean\n id: number | string\n overrideAccess?: boolean\n req: PayloadRequestWithData\n showHiddenFields?: boolean\n}\n\nexport const duplicateOperation = async <TSlug extends CollectionSlug>(\n incomingArgs: Arguments,\n): Promise<DataFromCollectionSlug<TSlug>> => {\n let args = incomingArgs\n const operation = 'create'\n\n try {\n const shouldCommit = await initTransaction(args.req)\n\n // /////////////////////////////////////\n // beforeOperation - Collection\n // /////////////////////////////////////\n\n await args.collection.config.hooks.beforeOperation.reduce(async (priorHook, hook) => {\n await priorHook\n\n args =\n (await hook({\n args,\n collection: args.collection.config,\n context: args.req.context,\n operation,\n req: args.req,\n })) || args\n }, Promise.resolve())\n\n const {\n id,\n collection: { config: collectionConfig },\n depth,\n draft: draftArg = true,\n overrideAccess,\n req: { fallbackLocale, locale: localeArg, payload },\n req,\n showHiddenFields,\n } = args\n\n if (!id) {\n throw new APIError('Missing ID of document to duplicate.', httpStatus.BAD_REQUEST)\n }\n const shouldSaveDraft = Boolean(draftArg && collectionConfig.versions.drafts)\n\n // /////////////////////////////////////\n // Read Access\n // /////////////////////////////////////\n\n const accessResults = !overrideAccess\n ? await executeAccess({ id, req }, collectionConfig.access.read)\n : true\n const hasWherePolicy = hasWhereAccessResult(accessResults)\n\n // /////////////////////////////////////\n // Retrieve document\n // /////////////////////////////////////\n const findOneArgs: FindOneArgs = {\n collection: collectionConfig.slug,\n locale: req.locale,\n req,\n where: combineQueries({ id: { equals: id } }, accessResults),\n }\n\n const docWithLocales = await getLatestCollectionVersion({\n id,\n config: collectionConfig,\n payload,\n query: findOneArgs,\n req,\n })\n\n if (!docWithLocales && !hasWherePolicy) throw new NotFound(req.t)\n if (!docWithLocales && hasWherePolicy) throw new Forbidden(req.t)\n\n // remove the createdAt timestamp and id to rely on the db to set the default it\n delete docWithLocales.createdAt\n delete docWithLocales.id\n\n // for version enabled collections, override the current status with draft, unless draft is explicitly set to false\n if (shouldSaveDraft) {\n docWithLocales._status = 'draft'\n }\n\n let result\n\n const originalDoc = await afterRead({\n collection: collectionConfig,\n context: req.context,\n depth: 0,\n doc: docWithLocales,\n draft: draftArg,\n fallbackLocale: null,\n global: null,\n locale: req.locale,\n overrideAccess: true,\n req,\n showHiddenFields: true,\n })\n\n // /////////////////////////////////////\n // Create Access\n // /////////////////////////////////////\n\n if (!overrideAccess) {\n await executeAccess({ data: originalDoc, req }, collectionConfig.access.create)\n }\n\n // /////////////////////////////////////\n // beforeValidate - Fields\n // /////////////////////////////////////\n\n let data = await beforeValidate<DeepPartial<DataFromCollectionSlug<TSlug>>>({\n id,\n collection: collectionConfig,\n context: req.context,\n data: originalDoc,\n doc: originalDoc,\n duplicate: true,\n global: null,\n operation,\n overrideAccess,\n req,\n })\n\n // /////////////////////////////////////\n // beforeValidate - Collection\n // /////////////////////////////////////\n\n await collectionConfig.hooks.beforeValidate.reduce(async (priorHook, hook) => {\n await priorHook\n\n data =\n (await hook({\n collection: collectionConfig,\n context: req.context,\n data,\n operation,\n originalDoc,\n req,\n })) || result\n }, Promise.resolve())\n\n // /////////////////////////////////////\n // beforeChange - Collection\n // /////////////////////////////////////\n\n await collectionConfig.hooks.beforeChange.reduce(async (priorHook, hook) => {\n await priorHook\n\n data =\n (await hook({\n collection: collectionConfig,\n context: req.context,\n data,\n operation,\n originalDoc: result,\n req,\n })) || result\n }, Promise.resolve())\n\n // /////////////////////////////////////\n // beforeChange - Fields\n // /////////////////////////////////////\n\n result = await beforeChange<DataFromCollectionSlug<TSlug>>({\n id,\n collection: collectionConfig,\n context: req.context,\n data,\n doc: originalDoc,\n docWithLocales,\n duplicate: true,\n global: null,\n operation,\n req,\n skipValidation:\n shouldSaveDraft &&\n collectionConfig.versions.drafts &&\n !collectionConfig.versions.drafts.validate,\n })\n\n // set req.locale back to the original locale\n req.locale = localeArg\n\n // /////////////////////////////////////\n // Create / Update\n // /////////////////////////////////////\n\n const versionDoc = await payload.db.create({\n collection: collectionConfig.slug,\n data: result,\n req,\n })\n\n // /////////////////////////////////////\n // Create version\n // /////////////////////////////////////\n\n if (collectionConfig.versions) {\n result = await saveVersion({\n id: versionDoc.id,\n collection: collectionConfig,\n docWithLocales: {\n ...versionDoc,\n createdAt: result.createdAt,\n },\n draft: shouldSaveDraft,\n payload,\n req,\n })\n }\n\n // /////////////////////////////////////\n // afterRead - Fields\n // /////////////////////////////////////\n\n result = await afterRead({\n collection: collectionConfig,\n context: req.context,\n depth,\n doc: versionDoc,\n draft: draftArg,\n fallbackLocale,\n global: null,\n locale: localeArg,\n overrideAccess,\n req,\n showHiddenFields,\n })\n\n // /////////////////////////////////////\n // afterRead - Collection\n // /////////////////////////////////////\n\n await collectionConfig.hooks.afterRead.reduce(async (priorHook, hook) => {\n await priorHook\n\n result =\n (await hook({\n collection: collectionConfig,\n context: req.context,\n doc: result,\n req,\n })) || result\n }, Promise.resolve())\n\n // /////////////////////////////////////\n // afterChange - Fields\n // /////////////////////////////////////\n\n result = await afterChange<DataFromCollectionSlug<TSlug>>({\n collection: collectionConfig,\n context: req.context,\n data: versionDoc,\n doc: result,\n global: null,\n operation,\n previousDoc: {},\n req,\n })\n\n // /////////////////////////////////////\n // afterChange - Collection\n // /////////////////////////////////////\n\n await collectionConfig.hooks.afterChange.reduce(async (priorHook, hook) => {\n await priorHook\n\n result =\n (await hook({\n collection: collectionConfig,\n context: req.context,\n doc: result,\n operation,\n previousDoc: {},\n req,\n })) || result\n }, Promise.resolve())\n\n // /////////////////////////////////////\n // afterOperation - Collection\n // /////////////////////////////////////\n\n result = await buildAfterOperation({\n args,\n collection: collectionConfig,\n operation,\n result,\n })\n\n // /////////////////////////////////////\n // Return results\n // /////////////////////////////////////\n\n if (shouldCommit) await commitTransaction(req)\n\n return result\n } catch (error: unknown) {\n await killTransaction(args.req)\n throw error\n }\n}\n"],"names":["httpStatus","executeAccess","hasWhereAccessResult","combineQueries","APIError","Forbidden","NotFound","afterChange","afterRead","beforeChange","beforeValidate","commitTransaction","initTransaction","killTransaction","getLatestCollectionVersion","saveVersion","buildAfterOperation","duplicateOperation","incomingArgs","args","operation","shouldCommit","req","collection","config","hooks","beforeOperation","reduce","priorHook","hook","context","Promise","resolve","id","collectionConfig","depth","draft","draftArg","overrideAccess","fallbackLocale","locale","localeArg","payload","showHiddenFields","BAD_REQUEST","shouldSaveDraft","Boolean","versions","drafts","accessResults","access","read","hasWherePolicy","findOneArgs","slug","where","equals","docWithLocales","query","t","createdAt","_status","result","originalDoc","doc","global","data","create","duplicate","skipValidation","validate","versionDoc","db","previousDoc","error"],"mappings":"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"}
@@ -1,6 +1,7 @@
1
1
  import type { PaginatedDocs } from '../../database/types.js';
2
+ import type { CollectionSlug } from '../../index.js';
2
3
  import type { PayloadRequestWithData, Where } from '../../types/index.js';
3
- import type { Collection, TypeWithID } from '../config/types.js';
4
+ import type { Collection, DataFromCollectionSlug } from '../config/types.js';
4
5
  export type Arguments = {
5
6
  collection: Collection;
6
7
  currentDepth?: number;
@@ -16,5 +17,5 @@ export type Arguments = {
16
17
  sort?: string;
17
18
  where?: Where;
18
19
  };
19
- export declare const findOperation: <T extends TypeWithID & Record<string, unknown>>(incomingArgs: Arguments) => Promise<PaginatedDocs<T>>;
20
+ export declare const findOperation: <TSlug extends CollectionSlug>(incomingArgs: Arguments) => Promise<PaginatedDocs<DataFromCollectionSlug<TSlug>>>;
20
21
  //# sourceMappingURL=find.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"find.d.ts","sourceRoot":"","sources":["../../../src/collections/operations/find.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAA;AAC5D,OAAO,KAAK,EAAE,sBAAsB,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAA;AACzE,OAAO,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAA;AAchE,MAAM,MAAM,SAAS,GAAG;IACtB,UAAU,EAAE,UAAU,CAAA;IACtB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,GAAG,CAAC,EAAE,sBAAsB,CAAA;IAC5B,gBAAgB,CAAC,EAAE,OAAO,CAAA;IAC1B,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,KAAK,CAAC,EAAE,KAAK,CAAA;CACd,CAAA;AAED,eAAO,MAAM,aAAa,iEACV,SAAS,KACtB,QAAQ,cAAc,CAAC,CAAC,CAkO1B,CAAA"}
1
+ {"version":3,"file":"find.d.ts","sourceRoot":"","sources":["../../../src/collections/operations/find.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAA;AAC5D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AACpD,OAAO,KAAK,EAAE,sBAAsB,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAA;AACzE,OAAO,KAAK,EAAE,UAAU,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAA;AAc5E,MAAM,MAAM,SAAS,GAAG;IACtB,UAAU,EAAE,UAAU,CAAA;IACtB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,GAAG,CAAC,EAAE,sBAAsB,CAAA;IAC5B,gBAAgB,CAAC,EAAE,OAAO,CAAA;IAC1B,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,KAAK,CAAC,EAAE,KAAK,CAAA;CACd,CAAA;AAED,eAAO,MAAM,aAAa,GAAU,KAAK,SAAS,cAAc,gBAChD,SAAS,KACtB,OAAO,CAAC,aAAa,CAAC,sBAAsB,CAAC,KAAK,CAAC,CAAC,CAkOtD,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/collections/operations/find.ts"],"sourcesContent":["import type { AccessResult } from '../../config/types.js'\nimport type { PaginatedDocs } from '../../database/types.js'\nimport type { PayloadRequestWithData, Where } from '../../types/index.js'\nimport type { Collection, TypeWithID } from '../config/types.js'\n\nimport executeAccess from '../../auth/executeAccess.js'\nimport { combineQueries } from '../../database/combineQueries.js'\nimport { validateQueryPaths } from '../../database/queryValidation/validateQueryPaths.js'\nimport { afterRead } from '../../fields/hooks/afterRead/index.js'\nimport { commitTransaction } from '../../utilities/commitTransaction.js'\nimport { initTransaction } from '../../utilities/initTransaction.js'\nimport { killTransaction } from '../../utilities/killTransaction.js'\nimport { buildVersionCollectionFields } from '../../versions/buildCollectionFields.js'\nimport { appendVersionToQueryKey } from '../../versions/drafts/appendVersionToQueryKey.js'\nimport { getQueryDraftsSort } from '../../versions/drafts/getQueryDraftsSort.js'\nimport { buildAfterOperation } from './utils.js'\n\nexport type Arguments = {\n collection: Collection\n currentDepth?: number\n depth?: number\n disableErrors?: boolean\n draft?: boolean\n limit?: number\n overrideAccess?: boolean\n page?: number\n pagination?: boolean\n req?: PayloadRequestWithData\n showHiddenFields?: boolean\n sort?: string\n where?: Where\n}\n\nexport const findOperation = async <T extends TypeWithID & Record<string, unknown>>(\n incomingArgs: Arguments,\n): Promise<PaginatedDocs<T>> => {\n let args = incomingArgs\n\n try {\n const shouldCommit = await initTransaction(args.req)\n\n // /////////////////////////////////////\n // beforeOperation - Collection\n // /////////////////////////////////////\n\n await args.collection.config.hooks.beforeOperation.reduce(async (priorHook, hook) => {\n await priorHook\n\n args =\n (await hook({\n args,\n collection: args.collection.config,\n context: args.req.context,\n operation: 'read',\n req: args.req,\n })) || args\n }, Promise.resolve())\n\n const {\n collection: { config: collectionConfig },\n collection,\n currentDepth,\n depth,\n disableErrors,\n draft: draftsEnabled,\n limit,\n overrideAccess,\n page,\n pagination = true,\n req: { fallbackLocale, locale, payload },\n req,\n showHiddenFields,\n sort,\n where,\n } = args\n\n // /////////////////////////////////////\n // Access\n // /////////////////////////////////////\n\n let accessResult: AccessResult\n\n if (!overrideAccess) {\n accessResult = await executeAccess({ disableErrors, req }, collectionConfig.access.read)\n\n // If errors are disabled, and access returns false, return empty results\n if (accessResult === false) {\n return {\n docs: [],\n hasNextPage: false,\n hasPrevPage: false,\n limit,\n nextPage: null,\n page: 1,\n pagingCounter: 1,\n prevPage: null,\n totalDocs: 0,\n totalPages: 1,\n }\n }\n }\n\n // /////////////////////////////////////\n // Find\n // /////////////////////////////////////\n\n const usePagination = pagination && limit !== 0\n const sanitizedLimit = limit ?? (usePagination ? 10 : 0)\n const sanitizedPage = page || 1\n\n let result: PaginatedDocs<T>\n\n let fullWhere = combineQueries(where, accessResult)\n\n if (collectionConfig.versions?.drafts && draftsEnabled) {\n fullWhere = appendVersionToQueryKey(fullWhere)\n\n await validateQueryPaths({\n collectionConfig: collection.config,\n overrideAccess,\n req,\n versionFields: buildVersionCollectionFields(collection.config),\n where: fullWhere,\n })\n\n result = await payload.db.queryDrafts<T>({\n collection: collectionConfig.slug,\n limit: sanitizedLimit,\n locale,\n page: sanitizedPage,\n pagination: usePagination,\n req,\n sort: getQueryDraftsSort(sort),\n where: fullWhere,\n })\n } else {\n await validateQueryPaths({\n collectionConfig,\n overrideAccess,\n req,\n where,\n })\n\n result = await payload.db.find<T>({\n collection: collectionConfig.slug,\n limit: sanitizedLimit,\n locale,\n page: sanitizedPage,\n pagination,\n req,\n sort,\n where: fullWhere,\n })\n }\n\n // /////////////////////////////////////\n // beforeRead - Collection\n // /////////////////////////////////////\n\n result = {\n ...result,\n docs: await Promise.all(\n result.docs.map(async (doc) => {\n let docRef = doc\n\n await collectionConfig.hooks.beforeRead.reduce(async (priorHook, hook) => {\n await priorHook\n\n docRef =\n (await hook({\n collection: collectionConfig,\n context: req.context,\n doc: docRef,\n query: fullWhere,\n req,\n })) || docRef\n }, Promise.resolve())\n\n return docRef\n }),\n ),\n }\n\n // /////////////////////////////////////\n // afterRead - Fields\n // /////////////////////////////////////\n\n result = {\n ...result,\n docs: await Promise.all(\n result.docs.map(async (doc) =>\n afterRead<T>({\n collection: collectionConfig,\n context: req.context,\n currentDepth,\n depth,\n doc,\n draft: draftsEnabled,\n fallbackLocale,\n findMany: true,\n global: null,\n locale,\n overrideAccess,\n req,\n showHiddenFields,\n }),\n ),\n ),\n }\n\n // /////////////////////////////////////\n // afterRead - Collection\n // /////////////////////////////////////\n\n result = {\n ...result,\n docs: await Promise.all(\n result.docs.map(async (doc) => {\n let docRef = doc\n\n await collectionConfig.hooks.afterRead.reduce(async (priorHook, hook) => {\n await priorHook\n\n docRef =\n (await hook({\n collection: collectionConfig,\n context: req.context,\n doc: docRef,\n findMany: true,\n query: fullWhere,\n req,\n })) || doc\n }, Promise.resolve())\n\n return docRef\n }),\n ),\n }\n\n // /////////////////////////////////////\n // afterOperation - Collection\n // /////////////////////////////////////\n\n result = await buildAfterOperation<T>({\n args,\n collection: collectionConfig,\n operation: 'find',\n result,\n })\n\n // /////////////////////////////////////\n // Return results\n // /////////////////////////////////////\n\n if (shouldCommit) await commitTransaction(req)\n\n return result\n } catch (error: unknown) {\n await killTransaction(args.req)\n throw error\n }\n}\n"],"names":["executeAccess","combineQueries","validateQueryPaths","afterRead","commitTransaction","initTransaction","killTransaction","buildVersionCollectionFields","appendVersionToQueryKey","getQueryDraftsSort","buildAfterOperation","findOperation","incomingArgs","args","shouldCommit","req","collection","config","hooks","beforeOperation","reduce","priorHook","hook","context","operation","Promise","resolve","collectionConfig","currentDepth","depth","disableErrors","draft","draftsEnabled","limit","overrideAccess","page","pagination","fallbackLocale","locale","payload","showHiddenFields","sort","where","accessResult","access","read","docs","hasNextPage","hasPrevPage","nextPage","pagingCounter","prevPage","totalDocs","totalPages","usePagination","sanitizedLimit","sanitizedPage","result","fullWhere","versions","drafts","versionFields","db","queryDrafts","slug","find","all","map","doc","docRef","beforeRead","query","findMany","global","error"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"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"}
1
+ {"version":3,"sources":["../../../src/collections/operations/find.ts"],"sourcesContent":["import type { AccessResult } from '../../config/types.js'\nimport type { PaginatedDocs } from '../../database/types.js'\nimport type { CollectionSlug } from '../../index.js'\nimport type { PayloadRequestWithData, Where } from '../../types/index.js'\nimport type { Collection, DataFromCollectionSlug } from '../config/types.js'\n\nimport executeAccess from '../../auth/executeAccess.js'\nimport { combineQueries } from '../../database/combineQueries.js'\nimport { validateQueryPaths } from '../../database/queryValidation/validateQueryPaths.js'\nimport { afterRead } from '../../fields/hooks/afterRead/index.js'\nimport { commitTransaction } from '../../utilities/commitTransaction.js'\nimport { initTransaction } from '../../utilities/initTransaction.js'\nimport { killTransaction } from '../../utilities/killTransaction.js'\nimport { buildVersionCollectionFields } from '../../versions/buildCollectionFields.js'\nimport { appendVersionToQueryKey } from '../../versions/drafts/appendVersionToQueryKey.js'\nimport { getQueryDraftsSort } from '../../versions/drafts/getQueryDraftsSort.js'\nimport { buildAfterOperation } from './utils.js'\n\nexport type Arguments = {\n collection: Collection\n currentDepth?: number\n depth?: number\n disableErrors?: boolean\n draft?: boolean\n limit?: number\n overrideAccess?: boolean\n page?: number\n pagination?: boolean\n req?: PayloadRequestWithData\n showHiddenFields?: boolean\n sort?: string\n where?: Where\n}\n\nexport const findOperation = async <TSlug extends CollectionSlug>(\n incomingArgs: Arguments,\n): Promise<PaginatedDocs<DataFromCollectionSlug<TSlug>>> => {\n let args = incomingArgs\n\n try {\n const shouldCommit = await initTransaction(args.req)\n\n // /////////////////////////////////////\n // beforeOperation - Collection\n // /////////////////////////////////////\n\n await args.collection.config.hooks.beforeOperation.reduce(async (priorHook, hook) => {\n await priorHook\n\n args =\n (await hook({\n args,\n collection: args.collection.config,\n context: args.req.context,\n operation: 'read',\n req: args.req,\n })) || args\n }, Promise.resolve())\n\n const {\n collection: { config: collectionConfig },\n collection,\n currentDepth,\n depth,\n disableErrors,\n draft: draftsEnabled,\n limit,\n overrideAccess,\n page,\n pagination = true,\n req: { fallbackLocale, locale, payload },\n req,\n showHiddenFields,\n sort,\n where,\n } = args\n\n // /////////////////////////////////////\n // Access\n // /////////////////////////////////////\n\n let accessResult: AccessResult\n\n if (!overrideAccess) {\n accessResult = await executeAccess({ disableErrors, req }, collectionConfig.access.read)\n\n // If errors are disabled, and access returns false, return empty results\n if (accessResult === false) {\n return {\n docs: [],\n hasNextPage: false,\n hasPrevPage: false,\n limit,\n nextPage: null,\n page: 1,\n pagingCounter: 1,\n prevPage: null,\n totalDocs: 0,\n totalPages: 1,\n }\n }\n }\n\n // /////////////////////////////////////\n // Find\n // /////////////////////////////////////\n\n const usePagination = pagination && limit !== 0\n const sanitizedLimit = limit ?? (usePagination ? 10 : 0)\n const sanitizedPage = page || 1\n\n let result: PaginatedDocs<DataFromCollectionSlug<TSlug>>\n\n let fullWhere = combineQueries(where, accessResult)\n\n if (collectionConfig.versions?.drafts && draftsEnabled) {\n fullWhere = appendVersionToQueryKey(fullWhere)\n\n await validateQueryPaths({\n collectionConfig: collection.config,\n overrideAccess,\n req,\n versionFields: buildVersionCollectionFields(collection.config),\n where: fullWhere,\n })\n\n result = await payload.db.queryDrafts<DataFromCollectionSlug<TSlug>>({\n collection: collectionConfig.slug,\n limit: sanitizedLimit,\n locale,\n page: sanitizedPage,\n pagination: usePagination,\n req,\n sort: getQueryDraftsSort(sort),\n where: fullWhere,\n })\n } else {\n await validateQueryPaths({\n collectionConfig,\n overrideAccess,\n req,\n where,\n })\n\n result = await payload.db.find<DataFromCollectionSlug<TSlug>>({\n collection: collectionConfig.slug,\n limit: sanitizedLimit,\n locale,\n page: sanitizedPage,\n pagination,\n req,\n sort,\n where: fullWhere,\n })\n }\n\n // /////////////////////////////////////\n // beforeRead - Collection\n // /////////////////////////////////////\n\n result = {\n ...result,\n docs: await Promise.all(\n result.docs.map(async (doc) => {\n let docRef = doc\n\n await collectionConfig.hooks.beforeRead.reduce(async (priorHook, hook) => {\n await priorHook\n\n docRef =\n (await hook({\n collection: collectionConfig,\n context: req.context,\n doc: docRef,\n query: fullWhere,\n req,\n })) || docRef\n }, Promise.resolve())\n\n return docRef\n }),\n ),\n }\n\n // /////////////////////////////////////\n // afterRead - Fields\n // /////////////////////////////////////\n\n result = {\n ...result,\n docs: await Promise.all(\n result.docs.map(async (doc) =>\n afterRead<DataFromCollectionSlug<TSlug>>({\n collection: collectionConfig,\n context: req.context,\n currentDepth,\n depth,\n doc,\n draft: draftsEnabled,\n fallbackLocale,\n findMany: true,\n global: null,\n locale,\n overrideAccess,\n req,\n showHiddenFields,\n }),\n ),\n ),\n }\n\n // /////////////////////////////////////\n // afterRead - Collection\n // /////////////////////////////////////\n\n result = {\n ...result,\n docs: await Promise.all(\n result.docs.map(async (doc) => {\n let docRef = doc\n\n await collectionConfig.hooks.afterRead.reduce(async (priorHook, hook) => {\n await priorHook\n\n docRef =\n (await hook({\n collection: collectionConfig,\n context: req.context,\n doc: docRef,\n findMany: true,\n query: fullWhere,\n req,\n })) || doc\n }, Promise.resolve())\n\n return docRef\n }),\n ),\n }\n\n // /////////////////////////////////////\n // afterOperation - Collection\n // /////////////////////////////////////\n\n result = await buildAfterOperation({\n args,\n collection: collectionConfig,\n operation: 'find',\n result,\n })\n\n // /////////////////////////////////////\n // Return results\n // /////////////////////////////////////\n\n if (shouldCommit) await commitTransaction(req)\n\n return result\n } catch (error: unknown) {\n await killTransaction(args.req)\n throw error\n }\n}\n"],"names":["executeAccess","combineQueries","validateQueryPaths","afterRead","commitTransaction","initTransaction","killTransaction","buildVersionCollectionFields","appendVersionToQueryKey","getQueryDraftsSort","buildAfterOperation","findOperation","incomingArgs","args","shouldCommit","req","collection","config","hooks","beforeOperation","reduce","priorHook","hook","context","operation","Promise","resolve","collectionConfig","currentDepth","depth","disableErrors","draft","draftsEnabled","limit","overrideAccess","page","pagination","fallbackLocale","locale","payload","showHiddenFields","sort","where","accessResult","access","read","docs","hasNextPage","hasPrevPage","nextPage","pagingCounter","prevPage","totalDocs","totalPages","usePagination","sanitizedLimit","sanitizedPage","result","fullWhere","versions","drafts","versionFields","db","queryDrafts","slug","find","all","map","doc","docRef","beforeRead","query","findMany","global","error"],"mappings":"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"}
@@ -1,5 +1,6 @@
1
+ import type { CollectionSlug } from '../../index.js';
1
2
  import type { PayloadRequestWithData } from '../../types/index.js';
2
- import type { Collection, TypeWithID } from '../config/types.js';
3
+ import type { Collection, DataFromCollectionSlug } from '../config/types.js';
3
4
  export type Arguments = {
4
5
  collection: Collection;
5
6
  currentDepth?: number;
@@ -11,5 +12,5 @@ export type Arguments = {
11
12
  req: PayloadRequestWithData;
12
13
  showHiddenFields?: boolean;
13
14
  };
14
- export declare const findByIDOperation: <T extends TypeWithID>(incomingArgs: Arguments) => Promise<T>;
15
+ export declare const findByIDOperation: <TSlug extends CollectionSlug>(incomingArgs: Arguments) => Promise<DataFromCollectionSlug<TSlug>>;
15
16
  //# sourceMappingURL=findByID.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"findByID.d.ts","sourceRoot":"","sources":["../../../src/collections/operations/findByID.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAA;AAClE,OAAO,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAA;AAYhE,MAAM,MAAM,SAAS,GAAG;IACtB,UAAU,EAAE,UAAU,CAAA;IACtB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,EAAE,EAAE,MAAM,GAAG,MAAM,CAAA;IACnB,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,GAAG,EAAE,sBAAsB,CAAA;IAC3B,gBAAgB,CAAC,EAAE,OAAO,CAAA;CAC3B,CAAA;AAED,eAAO,MAAM,iBAAiB,uCACd,SAAS,KACtB,QAAQ,CAAC,CAkKX,CAAA"}
1
+ {"version":3,"file":"findByID.d.ts","sourceRoot":"","sources":["../../../src/collections/operations/findByID.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AACpD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAA;AAClE,OAAO,KAAK,EAAE,UAAU,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAA;AAY5E,MAAM,MAAM,SAAS,GAAG;IACtB,UAAU,EAAE,UAAU,CAAA;IACtB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,EAAE,EAAE,MAAM,GAAG,MAAM,CAAA;IACnB,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,GAAG,EAAE,sBAAsB,CAAA;IAC3B,gBAAgB,CAAC,EAAE,OAAO,CAAA;CAC3B,CAAA;AAED,eAAO,MAAM,iBAAiB,GAAU,KAAK,SAAS,cAAc,gBACpD,SAAS,KACtB,OAAO,CAAC,sBAAsB,CAAC,KAAK,CAAC,CAkKvC,CAAA"}
@@ -121,9 +121,8 @@ export const findByIDOperation = async (incomingArgs)=>{
121
121
  args,
122
122
  collection: collectionConfig,
123
123
  operation: 'findByID',
124
- result: result
125
- }) // TODO: fix this typing
126
- ;
124
+ result
125
+ });
127
126
  // /////////////////////////////////////
128
127
  // Return results
129
128
  // /////////////////////////////////////
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/collections/operations/findByID.ts"],"sourcesContent":["/* eslint-disable no-underscore-dangle */\nimport type { FindOneArgs } from '../../database/types.js'\nimport type { PayloadRequestWithData } from '../../types/index.js'\nimport type { Collection, TypeWithID } from '../config/types.js'\n\nimport executeAccess from '../../auth/executeAccess.js'\nimport { combineQueries } from '../../database/combineQueries.js'\nimport { NotFound } from '../../errors/index.js'\nimport { afterRead } from '../../fields/hooks/afterRead/index.js'\nimport { commitTransaction } from '../../utilities/commitTransaction.js'\nimport { initTransaction } from '../../utilities/initTransaction.js'\nimport { killTransaction } from '../../utilities/killTransaction.js'\nimport replaceWithDraftIfAvailable from '../../versions/drafts/replaceWithDraftIfAvailable.js'\nimport { buildAfterOperation } from './utils.js'\n\nexport type Arguments = {\n collection: Collection\n currentDepth?: number\n depth?: number\n disableErrors?: boolean\n draft?: boolean\n id: number | string\n overrideAccess?: boolean\n req: PayloadRequestWithData\n showHiddenFields?: boolean\n}\n\nexport const findByIDOperation = async <T extends TypeWithID>(\n incomingArgs: Arguments,\n): Promise<T> => {\n let args = incomingArgs\n\n try {\n const shouldCommit = await initTransaction(args.req)\n\n // /////////////////////////////////////\n // beforeOperation - Collection\n // /////////////////////////////////////\n\n await args.collection.config.hooks.beforeOperation.reduce(async (priorHook, hook) => {\n await priorHook\n\n args =\n (await hook({\n args,\n collection: args.collection.config,\n context: args.req.context,\n operation: 'read',\n req: args.req,\n })) || args\n }, Promise.resolve())\n\n const {\n id,\n collection: { config: collectionConfig },\n currentDepth,\n depth,\n disableErrors,\n draft: draftEnabled = false,\n overrideAccess = false,\n req: { fallbackLocale, locale, t },\n req,\n showHiddenFields,\n } = args\n\n // /////////////////////////////////////\n // Access\n // /////////////////////////////////////\n\n const accessResult = !overrideAccess\n ? await executeAccess({ id, disableErrors, req }, collectionConfig.access.read)\n : true\n\n // If errors are disabled, and access returns false, return null\n if (accessResult === false) return null\n\n const findOneArgs: FindOneArgs = {\n collection: collectionConfig.slug,\n locale,\n req: {\n transactionID: req.transactionID,\n } as PayloadRequestWithData,\n where: combineQueries({ id: { equals: id } }, accessResult),\n }\n\n // /////////////////////////////////////\n // Find by ID\n // /////////////////////////////////////\n\n if (!findOneArgs.where.and[0].id) throw new NotFound(t)\n\n let result: T = await req.payload.db.findOne(findOneArgs)\n\n if (!result) {\n if (!disableErrors) {\n throw new NotFound(req.t)\n }\n\n return null\n }\n\n // /////////////////////////////////////\n // Replace document with draft if available\n // /////////////////////////////////////\n\n if (collectionConfig.versions?.drafts && draftEnabled) {\n result = await replaceWithDraftIfAvailable({\n accessResult,\n doc: result,\n entity: collectionConfig,\n entityType: 'collection',\n overrideAccess,\n req,\n })\n }\n\n // /////////////////////////////////////\n // beforeRead - Collection\n // /////////////////////////////////////\n\n await collectionConfig.hooks.beforeRead.reduce(async (priorHook, hook) => {\n await priorHook\n\n result =\n (await hook({\n collection: collectionConfig,\n context: req.context,\n doc: result,\n query: findOneArgs.where,\n req,\n })) || result\n }, Promise.resolve())\n\n // /////////////////////////////////////\n // afterRead - Fields\n // /////////////////////////////////////\n\n result = await afterRead({\n collection: collectionConfig,\n context: req.context,\n currentDepth,\n depth,\n doc: result,\n draft: draftEnabled,\n fallbackLocale,\n global: null,\n locale,\n overrideAccess,\n req,\n showHiddenFields,\n })\n\n // /////////////////////////////////////\n // afterRead - Collection\n // /////////////////////////////////////\n\n await collectionConfig.hooks.afterRead.reduce(async (priorHook, hook) => {\n await priorHook\n\n result =\n (await hook({\n collection: collectionConfig,\n context: req.context,\n doc: result,\n query: findOneArgs.where,\n req,\n })) || result\n }, Promise.resolve())\n\n // /////////////////////////////////////\n // afterOperation - Collection\n // /////////////////////////////////////\n\n result = await buildAfterOperation<T>({\n args,\n collection: collectionConfig,\n operation: 'findByID',\n result: result as any,\n }) // TODO: fix this typing\n\n // /////////////////////////////////////\n // Return results\n // /////////////////////////////////////\n\n if (shouldCommit) await commitTransaction(req)\n\n return result\n } catch (error: unknown) {\n await killTransaction(args.req)\n throw error\n }\n}\n"],"names":["executeAccess","combineQueries","NotFound","afterRead","commitTransaction","initTransaction","killTransaction","replaceWithDraftIfAvailable","buildAfterOperation","findByIDOperation","incomingArgs","args","shouldCommit","req","collection","config","hooks","beforeOperation","reduce","priorHook","hook","context","operation","Promise","resolve","id","collectionConfig","currentDepth","depth","disableErrors","draft","draftEnabled","overrideAccess","fallbackLocale","locale","t","showHiddenFields","accessResult","access","read","findOneArgs","slug","transactionID","where","equals","and","result","payload","db","findOne","versions","drafts","doc","entity","entityType","beforeRead","query","global","error"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"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"}
1
+ {"version":3,"sources":["../../../src/collections/operations/findByID.ts"],"sourcesContent":["/* eslint-disable no-underscore-dangle */\nimport type { FindOneArgs } from '../../database/types.js'\nimport type { CollectionSlug } from '../../index.js'\nimport type { PayloadRequestWithData } from '../../types/index.js'\nimport type { Collection, DataFromCollectionSlug } from '../config/types.js'\n\nimport executeAccess from '../../auth/executeAccess.js'\nimport { combineQueries } from '../../database/combineQueries.js'\nimport { NotFound } from '../../errors/index.js'\nimport { afterRead } from '../../fields/hooks/afterRead/index.js'\nimport { commitTransaction } from '../../utilities/commitTransaction.js'\nimport { initTransaction } from '../../utilities/initTransaction.js'\nimport { killTransaction } from '../../utilities/killTransaction.js'\nimport replaceWithDraftIfAvailable from '../../versions/drafts/replaceWithDraftIfAvailable.js'\nimport { buildAfterOperation } from './utils.js'\n\nexport type Arguments = {\n collection: Collection\n currentDepth?: number\n depth?: number\n disableErrors?: boolean\n draft?: boolean\n id: number | string\n overrideAccess?: boolean\n req: PayloadRequestWithData\n showHiddenFields?: boolean\n}\n\nexport const findByIDOperation = async <TSlug extends CollectionSlug>(\n incomingArgs: Arguments,\n): Promise<DataFromCollectionSlug<TSlug>> => {\n let args = incomingArgs\n\n try {\n const shouldCommit = await initTransaction(args.req)\n\n // /////////////////////////////////////\n // beforeOperation - Collection\n // /////////////////////////////////////\n\n await args.collection.config.hooks.beforeOperation.reduce(async (priorHook, hook) => {\n await priorHook\n\n args =\n (await hook({\n args,\n collection: args.collection.config,\n context: args.req.context,\n operation: 'read',\n req: args.req,\n })) || args\n }, Promise.resolve())\n\n const {\n id,\n collection: { config: collectionConfig },\n currentDepth,\n depth,\n disableErrors,\n draft: draftEnabled = false,\n overrideAccess = false,\n req: { fallbackLocale, locale, t },\n req,\n showHiddenFields,\n } = args\n\n // /////////////////////////////////////\n // Access\n // /////////////////////////////////////\n\n const accessResult = !overrideAccess\n ? await executeAccess({ id, disableErrors, req }, collectionConfig.access.read)\n : true\n\n // If errors are disabled, and access returns false, return null\n if (accessResult === false) return null\n\n const findOneArgs: FindOneArgs = {\n collection: collectionConfig.slug,\n locale,\n req: {\n transactionID: req.transactionID,\n } as PayloadRequestWithData,\n where: combineQueries({ id: { equals: id } }, accessResult),\n }\n\n // /////////////////////////////////////\n // Find by ID\n // /////////////////////////////////////\n\n if (!findOneArgs.where.and[0].id) throw new NotFound(t)\n\n let result: DataFromCollectionSlug<TSlug> = await req.payload.db.findOne(findOneArgs)\n\n if (!result) {\n if (!disableErrors) {\n throw new NotFound(req.t)\n }\n\n return null\n }\n\n // /////////////////////////////////////\n // Replace document with draft if available\n // /////////////////////////////////////\n\n if (collectionConfig.versions?.drafts && draftEnabled) {\n result = await replaceWithDraftIfAvailable({\n accessResult,\n doc: result,\n entity: collectionConfig,\n entityType: 'collection',\n overrideAccess,\n req,\n })\n }\n\n // /////////////////////////////////////\n // beforeRead - Collection\n // /////////////////////////////////////\n\n await collectionConfig.hooks.beforeRead.reduce(async (priorHook, hook) => {\n await priorHook\n\n result =\n (await hook({\n collection: collectionConfig,\n context: req.context,\n doc: result,\n query: findOneArgs.where,\n req,\n })) || result\n }, Promise.resolve())\n\n // /////////////////////////////////////\n // afterRead - Fields\n // /////////////////////////////////////\n\n result = await afterRead({\n collection: collectionConfig,\n context: req.context,\n currentDepth,\n depth,\n doc: result,\n draft: draftEnabled,\n fallbackLocale,\n global: null,\n locale,\n overrideAccess,\n req,\n showHiddenFields,\n })\n\n // /////////////////////////////////////\n // afterRead - Collection\n // /////////////////////////////////////\n\n await collectionConfig.hooks.afterRead.reduce(async (priorHook, hook) => {\n await priorHook\n\n result =\n (await hook({\n collection: collectionConfig,\n context: req.context,\n doc: result,\n query: findOneArgs.where,\n req,\n })) || result\n }, Promise.resolve())\n\n // /////////////////////////////////////\n // afterOperation - Collection\n // /////////////////////////////////////\n\n result = await buildAfterOperation({\n args,\n collection: collectionConfig,\n operation: 'findByID',\n result,\n })\n\n // /////////////////////////////////////\n // Return results\n // /////////////////////////////////////\n\n if (shouldCommit) await commitTransaction(req)\n\n return result\n } catch (error: unknown) {\n await killTransaction(args.req)\n throw error\n }\n}\n"],"names":["executeAccess","combineQueries","NotFound","afterRead","commitTransaction","initTransaction","killTransaction","replaceWithDraftIfAvailable","buildAfterOperation","findByIDOperation","incomingArgs","args","shouldCommit","req","collection","config","hooks","beforeOperation","reduce","priorHook","hook","context","operation","Promise","resolve","id","collectionConfig","currentDepth","depth","disableErrors","draft","draftEnabled","overrideAccess","fallbackLocale","locale","t","showHiddenFields","accessResult","access","read","findOneArgs","slug","transactionID","where","equals","and","result","payload","db","findOne","versions","drafts","doc","entity","entityType","beforeRead","query","global","error"],"mappings":"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"}
@@ -11,5 +11,5 @@ export type Arguments = {
11
11
  req: PayloadRequestWithData;
12
12
  showHiddenFields?: boolean;
13
13
  };
14
- export declare const findVersionByIDOperation: <T extends TypeWithID = any>(args: Arguments) => Promise<TypeWithVersion<T>>;
14
+ export declare const findVersionByIDOperation: <TData extends TypeWithID = any>(args: Arguments) => Promise<TypeWithVersion<TData>>;
15
15
  //# sourceMappingURL=findVersionByID.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"findVersionByID.d.ts","sourceRoot":"","sources":["../../../src/collections/operations/findVersionByID.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAA;AAClE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAA;AAC9D,OAAO,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAA;AAUhE,MAAM,MAAM,SAAS,GAAG;IACtB,UAAU,EAAE,UAAU,CAAA;IACtB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,EAAE,EAAE,MAAM,GAAG,MAAM,CAAA;IACnB,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,GAAG,EAAE,sBAAsB,CAAA;IAC3B,gBAAgB,CAAC,EAAE,OAAO,CAAA;CAC3B,CAAA;AAED,eAAO,MAAM,wBAAwB,qCAC7B,SAAS,KACd,QAAQ,gBAAgB,CAAC,CAAC,CA2H5B,CAAA"}
1
+ {"version":3,"file":"findVersionByID.d.ts","sourceRoot":"","sources":["../../../src/collections/operations/findVersionByID.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAA;AAClE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAA;AAC9D,OAAO,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAA;AAUhE,MAAM,MAAM,SAAS,GAAG;IACtB,UAAU,EAAE,UAAU,CAAA;IACtB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,EAAE,EAAE,MAAM,GAAG,MAAM,CAAA;IACnB,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,GAAG,EAAE,sBAAsB,CAAA;IAC3B,gBAAgB,CAAC,EAAE,OAAO,CAAA;CAC3B,CAAA;AAED,eAAO,MAAM,wBAAwB,GAAU,KAAK,SAAS,UAAU,cAC/D,SAAS,KACd,OAAO,CAAC,eAAe,CAAC,KAAK,CAAC,CA2HhC,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/collections/operations/findVersionByID.ts"],"sourcesContent":["/* eslint-disable no-underscore-dangle */\nimport httpStatus from 'http-status'\n\nimport type { PayloadRequestWithData } from '../../types/index.js'\nimport type { TypeWithVersion } from '../../versions/types.js'\nimport type { Collection, TypeWithID } from '../config/types.js'\n\nimport executeAccess from '../../auth/executeAccess.js'\nimport { combineQueries } from '../../database/combineQueries.js'\nimport { APIError, Forbidden, NotFound } from '../../errors/index.js'\nimport { afterRead } from '../../fields/hooks/afterRead/index.js'\nimport { commitTransaction } from '../../utilities/commitTransaction.js'\nimport { initTransaction } from '../../utilities/initTransaction.js'\nimport { killTransaction } from '../../utilities/killTransaction.js'\n\nexport type Arguments = {\n collection: Collection\n currentDepth?: number\n depth?: number\n disableErrors?: boolean\n id: number | string\n overrideAccess?: boolean\n req: PayloadRequestWithData\n showHiddenFields?: boolean\n}\n\nexport const findVersionByIDOperation = async <T extends TypeWithID = any>(\n args: Arguments,\n): Promise<TypeWithVersion<T>> => {\n const {\n id,\n collection: { config: collectionConfig },\n currentDepth,\n depth,\n disableErrors,\n overrideAccess,\n req: { fallbackLocale, locale, payload },\n req,\n showHiddenFields,\n } = args\n\n if (!id) {\n throw new APIError('Missing ID of version.', httpStatus.BAD_REQUEST)\n }\n\n try {\n const shouldCommit = await initTransaction(req)\n\n // /////////////////////////////////////\n // Access\n // /////////////////////////////////////\n\n const accessResults = !overrideAccess\n ? await executeAccess({ id, disableErrors, req }, collectionConfig.access.readVersions)\n : true\n\n // If errors are disabled, and access returns false, return null\n if (accessResults === false) return null\n\n const hasWhereAccess = typeof accessResults === 'object'\n\n const fullWhere = combineQueries({ id: { equals: id } }, accessResults)\n\n // /////////////////////////////////////\n // Find by ID\n // /////////////////////////////////////\n\n const versionsQuery = await payload.db.findVersions<T>({\n collection: collectionConfig.slug,\n limit: 1,\n locale,\n pagination: false,\n req,\n where: fullWhere,\n })\n\n const result = versionsQuery.docs[0]\n\n if (!result) {\n if (!disableErrors) {\n if (!hasWhereAccess) throw new NotFound(req.t)\n if (hasWhereAccess) throw new Forbidden(req.t)\n }\n\n return null\n }\n\n // /////////////////////////////////////\n // beforeRead - Collection\n // /////////////////////////////////////\n\n await collectionConfig.hooks.beforeRead.reduce(async (priorHook, hook) => {\n await priorHook\n\n result.version =\n (await hook({\n collection: collectionConfig,\n context: req.context,\n doc: result.version,\n query: fullWhere,\n req,\n })) || result.version\n }, Promise.resolve())\n\n // /////////////////////////////////////\n // afterRead - Fields\n // /////////////////////////////////////\n\n result.version = await afterRead({\n collection: collectionConfig,\n context: req.context,\n currentDepth,\n depth,\n doc: result.version,\n draft: undefined,\n fallbackLocale,\n global: null,\n locale,\n overrideAccess,\n req,\n showHiddenFields,\n })\n\n // /////////////////////////////////////\n // afterRead - Collection\n // /////////////////////////////////////\n\n await collectionConfig.hooks.afterRead.reduce(async (priorHook, hook) => {\n await priorHook\n\n result.version =\n (await hook({\n collection: collectionConfig,\n context: req.context,\n doc: result.version,\n query: fullWhere,\n req,\n })) || result.version\n }, Promise.resolve())\n\n // /////////////////////////////////////\n // Return results\n // /////////////////////////////////////\n\n if (shouldCommit) await commitTransaction(req)\n\n return result\n } catch (error: unknown) {\n await killTransaction(req)\n throw error\n }\n}\n"],"names":["httpStatus","executeAccess","combineQueries","APIError","Forbidden","NotFound","afterRead","commitTransaction","initTransaction","killTransaction","findVersionByIDOperation","args","id","collection","config","collectionConfig","currentDepth","depth","disableErrors","overrideAccess","req","fallbackLocale","locale","payload","showHiddenFields","BAD_REQUEST","shouldCommit","accessResults","access","readVersions","hasWhereAccess","fullWhere","equals","versionsQuery","db","findVersions","slug","limit","pagination","where","result","docs","t","hooks","beforeRead","reduce","priorHook","hook","version","context","doc","query","Promise","resolve","draft","undefined","global","error"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"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"}
1
+ {"version":3,"sources":["../../../src/collections/operations/findVersionByID.ts"],"sourcesContent":["/* eslint-disable no-underscore-dangle */\nimport httpStatus from 'http-status'\n\nimport type { PayloadRequestWithData } from '../../types/index.js'\nimport type { TypeWithVersion } from '../../versions/types.js'\nimport type { Collection, TypeWithID } from '../config/types.js'\n\nimport executeAccess from '../../auth/executeAccess.js'\nimport { combineQueries } from '../../database/combineQueries.js'\nimport { APIError, Forbidden, NotFound } from '../../errors/index.js'\nimport { afterRead } from '../../fields/hooks/afterRead/index.js'\nimport { commitTransaction } from '../../utilities/commitTransaction.js'\nimport { initTransaction } from '../../utilities/initTransaction.js'\nimport { killTransaction } from '../../utilities/killTransaction.js'\n\nexport type Arguments = {\n collection: Collection\n currentDepth?: number\n depth?: number\n disableErrors?: boolean\n id: number | string\n overrideAccess?: boolean\n req: PayloadRequestWithData\n showHiddenFields?: boolean\n}\n\nexport const findVersionByIDOperation = async <TData extends TypeWithID = any>(\n args: Arguments,\n): Promise<TypeWithVersion<TData>> => {\n const {\n id,\n collection: { config: collectionConfig },\n currentDepth,\n depth,\n disableErrors,\n overrideAccess,\n req: { fallbackLocale, locale, payload },\n req,\n showHiddenFields,\n } = args\n\n if (!id) {\n throw new APIError('Missing ID of version.', httpStatus.BAD_REQUEST)\n }\n\n try {\n const shouldCommit = await initTransaction(req)\n\n // /////////////////////////////////////\n // Access\n // /////////////////////////////////////\n\n const accessResults = !overrideAccess\n ? await executeAccess({ id, disableErrors, req }, collectionConfig.access.readVersions)\n : true\n\n // If errors are disabled, and access returns false, return null\n if (accessResults === false) return null\n\n const hasWhereAccess = typeof accessResults === 'object'\n\n const fullWhere = combineQueries({ id: { equals: id } }, accessResults)\n\n // /////////////////////////////////////\n // Find by ID\n // /////////////////////////////////////\n\n const versionsQuery = await payload.db.findVersions<TData>({\n collection: collectionConfig.slug,\n limit: 1,\n locale,\n pagination: false,\n req,\n where: fullWhere,\n })\n\n const result = versionsQuery.docs[0]\n\n if (!result) {\n if (!disableErrors) {\n if (!hasWhereAccess) throw new NotFound(req.t)\n if (hasWhereAccess) throw new Forbidden(req.t)\n }\n\n return null\n }\n\n // /////////////////////////////////////\n // beforeRead - Collection\n // /////////////////////////////////////\n\n await collectionConfig.hooks.beforeRead.reduce(async (priorHook, hook) => {\n await priorHook\n\n result.version =\n (await hook({\n collection: collectionConfig,\n context: req.context,\n doc: result.version,\n query: fullWhere,\n req,\n })) || result.version\n }, Promise.resolve())\n\n // /////////////////////////////////////\n // afterRead - Fields\n // /////////////////////////////////////\n\n result.version = await afterRead({\n collection: collectionConfig,\n context: req.context,\n currentDepth,\n depth,\n doc: result.version,\n draft: undefined,\n fallbackLocale,\n global: null,\n locale,\n overrideAccess,\n req,\n showHiddenFields,\n })\n\n // /////////////////////////////////////\n // afterRead - Collection\n // /////////////////////////////////////\n\n await collectionConfig.hooks.afterRead.reduce(async (priorHook, hook) => {\n await priorHook\n\n result.version =\n (await hook({\n collection: collectionConfig,\n context: req.context,\n doc: result.version,\n query: fullWhere,\n req,\n })) || result.version\n }, Promise.resolve())\n\n // /////////////////////////////////////\n // Return results\n // /////////////////////////////////////\n\n if (shouldCommit) await commitTransaction(req)\n\n return result\n } catch (error: unknown) {\n await killTransaction(req)\n throw error\n }\n}\n"],"names":["httpStatus","executeAccess","combineQueries","APIError","Forbidden","NotFound","afterRead","commitTransaction","initTransaction","killTransaction","findVersionByIDOperation","args","id","collection","config","collectionConfig","currentDepth","depth","disableErrors","overrideAccess","req","fallbackLocale","locale","payload","showHiddenFields","BAD_REQUEST","shouldCommit","accessResults","access","readVersions","hasWhereAccess","fullWhere","equals","versionsQuery","db","findVersions","slug","limit","pagination","where","result","docs","t","hooks","beforeRead","reduce","priorHook","hook","version","context","doc","query","Promise","resolve","draft","undefined","global","error"],"mappings":"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"}
@@ -14,5 +14,5 @@ export type Arguments = {
14
14
  sort?: string;
15
15
  where?: Where;
16
16
  };
17
- export declare const findVersionsOperation: <T extends TypeWithVersion<T>>(args: Arguments) => Promise<PaginatedDocs<T>>;
17
+ export declare const findVersionsOperation: <TData extends TypeWithVersion<TData>>(args: Arguments) => Promise<PaginatedDocs<TData>>;
18
18
  //# sourceMappingURL=findVersions.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"findVersions.d.ts","sourceRoot":"","sources":["../../../src/collections/operations/findVersions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAA;AAC5D,OAAO,KAAK,EAAE,sBAAsB,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAA;AACzE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAA;AAC9D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAA;AAYpD,MAAM,MAAM,SAAS,GAAG;IACtB,UAAU,EAAE,UAAU,CAAA;IACtB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,GAAG,CAAC,EAAE,sBAAsB,CAAA;IAC5B,gBAAgB,CAAC,EAAE,OAAO,CAAA;IAC1B,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,KAAK,CAAC,EAAE,KAAK,CAAA;CACd,CAAA;AAED,eAAO,MAAM,qBAAqB,uCAC1B,SAAS,KACd,QAAQ,cAAc,CAAC,CAAC,CA0J1B,CAAA"}
1
+ {"version":3,"file":"findVersions.d.ts","sourceRoot":"","sources":["../../../src/collections/operations/findVersions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAA;AAC5D,OAAO,KAAK,EAAE,sBAAsB,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAA;AACzE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAA;AAC9D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAA;AAYpD,MAAM,MAAM,SAAS,GAAG;IACtB,UAAU,EAAE,UAAU,CAAA;IACtB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,GAAG,CAAC,EAAE,sBAAsB,CAAA;IAC5B,gBAAgB,CAAC,EAAE,OAAO,CAAA;IAC1B,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,KAAK,CAAC,EAAE,KAAK,CAAA;CACd,CAAA;AAED,eAAO,MAAM,qBAAqB,GAAU,KAAK,SAAS,eAAe,CAAC,KAAK,CAAC,QACxE,SAAS,KACd,OAAO,CAAC,aAAa,CAAC,KAAK,CAAC,CA0J9B,CAAA"}