payload 3.0.0-beta.17 → 3.0.0-beta.19

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 (468) hide show
  1. package/dist/admin/RichText.d.ts +2 -2
  2. package/dist/admin/RichText.d.ts.map +1 -1
  3. package/dist/admin/RichText.js.map +1 -1
  4. package/dist/admin/views/types.d.ts +2 -2
  5. package/dist/admin/views/types.d.ts.map +1 -1
  6. package/dist/admin/views/types.js.map +1 -1
  7. package/dist/auth/defaultAccess.d.ts +2 -2
  8. package/dist/auth/defaultAccess.d.ts.map +1 -1
  9. package/dist/auth/defaultAccess.js.map +1 -1
  10. package/dist/auth/executeAccess.d.ts +2 -2
  11. package/dist/auth/executeAccess.d.ts.map +1 -1
  12. package/dist/auth/executeAccess.js.map +1 -1
  13. package/dist/auth/getAccessResults.d.ts +2 -2
  14. package/dist/auth/getAccessResults.d.ts.map +1 -1
  15. package/dist/auth/getAccessResults.js.map +1 -1
  16. package/dist/auth/getFieldsToSign.d.ts +2 -2
  17. package/dist/auth/getFieldsToSign.d.ts.map +1 -1
  18. package/dist/auth/getFieldsToSign.js.map +1 -1
  19. package/dist/auth/operations/access.d.ts +2 -2
  20. package/dist/auth/operations/access.d.ts.map +1 -1
  21. package/dist/auth/operations/access.js.map +1 -1
  22. package/dist/auth/operations/auth.d.ts +2 -2
  23. package/dist/auth/operations/auth.d.ts.map +1 -1
  24. package/dist/auth/operations/auth.js.map +1 -1
  25. package/dist/auth/operations/forgotPassword.d.ts +2 -2
  26. package/dist/auth/operations/forgotPassword.d.ts.map +1 -1
  27. package/dist/auth/operations/forgotPassword.js.map +1 -1
  28. package/dist/auth/operations/init.d.ts +2 -2
  29. package/dist/auth/operations/init.d.ts.map +1 -1
  30. package/dist/auth/operations/init.js.map +1 -1
  31. package/dist/auth/operations/local/auth.js.map +1 -1
  32. package/dist/auth/operations/local/forgotPassword.d.ts +2 -2
  33. package/dist/auth/operations/local/forgotPassword.d.ts.map +1 -1
  34. package/dist/auth/operations/local/forgotPassword.js.map +1 -1
  35. package/dist/auth/operations/local/login.d.ts +2 -2
  36. package/dist/auth/operations/local/login.d.ts.map +1 -1
  37. package/dist/auth/operations/local/login.js.map +1 -1
  38. package/dist/auth/operations/local/resetPassword.d.ts +2 -2
  39. package/dist/auth/operations/local/resetPassword.d.ts.map +1 -1
  40. package/dist/auth/operations/local/resetPassword.js.map +1 -1
  41. package/dist/auth/operations/local/unlock.d.ts +2 -2
  42. package/dist/auth/operations/local/unlock.d.ts.map +1 -1
  43. package/dist/auth/operations/local/unlock.js.map +1 -1
  44. package/dist/auth/operations/local/verifyEmail.d.ts +2 -2
  45. package/dist/auth/operations/local/verifyEmail.d.ts.map +1 -1
  46. package/dist/auth/operations/local/verifyEmail.js.map +1 -1
  47. package/dist/auth/operations/login.d.ts +2 -2
  48. package/dist/auth/operations/login.d.ts.map +1 -1
  49. package/dist/auth/operations/login.js.map +1 -1
  50. package/dist/auth/operations/logout.d.ts +2 -2
  51. package/dist/auth/operations/logout.d.ts.map +1 -1
  52. package/dist/auth/operations/logout.js.map +1 -1
  53. package/dist/auth/operations/me.d.ts +2 -2
  54. package/dist/auth/operations/me.d.ts.map +1 -1
  55. package/dist/auth/operations/me.js.map +1 -1
  56. package/dist/auth/operations/refresh.d.ts +2 -2
  57. package/dist/auth/operations/refresh.d.ts.map +1 -1
  58. package/dist/auth/operations/refresh.js.map +1 -1
  59. package/dist/auth/operations/registerFirstUser.d.ts +2 -2
  60. package/dist/auth/operations/registerFirstUser.d.ts.map +1 -1
  61. package/dist/auth/operations/registerFirstUser.js.map +1 -1
  62. package/dist/auth/operations/resetPassword.d.ts +2 -2
  63. package/dist/auth/operations/resetPassword.d.ts.map +1 -1
  64. package/dist/auth/operations/resetPassword.js.map +1 -1
  65. package/dist/auth/operations/unlock.d.ts +2 -2
  66. package/dist/auth/operations/unlock.d.ts.map +1 -1
  67. package/dist/auth/operations/unlock.js.map +1 -1
  68. package/dist/auth/operations/verifyEmail.d.ts +2 -2
  69. package/dist/auth/operations/verifyEmail.d.ts.map +1 -1
  70. package/dist/auth/operations/verifyEmail.js.map +1 -1
  71. package/dist/auth/sendVerificationEmail.d.ts +2 -2
  72. package/dist/auth/sendVerificationEmail.d.ts.map +1 -1
  73. package/dist/auth/sendVerificationEmail.js.map +1 -1
  74. package/dist/auth/strategies/local/incrementLoginAttempts.d.ts +2 -2
  75. package/dist/auth/strategies/local/incrementLoginAttempts.d.ts.map +1 -1
  76. package/dist/auth/strategies/local/incrementLoginAttempts.js.map +1 -1
  77. package/dist/auth/strategies/local/register.d.ts +2 -2
  78. package/dist/auth/strategies/local/register.d.ts.map +1 -1
  79. package/dist/auth/strategies/local/register.js.map +1 -1
  80. package/dist/auth/strategies/local/resetLoginAttempts.d.ts +2 -2
  81. package/dist/auth/strategies/local/resetLoginAttempts.d.ts.map +1 -1
  82. package/dist/auth/strategies/local/resetLoginAttempts.js.map +1 -1
  83. package/dist/auth/types.d.ts +5 -5
  84. package/dist/auth/types.d.ts.map +1 -1
  85. package/dist/auth/types.js.map +1 -1
  86. package/dist/collections/config/client.d.ts +1 -1
  87. package/dist/collections/config/defaults.d.ts +5 -5
  88. package/dist/collections/config/sanitize.js +1 -1
  89. package/dist/collections/config/sanitize.js.map +1 -1
  90. package/dist/collections/config/types.d.ts +15 -15
  91. package/dist/collections/config/types.d.ts.map +1 -1
  92. package/dist/collections/config/types.js.map +1 -1
  93. package/dist/collections/dataloader.d.ts.map +1 -1
  94. package/dist/collections/dataloader.js +1 -1
  95. package/dist/collections/dataloader.js.map +1 -1
  96. package/dist/collections/operations/count.d.ts +2 -2
  97. package/dist/collections/operations/count.d.ts.map +1 -1
  98. package/dist/collections/operations/count.js.map +1 -1
  99. package/dist/collections/operations/create.d.ts +2 -2
  100. package/dist/collections/operations/create.d.ts.map +1 -1
  101. package/dist/collections/operations/create.js.map +1 -1
  102. package/dist/collections/operations/delete.d.ts +2 -2
  103. package/dist/collections/operations/delete.d.ts.map +1 -1
  104. package/dist/collections/operations/delete.js.map +1 -1
  105. package/dist/collections/operations/deleteByID.d.ts +2 -2
  106. package/dist/collections/operations/deleteByID.d.ts.map +1 -1
  107. package/dist/collections/operations/deleteByID.js.map +1 -1
  108. package/dist/collections/operations/docAccess.d.ts +2 -2
  109. package/dist/collections/operations/docAccess.d.ts.map +1 -1
  110. package/dist/collections/operations/docAccess.js.map +1 -1
  111. package/dist/collections/operations/duplicate.d.ts +2 -2
  112. package/dist/collections/operations/duplicate.d.ts.map +1 -1
  113. package/dist/collections/operations/duplicate.js.map +1 -1
  114. package/dist/collections/operations/find.d.ts +2 -2
  115. package/dist/collections/operations/find.d.ts.map +1 -1
  116. package/dist/collections/operations/find.js.map +1 -1
  117. package/dist/collections/operations/findByID.d.ts +2 -2
  118. package/dist/collections/operations/findByID.d.ts.map +1 -1
  119. package/dist/collections/operations/findByID.js.map +1 -1
  120. package/dist/collections/operations/findVersionByID.d.ts +2 -2
  121. package/dist/collections/operations/findVersionByID.d.ts.map +1 -1
  122. package/dist/collections/operations/findVersionByID.js.map +1 -1
  123. package/dist/collections/operations/findVersions.d.ts +2 -2
  124. package/dist/collections/operations/findVersions.d.ts.map +1 -1
  125. package/dist/collections/operations/findVersions.js.map +1 -1
  126. package/dist/collections/operations/local/count.d.ts +2 -2
  127. package/dist/collections/operations/local/count.d.ts.map +1 -1
  128. package/dist/collections/operations/local/count.js.map +1 -1
  129. package/dist/collections/operations/local/create.d.ts +2 -2
  130. package/dist/collections/operations/local/create.d.ts.map +1 -1
  131. package/dist/collections/operations/local/create.js.map +1 -1
  132. package/dist/collections/operations/local/delete.d.ts +2 -2
  133. package/dist/collections/operations/local/delete.d.ts.map +1 -1
  134. package/dist/collections/operations/local/delete.js.map +1 -1
  135. package/dist/collections/operations/local/duplicate.d.ts +2 -2
  136. package/dist/collections/operations/local/duplicate.d.ts.map +1 -1
  137. package/dist/collections/operations/local/duplicate.js.map +1 -1
  138. package/dist/collections/operations/local/find.d.ts +2 -2
  139. package/dist/collections/operations/local/find.d.ts.map +1 -1
  140. package/dist/collections/operations/local/find.js.map +1 -1
  141. package/dist/collections/operations/local/findByID.d.ts +2 -2
  142. package/dist/collections/operations/local/findByID.d.ts.map +1 -1
  143. package/dist/collections/operations/local/findByID.js.map +1 -1
  144. package/dist/collections/operations/local/findVersionByID.d.ts +2 -2
  145. package/dist/collections/operations/local/findVersionByID.d.ts.map +1 -1
  146. package/dist/collections/operations/local/findVersionByID.js.map +1 -1
  147. package/dist/collections/operations/local/findVersions.d.ts +2 -2
  148. package/dist/collections/operations/local/findVersions.d.ts.map +1 -1
  149. package/dist/collections/operations/local/findVersions.js.map +1 -1
  150. package/dist/collections/operations/local/restoreVersion.d.ts +2 -2
  151. package/dist/collections/operations/local/restoreVersion.d.ts.map +1 -1
  152. package/dist/collections/operations/local/restoreVersion.js.map +1 -1
  153. package/dist/collections/operations/local/update.d.ts +2 -2
  154. package/dist/collections/operations/local/update.d.ts.map +1 -1
  155. package/dist/collections/operations/local/update.js.map +1 -1
  156. package/dist/collections/operations/restoreVersion.d.ts +2 -2
  157. package/dist/collections/operations/restoreVersion.d.ts.map +1 -1
  158. package/dist/collections/operations/restoreVersion.js.map +1 -1
  159. package/dist/collections/operations/update.d.ts +2 -2
  160. package/dist/collections/operations/update.d.ts.map +1 -1
  161. package/dist/collections/operations/update.js.map +1 -1
  162. package/dist/collections/operations/updateByID.d.ts +2 -2
  163. package/dist/collections/operations/updateByID.d.ts.map +1 -1
  164. package/dist/collections/operations/updateByID.js.map +1 -1
  165. package/dist/collections/operations/utils.d.ts +2 -2
  166. package/dist/collections/operations/utils.d.ts.map +1 -1
  167. package/dist/collections/operations/utils.js.map +1 -1
  168. package/dist/config/types.d.ts +3 -3
  169. package/dist/config/types.d.ts.map +1 -1
  170. package/dist/config/types.js.map +1 -1
  171. package/dist/database/migrations/migrate.js.map +1 -1
  172. package/dist/database/migrations/migrateDown.js.map +1 -1
  173. package/dist/database/migrations/migrateRefresh.js.map +1 -1
  174. package/dist/database/migrations/migrateReset.js.map +1 -1
  175. package/dist/database/queryValidation/validateQueryPaths.d.ts +2 -2
  176. package/dist/database/queryValidation/validateQueryPaths.d.ts.map +1 -1
  177. package/dist/database/queryValidation/validateQueryPaths.js +1 -1
  178. package/dist/database/queryValidation/validateQueryPaths.js.map +1 -1
  179. package/dist/database/queryValidation/validateSearchParams.d.ts +2 -2
  180. package/dist/database/queryValidation/validateSearchParams.d.ts.map +1 -1
  181. package/dist/database/queryValidation/validateSearchParams.js.map +1 -1
  182. package/dist/database/types.d.ts +20 -20
  183. package/dist/database/types.d.ts.map +1 -1
  184. package/dist/database/types.js.map +1 -1
  185. package/dist/errors/APIError.d.ts +2 -2
  186. package/dist/errors/APIError.d.ts.map +1 -1
  187. package/dist/errors/APIError.js +1 -2
  188. package/dist/errors/APIError.js.map +1 -1
  189. package/dist/errors/AuthenticationError.d.ts +2 -3
  190. package/dist/errors/AuthenticationError.d.ts.map +1 -1
  191. package/dist/errors/AuthenticationError.js +2 -3
  192. package/dist/errors/AuthenticationError.js.map +1 -1
  193. package/dist/errors/DuplicateCollection.d.ts +2 -3
  194. package/dist/errors/DuplicateCollection.d.ts.map +1 -1
  195. package/dist/errors/DuplicateCollection.js +2 -3
  196. package/dist/errors/DuplicateCollection.js.map +1 -1
  197. package/dist/errors/DuplicateFieldName.d.ts +2 -3
  198. package/dist/errors/DuplicateFieldName.d.ts.map +1 -1
  199. package/dist/errors/DuplicateFieldName.js +2 -3
  200. package/dist/errors/DuplicateFieldName.js.map +1 -1
  201. package/dist/errors/DuplicateGlobal.d.ts +2 -3
  202. package/dist/errors/DuplicateGlobal.d.ts.map +1 -1
  203. package/dist/errors/DuplicateGlobal.js +2 -3
  204. package/dist/errors/DuplicateGlobal.js.map +1 -1
  205. package/dist/errors/ErrorDeletingFile.d.ts +2 -3
  206. package/dist/errors/ErrorDeletingFile.d.ts.map +1 -1
  207. package/dist/errors/ErrorDeletingFile.js +2 -3
  208. package/dist/errors/ErrorDeletingFile.js.map +1 -1
  209. package/dist/errors/FileRetrievalError.d.ts +6 -0
  210. package/dist/errors/FileRetrievalError.d.ts.map +1 -0
  211. package/dist/errors/FileRetrievalError.js +13 -0
  212. package/dist/errors/FileRetrievalError.js.map +1 -0
  213. package/dist/errors/FileUploadError.d.ts +2 -3
  214. package/dist/errors/FileUploadError.d.ts.map +1 -1
  215. package/dist/errors/FileUploadError.js +2 -3
  216. package/dist/errors/FileUploadError.js.map +1 -1
  217. package/dist/errors/Forbidden.d.ts +2 -3
  218. package/dist/errors/Forbidden.d.ts.map +1 -1
  219. package/dist/errors/Forbidden.js +2 -3
  220. package/dist/errors/Forbidden.js.map +1 -1
  221. package/dist/errors/InvalidConfiguration.d.ts +2 -3
  222. package/dist/errors/InvalidConfiguration.d.ts.map +1 -1
  223. package/dist/errors/InvalidConfiguration.js +2 -3
  224. package/dist/errors/InvalidConfiguration.js.map +1 -1
  225. package/dist/errors/InvalidFieldName.d.ts +2 -3
  226. package/dist/errors/InvalidFieldName.d.ts.map +1 -1
  227. package/dist/errors/InvalidFieldName.js +2 -3
  228. package/dist/errors/InvalidFieldName.js.map +1 -1
  229. package/dist/errors/InvalidFieldRelationship.d.ts +2 -3
  230. package/dist/errors/InvalidFieldRelationship.d.ts.map +1 -1
  231. package/dist/errors/InvalidFieldRelationship.js +2 -3
  232. package/dist/errors/InvalidFieldRelationship.js.map +1 -1
  233. package/dist/errors/InvalidSchema.d.ts +2 -3
  234. package/dist/errors/InvalidSchema.d.ts.map +1 -1
  235. package/dist/errors/InvalidSchema.js +2 -3
  236. package/dist/errors/InvalidSchema.js.map +1 -1
  237. package/dist/errors/LockedAuth.d.ts +2 -3
  238. package/dist/errors/LockedAuth.d.ts.map +1 -1
  239. package/dist/errors/LockedAuth.js +2 -3
  240. package/dist/errors/LockedAuth.js.map +1 -1
  241. package/dist/errors/MissingCollectionLabel.d.ts +2 -3
  242. package/dist/errors/MissingCollectionLabel.d.ts.map +1 -1
  243. package/dist/errors/MissingCollectionLabel.js +2 -3
  244. package/dist/errors/MissingCollectionLabel.js.map +1 -1
  245. package/dist/errors/MissingEditorProp.d.ts +2 -3
  246. package/dist/errors/MissingEditorProp.d.ts.map +1 -1
  247. package/dist/errors/MissingEditorProp.js +2 -3
  248. package/dist/errors/MissingEditorProp.js.map +1 -1
  249. package/dist/errors/MissingFieldInputOptions.d.ts +2 -3
  250. package/dist/errors/MissingFieldInputOptions.d.ts.map +1 -1
  251. package/dist/errors/MissingFieldInputOptions.js +2 -3
  252. package/dist/errors/MissingFieldInputOptions.js.map +1 -1
  253. package/dist/errors/MissingFieldType.d.ts +2 -3
  254. package/dist/errors/MissingFieldType.d.ts.map +1 -1
  255. package/dist/errors/MissingFieldType.js +2 -3
  256. package/dist/errors/MissingFieldType.js.map +1 -1
  257. package/dist/errors/MissingFile.d.ts +2 -3
  258. package/dist/errors/MissingFile.d.ts.map +1 -1
  259. package/dist/errors/MissingFile.js +2 -3
  260. package/dist/errors/MissingFile.js.map +1 -1
  261. package/dist/errors/NotFound.d.ts +2 -3
  262. package/dist/errors/NotFound.d.ts.map +1 -1
  263. package/dist/errors/NotFound.js +2 -3
  264. package/dist/errors/NotFound.js.map +1 -1
  265. package/dist/errors/QueryError.d.ts +2 -3
  266. package/dist/errors/QueryError.d.ts.map +1 -1
  267. package/dist/errors/QueryError.js +2 -3
  268. package/dist/errors/QueryError.js.map +1 -1
  269. package/dist/errors/TimestampsRequired.d.ts +2 -3
  270. package/dist/errors/TimestampsRequired.d.ts.map +1 -1
  271. package/dist/errors/TimestampsRequired.js +2 -3
  272. package/dist/errors/TimestampsRequired.js.map +1 -1
  273. package/dist/errors/UnathorizedError.d.ts +2 -3
  274. package/dist/errors/UnathorizedError.d.ts.map +1 -1
  275. package/dist/errors/UnathorizedError.js +2 -3
  276. package/dist/errors/UnathorizedError.js.map +1 -1
  277. package/dist/errors/ValidationError.d.ts +2 -3
  278. package/dist/errors/ValidationError.d.ts.map +1 -1
  279. package/dist/errors/ValidationError.js +2 -3
  280. package/dist/errors/ValidationError.js.map +1 -1
  281. package/dist/errors/index.d.ts +20 -19
  282. package/dist/errors/index.d.ts.map +1 -1
  283. package/dist/errors/index.js +20 -19
  284. package/dist/errors/index.js.map +1 -1
  285. package/dist/fields/config/sanitize.js +1 -1
  286. package/dist/fields/config/sanitize.js.map +1 -1
  287. package/dist/fields/config/types.d.ts +6 -6
  288. package/dist/fields/config/types.d.ts.map +1 -1
  289. package/dist/fields/config/types.js.map +1 -1
  290. package/dist/fields/getDefaultValue.d.ts +2 -2
  291. package/dist/fields/getDefaultValue.d.ts.map +1 -1
  292. package/dist/fields/getDefaultValue.js.map +1 -1
  293. package/dist/fields/hooks/afterChange/index.d.ts +2 -2
  294. package/dist/fields/hooks/afterChange/index.d.ts.map +1 -1
  295. package/dist/fields/hooks/afterChange/index.js.map +1 -1
  296. package/dist/fields/hooks/afterChange/promise.d.ts +2 -2
  297. package/dist/fields/hooks/afterChange/promise.d.ts.map +1 -1
  298. package/dist/fields/hooks/afterChange/promise.js.map +1 -1
  299. package/dist/fields/hooks/afterChange/traverseFields.d.ts +2 -2
  300. package/dist/fields/hooks/afterChange/traverseFields.d.ts.map +1 -1
  301. package/dist/fields/hooks/afterChange/traverseFields.js.map +1 -1
  302. package/dist/fields/hooks/afterRead/index.d.ts +2 -2
  303. package/dist/fields/hooks/afterRead/index.d.ts.map +1 -1
  304. package/dist/fields/hooks/afterRead/index.js.map +1 -1
  305. package/dist/fields/hooks/afterRead/promise.d.ts +2 -2
  306. package/dist/fields/hooks/afterRead/promise.d.ts.map +1 -1
  307. package/dist/fields/hooks/afterRead/promise.js.map +1 -1
  308. package/dist/fields/hooks/afterRead/relationshipPopulationPromise.d.ts +2 -2
  309. package/dist/fields/hooks/afterRead/relationshipPopulationPromise.d.ts.map +1 -1
  310. package/dist/fields/hooks/afterRead/relationshipPopulationPromise.js.map +1 -1
  311. package/dist/fields/hooks/afterRead/traverseFields.d.ts +2 -2
  312. package/dist/fields/hooks/afterRead/traverseFields.d.ts.map +1 -1
  313. package/dist/fields/hooks/afterRead/traverseFields.js.map +1 -1
  314. package/dist/fields/hooks/beforeChange/index.d.ts +2 -2
  315. package/dist/fields/hooks/beforeChange/index.d.ts.map +1 -1
  316. package/dist/fields/hooks/beforeChange/index.js.map +1 -1
  317. package/dist/fields/hooks/beforeChange/promise.d.ts +2 -2
  318. package/dist/fields/hooks/beforeChange/promise.d.ts.map +1 -1
  319. package/dist/fields/hooks/beforeChange/promise.js.map +1 -1
  320. package/dist/fields/hooks/beforeChange/traverseFields.d.ts +2 -2
  321. package/dist/fields/hooks/beforeChange/traverseFields.d.ts.map +1 -1
  322. package/dist/fields/hooks/beforeChange/traverseFields.js.map +1 -1
  323. package/dist/fields/hooks/beforeValidate/index.d.ts +2 -2
  324. package/dist/fields/hooks/beforeValidate/index.d.ts.map +1 -1
  325. package/dist/fields/hooks/beforeValidate/index.js.map +1 -1
  326. package/dist/fields/hooks/beforeValidate/promise.d.ts +2 -2
  327. package/dist/fields/hooks/beforeValidate/promise.d.ts.map +1 -1
  328. package/dist/fields/hooks/beforeValidate/promise.js.map +1 -1
  329. package/dist/fields/hooks/beforeValidate/traverseFields.d.ts +2 -2
  330. package/dist/fields/hooks/beforeValidate/traverseFields.d.ts.map +1 -1
  331. package/dist/fields/hooks/beforeValidate/traverseFields.js.map +1 -1
  332. package/dist/globals/config/types.d.ts +7 -7
  333. package/dist/globals/config/types.d.ts.map +1 -1
  334. package/dist/globals/config/types.js.map +1 -1
  335. package/dist/globals/operations/docAccess.d.ts +2 -2
  336. package/dist/globals/operations/docAccess.d.ts.map +1 -1
  337. package/dist/globals/operations/docAccess.js.map +1 -1
  338. package/dist/globals/operations/findOne.d.ts +2 -2
  339. package/dist/globals/operations/findOne.d.ts.map +1 -1
  340. package/dist/globals/operations/findOne.js.map +1 -1
  341. package/dist/globals/operations/findVersionByID.d.ts +2 -2
  342. package/dist/globals/operations/findVersionByID.d.ts.map +1 -1
  343. package/dist/globals/operations/findVersionByID.js.map +1 -1
  344. package/dist/globals/operations/findVersions.d.ts +2 -2
  345. package/dist/globals/operations/findVersions.d.ts.map +1 -1
  346. package/dist/globals/operations/findVersions.js.map +1 -1
  347. package/dist/globals/operations/local/findOne.d.ts +2 -2
  348. package/dist/globals/operations/local/findOne.d.ts.map +1 -1
  349. package/dist/globals/operations/local/findOne.js.map +1 -1
  350. package/dist/globals/operations/local/findVersionByID.d.ts +2 -2
  351. package/dist/globals/operations/local/findVersionByID.d.ts.map +1 -1
  352. package/dist/globals/operations/local/findVersionByID.js.map +1 -1
  353. package/dist/globals/operations/local/findVersions.d.ts +2 -2
  354. package/dist/globals/operations/local/findVersions.d.ts.map +1 -1
  355. package/dist/globals/operations/local/findVersions.js.map +1 -1
  356. package/dist/globals/operations/local/restoreVersion.d.ts +2 -2
  357. package/dist/globals/operations/local/restoreVersion.d.ts.map +1 -1
  358. package/dist/globals/operations/local/restoreVersion.js.map +1 -1
  359. package/dist/globals/operations/local/update.d.ts +2 -2
  360. package/dist/globals/operations/local/update.d.ts.map +1 -1
  361. package/dist/globals/operations/local/update.js.map +1 -1
  362. package/dist/globals/operations/restoreVersion.d.ts +2 -2
  363. package/dist/globals/operations/restoreVersion.d.ts.map +1 -1
  364. package/dist/globals/operations/restoreVersion.js.map +1 -1
  365. package/dist/globals/operations/update.d.ts +2 -2
  366. package/dist/globals/operations/update.d.ts.map +1 -1
  367. package/dist/globals/operations/update.js.map +1 -1
  368. package/dist/preferences/deleteUserPreferences.d.ts +2 -2
  369. package/dist/preferences/deleteUserPreferences.d.ts.map +1 -1
  370. package/dist/preferences/deleteUserPreferences.js.map +1 -1
  371. package/dist/preferences/operations/delete.js +2 -2
  372. package/dist/preferences/operations/delete.js.map +1 -1
  373. package/dist/preferences/operations/update.js +1 -1
  374. package/dist/preferences/operations/update.js.map +1 -1
  375. package/dist/preferences/requestHandlers/delete.d.ts.map +1 -1
  376. package/dist/preferences/requestHandlers/delete.js +9 -8
  377. package/dist/preferences/requestHandlers/delete.js.map +1 -1
  378. package/dist/preferences/requestHandlers/findOne.d.ts.map +1 -1
  379. package/dist/preferences/requestHandlers/findOne.js +9 -8
  380. package/dist/preferences/requestHandlers/findOne.js.map +1 -1
  381. package/dist/preferences/requestHandlers/update.d.ts.map +1 -1
  382. package/dist/preferences/requestHandlers/update.js +10 -10
  383. package/dist/preferences/requestHandlers/update.js.map +1 -1
  384. package/dist/preferences/types.d.ts +3 -3
  385. package/dist/preferences/types.d.ts.map +1 -1
  386. package/dist/preferences/types.js.map +1 -1
  387. package/dist/types/index.d.ts +15 -14
  388. package/dist/types/index.d.ts.map +1 -1
  389. package/dist/types/index.js.map +1 -1
  390. package/dist/uploads/deleteAssociatedFiles.d.ts +2 -2
  391. package/dist/uploads/deleteAssociatedFiles.d.ts.map +1 -1
  392. package/dist/uploads/deleteAssociatedFiles.js.map +1 -1
  393. package/dist/uploads/docWithFilenameExists.d.ts +2 -2
  394. package/dist/uploads/docWithFilenameExists.d.ts.map +1 -1
  395. package/dist/uploads/docWithFilenameExists.js.map +1 -1
  396. package/dist/uploads/generateFileData.d.ts +2 -2
  397. package/dist/uploads/generateFileData.d.ts.map +1 -1
  398. package/dist/uploads/generateFileData.js +2 -2
  399. package/dist/uploads/generateFileData.js.map +1 -1
  400. package/dist/uploads/getExternalFile.d.ts +2 -2
  401. package/dist/uploads/getExternalFile.d.ts.map +1 -1
  402. package/dist/uploads/getExternalFile.js +5 -2
  403. package/dist/uploads/getExternalFile.js.map +1 -1
  404. package/dist/uploads/getFileByPath.d.ts +2 -2
  405. package/dist/uploads/getFileByPath.d.ts.map +1 -1
  406. package/dist/uploads/getFileByPath.js.map +1 -1
  407. package/dist/uploads/getImageSize.d.ts +2 -2
  408. package/dist/uploads/getImageSize.d.ts.map +1 -1
  409. package/dist/uploads/getImageSize.js.map +1 -1
  410. package/dist/uploads/getSafeFilename.d.ts +2 -2
  411. package/dist/uploads/getSafeFilename.d.ts.map +1 -1
  412. package/dist/uploads/getSafeFilename.js.map +1 -1
  413. package/dist/uploads/imageResizer.d.ts +3 -3
  414. package/dist/uploads/imageResizer.d.ts.map +1 -1
  415. package/dist/uploads/imageResizer.js.map +1 -1
  416. package/dist/uploads/types.d.ts +2 -2
  417. package/dist/uploads/types.d.ts.map +1 -1
  418. package/dist/uploads/types.js.map +1 -1
  419. package/dist/uploads/unlinkTempFiles.d.ts +2 -2
  420. package/dist/uploads/unlinkTempFiles.d.ts.map +1 -1
  421. package/dist/uploads/unlinkTempFiles.js.map +1 -1
  422. package/dist/uploads/uploadFiles.d.ts +2 -2
  423. package/dist/uploads/uploadFiles.d.ts.map +1 -1
  424. package/dist/uploads/uploadFiles.js.map +1 -1
  425. package/dist/utilities/checkDuplicateCollections.js +1 -1
  426. package/dist/utilities/checkDuplicateCollections.js.map +1 -1
  427. package/dist/utilities/commitTransaction.d.ts +2 -2
  428. package/dist/utilities/commitTransaction.d.ts.map +1 -1
  429. package/dist/utilities/commitTransaction.js.map +1 -1
  430. package/dist/utilities/createLocalReq.d.ts +3 -3
  431. package/dist/utilities/createLocalReq.d.ts.map +1 -1
  432. package/dist/utilities/createLocalReq.js.map +1 -1
  433. package/dist/utilities/getEntityPolicies.d.ts +2 -2
  434. package/dist/utilities/getEntityPolicies.d.ts.map +1 -1
  435. package/dist/utilities/getEntityPolicies.js.map +1 -1
  436. package/dist/utilities/initTransaction.d.ts +2 -2
  437. package/dist/utilities/initTransaction.d.ts.map +1 -1
  438. package/dist/utilities/initTransaction.js.map +1 -1
  439. package/dist/utilities/isEntityHidden.d.ts +2 -2
  440. package/dist/utilities/isEntityHidden.d.ts.map +1 -1
  441. package/dist/utilities/isEntityHidden.js.map +1 -1
  442. package/dist/utilities/killTransaction.d.ts +2 -2
  443. package/dist/utilities/killTransaction.d.ts.map +1 -1
  444. package/dist/utilities/killTransaction.js.map +1 -1
  445. package/dist/utilities/parseCookies.js +1 -1
  446. package/dist/utilities/parseCookies.js.map +1 -1
  447. package/dist/utilities/telemetry/events/adminInit.d.ts +2 -2
  448. package/dist/utilities/telemetry/events/adminInit.d.ts.map +1 -1
  449. package/dist/utilities/telemetry/events/adminInit.js.map +1 -1
  450. package/dist/versions/deleteCollectionVersions.d.ts +2 -2
  451. package/dist/versions/deleteCollectionVersions.d.ts.map +1 -1
  452. package/dist/versions/deleteCollectionVersions.js.map +1 -1
  453. package/dist/versions/drafts/replaceWithDraftIfAvailable.d.ts +2 -2
  454. package/dist/versions/drafts/replaceWithDraftIfAvailable.d.ts.map +1 -1
  455. package/dist/versions/drafts/replaceWithDraftIfAvailable.js.map +1 -1
  456. package/dist/versions/enforceMaxVersions.d.ts +2 -2
  457. package/dist/versions/enforceMaxVersions.d.ts.map +1 -1
  458. package/dist/versions/enforceMaxVersions.js.map +1 -1
  459. package/dist/versions/getLatestCollectionVersion.d.ts +2 -2
  460. package/dist/versions/getLatestCollectionVersion.d.ts.map +1 -1
  461. package/dist/versions/getLatestCollectionVersion.js.map +1 -1
  462. package/dist/versions/getLatestGlobalVersion.d.ts +2 -2
  463. package/dist/versions/getLatestGlobalVersion.d.ts.map +1 -1
  464. package/dist/versions/getLatestGlobalVersion.js.map +1 -1
  465. package/dist/versions/saveVersion.d.ts +2 -2
  466. package/dist/versions/saveVersion.d.ts.map +1 -1
  467. package/dist/versions/saveVersion.js.map +1 -1
  468. package/package.json +66 -69
@@ -1 +1 @@
1
- {"version":3,"file":"incrementLoginAttempts.d.ts","sourceRoot":"","sources":["../../../../src/auth/strategies/local/incrementLoginAttempts.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,yBAAyB,EAAE,UAAU,EAAE,MAAM,sCAAsC,CAAA;AACjG,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAA;AAChD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAA;AAE7D,KAAK,IAAI,GAAG;IACV,UAAU,EAAE,yBAAyB,CAAA;IACrC,GAAG,EAAE,UAAU,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IACzC,OAAO,EAAE,OAAO,CAAA;IAChB,GAAG,EAAE,cAAc,CAAA;CACpB,CAAA;AAED,eAAO,MAAM,sBAAsB,uCAKhC,IAAI,KAAG,QAAQ,IAAI,CA0CrB,CAAA"}
1
+ {"version":3,"file":"incrementLoginAttempts.d.ts","sourceRoot":"","sources":["../../../../src/auth/strategies/local/incrementLoginAttempts.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,yBAAyB,EAAE,UAAU,EAAE,MAAM,sCAAsC,CAAA;AACjG,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAA;AAChD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAA;AAErE,KAAK,IAAI,GAAG;IACV,UAAU,EAAE,yBAAyB,CAAA;IACrC,GAAG,EAAE,UAAU,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IACzC,OAAO,EAAE,OAAO,CAAA;IAChB,GAAG,EAAE,sBAAsB,CAAA;CAC5B,CAAA;AAED,eAAO,MAAM,sBAAsB,uCAKhC,IAAI,KAAG,QAAQ,IAAI,CA0CrB,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/auth/strategies/local/incrementLoginAttempts.ts"],"sourcesContent":["import type { SanitizedCollectionConfig, TypeWithID } from '../../../collections/config/types.js'\nimport type { Payload } from '../../../index.js'\nimport type { PayloadRequest } from '../../../types/index.js'\n\ntype Args = {\n collection: SanitizedCollectionConfig\n doc: TypeWithID & Record<string, unknown>\n payload: Payload\n req: PayloadRequest\n}\n\nexport const incrementLoginAttempts = async ({\n collection,\n doc,\n payload,\n req,\n}: Args): Promise<void> => {\n const {\n auth: { lockTime, maxLoginAttempts },\n } = collection\n\n if ('lockUntil' in doc && typeof doc.lockUntil === 'string') {\n const lockUntil = new Date(doc.lockUntil).getTime()\n\n // Expired lock, restart count at 1\n if (lockUntil < Date.now()) {\n await payload.update({\n id: doc.id,\n collection: collection.slug,\n data: {\n lockUntil: null,\n loginAttempts: 1,\n },\n depth: 0,\n req,\n })\n }\n\n return\n }\n\n const data: Record<string, unknown> = {\n loginAttempts: Number(doc.loginAttempts) + 1,\n }\n\n // Lock the account if at max attempts and not already locked\n if (typeof doc.loginAttempts === 'number' && doc.loginAttempts + 1 >= maxLoginAttempts) {\n const lockUntil = new Date(Date.now() + lockTime)\n data.lockUntil = lockUntil\n }\n\n await payload.update({\n id: doc.id,\n collection: collection.slug,\n data,\n depth: 0,\n req,\n })\n}\n"],"names":["incrementLoginAttempts","collection","doc","payload","req","auth","lockTime","maxLoginAttempts","lockUntil","Date","getTime","now","update","id","slug","data","loginAttempts","depth","Number"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"AAWA,OAAO,MAAMA,yBAAyB,OAAO,EAC3CC,UAAU,EACVC,GAAG,EACHC,OAAO,EACPC,GAAG,EACE;IACL,MAAM,EACJC,MAAM,EAAEC,QAAQ,EAAEC,gBAAgB,EAAE,EACrC,GAAGN;IAEJ,IAAI,eAAeC,OAAO,OAAOA,IAAIM,SAAS,KAAK,UAAU;QAC3D,MAAMA,YAAY,IAAIC,KAAKP,IAAIM,SAAS,EAAEE,OAAO;QAEjD,mCAAmC;QACnC,IAAIF,YAAYC,KAAKE,GAAG,IAAI;YAC1B,MAAMR,QAAQS,MAAM,CAAC;gBACnBC,IAAIX,IAAIW,EAAE;gBACVZ,YAAYA,WAAWa,IAAI;gBAC3BC,MAAM;oBACJP,WAAW;oBACXQ,eAAe;gBACjB;gBACAC,OAAO;gBACPb;YACF;QACF;QAEA;IACF;IAEA,MAAMW,OAAgC;QACpCC,eAAeE,OAAOhB,IAAIc,aAAa,IAAI;IAC7C;IAEA,6DAA6D;IAC7D,IAAI,OAAOd,IAAIc,aAAa,KAAK,YAAYd,IAAIc,aAAa,GAAG,KAAKT,kBAAkB;QACtF,MAAMC,YAAY,IAAIC,KAAKA,KAAKE,GAAG,KAAKL;QACxCS,KAAKP,SAAS,GAAGA;IACnB;IAEA,MAAML,QAAQS,MAAM,CAAC;QACnBC,IAAIX,IAAIW,EAAE;QACVZ,YAAYA,WAAWa,IAAI;QAC3BC;QACAE,OAAO;QACPb;IACF;AACF,EAAC"}
1
+ {"version":3,"sources":["../../../../src/auth/strategies/local/incrementLoginAttempts.ts"],"sourcesContent":["import type { SanitizedCollectionConfig, TypeWithID } from '../../../collections/config/types.js'\nimport type { Payload } from '../../../index.js'\nimport type { PayloadRequestWithData } from '../../../types/index.js'\n\ntype Args = {\n collection: SanitizedCollectionConfig\n doc: TypeWithID & Record<string, unknown>\n payload: Payload\n req: PayloadRequestWithData\n}\n\nexport const incrementLoginAttempts = async ({\n collection,\n doc,\n payload,\n req,\n}: Args): Promise<void> => {\n const {\n auth: { lockTime, maxLoginAttempts },\n } = collection\n\n if ('lockUntil' in doc && typeof doc.lockUntil === 'string') {\n const lockUntil = new Date(doc.lockUntil).getTime()\n\n // Expired lock, restart count at 1\n if (lockUntil < Date.now()) {\n await payload.update({\n id: doc.id,\n collection: collection.slug,\n data: {\n lockUntil: null,\n loginAttempts: 1,\n },\n depth: 0,\n req,\n })\n }\n\n return\n }\n\n const data: Record<string, unknown> = {\n loginAttempts: Number(doc.loginAttempts) + 1,\n }\n\n // Lock the account if at max attempts and not already locked\n if (typeof doc.loginAttempts === 'number' && doc.loginAttempts + 1 >= maxLoginAttempts) {\n const lockUntil = new Date(Date.now() + lockTime)\n data.lockUntil = lockUntil\n }\n\n await payload.update({\n id: doc.id,\n collection: collection.slug,\n data,\n depth: 0,\n req,\n })\n}\n"],"names":["incrementLoginAttempts","collection","doc","payload","req","auth","lockTime","maxLoginAttempts","lockUntil","Date","getTime","now","update","id","slug","data","loginAttempts","depth","Number"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"AAWA,OAAO,MAAMA,yBAAyB,OAAO,EAC3CC,UAAU,EACVC,GAAG,EACHC,OAAO,EACPC,GAAG,EACE;IACL,MAAM,EACJC,MAAM,EAAEC,QAAQ,EAAEC,gBAAgB,EAAE,EACrC,GAAGN;IAEJ,IAAI,eAAeC,OAAO,OAAOA,IAAIM,SAAS,KAAK,UAAU;QAC3D,MAAMA,YAAY,IAAIC,KAAKP,IAAIM,SAAS,EAAEE,OAAO;QAEjD,mCAAmC;QACnC,IAAIF,YAAYC,KAAKE,GAAG,IAAI;YAC1B,MAAMR,QAAQS,MAAM,CAAC;gBACnBC,IAAIX,IAAIW,EAAE;gBACVZ,YAAYA,WAAWa,IAAI;gBAC3BC,MAAM;oBACJP,WAAW;oBACXQ,eAAe;gBACjB;gBACAC,OAAO;gBACPb;YACF;QACF;QAEA;IACF;IAEA,MAAMW,OAAgC;QACpCC,eAAeE,OAAOhB,IAAIc,aAAa,IAAI;IAC7C;IAEA,6DAA6D;IAC7D,IAAI,OAAOd,IAAIc,aAAa,KAAK,YAAYd,IAAIc,aAAa,GAAG,KAAKT,kBAAkB;QACtF,MAAMC,YAAY,IAAIC,KAAKA,KAAKE,GAAG,KAAKL;QACxCS,KAAKP,SAAS,GAAGA;IACnB;IAEA,MAAML,QAAQS,MAAM,CAAC;QACnBC,IAAIX,IAAIW,EAAE;QACVZ,YAAYA,WAAWa,IAAI;QAC3BC;QACAE,OAAO;QACPb;IACF;AACF,EAAC"}
@@ -1,12 +1,12 @@
1
1
  import type { SanitizedCollectionConfig } from '../../../collections/config/types.js';
2
2
  import type { Payload } from '../../../index.js';
3
- import type { PayloadRequest } from '../../../types/index.js';
3
+ import type { PayloadRequestWithData } from '../../../types/index.js';
4
4
  type Args = {
5
5
  collection: SanitizedCollectionConfig;
6
6
  doc: Record<string, unknown>;
7
7
  password: string;
8
8
  payload: Payload;
9
- req: PayloadRequest;
9
+ req: PayloadRequestWithData;
10
10
  };
11
11
  export declare const registerLocalStrategy: ({ collection, doc, password, payload, req, }: Args) => Promise<Record<string, unknown>>;
12
12
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"register.d.ts","sourceRoot":"","sources":["../../../../src/auth/strategies/local/register.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,sCAAsC,CAAA;AACrF,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAA;AAChD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAA;AAK7D,KAAK,IAAI,GAAG;IACV,UAAU,EAAE,yBAAyB,CAAA;IACrC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAC5B,QAAQ,EAAE,MAAM,CAAA;IAChB,OAAO,EAAE,OAAO,CAAA;IAChB,GAAG,EAAE,cAAc,CAAA;CACpB,CAAA;AAED,eAAO,MAAM,qBAAqB,iDAM/B,IAAI,KAAG,QAAQ,OAAO,MAAM,EAAE,OAAO,CAAC,CAkCxC,CAAA"}
1
+ {"version":3,"file":"register.d.ts","sourceRoot":"","sources":["../../../../src/auth/strategies/local/register.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,sCAAsC,CAAA;AACrF,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAA;AAChD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAA;AAKrE,KAAK,IAAI,GAAG;IACV,UAAU,EAAE,yBAAyB,CAAA;IACrC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAC5B,QAAQ,EAAE,MAAM,CAAA;IAChB,OAAO,EAAE,OAAO,CAAA;IAChB,GAAG,EAAE,sBAAsB,CAAA;CAC5B,CAAA;AAED,eAAO,MAAM,qBAAqB,iDAM/B,IAAI,KAAG,QAAQ,OAAO,MAAM,EAAE,OAAO,CAAC,CAkCxC,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/auth/strategies/local/register.ts"],"sourcesContent":["import type { SanitizedCollectionConfig } from '../../../collections/config/types.js'\nimport type { Payload } from '../../../index.js'\nimport type { PayloadRequest } from '../../../types/index.js'\n\nimport { ValidationError } from '../../../errors/index.js'\nimport { generatePasswordSaltHash } from './generatePasswordSaltHash.js'\n\ntype Args = {\n collection: SanitizedCollectionConfig\n doc: Record<string, unknown>\n password: string\n payload: Payload\n req: PayloadRequest\n}\n\nexport const registerLocalStrategy = async ({\n collection,\n doc,\n password,\n payload,\n req,\n}: Args): Promise<Record<string, unknown>> => {\n const existingUser = await payload.find({\n collection: collection.slug,\n depth: 0,\n limit: 1,\n pagination: false,\n req,\n where: {\n email: {\n equals: doc.email,\n },\n },\n })\n\n if (existingUser.docs.length > 0) {\n throw new ValidationError([\n { field: 'email', message: 'A user with the given email is already registered' },\n ])\n }\n\n const { hash, salt } = await generatePasswordSaltHash({ password })\n\n const sanitizedDoc = { ...doc }\n if (sanitizedDoc.password) delete sanitizedDoc.password\n\n return payload.db.create({\n collection: collection.slug,\n data: {\n ...sanitizedDoc,\n hash,\n salt,\n },\n req,\n })\n}\n"],"names":["ValidationError","generatePasswordSaltHash","registerLocalStrategy","collection","doc","password","payload","req","existingUser","find","slug","depth","limit","pagination","where","email","equals","docs","length","field","message","hash","salt","sanitizedDoc","db","create","data"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"AAIA,SAASA,eAAe,QAAQ,2BAA0B;AAC1D,SAASC,wBAAwB,QAAQ,gCAA+B;AAUxE,OAAO,MAAMC,wBAAwB,OAAO,EAC1CC,UAAU,EACVC,GAAG,EACHC,QAAQ,EACRC,OAAO,EACPC,GAAG,EACE;IACL,MAAMC,eAAe,MAAMF,QAAQG,IAAI,CAAC;QACtCN,YAAYA,WAAWO,IAAI;QAC3BC,OAAO;QACPC,OAAO;QACPC,YAAY;QACZN;QACAO,OAAO;YACLC,OAAO;gBACLC,QAAQZ,IAAIW,KAAK;YACnB;QACF;IACF;IAEA,IAAIP,aAAaS,IAAI,CAACC,MAAM,GAAG,GAAG;QAChC,MAAM,IAAIlB,gBAAgB;YACxB;gBAAEmB,OAAO;gBAASC,SAAS;YAAoD;SAChF;IACH;IAEA,MAAM,EAAEC,IAAI,EAAEC,IAAI,EAAE,GAAG,MAAMrB,yBAAyB;QAAEI;IAAS;IAEjE,MAAMkB,eAAe;QAAE,GAAGnB,GAAG;IAAC;IAC9B,IAAImB,aAAalB,QAAQ,EAAE,OAAOkB,aAAalB,QAAQ;IAEvD,OAAOC,QAAQkB,EAAE,CAACC,MAAM,CAAC;QACvBtB,YAAYA,WAAWO,IAAI;QAC3BgB,MAAM;YACJ,GAAGH,YAAY;YACfF;YACAC;QACF;QACAf;IACF;AACF,EAAC"}
1
+ {"version":3,"sources":["../../../../src/auth/strategies/local/register.ts"],"sourcesContent":["import type { SanitizedCollectionConfig } from '../../../collections/config/types.js'\nimport type { Payload } from '../../../index.js'\nimport type { PayloadRequestWithData } from '../../../types/index.js'\n\nimport { ValidationError } from '../../../errors/index.js'\nimport { generatePasswordSaltHash } from './generatePasswordSaltHash.js'\n\ntype Args = {\n collection: SanitizedCollectionConfig\n doc: Record<string, unknown>\n password: string\n payload: Payload\n req: PayloadRequestWithData\n}\n\nexport const registerLocalStrategy = async ({\n collection,\n doc,\n password,\n payload,\n req,\n}: Args): Promise<Record<string, unknown>> => {\n const existingUser = await payload.find({\n collection: collection.slug,\n depth: 0,\n limit: 1,\n pagination: false,\n req,\n where: {\n email: {\n equals: doc.email,\n },\n },\n })\n\n if (existingUser.docs.length > 0) {\n throw new ValidationError([\n { field: 'email', message: 'A user with the given email is already registered' },\n ])\n }\n\n const { hash, salt } = await generatePasswordSaltHash({ password })\n\n const sanitizedDoc = { ...doc }\n if (sanitizedDoc.password) delete sanitizedDoc.password\n\n return payload.db.create({\n collection: collection.slug,\n data: {\n ...sanitizedDoc,\n hash,\n salt,\n },\n req,\n })\n}\n"],"names":["ValidationError","generatePasswordSaltHash","registerLocalStrategy","collection","doc","password","payload","req","existingUser","find","slug","depth","limit","pagination","where","email","equals","docs","length","field","message","hash","salt","sanitizedDoc","db","create","data"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"AAIA,SAASA,eAAe,QAAQ,2BAA0B;AAC1D,SAASC,wBAAwB,QAAQ,gCAA+B;AAUxE,OAAO,MAAMC,wBAAwB,OAAO,EAC1CC,UAAU,EACVC,GAAG,EACHC,QAAQ,EACRC,OAAO,EACPC,GAAG,EACE;IACL,MAAMC,eAAe,MAAMF,QAAQG,IAAI,CAAC;QACtCN,YAAYA,WAAWO,IAAI;QAC3BC,OAAO;QACPC,OAAO;QACPC,YAAY;QACZN;QACAO,OAAO;YACLC,OAAO;gBACLC,QAAQZ,IAAIW,KAAK;YACnB;QACF;IACF;IAEA,IAAIP,aAAaS,IAAI,CAACC,MAAM,GAAG,GAAG;QAChC,MAAM,IAAIlB,gBAAgB;YACxB;gBAAEmB,OAAO;gBAASC,SAAS;YAAoD;SAChF;IACH;IAEA,MAAM,EAAEC,IAAI,EAAEC,IAAI,EAAE,GAAG,MAAMrB,yBAAyB;QAAEI;IAAS;IAEjE,MAAMkB,eAAe;QAAE,GAAGnB,GAAG;IAAC;IAC9B,IAAImB,aAAalB,QAAQ,EAAE,OAAOkB,aAAalB,QAAQ;IAEvD,OAAOC,QAAQkB,EAAE,CAACC,MAAM,CAAC;QACvBtB,YAAYA,WAAWO,IAAI;QAC3BgB,MAAM;YACJ,GAAGH,YAAY;YACfF;YACAC;QACF;QACAf;IACF;AACF,EAAC"}
@@ -1,11 +1,11 @@
1
1
  import type { SanitizedCollectionConfig, TypeWithID } from '../../../collections/config/types.js';
2
2
  import type { Payload } from '../../../index.js';
3
- import type { PayloadRequest } from '../../../types/index.js';
3
+ import type { PayloadRequestWithData } from '../../../types/index.js';
4
4
  type Args = {
5
5
  collection: SanitizedCollectionConfig;
6
6
  doc: TypeWithID & Record<string, unknown>;
7
7
  payload: Payload;
8
- req: PayloadRequest;
8
+ req: PayloadRequestWithData;
9
9
  };
10
10
  export declare const resetLoginAttempts: ({ collection, doc, payload, req, }: Args) => Promise<void>;
11
11
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"resetLoginAttempts.d.ts","sourceRoot":"","sources":["../../../../src/auth/strategies/local/resetLoginAttempts.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,yBAAyB,EAAE,UAAU,EAAE,MAAM,sCAAsC,CAAA;AACjG,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAA;AAChD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAA;AAE7D,KAAK,IAAI,GAAG;IACV,UAAU,EAAE,yBAAyB,CAAA;IACrC,GAAG,EAAE,UAAU,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IACzC,OAAO,EAAE,OAAO,CAAA;IAChB,GAAG,EAAE,cAAc,CAAA;CACpB,CAAA;AAED,eAAO,MAAM,kBAAkB,uCAK5B,IAAI,KAAG,QAAQ,IAAI,CAarB,CAAA"}
1
+ {"version":3,"file":"resetLoginAttempts.d.ts","sourceRoot":"","sources":["../../../../src/auth/strategies/local/resetLoginAttempts.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,yBAAyB,EAAE,UAAU,EAAE,MAAM,sCAAsC,CAAA;AACjG,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAA;AAChD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAA;AAErE,KAAK,IAAI,GAAG;IACV,UAAU,EAAE,yBAAyB,CAAA;IACrC,GAAG,EAAE,UAAU,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IACzC,OAAO,EAAE,OAAO,CAAA;IAChB,GAAG,EAAE,sBAAsB,CAAA;CAC5B,CAAA;AAED,eAAO,MAAM,kBAAkB,uCAK5B,IAAI,KAAG,QAAQ,IAAI,CAarB,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/auth/strategies/local/resetLoginAttempts.ts"],"sourcesContent":["import type { SanitizedCollectionConfig, TypeWithID } from '../../../collections/config/types.js'\nimport type { Payload } from '../../../index.js'\nimport type { PayloadRequest } from '../../../types/index.js'\n\ntype Args = {\n collection: SanitizedCollectionConfig\n doc: TypeWithID & Record<string, unknown>\n payload: Payload\n req: PayloadRequest\n}\n\nexport const resetLoginAttempts = async ({\n collection,\n doc,\n payload,\n req,\n}: Args): Promise<void> => {\n if (!('lockUntil' in doc && typeof doc.lockUntil === 'string') || doc.loginAttempts === 0) return\n await payload.update({\n id: doc.id,\n collection: collection.slug,\n data: {\n lockUntil: null,\n loginAttempts: 0,\n },\n depth: 0,\n overrideAccess: true,\n req,\n })\n}\n"],"names":["resetLoginAttempts","collection","doc","payload","req","lockUntil","loginAttempts","update","id","slug","data","depth","overrideAccess"],"rangeMappings":";;;;;;;;;;;;;","mappings":"AAWA,OAAO,MAAMA,qBAAqB,OAAO,EACvCC,UAAU,EACVC,GAAG,EACHC,OAAO,EACPC,GAAG,EACE;IACL,IAAI,CAAE,CAAA,eAAeF,OAAO,OAAOA,IAAIG,SAAS,KAAK,QAAO,KAAMH,IAAII,aAAa,KAAK,GAAG;IAC3F,MAAMH,QAAQI,MAAM,CAAC;QACnBC,IAAIN,IAAIM,EAAE;QACVP,YAAYA,WAAWQ,IAAI;QAC3BC,MAAM;YACJL,WAAW;YACXC,eAAe;QACjB;QACAK,OAAO;QACPC,gBAAgB;QAChBR;IACF;AACF,EAAC"}
1
+ {"version":3,"sources":["../../../../src/auth/strategies/local/resetLoginAttempts.ts"],"sourcesContent":["import type { SanitizedCollectionConfig, TypeWithID } from '../../../collections/config/types.js'\nimport type { Payload } from '../../../index.js'\nimport type { PayloadRequestWithData } from '../../../types/index.js'\n\ntype Args = {\n collection: SanitizedCollectionConfig\n doc: TypeWithID & Record<string, unknown>\n payload: Payload\n req: PayloadRequestWithData\n}\n\nexport const resetLoginAttempts = async ({\n collection,\n doc,\n payload,\n req,\n}: Args): Promise<void> => {\n if (!('lockUntil' in doc && typeof doc.lockUntil === 'string') || doc.loginAttempts === 0) return\n await payload.update({\n id: doc.id,\n collection: collection.slug,\n data: {\n lockUntil: null,\n loginAttempts: 0,\n },\n depth: 0,\n overrideAccess: true,\n req,\n })\n}\n"],"names":["resetLoginAttempts","collection","doc","payload","req","lockUntil","loginAttempts","update","id","slug","data","depth","overrideAccess"],"rangeMappings":";;;;;;;;;;;;;","mappings":"AAWA,OAAO,MAAMA,qBAAqB,OAAO,EACvCC,UAAU,EACVC,GAAG,EACHC,OAAO,EACPC,GAAG,EACE;IACL,IAAI,CAAE,CAAA,eAAeF,OAAO,OAAOA,IAAIG,SAAS,KAAK,QAAO,KAAMH,IAAII,aAAa,KAAK,GAAG;IAC3F,MAAMH,QAAQI,MAAM,CAAC;QACnBC,IAAIN,IAAIM,EAAE;QACVP,YAAYA,WAAWQ,IAAI;QAC3BC,MAAM;YACJL,WAAW;YACXC,eAAe;QACjB;QACAK,OAAO;QACPC,gBAAgB;QAChBR;IACF;AACF,EAAC"}
@@ -1,6 +1,6 @@
1
1
  import type { DeepRequired } from 'ts-essentials';
2
2
  import type { Payload } from '../index.js';
3
- import type { PayloadRequest, Where } from '../types/index.js';
3
+ import type { PayloadRequestWithData, Where } from '../types/index.js';
4
4
  export type Permission = {
5
5
  permission: boolean;
6
6
  where?: Record<string, unknown>;
@@ -66,22 +66,22 @@ export type User = {
66
66
  */
67
67
  export type ClientUser = Omit<User, 'collection'>;
68
68
  type GenerateVerifyEmailHTML = (args: {
69
- req: PayloadRequest;
69
+ req: PayloadRequestWithData;
70
70
  token: string;
71
71
  user: any;
72
72
  }) => Promise<string> | string;
73
73
  type GenerateVerifyEmailSubject = (args: {
74
- req: PayloadRequest;
74
+ req: PayloadRequestWithData;
75
75
  token: string;
76
76
  user: any;
77
77
  }) => Promise<string> | string;
78
78
  type GenerateForgotPasswordEmailHTML = (args?: {
79
- req?: PayloadRequest;
79
+ req?: PayloadRequestWithData;
80
80
  token?: string;
81
81
  user?: unknown;
82
82
  }) => Promise<string> | string;
83
83
  type GenerateForgotPasswordEmailSubject = (args?: {
84
- req?: PayloadRequest;
84
+ req?: PayloadRequestWithData;
85
85
  token?: string;
86
86
  user?: any;
87
87
  }) => Promise<string> | string;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/auth/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/auth/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,eAAe,CAAA;AAEjD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAA;AAC1C,OAAO,KAAK,EAAE,sBAAsB,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAA;AAEtE,MAAM,MAAM,UAAU,GAAG;IACvB,UAAU,EAAE,OAAO,CAAA;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAChC,CAAA;AAED,MAAM,MAAM,gBAAgB,GAAG;IAC7B,MAAM,CAAC,EAAE;QACP,CAAC,SAAS,EAAE,MAAM,GAAG;YACnB,MAAM,EAAE;gBACN,CAAC,SAAS,EAAE,MAAM,GAAG,gBAAgB,CAAA;aACtC,CAAA;SACF,CAAA;KACF,CAAA;IACD,MAAM,EAAE;QACN,UAAU,EAAE,OAAO,CAAA;KACpB,CAAA;IACD,MAAM,CAAC,EAAE;QACP,CAAC,SAAS,EAAE,MAAM,GAAG,gBAAgB,CAAA;KACtC,CAAA;IACD,IAAI,EAAE;QACJ,UAAU,EAAE,OAAO,CAAA;KACpB,CAAA;IACD,MAAM,EAAE;QACN,UAAU,EAAE,OAAO,CAAA;KACpB,CAAA;CACF,CAAA;AAED,MAAM,MAAM,oBAAoB,GAAG;IACjC,MAAM,EAAE,UAAU,CAAA;IAClB,MAAM,EAAE,UAAU,CAAA;IAClB,MAAM,EAAE;QACN,CAAC,SAAS,EAAE,MAAM,GAAG,gBAAgB,CAAA;KACtC,CAAA;IACD,IAAI,EAAE,UAAU,CAAA;IAChB,YAAY,CAAC,EAAE,UAAU,CAAA;IACzB,MAAM,EAAE,UAAU,CAAA;CACnB,CAAA;AAED,MAAM,MAAM,gBAAgB,GAAG;IAC7B,MAAM,EAAE;QACN,CAAC,SAAS,EAAE,MAAM,GAAG,gBAAgB,CAAA;KACtC,CAAA;IACD,IAAI,EAAE,UAAU,CAAA;IAChB,YAAY,CAAC,EAAE,UAAU,CAAA;IACzB,MAAM,EAAE,UAAU,CAAA;CACnB,CAAA;AAED,MAAM,MAAM,mBAAmB,GAAG,oBAAoB,GAAG,gBAAgB,CAAA;AACzE,MAAM,MAAM,WAAW,GAAG;IACxB,cAAc,EAAE,OAAO,CAAA;IACvB,WAAW,EAAE;QACX,CAAC,cAAc,EAAE,MAAM,GAAG,oBAAoB,CAAA;KAC/C,CAAA;IACD,OAAO,CAAC,EAAE;QACR,CAAC,UAAU,EAAE,MAAM,GAAG,gBAAgB,CAAA;KACvC,CAAA;CACF,CAAA;AAED,MAAM,MAAM,IAAI,GAAG;IACjB,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;IAClB,UAAU,EAAE,MAAM,CAAA;IAClB,KAAK,EAAE,MAAM,CAAA;IACb,EAAE,EAAE,MAAM,CAAA;CACX,CAAA;AAED;;;GAGG;AACH,MAAM,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,EAAE,YAAY,CAAC,CAAA;AAEjD,KAAK,uBAAuB,GAAG,CAAC,IAAI,EAAE;IACpC,GAAG,EAAE,sBAAsB,CAAA;IAC3B,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,GAAG,CAAA;CACV,KAAK,OAAO,CAAC,MAAM,CAAC,GAAG,MAAM,CAAA;AAC9B,KAAK,0BAA0B,GAAG,CAAC,IAAI,EAAE;IACvC,GAAG,EAAE,sBAAsB,CAAA;IAC3B,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,GAAG,CAAA;CACV,KAAK,OAAO,CAAC,MAAM,CAAC,GAAG,MAAM,CAAA;AAE9B,KAAK,+BAA+B,GAAG,CAAC,IAAI,CAAC,EAAE;IAC7C,GAAG,CAAC,EAAE,sBAAsB,CAAA;IAC5B,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,IAAI,CAAC,EAAE,OAAO,CAAA;CACf,KAAK,OAAO,CAAC,MAAM,CAAC,GAAG,MAAM,CAAA;AAC9B,KAAK,kCAAkC,GAAG,CAAC,IAAI,CAAC,EAAE;IAChD,GAAG,CAAC,EAAE,sBAAsB,CAAA;IAC5B,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,IAAI,CAAC,EAAE,GAAG,CAAA;CACX,KAAK,OAAO,CAAC,MAAM,CAAC,GAAG,MAAM,CAAA;AAE9B,MAAM,MAAM,wBAAwB,GAAG;IACrC,OAAO,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAC7B,OAAO,EAAE,OAAO,CAAC,SAAS,CAAC,CAAA;IAC3B,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,OAAO,EAAE,OAAO,CAAA;CACjB,CAAA;AACD,MAAM,MAAM,oBAAoB,GAAG,CAAC,EAClC,OAAO,EACP,SAAS,EACT,OAAO,GACR,EAAE,wBAAwB,KAAK,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC,GAAG,IAAI,GAAG,IAAI,CAAA;AAClE,MAAM,MAAM,YAAY,GAAG;IACzB,YAAY,EAAE,oBAAoB,CAAA;IAClC,IAAI,EAAE,MAAM,CAAA;CACb,CAAA;AAED,MAAM,WAAW,gBAAgB;IAC/B,OAAO,CAAC,EAAE;QACR,MAAM,CAAC,EAAE,MAAM,CAAA;QACf,QAAQ,CAAC,EAAE,KAAK,GAAG,MAAM,GAAG,QAAQ,GAAG,OAAO,CAAA;QAC9C,MAAM,CAAC,EAAE,OAAO,CAAA;KACjB,CAAA;IACD,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,oBAAoB,CAAC,EAAE,IAAI,CAAA;IAC3B,cAAc,CAAC,EAAE;QACf,iBAAiB,CAAC,EAAE,+BAA+B,CAAA;QACnD,oBAAoB,CAAC,EAAE,kCAAkC,CAAA;KAC1D,CAAA;IACD,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,wBAAwB,CAAC,EAAE,IAAI,CAAA;IAC/B,UAAU,CAAC,EAAE,YAAY,EAAE,CAAA;IAC3B,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,MAAM,CAAC,EACH;QACE,iBAAiB,CAAC,EAAE,uBAAuB,CAAA;QAC3C,oBAAoB,CAAC,EAAE,0BAA0B,CAAA;KAClD,GACD,OAAO,CAAA;CACZ;AAED,MAAM,MAAM,YAAY,GAAG;IACzB,iBAAiB,CAAC,EAAE,uBAAuB,CAAA;IAC3C,oBAAoB,CAAC,EAAE,0BAA0B,CAAA;CAClD,CAAA;AAED,MAAM,WAAW,IAAK,SAAQ,IAAI,CAAC,YAAY,CAAC,gBAAgB,CAAC,EAAE,gBAAgB,GAAG,QAAQ,CAAC;IAC7F,cAAc,CAAC,EAAE;QACf,iBAAiB,CAAC,EAAE,+BAA+B,CAAA;QACnD,oBAAoB,CAAC,EAAE,kCAAkC,CAAA;KAC1D,CAAA;IACD,MAAM,CAAC,EAAE,YAAY,GAAG,OAAO,CAAA;CAChC;AAED,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,KAAK,GAAG,OAAO,GAAG,MAAM,IAAI,KAAK,CAE7E"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/auth/types.ts"],"sourcesContent":["import type { DeepRequired } from 'ts-essentials'\n\nimport type { Payload } from '../index.js'\nimport type { PayloadRequest, Where } from '../types/index.js'\n\nexport type Permission = {\n permission: boolean\n where?: Record<string, unknown>\n}\n\nexport type FieldPermissions = {\n blocks?: {\n [blockSlug: string]: {\n fields: {\n [fieldName: string]: FieldPermissions\n }\n }\n }\n create: {\n permission: boolean\n }\n fields?: {\n [fieldName: string]: FieldPermissions\n }\n read: {\n permission: boolean\n }\n update: {\n permission: boolean\n }\n}\n\nexport type CollectionPermission = {\n create: Permission\n delete: Permission\n fields: {\n [fieldName: string]: FieldPermissions\n }\n read: Permission\n readVersions?: Permission\n update: Permission\n}\n\nexport type GlobalPermission = {\n fields: {\n [fieldName: string]: FieldPermissions\n }\n read: Permission\n readVersions?: Permission\n update: Permission\n}\n\nexport type DocumentPermissions = CollectionPermission | GlobalPermission\nexport type Permissions = {\n canAccessAdmin: boolean\n collections: {\n [collectionSlug: string]: CollectionPermission\n }\n globals?: {\n [globalSlug: string]: GlobalPermission\n }\n}\n\nexport type User = {\n [key: string]: any // This NEEDS to be an any, otherwise it breaks the Omit for ClientUser below\n collection: string\n email: string\n id: string\n}\n\n/**\n * `collection` is not available one the client. It's only available on the server (req.user)\n * On the client, you can access the collection via config.admin.user. Config can be accessed using the useConfig() hook\n */\nexport type ClientUser = Omit<User, 'collection'>\n\ntype GenerateVerifyEmailHTML = (args: {\n req: PayloadRequest\n token: string\n user: any\n}) => Promise<string> | string\ntype GenerateVerifyEmailSubject = (args: {\n req: PayloadRequest\n token: string\n user: any\n}) => Promise<string> | string\n\ntype GenerateForgotPasswordEmailHTML = (args?: {\n req?: PayloadRequest\n token?: string\n user?: unknown\n}) => Promise<string> | string\ntype GenerateForgotPasswordEmailSubject = (args?: {\n req?: PayloadRequest\n token?: string\n user?: any\n}) => Promise<string> | string\n\nexport type AuthStrategyFunctionArgs = {\n cookies?: Map<string, string>\n headers: Request['headers']\n isGraphQL?: boolean\n payload: Payload\n}\nexport type AuthStrategyFunction = ({\n headers,\n isGraphQL,\n payload,\n}: AuthStrategyFunctionArgs) => Promise<User | null> | User | null\nexport type AuthStrategy = {\n authenticate: AuthStrategyFunction\n name: string\n}\n\nexport interface IncomingAuthType {\n cookies?: {\n domain?: string\n sameSite?: 'Lax' | 'None' | 'Strict' | boolean\n secure?: boolean\n }\n depth?: number\n disableLocalStrategy?: true\n forgotPassword?: {\n generateEmailHTML?: GenerateForgotPasswordEmailHTML\n generateEmailSubject?: GenerateForgotPasswordEmailSubject\n }\n lockTime?: number\n maxLoginAttempts?: number\n removeTokenFromResponses?: true\n strategies?: AuthStrategy[]\n tokenExpiration?: number\n useAPIKey?: boolean\n verify?:\n | {\n generateEmailHTML?: GenerateVerifyEmailHTML\n generateEmailSubject?: GenerateVerifyEmailSubject\n }\n | boolean\n}\n\nexport type VerifyConfig = {\n generateEmailHTML?: GenerateVerifyEmailHTML\n generateEmailSubject?: GenerateVerifyEmailSubject\n}\n\nexport interface Auth extends Omit<DeepRequired<IncomingAuthType>, 'forgotPassword' | 'verify'> {\n forgotPassword?: {\n generateEmailHTML?: GenerateForgotPasswordEmailHTML\n generateEmailSubject?: GenerateForgotPasswordEmailSubject\n }\n verify?: VerifyConfig | boolean\n}\n\nexport function hasWhereAccessResult(result: Where | boolean): result is Where {\n return result && typeof result === 'object'\n}\n"],"names":["hasWhereAccessResult","result"],"rangeMappings":";;","mappings":"AAyJA,OAAO,SAASA,qBAAqBC,MAAuB;IAC1D,OAAOA,UAAU,OAAOA,WAAW;AACrC"}
1
+ {"version":3,"sources":["../../src/auth/types.ts"],"sourcesContent":["import type { DeepRequired } from 'ts-essentials'\n\nimport type { Payload } from '../index.js'\nimport type { PayloadRequestWithData, Where } from '../types/index.js'\n\nexport type Permission = {\n permission: boolean\n where?: Record<string, unknown>\n}\n\nexport type FieldPermissions = {\n blocks?: {\n [blockSlug: string]: {\n fields: {\n [fieldName: string]: FieldPermissions\n }\n }\n }\n create: {\n permission: boolean\n }\n fields?: {\n [fieldName: string]: FieldPermissions\n }\n read: {\n permission: boolean\n }\n update: {\n permission: boolean\n }\n}\n\nexport type CollectionPermission = {\n create: Permission\n delete: Permission\n fields: {\n [fieldName: string]: FieldPermissions\n }\n read: Permission\n readVersions?: Permission\n update: Permission\n}\n\nexport type GlobalPermission = {\n fields: {\n [fieldName: string]: FieldPermissions\n }\n read: Permission\n readVersions?: Permission\n update: Permission\n}\n\nexport type DocumentPermissions = CollectionPermission | GlobalPermission\nexport type Permissions = {\n canAccessAdmin: boolean\n collections: {\n [collectionSlug: string]: CollectionPermission\n }\n globals?: {\n [globalSlug: string]: GlobalPermission\n }\n}\n\nexport type User = {\n [key: string]: any // This NEEDS to be an any, otherwise it breaks the Omit for ClientUser below\n collection: string\n email: string\n id: string\n}\n\n/**\n * `collection` is not available one the client. It's only available on the server (req.user)\n * On the client, you can access the collection via config.admin.user. Config can be accessed using the useConfig() hook\n */\nexport type ClientUser = Omit<User, 'collection'>\n\ntype GenerateVerifyEmailHTML = (args: {\n req: PayloadRequestWithData\n token: string\n user: any\n}) => Promise<string> | string\ntype GenerateVerifyEmailSubject = (args: {\n req: PayloadRequestWithData\n token: string\n user: any\n}) => Promise<string> | string\n\ntype GenerateForgotPasswordEmailHTML = (args?: {\n req?: PayloadRequestWithData\n token?: string\n user?: unknown\n}) => Promise<string> | string\ntype GenerateForgotPasswordEmailSubject = (args?: {\n req?: PayloadRequestWithData\n token?: string\n user?: any\n}) => Promise<string> | string\n\nexport type AuthStrategyFunctionArgs = {\n cookies?: Map<string, string>\n headers: Request['headers']\n isGraphQL?: boolean\n payload: Payload\n}\nexport type AuthStrategyFunction = ({\n headers,\n isGraphQL,\n payload,\n}: AuthStrategyFunctionArgs) => Promise<User | null> | User | null\nexport type AuthStrategy = {\n authenticate: AuthStrategyFunction\n name: string\n}\n\nexport interface IncomingAuthType {\n cookies?: {\n domain?: string\n sameSite?: 'Lax' | 'None' | 'Strict' | boolean\n secure?: boolean\n }\n depth?: number\n disableLocalStrategy?: true\n forgotPassword?: {\n generateEmailHTML?: GenerateForgotPasswordEmailHTML\n generateEmailSubject?: GenerateForgotPasswordEmailSubject\n }\n lockTime?: number\n maxLoginAttempts?: number\n removeTokenFromResponses?: true\n strategies?: AuthStrategy[]\n tokenExpiration?: number\n useAPIKey?: boolean\n verify?:\n | {\n generateEmailHTML?: GenerateVerifyEmailHTML\n generateEmailSubject?: GenerateVerifyEmailSubject\n }\n | boolean\n}\n\nexport type VerifyConfig = {\n generateEmailHTML?: GenerateVerifyEmailHTML\n generateEmailSubject?: GenerateVerifyEmailSubject\n}\n\nexport interface Auth extends Omit<DeepRequired<IncomingAuthType>, 'forgotPassword' | 'verify'> {\n forgotPassword?: {\n generateEmailHTML?: GenerateForgotPasswordEmailHTML\n generateEmailSubject?: GenerateForgotPasswordEmailSubject\n }\n verify?: VerifyConfig | boolean\n}\n\nexport function hasWhereAccessResult(result: Where | boolean): result is Where {\n return result && typeof result === 'object'\n}\n"],"names":["hasWhereAccessResult","result"],"rangeMappings":";;","mappings":"AAyJA,OAAO,SAASA,qBAAqBC,MAAuB;IAC1D,OAAOA,UAAU,OAAOA,WAAW;AACrC"}
@@ -296,7 +296,7 @@ export declare const createClientCollectionConfig: ({ collection, t, }: {
296
296
  };
297
297
  access: {
298
298
  admin: ({ req }: {
299
- req: import("../../types/index.js").PayloadRequest;
299
+ req: import("../../types/index.js").PayloadRequestWithData;
300
300
  }) => boolean | Promise<boolean>;
301
301
  create: import("../../config/types.js").Access;
302
302
  delete: import("../../config/types.js").Access;
@@ -1,19 +1,19 @@
1
1
  export declare const defaults: {
2
2
  access: {
3
3
  create: ({ req: { user } }: {
4
- req: import("../../types/index.js").PayloadRequest;
4
+ req: import("../../types/index.js").PayloadRequestWithData;
5
5
  }) => boolean;
6
6
  delete: ({ req: { user } }: {
7
- req: import("../../types/index.js").PayloadRequest;
7
+ req: import("../../types/index.js").PayloadRequestWithData;
8
8
  }) => boolean;
9
9
  read: ({ req: { user } }: {
10
- req: import("../../types/index.js").PayloadRequest;
10
+ req: import("../../types/index.js").PayloadRequestWithData;
11
11
  }) => boolean;
12
12
  unlock: ({ req: { user } }: {
13
- req: import("../../types/index.js").PayloadRequest;
13
+ req: import("../../types/index.js").PayloadRequestWithData;
14
14
  }) => boolean;
15
15
  update: ({ req: { user } }: {
16
- req: import("../../types/index.js").PayloadRequest;
16
+ req: import("../../types/index.js").PayloadRequestWithData;
17
17
  }) => boolean;
18
18
  };
19
19
  admin: {
@@ -3,7 +3,7 @@ import baseAccountLockFields from '../../auth/baseFields/accountLock.js';
3
3
  import baseAPIKeyFields from '../../auth/baseFields/apiKey.js';
4
4
  import baseAuthFields from '../../auth/baseFields/auth.js';
5
5
  import baseVerificationFields from '../../auth/baseFields/verification.js';
6
- import TimestampsRequired from '../../errors/TimestampsRequired.js';
6
+ import { TimestampsRequired } from '../../errors/TimestampsRequired.js';
7
7
  import { sanitizeFields } from '../../fields/config/sanitize.js';
8
8
  import { fieldAffectsData } from '../../fields/config/types.js';
9
9
  import mergeBaseFields from '../../fields/mergeBaseFields.js';
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/collections/config/sanitize.ts"],"sourcesContent":["import merge from 'deepmerge'\n\nimport type { Config } from '../../config/types.js'\nimport type { CollectionConfig, SanitizedCollectionConfig } from './types.js'\n\nimport baseAccountLockFields from '../../auth/baseFields/accountLock.js'\nimport baseAPIKeyFields from '../../auth/baseFields/apiKey.js'\nimport baseAuthFields from '../../auth/baseFields/auth.js'\nimport baseVerificationFields from '../../auth/baseFields/verification.js'\nimport TimestampsRequired from '../../errors/TimestampsRequired.js'\nimport { sanitizeFields } from '../../fields/config/sanitize.js'\nimport { fieldAffectsData } from '../../fields/config/types.js'\nimport mergeBaseFields from '../../fields/mergeBaseFields.js'\nimport { getBaseUploadFields } from '../../uploads/getBaseFields.js'\nimport { formatLabels } from '../../utilities/formatLabels.js'\nimport { isPlainObject } from '../../utilities/isPlainObject.js'\nimport baseVersionFields from '../../versions/baseFields.js'\nimport { authDefaults, defaults } from './defaults.js'\n\nconst sanitizeCollection = (\n config: Config,\n collection: CollectionConfig,\n): SanitizedCollectionConfig => {\n // /////////////////////////////////\n // Make copy of collection config\n // /////////////////////////////////\n\n const sanitized: CollectionConfig = merge(defaults, collection, {\n isMergeableObject: isPlainObject,\n })\n\n if (sanitized.timestamps !== false) {\n // add default timestamps fields only as needed\n let hasUpdatedAt = null\n let hasCreatedAt = null\n sanitized.fields.some((field) => {\n if (fieldAffectsData(field)) {\n if (field.name === 'updatedAt') hasUpdatedAt = true\n if (field.name === 'createdAt') hasCreatedAt = true\n }\n return hasCreatedAt && hasUpdatedAt\n })\n if (!hasUpdatedAt) {\n sanitized.fields.push({\n name: 'updatedAt',\n type: 'date',\n admin: {\n disableBulkEdit: true,\n hidden: true,\n },\n label: ({ t }) => t('general:updatedAt'),\n })\n }\n if (!hasCreatedAt) {\n sanitized.fields.push({\n name: 'createdAt',\n admin: {\n disableBulkEdit: true,\n hidden: true,\n },\n // The default sort for list view is createdAt. Thus, enabling indexing by default, is a major performance improvement, especially for large or a large amount of collections.\n type: 'date',\n index: true,\n label: ({ t }) => t('general:createdAt'),\n })\n }\n }\n\n sanitized.labels = sanitized.labels || formatLabels(sanitized.slug)\n\n if (sanitized.versions) {\n if (sanitized.versions === true) sanitized.versions = { drafts: false }\n\n if (sanitized.timestamps === false) {\n throw new TimestampsRequired(collection)\n }\n\n if (sanitized.versions.drafts) {\n if (sanitized.versions.drafts === true) {\n sanitized.versions.drafts = {\n autosave: false,\n }\n }\n\n if (sanitized.versions.drafts.autosave === true) {\n sanitized.versions.drafts.autosave = {\n interval: 2000,\n }\n }\n\n sanitized.fields = mergeBaseFields(sanitized.fields, baseVersionFields)\n }\n }\n\n if (sanitized.upload) {\n if (sanitized.upload === true) sanitized.upload = {}\n\n // disable duplicate for uploads by default\n sanitized.disableDuplicate = sanitized.disableDuplicate || true\n\n sanitized.upload.staticDir = sanitized.upload.staticDir || sanitized.slug\n sanitized.admin.useAsTitle =\n sanitized.admin.useAsTitle && sanitized.admin.useAsTitle !== 'id'\n ? sanitized.admin.useAsTitle\n : 'filename'\n\n const uploadFields = getBaseUploadFields({\n collection: sanitized,\n config,\n })\n\n sanitized.fields = mergeBaseFields(sanitized.fields, uploadFields)\n }\n\n if (sanitized.auth) {\n sanitized.auth = merge(authDefaults, typeof sanitized.auth === 'object' ? sanitized.auth : {}, {\n isMergeableObject: isPlainObject,\n })\n\n let authFields = []\n\n if (sanitized.auth.useAPIKey) {\n authFields = authFields.concat(baseAPIKeyFields)\n }\n\n if (!sanitized.auth.disableLocalStrategy) {\n authFields = authFields.concat(baseAuthFields)\n\n if (sanitized.auth.verify) {\n if (sanitized.auth.verify === true) sanitized.auth.verify = {}\n authFields = authFields.concat(baseVerificationFields)\n }\n\n if (sanitized.auth.maxLoginAttempts > 0) {\n authFields = authFields.concat(baseAccountLockFields)\n }\n }\n\n // disable duplicate for auth enabled collections by default\n sanitized.disableDuplicate = sanitized.disableDuplicate || true\n\n if (!sanitized.auth.strategies) {\n sanitized.auth.strategies = []\n }\n\n sanitized.fields = mergeBaseFields(sanitized.fields, authFields)\n }\n\n // /////////////////////////////////\n // Sanitize fields\n // /////////////////////////////////\n\n const validRelationships = config.collections.map((c) => c.slug) || []\n sanitized.fields = sanitizeFields({\n config,\n fields: sanitized.fields,\n validRelationships,\n })\n\n return sanitized as SanitizedCollectionConfig\n}\n\nexport default sanitizeCollection\n"],"names":["merge","baseAccountLockFields","baseAPIKeyFields","baseAuthFields","baseVerificationFields","TimestampsRequired","sanitizeFields","fieldAffectsData","mergeBaseFields","getBaseUploadFields","formatLabels","isPlainObject","baseVersionFields","authDefaults","defaults","sanitizeCollection","config","collection","sanitized","isMergeableObject","timestamps","hasUpdatedAt","hasCreatedAt","fields","some","field","name","push","type","admin","disableBulkEdit","hidden","label","t","index","labels","slug","versions","drafts","autosave","interval","upload","disableDuplicate","staticDir","useAsTitle","uploadFields","auth","authFields","useAPIKey","concat","disableLocalStrategy","verify","maxLoginAttempts","strategies","validRelationships","collections","map","c"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"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"}
1
+ {"version":3,"sources":["../../../src/collections/config/sanitize.ts"],"sourcesContent":["import merge from 'deepmerge'\n\nimport type { Config } from '../../config/types.js'\nimport type { CollectionConfig, SanitizedCollectionConfig } from './types.js'\n\nimport baseAccountLockFields from '../../auth/baseFields/accountLock.js'\nimport baseAPIKeyFields from '../../auth/baseFields/apiKey.js'\nimport baseAuthFields from '../../auth/baseFields/auth.js'\nimport baseVerificationFields from '../../auth/baseFields/verification.js'\nimport { TimestampsRequired } from '../../errors/TimestampsRequired.js'\nimport { sanitizeFields } from '../../fields/config/sanitize.js'\nimport { fieldAffectsData } from '../../fields/config/types.js'\nimport mergeBaseFields from '../../fields/mergeBaseFields.js'\nimport { getBaseUploadFields } from '../../uploads/getBaseFields.js'\nimport { formatLabels } from '../../utilities/formatLabels.js'\nimport { isPlainObject } from '../../utilities/isPlainObject.js'\nimport baseVersionFields from '../../versions/baseFields.js'\nimport { authDefaults, defaults } from './defaults.js'\n\nconst sanitizeCollection = (\n config: Config,\n collection: CollectionConfig,\n): SanitizedCollectionConfig => {\n // /////////////////////////////////\n // Make copy of collection config\n // /////////////////////////////////\n\n const sanitized: CollectionConfig = merge(defaults, collection, {\n isMergeableObject: isPlainObject,\n })\n\n if (sanitized.timestamps !== false) {\n // add default timestamps fields only as needed\n let hasUpdatedAt = null\n let hasCreatedAt = null\n sanitized.fields.some((field) => {\n if (fieldAffectsData(field)) {\n if (field.name === 'updatedAt') hasUpdatedAt = true\n if (field.name === 'createdAt') hasCreatedAt = true\n }\n return hasCreatedAt && hasUpdatedAt\n })\n if (!hasUpdatedAt) {\n sanitized.fields.push({\n name: 'updatedAt',\n type: 'date',\n admin: {\n disableBulkEdit: true,\n hidden: true,\n },\n label: ({ t }) => t('general:updatedAt'),\n })\n }\n if (!hasCreatedAt) {\n sanitized.fields.push({\n name: 'createdAt',\n admin: {\n disableBulkEdit: true,\n hidden: true,\n },\n // The default sort for list view is createdAt. Thus, enabling indexing by default, is a major performance improvement, especially for large or a large amount of collections.\n type: 'date',\n index: true,\n label: ({ t }) => t('general:createdAt'),\n })\n }\n }\n\n sanitized.labels = sanitized.labels || formatLabels(sanitized.slug)\n\n if (sanitized.versions) {\n if (sanitized.versions === true) sanitized.versions = { drafts: false }\n\n if (sanitized.timestamps === false) {\n throw new TimestampsRequired(collection)\n }\n\n if (sanitized.versions.drafts) {\n if (sanitized.versions.drafts === true) {\n sanitized.versions.drafts = {\n autosave: false,\n }\n }\n\n if (sanitized.versions.drafts.autosave === true) {\n sanitized.versions.drafts.autosave = {\n interval: 2000,\n }\n }\n\n sanitized.fields = mergeBaseFields(sanitized.fields, baseVersionFields)\n }\n }\n\n if (sanitized.upload) {\n if (sanitized.upload === true) sanitized.upload = {}\n\n // disable duplicate for uploads by default\n sanitized.disableDuplicate = sanitized.disableDuplicate || true\n\n sanitized.upload.staticDir = sanitized.upload.staticDir || sanitized.slug\n sanitized.admin.useAsTitle =\n sanitized.admin.useAsTitle && sanitized.admin.useAsTitle !== 'id'\n ? sanitized.admin.useAsTitle\n : 'filename'\n\n const uploadFields = getBaseUploadFields({\n collection: sanitized,\n config,\n })\n\n sanitized.fields = mergeBaseFields(sanitized.fields, uploadFields)\n }\n\n if (sanitized.auth) {\n sanitized.auth = merge(authDefaults, typeof sanitized.auth === 'object' ? sanitized.auth : {}, {\n isMergeableObject: isPlainObject,\n })\n\n let authFields = []\n\n if (sanitized.auth.useAPIKey) {\n authFields = authFields.concat(baseAPIKeyFields)\n }\n\n if (!sanitized.auth.disableLocalStrategy) {\n authFields = authFields.concat(baseAuthFields)\n\n if (sanitized.auth.verify) {\n if (sanitized.auth.verify === true) sanitized.auth.verify = {}\n authFields = authFields.concat(baseVerificationFields)\n }\n\n if (sanitized.auth.maxLoginAttempts > 0) {\n authFields = authFields.concat(baseAccountLockFields)\n }\n }\n\n // disable duplicate for auth enabled collections by default\n sanitized.disableDuplicate = sanitized.disableDuplicate || true\n\n if (!sanitized.auth.strategies) {\n sanitized.auth.strategies = []\n }\n\n sanitized.fields = mergeBaseFields(sanitized.fields, authFields)\n }\n\n // /////////////////////////////////\n // Sanitize fields\n // /////////////////////////////////\n\n const validRelationships = config.collections.map((c) => c.slug) || []\n sanitized.fields = sanitizeFields({\n config,\n fields: sanitized.fields,\n validRelationships,\n })\n\n return sanitized as SanitizedCollectionConfig\n}\n\nexport default sanitizeCollection\n"],"names":["merge","baseAccountLockFields","baseAPIKeyFields","baseAuthFields","baseVerificationFields","TimestampsRequired","sanitizeFields","fieldAffectsData","mergeBaseFields","getBaseUploadFields","formatLabels","isPlainObject","baseVersionFields","authDefaults","defaults","sanitizeCollection","config","collection","sanitized","isMergeableObject","timestamps","hasUpdatedAt","hasCreatedAt","fields","some","field","name","push","type","admin","disableBulkEdit","hidden","label","t","index","labels","slug","versions","drafts","autosave","interval","upload","disableDuplicate","staticDir","useAsTitle","uploadFields","auth","authFields","useAPIKey","concat","disableLocalStrategy","verify","maxLoginAttempts","strategies","validRelationships","collections","map","c"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"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"}
@@ -6,7 +6,7 @@ import type { Access, CustomComponent, EditConfig, Endpoint, EntityDescription,
6
6
  import type { DBIdentifierName } from '../../database/types.js';
7
7
  import type { Field } from '../../fields/config/types.js';
8
8
  import type { GeneratedTypes } from '../../index.js';
9
- import type { PayloadRequest, RequestContext } from '../../types/index.js';
9
+ import type { PayloadRequestWithData, RequestContext } from '../../types/index.js';
10
10
  import type { SanitizedUploadConfig, UploadConfig } from '../../uploads/types.js';
11
11
  import type { IncomingCollectionVersions, SanitizedCollectionVersions } from '../../versions/types.js';
12
12
  import type { AfterOperationArg, AfterOperationMap } from '../operations/utils.js';
@@ -21,7 +21,7 @@ export type BeforeOperationHook = (args: {
21
21
  * Hook operation being performed
22
22
  */
23
23
  operation: HookOperationType;
24
- req: PayloadRequest;
24
+ req: PayloadRequestWithData;
25
25
  }) => any;
26
26
  export type BeforeValidateHook<T extends TypeWithID = any> = (args: {
27
27
  /** The collection which this hook is being run on */
@@ -38,7 +38,7 @@ export type BeforeValidateHook<T extends TypeWithID = any> = (args: {
38
38
  * `undefined` on 'create' operation
39
39
  */
40
40
  originalDoc?: T;
41
- req: PayloadRequest;
41
+ req: PayloadRequestWithData;
42
42
  }) => any;
43
43
  export type BeforeChangeHook<T extends TypeWithID = any> = (args: {
44
44
  /** The collection which this hook is being run on */
@@ -55,7 +55,7 @@ export type BeforeChangeHook<T extends TypeWithID = any> = (args: {
55
55
  * `undefined` on 'create' operation
56
56
  */
57
57
  originalDoc?: T;
58
- req: PayloadRequest;
58
+ req: PayloadRequestWithData;
59
59
  }) => any;
60
60
  export type AfterChangeHook<T extends TypeWithID = any> = (args: {
61
61
  /** The collection which this hook is being run on */
@@ -67,7 +67,7 @@ export type AfterChangeHook<T extends TypeWithID = any> = (args: {
67
67
  */
68
68
  operation: CreateOrUpdateOperation;
69
69
  previousDoc: T;
70
- req: PayloadRequest;
70
+ req: PayloadRequestWithData;
71
71
  }) => any;
72
72
  export type BeforeReadHook<T extends TypeWithID = any> = (args: {
73
73
  /** The collection which this hook is being run on */
@@ -77,7 +77,7 @@ export type BeforeReadHook<T extends TypeWithID = any> = (args: {
77
77
  query: {
78
78
  [key: string]: any;
79
79
  };
80
- req: PayloadRequest;
80
+ req: PayloadRequestWithData;
81
81
  }) => any;
82
82
  export type AfterReadHook<T extends TypeWithID = any> = (args: {
83
83
  /** The collection which this hook is being run on */
@@ -88,14 +88,14 @@ export type AfterReadHook<T extends TypeWithID = any> = (args: {
88
88
  query?: {
89
89
  [key: string]: any;
90
90
  };
91
- req: PayloadRequest;
91
+ req: PayloadRequestWithData;
92
92
  }) => any;
93
93
  export type BeforeDeleteHook = (args: {
94
94
  /** The collection which this hook is being run on */
95
95
  collection: SanitizedCollectionConfig;
96
96
  context: RequestContext;
97
97
  id: number | string;
98
- req: PayloadRequest;
98
+ req: PayloadRequestWithData;
99
99
  }) => any;
100
100
  export type AfterDeleteHook<T extends TypeWithID = any> = (args: {
101
101
  /** The collection which this hook is being run on */
@@ -103,7 +103,7 @@ export type AfterDeleteHook<T extends TypeWithID = any> = (args: {
103
103
  context: RequestContext;
104
104
  doc: T;
105
105
  id: number | string;
106
- req: PayloadRequest;
106
+ req: PayloadRequestWithData;
107
107
  }) => any;
108
108
  export type AfterOperationHook<T extends TypeWithID = any> = (arg: AfterOperationArg<T>) => Promise<ReturnType<AfterOperationMap<T>[keyof AfterOperationMap<T>]>>;
109
109
  export type AfterErrorHook = (err: Error, res: unknown, context: RequestContext,
@@ -116,14 +116,14 @@ export type BeforeLoginHook<T extends TypeWithID = any> = (args: {
116
116
  /** The collection which this hook is being run on */
117
117
  collection: SanitizedCollectionConfig;
118
118
  context: RequestContext;
119
- req: PayloadRequest;
119
+ req: PayloadRequestWithData;
120
120
  user: T;
121
121
  }) => any;
122
122
  export type AfterLoginHook<T extends TypeWithID = any> = (args: {
123
123
  /** The collection which this hook is being run on */
124
124
  collection: SanitizedCollectionConfig;
125
125
  context: RequestContext;
126
- req: PayloadRequest;
126
+ req: PayloadRequestWithData;
127
127
  token: string;
128
128
  user: T;
129
129
  }) => any;
@@ -131,13 +131,13 @@ export type AfterLogoutHook<T extends TypeWithID = any> = (args: {
131
131
  /** The collection which this hook is being run on */
132
132
  collection: SanitizedCollectionConfig;
133
133
  context: RequestContext;
134
- req: PayloadRequest;
134
+ req: PayloadRequestWithData;
135
135
  }) => any;
136
136
  export type AfterMeHook<T extends TypeWithID = any> = (args: {
137
137
  /** The collection which this hook is being run on */
138
138
  collection: SanitizedCollectionConfig;
139
139
  context: RequestContext;
140
- req: PayloadRequest;
140
+ req: PayloadRequestWithData;
141
141
  response: unknown;
142
142
  }) => any;
143
143
  export type AfterRefreshHook<T extends TypeWithID = any> = (args: {
@@ -145,7 +145,7 @@ export type AfterRefreshHook<T extends TypeWithID = any> = (args: {
145
145
  collection: SanitizedCollectionConfig;
146
146
  context: RequestContext;
147
147
  exp: number;
148
- req: PayloadRequest;
148
+ req: PayloadRequestWithData;
149
149
  token: string;
150
150
  }) => any;
151
151
  export type AfterForgotPasswordHook = (args: {
@@ -254,7 +254,7 @@ export type CollectionConfig = {
254
254
  */
255
255
  access?: {
256
256
  admin?: ({ req }: {
257
- req: PayloadRequest;
257
+ req: PayloadRequestWithData;
258
258
  }) => Promise<boolean> | boolean;
259
259
  create?: Access;
260
260
  delete?: Access;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/collections/config/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/collections/config/types.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/collections/config/types.ts"],"sourcesContent":["import type { GraphQLInputObjectType, GraphQLNonNull, GraphQLObjectType } from 'graphql'\nimport type { DeepRequired } from 'ts-essentials'\n\nimport type {\n CustomPreviewButton,\n CustomPublishButton,\n CustomSaveButton,\n CustomSaveDraftButton,\n} from '../../admin/types.js'\nimport type { Auth, ClientUser, IncomingAuthType } from '../../auth/types.js'\nimport type {\n Access,\n CustomComponent,\n EditConfig,\n Endpoint,\n EntityDescription,\n GeneratePreviewURL,\n LabelFunction,\n LivePreviewConfig,\n} from '../../config/types.js'\nimport type { DBIdentifierName } from '../../database/types.js'\nimport type { Field } from '../../fields/config/types.js'\nimport type { GeneratedTypes } from '../../index.js'\nimport type { PayloadRequest, RequestContext } from '../../types/index.js'\nimport type { SanitizedUploadConfig, UploadConfig } from '../../uploads/types.js'\nimport type {\n IncomingCollectionVersions,\n SanitizedCollectionVersions,\n} from '../../versions/types.js'\nimport type { AfterOperationArg, AfterOperationMap } from '../operations/utils.js'\n\nexport type HookOperationType =\n | 'autosave'\n | 'count'\n | 'create'\n | 'delete'\n | 'forgotPassword'\n | 'login'\n | 'read'\n | 'refresh'\n | 'update'\n\ntype CreateOrUpdateOperation = Extract<HookOperationType, 'create' | 'update'>\n\nexport type BeforeOperationHook = (args: {\n args?: any\n /** The collection which this hook is being run on */\n collection: SanitizedCollectionConfig\n context: RequestContext\n /**\n * Hook operation being performed\n */\n operation: HookOperationType\n req: PayloadRequest\n}) => any\n\nexport type BeforeValidateHook<T extends TypeWithID = any> = (args: {\n /** The collection which this hook is being run on */\n collection: SanitizedCollectionConfig\n context: RequestContext\n data?: Partial<T>\n /**\n * Hook operation being performed\n */\n operation: CreateOrUpdateOperation\n /**\n * Original document before change\n *\n * `undefined` on 'create' operation\n */\n originalDoc?: T\n req: PayloadRequest\n}) => any\n\nexport type BeforeChangeHook<T extends TypeWithID = any> = (args: {\n /** The collection which this hook is being run on */\n collection: SanitizedCollectionConfig\n context: RequestContext\n data: Partial<T>\n /**\n * Hook operation being performed\n */\n operation: CreateOrUpdateOperation\n /**\n * Original document before change\n *\n * `undefined` on 'create' operation\n */\n originalDoc?: T\n req: PayloadRequest\n}) => any\n\nexport type AfterChangeHook<T extends TypeWithID = any> = (args: {\n /** The collection which this hook is being run on */\n collection: SanitizedCollectionConfig\n context: RequestContext\n doc: T\n /**\n * Hook operation being performed\n */\n operation: CreateOrUpdateOperation\n previousDoc: T\n req: PayloadRequest\n}) => any\n\nexport type BeforeReadHook<T extends TypeWithID = any> = (args: {\n /** The collection which this hook is being run on */\n collection: SanitizedCollectionConfig\n context: RequestContext\n doc: T\n query: { [key: string]: any }\n req: PayloadRequest\n}) => any\n\nexport type AfterReadHook<T extends TypeWithID = any> = (args: {\n /** The collection which this hook is being run on */\n collection: SanitizedCollectionConfig\n context: RequestContext\n doc: T\n findMany?: boolean\n query?: { [key: string]: any }\n req: PayloadRequest\n}) => any\n\nexport type BeforeDeleteHook = (args: {\n /** The collection which this hook is being run on */\n collection: SanitizedCollectionConfig\n context: RequestContext\n id: number | string\n req: PayloadRequest\n}) => any\n\nexport type AfterDeleteHook<T extends TypeWithID = any> = (args: {\n /** The collection which this hook is being run on */\n collection: SanitizedCollectionConfig\n context: RequestContext\n doc: T\n id: number | string\n req: PayloadRequest\n}) => any\n\nexport type AfterOperationHook<T extends TypeWithID = any> = (\n arg: AfterOperationArg<T>,\n) => Promise<ReturnType<AfterOperationMap<T>[keyof AfterOperationMap<T>]>>\n\nexport type AfterErrorHook = (\n err: Error,\n res: unknown,\n context: RequestContext,\n /** The collection which this hook is being run on. This is null if the AfterError hook was be added to the payload-wide config */\n collection: SanitizedCollectionConfig | null,\n) => { response: any; status: number } | void\n\nexport type BeforeLoginHook<T extends TypeWithID = any> = (args: {\n /** The collection which this hook is being run on */\n collection: SanitizedCollectionConfig\n context: RequestContext\n req: PayloadRequest\n user: T\n}) => any\n\nexport type AfterLoginHook<T extends TypeWithID = any> = (args: {\n /** The collection which this hook is being run on */\n collection: SanitizedCollectionConfig\n context: RequestContext\n req: PayloadRequest\n token: string\n user: T\n}) => any\n\nexport type AfterLogoutHook<T extends TypeWithID = any> = (args: {\n /** The collection which this hook is being run on */\n collection: SanitizedCollectionConfig\n context: RequestContext\n req: PayloadRequest\n}) => any\n\nexport type AfterMeHook<T extends TypeWithID = any> = (args: {\n /** The collection which this hook is being run on */\n collection: SanitizedCollectionConfig\n context: RequestContext\n req: PayloadRequest\n response: unknown\n}) => any\n\nexport type AfterRefreshHook<T extends TypeWithID = any> = (args: {\n /** The collection which this hook is being run on */\n collection: SanitizedCollectionConfig\n context: RequestContext\n exp: number\n req: PayloadRequest\n token: string\n}) => any\n\nexport type AfterForgotPasswordHook = (args: {\n args?: any\n /** The collection which this hook is being run on */\n collection: SanitizedCollectionConfig\n context: RequestContext\n}) => any\n\nexport type CollectionAdminOptions = {\n /**\n * Custom admin components\n */\n components?: {\n AfterList?: CustomComponent[]\n AfterListTable?: CustomComponent[]\n BeforeList?: CustomComponent[]\n BeforeListTable?: CustomComponent[]\n /**\n * Components within the edit view\n */\n edit?: {\n /**\n * Replaces the \"Preview\" button\n */\n PreviewButton?: CustomPreviewButton\n /**\n * Replaces the \"Publish\" button\n * + drafts must be enabled\n */\n PublishButton?: CustomPublishButton\n /**\n * Replaces the \"Save\" button\n * + drafts must be disabled\n */\n SaveButton?: CustomSaveButton\n /**\n * Replaces the \"Save Draft\" button\n * + drafts must be enabled\n * + autosave must be disabled\n */\n SaveDraftButton?: CustomSaveDraftButton\n }\n views?: {\n /**\n * Set to a React component to replace the entire \"Edit\" view, including all nested routes.\n * Set to an object to replace or modify individual nested routes, or to add new ones.\n */\n Edit?: EditConfig\n List?:\n | {\n Component?: React.ComponentType<any>\n actions?: CustomComponent[]\n }\n | React.ComponentType<any>\n }\n }\n /** Extension point to add your custom data. Available in server and client. */\n custom?: Record<string, any>\n /**\n * Default columns to show in list view\n */\n defaultColumns?: string[]\n /**\n * Custom description for collection\n */\n description?: EntityDescription\n enableRichTextLink?: boolean\n enableRichTextRelationship?: boolean\n /**\n * Place collections into a navigational group\n * */\n group?: Record<string, string> | string\n /**\n * Exclude the collection from the admin nav and routes\n */\n hidden?: ((args: { user: ClientUser }) => boolean) | boolean\n /**\n * Hide the API URL within the Edit view\n */\n hideAPIURL?: boolean\n /**\n * Additional fields to be searched via the full text search\n */\n listSearchableFields?: string[]\n /**\n * Live preview options\n */\n livePreview?: LivePreviewConfig\n pagination?: {\n defaultLimit?: number\n limits?: number[]\n }\n /**\n * Function to generate custom preview URL\n */\n preview?: GeneratePreviewURL\n /**\n * Field to use as title in Edit view and first column in List view\n */\n useAsTitle?: string\n}\n\n/** Manage all aspects of a data collection */\nexport type CollectionConfig = {\n /**\n * Access control\n */\n access?: {\n admin?: ({ req }: { req: PayloadRequest }) => Promise<boolean> | boolean\n create?: Access\n delete?: Access\n read?: Access\n readVersions?: Access\n unlock?: Access\n update?: Access\n }\n /**\n * Collection admin options\n */\n admin?: CollectionAdminOptions\n /**\n * Collection login options\n *\n * Use `true` to enable with default options\n */\n auth?: IncomingAuthType | boolean\n /** Extension point to add your custom data. Server only. */\n custom?: Record<string, any>\n /**\n * Used to override the default naming of the database table or collection with your using a function or string\n * @WARNING: If you change this property with existing data, you will need to handle the renaming of the table in your database or by using migrations\n */\n dbName?: DBIdentifierName\n /**\n * Default field to sort by in collection list view\n */\n defaultSort?: string\n /**\n * When true, do not show the \"Duplicate\" button while editing documents within this collection and prevent `duplicate` from all APIs\n */\n disableDuplicate?: boolean\n /**\n * Custom rest api endpoints, set false to disable all rest endpoints for this collection.\n */\n endpoints?: Omit<Endpoint, 'root'>[] | false\n fields: Field[]\n /**\n * GraphQL configuration\n */\n graphQL?:\n | {\n pluralName?: string\n singularName?: string\n }\n | false\n /**\n * Hooks to modify Payload functionality\n */\n hooks?: {\n afterChange?: AfterChangeHook[]\n afterDelete?: AfterDeleteHook[]\n afterError?: AfterErrorHook\n afterForgotPassword?: AfterForgotPasswordHook[]\n afterLogin?: AfterLoginHook[]\n afterLogout?: AfterLogoutHook[]\n afterMe?: AfterMeHook[]\n afterOperation?: AfterOperationHook[]\n afterRead?: AfterReadHook[]\n afterRefresh?: AfterRefreshHook[]\n beforeChange?: BeforeChangeHook[]\n beforeDelete?: BeforeDeleteHook[]\n beforeLogin?: BeforeLoginHook[]\n beforeOperation?: BeforeOperationHook[]\n beforeRead?: BeforeReadHook[]\n beforeValidate?: BeforeValidateHook[]\n }\n /**\n * Label configuration\n */\n labels?: {\n plural?: LabelFunction | Record<string, string> | string\n singular?: LabelFunction | Record<string, string> | string\n }\n slug: string\n /**\n * Add `createdAt` and `updatedAt` fields\n *\n * @default true\n */\n timestamps?: boolean\n /**\n * Options used in typescript generation\n */\n typescript?: {\n /**\n * Typescript generation name given to the interface type\n */\n interface?: string\n }\n /**\n * Customize the handling of incoming file uploads\n *\n * @default false // disable uploads\n */\n upload?: UploadConfig | boolean\n /**\n * Customize the handling of incoming file uploads\n *\n * @default false // disable versioning\n */\n versions?: IncomingCollectionVersions | boolean\n}\n\nexport interface SanitizedCollectionConfig\n extends Omit<\n DeepRequired<CollectionConfig>,\n 'auth' | 'endpoints' | 'fields' | 'upload' | 'versions'\n > {\n auth: Auth\n endpoints: Endpoint[] | false\n fields: Field[]\n upload: SanitizedUploadConfig\n versions: SanitizedCollectionVersions\n}\n\nexport type Collection = {\n config: SanitizedCollectionConfig\n customIDType?: 'number' | 'text'\n graphQL?: {\n JWT: GraphQLObjectType\n countType: GraphQLObjectType\n mutationInputType: GraphQLNonNull<any>\n paginatedType: GraphQLObjectType\n type: GraphQLObjectType\n updateMutationInputType: GraphQLNonNull<any>\n versionType: GraphQLObjectType\n whereInputType: GraphQLInputObjectType\n }\n}\n\nexport type BulkOperationResult<TSlug extends keyof GeneratedTypes['collections']> = {\n docs: GeneratedTypes['collections'][TSlug][]\n errors: {\n id: GeneratedTypes['collections'][TSlug]['id']\n message: string\n }[]\n}\n\nexport type AuthCollection = {\n config: SanitizedCollectionConfig\n}\n\nexport type TypeWithID = {\n id: number | string\n}\n\nexport type TypeWithTimestamps = {\n [key: string]: unknown\n createdAt: string\n id: number | string\n updatedAt: string\n}\n"],"names":[],"rangeMappings":"","mappings":"AAicA,WAKC"}
1
+ {"version":3,"sources":["../../../src/collections/config/types.ts"],"sourcesContent":["import type { GraphQLInputObjectType, GraphQLNonNull, GraphQLObjectType } from 'graphql'\nimport type { DeepRequired } from 'ts-essentials'\n\nimport type {\n CustomPreviewButton,\n CustomPublishButton,\n CustomSaveButton,\n CustomSaveDraftButton,\n} from '../../admin/types.js'\nimport type { Auth, ClientUser, IncomingAuthType } from '../../auth/types.js'\nimport type {\n Access,\n CustomComponent,\n EditConfig,\n Endpoint,\n EntityDescription,\n GeneratePreviewURL,\n LabelFunction,\n LivePreviewConfig,\n} from '../../config/types.js'\nimport type { DBIdentifierName } from '../../database/types.js'\nimport type { Field } from '../../fields/config/types.js'\nimport type { GeneratedTypes } from '../../index.js'\nimport type { PayloadRequestWithData, RequestContext } from '../../types/index.js'\nimport type { SanitizedUploadConfig, UploadConfig } from '../../uploads/types.js'\nimport type {\n IncomingCollectionVersions,\n SanitizedCollectionVersions,\n} from '../../versions/types.js'\nimport type { AfterOperationArg, AfterOperationMap } from '../operations/utils.js'\n\nexport type HookOperationType =\n | 'autosave'\n | 'count'\n | 'create'\n | 'delete'\n | 'forgotPassword'\n | 'login'\n | 'read'\n | 'refresh'\n | 'update'\n\ntype CreateOrUpdateOperation = Extract<HookOperationType, 'create' | 'update'>\n\nexport type BeforeOperationHook = (args: {\n args?: any\n /** The collection which this hook is being run on */\n collection: SanitizedCollectionConfig\n context: RequestContext\n /**\n * Hook operation being performed\n */\n operation: HookOperationType\n req: PayloadRequestWithData\n}) => any\n\nexport type BeforeValidateHook<T extends TypeWithID = any> = (args: {\n /** The collection which this hook is being run on */\n collection: SanitizedCollectionConfig\n context: RequestContext\n data?: Partial<T>\n /**\n * Hook operation being performed\n */\n operation: CreateOrUpdateOperation\n /**\n * Original document before change\n *\n * `undefined` on 'create' operation\n */\n originalDoc?: T\n req: PayloadRequestWithData\n}) => any\n\nexport type BeforeChangeHook<T extends TypeWithID = any> = (args: {\n /** The collection which this hook is being run on */\n collection: SanitizedCollectionConfig\n context: RequestContext\n data: Partial<T>\n /**\n * Hook operation being performed\n */\n operation: CreateOrUpdateOperation\n /**\n * Original document before change\n *\n * `undefined` on 'create' operation\n */\n originalDoc?: T\n req: PayloadRequestWithData\n}) => any\n\nexport type AfterChangeHook<T extends TypeWithID = any> = (args: {\n /** The collection which this hook is being run on */\n collection: SanitizedCollectionConfig\n context: RequestContext\n doc: T\n /**\n * Hook operation being performed\n */\n operation: CreateOrUpdateOperation\n previousDoc: T\n req: PayloadRequestWithData\n}) => any\n\nexport type BeforeReadHook<T extends TypeWithID = any> = (args: {\n /** The collection which this hook is being run on */\n collection: SanitizedCollectionConfig\n context: RequestContext\n doc: T\n query: { [key: string]: any }\n req: PayloadRequestWithData\n}) => any\n\nexport type AfterReadHook<T extends TypeWithID = any> = (args: {\n /** The collection which this hook is being run on */\n collection: SanitizedCollectionConfig\n context: RequestContext\n doc: T\n findMany?: boolean\n query?: { [key: string]: any }\n req: PayloadRequestWithData\n}) => any\n\nexport type BeforeDeleteHook = (args: {\n /** The collection which this hook is being run on */\n collection: SanitizedCollectionConfig\n context: RequestContext\n id: number | string\n req: PayloadRequestWithData\n}) => any\n\nexport type AfterDeleteHook<T extends TypeWithID = any> = (args: {\n /** The collection which this hook is being run on */\n collection: SanitizedCollectionConfig\n context: RequestContext\n doc: T\n id: number | string\n req: PayloadRequestWithData\n}) => any\n\nexport type AfterOperationHook<T extends TypeWithID = any> = (\n arg: AfterOperationArg<T>,\n) => Promise<ReturnType<AfterOperationMap<T>[keyof AfterOperationMap<T>]>>\n\nexport type AfterErrorHook = (\n err: Error,\n res: unknown,\n context: RequestContext,\n /** The collection which this hook is being run on. This is null if the AfterError hook was be added to the payload-wide config */\n collection: SanitizedCollectionConfig | null,\n) => { response: any; status: number } | void\n\nexport type BeforeLoginHook<T extends TypeWithID = any> = (args: {\n /** The collection which this hook is being run on */\n collection: SanitizedCollectionConfig\n context: RequestContext\n req: PayloadRequestWithData\n user: T\n}) => any\n\nexport type AfterLoginHook<T extends TypeWithID = any> = (args: {\n /** The collection which this hook is being run on */\n collection: SanitizedCollectionConfig\n context: RequestContext\n req: PayloadRequestWithData\n token: string\n user: T\n}) => any\n\nexport type AfterLogoutHook<T extends TypeWithID = any> = (args: {\n /** The collection which this hook is being run on */\n collection: SanitizedCollectionConfig\n context: RequestContext\n req: PayloadRequestWithData\n}) => any\n\nexport type AfterMeHook<T extends TypeWithID = any> = (args: {\n /** The collection which this hook is being run on */\n collection: SanitizedCollectionConfig\n context: RequestContext\n req: PayloadRequestWithData\n response: unknown\n}) => any\n\nexport type AfterRefreshHook<T extends TypeWithID = any> = (args: {\n /** The collection which this hook is being run on */\n collection: SanitizedCollectionConfig\n context: RequestContext\n exp: number\n req: PayloadRequestWithData\n token: string\n}) => any\n\nexport type AfterForgotPasswordHook = (args: {\n args?: any\n /** The collection which this hook is being run on */\n collection: SanitizedCollectionConfig\n context: RequestContext\n}) => any\n\nexport type CollectionAdminOptions = {\n /**\n * Custom admin components\n */\n components?: {\n AfterList?: CustomComponent[]\n AfterListTable?: CustomComponent[]\n BeforeList?: CustomComponent[]\n BeforeListTable?: CustomComponent[]\n /**\n * Components within the edit view\n */\n edit?: {\n /**\n * Replaces the \"Preview\" button\n */\n PreviewButton?: CustomPreviewButton\n /**\n * Replaces the \"Publish\" button\n * + drafts must be enabled\n */\n PublishButton?: CustomPublishButton\n /**\n * Replaces the \"Save\" button\n * + drafts must be disabled\n */\n SaveButton?: CustomSaveButton\n /**\n * Replaces the \"Save Draft\" button\n * + drafts must be enabled\n * + autosave must be disabled\n */\n SaveDraftButton?: CustomSaveDraftButton\n }\n views?: {\n /**\n * Set to a React component to replace the entire \"Edit\" view, including all nested routes.\n * Set to an object to replace or modify individual nested routes, or to add new ones.\n */\n Edit?: EditConfig\n List?:\n | {\n Component?: React.ComponentType<any>\n actions?: CustomComponent[]\n }\n | React.ComponentType<any>\n }\n }\n /** Extension point to add your custom data. Available in server and client. */\n custom?: Record<string, any>\n /**\n * Default columns to show in list view\n */\n defaultColumns?: string[]\n /**\n * Custom description for collection\n */\n description?: EntityDescription\n enableRichTextLink?: boolean\n enableRichTextRelationship?: boolean\n /**\n * Place collections into a navigational group\n * */\n group?: Record<string, string> | string\n /**\n * Exclude the collection from the admin nav and routes\n */\n hidden?: ((args: { user: ClientUser }) => boolean) | boolean\n /**\n * Hide the API URL within the Edit view\n */\n hideAPIURL?: boolean\n /**\n * Additional fields to be searched via the full text search\n */\n listSearchableFields?: string[]\n /**\n * Live preview options\n */\n livePreview?: LivePreviewConfig\n pagination?: {\n defaultLimit?: number\n limits?: number[]\n }\n /**\n * Function to generate custom preview URL\n */\n preview?: GeneratePreviewURL\n /**\n * Field to use as title in Edit view and first column in List view\n */\n useAsTitle?: string\n}\n\n/** Manage all aspects of a data collection */\nexport type CollectionConfig = {\n /**\n * Access control\n */\n access?: {\n admin?: ({ req }: { req: PayloadRequestWithData }) => Promise<boolean> | boolean\n create?: Access\n delete?: Access\n read?: Access\n readVersions?: Access\n unlock?: Access\n update?: Access\n }\n /**\n * Collection admin options\n */\n admin?: CollectionAdminOptions\n /**\n * Collection login options\n *\n * Use `true` to enable with default options\n */\n auth?: IncomingAuthType | boolean\n /** Extension point to add your custom data. Server only. */\n custom?: Record<string, any>\n /**\n * Used to override the default naming of the database table or collection with your using a function or string\n * @WARNING: If you change this property with existing data, you will need to handle the renaming of the table in your database or by using migrations\n */\n dbName?: DBIdentifierName\n /**\n * Default field to sort by in collection list view\n */\n defaultSort?: string\n /**\n * When true, do not show the \"Duplicate\" button while editing documents within this collection and prevent `duplicate` from all APIs\n */\n disableDuplicate?: boolean\n /**\n * Custom rest api endpoints, set false to disable all rest endpoints for this collection.\n */\n endpoints?: Omit<Endpoint, 'root'>[] | false\n fields: Field[]\n /**\n * GraphQL configuration\n */\n graphQL?:\n | {\n pluralName?: string\n singularName?: string\n }\n | false\n /**\n * Hooks to modify Payload functionality\n */\n hooks?: {\n afterChange?: AfterChangeHook[]\n afterDelete?: AfterDeleteHook[]\n afterError?: AfterErrorHook\n afterForgotPassword?: AfterForgotPasswordHook[]\n afterLogin?: AfterLoginHook[]\n afterLogout?: AfterLogoutHook[]\n afterMe?: AfterMeHook[]\n afterOperation?: AfterOperationHook[]\n afterRead?: AfterReadHook[]\n afterRefresh?: AfterRefreshHook[]\n beforeChange?: BeforeChangeHook[]\n beforeDelete?: BeforeDeleteHook[]\n beforeLogin?: BeforeLoginHook[]\n beforeOperation?: BeforeOperationHook[]\n beforeRead?: BeforeReadHook[]\n beforeValidate?: BeforeValidateHook[]\n }\n /**\n * Label configuration\n */\n labels?: {\n plural?: LabelFunction | Record<string, string> | string\n singular?: LabelFunction | Record<string, string> | string\n }\n slug: string\n /**\n * Add `createdAt` and `updatedAt` fields\n *\n * @default true\n */\n timestamps?: boolean\n /**\n * Options used in typescript generation\n */\n typescript?: {\n /**\n * Typescript generation name given to the interface type\n */\n interface?: string\n }\n /**\n * Customize the handling of incoming file uploads\n *\n * @default false // disable uploads\n */\n upload?: UploadConfig | boolean\n /**\n * Customize the handling of incoming file uploads\n *\n * @default false // disable versioning\n */\n versions?: IncomingCollectionVersions | boolean\n}\n\nexport interface SanitizedCollectionConfig\n extends Omit<\n DeepRequired<CollectionConfig>,\n 'auth' | 'endpoints' | 'fields' | 'upload' | 'versions'\n > {\n auth: Auth\n endpoints: Endpoint[] | false\n fields: Field[]\n upload: SanitizedUploadConfig\n versions: SanitizedCollectionVersions\n}\n\nexport type Collection = {\n config: SanitizedCollectionConfig\n customIDType?: 'number' | 'text'\n graphQL?: {\n JWT: GraphQLObjectType\n countType: GraphQLObjectType\n mutationInputType: GraphQLNonNull<any>\n paginatedType: GraphQLObjectType\n type: GraphQLObjectType\n updateMutationInputType: GraphQLNonNull<any>\n versionType: GraphQLObjectType\n whereInputType: GraphQLInputObjectType\n }\n}\n\nexport type BulkOperationResult<TSlug extends keyof GeneratedTypes['collections']> = {\n docs: GeneratedTypes['collections'][TSlug][]\n errors: {\n id: GeneratedTypes['collections'][TSlug]['id']\n message: string\n }[]\n}\n\nexport type AuthCollection = {\n config: SanitizedCollectionConfig\n}\n\nexport type TypeWithID = {\n id: number | string\n}\n\nexport type TypeWithTimestamps = {\n [key: string]: unknown\n createdAt: string\n id: number | string\n updatedAt: string\n}\n"],"names":[],"rangeMappings":"","mappings":"AAicA,WAKC"}
@@ -1 +1 @@
1
- {"version":3,"file":"dataloader.d.ts","sourceRoot":"","sources":["../../src/collections/dataloader.ts"],"names":[],"mappings":"AAEA,OAAO,UAAU,MAAM,YAAY,CAAA;AAEnC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAA;AACvD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AAkJnD,eAAO,MAAM,aAAa,QAAS,cAAc,2CAA0C,CAAA"}
1
+ {"version":3,"file":"dataloader.d.ts","sourceRoot":"","sources":["../../src/collections/dataloader.ts"],"names":[],"mappings":"AAEA,OAAO,UAAU,MAAM,YAAY,CAAA;AAEnC,OAAO,KAAK,EAAE,cAAc,EAA0B,MAAM,mBAAmB,CAAA;AAC/E,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AAkJnD,eAAO,MAAM,aAAa,QAAS,cAAc,2CAA0C,CAAA"}
@@ -68,7 +68,7 @@ const batchAndLoadDocs = (req)=>async (keys)=>{
68
68
  locale,
69
69
  overrideAccess: Boolean(overrideAccess),
70
70
  pagination: false,
71
- req,
71
+ req: req,
72
72
  showHiddenFields: Boolean(showHiddenFields),
73
73
  where: {
74
74
  id: {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/collections/dataloader.ts"],"sourcesContent":["import type { BatchLoadFn } from 'dataloader'\n\nimport DataLoader from 'dataloader'\n\nimport type { PayloadRequest } from '../types/index.js'\nimport type { TypeWithID } from './config/types.js'\n\nimport { isValidID } from '../utilities/isValidID.js'\n\n// Payload uses `dataloader` to solve the classic GraphQL N+1 problem.\n\n// We keep a list of all documents requested to be populated for any given request\n// and then batch together documents within the same collection,\n// making only 1 find per each collection, rather than `findByID` per each requested doc.\n\n// This dramatically improves performance for REST and Local API `depth` populations,\n// and also ensures complex GraphQL queries perform lightning-fast.\n\nconst batchAndLoadDocs =\n (req: PayloadRequest): BatchLoadFn<string, TypeWithID> =>\n async (keys: string[]): Promise<TypeWithID[]> => {\n const { payload } = req\n\n // Create docs array of same length as keys, using null as value\n // We will replace nulls with injected docs as they are retrieved\n const docs: (TypeWithID | null)[] = keys.map(() => null)\n\n /**\n * Batch IDs by their `find` args\n * so we can make one find query per combination of collection, depth, locale, and fallbackLocale.\n *\n * Resulting shape will be as follows:\n {\n // key is stringified set of find args\n '[null,\"pages\",2,0,\"es\",\"en\",false,false]': [\n // value is array of IDs to find with these args\n 'q34tl23462346234524',\n '435523540194324280',\n '2346245j35l3j5234532li',\n ],\n // etc\n };\n *\n **/\n\n const batchByFindArgs = keys.reduce((batches, key) => {\n const [\n transactionID,\n collection,\n id,\n depth,\n currentDepth,\n locale,\n fallbackLocale,\n overrideAccess,\n showHiddenFields,\n ] = JSON.parse(key)\n\n const batchKeyArray = [\n transactionID,\n collection,\n depth,\n currentDepth,\n locale,\n fallbackLocale,\n overrideAccess,\n showHiddenFields,\n ]\n\n const batchKey = JSON.stringify(batchKeyArray)\n\n const idType = payload.collections?.[collection].customIDType || payload.db.defaultIDType\n\n let sanitizedID: number | string = id\n\n if (idType === 'number') sanitizedID = parseFloat(id)\n\n if (isValidID(sanitizedID, idType)) {\n return {\n ...batches,\n [batchKey]: [...(batches[batchKey] || []), sanitizedID],\n }\n }\n return batches\n }, {})\n\n // Run find requests one after another, so as to not hang transactions\n\n await Object.entries(batchByFindArgs).reduce(async (priorFind, [batchKey, ids]) => {\n await priorFind\n\n const [\n transactionID,\n collection,\n depth,\n currentDepth,\n locale,\n fallbackLocale,\n overrideAccess,\n showHiddenFields,\n ] = JSON.parse(batchKey)\n\n req.transactionID = transactionID\n\n const result = await payload.find({\n collection,\n currentDepth,\n depth,\n disableErrors: true,\n fallbackLocale,\n locale,\n overrideAccess: Boolean(overrideAccess),\n pagination: false,\n req,\n showHiddenFields: Boolean(showHiddenFields),\n where: {\n id: {\n in: ids,\n },\n },\n })\n\n // For each returned doc, find index in original keys\n // Inject doc within docs array if index exists\n\n result.docs.forEach((doc) => {\n const docKey = JSON.stringify([\n req.transactionID,\n collection,\n doc.id,\n depth,\n currentDepth,\n locale,\n fallbackLocale,\n overrideAccess,\n showHiddenFields,\n ])\n const docsIndex = keys.findIndex((key) => key === docKey)\n\n if (docsIndex > -1) {\n docs[docsIndex] = doc\n }\n })\n }, Promise.resolve())\n\n // Return docs array,\n // which has now been injected with all fetched docs\n // and should match the length of the incoming keys arg\n return docs\n }\n\nexport const getDataLoader = (req: PayloadRequest) => new DataLoader(batchAndLoadDocs(req))\n"],"names":["DataLoader","isValidID","batchAndLoadDocs","req","keys","payload","docs","map","batchByFindArgs","reduce","batches","key","transactionID","collection","id","depth","currentDepth","locale","fallbackLocale","overrideAccess","showHiddenFields","JSON","parse","batchKeyArray","batchKey","stringify","idType","collections","customIDType","db","defaultIDType","sanitizedID","parseFloat","Object","entries","priorFind","ids","result","find","disableErrors","Boolean","pagination","where","in","forEach","doc","docKey","docsIndex","findIndex","Promise","resolve","getDataLoader"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"AAEA,OAAOA,gBAAgB,aAAY;AAKnC,SAASC,SAAS,QAAQ,4BAA2B;AAErD,sEAAsE;AAEtE,kFAAkF;AAClF,gEAAgE;AAChE,yFAAyF;AAEzF,qFAAqF;AACrF,mEAAmE;AAEnE,MAAMC,mBACJ,CAACC,MACD,OAAOC;QACL,MAAM,EAAEC,OAAO,EAAE,GAAGF;QAEpB,gEAAgE;QAChE,iEAAiE;QACjE,MAAMG,OAA8BF,KAAKG,GAAG,CAAC,IAAM;QAEnD;;;;;;;;;;;;;;;;KAgBC,GAED,MAAMC,kBAAkBJ,KAAKK,MAAM,CAAC,CAACC,SAASC;YAC5C,MAAM,CACJC,eACAC,YACAC,IACAC,OACAC,cACAC,QACAC,gBACAC,gBACAC,iBACD,GAAGC,KAAKC,KAAK,CAACX;YAEf,MAAMY,gBAAgB;gBACpBX;gBACAC;gBACAE;gBACAC;gBACAC;gBACAC;gBACAC;gBACAC;aACD;YAED,MAAMI,WAAWH,KAAKI,SAAS,CAACF;YAEhC,MAAMG,SAASrB,QAAQsB,WAAW,EAAE,CAACd,WAAW,CAACe,gBAAgBvB,QAAQwB,EAAE,CAACC,aAAa;YAEzF,IAAIC,cAA+BjB;YAEnC,IAAIY,WAAW,UAAUK,cAAcC,WAAWlB;YAElD,IAAIb,UAAU8B,aAAaL,SAAS;gBAClC,OAAO;oBACL,GAAGhB,OAAO;oBACV,CAACc,SAAS,EAAE;2BAAKd,OAAO,CAACc,SAAS,IAAI,EAAE;wBAAGO;qBAAY;gBACzD;YACF;YACA,OAAOrB;QACT,GAAG,CAAC;QAEJ,sEAAsE;QAEtE,MAAMuB,OAAOC,OAAO,CAAC1B,iBAAiBC,MAAM,CAAC,OAAO0B,WAAW,CAACX,UAAUY,IAAI;YAC5E,MAAMD;YAEN,MAAM,CACJvB,eACAC,YACAE,OACAC,cACAC,QACAC,gBACAC,gBACAC,iBACD,GAAGC,KAAKC,KAAK,CAACE;YAEfrB,IAAIS,aAAa,GAAGA;YAEpB,MAAMyB,SAAS,MAAMhC,QAAQiC,IAAI,CAAC;gBAChCzB;gBACAG;gBACAD;gBACAwB,eAAe;gBACfrB;gBACAD;gBACAE,gBAAgBqB,QAAQrB;gBACxBsB,YAAY;gBACZtC;gBACAiB,kBAAkBoB,QAAQpB;gBAC1BsB,OAAO;oBACL5B,IAAI;wBACF6B,IAAIP;oBACN;gBACF;YACF;YAEA,qDAAqD;YACrD,+CAA+C;YAE/CC,OAAO/B,IAAI,CAACsC,OAAO,CAAC,CAACC;gBACnB,MAAMC,SAASzB,KAAKI,SAAS,CAAC;oBAC5BtB,IAAIS,aAAa;oBACjBC;oBACAgC,IAAI/B,EAAE;oBACNC;oBACAC;oBACAC;oBACAC;oBACAC;oBACAC;iBACD;gBACD,MAAM2B,YAAY3C,KAAK4C,SAAS,CAAC,CAACrC,MAAQA,QAAQmC;gBAElD,IAAIC,YAAY,CAAC,GAAG;oBAClBzC,IAAI,CAACyC,UAAU,GAAGF;gBACpB;YACF;QACF,GAAGI,QAAQC,OAAO;QAElB,qBAAqB;QACrB,oDAAoD;QACpD,uDAAuD;QACvD,OAAO5C;IACT;AAEF,OAAO,MAAM6C,gBAAgB,CAAChD,MAAwB,IAAIH,WAAWE,iBAAiBC,MAAK"}
1
+ {"version":3,"sources":["../../src/collections/dataloader.ts"],"sourcesContent":["import type { BatchLoadFn } from 'dataloader'\n\nimport DataLoader from 'dataloader'\n\nimport type { PayloadRequest, PayloadRequestWithData } from '../types/index.js'\nimport type { TypeWithID } from './config/types.js'\n\nimport { isValidID } from '../utilities/isValidID.js'\n\n// Payload uses `dataloader` to solve the classic GraphQL N+1 problem.\n\n// We keep a list of all documents requested to be populated for any given request\n// and then batch together documents within the same collection,\n// making only 1 find per each collection, rather than `findByID` per each requested doc.\n\n// This dramatically improves performance for REST and Local API `depth` populations,\n// and also ensures complex GraphQL queries perform lightning-fast.\n\nconst batchAndLoadDocs =\n (req: PayloadRequest): BatchLoadFn<string, TypeWithID> =>\n async (keys: string[]): Promise<TypeWithID[]> => {\n const { payload } = req\n\n // Create docs array of same length as keys, using null as value\n // We will replace nulls with injected docs as they are retrieved\n const docs: (TypeWithID | null)[] = keys.map(() => null)\n\n /**\n * Batch IDs by their `find` args\n * so we can make one find query per combination of collection, depth, locale, and fallbackLocale.\n *\n * Resulting shape will be as follows:\n {\n // key is stringified set of find args\n '[null,\"pages\",2,0,\"es\",\"en\",false,false]': [\n // value is array of IDs to find with these args\n 'q34tl23462346234524',\n '435523540194324280',\n '2346245j35l3j5234532li',\n ],\n // etc\n };\n *\n **/\n\n const batchByFindArgs = keys.reduce((batches, key) => {\n const [\n transactionID,\n collection,\n id,\n depth,\n currentDepth,\n locale,\n fallbackLocale,\n overrideAccess,\n showHiddenFields,\n ] = JSON.parse(key)\n\n const batchKeyArray = [\n transactionID,\n collection,\n depth,\n currentDepth,\n locale,\n fallbackLocale,\n overrideAccess,\n showHiddenFields,\n ]\n\n const batchKey = JSON.stringify(batchKeyArray)\n\n const idType = payload.collections?.[collection].customIDType || payload.db.defaultIDType\n\n let sanitizedID: number | string = id\n\n if (idType === 'number') sanitizedID = parseFloat(id)\n\n if (isValidID(sanitizedID, idType)) {\n return {\n ...batches,\n [batchKey]: [...(batches[batchKey] || []), sanitizedID],\n }\n }\n return batches\n }, {})\n\n // Run find requests one after another, so as to not hang transactions\n\n await Object.entries(batchByFindArgs).reduce(async (priorFind, [batchKey, ids]) => {\n await priorFind\n\n const [\n transactionID,\n collection,\n depth,\n currentDepth,\n locale,\n fallbackLocale,\n overrideAccess,\n showHiddenFields,\n ] = JSON.parse(batchKey)\n\n req.transactionID = transactionID\n\n const result = await payload.find({\n collection,\n currentDepth,\n depth,\n disableErrors: true,\n fallbackLocale,\n locale,\n overrideAccess: Boolean(overrideAccess),\n pagination: false,\n req: req as PayloadRequestWithData,\n showHiddenFields: Boolean(showHiddenFields),\n where: {\n id: {\n in: ids,\n },\n },\n })\n\n // For each returned doc, find index in original keys\n // Inject doc within docs array if index exists\n\n result.docs.forEach((doc) => {\n const docKey = JSON.stringify([\n req.transactionID,\n collection,\n doc.id,\n depth,\n currentDepth,\n locale,\n fallbackLocale,\n overrideAccess,\n showHiddenFields,\n ])\n const docsIndex = keys.findIndex((key) => key === docKey)\n\n if (docsIndex > -1) {\n docs[docsIndex] = doc\n }\n })\n }, Promise.resolve())\n\n // Return docs array,\n // which has now been injected with all fetched docs\n // and should match the length of the incoming keys arg\n return docs\n }\n\nexport const getDataLoader = (req: PayloadRequest) => new DataLoader(batchAndLoadDocs(req))\n"],"names":["DataLoader","isValidID","batchAndLoadDocs","req","keys","payload","docs","map","batchByFindArgs","reduce","batches","key","transactionID","collection","id","depth","currentDepth","locale","fallbackLocale","overrideAccess","showHiddenFields","JSON","parse","batchKeyArray","batchKey","stringify","idType","collections","customIDType","db","defaultIDType","sanitizedID","parseFloat","Object","entries","priorFind","ids","result","find","disableErrors","Boolean","pagination","where","in","forEach","doc","docKey","docsIndex","findIndex","Promise","resolve","getDataLoader"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"AAEA,OAAOA,gBAAgB,aAAY;AAKnC,SAASC,SAAS,QAAQ,4BAA2B;AAErD,sEAAsE;AAEtE,kFAAkF;AAClF,gEAAgE;AAChE,yFAAyF;AAEzF,qFAAqF;AACrF,mEAAmE;AAEnE,MAAMC,mBACJ,CAACC,MACD,OAAOC;QACL,MAAM,EAAEC,OAAO,EAAE,GAAGF;QAEpB,gEAAgE;QAChE,iEAAiE;QACjE,MAAMG,OAA8BF,KAAKG,GAAG,CAAC,IAAM;QAEnD;;;;;;;;;;;;;;;;KAgBC,GAED,MAAMC,kBAAkBJ,KAAKK,MAAM,CAAC,CAACC,SAASC;YAC5C,MAAM,CACJC,eACAC,YACAC,IACAC,OACAC,cACAC,QACAC,gBACAC,gBACAC,iBACD,GAAGC,KAAKC,KAAK,CAACX;YAEf,MAAMY,gBAAgB;gBACpBX;gBACAC;gBACAE;gBACAC;gBACAC;gBACAC;gBACAC;gBACAC;aACD;YAED,MAAMI,WAAWH,KAAKI,SAAS,CAACF;YAEhC,MAAMG,SAASrB,QAAQsB,WAAW,EAAE,CAACd,WAAW,CAACe,gBAAgBvB,QAAQwB,EAAE,CAACC,aAAa;YAEzF,IAAIC,cAA+BjB;YAEnC,IAAIY,WAAW,UAAUK,cAAcC,WAAWlB;YAElD,IAAIb,UAAU8B,aAAaL,SAAS;gBAClC,OAAO;oBACL,GAAGhB,OAAO;oBACV,CAACc,SAAS,EAAE;2BAAKd,OAAO,CAACc,SAAS,IAAI,EAAE;wBAAGO;qBAAY;gBACzD;YACF;YACA,OAAOrB;QACT,GAAG,CAAC;QAEJ,sEAAsE;QAEtE,MAAMuB,OAAOC,OAAO,CAAC1B,iBAAiBC,MAAM,CAAC,OAAO0B,WAAW,CAACX,UAAUY,IAAI;YAC5E,MAAMD;YAEN,MAAM,CACJvB,eACAC,YACAE,OACAC,cACAC,QACAC,gBACAC,gBACAC,iBACD,GAAGC,KAAKC,KAAK,CAACE;YAEfrB,IAAIS,aAAa,GAAGA;YAEpB,MAAMyB,SAAS,MAAMhC,QAAQiC,IAAI,CAAC;gBAChCzB;gBACAG;gBACAD;gBACAwB,eAAe;gBACfrB;gBACAD;gBACAE,gBAAgBqB,QAAQrB;gBACxBsB,YAAY;gBACZtC,KAAKA;gBACLiB,kBAAkBoB,QAAQpB;gBAC1BsB,OAAO;oBACL5B,IAAI;wBACF6B,IAAIP;oBACN;gBACF;YACF;YAEA,qDAAqD;YACrD,+CAA+C;YAE/CC,OAAO/B,IAAI,CAACsC,OAAO,CAAC,CAACC;gBACnB,MAAMC,SAASzB,KAAKI,SAAS,CAAC;oBAC5BtB,IAAIS,aAAa;oBACjBC;oBACAgC,IAAI/B,EAAE;oBACNC;oBACAC;oBACAC;oBACAC;oBACAC;oBACAC;iBACD;gBACD,MAAM2B,YAAY3C,KAAK4C,SAAS,CAAC,CAACrC,MAAQA,QAAQmC;gBAElD,IAAIC,YAAY,CAAC,GAAG;oBAClBzC,IAAI,CAACyC,UAAU,GAAGF;gBACpB;YACF;QACF,GAAGI,QAAQC,OAAO;QAElB,qBAAqB;QACrB,oDAAoD;QACpD,uDAAuD;QACvD,OAAO5C;IACT;AAEF,OAAO,MAAM6C,gBAAgB,CAAChD,MAAwB,IAAIH,WAAWE,iBAAiBC,MAAK"}
@@ -1,10 +1,10 @@
1
- import type { PayloadRequest, Where } from '../../types/index.js';
1
+ import type { PayloadRequestWithData, Where } from '../../types/index.js';
2
2
  import type { Collection, TypeWithID } from '../config/types.js';
3
3
  export type Arguments = {
4
4
  collection: Collection;
5
5
  disableErrors?: boolean;
6
6
  overrideAccess?: boolean;
7
- req?: PayloadRequest;
7
+ req?: PayloadRequestWithData;
8
8
  where?: Where;
9
9
  };
10
10
  export declare const countOperation: <T extends TypeWithID & Record<string, unknown>>(incomingArgs: Arguments) => Promise<{
@@ -1 +1 @@
1
- {"version":3,"file":"count.d.ts","sourceRoot":"","sources":["../../../src/collections/operations/count.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAA;AACjE,OAAO,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAA;AAUhE,MAAM,MAAM,SAAS,GAAG;IACtB,UAAU,EAAE,UAAU,CAAA;IACtB,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,GAAG,CAAC,EAAE,cAAc,CAAA;IACpB,KAAK,CAAC,EAAE,KAAK,CAAA;CACd,CAAA;AAED,eAAO,MAAM,cAAc,iEACX,SAAS,KACtB,QAAQ;IAAE,SAAS,EAAE,MAAM,CAAA;CAAE,CAwF/B,CAAA"}
1
+ {"version":3,"file":"count.d.ts","sourceRoot":"","sources":["../../../src/collections/operations/count.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,sBAAsB,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAA;AACzE,OAAO,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAA;AAUhE,MAAM,MAAM,SAAS,GAAG;IACtB,UAAU,EAAE,UAAU,CAAA;IACtB,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,GAAG,CAAC,EAAE,sBAAsB,CAAA;IAC5B,KAAK,CAAC,EAAE,KAAK,CAAA;CACd,CAAA;AAED,eAAO,MAAM,cAAc,iEACX,SAAS,KACtB,QAAQ;IAAE,SAAS,EAAE,MAAM,CAAA;CAAE,CAwF/B,CAAA"}