payload 3.0.0-beta.13 → 3.0.0-beta.131

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 (1498) hide show
  1. package/bin.js +43 -7
  2. package/dist/admin/LanguageOptions.d.ts +6 -0
  3. package/dist/admin/LanguageOptions.d.ts.map +1 -0
  4. package/dist/admin/LanguageOptions.js +3 -0
  5. package/dist/admin/LanguageOptions.js.map +1 -0
  6. package/dist/admin/RichText.d.ts +148 -38
  7. package/dist/admin/RichText.d.ts.map +1 -1
  8. package/dist/admin/RichText.js.map +1 -1
  9. package/dist/admin/elements/Cell.d.ts +25 -33
  10. package/dist/admin/elements/Cell.d.ts.map +1 -1
  11. package/dist/admin/elements/Cell.js.map +1 -1
  12. package/dist/admin/elements/DatePicker.d.ts +7 -7
  13. package/dist/admin/elements/DatePicker.d.ts.map +1 -1
  14. package/dist/admin/elements/DatePicker.js.map +1 -1
  15. package/dist/admin/elements/Nav.d.ts +10 -0
  16. package/dist/admin/elements/Nav.d.ts.map +1 -0
  17. package/dist/admin/elements/Nav.js +3 -0
  18. package/dist/admin/elements/Nav.js.map +1 -0
  19. package/dist/admin/elements/PreviewButton.js.map +1 -1
  20. package/dist/admin/elements/PublishButton.js.map +1 -1
  21. package/dist/admin/elements/SaveButton.js.map +1 -1
  22. package/dist/admin/elements/SaveDraftButton.js.map +1 -1
  23. package/dist/admin/elements/Tab.d.ts +18 -14
  24. package/dist/admin/elements/Tab.d.ts.map +1 -1
  25. package/dist/admin/elements/Tab.js.map +1 -1
  26. package/dist/admin/elements/Upload.d.ts +3 -0
  27. package/dist/admin/elements/Upload.d.ts.map +1 -0
  28. package/dist/admin/elements/Upload.js +3 -0
  29. package/dist/admin/elements/Upload.js.map +1 -0
  30. package/dist/admin/elements/WithServerSideProps.d.ts +6 -2
  31. package/dist/admin/elements/WithServerSideProps.d.ts.map +1 -1
  32. package/dist/admin/elements/WithServerSideProps.js.map +1 -1
  33. package/dist/admin/fields/Array.d.ts +22 -0
  34. package/dist/admin/fields/Array.d.ts.map +1 -0
  35. package/dist/admin/fields/Array.js +3 -0
  36. package/dist/admin/fields/Array.js.map +1 -0
  37. package/dist/admin/fields/Blocks.d.ts +22 -0
  38. package/dist/admin/fields/Blocks.d.ts.map +1 -0
  39. package/dist/admin/fields/Blocks.js +3 -0
  40. package/dist/admin/fields/Blocks.js.map +1 -0
  41. package/dist/admin/fields/Checkbox.d.ts +28 -0
  42. package/dist/admin/fields/Checkbox.d.ts.map +1 -0
  43. package/dist/admin/fields/Checkbox.js +3 -0
  44. package/dist/admin/fields/Checkbox.js.map +1 -0
  45. package/dist/admin/fields/Code.d.ts +24 -0
  46. package/dist/admin/fields/Code.d.ts.map +1 -0
  47. package/dist/admin/fields/Code.js +3 -0
  48. package/dist/admin/fields/Code.js.map +1 -0
  49. package/dist/admin/fields/Collapsible.d.ts +19 -0
  50. package/dist/admin/fields/Collapsible.d.ts.map +1 -0
  51. package/dist/admin/fields/Collapsible.js +3 -0
  52. package/dist/admin/fields/Collapsible.js.map +1 -0
  53. package/dist/admin/fields/Date.d.ts +23 -0
  54. package/dist/admin/fields/Date.d.ts.map +1 -0
  55. package/dist/admin/fields/Date.js +3 -0
  56. package/dist/admin/fields/Date.js.map +1 -0
  57. package/dist/admin/fields/Email.d.ts +23 -0
  58. package/dist/admin/fields/Email.d.ts.map +1 -0
  59. package/dist/admin/fields/Email.js +3 -0
  60. package/dist/admin/fields/Email.js.map +1 -0
  61. package/dist/admin/fields/Group.d.ts +19 -0
  62. package/dist/admin/fields/Group.d.ts.map +1 -0
  63. package/dist/admin/fields/Group.js +3 -0
  64. package/dist/admin/fields/Group.js.map +1 -0
  65. package/dist/admin/fields/Hidden.d.ts +10 -0
  66. package/dist/admin/fields/Hidden.d.ts.map +1 -0
  67. package/dist/admin/fields/Hidden.js +3 -0
  68. package/dist/admin/fields/Hidden.js.map +1 -0
  69. package/dist/admin/fields/JSON.d.ts +23 -0
  70. package/dist/admin/fields/JSON.d.ts.map +1 -0
  71. package/dist/admin/fields/JSON.js +3 -0
  72. package/dist/admin/fields/JSON.js.map +1 -0
  73. package/dist/admin/fields/Join.d.ts +21 -0
  74. package/dist/admin/fields/Join.d.ts.map +1 -0
  75. package/dist/admin/fields/Join.js +3 -0
  76. package/dist/admin/fields/Join.js.map +1 -0
  77. package/dist/admin/fields/Number.d.ts +24 -0
  78. package/dist/admin/fields/Number.d.ts.map +1 -0
  79. package/dist/admin/fields/Number.js +3 -0
  80. package/dist/admin/fields/Number.js.map +1 -0
  81. package/dist/admin/fields/Point.d.ts +23 -0
  82. package/dist/admin/fields/Point.d.ts.map +1 -0
  83. package/dist/admin/fields/Point.js +3 -0
  84. package/dist/admin/fields/Point.js.map +1 -0
  85. package/dist/admin/fields/Radio.d.ts +30 -0
  86. package/dist/admin/fields/Radio.d.ts.map +1 -0
  87. package/dist/admin/fields/Radio.js +3 -0
  88. package/dist/admin/fields/Radio.js.map +1 -0
  89. package/dist/admin/fields/Relationship.d.ts +23 -0
  90. package/dist/admin/fields/Relationship.d.ts.map +1 -0
  91. package/dist/admin/fields/Relationship.js +3 -0
  92. package/dist/admin/fields/Relationship.js.map +1 -0
  93. package/dist/admin/fields/RichText.d.ts +23 -0
  94. package/dist/admin/fields/RichText.d.ts.map +1 -0
  95. package/dist/admin/fields/RichText.js +3 -0
  96. package/dist/admin/fields/RichText.js.map +1 -0
  97. package/dist/admin/fields/Row.d.ts +20 -0
  98. package/dist/admin/fields/Row.d.ts.map +1 -0
  99. package/dist/admin/fields/Row.js +3 -0
  100. package/dist/admin/fields/Row.js.map +1 -0
  101. package/dist/admin/fields/Select.d.ts +25 -0
  102. package/dist/admin/fields/Select.d.ts.map +1 -0
  103. package/dist/admin/fields/Select.js +3 -0
  104. package/dist/admin/fields/Select.js.map +1 -0
  105. package/dist/admin/fields/Tabs.d.ts +25 -0
  106. package/dist/admin/fields/Tabs.d.ts.map +1 -0
  107. package/dist/admin/fields/Tabs.js +3 -0
  108. package/dist/admin/fields/Tabs.js.map +1 -0
  109. package/dist/admin/fields/Text.d.ts +26 -0
  110. package/dist/admin/fields/Text.d.ts.map +1 -0
  111. package/dist/admin/fields/Text.js +3 -0
  112. package/dist/admin/fields/Text.js.map +1 -0
  113. package/dist/admin/fields/Textarea.d.ts +26 -0
  114. package/dist/admin/fields/Textarea.d.ts.map +1 -0
  115. package/dist/admin/fields/Textarea.js +3 -0
  116. package/dist/admin/fields/Textarea.js.map +1 -0
  117. package/dist/admin/fields/UI.d.ts +13 -0
  118. package/dist/admin/fields/UI.d.ts.map +1 -0
  119. package/dist/admin/fields/UI.js +3 -0
  120. package/dist/admin/fields/UI.js.map +1 -0
  121. package/dist/admin/fields/Upload.d.ts +23 -0
  122. package/dist/admin/fields/Upload.d.ts.map +1 -0
  123. package/dist/admin/fields/Upload.js +3 -0
  124. package/dist/admin/fields/Upload.js.map +1 -0
  125. package/dist/admin/forms/Description.d.ts +22 -0
  126. package/dist/admin/forms/Description.d.ts.map +1 -0
  127. package/dist/admin/forms/Description.js +3 -0
  128. package/dist/admin/forms/Description.js.map +1 -0
  129. package/dist/admin/forms/Error.d.ts +17 -6
  130. package/dist/admin/forms/Error.d.ts.map +1 -1
  131. package/dist/admin/forms/Error.js.map +1 -1
  132. package/dist/admin/forms/Field.d.ts +82 -0
  133. package/dist/admin/forms/Field.d.ts.map +1 -0
  134. package/dist/admin/forms/Field.js +3 -0
  135. package/dist/admin/forms/Field.js.map +1 -0
  136. package/dist/admin/forms/Form.d.ts +51 -6
  137. package/dist/admin/forms/Form.d.ts.map +1 -1
  138. package/dist/admin/forms/Form.js.map +1 -1
  139. package/dist/admin/forms/Label.d.ts +22 -8
  140. package/dist/admin/forms/Label.d.ts.map +1 -1
  141. package/dist/admin/forms/Label.js.map +1 -1
  142. package/dist/admin/forms/RowLabel.d.ts +1 -1
  143. package/dist/admin/forms/RowLabel.d.ts.map +1 -1
  144. package/dist/admin/forms/RowLabel.js.map +1 -1
  145. package/dist/admin/functions/index.d.ts +44 -0
  146. package/dist/admin/functions/index.d.ts.map +1 -0
  147. package/dist/admin/functions/index.js +3 -0
  148. package/dist/admin/functions/index.js.map +1 -0
  149. package/dist/admin/types.d.ts +111 -9
  150. package/dist/admin/types.d.ts.map +1 -1
  151. package/dist/admin/types.js +4 -1
  152. package/dist/admin/types.js.map +1 -1
  153. package/dist/admin/views/types.d.ts +35 -20
  154. package/dist/admin/views/types.d.ts.map +1 -1
  155. package/dist/admin/views/types.js.map +1 -1
  156. package/dist/assets/assets.d.js.map +1 -1
  157. package/dist/assets/images/github-banner-nextjs-native.jpg +0 -0
  158. package/dist/auth/baseFields/accountLock.d.ts +1 -2
  159. package/dist/auth/baseFields/accountLock.d.ts.map +1 -1
  160. package/dist/auth/baseFields/accountLock.js +1 -1
  161. package/dist/auth/baseFields/accountLock.js.map +1 -1
  162. package/dist/auth/baseFields/apiKey.d.ts +1 -2
  163. package/dist/auth/baseFields/apiKey.d.ts.map +1 -1
  164. package/dist/auth/baseFields/apiKey.js +9 -8
  165. package/dist/auth/baseFields/apiKey.js.map +1 -1
  166. package/dist/auth/baseFields/auth.d.ts +1 -2
  167. package/dist/auth/baseFields/auth.d.ts.map +1 -1
  168. package/dist/auth/baseFields/auth.js +1 -16
  169. package/dist/auth/baseFields/auth.js.map +1 -1
  170. package/dist/auth/baseFields/email.d.ts +3 -0
  171. package/dist/auth/baseFields/email.d.ts.map +1 -0
  172. package/dist/auth/baseFields/email.js +25 -0
  173. package/dist/auth/baseFields/email.js.map +1 -0
  174. package/dist/auth/baseFields/username.d.ts +3 -0
  175. package/dist/auth/baseFields/username.d.ts.map +1 -0
  176. package/dist/auth/baseFields/username.js +25 -0
  177. package/dist/auth/baseFields/username.js.map +1 -0
  178. package/dist/auth/baseFields/verification.d.ts +1 -2
  179. package/dist/auth/baseFields/verification.d.ts.map +1 -1
  180. package/dist/auth/baseFields/verification.js +2 -2
  181. package/dist/auth/baseFields/verification.js.map +1 -1
  182. package/dist/auth/cookies.d.ts +5 -6
  183. package/dist/auth/cookies.d.ts.map +1 -1
  184. package/dist/auth/cookies.js +11 -11
  185. package/dist/auth/cookies.js.map +1 -1
  186. package/dist/auth/crypto.js.map +1 -1
  187. package/dist/auth/defaultAccess.js.map +1 -1
  188. package/dist/auth/defaultUser.js.map +1 -1
  189. package/dist/auth/ensureUsernameOrEmail.d.ts +17 -0
  190. package/dist/auth/ensureUsernameOrEmail.d.ts.map +1 -0
  191. package/dist/auth/ensureUsernameOrEmail.js +43 -0
  192. package/dist/auth/ensureUsernameOrEmail.js.map +1 -0
  193. package/dist/auth/executeAccess.d.ts.map +1 -1
  194. package/dist/auth/executeAccess.js +6 -2
  195. package/dist/auth/executeAccess.js.map +1 -1
  196. package/dist/auth/executeAuthStrategies.d.ts +2 -3
  197. package/dist/auth/executeAuthStrategies.d.ts.map +1 -1
  198. package/dist/auth/executeAuthStrategies.js +6 -4
  199. package/dist/auth/executeAuthStrategies.js.map +1 -1
  200. package/dist/auth/extractJWT.d.ts +1 -1
  201. package/dist/auth/extractJWT.d.ts.map +1 -1
  202. package/dist/auth/extractJWT.js.map +1 -1
  203. package/dist/auth/getAccessResults.d.ts +2 -2
  204. package/dist/auth/getAccessResults.d.ts.map +1 -1
  205. package/dist/auth/getAccessResults.js +5 -9
  206. package/dist/auth/getAccessResults.js.map +1 -1
  207. package/dist/auth/getAuthFields.d.ts +4 -0
  208. package/dist/auth/getAuthFields.d.ts.map +1 -0
  209. package/dist/auth/getAuthFields.js +45 -0
  210. package/dist/auth/getAuthFields.js.map +1 -0
  211. package/dist/auth/getFieldsToSign.d.ts +1 -1
  212. package/dist/auth/getFieldsToSign.d.ts.map +1 -1
  213. package/dist/auth/getFieldsToSign.js +14 -14
  214. package/dist/auth/getFieldsToSign.js.map +1 -1
  215. package/dist/auth/index.d.ts +2 -2
  216. package/dist/auth/index.d.ts.map +1 -1
  217. package/dist/auth/index.js +2 -2
  218. package/dist/auth/index.js.map +1 -1
  219. package/dist/auth/isLocked.d.ts.map +1 -1
  220. package/dist/auth/isLocked.js +6 -1
  221. package/dist/auth/isLocked.js.map +1 -1
  222. package/dist/auth/jwt.d.ts +9 -0
  223. package/dist/auth/jwt.d.ts.map +1 -0
  224. package/dist/auth/jwt.js +16 -0
  225. package/dist/auth/jwt.js.map +1 -0
  226. package/dist/auth/operations/access.d.ts +2 -2
  227. package/dist/auth/operations/access.d.ts.map +1 -1
  228. package/dist/auth/operations/access.js +1 -6
  229. package/dist/auth/operations/access.js.map +1 -1
  230. package/dist/auth/operations/auth.d.ts +4 -5
  231. package/dist/auth/operations/auth.d.ts.map +1 -1
  232. package/dist/auth/operations/auth.js +3 -9
  233. package/dist/auth/operations/auth.js.map +1 -1
  234. package/dist/auth/operations/forgotPassword.d.ts +5 -5
  235. package/dist/auth/operations/forgotPassword.d.ts.map +1 -1
  236. package/dist/auth/operations/forgotPassword.js +38 -20
  237. package/dist/auth/operations/forgotPassword.js.map +1 -1
  238. package/dist/auth/operations/init.d.ts.map +1 -1
  239. package/dist/auth/operations/init.js.map +1 -1
  240. package/dist/auth/operations/local/auth.d.ts.map +1 -1
  241. package/dist/auth/operations/local/auth.js +2 -2
  242. package/dist/auth/operations/local/auth.js.map +1 -1
  243. package/dist/auth/operations/local/forgotPassword.d.ts +3 -3
  244. package/dist/auth/operations/local/forgotPassword.d.ts.map +1 -1
  245. package/dist/auth/operations/local/forgotPassword.js.map +1 -1
  246. package/dist/auth/operations/local/index.js.map +1 -1
  247. package/dist/auth/operations/local/login.d.ts +6 -10
  248. package/dist/auth/operations/local/login.d.ts.map +1 -1
  249. package/dist/auth/operations/local/login.js.map +1 -1
  250. package/dist/auth/operations/local/resetPassword.d.ts +3 -4
  251. package/dist/auth/operations/local/resetPassword.d.ts.map +1 -1
  252. package/dist/auth/operations/local/resetPassword.js.map +1 -1
  253. package/dist/auth/operations/local/unlock.d.ts +5 -8
  254. package/dist/auth/operations/local/unlock.d.ts.map +1 -1
  255. package/dist/auth/operations/local/unlock.js.map +1 -1
  256. package/dist/auth/operations/local/verifyEmail.d.ts +3 -4
  257. package/dist/auth/operations/local/verifyEmail.d.ts.map +1 -1
  258. package/dist/auth/operations/local/verifyEmail.js.map +1 -1
  259. package/dist/auth/operations/login.d.ts +7 -10
  260. package/dist/auth/operations/login.d.ts.map +1 -1
  261. package/dist/auth/operations/login.js +111 -32
  262. package/dist/auth/operations/login.js.map +1 -1
  263. package/dist/auth/operations/logout.d.ts.map +1 -1
  264. package/dist/auth/operations/logout.js +6 -2
  265. package/dist/auth/operations/logout.js.map +1 -1
  266. package/dist/auth/operations/me.d.ts +2 -1
  267. package/dist/auth/operations/me.d.ts.map +1 -1
  268. package/dist/auth/operations/me.js +33 -11
  269. package/dist/auth/operations/me.js.map +1 -1
  270. package/dist/auth/operations/refresh.d.ts +3 -3
  271. package/dist/auth/operations/refresh.d.ts.map +1 -1
  272. package/dist/auth/operations/refresh.js +45 -19
  273. package/dist/auth/operations/refresh.js.map +1 -1
  274. package/dist/auth/operations/registerFirstUser.d.ts +7 -13
  275. package/dist/auth/operations/registerFirstUser.d.ts.map +1 -1
  276. package/dist/auth/operations/registerFirstUser.js +14 -2
  277. package/dist/auth/operations/registerFirstUser.js.map +1 -1
  278. package/dist/auth/operations/resetPassword.d.ts +0 -1
  279. package/dist/auth/operations/resetPassword.d.ts.map +1 -1
  280. package/dist/auth/operations/resetPassword.js +32 -9
  281. package/dist/auth/operations/resetPassword.js.map +1 -1
  282. package/dist/auth/operations/unlock.d.ts +5 -7
  283. package/dist/auth/operations/unlock.d.ts.map +1 -1
  284. package/dist/auth/operations/unlock.js +25 -16
  285. package/dist/auth/operations/unlock.js.map +1 -1
  286. package/dist/auth/operations/verifyEmail.d.ts.map +1 -1
  287. package/dist/auth/operations/verifyEmail.js +6 -3
  288. package/dist/auth/operations/verifyEmail.js.map +1 -1
  289. package/dist/auth/sendVerificationEmail.d.ts.map +1 -1
  290. package/dist/auth/sendVerificationEmail.js +5 -5
  291. package/dist/auth/sendVerificationEmail.js.map +1 -1
  292. package/dist/auth/strategies/apiKey.d.ts.map +1 -1
  293. package/dist/auth/strategies/apiKey.js +9 -3
  294. package/dist/auth/strategies/apiKey.js.map +1 -1
  295. package/dist/auth/strategies/jwt.d.ts.map +1 -1
  296. package/dist/auth/strategies/jwt.js +74 -5
  297. package/dist/auth/strategies/jwt.js.map +1 -1
  298. package/dist/auth/strategies/local/authenticate.d.ts +1 -1
  299. package/dist/auth/strategies/local/authenticate.d.ts.map +1 -1
  300. package/dist/auth/strategies/local/authenticate.js +3 -1
  301. package/dist/auth/strategies/local/authenticate.js.map +1 -1
  302. package/dist/auth/strategies/local/generatePasswordSaltHash.d.ts +5 -1
  303. package/dist/auth/strategies/local/generatePasswordSaltHash.d.ts.map +1 -1
  304. package/dist/auth/strategies/local/generatePasswordSaltHash.js +23 -14
  305. package/dist/auth/strategies/local/generatePasswordSaltHash.js.map +1 -1
  306. package/dist/auth/strategies/local/incrementLoginAttempts.d.ts +1 -1
  307. package/dist/auth/strategies/local/incrementLoginAttempts.d.ts.map +1 -1
  308. package/dist/auth/strategies/local/incrementLoginAttempts.js +1 -1
  309. package/dist/auth/strategies/local/incrementLoginAttempts.js.map +1 -1
  310. package/dist/auth/strategies/local/register.d.ts +5 -4
  311. package/dist/auth/strategies/local/register.d.ts.map +1 -1
  312. package/dist/auth/strategies/local/register.js +49 -15
  313. package/dist/auth/strategies/local/register.js.map +1 -1
  314. package/dist/auth/strategies/local/resetLoginAttempts.d.ts +1 -1
  315. package/dist/auth/strategies/local/resetLoginAttempts.d.ts.map +1 -1
  316. package/dist/auth/strategies/local/resetLoginAttempts.js +3 -1
  317. package/dist/auth/strategies/local/resetLoginAttempts.js.map +1 -1
  318. package/dist/auth/types.d.ts +149 -22
  319. package/dist/auth/types.d.ts.map +1 -1
  320. package/dist/auth/types.js.map +1 -1
  321. package/dist/bin/generateImportMap/index.d.ts +47 -0
  322. package/dist/bin/generateImportMap/index.d.ts.map +1 -0
  323. package/dist/bin/generateImportMap/index.js +157 -0
  324. package/dist/bin/generateImportMap/index.js.map +1 -0
  325. package/dist/bin/generateImportMap/iterateCollections.d.ts +12 -0
  326. package/dist/bin/generateImportMap/iterateCollections.d.ts.map +1 -0
  327. package/dist/bin/generateImportMap/iterateCollections.js +41 -0
  328. package/dist/bin/generateImportMap/iterateCollections.js.map +1 -0
  329. package/dist/bin/generateImportMap/iterateConfig.d.ts +10 -0
  330. package/dist/bin/generateImportMap/iterateConfig.d.ts.map +1 -0
  331. package/dist/bin/generateImportMap/iterateConfig.js +78 -0
  332. package/dist/bin/generateImportMap/iterateConfig.js.map +1 -0
  333. package/dist/bin/generateImportMap/iterateFields.d.ts +12 -0
  334. package/dist/bin/generateImportMap/iterateFields.d.ts.map +1 -0
  335. package/dist/bin/generateImportMap/iterateFields.js +56 -0
  336. package/dist/bin/generateImportMap/iterateFields.js.map +1 -0
  337. package/dist/bin/generateImportMap/iterateGlobals.d.ts +12 -0
  338. package/dist/bin/generateImportMap/iterateGlobals.d.ts.map +1 -0
  339. package/dist/bin/generateImportMap/iterateGlobals.js +34 -0
  340. package/dist/bin/generateImportMap/iterateGlobals.js.map +1 -0
  341. package/dist/bin/generateImportMap/parsePayloadComponent.d.ts +6 -0
  342. package/dist/bin/generateImportMap/parsePayloadComponent.d.ts.map +1 -0
  343. package/dist/bin/generateImportMap/parsePayloadComponent.js +22 -0
  344. package/dist/bin/generateImportMap/parsePayloadComponent.js.map +1 -0
  345. package/dist/bin/generateTypes.d.ts +3 -1
  346. package/dist/bin/generateTypes.d.ts.map +1 -1
  347. package/dist/bin/generateTypes.js +32 -10
  348. package/dist/bin/generateTypes.js.map +1 -1
  349. package/dist/bin/index.d.ts +1 -1
  350. package/dist/bin/index.d.ts.map +1 -1
  351. package/dist/bin/index.js +71 -7
  352. package/dist/bin/index.js.map +1 -1
  353. package/dist/bin/info.d.ts +2 -0
  354. package/dist/bin/info.d.ts.map +1 -0
  355. package/dist/bin/info.js +56 -0
  356. package/dist/bin/info.js.map +1 -0
  357. package/dist/bin/loadEnv.d.ts +2 -2
  358. package/dist/bin/loadEnv.d.ts.map +1 -1
  359. package/dist/bin/loadEnv.js +21 -17
  360. package/dist/bin/loadEnv.js.map +1 -1
  361. package/dist/bin/migrate.d.ts.map +1 -1
  362. package/dist/bin/migrate.js +17 -17
  363. package/dist/bin/migrate.js.map +1 -1
  364. package/dist/checkPayloadDependencies.d.ts +2 -0
  365. package/dist/checkPayloadDependencies.d.ts.map +1 -0
  366. package/dist/checkPayloadDependencies.js +22 -0
  367. package/dist/checkPayloadDependencies.js.map +1 -0
  368. package/dist/collections/config/build.js.map +1 -1
  369. package/dist/collections/config/client.d.ts +25 -318
  370. package/dist/collections/config/client.d.ts.map +1 -1
  371. package/dist/collections/config/client.js +92 -57
  372. package/dist/collections/config/client.js.map +1 -1
  373. package/dist/collections/config/defaults.d.ts +5 -65
  374. package/dist/collections/config/defaults.d.ts.map +1 -1
  375. package/dist/collections/config/defaults.js +9 -1
  376. package/dist/collections/config/defaults.js.map +1 -1
  377. package/dist/collections/config/reservedFieldNames.d.ts +15 -0
  378. package/dist/collections/config/reservedFieldNames.d.ts.map +1 -0
  379. package/dist/collections/config/reservedFieldNames.js +104 -0
  380. package/dist/collections/config/reservedFieldNames.js.map +1 -0
  381. package/dist/collections/config/reservedFieldNames.spec.js +148 -0
  382. package/dist/collections/config/reservedFieldNames.spec.js.map +1 -0
  383. package/dist/collections/config/sanitize.d.ts +2 -3
  384. package/dist/collections/config/sanitize.d.ts.map +1 -1
  385. package/dist/collections/config/sanitize.js +83 -50
  386. package/dist/collections/config/sanitize.js.map +1 -1
  387. package/dist/collections/config/types.d.ts +123 -41
  388. package/dist/collections/config/types.d.ts.map +1 -1
  389. package/dist/collections/config/types.js.map +1 -1
  390. package/dist/collections/config/useAsTitle.d.ts +6 -0
  391. package/dist/collections/config/useAsTitle.d.ts.map +1 -0
  392. package/dist/collections/config/useAsTitle.js +36 -0
  393. package/dist/collections/config/useAsTitle.js.map +1 -0
  394. package/dist/collections/config/useAsTitle.spec.js +186 -0
  395. package/dist/collections/config/useAsTitle.spec.js.map +1 -0
  396. package/dist/collections/dataloader.d.ts +16 -1
  397. package/dist/collections/dataloader.d.ts.map +1 -1
  398. package/dist/collections/dataloader.js +33 -12
  399. package/dist/collections/dataloader.js.map +1 -1
  400. package/dist/collections/operations/count.d.ts +3 -2
  401. package/dist/collections/operations/count.d.ts.map +1 -1
  402. package/dist/collections/operations/count.js +0 -4
  403. package/dist/collections/operations/count.js.map +1 -1
  404. package/dist/collections/operations/countVersions.d.ts +14 -0
  405. package/dist/collections/operations/countVersions.d.ts.map +1 -0
  406. package/dist/collections/operations/countVersions.js +74 -0
  407. package/dist/collections/operations/countVersions.js.map +1 -0
  408. package/dist/collections/operations/create.d.ts +9 -10
  409. package/dist/collections/operations/create.d.ts.map +1 -1
  410. package/dist/collections/operations/create.js +24 -27
  411. package/dist/collections/operations/create.js.map +1 -1
  412. package/dist/collections/operations/delete.d.ts +8 -10
  413. package/dist/collections/operations/delete.d.ts.map +1 -1
  414. package/dist/collections/operations/delete.js +21 -4
  415. package/dist/collections/operations/delete.js.map +1 -1
  416. package/dist/collections/operations/deleteByID.d.ts +7 -2
  417. package/dist/collections/operations/deleteByID.d.ts.map +1 -1
  418. package/dist/collections/operations/deleteByID.js +26 -5
  419. package/dist/collections/operations/deleteByID.js.map +1 -1
  420. package/dist/collections/operations/docAccess.d.ts.map +1 -1
  421. package/dist/collections/operations/docAccess.js +0 -4
  422. package/dist/collections/operations/docAccess.js.map +1 -1
  423. package/dist/collections/operations/duplicate.d.ts +7 -4
  424. package/dist/collections/operations/duplicate.d.ts.map +1 -1
  425. package/dist/collections/operations/duplicate.js +51 -15
  426. package/dist/collections/operations/duplicate.js.map +1 -1
  427. package/dist/collections/operations/find.d.ts +9 -4
  428. package/dist/collections/operations/find.d.ts.map +1 -1
  429. package/dist/collections/operations/find.js +81 -7
  430. package/dist/collections/operations/find.js.map +1 -1
  431. package/dist/collections/operations/findByID.d.ts +8 -3
  432. package/dist/collections/operations/findByID.d.ts.map +1 -1
  433. package/dist/collections/operations/findByID.js +85 -17
  434. package/dist/collections/operations/findByID.js.map +1 -1
  435. package/dist/collections/operations/findVersionByID.d.ts +4 -2
  436. package/dist/collections/operations/findVersionByID.d.ts.map +1 -1
  437. package/dist/collections/operations/findVersionByID.js +15 -9
  438. package/dist/collections/operations/findVersionByID.js.map +1 -1
  439. package/dist/collections/operations/findVersions.d.ts +5 -3
  440. package/dist/collections/operations/findVersions.d.ts.map +1 -1
  441. package/dist/collections/operations/findVersions.js +6 -6
  442. package/dist/collections/operations/findVersions.js.map +1 -1
  443. package/dist/collections/operations/local/count.d.ts +6 -6
  444. package/dist/collections/operations/local/count.d.ts.map +1 -1
  445. package/dist/collections/operations/local/count.js +1 -0
  446. package/dist/collections/operations/local/count.js.map +1 -1
  447. package/dist/collections/operations/local/countVersions.d.ts +20 -0
  448. package/dist/collections/operations/local/countVersions.d.ts.map +1 -0
  449. package/dist/collections/operations/local/countVersions.js +20 -0
  450. package/dist/collections/operations/local/countVersions.js.map +1 -0
  451. package/dist/collections/operations/local/create.d.ts +11 -9
  452. package/dist/collections/operations/local/create.d.ts.map +1 -1
  453. package/dist/collections/operations/local/create.js +4 -1
  454. package/dist/collections/operations/local/create.js.map +1 -1
  455. package/dist/collections/operations/local/delete.d.ts +19 -17
  456. package/dist/collections/operations/local/delete.d.ts.map +1 -1
  457. package/dist/collections/operations/local/delete.js +5 -1
  458. package/dist/collections/operations/local/delete.js.map +1 -1
  459. package/dist/collections/operations/local/duplicate.d.ts +11 -7
  460. package/dist/collections/operations/local/duplicate.d.ts.map +1 -1
  461. package/dist/collections/operations/local/duplicate.js +5 -2
  462. package/dist/collections/operations/local/duplicate.js.map +1 -1
  463. package/dist/collections/operations/local/find.d.ts +13 -8
  464. package/dist/collections/operations/local/find.d.ts.map +1 -1
  465. package/dist/collections/operations/local/find.js +6 -2
  466. package/dist/collections/operations/local/find.js.map +1 -1
  467. package/dist/collections/operations/local/findByID.d.ts +13 -8
  468. package/dist/collections/operations/local/findByID.d.ts.map +1 -1
  469. package/dist/collections/operations/local/findByID.js +6 -2
  470. package/dist/collections/operations/local/findByID.js.map +1 -1
  471. package/dist/collections/operations/local/findVersionByID.d.ts +10 -7
  472. package/dist/collections/operations/local/findVersionByID.d.ts.map +1 -1
  473. package/dist/collections/operations/local/findVersionByID.js +3 -1
  474. package/dist/collections/operations/local/findVersionByID.js.map +1 -1
  475. package/dist/collections/operations/local/findVersions.d.ts +11 -8
  476. package/dist/collections/operations/local/findVersions.d.ts.map +1 -1
  477. package/dist/collections/operations/local/findVersions.js +3 -1
  478. package/dist/collections/operations/local/findVersions.js.map +1 -1
  479. package/dist/collections/operations/local/index.d.ts +4 -2
  480. package/dist/collections/operations/local/index.d.ts.map +1 -1
  481. package/dist/collections/operations/local/index.js +5 -3
  482. package/dist/collections/operations/local/index.js.map +1 -1
  483. package/dist/collections/operations/local/restoreVersion.d.ts +10 -7
  484. package/dist/collections/operations/local/restoreVersion.d.ts.map +1 -1
  485. package/dist/collections/operations/local/restoreVersion.js +3 -1
  486. package/dist/collections/operations/local/restoreVersion.js.map +1 -1
  487. package/dist/collections/operations/local/update.d.ts +22 -15
  488. package/dist/collections/operations/local/update.d.ts.map +1 -1
  489. package/dist/collections/operations/local/update.js +7 -1
  490. package/dist/collections/operations/local/update.js.map +1 -1
  491. package/dist/collections/operations/restoreVersion.d.ts +5 -2
  492. package/dist/collections/operations/restoreVersion.d.ts.map +1 -1
  493. package/dist/collections/operations/restoreVersion.js +18 -10
  494. package/dist/collections/operations/restoreVersion.js.map +1 -1
  495. package/dist/collections/operations/update.d.ts +11 -7
  496. package/dist/collections/operations/update.d.ts.map +1 -1
  497. package/dist/collections/operations/update.js +42 -13
  498. package/dist/collections/operations/update.js.map +1 -1
  499. package/dist/collections/operations/updateByID.d.ts +11 -8
  500. package/dist/collections/operations/updateByID.d.ts.map +1 -1
  501. package/dist/collections/operations/updateByID.js +80 -17
  502. package/dist/collections/operations/updateByID.js.map +1 -1
  503. package/dist/collections/operations/utils.d.ts +45 -36
  504. package/dist/collections/operations/utils.d.ts.map +1 -1
  505. package/dist/collections/operations/utils.js +0 -1
  506. package/dist/collections/operations/utils.js.map +1 -1
  507. package/dist/config/build.d.ts.map +1 -1
  508. package/dist/config/build.js +3 -4
  509. package/dist/config/build.js.map +1 -1
  510. package/dist/config/client.d.ts +16 -11
  511. package/dist/config/client.d.ts.map +1 -1
  512. package/dist/config/client.js +43 -49
  513. package/dist/config/client.js.map +1 -1
  514. package/dist/config/defaults.d.ts.map +1 -1
  515. package/dist/config/defaults.js +30 -5
  516. package/dist/config/defaults.js.map +1 -1
  517. package/dist/config/find.d.ts +4 -0
  518. package/dist/config/find.d.ts.map +1 -1
  519. package/dist/config/find.js +40 -44
  520. package/dist/config/find.js.map +1 -1
  521. package/dist/config/sanitize.d.ts +1 -1
  522. package/dist/config/sanitize.d.ts.map +1 -1
  523. package/dist/config/sanitize.js +118 -15
  524. package/dist/config/sanitize.js.map +1 -1
  525. package/dist/config/types.d.ts +527 -131
  526. package/dist/config/types.d.ts.map +1 -1
  527. package/dist/config/types.js +7 -1
  528. package/dist/config/types.js.map +1 -1
  529. package/dist/database/combineQueries.d.ts +1 -1
  530. package/dist/database/combineQueries.d.ts.map +1 -1
  531. package/dist/database/combineQueries.js +9 -3
  532. package/dist/database/combineQueries.js.map +1 -1
  533. package/dist/database/createDatabaseAdapter.d.ts.map +1 -1
  534. package/dist/database/createDatabaseAdapter.js +1 -1
  535. package/dist/database/createDatabaseAdapter.js.map +1 -1
  536. package/dist/database/defaultBeginTransaction.d.ts +6 -0
  537. package/dist/database/defaultBeginTransaction.d.ts.map +1 -0
  538. package/dist/database/defaultBeginTransaction.js +8 -0
  539. package/dist/database/defaultBeginTransaction.js.map +1 -0
  540. package/dist/database/flattenWhereToOperators.js.map +1 -1
  541. package/dist/database/getLocalizedPaths.d.ts.map +1 -1
  542. package/dist/database/getLocalizedPaths.js +6 -5
  543. package/dist/database/getLocalizedPaths.js.map +1 -1
  544. package/dist/database/migrations/createMigration.d.ts.map +1 -1
  545. package/dist/database/migrations/createMigration.js +6 -2
  546. package/dist/database/migrations/createMigration.js.map +1 -1
  547. package/dist/database/migrations/getMigrations.js.map +1 -1
  548. package/dist/database/migrations/getPredefinedMigration.d.ts +12 -0
  549. package/dist/database/migrations/getPredefinedMigration.d.ts.map +1 -0
  550. package/dist/database/migrations/getPredefinedMigration.js +43 -0
  551. package/dist/database/migrations/getPredefinedMigration.js.map +1 -0
  552. package/dist/database/migrations/migrate.d.ts +1 -1
  553. package/dist/database/migrations/migrate.d.ts.map +1 -1
  554. package/dist/database/migrations/migrate.js +5 -5
  555. package/dist/database/migrations/migrate.js.map +1 -1
  556. package/dist/database/migrations/migrateDown.d.ts.map +1 -1
  557. package/dist/database/migrations/migrateDown.js +1 -1
  558. package/dist/database/migrations/migrateDown.js.map +1 -1
  559. package/dist/database/migrations/migrateRefresh.d.ts.map +1 -1
  560. package/dist/database/migrations/migrateRefresh.js +48 -48
  561. package/dist/database/migrations/migrateRefresh.js.map +1 -1
  562. package/dist/database/migrations/migrateReset.d.ts.map +1 -1
  563. package/dist/database/migrations/migrateReset.js +2 -2
  564. package/dist/database/migrations/migrateReset.js.map +1 -1
  565. package/dist/database/migrations/migrateStatus.js +0 -1
  566. package/dist/database/migrations/migrateStatus.js.map +1 -1
  567. package/dist/database/migrations/migrationTemplate.js.map +1 -1
  568. package/dist/database/migrations/migrationsCollection.d.ts.map +1 -1
  569. package/dist/database/migrations/migrationsCollection.js +2 -1
  570. package/dist/database/migrations/migrationsCollection.js.map +1 -1
  571. package/dist/database/migrations/readMigrationFiles.d.ts.map +1 -1
  572. package/dist/database/migrations/readMigrationFiles.js +6 -3
  573. package/dist/database/migrations/readMigrationFiles.js.map +1 -1
  574. package/dist/database/migrations/writeMigrationIndex.d.ts +4 -0
  575. package/dist/database/migrations/writeMigrationIndex.d.ts.map +1 -0
  576. package/dist/database/migrations/writeMigrationIndex.js +32 -0
  577. package/dist/database/migrations/writeMigrationIndex.js.map +1 -0
  578. package/dist/database/queryValidation/types.js.map +1 -1
  579. package/dist/database/queryValidation/validateQueryPaths.d.ts.map +1 -1
  580. package/dist/database/queryValidation/validateQueryPaths.js +4 -4
  581. package/dist/database/queryValidation/validateQueryPaths.js.map +1 -1
  582. package/dist/database/queryValidation/validateSearchParams.d.ts.map +1 -1
  583. package/dist/database/queryValidation/validateSearchParams.js +14 -5
  584. package/dist/database/queryValidation/validateSearchParams.js.map +1 -1
  585. package/dist/database/sanitizeJoinQuery.d.ts +22 -0
  586. package/dist/database/sanitizeJoinQuery.d.ts.map +1 -0
  587. package/dist/database/sanitizeJoinQuery.js +61 -0
  588. package/dist/database/sanitizeJoinQuery.js.map +1 -0
  589. package/dist/database/types.d.ts +123 -48
  590. package/dist/database/types.d.ts.map +1 -1
  591. package/dist/database/types.js.map +1 -1
  592. package/dist/email/consoleEmailAdapter.d.ts.map +1 -1
  593. package/dist/email/consoleEmailAdapter.js +1 -0
  594. package/dist/email/consoleEmailAdapter.js.map +1 -1
  595. package/dist/email/defaults.js.map +1 -1
  596. package/dist/email/getStringifiedToAddress.js.map +1 -1
  597. package/dist/email/sendEmail.js.map +1 -1
  598. package/dist/email/types.d.ts +1 -0
  599. package/dist/email/types.d.ts.map +1 -1
  600. package/dist/email/types.js.map +1 -1
  601. package/dist/errors/APIError.d.ts +3 -2
  602. package/dist/errors/APIError.d.ts.map +1 -1
  603. package/dist/errors/APIError.js +9 -4
  604. package/dist/errors/APIError.js.map +1 -1
  605. package/dist/errors/AuthenticationError.d.ts +3 -4
  606. package/dist/errors/AuthenticationError.d.ts.map +1 -1
  607. package/dist/errors/AuthenticationError.js +4 -5
  608. package/dist/errors/AuthenticationError.js.map +1 -1
  609. package/dist/errors/DuplicateCollection.d.ts +2 -3
  610. package/dist/errors/DuplicateCollection.d.ts.map +1 -1
  611. package/dist/errors/DuplicateCollection.js +2 -3
  612. package/dist/errors/DuplicateCollection.js.map +1 -1
  613. package/dist/errors/DuplicateFieldName.d.ts +2 -3
  614. package/dist/errors/DuplicateFieldName.d.ts.map +1 -1
  615. package/dist/errors/DuplicateFieldName.js +2 -3
  616. package/dist/errors/DuplicateFieldName.js.map +1 -1
  617. package/dist/errors/DuplicateGlobal.d.ts +2 -3
  618. package/dist/errors/DuplicateGlobal.d.ts.map +1 -1
  619. package/dist/errors/DuplicateGlobal.js +2 -3
  620. package/dist/errors/DuplicateGlobal.js.map +1 -1
  621. package/dist/errors/ErrorDeletingFile.d.ts +2 -3
  622. package/dist/errors/ErrorDeletingFile.d.ts.map +1 -1
  623. package/dist/errors/ErrorDeletingFile.js +2 -3
  624. package/dist/errors/ErrorDeletingFile.js.map +1 -1
  625. package/dist/errors/FileRetrievalError.d.ts +6 -0
  626. package/dist/errors/FileRetrievalError.d.ts.map +1 -0
  627. package/dist/errors/FileRetrievalError.js +13 -0
  628. package/dist/errors/FileRetrievalError.js.map +1 -0
  629. package/dist/errors/FileUploadError.d.ts +2 -3
  630. package/dist/errors/FileUploadError.d.ts.map +1 -1
  631. package/dist/errors/FileUploadError.js +2 -3
  632. package/dist/errors/FileUploadError.js.map +1 -1
  633. package/dist/errors/Forbidden.d.ts +2 -3
  634. package/dist/errors/Forbidden.d.ts.map +1 -1
  635. package/dist/errors/Forbidden.js +2 -3
  636. package/dist/errors/Forbidden.js.map +1 -1
  637. package/dist/errors/InvalidConfiguration.d.ts +2 -3
  638. package/dist/errors/InvalidConfiguration.d.ts.map +1 -1
  639. package/dist/errors/InvalidConfiguration.js +2 -3
  640. package/dist/errors/InvalidConfiguration.js.map +1 -1
  641. package/dist/errors/InvalidFieldJoin.d.ts +6 -0
  642. package/dist/errors/InvalidFieldJoin.d.ts.map +1 -0
  643. package/dist/errors/InvalidFieldJoin.js +8 -0
  644. package/dist/errors/InvalidFieldJoin.js.map +1 -0
  645. package/dist/errors/InvalidFieldName.d.ts +2 -3
  646. package/dist/errors/InvalidFieldName.d.ts.map +1 -1
  647. package/dist/errors/InvalidFieldName.js +2 -3
  648. package/dist/errors/InvalidFieldName.js.map +1 -1
  649. package/dist/errors/InvalidFieldRelationship.d.ts +2 -3
  650. package/dist/errors/InvalidFieldRelationship.d.ts.map +1 -1
  651. package/dist/errors/InvalidFieldRelationship.js +2 -3
  652. package/dist/errors/InvalidFieldRelationship.js.map +1 -1
  653. package/dist/errors/InvalidSchema.d.ts +2 -3
  654. package/dist/errors/InvalidSchema.d.ts.map +1 -1
  655. package/dist/errors/InvalidSchema.js +2 -3
  656. package/dist/errors/InvalidSchema.js.map +1 -1
  657. package/dist/errors/Locked.d.ts +5 -0
  658. package/dist/errors/Locked.d.ts.map +1 -0
  659. package/dist/errors/Locked.js +9 -0
  660. package/dist/errors/Locked.js.map +1 -0
  661. package/dist/errors/LockedAuth.d.ts +2 -3
  662. package/dist/errors/LockedAuth.d.ts.map +1 -1
  663. package/dist/errors/LockedAuth.js +2 -3
  664. package/dist/errors/LockedAuth.js.map +1 -1
  665. package/dist/errors/MissingCollectionLabel.d.ts +2 -3
  666. package/dist/errors/MissingCollectionLabel.d.ts.map +1 -1
  667. package/dist/errors/MissingCollectionLabel.js +2 -3
  668. package/dist/errors/MissingCollectionLabel.js.map +1 -1
  669. package/dist/errors/MissingEditorProp.d.ts +2 -3
  670. package/dist/errors/MissingEditorProp.d.ts.map +1 -1
  671. package/dist/errors/MissingEditorProp.js +3 -4
  672. package/dist/errors/MissingEditorProp.js.map +1 -1
  673. package/dist/errors/MissingFieldInputOptions.d.ts +2 -3
  674. package/dist/errors/MissingFieldInputOptions.d.ts.map +1 -1
  675. package/dist/errors/MissingFieldInputOptions.js +2 -3
  676. package/dist/errors/MissingFieldInputOptions.js.map +1 -1
  677. package/dist/errors/MissingFieldType.d.ts +2 -3
  678. package/dist/errors/MissingFieldType.d.ts.map +1 -1
  679. package/dist/errors/MissingFieldType.js +2 -3
  680. package/dist/errors/MissingFieldType.js.map +1 -1
  681. package/dist/errors/MissingFile.d.ts +2 -3
  682. package/dist/errors/MissingFile.d.ts.map +1 -1
  683. package/dist/errors/MissingFile.js +2 -3
  684. package/dist/errors/MissingFile.js.map +1 -1
  685. package/dist/errors/NotFound.d.ts +2 -3
  686. package/dist/errors/NotFound.d.ts.map +1 -1
  687. package/dist/errors/NotFound.js +2 -3
  688. package/dist/errors/NotFound.js.map +1 -1
  689. package/dist/errors/QueryError.d.ts +2 -3
  690. package/dist/errors/QueryError.d.ts.map +1 -1
  691. package/dist/errors/QueryError.js +2 -3
  692. package/dist/errors/QueryError.js.map +1 -1
  693. package/dist/errors/ReservedFieldName.d.ts +6 -0
  694. package/dist/errors/ReservedFieldName.d.ts.map +1 -0
  695. package/dist/errors/ReservedFieldName.js +8 -0
  696. package/dist/errors/ReservedFieldName.js.map +1 -0
  697. package/dist/errors/TimestampsRequired.d.ts +2 -3
  698. package/dist/errors/TimestampsRequired.d.ts.map +1 -1
  699. package/dist/errors/TimestampsRequired.js +2 -3
  700. package/dist/errors/TimestampsRequired.js.map +1 -1
  701. package/dist/errors/UnathorizedError.d.ts +2 -3
  702. package/dist/errors/UnathorizedError.d.ts.map +1 -1
  703. package/dist/errors/UnathorizedError.js +2 -3
  704. package/dist/errors/UnathorizedError.js.map +1 -1
  705. package/dist/errors/ValidationError.d.ts +15 -8
  706. package/dist/errors/ValidationError.d.ts.map +1 -1
  707. package/dist/errors/ValidationError.js +8 -6
  708. package/dist/errors/ValidationError.js.map +1 -1
  709. package/dist/errors/index.d.ts +24 -19
  710. package/dist/errors/index.d.ts.map +1 -1
  711. package/dist/errors/index.js +23 -19
  712. package/dist/errors/index.js.map +1 -1
  713. package/dist/errors/types.d.ts +4 -0
  714. package/dist/errors/types.d.ts.map +1 -1
  715. package/dist/errors/types.js.map +1 -1
  716. package/dist/exports/components/utilities.js.map +1 -1
  717. package/dist/exports/i18n/ar.js.map +1 -1
  718. package/dist/exports/i18n/az.js.map +1 -1
  719. package/dist/exports/i18n/bg.js.map +1 -1
  720. package/dist/exports/i18n/cs.js.map +1 -1
  721. package/dist/exports/i18n/da.d.ts +2 -0
  722. package/dist/exports/i18n/da.d.ts.map +1 -0
  723. package/dist/exports/i18n/da.js +3 -0
  724. package/dist/exports/i18n/da.js.map +1 -0
  725. package/dist/exports/i18n/de.js.map +1 -1
  726. package/dist/exports/i18n/en.js.map +1 -1
  727. package/dist/exports/i18n/es.js.map +1 -1
  728. package/dist/exports/i18n/fa.js.map +1 -1
  729. package/dist/exports/i18n/fr.js.map +1 -1
  730. package/dist/exports/i18n/he.d.ts +2 -0
  731. package/dist/exports/i18n/he.d.ts.map +1 -0
  732. package/dist/exports/i18n/he.js +3 -0
  733. package/dist/exports/i18n/he.js.map +1 -0
  734. package/dist/exports/i18n/hr.js.map +1 -1
  735. package/dist/exports/i18n/hu.js.map +1 -1
  736. package/dist/exports/i18n/it.js.map +1 -1
  737. package/dist/exports/i18n/ja.js.map +1 -1
  738. package/dist/exports/i18n/ko.js.map +1 -1
  739. package/dist/exports/i18n/my.js.map +1 -1
  740. package/dist/exports/i18n/nb.js.map +1 -1
  741. package/dist/exports/i18n/nl.js.map +1 -1
  742. package/dist/exports/i18n/pl.js.map +1 -1
  743. package/dist/exports/i18n/pt.js.map +1 -1
  744. package/dist/exports/i18n/ro.js.map +1 -1
  745. package/dist/exports/i18n/rs.js.map +1 -1
  746. package/dist/exports/i18n/rsLatin.js.map +1 -1
  747. package/dist/exports/i18n/ru.js.map +1 -1
  748. package/dist/exports/i18n/sl.d.ts +2 -0
  749. package/dist/exports/i18n/sl.d.ts.map +1 -0
  750. package/dist/exports/i18n/sl.js +3 -0
  751. package/dist/exports/i18n/sl.js.map +1 -0
  752. package/dist/exports/i18n/sv.js.map +1 -1
  753. package/dist/exports/i18n/th.js.map +1 -1
  754. package/dist/exports/i18n/tr.js.map +1 -1
  755. package/dist/exports/i18n/uk.js.map +1 -1
  756. package/dist/exports/i18n/vi.js.map +1 -1
  757. package/dist/exports/i18n/zh.js.map +1 -1
  758. package/dist/exports/i18n/zhTw.js.map +1 -1
  759. package/dist/exports/node.d.ts +3 -2
  760. package/dist/exports/node.d.ts.map +1 -1
  761. package/dist/exports/node.js +3 -2
  762. package/dist/exports/node.js.map +1 -1
  763. package/dist/exports/shared.d.ts +30 -0
  764. package/dist/exports/shared.d.ts.map +1 -0
  765. package/dist/exports/shared.js +31 -0
  766. package/dist/exports/shared.js.map +1 -0
  767. package/dist/fields/baseFields/baseBlockFields.js.map +1 -1
  768. package/dist/fields/baseFields/baseIDField.d.ts.map +1 -1
  769. package/dist/fields/baseFields/baseIDField.js +5 -0
  770. package/dist/fields/baseFields/baseIDField.js.map +1 -1
  771. package/dist/fields/config/client.d.ts +17 -1311
  772. package/dist/fields/config/client.d.ts.map +1 -1
  773. package/dist/fields/config/client.js +213 -58
  774. package/dist/fields/config/client.js.map +1 -1
  775. package/dist/fields/config/sanitize.d.ts +15 -2
  776. package/dist/fields/config/sanitize.d.ts.map +1 -1
  777. package/dist/fields/config/sanitize.js +127 -61
  778. package/dist/fields/config/sanitize.js.map +1 -1
  779. package/dist/fields/config/sanitize.spec.js +130 -139
  780. package/dist/fields/config/sanitize.spec.js.map +1 -1
  781. package/dist/fields/config/sanitizeJoinField.d.ts +10 -0
  782. package/dist/fields/config/sanitizeJoinField.d.ts.map +1 -0
  783. package/dist/fields/config/sanitizeJoinField.js +72 -0
  784. package/dist/fields/config/sanitizeJoinField.js.map +1 -0
  785. package/dist/fields/config/types.d.ts +670 -220
  786. package/dist/fields/config/types.d.ts.map +1 -1
  787. package/dist/fields/config/types.js +9 -3
  788. package/dist/fields/config/types.js.map +1 -1
  789. package/dist/fields/getDefaultValue.d.ts +5 -5
  790. package/dist/fields/getDefaultValue.d.ts.map +1 -1
  791. package/dist/fields/getDefaultValue.js +4 -6
  792. package/dist/fields/getDefaultValue.js.map +1 -1
  793. package/dist/fields/getFieldPaths.d.ts +27 -0
  794. package/dist/fields/getFieldPaths.d.ts.map +1 -0
  795. package/dist/fields/getFieldPaths.js +17 -0
  796. package/dist/fields/getFieldPaths.js.map +1 -0
  797. package/dist/fields/hooks/afterChange/index.d.ts +15 -8
  798. package/dist/fields/hooks/afterChange/index.d.ts.map +1 -1
  799. package/dist/fields/hooks/afterChange/index.js +4 -2
  800. package/dist/fields/hooks/afterChange/index.js.map +1 -1
  801. package/dist/fields/hooks/afterChange/promise.d.ts +20 -10
  802. package/dist/fields/hooks/afterChange/promise.d.ts.map +1 -1
  803. package/dist/fields/hooks/afterChange/promise.js +94 -26
  804. package/dist/fields/hooks/afterChange/promise.js.map +1 -1
  805. package/dist/fields/hooks/afterChange/traverseFields.d.ts +13 -10
  806. package/dist/fields/hooks/afterChange/traverseFields.d.ts.map +1 -1
  807. package/dist/fields/hooks/afterChange/traverseFields.js +5 -2
  808. package/dist/fields/hooks/afterChange/traverseFields.js.map +1 -1
  809. package/dist/fields/hooks/afterRead/index.d.ts +11 -7
  810. package/dist/fields/hooks/afterRead/index.d.ts.map +1 -1
  811. package/dist/fields/hooks/afterRead/index.js +14 -5
  812. package/dist/fields/hooks/afterRead/index.js.map +1 -1
  813. package/dist/fields/hooks/afterRead/promise.d.ts +23 -6
  814. package/dist/fields/hooks/afterRead/promise.d.ts.map +1 -1
  815. package/dist/fields/hooks/afterRead/promise.js +276 -80
  816. package/dist/fields/hooks/afterRead/promise.js.map +1 -1
  817. package/dist/fields/hooks/afterRead/relationshipPopulationPromise.d.ts +6 -4
  818. package/dist/fields/hooks/afterRead/relationshipPopulationPromise.d.ts.map +1 -1
  819. package/dist/fields/hooks/afterRead/relationshipPopulationPromise.js +47 -29
  820. package/dist/fields/hooks/afterRead/relationshipPopulationPromise.js.map +1 -1
  821. package/dist/fields/hooks/afterRead/traverseFields.d.ts +16 -6
  822. package/dist/fields/hooks/afterRead/traverseFields.d.ts.map +1 -1
  823. package/dist/fields/hooks/afterRead/traverseFields.js +9 -2
  824. package/dist/fields/hooks/afterRead/traverseFields.js.map +1 -1
  825. package/dist/fields/hooks/beforeChange/cloneDataFromOriginalDoc.d.ts +2 -1
  826. package/dist/fields/hooks/beforeChange/cloneDataFromOriginalDoc.d.ts.map +1 -1
  827. package/dist/fields/hooks/beforeChange/cloneDataFromOriginalDoc.js.map +1 -1
  828. package/dist/fields/hooks/beforeChange/getExistingRowDoc.d.ts +2 -1
  829. package/dist/fields/hooks/beforeChange/getExistingRowDoc.d.ts.map +1 -1
  830. package/dist/fields/hooks/beforeChange/getExistingRowDoc.js +6 -2
  831. package/dist/fields/hooks/beforeChange/getExistingRowDoc.js.map +1 -1
  832. package/dist/fields/hooks/beforeChange/index.d.ts +10 -12
  833. package/dist/fields/hooks/beforeChange/index.d.ts.map +1 -1
  834. package/dist/fields/hooks/beforeChange/index.js +12 -8
  835. package/dist/fields/hooks/beforeChange/index.js.map +1 -1
  836. package/dist/fields/hooks/beforeChange/promise.d.ts +26 -16
  837. package/dist/fields/hooks/beforeChange/promise.d.ts.map +1 -1
  838. package/dist/fields/hooks/beforeChange/promise.js +142 -90
  839. package/dist/fields/hooks/beforeChange/promise.js.map +1 -1
  840. package/dist/fields/hooks/beforeChange/traverseFields.d.ts +28 -17
  841. package/dist/fields/hooks/beforeChange/traverseFields.d.ts.map +1 -1
  842. package/dist/fields/hooks/beforeChange/traverseFields.js +6 -5
  843. package/dist/fields/hooks/beforeChange/traverseFields.js.map +1 -1
  844. package/dist/fields/hooks/beforeDuplicate/index.d.ts +20 -0
  845. package/dist/fields/hooks/beforeDuplicate/index.d.ts.map +1 -0
  846. package/dist/fields/hooks/beforeDuplicate/index.js +25 -0
  847. package/dist/fields/hooks/beforeDuplicate/index.js.map +1 -0
  848. package/dist/fields/hooks/beforeDuplicate/promise.d.ts +20 -0
  849. package/dist/fields/hooks/beforeDuplicate/promise.d.ts.map +1 -0
  850. package/dist/fields/hooks/beforeDuplicate/promise.js +304 -0
  851. package/dist/fields/hooks/beforeDuplicate/promise.js.map +1 -0
  852. package/dist/fields/hooks/beforeDuplicate/runHook.d.ts +3 -0
  853. package/dist/fields/hooks/beforeDuplicate/runHook.d.ts.map +1 -0
  854. package/dist/fields/hooks/beforeDuplicate/runHook.js +6 -0
  855. package/dist/fields/hooks/beforeDuplicate/runHook.js.map +1 -0
  856. package/dist/fields/hooks/beforeDuplicate/traverseFields.d.ts +19 -0
  857. package/dist/fields/hooks/beforeDuplicate/traverseFields.d.ts.map +1 -0
  858. package/dist/fields/hooks/beforeDuplicate/traverseFields.js +22 -0
  859. package/dist/fields/hooks/beforeDuplicate/traverseFields.js.map +1 -0
  860. package/dist/fields/hooks/beforeValidate/index.d.ts +8 -7
  861. package/dist/fields/hooks/beforeValidate/index.d.ts.map +1 -1
  862. package/dist/fields/hooks/beforeValidate/index.js +4 -2
  863. package/dist/fields/hooks/beforeValidate/index.js.map +1 -1
  864. package/dist/fields/hooks/beforeValidate/promise.d.ts +16 -6
  865. package/dist/fields/hooks/beforeValidate/promise.d.ts.map +1 -1
  866. package/dist/fields/hooks/beforeValidate/promise.js +170 -77
  867. package/dist/fields/hooks/beforeValidate/promise.js.map +1 -1
  868. package/dist/fields/hooks/beforeValidate/traverseFields.d.ts +15 -6
  869. package/dist/fields/hooks/beforeValidate/traverseFields.d.ts.map +1 -1
  870. package/dist/fields/hooks/beforeValidate/traverseFields.js +5 -2
  871. package/dist/fields/hooks/beforeValidate/traverseFields.js.map +1 -1
  872. package/dist/fields/mergeBaseFields.d.ts.map +1 -1
  873. package/dist/fields/mergeBaseFields.js +2 -2
  874. package/dist/fields/mergeBaseFields.js.map +1 -1
  875. package/dist/fields/setDefaultBeforeDuplicate.js.map +1 -1
  876. package/dist/fields/sortableFieldTypes.js.map +1 -1
  877. package/dist/fields/validations.d.ts +77 -65
  878. package/dist/fields/validations.d.ts.map +1 -1
  879. package/dist/fields/validations.js +164 -33
  880. package/dist/fields/validations.js.map +1 -1
  881. package/dist/fields/validations.spec.js +16 -15
  882. package/dist/fields/validations.spec.js.map +1 -1
  883. package/dist/globals/config/client.d.ts +19 -14
  884. package/dist/globals/config/client.d.ts.map +1 -1
  885. package/dist/globals/config/client.js +45 -39
  886. package/dist/globals/config/client.js.map +1 -1
  887. package/dist/globals/config/sanitize.d.ts +2 -3
  888. package/dist/globals/config/sanitize.d.ts.map +1 -1
  889. package/dist/globals/config/sanitize.js +83 -45
  890. package/dist/globals/config/sanitize.js.map +1 -1
  891. package/dist/globals/config/types.d.ts +21 -12
  892. package/dist/globals/config/types.d.ts.map +1 -1
  893. package/dist/globals/config/types.js.map +1 -1
  894. package/dist/globals/operations/countGlobalVersions.d.ts +13 -0
  895. package/dist/globals/operations/countGlobalVersions.d.ts.map +1 -0
  896. package/dist/globals/operations/countGlobalVersions.js +49 -0
  897. package/dist/globals/operations/countGlobalVersions.js.map +1 -0
  898. package/dist/globals/operations/docAccess.d.ts.map +1 -1
  899. package/dist/globals/operations/docAccess.js +3 -1
  900. package/dist/globals/operations/docAccess.js.map +1 -1
  901. package/dist/globals/operations/findOne.d.ts +4 -1
  902. package/dist/globals/operations/findOne.d.ts.map +1 -1
  903. package/dist/globals/operations/findOne.js +59 -9
  904. package/dist/globals/operations/findOne.js.map +1 -1
  905. package/dist/globals/operations/findVersionByID.d.ts +3 -1
  906. package/dist/globals/operations/findVersionByID.d.ts.map +1 -1
  907. package/dist/globals/operations/findVersionByID.js +20 -14
  908. package/dist/globals/operations/findVersionByID.js.map +1 -1
  909. package/dist/globals/operations/findVersions.d.ts +5 -2
  910. package/dist/globals/operations/findVersions.d.ts.map +1 -1
  911. package/dist/globals/operations/findVersions.js +11 -8
  912. package/dist/globals/operations/findVersions.js.map +1 -1
  913. package/dist/globals/operations/local/countGlobalVersions.d.ts +20 -0
  914. package/dist/globals/operations/local/countGlobalVersions.d.ts.map +1 -0
  915. package/dist/globals/operations/local/countGlobalVersions.js +20 -0
  916. package/dist/globals/operations/local/countGlobalVersions.js.map +1 -0
  917. package/dist/globals/operations/local/findOne.d.ts +11 -7
  918. package/dist/globals/operations/local/findOne.d.ts.map +1 -1
  919. package/dist/globals/operations/local/findOne.js +4 -1
  920. package/dist/globals/operations/local/findOne.js.map +1 -1
  921. package/dist/globals/operations/local/findVersionByID.d.ts +10 -7
  922. package/dist/globals/operations/local/findVersionByID.d.ts.map +1 -1
  923. package/dist/globals/operations/local/findVersionByID.js +3 -1
  924. package/dist/globals/operations/local/findVersionByID.js.map +1 -1
  925. package/dist/globals/operations/local/findVersions.d.ts +11 -8
  926. package/dist/globals/operations/local/findVersions.d.ts.map +1 -1
  927. package/dist/globals/operations/local/findVersions.js +4 -2
  928. package/dist/globals/operations/local/findVersions.js.map +1 -1
  929. package/dist/globals/operations/local/index.d.ts +2 -0
  930. package/dist/globals/operations/local/index.d.ts.map +1 -1
  931. package/dist/globals/operations/local/index.js +2 -0
  932. package/dist/globals/operations/local/index.js.map +1 -1
  933. package/dist/globals/operations/local/restoreVersion.d.ts +9 -7
  934. package/dist/globals/operations/local/restoreVersion.d.ts.map +1 -1
  935. package/dist/globals/operations/local/restoreVersion.js +3 -2
  936. package/dist/globals/operations/local/restoreVersion.js.map +1 -1
  937. package/dist/globals/operations/local/update.d.ts +12 -7
  938. package/dist/globals/operations/local/update.d.ts.map +1 -1
  939. package/dist/globals/operations/local/update.js +5 -1
  940. package/dist/globals/operations/local/update.js.map +1 -1
  941. package/dist/globals/operations/restoreVersion.d.ts +3 -1
  942. package/dist/globals/operations/restoreVersion.d.ts.map +1 -1
  943. package/dist/globals/operations/restoreVersion.js +20 -2
  944. package/dist/globals/operations/restoreVersion.js.map +1 -1
  945. package/dist/globals/operations/update.d.ts +11 -8
  946. package/dist/globals/operations/update.d.ts.map +1 -1
  947. package/dist/globals/operations/update.js +72 -17
  948. package/dist/globals/operations/update.js.map +1 -1
  949. package/dist/index.d.ts +303 -51
  950. package/dist/index.d.ts.map +1 -1
  951. package/dist/index.js +212 -18
  952. package/dist/index.js.map +1 -1
  953. package/dist/lockedDocuments/lockedDocumentsCollection.d.ts +4 -0
  954. package/dist/lockedDocuments/lockedDocumentsCollection.d.ts.map +1 -0
  955. package/dist/lockedDocuments/lockedDocumentsCollection.js +32 -0
  956. package/dist/lockedDocuments/lockedDocumentsCollection.js.map +1 -0
  957. package/dist/preferences/deleteUserPreferences.js.map +1 -1
  958. package/dist/preferences/operations/delete.d.ts +1 -2
  959. package/dist/preferences/operations/delete.d.ts.map +1 -1
  960. package/dist/preferences/operations/delete.js +4 -12
  961. package/dist/preferences/operations/delete.js.map +1 -1
  962. package/dist/preferences/operations/findOne.d.ts +2 -3
  963. package/dist/preferences/operations/findOne.d.ts.map +1 -1
  964. package/dist/preferences/operations/findOne.js +9 -4
  965. package/dist/preferences/operations/findOne.js.map +1 -1
  966. package/dist/preferences/operations/update.d.ts +1 -9
  967. package/dist/preferences/operations/update.d.ts.map +1 -1
  968. package/dist/preferences/operations/update.js +27 -37
  969. package/dist/preferences/operations/update.js.map +1 -1
  970. package/dist/preferences/preferencesCollection.d.ts.map +1 -1
  971. package/dist/preferences/preferencesCollection.js +7 -3
  972. package/dist/preferences/preferencesCollection.js.map +1 -1
  973. package/dist/preferences/requestHandlers/delete.d.ts.map +1 -1
  974. package/dist/preferences/requestHandlers/delete.js +19 -6
  975. package/dist/preferences/requestHandlers/delete.js.map +1 -1
  976. package/dist/preferences/requestHandlers/findOne.d.ts.map +1 -1
  977. package/dist/preferences/requestHandlers/findOne.js +19 -6
  978. package/dist/preferences/requestHandlers/findOne.js.map +1 -1
  979. package/dist/preferences/requestHandlers/update.d.ts.map +1 -1
  980. package/dist/preferences/requestHandlers/update.js +20 -8
  981. package/dist/preferences/requestHandlers/update.js.map +1 -1
  982. package/dist/preferences/types.d.ts +2 -2
  983. package/dist/preferences/types.d.ts.map +1 -1
  984. package/dist/preferences/types.js.map +1 -1
  985. package/dist/queues/config/generateJobsJSONSchemas.d.ts +18 -0
  986. package/dist/queues/config/generateJobsJSONSchemas.d.ts.map +1 -0
  987. package/dist/queues/config/generateJobsJSONSchemas.js +125 -0
  988. package/dist/queues/config/generateJobsJSONSchemas.js.map +1 -0
  989. package/dist/queues/config/jobsCollection.d.ts +4 -0
  990. package/dist/queues/config/jobsCollection.d.ts.map +1 -0
  991. package/dist/queues/config/jobsCollection.js +204 -0
  992. package/dist/queues/config/jobsCollection.js.map +1 -0
  993. package/dist/queues/config/types/index.d.ts +45 -0
  994. package/dist/queues/config/types/index.d.ts.map +1 -0
  995. package/dist/queues/config/types/index.js +3 -0
  996. package/dist/queues/config/types/index.js.map +1 -0
  997. package/dist/queues/config/types/taskTypes.d.ts +134 -0
  998. package/dist/queues/config/types/taskTypes.d.ts.map +1 -0
  999. package/dist/queues/config/types/taskTypes.js +3 -0
  1000. package/dist/queues/config/types/taskTypes.js.map +1 -0
  1001. package/dist/queues/config/types/workflowJSONTypes.d.ts +29 -0
  1002. package/dist/queues/config/types/workflowJSONTypes.d.ts.map +1 -0
  1003. package/dist/queues/config/types/workflowJSONTypes.js +3 -0
  1004. package/dist/queues/config/types/workflowJSONTypes.js.map +1 -0
  1005. package/dist/queues/config/types/workflowTypes.d.ts +99 -0
  1006. package/dist/queues/config/types/workflowTypes.d.ts.map +1 -0
  1007. package/dist/queues/config/types/workflowTypes.js +3 -0
  1008. package/dist/queues/config/types/workflowTypes.js.map +1 -0
  1009. package/dist/queues/localAPI.d.ts +25 -0
  1010. package/dist/queues/localAPI.d.ts.map +1 -0
  1011. package/dist/queues/localAPI.js +41 -0
  1012. package/dist/queues/localAPI.js.map +1 -0
  1013. package/dist/queues/operations/runJobs/index.d.ts +21 -0
  1014. package/dist/queues/operations/runJobs/index.d.ts.map +1 -0
  1015. package/dist/queues/operations/runJobs/index.js +180 -0
  1016. package/dist/queues/operations/runJobs/index.js.map +1 -0
  1017. package/dist/queues/operations/runJobs/runJSONJob/index.d.ts +18 -0
  1018. package/dist/queues/operations/runJobs/runJSONJob/index.d.ts.map +1 -0
  1019. package/dist/queues/operations/runJobs/runJSONJob/index.js +125 -0
  1020. package/dist/queues/operations/runJobs/runJSONJob/index.js.map +1 -0
  1021. package/dist/queues/operations/runJobs/runJob/calculateBackoffWaitUntil.d.ts +6 -0
  1022. package/dist/queues/operations/runJobs/runJob/calculateBackoffWaitUntil.d.ts.map +1 -0
  1023. package/dist/queues/operations/runJobs/runJob/calculateBackoffWaitUntil.js +26 -0
  1024. package/dist/queues/operations/runJobs/runJob/calculateBackoffWaitUntil.js.map +1 -0
  1025. package/dist/queues/operations/runJobs/runJob/getRunTaskFunction.d.ts +26 -0
  1026. package/dist/queues/operations/runJobs/runJob/getRunTaskFunction.d.ts.map +1 -0
  1027. package/dist/queues/operations/runJobs/runJob/getRunTaskFunction.js +204 -0
  1028. package/dist/queues/operations/runJobs/runJob/getRunTaskFunction.js.map +1 -0
  1029. package/dist/queues/operations/runJobs/runJob/getUpdateJobFunction.d.ts +5 -0
  1030. package/dist/queues/operations/runJobs/runJob/getUpdateJobFunction.d.ts.map +1 -0
  1031. package/dist/queues/operations/runJobs/runJob/getUpdateJobFunction.js +18 -0
  1032. package/dist/queues/operations/runJobs/runJob/getUpdateJobFunction.js.map +1 -0
  1033. package/dist/queues/operations/runJobs/runJob/handleWorkflowError.d.ts +17 -0
  1034. package/dist/queues/operations/runJobs/runJob/handleWorkflowError.d.ts.map +1 -0
  1035. package/dist/queues/operations/runJobs/runJob/handleWorkflowError.js +43 -0
  1036. package/dist/queues/operations/runJobs/runJob/handleWorkflowError.js.map +1 -0
  1037. package/dist/queues/operations/runJobs/runJob/importHandlerPath.d.ts +2 -0
  1038. package/dist/queues/operations/runJobs/runJob/importHandlerPath.d.ts.map +1 -0
  1039. package/dist/queues/operations/runJobs/runJob/importHandlerPath.js +21 -0
  1040. package/dist/queues/operations/runJobs/runJob/importHandlerPath.js.map +1 -0
  1041. package/dist/queues/operations/runJobs/runJob/index.d.ts +17 -0
  1042. package/dist/queues/operations/runJobs/runJob/index.d.ts.map +1 -0
  1043. package/dist/queues/operations/runJobs/runJob/index.js +48 -0
  1044. package/dist/queues/operations/runJobs/runJob/index.js.map +1 -0
  1045. package/dist/queues/restEndpointRun.d.ts +3 -0
  1046. package/dist/queues/restEndpointRun.d.ts.map +1 -0
  1047. package/dist/queues/restEndpointRun.js +66 -0
  1048. package/dist/queues/restEndpointRun.js.map +1 -0
  1049. package/dist/queues/utilities/getJobTaskStatus.d.ts +9 -0
  1050. package/dist/queues/utilities/getJobTaskStatus.d.ts.map +1 -0
  1051. package/dist/queues/utilities/getJobTaskStatus.js +29 -0
  1052. package/dist/queues/utilities/getJobTaskStatus.js.map +1 -0
  1053. package/dist/translations/getLocalI18n.d.ts +1 -1
  1054. package/dist/translations/getLocalI18n.d.ts.map +1 -1
  1055. package/dist/translations/getLocalI18n.js +1 -1
  1056. package/dist/translations/getLocalI18n.js.map +1 -1
  1057. package/dist/types/constants.js.map +1 -1
  1058. package/dist/types/index.d.ts +74 -38
  1059. package/dist/types/index.d.ts.map +1 -1
  1060. package/dist/types/index.js.map +1 -1
  1061. package/dist/uploads/canResizeImage.d.ts +1 -1
  1062. package/dist/uploads/canResizeImage.d.ts.map +1 -1
  1063. package/dist/uploads/canResizeImage.js +1 -1
  1064. package/dist/uploads/canResizeImage.js.map +1 -1
  1065. package/dist/uploads/cropImage.d.ts +22 -6
  1066. package/dist/uploads/cropImage.d.ts.map +1 -1
  1067. package/dist/uploads/cropImage.js +20 -5
  1068. package/dist/uploads/cropImage.js.map +1 -1
  1069. package/dist/uploads/deleteAssociatedFiles.d.ts.map +1 -1
  1070. package/dist/uploads/deleteAssociatedFiles.js +3 -3
  1071. package/dist/uploads/deleteAssociatedFiles.js.map +1 -1
  1072. package/dist/uploads/docWithFilenameExists.d.ts.map +1 -1
  1073. package/dist/uploads/docWithFilenameExists.js +3 -1
  1074. package/dist/uploads/docWithFilenameExists.js.map +1 -1
  1075. package/dist/uploads/fileExists.d.ts.map +1 -1
  1076. package/dist/uploads/fileExists.js.map +1 -1
  1077. package/dist/uploads/formatFilesize.d.ts.map +1 -1
  1078. package/dist/uploads/formatFilesize.js +3 -1
  1079. package/dist/uploads/formatFilesize.js.map +1 -1
  1080. package/dist/uploads/generateFileData.d.ts +5 -2
  1081. package/dist/uploads/generateFileData.d.ts.map +1 -1
  1082. package/dist/uploads/generateFileData.js +154 -50
  1083. package/dist/uploads/generateFileData.js.map +1 -1
  1084. package/dist/uploads/getBaseFields.d.ts.map +1 -1
  1085. package/dist/uploads/getBaseFields.js +32 -6
  1086. package/dist/uploads/getBaseFields.js.map +1 -1
  1087. package/dist/uploads/getExternalFile.d.ts.map +1 -1
  1088. package/dist/uploads/getExternalFile.js +9 -4
  1089. package/dist/uploads/getExternalFile.js.map +1 -1
  1090. package/dist/uploads/getFileByPath.d.ts +2 -2
  1091. package/dist/uploads/getFileByPath.d.ts.map +1 -1
  1092. package/dist/uploads/getFileByPath.js +2 -3
  1093. package/dist/uploads/getFileByPath.js.map +1 -1
  1094. package/dist/uploads/getImageSize.js.map +1 -1
  1095. package/dist/uploads/getSafeFilename.d.ts +2 -2
  1096. package/dist/uploads/getSafeFilename.d.ts.map +1 -1
  1097. package/dist/uploads/getSafeFilename.js +1 -3
  1098. package/dist/uploads/getSafeFilename.js.map +1 -1
  1099. package/dist/uploads/imageResizer.d.ts +11 -11
  1100. package/dist/uploads/imageResizer.d.ts.map +1 -1
  1101. package/dist/uploads/imageResizer.js +225 -116
  1102. package/dist/uploads/imageResizer.js.map +1 -1
  1103. package/dist/uploads/isImage.d.ts +1 -1
  1104. package/dist/uploads/isImage.d.ts.map +1 -1
  1105. package/dist/uploads/isImage.js +1 -1
  1106. package/dist/uploads/isImage.js.map +1 -1
  1107. package/dist/uploads/mimeTypeValidator.d.ts.map +1 -1
  1108. package/dist/uploads/mimeTypeValidator.js +3 -2
  1109. package/dist/uploads/mimeTypeValidator.js.map +1 -1
  1110. package/dist/uploads/mimeTypeValidator.spec.js.map +1 -1
  1111. package/dist/uploads/optionallyAppendMetadata.d.ts +12 -0
  1112. package/dist/uploads/optionallyAppendMetadata.d.ts.map +1 -0
  1113. package/dist/uploads/optionallyAppendMetadata.js +17 -0
  1114. package/dist/uploads/optionallyAppendMetadata.js.map +1 -0
  1115. package/dist/uploads/saveBufferToFile.d.ts +0 -1
  1116. package/dist/uploads/saveBufferToFile.d.ts.map +1 -1
  1117. package/dist/uploads/saveBufferToFile.js.map +1 -1
  1118. package/dist/uploads/tempFile.js.map +1 -1
  1119. package/dist/uploads/types.d.ts +141 -13
  1120. package/dist/uploads/types.d.ts.map +1 -1
  1121. package/dist/uploads/types.js.map +1 -1
  1122. package/dist/uploads/unlinkTempFiles.js.map +1 -1
  1123. package/dist/uploads/uploadFiles.d.ts.map +1 -1
  1124. package/dist/uploads/uploadFiles.js.map +1 -1
  1125. package/dist/utilities/addSelectGenericsToGeneratedTyoes.spec.js +562 -0
  1126. package/dist/utilities/addSelectGenericsToGeneratedTyoes.spec.js.map +1 -0
  1127. package/dist/utilities/addSelectGenericsToGeneretedTypes.d.ts +4 -0
  1128. package/dist/utilities/addSelectGenericsToGeneretedTypes.d.ts.map +1 -0
  1129. package/dist/utilities/addSelectGenericsToGeneretedTypes.js +41 -0
  1130. package/dist/utilities/addSelectGenericsToGeneretedTypes.js.map +1 -0
  1131. package/dist/utilities/checkDocumentLockStatus.d.ts +13 -0
  1132. package/dist/utilities/checkDocumentLockStatus.d.ts.map +1 -0
  1133. package/dist/utilities/checkDocumentLockStatus.js +69 -0
  1134. package/dist/utilities/checkDocumentLockStatus.js.map +1 -0
  1135. package/dist/utilities/checkDuplicateCollections.js +1 -1
  1136. package/dist/utilities/checkDuplicateCollections.js.map +1 -1
  1137. package/dist/utilities/commitTransaction.js.map +1 -1
  1138. package/dist/utilities/configToJSONSchema.d.ts +7 -1
  1139. package/dist/utilities/configToJSONSchema.d.ts.map +1 -1
  1140. package/dist/utilities/configToJSONSchema.js +609 -157
  1141. package/dist/utilities/configToJSONSchema.js.map +1 -1
  1142. package/dist/utilities/configToJSONSchema.spec.js +324 -10
  1143. package/dist/utilities/configToJSONSchema.spec.js.map +1 -1
  1144. package/dist/utilities/createArrayFromCommaDelineated.d.ts.map +1 -1
  1145. package/dist/utilities/createArrayFromCommaDelineated.js +3 -1
  1146. package/dist/utilities/createArrayFromCommaDelineated.js.map +1 -1
  1147. package/dist/utilities/createLocalReq.d.ts +3 -3
  1148. package/dist/utilities/createLocalReq.d.ts.map +1 -1
  1149. package/dist/utilities/createLocalReq.js +44 -22
  1150. package/dist/utilities/createLocalReq.js.map +1 -1
  1151. package/dist/utilities/deepCopyObject.d.ts +19 -1
  1152. package/dist/utilities/deepCopyObject.d.ts.map +1 -1
  1153. package/dist/utilities/deepCopyObject.js +183 -16
  1154. package/dist/utilities/deepCopyObject.js.map +1 -1
  1155. package/dist/utilities/deepMerge.d.ts +18 -1
  1156. package/dist/utilities/deepMerge.d.ts.map +1 -1
  1157. package/dist/utilities/deepMerge.js +40 -14
  1158. package/dist/utilities/deepMerge.js.map +1 -1
  1159. package/dist/utilities/dependencies/dependencyChecker.d.ts +30 -0
  1160. package/dist/utilities/dependencies/dependencyChecker.d.ts.map +1 -0
  1161. package/dist/utilities/dependencies/dependencyChecker.js +55 -0
  1162. package/dist/utilities/dependencies/dependencyChecker.js.map +1 -0
  1163. package/dist/utilities/dependencies/getDependencies.d.ts +9 -0
  1164. package/dist/utilities/dependencies/getDependencies.d.ts.map +1 -0
  1165. package/dist/utilities/dependencies/getDependencies.js +72 -0
  1166. package/dist/utilities/dependencies/getDependencies.js.map +1 -0
  1167. package/dist/utilities/dependencies/isError.d.ts +5 -0
  1168. package/dist/utilities/dependencies/isError.d.ts.map +1 -0
  1169. package/dist/utilities/dependencies/isError.js +19 -0
  1170. package/dist/utilities/dependencies/isError.js.map +1 -0
  1171. package/dist/utilities/dependencies/realPath.d.ts +3 -0
  1172. package/dist/utilities/dependencies/realPath.d.ts.map +1 -0
  1173. package/dist/utilities/dependencies/realPath.js +23 -0
  1174. package/dist/utilities/dependencies/realPath.js.map +1 -0
  1175. package/dist/utilities/dependencies/resolveFrom.d.ts +2 -0
  1176. package/dist/utilities/dependencies/resolveFrom.d.ts.map +1 -0
  1177. package/dist/utilities/dependencies/resolveFrom.js +58 -0
  1178. package/dist/utilities/dependencies/resolveFrom.js.map +1 -0
  1179. package/dist/utilities/dependencies/versionUtils.d.ts +20 -0
  1180. package/dist/utilities/dependencies/versionUtils.d.ts.map +1 -0
  1181. package/dist/utilities/dependencies/versionUtils.js +76 -0
  1182. package/dist/utilities/dependencies/versionUtils.js.map +1 -0
  1183. package/dist/utilities/fieldSchemaToJSON.d.ts +4 -4
  1184. package/dist/utilities/fieldSchemaToJSON.d.ts.map +1 -1
  1185. package/dist/utilities/fieldSchemaToJSON.js +17 -27
  1186. package/dist/utilities/fieldSchemaToJSON.js.map +1 -1
  1187. package/dist/utilities/findUp.d.ts +19 -0
  1188. package/dist/utilities/findUp.d.ts.map +1 -0
  1189. package/dist/utilities/findUp.js +102 -0
  1190. package/dist/utilities/findUp.js.map +1 -0
  1191. package/dist/utilities/flattenTopLevelFields.d.ts +4 -3
  1192. package/dist/utilities/flattenTopLevelFields.d.ts.map +1 -1
  1193. package/dist/utilities/flattenTopLevelFields.js +12 -7
  1194. package/dist/utilities/flattenTopLevelFields.js.map +1 -1
  1195. package/dist/utilities/formatErrors.d.ts +6 -0
  1196. package/dist/utilities/formatErrors.d.ts.map +1 -0
  1197. package/dist/utilities/formatErrors.js +56 -0
  1198. package/dist/utilities/formatErrors.js.map +1 -0
  1199. package/dist/utilities/formatLabels.js.map +1 -1
  1200. package/dist/utilities/formatLabels.spec.js.map +1 -1
  1201. package/dist/utilities/getCollectionIDFieldTypes.js.map +1 -1
  1202. package/dist/utilities/getDataByPath.d.ts +3 -0
  1203. package/dist/utilities/getDataByPath.d.ts.map +1 -0
  1204. package/dist/utilities/getDataByPath.js +18 -0
  1205. package/dist/utilities/getDataByPath.js.map +1 -0
  1206. package/dist/utilities/getEntityPolicies.d.ts.map +1 -1
  1207. package/dist/utilities/getEntityPolicies.js +31 -20
  1208. package/dist/utilities/getEntityPolicies.js.map +1 -1
  1209. package/dist/utilities/getObjectDotNotation.d.ts.map +1 -1
  1210. package/dist/utilities/getObjectDotNotation.js +3 -1
  1211. package/dist/utilities/getObjectDotNotation.js.map +1 -1
  1212. package/dist/utilities/getSelectMode.d.ts +3 -0
  1213. package/dist/utilities/getSelectMode.d.ts.map +1 -0
  1214. package/dist/utilities/getSelectMode.js +14 -0
  1215. package/dist/utilities/getSelectMode.js.map +1 -0
  1216. package/dist/utilities/getSiblingData.d.ts +3 -0
  1217. package/dist/utilities/getSiblingData.d.ts.map +1 -0
  1218. package/dist/utilities/getSiblingData.js +35 -0
  1219. package/dist/utilities/getSiblingData.js.map +1 -0
  1220. package/dist/utilities/getUniqueListBy.d.ts +1 -1
  1221. package/dist/utilities/getUniqueListBy.d.ts.map +1 -1
  1222. package/dist/utilities/getUniqueListBy.js +1 -1
  1223. package/dist/utilities/getUniqueListBy.js.map +1 -1
  1224. package/dist/utilities/initTransaction.d.ts.map +1 -1
  1225. package/dist/utilities/initTransaction.js +9 -10
  1226. package/dist/utilities/initTransaction.js.map +1 -1
  1227. package/dist/utilities/isEntityHidden.d.ts +2 -2
  1228. package/dist/utilities/isEntityHidden.js.map +1 -1
  1229. package/dist/utilities/isNumber.js.map +1 -1
  1230. package/dist/utilities/isPlainObject.d.ts +1 -1
  1231. package/dist/utilities/isPlainObject.d.ts.map +1 -1
  1232. package/dist/utilities/isPlainObject.js +4 -18
  1233. package/dist/utilities/isPlainObject.js.map +1 -1
  1234. package/dist/utilities/isReactComponent.d.ts +3 -4
  1235. package/dist/utilities/isReactComponent.d.ts.map +1 -1
  1236. package/dist/utilities/isReactComponent.js +17 -11
  1237. package/dist/utilities/isReactComponent.js.map +1 -1
  1238. package/dist/utilities/isValidID.d.ts +1 -1
  1239. package/dist/utilities/isValidID.d.ts.map +1 -1
  1240. package/dist/utilities/isValidID.js +3 -1
  1241. package/dist/utilities/isValidID.js.map +1 -1
  1242. package/dist/utilities/isolateObjectProperty.d.ts +1 -1
  1243. package/dist/utilities/isolateObjectProperty.d.ts.map +1 -1
  1244. package/dist/utilities/isolateObjectProperty.js +14 -5
  1245. package/dist/utilities/isolateObjectProperty.js.map +1 -1
  1246. package/dist/utilities/killTransaction.d.ts.map +1 -1
  1247. package/dist/utilities/killTransaction.js +6 -2
  1248. package/dist/utilities/killTransaction.js.map +1 -1
  1249. package/dist/utilities/logger.d.ts +11 -7
  1250. package/dist/utilities/logger.d.ts.map +1 -1
  1251. package/dist/utilities/logger.js +25 -20
  1252. package/dist/utilities/logger.js.map +1 -1
  1253. package/dist/utilities/mapAsync.js.map +1 -1
  1254. package/dist/utilities/parseCookies.d.ts +1 -1
  1255. package/dist/utilities/parseCookies.d.ts.map +1 -1
  1256. package/dist/utilities/parseCookies.js +1 -1
  1257. package/dist/utilities/parseCookies.js.map +1 -1
  1258. package/dist/utilities/reduceFieldsToValues.d.ts +10 -0
  1259. package/dist/utilities/reduceFieldsToValues.d.ts.map +1 -0
  1260. package/dist/utilities/reduceFieldsToValues.js +24 -0
  1261. package/dist/utilities/reduceFieldsToValues.js.map +1 -0
  1262. package/dist/utilities/removeUndefined.d.ts +2 -0
  1263. package/dist/utilities/removeUndefined.d.ts.map +1 -0
  1264. package/dist/utilities/removeUndefined.js +5 -0
  1265. package/dist/utilities/removeUndefined.js.map +1 -0
  1266. package/dist/utilities/sanitizeFallbackLocale.d.ts +18 -0
  1267. package/dist/utilities/sanitizeFallbackLocale.d.ts.map +1 -0
  1268. package/dist/utilities/sanitizeFallbackLocale.js +33 -0
  1269. package/dist/utilities/sanitizeFallbackLocale.js.map +1 -0
  1270. package/dist/utilities/sanitizeInternalFields.d.ts.map +1 -1
  1271. package/dist/utilities/sanitizeInternalFields.js.map +1 -1
  1272. package/dist/utilities/sanitizePermissions.d.ts +14 -0
  1273. package/dist/utilities/sanitizePermissions.d.ts.map +1 -0
  1274. package/dist/utilities/sanitizePermissions.js +153 -0
  1275. package/dist/utilities/sanitizePermissions.js.map +1 -0
  1276. package/dist/utilities/sanitizePermissions.spec.js +428 -0
  1277. package/dist/utilities/sanitizePermissions.spec.js.map +1 -0
  1278. package/dist/utilities/setsAreEqual.d.ts.map +1 -1
  1279. package/dist/utilities/setsAreEqual.js.map +1 -1
  1280. package/dist/utilities/telemetry/conf/envPaths.d.ts +23 -0
  1281. package/dist/utilities/telemetry/conf/envPaths.d.ts.map +1 -0
  1282. package/dist/utilities/telemetry/conf/envPaths.js +70 -0
  1283. package/dist/utilities/telemetry/conf/envPaths.js.map +1 -0
  1284. package/dist/utilities/telemetry/conf/index.d.ts +84 -0
  1285. package/dist/utilities/telemetry/conf/index.d.ts.map +1 -0
  1286. package/dist/utilities/telemetry/conf/index.js +144 -0
  1287. package/dist/utilities/telemetry/conf/index.js.map +1 -0
  1288. package/dist/utilities/telemetry/events/adminInit.d.ts.map +1 -1
  1289. package/dist/utilities/telemetry/events/adminInit.js.map +1 -1
  1290. package/dist/utilities/telemetry/events/serverInit.d.ts.map +1 -1
  1291. package/dist/utilities/telemetry/events/serverInit.js.map +1 -1
  1292. package/dist/utilities/telemetry/index.d.ts +8 -1
  1293. package/dist/utilities/telemetry/index.d.ts.map +1 -1
  1294. package/dist/utilities/telemetry/index.js +70 -24
  1295. package/dist/utilities/telemetry/index.js.map +1 -1
  1296. package/dist/utilities/telemetry/oneWayHash.d.ts +0 -1
  1297. package/dist/utilities/telemetry/oneWayHash.d.ts.map +1 -1
  1298. package/dist/utilities/telemetry/oneWayHash.js.map +1 -1
  1299. package/dist/utilities/timestamp.d.ts.map +1 -1
  1300. package/dist/utilities/timestamp.js +3 -1
  1301. package/dist/utilities/timestamp.js.map +1 -1
  1302. package/dist/utilities/toKebabCase.js.map +1 -1
  1303. package/dist/utilities/traverseFields.d.ts +38 -0
  1304. package/dist/utilities/traverseFields.d.ts.map +1 -0
  1305. package/dist/utilities/traverseFields.js +164 -0
  1306. package/dist/utilities/traverseFields.js.map +1 -0
  1307. package/dist/utilities/unflatten.d.ts +9 -0
  1308. package/dist/utilities/unflatten.d.ts.map +1 -0
  1309. package/dist/utilities/unflatten.js +64 -0
  1310. package/dist/utilities/unflatten.js.map +1 -0
  1311. package/dist/utilities/validateMimeType.d.ts +2 -0
  1312. package/dist/utilities/validateMimeType.d.ts.map +1 -0
  1313. package/dist/utilities/validateMimeType.js +6 -0
  1314. package/dist/utilities/validateMimeType.js.map +1 -0
  1315. package/dist/utilities/wait.js.map +1 -1
  1316. package/dist/utilities/wordBoundariesRegex.js.map +1 -1
  1317. package/dist/versions/baseFields.d.ts +1 -0
  1318. package/dist/versions/baseFields.d.ts.map +1 -1
  1319. package/dist/versions/baseFields.js +16 -1
  1320. package/dist/versions/baseFields.js.map +1 -1
  1321. package/dist/versions/buildCollectionFields.d.ts +2 -1
  1322. package/dist/versions/buildCollectionFields.d.ts.map +1 -1
  1323. package/dist/versions/buildCollectionFields.js +27 -8
  1324. package/dist/versions/buildCollectionFields.js.map +1 -1
  1325. package/dist/versions/buildGlobalFields.d.ts +2 -1
  1326. package/dist/versions/buildGlobalFields.d.ts.map +1 -1
  1327. package/dist/versions/buildGlobalFields.js +31 -10
  1328. package/dist/versions/buildGlobalFields.js.map +1 -1
  1329. package/dist/versions/defaults.d.ts +4 -0
  1330. package/dist/versions/defaults.d.ts.map +1 -0
  1331. package/dist/versions/defaults.js +5 -0
  1332. package/dist/versions/defaults.js.map +1 -0
  1333. package/dist/versions/deleteCollectionVersions.d.ts.map +1 -1
  1334. package/dist/versions/deleteCollectionVersions.js.map +1 -1
  1335. package/dist/versions/drafts/appendVersionToQueryKey.d.ts +1 -1
  1336. package/dist/versions/drafts/appendVersionToQueryKey.d.ts.map +1 -1
  1337. package/dist/versions/drafts/appendVersionToQueryKey.js +2 -2
  1338. package/dist/versions/drafts/appendVersionToQueryKey.js.map +1 -1
  1339. package/dist/versions/drafts/getQueryDraftsSelect.d.ts +5 -0
  1340. package/dist/versions/drafts/getQueryDraftsSelect.d.ts.map +1 -0
  1341. package/dist/versions/drafts/getQueryDraftsSelect.js +18 -0
  1342. package/dist/versions/drafts/getQueryDraftsSelect.js.map +1 -0
  1343. package/dist/versions/drafts/getQueryDraftsSort.d.ts +6 -1
  1344. package/dist/versions/drafts/getQueryDraftsSort.d.ts.map +1 -1
  1345. package/dist/versions/drafts/getQueryDraftsSort.js +26 -8
  1346. package/dist/versions/drafts/getQueryDraftsSort.js.map +1 -1
  1347. package/dist/versions/drafts/replaceWithDraftIfAvailable.d.ts +3 -2
  1348. package/dist/versions/drafts/replaceWithDraftIfAvailable.d.ts.map +1 -1
  1349. package/dist/versions/drafts/replaceWithDraftIfAvailable.js +25 -11
  1350. package/dist/versions/drafts/replaceWithDraftIfAvailable.js.map +1 -1
  1351. package/dist/versions/enforceMaxVersions.d.ts.map +1 -1
  1352. package/dist/versions/enforceMaxVersions.js +3 -1
  1353. package/dist/versions/enforceMaxVersions.js.map +1 -1
  1354. package/dist/versions/getLatestCollectionVersion.d.ts +2 -1
  1355. package/dist/versions/getLatestCollectionVersion.d.ts.map +1 -1
  1356. package/dist/versions/getLatestCollectionVersion.js +42 -19
  1357. package/dist/versions/getLatestCollectionVersion.js.map +1 -1
  1358. package/dist/versions/getLatestGlobalVersion.d.ts +2 -1
  1359. package/dist/versions/getLatestGlobalVersion.d.ts.map +1 -1
  1360. package/dist/versions/getLatestGlobalVersion.js +19 -10
  1361. package/dist/versions/getLatestGlobalVersion.js.map +1 -1
  1362. package/dist/versions/payloadPackageList.d.ts +2 -0
  1363. package/dist/versions/payloadPackageList.d.ts.map +1 -0
  1364. package/dist/versions/payloadPackageList.js +33 -0
  1365. package/dist/versions/payloadPackageList.js.map +1 -0
  1366. package/dist/versions/saveVersion.d.ts +5 -2
  1367. package/dist/versions/saveVersion.d.ts.map +1 -1
  1368. package/dist/versions/saveVersion.js +67 -32
  1369. package/dist/versions/saveVersion.js.map +1 -1
  1370. package/dist/versions/types.d.ts +9 -5
  1371. package/dist/versions/types.d.ts.map +1 -1
  1372. package/dist/versions/types.js.map +1 -1
  1373. package/license.md +22 -0
  1374. package/package.json +94 -138
  1375. package/dist/admin/forms/FieldDescription.d.ts +0 -14
  1376. package/dist/admin/forms/FieldDescription.d.ts.map +0 -1
  1377. package/dist/admin/forms/FieldDescription.js +0 -3
  1378. package/dist/admin/forms/FieldDescription.js.map +0 -1
  1379. package/dist/admin/forms/FieldTypes.d.ts +0 -27
  1380. package/dist/admin/forms/FieldTypes.d.ts.map +0 -1
  1381. package/dist/admin/forms/FieldTypes.js +0 -3
  1382. package/dist/admin/forms/FieldTypes.js.map +0 -1
  1383. package/dist/bin/loader/clientExtensions.d.ts +0 -2
  1384. package/dist/bin/loader/clientExtensions.d.ts.map +0 -1
  1385. package/dist/bin/loader/clientExtensions.js +0 -13
  1386. package/dist/bin/loader/clientExtensions.js.map +0 -1
  1387. package/dist/bin/loader/compile.d.ts +0 -5
  1388. package/dist/bin/loader/compile.d.ts.map +0 -1
  1389. package/dist/bin/loader/compile.js +0 -27
  1390. package/dist/bin/loader/compile.js.map +0 -1
  1391. package/dist/bin/loader/index.d.ts +0 -34
  1392. package/dist/bin/loader/index.d.ts.map +0 -1
  1393. package/dist/bin/loader/index.js +0 -117
  1394. package/dist/bin/loader/index.js.map +0 -1
  1395. package/dist/bin/loader/read-default-tsconfig.d.ts +0 -4
  1396. package/dist/bin/loader/read-default-tsconfig.d.ts.map +0 -1
  1397. package/dist/bin/loader/read-default-tsconfig.js +0 -92
  1398. package/dist/bin/loader/read-default-tsconfig.js.map +0 -1
  1399. package/dist/collections/config/schema.d.ts +0 -4
  1400. package/dist/collections/config/schema.d.ts.map +0 -1
  1401. package/dist/collections/config/schema.js +0 -178
  1402. package/dist/collections/config/schema.js.map +0 -1
  1403. package/dist/config/schema.d.ts +0 -5
  1404. package/dist/config/schema.d.ts.map +0 -1
  1405. package/dist/config/schema.js +0 -147
  1406. package/dist/config/schema.js.map +0 -1
  1407. package/dist/config/shared/adminViewSchema.d.ts +0 -3
  1408. package/dist/config/shared/adminViewSchema.d.ts.map +0 -1
  1409. package/dist/config/shared/adminViewSchema.js +0 -11
  1410. package/dist/config/shared/adminViewSchema.js.map +0 -1
  1411. package/dist/config/shared/componentSchema.d.ts +0 -16
  1412. package/dist/config/shared/componentSchema.d.ts.map +0 -1
  1413. package/dist/config/shared/componentSchema.js +0 -27
  1414. package/dist/config/shared/componentSchema.js.map +0 -1
  1415. package/dist/config/validate.d.ts +0 -4
  1416. package/dist/config/validate.d.ts.map +0 -1
  1417. package/dist/config/validate.js +0 -89
  1418. package/dist/config/validate.js.map +0 -1
  1419. package/dist/exports/auth.d.ts +0 -7
  1420. package/dist/exports/auth.d.ts.map +0 -1
  1421. package/dist/exports/auth.js +0 -7
  1422. package/dist/exports/auth.js.map +0 -1
  1423. package/dist/exports/config.d.ts +0 -14
  1424. package/dist/exports/config.d.ts.map +0 -1
  1425. package/dist/exports/config.js +0 -14
  1426. package/dist/exports/config.js.map +0 -1
  1427. package/dist/exports/database.d.ts +0 -23
  1428. package/dist/exports/database.d.ts.map +0 -1
  1429. package/dist/exports/database.js +0 -22
  1430. package/dist/exports/database.js.map +0 -1
  1431. package/dist/exports/errors.d.ts +0 -2
  1432. package/dist/exports/errors.d.ts.map +0 -1
  1433. package/dist/exports/errors.js +0 -3
  1434. package/dist/exports/errors.js.map +0 -1
  1435. package/dist/exports/fields/index.d.ts +0 -3
  1436. package/dist/exports/fields/index.d.ts.map +0 -1
  1437. package/dist/exports/fields/index.js +0 -4
  1438. package/dist/exports/fields/index.js.map +0 -1
  1439. package/dist/exports/fields/validations.d.ts +0 -2
  1440. package/dist/exports/fields/validations.d.ts.map +0 -1
  1441. package/dist/exports/fields/validations.js +0 -3
  1442. package/dist/exports/fields/validations.js.map +0 -1
  1443. package/dist/exports/operations.d.ts +0 -31
  1444. package/dist/exports/operations.d.ts.map +0 -1
  1445. package/dist/exports/operations.js +0 -32
  1446. package/dist/exports/operations.js.map +0 -1
  1447. package/dist/exports/types.d.ts +0 -18
  1448. package/dist/exports/types.d.ts.map +0 -1
  1449. package/dist/exports/types.js +0 -5
  1450. package/dist/exports/types.js.map +0 -1
  1451. package/dist/exports/uploads.d.ts +0 -2
  1452. package/dist/exports/uploads.d.ts.map +0 -1
  1453. package/dist/exports/uploads.js +0 -3
  1454. package/dist/exports/uploads.js.map +0 -1
  1455. package/dist/exports/utilities.d.ts +0 -34
  1456. package/dist/exports/utilities.d.ts.map +0 -1
  1457. package/dist/exports/utilities.js +0 -34
  1458. package/dist/exports/utilities.js.map +0 -1
  1459. package/dist/exports/versions.d.ts +0 -9
  1460. package/dist/exports/versions.d.ts.map +0 -1
  1461. package/dist/exports/versions.js +0 -9
  1462. package/dist/exports/versions.js.map +0 -1
  1463. package/dist/fields/config/schema.d.ts +0 -29
  1464. package/dist/fields/config/schema.d.ts.map +0 -1
  1465. package/dist/fields/config/schema.js +0 -483
  1466. package/dist/fields/config/schema.js.map +0 -1
  1467. package/dist/fields/hooks/beforeChange/beforeDuplicate.d.ts +0 -3
  1468. package/dist/fields/hooks/beforeChange/beforeDuplicate.d.ts.map +0 -1
  1469. package/dist/fields/hooks/beforeChange/beforeDuplicate.js +0 -6
  1470. package/dist/fields/hooks/beforeChange/beforeDuplicate.js.map +0 -1
  1471. package/dist/globals/config/schema.d.ts +0 -4
  1472. package/dist/globals/config/schema.d.ts.map +0 -1
  1473. package/dist/globals/config/schema.js +0 -70
  1474. package/dist/globals/config/schema.js.map +0 -1
  1475. package/dist/utilities/combineMerge.d.ts +0 -2
  1476. package/dist/utilities/combineMerge.d.ts.map +0 -1
  1477. package/dist/utilities/combineMerge.js +0 -16
  1478. package/dist/utilities/combineMerge.js.map +0 -1
  1479. package/dist/utilities/convertData.d.ts +0 -5
  1480. package/dist/utilities/convertData.d.ts.map +0 -1
  1481. package/dist/utilities/convertData.js +0 -16
  1482. package/dist/utilities/convertData.js.map +0 -1
  1483. package/dist/utilities/getCSSVariable.d.ts +0 -3
  1484. package/dist/utilities/getCSSVariable.d.ts.map +0 -1
  1485. package/dist/utilities/getCSSVariable.js +0 -3
  1486. package/dist/utilities/getCSSVariable.js.map +0 -1
  1487. package/dist/utilities/importWithoutClientFiles.d.ts +0 -7
  1488. package/dist/utilities/importWithoutClientFiles.d.ts.map +0 -1
  1489. package/dist/utilities/importWithoutClientFiles.js +0 -44
  1490. package/dist/utilities/importWithoutClientFiles.js.map +0 -1
  1491. package/dist/utilities/mergeListSearchAndWhere.d.ts +0 -12
  1492. package/dist/utilities/mergeListSearchAndWhere.d.ts.map +0 -1
  1493. package/dist/utilities/mergeListSearchAndWhere.js +0 -57
  1494. package/dist/utilities/mergeListSearchAndWhere.js.map +0 -1
  1495. package/dist/utilities/overwriteMerge.d.ts +0 -3
  1496. package/dist/utilities/overwriteMerge.d.ts.map +0 -1
  1497. package/dist/utilities/overwriteMerge.js +0 -4
  1498. package/dist/utilities/overwriteMerge.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/collections/operations/duplicate.ts"],"sourcesContent":["import type { DeepPartial } from 'ts-essentials'\n\nimport httpStatus from 'http-status'\n\nimport type { FindOneArgs } from '../../database/types.js'\nimport type { GeneratedTypes } from '../../index.js'\nimport type { PayloadRequest } from '../../types/index.js'\nimport type { Collection } from '../config/types.js'\n\nimport executeAccess from '../../auth/executeAccess.js'\nimport { hasWhereAccessResult } from '../../auth/types.js'\nimport { combineQueries } from '../../database/combineQueries.js'\nimport { APIError, Forbidden, NotFound } from '../../errors/index.js'\nimport { afterChange } from '../../fields/hooks/afterChange/index.js'\nimport { afterRead } from '../../fields/hooks/afterRead/index.js'\nimport { beforeChange } from '../../fields/hooks/beforeChange/index.js'\nimport { beforeValidate } from '../../fields/hooks/beforeValidate/index.js'\nimport { commitTransaction } from '../../utilities/commitTransaction.js'\nimport { initTransaction } from '../../utilities/initTransaction.js'\nimport { killTransaction } from '../../utilities/killTransaction.js'\nimport { getLatestCollectionVersion } from '../../versions/getLatestCollectionVersion.js'\nimport { saveVersion } from '../../versions/saveVersion.js'\nimport { buildAfterOperation } from './utils.js'\n\nexport type Arguments = {\n collection: Collection\n depth?: number\n draft?: boolean\n id: number | string\n overrideAccess?: boolean\n req: PayloadRequest\n showHiddenFields?: boolean\n}\n\nexport const duplicateOperation = async <TSlug extends keyof GeneratedTypes['collections']>(\n incomingArgs: Arguments,\n): Promise<GeneratedTypes['collections'][TSlug]> => {\n let args = incomingArgs\n const operation = 'create'\n\n try {\n const shouldCommit = await initTransaction(args.req)\n\n // /////////////////////////////////////\n // beforeOperation - Collection\n // /////////////////////////////////////\n\n await args.collection.config.hooks.beforeOperation.reduce(async (priorHook, hook) => {\n await priorHook\n\n args =\n (await hook({\n args,\n collection: args.collection.config,\n context: args.req.context,\n operation,\n req: args.req,\n })) || args\n }, Promise.resolve())\n\n const {\n id,\n collection: { config: collectionConfig },\n depth,\n draft: draftArg = true,\n overrideAccess,\n req: { fallbackLocale, locale: localeArg, payload },\n req,\n showHiddenFields,\n } = args\n\n if (!id) {\n throw new APIError('Missing ID of document to duplicate.', httpStatus.BAD_REQUEST)\n }\n const shouldSaveDraft = Boolean(draftArg && collectionConfig.versions.drafts)\n\n // /////////////////////////////////////\n // Read Access\n // /////////////////////////////////////\n\n const accessResults = !overrideAccess\n ? await executeAccess({ id, req }, collectionConfig.access.read)\n : true\n const hasWherePolicy = hasWhereAccessResult(accessResults)\n\n // /////////////////////////////////////\n // Retrieve document\n // /////////////////////////////////////\n const findOneArgs: FindOneArgs = {\n collection: collectionConfig.slug,\n locale: req.locale,\n req,\n where: combineQueries({ id: { equals: id } }, accessResults),\n }\n\n const docWithLocales = await getLatestCollectionVersion({\n id,\n config: collectionConfig,\n payload,\n query: findOneArgs,\n req,\n })\n\n if (!docWithLocales && !hasWherePolicy) throw new NotFound(req.t)\n if (!docWithLocales && hasWherePolicy) throw new Forbidden(req.t)\n\n // remove the createdAt timestamp and id to rely on the db to set the default it\n delete docWithLocales.createdAt\n delete docWithLocales.id\n\n // for version enabled collections, override the current status with draft, unless draft is explicitly set to false\n if (shouldSaveDraft) {\n docWithLocales._status = 'draft'\n }\n\n let result\n\n const originalDoc = await afterRead({\n collection: collectionConfig,\n context: req.context,\n depth: 0,\n doc: docWithLocales,\n fallbackLocale: null,\n global: null,\n locale: req.locale,\n overrideAccess: true,\n req,\n showHiddenFields: true,\n })\n\n // /////////////////////////////////////\n // Create Access\n // /////////////////////////////////////\n\n if (!overrideAccess) {\n await executeAccess({ data: originalDoc, req }, collectionConfig.access.create)\n }\n\n // /////////////////////////////////////\n // beforeValidate - Fields\n // /////////////////////////////////////\n\n let data = await beforeValidate<DeepPartial<GeneratedTypes['collections'][TSlug]>>({\n id,\n collection: collectionConfig,\n context: req.context,\n data: originalDoc,\n doc: originalDoc,\n duplicate: true,\n global: null,\n operation,\n overrideAccess,\n req,\n })\n\n // /////////////////////////////////////\n // beforeValidate - Collection\n // /////////////////////////////////////\n\n await collectionConfig.hooks.beforeValidate.reduce(async (priorHook, hook) => {\n await priorHook\n\n data =\n (await hook({\n collection: collectionConfig,\n context: req.context,\n data,\n operation,\n originalDoc,\n req,\n })) || result\n }, Promise.resolve())\n\n // /////////////////////////////////////\n // beforeChange - Collection\n // /////////////////////////////////////\n\n await collectionConfig.hooks.beforeChange.reduce(async (priorHook, hook) => {\n await priorHook\n\n data =\n (await hook({\n collection: collectionConfig,\n context: req.context,\n data,\n operation,\n originalDoc: result,\n req,\n })) || result\n }, Promise.resolve())\n\n // /////////////////////////////////////\n // beforeChange - Fields\n // /////////////////////////////////////\n\n result = await beforeChange<GeneratedTypes['collections'][TSlug]>({\n id,\n collection: collectionConfig,\n context: req.context,\n data,\n doc: originalDoc,\n docWithLocales,\n duplicate: true,\n global: null,\n operation,\n req,\n skipValidation: shouldSaveDraft,\n })\n\n // set req.locale back to the original locale\n req.locale = localeArg\n\n // /////////////////////////////////////\n // Create / Update\n // /////////////////////////////////////\n\n const versionDoc = await payload.db.create({\n collection: collectionConfig.slug,\n data: result,\n req,\n })\n\n // /////////////////////////////////////\n // Create version\n // /////////////////////////////////////\n\n if (collectionConfig.versions) {\n result = await saveVersion({\n id: versionDoc.id,\n collection: collectionConfig,\n docWithLocales: {\n ...versionDoc,\n createdAt: result.createdAt,\n },\n draft: shouldSaveDraft,\n payload,\n req,\n })\n }\n\n // /////////////////////////////////////\n // afterRead - Fields\n // /////////////////////////////////////\n\n result = await afterRead({\n collection: collectionConfig,\n context: req.context,\n depth,\n doc: versionDoc,\n fallbackLocale,\n global: null,\n locale: localeArg,\n overrideAccess,\n req,\n showHiddenFields,\n })\n\n // /////////////////////////////////////\n // afterRead - Collection\n // /////////////////////////////////////\n\n await collectionConfig.hooks.afterRead.reduce(async (priorHook, hook) => {\n await priorHook\n\n result =\n (await hook({\n collection: collectionConfig,\n context: req.context,\n doc: result,\n req,\n })) || result\n }, Promise.resolve())\n\n // /////////////////////////////////////\n // afterChange - Fields\n // /////////////////////////////////////\n\n result = await afterChange<GeneratedTypes['collections'][TSlug]>({\n collection: collectionConfig,\n context: req.context,\n data: versionDoc,\n doc: result,\n global: null,\n operation,\n previousDoc: {},\n req,\n })\n\n // /////////////////////////////////////\n // afterChange - Collection\n // /////////////////////////////////////\n\n await collectionConfig.hooks.afterChange.reduce(async (priorHook, hook) => {\n await priorHook\n\n result =\n (await hook({\n collection: collectionConfig,\n context: req.context,\n doc: result,\n operation,\n previousDoc: {},\n req,\n })) || result\n }, Promise.resolve())\n\n // /////////////////////////////////////\n // afterOperation - Collection\n // /////////////////////////////////////\n\n result = await buildAfterOperation<GeneratedTypes['collections'][TSlug]>({\n args,\n collection: collectionConfig,\n operation,\n result,\n })\n\n // /////////////////////////////////////\n // Return results\n // /////////////////////////////////////\n\n if (shouldCommit) await commitTransaction(req)\n\n return result\n } catch (error: unknown) {\n await killTransaction(args.req)\n throw error\n }\n}\n"],"names":["httpStatus","executeAccess","hasWhereAccessResult","combineQueries","APIError","Forbidden","NotFound","afterChange","afterRead","beforeChange","beforeValidate","commitTransaction","initTransaction","killTransaction","getLatestCollectionVersion","saveVersion","buildAfterOperation","duplicateOperation","incomingArgs","args","operation","shouldCommit","req","collection","config","hooks","beforeOperation","reduce","priorHook","hook","context","Promise","resolve","id","collectionConfig","depth","draft","draftArg","overrideAccess","fallbackLocale","locale","localeArg","payload","showHiddenFields","BAD_REQUEST","shouldSaveDraft","Boolean","versions","drafts","accessResults","access","read","hasWherePolicy","findOneArgs","slug","where","equals","docWithLocales","query","t","createdAt","_status","result","originalDoc","doc","global","data","create","duplicate","skipValidation","versionDoc","db","previousDoc","error"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"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"}
1
+ {"version":3,"sources":["../../../src/collections/operations/duplicate.ts"],"sourcesContent":["import type { DeepPartial } from 'ts-essentials'\n\nimport httpStatus from 'http-status'\n\nimport type { FindOneArgs } from '../../database/types.js'\nimport type { CollectionSlug } from '../../index.js'\nimport type {\n PayloadRequest,\n PopulateType,\n SelectType,\n TransformCollectionWithSelect,\n} from '../../types/index.js'\nimport type {\n Collection,\n DataFromCollectionSlug,\n SelectFromCollectionSlug,\n} from '../config/types.js'\n\nimport executeAccess from '../../auth/executeAccess.js'\nimport { hasWhereAccessResult } from '../../auth/types.js'\nimport { combineQueries } from '../../database/combineQueries.js'\nimport { APIError, Forbidden, NotFound } from '../../errors/index.js'\nimport { afterChange } from '../../fields/hooks/afterChange/index.js'\nimport { afterRead } from '../../fields/hooks/afterRead/index.js'\nimport { beforeChange } from '../../fields/hooks/beforeChange/index.js'\nimport { beforeDuplicate } from '../../fields/hooks/beforeDuplicate/index.js'\nimport { beforeValidate } from '../../fields/hooks/beforeValidate/index.js'\nimport { generateFileData } from '../../uploads/generateFileData.js'\nimport { uploadFiles } from '../../uploads/uploadFiles.js'\nimport { commitTransaction } from '../../utilities/commitTransaction.js'\nimport { initTransaction } from '../../utilities/initTransaction.js'\nimport { killTransaction } from '../../utilities/killTransaction.js'\nimport sanitizeInternalFields from '../../utilities/sanitizeInternalFields.js'\nimport { getLatestCollectionVersion } from '../../versions/getLatestCollectionVersion.js'\nimport { saveVersion } from '../../versions/saveVersion.js'\nimport { buildAfterOperation } from './utils.js'\n\nexport type Arguments = {\n collection: Collection\n depth?: number\n disableTransaction?: boolean\n draft?: boolean\n id: number | string\n overrideAccess?: boolean\n populate?: PopulateType\n req: PayloadRequest\n select?: SelectType\n showHiddenFields?: boolean\n}\n\nexport const duplicateOperation = async <\n TSlug extends CollectionSlug,\n TSelect extends SelectFromCollectionSlug<TSlug>,\n>(\n incomingArgs: Arguments,\n): Promise<TransformCollectionWithSelect<TSlug, TSelect>> => {\n let args = incomingArgs\n const operation = 'create'\n\n try {\n const shouldCommit = !args.disableTransaction && (await initTransaction(args.req))\n\n // /////////////////////////////////////\n // beforeOperation - Collection\n // /////////////////////////////////////\n\n await args.collection.config.hooks.beforeOperation.reduce(async (priorHook, hook) => {\n await priorHook\n\n args =\n (await hook({\n args,\n collection: args.collection.config,\n context: args.req.context,\n operation,\n req: args.req,\n })) || args\n }, Promise.resolve())\n\n const {\n id,\n collection: { config: collectionConfig },\n depth,\n draft: draftArg = true,\n overrideAccess,\n populate,\n req: { fallbackLocale, locale: localeArg, payload },\n req,\n select,\n showHiddenFields,\n } = args\n\n if (!id) {\n throw new APIError('Missing ID of document to duplicate.', httpStatus.BAD_REQUEST)\n }\n const shouldSaveDraft = Boolean(draftArg && collectionConfig.versions.drafts)\n\n // /////////////////////////////////////\n // Read Access\n // /////////////////////////////////////\n\n const accessResults = !overrideAccess\n ? await executeAccess({ id, req }, collectionConfig.access.read)\n : true\n const hasWherePolicy = hasWhereAccessResult(accessResults)\n\n // /////////////////////////////////////\n // Retrieve document\n // /////////////////////////////////////\n const findOneArgs: FindOneArgs = {\n collection: collectionConfig.slug,\n locale: req.locale,\n req,\n where: combineQueries({ id: { equals: id } }, accessResults),\n }\n\n let docWithLocales = await getLatestCollectionVersion({\n id,\n config: collectionConfig,\n payload,\n query: findOneArgs,\n req,\n })\n\n if (!docWithLocales && !hasWherePolicy) {\n throw new NotFound(req.t)\n }\n if (!docWithLocales && hasWherePolicy) {\n throw new Forbidden(req.t)\n }\n\n // remove the createdAt timestamp and id to rely on the db to set the default it\n delete docWithLocales.createdAt\n delete docWithLocales.id\n\n docWithLocales = await beforeDuplicate({\n id,\n collection: collectionConfig,\n context: req.context,\n doc: docWithLocales,\n overrideAccess,\n req,\n })\n\n // for version enabled collections, override the current status with draft, unless draft is explicitly set to false\n if (shouldSaveDraft) {\n docWithLocales._status = 'draft'\n }\n\n let result\n\n let originalDoc = await afterRead({\n collection: collectionConfig,\n context: req.context,\n depth: 0,\n doc: docWithLocales,\n draft: draftArg,\n fallbackLocale: null,\n global: null,\n locale: req.locale,\n overrideAccess: true,\n req,\n showHiddenFields: true,\n })\n\n const { data: newFileData, files: filesToUpload } = await generateFileData({\n collection: args.collection,\n config: req.payload.config,\n data: originalDoc,\n operation: 'create',\n overwriteExistingFiles: 'forceDisable',\n req,\n throwOnMissingFile: true,\n })\n\n originalDoc = newFileData\n\n // /////////////////////////////////////\n // Create Access\n // /////////////////////////////////////\n\n if (!overrideAccess) {\n await executeAccess({ data: originalDoc, req }, collectionConfig.access.create)\n }\n\n // /////////////////////////////////////\n // beforeValidate - Fields\n // /////////////////////////////////////\n\n let data = await beforeValidate<DeepPartial<DataFromCollectionSlug<TSlug>>>({\n id,\n collection: collectionConfig,\n context: req.context,\n data: originalDoc,\n doc: originalDoc,\n duplicate: true,\n global: null,\n operation,\n overrideAccess,\n req,\n })\n\n // /////////////////////////////////////\n // beforeValidate - Collection\n // /////////////////////////////////////\n\n await collectionConfig.hooks.beforeValidate.reduce(async (priorHook, hook) => {\n await priorHook\n\n data =\n (await hook({\n collection: collectionConfig,\n context: req.context,\n data,\n operation,\n originalDoc,\n req,\n })) || result\n }, Promise.resolve())\n\n // /////////////////////////////////////\n // beforeChange - Collection\n // /////////////////////////////////////\n\n await collectionConfig.hooks.beforeChange.reduce(async (priorHook, hook) => {\n await priorHook\n\n data =\n (await hook({\n collection: collectionConfig,\n context: req.context,\n data,\n operation,\n originalDoc: result,\n req,\n })) || result\n }, Promise.resolve())\n\n // /////////////////////////////////////\n // beforeChange - Fields\n // /////////////////////////////////////\n\n result = await beforeChange({\n id,\n collection: collectionConfig,\n context: req.context,\n data,\n doc: originalDoc,\n docWithLocales,\n global: null,\n operation,\n req,\n skipValidation:\n shouldSaveDraft &&\n collectionConfig.versions.drafts &&\n !collectionConfig.versions.drafts.validate,\n })\n\n // set req.locale back to the original locale\n req.locale = localeArg\n\n // /////////////////////////////////////\n // Create / Update\n // /////////////////////////////////////\n\n // /////////////////////////////////////\n // Write files to local storage\n // /////////////////////////////////////\n\n if (!collectionConfig.upload.disableLocalStorage) {\n await uploadFiles(payload, filesToUpload, req)\n }\n\n let versionDoc = await payload.db.create({\n collection: collectionConfig.slug,\n data: result,\n req,\n select,\n })\n\n versionDoc = sanitizeInternalFields(versionDoc)\n\n // /////////////////////////////////////\n // Create version\n // /////////////////////////////////////\n\n if (collectionConfig.versions) {\n result = await saveVersion({\n id: versionDoc.id,\n collection: collectionConfig,\n docWithLocales: versionDoc,\n draft: shouldSaveDraft,\n payload,\n req,\n })\n }\n\n // /////////////////////////////////////\n // afterRead - Fields\n // /////////////////////////////////////\n\n result = await afterRead({\n collection: collectionConfig,\n context: req.context,\n depth,\n doc: versionDoc,\n draft: draftArg,\n fallbackLocale,\n global: null,\n locale: localeArg,\n overrideAccess,\n populate,\n req,\n select,\n showHiddenFields,\n })\n\n // /////////////////////////////////////\n // afterRead - Collection\n // /////////////////////////////////////\n\n await collectionConfig.hooks.afterRead.reduce(async (priorHook, hook) => {\n await priorHook\n\n result =\n (await hook({\n collection: collectionConfig,\n context: req.context,\n doc: result,\n req,\n })) || result\n }, Promise.resolve())\n\n // /////////////////////////////////////\n // afterChange - Fields\n // /////////////////////////////////////\n\n result = await afterChange({\n collection: collectionConfig,\n context: req.context,\n data: versionDoc,\n doc: result,\n global: null,\n operation,\n previousDoc: {},\n req,\n })\n\n // /////////////////////////////////////\n // afterChange - Collection\n // /////////////////////////////////////\n\n await collectionConfig.hooks.afterChange.reduce(async (priorHook, hook) => {\n await priorHook\n\n result =\n (await hook({\n collection: collectionConfig,\n context: req.context,\n doc: result,\n operation,\n previousDoc: {},\n req,\n })) || result\n }, Promise.resolve())\n\n // /////////////////////////////////////\n // afterOperation - Collection\n // /////////////////////////////////////\n\n result = await buildAfterOperation({\n args,\n collection: collectionConfig,\n operation,\n result,\n })\n\n // /////////////////////////////////////\n // Return results\n // /////////////////////////////////////\n\n if (shouldCommit) {\n await commitTransaction(req)\n }\n\n return result\n } catch (error: unknown) {\n await killTransaction(args.req)\n throw error\n }\n}\n"],"names":["httpStatus","executeAccess","hasWhereAccessResult","combineQueries","APIError","Forbidden","NotFound","afterChange","afterRead","beforeChange","beforeDuplicate","beforeValidate","generateFileData","uploadFiles","commitTransaction","initTransaction","killTransaction","sanitizeInternalFields","getLatestCollectionVersion","saveVersion","buildAfterOperation","duplicateOperation","incomingArgs","args","operation","shouldCommit","disableTransaction","req","collection","config","hooks","beforeOperation","reduce","priorHook","hook","context","Promise","resolve","id","collectionConfig","depth","draft","draftArg","overrideAccess","populate","fallbackLocale","locale","localeArg","payload","select","showHiddenFields","BAD_REQUEST","shouldSaveDraft","Boolean","versions","drafts","accessResults","access","read","hasWherePolicy","findOneArgs","slug","where","equals","docWithLocales","query","t","createdAt","doc","_status","result","originalDoc","global","data","newFileData","files","filesToUpload","overwriteExistingFiles","throwOnMissingFile","create","duplicate","skipValidation","validate","upload","disableLocalStorage","versionDoc","db","previousDoc","error"],"mappings":"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"}
@@ -1,20 +1,25 @@
1
1
  import type { PaginatedDocs } from '../../database/types.js';
2
- import type { PayloadRequest, Where } from '../../types/index.js';
3
- import type { Collection, TypeWithID } from '../config/types.js';
2
+ import type { CollectionSlug, JoinQuery } from '../../index.js';
3
+ import type { PayloadRequest, PopulateType, SelectType, Sort, TransformCollectionWithSelect, Where } from '../../types/index.js';
4
+ import type { Collection, SelectFromCollectionSlug } from '../config/types.js';
4
5
  export type Arguments = {
5
6
  collection: Collection;
6
7
  currentDepth?: number;
7
8
  depth?: number;
8
9
  disableErrors?: boolean;
9
10
  draft?: boolean;
11
+ includeLockStatus?: boolean;
12
+ joins?: JoinQuery;
10
13
  limit?: number;
11
14
  overrideAccess?: boolean;
12
15
  page?: number;
13
16
  pagination?: boolean;
17
+ populate?: PopulateType;
14
18
  req?: PayloadRequest;
19
+ select?: SelectType;
15
20
  showHiddenFields?: boolean;
16
- sort?: string;
21
+ sort?: Sort;
17
22
  where?: Where;
18
23
  };
19
- export declare const findOperation: <T extends TypeWithID & Record<string, unknown>>(incomingArgs: Arguments) => Promise<PaginatedDocs<T>>;
24
+ export declare const findOperation: <TSlug extends CollectionSlug, TSelect extends SelectFromCollectionSlug<TSlug>>(incomingArgs: Arguments) => Promise<PaginatedDocs<TransformCollectionWithSelect<TSlug, TSelect>>>;
20
25
  //# sourceMappingURL=find.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"find.d.ts","sourceRoot":"","sources":["../../../src/collections/operations/find.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAA;AAC5D,OAAO,KAAK,EAAE,cAAc,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAA;AACjE,OAAO,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAA;AAchE,MAAM,MAAM,SAAS,GAAG;IACtB,UAAU,EAAE,UAAU,CAAA;IACtB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,GAAG,CAAC,EAAE,cAAc,CAAA;IACpB,gBAAgB,CAAC,EAAE,OAAO,CAAA;IAC1B,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,KAAK,CAAC,EAAE,KAAK,CAAA;CACd,CAAA;AAED,eAAO,MAAM,aAAa,iEACV,SAAS,KACtB,QAAQ,cAAc,CAAC,CAAC,CAiO1B,CAAA"}
1
+ {"version":3,"file":"find.d.ts","sourceRoot":"","sources":["../../../src/collections/operations/find.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAA;AAC5D,OAAO,KAAK,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAC/D,OAAO,KAAK,EACV,cAAc,EACd,YAAY,EACZ,UAAU,EACV,IAAI,EACJ,6BAA6B,EAC7B,KAAK,EACN,MAAM,sBAAsB,CAAA;AAC7B,OAAO,KAAK,EACV,UAAU,EAEV,wBAAwB,EACzB,MAAM,oBAAoB,CAAA;AAc3B,MAAM,MAAM,SAAS,GAAG;IACtB,UAAU,EAAE,UAAU,CAAA;IACtB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,iBAAiB,CAAC,EAAE,OAAO,CAAA;IAC3B,KAAK,CAAC,EAAE,SAAS,CAAA;IACjB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,QAAQ,CAAC,EAAE,YAAY,CAAA;IACvB,GAAG,CAAC,EAAE,cAAc,CAAA;IACpB,MAAM,CAAC,EAAE,UAAU,CAAA;IACnB,gBAAgB,CAAC,EAAE,OAAO,CAAA;IAC1B,IAAI,CAAC,EAAE,IAAI,CAAA;IACX,KAAK,CAAC,EAAE,KAAK,CAAA;CACd,CAAA;AAED,eAAO,MAAM,aAAa,GACxB,KAAK,SAAS,cAAc,EAC5B,OAAO,SAAS,wBAAwB,CAAC,KAAK,CAAC,gBAEjC,SAAS,KACtB,OAAO,CAAC,aAAa,CAAC,6BAA6B,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,CA+StE,CAAA"}
@@ -1,18 +1,17 @@
1
1
  import executeAccess from '../../auth/executeAccess.js';
2
2
  import { combineQueries } from '../../database/combineQueries.js';
3
3
  import { validateQueryPaths } from '../../database/queryValidation/validateQueryPaths.js';
4
+ import { sanitizeJoinQuery } from '../../database/sanitizeJoinQuery.js';
4
5
  import { afterRead } from '../../fields/hooks/afterRead/index.js';
5
- import { commitTransaction } from '../../utilities/commitTransaction.js';
6
- import { initTransaction } from '../../utilities/initTransaction.js';
7
6
  import { killTransaction } from '../../utilities/killTransaction.js';
8
7
  import { buildVersionCollectionFields } from '../../versions/buildCollectionFields.js';
9
8
  import { appendVersionToQueryKey } from '../../versions/drafts/appendVersionToQueryKey.js';
9
+ import { getQueryDraftsSelect } from '../../versions/drafts/getQueryDraftsSelect.js';
10
10
  import { getQueryDraftsSort } from '../../versions/drafts/getQueryDraftsSort.js';
11
11
  import { buildAfterOperation } from './utils.js';
12
12
  export const findOperation = async (incomingArgs)=>{
13
13
  let args = incomingArgs;
14
14
  try {
15
- const shouldCommit = await initTransaction(args.req);
16
15
  // /////////////////////////////////////
17
16
  // beforeOperation - Collection
18
17
  // /////////////////////////////////////
@@ -26,7 +25,7 @@ export const findOperation = async (incomingArgs)=>{
26
25
  req: args.req
27
26
  }) || args;
28
27
  }, Promise.resolve());
29
- const { collection: { config: collectionConfig }, collection, currentDepth, depth, disableErrors, draft: draftsEnabled, limit, overrideAccess, page, pagination = true, req: { fallbackLocale, locale, payload }, req, showHiddenFields, sort, where } = args;
28
+ const { collection: { config: collectionConfig }, collection, currentDepth, depth, disableErrors, draft: draftsEnabled, includeLockStatus, joins, limit, overrideAccess, page, pagination = true, populate, req: { fallbackLocale, locale, payload }, req, select, showHiddenFields, sort, where } = args;
30
29
  // /////////////////////////////////////
31
30
  // Access
32
31
  // /////////////////////////////////////
@@ -60,23 +59,36 @@ export const findOperation = async (incomingArgs)=>{
60
59
  const sanitizedPage = page || 1;
61
60
  let result;
62
61
  let fullWhere = combineQueries(where, accessResult);
62
+ const sanitizedJoins = await sanitizeJoinQuery({
63
+ collectionConfig,
64
+ joins,
65
+ overrideAccess,
66
+ req
67
+ });
63
68
  if (collectionConfig.versions?.drafts && draftsEnabled) {
64
69
  fullWhere = appendVersionToQueryKey(fullWhere);
65
70
  await validateQueryPaths({
66
71
  collectionConfig: collection.config,
67
72
  overrideAccess,
68
73
  req,
69
- versionFields: buildVersionCollectionFields(collection.config),
74
+ versionFields: buildVersionCollectionFields(payload.config, collection.config),
70
75
  where: fullWhere
71
76
  });
72
77
  result = await payload.db.queryDrafts({
73
78
  collection: collectionConfig.slug,
79
+ joins: req.payloadAPI === 'GraphQL' ? false : sanitizedJoins,
74
80
  limit: sanitizedLimit,
75
81
  locale,
76
82
  page: sanitizedPage,
77
83
  pagination: usePagination,
78
84
  req,
79
- sort: getQueryDraftsSort(sort),
85
+ select: getQueryDraftsSelect({
86
+ select
87
+ }),
88
+ sort: getQueryDraftsSort({
89
+ collectionConfig,
90
+ sort
91
+ }),
80
92
  where: fullWhere
81
93
  });
82
94
  } else {
@@ -88,15 +100,75 @@ export const findOperation = async (incomingArgs)=>{
88
100
  });
89
101
  result = await payload.db.find({
90
102
  collection: collectionConfig.slug,
103
+ joins: req.payloadAPI === 'GraphQL' ? false : sanitizedJoins,
91
104
  limit: sanitizedLimit,
92
105
  locale,
93
106
  page: sanitizedPage,
94
107
  pagination,
95
108
  req,
109
+ select,
96
110
  sort,
97
111
  where: fullWhere
98
112
  });
99
113
  }
114
+ if (includeLockStatus) {
115
+ try {
116
+ const lockDocumentsProp = collectionConfig?.lockDocuments;
117
+ const lockDurationDefault = 300 // Default 5 minutes in seconds
118
+ ;
119
+ const lockDuration = typeof lockDocumentsProp === 'object' ? lockDocumentsProp.duration : lockDurationDefault;
120
+ const lockDurationInMilliseconds = lockDuration * 1000;
121
+ const lockedDocuments = await payload.find({
122
+ collection: 'payload-locked-documents',
123
+ depth: 1,
124
+ limit: sanitizedLimit,
125
+ overrideAccess: false,
126
+ pagination: false,
127
+ req,
128
+ where: {
129
+ and: [
130
+ {
131
+ 'document.relationTo': {
132
+ equals: collectionConfig.slug
133
+ }
134
+ },
135
+ {
136
+ 'document.value': {
137
+ in: result.docs.map((doc)=>doc.id)
138
+ }
139
+ },
140
+ // Query where the lock is newer than the current time minus lock time
141
+ {
142
+ updatedAt: {
143
+ greater_than: new Date(new Date().getTime() - lockDurationInMilliseconds)
144
+ }
145
+ }
146
+ ]
147
+ }
148
+ });
149
+ const now = new Date().getTime();
150
+ const lockedDocs = Array.isArray(lockedDocuments?.docs) ? lockedDocuments.docs : [];
151
+ // Filter out stale locks
152
+ const validLockedDocs = lockedDocs.filter((lock)=>{
153
+ const lastEditedAt = new Date(lock?.updatedAt).getTime();
154
+ return lastEditedAt + lockDurationInMilliseconds > now;
155
+ });
156
+ result.docs = result.docs.map((doc)=>{
157
+ const lockedDoc = validLockedDocs.find((lock)=>lock?.document?.value === doc.id);
158
+ return {
159
+ ...doc,
160
+ _isLocked: !!lockedDoc,
161
+ _userEditing: lockedDoc ? lockedDoc?.user?.value : null
162
+ };
163
+ });
164
+ } catch (error) {
165
+ result.docs = result.docs.map((doc)=>({
166
+ ...doc,
167
+ _isLocked: false,
168
+ _userEditing: null
169
+ }));
170
+ }
171
+ }
100
172
  // /////////////////////////////////////
101
173
  // beforeRead - Collection
102
174
  // /////////////////////////////////////
@@ -128,12 +200,15 @@ export const findOperation = async (incomingArgs)=>{
128
200
  currentDepth,
129
201
  depth,
130
202
  doc,
203
+ draft: draftsEnabled,
131
204
  fallbackLocale,
132
205
  findMany: true,
133
206
  global: null,
134
207
  locale,
135
208
  overrideAccess,
209
+ populate,
136
210
  req,
211
+ select,
137
212
  showHiddenFields
138
213
  })))
139
214
  };
@@ -170,7 +245,6 @@ export const findOperation = async (incomingArgs)=>{
170
245
  // /////////////////////////////////////
171
246
  // Return results
172
247
  // /////////////////////////////////////
173
- if (shouldCommit) await commitTransaction(req);
174
248
  return result;
175
249
  } catch (error) {
176
250
  await killTransaction(args.req);
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/collections/operations/find.ts"],"sourcesContent":["import type { AccessResult } from '../../config/types.js'\nimport type { PaginatedDocs } from '../../database/types.js'\nimport type { PayloadRequest, Where } from '../../types/index.js'\nimport type { Collection, TypeWithID } from '../config/types.js'\n\nimport executeAccess from '../../auth/executeAccess.js'\nimport { combineQueries } from '../../database/combineQueries.js'\nimport { validateQueryPaths } from '../../database/queryValidation/validateQueryPaths.js'\nimport { afterRead } from '../../fields/hooks/afterRead/index.js'\nimport { commitTransaction } from '../../utilities/commitTransaction.js'\nimport { initTransaction } from '../../utilities/initTransaction.js'\nimport { killTransaction } from '../../utilities/killTransaction.js'\nimport { buildVersionCollectionFields } from '../../versions/buildCollectionFields.js'\nimport { appendVersionToQueryKey } from '../../versions/drafts/appendVersionToQueryKey.js'\nimport { getQueryDraftsSort } from '../../versions/drafts/getQueryDraftsSort.js'\nimport { buildAfterOperation } from './utils.js'\n\nexport type Arguments = {\n collection: Collection\n currentDepth?: number\n depth?: number\n disableErrors?: boolean\n draft?: boolean\n limit?: number\n overrideAccess?: boolean\n page?: number\n pagination?: boolean\n req?: PayloadRequest\n showHiddenFields?: boolean\n sort?: string\n where?: Where\n}\n\nexport const findOperation = async <T extends TypeWithID & Record<string, unknown>>(\n incomingArgs: Arguments,\n): Promise<PaginatedDocs<T>> => {\n let args = incomingArgs\n\n try {\n const shouldCommit = await initTransaction(args.req)\n\n // /////////////////////////////////////\n // beforeOperation - Collection\n // /////////////////////////////////////\n\n await args.collection.config.hooks.beforeOperation.reduce(async (priorHook, hook) => {\n await priorHook\n\n args =\n (await hook({\n args,\n collection: args.collection.config,\n context: args.req.context,\n operation: 'read',\n req: args.req,\n })) || args\n }, Promise.resolve())\n\n const {\n collection: { config: collectionConfig },\n collection,\n currentDepth,\n depth,\n disableErrors,\n draft: draftsEnabled,\n limit,\n overrideAccess,\n page,\n pagination = true,\n req: { fallbackLocale, locale, payload },\n req,\n showHiddenFields,\n sort,\n where,\n } = args\n\n // /////////////////////////////////////\n // Access\n // /////////////////////////////////////\n\n let accessResult: AccessResult\n\n if (!overrideAccess) {\n accessResult = await executeAccess({ disableErrors, req }, collectionConfig.access.read)\n\n // If errors are disabled, and access returns false, return empty results\n if (accessResult === false) {\n return {\n docs: [],\n hasNextPage: false,\n hasPrevPage: false,\n limit,\n nextPage: null,\n page: 1,\n pagingCounter: 1,\n prevPage: null,\n totalDocs: 0,\n totalPages: 1,\n }\n }\n }\n\n // /////////////////////////////////////\n // Find\n // /////////////////////////////////////\n\n const usePagination = pagination && limit !== 0\n const sanitizedLimit = limit ?? (usePagination ? 10 : 0)\n const sanitizedPage = page || 1\n\n let result: PaginatedDocs<T>\n\n let fullWhere = combineQueries(where, accessResult)\n\n if (collectionConfig.versions?.drafts && draftsEnabled) {\n fullWhere = appendVersionToQueryKey(fullWhere)\n\n await validateQueryPaths({\n collectionConfig: collection.config,\n overrideAccess,\n req,\n versionFields: buildVersionCollectionFields(collection.config),\n where: fullWhere,\n })\n\n result = await payload.db.queryDrafts<T>({\n collection: collectionConfig.slug,\n limit: sanitizedLimit,\n locale,\n page: sanitizedPage,\n pagination: usePagination,\n req,\n sort: getQueryDraftsSort(sort),\n where: fullWhere,\n })\n } else {\n await validateQueryPaths({\n collectionConfig,\n overrideAccess,\n req,\n where,\n })\n\n result = await payload.db.find<T>({\n collection: collectionConfig.slug,\n limit: sanitizedLimit,\n locale,\n page: sanitizedPage,\n pagination,\n req,\n sort,\n where: fullWhere,\n })\n }\n\n // /////////////////////////////////////\n // beforeRead - Collection\n // /////////////////////////////////////\n\n result = {\n ...result,\n docs: await Promise.all(\n result.docs.map(async (doc) => {\n let docRef = doc\n\n await collectionConfig.hooks.beforeRead.reduce(async (priorHook, hook) => {\n await priorHook\n\n docRef =\n (await hook({\n collection: collectionConfig,\n context: req.context,\n doc: docRef,\n query: fullWhere,\n req,\n })) || docRef\n }, Promise.resolve())\n\n return docRef\n }),\n ),\n }\n\n // /////////////////////////////////////\n // afterRead - Fields\n // /////////////////////////////////////\n\n result = {\n ...result,\n docs: await Promise.all(\n result.docs.map(async (doc) =>\n afterRead<T>({\n collection: collectionConfig,\n context: req.context,\n currentDepth,\n depth,\n doc,\n fallbackLocale,\n findMany: true,\n global: null,\n locale,\n overrideAccess,\n req,\n showHiddenFields,\n }),\n ),\n ),\n }\n\n // /////////////////////////////////////\n // afterRead - Collection\n // /////////////////////////////////////\n\n result = {\n ...result,\n docs: await Promise.all(\n result.docs.map(async (doc) => {\n let docRef = doc\n\n await collectionConfig.hooks.afterRead.reduce(async (priorHook, hook) => {\n await priorHook\n\n docRef =\n (await hook({\n collection: collectionConfig,\n context: req.context,\n doc: docRef,\n findMany: true,\n query: fullWhere,\n req,\n })) || doc\n }, Promise.resolve())\n\n return docRef\n }),\n ),\n }\n\n // /////////////////////////////////////\n // afterOperation - Collection\n // /////////////////////////////////////\n\n result = await buildAfterOperation<T>({\n args,\n collection: collectionConfig,\n operation: 'find',\n result,\n })\n\n // /////////////////////////////////////\n // Return results\n // /////////////////////////////////////\n\n if (shouldCommit) await commitTransaction(req)\n\n return result\n } catch (error: unknown) {\n await killTransaction(args.req)\n throw error\n }\n}\n"],"names":["executeAccess","combineQueries","validateQueryPaths","afterRead","commitTransaction","initTransaction","killTransaction","buildVersionCollectionFields","appendVersionToQueryKey","getQueryDraftsSort","buildAfterOperation","findOperation","incomingArgs","args","shouldCommit","req","collection","config","hooks","beforeOperation","reduce","priorHook","hook","context","operation","Promise","resolve","collectionConfig","currentDepth","depth","disableErrors","draft","draftsEnabled","limit","overrideAccess","page","pagination","fallbackLocale","locale","payload","showHiddenFields","sort","where","accessResult","access","read","docs","hasNextPage","hasPrevPage","nextPage","pagingCounter","prevPage","totalDocs","totalPages","usePagination","sanitizedLimit","sanitizedPage","result","fullWhere","versions","drafts","versionFields","db","queryDrafts","slug","find","all","map","doc","docRef","beforeRead","query","findMany","global","error"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"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"}
1
+ {"version":3,"sources":["../../../src/collections/operations/find.ts"],"sourcesContent":["import type { AccessResult } from '../../config/types.js'\nimport type { PaginatedDocs } from '../../database/types.js'\nimport type { CollectionSlug, JoinQuery } from '../../index.js'\nimport type {\n PayloadRequest,\n PopulateType,\n SelectType,\n Sort,\n TransformCollectionWithSelect,\n Where,\n} from '../../types/index.js'\nimport type {\n Collection,\n DataFromCollectionSlug,\n SelectFromCollectionSlug,\n} from '../config/types.js'\n\nimport executeAccess from '../../auth/executeAccess.js'\nimport { combineQueries } from '../../database/combineQueries.js'\nimport { validateQueryPaths } from '../../database/queryValidation/validateQueryPaths.js'\nimport { sanitizeJoinQuery } from '../../database/sanitizeJoinQuery.js'\nimport { afterRead } from '../../fields/hooks/afterRead/index.js'\nimport { killTransaction } from '../../utilities/killTransaction.js'\nimport { buildVersionCollectionFields } from '../../versions/buildCollectionFields.js'\nimport { appendVersionToQueryKey } from '../../versions/drafts/appendVersionToQueryKey.js'\nimport { getQueryDraftsSelect } from '../../versions/drafts/getQueryDraftsSelect.js'\nimport { getQueryDraftsSort } from '../../versions/drafts/getQueryDraftsSort.js'\nimport { buildAfterOperation } from './utils.js'\n\nexport type Arguments = {\n collection: Collection\n currentDepth?: number\n depth?: number\n disableErrors?: boolean\n draft?: boolean\n includeLockStatus?: boolean\n joins?: JoinQuery\n limit?: number\n overrideAccess?: boolean\n page?: number\n pagination?: boolean\n populate?: PopulateType\n req?: PayloadRequest\n select?: SelectType\n showHiddenFields?: boolean\n sort?: Sort\n where?: Where\n}\n\nexport const findOperation = async <\n TSlug extends CollectionSlug,\n TSelect extends SelectFromCollectionSlug<TSlug>,\n>(\n incomingArgs: Arguments,\n): Promise<PaginatedDocs<TransformCollectionWithSelect<TSlug, TSelect>>> => {\n let args = incomingArgs\n\n try {\n // /////////////////////////////////////\n // beforeOperation - Collection\n // /////////////////////////////////////\n\n await args.collection.config.hooks.beforeOperation.reduce(async (priorHook, hook) => {\n await priorHook\n\n args =\n (await hook({\n args,\n collection: args.collection.config,\n context: args.req.context,\n operation: 'read',\n req: args.req,\n })) || args\n }, Promise.resolve())\n\n const {\n collection: { config: collectionConfig },\n collection,\n currentDepth,\n depth,\n disableErrors,\n draft: draftsEnabled,\n includeLockStatus,\n joins,\n limit,\n overrideAccess,\n page,\n pagination = true,\n populate,\n req: { fallbackLocale, locale, payload },\n req,\n select,\n showHiddenFields,\n sort,\n where,\n } = args\n\n // /////////////////////////////////////\n // Access\n // /////////////////////////////////////\n\n let accessResult: AccessResult\n\n if (!overrideAccess) {\n accessResult = await executeAccess({ disableErrors, req }, collectionConfig.access.read)\n\n // If errors are disabled, and access returns false, return empty results\n if (accessResult === false) {\n return {\n docs: [],\n hasNextPage: false,\n hasPrevPage: false,\n limit,\n nextPage: null,\n page: 1,\n pagingCounter: 1,\n prevPage: null,\n totalDocs: 0,\n totalPages: 1,\n }\n }\n }\n\n // /////////////////////////////////////\n // Find\n // /////////////////////////////////////\n\n const usePagination = pagination && limit !== 0\n const sanitizedLimit = limit ?? (usePagination ? 10 : 0)\n const sanitizedPage = page || 1\n\n let result: PaginatedDocs<DataFromCollectionSlug<TSlug>>\n\n let fullWhere = combineQueries(where, accessResult)\n\n const sanitizedJoins = await sanitizeJoinQuery({\n collectionConfig,\n joins,\n overrideAccess,\n req,\n })\n\n if (collectionConfig.versions?.drafts && draftsEnabled) {\n fullWhere = appendVersionToQueryKey(fullWhere)\n\n await validateQueryPaths({\n collectionConfig: collection.config,\n overrideAccess,\n req,\n versionFields: buildVersionCollectionFields(payload.config, collection.config),\n where: fullWhere,\n })\n\n result = await payload.db.queryDrafts<DataFromCollectionSlug<TSlug>>({\n collection: collectionConfig.slug,\n joins: req.payloadAPI === 'GraphQL' ? false : sanitizedJoins,\n limit: sanitizedLimit,\n locale,\n page: sanitizedPage,\n pagination: usePagination,\n req,\n select: getQueryDraftsSelect({ select }),\n sort: getQueryDraftsSort({ collectionConfig, sort }),\n where: fullWhere,\n })\n } else {\n await validateQueryPaths({\n collectionConfig,\n overrideAccess,\n req,\n where,\n })\n\n result = await payload.db.find<DataFromCollectionSlug<TSlug>>({\n collection: collectionConfig.slug,\n joins: req.payloadAPI === 'GraphQL' ? false : sanitizedJoins,\n limit: sanitizedLimit,\n locale,\n page: sanitizedPage,\n pagination,\n req,\n select,\n sort,\n where: fullWhere,\n })\n }\n\n if (includeLockStatus) {\n try {\n const lockDocumentsProp = collectionConfig?.lockDocuments\n\n const lockDurationDefault = 300 // Default 5 minutes in seconds\n const lockDuration =\n typeof lockDocumentsProp === 'object' ? lockDocumentsProp.duration : lockDurationDefault\n const lockDurationInMilliseconds = lockDuration * 1000\n\n const lockedDocuments = await payload.find({\n collection: 'payload-locked-documents',\n depth: 1,\n limit: sanitizedLimit,\n overrideAccess: false,\n pagination: false,\n req,\n where: {\n and: [\n {\n 'document.relationTo': {\n equals: collectionConfig.slug,\n },\n },\n {\n 'document.value': {\n in: result.docs.map((doc) => doc.id),\n },\n },\n // Query where the lock is newer than the current time minus lock time\n {\n updatedAt: {\n greater_than: new Date(new Date().getTime() - lockDurationInMilliseconds),\n },\n },\n ],\n },\n })\n\n const now = new Date().getTime()\n const lockedDocs = Array.isArray(lockedDocuments?.docs) ? lockedDocuments.docs : []\n\n // Filter out stale locks\n const validLockedDocs = lockedDocs.filter((lock) => {\n const lastEditedAt = new Date(lock?.updatedAt).getTime()\n return lastEditedAt + lockDurationInMilliseconds > now\n })\n\n result.docs = result.docs.map((doc) => {\n const lockedDoc = validLockedDocs.find((lock) => lock?.document?.value === doc.id)\n return {\n ...doc,\n _isLocked: !!lockedDoc,\n _userEditing: lockedDoc ? lockedDoc?.user?.value : null,\n }\n })\n } catch (error) {\n result.docs = result.docs.map((doc) => ({\n ...doc,\n _isLocked: false,\n _userEditing: null,\n }))\n }\n }\n\n // /////////////////////////////////////\n // beforeRead - Collection\n // /////////////////////////////////////\n\n result = {\n ...result,\n docs: await Promise.all(\n result.docs.map(async (doc) => {\n let docRef = doc\n\n await collectionConfig.hooks.beforeRead.reduce(async (priorHook, hook) => {\n await priorHook\n\n docRef =\n (await hook({\n collection: collectionConfig,\n context: req.context,\n doc: docRef,\n query: fullWhere,\n req,\n })) || docRef\n }, Promise.resolve())\n\n return docRef\n }),\n ),\n }\n\n // /////////////////////////////////////\n // afterRead - Fields\n // /////////////////////////////////////\n\n result = {\n ...result,\n docs: await Promise.all(\n result.docs.map(async (doc) =>\n afterRead<DataFromCollectionSlug<TSlug>>({\n collection: collectionConfig,\n context: req.context,\n currentDepth,\n depth,\n doc,\n draft: draftsEnabled,\n fallbackLocale,\n findMany: true,\n global: null,\n locale,\n overrideAccess,\n populate,\n req,\n select,\n showHiddenFields,\n }),\n ),\n ),\n }\n\n // /////////////////////////////////////\n // afterRead - Collection\n // /////////////////////////////////////\n\n result = {\n ...result,\n docs: await Promise.all(\n result.docs.map(async (doc) => {\n let docRef = doc\n\n await collectionConfig.hooks.afterRead.reduce(async (priorHook, hook) => {\n await priorHook\n\n docRef =\n (await hook({\n collection: collectionConfig,\n context: req.context,\n doc: docRef,\n findMany: true,\n query: fullWhere,\n req,\n })) || doc\n }, Promise.resolve())\n\n return docRef\n }),\n ),\n }\n\n // /////////////////////////////////////\n // afterOperation - Collection\n // /////////////////////////////////////\n\n result = await buildAfterOperation({\n args,\n collection: collectionConfig,\n operation: 'find',\n result,\n })\n\n // /////////////////////////////////////\n // Return results\n // /////////////////////////////////////\n\n return result as PaginatedDocs<TransformCollectionWithSelect<TSlug, TSelect>>\n } catch (error: unknown) {\n await killTransaction(args.req)\n throw error\n }\n}\n"],"names":["executeAccess","combineQueries","validateQueryPaths","sanitizeJoinQuery","afterRead","killTransaction","buildVersionCollectionFields","appendVersionToQueryKey","getQueryDraftsSelect","getQueryDraftsSort","buildAfterOperation","findOperation","incomingArgs","args","collection","config","hooks","beforeOperation","reduce","priorHook","hook","context","req","operation","Promise","resolve","collectionConfig","currentDepth","depth","disableErrors","draft","draftsEnabled","includeLockStatus","joins","limit","overrideAccess","page","pagination","populate","fallbackLocale","locale","payload","select","showHiddenFields","sort","where","accessResult","access","read","docs","hasNextPage","hasPrevPage","nextPage","pagingCounter","prevPage","totalDocs","totalPages","usePagination","sanitizedLimit","sanitizedPage","result","fullWhere","sanitizedJoins","versions","drafts","versionFields","db","queryDrafts","slug","payloadAPI","find","lockDocumentsProp","lockDocuments","lockDurationDefault","lockDuration","duration","lockDurationInMilliseconds","lockedDocuments","and","equals","in","map","doc","id","updatedAt","greater_than","Date","getTime","now","lockedDocs","Array","isArray","validLockedDocs","filter","lock","lastEditedAt","lockedDoc","document","value","_isLocked","_userEditing","user","error","all","docRef","beforeRead","query","findMany","global"],"mappings":"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"}
@@ -1,5 +1,6 @@
1
- import type { PayloadRequest } from '../../types/index.js';
2
- import type { Collection, TypeWithID } from '../config/types.js';
1
+ import type { CollectionSlug, JoinQuery } from '../../index.js';
2
+ import type { ApplyDisableErrors, PayloadRequest, PopulateType, SelectType, TransformCollectionWithSelect } from '../../types/index.js';
3
+ import type { Collection, SelectFromCollectionSlug } from '../config/types.js';
3
4
  export type Arguments = {
4
5
  collection: Collection;
5
6
  currentDepth?: number;
@@ -7,9 +8,13 @@ export type Arguments = {
7
8
  disableErrors?: boolean;
8
9
  draft?: boolean;
9
10
  id: number | string;
11
+ includeLockStatus?: boolean;
12
+ joins?: JoinQuery;
10
13
  overrideAccess?: boolean;
14
+ populate?: PopulateType;
11
15
  req: PayloadRequest;
16
+ select?: SelectType;
12
17
  showHiddenFields?: boolean;
13
18
  };
14
- export declare const findByIDOperation: <T extends TypeWithID>(incomingArgs: Arguments) => Promise<T>;
19
+ export declare const findByIDOperation: <TSlug extends CollectionSlug, TDisableErrors extends boolean, TSelect extends SelectFromCollectionSlug<TSlug>>(incomingArgs: Arguments) => Promise<ApplyDisableErrors<TransformCollectionWithSelect<TSlug, TSelect>, TDisableErrors>>;
15
20
  //# sourceMappingURL=findByID.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"findByID.d.ts","sourceRoot":"","sources":["../../../src/collections/operations/findByID.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AAC1D,OAAO,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAA;AAYhE,MAAM,MAAM,SAAS,GAAG;IACtB,UAAU,EAAE,UAAU,CAAA;IACtB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,EAAE,EAAE,MAAM,GAAG,MAAM,CAAA;IACnB,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,GAAG,EAAE,cAAc,CAAA;IACnB,gBAAgB,CAAC,EAAE,OAAO,CAAA;CAC3B,CAAA;AAED,eAAO,MAAM,iBAAiB,uCACd,SAAS,KACtB,QAAQ,CAAC,CAiKX,CAAA"}
1
+ {"version":3,"file":"findByID.d.ts","sourceRoot":"","sources":["../../../src/collections/operations/findByID.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAC/D,OAAO,KAAK,EACV,kBAAkB,EAClB,cAAc,EACd,YAAY,EACZ,UAAU,EACV,6BAA6B,EAC9B,MAAM,sBAAsB,CAAA;AAC7B,OAAO,KAAK,EACV,UAAU,EAEV,wBAAwB,EACzB,MAAM,oBAAoB,CAAA;AAY3B,MAAM,MAAM,SAAS,GAAG;IACtB,UAAU,EAAE,UAAU,CAAA;IACtB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,EAAE,EAAE,MAAM,GAAG,MAAM,CAAA;IACnB,iBAAiB,CAAC,EAAE,OAAO,CAAA;IAC3B,KAAK,CAAC,EAAE,SAAS,CAAA;IACjB,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,QAAQ,CAAC,EAAE,YAAY,CAAA;IACvB,GAAG,EAAE,cAAc,CAAA;IACnB,MAAM,CAAC,EAAE,UAAU,CAAA;IACnB,gBAAgB,CAAC,EAAE,OAAO,CAAA;CAC3B,CAAA;AAED,eAAO,MAAM,iBAAiB,GAC5B,KAAK,SAAS,cAAc,EAC5B,cAAc,SAAS,OAAO,EAC9B,OAAO,SAAS,wBAAwB,CAAC,KAAK,CAAC,gBAEjC,SAAS,KACtB,OAAO,CAAC,kBAAkB,CAAC,6BAA6B,CAAC,KAAK,EAAE,OAAO,CAAC,EAAE,cAAc,CAAC,CAqP3F,CAAA"}
@@ -1,16 +1,15 @@
1
- /* eslint-disable no-underscore-dangle */ import executeAccess from '../../auth/executeAccess.js';
1
+ import executeAccess from '../../auth/executeAccess.js';
2
2
  import { combineQueries } from '../../database/combineQueries.js';
3
+ import { sanitizeJoinQuery } from '../../database/sanitizeJoinQuery.js';
3
4
  import { NotFound } from '../../errors/index.js';
4
5
  import { afterRead } from '../../fields/hooks/afterRead/index.js';
5
- import { commitTransaction } from '../../utilities/commitTransaction.js';
6
- import { initTransaction } from '../../utilities/initTransaction.js';
6
+ import { validateQueryPaths } from '../../index.js';
7
7
  import { killTransaction } from '../../utilities/killTransaction.js';
8
8
  import replaceWithDraftIfAvailable from '../../versions/drafts/replaceWithDraftIfAvailable.js';
9
9
  import { buildAfterOperation } from './utils.js';
10
10
  export const findByIDOperation = async (incomingArgs)=>{
11
11
  let args = incomingArgs;
12
12
  try {
13
- const shouldCommit = await initTransaction(args.req);
14
13
  // /////////////////////////////////////
15
14
  // beforeOperation - Collection
16
15
  // /////////////////////////////////////
@@ -24,7 +23,7 @@ export const findByIDOperation = async (incomingArgs)=>{
24
23
  req: args.req
25
24
  }) || args;
26
25
  }, Promise.resolve());
27
- const { id, collection: { config: collectionConfig }, currentDepth, depth, disableErrors, draft: draftEnabled = false, overrideAccess = false, req: { fallbackLocale, locale, t }, req, showHiddenFields } = args;
26
+ const { id, collection: { config: collectionConfig }, currentDepth, depth, disableErrors, draft: draftEnabled = false, includeLockStatus, joins, overrideAccess = false, populate, req: { fallbackLocale, locale, t }, req, select, showHiddenFields } = args;
28
27
  // /////////////////////////////////////
29
28
  // Access
30
29
  // /////////////////////////////////////
@@ -34,23 +33,42 @@ export const findByIDOperation = async (incomingArgs)=>{
34
33
  req
35
34
  }, collectionConfig.access.read) : true;
36
35
  // If errors are disabled, and access returns false, return null
37
- if (accessResult === false) return null;
36
+ if (accessResult === false) {
37
+ return null;
38
+ }
39
+ const where = combineQueries({
40
+ id: {
41
+ equals: id
42
+ }
43
+ }, accessResult);
44
+ const sanitizedJoins = await sanitizeJoinQuery({
45
+ collectionConfig,
46
+ joins,
47
+ overrideAccess,
48
+ req
49
+ });
38
50
  const findOneArgs = {
39
51
  collection: collectionConfig.slug,
52
+ joins: req.payloadAPI === 'GraphQL' ? false : sanitizedJoins,
40
53
  locale,
41
54
  req: {
42
55
  transactionID: req.transactionID
43
56
  },
44
- where: combineQueries({
45
- id: {
46
- equals: id
47
- }
48
- }, accessResult)
57
+ select,
58
+ where
49
59
  };
60
+ await validateQueryPaths({
61
+ collectionConfig,
62
+ overrideAccess,
63
+ req,
64
+ where
65
+ });
50
66
  // /////////////////////////////////////
51
67
  // Find by ID
52
68
  // /////////////////////////////////////
53
- if (!findOneArgs.where.and[0].id) throw new NotFound(t);
69
+ if (!findOneArgs.where.and[0].id) {
70
+ throw new NotFound(t);
71
+ }
54
72
  let result = await req.payload.db.findOne(findOneArgs);
55
73
  if (!result) {
56
74
  if (!disableErrors) {
@@ -59,6 +77,54 @@ export const findByIDOperation = async (incomingArgs)=>{
59
77
  return null;
60
78
  }
61
79
  // /////////////////////////////////////
80
+ // Include Lock Status if required
81
+ // /////////////////////////////////////
82
+ if (includeLockStatus && id) {
83
+ let lockStatus = null;
84
+ try {
85
+ const lockDocumentsProp = collectionConfig?.lockDocuments;
86
+ const lockDurationDefault = 300 // Default 5 minutes in seconds
87
+ ;
88
+ const lockDuration = typeof lockDocumentsProp === 'object' ? lockDocumentsProp.duration : lockDurationDefault;
89
+ const lockDurationInMilliseconds = lockDuration * 1000;
90
+ const lockedDocument = await req.payload.find({
91
+ collection: 'payload-locked-documents',
92
+ depth: 1,
93
+ limit: 1,
94
+ overrideAccess: false,
95
+ pagination: false,
96
+ req,
97
+ where: {
98
+ and: [
99
+ {
100
+ 'document.relationTo': {
101
+ equals: collectionConfig.slug
102
+ }
103
+ },
104
+ {
105
+ 'document.value': {
106
+ equals: id
107
+ }
108
+ },
109
+ // Query where the lock is newer than the current time minus lock time
110
+ {
111
+ updatedAt: {
112
+ greater_than: new Date(new Date().getTime() - lockDurationInMilliseconds)
113
+ }
114
+ }
115
+ ]
116
+ }
117
+ });
118
+ if (lockedDocument && lockedDocument.docs.length > 0) {
119
+ lockStatus = lockedDocument.docs[0];
120
+ }
121
+ } catch {
122
+ // swallow error
123
+ }
124
+ result._isLocked = !!lockStatus;
125
+ result._userEditing = lockStatus?.user?.value ?? null;
126
+ }
127
+ // /////////////////////////////////////
62
128
  // Replace document with draft if available
63
129
  // /////////////////////////////////////
64
130
  if (collectionConfig.versions?.drafts && draftEnabled) {
@@ -68,7 +134,8 @@ export const findByIDOperation = async (incomingArgs)=>{
68
134
  entity: collectionConfig,
69
135
  entityType: 'collection',
70
136
  overrideAccess,
71
- req
137
+ req,
138
+ select
72
139
  });
73
140
  }
74
141
  // /////////////////////////////////////
@@ -93,11 +160,14 @@ export const findByIDOperation = async (incomingArgs)=>{
93
160
  currentDepth,
94
161
  depth,
95
162
  doc: result,
163
+ draft: draftEnabled,
96
164
  fallbackLocale,
97
165
  global: null,
98
166
  locale,
99
167
  overrideAccess,
168
+ populate,
100
169
  req,
170
+ select,
101
171
  showHiddenFields
102
172
  });
103
173
  // /////////////////////////////////////
@@ -120,13 +190,11 @@ export const findByIDOperation = async (incomingArgs)=>{
120
190
  args,
121
191
  collection: collectionConfig,
122
192
  operation: 'findByID',
123
- result: result
124
- }) // TODO: fix this typing
125
- ;
193
+ result
194
+ });
126
195
  // /////////////////////////////////////
127
196
  // Return results
128
197
  // /////////////////////////////////////
129
- if (shouldCommit) await commitTransaction(req);
130
198
  return result;
131
199
  } catch (error) {
132
200
  await killTransaction(args.req);